UNPKG

@obliczeniowo/elementary

Version:
1 lines 2.54 kB
{"version":3,"file":"obliczeniowo-elementary-resize-window.mjs","sources":["../../../../projects/components/resize-window/services/obl-resize-window.service.ts","../../../../projects/components/resize-window/obliczeniowo-elementary-resize-window.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { Size } from '../interfaces/size';\r\n\r\n/**\r\n * Service that let you easy react on change of window size\r\n *\r\n * @example\r\n *\r\n * constructor(public resize: OblResizeService) { }\r\n *\r\n * ngOnInit(): void {\r\n * this.subscription = this.resize.resized.subscribe((size: Size) => {\r\n * this.resize(size);\r\n * });\r\n * }\r\n *\r\n * ngOnDestroy(): void {\r\n * if (this.subscription && !this.subscription.closed) {\r\n * this.subscription.unsubscribe();\r\n * }\r\n * }\r\n *\r\n * resize(size: Size): void {\r\n * console.log(size);\r\n * }\r\n */\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class OblResizeWindowService {\r\n /** current window size */\r\n size: Size = {\r\n width: window.innerWidth,\r\n height: window.innerHeight\r\n };\r\n\r\n /**\r\n * triggered on window size change\r\n */\r\n resized: BehaviorSubject<Size> = new BehaviorSubject<Size>(\r\n this.size\r\n );\r\n\r\n constructor() {\r\n window.addEventListener('resize', () => this.resize());\r\n }\r\n\r\n protected resize(): void {\r\n this.size = {\r\n width: window.innerWidth,\r\n height: window.innerHeight\r\n };\r\n this.resized.next(\r\n this.size\r\n );\r\n }\r\n}\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;AAIA;;;;;;;;;;;;;;;;;;;;;;AAsBG;MAIU,sBAAsB,CAAA;;AAEjC,IAAA,IAAI,GAAS;QACX,KAAK,EAAE,MAAM,CAAC,UAAU;QACxB,MAAM,EAAE,MAAM,CAAC;KAChB;AAED;;AAEG;IACH,OAAO,GAA0B,IAAI,eAAe,CAClD,IAAI,CAAC,IAAI,CACV;AAED,IAAA,WAAA,GAAA;AACE,QAAA,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,MAAM,IAAI,CAAC,MAAM,EAAE,CAAC;;IAG9C,MAAM,GAAA;QACd,IAAI,CAAC,IAAI,GAAG;YACV,KAAK,EAAE,MAAM,CAAC,UAAU;YACxB,MAAM,EAAE,MAAM,CAAC;SAChB;QACD,IAAI,CAAC,OAAO,CAAC,IAAI,CACf,IAAI,CAAC,IAAI,CACV;;uGAzBQ,sBAAsB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA;AAAtB,IAAA,OAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,sBAAsB,cAFrB,MAAM,EAAA,CAAA;;2FAEP,sBAAsB,EAAA,UAAA,EAAA,CAAA;kBAHlC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACV,oBAAA,UAAU,EAAE;AACb,iBAAA;;;AC7BD;;AAEG;;;;"}