{"version":3,"file":"ng-web-apis-resize-observer.mjs","sources":["../../../libs/resize-observer/src/classes/safe-observer.ts","../../../libs/resize-observer/src/tokens/resize-option-box.ts","../../../libs/resize-observer/src/services/resize-observer.service.ts","../../../libs/resize-observer/src/directives/resize-observer.directive.ts","../../../libs/resize-observer/src/tokens/support.ts","../../../libs/resize-observer/src/ng-web-apis-resize-observer.ts"],"sourcesContent":["export const SafeObserver =\n    typeof ResizeObserver !== 'undefined'\n        ? ResizeObserver\n        : class implements ResizeObserver {\n              public observe(): void {}\n              public unobserve(): void {}\n              public disconnect(): void {}\n          };\n","import {InjectionToken} from '@angular/core';\n\nexport const WA_RESIZE_OPTION_BOX_DEFAULT: ResizeObserverBoxOptions = 'content-box';\nexport const WA_RESIZE_OPTION_BOX = new InjectionToken<ResizeObserverBoxOptions>(\n    ngDevMode ? '[WA_RESIZE_OPTION_BOX]' : '',\n    {factory: () => WA_RESIZE_OPTION_BOX_DEFAULT},\n);\n","import {ElementRef, inject, Injectable} from '@angular/core';\nimport {Observable} from 'rxjs';\n\nimport {SafeObserver} from '../classes/safe-observer';\nimport {WA_RESIZE_OPTION_BOX} from '../tokens/resize-option-box';\n\n@Injectable()\nexport class WaResizeObserverService extends Observable<readonly ResizeObserverEntry[]> {\n    constructor() {\n        const nativeElement: HTMLElement = inject(ElementRef).nativeElement;\n        const box = inject(WA_RESIZE_OPTION_BOX);\n\n        super((subscriber) => {\n            const observer = new SafeObserver((entries) => subscriber.next(entries));\n\n            observer.observe(nativeElement, {box});\n\n            return () => {\n                observer.disconnect();\n            };\n        });\n    }\n}\n","import {Directive, ElementRef, inject} from '@angular/core';\nimport {outputFromObservable} from '@angular/core/rxjs-interop';\n\nimport {WaResizeObserverService} from '../services/resize-observer.service';\nimport {\n    WA_RESIZE_OPTION_BOX,\n    WA_RESIZE_OPTION_BOX_DEFAULT,\n} from '../tokens/resize-option-box';\n\n@Directive({\n    selector: '[waResizeObserver]',\n    inputs: ['waResizeBox'],\n    providers: [\n        WaResizeObserverService,\n        {\n            provide: WA_RESIZE_OPTION_BOX,\n            useFactory: (): ResizeObserverBoxOptions =>\n                inject(ElementRef).nativeElement.getAttribute('waResizeBox') ||\n                WA_RESIZE_OPTION_BOX_DEFAULT,\n        },\n    ],\n})\nexport class WaResizeObserver {\n    public readonly waResizeObserver = outputFromObservable(\n        inject(WaResizeObserverService),\n    );\n\n    public waResizeBox = WA_RESIZE_OPTION_BOX_DEFAULT;\n}\n","import {inject, InjectionToken} from '@angular/core';\nimport {WA_WINDOW} from '@ng-web-apis/common';\n\nexport const WA_RESIZE_OBSERVER_SUPPORT = new InjectionToken<boolean>(\n    ngDevMode ? '[WA_RESIZE_OBSERVER_SUPPORT]' : '',\n    {factory: () => !!(inject(WA_WINDOW) as any).ResizeObserver},\n);\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;AAAO,MAAM,YAAY,GACrB,OAAO,cAAc,KAAK;AACtB,MAAE;AACF,MAAE,MAAA;AACW,QAAA,OAAO,KAAU;AACjB,QAAA,SAAS,KAAU;AACnB,QAAA,UAAU,KAAU;KAC9B;;ACLJ,MAAM,4BAA4B,GAA6B;AAC/D,MAAM,oBAAoB,GAAG,IAAI,cAAc,CAClD,SAAS,GAAG,wBAAwB,GAAG,EAAE,EACzC,EAAC,OAAO,EAAE,MAAM,4BAA4B,EAAC;;ACE3C,MAAO,uBAAwB,SAAQ,UAA0C,CAAA;AACnF,IAAA,WAAA,GAAA;QACI,MAAM,aAAa,GAAgB,MAAM,CAAC,UAAU,CAAC,CAAC,aAAa;AACnE,QAAA,MAAM,GAAG,GAAG,MAAM,CAAC,oBAAoB,CAAC;AAExC,QAAA,KAAK,CAAC,CAAC,UAAU,KAAI;AACjB,YAAA,MAAM,QAAQ,GAAG,IAAI,YAAY,CAAC,CAAC,OAAO,KAAK,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAExE,QAAQ,CAAC,OAAO,CAAC,aAAa,EAAE,EAAC,GAAG,EAAC,CAAC;AAEtC,YAAA,OAAO,MAAK;gBACR,QAAQ,CAAC,UAAU,EAAE;AACzB,YAAA,CAAC;AACL,QAAA,CAAC,CAAC;IACN;wGAdS,uBAAuB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;4GAAvB,uBAAuB,EAAA,CAAA;;4FAAvB,uBAAuB,EAAA,UAAA,EAAA,CAAA;kBADnC;;;MCgBY,gBAAgB,CAAA;IACT,gBAAgB,GAAG,oBAAoB,CACnD,MAAM,CAAC,uBAAuB,CAAC,CAClC;IAEM,WAAW,GAAG,4BAA4B;wGALxC,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;AAAhB,IAAA,OAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,SAAA,EAAA,IAAA,EAAA,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,EAAA,WAAA,EAAA,aAAA,EAAA,EAAA,OAAA,EAAA,EAAA,gBAAA,EAAA,kBAAA,EAAA,EAAA,SAAA,EAVd;YACP,uBAAuB;AACvB,YAAA;AACI,gBAAA,OAAO,EAAE,oBAAoB;AAC7B,gBAAA,UAAU,EAAE,MACR,MAAM,CAAC,UAAU,CAAC,CAAC,aAAa,CAAC,YAAY,CAAC,aAAa,CAAC;oBAC5D,4BAA4B;AACnC,aAAA;AACJ,SAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;4FAEQ,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAb5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACP,oBAAA,QAAQ,EAAE,oBAAoB;oBAC9B,MAAM,EAAE,CAAC,aAAa,CAAC;AACvB,oBAAA,SAAS,EAAE;wBACP,uBAAuB;AACvB,wBAAA;AACI,4BAAA,OAAO,EAAE,oBAAoB;AAC7B,4BAAA,UAAU,EAAE,MACR,MAAM,CAAC,UAAU,CAAC,CAAC,aAAa,CAAC,YAAY,CAAC,aAAa,CAAC;gCAC5D,4BAA4B;AACnC,yBAAA;AACJ,qBAAA;AACJ,iBAAA;;;AClBM,MAAM,0BAA0B,GAAG,IAAI,cAAc,CACxD,SAAS,GAAG,8BAA8B,GAAG,EAAE,EAC/C,EAAC,OAAO,EAAE,MAAM,CAAC,CAAE,MAAM,CAAC,SAAS,CAAS,CAAC,cAAc,EAAC;;ACLhE;;AAEG;;;;"}