{"version":3,"sources":["./node_modules/@ng-bootstrap/ng-bootstrap/__ivy_ngcc__/fesm2015/ng-bootstrap.js","./src/app/payment-sec/payment-sec.module.ts","./src/app/why-asmio-sec/why-asmio-sec.module.ts","./src/app/why-asmio-sec/why-asmio-sec.component.ts","./src/app/why-asmio-sec/why-asmio-sec.component.html","./src/app/discount-sec/discount-sec.module.ts","./src/app/localization-sec/localization-sec.component.ts","./src/app/localization-sec/localization-sec.component.html","./src/app/saas-section/saas-section-routing.module.ts","./src/app/our-clients/our-clients.module.ts","./src/app/dashboard-sec/dashboard-sec-routing.module.ts","./src/app/our-clients/our-clients-routing.module.ts","./src/app/sec-section/sec-section.component.ts","./src/app/sec-section/sec-section.component.html","./src/app/advanced-sec/advanced-sec.component.ts","./src/app/advanced-sec/advanced-sec.component.html","./src/app/sec-section/sec-section.module.ts","./src/app/localization-sec/localization-sec-routing.module.ts","./src/app/third-section/third-section.component.ts","./src/app/third-section/third-section.component.html","./src/app/payment-sec/payment-sec-routing.module.ts","./src/app/third-section/third-section-routing.module.ts","./src/app/fast-launch-sec/fast-launch-sec.component.ts","./src/app/fast-launch-sec/fast-launch-sec.component.html","./src/app/discount-sec/discount-sec-routing.module.ts","./src/app/fashon/fashon.module.ts","./src/app/landing-page/landing-page.module.ts","./src/app/localization-sec/localization-sec.module.ts","./src/app/multi-vendor/multi-vendor.component.ts","./src/app/multi-vendor/multi-vendor.component.html","./src/app/saas-section/saas-section.component.html","./src/app/saas-section/saas-section.component.ts","./src/app/dashboard-sec/dashboard-sec.module.ts","./src/app/saas-section/saas-section.module.ts","./node_modules/angular-bootstrap-md/__ivy_ngcc__/fesm2015/angular-bootstrap-md.js","./src/app/multi-vendor/multi-vendor.module.ts","./src/app/sec-section/sec-section-routing.module.ts","./src/app/fast-launch-sec/fast-launch-sec.module.ts","./src/app/third-section/third-section.module.ts","./src/app/fashon/fashon.component.ts","./src/app/fashon/fashon.component.html","./src/app/fashon/fashon-routing.module.ts","./src/app/why-asmio-sec/why-asmio-sec-routing.module.ts","./src/app/landing-page/landing-page-routing.module.ts","./src/app/landing-page/landing-page.component.ts","./src/app/landing-page/landing-page.component.html","./node_modules/tslib/tslib.es6.js","./src/app/dashboard-sec/dashboard-sec.component.ts","./src/app/dashboard-sec/dashboard-sec.component.html","./src/app/advanced-sec/advanced-sec-routing.module.ts","./src/app/our-clients/our-clients.component.ts","./src/app/our-clients/our-clients.component.html","./src/app/advanced-sec/advanced-sec.module.ts","./src/app/discount-sec/discount-sec.component.ts","./src/app/discount-sec/discount-sec.component.html","./src/app/multi-vendor/multi-vendor-routing.module.ts","./src/app/fast-launch-sec/fast-launch-sec-routing.module.ts","./src/app/payment-sec/payment-sec.component.ts","./src/app/payment-sec/payment-sec.component.html"],"names":[],"mappings":"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;AACrB,CAAC;AACD,6DAA6D;AAC7D,IAAI,uDAAgB;AACpB,CAAC;AACD;AACA;AACA;AACA,IAAI,wDAAiB;AACrB,CAAC;AACD,2EAA2E;AAC3E,oCAAoC,SAAS,uCAAuC;AACpF,6DAA6D;AAC7D,iBAAiB,8DAAuB;AACxC,IAAI,4DAAqB;AACzB,IAAI,wDAAiB,kGAAkG,CAAC,2DAAoB,OAAO,0BAA0B,gBAAgB,2DAAoB,GAAG,kCAAkC,EAAE,yFAAyF,CAAC,2DAAoB,OAAO,iCAAiC,iBAAiB,2DAAoB,GAAG,kCAAkC,EAAE;AAC1d,IAAI,wDAAiB;AACrB,IAAI,0DAAmB;AACvB,CAAC;AACD;AACA;AACA,mBAAmB,2DAAoB;AACvC,gBAAgB,yDAAkB;AAClC,IAAI,yDAAkB;AACtB,IAAI,wDAAiB;AACrB,IAAI,uDAAgB;AACpB,IAAI,wDAAiB,8EAA8E,6DAAsB;AACzH,CAAC;AACD;AACA,uBAAuB,MAAM;AAC7B;AACA;AACA,wDAAwD,MAAM;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,MAAM;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,+CAAU;AAC7B;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD,+BAA+B;AAC/E,kBAAkB,gEAAqB,EAAE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AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,0DAAY;AAC3C;AACA;AACA;AACA;AACA;AACA,yBAAyB,0DAAY;AACrC;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,0DAAY;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,6CAA6C;AACtE;AACA;AACA;AACA;AACA;AACA,qBAAqB,2DAA2D;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,4DAA4D;AACnF;AACA;AACA;AACA;AACA,wCAAwC,qCAAqC,EAAE;AAC/E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,yEAAyE,EAAE;AACjH;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,2DAAI;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC;AACtC,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA,mCAAmC,iEAAiE,yBAAyB,EAAE,EAAE;AACjI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,6BAA6B,wDAAwD;AACrF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B;AAC9B,iBAAiB;AACjB;AACA,2BAA2B,KAAK;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,sDAAsD,gCAAgC,+DAAwB,sBAAsB,+DAAwB,CAAC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AACA;AACA;AACA;AACA;AACA;AACA;AACA,sDAAsD,YAAY;AAClE,WAAW,YAAY;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uDAAuD,YAAY;AACnE,WAAW,YAAY;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,WAAW;AAC1C;AACA;AACA;AACA;AACA;AACA,wBAAwB,0DAAY;AACpC;AACA;AACA,8CAA8C,4BAA4B,+DAAwB,CAAC,yDAAkB,GAAG;AACxH,gBAAgB,+DAAwB,EAAE,wEAAwE,WAAW,YAAY,eAAe,EAAE;AAC1J;AACA,KAAK,OAAO,yDAAW;AACvB;AACA;AACA,UAAU,OAAO,mDAAK,EAAE;AACxB,YAAY,OAAO,oDAAM,EAAE;AAC3B;AACA,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,uDAAS;AACvB,gBAAgB,oCAAoC;AACpD,KAAK,gBAAgB,UAAU,OAAO,yDAAkB,EAAE,EAAE,EAAE,GAAG;AACjE,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,oDAAM;AACxB,SAAS,GAAG,EAAE,EAAE;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,4CAAO;AACpC,8BAA8B,oDAAe;AAC7C,gCAAgC,oDAAe;AAC/C,6BAA6B,oDAAe;AAC5C,kCAAkC,oDAAe;AACjD,kCAAkC,oDAAe;AACjD,2BAA2B,oDAAe;AAC1C,0BAA0B,oDAAe;AACzC;AACA;AACA;AACA;AACA;AACA,yBAAyB,0DAAY;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,0DAAY;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,8BAA8B;AAClD;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,0BAA0B;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,kCAAkC;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,kCAAkC;AAC1D,2BAA2B,+BAA+B;AAC1D,sBAAsB,gCAAgC;AACtD,wBAAwB,4BAA4B;AACpD,mBAAmB,6BAA6B;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,yEAAiB;AAC7B;AACA,sCAAsC,0DAAa;AACnD,oCAAoC,0DAAG,oCAAoC,gEAAS;AACpF,0DAA0D,gEAAS;AACnE;AACA,0BAA0B,0DAAG;AAC7B;AACA;AACA;AACA,iBAAiB,GAAG,2EAAoB;AACxC,gBAAgB,0DAAa;AAC7B;AACA;AACA;AACA,0BAA0B,0DAAG;AAC7B;AACA,gCAAgC,2EAAoB,IAAI,gEAAS,4BAA4B,kDAAK,uBAAuB,0CAAK,GAAG,gEAAS;AAC1I;AACA,aAAa;AACb;AACA,iCAAiC,gEAAS;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,2DAAI;AAC3C,4BAA4B,KAAK;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,uBAAuB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,yBAAyB;AACtC;AACA;AACA;AACA,aAAa,0BAA0B;AACvC;AACA;AACA;AACA,aAAa,uCAAuC;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,2GAA2G;AACxI;AACA;AACA;AACA,0BAA0B,YAAY;AACtC;AACA;AACA;AACA;AACA;AACA,uDAAu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AE;;AAEtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,6BAA6B;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,iCAAiC;AACrF,oBAAoB,gEAAqB,EAAE,mFAAmF;AAC9H,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,wDAAU;AACxB,gBAAgB,kEAAkE;AAClF,KAAK,eAAe,EAAE;AACtB;AACA,sBAAsB,UAAU;AAChC,iBAAiB,gDAAgD;AACjE,wBAAwB,UAAU;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,4CAA4C;AACzF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sEAAsE;AACtE;AACA,2BAA2B;AAC3B;AACA;AACA;AACA,gBAAgB,+BAA+B;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sEAAsE,qEAAqE;AAC3I,6BAA6B,gEAAyB,EAAE,kEAAkE;AAC1H,wDAAwD,mEAA4B;AACpF,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,wDAAU;AACxB,KAAK,eAAe,EAAE;;AAEtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,QAAQ,oCAAoC,QAAQ;AACzF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,2CAA2C;AACtD;AACA;AACA;AACA;AACA,6CAA6C,qCAAqC;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,YAAY;AAC/B;AACA;AACA;AACA;AACA;AACA,iEAAiE,SAAS;AAC1E;AACA;AACA;AACA,iEAAiE,SAAS;AAC1E;AACA;AACA;AACA;AACA,WAAW,wBAAwB;AACnC;AACA;AACA;AACA,mCAAmC,wBAAwB;AAC3D,yEAAyE,SAAS;AAClF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA,gGAAgG;AAChG;AACA,KAAK;AACL;AACA;AACA,2DAA2D;AAC3D,WAAW,8GAA8G;AACzH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,oCAAoC;AAC1D;AACA;AACA,8CAA8C;AAC9C;AACA;AACA;AACA,yBAAyB,iCAAiC;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD,wCAAwC;AAC1F;AACA;AACA;AACA;AACA,8EAA8E,wCAAwC;AACtH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qEAAqE;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,6CAA6C,GAAG,gCAAgC;AAClG;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,WAAW,SAAS,EAAE;AAChD;AACA;AACA;AACA;AACA;AACA,iCAAiC,WAAW,WAAW,EAAE;AACzD;AACA;AACA;AACA;AACA;AACA,2BAA2B,WAAW,KAAK,EAAE;AAC7C;AACA;AACA;AACA;AACA;AACA,oBAAoB,WAAW;AAC/B;AACA,gEAAgE,uCAAuC;AACvG,0BAA0B,gEAAqB,EAAE,gDAAgD,mCAAmC,sDAAW,CAAC,uDAAY,GAAG,EAAE,gDAAgD;AACjN,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,wDAAU;AACxB,gBAAgB,oEAAoE,uDAAS,GAAG;AAChG,KAAK,eAAe,EAAE;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,2EAAmB,UAAU,yDAAS,aAAa,gEAAgB;AAC/F,2BAA2B,2EAAmB,UAAU,yDAAS,aAAa,gEAAgB;AAC9F;AACA;AACA,yCAAyC,yEAAiB,eAAe,yDAAS,mCAAmC,gEAAgB;AACrI;AACA;AACA;AACA,8BAA8B,2CAA2C;AACzE,6BAA6B,0CAA0C;AACvE;AACA;AACA,eAAe,kEAAU;AACzB;AACA;AACA,8EAA8E,4CAA4C,sDAAe,CAAC,uDAAS,GAAG;AACtJ,iCAAiC,gEAAyB,EAAE,0EAA0E;AACtI;AACA,KAAK,6BAA6B,OAAO,oDAAM,SAAS,uDAAS,IAAI;AACrE;AACA,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,wDAAU;AACxB,KAAK,gBAAgB,UAAU;AAC/B,sBAAsB,oDAAM;AAC5B,uBAAuB,uDAAS;AAChC,aAAa,GAAG,EAAE,EAAE,QAAQ,EAAE;;AAE9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B;AAC5B;AACA,aAAa;AACb;AACA;AACA;AACA,4BAA4B;AAC5B;AACA,aAAa;AACb;AACA;AACA,4BAA4B;AAC5B;AACA,aAAa;AACb;AACA;AACA;AACA,4BAA4B;AAC5B;AACA,aAAa;AACb;AACA;AACA,4BAA4B;AAC5B;AACA,aAAa;AACb;AACA;AACA,4BAA4B;AAC5B;AACA,aAAa;AACb;AACA;AACA;AACA,4BAA4B;AAC5B;AACA,aAAa;AACb;AACA;AACA;AACA,4BAA4B;AAC5B;AACA,aAAa;AACb;AACA;AACA,4BAA4B;AAC5B;AACA,aAAa;AACb;AACA;AACA,4BAA4B;AAC5B;AACA,aAAa;AACb;AACA,+EAA+E,gEAAgB;AAC/F;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA,2BAA2B,4CAAO;AAClC,gCAAgC,4CAAO;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,wBAAwB;AAClD,0BAA0B,gEAAgB;AAC1C;AACA;AACA;AACA,kBAAkB,0BAA0B,6DAAM,oCAAoC;AACtF,uBAAuB,+BAA+B,6DAAM,yBAAyB;AACrF;AACA;AACA;AACA,kEAAkE,kBAAkB;AACpF;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,kBAAkB;AAC/C;AACA;AACA;AACA;AACA,gDAAgD,kBAAkB;AAClE;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,YAAY;AACzC;AACA;AACA,6BAA6B;AAC7B;AACA;AACA;AACA,iCAAiC,eAAe;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,aAAa,WAAW,YAAY;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,sFAAsF;AACrG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,sCAAsC;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sEAAsE,wCAAwC,sDAAe,eAAe,sDAAe,qBAAqB;AAChL,6BAA6B,gEAAyB,EAAE,kEAAkE;AAC1H;AACA,KAAK,oBAAoB;AACzB,KAAK;AACL;AACA,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,wDAAU;AACxB,KAAK,gBAAgB,UAAU,oBAAoB,GAAG,0BAA0B,EAAE,EAAE,QAAQ,EAAE;;AAE9F;AACA;AACA;AACA;AACA;AACA,CAAC,0CAA0C;;AAE3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,gEAAgB;AACxC;AACA;AACA,oEAAoE,yCAAyC;AAC7G,4BAA4B,gEAAqB,EAAE,kDAAkD,kCAAkC,EAAE,kDAAkD;AAC3L,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,wDAAU;AACxB,gBAAgB,qBAAqB;AACrC,KAAK,gBAAgB,WAAW,EAAE,QAAQ,EAAE;;AAE5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D,oCAAoC;AAC9F,uBAAuB,gEAAqB,EAAE,0FAA0F;AACxI,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,wDAAU;AACxB,gBAAgB,sEAAsE;AACtF,KAAK,eAAe,EAAE;AACtB;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,oDAAoD;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,oDAAoD;AACjE;AACA;AACA;AACA,sEAAsE,qEAAqE;AAC3I,6BAA6B,gEAAyB,EAAE,kEAAkE;AAC1H,wDAAwD,mEAA4B;AACpF,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,wDAAU;AACxB,KAAK,eAAe,EAAE;;AAEtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sEAAsE,wCAAwC,+DAAwB,CAAC,yDAAkB,GAAG;AAC5J,4BAA4B,+DAAwB,EAAE,uFAAuF;AAC7I;AACA,KAAK,OAAO,yDAAW;AACvB;AACA,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,uDAAS;AACvB,gBAAgB,gDAAgD;AAChE,KAAK,gBAAgB,UAAU,OAAO,yDAAkB,EAAE,EAAE,EAAE,QAAQ,EAAE;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,4CAAO;AACtC;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,0DAAY;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,0DAAY;AAC1C,gCAAgC;AAChC,gCAAgC;AAChC;AACA;AACA;AACA,kCAAkC,gEAAS,uCAAuC,4BAA4B,EAAE;AAChH,6BAA6B,gEAAS;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,2CAA2C;AACnF,2BAA2B,2CAA2C;AACtE;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,0BAA0B;AAC3C;AACA;AACA;AACA;AACA;AACA,oBAAoB,uBAAuB;AAC3C;AACA;AACA;AACA,qBAAqB,yCAAyC;AAC9D;AACA;AACA;AACA,mBAAmB,6BAA6B;AAChD;AACA,kDA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AS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS,GAAG,EAAE,EAAE;;AAEhB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,kBAAkB;;AAEnB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,kBAAkB;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sFAAsF,kDAAkD;AACxI,qCAAqC,gEAAqB,EAAE,2DAA2D,2CAA2C,EAAE,2DAA2D;AAC/N,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,wDAAU;AACxB,gBAAgB,qBAAqB;AACrC,KAAK,eAAe,EAAE;;AAEtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,0DAA0D;AAChF;AACA;AACA;AACA;AACA;AACA;AACA,kEAAkE,sCAAsC,+DAAwB,qBAAqB,+DAAwB,iBAAiB,+DAAwB,gCAAgC,+DAAwB,wBAAwB;AACtS,0BAA0B,+DAAwB,EAAE,gKAAgK;AACpN,QAAQ,wDAAiB,4EAA4E,8BAA8B,EAAE;AACrI,KAAK,EAAE,WAAW,iBAAiB,k7BAAk7B;AAC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AG;AACpD;AACA;AACA,gCAAgC,sDAAS,6BAA6B,0DAAG,sBAAsB,gEAAS;AACxG,qCAAqC,sDAAS;AAC9C,sBAAsB,qEAAc,eAAe,6DAAM,qCAAqC,4DAAK,KAAK,gEAAS;AACjH,YAAY,iDAAI;AAChB,8BAA8B,0DAAG,8CAA8C,0DAAG;AAClF;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,sDAAS,0BAA0B,gEAAS,kBAAkB,0DAAG;AACrG;AACA,QAAQ,sDAAS;AACjB,kBAAkB,gEAAS;AAC3B;AACA,QAAQ,6DAAM;AACd;AACA,QAAQ,qEAAc;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,YAAY,sDAAS;AACrB,sBAAsB,gEAAS,kBAAkB,qEAAc,uBAAuB,0DAAG;AACzF;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA,2BAA2B,yCAAyC;AACpE,6BAA6B,yCAAyC;AACtE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D,yBAAyB,MAAM,wBAAwB;AACjH,qDAAqD,yBAAyB,MAAM,wBAAwB;AAC5G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,UAAU,GAAG,QAAQ;AACjD;AACA,gCAAgC,UAAU,GAAG,QAAQ,GAAG,UAAU;AAClE;AACA,4CAA4C,0BAA0B,EAAE;AACxE;AACA;AACA;AACA;AACA;AACA,0DAA0D,qBAAqB,UAAU,GAAG,kBAAkB,GAAG,EAAE;AACnH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iDAAiD,6BAA6B,EAAE;AAChF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0EAA0E,4CAA4C;AACtH,+BAA+B,gEAAqB,EAAE,sGAAsG;AAC5J,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,wDAAU;AACxB,gBAAgB,0EAA0E;AAC1F,KAAK,eAAe,EAAE;AACtB;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA,wBAAwB;AACxB;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,UAAU,GAAG,kDAAkD,GAAG,8CAA8C;AAC/H;AACA;AACA;AACA,gFAAgF,+EAA+E;AAC/J,kCAAkC,gEAAyB,EAAE,4EAA4E;AACzI,6DAA6D,mEAA4B;AACzF,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,wDAAU;AACxB,KAAK,eAAe,EAAE;;AAEtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8EAA8E,6EAA6E;AAC3J,iCAAiC,gEAAqB,EAAE,uDAAuD,uCAAuC,EAAE,uDAAuD;AAC/M,4DAA4D,mEAA4B;AACxF,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,wDAAU;AACxB,gBAAgB,qBAAqB;AACrC,KAAK,eAAe,EAAE;;AAEtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,0DAAY;AAC1C;AACA;AACA;AACA;AACA;AACA,4BAA4B,0DAAY;AACxC;AACA;AACA;AACA;AACA;AACA,0BAA0B,0DAAY;AACtC,iCAAiC;AACjC,iCAAiC;AACjC,uCAAuC;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,qBAAqB;AAC/C,2BAA2B,sBAAsB;AACjD,mCAAmC,4BAA4B;AAC/D,kCAAkC,4BAA4B;AAC9D;AACA,eAAe,QAAQ;AACvB;AACA;AACA;AACA,wBAAwB,aAAa,iBAAiB;AACtD;AACA;AACA,wBAAwB,aAAa,WAAW,uCAAuC,EAAE;AACzF;AACA;AACA,wBAAwB,aAAa,WAAW,uCAAuC,EAAE;AACzF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,qBAAqB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,mBAAmB;AACjC,eAAe,+CAA+C;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,8BAA8B;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kEAAkE,sCAAsC,+DAAwB,0BAA0B,+DAAwB,CAAC,wDAAiB,GAAG,+DAAwB,CAAC,8DAAuB,GAAG,+DAAwB,CAAC,uDAAgB,GAAG,+DAAwB,CAAC,sEAA+B,GAAG,+DAAwB,CAAC,oDAAa,GAAG,+DAAwB,eAAe,+DAAwB,kBAAkB,+DAAwB,CAAC,wDAAQ,GAAG,+DAAwB,CAAC,+DAAwB,GAAG,+DAAwB,4BAA4B;AACvmB,0BAA0B,+DAAwB,EAAE,sJAAsJ;AAC1M,QAAQ,wDAAiB,wEAAwE,kDAAkD,EAAE,2EAA2E,wDAAwD,EAAE,mEAAmE,sBAAsB,EAAE,iEAAiE,qBAAqB,EAAE;AAC7c,KAAK;AACL,QAAQ,4DAAqB;AAC7B,KAAK,EAAE,WAAW,qjBAAqjB,YAAY,mEAAmE,0CAA0C,gEAAyB;AACztB,aA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B,GAAG,OAAO,uDAAgB,EAAE,EAAE,EAAE,GAAG;AAC5F,kBAAkB,oDAAM;AACxB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,uDAAS;AAC3B,6BAA6B,qBAAqB,wDAAU,EAAE;AAC9D,SAAS;AACT,kBAAkB,uDAAS;AAC3B,4BAA4B,qBAAqB,wDAAU,EAAE;AAC7D,SAAS,GAAG,EAAE,EAAE;;AAEhB;AACA,sBAAsB,UAAU;AAChC,iBAAiB,gDAAgD;AACjE,wBAAwB,UAAU;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,4CAA4C;AACzF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sEAAsE;AACtE;AACA,uEAAuE;AACvE;AACA;AACA,gBAAgB,uCAAuC;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8DAA8D,6DAA6D;AAC3H,yBAAyB,gEAAyB,EAAE,0DAA0D;AAC9G,oDAAoD,mEAA4B;AAChF,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,wDAAU;AACxB,KAAK,eAAe,EAAE;;AAEtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E,2EAA2E;AACvJ,gCAAgC,gEAAyB,EAAE,wEAAwE;AACnI,2DAA2D,mEAA4B;AACvF,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,wDAAU;AACxB,KAAK,eAAe,EAAE;;AAEtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,yBAAyB;AACpD,+BAA+B,QAAQ;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,yBAAyB;AACpD,+BAA+B,QAAQ;AACvC;AACA;AACA;AACA,2BAA2B,YAAY;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kFAAkF,iFAAiF;AACnK,mCAAmC,gEAAyB,EAAE,8EAA8E;AAC5I,8DAA8D,mEAA4B;AAC1F,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,wDAAU;AACxB,KAAK,eAAe,EAAE;;AAEtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,kBAAkB;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,sBAAsB,UAAU;AAChC,iBAAiB,gDAAgD;AACjE,wBAAwB,UAAU;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,4CAA4C;AACzF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sEAAsE;AACtE;AACA;AACA;AACA;AACA,gBAAgB,oCAAoC;AACpD;AACA;AACA;AACA;AACA;AACA,kEAAkE,iEAAiE;AACnI,2BAA2B,gEAAyB,EAAE,8DAA8D;AACpH,sDAAsD,mEAA4B;AAClF,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,wDAAU;AACxB,KAAK,eAAe,EAAE;;AAEtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA,mBAAmB,gBAAgB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,YAAY;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,sBAAsB,UAAU;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,UAAU;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,4CAA4C;AACzF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,oCAAoC;AACpD;AACA;AACA;AACA,uBAAuB,wCAAwC;AAC/D;AACA;AACA;AACA,yBAAyB,wCAAwC;AACjE;AACA,gEAAgE,+DAA+D;AAC/H,0BAA0B,gEAAyB,EAAE,4DAA4D;AACjH,qDAAqD,mEAA4B;AACjF,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,wDAAU;AACxB,KAAK,eAAe,EAAE;;AAEtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,2CAA2C;AAC/E;AACA;AACA;AACA,qCAAqC,oCAAoC;AACzE;AACA,kBAAkB,yBAAyB,GAAG,6CAA6C,GAAG,0BAA0B;AACxH;AACA,0BAA0B,iCAAiC;AAC3D,iCAAiC,mCAAmC;AACpE,2BAA2B,6BAA6B;AACxD;AACA,4EAA4E,2EAA2E;AACvJ,gCAAgC,gEAAyB,EAAE,wEAAwE;AACnI,2DAA2D,mEAA4B;AACvF,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,wDAAU;AACxB,KAAK,eAAe,EAAE;;AAEtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,gBAAgB,kCAAkC;AAClD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,4CAA4C;AACzF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sEAAsE;AACtE;AACA,2BAA2B;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A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,KAAK;AACL,QAAQ,yDAAkB;AAC1B,KAAK,EAAE,aAAa,gEAAyB,GAAG,0CAA0C,gEAAU,2BAA2B,IAAI,wEAAiC,GAAG;AACvK;AACA,KAAK,gCAAgC,OAAO,oDAAM,SAAS,gEAAU,uBAAuB,GAAG;AAC/F,KAAK,OAAO,wDAAU;AACtB;AACA,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,uDAAS;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,6BAA6B,0CAA0C,gEAAU,2BAA2B;AAC5G,aAAa;AACb,KAAK,gBAAgB,UAAU;AAC/B,sBAAsB,oDAAM;AAC5B,uBAAuB,gEAAU;AACjC,aAAa,GAAG,GAAG,OAAO,wDAAiB,EAAE,EAAE,EAAE,QAAQ,EAAE;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,4CAAO;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,0DAAY;AAC1C;AACA;AACA;AACA;AACA,mEAAmE,sBAAsB,EAAE;AAC3F;AACA;AACA,mCAAmC,2DAAI;AACvC;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,8BAA8B;AACjD;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,mBAAmB;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,sDAAS,4BAA4B,2DAAI;AACzD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,sDAAS,gCAAgC,2DAAI,iBAAiB,gBAAgB;AAClG;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,oEAAoE;AACrF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,+BAA+B,+DAAwB,CAAC,+DAAwB,GAAG,+DAAwB,qBAAqB,+DAAwB,CAAC,wDAAQ,GAAG,+DAAwB,CAAC,oDAAa,GAAG,+DAAwB,CAAC,wDAAiB,GAAG,+DAAwB,CAAC,uDAAgB,GAAG,+DAAwB,gBAAgB;AAClY,mBAAmB,+DAAwB,EAAE,kIAAkI;AAC/K,QAAQ,4DAAqB;AAC7B,QAAQ,4DAAqB;AAC7B,KAAK;AACL;AACA,QAAQ,4DAAqB,MAAM,yDAAkB;AACrD,QAAQ,4DAAqB,MAAM,yDAAkB;AACrD,KAAK,EAAE,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AkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS,GAAG,EAAE,EAAE;;AAEhB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB;AACnB;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,4CAAO;AAClC,8BAA8B,4CAAO;AACrC,2BAA2B,4CAAO;AAClC,oEAAoE,sBAAsB,EAAE;AAC5F;AACA;AACA;AACA,SAAS;AACT,sCAAsC,EAAE;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,yCAAyC,gEAAS,gBAAgB;AACpF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,4CAA4C,gEAAS,gBAAgB;AAC1F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,oCAAoC;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,0DAA0D;AAC3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB,SAAS,EAAE;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oGAAoG,+CAAE;AACtG;AACA;AACA,mBAAmB,gBAAgB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,uBAAuB,gBAAgB;AACvC;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,QAAQ,gDAAG;AACX;AACA;AACA,SAAS;AACT;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC,kDAAkD;;AAEnD;AACA;AACA;AACA;AACA;AACA,4BAA4B,4CAAO;AACnC,iCAAiC;AACjC;AACA;AACA,gCAAgC,0DAAY;AAC5C,yBAAyB,4CAAO;AAChC,0BAA0B,4CAAO;AACjC;AACA,qBAAqB,gCAAgC;AACrD;AACA;AACA,gDAAgD,2DAAI,sBAAsB,cAAc,EAAE;AAC1F;AACA,mBAAmB,8BAA8B;AACjD;AACA,eAAe,gBAAgB;AAC/B,yBAAyB;AACzB;AACA,oGAAoG,EAAE;AACtG,6BAA6B,gDAAG;AAChC;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,oGAAoG,EAAE;AACtG,QAAQ,gDAAG;AACX;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,eAAe,gBAAgB;AAC/B;AACA,YAAY,sDAAS;AACrB,sBAAsB,gEAAS;AAC/B;AACA,YAAY,6DAAM;AAClB;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,YAAY,sDAAS;AACrB,sBAAsB,gEAAS,iBAAiB,0DAAG,8BAA8B,gEAAS,OAAO,sDAAS,gCAAgC,gEAAS,iBAAiB,2DAAI,OAAO,6DAAM,GAAG,SAAS;AACjM,kCAAkC,qBAAqB,EAAE;AACzD;AACA;AACA;AACA;AACA,YAAY,sDAAS,8BAA8B,gEAAS,6BAA6B,SAAS;AAClG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA,6BAA6B,sBAAsB;AACnD;AACA,eAAe,gBAAgB;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,sEAAsE,YAAY;AAClF;AACA;AACA,aAAa,GAAG,2DAA2D;AAC3E;AACA;AACA;AACA,0DAA0D,kCAAkC,+DAAwB,CAAC,wDAAQ,GAAG,+DAAwB,CAAC,wDAAiB,GAAG,+DAAwB,CAAC,oDAAa,GAAG;AACtN,sBAAsB,+DAAwB,EAAE,6GAA6G;AAC7J,QAAQ,yDAAkB;AAC1B,KAAK;AACL;AACA,QAAQ,4DAAqB,MAAM,yDAAkB;AACrD,KAAK,EAAE,6HAA6H;AACpI,QAAQ,yDAAkB;AAC1B,QAAQ,wDAAiB;AACzB,QAAQ,yDAAkB;AAC1B,KAAK,EAAE,WAAW,2QAA2Q,YAAY,0BAA0B,yKAAyK;AAC5e,QAAQ,6DAAsB;AAC9B,QAAQ,4DAAqB;AAC7B,QAAQ,4DAAqB;AAC7B,QAAQ,0DAAmB;AAC3B,QAAQ,0DAAmB;AAC3B,QAAQ,0DAAmB;AAC3B,KAAK;AACL,QAAQ,wDAAiB;AACzB,KAAK,EAAE,wDAAwD,aAAa,sBAAsB,gBAAgB,sBAAsB;AACxI;AACA,KAAK,gCAAgC,OAAO,oDAAM,SAAS,wDAAQ,IAAI,GAAG;AAC1E,KAAK,OAAO,wDAAU,EAAE;AACxB,KAAK,OAAO,oDAAM;AAClB;AACA;AACA,iBAAiB,OAAO,uDAAS,oBAAoB,eAAe,IAAI;AACxE,iBAAiB,OAAO,mDAAK,EAAE;AAC/B,sBAAsB,OAAO,mDAAK,EAAE;AACpC,uBAAuB,OAAO,mDAAK,EAAE;AACrC,gBAAgB,OAAO,mDAAK,EAAE;AAC9B,gBAAgB,OAAO,mDAAK,EAAE;AAC9B,gBAAgB,OAAO,mDAAK,EAAE;AAC9B,kBAAkB,OAAO,mDAAK,EAAE;AAChC,YAAY,OAAO,mDAAK,EAAE;AAC1B,mBAAmB,OAAO,mDAAK,EAAE;AACjC,wBAAwB,OAAO,mDAAK,EAAE;AACtC,oBAAoB,OAAO,oDAAM,sBAAsB;AACvD;AACA,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,uDAAS;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,+DAAiB;AAChD,sEAAsE,aAAa,sBAAsB,gBAAgB;AACzH,aAAa;AACb,KAAK,gBAAgB,UAAU;AAC/B,sBAAsB,oDAAM;AAC5B,uBAAuB,wDAAQ;AAC/B,aAAa,GAAG,GAAG,OAAO,wDAAiB,EAAE,GAAG,OAAO,oDAAa,EAAE,EAAE,EAAE,GAAG;AAC7E,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,oDAAM;AACxB;AACA,SAAS;AACT,kBAAkB,uDAAS;AAC3B,8BAA8B,eAAe;AAC7C,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS,GAAG,EAAE,EAAE;;AAEhB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+CAA+C,4CAAO;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oCAAoC,0DAAY;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8DAA8D,4BAA4B;AAC1F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,2BAA2B;AACpE,2CAA2C,6BAA6B;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,8BAA8B;AACzD,wBAAwB,qEAAqE;AAC7F,qBAAqB,mCAAmC;AACxD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,oCAAoC,yDAAW;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,2BAA2B,EAAE;AACxD,6BAA6B,6BAA6B;AAC1D;AACA;AACA;AACA;AACA;AACA;AACA,2DA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AAa,OAAO,oDAAM,EAAE;AAC5B,cAAc,OAAO,oDAAM,EAAE;AAC7B,mBAAmB,OAAO,6DAAe,yBAAyB,qBAAqB,IAAI;AAC3F;AACA,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,uDAAS;AACvB,gBAAgB,0DAA0D,6BAA6B,EAAE;AACzG,KAAK,gBAAgB,UAAU;AAC/B,sBAAsB,oDAAM;AAC5B,uBAAuB,gEAAU;AACjC,aAAa,GAAG,GAAG,OAAO,wDAAiB,EAAE,EAAE,EAAE,GAAG;AACpD,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,oDAAM;AACxB,SAAS;AACT,kBAAkB,oDAAM;AACxB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB;AACA,SAAS;AACT,kBAAkB,6DAAe;AACjC,mCAAmC,qBAAqB;AACxD,SAAS,GAAG,EAAE,EAAE;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,0DAAY;AAC9C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,0DAAY;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,0DAAY;AACtC,4BAA4B,4CAAO;AACnC,kCAAkC,4CAAO;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,0DAAY;AACzC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,SAAS;AACxB;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,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CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,0DAAY;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,sBAAsB;AACzC,eAAe,mCAAmC;AAClD,oBAAoB,yCAAyC;AAC7D,wBAAwB,6CAA6C;AACrE,4BAA4B,+BAA+B;AAC3D,0BAA0B,8BAA8B;AACxD,4BAA4B,0BAA0B;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,qBAAqB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wDAAwD,iCAAiC,+DAAwB,uBAAuB;AACxI,qBAAqB,+DAAwB,EAAE,iIAAiI;AAChL,QAAQ,4DAAqB;AAC7B,QAAQ,4DAAqB;AAC7B,QAAQ,4DAAqB;AAC7B,QAAQ,4DAAqB;AAC7B,QAAQ,4DAAqB;AAC7B,QAAQ,4DAAqB;AAC7B,QAAQ,4DAAqB;AAC7B,KAAK;AACL;AACA,QAAQ,4DAAqB,MAAM,yDAAkB;AACrD,QAAQ,4DAAqB,MAAM,yDAAkB;AACrD,QAAQ,4DAAqB,MAAM,yDAAkB;AACrD,QAAQ,4DAAqB,MAAM,yDAAkB;AACrD,QAAQ,4DAAqB,MAAM,yDAAkB;AACrD,QAAQ,4DAAqB,MAAM,yDAAkB;AACr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AAS,mBAAmB,+FAA+F,SAAS,iGAAiG,UAAU,UAAU,qFAAqF,QAAQ,kBAAkB,6FAA6F,SAAS,mGAAmG,SAAS,YAAY,0CAA0C;AAC5wB;AACA,iBAAiB,OAAO,mDAAK,EAAE;AAC/B,aAAa,OAAO,mDAAK,EAAE;AAC3B,UAAU,OAAO,mDAAK,EAAE;AACxB,oBAAoB,OAAO,mDAAK,EAAE;AAClC,eAAe,OAAO,mDAAK,EAAE;AAC7B;AACA,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,uDAAS;AACvB;AACA;AACA,iCAAiC,qEAAuB;AACxD,+BAA+B,+DAAiB;AAChD;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA,kCAAkC,OAAO;AACzC;AACA;AACA;AACA,+GAA+G,SAAS,mBAAmB,+FAA+F,SAAS,iGAAiG,UAAU,UAAU,qFAAqF,QAAQ,kBAAkB,6FAA6F,SAAS,mGAAmG,SAAS,YAAY;AACrrB,aAAa;AACb,KAAK,UAAU;AACf,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS,GAAG,EAAE,EAAE;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,0DAAY;AACrC;AACA;AACA;AACA;AACA;AACA,0BAA0B,0DAAY;AACtC,kDAAkD,WAAW;AAC7D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,yBAAyB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD,0CAA0C;AAC5F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;A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F,KAAK,eAAe,EAAE;;AAEtB;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,4DAA4D;AACtF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,kEAAkE;AAC9F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,kEAAkE;AAC9F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,WAAW,eAAe,GAAG,iBAAiB,GAAG,iBAAiB,EAAE;AACpF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oEAAoE,yCAAyC;AAC7G,4BAA4B,gEAAqB,EAAE,kDAAkD,kCAAkC,EAAE,kDAAkD;AAC3L,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,wDAAU;AACxB,gBAAgB,qBAAqB;AACrC,KAAK,gBAAgB,WAAW,EAAE,QAAQ,EAAE;;AAE5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D,oCAAoC;AAC9F,uBAAuB,gEAAqB,EAAE,0FAA0F;AACxI,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,wDAAU;AACxB,gBAAgB,sEAAsE;AACtF,KAAK,eAAe,EAAE;AACtB;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,4FAA4F;AACzG;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa,4FAA4F;AACzG;AACA;AACA;AACA,sEAAsE,qEAAqE;AAC3I,6BAA6B,gEAAyB,EAAE,kEAAkE;AAC1H,wDAAwD,mEAA4B;AACpF,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,wDAAU;AACxB,KAAK,eAAe,EAAE;;AAEtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gEAAgE,uCAAuC;AACvG,0BAA0B,gEAAqB,EAAE,gDAAgD,oCAAoC,sDAAW,CAAC,uDAAY,GAAG,EAAE,gDAAgD;AAClN,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,wDAAU;AACxB,gBAAgB,qEAAqE,uDAAS,GAAG;AACjG,KAAK,eAAe,EAAE;AACtB;AACA;AACA;AACA,wBAAwB,2EAAmB,SAAS,yDAAS,aAAa,gEAAgB;AAC1F;AACA,wBAAwB,yBAAyB;AACjD,0BAA0B,yBAAyB;AACnD;AACA,8EAA8E,4CAA4C,sDAAe,CAAC,uDAAS,GAAG;AACtJ,iCAAiC,gEAAyB,EAAE,0EAA0E;AACtI;AACA,KAAK,6BAA6B,OAAO,oDAAM,SAAS,uDAAS,IAAI;AACrE;AACA,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,wDAAU;AACxB,KAAK,gBAAgB,UAAU;AAC/B,sBAAsB,oDAAM;AAC5B,uBAAuB,uDAAS;AAChC,aAAa,GAAG,EAAE,EAAE,QAAQ,EAAE;;AAE9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC;AAChC,gCAAgC;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB,uBAAuB;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,yBAAyB;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,yBAAyB;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,oBAAoB;AAC9C,2BAA2B,qBAAqB;AAChD,kCAAkC,4BAA4B;AAC9D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,qDAAqD;AAC7E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,iDAAiD;AAC1E,kBAAkB,kBAAkB;AACpC,uBAAuB,8BAA8B;AACrD,uBAAuB,8BAA8B;AACrD;AACA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AAiG,UAAU,YAAY,qFAAqF,sBAAsB,6FAA6F,UAAU,mGAAmG,SAAS,aAAa;AAC7wB,aAAa;AACb,KAAK,UAAU;AACf,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS,GAAG,EAAE,EAAE;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,0DAAY;AACrC;AACA;AACA;AACA,0BAA0B,0DAAY;AACtC,kDAAkD,SAAS;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,yBAAyB;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,yBAAyB;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD,0CAA0C;AAC5F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,gCAAgC;AAC9C;AACA;AACA;AACA,iBAAiB,eAAe;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD,8BAA8B,+DAAwB,CAAC,wDAAiB,GAAG,+DAAwB,CAAC,uDAAgB,GAAG,+DAAwB,CAAC,sDAAe,GAAG,+DAAwB,CAAC,sEAA+B,GAAG,+DAAwB,CAAC,8DAAuB,GAAG,+DAAwB,oBAAoB,+DAAwB,CAAC,oDAAa,GAAG,+DAAwB,CAAC,wDAAQ,GAAG,+DAAwB,CAAC,+DAAwB,GAAG,+DAAwB,CAAC,4DAAqB,GAAG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CAAwC;AAC1G,2BAA2B,gEAAqB,EAAE,iDAAiD,iCAAiC,EAAE,iDAAiD;AACvL,cAAc,oDAAoD,+DAAwB;AAC1F,cAAc,wDAAU;AACxB,gBAAgB,qBAAqB;AACrC,KAAK,gBAAgB,WAAW,EAAE,QAAQ,EAAE;;AAE5C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,4CAAO;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,0DAAY;AAC1C;AACA,wCAAwC,eAAe;AACvD,iCAAiC;AACjC,iCAAiC;AACjC;AACA;AACA;AACA;AACA;AACA,6BAA6B,sDAAS;AACtC,kBAAkB,0DAAG;AACrB,yCAAyC,oDAAe;AACxD;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA,gBAAgB,8BAA8B;AAC9C,iBAAiB,eAAe;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,qBAAqB;AAC/C,2BAA2B,sBAAsB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,gCAAgC;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,YAAY;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,8BAA8B,sCAAsC,yBAAyB,EAAE,EAAE;AACjG;AACA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CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D,kCAAkC,+DAAwB,CAAC,wDAAiB,GAAG;AACzI,sBAAsB,+DAAwB,EAAE,qJAAqJ;AACrM,QAAQ,yDAAkB;AAC1B,KAAK,EAAE,WAAW,mBAAmB,mGAAmG;AACxI,QAAQ,6DAAsB;AAC9B,QAAQ,0DAAmB;AAC3B,KAAK,EAAE,oBAAoB;AAC3B;AACA,KAAK,OAAO,wDAAU;AACtB;AACA;AACA,cAAc,OAAO,yDAAW,2BAA2B,GAAG,OAAO,mDAAK,EAAE;AAC5E,gBAAgB,OAAO,yDAAW,6BAA6B;AAC/D,qBAAqB,OAAO,yDAAW,uCAAuC;AAC9E,qBAAqB,OAAO,yDAAW,uCAAuC;AAC9E,qBAAqB,OAAO,yDAAW,uCAAuC;AAC9E,sBAAsB,OAAO,yDAAW,wCAAwC;AAChF,UAAU,OAAO,yDAAW,kCAAkC;AAC9D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D,oCAAoC;AAC9F,uBAAuB,gEAAyB,EAAE,sDAAsD;;AAExG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,wBAAwB;AACxB,sBAAsB;AACtB;AACA;AACA;AACA;AACA,sBAAsB;AACtB,mBAAmB;AACnB;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,CAAC,8BAA8B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B;AAC7B,6BAA6B,4CAAO;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,0DAAY;AACjD,yBAAyB,yEAAiB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,gEAAS;AAC3B;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA,6CAA6C,kCAAkC;AAC/E,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,sBAAsB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,qDAAqD;AAC9F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,sBAAsB;AACjD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,qDAAqD;AAC9F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD,qDAAqD;AAC1G;AACA;AACA,qDAAqD,qDAAqD;AAC1G;AACA;AACA;AACA;AACA,iDAAiD,qDAAqD;AACtG;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AA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AwC;AACxC;AACA,8BAA8B;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C,gBAAgB;AAC1D;AACA;AACA;AACA;AACA;AACA,sCAAsC,gBAAgB;AACtD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4BAA4B,6CAA6C,MAAM;AAC/E,iBAAiB;AACjB;AACA;AACA,6BAA6B,oCAAoC;AACjE;AACA;AACA;AACA;AACA,+CAA+C;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,2DAA2D,eAAe;AAC1E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kEAAkE,sCAAsC,+DAAwB,CAAC,wDAAiB,GAAG,+DAAwB,CAAC,yDAAW,GAAG;AAC5L,0BAA0B,+DAAwB,EAAE,6EAA6E,uIAAuI,YAAY,qDAAqD,2CAA2C,kEAA2B,GAAG;AAClZ;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK,OAAO,wDAAU,EAAE;AACxB,KAAK,6BAA6B,OAAO,oDAAM,SAAS,yDAAW,IAAI;AACvE;AACA;AACA,YAAY,OAAO,mDAAK,EAAE;AAC1B,gBAAgB,OAAO,mDAAK,EAAE;AAC9B,cAAc,OAAO,mDAAK,EAAE;AAC5B,eAAe,OAAO,mDAAK,EAAE;AAC7B,iBAAiB,OAAO,mDAAK,EAAE;AAC/B,cAAc,OAAO,mDAAK,EAAE;AAC5B,cAAc,OAAO,mDAAK,EAAE;AAC5B,kBAAkB,OAAO,oDAAM,EAAE;AACjC,kBAAkB,OAAO,oDAAM,EAAE;AACjC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,WAAW;AAC9B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,sDAAsD,kCAAkC;AACxF,oBAAoB,8DAAuB,EAAE,qBAAqB;AAClE,oBAAoB,8DAAuB,GAAG;;AAE9C;AACA,aAAa,gEAAiB;AAC9B;AACA,iBAAiB,gEAAU;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yCAAyC,kBAAkB;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,0DAAY;AACtC,mCAAmC,4CAAO;AAC1C;AACA,gCAAgC;AAChC,gCAAgC;AAChC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,QAAQ,kDAAK;AACb;AACA;AACA,kCAAkC,2DAAI;AACtC;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gEAAgE,qCAAqC,+DAAwB,CAAC,+DAAwB,GAAG;AACzJ,yBAAyB,+DAAwB,EAAE,+GAA+G;AAClK,QAAQ,yDAAkB;AAC1B,KAAK;AACL;AACA,QAAQ,4DAAqB,MAAM,yDAAkB;AACrD,KAAK,EAAE,kEAAkE;AACzE,QAAQ,wDAAiB,uEAAuE,iCAAiC,EAAE,kEAAkE,8BAA8B,EAAE,SAAS,+DAAwB;AACtQ,KAAK,EAAE,WAAW,qSAAqS,YAAY,mBAAmB,aAAa,gEAAyB,6BAA6B,kEAA2B,iTAAiT;AACruB,QAAQ,6DAAsB;AAC9B,QAAQ,4DAAqB;AAC7B,QAAQ,4DAAqB;AAC7B,QAAQ,wDAAiB,sEAAsE,qBAAqB,EAAE,+EAA+E,oCAAoC,EAAE,iFAAiF,qCAAqC,EAAE;AACnW,QAAQ,0DAAmB;AAC3B,QAAQ,4DAAqB;AAC7B,QAAQ,0DAAmB;AAC3B,QAAQ,0DAAmB;AAC3B,QAAQ,0DAAmB;AAC3B,KAAK;AACL,QAAQ,wDAAiB,YAAY,6DAAsB;AAC3D,QAAQ,uDAAgB;AACxB,QAAQ,wDAAiB,YAAY,6DAAsB;AAC3D,QAAQ,yDAAkB;AAC1B,QAAQ,uDAAgB;AACxB,QAAQ,wDAAiB,YAAY,6DAAsB;AAC3D,QAAQ,yDAAkB;AAC1B,KAAK,EAAE,eAAe,uDAAc,wFAAwF,gBAAgB,kBAAkB,oBAAoB,mFAAmF,qBAAqB,kBAAkB,oBAAoB,mCAAmC,kBAAkB,qCAAqC,kBAAkB,+BAA+B,yBAAyB,mBAAmB,mCAAmC,yBAAyB,6BAA6B,0HAA0H,mBAAmB,qBAAqB,oBAAoB,sIAAsI,oBAAoB,qBAAqB,oBAAoB,4QAA4Q,gBAAgB,qBAAqB,oBAAoB,4HAA4H,gBAAgB,oBAAoB,wBAAwB,4BAA4B,yBAAyB,yBAAyB,0CAA0C;AAC9jD;AACA,KAAK,OAAO,+DAAiB;AAC7B;AACA;AACA,eAAe,OAAO,uDAAS,mBAAmB,eAAe,IAAI;AACrE,aAAa,OAAO,mDAAK,EAAE;AAC3B,UAAU,OAAO,mDAAK,EAAE;AACxB,gBAAgB,OAAO,mDAAK,EAAE;AAC9B,YAAY,OAAO,mDAAK,EAAE;AAC1B,aAAa,OAAO,mDAAK,EAAE;AAC3B,eAAe,OAAO,mDAAK,EAAE;AAC7B,gBAAgB,OAAO,mDAAK,EAAE;AAC9B,qBAAqB,OAAO,mDAAK,EAAE;AACnC,gBAAgB,OAAO,mDAAK,EAAE;AAC9B,eAAe,OAAO,mDAAK,EAAE;AAC7B,wBAAwB,OAAO,mDAAK,EAAE;AACtC,eAAe,OAAO,mDAAK,EAAE;AAC7B,cAAc,OAAO,mDAAK,EAAE;AAC5B,gBAAgB,OAAO,mDAAK,EAAE;AAC9B,cAAc,OAAO,oDAAM,EAAE;AAC7B,oBAAoB,OAAO,0DAAY,gCAAgC;AACvE,uBAAuB,OAAO,0DAAY,6BAA6B;AACvE;;AAEA;AACA;AACA,0DAA0D,oCAAoC;AAC9F,sBAAsB,8DAAuB,EAAE,uBAAuB;AACtE,sBAAsB,8DAAuB,EAAE,YAAY,4DAAY,EAAE,0DAAW,IAAI;;AAExF;AACA;AACA;AACA;AACA,kCAAkC,0DAAY;AAC9C,mCAAmC,0DAAY;AAC/C,kCAAkC,0DAAY;AAC9C,oCAAoC,0DAAY;AAChD,6BAA6B,0DAAY;AACzC,4BAA4B,0DAAY;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gEAAgE,qCAAqC,+DAAwB,CAAC,+DAAwB,GAAG;AACzJ,yBAAyB,+DAAwB,EAAE,8IAA8I;AACjM,QAAQ,4DAAqB;AAC7B,KAAK;AACL;AACA,QAAQ,4DAAqB,MAAM,yDAAkB;AACrD,KAAK,EAAE,+EAA+E;AACtF,QAAQ,qEAA8B,sGAAsG,qCAAqC,EAAE;AACnL,KAAK;AACL,QAAQ,qEAA8B;AACtC,QAAQ,yDAAkB;AAC1B,KAAK,EAAE,WAAW,6BAA6B,YAAY,6LAA6L,6IAA6I;AACrY,QAAQ,6DAAsB;AAC9B,QAAQ,0DAAmB;AAC3B,KAAK,EAAE,2BAA2B;AAClC,YAAY,mEAAO;AACnB,gBAAgB,iEAAK,cAAc,iEAAK,EAAE,gBAAgB;AAC1D,gBAAgB,iEAAK,aAAa,iEAAK,EAAE,cAAc;AACvD,gBAAgB,sEAAU,2BAA2B,mEAAO;AAC5D;AACA,WAAW,sBAAsB;AACjC;AACA,KAAK,OAAO,+DAAiB;AAC7B;AACA;AACA,gBAAgB,OAAO,6DAAe,wCAAwC;AAC9E,mBAAmB,OAAO,mDAAK,EAAE;AACjC,sBAAsB,OAAO,oDAAM,EAAE;AACrC,uBAAuB,OAAO,oDAAM,EAAE;AACtC,sBAAsB,OAAO,oDAAM,EAAE;AACrC,wBAAwB,OAAO,oDAAM,EAAE;AACvC,iBAAiB,OAAO,oDAAM,EAAE;AAChC,gBAAgB,OAAO,oDAAM,EAAE;AAC/B,4BAA4B,OAAO,yDAAW,0BAA0B;AACxE,gBAAgB,OAAO,yDAAW,6BAA6B;AAC/D,wBAAwB,OAAO,0DAAY,2CAA2C;AACtF;;AAEA;AACA;AACA,gBAAgB;AAChB;AACA;AACA,0DAA0D,oCAAoC;AAC9F,sBAAsB,8DAAuB,EAAE,uBAAuB;AACtE,sBAAsB,8DAAuB,GAAG;;AAEhD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,kBAAkB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,qBAAqB;AAChD;AACA,6BAA6B,8BAA8B;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,qBAAqB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,qBAAqB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,qBAAqB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,qBAAqB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,kBAAkB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,YAAY;AACvC;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,SAAS,+DAAS;AAClB;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,0DAAY;AAC5C;AACA,2BAA2B,0DAAY;AACvC;AACA,gCAAgC,0DAAY;AAC5C,4BAA4B,0DAAY;AACxC,yBAAyB,0DAAY;AACrC,0BAA0B,0DAAY;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;AACA;AACA;AACA;AACA,6BAA6B,sDAAQ;AACrC;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA,0CAA0C,wDAAU;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,yDAAW;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,yDAAyD;AACzD;AACA;AACA;AACA;AACA;AACA,yCAAyC,sDAAQ;AACjD;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,6DAA6D,QAAQ;AACrE;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,iCAAiC;AAC5C;AACA;AACA;AACA;AACA;;AAEA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,WAAW,WAAW;AACtB;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,WAAW,0BAA0B;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC,MAAM;AAC7C,mCAAmC,MAAM;AACzC;;AAEA;AACA,kCAAkC,KAAK,kBAAkB,KAAK,kBAAkB,KAAK,kBAAkB,KAAK,kBAAkB,KAAK;AACnI,kCAAkC,KAAK;AACvC,4CAA4C,mCAAmC;AAC/E,4CAA4C,uCAAuC;AACnF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA,yCAAyC,aAAa,4EAA4E;AAClI;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;AACL;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,sBAAsB;AACtB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,gBAAgB;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,kBAAkB,gBAAgB;AAClC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,kDAAkD,MAAM,gBAAgB,4BAA4B;AACpG;AACA,6CAA6C,gBAAgB;AAC7D;AACA;AACA,6CAA6C,SAAS,4BAA4B;AAClF,KAAK,IAAI;AACT;AACA;AACA;AACA;AACA;AACA,gDAAgD,UAAU;AAC1D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,kBAAkB;AAClB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gDAAgD,qBAAqB,EAAE,KAAK;AAC5E;AACA;AACA;AACA,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kCAAkC,aAAa,MAAM,YAAY;AACjE,KAAK;AACL;AACA;AACA;AACA;AACA;AACA,8GAA8G,eAAe;AAC7H,8GAA8G,eAAe;AAC7H,4FAA4F,eAAe;AAC3G;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0FAA0F,eAAe;AACzG,0FAA0F,eAAe;AACzG,wEAAwE,eAAe;AACvF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qGAAqG,6BAA6B;AAClI;AACA;AACA,iFAAiF,6BAA6B;AAC9G;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD,gBAAgB;AACrE,qDAAqD,gBAAgB;AACrE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,4DAA4D;AAC5D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D,UAAU;AACpE,gEAAgE;AAChE;AACA,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD;AACpD,WAAW,wCAAwC;AACnD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4DAA4D;AAC5D,KAAK;AACL;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA,eAAe,eAAe;AAC9B;AACA;AACA;AACA;AACA,mBAAmB,qBAAqB;AACxC;AACA;AACA;AACA;AACA,4DAA4D;AAC5D;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,4BAA4B,4CAAO;AACnC;AACA,YAAY,yEAAiB;AAC7B;AACA,gBAAgB,kDAAK,CAAC,sDAAS,oBAAoB,sDAAS;AAC5D;AACA,gBAAgB,+CAAE,IAAI,4DAAuB;AAC7C;AACA;AACA,qBAAqB;AACrB,iBAAiB;AACjB,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kEAAkE,sCAAsC,sDAAe,CAAC,8DAAuB,GAAG,sDAAe,CAAC,yDAAW,GAAG,sDAAe,CAAC,oDAAa,GAAG;AAChN,2BAA2B,gEAAyB,EAAE,8DAA8D;AACpH;AACA,KAAK,OAAO,8DAAgB,EAAE;AAC9B,KAAK,6BAA6B,OAAO,oDAAM,SAAS,yDAAW,IAAI,GAAG;AAC1E,KAAK,OAAO,oDAAM;AAClB;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,wDAAU;AACrC;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0EAA0E,0CAA0C,sDAAe,CAAC,sEAA+B,GAAG,sDAAe,CAAC,oDAAa,GAAG,sDAAe,CAAC,sDAAe,GAAG,sDAAe,sBAAsB,sDAAe,CAAC,4DAAqB,GAAG;AACrT,+BAA+B,gEAAyB,EAAE,sEAAsE;AAChI;AACA,KAAK,OAAO,sEAAwB,EAAE;AACtC,KAAK,OAAO,oDAAM,EAAE;AACpB,KAAK,OAAO,sDAAQ,EAAE;AACtB,KAAK,2BAA2B;AAChC,KAAK,OAAO,4DAAc;AAC1B;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8DAA8D,sCAAsC;AACpG,yBAAyB,gEAAyB,EAAE,0DAA0D;;AAE9G;AACA;AACA;AACA,gCAAgC,0DAAY;AAC5C,oCAAoC,0DAAY;AAChD,+BAA+B,0DAAY;AAC3C;AACA;AACA,SAAS;AACT;AACA;AACA,4DAA4D,qCAAqC;AACjG,wBAAwB,gEAAyB,EAAE,wDAAwD;AAC3G;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sFAAsF,gDAAgD,+DAAwB,mBAAmB;AACjL,oCAAoC,+DAAwB,EAAE,sKAAsK;AACpO,QAAQ,yDAAkB;AAC1B,KAAK,EAAE,iHAAiH;AACxH,QAAQ,6DAAsB;AAC9B,QAAQ,4DAAqB;AAC7B,QAAQ,0DAAmB;AAC3B,QAAQ,0DAAmB;AAC3B,KAAK;AACL,QAAQ,yDAAkB;AAC1B,KAAK,EAAE,2BAA2B,8BAA8B,EAAE,wCAAwC;AAC1G;AACA,KAAK;AACL;AACA;AACA,eAAe,OAAO,yDAAW,4BAA4B;AAC7D,gBAAgB,OAAO,yDAAW,6BAA6B;AAC/D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,4CAAO;AACpC;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,kDAAkD;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,kBAAkB,gEAAS;AAC3B;AACA;AACA,0CAA0C,gEAAS;AACnD;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,sCAAsC,gEAAS;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,yBAAyB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AAK,OAAO,wDAAU,EAAE;AACxB,KAAK,OAAO,uDAAS,EAAE;AACvB,KAAK,OAAO,+DAAiB;AAC7B;AACA;AACA,oBAAoB,OAAO,yDAAW,iCAAiC;AACvE,kBAAkB,OAAO,yDAAW,4BAA4B;AAChE,cAAc,OAAO,yDAAW,iCAAiC;AACjE,eAAe,OAAO,0DAAY,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB,yDAAyD,kBAAkB,EAAE;AAC9F;AACA;AACA;AACA;AACA,0DAA0D,oCAAoC;AAC9F,sBAAsB,8DAAuB,EAAE,uBAAuB;AACtE,sBAAsB,8DAAuB,GAAG;;AAEhD;AACA;AACA;AACA;AACA,2BAA2B,YAAY;AACvC;AACA,mBAAmB,mBAAmB,EAAE;AACxC;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,kBAAkB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,kBAAkB;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,qBAAqB;AAChD;AACA,6BAA6B,8BAA8B;AAC3D;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,qBAAqB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,qBAAqB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,qBAAqB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,qBAAqB;AAChD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB,0DAA0D;AAC1E;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,cAAc,yBAAyB;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mCAAmC,UAAU;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA;AACA,qBAA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;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,4EAA4E,2CAA2C,+DAAwB,mBAAmB,+DAAwB,aAAa;AACvM,+BAA+B,+DAAwB,EAAE,sMAAsM,gEAAyB;AACxR,aAAa,UAAU,4DAAa,eAAe,gEAAU,8CAA8C;AAC3G,aAAa;AACb;AACA,KAAK,6BAA6B,OAAO,uDAAS,4BAA4B,GAAG;AACjF,KAAK,6BAA6B,OAAO,uDAAS,sBAAsB;AACxE;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,yEAAiB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gEAAgE,qCAAqC,+DAAwB,CAAC,wDAAiB,GAAG,+DAAwB,CAAC,uDAAgB,GAAG,+DAAwB,CAAC,yDAAW,GAAG;AACrO,yBAAyB,+DAAwB,EAAE,sIAAsI;AACzL,QAAQ,wDAAiB,iEAAiE,sBAAsB,EAAE,gEAAgE,qBAAqB,EAAE,oEAAoE,uBAAuB,EAAE,kEAAkE,qBAAqB,EAAE,4EAA4E,8BAA8B,EAAE,8DAA8D,oBAAoB,EAAE,kEAAkE,sBAAsB,EAAE,gEAAgE,qBAAqB,EAAE;AAChvB,KAAK,EAAE,WAAW,+RAA+R,aAAa,kEAA2B,GAAG;AAC5V;AACA,KAAK,OAAO,wDAAU,EAAE;AACxB,KAAK,OAAO,uDAAS,EAAE;AACvB,KAAK,6BAA6B,OAAO,oDAAM,SAAS,yDAAW,IAAI;AACvE;AACA;AACA,yBAAyB,OAAO,mDAAK,EAAE;AACvC,mBAAmB,OAAO,mDAAK,EAAE;AACjC,mBAAmB,OAAO,mDAAK,EAAE;AACjC,uBAAuB,OAAO,mDAAK,EAAE;AACrC,qBAAqB,OAAO,mDAAK,EAAE;AACnC,qBAAqB,OAAO,mDAAK,EAAE;AACnC,kBAAkB,OAAO,mDAAK,EAAE;AAChC,oBAAoB,OAAO,mDAAK,EAAE;AAClC,sBAAsB,OAAO,mDAAK,EAAE;AACpC,eAAe,OAAO,0DAAY,oBAAoB;AACtD,cAAc,OAAO,0DAAY,mBAAmB;AACpD,gBAAgB,OAAO,0DAAY,qBAAqB;AACxD,cAAc,OAAO,0DAAY,oBAAoB;AACrD,iBAAiB,OAAO,0DAAY,kCAAkC;AACtE,aAAa,OAAO,0DAAY,kBAAkB;AAClD,eAAe,OAAO,0DAAY,oBAAoB;AACtD,cAAc,OAAO,0DAAY,mBAAmB;AACpD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,yEAAiB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B;AAC3B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA,yBAAyB;AACzB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8CAA8C,4BAA4B,+DAAwB,CAAC,wDAAiB,GAAG,+DAAwB,CAAC,uDAAgB,GAAG,+DAAwB,CAAC,yDAAW,GAAG;AAC1M,gBAAgB,+DAAwB,EAAE,2GAA2G;AACrJ,QAAQ,wDAAiB,wDAAwD,sBAAsB,EAAE,uDAAuD,qBAAqB,EAAE,2DAA2D,uBAAuB,EAAE,mEAAmE,8BAA8B,EAAE,qDAAqD,oBAAoB,EAAE,yDAAyD,sBAAsB,EAAE,uDAAuD,qBAAqB,EAAE;AACxlB,KAAK,EAAE,WAAW,2DAA2D,EAAE;AAC/E;AACA,KAAK,OAAO,wDAAU,EAAE;AACxB,KAAK,OAAO,uDAAS,EAAE;AACvB,KAAK,6BAA6B,OAAO,oDAAM,SAAS,yDAAW,IAAI;AACvE;AACA;AACA,qBAAqB,OAAO,mDAAK,EAAE;AACnC,kBAAkB,OAAO,mDAAK,EAAE;AAChC,eAAe,OAAO,0DAAY,oBAAoB;AACtD,cAAc,OAAO,0DAAY,mBAAmB;AACpD,gBAAgB,OAAO,0DAAY,qBAAqB;AACxD,iBAAiB,OAAO,0DAAY,kCAAkC;AACtE,aAAa,OAAO,0DAAY,kBAAkB;AAClD,eAAe,OAAO,0DAAY,oBAAoB;AACtD,cAAc,OAAO,0DAAY,mBAAmB;AACpD;;AAEA;AACA;AACA,gBAAgB;AAChB;AACA;AACA,sDAAsD,kCAAkC;AACxF,oBAAoB,8DAAuB,EAAE,qBAAqB;AAClE,oBAAoB,8DAAuB,GAAG;;AAE9C;AACA;AACA,sDAAsD,kCAAkC;AACxF,qBAAqB,gEAAyB,EAAE,kDAAkD;AAClG;AACA;AACA;AACA;AACA,YAAY;AACZ;AACA,oDAAoD,iCAAiC;AACrF,oBAAoB,gEAAyB,EAAE,gDAAgD;AAC/F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kEAAkE,aAAa;AAC/E;AACA,sEAAsE,eAAe;AACrF;AACA;AACA;AACA,qEAAqE,aAAa;AAClF;AACA,yEAAyE,eAAe;AACxF;AACA;AACA;AACA;AACA;AACA,kEAAkE,eAAe;AACjF;AACA;AACA;AACA,kEAAkE,eAAe;AACjF;AACA;AACA;AACA;AACA;AACA,0EAA0E,0CAA0C,+DAAwB,CAAC,wDAAiB,GAAG,+DAAwB,CAAC,uDAAgB,GAAG;AAC7M,8BAA8B,+DAAwB,EAAE,sJAAsJ;AAC9M,QAAQ,yDAAkB;AAC1B,KAAK,EAAE,kFAAkF,EAAE,oBAAoB;AAC/G;AACA,KAAK,OAAO,wDAAU,EAAE;AACxB,KAAK,OAAO,uDAAS;AACrB;AACA;AACA,yBAAyB,OAAO,yDAAW,mCAAmC;AAC9E;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0BAA0B,0DAAY;AACtC,wBAAwB,0DAAY;AACpC;AACA;AACA,2BAA2B,0DAAY;AACvC,0BAA0B,0DAAY;AACtC;AACA;AACA,0BAA0B,0DAAY;AACtC,yBAAyB,0DAAY;AACrC;AACA;AACA,4BAA4B,0DAAY;AACxC,0BAA0B,0DAAY;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,8BAA8B;AACrD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,0DAA0D,kCAA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CA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,+CAA+C;AACrE,sBAAsB,8CAA8C;AACpE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,4DAA4D,mCAAmC,sDAAe,CAAC,8DAAuB,GAAG,sDAAe,0BAA0B;AAClL,wBAAwB,gEAAyB,EAAE,wDAAwD;AAC3G;AACA,KAAK,OAAO,8DAAgB,EAAE;AAC9B,KAAK;AACL;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,oDAAoD,iCAAiC;AACrF,mBAAmB,8DAAuB,EAAE,oBAAoB;AAChE,mBAAmB,8DAAuB,EAAE,YAAY,4DAAU,IAAI;;AAEtE;AACA;AACA,oCAAoC,4CAAO;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wDAAwD,mCAAmC;AAC3F,sBAAsB,gEAAyB,EAAE,oDAAoD;;AAErG;AACA;AACA;AACA;AACA,6BAA6B,0DAAY;AACzC;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB,aAAa;AACb,SAAS;AACT;AACA;AACA,0DAA0D,kCAAkC,+DAAwB,iBAAiB,+DAAwB,CAAC,uDAAgB,GAAG;AACjL,sBAAsB,+DAAwB,EAAE,0HAA0H;AAC1K,QAAQ,4DAAqB,WAAW,kEAAkB,KAAK,wDAAU;AACzE,KAAK;AACL;AACA,QAAQ,4DAAqB,MAAM,yDAAkB;AACrD,KAAK,EAAE,YAAY,yBAAyB,mGAAmG;AAC/I,QAAQ,6DAAsB;AAC9B,QAAQ,0DAAmB;AAC3B,KAAK,EAAE,oBAAoB;AAC3B;AACA,KAAK,sBAAsB;AAC3B,KAAK,OAAO,uDAAS;AACrB;AACA;AACA,aAAa,OAAO,6DAAe,SAAS,kEAAkB,GAAG,OAAO,wDAAU,qBAAqB,IAAI;AAC3G,iBAAiB,OAAO,oDAAM,EAAE;AAChC;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,0DAAY;AACrC,0BAA0B,0DAAY;AACtC,6BAA6B,4CAAO;AACpC;AACA,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kBAAkB,gEAAS;AAC3B;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,YAAY,sDAAS;AACrB,sBAAsB,gEAAS;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA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aAAa,OAAO,oDAAM,EAAE;AAC5B,gBAAgB,OAAO,oDAAM,EAAE;AAC/B,cAAc,OAAO,oDAAM,EAAE;AAC7B,eAAe,OAAO,0DAAY,gCAAgC;AAClE,cAAc,OAAO,0DAAY,2BAA2B;AAC5D,oBAAoB,OAAO,0DAAY,8CAA8C;AACrF;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wDAAwD,mCAAmC;AAC3F,qBAAqB,8DAAuB,EAAE,sBAAsB;AACpE,qBAAqB,8DAAuB,EAAE,YAAY,4DAAY,IAAI;;AAE1E;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sCAAsC,4CAAO;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,+CAAU;AAC7B;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,+CAAU;AAC7B;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,gEAAgE,qCAAqC,+DAAwB,CAAC,wDAAiB,GAAG,+DAAwB,CAAC,uDAAgB,GAAG;AAC9L,yBAAyB,+DAAwB,EAAE,2IAA2I;AAC9L,QAAQ,yDAAkB;AAC1B,KAAK,EAAE,WAAW,mXAAmX,2IAA2I;AAChhB,QAAQ,6DAAsB;AAC9B,QAAQ,0DAAmB;AAC3B,KAAK,EAAE,qBAAqB,gBAAgB,gBAAgB,SAAS,gBAAgB,gBAAgB,sHAAsH,aAAa,iBAAiB,gBAAgB,4MAA4M,cAAc,0NAA0N,cAAc,WAAW,2BAA2B,gBAAgB,SAAS,YAAY,gBAAgB,qBAAqB,gBAAgB,wBAAwB,8BAA8B,yBAAyB,yBAAyB,SAAS,UAAU,mBAAmB,cAAc,yBAAyB,sBAAsB,iCAAiC,eAAe,kCAAkC,aAAa,eAAe,aAAa,eAAe,oCAAoC,kBAAkB,qBAAqB,uBAAuB,iBAAiB,gBAAgB,aAAa,mBAAmB,sLAAsL,6BAA6B,sBAAsB;AAC5iD;AACA,KAAK,OAAO,wDAAU,EAAE;AACxB,KAAK,OAAO,uDAAS;AACrB;AACA;AACA,eAAe,OAAO,mDAAK,EAAE,GAAG,OAAO,yDAAW,kCAAkC;AACpF,gBAAgB,OAAO,mDAAK,EAAE,GAAG,OAAO,yDAAW,mCAAmC;AACtF,kBAAkB,OAAO,mDAAK,EAAE,GAAG,OAAO,yDAAW,qCAAqC;AAC1F,aAAa,OAAO,mDAAK,EAAE,GAAG,OAAO,yDAAW,gCAAgC;AAChF,aAAa,OAAO,mDAAK,EAAE,GAAG,OAAO,yDAAW,6BAA6B;AAC7E,kBAAkB,OAAO,mDAAK,EAAE,GAAG,OAAO,yDAAW,qCAAqC;AAC1F,oBAAoB,OAAO,mDAAK,EAAE;AAClC,2BAA2B,OAAO,mDAAK,EAAE;AACzC,6BAA6B,OAAO,mDAAK,EAAE;AAC3C,oBAAoB,OAAO,mDAAK,EAAE;AAClC,2BAA2B,OAAO,mDAAK,EAAE;AACzC,6BAA6B,OAAO,mDAAK,EAAE;AAC3C;;AAEA;AACA;AACA;AACA;AACA;AACA,CAAC,sCAAsC;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,0DAAY;AACvC,0BAA0B,0DAAY;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mFAAmF,GAAG,4BAA4B,aAAa;AAC/H;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA,2EAA2E,IAAI;AAC/E;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,MAAM,GAAG,OAAO,GAAG,SAAS;AACzE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA,wEAAwE,yCAAyC,+DAAwB,CAAC,wDAAiB,GAAG,+DAAwB,CAAC,uDAAgB,GAAG;AAC1M,6BAA6B,+DAAwB,EAAE,yIAAyI;AAChM,QAAQ,wDAAiB,qEAAqE,sBAAsB,EAAE;AACtH,KAAK,EAAE,WAAW,+HAA+H,YAAY,uCAAuC,EAAE;AACtM;AACA,KAAK,OAAO,wDAAU,EAAE;AACxB,KAAK,OAAO,uDAAS;AACrB;AACA;AACA,kBAAkB,OAAO,mDAAK,2BAA2B;AACzD,cAAc,OAAO,mDAAK,EAAE;AAC5B,gBAAgB,OAAO,mDAAK,EAAE;AAC9B,0BAA0B,OAAO,mDAAK,EAAE;AACxC,eAAe,OAAO,oDAAM,EAAE;AAC9B,cAAc,OAAO,oDAAM,EAAE;AAC7B,eAAe,OAAO,0DAAY,oBAAoB;AACtD;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,4EAA4E,2CAA2C,+DAAwB,CAAC,uDAAgB,GAAG,+DAAwB,CAAC,wDAAiB,GAAG;AAChN,+BAA+B,+DAAwB,EAAE,kFAAkF,uFAAuF,EAAE;AACpO;AACA,KAAK,OAAO,uDAAS,EAAE;AACvB,KAAK,OAAO,wDAAU;AACtB;AACA;AACA,eAAe,OAAO,mDAAK,EAAE;AAC7B,iBAAiB,OAAO,mDAAK,EAAE;AAC/B,eAAe,OAAO,mDAAK,EAAE;AAC7B,gBAAgB,OAAO,mDAAK,EAAE;AAC9B;;AAEA;AACA;AACA;AACA,8BAA8B,0DAAY;AAC1C,8BAA8B,0DAAY;AAC1C;AACA;AACA,8BAA8B,2CAA2C;AACzE;AACA;AACA,8BAA8B,gBAAgB;AAC9C;AACA;AACA,sEAAsE,wCAAwC,+DAAwB,CAAC,wDAAiB,GAAG;AAC3J,4BAA4B,+DAAwB,EAAE,6EAA6E,qDAAqD,EAAE;AAC1L;AACA,KAAK,OAAO,wDAAU;AACtB;AACA;AACA,kBAAkB,OAAO,oDAAM,EAAE;AACjC,kBAAkB,OAAO,oDAAM,EAAE;AACjC;;AAEA;AACA;AACA;AACA,sCAAsC,4CAAO;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,+CAAU;AACzC;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,+CAAU;AACzC;AACA,SAAS;AACT;AACA;AACA;AACA,4DAA4D,qCAAqC;AACjG,wBAAwB,wEAAkB,EAAE,8CAA8C,8BAA8B,EAAE,8CAA8C;AACxK;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,4CAAO;AACpC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,4CAAO;AACrC,iCAAiC,0DAAY;AAC7C,qCAAqC,0DAAY;AACjD,kCAAkC,0DAAY;AAC9C,iCAAiC,0DAAY;AAC7C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,gEAAS;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qBAAqB;AACrB;AACA,aAAa;AACb;AACA;AACA,kBAAkB,gEAAS;AAC3B;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,+BAA+B,+CAAU;AACzC;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,uDAAuD;AACrF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8BAA8B,uDAAuD;AACrF;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qCAAqC,uDAAuD;AAC5F;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,uDAAuD;AACxF;AACA;AACA;AACA;AACA;AACA,kCAAkC,uDAAuD;AACzF;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,uDAAuD;AACxF;AACA;AACA,wBAAwB,+CAAU;AAClC;AACA,SAAS;AACT;AACA;AACA;AACA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AAoB;AAC5D;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,0DAAY;AAC7C;AACA;AACA;AACA,6BAA6B,4CAAO;AACpC;AACA,yBAAyB,yEAAiB;AAC1C;AACA;AACA,sBAAsB,2CAA2C;AACjE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT,gCAAgC,gEAAS;AACzC;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA,iBAAiB;AACjB,aAAa;AACb,SAAS;AACT;AACA;AACA;AACA;AACA,2BAA2B,6BAA6B;AACxD;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,8DAA8D,oCAAoC,+DAAwB,CAAC,uDAAgB,GAAG,+DAAwB,CAAC,wDAAiB,GAAG,+DAAwB,sBAAsB,+DAAwB,CAAC,8DAAuB,GAAG,+DAAwB,0BAA0B,+DAAwB,iBAAiB,+DAAwB,CAAC,yDAAW,GAAG;AAC9Z,wBAAwB,+DAAwB,EAAE,uEAAuE,uQAAuQ,YAAY,6GAA6G,wCAAwC,kEAA2B,GAAG;AAC/jB;AACA,KAAK,OAAO,uDAAS,EAAE;AACvB,KAAK,OAAO,wDAAU,EAAE;AACxB,KAAK,2BAA2B;AAChC,KAAK,OAAO,8DAAgB,EAAE;AAC9B,KAAK,+BAA+B;AACpC,KAAK,sBAAsB;AAC3B,KAAK,6BAA6B,OAAO,oDAAM,SAAS,yDAAW,IA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","file":"landing-page-landing-page-module-es2015.js","sourcesContent":["import * as i0 from '@angular/core';\nimport { Injectable, Directive, TemplateRef, EventEmitter, Input, Output, ContentChildren, Component, ViewEncapsulation, ElementRef, NgZone, ChangeDetectorRef, Optional, Host, NgModule, ChangeDetectionStrategy, Renderer2, forwardRef, Inject, PLATFORM_ID, LOCALE_ID, ViewChild, ContentChild, ViewContainerRef, ComponentFactoryResolver, Injector, ApplicationRef, RendererFactory2, Attribute, ViewChildren, HostBinding, InjectionToken } from '@angular/core';\nimport * as i1 from '@angular/common';\nimport { CommonModule, isPlatformBrowser, getLocaleMonthNames, FormStyle, TranslationWidth, getLocaleDayNames, formatDate, DOCUMENT, getLocaleDayPeriods } from '@angular/common';\nimport { Observable, EMPTY, of, Subject, fromEvent, timer, race, BehaviorSubject, combineLatest, NEVER, zip, merge } from 'rxjs';\nimport { endWith, takeUntil, filter, take, map, startWith, distinctUntilChanged, switchMap, tap, withLatestFrom, delay, mergeMap, skip, share } from 'rxjs/operators';\nimport { NG_VALUE_ACCESSOR, NG_VALIDATORS, FormsModule } from '@angular/forms';\n\nimport * as ɵngcc0 from '@angular/core';\nimport * as ɵngcc1 from '@angular/common';\nimport * as ɵngcc2 from '@angular/forms';\n\nfunction NgbAccordion_ng_template_0_ng_template_2_Template(rf, ctx) { }\nfunction NgbAccordion_ng_template_0_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"button\", 3);\n ɵngcc0.ɵɵtext(1);\n ɵngcc0.ɵɵtemplate(2, NgbAccordion_ng_template_0_ng_template_2_Template, 0, 0, \"ng-template\", 4);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const panel_r3 = ctx.$implicit;\n ɵngcc0.ɵɵproperty(\"ngbPanelToggle\", panel_r3);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵtextInterpolate1(\" \", panel_r3.title, \"\");\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngTemplateOutlet\", panel_r3.titleTpl == null ? null : panel_r3.titleTpl.templateRef);\n} }\nfunction NgbAccordion_ng_template_2_ng_template_2_Template(rf, ctx) { }\nfunction NgbAccordion_ng_template_2_div_3_ng_template_2_Template(rf, ctx) { }\nfunction NgbAccordion_ng_template_2_div_3_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\", 8);\n ɵngcc0.ɵɵelementStart(1, \"div\", 9);\n ɵngcc0.ɵɵtemplate(2, NgbAccordion_ng_template_2_div_3_ng_template_2_Template, 0, 0, \"ng-template\", 4);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const panel_r5 = ɵngcc0.ɵɵnextContext().$implicit;\n ɵngcc0.ɵɵpropertyInterpolate(\"id\", panel_r5.id);\n ɵngcc0.ɵɵattribute(\"aria-labelledby\", panel_r5.id + \"-header\");\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"ngTemplateOutlet\", (panel_r5.contentTpl == null ? null : panel_r5.contentTpl.templateRef) || null);\n} }\nconst _c0 = function (a0, a1) { return { $implicit: a0, opened: a1 }; };\nfunction NgbAccordion_ng_template_2_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\");\n ɵngcc0.ɵɵelementStart(1, \"div\", 5);\n ɵngcc0.ɵɵtemplate(2, NgbAccordion_ng_template_2_ng_template_2_Template, 0, 0, \"ng-template\", 6);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵtemplate(3, NgbAccordion_ng_template_2_div_3_Template, 3, 3, \"div\", 7);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const panel_r5 = ctx.$implicit;\n const ctx_r2 = ɵngcc0.ɵɵnextContext();\n const _r0 = ɵngcc0.ɵɵreference(1);\n ɵngcc0.ɵɵclassMap(\"card \" + (panel_r5.cardClass || \"\"));\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵclassMap(\"card-header \" + (panel_r5.type ? \"bg-\" + panel_r5.type : ctx_r2.type ? \"bg-\" + ctx_r2.type : \"\"));\n ɵngcc0.ɵɵpropertyInterpolate1(\"id\", \"\", panel_r5.id, \"-header\");\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngTemplateOutlet\", (panel_r5.headerTpl == null ? null : panel_r5.headerTpl.templateRef) || _r0)(\"ngTemplateOutletContext\", ɵngcc0.ɵɵpureFunction2(8, _c0, panel_r5, panel_r5.isOpen));\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", !ctx_r2.destroyOnHide || panel_r5.isOpen || panel_r5.transitionRunning);\n} }\nfunction NgbAlert_button_1_Template(rf, ctx) { if (rf & 1) {\n const _r2 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"button\", 1);\n ɵngcc0.ɵɵlistener(\"click\", function NgbAlert_button_1_Template_button_click_0_listener() { ɵngcc0.ɵɵrestoreView(_r2); const ctx_r1 = ɵngcc0.ɵɵnextContext(); return ctx_r1.close(); });\n ɵngcc0.ɵɵelementStart(1, \"span\", 2);\n ɵngcc0.ɵɵtext(2, \"\\u00D7\");\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} }\nconst _c3 = [\"*\"];\nfunction NgbCarousel_li_1_Template(rf, ctx) { if (rf & 1) {\n const _r6 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"li\", 6);\n ɵngcc0.ɵɵlistener(\"click\", function NgbCarousel_li_1_Template_li_click_0_listener() { ɵngcc0.ɵɵrestoreView(_r6); const slide_r4 = ctx.$implicit; const ctx_r5 = ɵngcc0.ɵɵnextContext(); ctx_r5.focus(); return ctx_r5.select(slide_r4.id, ctx_r5.NgbSlideEventSource.INDICATOR); });\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const slide_r4 = ctx.$implicit;\n const ctx_r0 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵclassProp(\"active\", slide_r4.id === ctx_r0.activeId);\n ɵngcc0.ɵɵattribute(\"aria-labelledby\", \"slide-\" + slide_r4.id)(\"aria-controls\", \"slide-\" + slide_r4.id)(\"aria-selected\", slide_r4.id === ctx_r0.activeId);\n} }\nfunction NgbCarousel_div_3_ng_template_3_Template(rf, ctx) { }\nfunction NgbCarousel_div_3_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\", 7);\n ɵngcc0.ɵɵelementStart(1, \"span\", 8);\n ɵngcc0.ɵɵi18n(2, 9);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵtemplate(3, NgbCarousel_div_3_ng_template_3_Template, 0, 0, \"ng-template\", 10);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const slide_r7 = ctx.$implicit;\n const i_r8 = ctx.index;\n const c_r9 = ctx.count;\n ɵngcc0.ɵɵproperty(\"id\", \"slide-\" + slide_r7.id);\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵi18nExp(i_r8 + 1)(c_r9);\n ɵngcc0.ɵɵi18nApply(2);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngTemplateOutlet\", slide_r7.tplRef);\n} }\nfunction NgbCarousel_a_4_Template(rf, ctx) { if (rf & 1) {\n const _r12 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"a\", 11);\n ɵngcc0.ɵɵlistener(\"click\", function NgbCarousel_a_4_Template_a_click_0_listener() { ɵngcc0.ɵɵrestoreView(_r12); const ctx_r11 = ɵngcc0.ɵɵnextContext(); return ctx_r11.arrowLeft(); });\n ɵngcc0.ɵɵelement(1, \"span\", 12);\n ɵngcc0.ɵɵelementStart(2, \"span\", 8);\n ɵngcc0.ɵɵi18n(3, 13);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} }\nfunction NgbCarousel_a_5_Template(rf, ctx) { if (rf & 1) {\n const _r14 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"a\", 14);\n ɵngcc0.ɵɵlistener(\"click\", function NgbCarousel_a_5_Template_a_click_0_listener() { ɵngcc0.ɵɵrestoreView(_r14); const ctx_r13 = ɵngcc0.ɵɵnextContext(); return ctx_r13.arrowRight(); });\n ɵngcc0.ɵɵelement(1, \"span\", 15);\n ɵngcc0.ɵɵelementStart(2, \"span\", 8);\n ɵngcc0.ɵɵi18n(3, 16);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} }\nconst _c10 = [\"defaultDayTemplate\"];\nconst _c11 = [\"content\"];\nfunction NgbDatepicker_ng_template_0_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelement(0, \"div\", 7);\n} if (rf & 2) {\n const date_r8 = ctx.date;\n const currentMonth_r9 = ctx.currentMonth;\n const selected_r10 = ctx.selected;\n const disabled_r11 = ctx.disabled;\n const focused_r12 = ctx.focused;\n ɵngcc0.ɵɵproperty(\"date\", date_r8)(\"currentMonth\", currentMonth_r9)(\"selected\", selected_r10)(\"disabled\", disabled_r11)(\"focused\", focused_r12);\n} }\nfunction NgbDatepicker_ng_template_2_div_0_div_1_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\", 12);\n ɵngcc0.ɵɵtext(1);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const month_r14 = ɵngcc0.ɵɵnextContext().$implicit;\n const ctx_r16 = ɵngcc0.ɵɵnextContext(2);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵtextInterpolate1(\" \", ctx_r16.i18n.getMonthLabel(month_r14.firstDate), \" \");\n} }\nfunction NgbDatepicker_ng_template_2_div_0_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\", 9);\n ɵngcc0.ɵɵtemplate(1, NgbDatepicker_ng_template_2_div_0_div_1_Template, 2, 1, \"div\", 10);\n ɵngcc0.ɵɵelement(2, \"ngb-datepicker-month\", 11);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const month_r14 = ctx.$implicit;\n const ctx_r13 = ɵngcc0.ɵɵnextContext(2);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx_r13.navigation === \"none\" || ctx_r13.displayMonths > 1 && ctx_r13.navigation === \"select\");\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"month\", month_r14.firstDate);\n} }\nfunction NgbDatepicker_ng_template_2_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵtemplate(0, NgbDatepicker_ng_template_2_div_0_Template, 3, 2, \"div\", 8);\n} if (rf & 2) {\n const ctx_r3 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵproperty(\"ngForOf\", ctx_r3.model.months);\n} }\nfunction NgbDatepicker_ngb_datepicker_navigation_5_Template(rf, ctx) { if (rf & 1) {\n const _r19 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"ngb-datepicker-navigation\", 13);\n ɵngcc0.ɵɵlistener(\"navigate\", function NgbDatepicker_ngb_datepicker_navigation_5_Template_ngb_datepicker_navigation_navigate_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r19); const ctx_r18 = ɵngcc0.ɵɵnextContext(); return ctx_r18.onNavigateEvent($event); })(\"select\", function NgbDatepicker_ngb_datepicker_navigation_5_Template_ngb_datepicker_navigation_select_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r19); const ctx_r20 = ɵngcc0.ɵɵnextContext(); return ctx_r20.onNavigateDateSelect($event); });\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r4 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵproperty(\"date\", ctx_r4.model.firstDate)(\"months\", ctx_r4.model.months)(\"disabled\", ctx_r4.model.disabled)(\"showSelect\", ctx_r4.model.navigation === \"select\")(\"prevDisabled\", ctx_r4.model.prevDisabled)(\"nextDisabled\", ctx_r4.model.nextDisabled)(\"selectBoxes\", ctx_r4.model.selectBoxes);\n} }\nfunction NgbDatepicker_ng_template_8_Template(rf, ctx) { }\nfunction NgbDatepicker_ng_template_9_Template(rf, ctx) { }\nfunction NgbDatepickerMonth_div_0_div_1_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\", 5);\n ɵngcc0.ɵɵtext(1);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r2 = ɵngcc0.ɵɵnextContext(2);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵtextInterpolate(ctx_r2.i18n.getWeekLabel());\n} }\nfunction NgbDatepickerMonth_div_0_div_2_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\", 6);\n ɵngcc0.ɵɵtext(1);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const weekday_r4 = ctx.$implicit;\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵtextInterpolate(weekday_r4);\n} }\nfunction NgbDatepickerMonth_div_0_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\", 2);\n ɵngcc0.ɵɵtemplate(1, NgbDatepickerMonth_div_0_div_1_Template, 2, 1, \"div\", 3);\n ɵngcc0.ɵɵtemplate(2, NgbDatepickerMonth_div_0_div_2_Template, 2, 1, \"div\", 4);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r0 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx_r0.datepicker.showWeekNumbers);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngForOf\", ctx_r0.viewModel.weekdays);\n} }\nfunction NgbDatepickerMonth_ng_template_1_div_0_div_1_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\", 11);\n ɵngcc0.ɵɵtext(1);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const week_r5 = ɵngcc0.ɵɵnextContext(2).$implicit;\n const ctx_r7 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵtextInterpolate(ctx_r7.i18n.getWeekNumerals(week_r5.number));\n} }\nfunction NgbDatepickerMonth_ng_template_1_div_0_div_2_ng_template_1_ng_template_0_Template(rf, ctx) { }\nfunction NgbDatepickerMonth_ng_template_1_div_0_div_2_ng_template_1_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵtemplate(0, NgbDatepickerMonth_ng_template_1_div_0_div_2_ng_template_1_ng_template_0_Template, 0, 0, \"ng-template\", 14);\n} if (rf & 2) {\n const day_r10 = ɵngcc0.ɵɵnextContext().$implicit;\n const ctx_r11 = ɵngcc0.ɵɵnextContext(3);\n ɵngcc0.ɵɵproperty(\"ngTemplateOutlet\", ctx_r11.datepicker.dayTemplate)(\"ngTemplateOutletContext\", day_r10.context);\n} }\nfunction NgbDatepickerMonth_ng_template_1_div_0_div_2_Template(rf, ctx) { if (rf & 1) {\n const _r15 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"div\", 12);\n ɵngcc0.ɵɵlistener(\"click\", function NgbDatepickerMonth_ng_template_1_div_0_div_2_Template_div_click_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r15); const day_r10 = ctx.$implicit; const ctx_r14 = ɵngcc0.ɵɵnextContext(3); ctx_r14.doSelect(day_r10); return $event.preventDefault(); });\n ɵngcc0.ɵɵtemplate(1, NgbDatepickerMonth_ng_template_1_div_0_div_2_ng_template_1_Template, 1, 2, \"ng-template\", 13);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const day_r10 = ctx.$implicit;\n ɵngcc0.ɵɵclassProp(\"disabled\", day_r10.context.disabled)(\"hidden\", day_r10.hidden)(\"ngb-dp-today\", day_r10.context.today);\n ɵngcc0.ɵɵproperty(\"tabindex\", day_r10.tabindex);\n ɵngcc0.ɵɵattribute(\"aria-label\", day_r10.ariaLabel);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", !day_r10.hidden);\n} }\nfunction NgbDatepickerMonth_ng_template_1_div_0_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\", 8);\n ɵngcc0.ɵɵtemplate(1, NgbDatepickerMonth_ng_template_1_div_0_div_1_Template, 2, 1, \"div\", 9);\n ɵngcc0.ɵɵtemplate(2, NgbDatepickerMonth_ng_template_1_div_0_div_2_Template, 2, 9, \"div\", 10);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const week_r5 = ɵngcc0.ɵɵnextContext().$implicit;\n const ctx_r6 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx_r6.datepicker.showWeekNumbers);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngForOf\", week_r5.days);\n} }\nfunction NgbDatepickerMonth_ng_template_1_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵtemplate(0, NgbDatepickerMonth_ng_template_1_div_0_Template, 3, 2, \"div\", 7);\n} if (rf & 2) {\n const week_r5 = ctx.$implicit;\n ɵngcc0.ɵɵproperty(\"ngIf\", !week_r5.collapsed);\n} }\nfunction NgbDatepickerNavigation_ngb_datepicker_navigation_select_3_Template(rf, ctx) { if (rf & 1) {\n const _r3 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"ngb-datepicker-navigation-select\", 7);\n ɵngcc0.ɵɵlistener(\"select\", function NgbDatepickerNavigation_ngb_datepicker_navigation_select_3_Template_ngb_datepicker_navigation_select_select_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r3); const ctx_r2 = ɵngcc0.ɵɵnextContext(); return ctx_r2.select.emit($event); });\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r0 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵproperty(\"date\", ctx_r0.date)(\"disabled\", ctx_r0.disabled)(\"months\", ctx_r0.selectBoxes.months)(\"years\", ctx_r0.selectBoxes.years);\n} }\nfunction NgbDatepickerNavigation_4_ng_template_0_div_0_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelement(0, \"div\", 0);\n} }\nfunction NgbDatepickerNavigation_4_ng_template_0_div_3_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelement(0, \"div\", 0);\n} }\nfunction NgbDatepickerNavigation_4_ng_template_0_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵtemplate(0, NgbDatepickerNavigation_4_ng_template_0_div_0_Template, 1, 0, \"div\", 9);\n ɵngcc0.ɵɵelementStart(1, \"div\", 10);\n ɵngcc0.ɵɵtext(2);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵtemplate(3, NgbDatepickerNavigation_4_ng_template_0_div_3_Template, 1, 0, \"div\", 9);\n} if (rf & 2) {\n const month_r5 = ctx.$implicit;\n const i_r6 = ctx.index;\n const ctx_r4 = ɵngcc0.ɵɵnextContext(2);\n ɵngcc0.ɵɵproperty(\"ngIf\", i_r6 > 0);\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵtextInterpolate1(\" \", ctx_r4.i18n.getMonthLabel(month_r5.firstDate), \" \");\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", i_r6 !== ctx_r4.months.length - 1);\n} }\nfunction NgbDatepickerNavigation_4_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵtemplate(0, NgbDatepickerNavigation_4_ng_template_0_Template, 4, 3, \"ng-template\", 8);\n} if (rf & 2) {\n const ctx_r1 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵproperty(\"ngForOf\", ctx_r1.months);\n} }\nconst _c20 = [\"ngbDatepickerDayView\", \"\"];\nconst _c21 = [\"month\"];\nconst _c22 = [\"year\"];\nfunction NgbDatepickerNavigationSelect_option_2_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"option\", 5);\n ɵngcc0.ɵɵtext(1);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const m_r4 = ctx.$implicit;\n const ctx_r1 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵproperty(\"value\", m_r4);\n ɵngcc0.ɵɵattribute(\"aria-label\", ctx_r1.i18n.getMonthFullName(m_r4, ctx_r1.date == null ? null : ctx_r1.date.year));\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵtextInterpolate(ctx_r1.i18n.getMonthShortName(m_r4, ctx_r1.date == null ? null : ctx_r1.date.year));\n} }\nfunction NgbDatepickerNavigationSelect_option_5_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"option\", 5);\n ɵngcc0.ɵɵtext(1);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const y_r5 = ctx.$implicit;\n const ctx_r3 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵproperty(\"value\", y_r5);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵtextInterpolate(ctx_r3.i18n.getYearNumerals(y_r5));\n} }\nconst _c31 = [\"dialog\"];\nconst _c32 = [\"ngbNavOutlet\", \"\"];\nfunction NgbNavOutlet_ng_template_0_div_0_ng_template_1_Template(rf, ctx) { }\nconst _c33 = function (a0) { return { $implicit: a0 }; };\nfunction NgbNavOutlet_ng_template_0_div_0_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\", 2);\n ɵngcc0.ɵɵtemplate(1, NgbNavOutlet_ng_template_0_div_0_ng_template_1_Template, 0, 0, \"ng-template\", 3);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const item_r1 = ɵngcc0.ɵɵnextContext().$implicit;\n const ctx_r2 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵproperty(\"item\", item_r1)(\"nav\", ctx_r2.nav)(\"role\", ctx_r2.paneRole);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngTemplateOutlet\", (item_r1.contentTpl == null ? null : item_r1.contentTpl.templateRef) || null)(\"ngTemplateOutletContext\", ɵngcc0.ɵɵpureFunction1(5, _c33, item_r1.active || ctx_r2.isPanelTransitioning(item_r1)));\n} }\nfunction NgbNavOutlet_ng_template_0_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵtemplate(0, NgbNavOutlet_ng_template_0_div_0_Template, 2, 7, \"div\", 1);\n} if (rf & 2) {\n const item_r1 = ctx.$implicit;\n const ctx_r0 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵproperty(\"ngIf\", item_r1.isPanelInDom() || ctx_r0.isPanelTransitioning(item_r1));\n} }\nfunction NgbPagination_ng_template_0_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"span\", 9);\n ɵngcc0.ɵɵi18n(1, 10);\n ɵngcc0.ɵɵelementEnd();\n} }\nfunction NgbPagination_ng_template_2_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"span\", 9);\n ɵngcc0.ɵɵi18n(1, 11);\n ɵngcc0.ɵɵelementEnd();\n} }\nfunction NgbPagination_ng_template_4_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"span\", 9);\n ɵngcc0.ɵɵi18n(1, 12);\n ɵngcc0.ɵɵelementEnd();\n} }\nfunction NgbPagination_ng_template_6_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"span\", 9);\n ɵngcc0.ɵɵi18n(1, 13);\n ɵngcc0.ɵɵelementEnd();\n} }\nfunction NgbPagination_ng_template_8_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵtext(0, \"...\");\n} }\nfunction NgbPagination_ng_template_10_span_1_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"span\", 15);\n ɵngcc0.ɵɵtext(1, \"(current)\");\n ɵngcc0.ɵɵelementEnd();\n} }\nfunction NgbPagination_ng_template_10_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵtext(0);\n ɵngcc0.ɵɵtemplate(1, NgbPagination_ng_template_10_span_1_Template, 2, 0, \"span\", 14);\n} if (rf & 2) {\n const page_r19 = ctx.$implicit;\n const currentPage_r20 = ctx.currentPage;\n ɵngcc0.ɵɵtextInterpolate1(\" \", page_r19, \" \");\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", page_r19 === currentPage_r20);\n} }\nfunction NgbPagination_ng_template_12_li_0_a_1_ng_template_1_Template(rf, ctx) { }\nconst _c42 = function (a1) { return { disabled: true, currentPage: a1 }; };\nfunction NgbPagination_ng_template_12_li_0_a_1_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"a\", 20);\n ɵngcc0.ɵɵtemplate(1, NgbPagination_ng_template_12_li_0_a_1_ng_template_1_Template, 0, 0, \"ng-template\", 8);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const page_r22 = ɵngcc0.ɵɵnextContext(2).$implicit;\n const ctx_r27 = ɵngcc0.ɵɵnextContext();\n const _r8 = ɵngcc0.ɵɵreference(9);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngTemplateOutlet\", (ctx_r27.tplEllipsis == null ? null : ctx_r27.tplEllipsis.templateRef) || _r8)(\"ngTemplateOutletContext\", ɵngcc0.ɵɵpureFunction1(2, _c42, page_r22));\n} }\nfunction NgbPagination_ng_template_12_li_0_a_2_ng_template_1_Template(rf, ctx) { }\nconst _c43 = function (a0, a1, a2) { return { disabled: a0, $implicit: a1, currentPage: a2 }; };\nfunction NgbPagination_ng_template_12_li_0_a_2_Template(rf, ctx) { if (rf & 1) {\n const _r34 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"a\", 21);\n ɵngcc0.ɵɵlistener(\"click\", function NgbPagination_ng_template_12_li_0_a_2_Template_a_click_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r34); const pageNumber_r26 = ɵngcc0.ɵɵnextContext().$implicit; const ctx_r32 = ɵngcc0.ɵɵnextContext(2); ctx_r32.selectPage(pageNumber_r26); return $event.preventDefault(); });\n ɵngcc0.ɵɵtemplate(1, NgbPagination_ng_template_12_li_0_a_2_ng_template_1_Template, 0, 0, \"ng-template\", 8);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const pageNumber_r26 = ɵngcc0.ɵɵnextContext().$implicit;\n const ctx_r35 = ɵngcc0.ɵɵnextContext();\n const disabled_r24 = ctx_r35.disabled;\n const page_r22 = ctx_r35.$implicit;\n const ctx_r28 = ɵngcc0.ɵɵnextContext();\n const _r10 = ɵngcc0.ɵɵreference(11);\n ɵngcc0.ɵɵattribute(\"tabindex\", disabled_r24 ? \"-1\" : null)(\"aria-disabled\", disabled_r24 ? \"true\" : null);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngTemplateOutlet\", (ctx_r28.tplNumber == null ? null : ctx_r28.tplNumber.templateRef) || _r10)(\"ngTemplateOutletContext\", ɵngcc0.ɵɵpureFunction3(4, _c43, disabled_r24, pageNumber_r26, page_r22));\n} }\nfunction NgbPagination_ng_template_12_li_0_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"li\", 17);\n ɵngcc0.ɵɵtemplate(1, NgbPagination_ng_template_12_li_0_a_1_Template, 2, 4, \"a\", 18);\n ɵngcc0.ɵɵtemplate(2, NgbPagination_ng_template_12_li_0_a_2_Template, 2, 8, \"a\", 19);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const pageNumber_r26 = ctx.$implicit;\n const ctx_r37 = ɵngcc0.ɵɵnextContext();\n const page_r22 = ctx_r37.$implicit;\n const disabled_r24 = ctx_r37.disabled;\n const ctx_r25 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵclassProp(\"active\", pageNumber_r26 === page_r22)(\"disabled\", ctx_r25.isEllipsis(pageNumber_r26) || disabled_r24);\n ɵngcc0.ɵɵattribute(\"aria-current\", pageNumber_r26 === page_r22 ? \"page\" : null);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx_r25.isEllipsis(pageNumber_r26));\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", !ctx_r25.isEllipsis(pageNumber_r26));\n} }\nfunction NgbPagination_ng_template_12_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵtemplate(0, NgbPagination_ng_template_12_li_0_Template, 3, 7, \"li\", 16);\n} if (rf & 2) {\n const pages_r23 = ctx.pages;\n ɵngcc0.ɵɵproperty(\"ngForOf\", pages_r23);\n} }\nfunction NgbPagination_li_15_ng_template_2_Template(rf, ctx) { }\nconst _c46 = function (a0, a1) { return { disabled: a0, currentPage: a1 }; };\nfunction NgbPagination_li_15_Template(rf, ctx) { if (rf & 1) {\n const _r40 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"li\", 17);\n ɵngcc0.ɵɵelementStart(1, \"a\", 22);\n ɵngcc0.ɵɵlistener(\"click\", function NgbPagination_li_15_Template_a_click_1_listener($event) { ɵngcc0.ɵɵrestoreView(_r40); const ctx_r39 = ɵngcc0.ɵɵnextContext(); ctx_r39.selectPage(1); return $event.preventDefault(); });\n ɵngcc0.ɵɵtemplate(2, NgbPagination_li_15_ng_template_2_Template, 0, 0, \"ng-template\", 8);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r14 = ɵngcc0.ɵɵnextContext();\n const _r0 = ɵngcc0.ɵɵreference(1);\n ɵngcc0.ɵɵclassProp(\"disabled\", ctx_r14.previousDisabled());\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵattribute(\"tabindex\", ctx_r14.previousDisabled() ? \"-1\" : null)(\"aria-disabled\", ctx_r14.previousDisabled() ? \"true\" : null);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngTemplateOutlet\", (ctx_r14.tplFirst == null ? null : ctx_r14.tplFirst.templateRef) || _r0)(\"ngTemplateOutletContext\", ɵngcc0.ɵɵpureFunction2(6, _c46, ctx_r14.previousDisabled(), ctx_r14.page));\n} }\nfunction NgbPagination_li_16_ng_template_2_Template(rf, ctx) { }\nconst _c49 = function (a0) { return { disabled: a0 }; };\nfunction NgbPagination_li_16_Template(rf, ctx) { if (rf & 1) {\n const _r43 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"li\", 17);\n ɵngcc0.ɵɵelementStart(1, \"a\", 23);\n ɵngcc0.ɵɵlistener(\"click\", function NgbPagination_li_16_Template_a_click_1_listener($event) { ɵngcc0.ɵɵrestoreView(_r43); const ctx_r42 = ɵngcc0.ɵɵnextContext(); ctx_r42.selectPage(ctx_r42.page - 1); return $event.preventDefault(); });\n ɵngcc0.ɵɵtemplate(2, NgbPagination_li_16_ng_template_2_Template, 0, 0, \"ng-template\", 8);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r15 = ɵngcc0.ɵɵnextContext();\n const _r2 = ɵngcc0.ɵɵreference(3);\n ɵngcc0.ɵɵclassProp(\"disabled\", ctx_r15.previousDisabled());\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵattribute(\"tabindex\", ctx_r15.previousDisabled() ? \"-1\" : null)(\"aria-disabled\", ctx_r15.previousDisabled() ? \"true\" : null);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngTemplateOutlet\", (ctx_r15.tplPrevious == null ? null : ctx_r15.tplPrevious.templateRef) || _r2)(\"ngTemplateOutletContext\", ɵngcc0.ɵɵpureFunction1(6, _c49, ctx_r15.previousDisabled()));\n} }\nfunction NgbPagination_ng_template_17_Template(rf, ctx) { }\nfunction NgbPagination_li_18_ng_template_2_Template(rf, ctx) { }\nfunction NgbPagination_li_18_Template(rf, ctx) { if (rf & 1) {\n const _r46 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"li\", 17);\n ɵngcc0.ɵɵelementStart(1, \"a\", 24);\n ɵngcc0.ɵɵlistener(\"click\", function NgbPagination_li_18_Template_a_click_1_listener($event) { ɵngcc0.ɵɵrestoreView(_r46); const ctx_r45 = ɵngcc0.ɵɵnextContext(); ctx_r45.selectPage(ctx_r45.page + 1); return $event.preventDefault(); });\n ɵngcc0.ɵɵtemplate(2, NgbPagination_li_18_ng_template_2_Template, 0, 0, \"ng-template\", 8);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r17 = ɵngcc0.ɵɵnextContext();\n const _r4 = ɵngcc0.ɵɵreference(5);\n ɵngcc0.ɵɵclassProp(\"disabled\", ctx_r17.nextDisabled());\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵattribute(\"tabindex\", ctx_r17.nextDisabled() ? \"-1\" : null)(\"aria-disabled\", ctx_r17.nextDisabled() ? \"true\" : null);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngTemplateOutlet\", (ctx_r17.tplNext == null ? null : ctx_r17.tplNext.templateRef) || _r4)(\"ngTemplateOutletContext\", ɵngcc0.ɵɵpureFunction2(6, _c46, ctx_r17.nextDisabled(), ctx_r17.page));\n} }\nfunction NgbPagination_li_19_ng_template_2_Template(rf, ctx) { }\nfunction NgbPagination_li_19_Template(rf, ctx) { if (rf & 1) {\n const _r49 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"li\", 17);\n ɵngcc0.ɵɵelementStart(1, \"a\", 25);\n ɵngcc0.ɵɵlistener(\"click\", function NgbPagination_li_19_Template_a_click_1_listener($event) { ɵngcc0.ɵɵrestoreView(_r49); const ctx_r48 = ɵngcc0.ɵɵnextContext(); ctx_r48.selectPage(ctx_r48.pageCount); return $event.preventDefault(); });\n ɵngcc0.ɵɵtemplate(2, NgbPagination_li_19_ng_template_2_Template, 0, 0, \"ng-template\", 8);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r18 = ɵngcc0.ɵɵnextContext();\n const _r6 = ɵngcc0.ɵɵreference(7);\n ɵngcc0.ɵɵclassProp(\"disabled\", ctx_r18.nextDisabled());\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵattribute(\"tabindex\", ctx_r18.nextDisabled() ? \"-1\" : null)(\"aria-disabled\", ctx_r18.nextDisabled() ? \"true\" : null);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngTemplateOutlet\", (ctx_r18.tplLast == null ? null : ctx_r18.tplLast.templateRef) || _r6)(\"ngTemplateOutletContext\", ɵngcc0.ɵɵpureFunction2(6, _c46, ctx_r18.nextDisabled(), ctx_r18.page));\n} }\nconst _c54 = function (a0, a1, a2) { return { $implicit: a0, pages: a1, disabled: a2 }; };\nfunction NgbPopoverWindow_h3_1_ng_template_1_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵtext(0);\n} if (rf & 2) {\n const ctx_r2 = ɵngcc0.ɵɵnextContext(2);\n ɵngcc0.ɵɵtextInterpolate(ctx_r2.title);\n} }\nfunction NgbPopoverWindow_h3_1_ng_template_3_Template(rf, ctx) { }\nfunction NgbPopoverWindow_h3_1_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"h3\", 3);\n ɵngcc0.ɵɵtemplate(1, NgbPopoverWindow_h3_1_ng_template_1_Template, 1, 1, \"ng-template\", null, 4, ɵngcc0.ɵɵtemplateRefExtractor);\n ɵngcc0.ɵɵtemplate(3, NgbPopoverWindow_h3_1_ng_template_3_Template, 0, 0, \"ng-template\", 5);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const _r1 = ɵngcc0.ɵɵreference(2);\n const ctx_r0 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(3);\n ɵngcc0.ɵɵproperty(\"ngTemplateOutlet\", ctx_r0.isTitleTemplate() ? ctx_r0.title : _r1)(\"ngTemplateOutletContext\", ctx_r0.context);\n} }\nfunction NgbProgressbar_span_1_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"span\");\n ɵngcc0.ɵɵi18n(1, 2);\n ɵngcc0.ɵɵpipe(2, \"percent\");\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r0 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵi18nExp(ɵngcc0.ɵɵpipeBind1(2, 1, ctx_r0.getValue() / ctx_r0.max));\n ɵngcc0.ɵɵi18nApply(1);\n} }\nfunction NgbRating_ng_template_0_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵtext(0);\n} if (rf & 2) {\n const fill_r3 = ctx.fill;\n ɵngcc0.ɵɵtextInterpolate(fill_r3 === 100 ? \"\\u2605\" : \"\\u2606\");\n} }\nfunction NgbRating_ng_template_2_ng_template_3_Template(rf, ctx) { }\nfunction NgbRating_ng_template_2_Template(rf, ctx) { if (rf & 1) {\n const _r7 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"span\", 2);\n ɵngcc0.ɵɵtext(1);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(2, \"span\", 3);\n ɵngcc0.ɵɵlistener(\"mouseenter\", function NgbRating_ng_template_2_Template_span_mouseenter_2_listener() { ɵngcc0.ɵɵrestoreView(_r7); const index_r4 = ctx.index; const ctx_r6 = ɵngcc0.ɵɵnextContext(); return ctx_r6.enter(index_r4 + 1); })(\"click\", function NgbRating_ng_template_2_Template_span_click_2_listener() { ɵngcc0.ɵɵrestoreView(_r7); const index_r4 = ctx.index; const ctx_r8 = ɵngcc0.ɵɵnextContext(); return ctx_r8.handleClick(index_r4 + 1); });\n ɵngcc0.ɵɵtemplate(3, NgbRating_ng_template_2_ng_template_3_Template, 0, 0, \"ng-template\", 4);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const index_r4 = ctx.index;\n const ctx_r2 = ɵngcc0.ɵɵnextContext();\n const _r0 = ɵngcc0.ɵɵreference(1);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵtextInterpolate1(\"(\", index_r4 < ctx_r2.nextRate ? \"*\" : \" \", \")\");\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵstyleProp(\"cursor\", ctx_r2.isInteractive() ? \"pointer\" : \"default\");\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngTemplateOutlet\", ctx_r2.starTemplate || ctx_r2.starTemplateFromContent || _r0)(\"ngTemplateOutletContext\", ctx_r2.contexts[index_r4]);\n} }\nfunction NgbTimepicker_button_3_Template(rf, ctx) { if (rf & 1) {\n const _r9 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"button\", 11);\n ɵngcc0.ɵɵlistener(\"click\", function NgbTimepicker_button_3_Template_button_click_0_listener() { ɵngcc0.ɵɵrestoreView(_r9); const ctx_r8 = ɵngcc0.ɵɵnextContext(); return ctx_r8.changeHour(ctx_r8.hourStep); });\n ɵngcc0.ɵɵelement(1, \"span\", 12);\n ɵngcc0.ɵɵelementStart(2, \"span\", 13);\n ɵngcc0.ɵɵi18n(3, 14);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r0 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵclassProp(\"btn-sm\", ctx_r0.isSmallSize)(\"btn-lg\", ctx_r0.isLargeSize)(\"disabled\", ctx_r0.disabled);\n ɵngcc0.ɵɵproperty(\"disabled\", ctx_r0.disabled);\n} }\nfunction NgbTimepicker_button_5_Template(rf, ctx) { if (rf & 1) {\n const _r11 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"button\", 11);\n ɵngcc0.ɵɵlistener(\"click\", function NgbTimepicker_button_5_Template_button_click_0_listener() { ɵngcc0.ɵɵrestoreView(_r11); const ctx_r10 = ɵngcc0.ɵɵnextContext(); return ctx_r10.changeHour(-ctx_r10.hourStep); });\n ɵngcc0.ɵɵelement(1, \"span\", 15);\n ɵngcc0.ɵɵelementStart(2, \"span\", 13);\n ɵngcc0.ɵɵi18n(3, 16);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r1 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵclassProp(\"btn-sm\", ctx_r1.isSmallSize)(\"btn-lg\", ctx_r1.isLargeSize)(\"disabled\", ctx_r1.disabled);\n ɵngcc0.ɵɵproperty(\"disabled\", ctx_r1.disabled);\n} }\nfunction NgbTimepicker_button_9_Template(rf, ctx) { if (rf & 1) {\n const _r13 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"button\", 11);\n ɵngcc0.ɵɵlistener(\"click\", function NgbTimepicker_button_9_Template_button_click_0_listener() { ɵngcc0.ɵɵrestoreView(_r13); const ctx_r12 = ɵngcc0.ɵɵnextContext(); return ctx_r12.changeMinute(ctx_r12.minuteStep); });\n ɵngcc0.ɵɵelement(1, \"span\", 12);\n ɵngcc0.ɵɵelementStart(2, \"span\", 13);\n ɵngcc0.ɵɵi18n(3, 17);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r2 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵclassProp(\"btn-sm\", ctx_r2.isSmallSize)(\"btn-lg\", ctx_r2.isLargeSize)(\"disabled\", ctx_r2.disabled);\n ɵngcc0.ɵɵproperty(\"disabled\", ctx_r2.disabled);\n} }\nfunction NgbTimepicker_button_11_Template(rf, ctx) { if (rf & 1) {\n const _r15 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"button\", 11);\n ɵngcc0.ɵɵlistener(\"click\", function NgbTimepicker_button_11_Template_button_click_0_listener() { ɵngcc0.ɵɵrestoreView(_r15); const ctx_r14 = ɵngcc0.ɵɵnextContext(); return ctx_r14.changeMinute(-ctx_r14.minuteStep); });\n ɵngcc0.ɵɵelement(1, \"span\", 15);\n ɵngcc0.ɵɵelementStart(2, \"span\", 13);\n ɵngcc0.ɵɵi18n(3, 18);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r3 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵclassProp(\"btn-sm\", ctx_r3.isSmallSize)(\"btn-lg\", ctx_r3.isLargeSize)(\"disabled\", ctx_r3.disabled);\n ɵngcc0.ɵɵproperty(\"disabled\", ctx_r3.disabled);\n} }\nfunction NgbTimepicker_div_12_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\", 5);\n ɵngcc0.ɵɵtext(1, \":\");\n ɵngcc0.ɵɵelementEnd();\n} }\nfunction NgbTimepicker_div_13_button_1_Template(rf, ctx) { if (rf & 1) {\n const _r19 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"button\", 11);\n ɵngcc0.ɵɵlistener(\"click\", function NgbTimepicker_div_13_button_1_Template_button_click_0_listener() { ɵngcc0.ɵɵrestoreView(_r19); const ctx_r18 = ɵngcc0.ɵɵnextContext(2); return ctx_r18.changeSecond(ctx_r18.secondStep); });\n ɵngcc0.ɵɵelement(1, \"span\", 12);\n ɵngcc0.ɵɵelementStart(2, \"span\", 13);\n ɵngcc0.ɵɵi18n(3, 21);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r16 = ɵngcc0.ɵɵnextContext(2);\n ɵngcc0.ɵɵclassProp(\"btn-sm\", ctx_r16.isSmallSize)(\"btn-lg\", ctx_r16.isLargeSize)(\"disabled\", ctx_r16.disabled);\n ɵngcc0.ɵɵproperty(\"disabled\", ctx_r16.disabled);\n} }\nfunction NgbTimepicker_div_13_button_3_Template(rf, ctx) { if (rf & 1) {\n const _r21 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"button\", 11);\n ɵngcc0.ɵɵlistener(\"click\", function NgbTimepicker_div_13_button_3_Template_button_click_0_listener() { ɵngcc0.ɵɵrestoreView(_r21); const ctx_r20 = ɵngcc0.ɵɵnextContext(2); return ctx_r20.changeSecond(-ctx_r20.secondStep); });\n ɵngcc0.ɵɵelement(1, \"span\", 15);\n ɵngcc0.ɵɵelementStart(2, \"span\", 13);\n ɵngcc0.ɵɵi18n(3, 22);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r17 = ɵngcc0.ɵɵnextContext(2);\n ɵngcc0.ɵɵclassProp(\"btn-sm\", ctx_r17.isSmallSize)(\"btn-lg\", ctx_r17.isLargeSize)(\"disabled\", ctx_r17.disabled);\n ɵngcc0.ɵɵproperty(\"disabled\", ctx_r17.disabled);\n} }\nfunction NgbTimepicker_div_13_Template(rf, ctx) { if (rf & 1) {\n const _r23 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"div\", 19);\n ɵngcc0.ɵɵtemplate(1, NgbTimepicker_div_13_button_1_Template, 4, 7, \"button\", 3);\n ɵngcc0.ɵɵelementStart(2, \"input\", 20);\n ɵngcc0.ɵɵlistener(\"change\", function NgbTimepicker_div_13_Template_input_change_2_listener($event) { ɵngcc0.ɵɵrestoreView(_r23); const ctx_r22 = ɵngcc0.ɵɵnextContext(); return ctx_r22.updateSecond($event.target.value); })(\"blur\", function NgbTimepicker_div_13_Template_input_blur_2_listener() { ɵngcc0.ɵɵrestoreView(_r23); const ctx_r24 = ɵngcc0.ɵɵnextContext(); return ctx_r24.handleBlur(); })(\"input\", function NgbTimepicker_div_13_Template_input_input_2_listener($event) { ɵngcc0.ɵɵrestoreView(_r23); const ctx_r25 = ɵngcc0.ɵɵnextContext(); return ctx_r25.formatInput($event.target); })(\"keydown.ArrowUp\", function NgbTimepicker_div_13_Template_input_keydown_ArrowUp_2_listener($event) { ɵngcc0.ɵɵrestoreView(_r23); const ctx_r26 = ɵngcc0.ɵɵnextContext(); ctx_r26.changeSecond(ctx_r26.secondStep); return $event.preventDefault(); })(\"keydown.ArrowDown\", function NgbTimepicker_div_13_Template_input_keydown_ArrowDown_2_listener($event) { ɵngcc0.ɵɵrestoreView(_r23); const ctx_r27 = ɵngcc0.ɵɵnextContext(); ctx_r27.changeSecond(-ctx_r27.secondStep); return $event.preventDefault(); });\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵtemplate(3, NgbTimepicker_div_13_button_3_Template, 4, 7, \"button\", 3);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r5 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx_r5.spinners);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵclassProp(\"form-control-sm\", ctx_r5.isSmallSize)(\"form-control-lg\", ctx_r5.isLargeSize);\n ɵngcc0.ɵɵproperty(\"value\", ctx_r5.formatMinSec(ctx_r5.model == null ? null : ctx_r5.model.second))(\"readOnly\", ctx_r5.readonlyInputs)(\"disabled\", ctx_r5.disabled);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx_r5.spinners);\n} }\nfunction NgbTimepicker_div_14_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelement(0, \"div\", 5);\n} }\nfunction NgbTimepicker_div_15_ng_container_2_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementContainerStart(0);\n ɵngcc0.ɵɵi18n(1, 27);\n ɵngcc0.ɵɵelementContainerEnd();\n} if (rf & 2) {\n const ctx_r28 = ɵngcc0.ɵɵnextContext(2);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵi18nExp(ctx_r28.i18n.getAfternoonPeriod());\n ɵngcc0.ɵɵi18nApply(1);\n} }\nfunction NgbTimepicker_div_15_ng_template_3_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵi18n(0, 28);\n} if (rf & 2) {\n const ctx_r30 = ɵngcc0.ɵɵnextContext(2);\n ɵngcc0.ɵɵi18nExp(ctx_r30.i18n.getMorningPeriod());\n ɵngcc0.ɵɵi18nApply(0);\n} }\nfunction NgbTimepicker_div_15_Template(rf, ctx) { if (rf & 1) {\n const _r32 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"div\", 23);\n ɵngcc0.ɵɵelementStart(1, \"button\", 24);\n ɵngcc0.ɵɵlistener(\"click\", function NgbTimepicker_div_15_Template_button_click_1_listener() { ɵngcc0.ɵɵrestoreView(_r32); const ctx_r31 = ɵngcc0.ɵɵnextContext(); return ctx_r31.toggleMeridian(); });\n ɵngcc0.ɵɵtemplate(2, NgbTimepicker_div_15_ng_container_2_Template, 2, 1, \"ng-container\", 25);\n ɵngcc0.ɵɵtemplate(3, NgbTimepicker_div_15_ng_template_3_Template, 1, 1, \"ng-template\", null, 26, ɵngcc0.ɵɵtemplateRefExtractor);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const _r29 = ɵngcc0.ɵɵreference(4);\n const ctx_r7 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵclassProp(\"btn-sm\", ctx_r7.isSmallSize)(\"btn-lg\", ctx_r7.isLargeSize)(\"disabled\", ctx_r7.disabled);\n ɵngcc0.ɵɵproperty(\"disabled\", ctx_r7.disabled);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx_r7.model && ctx_r7.model.hour >= 12)(\"ngIfElse\", _r29);\n} }\nfunction NgbToast_ng_template_0_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"strong\", 3);\n ɵngcc0.ɵɵtext(1);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r1 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵtextInterpolate(ctx_r1.header);\n} }\nfunction NgbToast_ng_template_2_ng_template_1_Template(rf, ctx) { }\nfunction NgbToast_ng_template_2_Template(rf, ctx) { if (rf & 1) {\n const _r5 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"div\", 4);\n ɵngcc0.ɵɵtemplate(1, NgbToast_ng_template_2_ng_template_1_Template, 0, 0, \"ng-template\", 5);\n ɵngcc0.ɵɵelementStart(2, \"button\", 6);\n ɵngcc0.ɵɵlistener(\"click\", function NgbToast_ng_template_2_Template_button_click_2_listener() { ɵngcc0.ɵɵrestoreView(_r5); const ctx_r4 = ɵngcc0.ɵɵnextContext(); return ctx_r4.hide(); });\n ɵngcc0.ɵɵelementStart(3, \"span\", 7);\n ɵngcc0.ɵɵtext(4, \"\\u00D7\");\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r2 = ɵngcc0.ɵɵnextContext();\n const _r0 = ɵngcc0.ɵɵreference(1);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngTemplateOutlet\", ctx_r2.contentHeaderTpl || _r0);\n} }\nfunction NgbHighlight_ng_template_0_span_0_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"span\");\n ɵngcc0.ɵɵtext(1);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const part_r1 = ɵngcc0.ɵɵnextContext().$implicit;\n const ctx_r3 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵclassMap(ctx_r3.highlightClass);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵtextInterpolate(part_r1);\n} }\nfunction NgbHighlight_ng_template_0_ng_template_1_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵtext(0);\n} if (rf & 2) {\n const part_r1 = ɵngcc0.ɵɵnextContext().$implicit;\n ɵngcc0.ɵɵtextInterpolate(part_r1);\n} }\nfunction NgbHighlight_ng_template_0_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵtemplate(0, NgbHighlight_ng_template_0_span_0_Template, 2, 3, \"span\", 1);\n ɵngcc0.ɵɵtemplate(1, NgbHighlight_ng_template_0_ng_template_1_Template, 1, 1, \"ng-template\", null, 2, ɵngcc0.ɵɵtemplateRefExtractor);\n} if (rf & 2) {\n const isOdd_r2 = ctx.odd;\n const _r4 = ɵngcc0.ɵɵreference(2);\n ɵngcc0.ɵɵproperty(\"ngIf\", isOdd_r2)(\"ngIfElse\", _r4);\n} }\nfunction NgbTypeaheadWindow_ng_template_0_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelement(0, \"ngb-highlight\", 2);\n} if (rf & 2) {\n const result_r3 = ctx.result;\n const term_r4 = ctx.term;\n const formatter_r5 = ctx.formatter;\n ɵngcc0.ɵɵproperty(\"result\", formatter_r5(result_r3))(\"term\", term_r4);\n} }\nfunction NgbTypeaheadWindow_ng_template_2_ng_template_1_Template(rf, ctx) { }\nconst _c87 = function (a0, a1, a2) { return { result: a0, term: a1, formatter: a2 }; };\nfunction NgbTypeaheadWindow_ng_template_2_Template(rf, ctx) { if (rf & 1) {\n const _r10 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"button\", 3);\n ɵngcc0.ɵɵlistener(\"mouseenter\", function NgbTypeaheadWindow_ng_template_2_Template_button_mouseenter_0_listener() { ɵngcc0.ɵɵrestoreView(_r10); const idx_r7 = ctx.index; const ctx_r9 = ɵngcc0.ɵɵnextContext(); return ctx_r9.markActive(idx_r7); })(\"click\", function NgbTypeaheadWindow_ng_template_2_Template_button_click_0_listener() { ɵngcc0.ɵɵrestoreView(_r10); const result_r6 = ctx.$implicit; const ctx_r11 = ɵngcc0.ɵɵnextContext(); return ctx_r11.select(result_r6); });\n ɵngcc0.ɵɵtemplate(1, NgbTypeaheadWindow_ng_template_2_ng_template_1_Template, 0, 0, \"ng-template\", 4);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const result_r6 = ctx.$implicit;\n const idx_r7 = ctx.index;\n const ctx_r2 = ɵngcc0.ɵɵnextContext();\n const _r0 = ɵngcc0.ɵɵreference(1);\n ɵngcc0.ɵɵclassProp(\"active\", idx_r7 === ctx_r2.activeIdx);\n ɵngcc0.ɵɵproperty(\"id\", ctx_r2.id + \"-\" + idx_r7);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngTemplateOutlet\", ctx_r2.resultTemplate || _r0)(\"ngTemplateOutletContext\", ɵngcc0.ɵɵpureFunction3(5, _c87, result_r6, ctx_r2.term, ctx_r2.formatter));\n} }\nfunction toInteger(value) {\n return parseInt(`${value}`, 10);\n}\nfunction toString(value) {\n return (value !== undefined && value !== null) ? `${value}` : '';\n}\nfunction getValueInRange(value, max, min = 0) {\n return Math.max(Math.min(value, max), min);\n}\nfunction isString(value) {\n return typeof value === 'string';\n}\nfunction isNumber(value) {\n return !isNaN(toInteger(value));\n}\nfunction isInteger(value) {\n return typeof value === 'number' && isFinite(value) && Math.floor(value) === value;\n}\nfunction isDefined(value) {\n return value !== undefined && value !== null;\n}\nfunction padNumber(value) {\n if (isNumber(value)) {\n return `0${value}`.slice(-2);\n }\n else {\n return '';\n }\n}\nfunction regExpEscape(text) {\n return text.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, '\\\\$&');\n}\nfunction hasClassName(element, className) {\n return element && element.className && element.className.split &&\n element.className.split(/\\s+/).indexOf(className) >= 0;\n}\nif (typeof Element !== 'undefined' && !Element.prototype.closest) {\n // Polyfill for ie10+\n if (!Element.prototype.matches) {\n // IE uses the non-standard name: msMatchesSelector\n Element.prototype.matches = Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector;\n }\n Element.prototype.closest = function (s) {\n let el = this;\n if (!document.documentElement.contains(el)) {\n return null;\n }\n do {\n if (el.matches(s)) {\n return el;\n }\n el = el.parentElement || el.parentNode;\n } while (el !== null && el.nodeType === 1);\n return null;\n };\n}\nfunction closest(element, selector) {\n if (!selector) {\n return null;\n }\n /*\n * In certain browsers (e.g. Edge 44.18362.449.0) HTMLDocument does\n * not support `Element.prototype.closest`. To emulate the correct behaviour\n * we return null when the method is missing.\n *\n * Note that in evergreen browsers `closest(document.documentElement, 'html')`\n * will return the document element whilst in Edge null will be returned. This\n * compromise was deemed good enough.\n */\n if (typeof element.closest === 'undefined') {\n return null;\n }\n return element.closest(selector);\n}\n/**\n * Force a browser reflow\n * @param element element where to apply the reflow\n */\nfunction reflow(element) {\n return (element || document.body).getBoundingClientRect();\n}\n/**\n * Creates an observable where all callbacks are executed inside a given zone\n *\n * @param zone\n */\nfunction runInZone(zone) {\n return (source) => {\n return new Observable(observer => {\n const onNext = (value) => zone.run(() => observer.next(value));\n const onError = (e) => zone.run(() => observer.error(e));\n const onComplete = () => zone.run(() => observer.complete());\n return source.subscribe(onNext, onError, onComplete);\n });\n };\n}\nfunction removeAccents(str) {\n return str.normalize('NFD').replace(/[\\u0300-\\u036f]/g, '');\n}\n\nconst environment = {\n animation: true,\n transitionTimerDelayMs: 5,\n};\n\n/**\n * Global ng-bootstrap config\n *\n * @since 8.0.0\n */\nclass NgbConfig {\n constructor() {\n this.animation = environment.animation;\n }\n}\nNgbConfig.ɵfac = function NgbConfig_Factory(t) { return new (t || NgbConfig)(); };\nNgbConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgbConfig_Factory() { return new NgbConfig(); }, token: NgbConfig, providedIn: \"root\" });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbConfig, [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], function () { return []; }, null); })();\n\n/**\n * A configuration service for the [NgbAccordion](#/components/accordion/api#NgbAccordion) component.\n *\n * You can inject this service, typically in your root component, and customize its properties\n * to provide default values for all accordions used in the application.\n */\nclass NgbAccordionConfig {\n constructor(_ngbConfig) {\n this._ngbConfig = _ngbConfig;\n this.closeOthers = false;\n }\n get animation() { return (this._animation === undefined) ? this._ngbConfig.animation : this._animation; }\n set animation(animation) { this._animation = animation; }\n}\nNgbAccordionConfig.ɵfac = function NgbAccordionConfig_Factory(t) { return new (t || NgbAccordionConfig)(ɵngcc0.ɵɵinject(NgbConfig)); };\nNgbAccordionConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgbAccordionConfig_Factory() { return new NgbAccordionConfig(i0.ɵɵinject(NgbConfig)); }, token: NgbAccordionConfig, providedIn: \"root\" });\nNgbAccordionConfig.ctorParameters = () => [\n { type: NgbConfig }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbAccordionConfig, [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], function () { return [{ type: NgbConfig }]; }, null); })();\n\nfunction getTransitionDurationMs(element) {\n const { transitionDelay, transitionDuration } = window.getComputedStyle(element);\n const transitionDelaySec = parseFloat(transitionDelay);\n const transitionDurationSec = parseFloat(transitionDuration);\n return (transitionDelaySec + transitionDurationSec) * 1000;\n}\n\nconst noopFn = () => { };\nconst ɵ0$5 = noopFn;\nconst { transitionTimerDelayMs } = environment;\nconst runningTransitions = new Map();\nconst ngbRunTransition = (zone, element, startFn, options) => {\n // Getting initial context from options\n let context = options.context || {};\n // Checking if there are already running transitions on the given element.\n const running = runningTransitions.get(element);\n if (running) {\n switch (options.runningTransition) {\n // If there is one running and we want for it to 'continue' to run, we have to cancel the new one.\n // We're not emitting any values, but simply completing the observable (EMPTY).\n case 'continue':\n return EMPTY;\n // If there is one running and we want for it to 'stop', we have to complete the running one.\n // We're simply completing the running one and not emitting any values and merging newly provided context\n // with the one coming from currently running transition.\n case 'stop':\n zone.run(() => running.transition$.complete());\n context = Object.assign(running.context, context);\n runningTransitions.delete(element);\n }\n }\n // Running the start function\n const endFn = startFn(element, options.animation, context) || noopFn;\n // If 'prefer-reduced-motion' is enabled, the 'transition' will be set to 'none'.\n // If animations are disabled, we have to emit a value and complete the observable\n // In this case we have to call the end function, but can finish immediately by emitting a value,\n // completing the observable and executing end functions synchronously.\n if (!options.animation || window.getComputedStyle(element).transitionProperty === 'none') {\n zone.run(() => endFn());\n return of(undefined).pipe(runInZone(zone));\n }\n // Starting a new transition\n const transition$ = new Subject();\n const finishTransition$ = new Subject();\n const stop$ = transition$.pipe(endWith(true));\n runningTransitions.set(element, {\n transition$,\n complete: () => {\n finishTransition$.next();\n finishTransition$.complete();\n },\n context\n });\n const transitionDurationMs = getTransitionDurationMs(element);\n // 1. We have to both listen for the 'transitionend' event and have a 'just-in-case' timer,\n // because 'transitionend' event might not be fired in some browsers, if the transitioning\n // element becomes invisible (ex. when scrolling, making browser tab inactive, etc.). The timer\n // guarantees, that we'll release the DOM element and complete 'ngbRunTransition'.\n // 2. We need to filter transition end events, because they might bubble from shorter transitions\n // on inner DOM elements. We're only interested in the transition on the 'element' itself.\n zone.runOutsideAngular(() => {\n const transitionEnd$ = fromEvent(element, 'transitionend').pipe(takeUntil(stop$), filter(({ target }) => target === element));\n const timer$ = timer(transitionDurationMs + transitionTimerDelayMs).pipe(takeUntil(stop$));\n race(timer$, transitionEnd$, finishTransition$).pipe(takeUntil(stop$)).subscribe(() => {\n runningTransitions.delete(element);\n zone.run(() => {\n endFn();\n transition$.next();\n transition$.complete();\n });\n });\n });\n return transition$.asObservable();\n};\nconst ngbCompleteTransition = (element) => {\n var _a;\n (_a = runningTransitions.get(element)) === null || _a === void 0 ? void 0 : _a.complete();\n};\n\nfunction measureCollapsingElementHeightPx(element) {\n // SSR fix for without injecting the PlatformId\n if (typeof navigator === 'undefined') {\n return '0px';\n }\n const { classList } = element;\n const hasShownClass = classList.contains('show');\n if (!hasShownClass) {\n classList.add('show');\n }\n element.style.height = '';\n const height = element.getBoundingClientRect().height + 'px';\n if (!hasShownClass) {\n classList.remove('show');\n }\n return height;\n}\nconst ngbCollapsingTransition = (element, animation, context) => {\n let { direction, maxHeight } = context;\n const { classList } = element;\n function setInitialClasses() {\n classList.add('collapse');\n if (direction === 'show') {\n classList.add('show');\n }\n else {\n classList.remove('show');\n }\n }\n // without animations we just need to set initial classes\n if (!animation) {\n setInitialClasses();\n return;\n }\n // No maxHeight -> running the transition for the first time\n if (!maxHeight) {\n maxHeight = measureCollapsingElementHeightPx(element);\n context.maxHeight = maxHeight;\n // Fix the height before starting the animation\n element.style.height = direction !== 'show' ? maxHeight : '0px';\n classList.remove('collapse');\n classList.remove('collapsing');\n classList.remove('show');\n reflow(element);\n // Start the animation\n classList.add('collapsing');\n }\n // Start or revert the animation\n element.style.height = direction === 'show' ? maxHeight : '0px';\n return () => {\n setInitialClasses();\n classList.remove('collapsing');\n element.style.height = '';\n };\n};\n\nlet nextId$4 = 0;\n/**\n * A directive that wraps an accordion panel header with any HTML markup and a toggling button\n * marked with [`NgbPanelToggle`](#/components/accordion/api#NgbPanelToggle).\n * See the [header customization demo](#/components/accordion/examples#header) for more details.\n *\n * You can also use [`NgbPanelTitle`](#/components/accordion/api#NgbPanelTitle) to customize only the panel title.\n *\n * @since 4.1.0\n */\nclass NgbPanelHeader {\n constructor(templateRef) {\n this.templateRef = templateRef;\n }\n}\nNgbPanelHeader.ɵfac = function NgbPanelHeader_Factory(t) { return new (t || NgbPanelHeader)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.TemplateRef)); };\nNgbPanelHeader.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbPanelHeader, selectors: [[\"ng-template\", \"ngbPanelHeader\", \"\"]] });\nNgbPanelHeader.ctorParameters = () => [\n { type: TemplateRef }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbPanelHeader, [{\n type: Directive,\n args: [{ selector: 'ng-template[ngbPanelHeader]' }]\n }], function () { return [{ type: ɵngcc0.TemplateRef }]; }, null); })();\n/**\n * A directive that wraps only the panel title with HTML markup inside.\n *\n * You can also use [`NgbPanelHeader`](#/components/accordion/api#NgbPanelHeader) to customize the full panel header.\n */\nclass NgbPanelTitle {\n constructor(templateRef) {\n this.templateRef = templateRef;\n }\n}\nNgbPanelTitle.ɵfac = function NgbPanelTitle_Factory(t) { return new (t || NgbPanelTitle)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.TemplateRef)); };\nNgbPanelTitle.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbPanelTitle, selectors: [[\"ng-template\", \"ngbPanelTitle\", \"\"]] });\nNgbPanelTitle.ctorParameters = () => [\n { type: TemplateRef }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbPanelTitle, [{\n type: Directive,\n args: [{ selector: 'ng-template[ngbPanelTitle]' }]\n }], function () { return [{ type: ɵngcc0.TemplateRef }]; }, null); })();\n/**\n * A directive that wraps the accordion panel content.\n */\nclass NgbPanelContent {\n constructor(templateRef) {\n this.templateRef = templateRef;\n }\n}\nNgbPanelContent.ɵfac = function NgbPanelContent_Factory(t) { return new (t || NgbPanelContent)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.TemplateRef)); };\nNgbPanelContent.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbPanelContent, selectors: [[\"ng-template\", \"ngbPanelContent\", \"\"]] });\nNgbPanelContent.ctorParameters = () => [\n { type: TemplateRef }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbPanelContent, [{\n type: Directive,\n args: [{ selector: 'ng-template[ngbPanelContent]' }]\n }], function () { return [{ type: ɵngcc0.TemplateRef }]; }, null); })();\n/**\n * A directive that wraps an individual accordion panel with title and collapsible content.\n */\nclass NgbPanel {\n constructor() {\n /**\n * If `true`, the panel is disabled an can't be toggled.\n */\n this.disabled = false;\n /**\n * An optional id for the panel that must be unique on the page.\n *\n * If not provided, it will be auto-generated in the `ngb-panel-xxx` format.\n */\n this.id = `ngb-panel-${nextId$4++}`;\n this.isOpen = false;\n /* A flag to specified that the transition panel classes have been initialized */\n this.initClassDone = false;\n /* A flag to specified if the panel is currently being animated, to ensure its presence in the dom */\n this.transitionRunning = false;\n /**\n * An event emitted when the panel is shown, after the transition. It has no payload.\n *\n * @since 8.0.0\n */\n this.shown = new EventEmitter();\n /**\n * An event emitted when the panel is hidden, after the transition. It has no payload.\n *\n * @since 8.0.0\n */\n this.hidden = new EventEmitter();\n }\n ngAfterContentChecked() {\n // We are using @ContentChildren instead of @ContentChild as in the Angular version being used\n // only @ContentChildren allows us to specify the {descendants: false} option.\n // Without {descendants: false} we are hitting bugs described in:\n // https://github.com/ng-bootstrap/ng-bootstrap/issues/2240\n this.titleTpl = this.titleTpls.first;\n this.headerTpl = this.headerTpls.first;\n this.contentTpl = this.contentTpls.first;\n }\n}\nNgbPanel.ɵfac = function NgbPanel_Factory(t) { return new (t || NgbPanel)(); };\nNgbPanel.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbPanel, selectors: [[\"ngb-panel\"]], contentQueries: function NgbPanel_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {\n ɵngcc0.ɵɵcontentQuery(dirIndex, NgbPanelTitle, 0);\n ɵngcc0.ɵɵcontentQuery(dirIndex, NgbPanelHeader, 0);\n ɵngcc0.ɵɵcontentQuery(dirIndex, NgbPanelContent, 0);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.titleTpls = _t);\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.headerTpls = _t);\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.contentTpls = _t);\n } }, inputs: { disabled: \"disabled\", id: \"id\", title: \"title\", type: \"type\", cardClass: \"cardClass\" }, outputs: { shown: \"shown\", hidden: \"hidden\" } });\nNgbPanel.propDecorators = {\n disabled: [{ type: Input }],\n id: [{ type: Input }],\n title: [{ type: Input }],\n type: [{ type: Input }],\n cardClass: [{ type: Input }],\n shown: [{ type: Output }],\n hidden: [{ type: Output }],\n titleTpls: [{ type: ContentChildren, args: [NgbPanelTitle, { descendants: false },] }],\n headerTpls: [{ type: ContentChildren, args: [NgbPanelHeader, { descendants: false },] }],\n contentTpls: [{ type: ContentChildren, args: [NgbPanelContent, { descendants: false },] }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbPanel, [{\n type: Directive,\n args: [{ selector: 'ngb-panel' }]\n }], function () { return []; }, { disabled: [{\n type: Input\n }], id: [{\n type: Input\n }], shown: [{\n type: Output\n }], hidden: [{\n type: Output\n }], title: [{\n type: Input\n }], type: [{\n type: Input\n }], cardClass: [{\n type: Input\n }], titleTpls: [{\n type: ContentChildren,\n args: [NgbPanelTitle, { descendants: false }]\n }], headerTpls: [{\n type: ContentChildren,\n args: [NgbPanelHeader, { descendants: false }]\n }], contentTpls: [{\n type: ContentChildren,\n args: [NgbPanelContent, { descendants: false }]\n }] }); })();\n/**\n * Accordion is a collection of collapsible panels (bootstrap cards).\n *\n * It can ensure only one panel is opened at a time and allows to customize panel\n * headers.\n */\nclass NgbAccordion {\n constructor(config, _element, _ngZone, _changeDetector) {\n this._element = _element;\n this._ngZone = _ngZone;\n this._changeDetector = _changeDetector;\n /**\n * An array or comma separated strings of panel ids that should be opened **initially**.\n *\n * For subsequent changes use methods like `expand()`, `collapse()`, etc. and\n * the `(panelChange)` event.\n */\n this.activeIds = [];\n /**\n * If `true`, panel content will be detached from DOM and not simply hidden when the panel is collapsed.\n */\n this.destroyOnHide = true;\n /**\n * Event emitted right before the panel toggle happens.\n *\n * See [NgbPanelChangeEvent](#/components/accordion/api#NgbPanelChangeEvent) for payload details.\n */\n this.panelChange = new EventEmitter();\n /**\n * An event emitted when the expanding animation is finished on the panel. The payload is the panel id.\n *\n * @since 8.0.0\n */\n this.shown = new EventEmitter();\n /**\n * An event emitted when the collapsing animation is finished on the panel, and before the panel element is removed.\n * The payload is the panel id.\n *\n * @since 8.0.0\n */\n this.hidden = new EventEmitter();\n this.animation = config.animation;\n this.type = config.type;\n this.closeOtherPanels = config.closeOthers;\n }\n /**\n * Checks if a panel with a given id is expanded.\n */\n isExpanded(panelId) { return this.activeIds.indexOf(panelId) > -1; }\n /**\n * Expands a panel with a given id.\n *\n * Has no effect if the panel is already expanded or disabled.\n */\n expand(panelId) { this._changeOpenState(this._findPanelById(panelId), true); }\n /**\n * Expands all panels, if `[closeOthers]` is `false`.\n *\n * If `[closeOthers]` is `true`, it will expand the first panel, unless there is already a panel opened.\n */\n expandAll() {\n if (this.closeOtherPanels) {\n if (this.activeIds.length === 0 && this.panels.length) {\n this._changeOpenState(this.panels.first, true);\n }\n }\n else {\n this.panels.forEach(panel => this._changeOpenState(panel, true));\n }\n }\n /**\n * Collapses a panel with the given id.\n *\n * Has no effect if the panel is already collapsed or disabled.\n */\n collapse(panelId) { this._changeOpenState(this._findPanelById(panelId), false); }\n /**\n * Collapses all opened panels.\n */\n collapseAll() {\n this.panels.forEach((panel) => { this._changeOpenState(panel, false); });\n }\n /**\n * Toggles a panel with the given id.\n *\n * Has no effect if the panel is disabled.\n */\n toggle(panelId) {\n const panel = this._findPanelById(panelId);\n if (panel) {\n this._changeOpenState(panel, !panel.isOpen);\n }\n }\n ngAfterContentChecked() {\n // active id updates\n if (isString(this.activeIds)) {\n this.activeIds = this.activeIds.split(/\\s*,\\s*/);\n }\n // update panels open states\n this.panels.forEach(panel => { panel.isOpen = !panel.disabled && this.activeIds.indexOf(panel.id) > -1; });\n // closeOthers updates\n if (this.activeIds.length > 1 && this.closeOtherPanels) {\n this._closeOthers(this.activeIds[0], false);\n this._updateActiveIds();\n }\n // Setup the initial classes here\n this._ngZone.onStable.pipe(take(1)).subscribe(() => {\n this.panels.forEach(panel => {\n const panelElement = this._getPanelElement(panel.id);\n if (panelElement) {\n if (!panel.initClassDone) {\n panel.initClassDone = true;\n ngbRunTransition(this._ngZone, panelElement, ngbCollapsingTransition, {\n animation: false,\n runningTransition: 'continue',\n context: { direction: panel.isOpen ? 'show' : 'hide' }\n });\n }\n }\n else {\n // Classes must be initialized next time it will be in the dom\n panel.initClassDone = false;\n }\n });\n });\n }\n _changeOpenState(panel, nextState) {\n if (panel != null && !panel.disabled && panel.isOpen !== nextState) {\n let defaultPrevented = false;\n this.panelChange.emit({ panelId: panel.id, nextState: nextState, preventDefault: () => { defaultPrevented = true; } });\n if (!defaultPrevented) {\n panel.isOpen = nextState;\n panel.transitionRunning = true;\n if (nextState && this.closeOtherPanels) {\n this._closeOthers(panel.id);\n }\n this._updateActiveIds();\n this._runTransitions(this.animation);\n }\n }\n }\n _closeOthers(panelId, enableTransition = true) {\n this.panels.forEach(panel => {\n if (panel.id !== panelId && panel.isOpen) {\n panel.isOpen = false;\n panel.transitionRunning = enableTransition;\n }\n });\n }\n _findPanelById(panelId) { return this.panels.find(p => p.id === panelId) || null; }\n _updateActiveIds() {\n this.activeIds = this.panels.filter(panel => panel.isOpen && !panel.disabled).map(panel => panel.id);\n }\n _runTransitions(animation) {\n // detectChanges is performed to ensure that all panels are in the dom (via transitionRunning = true)\n // before starting the animation\n this._changeDetector.detectChanges();\n this.panels.forEach(panel => {\n // When panel.transitionRunning is true, the transition needs to be started OR reversed,\n // The direction (show or hide) is choosen by each panel.isOpen state\n if (panel.transitionRunning) {\n const panelElement = this._getPanelElement(panel.id);\n ngbRunTransition(this._ngZone, panelElement, ngbCollapsingTransition, {\n animation,\n runningTransition: 'stop',\n context: { direction: panel.isOpen ? 'show' : 'hide' }\n }).subscribe(() => {\n panel.transitionRunning = false;\n const { id } = panel;\n if (panel.isOpen) {\n panel.shown.emit();\n this.shown.emit(id);\n }\n else {\n panel.hidden.emit();\n this.hidden.emit(id);\n }\n });\n }\n });\n }\n _getPanelElement(panelId) {\n return this._element.nativeElement.querySelector('#' + panelId);\n }\n}\nNgbAccordion.ɵfac = function NgbAccordion_Factory(t) { return new (t || NgbAccordion)(ɵngcc0.ɵɵdirectiveInject(NgbAccordionConfig), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.NgZone), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef)); };\nNgbAccordion.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: NgbAccordion, selectors: [[\"ngb-accordion\"]], contentQueries: function NgbAccordion_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {\n ɵngcc0.ɵɵcontentQuery(dirIndex, NgbPanel, 0);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.panels = _t);\n } }, hostAttrs: [\"role\", \"tablist\", 1, \"accordion\"], hostVars: 1, hostBindings: function NgbAccordion_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵattribute(\"aria-multiselectable\", !ctx.closeOtherPanels);\n } }, inputs: { activeIds: \"activeIds\", destroyOnHide: \"destroyOnHide\", animation: \"animation\", type: \"type\", closeOtherPanels: [\"closeOthers\", \"closeOtherPanels\"] }, outputs: { panelChange: \"panelChange\", shown: \"shown\", hidden: \"hidden\" }, exportAs: [\"ngbAccordion\"], decls: 3, vars: 1, consts: [[\"ngbPanelHeader\", \"\"], [\"t\", \"\"], [\"ngFor\", \"\", 3, \"ngForOf\"], [1, \"btn\", \"btn-link\", 3, \"ngbPanelToggle\"], [3, \"ngTemplateOutlet\"], [\"role\", \"tab\", 3, \"id\"], [3, \"ngTemplateOutlet\", \"ngTemplateOutletContext\"], [\"role\", \"tabpanel\", 3, \"id\", 4, \"ngIf\"], [\"role\", \"tabpanel\", 3, \"id\"], [1, \"card-body\"]], template: function NgbAccordion_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵtemplate(0, NgbAccordion_ng_template_0_Template, 3, 3, \"ng-template\", 0, 1, ɵngcc0.ɵɵtemplateRefExtractor);\n ɵngcc0.ɵɵtemplate(2, NgbAccordion_ng_template_2_Template, 4, 11, \"ng-template\", 2);\n } if (rf & 2) {\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"ngForOf\", ctx.panels);\n } }, directives: function () { return [NgbPanelHeader, ɵngcc1.NgForOf, NgbPanelToggle, ɵngcc1.NgTemplateOutlet, ɵngcc1.NgIf]; }, encapsulation: 2 });\nNgbAccordion.ctorParameters = () => [\n { type: NgbAccordionConfig },\n { type: ElementRef },\n { type: NgZone },\n { type: ChangeDetectorRef }\n];\nNgbAccordion.propDecorators = {\n panels: [{ type: ContentChildren, args: [NgbPanel,] }],\n animation: [{ type: Input }],\n activeIds: [{ type: Input }],\n closeOtherPanels: [{ type: Input, args: ['closeOthers',] }],\n destroyOnHide: [{ type: Input }],\n type: [{ type: Input }],\n panelChange: [{ type: Output }],\n shown: [{ type: Output }],\n hidden: [{ type: Output }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbAccordion, [{\n type: Component,\n args: [{\n selector: 'ngb-accordion',\n exportAs: 'ngbAccordion',\n encapsulation: ViewEncapsulation.None,\n host: { 'class': 'accordion', 'role': 'tablist', '[attr.aria-multiselectable]': '!closeOtherPanels' },\n template: `\n \n \n \n \n
\n
\n \n
\n
\n
\n \n
\n
\n
\n
\n `\n }]\n }], function () { return [{ type: NgbAccordionConfig }, { type: ɵngcc0.ElementRef }, { type: ɵngcc0.NgZone }, { type: ɵngcc0.ChangeDetectorRef }]; }, { activeIds: [{\n type: Input\n }], destroyOnHide: [{\n type: Input\n }], panelChange: [{\n type: Output\n }], shown: [{\n type: Output\n }], hidden: [{\n type: Output\n }], animation: [{\n type: Input\n }], type: [{\n type: Input\n }], closeOtherPanels: [{\n type: Input,\n args: ['closeOthers']\n }], panels: [{\n type: ContentChildren,\n args: [NgbPanel]\n }] }); })();\n/**\n * A directive to put on a button that toggles panel opening and closing.\n *\n * To be used inside the [`NgbPanelHeader`](#/components/accordion/api#NgbPanelHeader)\n *\n * @since 4.1.0\n */\nclass NgbPanelToggle {\n constructor(accordion, panel) {\n this.accordion = accordion;\n this.panel = panel;\n }\n set ngbPanelToggle(panel) {\n if (panel) {\n this.panel = panel;\n }\n }\n}\nNgbPanelToggle.ɵfac = function NgbPanelToggle_Factory(t) { return new (t || NgbPanelToggle)(ɵngcc0.ɵɵdirectiveInject(NgbAccordion), ɵngcc0.ɵɵdirectiveInject(NgbPanel, 9)); };\nNgbPanelToggle.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbPanelToggle, selectors: [[\"button\", \"ngbPanelToggle\", \"\"]], hostAttrs: [\"type\", \"button\"], hostVars: 5, hostBindings: function NgbPanelToggle_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"click\", function NgbPanelToggle_click_HostBindingHandler() { return ctx.accordion.toggle(ctx.panel.id); });\n } if (rf & 2) {\n ɵngcc0.ɵɵhostProperty(\"disabled\", ctx.panel.disabled);\n ɵngcc0.ɵɵattribute(\"aria-expanded\", ctx.panel.isOpen)(\"aria-controls\", ctx.panel.id);\n ɵngcc0.ɵɵclassProp(\"collapsed\", !ctx.panel.isOpen);\n } }, inputs: { ngbPanelToggle: \"ngbPanelToggle\" } });\nNgbPanelToggle.ctorParameters = () => [\n { type: NgbAccordion },\n { type: NgbPanel, decorators: [{ type: Optional }, { type: Host }] }\n];\nNgbPanelToggle.propDecorators = {\n ngbPanelToggle: [{ type: Input }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbPanelToggle, [{\n type: Directive,\n args: [{\n selector: 'button[ngbPanelToggle]',\n host: {\n 'type': 'button',\n '[disabled]': 'panel.disabled',\n '[class.collapsed]': '!panel.isOpen',\n '[attr.aria-expanded]': 'panel.isOpen',\n '[attr.aria-controls]': 'panel.id',\n '(click)': 'accordion.toggle(panel.id)'\n }\n }]\n }], function () { return [{ type: NgbAccordion }, { type: NgbPanel, decorators: [{\n type: Optional\n }, {\n type: Host\n }] }]; }, { ngbPanelToggle: [{\n type: Input\n }] }); })();\n\nconst NGB_ACCORDION_DIRECTIVES = [NgbAccordion, NgbPanel, NgbPanelTitle, NgbPanelContent, NgbPanelHeader, NgbPanelToggle];\nclass NgbAccordionModule {\n}\nNgbAccordionModule.ɵfac = function NgbAccordionModule_Factory(t) { return new (t || NgbAccordionModule)(); };\nNgbAccordionModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: NgbAccordionModule });\nNgbAccordionModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ imports: [[CommonModule]] });\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(NgbAccordionModule, { declarations: function () { return [NgbAccordion, NgbPanel, NgbPanelTitle, NgbPanelContent, NgbPanelHeader, NgbPanelToggle]; }, imports: function () { return [CommonModule]; }, exports: function () { return [NgbAccordion, NgbPanel, NgbPanelTitle, NgbPanelContent, NgbPanelHeader, NgbPanelToggle]; } }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbAccordionModule, [{\n type: NgModule,\n args: [{ declarations: NGB_ACCORDION_DIRECTIVES, exports: NGB_ACCORDION_DIRECTIVES, imports: [CommonModule] }]\n }], null, null); })();\n\n/**\n * A configuration service for the [NgbAlert](#/components/alert/api#NgbAlert) component.\n *\n * You can inject this service, typically in your root component, and customize its properties\n * to provide default values for all alerts used in the application.\n */\nclass NgbAlertConfig {\n constructor(_ngbConfig) {\n this._ngbConfig = _ngbConfig;\n this.dismissible = true;\n this.type = 'warning';\n }\n get animation() { return (this._animation === undefined) ? this._ngbConfig.animation : this._animation; }\n set animation(animation) { this._animation = animation; }\n}\nNgbAlertConfig.ɵfac = function NgbAlertConfig_Factory(t) { return new (t || NgbAlertConfig)(ɵngcc0.ɵɵinject(NgbConfig)); };\nNgbAlertConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgbAlertConfig_Factory() { return new NgbAlertConfig(i0.ɵɵinject(NgbConfig)); }, token: NgbAlertConfig, providedIn: \"root\" });\nNgbAlertConfig.ctorParameters = () => [\n { type: NgbConfig }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbAlertConfig, [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], function () { return [{ type: NgbConfig }]; }, null); })();\n\nconst ngbAlertFadingTransition = ({ classList }) => {\n classList.remove('show');\n};\n\n/**\n * Alert is a component to provide contextual feedback messages for user.\n *\n * It supports several alert types and can be dismissed.\n */\nclass NgbAlert {\n constructor(config, _renderer, _element, _zone) {\n this._renderer = _renderer;\n this._element = _element;\n this._zone = _zone;\n /**\n * An event emitted when the close button is clicked. It has no payload and only relevant for dismissible alerts.\n *\n * @since 8.0.0\n */\n this.closed = new EventEmitter();\n this.dismissible = config.dismissible;\n this.type = config.type;\n this.animation = config.animation;\n }\n /**\n * Triggers alert closing programmatically (same as clicking on the close button (×)).\n *\n * The returned observable will emit and be completed once the closing transition has finished.\n * If the animations are turned off this happens synchronously.\n *\n * Alternatively you could listen or subscribe to the `(closed)` output\n *\n * @since 8.0.0\n */\n close() {\n const transition = ngbRunTransition(this._zone, this._element.nativeElement, ngbAlertFadingTransition, { animation: this.animation, runningTransition: 'continue' });\n transition.subscribe(() => this.closed.emit());\n return transition;\n }\n ngOnChanges(changes) {\n const typeChange = changes['type'];\n if (typeChange && !typeChange.firstChange) {\n this._renderer.removeClass(this._element.nativeElement, `alert-${typeChange.previousValue}`);\n this._renderer.addClass(this._element.nativeElement, `alert-${typeChange.currentValue}`);\n }\n }\n ngOnInit() { this._renderer.addClass(this._element.nativeElement, `alert-${this.type}`); }\n}\nNgbAlert.ɵfac = function NgbAlert_Factory(t) { return new (t || NgbAlert)(ɵngcc0.ɵɵdirectiveInject(NgbAlertConfig), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.NgZone)); };\nNgbAlert.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: NgbAlert, selectors: [[\"ngb-alert\"]], hostAttrs: [\"role\", \"alert\", 1, \"alert\", \"show\"], hostVars: 4, hostBindings: function NgbAlert_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵclassProp(\"fade\", ctx.animation)(\"alert-dismissible\", ctx.dismissible);\n } }, inputs: { dismissible: \"dismissible\", type: \"type\", animation: \"animation\" }, outputs: { closed: \"closed\" }, exportAs: [\"ngbAlert\"], features: [ɵngcc0.ɵɵNgOnChangesFeature], ngContentSelectors: _c3, decls: 2, vars: 1, consts: function () { let i18n_1; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_alert_close$$FESM2015_NG_BOOTSTRAP_JS_2 = goog.getMsg(\"Close\");\n i18n_1 = MSG_EXTERNAL_ngb_alert_close$$FESM2015_NG_BOOTSTRAP_JS_2;\n }\n else {\n i18n_1 = $localize `:@@ngb.alert.close␟f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8␟7819314041543176992:Close`;\n } return [[\"type\", \"button\", \"class\", \"close\", \"aria-label\", i18n_1, 3, \"click\", 4, \"ngIf\"], [\"type\", \"button\", \"aria-label\", i18n_1, 1, \"close\", 3, \"click\"], [\"aria-hidden\", \"true\"]]; }, template: function NgbAlert_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵprojection(0);\n ɵngcc0.ɵɵtemplate(1, NgbAlert_button_1_Template, 3, 0, \"button\", 0);\n } if (rf & 2) {\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.dismissible);\n } }, directives: [ɵngcc1.NgIf], styles: [\"ngb-alert{display:block}\"], encapsulation: 2, changeDetection: 0 });\nNgbAlert.ctorParameters = () => [\n { type: NgbAlertConfig },\n { type: Renderer2 },\n { type: ElementRef },\n { type: NgZone }\n];\nNgbAlert.propDecorators = {\n animation: [{ type: Input }],\n dismissible: [{ type: Input }],\n type: [{ type: Input }],\n closed: [{ type: Output }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbAlert, [{\n type: Component,\n args: [{\n selector: 'ngb-alert',\n exportAs: 'ngbAlert',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: { 'role': 'alert', 'class': 'alert show', '[class.fade]': 'animation', '[class.alert-dismissible]': 'dismissible' },\n template: `\n \n \n `,\n styles: [\"ngb-alert{display:block}\"]\n }]\n }], function () { return [{ type: NgbAlertConfig }, { type: ɵngcc0.Renderer2 }, { type: ɵngcc0.ElementRef }, { type: ɵngcc0.NgZone }]; }, { closed: [{\n type: Output\n }], dismissible: [{\n type: Input\n }], type: [{\n type: Input\n }], animation: [{\n type: Input\n }] }); })();\n\nclass NgbAlertModule {\n}\nNgbAlertModule.ɵfac = function NgbAlertModule_Factory(t) { return new (t || NgbAlertModule)(); };\nNgbAlertModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: NgbAlertModule });\nNgbAlertModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ imports: [[CommonModule]] });\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(NgbAlertModule, { declarations: function () { return [NgbAlert]; }, imports: function () { return [CommonModule]; }, exports: function () { return [NgbAlert]; } }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbAlertModule, [{\n type: NgModule,\n args: [{ declarations: [NgbAlert], exports: [NgbAlert], imports: [CommonModule], entryComponents: [NgbAlert] }]\n }], null, null); })();\n\nclass NgbButtonLabel {\n}\nNgbButtonLabel.ɵfac = function NgbButtonLabel_Factory(t) { return new (t || NgbButtonLabel)(); };\nNgbButtonLabel.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbButtonLabel, selectors: [[\"\", \"ngbButtonLabel\", \"\"]], hostVars: 8, hostBindings: function NgbButtonLabel_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵclassProp(\"btn\", true)(\"active\", ctx.active)(\"disabled\", ctx.disabled)(\"focus\", ctx.focused);\n } } });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbButtonLabel, [{\n type: Directive,\n args: [{\n selector: '[ngbButtonLabel]',\n host: { '[class.btn]': 'true', '[class.active]': 'active', '[class.disabled]': 'disabled', '[class.focus]': 'focused' }\n }]\n }], null, null); })();\n\n/**\n * Allows to easily create Bootstrap-style checkbox buttons.\n *\n * Integrates with forms, so the value of a checked button is bound to the underlying form control\n * either in a reactive or template-driven way.\n */\nclass NgbCheckBox {\n constructor(_label, _cd) {\n this._label = _label;\n this._cd = _cd;\n /**\n * If `true`, the checkbox button will be disabled\n */\n this.disabled = false;\n /**\n * The form control value when the checkbox is checked.\n */\n this.valueChecked = true;\n /**\n * The form control value when the checkbox is unchecked.\n */\n this.valueUnChecked = false;\n this.onChange = (_) => { };\n this.onTouched = () => { };\n }\n set focused(isFocused) {\n this._label.focused = isFocused;\n if (!isFocused) {\n this.onTouched();\n }\n }\n onInputChange($event) {\n const modelToPropagate = $event.target.checked ? this.valueChecked : this.valueUnChecked;\n this.onChange(modelToPropagate);\n this.onTouched();\n this.writeValue(modelToPropagate);\n }\n registerOnChange(fn) { this.onChange = fn; }\n registerOnTouched(fn) { this.onTouched = fn; }\n setDisabledState(isDisabled) {\n this.disabled = isDisabled;\n this._label.disabled = isDisabled;\n }\n writeValue(value) {\n this.checked = value === this.valueChecked;\n this._label.active = this.checked;\n // label won't be updated, if it is inside the OnPush component when [ngModel] changes\n this._cd.markForCheck();\n }\n}\nNgbCheckBox.ɵfac = function NgbCheckBox_Factory(t) { return new (t || NgbCheckBox)(ɵngcc0.ɵɵdirectiveInject(NgbButtonLabel), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef)); };\nNgbCheckBox.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbCheckBox, selectors: [[\"\", \"ngbButton\", \"\", \"type\", \"checkbox\"]], hostVars: 2, hostBindings: function NgbCheckBox_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"change\", function NgbCheckBox_change_HostBindingHandler($event) { return ctx.onInputChange($event); })(\"focus\", function NgbCheckBox_focus_HostBindingHandler() { return ctx.focused = true; })(\"blur\", function NgbCheckBox_blur_HostBindingHandler() { return ctx.focused = false; });\n } if (rf & 2) {\n ɵngcc0.ɵɵhostProperty(\"checked\", ctx.checked)(\"disabled\", ctx.disabled);\n } }, inputs: { disabled: \"disabled\", valueChecked: \"valueChecked\", valueUnChecked: \"valueUnChecked\" }, features: [ɵngcc0.ɵɵProvidersFeature([{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => NgbCheckBox), multi: true }])] });\nNgbCheckBox.ctorParameters = () => [\n { type: NgbButtonLabel },\n { type: ChangeDetectorRef }\n];\nNgbCheckBox.propDecorators = {\n disabled: [{ type: Input }],\n valueChecked: [{ type: Input }],\n valueUnChecked: [{ type: Input }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbCheckBox, [{\n type: Directive,\n args: [{\n selector: '[ngbButton][type=checkbox]',\n host: {\n '[checked]': 'checked',\n '[disabled]': 'disabled',\n '(change)': 'onInputChange($event)',\n '(focus)': 'focused = true',\n '(blur)': 'focused = false'\n },\n providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => NgbCheckBox), multi: true }]\n }]\n }], function () { return [{ type: NgbButtonLabel }, { type: ɵngcc0.ChangeDetectorRef }]; }, { disabled: [{\n type: Input\n }], valueChecked: [{\n type: Input\n }], valueUnChecked: [{\n type: Input\n }] }); })();\n\nlet nextId$3 = 0;\n/**\n * Allows to easily create Bootstrap-style radio buttons.\n *\n * Integrates with forms, so the value of a checked button is bound to the underlying form control\n * either in a reactive or template-driven way.\n */\nclass NgbRadioGroup {\n constructor() {\n this._radios = new Set();\n this._value = null;\n /**\n * Name of the radio group applied to radio input elements.\n *\n * Will be applied to all radio input elements inside the group,\n * unless [`NgbRadio`](#/components/buttons/api#NgbRadio)'s specify names themselves.\n *\n * If not provided, will be generated in the `ngb-radio-xx` format.\n */\n this.name = `ngb-radio-${nextId$3++}`;\n this.onChange = (_) => { };\n this.onTouched = () => { };\n }\n get disabled() { return this._disabled; }\n set disabled(isDisabled) { this.setDisabledState(isDisabled); }\n onRadioChange(radio) {\n this.writeValue(radio.value);\n this.onChange(radio.value);\n }\n onRadioValueUpdate() { this._updateRadiosValue(); }\n register(radio) { this._radios.add(radio); }\n registerOnChange(fn) { this.onChange = fn; }\n registerOnTouched(fn) { this.onTouched = fn; }\n setDisabledState(isDisabled) {\n this._disabled = isDisabled;\n this._updateRadiosDisabled();\n }\n unregister(radio) { this._radios.delete(radio); }\n writeValue(value) {\n this._value = value;\n this._updateRadiosValue();\n }\n _updateRadiosValue() { this._radios.forEach((radio) => radio.updateValue(this._value)); }\n _updateRadiosDisabled() { this._radios.forEach((radio) => radio.updateDisabled()); }\n}\nNgbRadioGroup.ɵfac = function NgbRadioGroup_Factory(t) { return new (t || NgbRadioGroup)(); };\nNgbRadioGroup.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbRadioGroup, selectors: [[\"\", \"ngbRadioGroup\", \"\"]], hostAttrs: [\"role\", \"radiogroup\"], inputs: { name: \"name\" }, features: [ɵngcc0.ɵɵProvidersFeature([{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => NgbRadioGroup), multi: true }])] });\nNgbRadioGroup.propDecorators = {\n name: [{ type: Input }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbRadioGroup, [{\n type: Directive,\n args: [{\n selector: '[ngbRadioGroup]',\n host: { 'role': 'radiogroup' },\n providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => NgbRadioGroup), multi: true }]\n }]\n }], function () { return []; }, { name: [{\n type: Input\n }] }); })();\n/**\n * A directive that marks an input of type \"radio\" as a part of the\n * [`NgbRadioGroup`](#/components/buttons/api#NgbRadioGroup).\n */\nclass NgbRadio {\n constructor(_group, _label, _renderer, _element, _cd) {\n this._group = _group;\n this._label = _label;\n this._renderer = _renderer;\n this._element = _element;\n this._cd = _cd;\n this._value = null;\n this._group.register(this);\n this.updateDisabled();\n }\n /**\n * The form control value when current radio button is checked.\n */\n set value(value) {\n this._value = value;\n const stringValue = value ? value.toString() : '';\n this._renderer.setProperty(this._element.nativeElement, 'value', stringValue);\n this._group.onRadioValueUpdate();\n }\n /**\n * If `true`, current radio button will be disabled.\n */\n set disabled(isDisabled) {\n this._disabled = isDisabled !== false;\n this.updateDisabled();\n }\n set focused(isFocused) {\n if (this._label) {\n this._label.focused = isFocused;\n }\n if (!isFocused) {\n this._group.onTouched();\n }\n }\n get checked() { return this._checked; }\n get disabled() { return this._group.disabled || this._disabled; }\n get value() { return this._value; }\n get nameAttr() { return this.name || this._group.name; }\n ngOnDestroy() { this._group.unregister(this); }\n onChange() { this._group.onRadioChange(this); }\n updateValue(value) {\n // label won't be updated, if it is inside the OnPush component when [ngModel] changes\n if (this.value !== value) {\n this._cd.markForCheck();\n }\n this._checked = this.value === value;\n this._label.active = this._checked;\n }\n updateDisabled() { this._label.disabled = this.disabled; }\n}\nNgbRadio.ɵfac = function NgbRadio_Factory(t) { return new (t || NgbRadio)(ɵngcc0.ɵɵdirectiveInject(NgbRadioGroup), ɵngcc0.ɵɵdirectiveInject(NgbButtonLabel), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef)); };\nNgbRadio.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbRadio, selectors: [[\"\", \"ngbButton\", \"\", \"type\", \"radio\"]], hostVars: 3, hostBindings: function NgbRadio_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"change\", function NgbRadio_change_HostBindingHandler() { return ctx.onChange(); })(\"focus\", function NgbRadio_focus_HostBindingHandler() { return ctx.focused = true; })(\"blur\", function NgbRadio_blur_HostBindingHandler() { return ctx.focused = false; });\n } if (rf & 2) {\n ɵngcc0.ɵɵhostProperty(\"checked\", ctx.checked)(\"disabled\", ctx.disabled)(\"name\", ctx.nameAttr);\n } }, inputs: { value: \"value\", disabled: \"disabled\", name: \"name\" } });\nNgbRadio.ctorParameters = () => [\n { type: NgbRadioGroup },\n { type: NgbButtonLabel },\n { type: Renderer2 },\n { type: ElementRef },\n { type: ChangeDetectorRef }\n];\nNgbRadio.propDecorators = {\n name: [{ type: Input }],\n value: [{ type: Input, args: ['value',] }],\n disabled: [{ type: Input, args: ['disabled',] }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbRadio, [{\n type: Directive,\n args: [{\n selector: '[ngbButton][type=radio]',\n host: {\n '[checked]': 'checked',\n '[disabled]': 'disabled',\n '[name]': 'nameAttr',\n '(change)': 'onChange()',\n '(focus)': 'focused = true',\n '(blur)': 'focused = false'\n }\n }]\n }], function () { return [{ type: NgbRadioGroup }, { type: NgbButtonLabel }, { type: ɵngcc0.Renderer2 }, { type: ɵngcc0.ElementRef }, { type: ɵngcc0.ChangeDetectorRef }]; }, { value: [{\n type: Input,\n args: ['value']\n }], disabled: [{\n type: Input,\n args: ['disabled']\n }], name: [{\n type: Input\n }] }); })();\n\nconst NGB_BUTTON_DIRECTIVES = [NgbButtonLabel, NgbCheckBox, NgbRadioGroup, NgbRadio];\nclass NgbButtonsModule {\n}\nNgbButtonsModule.ɵfac = function NgbButtonsModule_Factory(t) { return new (t || NgbButtonsModule)(); };\nNgbButtonsModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: NgbButtonsModule });\nNgbButtonsModule.ɵinj = ɵngcc0.ɵɵdefineInjector({});\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(NgbButtonsModule, { declarations: [NgbButtonLabel, NgbCheckBox, NgbRadioGroup, NgbRadio], exports: [NgbButtonLabel, NgbCheckBox, NgbRadioGroup, NgbRadio] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbButtonsModule, [{\n type: NgModule,\n args: [{ declarations: NGB_BUTTON_DIRECTIVES, exports: NGB_BUTTON_DIRECTIVES }]\n }], null, null); })();\n\n/**\n * A configuration service for the [NgbCarousel](#/components/carousel/api#NgbCarousel) component.\n *\n * You can inject this service, typically in your root component, and customize its properties\n * to provide default values for all carousels used in the application.\n */\nclass NgbCarouselConfig {\n constructor(_ngbConfig) {\n this._ngbConfig = _ngbConfig;\n this.interval = 5000;\n this.wrap = true;\n this.keyboard = true;\n this.pauseOnHover = true;\n this.pauseOnFocus = true;\n this.showNavigationArrows = true;\n this.showNavigationIndicators = true;\n }\n get animation() { return (this._animation === undefined) ? this._ngbConfig.animation : this._animation; }\n set animation(animation) { this._animation = animation; }\n}\nNgbCarouselConfig.ɵfac = function NgbCarouselConfig_Factory(t) { return new (t || NgbCarouselConfig)(ɵngcc0.ɵɵinject(NgbConfig)); };\nNgbCarouselConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgbCarouselConfig_Factory() { return new NgbCarouselConfig(i0.ɵɵinject(NgbConfig)); }, token: NgbCarouselConfig, providedIn: \"root\" });\nNgbCarouselConfig.ctorParameters = () => [\n { type: NgbConfig }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbCarouselConfig, [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], function () { return [{ type: NgbConfig }]; }, null); })();\n\n/**\n * Defines the carousel slide transition direction.\n */\nvar NgbSlideEventDirection;\n(function (NgbSlideEventDirection) {\n NgbSlideEventDirection[\"LEFT\"] = \"left\";\n NgbSlideEventDirection[\"RIGHT\"] = \"right\";\n})(NgbSlideEventDirection || (NgbSlideEventDirection = {}));\nconst isBeingAnimated = ({ classList }) => {\n return classList.contains('carousel-item-left') || classList.contains('carousel-item-right');\n};\nconst ɵ0$4 = isBeingAnimated;\nconst removeDirectionClasses = (classList) => {\n classList.remove('carousel-item-left');\n classList.remove('carousel-item-right');\n};\nconst ɵ1$1 = removeDirectionClasses;\nconst removeClasses = (classList) => {\n removeDirectionClasses(classList);\n classList.remove('carousel-item-prev');\n classList.remove('carousel-item-next');\n};\nconst ɵ2$1 = removeClasses;\nconst ngbCarouselTransitionIn = (element, animation, { direction }) => {\n const { classList } = element;\n if (!animation) {\n removeDirectionClasses(classList);\n removeClasses(classList);\n classList.add('active');\n return;\n }\n if (isBeingAnimated(element)) {\n // Revert the transition\n removeDirectionClasses(classList);\n }\n else {\n // For the 'in' transition, a 'pre-class' is applied to the element to ensure its visibility\n classList.add('carousel-item-' + (direction === NgbSlideEventDirection.LEFT ? 'next' : 'prev'));\n reflow(element);\n classList.add('carousel-item-' + direction);\n }\n return () => {\n removeClasses(classList);\n classList.add('active');\n };\n};\nconst ngbCarouselTransitionOut = (element, animation, { direction }) => {\n const { classList } = element;\n if (!animation) {\n removeDirectionClasses(classList);\n removeClasses(classList);\n classList.remove('active');\n return;\n }\n // direction is left or right, depending on the way the slide goes out.\n if (isBeingAnimated(element)) {\n // Revert the transition\n removeDirectionClasses(classList);\n }\n else {\n classList.add('carousel-item-' + direction);\n }\n return () => {\n removeClasses(classList);\n classList.remove('active');\n };\n};\n\nlet nextId$2 = 0;\n/**\n * A directive that wraps the individual carousel slide.\n */\nclass NgbSlide {\n constructor(tplRef) {\n this.tplRef = tplRef;\n /**\n * Slide id that must be unique for the entire document.\n *\n * If not provided, will be generated in the `ngb-slide-xx` format.\n */\n this.id = `ngb-slide-${nextId$2++}`;\n /**\n * An event emitted when the slide transition is finished\n *\n * @since 8.0.0\n */\n this.slid = new EventEmitter();\n }\n}\nNgbSlide.ɵfac = function NgbSlide_Factory(t) { return new (t || NgbSlide)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.TemplateRef)); };\nNgbSlide.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbSlide, selectors: [[\"ng-template\", \"ngbSlide\", \"\"]], inputs: { id: \"id\" }, outputs: { slid: \"slid\" } });\nNgbSlide.ctorParameters = () => [\n { type: TemplateRef }\n];\nNgbSlide.propDecorators = {\n id: [{ type: Input }],\n slid: [{ type: Output }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbSlide, [{\n type: Directive,\n args: [{ selector: 'ng-template[ngbSlide]' }]\n }], function () { return [{ type: ɵngcc0.TemplateRef }]; }, { id: [{\n type: Input\n }], slid: [{\n type: Output\n }] }); })();\n/**\n * Carousel is a component to easily create and control slideshows.\n *\n * Allows to set intervals, change the way user interacts with the slides and provides a programmatic API.\n */\nclass NgbCarousel {\n constructor(config, _platformId, _ngZone, _cd, _container) {\n this._platformId = _platformId;\n this._ngZone = _ngZone;\n this._cd = _cd;\n this._container = _container;\n this.NgbSlideEventSource = NgbSlideEventSource;\n this._destroy$ = new Subject();\n this._interval$ = new BehaviorSubject(0);\n this._mouseHover$ = new BehaviorSubject(false);\n this._focused$ = new BehaviorSubject(false);\n this._pauseOnHover$ = new BehaviorSubject(false);\n this._pauseOnFocus$ = new BehaviorSubject(false);\n this._pause$ = new BehaviorSubject(false);\n this._wrap$ = new BehaviorSubject(false);\n /**\n * An event emitted just before the slide transition starts.\n *\n * See [`NgbSlideEvent`](#/components/carousel/api#NgbSlideEvent) for payload details.\n */\n this.slide = new EventEmitter();\n /**\n * An event emitted right after the slide transition is completed.\n *\n * See [`NgbSlideEvent`](#/components/carousel/api#NgbSlideEvent) for payload details.\n *\n * @since 8.0.0\n */\n this.slid = new EventEmitter();\n /*\n * Keep the ids of the panels currently transitionning\n * in order to allow only the transition revertion\n */\n this._transitionIds = null;\n this.animation = config.animation;\n this.interval = config.interval;\n this.wrap = config.wrap;\n this.keyboard = config.keyboard;\n this.pauseOnHover = config.pauseOnHover;\n this.pauseOnFocus = config.pauseOnFocus;\n this.showNavigationArrows = config.showNavigationArrows;\n this.showNavigationIndicators = config.showNavigationIndicators;\n }\n /**\n * Time in milliseconds before the next slide is shown.\n */\n set interval(value) {\n this._interval$.next(value);\n }\n get interval() { return this._interval$.value; }\n /**\n * If `true`, will 'wrap' the carousel by switching from the last slide back to the first.\n */\n set wrap(value) {\n this._wrap$.next(value);\n }\n get wrap() { return this._wrap$.value; }\n /**\n * If `true`, will pause slide switching when mouse cursor hovers the slide.\n *\n * @since 2.2.0\n */\n set pauseOnHover(value) {\n this._pauseOnHover$.next(value);\n }\n get pauseOnHover() { return this._pauseOnHover$.value; }\n /**\n * If `true`, will pause slide switching when the focus is inside the carousel.\n */\n set pauseOnFocus(value) {\n this._pauseOnFocus$.next(value);\n }\n get pauseOnFocus() { return this._pauseOnFocus$.value; }\n set mouseHover(value) { this._mouseHover$.next(value); }\n get mouseHover() { return this._mouseHover$.value; }\n set focused(value) { this._focused$.next(value); }\n get focused() { return this._focused$.value; }\n arrowLeft() {\n this.focus();\n this.prev(NgbSlideEventSource.ARROW_LEFT);\n }\n arrowRight() {\n this.focus();\n this.next(NgbSlideEventSource.ARROW_RIGHT);\n }\n ngAfterContentInit() {\n // setInterval() doesn't play well with SSR and protractor,\n // so we should run it in the browser and outside Angular\n if (isPlatformBrowser(this._platformId)) {\n this._ngZone.runOutsideAngular(() => {\n const hasNextSlide$ = combineLatest([\n this.slide.pipe(map(slideEvent => slideEvent.current), startWith(this.activeId)),\n this._wrap$, this.slides.changes.pipe(startWith(null))\n ])\n .pipe(map(([currentSlideId, wrap]) => {\n const slideArr = this.slides.toArray();\n const currentSlideIdx = this._getSlideIdxById(currentSlideId);\n return wrap ? slideArr.length > 1 : currentSlideIdx < slideArr.length - 1;\n }), distinctUntilChanged());\n combineLatest([\n this._pause$, this._pauseOnHover$, this._mouseHover$, this._pauseOnFocus$, this._focused$, this._interval$,\n hasNextSlide$\n ])\n .pipe(map(([pause, pauseOnHover, mouseHover, pauseOnFocus, focused, interval, hasNextSlide]) => ((pause || (pauseOnHover && mouseHover) || (pauseOnFocus && focused) || !hasNextSlide) ?\n 0 :\n interval)), distinctUntilChanged(), switchMap(interval => interval > 0 ? timer(interval, interval) : NEVER), takeUntil(this._destroy$))\n .subscribe(() => this._ngZone.run(() => this.next(NgbSlideEventSource.TIMER)));\n });\n }\n this.slides.changes.pipe(takeUntil(this._destroy$)).subscribe(() => {\n var _a;\n (_a = this._transitionIds) === null || _a === void 0 ? void 0 : _a.forEach(id => ngbCompleteTransition(this._getSlideElement(id)));\n this._transitionIds = null;\n this._cd.markForCheck();\n // The following code need to be done asynchronously, after the dom becomes stable,\n // otherwise all changes will be undone.\n this._ngZone.onStable.pipe(take(1)).subscribe(() => {\n for (const { id } of this.slides) {\n const element = this._getSlideElement(id);\n if (id === this.activeId) {\n element.classList.add('active');\n }\n else {\n element.classList.remove('active');\n }\n }\n });\n });\n }\n ngAfterContentChecked() {\n let activeSlide = this._getSlideById(this.activeId);\n this.activeId = activeSlide ? activeSlide.id : (this.slides.length ? this.slides.first.id : '');\n }\n ngAfterViewInit() {\n // Initialize the 'active' class (not managed by the template)\n if (this.activeId) {\n const element = this._getSlideElement(this.activeId);\n if (element) {\n element.classList.add('active');\n }\n }\n }\n ngOnDestroy() { this._destroy$.next(); }\n /**\n * Navigates to a slide with the specified identifier.\n */\n select(slideId, source) {\n this._cycleToSelected(slideId, this._getSlideEventDirection(this.activeId, slideId), source);\n }\n /**\n * Navigates to the previous slide.\n */\n prev(source) {\n this._cycleToSelected(this._getPrevSlide(this.activeId), NgbSlideEventDirection.RIGHT, source);\n }\n /**\n * Navigates to the next slide.\n */\n next(source) {\n this._cycleToSelected(this._getNextSlide(this.activeId), NgbSlideEventDirection.LEFT, source);\n }\n /**\n * Pauses cycling through the slides.\n */\n pause() { this._pause$.next(true); }\n /**\n * Restarts cycling through the slides from left to right.\n */\n cycle() { this._pause$.next(false); }\n /**\n * Set the focus on the carousel.\n */\n focus() { this._container.nativeElement.focus(); }\n _cycleToSelected(slideIdx, direction, source) {\n const transitionIds = this._transitionIds;\n if (transitionIds && (transitionIds[0] !== slideIdx || transitionIds[1] !== this.activeId)) {\n // Revert prevented\n return;\n }\n let selectedSlide = this._getSlideById(slideIdx);\n if (selectedSlide && selectedSlide.id !== this.activeId) {\n this._transitionIds = [this.activeId, slideIdx];\n this.slide.emit({ prev: this.activeId, current: selectedSlide.id, direction: direction, paused: this._pause$.value, source });\n const options = {\n animation: this.animation,\n runningTransition: 'stop',\n context: { direction },\n };\n const transitions = [];\n const activeSlide = this._getSlideById(this.activeId);\n if (activeSlide) {\n const activeSlideTransition = ngbRunTransition(this._ngZone, this._getSlideElement(activeSlide.id), ngbCarouselTransitionOut, options);\n activeSlideTransition.subscribe(() => { activeSlide.slid.emit({ isShown: false, direction, source }); });\n transitions.push(activeSlideTransition);\n }\n const previousId = this.activeId;\n this.activeId = selectedSlide.id;\n const nextSlide = this._getSlideById(this.activeId);\n const transition = ngbRunTransition(this._ngZone, this._getSlideElement(selectedSlide.id), ngbCarouselTransitionIn, options);\n transition.subscribe(() => { nextSlide === null || nextSlide === void 0 ? void 0 : nextSlide.slid.emit({ isShown: true, direction, source }); });\n transitions.push(transition);\n zip(...transitions).pipe(take(1)).subscribe(() => {\n this._transitionIds = null;\n this.slid.emit({ prev: previousId, current: selectedSlide.id, direction: direction, paused: this._pause$.value, source });\n });\n }\n // we get here after the interval fires or any external API call like next(), prev() or select()\n this._cd.markForCheck();\n }\n _getSlideEventDirection(currentActiveSlideId, nextActiveSlideId) {\n const currentActiveSlideIdx = this._getSlideIdxById(currentActiveSlideId);\n const nextActiveSlideIdx = this._getSlideIdxById(nextActiveSlideId);\n return currentActiveSlideIdx > nextActiveSlideIdx ? NgbSlideEventDirection.RIGHT : NgbSlideEventDirection.LEFT;\n }\n _getSlideById(slideId) {\n return this.slides.find(slide => slide.id === slideId) || null;\n }\n _getSlideIdxById(slideId) {\n const slide = this._getSlideById(slideId);\n return slide != null ? this.slides.toArray().indexOf(slide) : -1;\n }\n _getNextSlide(currentSlideId) {\n const slideArr = this.slides.toArray();\n const currentSlideIdx = this._getSlideIdxById(currentSlideId);\n const isLastSlide = currentSlideIdx === slideArr.length - 1;\n return isLastSlide ? (this.wrap ? slideArr[0].id : slideArr[slideArr.length - 1].id) :\n slideArr[currentSlideIdx + 1].id;\n }\n _getPrevSlide(currentSlideId) {\n const slideArr = this.slides.toArray();\n const currentSlideIdx = this._getSlideIdxById(currentSlideId);\n const isFirstSlide = currentSlideIdx === 0;\n return isFirstSlide ? (this.wrap ? slideArr[slideArr.length - 1].id : slideArr[0].id) :\n slideArr[currentSlideIdx - 1].id;\n }\n _getSlideElement(slideId) {\n return this._container.nativeElement.querySelector(`#slide-${slideId}`);\n }\n}\nNgbCarousel.ɵfac = function NgbCarousel_Factory(t) { return new (t || NgbCarousel)(ɵngcc0.ɵɵdirectiveInject(NgbCarouselConfig), ɵngcc0.ɵɵdirectiveInject(PLATFORM_ID), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.NgZone), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef)); };\nNgbCarousel.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: NgbCarousel, selectors: [[\"ngb-carousel\"]], contentQueries: function NgbCarousel_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {\n ɵngcc0.ɵɵcontentQuery(dirIndex, NgbSlide, 0);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.slides = _t);\n } }, hostAttrs: [\"tabIndex\", \"0\", 1, \"carousel\", \"slide\"], hostVars: 3, hostBindings: function NgbCarousel_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"keydown.arrowLeft\", function NgbCarousel_keydown_arrowLeft_HostBindingHandler() { return ctx.keyboard && ctx.arrowLeft(); })(\"keydown.arrowRight\", function NgbCarousel_keydown_arrowRight_HostBindingHandler() { return ctx.keyboard && ctx.arrowRight(); })(\"mouseenter\", function NgbCarousel_mouseenter_HostBindingHandler() { return ctx.mouseHover = true; })(\"mouseleave\", function NgbCarousel_mouseleave_HostBindingHandler() { return ctx.mouseHover = false; })(\"focusin\", function NgbCarousel_focusin_HostBindingHandler() { return ctx.focused = true; })(\"focusout\", function NgbCarousel_focusout_HostBindingHandler() { return ctx.focused = false; });\n } if (rf & 2) {\n ɵngcc0.ɵɵattribute(\"aria-activedescendant\", \"slide-\" + ctx.activeId);\n ɵngcc0.ɵɵstyleProp(\"display\", \"block\");\n } }, inputs: { animation: \"animation\", interval: \"interval\", wrap: \"wrap\", keyboard: \"keyboard\", pauseOnHover: \"pauseOnHover\", pauseOnFocus: \"pauseOnFocus\", showNavigationArrows: \"showNavigationArrows\", showNavigationIndicators: \"showNavigationIndicators\", activeId: \"activeId\" }, outputs: { slide: \"slide\", slid: \"slid\" }, exportAs: [\"ngbCarousel\"], decls: 6, vars: 6, consts: function () { let i18n_4; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n /**\n * @desc Currently selected slide number read by screen reader\n */\n const MSG_EXTERNAL_ngb_carousel_slide_number$$FESM2015_NG_BOOTSTRAP_JS__5 = goog.getMsg(\" Slide {$interpolation} of {$interpolation_1} \", { \"interpolation\": \"\\uFFFD0\\uFFFD\", \"interpolation_1\": \"\\uFFFD1\\uFFFD\" });\n i18n_4 = MSG_EXTERNAL_ngb_carousel_slide_number$$FESM2015_NG_BOOTSTRAP_JS__5;\n }\n else {\n i18n_4 = $localize `:Currently selected slide number read by screen reader@@ngb.carousel.slide-number␟a65b1b49aa7dd8c4f3004da6a8c2241814dae621␟783273603869937627: Slide ${\"\\uFFFD0\\uFFFD\"}:INTERPOLATION: of ${\"\\uFFFD1\\uFFFD\"}:INTERPOLATION_1: `;\n } let i18n_6; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_carousel_previous$$FESM2015_NG_BOOTSTRAP_JS__7 = goog.getMsg(\"Previous\");\n i18n_6 = MSG_EXTERNAL_ngb_carousel_previous$$FESM2015_NG_BOOTSTRAP_JS__7;\n }\n else {\n i18n_6 = $localize `:@@ngb.carousel.previous␟680d5c75b7fd8d37961083608b9fcdc4167b4c43␟4452427314943113135:Previous`;\n } let i18n_8; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_carousel_next$$FESM2015_NG_BOOTSTRAP_JS__9 = goog.getMsg(\"Next\");\n i18n_8 = MSG_EXTERNAL_ngb_carousel_next$$FESM2015_NG_BOOTSTRAP_JS__9;\n }\n else {\n i18n_8 = $localize `:@@ngb.carousel.next␟f732c304c7433e5a83ffcd862c3dce709a0f4982␟3885497195825665706:Next`;\n } return [[\"role\", \"tablist\", 1, \"carousel-indicators\"], [\"role\", \"tab\", 3, \"active\", \"click\", 4, \"ngFor\", \"ngForOf\"], [1, \"carousel-inner\"], [\"class\", \"carousel-item\", \"role\", \"tabpanel\", 3, \"id\", 4, \"ngFor\", \"ngForOf\"], [\"class\", \"carousel-control-prev\", \"role\", \"button\", 3, \"click\", 4, \"ngIf\"], [\"class\", \"carousel-control-next\", \"role\", \"button\", 3, \"click\", 4, \"ngIf\"], [\"role\", \"tab\", 3, \"click\"], [\"role\", \"tabpanel\", 1, \"carousel-item\", 3, \"id\"], [1, \"sr-only\"], i18n_4, [3, \"ngTemplateOutlet\"], [\"role\", \"button\", 1, \"carousel-control-prev\", 3, \"click\"], [\"aria-hidden\", \"true\", 1, \"carousel-control-prev-icon\"], i18n_6, [\"role\", \"button\", 1, \"carousel-control-next\", 3, \"click\"], [\"aria-hidden\", \"true\", 1, \"carousel-control-next-icon\"], i18n_8]; }, template: function NgbCarousel_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"ol\", 0);\n ɵngcc0.ɵɵtemplate(1, NgbCarousel_li_1_Template, 1, 5, \"li\", 1);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(2, \"div\", 2);\n ɵngcc0.ɵɵtemplate(3, NgbCarousel_div_3_Template, 4, 4, \"div\", 3);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵtemplate(4, NgbCarousel_a_4_Template, 4, 0, \"a\", 4);\n ɵngcc0.ɵɵtemplate(5, NgbCarousel_a_5_Template, 4, 0, \"a\", 5);\n } if (rf & 2) {\n ɵngcc0.ɵɵclassProp(\"sr-only\", !ctx.showNavigationIndicators);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngForOf\", ctx.slides);\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"ngForOf\", ctx.slides);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.showNavigationArrows);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.showNavigationArrows);\n } }, directives: [ɵngcc1.NgForOf, ɵngcc1.NgIf, ɵngcc1.NgTemplateOutlet], encapsulation: 2, changeDetection: 0 });\nNgbCarousel.ctorParameters = () => [\n { type: NgbCarouselConfig },\n { type: undefined, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] },\n { type: NgZone },\n { type: ChangeDetectorRef },\n { type: ElementRef }\n];\nNgbCarousel.propDecorators = {\n slides: [{ type: ContentChildren, args: [NgbSlide,] }],\n animation: [{ type: Input }],\n activeId: [{ type: Input }],\n interval: [{ type: Input }],\n wrap: [{ type: Input }],\n keyboard: [{ type: Input }],\n pauseOnHover: [{ type: Input }],\n pauseOnFocus: [{ type: Input }],\n showNavigationArrows: [{ type: Input }],\n showNavigationIndicators: [{ type: Input }],\n slide: [{ type: Output }],\n slid: [{ type: Output }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbCarousel, [{\n type: Component,\n args: [{\n selector: 'ngb-carousel',\n exportAs: 'ngbCarousel',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'carousel slide',\n '[style.display]': '\"block\"',\n 'tabIndex': '0',\n '(keydown.arrowLeft)': 'keyboard && arrowLeft()',\n '(keydown.arrowRight)': 'keyboard && arrowRight()',\n '(mouseenter)': 'mouseHover = true',\n '(mouseleave)': 'mouseHover = false',\n '(focusin)': 'focused = true',\n '(focusout)': 'focused = false',\n '[attr.aria-activedescendant]': `'slide-' + activeId`\n },\n template: `\n
    \n
  1. \n
\n
\n
\n \n Slide {{i + 1}} of {{c}}\n \n \n
\n
\n \n \n Previous\n \n \n \n Next\n \n `\n }]\n }], function () { return [{ type: NgbCarouselConfig }, { type: undefined, decorators: [{\n type: Inject,\n args: [PLATFORM_ID]\n }] }, { type: ɵngcc0.NgZone }, { type: ɵngcc0.ChangeDetectorRef }, { type: ɵngcc0.ElementRef }]; }, { slide: [{\n type: Output\n }], slid: [{\n type: Output\n }], animation: [{\n type: Input\n }], interval: [{\n type: Input\n }], wrap: [{\n type: Input\n }], keyboard: [{\n type: Input\n }], pauseOnHover: [{\n type: Input\n }], pauseOnFocus: [{\n type: Input\n }], showNavigationArrows: [{\n type: Input\n }], showNavigationIndicators: [{\n type: Input\n }], activeId: [{\n type: Input\n }], slides: [{\n type: ContentChildren,\n args: [NgbSlide]\n }] }); })();\nvar NgbSlideEventSource;\n(function (NgbSlideEventSource) {\n NgbSlideEventSource[\"TIMER\"] = \"timer\";\n NgbSlideEventSource[\"ARROW_LEFT\"] = \"arrowLeft\";\n NgbSlideEventSource[\"ARROW_RIGHT\"] = \"arrowRight\";\n NgbSlideEventSource[\"INDICATOR\"] = \"indicator\";\n})(NgbSlideEventSource || (NgbSlideEventSource = {}));\nconst NGB_CAROUSEL_DIRECTIVES = [NgbCarousel, NgbSlide];\n\nclass NgbCarouselModule {\n}\nNgbCarouselModule.ɵfac = function NgbCarouselModule_Factory(t) { return new (t || NgbCarouselModule)(); };\nNgbCarouselModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: NgbCarouselModule });\nNgbCarouselModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ imports: [[CommonModule]] });\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(NgbCarouselModule, { declarations: function () { return [NgbCarousel, NgbSlide]; }, imports: function () { return [CommonModule]; }, exports: function () { return [NgbCarousel, NgbSlide]; } }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbCarouselModule, [{\n type: NgModule,\n args: [{ declarations: NGB_CAROUSEL_DIRECTIVES, exports: NGB_CAROUSEL_DIRECTIVES, imports: [CommonModule] }]\n }], null, null); })();\n\n/**\n * A configuration service for the [NgbCollapse](#/components/collapse/api#NgbCollapse) component.\n *\n * You can inject this service, typically in your root component, and customize its properties\n * to provide default values for all collapses used in the application.\n */\nclass NgbCollapseConfig {\n constructor(_ngbConfig) {\n this._ngbConfig = _ngbConfig;\n }\n get animation() { return (this._animation === undefined) ? this._ngbConfig.animation : this._animation; }\n set animation(animation) { this._animation = animation; }\n}\nNgbCollapseConfig.ɵfac = function NgbCollapseConfig_Factory(t) { return new (t || NgbCollapseConfig)(ɵngcc0.ɵɵinject(NgbConfig)); };\nNgbCollapseConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgbCollapseConfig_Factory() { return new NgbCollapseConfig(i0.ɵɵinject(NgbConfig)); }, token: NgbCollapseConfig, providedIn: \"root\" });\nNgbCollapseConfig.ctorParameters = () => [\n { type: NgbConfig }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbCollapseConfig, [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], function () { return [{ type: NgbConfig }]; }, null); })();\n\n/**\n * A directive to provide a simple way of hiding and showing elements on the page.\n */\nclass NgbCollapse {\n constructor(_element, config, _zone) {\n this._element = _element;\n this._zone = _zone;\n /**\n * If `true`, will collapse the element or show it otherwise.\n */\n this.collapsed = false;\n this.ngbCollapseChange = new EventEmitter();\n /**\n * An event emitted when the collapse element is shown, after the transition. It has no payload.\n *\n * @since 8.0.0\n */\n this.shown = new EventEmitter();\n /**\n * An event emitted when the collapse element is hidden, after the transition. It has no payload.\n *\n * @since 8.0.0\n */\n this.hidden = new EventEmitter();\n this.animation = config.animation;\n }\n ngOnInit() { this._runTransition(this.collapsed, false); }\n ngOnChanges({ collapsed }) {\n if (!collapsed.firstChange) {\n this._runTransitionWithEvents(this.collapsed, this.animation);\n }\n }\n /**\n * Triggers collapsing programmatically.\n *\n * If there is a collapsing transition running already, it will be reversed.\n * If the animations are turned off this happens synchronously.\n *\n * @since 8.0.0\n */\n toggle(open = this.collapsed) {\n this.collapsed = !open;\n this.ngbCollapseChange.next(this.collapsed);\n this._runTransitionWithEvents(this.collapsed, this.animation);\n }\n _runTransition(collapsed, animation) {\n return ngbRunTransition(this._zone, this._element.nativeElement, ngbCollapsingTransition, { animation, runningTransition: 'stop', context: { direction: collapsed ? 'hide' : 'show' } });\n }\n _runTransitionWithEvents(collapsed, animation) {\n this._runTransition(collapsed, animation).subscribe(() => {\n if (collapsed) {\n this.hidden.emit();\n }\n else {\n this.shown.emit();\n }\n });\n }\n}\nNgbCollapse.ɵfac = function NgbCollapse_Factory(t) { return new (t || NgbCollapse)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(NgbCollapseConfig), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.NgZone)); };\nNgbCollapse.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbCollapse, selectors: [[\"\", \"ngbCollapse\", \"\"]], inputs: { collapsed: [\"ngbCollapse\", \"collapsed\"], animation: \"animation\" }, outputs: { ngbCollapseChange: \"ngbCollapseChange\", shown: \"shown\", hidden: \"hidden\" }, exportAs: [\"ngbCollapse\"], features: [ɵngcc0.ɵɵNgOnChangesFeature] });\nNgbCollapse.ctorParameters = () => [\n { type: ElementRef },\n { type: NgbCollapseConfig },\n { type: NgZone }\n];\nNgbCollapse.propDecorators = {\n animation: [{ type: Input }],\n collapsed: [{ type: Input, args: ['ngbCollapse',] }],\n ngbCollapseChange: [{ type: Output }],\n shown: [{ type: Output }],\n hidden: [{ type: Output }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbCollapse, [{\n type: Directive,\n args: [{ selector: '[ngbCollapse]', exportAs: 'ngbCollapse' }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: NgbCollapseConfig }, { type: ɵngcc0.NgZone }]; }, { collapsed: [{\n type: Input,\n args: ['ngbCollapse']\n }], ngbCollapseChange: [{\n type: Output\n }], shown: [{\n type: Output\n }], hidden: [{\n type: Output\n }], animation: [{\n type: Input\n }] }); })();\n\nclass NgbCollapseModule {\n}\nNgbCollapseModule.ɵfac = function NgbCollapseModule_Factory(t) { return new (t || NgbCollapseModule)(); };\nNgbCollapseModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: NgbCollapseModule });\nNgbCollapseModule.ɵinj = ɵngcc0.ɵɵdefineInjector({});\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(NgbCollapseModule, { declarations: [NgbCollapse], exports: [NgbCollapse] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbCollapseModule, [{\n type: NgModule,\n args: [{ declarations: [NgbCollapse], exports: [NgbCollapse] }]\n }], null, null); })();\n\n/**\n * A simple class that represents a date that datepicker also uses internally.\n *\n * It is the implementation of the `NgbDateStruct` interface that adds some convenience methods,\n * like `.equals()`, `.before()`, etc.\n *\n * All datepicker APIs consume `NgbDateStruct`, but return `NgbDate`.\n *\n * In many cases it is simpler to manipulate these objects together with\n * [`NgbCalendar`](#/components/datepicker/api#NgbCalendar) than native JS Dates.\n *\n * See the [date format overview](#/components/datepicker/overview#date-model) for more details.\n *\n * @since 3.0.0\n */\nclass NgbDate {\n constructor(year, month, day) {\n this.year = isInteger(year) ? year : null;\n this.month = isInteger(month) ? month : null;\n this.day = isInteger(day) ? day : null;\n }\n /**\n * A **static method** that creates a new date object from the `NgbDateStruct`,\n *\n * ex. `NgbDate.from({year: 2000, month: 5, day: 1})`.\n *\n * If the `date` is already of `NgbDate` type, the method will return the same object.\n */\n static from(date) {\n if (date instanceof NgbDate) {\n return date;\n }\n return date ? new NgbDate(date.year, date.month, date.day) : null;\n }\n /**\n * Checks if the current date is equal to another date.\n */\n equals(other) {\n return other != null && this.year === other.year && this.month === other.month && this.day === other.day;\n }\n /**\n * Checks if the current date is before another date.\n */\n before(other) {\n if (!other) {\n return false;\n }\n if (this.year === other.year) {\n if (this.month === other.month) {\n return this.day === other.day ? false : this.day < other.day;\n }\n else {\n return this.month < other.month;\n }\n }\n else {\n return this.year < other.year;\n }\n }\n /**\n * Checks if the current date is after another date.\n */\n after(other) {\n if (!other) {\n return false;\n }\n if (this.year === other.year) {\n if (this.month === other.month) {\n return this.day === other.day ? false : this.day > other.day;\n }\n else {\n return this.month > other.month;\n }\n }\n else {\n return this.year > other.year;\n }\n }\n}\n\nfunction fromJSDate(jsDate) {\n return new NgbDate(jsDate.getFullYear(), jsDate.getMonth() + 1, jsDate.getDate());\n}\nfunction toJSDate(date) {\n const jsDate = new Date(date.year, date.month - 1, date.day, 12);\n // this is done avoid 30 -> 1930 conversion\n if (!isNaN(jsDate.getTime())) {\n jsDate.setFullYear(date.year);\n }\n return jsDate;\n}\nfunction NGB_DATEPICKER_CALENDAR_FACTORY() {\n return new NgbCalendarGregorian();\n}\n/**\n * A service that represents the calendar used by the datepicker.\n *\n * The default implementation uses the Gregorian calendar. You can inject it in your own\n * implementations if necessary to simplify `NgbDate` calculations.\n */\nclass NgbCalendar {\n}\nNgbCalendar.ɵfac = function NgbCalendar_Factory(t) { return new (t || NgbCalendar)(); };\nNgbCalendar.ɵprov = i0.ɵɵdefineInjectable({ factory: NGB_DATEPICKER_CALENDAR_FACTORY, token: NgbCalendar, providedIn: \"root\" });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbCalendar, [{\n type: Injectable,\n args: [{ providedIn: 'root', useFactory: NGB_DATEPICKER_CALENDAR_FACTORY }]\n }], null, null); })();\nclass NgbCalendarGregorian extends NgbCalendar {\n getDaysPerWeek() { return 7; }\n getMonths() { return [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]; }\n getWeeksPerMonth() { return 6; }\n getNext(date, period = 'd', number = 1) {\n let jsDate = toJSDate(date);\n let checkMonth = true;\n let expectedMonth = jsDate.getMonth();\n switch (period) {\n case 'y':\n jsDate.setFullYear(jsDate.getFullYear() + number);\n break;\n case 'm':\n expectedMonth += number;\n jsDate.setMonth(expectedMonth);\n expectedMonth = expectedMonth % 12;\n if (expectedMonth < 0) {\n expectedMonth = expectedMonth + 12;\n }\n break;\n case 'd':\n jsDate.setDate(jsDate.getDate() + number);\n checkMonth = false;\n break;\n default:\n return date;\n }\n if (checkMonth && jsDate.getMonth() !== expectedMonth) {\n // this means the destination month has less days than the initial month\n // let's go back to the end of the previous month:\n jsDate.setDate(0);\n }\n return fromJSDate(jsDate);\n }\n getPrev(date, period = 'd', number = 1) { return this.getNext(date, period, -number); }\n getWeekday(date) {\n let jsDate = toJSDate(date);\n let day = jsDate.getDay();\n // in JS Date Sun=0, in ISO 8601 Sun=7\n return day === 0 ? 7 : day;\n }\n getWeekNumber(week, firstDayOfWeek) {\n // in JS Date Sun=0, in ISO 8601 Sun=7\n if (firstDayOfWeek === 7) {\n firstDayOfWeek = 0;\n }\n const thursdayIndex = (4 + 7 - firstDayOfWeek) % 7;\n let date = week[thursdayIndex];\n const jsDate = toJSDate(date);\n jsDate.setDate(jsDate.getDate() + 4 - (jsDate.getDay() || 7)); // Thursday\n const time = jsDate.getTime();\n jsDate.setMonth(0); // Compare with Jan 1\n jsDate.setDate(1);\n return Math.floor(Math.round((time - jsDate.getTime()) / 86400000) / 7) + 1;\n }\n getToday() { return fromJSDate(new Date()); }\n isValid(date) {\n if (!date || !isInteger(date.year) || !isInteger(date.month) || !isInteger(date.day)) {\n return false;\n }\n // year 0 doesn't exist in Gregorian calendar\n if (date.year === 0) {\n return false;\n }\n const jsDate = toJSDate(date);\n return !isNaN(jsDate.getTime()) && jsDate.getFullYear() === date.year && jsDate.getMonth() + 1 === date.month &&\n jsDate.getDate() === date.day;\n }\n}\nNgbCalendarGregorian.ɵfac = function NgbCalendarGregorian_Factory(t) { return ɵNgbCalendarGregorian_BaseFactory(t || NgbCalendarGregorian); };\nNgbCalendarGregorian.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: NgbCalendarGregorian, factory: NgbCalendarGregorian.ɵfac });\nconst ɵNgbCalendarGregorian_BaseFactory = /*@__PURE__*/ ɵngcc0.ɵɵgetInheritedFactory(NgbCalendarGregorian);\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbCalendarGregorian, [{\n type: Injectable\n }], null, null); })();\n\nfunction isChangedDate(prev, next) {\n return !dateComparator(prev, next);\n}\nfunction isChangedMonth(prev, next) {\n return !prev && !next ? false : !prev || !next ? true : prev.year !== next.year || prev.month !== next.month;\n}\nfunction dateComparator(prev, next) {\n return (!prev && !next) || (!!prev && !!next && prev.equals(next));\n}\nfunction checkMinBeforeMax(minDate, maxDate) {\n if (maxDate && minDate && maxDate.before(minDate)) {\n throw new Error(`'maxDate' ${maxDate} should be greater than 'minDate' ${minDate}`);\n }\n}\nfunction checkDateInRange(date, minDate, maxDate) {\n if (date && minDate && date.before(minDate)) {\n return minDate;\n }\n if (date && maxDate && date.after(maxDate)) {\n return maxDate;\n }\n return date || null;\n}\nfunction isDateSelectable(date, state) {\n const { minDate, maxDate, disabled, markDisabled } = state;\n // clang-format off\n return !(date === null ||\n date === undefined ||\n disabled ||\n (markDisabled && markDisabled(date, { year: date.year, month: date.month })) ||\n (minDate && date.before(minDate)) ||\n (maxDate && date.after(maxDate)));\n // clang-format on\n}\nfunction generateSelectBoxMonths(calendar, date, minDate, maxDate) {\n if (!date) {\n return [];\n }\n let months = calendar.getMonths(date.year);\n if (minDate && date.year === minDate.year) {\n const index = months.findIndex(month => month === minDate.month);\n months = months.slice(index);\n }\n if (maxDate && date.year === maxDate.year) {\n const index = months.findIndex(month => month === maxDate.month);\n months = months.slice(0, index + 1);\n }\n return months;\n}\nfunction generateSelectBoxYears(date, minDate, maxDate) {\n if (!date) {\n return [];\n }\n const start = minDate ? Math.max(minDate.year, date.year - 500) : date.year - 10;\n const end = maxDate ? Math.min(maxDate.year, date.year + 500) : date.year + 10;\n const length = end - start + 1;\n const numbers = Array(length);\n for (let i = 0; i < length; i++) {\n numbers[i] = start + i;\n }\n return numbers;\n}\nfunction nextMonthDisabled(calendar, date, maxDate) {\n const nextDate = Object.assign(calendar.getNext(date, 'm'), { day: 1 });\n return maxDate != null && nextDate.after(maxDate);\n}\nfunction prevMonthDisabled(calendar, date, minDate) {\n const prevDate = Object.assign(calendar.getPrev(date, 'm'), { day: 1 });\n return minDate != null && (prevDate.year === minDate.year && prevDate.month < minDate.month ||\n prevDate.year < minDate.year && minDate.month === 1);\n}\nfunction buildMonths(calendar, date, state, i18n, force) {\n const { displayMonths, months } = state;\n // move old months to a temporary array\n const monthsToReuse = months.splice(0, months.length);\n // generate new first dates, nullify or reuse months\n const firstDates = Array.from({ length: displayMonths }, (_, i) => {\n const firstDate = Object.assign(calendar.getNext(date, 'm', i), { day: 1 });\n months[i] = null;\n if (!force) {\n const reusedIndex = monthsToReuse.findIndex(month => month.firstDate.equals(firstDate));\n // move reused month back to months\n if (reusedIndex !== -1) {\n months[i] = monthsToReuse.splice(reusedIndex, 1)[0];\n }\n }\n return firstDate;\n });\n // rebuild nullified months\n firstDates.forEach((firstDate, i) => {\n if (months[i] === null) {\n months[i] = buildMonth(calendar, firstDate, state, i18n, monthsToReuse.shift() || {});\n }\n });\n return months;\n}\nfunction buildMonth(calendar, date, state, i18n, month = {}) {\n const { dayTemplateData, minDate, maxDate, firstDayOfWeek, markDisabled, outsideDays, weekdayWidth, weekdaysVisible } = state;\n const calendarToday = calendar.getToday();\n month.firstDate = null;\n month.lastDate = null;\n month.number = date.month;\n month.year = date.year;\n month.weeks = month.weeks || [];\n month.weekdays = month.weekdays || [];\n date = getFirstViewDate(calendar, date, firstDayOfWeek);\n // clearing weekdays, if not visible\n if (!weekdaysVisible) {\n month.weekdays.length = 0;\n }\n // month has weeks\n for (let week = 0; week < calendar.getWeeksPerMonth(); week++) {\n let weekObject = month.weeks[week];\n if (!weekObject) {\n weekObject = month.weeks[week] = { number: 0, days: [], collapsed: true };\n }\n const days = weekObject.days;\n // week has days\n for (let day = 0; day < calendar.getDaysPerWeek(); day++) {\n if (week === 0 && weekdaysVisible) {\n month.weekdays[day] = i18n.getWeekdayLabel(calendar.getWeekday(date), weekdayWidth);\n }\n const newDate = new NgbDate(date.year, date.month, date.day);\n const nextDate = calendar.getNext(newDate);\n const ariaLabel = i18n.getDayAriaLabel(newDate);\n // marking date as disabled\n let disabled = !!((minDate && newDate.before(minDate)) || (maxDate && newDate.after(maxDate)));\n if (!disabled && markDisabled) {\n disabled = markDisabled(newDate, { month: month.number, year: month.year });\n }\n // today\n let today = newDate.equals(calendarToday);\n // adding user-provided data to the context\n let contextUserData = dayTemplateData ? dayTemplateData(newDate, { month: month.number, year: month.year }) : undefined;\n // saving first date of the month\n if (month.firstDate === null && newDate.month === month.number) {\n month.firstDate = newDate;\n }\n // saving last date of the month\n if (newDate.month === month.number && nextDate.month !== month.number) {\n month.lastDate = newDate;\n }\n let dayObject = days[day];\n if (!dayObject) {\n dayObject = days[day] = {};\n }\n dayObject.date = newDate;\n dayObject.context = Object.assign(dayObject.context || {}, {\n $implicit: newDate,\n date: newDate,\n data: contextUserData,\n currentMonth: month.number,\n currentYear: month.year, disabled,\n focused: false,\n selected: false, today\n });\n dayObject.tabindex = -1;\n dayObject.ariaLabel = ariaLabel;\n dayObject.hidden = false;\n date = nextDate;\n }\n weekObject.number = calendar.getWeekNumber(days.map(day => day.date), firstDayOfWeek);\n // marking week as collapsed\n weekObject.collapsed = outsideDays === 'collapsed' && days[0].date.month !== month.number &&\n days[days.length - 1].date.month !== month.number;\n }\n return month;\n}\nfunction getFirstViewDate(calendar, date, firstDayOfWeek) {\n const daysPerWeek = calendar.getDaysPerWeek();\n const firstMonthDate = new NgbDate(date.year, date.month, 1);\n const dayOfWeek = calendar.getWeekday(firstMonthDate) % daysPerWeek;\n return calendar.getPrev(firstMonthDate, 'd', (daysPerWeek + dayOfWeek - firstDayOfWeek) % daysPerWeek);\n}\n\nfunction NGB_DATEPICKER_18N_FACTORY(locale) {\n return new NgbDatepickerI18nDefault(locale);\n}\n/**\n * A service supplying i18n data to the datepicker component.\n *\n * The default implementation of this service uses the Angular locale and registered locale data for\n * weekdays and month names (as explained in the Angular i18n guide).\n *\n * It also provides a way to i18n data that depends on calendar calculations, like aria labels, day, week and year\n * numerals. For other static labels the datepicker uses the default Angular i18n.\n *\n * See the [i18n demo](#/components/datepicker/examples#i18n) and\n * [Hebrew calendar demo](#/components/datepicker/calendars#hebrew) on how to extend this class and define\n * a custom provider for i18n.\n */\nclass NgbDatepickerI18n {\n /**\n * Returns the text label to display above the day view.\n *\n * @since 9.1.0\n */\n getMonthLabel(date) {\n return `${this.getMonthFullName(date.month, date.year)} ${this.getYearNumerals(date.year)}`;\n }\n /**\n * Returns the textual representation of a day that is rendered in a day cell.\n *\n * @since 3.0.0\n */\n getDayNumerals(date) { return `${date.day}`; }\n /**\n * Returns the textual representation of a week number rendered by datepicker.\n *\n * @since 3.0.0\n */\n getWeekNumerals(weekNumber) { return `${weekNumber}`; }\n /**\n * Returns the textual representation of a year that is rendered in the datepicker year select box.\n *\n * @since 3.0.0\n */\n getYearNumerals(year) { return `${year}`; }\n /**\n * Returns the week label to display in the heading of the month view.\n *\n * @since 9.1.0\n */\n getWeekLabel() { return ''; }\n}\nNgbDatepickerI18n.ɵfac = function NgbDatepickerI18n_Factory(t) { return new (t || NgbDatepickerI18n)(); };\nNgbDatepickerI18n.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgbDatepickerI18n_Factory() { return NGB_DATEPICKER_18N_FACTORY(i0.ɵɵinject(i0.LOCALE_ID)); }, token: NgbDatepickerI18n, providedIn: \"root\" });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDatepickerI18n, [{\n type: Injectable,\n args: [{ providedIn: 'root', useFactory: NGB_DATEPICKER_18N_FACTORY, deps: [LOCALE_ID] }]\n }], null, null); })();\n/**\n * A service providing default implementation for the datepicker i18n.\n * It can be used as a base implementation if necessary.\n *\n * @since 9.1.0\n */\nclass NgbDatepickerI18nDefault extends NgbDatepickerI18n {\n constructor(_locale) {\n super();\n this._locale = _locale;\n this._monthsShort = getLocaleMonthNames(_locale, FormStyle.Standalone, TranslationWidth.Abbreviated);\n this._monthsFull = getLocaleMonthNames(_locale, FormStyle.Standalone, TranslationWidth.Wide);\n }\n getWeekdayLabel(weekday, width) {\n const weekdaysStartingOnSunday = getLocaleDayNames(this._locale, FormStyle.Standalone, width === undefined ? TranslationWidth.Short : width);\n const weekdays = weekdaysStartingOnSunday.map((day, index) => weekdaysStartingOnSunday[(index + 1) % 7]);\n return weekdays[weekday - 1] || '';\n }\n getMonthShortName(month) { return this._monthsShort[month - 1] || ''; }\n getMonthFullName(month) { return this._monthsFull[month - 1] || ''; }\n getDayAriaLabel(date) {\n const jsDate = new Date(date.year, date.month - 1, date.day);\n return formatDate(jsDate, 'fullDate', this._locale);\n }\n}\nNgbDatepickerI18nDefault.ɵfac = function NgbDatepickerI18nDefault_Factory(t) { return new (t || NgbDatepickerI18nDefault)(ɵngcc0.ɵɵinject(LOCALE_ID)); };\nNgbDatepickerI18nDefault.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: NgbDatepickerI18nDefault, factory: NgbDatepickerI18nDefault.ɵfac });\nNgbDatepickerI18nDefault.ctorParameters = () => [\n { type: String, decorators: [{ type: Inject, args: [LOCALE_ID,] }] }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDatepickerI18nDefault, [{\n type: Injectable\n }], function () { return [{ type: String, decorators: [{\n type: Inject,\n args: [LOCALE_ID]\n }] }]; }, null); })();\n\nclass NgbDatepickerService {\n constructor(_calendar, _i18n) {\n this._calendar = _calendar;\n this._i18n = _i18n;\n this._VALIDATORS = {\n dayTemplateData: (dayTemplateData) => {\n if (this._state.dayTemplateData !== dayTemplateData) {\n return { dayTemplateData };\n }\n },\n displayMonths: (displayMonths) => {\n displayMonths = toInteger(displayMonths);\n if (isInteger(displayMonths) && displayMonths > 0 && this._state.displayMonths !== displayMonths) {\n return { displayMonths };\n }\n },\n disabled: (disabled) => {\n if (this._state.disabled !== disabled) {\n return { disabled };\n }\n },\n firstDayOfWeek: (firstDayOfWeek) => {\n firstDayOfWeek = toInteger(firstDayOfWeek);\n if (isInteger(firstDayOfWeek) && firstDayOfWeek >= 0 && this._state.firstDayOfWeek !== firstDayOfWeek) {\n return { firstDayOfWeek };\n }\n },\n focusVisible: (focusVisible) => {\n if (this._state.focusVisible !== focusVisible && !this._state.disabled) {\n return { focusVisible };\n }\n },\n markDisabled: (markDisabled) => {\n if (this._state.markDisabled !== markDisabled) {\n return { markDisabled };\n }\n },\n maxDate: (date) => {\n const maxDate = this.toValidDate(date, null);\n if (isChangedDate(this._state.maxDate, maxDate)) {\n return { maxDate };\n }\n },\n minDate: (date) => {\n const minDate = this.toValidDate(date, null);\n if (isChangedDate(this._state.minDate, minDate)) {\n return { minDate };\n }\n },\n navigation: (navigation) => {\n if (this._state.navigation !== navigation) {\n return { navigation };\n }\n },\n outsideDays: (outsideDays) => {\n if (this._state.outsideDays !== outsideDays) {\n return { outsideDays };\n }\n },\n weekdays: (weekdays) => {\n const weekdayWidth = weekdays === true || weekdays === false ? TranslationWidth.Short : weekdays;\n const weekdaysVisible = weekdays === true || weekdays === false ? weekdays : true;\n if (this._state.weekdayWidth !== weekdayWidth || this._state.weekdaysVisible !== weekdaysVisible) {\n return { weekdayWidth, weekdaysVisible };\n }\n }\n };\n this._model$ = new Subject();\n this._dateSelect$ = new Subject();\n this._state = {\n dayTemplateData: null,\n markDisabled: null,\n maxDate: null,\n minDate: null,\n disabled: false,\n displayMonths: 1,\n firstDate: null,\n firstDayOfWeek: 1,\n lastDate: null,\n focusDate: null,\n focusVisible: false,\n months: [],\n navigation: 'select',\n outsideDays: 'visible',\n prevDisabled: false,\n nextDisabled: false,\n selectedDate: null,\n selectBoxes: { years: [], months: [] },\n weekdayWidth: TranslationWidth.Short,\n weekdaysVisible: true\n };\n }\n get model$() { return this._model$.pipe(filter(model => model.months.length > 0)); }\n get dateSelect$() { return this._dateSelect$.pipe(filter(date => date !== null)); }\n set(options) {\n let patch = Object.keys(options)\n .map(key => this._VALIDATORS[key](options[key]))\n .reduce((obj, part) => (Object.assign(Object.assign({}, obj), part)), {});\n if (Object.keys(patch).length > 0) {\n this._nextState(patch);\n }\n }\n focus(date) {\n const focusedDate = this.toValidDate(date, null);\n if (focusedDate != null && !this._state.disabled && isChangedDate(this._state.focusDate, focusedDate)) {\n this._nextState({ focusDate: date });\n }\n }\n focusSelect() {\n if (isDateSelectable(this._state.focusDate, this._state)) {\n this.select(this._state.focusDate, { emitEvent: true });\n }\n }\n open(date) {\n const firstDate = this.toValidDate(date, this._calendar.getToday());\n if (firstDate != null && !this._state.disabled &&\n (!this._state.firstDate || isChangedMonth(this._state.firstDate, firstDate))) {\n this._nextState({ firstDate });\n }\n }\n select(date, options = {}) {\n const selectedDate = this.toValidDate(date, null);\n if (selectedDate != null && !this._state.disabled) {\n if (isChangedDate(this._state.selectedDate, selectedDate)) {\n this._nextState({ selectedDate });\n }\n if (options.emitEvent && isDateSelectable(selectedDate, this._state)) {\n this._dateSelect$.next(selectedDate);\n }\n }\n }\n toValidDate(date, defaultValue) {\n const ngbDate = NgbDate.from(date);\n if (defaultValue === undefined) {\n defaultValue = this._calendar.getToday();\n }\n return this._calendar.isValid(ngbDate) ? ngbDate : defaultValue;\n }\n getMonth(struct) {\n for (let month of this._state.months) {\n if (struct.month === month.number && struct.year === month.year) {\n return month;\n }\n }\n throw new Error(`month ${struct.month} of year ${struct.year} not found`);\n }\n _nextState(patch) {\n const newState = this._updateState(patch);\n this._patchContexts(newState);\n this._state = newState;\n this._model$.next(this._state);\n }\n _patchContexts(state) {\n const { months, displayMonths, selectedDate, focusDate, focusVisible, disabled, outsideDays } = state;\n state.months.forEach(month => {\n month.weeks.forEach(week => {\n week.days.forEach(day => {\n // patch focus flag\n if (focusDate) {\n day.context.focused = focusDate.equals(day.date) && focusVisible;\n }\n // calculating tabindex\n day.tabindex =\n !disabled && focusDate && day.date.equals(focusDate) && focusDate.month === month.number ? 0 : -1;\n // override context disabled\n if (disabled === true) {\n day.context.disabled = true;\n }\n // patch selection flag\n if (selectedDate !== undefined) {\n day.context.selected = selectedDate !== null && selectedDate.equals(day.date);\n }\n // visibility\n if (month.number !== day.date.month) {\n day.hidden = outsideDays === 'hidden' || outsideDays === 'collapsed' ||\n (displayMonths > 1 && day.date.after(months[0].firstDate) &&\n day.date.before(months[displayMonths - 1].lastDate));\n }\n });\n });\n });\n }\n _updateState(patch) {\n // patching fields\n const state = Object.assign({}, this._state, patch);\n let startDate = state.firstDate;\n // min/max dates changed\n if ('minDate' in patch || 'maxDate' in patch) {\n checkMinBeforeMax(state.minDate, state.maxDate);\n state.focusDate = checkDateInRange(state.focusDate, state.minDate, state.maxDate);\n state.firstDate = checkDateInRange(state.firstDate, state.minDate, state.maxDate);\n startDate = state.focusDate;\n }\n // disabled\n if ('disabled' in patch) {\n state.focusVisible = false;\n }\n // initial rebuild via 'select()'\n if ('selectedDate' in patch && this._state.months.length === 0) {\n startDate = state.selectedDate;\n }\n // terminate early if only focus visibility was changed\n if ('focusVisible' in patch) {\n return state;\n }\n // focus date changed\n if ('focusDate' in patch) {\n state.focusDate = checkDateInRange(state.focusDate, state.minDate, state.maxDate);\n startDate = state.focusDate;\n // nothing to rebuild if only focus changed and it is still visible\n if (state.months.length !== 0 && state.focusDate && !state.focusDate.before(state.firstDate) &&\n !state.focusDate.after(state.lastDate)) {\n return state;\n }\n }\n // first date changed\n if ('firstDate' in patch) {\n state.firstDate = checkDateInRange(state.firstDate, state.minDate, state.maxDate);\n startDate = state.firstDate;\n }\n // rebuilding months\n if (startDate) {\n const forceRebuild = 'dayTemplateData' in patch || 'firstDayOfWeek' in patch || 'markDisabled' in patch ||\n 'minDate' in patch || 'maxDate' in patch || 'disabled' in patch || 'outsideDays' in patch ||\n 'weekdaysVisible' in patch;\n const months = buildMonths(this._calendar, startDate, state, this._i18n, forceRebuild);\n // updating months and boundary dates\n state.months = months;\n state.firstDate = months[0].firstDate;\n state.lastDate = months[months.length - 1].lastDate;\n // reset selected date if 'markDisabled' returns true\n if ('selectedDate' in patch && !isDateSelectable(state.selectedDate, state)) {\n state.selectedDate = null;\n }\n // adjusting focus after months were built\n if ('firstDate' in patch) {\n if (!state.focusDate || state.focusDate.before(state.firstDate) || state.focusDate.after(state.lastDate)) {\n state.focusDate = startDate;\n }\n }\n // adjusting months/years for the select box navigation\n const yearChanged = !this._state.firstDate || this._state.firstDate.year !== state.firstDate.year;\n const monthChanged = !this._state.firstDate || this._state.firstDate.month !== state.firstDate.month;\n if (state.navigation === 'select') {\n // years -> boundaries (min/max were changed)\n if ('minDate' in patch || 'maxDate' in patch || state.selectBoxes.years.length === 0 || yearChanged) {\n state.selectBoxes.years = generateSelectBoxYears(state.firstDate, state.minDate, state.maxDate);\n }\n // months -> when current year or boundaries change\n if ('minDate' in patch || 'maxDate' in patch || state.selectBoxes.months.length === 0 || yearChanged) {\n state.selectBoxes.months =\n generateSelectBoxMonths(this._calendar, state.firstDate, state.minDate, state.maxDate);\n }\n }\n else {\n state.selectBoxes = { years: [], months: [] };\n }\n // updating navigation arrows -> boundaries change (min/max) or month/year changes\n if ((state.navigation === 'arrows' || state.navigation === 'select') &&\n (monthChanged || yearChanged || 'minDate' in patch || 'maxDate' in patch || 'disabled' in patch)) {\n state.prevDisabled = state.disabled || prevMonthDisabled(this._calendar, state.firstDate, state.minDate);\n state.nextDisabled = state.disabled || nextMonthDisabled(this._calendar, state.lastDate, state.maxDate);\n }\n }\n return state;\n }\n}\nNgbDatepickerService.ɵfac = function NgbDatepickerService_Factory(t) { return new (t || NgbDatepickerService)(ɵngcc0.ɵɵinject(NgbCalendar), ɵngcc0.ɵɵinject(NgbDatepickerI18n)); };\nNgbDatepickerService.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: NgbDatepickerService, factory: NgbDatepickerService.ɵfac });\nNgbDatepickerService.ctorParameters = () => [\n { type: NgbCalendar },\n { type: NgbDatepickerI18n }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDatepickerService, [{\n type: Injectable\n }], function () { return [{ type: NgbCalendar }, { type: NgbDatepickerI18n }]; }, null); })();\n\n// clang-format on\nvar NavigationEvent;\n(function (NavigationEvent) {\n NavigationEvent[NavigationEvent[\"PREV\"] = 0] = \"PREV\";\n NavigationEvent[NavigationEvent[\"NEXT\"] = 1] = \"NEXT\";\n})(NavigationEvent || (NavigationEvent = {}));\n\n/**\n * A configuration service for the [`NgbDatepicker`](#/components/datepicker/api#NgbDatepicker) component.\n *\n * You can inject this service, typically in your root component, and customize the values of its properties in\n * order to provide default values for all the datepickers used in the application.\n */\nclass NgbDatepickerConfig {\n constructor() {\n this.displayMonths = 1;\n this.firstDayOfWeek = 1;\n this.navigation = 'select';\n this.outsideDays = 'visible';\n this.showWeekNumbers = false;\n this.weekdays = TranslationWidth.Short;\n }\n}\nNgbDatepickerConfig.ɵfac = function NgbDatepickerConfig_Factory(t) { return new (t || NgbDatepickerConfig)(); };\nNgbDatepickerConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgbDatepickerConfig_Factory() { return new NgbDatepickerConfig(); }, token: NgbDatepickerConfig, providedIn: \"root\" });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDatepickerConfig, [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], function () { return []; }, null); })();\n\nfunction NGB_DATEPICKER_DATE_ADAPTER_FACTORY() {\n return new NgbDateStructAdapter();\n}\n/**\n * An abstract service that does the conversion between the internal datepicker `NgbDateStruct` model and\n * any provided user date model `D`, ex. a string, a native date, etc.\n *\n * The adapter is used **only** for conversion when binding datepicker to a form control,\n * ex. `[(ngModel)]=\"userDateModel\"`. Here `userDateModel` can be of any type.\n *\n * The default datepicker implementation assumes we use `NgbDateStruct` as a user model.\n *\n * See the [date format overview](#/components/datepicker/overview#date-model) for more details\n * and the [custom adapter demo](#/components/datepicker/examples#adapter) for an example.\n */\nclass NgbDateAdapter {\n}\nNgbDateAdapter.ɵfac = function NgbDateAdapter_Factory(t) { return new (t || NgbDateAdapter)(); };\nNgbDateAdapter.ɵprov = i0.ɵɵdefineInjectable({ factory: NGB_DATEPICKER_DATE_ADAPTER_FACTORY, token: NgbDateAdapter, providedIn: \"root\" });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDateAdapter, [{\n type: Injectable,\n args: [{ providedIn: 'root', useFactory: NGB_DATEPICKER_DATE_ADAPTER_FACTORY }]\n }], null, null); })();\nclass NgbDateStructAdapter extends NgbDateAdapter {\n /**\n * Converts a NgbDateStruct value into NgbDateStruct value\n */\n fromModel(date) {\n return (date && isInteger(date.year) && isInteger(date.month) && isInteger(date.day)) ?\n { year: date.year, month: date.month, day: date.day } :\n null;\n }\n /**\n * Converts a NgbDateStruct value into NgbDateStruct value\n */\n toModel(date) {\n return (date && isInteger(date.year) && isInteger(date.month) && isInteger(date.day)) ?\n { year: date.year, month: date.month, day: date.day } :\n null;\n }\n}\nNgbDateStructAdapter.ɵfac = function NgbDateStructAdapter_Factory(t) { return ɵNgbDateStructAdapter_BaseFactory(t || NgbDateStructAdapter); };\nNgbDateStructAdapter.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: NgbDateStructAdapter, factory: NgbDateStructAdapter.ɵfac });\nconst ɵNgbDateStructAdapter_BaseFactory = /*@__PURE__*/ ɵngcc0.ɵɵgetInheritedFactory(NgbDateStructAdapter);\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDateStructAdapter, [{\n type: Injectable\n }], null, null); })();\n\n/**\n * A directive that marks the content template that customizes the way datepicker months are displayed\n *\n * @since 5.3.0\n */\nclass NgbDatepickerContent {\n constructor(templateRef) {\n this.templateRef = templateRef;\n }\n}\nNgbDatepickerContent.ɵfac = function NgbDatepickerContent_Factory(t) { return new (t || NgbDatepickerContent)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.TemplateRef)); };\nNgbDatepickerContent.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbDatepickerContent, selectors: [[\"ng-template\", \"ngbDatepickerContent\", \"\"]] });\nNgbDatepickerContent.ctorParameters = () => [\n { type: TemplateRef }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDatepickerContent, [{\n type: Directive,\n args: [{ selector: 'ng-template[ngbDatepickerContent]' }]\n }], function () { return [{ type: ɵngcc0.TemplateRef }]; }, null); })();\n/**\n * A highly configurable component that helps you with selecting calendar dates.\n *\n * `NgbDatepicker` is meant to be displayed inline on a page or put inside a popup.\n */\nclass NgbDatepicker {\n constructor(_service, _calendar, i18n, config, cd, _elementRef, _ngbDateAdapter, _ngZone) {\n this._service = _service;\n this._calendar = _calendar;\n this.i18n = i18n;\n this._elementRef = _elementRef;\n this._ngbDateAdapter = _ngbDateAdapter;\n this._ngZone = _ngZone;\n this._controlValue = null;\n this._destroyed$ = new Subject();\n this._publicState = {};\n /**\n * An event emitted right before the navigation happens and displayed month changes.\n *\n * See [`NgbDatepickerNavigateEvent`](#/components/datepicker/api#NgbDatepickerNavigateEvent) for the payload info.\n */\n this.navigate = new EventEmitter();\n /**\n * An event emitted when user selects a date using keyboard or mouse.\n *\n * The payload of the event is currently selected `NgbDate`.\n *\n * @since 5.2.0\n */\n this.dateSelect = new EventEmitter();\n this.onChange = (_) => { };\n this.onTouched = () => { };\n ['dayTemplate', 'dayTemplateData', 'displayMonths', 'firstDayOfWeek', 'footerTemplate', 'markDisabled', 'minDate',\n 'maxDate', 'navigation', 'outsideDays', 'showWeekNumbers', 'startDate', 'weekdays']\n .forEach(input => this[input] = config[input]);\n _service.dateSelect$.pipe(takeUntil(this._destroyed$)).subscribe(date => { this.dateSelect.emit(date); });\n _service.model$.pipe(takeUntil(this._destroyed$)).subscribe(model => {\n const newDate = model.firstDate;\n const oldDate = this.model ? this.model.firstDate : null;\n // update public state\n this._publicState = {\n maxDate: model.maxDate,\n minDate: model.minDate,\n firstDate: model.firstDate,\n lastDate: model.lastDate,\n focusedDate: model.focusDate,\n months: model.months.map(viewModel => viewModel.firstDate)\n };\n let navigationPrevented = false;\n // emitting navigation event if the first month changes\n if (!newDate.equals(oldDate)) {\n this.navigate.emit({\n current: oldDate ? { year: oldDate.year, month: oldDate.month } : null,\n next: { year: newDate.year, month: newDate.month },\n preventDefault: () => navigationPrevented = true\n });\n // can't prevent the very first navigation\n if (navigationPrevented && oldDate !== null) {\n this._service.open(oldDate);\n return;\n }\n }\n const newSelectedDate = model.selectedDate;\n const newFocusedDate = model.focusDate;\n const oldFocusedDate = this.model ? this.model.focusDate : null;\n this.model = model;\n // handling selection change\n if (isChangedDate(newSelectedDate, this._controlValue)) {\n this._controlValue = newSelectedDate;\n this.onTouched();\n this.onChange(this._ngbDateAdapter.toModel(newSelectedDate));\n }\n // handling focus change\n if (isChangedDate(newFocusedDate, oldFocusedDate) && oldFocusedDate && model.focusVisible) {\n this.focus();\n }\n cd.markForCheck();\n });\n }\n /**\n * Returns the readonly public state of the datepicker\n *\n * @since 5.2.0\n */\n get state() { return this._publicState; }\n /**\n * Returns the calendar service used in the specific datepicker instance.\n *\n * @since 5.3.0\n */\n get calendar() { return this._calendar; }\n /**\n * Focuses on given date.\n */\n focusDate(date) { this._service.focus(NgbDate.from(date)); }\n /**\n * Selects focused date.\n */\n focusSelect() { this._service.focusSelect(); }\n focus() {\n this._ngZone.onStable.asObservable().pipe(take(1)).subscribe(() => {\n const elementToFocus = this._elementRef.nativeElement.querySelector('div.ngb-dp-day[tabindex=\"0\"]');\n if (elementToFocus) {\n elementToFocus.focus();\n }\n });\n }\n /**\n * Navigates to the provided date.\n *\n * With the default calendar we use ISO 8601: 'month' is 1=Jan ... 12=Dec.\n * If nothing or invalid date provided calendar will open current month.\n *\n * Use the `[startDate]` input as an alternative.\n */\n navigateTo(date) {\n this._service.open(NgbDate.from(date ? date.day ? date : Object.assign(Object.assign({}, date), { day: 1 }) : null));\n }\n ngAfterViewInit() {\n this._ngZone.runOutsideAngular(() => {\n const focusIns$ = fromEvent(this._contentEl.nativeElement, 'focusin');\n const focusOuts$ = fromEvent(this._contentEl.nativeElement, 'focusout');\n const { nativeElement } = this._elementRef;\n // we're changing 'focusVisible' only when entering or leaving months view\n // and ignoring all focus events where both 'target' and 'related' target are day cells\n merge(focusIns$, focusOuts$)\n .pipe(filter(({ target, relatedTarget }) => !(hasClassName(target, 'ngb-dp-day') && hasClassName(relatedTarget, 'ngb-dp-day') &&\n nativeElement.contains(target) && nativeElement.contains(relatedTarget))), takeUntil(this._destroyed$))\n .subscribe(({ type }) => this._ngZone.run(() => this._service.set({ focusVisible: type === 'focusin' })));\n });\n }\n ngOnDestroy() { this._destroyed$.next(); }\n ngOnInit() {\n if (this.model === undefined) {\n const inputs = {};\n ['dayTemplateData', 'displayMonths', 'markDisabled', 'firstDayOfWeek', 'navigation', 'minDate', 'maxDate',\n 'outsideDays', 'weekdays']\n .forEach(name => inputs[name] = this[name]);\n this._service.set(inputs);\n this.navigateTo(this.startDate);\n }\n if (!this.dayTemplate) {\n this.dayTemplate = this._defaultDayTemplate;\n }\n }\n ngOnChanges(changes) {\n const inputs = {};\n ['dayTemplateData', 'displayMonths', 'markDisabled', 'firstDayOfWeek', 'navigation', 'minDate', 'maxDate',\n 'outsideDays', 'weekdays']\n .filter(name => name in changes)\n .forEach(name => inputs[name] = this[name]);\n this._service.set(inputs);\n if ('startDate' in changes) {\n const { currentValue, previousValue } = changes.startDate;\n if (isChangedMonth(previousValue, currentValue)) {\n this.navigateTo(this.startDate);\n }\n }\n }\n onDateSelect(date) {\n this._service.focus(date);\n this._service.select(date, { emitEvent: true });\n }\n onNavigateDateSelect(date) { this._service.open(date); }\n onNavigateEvent(event) {\n switch (event) {\n case NavigationEvent.PREV:\n this._service.open(this._calendar.getPrev(this.model.firstDate, 'm', 1));\n break;\n case NavigationEvent.NEXT:\n this._service.open(this._calendar.getNext(this.model.firstDate, 'm', 1));\n break;\n }\n }\n registerOnChange(fn) { this.onChange = fn; }\n registerOnTouched(fn) { this.onTouched = fn; }\n setDisabledState(disabled) { this._service.set({ disabled }); }\n writeValue(value) {\n this._controlValue = NgbDate.from(this._ngbDateAdapter.fromModel(value));\n this._service.select(this._controlValue);\n }\n}\nNgbDatepicker.ɵfac = function NgbDatepicker_Factory(t) { return new (t || NgbDatepicker)(ɵngcc0.ɵɵdirectiveInject(NgbDatepickerService), ɵngcc0.ɵɵdirectiveInject(NgbCalendar), ɵngcc0.ɵɵdirectiveInject(NgbDatepickerI18n), ɵngcc0.ɵɵdirectiveInject(NgbDatepickerConfig), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(NgbDateAdapter), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.NgZone)); };\nNgbDatepicker.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: NgbDatepicker, selectors: [[\"ngb-datepicker\"]], contentQueries: function NgbDatepicker_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {\n ɵngcc0.ɵɵcontentQuery(dirIndex, NgbDatepickerContent, 3);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.contentTemplate = _t.first);\n } }, viewQuery: function NgbDatepicker_Query(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵviewQuery(_c10, 3);\n ɵngcc0.ɵɵviewQuery(_c11, 3);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx._defaultDayTemplate = _t.first);\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx._contentEl = _t.first);\n } }, inputs: { dayTemplate: \"dayTemplate\", dayTemplateData: \"dayTemplateData\", displayMonths: \"displayMonths\", firstDayOfWeek: \"firstDayOfWeek\", footerTemplate: \"footerTemplate\", markDisabled: \"markDisabled\", maxDate: \"maxDate\", minDate: \"minDate\", navigation: \"navigation\", outsideDays: \"outsideDays\", showWeekNumbers: \"showWeekNumbers\", startDate: \"startDate\", weekdays: \"weekdays\" }, outputs: { navigate: \"navigate\", dateSelect: \"dateSelect\" }, exportAs: [\"ngbDatepicker\"], features: [ɵngcc0.ɵɵProvidersFeature([{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => NgbDatepicker), multi: true }, NgbDatepickerService]), ɵngcc0.ɵɵNgOnChangesFeature], decls: 10, vars: 5, consts: [[\"defaultDayTemplate\", \"\"], [\"defaultContentTemplate\", \"\"], [1, \"ngb-dp-header\"], [3, \"date\", \"months\", \"disabled\", \"showSelect\", \"prevDisabled\", \"nextDisabled\", \"selectBoxes\", \"navigate\", \"select\", 4, \"ngIf\"], [1, \"ngb-dp-content\"], [\"content\", \"\"], [3, \"ngTemplateOutlet\"], [\"ngbDatepickerDayView\", \"\", 3, \"date\", \"currentMonth\", \"selected\", \"disabled\", \"focused\"], [\"class\", \"ngb-dp-month\", 4, \"ngFor\", \"ngForOf\"], [1, \"ngb-dp-month\"], [\"class\", \"ngb-dp-month-name\", 4, \"ngIf\"], [3, \"month\"], [1, \"ngb-dp-month-name\"], [3, \"date\", \"months\", \"disabled\", \"showSelect\", \"prevDisabled\", \"nextDisabled\", \"selectBoxes\", \"navigate\", \"select\"]], template: function NgbDatepicker_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵtemplate(0, NgbDatepicker_ng_template_0_Template, 1, 5, \"ng-template\", null, 0, ɵngcc0.ɵɵtemplateRefExtractor);\n ɵngcc0.ɵɵtemplate(2, NgbDatepicker_ng_template_2_Template, 1, 1, \"ng-template\", null, 1, ɵngcc0.ɵɵtemplateRefExtractor);\n ɵngcc0.ɵɵelementStart(4, \"div\", 2);\n ɵngcc0.ɵɵtemplate(5, NgbDatepicker_ngb_datepicker_navigation_5_Template, 1, 7, \"ngb-datepicker-navigation\", 3);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(6, \"div\", 4, 5);\n ɵngcc0.ɵɵtemplate(8, NgbDatepicker_ng_template_8_Template, 0, 0, \"ng-template\", 6);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵtemplate(9, NgbDatepicker_ng_template_9_Template, 0, 0, \"ng-template\", 6);\n } if (rf & 2) {\n const _r2 = ɵngcc0.ɵɵreference(3);\n ɵngcc0.ɵɵadvance(5);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.navigation !== \"none\");\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵclassProp(\"ngb-dp-months\", !ctx.contentTemplate);\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"ngTemplateOutlet\", (ctx.contentTemplate == null ? null : ctx.contentTemplate.templateRef) || _r2);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngTemplateOutlet\", ctx.footerTemplate);\n } }, directives: function () { return [ɵngcc1.NgIf, ɵngcc1.NgTemplateOutlet, NgbDatepickerDayView, ɵngcc1.NgForOf, NgbDatepickerMonth, NgbDatepickerNavigation]; }, styles: [\"ngb-datepicker{border:1px solid #dfdfdf;border-radius:.25rem;display:inline-block}ngb-datepicker-month{pointer-events:auto}ngb-datepicker.dropdown-menu{padding:0}.ngb-dp-body{z-index:1050}.ngb-dp-header{border-bottom:0;border-radius:.25rem .25rem 0 0;padding-top:.25rem;background-color:#f8f9fa;background-color:var(--light)}.ngb-dp-months{display:flex}.ngb-dp-month{pointer-events:none}.ngb-dp-month-name{font-size:larger;height:2rem;line-height:2rem;text-align:center;background-color:#f8f9fa;background-color:var(--light)}.ngb-dp-month+.ngb-dp-month .ngb-dp-month-name,.ngb-dp-month+.ngb-dp-month .ngb-dp-week{padding-left:1rem}.ngb-dp-month:last-child .ngb-dp-week{padding-right:.25rem}.ngb-dp-month:first-child .ngb-dp-week{padding-left:.25rem}.ngb-dp-month .ngb-dp-week:last-child{padding-bottom:.25rem}\"], encapsulation: 2, changeDetection: 0 });\nNgbDatepicker.ctorParameters = () => [\n { type: NgbDatepickerService },\n { type: NgbCalendar },\n { type: NgbDatepickerI18n },\n { type: NgbDatepickerConfig },\n { type: ChangeDetectorRef },\n { type: ElementRef },\n { type: NgbDateAdapter },\n { type: NgZone }\n];\nNgbDatepicker.propDecorators = {\n _defaultDayTemplate: [{ type: ViewChild, args: ['defaultDayTemplate', { static: true },] }],\n _contentEl: [{ type: ViewChild, args: ['content', { static: true },] }],\n contentTemplate: [{ type: ContentChild, args: [NgbDatepickerContent, { static: true },] }],\n dayTemplate: [{ type: Input }],\n dayTemplateData: [{ type: Input }],\n displayMonths: [{ type: Input }],\n firstDayOfWeek: [{ type: Input }],\n footerTemplate: [{ type: Input }],\n markDisabled: [{ type: Input }],\n maxDate: [{ type: Input }],\n minDate: [{ type: Input }],\n navigation: [{ type: Input }],\n outsideDays: [{ type: Input }],\n showWeekNumbers: [{ type: Input }],\n startDate: [{ type: Input }],\n weekdays: [{ type: Input }],\n navigate: [{ type: Output }],\n dateSelect: [{ type: Output }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDatepicker, [{\n type: Component,\n args: [{\n exportAs: 'ngbDatepicker',\n selector: 'ngb-datepicker',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n template: `\n \n
\n
\n
\n\n \n
\n
1 && navigation === 'select')\" class=\"ngb-dp-month-name\">\n {{ i18n.getMonthLabel(month.firstDate) }}\n
\n \n
\n
\n\n
\n \n \n
\n\n
\n \n
\n\n \n `,\n providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => NgbDatepicker), multi: true }, NgbDatepickerService],\n styles: [\"ngb-datepicker{border:1px solid #dfdfdf;border-radius:.25rem;display:inline-block}ngb-datepicker-month{pointer-events:auto}ngb-datepicker.dropdown-menu{padding:0}.ngb-dp-body{z-index:1050}.ngb-dp-header{border-bottom:0;border-radius:.25rem .25rem 0 0;padding-top:.25rem;background-color:#f8f9fa;background-color:var(--light)}.ngb-dp-months{display:flex}.ngb-dp-month{pointer-events:none}.ngb-dp-month-name{font-size:larger;height:2rem;line-height:2rem;text-align:center;background-color:#f8f9fa;background-color:var(--light)}.ngb-dp-month+.ngb-dp-month .ngb-dp-month-name,.ngb-dp-month+.ngb-dp-month .ngb-dp-week{padding-left:1rem}.ngb-dp-month:last-child .ngb-dp-week{padding-right:.25rem}.ngb-dp-month:first-child .ngb-dp-week{padding-left:.25rem}.ngb-dp-month .ngb-dp-week:last-child{padding-bottom:.25rem}\"]\n }]\n }], function () { return [{ type: NgbDatepickerService }, { type: NgbCalendar }, { type: NgbDatepickerI18n }, { type: NgbDatepickerConfig }, { type: ɵngcc0.ChangeDetectorRef }, { type: ɵngcc0.ElementRef }, { type: NgbDateAdapter }, { type: ɵngcc0.NgZone }]; }, { navigate: [{\n type: Output\n }], dateSelect: [{\n type: Output\n }], dayTemplate: [{\n type: Input\n }], _defaultDayTemplate: [{\n type: ViewChild,\n args: ['defaultDayTemplate', { static: true }]\n }], _contentEl: [{\n type: ViewChild,\n args: ['content', { static: true }]\n }], contentTemplate: [{\n type: ContentChild,\n args: [NgbDatepickerContent, { static: true }]\n }], dayTemplateData: [{\n type: Input\n }], displayMonths: [{\n type: Input\n }], firstDayOfWeek: [{\n type: Input\n }], footerTemplate: [{\n type: Input\n }], markDisabled: [{\n type: Input\n }], maxDate: [{\n type: Input\n }], minDate: [{\n type: Input\n }], navigation: [{\n type: Input\n }], outsideDays: [{\n type: Input\n }], showWeekNumbers: [{\n type: Input\n }], startDate: [{\n type: Input\n }], weekdays: [{\n type: Input\n }] }); })();\n\nvar Key;\n(function (Key) {\n Key[Key[\"Tab\"] = 9] = \"Tab\";\n Key[Key[\"Enter\"] = 13] = \"Enter\";\n Key[Key[\"Escape\"] = 27] = \"Escape\";\n Key[Key[\"Space\"] = 32] = \"Space\";\n Key[Key[\"PageUp\"] = 33] = \"PageUp\";\n Key[Key[\"PageDown\"] = 34] = \"PageDown\";\n Key[Key[\"End\"] = 35] = \"End\";\n Key[Key[\"Home\"] = 36] = \"Home\";\n Key[Key[\"ArrowLeft\"] = 37] = \"ArrowLeft\";\n Key[Key[\"ArrowUp\"] = 38] = \"ArrowUp\";\n Key[Key[\"ArrowRight\"] = 39] = \"ArrowRight\";\n Key[Key[\"ArrowDown\"] = 40] = \"ArrowDown\";\n})(Key || (Key = {}));\n\n/**\n * A service that represents the keyboard navigation.\n *\n * Default keyboard shortcuts [are documented in the overview](#/components/datepicker/overview#keyboard-shortcuts)\n *\n * @since 5.2.0\n */\nclass NgbDatepickerKeyboardService {\n /**\n * Processes a keyboard event.\n */\n processKey(event, datepicker) {\n const { state, calendar } = datepicker;\n // tslint:disable-next-line:deprecation\n switch (event.which) {\n case Key.PageUp:\n datepicker.focusDate(calendar.getPrev(state.focusedDate, event.shiftKey ? 'y' : 'm', 1));\n break;\n case Key.PageDown:\n datepicker.focusDate(calendar.getNext(state.focusedDate, event.shiftKey ? 'y' : 'm', 1));\n break;\n case Key.End:\n datepicker.focusDate(event.shiftKey ? state.maxDate : state.lastDate);\n break;\n case Key.Home:\n datepicker.focusDate(event.shiftKey ? state.minDate : state.firstDate);\n break;\n case Key.ArrowLeft:\n datepicker.focusDate(calendar.getPrev(state.focusedDate, 'd', 1));\n break;\n case Key.ArrowUp:\n datepicker.focusDate(calendar.getPrev(state.focusedDate, 'd', calendar.getDaysPerWeek()));\n break;\n case Key.ArrowRight:\n datepicker.focusDate(calendar.getNext(state.focusedDate, 'd', 1));\n break;\n case Key.ArrowDown:\n datepicker.focusDate(calendar.getNext(state.focusedDate, 'd', calendar.getDaysPerWeek()));\n break;\n case Key.Enter:\n case Key.Space:\n datepicker.focusSelect();\n break;\n default:\n return;\n }\n event.preventDefault();\n event.stopPropagation();\n }\n}\nNgbDatepickerKeyboardService.ɵfac = function NgbDatepickerKeyboardService_Factory(t) { return new (t || NgbDatepickerKeyboardService)(); };\nNgbDatepickerKeyboardService.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgbDatepickerKeyboardService_Factory() { return new NgbDatepickerKeyboardService(); }, token: NgbDatepickerKeyboardService, providedIn: \"root\" });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDatepickerKeyboardService, [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], null, null); })();\n\n/**\n * A component that renders one month including all the days, weekdays and week numbers. Can be used inside\n * the `` when you want to customize months layout.\n *\n * For a usage example, see [custom month layout demo](#/components/datepicker/examples#custommonth)\n *\n * @since 5.3.0\n */\nclass NgbDatepickerMonth {\n constructor(i18n, datepicker, _keyboardService, _service) {\n this.i18n = i18n;\n this.datepicker = datepicker;\n this._keyboardService = _keyboardService;\n this._service = _service;\n }\n /**\n * The first date of month to be rendered.\n *\n * This month must one of the months present in the\n * [datepicker state](#/components/datepicker/api#NgbDatepickerState).\n */\n set month(month) {\n this.viewModel = this._service.getMonth(month);\n }\n onKeyDown(event) { this._keyboardService.processKey(event, this.datepicker); }\n doSelect(day) {\n if (!day.context.disabled && !day.hidden) {\n this.datepicker.onDateSelect(day.date);\n }\n }\n}\nNgbDatepickerMonth.ɵfac = function NgbDatepickerMonth_Factory(t) { return new (t || NgbDatepickerMonth)(ɵngcc0.ɵɵdirectiveInject(NgbDatepickerI18n), ɵngcc0.ɵɵdirectiveInject(NgbDatepicker), ɵngcc0.ɵɵdirectiveInject(NgbDatepickerKeyboardService), ɵngcc0.ɵɵdirectiveInject(NgbDatepickerService)); };\nNgbDatepickerMonth.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: NgbDatepickerMonth, selectors: [[\"ngb-datepicker-month\"]], hostAttrs: [\"role\", \"grid\"], hostBindings: function NgbDatepickerMonth_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"keydown\", function NgbDatepickerMonth_keydown_HostBindingHandler($event) { return ctx.onKeyDown($event); });\n } }, inputs: { month: \"month\" }, decls: 2, vars: 2, consts: [[\"class\", \"ngb-dp-week ngb-dp-weekdays\", \"role\", \"row\", 4, \"ngIf\"], [\"ngFor\", \"\", 3, \"ngForOf\"], [\"role\", \"row\", 1, \"ngb-dp-week\", \"ngb-dp-weekdays\"], [\"class\", \"ngb-dp-weekday ngb-dp-showweek small\", 4, \"ngIf\"], [\"class\", \"ngb-dp-weekday small\", \"role\", \"columnheader\", 4, \"ngFor\", \"ngForOf\"], [1, \"ngb-dp-weekday\", \"ngb-dp-showweek\", \"small\"], [\"role\", \"columnheader\", 1, \"ngb-dp-weekday\", \"small\"], [\"class\", \"ngb-dp-week\", \"role\", \"row\", 4, \"ngIf\"], [\"role\", \"row\", 1, \"ngb-dp-week\"], [\"class\", \"ngb-dp-week-number small text-muted\", 4, \"ngIf\"], [\"class\", \"ngb-dp-day\", \"role\", \"gridcell\", 3, \"disabled\", \"tabindex\", \"hidden\", \"ngb-dp-today\", \"click\", 4, \"ngFor\", \"ngForOf\"], [1, \"ngb-dp-week-number\", \"small\", \"text-muted\"], [\"role\", \"gridcell\", 1, \"ngb-dp-day\", 3, \"tabindex\", \"click\"], [3, \"ngIf\"], [3, \"ngTemplateOutlet\", \"ngTemplateOutletContext\"]], template: function NgbDatepickerMonth_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵtemplate(0, NgbDatepickerMonth_div_0_Template, 3, 2, \"div\", 0);\n ɵngcc0.ɵɵtemplate(1, NgbDatepickerMonth_ng_template_1_Template, 1, 1, \"ng-template\", 1);\n } if (rf & 2) {\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.viewModel.weekdays.length > 0);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngForOf\", ctx.viewModel.weeks);\n } }, directives: [ɵngcc1.NgIf, ɵngcc1.NgForOf, ɵngcc1.NgTemplateOutlet], styles: [\"ngb-datepicker-month{display:block}.ngb-dp-week-number,.ngb-dp-weekday{line-height:2rem;text-align:center;font-style:italic}.ngb-dp-weekday{color:#5bc0de;color:var(--info)}.ngb-dp-week{border-radius:.25rem;display:flex}.ngb-dp-weekdays{border-bottom:1px solid rgba(0,0,0,.125);border-radius:0;background-color:#f8f9fa;background-color:var(--light)}.ngb-dp-day,.ngb-dp-week-number,.ngb-dp-weekday{width:2rem;height:2rem}.ngb-dp-day{cursor:pointer}.ngb-dp-day.disabled,.ngb-dp-day.hidden{cursor:default;pointer-events:none}.ngb-dp-day[tabindex=\\\"0\\\"]{z-index:1}\"], encapsulation: 2 });\nNgbDatepickerMonth.ctorParameters = () => [\n { type: NgbDatepickerI18n },\n { type: NgbDatepicker },\n { type: NgbDatepickerKeyboardService },\n { type: NgbDatepickerService }\n];\nNgbDatepickerMonth.propDecorators = {\n month: [{ type: Input }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDatepickerMonth, [{\n type: Component,\n args: [{\n selector: 'ngb-datepicker-month',\n host: { 'role': 'grid', '(keydown)': 'onKeyDown($event)' },\n encapsulation: ViewEncapsulation.None,\n template: `\n
0\" class=\"ngb-dp-week ngb-dp-weekdays\" role=\"row\">\n
{{ i18n.getWeekLabel() }}
\n
{{ weekday }}
\n
\n \n
\n
{{ i18n.getWeekNumerals(week.number) }}
\n
\n \n \n \n
\n
\n
\n `,\n styles: [\"ngb-datepicker-month{display:block}.ngb-dp-week-number,.ngb-dp-weekday{line-height:2rem;text-align:center;font-style:italic}.ngb-dp-weekday{color:#5bc0de;color:var(--info)}.ngb-dp-week{border-radius:.25rem;display:flex}.ngb-dp-weekdays{border-bottom:1px solid rgba(0,0,0,.125);border-radius:0;background-color:#f8f9fa;background-color:var(--light)}.ngb-dp-day,.ngb-dp-week-number,.ngb-dp-weekday{width:2rem;height:2rem}.ngb-dp-day{cursor:pointer}.ngb-dp-day.disabled,.ngb-dp-day.hidden{cursor:default;pointer-events:none}.ngb-dp-day[tabindex=\\\"0\\\"]{z-index:1}\"]\n }]\n }], function () { return [{ type: NgbDatepickerI18n }, { type: NgbDatepicker }, { type: NgbDatepickerKeyboardService }, { type: NgbDatepickerService }]; }, { month: [{\n type: Input\n }] }); })();\n\nclass NgbDatepickerNavigation {\n constructor(i18n) {\n this.i18n = i18n;\n this.navigation = NavigationEvent;\n this.months = [];\n this.navigate = new EventEmitter();\n this.select = new EventEmitter();\n }\n onClickPrev(event) {\n event.currentTarget.focus();\n this.navigate.emit(this.navigation.PREV);\n }\n onClickNext(event) {\n event.currentTarget.focus();\n this.navigate.emit(this.navigation.NEXT);\n }\n}\nNgbDatepickerNavigation.ɵfac = function NgbDatepickerNavigation_Factory(t) { return new (t || NgbDatepickerNavigation)(ɵngcc0.ɵɵdirectiveInject(NgbDatepickerI18n)); };\nNgbDatepickerNavigation.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: NgbDatepickerNavigation, selectors: [[\"ngb-datepicker-navigation\"]], inputs: { months: \"months\", date: \"date\", disabled: \"disabled\", showSelect: \"showSelect\", prevDisabled: \"prevDisabled\", nextDisabled: \"nextDisabled\", selectBoxes: \"selectBoxes\" }, outputs: { navigate: \"navigate\", select: \"select\" }, decls: 8, vars: 4, consts: function () { let i18n_12; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_datepicker_previous_month$$FESM2015_NG_BOOTSTRAP_JS_13 = goog.getMsg(\"Previous month\");\n i18n_12 = MSG_EXTERNAL_ngb_datepicker_previous_month$$FESM2015_NG_BOOTSTRAP_JS_13;\n }\n else {\n i18n_12 = $localize `:@@ngb.datepicker.previous-month␟c3b08b07b5ab98e7cdcf18df39355690ab7d3884␟8586908745456864217:Previous month`;\n } let i18n_14; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_datepicker_previous_month$$FESM2015_NG_BOOTSTRAP_JS_15 = goog.getMsg(\"Previous month\");\n i18n_14 = MSG_EXTERNAL_ngb_datepicker_previous_month$$FESM2015_NG_BOOTSTRAP_JS_15;\n }\n else {\n i18n_14 = $localize `:@@ngb.datepicker.previous-month␟c3b08b07b5ab98e7cdcf18df39355690ab7d3884␟8586908745456864217:Previous month`;\n } let i18n_16; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_datepicker_next_month$$FESM2015_NG_BOOTSTRAP_JS_17 = goog.getMsg(\"Next month\");\n i18n_16 = MSG_EXTERNAL_ngb_datepicker_next_month$$FESM2015_NG_BOOTSTRAP_JS_17;\n }\n else {\n i18n_16 = $localize `:@@ngb.datepicker.next-month␟4bd046985cfe13040d5ef0cd881edce0968a111a␟3628374603023447227:Next month`;\n } let i18n_18; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_datepicker_next_month$$FESM2015_NG_BOOTSTRAP_JS_19 = goog.getMsg(\"Next month\");\n i18n_18 = MSG_EXTERNAL_ngb_datepicker_next_month$$FESM2015_NG_BOOTSTRAP_JS_19;\n }\n else {\n i18n_18 = $localize `:@@ngb.datepicker.next-month␟4bd046985cfe13040d5ef0cd881edce0968a111a␟3628374603023447227:Next month`;\n } return [[1, \"ngb-dp-arrow\"], [\"type\", \"button\", \"aria-label\", i18n_12, \"title\", i18n_14, 1, \"btn\", \"btn-link\", \"ngb-dp-arrow-btn\", 3, \"disabled\", \"click\"], [1, \"ngb-dp-navigation-chevron\"], [\"class\", \"ngb-dp-navigation-select\", 3, \"date\", \"disabled\", \"months\", \"years\", \"select\", 4, \"ngIf\"], [4, \"ngIf\"], [1, \"ngb-dp-arrow\", \"right\"], [\"type\", \"button\", \"aria-label\", i18n_16, \"title\", i18n_18, 1, \"btn\", \"btn-link\", \"ngb-dp-arrow-btn\", 3, \"disabled\", \"click\"], [1, \"ngb-dp-navigation-select\", 3, \"date\", \"disabled\", \"months\", \"years\", \"select\"], [\"ngFor\", \"\", 3, \"ngForOf\"], [\"class\", \"ngb-dp-arrow\", 4, \"ngIf\"], [1, \"ngb-dp-month-name\"]]; }, template: function NgbDatepickerNavigation_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\", 0);\n ɵngcc0.ɵɵelementStart(1, \"button\", 1);\n ɵngcc0.ɵɵlistener(\"click\", function NgbDatepickerNavigation_Template_button_click_1_listener($event) { return ctx.onClickPrev($event); });\n ɵngcc0.ɵɵelement(2, \"span\", 2);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵtemplate(3, NgbDatepickerNavigation_ngb_datepicker_navigation_select_3_Template, 1, 4, \"ngb-datepicker-navigation-select\", 3);\n ɵngcc0.ɵɵtemplate(4, NgbDatepickerNavigation_4_Template, 1, 1, undefined, 4);\n ɵngcc0.ɵɵelementStart(5, \"div\", 5);\n ɵngcc0.ɵɵelementStart(6, \"button\", 6);\n ɵngcc0.ɵɵlistener(\"click\", function NgbDatepickerNavigation_Template_button_click_6_listener($event) { return ctx.onClickNext($event); });\n ɵngcc0.ɵɵelement(7, \"span\", 2);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n } if (rf & 2) {\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"disabled\", ctx.prevDisabled);\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.showSelect);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", !ctx.showSelect);\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"disabled\", ctx.nextDisabled);\n } }, directives: function () { return [ɵngcc1.NgIf, NgbDatepickerNavigationSelect, ɵngcc1.NgForOf]; }, styles: [\"ngb-datepicker-navigation{display:flex;align-items:center}.ngb-dp-navigation-chevron{border-style:solid;border-width:.2em .2em 0 0;display:inline-block;width:.75em;height:.75em;margin-left:.25em;margin-right:.15em;transform:rotate(-135deg)}.ngb-dp-arrow{display:flex;flex:1 1 auto;padding-right:0;padding-left:0;margin:0;width:2rem;height:2rem}.ngb-dp-arrow.right{justify-content:flex-end}.ngb-dp-arrow.right .ngb-dp-navigation-chevron{transform:rotate(45deg);margin-left:.15em;margin-right:.25em}.ngb-dp-arrow-btn{padding:0 .25rem;margin:0 .5rem;border:none;background-color:transparent;z-index:1}.ngb-dp-arrow-btn:focus{outline-width:1px;outline-style:auto}@media (-ms-high-contrast:active),(-ms-high-contrast:none){.ngb-dp-arrow-btn:focus{outline-style:solid}}.ngb-dp-month-name{font-size:larger;height:2rem;line-height:2rem;text-align:center}.ngb-dp-navigation-select{display:flex;flex:1 1 9rem}\"], encapsulation: 2, changeDetection: 0 });\nNgbDatepickerNavigation.ctorParameters = () => [\n { type: NgbDatepickerI18n }\n];\nNgbDatepickerNavigation.propDecorators = {\n date: [{ type: Input }],\n disabled: [{ type: Input }],\n months: [{ type: Input }],\n showSelect: [{ type: Input }],\n prevDisabled: [{ type: Input }],\n nextDisabled: [{ type: Input }],\n selectBoxes: [{ type: Input }],\n navigate: [{ type: Output }],\n select: [{ type: Output }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDatepickerNavigation, [{\n type: Component,\n args: [{\n selector: 'ngb-datepicker-navigation',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n template: `\n
\n \n
\n \n \n\n \n
0\">
\n
\n {{ i18n.getMonthLabel(month.firstDate) }}\n
\n
\n
\n
\n \n
\n `,\n styles: [\"ngb-datepicker-navigation{display:flex;align-items:center}.ngb-dp-navigation-chevron{border-style:solid;border-width:.2em .2em 0 0;display:inline-block;width:.75em;height:.75em;margin-left:.25em;margin-right:.15em;transform:rotate(-135deg)}.ngb-dp-arrow{display:flex;flex:1 1 auto;padding-right:0;padding-left:0;margin:0;width:2rem;height:2rem}.ngb-dp-arrow.right{justify-content:flex-end}.ngb-dp-arrow.right .ngb-dp-navigation-chevron{transform:rotate(45deg);margin-left:.15em;margin-right:.25em}.ngb-dp-arrow-btn{padding:0 .25rem;margin:0 .5rem;border:none;background-color:transparent;z-index:1}.ngb-dp-arrow-btn:focus{outline-width:1px;outline-style:auto}@media (-ms-high-contrast:active),(-ms-high-contrast:none){.ngb-dp-arrow-btn:focus{outline-style:solid}}.ngb-dp-month-name{font-size:larger;height:2rem;line-height:2rem;text-align:center}.ngb-dp-navigation-select{display:flex;flex:1 1 9rem}\"]\n }]\n }], function () { return [{ type: NgbDatepickerI18n }]; }, { months: [{\n type: Input\n }], navigate: [{\n type: Output\n }], select: [{\n type: Output\n }], date: [{\n type: Input\n }], disabled: [{\n type: Input\n }], showSelect: [{\n type: Input\n }], prevDisabled: [{\n type: Input\n }], nextDisabled: [{\n type: Input\n }], selectBoxes: [{\n type: Input\n }] }); })();\n\nconst isContainedIn = (element, array) => array ? array.some(item => item.contains(element)) : false;\nconst ɵ0$3 = isContainedIn;\nconst matchesSelectorIfAny = (element, selector) => !selector || closest(element, selector) != null;\nconst ɵ1 = matchesSelectorIfAny;\nconst ɵ2 = () => {\n const isIOS = () => /iPad|iPhone|iPod/.test(navigator.userAgent) ||\n (/Macintosh/.test(navigator.userAgent) && navigator.maxTouchPoints && navigator.maxTouchPoints > 2);\n const isAndroid = () => /Android/.test(navigator.userAgent);\n return typeof navigator !== 'undefined' ? !!navigator.userAgent && (isIOS() || isAndroid()) : false;\n};\n// we have to add a more significant delay to avoid re-opening when handling (click) on a toggling element\n// TODO: use proper Angular platform detection when NgbAutoClose becomes a service and we can inject PLATFORM_ID\nconst isMobile = (ɵ2)();\n// setting 'ngbAutoClose' synchronously on mobile results in immediate popup closing\n// when tapping on the triggering element\nconst wrapAsyncForMobile = fn => isMobile ? () => setTimeout(() => fn(), 100) : fn;\nconst ɵ3 = wrapAsyncForMobile;\nfunction ngbAutoClose(zone, document, type, close, closed$, insideElements, ignoreElements, insideSelector) {\n // closing on ESC and outside clicks\n if (type) {\n zone.runOutsideAngular(wrapAsyncForMobile(() => {\n const shouldCloseOnClick = (event) => {\n const element = event.target;\n if (event.button === 2 || isContainedIn(element, ignoreElements)) {\n return false;\n }\n if (type === 'inside') {\n return isContainedIn(element, insideElements) && matchesSelectorIfAny(element, insideSelector);\n }\n else if (type === 'outside') {\n return !isContainedIn(element, insideElements);\n }\n else /* if (type === true) */ {\n return matchesSelectorIfAny(element, insideSelector) || !isContainedIn(element, insideElements);\n }\n };\n const escapes$ = fromEvent(document, 'keydown')\n .pipe(takeUntil(closed$), \n // tslint:disable-next-line:deprecation\n filter(e => e.which === Key.Escape), tap(e => e.preventDefault()));\n // we have to pre-calculate 'shouldCloseOnClick' on 'mousedown',\n // because on 'mouseup' DOM nodes might be detached\n const mouseDowns$ = fromEvent(document, 'mousedown').pipe(map(shouldCloseOnClick), takeUntil(closed$));\n const closeableClicks$ = fromEvent(document, 'mouseup')\n .pipe(withLatestFrom(mouseDowns$), filter(([_, shouldClose]) => shouldClose), delay(0), takeUntil(closed$));\n race([\n escapes$.pipe(map(_ => 0 /* ESCAPE */)), closeableClicks$.pipe(map(_ => 1 /* CLICK */))\n ]).subscribe((source) => zone.run(() => close(source)));\n }));\n }\n}\n\nconst FOCUSABLE_ELEMENTS_SELECTOR = [\n 'a[href]', 'button:not([disabled])', 'input:not([disabled]):not([type=\"hidden\"])', 'select:not([disabled])',\n 'textarea:not([disabled])', '[contenteditable]', '[tabindex]:not([tabindex=\"-1\"])'\n].join(', ');\n/**\n * Returns first and last focusable elements inside of a given element based on specific CSS selector\n */\nfunction getFocusableBoundaryElements(element) {\n const list = Array.from(element.querySelectorAll(FOCUSABLE_ELEMENTS_SELECTOR))\n .filter(el => el.tabIndex !== -1);\n return [list[0], list[list.length - 1]];\n}\n/**\n * Function that enforces browser focus to be trapped inside a DOM element.\n *\n * Works only for clicks inside the element and navigation with 'Tab', ignoring clicks outside of the element\n *\n * @param zone Angular zone\n * @param element The element around which focus will be trapped inside\n * @param stopFocusTrap$ The observable stream. When completed the focus trap will clean up listeners\n * and free internal resources\n * @param refocusOnClick Put the focus back to the last focused element whenever a click occurs on element (default to\n * false)\n */\nconst ngbFocusTrap = (zone, element, stopFocusTrap$, refocusOnClick = false) => {\n zone.runOutsideAngular(() => {\n // last focused element\n const lastFocusedElement$ = fromEvent(element, 'focusin').pipe(takeUntil(stopFocusTrap$), map(e => e.target));\n // 'tab' / 'shift+tab' stream\n fromEvent(element, 'keydown')\n .pipe(takeUntil(stopFocusTrap$), \n // tslint:disable:deprecation\n filter(e => e.which === Key.Tab), \n // tslint:enable:deprecation\n withLatestFrom(lastFocusedElement$))\n .subscribe(([tabEvent, focusedElement]) => {\n const [first, last] = getFocusableBoundaryElements(element);\n if ((focusedElement === first || focusedElement === element) && tabEvent.shiftKey) {\n last.focus();\n tabEvent.preventDefault();\n }\n if (focusedElement === last && !tabEvent.shiftKey) {\n first.focus();\n tabEvent.preventDefault();\n }\n });\n // inside click\n if (refocusOnClick) {\n fromEvent(element, 'click')\n .pipe(takeUntil(stopFocusTrap$), withLatestFrom(lastFocusedElement$), map(arr => arr[1]))\n .subscribe(lastFocusedElement => lastFocusedElement.focus());\n }\n });\n};\n\n// previous version:\n// https://github.com/angular-ui/bootstrap/blob/07c31d0731f7cb068a1932b8e01d2312b796b4ec/src/position/position.js\nclass Positioning {\n getAllStyles(element) { return window.getComputedStyle(element); }\n getStyle(element, prop) { return this.getAllStyles(element)[prop]; }\n isStaticPositioned(element) {\n return (this.getStyle(element, 'position') || 'static') === 'static';\n }\n offsetParent(element) {\n let offsetParentEl = element.offsetParent || document.documentElement;\n while (offsetParentEl && offsetParentEl !== document.documentElement && this.isStaticPositioned(offsetParentEl)) {\n offsetParentEl = offsetParentEl.offsetParent;\n }\n return offsetParentEl || document.documentElement;\n }\n position(element, round = true) {\n let elPosition;\n let parentOffset = { width: 0, height: 0, top: 0, bottom: 0, left: 0, right: 0 };\n if (this.getStyle(element, 'position') === 'fixed') {\n elPosition = element.getBoundingClientRect();\n elPosition = {\n top: elPosition.top,\n bottom: elPosition.bottom,\n left: elPosition.left,\n right: elPosition.right,\n height: elPosition.height,\n width: elPosition.width\n };\n }\n else {\n const offsetParentEl = this.offsetParent(element);\n elPosition = this.offset(element, false);\n if (offsetParentEl !== document.documentElement) {\n parentOffset = this.offset(offsetParentEl, false);\n }\n parentOffset.top += offsetParentEl.clientTop;\n parentOffset.left += offsetParentEl.clientLeft;\n }\n elPosition.top -= parentOffset.top;\n elPosition.bottom -= parentOffset.top;\n elPosition.left -= parentOffset.left;\n elPosition.right -= parentOffset.left;\n if (round) {\n elPosition.top = Math.round(elPosition.top);\n elPosition.bottom = Math.round(elPosition.bottom);\n elPosition.left = Math.round(elPosition.left);\n elPosition.right = Math.round(elPosition.right);\n }\n return elPosition;\n }\n offset(element, round = true) {\n const elBcr = element.getBoundingClientRect();\n const viewportOffset = {\n top: window.pageYOffset - document.documentElement.clientTop,\n left: window.pageXOffset - document.documentElement.clientLeft\n };\n let elOffset = {\n height: elBcr.height || element.offsetHeight,\n width: elBcr.width || element.offsetWidth,\n top: elBcr.top + viewportOffset.top,\n bottom: elBcr.bottom + viewportOffset.top,\n left: elBcr.left + viewportOffset.left,\n right: elBcr.right + viewportOffset.left\n };\n if (round) {\n elOffset.height = Math.round(elOffset.height);\n elOffset.width = Math.round(elOffset.width);\n elOffset.top = Math.round(elOffset.top);\n elOffset.bottom = Math.round(elOffset.bottom);\n elOffset.left = Math.round(elOffset.left);\n elOffset.right = Math.round(elOffset.right);\n }\n return elOffset;\n }\n /*\n Return false if the element to position is outside the viewport\n */\n positionElements(hostElement, targetElement, placement, appendToBody) {\n const [placementPrimary = 'top', placementSecondary = 'center'] = placement.split('-');\n const hostElPosition = appendToBody ? this.offset(hostElement, false) : this.position(hostElement, false);\n const targetElStyles = this.getAllStyles(targetElement);\n const marginTop = parseFloat(targetElStyles.marginTop);\n const marginBottom = parseFloat(targetElStyles.marginBottom);\n const marginLeft = parseFloat(targetElStyles.marginLeft);\n const marginRight = parseFloat(targetElStyles.marginRight);\n let topPosition = 0;\n let leftPosition = 0;\n switch (placementPrimary) {\n case 'top':\n topPosition = (hostElPosition.top - (targetElement.offsetHeight + marginTop + marginBottom));\n break;\n case 'bottom':\n topPosition = (hostElPosition.top + hostElPosition.height);\n break;\n case 'left':\n leftPosition = (hostElPosition.left - (targetElement.offsetWidth + marginLeft + marginRight));\n break;\n case 'right':\n leftPosition = (hostElPosition.left + hostElPosition.width);\n break;\n }\n switch (placementSecondary) {\n case 'top':\n topPosition = hostElPosition.top;\n break;\n case 'bottom':\n topPosition = hostElPosition.top + hostElPosition.height - targetElement.offsetHeight;\n break;\n case 'left':\n leftPosition = hostElPosition.left;\n break;\n case 'right':\n leftPosition = hostElPosition.left + hostElPosition.width - targetElement.offsetWidth;\n break;\n case 'center':\n if (placementPrimary === 'top' || placementPrimary === 'bottom') {\n leftPosition = (hostElPosition.left + hostElPosition.width / 2 - targetElement.offsetWidth / 2);\n }\n else {\n topPosition = (hostElPosition.top + hostElPosition.height / 2 - targetElement.offsetHeight / 2);\n }\n break;\n }\n /// The translate3d/gpu acceleration render a blurry text on chrome, the next line is commented until a browser fix\n // targetElement.style.transform = `translate3d(${Math.round(leftPosition)}px, ${Math.floor(topPosition)}px, 0px)`;\n targetElement.style.transform = `translate(${Math.round(leftPosition)}px, ${Math.round(topPosition)}px)`;\n // Check if the targetElement is inside the viewport\n const targetElBCR = targetElement.getBoundingClientRect();\n const html = document.documentElement;\n const windowHeight = window.innerHeight || html.clientHeight;\n const windowWidth = window.innerWidth || html.clientWidth;\n return targetElBCR.left >= 0 && targetElBCR.top >= 0 && targetElBCR.right <= windowWidth &&\n targetElBCR.bottom <= windowHeight;\n }\n}\nconst placementSeparator = /\\s+/;\nconst positionService = new Positioning();\n/*\n * Accept the placement array and applies the appropriate placement dependent on the viewport.\n * Returns the applied placement.\n * In case of auto placement, placements are selected in order\n * 'top', 'bottom', 'left', 'right',\n * 'top-left', 'top-right',\n * 'bottom-left', 'bottom-right',\n * 'left-top', 'left-bottom',\n * 'right-top', 'right-bottom'.\n * */\nfunction positionElements(hostElement, targetElement, placement, appendToBody, baseClass) {\n let placementVals = Array.isArray(placement) ? placement : placement.split(placementSeparator);\n const allowedPlacements = [\n 'top', 'bottom', 'left', 'right', 'top-left', 'top-right', 'bottom-left', 'bottom-right', 'left-top', 'left-bottom',\n 'right-top', 'right-bottom'\n ];\n const classList = targetElement.classList;\n const addClassesToTarget = (targetPlacement) => {\n const [primary, secondary] = targetPlacement.split('-');\n const classes = [];\n if (baseClass) {\n classes.push(`${baseClass}-${primary}`);\n if (secondary) {\n classes.push(`${baseClass}-${primary}-${secondary}`);\n }\n classes.forEach((classname) => { classList.add(classname); });\n }\n return classes;\n };\n // Remove old placement classes to avoid issues\n if (baseClass) {\n allowedPlacements.forEach((placementToRemove) => { classList.remove(`${baseClass}-${placementToRemove}`); });\n }\n // replace auto placement with other placements\n let hasAuto = placementVals.findIndex(val => val === 'auto');\n if (hasAuto >= 0) {\n allowedPlacements.forEach(function (obj) {\n if (placementVals.find(val => val.search('^' + obj) !== -1) == null) {\n placementVals.splice(hasAuto++, 1, obj);\n }\n });\n }\n // coordinates where to position\n // Required for transform:\n const style = targetElement.style;\n style.position = 'absolute';\n style.top = '0';\n style.left = '0';\n style['will-change'] = 'transform';\n let testPlacement = null;\n let isInViewport = false;\n for (testPlacement of placementVals) {\n let addedClasses = addClassesToTarget(testPlacement);\n if (positionService.positionElements(hostElement, targetElement, testPlacement, appendToBody)) {\n isInViewport = true;\n break;\n }\n // Remove the baseClasses for further calculation\n if (baseClass) {\n addedClasses.forEach((classname) => { classList.remove(classname); });\n }\n }\n if (!isInViewport) {\n // If nothing match, the first placement is the default one\n testPlacement = placementVals[0];\n addClassesToTarget(testPlacement);\n positionService.positionElements(hostElement, targetElement, testPlacement, appendToBody);\n }\n return testPlacement;\n}\n\nfunction NGB_DATEPICKER_PARSER_FORMATTER_FACTORY() {\n return new NgbDateISOParserFormatter();\n}\n/**\n * An abstract service for parsing and formatting dates for the\n * [`NgbInputDatepicker`](#/components/datepicker/api#NgbInputDatepicker) directive.\n * Converts between the internal `NgbDateStruct` model presentation and a `string` that is displayed in the\n * input element.\n *\n * When user types something in the input this service attempts to parse it into a `NgbDateStruct` object.\n * And vice versa, when users selects a date in the calendar with the mouse, it must be displayed as a `string`\n * in the input.\n *\n * Default implementation uses the ISO 8601 format, but you can provide another implementation via DI\n * to use an alternative string format or a custom parsing logic.\n *\n * See the [date format overview](#/components/datepicker/overview#date-model) for more details.\n */\nclass NgbDateParserFormatter {\n}\nNgbDateParserFormatter.ɵfac = function NgbDateParserFormatter_Factory(t) { return new (t || NgbDateParserFormatter)(); };\nNgbDateParserFormatter.ɵprov = i0.ɵɵdefineInjectable({ factory: NGB_DATEPICKER_PARSER_FORMATTER_FACTORY, token: NgbDateParserFormatter, providedIn: \"root\" });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDateParserFormatter, [{\n type: Injectable,\n args: [{ providedIn: 'root', useFactory: NGB_DATEPICKER_PARSER_FORMATTER_FACTORY }]\n }], null, null); })();\nclass NgbDateISOParserFormatter extends NgbDateParserFormatter {\n parse(value) {\n if (value != null) {\n const dateParts = value.trim().split('-');\n if (dateParts.length === 1 && isNumber(dateParts[0])) {\n return { year: toInteger(dateParts[0]), month: null, day: null };\n }\n else if (dateParts.length === 2 && isNumber(dateParts[0]) && isNumber(dateParts[1])) {\n return { year: toInteger(dateParts[0]), month: toInteger(dateParts[1]), day: null };\n }\n else if (dateParts.length === 3 && isNumber(dateParts[0]) && isNumber(dateParts[1]) && isNumber(dateParts[2])) {\n return { year: toInteger(dateParts[0]), month: toInteger(dateParts[1]), day: toInteger(dateParts[2]) };\n }\n }\n return null;\n }\n format(date) {\n return date ?\n `${date.year}-${isNumber(date.month) ? padNumber(date.month) : ''}-${isNumber(date.day) ? padNumber(date.day) : ''}` :\n '';\n }\n}\nNgbDateISOParserFormatter.ɵfac = function NgbDateISOParserFormatter_Factory(t) { return ɵNgbDateISOParserFormatter_BaseFactory(t || NgbDateISOParserFormatter); };\nNgbDateISOParserFormatter.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: NgbDateISOParserFormatter, factory: NgbDateISOParserFormatter.ɵfac });\nconst ɵNgbDateISOParserFormatter_BaseFactory = /*@__PURE__*/ ɵngcc0.ɵɵgetInheritedFactory(NgbDateISOParserFormatter);\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDateISOParserFormatter, [{\n type: Injectable\n }], null, null); })();\n\n/**\n * A configuration service for the [`NgbDatepickerInput`](#/components/datepicker/api#NgbDatepicker) component.\n *\n * You can inject this service, typically in your root component, and customize the values of its properties in\n * order to provide default values for all the datepicker inputs used in the application.\n *\n * @since 5.2.0\n */\nclass NgbInputDatepickerConfig extends NgbDatepickerConfig {\n constructor() {\n super(...arguments);\n this.autoClose = true;\n this.placement = ['bottom-left', 'bottom-right', 'top-left', 'top-right'];\n this.restoreFocus = true;\n }\n}\nNgbInputDatepickerConfig.ɵfac = function NgbInputDatepickerConfig_Factory(t) { return ɵNgbInputDatepickerConfig_BaseFactory(t || NgbInputDatepickerConfig); };\nNgbInputDatepickerConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgbInputDatepickerConfig_Factory() { return new NgbInputDatepickerConfig(); }, token: NgbInputDatepickerConfig, providedIn: \"root\" });\nconst ɵNgbInputDatepickerConfig_BaseFactory = /*@__PURE__*/ ɵngcc0.ɵɵgetInheritedFactory(NgbInputDatepickerConfig);\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbInputDatepickerConfig, [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], null, null); })();\n\n/**\n * A directive that allows to stick a datepicker popup to an input field.\n *\n * Manages interaction with the input field itself, does value formatting and provides forms integration.\n */\nclass NgbInputDatepicker {\n constructor(_parserFormatter, _elRef, _vcRef, _renderer, _cfr, _ngZone, _calendar, _dateAdapter, _document, _changeDetector, config) {\n this._parserFormatter = _parserFormatter;\n this._elRef = _elRef;\n this._vcRef = _vcRef;\n this._renderer = _renderer;\n this._cfr = _cfr;\n this._ngZone = _ngZone;\n this._calendar = _calendar;\n this._dateAdapter = _dateAdapter;\n this._document = _document;\n this._changeDetector = _changeDetector;\n this._cRef = null;\n this._disabled = false;\n this._elWithFocus = null;\n this._model = null;\n /**\n * An event emitted when user selects a date using keyboard or mouse.\n *\n * The payload of the event is currently selected `NgbDate`.\n *\n * @since 1.1.1\n */\n this.dateSelect = new EventEmitter();\n /**\n * Event emitted right after the navigation happens and displayed month changes.\n *\n * See [`NgbDatepickerNavigateEvent`](#/components/datepicker/api#NgbDatepickerNavigateEvent) for the payload info.\n */\n this.navigate = new EventEmitter();\n /**\n * An event fired after closing datepicker window.\n *\n * @since 4.2.0\n */\n this.closed = new EventEmitter();\n this._onChange = (_) => { };\n this._onTouched = () => { };\n this._validatorChange = () => { };\n ['autoClose', 'container', 'positionTarget', 'placement'].forEach(input => this[input] = config[input]);\n this._zoneSubscription = _ngZone.onStable.subscribe(() => this._updatePopupPosition());\n }\n get disabled() {\n return this._disabled;\n }\n set disabled(value) {\n this._disabled = value === '' || (value && value !== 'false');\n if (this.isOpen()) {\n this._cRef.instance.setDisabledState(this._disabled);\n }\n }\n registerOnChange(fn) { this._onChange = fn; }\n registerOnTouched(fn) { this._onTouched = fn; }\n registerOnValidatorChange(fn) { this._validatorChange = fn; }\n setDisabledState(isDisabled) { this.disabled = isDisabled; }\n validate(c) {\n const { value } = c;\n if (value != null) {\n const ngbDate = this._fromDateStruct(this._dateAdapter.fromModel(value));\n if (!ngbDate) {\n return { 'ngbDate': { invalid: value } };\n }\n if (this.minDate && ngbDate.before(NgbDate.from(this.minDate))) {\n return { 'ngbDate': { minDate: { minDate: this.minDate, actual: value } } };\n }\n if (this.maxDate && ngbDate.after(NgbDate.from(this.maxDate))) {\n return { 'ngbDate': { maxDate: { maxDate: this.maxDate, actual: value } } };\n }\n }\n return null;\n }\n writeValue(value) {\n this._model = this._fromDateStruct(this._dateAdapter.fromModel(value));\n this._writeModelValue(this._model);\n }\n manualDateChange(value, updateView = false) {\n const inputValueChanged = value !== this._inputValue;\n if (inputValueChanged) {\n this._inputValue = value;\n this._model = this._fromDateStruct(this._parserFormatter.parse(value));\n }\n if (inputValueChanged || !updateView) {\n this._onChange(this._model ? this._dateAdapter.toModel(this._model) : (value === '' ? null : value));\n }\n if (updateView && this._model) {\n this._writeModelValue(this._model);\n }\n }\n isOpen() { return !!this._cRef; }\n /**\n * Opens the datepicker popup.\n *\n * If the related form control contains a valid date, the corresponding month will be opened.\n */\n open() {\n if (!this.isOpen()) {\n const cf = this._cfr.resolveComponentFactory(NgbDatepicker);\n this._cRef = this._vcRef.createComponent(cf);\n this._applyPopupStyling(this._cRef.location.nativeElement);\n this._applyDatepickerInputs(this._cRef.instance);\n this._subscribeForDatepickerOutputs(this._cRef.instance);\n this._cRef.instance.ngOnInit();\n this._cRef.instance.writeValue(this._dateAdapter.toModel(this._model));\n // date selection event handling\n this._cRef.instance.registerOnChange((selectedDate) => {\n this.writeValue(selectedDate);\n this._onChange(selectedDate);\n this._onTouched();\n });\n this._cRef.changeDetectorRef.detectChanges();\n this._cRef.instance.setDisabledState(this.disabled);\n if (this.container === 'body') {\n this._document.querySelector(this.container).appendChild(this._cRef.location.nativeElement);\n }\n // focus handling\n this._elWithFocus = this._document.activeElement;\n ngbFocusTrap(this._ngZone, this._cRef.location.nativeElement, this.closed, true);\n this._cRef.instance.focus();\n ngbAutoClose(this._ngZone, this._document, this.autoClose, () => this.close(), this.closed, [], [this._elRef.nativeElement, this._cRef.location.nativeElement]);\n }\n }\n /**\n * Closes the datepicker popup.\n */\n close() {\n if (this.isOpen()) {\n this._vcRef.remove(this._vcRef.indexOf(this._cRef.hostView));\n this._cRef = null;\n this.closed.emit();\n this._changeDetector.markForCheck();\n // restore focus\n let elementToFocus = this._elWithFocus;\n if (isString(this.restoreFocus)) {\n elementToFocus = this._document.querySelector(this.restoreFocus);\n }\n else if (this.restoreFocus !== undefined) {\n elementToFocus = this.restoreFocus;\n }\n // in IE document.activeElement can contain an object without 'focus()' sometimes\n if (elementToFocus && elementToFocus['focus']) {\n elementToFocus.focus();\n }\n else {\n this._document.body.focus();\n }\n }\n }\n /**\n * Toggles the datepicker popup.\n */\n toggle() {\n if (this.isOpen()) {\n this.close();\n }\n else {\n this.open();\n }\n }\n /**\n * Navigates to the provided date.\n *\n * With the default calendar we use ISO 8601: 'month' is 1=Jan ... 12=Dec.\n * If nothing or invalid date provided calendar will open current month.\n *\n * Use the `[startDate]` input as an alternative.\n */\n navigateTo(date) {\n if (this.isOpen()) {\n this._cRef.instance.navigateTo(date);\n }\n }\n onBlur() { this._onTouched(); }\n onFocus() { this._elWithFocus = this._elRef.nativeElement; }\n ngOnChanges(changes) {\n if (changes['minDate'] || changes['maxDate']) {\n this._validatorChange();\n if (this.isOpen()) {\n if (changes['minDate']) {\n this._cRef.instance.minDate = this.minDate;\n }\n if (changes['maxDate']) {\n this._cRef.instance.maxDate = this.maxDate;\n }\n this._cRef.instance.ngOnChanges(changes);\n }\n }\n if (changes['datepickerClass']) {\n const { currentValue, previousValue } = changes['datepickerClass'];\n this._applyPopupClass(currentValue, previousValue);\n }\n }\n ngOnDestroy() {\n this.close();\n this._zoneSubscription.unsubscribe();\n }\n _applyDatepickerInputs(datepickerInstance) {\n ['dayTemplate', 'dayTemplateData', 'displayMonths', 'firstDayOfWeek', 'footerTemplate', 'markDisabled', 'minDate',\n 'maxDate', 'navigation', 'outsideDays', 'showNavigation', 'showWeekNumbers', 'weekdays']\n .forEach((optionName) => {\n if (this[optionName] !== undefined) {\n datepickerInstance[optionName] = this[optionName];\n }\n });\n datepickerInstance.startDate = this.startDate || this._model;\n }\n _applyPopupClass(newClass, oldClass) {\n var _a;\n const popupEl = (_a = this._cRef) === null || _a === void 0 ? void 0 : _a.location.nativeElement;\n if (popupEl) {\n if (newClass) {\n this._renderer.addClass(popupEl, newClass);\n }\n if (oldClass) {\n this._renderer.removeClass(popupEl, oldClass);\n }\n }\n }\n _applyPopupStyling(nativeElement) {\n this._renderer.addClass(nativeElement, 'dropdown-menu');\n this._renderer.addClass(nativeElement, 'show');\n if (this.container === 'body') {\n this._renderer.addClass(nativeElement, 'ngb-dp-body');\n }\n this._applyPopupClass(this.datepickerClass);\n }\n _subscribeForDatepickerOutputs(datepickerInstance) {\n datepickerInstance.navigate.subscribe(navigateEvent => this.navigate.emit(navigateEvent));\n datepickerInstance.dateSelect.subscribe(date => {\n this.dateSelect.emit(date);\n if (this.autoClose === true || this.autoClose === 'inside') {\n this.close();\n }\n });\n }\n _writeModelValue(model) {\n const value = this._parserFormatter.format(model);\n this._inputValue = value;\n this._renderer.setProperty(this._elRef.nativeElement, 'value', value);\n if (this.isOpen()) {\n this._cRef.instance.writeValue(this._dateAdapter.toModel(model));\n this._onTouched();\n }\n }\n _fromDateStruct(date) {\n const ngbDate = date ? new NgbDate(date.year, date.month, date.day) : null;\n return this._calendar.isValid(ngbDate) ? ngbDate : null;\n }\n _updatePopupPosition() {\n if (!this._cRef) {\n return;\n }\n let hostElement;\n if (isString(this.positionTarget)) {\n hostElement = this._document.querySelector(this.positionTarget);\n }\n else if (this.positionTarget instanceof HTMLElement) {\n hostElement = this.positionTarget;\n }\n else {\n hostElement = this._elRef.nativeElement;\n }\n if (this.positionTarget && !hostElement) {\n throw new Error('ngbDatepicker could not find element declared in [positionTarget] to position against.');\n }\n positionElements(hostElement, this._cRef.location.nativeElement, this.placement, this.container === 'body');\n }\n}\nNgbInputDatepicker.ɵfac = function NgbInputDatepicker_Factory(t) { return new (t || NgbInputDatepicker)(ɵngcc0.ɵɵdirectiveInject(NgbDateParserFormatter), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ViewContainerRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ComponentFactoryResolver), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.NgZone), ɵngcc0.ɵɵdirectiveInject(NgbCalendar), ɵngcc0.ɵɵdirectiveInject(NgbDateAdapter), ɵngcc0.ɵɵdirectiveInject(DOCUMENT), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef), ɵngcc0.ɵɵdirectiveInject(NgbInputDatepickerConfig)); };\nNgbInputDatepicker.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbInputDatepicker, selectors: [[\"input\", \"ngbDatepicker\", \"\"]], hostVars: 1, hostBindings: function NgbInputDatepicker_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"input\", function NgbInputDatepicker_input_HostBindingHandler($event) { return ctx.manualDateChange($event.target.value); })(\"change\", function NgbInputDatepicker_change_HostBindingHandler($event) { return ctx.manualDateChange($event.target.value, true); })(\"focus\", function NgbInputDatepicker_focus_HostBindingHandler() { return ctx.onFocus(); })(\"blur\", function NgbInputDatepicker_blur_HostBindingHandler() { return ctx.onBlur(); });\n } if (rf & 2) {\n ɵngcc0.ɵɵhostProperty(\"disabled\", ctx.disabled);\n } }, inputs: { disabled: \"disabled\", autoClose: \"autoClose\", datepickerClass: \"datepickerClass\", dayTemplate: \"dayTemplate\", dayTemplateData: \"dayTemplateData\", displayMonths: \"displayMonths\", firstDayOfWeek: \"firstDayOfWeek\", footerTemplate: \"footerTemplate\", markDisabled: \"markDisabled\", minDate: \"minDate\", maxDate: \"maxDate\", navigation: \"navigation\", outsideDays: \"outsideDays\", placement: \"placement\", restoreFocus: \"restoreFocus\", showWeekNumbers: \"showWeekNumbers\", startDate: \"startDate\", container: \"container\", positionTarget: \"positionTarget\", weekdays: \"weekdays\" }, outputs: { dateSelect: \"dateSelect\", navigate: \"navigate\", closed: \"closed\" }, exportAs: [\"ngbDatepicker\"], features: [ɵngcc0.ɵɵProvidersFeature([\n { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => NgbInputDatepicker), multi: true },\n { provide: NG_VALIDATORS, useExisting: forwardRef(() => NgbInputDatepicker), multi: true },\n { provide: NgbDatepickerConfig, useExisting: NgbInputDatepickerConfig }\n ]), ɵngcc0.ɵɵNgOnChangesFeature] });\nNgbInputDatepicker.ctorParameters = () => [\n { type: NgbDateParserFormatter },\n { type: ElementRef },\n { type: ViewContainerRef },\n { type: Renderer2 },\n { type: ComponentFactoryResolver },\n { type: NgZone },\n { type: NgbCalendar },\n { type: NgbDateAdapter },\n { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] },\n { type: ChangeDetectorRef },\n { type: NgbInputDatepickerConfig }\n];\nNgbInputDatepicker.propDecorators = {\n autoClose: [{ type: Input }],\n datepickerClass: [{ type: Input }],\n dayTemplate: [{ type: Input }],\n dayTemplateData: [{ type: Input }],\n displayMonths: [{ type: Input }],\n firstDayOfWeek: [{ type: Input }],\n footerTemplate: [{ type: Input }],\n markDisabled: [{ type: Input }],\n minDate: [{ type: Input }],\n maxDate: [{ type: Input }],\n navigation: [{ type: Input }],\n outsideDays: [{ type: Input }],\n placement: [{ type: Input }],\n restoreFocus: [{ type: Input }],\n showWeekNumbers: [{ type: Input }],\n startDate: [{ type: Input }],\n container: [{ type: Input }],\n positionTarget: [{ type: Input }],\n weekdays: [{ type: Input }],\n dateSelect: [{ type: Output }],\n navigate: [{ type: Output }],\n closed: [{ type: Output }],\n disabled: [{ type: Input }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbInputDatepicker, [{\n type: Directive,\n args: [{\n selector: 'input[ngbDatepicker]',\n exportAs: 'ngbDatepicker',\n host: {\n '(input)': 'manualDateChange($event.target.value)',\n '(change)': 'manualDateChange($event.target.value, true)',\n '(focus)': 'onFocus()',\n '(blur)': 'onBlur()',\n '[disabled]': 'disabled'\n },\n providers: [\n { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => NgbInputDatepicker), multi: true },\n { provide: NG_VALIDATORS, useExisting: forwardRef(() => NgbInputDatepicker), multi: true },\n { provide: NgbDatepickerConfig, useExisting: NgbInputDatepickerConfig }\n ]\n }]\n }], function () { return [{ type: NgbDateParserFormatter }, { type: ɵngcc0.ElementRef }, { type: ɵngcc0.ViewContainerRef }, { type: ɵngcc0.Renderer2 }, { type: ɵngcc0.ComponentFactoryResolver }, { type: ɵngcc0.NgZone }, { type: NgbCalendar }, { type: NgbDateAdapter }, { type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }, { type: ɵngcc0.ChangeDetectorRef }, { type: NgbInputDatepickerConfig }]; }, { dateSelect: [{\n type: Output\n }], navigate: [{\n type: Output\n }], closed: [{\n type: Output\n }], disabled: [{\n type: Input\n }], autoClose: [{\n type: Input\n }], datepickerClass: [{\n type: Input\n }], dayTemplate: [{\n type: Input\n }], dayTemplateData: [{\n type: Input\n }], displayMonths: [{\n type: Input\n }], firstDayOfWeek: [{\n type: Input\n }], footerTemplate: [{\n type: Input\n }], markDisabled: [{\n type: Input\n }], minDate: [{\n type: Input\n }], maxDate: [{\n type: Input\n }], navigation: [{\n type: Input\n }], outsideDays: [{\n type: Input\n }], placement: [{\n type: Input\n }], restoreFocus: [{\n type: Input\n }], showWeekNumbers: [{\n type: Input\n }], startDate: [{\n type: Input\n }], container: [{\n type: Input\n }], positionTarget: [{\n type: Input\n }], weekdays: [{\n type: Input\n }] }); })();\n\nclass NgbDatepickerDayView {\n constructor(i18n) {\n this.i18n = i18n;\n }\n isMuted() { return !this.selected && (this.date.month !== this.currentMonth || this.disabled); }\n}\nNgbDatepickerDayView.ɵfac = function NgbDatepickerDayView_Factory(t) { return new (t || NgbDatepickerDayView)(ɵngcc0.ɵɵdirectiveInject(NgbDatepickerI18n)); };\nNgbDatepickerDayView.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: NgbDatepickerDayView, selectors: [[\"\", \"ngbDatepickerDayView\", \"\"]], hostAttrs: [1, \"btn-light\"], hostVars: 10, hostBindings: function NgbDatepickerDayView_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵclassProp(\"bg-primary\", ctx.selected)(\"text-white\", ctx.selected)(\"text-muted\", ctx.isMuted())(\"outside\", ctx.isMuted())(\"active\", ctx.focused);\n } }, inputs: { currentMonth: \"currentMonth\", date: \"date\", disabled: \"disabled\", focused: \"focused\", selected: \"selected\" }, attrs: _c20, decls: 1, vars: 1, template: function NgbDatepickerDayView_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵtext(0);\n } if (rf & 2) {\n ɵngcc0.ɵɵtextInterpolate(ctx.i18n.getDayNumerals(ctx.date));\n } }, styles: [\"[ngbDatepickerDayView]{text-align:center;width:2rem;height:2rem;line-height:2rem;border-radius:.25rem;background:transparent}[ngbDatepickerDayView].outside{opacity:.5}\"], encapsulation: 2, changeDetection: 0 });\nNgbDatepickerDayView.ctorParameters = () => [\n { type: NgbDatepickerI18n }\n];\nNgbDatepickerDayView.propDecorators = {\n currentMonth: [{ type: Input }],\n date: [{ type: Input }],\n disabled: [{ type: Input }],\n focused: [{ type: Input }],\n selected: [{ type: Input }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDatepickerDayView, [{\n type: Component,\n args: [{\n selector: '[ngbDatepickerDayView]',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'btn-light',\n '[class.bg-primary]': 'selected',\n '[class.text-white]': 'selected',\n '[class.text-muted]': 'isMuted()',\n '[class.outside]': 'isMuted()',\n '[class.active]': 'focused'\n },\n template: `{{ i18n.getDayNumerals(date) }}`,\n styles: [\"[ngbDatepickerDayView]{text-align:center;width:2rem;height:2rem;line-height:2rem;border-radius:.25rem;background:transparent}[ngbDatepickerDayView].outside{opacity:.5}\"]\n }]\n }], function () { return [{ type: NgbDatepickerI18n }]; }, { currentMonth: [{\n type: Input\n }], date: [{\n type: Input\n }], disabled: [{\n type: Input\n }], focused: [{\n type: Input\n }], selected: [{\n type: Input\n }] }); })();\n\nclass NgbDatepickerNavigationSelect {\n constructor(i18n, _renderer) {\n this.i18n = i18n;\n this._renderer = _renderer;\n this.select = new EventEmitter();\n this._month = -1;\n this._year = -1;\n }\n changeMonth(month) { this.select.emit(new NgbDate(this.date.year, toInteger(month), 1)); }\n changeYear(year) { this.select.emit(new NgbDate(toInteger(year), this.date.month, 1)); }\n ngAfterViewChecked() {\n if (this.date) {\n if (this.date.month !== this._month) {\n this._month = this.date.month;\n this._renderer.setProperty(this.monthSelect.nativeElement, 'value', this._month);\n }\n if (this.date.year !== this._year) {\n this._year = this.date.year;\n this._renderer.setProperty(this.yearSelect.nativeElement, 'value', this._year);\n }\n }\n }\n}\nNgbDatepickerNavigationSelect.ɵfac = function NgbDatepickerNavigationSelect_Factory(t) { return new (t || NgbDatepickerNavigationSelect)(ɵngcc0.ɵɵdirectiveInject(NgbDatepickerI18n), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nNgbDatepickerNavigationSelect.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: NgbDatepickerNavigationSelect, selectors: [[\"ngb-datepicker-navigation-select\"]], viewQuery: function NgbDatepickerNavigationSelect_Query(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵviewQuery(_c21, 3, ElementRef);\n ɵngcc0.ɵɵviewQuery(_c22, 3, ElementRef);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.monthSelect = _t.first);\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.yearSelect = _t.first);\n } }, inputs: { date: \"date\", disabled: \"disabled\", months: \"months\", years: \"years\" }, outputs: { select: \"select\" }, decls: 6, vars: 4, consts: function () { let i18n_23; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_datepicker_select_month$$FESM2015_NG_BOOTSTRAP_JS_24 = goog.getMsg(\"Select month\");\n i18n_23 = MSG_EXTERNAL_ngb_datepicker_select_month$$FESM2015_NG_BOOTSTRAP_JS_24;\n }\n else {\n i18n_23 = $localize `:@@ngb.datepicker.select-month␟1dbc84807f35518112f62e5775d1daebd3d8462b␟2253869508135064750:Select month`;\n } let i18n_25; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_datepicker_select_month$$FESM2015_NG_BOOTSTRAP_JS_26 = goog.getMsg(\"Select month\");\n i18n_25 = MSG_EXTERNAL_ngb_datepicker_select_month$$FESM2015_NG_BOOTSTRAP_JS_26;\n }\n else {\n i18n_25 = $localize `:@@ngb.datepicker.select-month␟1dbc84807f35518112f62e5775d1daebd3d8462b␟2253869508135064750:Select month`;\n } let i18n_27; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_datepicker_select_year$$FESM2015_NG_BOOTSTRAP_JS_28 = goog.getMsg(\"Select year\");\n i18n_27 = MSG_EXTERNAL_ngb_datepicker_select_year$$FESM2015_NG_BOOTSTRAP_JS_28;\n }\n else {\n i18n_27 = $localize `:@@ngb.datepicker.select-year␟8ceb09d002bf0c5d1cac171dfbffe1805d2b3962␟8852264961585484321:Select year`;\n } let i18n_29; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_datepicker_select_year$$FESM2015_NG_BOOTSTRAP_JS_30 = goog.getMsg(\"Select year\");\n i18n_29 = MSG_EXTERNAL_ngb_datepicker_select_year$$FESM2015_NG_BOOTSTRAP_JS_30;\n }\n else {\n i18n_29 = $localize `:@@ngb.datepicker.select-year␟8ceb09d002bf0c5d1cac171dfbffe1805d2b3962␟8852264961585484321:Select year`;\n } return [[\"aria-label\", i18n_23, \"title\", i18n_25, 1, \"custom-select\", 3, \"disabled\", \"change\"], [\"month\", \"\"], [3, \"value\", 4, \"ngFor\", \"ngForOf\"], [\"aria-label\", i18n_27, \"title\", i18n_29, 1, \"custom-select\", 3, \"disabled\", \"change\"], [\"year\", \"\"], [3, \"value\"]]; }, template: function NgbDatepickerNavigationSelect_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"select\", 0, 1);\n ɵngcc0.ɵɵlistener(\"change\", function NgbDatepickerNavigationSelect_Template_select_change_0_listener($event) { return ctx.changeMonth($event.target.value); });\n ɵngcc0.ɵɵtemplate(2, NgbDatepickerNavigationSelect_option_2_Template, 2, 3, \"option\", 2);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(3, \"select\", 3, 4);\n ɵngcc0.ɵɵlistener(\"change\", function NgbDatepickerNavigationSelect_Template_select_change_3_listener($event) { return ctx.changeYear($event.target.value); });\n ɵngcc0.ɵɵtemplate(5, NgbDatepickerNavigationSelect_option_5_Template, 2, 2, \"option\", 2);\n ɵngcc0.ɵɵelementEnd();\n } if (rf & 2) {\n ɵngcc0.ɵɵproperty(\"disabled\", ctx.disabled);\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"ngForOf\", ctx.months);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"disabled\", ctx.disabled);\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"ngForOf\", ctx.years);\n } }, directives: [ɵngcc1.NgForOf, ɵngcc2.NgSelectOption, ɵngcc2.ɵangular_packages_forms_forms_z], styles: [\"ngb-datepicker-navigation-select>.custom-select{flex:1 1 auto;padding:0 .5rem;font-size:.875rem;height:1.85rem}ngb-datepicker-navigation-select>.custom-select:focus{z-index:1}ngb-datepicker-navigation-select>.custom-select::-ms-value{background-color:transparent!important}\"], encapsulation: 2, changeDetection: 0 });\nNgbDatepickerNavigationSelect.ctorParameters = () => [\n { type: NgbDatepickerI18n },\n { type: Renderer2 }\n];\nNgbDatepickerNavigationSelect.propDecorators = {\n date: [{ type: Input }],\n disabled: [{ type: Input }],\n months: [{ type: Input }],\n years: [{ type: Input }],\n select: [{ type: Output }],\n monthSelect: [{ type: ViewChild, args: ['month', { static: true, read: ElementRef },] }],\n yearSelect: [{ type: ViewChild, args: ['year', { static: true, read: ElementRef },] }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDatepickerNavigationSelect, [{\n type: Component,\n args: [{\n selector: 'ngb-datepicker-navigation-select',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n template: `\n \n `,\n styles: [\"ngb-datepicker-navigation-select>.custom-select{flex:1 1 auto;padding:0 .5rem;font-size:.875rem;height:1.85rem}ngb-datepicker-navigation-select>.custom-select:focus{z-index:1}ngb-datepicker-navigation-select>.custom-select::-ms-value{background-color:transparent!important}\"]\n }]\n }], function () { return [{ type: NgbDatepickerI18n }, { type: ɵngcc0.Renderer2 }]; }, { select: [{\n type: Output\n }], date: [{\n type: Input\n }], disabled: [{\n type: Input\n }], months: [{\n type: Input\n }], years: [{\n type: Input\n }], monthSelect: [{\n type: ViewChild,\n args: ['month', { static: true, read: ElementRef }]\n }], yearSelect: [{\n type: ViewChild,\n args: ['year', { static: true, read: ElementRef }]\n }] }); })();\n\nclass NgbCalendarHijri extends NgbCalendar {\n getDaysPerWeek() { return 7; }\n getMonths() { return [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]; }\n getWeeksPerMonth() { return 6; }\n getNext(date, period = 'd', number = 1) {\n date = new NgbDate(date.year, date.month, date.day);\n switch (period) {\n case 'y':\n date = this._setYear(date, date.year + number);\n date.month = 1;\n date.day = 1;\n return date;\n case 'm':\n date = this._setMonth(date, date.month + number);\n date.day = 1;\n return date;\n case 'd':\n return this._setDay(date, date.day + number);\n default:\n return date;\n }\n }\n getPrev(date, period = 'd', number = 1) { return this.getNext(date, period, -number); }\n getWeekday(date) {\n const day = this.toGregorian(date).getDay();\n // in JS Date Sun=0, in ISO 8601 Sun=7\n return day === 0 ? 7 : day;\n }\n getWeekNumber(week, firstDayOfWeek) {\n // in JS Date Sun=0, in ISO 8601 Sun=7\n if (firstDayOfWeek === 7) {\n firstDayOfWeek = 0;\n }\n const thursdayIndex = (4 + 7 - firstDayOfWeek) % 7;\n const date = week[thursdayIndex];\n const jsDate = this.toGregorian(date);\n jsDate.setDate(jsDate.getDate() + 4 - (jsDate.getDay() || 7)); // Thursday\n const time = jsDate.getTime();\n const MuhDate = this.toGregorian(new NgbDate(date.year, 1, 1)); // Compare with Muharram 1\n return Math.floor(Math.round((time - MuhDate.getTime()) / 86400000) / 7) + 1;\n }\n getToday() { return this.fromGregorian(new Date()); }\n isValid(date) {\n return date != null && isNumber(date.year) && isNumber(date.month) && isNumber(date.day) &&\n !isNaN(this.toGregorian(date).getTime());\n }\n _setDay(date, day) {\n day = +day;\n let mDays = this.getDaysPerMonth(date.month, date.year);\n if (day <= 0) {\n while (day <= 0) {\n date = this._setMonth(date, date.month - 1);\n mDays = this.getDaysPerMonth(date.month, date.year);\n day += mDays;\n }\n }\n else if (day > mDays) {\n while (day > mDays) {\n day -= mDays;\n date = this._setMonth(date, date.month + 1);\n mDays = this.getDaysPerMonth(date.month, date.year);\n }\n }\n date.day = day;\n return date;\n }\n _setMonth(date, month) {\n month = +month;\n date.year = date.year + Math.floor((month - 1) / 12);\n date.month = Math.floor(((month - 1) % 12 + 12) % 12) + 1;\n return date;\n }\n _setYear(date, year) {\n date.year = +year;\n return date;\n }\n}\nNgbCalendarHijri.ɵfac = function NgbCalendarHijri_Factory(t) { return ɵNgbCalendarHijri_BaseFactory(t || NgbCalendarHijri); };\nNgbCalendarHijri.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: NgbCalendarHijri, factory: NgbCalendarHijri.ɵfac });\nconst ɵNgbCalendarHijri_BaseFactory = /*@__PURE__*/ ɵngcc0.ɵɵgetInheritedFactory(NgbCalendarHijri);\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbCalendarHijri, [{\n type: Injectable\n }], null, null); })();\n\n/**\n * Checks if islamic year is a leap year\n */\nfunction isIslamicLeapYear(hYear) {\n return (14 + 11 * hYear) % 30 < 11;\n}\n/**\n * Checks if gregorian years is a leap year\n */\nfunction isGregorianLeapYear$1(gDate) {\n const year = gDate.getFullYear();\n return year % 4 === 0 && year % 100 !== 0 || year % 400 === 0;\n}\n/**\n * Returns the start of Hijri Month.\n * `hMonth` is 0 for Muharram, 1 for Safar, etc.\n * `hYear` is any Hijri hYear.\n */\nfunction getIslamicMonthStart(hYear, hMonth) {\n return Math.ceil(29.5 * hMonth) + (hYear - 1) * 354 + Math.floor((3 + 11 * hYear) / 30.0);\n}\n/**\n * Returns the start of Hijri year.\n * `year` is any Hijri year.\n */\nfunction getIslamicYearStart(year) {\n return (year - 1) * 354 + Math.floor((3 + 11 * year) / 30.0);\n}\nfunction mod$1(a, b) {\n return a - b * Math.floor(a / b);\n}\n/**\n * The civil calendar is one type of Hijri calendars used in islamic countries.\n * Uses a fixed cycle of alternating 29- and 30-day months,\n * with a leap day added to the last month of 11 out of every 30 years.\n * http://cldr.unicode.org/development/development-process/design-proposals/islamic-calendar-types\n * All the calculations here are based on the equations from \"Calendrical Calculations\" By Edward M. Reingold, Nachum\n * Dershowitz.\n */\nconst GREGORIAN_EPOCH$1 = 1721425.5;\nconst ISLAMIC_EPOCH = 1948439.5;\nclass NgbCalendarIslamicCivil extends NgbCalendarHijri {\n /**\n * Returns the equivalent islamic(civil) date value for a give input Gregorian date.\n * `gDate` is a JS Date to be converted to Hijri.\n */\n fromGregorian(gDate) {\n const gYear = gDate.getFullYear(), gMonth = gDate.getMonth(), gDay = gDate.getDate();\n let julianDay = GREGORIAN_EPOCH$1 - 1 + 365 * (gYear - 1) + Math.floor((gYear - 1) / 4) +\n -Math.floor((gYear - 1) / 100) + Math.floor((gYear - 1) / 400) +\n Math.floor((367 * (gMonth + 1) - 362) / 12 + (gMonth + 1 <= 2 ? 0 : isGregorianLeapYear$1(gDate) ? -1 : -2) + gDay);\n julianDay = Math.floor(julianDay) + 0.5;\n const days = julianDay - ISLAMIC_EPOCH;\n const hYear = Math.floor((30 * days + 10646) / 10631.0);\n let hMonth = Math.ceil((days - 29 - getIslamicYearStart(hYear)) / 29.5);\n hMonth = Math.min(hMonth, 11);\n const hDay = Math.ceil(days - getIslamicMonthStart(hYear, hMonth)) + 1;\n return new NgbDate(hYear, hMonth + 1, hDay);\n }\n /**\n * Returns the equivalent JS date value for a give input islamic(civil) date.\n * `hDate` is an islamic(civil) date to be converted to Gregorian.\n */\n toGregorian(hDate) {\n const hYear = hDate.year;\n const hMonth = hDate.month - 1;\n const hDay = hDate.day;\n const julianDay = hDay + Math.ceil(29.5 * hMonth) + (hYear - 1) * 354 + Math.floor((3 + 11 * hYear) / 30) + ISLAMIC_EPOCH - 1;\n const wjd = Math.floor(julianDay - 0.5) + 0.5, depoch = wjd - GREGORIAN_EPOCH$1, quadricent = Math.floor(depoch / 146097), dqc = mod$1(depoch, 146097), cent = Math.floor(dqc / 36524), dcent = mod$1(dqc, 36524), quad = Math.floor(dcent / 1461), dquad = mod$1(dcent, 1461), yindex = Math.floor(dquad / 365);\n let year = quadricent * 400 + cent * 100 + quad * 4 + yindex;\n if (!(cent === 4 || yindex === 4)) {\n year++;\n }\n const gYearStart = GREGORIAN_EPOCH$1 + 365 * (year - 1) + Math.floor((year - 1) / 4) - Math.floor((year - 1) / 100) +\n Math.floor((year - 1) / 400);\n const yearday = wjd - gYearStart;\n const tjd = GREGORIAN_EPOCH$1 - 1 + 365 * (year - 1) + Math.floor((year - 1) / 4) - Math.floor((year - 1) / 100) +\n Math.floor((year - 1) / 400) + Math.floor(739 / 12 + (isGregorianLeapYear$1(new Date(year, 3, 1)) ? -1 : -2) + 1);\n const leapadj = wjd < tjd ? 0 : isGregorianLeapYear$1(new Date(year, 3, 1)) ? 1 : 2;\n const month = Math.floor(((yearday + leapadj) * 12 + 373) / 367);\n const tjd2 = GREGORIAN_EPOCH$1 - 1 + 365 * (year - 1) + Math.floor((year - 1) / 4) - Math.floor((year - 1) / 100) +\n Math.floor((year - 1) / 400) +\n Math.floor((367 * month - 362) / 12 + (month <= 2 ? 0 : isGregorianLeapYear$1(new Date(year, month - 1, 1)) ? -1 : -2) +\n 1);\n const day = wjd - tjd2 + 1;\n return new Date(year, month - 1, day);\n }\n /**\n * Returns the number of days in a specific Hijri month.\n * `month` is 1 for Muharram, 2 for Safar, etc.\n * `year` is any Hijri year.\n */\n getDaysPerMonth(month, year) {\n year = year + Math.floor(month / 13);\n month = ((month - 1) % 12) + 1;\n let length = 29 + month % 2;\n if (month === 12 && isIslamicLeapYear(year)) {\n length++;\n }\n return length;\n }\n}\nNgbCalendarIslamicCivil.ɵfac = function NgbCalendarIslamicCivil_Factory(t) { return ɵNgbCalendarIslamicCivil_BaseFactory(t || NgbCalendarIslamicCivil); };\nNgbCalendarIslamicCivil.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: NgbCalendarIslamicCivil, factory: NgbCalendarIslamicCivil.ɵfac });\nconst ɵNgbCalendarIslamicCivil_BaseFactory = /*@__PURE__*/ ɵngcc0.ɵɵgetInheritedFactory(NgbCalendarIslamicCivil);\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbCalendarIslamicCivil, [{\n type: Injectable\n }], null, null); })();\n\n/**\n * Umalqura calendar is one type of Hijri calendars used in islamic countries.\n * This Calendar is used by Saudi Arabia for administrative purpose.\n * Unlike tabular calendars, the algorithm involves astronomical calculation, but it's still deterministic.\n * http://cldr.unicode.org/development/development-process/design-proposals/islamic-calendar-types\n */\nconst GREGORIAN_FIRST_DATE = new Date(1882, 10, 12);\nconst GREGORIAN_LAST_DATE = new Date(2174, 10, 25);\nconst HIJRI_BEGIN = 1300;\nconst HIJRI_END = 1600;\nconst ONE_DAY = 1000 * 60 * 60 * 24;\nconst MONTH_LENGTH = [\n // 1300-1304\n '101010101010', '110101010100', '111011001001', '011011010100', '011011101010',\n // 1305-1309\n '001101101100', '101010101101', '010101010101', '011010101001', '011110010010',\n // 1310-1314\n '101110101001', '010111010100', '101011011010', '010101011100', '110100101101',\n // 1315-1319\n '011010010101', '011101001010', '101101010100', '101101101010', '010110101101',\n // 1320-1324\n '010010101110', '101001001111', '010100010111', '011010001011', '011010100101',\n // 1325-1329\n '101011010101', '001011010110', '100101011011', '010010011101', '101001001101',\n // 1330-1334\n '110100100110', '110110010101', '010110101100', '100110110110', '001010111010',\n // 1335-1339\n '101001011011', '010100101011', '101010010101', '011011001010', '101011101001',\n // 1340-1344\n '001011110100', '100101110110', '001010110110', '100101010110', '101011001010',\n // 1345-1349\n '101110100100', '101111010010', '010111011001', '001011011100', '100101101101',\n // 1350-1354\n '010101001101', '101010100101', '101101010010', '101110100101', '010110110100',\n // 1355-1359\n '100110110110', '010101010111', '001010010111', '010101001011', '011010100011',\n // 1360-1364\n '011101010010', '101101100101', '010101101010', '101010101011', '010100101011',\n // 1365-1369\n '110010010101', '110101001010', '110110100101', '010111001010', '101011010110',\n // 1370-1374\n '100101010111', '010010101011', '100101001011', '101010100101', '101101010010',\n // 1375-1379\n '101101101010', '010101110101', '001001110110', '100010110111', '010001011011',\n // 1380-1384\n '010101010101', '010110101001', '010110110100', '100111011010', '010011011101',\n // 1385-1389\n '001001101110', '100100110110', '101010101010', '110101010100', '110110110010',\n // 1390-1394\n '010111010101', '001011011010', '100101011011', '010010101011', '101001010101',\n // 1395-1399\n '101101001001', '101101100100', '101101110001', '010110110100', '101010110101',\n // 1400-1404\n '101001010101', '110100100101', '111010010010', '111011001001', '011011010100',\n // 1405-1409\n '101011101001', '100101101011', '010010101011', '101010010011', '110101001001',\n // 1410-1414\n '110110100100', '110110110010', '101010111001', '010010111010', '101001011011',\n // 1415-1419\n '010100101011', '101010010101', '101100101010', '101101010101', '010101011100',\n // 1420-1424\n '010010111101', '001000111101', '100100011101', '101010010101', '101101001010',\n // 1425-1429\n '101101011010', '010101101101', '001010110110', '100100111011', '010010011011',\n // 1430-1434\n '011001010101', '011010101001', '011101010100', '101101101010', '010101101100',\n // 1435-1439\n '101010101101', '010101010101', '101100101001', '101110010010', '101110101001',\n // 1440-1444\n '010111010100', '101011011010', '010101011010', '101010101011', '010110010101',\n // 1445-1449\n '011101001001', '011101100100', '101110101010', '010110110101', '001010110110',\n // 1450-1454\n '101001010110', '111001001101', '101100100101', '101101010010', '101101101010',\n // 1455-1459\n '010110101101', '001010101110', '100100101111', '010010010111', '011001001011',\n // 1460-1464\n '011010100101', '011010101100', '101011010110', '010101011101', '010010011101',\n // 1465-1469\n '101001001101', '110100010110', '110110010101', '010110101010', '010110110101',\n // 1470-1474\n '001011011010', '100101011011', '010010101101', '010110010101', '011011001010',\n // 1475-1479\n '011011100100', '101011101010', '010011110101', '001010110110', '100101010110',\n // 1480-1484\n '101010101010', '101101010100', '101111010010', '010111011001', '001011101010',\n // 1485-1489\n '100101101101', '010010101101', '101010010101', '101101001010', '101110100101',\n // 1490-1494\n '010110110010', '100110110101', '010011010110', '101010010111', '010101000111',\n // 1495-1499\n '011010010011', '011101001001', '101101010101', '010101101010', '101001101011',\n // 1500-1504\n '010100101011', '101010001011', '110101000110', '110110100011', '010111001010',\n // 1505-1509\n '101011010110', '010011011011', '001001101011', '100101001011', '101010100101',\n // 1510-1514\n '101101010010', '101101101001', '010101110101', '000101110110', '100010110111',\n // 1515-1519\n '001001011011', '010100101011', '010101100101', '010110110100', '100111011010',\n // 1520-1524\n '010011101101', '000101101101', '100010110110', '101010100110', '110101010010',\n // 1525-1529\n '110110101001', '010111010100', '101011011010', '100101011011', '010010101011',\n // 1530-1534\n '011001010011', '011100101001', '011101100010', '101110101001', '010110110010',\n // 1535-1539\n '101010110101', '010101010101', '101100100101', '110110010010', '111011001001',\n // 1540-1544\n '011011010010', '101011101001', '010101101011', '010010101011', '101001010101',\n // 1545-1549\n '110100101001', '110101010100', '110110101010', '100110110101', '010010111010',\n // 1550-1554\n '101000111011', '010010011011', '101001001101', '101010101010', '101011010101',\n // 1555-1559\n '001011011010', '100101011101', '010001011110', '101000101110', '110010011010',\n // 1560-1564\n '110101010101', '011010110010', '011010111001', '010010111010', '101001011101',\n // 1565-1569\n '010100101101', '101010010101', '101101010010', '101110101000', '101110110100',\n // 1570-1574\n '010110111001', '001011011010', '100101011010', '101101001010', '110110100100',\n // 1575-1579\n '111011010001', '011011101000', '101101101010', '010101101101', '010100110101',\n // 1580-1584\n '011010010101', '110101001010', '110110101000', '110111010100', '011011011010',\n // 1585-1589\n '010101011011', '001010011101', '011000101011', '101100010101', '101101001010',\n // 1590-1594\n '101110010101', '010110101010', '101010101110', '100100101110', '110010001111',\n // 1595-1599\n '010100100111', '011010010101', '011010101010', '101011010110', '010101011101',\n // 1600\n '001010011101'\n];\nfunction getDaysDiff(date1, date2) {\n // Ignores the time part in date1 and date2:\n const time1 = Date.UTC(date1.getFullYear(), date1.getMonth(), date1.getDate());\n const time2 = Date.UTC(date2.getFullYear(), date2.getMonth(), date2.getDate());\n const diff = Math.abs(time1 - time2);\n return Math.round(diff / ONE_DAY);\n}\nclass NgbCalendarIslamicUmalqura extends NgbCalendarIslamicCivil {\n /**\n * Returns the equivalent islamic(Umalqura) date value for a give input Gregorian date.\n * `gdate` is s JS Date to be converted to Hijri.\n */\n fromGregorian(gDate) {\n let hDay = 1, hMonth = 0, hYear = 1300;\n let daysDiff = getDaysDiff(gDate, GREGORIAN_FIRST_DATE);\n if (gDate.getTime() - GREGORIAN_FIRST_DATE.getTime() >= 0 && gDate.getTime() - GREGORIAN_LAST_DATE.getTime() <= 0) {\n let year = 1300;\n for (let i = 0; i < MONTH_LENGTH.length; i++, year++) {\n for (let j = 0; j < 12; j++) {\n let numOfDays = +MONTH_LENGTH[i][j] + 29;\n if (daysDiff <= numOfDays) {\n hDay = daysDiff + 1;\n if (hDay > numOfDays) {\n hDay = 1;\n j++;\n }\n if (j > 11) {\n j = 0;\n year++;\n }\n hMonth = j;\n hYear = year;\n return new NgbDate(hYear, hMonth + 1, hDay);\n }\n daysDiff = daysDiff - numOfDays;\n }\n }\n return null;\n }\n else {\n return super.fromGregorian(gDate);\n }\n }\n /**\n * Converts the current Hijri date to Gregorian.\n */\n toGregorian(hDate) {\n const hYear = hDate.year;\n const hMonth = hDate.month - 1;\n const hDay = hDate.day;\n let gDate = new Date(GREGORIAN_FIRST_DATE);\n let dayDiff = hDay - 1;\n if (hYear >= HIJRI_BEGIN && hYear <= HIJRI_END) {\n for (let y = 0; y < hYear - HIJRI_BEGIN; y++) {\n for (let m = 0; m < 12; m++) {\n dayDiff += +MONTH_LENGTH[y][m] + 29;\n }\n }\n for (let m = 0; m < hMonth; m++) {\n dayDiff += +MONTH_LENGTH[hYear - HIJRI_BEGIN][m] + 29;\n }\n gDate.setDate(GREGORIAN_FIRST_DATE.getDate() + dayDiff);\n }\n else {\n gDate = super.toGregorian(hDate);\n }\n return gDate;\n }\n /**\n * Returns the number of days in a specific Hijri hMonth.\n * `hMonth` is 1 for Muharram, 2 for Safar, etc.\n * `hYear` is any Hijri hYear.\n */\n getDaysPerMonth(hMonth, hYear) {\n if (hYear >= HIJRI_BEGIN && hYear <= HIJRI_END) {\n const pos = hYear - HIJRI_BEGIN;\n return +MONTH_LENGTH[pos][hMonth - 1] + 29;\n }\n return super.getDaysPerMonth(hMonth, hYear);\n }\n}\nNgbCalendarIslamicUmalqura.ɵfac = function NgbCalendarIslamicUmalqura_Factory(t) { return ɵNgbCalendarIslamicUmalqura_BaseFactory(t || NgbCalendarIslamicUmalqura); };\nNgbCalendarIslamicUmalqura.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: NgbCalendarIslamicUmalqura, factory: NgbCalendarIslamicUmalqura.ɵfac });\nconst ɵNgbCalendarIslamicUmalqura_BaseFactory = /*@__PURE__*/ ɵngcc0.ɵɵgetInheritedFactory(NgbCalendarIslamicUmalqura);\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbCalendarIslamicUmalqura, [{\n type: Injectable\n }], null, null); })();\n\n/**\n * Returns the equivalent JS date value for a give input Jalali date.\n * `jalaliDate` is an Jalali date to be converted to Gregorian.\n */\nfunction toGregorian$2(jalaliDate) {\n let jdn = jalaliToJulian(jalaliDate.year, jalaliDate.month, jalaliDate.day);\n let date = julianToGregorian(jdn);\n date.setHours(6, 30, 3, 200);\n return date;\n}\n/**\n * Returns the equivalent jalali date value for a give input Gregorian date.\n * `gdate` is a JS Date to be converted to jalali.\n * utc to local\n */\nfunction fromGregorian$2(gdate) {\n let g2d = gregorianToJulian(gdate.getFullYear(), gdate.getMonth() + 1, gdate.getDate());\n return julianToJalali(g2d);\n}\nfunction setJalaliYear(date, yearValue) {\n date.year = +yearValue;\n return date;\n}\nfunction setJalaliMonth(date, month) {\n month = +month;\n date.year = date.year + Math.floor((month - 1) / 12);\n date.month = Math.floor(((month - 1) % 12 + 12) % 12) + 1;\n return date;\n}\nfunction setJalaliDay(date, day) {\n let mDays = getDaysPerMonth(date.month, date.year);\n if (day <= 0) {\n while (day <= 0) {\n date = setJalaliMonth(date, date.month - 1);\n mDays = getDaysPerMonth(date.month, date.year);\n day += mDays;\n }\n }\n else if (day > mDays) {\n while (day > mDays) {\n day -= mDays;\n date = setJalaliMonth(date, date.month + 1);\n mDays = getDaysPerMonth(date.month, date.year);\n }\n }\n date.day = day;\n return date;\n}\nfunction mod(a, b) {\n return a - b * Math.floor(a / b);\n}\nfunction div(a, b) {\n return Math.trunc(a / b);\n}\n/*\n This function determines if the Jalali (Persian) year is\n leap (366-day long) or is the common year (365 days), and\n finds the day in March (Gregorian calendar) of the first\n day of the Jalali year (jalaliYear).\n @param jalaliYear Jalali calendar year (-61 to 3177)\n @return\n leap: number of years since the last leap year (0 to 4)\n gYear: Gregorian year of the beginning of Jalali year\n march: the March day of Farvardin the 1st (1st day of jalaliYear)\n @see: http://www.astro.uni.torun.pl/~kb/Papers/EMP/PersianC-EMP.htm\n @see: http://www.fourmilab.ch/documents/calendar/\n */\nfunction jalCal(jalaliYear) {\n // Jalali years starting the 33-year rule.\n let breaks = [-61, 9, 38, 199, 426, 686, 756, 818, 1111, 1181, 1210, 1635, 2060, 2097, 2192, 2262, 2324, 2394, 2456, 3178];\n const breaksLength = breaks.length;\n const gYear = jalaliYear + 621;\n let leapJ = -14;\n let jp = breaks[0];\n if (jalaliYear < jp || jalaliYear >= breaks[breaksLength - 1]) {\n throw new Error('Invalid Jalali year ' + jalaliYear);\n }\n // Find the limiting years for the Jalali year jalaliYear.\n let jump;\n for (let i = 1; i < breaksLength; i += 1) {\n const jm = breaks[i];\n jump = jm - jp;\n if (jalaliYear < jm) {\n break;\n }\n leapJ = leapJ + div(jump, 33) * 8 + div(mod(jump, 33), 4);\n jp = jm;\n }\n let n = jalaliYear - jp;\n // Find the number of leap years from AD 621 to the beginning\n // of the current Jalali year in the Persian calendar.\n leapJ = leapJ + div(n, 33) * 8 + div(mod(n, 33) + 3, 4);\n if (mod(jump, 33) === 4 && jump - n === 4) {\n leapJ += 1;\n }\n // And the same in the Gregorian calendar (until the year gYear).\n const leapG = div(gYear, 4) - div((div(gYear, 100) + 1) * 3, 4) - 150;\n // Determine the Gregorian date of Farvardin the 1st.\n const march = 20 + leapJ - leapG;\n // Find how many years have passed since the last leap year.\n if (jump - n < 6) {\n n = n - jump + div(jump + 4, 33) * 33;\n }\n let leap = mod(mod(n + 1, 33) - 1, 4);\n if (leap === -1) {\n leap = 4;\n }\n return { leap: leap, gy: gYear, march: march };\n}\n/*\n Calculates Gregorian and Julian calendar dates from the Julian Day number\n (jdn) for the period since jdn=-34839655 (i.e. the year -100100 of both\n calendars) to some millions years ahead of the present.\n @param jdn Julian Day number\n @return\n gYear: Calendar year (years BC numbered 0, -1, -2, ...)\n gMonth: Calendar month (1 to 12)\n gDay: Calendar day of the month M (1 to 28/29/30/31)\n */\nfunction julianToGregorian(julianDayNumber) {\n let j = 4 * julianDayNumber + 139361631;\n j = j + div(div(4 * julianDayNumber + 183187720, 146097) * 3, 4) * 4 - 3908;\n const i = div(mod(j, 1461), 4) * 5 + 308;\n const gDay = div(mod(i, 153), 5) + 1;\n const gMonth = mod(div(i, 153), 12) + 1;\n const gYear = div(j, 1461) - 100100 + div(8 - gMonth, 6);\n return new Date(gYear, gMonth - 1, gDay);\n}\n/*\n Converts a date of the Jalali calendar to the Julian Day number.\n @param jy Jalali year (1 to 3100)\n @param jm Jalali month (1 to 12)\n @param jd Jalali day (1 to 29/31)\n @return Julian Day number\n */\nfunction gregorianToJulian(gy, gm, gd) {\n let d = div((gy + div(gm - 8, 6) + 100100) * 1461, 4) + div(153 * mod(gm + 9, 12) + 2, 5) + gd - 34840408;\n d = d - div(div(gy + 100100 + div(gm - 8, 6), 100) * 3, 4) + 752;\n return d;\n}\n/*\n Converts the Julian Day number to a date in the Jalali calendar.\n @param julianDayNumber Julian Day number\n @return\n jalaliYear: Jalali year (1 to 3100)\n jalaliMonth: Jalali month (1 to 12)\n jalaliDay: Jalali day (1 to 29/31)\n */\nfunction julianToJalali(julianDayNumber) {\n let gy = julianToGregorian(julianDayNumber).getFullYear() // Calculate Gregorian year (gy).\n , jalaliYear = gy - 621, r = jalCal(jalaliYear), gregorianDay = gregorianToJulian(gy, 3, r.march), jalaliDay, jalaliMonth, numberOfDays;\n // Find number of days that passed since 1 Farvardin.\n numberOfDays = julianDayNumber - gregorianDay;\n if (numberOfDays >= 0) {\n if (numberOfDays <= 185) {\n // The first 6 months.\n jalaliMonth = 1 + div(numberOfDays, 31);\n jalaliDay = mod(numberOfDays, 31) + 1;\n return new NgbDate(jalaliYear, jalaliMonth, jalaliDay);\n }\n else {\n // The remaining months.\n numberOfDays -= 186;\n }\n }\n else {\n // Previous Jalali year.\n jalaliYear -= 1;\n numberOfDays += 179;\n if (r.leap === 1) {\n numberOfDays += 1;\n }\n }\n jalaliMonth = 7 + div(numberOfDays, 30);\n jalaliDay = mod(numberOfDays, 30) + 1;\n return new NgbDate(jalaliYear, jalaliMonth, jalaliDay);\n}\n/*\n Converts a date of the Jalali calendar to the Julian Day number.\n @param jYear Jalali year (1 to 3100)\n @param jMonth Jalali month (1 to 12)\n @param jDay Jalali day (1 to 29/31)\n @return Julian Day number\n */\nfunction jalaliToJulian(jYear, jMonth, jDay) {\n let r = jalCal(jYear);\n return gregorianToJulian(r.gy, 3, r.march) + (jMonth - 1) * 31 - div(jMonth, 7) * (jMonth - 7) + jDay - 1;\n}\n/**\n * Returns the number of days in a specific jalali month.\n */\nfunction getDaysPerMonth(month, year) {\n if (month <= 6) {\n return 31;\n }\n if (month <= 11) {\n return 30;\n }\n if (jalCal(year).leap === 0) {\n return 30;\n }\n return 29;\n}\n\nclass NgbCalendarPersian extends NgbCalendar {\n getDaysPerWeek() { return 7; }\n getMonths() { return [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]; }\n getWeeksPerMonth() { return 6; }\n getNext(date, period = 'd', number = 1) {\n date = new NgbDate(date.year, date.month, date.day);\n switch (period) {\n case 'y':\n date = setJalaliYear(date, date.year + number);\n date.month = 1;\n date.day = 1;\n return date;\n case 'm':\n date = setJalaliMonth(date, date.month + number);\n date.day = 1;\n return date;\n case 'd':\n return setJalaliDay(date, date.day + number);\n default:\n return date;\n }\n }\n getPrev(date, period = 'd', number = 1) { return this.getNext(date, period, -number); }\n getWeekday(date) {\n const day = toGregorian$2(date).getDay();\n // in JS Date Sun=0, in ISO 8601 Sun=7\n return day === 0 ? 7 : day;\n }\n getWeekNumber(week, firstDayOfWeek) {\n // in JS Date Sun=0, in ISO 8601 Sun=7\n if (firstDayOfWeek === 7) {\n firstDayOfWeek = 0;\n }\n const thursdayIndex = (4 + 7 - firstDayOfWeek) % 7;\n const date = week[thursdayIndex];\n const jsDate = toGregorian$2(date);\n jsDate.setDate(jsDate.getDate() + 4 - (jsDate.getDay() || 7)); // Thursday\n const time = jsDate.getTime();\n const startDate = toGregorian$2(new NgbDate(date.year, 1, 1));\n return Math.floor(Math.round((time - startDate.getTime()) / 86400000) / 7) + 1;\n }\n getToday() { return fromGregorian$2(new Date()); }\n isValid(date) {\n return date != null && isInteger(date.year) && isInteger(date.month) && isInteger(date.day) &&\n !isNaN(toGregorian$2(date).getTime());\n }\n}\nNgbCalendarPersian.ɵfac = function NgbCalendarPersian_Factory(t) { return ɵNgbCalendarPersian_BaseFactory(t || NgbCalendarPersian); };\nNgbCalendarPersian.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: NgbCalendarPersian, factory: NgbCalendarPersian.ɵfac });\nconst ɵNgbCalendarPersian_BaseFactory = /*@__PURE__*/ ɵngcc0.ɵɵgetInheritedFactory(NgbCalendarPersian);\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbCalendarPersian, [{\n type: Injectable\n }], null, null); })();\n\nconst PARTS_PER_HOUR = 1080;\nconst PARTS_PER_DAY = 24 * PARTS_PER_HOUR;\nconst PARTS_FRACTIONAL_MONTH = 12 * PARTS_PER_HOUR + 793;\nconst PARTS_PER_MONTH = 29 * PARTS_PER_DAY + PARTS_FRACTIONAL_MONTH;\nconst BAHARAD = 11 * PARTS_PER_HOUR + 204;\nconst HEBREW_DAY_ON_JAN_1_1970 = 2092591;\nconst GREGORIAN_EPOCH = 1721425.5;\nfunction isGregorianLeapYear(year) {\n return year % 4 === 0 && year % 100 !== 0 || year % 400 === 0;\n}\nfunction numberOfFirstDayInYear(year) {\n let monthsBeforeYear = Math.floor((235 * year - 234) / 19);\n let fractionalMonthsBeforeYear = monthsBeforeYear * PARTS_FRACTIONAL_MONTH + BAHARAD;\n let dayNumber = monthsBeforeYear * 29 + Math.floor(fractionalMonthsBeforeYear / PARTS_PER_DAY);\n let timeOfDay = fractionalMonthsBeforeYear % PARTS_PER_DAY;\n let dayOfWeek = dayNumber % 7; // 0 == Monday\n if (dayOfWeek === 2 || dayOfWeek === 4 || dayOfWeek === 6) {\n dayNumber++;\n dayOfWeek = dayNumber % 7;\n }\n if (dayOfWeek === 1 && timeOfDay > 15 * PARTS_PER_HOUR + 204 && !isHebrewLeapYear(year)) {\n dayNumber += 2;\n }\n else if (dayOfWeek === 0 && timeOfDay > 21 * PARTS_PER_HOUR + 589 && isHebrewLeapYear(year - 1)) {\n dayNumber++;\n }\n return dayNumber;\n}\nfunction getDaysInGregorianMonth(month, year) {\n let days = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\n if (isGregorianLeapYear(year)) {\n days[1]++;\n }\n return days[month - 1];\n}\nfunction getHebrewMonths(year) {\n return isHebrewLeapYear(year) ? 13 : 12;\n}\n/**\n * Returns the number of days in a specific Hebrew year.\n * `year` is any Hebrew year.\n */\nfunction getDaysInHebrewYear(year) {\n return numberOfFirstDayInYear(year + 1) - numberOfFirstDayInYear(year);\n}\nfunction isHebrewLeapYear(year) {\n if (year != null) {\n let b = (year * 12 + 17) % 19;\n return b >= ((b < 0) ? -7 : 12);\n }\n return false;\n}\n/**\n * Returns the number of days in a specific Hebrew month.\n * `month` is 1 for Nisan, 2 for Iyar etc. Note: Hebrew leap year contains 13 months.\n * `year` is any Hebrew year.\n */\nfunction getDaysInHebrewMonth(month, year) {\n let yearLength = numberOfFirstDayInYear(year + 1) - numberOfFirstDayInYear(year);\n let yearType = (yearLength <= 380 ? yearLength : (yearLength - 30)) - 353;\n let leapYear = isHebrewLeapYear(year);\n let daysInMonth = leapYear ? [30, 29, 29, 29, 30, 30, 29, 30, 29, 30, 29, 30, 29] :\n [30, 29, 29, 29, 30, 29, 30, 29, 30, 29, 30, 29];\n if (yearType > 0) {\n daysInMonth[2]++; // Kislev gets an extra day in normal or complete years.\n }\n if (yearType > 1) {\n daysInMonth[1]++; // Heshvan gets an extra day in complete years only.\n }\n return daysInMonth[month - 1];\n}\nfunction getDayNumberInHebrewYear(date) {\n let numberOfDay = 0;\n for (let i = 1; i < date.month; i++) {\n numberOfDay += getDaysInHebrewMonth(i, date.year);\n }\n return numberOfDay + date.day;\n}\nfunction setHebrewMonth(date, val) {\n let after = val >= 0;\n if (!after) {\n val = -val;\n }\n while (val > 0) {\n if (after) {\n if (val > getHebrewMonths(date.year) - date.month) {\n val -= getHebrewMonths(date.year) - date.month + 1;\n date.year++;\n date.month = 1;\n }\n else {\n date.month += val;\n val = 0;\n }\n }\n else {\n if (val >= date.month) {\n date.year--;\n val -= date.month;\n date.month = getHebrewMonths(date.year);\n }\n else {\n date.month -= val;\n val = 0;\n }\n }\n }\n return date;\n}\nfunction setHebrewDay(date, val) {\n let after = val >= 0;\n if (!after) {\n val = -val;\n }\n while (val > 0) {\n if (after) {\n if (val > getDaysInHebrewYear(date.year) - getDayNumberInHebrewYear(date)) {\n val -= getDaysInHebrewYear(date.year) - getDayNumberInHebrewYear(date) + 1;\n date.year++;\n date.month = 1;\n date.day = 1;\n }\n else if (val > getDaysInHebrewMonth(date.month, date.year) - date.day) {\n val -= getDaysInHebrewMonth(date.month, date.year) - date.day + 1;\n date.month++;\n date.day = 1;\n }\n else {\n date.day += val;\n val = 0;\n }\n }\n else {\n if (val >= date.day) {\n val -= date.day;\n date.month--;\n if (date.month === 0) {\n date.year--;\n date.month = getHebrewMonths(date.year);\n }\n date.day = getDaysInHebrewMonth(date.month, date.year);\n }\n else {\n date.day -= val;\n val = 0;\n }\n }\n }\n return date;\n}\n/**\n * Returns the equivalent Hebrew date value for a give input Gregorian date.\n * `gdate` is a JS Date to be converted to Hebrew date.\n */\nfunction fromGregorian$1(gdate) {\n const date = new Date(gdate);\n const gYear = date.getFullYear(), gMonth = date.getMonth(), gDay = date.getDate();\n let julianDay = GREGORIAN_EPOCH - 1 + 365 * (gYear - 1) + Math.floor((gYear - 1) / 4) -\n Math.floor((gYear - 1) / 100) + Math.floor((gYear - 1) / 400) +\n Math.floor((367 * (gMonth + 1) - 362) / 12 + (gMonth + 1 <= 2 ? 0 : isGregorianLeapYear(gYear) ? -1 : -2) + gDay);\n julianDay = Math.floor(julianDay + 0.5);\n let daysSinceHebEpoch = julianDay - 347997;\n let monthsSinceHebEpoch = Math.floor(daysSinceHebEpoch * PARTS_PER_DAY / PARTS_PER_MONTH);\n let hYear = Math.floor((monthsSinceHebEpoch * 19 + 234) / 235) + 1;\n let firstDayOfThisYear = numberOfFirstDayInYear(hYear);\n let dayOfYear = daysSinceHebEpoch - firstDayOfThisYear;\n while (dayOfYear < 1) {\n hYear--;\n firstDayOfThisYear = numberOfFirstDayInYear(hYear);\n dayOfYear = daysSinceHebEpoch - firstDayOfThisYear;\n }\n let hMonth = 1;\n let hDay = dayOfYear;\n while (hDay > getDaysInHebrewMonth(hMonth, hYear)) {\n hDay -= getDaysInHebrewMonth(hMonth, hYear);\n hMonth++;\n }\n return new NgbDate(hYear, hMonth, hDay);\n}\n/**\n * Returns the equivalent JS date value for a given Hebrew date.\n * `hebrewDate` is an Hebrew date to be converted to Gregorian.\n */\nfunction toGregorian$1(hebrewDate) {\n const hYear = hebrewDate.year;\n const hMonth = hebrewDate.month;\n const hDay = hebrewDate.day;\n let days = numberOfFirstDayInYear(hYear);\n for (let i = 1; i < hMonth; i++) {\n days += getDaysInHebrewMonth(i, hYear);\n }\n days += hDay;\n let diffDays = days - HEBREW_DAY_ON_JAN_1_1970;\n let after = diffDays >= 0;\n if (!after) {\n diffDays = -diffDays;\n }\n let gYear = 1970;\n let gMonth = 1;\n let gDay = 1;\n while (diffDays > 0) {\n if (after) {\n if (diffDays >= (isGregorianLeapYear(gYear) ? 366 : 365)) {\n diffDays -= isGregorianLeapYear(gYear) ? 366 : 365;\n gYear++;\n }\n else if (diffDays >= getDaysInGregorianMonth(gMonth, gYear)) {\n diffDays -= getDaysInGregorianMonth(gMonth, gYear);\n gMonth++;\n }\n else {\n gDay += diffDays;\n diffDays = 0;\n }\n }\n else {\n if (diffDays >= (isGregorianLeapYear(gYear - 1) ? 366 : 365)) {\n diffDays -= isGregorianLeapYear(gYear - 1) ? 366 : 365;\n gYear--;\n }\n else {\n if (gMonth > 1) {\n gMonth--;\n }\n else {\n gMonth = 12;\n gYear--;\n }\n if (diffDays >= getDaysInGregorianMonth(gMonth, gYear)) {\n diffDays -= getDaysInGregorianMonth(gMonth, gYear);\n }\n else {\n gDay = getDaysInGregorianMonth(gMonth, gYear) - diffDays + 1;\n diffDays = 0;\n }\n }\n }\n }\n return new Date(gYear, gMonth - 1, gDay);\n}\nfunction hebrewNumerals(numerals) {\n if (!numerals) {\n return '';\n }\n const hArray0_9 = ['', '\\u05d0', '\\u05d1', '\\u05d2', '\\u05d3', '\\u05d4', '\\u05d5', '\\u05d6', '\\u05d7', '\\u05d8'];\n const hArray10_19 = [\n '\\u05d9', '\\u05d9\\u05d0', '\\u05d9\\u05d1', '\\u05d9\\u05d2', '\\u05d9\\u05d3', '\\u05d8\\u05d5', '\\u05d8\\u05d6',\n '\\u05d9\\u05d6', '\\u05d9\\u05d7', '\\u05d9\\u05d8'\n ];\n const hArray20_90 = ['', '', '\\u05db', '\\u05dc', '\\u05de', '\\u05e0', '\\u05e1', '\\u05e2', '\\u05e4', '\\u05e6'];\n const hArray100_900 = [\n '', '\\u05e7', '\\u05e8', '\\u05e9', '\\u05ea', '\\u05ea\\u05e7', '\\u05ea\\u05e8', '\\u05ea\\u05e9', '\\u05ea\\u05ea',\n '\\u05ea\\u05ea\\u05e7'\n ];\n const hArray1000_9000 = [\n '', '\\u05d0', '\\u05d1', '\\u05d1\\u05d0', '\\u05d1\\u05d1', '\\u05d4', '\\u05d4\\u05d0', '\\u05d4\\u05d1',\n '\\u05d4\\u05d1\\u05d0', '\\u05d4\\u05d1\\u05d1'\n ];\n const geresh = '\\u05f3', gershaim = '\\u05f4';\n let mem = 0;\n let result = [];\n let step = 0;\n while (numerals > 0) {\n let m = numerals % 10;\n if (step === 0) {\n mem = m;\n }\n else if (step === 1) {\n if (m !== 1) {\n result.unshift(hArray20_90[m], hArray0_9[mem]);\n }\n else {\n result.unshift(hArray10_19[mem]);\n }\n }\n else if (step === 2) {\n result.unshift(hArray100_900[m]);\n }\n else {\n if (m !== 5) {\n result.unshift(hArray1000_9000[m], geresh, ' ');\n }\n break;\n }\n numerals = Math.floor(numerals / 10);\n if (step === 0 && numerals === 0) {\n result.unshift(hArray0_9[m]);\n }\n step++;\n }\n result = result.join('').split('');\n if (result.length === 1) {\n result.push(geresh);\n }\n else if (result.length > 1) {\n result.splice(result.length - 1, 0, gershaim);\n }\n return result.join('');\n}\n\n/**\n * @since 3.2.0\n */\nclass NgbCalendarHebrew extends NgbCalendar {\n getDaysPerWeek() { return 7; }\n getMonths(year) {\n if (year && isHebrewLeapYear(year)) {\n return [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13];\n }\n else {\n return [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12];\n }\n }\n getWeeksPerMonth() { return 6; }\n isValid(date) {\n if (date != null) {\n let b = isNumber(date.year) && isNumber(date.month) && isNumber(date.day);\n b = b && date.month > 0 && date.month <= (isHebrewLeapYear(date.year) ? 13 : 12);\n b = b && date.day > 0 && date.day <= getDaysInHebrewMonth(date.month, date.year);\n return b && !isNaN(toGregorian$1(date).getTime());\n }\n return false;\n }\n getNext(date, period = 'd', number = 1) {\n date = new NgbDate(date.year, date.month, date.day);\n switch (period) {\n case 'y':\n date.year += number;\n date.month = 1;\n date.day = 1;\n return date;\n case 'm':\n date = setHebrewMonth(date, number);\n date.day = 1;\n return date;\n case 'd':\n return setHebrewDay(date, number);\n default:\n return date;\n }\n }\n getPrev(date, period = 'd', number = 1) { return this.getNext(date, period, -number); }\n getWeekday(date) {\n const day = toGregorian$1(date).getDay();\n // in JS Date Sun=0, in ISO 8601 Sun=7\n return day === 0 ? 7 : day;\n }\n getWeekNumber(week, firstDayOfWeek) {\n const date = week[week.length - 1];\n return Math.ceil(getDayNumberInHebrewYear(date) / 7);\n }\n getToday() { return fromGregorian$1(new Date()); }\n /**\n * @since 3.4.0\n */\n toGregorian(date) { return fromJSDate(toGregorian$1(date)); }\n /**\n * @since 3.4.0\n */\n fromGregorian(date) { return fromGregorian$1(toJSDate(date)); }\n}\nNgbCalendarHebrew.ɵfac = function NgbCalendarHebrew_Factory(t) { return ɵNgbCalendarHebrew_BaseFactory(t || NgbCalendarHebrew); };\nNgbCalendarHebrew.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: NgbCalendarHebrew, factory: NgbCalendarHebrew.ɵfac });\nconst ɵNgbCalendarHebrew_BaseFactory = /*@__PURE__*/ ɵngcc0.ɵɵgetInheritedFactory(NgbCalendarHebrew);\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbCalendarHebrew, [{\n type: Injectable\n }], null, null); })();\n\nconst WEEKDAYS = ['שני', 'שלישי', 'רביעי', 'חמישי', 'שישי', 'שבת', 'ראשון'];\nconst MONTHS = ['תשרי', 'חשון', 'כסלו', 'טבת', 'שבט', 'אדר', 'ניסן', 'אייר', 'סיון', 'תמוז', 'אב', 'אלול'];\nconst MONTHS_LEAP = ['תשרי', 'חשון', 'כסלו', 'טבת', 'שבט', 'אדר א׳', 'אדר ב׳', 'ניסן', 'אייר', 'סיון', 'תמוז', 'אב', 'אלול'];\n/**\n * @since 3.2.0\n */\nclass NgbDatepickerI18nHebrew extends NgbDatepickerI18n {\n getMonthShortName(month, year) { return this.getMonthFullName(month, year); }\n getMonthFullName(month, year) {\n return isHebrewLeapYear(year) ? MONTHS_LEAP[month - 1] || '' : MONTHS[month - 1] || '';\n }\n getWeekdayLabel(weekday, width) { return WEEKDAYS[weekday - 1] || ''; }\n getDayAriaLabel(date) {\n return `${hebrewNumerals(date.day)} ${this.getMonthFullName(date.month, date.year)} ${hebrewNumerals(date.year)}`;\n }\n getDayNumerals(date) { return hebrewNumerals(date.day); }\n getWeekNumerals(weekNumber) { return hebrewNumerals(weekNumber); }\n getYearNumerals(year) { return hebrewNumerals(year); }\n}\nNgbDatepickerI18nHebrew.ɵfac = function NgbDatepickerI18nHebrew_Factory(t) { return ɵNgbDatepickerI18nHebrew_BaseFactory(t || NgbDatepickerI18nHebrew); };\nNgbDatepickerI18nHebrew.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: NgbDatepickerI18nHebrew, factory: NgbDatepickerI18nHebrew.ɵfac });\nconst ɵNgbDatepickerI18nHebrew_BaseFactory = /*@__PURE__*/ ɵngcc0.ɵɵgetInheritedFactory(NgbDatepickerI18nHebrew);\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDatepickerI18nHebrew, [{\n type: Injectable\n }], null, null); })();\n\n/**\n * Returns the equivalent JS date value for a give input Buddhist date.\n * `date` is an Buddhist date to be converted to Gregorian.\n */\nfunction toGregorian(date) {\n return new Date(date.year - 543, date.month - 1, date.day);\n}\n/**\n * Returns the equivalent Buddhist date value for a give input Gregorian date.\n * `gdate` is a JS Date to be converted to Buddhist.\n * utc to local\n */\nfunction fromGregorian(gdate) {\n return new NgbDate(gdate.getFullYear() + 543, gdate.getMonth() + 1, gdate.getDate());\n}\n\n/**\n * @since 9.1.0\n */\nclass NgbCalendarBuddhist extends NgbCalendarGregorian {\n getToday() { return fromGregorian(new Date()); }\n getNext(date, period = 'd', number = 1) {\n let jsDate = toGregorian(date);\n let checkMonth = true;\n let expectedMonth = jsDate.getMonth();\n switch (period) {\n case 'y':\n jsDate.setFullYear(jsDate.getFullYear() + number);\n break;\n case 'm':\n expectedMonth += number;\n jsDate.setMonth(expectedMonth);\n expectedMonth = expectedMonth % 12;\n if (expectedMonth < 0) {\n expectedMonth = expectedMonth + 12;\n }\n break;\n case 'd':\n jsDate.setDate(jsDate.getDate() + number);\n checkMonth = false;\n break;\n default:\n return date;\n }\n if (checkMonth && jsDate.getMonth() !== expectedMonth) {\n // this means the destination month has less days than the initial month\n // let's go back to the end of the previous month:\n jsDate.setDate(0);\n }\n return fromGregorian(jsDate);\n }\n getPrev(date, period = 'd', number = 1) { return this.getNext(date, period, -number); }\n getWeekday(date) {\n let jsDate = toGregorian(date);\n let day = jsDate.getDay();\n // in JS Date Sun=0, in ISO 8601 Sun=7\n return day === 0 ? 7 : day;\n }\n getWeekNumber(week, firstDayOfWeek) {\n // in JS Date Sun=0, in ISO 8601 Sun=7\n if (firstDayOfWeek === 7) {\n firstDayOfWeek = 0;\n }\n const thursdayIndex = (4 + 7 - firstDayOfWeek) % 7;\n let date = week[thursdayIndex];\n const jsDate = toGregorian(date);\n jsDate.setDate(jsDate.getDate() + 4 - (jsDate.getDay() || 7)); // Thursday\n const time = jsDate.getTime();\n jsDate.setMonth(0); // Compare with Jan 1\n jsDate.setDate(1);\n return Math.floor(Math.round((time - jsDate.getTime()) / 86400000) / 7) + 1;\n }\n isValid(date) {\n if (!date || !isInteger(date.year) || !isInteger(date.month) || !isInteger(date.day)) {\n return false;\n }\n // year 0 doesn't exist in Gregorian calendar\n if (date.year === 0) {\n return false;\n }\n const jsDate = toGregorian(date);\n return !isNaN(jsDate.getTime()) && jsDate.getFullYear() === date.year - 543 &&\n jsDate.getMonth() + 1 === date.month && jsDate.getDate() === date.day;\n }\n}\nNgbCalendarBuddhist.ɵfac = function NgbCalendarBuddhist_Factory(t) { return ɵNgbCalendarBuddhist_BaseFactory(t || NgbCalendarBuddhist); };\nNgbCalendarBuddhist.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: NgbCalendarBuddhist, factory: NgbCalendarBuddhist.ɵfac });\nconst ɵNgbCalendarBuddhist_BaseFactory = /*@__PURE__*/ ɵngcc0.ɵɵgetInheritedFactory(NgbCalendarBuddhist);\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbCalendarBuddhist, [{\n type: Injectable\n }], null, null); })();\n\n/**\n * [`NgbDateAdapter`](#/components/datepicker/api#NgbDateAdapter) implementation that uses\n * native javascript dates as a user date model.\n */\nclass NgbDateNativeAdapter extends NgbDateAdapter {\n /**\n * Converts a native `Date` to a `NgbDateStruct`.\n */\n fromModel(date) {\n return (date instanceof Date && !isNaN(date.getTime())) ? this._fromNativeDate(date) : null;\n }\n /**\n * Converts a `NgbDateStruct` to a native `Date`.\n */\n toModel(date) {\n return date && isInteger(date.year) && isInteger(date.month) && isInteger(date.day) ? this._toNativeDate(date) :\n null;\n }\n _fromNativeDate(date) {\n return { year: date.getFullYear(), month: date.getMonth() + 1, day: date.getDate() };\n }\n _toNativeDate(date) {\n const jsDate = new Date(date.year, date.month - 1, date.day, 12);\n // avoid 30 -> 1930 conversion\n jsDate.setFullYear(date.year);\n return jsDate;\n }\n}\nNgbDateNativeAdapter.ɵfac = function NgbDateNativeAdapter_Factory(t) { return ɵNgbDateNativeAdapter_BaseFactory(t || NgbDateNativeAdapter); };\nNgbDateNativeAdapter.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: NgbDateNativeAdapter, factory: NgbDateNativeAdapter.ɵfac });\nconst ɵNgbDateNativeAdapter_BaseFactory = /*@__PURE__*/ ɵngcc0.ɵɵgetInheritedFactory(NgbDateNativeAdapter);\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDateNativeAdapter, [{\n type: Injectable\n }], null, null); })();\n\n/**\n * Same as [`NgbDateNativeAdapter`](#/components/datepicker/api#NgbDateNativeAdapter), but with UTC dates.\n *\n * @since 3.2.0\n */\nclass NgbDateNativeUTCAdapter extends NgbDateNativeAdapter {\n _fromNativeDate(date) {\n return { year: date.getUTCFullYear(), month: date.getUTCMonth() + 1, day: date.getUTCDate() };\n }\n _toNativeDate(date) {\n const jsDate = new Date(Date.UTC(date.year, date.month - 1, date.day));\n // avoid 30 -> 1930 conversion\n jsDate.setUTCFullYear(date.year);\n return jsDate;\n }\n}\nNgbDateNativeUTCAdapter.ɵfac = function NgbDateNativeUTCAdapter_Factory(t) { return ɵNgbDateNativeUTCAdapter_BaseFactory(t || NgbDateNativeUTCAdapter); };\nNgbDateNativeUTCAdapter.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: NgbDateNativeUTCAdapter, factory: NgbDateNativeUTCAdapter.ɵfac });\nconst ɵNgbDateNativeUTCAdapter_BaseFactory = /*@__PURE__*/ ɵngcc0.ɵɵgetInheritedFactory(NgbDateNativeUTCAdapter);\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDateNativeUTCAdapter, [{\n type: Injectable\n }], null, null); })();\n\nclass NgbDatepickerModule {\n}\nNgbDatepickerModule.ɵfac = function NgbDatepickerModule_Factory(t) { return new (t || NgbDatepickerModule)(); };\nNgbDatepickerModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: NgbDatepickerModule });\nNgbDatepickerModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ imports: [[CommonModule, FormsModule]] });\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(NgbDatepickerModule, { declarations: function () { return [NgbDatepicker, NgbDatepickerContent, NgbDatepickerMonth, NgbDatepickerNavigation, NgbDatepickerNavigationSelect, NgbDatepickerDayView, NgbInputDatepicker]; }, imports: function () { return [CommonModule, FormsModule]; }, exports: function () { return [NgbDatepicker, NgbDatepickerContent, NgbInputDatepicker, NgbDatepickerMonth]; } }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDatepickerModule, [{\n type: NgModule,\n args: [{\n declarations: [\n NgbDatepicker, NgbDatepickerContent, NgbDatepickerMonth, NgbDatepickerNavigation, NgbDatepickerNavigationSelect,\n NgbDatepickerDayView, NgbInputDatepicker\n ],\n exports: [NgbDatepicker, NgbDatepickerContent, NgbInputDatepicker, NgbDatepickerMonth],\n imports: [CommonModule, FormsModule],\n entryComponents: [NgbDatepicker]\n }]\n }], null, null); })();\n\n/**\n * A configuration service for the [`NgbDropdown`](#/components/dropdown/api#NgbDropdown) component.\n *\n * You can inject this service, typically in your root component, and customize the values of its properties in\n * order to provide default values for all the dropdowns used in the application.\n */\nclass NgbDropdownConfig {\n constructor() {\n this.autoClose = true;\n this.placement = ['bottom-left', 'bottom-right', 'top-left', 'top-right'];\n }\n}\nNgbDropdownConfig.ɵfac = function NgbDropdownConfig_Factory(t) { return new (t || NgbDropdownConfig)(); };\nNgbDropdownConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgbDropdownConfig_Factory() { return new NgbDropdownConfig(); }, token: NgbDropdownConfig, providedIn: \"root\" });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDropdownConfig, [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], function () { return []; }, null); })();\n\nclass NgbNavbar {\n}\nNgbNavbar.ɵfac = function NgbNavbar_Factory(t) { return new (t || NgbNavbar)(); };\nNgbNavbar.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbNavbar, selectors: [[\"\", 8, \"navbar\"]] });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbNavbar, [{\n type: Directive,\n args: [{ selector: '.navbar' }]\n }], null, null); })();\n/**\n * A directive you should put on a dropdown item to enable keyboard navigation.\n * Arrow keys will move focus between items marked with this directive.\n *\n * @since 4.1.0\n */\nclass NgbDropdownItem {\n constructor(elementRef) {\n this.elementRef = elementRef;\n this._disabled = false;\n }\n set disabled(value) {\n this._disabled = value === '' || value === true; // accept an empty attribute as true\n }\n get disabled() { return this._disabled; }\n}\nNgbDropdownItem.ɵfac = function NgbDropdownItem_Factory(t) { return new (t || NgbDropdownItem)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef)); };\nNgbDropdownItem.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbDropdownItem, selectors: [[\"\", \"ngbDropdownItem\", \"\"]], hostAttrs: [1, \"dropdown-item\"], hostVars: 2, hostBindings: function NgbDropdownItem_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵclassProp(\"disabled\", ctx.disabled);\n } }, inputs: { disabled: \"disabled\" } });\nNgbDropdownItem.ctorParameters = () => [\n { type: ElementRef }\n];\nNgbDropdownItem.propDecorators = {\n disabled: [{ type: Input }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDropdownItem, [{\n type: Directive,\n args: [{ selector: '[ngbDropdownItem]', host: { 'class': 'dropdown-item', '[class.disabled]': 'disabled' } }]\n }], function () { return [{ type: ɵngcc0.ElementRef }]; }, { disabled: [{\n type: Input\n }] }); })();\n/**\n * A directive that wraps dropdown menu content and dropdown items.\n */\nclass NgbDropdownMenu {\n constructor(dropdown, _elementRef) {\n this.dropdown = dropdown;\n this.placement = 'bottom';\n this.isOpen = false;\n this.nativeElement = _elementRef.nativeElement;\n }\n}\nNgbDropdownMenu.ɵfac = function NgbDropdownMenu_Factory(t) { return new (t || NgbDropdownMenu)(ɵngcc0.ɵɵdirectiveInject(forwardRef(() => NgbDropdown)), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef)); };\nNgbDropdownMenu.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbDropdownMenu, selectors: [[\"\", \"ngbDropdownMenu\", \"\"]], contentQueries: function NgbDropdownMenu_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {\n ɵngcc0.ɵɵcontentQuery(dirIndex, NgbDropdownItem, 0);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.menuItems = _t);\n } }, hostVars: 5, hostBindings: function NgbDropdownMenu_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"keydown.ArrowUp\", function NgbDropdownMenu_keydown_ArrowUp_HostBindingHandler($event) { return ctx.dropdown.onKeyDown($event); })(\"keydown.ArrowDown\", function NgbDropdownMenu_keydown_ArrowDown_HostBindingHandler($event) { return ctx.dropdown.onKeyDown($event); })(\"keydown.Home\", function NgbDropdownMenu_keydown_Home_HostBindingHandler($event) { return ctx.dropdown.onKeyDown($event); })(\"keydown.End\", function NgbDropdownMenu_keydown_End_HostBindingHandler($event) { return ctx.dropdown.onKeyDown($event); })(\"keydown.Enter\", function NgbDropdownMenu_keydown_Enter_HostBindingHandler($event) { return ctx.dropdown.onKeyDown($event); })(\"keydown.Space\", function NgbDropdownMenu_keydown_Space_HostBindingHandler($event) { return ctx.dropdown.onKeyDown($event); })(\"keydown.Tab\", function NgbDropdownMenu_keydown_Tab_HostBindingHandler($event) { return ctx.dropdown.onKeyDown($event); })(\"keydown.Shift.Tab\", function NgbDropdownMenu_keydown_Shift_Tab_HostBindingHandler($event) { return ctx.dropdown.onKeyDown($event); });\n } if (rf & 2) {\n ɵngcc0.ɵɵattribute(\"x-placement\", ctx.placement);\n ɵngcc0.ɵɵclassProp(\"dropdown-menu\", true)(\"show\", ctx.dropdown.isOpen());\n } } });\nNgbDropdownMenu.ctorParameters = () => [\n { type: undefined, decorators: [{ type: Inject, args: [forwardRef(() => NgbDropdown),] }] },\n { type: ElementRef }\n];\nNgbDropdownMenu.propDecorators = {\n menuItems: [{ type: ContentChildren, args: [NgbDropdownItem,] }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDropdownMenu, [{\n type: Directive,\n args: [{\n selector: '[ngbDropdownMenu]',\n host: {\n '[class.dropdown-menu]': 'true',\n '[class.show]': 'dropdown.isOpen()',\n '[attr.x-placement]': 'placement',\n '(keydown.ArrowUp)': 'dropdown.onKeyDown($event)',\n '(keydown.ArrowDown)': 'dropdown.onKeyDown($event)',\n '(keydown.Home)': 'dropdown.onKeyDown($event)',\n '(keydown.End)': 'dropdown.onKeyDown($event)',\n '(keydown.Enter)': 'dropdown.onKeyDown($event)',\n '(keydown.Space)': 'dropdown.onKeyDown($event)',\n '(keydown.Tab)': 'dropdown.onKeyDown($event)',\n '(keydown.Shift.Tab)': 'dropdown.onKeyDown($event)'\n }\n }]\n }], function () { return [{ type: undefined, decorators: [{\n type: Inject,\n args: [forwardRef(() => NgbDropdown)]\n }] }, { type: ɵngcc0.ElementRef }]; }, { menuItems: [{\n type: ContentChildren,\n args: [NgbDropdownItem]\n }] }); })();\n/**\n * A directive to mark an element to which dropdown menu will be anchored.\n *\n * This is a simple version of the `NgbDropdownToggle` directive.\n * It plays the same role, but doesn't listen to click events to toggle dropdown menu thus enabling support\n * for events other than click.\n *\n * @since 1.1.0\n */\nclass NgbDropdownAnchor {\n constructor(dropdown, _elementRef) {\n this.dropdown = dropdown;\n this.nativeElement = _elementRef.nativeElement;\n }\n}\nNgbDropdownAnchor.ɵfac = function NgbDropdownAnchor_Factory(t) { return new (t || NgbDropdownAnchor)(ɵngcc0.ɵɵdirectiveInject(forwardRef(() => NgbDropdown)), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef)); };\nNgbDropdownAnchor.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbDropdownAnchor, selectors: [[\"\", \"ngbDropdownAnchor\", \"\"]], hostAttrs: [1, \"dropdown-toggle\"], hostVars: 1, hostBindings: function NgbDropdownAnchor_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵattribute(\"aria-expanded\", ctx.dropdown.isOpen());\n } } });\nNgbDropdownAnchor.ctorParameters = () => [\n { type: undefined, decorators: [{ type: Inject, args: [forwardRef(() => NgbDropdown),] }] },\n { type: ElementRef }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDropdownAnchor, [{\n type: Directive,\n args: [{ selector: '[ngbDropdownAnchor]', host: { 'class': 'dropdown-toggle', '[attr.aria-expanded]': 'dropdown.isOpen()' } }]\n }], function () { return [{ type: undefined, decorators: [{\n type: Inject,\n args: [forwardRef(() => NgbDropdown)]\n }] }, { type: ɵngcc0.ElementRef }]; }, null); })();\n/**\n * A directive to mark an element that will toggle dropdown via the `click` event.\n *\n * You can also use `NgbDropdownAnchor` as an alternative.\n */\nclass NgbDropdownToggle extends NgbDropdownAnchor {\n constructor(dropdown, elementRef) {\n super(dropdown, elementRef);\n }\n}\nNgbDropdownToggle.ɵfac = function NgbDropdownToggle_Factory(t) { return new (t || NgbDropdownToggle)(ɵngcc0.ɵɵdirectiveInject(forwardRef(() => NgbDropdown)), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef)); };\nNgbDropdownToggle.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbDropdownToggle, selectors: [[\"\", \"ngbDropdownToggle\", \"\"]], hostAttrs: [1, \"dropdown-toggle\"], hostVars: 1, hostBindings: function NgbDropdownToggle_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"click\", function NgbDropdownToggle_click_HostBindingHandler() { return ctx.dropdown.toggle(); })(\"keydown.ArrowUp\", function NgbDropdownToggle_keydown_ArrowUp_HostBindingHandler($event) { return ctx.dropdown.onKeyDown($event); })(\"keydown.ArrowDown\", function NgbDropdownToggle_keydown_ArrowDown_HostBindingHandler($event) { return ctx.dropdown.onKeyDown($event); })(\"keydown.Home\", function NgbDropdownToggle_keydown_Home_HostBindingHandler($event) { return ctx.dropdown.onKeyDown($event); })(\"keydown.End\", function NgbDropdownToggle_keydown_End_HostBindingHandler($event) { return ctx.dropdown.onKeyDown($event); })(\"keydown.Tab\", function NgbDropdownToggle_keydown_Tab_HostBindingHandler($event) { return ctx.dropdown.onKeyDown($event); })(\"keydown.Shift.Tab\", function NgbDropdownToggle_keydown_Shift_Tab_HostBindingHandler($event) { return ctx.dropdown.onKeyDown($event); });\n } if (rf & 2) {\n ɵngcc0.ɵɵattribute(\"aria-expanded\", ctx.dropdown.isOpen());\n } }, features: [ɵngcc0.ɵɵProvidersFeature([{ provide: NgbDropdownAnchor, useExisting: forwardRef(() => NgbDropdownToggle) }]), ɵngcc0.ɵɵInheritDefinitionFeature] });\nNgbDropdownToggle.ctorParameters = () => [\n { type: undefined, decorators: [{ type: Inject, args: [forwardRef(() => NgbDropdown),] }] },\n { type: ElementRef }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDropdownToggle, [{\n type: Directive,\n args: [{\n selector: '[ngbDropdownToggle]',\n host: {\n 'class': 'dropdown-toggle',\n '[attr.aria-expanded]': 'dropdown.isOpen()',\n '(click)': 'dropdown.toggle()',\n '(keydown.ArrowUp)': 'dropdown.onKeyDown($event)',\n '(keydown.ArrowDown)': 'dropdown.onKeyDown($event)',\n '(keydown.Home)': 'dropdown.onKeyDown($event)',\n '(keydown.End)': 'dropdown.onKeyDown($event)',\n '(keydown.Tab)': 'dropdown.onKeyDown($event)',\n '(keydown.Shift.Tab)': 'dropdown.onKeyDown($event)'\n },\n providers: [{ provide: NgbDropdownAnchor, useExisting: forwardRef(() => NgbDropdownToggle) }]\n }]\n }], function () { return [{ type: undefined, decorators: [{\n type: Inject,\n args: [forwardRef(() => NgbDropdown)]\n }] }, { type: ɵngcc0.ElementRef }]; }, null); })();\n/**\n * A directive that provides contextual overlays for displaying lists of links and more.\n */\nclass NgbDropdown {\n constructor(_changeDetector, config, _document, _ngZone, _elementRef, _renderer, ngbNavbar) {\n this._changeDetector = _changeDetector;\n this._document = _document;\n this._ngZone = _ngZone;\n this._elementRef = _elementRef;\n this._renderer = _renderer;\n this._closed$ = new Subject();\n this._bodyContainer = null;\n /**\n * Defines whether or not the dropdown menu is opened initially.\n */\n this._open = false;\n /**\n * An event fired when the dropdown is opened or closed.\n *\n * The event payload is a `boolean`:\n * * `true` - the dropdown was opened\n * * `false` - the dropdown was closed\n */\n this.openChange = new EventEmitter();\n this.placement = config.placement;\n this.container = config.container;\n this.autoClose = config.autoClose;\n this.display = ngbNavbar ? 'static' : 'dynamic';\n this._zoneSubscription = _ngZone.onStable.subscribe(() => { this._positionMenu(); });\n }\n ngAfterContentInit() {\n this._ngZone.onStable.pipe(take(1)).subscribe(() => {\n this._applyPlacementClasses();\n if (this._open) {\n this._setCloseHandlers();\n }\n });\n }\n ngOnChanges(changes) {\n if (changes.container && this._open) {\n this._applyContainer(this.container);\n }\n if (changes.placement && !changes.placement.isFirstChange) {\n this._applyPlacementClasses();\n }\n if (changes.dropdownClass) {\n const { currentValue, previousValue } = changes.dropdownClass;\n this._applyCustomDropdownClass(currentValue, previousValue);\n }\n }\n /**\n * Checks if the dropdown menu is open.\n */\n isOpen() { return this._open; }\n /**\n * Opens the dropdown menu.\n */\n open() {\n if (!this._open) {\n this._open = true;\n this._applyContainer(this.container);\n this.openChange.emit(true);\n this._setCloseHandlers();\n if (this._anchor) {\n this._anchor.nativeElement.focus();\n }\n }\n }\n _setCloseHandlers() {\n ngbAutoClose(this._ngZone, this._document, this.autoClose, (source) => {\n this.close();\n if (source === 0 /* ESCAPE */) {\n this._anchor.nativeElement.focus();\n }\n }, this._closed$, this._menu ? [this._menu.nativeElement] : [], this._anchor ? [this._anchor.nativeElement] : [], '.dropdown-item,.dropdown-divider');\n }\n /**\n * Closes the dropdown menu.\n */\n close() {\n if (this._open) {\n this._open = false;\n this._resetContainer();\n this._closed$.next();\n this.openChange.emit(false);\n this._changeDetector.markForCheck();\n }\n }\n /**\n * Toggles the dropdown menu.\n */\n toggle() {\n if (this.isOpen()) {\n this.close();\n }\n else {\n this.open();\n }\n }\n ngOnDestroy() {\n this._resetContainer();\n this._closed$.next();\n this._zoneSubscription.unsubscribe();\n }\n onKeyDown(event) {\n // tslint:disable-next-line:deprecation\n const key = event.which;\n const itemElements = this._getMenuElements();\n let position = -1;\n let itemElement = null;\n const isEventFromToggle = this._isEventFromToggle(event);\n if (!isEventFromToggle && itemElements.length) {\n itemElements.forEach((item, index) => {\n if (item.contains(event.target)) {\n itemElement = item;\n }\n if (item === this._document.activeElement) {\n position = index;\n }\n });\n }\n // closing on Enter / Space\n if (key === Key.Space || key === Key.Enter) {\n if (itemElement && (this.autoClose === true || this.autoClose === 'inside')) {\n // Item is either a button or a link, so click will be triggered by the browser on Enter or Space.\n // So we have to register a one-time click handler that will fire after any user defined click handlers\n // to close the dropdown\n fromEvent(itemElement, 'click').pipe(take(1)).subscribe(() => this.close());\n }\n return;\n }\n if (key === Key.Tab) {\n if (event.target && this.isOpen() && this.autoClose) {\n if (this._anchor.nativeElement === event.target) {\n if (this.container === 'body' && !event.shiftKey) {\n /* This case is special: user is using [Tab] from the anchor/toggle.\n User expects the next focusable element in the dropdown menu to get focus.\n But the menu is not a sibling to anchor/toggle, it is at the end of the body.\n Trick is to synchronously focus the menu element, and let the [keydown.Tab] go\n so that browser will focus the proper element (first one focusable in the menu) */\n this._renderer.setAttribute(this._menu.nativeElement, 'tabindex', '0');\n this._menu.nativeElement.focus();\n this._renderer.removeAttribute(this._menu.nativeElement, 'tabindex');\n }\n else if (event.shiftKey) {\n this.close();\n }\n return;\n }\n else if (this.container === 'body') {\n const focusableElements = this._menu.nativeElement.querySelectorAll(FOCUSABLE_ELEMENTS_SELECTOR);\n if (event.shiftKey && event.target === focusableElements[0]) {\n this._anchor.nativeElement.focus();\n event.preventDefault();\n }\n else if (!event.shiftKey && event.target === focusableElements[focusableElements.length - 1]) {\n this._anchor.nativeElement.focus();\n this.close();\n }\n }\n else {\n fromEvent(event.target, 'focusout').pipe(take(1)).subscribe(({ relatedTarget }) => {\n if (!this._elementRef.nativeElement.contains(relatedTarget)) {\n this.close();\n }\n });\n }\n }\n return;\n }\n // opening / navigating\n if (isEventFromToggle || itemElement) {\n this.open();\n if (itemElements.length) {\n switch (key) {\n case Key.ArrowDown:\n position = Math.min(position + 1, itemElements.length - 1);\n break;\n case Key.ArrowUp:\n if (this._isDropup() && position === -1) {\n position = itemElements.length - 1;\n break;\n }\n position = Math.max(position - 1, 0);\n break;\n case Key.Home:\n position = 0;\n break;\n case Key.End:\n position = itemElements.length - 1;\n break;\n }\n itemElements[position].focus();\n }\n event.preventDefault();\n }\n }\n _isDropup() { return this._elementRef.nativeElement.classList.contains('dropup'); }\n _isEventFromToggle(event) {\n return this._anchor.nativeElement.contains(event.target);\n }\n _getMenuElements() {\n const menu = this._menu;\n if (menu == null) {\n return [];\n }\n return menu.menuItems.filter(item => !item.disabled).map(item => item.elementRef.nativeElement);\n }\n _positionMenu() {\n const menu = this._menu;\n if (this.isOpen() && menu) {\n this._applyPlacementClasses(this.display === 'dynamic' ? positionElements(this._anchor.nativeElement, this._bodyContainer || this._menu.nativeElement, this.placement, this.container === 'body') :\n this._getFirstPlacement(this.placement));\n }\n }\n _getFirstPlacement(placement) {\n return Array.isArray(placement) ? placement[0] : placement.split(' ')[0];\n }\n _resetContainer() {\n const renderer = this._renderer;\n if (this._menu) {\n const dropdownElement = this._elementRef.nativeElement;\n const dropdownMenuElement = this._menu.nativeElement;\n renderer.appendChild(dropdownElement, dropdownMenuElement);\n renderer.removeStyle(dropdownMenuElement, 'position');\n renderer.removeStyle(dropdownMenuElement, 'transform');\n }\n if (this._bodyContainer) {\n renderer.removeChild(this._document.body, this._bodyContainer);\n this._bodyContainer = null;\n }\n }\n _applyContainer(container = null) {\n this._resetContainer();\n if (container === 'body') {\n const renderer = this._renderer;\n const dropdownMenuElement = this._menu.nativeElement;\n const bodyContainer = this._bodyContainer = this._bodyContainer || renderer.createElement('div');\n // Override some styles to have the positioning working\n renderer.setStyle(bodyContainer, 'position', 'absolute');\n renderer.setStyle(dropdownMenuElement, 'position', 'static');\n renderer.setStyle(bodyContainer, 'z-index', '1050');\n renderer.appendChild(bodyContainer, dropdownMenuElement);\n renderer.appendChild(this._document.body, bodyContainer);\n }\n this._applyCustomDropdownClass(this.dropdownClass);\n }\n _applyCustomDropdownClass(newClass, oldClass) {\n const targetElement = this.container === 'body' ? this._bodyContainer : this._elementRef.nativeElement;\n if (targetElement) {\n if (oldClass) {\n this._renderer.removeClass(targetElement, oldClass);\n }\n if (newClass) {\n this._renderer.addClass(targetElement, newClass);\n }\n }\n }\n _applyPlacementClasses(placement) {\n const menu = this._menu;\n if (menu) {\n if (!placement) {\n placement = this._getFirstPlacement(this.placement);\n }\n const renderer = this._renderer;\n const dropdownElement = this._elementRef.nativeElement;\n // remove the current placement classes\n renderer.removeClass(dropdownElement, 'dropup');\n renderer.removeClass(dropdownElement, 'dropdown');\n menu.placement = this.display === 'static' ? null : placement;\n /*\n * apply the new placement\n * in case of top use up-arrow or down-arrow otherwise\n */\n const dropdownClass = placement.search('^top') !== -1 ? 'dropup' : 'dropdown';\n renderer.addClass(dropdownElement, dropdownClass);\n const bodyContainer = this._bodyContainer;\n if (bodyContainer) {\n renderer.removeClass(bodyContainer, 'dropup');\n renderer.removeClass(bodyContainer, 'dropdown');\n renderer.addClass(bodyContainer, dropdownClass);\n }\n }\n }\n}\nNgbDropdown.ɵfac = function NgbDropdown_Factory(t) { return new (t || NgbDropdown)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef), ɵngcc0.ɵɵdirectiveInject(NgbDropdownConfig), ɵngcc0.ɵɵdirectiveInject(DOCUMENT), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.NgZone), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2), ɵngcc0.ɵɵdirectiveInject(NgbNavbar, 8)); };\nNgbDropdown.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbDropdown, selectors: [[\"\", \"ngbDropdown\", \"\"]], contentQueries: function NgbDropdown_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {\n ɵngcc0.ɵɵcontentQuery(dirIndex, NgbDropdownMenu, 1);\n ɵngcc0.ɵɵcontentQuery(dirIndex, NgbDropdownAnchor, 1);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx._menu = _t.first);\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx._anchor = _t.first);\n } }, hostVars: 2, hostBindings: function NgbDropdown_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵclassProp(\"show\", ctx.isOpen());\n } }, inputs: { _open: [\"open\", \"_open\"], placement: \"placement\", container: \"container\", autoClose: \"autoClose\", display: \"display\", dropdownClass: \"dropdownClass\" }, outputs: { openChange: \"openChange\" }, exportAs: [\"ngbDropdown\"], features: [ɵngcc0.ɵɵNgOnChangesFeature] });\nNgbDropdown.ctorParameters = () => [\n { type: ChangeDetectorRef },\n { type: NgbDropdownConfig },\n { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] },\n { type: NgZone },\n { type: ElementRef },\n { type: Renderer2 },\n { type: NgbNavbar, decorators: [{ type: Optional }] }\n];\nNgbDropdown.propDecorators = {\n _menu: [{ type: ContentChild, args: [NgbDropdownMenu, { static: false },] }],\n _anchor: [{ type: ContentChild, args: [NgbDropdownAnchor, { static: false },] }],\n autoClose: [{ type: Input }],\n dropdownClass: [{ type: Input }],\n _open: [{ type: Input, args: ['open',] }],\n placement: [{ type: Input }],\n container: [{ type: Input }],\n display: [{ type: Input }],\n openChange: [{ type: Output }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDropdown, [{\n type: Directive,\n args: [{ selector: '[ngbDropdown]', exportAs: 'ngbDropdown', host: { '[class.show]': 'isOpen()' } }]\n }], function () { return [{ type: ɵngcc0.ChangeDetectorRef }, { type: NgbDropdownConfig }, { type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }, { type: ɵngcc0.NgZone }, { type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }, { type: NgbNavbar, decorators: [{\n type: Optional\n }] }]; }, { _open: [{\n type: Input,\n args: ['open']\n }], openChange: [{\n type: Output\n }], placement: [{\n type: Input\n }], container: [{\n type: Input\n }], autoClose: [{\n type: Input\n }], display: [{\n type: Input\n }], _menu: [{\n type: ContentChild,\n args: [NgbDropdownMenu, { static: false }]\n }], _anchor: [{\n type: ContentChild,\n args: [NgbDropdownAnchor, { static: false }]\n }], dropdownClass: [{\n type: Input\n }] }); })();\n\nconst NGB_DROPDOWN_DIRECTIVES = [NgbDropdown, NgbDropdownAnchor, NgbDropdownToggle, NgbDropdownMenu, NgbDropdownItem, NgbNavbar];\nclass NgbDropdownModule {\n}\nNgbDropdownModule.ɵfac = function NgbDropdownModule_Factory(t) { return new (t || NgbDropdownModule)(); };\nNgbDropdownModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: NgbDropdownModule });\nNgbDropdownModule.ɵinj = ɵngcc0.ɵɵdefineInjector({});\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(NgbDropdownModule, { declarations: [NgbDropdown, NgbDropdownAnchor, NgbDropdownToggle, NgbDropdownMenu, NgbDropdownItem, NgbNavbar], exports: [NgbDropdown, NgbDropdownAnchor, NgbDropdownToggle, NgbDropdownMenu, NgbDropdownItem, NgbNavbar] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbDropdownModule, [{\n type: NgModule,\n args: [{ declarations: NGB_DROPDOWN_DIRECTIVES, exports: NGB_DROPDOWN_DIRECTIVES }]\n }], null, null); })();\n\n/**\n * A configuration service for the [`NgbModal`](#/components/modal/api#NgbModal) service.\n *\n * You can inject this service, typically in your root component, and customize the values of its properties in\n * order to provide default values for all modals used in the application.\n*\n* @since 3.1.0\n*/\nclass NgbModalConfig {\n constructor(_ngbConfig) {\n this._ngbConfig = _ngbConfig;\n this.backdrop = true;\n this.keyboard = true;\n }\n get animation() { return (this._animation === undefined) ? this._ngbConfig.animation : this._animation; }\n set animation(animation) { this._animation = animation; }\n}\nNgbModalConfig.ɵfac = function NgbModalConfig_Factory(t) { return new (t || NgbModalConfig)(ɵngcc0.ɵɵinject(NgbConfig)); };\nNgbModalConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgbModalConfig_Factory() { return new NgbModalConfig(i0.ɵɵinject(NgbConfig)); }, token: NgbModalConfig, providedIn: \"root\" });\nNgbModalConfig.ctorParameters = () => [\n { type: NgbConfig }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbModalConfig, [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], function () { return [{ type: NgbConfig }]; }, null); })();\n\nclass ContentRef {\n constructor(nodes, viewRef, componentRef) {\n this.nodes = nodes;\n this.viewRef = viewRef;\n this.componentRef = componentRef;\n }\n}\nclass PopupService {\n constructor(_type, _injector, _viewContainerRef, _renderer, _ngZone, _componentFactoryResolver, _applicationRef) {\n this._type = _type;\n this._injector = _injector;\n this._viewContainerRef = _viewContainerRef;\n this._renderer = _renderer;\n this._ngZone = _ngZone;\n this._componentFactoryResolver = _componentFactoryResolver;\n this._applicationRef = _applicationRef;\n this._windowRef = null;\n this._contentRef = null;\n }\n open(content, context, animation = false) {\n if (!this._windowRef) {\n this._contentRef = this._getContentRef(content, context);\n this._windowRef = this._viewContainerRef.createComponent(this._componentFactoryResolver.resolveComponentFactory(this._type), this._viewContainerRef.length, this._injector, this._contentRef.nodes);\n }\n const { nativeElement } = this._windowRef.location;\n const transition$ = this._ngZone.onStable.pipe(take(1), mergeMap(() => ngbRunTransition(this._ngZone, nativeElement, ({ classList }) => classList.add('show'), { animation, runningTransition: 'continue' })));\n return { windowRef: this._windowRef, transition$ };\n }\n close(animation = false) {\n if (!this._windowRef) {\n return of(undefined);\n }\n return ngbRunTransition(this._ngZone, this._windowRef.location.nativeElement, ({ classList }) => classList.remove('show'), { animation, runningTransition: 'stop' })\n .pipe(tap(() => {\n var _a;\n if (this._windowRef) {\n // this is required because of the container='body' option\n this._viewContainerRef.remove(this._viewContainerRef.indexOf(this._windowRef.hostView));\n this._windowRef = null;\n }\n if ((_a = this._contentRef) === null || _a === void 0 ? void 0 : _a.viewRef) {\n this._applicationRef.detachView(this._contentRef.viewRef);\n this._contentRef.viewRef.destroy();\n this._contentRef = null;\n }\n }));\n }\n _getContentRef(content, context) {\n if (!content) {\n return new ContentRef([]);\n }\n else if (content instanceof TemplateRef) {\n const viewRef = content.createEmbeddedView(context);\n this._applicationRef.attachView(viewRef);\n return new ContentRef([viewRef.rootNodes], viewRef);\n }\n else {\n return new ContentRef([[this._renderer.createText(`${content}`)]]);\n }\n }\n}\n\nconst noop = () => { };\nconst ɵ0$2 = noop;\n/**\n * Utility to handle the scrollbar.\n *\n * It allows to compensate the lack of a vertical scrollbar by adding an\n * equivalent padding on the right of the body, and to remove this compensation.\n */\nclass ScrollBar {\n constructor(_document) {\n this._document = _document;\n }\n /**\n * To be called right before a potential vertical scrollbar would be removed:\n *\n * - if there was a scrollbar, adds some compensation padding to the body\n * to keep the same layout as when the scrollbar is there\n * - if there was none, there is nothing to do\n *\n * @return a callback used to revert the compensation (noop if there was none,\n * otherwise a function removing the padding)\n */\n compensate() {\n const width = this._getWidth();\n return !this._isPresent(width) ? noop : this._adjustBody(width);\n }\n /**\n * Adds a padding of the given width on the right of the body.\n *\n * @return a callback used to revert the padding to its previous value\n */\n _adjustBody(scrollbarWidth) {\n const body = this._document.body;\n const userSetPaddingStyle = body.style.paddingRight;\n const actualPadding = parseFloat(window.getComputedStyle(body)['padding-right']);\n body.style['padding-right'] = `${actualPadding + scrollbarWidth}px`;\n return () => body.style['padding-right'] = userSetPaddingStyle;\n }\n /**\n * Tells whether a scrollbar is currently present on the body.\n *\n * @return true if scrollbar is present, false otherwise\n */\n _isPresent(scrollbarWidth) {\n const rect = this._document.body.getBoundingClientRect();\n const bodyToViewportGap = window.innerWidth - (rect.left + rect.right);\n const uncertainty = 0.1 * scrollbarWidth;\n return bodyToViewportGap >= scrollbarWidth - uncertainty;\n }\n /**\n * Calculates and returns the width of a scrollbar.\n *\n * @return the width of a scrollbar on this page\n */\n _getWidth() {\n const measurer = this._document.createElement('div');\n measurer.className = 'modal-scrollbar-measure';\n const body = this._document.body;\n body.appendChild(measurer);\n const width = measurer.getBoundingClientRect().width - measurer.clientWidth;\n body.removeChild(measurer);\n return width;\n }\n}\nScrollBar.ɵfac = function ScrollBar_Factory(t) { return new (t || ScrollBar)(ɵngcc0.ɵɵinject(DOCUMENT)); };\nScrollBar.ɵprov = i0.ɵɵdefineInjectable({ factory: function ScrollBar_Factory() { return new ScrollBar(i0.ɵɵinject(i1.DOCUMENT)); }, token: ScrollBar, providedIn: \"root\" });\nScrollBar.ctorParameters = () => [\n { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ScrollBar, [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], function () { return [{ type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }]; }, null); })();\n\nclass NgbModalBackdrop {\n constructor(_el, _zone) {\n this._el = _el;\n this._zone = _zone;\n }\n ngOnInit() {\n this._zone.onStable.asObservable().pipe(take(1)).subscribe(() => {\n ngbRunTransition(this._zone, this._el.nativeElement, (element, animation) => {\n if (animation) {\n reflow(element);\n }\n element.classList.add('show');\n }, { animation: this.animation, runningTransition: 'continue' });\n });\n }\n hide() {\n return ngbRunTransition(this._zone, this._el.nativeElement, ({ classList }) => classList.remove('show'), { animation: this.animation, runningTransition: 'stop' });\n }\n}\nNgbModalBackdrop.ɵfac = function NgbModalBackdrop_Factory(t) { return new (t || NgbModalBackdrop)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.NgZone)); };\nNgbModalBackdrop.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: NgbModalBackdrop, selectors: [[\"ngb-modal-backdrop\"]], hostAttrs: [2, \"z-index\", \"1050\"], hostVars: 6, hostBindings: function NgbModalBackdrop_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵclassMap(\"modal-backdrop\" + (ctx.backdropClass ? \" \" + ctx.backdropClass : \"\"));\n ɵngcc0.ɵɵclassProp(\"show\", !ctx.animation)(\"fade\", ctx.animation);\n } }, inputs: { animation: \"animation\", backdropClass: \"backdropClass\" }, decls: 0, vars: 0, template: function NgbModalBackdrop_Template(rf, ctx) { }, encapsulation: 2 });\nNgbModalBackdrop.ctorParameters = () => [\n { type: ElementRef },\n { type: NgZone }\n];\nNgbModalBackdrop.propDecorators = {\n animation: [{ type: Input }],\n backdropClass: [{ type: Input }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbModalBackdrop, [{\n type: Component,\n args: [{\n selector: 'ngb-modal-backdrop',\n encapsulation: ViewEncapsulation.None,\n template: '',\n host: {\n '[class]': '\"modal-backdrop\" + (backdropClass ? \" \" + backdropClass : \"\")',\n '[class.show]': '!animation',\n '[class.fade]': 'animation',\n 'style': 'z-index: 1050'\n }\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.NgZone }]; }, { animation: [{\n type: Input\n }], backdropClass: [{\n type: Input\n }] }); })();\n\n/**\n * A reference to the currently opened (active) modal.\n *\n * Instances of this class can be injected into your component passed as modal content.\n * So you can `.close()` or `.dismiss()` the modal window from your component.\n */\nclass NgbActiveModal {\n /**\n * Closes the modal with an optional `result` value.\n *\n * The `NgbModalRef.result` promise will be resolved with the provided value.\n */\n close(result) { }\n /**\n * Dismisses the modal with an optional `reason` value.\n *\n * The `NgbModalRef.result` promise will be rejected with the provided value.\n */\n dismiss(reason) { }\n}\n/**\n * A reference to the newly opened modal returned by the `NgbModal.open()` method.\n */\nclass NgbModalRef {\n constructor(_windowCmptRef, _contentRef, _backdropCmptRef, _beforeDismiss) {\n this._windowCmptRef = _windowCmptRef;\n this._contentRef = _contentRef;\n this._backdropCmptRef = _backdropCmptRef;\n this._beforeDismiss = _beforeDismiss;\n this._closed = new Subject();\n this._dismissed = new Subject();\n this._hidden = new Subject();\n _windowCmptRef.instance.dismissEvent.subscribe((reason) => { this.dismiss(reason); });\n this.result = new Promise((resolve, reject) => {\n this._resolve = resolve;\n this._reject = reject;\n });\n this.result.then(null, () => { });\n }\n /**\n * The instance of a component used for the modal content.\n *\n * When a `TemplateRef` is used as the content or when the modal is closed, will return `undefined`.\n */\n get componentInstance() {\n if (this._contentRef && this._contentRef.componentRef) {\n return this._contentRef.componentRef.instance;\n }\n }\n /**\n * The observable that emits when the modal is closed via the `.close()` method.\n *\n * It will emit the result passed to the `.close()` method.\n *\n * @since 8.0.0\n */\n get closed() { return this._closed.asObservable().pipe(takeUntil(this._hidden)); }\n /**\n * The observable that emits when the modal is dismissed via the `.dismiss()` method.\n *\n * It will emit the reason passed to the `.dismissed()` method by the user, or one of the internal\n * reasons like backdrop click or ESC key press.\n *\n * @since 8.0.0\n */\n get dismissed() { return this._dismissed.asObservable().pipe(takeUntil(this._hidden)); }\n /**\n * The observable that emits when both modal window and backdrop are closed and animations were finished.\n * At this point modal and backdrop elements will be removed from the DOM tree.\n *\n * This observable will be completed after emitting.\n *\n * @since 8.0.0\n */\n get hidden() { return this._hidden.asObservable(); }\n /**\n * The observable that emits when modal is fully visible and animation was finished.\n * Modal DOM element is always available synchronously after calling 'modal.open()' service.\n *\n * This observable will be completed after emitting.\n * It will not emit, if modal is closed before open animation is finished.\n *\n * @since 8.0.0\n */\n get shown() { return this._windowCmptRef.instance.shown.asObservable(); }\n /**\n * Closes the modal with an optional `result` value.\n *\n * The `NgbMobalRef.result` promise will be resolved with the provided value.\n */\n close(result) {\n if (this._windowCmptRef) {\n this._closed.next(result);\n this._resolve(result);\n this._removeModalElements();\n }\n }\n _dismiss(reason) {\n this._dismissed.next(reason);\n this._reject(reason);\n this._removeModalElements();\n }\n /**\n * Dismisses the modal with an optional `reason` value.\n *\n * The `NgbModalRef.result` promise will be rejected with the provided value.\n */\n dismiss(reason) {\n if (this._windowCmptRef) {\n if (!this._beforeDismiss) {\n this._dismiss(reason);\n }\n else {\n const dismiss = this._beforeDismiss();\n if (dismiss && dismiss.then) {\n dismiss.then(result => {\n if (result !== false) {\n this._dismiss(reason);\n }\n }, () => { });\n }\n else if (dismiss !== false) {\n this._dismiss(reason);\n }\n }\n }\n }\n _removeModalElements() {\n const windowTransition$ = this._windowCmptRef.instance.hide();\n const backdropTransition$ = this._backdropCmptRef ? this._backdropCmptRef.instance.hide() : of(undefined);\n // hiding window\n windowTransition$.subscribe(() => {\n const { nativeElement } = this._windowCmptRef.location;\n nativeElement.parentNode.removeChild(nativeElement);\n this._windowCmptRef.destroy();\n if (this._contentRef && this._contentRef.viewRef) {\n this._contentRef.viewRef.destroy();\n }\n this._windowCmptRef = null;\n this._contentRef = null;\n });\n // hiding backdrop\n backdropTransition$.subscribe(() => {\n if (this._backdropCmptRef) {\n const { nativeElement } = this._backdropCmptRef.location;\n nativeElement.parentNode.removeChild(nativeElement);\n this._backdropCmptRef.destroy();\n this._backdropCmptRef = null;\n }\n });\n // all done\n zip(windowTransition$, backdropTransition$).subscribe(() => {\n this._hidden.next();\n this._hidden.complete();\n });\n }\n}\n\nvar ModalDismissReasons;\n(function (ModalDismissReasons) {\n ModalDismissReasons[ModalDismissReasons[\"BACKDROP_CLICK\"] = 0] = \"BACKDROP_CLICK\";\n ModalDismissReasons[ModalDismissReasons[\"ESC\"] = 1] = \"ESC\";\n})(ModalDismissReasons || (ModalDismissReasons = {}));\n\nclass NgbModalWindow {\n constructor(_document, _elRef, _zone) {\n this._document = _document;\n this._elRef = _elRef;\n this._zone = _zone;\n this._closed$ = new Subject();\n this._elWithFocus = null; // element that is focused prior to modal opening\n this.backdrop = true;\n this.keyboard = true;\n this.dismissEvent = new EventEmitter();\n this.shown = new Subject();\n this.hidden = new Subject();\n }\n dismiss(reason) { this.dismissEvent.emit(reason); }\n ngOnInit() {\n this._elWithFocus = this._document.activeElement;\n this._zone.onStable.asObservable().pipe(take(1)).subscribe(() => { this._show(); });\n }\n ngOnDestroy() { this._disableEventHandling(); }\n hide() {\n const { nativeElement } = this._elRef;\n const context = { animation: this.animation, runningTransition: 'stop' };\n const windowTransition$ = ngbRunTransition(this._zone, nativeElement, () => nativeElement.classList.remove('show'), context);\n const dialogTransition$ = ngbRunTransition(this._zone, this._dialogEl.nativeElement, () => { }, context);\n const transitions$ = zip(windowTransition$, dialogTransition$);\n transitions$.subscribe(() => {\n this.hidden.next();\n this.hidden.complete();\n });\n this._disableEventHandling();\n this._restoreFocus();\n return transitions$;\n }\n _show() {\n const context = { animation: this.animation, runningTransition: 'continue' };\n const windowTransition$ = ngbRunTransition(this._zone, this._elRef.nativeElement, (element, animation) => {\n if (animation) {\n reflow(element);\n }\n element.classList.add('show');\n }, context);\n const dialogTransition$ = ngbRunTransition(this._zone, this._dialogEl.nativeElement, () => { }, context);\n zip(windowTransition$, dialogTransition$).subscribe(() => {\n this.shown.next();\n this.shown.complete();\n });\n this._enableEventHandling();\n this._setFocus();\n }\n _enableEventHandling() {\n const { nativeElement } = this._elRef;\n this._zone.runOutsideAngular(() => {\n fromEvent(nativeElement, 'keydown')\n .pipe(takeUntil(this._closed$), \n // tslint:disable-next-line:deprecation\n filter(e => e.which === Key.Escape))\n .subscribe(event => {\n if (this.keyboard) {\n requestAnimationFrame(() => {\n if (!event.defaultPrevented) {\n this._zone.run(() => this.dismiss(ModalDismissReasons.ESC));\n }\n });\n }\n else if (this.backdrop === 'static') {\n this._bumpBackdrop();\n }\n });\n // We're listening to 'mousedown' and 'mouseup' to prevent modal from closing when pressing the mouse\n // inside the modal dialog and releasing it outside\n let preventClose = false;\n fromEvent(this._dialogEl.nativeElement, 'mousedown')\n .pipe(takeUntil(this._closed$), tap(() => preventClose = false), switchMap(() => fromEvent(nativeElement, 'mouseup').pipe(takeUntil(this._closed$), take(1))), filter(({ target }) => nativeElement === target))\n .subscribe(() => { preventClose = true; });\n // We're listening to 'click' to dismiss modal on modal window click, except when:\n // 1. clicking on modal dialog itself\n // 2. closing was prevented by mousedown/up handlers\n // 3. clicking on scrollbar when the viewport is too small and modal doesn't fit (click is not triggered at all)\n fromEvent(nativeElement, 'click').pipe(takeUntil(this._closed$)).subscribe(({ target }) => {\n if (nativeElement === target) {\n if (this.backdrop === 'static') {\n this._bumpBackdrop();\n }\n else if (this.backdrop === true && !preventClose) {\n this._zone.run(() => this.dismiss(ModalDismissReasons.BACKDROP_CLICK));\n }\n }\n preventClose = false;\n });\n });\n }\n _disableEventHandling() { this._closed$.next(); }\n _setFocus() {\n const { nativeElement } = this._elRef;\n if (!nativeElement.contains(document.activeElement)) {\n const autoFocusable = nativeElement.querySelector(`[ngbAutofocus]`);\n const firstFocusable = getFocusableBoundaryElements(nativeElement)[0];\n const elementToFocus = autoFocusable || firstFocusable || nativeElement;\n elementToFocus.focus();\n }\n }\n _restoreFocus() {\n const body = this._document.body;\n const elWithFocus = this._elWithFocus;\n let elementToFocus;\n if (elWithFocus && elWithFocus['focus'] && body.contains(elWithFocus)) {\n elementToFocus = elWithFocus;\n }\n else {\n elementToFocus = body;\n }\n this._zone.runOutsideAngular(() => {\n setTimeout(() => elementToFocus.focus());\n this._elWithFocus = null;\n });\n }\n _bumpBackdrop() {\n if (this.backdrop === 'static') {\n ngbRunTransition(this._zone, this._elRef.nativeElement, ({ classList }) => {\n classList.add('modal-static');\n return () => classList.remove('modal-static');\n }, { animation: this.animation, runningTransition: 'continue' });\n }\n }\n}\nNgbModalWindow.ɵfac = function NgbModalWindow_Factory(t) { return new (t || NgbModalWindow)(ɵngcc0.ɵɵdirectiveInject(DOCUMENT), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.NgZone)); };\nNgbModalWindow.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: NgbModalWindow, selectors: [[\"ngb-modal-window\"]], viewQuery: function NgbModalWindow_Query(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵviewQuery(_c31, 3);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx._dialogEl = _t.first);\n } }, hostAttrs: [\"role\", \"dialog\", \"tabindex\", \"-1\"], hostVars: 7, hostBindings: function NgbModalWindow_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵattribute(\"aria-modal\", true)(\"aria-labelledby\", ctx.ariaLabelledBy)(\"aria-describedby\", ctx.ariaDescribedBy);\n ɵngcc0.ɵɵclassMap(\"modal d-block\" + (ctx.windowClass ? \" \" + ctx.windowClass : \"\"));\n ɵngcc0.ɵɵclassProp(\"fade\", ctx.animation);\n } }, inputs: { backdrop: \"backdrop\", keyboard: \"keyboard\", animation: \"animation\", ariaLabelledBy: \"ariaLabelledBy\", ariaDescribedBy: \"ariaDescribedBy\", centered: \"centered\", scrollable: \"scrollable\", size: \"size\", windowClass: \"windowClass\", modalDialogClass: \"modalDialogClass\" }, outputs: { dismissEvent: \"dismiss\" }, ngContentSelectors: _c3, decls: 4, vars: 2, consts: [[\"role\", \"document\"], [\"dialog\", \"\"], [1, \"modal-content\"]], template: function NgbModalWindow_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵelementStart(0, \"div\", 0, 1);\n ɵngcc0.ɵɵelementStart(2, \"div\", 2);\n ɵngcc0.ɵɵprojection(3);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n } if (rf & 2) {\n ɵngcc0.ɵɵclassMap(\"modal-dialog\" + (ctx.size ? \" modal-\" + ctx.size : \"\") + (ctx.centered ? \" modal-dialog-centered\" : \"\") + (ctx.scrollable ? \" modal-dialog-scrollable\" : \"\") + (ctx.modalDialogClass ? \" \" + ctx.modalDialogClass : \"\"));\n } }, styles: [\"ngb-modal-window .component-host-scrollable{display:flex;flex-direction:column;overflow:hidden}\"], encapsulation: 2 });\nNgbModalWindow.ctorParameters = () => [\n { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] },\n { type: ElementRef },\n { type: NgZone }\n];\nNgbModalWindow.propDecorators = {\n _dialogEl: [{ type: ViewChild, args: ['dialog', { static: true },] }],\n animation: [{ type: Input }],\n ariaLabelledBy: [{ type: Input }],\n ariaDescribedBy: [{ type: Input }],\n backdrop: [{ type: Input }],\n centered: [{ type: Input }],\n keyboard: [{ type: Input }],\n scrollable: [{ type: Input }],\n size: [{ type: Input }],\n windowClass: [{ type: Input }],\n modalDialogClass: [{ type: Input }],\n dismissEvent: [{ type: Output, args: ['dismiss',] }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbModalWindow, [{\n type: Component,\n args: [{\n selector: 'ngb-modal-window',\n host: {\n '[class]': '\"modal d-block\" + (windowClass ? \" \" + windowClass : \"\")',\n '[class.fade]': 'animation',\n 'role': 'dialog',\n 'tabindex': '-1',\n '[attr.aria-modal]': 'true',\n '[attr.aria-labelledby]': 'ariaLabelledBy',\n '[attr.aria-describedby]': 'ariaDescribedBy'\n },\n template: `\n
\n
\n
\n `,\n encapsulation: ViewEncapsulation.None,\n styles: [\"ngb-modal-window .component-host-scrollable{display:flex;flex-direction:column;overflow:hidden}\"]\n }]\n }], function () { return [{ type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }, { type: ɵngcc0.ElementRef }, { type: ɵngcc0.NgZone }]; }, { backdrop: [{\n type: Input\n }], keyboard: [{\n type: Input\n }], dismissEvent: [{\n type: Output,\n args: ['dismiss']\n }], _dialogEl: [{\n type: ViewChild,\n args: ['dialog', { static: true }]\n }], animation: [{\n type: Input\n }], ariaLabelledBy: [{\n type: Input\n }], ariaDescribedBy: [{\n type: Input\n }], centered: [{\n type: Input\n }], scrollable: [{\n type: Input\n }], size: [{\n type: Input\n }], windowClass: [{\n type: Input\n }], modalDialogClass: [{\n type: Input\n }] }); })();\n\nclass NgbModalStack {\n constructor(_applicationRef, _injector, _document, _scrollBar, _rendererFactory, _ngZone) {\n this._applicationRef = _applicationRef;\n this._injector = _injector;\n this._document = _document;\n this._scrollBar = _scrollBar;\n this._rendererFactory = _rendererFactory;\n this._ngZone = _ngZone;\n this._activeWindowCmptHasChanged = new Subject();\n this._ariaHiddenValues = new Map();\n this._backdropAttributes = ['animation', 'backdropClass'];\n this._modalRefs = [];\n this._windowAttributes = [\n 'animation', 'ariaLabelledBy', 'ariaDescribedBy', 'backdrop', 'centered', 'keyboard', 'scrollable', 'size',\n 'windowClass', 'modalDialogClass'\n ];\n this._windowCmpts = [];\n this._activeInstances = new EventEmitter();\n // Trap focus on active WindowCmpt\n this._activeWindowCmptHasChanged.subscribe(() => {\n if (this._windowCmpts.length) {\n const activeWindowCmpt = this._windowCmpts[this._windowCmpts.length - 1];\n ngbFocusTrap(this._ngZone, activeWindowCmpt.location.nativeElement, this._activeWindowCmptHasChanged);\n this._revertAriaHidden();\n this._setAriaHidden(activeWindowCmpt.location.nativeElement);\n }\n });\n }\n open(moduleCFR, contentInjector, content, options) {\n const containerEl = options.container instanceof HTMLElement ? options.container : isDefined(options.container) ?\n this._document.querySelector(options.container) :\n this._document.body;\n const renderer = this._rendererFactory.createRenderer(null, null);\n const revertPaddingForScrollBar = this._scrollBar.compensate();\n const removeBodyClass = () => {\n if (!this._modalRefs.length) {\n renderer.removeClass(this._document.body, 'modal-open');\n this._revertAriaHidden();\n }\n };\n if (!containerEl) {\n throw new Error(`The specified modal container \"${options.container || 'body'}\" was not found in the DOM.`);\n }\n const activeModal = new NgbActiveModal();\n const contentRef = this._getContentRef(moduleCFR, options.injector || contentInjector, content, activeModal, options);\n let backdropCmptRef = options.backdrop !== false ? this._attachBackdrop(moduleCFR, containerEl) : undefined;\n let windowCmptRef = this._attachWindowComponent(moduleCFR, containerEl, contentRef);\n let ngbModalRef = new NgbModalRef(windowCmptRef, contentRef, backdropCmptRef, options.beforeDismiss);\n this._registerModalRef(ngbModalRef);\n this._registerWindowCmpt(windowCmptRef);\n ngbModalRef.result.then(revertPaddingForScrollBar, revertPaddingForScrollBar);\n ngbModalRef.result.then(removeBodyClass, removeBodyClass);\n activeModal.close = (result) => { ngbModalRef.close(result); };\n activeModal.dismiss = (reason) => { ngbModalRef.dismiss(reason); };\n this._applyWindowOptions(windowCmptRef.instance, options);\n if (this._modalRefs.length === 1) {\n renderer.addClass(this._document.body, 'modal-open');\n }\n if (backdropCmptRef && backdropCmptRef.instance) {\n this._applyBackdropOptions(backdropCmptRef.instance, options);\n backdropCmptRef.changeDetectorRef.detectChanges();\n }\n windowCmptRef.changeDetectorRef.detectChanges();\n return ngbModalRef;\n }\n get activeInstances() { return this._activeInstances; }\n dismissAll(reason) { this._modalRefs.forEach(ngbModalRef => ngbModalRef.dismiss(reason)); }\n hasOpenModals() { return this._modalRefs.length > 0; }\n _attachBackdrop(moduleCFR, containerEl) {\n let backdropFactory = moduleCFR.resolveComponentFactory(NgbModalBackdrop);\n let backdropCmptRef = backdropFactory.create(this._injector);\n this._applicationRef.attachView(backdropCmptRef.hostView);\n containerEl.appendChild(backdropCmptRef.location.nativeElement);\n return backdropCmptRef;\n }\n _attachWindowComponent(moduleCFR, containerEl, contentRef) {\n let windowFactory = moduleCFR.resolveComponentFactory(NgbModalWindow);\n let windowCmptRef = windowFactory.create(this._injector, contentRef.nodes);\n this._applicationRef.attachView(windowCmptRef.hostView);\n containerEl.appendChild(windowCmptRef.location.nativeElement);\n return windowCmptRef;\n }\n _applyWindowOptions(windowInstance, options) {\n this._windowAttributes.forEach((optionName) => {\n if (isDefined(options[optionName])) {\n windowInstance[optionName] = options[optionName];\n }\n });\n }\n _applyBackdropOptions(backdropInstance, options) {\n this._backdropAttributes.forEach((optionName) => {\n if (isDefined(options[optionName])) {\n backdropInstance[optionName] = options[optionName];\n }\n });\n }\n _getContentRef(moduleCFR, contentInjector, content, activeModal, options) {\n if (!content) {\n return new ContentRef([]);\n }\n else if (content instanceof TemplateRef) {\n return this._createFromTemplateRef(content, activeModal);\n }\n else if (isString(content)) {\n return this._createFromString(content);\n }\n else {\n return this._createFromComponent(moduleCFR, contentInjector, content, activeModal, options);\n }\n }\n _createFromTemplateRef(content, activeModal) {\n const context = {\n $implicit: activeModal,\n close(result) { activeModal.close(result); },\n dismiss(reason) { activeModal.dismiss(reason); }\n };\n const viewRef = content.createEmbeddedView(context);\n this._applicationRef.attachView(viewRef);\n return new ContentRef([viewRef.rootNodes], viewRef);\n }\n _createFromString(content) {\n const component = this._document.createTextNode(`${content}`);\n return new ContentRef([[component]]);\n }\n _createFromComponent(moduleCFR, contentInjector, content, context, options) {\n const contentCmptFactory = moduleCFR.resolveComponentFactory(content);\n const modalContentInjector = Injector.create({ providers: [{ provide: NgbActiveModal, useValue: context }], parent: contentInjector });\n const componentRef = contentCmptFactory.create(modalContentInjector);\n const componentNativeEl = componentRef.location.nativeElement;\n if (options.scrollable) {\n componentNativeEl.classList.add('component-host-scrollable');\n }\n this._applicationRef.attachView(componentRef.hostView);\n // FIXME: we should here get rid of the component nativeElement\n // and use `[Array.from(componentNativeEl.childNodes)]` instead and remove the above CSS class.\n return new ContentRef([[componentNativeEl]], componentRef.hostView, componentRef);\n }\n _setAriaHidden(element) {\n const parent = element.parentElement;\n if (parent && element !== this._document.body) {\n Array.from(parent.children).forEach(sibling => {\n if (sibling !== element && sibling.nodeName !== 'SCRIPT') {\n this._ariaHiddenValues.set(sibling, sibling.getAttribute('aria-hidden'));\n sibling.setAttribute('aria-hidden', 'true');\n }\n });\n this._setAriaHidden(parent);\n }\n }\n _revertAriaHidden() {\n this._ariaHiddenValues.forEach((value, element) => {\n if (value) {\n element.setAttribute('aria-hidden', value);\n }\n else {\n element.removeAttribute('aria-hidden');\n }\n });\n this._ariaHiddenValues.clear();\n }\n _registerModalRef(ngbModalRef) {\n const unregisterModalRef = () => {\n const index = this._modalRefs.indexOf(ngbModalRef);\n if (index > -1) {\n this._modalRefs.splice(index, 1);\n this._activeInstances.emit(this._modalRefs);\n }\n };\n this._modalRefs.push(ngbModalRef);\n this._activeInstances.emit(this._modalRefs);\n ngbModalRef.result.then(unregisterModalRef, unregisterModalRef);\n }\n _registerWindowCmpt(ngbWindowCmpt) {\n this._windowCmpts.push(ngbWindowCmpt);\n this._activeWindowCmptHasChanged.next();\n ngbWindowCmpt.onDestroy(() => {\n const index = this._windowCmpts.indexOf(ngbWindowCmpt);\n if (index > -1) {\n this._windowCmpts.splice(index, 1);\n this._activeWindowCmptHasChanged.next();\n }\n });\n }\n}\nNgbModalStack.ɵfac = function NgbModalStack_Factory(t) { return new (t || NgbModalStack)(ɵngcc0.ɵɵinject(ɵngcc0.ApplicationRef), ɵngcc0.ɵɵinject(ɵngcc0.Injector), ɵngcc0.ɵɵinject(DOCUMENT), ɵngcc0.ɵɵinject(ScrollBar), ɵngcc0.ɵɵinject(ɵngcc0.RendererFactory2), ɵngcc0.ɵɵinject(ɵngcc0.NgZone)); };\nNgbModalStack.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgbModalStack_Factory() { return new NgbModalStack(i0.ɵɵinject(i0.ApplicationRef), i0.ɵɵinject(i0.INJECTOR), i0.ɵɵinject(i1.DOCUMENT), i0.ɵɵinject(ScrollBar), i0.ɵɵinject(i0.RendererFactory2), i0.ɵɵinject(i0.NgZone)); }, token: NgbModalStack, providedIn: \"root\" });\nNgbModalStack.ctorParameters = () => [\n { type: ApplicationRef },\n { type: Injector },\n { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] },\n { type: ScrollBar },\n { type: RendererFactory2 },\n { type: NgZone }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbModalStack, [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], function () { return [{ type: ɵngcc0.ApplicationRef }, { type: ɵngcc0.Injector }, { type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }, { type: ScrollBar }, { type: ɵngcc0.RendererFactory2 }, { type: ɵngcc0.NgZone }]; }, null); })();\n\n/**\n * A service for opening modal windows.\n *\n * Creating a modal is straightforward: create a component or a template and pass it as an argument to\n * the `.open()` method.\n */\nclass NgbModal {\n constructor(_moduleCFR, _injector, _modalStack, _config) {\n this._moduleCFR = _moduleCFR;\n this._injector = _injector;\n this._modalStack = _modalStack;\n this._config = _config;\n }\n /**\n * Opens a new modal window with the specified content and supplied options.\n *\n * Content can be provided as a `TemplateRef` or a component type. If you pass a component type as content,\n * then instances of those components can be injected with an instance of the `NgbActiveModal` class. You can then\n * use `NgbActiveModal` methods to close / dismiss modals from \"inside\" of your component.\n *\n * Also see the [`NgbModalOptions`](#/components/modal/api#NgbModalOptions) for the list of supported options.\n */\n open(content, options = {}) {\n const combinedOptions = Object.assign(Object.assign(Object.assign({}, this._config), { animation: this._config.animation }), options);\n return this._modalStack.open(this._moduleCFR, this._injector, content, combinedOptions);\n }\n /**\n * Returns an observable that holds the active modal instances.\n */\n get activeInstances() { return this._modalStack.activeInstances; }\n /**\n * Dismisses all currently displayed modal windows with the supplied reason.\n *\n * @since 3.1.0\n */\n dismissAll(reason) { this._modalStack.dismissAll(reason); }\n /**\n * Indicates if there are currently any open modal windows in the application.\n *\n * @since 3.3.0\n */\n hasOpenModals() { return this._modalStack.hasOpenModals(); }\n}\nNgbModal.ɵfac = function NgbModal_Factory(t) { return new (t || NgbModal)(ɵngcc0.ɵɵinject(ɵngcc0.ComponentFactoryResolver), ɵngcc0.ɵɵinject(ɵngcc0.Injector), ɵngcc0.ɵɵinject(NgbModalStack), ɵngcc0.ɵɵinject(NgbModalConfig)); };\nNgbModal.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgbModal_Factory() { return new NgbModal(i0.ɵɵinject(i0.ComponentFactoryResolver), i0.ɵɵinject(i0.INJECTOR), i0.ɵɵinject(NgbModalStack), i0.ɵɵinject(NgbModalConfig)); }, token: NgbModal, providedIn: \"root\" });\nNgbModal.ctorParameters = () => [\n { type: ComponentFactoryResolver },\n { type: Injector },\n { type: NgbModalStack },\n { type: NgbModalConfig }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbModal, [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], function () { return [{ type: ɵngcc0.ComponentFactoryResolver }, { type: ɵngcc0.Injector }, { type: NgbModalStack }, { type: NgbModalConfig }]; }, null); })();\n\nclass NgbModalModule {\n}\nNgbModalModule.ɵfac = function NgbModalModule_Factory(t) { return new (t || NgbModalModule)(); };\nNgbModalModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: NgbModalModule });\nNgbModalModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ providers: [NgbModal] });\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(NgbModalModule, { declarations: [NgbModalBackdrop, NgbModalWindow] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbModalModule, [{\n type: NgModule,\n args: [{\n declarations: [NgbModalBackdrop, NgbModalWindow],\n entryComponents: [NgbModalBackdrop, NgbModalWindow],\n providers: [NgbModal]\n }]\n }], null, null); })();\n\n/**\n * A configuration service for the [`NgbNav`](#/components/nav/api#NgbNav) component.\n *\n * You can inject this service, typically in your root component, and customize the values of its properties in\n * order to provide default values for all the navs used in the application.\n *\n * @since 5.2.0\n */\nclass NgbNavConfig {\n constructor(_ngbConfig) {\n this._ngbConfig = _ngbConfig;\n this.destroyOnHide = true;\n this.orientation = 'horizontal';\n this.roles = 'tablist';\n this.keyboard = false;\n }\n get animation() { return (this._animation === undefined) ? this._ngbConfig.animation : this._animation; }\n set animation(animation) { this._animation = animation; }\n}\nNgbNavConfig.ɵfac = function NgbNavConfig_Factory(t) { return new (t || NgbNavConfig)(ɵngcc0.ɵɵinject(NgbConfig)); };\nNgbNavConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgbNavConfig_Factory() { return new NgbNavConfig(i0.ɵɵinject(NgbConfig)); }, token: NgbNavConfig, providedIn: \"root\" });\nNgbNavConfig.ctorParameters = () => [\n { type: NgbConfig }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbNavConfig, [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], function () { return [{ type: NgbConfig }]; }, null); })();\n\nconst isValidNavId = (id) => isDefined(id) && id !== '';\nconst ɵ0$1 = isValidNavId;\nlet navCounter = 0;\n/**\n * This directive must be used to wrap content to be displayed in the nav.\n *\n * @since 5.2.0\n */\nclass NgbNavContent {\n constructor(templateRef) {\n this.templateRef = templateRef;\n }\n}\nNgbNavContent.ɵfac = function NgbNavContent_Factory(t) { return new (t || NgbNavContent)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.TemplateRef)); };\nNgbNavContent.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbNavContent, selectors: [[\"ng-template\", \"ngbNavContent\", \"\"]] });\nNgbNavContent.ctorParameters = () => [\n { type: TemplateRef }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbNavContent, [{\n type: Directive,\n args: [{ selector: 'ng-template[ngbNavContent]' }]\n }], function () { return [{ type: ɵngcc0.TemplateRef }]; }, null); })();\n/**\n * The directive used to group nav link and related nav content. As well as set nav identifier and some options.\n *\n * @since 5.2.0\n */\nclass NgbNavItem {\n constructor(nav, elementRef) {\n this.elementRef = elementRef;\n /**\n * If `true`, the current nav item is disabled and can't be toggled by user.\n *\n * Nevertheless disabled nav can be selected programmatically via the `.select()` method and the `[activeId]` binding.\n */\n this.disabled = false;\n /**\n * An event emitted when the fade in transition is finished on the related nav content\n *\n * @since 8.0.0\n */\n this.shown = new EventEmitter();\n /**\n * An event emitted when the fade out transition is finished on the related nav content\n *\n * @since 8.0.0\n */\n this.hidden = new EventEmitter();\n // TODO: cf https://github.com/angular/angular/issues/30106\n this._nav = nav;\n }\n ngAfterContentChecked() {\n // We are using @ContentChildren instead of @ContentChild as in the Angular version being used\n // only @ContentChildren allows us to specify the {descendants: false} option.\n // Without {descendants: false} we are hitting bugs described in:\n // https://github.com/ng-bootstrap/ng-bootstrap/issues/2240\n this.contentTpl = this.contentTpls.first;\n }\n ngOnInit() {\n if (!isDefined(this.domId)) {\n this.domId = `ngb-nav-${navCounter++}`;\n }\n }\n get active() { return this._nav.activeId === this.id; }\n get id() { return isValidNavId(this._id) ? this._id : this.domId; }\n get panelDomId() { return `${this.domId}-panel`; }\n isPanelInDom() {\n return (isDefined(this.destroyOnHide) ? !this.destroyOnHide : !this._nav.destroyOnHide) || this.active;\n }\n}\nNgbNavItem.ɵfac = function NgbNavItem_Factory(t) { return new (t || NgbNavItem)(ɵngcc0.ɵɵdirectiveInject(forwardRef(() => NgbNav)), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef)); };\nNgbNavItem.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbNavItem, selectors: [[\"\", \"ngbNavItem\", \"\"]], contentQueries: function NgbNavItem_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {\n ɵngcc0.ɵɵcontentQuery(dirIndex, NgbNavContent, 0);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.contentTpls = _t);\n } }, hostVars: 2, hostBindings: function NgbNavItem_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵclassProp(\"nav-item\", true);\n } }, inputs: { disabled: \"disabled\", domId: \"domId\", destroyOnHide: \"destroyOnHide\", _id: [\"ngbNavItem\", \"_id\"] }, outputs: { shown: \"shown\", hidden: \"hidden\" }, exportAs: [\"ngbNavItem\"] });\nNgbNavItem.ctorParameters = () => [\n { type: undefined, decorators: [{ type: Inject, args: [forwardRef(() => NgbNav),] }] },\n { type: ElementRef }\n];\nNgbNavItem.propDecorators = {\n destroyOnHide: [{ type: Input }],\n disabled: [{ type: Input }],\n domId: [{ type: Input }],\n _id: [{ type: Input, args: ['ngbNavItem',] }],\n shown: [{ type: Output }],\n hidden: [{ type: Output }],\n contentTpls: [{ type: ContentChildren, args: [NgbNavContent, { descendants: false },] }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbNavItem, [{\n type: Directive,\n args: [{ selector: '[ngbNavItem]', exportAs: 'ngbNavItem', host: { '[class.nav-item]': 'true' } }]\n }], function () { return [{ type: undefined, decorators: [{\n type: Inject,\n args: [forwardRef(() => NgbNav)]\n }] }, { type: ɵngcc0.ElementRef }]; }, { disabled: [{\n type: Input\n }], shown: [{\n type: Output\n }], hidden: [{\n type: Output\n }], domId: [{\n type: Input\n }], destroyOnHide: [{\n type: Input\n }], _id: [{\n type: Input,\n args: ['ngbNavItem']\n }], contentTpls: [{\n type: ContentChildren,\n args: [NgbNavContent, { descendants: false }]\n }] }); })();\n/**\n * A nav directive that helps with implementing tabbed navigation components.\n *\n * @since 5.2.0\n */\nclass NgbNav {\n constructor(role, config, _cd, _document) {\n this.role = role;\n this._cd = _cd;\n this._document = _document;\n /**\n * The event emitted after the active nav changes\n * The payload of the event is the newly active nav id\n *\n * If you want to prevent nav change, you should use `(navChange)` event\n */\n this.activeIdChange = new EventEmitter();\n /**\n * An event emitted when the fade in transition is finished for one of the items.\n *\n * Payload of the event is the nav id that was just shown.\n *\n * @since 8.0.0\n */\n this.shown = new EventEmitter();\n /**\n * An event emitted when the fade out transition is finished for one of the items.\n *\n * Payload of the event is the nav id that was just hidden.\n *\n * @since 8.0.0\n */\n this.hidden = new EventEmitter();\n this.destroy$ = new Subject();\n this.navItemChange$ = new Subject();\n /**\n * The nav change event emitted right before the nav change happens on user click.\n *\n * This event won't be emitted if nav is changed programmatically via `[activeId]` or `.select()`.\n *\n * See [`NgbNavChangeEvent`](#/components/nav/api#NgbNavChangeEvent) for payload details.\n */\n this.navChange = new EventEmitter();\n this.animation = config.animation;\n this.destroyOnHide = config.destroyOnHide;\n this.orientation = config.orientation;\n this.roles = config.roles;\n this.keyboard = config.keyboard;\n }\n click(item) {\n if (!item.disabled) {\n this._updateActiveId(item.id);\n }\n }\n onKeyDown(event) {\n if (this.roles !== 'tablist' || !this.keyboard) {\n return;\n }\n // tslint:disable-next-line: deprecation\n const key = event.which;\n const enabledLinks = this.links.filter(link => !link.navItem.disabled);\n const { length } = enabledLinks;\n let position = -1;\n enabledLinks.forEach((link, index) => {\n if (link.elRef.nativeElement === this._document.activeElement) {\n position = index;\n }\n });\n if (length) {\n switch (key) {\n case Key.ArrowLeft:\n if (this.orientation === 'vertical') {\n return;\n }\n position = (position - 1 + length) % length;\n break;\n case Key.ArrowRight:\n if (this.orientation === 'vertical') {\n return;\n }\n position = (position + 1) % length;\n break;\n case Key.ArrowDown:\n if (this.orientation === 'horizontal') {\n return;\n }\n position = (position + 1) % length;\n break;\n case Key.ArrowUp:\n if (this.orientation === 'horizontal') {\n return;\n }\n position = (position - 1 + length) % length;\n break;\n case Key.Home:\n position = 0;\n break;\n case Key.End:\n position = length - 1;\n break;\n }\n if (this.keyboard === 'changeWithArrows') {\n this.select(enabledLinks[position].navItem.id);\n }\n enabledLinks[position].elRef.nativeElement.focus();\n event.preventDefault();\n }\n }\n /**\n * Selects the nav with the given id and shows its associated pane.\n * Any other nav that was previously selected becomes unselected and its associated pane is hidden.\n */\n select(id) { this._updateActiveId(id, false); }\n ngAfterContentInit() {\n if (!isDefined(this.activeId)) {\n const nextId = this.items.first ? this.items.first.id : null;\n if (isValidNavId(nextId)) {\n this._updateActiveId(nextId, false);\n this._cd.detectChanges();\n }\n }\n this.items.changes.pipe(takeUntil(this.destroy$)).subscribe(() => this._notifyItemChanged(this.activeId));\n }\n ngOnChanges({ activeId }) {\n if (activeId && !activeId.firstChange) {\n this._notifyItemChanged(activeId.currentValue);\n }\n }\n ngOnDestroy() { this.destroy$.next(); }\n _updateActiveId(nextId, emitNavChange = true) {\n if (this.activeId !== nextId) {\n let defaultPrevented = false;\n if (emitNavChange) {\n this.navChange.emit({ activeId: this.activeId, nextId, preventDefault: () => { defaultPrevented = true; } });\n }\n if (!defaultPrevented) {\n this.activeId = nextId;\n this.activeIdChange.emit(nextId);\n this._notifyItemChanged(nextId);\n }\n }\n }\n _notifyItemChanged(nextItemId) { this.navItemChange$.next(this._getItemById(nextItemId)); }\n _getItemById(itemId) {\n return this.items && this.items.find(item => item.id === itemId) || null;\n }\n}\nNgbNav.ɵfac = function NgbNav_Factory(t) { return new (t || NgbNav)(ɵngcc0.ɵɵinjectAttribute('role'), ɵngcc0.ɵɵdirectiveInject(NgbNavConfig), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef), ɵngcc0.ɵɵdirectiveInject(DOCUMENT)); };\nNgbNav.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbNav, selectors: [[\"\", \"ngbNav\", \"\"]], contentQueries: function NgbNav_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {\n ɵngcc0.ɵɵcontentQuery(dirIndex, NgbNavItem, 0);\n ɵngcc0.ɵɵcontentQuery(dirIndex, NgbNavLink, 1);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.items = _t);\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.links = _t);\n } }, hostVars: 6, hostBindings: function NgbNav_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"keydown.arrowLeft\", function NgbNav_keydown_arrowLeft_HostBindingHandler($event) { return ctx.onKeyDown($event); })(\"keydown.arrowRight\", function NgbNav_keydown_arrowRight_HostBindingHandler($event) { return ctx.onKeyDown($event); })(\"keydown.arrowDown\", function NgbNav_keydown_arrowDown_HostBindingHandler($event) { return ctx.onKeyDown($event); })(\"keydown.arrowUp\", function NgbNav_keydown_arrowUp_HostBindingHandler($event) { return ctx.onKeyDown($event); })(\"keydown.Home\", function NgbNav_keydown_Home_HostBindingHandler($event) { return ctx.onKeyDown($event); })(\"keydown.End\", function NgbNav_keydown_End_HostBindingHandler($event) { return ctx.onKeyDown($event); });\n } if (rf & 2) {\n ɵngcc0.ɵɵattribute(\"aria-orientation\", ctx.orientation === \"vertical\" && ctx.roles === \"tablist\" ? \"vertical\" : undefined)(\"role\", ctx.role ? ctx.role : ctx.roles ? \"tablist\" : undefined);\n ɵngcc0.ɵɵclassProp(\"nav\", true)(\"flex-column\", ctx.orientation === \"vertical\");\n } }, inputs: { animation: \"animation\", destroyOnHide: \"destroyOnHide\", orientation: \"orientation\", roles: \"roles\", keyboard: \"keyboard\", activeId: \"activeId\" }, outputs: { activeIdChange: \"activeIdChange\", shown: \"shown\", hidden: \"hidden\", navChange: \"navChange\" }, exportAs: [\"ngbNav\"], features: [ɵngcc0.ɵɵNgOnChangesFeature] });\nNgbNav.ctorParameters = () => [\n { type: String, decorators: [{ type: Attribute, args: ['role',] }] },\n { type: NgbNavConfig },\n { type: ChangeDetectorRef },\n { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] }\n];\nNgbNav.propDecorators = {\n activeId: [{ type: Input }],\n activeIdChange: [{ type: Output }],\n animation: [{ type: Input }],\n destroyOnHide: [{ type: Input }],\n orientation: [{ type: Input }],\n roles: [{ type: Input }],\n keyboard: [{ type: Input }],\n shown: [{ type: Output }],\n hidden: [{ type: Output }],\n items: [{ type: ContentChildren, args: [NgbNavItem,] }],\n links: [{ type: ContentChildren, args: [forwardRef(() => NgbNavLink), { descendants: true },] }],\n navChange: [{ type: Output }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbNav, [{\n type: Directive,\n args: [{\n selector: '[ngbNav]',\n exportAs: 'ngbNav',\n host: {\n '[class.nav]': 'true',\n '[class.flex-column]': `orientation === 'vertical'`,\n '[attr.aria-orientation]': `orientation === 'vertical' && roles === 'tablist' ? 'vertical' : undefined`,\n '[attr.role]': `role ? role : roles ? 'tablist' : undefined`,\n '(keydown.arrowLeft)': 'onKeyDown($event)',\n '(keydown.arrowRight)': 'onKeyDown($event)',\n '(keydown.arrowDown)': 'onKeyDown($event)',\n '(keydown.arrowUp)': 'onKeyDown($event)',\n '(keydown.Home)': 'onKeyDown($event)',\n '(keydown.End)': 'onKeyDown($event)'\n }\n }]\n }], function () { return [{ type: String, decorators: [{\n type: Attribute,\n args: ['role']\n }] }, { type: NgbNavConfig }, { type: ɵngcc0.ChangeDetectorRef }, { type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }]; }, { activeIdChange: [{\n type: Output\n }], shown: [{\n type: Output\n }], hidden: [{\n type: Output\n }], navChange: [{\n type: Output\n }], animation: [{\n type: Input\n }], destroyOnHide: [{\n type: Input\n }], orientation: [{\n type: Input\n }], roles: [{\n type: Input\n }], keyboard: [{\n type: Input\n }], activeId: [{\n type: Input\n }], items: [{\n type: ContentChildren,\n args: [NgbNavItem]\n }], links: [{\n type: ContentChildren,\n args: [forwardRef(() => NgbNavLink), { descendants: true }]\n }] }); })();\n/**\n * A directive to put on the nav link.\n *\n * @since 5.2.0\n */\nclass NgbNavLink {\n constructor(role, navItem, nav, elRef) {\n this.role = role;\n this.navItem = navItem;\n this.nav = nav;\n this.elRef = elRef;\n }\n hasNavItemClass() {\n // with alternative markup we have to add `.nav-item` class, because `ngbNavItem` is on the ng-container\n return this.navItem.elementRef.nativeElement.nodeType === Node.COMMENT_NODE;\n }\n}\nNgbNavLink.ɵfac = function NgbNavLink_Factory(t) { return new (t || NgbNavLink)(ɵngcc0.ɵɵinjectAttribute('role'), ɵngcc0.ɵɵdirectiveInject(NgbNavItem), ɵngcc0.ɵɵdirectiveInject(NgbNav), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef)); };\nNgbNavLink.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbNavLink, selectors: [[\"a\", \"ngbNavLink\", \"\"]], hostAttrs: [\"href\", \"\"], hostVars: 14, hostBindings: function NgbNavLink_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"click\", function NgbNavLink_click_HostBindingHandler($event) { ctx.nav.click(ctx.navItem); return $event.preventDefault(); });\n } if (rf & 2) {\n ɵngcc0.ɵɵhostProperty(\"id\", ctx.navItem.domId);\n ɵngcc0.ɵɵattribute(\"role\", ctx.role ? ctx.role : ctx.nav.roles ? \"tab\" : undefined)(\"tabindex\", ctx.navItem.disabled ? -1 : undefined)(\"aria-controls\", ctx.navItem.isPanelInDom() ? ctx.navItem.panelDomId : null)(\"aria-selected\", ctx.navItem.active)(\"aria-disabled\", ctx.navItem.disabled);\n ɵngcc0.ɵɵclassProp(\"nav-link\", true)(\"nav-item\", ctx.hasNavItemClass())(\"active\", ctx.navItem.active)(\"disabled\", ctx.navItem.disabled);\n } } });\nNgbNavLink.ctorParameters = () => [\n { type: String, decorators: [{ type: Attribute, args: ['role',] }] },\n { type: NgbNavItem },\n { type: NgbNav },\n { type: ElementRef }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbNavLink, [{\n type: Directive,\n args: [{\n selector: 'a[ngbNavLink]',\n host: {\n '[id]': 'navItem.domId',\n '[class.nav-link]': 'true',\n '[class.nav-item]': 'hasNavItemClass()',\n '[attr.role]': `role ? role : nav.roles ? 'tab' : undefined`,\n 'href': '',\n '[class.active]': 'navItem.active',\n '[class.disabled]': 'navItem.disabled',\n '[attr.tabindex]': 'navItem.disabled ? -1 : undefined',\n '[attr.aria-controls]': 'navItem.isPanelInDom() ? navItem.panelDomId : null',\n '[attr.aria-selected]': 'navItem.active',\n '[attr.aria-disabled]': 'navItem.disabled',\n '(click)': 'nav.click(navItem); $event.preventDefault()'\n }\n }]\n }], function () { return [{ type: String, decorators: [{\n type: Attribute,\n args: ['role']\n }] }, { type: NgbNavItem }, { type: NgbNav }, { type: ɵngcc0.ElementRef }]; }, null); })();\n\nconst ngbNavFadeOutTransition = ({ classList }) => {\n classList.remove('show');\n return () => classList.remove('active');\n};\nconst ngbNavFadeInTransition = (element, animation) => {\n if (animation) {\n reflow(element);\n }\n element.classList.add('show');\n};\n\nclass NgbNavPane {\n constructor(elRef) {\n this.elRef = elRef;\n }\n}\nNgbNavPane.ɵfac = function NgbNavPane_Factory(t) { return new (t || NgbNavPane)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef)); };\nNgbNavPane.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbNavPane, selectors: [[\"\", \"ngbNavPane\", \"\"]], hostAttrs: [1, \"tab-pane\"], hostVars: 5, hostBindings: function NgbNavPane_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵhostProperty(\"id\", ctx.item.panelDomId);\n ɵngcc0.ɵɵattribute(\"role\", ctx.role ? ctx.role : ctx.nav.roles ? \"tabpanel\" : undefined)(\"aria-labelledby\", ctx.item.domId);\n ɵngcc0.ɵɵclassProp(\"fade\", ctx.nav.animation);\n } }, inputs: { item: \"item\", nav: \"nav\", role: \"role\" } });\nNgbNavPane.ctorParameters = () => [\n { type: ElementRef }\n];\nNgbNavPane.propDecorators = {\n item: [{ type: Input }],\n nav: [{ type: Input }],\n role: [{ type: Input }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbNavPane, [{\n type: Directive,\n args: [{\n selector: '[ngbNavPane]',\n host: {\n '[id]': 'item.panelDomId',\n 'class': 'tab-pane',\n '[class.fade]': 'nav.animation',\n '[attr.role]': 'role ? role : nav.roles ? \"tabpanel\" : undefined',\n '[attr.aria-labelledby]': 'item.domId'\n }\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }]; }, { item: [{\n type: Input\n }], nav: [{\n type: Input\n }], role: [{\n type: Input\n }] }); })();\n/**\n * The outlet where currently active nav content will be displayed.\n *\n * @since 5.2.0\n */\nclass NgbNavOutlet {\n constructor(_cd, _ngZone) {\n this._cd = _cd;\n this._ngZone = _ngZone;\n this._activePane = null;\n }\n isPanelTransitioning(item) { var _a; return ((_a = this._activePane) === null || _a === void 0 ? void 0 : _a.item) === item; }\n ngAfterViewInit() {\n var _a;\n // initial display\n this._updateActivePane();\n // this will be emitted for all 3 types of nav changes: .select(), [activeId] or (click)\n this.nav.navItemChange$\n .pipe(takeUntil(this.nav.destroy$), startWith(((_a = this._activePane) === null || _a === void 0 ? void 0 : _a.item) || null), distinctUntilChanged(), skip(1))\n .subscribe(nextItem => {\n const options = { animation: this.nav.animation, runningTransition: 'stop' };\n // next panel we're switching to will only appear in DOM after the change detection is done\n // and `this._panes` will be updated\n this._cd.detectChanges();\n // fading out\n if (this._activePane) {\n ngbRunTransition(this._ngZone, this._activePane.elRef.nativeElement, ngbNavFadeOutTransition, options)\n .subscribe(() => {\n var _a;\n const activeItem = (_a = this._activePane) === null || _a === void 0 ? void 0 : _a.item;\n this._activePane = this._getPaneForItem(nextItem);\n // mark for check when transition finishes as outlet or parent containers might be OnPush\n // without this the panes that have \"faded out\" will stay in DOM\n this._cd.markForCheck();\n // fading in\n if (this._activePane) {\n // we have to add the '.active' class before running the transition,\n // because it should be in place before `ngbRunTransition` does `reflow()`\n this._activePane.elRef.nativeElement.classList.add('active');\n ngbRunTransition(this._ngZone, this._activePane.elRef.nativeElement, ngbNavFadeInTransition, options)\n .subscribe(() => {\n if (nextItem) {\n nextItem.shown.emit();\n this.nav.shown.emit(nextItem.id);\n }\n });\n }\n if (activeItem) {\n activeItem.hidden.emit();\n this.nav.hidden.emit(activeItem.id);\n }\n });\n }\n else {\n this._updateActivePane();\n }\n });\n }\n _updateActivePane() {\n var _a, _b;\n this._activePane = this._getActivePane();\n (_a = this._activePane) === null || _a === void 0 ? void 0 : _a.elRef.nativeElement.classList.add('show');\n (_b = this._activePane) === null || _b === void 0 ? void 0 : _b.elRef.nativeElement.classList.add('active');\n }\n _getPaneForItem(item) {\n return this._panes && this._panes.find(pane => pane.item === item) || null;\n }\n _getActivePane() {\n return this._panes && this._panes.find(pane => pane.item.active) || null;\n }\n}\nNgbNavOutlet.ɵfac = function NgbNavOutlet_Factory(t) { return new (t || NgbNavOutlet)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.NgZone)); };\nNgbNavOutlet.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: NgbNavOutlet, selectors: [[\"\", \"ngbNavOutlet\", \"\"]], viewQuery: function NgbNavOutlet_Query(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵviewQuery(NgbNavPane, 1);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx._panes = _t);\n } }, hostVars: 2, hostBindings: function NgbNavOutlet_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵclassProp(\"tab-content\", true);\n } }, inputs: { paneRole: \"paneRole\", nav: [\"ngbNavOutlet\", \"nav\"] }, attrs: _c32, decls: 1, vars: 1, consts: [[\"ngFor\", \"\", 3, \"ngForOf\"], [\"ngbNavPane\", \"\", 3, \"item\", \"nav\", \"role\", 4, \"ngIf\"], [\"ngbNavPane\", \"\", 3, \"item\", \"nav\", \"role\"], [3, \"ngTemplateOutlet\", \"ngTemplateOutletContext\"]], template: function NgbNavOutlet_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵtemplate(0, NgbNavOutlet_ng_template_0_Template, 1, 1, \"ng-template\", 0);\n } if (rf & 2) {\n ɵngcc0.ɵɵproperty(\"ngForOf\", ctx.nav.items);\n } }, directives: [ɵngcc1.NgForOf, ɵngcc1.NgIf, NgbNavPane, ɵngcc1.NgTemplateOutlet], encapsulation: 2, changeDetection: 0 });\nNgbNavOutlet.ctorParameters = () => [\n { type: ChangeDetectorRef },\n { type: NgZone }\n];\nNgbNavOutlet.propDecorators = {\n _panes: [{ type: ViewChildren, args: [NgbNavPane,] }],\n paneRole: [{ type: Input }],\n nav: [{ type: Input, args: ['ngbNavOutlet',] }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbNavOutlet, [{\n type: Component,\n args: [{\n selector: '[ngbNavOutlet]',\n host: { '[class.tab-content]': 'true' },\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n \n
\n \n
\n
\n `\n }]\n }], function () { return [{ type: ɵngcc0.ChangeDetectorRef }, { type: ɵngcc0.NgZone }]; }, { _panes: [{\n type: ViewChildren,\n args: [NgbNavPane]\n }], paneRole: [{\n type: Input\n }], nav: [{\n type: Input,\n args: ['ngbNavOutlet']\n }] }); })();\n\nconst NGB_NAV_DIRECTIVES = [NgbNavContent, NgbNav, NgbNavItem, NgbNavLink, NgbNavOutlet, NgbNavPane];\nclass NgbNavModule {\n}\nNgbNavModule.ɵfac = function NgbNavModule_Factory(t) { return new (t || NgbNavModule)(); };\nNgbNavModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: NgbNavModule });\nNgbNavModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ imports: [[CommonModule]] });\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(NgbNavModule, { declarations: function () { return [NgbNavContent, NgbNav, NgbNavItem, NgbNavLink, NgbNavOutlet, NgbNavPane]; }, imports: function () { return [CommonModule]; }, exports: function () { return [NgbNavContent, NgbNav, NgbNavItem, NgbNavLink, NgbNavOutlet, NgbNavPane]; } }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbNavModule, [{\n type: NgModule,\n args: [{ declarations: NGB_NAV_DIRECTIVES, exports: NGB_NAV_DIRECTIVES, imports: [CommonModule] }]\n }], null, null); })();\n\n/**\n * A configuration service for the [`NgbPagination`](#/components/pagination/api#NgbPagination) component.\n *\n * You can inject this service, typically in your root component, and customize the values of its properties in\n * order to provide default values for all the paginations used in the application.\n */\nclass NgbPaginationConfig {\n constructor() {\n this.disabled = false;\n this.boundaryLinks = false;\n this.directionLinks = true;\n this.ellipses = true;\n this.maxSize = 0;\n this.pageSize = 10;\n this.rotate = false;\n }\n}\nNgbPaginationConfig.ɵfac = function NgbPaginationConfig_Factory(t) { return new (t || NgbPaginationConfig)(); };\nNgbPaginationConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgbPaginationConfig_Factory() { return new NgbPaginationConfig(); }, token: NgbPaginationConfig, providedIn: \"root\" });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbPaginationConfig, [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], function () { return []; }, null); })();\n\n/**\n * A directive to match the 'ellipsis' link template\n *\n * @since 4.1.0\n */\nclass NgbPaginationEllipsis {\n constructor(templateRef) {\n this.templateRef = templateRef;\n }\n}\nNgbPaginationEllipsis.ɵfac = function NgbPaginationEllipsis_Factory(t) { return new (t || NgbPaginationEllipsis)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.TemplateRef)); };\nNgbPaginationEllipsis.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbPaginationEllipsis, selectors: [[\"ng-template\", \"ngbPaginationEllipsis\", \"\"]] });\nNgbPaginationEllipsis.ctorParameters = () => [\n { type: TemplateRef }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbPaginationEllipsis, [{\n type: Directive,\n args: [{ selector: 'ng-template[ngbPaginationEllipsis]' }]\n }], function () { return [{ type: ɵngcc0.TemplateRef }]; }, null); })();\n/**\n * A directive to match the 'first' link template\n *\n * @since 4.1.0\n */\nclass NgbPaginationFirst {\n constructor(templateRef) {\n this.templateRef = templateRef;\n }\n}\nNgbPaginationFirst.ɵfac = function NgbPaginationFirst_Factory(t) { return new (t || NgbPaginationFirst)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.TemplateRef)); };\nNgbPaginationFirst.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbPaginationFirst, selectors: [[\"ng-template\", \"ngbPaginationFirst\", \"\"]] });\nNgbPaginationFirst.ctorParameters = () => [\n { type: TemplateRef }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbPaginationFirst, [{\n type: Directive,\n args: [{ selector: 'ng-template[ngbPaginationFirst]' }]\n }], function () { return [{ type: ɵngcc0.TemplateRef }]; }, null); })();\n/**\n * A directive to match the 'last' link template\n *\n * @since 4.1.0\n */\nclass NgbPaginationLast {\n constructor(templateRef) {\n this.templateRef = templateRef;\n }\n}\nNgbPaginationLast.ɵfac = function NgbPaginationLast_Factory(t) { return new (t || NgbPaginationLast)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.TemplateRef)); };\nNgbPaginationLast.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbPaginationLast, selectors: [[\"ng-template\", \"ngbPaginationLast\", \"\"]] });\nNgbPaginationLast.ctorParameters = () => [\n { type: TemplateRef }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbPaginationLast, [{\n type: Directive,\n args: [{ selector: 'ng-template[ngbPaginationLast]' }]\n }], function () { return [{ type: ɵngcc0.TemplateRef }]; }, null); })();\n/**\n * A directive to match the 'next' link template\n *\n * @since 4.1.0\n */\nclass NgbPaginationNext {\n constructor(templateRef) {\n this.templateRef = templateRef;\n }\n}\nNgbPaginationNext.ɵfac = function NgbPaginationNext_Factory(t) { return new (t || NgbPaginationNext)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.TemplateRef)); };\nNgbPaginationNext.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbPaginationNext, selectors: [[\"ng-template\", \"ngbPaginationNext\", \"\"]] });\nNgbPaginationNext.ctorParameters = () => [\n { type: TemplateRef }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbPaginationNext, [{\n type: Directive,\n args: [{ selector: 'ng-template[ngbPaginationNext]' }]\n }], function () { return [{ type: ɵngcc0.TemplateRef }]; }, null); })();\n/**\n * A directive to match the page 'number' link template\n *\n * @since 4.1.0\n */\nclass NgbPaginationNumber {\n constructor(templateRef) {\n this.templateRef = templateRef;\n }\n}\nNgbPaginationNumber.ɵfac = function NgbPaginationNumber_Factory(t) { return new (t || NgbPaginationNumber)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.TemplateRef)); };\nNgbPaginationNumber.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbPaginationNumber, selectors: [[\"ng-template\", \"ngbPaginationNumber\", \"\"]] });\nNgbPaginationNumber.ctorParameters = () => [\n { type: TemplateRef }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbPaginationNumber, [{\n type: Directive,\n args: [{ selector: 'ng-template[ngbPaginationNumber]' }]\n }], function () { return [{ type: ɵngcc0.TemplateRef }]; }, null); })();\n/**\n * A directive to match the 'previous' link template\n *\n * @since 4.1.0\n */\nclass NgbPaginationPrevious {\n constructor(templateRef) {\n this.templateRef = templateRef;\n }\n}\nNgbPaginationPrevious.ɵfac = function NgbPaginationPrevious_Factory(t) { return new (t || NgbPaginationPrevious)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.TemplateRef)); };\nNgbPaginationPrevious.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbPaginationPrevious, selectors: [[\"ng-template\", \"ngbPaginationPrevious\", \"\"]] });\nNgbPaginationPrevious.ctorParameters = () => [\n { type: TemplateRef }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbPaginationPrevious, [{\n type: Directive,\n args: [{ selector: 'ng-template[ngbPaginationPrevious]' }]\n }], function () { return [{ type: ɵngcc0.TemplateRef }]; }, null); })();\n/**\n * A directive to match the 'pages' whole content\n *\n * @since 9.1.0\n */\nclass NgbPaginationPages {\n constructor(templateRef) {\n this.templateRef = templateRef;\n }\n}\nNgbPaginationPages.ɵfac = function NgbPaginationPages_Factory(t) { return new (t || NgbPaginationPages)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.TemplateRef)); };\nNgbPaginationPages.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbPaginationPages, selectors: [[\"ng-template\", \"ngbPaginationPages\", \"\"]] });\nNgbPaginationPages.ctorParameters = () => [\n { type: TemplateRef }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbPaginationPages, [{\n type: Directive,\n args: [{ selector: 'ng-template[ngbPaginationPages]' }]\n }], function () { return [{ type: ɵngcc0.TemplateRef }]; }, null); })();\n/**\n * A component that displays page numbers and allows to customize them in several ways.\n */\nclass NgbPagination {\n constructor(config) {\n this.pageCount = 0;\n this.pages = [];\n /**\n * The current page.\n *\n * Page numbers start with `1`.\n */\n this.page = 1;\n /**\n * An event fired when the page is changed. Will fire only if collection size is set and all values are valid.\n *\n * Event payload is the number of the newly selected page.\n *\n * Page numbers start with `1`.\n */\n this.pageChange = new EventEmitter(true);\n this.disabled = config.disabled;\n this.boundaryLinks = config.boundaryLinks;\n this.directionLinks = config.directionLinks;\n this.ellipses = config.ellipses;\n this.maxSize = config.maxSize;\n this.pageSize = config.pageSize;\n this.rotate = config.rotate;\n this.size = config.size;\n }\n hasPrevious() { return this.page > 1; }\n hasNext() { return this.page < this.pageCount; }\n nextDisabled() { return !this.hasNext() || this.disabled; }\n previousDisabled() { return !this.hasPrevious() || this.disabled; }\n selectPage(pageNumber) { this._updatePages(pageNumber); }\n ngOnChanges(changes) { this._updatePages(this.page); }\n isEllipsis(pageNumber) { return pageNumber === -1; }\n /**\n * Appends ellipses and first/last page number to the displayed pages\n */\n _applyEllipses(start, end) {\n if (this.ellipses) {\n if (start > 0) {\n // The first page will always be included. If the displayed range\n // starts after the third page, then add ellipsis. But if the range\n // starts on the third page, then add the second page instead of\n // an ellipsis, because the ellipsis would only hide a single page.\n if (start > 2) {\n this.pages.unshift(-1);\n }\n else if (start === 2) {\n this.pages.unshift(2);\n }\n this.pages.unshift(1);\n }\n if (end < this.pageCount) {\n // The last page will always be included. If the displayed range\n // ends before the third-last page, then add ellipsis. But if the range\n // ends on third-last page, then add the second-last page instead of\n // an ellipsis, because the ellipsis would only hide a single page.\n if (end < (this.pageCount - 2)) {\n this.pages.push(-1);\n }\n else if (end === (this.pageCount - 2)) {\n this.pages.push(this.pageCount - 1);\n }\n this.pages.push(this.pageCount);\n }\n }\n }\n /**\n * Rotates page numbers based on maxSize items visible.\n * Currently selected page stays in the middle:\n *\n * Ex. for selected page = 6:\n * [5,*6*,7] for maxSize = 3\n * [4,5,*6*,7] for maxSize = 4\n */\n _applyRotation() {\n let start = 0;\n let end = this.pageCount;\n let leftOffset = Math.floor(this.maxSize / 2);\n let rightOffset = this.maxSize % 2 === 0 ? leftOffset - 1 : leftOffset;\n if (this.page <= leftOffset) {\n // very beginning, no rotation -> [0..maxSize]\n end = this.maxSize;\n }\n else if (this.pageCount - this.page < leftOffset) {\n // very end, no rotation -> [len-maxSize..len]\n start = this.pageCount - this.maxSize;\n }\n else {\n // rotate\n start = this.page - leftOffset - 1;\n end = this.page + rightOffset;\n }\n return [start, end];\n }\n /**\n * Paginates page numbers based on maxSize items per page.\n */\n _applyPagination() {\n let page = Math.ceil(this.page / this.maxSize) - 1;\n let start = page * this.maxSize;\n let end = start + this.maxSize;\n return [start, end];\n }\n _setPageInRange(newPageNo) {\n const prevPageNo = this.page;\n this.page = getValueInRange(newPageNo, this.pageCount, 1);\n if (this.page !== prevPageNo && isNumber(this.collectionSize)) {\n this.pageChange.emit(this.page);\n }\n }\n _updatePages(newPage) {\n this.pageCount = Math.ceil(this.collectionSize / this.pageSize);\n if (!isNumber(this.pageCount)) {\n this.pageCount = 0;\n }\n // fill-in model needed to render pages\n this.pages.length = 0;\n for (let i = 1; i <= this.pageCount; i++) {\n this.pages.push(i);\n }\n // set page within 1..max range\n this._setPageInRange(newPage);\n // apply maxSize if necessary\n if (this.maxSize > 0 && this.pageCount > this.maxSize) {\n let start = 0;\n let end = this.pageCount;\n // either paginating or rotating page numbers\n if (this.rotate) {\n [start, end] = this._applyRotation();\n }\n else {\n [start, end] = this._applyPagination();\n }\n this.pages = this.pages.slice(start, end);\n // adding ellipses\n this._applyEllipses(start, end);\n }\n }\n}\nNgbPagination.ɵfac = function NgbPagination_Factory(t) { return new (t || NgbPagination)(ɵngcc0.ɵɵdirectiveInject(NgbPaginationConfig)); };\nNgbPagination.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: NgbPagination, selectors: [[\"ngb-pagination\"]], contentQueries: function NgbPagination_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {\n ɵngcc0.ɵɵcontentQuery(dirIndex, NgbPaginationEllipsis, 1);\n ɵngcc0.ɵɵcontentQuery(dirIndex, NgbPaginationFirst, 1);\n ɵngcc0.ɵɵcontentQuery(dirIndex, NgbPaginationLast, 1);\n ɵngcc0.ɵɵcontentQuery(dirIndex, NgbPaginationNext, 1);\n ɵngcc0.ɵɵcontentQuery(dirIndex, NgbPaginationNumber, 1);\n ɵngcc0.ɵɵcontentQuery(dirIndex, NgbPaginationPrevious, 1);\n ɵngcc0.ɵɵcontentQuery(dirIndex, NgbPaginationPages, 1);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.tplEllipsis = _t.first);\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.tplFirst = _t.first);\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.tplLast = _t.first);\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.tplNext = _t.first);\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.tplNumber = _t.first);\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.tplPrevious = _t.first);\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.tplPages = _t.first);\n } }, hostAttrs: [\"role\", \"navigation\"], inputs: { page: \"page\", disabled: \"disabled\", boundaryLinks: \"boundaryLinks\", directionLinks: \"directionLinks\", ellipses: \"ellipses\", maxSize: \"maxSize\", pageSize: \"pageSize\", rotate: \"rotate\", size: \"size\", collectionSize: \"collectionSize\" }, outputs: { pageChange: \"pageChange\" }, features: [ɵngcc0.ɵɵNgOnChangesFeature], decls: 20, vars: 12, consts: function () { let i18n_34; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_pagination_first$$FESM2015_NG_BOOTSTRAP_JS__35 = goog.getMsg(\"\\u00AB\\u00AB\");\n i18n_34 = MSG_EXTERNAL_ngb_pagination_first$$FESM2015_NG_BOOTSTRAP_JS__35;\n }\n else {\n i18n_34 = $localize `:@@ngb.pagination.first␟656506dfd46380956a655f919f1498d018f75ca0␟6867721956102594380:««`;\n } let i18n_36; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_pagination_previous$$FESM2015_NG_BOOTSTRAP_JS__37 = goog.getMsg(\"\\u00AB\");\n i18n_36 = MSG_EXTERNAL_ngb_pagination_previous$$FESM2015_NG_BOOTSTRAP_JS__37;\n }\n else {\n i18n_36 = $localize `:@@ngb.pagination.previous␟6e52b6ee77a4848d899dd21b591c6fd499e3aef3␟6479320895410098858:«`;\n } let i18n_38; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_pagination_next$$FESM2015_NG_BOOTSTRAP_JS__39 = goog.getMsg(\"\\u00BB\");\n i18n_38 = MSG_EXTERNAL_ngb_pagination_next$$FESM2015_NG_BOOTSTRAP_JS__39;\n }\n else {\n i18n_38 = $localize `:@@ngb.pagination.next␟ba9cbb4ff311464308a3627e4f1c3345d9fe6d7d␟5458177150283468089:»`;\n } let i18n_40; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_pagination_last$$FESM2015_NG_BOOTSTRAP_JS__41 = goog.getMsg(\"\\u00BB\\u00BB\");\n i18n_40 = MSG_EXTERNAL_ngb_pagination_last$$FESM2015_NG_BOOTSTRAP_JS__41;\n }\n else {\n i18n_40 = $localize `:@@ngb.pagination.last␟49f27a460bc97e7e00be5b37098bfa79884fc7d9␟5277020320267646988:»»`;\n } let i18n_44; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_pagination_first_aria$$FESM2015_NG_BOOTSTRAP_JS__45 = goog.getMsg(\"First\");\n i18n_44 = MSG_EXTERNAL_ngb_pagination_first_aria$$FESM2015_NG_BOOTSTRAP_JS__45;\n }\n else {\n i18n_44 = $localize `:@@ngb.pagination.first-aria␟f2f852318759c6396b5d3d17031d53817d7b38cc␟2241508602425256033:First`;\n } let i18n_47; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_pagination_previous_aria$$FESM2015_NG_BOOTSTRAP_JS__48 = goog.getMsg(\"Previous\");\n i18n_47 = MSG_EXTERNAL_ngb_pagination_previous_aria$$FESM2015_NG_BOOTSTRAP_JS__48;\n }\n else {\n i18n_47 = $localize `:@@ngb.pagination.previous-aria␟680d5c75b7fd8d37961083608b9fcdc4167b4c43␟4452427314943113135:Previous`;\n } let i18n_50; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_pagination_next_aria$$FESM2015_NG_BOOTSTRAP_JS__51 = goog.getMsg(\"Next\");\n i18n_50 = MSG_EXTERNAL_ngb_pagination_next_aria$$FESM2015_NG_BOOTSTRAP_JS__51;\n }\n else {\n i18n_50 = $localize `:@@ngb.pagination.next-aria␟f732c304c7433e5a83ffcd862c3dce709a0f4982␟3885497195825665706:Next`;\n } let i18n_52; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_pagination_last_aria$$FESM2015_NG_BOOTSTRAP_JS__53 = goog.getMsg(\"Last\");\n i18n_52 = MSG_EXTERNAL_ngb_pagination_last_aria$$FESM2015_NG_BOOTSTRAP_JS__53;\n }\n else {\n i18n_52 = $localize `:@@ngb.pagination.last-aria␟5c729788ba138508aca1bec050b610f7bf81db3e␟4882268002141858767:Last`;\n } return [[\"first\", \"\"], [\"previous\", \"\"], [\"next\", \"\"], [\"last\", \"\"], [\"ellipsis\", \"\"], [\"defaultNumber\", \"\"], [\"defaultPages\", \"\"], [\"class\", \"page-item\", 3, \"disabled\", 4, \"ngIf\"], [3, \"ngTemplateOutlet\", \"ngTemplateOutletContext\"], [\"aria-hidden\", \"true\"], i18n_34, i18n_36, i18n_38, i18n_40, [\"class\", \"sr-only\", 4, \"ngIf\"], [1, \"sr-only\"], [\"class\", \"page-item\", 3, \"active\", \"disabled\", 4, \"ngFor\", \"ngForOf\"], [1, \"page-item\"], [\"class\", \"page-link\", \"tabindex\", \"-1\", \"aria-disabled\", \"true\", 4, \"ngIf\"], [\"class\", \"page-link\", \"href\", \"\", 3, \"click\", 4, \"ngIf\"], [\"tabindex\", \"-1\", \"aria-disabled\", \"true\", 1, \"page-link\"], [\"href\", \"\", 1, \"page-link\", 3, \"click\"], [\"aria-label\", i18n_44, \"href\", \"\", 1, \"page-link\", 3, \"click\"], [\"aria-label\", i18n_47, \"href\", \"\", 1, \"page-link\", 3, \"click\"], [\"aria-label\", i18n_50, \"href\", \"\", 1, \"page-link\", 3, \"click\"], [\"aria-label\", i18n_52, \"href\", \"\", 1, \"page-link\", 3, \"click\"]]; }, template: function NgbPagination_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵtemplate(0, NgbPagination_ng_template_0_Template, 2, 0, \"ng-template\", null, 0, ɵngcc0.ɵɵtemplateRefExtractor);\n ɵngcc0.ɵɵtemplate(2, NgbPagination_ng_template_2_Template, 2, 0, \"ng-template\", null, 1, ɵngcc0.ɵɵtemplateRefExtractor);\n ɵngcc0.ɵɵtemplate(4, NgbPagination_ng_template_4_Template, 2, 0, \"ng-template\", null, 2, ɵngcc0.ɵɵtemplateRefExtractor);\n ɵngcc0.ɵɵtemplate(6, NgbPagination_ng_template_6_Template, 2, 0, \"ng-template\", null, 3, ɵngcc0.ɵɵtemplateRefExtractor);\n ɵngcc0.ɵɵtemplate(8, NgbPagination_ng_template_8_Template, 1, 0, \"ng-template\", null, 4, ɵngcc0.ɵɵtemplateRefExtractor);\n ɵngcc0.ɵɵtemplate(10, NgbPagination_ng_template_10_Template, 2, 2, \"ng-template\", null, 5, ɵngcc0.ɵɵtemplateRefExtractor);\n ɵngcc0.ɵɵtemplate(12, NgbPagination_ng_template_12_Template, 1, 1, \"ng-template\", null, 6, ɵngcc0.ɵɵtemplateRefExtractor);\n ɵngcc0.ɵɵelementStart(14, \"ul\");\n ɵngcc0.ɵɵtemplate(15, NgbPagination_li_15_Template, 3, 9, \"li\", 7);\n ɵngcc0.ɵɵtemplate(16, NgbPagination_li_16_Template, 3, 8, \"li\", 7);\n ɵngcc0.ɵɵtemplate(17, NgbPagination_ng_template_17_Template, 0, 0, \"ng-template\", 8);\n ɵngcc0.ɵɵtemplate(18, NgbPagination_li_18_Template, 3, 9, \"li\", 7);\n ɵngcc0.ɵɵtemplate(19, NgbPagination_li_19_Template, 3, 9, \"li\", 7);\n ɵngcc0.ɵɵelementEnd();\n } if (rf & 2) {\n const _r12 = ɵngcc0.ɵɵreference(13);\n ɵngcc0.ɵɵadvance(14);\n ɵngcc0.ɵɵclassMap(\"pagination\" + (ctx.size ? \" pagination-\" + ctx.size : \"\"));\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.boundaryLinks);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.directionLinks);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngTemplateOutlet\", (ctx.tplPages == null ? null : ctx.tplPages.templateRef) || _r12)(\"ngTemplateOutletContext\", ɵngcc0.ɵɵpureFunction3(8, _c54, ctx.page, ctx.pages, ctx.disabled));\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.directionLinks);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.boundaryLinks);\n } }, directives: [ɵngcc1.NgIf, ɵngcc1.NgTemplateOutlet, ɵngcc1.NgForOf], encapsulation: 2, changeDetection: 0 });\nNgbPagination.ctorParameters = () => [\n { type: NgbPaginationConfig }\n];\nNgbPagination.propDecorators = {\n tplEllipsis: [{ type: ContentChild, args: [NgbPaginationEllipsis, { static: false },] }],\n tplFirst: [{ type: ContentChild, args: [NgbPaginationFirst, { static: false },] }],\n tplLast: [{ type: ContentChild, args: [NgbPaginationLast, { static: false },] }],\n tplNext: [{ type: ContentChild, args: [NgbPaginationNext, { static: false },] }],\n tplNumber: [{ type: ContentChild, args: [NgbPaginationNumber, { static: false },] }],\n tplPrevious: [{ type: ContentChild, args: [NgbPaginationPrevious, { static: false },] }],\n tplPages: [{ type: ContentChild, args: [NgbPaginationPages, { static: false },] }],\n disabled: [{ type: Input }],\n boundaryLinks: [{ type: Input }],\n directionLinks: [{ type: Input }],\n ellipses: [{ type: Input }],\n rotate: [{ type: Input }],\n collectionSize: [{ type: Input }],\n maxSize: [{ type: Input }],\n page: [{ type: Input }],\n pageSize: [{ type: Input }],\n pageChange: [{ type: Output }],\n size: [{ type: Input }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbPagination, [{\n type: Component,\n args: [{\n selector: 'ngb-pagination',\n changeDetection: ChangeDetectionStrategy.OnPush,\n host: { 'role': 'navigation' },\n template: `\n ««\n «\n »\n »»\n ...\n \n {{ page }}\n (current)\n \n \n
  • \n \n \n \n \n \n \n
  • \n
    \n \n `\n }]\n }], function () { return [{ type: NgbPaginationConfig }]; }, { page: [{\n type: Input\n }], pageChange: [{\n type: Output\n }], disabled: [{\n type: Input\n }], boundaryLinks: [{\n type: Input\n }], directionLinks: [{\n type: Input\n }], ellipses: [{\n type: Input\n }], maxSize: [{\n type: Input\n }], pageSize: [{\n type: Input\n }], rotate: [{\n type: Input\n }], size: [{\n type: Input\n }], tplEllipsis: [{\n type: ContentChild,\n args: [NgbPaginationEllipsis, { static: false }]\n }], tplFirst: [{\n type: ContentChild,\n args: [NgbPaginationFirst, { static: false }]\n }], tplLast: [{\n type: ContentChild,\n args: [NgbPaginationLast, { static: false }]\n }], tplNext: [{\n type: ContentChild,\n args: [NgbPaginationNext, { static: false }]\n }], tplNumber: [{\n type: ContentChild,\n args: [NgbPaginationNumber, { static: false }]\n }], tplPrevious: [{\n type: ContentChild,\n args: [NgbPaginationPrevious, { static: false }]\n }], tplPages: [{\n type: ContentChild,\n args: [NgbPaginationPages, { static: false }]\n }], collectionSize: [{\n type: Input\n }] }); })();\n\nconst DIRECTIVES = [\n NgbPagination, NgbPaginationEllipsis, NgbPaginationFirst, NgbPaginationLast, NgbPaginationNext, NgbPaginationNumber,\n NgbPaginationPrevious, NgbPaginationPages\n];\nclass NgbPaginationModule {\n}\nNgbPaginationModule.ɵfac = function NgbPaginationModule_Factory(t) { return new (t || NgbPaginationModule)(); };\nNgbPaginationModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: NgbPaginationModule });\nNgbPaginationModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ imports: [[CommonModule]] });\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(NgbPaginationModule, { declarations: function () { return [NgbPagination, NgbPaginationEllipsis, NgbPaginationFirst, NgbPaginationLast, NgbPaginationNext, NgbPaginationNumber, NgbPaginationPrevious, NgbPaginationPages]; }, imports: function () { return [CommonModule]; }, exports: function () { return [NgbPagination, NgbPaginationEllipsis, NgbPaginationFirst, NgbPaginationLast, NgbPaginationNext, NgbPaginationNumber, NgbPaginationPrevious, NgbPaginationPages]; } }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbPaginationModule, [{\n type: NgModule,\n args: [{ declarations: DIRECTIVES, exports: DIRECTIVES, imports: [CommonModule] }]\n }], null, null); })();\n\nclass Trigger {\n constructor(open, close) {\n this.open = open;\n this.close = close;\n if (!close) {\n this.close = open;\n }\n }\n isManual() { return this.open === 'manual' || this.close === 'manual'; }\n}\nconst DEFAULT_ALIASES = {\n 'hover': ['mouseenter', 'mouseleave'],\n 'focus': ['focusin', 'focusout'],\n};\nfunction parseTriggers(triggers, aliases = DEFAULT_ALIASES) {\n const trimmedTriggers = (triggers || '').trim();\n if (trimmedTriggers.length === 0) {\n return [];\n }\n const parsedTriggers = trimmedTriggers.split(/\\s+/).map(trigger => trigger.split(':')).map((triggerPair) => {\n let alias = aliases[triggerPair[0]] || triggerPair;\n return new Trigger(alias[0], alias[1]);\n });\n const manualTriggers = parsedTriggers.filter(triggerPair => triggerPair.isManual());\n if (manualTriggers.length > 1) {\n throw 'Triggers parse error: only one manual trigger is allowed';\n }\n if (manualTriggers.length === 1 && parsedTriggers.length > 1) {\n throw 'Triggers parse error: manual trigger can\\'t be mixed with other triggers';\n }\n return parsedTriggers;\n}\nfunction observeTriggers(renderer, nativeElement, triggers, isOpenedFn) {\n return new Observable(subscriber => {\n const listeners = [];\n const openFn = () => subscriber.next(true);\n const closeFn = () => subscriber.next(false);\n const toggleFn = () => subscriber.next(!isOpenedFn());\n triggers.forEach((trigger) => {\n if (trigger.open === trigger.close) {\n listeners.push(renderer.listen(nativeElement, trigger.open, toggleFn));\n }\n else {\n listeners.push(renderer.listen(nativeElement, trigger.open, openFn), renderer.listen(nativeElement, trigger.close, closeFn));\n }\n });\n return () => { listeners.forEach(unsubscribeFn => unsubscribeFn()); };\n });\n}\nconst delayOrNoop = (time) => time > 0 ? delay(time) : (a) => a;\nconst ɵ0 = delayOrNoop;\nfunction triggerDelay(openDelay, closeDelay, isOpenedFn) {\n return (input$) => {\n let pending = null;\n const filteredInput$ = input$.pipe(map(open => ({ open })), filter(event => {\n const currentlyOpen = isOpenedFn();\n if (currentlyOpen !== event.open && (!pending || pending.open === currentlyOpen)) {\n pending = event;\n return true;\n }\n if (pending && pending.open !== event.open) {\n pending = null;\n }\n return false;\n }), share());\n const delayedOpen$ = filteredInput$.pipe(filter(event => event.open), delayOrNoop(openDelay));\n const delayedClose$ = filteredInput$.pipe(filter(event => !event.open), delayOrNoop(closeDelay));\n return merge(delayedOpen$, delayedClose$)\n .pipe(filter(event => {\n if (event === pending) {\n pending = null;\n return event.open !== isOpenedFn();\n }\n return false;\n }), map(event => event.open));\n };\n}\nfunction listenToTriggers(renderer, nativeElement, triggers, isOpenedFn, openFn, closeFn, openDelay = 0, closeDelay = 0) {\n const parsedTriggers = parseTriggers(triggers);\n if (parsedTriggers.length === 1 && parsedTriggers[0].isManual()) {\n return () => { };\n }\n const subscription = observeTriggers(renderer, nativeElement, parsedTriggers, isOpenedFn)\n .pipe(triggerDelay(openDelay, closeDelay, isOpenedFn))\n .subscribe(open => (open ? openFn() : closeFn()));\n return () => subscription.unsubscribe();\n}\n\n/**\n * A configuration service for the [`NgbPopover`](#/components/popover/api#NgbPopover) component.\n *\n * You can inject this service, typically in your root component, and customize the values of its properties in\n * order to provide default values for all the popovers used in the application.\n */\nclass NgbPopoverConfig {\n constructor(_ngbConfig) {\n this._ngbConfig = _ngbConfig;\n this.autoClose = true;\n this.placement = 'auto';\n this.triggers = 'click';\n this.disablePopover = false;\n this.openDelay = 0;\n this.closeDelay = 0;\n }\n get animation() { return (this._animation === undefined) ? this._ngbConfig.animation : this._animation; }\n set animation(animation) { this._animation = animation; }\n}\nNgbPopoverConfig.ɵfac = function NgbPopoverConfig_Factory(t) { return new (t || NgbPopoverConfig)(ɵngcc0.ɵɵinject(NgbConfig)); };\nNgbPopoverConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgbPopoverConfig_Factory() { return new NgbPopoverConfig(i0.ɵɵinject(NgbConfig)); }, token: NgbPopoverConfig, providedIn: \"root\" });\nNgbPopoverConfig.ctorParameters = () => [\n { type: NgbConfig }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbPopoverConfig, [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], function () { return [{ type: NgbConfig }]; }, null); })();\n\nlet nextId$1 = 0;\nclass NgbPopoverWindow {\n isTitleTemplate() { return this.title instanceof TemplateRef; }\n}\nNgbPopoverWindow.ɵfac = function NgbPopoverWindow_Factory(t) { return new (t || NgbPopoverWindow)(); };\nNgbPopoverWindow.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: NgbPopoverWindow, selectors: [[\"ngb-popover-window\"]], hostAttrs: [\"role\", \"tooltip\"], hostVars: 5, hostBindings: function NgbPopoverWindow_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵhostProperty(\"id\", ctx.id);\n ɵngcc0.ɵɵclassMap(\"popover\" + (ctx.popoverClass ? \" \" + ctx.popoverClass : \"\"));\n ɵngcc0.ɵɵclassProp(\"fade\", ctx.animation);\n } }, inputs: { animation: \"animation\", title: \"title\", id: \"id\", popoverClass: \"popoverClass\", context: \"context\" }, ngContentSelectors: _c3, decls: 4, vars: 1, consts: [[1, \"arrow\"], [\"class\", \"popover-header\", 4, \"ngIf\"], [1, \"popover-body\"], [1, \"popover-header\"], [\"simpleTitle\", \"\"], [3, \"ngTemplateOutlet\", \"ngTemplateOutletContext\"]], template: function NgbPopoverWindow_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵelement(0, \"div\", 0);\n ɵngcc0.ɵɵtemplate(1, NgbPopoverWindow_h3_1_Template, 4, 2, \"h3\", 1);\n ɵngcc0.ɵɵelementStart(2, \"div\", 2);\n ɵngcc0.ɵɵprojection(3);\n ɵngcc0.ɵɵelementEnd();\n } if (rf & 2) {\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.title);\n } }, directives: [ɵngcc1.NgIf, ɵngcc1.NgTemplateOutlet], styles: [\"ngb-popover-window.bs-popover-bottom>.arrow,ngb-popover-window.bs-popover-top>.arrow{left:50%;margin-left:-.5rem}ngb-popover-window.bs-popover-bottom-left>.arrow,ngb-popover-window.bs-popover-top-left>.arrow{left:2em}ngb-popover-window.bs-popover-bottom-right>.arrow,ngb-popover-window.bs-popover-top-right>.arrow{left:auto;right:2em}ngb-popover-window.bs-popover-left>.arrow,ngb-popover-window.bs-popover-right>.arrow{top:50%;margin-top:-.5rem}ngb-popover-window.bs-popover-left-top>.arrow,ngb-popover-window.bs-popover-right-top>.arrow{top:.7em}ngb-popover-window.bs-popover-left-bottom>.arrow,ngb-popover-window.bs-popover-right-bottom>.arrow{top:auto;bottom:.7em}\"], encapsulation: 2, changeDetection: 0 });\nNgbPopoverWindow.propDecorators = {\n animation: [{ type: Input }],\n title: [{ type: Input }],\n id: [{ type: Input }],\n popoverClass: [{ type: Input }],\n context: [{ type: Input }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbPopoverWindow, [{\n type: Component,\n args: [{\n selector: 'ngb-popover-window',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class]': '\"popover\" + (popoverClass ? \" \" + popoverClass : \"\")',\n '[class.fade]': 'animation',\n 'role': 'tooltip',\n '[id]': 'id'\n },\n template: `\n
    \n

    \n {{title}}\n \n

    \n
    `,\n styles: [\"ngb-popover-window.bs-popover-bottom>.arrow,ngb-popover-window.bs-popover-top>.arrow{left:50%;margin-left:-.5rem}ngb-popover-window.bs-popover-bottom-left>.arrow,ngb-popover-window.bs-popover-top-left>.arrow{left:2em}ngb-popover-window.bs-popover-bottom-right>.arrow,ngb-popover-window.bs-popover-top-right>.arrow{left:auto;right:2em}ngb-popover-window.bs-popover-left>.arrow,ngb-popover-window.bs-popover-right>.arrow{top:50%;margin-top:-.5rem}ngb-popover-window.bs-popover-left-top>.arrow,ngb-popover-window.bs-popover-right-top>.arrow{top:.7em}ngb-popover-window.bs-popover-left-bottom>.arrow,ngb-popover-window.bs-popover-right-bottom>.arrow{top:auto;bottom:.7em}\"]\n }]\n }], null, { animation: [{\n type: Input\n }], title: [{\n type: Input\n }], id: [{\n type: Input\n }], popoverClass: [{\n type: Input\n }], context: [{\n type: Input\n }] }); })();\n/**\n * A lightweight and extensible directive for fancy popover creation.\n */\nclass NgbPopover {\n constructor(_elementRef, _renderer, injector, componentFactoryResolver, viewContainerRef, config, _ngZone, _document, _changeDetector, applicationRef) {\n this._elementRef = _elementRef;\n this._renderer = _renderer;\n this._ngZone = _ngZone;\n this._document = _document;\n this._changeDetector = _changeDetector;\n /**\n * An event emitted when the popover opening animation has finished. Contains no payload.\n */\n this.shown = new EventEmitter();\n /**\n * An event emitted when the popover closing animation has finished. Contains no payload.\n *\n * At this point popover is not in the DOM anymore.\n */\n this.hidden = new EventEmitter();\n this._ngbPopoverWindowId = `ngb-popover-${nextId$1++}`;\n this._windowRef = null;\n this.animation = config.animation;\n this.autoClose = config.autoClose;\n this.placement = config.placement;\n this.triggers = config.triggers;\n this.container = config.container;\n this.disablePopover = config.disablePopover;\n this.popoverClass = config.popoverClass;\n this.openDelay = config.openDelay;\n this.closeDelay = config.closeDelay;\n this._popupService = new PopupService(NgbPopoverWindow, injector, viewContainerRef, _renderer, this._ngZone, componentFactoryResolver, applicationRef);\n this._zoneSubscription = _ngZone.onStable.subscribe(() => {\n if (this._windowRef) {\n positionElements(this._elementRef.nativeElement, this._windowRef.location.nativeElement, this.placement, this.container === 'body', 'bs-popover');\n }\n });\n }\n _isDisabled() {\n if (this.disablePopover) {\n return true;\n }\n if (!this.ngbPopover && !this.popoverTitle) {\n return true;\n }\n return false;\n }\n /**\n * Opens the popover.\n *\n * This is considered to be a \"manual\" triggering.\n * The `context` is an optional value to be injected into the popover template when it is created.\n */\n open(context) {\n if (!this._windowRef && !this._isDisabled()) {\n // this type assertion is safe because otherwise _isDisabled would return true\n const { windowRef, transition$ } = this._popupService.open(this.ngbPopover, context, this.animation);\n this._windowRef = windowRef;\n this._windowRef.instance.animation = this.animation;\n this._windowRef.instance.title = this.popoverTitle;\n this._windowRef.instance.context = context;\n this._windowRef.instance.popoverClass = this.popoverClass;\n this._windowRef.instance.id = this._ngbPopoverWindowId;\n this._renderer.setAttribute(this._elementRef.nativeElement, 'aria-describedby', this._ngbPopoverWindowId);\n if (this.container === 'body') {\n this._document.querySelector(this.container).appendChild(this._windowRef.location.nativeElement);\n }\n // We need to detect changes, because we don't know where .open() might be called from.\n // Ex. opening popover from one of lifecycle hooks that run after the CD\n // (say from ngAfterViewInit) will result in 'ExpressionHasChanged' exception\n this._windowRef.changeDetectorRef.detectChanges();\n // We need to mark for check, because popover won't work inside the OnPush component.\n // Ex. when we use expression like `{{ popover.isOpen() : 'opened' : 'closed' }}`\n // inside the template of an OnPush component and we change the popover from\n // open -> closed, the expression in question won't be updated unless we explicitly\n // mark the parent component to be checked.\n this._windowRef.changeDetectorRef.markForCheck();\n ngbAutoClose(this._ngZone, this._document, this.autoClose, () => this.close(), this.hidden, [this._windowRef.location.nativeElement]);\n transition$.subscribe(() => this.shown.emit());\n }\n }\n /**\n * Closes the popover.\n *\n * This is considered to be a \"manual\" triggering of the popover.\n */\n close() {\n if (this._windowRef) {\n this._renderer.removeAttribute(this._elementRef.nativeElement, 'aria-describedby');\n this._popupService.close(this.animation).subscribe(() => {\n this._windowRef = null;\n this.hidden.emit();\n this._changeDetector.markForCheck();\n });\n }\n }\n /**\n * Toggles the popover.\n *\n * This is considered to be a \"manual\" triggering of the popover.\n */\n toggle() {\n if (this._windowRef) {\n this.close();\n }\n else {\n this.open();\n }\n }\n /**\n * Returns `true`, if the popover is currently shown.\n */\n isOpen() { return this._windowRef != null; }\n ngOnInit() {\n this._unregisterListenersFn = listenToTriggers(this._renderer, this._elementRef.nativeElement, this.triggers, this.isOpen.bind(this), this.open.bind(this), this.close.bind(this), +this.openDelay, +this.closeDelay);\n }\n ngOnChanges({ ngbPopover, popoverTitle, disablePopover, popoverClass }) {\n if (popoverClass && this.isOpen()) {\n this._windowRef.instance.popoverClass = popoverClass.currentValue;\n }\n // close popover if title and content become empty, or disablePopover set to true\n if ((ngbPopover || popoverTitle || disablePopover) && this._isDisabled()) {\n this.close();\n }\n }\n ngOnDestroy() {\n this.close();\n // This check is needed as it might happen that ngOnDestroy is called before ngOnInit\n // under certain conditions, see: https://github.com/ng-bootstrap/ng-bootstrap/issues/2199\n if (this._unregisterListenersFn) {\n this._unregisterListenersFn();\n }\n this._zoneSubscription.unsubscribe();\n }\n}\nNgbPopover.ɵfac = function NgbPopover_Factory(t) { return new (t || NgbPopover)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Injector), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ComponentFactoryResolver), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ViewContainerRef), ɵngcc0.ɵɵdirectiveInject(NgbPopoverConfig), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.NgZone), ɵngcc0.ɵɵdirectiveInject(DOCUMENT), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ApplicationRef)); };\nNgbPopover.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbPopover, selectors: [[\"\", \"ngbPopover\", \"\"]], inputs: { animation: \"animation\", autoClose: \"autoClose\", placement: \"placement\", triggers: \"triggers\", container: \"container\", disablePopover: \"disablePopover\", popoverClass: \"popoverClass\", openDelay: \"openDelay\", closeDelay: \"closeDelay\", ngbPopover: \"ngbPopover\", popoverTitle: \"popoverTitle\" }, outputs: { shown: \"shown\", hidden: \"hidden\" }, exportAs: [\"ngbPopover\"], features: [ɵngcc0.ɵɵNgOnChangesFeature] });\nNgbPopover.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 },\n { type: Injector },\n { type: ComponentFactoryResolver },\n { type: ViewContainerRef },\n { type: NgbPopoverConfig },\n { type: NgZone },\n { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] },\n { type: ChangeDetectorRef },\n { type: ApplicationRef }\n];\nNgbPopover.propDecorators = {\n animation: [{ type: Input }],\n autoClose: [{ type: Input }],\n ngbPopover: [{ type: Input }],\n popoverTitle: [{ type: Input }],\n placement: [{ type: Input }],\n triggers: [{ type: Input }],\n container: [{ type: Input }],\n disablePopover: [{ type: Input }],\n popoverClass: [{ type: Input }],\n openDelay: [{ type: Input }],\n closeDelay: [{ type: Input }],\n shown: [{ type: Output }],\n hidden: [{ type: Output }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbPopover, [{\n type: Directive,\n args: [{ selector: '[ngbPopover]', exportAs: 'ngbPopover' }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }, { type: ɵngcc0.Injector }, { type: ɵngcc0.ComponentFactoryResolver }, { type: ɵngcc0.ViewContainerRef }, { type: NgbPopoverConfig }, { type: ɵngcc0.NgZone }, { type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }, { type: ɵngcc0.ChangeDetectorRef }, { type: ɵngcc0.ApplicationRef }]; }, { shown: [{\n type: Output\n }], hidden: [{\n type: Output\n }], animation: [{\n type: Input\n }], autoClose: [{\n type: Input\n }], placement: [{\n type: Input\n }], triggers: [{\n type: Input\n }], container: [{\n type: Input\n }], disablePopover: [{\n type: Input\n }], popoverClass: [{\n type: Input\n }], openDelay: [{\n type: Input\n }], closeDelay: [{\n type: Input\n }], ngbPopover: [{\n type: Input\n }], popoverTitle: [{\n type: Input\n }] }); })();\n\nclass NgbPopoverModule {\n}\nNgbPopoverModule.ɵfac = function NgbPopoverModule_Factory(t) { return new (t || NgbPopoverModule)(); };\nNgbPopoverModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: NgbPopoverModule });\nNgbPopoverModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ imports: [[CommonModule]] });\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(NgbPopoverModule, { declarations: function () { return [NgbPopover, NgbPopoverWindow]; }, imports: function () { return [CommonModule]; }, exports: function () { return [NgbPopover]; } }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbPopoverModule, [{\n type: NgModule,\n args: [{\n declarations: [NgbPopover, NgbPopoverWindow],\n exports: [NgbPopover],\n imports: [CommonModule],\n entryComponents: [NgbPopoverWindow]\n }]\n }], null, null); })();\n\n/**\n * A configuration service for the [`NgbProgressbar`](#/components/progressbar/api#NgbProgressbar) component.\n *\n * You can inject this service, typically in your root component, and customize the values of its properties in\n * order to provide default values for all the progress bars used in the application.\n */\nclass NgbProgressbarConfig {\n constructor() {\n this.max = 100;\n this.animated = false;\n this.striped = false;\n this.showValue = false;\n }\n}\nNgbProgressbarConfig.ɵfac = function NgbProgressbarConfig_Factory(t) { return new (t || NgbProgressbarConfig)(); };\nNgbProgressbarConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgbProgressbarConfig_Factory() { return new NgbProgressbarConfig(); }, token: NgbProgressbarConfig, providedIn: \"root\" });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbProgressbarConfig, [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], function () { return []; }, null); })();\n\n/**\n * A directive that provides feedback on the progress of a workflow or an action.\n */\nclass NgbProgressbar {\n constructor(config) {\n /**\n * The current value for the progress bar.\n *\n * Should be in the `[0, max]` range.\n */\n this.value = 0;\n this.max = config.max;\n this.animated = config.animated;\n this.striped = config.striped;\n this.textType = config.textType;\n this.type = config.type;\n this.showValue = config.showValue;\n this.height = config.height;\n }\n /**\n * The maximal value to be displayed in the progress bar.\n *\n * Should be a positive number. Will default to 100 otherwise.\n */\n set max(max) {\n this._max = !isNumber(max) || max <= 0 ? 100 : max;\n }\n get max() { return this._max; }\n getValue() { return getValueInRange(this.value, this.max); }\n getPercentValue() { return 100 * this.getValue() / this.max; }\n}\nNgbProgressbar.ɵfac = function NgbProgressbar_Factory(t) { return new (t || NgbProgressbar)(ɵngcc0.ɵɵdirectiveInject(NgbProgressbarConfig)); };\nNgbProgressbar.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: NgbProgressbar, selectors: [[\"ngb-progressbar\"]], hostAttrs: [1, \"progress\"], hostVars: 2, hostBindings: function NgbProgressbar_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵstyleProp(\"height\", ctx.height);\n } }, inputs: { value: \"value\", max: \"max\", animated: \"animated\", striped: \"striped\", textType: \"textType\", type: \"type\", showValue: \"showValue\", height: \"height\" }, ngContentSelectors: _c3, decls: 3, vars: 11, consts: function () { let i18n_55; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_progressbar_value$$FESM2015_NG_BOOTSTRAP_JS__56 = goog.getMsg(\"{$interpolation}\", { \"interpolation\": \"\\uFFFD0\\uFFFD\" });\n i18n_55 = MSG_EXTERNAL_ngb_progressbar_value$$FESM2015_NG_BOOTSTRAP_JS__56;\n }\n else {\n i18n_55 = $localize `:@@ngb.progressbar.value␟f8e9a947b9db4252c0e9905765338712f2fd032f␟3720830768741091151:${\"\\uFFFD0\\uFFFD\"}:INTERPOLATION:`;\n } return [[\"role\", \"progressbar\", \"aria-valuemin\", \"0\"], [4, \"ngIf\"], i18n_55]; }, template: function NgbProgressbar_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵelementStart(0, \"div\", 0);\n ɵngcc0.ɵɵtemplate(1, NgbProgressbar_span_1_Template, 3, 3, \"span\", 1);\n ɵngcc0.ɵɵprojection(2);\n ɵngcc0.ɵɵelementEnd();\n } if (rf & 2) {\n ɵngcc0.ɵɵclassMapInterpolate4(\"progress-bar\", ctx.type ? \" bg-\" + ctx.type : \"\", \"\", ctx.textType ? \" text-\" + ctx.textType : \"\", \"\\n \", ctx.animated ? \" progress-bar-animated\" : \"\", \"\", ctx.striped ? \" progress-bar-striped\" : \"\", \"\");\n ɵngcc0.ɵɵstyleProp(\"width\", ctx.getPercentValue(), \"%\");\n ɵngcc0.ɵɵattribute(\"aria-valuenow\", ctx.getValue())(\"aria-valuemax\", ctx.max);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.showValue);\n } }, directives: [ɵngcc1.NgIf], pipes: [ɵngcc1.PercentPipe], encapsulation: 2, changeDetection: 0 });\nNgbProgressbar.ctorParameters = () => [\n { type: NgbProgressbarConfig }\n];\nNgbProgressbar.propDecorators = {\n max: [{ type: Input }],\n animated: [{ type: Input }],\n striped: [{ type: Input }],\n showValue: [{ type: Input }],\n textType: [{ type: Input }],\n type: [{ type: Input }],\n value: [{ type: Input }],\n height: [{ type: Input }, { type: HostBinding, args: ['style.height',] }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbProgressbar, [{\n type: Component,\n args: [{\n selector: 'ngb-progressbar',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: { class: 'progress' },\n template: `\n
    \n {{getValue() / max | percent}}\n
    \n `\n }]\n }], function () { return [{ type: NgbProgressbarConfig }]; }, { value: [{\n type: Input\n }], max: [{\n type: Input\n }], animated: [{\n type: Input\n }], striped: [{\n type: Input\n }], textType: [{\n type: Input\n }], type: [{\n type: Input\n }], showValue: [{\n type: Input\n }], height: [{\n type: Input\n }, {\n type: HostBinding,\n args: ['style.height']\n }] }); })();\n\nclass NgbProgressbarModule {\n}\nNgbProgressbarModule.ɵfac = function NgbProgressbarModule_Factory(t) { return new (t || NgbProgressbarModule)(); };\nNgbProgressbarModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: NgbProgressbarModule });\nNgbProgressbarModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ imports: [[CommonModule]] });\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(NgbProgressbarModule, { declarations: function () { return [NgbProgressbar]; }, imports: function () { return [CommonModule]; }, exports: function () { return [NgbProgressbar]; } }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbProgressbarModule, [{\n type: NgModule,\n args: [{ declarations: [NgbProgressbar], exports: [NgbProgressbar], imports: [CommonModule] }]\n }], null, null); })();\n\n/**\n * A configuration service for the [`NgbRating`](#/components/rating/api#NgbRating) component.\n *\n * You can inject this service, typically in your root component, and customize the values of its properties in\n * order to provide default values for all the ratings used in the application.\n */\nclass NgbRatingConfig {\n constructor() {\n this.max = 10;\n this.readonly = false;\n this.resettable = false;\n }\n}\nNgbRatingConfig.ɵfac = function NgbRatingConfig_Factory(t) { return new (t || NgbRatingConfig)(); };\nNgbRatingConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgbRatingConfig_Factory() { return new NgbRatingConfig(); }, token: NgbRatingConfig, providedIn: \"root\" });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbRatingConfig, [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], function () { return []; }, null); })();\n\n/**\n * A directive that helps visualising and interacting with a star rating bar.\n */\nclass NgbRating {\n constructor(config, _changeDetectorRef) {\n this._changeDetectorRef = _changeDetectorRef;\n this.contexts = [];\n this.disabled = false;\n /**\n * An event emitted when the user is hovering over a given rating.\n *\n * Event payload equals to the rating being hovered over.\n */\n this.hover = new EventEmitter();\n /**\n * An event emitted when the user stops hovering over a given rating.\n *\n * Event payload equals to the rating of the last item being hovered over.\n */\n this.leave = new EventEmitter();\n /**\n * An event emitted when the user selects a new rating.\n *\n * Event payload equals to the newly selected rating.\n */\n this.rateChange = new EventEmitter(true);\n this.onChange = (_) => { };\n this.onTouched = () => { };\n this.max = config.max;\n this.readonly = config.readonly;\n }\n ariaValueText() { return `${this.nextRate} out of ${this.max}`; }\n isInteractive() { return !this.readonly && !this.disabled; }\n enter(value) {\n if (this.isInteractive()) {\n this._updateState(value);\n }\n this.hover.emit(value);\n }\n handleBlur() { this.onTouched(); }\n handleClick(value) {\n if (this.isInteractive()) {\n this.update(this.resettable && this.rate === value ? 0 : value);\n }\n }\n handleKeyDown(event) {\n // tslint:disable-next-line:deprecation\n switch (event.which) {\n case Key.ArrowDown:\n case Key.ArrowLeft:\n this.update(this.rate - 1);\n break;\n case Key.ArrowUp:\n case Key.ArrowRight:\n this.update(this.rate + 1);\n break;\n case Key.Home:\n this.update(0);\n break;\n case Key.End:\n this.update(this.max);\n break;\n default:\n return;\n }\n // note 'return' in default case\n event.preventDefault();\n }\n ngOnChanges(changes) {\n if (changes['rate']) {\n this.update(this.rate);\n }\n }\n ngOnInit() {\n this.contexts = Array.from({ length: this.max }, (v, k) => ({ fill: 0, index: k }));\n this._updateState(this.rate);\n }\n registerOnChange(fn) { this.onChange = fn; }\n registerOnTouched(fn) { this.onTouched = fn; }\n reset() {\n this.leave.emit(this.nextRate);\n this._updateState(this.rate);\n }\n setDisabledState(isDisabled) { this.disabled = isDisabled; }\n update(value, internalChange = true) {\n const newRate = getValueInRange(value, this.max, 0);\n if (this.isInteractive() && this.rate !== newRate) {\n this.rate = newRate;\n this.rateChange.emit(this.rate);\n }\n if (internalChange) {\n this.onChange(this.rate);\n this.onTouched();\n }\n this._updateState(this.rate);\n }\n writeValue(value) {\n this.update(value, false);\n this._changeDetectorRef.markForCheck();\n }\n _updateState(nextValue) {\n this.nextRate = nextValue;\n this.contexts.forEach((context, index) => context.fill = Math.round(getValueInRange(nextValue - index, 1, 0) * 100));\n }\n}\nNgbRating.ɵfac = function NgbRating_Factory(t) { return new (t || NgbRating)(ɵngcc0.ɵɵdirectiveInject(NgbRatingConfig), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef)); };\nNgbRating.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: NgbRating, selectors: [[\"ngb-rating\"]], contentQueries: function NgbRating_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {\n ɵngcc0.ɵɵcontentQuery(dirIndex, TemplateRef, 1);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.starTemplateFromContent = _t.first);\n } }, hostAttrs: [\"role\", \"slider\", \"aria-valuemin\", \"0\", 1, \"d-inline-flex\"], hostVars: 5, hostBindings: function NgbRating_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"blur\", function NgbRating_blur_HostBindingHandler() { return ctx.handleBlur(); })(\"keydown\", function NgbRating_keydown_HostBindingHandler($event) { return ctx.handleKeyDown($event); })(\"mouseleave\", function NgbRating_mouseleave_HostBindingHandler() { return ctx.reset(); });\n } if (rf & 2) {\n ɵngcc0.ɵɵhostProperty(\"tabindex\", ctx.disabled ? -1 : 0);\n ɵngcc0.ɵɵattribute(\"aria-valuemax\", ctx.max)(\"aria-valuenow\", ctx.nextRate)(\"aria-valuetext\", ctx.ariaValueText())(\"aria-disabled\", ctx.readonly ? true : null);\n } }, inputs: { max: \"max\", readonly: \"readonly\", rate: \"rate\", resettable: \"resettable\", starTemplate: \"starTemplate\" }, outputs: { hover: \"hover\", leave: \"leave\", rateChange: \"rateChange\" }, features: [ɵngcc0.ɵɵProvidersFeature([{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => NgbRating), multi: true }]), ɵngcc0.ɵɵNgOnChangesFeature], decls: 3, vars: 1, consts: [[\"t\", \"\"], [\"ngFor\", \"\", 3, \"ngForOf\"], [1, \"sr-only\"], [3, \"mouseenter\", \"click\"], [3, \"ngTemplateOutlet\", \"ngTemplateOutletContext\"]], template: function NgbRating_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵtemplate(0, NgbRating_ng_template_0_Template, 1, 1, \"ng-template\", null, 0, ɵngcc0.ɵɵtemplateRefExtractor);\n ɵngcc0.ɵɵtemplate(2, NgbRating_ng_template_2_Template, 4, 5, \"ng-template\", 1);\n } if (rf & 2) {\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"ngForOf\", ctx.contexts);\n } }, directives: [ɵngcc1.NgForOf, ɵngcc1.NgTemplateOutlet], encapsulation: 2, changeDetection: 0 });\nNgbRating.ctorParameters = () => [\n { type: NgbRatingConfig },\n { type: ChangeDetectorRef }\n];\nNgbRating.propDecorators = {\n max: [{ type: Input }],\n rate: [{ type: Input }],\n readonly: [{ type: Input }],\n resettable: [{ type: Input }],\n starTemplate: [{ type: Input }],\n starTemplateFromContent: [{ type: ContentChild, args: [TemplateRef, { static: false },] }],\n hover: [{ type: Output }],\n leave: [{ type: Output }],\n rateChange: [{ type: Output }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbRating, [{\n type: Component,\n args: [{\n selector: 'ngb-rating',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n 'class': 'd-inline-flex',\n '[tabindex]': 'disabled ? -1 : 0',\n 'role': 'slider',\n 'aria-valuemin': '0',\n '[attr.aria-valuemax]': 'max',\n '[attr.aria-valuenow]': 'nextRate',\n '[attr.aria-valuetext]': 'ariaValueText()',\n '[attr.aria-disabled]': 'readonly ? true : null',\n '(blur)': 'handleBlur()',\n '(keydown)': 'handleKeyDown($event)',\n '(mouseleave)': 'reset()'\n },\n template: `\n {{ fill === 100 ? '★' : '☆' }}\n \n ({{ index < nextRate ? '*' : ' ' }})\n \n \n \n \n \n `,\n providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => NgbRating), multi: true }]\n }]\n }], function () { return [{ type: NgbRatingConfig }, { type: ɵngcc0.ChangeDetectorRef }]; }, { hover: [{\n type: Output\n }], leave: [{\n type: Output\n }], rateChange: [{\n type: Output\n }], max: [{\n type: Input\n }], readonly: [{\n type: Input\n }], rate: [{\n type: Input\n }], resettable: [{\n type: Input\n }], starTemplate: [{\n type: Input\n }], starTemplateFromContent: [{\n type: ContentChild,\n args: [TemplateRef, { static: false }]\n }] }); })();\n\nclass NgbRatingModule {\n}\nNgbRatingModule.ɵfac = function NgbRatingModule_Factory(t) { return new (t || NgbRatingModule)(); };\nNgbRatingModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: NgbRatingModule });\nNgbRatingModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ imports: [[CommonModule]] });\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(NgbRatingModule, { declarations: function () { return [NgbRating]; }, imports: function () { return [CommonModule]; }, exports: function () { return [NgbRating]; } }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbRatingModule, [{\n type: NgModule,\n args: [{ declarations: [NgbRating], exports: [NgbRating], imports: [CommonModule] }]\n }], null, null); })();\n\nclass NgbTime {\n constructor(hour, minute, second) {\n this.hour = toInteger(hour);\n this.minute = toInteger(minute);\n this.second = toInteger(second);\n }\n changeHour(step = 1) { this.updateHour((isNaN(this.hour) ? 0 : this.hour) + step); }\n updateHour(hour) {\n if (isNumber(hour)) {\n this.hour = (hour < 0 ? 24 + hour : hour) % 24;\n }\n else {\n this.hour = NaN;\n }\n }\n changeMinute(step = 1) { this.updateMinute((isNaN(this.minute) ? 0 : this.minute) + step); }\n updateMinute(minute) {\n if (isNumber(minute)) {\n this.minute = minute % 60 < 0 ? 60 + minute % 60 : minute % 60;\n this.changeHour(Math.floor(minute / 60));\n }\n else {\n this.minute = NaN;\n }\n }\n changeSecond(step = 1) { this.updateSecond((isNaN(this.second) ? 0 : this.second) + step); }\n updateSecond(second) {\n if (isNumber(second)) {\n this.second = second < 0 ? 60 + second % 60 : second % 60;\n this.changeMinute(Math.floor(second / 60));\n }\n else {\n this.second = NaN;\n }\n }\n isValid(checkSecs = true) {\n return isNumber(this.hour) && isNumber(this.minute) && (checkSecs ? isNumber(this.second) : true);\n }\n toString() { return `${this.hour || 0}:${this.minute || 0}:${this.second || 0}`; }\n}\n\n/**\n * A configuration service for the [`NgbTimepicker`](#/components/timepicker/api#NgbTimepicker) component.\n *\n * You can inject this service, typically in your root component, and customize the values of its properties in\n * order to provide default values for all the timepickers used in the application.\n */\nclass NgbTimepickerConfig {\n constructor() {\n this.meridian = false;\n this.spinners = true;\n this.seconds = false;\n this.hourStep = 1;\n this.minuteStep = 1;\n this.secondStep = 1;\n this.disabled = false;\n this.readonlyInputs = false;\n this.size = 'medium';\n }\n}\nNgbTimepickerConfig.ɵfac = function NgbTimepickerConfig_Factory(t) { return new (t || NgbTimepickerConfig)(); };\nNgbTimepickerConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgbTimepickerConfig_Factory() { return new NgbTimepickerConfig(); }, token: NgbTimepickerConfig, providedIn: \"root\" });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbTimepickerConfig, [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], function () { return []; }, null); })();\n\nfunction NGB_DATEPICKER_TIME_ADAPTER_FACTORY() {\n return new NgbTimeStructAdapter();\n}\n/**\n * An abstract service that does the conversion between the internal timepicker `NgbTimeStruct` model and\n * any provided user time model `T`, ex. a string, a native date, etc.\n *\n * The adapter is used **only** for conversion when binding timepicker to a form control,\n * ex. `[(ngModel)]=\"userTimeModel\"`. Here `userTimeModel` can be of any type.\n *\n * The default timepicker implementation assumes we use `NgbTimeStruct` as a user model.\n *\n * See the [custom time adapter demo](#/components/timepicker/examples#adapter) for an example.\n *\n * @since 2.2.0\n */\nclass NgbTimeAdapter {\n}\nNgbTimeAdapter.ɵfac = function NgbTimeAdapter_Factory(t) { return new (t || NgbTimeAdapter)(); };\nNgbTimeAdapter.ɵprov = i0.ɵɵdefineInjectable({ factory: NGB_DATEPICKER_TIME_ADAPTER_FACTORY, token: NgbTimeAdapter, providedIn: \"root\" });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbTimeAdapter, [{\n type: Injectable,\n args: [{ providedIn: 'root', useFactory: NGB_DATEPICKER_TIME_ADAPTER_FACTORY }]\n }], null, null); })();\nclass NgbTimeStructAdapter extends NgbTimeAdapter {\n /**\n * Converts a NgbTimeStruct value into NgbTimeStruct value\n */\n fromModel(time) {\n return (time && isInteger(time.hour) && isInteger(time.minute)) ?\n { hour: time.hour, minute: time.minute, second: isInteger(time.second) ? time.second : null } :\n null;\n }\n /**\n * Converts a NgbTimeStruct value into NgbTimeStruct value\n */\n toModel(time) {\n return (time && isInteger(time.hour) && isInteger(time.minute)) ?\n { hour: time.hour, minute: time.minute, second: isInteger(time.second) ? time.second : null } :\n null;\n }\n}\nNgbTimeStructAdapter.ɵfac = function NgbTimeStructAdapter_Factory(t) { return ɵNgbTimeStructAdapter_BaseFactory(t || NgbTimeStructAdapter); };\nNgbTimeStructAdapter.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: NgbTimeStructAdapter, factory: NgbTimeStructAdapter.ɵfac });\nconst ɵNgbTimeStructAdapter_BaseFactory = /*@__PURE__*/ ɵngcc0.ɵɵgetInheritedFactory(NgbTimeStructAdapter);\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbTimeStructAdapter, [{\n type: Injectable\n }], null, null); })();\n\nfunction NGB_TIMEPICKER_I18N_FACTORY(locale) {\n return new NgbTimepickerI18nDefault(locale);\n}\n/**\n * Type of the service supplying day periods (for example, 'AM' and 'PM') to NgbTimepicker component.\n * The default implementation of this service honors the Angular locale, and uses the registered locale data,\n * as explained in the Angular i18n guide.\n */\nclass NgbTimepickerI18n {\n}\nNgbTimepickerI18n.ɵfac = function NgbTimepickerI18n_Factory(t) { return new (t || NgbTimepickerI18n)(); };\nNgbTimepickerI18n.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgbTimepickerI18n_Factory() { return NGB_TIMEPICKER_I18N_FACTORY(i0.ɵɵinject(i0.LOCALE_ID)); }, token: NgbTimepickerI18n, providedIn: \"root\" });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbTimepickerI18n, [{\n type: Injectable,\n args: [{ providedIn: 'root', useFactory: NGB_TIMEPICKER_I18N_FACTORY, deps: [LOCALE_ID] }]\n }], null, null); })();\nclass NgbTimepickerI18nDefault extends NgbTimepickerI18n {\n constructor(locale) {\n super();\n this._periods = getLocaleDayPeriods(locale, FormStyle.Standalone, TranslationWidth.Narrow);\n }\n getMorningPeriod() { return this._periods[0]; }\n getAfternoonPeriod() { return this._periods[1]; }\n}\nNgbTimepickerI18nDefault.ɵfac = function NgbTimepickerI18nDefault_Factory(t) { return new (t || NgbTimepickerI18nDefault)(ɵngcc0.ɵɵinject(LOCALE_ID)); };\nNgbTimepickerI18nDefault.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: NgbTimepickerI18nDefault, factory: NgbTimepickerI18nDefault.ɵfac });\nNgbTimepickerI18nDefault.ctorParameters = () => [\n { type: String, decorators: [{ type: Inject, args: [LOCALE_ID,] }] }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbTimepickerI18nDefault, [{\n type: Injectable\n }], function () { return [{ type: String, decorators: [{\n type: Inject,\n args: [LOCALE_ID]\n }] }]; }, null); })();\n\nconst FILTER_REGEX = /[^0-9]/g;\n/**\n * A directive that helps with wth picking hours, minutes and seconds.\n */\nclass NgbTimepicker {\n constructor(_config, _ngbTimeAdapter, _cd, i18n) {\n this._config = _config;\n this._ngbTimeAdapter = _ngbTimeAdapter;\n this._cd = _cd;\n this.i18n = i18n;\n this.onChange = (_) => { };\n this.onTouched = () => { };\n this.meridian = _config.meridian;\n this.spinners = _config.spinners;\n this.seconds = _config.seconds;\n this.hourStep = _config.hourStep;\n this.minuteStep = _config.minuteStep;\n this.secondStep = _config.secondStep;\n this.disabled = _config.disabled;\n this.readonlyInputs = _config.readonlyInputs;\n this.size = _config.size;\n }\n /**\n * The number of hours to add/subtract when clicking hour spinners.\n */\n set hourStep(step) {\n this._hourStep = isInteger(step) ? step : this._config.hourStep;\n }\n get hourStep() { return this._hourStep; }\n /**\n * The number of minutes to add/subtract when clicking minute spinners.\n */\n set minuteStep(step) {\n this._minuteStep = isInteger(step) ? step : this._config.minuteStep;\n }\n get minuteStep() { return this._minuteStep; }\n /**\n * The number of seconds to add/subtract when clicking second spinners.\n */\n set secondStep(step) {\n this._secondStep = isInteger(step) ? step : this._config.secondStep;\n }\n get secondStep() { return this._secondStep; }\n writeValue(value) {\n const structValue = this._ngbTimeAdapter.fromModel(value);\n this.model = structValue ? new NgbTime(structValue.hour, structValue.minute, structValue.second) : new NgbTime();\n if (!this.seconds && (!structValue || !isNumber(structValue.second))) {\n this.model.second = 0;\n }\n this._cd.markForCheck();\n }\n registerOnChange(fn) { this.onChange = fn; }\n registerOnTouched(fn) { this.onTouched = fn; }\n setDisabledState(isDisabled) { this.disabled = isDisabled; }\n changeHour(step) {\n this.model.changeHour(step);\n this.propagateModelChange();\n }\n changeMinute(step) {\n this.model.changeMinute(step);\n this.propagateModelChange();\n }\n changeSecond(step) {\n this.model.changeSecond(step);\n this.propagateModelChange();\n }\n updateHour(newVal) {\n const isPM = this.model.hour >= 12;\n const enteredHour = toInteger(newVal);\n if (this.meridian && (isPM && enteredHour < 12 || !isPM && enteredHour === 12)) {\n this.model.updateHour(enteredHour + 12);\n }\n else {\n this.model.updateHour(enteredHour);\n }\n this.propagateModelChange();\n }\n updateMinute(newVal) {\n this.model.updateMinute(toInteger(newVal));\n this.propagateModelChange();\n }\n updateSecond(newVal) {\n this.model.updateSecond(toInteger(newVal));\n this.propagateModelChange();\n }\n toggleMeridian() {\n if (this.meridian) {\n this.changeHour(12);\n }\n }\n formatInput(input) { input.value = input.value.replace(FILTER_REGEX, ''); }\n formatHour(value) {\n if (isNumber(value)) {\n if (this.meridian) {\n return padNumber(value % 12 === 0 ? 12 : value % 12);\n }\n else {\n return padNumber(value % 24);\n }\n }\n else {\n return padNumber(NaN);\n }\n }\n formatMinSec(value) { return padNumber(isNumber(value) ? value : NaN); }\n handleBlur() { this.onTouched(); }\n get isSmallSize() { return this.size === 'small'; }\n get isLargeSize() { return this.size === 'large'; }\n ngOnChanges(changes) {\n if (changes['seconds'] && !this.seconds && this.model && !isNumber(this.model.second)) {\n this.model.second = 0;\n this.propagateModelChange(false);\n }\n }\n propagateModelChange(touched = true) {\n if (touched) {\n this.onTouched();\n }\n if (this.model.isValid(this.seconds)) {\n this.onChange(this._ngbTimeAdapter.toModel({ hour: this.model.hour, minute: this.model.minute, second: this.model.second }));\n }\n else {\n this.onChange(this._ngbTimeAdapter.toModel(null));\n }\n }\n}\nNgbTimepicker.ɵfac = function NgbTimepicker_Factory(t) { return new (t || NgbTimepicker)(ɵngcc0.ɵɵdirectiveInject(NgbTimepickerConfig), ɵngcc0.ɵɵdirectiveInject(NgbTimeAdapter), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef), ɵngcc0.ɵɵdirectiveInject(NgbTimepickerI18n)); };\nNgbTimepicker.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: NgbTimepicker, selectors: [[\"ngb-timepicker\"]], inputs: { meridian: \"meridian\", spinners: \"spinners\", seconds: \"seconds\", hourStep: \"hourStep\", minuteStep: \"minuteStep\", secondStep: \"secondStep\", readonlyInputs: \"readonlyInputs\", size: \"size\" }, features: [ɵngcc0.ɵɵProvidersFeature([{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => NgbTimepicker), multi: true }]), ɵngcc0.ɵɵNgOnChangesFeature], decls: 16, vars: 25, consts: function () { let i18n_57; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_timepicker_HH$$FESM2015_NG_BOOTSTRAP_JS_58 = goog.getMsg(\"HH\");\n i18n_57 = MSG_EXTERNAL_ngb_timepicker_HH$$FESM2015_NG_BOOTSTRAP_JS_58;\n }\n else {\n i18n_57 = $localize `:@@ngb.timepicker.HH␟ce676ab1d6d98f85c836381cf100a4a91ef95a1f␟4043638465245303811:HH`;\n } let i18n_59; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_timepicker_hours$$FESM2015_NG_BOOTSTRAP_JS_60 = goog.getMsg(\"Hours\");\n i18n_59 = MSG_EXTERNAL_ngb_timepicker_hours$$FESM2015_NG_BOOTSTRAP_JS_60;\n }\n else {\n i18n_59 = $localize `:@@ngb.timepicker.hours␟3bbce5fef7e1151da052a4e529453edb340e3912␟8070396816726827304:Hours`;\n } let i18n_61; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_timepicker_MM$$FESM2015_NG_BOOTSTRAP_JS_62 = goog.getMsg(\"MM\");\n i18n_61 = MSG_EXTERNAL_ngb_timepicker_MM$$FESM2015_NG_BOOTSTRAP_JS_62;\n }\n else {\n i18n_61 = $localize `:@@ngb.timepicker.MM␟72c8edf6a50068a05bde70991e36b1e881f4ca54␟1647282246509919852:MM`;\n } let i18n_63; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_timepicker_minutes$$FESM2015_NG_BOOTSTRAP_JS_64 = goog.getMsg(\"Minutes\");\n i18n_63 = MSG_EXTERNAL_ngb_timepicker_minutes$$FESM2015_NG_BOOTSTRAP_JS_64;\n }\n else {\n i18n_63 = $localize `:@@ngb.timepicker.minutes␟41e62daa962947c0d23ded0981975d1bddf0bf38␟5531237363767747080:Minutes`;\n } let i18n_65; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_timepicker_increment_hours$$FESM2015_NG_BOOTSTRAP_JS__66 = goog.getMsg(\"Increment hours\");\n i18n_65 = MSG_EXTERNAL_ngb_timepicker_increment_hours$$FESM2015_NG_BOOTSTRAP_JS__66;\n }\n else {\n i18n_65 = $localize `:@@ngb.timepicker.increment-hours␟cb74bc1d625a6c1742f0d7d47306cf495780c218␟5939278348542933629:Increment hours`;\n } let i18n_67; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_timepicker_decrement_hours$$FESM2015_NG_BOOTSTRAP_JS__68 = goog.getMsg(\"Decrement hours\");\n i18n_67 = MSG_EXTERNAL_ngb_timepicker_decrement_hours$$FESM2015_NG_BOOTSTRAP_JS__68;\n }\n else {\n i18n_67 = $localize `:@@ngb.timepicker.decrement-hours␟147c7a19429da7d999e247d22e33fee370b1691b␟3651829882940481818:Decrement hours`;\n } let i18n_69; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_timepicker_increment_minutes$$FESM2015_NG_BOOTSTRAP_JS__70 = goog.getMsg(\"Increment minutes\");\n i18n_69 = MSG_EXTERNAL_ngb_timepicker_increment_minutes$$FESM2015_NG_BOOTSTRAP_JS__70;\n }\n else {\n i18n_69 = $localize `:@@ngb.timepicker.increment-minutes␟f5a4a3bc05e053f6732475d0e74875ec01c3a348␟180147720391025024:Increment minutes`;\n } let i18n_71; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_timepicker_decrement_minutes$$FESM2015_NG_BOOTSTRAP_JS__72 = goog.getMsg(\"Decrement minutes\");\n i18n_71 = MSG_EXTERNAL_ngb_timepicker_decrement_minutes$$FESM2015_NG_BOOTSTRAP_JS__72;\n }\n else {\n i18n_71 = $localize `:@@ngb.timepicker.decrement-minutes␟c1a6899e529c096da5b660385d4e77fe1f7ad271␟7447789825403243588:Decrement minutes`;\n } let i18n_73; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_timepicker_SS$$FESM2015_NG_BOOTSTRAP_JS__74 = goog.getMsg(\"SS\");\n i18n_73 = MSG_EXTERNAL_ngb_timepicker_SS$$FESM2015_NG_BOOTSTRAP_JS__74;\n }\n else {\n i18n_73 = $localize `:@@ngb.timepicker.SS␟ebe38d36a40a2383c5fefa9b4608ffbda08bd4a3␟3628127143071124194:SS`;\n } let i18n_75; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_timepicker_seconds$$FESM2015_NG_BOOTSTRAP_JS__76 = goog.getMsg(\"Seconds\");\n i18n_75 = MSG_EXTERNAL_ngb_timepicker_seconds$$FESM2015_NG_BOOTSTRAP_JS__76;\n }\n else {\n i18n_75 = $localize `:@@ngb.timepicker.seconds␟4f2ed9e71a7c981db3e50ae2fedb28aff2ec4e6c␟8874012390997067175:Seconds`;\n } let i18n_77; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_timepicker_increment_seconds$$FESM2015_NG_BOOTSTRAP_JS___78 = goog.getMsg(\"Increment seconds\");\n i18n_77 = MSG_EXTERNAL_ngb_timepicker_increment_seconds$$FESM2015_NG_BOOTSTRAP_JS___78;\n }\n else {\n i18n_77 = $localize `:@@ngb.timepicker.increment-seconds␟912322ecee7d659d04dcf494a70e22e49d334b26␟5364772110539092174:Increment seconds`;\n } let i18n_79; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_timepicker_decrement_seconds$$FESM2015_NG_BOOTSTRAP_JS___80 = goog.getMsg(\"Decrement seconds\");\n i18n_79 = MSG_EXTERNAL_ngb_timepicker_decrement_seconds$$FESM2015_NG_BOOTSTRAP_JS___80;\n }\n else {\n i18n_79 = $localize `:@@ngb.timepicker.decrement-seconds␟5db47ac104294243a70eb9124fbea9d0004ddf69␟753633511487974857:Decrement seconds`;\n } let i18n_81; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_timepicker_PM$$FESM2015_NG_BOOTSTRAP_JS___82 = goog.getMsg(\"{$interpolation}\", { \"interpolation\": \"\\uFFFD0\\uFFFD\" });\n i18n_81 = MSG_EXTERNAL_ngb_timepicker_PM$$FESM2015_NG_BOOTSTRAP_JS___82;\n }\n else {\n i18n_81 = $localize `:@@ngb.timepicker.PM␟8d6e691e10306c1b34c6b26805151aaea320ef7f␟3564199131264287502:${\"\\uFFFD0\\uFFFD\"}:INTERPOLATION:`;\n } let i18n_83; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_timepicker_AM$$FESM2015_NG_BOOTSTRAP_JS___84 = goog.getMsg(\"{$interpolation}\", { \"interpolation\": \"\\uFFFD0\\uFFFD\" });\n i18n_83 = MSG_EXTERNAL_ngb_timepicker_AM$$FESM2015_NG_BOOTSTRAP_JS___84;\n }\n else {\n i18n_83 = $localize `:@@ngb.timepicker.AM␟69a1f176a93998876952adac57c3bc3863b6105e␟4592818992509942761:${\"\\uFFFD0\\uFFFD\"}:INTERPOLATION:`;\n } return [[3, \"disabled\"], [1, \"ngb-tp\"], [1, \"ngb-tp-input-container\", \"ngb-tp-hour\"], [\"tabindex\", \"-1\", \"type\", \"button\", \"class\", \"btn btn-link\", 3, \"btn-sm\", \"btn-lg\", \"disabled\", \"click\", 4, \"ngIf\"], [\"type\", \"text\", \"maxlength\", \"2\", \"inputmode\", \"numeric\", \"placeholder\", i18n_57, \"aria-label\", i18n_59, 1, \"ngb-tp-input\", \"form-control\", 3, \"value\", \"readOnly\", \"disabled\", \"change\", \"blur\", \"input\", \"keydown.ArrowUp\", \"keydown.ArrowDown\"], [1, \"ngb-tp-spacer\"], [1, \"ngb-tp-input-container\", \"ngb-tp-minute\"], [\"type\", \"text\", \"maxlength\", \"2\", \"inputmode\", \"numeric\", \"placeholder\", i18n_61, \"aria-label\", i18n_63, 1, \"ngb-tp-input\", \"form-control\", 3, \"value\", \"readOnly\", \"disabled\", \"change\", \"blur\", \"input\", \"keydown.ArrowUp\", \"keydown.ArrowDown\"], [\"class\", \"ngb-tp-spacer\", 4, \"ngIf\"], [\"class\", \"ngb-tp-input-container ngb-tp-second\", 4, \"ngIf\"], [\"class\", \"ngb-tp-meridian\", 4, \"ngIf\"], [\"tabindex\", \"-1\", \"type\", \"button\", 1, \"btn\", \"btn-link\", 3, \"disabled\", \"click\"], [1, \"chevron\", \"ngb-tp-chevron\"], [1, \"sr-only\"], i18n_65, [1, \"chevron\", \"ngb-tp-chevron\", \"bottom\"], i18n_67, i18n_69, i18n_71, [1, \"ngb-tp-input-container\", \"ngb-tp-second\"], [\"type\", \"text\", \"maxlength\", \"2\", \"inputmode\", \"numeric\", \"placeholder\", i18n_73, \"aria-label\", i18n_75, 1, \"ngb-tp-input\", \"form-control\", 3, \"value\", \"readOnly\", \"disabled\", \"change\", \"blur\", \"input\", \"keydown.ArrowUp\", \"keydown.ArrowDown\"], i18n_77, i18n_79, [1, \"ngb-tp-meridian\"], [\"type\", \"button\", 1, \"btn\", \"btn-outline-primary\", 3, \"disabled\", \"click\"], [4, \"ngIf\", \"ngIfElse\"], [\"am\", \"\"], i18n_81, i18n_83]; }, template: function NgbTimepicker_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"fieldset\", 0);\n ɵngcc0.ɵɵelementStart(1, \"div\", 1);\n ɵngcc0.ɵɵelementStart(2, \"div\", 2);\n ɵngcc0.ɵɵtemplate(3, NgbTimepicker_button_3_Template, 4, 7, \"button\", 3);\n ɵngcc0.ɵɵelementStart(4, \"input\", 4);\n ɵngcc0.ɵɵlistener(\"change\", function NgbTimepicker_Template_input_change_4_listener($event) { return ctx.updateHour($event.target.value); })(\"blur\", function NgbTimepicker_Template_input_blur_4_listener() { return ctx.handleBlur(); })(\"input\", function NgbTimepicker_Template_input_input_4_listener($event) { return ctx.formatInput($event.target); })(\"keydown.ArrowUp\", function NgbTimepicker_Template_input_keydown_ArrowUp_4_listener($event) { ctx.changeHour(ctx.hourStep); return $event.preventDefault(); })(\"keydown.ArrowDown\", function NgbTimepicker_Template_input_keydown_ArrowDown_4_listener($event) { ctx.changeHour(-ctx.hourStep); return $event.preventDefault(); });\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵtemplate(5, NgbTimepicker_button_5_Template, 4, 7, \"button\", 3);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(6, \"div\", 5);\n ɵngcc0.ɵɵtext(7, \":\");\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(8, \"div\", 6);\n ɵngcc0.ɵɵtemplate(9, NgbTimepicker_button_9_Template, 4, 7, \"button\", 3);\n ɵngcc0.ɵɵelementStart(10, \"input\", 7);\n ɵngcc0.ɵɵlistener(\"change\", function NgbTimepicker_Template_input_change_10_listener($event) { return ctx.updateMinute($event.target.value); })(\"blur\", function NgbTimepicker_Template_input_blur_10_listener() { return ctx.handleBlur(); })(\"input\", function NgbTimepicker_Template_input_input_10_listener($event) { return ctx.formatInput($event.target); })(\"keydown.ArrowUp\", function NgbTimepicker_Template_input_keydown_ArrowUp_10_listener($event) { ctx.changeMinute(ctx.minuteStep); return $event.preventDefault(); })(\"keydown.ArrowDown\", function NgbTimepicker_Template_input_keydown_ArrowDown_10_listener($event) { ctx.changeMinute(-ctx.minuteStep); return $event.preventDefault(); });\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵtemplate(11, NgbTimepicker_button_11_Template, 4, 7, \"button\", 3);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵtemplate(12, NgbTimepicker_div_12_Template, 2, 0, \"div\", 8);\n ɵngcc0.ɵɵtemplate(13, NgbTimepicker_div_13_Template, 4, 9, \"div\", 9);\n ɵngcc0.ɵɵtemplate(14, NgbTimepicker_div_14_Template, 1, 0, \"div\", 8);\n ɵngcc0.ɵɵtemplate(15, NgbTimepicker_div_15_Template, 5, 9, \"div\", 10);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n } if (rf & 2) {\n ɵngcc0.ɵɵclassProp(\"disabled\", ctx.disabled);\n ɵngcc0.ɵɵproperty(\"disabled\", ctx.disabled);\n ɵngcc0.ɵɵadvance(3);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.spinners);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵclassProp(\"form-control-sm\", ctx.isSmallSize)(\"form-control-lg\", ctx.isLargeSize);\n ɵngcc0.ɵɵproperty(\"value\", ctx.formatHour(ctx.model == null ? null : ctx.model.hour))(\"readOnly\", ctx.readonlyInputs)(\"disabled\", ctx.disabled);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.spinners);\n ɵngcc0.ɵɵadvance(4);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.spinners);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵclassProp(\"form-control-sm\", ctx.isSmallSize)(\"form-control-lg\", ctx.isLargeSize);\n ɵngcc0.ɵɵproperty(\"value\", ctx.formatMinSec(ctx.model == null ? null : ctx.model.minute))(\"readOnly\", ctx.readonlyInputs)(\"disabled\", ctx.disabled);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.spinners);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.seconds);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.seconds);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.meridian);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.meridian);\n } }, directives: [ɵngcc1.NgIf], styles: [\"ngb-timepicker{font-size:1rem}.ngb-tp{display:flex;align-items:center}.ngb-tp-input-container{width:4em}.ngb-tp-chevron:before{border-style:solid;border-width:.29em .29em 0 0;content:\\\"\\\";display:inline-block;height:.69em;left:.05em;position:relative;top:.15em;transform:rotate(-45deg);vertical-align:middle;width:.69em}.ngb-tp-chevron.bottom:before{top:-.3em;transform:rotate(135deg)}.ngb-tp-input{text-align:center}.ngb-tp-hour,.ngb-tp-meridian,.ngb-tp-minute,.ngb-tp-second{display:flex;flex-direction:column;align-items:center;justify-content:space-around}.ngb-tp-spacer{width:1em;text-align:center}\"], encapsulation: 2 });\nNgbTimepicker.ctorParameters = () => [\n { type: NgbTimepickerConfig },\n { type: NgbTimeAdapter },\n { type: ChangeDetectorRef },\n { type: NgbTimepickerI18n }\n];\nNgbTimepicker.propDecorators = {\n meridian: [{ type: Input }],\n spinners: [{ type: Input }],\n seconds: [{ type: Input }],\n hourStep: [{ type: Input }],\n minuteStep: [{ type: Input }],\n secondStep: [{ type: Input }],\n readonlyInputs: [{ type: Input }],\n size: [{ type: Input }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbTimepicker, [{\n type: Component,\n args: [{\n selector: 'ngb-timepicker',\n encapsulation: ViewEncapsulation.None,\n template: `\n
    \n
    \n
    \n \n \n \n
    \n
    :
    \n
    \n \n \n \n
    \n
    :
    \n
    \n \n \n \n
    \n
    \n
    \n \n
    \n
    \n
    \n `,\n providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => NgbTimepicker), multi: true }],\n styles: [\"ngb-timepicker{font-size:1rem}.ngb-tp{display:flex;align-items:center}.ngb-tp-input-container{width:4em}.ngb-tp-chevron:before{border-style:solid;border-width:.29em .29em 0 0;content:\\\"\\\";display:inline-block;height:.69em;left:.05em;position:relative;top:.15em;transform:rotate(-45deg);vertical-align:middle;width:.69em}.ngb-tp-chevron.bottom:before{top:-.3em;transform:rotate(135deg)}.ngb-tp-input{text-align:center}.ngb-tp-hour,.ngb-tp-meridian,.ngb-tp-minute,.ngb-tp-second{display:flex;flex-direction:column;align-items:center;justify-content:space-around}.ngb-tp-spacer{width:1em;text-align:center}\"]\n }]\n }], function () { return [{ type: NgbTimepickerConfig }, { type: NgbTimeAdapter }, { type: ɵngcc0.ChangeDetectorRef }, { type: NgbTimepickerI18n }]; }, { meridian: [{\n type: Input\n }], spinners: [{\n type: Input\n }], seconds: [{\n type: Input\n }], hourStep: [{\n type: Input\n }], minuteStep: [{\n type: Input\n }], secondStep: [{\n type: Input\n }], readonlyInputs: [{\n type: Input\n }], size: [{\n type: Input\n }] }); })();\n\nclass NgbTimepickerModule {\n}\nNgbTimepickerModule.ɵfac = function NgbTimepickerModule_Factory(t) { return new (t || NgbTimepickerModule)(); };\nNgbTimepickerModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: NgbTimepickerModule });\nNgbTimepickerModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ imports: [[CommonModule]] });\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(NgbTimepickerModule, { declarations: function () { return [NgbTimepicker]; }, imports: function () { return [CommonModule]; }, exports: function () { return [NgbTimepicker]; } }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbTimepickerModule, [{\n type: NgModule,\n args: [{ declarations: [NgbTimepicker], exports: [NgbTimepicker], imports: [CommonModule] }]\n }], null, null); })();\n\n/**\n * Configuration service for the NgbToast component. You can inject this service, typically in your root component,\n * and customize the values of its properties in order to provide default values for all the toasts used in the\n * application.\n *\n * @since 5.0.0\n */\nclass NgbToastConfig {\n constructor(_ngbConfig) {\n this._ngbConfig = _ngbConfig;\n this.autohide = true;\n this.delay = 500;\n this.ariaLive = 'polite';\n }\n get animation() { return (this._animation === undefined) ? this._ngbConfig.animation : this._animation; }\n set animation(animation) { this._animation = animation; }\n}\nNgbToastConfig.ɵfac = function NgbToastConfig_Factory(t) { return new (t || NgbToastConfig)(ɵngcc0.ɵɵinject(NgbConfig)); };\nNgbToastConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgbToastConfig_Factory() { return new NgbToastConfig(i0.ɵɵinject(NgbConfig)); }, token: NgbToastConfig, providedIn: \"root\" });\nNgbToastConfig.ctorParameters = () => [\n { type: NgbConfig }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbToastConfig, [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], function () { return [{ type: NgbConfig }]; }, null); })();\n\nconst ngbToastFadeInTransition = (element, animation) => {\n const { classList } = element;\n if (!animation) {\n classList.add('show');\n return;\n }\n classList.remove('hide');\n reflow(element);\n classList.add('showing');\n return () => {\n classList.remove('showing');\n classList.add('show');\n };\n};\nconst ngbToastFadeOutTransition = ({ classList }) => {\n classList.remove('show');\n return () => { classList.add('hide'); };\n};\n\n/**\n * This directive allows the usage of HTML markup or other directives\n * inside of the toast's header.\n *\n * @since 5.0.0\n */\nclass NgbToastHeader {\n}\nNgbToastHeader.ɵfac = function NgbToastHeader_Factory(t) { return new (t || NgbToastHeader)(); };\nNgbToastHeader.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbToastHeader, selectors: [[\"\", \"ngbToastHeader\", \"\"]] });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbToastHeader, [{\n type: Directive,\n args: [{ selector: '[ngbToastHeader]' }]\n }], null, null); })();\n/**\n * Toasts provide feedback messages as notifications to the user.\n * Goal is to mimic the push notifications available both on mobile and desktop operating systems.\n *\n * @since 5.0.0\n */\nclass NgbToast {\n constructor(ariaLive, config, _zone, _element) {\n this.ariaLive = ariaLive;\n this._zone = _zone;\n this._element = _element;\n /**\n * A template like `` can be\n * used in the projected content to allow markup usage.\n */\n this.contentHeaderTpl = null;\n /**\n * An event fired after the animation triggered by calling `.show()` method has finished.\n *\n * @since 8.0.0\n */\n this.shown = new EventEmitter();\n /**\n * An event fired after the animation triggered by calling `.hide()` method has finished.\n *\n * It can only occur in 2 different scenarios:\n * - `autohide` timeout fires\n * - user clicks on a closing cross\n *\n * Additionally this output is purely informative. The toast won't be removed from DOM automatically, it's up\n * to the user to take care of that.\n *\n * @since 8.0.0\n */\n this.hidden = new EventEmitter();\n if (this.ariaLive == null) {\n this.ariaLive = config.ariaLive;\n }\n this.delay = config.delay;\n this.autohide = config.autohide;\n this.animation = config.animation;\n }\n ngAfterContentInit() {\n this._zone.onStable.asObservable().pipe(take(1)).subscribe(() => {\n this._init();\n this.show();\n });\n }\n ngOnChanges(changes) {\n if ('autohide' in changes) {\n this._clearTimeout();\n this._init();\n }\n }\n /**\n * Triggers toast closing programmatically.\n *\n * The returned observable will emit and be completed once the closing transition has finished.\n * If the animations are turned off this happens synchronously.\n *\n * Alternatively you could listen or subscribe to the `(hidden)` output\n *\n * @since 8.0.0\n */\n hide() {\n this._clearTimeout();\n const transition = ngbRunTransition(this._zone, this._element.nativeElement, ngbToastFadeOutTransition, { animation: this.animation, runningTransition: 'stop' });\n transition.subscribe(() => { this.hidden.emit(); });\n return transition;\n }\n /**\n * Triggers toast opening programmatically.\n *\n * The returned observable will emit and be completed once the opening transition has finished.\n * If the animations are turned off this happens synchronously.\n *\n * Alternatively you could listen or subscribe to the `(shown)` output\n *\n * @since 8.0.0\n */\n show() {\n const transition = ngbRunTransition(this._zone, this._element.nativeElement, ngbToastFadeInTransition, {\n animation: this.animation,\n runningTransition: 'continue',\n });\n transition.subscribe(() => { this.shown.emit(); });\n return transition;\n }\n _init() {\n if (this.autohide && !this._timeoutID) {\n this._timeoutID = setTimeout(() => this.hide(), this.delay);\n }\n }\n _clearTimeout() {\n if (this._timeoutID) {\n clearTimeout(this._timeoutID);\n this._timeoutID = null;\n }\n }\n}\nNgbToast.ɵfac = function NgbToast_Factory(t) { return new (t || NgbToast)(ɵngcc0.ɵɵinjectAttribute('aria-live'), ɵngcc0.ɵɵdirectiveInject(NgbToastConfig), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.NgZone), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef)); };\nNgbToast.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: NgbToast, selectors: [[\"ngb-toast\"]], contentQueries: function NgbToast_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {\n ɵngcc0.ɵɵcontentQuery(dirIndex, NgbToastHeader, 3, TemplateRef);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.contentHeaderTpl = _t.first);\n } }, hostAttrs: [\"role\", \"alert\", \"aria-atomic\", \"true\", 1, \"toast\"], hostVars: 3, hostBindings: function NgbToast_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵattribute(\"aria-live\", ctx.ariaLive);\n ɵngcc0.ɵɵclassProp(\"fade\", ctx.animation);\n } }, inputs: { delay: \"delay\", autohide: \"autohide\", animation: \"animation\", header: \"header\" }, outputs: { shown: \"shown\", hidden: \"hidden\" }, exportAs: [\"ngbToast\"], features: [ɵngcc0.ɵɵNgOnChangesFeature], ngContentSelectors: _c3, decls: 5, vars: 1, consts: function () { let i18n_85; if (typeof ngI18nClosureMode !== \"undefined\" && ngI18nClosureMode) {\n const MSG_EXTERNAL_ngb_toast_close_aria$$FESM2015_NG_BOOTSTRAP_JS__86 = goog.getMsg(\"Close\");\n i18n_85 = MSG_EXTERNAL_ngb_toast_close_aria$$FESM2015_NG_BOOTSTRAP_JS__86;\n }\n else {\n i18n_85 = $localize `:@@ngb.toast.close-aria␟f4e529ae5ffd73001d1ff4bbdeeb0a72e342e5c8␟7819314041543176992:Close`;\n } return [[\"headerTpl\", \"\"], [3, \"ngIf\"], [1, \"toast-body\"], [1, \"mr-auto\"], [1, \"toast-header\"], [3, \"ngTemplateOutlet\"], [\"type\", \"button\", \"aria-label\", i18n_85, 1, \"close\", 3, \"click\"], [\"aria-hidden\", \"true\"]]; }, template: function NgbToast_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵtemplate(0, NgbToast_ng_template_0_Template, 2, 1, \"ng-template\", null, 0, ɵngcc0.ɵɵtemplateRefExtractor);\n ɵngcc0.ɵɵtemplate(2, NgbToast_ng_template_2_Template, 5, 1, \"ng-template\", 1);\n ɵngcc0.ɵɵelementStart(3, \"div\", 2);\n ɵngcc0.ɵɵprojection(4);\n ɵngcc0.ɵɵelementEnd();\n } if (rf & 2) {\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.contentHeaderTpl || ctx.header);\n } }, directives: [ɵngcc1.NgIf, ɵngcc1.NgTemplateOutlet], styles: [\".ngb-toasts{position:fixed;top:0;right:0;margin:.5em;z-index:1200}ngb-toast{display:block}ngb-toast .toast-header .close{margin-left:auto;margin-bottom:.25rem}\"], encapsulation: 2 });\nNgbToast.ctorParameters = () => [\n { type: String, decorators: [{ type: Attribute, args: ['aria-live',] }] },\n { type: NgbToastConfig },\n { type: NgZone },\n { type: ElementRef }\n];\nNgbToast.propDecorators = {\n animation: [{ type: Input }],\n delay: [{ type: Input }],\n autohide: [{ type: Input }],\n header: [{ type: Input }],\n contentHeaderTpl: [{ type: ContentChild, args: [NgbToastHeader, { read: TemplateRef, static: true },] }],\n shown: [{ type: Output }],\n hidden: [{ type: Output }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbToast, [{\n type: Component,\n args: [{\n selector: 'ngb-toast',\n exportAs: 'ngbToast',\n encapsulation: ViewEncapsulation.None,\n host: {\n 'role': 'alert',\n '[attr.aria-live]': 'ariaLive',\n 'aria-atomic': 'true',\n 'class': 'toast',\n '[class.fade]': 'animation'\n },\n template: `\n \n {{header}}\n \n \n
    \n \n \n
    \n
    \n
    \n \n
    \n `,\n styles: [\".ngb-toasts{position:fixed;top:0;right:0;margin:.5em;z-index:1200}ngb-toast{display:block}ngb-toast .toast-header .close{margin-left:auto;margin-bottom:.25rem}\"]\n }]\n }], function () { return [{ type: String, decorators: [{\n type: Attribute,\n args: ['aria-live']\n }] }, { type: NgbToastConfig }, { type: ɵngcc0.NgZone }, { type: ɵngcc0.ElementRef }]; }, { contentHeaderTpl: [{\n type: ContentChild,\n args: [NgbToastHeader, { read: TemplateRef, static: true }]\n }], shown: [{\n type: Output\n }], hidden: [{\n type: Output\n }], delay: [{\n type: Input\n }], autohide: [{\n type: Input\n }], animation: [{\n type: Input\n }], header: [{\n type: Input\n }] }); })();\n\nclass NgbToastModule {\n}\nNgbToastModule.ɵfac = function NgbToastModule_Factory(t) { return new (t || NgbToastModule)(); };\nNgbToastModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: NgbToastModule });\nNgbToastModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ imports: [[CommonModule]] });\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(NgbToastModule, { declarations: function () { return [NgbToast, NgbToastHeader]; }, imports: function () { return [CommonModule]; }, exports: function () { return [NgbToast, NgbToastHeader]; } }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbToastModule, [{\n type: NgModule,\n args: [{ declarations: [NgbToast, NgbToastHeader], imports: [CommonModule], exports: [NgbToast, NgbToastHeader] }]\n }], null, null); })();\n\n/**\n * A configuration service for the [`NgbTooltip`](#/components/tooltip/api#NgbTooltip) component.\n *\n * You can inject this service, typically in your root component, and customize the values of its properties in\n * order to provide default values for all the tooltips used in the application.\n */\nclass NgbTooltipConfig {\n constructor(_ngbConfig) {\n this._ngbConfig = _ngbConfig;\n this.autoClose = true;\n this.placement = 'auto';\n this.triggers = 'hover focus';\n this.disableTooltip = false;\n this.openDelay = 0;\n this.closeDelay = 0;\n }\n get animation() { return (this._animation === undefined) ? this._ngbConfig.animation : this._animation; }\n set animation(animation) { this._animation = animation; }\n}\nNgbTooltipConfig.ɵfac = function NgbTooltipConfig_Factory(t) { return new (t || NgbTooltipConfig)(ɵngcc0.ɵɵinject(NgbConfig)); };\nNgbTooltipConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgbTooltipConfig_Factory() { return new NgbTooltipConfig(i0.ɵɵinject(NgbConfig)); }, token: NgbTooltipConfig, providedIn: \"root\" });\nNgbTooltipConfig.ctorParameters = () => [\n { type: NgbConfig }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbTooltipConfig, [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], function () { return [{ type: NgbConfig }]; }, null); })();\n\nlet nextId = 0;\nclass NgbTooltipWindow {\n}\nNgbTooltipWindow.ɵfac = function NgbTooltipWindow_Factory(t) { return new (t || NgbTooltipWindow)(); };\nNgbTooltipWindow.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: NgbTooltipWindow, selectors: [[\"ngb-tooltip-window\"]], hostAttrs: [\"role\", \"tooltip\"], hostVars: 5, hostBindings: function NgbTooltipWindow_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵhostProperty(\"id\", ctx.id);\n ɵngcc0.ɵɵclassMap(\"tooltip\" + (ctx.tooltipClass ? \" \" + ctx.tooltipClass : \"\"));\n ɵngcc0.ɵɵclassProp(\"fade\", ctx.animation);\n } }, inputs: { animation: \"animation\", id: \"id\", tooltipClass: \"tooltipClass\" }, ngContentSelectors: _c3, decls: 3, vars: 0, consts: [[1, \"arrow\"], [1, \"tooltip-inner\"]], template: function NgbTooltipWindow_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵelement(0, \"div\", 0);\n ɵngcc0.ɵɵelementStart(1, \"div\", 1);\n ɵngcc0.ɵɵprojection(2);\n ɵngcc0.ɵɵelementEnd();\n } }, styles: [\"ngb-tooltip-window{pointer-events:none}ngb-tooltip-window .tooltip-inner{pointer-events:auto}ngb-tooltip-window.bs-tooltip-bottom .arrow,ngb-tooltip-window.bs-tooltip-top .arrow{left:calc(50% - .4rem)}ngb-tooltip-window.bs-tooltip-bottom-left .arrow,ngb-tooltip-window.bs-tooltip-top-left .arrow{left:1em}ngb-tooltip-window.bs-tooltip-bottom-right .arrow,ngb-tooltip-window.bs-tooltip-top-right .arrow{left:auto;right:.8rem}ngb-tooltip-window.bs-tooltip-left .arrow,ngb-tooltip-window.bs-tooltip-right .arrow{top:calc(50% - .4rem)}ngb-tooltip-window.bs-tooltip-left-top .arrow,ngb-tooltip-window.bs-tooltip-right-top .arrow{top:.4rem}ngb-tooltip-window.bs-tooltip-left-bottom .arrow,ngb-tooltip-window.bs-tooltip-right-bottom .arrow{top:auto;bottom:.4rem}\"], encapsulation: 2, changeDetection: 0 });\nNgbTooltipWindow.propDecorators = {\n animation: [{ type: Input }],\n id: [{ type: Input }],\n tooltipClass: [{ type: Input }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbTooltipWindow, [{\n type: Component,\n args: [{\n selector: 'ngb-tooltip-window',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n host: {\n '[class]': '\"tooltip\" + (tooltipClass ? \" \" + tooltipClass : \"\")',\n '[class.fade]': 'animation',\n 'role': 'tooltip',\n '[id]': 'id'\n },\n template: `
    `,\n styles: [\"ngb-tooltip-window{pointer-events:none}ngb-tooltip-window .tooltip-inner{pointer-events:auto}ngb-tooltip-window.bs-tooltip-bottom .arrow,ngb-tooltip-window.bs-tooltip-top .arrow{left:calc(50% - .4rem)}ngb-tooltip-window.bs-tooltip-bottom-left .arrow,ngb-tooltip-window.bs-tooltip-top-left .arrow{left:1em}ngb-tooltip-window.bs-tooltip-bottom-right .arrow,ngb-tooltip-window.bs-tooltip-top-right .arrow{left:auto;right:.8rem}ngb-tooltip-window.bs-tooltip-left .arrow,ngb-tooltip-window.bs-tooltip-right .arrow{top:calc(50% - .4rem)}ngb-tooltip-window.bs-tooltip-left-top .arrow,ngb-tooltip-window.bs-tooltip-right-top .arrow{top:.4rem}ngb-tooltip-window.bs-tooltip-left-bottom .arrow,ngb-tooltip-window.bs-tooltip-right-bottom .arrow{top:auto;bottom:.4rem}\"]\n }]\n }], null, { animation: [{\n type: Input\n }], id: [{\n type: Input\n }], tooltipClass: [{\n type: Input\n }] }); })();\n/**\n * A lightweight and extensible directive for fancy tooltip creation.\n */\nclass NgbTooltip {\n constructor(_elementRef, _renderer, injector, componentFactoryResolver, viewContainerRef, config, _ngZone, _document, _changeDetector, applicationRef) {\n this._elementRef = _elementRef;\n this._renderer = _renderer;\n this._ngZone = _ngZone;\n this._document = _document;\n this._changeDetector = _changeDetector;\n /**\n * An event emitted when the tooltip opening animation has finished. Contains no payload.\n */\n this.shown = new EventEmitter();\n /**\n * An event emitted when the tooltip closing animation has finished. Contains no payload.\n */\n this.hidden = new EventEmitter();\n this._ngbTooltipWindowId = `ngb-tooltip-${nextId++}`;\n this._windowRef = null;\n this.animation = config.animation;\n this.autoClose = config.autoClose;\n this.placement = config.placement;\n this.triggers = config.triggers;\n this.container = config.container;\n this.disableTooltip = config.disableTooltip;\n this.tooltipClass = config.tooltipClass;\n this.openDelay = config.openDelay;\n this.closeDelay = config.closeDelay;\n this._popupService = new PopupService(NgbTooltipWindow, injector, viewContainerRef, _renderer, this._ngZone, componentFactoryResolver, applicationRef);\n this._zoneSubscription = _ngZone.onStable.subscribe(() => {\n if (this._windowRef) {\n positionElements(this._elementRef.nativeElement, this._windowRef.location.nativeElement, this.placement, this.container === 'body', 'bs-tooltip');\n }\n });\n }\n /**\n * The string content or a `TemplateRef` for the content to be displayed in the tooltip.\n *\n * If the content if falsy, the tooltip won't open.\n */\n set ngbTooltip(value) {\n this._ngbTooltip = value;\n if (!value && this._windowRef) {\n this.close();\n }\n }\n get ngbTooltip() { return this._ngbTooltip; }\n /**\n * Opens the tooltip.\n *\n * This is considered to be a \"manual\" triggering.\n * The `context` is an optional value to be injected into the tooltip template when it is created.\n */\n open(context) {\n if (!this._windowRef && this._ngbTooltip && !this.disableTooltip) {\n const { windowRef, transition$ } = this._popupService.open(this._ngbTooltip, context, this.animation);\n this._windowRef = windowRef;\n this._windowRef.instance.animation = this.animation;\n this._windowRef.instance.tooltipClass = this.tooltipClass;\n this._windowRef.instance.id = this._ngbTooltipWindowId;\n this._renderer.setAttribute(this._elementRef.nativeElement, 'aria-describedby', this._ngbTooltipWindowId);\n if (this.container === 'body') {\n this._document.querySelector(this.container).appendChild(this._windowRef.location.nativeElement);\n }\n // We need to detect changes, because we don't know where .open() might be called from.\n // Ex. opening tooltip from one of lifecycle hooks that run after the CD\n // (say from ngAfterViewInit) will result in 'ExpressionHasChanged' exception\n this._windowRef.changeDetectorRef.detectChanges();\n // We need to mark for check, because tooltip won't work inside the OnPush component.\n // Ex. when we use expression like `{{ tooltip.isOpen() : 'opened' : 'closed' }}`\n // inside the template of an OnPush component and we change the tooltip from\n // open -> closed, the expression in question won't be updated unless we explicitly\n // mark the parent component to be checked.\n this._windowRef.changeDetectorRef.markForCheck();\n ngbAutoClose(this._ngZone, this._document, this.autoClose, () => this.close(), this.hidden, [this._windowRef.location.nativeElement]);\n transition$.subscribe(() => this.shown.emit());\n }\n }\n /**\n * Closes the tooltip.\n *\n * This is considered to be a \"manual\" triggering of the tooltip.\n */\n close() {\n if (this._windowRef != null) {\n this._renderer.removeAttribute(this._elementRef.nativeElement, 'aria-describedby');\n this._popupService.close(this.animation).subscribe(() => {\n this._windowRef = null;\n this.hidden.emit();\n this._changeDetector.markForCheck();\n });\n }\n }\n /**\n * Toggles the tooltip.\n *\n * This is considered to be a \"manual\" triggering of the tooltip.\n */\n toggle() {\n if (this._windowRef) {\n this.close();\n }\n else {\n this.open();\n }\n }\n /**\n * Returns `true`, if the popover is currently shown.\n */\n isOpen() { return this._windowRef != null; }\n ngOnInit() {\n this._unregisterListenersFn = listenToTriggers(this._renderer, this._elementRef.nativeElement, this.triggers, this.isOpen.bind(this), this.open.bind(this), this.close.bind(this), +this.openDelay, +this.closeDelay);\n }\n ngOnChanges({ tooltipClass }) {\n if (tooltipClass && this.isOpen()) {\n this._windowRef.instance.tooltipClass = tooltipClass.currentValue;\n }\n }\n ngOnDestroy() {\n this.close();\n // This check is needed as it might happen that ngOnDestroy is called before ngOnInit\n // under certain conditions, see: https://github.com/ng-bootstrap/ng-bootstrap/issues/2199\n if (this._unregisterListenersFn) {\n this._unregisterListenersFn();\n }\n this._zoneSubscription.unsubscribe();\n }\n}\nNgbTooltip.ɵfac = function NgbTooltip_Factory(t) { return new (t || NgbTooltip)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Injector), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ComponentFactoryResolver), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ViewContainerRef), ɵngcc0.ɵɵdirectiveInject(NgbTooltipConfig), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.NgZone), ɵngcc0.ɵɵdirectiveInject(DOCUMENT), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ApplicationRef)); };\nNgbTooltip.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbTooltip, selectors: [[\"\", \"ngbTooltip\", \"\"]], inputs: { animation: \"animation\", autoClose: \"autoClose\", placement: \"placement\", triggers: \"triggers\", container: \"container\", disableTooltip: \"disableTooltip\", tooltipClass: \"tooltipClass\", openDelay: \"openDelay\", closeDelay: \"closeDelay\", ngbTooltip: \"ngbTooltip\" }, outputs: { shown: \"shown\", hidden: \"hidden\" }, exportAs: [\"ngbTooltip\"], features: [ɵngcc0.ɵɵNgOnChangesFeature] });\nNgbTooltip.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 },\n { type: Injector },\n { type: ComponentFactoryResolver },\n { type: ViewContainerRef },\n { type: NgbTooltipConfig },\n { type: NgZone },\n { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] },\n { type: ChangeDetectorRef },\n { type: ApplicationRef }\n];\nNgbTooltip.propDecorators = {\n animation: [{ type: Input }],\n autoClose: [{ type: Input }],\n placement: [{ type: Input }],\n triggers: [{ type: Input }],\n container: [{ type: Input }],\n disableTooltip: [{ type: Input }],\n tooltipClass: [{ type: Input }],\n openDelay: [{ type: Input }],\n closeDelay: [{ type: Input }],\n shown: [{ type: Output }],\n hidden: [{ type: Output }],\n ngbTooltip: [{ type: Input }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbTooltip, [{\n type: Directive,\n args: [{ selector: '[ngbTooltip]', exportAs: 'ngbTooltip' }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }, { type: ɵngcc0.Injector }, { type: ɵngcc0.ComponentFactoryResolver }, { type: ɵngcc0.ViewContainerRef }, { type: NgbTooltipConfig }, { type: ɵngcc0.NgZone }, { type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }, { type: ɵngcc0.ChangeDetectorRef }, { type: ɵngcc0.ApplicationRef }]; }, { shown: [{\n type: Output\n }], hidden: [{\n type: Output\n }], animation: [{\n type: Input\n }], autoClose: [{\n type: Input\n }], placement: [{\n type: Input\n }], triggers: [{\n type: Input\n }], container: [{\n type: Input\n }], disableTooltip: [{\n type: Input\n }], tooltipClass: [{\n type: Input\n }], openDelay: [{\n type: Input\n }], closeDelay: [{\n type: Input\n }], ngbTooltip: [{\n type: Input\n }] }); })();\n\nclass NgbTooltipModule {\n}\nNgbTooltipModule.ɵfac = function NgbTooltipModule_Factory(t) { return new (t || NgbTooltipModule)(); };\nNgbTooltipModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: NgbTooltipModule });\nNgbTooltipModule.ɵinj = ɵngcc0.ɵɵdefineInjector({});\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(NgbTooltipModule, { declarations: [NgbTooltip, NgbTooltipWindow], exports: [NgbTooltip] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbTooltipModule, [{\n type: NgModule,\n args: [{ declarations: [NgbTooltip, NgbTooltipWindow], exports: [NgbTooltip], entryComponents: [NgbTooltipWindow] }]\n }], null, null); })();\n\n/**\n * A component that helps with text highlighting.\n *\n * If splits the `result` text into parts that contain the searched `term` and generates the HTML markup to simplify\n * highlighting:\n *\n * Ex. `result=\"Alaska\"` and `term=\"as\"` will produce `Alaska`.\n */\nclass NgbHighlight {\n constructor() {\n /**\n * The CSS class for `` elements wrapping the `term` inside the `result`.\n */\n this.highlightClass = 'ngb-highlight';\n /**\n * Boolean option to determine if the highlighting should be sensitive to accents or not.\n *\n * This feature is only available for browsers that implement the `String.normalize` function\n * (typically not Internet Explorer).\n * If you want to use this feature in a browser that does not implement `String.normalize`,\n * you will have to include a polyfill in your application (`unorm` for example).\n *\n * @since 9.1.0\n */\n this.accentSensitive = true;\n }\n ngOnChanges(changes) {\n if (!this.accentSensitive && !String.prototype.normalize) {\n console.warn('The `accentSensitive` input in `ngb-highlight` cannot be set to `false` in a browser ' +\n 'that does not implement the `String.normalize` function. ' +\n 'You will have to include a polyfill in your application to use this feature in the current browser.');\n this.accentSensitive = true;\n }\n const result = toString(this.result);\n const terms = Array.isArray(this.term) ? this.term : [this.term];\n const prepareTerm = term => this.accentSensitive ? term : removeAccents(term);\n const escapedTerms = terms.map(term => regExpEscape(prepareTerm(toString(term)))).filter(term => term);\n const toSplit = this.accentSensitive ? result : removeAccents(result);\n const parts = escapedTerms.length ? toSplit.split(new RegExp(`(${escapedTerms.join('|')})`, 'gmi')) : [result];\n if (this.accentSensitive) {\n this.parts = parts;\n }\n else {\n let offset = 0;\n this.parts = parts.map(part => result.substring(offset, offset += part.length));\n }\n }\n}\nNgbHighlight.ɵfac = function NgbHighlight_Factory(t) { return new (t || NgbHighlight)(); };\nNgbHighlight.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: NgbHighlight, selectors: [[\"ngb-highlight\"]], inputs: { highlightClass: \"highlightClass\", accentSensitive: \"accentSensitive\", result: \"result\", term: \"term\" }, features: [ɵngcc0.ɵɵNgOnChangesFeature], decls: 1, vars: 1, consts: [[\"ngFor\", \"\", 3, \"ngForOf\"], [3, \"class\", 4, \"ngIf\", \"ngIfElse\"], [\"even\", \"\"]], template: function NgbHighlight_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵtemplate(0, NgbHighlight_ng_template_0_Template, 3, 2, \"ng-template\", 0);\n } if (rf & 2) {\n ɵngcc0.ɵɵproperty(\"ngForOf\", ctx.parts);\n } }, directives: [ɵngcc1.NgForOf, ɵngcc1.NgIf], styles: [\".ngb-highlight{font-weight:700}\"], encapsulation: 2, changeDetection: 0 });\nNgbHighlight.propDecorators = {\n highlightClass: [{ type: Input }],\n result: [{ type: Input }],\n term: [{ type: Input }],\n accentSensitive: [{ type: Input }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbHighlight, [{\n type: Component,\n args: [{\n selector: 'ngb-highlight',\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n template: `` +\n `{{part}}{{part}}` +\n ``,\n styles: [\".ngb-highlight{font-weight:700}\"]\n }]\n }], function () { return []; }, { highlightClass: [{\n type: Input\n }], accentSensitive: [{\n type: Input\n }], result: [{\n type: Input\n }], term: [{\n type: Input\n }] }); })();\n\nclass NgbTypeaheadWindow {\n constructor() {\n this.activeIdx = 0;\n /**\n * Flag indicating if the first row should be active initially\n */\n this.focusFirst = true;\n /**\n * A function used to format a given result before display. This function should return a formatted string without any\n * HTML markup\n */\n this.formatter = toString;\n /**\n * Event raised when user selects a particular result row\n */\n this.selectEvent = new EventEmitter();\n this.activeChangeEvent = new EventEmitter();\n }\n hasActive() { return this.activeIdx > -1 && this.activeIdx < this.results.length; }\n getActive() { return this.results[this.activeIdx]; }\n markActive(activeIdx) {\n this.activeIdx = activeIdx;\n this._activeChanged();\n }\n next() {\n if (this.activeIdx === this.results.length - 1) {\n this.activeIdx = this.focusFirst ? (this.activeIdx + 1) % this.results.length : -1;\n }\n else {\n this.activeIdx++;\n }\n this._activeChanged();\n }\n prev() {\n if (this.activeIdx < 0) {\n this.activeIdx = this.results.length - 1;\n }\n else if (this.activeIdx === 0) {\n this.activeIdx = this.focusFirst ? this.results.length - 1 : -1;\n }\n else {\n this.activeIdx--;\n }\n this._activeChanged();\n }\n resetActive() {\n this.activeIdx = this.focusFirst ? 0 : -1;\n this._activeChanged();\n }\n select(item) { this.selectEvent.emit(item); }\n ngOnInit() { this.resetActive(); }\n _activeChanged() {\n this.activeChangeEvent.emit(this.activeIdx >= 0 ? this.id + '-' + this.activeIdx : undefined);\n }\n}\nNgbTypeaheadWindow.ɵfac = function NgbTypeaheadWindow_Factory(t) { return new (t || NgbTypeaheadWindow)(); };\nNgbTypeaheadWindow.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: NgbTypeaheadWindow, selectors: [[\"ngb-typeahead-window\"]], hostAttrs: [\"role\", \"listbox\"], hostVars: 3, hostBindings: function NgbTypeaheadWindow_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"mousedown\", function NgbTypeaheadWindow_mousedown_HostBindingHandler($event) { return $event.preventDefault(); });\n } if (rf & 2) {\n ɵngcc0.ɵɵhostProperty(\"id\", ctx.id);\n ɵngcc0.ɵɵclassMap(\"dropdown-menu show\" + (ctx.popupClass ? \" \" + ctx.popupClass : \"\"));\n } }, inputs: { focusFirst: \"focusFirst\", formatter: \"formatter\", id: \"id\", results: \"results\", term: \"term\", resultTemplate: \"resultTemplate\", popupClass: \"popupClass\" }, outputs: { selectEvent: \"select\", activeChangeEvent: \"activeChange\" }, exportAs: [\"ngbTypeaheadWindow\"], decls: 3, vars: 1, consts: [[\"rt\", \"\"], [\"ngFor\", \"\", 3, \"ngForOf\"], [3, \"result\", \"term\"], [\"type\", \"button\", \"role\", \"option\", 1, \"dropdown-item\", 3, \"id\", \"mouseenter\", \"click\"], [3, \"ngTemplateOutlet\", \"ngTemplateOutletContext\"]], template: function NgbTypeaheadWindow_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵtemplate(0, NgbTypeaheadWindow_ng_template_0_Template, 1, 2, \"ng-template\", null, 0, ɵngcc0.ɵɵtemplateRefExtractor);\n ɵngcc0.ɵɵtemplate(2, NgbTypeaheadWindow_ng_template_2_Template, 2, 9, \"ng-template\", 1);\n } if (rf & 2) {\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"ngForOf\", ctx.results);\n } }, directives: [ɵngcc1.NgForOf, NgbHighlight, ɵngcc1.NgTemplateOutlet], encapsulation: 2 });\nNgbTypeaheadWindow.propDecorators = {\n id: [{ type: Input }],\n focusFirst: [{ type: Input }],\n results: [{ type: Input }],\n term: [{ type: Input }],\n formatter: [{ type: Input }],\n resultTemplate: [{ type: Input }],\n popupClass: [{ type: Input }],\n selectEvent: [{ type: Output, args: ['select',] }],\n activeChangeEvent: [{ type: Output, args: ['activeChange',] }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbTypeaheadWindow, [{\n type: Component,\n args: [{\n selector: 'ngb-typeahead-window',\n exportAs: 'ngbTypeaheadWindow',\n encapsulation: ViewEncapsulation.None,\n host: {\n '(mousedown)': '$event.preventDefault()',\n '[class]': '\"dropdown-menu show\" + (popupClass ? \" \" + popupClass : \"\")',\n 'role': 'listbox',\n '[id]': 'id'\n },\n template: `\n \n \n \n \n \n \n `\n }]\n }], function () { return []; }, { focusFirst: [{\n type: Input\n }], formatter: [{\n type: Input\n }], selectEvent: [{\n type: Output,\n args: ['select']\n }], activeChangeEvent: [{\n type: Output,\n args: ['activeChange']\n }], id: [{\n type: Input\n }], results: [{\n type: Input\n }], term: [{\n type: Input\n }], resultTemplate: [{\n type: Input\n }], popupClass: [{\n type: Input\n }] }); })();\n\nconst ARIA_LIVE_DELAY = new InjectionToken('live announcer delay', { providedIn: 'root', factory: ARIA_LIVE_DELAY_FACTORY });\nfunction ARIA_LIVE_DELAY_FACTORY() {\n return 100;\n}\nfunction getLiveElement(document, lazyCreate = false) {\n let element = document.body.querySelector('#ngb-live');\n if (element == null && lazyCreate) {\n element = document.createElement('div');\n element.setAttribute('id', 'ngb-live');\n element.setAttribute('aria-live', 'polite');\n element.setAttribute('aria-atomic', 'true');\n element.classList.add('sr-only');\n document.body.appendChild(element);\n }\n return element;\n}\nclass Live {\n constructor(_document, _delay) {\n this._document = _document;\n this._delay = _delay;\n }\n ngOnDestroy() {\n const element = getLiveElement(this._document);\n if (element) {\n // if exists, it will always be attached to the \n element.parentElement.removeChild(element);\n }\n }\n say(message) {\n const element = getLiveElement(this._document, true);\n const delay = this._delay;\n if (element != null) {\n element.textContent = '';\n const setText = () => element.textContent = message;\n if (delay === null) {\n setText();\n }\n else {\n setTimeout(setText, delay);\n }\n }\n }\n}\nLive.ɵfac = function Live_Factory(t) { return new (t || Live)(ɵngcc0.ɵɵinject(DOCUMENT), ɵngcc0.ɵɵinject(ARIA_LIVE_DELAY)); };\nLive.ɵprov = i0.ɵɵdefineInjectable({ factory: function Live_Factory() { return new Live(i0.ɵɵinject(i1.DOCUMENT), i0.ɵɵinject(ARIA_LIVE_DELAY)); }, token: Live, providedIn: \"root\" });\nLive.ctorParameters = () => [\n { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] },\n { type: undefined, decorators: [{ type: Inject, args: [ARIA_LIVE_DELAY,] }] }\n];\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(Live, [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], function () { return [{ type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }, { type: undefined, decorators: [{\n type: Inject,\n args: [ARIA_LIVE_DELAY]\n }] }]; }, null); })();\n\n/**\n * A configuration service for the [`NgbTypeahead`](#/components/typeahead/api#NgbTypeahead) component.\n *\n * You can inject this service, typically in your root component, and customize the values of its properties in\n * order to provide default values for all the typeaheads used in the application.\n */\nclass NgbTypeaheadConfig {\n constructor() {\n this.editable = true;\n this.focusFirst = true;\n this.showHint = false;\n this.placement = ['bottom-left', 'bottom-right', 'top-left', 'top-right'];\n }\n}\nNgbTypeaheadConfig.ɵfac = function NgbTypeaheadConfig_Factory(t) { return new (t || NgbTypeaheadConfig)(); };\nNgbTypeaheadConfig.ɵprov = i0.ɵɵdefineInjectable({ factory: function NgbTypeaheadConfig_Factory() { return new NgbTypeaheadConfig(); }, token: NgbTypeaheadConfig, providedIn: \"root\" });\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbTypeaheadConfig, [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }], function () { return []; }, null); })();\n\nlet nextWindowId = 0;\n/**\n * A directive providing a simple way of creating powerful typeaheads from any text input.\n */\nclass NgbTypeahead {\n constructor(_elementRef, viewContainerRef, _renderer, injector, componentFactoryResolver, config, ngZone, _live, _document, _ngZone, _changeDetector, applicationRef) {\n this._elementRef = _elementRef;\n this._renderer = _renderer;\n this._live = _live;\n this._document = _document;\n this._ngZone = _ngZone;\n this._changeDetector = _changeDetector;\n this._subscription = null;\n this._closed$ = new Subject();\n this._inputValueBackup = null;\n this._windowRef = null;\n /**\n * The value for the `autocomplete` attribute for the `` element.\n *\n * Defaults to `\"off\"` to disable the native browser autocomplete, but you can override it if necessary.\n *\n * @since 2.1.0\n */\n this.autocomplete = 'off';\n /**\n * The preferred placement of the typeahead.\n *\n * Possible values are `\"top\"`, `\"top-left\"`, `\"top-right\"`, `\"bottom\"`, `\"bottom-left\"`,\n * `\"bottom-right\"`, `\"left\"`, `\"left-top\"`, `\"left-bottom\"`, `\"right\"`, `\"right-top\"`,\n * `\"right-bottom\"`\n *\n * Accepts an array of strings or a string with space separated possible values.\n *\n * The default order of preference is `\"bottom-left bottom-right top-left top-right\"`\n *\n * Please see the [positioning overview](#/positioning) for more details.\n */\n this.placement = 'bottom-left';\n /**\n * An event emitted right before an item is selected from the result list.\n *\n * Event payload is of type [`NgbTypeaheadSelectItemEvent`](#/components/typeahead/api#NgbTypeaheadSelectItemEvent).\n */\n this.selectItem = new EventEmitter();\n this.activeDescendant = null;\n this.popupId = `ngb-typeahead-${nextWindowId++}`;\n this._onTouched = () => { };\n this._onChange = (_) => { };\n this.container = config.container;\n this.editable = config.editable;\n this.focusFirst = config.focusFirst;\n this.showHint = config.showHint;\n this.placement = config.placement;\n this._valueChanges = fromEvent(_elementRef.nativeElement, 'input')\n .pipe(map($event => $event.target.value));\n this._resubscribeTypeahead = new BehaviorSubject(null);\n this._popupService = new PopupService(NgbTypeaheadWindow, injector, viewContainerRef, _renderer, this._ngZone, componentFactoryResolver, applicationRef);\n this._zoneSubscription = ngZone.onStable.subscribe(() => {\n if (this.isPopupOpen()) {\n positionElements(this._elementRef.nativeElement, this._windowRef.location.nativeElement, this.placement, this.container === 'body');\n }\n });\n }\n ngOnInit() { this._subscribeToUserInput(); }\n ngOnChanges({ ngbTypeahead }) {\n if (ngbTypeahead && !ngbTypeahead.firstChange) {\n this._unsubscribeFromUserInput();\n this._subscribeToUserInput();\n }\n }\n ngOnDestroy() {\n this._closePopup();\n this._unsubscribeFromUserInput();\n this._zoneSubscription.unsubscribe();\n }\n registerOnChange(fn) { this._onChange = fn; }\n registerOnTouched(fn) { this._onTouched = fn; }\n writeValue(value) {\n this._writeInputValue(this._formatItemForInput(value));\n if (this.showHint) {\n this._inputValueBackup = value;\n }\n }\n setDisabledState(isDisabled) {\n this._renderer.setProperty(this._elementRef.nativeElement, 'disabled', isDisabled);\n }\n /**\n * Dismisses typeahead popup window\n */\n dismissPopup() {\n if (this.isPopupOpen()) {\n this._resubscribeTypeahead.next(null);\n this._closePopup();\n if (this.showHint && this._inputValueBackup !== null) {\n this._writeInputValue(this._inputValueBackup);\n }\n this._changeDetector.markForCheck();\n }\n }\n /**\n * Returns true if the typeahead popup window is displayed\n */\n isPopupOpen() { return this._windowRef != null; }\n handleBlur() {\n this._resubscribeTypeahead.next(null);\n this._onTouched();\n }\n handleKeyDown(event) {\n if (!this.isPopupOpen()) {\n return;\n }\n // tslint:disable-next-line:deprecation\n switch (event.which) {\n case Key.ArrowDown:\n event.preventDefault();\n this._windowRef.instance.next();\n this._showHint();\n break;\n case Key.ArrowUp:\n event.preventDefault();\n this._windowRef.instance.prev();\n this._showHint();\n break;\n case Key.Enter:\n case Key.Tab:\n const result = this._windowRef.instance.getActive();\n if (isDefined(result)) {\n event.preventDefault();\n event.stopPropagation();\n this._selectResult(result);\n }\n this._closePopup();\n break;\n }\n }\n _openPopup() {\n if (!this.isPopupOpen()) {\n this._inputValueBackup = this._elementRef.nativeElement.value;\n const { windowRef } = this._popupService.open();\n this._windowRef = windowRef;\n this._windowRef.instance.id = this.popupId;\n this._windowRef.instance.selectEvent.subscribe((result) => this._selectResultClosePopup(result));\n this._windowRef.instance.activeChangeEvent.subscribe((activeId) => this.activeDescendant = activeId);\n this._windowRef.instance.popupClass = this.popupClass;\n if (this.container === 'body') {\n this._document.querySelector(this.container).appendChild(this._windowRef.location.nativeElement);\n }\n this._changeDetector.markForCheck();\n ngbAutoClose(this._ngZone, this._document, 'outside', () => this.dismissPopup(), this._closed$, [this._elementRef.nativeElement, this._windowRef.location.nativeElement]);\n }\n }\n _closePopup() {\n this._popupService.close().subscribe(() => {\n this._closed$.next();\n this._windowRef = null;\n this.activeDescendant = null;\n });\n }\n _selectResult(result) {\n let defaultPrevented = false;\n this.selectItem.emit({ item: result, preventDefault: () => { defaultPrevented = true; } });\n this._resubscribeTypeahead.next(null);\n if (!defaultPrevented) {\n this.writeValue(result);\n this._onChange(result);\n }\n }\n _selectResultClosePopup(result) {\n this._selectResult(result);\n this._closePopup();\n }\n _showHint() {\n var _a;\n if (this.showHint && ((_a = this._windowRef) === null || _a === void 0 ? void 0 : _a.instance.hasActive()) && this._inputValueBackup != null) {\n const userInputLowerCase = this._inputValueBackup.toLowerCase();\n const formattedVal = this._formatItemForInput(this._windowRef.instance.getActive());\n if (userInputLowerCase === formattedVal.substr(0, this._inputValueBackup.length).toLowerCase()) {\n this._writeInputValue(this._inputValueBackup + formattedVal.substr(this._inputValueBackup.length));\n this._elementRef.nativeElement['setSelectionRange'].apply(this._elementRef.nativeElement, [this._inputValueBackup.length, formattedVal.length]);\n }\n else {\n this._writeInputValue(formattedVal);\n }\n }\n }\n _formatItemForInput(item) {\n return item != null && this.inputFormatter ? this.inputFormatter(item) : toString(item);\n }\n _writeInputValue(value) {\n this._renderer.setProperty(this._elementRef.nativeElement, 'value', toString(value));\n }\n _subscribeToUserInput() {\n const results$ = this._valueChanges.pipe(tap(value => {\n this._inputValueBackup = this.showHint ? value : null;\n this._onChange(this.editable ? value : undefined);\n }), this.ngbTypeahead ? this.ngbTypeahead : () => of([]));\n this._subscription = this._resubscribeTypeahead.pipe(switchMap(() => results$)).subscribe(results => {\n if (!results || results.length === 0) {\n this._closePopup();\n }\n else {\n this._openPopup();\n this._windowRef.instance.focusFirst = this.focusFirst;\n this._windowRef.instance.results = results;\n this._windowRef.instance.term = this._elementRef.nativeElement.value;\n if (this.resultFormatter) {\n this._windowRef.instance.formatter = this.resultFormatter;\n }\n if (this.resultTemplate) {\n this._windowRef.instance.resultTemplate = this.resultTemplate;\n }\n this._windowRef.instance.resetActive();\n // The observable stream we are subscribing to might have async steps\n // and if a component containing typeahead is using the OnPush strategy\n // the change detection turn wouldn't be invoked automatically.\n this._windowRef.changeDetectorRef.detectChanges();\n this._showHint();\n }\n // live announcer\n const count = results ? results.length : 0;\n this._live.say(count === 0 ? 'No results available' : `${count} result${count === 1 ? '' : 's'} available`);\n });\n }\n _unsubscribeFromUserInput() {\n if (this._subscription) {\n this._subscription.unsubscribe();\n }\n this._subscription = null;\n }\n}\nNgbTypeahead.ɵfac = function NgbTypeahead_Factory(t) { return new (t || NgbTypeahead)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ViewContainerRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Injector), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ComponentFactoryResolver), ɵngcc0.ɵɵdirectiveInject(NgbTypeaheadConfig), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.NgZone), ɵngcc0.ɵɵdirectiveInject(Live), ɵngcc0.ɵɵdirectiveInject(DOCUMENT), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.NgZone), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ApplicationRef)); };\nNgbTypeahead.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: NgbTypeahead, selectors: [[\"input\", \"ngbTypeahead\", \"\"]], hostAttrs: [\"autocapitalize\", \"off\", \"autocorrect\", \"off\", \"role\", \"combobox\", \"aria-multiline\", \"false\"], hostVars: 7, hostBindings: function NgbTypeahead_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"blur\", function NgbTypeahead_blur_HostBindingHandler() { return ctx.handleBlur(); })(\"keydown\", function NgbTypeahead_keydown_HostBindingHandler($event) { return ctx.handleKeyDown($event); });\n } if (rf & 2) {\n ɵngcc0.ɵɵhostProperty(\"autocomplete\", ctx.autocomplete);\n ɵngcc0.ɵɵattribute(\"aria-autocomplete\", ctx.showHint ? \"both\" : \"list\")(\"aria-activedescendant\", ctx.activeDescendant)(\"aria-owns\", ctx.isPopupOpen() ? ctx.popupId : null)(\"aria-expanded\", ctx.isPopupOpen());\n ɵngcc0.ɵɵclassProp(\"open\", ctx.isPopupOpen());\n } }, inputs: { autocomplete: \"autocomplete\", placement: \"placement\", container: \"container\", editable: \"editable\", focusFirst: \"focusFirst\", showHint: \"showHint\", inputFormatter: \"inputFormatter\", ngbTypeahead: \"ngbTypeahead\", resultFormatter: \"resultFormatter\", resultTemplate: \"resultTemplate\", popupClass: \"popupClass\" }, outputs: { selectItem: \"selectItem\" }, exportAs: [\"ngbTypeahead\"], features: [ɵngcc0.ɵɵProvidersFeature([{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => NgbTypeahead), multi: true }]), ɵngcc0.ɵɵNgOnChangesFeature] });\nNgbTypeahead.ctorParameters = () => [\n { type: ElementRef },\n { type: ViewContainerRef },\n { type: Renderer2 },\n { type: Injector },\n { type: ComponentFactoryResolver },\n { type: NgbTypeaheadConfig },\n { type: NgZone },\n { type: Live },\n { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] },\n { type: NgZone },\n { type: ChangeDetectorRef },\n { type: ApplicationRef }\n];\nNgbTypeahead.propDecorators = {\n autocomplete: [{ type: Input }],\n container: [{ type: Input }],\n editable: [{ type: Input }],\n focusFirst: [{ type: Input }],\n inputFormatter: [{ type: Input }],\n ngbTypeahead: [{ type: Input }],\n resultFormatter: [{ type: Input }],\n resultTemplate: [{ type: Input }],\n showHint: [{ type: Input }],\n placement: [{ type: Input }],\n popupClass: [{ type: Input }],\n selectItem: [{ type: Output }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbTypeahead, [{\n type: Directive,\n args: [{\n selector: 'input[ngbTypeahead]',\n exportAs: 'ngbTypeahead',\n host: {\n '(blur)': 'handleBlur()',\n '[class.open]': 'isPopupOpen()',\n '(keydown)': 'handleKeyDown($event)',\n '[autocomplete]': 'autocomplete',\n 'autocapitalize': 'off',\n 'autocorrect': 'off',\n 'role': 'combobox',\n 'aria-multiline': 'false',\n '[attr.aria-autocomplete]': 'showHint ? \"both\" : \"list\"',\n '[attr.aria-activedescendant]': 'activeDescendant',\n '[attr.aria-owns]': 'isPopupOpen() ? popupId : null',\n '[attr.aria-expanded]': 'isPopupOpen()'\n },\n providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: forwardRef(() => NgbTypeahead), multi: true }]\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.ViewContainerRef }, { type: ɵngcc0.Renderer2 }, { type: ɵngcc0.Injector }, { type: ɵngcc0.ComponentFactoryResolver }, { type: NgbTypeaheadConfig }, { type: ɵngcc0.NgZone }, { type: Live }, { type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }, { type: ɵngcc0.NgZone }, { type: ɵngcc0.ChangeDetectorRef }, { type: ɵngcc0.ApplicationRef }]; }, { autocomplete: [{\n type: Input\n }], placement: [{\n type: Input\n }], selectItem: [{\n type: Output\n }], container: [{\n type: Input\n }], editable: [{\n type: Input\n }], focusFirst: [{\n type: Input\n }], showHint: [{\n type: Input\n }], inputFormatter: [{\n type: Input\n }], ngbTypeahead: [{\n type: Input\n }], resultFormatter: [{\n type: Input\n }], resultTemplate: [{\n type: Input\n }], popupClass: [{\n type: Input\n }] }); })();\n\nclass NgbTypeaheadModule {\n}\nNgbTypeaheadModule.ɵfac = function NgbTypeaheadModule_Factory(t) { return new (t || NgbTypeaheadModule)(); };\nNgbTypeaheadModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: NgbTypeaheadModule });\nNgbTypeaheadModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ imports: [[CommonModule]] });\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(NgbTypeaheadModule, { declarations: function () { return [NgbTypeahead, NgbHighlight, NgbTypeaheadWindow]; }, imports: function () { return [CommonModule]; }, exports: function () { return [NgbTypeahead, NgbHighlight]; } }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbTypeaheadModule, [{\n type: NgModule,\n args: [{\n declarations: [NgbTypeahead, NgbHighlight, NgbTypeaheadWindow],\n exports: [NgbTypeahead, NgbHighlight],\n imports: [CommonModule],\n entryComponents: [NgbTypeaheadWindow]\n }]\n }], null, null); })();\n\nconst NGB_MODULES = [\n NgbAccordionModule, NgbAlertModule, NgbButtonsModule, NgbCarouselModule, NgbCollapseModule, NgbDatepickerModule,\n NgbDropdownModule, NgbModalModule, NgbNavModule, NgbPaginationModule, NgbPopoverModule, NgbProgressbarModule,\n NgbRatingModule, NgbTimepickerModule, NgbToastModule, NgbTooltipModule, NgbTypeaheadModule\n];\nclass NgbModule {\n}\nNgbModule.ɵfac = function NgbModule_Factory(t) { return new (t || NgbModule)(); };\nNgbModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: NgbModule });\nNgbModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ imports: [NGB_MODULES, NgbAccordionModule, NgbAlertModule, NgbButtonsModule, NgbCarouselModule, NgbCollapseModule, NgbDatepickerModule, NgbDropdownModule, NgbModalModule, NgbNavModule, NgbPaginationModule, NgbPopoverModule, NgbProgressbarModule, NgbRatingModule, NgbTimepickerModule, NgbToastModule, NgbTooltipModule, NgbTypeaheadModule] });\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(NgbModule, { imports: [NgbAccordionModule, NgbAlertModule, NgbButtonsModule, NgbCarouselModule, NgbCollapseModule, NgbDatepickerModule, NgbDropdownModule, NgbModalModule, NgbNavModule, NgbPaginationModule, NgbPopoverModule, NgbProgressbarModule, NgbRatingModule, NgbTimepickerModule, NgbToastModule, NgbTooltipModule, NgbTypeaheadModule], exports: [NgbAccordionModule, NgbAlertModule, NgbButtonsModule, NgbCarouselModule, NgbCollapseModule, NgbDatepickerModule, NgbDropdownModule, NgbModalModule, NgbNavModule, NgbPaginationModule, NgbPopoverModule, NgbProgressbarModule, NgbRatingModule, NgbTimepickerModule, NgbToastModule, NgbTooltipModule, NgbTypeaheadModule] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NgbModule, [{\n type: NgModule,\n args: [{ imports: NGB_MODULES, exports: NGB_MODULES }]\n }], null, null); })();\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { ModalDismissReasons, NgbAccordion, NgbAccordionConfig, NgbAccordionModule, NgbActiveModal, NgbAlert, NgbAlertConfig, NgbAlertModule, NgbButtonLabel, NgbButtonsModule, NgbCalendar, NgbCalendarBuddhist, NgbCalendarGregorian, NgbCalendarHebrew, NgbCalendarIslamicCivil, NgbCalendarIslamicUmalqura, NgbCalendarPersian, NgbCarousel, NgbCarouselConfig, NgbCarouselModule, NgbCheckBox, NgbCollapse, NgbCollapseConfig, NgbCollapseModule, NgbConfig, NgbDate, NgbDateAdapter, NgbDateNativeAdapter, NgbDateNativeUTCAdapter, NgbDateParserFormatter, NgbDatepicker, NgbDatepickerConfig, NgbDatepickerContent, NgbDatepickerI18n, NgbDatepickerI18nDefault, NgbDatepickerI18nHebrew, NgbDatepickerKeyboardService, NgbDatepickerModule, NgbDatepickerMonth, NgbDropdown, NgbDropdownAnchor, NgbDropdownConfig, NgbDropdownItem, NgbDropdownMenu, NgbDropdownModule, NgbDropdownToggle, NgbHighlight, NgbInputDatepicker, NgbInputDatepickerConfig, NgbModal, NgbModalConfig, NgbModalModule, NgbModalRef, NgbModule, NgbNav, NgbNavConfig, NgbNavContent, NgbNavItem, NgbNavLink, NgbNavModule, NgbNavOutlet, NgbNavPane, NgbNavbar, NgbPagination, NgbPaginationConfig, NgbPaginationEllipsis, NgbPaginationFirst, NgbPaginationLast, NgbPaginationModule, NgbPaginationNext, NgbPaginationNumber, NgbPaginationPages, NgbPaginationPrevious, NgbPanel, NgbPanelContent, NgbPanelHeader, NgbPanelTitle, NgbPanelToggle, NgbPopover, NgbPopoverConfig, NgbPopoverModule, NgbProgressbar, NgbProgressbarConfig, NgbProgressbarModule, NgbRadio, NgbRadioGroup, NgbRating, NgbRatingConfig, NgbRatingModule, NgbSlide, NgbSlideEventDirection, NgbSlideEventSource, NgbTimeAdapter, NgbTimepicker, NgbTimepickerConfig, NgbTimepickerI18n, NgbTimepickerModule, NgbToast, NgbToastConfig, NgbToastHeader, NgbToastModule, NgbTooltip, NgbTooltipConfig, NgbTooltipModule, NgbTypeahead, NgbTypeaheadConfig, NgbTypeaheadModule, NGB_CAROUSEL_DIRECTIVES as ɵa, NGB_DATEPICKER_CALENDAR_FACTORY as ɵb, ContentRef as ɵba, NgbDatepickerDayView as ɵc, NgbDatepickerNavigation as ɵd, NgbDatepickerNavigationSelect as ɵe, NGB_DATEPICKER_18N_FACTORY as ɵf, NGB_DATEPICKER_DATE_ADAPTER_FACTORY as ɵg, NgbDateStructAdapter as ɵh, NGB_DATEPICKER_PARSER_FORMATTER_FACTORY as ɵi, NgbDateISOParserFormatter as ɵj, NgbPopoverWindow as ɵk, NGB_DATEPICKER_TIME_ADAPTER_FACTORY as ɵl, NgbTimeStructAdapter as ɵm, NGB_TIMEPICKER_I18N_FACTORY as ɵn, NgbTimepickerI18nDefault as ɵo, NgbTooltipWindow as ɵp, NgbTypeaheadWindow as ɵq, NgbDatepickerService as ɵr, NgbModalBackdrop as ɵs, NgbModalWindow as ɵt, NgbModalStack as ɵu, ScrollBar as ɵv, ARIA_LIVE_DELAY as ɵw, ARIA_LIVE_DELAY_FACTORY as ɵx, Live as ɵy, NgbCalendarHijri as ɵz };\n\n//# sourceMappingURL=ng-bootstrap.js.map","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TranslateModule } from \"@ngx-translate/core\";\nimport { PaymentSecRoutingModule } from './payment-sec-routing.module';\nimport { PaymentSecComponent } from './payment-sec.component';\n\n\n@NgModule({\n declarations: [\n PaymentSecComponent\n ],\n imports: [\n CommonModule,\n PaymentSecRoutingModule,\n TranslateModule,\n ],\n exports:[PaymentSecComponent,TranslateModule],\n})\nexport class PaymentSecModule { }\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TranslateModule } from \"@ngx-translate/core\";\nimport { WhyAsmioSecRoutingModule } from './why-asmio-sec-routing.module';\nimport { WhyAsmioSecComponent } from './why-asmio-sec.component';\n\n\n@NgModule({\n declarations: [\n WhyAsmioSecComponent\n ],\n imports: [\n CommonModule,\n WhyAsmioSecRoutingModule,\n TranslateModule,\n ],\n exports:[WhyAsmioSecComponent,TranslateModule],\n})\nexport class WhyAsmioSecModule { }\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-why-asmio-sec',\n templateUrl: './why-asmio-sec.component.html',\n styleUrls: ['./why-asmio-sec.component.scss']\n})\nexport class WhyAsmioSecComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
    \n \"\"\n \"\"\n
    \n

    {{'WhyASMIO' | translate}}

    \n
    \n
    \n \"\"\n

    {{'LiveChat' | translate}}

    \n

    \n {{'Agreatway'| translate}}\n

    \n
    \n
    \n \"\"\n

    {{'EasyPaymentTerms' | translate}}

    \n

    \n {{'Asmiooffers'| translate}}\n

    \n
    \n\n
    \n \"\"\n

    {{'High-loadOptimization' | translate}}

    \n

    \n {{'Asmioguarantees'| translate}}\n

    \n
    \n
    \n \"\"\n

    {{'SEO' | translate}}

    \n

    \n {{'Givebusinesses'| translate}}\n

    \n
    \n
    \n \"\"\n

    {{'MultilingualwithRTLSupport' | translate}}

    \n

    \n {{\"Customersexperience\" | translate}}\n

    \n
    \n
    \n \"\"\n

    {{'DeepLinking' | translate}}

    \n

    \n {{'Enablingusers'| translate}}\n

    \n
    \n
    \n
    \n
    ","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TranslateModule } from \"@ngx-translate/core\";\nimport { DiscountSecRoutingModule } from './discount-sec-routing.module';\nimport { DiscountSecComponent } from './discount-sec.component';\n\n\n@NgModule({\n declarations: [\n DiscountSecComponent\n ],\n imports: [\n CommonModule,\n DiscountSecRoutingModule,\n TranslateModule,\n ],\n exports:[DiscountSecComponent,TranslateModule],\n})\nexport class DiscountSecModule { }\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-localization-sec',\n templateUrl: './localization-sec.component.html',\n styleUrls: ['./localization-sec.component.scss']\n})\nexport class LocalizationSecComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
    \n
    \n \"Multi0currency\n
    \n
    \n
    \n
    \n

    \n

    {{'Localization' | translate}}

    \n
    \n \n
    \n
    \n

    {{'Multi-lingual' | translate}}

    \n

    {{'Multi-currencies' | translate}}

    \n
    \n

    {{'ProvidingInformation' | translate}}

    \n
    \n \n \n \n
    \n\n
    \n","import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { SaasSectionComponent } from './saas-section.component';\n\nconst routes: Routes = [{ path: '', component: SaasSectionComponent }];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule]\n})\nexport class SaasSectionRoutingModule { }\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TranslateModule } from \"@ngx-translate/core\";\nimport { OurClientsRoutingModule } from './our-clients-routing.module';\nimport { OurClientsComponent } from './our-clients.component';\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\nimport { MDBBootstrapModule } from 'angular-bootstrap-md';\n@NgModule({\n declarations: [\n OurClientsComponent\n ],\n imports: [\n CommonModule,\n OurClientsRoutingModule,\n TranslateModule,\n NgbModule,\n MDBBootstrapModule.forRoot(),\n ],\n exports:[OurClientsComponent,TranslateModule],\n})\nexport class OurClientsModule { }\n","import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { DashboardSecComponent } from './dashboard-sec.component';\n\nconst routes: Routes = [{ path: '', component: DashboardSecComponent }];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule]\n})\nexport class DashboardSecRoutingModule { }\n","import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { OurClientsComponent } from './our-clients.component';\n\nconst routes: Routes = [{ path: '', component: OurClientsComponent }];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule]\n})\nexport class OurClientsRoutingModule { }\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-sec-section',\n templateUrl: './sec-section.component.html',\n styleUrls: ['./sec-section.component.scss']\n})\nexport class SecSectionComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
    \n
    \n \"Web\n
    \n
    \n
    \n

    {{'CreateyourWebStore' | translate}}

    \n
    \n

    {{'MobileApp' | translate}}

    \n

    \n

    {{'in1place' | translate}}

    \n
    \n \n
    \n
    \n \n \n
    \n
    ","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-advanced-sec',\n templateUrl: './advanced-sec.component.html',\n styleUrls: ['./advanced-sec.component.scss']\n})\nexport class AdvancedSecComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n \n\n}\n","
    \n
    \n
    \n

    {{'Elastic' | translate}}

    \n
    \n

    \n

    {{'Advanced' | translate}}

    \n
    \n \n

    {{'Filter' | translate}}

    \n
    \n
    \n

    {{'advancedp1' | translate}}

    \n

    {{'advancedp2' | translate}}

    \n \n
    \n
    \n \"Elastic\n
    \n
    \n \n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TranslateModule } from \"@ngx-translate/core\";\nimport { SecSectionRoutingModule } from './sec-section-routing.module';\nimport { SecSectionComponent } from './sec-section.component';\n\n\n@NgModule({\n declarations: [\n SecSectionComponent\n ],\n imports: [\n CommonModule,\n SecSectionRoutingModule,\n TranslateModule,\n ],\n exports:[SecSectionComponent,TranslateModule],\n})\nexport class SecSectionModule { }\n","import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { LocalizationSecComponent } from './localization-sec.component';\n\nconst routes: Routes = [{ path: '', component: LocalizationSecComponent }];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule]\n})\nexport class LocalizationSecRoutingModule { }\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-third-section',\n templateUrl: './third-section.component.html',\n styleUrls: ['./third-section.component.scss']\n})\nexport class ThirdSectionComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
    \n
    \n
    \n

    \n

    {{'Customized' | translate}}

    \n
    \n \n

    {{'andResponsiveDesign' | translate}}

    \n
    \n

    {{'Allowbusinesses' | translate}}

    \n
    \n \n \"Customized\n \n \n
    ","import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { PaymentSecComponent } from './payment-sec.component';\n\nconst routes: Routes = [{ path: '', component: PaymentSecComponent }];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule]\n})\nexport class PaymentSecRoutingModule { }\n","import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { ThirdSectionComponent } from './third-section.component';\n\nconst routes: Routes = [{ path: '', component: ThirdSectionComponent }];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule]\n})\nexport class ThirdSectionRoutingModule { }\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-fast-launch-sec',\n templateUrl: './fast-launch-sec.component.html',\n styleUrls: ['./fast-launch-sec.component.scss']\n})\nexport class FastLaunchSecComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
    \n

    {{'Startbuilding' | translate}}

    \n\n

    {{'BuildFast' | translate}}

    \n

    {{'LaunchFaster' | translate}}

    \n \n \n \n
    \n\n","import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { DiscountSecComponent } from './discount-sec.component';\n\nconst routes: Routes = [{ path: '', component: DiscountSecComponent }];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule]\n})\nexport class DiscountSecRoutingModule { }\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TranslateModule } from \"@ngx-translate/core\";\nimport { FashonRoutingModule } from './fashon-routing.module';\nimport { FashonComponent } from './fashon.component';\n\n\n@NgModule({\n declarations: [\n FashonComponent\n ],\n imports: [\n CommonModule,\n FashonRoutingModule,\n TranslateModule,\n ],\n exports:[FashonComponent,TranslateModule],\n})\nexport class FashonModule { }\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TranslateModule } from \"@ngx-translate/core\";\nimport { LandingPageRoutingModule } from './landing-page-routing.module';\nimport { LandingPageComponent } from './landing-page.component';\nimport {HeaderModule} from '../header/header.module'\nimport {FashonModule} from '../fashon/fashon.module'\nimport {SecSectionModule} from '../sec-section/sec-section.module'\nimport {ThirdSectionModule} from '../third-section/third-section.module' \nimport {MultiVendorModule} from '../multi-vendor/multi-vendor.module'\nimport {DashboardSecModule} from '../dashboard-sec/dashboard-sec.module'\nimport {AdvancedSecModule} from '../advanced-sec/advanced-sec.module'\nimport {FastLaunchSecModule} from '../fast-launch-sec/fast-launch-sec.module'\nimport {FooterModule} from '../footer/footer.module'\nimport {LocalizationSecModule} from '../localization-sec/localization-sec.module'\nimport {PaymentSecModule} from '../payment-sec/payment-sec.module'\nimport {DiscountSecModule} from '../discount-sec/discount-sec.module'\nimport {WhyAsmioSecModule} from '../why-asmio-sec/why-asmio-sec.module'\nimport {OurClientsModule} from '../our-clients/our-clients.module'\nimport {SaasSectionModule} from '../saas-section/saas-section.module'\n@NgModule({\n declarations: [\n LandingPageComponent\n ],\n imports: [\n CommonModule,\n LandingPageRoutingModule,\n TranslateModule,\n HeaderModule,\n FashonModule,\n SecSectionModule,\n ThirdSectionModule,\n MultiVendorModule,\n DashboardSecModule,\n AdvancedSecModule,\n FastLaunchSecModule,\n FooterModule,\n LocalizationSecModule,\n PaymentSecModule,\n DiscountSecModule,\n WhyAsmioSecModule,\n OurClientsModule,\n SaasSectionModule\n ]\n})\nexport class LandingPageModule { }\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TranslateModule } from \"@ngx-translate/core\";\nimport { LocalizationSecRoutingModule } from './localization-sec-routing.module';\nimport { LocalizationSecComponent } from './localization-sec.component';\n\n\n@NgModule({\n declarations: [\n LocalizationSecComponent\n ],\n imports: [\n CommonModule,\n LocalizationSecRoutingModule,\n TranslateModule,\n ],\n exports:[LocalizationSecComponent,TranslateModule],\n})\nexport class LocalizationSecModule { }\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-multi-vendor',\n templateUrl: './multi-vendor.component.html',\n styleUrls: ['./multi-vendor.component.scss']\n})\nexport class MultiVendorComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
    \n
    \n
    \n
    \n

    \n

    {{'Multivendor' | translate}}

    \n
    \n \n

    {{'Marketplace' | translate}}

    \n
    \n

    {{'Supportingtraders' | translate}}

    \n
    \n \n \n
    \n
    \n \"Multivendor\n
    \n
    \n","
    \n

    \n

    {{'SaaS vs PaaS' | translate}}

    \n
    \n \n

    \n {{'ASMIOPaaS' | translate}}\n

    \n
    \n
    \n
    \n

    {{'Customization' |translate}}

    \n
    \n\n
    \n

    {{'Support' |translate}}

    \n
    \n\n
    \n

    {{'Setup Costs' |translate}}

    \n
    \n\n
    \n

    {{'User Interface Design' |translate}}

    \n
    \n\n
    \n

    {{'Performance' |translate}}

    \n
    \n\n
    \n

    {{'Data' |translate}}

    \n
    \n\n
    \n

    {{'Limited Integration Support' |translate}}

    \n
    \n\n
    \n
    \n\n
    \n
    \n

    {{'ASMIO PaaS Marketplace Platform' | translate}}

    \n
    \n
    \n

    {{'Any SaaS Marketplace Platforms' | translate}}

    \n
    \n
    \n\n
    \n
    \n

    {{'All ASMIO functionalities are fully customizable and flexible to tailor your needs. ' | translate}}

    \n
    \n
    \n

    {{'Limited to the feature set and configurations available by your SaaS provider. ' | translate}}

    \n
    \n
    \n\n
    \n
    \n

    {{'ASMIO provides fantastic support from our dedicated bilingual speaking team. We have been the provider of choice for business-critical marketplace solutions and have received high ratings for service delivery, technology and support. ' | translate}}

    \n
    \n
    \n

    {{'You’re limited to email or call-center support and support tickets at the best of times. ' | translate}}

    \n
    \n
    \n\n
    \n
    \n

    {{'ASMIO provides a quick implementation service that covers design, information architecture, and marketplace launch.' | translate}}

    \n
    \n
    \n

    {{'Minimal, however you’re probably on your own in setting up your marketplace. ' | translate}}

    \n
    \n
    \n\n
    \n
    \n

    {{'ASMIO has a completely customizable design. ' | translate}}

    \n
    \n
    \n

    {{'You are limited to the available themes or minor customizations that the SaaS provider offers.' | translate}}

    \n
    \n
    \n\n
    \n
    \n

    {{'ASMIO hosts you, your server, so the performance service is higher. ' | translate}}

    \n
    \n
    \n

    {{'You have a shared server with more than website so, your service maybe affected by any unforeseen circumstances that may arise.' | translate}}

    \n
    \n
    \n\n
    \n
    \n

    {{'ASMIO communicates with Data Entry Team to insert all your website data; also, it is your call if you would like to insert it yourself.' | translate}}

    \n
    \n
    \n

    {{'You should insert all website data by yourself.' | translate}}

    \n
    \n
    \n\n
    \n
    \n

    {{'Upon your request, ASMIO can integrate with whatever service provider you name, to manage your internal operations seamlessly. ' | translate}}

    \n
    \n
    \n

    {{'Your SaaS provider has limited integrations with specific third parties. ' | translate}}

    \n
    \n
    \n\n
    \n
    \n\n
    \n \n \n
    \n
    \n
    ","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-saas-section',\n templateUrl: './saas-section.component.html',\n styleUrls: ['./saas-section.component.scss']\n})\nexport class SaasSectionComponent implements OnInit {\n currentJustify = 'fill';\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TranslateModule } from \"@ngx-translate/core\";\nimport { DashboardSecRoutingModule } from './dashboard-sec-routing.module';\nimport { DashboardSecComponent } from './dashboard-sec.component';\n\n\n@NgModule({\n declarations: [\n DashboardSecComponent\n ],\n imports: [\n CommonModule,\n DashboardSecRoutingModule,\n TranslateModule,\n ],\n exports:[DashboardSecComponent,TranslateModule],\n})\nexport class DashboardSecModule { }\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TranslateModule } from \"@ngx-translate/core\";\nimport { SaasSectionRoutingModule } from './saas-section-routing.module';\nimport { SaasSectionComponent } from './saas-section.component';\nimport { NgbModule } from '@ng-bootstrap/ng-bootstrap';\n@NgModule({\n declarations: [\n SaasSectionComponent\n ],\n imports: [\n CommonModule,\n SaasSectionRoutingModule,\n TranslateModule,\n NgbModule,\n ],\n exports:[SaasSectionComponent,TranslateModule],\n})\nexport class SaasSectionModule { }\n","import { Component, ViewEncapsulation, ChangeDetectionStrategy, ElementRef, Renderer2, Input, HostBinding, NgModule, forwardRef, Directive, HostListener, ViewChild, Injectable, EventEmitter, Inject, PLATFORM_ID, ChangeDetectorRef, ContentChildren, Output, isDevMode, Injector, TemplateRef, RendererFactory2, NgZone, ComponentFactoryResolver, ApplicationRef, ViewContainerRef, Attribute, NO_ERRORS_SCHEMA, ContentChild, ɵɵdefineInjectable } from '@angular/core';\nimport { CommonModule, isPlatformBrowser, DOCUMENT } from '@angular/common';\nimport { NG_VALUE_ACCESSOR, FormsModule, NG_VALIDATORS } from '@angular/forms';\nimport { takeUntil, take, throttleTime, map, pairwise, distinctUntilChanged, share, filter, skip } from 'rxjs/operators';\nimport { Subject, timer, merge, fromEvent, of, animationFrameScheduler, Observable } from 'rxjs';\nimport { trigger, state, style, transition, animate } from '@angular/animations';\nimport { ConfigurableFocusTrapFactory, A11yModule } from '@angular/cdk/a11y';\nimport { RouterLinkWithHref } from '@angular/router';\nimport { __decorate, __metadata } from 'tslib';\n\nimport * as ɵngcc0 from '@angular/core';\nimport * as ɵngcc1 from '@angular/common';\nimport * as ɵngcc2 from '@angular/cdk/a11y';\n\nconst _c0 = [\"*\"];\nconst _c1 = [\"mdbBtn\", \"\"];\nconst _c2 = [\"card\"];\nfunction CarouselComponent_div_1_Template(rf, ctx) { if (rf & 1) {\n const _r6 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"div\", 6);\n ɵngcc0.ɵɵelementStart(1, \"a\", 7);\n ɵngcc0.ɵɵlistener(\"click\", function CarouselComponent_div_1_Template_a_click_1_listener() { ɵngcc0.ɵɵrestoreView(_r6); const ctx_r5 = ɵngcc0.ɵɵnextContext(); return ctx_r5.previousSlide(); });\n ɵngcc0.ɵɵelement(2, \"i\", 8);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(3, \"a\", 7);\n ɵngcc0.ɵɵlistener(\"click\", function CarouselComponent_div_1_Template_a_click_3_listener() { ɵngcc0.ɵɵrestoreView(_r6); const ctx_r7 = ɵngcc0.ɵɵnextContext(); return ctx_r7.nextSlide(); });\n ɵngcc0.ɵɵelement(4, \"i\", 9);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r0 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵclassProp(\"disabled\", ctx_r0.activeSlide === 0 && ctx_r0.noWrap);\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵclassProp(\"disabled\", ctx_r0.isLast(ctx_r0.activeSlide) && ctx_r0.noWrap);\n} }\nfunction CarouselComponent_ol_2_li_1_Template(rf, ctx) { if (rf & 1) {\n const _r12 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"li\", 12);\n ɵngcc0.ɵɵlistener(\"click\", function CarouselComponent_ol_2_li_1_Template_li_click_0_listener() { ɵngcc0.ɵɵrestoreView(_r12); const i_r10 = ctx.index; const ctx_r11 = ɵngcc0.ɵɵnextContext(2); return ctx_r11.selectSlide(i_r10); });\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const slidez_r9 = ctx.$implicit;\n ɵngcc0.ɵɵclassProp(\"active\", slidez_r9.active === true);\n} }\nfunction CarouselComponent_ol_2_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"ol\", 10);\n ɵngcc0.ɵɵtemplate(1, CarouselComponent_ol_2_li_1_Template, 1, 2, \"li\", 11);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r1 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngForOf\", ctx_r1.slides);\n} }\nfunction CarouselComponent_ol_3_li_1_Template(rf, ctx) { if (rf & 1) {\n const _r17 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"li\", 12);\n ɵngcc0.ɵɵlistener(\"click\", function CarouselComponent_ol_3_li_1_Template_li_click_0_listener() { ɵngcc0.ɵɵrestoreView(_r17); const i_r15 = ctx.index; const ctx_r16 = ɵngcc0.ɵɵnextContext(2); return ctx_r16.selectSlide(i_r15); });\n ɵngcc0.ɵɵelement(1, \"img\", 13);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const slidez_r14 = ctx.$implicit;\n const ctx_r13 = ɵngcc0.ɵɵnextContext(2);\n ɵngcc0.ɵɵclassProp(\"active\", slidez_r14.active === true);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵpropertyInterpolate(\"src\", ctx_r13.getImg(slidez_r14), ɵngcc0.ɵɵsanitizeUrl);\n} }\nfunction CarouselComponent_ol_3_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"ol\", 10);\n ɵngcc0.ɵɵtemplate(1, CarouselComponent_ol_3_li_1_Template, 2, 3, \"li\", 11);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r2 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngForOf\", ctx_r2.slides);\n} }\nfunction CarouselComponent_a_6_Template(rf, ctx) { if (rf & 1) {\n const _r19 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"a\", 14);\n ɵngcc0.ɵɵlistener(\"click\", function CarouselComponent_a_6_Template_a_click_0_listener() { ɵngcc0.ɵɵrestoreView(_r19); const ctx_r18 = ɵngcc0.ɵɵnextContext(); return ctx_r18.previousSlide(); });\n ɵngcc0.ɵɵelement(1, \"span\", 15);\n ɵngcc0.ɵɵelementStart(2, \"span\", 16);\n ɵngcc0.ɵɵtext(3, \"Previous\");\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r3 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵclassProp(\"disabled\", ctx_r3.activeSlide === 0 && ctx_r3.noWrap);\n} }\nfunction CarouselComponent_a_7_Template(rf, ctx) { if (rf & 1) {\n const _r21 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"a\", 17);\n ɵngcc0.ɵɵlistener(\"click\", function CarouselComponent_a_7_Template_a_click_0_listener() { ɵngcc0.ɵɵrestoreView(_r21); const ctx_r20 = ɵngcc0.ɵɵnextContext(); return ctx_r20.nextSlide(); });\n ɵngcc0.ɵɵelement(1, \"span\", 18);\n ɵngcc0.ɵɵelementStart(2, \"span\", 16);\n ɵngcc0.ɵɵtext(3, \"Next\");\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r4 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵclassProp(\"disabled\", ctx_r4.isLast(ctx_r4.activeSlide) && ctx_r4.noWrap);\n} }\nconst _c3 = [\"input\"];\nconst _c4 = function (a0, a1, a2, a3) { return { \"custom-control custom-checkbox\": a0, \"form-check\": a1, \"custom-control-inline\": a2, \"form-check-inline\": a3 }; };\nconst _c5 = function (a0, a1, a2) { return { \"filled-in\": a0, \"custom-control-input\": a1, \"form-check-input\": a2 }; };\nconst _c6 = function (a0, a1, a2, a3, a4) { return { \"custom-control-label\": a0, \"form-check-label\": a1, \"label-before\": a2, \"checkbox-rounded\": a3, \"disabled\": a4 }; };\nconst _c7 = [\"mdbCollapse\", \"\"];\nconst _c8 = [\"mdbDropdown\", \"\"];\nconst _c9 = function (a0, a1, a2, a3, a4) { return { fas: a0, far: a1, fab: a2, fal: a3, fad: a4 }; };\nconst _c10 = \".error-message,.success-message{position:absolute;top:40px;left:0;font-size:.8rem}textarea~.error-message,textarea~.success-message{top:unset;bottom:-20px}.error-message{color:#f44336}.success-message{color:#00c851}\";\nconst _c11 = [\"mdbModal\", \"\"];\nconst _c12 = \".img-fluid,.modal-dialog.cascading-modal.modal-avatar .modal-header,.video-fluid{max-width:100%;height:auto}.flex-center{display:flex;justify-content:center;align-items:center;height:100%}.flex-center p{margin:0}.flex-center ul{text-align:center}.flex-center ul li{margin-bottom:1rem}.flex-center ul li:last-of-type{margin-bottom:0}.hr-light{border-top:1px solid #fff}.hr-dark{border-top:1px solid #666}.w-responsive{width:75%}@media (max-width:740px){.w-responsive{width:100%}}.collapsible-body{display:none}.jumbotron{box-shadow:0 2px 5px 0 rgba(0,0,0,.16),0 2px 10px 0 rgba(0,0,0,.12);border-radius:.125rem;background-color:#fff}.bg-primary{background-color:#4285f4!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#1266f1!important}.border-primary{border-color:#4285f4!important}.bg-danger{background-color:#ff3547!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#ff0219!important}.border-danger{border-color:#ff3547!important}.bg-warning{background-color:#fb3!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#fa0!important}.border-warning{border-color:#fb3!important}.bg-success{background-color:#00c851!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#00953c!important}.border-success{border-color:#00c851!important}.bg-info{background-color:#33b5e5!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#1a9bcb!important}.border-info{border-color:#33b5e5!important}.bg-default{background-color:#2bbbad!important}a.bg-default:focus,a.bg-default:hover,button.bg-default:focus,button.bg-default:hover{background-color:#219287!important}.border-default{border-color:#2bbbad!important}.bg-secondary{background-color:#a6c!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#9540bf!important}.border-secondary{border-color:#a6c!important}.bg-dark{background-color:#212121!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#080808!important}.border-dark{border-color:#212121!important}.bg-light{background-color:#e0e0e0!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#c7c7c7!important}.border-light{border-color:#e0e0e0!important}.card-img-100{width:100px;height:100px}.card-img-64{width:64px;height:64px}.mml-1{margin-left:-.25rem!important}.flex-1{flex:1}body.modal-open{overflow:auto}.modal-dialog .modal-content{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);border-radius:.125rem}.modal-dialog .modal-content .modal-header{border-top-left-radius:.125rem;border-top-right-radius:.125rem}.modal-dialog.cascading-modal .close{opacity:1;text-shadow:none;color:#fff;outline:0}.modal-dialog.cascading-modal .modal-header{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);border-radius:.125rem}.modal-dialog.cascading-modal .modal-header .close{margin-right:1rem}.modal-dialog.cascading-modal .modal-header .title .fab,.modal-dialog.cascading-modal .modal-header .title .far,.modal-dialog.cascading-modal .modal-header .title .fas{margin-right:9px}.modal-dialog.cascading-modal .modal-c-tabs .md-tabs{box-shadow:0 2px 5px 0 rgba(0,0,0,.16),0 2px 10px 0 rgba(0,0,0,.12);display:flex}.modal-dialog.cascading-modal .modal-c-tabs .md-tabs li{flex:1}.modal-dialog.cascading-modal .modal-c-tabs .md-tabs li a{text-align:center}.modal-dialog.cascading-modal .modal-c-tabs .tab-content{box-shadow:unset}.modal-dialog.cascading-modal.modal-avatar .modal-header{box-shadow:none;margin:-6rem 0 -1rem}.modal-dialog.cascading-modal.modal-avatar .modal-header img{box-shadow:0 8px 17px 0 rgba(0,0,0,.2),0 6px 20px 0 rgba(0,0,0,.19);margin-left:auto;margin-right:auto}.modal-dialog.modal-notify .modal-header{box-shadow:0 2px 5px 0 rgba(0,0,0,.16),0 2px 10px 0 rgba(0,0,0,.12)}.modal-dialog.modal-notify.modal-primary .modal-header{background-color:#4285f4}.modal-dialog.modal-notify.modal-primary .fab,.modal-dialog.modal-notify.modal-primary .far,.modal-dialog.modal-notify.modal-primary .fas{color:#4285f4}.modal-dialog.modal-notify.modal-primary .badge{background-color:#4285f4}.modal-dialog.modal-notify.modal-primary .btn .fab,.modal-dialog.modal-notify.modal-primary .btn .far,.modal-dialog.modal-notify.modal-primary .btn .fas{color:#fff}.modal-dialog.modal-notify.modal-primary .btn.btn-outline-primary .fab,.modal-dialog.modal-notify.modal-primary .btn.btn-outline-primary .far,.modal-dialog.modal-notify.modal-primary .btn.btn-outline-primary .fas{color:#4285f4}.modal-dialog.modal-notify.modal-danger .modal-header{background-color:#ff3547}.modal-dialog.modal-notify.modal-danger .fab,.modal-dialog.modal-notify.modal-danger .far,.modal-dialog.modal-notify.modal-danger .fas{color:#ff3547}.modal-dialog.modal-notify.modal-danger .badge{background-color:#ff3547}.modal-dialog.modal-notify.modal-danger .btn .fab,.modal-dialog.modal-notify.modal-danger .btn .far,.modal-dialog.modal-notify.modal-danger .btn .fas{color:#fff}.modal-dialog.modal-notify.modal-danger .btn.btn-outline-danger .fab,.modal-dialog.modal-notify.modal-danger .btn.btn-outline-danger .far,.modal-dialog.modal-notify.modal-danger .btn.btn-outline-danger .fas{color:#ff3547}.modal-dialog.modal-notify.modal-warning .modal-header{background-color:#fb3}.modal-dialog.modal-notify.modal-warning .fab,.modal-dialog.modal-notify.modal-warning .far,.modal-dialog.modal-notify.modal-warning .fas{color:#fb3}.modal-dialog.modal-notify.modal-warning .badge{background-color:#fb3}.modal-dialog.modal-notify.modal-warning .btn .fab,.modal-dialog.modal-notify.modal-warning .btn .far,.modal-dialog.modal-notify.modal-warning .btn .fas{color:#fff}.modal-dialog.modal-notify.modal-warning .btn.btn-outline-warning .fab,.modal-dialog.modal-notify.modal-warning .btn.btn-outline-warning .far,.modal-dialog.modal-notify.modal-warning .btn.btn-outline-warning .fas{color:#fb3}.modal-dialog.modal-notify.modal-success .modal-header{background-color:#00c851}.modal-dialog.modal-notify.modal-success .fab,.modal-dialog.modal-notify.modal-success .far,.modal-dialog.modal-notify.modal-success .fas{color:#00c851}.modal-dialog.modal-notify.modal-success .badge{background-color:#00c851}.modal-dialog.modal-notify.modal-success .btn .fab,.modal-dialog.modal-notify.modal-success .btn .far,.modal-dialog.modal-notify.modal-success .btn .fas{color:#fff}.modal-dialog.modal-notify.modal-success .btn.btn-outline-success .fab,.modal-dialog.modal-notify.modal-success .btn.btn-outline-success .far,.modal-dialog.modal-notify.modal-success .btn.btn-outline-success .fas{color:#00c851}.modal-dialog.modal-notify.modal-info .modal-header{background-color:#33b5e5}.modal-dialog.modal-notify.modal-info .fab,.modal-dialog.modal-notify.modal-info .far,.modal-dialog.modal-notify.modal-info .fas{color:#33b5e5}.modal-dialog.modal-notify.modal-info .badge{background-color:#33b5e5}.modal-dialog.modal-notify.modal-info .btn .fab,.modal-dialog.modal-notify.modal-info .btn .far,.modal-dialog.modal-notify.modal-info .btn .fas{color:#fff}.modal-dialog.modal-notify.modal-info .btn.btn-outline-info .fab,.modal-dialog.modal-notify.modal-info .btn.btn-outline-info .far,.modal-dialog.modal-notify.modal-info .btn.btn-outline-info .fas{color:#33b5e5}@media (min-width:768px){.modal .modal-dialog.modal-top{top:0}.modal .modal-dialog.modal-left{left:0}.modal .modal-dialog.modal-right{right:0}.modal .modal-dialog.modal-bottom{bottom:0}.modal .modal-dialog.modal-top-left{top:10px;left:10px}.modal .modal-dialog.modal-top-right{top:10px;right:10px}.modal .modal-dialog.modal-bottom-left{bottom:10px;left:10px}.modal .modal-dialog.modal-bottom-right{bottom:10px;right:10px}}@media (min-width:992px){.modal.modal-scrolling{position:relative}.modal.modal-scrolling .modal-dialog{position:fixed;z-index:1050}.modal.modal-content-clickable{top:auto;bottom:auto}.modal.modal-content-clickable .modal-dialog{position:fixed}.modal .modal-fluid{width:100%;max-width:100%}.modal .modal-fluid .modal-content{width:100%}.modal .modal-frame{position:absolute;margin:0!important;width:100%;max-width:100%!important}.modal .modal-frame.modal-bottom{bottom:0}.modal .modal-frame.modal-dialog{height:inherit}.modal .modal-full-height{position:absolute;display:flex;margin:0;width:400px;height:auto;min-height:100%;top:0;right:0}.modal .modal-full-height.modal-bottom,.modal .modal-full-height.modal-top{display:block;width:100%;max-width:100%;height:auto}.modal .modal-full-height.modal-top{bottom:auto}.modal .modal-full-height.modal-bottom{min-height:0;top:auto}.modal .modal-full-height .modal-content{width:100%}.modal .modal-full-height.modal-lg{width:90%;max-width:90%}}@media (min-width:992px) and (min-width:992px){.modal .modal-full-height.modal-lg{width:800px;max-width:800px}}@media (min-width:992px) and (min-width:1200px){.modal .modal-full-height.modal-lg{width:1000px;max-width:1000px}}@media (min-width:992px){.modal .modal-side{position:absolute;bottom:10px;right:10px;margin:0;width:400px}}body.scrollable{overflow-y:auto}.modal-dialog .modal-content{border:0}.modal{padding-right:0!important}@media (min-width:768px){.modal .modal-dialog.modal-top{top:0;left:0;right:0}.modal .modal-dialog.modal-left{left:0}.modal .modal-dialog.modal-right{right:0}.modal .modal-dialog.modal-bottom>.modal-content{position:absolute;bottom:0}.modal .modal-dialog.modal-top-left{top:10px;left:10px}.modal .modal-dialog.modal-top-right{top:10px;right:10px}.modal .modal-dialog.modal-bottom-left{left:10px;bottom:10px}.modal .modal-dialog.modal-bottom-right{right:10px;bottom:10px}}.modal .modal-side.modal-top{top:0}.modal .modal-side.modal-left{left:0}.modal .modal-side.modal-right{right:0}.modal .modal-side.modal-bottom{bottom:0}.modal .modal-side.modal-top-left{top:10px;left:10px}.modal .modal-side.modal-top-right{top:10px;right:10px}.modal .modal-side.modal-bottom-left{left:10px;bottom:10px}.modal .modal-side.modal-bottom-right{right:10px;bottom:10px}.modal.fade.top:not(.show) .modal-dialog{transform:translate3d(0,-25%,0)}.modal.fade.left:not(.show) .modal-dialog{transform:translate3d(-25%,0,0)}.modal.fade.right:not(.show) .modal-dialog{transform:translate3d(25%,0,0)}.modal.fade.bottom:not(.show) .modal-dialog{transform:translate3d(0,25%,0)}.modal.fade.in{opacity:1}.modal.fade.in .modal-dialog{transform:translate(0)}.modal.fade.in .modal-dialog .relative{display:inline-block}.modal.modal-scrolling{position:relative}.modal.modal-scrolling .modal-dialog{position:fixed;z-index:1050}.modal.modal-content-clickable{top:auto;bottom:auto}.modal.modal-content-clickable .modal-dialog{position:fixed}.modal .modal-fluid{width:100%;max-width:100%}.modal .modal-fluid .modal-content{width:100%}.modal .modal-frame{position:absolute;width:100%;max-width:100%;margin:0}@media (max-width:767px){.modal .modal-frame{padding:.5rem}}.modal .modal-frame.modal-bottom{bottom:0}.modal .modal-full-height{display:flex;position:absolute;width:400px;min-height:100%;margin:0;top:0;right:0}@media (max-width:576px){.modal .modal-full-height{width:100%;padding:.5rem}}@media (max-width:992px){.modal .modal-full-height{width:100%;height:unset;position:unset}}@media (max-width:992px){.modal .modal-full-height.modal-left,.modal .modal-full-height.modal-right,.modal .modal-full-height.modal-top{margin:1.75rem auto;min-height:unset}}@media (max-width:768px){.modal .modal-full-height.modal-bottom{margin-top:1.75rem}}@media (min-width:768px) and (max-width:992px){.modal .modal-full-height.modal-bottom{margin-bottom:1.75rem}.modal .modal-full-height.modal-bottom .modal-content{bottom:1rem}}@media (max-width:992px){.modal .modal-full-height.modal-bottom,.modal .modal-full-height.modal-left,.modal .modal-full-height.modal-right,.modal .modal-full-height.modal-top{margin-left:auto;margin-right:auto}}.modal .modal-full-height.modal-bottom,.modal .modal-full-height.modal-top{display:block;width:100%;height:auto}.modal .modal-full-height.modal-top{bottom:auto}.modal .modal-full-height.modal-bottom{bottom:0}.modal .modal-full-height .modal-content{width:100%}.modal .modal-full-height.modal-lg{max-width:90%;width:90%}@media (min-width:992px){.modal .modal-full-height.modal-lg{max-width:800px;width:800px}}@media (min-width:1200px){.modal .modal-full-height.modal-lg{max-width:1000px;width:1000px}}.modal .modal-side{position:absolute;right:10px;bottom:10px;margin:0;min-width:100px}@media (max-width:768px){.modal .modal-side{padding-left:.5rem}}.modal-dialog.cascading-modal{margin-top:10%}.modal-dialog.cascading-modal .modal-header{text-align:center;margin:-2rem 1rem 1rem;padding:1.5rem;border:none;flex-direction:column}.modal-dialog.cascading-modal .modal-header .close{margin-right:2.5rem}.modal-dialog.cascading-modal .modal-header.white-text .close{color:#fff;opacity:1}.modal-dialog.cascading-modal .modal-header .title{width:100%;margin-bottom:0;font-size:1.25rem}.modal-dialog.cascading-modal .modal-header .title .fa{margin-right:9px}.modal-dialog.cascading-modal .modal-header .social-buttons{margin-top:1.5rem}.modal-dialog.cascading-modal .modal-header .social-buttons a{font-size:1rem}.modal-dialog.cascading-modal .modal-c-tabs .md-tabs{margin:-1.5rem 1rem 0}.modal-dialog.cascading-modal .modal-c-tabs .tab-content{padding:1.7rem 0 0}.modal-dialog.cascading-modal .modal-body,.modal-dialog.cascading-modal .modal-footer{color:#616161;padding-right:2rem;padding-left:2rem}.modal-dialog.cascading-modal .modal-body .additional-option,.modal-dialog.cascading-modal .modal-footer .additional-option{text-align:center;margin-top:1rem}.modal-dialog.cascading-modal.modal-avatar{margin-top:6rem}.modal-dialog.cascading-modal.modal-avatar .modal-header{margin:-6rem 2rem -1rem}.modal-dialog.cascading-modal.modal-avatar .modal-header img{width:130px}.modal-dialog.modal-notify .heading{margin:0;padding:.3rem;color:#fff;font-size:1.15rem}.modal-dialog.modal-notify .modal-header{border:0}.modal-dialog.modal-notify .close{opacity:1}.modal-dialog.modal-notify .modal-body{padding:1.5rem;color:#616161}.modal-dialog.modal-notify .btn-outline-secondary-modal{background-color:transparent}.modal-dialog.modal-notify.modal-info .modal-header{background-color:#5394ff}.modal-dialog.modal-notify.modal-info .fa{color:#5394ff}.modal-dialog.modal-notify.modal-info .badge{background-color:#5394ff}.modal-dialog.modal-notify.modal-info .btn-primary-modal{background:#5394ff}.modal-dialog.modal-notify.modal-info .btn-primary-modal:active,.modal-dialog.modal-notify.modal-info .btn-primary-modal:focus,.modal-dialog.modal-notify.modal-info .btn-primary-modal:hover{background-color:#6da4ff!important}.modal-dialog.modal-notify.modal-info .btn-primary-modal.active{background-color:#0059ec!important}.modal-dialog.modal-notify.modal-info .btn-outline-secondary-modal{border:2px solid #5394ff;color:#5394ff!important}.modal-dialog.modal-notify.modal-warning .modal-header{background-color:#ff8e38}.modal-dialog.modal-notify.modal-warning .fa{color:#ff8e38}.modal-dialog.modal-notify.modal-warning .badge{background-color:#ff8e38}.modal-dialog.modal-notify.modal-warning .btn-primary-modal{background:#ff8e38}.modal-dialog.modal-notify.modal-warning .btn-primary-modal:active,.modal-dialog.modal-notify.modal-warning .btn-primary-modal:focus,.modal-dialog.modal-notify.modal-warning .btn-primary-modal:hover{background-color:#ff9c52!important}.modal-dialog.modal-notify.modal-warning .btn-primary-modal.active{background-color:#d15a00!important}.modal-dialog.modal-notify.modal-warning .btn-outline-secondary-modal{border:2px solid #ff8e38;color:#ff8e38!important}.modal-dialog.modal-notify.modal-success .modal-header{background-color:#01d36b}.modal-dialog.modal-notify.modal-success .fa{color:#01d36b}.modal-dialog.modal-notify.modal-success .badge{background-color:#01d36b}.modal-dialog.modal-notify.modal-success .btn-primary-modal{background:#01d36b}.modal-dialog.modal-notify.modal-success .btn-primary-modal:active,.modal-dialog.modal-notify.modal-success .btn-primary-modal:focus,.modal-dialog.modal-notify.modal-success .btn-primary-modal:hover{background-color:#01ec78!important}.modal-dialog.modal-notify.modal-success .btn-primary-modal.active{background-color:#016d38!important}.modal-dialog.modal-notify.modal-success .btn-outline-secondary-modal{border:2px solid #01d36b;color:#01d36b!important}.modal-dialog.modal-notify.modal-danger .modal-header{background-color:#ff4b4b}.modal-dialog.modal-notify.modal-danger .fa{color:#ff4b4b}.modal-dialog.modal-notify.modal-danger .badge{background-color:#ff4b4b}.modal-dialog.modal-notify.modal-danger .btn-primary-modal{background:#ff4b4b}.modal-dialog.modal-notify.modal-danger .btn-primary-modal:active,.modal-dialog.modal-notify.modal-danger .btn-primary-modal:focus,.modal-dialog.modal-notify.modal-danger .btn-primary-modal:hover{background-color:#ff6565!important}.modal-dialog.modal-notify.modal-danger .btn-primary-modal.active{background-color:#e40000!important}.modal-dialog.modal-notify.modal-danger .btn-outline-secondary-modal{border:2px solid #ff4b4b;color:#ff4b4b!important}.modal-sm .modal-content{margin:0 auto;max-width:300px}@media (min-width:768px){.modal-sm{max-width:300px}}.modal .modal-fluid,.modal .modal-frame{width:100%;max-width:100%}.modal-ext .modal-content .modal-header{text-align:center}.modal-ext .modal-content .options{float:left}.modal-ext .modal-content .modal-body .text-xs-center fieldset{margin-top:20px}.modal-ext .modal-content .call{margin-top:1rem}.modal-ext .modal-content .modal-body{padding:2rem 2rem 1rem}.modal-content:not(.card-image) .close{position:absolute;right:15px}.modal-cart li p{margin:5px;font-weight:400}.modal-cart li p .badge{margin-left:10px;margin-top:3px;font-weight:400;position:absolute}.modal-cart li p .quantity{font-size:16px;margin-right:7px;font-weight:300}.modal-cart .cartPageLink{margin-left:10px}.modal-cart .cartPageLink a{text-decoration:underline;color:#666}.modal-cart .total{float:right;font-weight:400}.cf-phone{margin-left:7px}.side-modal{position:fixed;width:400px;height:100%;width:100%;z-index:9999}.side-modal .modal-dialog{position:absolute;bottom:10px;right:10px;width:400px;margin:10px}@media (max-width:760px){.side-modal .modal-dialog{display:none}}.side-modal .modal-header{padding:1rem}.side-modal .modal-header .heading{margin:0;padding:0}.side-modal .modal-content{border:none}.modal-dynamic>:first-child{display:flex;flex-direction:column;height:100%}.side-modal.fade:not(.show) .modal-dialog{transform:translate3d(25%,0,0)}.transparent-bd{opacity:0!important}.modal-backdrop,.modal-backdrop.in{opacity:.5}#exampleModalScroll{overflow-x:hidden;overflow-y:auto}.modal-open .modal{overflow-x:hidden;overflow-y:hidden}.form-dark .card-image{background-size:100%}\";\nconst _c13 = [\"navbar\"];\nconst _c14 = [\"mobile\"];\nconst _c15 = [\"nav\"];\nconst _c16 = [\"container\"];\nconst _c17 = [\"toggler\"];\nfunction NavbarComponent_ng_content_7_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojection(0, 4, [\"*ngIf\", \"this.doubleNav == true\"]);\n} }\nfunction NavbarComponent_div_8_button_1_Template(rf, ctx) { if (rf & 1) {\n const _r8 = ɵngcc0.ɵɵgetCurrentView();\n ɵngcc0.ɵɵelementStart(0, \"button\", 7, 8);\n ɵngcc0.ɵɵlistener(\"click\", function NavbarComponent_div_8_button_1_Template_button_click_0_listener($event) { ɵngcc0.ɵɵrestoreView(_r8); const ctx_r7 = ɵngcc0.ɵɵnextContext(2); ctx_r7.toggle(); return $event.preventDefault(); });\n ɵngcc0.ɵɵelement(2, \"span\", 9);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r5 = ɵngcc0.ɵɵnextContext(2);\n ɵngcc0.ɵɵattribute(\"aria-controls\", ctx_r5.collapseId)(\"aria-expanded\", ctx_r5.ariaExpanded);\n} }\nfunction NavbarComponent_div_8_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"div\");\n ɵngcc0.ɵɵtemplate(1, NavbarComponent_div_8_button_1_Template, 3, 2, \"button\", 6);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r3 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx_r3.el.nativeElement.children.length !== 0);\n} }\nconst _c18 = [[[\"mdb-navbar-brand\"]], [[\"logo\"]], \"*\", [[\"links\"]], [[\"navlinks\"]]];\nconst _c19 = function (a0) { return { container: a0 }; };\nconst _c20 = function (a0) { return { display: a0 }; };\nconst _c21 = function (a0, a1, a2) { return { collapse: a0, show: a1, collapsing: a2 }; };\nconst _c22 = [\"mdb-navbar-brand\", \"logo\", \"*\", \"links\", \"navlinks\"];\nfunction PopoverContainerComponent_h3_0_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"h3\", 2);\n ɵngcc0.ɵɵtext(1);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r0 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵproperty(\"ngClass\", ctx_r0.headerClass);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵtextInterpolate(ctx_r0.title);\n} }\nconst _c23 = [\"mdbTable\", \"\"];\nfunction MdbTablePaginationComponent_li_2_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"li\");\n ɵngcc0.ɵɵtext(1);\n ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n const ctx_r0 = ɵngcc0.ɵɵnextContext();\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵtextInterpolate5(\" \", ctx_r0.firstItemIndex, \" \", ctx_r0.dashKeyword, \" \", ctx_r0.lastVisibleItemIndex, \" \", ctx_r0.ofKeyword, \" \", ctx_r0.allItemsLength, \" \");\n} }\nconst _c24 = function (a0, a1) { return { \"justify-content-end\": a0, \"justify-content-start\": a1 }; };\nconst _c25 = function (a0) { return { disabled: a0 }; };\nconst _c26 = [\"tooltipInner\"];\nconst _c27 = [\"tooltipArrow\"];\nclass MDBBadgeComponent {\n constructor(_el, _renderer) {\n this._el = _el;\n this._renderer = _renderer;\n }\n ngOnInit() {\n this._renderer.addClass(this._el.nativeElement, 'badge');\n if (this.color) {\n const customClassArr = this.color.split(' ');\n customClassArr.forEach((el) => {\n this._renderer.addClass(this._el.nativeElement, el);\n });\n }\n }\n}\nMDBBadgeComponent.ɵfac = function MDBBadgeComponent_Factory(t) { return new (t || MDBBadgeComponent)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nMDBBadgeComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: MDBBadgeComponent, selectors: [[\"mdb-badge\"]], hostVars: 16, hostBindings: function MDBBadgeComponent_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵclassProp(\"badge-default\", ctx.default)(\"badge-primary\", ctx.primary)(\"badge-secondary\", ctx.secondary)(\"badge-success\", ctx.success)(\"badge-info\", ctx.info)(\"badge-warning\", ctx.warning)(\"badge-danger\", ctx.danger)(\"badge-pill\", ctx.pill);\n } }, inputs: { default: \"default\", primary: \"primary\", secondary: \"secondary\", success: \"success\", info: \"info\", warning: \"warning\", danger: \"danger\", pill: \"pill\", classInside: \"classInside\", color: \"color\", class: \"class\" }, ngContentSelectors: _c0, decls: 2, vars: 4, template: function MDBBadgeComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵelementStart(0, \"span\");\n ɵngcc0.ɵɵprojection(1);\n ɵngcc0.ɵɵelementEnd();\n } if (rf & 2) {\n ɵngcc0.ɵɵclassMapInterpolate2(\"\", ctx.class, \" \", ctx.classInside, \"\");\n } }, styles: [\".badge{box-shadow:0 2px 5px 0 rgba(0,0,0,.16),0 2px 10px 0 rgba(0,0,0,.12);border-radius:.125rem;color:#fff!important}.badge-pill{border-radius:10rem;padding-right:.6rem;padding-left:.6rem}.badge-primary{background-color:#4285f4!important;color:#fff!important}.badge-danger{background-color:#ff3547!important;color:#fff!important}.badge-warning{background-color:#fb3!important;color:#fff!important}.badge-success{background-color:#00c851!important;color:#fff!important}.badge-info{background-color:#33b5e5!important;color:#fff!important}.badge-default{background-color:#2bbbad!important;color:#fff!important}.badge-secondary{background-color:#a6c!important;color:#fff!important}.badge-dark{background-color:#212121!important;color:#fff!important}.badge-light{background-color:#e0e0e0!important;color:#000!important}\"], encapsulation: 2, changeDetection: 0 });\nMDBBadgeComponent.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 }\n];\nMDBBadgeComponent.propDecorators = {\n default: [{ type: Input }, { type: HostBinding, args: ['class.badge-default',] }],\n primary: [{ type: Input }, { type: HostBinding, args: ['class.badge-primary',] }],\n secondary: [{ type: Input }, { type: HostBinding, args: ['class.badge-secondary',] }],\n success: [{ type: Input }, { type: HostBinding, args: ['class.badge-success',] }],\n info: [{ type: Input }, { type: HostBinding, args: ['class.badge-info',] }],\n warning: [{ type: Input }, { type: HostBinding, args: ['class.badge-warning',] }],\n danger: [{ type: Input }, { type: HostBinding, args: ['class.badge-danger',] }],\n pill: [{ type: Input }, { type: HostBinding, args: ['class.badge-pill',] }],\n classInside: [{ type: Input }],\n color: [{ type: Input }],\n class: [{ type: Input }]\n};\n\nclass BadgeModule {\n}\nBadgeModule.ɵfac = function BadgeModule_Factory(t) { return new (t || BadgeModule)(); };\nBadgeModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: BadgeModule });\nBadgeModule.ɵinj = ɵngcc0.ɵɵdefineInjector({});\n\nclass MdbBreadcrumbComponent {\n}\nMdbBreadcrumbComponent.ɵfac = function MdbBreadcrumbComponent_Factory(t) { return new (t || MdbBreadcrumbComponent)(); };\nMdbBreadcrumbComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: MdbBreadcrumbComponent, selectors: [[\"mdb-breadcrumb\"]], inputs: { customClass: \"customClass\", textTransform: \"textTransform\" }, ngContentSelectors: _c0, decls: 2, vars: 4, template: function MdbBreadcrumbComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵelementStart(0, \"ol\");\n ɵngcc0.ɵɵprojection(1);\n ɵngcc0.ɵɵelementEnd();\n } if (rf & 2) {\n ɵngcc0.ɵɵclassMapInterpolate2(\"breadcrumb list-inline list-unstyled \", ctx.customClass, \" text-\", ctx.textTransform, \"\");\n } }, encapsulation: 2, changeDetection: 0 });\nMdbBreadcrumbComponent.propDecorators = {\n customClass: [{ type: Input }],\n textTransform: [{ type: Input }]\n};\n\nclass MdbBreadcrumbItemComponent {\n constructor(_el, _renderer) {\n this._el = _el;\n this._renderer = _renderer;\n }\n ngOnInit() {\n this._renderer.addClass(this._el.nativeElement, 'breadcrumb-item');\n }\n}\nMdbBreadcrumbItemComponent.ɵfac = function MdbBreadcrumbItemComponent_Factory(t) { return new (t || MdbBreadcrumbItemComponent)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nMdbBreadcrumbItemComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: MdbBreadcrumbItemComponent, selectors: [[\"mdb-breadcrumb-item\"]], inputs: { fontWeight: \"fontWeight\" }, ngContentSelectors: _c0, decls: 2, vars: 3, template: function MdbBreadcrumbItemComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵelementStart(0, \"li\");\n ɵngcc0.ɵɵprojection(1);\n ɵngcc0.ɵɵelementEnd();\n } if (rf & 2) {\n ɵngcc0.ɵɵclassMapInterpolate1(\"list-inline-item breadcrumb-item font-weight-\", ctx.fontWeight, \"\");\n } }, styles: [\".breadcrumb-item{cursor:pointer}.breadcrumb-item.active{color:#6c757d!important}.breadcrumb-item.active>.breadcrumb-item{cursor:default}.light-font .breadcrumb-item:before{color:#fff}.light-font .breadcrumb-item.active{color:#cfd8dc!important}.light-font .breadcrumb-item.active>.breadcrumb-item{cursor:default}.dark-font .breadcrumb-item:before{color:#000}.dark-font .breadcrumb-item.active{color:#455a64!important}.dark-font .breadcrumb-item.active>.breadcrumb-item{cursor:default}\"], encapsulation: 2 });\nMdbBreadcrumbItemComponent.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 }\n];\nMdbBreadcrumbItemComponent.propDecorators = {\n fontWeight: [{ type: Input }]\n};\n\nclass BreadcrumbModule {\n}\nBreadcrumbModule.ɵfac = function BreadcrumbModule_Factory(t) { return new (t || BreadcrumbModule)(); };\nBreadcrumbModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: BreadcrumbModule });\nBreadcrumbModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ imports: [[CommonModule]] });\n\n// tslint:disable-next-line:component-class-suffix\nclass MdbBtnDirective {\n constructor(el, renderer) {\n this.el = el;\n this.renderer = renderer;\n this.color = '';\n this.rounded = false;\n this.gradient = '';\n this.outline = false;\n this.flat = false;\n this.size = '';\n this.block = false;\n this.floating = false;\n }\n ngOnInit() {\n this.colorClass = 'btn-' + this.color;\n this.gradientClass = this.gradient + '-gradient';\n this.outlineClass = 'btn-outline-' + this.color;\n this.flatClass = 'btn-flat';\n this.roundedClass = 'btn-rounded';\n this.sizeClass = 'btn-' + this.size;\n this.blockClass = 'btn-block';\n this.floatingClass = 'btn-floating';\n this.renderer.addClass(this.el.nativeElement, 'btn');\n this.initClasses();\n }\n ngOnChanges(changes) {\n if (changes.color) {\n this.renderer.removeClass(this.el.nativeElement, this.colorClass);\n if (this.color && this.color !== '') {\n this.colorClass = 'btn-' + this.color;\n this.renderer.addClass(this.el.nativeElement, this.colorClass);\n }\n if (this.outline) {\n const currentOutlineClass = this.outlineClass;\n this.outlineClass = 'btn-outline-' + this.color;\n this.renderer.removeClass(this.el.nativeElement, currentOutlineClass);\n this.renderer.addClass(this.el.nativeElement, this.outlineClass);\n }\n }\n if (changes.gradient) {\n this.renderer.removeClass(this.el.nativeElement, this.gradientClass);\n if (this.gradient !== '') {\n this.gradientClass = this.gradient + '-gradient';\n this.renderer.addClass(this.el.nativeElement, this.gradientClass);\n }\n }\n if (changes.outline) {\n if (!this.outline) {\n this.renderer.removeClass(this.el.nativeElement, this.outlineClass);\n }\n if (this.outline) {\n this.renderer.removeClass(this.el.nativeElement, this.colorClass);\n this.renderer.addClass(this.el.nativeElement, this.outlineClass);\n }\n this.outlineClass = 'btn-outline-' + this.color;\n }\n if (changes.flat) {\n this.renderer.removeClass(this.el.nativeElement, this.flatClass);\n if (this.flat) {\n if (this.color) {\n this.renderer.removeClass(this.el.nativeElement, this.colorClass);\n }\n if (this.gradient) {\n this.renderer.removeClass(this.el.nativeElement, this.gradientClass);\n }\n if (this.outline) {\n this.renderer.removeClass(this.el.nativeElement, this.outlineClass);\n }\n if (this.rounded) {\n this.renderer.removeClass(this.el.nativeElement, this.roundedClass);\n }\n this.renderer.addClass(this.el.nativeElement, this.flatClass);\n }\n }\n if (changes.rounded) {\n this.renderer.removeClass(this.el.nativeElement, this.roundedClass);\n if (this.rounded) {\n this.roundedClass = 'btn-rounded';\n this.renderer.addClass(this.el.nativeElement, this.roundedClass);\n }\n }\n if (changes.size) {\n this.renderer.removeClass(this.el.nativeElement, this.sizeClass);\n if (this.size !== '') {\n this.sizeClass = 'btn-' + this.size;\n this.renderer.addClass(this.el.nativeElement, this.sizeClass);\n }\n }\n if (changes.block) {\n this.renderer.removeClass(this.el.nativeElement, this.blockClass);\n if (this.block) {\n this.blockClass = 'btn-block';\n this.renderer.addClass(this.el.nativeElement, this.blockClass);\n }\n }\n if (changes.floating) {\n if (!this.floating) {\n this.renderer.removeClass(this.el.nativeElement, this.floatingClass);\n this.renderer.addClass(this.el.nativeElement, 'btn');\n }\n if (this.floating) {\n this.floatingClass = 'btn-floating';\n this.renderer.addClass(this.el.nativeElement, this.floatingClass);\n this.renderer.removeClass(this.el.nativeElement, 'btn');\n }\n }\n }\n initClasses() {\n if (this.color !== '') {\n this.renderer.addClass(this.el.nativeElement, this.colorClass);\n }\n if (this.rounded) {\n this.renderer.addClass(this.el.nativeElement, this.roundedClass);\n }\n if (this.gradient) {\n if (this.color !== '') {\n this.renderer.removeClass(this.el.nativeElement, this.colorClass);\n }\n this.renderer.addClass(this.el.nativeElement, this.gradientClass);\n }\n if (this.outline) {\n this.renderer.removeClass(this.el.nativeElement, this.colorClass);\n this.renderer.addClass(this.el.nativeElement, this.outlineClass);\n }\n if (this.flat) {\n if (this.color) {\n this.renderer.removeClass(this.el.nativeElement, this.colorClass);\n }\n if (this.gradient) {\n this.renderer.removeClass(this.el.nativeElement, this.gradientClass);\n }\n if (this.outline) {\n this.renderer.removeClass(this.el.nativeElement, this.outlineClass);\n }\n if (this.rounded) {\n this.renderer.removeClass(this.el.nativeElement, this.roundedClass);\n }\n this.renderer.addClass(this.el.nativeElement, this.flatClass);\n }\n if (this.size) {\n this.renderer.addClass(this.el.nativeElement, this.sizeClass);\n }\n if (this.block) {\n this.renderer.addClass(this.el.nativeElement, this.blockClass);\n }\n if (this.floating) {\n this.renderer.addClass(this.el.nativeElement, this.floatingClass);\n this.renderer.removeClass(this.el.nativeElement, 'btn');\n }\n }\n}\nMdbBtnDirective.ɵfac = function MdbBtnDirective_Factory(t) { return new (t || MdbBtnDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nMdbBtnDirective.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: MdbBtnDirective, selectors: [[\"\", \"mdbBtn\", \"\"]], inputs: { color: \"color\", rounded: \"rounded\", gradient: \"gradient\", outline: \"outline\", flat: \"flat\", size: \"size\", block: \"block\", floating: \"floating\" }, features: [ɵngcc0.ɵɵNgOnChangesFeature], attrs: _c1, ngContentSelectors: _c0, decls: 1, vars: 0, template: function MdbBtnDirective_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵprojection(0);\n } }, styles: [\".btn{box-shadow:0 2px 5px 0 rgba(0,0,0,.16),0 2px 10px 0 rgba(0,0,0,.12);padding:.84rem 2.14rem;font-size:.81rem;transition:all .2s ease-in-out;margin:.375rem;border:0;border-radius:.125rem;cursor:pointer;text-transform:uppercase;white-space:normal;word-wrap:break-word;color:inherit}.btn:active,.btn:focus,.btn:hover{outline:0}.btn:active,.btn:focus,.btn:hover,.btn:not([disabled]):not(.disabled).active,.btn:not([disabled]):not(.disabled):active{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn .fab,.btn .far,.btn .fas{position:relative;font-size:.9rem}.btn .fab.right,.btn .far.right,.btn .fas.right{margin-left:.3rem}.btn .fab.left,.btn .far.left,.btn .fas.left{margin-right:.3rem}.btn.btn-lg .fab,.btn.btn-lg .far,.btn.btn-lg .fas{font-size:1rem}.btn.btn-md .fab,.btn.btn-md .far,.btn.btn-md .fas{font-size:.8rem}.btn.btn-sm .fab,.btn.btn-sm .far,.btn.btn-sm .fas{font-size:.7rem}.btn.btn-tb{padding:.3rem 1rem}.btn.disabled:active,.btn.disabled:focus,.btn.disabled:hover,.btn:disabled:active,.btn:disabled:focus,.btn:disabled:hover{box-shadow:0 2px 5px 0 rgba(0,0,0,.16),0 2px 10px 0 rgba(0,0,0,.12)}.btn.btn-block{margin:inherit}.btn.btn-link{color:#000;box-shadow:none;background-color:transparent}.btn.btn-link:active,.btn.btn-link:focus,.btn.btn-link:hover{box-shadow:none!important;background-color:transparent}.btn[class*=btn-outline-]{padding-top:.7rem;padding-bottom:.7rem}.btn[class*=btn-outline-].btn-lg{padding-top:.88rem;padding-bottom:.88rem}.btn[class*=btn-outline-].btn-md{padding-top:.58rem;padding-bottom:.58rem}.btn[class*=btn-outline-].btn-sm{padding-top:.38rem;padding-bottom:.38rem}.btn-group .btn{margin:0}.btn-floating .fa-lg,.btn .fa-lg{font-size:1.33333em!important}.btn-floating .fa-xs,.btn .fa-xs{font-size:.75em!important}.btn-floating .fa-sm,.btn .fa-sm{font-size:.875em!important}.btn-floating .fa-1x,.btn .fa-1x{font-size:1em!important}.btn-floating .fa-2x,.btn .fa-2x{font-size:2em!important}.btn-floating .fa-3x,.btn .fa-3x{font-size:3em!important}.btn-floating .fa-4x,.btn .fa-4x{font-size:4em!important}.btn-floating .fa-5x,.btn .fa-5x{font-size:5em!important}.btn-floating .fa-6x,.btn .fa-6x{font-size:6em!important}.btn-floating .fa-7x,.btn .fa-7x{font-size:7em!important}.btn-floating .fa-8x,.btn .fa-8x{font-size:8em!important}.btn-floating .fa-9x,.btn .fa-9x{font-size:9em!important}.btn-floating .fa-10x,.btn .fa-10x{font-size:10em!important}.btn-primary{background-color:#4285f4!important;color:#fff}.btn-primary:hover{background-color:#5a95f5;color:#fff}.btn-primary.focus,.btn-primary:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-primary.active,.btn-primary:active,.btn-primary:focus{background-color:#0b51c5}.btn-primary.dropdown-toggle{background-color:#4285f4!important}.btn-primary.dropdown-toggle:focus,.btn-primary.dropdown-toggle:hover{background-color:#5a95f5!important}.btn-primary:not([disabled]):not(.disabled).active,.btn-primary:not([disabled]):not(.disabled):active,.show>.btn-primary.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#0b51c5!important}.btn-primary:not([disabled]):not(.disabled).active:focus,.btn-primary:not([disabled]):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.primary-ic{color:#4285f4!important}.primary-ic:focus,.primary-ic:hover{color:#4285f4}table.table a.btn.btn-primary{color:#fff}.btn-outline-primary{border:2px solid #4285f4!important;background-color:transparent!important;color:#4285f4!important}.btn-outline-primary.active,.btn-outline-primary:active,.btn-outline-primary:active:focus,.btn-outline-primary:focus,.btn-outline-primary:hover{border-color:#4285f4!important;background-color:transparent!important;color:#4285f4!important}.btn-outline-primary:not([disabled]):not(.disabled).active,.btn-outline-primary:not([disabled]):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#4285f4!important}.btn-outline-primary:not([disabled]):not(.disabled).active:focus,.btn-outline-primary:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-danger{background-color:#ff3547!important;color:#fff}.btn-danger:hover{background-color:#ff4f5e;color:#fff}.btn-danger.focus,.btn-danger:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-danger.active,.btn-danger:active,.btn-danger:focus{background-color:#ce0012}.btn-danger.dropdown-toggle{background-color:#ff3547!important}.btn-danger.dropdown-toggle:focus,.btn-danger.dropdown-toggle:hover{background-color:#ff4f5e!important}.btn-danger:not([disabled]):not(.disabled).active,.btn-danger:not([disabled]):not(.disabled):active,.show>.btn-danger.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#ce0012!important}.btn-danger:not([disabled]):not(.disabled).active:focus,.btn-danger:not([disabled]):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.danger-ic{color:#ff3547!important}.danger-ic:focus,.danger-ic:hover{color:#ff3547}table.table a.btn.btn-danger{color:#fff}.btn-outline-danger{border:2px solid #ff3547!important;background-color:transparent!important;color:#ff3547!important}.btn-outline-danger.active,.btn-outline-danger:active,.btn-outline-danger:active:focus,.btn-outline-danger:focus,.btn-outline-danger:hover{border-color:#ff3547!important;background-color:transparent!important;color:#ff3547!important}.btn-outline-danger:not([disabled]):not(.disabled).active,.btn-outline-danger:not([disabled]):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#ff3547!important}.btn-outline-danger:not([disabled]):not(.disabled).active:focus,.btn-outline-danger:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-warning{background-color:#fb3!important;color:#fff}.btn-warning:hover{background-color:#ffc44d;color:#fff}.btn-warning.focus,.btn-warning:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-warning.active,.btn-warning:active,.btn-warning:focus{background-color:#c80}.btn-warning.dropdown-toggle{background-color:#fb3!important}.btn-warning.dropdown-toggle:focus,.btn-warning.dropdown-toggle:hover{background-color:#ffc44d!important}.btn-warning:not([disabled]):not(.disabled).active,.btn-warning:not([disabled]):not(.disabled):active,.show>.btn-warning.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#c80!important}.btn-warning:not([disabled]):not(.disabled).active:focus,.btn-warning:not([disabled]):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.warning-ic{color:#fb3!important}.warning-ic:focus,.warning-ic:hover{color:#fb3}table.table a.btn.btn-warning{color:#fff}.btn-outline-warning{border:2px solid #fb3!important;background-color:transparent!important;color:#fb3!important}.btn-outline-warning.active,.btn-outline-warning:active,.btn-outline-warning:active:focus,.btn-outline-warning:focus,.btn-outline-warning:hover{border-color:#fb3!important;background-color:transparent!important;color:#fb3!important}.btn-outline-warning:not([disabled]):not(.disabled).active,.btn-outline-warning:not([disabled]):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#fb3!important}.btn-outline-warning:not([disabled]):not(.disabled).active:focus,.btn-outline-warning:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-success{background-color:#00c851!important;color:#fff}.btn-success:hover{background-color:#00e25b;color:#fff}.btn-success.focus,.btn-success:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-success.active,.btn-success:active,.btn-success:focus{background-color:#006228}.btn-success.dropdown-toggle{background-color:#00c851!important}.btn-success.dropdown-toggle:focus,.btn-success.dropdown-toggle:hover{background-color:#00e25b!important}.btn-success:not([disabled]):not(.disabled).active,.btn-success:not([disabled]):not(.disabled):active,.show>.btn-success.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#006228!important}.btn-success:not([disabled]):not(.disabled).active:focus,.btn-success:not([disabled]):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.success-ic{color:#00c851!important}.success-ic:focus,.success-ic:hover{color:#00c851}table.table a.btn.btn-success{color:#fff}.btn-outline-success{border:2px solid #00c851!important;background-color:transparent!important;color:#00c851!important}.btn-outline-success.active,.btn-outline-success:active,.btn-outline-success:active:focus,.btn-outline-success:focus,.btn-outline-success:hover{border-color:#00c851!important;background-color:transparent!important;color:#00c851!important}.btn-outline-success:not([disabled]):not(.disabled).active,.btn-outline-success:not([disabled]):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#00c851!important}.btn-outline-success:not([disabled]):not(.disabled).active:focus,.btn-outline-success:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-info{background-color:#33b5e5!important;color:#fff}.btn-info:hover{background-color:#4abde8;color:#fff}.btn-info.focus,.btn-info:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-info.active,.btn-info:active,.btn-info:focus{background-color:#14799e}.btn-info.dropdown-toggle{background-color:#33b5e5!important}.btn-info.dropdown-toggle:focus,.btn-info.dropdown-toggle:hover{background-color:#4abde8!important}.btn-info:not([disabled]):not(.disabled).active,.btn-info:not([disabled]):not(.disabled):active,.show>.btn-info.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#14799e!important}.btn-info:not([disabled]):not(.disabled).active:focus,.btn-info:not([disabled]):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.info-ic{color:#33b5e5!important}.info-ic:focus,.info-ic:hover{color:#33b5e5}table.table a.btn.btn-info{color:#fff}.btn-outline-info{border:2px solid #33b5e5!important;background-color:transparent!important;color:#33b5e5!important}.btn-outline-info.active,.btn-outline-info:active,.btn-outline-info:active:focus,.btn-outline-info:focus,.btn-outline-info:hover{border-color:#33b5e5!important;background-color:transparent!important;color:#33b5e5!important}.btn-outline-info:not([disabled]):not(.disabled).active,.btn-outline-info:not([disabled]):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#33b5e5!important}.btn-outline-info:not([disabled]):not(.disabled).active:focus,.btn-outline-info:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-default{background-color:#2bbbad!important;color:#fff}.btn-default:hover{background-color:#30cfc0;color:#fff}.btn-default.focus,.btn-default:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-default.active,.btn-default:active,.btn-default:focus{background-color:#186860}.btn-default.dropdown-toggle{background-color:#2bbbad!important}.btn-default.dropdown-toggle:focus,.btn-default.dropdown-toggle:hover{background-color:#30cfc0!important}.btn-default:not([disabled]):not(.disabled).active,.btn-default:not([disabled]):not(.disabled):active,.show>.btn-default.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#186860!important}.btn-default:not([disabled]):not(.disabled).active:focus,.btn-default:not([disabled]):not(.disabled):active:focus,.show>.btn-default.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.default-ic{color:#2bbbad!important}.default-ic:focus,.default-ic:hover{color:#2bbbad}table.table a.btn.btn-default{color:#fff}.btn-outline-default{border:2px solid #2bbbad!important;background-color:transparent!important;color:#2bbbad!important}.btn-outline-default.active,.btn-outline-default:active,.btn-outline-default:active:focus,.btn-outline-default:focus,.btn-outline-default:hover{border-color:#2bbbad!important;background-color:transparent!important;color:#2bbbad!important}.btn-outline-default:not([disabled]):not(.disabled).active,.btn-outline-default:not([disabled]):not(.disabled):active,.show>.btn-outline-default.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#2bbbad!important}.btn-outline-default:not([disabled]):not(.disabled).active:focus,.btn-outline-default:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-default.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-secondary{background-color:#a6c!important;color:#fff}.btn-secondary:hover{background-color:#b579d2;color:#fff}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-secondary.active,.btn-secondary:active,.btn-secondary:focus{background-color:#739}.btn-secondary.dropdown-toggle{background-color:#a6c!important}.btn-secondary.dropdown-toggle:focus,.btn-secondary.dropdown-toggle:hover{background-color:#b579d2!important}.btn-secondary:not([disabled]):not(.disabled).active,.btn-secondary:not([disabled]):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#739!important}.btn-secondary:not([disabled]):not(.disabled).active:focus,.btn-secondary:not([disabled]):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.secondary-ic{color:#a6c!important}.secondary-ic:focus,.secondary-ic:hover{color:#a6c}table.table a.btn.btn-secondary{color:#fff}.btn-outline-secondary{border:2px solid #a6c!important;background-color:transparent!important;color:#a6c!important}.btn-outline-secondary.active,.btn-outline-secondary:active,.btn-outline-secondary:active:focus,.btn-outline-secondary:focus,.btn-outline-secondary:hover{border-color:#a6c!important;background-color:transparent!important;color:#a6c!important}.btn-outline-secondary:not([disabled]):not(.disabled).active,.btn-outline-secondary:not([disabled]):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#a6c!important}.btn-outline-secondary:not([disabled]):not(.disabled).active:focus,.btn-outline-secondary:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-elegant{background-color:#2e2e2e!important;color:#fff}.btn-elegant:hover{background-color:#3b3b3b;color:#fff}.btn-elegant.focus,.btn-elegant:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-elegant.active,.btn-elegant:active,.btn-elegant:focus{background-color:#000}.btn-elegant.dropdown-toggle{background-color:#2e2e2e!important}.btn-elegant.dropdown-toggle:focus,.btn-elegant.dropdown-toggle:hover{background-color:#3b3b3b!important}.btn-elegant:not([disabled]):not(.disabled).active,.btn-elegant:not([disabled]):not(.disabled):active,.show>.btn-elegant.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#000!important}.btn-elegant:not([disabled]):not(.disabled).active:focus,.btn-elegant:not([disabled]):not(.disabled):active:focus,.show>.btn-elegant.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.elegant-ic{color:#2e2e2e!important}.elegant-ic:focus,.elegant-ic:hover{color:#2e2e2e}table.table a.btn.btn-elegant{color:#fff}.btn-outline-elegant{border:2px solid #2e2e2e!important;background-color:transparent!important;color:#2e2e2e!important}.btn-outline-elegant.active,.btn-outline-elegant:active,.btn-outline-elegant:active:focus,.btn-outline-elegant:focus,.btn-outline-elegant:hover{border-color:#2e2e2e!important;background-color:transparent!important;color:#2e2e2e!important}.btn-outline-elegant:not([disabled]):not(.disabled).active,.btn-outline-elegant:not([disabled]):not(.disabled):active,.show>.btn-outline-elegant.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#2e2e2e!important}.btn-outline-elegant:not([disabled]):not(.disabled).active:focus,.btn-outline-elegant:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-elegant.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-unique{background-color:#880e4f!important;color:#fff}.btn-unique:hover{background-color:#9f105c;color:#fff}.btn-unique.focus,.btn-unique:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-unique.active,.btn-unique:active,.btn-unique:focus{background-color:#2c0419}.btn-unique.dropdown-toggle{background-color:#880e4f!important}.btn-unique.dropdown-toggle:focus,.btn-unique.dropdown-toggle:hover{background-color:#9f105c!important}.btn-unique:not([disabled]):not(.disabled).active,.btn-unique:not([disabled]):not(.disabled):active,.show>.btn-unique.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#2c0419!important}.btn-unique:not([disabled]):not(.disabled).active:focus,.btn-unique:not([disabled]):not(.disabled):active:focus,.show>.btn-unique.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.unique-ic{color:#880e4f!important}.unique-ic:focus,.unique-ic:hover{color:#880e4f}table.table a.btn.btn-unique{color:#fff}.btn-outline-unique{border:2px solid #880e4f!important;background-color:transparent!important;color:#880e4f!important}.btn-outline-unique.active,.btn-outline-unique:active,.btn-outline-unique:active:focus,.btn-outline-unique:focus,.btn-outline-unique:hover{border-color:#880e4f!important;background-color:transparent!important;color:#880e4f!important}.btn-outline-unique:not([disabled]):not(.disabled).active,.btn-outline-unique:not([disabled]):not(.disabled):active,.show>.btn-outline-unique.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#880e4f!important}.btn-outline-unique:not([disabled]):not(.disabled).active:focus,.btn-outline-unique:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-unique.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-dark-green{background-color:#388e3c!important;color:#fff}.btn-dark-green:hover{background-color:#3fa044;color:#fff}.btn-dark-green.focus,.btn-dark-green:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-dark-green.active,.btn-dark-green:active,.btn-dark-green:focus{background-color:#1b451d}.btn-dark-green.dropdown-toggle{background-color:#388e3c!important}.btn-dark-green.dropdown-toggle:focus,.btn-dark-green.dropdown-toggle:hover{background-color:#3fa044!important}.btn-dark-green:not([disabled]):not(.disabled).active,.btn-dark-green:not([disabled]):not(.disabled):active,.show>.btn-dark-green.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#1b451d!important}.btn-dark-green:not([disabled]):not(.disabled).active:focus,.btn-dark-green:not([disabled]):not(.disabled):active:focus,.show>.btn-dark-green.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.dark-green-ic{color:#388e3c!important}.dark-green-ic:focus,.dark-green-ic:hover{color:#388e3c}table.table a.btn.btn-dark-green{color:#fff}.btn-outline-dark-green{border:2px solid #388e3c!important;background-color:transparent!important;color:#388e3c!important}.btn-outline-dark-green.active,.btn-outline-dark-green:active,.btn-outline-dark-green:active:focus,.btn-outline-dark-green:focus,.btn-outline-dark-green:hover{border-color:#388e3c!important;background-color:transparent!important;color:#388e3c!important}.btn-outline-dark-green:not([disabled]):not(.disabled).active,.btn-outline-dark-green:not([disabled]):not(.disabled):active,.show>.btn-outline-dark-green.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#388e3c!important}.btn-outline-dark-green:not([disabled]):not(.disabled).active:focus,.btn-outline-dark-green:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-dark-green.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-mdb-color{background-color:#59698d!important;color:#fff}.btn-mdb-color:hover{background-color:#63759d;color:#fff}.btn-mdb-color.focus,.btn-mdb-color:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-mdb-color.active,.btn-mdb-color:active,.btn-mdb-color:focus{background-color:#323a4e}.btn-mdb-color.dropdown-toggle{background-color:#59698d!important}.btn-mdb-color.dropdown-toggle:focus,.btn-mdb-color.dropdown-toggle:hover{background-color:#63759d!important}.btn-mdb-color:not([disabled]):not(.disabled).active,.btn-mdb-color:not([disabled]):not(.disabled):active,.show>.btn-mdb-color.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#323a4e!important}.btn-mdb-color:not([disabled]):not(.disabled).active:focus,.btn-mdb-color:not([disabled]):not(.disabled):active:focus,.show>.btn-mdb-color.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.mdb-color-ic{color:#59698d!important}.mdb-color-ic:focus,.mdb-color-ic:hover{color:#59698d}table.table a.btn.btn-mdb-color{color:#fff}.btn-outline-mdb-color{border:2px solid #59698d!important;background-color:transparent!important;color:#59698d!important}.btn-outline-mdb-color.active,.btn-outline-mdb-color:active,.btn-outline-mdb-color:active:focus,.btn-outline-mdb-color:focus,.btn-outline-mdb-color:hover{border-color:#59698d!important;background-color:transparent!important;color:#59698d!important}.btn-outline-mdb-color:not([disabled]):not(.disabled).active,.btn-outline-mdb-color:not([disabled]):not(.disabled):active,.show>.btn-outline-mdb-color.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#59698d!important}.btn-outline-mdb-color:not([disabled]):not(.disabled).active:focus,.btn-outline-mdb-color:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-mdb-color.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-red{background-color:#d32f2f!important;color:#fff}.btn-red:hover{background-color:#d74444;color:#fff}.btn-red.focus,.btn-red:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-red.active,.btn-red:active,.btn-red:focus{background-color:#811b1b}.btn-red.dropdown-toggle{background-color:#d32f2f!important}.btn-red.dropdown-toggle:focus,.btn-red.dropdown-toggle:hover{background-color:#d74444!important}.btn-red:not([disabled]):not(.disabled).active,.btn-red:not([disabled]):not(.disabled):active,.show>.btn-red.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#811b1b!important}.btn-red:not([disabled]):not(.disabled).active:focus,.btn-red:not([disabled]):not(.disabled):active:focus,.show>.btn-red.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.red-ic{color:#d32f2f!important}.red-ic:focus,.red-ic:hover{color:#d32f2f}table.table a.btn.btn-red{color:#fff}.btn-outline-red{border:2px solid #d32f2f!important;background-color:transparent!important;color:#d32f2f!important}.btn-outline-red.active,.btn-outline-red:active,.btn-outline-red:active:focus,.btn-outline-red:focus,.btn-outline-red:hover{border-color:#d32f2f!important;background-color:transparent!important;color:#d32f2f!important}.btn-outline-red:not([disabled]):not(.disabled).active,.btn-outline-red:not([disabled]):not(.disabled):active,.show>.btn-outline-red.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#d32f2f!important}.btn-outline-red:not([disabled]):not(.disabled).active:focus,.btn-outline-red:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-red.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-pink{background-color:#ec407a!important;color:#fff}.btn-pink:hover{background-color:#ee578a;color:#fff}.btn-pink.focus,.btn-pink:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-pink.active,.btn-pink:active,.btn-pink:focus{background-color:#b41249}.btn-pink.dropdown-toggle{background-color:#ec407a!important}.btn-pink.dropdown-toggle:focus,.btn-pink.dropdown-toggle:hover{background-color:#ee578a!important}.btn-pink:not([disabled]):not(.disabled).active,.btn-pink:not([disabled]):not(.disabled):active,.show>.btn-pink.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#b41249!important}.btn-pink:not([disabled]):not(.disabled).active:focus,.btn-pink:not([disabled]):not(.disabled):active:focus,.show>.btn-pink.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.pink-ic{color:#ec407a!important}.pink-ic:focus,.pink-ic:hover{color:#ec407a}table.table a.btn.btn-pink{color:#fff}.btn-outline-pink{border:2px solid #ec407a!important;background-color:transparent!important;color:#ec407a!important}.btn-outline-pink.active,.btn-outline-pink:active,.btn-outline-pink:active:focus,.btn-outline-pink:focus,.btn-outline-pink:hover{border-color:#ec407a!important;background-color:transparent!important;color:#ec407a!important}.btn-outline-pink:not([disabled]):not(.disabled).active,.btn-outline-pink:not([disabled]):not(.disabled):active,.show>.btn-outline-pink.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#ec407a!important}.btn-outline-pink:not([disabled]):not(.disabled).active:focus,.btn-outline-pink:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-pink.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-purple{background-color:#8e24aa!important;color:#fff}.btn-purple:hover{background-color:#a028bf;color:#fff}.btn-purple.focus,.btn-purple:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-purple.active,.btn-purple:active,.btn-purple:focus{background-color:#481256}.btn-purple.dropdown-toggle{background-color:#8e24aa!important}.btn-purple.dropdown-toggle:focus,.btn-purple.dropdown-toggle:hover{background-color:#a028bf!important}.btn-purple:not([disabled]):not(.disabled).active,.btn-purple:not([disabled]):not(.disabled):active,.show>.btn-purple.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#481256!important}.btn-purple:not([disabled]):not(.disabled).active:focus,.btn-purple:not([disabled]):not(.disabled):active:focus,.show>.btn-purple.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.purple-ic{color:#8e24aa!important}.purple-ic:focus,.purple-ic:hover{color:#8e24aa}table.table a.btn.btn-purple{color:#fff}.btn-outline-purple{border:2px solid #8e24aa!important;background-color:transparent!important;color:#8e24aa!important}.btn-outline-purple.active,.btn-outline-purple:active,.btn-outline-purple:active:focus,.btn-outline-purple:focus,.btn-outline-purple:hover{border-color:#8e24aa!important;background-color:transparent!important;color:#8e24aa!important}.btn-outline-purple:not([disabled]):not(.disabled).active,.btn-outline-purple:not([disabled]):not(.disabled):active,.show>.btn-outline-purple.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#8e24aa!important}.btn-outline-purple:not([disabled]):not(.disabled).active:focus,.btn-outline-purple:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-purple.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-deep-purple{background-color:#512da8!important;color:#fff}.btn-deep-purple:hover{background-color:#5b32bc;color:#fff}.btn-deep-purple.focus,.btn-deep-purple:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-deep-purple.active,.btn-deep-purple:active,.btn-deep-purple:focus{background-color:#2a1758}.btn-deep-purple.dropdown-toggle{background-color:#512da8!important}.btn-deep-purple.dropdown-toggle:focus,.btn-deep-purple.dropdown-toggle:hover{background-color:#5b32bc!important}.btn-deep-purple:not([disabled]):not(.disabled).active,.btn-deep-purple:not([disabled]):not(.disabled):active,.show>.btn-deep-purple.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#2a1758!important}.btn-deep-purple:not([disabled]):not(.disabled).active:focus,.btn-deep-purple:not([disabled]):not(.disabled):active:focus,.show>.btn-deep-purple.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.deep-purple-ic{color:#512da8!important}.deep-purple-ic:focus,.deep-purple-ic:hover{color:#512da8}table.table a.btn.btn-deep-purple{color:#fff}.btn-outline-deep-purple{border:2px solid #512da8!important;background-color:transparent!important;color:#512da8!important}.btn-outline-deep-purple.active,.btn-outline-deep-purple:active,.btn-outline-deep-purple:active:focus,.btn-outline-deep-purple:focus,.btn-outline-deep-purple:hover{border-color:#512da8!important;background-color:transparent!important;color:#512da8!important}.btn-outline-deep-purple:not([disabled]):not(.disabled).active,.btn-outline-deep-purple:not([disabled]):not(.disabled):active,.show>.btn-outline-deep-purple.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#512da8!important}.btn-outline-deep-purple:not([disabled]):not(.disabled).active:focus,.btn-outline-deep-purple:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-deep-purple.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-indigo{background-color:#3f51b5!important;color:#fff}.btn-indigo:hover{background-color:#4d5ec1;color:#fff}.btn-indigo.focus,.btn-indigo:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-indigo.active,.btn-indigo:active,.btn-indigo:focus{background-color:#252f69}.btn-indigo.dropdown-toggle{background-color:#3f51b5!important}.btn-indigo.dropdown-toggle:focus,.btn-indigo.dropdown-toggle:hover{background-color:#4d5ec1!important}.btn-indigo:not([disabled]):not(.disabled).active,.btn-indigo:not([disabled]):not(.disabled):active,.show>.btn-indigo.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#252f69!important}.btn-indigo:not([disabled]):not(.disabled).active:focus,.btn-indigo:not([disabled]):not(.disabled):active:focus,.show>.btn-indigo.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.indigo-ic{color:#3f51b5!important}.indigo-ic:focus,.indigo-ic:hover{color:#3f51b5}table.table a.btn.btn-indigo{color:#fff}.btn-outline-indigo{border:2px solid #3f51b5!important;background-color:transparent!important;color:#3f51b5!important}.btn-outline-indigo.active,.btn-outline-indigo:active,.btn-outline-indigo:active:focus,.btn-outline-indigo:focus,.btn-outline-indigo:hover{border-color:#3f51b5!important;background-color:transparent!important;color:#3f51b5!important}.btn-outline-indigo:not([disabled]):not(.disabled).active,.btn-outline-indigo:not([disabled]):not(.disabled):active,.show>.btn-outline-indigo.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#3f51b5!important}.btn-outline-indigo:not([disabled]):not(.disabled).active:focus,.btn-outline-indigo:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-indigo.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-blue{background-color:#1976d2!important;color:#fff}.btn-blue:hover{background-color:#2083e4;color:#fff}.btn-blue.focus,.btn-blue:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-blue.active,.btn-blue:active,.btn-blue:focus{background-color:#0e4377}.btn-blue.dropdown-toggle{background-color:#1976d2!important}.btn-blue.dropdown-toggle:focus,.btn-blue.dropdown-toggle:hover{background-color:#2083e4!important}.btn-blue:not([disabled]):not(.disabled).active,.btn-blue:not([disabled]):not(.disabled):active,.show>.btn-blue.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#0e4377!important}.btn-blue:not([disabled]):not(.disabled).active:focus,.btn-blue:not([disabled]):not(.disabled):active:focus,.show>.btn-blue.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.blue-ic{color:#1976d2!important}.blue-ic:focus,.blue-ic:hover{color:#1976d2}table.table a.btn.btn-blue{color:#fff}.btn-outline-blue{border:2px solid #1976d2!important;background-color:transparent!important;color:#1976d2!important}.btn-outline-blue.active,.btn-outline-blue:active,.btn-outline-blue:active:focus,.btn-outline-blue:focus,.btn-outline-blue:hover{border-color:#1976d2!important;background-color:transparent!important;color:#1976d2!important}.btn-outline-blue:not([disabled]):not(.disabled).active,.btn-outline-blue:not([disabled]):not(.disabled):active,.show>.btn-outline-blue.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#1976d2!important}.btn-outline-blue:not([disabled]):not(.disabled).active:focus,.btn-outline-blue:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-blue.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-light-blue{background-color:#82b1ff!important;color:#fff}.btn-light-blue:hover{background-color:#9cc1ff;color:#fff}.btn-light-blue.focus,.btn-light-blue:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-light-blue.active,.btn-light-blue:active,.btn-light-blue:focus{background-color:#1c71ff}.btn-light-blue.dropdown-toggle{background-color:#82b1ff!important}.btn-light-blue.dropdown-toggle:focus,.btn-light-blue.dropdown-toggle:hover{background-color:#9cc1ff!important}.btn-light-blue:not([disabled]):not(.disabled).active,.btn-light-blue:not([disabled]):not(.disabled):active,.show>.btn-light-blue.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#1c71ff!important}.btn-light-blue:not([disabled]):not(.disabled).active:focus,.btn-light-blue:not([disabled]):not(.disabled):active:focus,.show>.btn-light-blue.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.light-blue-ic{color:#82b1ff!important}.light-blue-ic:focus,.light-blue-ic:hover{color:#82b1ff}table.table a.btn.btn-light-blue{color:#fff}.btn-outline-light-blue{border:2px solid #82b1ff!important;background-color:transparent!important;color:#82b1ff!important}.btn-outline-light-blue.active,.btn-outline-light-blue:active,.btn-outline-light-blue:active:focus,.btn-outline-light-blue:focus,.btn-outline-light-blue:hover{border-color:#82b1ff!important;background-color:transparent!important;color:#82b1ff!important}.btn-outline-light-blue:not([disabled]):not(.disabled).active,.btn-outline-light-blue:not([disabled]):not(.disabled):active,.show>.btn-outline-light-blue.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#82b1ff!important}.btn-outline-light-blue:not([disabled]):not(.disabled).active:focus,.btn-outline-light-blue:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-light-blue.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-cyan{background-color:#00bcd4!important;color:#fff}.btn-cyan:hover{background-color:#00d3ee;color:#fff}.btn-cyan.focus,.btn-cyan:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-cyan.active,.btn-cyan:active,.btn-cyan:focus{background-color:#00626e}.btn-cyan.dropdown-toggle{background-color:#00bcd4!important}.btn-cyan.dropdown-toggle:focus,.btn-cyan.dropdown-toggle:hover{background-color:#00d3ee!important}.btn-cyan:not([disabled]):not(.disabled).active,.btn-cyan:not([disabled]):not(.disabled):active,.show>.btn-cyan.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#00626e!important}.btn-cyan:not([disabled]):not(.disabled).active:focus,.btn-cyan:not([disabled]):not(.disabled):active:focus,.show>.btn-cyan.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.cyan-ic{color:#00bcd4!important}.cyan-ic:focus,.cyan-ic:hover{color:#00bcd4}table.table a.btn.btn-cyan{color:#fff}.btn-outline-cyan{border:2px solid #00bcd4!important;background-color:transparent!important;color:#00bcd4!important}.btn-outline-cyan.active,.btn-outline-cyan:active,.btn-outline-cyan:active:focus,.btn-outline-cyan:focus,.btn-outline-cyan:hover{border-color:#00bcd4!important;background-color:transparent!important;color:#00bcd4!important}.btn-outline-cyan:not([disabled]):not(.disabled).active,.btn-outline-cyan:not([disabled]):not(.disabled):active,.show>.btn-outline-cyan.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#00bcd4!important}.btn-outline-cyan:not([disabled]):not(.disabled).active:focus,.btn-outline-cyan:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-cyan.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-teal{background-color:#00796b!important;color:#fff}.btn-teal:hover{background-color:#009382;color:#fff}.btn-teal.focus,.btn-teal:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-teal.active,.btn-teal:active,.btn-teal:focus{background-color:#001311}.btn-teal.dropdown-toggle{background-color:#00796b!important}.btn-teal.dropdown-toggle:focus,.btn-teal.dropdown-toggle:hover{background-color:#009382!important}.btn-teal:not([disabled]):not(.disabled).active,.btn-teal:not([disabled]):not(.disabled):active,.show>.btn-teal.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#001311!important}.btn-teal:not([disabled]):not(.disabled).active:focus,.btn-teal:not([disabled]):not(.disabled):active:focus,.show>.btn-teal.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.teal-ic{color:#00796b!important}.teal-ic:focus,.teal-ic:hover{color:#00796b}table.table a.btn.btn-teal{color:#fff}.btn-outline-teal{border:2px solid #00796b!important;background-color:transparent!important;color:#00796b!important}.btn-outline-teal.active,.btn-outline-teal:active,.btn-outline-teal:active:focus,.btn-outline-teal:focus,.btn-outline-teal:hover{border-color:#00796b!important;background-color:transparent!important;color:#00796b!important}.btn-outline-teal:not([disabled]):not(.disabled).active,.btn-outline-teal:not([disabled]):not(.disabled):active,.show>.btn-outline-teal.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#00796b!important}.btn-outline-teal:not([disabled]):not(.disabled).active:focus,.btn-outline-teal:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-teal.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-green{background-color:#388e3c!important;color:#fff}.btn-green:hover{background-color:#3fa044;color:#fff}.btn-green.focus,.btn-green:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-green.active,.btn-green:active,.btn-green:focus{background-color:#1b451d}.btn-green.dropdown-toggle{background-color:#388e3c!important}.btn-green.dropdown-toggle:focus,.btn-green.dropdown-toggle:hover{background-color:#3fa044!important}.btn-green:not([disabled]):not(.disabled).active,.btn-green:not([disabled]):not(.disabled):active,.show>.btn-green.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#1b451d!important}.btn-green:not([disabled]):not(.disabled).active:focus,.btn-green:not([disabled]):not(.disabled):active:focus,.show>.btn-green.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.green-ic{color:#388e3c!important}.green-ic:focus,.green-ic:hover{color:#388e3c}table.table a.btn.btn-green{color:#fff}.btn-outline-green{border:2px solid #388e3c!important;background-color:transparent!important;color:#388e3c!important}.btn-outline-green.active,.btn-outline-green:active,.btn-outline-green:active:focus,.btn-outline-green:focus,.btn-outline-green:hover{border-color:#388e3c!important;background-color:transparent!important;color:#388e3c!important}.btn-outline-green:not([disabled]):not(.disabled).active,.btn-outline-green:not([disabled]):not(.disabled):active,.show>.btn-outline-green.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#388e3c!important}.btn-outline-green:not([disabled]):not(.disabled).active:focus,.btn-outline-green:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-green.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-light-green{background-color:#8bc34a!important;color:#fff}.btn-light-green:hover{background-color:#97c95d;color:#fff}.btn-light-green.focus,.btn-light-green:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-light-green.active,.btn-light-green:active,.btn-light-green:focus{background-color:#577d2a}.btn-light-green.dropdown-toggle{background-color:#8bc34a!important}.btn-light-green.dropdown-toggle:focus,.btn-light-green.dropdown-toggle:hover{background-color:#97c95d!important}.btn-light-green:not([disabled]):not(.disabled).active,.btn-light-green:not([disabled]):not(.disabled):active,.show>.btn-light-green.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#577d2a!important}.btn-light-green:not([disabled]):not(.disabled).active:focus,.btn-light-green:not([disabled]):not(.disabled):active:focus,.show>.btn-light-green.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.light-green-ic{color:#8bc34a!important}.light-green-ic:focus,.light-green-ic:hover{color:#8bc34a}table.table a.btn.btn-light-green{color:#fff}.btn-outline-light-green{border:2px solid #8bc34a!important;background-color:transparent!important;color:#8bc34a!important}.btn-outline-light-green.active,.btn-outline-light-green:active,.btn-outline-light-green:active:focus,.btn-outline-light-green:focus,.btn-outline-light-green:hover{border-color:#8bc34a!important;background-color:transparent!important;color:#8bc34a!important}.btn-outline-light-green:not([disabled]):not(.disabled).active,.btn-outline-light-green:not([disabled]):not(.disabled):active,.show>.btn-outline-light-green.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#8bc34a!important}.btn-outline-light-green:not([disabled]):not(.disabled).active:focus,.btn-outline-light-green:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-light-green.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-lime{background-color:#afb42b!important;color:#fff}.btn-lime:hover{background-color:#c3c930;color:#fff}.btn-lime.focus,.btn-lime:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-lime.active,.btn-lime:active,.btn-lime:focus{background-color:#5f6217}.btn-lime.dropdown-toggle{background-color:#afb42b!important}.btn-lime.dropdown-toggle:focus,.btn-lime.dropdown-toggle:hover{background-color:#c3c930!important}.btn-lime:not([disabled]):not(.disabled).active,.btn-lime:not([disabled]):not(.disabled):active,.show>.btn-lime.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#5f6217!important}.btn-lime:not([disabled]):not(.disabled).active:focus,.btn-lime:not([disabled]):not(.disabled):active:focus,.show>.btn-lime.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.lime-ic{color:#afb42b!important}.lime-ic:focus,.lime-ic:hover{color:#afb42b}table.table a.btn.btn-lime{color:#fff}.btn-outline-lime{border:2px solid #afb42b!important;background-color:transparent!important;color:#afb42b!important}.btn-outline-lime.active,.btn-outline-lime:active,.btn-outline-lime:active:focus,.btn-outline-lime:focus,.btn-outline-lime:hover{border-color:#afb42b!important;background-color:transparent!important;color:#afb42b!important}.btn-outline-lime:not([disabled]):not(.disabled).active,.btn-outline-lime:not([disabled]):not(.disabled):active,.show>.btn-outline-lime.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#afb42b!important}.btn-outline-lime:not([disabled]):not(.disabled).active:focus,.btn-outline-lime:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-lime.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-yellow{background-color:#fbc02d!important;color:#fff}.btn-yellow:hover{background-color:#fbc846;color:#fff}.btn-yellow.focus,.btn-yellow:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-yellow.active,.btn-yellow:active,.btn-yellow:focus{background-color:#be8904}.btn-yellow.dropdown-toggle{background-color:#fbc02d!important}.btn-yellow.dropdown-toggle:focus,.btn-yellow.dropdown-toggle:hover{background-color:#fbc846!important}.btn-yellow:not([disabled]):not(.disabled).active,.btn-yellow:not([disabled]):not(.disabled):active,.show>.btn-yellow.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#be8904!important}.btn-yellow:not([disabled]):not(.disabled).active:focus,.btn-yellow:not([disabled]):not(.disabled):active:focus,.show>.btn-yellow.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.yellow-ic{color:#fbc02d!important}.yellow-ic:focus,.yellow-ic:hover{color:#fbc02d}table.table a.btn.btn-yellow{color:#fff}.btn-outline-yellow{border:2px solid #fbc02d!important;background-color:transparent!important;color:#fbc02d!important}.btn-outline-yellow.active,.btn-outline-yellow:active,.btn-outline-yellow:active:focus,.btn-outline-yellow:focus,.btn-outline-yellow:hover{border-color:#fbc02d!important;background-color:transparent!important;color:#fbc02d!important}.btn-outline-yellow:not([disabled]):not(.disabled).active,.btn-outline-yellow:not([disabled]):not(.disabled):active,.show>.btn-outline-yellow.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#fbc02d!important}.btn-outline-yellow:not([disabled]):not(.disabled).active:focus,.btn-outline-yellow:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-yellow.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-amber{background-color:#ffa000!important;color:#fff}.btn-amber:hover{background-color:#ffaa1a;color:#fff}.btn-amber.focus,.btn-amber:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-amber.active,.btn-amber:active,.btn-amber:focus{background-color:#996000}.btn-amber.dropdown-toggle{background-color:#ffa000!important}.btn-amber.dropdown-toggle:focus,.btn-amber.dropdown-toggle:hover{background-color:#ffaa1a!important}.btn-amber:not([disabled]):not(.disabled).active,.btn-amber:not([disabled]):not(.disabled):active,.show>.btn-amber.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#996000!important}.btn-amber:not([disabled]):not(.disabled).active:focus,.btn-amber:not([disabled]):not(.disabled):active:focus,.show>.btn-amber.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.amber-ic{color:#ffa000!important}.amber-ic:focus,.amber-ic:hover{color:#ffa000}table.table a.btn.btn-amber{color:#fff}.btn-outline-amber{border:2px solid #ffa000!important;background-color:transparent!important;color:#ffa000!important}.btn-outline-amber.active,.btn-outline-amber:active,.btn-outline-amber:active:focus,.btn-outline-amber:focus,.btn-outline-amber:hover{border-color:#ffa000!important;background-color:transparent!important;color:#ffa000!important}.btn-outline-amber:not([disabled]):not(.disabled).active,.btn-outline-amber:not([disabled]):not(.disabled):active,.show>.btn-outline-amber.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#ffa000!important}.btn-outline-amber:not([disabled]):not(.disabled).active:focus,.btn-outline-amber:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-amber.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-orange{background-color:#f57c00!important;color:#fff}.btn-orange:hover{background-color:#ff8910;color:#fff}.btn-orange.focus,.btn-orange:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-orange.active,.btn-orange:active,.btn-orange:focus{background-color:#8f4800}.btn-orange.dropdown-toggle{background-color:#f57c00!important}.btn-orange.dropdown-toggle:focus,.btn-orange.dropdown-toggle:hover{background-color:#ff8910!important}.btn-orange:not([disabled]):not(.disabled).active,.btn-orange:not([disabled]):not(.disabled):active,.show>.btn-orange.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#8f4800!important}.btn-orange:not([disabled]):not(.disabled).active:focus,.btn-orange:not([disabled]):not(.disabled):active:focus,.show>.btn-orange.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.orange-ic{color:#f57c00!important}.orange-ic:focus,.orange-ic:hover{color:#f57c00}table.table a.btn.btn-orange{color:#fff}.btn-outline-orange{border:2px solid #f57c00!important;background-color:transparent!important;color:#f57c00!important}.btn-outline-orange.active,.btn-outline-orange:active,.btn-outline-orange:active:focus,.btn-outline-orange:focus,.btn-outline-orange:hover{border-color:#f57c00!important;background-color:transparent!important;color:#f57c00!important}.btn-outline-orange:not([disabled]):not(.disabled).active,.btn-outline-orange:not([disabled]):not(.disabled):active,.show>.btn-outline-orange.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#f57c00!important}.btn-outline-orange:not([disabled]):not(.disabled).active:focus,.btn-outline-orange:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-orange.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-deep-orange{background-color:#ff7043!important;color:#fff}.btn-deep-orange:hover{background-color:#ff835d;color:#fff}.btn-deep-orange.focus,.btn-deep-orange:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-deep-orange.active,.btn-deep-orange:active,.btn-deep-orange:focus{background-color:#dc3500}.btn-deep-orange.dropdown-toggle{background-color:#ff7043!important}.btn-deep-orange.dropdown-toggle:focus,.btn-deep-orange.dropdown-toggle:hover{background-color:#ff835d!important}.btn-deep-orange:not([disabled]):not(.disabled).active,.btn-deep-orange:not([disabled]):not(.disabled):active,.show>.btn-deep-orange.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#dc3500!important}.btn-deep-orange:not([disabled]):not(.disabled).active:focus,.btn-deep-orange:not([disabled]):not(.disabled):active:focus,.show>.btn-deep-orange.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.deep-orange-ic{color:#ff7043!important}.deep-orange-ic:focus,.deep-orange-ic:hover{color:#ff7043}table.table a.btn.btn-deep-orange{color:#fff}.btn-outline-deep-orange{border:2px solid #ff7043!important;background-color:transparent!important;color:#ff7043!important}.btn-outline-deep-orange.active,.btn-outline-deep-orange:active,.btn-outline-deep-orange:active:focus,.btn-outline-deep-orange:focus,.btn-outline-deep-orange:hover{border-color:#ff7043!important;background-color:transparent!important;color:#ff7043!important}.btn-outline-deep-orange:not([disabled]):not(.disabled).active,.btn-outline-deep-orange:not([disabled]):not(.disabled):active,.show>.btn-outline-deep-orange.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#ff7043!important}.btn-outline-deep-orange:not([disabled]):not(.disabled).active:focus,.btn-outline-deep-orange:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-deep-orange.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-brown{background-color:#795548!important;color:#fff}.btn-brown:hover{background-color:#896052;color:#fff}.btn-brown.focus,.btn-brown:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-brown.active,.btn-brown:active,.btn-brown:focus{background-color:#392822}.btn-brown.dropdown-toggle{background-color:#795548!important}.btn-brown.dropdown-toggle:focus,.btn-brown.dropdown-toggle:hover{background-color:#896052!important}.btn-brown:not([disabled]):not(.disabled).active,.btn-brown:not([disabled]):not(.disabled):active,.show>.btn-brown.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#392822!important}.btn-brown:not([disabled]):not(.disabled).active:focus,.btn-brown:not([disabled]):not(.disabled):active:focus,.show>.btn-brown.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.brown-ic{color:#795548!important}.brown-ic:focus,.brown-ic:hover{color:#795548}table.table a.btn.btn-brown{color:#fff}.btn-outline-brown{border:2px solid #795548!important;background-color:transparent!important;color:#795548!important}.btn-outline-brown.active,.btn-outline-brown:active,.btn-outline-brown:active:focus,.btn-outline-brown:focus,.btn-outline-brown:hover{border-color:#795548!important;background-color:transparent!important;color:#795548!important}.btn-outline-brown:not([disabled]):not(.disabled).active,.btn-outline-brown:not([disabled]):not(.disabled):active,.show>.btn-outline-brown.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#795548!important}.btn-outline-brown:not([disabled]):not(.disabled).active:focus,.btn-outline-brown:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-brown.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-grey{background-color:#616161!important;color:#fff}.btn-grey:hover{background-color:#6e6e6e;color:#fff}.btn-grey.focus,.btn-grey:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-grey.active,.btn-grey:active,.btn-grey:focus{background-color:#2e2e2e}.btn-grey.dropdown-toggle{background-color:#616161!important}.btn-grey.dropdown-toggle:focus,.btn-grey.dropdown-toggle:hover{background-color:#6e6e6e!important}.btn-grey:not([disabled]):not(.disabled).active,.btn-grey:not([disabled]):not(.disabled):active,.show>.btn-grey.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#2e2e2e!important}.btn-grey:not([disabled]):not(.disabled).active:focus,.btn-grey:not([disabled]):not(.disabled):active:focus,.show>.btn-grey.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.grey-ic{color:#616161!important}.grey-ic:focus,.grey-ic:hover{color:#616161}table.table a.btn.btn-grey{color:#fff}.btn-outline-grey{border:2px solid #616161!important;background-color:transparent!important;color:#616161!important}.btn-outline-grey.active,.btn-outline-grey:active,.btn-outline-grey:active:focus,.btn-outline-grey:focus,.btn-outline-grey:hover{border-color:#616161!important;background-color:transparent!important;color:#616161!important}.btn-outline-grey:not([disabled]):not(.disabled).active,.btn-outline-grey:not([disabled]):not(.disabled):active,.show>.btn-outline-grey.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#616161!important}.btn-outline-grey:not([disabled]):not(.disabled).active:focus,.btn-outline-grey:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-grey.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-blue-grey{background-color:#78909c!important;color:#fff}.btn-blue-grey:hover{background-color:#879ca7;color:#fff}.btn-blue-grey.focus,.btn-blue-grey:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-blue-grey.active,.btn-blue-grey:active,.btn-blue-grey:focus{background-color:#4a5b64}.btn-blue-grey.dropdown-toggle{background-color:#78909c!important}.btn-blue-grey.dropdown-toggle:focus,.btn-blue-grey.dropdown-toggle:hover{background-color:#879ca7!important}.btn-blue-grey:not([disabled]):not(.disabled).active,.btn-blue-grey:not([disabled]):not(.disabled):active,.show>.btn-blue-grey.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#4a5b64!important}.btn-blue-grey:not([disabled]):not(.disabled).active:focus,.btn-blue-grey:not([disabled]):not(.disabled):active:focus,.show>.btn-blue-grey.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.blue-grey-ic{color:#78909c!important}.blue-grey-ic:focus,.blue-grey-ic:hover{color:#78909c}table.table a.btn.btn-blue-grey{color:#fff}.btn-outline-blue-grey{border:2px solid #78909c!important;background-color:transparent!important;color:#78909c!important}.btn-outline-blue-grey.active,.btn-outline-blue-grey:active,.btn-outline-blue-grey:active:focus,.btn-outline-blue-grey:focus,.btn-outline-blue-grey:hover{border-color:#78909c!important;background-color:transparent!important;color:#78909c!important}.btn-outline-blue-grey:not([disabled]):not(.disabled).active,.btn-outline-blue-grey:not([disabled]):not(.disabled):active,.show>.btn-outline-blue-grey.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#78909c!important}.btn-outline-blue-grey:not([disabled]):not(.disabled).active:focus,.btn-outline-blue-grey:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-blue-grey.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-dark{background-color:#212121!important;color:#fff}.btn-dark:hover{background-color:#2e2e2e;color:#fff}.btn-dark.focus,.btn-dark:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-dark.active,.btn-dark:active,.btn-dark:focus{background-color:#000}.btn-dark.dropdown-toggle{background-color:#212121!important}.btn-dark.dropdown-toggle:focus,.btn-dark.dropdown-toggle:hover{background-color:#2e2e2e!important}.btn-dark:not([disabled]):not(.disabled).active,.btn-dark:not([disabled]):not(.disabled):active,.show>.btn-dark.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#000!important}.btn-dark:not([disabled]):not(.disabled).active:focus,.btn-dark:not([disabled]):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.dark-ic{color:#212121!important}.dark-ic:focus,.dark-ic:hover{color:#212121}table.table a.btn.btn-dark{color:#fff}.btn-outline-dark{border:2px solid #212121!important;background-color:transparent!important;color:#212121!important}.btn-outline-dark.active,.btn-outline-dark:active,.btn-outline-dark:active:focus,.btn-outline-dark:focus,.btn-outline-dark:hover{border-color:#212121!important;background-color:transparent!important;color:#212121!important}.btn-outline-dark:not([disabled]):not(.disabled).active,.btn-outline-dark:not([disabled]):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#212121!important}.btn-outline-dark:not([disabled]):not(.disabled).active:focus,.btn-outline-dark:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-light{background-color:#e0e0e0!important;color:#000}.btn-light:hover{background-color:#ededed;color:#000}.btn-light.focus,.btn-light:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-light.active,.btn-light:active,.btn-light:focus{background-color:#adadad}.btn-light.dropdown-toggle{background-color:#e0e0e0!important}.btn-light.dropdown-toggle:focus,.btn-light.dropdown-toggle:hover{background-color:#ededed!important}.btn-light:not([disabled]):not(.disabled).active,.btn-light:not([disabled]):not(.disabled):active,.show>.btn-light.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#adadad!important}.btn-light:not([disabled]):not(.disabled).active:focus,.btn-light:not([disabled]):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.light-ic{color:#e0e0e0!important}.light-ic:focus,.light-ic:hover{color:#e0e0e0}table.table a.btn.btn-light{color:#000}.btn-outline-light{border:2px solid #e0e0e0!important;background-color:transparent!important;color:#e0e0e0!important}.btn-outline-light.active,.btn-outline-light:active,.btn-outline-light:active:focus,.btn-outline-light:focus,.btn-outline-light:hover{border-color:#e0e0e0!important;background-color:transparent!important;color:#e0e0e0!important}.btn-outline-light:not([disabled]):not(.disabled).active,.btn-outline-light:not([disabled]):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#e0e0e0!important}.btn-outline-light:not([disabled]):not(.disabled).active:focus,.btn-outline-light:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-white{background-color:#fff!important;color:#000}.btn-white:hover{background-color:#fff;color:#000}.btn-white.focus,.btn-white:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-white.active,.btn-white:active,.btn-white:focus{background-color:#ccc}.btn-white.dropdown-toggle,.btn-white.dropdown-toggle:focus,.btn-white.dropdown-toggle:hover{background-color:#fff!important}.btn-white:not([disabled]):not(.disabled).active,.btn-white:not([disabled]):not(.disabled):active,.show>.btn-white.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#ccc!important}.btn-white:not([disabled]):not(.disabled).active:focus,.btn-white:not([disabled]):not(.disabled):active:focus,.show>.btn-white.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.white-ic{color:#fff!important}.white-ic:focus,.white-ic:hover{color:#fff}a.btn:not([href]):not([tabindex]),a.btn:not([href]):not([tabindex]):focus,a.btn:not([href]):not([tabindex]):hover,table.table a.btn.btn-white{color:#000}.btn-outline-white{border:2px solid #fff!important;background-color:transparent!important;color:#fff!important}.btn-outline-white.active,.btn-outline-white:active,.btn-outline-white:active:focus,.btn-outline-white:focus,.btn-outline-white:hover{border-color:#fff!important;background-color:transparent!important;color:#fff!important}.btn-outline-white:not([disabled]):not(.disabled).active,.btn-outline-white:not([disabled]):not(.disabled):active,.show>.btn-outline-white.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#fff!important}.btn-outline-white:not([disabled]):not(.disabled).active:focus,.btn-outline-white:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-white.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-black{background-color:#000!important;color:#fff}.btn-black:hover{background-color:#0d0d0d;color:#fff}.btn-black.focus,.btn-black:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-black.active,.btn-black:active,.btn-black:focus{background-color:#000}.btn-black.dropdown-toggle{background-color:#000!important}.btn-black.dropdown-toggle:focus,.btn-black.dropdown-toggle:hover{background-color:#0d0d0d!important}.btn-black:not([disabled]):not(.disabled).active,.btn-black:not([disabled]):not(.disabled):active,.show>.btn-black.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#000!important}.btn-black:not([disabled]):not(.disabled).active:focus,.btn-black:not([disabled]):not(.disabled):active:focus,.show>.btn-black.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.black-ic{color:#000!important}.black-ic:focus,.black-ic:hover{color:#000}a.btn:not([href]):not([tabindex]),a.btn:not([href]):not([tabindex]):focus,a.btn:not([href]):not([tabindex]):hover,table.table a.btn.btn-black{color:#fff}.btn-outline-black{border:2px solid #000!important;background-color:transparent!important;color:#000!important}.btn-outline-black.active,.btn-outline-black:active,.btn-outline-black:active:focus,.btn-outline-black:focus,.btn-outline-black:hover{border-color:#000!important;background-color:transparent!important;color:#000!important}.btn-outline-black:not([disabled]):not(.disabled).active,.btn-outline-black:not([disabled]):not(.disabled):active,.show>.btn-outline-black.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#000!important}.btn-outline-black:not([disabled]):not(.disabled).active:focus,.btn-outline-black:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-black.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#fff}.btn.purple-gradient{transition:.5s ease;color:#fff}.btn.purple-gradient:active,.btn.purple-gradient:active:focus .btn.purple-gradient.active,.btn.purple-gradient:focus,.btn.purple-gradient:hover{background:linear-gradient(#ff88ce,#8f8bf7)}.btn.peach-gradient{transition:.5s ease;color:#fff}.btn.peach-gradient:active,.btn.peach-gradient:active:focus .btn.peach-gradient.active,.btn.peach-gradient:focus,.btn.peach-gradient:hover{background:linear-gradient(#ffdf89,#fc7b7b)}.btn.aqua-gradient{transition:.5s ease;color:#fff}.btn.aqua-gradient:active,.btn.aqua-gradient:active:focus .btn.aqua-gradient.active,.btn.aqua-gradient:focus,.btn.aqua-gradient:hover{background:linear-gradient(#3aa2ff,#1fffac)}.btn.blue-gradient{transition:.5s ease;color:#fff}.btn.blue-gradient:active,.btn.blue-gradient:active:focus .btn.blue-gradient.active,.btn.blue-gradient:focus,.btn.blue-gradient:hover{background:linear-gradient(#5ed1fc,#3647b3)}.btn mdb-icon{position:relative;font-size:.9rem}.btn mdb-icon.right{margin-left:.3rem}.btn mdb-icon.left{margin-right:.3rem}.btn.btn-lg{padding:1rem 2.4rem;font-size:.94rem}.btn.btn-lg mdb-icon{font-size:1rem}.btn.btn-md{padding:.7rem 1.6rem;font-size:.7rem}.btn.btn-md mdb-icon{font-size:.8rem}.btn.btn-sm{padding:.5rem 1.6rem;font-size:.64rem}.btn.btn-sm mdb-icon{font-size:.7rem}\"], encapsulation: 2 });\nMdbBtnDirective.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 }\n];\nMdbBtnDirective.propDecorators = {\n color: [{ type: Input }],\n rounded: [{ type: Input }],\n gradient: [{ type: Input }],\n outline: [{ type: Input }],\n flat: [{ type: Input }],\n size: [{ type: Input }],\n block: [{ type: Input }],\n floating: [{ type: Input }]\n};\n\nconst CHECKBOX_CONTROL_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n // tslint:disable-next-line: no-use-before-declare\n useExisting: forwardRef(() => ButtonCheckboxDirective),\n multi: true,\n};\n/**\n * Add checkbox functionality to any element\n */\nclass ButtonCheckboxDirective {\n constructor() {\n /** Truthy value, will be set to ngModel */\n this.btnCheckboxTrue = true;\n /** Falsy value, will be set to ngModel */\n this.btnCheckboxFalse = false;\n this.state = false;\n this.onChange = Function.prototype;\n this.onTouched = Function.prototype;\n }\n // view -> model\n onClick() {\n if (this.isDisabled) {\n return;\n }\n this.toggle(!this.state);\n this.onChange(this.value);\n }\n ngOnInit() {\n this.toggle(this.trueValue === this.value);\n }\n get trueValue() {\n return typeof this.btnCheckboxTrue !== 'undefined' ? this.btnCheckboxTrue : true;\n }\n get falseValue() {\n return typeof this.btnCheckboxFalse !== 'undefined' ? this.btnCheckboxFalse : false;\n }\n toggle(state) {\n this.state = state;\n this.value = this.state ? this.trueValue : this.falseValue;\n }\n // ControlValueAccessor\n // model -> view\n writeValue(value) {\n this.state = this.trueValue === value;\n this.value = value ? this.trueValue : this.falseValue;\n }\n setDisabledState(isDisabled) {\n this.isDisabled = isDisabled;\n }\n registerOnChange(fn) {\n this.onChange = fn;\n }\n registerOnTouched(fn) {\n this.onTouched = fn;\n }\n}\nButtonCheckboxDirective.ɵfac = function ButtonCheckboxDirective_Factory(t) { return new (t || ButtonCheckboxDirective)(); };\nButtonCheckboxDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: ButtonCheckboxDirective, selectors: [[\"\", \"mdbCheckbox\", \"\"]], hostVars: 2, hostBindings: function ButtonCheckboxDirective_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"click\", function ButtonCheckboxDirective_click_HostBindingHandler() { return ctx.onClick(); });\n } if (rf & 2) {\n ɵngcc0.ɵɵclassProp(\"active\", ctx.state);\n } }, inputs: { btnCheckboxTrue: \"btnCheckboxTrue\", btnCheckboxFalse: \"btnCheckboxFalse\" }, features: [ɵngcc0.ɵɵProvidersFeature([CHECKBOX_CONTROL_VALUE_ACCESSOR])] });\nButtonCheckboxDirective.propDecorators = {\n btnCheckboxTrue: [{ type: Input }],\n btnCheckboxFalse: [{ type: Input }],\n state: [{ type: HostBinding, args: ['class.active',] }],\n onClick: [{ type: HostListener, args: ['click',] }]\n};\n\nconst RADIO_CONTROL_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n // tslint:disable-next-line: no-use-before-declare\n useExisting: forwardRef(() => ButtonRadioDirective),\n multi: true,\n};\n/**\n * Create radio buttons or groups of buttons.\n * A value of a selected button is bound to a variable specified via ngModel.\n */\nclass ButtonRadioDirective {\n constructor(el, renderer) {\n this.el = el;\n this.renderer = renderer;\n this.onChange = Function.prototype;\n this.onTouched = Function.prototype;\n this.radioElementsArray = [];\n this.disabled = false;\n }\n get isActive() {\n return this.mdbRadio === this.value;\n }\n onClick(event) {\n if (this.disabled) {\n return;\n }\n try {\n this.el.nativeElement.parentElement.childNodes.forEach((element) => {\n this.radioElementsArray.push(element);\n });\n this.radioElementsArray.forEach(element => {\n this.renderer.removeClass(element, 'active');\n });\n this.renderer.addClass(event.target, 'active');\n }\n catch (error) { }\n if (this.el.nativeElement.attributes.disabled) {\n return;\n }\n if (this.uncheckable && this.mdbRadio === this.value) {\n this.value = undefined;\n }\n else {\n this.value = this.mdbRadio;\n }\n this.onTouched();\n this.onChange(this.value);\n }\n ngOnInit() {\n this.uncheckable = typeof this.uncheckable !== 'undefined';\n }\n onBlur() {\n this.onTouched();\n }\n // ControlValueAccessor\n // model -> view\n writeValue(value) {\n this.value = value;\n }\n registerOnChange(fn) {\n this.onChange = fn;\n }\n registerOnTouched(fn) {\n this.onTouched = fn;\n }\n}\nButtonRadioDirective.ɵfac = function ButtonRadioDirective_Factory(t) { return new (t || ButtonRadioDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nButtonRadioDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: ButtonRadioDirective, selectors: [[\"\", \"mdbRadio\", \"\"]], hostVars: 4, hostBindings: function ButtonRadioDirective_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"click\", function ButtonRadioDirective_click_HostBindingHandler($event) { return ctx.onClick($event); });\n } if (rf & 2) {\n ɵngcc0.ɵɵclassProp(\"disabled\", ctx.disabled)(\"active\", ctx.isActive);\n } }, inputs: { disabled: \"disabled\", value: \"value\", uncheckable: \"uncheckable\", mdbRadio: \"mdbRadio\" }, features: [ɵngcc0.ɵɵProvidersFeature([RADIO_CONTROL_VALUE_ACCESSOR])] });\nButtonRadioDirective.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 }\n];\nButtonRadioDirective.propDecorators = {\n mdbRadio: [{ type: Input }],\n uncheckable: [{ type: Input }],\n value: [{ type: Input }],\n disabled: [{ type: HostBinding, args: ['class.disabled',] }, { type: Input }],\n isActive: [{ type: HostBinding, args: ['class.active',] }],\n onClick: [{ type: HostListener, args: ['click', ['$event'],] }]\n};\n\nclass FixedButtonCaptionDirective {\n constructor(renderer, el) {\n this.renderer = renderer;\n this.el = el;\n }\n ngOnInit() {\n this.createCaptionElement();\n }\n createCaptionElement() {\n const paragraph = this.renderer.createElement('p');\n const text = this.renderer.createText(this.caption);\n this.renderer.appendChild(paragraph, text);\n this.renderer.appendChild(this.el.nativeElement, paragraph);\n this.paragraphEl = paragraph;\n }\n showCaption() {\n this.renderer.addClass(this.paragraphEl, 'fixed-button-caption');\n this.renderer.setStyle(this.paragraphEl, 'position', 'absolute');\n this.renderer.setStyle(this.paragraphEl, 'right', `60px`);\n this.renderer.setStyle(this.paragraphEl, 'top', '10px');\n this.renderer.setStyle(this.el.nativeElement, 'overflow', 'visible');\n }\n}\nFixedButtonCaptionDirective.ɵfac = function FixedButtonCaptionDirective_Factory(t) { return new (t || FixedButtonCaptionDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef)); };\nFixedButtonCaptionDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: FixedButtonCaptionDirective, selectors: [[\"\", \"mdbFixedCaption\", \"\"]], inputs: { caption: [\"mdbFixedCaption\", \"caption\"], collapseButtonActivator: [\"collapseButton\", \"collapseButtonActivator\"] } });\nFixedButtonCaptionDirective.ctorParameters = () => [\n { type: Renderer2 },\n { type: ElementRef }\n];\nFixedButtonCaptionDirective.propDecorators = {\n caption: [{ type: Input, args: ['mdbFixedCaption',] }],\n collapseButtonActivator: [{ type: Input, args: ['collapseButton',] }]\n};\n\nclass ButtonsModule {\n static forRoot() {\n return { ngModule: ButtonsModule, providers: [] };\n }\n}\nButtonsModule.ɵfac = function ButtonsModule_Factory(t) { return new (t || ButtonsModule)(); };\nButtonsModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: ButtonsModule });\nButtonsModule.ɵinj = ɵngcc0.ɵɵdefineInjector({});\n\nclass MdbCardFooterComponent {\n constructor(_el, _r) {\n this._el = _el;\n this._r = _r;\n }\n ngOnInit() {\n this._r.addClass(this._el.nativeElement, 'card-footer');\n }\n}\nMdbCardFooterComponent.ɵfac = function MdbCardFooterComponent_Factory(t) { return new (t || MdbCardFooterComponent)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nMdbCardFooterComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: MdbCardFooterComponent, selectors: [[\"mdb-card-footer\"]], ngContentSelectors: _c0, decls: 1, vars: 0, template: function MdbCardFooterComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵprojection(0);\n } }, encapsulation: 2, changeDetection: 0 });\nMdbCardFooterComponent.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 }\n];\n\nclass MdbCardTitleComponent {\n constructor(_el, _r) {\n this._el = _el;\n this._r = _r;\n }\n ngOnInit() {\n this._r.addClass(this._el.nativeElement, 'card-title');\n }\n}\nMdbCardTitleComponent.ɵfac = function MdbCardTitleComponent_Factory(t) { return new (t || MdbCardTitleComponent)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nMdbCardTitleComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: MdbCardTitleComponent, selectors: [[\"mdb-card-title\"]], ngContentSelectors: _c0, decls: 1, vars: 0, template: function MdbCardTitleComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵprojection(0);\n } }, encapsulation: 2, changeDetection: 0 });\nMdbCardTitleComponent.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 }\n];\n\nclass MdbCardTextComponent {\n}\nMdbCardTextComponent.ɵfac = function MdbCardTextComponent_Factory(t) { return new (t || MdbCardTextComponent)(); };\nMdbCardTextComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: MdbCardTextComponent, selectors: [[\"mdb-card-text\"]], inputs: { class: \"class\" }, ngContentSelectors: _c0, decls: 2, vars: 3, template: function MdbCardTextComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵelementStart(0, \"p\");\n ɵngcc0.ɵɵprojection(1);\n ɵngcc0.ɵɵelementEnd();\n } if (rf & 2) {\n ɵngcc0.ɵɵclassMapInterpolate1(\"card-text \", ctx.class, \" \");\n } }, encapsulation: 2, changeDetection: 0 });\nMdbCardTextComponent.propDecorators = {\n class: [{ type: Input }]\n};\n\nclass MdbCardBodyComponent {\n constructor(_el, _r) {\n this._el = _el;\n this._r = _r;\n }\n set cascade(cascade) {\n if (cascade) {\n this._r.addClass(this._el.nativeElement, 'card-body-cascade');\n }\n }\n ngOnInit() {\n this._r.addClass(this._el.nativeElement, 'card-body');\n if (this.class) {\n this.class.split(' ').forEach((element) => {\n this._r.addClass(this._el.nativeElement, element);\n });\n }\n }\n}\nMdbCardBodyComponent.ɵfac = function MdbCardBodyComponent_Factory(t) { return new (t || MdbCardBodyComponent)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nMdbCardBodyComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: MdbCardBodyComponent, selectors: [[\"mdb-card-body\"]], inputs: { cascade: \"cascade\", class: \"class\" }, ngContentSelectors: _c0, decls: 1, vars: 0, template: function MdbCardBodyComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵprojection(0);\n } }, encapsulation: 2, changeDetection: 0 });\nMdbCardBodyComponent.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 }\n];\nMdbCardBodyComponent.propDecorators = {\n class: [{ type: Input }],\n cascade: [{ type: Input }]\n};\n\nclass MdbCardComponent {\n constructor(_el, _r) {\n this._el = _el;\n this._r = _r;\n }\n set narrower(narrower) {\n if (narrower) {\n this._r.addClass(this._el.nativeElement, 'narrower');\n }\n else if (!narrower && this._el.nativeElement.classList.contains('narrower')) {\n this._r.removeClass(this._el.nativeElement, 'narrower');\n }\n }\n set reverse(reverse) {\n if (reverse) {\n this._r.addClass(this._el.nativeElement, 'reverse');\n }\n else if (!reverse && this._el.nativeElement.classList.contains('reserse')) {\n this._r.removeClass(this._el.nativeElement, 'reverse');\n }\n }\n set dark(dark) {\n if (dark) {\n this._r.addClass(this._el.nativeElement, 'card-dark');\n }\n else if (!dark && this._el.nativeElement.classList.contains('card-dark')) {\n this._r.removeClass(this._el.nativeElement, 'card-dark');\n }\n }\n set bgColor(color) {\n if (color) {\n this._r.addClass(this._el.nativeElement, color);\n }\n }\n set borderColor(color) {\n if (color) {\n this._r.addClass(this._el.nativeElement, color);\n }\n }\n ngOnInit() {\n this._r.addClass(this._el.nativeElement, 'card');\n if (this.cascade) {\n this._r.addClass(this._el.nativeElement, 'card-cascade');\n }\n if (this.wider) {\n this._r.addClass(this._el.nativeElement, 'wider');\n }\n if (this.narrower) {\n this._r.addClass(this._el.nativeElement, 'narrower');\n }\n if (this.class) {\n this.class.split(' ').forEach((element) => {\n this._r.addClass(this._el.nativeElement, element);\n });\n }\n }\n}\nMdbCardComponent.ɵfac = function MdbCardComponent_Factory(t) { return new (t || MdbCardComponent)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nMdbCardComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: MdbCardComponent, selectors: [[\"mdb-card\"]], viewQuery: function MdbCardComponent_Query(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵviewQuery(_c2, 3);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.card = _t.first);\n } }, inputs: { narrower: \"narrower\", reverse: \"reverse\", dark: \"dark\", bgColor: \"bgColor\", borderColor: \"borderColor\", class: \"class\", cascade: \"cascade\", wider: \"wider\", imageBackground: \"imageBackground\" }, ngContentSelectors: _c0, decls: 1, vars: 0, template: function MdbCardComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵprojection(0);\n } }, styles: [\".card{box-shadow:0 2px 5px 0 rgba(0,0,0,.16),0 2px 10px 0 rgba(0,0,0,.12);border:0;font-weight:400}.card[class*=border]{border:1px solid #9e9e9e;box-shadow:none}.card .card-body h1,.card .card-body h2,.card .card-body h3,.card .card-body h4,.card .card-body h5,.card .card-body h6{font-weight:400}.card .card-body .card-title a,.card .card-body .card-title a:hover{transition:.2s ease-in-out}.card .card-body .card-text{color:#747373;font-size:.9rem;font-weight:400}.card .md-form label{font-weight:300}.card-text:last-child{margin-bottom:1rem!important}mdb-card-img img.img-fluid{width:100%}\"], encapsulation: 2, changeDetection: 0 });\nMdbCardComponent.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 }\n];\nMdbCardComponent.propDecorators = {\n class: [{ type: Input }],\n cascade: [{ type: Input }],\n wider: [{ type: Input }],\n imageBackground: [{ type: Input }],\n card: [{ type: ViewChild, args: ['card', { static: true },] }],\n narrower: [{ type: Input }],\n reverse: [{ type: Input }],\n dark: [{ type: Input }],\n bgColor: [{ type: Input }],\n borderColor: [{ type: Input }]\n};\n\nclass MdbCardImageComponent {\n}\nMdbCardImageComponent.ɵfac = function MdbCardImageComponent_Factory(t) { return new (t || MdbCardImageComponent)(); };\nMdbCardImageComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: MdbCardImageComponent, selectors: [[\"mdb-card-img\"]], inputs: { src: \"src\", alt: \"alt\" }, decls: 1, vars: 2, consts: [[1, \"img-fluid\", 3, \"src\", \"alt\"]], template: function MdbCardImageComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelement(0, \"img\", 0);\n } if (rf & 2) {\n ɵngcc0.ɵɵproperty(\"src\", ctx.src, ɵngcc0.ɵɵsanitizeUrl)(\"alt\", ctx.alt);\n } }, encapsulation: 2, changeDetection: 0 });\nMdbCardImageComponent.propDecorators = {\n src: [{ type: Input }],\n alt: [{ type: Input }]\n};\n\nclass MdbCardHeaderComponent {\n constructor(_el, _r) {\n this._el = _el;\n this._r = _r;\n }\n ngOnInit() {\n this._r.addClass(this._el.nativeElement, 'card-header');\n if (this.class) {\n this.class.split(' ').forEach((element) => {\n this._r.addClass(this._el.nativeElement, element);\n });\n }\n }\n}\nMdbCardHeaderComponent.ɵfac = function MdbCardHeaderComponent_Factory(t) { return new (t || MdbCardHeaderComponent)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nMdbCardHeaderComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: MdbCardHeaderComponent, selectors: [[\"mdb-card-header\"]], inputs: { class: \"class\" }, ngContentSelectors: _c0, decls: 1, vars: 0, template: function MdbCardHeaderComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵprojection(0);\n } }, encapsulation: 2, changeDetection: 0 });\nMdbCardHeaderComponent.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 }\n];\nMdbCardHeaderComponent.propDecorators = {\n class: [{ type: Input }]\n};\n\nclass CardsModule {\n static forRoot() {\n return { ngModule: CardsModule, providers: [] };\n }\n}\nCardsModule.ɵfac = function CardsModule_Factory(t) { return new (t || CardsModule)(); };\nCardsModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: CardsModule });\nCardsModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ imports: [[CommonModule]] });\n\n/*tslint:disable */\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * JS version of browser APIs. This library can only run in the browser.\n */\nvar win = typeof window !== 'undefined' && window || {};\nvar document$1 = win.document;\nvar location = win.location;\nvar gc = win['gc'] ? () => win['gc']() : () => null;\nvar performance = win['performance'] ? win['performance'] : null;\nconst Event = win['Event'];\nconst MouseEvent = win['MouseEvent'];\nconst KeyboardEvent = win['KeyboardEvent'];\nconst EventTarget = win['EventTarget'];\nconst History = win['History'];\nconst Location = win['Location'];\nconst EventListener = win['EventListener'];\nconst navigator$1 = win['navigator'];\n\nfunction isBs3() {\n return win.__theme === 'bs4';\n}\n\nclass SlideComponent {\n constructor(el) {\n this.animated = false;\n this.directionNext = false;\n this.directionLeft = false;\n this.directionPrev = false;\n this.directionRight = false;\n /** Wraps element by appropriate CSS classes */\n this.el = null;\n this.el = el;\n }\n}\nSlideComponent.ɵfac = function SlideComponent_Factory(t) { return new (t || SlideComponent)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef)); };\nSlideComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: SlideComponent, selectors: [[\"mdb-slide\"], [\"mdb-carousel-item\"]], hostVars: 14, hostBindings: function SlideComponent_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵclassProp(\"animated\", ctx.animated)(\"carousel-item-next\", ctx.directionNext)(\"carousel-item-left\", ctx.directionLeft)(\"carousel-item-prev\", ctx.directionPrev)(\"carousel-item-right\", ctx.directionRight)(\"carousel-item\", ctx.el)(\"active\", ctx.active);\n } }, inputs: { active: \"active\" }, ngContentSelectors: _c0, decls: 1, vars: 0, template: function SlideComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵprojection(0);\n } }, encapsulation: 2 });\nSlideComponent.ctorParameters = () => [\n { type: ElementRef }\n];\nSlideComponent.propDecorators = {\n active: [{ type: HostBinding, args: ['class.active',] }, { type: Input }],\n animated: [{ type: HostBinding, args: ['class.animated',] }],\n directionNext: [{ type: HostBinding, args: ['class.carousel-item-next',] }],\n directionLeft: [{ type: HostBinding, args: ['class.carousel-item-left',] }],\n directionPrev: [{ type: HostBinding, args: ['class.carousel-item-prev',] }],\n directionRight: [{ type: HostBinding, args: ['class.carousel-item-right',] }],\n el: [{ type: HostBinding, args: ['class.carousel-item',] }]\n};\n\nclass CarouselConfig {\n constructor() {\n /** Default interval of auto changing of slides */\n this.interval = 5000;\n /** Is loop of auto changing of slides can be paused */\n this.noPause = false;\n /** Is slides can wrap from the last to the first slide */\n this.noWrap = false;\n this.keyboard = false;\n }\n}\nCarouselConfig.ɵfac = function CarouselConfig_Factory(t) { return new (t || CarouselConfig)(); };\nCarouselConfig.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: CarouselConfig, factory: CarouselConfig.ɵfac });\n\n/**\n * @license\n * Copyright Google LLC All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\nconst MAC_ENTER = 3;\nconst BACKSPACE = 8;\nconst TAB = 9;\nconst NUM_CENTER = 12;\nconst ENTER = 13;\nconst SHIFT = 16;\nconst CONTROL = 17;\nconst ALT = 18;\nconst PAUSE = 19;\nconst CAPS_LOCK = 20;\nconst ESCAPE = 27;\nconst SPACE = 32;\nconst PAGE_UP = 33;\nconst PAGE_DOWN = 34;\nconst END = 35;\nconst HOME = 36;\nconst LEFT_ARROW = 37;\nconst UP_ARROW = 38;\nconst RIGHT_ARROW = 39;\nconst DOWN_ARROW = 40;\nconst PLUS_SIGN = 43;\nconst PRINT_SCREEN = 44;\nconst INSERT = 45;\nconst DELETE = 46;\nconst ZERO = 48;\nconst ONE = 49;\nconst TWO = 50;\nconst THREE = 51;\nconst FOUR = 52;\nconst FIVE = 53;\nconst SIX = 54;\nconst SEVEN = 55;\nconst EIGHT = 56;\nconst NINE = 57;\nconst FF_SEMICOLON = 59; // Firefox (Gecko) fires this for semicolon instead of 186\nconst FF_EQUALS = 61; // Firefox (Gecko) fires this for equals instead of 187\nconst QUESTION_MARK = 63;\nconst AT_SIGN = 64;\nconst A = 65;\nconst B = 66;\nconst C = 67;\nconst D = 68;\nconst E = 69;\nconst F = 70;\nconst G = 71;\nconst H = 72;\nconst I = 73;\nconst J = 74;\nconst K = 75;\nconst L = 76;\nconst M = 77;\nconst N = 78;\nconst O = 79;\nconst P = 80;\nconst Q = 81;\nconst R = 82;\nconst S = 83;\nconst T = 84;\nconst U = 85;\nconst V = 86;\nconst W = 87;\nconst X = 88;\nconst Y = 89;\nconst Z = 90;\nconst META = 91; // WIN_KEY_LEFT\nconst MAC_WK_CMD_LEFT = 91;\nconst MAC_WK_CMD_RIGHT = 93;\nconst CONTEXT_MENU = 93;\nconst NUMPAD_ZERO = 96;\nconst NUMPAD_ONE = 97;\nconst NUMPAD_TWO = 98;\nconst NUMPAD_THREE = 99;\nconst NUMPAD_FOUR = 100;\nconst NUMPAD_FIVE = 101;\nconst NUMPAD_SIX = 102;\nconst NUMPAD_SEVEN = 103;\nconst NUMPAD_EIGHT = 104;\nconst NUMPAD_NINE = 105;\nconst NUMPAD_MULTIPLY = 106;\nconst NUMPAD_PLUS = 107;\nconst NUMPAD_MINUS = 109;\nconst NUMPAD_PERIOD = 110;\nconst NUMPAD_DIVIDE = 111;\nconst F1 = 112;\nconst F2 = 113;\nconst F3 = 114;\nconst F4 = 115;\nconst F5 = 116;\nconst F6 = 117;\nconst F7 = 118;\nconst F8 = 119;\nconst F9 = 120;\nconst F10 = 121;\nconst F11 = 122;\nconst F12 = 123;\nconst NUM_LOCK = 144;\nconst SCROLL_LOCK = 145;\nconst FIRST_MEDIA = 166;\nconst FF_MINUS = 173;\nconst MUTE = 173; // Firefox (Gecko) fires 181 for MUTE\nconst VOLUME_DOWN = 174; // Firefox (Gecko) fires 182 for VOLUME_DOWN\nconst VOLUME_UP = 175; // Firefox (Gecko) fires 183 for VOLUME_UP\nconst FF_MUTE = 181;\nconst FF_VOLUME_DOWN = 182;\nconst LAST_MEDIA = 183;\nconst FF_VOLUME_UP = 183;\nconst SEMICOLON = 186; // Firefox (Gecko) fires 59 for SEMICOLON\nconst EQUALS = 187; // Firefox (Gecko) fires 61 for EQUALS\nconst COMMA = 188;\nconst DASH = 189; // Firefox (Gecko) fires 173 for DASH/MINUS\nconst SLASH = 191;\nconst APOSTROPHE = 192;\nconst TILDE = 192;\nconst OPEN_SQUARE_BRACKET = 219;\nconst BACKSLASH = 220;\nconst CLOSE_SQUARE_BRACKET = 221;\nconst SINGLE_QUOTE = 222;\nconst MAC_META = 224;\n\nvar Direction;\n(function (Direction) {\n Direction[Direction[\"UNKNOWN\"] = 0] = \"UNKNOWN\";\n Direction[Direction[\"NEXT\"] = 1] = \"NEXT\";\n Direction[Direction[\"PREV\"] = 2] = \"PREV\";\n})(Direction || (Direction = {}));\n/**\n * Base element to create carousel\n */\nclass CarouselComponent {\n constructor(config, el, platformId, cdRef, renderer) {\n this.el = el;\n this.cdRef = cdRef;\n this.renderer = renderer;\n this.SWIPE_ACTION = { LEFT: 'swipeleft', RIGHT: 'swiperight' };\n this._destroy$ = new Subject();\n this.destroyed = false;\n this.animationEnd = true;\n this.isBrowser = false;\n this.isControls = true;\n this.class = '';\n this.type = '';\n this.animation = '';\n this.allowSwipe = true;\n this.activeSlideChange = new EventEmitter(false);\n this.isBrowser = isPlatformBrowser(platformId);\n Object.assign(this, config);\n }\n get slides() {\n return this._slidesList.toArray();\n }\n set activeSlide(index) {\n if (this._slidesList && index !== this._currentActiveSlide) {\n this._select(index);\n }\n }\n get activeSlide() {\n return this._currentActiveSlide;\n }\n checkNavigation() {\n if (this.type === 'carousel-multi-item') {\n return false;\n }\n return true;\n }\n checkDots() {\n if (this.type === 'carousel-thumbnails') {\n return false;\n }\n return true;\n }\n getImg(slide) {\n return slide.el.nativeElement.querySelector('img').src;\n }\n get interval() {\n return this._interval;\n }\n set interval(value) {\n this._interval = value;\n this.restartTimer();\n }\n get isBs4() {\n return !isBs3();\n }\n ngOnDestroy() {\n this.destroyed = true;\n this._destroy$.next();\n this._destroy$.complete();\n }\n ngAfterViewInit() {\n this.play();\n this._slidesList.changes\n .pipe(takeUntil(this._destroy$))\n .subscribe((slidesList) => {\n this._slidesList = slidesList;\n setTimeout(() => {\n this._select(0);\n }, 0);\n });\n if (this.activeSlideIndex) {\n setTimeout(() => {\n this._select(this.activeSlideIndex);\n this.activeSlideChange.emit({ relatedTarget: this.activeSlide });\n }, 0);\n }\n else {\n setTimeout(() => {\n this._select(0);\n }, 0);\n }\n if (this.isControls) {\n this.carouselIndicators = this.el.nativeElement.querySelectorAll('.carousel-indicators > li');\n if (this.carouselIndicators.length && this.activeSlideIndex) {\n this.renderer.addClass(this.carouselIndicators[this.activeSlideIndex], 'active');\n }\n else if (this.carouselIndicators.length) {\n this.renderer.addClass(this.carouselIndicators[0], 'active');\n }\n }\n }\n swipe(action = this.SWIPE_ACTION.RIGHT) {\n if (this.allowSwipe) {\n if (action === this.SWIPE_ACTION.RIGHT) {\n this.previousSlide();\n this.cdRef.markForCheck();\n }\n if (action === this.SWIPE_ACTION.LEFT) {\n this.nextSlide();\n this.cdRef.markForCheck();\n }\n }\n }\n nextSlide(force = false) {\n this.restartTimer();\n // Start next slide, pause actual slide\n const videoList = this.el.nativeElement.getElementsByTagName('video');\n const direction = Direction.NEXT;\n const indexEl = this.findNextSlideIndex(direction, force);\n if (videoList.length > 0) {\n // Check for video carousel\n for (let i = 0; i < videoList.length; i++) {\n if (i === indexEl) {\n videoList[i].play();\n }\n else {\n videoList[i].pause();\n }\n }\n }\n if (this.animation === 'slide') {\n this.pause();\n this.slideAnimation(this.findNextSlideIndex(Direction.NEXT, force), Direction.NEXT);\n this.cdRef.markForCheck();\n }\n else if (this.animation === 'fade') {\n this.pause();\n this.fadeAnimation(this.findNextSlideIndex(Direction.NEXT, force), Direction.NEXT);\n this.cdRef.markForCheck();\n }\n else {\n this.activeSlide = this.findNextSlideIndex(Direction.NEXT, force);\n this.cdRef.markForCheck();\n }\n if (!this.animation) {\n this.activeSlideChange.emit({ direction: 'Next', relatedTarget: this.activeSlide });\n }\n }\n previousSlide(force = false) {\n this.restartTimer();\n // Start previous slide, pause actual slide\n const videoList = this.el.nativeElement.getElementsByTagName('video');\n const direction = Direction.PREV;\n const indexel = this.findNextSlideIndex(direction, force);\n if (videoList.length > 0) {\n // Check for video carousel\n for (let i = 0; i < videoList.length; i++) {\n if (i === indexel) {\n videoList[i].play();\n }\n else {\n videoList[i].pause();\n }\n }\n }\n if (this.animation === 'slide') {\n this.pause();\n this.slideAnimation(this.findNextSlideIndex(direction, force), direction);\n this.cdRef.markForCheck();\n }\n else if (this.animation === 'fade') {\n this.pause();\n this.fadeAnimation(this.findNextSlideIndex(Direction.PREV, force), Direction.PREV);\n this.cdRef.markForCheck();\n }\n else {\n this.activeSlide = this.findNextSlideIndex(Direction.PREV, force);\n this.cdRef.markForCheck();\n }\n if (!this.animation) {\n this.activeSlideChange.emit({ direction: 'Prev', relatedTarget: this.activeSlide });\n }\n }\n fadeAnimation(goToIndex, direction) {\n const goToSlide = this.slides[goToIndex];\n if (this.animationEnd) {\n this.animationEnd = false;\n goToSlide.directionNext = true;\n if (this.isBrowser) {\n setTimeout(() => {\n const previous = this.slides[this._currentActiveSlide].el.nativeElement;\n this.renderer.setStyle(previous, 'opacity', '0');\n this.renderer.setStyle(previous, 'transition', 'all 600ms');\n this.renderer.setStyle(previous, 'display', 'block');\n this.renderer.setStyle(goToSlide.el.nativeElement, 'display', 'block');\n this.renderer.setStyle(goToSlide.el.nativeElement, 'opacity', '1');\n this.renderer.setStyle(goToSlide.el.nativeElement, 'transition', 'all 600ms');\n if (direction === 1) {\n this.activeSlideChange.emit({ direction: 'Next', relatedTarget: this.activeSlide });\n }\n else if (direction === 2) {\n this.activeSlideChange.emit({ direction: 'Prev', relatedTarget: this.activeSlide });\n }\n goToSlide.directionNext = false;\n this.animationEnd = true;\n this.activeSlide = goToIndex;\n this.activeSlideChange.emit({ direction: 'Next', relatedTarget: this.activeSlide });\n this.play();\n this.cdRef.markForCheck();\n }, 0);\n }\n }\n }\n slideAnimation(goToIndex, direction) {\n const currentSlide = this.slides[this._currentActiveSlide];\n const goToSlide = this.slides[goToIndex];\n if (this.animationEnd) {\n if (direction === Direction.NEXT) {\n this.animationEnd = false;\n goToSlide.directionNext = true;\n if (this.isBrowser) {\n setTimeout(() => {\n goToSlide.directionLeft = true;\n currentSlide.directionLeft = true;\n this.cdRef.markForCheck();\n }, 100);\n }\n }\n if (direction === Direction.PREV) {\n this.animationEnd = false;\n goToSlide.directionPrev = true;\n if (this.isBrowser) {\n setTimeout(() => {\n goToSlide.directionRight = true;\n currentSlide.directionRight = true;\n this.cdRef.markForCheck();\n }, 100);\n }\n }\n if (this.isBrowser) {\n setTimeout(() => {\n goToSlide.directionLeft = false;\n goToSlide.directionNext = false;\n currentSlide.directionLeft = false;\n currentSlide.directionNext = false;\n goToSlide.directionRight = false;\n goToSlide.directionPrev = false;\n currentSlide.directionRight = false;\n currentSlide.directionPrev = false;\n this.animationEnd = true;\n this.activeSlide = goToIndex;\n let directionName;\n if (direction === Direction.NEXT) {\n directionName = 'Next';\n }\n else if (direction === Direction.PREV) {\n directionName = 'Prev';\n }\n this.activeSlideChange.emit({\n direction: directionName,\n relatedTarget: this.activeSlide,\n });\n this.play();\n this.cdRef.markForCheck();\n }, 700);\n }\n }\n }\n selectSlide(index) {\n this.pause();\n if (this.animation === 'slide') {\n if (this.activeSlide < index) {\n this.slideAnimation(index, Direction.NEXT);\n }\n else if (this.activeSlide > index) {\n this.slideAnimation(index, Direction.PREV);\n }\n }\n else if (this.animation === 'fade') {\n if (index !== this.activeSlide) {\n this.fadeAnimation(index);\n }\n }\n else if (!this.animation) {\n setTimeout(() => {\n const direction = index < this.activeSlide ? 'Prev' : 'Next';\n this._select(index);\n this.activeSlideChange.emit({\n direction,\n relatedTarget: this.activeSlide,\n });\n }, 0);\n }\n this.play();\n }\n play() {\n if (!this.isPlaying) {\n this.isPlaying = true;\n this.restartTimer();\n this.cdRef.markForCheck();\n }\n }\n pause() {\n if (!this.noPause) {\n this.isPlaying = false;\n this.resetTimer();\n this.cdRef.markForCheck();\n }\n }\n getCurrentSlideIndex() {\n return this.slides.findIndex((slide) => slide.active);\n }\n isLast(index) {\n return index + 1 >= this.slides.length;\n }\n findNextSlideIndex(direction, force) {\n let nextSlideIndex = 0;\n if (!force && (this.isLast(this.activeSlide) && direction !== Direction.PREV && this.noWrap)) {\n return void 0;\n }\n switch (direction) {\n case Direction.NEXT:\n nextSlideIndex = !this.isLast(this._currentActiveSlide)\n ? this._currentActiveSlide + 1\n : !force && this.noWrap\n ? this._currentActiveSlide\n : 0;\n break;\n case Direction.PREV:\n nextSlideIndex =\n this._currentActiveSlide > 0\n ? this._currentActiveSlide - 1\n : !force && this.noWrap\n ? this._currentActiveSlide\n : this.slides.length - 1;\n break;\n default:\n throw new Error('Unknown direction');\n }\n return nextSlideIndex;\n }\n _select(index) {\n if (isNaN(index)) {\n this.pause();\n return;\n }\n const currentSlide = this.slides[this._currentActiveSlide];\n if (currentSlide) {\n currentSlide.active = false;\n }\n const nextSlide = this.slides[index];\n if (nextSlide) {\n this._currentActiveSlide = index;\n nextSlide.active = true;\n this.activeSlide = index;\n }\n this.cdRef.markForCheck();\n }\n restartTimer() {\n this.resetTimer();\n if (this.isBrowser) {\n const interval = +this.interval;\n if (!isNaN(interval) && interval > 0) {\n this.currentInterval = setInterval(() => {\n const nInterval = +this.interval;\n if (this.isPlaying && !isNaN(this.interval) && nInterval > 0 && this.slides.length) {\n this.nextSlide();\n }\n else {\n this.pause();\n }\n }, interval);\n }\n }\n }\n resetTimer() {\n if (this.isBrowser) {\n if (this.currentInterval) {\n clearInterval(this.currentInterval);\n this.currentInterval = void 0;\n }\n }\n }\n hasClass(el, className) {\n if (el.classList) {\n return el.classList.contains(className);\n }\n else {\n return !!el.className.match(new RegExp('(\\\\s|^)' + className + '(\\\\s|$)'));\n }\n }\n classAdd(el, className) {\n if (el.classList) {\n el.classList.add(className);\n }\n else if (!this.hasClass(el, className)) {\n el.className += ' ' + className;\n }\n }\n removeClass(el, className) {\n if (el.classList) {\n el.classList.remove(className);\n }\n else if (this.hasClass(el, className)) {\n const reg = new RegExp('(\\\\s|^)' + className + '(\\\\s|$)');\n el.className = el.className.replace(reg, ' ');\n }\n }\n keyboardControl(event) {\n if (this.keyboard) {\n // tslint:disable-next-line: deprecation\n if (event.keyCode === RIGHT_ARROW) {\n this.nextSlide();\n }\n // tslint:disable-next-line: deprecation\n if (event.keyCode === LEFT_ARROW) {\n this.previousSlide();\n }\n }\n }\n focus() {\n this.el.nativeElement.focus();\n }\n}\nCarouselComponent.ɵfac = function CarouselComponent_Factory(t) { return new (t || CarouselComponent)(ɵngcc0.ɵɵdirectiveInject(CarouselConfig), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(PLATFORM_ID), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nCarouselComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: CarouselComponent, selectors: [[\"mdb-carousel\"]], contentQueries: function CarouselComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {\n ɵngcc0.ɵɵcontentQuery(dirIndex, SlideComponent, 0);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx._slidesList = _t);\n } }, hostBindings: function CarouselComponent_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"mouseleave\", function CarouselComponent_mouseleave_HostBindingHandler() { return ctx.play(); })(\"mouseenter\", function CarouselComponent_mouseenter_HostBindingHandler() { return ctx.pause(); })(\"keyup\", function CarouselComponent_keyup_HostBindingHandler($event) { return ctx.keyboardControl($event); })(\"click\", function CarouselComponent_click_HostBindingHandler() { return ctx.focus(); });\n } }, inputs: { isControls: \"isControls\", class: \"class\", type: \"type\", animation: \"animation\", allowSwipe: \"allowSwipe\", activeSlide: \"activeSlide\", interval: \"interval\", noWrap: \"noWrap\", noPause: \"noPause\", keyboard: \"keyboard\", activeSlideIndex: \"activeSlideIndex\" }, outputs: { activeSlideChange: \"activeSlideChange\" }, ngContentSelectors: _c0, decls: 8, vars: 9, consts: [[\"tabindex\", \"0\", 3, \"swipeleft\", \"swiperight\", \"mouseenter\", \"mouseleave\", \"mouseup\"], [\"class\", \"controls-top\", 4, \"ngIf\"], [\"class\", \"carousel-indicators\", 4, \"ngIf\"], [1, \"carousel-inner\"], [\"class\", \"carousel-control-prev\", 3, \"disabled\", \"click\", 4, \"ngIf\"], [\"class\", \"carousel-control-next\", 3, \"disabled\", \"click\", 4, \"ngIf\"], [1, \"controls-top\"], [\"mdbBtn\", \"\", \"floating\", \"true\", 3, \"click\"], [1, \"fas\", \"fa-chevron-left\"], [1, \"fas\", \"fa-chevron-right\"], [1, \"carousel-indicators\"], [3, \"active\", \"click\", 4, \"ngFor\", \"ngForOf\"], [3, \"click\"], [1, \"d-block\", \"w-100\", \"img-fluid\", 3, \"src\"], [1, \"carousel-control-prev\", 3, \"click\"], [\"aria-hidden\", \"true\", 1, \"carousel-control-prev-icon\"], [1, \"sr-only\"], [1, \"carousel-control-next\", 3, \"click\"], [\"aria-hidden\", \"true\", 1, \"carousel-control-next-icon\"]], template: function CarouselComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵelementStart(0, \"div\", 0);\n ɵngcc0.ɵɵlistener(\"swipeleft\", function CarouselComponent_Template_div_swipeleft_0_listener($event) { return ctx.swipe($event.type); })(\"swiperight\", function CarouselComponent_Template_div_swiperight_0_listener($event) { return ctx.swipe($event.type); })(\"mouseenter\", function CarouselComponent_Template_div_mouseenter_0_listener() { return ctx.pause(); })(\"mouseleave\", function CarouselComponent_Template_div_mouseleave_0_listener() { return ctx.play(); })(\"mouseup\", function CarouselComponent_Template_div_mouseup_0_listener() { return ctx.play(); });\n ɵngcc0.ɵɵtemplate(1, CarouselComponent_div_1_Template, 5, 4, \"div\", 1);\n ɵngcc0.ɵɵtemplate(2, CarouselComponent_ol_2_Template, 2, 1, \"ol\", 2);\n ɵngcc0.ɵɵtemplate(3, CarouselComponent_ol_3_Template, 2, 1, \"ol\", 2);\n ɵngcc0.ɵɵelementStart(4, \"div\", 3);\n ɵngcc0.ɵɵprojection(5);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵtemplate(6, CarouselComponent_a_6_Template, 4, 2, \"a\", 4);\n ɵngcc0.ɵɵtemplate(7, CarouselComponent_a_7_Template, 4, 2, \"a\", 5);\n ɵngcc0.ɵɵelementEnd();\n } if (rf & 2) {\n ɵngcc0.ɵɵclassMapInterpolate2(\"carousel \", ctx.class, \" \", ctx.type, \"\");\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.slides.length > 1 && !ctx.checkNavigation() && ctx.isControls);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.slides.length > 1 && ctx.checkDots() && ctx.isControls);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.slides.length > 1 && !ctx.checkDots() && ctx.isControls);\n ɵngcc0.ɵɵadvance(3);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.slides.length > 1 && ctx.checkNavigation() && ctx.isControls);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.slides.length > 1 && ctx.checkNavigation() && ctx.isControls);\n } }, directives: [ɵngcc1.NgIf, MdbBtnDirective, ɵngcc1.NgForOf], styles: [\".carousel .carousel-control-next-icon,.carousel .carousel-control-prev-icon{width:2.25rem;height:2.25rem}.carousel .carousel-indicators li{width:.625rem;height:.625rem;border-radius:50%;cursor:pointer}.carousel-fade .carousel-item{opacity:0;transition-duration:.6s;transition-property:opacity}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{opacity:1}.carousel-fade .carousel-item-left.active,.carousel-fade .carousel-item-right.active{opacity:0}.carousel-fade .carousel-item-left.active,.carousel-fade .carousel-item-next,.carousel-fade .carousel-item-prev,.carousel-fade .carousel-item-prev.active,.carousel-fade .carousel-item.active{transform:translateX(0)}@supports (transform-style:preserve-3d){.carousel-fade .carousel-item-left.active,.carousel-fade .carousel-item-next,.carousel-fade .carousel-item-prev,.carousel-fade .carousel-item-prev.active,.carousel-fade .carousel-item.active{transform:translateZ(0)}}.carousel-control-next,.carousel-control-prev,.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:flex;overflow:hidden}.carousel,.carousel-multi-item,.carousel-thumbnails{outline:none}.carousel-fade .carousel-inner .carousel-item{opacity:0;transition-property:opacity}.carousel-fade .carousel-inner .active{opacity:1;transition:all .6s}.carousel-fade .carousel-inner>.carousel-item.active,.carousel-fade .carousel-inner>.carousel-item.next.left,.carousel-fade .carousel-inner>.carousel-item.prev.right{opacity:1;transition:all .6s;transform:translateZ(0)}\"], encapsulation: 2, changeDetection: 0 });\nCarouselComponent.ctorParameters = () => [\n { type: CarouselConfig },\n { type: ElementRef },\n { type: String, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] },\n { type: ChangeDetectorRef },\n { type: Renderer2 }\n];\nCarouselComponent.propDecorators = {\n _slidesList: [{ type: ContentChildren, args: [SlideComponent,] }],\n noWrap: [{ type: Input }],\n noPause: [{ type: Input }],\n isControls: [{ type: Input }],\n keyboard: [{ type: Input }],\n class: [{ type: Input }],\n type: [{ type: Input }],\n animation: [{ type: Input }],\n activeSlideIndex: [{ type: Input }],\n allowSwipe: [{ type: Input }],\n activeSlideChange: [{ type: Output }],\n activeSlide: [{ type: Input }],\n interval: [{ type: Input }],\n play: [{ type: HostListener, args: ['mouseleave',] }],\n pause: [{ type: HostListener, args: ['mouseenter',] }],\n keyboardControl: [{ type: HostListener, args: ['keyup', ['$event'],] }],\n focus: [{ type: HostListener, args: ['click',] }]\n};\n\nclass CarouselModule {\n static forRoot() {\n return { ngModule: CarouselModule, providers: [] };\n }\n}\nCarouselModule.ɵfac = function CarouselModule_Factory(t) { return new (t || CarouselModule)(); };\nCarouselModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: CarouselModule });\nCarouselModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ providers: [CarouselConfig], imports: [[CommonModule, ButtonsModule]] });\n\nclass BaseChartDirective {\n constructor(element, platformId) {\n this.element = element;\n this.labels = [];\n this.options = { legend: { display: false } };\n this.legend = false;\n this.chartClick = new EventEmitter();\n this.chartHover = new EventEmitter();\n this.initFlag = false;\n this.isBrowser = false;\n this.isBrowser = isPlatformBrowser(platformId);\n }\n ngOnInit() {\n if (this.isBrowser) {\n this.ctx = this.element.nativeElement.getContext('2d');\n this.cvs = this.element.nativeElement;\n this.initFlag = true;\n if (this.data || this.datasets) {\n this.refresh();\n }\n }\n }\n ngOnChanges(changes) {\n if (this.initFlag) {\n // Check if the changes are in the data or datasets\n if ((changes.hasOwnProperty('data') || changes.hasOwnProperty('datasets')) &&\n !changes.hasOwnProperty('labels')) {\n if (changes['data']) {\n this.updateChartData(changes['data'].currentValue);\n }\n else {\n this.updateChartData(changes['datasets'].currentValue);\n }\n this.chart.update();\n }\n else {\n // otherwise rebuild the chart\n this.refresh();\n }\n }\n }\n ngOnDestroy() {\n if (this.chart) {\n this.chart.destroy();\n this.chart = void 0;\n }\n }\n getChartBuilder(ctx) {\n const datasets = this.getDatasets();\n const options = Object.assign({}, this.options);\n if (this.legend === false) {\n options.legend = { display: false };\n }\n // hock for onHover and onClick events\n options.hover = options.hover || {};\n if (!options.hover.onHover) {\n options.hover.onHover = (event, active) => {\n if (active && active.length) {\n this.chartHover.emit({ event, active });\n }\n };\n }\n if (!options.onClick) {\n options.onClick = (event, active) => {\n this.chartClick.emit({ event, active });\n };\n }\n const opts = {\n type: this.chartType,\n data: {\n labels: this.labels,\n datasets: datasets,\n },\n options: options,\n };\n return new Chart(ctx, opts);\n }\n // feature(chart): added getPointDataAtEvent which will return clicked chart's point data\n getPointDataAtEvent(event) {\n if (event.active.length > 0) {\n const datasetIndex = event.active[0]._datasetIndex;\n const dataIndex = event.active[0]._index;\n const dataObject = this.datasets[datasetIndex].data[dataIndex];\n return dataObject;\n }\n }\n updateChartData(newDataValues) {\n if (Array.isArray(newDataValues[0].data)) {\n this.chart.data.datasets.forEach((dataset, i) => {\n dataset.data = newDataValues[i].data;\n if (newDataValues[i].label) {\n dataset.label = newDataValues[i].label;\n }\n });\n }\n else {\n this.chart.data.datasets[0].data = newDataValues;\n }\n }\n getDatasets() {\n let datasets = void 0;\n // in case if datasets is not provided, but data is present\n if (!this.datasets || (!this.datasets.length && (this.data && this.data.length))) {\n if (Array.isArray(this.data[0])) {\n datasets = this.data.map((data, index) => {\n return { data, label: this.labels[index] || `Label ${index}` };\n });\n }\n else {\n datasets = [{ data: this.data, label: `Label 0` }];\n }\n }\n if ((this.datasets && this.datasets.length) || (datasets && datasets.length)) {\n datasets = (this.datasets || datasets).map((elm, index) => {\n const newElm = Object.assign({}, elm);\n if (this.colors && this.colors.length) {\n Object.assign(newElm, this.colors[index]);\n }\n else {\n Object.assign(newElm, getColors(this.chartType, index, newElm.data.length));\n }\n return newElm;\n });\n }\n if (!datasets) {\n throw new Error(`ng-charts configuration error,\n data or datasets field are required to render char ${this.chartType}`);\n }\n return datasets;\n }\n refresh() {\n this.ngOnDestroy();\n this.chart = this.getChartBuilder(this.ctx);\n }\n}\nBaseChartDirective.ɵfac = function BaseChartDirective_Factory(t) { return new (t || BaseChartDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(PLATFORM_ID)); };\nBaseChartDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: BaseChartDirective, selectors: [[\"canvas\", \"mdbChart\", \"\"]], inputs: { labels: \"labels\", options: \"options\", legend: \"legend\", data: \"data\", datasets: \"datasets\", chartType: \"chartType\", colors: \"colors\" }, outputs: { chartClick: \"chartClick\", chartHover: \"chartHover\" }, exportAs: [\"mdb-base-chart\"], features: [ɵngcc0.ɵɵNgOnChangesFeature] });\nBaseChartDirective.defaultColors = [\n [255, 99, 132],\n [54, 162, 235],\n [255, 206, 86],\n [231, 233, 237],\n [75, 192, 192],\n [151, 187, 205],\n [220, 220, 220],\n [247, 70, 74],\n [70, 191, 189],\n [253, 180, 92],\n [148, 159, 177],\n [77, 83, 96],\n];\nBaseChartDirective.ctorParameters = () => [\n { type: ElementRef },\n { type: String, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] }\n];\nBaseChartDirective.propDecorators = {\n data: [{ type: Input }],\n datasets: [{ type: Input }],\n labels: [{ type: Input }],\n options: [{ type: Input }],\n chartType: [{ type: Input }],\n colors: [{ type: Input }],\n legend: [{ type: Input }],\n chartClick: [{ type: Output }],\n chartHover: [{ type: Output }]\n};\nfunction rgba(colour, alpha) {\n return 'rgba(' + colour.concat(alpha).join(',') + ')';\n}\nfunction getRandomInt(min, max) {\n return Math.floor(Math.random() * (max - min + 1)) + min;\n}\nfunction formatLineColor(colors) {\n return {\n backgroundColor: rgba(colors, 0.4),\n borderColor: rgba(colors, 1),\n pointBackgroundColor: rgba(colors, 1),\n pointBorderColor: '#fff',\n pointHoverBackgroundColor: '#fff',\n pointHoverBorderColor: rgba(colors, 0.8),\n };\n}\nfunction formatBarColor(colors) {\n return {\n backgroundColor: rgba(colors, 0.6),\n borderColor: rgba(colors, 1),\n hoverBackgroundColor: rgba(colors, 0.8),\n hoverBorderColor: rgba(colors, 1),\n };\n}\nfunction formatPieColors(colors) {\n return {\n backgroundColor: colors.map((color) => rgba(color, 0.6)),\n borderColor: colors.map(() => '#fff'),\n pointBackgroundColor: colors.map((color) => rgba(color, 1)),\n pointBorderColor: colors.map(() => '#fff'),\n pointHoverBackgroundColor: colors.map((color) => rgba(color, 1)),\n pointHoverBorderColor: colors.map((color) => rgba(color, 1)),\n };\n}\nfunction formatPolarAreaColors(colors) {\n return {\n backgroundColor: colors.map((color) => rgba(color, 0.6)),\n borderColor: colors.map((color) => rgba(color, 1)),\n hoverBackgroundColor: colors.map((color) => rgba(color, 0.8)),\n hoverBorderColor: colors.map((color) => rgba(color, 1)),\n };\n}\nfunction getRandomColor() {\n return [getRandomInt(0, 255), getRandomInt(0, 255), getRandomInt(0, 255)];\n}\n/**\n * Generate colors for line|bar charts\n */\nfunction generateColor(index) {\n return BaseChartDirective.defaultColors[index] || getRandomColor();\n}\n/**\n * Generate colors for pie|doughnut charts\n */\nfunction generateColors(count) {\n const colorsArr = new Array(count);\n for (let i = 0; i < count; i++) {\n colorsArr[i] = BaseChartDirective.defaultColors[i] || getRandomColor();\n }\n return colorsArr;\n}\n/**\n * Generate colors by chart type\n */\nfunction getColors(chartType, index, count) {\n if (chartType === 'pie' || chartType === 'doughnut') {\n return formatPieColors(generateColors(count));\n }\n if (chartType === 'polarArea') {\n return formatPolarAreaColors(generateColors(count));\n }\n if (chartType === 'line' || chartType === 'radar') {\n return formatLineColor(generateColor(index));\n }\n if (chartType === 'bar' || chartType === 'horizontalBar') {\n return formatBarColor(generateColor(index));\n }\n return generateColor(index);\n}\n\nclass ChartsModule {\n}\nChartsModule.ɵfac = function ChartsModule_Factory(t) { return new (t || ChartsModule)(); };\nChartsModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: ChartsModule });\nChartsModule.ɵinj = ɵngcc0.ɵɵdefineInjector({});\n\nconst CHECKBOX_VALUE_ACCESSOR = {\n provide: NG_VALUE_ACCESSOR,\n // tslint:disable-next-line: no-use-before-declare\n useExisting: forwardRef(() => CheckboxComponent),\n multi: true,\n};\nlet defaultIdNumber = 0;\nclass MdbCheckboxChange {\n}\nclass CheckboxComponent {\n constructor(_cdRef) {\n this._cdRef = _cdRef;\n this.defaultId = `mdb-checkbox-${++defaultIdNumber}`;\n this.id = this.defaultId;\n this.checked = false;\n this.filledIn = false;\n this.indeterminate = false;\n this.rounded = false;\n this.checkboxPosition = 'left';\n this.default = false;\n this.inline = false;\n this.change = new EventEmitter();\n this.checkboxClicked = new Subject();\n // Control Value Accessor Methods\n this.onChange = (_) => { };\n this.onTouched = () => { };\n }\n onLabelClick(event) {\n event.stopPropagation();\n this.checkboxClicked.next(true);\n }\n onDocumentClick() {\n this.checkboxClicked.next(false);\n }\n ngOnInit() {\n if (this.indeterminate && !this.filledIn && !this.rounded) {\n this.inputEl.indeterminate = true;\n }\n }\n ngOnChanges(changes) {\n if (changes.hasOwnProperty('checked')) {\n this.checked = changes.checked.currentValue;\n }\n }\n get changeEvent() {\n const newChangeEvent = new MdbCheckboxChange();\n newChangeEvent.element = this;\n newChangeEvent.checked = this.checked;\n return newChangeEvent;\n }\n toggle() {\n if (this.disabled) {\n return;\n }\n this.checked = !this.checked;\n this.indeterminate = false;\n this.onChange(this.checked);\n this._cdRef.markForCheck();\n }\n onCheckboxClick(event) {\n event.stopPropagation();\n this.toggle();\n }\n onCheckboxChange(event) {\n event.stopPropagation();\n timer(0).subscribe(() => this.change.emit(this.changeEvent));\n }\n onBlur() {\n this.checkboxClicked.pipe(take(1)).subscribe(val => {\n if (!val) {\n this.onTouched();\n }\n });\n }\n writeValue(value) {\n this.value = value;\n this.checked = !!value;\n this._cdRef.markForCheck();\n }\n registerOnChange(fn) {\n this.onChange = fn;\n }\n registerOnTouched(fn) {\n this.onTouched = fn;\n }\n setDisabledState(isDisabled) {\n this.disabled = isDisabled;\n }\n}\nCheckboxComponent.ɵfac = function CheckboxComponent_Factory(t) { return new (t || CheckboxComponent)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef)); };\nCheckboxComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: CheckboxComponent, selectors: [[\"mdb-checkbox\"]], viewQuery: function CheckboxComponent_Query(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵviewQuery(_c3, 3);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.inputEl = _t.first);\n } }, hostBindings: function CheckboxComponent_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"click\", function CheckboxComponent_click_HostBindingHandler($event) { return ctx.onLabelClick($event); })(\"click\", function CheckboxComponent_click_HostBindingHandler() { return ctx.onDocumentClick(); }, false, ɵngcc0.ɵɵresolveDocument);\n } }, inputs: { id: \"id\", checked: \"checked\", filledIn: \"filledIn\", indeterminate: \"indeterminate\", rounded: \"rounded\", checkboxPosition: \"checkboxPosition\", default: \"default\", inline: \"inline\", value: \"value\", disabled: \"disabled\", class: \"class\", required: \"required\", name: \"name\", tabIndex: \"tabIndex\" }, outputs: { change: \"change\" }, features: [ɵngcc0.ɵɵProvidersFeature([CHECKBOX_VALUE_ACCESSOR]), ɵngcc0.ɵɵNgOnChangesFeature], ngContentSelectors: _c0, decls: 5, vars: 27, consts: [[3, \"ngClass\"], [\"type\", \"checkbox\", 1, \"custom-control-input\", 3, \"ngClass\", \"id\", \"checked\", \"disabled\", \"required\", \"indeterminate\", \"tabIndex\", \"blur\", \"click\", \"change\"], [\"input\", \"\"]], template: function CheckboxComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵelementStart(0, \"div\", 0);\n ɵngcc0.ɵɵelementStart(1, \"input\", 1, 2);\n ɵngcc0.ɵɵlistener(\"blur\", function CheckboxComponent_Template_input_blur_1_listener() { return ctx.onBlur(); })(\"click\", function CheckboxComponent_Template_input_click_1_listener($event) { return ctx.onCheckboxClick($event); })(\"change\", function CheckboxComponent_Template_input_change_1_listener($event) { return ctx.onCheckboxChange($event); });\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(3, \"label\", 0);\n ɵngcc0.ɵɵprojection(4);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n } if (rf & 2) {\n ɵngcc0.ɵɵproperty(\"ngClass\", ɵngcc0.ɵɵpureFunction4(12, _c4, ctx.default, !ctx.default, ctx.inline, ctx.inline && !ctx.default));\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngClass\", ɵngcc0.ɵɵpureFunction3(17, _c5, ctx.filledIn || ctx.rounded, ctx.default, !ctx.default))(\"id\", ctx.id)(\"checked\", ctx.checked)(\"disabled\", ctx.disabled)(\"required\", ctx.required)(\"indeterminate\", ctx.indeterminate)(\"tabIndex\", ctx.tabIndex);\n ɵngcc0.ɵɵattribute(\"name\", ctx.name)(\"value\", ctx.value);\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"ngClass\", ɵngcc0.ɵɵpureFunction5(21, _c6, ctx.default, !ctx.default, ctx.checkboxPosition === \"right\", ctx.rounded, ctx.disabled));\n ɵngcc0.ɵɵattribute(\"for\", ctx.id);\n } }, directives: [ɵngcc1.NgClass], styles: [\".form-check-label.label-before:after,.form-check-label.label-before:before{top:0!important;right:0!important;left:auto!important}.custom-control-label.label-before:after,.custom-control-label.label-before:before{top:.25rem!important;right:0!important;left:auto!important}.custom-control-label.label-before{position:absolute}.custom-control-inline .label-before{position:relative}.form-check-label.label-before{padding-left:0!important;padding-right:35px}.custom-control-label.label-before{padding-left:0!important;padding-right:25px!important}.form-check-input[type=checkbox]:checked+.label-before:before,label.btn input[type=checkbox]:checked+.label-before:before{top:-4px!important;right:10px!important;left:auto!important}.form-check-input[type=checkbox]:indeterminate+.label-before:before,label.btn input[type=checkbox]:indeterminate+.label-before:before{top:-11px!important;right:16px!important;left:auto!important}.form-check-input[type=checkbox].filled-in+.label-before:before,.form-check-input[type=checkbox].filled-in:checked+.label-before:before,label.btn input[type=checkbox].filled-in+.label-before:before,label.btn input[type=checkbox].filled-in:checked+.label-before:before{top:0!important;right:10px!important;left:auto!important}.form-check-input[type=checkbox].filled-in+.label-before:after,label.btn input[type=checkbox].filled-in+.label-before:after{top:0!important;left:auto!important}.checkbox-rounded:after{border-radius:50%!important}mdb-checkbox .form-check{padding-left:0!important}\"], encapsulation: 2, changeDetection: 0 });\nCheckboxComponent.ctorParameters = () => [\n { type: ChangeDetectorRef }\n];\nCheckboxComponent.propDecorators = {\n inputEl: [{ type: ViewChild, args: ['input', { static: true },] }],\n class: [{ type: Input }],\n id: [{ type: Input }],\n required: [{ type: Input }],\n name: [{ type: Input }],\n value: [{ type: Input }],\n checked: [{ type: Input }],\n filledIn: [{ type: Input }],\n indeterminate: [{ type: Input }],\n disabled: [{ type: Input }],\n rounded: [{ type: Input }],\n checkboxPosition: [{ type: Input }],\n default: [{ type: Input }],\n inline: [{ type: Input }],\n tabIndex: [{ type: Input }],\n change: [{ type: Output }],\n onLabelClick: [{ type: HostListener, args: ['click', ['$event'],] }],\n onDocumentClick: [{ type: HostListener, args: ['document:click',] }]\n};\n\nclass CheckboxModule {\n}\nCheckboxModule.ɵfac = function CheckboxModule_Factory(t) { return new (t || CheckboxModule)(); };\nCheckboxModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: CheckboxModule });\nCheckboxModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ imports: [[CommonModule, FormsModule]] });\n\nclass CollapseComponent {\n constructor(_cdRef) {\n this._cdRef = _cdRef;\n this.isCollapsed = true;\n this.showBsCollapse = new EventEmitter();\n this.shownBsCollapse = new EventEmitter();\n this.hideBsCollapse = new EventEmitter();\n this.hiddenBsCollapse = new EventEmitter();\n this.collapsed = new EventEmitter();\n this.expanded = new EventEmitter();\n this.overflow = 'hidden';\n }\n onExpandBodyDone(event) {\n setTimeout(() => {\n if (event.toState === 'expanded') {\n this.isCollapsed = false;\n this.shownBsCollapse.emit(this);\n this.expanded.emit(this);\n this.overflow = 'visible';\n this.showCaptions();\n }\n else {\n this.isCollapsed = true;\n this.hiddenBsCollapse.emit(this);\n this.collapsed.emit(this);\n }\n }, 0);\n }\n showCaptions() {\n this.captions.forEach((caption) => caption.showCaption());\n }\n toggle() {\n this.isCollapsed ? this.show() : this.hide();\n }\n show() {\n this.expandAnimationState = 'expanded';\n this.showBsCollapse.emit(this);\n this._cdRef.markForCheck();\n }\n hide() {\n this.overflow = 'hidden';\n this.expandAnimationState = 'collapsed';\n this.hideBsCollapse.emit(this);\n this._cdRef.markForCheck();\n }\n initializeCollapseState() {\n this.isCollapsed ? this.hide() : this.show();\n }\n ngOnInit() {\n this.initializeCollapseState();\n }\n}\nCollapseComponent.ɵfac = function CollapseComponent_Factory(t) { return new (t || CollapseComponent)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef)); };\nCollapseComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: CollapseComponent, selectors: [[\"\", \"mdbCollapse\", \"\"]], contentQueries: function CollapseComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {\n ɵngcc0.ɵɵcontentQuery(dirIndex, FixedButtonCaptionDirective, 0);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.captions = _t);\n } }, hostVars: 3, hostBindings: function CollapseComponent_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵsyntheticHostListener(\"@expandBody.done\", function CollapseComponent_animation_expandBody_done_HostBindingHandler($event) { return ctx.onExpandBodyDone($event); });\n } if (rf & 2) {\n ɵngcc0.ɵɵsyntheticHostProperty(\"@expandBody\", ctx.expandAnimationState);\n ɵngcc0.ɵɵstyleProp(\"overflow\", ctx.overflow);\n } }, inputs: { isCollapsed: \"isCollapsed\" }, outputs: { showBsCollapse: \"showBsCollapse\", shownBsCollapse: \"shownBsCollapse\", hideBsCollapse: \"hideBsCollapse\", hiddenBsCollapse: \"hiddenBsCollapse\", collapsed: \"collapsed\", expanded: \"expanded\" }, exportAs: [\"bs-collapse\"], attrs: _c7, ngContentSelectors: _c0, decls: 1, vars: 0, template: function CollapseComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵprojection(0);\n } }, encapsulation: 2, data: { animation: [\n trigger('expandBody', [\n state('collapsed', style({ height: '0px' })),\n state('expanded', style({ height: '*' })),\n transition('expanded <=> collapsed', animate('500ms ease')),\n ]),\n ] }, changeDetection: 0 });\nCollapseComponent.ctorParameters = () => [\n { type: ChangeDetectorRef }\n];\nCollapseComponent.propDecorators = {\n captions: [{ type: ContentChildren, args: [FixedButtonCaptionDirective,] }],\n isCollapsed: [{ type: Input }],\n showBsCollapse: [{ type: Output }],\n shownBsCollapse: [{ type: Output }],\n hideBsCollapse: [{ type: Output }],\n hiddenBsCollapse: [{ type: Output }],\n collapsed: [{ type: Output }],\n expanded: [{ type: Output }],\n expandAnimationState: [{ type: HostBinding, args: ['@expandBody',] }],\n overflow: [{ type: HostBinding, args: ['style.overflow',] }],\n onExpandBodyDone: [{ type: HostListener, args: ['@expandBody.done', ['$event'],] }]\n};\n\nclass CollapseModule {\n static forRoot() {\n return { ngModule: CollapseModule, providers: [] };\n }\n}\nCollapseModule.ɵfac = function CollapseModule_Factory(t) { return new (t || CollapseModule)(); };\nCollapseModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: CollapseModule });\nCollapseModule.ɵinj = ɵngcc0.ɵɵdefineInjector({});\n\n/**\n * @copyright Valor Software\n * @copyright Angular ng-bootstrap team\n */\nclass Trigger {\n constructor(open, close) {\n this.open = open;\n this.close = close || open;\n }\n isManual() {\n return this.open === 'manual' || this.close === 'manual';\n }\n}\n\nconst DEFAULT_ALIASES = {\n hover: ['mouseover', 'mouseout'],\n focus: ['focusin', 'focusout']\n};\n/* tslint:disable-next-line: no-any */\nfunction parseTriggers(triggers, aliases = DEFAULT_ALIASES) {\n const trimmedTriggers = (triggers || '').trim();\n if (trimmedTriggers.length === 0) {\n return [];\n }\n const parsedTriggers = trimmedTriggers\n .split(/\\s+/)\n .map((trigger) => trigger.split(':'))\n .map((triggerPair) => {\n const alias = aliases[triggerPair[0]] || triggerPair;\n return new Trigger(alias[0], alias[1]);\n });\n const manualTriggers = parsedTriggers.filter((triggerPair) => triggerPair.isManual());\n if (manualTriggers.length > 1) {\n throw new Error('Triggers parse error: only one manual trigger is allowed');\n }\n if (manualTriggers.length === 1 && parsedTriggers.length > 1) {\n throw new Error('Triggers parse error: manual trigger can\\'t be mixed with other triggers');\n }\n return parsedTriggers;\n}\nfunction listenToTriggers(renderer, \n/* tslint:disable-next-line: no-any */\ntarget, triggers, showFn, hideFn, toggleFn) {\n const parsedTriggers = parseTriggers(triggers);\n /* tslint:disable-next-line: no-any */\n const listeners = [];\n if (parsedTriggers.length === 1 && parsedTriggers[0].isManual()) {\n return Function.prototype;\n }\n parsedTriggers.forEach((trigger) => {\n if (trigger.open === trigger.close) {\n listeners.push(renderer.listen(target, trigger.open, toggleFn));\n return;\n }\n listeners.push(renderer.listen(target, trigger.open, showFn), renderer.listen(target, trigger.close, hideFn));\n });\n return () => {\n listeners.forEach((unsubscribeFn) => unsubscribeFn());\n };\n}\nfunction listenToTriggersV2(renderer, options) {\n const parsedTriggers = parseTriggers(options.triggers);\n const target = options.target;\n // do nothing\n if (parsedTriggers.length === 1 && parsedTriggers[0].isManual()) {\n return Function.prototype;\n }\n // all listeners\n /* tslint:disable-next-line: no-any */\n const listeners = [];\n // lazy listeners registration\n const _registerHide = [];\n const registerHide = () => {\n // add hide listeners to unregister array\n _registerHide.forEach((fn) => listeners.push(fn()));\n // register hide events only once\n _registerHide.length = 0;\n };\n // register open\\close\\toggle listeners\n parsedTriggers.forEach((trigger) => {\n const useToggle = trigger.open === trigger.close;\n const showFn = useToggle ? options.toggle : options.show;\n if (!useToggle) {\n _registerHide.push(() => renderer.listen(target, trigger.close, options.hide));\n }\n listeners.push(renderer.listen(target, trigger.open, () => showFn(registerHide)));\n });\n return () => {\n listeners.forEach((unsubscribeFn) => unsubscribeFn());\n };\n}\nfunction registerOutsideClick(renderer, options) {\n if (!options.outsideClick) {\n return Function.prototype;\n }\n /* tslint:disable-next-line: no-any */\n return renderer.listen('document', 'click', (event) => {\n if (options.target && options.target.contains(event.target)) {\n return undefined;\n }\n if (options.targets &&\n options.targets.some(target => target.contains(event.target))) {\n return undefined;\n }\n options.hide();\n });\n}\nfunction registerEscClick(renderer, options) {\n if (!options.outsideEsc) {\n return Function.prototype;\n }\n return renderer.listen('document', 'keyup.esc', (event) => {\n if (options.target && options.target.contains(event.target)) {\n return undefined;\n }\n if (options.targets &&\n options.targets.some(target => target.contains(event.target))) {\n return undefined;\n }\n options.hide();\n });\n}\n\n/**\n * @license\n * Copyright Google Inc. All Rights Reserved.\n *\n * Use of this source code is governed by an MIT-style license that can be\n * found in the LICENSE file at https://angular.io/license\n */\n/**\n * JS version of browser APIs. This library can only run in the browser.\n */\nconst win$1 = (typeof window !== 'undefined' && window) || {};\nconst document$2 = win$1.document;\nconst location$1 = win$1.location;\nconst gc$1 = win$1.gc ? () => win$1.gc() : () => null;\nconst performance$1 = win$1.performance ? win$1.performance : null;\nconst Event$1 = win$1.Event;\nconst MouseEvent$1 = win$1.MouseEvent;\nconst KeyboardEvent$1 = win$1.KeyboardEvent;\nconst EventTarget$1 = win$1.EventTarget;\nconst History$1 = win$1.History;\nconst Location$1 = win$1.Location;\nconst EventListener$1 = win$1.EventListener;\n\nlet guessedVersion;\nfunction _guessBsVersion() {\n if (typeof document === 'undefined') {\n return null;\n }\n const spanEl = document.createElement('span');\n spanEl.innerText = 'test bs version';\n document.body.appendChild(spanEl);\n spanEl.classList.add('d-none');\n const rect = spanEl.getBoundingClientRect();\n document.body.removeChild(spanEl);\n if (!rect) {\n return 'bs3';\n }\n return rect.top === 0 ? 'bs4' : 'bs3';\n}\nfunction setTheme(theme) {\n guessedVersion = theme;\n}\n// todo: in ngx-bootstrap, bs4 will became a default one\nfunction isBs3$1() {\n if (typeof win$1 === 'undefined') {\n return true;\n }\n if (typeof win$1.__theme === 'undefined') {\n if (guessedVersion) {\n return guessedVersion === 'bs3';\n }\n guessedVersion = _guessBsVersion();\n return guessedVersion === 'bs3';\n }\n return win$1.__theme !== 'bs4';\n}\n\nclass LinkedList {\n constructor() {\n this.length = 0;\n this.asArray = [];\n // Array methods overriding END\n }\n get(position) {\n if (this.length === 0 || position < 0 || position >= this.length) {\n return void 0;\n }\n let current = this.head;\n for (let index = 0; index < position; index++) {\n current = current.next;\n }\n return current.value;\n }\n add(value, position = this.length) {\n if (position < 0 || position > this.length) {\n throw new Error('Position is out of the list');\n }\n /* tslint:disable-next-line: no-any*/\n const node = {\n value,\n next: undefined,\n previous: undefined\n };\n if (this.length === 0) {\n this.head = node;\n this.tail = node;\n this.current = node;\n }\n else {\n if (position === 0) {\n // first node\n node.next = this.head;\n this.head.previous = node;\n this.head = node;\n }\n else if (position === this.length) {\n // last node\n this.tail.next = node;\n node.previous = this.tail;\n this.tail = node;\n }\n else {\n // node in middle\n const currentPreviousNode = this.getNode(position - 1);\n const currentNextNode = currentPreviousNode.next;\n currentPreviousNode.next = node;\n currentNextNode.previous = node;\n node.previous = currentPreviousNode;\n node.next = currentNextNode;\n }\n }\n this.length++;\n this.createInternalArrayRepresentation();\n }\n remove(position = 0) {\n if (this.length === 0 || position < 0 || position >= this.length) {\n throw new Error('Position is out of the list');\n }\n if (position === 0) {\n // first node\n this.head = this.head.next;\n if (this.head) {\n // there is no second node\n this.head.previous = undefined;\n }\n else {\n // there is no second node\n this.tail = undefined;\n }\n }\n else if (position === this.length - 1) {\n // last node\n this.tail = this.tail.previous;\n this.tail.next = undefined;\n }\n else {\n // middle node\n const removedNode = this.getNode(position);\n removedNode.next.previous = removedNode.previous;\n removedNode.previous.next = removedNode.next;\n }\n this.length--;\n this.createInternalArrayRepresentation();\n }\n set(position, value) {\n if (this.length === 0 || position < 0 || position >= this.length) {\n throw new Error('Position is out of the list');\n }\n const node = this.getNode(position);\n node.value = value;\n this.createInternalArrayRepresentation();\n }\n toArray() {\n return this.asArray;\n }\n /* tslint:disable-next-line: no-any*/\n findAll(fn) {\n let current = this.head;\n /* tslint:disable-next-line: no-any*/\n const result = [];\n for (let index = 0; index < this.length; index++) {\n if (fn(current.value, index)) {\n result.push({ index, value: current.value });\n }\n current = current.next;\n }\n return result;\n }\n // Array methods overriding start\n push(...args) {\n /* tslint:disable-next-line: no-any*/\n args.forEach((arg) => {\n this.add(arg);\n });\n return this.length;\n }\n pop() {\n if (this.length === 0) {\n return undefined;\n }\n const last = this.tail;\n this.remove(this.length - 1);\n return last.value;\n }\n unshift(...args) {\n args.reverse();\n /* tslint:disable-next-line: no-any*/\n args.forEach((arg) => {\n this.add(arg, 0);\n });\n return this.length;\n }\n shift() {\n if (this.length === 0) {\n return undefined;\n }\n const lastItem = this.head.value;\n this.remove();\n return lastItem;\n }\n /* tslint:disable-next-line: no-any*/\n forEach(fn) {\n let current = this.head;\n for (let index = 0; index < this.length; index++) {\n fn(current.value, index);\n current = current.next;\n }\n }\n indexOf(value) {\n let current = this.head;\n let position = 0;\n for (let index = 0; index < this.length; index++) {\n if (current.value === value) {\n position = index;\n break;\n }\n current = current.next;\n }\n return position;\n }\n /* tslint:disable-next-line: no-any*/\n some(fn) {\n let current = this.head;\n let result = false;\n while (current && !result) {\n if (fn(current.value)) {\n result = true;\n break;\n }\n current = current.next;\n }\n return result;\n }\n /* tslint:disable-next-line: no-any*/\n every(fn) {\n let current = this.head;\n let result = true;\n while (current && result) {\n if (!fn(current.value)) {\n result = false;\n }\n current = current.next;\n }\n return result;\n }\n toString() {\n return '[Linked List]';\n }\n /* tslint:disable-next-line: no-any*/\n find(fn) {\n let current = this.head;\n let result;\n for (let index = 0; index < this.length; index++) {\n if (fn(current.value, index)) {\n result = current.value;\n break;\n }\n current = current.next;\n }\n return result;\n }\n /* tslint:disable-next-line: no-any*/\n findIndex(fn) {\n let current = this.head;\n let result;\n for (let index = 0; index < this.length; index++) {\n if (fn(current.value, index)) {\n result = index;\n break;\n }\n current = current.next;\n }\n return result;\n }\n /* tslint:disable-next-line: no-any*/\n getNode(position) {\n if (this.length === 0 || position < 0 || position >= this.length) {\n throw new Error('Position is out of the list');\n }\n let current = this.head;\n for (let index = 0; index < position; index++) {\n current = current.next;\n }\n return current;\n }\n createInternalArrayRepresentation() {\n /* tslint:disable-next-line: no-any*/\n const outArray = [];\n let current = this.head;\n while (current) {\n outArray.push(current.value);\n current = current.next;\n }\n this.asArray = outArray;\n }\n}\n\n/*tslint:disable:no-invalid-this */\n/* tslint:disable-next-line: no-any */\nfunction OnChange() {\n const sufix = 'Change';\n /* tslint:disable-next-line: no-any */\n return function OnChangeHandler(target, propertyKey) {\n const _key = ` __${propertyKey}Value`;\n Object.defineProperty(target, propertyKey, {\n /* tslint:disable-next-line: no-any */\n get() {\n return this[_key];\n },\n /* tslint:disable-next-line: no-any */\n set(value) {\n const prevValue = this[_key];\n this[_key] = value;\n if (prevValue !== value && this[propertyKey + sufix]) {\n this[propertyKey + sufix].emit(value);\n }\n }\n });\n };\n}\n/* tslint:enable */\n\nclass Utils {\n /* tslint:disable-next-line: no-any */\n static reflow(element) {\n /* tslint:disable-next-line: no-any */\n ((bs) => bs)(element.offsetHeight);\n }\n // source: https://github.com/jquery/jquery/blob/master/src/css/var/getStyles.js\n /* tslint:disable-next-line: no-any */\n static getStyles(elem) {\n // Support: IE <=11 only, Firefox <=30 (#15098, #14150)\n // IE throws on elements created in popups\n // FF meanwhile throws on frame elements through \"defaultView.getComputedStyle\"\n let view = elem.ownerDocument.defaultView;\n if (!view || !view.opener) {\n view = win$1;\n }\n return view.getComputedStyle(elem);\n }\n}\n\nconst _messagesHash = {};\nconst _hideMsg = typeof console === 'undefined' || !('warn' in console);\nfunction warnOnce(msg) {\n if (!isDevMode() || _hideMsg || msg in _messagesHash) {\n return;\n }\n _messagesHash[msg] = true;\n /*tslint:disable-next-line*/\n console.warn(msg);\n}\n\n/**\n * @copyright Valor Software\n * @copyright Angular ng-bootstrap team\n */\nclass ContentRef {\n constructor(\n /* tslint:disable-next-line: no-any */\n nodes, viewRef, \n /* tslint:disable-next-line: no-any */\n componentRef) {\n this.nodes = nodes;\n this.viewRef = viewRef;\n this.componentRef = componentRef;\n }\n}\n\n// tslint:disable:max-file-line-count\nclass ComponentLoader {\n /**\n * Do not use this directly, it should be instanced via\n * `ComponentLoadFactory.attach`\n * @internal\n */\n // tslint:disable-next-line\n constructor(_viewContainerRef, _renderer, _elementRef, _injector, _componentFactoryResolver, _ngZone, _applicationRef, _posService) {\n this._viewContainerRef = _viewContainerRef;\n this._renderer = _renderer;\n this._elementRef = _elementRef;\n this._injector = _injector;\n this._componentFactoryResolver = _componentFactoryResolver;\n this._ngZone = _ngZone;\n this._applicationRef = _applicationRef;\n this._posService = _posService;\n this.onBeforeShow = new EventEmitter();\n /* tslint:disable-next-line: no-any*/\n this.onShown = new EventEmitter();\n /* tslint:disable-next-line: no-any*/\n this.onBeforeHide = new EventEmitter();\n this.onHidden = new EventEmitter();\n this.shown = new EventEmitter();\n this.hidden = new EventEmitter();\n this._providers = [];\n this._isHiding = false;\n /**\n * A selector used if container element was not found\n */\n this.containerDefaultSelector = 'body';\n this._listenOpts = {};\n this._globalListener = Function.prototype;\n }\n get isShown() {\n if (this._isHiding) {\n return false;\n }\n return !!this._componentRef;\n }\n attach(compType) {\n this._componentFactory = this._componentFactoryResolver\n .resolveComponentFactory(compType);\n return this;\n }\n // todo: add behaviour: to target element, `body`, custom element\n to(container) {\n this.container = container || this.container;\n return this;\n }\n position(opts) {\n this.attachment = opts.attachment || this.attachment;\n this._elementRef = opts.target || this._elementRef;\n return this;\n }\n provide(provider) {\n this._providers.push(provider);\n return this;\n }\n // todo: appendChild to element or document.querySelector(this.container)\n show(opts = {}) {\n this._subscribePositioning();\n this._innerComponent = null;\n if (!this._componentRef) {\n this.onBeforeShow.emit();\n this._contentRef = this._getContentRef(opts.content, opts.data);\n const injector = Injector.create({\n providers: this._providers,\n parent: this._injector\n });\n this._componentRef = this._componentFactory.create(injector, this._contentRef.nodes);\n this._applicationRef.attachView(this._componentRef.hostView);\n // this._componentRef = this._viewContainerRef\n // .createComponent(this._componentFactory, 0, injector, this._contentRef.nodes);\n this.instance = this._componentRef.instance;\n Object.assign(this._componentRef.instance, opts);\n if (this.container instanceof ElementRef) {\n this.container.nativeElement.appendChild(this._componentRef.location.nativeElement);\n }\n if (typeof this.container === 'string' && typeof document !== 'undefined') {\n const selectedElement = document.querySelector(this.container) ||\n document.querySelector(this.containerDefaultSelector);\n if (selectedElement) {\n selectedElement.appendChild(this._componentRef.location.nativeElement);\n }\n }\n if (!this.container &&\n this._elementRef &&\n this._elementRef.nativeElement.parentElement) {\n this._elementRef.nativeElement.parentElement.appendChild(this._componentRef.location.nativeElement);\n }\n // we need to manually invoke change detection since events registered\n // via\n // Renderer::listen() are not picked up by change detection with the\n // OnPush strategy\n if (this._contentRef.componentRef) {\n this._innerComponent = this._contentRef.componentRef.instance;\n this._contentRef.componentRef.changeDetectorRef.markForCheck();\n this._contentRef.componentRef.changeDetectorRef.detectChanges();\n }\n this._componentRef.changeDetectorRef.markForCheck();\n this._componentRef.changeDetectorRef.detectChanges();\n this.onShown.emit(this._componentRef.instance);\n }\n this._registerOutsideClick();\n return this._componentRef;\n }\n hide() {\n if (!this._componentRef) {\n return this;\n }\n this._posService.deletePositionElement(this._componentRef.location);\n this.onBeforeHide.emit(this._componentRef.instance);\n const componentEl = this._componentRef.location.nativeElement;\n componentEl.parentNode.removeChild(componentEl);\n if (this._contentRef.componentRef) {\n this._contentRef.componentRef.destroy();\n }\n this._componentRef.destroy();\n if (this._viewContainerRef && this._contentRef.viewRef) {\n this._viewContainerRef.remove(this._viewContainerRef.indexOf(this._contentRef.viewRef));\n }\n if (this._contentRef.viewRef) {\n this._contentRef.viewRef.destroy();\n }\n this._contentRef = null;\n this._componentRef = null;\n this._removeGlobalListener();\n this.onHidden.emit();\n return this;\n }\n toggle() {\n if (this.isShown) {\n this.hide();\n return;\n }\n this.show();\n }\n dispose() {\n if (this.isShown) {\n this.hide();\n }\n this._unsubscribePositioning();\n if (this._unregisterListenersFn) {\n this._unregisterListenersFn();\n }\n }\n listen(listenOpts) {\n this.triggers = listenOpts.triggers || this.triggers;\n this._listenOpts.outsideClick = listenOpts.outsideClick;\n this._listenOpts.outsideEsc = listenOpts.outsideEsc;\n listenOpts.target = listenOpts.target || this._elementRef.nativeElement;\n const hide = (this._listenOpts.hide = () => listenOpts.hide ? listenOpts.hide() : void this.hide());\n const show = (this._listenOpts.show = (registerHide) => {\n listenOpts.show ? listenOpts.show(registerHide) : this.show(registerHide);\n registerHide();\n });\n const toggle = (registerHide) => {\n this.isShown ? hide() : show(registerHide);\n };\n this._unregisterListenersFn = listenToTriggersV2(this._renderer, {\n target: listenOpts.target,\n triggers: listenOpts.triggers,\n show,\n hide,\n toggle\n });\n return this;\n }\n _removeGlobalListener() {\n if (this._globalListener) {\n this._globalListener();\n this._globalListener = null;\n }\n }\n attachInline(vRef, \n /* tslint:disable-next-line: no-any*/\n template) {\n this._inlineViewRef = vRef.createEmbeddedView(template);\n return this;\n }\n _registerOutsideClick() {\n if (!this._componentRef || !this._componentRef.location) {\n return;\n }\n // why: should run after first event bubble\n if (this._listenOpts && this._listenOpts.outsideClick) {\n const target = this._componentRef.location.nativeElement;\n setTimeout(() => {\n this._globalListener = registerOutsideClick(this._renderer, {\n targets: [target, this._elementRef.nativeElement],\n outsideClick: this._listenOpts.outsideClick,\n hide: () => this._listenOpts.hide()\n });\n });\n }\n if (this._listenOpts.outsideEsc) {\n const target = this._componentRef.location.nativeElement;\n this._globalListener = registerEscClick(this._renderer, {\n targets: [target, this._elementRef.nativeElement],\n outsideEsc: this._listenOpts.outsideEsc,\n hide: () => this._listenOpts.hide()\n });\n }\n }\n getInnerComponent() {\n return this._innerComponent;\n }\n _subscribePositioning() {\n if (this._zoneSubscription || !this.attachment) {\n return;\n }\n this.onShown.subscribe(() => {\n this._posService.position({\n element: this._componentRef.location,\n target: this._elementRef,\n attachment: this.attachment,\n appendToBody: this.container === 'body'\n });\n });\n this._zoneSubscription = this._ngZone.onStable.subscribe(() => {\n if (!this._componentRef) {\n return;\n }\n this._posService.calcPosition();\n });\n }\n _unsubscribePositioning() {\n if (!this._zoneSubscription) {\n return;\n }\n this._zoneSubscription.unsubscribe();\n this._zoneSubscription = null;\n }\n _getContentRef(\n /* tslint:disable-next-line: no-any*/\n content, \n /* tslint:disable-next-line: no-any*/\n data) {\n if (!content) {\n return new ContentRef([]);\n }\n if (content instanceof TemplateRef) {\n if (this._viewContainerRef) {\n const _viewRef = this._viewContainerRef\n .createEmbeddedView(content);\n _viewRef.markForCheck();\n return new ContentRef([_viewRef.rootNodes], _viewRef);\n }\n const viewRef = content.createEmbeddedView({});\n this._applicationRef.attachView(viewRef);\n return new ContentRef([viewRef.rootNodes], viewRef);\n }\n if (typeof content === 'function') {\n const contentCmptFactory = this._componentFactoryResolver.resolveComponentFactory(content);\n const modalContentInjector = Injector.create({\n providers: this._providers,\n parent: this._injector\n });\n const componentRef = contentCmptFactory.create(modalContentInjector);\n Object.assign(componentRef.instance, data);\n this._applicationRef.attachView(componentRef.hostView);\n return new ContentRef([[componentRef.location.nativeElement]], componentRef.hostView, componentRef);\n }\n return new ContentRef([[this._renderer.createText(`${content}`)]]);\n }\n}\n\n/**\n * Get CSS computed property of the given element\n */\nfunction getStyleComputedProperty(element, property) {\n if (element.nodeType !== 1) {\n return [];\n }\n // NOTE: 1 DOM access here\n const window = element.ownerDocument.defaultView;\n const css = window.getComputedStyle(element, null);\n return property ? css[property] : css;\n}\n\n/**\n * Returns the parentNode or the host of the element\n */\nfunction getParentNode(element) {\n if (element.nodeName === 'HTML') {\n return element;\n }\n return element.parentNode || element.host;\n}\n\n/**\n * Returns the scrolling parent of the given element\n */\nfunction getScrollParent(element) {\n // Return body, `getScroll` will take care to get the correct `scrollTop` from it\n if (!element) {\n return document.body;\n }\n switch (element.nodeName) {\n case 'HTML':\n case 'BODY':\n return element.ownerDocument.body;\n case '#document':\n return element.body;\n default:\n }\n // Firefox want us to check `-x` and `-y` variations as well\n const { overflow, overflowX, overflowY } = getStyleComputedProperty(element);\n if (/(auto|scroll|overlay)/.test(String(overflow) + String(overflowY) + String(overflowX))) {\n return element;\n }\n return getScrollParent(getParentNode(element));\n}\n\nconst isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined';\n\n/**\n * Determines if the browser is Internet Explorer\n */\nconst isIE11 = isBrowser && !!(window.MSInputMethodContext && document.documentMode);\nconst isIE10 = isBrowser && !!(window.MSInputMethodContext && /MSIE 10/.test(navigator.userAgent));\nfunction isIE(version) {\n if (version === 11) {\n return isIE11;\n }\n if (version === 10) {\n return isIE10;\n }\n return isIE11 || isIE10;\n}\n\n/**\n * Returns the offset parent of the given element\n */\nfunction getOffsetParent(element) {\n if (!element) {\n return document.documentElement;\n }\n const noOffsetParent = isIE(10) ? document.body : null;\n // NOTE: 1 DOM access here\n let offsetParent = element.offsetParent || null;\n // Skip hidden elements which don't have an offsetParent\n let sibling;\n while (offsetParent === noOffsetParent && element.nextElementSibling && element.nodeName !== 'BODY') {\n sibling = element.nextElementSibling;\n offsetParent = sibling.offsetParent;\n }\n const nodeName = offsetParent && offsetParent.nodeName;\n if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') {\n return sibling ? sibling.ownerDocument.documentElement : document.documentElement;\n }\n // .offsetParent will return the closest TH, TD or TABLE in case\n // no offsetParent is present, I hate this job...\n if (['TH', 'TD', 'TABLE'].indexOf(offsetParent.nodeName) !== -1 &&\n getStyleComputedProperty(offsetParent, 'position') === 'static') {\n return getOffsetParent(offsetParent);\n }\n return offsetParent;\n}\n\nfunction isOffsetContainer(element) {\n const { nodeName } = element;\n if (nodeName === 'BODY') {\n return false;\n }\n return (nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element);\n}\n\n/**\n * Finds the root node (document, shadowDOM root) of the given element\n */\nfunction getRoot(node) {\n if (node.parentNode !== null) {\n return getRoot(node.parentNode);\n }\n return node;\n}\n\n/**\n * Finds the offset parent common to the two provided nodes\n */\nfunction findCommonOffsetParent(element1, element2) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) {\n return document.documentElement;\n }\n // Here we make sure to give as \"start\" the element that comes first in the DOM\n /* tslint:disable-next-line: no-bitwise */\n const order = element1.compareDocumentPosition(element2) & Node.DOCUMENT_POSITION_FOLLOWING;\n const start = order ? element1 : element2;\n const end = order ? element2 : element1;\n // Get common ancestor container\n const range = document.createRange();\n range.setStart(start, 0);\n range.setEnd(end, 0);\n const { commonAncestorContainer } = range;\n // Both nodes are inside #document\n if ((element1 !== commonAncestorContainer &&\n element2 !== commonAncestorContainer) ||\n start.contains(end)) {\n if (isOffsetContainer(commonAncestorContainer)) {\n return commonAncestorContainer;\n }\n return getOffsetParent(commonAncestorContainer);\n }\n // one of the nodes is inside shadowDOM, find which one\n const element1root = getRoot(element1);\n if (element1root.host) {\n return findCommonOffsetParent(element1root.host, element2);\n }\n else {\n return findCommonOffsetParent(element1, getRoot(element2).host);\n }\n}\n\n/**\n * Helper to detect borders of a given element\n */\nfunction getBordersSize(styles, axis) {\n const sideA = axis === 'x' ? 'Left' : 'Top';\n const sideB = sideA === 'Left' ? 'Right' : 'Bottom';\n return (parseFloat(styles[`border${sideA}Width`]) +\n parseFloat(styles[`border${sideB}Width`]));\n}\n\nfunction getSize(axis, body, html, computedStyle) {\n return Math.max(body[`offset${axis}`], body[`scroll${axis}`], html[`client${axis}`], html[`offset${axis}`], html[`scroll${axis}`], isIE(10)\n ? (parseInt(html[`offset${axis}`], 10) +\n parseInt(computedStyle[`margin${axis === 'Height' ? 'Top' : 'Left'}`], 10) +\n parseInt(computedStyle[`margin${axis === 'Height' ? 'Bottom' : 'Right'}`], 10))\n : 0);\n}\nfunction getWindowSizes(document) {\n const body = document.body;\n const html = document.documentElement;\n const computedStyle = isIE(10) && getComputedStyle(html);\n return {\n height: getSize('Height', body, html, computedStyle),\n width: getSize('Width', body, html, computedStyle)\n };\n}\n\n/**\n * Gets the scroll value of the given element in the given side (top and left)\n */\nfunction getScroll(element, side = 'top') {\n const upperSide = side === 'top' ? 'scrollTop' : 'scrollLeft';\n const nodeName = element.nodeName;\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n const html = element.ownerDocument.documentElement;\n const scrollingElement = element.ownerDocument.scrollingElement || html;\n return scrollingElement[upperSide];\n }\n return element[upperSide];\n}\n\nfunction getClientRect(offsets) {\n return Object.assign(Object.assign({}, offsets), { right: offsets.left + offsets.width, bottom: offsets.top + offsets.height });\n}\n\n/**\n * Get bounding client rect of given element\n */\nfunction getBoundingClientRect(element) {\n let rect = {};\n // IE10 10 FIX: Please, don't ask, the element isn't\n // considered in DOM in some circumstances...\n // This isn't reproducible in IE10 compatibility mode of IE11\n try {\n if (isIE(10)) {\n rect = element.getBoundingClientRect();\n const scrollTop = getScroll(element, 'top');\n const scrollLeft = getScroll(element, 'left');\n rect.top += scrollTop;\n rect.left += scrollLeft;\n rect.bottom += scrollTop;\n rect.right += scrollLeft;\n }\n else {\n rect = element.getBoundingClientRect();\n }\n }\n catch (e) {\n return undefined;\n }\n const result = {\n left: rect.left,\n top: rect.top,\n width: rect.right - rect.left,\n height: rect.bottom - rect.top\n };\n // subtract scrollbar size from sizes\n const sizes = element.nodeName === 'HTML' ? getWindowSizes(element.ownerDocument) : {};\n const width = sizes.width || element.clientWidth || result.right - result.left;\n const height = sizes.height || element.clientHeight || result.bottom - result.top;\n let horizScrollbar = element.offsetWidth - width;\n let vertScrollbar = element.offsetHeight - height;\n // if an hypothetical scrollbar is detected, we must be sure it's not a `border`\n // we make this check conditional for performance reasons\n if (horizScrollbar || vertScrollbar) {\n const styles = getStyleComputedProperty(element);\n horizScrollbar -= getBordersSize(styles, 'x');\n vertScrollbar -= getBordersSize(styles, 'y');\n result.width -= horizScrollbar;\n result.height -= vertScrollbar;\n }\n return getClientRect(result);\n}\n\n/**\n * Sum or subtract the element scroll values (left and top) from a given rect object\n */\nfunction includeScroll(rect, element, subtract = false) {\n const scrollTop = getScroll(element, 'top');\n const scrollLeft = getScroll(element, 'left');\n const modifier = subtract ? -1 : 1;\n rect.top += scrollTop * modifier;\n rect.bottom += scrollTop * modifier;\n rect.left += scrollLeft * modifier;\n rect.right += scrollLeft * modifier;\n return rect;\n}\n\nfunction getOffsetRectRelativeToArbitraryNode(children, parent, fixedPosition = false) {\n const isIE10 = isIE(10);\n const isHTML = parent.nodeName === 'HTML';\n const childrenRect = getBoundingClientRect(children);\n const parentRect = getBoundingClientRect(parent);\n const scrollParent = getScrollParent(children);\n const styles = getStyleComputedProperty(parent);\n const borderTopWidth = parseFloat(styles.borderTopWidth);\n const borderLeftWidth = parseFloat(styles.borderLeftWidth);\n // In cases where the parent is fixed, we must ignore negative scroll in offset calc\n if (fixedPosition && isHTML) {\n parentRect.top = Math.max(parentRect.top, 0);\n parentRect.left = Math.max(parentRect.left, 0);\n }\n let offsets = getClientRect({\n top: childrenRect.top - parentRect.top - borderTopWidth,\n left: childrenRect.left - parentRect.left - borderLeftWidth,\n width: childrenRect.width,\n height: childrenRect.height\n });\n offsets.marginTop = 0;\n offsets.marginLeft = 0;\n // Subtract margins of documentElement in case it's being used as parent\n // we do this only on HTML because it's the only element that behaves\n // differently when margins are applied to it. The margins are included in\n // the box of the documentElement, in the other cases not.\n if (!isIE10 && isHTML) {\n const marginTop = parseFloat(styles.marginTop);\n const marginLeft = parseFloat(styles.marginLeft);\n offsets.top -= borderTopWidth - marginTop;\n offsets.bottom -= borderTopWidth - marginTop;\n offsets.left -= borderLeftWidth - marginLeft;\n offsets.right -= borderLeftWidth - marginLeft;\n // Attach marginTop and marginLeft because in some circumstances we may need them\n offsets.marginTop = marginTop;\n offsets.marginLeft = marginLeft;\n }\n if (isIE10 && !fixedPosition\n ? parent.contains(scrollParent)\n : parent === scrollParent && scrollParent.nodeName !== 'BODY') {\n offsets = includeScroll(offsets, parent);\n }\n return offsets;\n}\n\nfunction getViewportOffsetRectRelativeToArtbitraryNode(element, excludeScroll = false) {\n const html = element.ownerDocument.documentElement;\n const relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html);\n const width = Math.max(html.clientWidth, window.innerWidth || 0);\n const height = Math.max(html.clientHeight, window.innerHeight || 0);\n const scrollTop = !excludeScroll ? getScroll(html) : 0;\n const scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0;\n const offset = {\n top: scrollTop - Number(relativeOffset.top) + Number(relativeOffset.marginTop),\n left: scrollLeft - Number(relativeOffset.left) + Number(relativeOffset.marginLeft),\n width,\n height\n };\n return getClientRect(offset);\n}\n\n/**\n * Check if the given element is fixed or is inside a fixed parent\n */\nfunction isFixed(element) {\n const nodeName = element.nodeName;\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n return false;\n }\n if (getStyleComputedProperty(element, 'position') === 'fixed') {\n return true;\n }\n return isFixed(getParentNode(element));\n}\n\n/**\n * Finds the first parent of an element that has a transformed property defined\n */\nfunction getFixedPositionOffsetParent(element) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element || !element.parentElement || isIE()) {\n return document.documentElement;\n }\n let el = element.parentElement;\n while (el && getStyleComputedProperty(el, 'transform') === 'none') {\n el = el.parentElement;\n }\n return el || document.documentElement;\n}\n\n/**\n * Computed the boundaries limits and return them\n */\nfunction getBoundaries(target, host, padding = 0, boundariesElement, fixedPosition = false) {\n // NOTE: 1 DOM access here\n let boundaries = { top: 0, left: 0 };\n const offsetParent = fixedPosition ? getFixedPositionOffsetParent(target) : findCommonOffsetParent(target, host);\n // Handle viewport case\n if (boundariesElement === 'viewport') {\n boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition);\n }\n else {\n // Handle other cases based on DOM element used as boundaries\n let boundariesNode;\n if (boundariesElement === 'scrollParent') {\n boundariesNode = getScrollParent(getParentNode(host));\n if (boundariesNode.nodeName === 'BODY') {\n boundariesNode = target.ownerDocument.documentElement;\n }\n }\n else if (boundariesElement === 'window') {\n boundariesNode = target.ownerDocument.documentElement;\n }\n else {\n boundariesNode = boundariesElement;\n }\n const offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition);\n // In case of HTML, we need a different computation\n if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) {\n const { height, width } = getWindowSizes(target.ownerDocument);\n boundaries.top += offsets.top - offsets.marginTop;\n boundaries.bottom = Number(height) + Number(offsets.top);\n boundaries.left += offsets.left - offsets.marginLeft;\n boundaries.right = Number(width) + Number(offsets.left);\n }\n else {\n // for all the other DOM elements, this one is good\n boundaries = offsets;\n }\n }\n // Add paddings\n boundaries.left += padding;\n boundaries.top += padding;\n boundaries.right -= padding;\n boundaries.bottom -= padding;\n return boundaries;\n}\n\n/**\n * Utility used to transform the `auto` placement to the placement with more\n * available space.\n */\nfunction getArea({ width, height }) {\n return width * height;\n}\nfunction computeAutoPlacement(placement, refRect, target, host, allowedPositions = ['top', 'left', 'bottom', 'right'], boundariesElement = 'viewport', padding = 0) {\n if (placement.indexOf('auto') === -1) {\n return placement;\n }\n const boundaries = getBoundaries(target, host, padding, boundariesElement);\n const rects = {\n top: {\n width: boundaries.width,\n height: refRect.top - boundaries.top\n },\n right: {\n width: boundaries.right - refRect.right,\n height: boundaries.height\n },\n bottom: {\n width: boundaries.width,\n height: boundaries.bottom - refRect.bottom\n },\n left: {\n width: refRect.left - boundaries.left,\n height: boundaries.height\n }\n };\n const sortedAreas = Object.keys(rects)\n .map(key => (Object.assign(Object.assign({ key }, rects[key]), { area: getArea(rects[key]) })))\n .sort((a, b) => b.area - a.area);\n let filteredAreas = sortedAreas.filter(({ width, height }) => width >= target.clientWidth && height >= target.clientHeight);\n filteredAreas = allowedPositions\n .reduce((obj, key) => {\n return Object.assign(Object.assign({}, obj), { [key]: filteredAreas[key] });\n }, {});\n const computedPlacement = filteredAreas.length > 0\n ? filteredAreas[0].key\n : sortedAreas[0].key;\n const variation = placement.split(' ')[1];\n target.className = target.className.replace(/auto/g, computedPlacement);\n return computedPlacement + (variation ? `-${variation}` : '');\n}\n\nfunction getOffsets(data) {\n return {\n width: data.offsets.target.width,\n height: data.offsets.target.height,\n left: Math.floor(data.offsets.target.left),\n top: Math.round(data.offsets.target.top),\n bottom: Math.round(data.offsets.target.bottom),\n right: Math.floor(data.offsets.target.right)\n };\n}\n\n/**\n * Get the opposite placement of the given one\n */\nfunction getOppositePlacement(placement) {\n const hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' };\n return placement.replace(/left|right|bottom|top/g, matched => hash[matched]);\n}\n\n/**\n * Get the opposite placement variation of the given one\n */\nfunction getOppositeVariation(variation) {\n if (variation === 'right') {\n return 'left';\n }\n else if (variation === 'left') {\n return 'right';\n }\n return variation;\n}\n\n/**\n * Get the outer sizes of the given element (offset size + margins)\n */\nfunction getOuterSizes(element) {\n const window = element.ownerDocument.defaultView;\n const styles = window.getComputedStyle(element);\n const x = parseFloat(styles.marginTop || 0) + parseFloat(styles.marginBottom || 0);\n const y = parseFloat(styles.marginLeft || 0) + parseFloat(styles.marginRight || 0);\n return {\n width: Number(element.offsetWidth) + y,\n height: Number(element.offsetHeight) + x\n };\n}\n\n/**\n * Get offsets to the reference element\n */\nfunction getReferenceOffsets(target, host, fixedPosition = null) {\n const commonOffsetParent = fixedPosition\n ? getFixedPositionOffsetParent(target)\n : findCommonOffsetParent(target, host);\n return getOffsetRectRelativeToArbitraryNode(host, commonOffsetParent, fixedPosition);\n}\n\n/**\n * Get offsets to the target\n */\nfunction getTargetOffsets(target, hostOffsets, position) {\n const placement = position.split(' ')[0];\n // Get target node sizes\n const targetRect = getOuterSizes(target);\n // Add position, width and height to our offsets object\n const targetOffsets = {\n width: targetRect.width,\n height: targetRect.height\n };\n // depending by the target placement we have to compute its offsets slightly differently\n const isHoriz = ['right', 'left'].indexOf(placement) !== -1;\n const mainSide = isHoriz ? 'top' : 'left';\n const secondarySide = isHoriz ? 'left' : 'top';\n const measurement = isHoriz ? 'height' : 'width';\n const secondaryMeasurement = !isHoriz ? 'height' : 'width';\n targetOffsets[mainSide] =\n hostOffsets[mainSide] +\n hostOffsets[measurement] / 2 -\n targetRect[measurement] / 2;\n targetOffsets[secondarySide] = placement === secondarySide\n ? hostOffsets[secondarySide] - targetRect[secondaryMeasurement]\n : hostOffsets[getOppositePlacement(secondarySide)];\n return targetOffsets;\n}\n\n/**\n * Helper used to know if the given modifier is enabled.\n */\nfunction isModifierEnabled(options, modifierName) {\n return options\n && options.modifiers\n && options.modifiers[modifierName]\n && options.modifiers[modifierName].enabled;\n}\n\n/**\n * Tells if a given input is a number\n */\nfunction isNumeric(n) {\n return n !== '' && !isNaN(parseFloat(n)) && isFinite(n);\n}\n\nfunction setStyles(element, styles, renderer) {\n Object.keys(styles).forEach((prop) => {\n let unit = '';\n // add unit if the value is numeric and is one of the following\n if (['width', 'height', 'top', 'right', 'bottom', 'left'].indexOf(prop) !== -1 &&\n isNumeric(styles[prop])) {\n unit = 'px';\n }\n if (renderer) {\n renderer.setStyle(element, prop, `${String(styles[prop])}${unit}`);\n return;\n }\n element.style[prop] = String(styles[prop]) + unit;\n });\n}\n\nfunction setAllStyles(data, renderer) {\n const target = data.instance.target;\n const offsets = getOffsets(data);\n setStyles(target, {\n 'will-change': 'transform',\n top: '0px',\n left: '0px',\n transform: `translate3d(${offsets.left}px, ${offsets.top}px, 0px)`\n }, renderer);\n if (data.instance.arrow) {\n setStyles(data.instance.arrow, data.offsets.arrow, renderer);\n }\n if (data.placementAuto) {\n if (renderer) {\n renderer.setAttribute(target, 'class', target.className.replace(/bs-popover-auto/g, `bs-popover-${data.placement}`));\n renderer.setAttribute(target, 'class', target.className.replace(/bs-tooltip-auto/g, `bs-tooltip-${data.placement}`));\n renderer.setAttribute(target, 'class', target.className.replace(/\\sauto/g, `\\s${data.placement}`));\n if (target.className.match(/popover/g)) {\n renderer.addClass(target, 'popover-auto');\n }\n if (target.className.match(/tooltip/g)) {\n renderer.addClass(target, 'tooltip-auto');\n }\n }\n else {\n target.className = target.className.replace(/bs-popover-auto/g, `bs-popover-${data.placement}`);\n target.className = target.className.replace(/bs-tooltip-auto/g, `bs-tooltip-${data.placement}`);\n target.className = target.className.replace(/\\sauto/g, `\\s${data.placement}`);\n if (target.className.match(/popover/g)) {\n target.classList.add('popover-auto');\n }\n if (target.className.match(/tooltip/g)) {\n target.classList.add('tooltip-auto');\n }\n }\n }\n if (renderer) {\n renderer.setAttribute(target, 'class', target.className.replace(/left|right|top|bottom/g, `${data.placement.split(' ')[0]}`));\n }\n else {\n target.className = target.className.replace(/left|right|top|bottom/g, `${data.placement.split(' ')[0]}`);\n }\n}\n\nfunction arrow(data) {\n let targetOffsets = data.offsets.target;\n // if arrowElement is a string, suppose it's a CSS selector\n const arrowElement = data.instance.target.querySelector('.arrow');\n // if arrowElement is not found, don't run the modifier\n if (!arrowElement) {\n return data;\n }\n const isVertical = ['left', 'right'].indexOf(data.placement) !== -1;\n const len = isVertical ? 'height' : 'width';\n const sideCapitalized = isVertical ? 'Top' : 'Left';\n const side = sideCapitalized.toLowerCase();\n const altSide = isVertical ? 'left' : 'top';\n const opSide = isVertical ? 'bottom' : 'right';\n const arrowElementSize = getOuterSizes(arrowElement)[len];\n // top/left side\n if (data.offsets.host[opSide] - arrowElementSize < targetOffsets[side]) {\n targetOffsets[side] -=\n targetOffsets[side] - (data.offsets.host[opSide] - arrowElementSize);\n }\n // bottom/right side\n if (Number(data.offsets.host[side]) + Number(arrowElementSize) > targetOffsets[opSide]) {\n targetOffsets[side] +=\n Number(data.offsets.host[side]) + Number(arrowElementSize) - Number(targetOffsets[opSide]);\n }\n targetOffsets = getClientRect(targetOffsets);\n // compute center of the target\n const center = Number(data.offsets.host[side]) + Number(data.offsets.host[len] / 2 - arrowElementSize / 2);\n // Compute the sideValue using the updated target offsets\n // take target margin in account because we don't have this info available\n const css = getStyleComputedProperty(data.instance.target);\n const targetMarginSide = parseFloat(css[`margin${sideCapitalized}`]);\n const targetBorderSide = parseFloat(css[`border${sideCapitalized}Width`]);\n let sideValue = center - targetOffsets[side] - targetMarginSide - targetBorderSide;\n // prevent arrowElement from being placed not contiguously to its target\n sideValue = Math.max(Math.min(targetOffsets[len] - arrowElementSize, sideValue), 0);\n data.offsets.arrow = {\n [side]: Math.round(sideValue),\n [altSide]: '' // make sure to unset any eventual altSide value from the DOM node\n };\n data.instance.arrow = arrowElement;\n return data;\n}\n\nfunction flip(data) {\n data.offsets.target = getClientRect(data.offsets.target);\n if (!isModifierEnabled(data.options, 'flip')) {\n data.offsets.target = Object.assign(Object.assign({}, data.offsets.target), getTargetOffsets(data.instance.target, data.offsets.host, data.placement));\n return data;\n }\n const boundaries = getBoundaries(data.instance.target, data.instance.host, 0, // padding\n 'viewport', false // positionFixed\n );\n let placement = data.placement.split(' ')[0];\n let variation = data.placement.split(' ')[1] || '';\n const offsetsHost = data.offsets.host;\n const target = data.instance.target;\n const host = data.instance.host;\n const adaptivePosition = variation\n ? computeAutoPlacement('auto', offsetsHost, target, host, ['top', 'bottom'])\n : computeAutoPlacement('auto', offsetsHost, target, host);\n const flipOrder = [placement, adaptivePosition];\n /* tslint:disable-next-line: cyclomatic-complexity */\n flipOrder.forEach((step, index) => {\n if (placement !== step || flipOrder.length === index + 1) {\n return data;\n }\n placement = data.placement.split(' ')[0];\n // using floor because the host offsets may contain decimals we are not going to consider here\n const overlapsRef = (placement === 'left' &&\n Math.floor(data.offsets.target.right) > Math.floor(data.offsets.host.left)) ||\n (placement === 'right' &&\n Math.floor(data.offsets.target.left) < Math.floor(data.offsets.host.right)) ||\n (placement === 'top' &&\n Math.floor(data.offsets.target.bottom) > Math.floor(data.offsets.host.top)) ||\n (placement === 'bottom' &&\n Math.floor(data.offsets.target.top) < Math.floor(data.offsets.host.bottom));\n const overflowsLeft = Math.floor(data.offsets.target.left) < Math.floor(boundaries.left);\n const overflowsRight = Math.floor(data.offsets.target.right) > Math.floor(boundaries.right);\n const overflowsTop = Math.floor(data.offsets.target.top) < Math.floor(boundaries.top);\n const overflowsBottom = Math.floor(data.offsets.target.bottom) > Math.floor(boundaries.bottom);\n const overflowsBoundaries = (placement === 'left' && overflowsLeft) ||\n (placement === 'right' && overflowsRight) ||\n (placement === 'top' && overflowsTop) ||\n (placement === 'bottom' && overflowsBottom);\n // flip the variation if required\n const isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n const flippedVariation = ((isVertical && variation === 'left' && overflowsLeft) ||\n (isVertical && variation === 'right' && overflowsRight) ||\n (!isVertical && variation === 'left' && overflowsTop) ||\n (!isVertical && variation === 'right' && overflowsBottom));\n if (overlapsRef || overflowsBoundaries || flippedVariation) {\n if (overlapsRef || overflowsBoundaries) {\n placement = flipOrder[index + 1];\n }\n if (flippedVariation) {\n variation = getOppositeVariation(variation);\n }\n data.placement = placement + (variation ? ` ${variation}` : '');\n data.offsets.target = Object.assign(Object.assign({}, data.offsets.target), getTargetOffsets(data.instance.target, data.offsets.host, data.placement));\n }\n });\n return data;\n}\n\nfunction initData(targetElement, hostElement, position, options) {\n const hostElPosition = getReferenceOffsets(targetElement, hostElement);\n const placementAuto = !!position.match(/auto/g);\n // support old placements 'auto left|right|top|bottom'\n let placement = !!position.match(/auto\\s(left|right|top|bottom)/g)\n ? position.split(' ')[1] || ''\n : position;\n const targetOffset = getTargetOffsets(targetElement, hostElPosition, placement);\n placement = computeAutoPlacement(placement, hostElPosition, targetElement, hostElement);\n return {\n options,\n instance: {\n target: targetElement,\n host: hostElement,\n arrow: null\n },\n offsets: {\n target: targetOffset,\n host: hostElPosition,\n arrow: null\n },\n positionFixed: false,\n placement,\n placementAuto\n };\n}\n\nfunction preventOverflow(data) {\n if (!isModifierEnabled(data.options, 'preventOverflow')) {\n return data;\n }\n // NOTE: DOM access here\n // resets the targetOffsets's position so that the document size can be calculated excluding\n // the size of the targetOffsets element itself\n const transformProp = 'transform';\n const targetStyles = data.instance.target.style; // assignment to help minification\n const { top, left, [transformProp]: transform } = targetStyles;\n targetStyles.top = '';\n targetStyles.left = '';\n targetStyles[transformProp] = '';\n const boundaries = getBoundaries(data.instance.target, data.instance.host, 0, // padding\n 'scrollParent', false // positionFixed\n );\n // NOTE: DOM access here\n // restores the original style properties after the offsets have been computed\n targetStyles.top = top;\n targetStyles.left = left;\n targetStyles[transformProp] = transform;\n const order = ['left', 'right', 'top', 'bottom'];\n const check = {\n primary(placement) {\n let value = data.offsets.target[placement];\n if (data.offsets.target[placement] < boundaries[placement] &&\n !false // options.escapeWithReference\n ) {\n value = Math.max(data.offsets.target[placement], boundaries[placement]);\n }\n return { [placement]: value };\n },\n secondary(placement) {\n const mainSide = placement === 'right' ? 'left' : 'top';\n let value = data.offsets.target[mainSide];\n if (data.offsets.target[placement] > boundaries[placement] &&\n !false // escapeWithReference\n ) {\n value = Math.min(data.offsets.target[mainSide], boundaries[placement] -\n (placement === 'right' ? data.offsets.target.width : data.offsets.target.height));\n }\n return { [mainSide]: value };\n }\n };\n let side;\n order.forEach(placement => {\n side = ['left', 'top']\n .indexOf(placement) !== -1\n ? 'primary'\n : 'secondary';\n data.offsets.target = Object.assign(Object.assign({}, data.offsets.target), check[side](placement));\n });\n return data;\n}\n\nfunction shift(data) {\n const placement = data.placement;\n const basePlacement = placement.split(' ')[0];\n const shiftvariation = placement.split(' ')[1];\n if (shiftvariation) {\n const { host, target } = data.offsets;\n const isVertical = ['bottom', 'top'].indexOf(basePlacement) !== -1;\n const side = isVertical ? 'left' : 'top';\n const measurement = isVertical ? 'width' : 'height';\n const shiftOffsets = {\n left: { [side]: host[side] },\n right: {\n [side]: host[side] + host[measurement] - host[measurement]\n }\n };\n data.offsets.target = Object.assign(Object.assign({}, target), shiftOffsets[shiftvariation]);\n }\n return data;\n}\n\nclass Positioning {\n position(hostElement, targetElement) {\n return this.offset(hostElement, targetElement);\n }\n offset(hostElement, targetElement) {\n return getReferenceOffsets(targetElement, hostElement);\n }\n positionElements(hostElement, targetElement, position, _appendToBody, options) {\n const chainOfModifiers = [flip, shift, preventOverflow, arrow];\n return chainOfModifiers.reduce((modifiedData, modifier) => modifier(modifiedData), initData(targetElement, hostElement, position, options));\n }\n}\nconst positionService = new Positioning();\nfunction positionElements(hostElement, targetElement, placement, appendToBody, options, renderer) {\n const data = positionService.positionElements(hostElement, targetElement, placement, appendToBody, options);\n setAllStyles(data, renderer);\n}\n\nclass PositioningService {\n constructor(rendererFactory, platformId, _ngZone) {\n this._ngZone = _ngZone;\n this.update$$ = new Subject();\n this.positionElements = new Map();\n if (isPlatformBrowser(platformId)) {\n this._ngZone.runOutsideAngular(() => {\n merge(fromEvent(window, 'scroll'), fromEvent(window, 'resize'), \n // tslint:disable-next-line: deprecation\n of(0, animationFrameScheduler), this.update$$).subscribe(() => {\n this.positionElements.forEach((positionElement) => {\n positionElements(_getHtmlElement(positionElement.target), _getHtmlElement(positionElement.element), positionElement.attachment, positionElement.appendToBody, this.options, rendererFactory.createRenderer(null, null));\n });\n });\n });\n }\n }\n position(options) {\n this.addPositionElement(options);\n }\n addPositionElement(options) {\n this.positionElements.set(_getHtmlElement(options.element), options);\n }\n calcPosition() {\n this.update$$.next();\n }\n deletePositionElement(elRef) {\n this.positionElements.delete(_getHtmlElement(elRef));\n }\n setOptions(options) {\n this.options = options;\n }\n}\nPositioningService.ɵfac = function PositioningService_Factory(t) { return new (t || PositioningService)(ɵngcc0.ɵɵinject(ɵngcc0.RendererFactory2), ɵngcc0.ɵɵinject(PLATFORM_ID), ɵngcc0.ɵɵinject(ɵngcc0.NgZone)); };\nPositioningService.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: PositioningService, factory: PositioningService.ɵfac });\nPositioningService.ctorParameters = () => [\n { type: RendererFactory2 },\n { type: Number, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] },\n { type: NgZone }\n];\nfunction _getHtmlElement(element) {\n // it means that we got a selector\n if (element && typeof element === 'string') {\n return document.querySelector(element);\n }\n if (element instanceof ElementRef) {\n return element.nativeElement;\n }\n return element;\n}\n\nclass ComponentLoaderFactory {\n constructor(_componentFactoryResolver, _ngZone, _injector, _posService, _applicationRef) {\n this._componentFactoryResolver = _componentFactoryResolver;\n this._ngZone = _ngZone;\n this._injector = _injector;\n this._posService = _posService;\n this._applicationRef = _applicationRef;\n }\n createLoader(_elementRef, _viewContainerRef, _renderer) {\n return new ComponentLoader(_viewContainerRef, _renderer, _elementRef, this._injector, this._componentFactoryResolver, this._ngZone, this._applicationRef, this._posService);\n }\n}\nComponentLoaderFactory.ɵfac = function ComponentLoaderFactory_Factory(t) { return new (t || ComponentLoaderFactory)(ɵngcc0.ɵɵinject(ɵngcc0.ComponentFactoryResolver), ɵngcc0.ɵɵinject(ɵngcc0.NgZone), ɵngcc0.ɵɵinject(ɵngcc0.Injector), ɵngcc0.ɵɵinject(PositioningService), ɵngcc0.ɵɵinject(ɵngcc0.ApplicationRef)); };\nComponentLoaderFactory.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: ComponentLoaderFactory, factory: ComponentLoaderFactory.ɵfac });\nComponentLoaderFactory.ctorParameters = () => [\n { type: ComponentFactoryResolver },\n { type: NgZone },\n { type: Injector },\n { type: PositioningService },\n { type: ApplicationRef }\n];\n\n/** Default dropdown configuration */\nclass BsDropdownConfig {\n constructor() {\n /** default dropdown auto closing behavior */\n this.autoClose = true;\n }\n}\nBsDropdownConfig.ɵfac = function BsDropdownConfig_Factory(t) { return new (t || BsDropdownConfig)(); };\nBsDropdownConfig.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: BsDropdownConfig, factory: BsDropdownConfig.ɵfac });\n\nclass BsDropdownState {\n constructor() {\n this.direction = 'down';\n this.isOpenChange = new EventEmitter();\n this.isDisabledChange = new EventEmitter();\n this.toggleClick = new EventEmitter();\n this.dropdownMenu = new Promise((resolve) => {\n this.resolveDropdownMenu = resolve;\n });\n }\n}\nBsDropdownState.ɵfac = function BsDropdownState_Factory(t) { return new (t || BsDropdownState)(); };\nBsDropdownState.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: BsDropdownState, factory: BsDropdownState.ɵfac });\nBsDropdownState.ctorParameters = () => [];\n\nclass BsDropdownContainerComponent {\n constructor(_state) {\n this._state = _state;\n this.isOpen = false;\n this.display = 'block';\n this.position = 'absolute';\n this._subscription = _state.isOpenChange.subscribe((value) => {\n this.isOpen = value;\n });\n }\n get direction() {\n return this._state.direction;\n }\n ngOnDestroy() {\n this._subscription.unsubscribe();\n }\n}\nBsDropdownContainerComponent.ɵfac = function BsDropdownContainerComponent_Factory(t) { return new (t || BsDropdownContainerComponent)(ɵngcc0.ɵɵdirectiveInject(BsDropdownState)); };\nBsDropdownContainerComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: BsDropdownContainerComponent, selectors: [[\"mdb-dropdown-container\"]], hostVars: 4, hostBindings: function BsDropdownContainerComponent_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵstyleProp(\"display\", ctx.display)(\"position\", ctx.position);\n } }, ngContentSelectors: _c0, decls: 2, vars: 8, template: function BsDropdownContainerComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵelementStart(0, \"div\");\n ɵngcc0.ɵɵprojection(1);\n ɵngcc0.ɵɵelementEnd();\n } if (rf & 2) {\n ɵngcc0.ɵɵclassProp(\"dropup\", ctx.direction === \"up\")(\"dropdown\", ctx.direction === \"down\")(\"show\", ctx.isOpen)(\"open\", ctx.isOpen);\n } }, directives: function () { return [BsDropdownDirective]; }, encapsulation: 2, changeDetection: 0 });\nBsDropdownContainerComponent.ctorParameters = () => [\n { type: BsDropdownState }\n];\nBsDropdownContainerComponent.propDecorators = {\n display: [{ type: HostBinding, args: ['style.display',] }],\n position: [{ type: HostBinding, args: ['style.position',] }]\n};\n\n// tslint:disable-next-line:component-class-suffix\nclass BsDropdownDirective {\n constructor(_elementRef, _renderer, _viewContainerRef, _cis, _config, _state, cdRef) {\n this._elementRef = _elementRef;\n this._renderer = _renderer;\n this._viewContainerRef = _viewContainerRef;\n this._cis = _cis;\n this._config = _config;\n this._state = _state;\n this.cdRef = cdRef;\n this.dropupDefault = false;\n this.dynamicPosition = false;\n this._destroy$ = new Subject();\n this._isInlineOpen = false;\n this._subscriptions = [];\n this._isInited = false;\n // create dropdown component loader\n this._dropdown = this._cis\n .createLoader(this._elementRef, this._viewContainerRef, this._renderer)\n .provide({ provide: BsDropdownState, useValue: this._state });\n this.onShown = this._dropdown.onShown;\n this.shown = this._dropdown.shown;\n this.onHidden = this._dropdown.onHidden;\n this.hidden = this._dropdown.hidden;\n this.isOpenChange = this._state.isOpenChange;\n // set initial dropdown state from config\n this._state.autoClose = this._config.autoClose;\n }\n /**\n * This attribute indicates that the dropdown should be opened upwards\n */\n get isDropup() {\n if (this.dropup) {\n this._isDropupDefault = false;\n return this.dropup;\n }\n else if (this.dropupDefault) {\n this._isDropupDefault = true;\n return this.dropupDefault;\n }\n else if (this.dropupDefault && this.dropup) {\n this._isDropupDefault = false;\n return this.dropup;\n }\n }\n /**\n * Indicates that dropdown will be closed on item or document click,\n * and after pressing ESC\n */\n set autoClose(value) {\n if (typeof value === 'boolean') {\n this._state.autoClose = value;\n }\n }\n get autoClose() {\n return this._state.autoClose;\n }\n /**\n * Disables dropdown toggle and hides dropdown menu if opened\n */\n set isDisabled(value) {\n this._isDisabled = value;\n this._state.isDisabledChange.emit(value);\n if (value) {\n this.hide();\n }\n }\n get isDisabled() {\n return this._isDisabled;\n }\n /**\n * Returns whether or not the popover is currently being shown\n */\n get isOpen() {\n if (this._showInline) {\n return this._isInlineOpen;\n }\n return this._dropdown.isShown;\n }\n set isOpen(value) {\n if (value) {\n this.show();\n }\n else {\n this.hide();\n }\n }\n get isBs4() {\n return !isBs3();\n }\n ngOnInit() {\n // fix: seems there are an issue with `routerLinkActive`\n // which result in duplicated call ngOnInit without call to ngOnDestroy\n // read more: https://github.com/valor-software/ngx-bootstrap/issues/1885\n if (this._isInited) {\n return;\n }\n this._isInited = true;\n this._showInline = !this.container;\n this._dropup = this.dropup;\n // attach DOM listeners\n this._dropdown.listen({\n triggers: this.triggers,\n show: () => this.show(),\n });\n // toggle visibility on toggle element click\n this._state.toggleClick\n .pipe(takeUntil(this._destroy$))\n .subscribe((value) => this.toggle(value));\n // hide dropdown if set disabled while opened\n this._state.isDisabledChange.pipe(takeUntil(this._destroy$)).subscribe((element) => {\n if (element === true) {\n this.hide();\n }\n });\n // attach dropdown menu inside of dropdown\n if (this._showInline) {\n this._state.dropdownMenu.then((dropdownMenu) => {\n this._inlinedMenu = dropdownMenu.viewContainer.createEmbeddedView(dropdownMenu.templateRef);\n });\n }\n this._state.isOpenChange.pipe(takeUntil(this._destroy$)).subscribe(() => {\n setTimeout(() => {\n const dropdownContainer = this._elementRef.nativeElement.querySelector('.dropdown-menu');\n const left = dropdownContainer.getBoundingClientRect().left;\n if (dropdownContainer.classList.contains('dropdown-menu-right') &&\n left <= dropdownContainer.clientWidth) {\n if (left < 0) {\n this._renderer.setStyle(dropdownContainer, 'right', left + 'px');\n }\n else {\n this._renderer.setStyle(dropdownContainer, 'right', '0');\n }\n }\n }, 0);\n });\n }\n /**\n * Opens an element’s popover. This is considered a “manual” triggering of\n * the popover.\n */\n show() {\n if (this.isOpen || this.isDisabled) {\n return;\n }\n // material and dropup dropdown animation\n const button = this._elementRef.nativeElement.children[0];\n const container = this._elementRef.nativeElement.querySelector('.dropdown-menu');\n if (!container.parentNode.classList.contains('btn-group') &&\n !container.parentNode.classList.contains('dropdown') &&\n !this._isDropupDefault) {\n container.parentNode.classList.add('dropdown');\n }\n if (this.dropup && !this._isDropupDefault) {\n container.parentNode.classList.add('dropup-material');\n }\n if (button.tagName !== 'BUTTON') {\n if (button.tagName === 'A') {\n container.classList.add('a-various-dropdown');\n }\n else {\n container.classList.add('various-dropdown');\n }\n }\n else {\n if (button.classList.contains('btn-sm')) {\n container.classList.add('small-dropdown');\n }\n if (button.classList.contains('btn-md')) {\n container.classList.add('medium-dropdown');\n }\n if (button.classList.contains('btn-lg')) {\n container.classList.add('large-dropdown');\n }\n }\n setTimeout(() => {\n container.classList.add('fadeInDropdown');\n if (this.dynamicPosition) {\n const bounding = container.getBoundingClientRect();\n const out = {\n top: bounding.top < 0,\n bottom: bounding.bottom > (window.innerHeight || document.documentElement.clientHeight),\n };\n if (this.dropup && out.top) {\n this.dropup = false;\n }\n else if (!this.dropup && out.bottom) {\n this.dropup = true;\n }\n }\n }, 0);\n if (this._showInline) {\n this._isInlineOpen = true;\n if (container.parentNode.classList.contains('dropdown') ||\n container.parentNode.classList.contains('dropup-material')) {\n setTimeout(() => {\n this.onShown.emit(true);\n this.shown.emit(true);\n }, 560);\n }\n else {\n setTimeout(() => {\n this.onShown.emit(true);\n this.shown.emit(true);\n }, 0);\n }\n this._state.isOpenChange.emit(true);\n return;\n }\n this._state.dropdownMenu.then(dropdownMenu => {\n // check direction in which dropdown should be opened\n const _dropup = this.dropup === true || this.dropupDefault === true;\n this._state.direction = _dropup ? 'up' : 'down';\n const _placement = this.placement || (_dropup ? 'top left' : 'bottom left');\n // show dropdown\n this._dropdown\n .attach(BsDropdownContainerComponent)\n .to(this.container)\n .position({ attachment: _placement })\n .show({\n content: dropdownMenu.templateRef,\n placement: _placement,\n });\n this._state.isOpenChange.emit(true);\n });\n }\n /**\n * Closes an element’s popover. This is considered a “manual” triggering of\n * the popover.\n */\n hide() {\n if (!this.isOpen) {\n return;\n }\n if (this.dropup !== this._dropup) {\n this.dropup = this._dropup;\n }\n const container = this._elementRef.nativeElement.querySelector('.dropdown-menu');\n container.classList.remove('fadeInDropdown');\n if (container.parentNode.classList.contains('dropdown') ||\n container.parentNode.classList.contains('dropup-material')) {\n setTimeout(() => {\n if (this._showInline) {\n this._isInlineOpen = false;\n this.onHidden.emit(true);\n this.hidden.emit(true);\n this.cdRef.markForCheck();\n }\n else {\n this._dropdown.hide();\n }\n this._state.isOpenChange.emit(false);\n }, 560);\n }\n else {\n setTimeout(() => {\n if (this._showInline) {\n this._isInlineOpen = false;\n this.onHidden.emit(true);\n this.hidden.emit(true);\n this.cdRef.markForCheck();\n }\n else {\n this._dropdown.hide();\n }\n this._state.isOpenChange.emit(false);\n }, 0);\n }\n }\n /**\n * Toggles an element’s popover. This is considered a “manual” triggering of\n * the popover.\n */\n toggle(value) {\n if (this.isOpen || value === false) {\n return this.hide();\n }\n return this.show();\n }\n ngOnDestroy() {\n // clean up subscriptions and destroy dropdown\n this._destroy$.next();\n this._destroy$.complete();\n this._dropdown.dispose();\n }\n}\nBsDropdownDirective.ɵfac = function BsDropdownDirective_Factory(t) { return new (t || BsDropdownDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ViewContainerRef), ɵngcc0.ɵɵdirectiveInject(ComponentLoaderFactory), ɵngcc0.ɵɵdirectiveInject(BsDropdownConfig), ɵngcc0.ɵɵdirectiveInject(BsDropdownState), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef)); };\nBsDropdownDirective.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: BsDropdownDirective, selectors: [[\"\", \"mdbDropdown\", \"\"], [\"\", \"dropdown\", \"\"]], hostVars: 6, hostBindings: function BsDropdownDirective_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵclassProp(\"dropup\", ctx.isDropup)(\"open\", ctx.isOpen)(\"show\", ctx.isOpen);\n } }, inputs: { dropupDefault: \"dropupDefault\", dynamicPosition: \"dynamicPosition\", autoClose: \"autoClose\", isDisabled: \"isDisabled\", isOpen: \"isOpen\", dropup: \"dropup\", placement: \"placement\", triggers: \"triggers\", container: \"container\" }, outputs: { onShown: \"onShown\", shown: \"shown\", onHidden: \"onHidden\", hidden: \"hidden\", isOpenChange: \"isOpenChange\" }, exportAs: [\"bs-dropdown\"], features: [ɵngcc0.ɵɵProvidersFeature([BsDropdownState])], attrs: _c8, ngContentSelectors: _c0, decls: 1, vars: 0, template: function BsDropdownDirective_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵprojection(0);\n } }, styles: [\".dropdown-menu .dropdown-item:active{background-color:#757575}.show>.dropdown-menu{display:block}.show>a{outline:0}.dropdown-menu{margin-top:5px}.various-dropdown{transform:translate3d(0,21px,0)!important}.a-various-dropdown{transform:translate3d(0,29px,0)!important}.medium-dropdown{transform:translate3d(0,36px,0)!important}.small-dropdown{transform:translate3d(5px,34px,0)!important}.large-dropdown{transform:translate3d(5px,57px,0)!important}.btn-group>.dropdown-menu{transform:translate3d(0,43px,0)}.dropup>.dropdown-menu{display:none;transform:translate3d(117px,0,0)!important;will-change:transform}.dropup.show .dropdown-menu{display:block;opacity:0}.dropup.show .fadeInDropdown{opacity:1}.dropup-material.show .dropdown-menu{transition:.55s}.dropdown-menu{display:none;position:absolute;transform:translate3d(6px,49px,0);top:0;left:0;will-change:transform}.dropdown.show .dropdown-menu{display:block;opacity:0;transition:.55s}.dropdown.show .fadeInDropdown{opacity:1}\"], encapsulation: 2 });\nBsDropdownDirective.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 },\n { type: ViewContainerRef },\n { type: ComponentLoaderFactory },\n { type: BsDropdownConfig },\n { type: BsDropdownState },\n { type: ChangeDetectorRef }\n];\nBsDropdownDirective.propDecorators = {\n placement: [{ type: Input }],\n triggers: [{ type: Input }],\n container: [{ type: Input }],\n dropup: [{ type: Input }],\n dropupDefault: [{ type: Input }],\n dynamicPosition: [{ type: Input }],\n isDropup: [{ type: HostBinding, args: ['class.dropup',] }],\n autoClose: [{ type: Input }],\n isDisabled: [{ type: Input }],\n isOpen: [{ type: HostBinding, args: ['class.open',] }, { type: HostBinding, args: ['class.show',] }, { type: Input }],\n isOpenChange: [{ type: Output }],\n onShown: [{ type: Output }],\n shown: [{ type: Output }],\n onHidden: [{ type: Output }],\n hidden: [{ type: Output }]\n};\n\nclass BsDropdownMenuDirective {\n constructor(_state, _viewContainer, _templateRef) {\n _state.resolveDropdownMenu({\n templateRef: _templateRef,\n viewContainer: _viewContainer\n });\n }\n}\nBsDropdownMenuDirective.ɵfac = function BsDropdownMenuDirective_Factory(t) { return new (t || BsDropdownMenuDirective)(ɵngcc0.ɵɵdirectiveInject(BsDropdownState), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ViewContainerRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.TemplateRef)); };\nBsDropdownMenuDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: BsDropdownMenuDirective, selectors: [[\"\", \"mdbDropdownMenu\", \"\"], [\"\", \"dropdownMenu\", \"\"]], exportAs: [\"bs-dropdown-menu\"] });\nBsDropdownMenuDirective.ctorParameters = () => [\n { type: BsDropdownState },\n { type: ViewContainerRef },\n { type: TemplateRef }\n];\n\nclass BsDropdownToggleDirective {\n constructor(_state, _element, _renderer, _cdRef) {\n this._state = _state;\n this._element = _element;\n this._renderer = _renderer;\n this._cdRef = _cdRef;\n this._subscriptions = [];\n this.ariaHaspopup = true;\n this.isDisabled = null;\n // sync is open value with state\n this._state.isOpenChange.subscribe((value) => {\n this.isOpen = value;\n if (value) {\n this._documentClickListener = this._renderer.listen('document', 'click', (event) => {\n if (this._state.autoClose &&\n event.button !== 2 &&\n !this._element.nativeElement.contains(event.target)) {\n this._state.toggleClick.emit(false);\n this._cdRef.detectChanges();\n }\n });\n this._escKeyUpListener = this._renderer.listen(this._element.nativeElement, 'keyup.esc', () => {\n if (this._state.autoClose) {\n this._state.toggleClick.emit(false);\n this._cdRef.detectChanges();\n }\n });\n }\n else {\n this._documentClickListener();\n this._escKeyUpListener();\n }\n });\n // populate disabled state\n this._subscriptions.push(this._state.isDisabledChange.subscribe((value) => (this.isDisabled = value || null)));\n }\n onClick() {\n if (this.isDisabled) {\n return;\n }\n this._state.toggleClick.emit();\n }\n ngOnDestroy() {\n if (this._documentClickListener) {\n this._documentClickListener();\n }\n if (this._escKeyUpListener) {\n this._escKeyUpListener();\n }\n for (const sub of this._subscriptions) {\n sub.unsubscribe();\n }\n }\n}\nBsDropdownToggleDirective.ɵfac = function BsDropdownToggleDirective_Factory(t) { return new (t || BsDropdownToggleDirective)(ɵngcc0.ɵɵdirectiveInject(BsDropdownState), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef)); };\nBsDropdownToggleDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: BsDropdownToggleDirective, selectors: [[\"\", \"mdbDropdownToggle\", \"\"], [\"\", \"dropdownToggle\", \"\"]], hostVars: 3, hostBindings: function BsDropdownToggleDirective_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"click\", function BsDropdownToggleDirective_click_HostBindingHandler() { return ctx.onClick(); });\n } if (rf & 2) {\n ɵngcc0.ɵɵattribute(\"aria-haspopup\", ctx.ariaHaspopup)(\"disabled\", ctx.isDisabled)(\"aria-expanded\", ctx.isOpen);\n } }, exportAs: [\"bs-dropdown-toggle\"] });\nBsDropdownToggleDirective.ctorParameters = () => [\n { type: BsDropdownState },\n { type: ElementRef },\n { type: Renderer2 },\n { type: ChangeDetectorRef }\n];\nBsDropdownToggleDirective.propDecorators = {\n ariaHaspopup: [{ type: HostBinding, args: ['attr.aria-haspopup',] }],\n isDisabled: [{ type: HostBinding, args: ['attr.disabled',] }],\n isOpen: [{ type: HostBinding, args: ['attr.aria-expanded',] }],\n onClick: [{ type: HostListener, args: ['click',] }]\n};\n\nclass DropdownModule {\n static forRoot(config) {\n return {\n ngModule: DropdownModule,\n providers: [\n ComponentLoaderFactory,\n PositioningService,\n BsDropdownState,\n { provide: BsDropdownConfig, useValue: config ? config : { autoClose: true } },\n ],\n };\n }\n}\nDropdownModule.ɵfac = function DropdownModule_Factory(t) { return new (t || DropdownModule)(); };\nDropdownModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: DropdownModule });\nDropdownModule.ɵinj = ɵngcc0.ɵɵdefineInjector({});\n\n/*tslint:disable:no-invalid-this */\nfunction OnChange$1() {\n const sufix = 'Change';\n return function OnChangeHandler(target, propertyKey) {\n const _key = ` __${propertyKey}Value`;\n Object.defineProperty(target, propertyKey, {\n get() { return this[_key]; },\n set(value) {\n const prevValue = this[_key];\n this[_key] = value;\n if (prevValue !== value && this[propertyKey + sufix]) {\n this[propertyKey + sufix].emit(value);\n }\n }\n });\n };\n}\n/* tslint:enable */\n\nclass LinkedList$1 {\n constructor() {\n // public length: = 0;\n this.length = 0;\n this.asArray = [];\n // Array methods overriding END\n }\n getNode(position) {\n if (this.length === 0 || position < 0 || position >= this.length) {\n throw new Error('Position is out of the list');\n }\n let current = this.head;\n for (let index = 0; index < position; index++) {\n current = current.next;\n }\n return current;\n }\n createInternalArrayRepresentation() {\n const outArray = [];\n let current = this.head;\n while (current) {\n outArray.push(current.value);\n current = current.next;\n }\n this.asArray = outArray;\n }\n // public get(position: number): T {\n get(position) {\n if (this.length === 0 || position < 0 || position >= this.length) {\n return void 0;\n }\n let current = this.head;\n for (let index = 0; index < position; index++) {\n current = current.next;\n }\n return current.value;\n }\n add(value, position = this.length) {\n if (position < 0 || position > this.length) {\n throw new Error('Position is out of the list');\n }\n const node = {\n value: value,\n next: undefined,\n previous: undefined\n };\n if (this.length === 0) {\n this.head = node;\n this.tail = node;\n this.current = node;\n }\n else {\n if (position === 0) {\n // first node\n node.next = this.head;\n this.head.previous = node;\n this.head = node;\n }\n else if (position === this.length) {\n // last node\n this.tail.next = node;\n node.previous = this.tail;\n this.tail = node;\n }\n else {\n // node in middle\n const currentPreviousNode = this.getNode(position - 1);\n const currentNextNode = currentPreviousNode.next;\n currentPreviousNode.next = node;\n currentNextNode.previous = node;\n node.previous = currentPreviousNode;\n node.next = currentNextNode;\n }\n }\n this.length++;\n this.createInternalArrayRepresentation();\n }\n remove(position = 0) {\n if (this.length === 0 || position < 0 || position >= this.length) {\n throw new Error('Position is out of the list');\n }\n if (position === 0) {\n // first node\n this.head = this.head.next;\n if (this.head) {\n // there is no second node\n this.head.previous = undefined;\n }\n else {\n // there is no second node\n this.tail = undefined;\n }\n }\n else if (position === this.length - 1) {\n // last node\n this.tail = this.tail.previous;\n this.tail.next = undefined;\n }\n else {\n // middle node\n const removedNode = this.getNode(position);\n removedNode.next.previous = removedNode.previous;\n removedNode.previous.next = removedNode.next;\n }\n this.length--;\n this.createInternalArrayRepresentation();\n }\n set(position, value) {\n if (this.length === 0 || position < 0 || position >= this.length) {\n throw new Error('Position is out of the list');\n }\n const node = this.getNode(position);\n node.value = value;\n this.createInternalArrayRepresentation();\n }\n toArray() {\n return this.asArray;\n }\n findAll(fn) {\n let current = this.head;\n const result = [];\n for (let index = 0; index < this.length; index++) {\n if (fn(current.value, index)) {\n result.push({ index, value: current.value });\n }\n current = current.next;\n }\n return result;\n }\n // Array methods overriding start\n push(...args) {\n args.forEach((arg) => {\n this.add(arg);\n });\n return this.length;\n }\n // public pop(): T {\n pop() {\n if (this.length === 0) {\n return undefined;\n }\n const last = this.tail;\n this.remove(this.length - 1);\n return last.value;\n }\n unshift(...args) {\n args.reverse();\n args.forEach((arg) => {\n this.add(arg, 0);\n });\n return this.length;\n }\n // public shift(): T {\n shift() {\n if (this.length === 0) {\n return undefined;\n }\n const lastItem = this.head.value;\n this.remove();\n return lastItem;\n }\n forEach(fn) {\n let current = this.head;\n for (let index = 0; index < this.length; index++) {\n fn(current.value, index);\n current = current.next;\n }\n }\n indexOf(value) {\n let current = this.head;\n let position = 0;\n for (let index = 0; index < this.length; index++) {\n if (current.value === value) {\n position = index;\n break;\n }\n current = current.next;\n }\n return position;\n }\n some(fn) {\n let current = this.head;\n let result = false;\n while (current && !result) {\n if (fn(current.value)) {\n result = true;\n break;\n }\n current = current.next;\n }\n return result;\n }\n every(fn) {\n let current = this.head;\n let result = true;\n while (current && result) {\n if (!fn(current.value)) {\n result = false;\n }\n current = current.next;\n }\n return result;\n }\n toString() {\n return '[Linked List]';\n }\n // public find(fn: any): T {\n find(fn) {\n let current = this.head;\n // let result: T;\n let result;\n for (let index = 0; index < this.length; index++) {\n if (fn(current.value, index)) {\n result = current.value;\n break;\n }\n current = current.next;\n }\n return result;\n }\n findIndex(fn) {\n let current = this.head;\n // let result: number;\n let result;\n for (let index = 0; index < this.length; index++) {\n if (fn(current.value, index)) {\n result = index;\n break;\n }\n current = current.next;\n }\n return result;\n }\n}\n\n/**\n * @copyright Valor Software\n * @copyright Angular ng-bootstrap team\n */\nclass Trigger$1 {\n constructor(open, close) {\n this.open = open;\n this.close = close || open;\n }\n isManual() { return this.open === 'manual' || this.close === 'manual'; }\n}\n\nclass Utils$1 {\n constructor() {\n }\n static reflow(element) {\n ((bs) => bs)(element.offsetHeight);\n }\n // source: https://github.com/jquery/jquery/blob/master/src/css/var/getStyles.js\n static getStyles(elem) {\n // Support: IE <=11 only, Firefox <=30 (#15098, #14150)\n // IE throws on elements created in popups\n // FF meanwhile throws on frame elements through \"defaultView.getComputedStyle\"\n let view = elem.ownerDocument.defaultView;\n if (!view || !view.opener) {\n view = win;\n }\n return view.getComputedStyle(elem);\n }\n focusTrapModal(event, el) {\n let focusableElements;\n let firstFocusableElement;\n let lastFocusableElement;\n const KEYCODE_TAB = 9;\n /*tslint:disable-next-line:max-line-length */\n focusableElements = el.nativeElement.querySelectorAll('a[href], button, textarea, input, select, form, mdb-select, mdb-auto-completer, mdb-checkbox, mdb-range-input');\n firstFocusableElement = focusableElements[0];\n lastFocusableElement = focusableElements[focusableElements.length - 1];\n if (event.key === 'Tab' || event.keyCode === KEYCODE_TAB) {\n if (event.shiftKey) {\n if (document$1 && document$1.activeElement === firstFocusableElement) {\n lastFocusableElement.focus();\n event.preventDefault();\n }\n }\n else {\n if (document$1 && document$1.activeElement === lastFocusableElement) {\n firstFocusableElement.focus();\n event.preventDefault();\n }\n }\n }\n }\n getClosestEl(el, selector) {\n for (; el && el !== document$1; el = el.parentNode) {\n if (el.matches && el.matches(selector)) {\n return el;\n }\n }\n return null;\n }\n getCoords(elem) {\n const box = elem.getBoundingClientRect();\n const body = document$1.body;\n const docEl = document$1.documentElement;\n const scrollTop = win.pageYOffset || docEl.scrollTop || body.scrollTop;\n const scrollLeft = win.pageXOffset || docEl.scrollLeft || body.scrollLeft;\n const clientTop = docEl.clientTop || body.clientTop || 0;\n const clientLeft = docEl.clientLeft || body.clientLeft || 0;\n const top = box.top + scrollTop - clientTop;\n const left = box.left + scrollLeft - clientLeft;\n return { top: Math.round(top), left: Math.round(left) };\n }\n}\n\nclass MdbIconComponent {\n constructor(_el, _renderer) {\n this._el = _el;\n this._renderer = _renderer;\n this.fab = false;\n this.far = false;\n this.fal = false;\n this.fad = false;\n this.fas = true;\n this.sizeClass = '';\n this.utils = new Utils$1();\n }\n ngOnInit() {\n if (this.size) {\n this.sizeClass = `fa-${this.size}`;\n }\n const classList = this._el.nativeElement.classList;\n this.fab = classList.contains('fab');\n this.far = classList.contains('far');\n this.fas = classList.contains('fas');\n this.fal = classList.contains('fal');\n this.fad = classList.contains('fad');\n const formWrapper = this.utils.getClosestEl(this._el.nativeElement, '.md-form') ||\n this.utils.getClosestEl(this._el.nativeElement, '.md-outline');\n if (formWrapper) {\n formWrapper.childNodes.forEach((el) => {\n if (el.tagName === 'INPUT' || 'TEXTAREA') {\n this._renderer.listen(el, 'focus', () => {\n this._renderer.addClass(this._el.nativeElement, 'active');\n });\n this._renderer.listen(el, 'blur', () => {\n this._renderer.removeClass(this._el.nativeElement, 'active');\n });\n }\n });\n }\n }\n}\nMdbIconComponent.ɵfac = function MdbIconComponent_Factory(t) { return new (t || MdbIconComponent)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nMdbIconComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: MdbIconComponent, selectors: [[\"mdb-icon\"]], inputs: { icon: \"icon\", size: \"size\", class: \"class\", classInside: \"classInside\" }, decls: 1, vars: 13, consts: [[3, \"ngClass\"]], template: function MdbIconComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelement(0, \"i\", 0);\n } if (rf & 2) {\n ɵngcc0.ɵɵclassMapInterpolate4(\"fa-\", ctx.icon, \" \", ctx.class, \" \", ctx.classInside, \" \", ctx.sizeClass, \"\");\n ɵngcc0.ɵɵproperty(\"ngClass\", ɵngcc0.ɵɵpureFunction5(7, _c9, ctx.fas, ctx.far, ctx.fab, ctx.fal, ctx.fad));\n } }, directives: [ɵngcc1.NgClass], encapsulation: 2, changeDetection: 0 });\nMdbIconComponent.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 }\n];\nMdbIconComponent.propDecorators = {\n icon: [{ type: Input }],\n size: [{ type: Input }],\n class: [{ type: Input }],\n classInside: [{ type: Input }]\n};\n\n// tslint:disable-next-line:directive-selector\nclass FalDirective {\n constructor(_el, _r) {\n this._el = _el;\n this._r = _r;\n this._r.addClass(this._el.nativeElement, 'fal');\n }\n}\nFalDirective.ɵfac = function FalDirective_Factory(t) { return new (t || FalDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nFalDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: FalDirective, selectors: [[\"\", \"fal\", \"\"], [\"\", \"light\", \"\"]] });\nFalDirective.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 }\n];\n\n// tslint:disable-next-line:directive-selector\nclass FarDirective {\n constructor(_el, _r) {\n this._el = _el;\n this._r = _r;\n this._r.addClass(this._el.nativeElement, 'far');\n }\n}\nFarDirective.ɵfac = function FarDirective_Factory(t) { return new (t || FarDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nFarDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: FarDirective, selectors: [[\"\", \"far\", \"\"], [\"\", \"regular\", \"\"]] });\nFarDirective.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 }\n];\n\n// tslint:disable-next-line:directive-selector\nclass FasDirective {\n constructor(_el, _r) {\n this._el = _el;\n this._r = _r;\n this._r.addClass(this._el.nativeElement, 'fas');\n }\n}\nFasDirective.ɵfac = function FasDirective_Factory(t) { return new (t || FasDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nFasDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: FasDirective, selectors: [[\"\", \"fas\", \"\"], [\"\", \"solid\", \"\"]] });\nFasDirective.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 }\n];\n\n// tslint:disable-next-line:directive-selector\nclass FabDirective {\n constructor(_el, _r) {\n this._el = _el;\n this._r = _r;\n this._r.addClass(this._el.nativeElement, 'fab');\n }\n}\nFabDirective.ɵfac = function FabDirective_Factory(t) { return new (t || FabDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nFabDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: FabDirective, selectors: [[\"\", \"fab\", \"\"], [\"\", \"brands\", \"\"]] });\nFabDirective.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 }\n];\n\n// tslint:disable-next-line:directive-selector\nclass FadDirective {\n constructor(_el, _r) {\n this._el = _el;\n this._r = _r;\n this._r.addClass(this._el.nativeElement, 'fad');\n }\n}\nFadDirective.ɵfac = function FadDirective_Factory(t) { return new (t || FadDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nFadDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: FadDirective, selectors: [[\"\", \"fad\", \"\"], [\"\", \"duotone\", \"\"]] });\nFadDirective.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 }\n];\n\nclass IconsModule {\n}\nIconsModule.ɵfac = function IconsModule_Factory(t) { return new (t || IconsModule)(); };\nIconsModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: IconsModule });\nIconsModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ imports: [[CommonModule]] });\n\nlet defaultIdNumber$1 = 0;\n// tslint:disable-next-line:component-class-suffix\nclass MdbErrorDirective {\n constructor(el, renderer) {\n this.el = el;\n this.renderer = renderer;\n this.id = `mdb-error-${defaultIdNumber$1++}`;\n this.errorMsg = true;\n this.messageId = this.id;\n this.utils = new Utils$1();\n }\n _calculateMarginTop() {\n const parent = this.el.nativeElement.parentNode.querySelector('.form-check');\n const heightParent = parent ? parent.offsetHeight : null;\n if (heightParent) {\n const margin = heightParent / 12.5;\n this.el.nativeElement.style.top = `${heightParent + heightParent / margin}px`;\n }\n }\n ngOnInit() {\n this.prefix = this.el.nativeElement.parentNode.querySelector('.prefix');\n if (this.prefix) {\n this.prefix.classList.add('error-message');\n }\n const textarea = this.utils.getClosestEl(this.el.nativeElement, '.md-textarea');\n this._calculateMarginTop();\n if (textarea) {\n let height = textarea.offsetHeight + 4 + 'px';\n this.renderer.setStyle(this.el.nativeElement, 'top', height);\n this.textareaListenFunction = this.renderer.listen(textarea, 'keyup', () => {\n height = textarea.offsetHeight + 4 + 'px';\n this.renderer.setStyle(this.el.nativeElement, 'top', height);\n });\n }\n }\n ngOnDestroy() {\n if (this.textareaListenFunction) {\n this.textareaListenFunction();\n }\n if (this.prefix) {\n this.prefix.classList.remove('error-message');\n }\n }\n}\nMdbErrorDirective.ɵfac = function MdbErrorDirective_Factory(t) { return new (t || MdbErrorDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nMdbErrorDirective.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: MdbErrorDirective, selectors: [[\"mdb-error\"]], hostVars: 3, hostBindings: function MdbErrorDirective_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵattribute(\"id\", ctx.messageId);\n ɵngcc0.ɵɵclassProp(\"error-message\", ctx.errorMsg);\n } }, inputs: { id: \"id\" }, ngContentSelectors: _c0, decls: 1, vars: 0, template: function MdbErrorDirective_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵprojection(0);\n } }, styles: [_c10], encapsulation: 2 });\nMdbErrorDirective.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 }\n];\nMdbErrorDirective.propDecorators = {\n id: [{ type: Input }],\n errorMsg: [{ type: HostBinding, args: ['class.error-message',] }],\n messageId: [{ type: HostBinding, args: ['attr.id',] }]\n};\n\nlet defaultIdNumber$2 = 0;\n// tslint:disable-next-line:component-class-suffix\nclass MdbSuccessDirective {\n constructor(el, renderer) {\n this.el = el;\n this.renderer = renderer;\n this.id = `mdb-success-${defaultIdNumber$2++}`;\n this.successMsg = true;\n this.messageId = this.id;\n this.utils = new Utils$1();\n }\n _calculateMarginTop() {\n const parent = this.el.nativeElement.parentNode.querySelector('.form-check');\n const heightParent = parent ? parent.offsetHeight : null;\n if (heightParent) {\n const margin = heightParent / 12.5;\n this.el.nativeElement.style.top = `${heightParent + heightParent / margin}px`;\n }\n }\n ngOnInit() {\n this.prefix = this.el.nativeElement.parentNode.querySelector('.prefix');\n if (this.prefix) {\n this.prefix.classList.add('success-message');\n }\n const textarea = this.utils.getClosestEl(this.el.nativeElement, '.md-textarea');\n this._calculateMarginTop();\n if (textarea) {\n let height = textarea.offsetHeight + 4 + 'px';\n this.renderer.setStyle(this.el.nativeElement, 'top', height);\n this.textareaListenFunction = this.renderer.listen(textarea, 'keyup', () => {\n height = textarea.offsetHeight + 4 + 'px';\n this.renderer.setStyle(this.el.nativeElement, 'top', height);\n });\n }\n }\n ngOnDestroy() {\n if (this.textareaListenFunction) {\n this.textareaListenFunction();\n }\n if (this.prefix) {\n this.prefix.classList.remove('success-message');\n }\n }\n}\nMdbSuccessDirective.ɵfac = function MdbSuccessDirective_Factory(t) { return new (t || MdbSuccessDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nMdbSuccessDirective.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: MdbSuccessDirective, selectors: [[\"mdb-success\"]], hostVars: 3, hostBindings: function MdbSuccessDirective_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵattribute(\"id\", ctx.messageId);\n ɵngcc0.ɵɵclassProp(\"success-message\", ctx.successMsg);\n } }, inputs: { id: \"id\" }, ngContentSelectors: _c0, decls: 1, vars: 0, template: function MdbSuccessDirective_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵprojection(0);\n } }, styles: [_c10], encapsulation: 2 });\nMdbSuccessDirective.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 }\n];\nMdbSuccessDirective.propDecorators = {\n id: [{ type: Input }],\n successMsg: [{ type: HostBinding, args: ['class.success-message',] }],\n messageId: [{ type: HostBinding, args: ['attr.id',] }]\n};\n\nclass MdbValidateDirective {\n constructor(renderer, el) {\n this.renderer = renderer;\n this.el = el;\n this._validate = true;\n this._validateSuccess = true;\n this._validateError = true;\n }\n get validate() {\n return this._validate;\n }\n set validate(value) {\n this._validate = value;\n this.updateErrorClass();\n this.updateSuccessClass();\n }\n get validateSuccess() {\n return this._validateSuccess;\n }\n set validateSuccess(value) {\n this._validateSuccess = value;\n this.updateSuccessClass();\n }\n get validateError() {\n return this._validateError;\n }\n set validateError(value) {\n this._validateError = value;\n this.updateErrorClass();\n this.updateSuccessClass();\n }\n updateSuccessClass() {\n if (this.validate && this.validateSuccess) {\n this.renderer.addClass(this.el.nativeElement, 'validate-success');\n }\n else {\n this.renderer.removeClass(this.el.nativeElement, 'validate-success');\n }\n }\n updateErrorClass() {\n if (this.validate && this.validateError) {\n this.renderer.addClass(this.el.nativeElement, 'validate-error');\n }\n else {\n this.renderer.removeClass(this.el.nativeElement, 'validate-error');\n }\n }\n ngOnInit() {\n this.updateSuccessClass();\n this.updateErrorClass();\n }\n}\nMdbValidateDirective.ɵfac = function MdbValidateDirective_Factory(t) { return new (t || MdbValidateDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef)); };\nMdbValidateDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: MdbValidateDirective, selectors: [[\"\", \"mdbValidate\", \"\"]], inputs: { validate: \"validate\", validateSuccess: \"validateSuccess\", validateError: \"validateError\", mdbValidate: \"mdbValidate\" } });\nMdbValidateDirective.ctorParameters = () => [\n { type: Renderer2 },\n { type: ElementRef }\n];\nMdbValidateDirective.propDecorators = {\n mdbValidate: [{ type: Input }],\n validate: [{ type: Input }],\n validateSuccess: [{ type: Input }],\n validateError: [{ type: Input }]\n};\n\nclass InputUtilitiesModule {\n}\nInputUtilitiesModule.ɵfac = function InputUtilitiesModule_Factory(t) { return new (t || InputUtilitiesModule)(); };\nInputUtilitiesModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: InputUtilitiesModule });\nInputUtilitiesModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ imports: [[CommonModule]] });\n\nclass EqualValidatorDirective {\n constructor(validateEqual, reverse) {\n this.validateEqual = validateEqual;\n this.reverse = reverse;\n }\n get isReverse() {\n if (!this.reverse) {\n return false;\n }\n return this.reverse === 'true' ? true : false;\n }\n validate(c) {\n // self value (e.g. retype password)\n const v = c.value;\n // control value (e.g. password)\n const e = c.root.get(this.validateEqual);\n // value not equal\n if (e && v !== e.value) {\n return { validateEqual: false };\n }\n // value equal and reverse\n if (e && v === e.value && this.isReverse) {\n delete e.errors['validateEqual'];\n if (!Object.keys(e.errors).length) {\n e.setErrors(null);\n }\n }\n // value not equal and reverse\n if (e && v !== e.value && this.isReverse) {\n e.setErrors({\n validateEqual: false,\n });\n }\n // return null;\n return null;\n }\n}\nEqualValidatorDirective.ɵfac = function EqualValidatorDirective_Factory(t) { return new (t || EqualValidatorDirective)(ɵngcc0.ɵɵinjectAttribute('validateEqual'), ɵngcc0.ɵɵinjectAttribute('reverse')); };\nEqualValidatorDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: EqualValidatorDirective, selectors: [[\"\", \"mdb-validateEqual\", \"\", \"formControlName\", \"\"], [\"\", \"validateEqual\", \"\", \"formControl\", \"\"], [\"\", \"validateEqual\", \"\", \"ngModel\", \"\"]], features: [ɵngcc0.ɵɵProvidersFeature([\n { provide: NG_VALIDATORS, useExisting: forwardRef(() => EqualValidatorDirective), multi: true },\n ])] });\nEqualValidatorDirective.ctorParameters = () => [\n { type: String, decorators: [{ type: Attribute, args: ['validateEqual',] }] },\n { type: String, decorators: [{ type: Attribute, args: ['reverse',] }] }\n];\n\nclass MdbInputDirective {\n constructor(_elRef, _renderer, platformId) {\n this._elRef = _elRef;\n this._renderer = _renderer;\n this.el = null;\n this.elLabel = null;\n this.elIcon = null;\n this.element = null;\n this.mdbValidate = true;\n this.validateSuccess = true;\n this.validateError = true;\n this.focusCheckbox = true;\n this.focusRadio = true;\n this.isBrowser = false;\n this.isClicked = false;\n this.isBrowser = isPlatformBrowser(platformId);\n }\n onfocus() {\n try {\n this._renderer.addClass(this.elLabel, 'active');\n this.isClicked = true;\n }\n catch (error) { }\n }\n onblur() {\n this.validationFunction();\n try {\n if (this.el.nativeElement.value === '') {\n this._renderer.removeClass(this.elLabel, 'active');\n }\n this.isClicked = false;\n }\n catch (error) { }\n }\n onchange() {\n try {\n this.checkValue();\n }\n catch (error) { }\n }\n oniput() {\n this.validationFunction();\n }\n onkeydown(event) {\n try {\n if (event.target.type === 'number') {\n if (event.shiftKey) {\n switch (event.keyCode) {\n case UP_ARROW:\n event.target.value = +event.target.value + 10;\n break;\n case DOWN_ARROW:\n event.target.value = +event.target.value - 10;\n break;\n }\n }\n if (event.altKey) {\n switch (event.keyCode) {\n case UP_ARROW:\n event.target.value = +event.target.value + 0.1;\n break;\n case DOWN_ARROW:\n event.target.value = +event.target.value - 0.1;\n break;\n }\n }\n }\n }\n catch (error) { }\n this.delayedResize();\n }\n oncut() {\n try {\n setTimeout(() => {\n this.delayedResize();\n }, 0);\n }\n catch (error) { }\n }\n onpaste() {\n try {\n setTimeout(() => {\n this.delayedResize();\n }, 0);\n }\n catch (error) { }\n }\n ondrop() {\n try {\n setTimeout(() => {\n this.delayedResize();\n }, 0);\n }\n catch (error) { }\n }\n updateErrorMsg(value) {\n if (this.wrongTextContainer) {\n this.wrongTextContainer.innerHTML = value;\n }\n }\n updateSuccessMsg(value) {\n if (this.rightTextContainer) {\n this.rightTextContainer.innerHTML = value;\n }\n }\n ngOnInit() {\n try {\n setTimeout(() => {\n this.delayedResize();\n }, 0);\n }\n catch (error) {\n console.log(error);\n }\n // Inititalise a new wrong/right elements and render it below the host component.\n if (this.mdbValidate) {\n this.wrongTextContainer = this._renderer.createElement('span');\n this._renderer.addClass(this.wrongTextContainer, 'inputVal');\n this._renderer.addClass(this.wrongTextContainer, 'text-danger');\n this._renderer.appendChild(this._elRef.nativeElement.parentElement, this.wrongTextContainer);\n const textWrong = this._elRef.nativeElement.getAttribute('data-error');\n this.wrongTextContainer.innerHTML = textWrong ? textWrong : 'wrong';\n if (!textWrong && this.errorMessage !== undefined) {\n this.wrongTextContainer.innerHTML = this.errorMessage;\n }\n this._renderer.setStyle(this.wrongTextContainer, 'visibility', 'hidden');\n this.rightTextContainer = this._renderer.createElement('span');\n this._renderer.addClass(this.rightTextContainer, 'inputVal');\n this._renderer.addClass(this.rightTextContainer, 'text-success');\n this._renderer.appendChild(this._elRef.nativeElement.parentElement, this.rightTextContainer);\n const textSuccess = this._elRef.nativeElement.getAttribute('data-success');\n this.rightTextContainer.innerHTML = textSuccess ? textSuccess : 'success';\n if (!textSuccess && this.successMessage !== undefined) {\n this.rightTextContainer.innerHTML = this.successMessage;\n }\n this._renderer.setStyle(this.rightTextContainer, 'visibility', 'hidden');\n }\n }\n ngOnChanges(changes) {\n if (changes.hasOwnProperty('errorMessage')) {\n const newErrorMsg = changes.errorMessage.currentValue;\n this.updateErrorMsg(newErrorMsg);\n }\n if (changes.hasOwnProperty('successMessage')) {\n const newSuccessMsg = changes.successMessage.currentValue;\n this.updateSuccessMsg(newSuccessMsg);\n }\n }\n ngDoCheck() {\n if (this.mdbValidate &&\n this._elRef.nativeElement.classList.contains('ng-valid') &&\n this._elRef.nativeElement.classList.contains('ng-dirty') &&\n !this._elRef.nativeElement.classList.contains('counter-success')) {\n this._renderer.addClass(this._elRef.nativeElement, 'counter-success');\n this._renderer.setStyle(this.wrongTextContainer, 'visibility', 'hidden');\n this._renderer.setStyle(this.rightTextContainer, 'visibility', 'visible');\n this._renderer.setStyle(this.rightTextContainer, 'top', this._elRef.nativeElement.offsetHeight + 'px');\n this._renderer.setStyle(this.wrongTextContainer, 'top', this._elRef.nativeElement.offsetHeight + 'px');\n }\n if (this.mdbValidate &&\n this._elRef.nativeElement.classList.contains('ng-invalid') &&\n this._elRef.nativeElement.classList.contains('ng-dirty') &&\n !this._elRef.nativeElement.classList.contains('counter-danger')) {\n this._renderer.addClass(this._elRef.nativeElement, 'counter-danger');\n this._renderer.setStyle(this.rightTextContainer, 'visibility', 'hidden');\n this._renderer.setStyle(this.wrongTextContainer, 'visibility', 'visible');\n this._renderer.setStyle(this.rightTextContainer, 'top', this._elRef.nativeElement.offsetHeight + 'px');\n this._renderer.setStyle(this.wrongTextContainer, 'top', this._elRef.nativeElement.offsetHeight + 'px');\n }\n if ((this._elRef.nativeElement.classList.contains('ng-invalid') &&\n this._elRef.nativeElement.classList.contains('ng-pristine') &&\n this._elRef.nativeElement.classList.contains('ng-untouched')) ||\n this._elRef.nativeElement.disabled) {\n if (this._elRef.nativeElement.classList.contains('counter-success')) {\n this._renderer.removeClass(this._elRef.nativeElement, 'counter-success');\n this._renderer.setStyle(this.rightTextContainer, 'visibility', 'hidden');\n }\n else if (this._elRef.nativeElement.classList.contains('counter-danger')) {\n this._renderer.removeClass(this._elRef.nativeElement, 'counter-danger');\n this._renderer.setStyle(this.wrongTextContainer, 'visibility', 'hidden');\n }\n }\n if (!this.validateSuccess) {\n this._renderer.removeClass(this._elRef.nativeElement, 'counter-success');\n this._renderer.setStyle(this.rightTextContainer, 'display', 'none');\n if (this._elRef.nativeElement.classList.contains('ng-valid')) {\n this._renderer.removeClass(this._elRef.nativeElement, 'counter-danger');\n }\n }\n if (!this.validateError) {\n this._renderer.removeClass(this._elRef.nativeElement, 'counter-danger');\n this._renderer.setStyle(this.wrongTextContainer, 'display', 'none');\n if (this._elRef.nativeElement.classList.contains('ng-invalid')) {\n this._renderer.removeClass(this._elRef.nativeElement, 'counter-success');\n }\n }\n }\n validationFunction() {\n setTimeout(() => {\n if (this._elRef.nativeElement.classList.contains('ng-invalid')) {\n this._renderer.removeClass(this._elRef.nativeElement, 'counter-success');\n this._renderer.removeClass(this._elRef.nativeElement, 'counter-danger');\n }\n if (this._elRef.nativeElement.classList.contains('ng-touched') &&\n this._elRef.nativeElement.classList.contains('ng-invalid')) {\n if (this.mdbValidate) {\n this._renderer.addClass(this._elRef.nativeElement, 'counter-danger');\n this._renderer.setStyle(this.rightTextContainer, 'visibility', 'hidden');\n this._renderer.setStyle(this.wrongTextContainer, 'visibility', 'visible');\n this._renderer.setStyle(this.rightTextContainer, 'top', this._elRef.nativeElement.offsetHeight + 'px');\n this._renderer.setStyle(this.wrongTextContainer, 'top', this._elRef.nativeElement.offsetHeight + 'px');\n }\n }\n else if (this._elRef.nativeElement.classList.contains('ng-touched') &&\n this._elRef.nativeElement.classList.contains('ng-valid')) {\n if (this.mdbValidate) {\n this._renderer.addClass(this._elRef.nativeElement, 'counter-success');\n this._renderer.setStyle(this.rightTextContainer, 'visibility', 'visible');\n this._renderer.setStyle(this.wrongTextContainer, 'visibility', 'hidden');\n this._renderer.setStyle(this.rightTextContainer, 'top', this._elRef.nativeElement.offsetHeight + 'px');\n this._renderer.setStyle(this.wrongTextContainer, 'top', this._elRef.nativeElement.offsetHeight + 'px');\n }\n }\n }, 0);\n }\n ngAfterViewInit() {\n if (this.isBrowser) {\n try {\n this.element = document.querySelector('.md-textarea-auto');\n }\n catch (error) { }\n }\n const type = this.el.nativeElement.type;\n if (this.focusCheckbox && type === 'checkbox') {\n this._renderer.addClass(this.el.nativeElement, 'onFocusSelect');\n }\n if (this.focusRadio && type === 'radio') {\n this._renderer.addClass(this.el.nativeElement, 'onFocusSelect');\n }\n }\n ngAfterViewChecked() {\n this.initComponent();\n this.checkValue();\n }\n resize() {\n if (this.el.nativeElement.classList.contains('md-textarea-auto')) {\n this._renderer.setStyle(this.el.nativeElement, 'height', 'auto');\n this._renderer.setStyle(this.el.nativeElement, 'height', this.el.nativeElement.scrollHeight + 'px');\n }\n }\n delayedResize() {\n setTimeout(() => {\n this.resize();\n }, 0);\n }\n initComponent() {\n let inputId;\n let inputP;\n if (this.isBrowser) {\n try {\n inputId = this.el.nativeElement.id;\n }\n catch (err) { }\n try {\n inputP = this.el.nativeElement.parentNode;\n }\n catch (err) { }\n this.elLabel =\n inputP.querySelector('label[for=\"' + inputId + '\"]') || inputP.querySelector('label');\n if (this.elLabel && this.el.nativeElement.value !== '') {\n this._renderer.addClass(this.elLabel, 'active');\n }\n this.elIcon = inputP.querySelector('i') || false;\n if (this.elIcon) {\n this._renderer.addClass(this.elIcon, 'active');\n }\n }\n }\n checkValue() {\n let value = '';\n if (this.elLabel != null) {\n value = this.el.nativeElement.value || '';\n if (value === '') {\n this._renderer.removeClass(this.elLabel, 'active');\n if (this.elIcon) {\n this._renderer.removeClass(this.elIcon, 'active');\n }\n // tslint:disable-next-line:max-line-length\n }\n if ((value === '' && this.isClicked) ||\n (value === '' && this.el.nativeElement.placeholder) ||\n (value === '' && this.el.nativeElement.attributes.placeholder)) {\n this._renderer.addClass(this.elLabel, 'active');\n }\n }\n }\n}\nMdbInputDirective.ɵfac = function MdbInputDirective_Factory(t) { return new (t || MdbInputDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2), ɵngcc0.ɵɵdirectiveInject(PLATFORM_ID)); };\nMdbInputDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: MdbInputDirective, selectors: [[\"\", \"mdbInputDirective\", \"\"]], hostBindings: function MdbInputDirective_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"focus\", function MdbInputDirective_focus_HostBindingHandler() { return ctx.onfocus(); })(\"blur\", function MdbInputDirective_blur_HostBindingHandler() { return ctx.onblur(); })(\"change\", function MdbInputDirective_change_HostBindingHandler() { return ctx.onchange(); })(\"input\", function MdbInputDirective_input_HostBindingHandler() { return ctx.oniput(); })(\"keydown\", function MdbInputDirective_keydown_HostBindingHandler($event) { return ctx.onkeydown($event); })(\"cut\", function MdbInputDirective_cut_HostBindingHandler() { return ctx.oncut(); })(\"paste\", function MdbInputDirective_paste_HostBindingHandler() { return ctx.onpaste(); })(\"drop\", function MdbInputDirective_drop_HostBindingHandler() { return ctx.ondrop(); });\n } }, inputs: { mdbValidate: \"mdbValidate\", validateSuccess: \"validateSuccess\", validateError: \"validateError\", focusCheckbox: \"focusCheckbox\", focusRadio: \"focusRadio\", mdbInputDirective: \"mdbInputDirective\", customRegex: \"customRegex\", errorMessage: \"errorMessage\", successMessage: \"successMessage\" }, features: [ɵngcc0.ɵɵNgOnChangesFeature] });\nMdbInputDirective.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 },\n { type: String, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] }\n];\nMdbInputDirective.propDecorators = {\n mdbInputDirective: [{ type: Input }],\n customRegex: [{ type: Input }],\n mdbValidate: [{ type: Input }],\n validateSuccess: [{ type: Input }],\n validateError: [{ type: Input }],\n focusCheckbox: [{ type: Input }],\n focusRadio: [{ type: Input }],\n errorMessage: [{ type: Input }],\n successMessage: [{ type: Input }],\n onfocus: [{ type: HostListener, args: ['focus',] }],\n onblur: [{ type: HostListener, args: ['blur',] }],\n onchange: [{ type: HostListener, args: ['change',] }],\n oniput: [{ type: HostListener, args: ['input',] }],\n onkeydown: [{ type: HostListener, args: ['keydown', ['$event'],] }],\n oncut: [{ type: HostListener, args: ['cut',] }],\n onpaste: [{ type: HostListener, args: ['paste',] }],\n ondrop: [{ type: HostListener, args: ['drop',] }]\n};\n\n// tslint:disable-next-line:directive-class-suffix\nclass MdbInput {\n constructor(el, _renderer, platformId) {\n this.el = el;\n this._renderer = _renderer;\n this.elLabel = null;\n this.elIcon = null;\n this.focusCheckbox = true;\n this.focusRadio = true;\n this.isBrowser = false;\n this.isClicked = false;\n this.element = null;\n this.isBrowser = isPlatformBrowser(platformId);\n }\n onfocus() {\n try {\n this._renderer.addClass(this.elLabel, 'active');\n this.isClicked = true;\n }\n catch (error) { }\n }\n onblur() {\n try {\n if (this.el.nativeElement.value === '') {\n this._renderer.removeClass(this.elLabel, 'active');\n }\n this.isClicked = false;\n }\n catch (error) { }\n }\n onchange() {\n try {\n this.checkValue();\n }\n catch (error) { }\n }\n onkeydown(event) {\n try {\n if (event.target.type === 'number') {\n if (event.shiftKey) {\n switch (event.keyCode) {\n case UP_ARROW:\n event.target.value = +event.target.value + 10;\n break;\n case DOWN_ARROW:\n event.target.value = +event.target.value - 10;\n break;\n }\n }\n if (event.altKey) {\n switch (event.keyCode) {\n case UP_ARROW:\n event.target.value = +event.target.value + 0.1;\n break;\n case DOWN_ARROW:\n event.target.value = +event.target.value - 0.1;\n break;\n }\n }\n }\n }\n catch (error) { }\n this.delayedResize();\n }\n oncut() {\n try {\n setTimeout(() => {\n this.delayedResize();\n }, 0);\n }\n catch (error) { }\n }\n onpaste() {\n try {\n setTimeout(() => {\n this.delayedResize();\n }, 0);\n }\n catch (error) { }\n }\n ondrop() {\n try {\n setTimeout(() => {\n this.delayedResize();\n }, 0);\n }\n catch (error) { }\n }\n ngAfterViewInit() {\n if (this.isBrowser) {\n try {\n this.element = document.querySelector('.md-textarea-auto');\n if (this.element) {\n this.delayedResize();\n }\n }\n catch (error) { }\n }\n const type = this.el.nativeElement.type;\n if (this.focusCheckbox && type === 'checkbox') {\n this._renderer.addClass(this.el.nativeElement, 'onFocusSelect');\n }\n if (this.focusRadio && type === 'radio') {\n this._renderer.addClass(this.el.nativeElement, 'onFocusSelect');\n }\n }\n ngAfterViewChecked() {\n this.initComponent();\n this.checkValue();\n }\n resize() {\n if (this.el.nativeElement.classList.contains('md-textarea-auto')) {\n this._renderer.setStyle(this.el.nativeElement, 'height', 'auto');\n if (this.el.nativeElement.scrollHeight) {\n this._renderer.setStyle(this.el.nativeElement, 'height', this.el.nativeElement.scrollHeight + 'px');\n }\n }\n }\n delayedResize() {\n setTimeout(() => {\n this.resize();\n }, 0);\n }\n initComponent() {\n let inputId;\n let inputP;\n if (this.isBrowser) {\n try {\n inputId = this.el.nativeElement.id;\n }\n catch (err) { }\n try {\n inputP = this.el.nativeElement.parentNode;\n }\n catch (err) { }\n this.elLabel =\n inputP.querySelector('label[for=\"' + inputId + '\"]') || inputP.querySelector('label');\n if (this.elLabel && this.el.nativeElement.value !== '') {\n this._renderer.addClass(this.elLabel, 'active');\n }\n this.elIcon = inputP.querySelector('i') || false;\n }\n }\n checkValue() {\n let value = '';\n if (this.elLabel != null) {\n value = this.el.nativeElement.value || '';\n if (value === '') {\n this._renderer.removeClass(this.elLabel, 'active');\n if (this.elIcon) {\n this._renderer.removeClass(this.elIcon, 'active');\n }\n }\n if ((value === '' && this.isClicked) ||\n (value === '' && this.el.nativeElement.placeholder) ||\n (value === '' && this.el.nativeElement.attributes.placeholder)) {\n this._renderer.addClass(this.elLabel, 'active');\n }\n }\n }\n}\nMdbInput.ɵfac = function MdbInput_Factory(t) { return new (t || MdbInput)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2), ɵngcc0.ɵɵdirectiveInject(PLATFORM_ID)); };\nMdbInput.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: MdbInput, selectors: [[\"\", \"mdbInput\", \"\"]], hostBindings: function MdbInput_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"focus\", function MdbInput_focus_HostBindingHandler() { return ctx.onfocus(); })(\"blur\", function MdbInput_blur_HostBindingHandler() { return ctx.onblur(); })(\"change\", function MdbInput_change_HostBindingHandler() { return ctx.onchange(); })(\"keydown\", function MdbInput_keydown_HostBindingHandler($event) { return ctx.onkeydown($event); })(\"cut\", function MdbInput_cut_HostBindingHandler() { return ctx.oncut(); })(\"paste\", function MdbInput_paste_HostBindingHandler() { return ctx.onpaste(); })(\"drop\", function MdbInput_drop_HostBindingHandler() { return ctx.ondrop(); });\n } }, inputs: { focusCheckbox: \"focusCheckbox\", focusRadio: \"focusRadio\" } });\nMdbInput.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 },\n { type: String, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] }\n];\nMdbInput.propDecorators = {\n focusCheckbox: [{ type: Input }],\n focusRadio: [{ type: Input }],\n onfocus: [{ type: HostListener, args: ['focus',] }],\n onblur: [{ type: HostListener, args: ['blur',] }],\n onchange: [{ type: HostListener, args: ['change',] }],\n onkeydown: [{ type: HostListener, args: ['keydown', ['$event'],] }],\n oncut: [{ type: HostListener, args: ['cut',] }],\n onpaste: [{ type: HostListener, args: ['paste',] }],\n ondrop: [{ type: HostListener, args: ['drop',] }]\n};\n\nclass InputsModule {\n static forRoot() {\n return { ngModule: InputsModule, providers: [] };\n }\n}\nInputsModule.ɵfac = function InputsModule_Factory(t) { return new (t || InputsModule)(); };\nInputsModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: InputsModule });\nInputsModule.ɵinj = ɵngcc0.ɵɵdefineInjector({});\n\nclass ModalOptions {\n}\nModalOptions.ɵfac = function ModalOptions_Factory(t) { return new (t || ModalOptions)(); };\nModalOptions.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: ModalOptions, factory: ModalOptions.ɵfac });\nclass MDBModalRef {\n /**\n * Hides the modal\n */\n hide() { }\n}\nMDBModalRef.ɵfac = function MDBModalRef_Factory(t) { return new (t || MDBModalRef)(); };\nMDBModalRef.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: MDBModalRef, factory: MDBModalRef.ɵfac });\nconst ɵ0 = {};\nconst modalConfigDefaults = {\n backdrop: true,\n keyboard: true,\n focus: true,\n show: false,\n ignoreBackdropClick: false,\n class: '',\n containerClass: '',\n animated: true,\n scroll: false,\n data: ɵ0,\n};\nconst ClassName = {\n SCROLLBAR_MEASURER: 'modal-scrollbar-measure',\n BACKDROP: 'modal-backdrop',\n OPEN: 'modal-open',\n FADE: 'fade',\n IN: 'in',\n SHOW: 'show',\n};\nconst Selector = {\n DIALOG: '.modal-dialog',\n DATA_TOGGLE: '[data-toggle=\"modal\"]',\n DATA_DISMISS: '[data-dismiss=\"modal\"]',\n FIXED_CONTENT: '.navbar-fixed-top, .navbar-fixed-bottom, .is-fixed',\n};\nconst TransitionDurations = {\n MODAL: 300,\n BACKDROP: 150,\n};\nconst DISMISS_REASONS = {\n BACKRDOP: 'backdrop-click',\n ESC: 'esc',\n};\n\nclass ModalBackdropOptions {\n constructor(options) {\n this.animate = true;\n Object.assign(this, options);\n }\n}\n/** This component will be added as background layout for modals if enabled */\nclass ModalBackdropComponent {\n constructor(element, renderer) {\n this.element = element;\n this.renderer = renderer;\n this.classNameBackDrop = true;\n this._isShown = false;\n }\n get isAnimated() {\n return this._isAnimated;\n }\n set isAnimated(value) {\n this._isAnimated = value;\n }\n get isShown() {\n return this._isShown;\n }\n set isShown(value) {\n this._isShown = value;\n if (value) {\n this.renderer.addClass(this.element.nativeElement, `${ClassName.IN}`);\n if (!isBs3()) {\n this.renderer.addClass(this.element.nativeElement, `${ClassName.SHOW}`);\n }\n }\n else {\n this.renderer.removeClass(this.element.nativeElement, `${ClassName.IN}`);\n if (!isBs3()) {\n this.renderer.removeClass(this.element.nativeElement, `${ClassName.SHOW}`);\n }\n }\n }\n ngOnInit() {\n if (this.isAnimated) {\n this.renderer.addClass(this.element.nativeElement, `${ClassName.FADE}`);\n Utils$1.reflow(this.element.nativeElement);\n }\n else {\n this.renderer.addClass(this.element.nativeElement, `${ClassName.FADE}`);\n Utils$1.reflow(this.element.nativeElement);\n }\n this.isShown = true;\n }\n}\nModalBackdropComponent.ɵfac = function ModalBackdropComponent_Factory(t) { return new (t || ModalBackdropComponent)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nModalBackdropComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: ModalBackdropComponent, selectors: [[\"mdb-modal-backdrop\"]], hostVars: 2, hostBindings: function ModalBackdropComponent_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵclassProp(\"modal-backdrop\", ctx.classNameBackDrop);\n } }, decls: 0, vars: 0, template: function ModalBackdropComponent_Template(rf, ctx) { }, encapsulation: 2 });\nModalBackdropComponent.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 }\n];\nModalBackdropComponent.propDecorators = {\n classNameBackDrop: [{ type: HostBinding, args: ['class.modal-backdrop',] }]\n};\n\nconst TRANSITION_DURATION = 300;\nconst BACKDROP_TRANSITION_DURATION = 150;\n/** Mark any code with directive to show it's content in modal */\n// tslint:disable-next-line:component-class-suffix\nclass ModalDirective {\n constructor(_element, _focusTrapFactory, _viewContainerRef, _renderer, clf) {\n this._element = _element;\n this._focusTrapFactory = _focusTrapFactory;\n this._renderer = _renderer;\n /** This event fires immediately when the `show` instance method is called. */\n // tslint:disable-next-line:no-output-on-prefix\n this.onShow = new EventEmitter();\n this.open = new EventEmitter();\n /** This event is fired when the modal has been made visible to the user (will wait for CSS transitions to complete) */\n // tslint:disable-next-line:no-output-on-prefix\n this.onShown = new EventEmitter();\n this.opened = new EventEmitter();\n /** This event is fired immediately when the hide instance method has been called. */\n // tslint:disable-next-line:no-output-on-prefix\n this.onHide = new EventEmitter();\n this.close = new EventEmitter();\n /** This event is fired when the modal has finished being hidden from the user (will wait for CSS transitions to complete). */\n // tslint:disable-next-line:no-output-on-prefix\n this.onHidden = new EventEmitter();\n this.closed = new EventEmitter();\n // seems like an Options\n this.isAnimated = true;\n this._isShown = false;\n this.isBodyOverflowing = false;\n this.originalBodyPadding = 0;\n this.scrollbarWidth = 0;\n this.timerHideModal = 0;\n this.timerRmBackDrop = 0;\n this.isNested = false;\n this.utils = new Utils$1();\n this._backdrop = clf.createLoader(_element, _viewContainerRef, _renderer);\n }\n /** allows to set modal configuration via element property */\n set config(conf) {\n this._config = this.getConfig(conf);\n }\n get config() {\n return this._config;\n }\n get isShown() {\n return this._isShown;\n }\n /* @HostListener('keydown', ['$event']) onKeyDown(event: any) {\n this.utils.focusTrapModal(event, this._element);\n }\n */\n onClick(event) {\n if (this.config.ignoreBackdropClick ||\n this.config.backdrop === 'static' ||\n event.target !== this._element.nativeElement) {\n return;\n }\n this.dismissReason = DISMISS_REASONS.BACKRDOP;\n this.hide(event);\n }\n // todo: consider preventing default and stopping propagation\n onEsc() {\n if (this.config.keyboard) {\n this.dismissReason = DISMISS_REASONS.ESC;\n this.hide();\n }\n }\n ngOnDestroy() {\n this.config = void 0;\n if (this._isShown) {\n this._isShown = false;\n this.hideModal();\n this._backdrop.dispose();\n }\n }\n ngAfterViewInit() {\n this._config = this._config || this.getConfig();\n setTimeout(() => {\n if (this._config.show) {\n this.show();\n }\n }, 0);\n this._createFocusTrap();\n }\n ngOnChanges() {\n this.config.backdrop ? this.showBackdrop() : this.removeBackdrop();\n }\n /* Public methods */\n /** Allows to manually toggle modal visibility */\n toggle() {\n return this._isShown ? this.hide() : this.show();\n }\n /** Allows to manually open modal */\n show() {\n this.dismissReason = null;\n this.onShow.emit(this);\n this.open.emit(this);\n if (this._isShown) {\n return;\n }\n clearTimeout(this.timerHideModal);\n clearTimeout(this.timerRmBackDrop);\n this._isShown = true;\n this.checkScrollbar();\n this.setScrollbar();\n if (document$1 && document$1.body) {\n if (document$1.body.classList.contains(ClassName.OPEN)) {\n this.isNested = true;\n }\n else {\n this._renderer.addClass(document$1.body, ClassName.OPEN);\n }\n }\n this.showBackdrop(() => {\n this.showElement();\n });\n if (!this.config.backdrop && this.config.ignoreBackdropClick) {\n this._renderer.setStyle(this._element.nativeElement, 'position', 'fixed');\n if (navigator$1.userAgent.indexOf('Safari') !== -1 &&\n navigator$1.userAgent.indexOf('Chrome') === -1) {\n this._renderer.setStyle(this._element.nativeElement, 'overflow', 'unset');\n this._renderer.setStyle(this._element.nativeElement, 'overflow-y', 'unset');\n this._renderer.setStyle(this._element.nativeElement, 'overflow-x', 'unset');\n }\n }\n }\n /** Allows to manually close modal */\n hide(event) {\n if (event) {\n event.preventDefault();\n }\n // fix(modal): resolved problem with not pausing iframe/video when closing modal\n const iframeElements = Array.from(this._element.nativeElement.querySelectorAll('iframe'));\n const videoElements = Array.from(this._element.nativeElement.querySelectorAll('video'));\n iframeElements.forEach((iframe) => {\n const srcAttribute = iframe.getAttribute('src');\n this._renderer.setAttribute(iframe, 'src', srcAttribute);\n });\n videoElements.forEach((video) => {\n video.pause();\n });\n this.onHide.emit(this);\n this.close.emit(this);\n if (!this._isShown) {\n return;\n }\n clearTimeout(this.timerHideModal);\n clearTimeout(this.timerRmBackDrop);\n this._isShown = false;\n this._renderer.removeClass(this._element.nativeElement, ClassName.IN);\n if (!isBs3()) {\n this._renderer.removeClass(this._element.nativeElement, ClassName.SHOW);\n }\n if (this.isAnimated) {\n this.timerHideModal = setTimeout(() => this.hideModal(), TRANSITION_DURATION);\n }\n else {\n this.hideModal();\n }\n }\n /** Private methods @internal */\n getConfig(config) {\n return Object.assign({}, modalConfigDefaults, config);\n }\n /**\n * Show dialog\n * @internal\n */\n showElement() {\n if (!this._element.nativeElement.parentNode ||\n this._element.nativeElement.parentNode.nodeType !== Node.ELEMENT_NODE) {\n // don't move modals dom position\n if (document$1 && document$1.body) {\n document$1.body.appendChild(this._element.nativeElement);\n }\n }\n this._renderer.setAttribute(this._element.nativeElement, 'aria-hidden', 'false');\n this._renderer.setStyle(this._element.nativeElement, 'display', 'block');\n this._renderer.setProperty(this._element.nativeElement, 'scrollTop', 0);\n if (this.isAnimated) {\n Utils$1.reflow(this._element.nativeElement);\n }\n this._renderer.addClass(this._element.nativeElement, ClassName.IN);\n if (!isBs3()) {\n this._renderer.addClass(this._element.nativeElement, ClassName.SHOW);\n }\n const transitionComplete = () => {\n if (this._config.focus) {\n this._element.nativeElement.focus();\n }\n this.onShown.emit(this);\n this.opened.emit(this);\n };\n if (this.isAnimated) {\n setTimeout(transitionComplete, TRANSITION_DURATION);\n }\n else {\n transitionComplete();\n }\n }\n _createFocusTrap() {\n if (!this._focusTrap) {\n this._focusTrap = this._focusTrapFactory.create(this._element.nativeElement);\n }\n }\n /** @internal */\n hideModal() {\n this._renderer.setAttribute(this._element.nativeElement, 'aria-hidden', 'true');\n this._renderer.setStyle(this._element.nativeElement, 'display', 'none');\n this.showBackdrop(() => {\n if (!this.isNested) {\n if (document$1 && document$1.body) {\n this._renderer.removeClass(document$1.body, ClassName.OPEN);\n }\n }\n this.resetAdjustments();\n this.focusOtherModal();\n this.onHidden.emit(this);\n this.closed.emit(this);\n });\n }\n /** @internal */\n showBackdrop(callback) {\n if (this._isShown &&\n this.config.backdrop &&\n (!this.backdrop || !this.backdrop.instance.isShown)) {\n this.removeBackdrop();\n this._backdrop\n .attach(ModalBackdropComponent)\n .to('body')\n .show({ isAnimated: this.isAnimated });\n this.backdrop = this._backdrop._componentRef;\n if (!callback) {\n return;\n }\n if (!this.isAnimated) {\n callback();\n return;\n }\n setTimeout(callback, BACKDROP_TRANSITION_DURATION);\n }\n else if (!this._isShown && this.backdrop) {\n this.backdrop.instance.isShown = false;\n const callbackRemove = () => {\n this.removeBackdrop();\n if (callback) {\n callback();\n }\n };\n if (this.backdrop.instance.isAnimated) {\n this.timerRmBackDrop = setTimeout(callbackRemove, BACKDROP_TRANSITION_DURATION);\n }\n else {\n callbackRemove();\n }\n }\n else if (callback) {\n callback();\n }\n }\n /** @internal */\n removeBackdrop() {\n this._backdrop.hide();\n this.backdrop = undefined;\n }\n focusOtherModal() {\n try {\n const otherOpenedModals = this._element.nativeElement.parentElement.querySelectorAll('.in[mdbModal]');\n if (!otherOpenedModals.length) {\n return;\n }\n otherOpenedModals[otherOpenedModals.length - 1].nativeElement.focus();\n }\n catch (error) { }\n }\n /** @internal */\n resetAdjustments() {\n this._renderer.setStyle(this._element.nativeElement, 'paddingLeft', '');\n this._renderer.setStyle(this._element.nativeElement, 'paddingRight', '');\n }\n /** Scroll bar tricks */\n /** @internal */\n checkScrollbar() {\n this.isBodyOverflowing = document$1.body.clientWidth < win.innerWidth;\n this.scrollbarWidth = this.getScrollbarWidth();\n }\n setScrollbar() {\n if (!document$1) {\n return;\n }\n this.originalBodyPadding = parseInt(win.getComputedStyle(document$1.body).getPropertyValue('padding-right') || 0, 10);\n }\n // thx d.walsh\n getScrollbarWidth() {\n const scrollDiv = this._renderer.createElement('div', void 0);\n this._renderer.appendChild(document$1.body, scrollDiv);\n scrollDiv.className = ClassName.SCROLLBAR_MEASURER;\n const scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth;\n document$1.body.removeChild(scrollDiv);\n return scrollbarWidth;\n }\n}\nModalDirective.ɵfac = function ModalDirective_Factory(t) { return new (t || ModalDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc2.ConfigurableFocusTrapFactory), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ViewContainerRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2), ɵngcc0.ɵɵdirectiveInject(ComponentLoaderFactory)); };\nModalDirective.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: ModalDirective, selectors: [[\"\", \"mdbModal\", \"\"]], hostBindings: function ModalDirective_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"click\", function ModalDirective_click_HostBindingHandler($event) { return ctx.onClick($event); })(\"keydown.esc\", function ModalDirective_keydown_esc_HostBindingHandler() { return ctx.onEsc(); });\n } }, inputs: { config: \"config\" }, outputs: { onShow: \"onShow\", open: \"open\", onShown: \"onShown\", opened: \"opened\", onHide: \"onHide\", close: \"close\", onHidden: \"onHidden\", closed: \"closed\" }, exportAs: [\"mdb-modal\", \"mdbModal\"], features: [ɵngcc0.ɵɵNgOnChangesFeature], attrs: _c11, ngContentSelectors: _c0, decls: 1, vars: 0, template: function ModalDirective_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵprojection(0);\n } }, styles: [_c12], encapsulation: 2 });\nModalDirective.ctorParameters = () => [\n { type: ElementRef },\n { type: ConfigurableFocusTrapFactory },\n { type: ViewContainerRef },\n { type: Renderer2 },\n { type: ComponentLoaderFactory }\n];\nModalDirective.propDecorators = {\n config: [{ type: Input }],\n onShow: [{ type: Output }],\n open: [{ type: Output }],\n onShown: [{ type: Output }],\n opened: [{ type: Output }],\n onHide: [{ type: Output }],\n close: [{ type: Output }],\n onHidden: [{ type: Output }],\n closed: [{ type: Output }],\n onClick: [{ type: HostListener, args: ['click', ['$event'],] }],\n onEsc: [{ type: HostListener, args: ['keydown.esc',] }]\n};\n\nclass ModalContainerComponent {\n constructor(options, _element, _renderer) {\n // this.mdbModalService = msConfig.serviceInstance;\n this._renderer = _renderer;\n this.modalClass = 'modal';\n this.tabindex = -1;\n this.role = 'dialog';\n this.modal = true;\n this.isShown = false;\n this.isModalHiding = false;\n this._element = _element;\n this.config = Object.assign({}, options);\n }\n onClick(event) {\n if (this.config.ignoreBackdropClick ||\n this.config.backdrop === 'static' ||\n event.target !== this._element.nativeElement) {\n return;\n }\n this.mdbModalService.setDismissReason(DISMISS_REASONS.BACKRDOP);\n this.hide();\n }\n onEsc() {\n if (this.config.keyboard && this.level === this.mdbModalService.getModalsCount()) {\n this.mdbModalService.setDismissReason(DISMISS_REASONS.ESC);\n this.hide();\n }\n }\n ngOnInit() {\n if (this.config.animated) {\n this._renderer.addClass(this._element.nativeElement, 'fade');\n }\n this._renderer.setStyle(this._element.nativeElement, 'display', 'block');\n if ((window &&\n window.navigator.userAgent.indexOf('Edge') !== -1 &&\n this.config &&\n this.config.toString().indexOf('side-modal') === -1) ||\n (window &&\n window.navigator.userAgent.indexOf('Edge') !== -1 &&\n this.config &&\n this.config.toString().indexOf('modal-full-height') === -1)) {\n this.isShown = true;\n this._renderer.addClass(this._element.nativeElement, isBs3() ? ClassName.IN : ClassName.SHOW);\n this._renderer.setStyle(this._element.nativeElement, 'transition', 'transform 0.3s ease-out');\n this._renderer.setStyle(this._element.nativeElement, 'transform', 'translate(0, 25px)');\n }\n else {\n setTimeout(() => {\n this.isShown = true;\n this._renderer.addClass(this._element.nativeElement, isBs3() ? ClassName.IN : ClassName.SHOW);\n }, this.isAnimated ? TransitionDurations.BACKDROP : 0);\n }\n if (document && document.body) {\n if (this.mdbModalService.getModalsCount() === 1) {\n this.mdbModalService.checkScrollbar();\n this.mdbModalService.setScrollbar();\n }\n this._renderer.addClass(document.body, ClassName.OPEN);\n }\n if (this.config.containerClass) {\n this.updateContainerClass();\n }\n if (this.config.scroll) {\n this._renderer.setStyle(this._element.nativeElement, 'overflow-y', 'auto');\n }\n }\n focusModalElement() {\n if (this.config.focus) {\n this._element.nativeElement.focus();\n }\n }\n updateContainerClass() {\n if (this.config.containerClass) {\n const containerClasses = this.config.containerClass;\n const classArr = containerClasses.split(' ');\n for (let i = 0; i < classArr.length; i++) {\n this._renderer.addClass(this._element.nativeElement, classArr[i]);\n }\n }\n }\n ngOnDestroy() {\n if (this.isShown) {\n this.hide();\n }\n }\n hide() {\n if (this.isModalHiding || !this.isShown) {\n return;\n }\n this.isModalHiding = true;\n this._renderer.removeClass(this._element.nativeElement, isBs3() ? ClassName.IN : ClassName.SHOW);\n // fix(modal): resolved problem with not pausing iframe/video when closing modal\n const iframeElements = Array.from(this._element.nativeElement.querySelectorAll('iframe'));\n const videoElements = Array.from(this._element.nativeElement.querySelectorAll('video'));\n iframeElements.forEach((iframe) => {\n const srcAttribute = iframe.getAttribute('src');\n this._renderer.setAttribute(iframe, 'src', srcAttribute);\n });\n videoElements.forEach((video) => {\n video.pause();\n });\n setTimeout(() => {\n this.isShown = false;\n if (document && document.body && this.mdbModalService.getModalsCount() === 1) {\n this._renderer.removeClass(document.body, ClassName.OPEN);\n }\n this.mdbModalService.hide(this.level);\n this.isModalHiding = false;\n }, this.isAnimated ? TransitionDurations.MODAL : 0);\n }\n}\nModalContainerComponent.ɵfac = function ModalContainerComponent_Factory(t) { return new (t || ModalContainerComponent)(ɵngcc0.ɵɵdirectiveInject(ModalOptions), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nModalContainerComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: ModalContainerComponent, selectors: [[\"mdb-modal-container\"]], hostVars: 4, hostBindings: function ModalContainerComponent_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"click\", function ModalContainerComponent_click_HostBindingHandler($event) { return ctx.onClick($event); })(\"keydown.esc\", function ModalContainerComponent_keydown_esc_HostBindingHandler() { return ctx.onEsc(); }, false, ɵngcc0.ɵɵresolveWindow);\n } if (rf & 2) {\n ɵngcc0.ɵɵhostProperty(\"tabindex\", ctx.tabindex);\n ɵngcc0.ɵɵattribute(\"role\", ctx.role);\n ɵngcc0.ɵɵclassProp(\"modal\", ctx.modal);\n } }, ngContentSelectors: _c0, decls: 3, vars: 2, consts: [[\"role\", \"document\", \"cdkTrapFocus\", \"\"], [1, \"modal-content\", \"modal-dynamic\"]], template: function ModalContainerComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵelementStart(0, \"div\", 0);\n ɵngcc0.ɵɵelementStart(1, \"div\", 1);\n ɵngcc0.ɵɵprojection(2);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n } if (rf & 2) {\n ɵngcc0.ɵɵclassMap(\"modal-dialog\" + (ctx.config.class ? \" \" + ctx.config.class : \"\"));\n } }, directives: [ɵngcc2.CdkTrapFocus], styles: [_c12], encapsulation: 2 });\nModalContainerComponent.ctorParameters = () => [\n { type: ModalOptions },\n { type: ElementRef },\n { type: Renderer2 }\n];\nModalContainerComponent.propDecorators = {\n tabindex: [{ type: HostBinding, args: ['tabindex',] }],\n role: [{ type: HostBinding, args: ['attr.role',] }],\n modal: [{ type: HostBinding, args: ['class.modal',] }],\n onClick: [{ type: HostListener, args: ['click', ['$event'],] }],\n onEsc: [{ type: HostListener, args: ['window:keydown.esc',] }]\n};\n\nclass MDBModalService {\n constructor(rendererFactory, clf) {\n this.clf = clf;\n this.config = modalConfigDefaults;\n this.open = new EventEmitter();\n this.opened = new EventEmitter();\n this.close = new EventEmitter();\n this.closed = new EventEmitter();\n this.isBodyOverflowing = false;\n this.originalBodyPadding = 0;\n this.scrollbarWidth = 0;\n this.modalsCount = 0;\n this.lastDismissReason = '';\n this.loaders = [];\n this._backdropLoader = this.clf.createLoader(this.el, this.vcr, this.renderer);\n this.renderer = rendererFactory.createRenderer(null, null);\n }\n /** Shows a modal */\n show(content, config) {\n this.modalsCount++;\n this._createLoaders();\n this.config = Object.assign({}, modalConfigDefaults, config);\n this._showBackdrop();\n this.lastDismissReason = null;\n return this._showModal(content);\n }\n hide(level) {\n if (this.modalsCount === 1) {\n this._hideBackdrop();\n this.resetScrollbar();\n }\n this.modalsCount = this.modalsCount >= 1 ? this.modalsCount - 1 : 0;\n setTimeout(() => {\n this._hideModal(level);\n this.removeLoaders(level);\n }, this.config.animated ? TransitionDurations.BACKDROP : 0);\n }\n _showBackdrop() {\n const isBackdropEnabled = this.config.backdrop || this.config.backdrop === 'static';\n const isBackdropInDOM = !this.backdropRef || !this.backdropRef.instance.isShown;\n if (this.modalsCount === 1) {\n this.removeBackdrop();\n if (isBackdropEnabled && isBackdropInDOM) {\n this._backdropLoader\n .attach(ModalBackdropComponent)\n .to('body')\n .show({ isAnimated: this.config.animated });\n this.backdropRef = this._backdropLoader._componentRef;\n }\n }\n }\n _hideBackdrop() {\n if (!this.backdropRef) {\n return;\n }\n this.backdropRef.instance.isShown = false;\n const duration = this.config.animated ? TransitionDurations.BACKDROP : 0;\n setTimeout(() => this.removeBackdrop(), duration);\n }\n _showModal(content) {\n const modalLoader = this.loaders[this.loaders.length - 1];\n const mdbModalRef = new MDBModalRef();\n const modalContainerRef = modalLoader\n .provide({ provide: ModalOptions, useValue: this.config })\n .provide({ provide: MDBModalRef, useValue: mdbModalRef })\n .attach(ModalContainerComponent)\n .to('body')\n .show({\n content,\n isAnimated: this.config.animated,\n data: this.config.data,\n mdbModalService: this,\n });\n modalContainerRef.instance.focusModalElement();\n modalContainerRef.instance.level = this.getModalsCount();\n mdbModalRef.hide = () => {\n modalContainerRef.instance.hide();\n };\n mdbModalRef.content = modalLoader.getInnerComponent() || null;\n return mdbModalRef;\n }\n _hideModal(level) {\n const modalLoader = this.loaders[level - 1];\n if (modalLoader) {\n modalLoader.hide();\n }\n }\n getModalsCount() {\n return this.modalsCount;\n }\n setDismissReason(reason) {\n this.lastDismissReason = reason;\n }\n removeBackdrop() {\n this._backdropLoader.hide();\n this.backdropRef = null;\n }\n /** AFTER PR MERGE MODAL.COMPONENT WILL BE USING THIS CODE*/\n /** Scroll bar tricks */\n /** @internal */\n checkScrollbar() {\n this.isBodyOverflowing = document.body.clientWidth < window.innerWidth;\n this.scrollbarWidth = this.getScrollbarWidth();\n }\n setScrollbar() {\n if (!document) {\n return;\n }\n this.originalBodyPadding = parseInt(window.getComputedStyle(document.body).getPropertyValue('padding-right') || '0', 10);\n }\n resetScrollbar() {\n document.body.style.paddingRight = this.originalBodyPadding + 'px';\n }\n // thx d.walsh\n getScrollbarWidth() {\n const scrollDiv = this.renderer.createElement('div');\n this.renderer.addClass(scrollDiv, ClassName.SCROLLBAR_MEASURER);\n this.renderer.appendChild(document.body, scrollDiv);\n const scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth;\n this.renderer.removeChild(document.body, scrollDiv);\n return scrollbarWidth;\n }\n _createLoaders() {\n const loader = this.clf.createLoader(this.el, this.vcr, this.renderer);\n this.copyEvent(loader.onBeforeShow, this.open);\n this.copyEvent(loader.onShown, this.opened);\n this.copyEvent(loader.onBeforeHide, this.close);\n this.copyEvent(loader.onHidden, this.closed);\n this.loaders.push(loader);\n }\n removeLoaders(level) {\n this.loaders.splice(level - 1, 1);\n this.loaders.forEach((loader, i) => {\n loader.instance.level = i + 1;\n });\n }\n copyEvent(from, to) {\n from.subscribe(() => {\n to.emit(this.lastDismissReason);\n });\n }\n}\nMDBModalService.ɵfac = function MDBModalService_Factory(t) { return new (t || MDBModalService)(ɵngcc0.ɵɵinject(ɵngcc0.RendererFactory2), ɵngcc0.ɵɵinject(ComponentLoaderFactory)); };\nMDBModalService.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: MDBModalService, factory: MDBModalService.ɵfac });\nMDBModalService.ctorParameters = () => [\n { type: RendererFactory2 },\n { type: ComponentLoaderFactory }\n];\n\nclass ModalModule {\n static forRoot() {\n return {\n ngModule: ModalModule,\n providers: [MDBModalService, ComponentLoaderFactory, PositioningService],\n };\n }\n}\nModalModule.ɵfac = function ModalModule_Factory(t) { return new (t || ModalModule)(); };\nModalModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: ModalModule });\nModalModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ imports: [[A11yModule]] });\n\nclass NavbarService {\n constructor() {\n this.navbarLinkClicks = new Subject();\n }\n getNavbarLinkClicks() {\n return this.navbarLinkClicks.asObservable();\n }\n setNavbarLinkClicks() {\n this.navbarLinkClicks.next();\n }\n}\nNavbarService.ɵfac = function NavbarService_Factory(t) { return new (t || NavbarService)(); };\nNavbarService.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: NavbarService, factory: NavbarService.ɵfac });\n\nclass LinksComponent {\n constructor(_navbarService, renderer) {\n this._navbarService = _navbarService;\n this.renderer = renderer;\n this.linkClick = new EventEmitter();\n }\n ngAfterContentInit() {\n setTimeout(() => {\n this.links.forEach((link) => {\n this.renderer.listen(link.nativeElement, 'click', () => {\n this._navbarService.setNavbarLinkClicks();\n });\n });\n }, 0);\n }\n}\nLinksComponent.ɵfac = function LinksComponent_Factory(t) { return new (t || LinksComponent)(ɵngcc0.ɵɵdirectiveInject(NavbarService), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nLinksComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: LinksComponent, selectors: [[\"links\"]], contentQueries: function LinksComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {\n ɵngcc0.ɵɵcontentQuery(dirIndex, RouterLinkWithHref, 1, ElementRef);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.links = _t);\n } }, outputs: { linkClick: \"linkClick\" }, ngContentSelectors: _c0, decls: 1, vars: 0, template: function LinksComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵprojection(0);\n } }, encapsulation: 2 });\nLinksComponent.ctorParameters = () => [\n { type: NavbarService },\n { type: Renderer2 }\n];\nLinksComponent.propDecorators = {\n links: [{ type: ContentChildren, args: [RouterLinkWithHref, { read: ElementRef, descendants: true },] }],\n linkClick: [{ type: Output }]\n};\n\nclass NavbarComponent {\n constructor(renderer, _navbarService, _cdRef, _ngZone, _document) {\n this.renderer = renderer;\n this._navbarService = _navbarService;\n this._cdRef = _cdRef;\n this._ngZone = _ngZone;\n this._document = _document;\n this.containerInside = true;\n this.collapseId = 'navbarCollapse';\n this.scrollSensitivity = 120;\n this.scrollableNavbar = false;\n this.shown = new EventEmitter();\n this.hidden = new EventEmitter();\n this._destroy$ = new Subject();\n this.isShown = false;\n this.duration = 350; // ms\n this.collapse = true;\n this.showClass = false;\n this.collapsing = false;\n this._itemsLength = 0;\n this.ariaExpanded = false;\n this._navbarService\n .getNavbarLinkClicks()\n .pipe(takeUntil(this._destroy$))\n .subscribe(navbarLinkClicks => {\n this.closeNavbarOnClick(navbarLinkClicks);\n });\n }\n closeNavbarOnClick(navbarLinkClicks) {\n this.navbarLinkClicks = navbarLinkClicks;\n if (this.showClass) {\n this.hide();\n }\n }\n addTogglerIconClasses() {\n if (this.iconBackground) {\n if (Array.isArray(this.iconBackground)) {\n this.iconBackground.forEach(iconClass => {\n this.renderer.addClass(this.toggler.nativeElement, iconClass);\n });\n }\n else {\n this.renderer.addClass(this.toggler.nativeElement, this.iconBackground);\n }\n }\n }\n _listenToScroll() {\n this._ngZone.runOutsideAngular(() => {\n fromEvent(this._document, 'scroll')\n .pipe(takeUntil(this._destroy$))\n .subscribe(() => {\n if (window.pageYOffset > this.scrollSensitivity) {\n this.renderer.addClass(this.navbar.nativeElement, 'top-nav-collapse');\n }\n else {\n this.renderer.removeClass(this.navbar.nativeElement, 'top-nav-collapse');\n }\n });\n });\n }\n ngOnInit() {\n const isDoubleNav = this.SideClass.split(' ');\n this.doubleNav = isDoubleNav.indexOf('double-nav') !== -1;\n }\n ngAfterViewInit() {\n if (!this.containerInside) {\n const childrens = Array.from(this.container.nativeElement.children);\n childrens.forEach(child => {\n this.renderer.appendChild(this.navbar.nativeElement, child);\n this.container.nativeElement.remove();\n });\n }\n if (this.el.nativeElement.children.length === 0) {\n this.el.nativeElement.remove();\n }\n this.addTogglerIconClasses();\n if (this.scrollableNavbar) {\n this.renderer.addClass(this.el.nativeElement, 'collapsed-navbar-scroll');\n }\n if (this.navbar.nativeElement.classList.contains('scrolling-navbar')) {\n this._listenToScroll();\n }\n }\n toggle() {\n if (!this.collapsing) {\n if (this.isShown) {\n this.hide();\n }\n else {\n this.show();\n }\n }\n }\n show() {\n this.isShown = true;\n this.collapse = false;\n this.collapsing = true;\n this.ariaExpanded = true;\n setTimeout(() => {\n this.height = this.el.nativeElement.scrollHeight;\n this.renderer.setStyle(this.el.nativeElement, 'height', this.height + 'px');\n }, 0);\n setTimeout(() => {\n this.collapsing = false;\n this.collapse = true;\n this.showClass = true;\n this.shown.emit();\n }, this.duration);\n this._cdRef.markForCheck();\n }\n hide() {\n if (this.isShown) {\n this.isShown = false;\n this.collapse = false;\n this.showClass = false;\n this.collapsing = true;\n this.ariaExpanded = false;\n setTimeout(() => {\n this.renderer.setStyle(this.el.nativeElement, 'height', '0px');\n }, 0);\n setTimeout(() => {\n this.collapsing = false;\n this.collapse = true;\n this.hidden.emit();\n }, this.duration);\n }\n this._cdRef.markForCheck();\n }\n get displayStyle() {\n if (!this.containerInside) {\n return 'flex';\n }\n else {\n return '';\n }\n }\n onResize(event) {\n let breakpoint = 0;\n if (this.SideClass.includes('navbar-expand-xl')) {\n breakpoint = 1200;\n }\n else if (this.SideClass.includes('navbar-expand-lg')) {\n breakpoint = 992;\n }\n else if (this.SideClass.includes('navbar-expand-md')) {\n breakpoint = 768;\n }\n else if (this.SideClass.includes('navbar-expand-sm')) {\n breakpoint = 576;\n }\n else {\n breakpoint = event.target.innerWidth + 1;\n }\n if (event.target.innerWidth < breakpoint) {\n if (!this.isShown) {\n this.collapse = false;\n this.renderer.setStyle(this.el.nativeElement, 'height', '0px');\n this.renderer.setStyle(this.el.nativeElement, 'opacity', '0');\n setTimeout(() => {\n this.height = this.el.nativeElement.scrollHeight;\n this.collapse = true;\n this.renderer.setStyle(this.el.nativeElement, 'opacity', '');\n }, 4);\n }\n }\n else {\n this.collapsing = false;\n this.isShown = false;\n this.showClass = false;\n this.collapse = true;\n this.ariaExpanded = false;\n this.renderer.setStyle(this.el.nativeElement, 'height', '');\n }\n }\n ngAfterContentChecked() {\n if (this.el.nativeElement.firstElementChild) {\n if (this._itemsLength !==\n this.el.nativeElement.firstElementChild.firstElementChild.children.length) {\n this.height = this.el.nativeElement.firstElementChild.firstElementChild.clientHeight;\n this.renderer.setStyle(this.el.nativeElement, 'height', this.height + 'px');\n }\n this._itemsLength = this.el.nativeElement.firstElementChild.firstElementChild.children.length;\n }\n this._cdRef.markForCheck();\n }\n ngOnDestroy() {\n this._destroy$.next();\n this._destroy$.complete();\n }\n}\nNavbarComponent.ɵfac = function NavbarComponent_Factory(t) { return new (t || NavbarComponent)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2), ɵngcc0.ɵɵdirectiveInject(NavbarService), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.NgZone), ɵngcc0.ɵɵdirectiveInject(DOCUMENT)); };\nNavbarComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: NavbarComponent, selectors: [[\"mdb-navbar\"]], contentQueries: function NavbarComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {\n ɵngcc0.ɵɵcontentQuery(dirIndex, LinksComponent, 1);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.links = _t.first);\n } }, viewQuery: function NavbarComponent_Query(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵviewQuery(_c13, 3);\n ɵngcc0.ɵɵviewQuery(_c14, 1);\n ɵngcc0.ɵɵviewQuery(_c15, 3);\n ɵngcc0.ɵɵviewQuery(_c16, 3);\n ɵngcc0.ɵɵviewQuery(_c17, 1);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.el = _t.first);\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.mobile = _t.first);\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.navbar = _t.first);\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.container = _t.first);\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.toggler = _t.first);\n } }, hostBindings: function NavbarComponent_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"resize\", function NavbarComponent_resize_HostBindingHandler($event) { return ctx.onResize($event); }, false, ɵngcc0.ɵɵresolveWindow);\n } }, inputs: { containerInside: \"containerInside\", collapseId: \"collapseId\", scrollSensitivity: \"scrollSensitivity\", scrollableNavbar: \"scrollableNavbar\", iconBackground: \"iconBackground\", SideClass: \"SideClass\" }, outputs: { shown: \"shown\", hidden: \"hidden\" }, ngContentSelectors: _c22, decls: 12, vars: 19, consts: [[\"nav\", \"\"], [3, \"ngClass\", \"ngStyle\"], [\"container\", \"\"], [4, \"ngIf\"], [1, \"navbar-collapse\", \"collapse\", 3, \"ngClass\"], [\"navbar\", \"\"], [\"class\", \"navbar-toggler\", \"type\", \"button\", \"aria-label\", \"Toggle navigation\", \"mdbWavesEffect\", \"\", 3, \"click\", 4, \"ngIf\"], [\"type\", \"button\", \"aria-label\", \"Toggle navigation\", \"mdbWavesEffect\", \"\", 1, \"navbar-toggler\", 3, \"click\"], [\"toggler\", \"\"], [1, \"navbar-toggler-icon\"]], template: function NavbarComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef(_c18);\n ɵngcc0.ɵɵelementStart(0, \"nav\", null, 0);\n ɵngcc0.ɵɵelementStart(2, \"div\", 1, 2);\n ɵngcc0.ɵɵprojection(4);\n ɵngcc0.ɵɵprojection(5, 1);\n ɵngcc0.ɵɵprojection(6, 2);\n ɵngcc0.ɵɵtemplate(7, NavbarComponent_ng_content_7_Template, 1, 0, \"ng-content\", 3);\n ɵngcc0.ɵɵtemplate(8, NavbarComponent_div_8_Template, 2, 1, \"div\", 3);\n ɵngcc0.ɵɵelementStart(9, \"div\", 4, 5);\n ɵngcc0.ɵɵprojection(11, 3);\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n } if (rf & 2) {\n ɵngcc0.ɵɵclassMap(ctx.SideClass);\n ɵngcc0.ɵɵadvance(2);\n ɵngcc0.ɵɵproperty(\"ngClass\", ɵngcc0.ɵɵpureFunction1(11, _c19, ctx.containerInside))(\"ngStyle\", ɵngcc0.ɵɵpureFunction1(13, _c20, ctx.displayStyle));\n ɵngcc0.ɵɵadvance(5);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.doubleNav == true);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.doubleNav == false);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵstyleProp(\"height\", ctx.height);\n ɵngcc0.ɵɵproperty(\"ngClass\", ɵngcc0.ɵɵpureFunction3(15, _c21, ctx.collapse, ctx.showClass, ctx.collapsing));\n ɵngcc0.ɵɵattribute(\"id\", ctx.collapseId);\n } }, directives: [ɵngcc1.NgClass, ɵngcc1.NgStyle, ɵngcc1.NgIf], styles: [\".navbar{box-shadow:0 2px 5px 0 rgba(0,0,0,.16),0 2px 10px 0 rgba(0,0,0,.12);font-weight:300}.navbar form .md-form input{margin:0 5px 1px 8px}.navbar .breadcrumb{margin:0;padding:.3rem 0 0 1rem;background-color:inherit;font-size:15px;font-weight:300}.navbar .breadcrumb .breadcrumb-item{color:#fff}.navbar .breadcrumb .breadcrumb-item.active,.navbar .breadcrumb .breadcrumb-item:before{color:hsla(0,0%,100%,.65)}.navbar .navbar-toggler{outline:0;border-width:0}.navbar .nav-flex-icons{flex-direction:row}@media (max-width:992px){.navbar .container{width:100%}.navbar .container .navbar-toggler-right{right:0}}.navbar .nav-item .nav-link{display:block}.navbar .nav-item .nav-link.disabled:active{pointer-events:none}.navbar .nav-item .nav-link .fab,.navbar .nav-item .nav-link .far,.navbar .nav-item .nav-link .fas{padding-right:3px;padding-left:3px}@media (max-width:992px){.navbar .nav-item .nav-link{padding-right:6px;padding-left:6px}}.navbar .dropdown-menu{position:absolute!important;margin-top:0}.navbar .dropdown-menu a{padding:10px;font-size:.9375rem;font-weight:300;color:#000}@media (max-width:600px){.navbar .dropdown-menu form{width:17rem}}@media (min-width:600px){.navbar .dropdown-menu form{width:22rem}}.navbar.navbar-light .navbar-nav .nav-item .nav-link.disbled,.navbar.navbar-light .navbar-nav .nav-item .nav-link.disbled:hover{color:rgba(0,0,0,.5)}.navbar.navbar-light .navbar-toggler-icon{background-image:url(\\\"data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 0, 0.9)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E\\\");cursor:pointer}.navbar.navbar-light .breadcrumb .nav-item .nav-link,.navbar.navbar-light .navbar-nav .nav-item .nav-link{color:#000;transition:.35s}.navbar.navbar-light .breadcrumb .nav-item .nav-link:hover,.navbar.navbar-light .navbar-nav .nav-item .nav-link:hover{color:rgba(0,0,0,.75)}.navbar.navbar-light .breadcrumb .nav-item.active>.nav-link,.navbar.navbar-light .navbar-nav .nav-item.active>.nav-link{background-color:rgba(0,0,0,.1)}.navbar.navbar-light .breadcrumb .nav-item.active>.nav-link:hover,.navbar.navbar-light .navbar-nav .nav-item.active>.nav-link:hover,.navbar.navbar-light .navbar-toggler{color:#000}.navbar.navbar-light form .md-form input{border-bottom:1px solid #000}.navbar.navbar-light form .md-form input:focus:not([readonly]){border-color:#4285f4}.navbar.navbar-light form .md-form .form-control{color:#000}.navbar.navbar-light form .md-form .form-control::-moz-placeholder{color:#000;font-weight:300}.navbar.navbar-light form .md-form .form-control:-ms-input-placeholder{color:#000;font-weight:300}.navbar.navbar-light form .md-form .form-control::placeholder{color:#000;font-weight:300}.navbar.navbar-dark .navbar-nav .nav-item .nav-link.disbled,.navbar.navbar-dark .navbar-nav .nav-item .nav-link.disbled:hover{color:hsla(0,0%,100%,.5)}.navbar.navbar-dark .navbar-toggler-icon{background-image:url(\\\"data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.9)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E\\\");cursor:pointer}.navbar.navbar-dark .breadcrumb .nav-item .nav-link,.navbar.navbar-dark .navbar-nav .nav-item .nav-link{color:#fff;transition:.35s}.navbar.navbar-dark .breadcrumb .nav-item .nav-link:hover,.navbar.navbar-dark .navbar-nav .nav-item .nav-link:hover{color:hsla(0,0%,100%,.75)}.navbar.navbar-dark .breadcrumb .nav-item.active>.nav-link,.navbar.navbar-dark .navbar-nav .nav-item.active>.nav-link{background-color:hsla(0,0%,100%,.1)}.navbar.navbar-dark .breadcrumb .nav-item.active>.nav-link:hover,.navbar.navbar-dark .navbar-nav .nav-item.active>.nav-link:hover,.navbar.navbar-dark .navbar-toggler{color:#fff}.navbar.navbar-dark form .md-form input{border-bottom:1px solid #fff}.navbar.navbar-dark form .md-form input:focus:not([readonly]){border-color:#4285f4}.navbar.navbar-dark form .md-form .form-control{color:#fff}.navbar.navbar-dark form .md-form .form-control::-moz-placeholder{color:#fff;font-weight:300}.navbar.navbar-dark form .md-form .form-control:-ms-input-placeholder{color:#fff;font-weight:300}.navbar.navbar-dark form .md-form .form-control::placeholder{color:#fff;font-weight:300}@media (min-width:600px){.navbar.scrolling-navbar{transition:background .5s ease-in-out,padding .5s ease-in-out;padding-top:12px;padding-bottom:12px}.navbar.scrolling-navbar .navbar-nav>li{transition-duration:1s}.navbar.scrolling-navbar.top-nav-collapse{padding-top:5px;padding-bottom:5px}}@media (min-width:1200px){.navbar.navbar-expand-xl links,.navbar.navbar-expand-xl navlinks{display:flex;flex-direction:row;align-items:center!important;align-self:center!important;width:100%}}@media (min-width:992px){.navbar>logo>div>a img{margin-left:20px}.navbar.navbar-expand-lg links,.navbar.navbar-expand-lg navlinks{display:flex;flex-direction:row;align-items:center!important;align-self:center!important;width:100%}}@media (min-width:768px){.navbar.navbar-expand-md links,.navbar.navbar-expand-md navlinks{display:flex;flex-direction:row;width:100%}}@media (min-width:576px){.navbar.navbar-expand-sm links,.navbar.navbar-expand-sm navlinks{display:flex;flex-direction:row;width:100%}}@media (max-width:992px){.collapsed-navbar-scroll{max-height:calc(100vh - 40px);overflow-y:scroll}}.navbar-container{order:-1;width:50px!important;padding-left:5px;padding-right:5px}.navbar-nav .dropdown-menu-right.dropdown-menu{left:unset}.navbar-nav .dropdown-menu{top:100%!important;transform:translateZ(0)!important}.breadcrumbs{display:flex;padding-left:5px;padding-right:5px;order:0;align-items:center}@media (min-width:1441px){.breadcrumbs{margin-left:-.6rem}}@supports (-ms-ime-align:auto){@media (min-width:992px){.ie-nav .navbar-nav.nav-flex-icons{position:absolute;top:30%;right:0}.ie-nav .navbar-nav{position:absolute;top:30%;margin-left:88px}.ie-nav .navbar-brand>img{margin-top:-2px;padding-right:16px}}.ie-nav .navbar-toggler{position:absolute;margin-top:-40px;right:0}@media (min-width:992px){.intro-non-fixed-nav>links .navbar-collapse{display:inline-flex!important;align-items:center!important;justify-content:space-between!important}}@media (min-width:992px){.intro-fixed-nav .navbar-nav.nav-flex-icons{position:absolute;top:30%;right:0}.intro-fixed-nav .navbar-nav{position:absolute;top:30%;margin-left:88px}.intro-fixed-nav .navbar-brand img{margin-top:-2px;padding-right:16px}}.intro-fixed-nav .navbar-toggler{position:absolute;margin-top:-40px;right:0}}@media (-ms-high-contrast:active) and (min-width:992px),(-ms-high-contrast:none) and (min-width:992px){.ie-nav .navbar-nav.nav-flex-icons{position:absolute;top:30%;right:0}.ie-nav .navbar-nav{position:absolute;top:30%;margin-left:88px}.ie-nav .navbar-brand>img{margin-top:-2px;padding-right:16px}}@media (-ms-high-contrast:active),(-ms-high-contrast:none){.ie-nav .navbar-toggler{position:absolute;margin-top:-40px;right:0}}@media (-ms-high-contrast:active) and (min-width:992px),(-ms-high-contrast:none) and (min-width:992px){.intro-non-fixed-nav>links .navbar-collapse{display:inline-flex!important;align-items:center!important;justify-content:space-between!important}}@media (-ms-high-contrast:active) and (min-width:992px),(-ms-high-contrast:none) and (min-width:992px){.intro-fixed-nav .navbar-nav.nav-flex-icons{position:absolute;top:30%;right:0}.intro-fixed-nav .navbar-nav{position:absolute;top:30%;margin-left:88px}.intro-fixed-nav .navbar-brand img{margin-top:-2px;padding-right:16px}}@media (-ms-high-contrast:active),(-ms-high-contrast:none){.intro-fixed-nav .navbar-toggler{position:absolute;margin-top:-40px;right:0}}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:none}\"], encapsulation: 2, changeDetection: 0 });\nNavbarComponent.ctorParameters = () => [\n { type: Renderer2 },\n { type: NavbarService },\n { type: ChangeDetectorRef },\n { type: NgZone },\n { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] }\n];\nNavbarComponent.propDecorators = {\n iconBackground: [{ type: Input }],\n SideClass: [{ type: Input }],\n containerInside: [{ type: Input }],\n collapseId: [{ type: Input }],\n scrollSensitivity: [{ type: Input }],\n scrollableNavbar: [{ type: Input }],\n shown: [{ type: Output }],\n hidden: [{ type: Output }],\n el: [{ type: ViewChild, args: ['navbar', { static: true },] }],\n mobile: [{ type: ViewChild, args: ['mobile',] }],\n navbar: [{ type: ViewChild, args: ['nav', { static: true },] }],\n container: [{ type: ViewChild, args: ['container', { static: true },] }],\n toggler: [{ type: ViewChild, args: ['toggler',] }],\n links: [{ type: ContentChild, args: [LinksComponent,] }],\n onResize: [{ type: HostListener, args: ['window:resize', ['$event'],] }]\n};\n\nclass LogoComponent {\n}\nLogoComponent.ɵfac = function LogoComponent_Factory(t) { return new (t || LogoComponent)(); };\nLogoComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: LogoComponent, selectors: [[\"logo\"], [\"mdb-navbar-brand\"]], ngContentSelectors: _c0, decls: 1, vars: 0, template: function LogoComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵprojection(0);\n } }, encapsulation: 2 });\n\nclass NavlinksComponent {\n constructor(_navbarService, renderer) {\n this._navbarService = _navbarService;\n this.renderer = renderer;\n this.linkClick = new EventEmitter();\n }\n ngAfterContentInit() {\n setTimeout(() => {\n this.links.forEach((link) => {\n this.renderer.listen(link.nativeElement, 'click', () => {\n this._navbarService.setNavbarLinkClicks();\n });\n });\n }, 0);\n }\n}\nNavlinksComponent.ɵfac = function NavlinksComponent_Factory(t) { return new (t || NavlinksComponent)(ɵngcc0.ɵɵdirectiveInject(NavbarService), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nNavlinksComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: NavlinksComponent, selectors: [[\"navlinks\"]], contentQueries: function NavlinksComponent_ContentQueries(rf, ctx, dirIndex) { if (rf & 1) {\n ɵngcc0.ɵɵcontentQuery(dirIndex, RouterLinkWithHref, 1, ElementRef);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.links = _t);\n } }, outputs: { linkClick: \"linkClick\" }, ngContentSelectors: _c0, decls: 1, vars: 0, template: function NavlinksComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵprojection(0);\n } }, encapsulation: 2 });\nNavlinksComponent.ctorParameters = () => [\n { type: NavbarService },\n { type: Renderer2 }\n];\nNavlinksComponent.propDecorators = {\n links: [{ type: ContentChildren, args: [RouterLinkWithHref, { read: ElementRef, descendants: true },] }],\n linkClick: [{ type: Output }]\n};\n\nclass NavbarModule {\n}\nNavbarModule.ɵfac = function NavbarModule_Factory(t) { return new (t || NavbarModule)(); };\nNavbarModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: NavbarModule });\nNavbarModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ providers: [NavbarService], imports: [[CommonModule]] });\n\n/**\n * Configuration service for the Popover directive.\n * You can inject this service, typically in your root component, and customize\n * the values of its properties in order to provide default values for all the\n * popovers used in the application.\n */\nclass PopoverConfig {\n constructor() {\n /**\n * Placement of a popover. Accepts: \"top\", \"bottom\", \"left\", \"right\"\n */\n this.placement = 'top';\n /**\n * Specifies events that should trigger. Supports a space separated list of\n * event names.\n */\n this.triggers = 'click';\n }\n}\nPopoverConfig.ɵfac = function PopoverConfig_Factory(t) { return new (t || PopoverConfig)(); };\nPopoverConfig.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: PopoverConfig, factory: PopoverConfig.ɵfac });\n\nclass PopoverContainerComponent {\n constructor(config) {\n this.show = '!isBs3';\n this.role = 'tooltip';\n Object.assign(this, config);\n }\n get isBs3() {\n return isBs3();\n }\n ngOnInit() {\n this.class =\n 'popover-fadeIn popover in popover-' +\n this.placement +\n ' ' +\n this.placement +\n ' bs-popover-' +\n this.placement +\n ' ' +\n this.containerClass;\n }\n}\nPopoverContainerComponent.ɵfac = function PopoverContainerComponent_Factory(t) { return new (t || PopoverContainerComponent)(ɵngcc0.ɵɵdirectiveInject(PopoverConfig)); };\nPopoverContainerComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: PopoverContainerComponent, selectors: [[\"mdb-popover-container\"]], hostVars: 5, hostBindings: function PopoverContainerComponent_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵattribute(\"role\", ctx.role);\n ɵngcc0.ɵɵclassMap(ctx.class);\n ɵngcc0.ɵɵclassProp(\"show\", ctx.show);\n } }, inputs: { placement: \"placement\", title: \"title\" }, ngContentSelectors: _c0, decls: 3, vars: 2, consts: [[\"class\", \"popover-header\", 3, \"ngClass\", 4, \"ngIf\"], [1, \"popover-body\", 3, \"ngClass\"], [1, \"popover-header\", 3, \"ngClass\"]], template: function PopoverContainerComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵtemplate(0, PopoverContainerComponent_h3_0_Template, 2, 2, \"h3\", 0);\n ɵngcc0.ɵɵelementStart(1, \"div\", 1);\n ɵngcc0.ɵɵprojection(2);\n ɵngcc0.ɵɵelementEnd();\n } if (rf & 2) {\n ɵngcc0.ɵɵproperty(\"ngIf\", ctx.title);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngClass\", ctx.bodyClass);\n } }, directives: [ɵngcc1.NgIf, ɵngcc1.NgClass], styles: [\".popover.bs-tether-element-attached-bottom,.popover.popover-top{margin-top:-10px}.popover.bs-tether-element-attached-bottom:after,.popover.bs-tether-element-attached-bottom:before,.popover.popover-top:after,.popover.popover-top:before{left:50%;border-bottom-width:0}.popover.bs-tether-element-attached-bottom:before,.popover.popover-top:before{bottom:-11px;margin-left:-11px;border-top-color:rgba(0,0,0,.25)}.popover.bs-tether-element-attached-bottom:after,.popover.popover-top:after{bottom:-10px;margin-left:-10px;border-top-color:#fff}.popover.bs-tether-element-attached-left,.popover.popover-right{margin-left:10px}.popover.bs-tether-element-attached-left:after,.popover.bs-tether-element-attached-left:before,.popover.popover-right:after,.popover.popover-right:before{top:50%;border-left-width:0}.popover.bs-tether-element-attached-left:before,.popover.popover-right:before{left:-11px;margin-top:-11px;border-right-color:rgba(0,0,0,.25)}.popover.bs-tether-element-attached-left:after,.popover.popover-right:after{left:-10px;margin-top:-10px;border-right-color:#fff}.popover.bs-tether-element-attached-top,.popover.popover-bottom{margin-top:10px}.popover.bs-tether-element-attached-top:after,.popover.bs-tether-element-attached-top:before,.popover.popover-bottom:after,.popover.popover-bottom:before{left:50%;border-top-width:0}.popover.bs-tether-element-attached-top:before,.popover.popover-bottom:before{top:-11px;margin-left:-11px;border-bottom-color:rgba(0,0,0,.25)}.popover.bs-tether-element-attached-top:after,.popover.popover-bottom:after{top:-10px;margin-left:-10px;border-bottom-color:#f7f7f7}.popover.bs-tether-element-attached-top .popover-title:before,.popover.popover-bottom .popover-title:before{position:absolute;top:0;left:50%;display:block;width:20px;margin-left:-10px;content:\\\"\\\";border-bottom:1px solid #f7f7f7}.popover.bs-tether-element-attached-right,.popover.popover-left{margin-left:-10px}.popover.bs-tether-element-attached-right:after,.popover.bs-tether-element-attached-right:before,.popover.popover-left:after,.popover.popover-left:before{top:50%;border-right-width:0}.popover.bs-tether-element-attached-right:before,.popover.popover-left:before{right:-11px;margin-top:-11px;border-left-color:rgba(0,0,0,.25)}.popover.bs-tether-element-attached-right:after,.popover.popover-left:after{right:-10px;margin-top:-10px;border-left-color:#fff}.popover:after,.popover:before{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover:before{content:\\\"\\\";border-width:11px}.popover:after{content:\\\"\\\";border-width:10px}@-webkit-keyframes fadeInPopover{0%{opacity:0}to{opacity:1}}@keyframes fadeInPopover{0%{opacity:0}to{opacity:1}}.popover-fadeIn{-webkit-animation-name:fadeInPopover;animation-name:fadeInPopover;-webkit-animation-delay:.2s;animation-delay:.2s;-webkit-animation-duration:.2s;animation-duration:.2s;-webkit-animation-fill-mode:both;animation-fill-mode:both}\"], encapsulation: 2, changeDetection: 0 });\nPopoverContainerComponent.ctorParameters = () => [\n { type: PopoverConfig }\n];\nPopoverContainerComponent.propDecorators = {\n placement: [{ type: Input }],\n title: [{ type: Input }],\n show: [{ type: HostBinding, args: ['class.show',] }],\n role: [{ type: HostBinding, args: ['attr.role',] }],\n class: [{ type: HostBinding, args: ['class',] }]\n};\n\n/**\n * A lightweight, extensible directive for fancy popover creation.\n */\nclass PopoverDirective {\n constructor(_elementRef, _renderer, _viewContainerRef, _config, cis, _positionService) {\n this._positionService = _positionService;\n this.dynamicPosition = true;\n this.outsideClick = false;\n this.popoverDisabled = false;\n this._popover = cis\n .createLoader(_elementRef, _viewContainerRef, _renderer)\n .provide({ provide: PopoverConfig, useValue: _config });\n Object.assign(this, _config);\n this.onShown = this._popover.onShown;\n this.shown = this._popover.onShown;\n this.onHidden = this._popover.onHidden;\n this.hidden = this._popover.onHidden;\n }\n /**\n * Returns whether or not the popover is currently being shown\n */\n get isOpen() {\n return this._popover.isShown;\n }\n set isOpen(value) {\n if (value) {\n this.show();\n }\n else {\n this.hide();\n }\n }\n get hasContent() {\n if (typeof this.mdbPopover === 'string') {\n return this.mdbPopover.length > 0;\n }\n return true;\n }\n /**\n * Opens an element’s popover. This is considered a “manual” triggering of\n * the popover.\n */\n show() {\n if (this._popover.isShown || this.popoverDisabled || !this.hasContent) {\n return;\n }\n this._positionService.setOptions({\n modifiers: {\n flip: {\n enabled: this.dynamicPosition,\n },\n preventOverflow: {\n enabled: this.dynamicPosition,\n },\n },\n });\n this._popover\n .attach(PopoverContainerComponent)\n .to(this.container)\n .position({ attachment: this.placement })\n .show({\n content: this.mdbPopover,\n placement: this.placement,\n title: this.mdbPopoverHeader || this.popoverTitle,\n containerClass: this.containerClass ? this.containerClass : '',\n bodyClass: this.bodyClass ? this.bodyClass : '',\n headerClass: this.headerClass ? this.headerClass : '',\n });\n this.isOpen = true;\n if (!this.dynamicPosition) {\n this._positionService.calcPosition();\n this._positionService.deletePositionElement(this._popover._componentRef.location);\n }\n }\n /**\n * Closes an element’s popover. This is considered a “manual” triggering of\n * the popover.\n */\n hide() {\n if (this.isOpen) {\n this._popover.hide();\n this.isOpen = false;\n }\n }\n /**\n * Toggles an element’s popover. This is considered a “manual” triggering of\n * the popover.\n */\n toggle() {\n if (this.isOpen) {\n return this.hide();\n }\n this.show();\n }\n onclick(event) {\n if (this.triggers.toString().includes('focus')) {\n event.stopPropagation();\n this.show();\n }\n }\n onblur() {\n if (this.triggers.toString().includes('focus') && this.isOpen) {\n this.hide();\n }\n }\n // fix(popover): popover with outsideClick='true' will now close after clicking in document on iPad Safari\n onTouchStart(event) {\n if (this.outsideClick && !event.target.classList.contains('popover-body')) {\n this.hide();\n }\n }\n ngOnInit() {\n this._popover.listen({\n triggers: this.triggers,\n outsideClick: this.outsideClick,\n show: () => this.show(),\n });\n }\n dispose() {\n this._popover.dispose();\n }\n ngOnDestroy() {\n this._popover.dispose();\n }\n}\nPopoverDirective.ɵfac = function PopoverDirective_Factory(t) { return new (t || PopoverDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ViewContainerRef), ɵngcc0.ɵɵdirectiveInject(PopoverConfig), ɵngcc0.ɵɵdirectiveInject(ComponentLoaderFactory), ɵngcc0.ɵɵdirectiveInject(PositioningService)); };\nPopoverDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: PopoverDirective, selectors: [[\"\", \"mdbPopover\", \"\"]], hostBindings: function PopoverDirective_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"click\", function PopoverDirective_click_HostBindingHandler($event) { return ctx.onclick($event); })(\"click\", function PopoverDirective_click_HostBindingHandler() { return ctx.onblur(); }, false, ɵngcc0.ɵɵresolveWindow)(\"touchstart\", function PopoverDirective_touchstart_HostBindingHandler($event) { return ctx.onTouchStart($event); }, false, ɵngcc0.ɵɵresolveDocument);\n } }, inputs: { dynamicPosition: \"dynamicPosition\", outsideClick: \"outsideClick\", popoverDisabled: \"popoverDisabled\", isOpen: \"isOpen\", containerClass: \"containerClass\", bodyClass: \"bodyClass\", headerClass: \"headerClass\", mdbPopover: \"mdbPopover\", mdbPopoverHeader: \"mdbPopoverHeader\", popoverTitle: \"popoverTitle\", placement: \"placement\", triggers: \"triggers\", container: \"container\" }, outputs: { onShown: \"onShown\", shown: \"shown\", onHidden: \"onHidden\", hidden: \"hidden\" }, exportAs: [\"bs-mdbPopover\"] });\nPopoverDirective.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 },\n { type: ViewContainerRef },\n { type: PopoverConfig },\n { type: ComponentLoaderFactory },\n { type: PositioningService }\n];\nPopoverDirective.propDecorators = {\n containerClass: [{ type: Input }],\n bodyClass: [{ type: Input }],\n headerClass: [{ type: Input }],\n mdbPopover: [{ type: Input }],\n mdbPopoverHeader: [{ type: Input }],\n popoverTitle: [{ type: Input }],\n placement: [{ type: Input }],\n triggers: [{ type: Input }],\n container: [{ type: Input }],\n isOpen: [{ type: Input }],\n dynamicPosition: [{ type: Input }],\n outsideClick: [{ type: Input }],\n popoverDisabled: [{ type: Input }],\n onShown: [{ type: Output }],\n shown: [{ type: Output }],\n onHidden: [{ type: Output }],\n hidden: [{ type: Output }],\n onclick: [{ type: HostListener, args: ['click', ['$event'],] }],\n onblur: [{ type: HostListener, args: ['window:click',] }],\n onTouchStart: [{ type: HostListener, args: ['document:touchstart', ['$event'],] }]\n};\n\nclass PopoverModule {\n static forRoot() {\n return {\n ngModule: PopoverModule,\n providers: [PopoverConfig, ComponentLoaderFactory, PositioningService],\n };\n }\n}\nPopoverModule.ɵfac = function PopoverModule_Factory(t) { return new (t || PopoverModule)(); };\nPopoverModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: PopoverModule });\nPopoverModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ imports: [[CommonModule]] });\n\n// tslint:disable-next-line:component-class-suffix\nclass MdbTableDirective {\n constructor(el, renderer) {\n this.el = el;\n this.renderer = renderer;\n this.stickyHeader = false;\n this.stickyHeaderBgColor = '#f2f2f2';\n this.stickyHeaderTextColor = '#000000';\n this.stickyFooter = false;\n this.stickyFooterBgColor = '#f2f2f2';\n this.stickyFooterTextColor = '#000000';\n this._dataSource = [];\n this._dataSourceChanged = new Subject();\n }\n addRow(newRow) {\n this.getDataSource().push(newRow);\n }\n addRowAfter(index, row) {\n this.getDataSource().splice(index, 0, row);\n }\n removeRow(index) {\n this.getDataSource().splice(index, 1);\n }\n rowRemoved() {\n return new Observable((observer) => {\n observer.next(true);\n });\n }\n removeLastRow() {\n this.getDataSource().pop();\n }\n getDataSource() {\n return this._dataSource;\n }\n setDataSource(data) {\n this._dataSource = data;\n this._dataSourceChanged.next(this.getDataSource());\n }\n dataSourceChange() {\n return this._dataSourceChanged;\n }\n filterLocalDataBy(searchKey) {\n return this.getDataSource().filter((obj) => {\n return Object.keys(obj).some((key) => {\n if (obj[key]) {\n // Fix(tableSearch): table search will now able to filter through nested data\n return JSON.stringify(obj)\n .toLowerCase()\n .includes(searchKey);\n }\n });\n });\n }\n filterLocalDataByFields(searchKey, keys) {\n return this.getDataSource().filter((obj) => {\n return Object.keys(obj).some((key) => {\n if (obj[key]) {\n if (keys.includes(key)) {\n if (obj[key].toLowerCase().includes(searchKey)) {\n return obj[key];\n }\n }\n }\n });\n });\n }\n filterLocalDataByMultipleFields(searchKey, keys) {\n const items = searchKey.split(' ').map((x) => x.toLowerCase());\n return this.getDataSource().filter((x) => {\n for (const item of items) {\n let flag = false;\n if (keys !== undefined) {\n for (const prop in x) {\n if (x[prop] && x.hasOwnProperty(prop)) {\n if (keys.includes(prop)) {\n if (x[prop].toLowerCase().indexOf(item) !== -1) {\n flag = true;\n break;\n }\n }\n }\n }\n }\n if (keys === undefined) {\n for (const prop in x) {\n if (x.hasOwnProperty(prop) && x[prop].toLowerCase().indexOf(item) !== -1) {\n flag = true;\n break;\n }\n }\n }\n if (!flag) {\n return false;\n }\n }\n return true;\n });\n }\n searchLocalDataBy(searchKey) {\n if (!searchKey) {\n return this.getDataSource();\n }\n if (searchKey) {\n return this.filterLocalDataBy(searchKey.toLowerCase());\n }\n }\n searchLocalDataByFields(searchKey, keys) {\n if (!searchKey) {\n return this.getDataSource();\n }\n if (searchKey && keys.length > 0) {\n return this.filterLocalDataByFields(searchKey.toLowerCase(), keys);\n }\n if (!keys || keys.length === 0) {\n return this.filterLocalDataBy(searchKey.toLowerCase());\n }\n }\n searchLocalDataByMultipleFields(searchKey, keys) {\n if (!searchKey) {\n return this.getDataSource();\n }\n if (searchKey && keys !== undefined) {\n return this.filterLocalDataByMultipleFields(searchKey.toLowerCase(), keys);\n }\n }\n searchDataObservable(searchKey) {\n return new Observable((observer) => {\n observer.next(this.searchLocalDataBy(searchKey));\n });\n }\n ngOnInit() {\n this.renderer.addClass(this.el.nativeElement, 'table');\n }\n ngAfterViewInit() {\n // Fix(stickyHeader): resolved problem with not working stickyHeader=\"true\" on Chrome\n if (this.stickyHeader) {\n this.makeSticky('thead', 'sticky-top', this.stickyHeaderBgColor, this.stickyHeaderTextColor);\n }\n if (this.stickyFooter) {\n this.makeSticky('tfoot', 'sticky-bottom', this.stickyFooterBgColor, this.stickyFooterTextColor);\n }\n }\n makeSticky(query, elementClass, bgColor, color) {\n const tableHead = this.el.nativeElement.querySelector(query);\n Array.from(tableHead.firstElementChild.children).forEach((child) => {\n this.renderer.addClass(child, elementClass);\n if (bgColor) {\n this.renderer.setStyle(child, 'background-color', bgColor);\n }\n if (color) {\n this.renderer.setStyle(child, 'color', color);\n }\n });\n }\n}\nMdbTableDirective.ɵfac = function MdbTableDirective_Factory(t) { return new (t || MdbTableDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nMdbTableDirective.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: MdbTableDirective, selectors: [[\"\", \"mdbTable\", \"\"]], hostVars: 12, hostBindings: function MdbTableDirective_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵclassProp(\"table-striped\", ctx.striped)(\"table-bordered\", ctx.bordered)(\"table-borderless\", ctx.borderless)(\"table-hover\", ctx.hover)(\"table-sm\", ctx.small)(\"table-responsive\", ctx.responsive);\n } }, inputs: { stickyHeader: \"stickyHeader\", stickyHeaderBgColor: \"stickyHeaderBgColor\", stickyHeaderTextColor: \"stickyHeaderTextColor\", stickyFooter: \"stickyFooter\", stickyFooterBgColor: \"stickyFooterBgColor\", stickyFooterTextColor: \"stickyFooterTextColor\", striped: \"striped\", bordered: \"bordered\", borderless: \"borderless\", hover: \"hover\", small: \"small\", responsive: \"responsive\" }, exportAs: [\"mdbTable\"], attrs: _c23, ngContentSelectors: _c0, decls: 1, vars: 0, template: function MdbTableDirective_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵprojection(0);\n } }, styles: [\"table th{font-size:.9rem;font-weight:400}table td{font-size:.9rem;font-weight:300}table thead td svg.ascending,table thead td svg.descending,table thead th svg.ascending,table thead th svg.descending{display:none;max-height:.9rem;max-width:.9rem}table thead td[aria-sort=ascending] svg.ascending,table thead td[aria-sort=descending] svg.descending,table thead th[aria-sort=ascending] svg.ascending,table thead th[aria-sort=descending] svg.descending{display:unset}table thead td:not([aria-sort]):hover svg.descending,table thead td[aria-sort=constant]:hover svg.descending,table thead th:not([aria-sort]):hover svg.descending,table thead th[aria-sort=constant]:hover svg.descending{display:unset;opacity:.5}table tfoot .sticky-bottom{position:sticky;bottom:0}table.table{margin-bottom:0}table.table thead th{border-top:none;border-bottom-width:1px}table.table td,table.table th{padding:1.1rem 16px 1rem}table.table .label-table{margin:0;padding:0;line-height:.94rem;height:.94rem}table.table.btn-table td{vertical-align:middle}table.table-hover tbody tr:hover{transition:.5s;background-color:rgba(0,0,0,.075)}table .th-lg{min-width:9rem}table .th-sm{min-width:6rem}table.table-sm td,table.table-sm th{padding-top:.6rem;padding-bottom:.6rem}.table-scroll-vertical{max-height:300px;overflow-y:auto}.table-fixed{table-layout:fixed}.table-responsive-lg>.table-bordered,.table-responsive-md>.table-bordered,.table-responsive-sm>.table-bordered,.table-responsive-xl>.table-bordered,.table-responsive>.table-bordered{border-top:1px solid #dee2e6}\"], encapsulation: 2 });\nMdbTableDirective.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 }\n];\nMdbTableDirective.propDecorators = {\n striped: [{ type: Input }, { type: HostBinding, args: ['class.table-striped',] }],\n bordered: [{ type: Input }, { type: HostBinding, args: ['class.table-bordered',] }],\n borderless: [{ type: Input }, { type: HostBinding, args: ['class.table-borderless',] }],\n hover: [{ type: Input }, { type: HostBinding, args: ['class.table-hover',] }],\n small: [{ type: Input }, { type: HostBinding, args: ['class.table-sm',] }],\n responsive: [{ type: Input }, { type: HostBinding, args: ['class.table-responsive',] }],\n stickyHeader: [{ type: Input }],\n stickyHeaderBgColor: [{ type: Input }],\n stickyHeaderTextColor: [{ type: Input }],\n stickyFooter: [{ type: Input }],\n stickyFooterBgColor: [{ type: Input }],\n stickyFooterTextColor: [{ type: Input }]\n};\n\nvar SortDirection;\n(function (SortDirection) {\n SortDirection[\"ASC\"] = \"ascending\";\n SortDirection[\"DESC\"] = \"descending\";\n SortDirection[\"CONST\"] = \"constant\";\n})(SortDirection || (SortDirection = {}));\nclass MdbTableSortDirective {\n constructor(el, renderer) {\n this.el = el;\n this.renderer = renderer;\n this.data = [];\n this.sortedInto = true;\n this.order = SortDirection.CONST;\n this.dataSource = [];\n this.sortIcon = false;\n this.resetSortDirection = false;\n this.sortEnd = new EventEmitter();\n this.sorted = new EventEmitter();\n }\n onclick() {\n this.sortDataBy(this.trimWhiteSigns(this.sortBy.toString()));\n this.sortEnd.emit(this.dataSource);\n this.sorted.emit({\n data: this.dataSource,\n sortOrder: this.order,\n sortBy: this.sortBy,\n });\n this.removeSort();\n }\n trimWhiteSigns(headElement) {\n return headElement.replace(/ /g, '');\n }\n moveArrayItem(arr, oldIndex, newIndex) {\n while (oldIndex < 0) {\n oldIndex += arr.length;\n }\n while (newIndex < 0) {\n newIndex += arr.length;\n }\n if (newIndex >= arr.length) {\n let k = newIndex - arr.length;\n while (k-- + 1) {\n arr.push(null);\n }\n }\n arr.splice(newIndex, 0, arr.splice(oldIndex, 1)[0]);\n return arr;\n }\n sortDataBy(key) {\n let ariaPass = true;\n const setAria = (sort, id) => {\n if (ariaPass) {\n let nextSortType = '';\n if (this.resetSortDirection) {\n if (sort === SortDirection.CONST) {\n nextSortType = SortDirection.DESC;\n }\n else if (sort === SortDirection.DESC) {\n nextSortType = SortDirection.ASC;\n }\n else if (sort === SortDirection.ASC) {\n nextSortType = SortDirection.CONST;\n }\n }\n else {\n if (sort === SortDirection.DESC) {\n nextSortType = SortDirection.ASC;\n }\n else if (sort === SortDirection.ASC) {\n nextSortType = SortDirection.DESC;\n }\n }\n this.renderer.setAttribute(this.el.nativeElement, 'aria-sort', sort);\n this.renderer.setAttribute(this.el.nativeElement, 'aria-label', `${id}: activate to sort column ${nextSortType}`);\n ariaPass = false;\n }\n };\n key = key.split('.');\n if (this.resetSortDirection) {\n const sortFn = (a, b) => {\n a = a[key];\n b = b[key];\n return a > b ? -1 : 1;\n };\n if (this.order === SortDirection.CONST) {\n setAria(SortDirection.DESC, key);\n this.order = SortDirection.DESC;\n this.dataSource.sort(sortFn);\n }\n else if (this.order === SortDirection.DESC) {\n setAria(SortDirection.ASC, key);\n this.order = SortDirection.ASC;\n this.dataSource.sort(sortFn).reverse();\n }\n else if (this.order === SortDirection.ASC) {\n setAria(SortDirection.CONST, key);\n this.order = SortDirection.CONST;\n this.data.map((el, index) => {\n this.dataSource[index] = el;\n });\n }\n }\n else {\n this.dataSource.sort((a, b) => {\n let i = 0;\n while (i < key.length) {\n a = a[key[i]];\n b = b[key[i]];\n i++;\n }\n if (a < b) {\n setAria(SortDirection.ASC, key);\n this.order = SortDirection.ASC;\n return this.sortedInto ? 1 : -1;\n }\n else if (a > b) {\n setAria(SortDirection.DESC, key);\n this.order = SortDirection.DESC;\n return this.sortedInto ? -1 : 1;\n }\n else if (a == null || b == null) {\n this.order = SortDirection.CONST;\n return 1;\n }\n else {\n this.order = SortDirection.CONST;\n return 0;\n }\n });\n this.sortedInto = !this.sortedInto;\n }\n }\n ngOnInit() {\n const key = this.trimWhiteSigns(this.sortBy.toString()).split('.');\n this.renderer.setAttribute(this.el.nativeElement, 'aria-label', `${key}: activate to sort column descending`);\n if (this.data.length === 0) {\n // this.dataSource.map((element: any) => {\n // this.data.push(element);\n // })\n this.data = Array.from(this.dataSource);\n }\n }\n ngAfterViewInit() {\n if (this.sortIcon) {\n this.createIcon();\n }\n }\n createIcon() {\n // tslint:disable-next-line:max-line-length\n const iconUp = ``;\n // tslint:disable-next-line:max-line-length\n const iconDown = ``;\n const title = this.el.nativeElement.innerHTML;\n this.el.nativeElement.innerHTML = `${title} ${iconUp} ${iconDown}`;\n }\n removeSort() {\n const nodes = this.el.nativeElement.parentElement.childNodes;\n if (nodes) {\n Array.from(nodes).map((node) => {\n if (node !== this.el.nativeElement && node.nodeName !== '#comment') {\n this.renderer.removeAttribute(node, 'aria-sort');\n }\n });\n }\n }\n}\nMdbTableSortDirective.ɵfac = function MdbTableSortDirective_Factory(t) { return new (t || MdbTableSortDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2)); };\nMdbTableSortDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: MdbTableSortDirective, selectors: [[\"\", \"mdbTableSort\", \"\"]], hostBindings: function MdbTableSortDirective_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"click\", function MdbTableSortDirective_click_HostBindingHandler() { return ctx.onclick(); });\n } }, inputs: { dataSource: [\"mdbTableSort\", \"dataSource\"], sortIcon: \"sortIcon\", resetSortDirection: \"resetSortDirection\", sortBy: \"sortBy\" }, outputs: { sortEnd: \"sortEnd\", sorted: \"sorted\" } });\nMdbTableSortDirective.ctorParameters = () => [\n { type: ElementRef },\n { type: Renderer2 }\n];\nMdbTableSortDirective.propDecorators = {\n dataSource: [{ type: Input, args: ['mdbTableSort',] }],\n sortBy: [{ type: Input }],\n sortIcon: [{ type: Input }],\n resetSortDirection: [{ type: Input }],\n sortEnd: [{ type: Output }],\n sorted: [{ type: Output }],\n onclick: [{ type: HostListener, args: ['click',] }]\n};\n\nclass MdbTableScrollDirective {\n constructor(renderer, el) {\n this.renderer = renderer;\n this.el = el;\n this.scrollY = false;\n this.maxHeight = null;\n this.scrollX = false;\n this.maxWidth = null;\n }\n wrapTableWithVerticalScrollingWrapper(tableWrapper) {\n this.renderer.setStyle(tableWrapper, 'max-height', this.maxHeight + 'px');\n this.renderer.setStyle(tableWrapper, 'overflow-y', 'auto');\n this.renderer.setStyle(tableWrapper, 'display', 'block');\n }\n wrapTableWithHorizontalScrollingWrapper(tableWrapper) {\n this.renderer.setStyle(tableWrapper, 'max-width', this.maxWidth + 'px');\n this.renderer.setStyle(tableWrapper, 'overflow-x', 'auto');\n this.renderer.setStyle(tableWrapper, 'display', 'block');\n }\n wrapTableWithHorizontalAndVerticalScrollingWrapper(tableWrapper) {\n this.renderer.setStyle(tableWrapper, 'max-height', this.maxHeight + 'px');\n this.renderer.setStyle(tableWrapper, 'max-width', this.maxWidth + 'px');\n this.renderer.setStyle(tableWrapper, 'overflow-x', 'auto');\n this.renderer.setStyle(tableWrapper, 'display', 'block');\n }\n ngOnInit() {\n const parent = this.el.nativeElement.parentNode;\n const tableWrapper = this.renderer.createElement('div');\n if (this.scrollY && this.scrollX && this.maxHeight && this.maxWidth) {\n this.wrapTableWithHorizontalAndVerticalScrollingWrapper(tableWrapper);\n }\n if (this.scrollY && this.maxHeight) {\n this.wrapTableWithVerticalScrollingWrapper(tableWrapper);\n }\n if (this.scrollX && this.maxWidth) {\n this.wrapTableWithHorizontalScrollingWrapper(tableWrapper);\n }\n this.renderer.insertBefore(parent, tableWrapper, this.el.nativeElement);\n this.renderer.removeChild(parent, this.el.nativeElement);\n this.renderer.appendChild(tableWrapper, this.el.nativeElement);\n }\n}\nMdbTableScrollDirective.ɵfac = function MdbTableScrollDirective_Factory(t) { return new (t || MdbTableScrollDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef)); };\nMdbTableScrollDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: MdbTableScrollDirective, selectors: [[\"\", \"mdbTableScroll\", \"\"]], inputs: { scrollY: \"scrollY\", maxHeight: \"maxHeight\", scrollX: \"scrollX\", maxWidth: \"maxWidth\" } });\nMdbTableScrollDirective.ctorParameters = () => [\n { type: Renderer2 },\n { type: ElementRef }\n];\nMdbTableScrollDirective.propDecorators = {\n scrollY: [{ type: Input }],\n maxHeight: [{ type: Input }],\n scrollX: [{ type: Input }],\n maxWidth: [{ type: Input }]\n};\n\nclass MdbTableRowDirective {\n constructor(el) {\n this.el = el;\n this.rowCreated = new EventEmitter();\n this.rowRemoved = new EventEmitter();\n }\n ngOnInit() {\n this.rowCreated.emit({ created: true, el: this.el.nativeElement });\n }\n ngOnDestroy() {\n this.rowRemoved.emit({ removed: true });\n }\n}\nMdbTableRowDirective.ɵfac = function MdbTableRowDirective_Factory(t) { return new (t || MdbTableRowDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef)); };\nMdbTableRowDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: MdbTableRowDirective, selectors: [[\"\", \"mdbTableRow\", \"\"]], outputs: { rowCreated: \"rowCreated\", rowRemoved: \"rowRemoved\" } });\nMdbTableRowDirective.ctorParameters = () => [\n { type: ElementRef }\n];\nMdbTableRowDirective.propDecorators = {\n rowCreated: [{ type: Output }],\n rowRemoved: [{ type: Output }]\n};\n\nclass MdbTableService {\n constructor() {\n this._dataSource = [];\n this._dataSourceChanged = new Subject();\n }\n addRow(newRow) {\n this.getDataSource().push(newRow);\n }\n addRowAfter(index, row) {\n this.getDataSource().splice(index, 0, row);\n }\n removeRow(index) {\n this.getDataSource().splice(index, 1);\n }\n rowRemoved() {\n const rowRemoved = new Observable((observer) => {\n observer.next(true);\n });\n return rowRemoved;\n }\n removeLastRow() {\n this.getDataSource().pop();\n }\n getDataSource() {\n return this._dataSource;\n }\n setDataSource(data) {\n this._dataSource = data;\n this._dataSourceChanged.next(this.getDataSource());\n }\n dataSourceChange() {\n return this._dataSourceChanged;\n }\n filterLocalDataBy(searchKey) {\n return this.getDataSource().filter((obj) => {\n return Object.keys(obj).some((key) => {\n if (obj[key]) {\n return obj[key]\n .toString()\n .toLowerCase()\n .includes(searchKey);\n }\n });\n });\n }\n searchLocalDataBy(searchKey) {\n if (!searchKey) {\n return this.getDataSource();\n }\n if (searchKey) {\n return this.filterLocalDataBy(searchKey.toLowerCase());\n }\n }\n searchDataObservable(searchKey) {\n const observable = new Observable((observer) => {\n observer.next(this.searchLocalDataBy(searchKey));\n });\n return observable;\n }\n}\nMdbTableService.ɵfac = function MdbTableService_Factory(t) { return new (t || MdbTableService)(); };\nMdbTableService.ɵprov = ɵɵdefineInjectable({ factory: function MdbTableService_Factory() { return new MdbTableService(); }, token: MdbTableService, providedIn: \"root\" });\nMdbTableService.ctorParameters = () => [];\n\nclass MdbTablePaginationComponent {\n constructor(cdRef) {\n this.cdRef = cdRef;\n this.searchPagination = false;\n this.searchDataSource = null;\n this.ofKeyword = 'of';\n this.dashKeyword = '-';\n this.paginationAlign = '';\n this.hideDescription = false;\n this._destroy$ = new Subject();\n this.maxVisibleItems = 10;\n this.firstItemIndex = 0;\n this.lastItemIndex = this.maxVisibleItems;\n this.lastVisibleItemIndex = 5;\n this.activePageNumber = 1;\n this.allItemsLength = 0;\n this.nextShouldBeDisabled = false;\n this.previousShouldBeDisabled = true;\n this.searchText = '';\n this.pagination = new Subject();\n this.nextPageClick = new EventEmitter();\n this.previousPageClick = new EventEmitter();\n this.firstPageClick = new EventEmitter();\n this.lastPageClick = new EventEmitter();\n }\n ngOnInit() {\n if (this.tableEl) {\n this.allItemsLength = this.tableEl.getDataSource().length;\n }\n }\n ngAfterViewInit() {\n if (this.tableEl) {\n this.tableEl\n .dataSourceChange()\n .pipe(takeUntil(this._destroy$))\n .subscribe((data) => {\n this.allItemsLength = data.length;\n this.lastVisibleItemIndex = data.length;\n this.calculateFirstItemIndex();\n this.calculateLastItemIndex();\n this.disableNextButton(data);\n if (this.searchDataSource) {\n setTimeout(() => {\n if (this.searchDataSource.length !== data.length) {\n this.activePageNumber = 1;\n this.firstItemIndex = 1;\n }\n }, 0);\n }\n });\n }\n this.paginationChange()\n .pipe(takeUntil(this._destroy$))\n .subscribe((data) => {\n this.firstItemIndex = data.first;\n this.lastVisibleItemIndex = data.last;\n });\n }\n ngOnChanges(changes) {\n const searchDataSource = changes['searchDataSource'];\n if (searchDataSource.currentValue.length !== 0) {\n this.allItemsLength = searchDataSource.currentValue.length;\n }\n if (this.lastVisibleItemIndex > this.allItemsLength) {\n this.lastVisibleItemIndex = this.allItemsLength;\n }\n if (searchDataSource.currentValue.length === 0) {\n this.firstItemIndex = 0;\n this.lastItemIndex = 0;\n this.lastVisibleItemIndex = 0;\n this.allItemsLength = 0;\n }\n if (!searchDataSource.isFirstChange() &&\n searchDataSource.currentValue.length <= this.maxVisibleItems) {\n this.nextShouldBeDisabled = true;\n this.lastVisibleItemIndex = searchDataSource.currentValue.length;\n }\n else {\n this.nextShouldBeDisabled = false;\n }\n }\n setMaxVisibleItemsNumberTo(value) {\n this.lastItemIndex = value;\n this.lastVisibleItemIndex = value;\n this.maxVisibleItems = value;\n this.cdRef.detectChanges();\n }\n searchTextObs() {\n const observable = new Observable((observer) => {\n observer.next(this.searchText);\n });\n return observable;\n }\n disableNextButton(data) {\n if (data.length <= this.maxVisibleItems) {\n this.nextShouldBeDisabled = true;\n }\n else {\n this.nextShouldBeDisabled = false;\n }\n }\n calculateFirstItemIndex() {\n this.firstItemIndex = this.activePageNumber * this.maxVisibleItems - this.maxVisibleItems + 1;\n this.pagination.next({ first: this.firstItemIndex, last: this.lastItemIndex });\n }\n calculateLastItemIndex() {\n this.lastItemIndex = this.activePageNumber * this.maxVisibleItems;\n this.lastVisibleItemIndex = this.lastItemIndex;\n if (this.searchDataSource && this.lastItemIndex > this.searchDataSource.length) {\n this.lastVisibleItemIndex = this.searchDataSource.length;\n }\n else if (!this.searchDataSource) {\n this.lastVisibleItemIndex = this.lastItemIndex;\n }\n if (this.lastItemIndex > this.tableEl.getDataSource().length) {\n this.lastItemIndex = this.tableEl.getDataSource().length;\n this.lastVisibleItemIndex = this.tableEl.getDataSource().length;\n }\n this.pagination.next({ first: this.firstItemIndex, last: this.lastItemIndex });\n }\n paginationChange() {\n return this.pagination;\n }\n calculateHowManyPagesShouldBe() {\n return Math.ceil(this.tableEl.getDataSource().length / this.maxVisibleItems);\n }\n previousPage() {\n this.activePageNumber--;\n this.calculateFirstItemIndex();\n this.calculateLastItemIndex();\n this.previousPageClick.emit({ first: this.firstItemIndex, last: this.lastItemIndex });\n }\n nextPage() {\n this.activePageNumber++;\n this.calculateFirstItemIndex();\n this.calculateLastItemIndex();\n if (this.lastItemIndex > this.tableEl.getDataSource().length) {\n this.lastItemIndex = this.tableEl.getDataSource().length;\n }\n if (this.lastVisibleItemIndex > this.allItemsLength) {\n this.lastVisibleItemIndex = this.allItemsLength;\n }\n this.nextPageClick.emit({ first: this.firstItemIndex, last: this.lastItemIndex });\n }\n firstPage() {\n this.activePageNumber = 1;\n this.calculateFirstItemIndex();\n this.calculateLastItemIndex();\n this.firstPageClick.emit({ first: this.firstItemIndex, last: this.lastItemIndex });\n }\n lastPage() {\n const lastPage = Math.ceil(this.allItemsLength / this.maxVisibleItems);\n this.activePageNumber = lastPage;\n this.calculateFirstItemIndex();\n this.calculateLastItemIndex();\n this.lastPageClick.emit({ first: this.firstItemIndex, last: this.lastItemIndex });\n }\n nextPageObservable() {\n const obs = new Observable((observer) => {\n observer.next(this.firstItemIndex);\n });\n return obs;\n }\n previousPageObservable() {\n const obs = new Observable((observer) => {\n observer.next(this.lastVisibleItemIndex);\n });\n return obs;\n }\n checkIfNextShouldBeDisabled() {\n if (this.searchDataSource && this.lastVisibleItemIndex === this.searchDataSource.length) {\n return true;\n }\n if (this.activePageNumber >= this.calculateHowManyPagesShouldBe()) {\n return true;\n }\n if (this.nextShouldBeDisabled) {\n return this.nextShouldBeDisabled;\n }\n }\n checkIfPreviousShouldBeDisabled() {\n if (this.activePageNumber === 1) {\n return true;\n }\n }\n ngOnDestroy() {\n this._destroy$.next();\n this._destroy$.complete();\n }\n}\nMdbTablePaginationComponent.ɵfac = function MdbTablePaginationComponent_Factory(t) { return new (t || MdbTablePaginationComponent)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef)); };\nMdbTablePaginationComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: MdbTablePaginationComponent, selectors: [[\"mdb-table-pagination\"]], inputs: { searchPagination: \"searchPagination\", searchDataSource: \"searchDataSource\", ofKeyword: \"ofKeyword\", dashKeyword: \"dashKeyword\", paginationAlign: \"paginationAlign\", hideDescription: \"hideDescription\", tableEl: \"tableEl\" }, outputs: { nextPageClick: \"nextPageClick\", previousPageClick: \"previousPageClick\", firstPageClick: \"firstPageClick\", lastPageClick: \"lastPageClick\" }, features: [ɵngcc0.ɵɵNgOnChangesFeature], decls: 19, vars: 17, consts: [[1, \"pagination\", \"pagination-circle\", \"pg-blue\", \"d-flex\", \"flex-center\", 3, \"ngClass\"], [4, \"ngIf\"], [1, \"page-item\", 3, \"ngClass\"], [\"mdbWavesEffect\", \"\", \"aria-label\", \"Previous\", 1, \"page-link\", 3, \"click\"], [\"aria-hidden\", \"true\"], [\"mdbWavesEffect\", \"\", \"aria-label\", \"Next\", 1, \"page-link\", 3, \"click\"]], template: function MdbTablePaginationComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵelementStart(0, \"nav\");\n ɵngcc0.ɵɵelementStart(1, \"ul\", 0);\n ɵngcc0.ɵɵtemplate(2, MdbTablePaginationComponent_li_2_Template, 2, 5, \"li\", 1);\n ɵngcc0.ɵɵelementStart(3, \"li\", 2);\n ɵngcc0.ɵɵelementStart(4, \"a\", 3);\n ɵngcc0.ɵɵlistener(\"click\", function MdbTablePaginationComponent_Template_a_click_4_listener() { return ctx.firstPage(); });\n ɵngcc0.ɵɵelementStart(5, \"span\", 4);\n ɵngcc0.ɵɵtext(6, \"\\u00AB\");\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(7, \"li\", 2);\n ɵngcc0.ɵɵelementStart(8, \"a\", 3);\n ɵngcc0.ɵɵlistener(\"click\", function MdbTablePaginationComponent_Template_a_click_8_listener() { return ctx.previousPage(); });\n ɵngcc0.ɵɵelementStart(9, \"span\", 4);\n ɵngcc0.ɵɵtext(10, \"\\u2039\");\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(11, \"li\", 2);\n ɵngcc0.ɵɵelementStart(12, \"a\", 3);\n ɵngcc0.ɵɵlistener(\"click\", function MdbTablePaginationComponent_Template_a_click_12_listener() { return ctx.nextPage(); });\n ɵngcc0.ɵɵelementStart(13, \"span\", 4);\n ɵngcc0.ɵɵtext(14, \"\\u203A\");\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementStart(15, \"li\", 2);\n ɵngcc0.ɵɵelementStart(16, \"a\", 5);\n ɵngcc0.ɵɵlistener(\"click\", function MdbTablePaginationComponent_Template_a_click_16_listener() { return ctx.lastPage(); });\n ɵngcc0.ɵɵelementStart(17, \"span\", 4);\n ɵngcc0.ɵɵtext(18, \"\\u00BB\");\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n ɵngcc0.ɵɵelementEnd();\n } if (rf & 2) {\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngClass\", ɵngcc0.ɵɵpureFunction2(6, _c24, ctx.paginationAlign == \"end\", ctx.paginationAlign == \"start\"));\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngIf\", !ctx.hideDescription);\n ɵngcc0.ɵɵadvance(1);\n ɵngcc0.ɵɵproperty(\"ngClass\", ɵngcc0.ɵɵpureFunction1(9, _c25, ctx.checkIfPreviousShouldBeDisabled()));\n ɵngcc0.ɵɵadvance(4);\n ɵngcc0.ɵɵproperty(\"ngClass\", ɵngcc0.ɵɵpureFunction1(11, _c25, ctx.checkIfPreviousShouldBeDisabled()));\n ɵngcc0.ɵɵadvance(4);\n ɵngcc0.ɵɵproperty(\"ngClass\", ɵngcc0.ɵɵpureFunction1(13, _c25, ctx.checkIfNextShouldBeDisabled()));\n ɵngcc0.ɵɵadvance(4);\n ɵngcc0.ɵɵproperty(\"ngClass\", ɵngcc0.ɵɵpureFunction1(15, _c25, ctx.checkIfNextShouldBeDisabled()));\n } }, directives: [ɵngcc1.NgClass, ɵngcc1.NgIf], encapsulation: 2 });\nMdbTablePaginationComponent.ctorParameters = () => [\n { type: ChangeDetectorRef }\n];\nMdbTablePaginationComponent.propDecorators = {\n tableEl: [{ type: Input }],\n searchPagination: [{ type: Input }],\n searchDataSource: [{ type: Input }],\n ofKeyword: [{ type: Input }],\n dashKeyword: [{ type: Input }],\n paginationAlign: [{ type: Input }],\n hideDescription: [{ type: Input }],\n nextPageClick: [{ type: Output }],\n previousPageClick: [{ type: Output }],\n firstPageClick: [{ type: Output }],\n lastPageClick: [{ type: Output }]\n};\n\nclass TableModule {\n}\nTableModule.ɵfac = function TableModule_Factory(t) { return new (t || TableModule)(); };\nTableModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: TableModule });\nTableModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ providers: [MdbTableService], imports: [[CommonModule]] });\n\n/** Default values provider for tooltip */\nclass TooltipConfig {\n constructor() {\n /** tooltip placement, supported positions: 'top', 'bottom', 'left', 'right' */\n this.placement = 'top';\n /** array of event names which triggers tooltip opening */\n this.triggers = 'hover focus';\n }\n}\nTooltipConfig.ɵfac = function TooltipConfig_Factory(t) { return new (t || TooltipConfig)(); };\nTooltipConfig.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: TooltipConfig, factory: TooltipConfig.ɵfac });\n\nclass TooltipContainerComponent {\n constructor(config, elem) {\n this.elem = elem;\n this.containerClass = '';\n this.show = !this.isBs3;\n Object.assign(this, config);\n }\n get tooltipClasses() {\n return `tooltip-fadeIn tooltip in tooltip-${this.placement} bs-tooltip-${this.placement} ${this.placement} ${this.containerClass}`;\n }\n get isBs3() {\n return isBs3();\n }\n ngAfterViewInit() {\n this.classMap = { in: false, fade: false };\n this.classMap[this.placement] = true;\n this.classMap['tooltip-' + this.placement] = true;\n this.classMap.in = true;\n if (this.animation) {\n this.classMap.fade = true;\n }\n if (this.popupClass) {\n this.classMap[this.popupClass] = true;\n }\n }\n}\nTooltipContainerComponent.ɵfac = function TooltipContainerComponent_Factory(t) { return new (t || TooltipContainerComponent)(ɵngcc0.ɵɵdirectiveInject(TooltipConfig), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef)); };\nTooltipContainerComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: TooltipContainerComponent, selectors: [[\"mdb-tooltip-container\"]], viewQuery: function TooltipContainerComponent_Query(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵviewQuery(_c26, 3);\n ɵngcc0.ɵɵviewQuery(_c27, 3);\n } if (rf & 2) {\n let _t;\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.tooltipInner = _t.first);\n ɵngcc0.ɵɵqueryRefresh(_t = ɵngcc0.ɵɵloadQuery()) && (ctx.tooltipArrow = _t.first);\n } }, hostVars: 4, hostBindings: function TooltipContainerComponent_HostBindings(rf, ctx) { if (rf & 2) {\n ɵngcc0.ɵɵclassMap(ctx.tooltipClasses);\n ɵngcc0.ɵɵclassProp(\"show\", ctx.show);\n } }, inputs: { containerClass: \"containerClass\" }, ngContentSelectors: _c0, decls: 5, vars: 0, consts: [[1, \"tooltip-arrow\", \"arrow\"], [\"tooltipArrow\", \"\"], [1, \"tooltip-inner\"], [\"tooltipInner\", \"\"]], template: function TooltipContainerComponent_Template(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵprojectionDef();\n ɵngcc0.ɵɵelement(0, \"div\", 0, 1);\n ɵngcc0.ɵɵelementStart(2, \"div\", 2, 3);\n ɵngcc0.ɵɵprojection(4);\n ɵngcc0.ɵɵelementEnd();\n } }, styles: [\"a .tooltip{position:absolute;z-index:1070;display:block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;letter-spacing:normal;line-break:auto;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;white-space:normal;word-break:normal;word-spacing:normal;font-size:.875rem;word-wrap:break-word;opacity:0}a .tooltip.show{opacity:.9}a .tooltip.bs-tether-element-attached-bottom,a .tooltip.tooltip-top{padding:.8rem 0;margin-top:0}a .tooltip.bs-tether-element-attached-bottom .tooltip-inner:before,a .tooltip.tooltip-top .tooltip-inner:before{bottom:0;left:50%;margin-left:-.8rem;content:\\\"\\\";border-width:.8rem .8rem 0}a .tooltip.bs-tether-element-attached-left,a .tooltip.tooltip-right{padding:0 .8rem;margin-left:0}a .tooltip.bs-tether-element-attached-left .tooltip-inner:before,a .tooltip.tooltip-right .tooltip-inner:before{top:50%;left:0;margin-top:-.8rem;content:\\\"\\\";border-width:.8rem .8rem .8rem 0}a .tooltip.bs-tether-element-attached-top,a .tooltip.tooltip-bottom{padding:.8rem 0;margin-top:0}a .tooltip.bs-tether-element-attached-top .tooltip-inner:before,a .tooltip.tooltip-bottom .tooltip-inner:before{top:0;left:50%;margin-left:-.8rem;content:\\\"\\\";border-width:0 .8rem .8rem}a .tooltip.bs-tether-element-attached-right,a .tooltip.tooltip-left{padding:0 .8rem;margin-left:0}a .tooltip.bs-tether-element-attached-right .tooltip-inner:before,a .tooltip.tooltip-left .tooltip-inner:before{top:50%;right:0;margin-top:-.8rem;content:\\\"\\\";border-width:.8rem 0 .8rem .8rem}.tooltip-inner{max-width:200px;text-align:center;padding:.2rem .4rem;box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);border-radius:.25rem}.tooltip-inner:before{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}@-webkit-keyframes fadeInTooltip{0%{opacity:0}to{opacity:1}}@keyframes fadeInTooltip{0%{opacity:0}to{opacity:1}}.tooltip-fadeIn{-webkit-animation-name:fadeInTooltip;animation-name:fadeInTooltip;-webkit-animation-delay:.2s;animation-delay:.2s;-webkit-animation-duration:.2s;animation-duration:.2s;-webkit-animation-fill-mode:both;animation-fill-mode:both}.single-tooltip{padding:.75rem 0 0}.single-tooltip a{padding:0!important}a[tooltip]{margin-left:0!important;padding:0 .5rem}.tooltip-arrow.left{position:relative;margin-right:-.6rem;transform:rotate(90deg)}.tooltip-arrow.right{position:relative;margin-left:-.6rem;transform:rotate(-90deg)}.tooltip-arrow.top{position:relative;transform:rotate(-180deg)}.tooltip-top{padding:.4rem 0}.tooltip-top .arrow{bottom:0}.tooltip-top .arrow:before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.tooltip-right{padding:0 .4rem}.tooltip-right .arrow{left:0}.tooltip-right .arrow:before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.tooltip-bottom{padding:.4rem 0}.tooltip-bottom .arrow{top:0}.tooltip-bottom .arrow:before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.tooltip-left{padding:0 .4rem}.tooltip-left .arrow{right:0}.tooltip-left .arrow:before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}\"], encapsulation: 2, changeDetection: 0 });\nTooltipContainerComponent.ctorParameters = () => [\n { type: TooltipConfig },\n { type: ElementRef }\n];\nTooltipContainerComponent.propDecorators = {\n containerClass: [{ type: Input }],\n tooltipInner: [{ type: ViewChild, args: ['tooltipInner', { static: true },] }],\n tooltipArrow: [{ type: ViewChild, args: ['tooltipArrow', { static: true },] }],\n show: [{ type: HostBinding, args: ['class.show',] }],\n tooltipClasses: [{ type: HostBinding, args: ['class',] }]\n};\n\nclass TooltipDirective {\n constructor(_renderer, _elementRef, _positionService, _viewContainerRef, cis, config, platformId) {\n this._elementRef = _elementRef;\n this._positionService = _positionService;\n this.platformId = platformId;\n /** Fired when tooltip content changes */\n this.tooltipChange = new EventEmitter();\n this.dynamicPosition = true;\n this.delay = 0;\n this.fadeDuration = 150;\n this._destroy$ = new Subject();\n this.isBrowser = false;\n this.isBrowser = isPlatformBrowser(this.platformId);\n this._tooltip = cis\n .createLoader(this._elementRef, _viewContainerRef, _renderer)\n .provide({ provide: TooltipConfig, useValue: config });\n Object.assign(this, config);\n this.onShown = this._tooltip.onShown;\n this.shown = this._tooltip.onShown;\n this.onHidden = this._tooltip.onHidden;\n this.hidden = this._tooltip.onHidden;\n }\n /**\n * Returns whether or not the tooltip is currently being shown\n */\n get isOpen() {\n return this._tooltip.isShown;\n }\n set isOpen(value) {\n if (value) {\n this.show();\n }\n else {\n this.hide();\n }\n }\n ngOnInit() {\n this._tooltip.listen({\n triggers: this.triggers,\n show: () => this.show(),\n });\n this.tooltipChange.pipe(takeUntil(this._destroy$)).subscribe((value) => {\n if (!value) {\n this._tooltip.hide();\n }\n });\n }\n ngOnChanges(changes) {\n if (changes['mdbTooltip'] && !changes['mdbTooltip'].isFirstChange()) {\n this.tooltipChange.emit(this.mdbTooltip);\n }\n }\n /**\n * Toggles an element’s tooltip. This is considered a “manual” triggering of\n * the tooltip.\n */\n toggle() {\n if (this.isOpen) {\n return this.hide();\n }\n this.show();\n }\n /**\n * Opens an element’s tooltip. This is considered a “manual” triggering of\n * the tooltip.\n */\n show() {\n if (this.isOpen || this.tooltipDisabled || this._delayTimeoutId || !this.mdbTooltip) {\n return;\n }\n this._positionService.setOptions({\n modifiers: {\n flip: {\n enabled: this.dynamicPosition,\n },\n preventOverflow: {\n enabled: this.dynamicPosition,\n },\n },\n });\n const showTooltip = () => {\n this._tooltip\n .attach(TooltipContainerComponent)\n .to(this.container)\n .position({ attachment: this.placement })\n .show({\n content: this.mdbTooltip,\n placement: this.placement,\n });\n };\n this.showTooltip(showTooltip);\n }\n showTooltip(fn) {\n if (this.delay) {\n this._delayTimeoutId = setTimeout(() => {\n fn();\n }, this.delay);\n }\n else {\n fn();\n }\n }\n /**\n * Closes an element’s tooltip. This is considered a “manual” triggering of\n * the tooltip.\n */\n hide() {\n if (this._delayTimeoutId) {\n clearTimeout(this._delayTimeoutId);\n this._delayTimeoutId = undefined;\n }\n if (!this._tooltip.isShown) {\n return;\n }\n this._tooltip.instance.classMap.in = false;\n setTimeout(() => {\n this._tooltip.hide();\n }, this.fadeDuration);\n }\n dispose() {\n this._tooltip.dispose();\n }\n ngOnDestroy() {\n this._tooltip.dispose();\n this._destroy$.next();\n this._destroy$.complete();\n }\n}\nTooltipDirective.ɵfac = function TooltipDirective_Factory(t) { return new (t || TooltipDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(PositioningService), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ViewContainerRef), ɵngcc0.ɵɵdirectiveInject(ComponentLoaderFactory), ɵngcc0.ɵɵdirectiveInject(TooltipConfig), ɵngcc0.ɵɵdirectiveInject(PLATFORM_ID)); };\nTooltipDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: TooltipDirective, selectors: [[\"\", \"mdbTooltip\", \"\"]], inputs: { dynamicPosition: \"dynamicPosition\", delay: \"delay\", fadeDuration: \"fadeDuration\", isOpen: \"isOpen\", mdbTooltip: \"mdbTooltip\", placement: \"placement\", triggers: \"triggers\", container: \"container\", tooltipDisabled: \"tooltipDisabled\", customHeight: \"customHeight\" }, outputs: { tooltipChange: \"tooltipChange\", onShown: \"onShown\", shown: \"shown\", onHidden: \"onHidden\", hidden: \"hidden\" }, exportAs: [\"mdb-tooltip\"], features: [ɵngcc0.ɵɵNgOnChangesFeature] });\nTooltipDirective.ctorParameters = () => [\n { type: Renderer2 },\n { type: ElementRef },\n { type: PositioningService },\n { type: ViewContainerRef },\n { type: ComponentLoaderFactory },\n { type: TooltipConfig },\n { type: String, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] }\n];\nTooltipDirective.propDecorators = {\n mdbTooltip: [{ type: Input }],\n tooltipChange: [{ type: Output }],\n placement: [{ type: Input }],\n triggers: [{ type: Input }],\n container: [{ type: Input }],\n isOpen: [{ type: Input }],\n tooltipDisabled: [{ type: Input }],\n dynamicPosition: [{ type: Input }],\n onShown: [{ type: Output }],\n shown: [{ type: Output }],\n onHidden: [{ type: Output }],\n hidden: [{ type: Output }],\n delay: [{ type: Input }],\n customHeight: [{ type: Input }],\n fadeDuration: [{ type: Input }]\n};\n__decorate([\n OnChange$1(),\n __metadata(\"design:type\", Object)\n], TooltipDirective.prototype, \"mdbTooltip\", void 0);\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MDBBadgeComponent, [{\n type: Component,\n args: [{\n selector: 'mdb-badge',\n template: \"\\n \\n\\n\",\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n styles: [\".badge{box-shadow:0 2px 5px 0 rgba(0,0,0,.16),0 2px 10px 0 rgba(0,0,0,.12);border-radius:.125rem;color:#fff!important}.badge-pill{border-radius:10rem;padding-right:.6rem;padding-left:.6rem}.badge-primary{background-color:#4285f4!important;color:#fff!important}.badge-danger{background-color:#ff3547!important;color:#fff!important}.badge-warning{background-color:#fb3!important;color:#fff!important}.badge-success{background-color:#00c851!important;color:#fff!important}.badge-info{background-color:#33b5e5!important;color:#fff!important}.badge-default{background-color:#2bbbad!important;color:#fff!important}.badge-secondary{background-color:#a6c!important;color:#fff!important}.badge-dark{background-color:#212121!important;color:#fff!important}.badge-light{background-color:#e0e0e0!important;color:#000!important}\"]\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }]; }, { default: [{\n type: Input\n }, {\n type: HostBinding,\n args: ['class.badge-default']\n }], primary: [{\n type: Input\n }, {\n type: HostBinding,\n args: ['class.badge-primary']\n }], secondary: [{\n type: Input\n }, {\n type: HostBinding,\n args: ['class.badge-secondary']\n }], success: [{\n type: Input\n }, {\n type: HostBinding,\n args: ['class.badge-success']\n }], info: [{\n type: Input\n }, {\n type: HostBinding,\n args: ['class.badge-info']\n }], warning: [{\n type: Input\n }, {\n type: HostBinding,\n args: ['class.badge-warning']\n }], danger: [{\n type: Input\n }, {\n type: HostBinding,\n args: ['class.badge-danger']\n }], pill: [{\n type: Input\n }, {\n type: HostBinding,\n args: ['class.badge-pill']\n }], classInside: [{\n type: Input\n }], color: [{\n type: Input\n }], class: [{\n type: Input\n }] }); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(BadgeModule, { declarations: [MDBBadgeComponent], exports: [MDBBadgeComponent] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(BadgeModule, [{\n type: NgModule,\n args: [{\n declarations: [MDBBadgeComponent],\n exports: [MDBBadgeComponent]\n }]\n }], null, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MdbBreadcrumbComponent, [{\n type: Component,\n args: [{\n selector: 'mdb-breadcrumb',\n template: \"
      \\n \\n
    \\n\",\n changeDetection: ChangeDetectionStrategy.OnPush\n }]\n }], null, { customClass: [{\n type: Input\n }], textTransform: [{\n type: Input\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MdbBreadcrumbItemComponent, [{\n type: Component,\n args: [{\n selector: 'mdb-breadcrumb-item',\n template: \"
  • \\n \\n
  • \\n\",\n encapsulation: ViewEncapsulation.None,\n styles: [\".breadcrumb-item{cursor:pointer}.breadcrumb-item.active{color:#6c757d!important}.breadcrumb-item.active>.breadcrumb-item{cursor:default}.light-font .breadcrumb-item:before{color:#fff}.light-font .breadcrumb-item.active{color:#cfd8dc!important}.light-font .breadcrumb-item.active>.breadcrumb-item{cursor:default}.dark-font .breadcrumb-item:before{color:#000}.dark-font .breadcrumb-item.active{color:#455a64!important}.dark-font .breadcrumb-item.active>.breadcrumb-item{cursor:default}\"]\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }]; }, { fontWeight: [{\n type: Input\n }] }); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(BreadcrumbModule, { declarations: function () { return [MdbBreadcrumbComponent, MdbBreadcrumbItemComponent]; }, imports: function () { return [CommonModule]; }, exports: function () { return [MdbBreadcrumbComponent, MdbBreadcrumbItemComponent]; } }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(BreadcrumbModule, [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n declarations: [MdbBreadcrumbComponent, MdbBreadcrumbItemComponent],\n exports: [MdbBreadcrumbComponent, MdbBreadcrumbItemComponent]\n }]\n }], null, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MdbBtnDirective, [{\n type: Component,\n args: [{\n // tslint:disable-next-line:component-selector\n selector: '[mdbBtn]',\n template: '',\n encapsulation: ViewEncapsulation.None,\n styles: [\".btn{box-shadow:0 2px 5px 0 rgba(0,0,0,.16),0 2px 10px 0 rgba(0,0,0,.12);padding:.84rem 2.14rem;font-size:.81rem;transition:all .2s ease-in-out;margin:.375rem;border:0;border-radius:.125rem;cursor:pointer;text-transform:uppercase;white-space:normal;word-wrap:break-word;color:inherit}.btn:active,.btn:focus,.btn:hover{outline:0}.btn:active,.btn:focus,.btn:hover,.btn:not([disabled]):not(.disabled).active,.btn:not([disabled]):not(.disabled):active{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn .fab,.btn .far,.btn .fas{position:relative;font-size:.9rem}.btn .fab.right,.btn .far.right,.btn .fas.right{margin-left:.3rem}.btn .fab.left,.btn .far.left,.btn .fas.left{margin-right:.3rem}.btn.btn-lg .fab,.btn.btn-lg .far,.btn.btn-lg .fas{font-size:1rem}.btn.btn-md .fab,.btn.btn-md .far,.btn.btn-md .fas{font-size:.8rem}.btn.btn-sm .fab,.btn.btn-sm .far,.btn.btn-sm .fas{font-size:.7rem}.btn.btn-tb{padding:.3rem 1rem}.btn.disabled:active,.btn.disabled:focus,.btn.disabled:hover,.btn:disabled:active,.btn:disabled:focus,.btn:disabled:hover{box-shadow:0 2px 5px 0 rgba(0,0,0,.16),0 2px 10px 0 rgba(0,0,0,.12)}.btn.btn-block{margin:inherit}.btn.btn-link{color:#000;box-shadow:none;background-color:transparent}.btn.btn-link:active,.btn.btn-link:focus,.btn.btn-link:hover{box-shadow:none!important;background-color:transparent}.btn[class*=btn-outline-]{padding-top:.7rem;padding-bottom:.7rem}.btn[class*=btn-outline-].btn-lg{padding-top:.88rem;padding-bottom:.88rem}.btn[class*=btn-outline-].btn-md{padding-top:.58rem;padding-bottom:.58rem}.btn[class*=btn-outline-].btn-sm{padding-top:.38rem;padding-bottom:.38rem}.btn-group .btn{margin:0}.btn-floating .fa-lg,.btn .fa-lg{font-size:1.33333em!important}.btn-floating .fa-xs,.btn .fa-xs{font-size:.75em!important}.btn-floating .fa-sm,.btn .fa-sm{font-size:.875em!important}.btn-floating .fa-1x,.btn .fa-1x{font-size:1em!important}.btn-floating .fa-2x,.btn .fa-2x{font-size:2em!important}.btn-floating .fa-3x,.btn .fa-3x{font-size:3em!important}.btn-floating .fa-4x,.btn .fa-4x{font-size:4em!important}.btn-floating .fa-5x,.btn .fa-5x{font-size:5em!important}.btn-floating .fa-6x,.btn .fa-6x{font-size:6em!important}.btn-floating .fa-7x,.btn .fa-7x{font-size:7em!important}.btn-floating .fa-8x,.btn .fa-8x{font-size:8em!important}.btn-floating .fa-9x,.btn .fa-9x{font-size:9em!important}.btn-floating .fa-10x,.btn .fa-10x{font-size:10em!important}.btn-primary{background-color:#4285f4!important;color:#fff}.btn-primary:hover{background-color:#5a95f5;color:#fff}.btn-primary.focus,.btn-primary:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-primary.active,.btn-primary:active,.btn-primary:focus{background-color:#0b51c5}.btn-primary.dropdown-toggle{background-color:#4285f4!important}.btn-primary.dropdown-toggle:focus,.btn-primary.dropdown-toggle:hover{background-color:#5a95f5!important}.btn-primary:not([disabled]):not(.disabled).active,.btn-primary:not([disabled]):not(.disabled):active,.show>.btn-primary.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#0b51c5!important}.btn-primary:not([disabled]):not(.disabled).active:focus,.btn-primary:not([disabled]):not(.disabled):active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.primary-ic{color:#4285f4!important}.primary-ic:focus,.primary-ic:hover{color:#4285f4}table.table a.btn.btn-primary{color:#fff}.btn-outline-primary{border:2px solid #4285f4!important;background-color:transparent!important;color:#4285f4!important}.btn-outline-primary.active,.btn-outline-primary:active,.btn-outline-primary:active:focus,.btn-outline-primary:focus,.btn-outline-primary:hover{border-color:#4285f4!important;background-color:transparent!important;color:#4285f4!important}.btn-outline-primary:not([disabled]):not(.disabled).active,.btn-outline-primary:not([disabled]):not(.disabled):active,.show>.btn-outline-primary.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#4285f4!important}.btn-outline-primary:not([disabled]):not(.disabled).active:focus,.btn-outline-primary:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-primary.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-danger{background-color:#ff3547!important;color:#fff}.btn-danger:hover{background-color:#ff4f5e;color:#fff}.btn-danger.focus,.btn-danger:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-danger.active,.btn-danger:active,.btn-danger:focus{background-color:#ce0012}.btn-danger.dropdown-toggle{background-color:#ff3547!important}.btn-danger.dropdown-toggle:focus,.btn-danger.dropdown-toggle:hover{background-color:#ff4f5e!important}.btn-danger:not([disabled]):not(.disabled).active,.btn-danger:not([disabled]):not(.disabled):active,.show>.btn-danger.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#ce0012!important}.btn-danger:not([disabled]):not(.disabled).active:focus,.btn-danger:not([disabled]):not(.disabled):active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.danger-ic{color:#ff3547!important}.danger-ic:focus,.danger-ic:hover{color:#ff3547}table.table a.btn.btn-danger{color:#fff}.btn-outline-danger{border:2px solid #ff3547!important;background-color:transparent!important;color:#ff3547!important}.btn-outline-danger.active,.btn-outline-danger:active,.btn-outline-danger:active:focus,.btn-outline-danger:focus,.btn-outline-danger:hover{border-color:#ff3547!important;background-color:transparent!important;color:#ff3547!important}.btn-outline-danger:not([disabled]):not(.disabled).active,.btn-outline-danger:not([disabled]):not(.disabled):active,.show>.btn-outline-danger.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#ff3547!important}.btn-outline-danger:not([disabled]):not(.disabled).active:focus,.btn-outline-danger:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-danger.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-warning{background-color:#fb3!important;color:#fff}.btn-warning:hover{background-color:#ffc44d;color:#fff}.btn-warning.focus,.btn-warning:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-warning.active,.btn-warning:active,.btn-warning:focus{background-color:#c80}.btn-warning.dropdown-toggle{background-color:#fb3!important}.btn-warning.dropdown-toggle:focus,.btn-warning.dropdown-toggle:hover{background-color:#ffc44d!important}.btn-warning:not([disabled]):not(.disabled).active,.btn-warning:not([disabled]):not(.disabled):active,.show>.btn-warning.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#c80!important}.btn-warning:not([disabled]):not(.disabled).active:focus,.btn-warning:not([disabled]):not(.disabled):active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.warning-ic{color:#fb3!important}.warning-ic:focus,.warning-ic:hover{color:#fb3}table.table a.btn.btn-warning{color:#fff}.btn-outline-warning{border:2px solid #fb3!important;background-color:transparent!important;color:#fb3!important}.btn-outline-warning.active,.btn-outline-warning:active,.btn-outline-warning:active:focus,.btn-outline-warning:focus,.btn-outline-warning:hover{border-color:#fb3!important;background-color:transparent!important;color:#fb3!important}.btn-outline-warning:not([disabled]):not(.disabled).active,.btn-outline-warning:not([disabled]):not(.disabled):active,.show>.btn-outline-warning.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#fb3!important}.btn-outline-warning:not([disabled]):not(.disabled).active:focus,.btn-outline-warning:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-warning.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-success{background-color:#00c851!important;color:#fff}.btn-success:hover{background-color:#00e25b;color:#fff}.btn-success.focus,.btn-success:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-success.active,.btn-success:active,.btn-success:focus{background-color:#006228}.btn-success.dropdown-toggle{background-color:#00c851!important}.btn-success.dropdown-toggle:focus,.btn-success.dropdown-toggle:hover{background-color:#00e25b!important}.btn-success:not([disabled]):not(.disabled).active,.btn-success:not([disabled]):not(.disabled):active,.show>.btn-success.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#006228!important}.btn-success:not([disabled]):not(.disabled).active:focus,.btn-success:not([disabled]):not(.disabled):active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.success-ic{color:#00c851!important}.success-ic:focus,.success-ic:hover{color:#00c851}table.table a.btn.btn-success{color:#fff}.btn-outline-success{border:2px solid #00c851!important;background-color:transparent!important;color:#00c851!important}.btn-outline-success.active,.btn-outline-success:active,.btn-outline-success:active:focus,.btn-outline-success:focus,.btn-outline-success:hover{border-color:#00c851!important;background-color:transparent!important;color:#00c851!important}.btn-outline-success:not([disabled]):not(.disabled).active,.btn-outline-success:not([disabled]):not(.disabled):active,.show>.btn-outline-success.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#00c851!important}.btn-outline-success:not([disabled]):not(.disabled).active:focus,.btn-outline-success:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-success.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-info{background-color:#33b5e5!important;color:#fff}.btn-info:hover{background-color:#4abde8;color:#fff}.btn-info.focus,.btn-info:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-info.active,.btn-info:active,.btn-info:focus{background-color:#14799e}.btn-info.dropdown-toggle{background-color:#33b5e5!important}.btn-info.dropdown-toggle:focus,.btn-info.dropdown-toggle:hover{background-color:#4abde8!important}.btn-info:not([disabled]):not(.disabled).active,.btn-info:not([disabled]):not(.disabled):active,.show>.btn-info.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#14799e!important}.btn-info:not([disabled]):not(.disabled).active:focus,.btn-info:not([disabled]):not(.disabled):active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.info-ic{color:#33b5e5!important}.info-ic:focus,.info-ic:hover{color:#33b5e5}table.table a.btn.btn-info{color:#fff}.btn-outline-info{border:2px solid #33b5e5!important;background-color:transparent!important;color:#33b5e5!important}.btn-outline-info.active,.btn-outline-info:active,.btn-outline-info:active:focus,.btn-outline-info:focus,.btn-outline-info:hover{border-color:#33b5e5!important;background-color:transparent!important;color:#33b5e5!important}.btn-outline-info:not([disabled]):not(.disabled).active,.btn-outline-info:not([disabled]):not(.disabled):active,.show>.btn-outline-info.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#33b5e5!important}.btn-outline-info:not([disabled]):not(.disabled).active:focus,.btn-outline-info:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-info.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-default{background-color:#2bbbad!important;color:#fff}.btn-default:hover{background-color:#30cfc0;color:#fff}.btn-default.focus,.btn-default:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-default.active,.btn-default:active,.btn-default:focus{background-color:#186860}.btn-default.dropdown-toggle{background-color:#2bbbad!important}.btn-default.dropdown-toggle:focus,.btn-default.dropdown-toggle:hover{background-color:#30cfc0!important}.btn-default:not([disabled]):not(.disabled).active,.btn-default:not([disabled]):not(.disabled):active,.show>.btn-default.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#186860!important}.btn-default:not([disabled]):not(.disabled).active:focus,.btn-default:not([disabled]):not(.disabled):active:focus,.show>.btn-default.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.default-ic{color:#2bbbad!important}.default-ic:focus,.default-ic:hover{color:#2bbbad}table.table a.btn.btn-default{color:#fff}.btn-outline-default{border:2px solid #2bbbad!important;background-color:transparent!important;color:#2bbbad!important}.btn-outline-default.active,.btn-outline-default:active,.btn-outline-default:active:focus,.btn-outline-default:focus,.btn-outline-default:hover{border-color:#2bbbad!important;background-color:transparent!important;color:#2bbbad!important}.btn-outline-default:not([disabled]):not(.disabled).active,.btn-outline-default:not([disabled]):not(.disabled):active,.show>.btn-outline-default.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#2bbbad!important}.btn-outline-default:not([disabled]):not(.disabled).active:focus,.btn-outline-default:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-default.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-secondary{background-color:#a6c!important;color:#fff}.btn-secondary:hover{background-color:#b579d2;color:#fff}.btn-secondary.focus,.btn-secondary:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-secondary.active,.btn-secondary:active,.btn-secondary:focus{background-color:#739}.btn-secondary.dropdown-toggle{background-color:#a6c!important}.btn-secondary.dropdown-toggle:focus,.btn-secondary.dropdown-toggle:hover{background-color:#b579d2!important}.btn-secondary:not([disabled]):not(.disabled).active,.btn-secondary:not([disabled]):not(.disabled):active,.show>.btn-secondary.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#739!important}.btn-secondary:not([disabled]):not(.disabled).active:focus,.btn-secondary:not([disabled]):not(.disabled):active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.secondary-ic{color:#a6c!important}.secondary-ic:focus,.secondary-ic:hover{color:#a6c}table.table a.btn.btn-secondary{color:#fff}.btn-outline-secondary{border:2px solid #a6c!important;background-color:transparent!important;color:#a6c!important}.btn-outline-secondary.active,.btn-outline-secondary:active,.btn-outline-secondary:active:focus,.btn-outline-secondary:focus,.btn-outline-secondary:hover{border-color:#a6c!important;background-color:transparent!important;color:#a6c!important}.btn-outline-secondary:not([disabled]):not(.disabled).active,.btn-outline-secondary:not([disabled]):not(.disabled):active,.show>.btn-outline-secondary.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#a6c!important}.btn-outline-secondary:not([disabled]):not(.disabled).active:focus,.btn-outline-secondary:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-secondary.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-elegant{background-color:#2e2e2e!important;color:#fff}.btn-elegant:hover{background-color:#3b3b3b;color:#fff}.btn-elegant.focus,.btn-elegant:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-elegant.active,.btn-elegant:active,.btn-elegant:focus{background-color:#000}.btn-elegant.dropdown-toggle{background-color:#2e2e2e!important}.btn-elegant.dropdown-toggle:focus,.btn-elegant.dropdown-toggle:hover{background-color:#3b3b3b!important}.btn-elegant:not([disabled]):not(.disabled).active,.btn-elegant:not([disabled]):not(.disabled):active,.show>.btn-elegant.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#000!important}.btn-elegant:not([disabled]):not(.disabled).active:focus,.btn-elegant:not([disabled]):not(.disabled):active:focus,.show>.btn-elegant.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.elegant-ic{color:#2e2e2e!important}.elegant-ic:focus,.elegant-ic:hover{color:#2e2e2e}table.table a.btn.btn-elegant{color:#fff}.btn-outline-elegant{border:2px solid #2e2e2e!important;background-color:transparent!important;color:#2e2e2e!important}.btn-outline-elegant.active,.btn-outline-elegant:active,.btn-outline-elegant:active:focus,.btn-outline-elegant:focus,.btn-outline-elegant:hover{border-color:#2e2e2e!important;background-color:transparent!important;color:#2e2e2e!important}.btn-outline-elegant:not([disabled]):not(.disabled).active,.btn-outline-elegant:not([disabled]):not(.disabled):active,.show>.btn-outline-elegant.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#2e2e2e!important}.btn-outline-elegant:not([disabled]):not(.disabled).active:focus,.btn-outline-elegant:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-elegant.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-unique{background-color:#880e4f!important;color:#fff}.btn-unique:hover{background-color:#9f105c;color:#fff}.btn-unique.focus,.btn-unique:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-unique.active,.btn-unique:active,.btn-unique:focus{background-color:#2c0419}.btn-unique.dropdown-toggle{background-color:#880e4f!important}.btn-unique.dropdown-toggle:focus,.btn-unique.dropdown-toggle:hover{background-color:#9f105c!important}.btn-unique:not([disabled]):not(.disabled).active,.btn-unique:not([disabled]):not(.disabled):active,.show>.btn-unique.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#2c0419!important}.btn-unique:not([disabled]):not(.disabled).active:focus,.btn-unique:not([disabled]):not(.disabled):active:focus,.show>.btn-unique.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.unique-ic{color:#880e4f!important}.unique-ic:focus,.unique-ic:hover{color:#880e4f}table.table a.btn.btn-unique{color:#fff}.btn-outline-unique{border:2px solid #880e4f!important;background-color:transparent!important;color:#880e4f!important}.btn-outline-unique.active,.btn-outline-unique:active,.btn-outline-unique:active:focus,.btn-outline-unique:focus,.btn-outline-unique:hover{border-color:#880e4f!important;background-color:transparent!important;color:#880e4f!important}.btn-outline-unique:not([disabled]):not(.disabled).active,.btn-outline-unique:not([disabled]):not(.disabled):active,.show>.btn-outline-unique.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#880e4f!important}.btn-outline-unique:not([disabled]):not(.disabled).active:focus,.btn-outline-unique:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-unique.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-dark-green{background-color:#388e3c!important;color:#fff}.btn-dark-green:hover{background-color:#3fa044;color:#fff}.btn-dark-green.focus,.btn-dark-green:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-dark-green.active,.btn-dark-green:active,.btn-dark-green:focus{background-color:#1b451d}.btn-dark-green.dropdown-toggle{background-color:#388e3c!important}.btn-dark-green.dropdown-toggle:focus,.btn-dark-green.dropdown-toggle:hover{background-color:#3fa044!important}.btn-dark-green:not([disabled]):not(.disabled).active,.btn-dark-green:not([disabled]):not(.disabled):active,.show>.btn-dark-green.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#1b451d!important}.btn-dark-green:not([disabled]):not(.disabled).active:focus,.btn-dark-green:not([disabled]):not(.disabled):active:focus,.show>.btn-dark-green.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.dark-green-ic{color:#388e3c!important}.dark-green-ic:focus,.dark-green-ic:hover{color:#388e3c}table.table a.btn.btn-dark-green{color:#fff}.btn-outline-dark-green{border:2px solid #388e3c!important;background-color:transparent!important;color:#388e3c!important}.btn-outline-dark-green.active,.btn-outline-dark-green:active,.btn-outline-dark-green:active:focus,.btn-outline-dark-green:focus,.btn-outline-dark-green:hover{border-color:#388e3c!important;background-color:transparent!important;color:#388e3c!important}.btn-outline-dark-green:not([disabled]):not(.disabled).active,.btn-outline-dark-green:not([disabled]):not(.disabled):active,.show>.btn-outline-dark-green.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#388e3c!important}.btn-outline-dark-green:not([disabled]):not(.disabled).active:focus,.btn-outline-dark-green:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-dark-green.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-mdb-color{background-color:#59698d!important;color:#fff}.btn-mdb-color:hover{background-color:#63759d;color:#fff}.btn-mdb-color.focus,.btn-mdb-color:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-mdb-color.active,.btn-mdb-color:active,.btn-mdb-color:focus{background-color:#323a4e}.btn-mdb-color.dropdown-toggle{background-color:#59698d!important}.btn-mdb-color.dropdown-toggle:focus,.btn-mdb-color.dropdown-toggle:hover{background-color:#63759d!important}.btn-mdb-color:not([disabled]):not(.disabled).active,.btn-mdb-color:not([disabled]):not(.disabled):active,.show>.btn-mdb-color.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#323a4e!important}.btn-mdb-color:not([disabled]):not(.disabled).active:focus,.btn-mdb-color:not([disabled]):not(.disabled):active:focus,.show>.btn-mdb-color.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.mdb-color-ic{color:#59698d!important}.mdb-color-ic:focus,.mdb-color-ic:hover{color:#59698d}table.table a.btn.btn-mdb-color{color:#fff}.btn-outline-mdb-color{border:2px solid #59698d!important;background-color:transparent!important;color:#59698d!important}.btn-outline-mdb-color.active,.btn-outline-mdb-color:active,.btn-outline-mdb-color:active:focus,.btn-outline-mdb-color:focus,.btn-outline-mdb-color:hover{border-color:#59698d!important;background-color:transparent!important;color:#59698d!important}.btn-outline-mdb-color:not([disabled]):not(.disabled).active,.btn-outline-mdb-color:not([disabled]):not(.disabled):active,.show>.btn-outline-mdb-color.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#59698d!important}.btn-outline-mdb-color:not([disabled]):not(.disabled).active:focus,.btn-outline-mdb-color:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-mdb-color.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-red{background-color:#d32f2f!important;color:#fff}.btn-red:hover{background-color:#d74444;color:#fff}.btn-red.focus,.btn-red:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-red.active,.btn-red:active,.btn-red:focus{background-color:#811b1b}.btn-red.dropdown-toggle{background-color:#d32f2f!important}.btn-red.dropdown-toggle:focus,.btn-red.dropdown-toggle:hover{background-color:#d74444!important}.btn-red:not([disabled]):not(.disabled).active,.btn-red:not([disabled]):not(.disabled):active,.show>.btn-red.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#811b1b!important}.btn-red:not([disabled]):not(.disabled).active:focus,.btn-red:not([disabled]):not(.disabled):active:focus,.show>.btn-red.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.red-ic{color:#d32f2f!important}.red-ic:focus,.red-ic:hover{color:#d32f2f}table.table a.btn.btn-red{color:#fff}.btn-outline-red{border:2px solid #d32f2f!important;background-color:transparent!important;color:#d32f2f!important}.btn-outline-red.active,.btn-outline-red:active,.btn-outline-red:active:focus,.btn-outline-red:focus,.btn-outline-red:hover{border-color:#d32f2f!important;background-color:transparent!important;color:#d32f2f!important}.btn-outline-red:not([disabled]):not(.disabled).active,.btn-outline-red:not([disabled]):not(.disabled):active,.show>.btn-outline-red.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#d32f2f!important}.btn-outline-red:not([disabled]):not(.disabled).active:focus,.btn-outline-red:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-red.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-pink{background-color:#ec407a!important;color:#fff}.btn-pink:hover{background-color:#ee578a;color:#fff}.btn-pink.focus,.btn-pink:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-pink.active,.btn-pink:active,.btn-pink:focus{background-color:#b41249}.btn-pink.dropdown-toggle{background-color:#ec407a!important}.btn-pink.dropdown-toggle:focus,.btn-pink.dropdown-toggle:hover{background-color:#ee578a!important}.btn-pink:not([disabled]):not(.disabled).active,.btn-pink:not([disabled]):not(.disabled):active,.show>.btn-pink.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#b41249!important}.btn-pink:not([disabled]):not(.disabled).active:focus,.btn-pink:not([disabled]):not(.disabled):active:focus,.show>.btn-pink.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.pink-ic{color:#ec407a!important}.pink-ic:focus,.pink-ic:hover{color:#ec407a}table.table a.btn.btn-pink{color:#fff}.btn-outline-pink{border:2px solid #ec407a!important;background-color:transparent!important;color:#ec407a!important}.btn-outline-pink.active,.btn-outline-pink:active,.btn-outline-pink:active:focus,.btn-outline-pink:focus,.btn-outline-pink:hover{border-color:#ec407a!important;background-color:transparent!important;color:#ec407a!important}.btn-outline-pink:not([disabled]):not(.disabled).active,.btn-outline-pink:not([disabled]):not(.disabled):active,.show>.btn-outline-pink.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#ec407a!important}.btn-outline-pink:not([disabled]):not(.disabled).active:focus,.btn-outline-pink:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-pink.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-purple{background-color:#8e24aa!important;color:#fff}.btn-purple:hover{background-color:#a028bf;color:#fff}.btn-purple.focus,.btn-purple:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-purple.active,.btn-purple:active,.btn-purple:focus{background-color:#481256}.btn-purple.dropdown-toggle{background-color:#8e24aa!important}.btn-purple.dropdown-toggle:focus,.btn-purple.dropdown-toggle:hover{background-color:#a028bf!important}.btn-purple:not([disabled]):not(.disabled).active,.btn-purple:not([disabled]):not(.disabled):active,.show>.btn-purple.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#481256!important}.btn-purple:not([disabled]):not(.disabled).active:focus,.btn-purple:not([disabled]):not(.disabled):active:focus,.show>.btn-purple.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.purple-ic{color:#8e24aa!important}.purple-ic:focus,.purple-ic:hover{color:#8e24aa}table.table a.btn.btn-purple{color:#fff}.btn-outline-purple{border:2px solid #8e24aa!important;background-color:transparent!important;color:#8e24aa!important}.btn-outline-purple.active,.btn-outline-purple:active,.btn-outline-purple:active:focus,.btn-outline-purple:focus,.btn-outline-purple:hover{border-color:#8e24aa!important;background-color:transparent!important;color:#8e24aa!important}.btn-outline-purple:not([disabled]):not(.disabled).active,.btn-outline-purple:not([disabled]):not(.disabled):active,.show>.btn-outline-purple.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#8e24aa!important}.btn-outline-purple:not([disabled]):not(.disabled).active:focus,.btn-outline-purple:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-purple.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-deep-purple{background-color:#512da8!important;color:#fff}.btn-deep-purple:hover{background-color:#5b32bc;color:#fff}.btn-deep-purple.focus,.btn-deep-purple:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-deep-purple.active,.btn-deep-purple:active,.btn-deep-purple:focus{background-color:#2a1758}.btn-deep-purple.dropdown-toggle{background-color:#512da8!important}.btn-deep-purple.dropdown-toggle:focus,.btn-deep-purple.dropdown-toggle:hover{background-color:#5b32bc!important}.btn-deep-purple:not([disabled]):not(.disabled).active,.btn-deep-purple:not([disabled]):not(.disabled):active,.show>.btn-deep-purple.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#2a1758!important}.btn-deep-purple:not([disabled]):not(.disabled).active:focus,.btn-deep-purple:not([disabled]):not(.disabled):active:focus,.show>.btn-deep-purple.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.deep-purple-ic{color:#512da8!important}.deep-purple-ic:focus,.deep-purple-ic:hover{color:#512da8}table.table a.btn.btn-deep-purple{color:#fff}.btn-outline-deep-purple{border:2px solid #512da8!important;background-color:transparent!important;color:#512da8!important}.btn-outline-deep-purple.active,.btn-outline-deep-purple:active,.btn-outline-deep-purple:active:focus,.btn-outline-deep-purple:focus,.btn-outline-deep-purple:hover{border-color:#512da8!important;background-color:transparent!important;color:#512da8!important}.btn-outline-deep-purple:not([disabled]):not(.disabled).active,.btn-outline-deep-purple:not([disabled]):not(.disabled):active,.show>.btn-outline-deep-purple.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#512da8!important}.btn-outline-deep-purple:not([disabled]):not(.disabled).active:focus,.btn-outline-deep-purple:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-deep-purple.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-indigo{background-color:#3f51b5!important;color:#fff}.btn-indigo:hover{background-color:#4d5ec1;color:#fff}.btn-indigo.focus,.btn-indigo:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-indigo.active,.btn-indigo:active,.btn-indigo:focus{background-color:#252f69}.btn-indigo.dropdown-toggle{background-color:#3f51b5!important}.btn-indigo.dropdown-toggle:focus,.btn-indigo.dropdown-toggle:hover{background-color:#4d5ec1!important}.btn-indigo:not([disabled]):not(.disabled).active,.btn-indigo:not([disabled]):not(.disabled):active,.show>.btn-indigo.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#252f69!important}.btn-indigo:not([disabled]):not(.disabled).active:focus,.btn-indigo:not([disabled]):not(.disabled):active:focus,.show>.btn-indigo.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.indigo-ic{color:#3f51b5!important}.indigo-ic:focus,.indigo-ic:hover{color:#3f51b5}table.table a.btn.btn-indigo{color:#fff}.btn-outline-indigo{border:2px solid #3f51b5!important;background-color:transparent!important;color:#3f51b5!important}.btn-outline-indigo.active,.btn-outline-indigo:active,.btn-outline-indigo:active:focus,.btn-outline-indigo:focus,.btn-outline-indigo:hover{border-color:#3f51b5!important;background-color:transparent!important;color:#3f51b5!important}.btn-outline-indigo:not([disabled]):not(.disabled).active,.btn-outline-indigo:not([disabled]):not(.disabled):active,.show>.btn-outline-indigo.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#3f51b5!important}.btn-outline-indigo:not([disabled]):not(.disabled).active:focus,.btn-outline-indigo:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-indigo.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-blue{background-color:#1976d2!important;color:#fff}.btn-blue:hover{background-color:#2083e4;color:#fff}.btn-blue.focus,.btn-blue:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-blue.active,.btn-blue:active,.btn-blue:focus{background-color:#0e4377}.btn-blue.dropdown-toggle{background-color:#1976d2!important}.btn-blue.dropdown-toggle:focus,.btn-blue.dropdown-toggle:hover{background-color:#2083e4!important}.btn-blue:not([disabled]):not(.disabled).active,.btn-blue:not([disabled]):not(.disabled):active,.show>.btn-blue.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#0e4377!important}.btn-blue:not([disabled]):not(.disabled).active:focus,.btn-blue:not([disabled]):not(.disabled):active:focus,.show>.btn-blue.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.blue-ic{color:#1976d2!important}.blue-ic:focus,.blue-ic:hover{color:#1976d2}table.table a.btn.btn-blue{color:#fff}.btn-outline-blue{border:2px solid #1976d2!important;background-color:transparent!important;color:#1976d2!important}.btn-outline-blue.active,.btn-outline-blue:active,.btn-outline-blue:active:focus,.btn-outline-blue:focus,.btn-outline-blue:hover{border-color:#1976d2!important;background-color:transparent!important;color:#1976d2!important}.btn-outline-blue:not([disabled]):not(.disabled).active,.btn-outline-blue:not([disabled]):not(.disabled):active,.show>.btn-outline-blue.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#1976d2!important}.btn-outline-blue:not([disabled]):not(.disabled).active:focus,.btn-outline-blue:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-blue.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-light-blue{background-color:#82b1ff!important;color:#fff}.btn-light-blue:hover{background-color:#9cc1ff;color:#fff}.btn-light-blue.focus,.btn-light-blue:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-light-blue.active,.btn-light-blue:active,.btn-light-blue:focus{background-color:#1c71ff}.btn-light-blue.dropdown-toggle{background-color:#82b1ff!important}.btn-light-blue.dropdown-toggle:focus,.btn-light-blue.dropdown-toggle:hover{background-color:#9cc1ff!important}.btn-light-blue:not([disabled]):not(.disabled).active,.btn-light-blue:not([disabled]):not(.disabled):active,.show>.btn-light-blue.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#1c71ff!important}.btn-light-blue:not([disabled]):not(.disabled).active:focus,.btn-light-blue:not([disabled]):not(.disabled):active:focus,.show>.btn-light-blue.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.light-blue-ic{color:#82b1ff!important}.light-blue-ic:focus,.light-blue-ic:hover{color:#82b1ff}table.table a.btn.btn-light-blue{color:#fff}.btn-outline-light-blue{border:2px solid #82b1ff!important;background-color:transparent!important;color:#82b1ff!important}.btn-outline-light-blue.active,.btn-outline-light-blue:active,.btn-outline-light-blue:active:focus,.btn-outline-light-blue:focus,.btn-outline-light-blue:hover{border-color:#82b1ff!important;background-color:transparent!important;color:#82b1ff!important}.btn-outline-light-blue:not([disabled]):not(.disabled).active,.btn-outline-light-blue:not([disabled]):not(.disabled):active,.show>.btn-outline-light-blue.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#82b1ff!important}.btn-outline-light-blue:not([disabled]):not(.disabled).active:focus,.btn-outline-light-blue:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-light-blue.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-cyan{background-color:#00bcd4!important;color:#fff}.btn-cyan:hover{background-color:#00d3ee;color:#fff}.btn-cyan.focus,.btn-cyan:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-cyan.active,.btn-cyan:active,.btn-cyan:focus{background-color:#00626e}.btn-cyan.dropdown-toggle{background-color:#00bcd4!important}.btn-cyan.dropdown-toggle:focus,.btn-cyan.dropdown-toggle:hover{background-color:#00d3ee!important}.btn-cyan:not([disabled]):not(.disabled).active,.btn-cyan:not([disabled]):not(.disabled):active,.show>.btn-cyan.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#00626e!important}.btn-cyan:not([disabled]):not(.disabled).active:focus,.btn-cyan:not([disabled]):not(.disabled):active:focus,.show>.btn-cyan.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.cyan-ic{color:#00bcd4!important}.cyan-ic:focus,.cyan-ic:hover{color:#00bcd4}table.table a.btn.btn-cyan{color:#fff}.btn-outline-cyan{border:2px solid #00bcd4!important;background-color:transparent!important;color:#00bcd4!important}.btn-outline-cyan.active,.btn-outline-cyan:active,.btn-outline-cyan:active:focus,.btn-outline-cyan:focus,.btn-outline-cyan:hover{border-color:#00bcd4!important;background-color:transparent!important;color:#00bcd4!important}.btn-outline-cyan:not([disabled]):not(.disabled).active,.btn-outline-cyan:not([disabled]):not(.disabled):active,.show>.btn-outline-cyan.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#00bcd4!important}.btn-outline-cyan:not([disabled]):not(.disabled).active:focus,.btn-outline-cyan:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-cyan.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-teal{background-color:#00796b!important;color:#fff}.btn-teal:hover{background-color:#009382;color:#fff}.btn-teal.focus,.btn-teal:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-teal.active,.btn-teal:active,.btn-teal:focus{background-color:#001311}.btn-teal.dropdown-toggle{background-color:#00796b!important}.btn-teal.dropdown-toggle:focus,.btn-teal.dropdown-toggle:hover{background-color:#009382!important}.btn-teal:not([disabled]):not(.disabled).active,.btn-teal:not([disabled]):not(.disabled):active,.show>.btn-teal.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#001311!important}.btn-teal:not([disabled]):not(.disabled).active:focus,.btn-teal:not([disabled]):not(.disabled):active:focus,.show>.btn-teal.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.teal-ic{color:#00796b!important}.teal-ic:focus,.teal-ic:hover{color:#00796b}table.table a.btn.btn-teal{color:#fff}.btn-outline-teal{border:2px solid #00796b!important;background-color:transparent!important;color:#00796b!important}.btn-outline-teal.active,.btn-outline-teal:active,.btn-outline-teal:active:focus,.btn-outline-teal:focus,.btn-outline-teal:hover{border-color:#00796b!important;background-color:transparent!important;color:#00796b!important}.btn-outline-teal:not([disabled]):not(.disabled).active,.btn-outline-teal:not([disabled]):not(.disabled):active,.show>.btn-outline-teal.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#00796b!important}.btn-outline-teal:not([disabled]):not(.disabled).active:focus,.btn-outline-teal:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-teal.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-green{background-color:#388e3c!important;color:#fff}.btn-green:hover{background-color:#3fa044;color:#fff}.btn-green.focus,.btn-green:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-green.active,.btn-green:active,.btn-green:focus{background-color:#1b451d}.btn-green.dropdown-toggle{background-color:#388e3c!important}.btn-green.dropdown-toggle:focus,.btn-green.dropdown-toggle:hover{background-color:#3fa044!important}.btn-green:not([disabled]):not(.disabled).active,.btn-green:not([disabled]):not(.disabled):active,.show>.btn-green.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#1b451d!important}.btn-green:not([disabled]):not(.disabled).active:focus,.btn-green:not([disabled]):not(.disabled):active:focus,.show>.btn-green.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.green-ic{color:#388e3c!important}.green-ic:focus,.green-ic:hover{color:#388e3c}table.table a.btn.btn-green{color:#fff}.btn-outline-green{border:2px solid #388e3c!important;background-color:transparent!important;color:#388e3c!important}.btn-outline-green.active,.btn-outline-green:active,.btn-outline-green:active:focus,.btn-outline-green:focus,.btn-outline-green:hover{border-color:#388e3c!important;background-color:transparent!important;color:#388e3c!important}.btn-outline-green:not([disabled]):not(.disabled).active,.btn-outline-green:not([disabled]):not(.disabled):active,.show>.btn-outline-green.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#388e3c!important}.btn-outline-green:not([disabled]):not(.disabled).active:focus,.btn-outline-green:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-green.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-light-green{background-color:#8bc34a!important;color:#fff}.btn-light-green:hover{background-color:#97c95d;color:#fff}.btn-light-green.focus,.btn-light-green:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-light-green.active,.btn-light-green:active,.btn-light-green:focus{background-color:#577d2a}.btn-light-green.dropdown-toggle{background-color:#8bc34a!important}.btn-light-green.dropdown-toggle:focus,.btn-light-green.dropdown-toggle:hover{background-color:#97c95d!important}.btn-light-green:not([disabled]):not(.disabled).active,.btn-light-green:not([disabled]):not(.disabled):active,.show>.btn-light-green.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#577d2a!important}.btn-light-green:not([disabled]):not(.disabled).active:focus,.btn-light-green:not([disabled]):not(.disabled):active:focus,.show>.btn-light-green.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.light-green-ic{color:#8bc34a!important}.light-green-ic:focus,.light-green-ic:hover{color:#8bc34a}table.table a.btn.btn-light-green{color:#fff}.btn-outline-light-green{border:2px solid #8bc34a!important;background-color:transparent!important;color:#8bc34a!important}.btn-outline-light-green.active,.btn-outline-light-green:active,.btn-outline-light-green:active:focus,.btn-outline-light-green:focus,.btn-outline-light-green:hover{border-color:#8bc34a!important;background-color:transparent!important;color:#8bc34a!important}.btn-outline-light-green:not([disabled]):not(.disabled).active,.btn-outline-light-green:not([disabled]):not(.disabled):active,.show>.btn-outline-light-green.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#8bc34a!important}.btn-outline-light-green:not([disabled]):not(.disabled).active:focus,.btn-outline-light-green:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-light-green.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-lime{background-color:#afb42b!important;color:#fff}.btn-lime:hover{background-color:#c3c930;color:#fff}.btn-lime.focus,.btn-lime:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-lime.active,.btn-lime:active,.btn-lime:focus{background-color:#5f6217}.btn-lime.dropdown-toggle{background-color:#afb42b!important}.btn-lime.dropdown-toggle:focus,.btn-lime.dropdown-toggle:hover{background-color:#c3c930!important}.btn-lime:not([disabled]):not(.disabled).active,.btn-lime:not([disabled]):not(.disabled):active,.show>.btn-lime.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#5f6217!important}.btn-lime:not([disabled]):not(.disabled).active:focus,.btn-lime:not([disabled]):not(.disabled):active:focus,.show>.btn-lime.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.lime-ic{color:#afb42b!important}.lime-ic:focus,.lime-ic:hover{color:#afb42b}table.table a.btn.btn-lime{color:#fff}.btn-outline-lime{border:2px solid #afb42b!important;background-color:transparent!important;color:#afb42b!important}.btn-outline-lime.active,.btn-outline-lime:active,.btn-outline-lime:active:focus,.btn-outline-lime:focus,.btn-outline-lime:hover{border-color:#afb42b!important;background-color:transparent!important;color:#afb42b!important}.btn-outline-lime:not([disabled]):not(.disabled).active,.btn-outline-lime:not([disabled]):not(.disabled):active,.show>.btn-outline-lime.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#afb42b!important}.btn-outline-lime:not([disabled]):not(.disabled).active:focus,.btn-outline-lime:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-lime.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-yellow{background-color:#fbc02d!important;color:#fff}.btn-yellow:hover{background-color:#fbc846;color:#fff}.btn-yellow.focus,.btn-yellow:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-yellow.active,.btn-yellow:active,.btn-yellow:focus{background-color:#be8904}.btn-yellow.dropdown-toggle{background-color:#fbc02d!important}.btn-yellow.dropdown-toggle:focus,.btn-yellow.dropdown-toggle:hover{background-color:#fbc846!important}.btn-yellow:not([disabled]):not(.disabled).active,.btn-yellow:not([disabled]):not(.disabled):active,.show>.btn-yellow.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#be8904!important}.btn-yellow:not([disabled]):not(.disabled).active:focus,.btn-yellow:not([disabled]):not(.disabled):active:focus,.show>.btn-yellow.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.yellow-ic{color:#fbc02d!important}.yellow-ic:focus,.yellow-ic:hover{color:#fbc02d}table.table a.btn.btn-yellow{color:#fff}.btn-outline-yellow{border:2px solid #fbc02d!important;background-color:transparent!important;color:#fbc02d!important}.btn-outline-yellow.active,.btn-outline-yellow:active,.btn-outline-yellow:active:focus,.btn-outline-yellow:focus,.btn-outline-yellow:hover{border-color:#fbc02d!important;background-color:transparent!important;color:#fbc02d!important}.btn-outline-yellow:not([disabled]):not(.disabled).active,.btn-outline-yellow:not([disabled]):not(.disabled):active,.show>.btn-outline-yellow.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#fbc02d!important}.btn-outline-yellow:not([disabled]):not(.disabled).active:focus,.btn-outline-yellow:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-yellow.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-amber{background-color:#ffa000!important;color:#fff}.btn-amber:hover{background-color:#ffaa1a;color:#fff}.btn-amber.focus,.btn-amber:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-amber.active,.btn-amber:active,.btn-amber:focus{background-color:#996000}.btn-amber.dropdown-toggle{background-color:#ffa000!important}.btn-amber.dropdown-toggle:focus,.btn-amber.dropdown-toggle:hover{background-color:#ffaa1a!important}.btn-amber:not([disabled]):not(.disabled).active,.btn-amber:not([disabled]):not(.disabled):active,.show>.btn-amber.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#996000!important}.btn-amber:not([disabled]):not(.disabled).active:focus,.btn-amber:not([disabled]):not(.disabled):active:focus,.show>.btn-amber.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.amber-ic{color:#ffa000!important}.amber-ic:focus,.amber-ic:hover{color:#ffa000}table.table a.btn.btn-amber{color:#fff}.btn-outline-amber{border:2px solid #ffa000!important;background-color:transparent!important;color:#ffa000!important}.btn-outline-amber.active,.btn-outline-amber:active,.btn-outline-amber:active:focus,.btn-outline-amber:focus,.btn-outline-amber:hover{border-color:#ffa000!important;background-color:transparent!important;color:#ffa000!important}.btn-outline-amber:not([disabled]):not(.disabled).active,.btn-outline-amber:not([disabled]):not(.disabled):active,.show>.btn-outline-amber.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#ffa000!important}.btn-outline-amber:not([disabled]):not(.disabled).active:focus,.btn-outline-amber:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-amber.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-orange{background-color:#f57c00!important;color:#fff}.btn-orange:hover{background-color:#ff8910;color:#fff}.btn-orange.focus,.btn-orange:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-orange.active,.btn-orange:active,.btn-orange:focus{background-color:#8f4800}.btn-orange.dropdown-toggle{background-color:#f57c00!important}.btn-orange.dropdown-toggle:focus,.btn-orange.dropdown-toggle:hover{background-color:#ff8910!important}.btn-orange:not([disabled]):not(.disabled).active,.btn-orange:not([disabled]):not(.disabled):active,.show>.btn-orange.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#8f4800!important}.btn-orange:not([disabled]):not(.disabled).active:focus,.btn-orange:not([disabled]):not(.disabled):active:focus,.show>.btn-orange.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.orange-ic{color:#f57c00!important}.orange-ic:focus,.orange-ic:hover{color:#f57c00}table.table a.btn.btn-orange{color:#fff}.btn-outline-orange{border:2px solid #f57c00!important;background-color:transparent!important;color:#f57c00!important}.btn-outline-orange.active,.btn-outline-orange:active,.btn-outline-orange:active:focus,.btn-outline-orange:focus,.btn-outline-orange:hover{border-color:#f57c00!important;background-color:transparent!important;color:#f57c00!important}.btn-outline-orange:not([disabled]):not(.disabled).active,.btn-outline-orange:not([disabled]):not(.disabled):active,.show>.btn-outline-orange.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#f57c00!important}.btn-outline-orange:not([disabled]):not(.disabled).active:focus,.btn-outline-orange:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-orange.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-deep-orange{background-color:#ff7043!important;color:#fff}.btn-deep-orange:hover{background-color:#ff835d;color:#fff}.btn-deep-orange.focus,.btn-deep-orange:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-deep-orange.active,.btn-deep-orange:active,.btn-deep-orange:focus{background-color:#dc3500}.btn-deep-orange.dropdown-toggle{background-color:#ff7043!important}.btn-deep-orange.dropdown-toggle:focus,.btn-deep-orange.dropdown-toggle:hover{background-color:#ff835d!important}.btn-deep-orange:not([disabled]):not(.disabled).active,.btn-deep-orange:not([disabled]):not(.disabled):active,.show>.btn-deep-orange.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#dc3500!important}.btn-deep-orange:not([disabled]):not(.disabled).active:focus,.btn-deep-orange:not([disabled]):not(.disabled):active:focus,.show>.btn-deep-orange.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.deep-orange-ic{color:#ff7043!important}.deep-orange-ic:focus,.deep-orange-ic:hover{color:#ff7043}table.table a.btn.btn-deep-orange{color:#fff}.btn-outline-deep-orange{border:2px solid #ff7043!important;background-color:transparent!important;color:#ff7043!important}.btn-outline-deep-orange.active,.btn-outline-deep-orange:active,.btn-outline-deep-orange:active:focus,.btn-outline-deep-orange:focus,.btn-outline-deep-orange:hover{border-color:#ff7043!important;background-color:transparent!important;color:#ff7043!important}.btn-outline-deep-orange:not([disabled]):not(.disabled).active,.btn-outline-deep-orange:not([disabled]):not(.disabled):active,.show>.btn-outline-deep-orange.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#ff7043!important}.btn-outline-deep-orange:not([disabled]):not(.disabled).active:focus,.btn-outline-deep-orange:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-deep-orange.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-brown{background-color:#795548!important;color:#fff}.btn-brown:hover{background-color:#896052;color:#fff}.btn-brown.focus,.btn-brown:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-brown.active,.btn-brown:active,.btn-brown:focus{background-color:#392822}.btn-brown.dropdown-toggle{background-color:#795548!important}.btn-brown.dropdown-toggle:focus,.btn-brown.dropdown-toggle:hover{background-color:#896052!important}.btn-brown:not([disabled]):not(.disabled).active,.btn-brown:not([disabled]):not(.disabled):active,.show>.btn-brown.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#392822!important}.btn-brown:not([disabled]):not(.disabled).active:focus,.btn-brown:not([disabled]):not(.disabled):active:focus,.show>.btn-brown.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.brown-ic{color:#795548!important}.brown-ic:focus,.brown-ic:hover{color:#795548}table.table a.btn.btn-brown{color:#fff}.btn-outline-brown{border:2px solid #795548!important;background-color:transparent!important;color:#795548!important}.btn-outline-brown.active,.btn-outline-brown:active,.btn-outline-brown:active:focus,.btn-outline-brown:focus,.btn-outline-brown:hover{border-color:#795548!important;background-color:transparent!important;color:#795548!important}.btn-outline-brown:not([disabled]):not(.disabled).active,.btn-outline-brown:not([disabled]):not(.disabled):active,.show>.btn-outline-brown.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#795548!important}.btn-outline-brown:not([disabled]):not(.disabled).active:focus,.btn-outline-brown:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-brown.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-grey{background-color:#616161!important;color:#fff}.btn-grey:hover{background-color:#6e6e6e;color:#fff}.btn-grey.focus,.btn-grey:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-grey.active,.btn-grey:active,.btn-grey:focus{background-color:#2e2e2e}.btn-grey.dropdown-toggle{background-color:#616161!important}.btn-grey.dropdown-toggle:focus,.btn-grey.dropdown-toggle:hover{background-color:#6e6e6e!important}.btn-grey:not([disabled]):not(.disabled).active,.btn-grey:not([disabled]):not(.disabled):active,.show>.btn-grey.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#2e2e2e!important}.btn-grey:not([disabled]):not(.disabled).active:focus,.btn-grey:not([disabled]):not(.disabled):active:focus,.show>.btn-grey.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.grey-ic{color:#616161!important}.grey-ic:focus,.grey-ic:hover{color:#616161}table.table a.btn.btn-grey{color:#fff}.btn-outline-grey{border:2px solid #616161!important;background-color:transparent!important;color:#616161!important}.btn-outline-grey.active,.btn-outline-grey:active,.btn-outline-grey:active:focus,.btn-outline-grey:focus,.btn-outline-grey:hover{border-color:#616161!important;background-color:transparent!important;color:#616161!important}.btn-outline-grey:not([disabled]):not(.disabled).active,.btn-outline-grey:not([disabled]):not(.disabled):active,.show>.btn-outline-grey.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#616161!important}.btn-outline-grey:not([disabled]):not(.disabled).active:focus,.btn-outline-grey:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-grey.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-blue-grey{background-color:#78909c!important;color:#fff}.btn-blue-grey:hover{background-color:#879ca7;color:#fff}.btn-blue-grey.focus,.btn-blue-grey:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-blue-grey.active,.btn-blue-grey:active,.btn-blue-grey:focus{background-color:#4a5b64}.btn-blue-grey.dropdown-toggle{background-color:#78909c!important}.btn-blue-grey.dropdown-toggle:focus,.btn-blue-grey.dropdown-toggle:hover{background-color:#879ca7!important}.btn-blue-grey:not([disabled]):not(.disabled).active,.btn-blue-grey:not([disabled]):not(.disabled):active,.show>.btn-blue-grey.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#4a5b64!important}.btn-blue-grey:not([disabled]):not(.disabled).active:focus,.btn-blue-grey:not([disabled]):not(.disabled):active:focus,.show>.btn-blue-grey.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.blue-grey-ic{color:#78909c!important}.blue-grey-ic:focus,.blue-grey-ic:hover{color:#78909c}table.table a.btn.btn-blue-grey{color:#fff}.btn-outline-blue-grey{border:2px solid #78909c!important;background-color:transparent!important;color:#78909c!important}.btn-outline-blue-grey.active,.btn-outline-blue-grey:active,.btn-outline-blue-grey:active:focus,.btn-outline-blue-grey:focus,.btn-outline-blue-grey:hover{border-color:#78909c!important;background-color:transparent!important;color:#78909c!important}.btn-outline-blue-grey:not([disabled]):not(.disabled).active,.btn-outline-blue-grey:not([disabled]):not(.disabled):active,.show>.btn-outline-blue-grey.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#78909c!important}.btn-outline-blue-grey:not([disabled]):not(.disabled).active:focus,.btn-outline-blue-grey:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-blue-grey.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-dark{background-color:#212121!important;color:#fff}.btn-dark:hover{background-color:#2e2e2e;color:#fff}.btn-dark.focus,.btn-dark:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-dark.active,.btn-dark:active,.btn-dark:focus{background-color:#000}.btn-dark.dropdown-toggle{background-color:#212121!important}.btn-dark.dropdown-toggle:focus,.btn-dark.dropdown-toggle:hover{background-color:#2e2e2e!important}.btn-dark:not([disabled]):not(.disabled).active,.btn-dark:not([disabled]):not(.disabled):active,.show>.btn-dark.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#000!important}.btn-dark:not([disabled]):not(.disabled).active:focus,.btn-dark:not([disabled]):not(.disabled):active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.dark-ic{color:#212121!important}.dark-ic:focus,.dark-ic:hover{color:#212121}table.table a.btn.btn-dark{color:#fff}.btn-outline-dark{border:2px solid #212121!important;background-color:transparent!important;color:#212121!important}.btn-outline-dark.active,.btn-outline-dark:active,.btn-outline-dark:active:focus,.btn-outline-dark:focus,.btn-outline-dark:hover{border-color:#212121!important;background-color:transparent!important;color:#212121!important}.btn-outline-dark:not([disabled]):not(.disabled).active,.btn-outline-dark:not([disabled]):not(.disabled):active,.show>.btn-outline-dark.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#212121!important}.btn-outline-dark:not([disabled]):not(.disabled).active:focus,.btn-outline-dark:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-dark.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-light{background-color:#e0e0e0!important;color:#000}.btn-light:hover{background-color:#ededed;color:#000}.btn-light.focus,.btn-light:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-light.active,.btn-light:active,.btn-light:focus{background-color:#adadad}.btn-light.dropdown-toggle{background-color:#e0e0e0!important}.btn-light.dropdown-toggle:focus,.btn-light.dropdown-toggle:hover{background-color:#ededed!important}.btn-light:not([disabled]):not(.disabled).active,.btn-light:not([disabled]):not(.disabled):active,.show>.btn-light.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#adadad!important}.btn-light:not([disabled]):not(.disabled).active:focus,.btn-light:not([disabled]):not(.disabled):active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.light-ic{color:#e0e0e0!important}.light-ic:focus,.light-ic:hover{color:#e0e0e0}table.table a.btn.btn-light{color:#000}.btn-outline-light{border:2px solid #e0e0e0!important;background-color:transparent!important;color:#e0e0e0!important}.btn-outline-light.active,.btn-outline-light:active,.btn-outline-light:active:focus,.btn-outline-light:focus,.btn-outline-light:hover{border-color:#e0e0e0!important;background-color:transparent!important;color:#e0e0e0!important}.btn-outline-light:not([disabled]):not(.disabled).active,.btn-outline-light:not([disabled]):not(.disabled):active,.show>.btn-outline-light.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#e0e0e0!important}.btn-outline-light:not([disabled]):not(.disabled).active:focus,.btn-outline-light:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-light.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-white{background-color:#fff!important;color:#000}.btn-white:hover{background-color:#fff;color:#000}.btn-white.focus,.btn-white:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-white.active,.btn-white:active,.btn-white:focus{background-color:#ccc}.btn-white.dropdown-toggle,.btn-white.dropdown-toggle:focus,.btn-white.dropdown-toggle:hover{background-color:#fff!important}.btn-white:not([disabled]):not(.disabled).active,.btn-white:not([disabled]):not(.disabled):active,.show>.btn-white.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#ccc!important}.btn-white:not([disabled]):not(.disabled).active:focus,.btn-white:not([disabled]):not(.disabled):active:focus,.show>.btn-white.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.white-ic{color:#fff!important}.white-ic:focus,.white-ic:hover{color:#fff}a.btn:not([href]):not([tabindex]),a.btn:not([href]):not([tabindex]):focus,a.btn:not([href]):not([tabindex]):hover,table.table a.btn.btn-white{color:#000}.btn-outline-white{border:2px solid #fff!important;background-color:transparent!important;color:#fff!important}.btn-outline-white.active,.btn-outline-white:active,.btn-outline-white:active:focus,.btn-outline-white:focus,.btn-outline-white:hover{border-color:#fff!important;background-color:transparent!important;color:#fff!important}.btn-outline-white:not([disabled]):not(.disabled).active,.btn-outline-white:not([disabled]):not(.disabled):active,.show>.btn-outline-white.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#fff!important}.btn-outline-white:not([disabled]):not(.disabled).active:focus,.btn-outline-white:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-white.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-black{background-color:#000!important;color:#fff}.btn-black:hover{background-color:#0d0d0d;color:#fff}.btn-black.focus,.btn-black:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-black.active,.btn-black:active,.btn-black:focus{background-color:#000}.btn-black.dropdown-toggle{background-color:#000!important}.btn-black.dropdown-toggle:focus,.btn-black.dropdown-toggle:hover{background-color:#0d0d0d!important}.btn-black:not([disabled]):not(.disabled).active,.btn-black:not([disabled]):not(.disabled):active,.show>.btn-black.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:#000!important}.btn-black:not([disabled]):not(.disabled).active:focus,.btn-black:not([disabled]):not(.disabled):active:focus,.show>.btn-black.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.black-ic{color:#000!important}.black-ic:focus,.black-ic:hover{color:#000}a.btn:not([href]):not([tabindex]),a.btn:not([href]):not([tabindex]):focus,a.btn:not([href]):not([tabindex]):hover,table.table a.btn.btn-black{color:#fff}.btn-outline-black{border:2px solid #000!important;background-color:transparent!important;color:#000!important}.btn-outline-black.active,.btn-outline-black:active,.btn-outline-black:active:focus,.btn-outline-black:focus,.btn-outline-black:hover{border-color:#000!important;background-color:transparent!important;color:#000!important}.btn-outline-black:not([disabled]):not(.disabled).active,.btn-outline-black:not([disabled]):not(.disabled):active,.show>.btn-outline-black.dropdown-toggle{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);background-color:transparent!important;border-color:#000!important}.btn-outline-black:not([disabled]):not(.disabled).active:focus,.btn-outline-black:not([disabled]):not(.disabled):active:focus,.show>.btn-outline-black.dropdown-toggle:focus{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15)}.btn-warning:not(:disabled):not(.disabled).active,.btn-warning:not(:disabled):not(.disabled):active,.show>.btn-warning.dropdown-toggle{color:#fff}.btn.purple-gradient{transition:.5s ease;color:#fff}.btn.purple-gradient:active,.btn.purple-gradient:active:focus .btn.purple-gradient.active,.btn.purple-gradient:focus,.btn.purple-gradient:hover{background:linear-gradient(#ff88ce,#8f8bf7)}.btn.peach-gradient{transition:.5s ease;color:#fff}.btn.peach-gradient:active,.btn.peach-gradient:active:focus .btn.peach-gradient.active,.btn.peach-gradient:focus,.btn.peach-gradient:hover{background:linear-gradient(#ffdf89,#fc7b7b)}.btn.aqua-gradient{transition:.5s ease;color:#fff}.btn.aqua-gradient:active,.btn.aqua-gradient:active:focus .btn.aqua-gradient.active,.btn.aqua-gradient:focus,.btn.aqua-gradient:hover{background:linear-gradient(#3aa2ff,#1fffac)}.btn.blue-gradient{transition:.5s ease;color:#fff}.btn.blue-gradient:active,.btn.blue-gradient:active:focus .btn.blue-gradient.active,.btn.blue-gradient:focus,.btn.blue-gradient:hover{background:linear-gradient(#5ed1fc,#3647b3)}.btn mdb-icon{position:relative;font-size:.9rem}.btn mdb-icon.right{margin-left:.3rem}.btn mdb-icon.left{margin-right:.3rem}.btn.btn-lg{padding:1rem 2.4rem;font-size:.94rem}.btn.btn-lg mdb-icon{font-size:1rem}.btn.btn-md{padding:.7rem 1.6rem;font-size:.7rem}.btn.btn-md mdb-icon{font-size:.8rem}.btn.btn-sm{padding:.5rem 1.6rem;font-size:.64rem}.btn.btn-sm mdb-icon{font-size:.7rem}\"]\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }]; }, { color: [{\n type: Input\n }], rounded: [{\n type: Input\n }], gradient: [{\n type: Input\n }], outline: [{\n type: Input\n }], flat: [{\n type: Input\n }], size: [{\n type: Input\n }], block: [{\n type: Input\n }], floating: [{\n type: Input\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ButtonCheckboxDirective, [{\n type: Directive,\n args: [{ selector: '[mdbCheckbox]', providers: [CHECKBOX_CONTROL_VALUE_ACCESSOR] }]\n }], function () { return []; }, { btnCheckboxTrue: [{\n type: Input\n }], btnCheckboxFalse: [{\n type: Input\n }], state: [{\n type: HostBinding,\n args: ['class.active']\n }], \n // view -> model\n onClick: [{\n type: HostListener,\n args: ['click']\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ButtonRadioDirective, [{\n type: Directive,\n args: [{ selector: '[mdbRadio]', providers: [RADIO_CONTROL_VALUE_ACCESSOR] }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }]; }, { disabled: [{\n type: HostBinding,\n args: ['class.disabled']\n }, {\n type: Input\n }], isActive: [{\n type: HostBinding,\n args: ['class.active']\n }], onClick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }], value: [{\n type: Input\n }], uncheckable: [{\n type: Input\n }], mdbRadio: [{\n type: Input\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(FixedButtonCaptionDirective, [{\n type: Directive,\n args: [{ selector: '[mdbFixedCaption]' }]\n }], function () { return [{ type: ɵngcc0.Renderer2 }, { type: ɵngcc0.ElementRef }]; }, { caption: [{\n type: Input,\n args: ['mdbFixedCaption']\n }], collapseButtonActivator: [{\n type: Input,\n args: ['collapseButton']\n }] }); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(ButtonsModule, { declarations: [ButtonCheckboxDirective, ButtonRadioDirective, MdbBtnDirective, FixedButtonCaptionDirective], exports: [ButtonCheckboxDirective, ButtonRadioDirective, MdbBtnDirective, FixedButtonCaptionDirective] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ButtonsModule, [{\n type: NgModule,\n args: [{\n declarations: [\n ButtonCheckboxDirective,\n ButtonRadioDirective,\n MdbBtnDirective,\n FixedButtonCaptionDirective,\n ],\n exports: [\n ButtonCheckboxDirective,\n ButtonRadioDirective,\n MdbBtnDirective,\n FixedButtonCaptionDirective,\n ]\n }]\n }], null, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MdbCardFooterComponent, [{\n type: Component,\n args: [{\n selector: 'mdb-card-footer',\n template: \"\\n\",\n changeDetection: ChangeDetectionStrategy.OnPush\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }]; }, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MdbCardTitleComponent, [{\n type: Component,\n args: [{\n selector: 'mdb-card-title',\n template: \"\",\n changeDetection: ChangeDetectionStrategy.OnPush\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }]; }, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MdbCardTextComponent, [{\n type: Component,\n args: [{\n selector: 'mdb-card-text',\n template: \"

    \\n \\n

    \",\n changeDetection: ChangeDetectionStrategy.OnPush\n }]\n }], null, { class: [{\n type: Input\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MdbCardBodyComponent, [{\n type: Component,\n args: [{\n selector: 'mdb-card-body',\n template: \"\\n\",\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }]; }, { cascade: [{\n type: Input\n }], class: [{\n type: Input\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MdbCardComponent, [{\n type: Component,\n args: [{\n selector: 'mdb-card',\n template: \"\\n\",\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n styles: [\".card{box-shadow:0 2px 5px 0 rgba(0,0,0,.16),0 2px 10px 0 rgba(0,0,0,.12);border:0;font-weight:400}.card[class*=border]{border:1px solid #9e9e9e;box-shadow:none}.card .card-body h1,.card .card-body h2,.card .card-body h3,.card .card-body h4,.card .card-body h5,.card .card-body h6{font-weight:400}.card .card-body .card-title a,.card .card-body .card-title a:hover{transition:.2s ease-in-out}.card .card-body .card-text{color:#747373;font-size:.9rem;font-weight:400}.card .md-form label{font-weight:300}.card-text:last-child{margin-bottom:1rem!important}mdb-card-img img.img-fluid{width:100%}\"]\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }]; }, { narrower: [{\n type: Input\n }], reverse: [{\n type: Input\n }], dark: [{\n type: Input\n }], bgColor: [{\n type: Input\n }], borderColor: [{\n type: Input\n }], class: [{\n type: Input\n }], cascade: [{\n type: Input\n }], wider: [{\n type: Input\n }], imageBackground: [{\n type: Input\n }], card: [{\n type: ViewChild,\n args: ['card', { static: true }]\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MdbCardImageComponent, [{\n type: Component,\n args: [{\n selector: 'mdb-card-img',\n template: \"\",\n changeDetection: ChangeDetectionStrategy.OnPush\n }]\n }], null, { src: [{\n type: Input\n }], alt: [{\n type: Input\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MdbCardHeaderComponent, [{\n type: Component,\n args: [{\n selector: 'mdb-card-header',\n template: \"\",\n changeDetection: ChangeDetectionStrategy.OnPush\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }]; }, { class: [{\n type: Input\n }] }); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(CardsModule, { declarations: function () { return [MdbCardComponent, MdbCardBodyComponent, MdbCardImageComponent, MdbCardTextComponent, MdbCardTitleComponent, MdbCardFooterComponent, MdbCardHeaderComponent]; }, imports: function () { return [CommonModule]; }, exports: function () { return [MdbCardComponent, MdbCardBodyComponent, MdbCardImageComponent, MdbCardTextComponent, MdbCardTitleComponent, MdbCardFooterComponent, MdbCardHeaderComponent]; } }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(CardsModule, [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n declarations: [\n MdbCardComponent,\n MdbCardBodyComponent,\n MdbCardImageComponent,\n MdbCardTextComponent,\n MdbCardTitleComponent,\n MdbCardFooterComponent,\n MdbCardHeaderComponent,\n ],\n exports: [\n MdbCardComponent,\n MdbCardBodyComponent,\n MdbCardImageComponent,\n MdbCardTextComponent,\n MdbCardTitleComponent,\n MdbCardFooterComponent,\n MdbCardHeaderComponent,\n ]\n }]\n }], null, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(SlideComponent, [{\n type: Component,\n args: [{\n selector: 'mdb-slide, mdb-carousel-item',\n template: `\n \n `\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }]; }, { animated: [{\n type: HostBinding,\n args: ['class.animated']\n }], directionNext: [{\n type: HostBinding,\n args: ['class.carousel-item-next']\n }], directionLeft: [{\n type: HostBinding,\n args: ['class.carousel-item-left']\n }], directionPrev: [{\n type: HostBinding,\n args: ['class.carousel-item-prev']\n }], directionRight: [{\n type: HostBinding,\n args: ['class.carousel-item-right']\n }], el: [{\n type: HostBinding,\n args: ['class.carousel-item']\n }], active: [{\n type: HostBinding,\n args: ['class.active']\n }, {\n type: Input\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(CarouselConfig, [{\n type: Injectable\n }], function () { return []; }, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(CarouselComponent, [{\n type: Component,\n args: [{\n selector: 'mdb-carousel',\n template: \"\\n
    1 && !checkNavigation() && isControls\\\">\\n \\n \\n
    \\n
      1 && checkDots() && isControls\\\">\\n \\n
    \\n
      1 && !checkDots() && isControls\\\">\\n \\n \\n \\n
    \\n
    \\n 1 && checkNavigation() && isControls\\\"\\n >\\n \\n Previous\\n \\n 1 && checkNavigation() && isControls\\\"\\n >\\n \\n Next\\n \\n\\n\",\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n styles: [\".carousel .carousel-control-next-icon,.carousel .carousel-control-prev-icon{width:2.25rem;height:2.25rem}.carousel .carousel-indicators li{width:.625rem;height:.625rem;border-radius:50%;cursor:pointer}.carousel-fade .carousel-item{opacity:0;transition-duration:.6s;transition-property:opacity}.carousel-fade .carousel-item-next.carousel-item-left,.carousel-fade .carousel-item-prev.carousel-item-right,.carousel-fade .carousel-item.active{opacity:1}.carousel-fade .carousel-item-left.active,.carousel-fade .carousel-item-right.active{opacity:0}.carousel-fade .carousel-item-left.active,.carousel-fade .carousel-item-next,.carousel-fade .carousel-item-prev,.carousel-fade .carousel-item-prev.active,.carousel-fade .carousel-item.active{transform:translateX(0)}@supports (transform-style:preserve-3d){.carousel-fade .carousel-item-left.active,.carousel-fade .carousel-item-next,.carousel-fade .carousel-item-prev,.carousel-fade .carousel-item-prev.active,.carousel-fade .carousel-item.active{transform:translateZ(0)}}.carousel-control-next,.carousel-control-prev,.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:flex;overflow:hidden}.carousel,.carousel-multi-item,.carousel-thumbnails{outline:none}.carousel-fade .carousel-inner .carousel-item{opacity:0;transition-property:opacity}.carousel-fade .carousel-inner .active{opacity:1;transition:all .6s}.carousel-fade .carousel-inner>.carousel-item.active,.carousel-fade .carousel-inner>.carousel-item.next.left,.carousel-fade .carousel-inner>.carousel-item.prev.right{opacity:1;transition:all .6s;transform:translateZ(0)}\"]\n }]\n }], function () { return [{ type: CarouselConfig }, { type: ɵngcc0.ElementRef }, { type: String, decorators: [{\n type: Inject,\n args: [PLATFORM_ID]\n }] }, { type: ɵngcc0.ChangeDetectorRef }, { type: ɵngcc0.Renderer2 }]; }, { isControls: [{\n type: Input\n }], class: [{\n type: Input\n }], type: [{\n type: Input\n }], animation: [{\n type: Input\n }], allowSwipe: [{\n type: Input\n }], activeSlideChange: [{\n type: Output\n }], activeSlide: [{\n type: Input\n }], interval: [{\n type: Input\n }], _slidesList: [{\n type: ContentChildren,\n args: [SlideComponent]\n }], play: [{\n type: HostListener,\n args: ['mouseleave']\n }], pause: [{\n type: HostListener,\n args: ['mouseenter']\n }], keyboardControl: [{\n type: HostListener,\n args: ['keyup', ['$event']]\n }], focus: [{\n type: HostListener,\n args: ['click']\n }], noWrap: [{\n type: Input\n }], noPause: [{\n type: Input\n }], keyboard: [{\n type: Input\n }], activeSlideIndex: [{\n type: Input\n }] }); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(CarouselModule, { declarations: function () { return [SlideComponent, CarouselComponent]; }, imports: function () { return [CommonModule, ButtonsModule]; }, exports: function () { return [SlideComponent, CarouselComponent]; } }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(CarouselModule, [{\n type: NgModule,\n args: [{\n imports: [CommonModule, ButtonsModule],\n declarations: [SlideComponent, CarouselComponent],\n exports: [SlideComponent, CarouselComponent],\n providers: [CarouselConfig]\n }]\n }], null, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(BaseChartDirective, [{\n type: Directive,\n args: [{ selector: 'canvas[mdbChart]', exportAs: 'mdb-base-chart' }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: String, decorators: [{\n type: Inject,\n args: [PLATFORM_ID]\n }] }]; }, { labels: [{\n type: Input\n }], options: [{\n type: Input\n }], legend: [{\n type: Input\n }], chartClick: [{\n type: Output\n }], chartHover: [{\n type: Output\n }], data: [{\n type: Input\n }], datasets: [{\n type: Input\n }], chartType: [{\n type: Input\n }], colors: [{\n type: Input\n }] }); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(ChartsModule, { declarations: [BaseChartDirective], exports: [BaseChartDirective] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ChartsModule, [{\n type: NgModule,\n args: [{\n declarations: [BaseChartDirective],\n exports: [BaseChartDirective]\n }]\n }], null, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(CheckboxComponent, [{\n type: Component,\n args: [{\n selector: 'mdb-checkbox',\n template: \"\\n \\n \\n \\n \\n\\n\",\n encapsulation: ViewEncapsulation.None,\n providers: [CHECKBOX_VALUE_ACCESSOR],\n changeDetection: ChangeDetectionStrategy.OnPush,\n styles: [\".form-check-label.label-before:after,.form-check-label.label-before:before{top:0!important;right:0!important;left:auto!important}.custom-control-label.label-before:after,.custom-control-label.label-before:before{top:.25rem!important;right:0!important;left:auto!important}.custom-control-label.label-before{position:absolute}.custom-control-inline .label-before{position:relative}.form-check-label.label-before{padding-left:0!important;padding-right:35px}.custom-control-label.label-before{padding-left:0!important;padding-right:25px!important}.form-check-input[type=checkbox]:checked+.label-before:before,label.btn input[type=checkbox]:checked+.label-before:before{top:-4px!important;right:10px!important;left:auto!important}.form-check-input[type=checkbox]:indeterminate+.label-before:before,label.btn input[type=checkbox]:indeterminate+.label-before:before{top:-11px!important;right:16px!important;left:auto!important}.form-check-input[type=checkbox].filled-in+.label-before:before,.form-check-input[type=checkbox].filled-in:checked+.label-before:before,label.btn input[type=checkbox].filled-in+.label-before:before,label.btn input[type=checkbox].filled-in:checked+.label-before:before{top:0!important;right:10px!important;left:auto!important}.form-check-input[type=checkbox].filled-in+.label-before:after,label.btn input[type=checkbox].filled-in+.label-before:after{top:0!important;left:auto!important}.checkbox-rounded:after{border-radius:50%!important}mdb-checkbox .form-check{padding-left:0!important}\"]\n }]\n }], function () { return [{ type: ɵngcc0.ChangeDetectorRef }]; }, { id: [{\n type: Input\n }], checked: [{\n type: Input\n }], filledIn: [{\n type: Input\n }], indeterminate: [{\n type: Input\n }], rounded: [{\n type: Input\n }], checkboxPosition: [{\n type: Input\n }], default: [{\n type: Input\n }], inline: [{\n type: Input\n }], change: [{\n type: Output\n }], onLabelClick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }], onDocumentClick: [{\n type: HostListener,\n args: ['document:click']\n }], value: [{\n type: Input\n }], disabled: [{\n type: Input\n }], inputEl: [{\n type: ViewChild,\n args: ['input', { static: true }]\n }], class: [{\n type: Input\n }], required: [{\n type: Input\n }], name: [{\n type: Input\n }], tabIndex: [{\n type: Input\n }] }); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(CheckboxModule, { declarations: function () { return [CheckboxComponent]; }, imports: function () { return [CommonModule, FormsModule]; }, exports: function () { return [CheckboxComponent]; } }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(CheckboxModule, [{\n type: NgModule,\n args: [{\n declarations: [CheckboxComponent],\n exports: [CheckboxComponent],\n imports: [CommonModule, FormsModule]\n }]\n }], null, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(CollapseComponent, [{\n type: Component,\n args: [{\n // tslint:disable-next-line:component-selector\n selector: '[mdbCollapse]',\n exportAs: 'bs-collapse',\n template: '',\n animations: [\n trigger('expandBody', [\n state('collapsed', style({ height: '0px' })),\n state('expanded', style({ height: '*' })),\n transition('expanded <=> collapsed', animate('500ms ease')),\n ]),\n ],\n changeDetection: ChangeDetectionStrategy.OnPush\n }]\n }], function () { return [{ type: ɵngcc0.ChangeDetectorRef }]; }, { isCollapsed: [{\n type: Input\n }], showBsCollapse: [{\n type: Output\n }], shownBsCollapse: [{\n type: Output\n }], hideBsCollapse: [{\n type: Output\n }], hiddenBsCollapse: [{\n type: Output\n }], collapsed: [{\n type: Output\n }], expanded: [{\n type: Output\n }], overflow: [{\n type: HostBinding,\n args: ['style.overflow']\n }], onExpandBodyDone: [{\n type: HostListener,\n args: ['@expandBody.done', ['$event']]\n }], expandAnimationState: [{\n type: HostBinding,\n args: ['@expandBody']\n }], captions: [{\n type: ContentChildren,\n args: [FixedButtonCaptionDirective]\n }] }); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(CollapseModule, { declarations: [CollapseComponent], exports: [CollapseComponent] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(CollapseModule, [{\n type: NgModule,\n args: [{\n declarations: [CollapseComponent],\n exports: [CollapseComponent]\n }]\n }], null, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(PositioningService, [{\n type: Injectable\n }], function () { return [{ type: ɵngcc0.RendererFactory2 }, { type: Number, decorators: [{\n type: Inject,\n args: [PLATFORM_ID]\n }] }, { type: ɵngcc0.NgZone }]; }, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ComponentLoaderFactory, [{\n type: Injectable\n }], function () { return [{ type: ɵngcc0.ComponentFactoryResolver }, { type: ɵngcc0.NgZone }, { type: ɵngcc0.Injector }, { type: PositioningService }, { type: ɵngcc0.ApplicationRef }]; }, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(BsDropdownConfig, [{\n type: Injectable\n }], function () { return []; }, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(BsDropdownState, [{\n type: Injectable\n }], function () { return []; }, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(BsDropdownContainerComponent, [{\n type: Component,\n args: [{\n selector: 'mdb-dropdown-container',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n \n \n \n `\n }]\n }], function () { return [{ type: BsDropdownState }]; }, { display: [{\n type: HostBinding,\n args: ['style.display']\n }], position: [{\n type: HostBinding,\n args: ['style.position']\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(BsDropdownDirective, [{\n type: Component,\n args: [{\n // tslint:disable-next-line:component-selector\n selector: '[mdbDropdown],[dropdown]',\n exportAs: 'bs-dropdown',\n template: '',\n encapsulation: ViewEncapsulation.None,\n providers: [BsDropdownState],\n styles: [\".dropdown-menu .dropdown-item:active{background-color:#757575}.show>.dropdown-menu{display:block}.show>a{outline:0}.dropdown-menu{margin-top:5px}.various-dropdown{transform:translate3d(0,21px,0)!important}.a-various-dropdown{transform:translate3d(0,29px,0)!important}.medium-dropdown{transform:translate3d(0,36px,0)!important}.small-dropdown{transform:translate3d(5px,34px,0)!important}.large-dropdown{transform:translate3d(5px,57px,0)!important}.btn-group>.dropdown-menu{transform:translate3d(0,43px,0)}.dropup>.dropdown-menu{display:none;transform:translate3d(117px,0,0)!important;will-change:transform}.dropup.show .dropdown-menu{display:block;opacity:0}.dropup.show .fadeInDropdown{opacity:1}.dropup-material.show .dropdown-menu{transition:.55s}.dropdown-menu{display:none;position:absolute;transform:translate3d(6px,49px,0);top:0;left:0;will-change:transform}.dropdown.show .dropdown-menu{display:block;opacity:0;transition:.55s}.dropdown.show .fadeInDropdown{opacity:1}\"]\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }, { type: ɵngcc0.ViewContainerRef }, { type: ComponentLoaderFactory }, { type: BsDropdownConfig }, { type: BsDropdownState }, { type: ɵngcc0.ChangeDetectorRef }]; }, { dropupDefault: [{\n type: Input\n }], dynamicPosition: [{\n type: Input\n }], onShown: [{\n type: Output\n }], shown: [{\n type: Output\n }], onHidden: [{\n type: Output\n }], hidden: [{\n type: Output\n }], isOpenChange: [{\n type: Output\n }], isDropup: [{\n type: HostBinding,\n args: ['class.dropup']\n }], autoClose: [{\n type: Input\n }], isDisabled: [{\n type: Input\n }], isOpen: [{\n type: HostBinding,\n args: ['class.open']\n }, {\n type: HostBinding,\n args: ['class.show']\n }, {\n type: Input\n }], dropup: [{\n type: Input\n }], placement: [{\n type: Input\n }], triggers: [{\n type: Input\n }], container: [{\n type: Input\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(BsDropdownMenuDirective, [{\n type: Directive,\n args: [{\n selector: '[mdbDropdownMenu],[dropdownMenu]',\n exportAs: 'bs-dropdown-menu'\n }]\n }], function () { return [{ type: BsDropdownState }, { type: ɵngcc0.ViewContainerRef }, { type: ɵngcc0.TemplateRef }]; }, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(BsDropdownToggleDirective, [{\n type: Directive,\n args: [{\n selector: '[mdbDropdownToggle],[dropdownToggle]',\n exportAs: 'bs-dropdown-toggle'\n }]\n }], function () { return [{ type: BsDropdownState }, { type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }, { type: ɵngcc0.ChangeDetectorRef }]; }, { ariaHaspopup: [{\n type: HostBinding,\n args: ['attr.aria-haspopup']\n }], isDisabled: [{\n type: HostBinding,\n args: ['attr.disabled']\n }], isOpen: [{\n type: HostBinding,\n args: ['attr.aria-expanded']\n }], onClick: [{\n type: HostListener,\n args: ['click']\n }] }); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(DropdownModule, { declarations: [BsDropdownMenuDirective, BsDropdownToggleDirective, BsDropdownContainerComponent, BsDropdownDirective], exports: [BsDropdownMenuDirective, BsDropdownToggleDirective, BsDropdownDirective] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(DropdownModule, [{\n type: NgModule,\n args: [{\n declarations: [\n BsDropdownMenuDirective,\n BsDropdownToggleDirective,\n BsDropdownContainerComponent,\n BsDropdownDirective,\n ],\n exports: [BsDropdownMenuDirective, BsDropdownToggleDirective, BsDropdownDirective],\n entryComponents: [BsDropdownContainerComponent]\n }]\n }], null, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MdbIconComponent, [{\n type: Component,\n args: [{\n selector: 'mdb-icon',\n template: \"
    \\n\",\n changeDetection: ChangeDetectionStrategy.OnPush\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }]; }, { icon: [{\n type: Input\n }], size: [{\n type: Input\n }], class: [{\n type: Input\n }], classInside: [{\n type: Input\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(FalDirective, [{\n type: Directive,\n args: [{ selector: '[fal], [light]' }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }]; }, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(FarDirective, [{\n type: Directive,\n args: [{ selector: '[far], [regular]' }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }]; }, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(FasDirective, [{\n type: Directive,\n args: [{ selector: '[fas], [solid]' }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }]; }, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(FabDirective, [{\n type: Directive,\n args: [{ selector: '[fab], [brands]' }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }]; }, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(FadDirective, [{\n type: Directive,\n args: [{ selector: '[fad], [duotone]' }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }]; }, null); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(IconsModule, { declarations: function () { return [MdbIconComponent, FabDirective, FarDirective, FasDirective, FalDirective, FadDirective]; }, imports: function () { return [CommonModule]; }, exports: function () { return [MdbIconComponent, FabDirective, FarDirective, FasDirective, FalDirective, FadDirective]; } }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(IconsModule, [{\n type: NgModule,\n args: [{\n declarations: [\n MdbIconComponent,\n FabDirective,\n FarDirective,\n FasDirective,\n FalDirective,\n FadDirective,\n ],\n imports: [CommonModule],\n exports: [MdbIconComponent, FabDirective, FarDirective, FasDirective, FalDirective, FadDirective]\n }]\n }], null, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MdbErrorDirective, [{\n type: Component,\n args: [{\n selector: 'mdb-error',\n template: '',\n encapsulation: ViewEncapsulation.None,\n styles: [\".error-message,.success-message{position:absolute;top:40px;left:0;font-size:.8rem}textarea~.error-message,textarea~.success-message{top:unset;bottom:-20px}.error-message{color:#f44336}.success-message{color:#00c851}\"]\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }]; }, { id: [{\n type: Input\n }], errorMsg: [{\n type: HostBinding,\n args: ['class.error-message']\n }], messageId: [{\n type: HostBinding,\n args: ['attr.id']\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MdbSuccessDirective, [{\n type: Component,\n args: [{\n selector: 'mdb-success',\n template: '',\n encapsulation: ViewEncapsulation.None,\n styles: [\".error-message,.success-message{position:absolute;top:40px;left:0;font-size:.8rem}textarea~.error-message,textarea~.success-message{top:unset;bottom:-20px}.error-message{color:#f44336}.success-message{color:#00c851}\"]\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }]; }, { id: [{\n type: Input\n }], successMsg: [{\n type: HostBinding,\n args: ['class.success-message']\n }], messageId: [{\n type: HostBinding,\n args: ['attr.id']\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MdbValidateDirective, [{\n type: Directive,\n args: [{\n selector: '[mdbValidate]'\n }]\n }], function () { return [{ type: ɵngcc0.Renderer2 }, { type: ɵngcc0.ElementRef }]; }, { validate: [{\n type: Input\n }], validateSuccess: [{\n type: Input\n }], validateError: [{\n type: Input\n }], mdbValidate: [{\n type: Input\n }] }); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(InputUtilitiesModule, { declarations: function () { return [MdbErrorDirective, MdbSuccessDirective, MdbValidateDirective]; }, imports: function () { return [CommonModule]; }, exports: function () { return [MdbErrorDirective, MdbSuccessDirective, MdbValidateDirective]; } }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(InputUtilitiesModule, [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n declarations: [MdbErrorDirective, MdbSuccessDirective, MdbValidateDirective],\n exports: [MdbErrorDirective, MdbSuccessDirective, MdbValidateDirective]\n }]\n }], null, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(EqualValidatorDirective, [{\n type: Directive,\n args: [{\n selector: '[mdb-validateEqual][formControlName],[validateEqual][formControl],[validateEqual][ngModel]',\n providers: [\n { provide: NG_VALIDATORS, useExisting: forwardRef(() => EqualValidatorDirective), multi: true },\n ]\n }]\n }], function () { return [{ type: String, decorators: [{\n type: Attribute,\n args: ['validateEqual']\n }] }, { type: String, decorators: [{\n type: Attribute,\n args: ['reverse']\n }] }]; }, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MdbInputDirective, [{\n type: Directive,\n args: [{\n selector: '[mdbInputDirective]'\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }, { type: String, decorators: [{\n type: Inject,\n args: [PLATFORM_ID]\n }] }]; }, { mdbValidate: [{\n type: Input\n }], validateSuccess: [{\n type: Input\n }], validateError: [{\n type: Input\n }], focusCheckbox: [{\n type: Input\n }], focusRadio: [{\n type: Input\n }], onfocus: [{\n type: HostListener,\n args: ['focus']\n }], onblur: [{\n type: HostListener,\n args: ['blur']\n }], onchange: [{\n type: HostListener,\n args: ['change']\n }], oniput: [{\n type: HostListener,\n args: ['input']\n }], onkeydown: [{\n type: HostListener,\n args: ['keydown', ['$event']]\n }], oncut: [{\n type: HostListener,\n args: ['cut']\n }], onpaste: [{\n type: HostListener,\n args: ['paste']\n }], ondrop: [{\n type: HostListener,\n args: ['drop']\n }], mdbInputDirective: [{\n type: Input\n }], customRegex: [{\n type: Input\n }], errorMessage: [{\n type: Input\n }], successMessage: [{\n type: Input\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MdbInput, [{\n type: Directive,\n args: [{\n selector: '[mdbInput]'\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }, { type: String, decorators: [{\n type: Inject,\n args: [PLATFORM_ID]\n }] }]; }, { focusCheckbox: [{\n type: Input\n }], focusRadio: [{\n type: Input\n }], onfocus: [{\n type: HostListener,\n args: ['focus']\n }], onblur: [{\n type: HostListener,\n args: ['blur']\n }], onchange: [{\n type: HostListener,\n args: ['change']\n }], onkeydown: [{\n type: HostListener,\n args: ['keydown', ['$event']]\n }], oncut: [{\n type: HostListener,\n args: ['cut']\n }], onpaste: [{\n type: HostListener,\n args: ['paste']\n }], ondrop: [{\n type: HostListener,\n args: ['drop']\n }] }); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(InputsModule, { declarations: [MdbInput, MdbInputDirective, EqualValidatorDirective], exports: [MdbInput, MdbInputDirective, EqualValidatorDirective] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(InputsModule, [{\n type: NgModule,\n args: [{\n declarations: [MdbInput, MdbInputDirective, EqualValidatorDirective],\n exports: [MdbInput, MdbInputDirective, EqualValidatorDirective],\n schemas: [NO_ERRORS_SCHEMA]\n }]\n }], null, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ModalOptions, [{\n type: Injectable\n }], null, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MDBModalRef, [{\n type: Injectable\n }], null, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ModalBackdropComponent, [{\n type: Component,\n args: [{\n selector: 'mdb-modal-backdrop',\n template: ``\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }]; }, { classNameBackDrop: [{\n type: HostBinding,\n args: ['class.modal-backdrop']\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ModalDirective, [{\n type: Component,\n args: [{\n // tslint:disable-next-line:component-selector\n selector: '[mdbModal]',\n template: '',\n encapsulation: ViewEncapsulation.None,\n exportAs: 'mdb-modal, mdbModal',\n styles: [\".img-fluid,.modal-dialog.cascading-modal.modal-avatar .modal-header,.video-fluid{max-width:100%;height:auto}.flex-center{display:flex;justify-content:center;align-items:center;height:100%}.flex-center p{margin:0}.flex-center ul{text-align:center}.flex-center ul li{margin-bottom:1rem}.flex-center ul li:last-of-type{margin-bottom:0}.hr-light{border-top:1px solid #fff}.hr-dark{border-top:1px solid #666}.w-responsive{width:75%}@media (max-width:740px){.w-responsive{width:100%}}.collapsible-body{display:none}.jumbotron{box-shadow:0 2px 5px 0 rgba(0,0,0,.16),0 2px 10px 0 rgba(0,0,0,.12);border-radius:.125rem;background-color:#fff}.bg-primary{background-color:#4285f4!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#1266f1!important}.border-primary{border-color:#4285f4!important}.bg-danger{background-color:#ff3547!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#ff0219!important}.border-danger{border-color:#ff3547!important}.bg-warning{background-color:#fb3!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#fa0!important}.border-warning{border-color:#fb3!important}.bg-success{background-color:#00c851!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#00953c!important}.border-success{border-color:#00c851!important}.bg-info{background-color:#33b5e5!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#1a9bcb!important}.border-info{border-color:#33b5e5!important}.bg-default{background-color:#2bbbad!important}a.bg-default:focus,a.bg-default:hover,button.bg-default:focus,button.bg-default:hover{background-color:#219287!important}.border-default{border-color:#2bbbad!important}.bg-secondary{background-color:#a6c!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#9540bf!important}.border-secondary{border-color:#a6c!important}.bg-dark{background-color:#212121!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#080808!important}.border-dark{border-color:#212121!important}.bg-light{background-color:#e0e0e0!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#c7c7c7!important}.border-light{border-color:#e0e0e0!important}.card-img-100{width:100px;height:100px}.card-img-64{width:64px;height:64px}.mml-1{margin-left:-.25rem!important}.flex-1{flex:1}body.modal-open{overflow:auto}.modal-dialog .modal-content{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);border-radius:.125rem}.modal-dialog .modal-content .modal-header{border-top-left-radius:.125rem;border-top-right-radius:.125rem}.modal-dialog.cascading-modal .close{opacity:1;text-shadow:none;color:#fff;outline:0}.modal-dialog.cascading-modal .modal-header{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);border-radius:.125rem}.modal-dialog.cascading-modal .modal-header .close{margin-right:1rem}.modal-dialog.cascading-modal .modal-header .title .fab,.modal-dialog.cascading-modal .modal-header .title .far,.modal-dialog.cascading-modal .modal-header .title .fas{margin-right:9px}.modal-dialog.cascading-modal .modal-c-tabs .md-tabs{box-shadow:0 2px 5px 0 rgba(0,0,0,.16),0 2px 10px 0 rgba(0,0,0,.12);display:flex}.modal-dialog.cascading-modal .modal-c-tabs .md-tabs li{flex:1}.modal-dialog.cascading-modal .modal-c-tabs .md-tabs li a{text-align:center}.modal-dialog.cascading-modal .modal-c-tabs .tab-content{box-shadow:unset}.modal-dialog.cascading-modal.modal-avatar .modal-header{box-shadow:none;margin:-6rem 0 -1rem}.modal-dialog.cascading-modal.modal-avatar .modal-header img{box-shadow:0 8px 17px 0 rgba(0,0,0,.2),0 6px 20px 0 rgba(0,0,0,.19);margin-left:auto;margin-right:auto}.modal-dialog.modal-notify .modal-header{box-shadow:0 2px 5px 0 rgba(0,0,0,.16),0 2px 10px 0 rgba(0,0,0,.12)}.modal-dialog.modal-notify.modal-primary .modal-header{background-color:#4285f4}.modal-dialog.modal-notify.modal-primary .fab,.modal-dialog.modal-notify.modal-primary .far,.modal-dialog.modal-notify.modal-primary .fas{color:#4285f4}.modal-dialog.modal-notify.modal-primary .badge{background-color:#4285f4}.modal-dialog.modal-notify.modal-primary .btn .fab,.modal-dialog.modal-notify.modal-primary .btn .far,.modal-dialog.modal-notify.modal-primary .btn .fas{color:#fff}.modal-dialog.modal-notify.modal-primary .btn.btn-outline-primary .fab,.modal-dialog.modal-notify.modal-primary .btn.btn-outline-primary .far,.modal-dialog.modal-notify.modal-primary .btn.btn-outline-primary .fas{color:#4285f4}.modal-dialog.modal-notify.modal-danger .modal-header{background-color:#ff3547}.modal-dialog.modal-notify.modal-danger .fab,.modal-dialog.modal-notify.modal-danger .far,.modal-dialog.modal-notify.modal-danger .fas{color:#ff3547}.modal-dialog.modal-notify.modal-danger .badge{background-color:#ff3547}.modal-dialog.modal-notify.modal-danger .btn .fab,.modal-dialog.modal-notify.modal-danger .btn .far,.modal-dialog.modal-notify.modal-danger .btn .fas{color:#fff}.modal-dialog.modal-notify.modal-danger .btn.btn-outline-danger .fab,.modal-dialog.modal-notify.modal-danger .btn.btn-outline-danger .far,.modal-dialog.modal-notify.modal-danger .btn.btn-outline-danger .fas{color:#ff3547}.modal-dialog.modal-notify.modal-warning .modal-header{background-color:#fb3}.modal-dialog.modal-notify.modal-warning .fab,.modal-dialog.modal-notify.modal-warning .far,.modal-dialog.modal-notify.modal-warning .fas{color:#fb3}.modal-dialog.modal-notify.modal-warning .badge{background-color:#fb3}.modal-dialog.modal-notify.modal-warning .btn .fab,.modal-dialog.modal-notify.modal-warning .btn .far,.modal-dialog.modal-notify.modal-warning .btn .fas{color:#fff}.modal-dialog.modal-notify.modal-warning .btn.btn-outline-warning .fab,.modal-dialog.modal-notify.modal-warning .btn.btn-outline-warning .far,.modal-dialog.modal-notify.modal-warning .btn.btn-outline-warning .fas{color:#fb3}.modal-dialog.modal-notify.modal-success .modal-header{background-color:#00c851}.modal-dialog.modal-notify.modal-success .fab,.modal-dialog.modal-notify.modal-success .far,.modal-dialog.modal-notify.modal-success .fas{color:#00c851}.modal-dialog.modal-notify.modal-success .badge{background-color:#00c851}.modal-dialog.modal-notify.modal-success .btn .fab,.modal-dialog.modal-notify.modal-success .btn .far,.modal-dialog.modal-notify.modal-success .btn .fas{color:#fff}.modal-dialog.modal-notify.modal-success .btn.btn-outline-success .fab,.modal-dialog.modal-notify.modal-success .btn.btn-outline-success .far,.modal-dialog.modal-notify.modal-success .btn.btn-outline-success .fas{color:#00c851}.modal-dialog.modal-notify.modal-info .modal-header{background-color:#33b5e5}.modal-dialog.modal-notify.modal-info .fab,.modal-dialog.modal-notify.modal-info .far,.modal-dialog.modal-notify.modal-info .fas{color:#33b5e5}.modal-dialog.modal-notify.modal-info .badge{background-color:#33b5e5}.modal-dialog.modal-notify.modal-info .btn .fab,.modal-dialog.modal-notify.modal-info .btn .far,.modal-dialog.modal-notify.modal-info .btn .fas{color:#fff}.modal-dialog.modal-notify.modal-info .btn.btn-outline-info .fab,.modal-dialog.modal-notify.modal-info .btn.btn-outline-info .far,.modal-dialog.modal-notify.modal-info .btn.btn-outline-info .fas{color:#33b5e5}@media (min-width:768px){.modal .modal-dialog.modal-top{top:0}.modal .modal-dialog.modal-left{left:0}.modal .modal-dialog.modal-right{right:0}.modal .modal-dialog.modal-bottom{bottom:0}.modal .modal-dialog.modal-top-left{top:10px;left:10px}.modal .modal-dialog.modal-top-right{top:10px;right:10px}.modal .modal-dialog.modal-bottom-left{bottom:10px;left:10px}.modal .modal-dialog.modal-bottom-right{bottom:10px;right:10px}}@media (min-width:992px){.modal.modal-scrolling{position:relative}.modal.modal-scrolling .modal-dialog{position:fixed;z-index:1050}.modal.modal-content-clickable{top:auto;bottom:auto}.modal.modal-content-clickable .modal-dialog{position:fixed}.modal .modal-fluid{width:100%;max-width:100%}.modal .modal-fluid .modal-content{width:100%}.modal .modal-frame{position:absolute;margin:0!important;width:100%;max-width:100%!important}.modal .modal-frame.modal-bottom{bottom:0}.modal .modal-frame.modal-dialog{height:inherit}.modal .modal-full-height{position:absolute;display:flex;margin:0;width:400px;height:auto;min-height:100%;top:0;right:0}.modal .modal-full-height.modal-bottom,.modal .modal-full-height.modal-top{display:block;width:100%;max-width:100%;height:auto}.modal .modal-full-height.modal-top{bottom:auto}.modal .modal-full-height.modal-bottom{min-height:0;top:auto}.modal .modal-full-height .modal-content{width:100%}.modal .modal-full-height.modal-lg{width:90%;max-width:90%}}@media (min-width:992px) and (min-width:992px){.modal .modal-full-height.modal-lg{width:800px;max-width:800px}}@media (min-width:992px) and (min-width:1200px){.modal .modal-full-height.modal-lg{width:1000px;max-width:1000px}}@media (min-width:992px){.modal .modal-side{position:absolute;bottom:10px;right:10px;margin:0;width:400px}}body.scrollable{overflow-y:auto}.modal-dialog .modal-content{border:0}.modal{padding-right:0!important}@media (min-width:768px){.modal .modal-dialog.modal-top{top:0;left:0;right:0}.modal .modal-dialog.modal-left{left:0}.modal .modal-dialog.modal-right{right:0}.modal .modal-dialog.modal-bottom>.modal-content{position:absolute;bottom:0}.modal .modal-dialog.modal-top-left{top:10px;left:10px}.modal .modal-dialog.modal-top-right{top:10px;right:10px}.modal .modal-dialog.modal-bottom-left{left:10px;bottom:10px}.modal .modal-dialog.modal-bottom-right{right:10px;bottom:10px}}.modal .modal-side.modal-top{top:0}.modal .modal-side.modal-left{left:0}.modal .modal-side.modal-right{right:0}.modal .modal-side.modal-bottom{bottom:0}.modal .modal-side.modal-top-left{top:10px;left:10px}.modal .modal-side.modal-top-right{top:10px;right:10px}.modal .modal-side.modal-bottom-left{left:10px;bottom:10px}.modal .modal-side.modal-bottom-right{right:10px;bottom:10px}.modal.fade.top:not(.show) .modal-dialog{transform:translate3d(0,-25%,0)}.modal.fade.left:not(.show) .modal-dialog{transform:translate3d(-25%,0,0)}.modal.fade.right:not(.show) .modal-dialog{transform:translate3d(25%,0,0)}.modal.fade.bottom:not(.show) .modal-dialog{transform:translate3d(0,25%,0)}.modal.fade.in{opacity:1}.modal.fade.in .modal-dialog{transform:translate(0)}.modal.fade.in .modal-dialog .relative{display:inline-block}.modal.modal-scrolling{position:relative}.modal.modal-scrolling .modal-dialog{position:fixed;z-index:1050}.modal.modal-content-clickable{top:auto;bottom:auto}.modal.modal-content-clickable .modal-dialog{position:fixed}.modal .modal-fluid{width:100%;max-width:100%}.modal .modal-fluid .modal-content{width:100%}.modal .modal-frame{position:absolute;width:100%;max-width:100%;margin:0}@media (max-width:767px){.modal .modal-frame{padding:.5rem}}.modal .modal-frame.modal-bottom{bottom:0}.modal .modal-full-height{display:flex;position:absolute;width:400px;min-height:100%;margin:0;top:0;right:0}@media (max-width:576px){.modal .modal-full-height{width:100%;padding:.5rem}}@media (max-width:992px){.modal .modal-full-height{width:100%;height:unset;position:unset}}@media (max-width:992px){.modal .modal-full-height.modal-left,.modal .modal-full-height.modal-right,.modal .modal-full-height.modal-top{margin:1.75rem auto;min-height:unset}}@media (max-width:768px){.modal .modal-full-height.modal-bottom{margin-top:1.75rem}}@media (min-width:768px) and (max-width:992px){.modal .modal-full-height.modal-bottom{margin-bottom:1.75rem}.modal .modal-full-height.modal-bottom .modal-content{bottom:1rem}}@media (max-width:992px){.modal .modal-full-height.modal-bottom,.modal .modal-full-height.modal-left,.modal .modal-full-height.modal-right,.modal .modal-full-height.modal-top{margin-left:auto;margin-right:auto}}.modal .modal-full-height.modal-bottom,.modal .modal-full-height.modal-top{display:block;width:100%;height:auto}.modal .modal-full-height.modal-top{bottom:auto}.modal .modal-full-height.modal-bottom{bottom:0}.modal .modal-full-height .modal-content{width:100%}.modal .modal-full-height.modal-lg{max-width:90%;width:90%}@media (min-width:992px){.modal .modal-full-height.modal-lg{max-width:800px;width:800px}}@media (min-width:1200px){.modal .modal-full-height.modal-lg{max-width:1000px;width:1000px}}.modal .modal-side{position:absolute;right:10px;bottom:10px;margin:0;min-width:100px}@media (max-width:768px){.modal .modal-side{padding-left:.5rem}}.modal-dialog.cascading-modal{margin-top:10%}.modal-dialog.cascading-modal .modal-header{text-align:center;margin:-2rem 1rem 1rem;padding:1.5rem;border:none;flex-direction:column}.modal-dialog.cascading-modal .modal-header .close{margin-right:2.5rem}.modal-dialog.cascading-modal .modal-header.white-text .close{color:#fff;opacity:1}.modal-dialog.cascading-modal .modal-header .title{width:100%;margin-bottom:0;font-size:1.25rem}.modal-dialog.cascading-modal .modal-header .title .fa{margin-right:9px}.modal-dialog.cascading-modal .modal-header .social-buttons{margin-top:1.5rem}.modal-dialog.cascading-modal .modal-header .social-buttons a{font-size:1rem}.modal-dialog.cascading-modal .modal-c-tabs .md-tabs{margin:-1.5rem 1rem 0}.modal-dialog.cascading-modal .modal-c-tabs .tab-content{padding:1.7rem 0 0}.modal-dialog.cascading-modal .modal-body,.modal-dialog.cascading-modal .modal-footer{color:#616161;padding-right:2rem;padding-left:2rem}.modal-dialog.cascading-modal .modal-body .additional-option,.modal-dialog.cascading-modal .modal-footer .additional-option{text-align:center;margin-top:1rem}.modal-dialog.cascading-modal.modal-avatar{margin-top:6rem}.modal-dialog.cascading-modal.modal-avatar .modal-header{margin:-6rem 2rem -1rem}.modal-dialog.cascading-modal.modal-avatar .modal-header img{width:130px}.modal-dialog.modal-notify .heading{margin:0;padding:.3rem;color:#fff;font-size:1.15rem}.modal-dialog.modal-notify .modal-header{border:0}.modal-dialog.modal-notify .close{opacity:1}.modal-dialog.modal-notify .modal-body{padding:1.5rem;color:#616161}.modal-dialog.modal-notify .btn-outline-secondary-modal{background-color:transparent}.modal-dialog.modal-notify.modal-info .modal-header{background-color:#5394ff}.modal-dialog.modal-notify.modal-info .fa{color:#5394ff}.modal-dialog.modal-notify.modal-info .badge{background-color:#5394ff}.modal-dialog.modal-notify.modal-info .btn-primary-modal{background:#5394ff}.modal-dialog.modal-notify.modal-info .btn-primary-modal:active,.modal-dialog.modal-notify.modal-info .btn-primary-modal:focus,.modal-dialog.modal-notify.modal-info .btn-primary-modal:hover{background-color:#6da4ff!important}.modal-dialog.modal-notify.modal-info .btn-primary-modal.active{background-color:#0059ec!important}.modal-dialog.modal-notify.modal-info .btn-outline-secondary-modal{border:2px solid #5394ff;color:#5394ff!important}.modal-dialog.modal-notify.modal-warning .modal-header{background-color:#ff8e38}.modal-dialog.modal-notify.modal-warning .fa{color:#ff8e38}.modal-dialog.modal-notify.modal-warning .badge{background-color:#ff8e38}.modal-dialog.modal-notify.modal-warning .btn-primary-modal{background:#ff8e38}.modal-dialog.modal-notify.modal-warning .btn-primary-modal:active,.modal-dialog.modal-notify.modal-warning .btn-primary-modal:focus,.modal-dialog.modal-notify.modal-warning .btn-primary-modal:hover{background-color:#ff9c52!important}.modal-dialog.modal-notify.modal-warning .btn-primary-modal.active{background-color:#d15a00!important}.modal-dialog.modal-notify.modal-warning .btn-outline-secondary-modal{border:2px solid #ff8e38;color:#ff8e38!important}.modal-dialog.modal-notify.modal-success .modal-header{background-color:#01d36b}.modal-dialog.modal-notify.modal-success .fa{color:#01d36b}.modal-dialog.modal-notify.modal-success .badge{background-color:#01d36b}.modal-dialog.modal-notify.modal-success .btn-primary-modal{background:#01d36b}.modal-dialog.modal-notify.modal-success .btn-primary-modal:active,.modal-dialog.modal-notify.modal-success .btn-primary-modal:focus,.modal-dialog.modal-notify.modal-success .btn-primary-modal:hover{background-color:#01ec78!important}.modal-dialog.modal-notify.modal-success .btn-primary-modal.active{background-color:#016d38!important}.modal-dialog.modal-notify.modal-success .btn-outline-secondary-modal{border:2px solid #01d36b;color:#01d36b!important}.modal-dialog.modal-notify.modal-danger .modal-header{background-color:#ff4b4b}.modal-dialog.modal-notify.modal-danger .fa{color:#ff4b4b}.modal-dialog.modal-notify.modal-danger .badge{background-color:#ff4b4b}.modal-dialog.modal-notify.modal-danger .btn-primary-modal{background:#ff4b4b}.modal-dialog.modal-notify.modal-danger .btn-primary-modal:active,.modal-dialog.modal-notify.modal-danger .btn-primary-modal:focus,.modal-dialog.modal-notify.modal-danger .btn-primary-modal:hover{background-color:#ff6565!important}.modal-dialog.modal-notify.modal-danger .btn-primary-modal.active{background-color:#e40000!important}.modal-dialog.modal-notify.modal-danger .btn-outline-secondary-modal{border:2px solid #ff4b4b;color:#ff4b4b!important}.modal-sm .modal-content{margin:0 auto;max-width:300px}@media (min-width:768px){.modal-sm{max-width:300px}}.modal .modal-fluid,.modal .modal-frame{width:100%;max-width:100%}.modal-ext .modal-content .modal-header{text-align:center}.modal-ext .modal-content .options{float:left}.modal-ext .modal-content .modal-body .text-xs-center fieldset{margin-top:20px}.modal-ext .modal-content .call{margin-top:1rem}.modal-ext .modal-content .modal-body{padding:2rem 2rem 1rem}.modal-content:not(.card-image) .close{position:absolute;right:15px}.modal-cart li p{margin:5px;font-weight:400}.modal-cart li p .badge{margin-left:10px;margin-top:3px;font-weight:400;position:absolute}.modal-cart li p .quantity{font-size:16px;margin-right:7px;font-weight:300}.modal-cart .cartPageLink{margin-left:10px}.modal-cart .cartPageLink a{text-decoration:underline;color:#666}.modal-cart .total{float:right;font-weight:400}.cf-phone{margin-left:7px}.side-modal{position:fixed;width:400px;height:100%;width:100%;z-index:9999}.side-modal .modal-dialog{position:absolute;bottom:10px;right:10px;width:400px;margin:10px}@media (max-width:760px){.side-modal .modal-dialog{display:none}}.side-modal .modal-header{padding:1rem}.side-modal .modal-header .heading{margin:0;padding:0}.side-modal .modal-content{border:none}.modal-dynamic>:first-child{display:flex;flex-direction:column;height:100%}.side-modal.fade:not(.show) .modal-dialog{transform:translate3d(25%,0,0)}.transparent-bd{opacity:0!important}.modal-backdrop,.modal-backdrop.in{opacity:.5}#exampleModalScroll{overflow-x:hidden;overflow-y:auto}.modal-open .modal{overflow-x:hidden;overflow-y:hidden}.form-dark .card-image{background-size:100%}\"]\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc2.ConfigurableFocusTrapFactory }, { type: ɵngcc0.ViewContainerRef }, { type: ɵngcc0.Renderer2 }, { type: ComponentLoaderFactory }]; }, { onShow: [{\n type: Output\n }], open: [{\n type: Output\n }], onShown: [{\n type: Output\n }], opened: [{\n type: Output\n }], onHide: [{\n type: Output\n }], close: [{\n type: Output\n }], onHidden: [{\n type: Output\n }], closed: [{\n type: Output\n }], config: [{\n type: Input\n }], \n /* @HostListener('keydown', ['$event']) onKeyDown(event: any) {\n this.utils.focusTrapModal(event, this._element);\n }\n */\n onClick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }], \n // todo: consider preventing default and stopping propagation\n onEsc: [{\n type: HostListener,\n args: ['keydown.esc']\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ModalContainerComponent, [{\n type: Component,\n args: [{\n selector: 'mdb-modal-container',\n template: \"\\n
    \\n\\n\",\n encapsulation: ViewEncapsulation.None,\n styles: [\".img-fluid,.modal-dialog.cascading-modal.modal-avatar .modal-header,.video-fluid{max-width:100%;height:auto}.flex-center{display:flex;justify-content:center;align-items:center;height:100%}.flex-center p{margin:0}.flex-center ul{text-align:center}.flex-center ul li{margin-bottom:1rem}.flex-center ul li:last-of-type{margin-bottom:0}.hr-light{border-top:1px solid #fff}.hr-dark{border-top:1px solid #666}.w-responsive{width:75%}@media (max-width:740px){.w-responsive{width:100%}}.collapsible-body{display:none}.jumbotron{box-shadow:0 2px 5px 0 rgba(0,0,0,.16),0 2px 10px 0 rgba(0,0,0,.12);border-radius:.125rem;background-color:#fff}.bg-primary{background-color:#4285f4!important}a.bg-primary:focus,a.bg-primary:hover,button.bg-primary:focus,button.bg-primary:hover{background-color:#1266f1!important}.border-primary{border-color:#4285f4!important}.bg-danger{background-color:#ff3547!important}a.bg-danger:focus,a.bg-danger:hover,button.bg-danger:focus,button.bg-danger:hover{background-color:#ff0219!important}.border-danger{border-color:#ff3547!important}.bg-warning{background-color:#fb3!important}a.bg-warning:focus,a.bg-warning:hover,button.bg-warning:focus,button.bg-warning:hover{background-color:#fa0!important}.border-warning{border-color:#fb3!important}.bg-success{background-color:#00c851!important}a.bg-success:focus,a.bg-success:hover,button.bg-success:focus,button.bg-success:hover{background-color:#00953c!important}.border-success{border-color:#00c851!important}.bg-info{background-color:#33b5e5!important}a.bg-info:focus,a.bg-info:hover,button.bg-info:focus,button.bg-info:hover{background-color:#1a9bcb!important}.border-info{border-color:#33b5e5!important}.bg-default{background-color:#2bbbad!important}a.bg-default:focus,a.bg-default:hover,button.bg-default:focus,button.bg-default:hover{background-color:#219287!important}.border-default{border-color:#2bbbad!important}.bg-secondary{background-color:#a6c!important}a.bg-secondary:focus,a.bg-secondary:hover,button.bg-secondary:focus,button.bg-secondary:hover{background-color:#9540bf!important}.border-secondary{border-color:#a6c!important}.bg-dark{background-color:#212121!important}a.bg-dark:focus,a.bg-dark:hover,button.bg-dark:focus,button.bg-dark:hover{background-color:#080808!important}.border-dark{border-color:#212121!important}.bg-light{background-color:#e0e0e0!important}a.bg-light:focus,a.bg-light:hover,button.bg-light:focus,button.bg-light:hover{background-color:#c7c7c7!important}.border-light{border-color:#e0e0e0!important}.card-img-100{width:100px;height:100px}.card-img-64{width:64px;height:64px}.mml-1{margin-left:-.25rem!important}.flex-1{flex:1}body.modal-open{overflow:auto}.modal-dialog .modal-content{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);border-radius:.125rem}.modal-dialog .modal-content .modal-header{border-top-left-radius:.125rem;border-top-right-radius:.125rem}.modal-dialog.cascading-modal .close{opacity:1;text-shadow:none;color:#fff;outline:0}.modal-dialog.cascading-modal .modal-header{box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);border-radius:.125rem}.modal-dialog.cascading-modal .modal-header .close{margin-right:1rem}.modal-dialog.cascading-modal .modal-header .title .fab,.modal-dialog.cascading-modal .modal-header .title .far,.modal-dialog.cascading-modal .modal-header .title .fas{margin-right:9px}.modal-dialog.cascading-modal .modal-c-tabs .md-tabs{box-shadow:0 2px 5px 0 rgba(0,0,0,.16),0 2px 10px 0 rgba(0,0,0,.12);display:flex}.modal-dialog.cascading-modal .modal-c-tabs .md-tabs li{flex:1}.modal-dialog.cascading-modal .modal-c-tabs .md-tabs li a{text-align:center}.modal-dialog.cascading-modal .modal-c-tabs .tab-content{box-shadow:unset}.modal-dialog.cascading-modal.modal-avatar .modal-header{box-shadow:none;margin:-6rem 0 -1rem}.modal-dialog.cascading-modal.modal-avatar .modal-header img{box-shadow:0 8px 17px 0 rgba(0,0,0,.2),0 6px 20px 0 rgba(0,0,0,.19);margin-left:auto;margin-right:auto}.modal-dialog.modal-notify .modal-header{box-shadow:0 2px 5px 0 rgba(0,0,0,.16),0 2px 10px 0 rgba(0,0,0,.12)}.modal-dialog.modal-notify.modal-primary .modal-header{background-color:#4285f4}.modal-dialog.modal-notify.modal-primary .fab,.modal-dialog.modal-notify.modal-primary .far,.modal-dialog.modal-notify.modal-primary .fas{color:#4285f4}.modal-dialog.modal-notify.modal-primary .badge{background-color:#4285f4}.modal-dialog.modal-notify.modal-primary .btn .fab,.modal-dialog.modal-notify.modal-primary .btn .far,.modal-dialog.modal-notify.modal-primary .btn .fas{color:#fff}.modal-dialog.modal-notify.modal-primary .btn.btn-outline-primary .fab,.modal-dialog.modal-notify.modal-primary .btn.btn-outline-primary .far,.modal-dialog.modal-notify.modal-primary .btn.btn-outline-primary .fas{color:#4285f4}.modal-dialog.modal-notify.modal-danger .modal-header{background-color:#ff3547}.modal-dialog.modal-notify.modal-danger .fab,.modal-dialog.modal-notify.modal-danger .far,.modal-dialog.modal-notify.modal-danger .fas{color:#ff3547}.modal-dialog.modal-notify.modal-danger .badge{background-color:#ff3547}.modal-dialog.modal-notify.modal-danger .btn .fab,.modal-dialog.modal-notify.modal-danger .btn .far,.modal-dialog.modal-notify.modal-danger .btn .fas{color:#fff}.modal-dialog.modal-notify.modal-danger .btn.btn-outline-danger .fab,.modal-dialog.modal-notify.modal-danger .btn.btn-outline-danger .far,.modal-dialog.modal-notify.modal-danger .btn.btn-outline-danger .fas{color:#ff3547}.modal-dialog.modal-notify.modal-warning .modal-header{background-color:#fb3}.modal-dialog.modal-notify.modal-warning .fab,.modal-dialog.modal-notify.modal-warning .far,.modal-dialog.modal-notify.modal-warning .fas{color:#fb3}.modal-dialog.modal-notify.modal-warning .badge{background-color:#fb3}.modal-dialog.modal-notify.modal-warning .btn .fab,.modal-dialog.modal-notify.modal-warning .btn .far,.modal-dialog.modal-notify.modal-warning .btn .fas{color:#fff}.modal-dialog.modal-notify.modal-warning .btn.btn-outline-warning .fab,.modal-dialog.modal-notify.modal-warning .btn.btn-outline-warning .far,.modal-dialog.modal-notify.modal-warning .btn.btn-outline-warning .fas{color:#fb3}.modal-dialog.modal-notify.modal-success .modal-header{background-color:#00c851}.modal-dialog.modal-notify.modal-success .fab,.modal-dialog.modal-notify.modal-success .far,.modal-dialog.modal-notify.modal-success .fas{color:#00c851}.modal-dialog.modal-notify.modal-success .badge{background-color:#00c851}.modal-dialog.modal-notify.modal-success .btn .fab,.modal-dialog.modal-notify.modal-success .btn .far,.modal-dialog.modal-notify.modal-success .btn .fas{color:#fff}.modal-dialog.modal-notify.modal-success .btn.btn-outline-success .fab,.modal-dialog.modal-notify.modal-success .btn.btn-outline-success .far,.modal-dialog.modal-notify.modal-success .btn.btn-outline-success .fas{color:#00c851}.modal-dialog.modal-notify.modal-info .modal-header{background-color:#33b5e5}.modal-dialog.modal-notify.modal-info .fab,.modal-dialog.modal-notify.modal-info .far,.modal-dialog.modal-notify.modal-info .fas{color:#33b5e5}.modal-dialog.modal-notify.modal-info .badge{background-color:#33b5e5}.modal-dialog.modal-notify.modal-info .btn .fab,.modal-dialog.modal-notify.modal-info .btn .far,.modal-dialog.modal-notify.modal-info .btn .fas{color:#fff}.modal-dialog.modal-notify.modal-info .btn.btn-outline-info .fab,.modal-dialog.modal-notify.modal-info .btn.btn-outline-info .far,.modal-dialog.modal-notify.modal-info .btn.btn-outline-info .fas{color:#33b5e5}@media (min-width:768px){.modal .modal-dialog.modal-top{top:0}.modal .modal-dialog.modal-left{left:0}.modal .modal-dialog.modal-right{right:0}.modal .modal-dialog.modal-bottom{bottom:0}.modal .modal-dialog.modal-top-left{top:10px;left:10px}.modal .modal-dialog.modal-top-right{top:10px;right:10px}.modal .modal-dialog.modal-bottom-left{bottom:10px;left:10px}.modal .modal-dialog.modal-bottom-right{bottom:10px;right:10px}}@media (min-width:992px){.modal.modal-scrolling{position:relative}.modal.modal-scrolling .modal-dialog{position:fixed;z-index:1050}.modal.modal-content-clickable{top:auto;bottom:auto}.modal.modal-content-clickable .modal-dialog{position:fixed}.modal .modal-fluid{width:100%;max-width:100%}.modal .modal-fluid .modal-content{width:100%}.modal .modal-frame{position:absolute;margin:0!important;width:100%;max-width:100%!important}.modal .modal-frame.modal-bottom{bottom:0}.modal .modal-frame.modal-dialog{height:inherit}.modal .modal-full-height{position:absolute;display:flex;margin:0;width:400px;height:auto;min-height:100%;top:0;right:0}.modal .modal-full-height.modal-bottom,.modal .modal-full-height.modal-top{display:block;width:100%;max-width:100%;height:auto}.modal .modal-full-height.modal-top{bottom:auto}.modal .modal-full-height.modal-bottom{min-height:0;top:auto}.modal .modal-full-height .modal-content{width:100%}.modal .modal-full-height.modal-lg{width:90%;max-width:90%}}@media (min-width:992px) and (min-width:992px){.modal .modal-full-height.modal-lg{width:800px;max-width:800px}}@media (min-width:992px) and (min-width:1200px){.modal .modal-full-height.modal-lg{width:1000px;max-width:1000px}}@media (min-width:992px){.modal .modal-side{position:absolute;bottom:10px;right:10px;margin:0;width:400px}}body.scrollable{overflow-y:auto}.modal-dialog .modal-content{border:0}.modal{padding-right:0!important}@media (min-width:768px){.modal .modal-dialog.modal-top{top:0;left:0;right:0}.modal .modal-dialog.modal-left{left:0}.modal .modal-dialog.modal-right{right:0}.modal .modal-dialog.modal-bottom>.modal-content{position:absolute;bottom:0}.modal .modal-dialog.modal-top-left{top:10px;left:10px}.modal .modal-dialog.modal-top-right{top:10px;right:10px}.modal .modal-dialog.modal-bottom-left{left:10px;bottom:10px}.modal .modal-dialog.modal-bottom-right{right:10px;bottom:10px}}.modal .modal-side.modal-top{top:0}.modal .modal-side.modal-left{left:0}.modal .modal-side.modal-right{right:0}.modal .modal-side.modal-bottom{bottom:0}.modal .modal-side.modal-top-left{top:10px;left:10px}.modal .modal-side.modal-top-right{top:10px;right:10px}.modal .modal-side.modal-bottom-left{left:10px;bottom:10px}.modal .modal-side.modal-bottom-right{right:10px;bottom:10px}.modal.fade.top:not(.show) .modal-dialog{transform:translate3d(0,-25%,0)}.modal.fade.left:not(.show) .modal-dialog{transform:translate3d(-25%,0,0)}.modal.fade.right:not(.show) .modal-dialog{transform:translate3d(25%,0,0)}.modal.fade.bottom:not(.show) .modal-dialog{transform:translate3d(0,25%,0)}.modal.fade.in{opacity:1}.modal.fade.in .modal-dialog{transform:translate(0)}.modal.fade.in .modal-dialog .relative{display:inline-block}.modal.modal-scrolling{position:relative}.modal.modal-scrolling .modal-dialog{position:fixed;z-index:1050}.modal.modal-content-clickable{top:auto;bottom:auto}.modal.modal-content-clickable .modal-dialog{position:fixed}.modal .modal-fluid{width:100%;max-width:100%}.modal .modal-fluid .modal-content{width:100%}.modal .modal-frame{position:absolute;width:100%;max-width:100%;margin:0}@media (max-width:767px){.modal .modal-frame{padding:.5rem}}.modal .modal-frame.modal-bottom{bottom:0}.modal .modal-full-height{display:flex;position:absolute;width:400px;min-height:100%;margin:0;top:0;right:0}@media (max-width:576px){.modal .modal-full-height{width:100%;padding:.5rem}}@media (max-width:992px){.modal .modal-full-height{width:100%;height:unset;position:unset}}@media (max-width:992px){.modal .modal-full-height.modal-left,.modal .modal-full-height.modal-right,.modal .modal-full-height.modal-top{margin:1.75rem auto;min-height:unset}}@media (max-width:768px){.modal .modal-full-height.modal-bottom{margin-top:1.75rem}}@media (min-width:768px) and (max-width:992px){.modal .modal-full-height.modal-bottom{margin-bottom:1.75rem}.modal .modal-full-height.modal-bottom .modal-content{bottom:1rem}}@media (max-width:992px){.modal .modal-full-height.modal-bottom,.modal .modal-full-height.modal-left,.modal .modal-full-height.modal-right,.modal .modal-full-height.modal-top{margin-left:auto;margin-right:auto}}.modal .modal-full-height.modal-bottom,.modal .modal-full-height.modal-top{display:block;width:100%;height:auto}.modal .modal-full-height.modal-top{bottom:auto}.modal .modal-full-height.modal-bottom{bottom:0}.modal .modal-full-height .modal-content{width:100%}.modal .modal-full-height.modal-lg{max-width:90%;width:90%}@media (min-width:992px){.modal .modal-full-height.modal-lg{max-width:800px;width:800px}}@media (min-width:1200px){.modal .modal-full-height.modal-lg{max-width:1000px;width:1000px}}.modal .modal-side{position:absolute;right:10px;bottom:10px;margin:0;min-width:100px}@media (max-width:768px){.modal .modal-side{padding-left:.5rem}}.modal-dialog.cascading-modal{margin-top:10%}.modal-dialog.cascading-modal .modal-header{text-align:center;margin:-2rem 1rem 1rem;padding:1.5rem;border:none;flex-direction:column}.modal-dialog.cascading-modal .modal-header .close{margin-right:2.5rem}.modal-dialog.cascading-modal .modal-header.white-text .close{color:#fff;opacity:1}.modal-dialog.cascading-modal .modal-header .title{width:100%;margin-bottom:0;font-size:1.25rem}.modal-dialog.cascading-modal .modal-header .title .fa{margin-right:9px}.modal-dialog.cascading-modal .modal-header .social-buttons{margin-top:1.5rem}.modal-dialog.cascading-modal .modal-header .social-buttons a{font-size:1rem}.modal-dialog.cascading-modal .modal-c-tabs .md-tabs{margin:-1.5rem 1rem 0}.modal-dialog.cascading-modal .modal-c-tabs .tab-content{padding:1.7rem 0 0}.modal-dialog.cascading-modal .modal-body,.modal-dialog.cascading-modal .modal-footer{color:#616161;padding-right:2rem;padding-left:2rem}.modal-dialog.cascading-modal .modal-body .additional-option,.modal-dialog.cascading-modal .modal-footer .additional-option{text-align:center;margin-top:1rem}.modal-dialog.cascading-modal.modal-avatar{margin-top:6rem}.modal-dialog.cascading-modal.modal-avatar .modal-header{margin:-6rem 2rem -1rem}.modal-dialog.cascading-modal.modal-avatar .modal-header img{width:130px}.modal-dialog.modal-notify .heading{margin:0;padding:.3rem;color:#fff;font-size:1.15rem}.modal-dialog.modal-notify .modal-header{border:0}.modal-dialog.modal-notify .close{opacity:1}.modal-dialog.modal-notify .modal-body{padding:1.5rem;color:#616161}.modal-dialog.modal-notify .btn-outline-secondary-modal{background-color:transparent}.modal-dialog.modal-notify.modal-info .modal-header{background-color:#5394ff}.modal-dialog.modal-notify.modal-info .fa{color:#5394ff}.modal-dialog.modal-notify.modal-info .badge{background-color:#5394ff}.modal-dialog.modal-notify.modal-info .btn-primary-modal{background:#5394ff}.modal-dialog.modal-notify.modal-info .btn-primary-modal:active,.modal-dialog.modal-notify.modal-info .btn-primary-modal:focus,.modal-dialog.modal-notify.modal-info .btn-primary-modal:hover{background-color:#6da4ff!important}.modal-dialog.modal-notify.modal-info .btn-primary-modal.active{background-color:#0059ec!important}.modal-dialog.modal-notify.modal-info .btn-outline-secondary-modal{border:2px solid #5394ff;color:#5394ff!important}.modal-dialog.modal-notify.modal-warning .modal-header{background-color:#ff8e38}.modal-dialog.modal-notify.modal-warning .fa{color:#ff8e38}.modal-dialog.modal-notify.modal-warning .badge{background-color:#ff8e38}.modal-dialog.modal-notify.modal-warning .btn-primary-modal{background:#ff8e38}.modal-dialog.modal-notify.modal-warning .btn-primary-modal:active,.modal-dialog.modal-notify.modal-warning .btn-primary-modal:focus,.modal-dialog.modal-notify.modal-warning .btn-primary-modal:hover{background-color:#ff9c52!important}.modal-dialog.modal-notify.modal-warning .btn-primary-modal.active{background-color:#d15a00!important}.modal-dialog.modal-notify.modal-warning .btn-outline-secondary-modal{border:2px solid #ff8e38;color:#ff8e38!important}.modal-dialog.modal-notify.modal-success .modal-header{background-color:#01d36b}.modal-dialog.modal-notify.modal-success .fa{color:#01d36b}.modal-dialog.modal-notify.modal-success .badge{background-color:#01d36b}.modal-dialog.modal-notify.modal-success .btn-primary-modal{background:#01d36b}.modal-dialog.modal-notify.modal-success .btn-primary-modal:active,.modal-dialog.modal-notify.modal-success .btn-primary-modal:focus,.modal-dialog.modal-notify.modal-success .btn-primary-modal:hover{background-color:#01ec78!important}.modal-dialog.modal-notify.modal-success .btn-primary-modal.active{background-color:#016d38!important}.modal-dialog.modal-notify.modal-success .btn-outline-secondary-modal{border:2px solid #01d36b;color:#01d36b!important}.modal-dialog.modal-notify.modal-danger .modal-header{background-color:#ff4b4b}.modal-dialog.modal-notify.modal-danger .fa{color:#ff4b4b}.modal-dialog.modal-notify.modal-danger .badge{background-color:#ff4b4b}.modal-dialog.modal-notify.modal-danger .btn-primary-modal{background:#ff4b4b}.modal-dialog.modal-notify.modal-danger .btn-primary-modal:active,.modal-dialog.modal-notify.modal-danger .btn-primary-modal:focus,.modal-dialog.modal-notify.modal-danger .btn-primary-modal:hover{background-color:#ff6565!important}.modal-dialog.modal-notify.modal-danger .btn-primary-modal.active{background-color:#e40000!important}.modal-dialog.modal-notify.modal-danger .btn-outline-secondary-modal{border:2px solid #ff4b4b;color:#ff4b4b!important}.modal-sm .modal-content{margin:0 auto;max-width:300px}@media (min-width:768px){.modal-sm{max-width:300px}}.modal .modal-fluid,.modal .modal-frame{width:100%;max-width:100%}.modal-ext .modal-content .modal-header{text-align:center}.modal-ext .modal-content .options{float:left}.modal-ext .modal-content .modal-body .text-xs-center fieldset{margin-top:20px}.modal-ext .modal-content .call{margin-top:1rem}.modal-ext .modal-content .modal-body{padding:2rem 2rem 1rem}.modal-content:not(.card-image) .close{position:absolute;right:15px}.modal-cart li p{margin:5px;font-weight:400}.modal-cart li p .badge{margin-left:10px;margin-top:3px;font-weight:400;position:absolute}.modal-cart li p .quantity{font-size:16px;margin-right:7px;font-weight:300}.modal-cart .cartPageLink{margin-left:10px}.modal-cart .cartPageLink a{text-decoration:underline;color:#666}.modal-cart .total{float:right;font-weight:400}.cf-phone{margin-left:7px}.side-modal{position:fixed;width:400px;height:100%;width:100%;z-index:9999}.side-modal .modal-dialog{position:absolute;bottom:10px;right:10px;width:400px;margin:10px}@media (max-width:760px){.side-modal .modal-dialog{display:none}}.side-modal .modal-header{padding:1rem}.side-modal .modal-header .heading{margin:0;padding:0}.side-modal .modal-content{border:none}.modal-dynamic>:first-child{display:flex;flex-direction:column;height:100%}.side-modal.fade:not(.show) .modal-dialog{transform:translate3d(25%,0,0)}.transparent-bd{opacity:0!important}.modal-backdrop,.modal-backdrop.in{opacity:.5}#exampleModalScroll{overflow-x:hidden;overflow-y:auto}.modal-open .modal{overflow-x:hidden;overflow-y:hidden}.form-dark .card-image{background-size:100%}\"]\n }]\n }], function () { return [{ type: ModalOptions }, { type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }]; }, { tabindex: [{\n type: HostBinding,\n args: ['tabindex']\n }], role: [{\n type: HostBinding,\n args: ['attr.role']\n }], modal: [{\n type: HostBinding,\n args: ['class.modal']\n }], onClick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }], onEsc: [{\n type: HostListener,\n args: ['window:keydown.esc']\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MDBModalService, [{\n type: Injectable\n }], function () { return [{ type: ɵngcc0.RendererFactory2 }, { type: ComponentLoaderFactory }]; }, null); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(ModalModule, { declarations: function () { return [ModalBackdropComponent, ModalDirective, ModalContainerComponent]; }, imports: function () { return [A11yModule]; }, exports: function () { return [ModalBackdropComponent, ModalDirective]; } }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(ModalModule, [{\n type: NgModule,\n args: [{\n declarations: [ModalBackdropComponent, ModalDirective, ModalContainerComponent],\n imports: [A11yModule],\n exports: [ModalBackdropComponent, ModalDirective],\n entryComponents: [ModalBackdropComponent, ModalContainerComponent],\n schemas: [NO_ERRORS_SCHEMA]\n }]\n }], null, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NavbarService, [{\n type: Injectable\n }], function () { return []; }, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(LinksComponent, [{\n type: Component,\n args: [{\n // tslint:disable-next-line:component-selector\n selector: 'links',\n template: `\n \n `\n }]\n }], function () { return [{ type: NavbarService }, { type: ɵngcc0.Renderer2 }]; }, { linkClick: [{\n type: Output\n }], links: [{\n type: ContentChildren,\n args: [RouterLinkWithHref, { read: ElementRef, descendants: true }]\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NavbarComponent, [{\n type: Component,\n args: [{\n selector: 'mdb-navbar',\n template: \"\\n\",\n encapsulation: ViewEncapsulation.None,\n changeDetection: ChangeDetectionStrategy.OnPush,\n styles: [\".navbar{box-shadow:0 2px 5px 0 rgba(0,0,0,.16),0 2px 10px 0 rgba(0,0,0,.12);font-weight:300}.navbar form .md-form input{margin:0 5px 1px 8px}.navbar .breadcrumb{margin:0;padding:.3rem 0 0 1rem;background-color:inherit;font-size:15px;font-weight:300}.navbar .breadcrumb .breadcrumb-item{color:#fff}.navbar .breadcrumb .breadcrumb-item.active,.navbar .breadcrumb .breadcrumb-item:before{color:hsla(0,0%,100%,.65)}.navbar .navbar-toggler{outline:0;border-width:0}.navbar .nav-flex-icons{flex-direction:row}@media (max-width:992px){.navbar .container{width:100%}.navbar .container .navbar-toggler-right{right:0}}.navbar .nav-item .nav-link{display:block}.navbar .nav-item .nav-link.disabled:active{pointer-events:none}.navbar .nav-item .nav-link .fab,.navbar .nav-item .nav-link .far,.navbar .nav-item .nav-link .fas{padding-right:3px;padding-left:3px}@media (max-width:992px){.navbar .nav-item .nav-link{padding-right:6px;padding-left:6px}}.navbar .dropdown-menu{position:absolute!important;margin-top:0}.navbar .dropdown-menu a{padding:10px;font-size:.9375rem;font-weight:300;color:#000}@media (max-width:600px){.navbar .dropdown-menu form{width:17rem}}@media (min-width:600px){.navbar .dropdown-menu form{width:22rem}}.navbar.navbar-light .navbar-nav .nav-item .nav-link.disbled,.navbar.navbar-light .navbar-nav .nav-item .nav-link.disbled:hover{color:rgba(0,0,0,.5)}.navbar.navbar-light .navbar-toggler-icon{background-image:url(\\\"data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(0, 0, 0, 0.9)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E\\\");cursor:pointer}.navbar.navbar-light .breadcrumb .nav-item .nav-link,.navbar.navbar-light .navbar-nav .nav-item .nav-link{color:#000;transition:.35s}.navbar.navbar-light .breadcrumb .nav-item .nav-link:hover,.navbar.navbar-light .navbar-nav .nav-item .nav-link:hover{color:rgba(0,0,0,.75)}.navbar.navbar-light .breadcrumb .nav-item.active>.nav-link,.navbar.navbar-light .navbar-nav .nav-item.active>.nav-link{background-color:rgba(0,0,0,.1)}.navbar.navbar-light .breadcrumb .nav-item.active>.nav-link:hover,.navbar.navbar-light .navbar-nav .nav-item.active>.nav-link:hover,.navbar.navbar-light .navbar-toggler{color:#000}.navbar.navbar-light form .md-form input{border-bottom:1px solid #000}.navbar.navbar-light form .md-form input:focus:not([readonly]){border-color:#4285f4}.navbar.navbar-light form .md-form .form-control{color:#000}.navbar.navbar-light form .md-form .form-control::-moz-placeholder{color:#000;font-weight:300}.navbar.navbar-light form .md-form .form-control:-ms-input-placeholder{color:#000;font-weight:300}.navbar.navbar-light form .md-form .form-control::placeholder{color:#000;font-weight:300}.navbar.navbar-dark .navbar-nav .nav-item .nav-link.disbled,.navbar.navbar-dark .navbar-nav .nav-item .nav-link.disbled:hover{color:hsla(0,0%,100%,.5)}.navbar.navbar-dark .navbar-toggler-icon{background-image:url(\\\"data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 32 32' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='rgba(255, 255, 255, 0.9)' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 8h24M4 16h24M4 24h24'/%3E%3C/svg%3E\\\");cursor:pointer}.navbar.navbar-dark .breadcrumb .nav-item .nav-link,.navbar.navbar-dark .navbar-nav .nav-item .nav-link{color:#fff;transition:.35s}.navbar.navbar-dark .breadcrumb .nav-item .nav-link:hover,.navbar.navbar-dark .navbar-nav .nav-item .nav-link:hover{color:hsla(0,0%,100%,.75)}.navbar.navbar-dark .breadcrumb .nav-item.active>.nav-link,.navbar.navbar-dark .navbar-nav .nav-item.active>.nav-link{background-color:hsla(0,0%,100%,.1)}.navbar.navbar-dark .breadcrumb .nav-item.active>.nav-link:hover,.navbar.navbar-dark .navbar-nav .nav-item.active>.nav-link:hover,.navbar.navbar-dark .navbar-toggler{color:#fff}.navbar.navbar-dark form .md-form input{border-bottom:1px solid #fff}.navbar.navbar-dark form .md-form input:focus:not([readonly]){border-color:#4285f4}.navbar.navbar-dark form .md-form .form-control{color:#fff}.navbar.navbar-dark form .md-form .form-control::-moz-placeholder{color:#fff;font-weight:300}.navbar.navbar-dark form .md-form .form-control:-ms-input-placeholder{color:#fff;font-weight:300}.navbar.navbar-dark form .md-form .form-control::placeholder{color:#fff;font-weight:300}@media (min-width:600px){.navbar.scrolling-navbar{transition:background .5s ease-in-out,padding .5s ease-in-out;padding-top:12px;padding-bottom:12px}.navbar.scrolling-navbar .navbar-nav>li{transition-duration:1s}.navbar.scrolling-navbar.top-nav-collapse{padding-top:5px;padding-bottom:5px}}@media (min-width:1200px){.navbar.navbar-expand-xl links,.navbar.navbar-expand-xl navlinks{display:flex;flex-direction:row;align-items:center!important;align-self:center!important;width:100%}}@media (min-width:992px){.navbar>logo>div>a img{margin-left:20px}.navbar.navbar-expand-lg links,.navbar.navbar-expand-lg navlinks{display:flex;flex-direction:row;align-items:center!important;align-self:center!important;width:100%}}@media (min-width:768px){.navbar.navbar-expand-md links,.navbar.navbar-expand-md navlinks{display:flex;flex-direction:row;width:100%}}@media (min-width:576px){.navbar.navbar-expand-sm links,.navbar.navbar-expand-sm navlinks{display:flex;flex-direction:row;width:100%}}@media (max-width:992px){.collapsed-navbar-scroll{max-height:calc(100vh - 40px);overflow-y:scroll}}.navbar-container{order:-1;width:50px!important;padding-left:5px;padding-right:5px}.navbar-nav .dropdown-menu-right.dropdown-menu{left:unset}.navbar-nav .dropdown-menu{top:100%!important;transform:translateZ(0)!important}.breadcrumbs{display:flex;padding-left:5px;padding-right:5px;order:0;align-items:center}@media (min-width:1441px){.breadcrumbs{margin-left:-.6rem}}@supports (-ms-ime-align:auto){@media (min-width:992px){.ie-nav .navbar-nav.nav-flex-icons{position:absolute;top:30%;right:0}.ie-nav .navbar-nav{position:absolute;top:30%;margin-left:88px}.ie-nav .navbar-brand>img{margin-top:-2px;padding-right:16px}}.ie-nav .navbar-toggler{position:absolute;margin-top:-40px;right:0}@media (min-width:992px){.intro-non-fixed-nav>links .navbar-collapse{display:inline-flex!important;align-items:center!important;justify-content:space-between!important}}@media (min-width:992px){.intro-fixed-nav .navbar-nav.nav-flex-icons{position:absolute;top:30%;right:0}.intro-fixed-nav .navbar-nav{position:absolute;top:30%;margin-left:88px}.intro-fixed-nav .navbar-brand img{margin-top:-2px;padding-right:16px}}.intro-fixed-nav .navbar-toggler{position:absolute;margin-top:-40px;right:0}}@media (-ms-high-contrast:active) and (min-width:992px),(-ms-high-contrast:none) and (min-width:992px){.ie-nav .navbar-nav.nav-flex-icons{position:absolute;top:30%;right:0}.ie-nav .navbar-nav{position:absolute;top:30%;margin-left:88px}.ie-nav .navbar-brand>img{margin-top:-2px;padding-right:16px}}@media (-ms-high-contrast:active),(-ms-high-contrast:none){.ie-nav .navbar-toggler{position:absolute;margin-top:-40px;right:0}}@media (-ms-high-contrast:active) and (min-width:992px),(-ms-high-contrast:none) and (min-width:992px){.intro-non-fixed-nav>links .navbar-collapse{display:inline-flex!important;align-items:center!important;justify-content:space-between!important}}@media (-ms-high-contrast:active) and (min-width:992px),(-ms-high-contrast:none) and (min-width:992px){.intro-fixed-nav .navbar-nav.nav-flex-icons{position:absolute;top:30%;right:0}.intro-fixed-nav .navbar-nav{position:absolute;top:30%;margin-left:88px}.intro-fixed-nav .navbar-brand img{margin-top:-2px;padding-right:16px}}@media (-ms-high-contrast:active),(-ms-high-contrast:none){.intro-fixed-nav .navbar-toggler{position:absolute;margin-top:-40px;right:0}}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:none}\"]\n }]\n }], function () { return [{ type: ɵngcc0.Renderer2 }, { type: NavbarService }, { type: ɵngcc0.ChangeDetectorRef }, { type: ɵngcc0.NgZone }, { type: undefined, decorators: [{\n type: Inject,\n args: [DOCUMENT]\n }] }]; }, { containerInside: [{\n type: Input\n }], collapseId: [{\n type: Input\n }], scrollSensitivity: [{\n type: Input\n }], scrollableNavbar: [{\n type: Input\n }], shown: [{\n type: Output\n }], hidden: [{\n type: Output\n }], onResize: [{\n type: HostListener,\n args: ['window:resize', ['$event']]\n }], iconBackground: [{\n type: Input\n }], SideClass: [{\n type: Input\n }], el: [{\n type: ViewChild,\n args: ['navbar', { static: true }]\n }], mobile: [{\n type: ViewChild,\n args: ['mobile']\n }], navbar: [{\n type: ViewChild,\n args: ['nav', { static: true }]\n }], container: [{\n type: ViewChild,\n args: ['container', { static: true }]\n }], toggler: [{\n type: ViewChild,\n args: ['toggler']\n }], links: [{\n type: ContentChild,\n args: [LinksComponent]\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(LogoComponent, [{\n type: Component,\n args: [{\n selector: 'logo, mdb-navbar-brand',\n template: ``\n }]\n }], null, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NavlinksComponent, [{\n type: Component,\n args: [{\n // tslint:disable-next-line:component-selector\n selector: 'navlinks',\n template: `\n \n `\n }]\n }], function () { return [{ type: NavbarService }, { type: ɵngcc0.Renderer2 }]; }, { linkClick: [{\n type: Output\n }], links: [{\n type: ContentChildren,\n args: [RouterLinkWithHref, { read: ElementRef, descendants: true }]\n }] }); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(NavbarModule, { declarations: function () { return [NavbarComponent, LinksComponent, LogoComponent, NavlinksComponent]; }, imports: function () { return [CommonModule]; }, exports: function () { return [NavbarComponent, LinksComponent, LogoComponent, NavlinksComponent]; } }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(NavbarModule, [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n declarations: [NavbarComponent, LinksComponent, LogoComponent, NavlinksComponent],\n exports: [NavbarComponent, LinksComponent, LogoComponent, NavlinksComponent],\n providers: [NavbarService]\n }]\n }], null, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(PopoverConfig, [{\n type: Injectable\n }], function () { return []; }, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(PopoverContainerComponent, [{\n type: Component,\n args: [{\n selector: 'mdb-popover-container',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n

    {{ title }}

    \n
    \n \n
    \n `,\n encapsulation: ViewEncapsulation.None,\n styles: [\".popover.bs-tether-element-attached-bottom,.popover.popover-top{margin-top:-10px}.popover.bs-tether-element-attached-bottom:after,.popover.bs-tether-element-attached-bottom:before,.popover.popover-top:after,.popover.popover-top:before{left:50%;border-bottom-width:0}.popover.bs-tether-element-attached-bottom:before,.popover.popover-top:before{bottom:-11px;margin-left:-11px;border-top-color:rgba(0,0,0,.25)}.popover.bs-tether-element-attached-bottom:after,.popover.popover-top:after{bottom:-10px;margin-left:-10px;border-top-color:#fff}.popover.bs-tether-element-attached-left,.popover.popover-right{margin-left:10px}.popover.bs-tether-element-attached-left:after,.popover.bs-tether-element-attached-left:before,.popover.popover-right:after,.popover.popover-right:before{top:50%;border-left-width:0}.popover.bs-tether-element-attached-left:before,.popover.popover-right:before{left:-11px;margin-top:-11px;border-right-color:rgba(0,0,0,.25)}.popover.bs-tether-element-attached-left:after,.popover.popover-right:after{left:-10px;margin-top:-10px;border-right-color:#fff}.popover.bs-tether-element-attached-top,.popover.popover-bottom{margin-top:10px}.popover.bs-tether-element-attached-top:after,.popover.bs-tether-element-attached-top:before,.popover.popover-bottom:after,.popover.popover-bottom:before{left:50%;border-top-width:0}.popover.bs-tether-element-attached-top:before,.popover.popover-bottom:before{top:-11px;margin-left:-11px;border-bottom-color:rgba(0,0,0,.25)}.popover.bs-tether-element-attached-top:after,.popover.popover-bottom:after{top:-10px;margin-left:-10px;border-bottom-color:#f7f7f7}.popover.bs-tether-element-attached-top .popover-title:before,.popover.popover-bottom .popover-title:before{position:absolute;top:0;left:50%;display:block;width:20px;margin-left:-10px;content:\\\"\\\";border-bottom:1px solid #f7f7f7}.popover.bs-tether-element-attached-right,.popover.popover-left{margin-left:-10px}.popover.bs-tether-element-attached-right:after,.popover.bs-tether-element-attached-right:before,.popover.popover-left:after,.popover.popover-left:before{top:50%;border-right-width:0}.popover.bs-tether-element-attached-right:before,.popover.popover-left:before{right:-11px;margin-top:-11px;border-left-color:rgba(0,0,0,.25)}.popover.bs-tether-element-attached-right:after,.popover.popover-left:after{right:-10px;margin-top:-10px;border-left-color:#fff}.popover:after,.popover:before{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover:before{content:\\\"\\\";border-width:11px}.popover:after{content:\\\"\\\";border-width:10px}@-webkit-keyframes fadeInPopover{0%{opacity:0}to{opacity:1}}@keyframes fadeInPopover{0%{opacity:0}to{opacity:1}}.popover-fadeIn{-webkit-animation-name:fadeInPopover;animation-name:fadeInPopover;-webkit-animation-delay:.2s;animation-delay:.2s;-webkit-animation-duration:.2s;animation-duration:.2s;-webkit-animation-fill-mode:both;animation-fill-mode:both}\"]\n }]\n }], function () { return [{ type: PopoverConfig }]; }, { show: [{\n type: HostBinding,\n args: ['class.show']\n }], role: [{\n type: HostBinding,\n args: ['attr.role']\n }], class: [{\n type: HostBinding,\n args: ['class']\n }], placement: [{\n type: Input\n }], title: [{\n type: Input\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(PopoverDirective, [{\n type: Directive,\n args: [{ selector: '[mdbPopover]', exportAs: 'bs-mdbPopover' }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }, { type: ɵngcc0.ViewContainerRef }, { type: PopoverConfig }, { type: ComponentLoaderFactory }, { type: PositioningService }]; }, { dynamicPosition: [{\n type: Input\n }], outsideClick: [{\n type: Input\n }], popoverDisabled: [{\n type: Input\n }], onShown: [{\n type: Output\n }], shown: [{\n type: Output\n }], onHidden: [{\n type: Output\n }], hidden: [{\n type: Output\n }], isOpen: [{\n type: Input\n }], onclick: [{\n type: HostListener,\n args: ['click', ['$event']]\n }], onblur: [{\n type: HostListener,\n args: ['window:click']\n }], \n // fix(popover): popover with outsideClick='true' will now close after clicking in document on iPad Safari\n onTouchStart: [{\n type: HostListener,\n args: ['document:touchstart', ['$event']]\n }], containerClass: [{\n type: Input\n }], bodyClass: [{\n type: Input\n }], headerClass: [{\n type: Input\n }], mdbPopover: [{\n type: Input\n }], mdbPopoverHeader: [{\n type: Input\n }], popoverTitle: [{\n type: Input\n }], placement: [{\n type: Input\n }], triggers: [{\n type: Input\n }], container: [{\n type: Input\n }] }); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(PopoverModule, { declarations: function () { return [PopoverDirective, PopoverContainerComponent]; }, imports: function () { return [CommonModule]; }, exports: function () { return [PopoverDirective]; } }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(PopoverModule, [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n declarations: [PopoverDirective, PopoverContainerComponent],\n exports: [PopoverDirective],\n entryComponents: [PopoverContainerComponent]\n }]\n }], null, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MdbTableDirective, [{\n type: Component,\n args: [{\n // tslint:disable-next-line:component-selector\n selector: '[mdbTable]',\n exportAs: 'mdbTable',\n template: '',\n encapsulation: ViewEncapsulation.None,\n styles: [\"table th{font-size:.9rem;font-weight:400}table td{font-size:.9rem;font-weight:300}table thead td svg.ascending,table thead td svg.descending,table thead th svg.ascending,table thead th svg.descending{display:none;max-height:.9rem;max-width:.9rem}table thead td[aria-sort=ascending] svg.ascending,table thead td[aria-sort=descending] svg.descending,table thead th[aria-sort=ascending] svg.ascending,table thead th[aria-sort=descending] svg.descending{display:unset}table thead td:not([aria-sort]):hover svg.descending,table thead td[aria-sort=constant]:hover svg.descending,table thead th:not([aria-sort]):hover svg.descending,table thead th[aria-sort=constant]:hover svg.descending{display:unset;opacity:.5}table tfoot .sticky-bottom{position:sticky;bottom:0}table.table{margin-bottom:0}table.table thead th{border-top:none;border-bottom-width:1px}table.table td,table.table th{padding:1.1rem 16px 1rem}table.table .label-table{margin:0;padding:0;line-height:.94rem;height:.94rem}table.table.btn-table td{vertical-align:middle}table.table-hover tbody tr:hover{transition:.5s;background-color:rgba(0,0,0,.075)}table .th-lg{min-width:9rem}table .th-sm{min-width:6rem}table.table-sm td,table.table-sm th{padding-top:.6rem;padding-bottom:.6rem}.table-scroll-vertical{max-height:300px;overflow-y:auto}.table-fixed{table-layout:fixed}.table-responsive-lg>.table-bordered,.table-responsive-md>.table-bordered,.table-responsive-sm>.table-bordered,.table-responsive-xl>.table-bordered,.table-responsive>.table-bordered{border-top:1px solid #dee2e6}\"]\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }]; }, { stickyHeader: [{\n type: Input\n }], stickyHeaderBgColor: [{\n type: Input\n }], stickyHeaderTextColor: [{\n type: Input\n }], stickyFooter: [{\n type: Input\n }], stickyFooterBgColor: [{\n type: Input\n }], stickyFooterTextColor: [{\n type: Input\n }], striped: [{\n type: Input\n }, {\n type: HostBinding,\n args: ['class.table-striped']\n }], bordered: [{\n type: Input\n }, {\n type: HostBinding,\n args: ['class.table-bordered']\n }], borderless: [{\n type: Input\n }, {\n type: HostBinding,\n args: ['class.table-borderless']\n }], hover: [{\n type: Input\n }, {\n type: HostBinding,\n args: ['class.table-hover']\n }], small: [{\n type: Input\n }, {\n type: HostBinding,\n args: ['class.table-sm']\n }], responsive: [{\n type: Input\n }, {\n type: HostBinding,\n args: ['class.table-responsive']\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MdbTableSortDirective, [{\n type: Directive,\n args: [{\n selector: '[mdbTableSort]'\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }]; }, { dataSource: [{\n type: Input,\n args: ['mdbTableSort']\n }], sortIcon: [{\n type: Input\n }], resetSortDirection: [{\n type: Input\n }], sortEnd: [{\n type: Output\n }], sorted: [{\n type: Output\n }], onclick: [{\n type: HostListener,\n args: ['click']\n }], sortBy: [{\n type: Input\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MdbTableScrollDirective, [{\n type: Directive,\n args: [{\n selector: '[mdbTableScroll]'\n }]\n }], function () { return [{ type: ɵngcc0.Renderer2 }, { type: ɵngcc0.ElementRef }]; }, { scrollY: [{\n type: Input\n }], maxHeight: [{\n type: Input\n }], scrollX: [{\n type: Input\n }], maxWidth: [{\n type: Input\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MdbTableRowDirective, [{\n type: Directive,\n args: [{\n selector: '[mdbTableRow]'\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }]; }, { rowCreated: [{\n type: Output\n }], rowRemoved: [{\n type: Output\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MdbTableService, [{\n type: Injectable,\n args: [{\n providedIn: 'root'\n }]\n }], function () { return []; }, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MdbTablePaginationComponent, [{\n type: Component,\n args: [{\n selector: 'mdb-table-pagination',\n template: \"\\n\\n\\n\"\n }]\n }], function () { return [{ type: ɵngcc0.ChangeDetectorRef }]; }, { searchPagination: [{\n type: Input\n }], searchDataSource: [{\n type: Input\n }], ofKeyword: [{\n type: Input\n }], dashKeyword: [{\n type: Input\n }], paginationAlign: [{\n type: Input\n }], hideDescription: [{\n type: Input\n }], nextPageClick: [{\n type: Output\n }], previousPageClick: [{\n type: Output\n }], firstPageClick: [{\n type: Output\n }], lastPageClick: [{\n type: Output\n }], tableEl: [{\n type: Input\n }] }); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(TableModule, { declarations: function () { return [MdbTablePaginationComponent, MdbTableRowDirective, MdbTableScrollDirective, MdbTableSortDirective, MdbTableDirective]; }, imports: function () { return [CommonModule]; }, exports: function () { return [MdbTablePaginationComponent, MdbTableRowDirective, MdbTableScrollDirective, MdbTableSortDirective, MdbTableDirective]; } }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(TableModule, [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n declarations: [\n MdbTablePaginationComponent,\n MdbTableRowDirective,\n MdbTableScrollDirective,\n MdbTableSortDirective,\n MdbTableDirective,\n ],\n exports: [\n MdbTablePaginationComponent,\n MdbTableRowDirective,\n MdbTableScrollDirective,\n MdbTableSortDirective,\n MdbTableDirective,\n ],\n entryComponents: [MdbTablePaginationComponent],\n providers: [MdbTableService]\n }]\n }], null, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(TooltipConfig, [{\n type: Injectable\n }], function () { return []; }, null); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(TooltipContainerComponent, [{\n type: Component,\n args: [{\n selector: 'mdb-tooltip-container',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n
    \n
    \n \n
    \n `,\n encapsulation: ViewEncapsulation.None,\n styles: [\"a .tooltip{position:absolute;z-index:1070;display:block;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-style:normal;font-weight:400;letter-spacing:normal;line-break:auto;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;white-space:normal;word-break:normal;word-spacing:normal;font-size:.875rem;word-wrap:break-word;opacity:0}a .tooltip.show{opacity:.9}a .tooltip.bs-tether-element-attached-bottom,a .tooltip.tooltip-top{padding:.8rem 0;margin-top:0}a .tooltip.bs-tether-element-attached-bottom .tooltip-inner:before,a .tooltip.tooltip-top .tooltip-inner:before{bottom:0;left:50%;margin-left:-.8rem;content:\\\"\\\";border-width:.8rem .8rem 0}a .tooltip.bs-tether-element-attached-left,a .tooltip.tooltip-right{padding:0 .8rem;margin-left:0}a .tooltip.bs-tether-element-attached-left .tooltip-inner:before,a .tooltip.tooltip-right .tooltip-inner:before{top:50%;left:0;margin-top:-.8rem;content:\\\"\\\";border-width:.8rem .8rem .8rem 0}a .tooltip.bs-tether-element-attached-top,a .tooltip.tooltip-bottom{padding:.8rem 0;margin-top:0}a .tooltip.bs-tether-element-attached-top .tooltip-inner:before,a .tooltip.tooltip-bottom .tooltip-inner:before{top:0;left:50%;margin-left:-.8rem;content:\\\"\\\";border-width:0 .8rem .8rem}a .tooltip.bs-tether-element-attached-right,a .tooltip.tooltip-left{padding:0 .8rem;margin-left:0}a .tooltip.bs-tether-element-attached-right .tooltip-inner:before,a .tooltip.tooltip-left .tooltip-inner:before{top:50%;right:0;margin-top:-.8rem;content:\\\"\\\";border-width:.8rem 0 .8rem .8rem}.tooltip-inner{max-width:200px;text-align:center;padding:.2rem .4rem;box-shadow:0 5px 11px 0 rgba(0,0,0,.18),0 4px 15px 0 rgba(0,0,0,.15);border-radius:.25rem}.tooltip-inner:before{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}@-webkit-keyframes fadeInTooltip{0%{opacity:0}to{opacity:1}}@keyframes fadeInTooltip{0%{opacity:0}to{opacity:1}}.tooltip-fadeIn{-webkit-animation-name:fadeInTooltip;animation-name:fadeInTooltip;-webkit-animation-delay:.2s;animation-delay:.2s;-webkit-animation-duration:.2s;animation-duration:.2s;-webkit-animation-fill-mode:both;animation-fill-mode:both}.single-tooltip{padding:.75rem 0 0}.single-tooltip a{padding:0!important}a[tooltip]{margin-left:0!important;padding:0 .5rem}.tooltip-arrow.left{position:relative;margin-right:-.6rem;transform:rotate(90deg)}.tooltip-arrow.right{position:relative;margin-left:-.6rem;transform:rotate(-90deg)}.tooltip-arrow.top{position:relative;transform:rotate(-180deg)}.tooltip-top{padding:.4rem 0}.tooltip-top .arrow{bottom:0}.tooltip-top .arrow:before{top:0;border-width:.4rem .4rem 0;border-top-color:#000}.tooltip-right{padding:0 .4rem}.tooltip-right .arrow{left:0}.tooltip-right .arrow:before{right:0;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.tooltip-bottom{padding:.4rem 0}.tooltip-bottom .arrow{top:0}.tooltip-bottom .arrow:before{bottom:0;border-width:0 .4rem .4rem;border-bottom-color:#000}.tooltip-left{padding:0 .4rem}.tooltip-left .arrow{right:0}.tooltip-left .arrow:before{left:0;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}\"]\n }]\n }], function () { return [{ type: TooltipConfig }, { type: ɵngcc0.ElementRef }]; }, { containerClass: [{\n type: Input\n }], show: [{\n type: HostBinding,\n args: ['class.show']\n }], tooltipClasses: [{\n type: HostBinding,\n args: ['class']\n }], tooltipInner: [{\n type: ViewChild,\n args: ['tooltipInner', { static: true }]\n }], tooltipArrow: [{\n type: ViewChild,\n args: ['tooltipArrow', { static: true }]\n }] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(TooltipDirective, [{\n type: Directive,\n args: [{\n selector: '[mdbTooltip]',\n exportAs: 'mdb-tooltip'\n }]\n }], function () { return [{ type: ɵngcc0.Renderer2 }, { type: ɵngcc0.ElementRef }, { type: PositioningService }, { type: ɵngcc0.ViewContainerRef }, { type: ComponentLoaderFactory }, { type: TooltipConfig }, { type: String, decorators: [{\n type: Inject,\n args: [PLATFORM_ID]\n }] }]; }, { tooltipChange: [{\n type: Output\n }], dynamicPosition: [{\n type: Input\n }], delay: [{\n type: Input\n }], fadeDuration: [{\n type: Input\n }], onShown: [{\n type: Output\n }], shown: [{\n type: Output\n }], onHidden: [{\n type: Output\n }], hidden: [{\n type: Output\n }], isOpen: [{\n type: Input\n }], mdbTooltip: [{\n type: Input\n }], placement: [{\n type: Input\n }], triggers: [{\n type: Input\n }], container: [{\n type: Input\n }], tooltipDisabled: [{\n type: Input\n }], customHeight: [{\n type: Input\n }] }); })();\n\nclass TooltipModule {\n static forRoot() {\n return {\n ngModule: TooltipModule,\n providers: [TooltipConfig, ComponentLoaderFactory, PositioningService],\n };\n }\n}\nTooltipModule.ɵfac = function TooltipModule_Factory(t) { return new (t || TooltipModule)(); };\nTooltipModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: TooltipModule });\nTooltipModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ imports: [[CommonModule]] });\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(TooltipModule, { declarations: function () { return [TooltipDirective, TooltipContainerComponent]; }, imports: function () { return [CommonModule]; }, exports: function () { return [TooltipDirective]; } }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(TooltipModule, [{\n type: NgModule,\n args: [{\n imports: [CommonModule],\n declarations: [TooltipDirective, TooltipContainerComponent],\n exports: [TooltipDirective],\n entryComponents: [TooltipContainerComponent]\n }]\n }], null, null); })();\n\nclass WavesDirective {\n constructor(el) {\n this.el = el;\n }\n click(event) {\n if (!this.el.nativeElement.classList.contains('disabled')) {\n const button = this.el.nativeElement;\n if (!button.classList.contains('waves-effect')) {\n button.className += ' waves-effect';\n }\n const xPos = event.clientX - button.getBoundingClientRect().left;\n const yPos = event.clientY - button.getBoundingClientRect().top;\n const tmp = document.createElement('div');\n tmp.className += 'waves-ripple waves-rippling';\n const ripple = button.appendChild(tmp);\n const top = yPos + 'px';\n const left = xPos + 'px';\n tmp.style.top = top;\n tmp.style.left = left;\n const scale = 'scale(' + (button.clientWidth / 100) * 3 + ') translate(0,0)';\n // tslint:disable-next-line: deprecation\n tmp.style.webkitTransform = scale;\n tmp.style.transform = scale;\n tmp.style.opacity = '1';\n const duration = 750;\n // tslint:disable-next-line: deprecation\n tmp.style.webkitTransitionDuration = duration + 'ms';\n tmp.style.transitionDuration = duration + 'ms';\n this.removeRipple(button, ripple);\n }\n }\n removeRipple(button, ripple) {\n ripple.classList.remove('waves-rippling');\n setTimeout(() => {\n ripple.style.opacity = '0';\n setTimeout(() => {\n button.removeChild(ripple);\n }, 750);\n }, 200);\n }\n}\nWavesDirective.ɵfac = function WavesDirective_Factory(t) { return new (t || WavesDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef)); };\nWavesDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: WavesDirective, selectors: [[\"\", \"mdbWavesEffect\", \"\"]], hostBindings: function WavesDirective_HostBindings(rf, ctx) { if (rf & 1) {\n ɵngcc0.ɵɵlistener(\"click\", function WavesDirective_click_HostBindingHandler($event) { return ctx.click($event); });\n } } });\nWavesDirective.ctorParameters = () => [\n { type: ElementRef }\n];\nWavesDirective.propDecorators = {\n click: [{ type: HostListener, args: ['click', ['$event'],] }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(WavesDirective, [{\n type: Directive,\n args: [{\n selector: '[mdbWavesEffect]'\n }]\n }], function () { return [{ type: ɵngcc0.ElementRef }]; }, { click: [{\n type: HostListener,\n args: ['click', ['$event']]\n }] }); })();\n\nclass WavesModule {\n static forRoot() {\n return { ngModule: WavesModule, providers: [] };\n }\n}\nWavesModule.ɵfac = function WavesModule_Factory(t) { return new (t || WavesModule)(); };\nWavesModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: WavesModule });\nWavesModule.ɵinj = ɵngcc0.ɵɵdefineInjector({});\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(WavesModule, { declarations: [WavesDirective], exports: [WavesDirective] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(WavesModule, [{\n type: NgModule,\n args: [{\n declarations: [WavesDirective],\n exports: [WavesDirective]\n }]\n }], null, null); })();\n\nvar Direction$1;\n(function (Direction) {\n Direction[\"Up\"] = \"Up\";\n Direction[\"Down\"] = \"Down\";\n})(Direction$1 || (Direction$1 = {}));\nclass StickyHeaderDirective {\n constructor(_renderer, _el) {\n this._renderer = _renderer;\n this._el = _el;\n this.animationDuration = 200;\n this.transitionEnd = new EventEmitter();\n this._destroy$ = new Subject();\n }\n ngAfterViewInit() {\n const scroll$ = fromEvent(win, 'scroll').pipe(throttleTime(10), map(() => win.pageYOffset), pairwise(), map(([y1, y2]) => (y2 < y1 ? Direction$1.Up : Direction$1.Down)), distinctUntilChanged(), share());\n this.scrollUp$ = scroll$.pipe(filter(direction => direction === Direction$1.Up));\n this.scrollDown$ = scroll$.pipe(filter(direction => direction === Direction$1.Down));\n this._renderer.setStyle(this._el.nativeElement, 'position', 'fixed');\n this._renderer.setStyle(this._el.nativeElement, 'top', '0');\n this._renderer.setStyle(this._el.nativeElement, 'width', '100%');\n this._renderer.setStyle(this._el.nativeElement, 'z-index', '1030');\n setTimeout(() => {\n this.scrollUp$\n .pipe(skip(0), takeUntil(this._destroy$))\n .subscribe(() => {\n this._renderer.setStyle(this._el.nativeElement, 'transition', `all ${this.animationDuration}ms ease-in`);\n this._renderer.setStyle(this._el.nativeElement, 'transform', 'translateY(0%)');\n this.transitionEnd.emit({ state: 'Visible' });\n });\n this.scrollDown$\n .pipe(skip(0), takeUntil(this._destroy$))\n .subscribe(() => {\n this._renderer.setStyle(this._el.nativeElement, 'transition', `all ${this.animationDuration}ms ease-in`);\n this._renderer.setStyle(this._el.nativeElement, 'transform', 'translateY(-100%)');\n this.transitionEnd.emit({ state: 'Hidden' });\n });\n }, 0);\n }\n ngOnDestroy() {\n this._destroy$.next();\n this._destroy$.complete();\n }\n}\nStickyHeaderDirective.ɵfac = function StickyHeaderDirective_Factory(t) { return new (t || StickyHeaderDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef)); };\nStickyHeaderDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: StickyHeaderDirective, selectors: [[\"\", \"mdbStickyHeader\", \"\"]], inputs: { animationDuration: \"animationDuration\" }, outputs: { transitionEnd: \"transitionEnd\" }, exportAs: [\"mdbStickyHeader\"] });\nStickyHeaderDirective.ctorParameters = () => [\n { type: Renderer2 },\n { type: ElementRef }\n];\nStickyHeaderDirective.propDecorators = {\n animationDuration: [{ type: Input }],\n transitionEnd: [{ type: Output }]\n};\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(StickyHeaderDirective, [{\n type: Directive,\n args: [{\n selector: '[mdbStickyHeader]',\n exportAs: 'mdbStickyHeader'\n }]\n }], function () { return [{ type: ɵngcc0.Renderer2 }, { type: ɵngcc0.ElementRef }]; }, { animationDuration: [{\n type: Input\n }], transitionEnd: [{\n type: Output\n }] }); })();\n\nclass StickyHeaderModule {\n}\nStickyHeaderModule.ɵfac = function StickyHeaderModule_Factory(t) { return new (t || StickyHeaderModule)(); };\nStickyHeaderModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: StickyHeaderModule });\nStickyHeaderModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ imports: [[CommonModule]] });\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(StickyHeaderModule, { declarations: function () { return [StickyHeaderDirective]; }, imports: function () { return [CommonModule]; }, exports: function () { return [StickyHeaderDirective]; } }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(StickyHeaderModule, [{\n type: NgModule,\n args: [{\n declarations: [StickyHeaderDirective],\n exports: [StickyHeaderDirective],\n imports: [CommonModule]\n }]\n }], null, null); })();\n\n// free\nconst MODULES = [\n ButtonsModule,\n CardsModule,\n WavesModule,\n InputsModule,\n NavbarModule,\n DropdownModule,\n CarouselModule,\n ChartsModule,\n CollapseModule,\n ModalModule,\n TooltipModule,\n PopoverModule,\n IconsModule,\n CheckboxModule,\n TableModule,\n BadgeModule,\n BreadcrumbModule,\n InputUtilitiesModule,\n StickyHeaderModule,\n];\nclass MDBRootModule {\n}\nMDBRootModule.ɵfac = function MDBRootModule_Factory(t) { return new (t || MDBRootModule)(); };\nMDBRootModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: MDBRootModule });\nMDBRootModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ imports: [[\n ButtonsModule,\n WavesModule.forRoot(),\n InputsModule.forRoot(),\n NavbarModule,\n DropdownModule.forRoot(),\n CarouselModule.forRoot(),\n ChartsModule,\n CollapseModule.forRoot(),\n ModalModule.forRoot(),\n TooltipModule.forRoot(),\n PopoverModule.forRoot(),\n IconsModule,\n CardsModule.forRoot(),\n CheckboxModule,\n TableModule,\n BadgeModule,\n BreadcrumbModule,\n InputUtilitiesModule,\n StickyHeaderModule,\n ], ButtonsModule, CardsModule, WavesModule, InputsModule, NavbarModule, DropdownModule, CarouselModule, ChartsModule, CollapseModule, ModalModule, TooltipModule, PopoverModule, IconsModule, CheckboxModule, TableModule, BadgeModule, BreadcrumbModule, InputUtilitiesModule, StickyHeaderModule] });\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(MDBRootModule, { imports: [ButtonsModule, WavesModule, InputsModule, NavbarModule, DropdownModule, CarouselModule, ChartsModule, CollapseModule, ModalModule, TooltipModule, PopoverModule, IconsModule, CardsModule, CheckboxModule, TableModule, BadgeModule, BreadcrumbModule, InputUtilitiesModule, StickyHeaderModule], exports: [ButtonsModule, CardsModule, WavesModule, InputsModule, NavbarModule, DropdownModule, CarouselModule, ChartsModule, CollapseModule, ModalModule, TooltipModule, PopoverModule, IconsModule, CheckboxModule, TableModule, BadgeModule, BreadcrumbModule, InputUtilitiesModule, StickyHeaderModule] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MDBRootModule, [{\n type: NgModule,\n args: [{\n imports: [\n ButtonsModule,\n WavesModule.forRoot(),\n InputsModule.forRoot(),\n NavbarModule,\n DropdownModule.forRoot(),\n CarouselModule.forRoot(),\n ChartsModule,\n CollapseModule.forRoot(),\n ModalModule.forRoot(),\n TooltipModule.forRoot(),\n PopoverModule.forRoot(),\n IconsModule,\n CardsModule.forRoot(),\n CheckboxModule,\n TableModule,\n BadgeModule,\n BreadcrumbModule,\n InputUtilitiesModule,\n StickyHeaderModule,\n ],\n exports: MODULES,\n schemas: [NO_ERRORS_SCHEMA]\n }]\n }], null, null); })();\nclass MDBBootstrapModule {\n static forRoot() {\n return { ngModule: MDBRootModule };\n }\n}\nMDBBootstrapModule.ɵfac = function MDBBootstrapModule_Factory(t) { return new (t || MDBBootstrapModule)(); };\nMDBBootstrapModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: MDBBootstrapModule });\nMDBBootstrapModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ imports: [ButtonsModule, CardsModule, WavesModule, InputsModule, NavbarModule, DropdownModule, CarouselModule, ChartsModule, CollapseModule, ModalModule, TooltipModule, PopoverModule, IconsModule, CheckboxModule, TableModule, BadgeModule, BreadcrumbModule, InputUtilitiesModule, StickyHeaderModule] });\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(MDBBootstrapModule, { exports: [ButtonsModule, CardsModule, WavesModule, InputsModule, NavbarModule, DropdownModule, CarouselModule, ChartsModule, CollapseModule, ModalModule, TooltipModule, PopoverModule, IconsModule, CheckboxModule, TableModule, BadgeModule, BreadcrumbModule, InputUtilitiesModule, StickyHeaderModule] }); })();\n(function () { (typeof ngDevMode === \"undefined\" || ngDevMode) && ɵngcc0.ɵsetClassMetadata(MDBBootstrapModule, [{\n type: NgModule,\n args: [{ exports: MODULES }]\n }], null, null); })();\n\n/*\n * Public API Surface of ng-uikit-pro-standard-compile\n */\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { BadgeModule, BaseChartDirective, BreadcrumbModule, BsDropdownConfig, BsDropdownContainerComponent, BsDropdownDirective, BsDropdownMenuDirective, BsDropdownState, BsDropdownToggleDirective, ButtonCheckboxDirective, ButtonRadioDirective, ButtonsModule, CHECKBOX_VALUE_ACCESSOR, CardsModule, CarouselComponent, CarouselConfig, CarouselModule, ChartsModule, CheckboxComponent, CheckboxModule, CollapseComponent, CollapseModule, DropdownModule, EqualValidatorDirective, FabDirective, FadDirective, FalDirective, FarDirective, FasDirective, FixedButtonCaptionDirective, IconsModule, InputUtilitiesModule, InputsModule, LinksComponent, LogoComponent, MDBBadgeComponent, MDBBootstrapModule, MDBModalRef, MDBModalService, MDBRootModule, MdbBreadcrumbComponent, MdbBreadcrumbItemComponent, MdbBtnDirective, MdbCardBodyComponent, MdbCardComponent, MdbCardFooterComponent, MdbCardHeaderComponent, MdbCardImageComponent, MdbCardTextComponent, MdbCardTitleComponent, MdbCheckboxChange, MdbErrorDirective, MdbIconComponent, MdbInput, MdbInputDirective, MdbSuccessDirective, MdbTableDirective, MdbTablePaginationComponent, MdbTableRowDirective, MdbTableScrollDirective, MdbTableService, MdbTableSortDirective, MdbValidateDirective, ModalBackdropComponent, ModalBackdropOptions, ModalContainerComponent, ModalDirective, ModalModule, ModalOptions, NavbarComponent, NavbarModule, NavbarService, NavlinksComponent, PopoverConfig, PopoverContainerComponent, PopoverDirective, PopoverModule, SlideComponent, StickyHeaderDirective, StickyHeaderModule, TableModule, TooltipConfig, TooltipContainerComponent, TooltipDirective, TooltipModule, WavesDirective, WavesModule, RADIO_CONTROL_VALUE_ACCESSOR as ɵa, CHECKBOX_CONTROL_VALUE_ACCESSOR as ɵb, CHECKBOX_VALUE_ACCESSOR as ɵc, CheckboxComponent as ɵd, ComponentLoaderFactory as ɵe, PositioningService as ɵf, OnChange$1 as ɵg };\n\n//# sourceMappingURL=angular-bootstrap-md.js.map","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TranslateModule } from \"@ngx-translate/core\";\nimport { MultiVendorRoutingModule } from './multi-vendor-routing.module';\nimport { MultiVendorComponent } from './multi-vendor.component';\n\n\n@NgModule({\n declarations: [\n MultiVendorComponent\n ],\n imports: [\n CommonModule,\n MultiVendorRoutingModule,\n TranslateModule,\n ],\n exports:[MultiVendorComponent,TranslateModule],\n})\nexport class MultiVendorModule { }\n","import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { SecSectionComponent } from './sec-section.component';\n\nconst routes: Routes = [{ path: '', component: SecSectionComponent }];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule]\n})\nexport class SecSectionRoutingModule { }\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TranslateModule } from \"@ngx-translate/core\";\nimport { FastLaunchSecRoutingModule } from './fast-launch-sec-routing.module';\nimport { FastLaunchSecComponent } from './fast-launch-sec.component';\n\n\n@NgModule({\n declarations: [\n FastLaunchSecComponent\n ],\n imports: [\n CommonModule,\n FastLaunchSecRoutingModule,\n TranslateModule,\n ],\n exports:[FastLaunchSecComponent,TranslateModule],\n})\nexport class FastLaunchSecModule { }\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TranslateModule } from \"@ngx-translate/core\";\nimport { ThirdSectionRoutingModule } from './third-section-routing.module';\nimport { ThirdSectionComponent } from './third-section.component';\n\n\n@NgModule({\n declarations: [\n ThirdSectionComponent\n ],\n imports: [\n CommonModule,\n ThirdSectionRoutingModule,\n TranslateModule\n ],\n exports:[ThirdSectionComponent,TranslateModule],\n})\nexport class ThirdSectionModule { }\n","import { element } from 'protractor';\n\nimport { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-fashon',\n templateUrl: './fashon.component.html',\n styleUrls: ['./fashon.component.scss']\n})\nexport class FashonComponent implements OnInit {\n theWord:any =localStorage.getItem('lang') == 'ar'? 'للازياء' : 'Fashion'\n fashion:any\n Electronics:any\n Health:any\n Beauty:any\n Furniture:any\n Grocery:any\n words:any \n wordLegnth:any\n constructor() { }\n\n ngOnInit(): void {\n this.fashion =localStorage.getItem('lang') == 'ar'? 'للازياء' : 'Fashion'\n this.Electronics = localStorage.getItem('lang') == 'ar'? 'للالكترونيات' : 'Electronics'\n this.Health=localStorage.getItem('lang') == 'ar'? 'للصحه' : 'Health'\n this.Beauty=localStorage.getItem('lang') == 'ar'? 'للجمال' : 'Beauty'\n this.Furniture=localStorage.getItem('lang') == 'ar'? 'للاثاث' : 'Furniture'\n this.Grocery=localStorage.getItem('lang') == 'ar'? 'للبقاله' : 'Grocery'\n let that = this\nvar index = 0;\n\nthis.words =[this.fashion,this.Electronics,this.Health,this.Beauty,this.Furniture,this.Grocery]\n// setTimeout(() => {\n// let element = document.getElementById('theword')\n// console.log(element)\n// }, 2000);\nsetInterval(function(){\n that.theWord = that.words[index]\n that.wordLegnth =that.words[index].length\n // element.style.width = that.wordLegnth + 'ch'\n // console.log(element)\n let element = document.getElementById('theword');\n if (element) element.style.width = that.wordLegnth + 'ch';\n // console.log(element)\n if(index == that.words.length - 1){\n index = 0\n }else{\n index++\n }\n}, 4000)\n }\n\n\n}\n","
    \n
    \n
    \n
    \n

    {{'Createyour' | translate}}

    \n

    \n

    {{theWord}}

    \n
    \n \n
    \n

    {{'storewithASMIO' | translate}}

    \n
    \n \n \n
    \n
    \n \"\"\n \"shape\"\n \"shape\"\n \"shape\"\n \"shape\"\n \"shape\"\n \"shape\"\n \"shape\"\n \"shape\"\n \n
    \n \n \n \n
    ","import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { FashonComponent } from './fashon.component';\n\nconst routes: Routes = [{ path: '', component: FashonComponent }];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule]\n})\nexport class FashonRoutingModule { }\n","import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { WhyAsmioSecComponent } from './why-asmio-sec.component';\n\nconst routes: Routes = [{ path: '', component: WhyAsmioSecComponent }];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule]\n})\nexport class WhyAsmioSecRoutingModule { }\n","import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { LandingPageComponent } from './landing-page.component';\n\nconst routes: Routes = [{ path: '', component: LandingPageComponent }];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule]\n})\nexport class LandingPageRoutingModule { }\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-landing-page',\n templateUrl: './landing-page.component.html',\n styleUrls: ['./landing-page.component.scss']\n})\nexport class LandingPageComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
    \n \n \n \n \n \n \n \n \n \n \n \n \n \n \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, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || from);\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, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-dashboard-sec',\n templateUrl: './dashboard-sec.component.html',\n styleUrls: ['./dashboard-sec.component.scss']\n})\nexport class DashboardSecComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
    \n
    \n \"Dashboard\n
    \n
    \n
    \n

    {{'Simplify' | translate}}

    \n
    \n

    \n

    {{'dashboard' | translate}}

    \n
    \n \n
    \n
    \n

    {{'Detailed' | translate}}

    \n \n \n
    \n\n
    \n","import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { AdvancedSecComponent } from './advanced-sec.component';\n\nconst routes: Routes = [{ path: '', component: AdvancedSecComponent }];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule]\n})\nexport class AdvancedSecRoutingModule { }\n","import { Component, OnInit } from \"@angular/core\";\nimport { NgbCarouselConfig } from \"@ng-bootstrap/ng-bootstrap\";\n@Component({\n selector: \"app-our-clients\",\n templateUrl: \"./our-clients.component.html\",\n styleUrls: [\"./our-clients.component.scss\"],\n providers: [NgbCarouselConfig],\n})\nexport class OurClientsComponent implements OnInit {\n images = [700, 533, 807, 124].map(\n (n) => `https://picsum.photos/id/${n}/900/500`\n );\n constructor(config: NgbCarouselConfig) {\n // customize default values of carousels used by this component tree\n config.interval = 10000;\n config.wrap = false;\n config.keyboard = false;\n config.pauseOnHover = false;\n }\n\n ngOnInit(): void {}\n}\n","
    \n \n \n
    \n

    {{ \"Our Clients\" | translate }}

    \n
    \n
    \n
    \n
    \n \n \n \n
    \n

    \n {{ \"Mahmoud El Far\" | translate }} ({{ \"soon\" | translate }})\n

    \n
    \n\n
    \n
    \n \n \n \n
    \n

    \n {{ \"Prosperity\" | translate }}\n

    \n
    \n\n
    \n
    \n \n \n \n
    \n

    \n {{ \"UTOPIA\" | translate }}\n

    \n
    \n
    \n
    \n
    \n\n
    \n
    \n
    \n \n \n \n
    \n

    \n {{ \"The Supply List\" | translate }}\n

    \n
    \n\n
    \n
    \n \n \n \n
    \n

    \n {{ \"Mimitta\" | translate }}\n

    \n
    \n
    \n
    \n\n
    \n \n \n
    \n \n \n \n
    \n
    \n
    \n

    \n {{ \"Mahmoud El Far\" | translate }} ({{ \"soon\" | translate }})\n

    \n
    \n
    \n\n \n
    \n \n \n \n
    \n
    \n
    \n

    \n {{ \"Prosperity\" | translate }}\n

    \n
    \n \n\n \n
    \n \n \n \n
    \n
    \n
    \n

    \n {{ \"UTOPIA\" | translate }}\n

    \n
    \n \n\n \n
    \n \n \n \n
    \n \n
    \n

    \n {{ \"The Supply List\" | translate }}\n

    \n
    \n
    \n\n \n
    \n \n \n \n
    \n \n \n
    \n

    \n {{ \"Mimitta\" | translate }}\n

    \n
    \n
    \n \n \n \n
    \n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TranslateModule } from \"@ngx-translate/core\";\nimport { AdvancedSecRoutingModule } from './advanced-sec-routing.module';\nimport { AdvancedSecComponent } from './advanced-sec.component';\n\n\n@NgModule({\n declarations: [\n AdvancedSecComponent\n ],\n imports: [\n CommonModule,\n AdvancedSecRoutingModule,\n TranslateModule,\n ],\n exports:[AdvancedSecComponent,TranslateModule],\n})\nexport class AdvancedSecModule { }\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-discount-sec',\n templateUrl: './discount-sec.component.html',\n styleUrls: ['./discount-sec.component.scss']\n})\nexport class DiscountSecComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
    \n
    \n \"\"\n
    \n
    \n
    \n
    \n

    \n

    {{'Discountcoupons' | translate}}

    \n
    \n \n
    \n

    {{'management' | translate}}

    \n
    \n

    {{'Apowerful' | translate}}

    \n \n \n
    \n\n
    \n","import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { MultiVendorComponent } from './multi-vendor.component';\n\nconst routes: Routes = [{ path: '', component: MultiVendorComponent }];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule]\n})\nexport class MultiVendorRoutingModule { }\n","import { NgModule } from '@angular/core';\nimport { RouterModule, Routes } from '@angular/router';\nimport { FastLaunchSecComponent } from './fast-launch-sec.component';\n\nconst routes: Routes = [{ path: '', component: FastLaunchSecComponent }];\n\n@NgModule({\n imports: [RouterModule.forChild(routes)],\n exports: [RouterModule]\n})\nexport class FastLaunchSecRoutingModule { }\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'app-payment-sec',\n templateUrl: './payment-sec.component.html',\n styleUrls: ['./payment-sec.component.scss']\n})\nexport class PaymentSecComponent implements OnInit {\n\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","
    \n
    \n
    \n
    \n

    \n

    {{'Payment' | translate}}

    \n
    \n \n

    {{'Options' | translate}}

    \n
    \n

    {{'ASMIOAccepts' | translate}}

    \n
    \n \n \n
    \n
    \n \"Discount\n
    \n
    \n"],"sourceRoot":"webpack:///"}