{"version":3,"sources":["jsdelivr-header.js","/node_modules/tslib/tslib.es6.js","/projects/ql-components/src/lib/form-field/error/error.ts","/projects/ql-components/src/lib/form-field/error/error.component.ts","/projects/ql-components/src/lib/common/destroyable.ts","/projects/ql-components/src/lib/form-field/input.ts","/projects/ql-components/src/lib/form-field/field/field.component.ts","/projects/ql-components/src/lib/form-field/input.directive.ts","/projects/ql-components/src/lib/form-field/label/label.component.ts","/projects/ql-components/src/lib/form-field/icon.directive.ts","/projects/ql-components/src/lib/form-field/form-field.module.ts","/projects/ql-components/src/lib/common/ql-base-style.ts","/projects/ql-components/src/lib/button/button.component.ts","/projects/ql-components/src/lib/button/button.module.ts","/projects/ql-components/src/lib/generic-sidebar/sidebar-content/sidebar-item/sidebar-item.component.ts","/projects/ql-components/src/lib/generic-sidebar/sidebar-content/sidebar-group/sidebar-group.component.ts","/projects/ql-components/src/lib/generic-sidebar/sidebar-content/sidebar-content.component.ts","/projects/ql-components/src/lib/generic-sidebar/sidebar-header/sidebar-header-item.directive.ts","/projects/ql-components/src/lib/generic-sidebar/sidebar-header/sidebar-header.component.ts","/projects/ql-components/src/lib/generic-sidebar/sidebar-collapse/sidebar-collapse.component.ts","/projects/ql-components/src/lib/generic-sidebar/sidebar.component.ts","/projects/ql-components/src/lib/generic-sidebar/generic-sidebar.module.ts","/projects/ql-components/src/lib/autocomplete/autocomplete.ts","/projects/ql-components/src/lib/autocomplete/autocomplete.component.ts","/projects/ql-components/src/lib/autocomplete/autocomplete.directive.ts","/projects/ql-components/src/lib/autocomplete/autocomplete.module.ts","/projects/ql-components/src/lib/generic-toolbar/toolbar/toolbar.component.ts","/projects/ql-components/src/lib/generic-toolbar/generic-toolbar.module.ts","/projects/ql-components/src/lib/ql-table/filter/filter.component.ts","/projects/ql-components/src/lib/ql-table/thead/thead.component.ts","/projects/ql-components/src/lib/ql-table/ql-table.component.ts","/projects/ql-components/src/lib/ql-table/tbody/tbody.component.ts","/projects/ql-components/src/lib/ql-table/pagination/pagination.token.ts","/projects/ql-components/src/lib/ql-table/pagination/pagination.component.ts","/projects/ql-components/src/lib/ql-table/ql-table.module.ts","/projects/ql-components/src/lib/fab/fab.component.ts","/projects/ql-components/src/lib/fab/fab.module.ts","/projects/ql-components/src/lib/chip/chip.component.ts","/projects/ql-components/src/lib/chip/chip.module.ts","/projects/ql-components/src/lib/loader/loader.component.ts","/projects/ql-components/src/lib/loader/loader.module.ts"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;oFCUA,IAAI,EAAgB,SAAS,EAAG,GAI5B,OAHA,EAAgB,OAAO,gBAClB,CAAE,UAAW,cAAgB,OAAS,SAAU,EAAG,GAAK,EAAE,UAAY,CAAE,GACzE,SAAU,EAAG,GAAK,IAAK,IAAI,KAAK,EAAO,OAAO,UAAU,eAAe,KAAK,EAAG,KAAI,EAAE,GAAK,EAAE,GAAG,EAC5F,EAAc,EAAG,EAC5B,E,SAEgB,EAAU,EAAG,GACzB,GAAiB,mBAAN,GAA0B,OAAN,EAC3B,MAAM,IAAI,UAAU,uBAAyB,OAAO,GAAK,iCAE7D,SAAS,IAAO,KAAK,YAAc,CAAE,CADrC,EAAc,EAAG,GAEjB,EAAE,UAAkB,OAAN,EAAa,OAAO,OAAO,IAAM,EAAG,UAAY,EAAE,UAAW,IAAI,EACnF,CA8E6B,OAAO,O,SAwBpB,EAAO,EAAG,GACtB,IAAI,EAAsB,mBAAX,QAAyB,EAAE,OAAO,UACjD,IAAK,EAAG,OAAO,EACf,IAAmB,EAAY,EAA3B,EAAI,EAAE,KAAK,GAAO,EAAK,GAC3B,IACI,WAAc,IAAN,GAAgB,KAAM,MAAQ,EAAI,EAAE,QAAQ,MAAM,EAAG,KAAK,EAAE,M,CAExE,MAAO,GAAS,EAAI,CAAE,MAAO,E,SAEzB,IACQ,IAAM,EAAE,OAAS,EAAI,EAAU,SAAI,EAAE,KAAK,E,SAExC,GAAI,EAAG,MAAM,EAAE,K,EAE7B,OAAO,CACX,C,SAkBgB,EAAc,EAAI,GAC9B,IAAK,IAAI,EAAI,EAAG,EAAK,EAAK,OAAQ,EAAI,EAAG,OAAQ,EAAI,EAAI,IAAK,IAC1D,EAAG,GAAK,EAAK,GACjB,OAAO,CACX,CAqCyB,OAAO,O,MC7MhC,W,gBCaI,SAAA,I,OAEI,EAAA,KAAA,OAAO,I,QAJqB,EAAA,EAAA,GAOhC,EAAA,UAAA,SAAA,W,EAGA,EAAA,UAAA,mBAAA,W,KAVgC,G,oBARnC,YAAS,KAAA,CAAC,CACP,SAAU,WACV,SAAA,kCAEA,UAAW,CACP,CAAE,QAAS,EAAY,YAAa,I,uECH1C,SAAA,IACE,KAAK,WAAa,IAAI,S,QAGd,EAAA,UAAA,QAAA,WACR,KAAK,WAAW,OAChB,KAAK,WAAW,U,qBCHlB,SAAA,IAAA,IAAA,EACE,EAAA,KAAA,OAAO,K,OACP,EAAK,SAAW,IAAI,mBAAyB,GAC7C,EAAK,YAAc,IAAI,U,SARc,EAAA,EAAA,G,GAAA,G,cCyCvC,SAAA,EACY,GADZ,IAAA,EAGE,EAAA,KAAA,OAAO,K,OAFG,EAAA,YAoBZ,EAAA,WAAa,WAAY,OAAA,EAAK,MAAM,OAAO,E,SA9BT,EAAA,EAAA,GAelC,EAAA,UAAA,SAAA,W,EAGA,EAAA,UAAA,mBAAA,e,EAAA,EAAA,KACY,QAAV,EAAA,KAAK,aAAK,IAAA,KAAE,SAAS,KACjB,YAAU,KAAK,aACjB,WAAU,SAAA,GACV,EAAK,WAAa,C,IAGhB,KAAK,OAAS,KAAK,MAAM,QAC3B,KAAK,UAAU,SAAS,KAAK,SAAS,cAAe,SAAU,KAAK,MAAM,O,KA1B5C,G,oBA7BnC,YAAS,KAAA,CAAC,CACT,SAAU,WACV,SAAA,ifAEA,WAAY,CACV,UAAQ,UAAW,CACjB,QAAM,WAAY,QAAM,CACtB,MAAO,EACP,UAAW,oBACX,QAAS,KAEX,QAAM,QAAS,QAAM,CACnB,MAAO,OACP,UAAW,gBACX,QAAS,KAEX,aAAW,qBAAsB,CAC/B,UAAQ,OAEV,aAAW,iBAAkB,CAC3B,UAAQ,IAAK,YAAU,CACrB,QAAM,CAAE,QAAS,EAAG,MAAO,MAAO,UAAW,qBAC7C,QAAM,CAAE,QAAS,GAAI,MAAO,MAAO,UAAW,qBAC9C,QAAM,CAAE,QAAS,EAAG,MAAO,OAAQ,UAAW,0B,0wBA5B6B,a,oCAoClF,YAAS,KAAA,CAAC,WAAY,CAAC,QAAQ,M,aAE/B,eAAY,KAAA,CAAC,K,kBAEb,cAAW,KAAA,CAAC,oB,kBCpBb,SAAA,EACc,EACiB,GAF/B,IAAA,EAIE,EAAA,KAAA,OAAO,K,OAHK,EAAA,cACiB,EAAA,Y,SARG,EAAA,EAAA,GAelC,EAAA,UAAA,QAAA,W,QACE,KAAK,SAAS,MAAmB,QAAd,EAAA,KAAK,iBAAS,IAAA,OAAA,EAAA,EAAE,WAAyB,QAAd,EAAA,KAAK,iBAAS,IAAA,OAAA,EAAA,EAAE,S,EAGhE,EAAA,UAAA,mBAAA,W,QAGgB,QAAd,EAAA,KAAK,iBAAS,IAAA,KAAE,cAAc,KAC1B,YAAU,IACV,eAAa,KACb,OAAI,SAAA,GAAS,MAAU,YAAV,CAAmB,IAChC,YAAU,KAAK,aACjB,UAAU,KAAK,UAGjB,KAAK,YAA4B,QAAd,EAAA,KAAK,iBAAS,IAAA,OAAA,EAAA,EAAE,Y,EAGrC,EAAA,UAAA,YAAA,WACE,KAAK,WAAW,OAChB,KAAK,WAAW,U,EAGlB,EAAA,UAAA,MAAA,WACE,KAAK,YAAY,cAAc,O,KAvCC,G,oBAVnC,YAAS,KAAA,CAAC,CACT,SAAU,YACV,UAAW,CACT,CAAE,QAAS,EAAY,YAAa,IAGtC,KAAM,CACJ,MAAO,mB,yCAZ2B,c,MAC7B,YAAS,WAAA,EAAA,KAsBX,YAAQ,CAAA,KAAI,U,kCANhB,U,eAYA,eAAY,KAAA,CAAC,e,iBCpBZ,SAAA,I,QAGA,EAAA,UAAA,SAAA,W,2BAVH,YAAS,KAAA,CAAC,CACP,SAAU,WACV,SAAA,kC,4DCFJ,W,gBAaI,SAAA,EACoB,GADpB,IAAA,EAGI,EAAA,KAAA,OAAO,K,OAFS,EAAA,c,SAHW,EAAA,EAAA,GAQ/B,EAAA,UAAA,mBAAA,W,KAR+B,G,oBARlC,YAAS,KAAA,CAAC,CACP,SAAU,WAEV,KAAM,CACF,MAAO,QAEX,UAAW,CAAC,CAAC,QAAS,EAAW,YAAa,Q,yCAXZ,aAAU,WAAA,EAAA,KAgBvC,U,QCWT,W,sBAnBC,WAAQ,KAAA,CAAC,CACN,aAAc,CACV,EACA,EACA,EACA,EACA,GAEJ,QAAS,CACL,gBAEJ,QAAS,CACL,EACA,EACA,EACA,EACA,O,MCtBR,WAYE,KAAA,MAAkD,S,sBAZnD,c,+BAGE,SAAK,CAAA,KACL,cAAW,KAAA,CAAC,mB,cAGZ,SAAK,CAAA,KACL,cAAW,KAAA,CAAC,oB,aAGZ,W,kBCcD,SAAA,EACY,EACA,GAFZ,IAAA,EAIE,EAAA,KAAA,OAAO,K,OAHG,EAAA,mBACA,EAAA,gBAJZ,EAAA,KAAM,EAOJ,EAAK,iBAAiB,WAClB,UACA,EAAK,cAAc,+BAA+B,uB,SAxBrB,EAAA,EAAA,GA6BnC,EAAA,UAAA,SAAA,W,EAGA,OAAA,eAAI,EAAA,UAAA,YAAS,C,IAAb,WACE,OAAO,KAAK,U,MAGd,SACc,GACZ,KAAK,WAAa,C,qCAtCe,G,oBALpC,YAAS,KAAA,CAAC,CACT,SAAU,YACV,SAAA,ihB,ghBANO,mB,MACA,gB,kCAUN,YAAS,KAAA,CAAC,Y,gBAEV,U,kBAGA,cAAW,KAAA,CAAC,sB,oBAGZ,SAAK,CAAA,KACL,cAAW,KAAA,CAAC,2B,WAGZ,U,iBAsBA,W,MCvBH,W,sBAdC,WAAQ,KAAA,CAAC,CACR,aAAc,CACV,GAEJ,QAAS,CACP,eACA,2BACA,gBACA,mBAEF,QAAS,CACL,O,iBCjBN,SAAA,IACY,KAAA,aAAc,C,QAUxB,OAAA,eAAI,EAAA,UAAA,aAAU,C,IAAd,WACE,OAAO,KAAK,W,MAGd,SAAe,GACb,KAAK,YAAc,C,qDA4BrB,SAAA,IAAA,IAAA,EACE,EAAA,KAAA,OAAO,K,OATC,EAAA,aAAc,EAGhB,EAAA,UAAW,E,SAXqB,EAAA,EAAA,GAoBxC,EAAA,UAAA,SAAA,W,EAGA,EAAA,UAAA,mBAAA,WACM,KAAK,OACP,KAAK,SAAU,E,EAKnB,OAAA,eAAI,EAAA,UAAA,aAAU,C,IAAd,WACE,OAAO,KAAK,W,MAGd,SACe,GACb,KAAK,YAAc,C,kCAGrB,OAAA,eAAI,EAAA,UAAA,UAAO,C,IAAX,WACE,OAAO,KAAK,Q,MAGd,SAAY,GACV,KAAK,SAAW,C,kCAGlB,OAAA,eAAI,EAAA,UAAA,qBAAkB,C,IAAtB,WACE,OAAO,KAAK,mB,MAGd,SACuB,GACrB,KAAK,oBAAsB,C,kCAG7B,OAAA,eAAI,EAAA,UAAA,QAAK,C,IAAT,WACE,OAAO,KAAK,M,MAGd,SACU,GACR,KAAK,OAAS,C,qCA9DwB,G,oBARzC,YAAS,KAAA,CAAC,CACT,SAAU,kBACV,SAAA,iMAEA,UAAW,CACT,CAAE,QAAS,EAAkB,YAAa,I,qeAK3C,eAAY,KAAA,CAAC,a,2BAEb,cAAW,KAAA,CAAC,wB,mBAGZ,cAAW,KAAA,CAAC,uB,gBAGZ,cAAW,KAAA,CAAC,oB,cAGZ,cAAW,KAAA,CAAC,mB,kBAqBZ,U,0BAiBA,U,aASA,WCvEH,IAAI,EAAK,E,cAyBP,SAAA,IAAA,IAAA,EACE,EAAA,KAAA,OAAO,K,OACP,EAAK,GAAK,EACV,I,SA1B4C,EAAA,EAAA,GAS9C,OAAA,eAAI,EAAA,UAAA,aAAU,C,IAAd,WACE,OAAO,KAAK,W,MAGd,SAAe,GACb,KAAK,YAAc,C,qCAdyB,G,cAqE9C,SAAA,EACY,GADZ,IAAA,EAGE,EAAA,KAAA,OAAO,K,OAFG,EAAA,UATF,EAAA,qBAAsB,EAY9B,EAAK,aAAe,IAAI,U,SA3Be,EAAA,EAAA,GA8BzC,EAAA,UAAA,SAAA,W,EAIA,EAAA,UAAA,mBAAA,WACE,KAAK,SAAW,KAAK,KAAK,OAAS,C,EAIrC,EAAA,UAAA,YAAA,SAAY,GACN,QAAQ,IAAI,EAAS,gBACvB,KAAK,WAAa,QAAQ,IAAI,EAAS,eAGrC,QAAQ,IAAI,EAAS,gBACvB,KAAK,WAAa,QAAQ,IAAI,EAAS,c,EAI3C,EAAA,UAAA,OAAA,WACE,KAAK,aAAa,KAAK,KAAK,G,EAG9B,OAAA,eAAI,EAAA,UAAA,aAAU,C,IAAd,WACE,OAAO,KAAK,W,MAGd,SACe,GACb,KAAK,YAAc,C,kCAGrB,OAAA,eAAI,EAAA,UAAA,aAAU,C,IAAd,WACE,OAAO,KAAK,W,MAGd,SACe,GACb,KAAK,YAAc,EAEf,IACF,KAAK,SAAU,E,kCAInB,OAAA,eAAI,EAAA,UAAA,UAAO,C,IAAX,WACE,OAAO,KAAK,Q,MAGd,SAAY,GACV,KAAK,SAAW,C,kCAIlB,OAAA,eAAI,EAAA,UAAA,qBAAkB,C,IAAtB,WACE,OAAO,KAAK,mB,MAGd,SACuB,GACrB,KAAK,oBAAsB,EAE3B,KAAK,MAAM,SAAQ,SAAA,GAAQ,OAAA,EAAK,mBAAqB,CAAK,G,kCAI5D,OAAA,eAAI,EAAA,UAAA,QAAK,C,IAAT,WACE,OAAO,KAAK,M,MAGd,SACU,GACR,KAAK,OAAS,C,qCAtGyB,G,oBAhB1C,YAAS,KAAA,CAAC,CACT,gBAAiB,0BAAwB,OACzC,SAAU,mBACV,SAAA,gfAEA,UAAW,CACT,CAAE,QAAS,EAAmB,YAAa,IAE7C,WAAY,CACV,UAAQ,WAAY,CAClB,QAAM,SAAU,QAAM,CAAE,OAAQ,KAChC,aAAW,SAAU,CAAC,QAAM,CAAE,OAAQ,EAAG,SAAU,WAAa,UAAQ,WAAY,QAAM,CAAE,OAAQ,SACpG,aAAW,SAAU,CAAC,QAAM,CAAE,OAAQ,IAAK,SAAU,WAAa,UAAQ,WAAY,QAAM,CAAE,OAAQ,U,08BA5D1G,qB,gCAkEC,kBAAe,KAAA,CAAC,a,aAChB,kBAAe,KAAA,CAAC,K,oBAEhB,W,gBAGA,cAAW,KAAA,CAAC,oB,mBAGZ,cAAW,KAAA,CAAC,uB,2BAGZ,cAAW,KAAA,CAAC,wB,mBAGZ,cAAW,KAAA,CAAC,uB,cAGZ,cAAW,KAAA,CAAC,mB,kBAqCZ,U,kBASA,U,0BAsBA,U,aAYA,W,kBChJD,SAAA,EACY,EACA,EACA,GAHZ,IAAA,EAKE,EAAA,KAAA,OAAO,K,OAJG,EAAA,mBACA,EAAA,gBACA,EAAA,UARJ,EAAA,cAAe,EAWrB,EAAK,gBAAkB,GACvB,EAAK,iBAAiB,WAClB,QACA,EAAK,cAAc,+BAA+B,6BAGtD,EAAK,eAAiB,IAAI,gBAAuB,G,SAtBR,EAAA,EAAA,GAyB3C,EAAA,UAAA,SAAA,W,EAIA,EAAA,UAAA,mBAAA,eAAA,EAAA,KAEE,KAAK,OAAO,QAAQ,KAAK,YAAU,KAAK,aAAa,WAAU,SAAC,GAC9D,IAAM,EACF,EAAO,QAAO,SAAA,GAAa,OAAA,EAAK,gBAAgB,OAAM,SAAA,GAAiB,OAAA,EAAc,KAAO,EAAU,EAAE,GAAC,IAC7G,EAAK,kBAAkB,E,IAEzB,KAAK,gBAAkB,KAAK,OAAO,KAAI,SAAA,GAAK,OAAA,CAAC,IAC7C,KAAK,kBAAkB,KAAK,gB,EAG9B,EAAA,UAAA,YAAA,WACE,KAAK,S,EAGC,EAAA,UAAA,kBAAA,SAAkB,GAAlB,IAAA,EAAA,KACN,EAAO,SAAQ,SAAA,GAAS,OAAA,EAAM,aAAa,KACvC,OAAI,SAAA,GAGF,EAAK,OAAO,SAAQ,SAAA,GAEd,EAAE,KAAO,EACX,EAAE,YAAc,EAAE,WAElB,EAAE,YAAa,C,IAGnB,EAAK,QAAQ,e,IAEf,YAAU,EAAK,aACjB,WAAW,G,EAIf,OAAA,eAAI,EAAA,UAAA,cAAW,C,IAAf,WACE,OAAO,KAAK,Y,MAGd,SACgB,GACd,KAAK,aAAe,EAEpB,KAAK,OAAO,SAAQ,SAAA,GAClB,EAAM,mBAAqB,C,IAG7B,KAAK,MAAM,SAAQ,SAAA,GACjB,EAAK,mBAAqB,C,wCA7Ea,G,oBAL5C,YAAS,KAAA,CAAC,CACT,SAAU,qBACV,SAAA,0I,iMAVO,mB,MACA,gB,MAFkB,qB,kCAgBxB,kBAAe,KAAA,CAAC,K,aAChB,kBAAe,KAAA,CAAC,K,mBAiEhB,W,MChFH,W,gBAiBE,SAAA,I,OACE,EAAA,KAAA,OAAO,I,QALqC,EAAA,EAAA,G,GAAA,G,oBAT/C,YAAS,KAAA,CAAC,CACT,SAAU,wBACV,UAAW,CACT,CAAE,QAAS,EAAwB,YAAa,IAElD,KAAM,CACJ,MAAO,mB,wEAKR,SAAK,CAAA,KAAI,cAAW,KAAA,CAAC,qB,iBCLtB,SAAA,EACY,GAAA,KAAA,W,QAGZ,EAAA,UAAA,SAAA,W,EAGA,EAAA,UAAA,mBAAA,WAC6B,KAAK,MAAM,M,2BAjBzC,YAAS,KAAA,CAAC,CACT,SAAU,oBACV,SAAA,+D,+NALwE,a,iCAUvE,kBAAe,KAAA,CAAC,M,MCCjB,WACE,KAAK,cAAe,C,gBA2BtB,SAAA,EACY,EACA,GAFZ,IAAA,EAIE,EAAA,KAAA,OAAO,K,OAHG,EAAA,mBACA,EAAA,gBAJH,EAAA,iBAAkB,EAOzB,EAAK,iBAAiB,WAClB,cACA,EAAK,cAAc,+BAA+B,2BAEtD,EAAK,eAAiB,IAAI,U,SApBgB,EAAA,EAAA,GAwB5C,EAAA,UAAA,SAAA,W,EAGA,EAAA,UAAA,SAAA,WACE,KAAK,aAAe,KAAK,YACzB,KAAK,eAAe,KAAK,KAAK,Y,EAGhC,OAAA,eAAI,EAAA,UAAA,cAAW,C,IAAf,WACE,OAAO,KAAK,Y,MAGd,SACgB,GACd,KAAK,aAAe,C,qCAtCsB,G,oBAR7C,YAAS,KAAA,CAAC,CACT,SAAU,sBACV,SAAA,4SAEA,UAAW,CACT,CAAE,QAAS,EAAsB,YAAa,I,4kBAxBzC,mB,MACA,gB,0CA4BN,W,oBAGA,cAAW,KAAA,CAAC,wB,uBAGZ,cAAW,KAAA,CAAC,iBAAc,CAAA,KAC1B,U,mBA2BA,W,kBC5CD,SAAA,IAAA,IAAA,EACE,EAAA,KAAA,OAAO,K,OAND,EAAA,cAAe,E,SAJa,EAAA,EAAA,GAapC,EAAA,UAAA,SAAA,W,EAGA,EAAA,UAAA,mBAAA,eAAA,EAAA,KACM,KAAK,kBACP,KAAK,YAAa,EAClB,KAAK,gBAAgB,eAAe,KAAK,YAAU,KAAK,aAAa,WAAU,SAAA,GAC7E,EAAK,YAAc,C,MAMzB,OAAA,eAAI,EAAA,UAAA,cAAW,C,IAAf,WACE,OAAO,KAAK,Y,MAGd,SACgB,GACd,KAAK,aAAe,EAChB,KAAK,UACP,KAAK,QAAQ,YAAc,E,qCAlCK,G,oBALrC,YAAS,KAAA,CAAC,CACT,SAAU,aACV,SAAA,0N,sgBASC,eAAY,KAAA,CAAC,K,eACb,eAAY,KAAA,CAAC,K,mBAuBb,cAAW,KAAA,CAAC,yB,MCJf,W,sBAzBC,WAAQ,KAAA,CAAC,CACR,aAAc,CACV,EACA,EACA,EACA,EACA,EACA,EACA,GAEJ,QAAS,CACP,eACA,iBAEF,QAAS,CACL,EACA,EACA,EACA,EACA,EACA,EACA,O,MCjCN,W,eCaE,SAAA,I,QAGA,EAAA,UAAA,SAAA,W,2BAbD,YAAS,KAAA,CAAC,CACT,SAAU,kBACV,SAAA,GAEA,UAAW,CACT,CAAE,QAAS,EAAmB,YAAa,I,sGCK7C,SAAA,EACgC,EACpB,EACA,EACA,GAJZ,IAAA,EAME,EAAA,KAAA,OAAO,K,OALuB,EAAA,WACpB,EAAA,aACA,EAAA,UACA,EAAA,mB,SAR6B,EAAA,EAAA,GAazC,EAAA,UAAA,SAAA,WACE,IAAK,KAAK,SACR,MAAM,IAAI,MAAM,+EAElB,IAAK,KAAK,aACR,MAAM,IAAI,MAAM,6C,EAMpB,EAAA,UAAA,YAAA,WACE,EAAA,UAAM,QAAO,KAAA,K,KAzB0B,G,oBAH1C,YAAS,KAAA,CAAC,CACT,SAAU,uB,yCAJH,EAAU,WAAA,EAAA,KAWZ,YAAQ,CAAA,KAAI,U,MAbC,c,MADX,W,MACiE,oB,wCAUvE,W,MCEH,W,sBANC,WAAQ,KAAA,CAAC,CACR,aAAc,CAAC,EAAuB,GACtC,QAAS,CACP,oB,MCRJ,W,gBAcE,SAAA,I,OACE,EAAA,KAAA,OAAO,I,QAH6B,EAAA,EAAA,GAMtC,EAAA,UAAA,SAAA,W,KANsC,G,oBARvC,YAAS,KAAA,CAAC,CACT,SAAU,aACV,SAAA,KAEA,UAAW,CACT,CAAE,QAAS,EAAc,YAAa,I,sJCM1C,W,sBAXC,WAAQ,KAAA,CAAC,CACR,aAAc,CACZ,GAEF,QAAS,CACP,gBAEF,QAAS,CACP,O,MCTJ,W,gBAmBE,SAAA,I,MAAA,EACE,EAAA,KAAA,OAAO,K,OAEP,EAAK,aAAe,IAAI,UACxB,EAAK,WAAa,IAAI,cAAS,EAAA,IAC5B,EAAK,QAAS,IAAI,cAAY,I,aAZA,EAAA,EAAA,GAgBnC,EAAA,UAAA,SAAA,W,EAGA,EAAA,UAAA,aAAA,WACE,KAAK,cAAc,SAAS,IACxB,KAAK,YACP,KAAK,WAAW,YAElB,KAAK,aAAa,UAAK,E,EAGzB,EAAA,UAAA,mBAAA,WACM,KAAK,YACP,KAAK,WAAW,YAElB,KAAK,aAAa,KAAK,KAAK,cAAc,M,EAG5C,OAAA,eAAI,EAAA,UAAA,SAAM,C,IAAV,WACE,MAAO,Q,kCAGT,OAAA,eAAI,EAAA,UAAA,gBAAa,C,IAAjB,WACE,OAAO,KAAK,WAAW,IAAI,KAAK,O,qCAvCC,G,oBARpC,YAAS,KAAA,CAAC,CACT,SAAU,YACV,SAAA,0kBAEA,UAAW,CACT,CAAE,QAAS,EAAsB,YAAa,I,mLAI/C,W,kBAEA,YAAS,KAAA,CAAC,qB,MClBb,W,gBAwBE,SAAA,EACY,GADZ,IAAA,EAGE,EAAA,KAAA,OAAO,K,OAFG,EAAA,W,SALsB,EAAA,EAAA,GAUlC,EAAA,UAAA,SAAA,W,EAIA,EAAA,UAAA,mBAAA,WAEE,IAAM,EAA6B,KAAK,SAAS,cAGjD,KAAK,WAAa,EAAc,cAAc,MAAM,iBAAiB,MAAM,M,EAI7E,OAAA,eAAI,EAAA,UAAA,aAAU,C,IAAd,WACE,OAAO,KAAK,W,MAGd,SAAe,GACb,KAAK,YAAc,C,qCA5Ba,G,oBAbnC,YAAS,KAAA,CAAC,CACT,SAAU,WACV,SAAA,oCAEA,gBAAiB,0BAAwB,OACzC,cAAe,oBAAkB,KACjC,KAAM,CACJ,KAAM,YAER,UAAW,CACT,CAAE,QAAS,EAAY,YAAa,I,mQAnBuB,c,qBCoE7D,SAAA,EACY,EACA,EACA,EACA,EACA,GALZ,IAAA,EAOE,EAAA,KAAA,OAAO,K,OANG,EAAA,mBACA,EAAA,gBACA,EAAA,QACA,EAAA,YACA,EAAA,aAVJ,EAAA,UAAY,EAalB,EAAK,MAAQ,EACb,EAAK,OAAS,GACd,EAAK,SAAU,EACf,EAAK,eAAiB,EACtB,EAAK,iBAAiB,WAClB,YACA,EAAK,cAAc,+BAA+B,yBAEtD,EAAK,iBAAiB,WAClB,aACA,EAAK,cAAc,+BAA+B,2BAEtD,EAAK,iBAAiB,WAClB,iBACA,EAAK,cAAc,+BAA+B,sCAEtD,EAAK,iBAAiB,WAClB,gBACA,EAAK,cAAc,+BAA+B,qC,SAhEjB,EAAA,EAAA,GAoEvC,EAAA,UAAA,SAAA,W,UACE,KAAK,MAAK,EAAA,GAAA,EAAiD,QAA1C,EAAW,QAAX,EAAA,KAAK,cAAM,IAAA,OAAA,EAAA,EAAE,MAAM,EAAG,KAAK,uBAAe,IAAA,IAAI,KAE/D,KAAK,QAAgC,IAAtB,KAAK,MAAM,SAAiB,KAAK,UAChD,KAAK,SAAW,KAAK,OAAiB,QAAX,EAAA,KAAK,cAAM,IAAA,OAAA,EAAA,EAAE,QAAS,KAAK,gBAEtD,IAAM,EAAuB,KAAK,MAAM,cACxC,KAAK,YAAc,KAAK,MAAM,EAAQ,wBAAwB,OAC9D,KAAK,aAAe,KAAK,MAAM,EAAQ,wBAAwB,O,EAGjE,EAAA,UAAA,gBAAA,W,EAGA,EAAA,UAAA,mBAAA,eAAA,EAAA,KACE,KAAK,UAAY,KAAK,MAAM,WAExB,KAAK,QACP,KAAK,OAAO,aAAa,KAAK,YAAU,KAAK,aAAa,WAAU,SAAC,GAEjE,EAAK,KADH,EACU,EAAK,OAAO,QAAO,SAAA,GAC7B,OAAO,OAAO,OAAO,GAAG,MAAK,SAAA,GAC3B,IACE,OAAO,EAAM,WAAW,cAAc,SAAS,EAAY,c,CAC3D,MAAO,GACP,OAAO,C,QAKD,EAAK,M,KAMzB,EAAA,UAAA,YAAA,SAAY,G,UACF,EAAsB,EAAO,OAAP,EAAO,WAEjC,aAAM,EAAN,EAAQ,gBACV,KAAK,KAA0B,QAAnB,EAAA,EAAO,oBAAY,IAAA,IAAI,GACnC,KAAK,SAAW,KAAK,OAAiB,QAAX,EAAA,KAAK,cAAM,IAAA,OAAA,EAAA,EAAE,QAAS,KAAK,iBAGxD,KAAK,QAAiC,KAAb,QAAV,EAAA,KAAK,aAAK,IAAA,OAAA,EAAA,EAAE,UAAiB,KAAK,S,EAGnD,EAAA,UAAA,YAAA,WACE,KAAK,S,EAGP,EAAA,UAAA,cAAA,SAAc,G,MACZ,KAAK,OAAS,EACd,KAAK,MAAK,EAAA,GAAA,EAAkB,QAAX,EAAA,KAAK,cAAM,IAAA,OAAA,EAAA,EAAE,MAAM,KAAK,MAAQ,KAAK,eAAgB,KAAK,gBAAkB,KAAK,MAAQ,K,EAG5G,OAAA,eAAI,EAAA,UAAA,OAAI,C,IAAR,WACE,OAAO,KAAK,K,MAGd,SAAS,GACP,KAAK,MAAK,EAAA,GAAA,EAAO,EAAM,MAAM,KAAK,MAAQ,KAAK,eAAgB,KAAK,gBAAkB,KAAK,MAAQ,K,qCAjI9D,G,qBAPxC,YAAS,KAAA,CAAC,CACT,SAAU,WACV,SAAA,q0BAEA,gBAAiB,0BAAwB,O,6EAXlC,mB,MACA,gB,MAVP,c,MAKA,a,MARA,qB,sCA4BC,SAAK,CAAA,KACL,cAAW,KAAA,CAAC,8B,gBAGZ,SAAK,CAAA,KACL,cAAW,KAAA,CAAC,6B,mBAGZ,cAAW,KAAA,CAAC,yB,oBAGZ,cAAW,KAAA,CAAC,0B,cAGZ,U,iBACA,U,eACA,U,sBACA,U,kBAEA,YAAS,KAAA,CAAC,a,uBAGV,YAAS,KAAA,CAAC,kB,aAGV,eAAY,KAAA,CAAC,K,cACb,eAAY,KAAA,CAAC,K,iBAIb,cAAW,KAAA,CAAC,wB,kBCnDb,SAAA,I,QAEA,EAAA,UAAA,SAAA,W,4BAXD,YAAS,KAAA,CAAC,CACT,SAAU,WACV,SAAA,kCAEA,gBAAiB,0BAAwB,OACzC,cAAe,oBAAkB,K,oMCIjC,eAAA,EAAA,KAGA,KAAA,kBAAoB,WAClB,EAAK,sBAAsB,M,EAG7B,KAAA,kBAAoB,WAClB,EAAK,sBAAsB,M,kBCC7B,SAAA,IAAA,IAAA,EACE,EAAA,KAAA,OAAO,K,OACP,EAAK,sBAAwB,IAAI,UACjC,EAAK,sBAAwB,IAAI,U,SAXI,EAAA,EAAA,GAcvC,EAAA,UAAA,SAAA,W,EAIA,OAAA,eAAI,EAAA,UAAA,WAAQ,C,IAAZ,WACE,OAAO,KAAK,S,MAGd,SAEa,GACX,KAAK,UAAY,C,kCAInB,OAAA,eAAI,EAAA,UAAA,sBAAmB,C,IAAvB,WACE,OAAO,KAAK,oB,MAGd,SACwB,GACtB,KAAK,qBAAuB,C,kCAG9B,OAAA,eAAI,EAAA,UAAA,uBAAoB,C,IAAxB,WACE,OAAO,KAAK,qB,MAGd,SACyB,GACvB,KAAK,sBAAwB,C,qCA5CQ,I,qBARxC,YAAS,KAAA,CAAC,CACT,SAAU,gBACV,SAAA,scAEA,UAAW,CACT,CAAE,QAAS,GAAiB,YAAa,K,uGAK1C,W,6BAGA,W,gBAiBA,SAAK,CAAA,KACL,cAAW,KAAA,CAAC,iC,2BAUZ,U,4BASA,W,OChBH,W,uBAvBC,WAAQ,KAAA,CAAC,CACR,aAAc,CACV,GACA,GACA,EACA,GACA,GAEJ,QAAS,CACP,eACA,gBACA,EACA,gBACA,EACA,uBAEF,QAAS,CACP,GACA,GACA,EACA,O,kBCMF,SAAA,IACE,KAAK,YAAa,EAClB,KAAK,kBAAoB,IAAI,S,QAG/B,EAAA,UAAA,SAAA,W,EAGA,EAAA,UAAA,mBAAA,WACE,IAAM,EAAiB,KAAK,cAAc,OAE7B,KAAK,gBAAlB,EAAS,EAA2B,EAAS,EAA2B,EAAS,E,EAGnF,EAAA,UAAA,OAAA,WACE,KAAK,YAAc,KAAK,WACxB,KAAK,kBAAkB,KAAK,KAAK,W,4BApDpC,YAAS,KAAA,CAAC,CACT,SAAU,SACV,SAAA,yWAEA,WAAY,CACV,UAAQ,aAAc,CACpB,aAAW,SAAU,CACnB,QAAM,CACJ,QAAS,EACT,OAAQ,OAEV,UAAQ,QAAS,QAAM,CAAE,QAAS,EAAG,OAAQ,YAE/C,aAAW,SAAU,CACnB,UAAQ,QAAS,QAAM,CAAE,QAAS,EAAG,OAAQ,U,2UAOlD,kBAAe,KAAA,CAAC,K,gBAGhB,SAAK,CAAA,KACL,cAAW,KAAA,CAAC,oB,yBAGZ,W,uBAKA,cAAW,KAAA,CAAC,yB,OCpBf,W,uBAZC,WAAQ,KAAA,CAAC,CACR,aAAc,CACZ,IAEF,QAAS,CACP,eACA,mBAEF,QAAS,CACP,Q,OCZJ,W,iBAcE,SAAA,I,OACE,EAAA,KAAA,OAAO,I,QAHwB,EAAA,EAAA,GAMjC,EAAA,UAAA,SAAA,W,KANiC,G,qBARlC,YAAS,KAAA,CAAC,CACT,SAAU,UACV,SAAA,iPAEA,UAAW,CACT,CAAE,QAAS,GAAW,YAAa,K,8DCIvC,W,uBAXC,WAAQ,KAAA,CAAC,CACR,aAAc,CACV,IAEJ,QAAS,CACP,gBAEF,QAAS,CACL,Q,OCTN,WACY,KAAA,YAA6B,C,iBAmBvC,SAAA,EACY,EACA,GAFZ,IAAA,EAIE,EAAA,KAAA,OAAO,K,OAHG,EAAA,mBACA,EAAA,gBAGV,EAAK,iBAAiB,WAClB,YACA,EAAK,cAAc,+BAA+B,yB,SAfrB,EAAA,EAAA,GAmBnC,EAAA,UAAA,YAAA,SAAY,GACa,EAAO,S,EAGhC,OAAA,eAAI,EAAA,UAAA,YAAS,C,IAAb,WACE,OAAO,KAAK,U,MAGd,SACc,GACZ,KAAK,WAAa,C,qCA7Be,I,qBALpC,YAAS,KAAA,CAAC,CACT,SAAU,YACV,SAAA,mN,4iBAZO,mB,MACA,gB,uCAgBN,cAAW,KAAA,CAAC,yB,mBAGZ,cAAW,KAAA,CAAC,0B,iBAsBZ,W,OC1BH,W,uBAVC,WAAQ,KAAA,CAAC,CACR,aAAc,CAAC,IACf,QAAS,CACP,eACA,iBAEF,QAAS,CACP,Q","file":"/npm/ql-components@0.0.14/bundles/ql-components.umd.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/ql-components@0.0.14/bundles/ql-components.umd.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n    extendStatics = Object.setPrototypeOf ||\r\n        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n        function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n    return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n    if (typeof b !== \"function\" && b !== null)\r\n        throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n    extendStatics(d, b);\r\n    function __() { this.constructor = d; }\r\n    d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n    __assign = Object.assign || function __assign(t) {\r\n        for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n            s = arguments[i];\r\n            for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n        }\r\n        return t;\r\n    }\r\n    return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n    var t = {};\r\n    for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n        t[p] = s[p];\r\n    if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n        for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n            if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n                t[p[i]] = s[p[i]];\r\n        }\r\n    return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n    var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n    if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n    else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n    return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n    return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n    if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n    return new (P || (P = Promise))(function (resolve, reject) {\r\n        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n        function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n        step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n    });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n    var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n    return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n    function verb(n) { return function (v) { return step([n, v]); }; }\r\n    function step(op) {\r\n        if (f) throw new TypeError(\"Generator is already executing.\");\r\n        while (_) try {\r\n            if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n            if (y = 0, t) op = [op[0] & 2, t.value];\r\n            switch (op[0]) {\r\n                case 0: case 1: t = op; break;\r\n                case 4: _.label++; return { value: op[1], done: false };\r\n                case 5: _.label++; y = op[1]; op = [0]; continue;\r\n                case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n                default:\r\n                    if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n                    if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n                    if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n                    if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n                    if (t[2]) _.ops.pop();\r\n                    _.trys.pop(); continue;\r\n            }\r\n            op = body.call(thisArg, _);\r\n        } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n        if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n    }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n    if (k2 === undefined) k2 = k;\r\n    Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n    if (k2 === undefined) k2 = k;\r\n    o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n    for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n    var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n    if (m) return m.call(o);\r\n    if (o && typeof o.length === \"number\") return {\r\n        next: function () {\r\n            if (o && i >= o.length) o = void 0;\r\n            return { value: o && o[i++], done: !o };\r\n        }\r\n    };\r\n    throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n    var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n    if (!m) return o;\r\n    var i = m.call(o), r, ar = [], e;\r\n    try {\r\n        while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n    }\r\n    catch (error) { e = { error: error }; }\r\n    finally {\r\n        try {\r\n            if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n        }\r\n        finally { if (e) throw e.error; }\r\n    }\r\n    return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n    for (var ar = [], i = 0; i < arguments.length; i++)\r\n        ar = ar.concat(__read(arguments[i]));\r\n    return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n    for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n    for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n        for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n            r[k] = a[j];\r\n    return r;\r\n}\r\n\r\nexport function __spreadArray(to, from) {\r\n    for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\r\n        to[j] = from[i];\r\n    return to;\r\n}\r\n\r\nexport function __await(v) {\r\n    return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n    if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n    var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n    return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n    function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n    function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n    function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n    function fulfill(value) { resume(\"next\", value); }\r\n    function reject(value) { resume(\"throw\", value); }\r\n    function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n    var i, p;\r\n    return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n    function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n    if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n    var m = o[Symbol.asyncIterator], i;\r\n    return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n    function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n    function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n    if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n    return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n    Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n    o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n    if (mod && mod.__esModule) return mod;\r\n    var result = {};\r\n    if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n    __setModuleDefault(result, mod);\r\n    return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n    return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n    if (!privateMap.has(receiver)) {\r\n        throw new TypeError(\"attempted to get private field on non-instance\");\r\n    }\r\n    return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n    if (!privateMap.has(receiver)) {\r\n        throw new TypeError(\"attempted to set private field on non-instance\");\r\n    }\r\n    privateMap.set(receiver, value);\r\n    return value;\r\n}\r\n","export abstract class ErrorToken {\r\n}\r\n","import { AfterContentInit, Component, OnInit } from '@angular/core';\nimport { ErrorToken } from './error';\n\n@Component({\n    selector: 'ql-error',\n    templateUrl: './error.component.html',\n    styleUrls: ['./error.component.scss'],\n    providers: [\n        { provide: ErrorToken, useExisting: ErrorComponent }\n    ]\n})\nexport class ErrorComponent extends ErrorToken implements OnInit, AfterContentInit {\n\n    constructor(\n    ) {\n        super();\n    }\n\n    ngOnInit(): void {\n    }\n\n    ngAfterContentInit(): void {\n    }\n\n}\n","import { Subject } from 'rxjs';\r\n\r\nexport abstract class Destroyable {\r\n  protected _onDestroy: Subject<void>;\r\n\r\n  protected constructor() {\r\n    this._onDestroy = new Subject<void>();\r\n  }\r\n\r\n  protected cleanup(): void {\r\n    this._onDestroy.next();\r\n    this._onDestroy.complete();\r\n  }\r\n}\r\n","import { BehaviorSubject, Observable, Subject } from 'rxjs';\r\nimport { Destroyable } from '../common/destroyable';\r\n\r\nexport abstract class InputToken extends Destroyable {\r\n  hasError: BehaviorSubject<boolean>;\r\n  valueChange: Observable<any>;\r\n  height?: string;\r\n\r\n  protected constructor() {\r\n    super();\r\n    this.hasError = new BehaviorSubject<boolean>(false);\r\n    this.valueChange = new Subject<string>();\r\n  }\r\n\r\n\r\n  abstract focus(): void;\r\n}\r\n","import { animate, keyframes, state, style, transition, trigger } from '@angular/animations';\nimport { AfterContentInit, Component, ContentChild, ElementRef, HostBinding, OnInit, Renderer2, ViewChild } from '@angular/core';\nimport { takeUntil } from 'rxjs/operators';\nimport { Destroyable } from '../../common/destroyable';\nimport { InputToken } from '../input';\n\n@Component({\n  selector: 'ql-field',\n  templateUrl: './field.component.html',\n  styleUrls: ['./field.component.scss'],\n  animations: [\n    trigger('invalid', [\n      state('no-error', style({\n        width: 0,\n        transform: 'translateY(-100%)',\n        opacity: 0\n      })),\n      state('error', style({\n        width: '100%',\n        transform: 'translateX(0)',\n        opacity: 1\n      })),\n      transition('no-error <=> error', [\n        animate(350)\n      ]),\n      transition('void <=> error', [\n        animate(350, keyframes([\n          style({ opacity: 0, width: '33%', transform: 'translateY(-66%)' }),\n          style({ opacity: .6, width: '66%', transform: 'translateY(-33%)' }),\n          style({ opacity: 1, width: '100%', transform: 'translateY(0)' })\n        ]))\n      ])\n    ])\n  ]\n})\nexport class FieldComponent extends Destroyable implements OnInit, AfterContentInit {\n\n  @ViewChild('inputDiv', {static: true}) inputDiv: ElementRef<HTMLDivElement>;\n\n  @ContentChild(InputToken) input!: InputToken;\n\n  @HostBinding('class.invalid')\n  inputError: boolean;\n\n  constructor(\n      private _renderer: Renderer2\n  ) {\n    super();\n  }\n\n  ngOnInit(): void {\n  }\n\n  ngAfterContentInit(): void {\n    this.input?.hasError.pipe(\n        takeUntil(this._onDestroy)\n    ).subscribe(invalid => {\n      this.inputError = invalid;\n    });\n\n    if (this.input && this.input.height) {\n      this._renderer.setStyle(this.inputDiv.nativeElement, 'height', this.input.height);\n    }\n  }\n\n  focusInput = (): void => this.input.focus();\n}\n","import { AfterContentInit, Directive, ElementRef, HostListener, Input, OnDestroy, Optional, Self } from '@angular/core';\nimport { NgControl } from '@angular/forms';\nimport { debounceTime, map, startWith, takeUntil } from 'rxjs/operators';\nimport { InputToken } from './input';\n\n@Directive({\n  selector: '[qlInput]',\n  providers: [\n    { provide: InputToken, useExisting: InputDirective }\n  ],\n  // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n  host: {\n    class: 'input-field'\n  }\n})\nexport class InputDirective extends InputToken implements AfterContentInit, OnDestroy {\n\n  @Input() height: string;\n\n  private _classChangeObserver: MutationObserver;\n\n  constructor(\n      protected _elementRef: ElementRef<HTMLInputElement | HTMLSelectElement | HTMLTextAreaElement>,\n      @Optional() @Self() public ngControl: NgControl\n  ) {\n    super();\n  }\n\n\n  @HostListener('focusout')\n  onFocus(): void {\n    this.hasError.next(this.ngControl?.touched && this.ngControl?.invalid);\n  }\n\n  ngAfterContentInit(): void {\n\n    // todo: This causes matautocomplete to present error twice\n    this.ngControl?.statusChanges.pipe(\n        startWith(''),\n        debounceTime(100),\n        map(state => state === 'INVALID'),\n        takeUntil(this._onDestroy)\n    ).subscribe(this.hasError);\n\n\n    this.valueChange = this.ngControl?.valueChanges;\n  }\n\n  ngOnDestroy(): void {\n    this._onDestroy.next();\n    this._onDestroy.complete();\n  }\n\n  focus(): void {\n    this._elementRef.nativeElement.focus();\n  }\n\n\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n    selector: 'ql-label',\n    templateUrl: './label.component.html',\n    styleUrls: ['./label.component.scss']\n})\nexport class LabelComponent implements OnInit {\n\n    constructor() {\n    }\n\n    ngOnInit() {\n    }\n\n}\n","import { AfterContentInit, Directive, ElementRef, Self } from '@angular/core';\n\nexport abstract class IconToken {\n}\n\n@Directive({\n    selector: '[qlIcon]',\n    // eslint-disable-next-line @angular-eslint/no-host-metadata-property\n    host: {\n        class: 'icon'\n    },\n    providers: [{provide: IconToken, useExisting: IconDirective}]\n})\nexport class IconDirective extends IconToken implements AfterContentInit {\n\n    constructor(\n        @Self() private _elementRef: ElementRef<unknown>\n    ) {\n        super();\n    }\n\n    ngAfterContentInit(): void {\n    }\n\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { ErrorComponent } from './error/error.component';\nimport { FieldComponent } from './field/field.component';\nimport { InputDirective } from './input.directive';\nimport { LabelComponent } from './label/label.component';\nimport { IconDirective } from './icon.directive';\n\n@NgModule({\n    declarations: [\n        FieldComponent,\n        InputDirective,\n        ErrorComponent,\n        LabelComponent,\n        IconDirective\n    ],\n    imports: [\n        CommonModule\n    ],\n    exports: [\n        FieldComponent,\n        InputDirective,\n        ErrorComponent,\n        LabelComponent,\n        IconDirective\n    ]\n})\nexport class FormFieldModule {\n}\n","import { Directive, HostBinding, Input } from '@angular/core';\r\n\r\n@Directive()\r\n// tslint:disable-next-line:directive-class-suffix\r\nexport abstract class QlBaseStyle {\r\n  @Input()\r\n  @HostBinding('style.--width')\r\n  width: string;\r\n\r\n  @Input()\r\n  @HostBinding('style.--height')\r\n  height: string;\r\n\r\n  @Input()\r\n  color: 'primary' | 'ascent' | 'simple' | 'warn' = 'primary';\r\n\r\n}\r\n","import { Component, ElementRef, HostBinding, Input, OnInit, ViewChild } from '@angular/core';\nimport { MatIconRegistry } from '@angular/material/icon';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { QlBaseStyle } from '../common/ql-base-style';\n\n@Component({\n  selector: 'ql-button',\n  templateUrl: './button.component.html',\n  styleUrls: ['./button.component.scss']\n})\nexport class ButtonComponent extends QlBaseStyle implements OnInit {\n\n  @ViewChild('button') button: ElementRef<HTMLButtonElement> | undefined;\n\n  @Input()\n  disabled: boolean;\n\n  @HostBinding('class.with-extra')\n  private _isLoading: boolean;\n\n  @Input()\n  @HostBinding('style.--spinner-width')\n  spinnerWidth: string;\n\n  @Input()\n  fab = false;\n\n  constructor(\n      private _matIconRegistry: MatIconRegistry,\n      private _domSanitizer: DomSanitizer\n  ) {\n    super();\n    this._matIconRegistry.addSvgIcon(\n        'spinner',\n        this._domSanitizer.bypassSecurityTrustResourceUrl('assets/spinner.svg')\n    );\n\n  }\n\n  ngOnInit(): void {\n  }\n\n  get isLoading(): boolean {\n    return this._isLoading;\n  }\n\n  @Input()\n  set isLoading(loading: boolean) {\n    this._isLoading = loading;\n  }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatRippleModule } from '@angular/material/core';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { ButtonComponent } from './button.component';\n\n\n\n@NgModule({\n  declarations: [\n      ButtonComponent\n  ],\n  imports: [\n    CommonModule,\n    MatProgressSpinnerModule,\n    MatIconModule,\n    MatRippleModule\n  ],\n  exports: [\n      ButtonComponent\n  ]\n})\nexport class ButtonModule { }\n","import { AfterContentInit, Component, ContentChild, HostBinding, Input, OnInit } from '@angular/core';\nimport { MatIcon } from '@angular/material/icon';\n\nexport abstract class SidebarItemToken {\n  protected _isSelected = false;\n\n  protected abstract _isSidebarCollapsed: boolean;\n  protected abstract _order: number;\n\n  abstract set isSidebarCollapsed(value: boolean);\n  abstract get isSidebarCollapsed(): boolean;\n  abstract get order(): number;\n  abstract set order(value: number);\n\n  get isSelected(): boolean {\n    return this._isSelected;\n  }\n\n  set isSelected(value: boolean) {\n    this._isSelected = value;\n  }\n}\n\n@Component({\n  selector: 'ql-sidebar-item',\n  templateUrl: './sidebar-item.component.html',\n  styleUrls: ['./sidebar-item.component.scss'],\n  providers: [\n    { provide: SidebarItemToken, useExisting: SidebarItemComponent }\n  ]\n})\nexport class SidebarItemComponent extends SidebarItemToken implements OnInit, AfterContentInit {\n\n  @ContentChild(MatIcon) icon: MatIcon | undefined;\n\n  @HostBinding('class.is-collapsed')\n  protected _isSidebarCollapsed: boolean;\n\n  @HostBinding('class.is-selected')\n  protected _isSelected = false;\n\n  @HostBinding('class.has-icon')\n  private _hasIcon = false;\n\n  @HostBinding('style.--order')\n  protected _order: number;\n\n  constructor() {\n    super();\n  }\n\n  ngOnInit(): void {\n  }\n\n  ngAfterContentInit(): void {\n    if (this.icon) {\n      this.hasIcon = true;\n    }\n  }\n\n\n  get isSelected(): boolean {\n    return this._isSelected;\n  }\n\n  @Input()\n  set isSelected(value: boolean) {\n    this._isSelected = value;\n  }\n\n  get hasIcon(): boolean {\n    return this._hasIcon;\n  }\n\n  set hasIcon(value: boolean) {\n    this._hasIcon = value;\n  }\n\n  get isSidebarCollapsed(): boolean {\n    return this._isSidebarCollapsed;\n  }\n\n  @Input()\n  set isSidebarCollapsed(value: boolean) {\n    this._isSidebarCollapsed = value;\n  }\n\n  get order(): number {\n    return this._order;\n  }\n\n  @Input()\n  set order(value: number) {\n    this._order = value;\n  }\n}\n","import { animate, state, style, transition, trigger } from '@angular/animations';\nimport {\n  AfterContentInit,\n  ChangeDetectionStrategy,\n  ChangeDetectorRef,\n  Component,\n  ContentChildren,\n  HostBinding,\n  Input,\n  OnChanges,\n  OnInit,\n  Output,\n  QueryList,\n  SimpleChanges\n} from '@angular/core';\nimport { MatIcon } from '@angular/material/icon';\nimport { Subject } from 'rxjs';\nimport { Destroyable } from '../../../common/destroyable';\nimport { SidebarItemToken } from '../sidebar-item/sidebar-item.component';\n\nlet id = 0;\n\nexport abstract class SidebarGroupToken extends Destroyable {\n\n  public groupClicked: Subject<number>;\n  public id: number;\n\n  protected abstract _isSidebarCollapsed = false;\n  protected abstract _isExpanded: boolean;\n  protected abstract _order: number;\n\n  get isExpanded(): boolean {\n    return this._isExpanded;\n  }\n\n  set isExpanded(value: boolean) {\n    this._isExpanded = value;\n  }\n\n  abstract get isSidebarCollapsed(): boolean;\n  abstract set isSidebarCollapsed(value: boolean);\n\n  abstract get order(): number;\n  abstract set order(value: number);\n\n  protected constructor() {\n    super();\n    this.id = id;\n    id++;\n  }\n}\n\n@Component({\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  selector: 'ql-sidebar-group',\n  templateUrl: './sidebar-group.component.html',\n  styleUrls: ['./sidebar-group.component.scss'],\n  providers: [\n    { provide: SidebarGroupToken, useExisting: SidebarGroupComponent }\n  ],\n  animations: [\n    trigger('expanded', [\n      state(':leave', style({ height: 0 })),\n      transition(':enter', [style({ height: 0, overflow: 'hidden' }), animate('.3s ease', style({ height: '*' }))]),\n      transition(':leave', [style({ height: '*', overflow: 'hidden' }), animate('.3s ease', style({ height: 0 }))])\n    ])\n  ]\n})\nexport class SidebarGroupComponent extends SidebarGroupToken implements OnInit, OnChanges, AfterContentInit {\n\n  @ContentChildren(MatIcon) icon: QueryList<MatIcon>;\n  @ContentChildren(SidebarItemToken) items: QueryList<SidebarItemToken>;\n\n  @Output() groupClicked: Subject<number>;\n  tooltipText: string;\n\n  @HostBinding('class.has-icon')\n  private _hasIcon: boolean;\n\n  @HostBinding('class.is-expanded')\n  protected _isExpanded: boolean;\n\n  @HostBinding('class.is-collapsed')\n  protected _isSidebarCollapsed = false;\n\n  @HostBinding('class.always-open')\n  protected _alwaysOpen: boolean;\n\n  @HostBinding('style.--order')\n  protected _order: number;\n\n  constructor(\n      private _change: ChangeDetectorRef\n  ) {\n    super();\n    this.groupClicked = new Subject<number>();\n  }\n\n  ngOnInit(): void {\n\n  }\n\n  ngAfterContentInit(): void {\n    this._hasIcon = this.icon.length > 0;\n  }\n\n\n  ngOnChanges(changes: SimpleChanges): void {\n    if (Reflect.has(changes, 'isExpanded')) {\n      this.isExpanded = Reflect.get(changes, 'isExpanded') as boolean;\n    }\n\n    if (Reflect.has(changes, 'alwaysOpen')) {\n      this.alwaysOpen = Reflect.get(changes, 'alwaysOpen') as boolean;\n    }\n  }\n\n  expand(): void {\n    this.groupClicked.next(this.id);\n  }\n\n  get isExpanded(): boolean {\n    return this._isExpanded;\n  }\n\n  @Input()\n  set isExpanded(value: boolean) {\n    this._isExpanded = value;\n  }\n\n  get alwaysOpen(): boolean {\n    return this._alwaysOpen;\n  }\n\n  @Input()\n  set alwaysOpen(value: boolean) {\n    this._alwaysOpen = value;\n\n    if (value) {\n      this.hasIcon = false;\n    }\n  }\n\n  get hasIcon(): boolean {\n    return this._hasIcon;\n  }\n\n  set hasIcon(value: boolean) {\n    this._hasIcon = value;\n  }\n\n\n  get isSidebarCollapsed(): boolean {\n    return this._isSidebarCollapsed;\n  }\n\n  @Input()\n  set isSidebarCollapsed(value: boolean) {\n    this._isSidebarCollapsed = value;\n\n    this.items.forEach(item => item.isSidebarCollapsed = value);\n  }\n\n\n  get order(): number {\n    return this._order;\n  }\n\n  @Input()\n  set order(value: number) {\n    this._order = value;\n  }\n}\n","import { AfterContentInit, ChangeDetectorRef, Component, ContentChildren, Input, OnDestroy, OnInit, QueryList } from '@angular/core';\nimport { MatIconRegistry } from '@angular/material/icon';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { ReplaySubject } from 'rxjs';\nimport { takeUntil, tap } from 'rxjs/operators';\nimport { Destroyable } from '../../common/destroyable';\nimport { SidebarGroupToken } from './sidebar-group/sidebar-group.component';\nimport { SidebarItemToken } from './sidebar-item/sidebar-item.component';\n\n@Component({\n  selector: 'ql-sidebar-content',\n  templateUrl: './sidebar-content.component.html',\n  styleUrls: ['./sidebar-content.component.scss']\n})\nexport class SidebarContentComponent extends Destroyable implements OnInit, AfterContentInit, OnDestroy {\n\n  @ContentChildren(SidebarGroupToken) groups: QueryList<SidebarGroupToken>;\n  @ContentChildren(SidebarItemToken) items: QueryList<SidebarItemToken>;\n\n  private _isCollapsed = false;\n  private _existingGroups: SidebarGroupToken[];\n\n  private _groupObserver: ReplaySubject<boolean>;\n\n  constructor(\n      private _matIconRegistry: MatIconRegistry,\n      private _domSanitizer: DomSanitizer,\n      private _change: ChangeDetectorRef\n  ) {\n    super();\n    this._existingGroups = [];\n    this._matIconRegistry.addSvgIcon(\n        'arrow',\n        this._domSanitizer.bypassSecurityTrustResourceUrl('assets/sidebar-arrow.svg')\n    );\n\n    this._groupObserver = new ReplaySubject<boolean>(1);\n  }\n\n  ngOnInit(): void {\n  }\n\n\n  ngAfterContentInit(): void {\n    // This here is to ensure if the content changes we observe the changes and resubscribe as this wont trigger ngonchanges\n    this.groups.changes.pipe(takeUntil(this._onDestroy)).subscribe((groups: QueryList<SidebarGroupToken>) => {\n      const groupsToObserve: SidebarGroupToken[] =\n          groups.filter(newGroups => this._existingGroups.every(existingGroup => existingGroup.id !== newGroups.id));\n      this._setGroupExpanded(groupsToObserve);\n    });\n    this._existingGroups = this.groups.map(g => g);\n    this._setGroupExpanded(this._existingGroups);\n  }\n\n  ngOnDestroy(): void {\n    this.cleanup();\n  }\n\n  private _setGroupExpanded(groups: SidebarGroupToken[]): void {\n    groups.forEach(group => group.groupClicked.pipe(\n        tap(clickedId => {\n          // iterate all groups and set as not selected except where id matches\n          // There set reverse of what is currently the option\n          this.groups.forEach(g => {\n\n            if (g.id === clickedId) {\n              g.isExpanded = !g.isExpanded;\n            } else {\n              g.isExpanded = false;\n            }\n          });\n          this._change.detectChanges();\n        }),\n        takeUntil(this._onDestroy)\n    ).subscribe());\n  }\n\n\n  get isCollapsed(): boolean {\n    return this._isCollapsed;\n  }\n\n  @Input()\n  set isCollapsed(value: boolean) {\n    this._isCollapsed = value;\n\n    this.groups.forEach(group => {\n      group.isSidebarCollapsed = value;\n    });\n\n    this.items.forEach(item => {\n      item.isSidebarCollapsed = value;\n    });\n  }\n}\n","import { Directive, HostBinding, Input } from '@angular/core';\n\nexport abstract class SidebarHeaderItemToken {\n  isActive: boolean;\n}\n\n@Directive({\n  selector: '[qlSidebarHeaderItem]',\n  providers: [\n    { provide: SidebarHeaderItemToken, useExisting: SidebarHeaderItemDirective }\n  ],\n  host: {\n    class: 'header-item'\n  }\n})\nexport class SidebarHeaderItemDirective extends SidebarHeaderItemToken {\n\n  @Input() @HostBinding('class.selected') isActive: boolean;\n\n  constructor() {\n    super();\n  }\n\n}\n","import { AfterContentInit, Component, ContentChildren, OnInit, QueryList, Renderer2 } from '@angular/core';\nimport { SidebarHeaderItemToken } from './sidebar-header-item.directive';\n\n@Component({\n  selector: 'ql-sidebar-header',\n  templateUrl: './sidebar-header.component.html',\n  styleUrls: ['./sidebar-header.component.scss']\n})\nexport class SidebarHeaderComponent implements OnInit, AfterContentInit {\n\n  @ContentChildren(SidebarHeaderItemToken) items: QueryList<SidebarHeaderItemToken>;\n\n  constructor(\n      private _renderer: Renderer2\n  ) { }\n\n  ngOnInit(): void {\n  }\n\n  ngAfterContentInit(): void {\n    const totalItems: number = this.items.length;\n  }\n\n\n}\n","import { Component, HostBinding, Input, OnInit, Output } from '@angular/core';\nimport { MatIconRegistry } from '@angular/material/icon';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { Subject } from 'rxjs';\n\nexport abstract class SidebarCollapseToken {\n\n  public abstract withDefaultIcon: boolean;\n\n  protected _isCollapsed: boolean;\n\n  protected constructor() {\n    this._isCollapsed = false;\n  }\n\n  abstract collapseChange: Subject<boolean>;\n\n  abstract collapse(): void;\n}\n\n@Component({\n  selector: 'ql-sidebar-collapse',\n  templateUrl: './sidebar-collapse.component.html',\n  styleUrls: ['./sidebar-collapse.component.scss'],\n  providers: [\n    { provide: SidebarCollapseToken, useExisting: SidebarCollapseComponent }\n  ]\n})\nexport class SidebarCollapseComponent extends SidebarCollapseToken implements OnInit {\n\n  @Output()\n  public collapseChange: Subject<boolean>;\n\n  @HostBinding('class.is-collapsed')\n  protected _isCollapsed: boolean;\n\n  @HostBinding('class.rotate')\n  @Input() withDefaultIcon = true;\n\n  constructor(\n      private _matIconRegistry: MatIconRegistry,\n      private _domSanitizer: DomSanitizer\n  ) {\n    super();\n    this._matIconRegistry.addSvgIcon(\n        'arrow-right',\n        this._domSanitizer.bypassSecurityTrustResourceUrl('assets/arrow-right.svg')\n    );\n    this.collapseChange = new Subject<boolean>();\n\n  }\n\n  ngOnInit(): void {\n  }\n\n  collapse(): void {\n    this.isCollapsed = !this.isCollapsed;\n    this.collapseChange.next(this.isCollapsed);\n  }\n\n  get isCollapsed(): boolean {\n    return this._isCollapsed;\n  }\n\n  @Input()\n  set isCollapsed(value: boolean) {\n    this._isCollapsed = value;\n  }\n}\n","import { AfterContentInit, Component, ContentChild, HostBinding, OnInit } from '@angular/core';\nimport { takeUntil } from 'rxjs/operators';\nimport { Destroyable } from '../common/destroyable';\nimport { SidebarCollapseToken } from './sidebar-collapse/sidebar-collapse.component';\nimport { SidebarContentComponent } from './sidebar-content/sidebar-content.component';\n\n@Component({\n  selector: 'ql-sidebar',\n  templateUrl: './sidebar.component.html',\n  styleUrls: ['./sidebar.component.scss'],\n})\nexport class SidebarComponent extends Destroyable implements OnInit, AfterContentInit {\n\n  hasDivider: boolean;\n\n  private _isCollapsed = false;\n\n  @ContentChild(SidebarCollapseToken) sidebarCollapse: SidebarCollapseToken;\n  @ContentChild(SidebarContentComponent) content: SidebarContentComponent;\n\n  constructor() {\n    super();\n  }\n\n  ngOnInit(): void {\n  }\n\n  ngAfterContentInit(): void {\n    if (this.sidebarCollapse) {\n      this.hasDivider = true;\n      this.sidebarCollapse.collapseChange.pipe(takeUntil(this._onDestroy)).subscribe(next => {\n        this.isCollapsed = next;\n      });\n    }\n  }\n\n\n  get isCollapsed(): boolean {\n    return this._isCollapsed;\n  }\n\n  @HostBinding('class.is-collapsed')\n  set isCollapsed(value: boolean) {\n    this._isCollapsed = value;\n    if (this.content) {\n      this.content.isCollapsed = value;\n    }\n  }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { MatIconModule } from '@angular/material/icon';\nimport { SidebarContentComponent } from './sidebar-content/sidebar-content.component';\nimport { SidebarGroupComponent } from './sidebar-content/sidebar-group/sidebar-group.component';\nimport { SidebarItemComponent } from './sidebar-content/sidebar-item/sidebar-item.component';\nimport { SidebarHeaderItemDirective } from './sidebar-header/sidebar-header-item.directive';\nimport { SidebarHeaderComponent } from './sidebar-header/sidebar-header.component';\nimport { SidebarComponent } from './sidebar.component';\nimport { SidebarCollapseComponent } from './sidebar-collapse/sidebar-collapse.component';\n\n\n@NgModule({\n  declarations: [\n      SidebarComponent,\n      SidebarHeaderComponent,\n      SidebarHeaderItemDirective,\n      SidebarContentComponent,\n      SidebarGroupComponent,\n      SidebarItemComponent,\n      SidebarCollapseComponent,\n  ],\n  imports: [\n    CommonModule,\n    MatIconModule,\n  ],\n  exports: [\n      SidebarComponent,\n      SidebarHeaderComponent,\n      SidebarHeaderItemDirective,\n      SidebarContentComponent,\n      SidebarGroupComponent,\n      SidebarItemComponent,\n      SidebarCollapseComponent,\n\n  ]\n})\nexport class GenericSidebarModule { }\n","export class AutocompleteToken {\r\n\r\n}\r\n","import { Component, OnInit } from '@angular/core';\nimport { AutocompleteToken } from './autocomplete';\n\n@Component({\n  selector: 'ql-autocomplete',\n  templateUrl: './autocomplete.component.html',\n  styleUrls: ['./autocomplete.component.scss'],\n  providers: [\n    { provide: AutocompleteToken, useExisting: AutocompleteComponent }\n  ]\n})\nexport class AutocompleteComponent implements OnInit {\n\n  constructor() {\n  }\n\n  ngOnInit(): void {\n  }\n\n}\n","import { Overlay } from '@angular/cdk/overlay';\nimport { Directive, ElementRef, Host, Input, OnDestroy, OnInit, Optional, ViewContainerRef } from '@angular/core';\nimport { Destroyable } from '../common/destroyable';\nimport { InputToken } from '../form-field/input';\nimport { AutocompleteToken } from './autocomplete';\n\n@Directive({\n  selector: '[qlAutocomplete]'\n})\nexport class AutocompleteDirective extends Destroyable implements OnInit, OnDestroy {\n\n  @Input() autoComplete: AutocompleteToken;\n\n  constructor(\n      @Optional() @Host() private _qlInput: InputToken,\n      private elementRef: ElementRef,\n      private overlay: Overlay,\n      private viewContainerRef: ViewContainerRef,\n  ) {\n    super();\n  }\n\n  ngOnInit(): void {\n    if (!this._qlInput) {\n      throw new Error('Autocomplete can only be applied on input fields with the QlInput directive');\n    }\n    if (!this.autoComplete) {\n      throw new Error('You must provide an autocomplete component');\n    }\n\n\n  }\n\n  ngOnDestroy(): void {\n    super.cleanup();\n  }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AutocompleteDirective } from './autocomplete.directive';\nimport { AutocompleteComponent } from './autocomplete.component';\n\n\n\n@NgModule({\n  declarations: [AutocompleteDirective, AutocompleteComponent],\n  imports: [\n    CommonModule\n  ]\n})\nexport class AutocompleteModule { }\n","import { Component, OnInit } from '@angular/core';\n\nexport abstract class ToolbarToken {\n\n}\n\n@Component({\n  selector: 'ql-toolbar',\n  templateUrl: './toolbar.component.html',\n  styleUrls: ['./toolbar.component.scss'],\n  providers: [\n    { provide: ToolbarToken, useExisting: QlToolbarComponent }\n  ]\n})\nexport class QlToolbarComponent extends ToolbarToken implements OnInit {\n\n  constructor() {\n    super();\n  }\n\n  ngOnInit(): void {\n  }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { QlToolbarComponent } from './toolbar/toolbar.component';\n\n\n\n@NgModule({\n  declarations: [\n    QlToolbarComponent\n  ],\n  imports: [\n    CommonModule\n  ],\n  exports: [\n    QlToolbarComponent\n  ]\n})\nexport class GenericToolbarModule { }\n","import { Component, OnInit, Output, ViewChild } from '@angular/core';\nimport { FormControl, FormGroup } from '@angular/forms';\nimport { MatMenu, MatMenuTrigger } from '@angular/material/menu';\nimport { Subject } from 'rxjs';\n\nexport abstract class FilterComponentToken {\n  public abstract filterChange: Subject<string>;\n}\n\n@Component({\n  selector: 'ql-filter',\n  templateUrl: './filter.component.html',\n  styleUrls: ['./filter.component.scss'],\n  providers: [\n    { provide: FilterComponentToken, useExisting: FilterComponent }\n  ]\n})\nexport class FilterComponent extends FilterComponentToken implements OnInit {\n  @Output() public filterChange: Subject<string>;\n\n  @ViewChild(MatMenuTrigger) filterMenu: MatMenuTrigger;\n\n  filterForm: FormGroup;\n\n  constructor() {\n    super();\n\n    this.filterChange = new Subject<string>();\n    this.filterForm = new FormGroup({\n      [this.filter]: new FormControl('')\n    });\n  }\n\n  ngOnInit(): void {\n  }\n\n  resetClicked(): void {\n    this.filterControl.setValue('');\n    if (this.filterMenu) {\n      this.filterMenu.closeMenu();\n    }\n    this.filterChange.next(undefined);\n  }\n\n  filterValueClicked(): void {\n    if (this.filterMenu) {\n      this.filterMenu.closeMenu();\n    }\n    this.filterChange.next(this.filterControl.value);\n  }\n\n  get filter(): string {\n    return 'filter';\n  }\n\n  get filterControl(): FormControl {\n    return this.filterForm.get(this.filter) as FormControl;\n  }\n}\n","import { AfterContentInit, ChangeDetectionStrategy, Component, ElementRef, OnInit, ViewEncapsulation } from '@angular/core';\n\nexport abstract class THeadToken {\n  protected abstract _headerCols: number;\n\n  abstract set headerCols(value: number);\n  abstract get headerCols(): number;\n}\n\n@Component({\n  selector: 'ql-thead',\n  templateUrl: './thead.component.html',\n  styleUrls: ['./thead.component.scss'],\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n  host: {\n    role: 'rowgroup'\n  },\n  providers: [\n    { provide: THeadToken, useExisting: TheadComponent }\n  ]\n})\nexport class TheadComponent extends THeadToken implements OnInit, AfterContentInit {\n\n  protected _headerCols: number;\n\n  constructor(\n      private _element: ElementRef\n  ) {\n    super();\n  }\n\n  ngOnInit(): void {\n\n  }\n\n  ngAfterContentInit(): void {\n    // Get native HTML Element\n    const nativeElement: HTMLElement = this._element.nativeElement;\n\n    // Get the row then the header cells\n    this.headerCols = nativeElement.querySelector('tr').querySelectorAll('th').length;\n  }\n\n\n  get headerCols(): number {\n    return this._headerCols;\n  }\n\n  set headerCols(value: number) {\n    this._headerCols = value;\n  }\n}\n","import {\n  AfterContentInit,\n  AfterViewInit,\n  ChangeDetectionStrategy,\n  ChangeDetectorRef,\n  Component,\n  ContentChild,\n  ElementRef,\n  HostBinding,\n  Input,\n  OnChanges, OnDestroy,\n  OnInit,\n  Renderer2,\n  SimpleChanges,\n  ViewChild\n} from '@angular/core';\nimport { MatIconRegistry } from '@angular/material/icon';\nimport { DomSanitizer } from '@angular/platform-browser';\nimport { takeUntil } from 'rxjs/operators';\nimport { Destroyable } from '../common/destroyable';\nimport { FilterComponentToken } from './filter/filter.component';\nimport { THeadToken } from './thead/thead.component';\n\n@Component({\n  selector: 'ql-table',\n  templateUrl: './ql-table.component.html',\n  styleUrls: ['./ql-table.component.scss'],\n  changeDetection: ChangeDetectionStrategy.OnPush\n\n})\nexport class QlTableComponent<T> extends Destroyable implements OnInit, AfterViewInit, AfterContentInit, OnChanges, OnDestroy {\n\n  @Input()\n  @HostBinding('style.--min-table-height')\n  minHeight?: number;\n\n  @Input()\n  @HostBinding('style.--min-table-width')\n  minWidth?: number;\n\n  @HostBinding('style.--table-width')\n  private _tableWidth: number;\n\n  @HostBinding('style.--table-height')\n  private _tableHeight: number;\n\n  @Input() qlData: T[] | null;\n  @Input() isLoading: boolean;\n  @Input() isEmpty: boolean;\n  @Input() itemsToDisplay: number;\n\n  @ViewChild('overlay')\n  overlayRef!: ElementRef<HTMLDivElement>;\n\n  @ViewChild('emptyOverlay')\n  emptyOverlayRef!: ElementRef<HTMLDivElement>;\n\n  @ContentChild(THeadToken) tHead: THeadToken;\n  @ContentChild(FilterComponentToken) filter: FilterComponentToken;\n\n  private _data: ReadonlyArray<T>;\n\n  @HostBinding('style.--col-count')\n  private _colCount = 0;\n\n  public index: number;\n  public maxIndex: number;\n\n  constructor(\n      private _matIconRegistry: MatIconRegistry,\n      private _domSanitizer: DomSanitizer,\n      private _self: ElementRef<HTMLElement>,\n      private _renderer: Renderer2,\n      private _changeRef: ChangeDetectorRef\n  ) {\n    super();\n    this.index = 0;\n    this.qlData = [];\n    this.isEmpty = true;\n    this.itemsToDisplay = 5;\n    this._matIconRegistry.addSvgIcon(\n        'hourglass',\n        this._domSanitizer.bypassSecurityTrustResourceUrl('assets/hourglass.svg')\n    );\n    this._matIconRegistry.addSvgIcon(\n        'emptyTable',\n        this._domSanitizer.bypassSecurityTrustResourceUrl('assets/empty-table.svg')\n    );\n    this._matIconRegistry.addSvgIcon(\n        'pg-arrow-right',\n        this._domSanitizer.bypassSecurityTrustResourceUrl('assets/pagination-arrow-right.svg')\n    );\n    this._matIconRegistry.addSvgIcon(\n        'pg-arrow-left',\n        this._domSanitizer.bypassSecurityTrustResourceUrl('assets/pagination-arrow-left.svg')\n    );\n  }\n\n  ngOnInit(): void {\n    this._data = [...this.qlData?.slice(0, this.itemsToDisplay) ?? []] as const;\n\n    this.isEmpty = this._data.length === 0 && !this.isLoading;\n    this.maxIndex = Math.floor(this.qlData?.length / this.itemsToDisplay);\n\n    const element: HTMLElement = this._self.nativeElement;\n    this._tableWidth = Math.floor(element.getBoundingClientRect().width);\n    this._tableHeight = Math.floor(element.getBoundingClientRect().height);\n  }\n\n  ngAfterViewInit(): void {\n  }\n\n  ngAfterContentInit(): void {\n    this._colCount = this.tHead.headerCols;\n\n    if (this.filter) {\n      this.filter.filterChange.pipe(takeUntil(this._onDestroy)).subscribe((filterValue: string) => {\n        if (filterValue) {\n          this.data = this.qlData.filter(v => {\n            return Object.values(v).some(value => {\n              try {\n                return value.toString().toLowerCase().includes(filterValue.toLowerCase());\n              } catch (e) {\n                return false;\n              }\n            });\n          });\n        } else {\n          this.data = this.qlData;\n        }\n      });\n    }\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    const { qlData, isLoading } = changes;\n\n    if (qlData?.currentValue as []) {\n      this.data = qlData.currentValue ?? [];\n      this.maxIndex = Math.floor(this.qlData?.length / this.itemsToDisplay);\n    }\n\n    this.isEmpty = this._data?.length === 0 && !this.isLoading;\n  }\n\n  ngOnDestroy(): void {\n    this.cleanup();\n  }\n\n  changeIndexBy(change: number): void {\n    this.index += change;\n    this._data = [...this.qlData?.slice(this.index * this.itemsToDisplay, this.itemsToDisplay * (this.index + 1))];\n  }\n\n  get data(): ReadonlyArray<T> {\n    return this._data;\n  }\n\n  set data(value: ReadonlyArray<T>) {\n    this._data = [...value.slice(this.index * this.itemsToDisplay, this.itemsToDisplay * (this.index + 1))];\n  }\n}\n","import { ChangeDetectionStrategy, Component, OnInit, ViewEncapsulation } from '@angular/core';\n\n@Component({\n  selector: 'ql-tbody',\n  templateUrl: './tbody.component.html',\n  styleUrls: ['./tbody.component.scss'],\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  encapsulation: ViewEncapsulation.None,\n})\nexport class TbodyComponent implements OnInit {\n\n  constructor() { }\n\n  ngOnInit(): void {\n  }\n\n}\n","import { Subject } from 'rxjs';\r\n\r\nexport abstract class PaginationToken {\r\n\r\n  public abstract backButtonClickChange: Subject<void>;\r\n  public abstract nextButtonClickChange: Subject<void>;\r\n\r\n  protected _position: 'start' | 'end';\r\n  protected _isLeftButtonEnabled: boolean;\r\n  protected _isRightButtonEnabled: boolean;\r\n\r\n  protected constructor() {\r\n  }\r\n\r\n  backButtonClicked = () => {\r\n    this.backButtonClickChange.next();\r\n  }\r\n\r\n  nextButtonClicked = (): void => {\r\n    this.nextButtonClickChange.next();\r\n  }\r\n\r\n  abstract get position(): 'start' | 'end';\r\n  abstract set position(value: 'start' | 'end');\r\n\r\n  abstract get isLeftButtonEnabled(): boolean;\r\n  abstract set isLeftButtonEnabled(value: boolean);\r\n\r\n  abstract get isRightButtonEnabled(): boolean;\r\n  abstract set isRightButtonEnabled(value: boolean);\r\n}\r\n","import { Component, HostBinding, Input, OnInit, Output } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { PaginationToken } from './pagination.token';\n\n@Component({\n  selector: 'ql-pagination',\n  templateUrl: './pagination.component.html',\n  styleUrls: ['./pagination.component.css'],\n  providers: [\n    { provide: PaginationToken, useExisting: PaginationComponent }\n  ]\n})\nexport class PaginationComponent extends PaginationToken implements OnInit {\n\n  @Output()\n  public backButtonClickChange: Subject<void>;\n\n  @Output()\n  public nextButtonClickChange: Subject<void>;\n\n  constructor() {\n    super();\n    this.backButtonClickChange = new Subject<void>();\n    this.nextButtonClickChange = new Subject<void>();\n  }\n\n  ngOnInit(): void {\n  }\n\n\n  get position(): 'start' | 'end' {\n    return this._position;\n  }\n\n  @Input()\n  @HostBinding('style.--pagination-position')\n  set position(value: 'start' | 'end') {\n    this._position = value;\n  }\n\n\n  get isLeftButtonEnabled(): boolean {\n    return this._isLeftButtonEnabled;\n  }\n\n  @Input()\n  set isLeftButtonEnabled(value: boolean) {\n    this._isLeftButtonEnabled = value;\n  }\n\n  get isRightButtonEnabled(): boolean {\n    return this._isRightButtonEnabled;\n  }\n\n  @Input()\n  set isRightButtonEnabled(value: boolean) {\n    this._isRightButtonEnabled = value;\n  }\n\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatMenuModule } from '@angular/material/menu';\nimport { ButtonModule } from '../button/button.module';\nimport { FormFieldModule } from '../form-field/form-field.module';\nimport { QlTableComponent } from './ql-table.component';\nimport { TbodyComponent } from './tbody/tbody.component';\nimport { TheadComponent } from './thead/thead.component';\nimport { PaginationComponent } from './pagination/pagination.component';\nimport { FilterComponent } from './filter/filter.component';\n\n\n\n@NgModule({\n  declarations: [\n      QlTableComponent,\n      TbodyComponent,\n      TheadComponent,\n      PaginationComponent,\n      FilterComponent\n  ],\n  imports: [\n    CommonModule,\n    MatIconModule,\n    ButtonModule,\n    MatMenuModule,\n    FormFieldModule,\n    ReactiveFormsModule\n  ],\n  exports: [\n    QlTableComponent,\n    TbodyComponent,\n    TheadComponent,\n    FilterComponent\n  ]\n})\nexport class QlTableModule { }\n","import { animate, style, transition, trigger } from '@angular/animations';\nimport { AfterContentInit, Component, ContentChildren, HostBinding, Input, OnInit, Output, QueryList } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { ButtonComponent } from '../button/button.component';\n\n@Component({\n  selector: 'ql-fab',\n  templateUrl: './fab.component.html',\n  styleUrls: ['./fab.component.scss'],\n  animations: [\n    trigger('expandHide', [\n      transition(':enter', [\n        style({\n          opacity: 0,\n          height: '0%'\n        }),\n        animate('100ms', style({ opacity: 1, height: '100%' }))\n      ]),\n      transition(':leave', [\n        animate('100ms', style({ opacity: 0, height: 0 }))\n      ])\n    ])\n  ]\n})\nexport class FabComponent implements OnInit, AfterContentInit {\n\n  @ContentChildren(ButtonComponent)\n  expandedItems: QueryList<ButtonComponent>;\n\n  @Input()\n  @HostBinding('class.disabled')\n  disabled: boolean;\n\n  @Output()\n  isExpandedChanged: Subject<boolean>;\n\n  isExpanded: boolean;\n\n  @HostBinding('style.--list-items')\n  private _totalListItems: number;\n\n  constructor() {\n    this.isExpanded = false;\n    this.isExpandedChanged = new Subject<boolean>();\n  }\n\n  ngOnInit(): void {\n  }\n\n  ngAfterContentInit(): void {\n    const length: number = this.expandedItems.length;\n \n    length > 2 ? this._totalListItems = length + 1 : this._totalListItems = length + 0.5;\n  }\n\n  expand(): void {\n    this.isExpanded = !this.isExpanded;\n    this.isExpandedChanged.next(this.isExpanded);\n  }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatRippleModule } from '@angular/material/core';\nimport { FabComponent } from './fab.component';\n\n\n@NgModule({\n  declarations: [\n    FabComponent\n  ],\n  imports: [\n    CommonModule,\n    MatRippleModule\n  ],\n  exports: [\n    FabComponent\n  ]\n})\nexport class FabModule {\n}\n","import { Component, OnInit } from '@angular/core';\nimport { QlBaseStyle } from '../common/ql-base-style';\n\nexport abstract class ChipToken {\n\n}\n\n@Component({\n  selector: 'ql-chip',\n  templateUrl: './chip.component.html',\n  styleUrls: ['./chip.component.scss'],\n  providers: [\n    { provide: ChipToken, useExisting: ChipComponent }\n  ]\n})\nexport class ChipComponent extends QlBaseStyle implements OnInit {\n\n  constructor() {\n    super();\n  }\n\n  ngOnInit(): void {\n  }\n\n}\n\n\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { ChipComponent } from './chip.component';\n\n\n@NgModule({\n  declarations: [\n      ChipComponent\n  ],\n  imports: [\n    CommonModule\n  ],\n  exports: [\n      ChipComponent\n  ]\n})\nexport class ChipModule { }\n","import { ChangeDetectorRef, Component, HostBinding, Input, OnChanges, SimpleChanges } from '@angular/core';\nimport { MatIconRegistry } from '@angular/material/icon';\nimport { DomSanitizer } from '@angular/platform-browser';\n\nexport abstract class LoaderComponentToken {\n  protected _isLoading: boolean | null = false;\n\n  public abstract get isLoading(): boolean | null;\n  public abstract set isLoading(value: boolean | null);\n}\n\n@Component({\n  selector: 'ql-loader',\n  templateUrl: './loader.component.html',\n  styleUrls: ['./loader.component.scss']\n})\nexport class LoaderComponent extends LoaderComponentToken implements OnChanges {\n\n  @HostBinding('style.--table-width')\n  private _itemWidth: number;\n\n  @HostBinding('style.--table-height')\n  private _itemHeight: number;\n\n  constructor(\n      private _matIconRegistry: MatIconRegistry,\n      private _domSanitizer: DomSanitizer,\n  ) {\n    super();\n    this._matIconRegistry.addSvgIcon(\n        'hourglass',\n        this._domSanitizer.bypassSecurityTrustResourceUrl('assets/hourglass.svg')\n    );\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    const {  isLoading } = changes;\n  }\n\n  get isLoading(): boolean | null {\n    return this._isLoading;\n  }\n\n  @Input()\n  set isLoading(value: boolean | null) {\n    this._isLoading = value;\n  }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatIconModule } from '@angular/material/icon';\nimport { LoaderComponent } from './loader.component';\n\n\n\n@NgModule({\n  declarations: [LoaderComponent],\n  imports: [\n    CommonModule,\n    MatIconModule,\n  ],\n  exports: [\n    LoaderComponent\n  ]\n})\nexport class LoaderModule { }\n"]}