angular-resize-event-package
Version:
[](https://www.npmjs.com/package/angular-resize-event-package) [](https://www.npmjs.com/package/an
1 lines • 4.29 kB
Source Map (JSON)
{"version":3,"file":"angular-resize-event-package.mjs","sources":["../../../projects/angular-resize-event-package/src/lib/resized.event.ts","../../../projects/angular-resize-event-package/src/lib/resized.directive.ts","../../../projects/angular-resize-event-package/src/lib/angular-resize-event.module.ts","../../../projects/angular-resize-event-package/src/public-api.ts","../../../projects/angular-resize-event-package/src/angular-resize-event-package.ts"],"sourcesContent":["export class ResizedEvent {\n public readonly newRect: DOMRectReadOnly;\n public readonly oldRect?: DOMRectReadOnly;\n public readonly isFirst: boolean;\n\n public constructor(newRect: DOMRectReadOnly, oldRect: DOMRectReadOnly | undefined) {\n this.newRect = newRect;\n this.oldRect = oldRect;\n this.isFirst = oldRect == null;\n }\n}\n","import {\n Directive,\n ElementRef,\n EventEmitter,\n NgZone,\n OnDestroy,\n OnInit,\n Output,\n inject\n} from '@angular/core';\nimport { ResizedEvent } from './resized.event';\n\n@Directive({\n selector: '[resized]',\n standalone: true\n})\nexport class ResizedDirective implements OnInit, OnDestroy {\n private readonly element = inject<ElementRef<HTMLElement>>(ElementRef);\n private readonly zone = inject(NgZone);\n\n private readonly observer: ResizeObserver;\n private oldRect?: DOMRectReadOnly;\n\n @Output()\n public readonly resized = new EventEmitter<ResizedEvent>();\n\n public constructor() {\n this.observer = new ResizeObserver(entries =>\n this.zone.run(() => this.observe(entries))\n );\n }\n\n public ngOnInit(): void {\n this.observer.observe(this.element.nativeElement);\n }\n\n public ngOnDestroy(): void {\n this.observer.disconnect();\n }\n\n private observe(entries: ResizeObserverEntry[]): void {\n const domSize = entries[0];\n const resizedEvent = new ResizedEvent(domSize.contentRect, this.oldRect);\n this.oldRect = domSize.contentRect;\n this.resized.emit(resizedEvent);\n }\n}\n","import { NgModule } from '@angular/core';\r\nimport { ResizedDirective } from './resized.directive';\r\n\r\n@NgModule({\r\n imports: [ResizedDirective],\r\n exports: [ResizedDirective]\r\n})\r\nexport class AngularResizeEventModule {}","/*\r\n * Public API Surface of angular-resize-event\r\n */\r\n\r\nexport { ResizedEvent } from './lib/resized.event';\r\nexport * from './lib/resized.directive';\r\nexport * from './lib/angular-resize-event.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;MAAa,YAAY,CAAA;AACL,IAAA,OAAO;AACP,IAAA,OAAO;AACP,IAAA,OAAO;IAEvB,WAAA,CAAmB,OAAwB,EAAE,OAAoC,EAAA;AAC7E,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO;AACtB,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO;AACtB,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,IAAI,IAAI;IAClC;AACH;;MCMY,gBAAgB,CAAA;AACV,IAAA,OAAO,GAAG,MAAM,CAA0B,UAAU,CAAC;AACrD,IAAA,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC;AAErB,IAAA,QAAQ;AACjB,IAAA,OAAO;AAGC,IAAA,OAAO,GAAG,IAAI,YAAY,EAAgB;AAE1D,IAAA,WAAA,GAAA;QACE,IAAI,CAAC,QAAQ,GAAG,IAAI,cAAc,CAAC,OAAO,IACxC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAC3C;IACH;IAEO,QAAQ,GAAA;QACb,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC;IACnD;IAEO,WAAW,GAAA;AAChB,QAAA,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE;IAC5B;AAEQ,IAAA,OAAO,CAAC,OAA8B,EAAA;AAC5C,QAAA,MAAM,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC;AAC1B,QAAA,MAAM,YAAY,GAAG,IAAI,YAAY,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC;AACxE,QAAA,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,WAAW;AAClC,QAAA,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,CAAC;IACjC;uGA7BW,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA;2FAAhB,gBAAgB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,WAAA,EAAA,OAAA,EAAA,EAAA,OAAA,EAAA,SAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA;;2FAAhB,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAJ5B,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,WAAW;AACrB,oBAAA,UAAU,EAAE;AACb,iBAAA;;sBAQE;;;MChBU,wBAAwB,CAAA;uGAAxB,wBAAwB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA;wGAAxB,wBAAwB,EAAA,OAAA,EAAA,CAHzB,gBAAgB,CAAA,EAAA,OAAA,EAAA,CAChB,gBAAgB,CAAA,EAAA,CAAA;wGAEf,wBAAwB,EAAA,CAAA;;2FAAxB,wBAAwB,EAAA,UAAA,EAAA,CAAA;kBAJpC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;oBACR,OAAO,EAAE,CAAC,gBAAgB,CAAC;oBAC3B,OAAO,EAAE,CAAC,gBAAgB;AAC3B,iBAAA;;;ACND;;AAEG;;ACFH;;AAEG;;;;"}