simpo-component-library 1.3.2 → 1.3.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/ecommerce/json/user-cart.json +35 -10
- package/esm2022/lib/ecommerce/sections/cart/cart.component.mjs +26 -9
- package/esm2022/lib/ecommerce/sections/product-desc/product-desc.component.mjs +3 -3
- package/esm2022/lib/ecommerce/sections/product-list/product-list.component.mjs +3 -3
- package/esm2022/lib/sections/navbar-section/navbar-section.component.mjs +2 -2
- package/esm2022/lib/services/cart.service.mjs +1 -1
- package/fesm2022/simpo-component-library.mjs +58 -19
- package/fesm2022/simpo-component-library.mjs.map +1 -1
- package/lib/directive/background-directive.d.ts +1 -1
- package/lib/directive/button-directive.directive.d.ts +1 -1
- package/lib/directive/color.directive.d.ts +1 -1
- package/lib/ecommerce/sections/cart/cart.component.d.ts +6 -2
- package/lib/sections/pricing-section/pricing-section.component.d.ts +1 -1
- package/package.json +1 -1
- package/simpo-component-library-1.3.3.tgz +0 -0
- package/simpo-component-library-1.3.4.tgz +0 -0
|
@@ -57,7 +57,7 @@ export class NavbarSectionComponent {
|
|
|
57
57
|
}
|
|
58
58
|
applyFilter(value, type) {
|
|
59
59
|
value = value[0]?.replace(" ", "_");
|
|
60
|
-
this.router.navigate(['/
|
|
60
|
+
this.router.navigate(['/list'], { queryParams: { [type]: value } });
|
|
61
61
|
}
|
|
62
62
|
onScroll(event) {
|
|
63
63
|
this.scrollValue = event.currentTarget.pageYOffset / 100;
|
|
@@ -194,4 +194,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
194
194
|
type: HostListener,
|
|
195
195
|
args: ['window:resize', ['$event']]
|
|
196
196
|
}] } });
|
|
197
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLXNlY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9zZWN0aW9ucy9uYXZiYXItc2VjdGlvbi9uYXZiYXItc2VjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL25hdmJhci1zZWN0aW9uL25hdmJhci1zZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMxRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN2RixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDakQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sd0VBQXdFLENBQUM7QUFHdEgsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDekUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDM0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDNUUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDekYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRDQUE0QyxD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d0JBQ3RCLGtCQUFrQjt3QkFDbEIsbUJBQW1CO3dCQUNuQix5QkFBeUI7d0JBQ3pCLGVBQWU7d0JBQ2Ysd0JBQXdCO3dCQUN4Qix3QkFBd0I7d0JBQ3hCLHFCQUFxQjt3QkFDckIsOEJBQThCO3dCQUM5QixtQkFBbUI7d0JBQ25CLGVBQWU7d0JBQ2YsMEJBQTBCO3dCQUMxQixjQUFjO3dCQUNkLHVCQUF1Qjt3QkFDdkIsZ0JBQWdCO3dCQUNoQixvQkFBb0I7d0JBQ3BCLGdDQUFnQzt3QkFDaEMsZ0NBQWdDO3dCQUNoQyxjQUFjLENBQUM7b0lBTVIsSUFBSTtzQkFBWixLQUFLO2dCQUNHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBQ0csS0FBSztzQkFBYixLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSztnQkFDdUIsY0FBYztzQkFBMUMsU0FBUzt1QkFBQyxnQkFBZ0I7Z0JBZ0MzQixRQUFRO3NCQURQLFlBQVk7dUJBQUMsZUFBZSxFQUFFLENBQUMsUUFBUSxDQUFDO2dCQW1CekMsYUFBYTtzQkFEWixZQUFZO3VCQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyVmlld0luaXQsIENvbXBvbmVudCwgSG9zdExpc3RlbmVyLCBJbnB1dCwgT25Jbml0LCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgSGVhZGVyQ29udGVudE1vZGVsLCBIZWFkZXJTZWN0aW9uTW9kZWwsIEhlYWRlclN0eWxlTW9kZWwgfSBmcm9tICcuL25hdmJhci1zZWN0aW9uLm1vZGVsJztcclxuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgU2ltcG9CdXR0b25Db21wb25lbnQgfSBmcm9tICcuLi8uLi9lbGVtZW50cy9zaW1wby1idXR0b24vc2ltcG8tYnV0dG9uLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNvY2lhSWNvbnNDb21wb25lbnQgfSBmcm9tICcuLi8uLi9lbGVtZW50cy9zb2NpYS1pY29ucy9zb2NpYS1pY29ucy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBNYXRJY29uIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XHJcbmltcG9ydCB7IE5hdmJhckJ1dHRvbkVsZW1lbnRDb21wb25lbnQgfSBmcm9tICcuLy4uLy4uL2VsZW1lbnRzL25hdmJhci1idXR0b24tZWxlbWVudC9uYXZiYXItYnV0dG9uLWVsZW1lbnQuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRXZlbnRzU2VydmljZSB9IGZyb20gJy4vLi4vLi4vc2VydmljZXMvZXZlbnRzLnNlcnZpY2UnO1xyXG5cclxuaW1wb3J0IHsgQW5pbWF0aW9uRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2FuaW1hdGlvbi1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBCYWNrZ3JvdW5kRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2JhY2tncm91bmQtZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQ29udGVudEZpdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb250ZW50LWZpdC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBCYW5uZXJDb250ZW50Rml0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2Jhbm5lci1jb250ZW50LWZpdC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBCb3JkZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYm9yZGVyLWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEJ1dHRvbkRpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9idXR0b24tZGlyZWN0aXZlLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IENvbHVtbkRpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb2x1bW4tZGlyZWN0aXZlLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IENvbnRhaW5lckZpdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb250YWluZXItZmlyLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IHNpbXBvQ29uZXRlbkFsaWdubWVudERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb250ZW50LWFsaWdubWVudC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBDb3JuZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29ybmVyLWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFNpbXBvRm9vdGVyTGF5b3V0RGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2Zvb3Rlci1sYXlvdXQtZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgSG92ZXJEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvaG92ZXItZWxlbWVudC1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBJbWFnZURpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9pbWFnZS1kaXJlY3RpdmUuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgT3ZlcmxheURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9vdmVybGF5LWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFBvc2l0aW9uTGF5b3V0RGlyZWN0aXZlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL3Bvc2l0aW9uLWxheW91dC1kaXJlY3RpdmUuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgVGV4dEJhY2tncm91bmREaXJlY3RpdmVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvdGV4dC1iYWNrZ3JvdW5kLWRpcmVjdGl2ZS5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBIb3ZlckVsZW1lbnRzQ29tcG9uZW50IH0gZnJvbSAnLi8uLi8uLi9jb21wb25lbnRzL2hvdmVyLWVsZW1lbnRzL2hvdmVyLWVsZW1lbnRzLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEFjdGlvbk1vZGVsLCBCYWNrZ3JvdW5kTW9kZWwgfSBmcm9tICcuLi8uLi9zdHlsZXMvc3R5bGUubW9kZWwnO1xyXG5pbXBvcnQgeyBDb2xvckRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9jb2xvci5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBTaW1wb1N0aWNreURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9zdGlja3ktZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlLCBSb3V0ZXIgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xyXG5pbXBvcnQgVXNlckNhcnQgZnJvbSAnLi4vLi4vZWNvbW1lcmNlL2pzb24vdXNlci1jYXJ0Lmpzb24nO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzaW1wby1uYXZiYXItc2VjdGlvbicsXHJcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcclxuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlLFNpbXBvQnV0dG9uQ29tcG9uZW50LFNvY2lhSWNvbnNDb21wb25lbnQsTWF0SWNvbixOYXZiYXJCdXR0b25FbGVtZW50Q29tcG9uZW50LFxyXG4gICAgRm9ybXNNb2R1bGUsXHJcbiAgICBIb3ZlckVsZW1lbnRzQ29tcG9uZW50LFxyXG4gICAgQW5pbWF0aW9uRGlyZWN0aXZlLFxyXG4gICAgQmFja2dyb3VuZERpcmVjdGl2ZSxcclxuICAgIEJhbm5lckNvbnRlbnRGaXREaXJlY3RpdmUsXHJcbiAgICBCb3JkZXJEaXJlY3RpdmUsXHJcbiAgICBCdXR0b25EaXJlY3RpdmVEaXJlY3RpdmUsXHJcbiAgICBDb2x1bW5EaXJlY3RpdmVEaXJlY3RpdmUsXHJcbiAgICBDb250YWluZXJGaXREaXJlY3RpdmUsXHJcbiAgICBzaW1wb0NvbmV0ZW5BbGlnbm1lbnREaXJlY3RpdmUsXHJcbiAgICBDb250ZW50Rml0RGlyZWN0aXZlLFxyXG4gICAgQ29ybmVyRGlyZWN0aXZlLFxyXG4gICAgU2ltcG9Gb290ZXJMYXlvdXREaXJlY3RpdmUsXHJcbiAgICBIb3ZlckRpcmVjdGl2ZSxcclxuICAgIEltYWdlRGlyZWN0aXZlRGlyZWN0aXZlLFxyXG4gICAgT3ZlcmxheURpcmVjdGl2ZSxcclxuICAgIFNpbXBvU3RpY2t5RGlyZWN0aXZlLFxyXG4gICAgUG9zaXRpb25MYXlvdXREaXJlY3RpdmVEaXJlY3RpdmUsXHJcbiAgICBUZXh0QmFja2dyb3VuZERpcmVjdGl2ZURpcmVjdGl2ZSxcclxuICAgIENvbG9yRGlyZWN0aXZlXSxcclxuICB0ZW1wbGF0ZVVybDogJy4vbmF2YmFyLXNlY3Rpb24uY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9uYXZiYXItc2VjdGlvbi5jb21wb25lbnQuY3NzJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgTmF2YmFyU2VjdGlvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdHtcclxuXHJcbiAgQElucHV0KCkgZGF0YSA/OiBIZWFkZXJTZWN0aW9uTW9kZWw7XHJcbiAgQElucHV0KCkgbmV4dENvbXBvbmVudDogYW55O1xyXG4gIEBJbnB1dCgpIGluZGV4PyA6IG51bWJlcjtcclxuICBASW5wdXQoKSBlZGl0PyA6IGJvb2xlYW4gPSBmYWxzZTtcclxuICBAVmlld0NoaWxkKFwiY2hpbGRDb250YWluZXJcIikgY2hpbGRDb250YWluZXI6IGFueTtcclxuICBwdWJsaWMgc2Nyb2xsVmFsdWU6IG51bWJlciA9IDA7XHJcbiAgY29udGVudCA/IDogSGVhZGVyQ29udGVudE1vZGVsO1xyXG4gIHN0eWxlID86IEhlYWRlclN0eWxlTW9kZWxcclxuICBhY3Rpb24/OiBBY3Rpb25Nb2RlbFxyXG4gIGNvbG9yID0gJyMwMDAwMDAnO1xyXG4gIHNlYXJjaFRleHQ6IHN0cmluZyA9IFwiXCI7XHJcbiAgXHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IF9ldmVudFNlcnZpY2UgOiBFdmVudHNTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSByb3V0ZXI6IFJvdXRlcixcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgYWN0aXZhdGVkUm91dGU6IEFjdGl2YXRlZFJvdXRlXHJcbiAgKXtcclxuICAgIHRoaXMuZ2V0U2NyZWVuU2l6ZSgpO1xyXG4gIH1cclxuICBzZWFyY2hQcm9kdWN0cygpIHtcclxuICAgIGlmICh0aGlzLnNlYXJjaFRleHQubGVuZ3RoID4gMilcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvbGlzdCddLCB7cXVlcnlQYXJhbXM6IHtzZWFyY2hUeHQ6IHRoaXMuc2VhcmNoVGV4dH19KTtcclxuICAgIGVsc2VcclxuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvJ10sIHtxdWVyeVBhcmFtczoge3NlYXJjaFR4dDogdGhpcy5zZWFyY2hUZXh0fX0pO1xyXG4gIH1cclxuICBnb1RvQWNjb3VudCgpIHtcclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL3Byb2ZpbGUnXSk7XHJcbiAgfVxyXG4gIGdvVG9DYXJ0KCl7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9jYXJ0J10pO1xyXG4gIH1cclxuICBhcHBseUZpbHRlcih2YWx1ZTogYW55LCB0eXBlOiBzdHJpbmcpIHtcclxuICAgIHZhbHVlID0gdmFsdWVbMF0/LnJlcGxhY2UoXCIgXCIsIFwiX1wiKTtcclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL3Byb2R1Y3RzJ10sIHtxdWVyeVBhcmFtczogeyB0eXBlOiB2YWx1ZSB9fSk7XHJcbiAgfVxyXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpzY3JvbGwnLCBbJyRldmVudCddKVxyXG4gIG9uU2Nyb2xsKGV2ZW50OiBhbnkpIHtcclxuICAgIHRoaXMuc2Nyb2xsVmFsdWUgPSBldmVudC5jdXJyZW50VGFyZ2V0LnBhZ2VZT2Zmc2V0IC8gMTAwO1xyXG4gIH1cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMuY29udGVudCA9IHRoaXMuZGF0YT8uY29udGVudDtcclxuICAgIHRoaXMuc3R5bGUgPSB0aGlzLmRhdGE/LnN0eWxlcztcclxuICAgIHRoaXMuYWN0aW9uID0gdGhpcy5kYXRhPy5hY3Rpb247XHJcbiAgICB0aGlzLmFjdGl2YXRlZFJvdXRlLnF1ZXJ5UGFyYW1zLnN1YnNjcmliZSgocVBhcmFtKT0+IHtcclxuICAgICAgdGhpcy5zZWFyY2hUZXh0ID0gcVBhcmFtW1wic2VhcmNoVHh0XCJdO1xyXG4gICAgfSlcclxuICAgIC8vIGlmICh0aGlzLnN0eWxlPy5iYWNrZ3JvdW5kICYmIHRoaXMubmV4dENvbXBvbmVudC5zdHlsZXMubWVyZ2UpIHtcclxuICAgIC8vICAgdGhpcy5zdHlsZS5iYWNrZ3JvdW5kLmNvbG9yID0gdGhpcy5uZXh0Q29tcG9uZW50LnN0eWxlcy5iYWNrZ3JvdW5kLmNvbG9yO1xyXG4gICAgLy8gICB0aGlzLnN0eWxlLmJhY2tncm91bmQuYWNjZW50Q29sb3IgPSB0aGlzLm5leHRDb21wb25lbnQuc3R5bGVzLmJhY2tncm91bmQuYWNjZW50Q29sb3I7XHJcbiAgICAvLyB9XHJcbiAgfVxyXG5cclxuICBzY3JlZW5XaWR0aDogbnVtYmVyID0gNDc1O1xyXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnLCBbJyRldmVudCddKVxyXG4gIGdldFNjcmVlblNpemUoZXZlbnQ/OiBudW1iZXIpIHtcclxuICAgIGlmICh0eXBlb2Ygd2luZG93ICE9PSAndW5kZWZpbmVkJykge1xyXG4gICAgICB0aGlzLnNjcmVlbldpZHRoID0gd2luZG93LmlubmVyV2lkdGg7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGdldCBnZXRQYXJlbnRIZWlnaHQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5jaGlsZENvbnRhaW5lcj8ubmF0aXZlRWxlbWVudD8ub2Zmc2V0SGVpZ2h0ID8/IDA7XHJcbiAgfVxyXG4gIGdldCBnZXREcm9wZG93bkxpbmtzKCkge1xyXG4gICAgaWYgKHRoaXMuY29udGVudD8uZWNvbUxpbmtzKVxyXG4gICAgICByZXR1cm4gT2JqZWN0LmtleXModGhpcy5jb250ZW50Py5lY29tTGlua3MpO1xyXG4gICAgcmV0dXJuIFtdO1xyXG4gIH1cclxuICBnZXQgaXNFY29tbWVyY2VXZWJzaXRlKCkge1xyXG4gICAgcmV0dXJuIHRoaXMuZ2V0RHJvcGRvd25MaW5rcy5sZW5ndGggPiAwO1xyXG4gIH1cclxuXHJcbiAgY2xvc2UoKXtcclxuICAgIGxldCBhID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoXCJuYXZiYXJOYXZBbHRNYXJrdXBcIik7XHJcbiAgICBpZighYSkgcmV0dXJuO1xyXG4gICAgLy8gYS5zdHlsZS5kaXNwbGF5ID0gXCJub25lXCJcclxuICAgIGEuY2xhc3NMaXN0LnJlbW92ZShcInNob3dcIik7XHJcbiAgICBhLmNsYXNzTGlzdC5hZGQoXCJjb2xsYXBzZVwiKVxyXG4gIH1cclxuXHJcbiAgc2hvd0VkaXRvcnMgOiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gIHNob3dFZGl0VGFicyhpc1Nob3c6Ym9vbGVhbil7XHJcbiAgICB0aGlzLnNob3dFZGl0b3JzID0gaXNTaG93O1xyXG4gIH1cclxuICBnb1RvSG9tZSgpIHtcclxuICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnJ10pO1xyXG4gIH1cclxuICBnZXQgaXNIZWFkZXJTdGlja3koKSB7XHJcbiAgICByZXR1cm4gdGhpcy5kYXRhPy5zdHlsZXM/LnN0aWNreTtcclxuICB9XHJcbiAgZ2V0IGJhY2tncm91bmRJbmZvKCkge1xyXG4gICAgbGV0IGJhY2tncm91bmQ6IEJhY2tncm91bmRNb2RlbCB8IHt9ID0ge307XHJcbiAgICBpZiAodGhpcy5zdHlsZSkge1xyXG4gICAgICBiYWNrZ3JvdW5kID0ge1xyXG4gICAgICAgIC4uLnRoaXMuc3R5bGUuYmFja2dyb3VuZCxcclxuICAgICAgICBzaG93SW1hZ2U6IGZhbHNlLFxyXG4gICAgICAgIGNvbG9yOiBcInRyYW5zcGFyZW50XCJcclxuICAgICAgfTtcclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLm5leHRDb21wb25lbnQ/LnN0eWxlcz8ubWVyZ2UgPyAodGhpcy5zY3JvbGxWYWx1ZSA+IDAgPyB7Li4udGhpcy5uZXh0Q29tcG9uZW50LnN0eWxlcy5iYWNrZ3JvdW5kLCBjb2xvcjogdGhpcy5zdHlsZT8uYmFja2dyb3VuZC5jb2xvcn0gOiB7Li4uYmFja2dyb3VuZH0pIDogey4uLnRoaXMuZGF0YT8uc3R5bGVzLmJhY2tncm91bmR9O1xyXG4gIH1cclxuICBnZXQgc2ltcG9Db2xvcigpIHtcclxuICAgIHJldHVybiB0aGlzLm5leHRDb21wb25lbnQ/LnN0eWxlcz8ubWVyZ2UgPyAodGhpcy5zY3JvbGxWYWx1ZSA+IDAgPyB0aGlzLnN0eWxlPy5iYWNrZ3JvdW5kLmNvbG9yIDogdGhpcy5uZXh0Q29tcG9uZW50LnN0eWxlcz8uYmFja2dyb3VuZD8uY29sb3IpIDogdGhpcy5zdHlsZT8uYmFja2dyb3VuZD8uY29sb3I7XHJcbiAgfVxyXG4gIGdldCBhY2NlbnRDb2xvcigpIHtcclxuICAgIHJldHVybiB0aGlzLm5leHRDb21wb25lbnQ/LnN0eWxlcz8ubWVyZ2UgPyAodGhpcy5zY3JvbGxWYWx1ZSA+IDAgPyB0aGlzLnN0eWxlPy5iYWNrZ3JvdW5kPy5hY2NlbnRDb2xvciA6IHRoaXMubmV4dENvbXBvbmVudC5zdHlsZXM/LmJhY2tncm91bmQ/LmFjY2VudENvbG9yKSA6IHRoaXMuc3R5bGU/LmJhY2tncm91bmQ/LmFjY2VudENvbG9yO1xyXG4gIH1cclxuICBnZXQgaXNUcmFuc3BhcmVudCgpIHtcclxuICAgIHJldHVybiB0aGlzLm5leHRDb21wb25lbnQ/LnN0eWxlcz8ubWVyZ2UgJiYgdGhpcy5zY3JvbGxWYWx1ZSA9PSAwO1xyXG4gIH1cclxuICByZWRpcmVjdFRvKGNvbnRlbnQ6IGFueSl7XHJcbiAgICB0aGlzLl9ldmVudFNlcnZpY2UuYnV0dG9uUmVkaXJlY3Rpb24uZW1pdCh7ZGF0YTogY29udGVudH0pO1xyXG4gIH1cclxuICBnZXQgaXNDb21wb25lbnRNZXJnZWQoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5uZXh0Q29tcG9uZW50Py5zdHlsZXM/Lm1lcmdlO1xyXG4gIH1cclxuICBlZGl0U2VjdGlvbigpe1xyXG4gICAgdGhpcy5fZXZlbnRTZXJ2aWNlLnRvZ2dsZUVkaXRvckV2ZW50LmVtaXQoZmFsc2UpO1xyXG4gICAgc2V0VGltZW91dCgoKT0+IHtcclxuICAgICAgdGhpcy5fZXZlbnRTZXJ2aWNlLmVkaXRTZWN0aW9uLmVtaXQoe2RhdGE6dGhpcy5kYXRhfSk7XHJcbiAgICB9LCAxMDApO1xyXG4gIH1cclxuXHJcbiAgZ2V0IGdldENhcnRJdGVtc0NvdW50KCk6IG51bWJlciB7XHJcbiAgICByZXR1cm4gVXNlckNhcnQ/Lm9yZGVyZWRJdGVtcz8ubGVuZ3RoO1xyXG4gIH1cclxuICBnZXRLZXlzKG9iamVjdDogYW55KTogc3RyaW5nW10ge1xyXG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKG9iamVjdCk7XHJcbiAgfVxyXG4gIGdldFZhbHVlcyhvYmplY3Q6IGFueSk6IHVua25vd25bXSB7XHJcbiAgICBjb25zdCBrZXlzOiB1bmtub3duW10gPSBbXTtcclxuICAgIG9iamVjdC5mb3JFYWNoKChrZXk6IGFueSk9PiBrZXlzLnB1c2goT2JqZWN0LnZhbHVlcyhrZXkpKSk7XHJcbiAgICByZXR1cm4gWy4uLm5ldyBTZXQoa2V5cyldO1xyXG4gIH1cclxufVxyXG4iLCI8ZGl2IFtpZF09XCJkYXRhPy5pZFwiIFtzdHlsZS5oZWlnaHQucHhdPVwiZ2V0UGFyZW50SGVpZ2h0XCIgW3NpbXBvQmFja2dyb3VuZF09XCJiYWNrZ3JvdW5kSW5mb1wiIGNsYXNzPVwidG90YWwtY29udGFpbmVyXCIgc2ltcG9Ib3ZlciAoaG92ZXJpbmcpPVwic2hvd0VkaXRUYWJzKCRldmVudClcIiAoY2xpY2spPVwiZWRpdFNlY3Rpb24oKVwiPlxyXG4gIDxkaXYgI21haW5Db250YWluZXIgY2xhc3M9XCJ3LTEwMFwiIHN0eWxlPVwiei1pbmRleDogMTAwO1wiIFtpZF09XCJkYXRhPy5pZFwiIFtzaW1wb092ZXJsYXldPVwic3R5bGU/LmJhY2tncm91bmRcIiBbc2Nyb2xsVmFsdWVdPVwiaXNDb21wb25lbnRNZXJnZWQgPyBzY3JvbGxWYWx1ZSA6IDBcIiBbc2ltcG9CYWNrZ3JvdW5kXT1cImJhY2tncm91bmRJbmZvXCIgW3NpbXBvU3RpY2t5XT1cImlzSGVhZGVyU3RpY2t5XCIgW25nQ2xhc3NdPVwieydlY29tU3R5bGUnOiBpc0Vjb21tZXJjZVdlYnNpdGV9XCI+XHJcbiAgICA8bmF2ICNjaGlsZENvbnRhaW5lciBjbGFzcz1cIm5hdmJhciBuYXZiYXItZXhwYW5kLWxnIGQtYmxvY2sgbWItMFwiIFtzaW1wb0Zvb3RlckxheW91dF09XCJzdHlsZT8ubGF5b3V0XCI+XHJcbiAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyLWZsdWlkIHBvc2l0aW9uLXJlbGF0aXZlIFwiPlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidy01MCBsZWZ0LWxvZ28tdGV4dCBkLWZsZXhcIiAoY2xpY2spPVwiZ29Ub0hvbWUoKVwiPlxyXG4gICAgICAgIDwhLS0gPGEgY2xhc3M9XCJuYXZiYXItYnJhbmRcIiBocmVmPVwiI1wiPnt7Y29udGVudD8uc2l0ZU5hbWU/LnZhbHVlfX08L2E+IC0tPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZ2FwLTMgZ2FwLWxnLTMgYWxpZ24taXRlbXMtbGctY2VudGVyXCIgKm5nSWY9XCIhY29udGVudD8ubG9nbz8uaXNJbWFnZSB8fCAhY29udGVudD8ubG9nbz8uaW1hZ2U/LnVybFwiPlxyXG4gICAgICAgICAgPGRpdiAqbmdJZj1cImNvbnRlbnQ/LmxvZ28/LnRleHQ/LmlzSWNvbiAmJiBjb250ZW50Py5sb2dvPy50ZXh0Py51cmxcIj5cclxuICAgICAgICAgICAgPGltZyBbc3JjXT1cImNvbnRlbnQ/LmxvZ28/LnRleHQ/LnVybFwiIGFsdD1cImxvZ29cIiBbd2lkdGhdPVwiY29udGVudD8ubG9nbz8uc2l6ZVwiXHJcbiAgICAgICAgICAgIGxvYWRpbmc9XCJsYXp5XCI+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkaW5nLXNtYWxsXCIgKm5nSWY9XCJjb250ZW50Py5sb2dvPy50ZXh0Py5pc1RleHRcIiBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCI+XHJcbiAgICAgICAgICAgIDxiIFtuZ1N0eWxlXT1cInsnZm9udC1mYW1pbHknOiBjb250ZW50Py5sb2dvPy50ZXh0Py5mb250RmFtaWx5fVwiPnt7Y29udGVudD8uc2l0ZU5hbWU/LnZhbHVlfX08L2I+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGdhcC0zIGdhcC1sZy0zIGFsaWduLWl0ZW1zLWxnLWNlbnRlclwiXHJcbiAgICAgICAgICAqbmdJZj1cImNvbnRlbnQ/LmxvZ28/LmlzSW1hZ2UgJiYgY29udGVudD8ubG9nbz8uaW1hZ2U/LnVybFwiPlxyXG4gICAgICAgICAgPGltZyBbc3JjXT1cImNvbnRlbnQ/LmxvZ28/LmltYWdlPy51cmxcIiBhbHQ9XCJsb2dvXCIgW3dpZHRoXT1cImNvbnRlbnQ/LmxvZ28/LnNpemVcIlxyXG4gICAgICAgICAgbG9hZGluZz1cImxhenlcIj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgPGRpdiBjbGFzcz1cIm5hdmJhci1jb2xsYXBzZSBmcy02IHBvc2l0aW9uLXJlbGF0aXZlIGQtZmxleFwiIHN0eWxlPVwibWFyZ2luLXRvcDogNXB4OyBtYXJnaW4tbGVmdDogMjVweDtcIiBbc2ltcG9Db2xvcl09XCJzaW1wb0NvbG9yXCIgKm5nSWY9XCJpc0Vjb21tZXJjZVdlYnNpdGUgJiYgc2NyZWVuV2lkdGggPiA3NjhcIj5cclxuICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGxpbmsgb2YgZ2V0RHJvcGRvd25MaW5rczsgbGV0IGlkeCA9IGluZGV4XCI+XHJcbiAgICAgICAgICAgIDxhIGNsYXNzPVwibmF2LWxpbmsgZHJvcGRvd24tdG9nZ2xlIG14LTJcIiBocmVmPVwiI1wiIFtpZF09XCInbmF2YmFyRHJvcGRvd25NZW51TGlua18nICsgaWR4XCIgcm9sZT1cImJ1dHRvblwiIGRhdGEtYnMtdG9nZ2xlPVwiZHJvcGRvd25cIiBhcmlhLWV4cGFuZGVkPVwiZmFsc2VcIj57eyBsaW5rIHwgdXBwZXJjYXNlIH19PC9hPlxyXG4gICAgICAgICAgICA8dWwgY2xhc3M9XCJkcm9wZG93bi1tZW51IGZzLTYgcG9zaXRpb24tYWJzb2x1dGVcIiBbYXR0ci5hcmlhLWxhYmVsbGVkYnldPVwiJ25hdmJhckRyb3Bkb3duTWVudUxpbmtfJytpZHhcIj5cclxuICAgICAgICAgICAgICA8bGkgKm5nRm9yPVwibGV0IHZhbHVlIG9mIGdldFZhbHVlcyhjb250ZW50Py5lY29tTGlua3M/LltsaW5rXSlcIj48YSBjbGFzcz1cImRyb3Bkb3duLWl0ZW1cIiAoY2xpY2spPVwiYXBwbHlGaWx0ZXIodmFsdWUsIGxpbmspXCI+e3t2YWx1ZX19PC9hPjwvbGk+XHJcbiAgICAgICAgICAgIDwvdWw+XHJcbiAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8ZGl2IGNsYXNzPVwidy01MCByaWdodC1idG4gZC1mbGV4IGp1c3RpZnktY29udGVudC1lbmRcIj5cclxuICAgICAgICA8ZGl2ICpuZ0lmPVwic2NyZWVuV2lkdGggPD0gNzY4ICYmIGlzRWNvbW1lcmNlV2Vic2l0ZVwiIGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNvbnRlbnQtYXJvdW5kXCI+XHJcbiAgICAgICAgICA8aSBjbGFzcz1cImZhIGZhLXNlYXJjaCBteC0yXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPlxyXG4gICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwibXgtMlwiPmFkZF9zaG9wcGluZ19jYXJ0PC9tYXQtaWNvbj5cclxuICAgICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cIm14LTJcIj5wZXJzb25fb3V0bGluZTwvbWF0LWljb24+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGJ1dHRvbiBjbGFzcz1cIm5hdmJhci10b2dnbGVyIG1lbnUtaWNvblwiIFtzaW1wb0NvbG9yXT1cInNpbXBvQ29sb3JcIiBbaWRdPVwiZGF0YT8uaWRcIiB0eXBlPVwiYnV0dG9uXCIgZGF0YS1icy10b2dnbGU9XCJjb2xsYXBzZVwiIGRhdGEtYnMtdGFyZ2V0PVwiI25hdmJhck5hdkFsdE1hcmt1cFwiICpuZ0lmPVwic2NyZWVuV2lkdGggPCA3NjlcIlxyXG4gICAgICAgICAgYXJpYS1jb250cm9scz1cIm5hdmJhck5hdkFsdE1hcmt1cFwiIGFyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiIGFyaWEtbGFiZWw9XCJUb2dnbGUgbmF2aWdhdGlvblwiPlxyXG4gICAgICAgICAgPGhyPlxyXG4gICAgICAgICAgPGhyPlxyXG4gICAgICAgICAgPGhyPlxyXG4gICAgICAgIDwvYnV0dG9uPlxyXG4gICAgICA8L2Rpdj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIiFpc0Vjb21tZXJjZVdlYnNpdGVcIj5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwiY29sbGFwc2UgbmF2YmFyLWNvbGxhcHNlXCIgKm5nSWY9XCJzY3JlZW5XaWR0aCA+IDc2OFwiPlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cIm5hdmJhci1uYXYgYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGdhcC0zXCIgc3R5bGU9XCJtYXJnaW4tcmlnaHQ6IDEwcHg7XCI+XHJcbiAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBjb250ZW50Py5uYXZiYXJCdXR0b25zXCI+XHJcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbS5zaG93SGVhZGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxzaW1wby1uYXZiYXItYnV0dG9uLWVsZW1lbnQgW2J1dHRvbkRhdGFdPVwiaXRlbVwiIFtzZWxlY3RlZFN0eWxlXT1cInN0eWxlPy5uYXZpZ2F0aW9uU3R5bGVcIiBbYnV0dG9uU3R5bGVdPVwic3R5bGU/Lm5hdmJhckJ1dHRvblN0eWxlXCJcclxuICAgICAgICAgICAgICAgICAgW2JnQ29sb3JdPVwic2ltcG9Db2xvclwiIFtzZWN0aW9uSWRdPVwiZGF0YT8uaWRcIj48L3NpbXBvLW5hdmJhci1idXR0b24tZWxlbWVudD5cclxuICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleFwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtc3RhcnQgYWxpZ24taXRlbXMtbGctY2VudGVyIGZsZXgtY29sdW1uIGZsZXgtbGctcm93IGdhcC1sZy0wIGdhcC0zXCJcclxuICAgICAgICAgICAgICAgIFtuZ0NsYXNzXT1cImNvbnRlbnQ/LnNvY2lhbExpbmtzPy5kaXNwbGF5ID8gJ2p1c3RpZnktY29udGVudC1iZXR3ZWVuJyA6ICdqdXN0aWZ5LWNvbnRlbnQtZW5kJ1wiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBtdC0wXCIgKm5nSWY9XCJjb250ZW50Py5zb2NpYWxMaW5rcz8uZGlzcGxheVwiPlxyXG4gICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGNvbnRlbnQ/LnNvY2lhbExpbmtzPy5jaGFubmVsc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgc3R5bGU9XCJwb3NpdGlvbjogcmVsYXRpdmU7bWFyZ2luLXJpZ2h0OiAxMHB4O1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHNpbXBvLXNvY2lhLWljb25zIFtzb2NpYWxJY29uRGF0YV09XCJpdGVtXCIgW2NvbG9yXT1cInNpbXBvQ29sb3JcIiBbc2VjdGlvbklkXT1cImRhdGE/LmlkXCI+PC9zaW1wby1zb2NpYS1pY29ucz5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXhcIj5cclxuICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiYWN0aW9uPy5kaXNwbGF5XCIgY2xhc3M9XCJidXR0b24tZGlzcGxheSBtdC0wXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2ICpuZ0Zvcj1cImxldCBidXR0b24gb2YgYWN0aW9uPy5idXR0b25zXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxidXR0b24gY2xhc3M9XCJidXR0b25cIiAoY2xpY2spPVwicmVkaXJlY3RUbyhidXR0b24/LmNvbnRlbnQpXCIgc2ltcG9CdXR0b25EaXJlY3RpdmUgW3Njcm9sbFZhbHVlXT1cInNjcm9sbFZhbHVlXCIgW2lkXT1cImRhdGE/LmlkKyhidXR0b24/LmlkIHx8ICcnKVwiIFtidXR0b25TdHlsZV09XCJidXR0b24uc3R5bGVzXCIgW2NvbG9yXT1cImFjY2VudENvbG9yXCI+e3tidXR0b24/LmNvbnRlbnQ/LmxhYmVsfX08L2J1dHRvbj5cclxuICAgICAgICAgICAgICAgICAgPCEtLSA8YXBwLWJ1dHRvbi1lbGVtZW50IFtidXR0b25Db250ZW50XT1cImJ1dHRvbi5jb250ZW50XCIgW2J1dHRvblN0eWxlXT1cImJ1dHRvbi5zdHlsZXNcIiBbc2VjdGlvbklkXT1cImRhdGE/LmlkXCJcclxuICAgICAgICAgICAgICAgICAgICBbY29sb3JdPVwiZGF0YT8uc3R5bGVzPy5iYWNrZ3JvdW5kPy5hY2NlbnRDb2xvclwiPjwvYXBwLWJ1dHRvbi1lbGVtZW50PiAtLT5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2xsYXBzZSBuYXZiYXItY29sbGFwc2VcIiBpZD1cIm5hdmJhck5hdkFsdE1hcmt1cFwiICpuZ0lmPVwic2NyZWVuV2lkdGggPD0gNzY4XCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiaW5uZXItaGVpZ2h0IHAtNFwiPlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibmFiLWJhci1tb2JpbGUgZmxleC1jb2x1bW4gZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGFsaWduLWl0ZW1zLWNlbnRlclwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gdy0xMDBcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJ0aXRsZS1yb3dcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGdhcC0zIGFsaWduLWl0ZW1zLWNlbnRlclwiICpuZ0lmPVwiIWNvbnRlbnQ/LmxvZ28/LmlzSW1hZ2UgfHwgIWNvbnRlbnQ/LmxvZ28/LmltYWdlPy51cmxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJjb250ZW50Py5sb2dvPy50ZXh0Py5pc0ljb24gJiYgY29udGVudD8ubG9nbz8udGV4dD8udXJsXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgW3NyY109XCJjb250ZW50Py5sb2dvPy50ZXh0Py51cmxcIiBhbHQ9XCJsb2dvXCIgW3dpZHRoXT1cImNvbnRlbnQ/LmxvZ28/LnNpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBsb2FkaW5nPVwibGF6eVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiaGVhZGluZy1zbWFsbFwiICpuZ0lmPVwiY29udGVudD8ubG9nbz8udGV4dD8uaXNUZXh0XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIDxiIFtuZ1N0eWxlXT1cInsnZm9udC1mYW1pbHknOiBjb250ZW50Py5sb2dvPy50ZXh0Py5mb250RmFtaWx5fVwiPnt7Y29udGVudD8uc2l0ZU5hbWU/LnZhbHVlfX08L2I+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGdhcC0zIGFsaWduLWl0ZW1zLWNlbnRlclwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAqbmdJZj1cImNvbnRlbnQ/LmxvZ28/LmlzSW1hZ2VcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxpbWcgW3NyY109XCJjb250ZW50Py5sb2dvPy5pbWFnZT8udXJsXCIgYWx0PVwibG9nb1wiIFt3aWR0aF09XCJjb250ZW50Py5sb2dvPy5zaXplXCJcclxuICAgICAgICAgICAgICAgICAgICAgIGxvYWRpbmc9XCJsYXp5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcblxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNsb3NlLWJveCBjdXJzb3ItcG9pbnRlciBkLWZsZXhcIiAoY2xpY2spPVwiY2xvc2UoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxtYXQtaWNvbj5jbG9zZTwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGp1c3RpZnktY29udGVudC1iZXR3ZWVuIGFsaWduLWl0ZW1zLWNlbnRlciBtdC01XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gZ2FwLTQgdy0xMDBcIj5cclxuICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGNvbnRlbnQ/Lm5hdmJhckJ1dHRvbnNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxzaW1wby1uYXZiYXItYnV0dG9uLWVsZW1lbnQgW2J1dHRvbkRhdGFdPVwiaXRlbVwiIFtzZWxlY3RlZFN0eWxlXT1cInN0eWxlPy5uYXZpZ2F0aW9uU3R5bGVcIiBbYnV0dG9uU3R5bGVdPVwic3R5bGU/Lm5hdmJhckJ1dHRvblN0eWxlXCI+PC9zaW1wby1uYXZiYXItYnV0dG9uLWVsZW1lbnQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtblwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleFwiPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLXN0YXJ0IGFsaWduLWl0ZW1zLWxnLWNlbnRlciBmbGV4LWNvbHVtbiBmbGV4LWxnLXJvdyBnYXAtbGctMCBnYXAtM1wiXHJcbiAgICAgICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiY29udGVudD8uc29jaWFsTGlua3M/LmRpc3BsYXkgPyAnanVzdGlmeS1jb250ZW50LWJldHdlZW4nIDogJ2p1c3RpZnktY29udGVudC1lbmQnXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBtdC0wXCIgKm5nSWY9XCJjb250ZW50Py5zb2NpYWxMaW5rcz8uZGlzcGxheVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgaXRlbSBvZiBjb250ZW50Py5zb2NpYWxMaW5rcz8uY2hhbm5lbHNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBzdHlsZT1cInBvc2l0aW9uOiByZWxhdGl2ZTttYXJnaW4tcmlnaHQ6IDEwcHg7XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgPHNpbXBvLXNvY2lhLWljb25zIFtzb2NpYWxJY29uRGF0YV09XCJpdGVtXCIgW2NvbG9yXT1cInNpbXBvQ29sb3JcIiBbc2VjdGlvbklkXT1cImRhdGE/LmlkXCI+PC9zaW1wby1zb2NpYS1pY29ucz5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggbXQtNFwiPlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2ICpuZ0lmPVwiYWN0aW9uPy5kaXNwbGF5XCIgY2xhc3M9XCJidXR0b24tZGlzcGxheVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGJ1dHRvbiBvZiBhY3Rpb24/LmJ1dHRvbnNcIj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxhcHAtYnV0dG9uLWVsZW1lbnQgW2J1dHRvbkNvbnRlbnRdPVwiYnV0dG9uLmNvbnRlbnRcIiBbYnV0dG9uU3R5bGVdPVwiYnV0dG9uLnN0eWxlc1wiIFtzZWN0aW9uSWRdPVwiZGF0YT8uaWRcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgICBbY29sb3JdPVwiZGF0YT8uc3R5bGVzPy5iYWNrZ3JvdW5kPy5hY2NlbnRDb2xvclwiPjwvYXBwLWJ1dHRvbi1lbGVtZW50PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImlzRWNvbW1lcmNlV2Vic2l0ZVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2xsYXBzZSBuYXZiYXItY29sbGFwc2UgcG9zaXRpb24tYWJzb2x1dGUgcHItMFwiIHN0eWxlPVwicmlnaHQ6IDBweDtcIiAqbmdJZj1cInNjcmVlbldpZHRoID4gNzY4XCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyLWZsdWlkIGp1c3RpZnktY29udGVudC1iZXR3ZWVuIHByLTAgZC1mbGV4XCIgc3R5bGU9XCJtYXgtd2lkdGg6IDUwdnc7XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1ncm91cFwiPlxyXG4gICAgICAgICAgICAgIDxpIGNsYXNzPVwiZmEgZmEtc2VhcmNoXCIgYXJpYS1oaWRkZW49XCJ0cnVlXCI+PC9pPlxyXG4gICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgcGxhY2Vob2xkZXI9XCJTZWFyY2ggUHJvZHVjdC4uXCIgYXJpYS1sYWJlbD1cIlNlYXJjaCBQcm9kdWN0XCIgWyhuZ01vZGVsKV09XCJzZWFyY2hUZXh0XCIgKG5nTW9kZWxDaGFuZ2UpPVwic2VhcmNoUHJvZHVjdHMoKVwiPlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBhbGlnbi1pdGVtcy1jZW50ZXIgbXgtMyBwb3NpdGlvbi1yZWxhdGl2ZVwiIHN0eWxlPVwid2lkdGg6IDYwcHg7IGN1cnNvcjogcG9pbnRlcjtcIiAoY2xpY2spPVwiZ29Ub0NhcnQoKVwiPlxyXG4gICAgICAgICAgICAgIDxtYXQtaWNvbj5hZGRfc2hvcHBpbmdfY2FydDwvbWF0LWljb24+XHJcbiAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJ0ZXh0LWRhcmsgZnctbm9ybWFsIGZzLTZcIj5CYWc8L3NwYW4+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBvc2l0aW9uLWFic29sdXRlIGNhcnRJdGVtQ291bnRcIiAqbmdJZj1cImdldENhcnRJdGVtc0NvdW50XCI+e3tnZXRDYXJ0SXRlbXNDb3VudH19PC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGFsaWduLWl0ZW1zLWNlbnRlclwiIHN0eWxlPVwid2lkdGg6IDYwcHg7IG1hcmdpbi1sZWZ0OiAtMTBweDsgY3Vyc29yOiBwb2ludGVyO1wiIChjbGljayk9XCJnb1RvQWNjb3VudCgpXCI+XHJcbiAgICAgICAgICAgICAgPG1hdC1pY29uPnBlcnNvbl9vdXRsaW5lPC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGFyayBmdy1ub3JtYWwgZnMtNlwiPkFjY291bnQ8L3NwYW4+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgPC9kaXY+XHJcbiAgPC9uYXY+XHJcbiAgPC9kaXY+XHJcbiAgPGRpdiBbbmdDbGFzc109XCJ7J2hvdmVyX2VmZmVjdCc6IGVkaXR9XCIgKm5nSWY9XCJzaG93RWRpdG9yc1wiPlxyXG4gICAgPHNpbXBvLWhvdmVyLWVsZW1lbnRzIFtkYXRhXT1cImRhdGFcIiBbaW5kZXhdPVwiaW5kZXhcIiBbZWRpdE9wdGlvbnNdPVwiZWRpdFwiPjwvc2ltcG8taG92ZXItZWxlbWVudHM+XHJcbjwvZGl2PlxyXG48L2Rpdj5cclxuIl19
|
|
197
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2YmFyLXNlY3Rpb24uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9zZWN0aW9ucy9uYXZiYXItc2VjdGlvbi9uYXZiYXItc2VjdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9zaW1wby11aS9zcmMvbGliL3NlY3Rpb25zL25hdmJhci1zZWN0aW9uL25hdmJhci1zZWN0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBaUIsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpHLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMxRixPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN2RixPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDakQsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sd0VBQXdFLENBQUM7QUFHdEgsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDekUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDM0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDNUUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDekYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRDQUE0QyxDQUFDO0FBQ3RGLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDRDQUE0QyxD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Q1gsc0JBQXNCO3dCQUN0QixrQkFBa0I7d0JBQ2xCLG1CQUFtQjt3QkFDbkIseUJBQXlCO3dCQUN6QixlQUFlO3dCQUNmLHdCQUF3Qjt3QkFDeEIsd0JBQXdCO3dCQUN4QixxQkFBcUI7d0JBQ3JCLDhCQUE4Qjt3QkFDOUIsbUJBQW1CO3dCQUNuQixlQUFlO3dCQUNmLDBCQUEwQjt3QkFDMUIsY0FBYzt3QkFDZCx1QkFBdUI7d0JBQ3ZCLGdCQUFnQjt3QkFDaEIsb0JBQW9CO3dCQUNwQixnQ0FBZ0M7d0JBQ2hDLGdDQUFnQzt3QkFDaEMsY0FBYyxDQUFDO29JQU1SLElBQUk7c0JBQVosS0FBSztnQkFDRyxhQUFhO3NCQUFyQixLQUFLO2dCQUNHLEtBQUs7c0JBQWIsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUs7Z0JBQ3VCLGNBQWM7c0JBQTFDLFNBQVM7dUJBQUMsZ0JBQWdCO2dCQWdDM0IsUUFBUTtzQkFEUCxZQUFZO3VCQUFDLGVBQWUsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkFtQnpDLGFBQWE7c0JBRFosWUFBWTt1QkFBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEhvc3RMaXN0ZW5lciwgSW5wdXQsIE9uSW5pdCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEhlYWRlckNvbnRlbnRNb2RlbCwgSGVhZGVyU2VjdGlvbk1vZGVsLCBIZWFkZXJTdHlsZU1vZGVsIH0gZnJvbSAnLi9uYXZiYXItc2VjdGlvbi5tb2RlbCc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IFNpbXBvQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZWxlbWVudHMvc2ltcG8tYnV0dG9uL3NpbXBvLWJ1dHRvbi5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTb2NpYUljb25zQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vZWxlbWVudHMvc29jaWEtaWNvbnMvc29jaWEtaWNvbnMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTWF0SWNvbiB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2ljb24nO1xyXG5pbXBvcnQgeyBOYXZiYXJCdXR0b25FbGVtZW50Q29tcG9uZW50IH0gZnJvbSAnLi8uLi8uLi9lbGVtZW50cy9uYXZiYXItYnV0dG9uLWVsZW1lbnQvbmF2YmFyLWJ1dHRvbi1lbGVtZW50LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEV2ZW50c1NlcnZpY2UgfSBmcm9tICcuLy4uLy4uL3NlcnZpY2VzL2V2ZW50cy5zZXJ2aWNlJztcclxuXHJcbmltcG9ydCB7IEFuaW1hdGlvbkRpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9hbmltYXRpb24tZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQmFja2dyb3VuZERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9iYWNrZ3JvdW5kLWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IENvbnRlbnRGaXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29udGVudC1maXQtZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQmFubmVyQ29udGVudEZpdERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9iYW5uZXItY29udGVudC1maXQtZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQm9yZGVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2JvcmRlci1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBCdXR0b25EaXJlY3RpdmVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvYnV0dG9uLWRpcmVjdGl2ZS5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBDb2x1bW5EaXJlY3RpdmVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29sdW1uLWRpcmVjdGl2ZS5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBDb250YWluZXJGaXREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29udGFpbmVyLWZpci5kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBzaW1wb0NvbmV0ZW5BbGlnbm1lbnREaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29udGVudC1hbGlnbm1lbnQtZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgQ29ybmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2Nvcm5lci1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBTaW1wb0Zvb3RlckxheW91dERpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9mb290ZXItbGF5b3V0LWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEhvdmVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL2hvdmVyLWVsZW1lbnQtZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgSW1hZ2VEaXJlY3RpdmVEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvaW1hZ2UtZGlyZWN0aXZlLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IE92ZXJsYXlEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvb3ZlcmxheS1kaXJlY3RpdmUnO1xyXG5pbXBvcnQgeyBQb3NpdGlvbkxheW91dERpcmVjdGl2ZURpcmVjdGl2ZSB9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZS9wb3NpdGlvbi1sYXlvdXQtZGlyZWN0aXZlLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFRleHRCYWNrZ3JvdW5kRGlyZWN0aXZlRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlL3RleHQtYmFja2dyb3VuZC1kaXJlY3RpdmUuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgSG92ZXJFbGVtZW50c0NvbXBvbmVudCB9IGZyb20gJy4vLi4vLi4vY29tcG9uZW50cy9ob3Zlci1lbGVtZW50cy9ob3Zlci1lbGVtZW50cy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBBY3Rpb25Nb2RlbCwgQmFja2dyb3VuZE1vZGVsIH0gZnJvbSAnLi4vLi4vc3R5bGVzL3N0eWxlLm1vZGVsJztcclxuaW1wb3J0IHsgQ29sb3JEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvY29sb3IuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgU2ltcG9TdGlja3lEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmUvc3RpY2t5LWRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xyXG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IFVzZXJDYXJ0IGZyb20gJy4uLy4uL2Vjb21tZXJjZS9qc29uL3VzZXItY2FydC5qc29uJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2ltcG8tbmF2YmFyLXNlY3Rpb24nLFxyXG4gIHN0YW5kYWxvbmU6IHRydWUsXHJcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSxTaW1wb0J1dHRvbkNvbXBvbmVudCxTb2NpYUljb25zQ29tcG9uZW50LE1hdEljb24sTmF2YmFyQnV0dG9uRWxlbWVudENvbXBvbmVudCxcclxuICAgIEZvcm1zTW9kdWxlLFxyXG4gICAgSG92ZXJFbGVtZW50c0NvbXBvbmVudCxcclxuICAgIEFuaW1hdGlvbkRpcmVjdGl2ZSxcclxuICAgIEJhY2tncm91bmREaXJlY3RpdmUsXHJcbiAgICBCYW5uZXJDb250ZW50Rml0RGlyZWN0aXZlLFxyXG4gICAgQm9yZGVyRGlyZWN0aXZlLFxyXG4gICAgQnV0dG9uRGlyZWN0aXZlRGlyZWN0aXZlLFxyXG4gICAgQ29sdW1uRGlyZWN0aXZlRGlyZWN0aXZlLFxyXG4gICAgQ29udGFpbmVyRml0RGlyZWN0aXZlLFxyXG4gICAgc2ltcG9Db25ldGVuQWxpZ25tZW50RGlyZWN0aXZlLFxyXG4gICAgQ29udGVudEZpdERpcmVjdGl2ZSxcclxuICAgIENvcm5lckRpcmVjdGl2ZSxcclxuICAgIFNpbXBvRm9vdGVyTGF5b3V0RGlyZWN0aXZlLFxyXG4gICAgSG92ZXJEaXJlY3RpdmUsXHJcbiAgICBJbWFnZURpcmVjdGl2ZURpcmVjdGl2ZSxcclxuICAgIE92ZXJsYXlEaXJlY3RpdmUsXHJcbiAgICBTaW1wb1N0aWNreURpcmVjdGl2ZSxcclxuICAgIFBvc2l0aW9uTGF5b3V0RGlyZWN0aXZlRGlyZWN0aXZlLFxyXG4gICAgVGV4dEJhY2tncm91bmREaXJlY3RpdmVEaXJlY3RpdmUsXHJcbiAgICBDb2xvckRpcmVjdGl2ZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL25hdmJhci1zZWN0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybDogJy4vbmF2YmFyLXNlY3Rpb24uY29tcG9uZW50LmNzcydcclxufSlcclxuZXhwb3J0IGNsYXNzIE5hdmJhclNlY3Rpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXR7XHJcblxyXG4gIEBJbnB1dCgpIGRhdGEgPzogSGVhZGVyU2VjdGlvbk1vZGVsO1xyXG4gIEBJbnB1dCgpIG5leHRDb21wb25lbnQ6IGFueTtcclxuICBASW5wdXQoKSBpbmRleD8gOiBudW1iZXI7XHJcbiAgQElucHV0KCkgZWRpdD8gOiBib29sZWFuID0gZmFsc2U7XHJcbiAgQFZpZXdDaGlsZChcImNoaWxkQ29udGFpbmVyXCIpIGNoaWxkQ29udGFpbmVyOiBhbnk7XHJcbiAgcHVibGljIHNjcm9sbFZhbHVlOiBudW1iZXIgPSAwO1xyXG4gIGNvbnRlbnQgPyA6IEhlYWRlckNvbnRlbnRNb2RlbDtcclxuICBzdHlsZSA/OiBIZWFkZXJTdHlsZU1vZGVsXHJcbiAgYWN0aW9uPzogQWN0aW9uTW9kZWxcclxuICBjb2xvciA9ICcjMDAwMDAwJztcclxuICBzZWFyY2hUZXh0OiBzdHJpbmcgPSBcIlwiO1xyXG4gIFxyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICAgcHJpdmF0ZSByZWFkb25seSBfZXZlbnRTZXJ2aWNlIDogRXZlbnRzU2VydmljZSxcclxuICAgIHByaXZhdGUgcmVhZG9ubHkgcm91dGVyOiBSb3V0ZXIsXHJcbiAgICBwcml2YXRlIHJlYWRvbmx5IGFjdGl2YXRlZFJvdXRlOiBBY3RpdmF0ZWRSb3V0ZVxyXG4gICl7XHJcbiAgICB0aGlzLmdldFNjcmVlblNpemUoKTtcclxuICB9XHJcbiAgc2VhcmNoUHJvZHVjdHMoKSB7XHJcbiAgICBpZiAodGhpcy5zZWFyY2hUZXh0Lmxlbmd0aCA+IDIpXHJcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnL2xpc3QnXSwge3F1ZXJ5UGFyYW1zOiB7c2VhcmNoVHh0OiB0aGlzLnNlYXJjaFRleHR9fSk7XHJcbiAgICBlbHNlXHJcbiAgICAgIHRoaXMucm91dGVyLm5hdmlnYXRlKFsnLyddLCB7cXVlcnlQYXJhbXM6IHtzZWFyY2hUeHQ6IHRoaXMuc2VhcmNoVGV4dH19KTtcclxuICB9XHJcbiAgZ29Ub0FjY291bnQoKSB7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9wcm9maWxlJ10pO1xyXG4gIH1cclxuICBnb1RvQ2FydCgpe1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycvY2FydCddKTtcclxuICB9XHJcbiAgYXBwbHlGaWx0ZXIodmFsdWU6IGFueSwgdHlwZTogc3RyaW5nKSB7XHJcbiAgICB2YWx1ZSA9IHZhbHVlWzBdPy5yZXBsYWNlKFwiIFwiLCBcIl9cIik7XHJcbiAgICB0aGlzLnJvdXRlci5uYXZpZ2F0ZShbJy9saXN0J10sIHtxdWVyeVBhcmFtczogeyBbdHlwZV06IHZhbHVlIH19KTtcclxuICB9XHJcbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnNjcm9sbCcsIFsnJGV2ZW50J10pXHJcbiAgb25TY3JvbGwoZXZlbnQ6IGFueSkge1xyXG4gICAgdGhpcy5zY3JvbGxWYWx1ZSA9IGV2ZW50LmN1cnJlbnRUYXJnZXQucGFnZVlPZmZzZXQgLyAxMDA7XHJcbiAgfVxyXG4gIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgdGhpcy5jb250ZW50ID0gdGhpcy5kYXRhPy5jb250ZW50O1xyXG4gICAgdGhpcy5zdHlsZSA9IHRoaXMuZGF0YT8uc3R5bGVzO1xyXG4gICAgdGhpcy5hY3Rpb24gPSB0aGlzLmRhdGE/LmFjdGlvbjtcclxuICAgIHRoaXMuYWN0aXZhdGVkUm91dGUucXVlcnlQYXJhbXMuc3Vic2NyaWJlKChxUGFyYW0pPT4ge1xyXG4gICAgICB0aGlzLnNlYXJjaFRleHQgPSBxUGFyYW1bXCJzZWFyY2hUeHRcIl07XHJcbiAgICB9KVxyXG4gICAgLy8gaWYgKHRoaXMuc3R5bGU/LmJhY2tncm91bmQgJiYgdGhpcy5uZXh0Q29tcG9uZW50LnN0eWxlcy5tZXJnZSkge1xyXG4gICAgLy8gICB0aGlzLnN0eWxlLmJhY2tncm91bmQuY29sb3IgPSB0aGlzLm5leHRDb21wb25lbnQuc3R5bGVzLmJhY2tncm91bmQuY29sb3I7XHJcbiAgICAvLyAgIHRoaXMuc3R5bGUuYmFja2dyb3VuZC5hY2NlbnRDb2xvciA9IHRoaXMubmV4dENvbXBvbmVudC5zdHlsZXMuYmFja2dyb3VuZC5hY2NlbnRDb2xvcjtcclxuICAgIC8vIH1cclxuICB9XHJcblxyXG4gIHNjcmVlbldpZHRoOiBudW1iZXIgPSA0NzU7XHJcbiAgQEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScsIFsnJGV2ZW50J10pXHJcbiAgZ2V0U2NyZWVuU2l6ZShldmVudD86IG51bWJlcikge1xyXG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnKSB7XHJcbiAgICAgIHRoaXMuc2NyZWVuV2lkdGggPSB3aW5kb3cuaW5uZXJXaWR0aDtcclxuICAgIH1cclxuICB9XHJcbiAgZ2V0IGdldFBhcmVudEhlaWdodCgpIHtcclxuICAgIHJldHVybiB0aGlzLmNoaWxkQ29udGFpbmVyPy5uYXRpdmVFbGVtZW50Py5vZmZzZXRIZWlnaHQgPz8gMDtcclxuICB9XHJcbiAgZ2V0IGdldERyb3Bkb3duTGlua3MoKSB7XHJcbiAgICBpZiAodGhpcy5jb250ZW50Py5lY29tTGlua3MpXHJcbiAgICAgIHJldHVybiBPYmplY3Qua2V5cyh0aGlzLmNvbnRlbnQ/LmVjb21MaW5rcyk7XHJcbiAgICByZXR1cm4gW107XHJcbiAgfVxyXG4gIGdldCBpc0Vjb21tZXJjZVdlYnNpdGUoKSB7XHJcbiAgICByZXR1cm4gdGhpcy5nZXREcm9wZG93bkxpbmtzLmxlbmd0aCA+IDA7XHJcbiAgfVxyXG5cclxuICBjbG9zZSgpe1xyXG4gICAgbGV0IGEgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChcIm5hdmJhck5hdkFsdE1hcmt1cFwiKTtcclxuICAgIGlmKCFhKSByZXR1cm47XHJcbiAgICAvLyBhLnN0eWxlLmRpc3BsYXkgPSBcIm5vbmVcIlxyXG4gICAgYS5jbGFzc0xpc3QucmVtb3ZlKFwic2hvd1wiKTtcclxuICAgIGEuY2xhc3NMaXN0LmFkZChcImNvbGxhcHNlXCIpXHJcbiAgfVxyXG5cclxuICBzaG93RWRpdG9ycyA6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgc2hvd0VkaXRUYWJzKGlzU2hvdzpib29sZWFuKXtcclxuICAgIHRoaXMuc2hvd0VkaXRvcnMgPSBpc1Nob3c7XHJcbiAgfVxyXG4gIGdvVG9Ib21lKCkge1xyXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWycnXSk7XHJcbiAgfVxyXG4gIGdldCBpc0hlYWRlclN0aWNreSgpIHtcclxuICAgIHJldHVybiB0aGlzLmRhdGE/LnN0eWxlcz8uc3RpY2t5O1xyXG4gIH1cclxuICBnZXQgYmFja2dyb3VuZEluZm8oKSB7XHJcbiAgICBsZXQgYmFja2dyb3VuZDogQmFja2dyb3VuZE1vZGVsIHwge30gPSB7fTtcclxuICAgIGlmICh0aGlzLnN0eWxlKSB7XHJcbiAgICAgIGJhY2tncm91bmQgPSB7XHJcbiAgICAgICAgLi4udGhpcy5zdHlsZS5iYWNrZ3JvdW5kLFxyXG4gICAgICAgIHNob3dJbWFnZTogZmFsc2UsXHJcbiAgICAgICAgY29sb3I6IFwidHJhbnNwYXJlbnRcIlxyXG4gICAgICB9O1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRoaXMubmV4dENvbXBvbmVudD8uc3R5bGVzPy5tZXJnZSA/ICh0aGlzLnNjcm9sbFZhbHVlID4gMCA/IHsuLi50aGlzLm5leHRDb21wb25lbnQuc3R5bGVzLmJhY2tncm91bmQsIGNvbG9yOiB0aGlzLnN0eWxlPy5iYWNrZ3JvdW5kLmNvbG9yfSA6IHsuLi5iYWNrZ3JvdW5kfSkgOiB7Li4udGhpcy5kYXRhPy5zdHlsZXMuYmFja2dyb3VuZH07XHJcbiAgfVxyXG4gIGdldCBzaW1wb0NvbG9yKCkge1xyXG4gICAgcmV0dXJuIHRoaXMubmV4dENvbXBvbmVudD8uc3R5bGVzPy5tZXJnZSA/ICh0aGlzLnNjcm9sbFZhbHVlID4gMCA/IHRoaXMuc3R5bGU/LmJhY2tncm91bmQuY29sb3IgOiB0aGlzLm5leHRDb21wb25lbnQuc3R5bGVzPy5iYWNrZ3JvdW5kPy5jb2xvcikgOiB0aGlzLnN0eWxlPy5iYWNrZ3JvdW5kPy5jb2xvcjtcclxuICB9XHJcbiAgZ2V0IGFjY2VudENvbG9yKCkge1xyXG4gICAgcmV0dXJuIHRoaXMubmV4dENvbXBvbmVudD8uc3R5bGVzPy5tZXJnZSA/ICh0aGlzLnNjcm9sbFZhbHVlID4gMCA/IHRoaXMuc3R5bGU/LmJhY2tncm91bmQ/LmFjY2VudENvbG9yIDogdGhpcy5uZXh0Q29tcG9uZW50LnN0eWxlcz8uYmFja2dyb3VuZD8uYWNjZW50Q29sb3IpIDogdGhpcy5zdHlsZT8uYmFja2dyb3VuZD8uYWNjZW50Q29sb3I7XHJcbiAgfVxyXG4gIGdldCBpc1RyYW5zcGFyZW50KCkge1xyXG4gICAgcmV0dXJuIHRoaXMubmV4dENvbXBvbmVudD8uc3R5bGVzPy5tZXJnZSAmJiB0aGlzLnNjcm9sbFZhbHVlID09IDA7XHJcbiAgfVxyXG4gIHJlZGlyZWN0VG8oY29udGVudDogYW55KXtcclxuICAgIHRoaXMuX2V2ZW50U2VydmljZS5idXR0b25SZWRpcmVjdGlvbi5lbWl0KHtkYXRhOiBjb250ZW50fSk7XHJcbiAgfVxyXG4gIGdldCBpc0NvbXBvbmVudE1lcmdlZCgpIHtcclxuICAgIHJldHVybiB0aGlzLm5leHRDb21wb25lbnQ/LnN0eWxlcz8ubWVyZ2U7XHJcbiAgfVxyXG4gIGVkaXRTZWN0aW9uKCl7XHJcbiAgICB0aGlzLl9ldmVudFNlcnZpY2UudG9nZ2xlRWRpdG9yRXZlbnQuZW1pdChmYWxzZSk7XHJcbiAgICBzZXRUaW1lb3V0KCgpPT4ge1xyXG4gICAgICB0aGlzLl9ldmVudFNlcnZpY2UuZWRpdFNlY3Rpb24uZW1pdCh7ZGF0YTp0aGlzLmRhdGF9KTtcclxuICAgIH0sIDEwMCk7XHJcbiAgfVxyXG5cclxuICBnZXQgZ2V0Q2FydEl0ZW1zQ291bnQoKTogbnVtYmVyIHtcclxuICAgIHJldHVybiBVc2VyQ2FydD8ub3JkZXJlZEl0ZW1zPy5sZW5ndGg7XHJcbiAgfVxyXG4gIGdldEtleXMob2JqZWN0OiBhbnkpOiBzdHJpbmdbXSB7XHJcbiAgICByZXR1cm4gT2JqZWN0LmtleXMob2JqZWN0KTtcclxuICB9XHJcbiAgZ2V0VmFsdWVzKG9iamVjdDogYW55KTogdW5rbm93bltdIHtcclxuICAgIGNvbnN0IGtleXM6IHVua25vd25bXSA9IFtdO1xyXG4gICAgb2JqZWN0LmZvckVhY2goKGtleTogYW55KT0+IGtleXMucHVzaChPYmplY3QudmFsdWVzKGtleSkpKTtcclxuICAgIHJldHVybiBbLi4ubmV3IFNldChrZXlzKV07XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgW2lkXT1cImRhdGE/LmlkXCIgW3N0eWxlLmhlaWdodC5weF09XCJnZXRQYXJlbnRIZWlnaHRcIiBbc2ltcG9CYWNrZ3JvdW5kXT1cImJhY2tncm91bmRJbmZvXCIgY2xhc3M9XCJ0b3RhbC1jb250YWluZXJcIiBzaW1wb0hvdmVyIChob3ZlcmluZyk9XCJzaG93RWRpdFRhYnMoJGV2ZW50KVwiIChjbGljayk9XCJlZGl0U2VjdGlvbigpXCI+XHJcbiAgPGRpdiAjbWFpbkNvbnRhaW5lciBjbGFzcz1cInctMTAwXCIgc3R5bGU9XCJ6LWluZGV4OiAxMDA7XCIgW2lkXT1cImRhdGE/LmlkXCIgW3NpbXBvT3ZlcmxheV09XCJzdHlsZT8uYmFja2dyb3VuZFwiIFtzY3JvbGxWYWx1ZV09XCJpc0NvbXBvbmVudE1lcmdlZCA/IHNjcm9sbFZhbHVlIDogMFwiIFtzaW1wb0JhY2tncm91bmRdPVwiYmFja2dyb3VuZEluZm9cIiBbc2ltcG9TdGlja3ldPVwiaXNIZWFkZXJTdGlja3lcIiBbbmdDbGFzc109XCJ7J2Vjb21TdHlsZSc6IGlzRWNvbW1lcmNlV2Vic2l0ZX1cIj5cclxuICAgIDxuYXYgI2NoaWxkQ29udGFpbmVyIGNsYXNzPVwibmF2YmFyIG5hdmJhci1leHBhbmQtbGcgZC1ibG9jayBtYi0wXCIgW3NpbXBvRm9vdGVyTGF5b3V0XT1cInN0eWxlPy5sYXlvdXRcIj5cclxuICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXItZmx1aWQgcG9zaXRpb24tcmVsYXRpdmUgXCI+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ3LTUwIGxlZnQtbG9nby10ZXh0IGQtZmxleFwiIChjbGljayk9XCJnb1RvSG9tZSgpXCI+XHJcbiAgICAgICAgPCEtLSA8YSBjbGFzcz1cIm5hdmJhci1icmFuZFwiIGhyZWY9XCIjXCI+e3tjb250ZW50Py5zaXRlTmFtZT8udmFsdWV9fTwvYT4gLS0+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBnYXAtMyBnYXAtbGctMyBhbGlnbi1pdGVtcy1sZy1jZW50ZXJcIiAqbmdJZj1cIiFjb250ZW50Py5sb2dvPy5pc0ltYWdlIHx8ICFjb250ZW50Py5sb2dvPy5pbWFnZT8udXJsXCI+XHJcbiAgICAgICAgICA8ZGl2ICpuZ0lmPVwiY29udGVudD8ubG9nbz8udGV4dD8uaXNJY29uICYmIGNvbnRlbnQ/LmxvZ28/LnRleHQ/LnVybFwiPlxyXG4gICAgICAgICAgICA8aW1nIFtzcmNdPVwiY29udGVudD8ubG9nbz8udGV4dD8udXJsXCIgYWx0PVwibG9nb1wiIFt3aWR0aF09XCJjb250ZW50Py5sb2dvPy5zaXplXCJcclxuICAgICAgICAgICAgbG9hZGluZz1cImxhenlcIj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPGRpdiBjbGFzcz1cImhlYWRpbmctc21hbGxcIiAqbmdJZj1cImNvbnRlbnQ/LmxvZ28/LnRleHQ/LmlzVGV4dFwiIFtzaW1wb0NvbG9yXT1cInNpbXBvQ29sb3JcIj5cclxuICAgICAgICAgICAgPGIgW25nU3R5bGVdPVwieydmb250LWZhbWlseSc6IGNvbnRlbnQ/LmxvZ28/LnRleHQ/LmZvbnRGYW1pbHl9XCI+e3tjb250ZW50Py5zaXRlTmFtZT8udmFsdWV9fTwvYj5cclxuICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZ2FwLTMgZ2FwLWxnLTMgYWxpZ24taXRlbXMtbGctY2VudGVyXCJcclxuICAgICAgICAgICpuZ0lmPVwiY29udGVudD8ubG9nbz8uaXNJbWFnZSAmJiBjb250ZW50Py5sb2dvPy5pbWFnZT8udXJsXCI+XHJcbiAgICAgICAgICA8aW1nIFtzcmNdPVwiY29udGVudD8ubG9nbz8uaW1hZ2U/LnVybFwiIGFsdD1cImxvZ29cIiBbd2lkdGhdPVwiY29udGVudD8ubG9nbz8uc2l6ZVwiXHJcbiAgICAgICAgICBsb2FkaW5nPVwibGF6eVwiPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgICA8ZGl2IGNsYXNzPVwibmF2YmFyLWNvbGxhcHNlIGZzLTYgcG9zaXRpb24tcmVsYXRpdmUgZC1mbGV4XCIgc3R5bGU9XCJtYXJnaW4tdG9wOiA1cHg7IG1hcmdpbi1sZWZ0OiAyNXB4O1wiIFtzaW1wb0NvbG9yXT1cInNpbXBvQ29sb3JcIiAqbmdJZj1cImlzRWNvbW1lcmNlV2Vic2l0ZSAmJiBzY3JlZW5XaWR0aCA+IDc2OFwiPlxyXG4gICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgbGluayBvZiBnZXREcm9wZG93bkxpbmtzOyBsZXQgaWR4ID0gaW5kZXhcIj5cclxuICAgICAgICAgICAgPGEgY2xhc3M9XCJuYXYtbGluayBkcm9wZG93bi10b2dnbGUgbXgtMlwiIGhyZWY9XCIjXCIgW2lkXT1cIiduYXZiYXJEcm9wZG93bk1lbnVMaW5rXycgKyBpZHhcIiByb2xlPVwiYnV0dG9uXCIgZGF0YS1icy10b2dnbGU9XCJkcm9wZG93blwiIGFyaWEtZXhwYW5kZWQ9XCJmYWxzZVwiPnt7IGxpbmsgfCB1cHBlcmNhc2UgfX08L2E+XHJcbiAgICAgICAgICAgIDx1bCBjbGFzcz1cImRyb3Bkb3duLW1lbnUgZnMtNiBwb3NpdGlvbi1hYnNvbHV0ZVwiIFthdHRyLmFyaWEtbGFiZWxsZWRieV09XCInbmF2YmFyRHJvcGRvd25NZW51TGlua18nK2lkeFwiPlxyXG4gICAgICAgICAgICAgIDxsaSAqbmdGb3I9XCJsZXQgdmFsdWUgb2YgZ2V0VmFsdWVzKGNvbnRlbnQ/LmVjb21MaW5rcz8uW2xpbmtdKVwiPjxhIGNsYXNzPVwiZHJvcGRvd24taXRlbVwiIChjbGljayk9XCJhcHBseUZpbHRlcih2YWx1ZSwgbGluaylcIj57e3ZhbHVlfX08L2E+PC9saT5cclxuICAgICAgICAgICAgPC91bD5cclxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgIDwvZGl2PlxyXG5cclxuICAgICAgPC9kaXY+XHJcbiAgICAgIDxkaXYgY2xhc3M9XCJ3LTUwIHJpZ2h0LWJ0biBkLWZsZXgganVzdGlmeS1jb250ZW50LWVuZFwiPlxyXG4gICAgICAgIDxkaXYgKm5nSWY9XCJzY3JlZW5XaWR0aCA8PSA3NjggJiYgaXNFY29tbWVyY2VXZWJzaXRlXCIgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtY2VudGVyIGp1c3RpZnktY29udGVudC1hcm91bmRcIj5cclxuICAgICAgICAgIDxpIGNsYXNzPVwiZmEgZmEtc2VhcmNoIG14LTJcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2k+XHJcbiAgICAgICAgICA8bWF0LWljb24gY2xhc3M9XCJteC0yXCI+YWRkX3Nob3BwaW5nX2NhcnQ8L21hdC1pY29uPlxyXG4gICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwibXgtMlwiPnBlcnNvbl9vdXRsaW5lPC9tYXQtaWNvbj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8YnV0dG9uIGNsYXNzPVwibmF2YmFyLXRvZ2dsZXIgbWVudS1pY29uXCIgW3NpbXBvQ29sb3JdPVwic2ltcG9Db2xvclwiIFtpZF09XCJkYXRhPy5pZFwiIHR5cGU9XCJidXR0b25cIiBkYXRhLWJzLXRvZ2dsZT1cImNvbGxhcHNlXCIgZGF0YS1icy10YXJnZXQ9XCIjbmF2YmFyTmF2QWx0TWFya3VwXCIgKm5nSWY9XCJzY3JlZW5XaWR0aCA8IDc2OVwiXHJcbiAgICAgICAgICBhcmlhLWNvbnRyb2xzPVwibmF2YmFyTmF2QWx0TWFya3VwXCIgYXJpYS1leHBhbmRlZD1cImZhbHNlXCIgYXJpYS1sYWJlbD1cIlRvZ2dsZSBuYXZpZ2F0aW9uXCI+XHJcbiAgICAgICAgICA8aHI+XHJcbiAgICAgICAgICA8aHI+XHJcbiAgICAgICAgICA8aHI+XHJcbiAgICAgICAgPC9idXR0b24+XHJcbiAgICAgIDwvZGl2PlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiIWlzRWNvbW1lcmNlV2Vic2l0ZVwiPlxyXG4gICAgICAgIDxkaXYgY2xhc3M9XCJjb2xsYXBzZSBuYXZiYXItY29sbGFwc2VcIiAqbmdJZj1cInNjcmVlbldpZHRoID4gNzY4XCI+XHJcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwibmF2YmFyLW5hdiBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXIgZ2FwLTNcIiBzdHlsZT1cIm1hcmdpbi1yaWdodDogMTBweDtcIj5cclxuICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGNvbnRlbnQ/Lm5hdmJhckJ1dHRvbnNcIj5cclxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nSWY9XCJpdGVtLnNob3dIZWFkZXJcIj5cclxuICAgICAgICAgICAgICAgICAgPHNpbXBvLW5hdmJhci1idXR0b24tZWxlbWVudCBbYnV0dG9uRGF0YV09XCJpdGVtXCIgW3NlbGVjdGVkU3R5bGVdPVwic3R5bGU/Lm5hdmlnYXRpb25TdHlsZVwiIFtidXR0b25TdHlsZV09XCJzdHlsZT8ubmF2YmFyQnV0dG9uU3R5bGVcIlxyXG4gICAgICAgICAgICAgICAgICBbYmdDb2xvcl09XCJzaW1wb0NvbG9yXCIgW3NlY3Rpb25JZF09XCJkYXRhPy5pZFwiPjwvc2ltcG8tbmF2YmFyLWJ1dHRvbi1lbGVtZW50PlxyXG4gICAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBhbGlnbi1pdGVtcy1zdGFydCBhbGlnbi1pdGVtcy1sZy1jZW50ZXIgZmxleC1jb2x1bW4gZmxleC1sZy1yb3cgZ2FwLWxnLTAgZ2FwLTNcIlxyXG4gICAgICAgICAgICAgICAgW25nQ2xhc3NdPVwiY29udGVudD8uc29jaWFsTGlua3M/LmRpc3BsYXkgPyAnanVzdGlmeS1jb250ZW50LWJldHdlZW4nIDogJ2p1c3RpZnktY29udGVudC1lbmQnXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IG10LTBcIiAqbmdJZj1cImNvbnRlbnQ/LnNvY2lhbExpbmtzPy5kaXNwbGF5XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgY29udGVudD8uc29jaWFsTGlua3M/LmNoYW5uZWxzXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiBzdHlsZT1cInBvc2l0aW9uOiByZWxhdGl2ZTttYXJnaW4tcmlnaHQ6IDEwcHg7XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8c2ltcG8tc29jaWEtaWNvbnMgW3NvY2lhbEljb25EYXRhXT1cIml0ZW1cIiBbY29sb3JdPVwic2ltcG9Db2xvclwiIFtzZWN0aW9uSWRdPVwiZGF0YT8uaWRcIj48L3NpbXBvLXNvY2lhLWljb25zPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleFwiPlxyXG4gICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJhY3Rpb24/LmRpc3BsYXlcIiBjbGFzcz1cImJ1dHRvbi1kaXNwbGF5IG10LTBcIj5cclxuICAgICAgICAgICAgICAgIDxkaXYgKm5nRm9yPVwibGV0IGJ1dHRvbiBvZiBhY3Rpb24/LmJ1dHRvbnNcIj5cclxuICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ1dHRvblwiIChjbGljayk9XCJyZWRpcmVjdFRvKGJ1dHRvbj8uY29udGVudClcIiBzaW1wb0J1dHRvbkRpcmVjdGl2ZSBbc2Nyb2xsVmFsdWVdPVwic2Nyb2xsVmFsdWVcIiBbaWRdPVwiZGF0YT8uaWQrKGJ1dHRvbj8uaWQgfHwgJycpXCIgW2J1dHRvblN0eWxlXT1cImJ1dHRvbi5zdHlsZXNcIiBbY29sb3JdPVwiYWNjZW50Q29sb3JcIj57e2J1dHRvbj8uY29udGVudD8ubGFiZWx9fTwvYnV0dG9uPlxyXG4gICAgICAgICAgICAgICAgICA8IS0tIDxhcHAtYnV0dG9uLWVsZW1lbnQgW2J1dHRvbkNvbnRlbnRdPVwiYnV0dG9uLmNvbnRlbnRcIiBbYnV0dG9uU3R5bGVdPVwiYnV0dG9uLnN0eWxlc1wiIFtzZWN0aW9uSWRdPVwiZGF0YT8uaWRcIlxyXG4gICAgICAgICAgICAgICAgICAgIFtjb2xvcl09XCJkYXRhPy5zdHlsZXM/LmJhY2tncm91bmQ/LmFjY2VudENvbG9yXCI+PC9hcHAtYnV0dG9uLWVsZW1lbnQ+IC0tPlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbGxhcHNlIG5hdmJhci1jb2xsYXBzZVwiIGlkPVwibmF2YmFyTmF2QWx0TWFya3VwXCIgKm5nSWY9XCJzY3JlZW5XaWR0aCA8PSA3NjhcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJpbm5lci1oZWlnaHQgcC00XCI+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJuYWItYmFyLW1vYmlsZSBmbGV4LWNvbHVtbiBkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyXCI+XHJcbiAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiB3LTEwMFwiPlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbiBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cInRpdGxlLXJvd1wiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZ2FwLTMgYWxpZ24taXRlbXMtY2VudGVyXCIgKm5nSWY9XCIhY29udGVudD8ubG9nbz8uaXNJbWFnZSB8fCAhY29udGVudD8ubG9nbz8uaW1hZ2U/LnVybFwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdJZj1cImNvbnRlbnQ/LmxvZ28/LnRleHQ/LmlzSWNvbiAmJiBjb250ZW50Py5sb2dvPy50ZXh0Py51cmxcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGltZyBbc3JjXT1cImNvbnRlbnQ/LmxvZ28/LnRleHQ/LnVybFwiIGFsdD1cImxvZ29cIiBbd2lkdGhdPVwiY29udGVudD8ubG9nbz8uc2l6ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxvYWRpbmc9XCJsYXp5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJoZWFkaW5nLXNtYWxsXCIgKm5nSWY9XCJjb250ZW50Py5sb2dvPy50ZXh0Py5pc1RleHRcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgPGIgW25nU3R5bGVdPVwieydmb250LWZhbWlseSc6IGNvbnRlbnQ/LmxvZ28/LnRleHQ/LmZvbnRGYW1pbHl9XCI+e3tjb250ZW50Py5zaXRlTmFtZT8udmFsdWV9fTwvYj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZ2FwLTMgYWxpZ24taXRlbXMtY2VudGVyXCJcclxuICAgICAgICAgICAgICAgICAgICAgICpuZ0lmPVwiY29udGVudD8ubG9nbz8uaXNJbWFnZVwiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGltZyBbc3JjXT1cImNvbnRlbnQ/LmxvZ28/LmltYWdlPy51cmxcIiBhbHQ9XCJsb2dvXCIgW3dpZHRoXT1cImNvbnRlbnQ/LmxvZ28/LnNpemVcIlxyXG4gICAgICAgICAgICAgICAgICAgICAgbG9hZGluZz1cImxhenlcIj5cclxuICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuXHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY2xvc2UtYm94IGN1cnNvci1wb2ludGVyIGQtZmxleFwiIChjbGljayk9XCJjbG9zZSgpXCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uPmNsb3NlPC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXgganVzdGlmeS1jb250ZW50LWJldHdlZW4gYWxpZ24taXRlbXMtY2VudGVyIG10LTVcIj5cclxuICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBmbGV4LWNvbHVtbiBnYXAtNCB3LTEwMFwiPlxyXG4gICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nRm9yPVwibGV0IGl0ZW0gb2YgY29udGVudD8ubmF2YmFyQnV0dG9uc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPHNpbXBvLW5hdmJhci1idXR0b24tZWxlbWVudCBbYnV0dG9uRGF0YV09XCJpdGVtXCIgW3NlbGVjdGVkU3R5bGVdPVwic3R5bGU/Lm5hdmlnYXRpb25TdHlsZVwiIFtidXR0b25TdHlsZV09XCJzdHlsZT8ubmF2YmFyQnV0dG9uU3R5bGVcIj48L3NpbXBvLW5hdmJhci1idXR0b24tZWxlbWVudD5cclxuICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cclxuICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uXCI+XHJcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtc3RhcnQgYWxpZ24taXRlbXMtbGctY2VudGVyIGZsZXgtY29sdW1uIGZsZXgtbGctcm93IGdhcC1sZy0wIGdhcC0zXCJcclxuICAgICAgICAgICAgICAgICAgICBbbmdDbGFzc109XCJjb250ZW50Py5zb2NpYWxMaW5rcz8uZGlzcGxheSA/ICdqdXN0aWZ5LWNvbnRlbnQtYmV0d2VlbicgOiAnanVzdGlmeS1jb250ZW50LWVuZCdcIj5cclxuICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IG10LTBcIiAqbmdJZj1cImNvbnRlbnQ/LnNvY2lhbExpbmtzPy5kaXNwbGF5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBpdGVtIG9mIGNvbnRlbnQ/LnNvY2lhbExpbmtzPy5jaGFubmVsc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IHN0eWxlPVwicG9zaXRpb246IHJlbGF0aXZlO21hcmdpbi1yaWdodDogMTBweDtcIj5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICA8c2ltcG8tc29jaWEtaWNvbnMgW3NvY2lhbEljb25EYXRhXT1cIml0ZW1cIiBbY29sb3JdPVwic2ltcG9Db2xvclwiIFtzZWN0aW9uSWRdPVwiZGF0YT8uaWRcIj48L3NpbXBvLXNvY2lhLWljb25zPlxyXG4gICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPGRpdiBjbGFzcz1cImQtZmxleCBtdC00XCI+XHJcbiAgICAgICAgICAgICAgICAgIDxkaXYgKm5nSWY9XCJhY3Rpb24/LmRpc3BsYXlcIiBjbGFzcz1cImJ1dHRvbi1kaXNwbGF5XCI+XHJcbiAgICAgICAgICAgICAgICAgICAgPGRpdiAqbmdGb3I9XCJsZXQgYnV0dG9uIG9mIGFjdGlvbj8uYnV0dG9uc1wiPlxyXG4gICAgICAgICAgICAgICAgICAgICAgPGFwcC1idXR0b24tZWxlbWVudCBbYnV0dG9uQ29udGVudF09XCJidXR0b24uY29udGVudFwiIFtidXR0b25TdHlsZV09XCJidXR0b24uc3R5bGVzXCIgW3NlY3Rpb25JZF09XCJkYXRhPy5pZFwiXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIFtjb2xvcl09XCJkYXRhPy5zdHlsZXM/LmJhY2tncm91bmQ/LmFjY2VudENvbG9yXCI+PC9hcHAtYnV0dG9uLWVsZW1lbnQ+XHJcbiAgICAgICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgPC9kaXY+XHJcbiAgICAgIDwvbmctY29udGFpbmVyPlxyXG4gICAgICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXNFY29tbWVyY2VXZWJzaXRlXCI+XHJcbiAgICAgICAgPGRpdiBjbGFzcz1cImNvbGxhcHNlIG5hdmJhci1jb2xsYXBzZSBwb3NpdGlvbi1hYnNvbHV0ZSBwci0wXCIgc3R5bGU9XCJyaWdodDogMHB4O1wiICpuZ0lmPVwic2NyZWVuV2lkdGggPiA3NjhcIj5cclxuICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb250YWluZXItZmx1aWQganVzdGlmeS1jb250ZW50LWJldHdlZW4gcHItMCBkLWZsZXhcIiBzdHlsZT1cIm1heC13aWR0aDogNTB2dztcIj5cclxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImlucHV0LWdyb3VwXCI+XHJcbiAgICAgICAgICAgICAgPGkgY2xhc3M9XCJmYSBmYS1zZWFyY2hcIiBhcmlhLWhpZGRlbj1cInRydWVcIj48L2k+XHJcbiAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIiBwbGFjZWhvbGRlcj1cIlNlYXJjaCBQcm9kdWN0Li5cIiBhcmlhLWxhYmVsPVwiU2VhcmNoIFByb2R1Y3RcIiBbKG5nTW9kZWwpXT1cInNlYXJjaFRleHRcIiAobmdNb2RlbENoYW5nZSk9XCJzZWFyY2hQcm9kdWN0cygpXCI+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZC1mbGV4IGZsZXgtY29sdW1uIGFsaWduLWl0ZW1zLWNlbnRlciBteC0zIHBvc2l0aW9uLXJlbGF0aXZlXCIgc3R5bGU9XCJ3aWR0aDogNjBweDsgY3Vyc29yOiBwb2ludGVyO1wiIChjbGljayk9XCJnb1RvQ2FydCgpXCI+XHJcbiAgICAgICAgICAgICAgPG1hdC1pY29uPmFkZF9zaG9wcGluZ19jYXJ0PC9tYXQtaWNvbj5cclxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRleHQtZGFyayBmdy1ub3JtYWwgZnMtNlwiPkJhZzwvc3Bhbj5cclxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwicG9zaXRpb24tYWJzb2x1dGUgY2FydEl0ZW1Db3VudFwiICpuZ0lmPVwiZ2V0Q2FydEl0ZW1zQ291bnRcIj57e2dldENhcnRJdGVtc0NvdW50fX08L2Rpdj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkLWZsZXggZmxleC1jb2x1bW4gYWxpZ24taXRlbXMtY2VudGVyXCIgc3R5bGU9XCJ3aWR0aDogNjBweDsgbWFyZ2luLWxlZnQ6IC0xMHB4OyBjdXJzb3I6IHBvaW50ZXI7XCIgKGNsaWNrKT1cImdvVG9BY2NvdW50KClcIj5cclxuICAgICAgICAgICAgICA8bWF0LWljb24+cGVyc29uX291dGxpbmU8L21hdC1pY29uPlxyXG4gICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwidGV4dC1kYXJrIGZ3LW5vcm1hbCBmcy02XCI+QWNjb3VudDwvc3Bhbj5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICA8L2Rpdj5cclxuICAgICAgICA8L2Rpdj5cclxuICAgICAgPC9uZy1jb250YWluZXI+XHJcbiAgICA8L2Rpdj5cclxuICA8L25hdj5cclxuICA8L2Rpdj5cclxuICA8ZGl2IFtuZ0NsYXNzXT1cInsnaG92ZXJfZWZmZWN0JzogZWRpdH1cIiAqbmdJZj1cInNob3dFZGl0b3JzXCI+XHJcbiAgICA8c2ltcG8taG92ZXItZWxlbWVudHMgW2RhdGFdPVwiZGF0YVwiIFtpbmRleF09XCJpbmRleFwiIFtlZGl0T3B0aW9uc109XCJlZGl0XCI+PC9zaW1wby1ob3Zlci1lbGVtZW50cz5cclxuPC9kaXY+XHJcbjwvZGl2PlxyXG4iXX0=
|
|
@@ -32,4 +32,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
32
32
|
providedIn: 'root',
|
|
33
33
|
}]
|
|
34
34
|
}], ctorParameters: () => [] });
|
|
35
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FydC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2ltcG8tdWkvc3JjL2xpYi9zZXJ2aWNlcy9jYXJ0LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFnQixVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekQsT0FBTyxRQUFRLE1BQU0sa0NBQWtDLENBQUM7QUFFeEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHdDQUF3QyxDQUFDOztBQUt0RSxNQUFNLE9BQU8sV0FBVztJQUN0QixnQkFBZSxDQUFDO0lBRVQsYUFBYSxDQUFDLE9BQWdCO1FBRW5DLE1BQU0sWUFBWSxHQUFpQixJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBRTlELElBQUksWUFBWSxHQUFXLENBQUMsQ0FBQyxDQUFDO1FBQzlCLFFBQVEsQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBTSxFQUFFLEdBQVcsRUFBQyxFQUFFO1lBQ2pELElBQUksQ0FBQyxDQUFDLFNBQVMsSUFBSSxPQUFPLENBQUMsTUFBTTtnQkFDN0IsWUFBWSxHQUFHLEdBQUcsQ0FBQztRQUMzQixDQUFDLENBQUMsQ0FBQztRQUNILElBQUksWUFBWSxJQUFJLENBQUMsQ0FBQztZQUNsQixRQUFRLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxPQUFnQixDQUFDLENBQUM7YUFDNUMsQ0FBQztZQUNGLElBQUksT0FBTyxDQUFDLFFBQVEsR0FBRyxDQUFDO2dCQUNuQixRQUFRLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBNkIsQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLFdBQVcsR0FBRSxDQUFDLENBQUMsQ0FBQzs7Z0JBRTFHLFFBQVEsQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN0RCxDQUFDO0lBQ0gsQ0FBQztJQUVPLFlBQVksQ0FBQyxPQUFnQjtRQUNuQyxPQUFPLElBQUksWUFBWSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0lBQ25DLENBQUM7OEdBeEJVLFdBQVc7a0hBQVgsV0FBVyxjQUZWLE1BQU07OzJGQUVQLFdBQVc7a0JBSHZCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRXZlbnRFbWl0dGVyLCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCBVc2VyQ2FydCBmcm9tIFwiLi4vZWNvbW1lcmNlL2pzb24vdXNlci1jYXJ0Lmpzb25cIjtcclxuaW1wb3J0IHsgT3JkZXJlZEl0ZW0sIFByb2R1Y3QgfSBmcm9tICcuLi8uLi9wdWJsaWMtYXBpJztcclxuaW1wb3J0IHsgT3JkZXJlZEl0ZW1zIH0gZnJvbSAnLi4vZWNvbW1lcmNlL3N0eWxlcy9PcmRlcmVkSXRlbXMubW9kYWwnO1xyXG5cclxuQEluamVjdGFibGUoe1xyXG4gIHByb3ZpZGVkSW46ICdyb290JyxcclxufSlcclxuZXhwb3J0IGNsYXNzIENhcnRTZXJ2aWNlIHtcclxuICBjb25zdHJ1Y3RvcigpIHt9XHJcblxyXG4gIHB1YmxpYyBhZGRJdGVtVG9DYXJ0KHByb2R1Y3Q6IFByb2R1Y3QpIHtcclxuXHJcbiAgICBjb25zdCBvcmRlclByb2R1Y3Q6IE9yZGVyZWRJdGVtcyA9IHRoaXMub2JqZWN0TWFwcGVyKHByb2R1Y3QpO1xyXG5cclxuICAgIGxldCBwcm9kdWN0SW5kZXg6IG51bWJlciA9IC0xO1xyXG4gICAgVXNlckNhcnQub3JkZXJlZEl0ZW1zLmZvckVhY2goKHA6IGFueSwgaWR4OiBudW1iZXIpPT4ge1xyXG4gICAgICAgIGlmIChwLmdldEl0ZW1JZCA9PSBwcm9kdWN0Lml0ZW1JZClcclxuICAgICAgICAgICAgcHJvZHVjdEluZGV4ID0gaWR4O1xyXG4gICAgfSk7XHJcbiAgICBpZiAocHJvZHVjdEluZGV4ID09IC0xKVxyXG4gICAgICAgIFVzZXJDYXJ0Lm9yZGVyZWRJdGVtcy5wdXNoKHByb2R1Y3QgYXMgbmV2ZXIpO1xyXG4gICAgZWxzZSB7XHJcbiAgICAgICAgaWYgKHByb2R1Y3QucXVhbnRpdHkgPiAwKVxyXG4gICAgICAgICAgICAoVXNlckNhcnQub3JkZXJlZEl0ZW1zW3Byb2R1Y3RJbmRleF0gYXMgdW5rbm93biBhcyBPcmRlcmVkSXRlbXMpLnNldFF1YW50aXR5KG9yZGVyUHJvZHVjdC5nZXRRdWFudGl0eSArMSk7XHJcbiAgICAgICAgZWxzZVxyXG4gICAgICAgICAgICBVc2VyQ2FydC5vcmRlcmVkSXRlbXMuc3BsaWNlKHByb2R1Y3RJbmRleCwgMSk7XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIG9iamVjdE1hcHBlcihwcm9kdWN0OiBQcm9kdWN0KTogT3JkZXJlZEl0ZW1zIHtcclxuICAgIHJldHVybiBuZXcgT3JkZXJlZEl0ZW1zKHByb2R1Y3QpO1xyXG4gIH1cclxufSJdfQ==
|
|
@@ -2982,20 +2982,44 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
2982
2982
|
|
|
2983
2983
|
var cartId = "";
|
|
2984
2984
|
var orderedItems = [
|
|
2985
|
+
{
|
|
2986
|
+
itemId: "123",
|
|
2987
|
+
businessId: "21",
|
|
2988
|
+
itemName: "Anime T-Shirt",
|
|
2989
|
+
brandName: "Excee",
|
|
2990
|
+
imgUrl: "https://dev-beeos.s3.amazonaws.com/library-media/291611c1707983189501product-details-2.jpg.jpg",
|
|
2991
|
+
price: 120,
|
|
2992
|
+
itemTax: 10,
|
|
2993
|
+
quantity: 2,
|
|
2994
|
+
discountedPrice: 20,
|
|
2995
|
+
taxAfterDiscount: 10
|
|
2996
|
+
},
|
|
2997
|
+
{
|
|
2998
|
+
itemId: "123",
|
|
2999
|
+
businessId: "21",
|
|
3000
|
+
itemName: "Anime T-Shirt",
|
|
3001
|
+
brandName: "Excee",
|
|
3002
|
+
imgUrl: "https://dev-beeos.s3.amazonaws.com/library-media/291611c1707983189501product-details-2.jpg.jpg",
|
|
3003
|
+
price: 120,
|
|
3004
|
+
itemTax: 10,
|
|
3005
|
+
quantity: 2,
|
|
3006
|
+
discountedPrice: 20,
|
|
3007
|
+
taxAfterDiscount: 10
|
|
3008
|
+
}
|
|
2985
3009
|
];
|
|
2986
3010
|
var billdetails = {
|
|
2987
|
-
totalNetValue:
|
|
2988
|
-
totalGrossValue:
|
|
2989
|
-
totalTax:
|
|
3011
|
+
totalNetValue: 260,
|
|
3012
|
+
totalGrossValue: 10,
|
|
3013
|
+
totalTax: 20,
|
|
2990
3014
|
totalOfferedValue: 0,
|
|
2991
|
-
deliveryCharges:
|
|
3015
|
+
deliveryCharges: 20,
|
|
2992
3016
|
couponId: "",
|
|
2993
|
-
discountAmount:
|
|
3017
|
+
discountAmount: 10,
|
|
2994
3018
|
afterDiscountAmount: 0,
|
|
2995
3019
|
taxBreakup: {
|
|
2996
|
-
cgstValue:
|
|
2997
|
-
sgstValue:
|
|
2998
|
-
igstValue:
|
|
3020
|
+
cgstValue: 5,
|
|
3021
|
+
sgstValue: 5,
|
|
3022
|
+
igstValue: 5
|
|
2999
3023
|
}
|
|
3000
3024
|
};
|
|
3001
3025
|
var locationDetails = {
|
|
@@ -3010,7 +3034,7 @@ var locationDetails = {
|
|
|
3010
3034
|
pinCode: ""
|
|
3011
3035
|
};
|
|
3012
3036
|
var platform = "WEB";
|
|
3013
|
-
var totalAmount =
|
|
3037
|
+
var totalAmount = 400;
|
|
3014
3038
|
var UserCart = {
|
|
3015
3039
|
cartId: cartId,
|
|
3016
3040
|
orderedItems: orderedItems,
|
|
@@ -3047,7 +3071,7 @@ class NavbarSectionComponent {
|
|
|
3047
3071
|
}
|
|
3048
3072
|
applyFilter(value, type) {
|
|
3049
3073
|
value = value[0]?.replace(" ", "_");
|
|
3050
|
-
this.router.navigate(['/
|
|
3074
|
+
this.router.navigate(['/list'], { queryParams: { [type]: value } });
|
|
3051
3075
|
}
|
|
3052
3076
|
onScroll(event) {
|
|
3053
3077
|
this.scrollValue = event.currentTarget.pageYOffset / 100;
|
|
@@ -4636,7 +4660,7 @@ class ProductDescComponent extends BaseSection {
|
|
|
4636
4660
|
this.cartService.addItemToCart(this.responseData);
|
|
4637
4661
|
}
|
|
4638
4662
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: ProductDescComponent, deps: [{ token: PLATFORM_ID }, { token: EventsService }, { token: i2$4.MatSnackBar }, { token: i3.ActivatedRoute }, { token: RestService }, { token: CartService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4639
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: ProductDescComponent, isStandalone: true, selector: "simpo-product-desc", inputs: { data: "data", responseData: "responseData", index: "index", edit: "edit", delete: "delete" }, host: { listeners: { "window: resize": "getScreenSize($event)" } }, usesInheritance: true, ngImport: i0, template: "<section class=\"total-container\" [id]=\"data?.id\" [simpoLayout]=\"styles?.layout\" simpoHover\r\n (hovering)=\"showEditTabs($event)\">\r\n <section class=\"container\" [id]=\"data?.id\" [simpoAnimation]=\"styles?.animation\">\r\n <div><a href=\"\" style=\"text-decoration: none; color: #0267C1\">Home</a> / <span>{{ responseData
|
|
4663
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: ProductDescComponent, isStandalone: true, selector: "simpo-product-desc", inputs: { data: "data", responseData: "responseData", index: "index", edit: "edit", delete: "delete" }, host: { listeners: { "window: resize": "getScreenSize($event)" } }, usesInheritance: true, ngImport: i0, template: "<section class=\"total-container\" [id]=\"data?.id\" [simpoLayout]=\"styles?.layout\" simpoHover\r\n (hovering)=\"showEditTabs($event)\">\r\n <section class=\"container\" [id]=\"data?.id\" [simpoAnimation]=\"styles?.animation\">\r\n <div><a href=\"\" style=\"text-decoration: none; color: #0267C1\">Home</a> / <span>{{ responseData?.name | titlecase }}</span></div>\r\n <div class=\"row\">\r\n <div class=\"col-lg-6 col-12\">\r\n <div class=\"prod-img-block\">\r\n <div class=\"img-list\" *ngIf=\"screenWidth > 500\">\r\n <ng-container *ngFor=\"let img of responseData?.itemImages\">\r\n <img [src]=\"img.imgUrl\" alt=\"\" class=\"img\" (click)=\"changeImg(img.imgUrl)\">\r\n </ng-container>\r\n </div>\r\n <div class=\"item-img\">\r\n <img [src]=\"currentImg\" alt=\"\">\r\n </div>\r\n <div class=\"img-list\" *ngIf=\"screenWidth <= 500\">\r\n <ng-container *ngFor=\"let img of responseData?.itemImages\">\r\n <img [src]=\"img.imgUrl\" alt=\"\" class=\"img\" (click)=\"changeImg(img.imgUrl)\">\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-lg-6 col-12 product-detail\">\r\n <div class=\"heading-large\">{{responseData?.name}}</div>\r\n <div class=\"price\">\u20B9 {{responseData.price.sellingPrice}}</div>\r\n <div class=\"product-desc body-large\" *ngIf=\"responseData?.descriptor?.name\">{{responseData.descriptor.name}}</div>\r\n\r\n <div class=\"button-parent\">\r\n <div class=\"quantity\" *ngIf=\"responseData.quantity\">\r\n <div class=\"plus\" (click)=\"addToCart('SUBSTRACT')\">-</div>\r\n <div style=\"width: 50px;\" class=\"d-flex justify-content-center\">{{responseData.quantity}}</div>\r\n <!-- <input type=\"number\" (keyup)=\"changeQuantity(quantity.value)\" [value]=\"addedQuantity\" #quantity> -->\r\n <div class=\"minus\" (click)=\"addToCart('ADD')\">+</div>\r\n </div>\r\n <div *ngIf=\"!responseData.quantity\">\r\n <button class=\"send-btn\" simpoButtonDirective [id]=\"buttonId\" [buttonStyle]=\"button?.styles\" [color]=\"data?.styles?.background?.accentColor\" (click)=\"addToCart()\">{{data?.content?.button}}</button>\r\n </div>\r\n </div>\r\n\r\n <div class=\"product-sku\">\r\n <div *ngIf=\"responseData?.itemInventory\">SKU :\r\n {{responseData.itemInventory.openingStock}}</div>\r\n <div *ngIf=\"responseData?.itemCategorisation?.itemCategories\">Category : <span\r\n *ngFor=\"let cat of responseData?.itemCategorisation?.itemCategories;let idx = index\">{{cat.refName}} <ng-container *ngIf=\"(idx+1) != responseData?.itemCategorisation?.itemCategories?.length\">,</ng-container>\r\n </span></div>\r\n <div *ngIf=\"(responseData?.itemCategorisation?.productTags?.length || 0) > 0\">Tags : <span\r\n *ngFor=\"let tag of responseData?.itemCategorisation?.productTags\">{{tag.tagName}},\r\n </span></div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row prod-desc\" *ngIf=\"false\">\r\n <div class=\"tab-group\">\r\n <div class=\"tab\">Description</div>\r\n </div>\r\n <div style=\"margin-top: 10px;\" class=\"body-large\" *ngIf=\"responseData.properties.description\">{{responseData.properties.description}}</div>\r\n </div>\r\n </section>\r\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\r\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\r\n </div>\r\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\r\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\r\n </div>\r\n</section>\r\n", styles: [".product-desc{display:flex}.row{margin-top:25px}.prod-img-block{display:flex;gap:5px}.img-list{display:flex;flex-direction:column;gap:5px}.img-list img{height:100px;width:100%;cursor:pointer}.item-img img{height:500px;width:460px}.price{font-weight:600;font-family:Poppins;font-size:20px;margin-top:15px}.product-desc{margin-top:15px}.button-parent{margin-top:15px;display:flex;gap:10px;align-items:center}.quantity{display:flex;border:2px solid #E6E6E6;align-items:center;gap:15px;height:47px;margin-top:1rem;border-radius:5px}.quantity .plus{position:relative;left:10px;font-size:18px;font-weight:600;cursor:pointer;color:#848484}.quantity .minus{position:relative;right:15px;font-size:18px;font-weight:600;color:#848484;cursor:pointer}.quantity input{width:60px;border:none;outline:none;text-align:center}.product-sku{margin-top:20px}.product-sku div{font-weight:400;font-size:15px;color:#848484;font-family:Poppins;margin-top:.5rem}.tab-group{display:flex;gap:10px;overflow-y:scroll}.tab{font-family:Poppins;font-weight:500;font-size:18px;color:#222;padding-bottom:2px;border-bottom:1px solid black}@media screen and (max-width: 500px){.item-img img{width:100%;height:448px}.prod-img-block{flex-direction:column}.img-list{flex-direction:row;overflow-y:scroll}.product-detail,.prod-desc{margin-top:20px}.product-img{height:220px}}.send-btn{font-size:16px!important;padding:1rem 2rem;display:inline-flex;align-items:center;justify-content:center;width:fit-content!important;margin-top:1rem}.body-large{color:#848484}.total-container{height:auto;position:relative;display:block!important}.hover_effect{position:absolute;width:100%;top:0;left:0;height:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.TitleCasePipe, name: "titlecase" }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: HttpClientModule }, { kind: "ngmodule", type: SimpoComponentModule }, { kind: "component", type: HoverElementsComponent, selector: "simpo-hover-elements", inputs: ["data", "index", "editOptions", "isMerged"], outputs: ["edit"] }, { kind: "component", type: DeleteHoverElementComponent, selector: "simpo-delete-hover-element", inputs: ["index", "data"], outputs: ["edit"] }, { kind: "directive", type:
|
|
4640
4664
|
//DIRECTIVE
|
|
4641
4665
|
ButtonDirectiveDirective, selector: "[simpoButtonDirective]", inputs: ["buttonStyle", "color", "scrollValue"] }, { kind: "directive", type: AnimationDirective, selector: "[simpoAnimation]", inputs: ["simpoAnimation"] }, { kind: "directive", type: ContentFitDirective, selector: "[simpoLayout]", inputs: ["simpoLayout"] }, { kind: "directive", type: HoverDirective, selector: "[simpoHover]", outputs: ["hovering"] }] }); }
|
|
4642
4666
|
}
|
|
@@ -4651,7 +4675,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
4651
4675
|
AnimationDirective,
|
|
4652
4676
|
ContentFitDirective,
|
|
4653
4677
|
HoverDirective
|
|
4654
|
-
], template: "<section class=\"total-container\" [id]=\"data?.id\" [simpoLayout]=\"styles?.layout\" simpoHover\r\n (hovering)=\"showEditTabs($event)\">\r\n <section class=\"container\" [id]=\"data?.id\" [simpoAnimation]=\"styles?.animation\">\r\n <div><a href=\"\" style=\"text-decoration: none; color: #0267C1\">Home</a> / <span>{{ responseData
|
|
4678
|
+
], template: "<section class=\"total-container\" [id]=\"data?.id\" [simpoLayout]=\"styles?.layout\" simpoHover\r\n (hovering)=\"showEditTabs($event)\">\r\n <section class=\"container\" [id]=\"data?.id\" [simpoAnimation]=\"styles?.animation\">\r\n <div><a href=\"\" style=\"text-decoration: none; color: #0267C1\">Home</a> / <span>{{ responseData?.name | titlecase }}</span></div>\r\n <div class=\"row\">\r\n <div class=\"col-lg-6 col-12\">\r\n <div class=\"prod-img-block\">\r\n <div class=\"img-list\" *ngIf=\"screenWidth > 500\">\r\n <ng-container *ngFor=\"let img of responseData?.itemImages\">\r\n <img [src]=\"img.imgUrl\" alt=\"\" class=\"img\" (click)=\"changeImg(img.imgUrl)\">\r\n </ng-container>\r\n </div>\r\n <div class=\"item-img\">\r\n <img [src]=\"currentImg\" alt=\"\">\r\n </div>\r\n <div class=\"img-list\" *ngIf=\"screenWidth <= 500\">\r\n <ng-container *ngFor=\"let img of responseData?.itemImages\">\r\n <img [src]=\"img.imgUrl\" alt=\"\" class=\"img\" (click)=\"changeImg(img.imgUrl)\">\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-lg-6 col-12 product-detail\">\r\n <div class=\"heading-large\">{{responseData?.name}}</div>\r\n <div class=\"price\">\u20B9 {{responseData.price.sellingPrice}}</div>\r\n <div class=\"product-desc body-large\" *ngIf=\"responseData?.descriptor?.name\">{{responseData.descriptor.name}}</div>\r\n\r\n <div class=\"button-parent\">\r\n <div class=\"quantity\" *ngIf=\"responseData.quantity\">\r\n <div class=\"plus\" (click)=\"addToCart('SUBSTRACT')\">-</div>\r\n <div style=\"width: 50px;\" class=\"d-flex justify-content-center\">{{responseData.quantity}}</div>\r\n <!-- <input type=\"number\" (keyup)=\"changeQuantity(quantity.value)\" [value]=\"addedQuantity\" #quantity> -->\r\n <div class=\"minus\" (click)=\"addToCart('ADD')\">+</div>\r\n </div>\r\n <div *ngIf=\"!responseData.quantity\">\r\n <button class=\"send-btn\" simpoButtonDirective [id]=\"buttonId\" [buttonStyle]=\"button?.styles\" [color]=\"data?.styles?.background?.accentColor\" (click)=\"addToCart()\">{{data?.content?.button}}</button>\r\n </div>\r\n </div>\r\n\r\n <div class=\"product-sku\">\r\n <div *ngIf=\"responseData?.itemInventory\">SKU :\r\n {{responseData.itemInventory.openingStock}}</div>\r\n <div *ngIf=\"responseData?.itemCategorisation?.itemCategories\">Category : <span\r\n *ngFor=\"let cat of responseData?.itemCategorisation?.itemCategories;let idx = index\">{{cat.refName}} <ng-container *ngIf=\"(idx+1) != responseData?.itemCategorisation?.itemCategories?.length\">,</ng-container>\r\n </span></div>\r\n <div *ngIf=\"(responseData?.itemCategorisation?.productTags?.length || 0) > 0\">Tags : <span\r\n *ngFor=\"let tag of responseData?.itemCategorisation?.productTags\">{{tag.tagName}},\r\n </span></div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"row prod-desc\" *ngIf=\"false\">\r\n <div class=\"tab-group\">\r\n <div class=\"tab\">Description</div>\r\n </div>\r\n <div style=\"margin-top: 10px;\" class=\"body-large\" *ngIf=\"responseData.properties.description\">{{responseData.properties.description}}</div>\r\n </div>\r\n </section>\r\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\r\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\r\n </div>\r\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\r\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\r\n </div>\r\n</section>\r\n", styles: [".product-desc{display:flex}.row{margin-top:25px}.prod-img-block{display:flex;gap:5px}.img-list{display:flex;flex-direction:column;gap:5px}.img-list img{height:100px;width:100%;cursor:pointer}.item-img img{height:500px;width:460px}.price{font-weight:600;font-family:Poppins;font-size:20px;margin-top:15px}.product-desc{margin-top:15px}.button-parent{margin-top:15px;display:flex;gap:10px;align-items:center}.quantity{display:flex;border:2px solid #E6E6E6;align-items:center;gap:15px;height:47px;margin-top:1rem;border-radius:5px}.quantity .plus{position:relative;left:10px;font-size:18px;font-weight:600;cursor:pointer;color:#848484}.quantity .minus{position:relative;right:15px;font-size:18px;font-weight:600;color:#848484;cursor:pointer}.quantity input{width:60px;border:none;outline:none;text-align:center}.product-sku{margin-top:20px}.product-sku div{font-weight:400;font-size:15px;color:#848484;font-family:Poppins;margin-top:.5rem}.tab-group{display:flex;gap:10px;overflow-y:scroll}.tab{font-family:Poppins;font-weight:500;font-size:18px;color:#222;padding-bottom:2px;border-bottom:1px solid black}@media screen and (max-width: 500px){.item-img img{width:100%;height:448px}.prod-img-block{flex-direction:column}.img-list{flex-direction:row;overflow-y:scroll}.product-detail,.prod-desc{margin-top:20px}.product-img{height:220px}}.send-btn{font-size:16px!important;padding:1rem 2rem;display:inline-flex;align-items:center;justify-content:center;width:fit-content!important;margin-top:1rem}.body-large{color:#848484}.total-container{height:auto;position:relative;display:block!important}.hover_effect{position:absolute;width:100%;top:0;left:0;height:100%}\n"] }]
|
|
4655
4679
|
}], ctorParameters: () => [{ type: Object, decorators: [{
|
|
4656
4680
|
type: Inject,
|
|
4657
4681
|
args: [PLATFORM_ID]
|
|
@@ -4738,7 +4762,7 @@ class ProductListComponent extends BaseSection {
|
|
|
4738
4762
|
this.getAllCategory();
|
|
4739
4763
|
this.activatedRoute.queryParams.subscribe((qParam) => {
|
|
4740
4764
|
const categories = qParam["category"]?.split("+")?.map((category) => category.replaceAll("_", " ")).filter((category) => category.length > 0);
|
|
4741
|
-
const collections = qParam["
|
|
4765
|
+
const collections = qParam["collections"]?.split("+")?.map((collection) => collection.replaceAll("_", " ")).filter((collection) => collection.length > 0);
|
|
4742
4766
|
this.categories?.forEach((category) => category.status = categories?.includes(category?.option));
|
|
4743
4767
|
this.collections?.forEach((collection) => collection.status = collections?.includes(collection?.option));
|
|
4744
4768
|
this.searchTxt = qParam["searchTxt"];
|
|
@@ -4804,7 +4828,7 @@ class ProductListComponent extends BaseSection {
|
|
|
4804
4828
|
slug: collection.option.replaceAll(" ", "_")
|
|
4805
4829
|
};
|
|
4806
4830
|
}).forEach((collection) => selectedCollection += (collection.slug + "+"));
|
|
4807
|
-
this.router.navigate(['/'], { queryParams: { minPrice: this.pricingMin, maxPrice: this.pricingMax, category: selectedCategory,
|
|
4831
|
+
this.router.navigate(['/'], { queryParams: { minPrice: this.pricingMin, maxPrice: this.pricingMax, category: selectedCategory, collections: selectedCollection, sorting: sorting } });
|
|
4808
4832
|
}
|
|
4809
4833
|
filterItemList() {
|
|
4810
4834
|
const collectionIds = this.collections.filter((collection) => collection.status).map((collection) => collection.id);
|
|
@@ -4857,11 +4881,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
4857
4881
|
}] } });
|
|
4858
4882
|
|
|
4859
4883
|
class CartComponent extends BaseSection {
|
|
4860
|
-
constructor(_eventService) {
|
|
4884
|
+
constructor(_eventService, cartService) {
|
|
4861
4885
|
super();
|
|
4862
4886
|
this._eventService = _eventService;
|
|
4887
|
+
this.cartService = cartService;
|
|
4863
4888
|
}
|
|
4864
4889
|
ngOnInit() {
|
|
4890
|
+
this.responseData = UserCart;
|
|
4865
4891
|
this.styles = this.data?.styles;
|
|
4866
4892
|
}
|
|
4867
4893
|
addOrSubtractQuantity(vlaue) {
|
|
@@ -4874,8 +4900,21 @@ class CartComponent extends BaseSection {
|
|
|
4874
4900
|
proceedToListPage() {
|
|
4875
4901
|
this._eventService.redirectToPage.emit({ redirectTo: '/list' });
|
|
4876
4902
|
}
|
|
4877
|
-
|
|
4878
|
-
|
|
4903
|
+
removeItem(item) {
|
|
4904
|
+
item.quantity = 0;
|
|
4905
|
+
this.cartService.addItemToCart(item);
|
|
4906
|
+
}
|
|
4907
|
+
addToCart(item, type) {
|
|
4908
|
+
if (type == 'ADD') {
|
|
4909
|
+
item.quantity += 1;
|
|
4910
|
+
}
|
|
4911
|
+
else {
|
|
4912
|
+
item.quantity -= 1;
|
|
4913
|
+
}
|
|
4914
|
+
this.cartService.addItemToCart(item);
|
|
4915
|
+
}
|
|
4916
|
+
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.2.3", ngImport: i0, type: CartComponent, deps: [{ token: EventsService }, { token: CartService }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
4917
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.2.3", type: CartComponent, isStandalone: true, selector: "simpo-cart", inputs: { data: "data", responseData: "responseData", index: "index", edit: "edit", delete: "delete" }, usesInheritance: true, ngImport: i0, template: "<section class=\"total-container\" [id]=\"data?.id\" [simpoLayout]=\"styles?.layout\" simpoHover (hovering)=\"showEditTabs($event)\">\r\n <div class=\"cart-parent container\" *ngIf=\"(responseData?.orderedItems?.length || 0) > 0\" [id]=\"data?.id\" [simpoAnimation]=\"styles?.animation\">\r\n <div class=\"left-panel\">\r\n <div class=\"my-bag\">\r\n My Bag <span>({{responseData?.orderedItems?.length}} Items)</span>\r\n </div>\r\n <div class=\"cart-items\">\r\n <ng-container *ngFor=\"let item of responseData?.orderedItems; let idx = index\">\r\n <div class=\"row item-parent\">\r\n <div class=\"h-100\" style=\"padding: 0px; width: fit-content;\">\r\n <img class=\"product-img\" [src]=\"item.imgUrl\" alt=\"\">\r\n </div>\r\n <div class=\"col-md-6 h-100\">\r\n <div class=\"lh-23\">\r\n <div class=\"item-name heading-large\">{{item.itemName}}</div>\r\n <div class=\"price-with-tax\">\r\n ₹ {{item.price + item.itemTax}}\r\n </div>\r\n <div class=\"item-quantity\">\r\n <span class=\"cursor\" (click)=\"addToCart(item, 'ADD')\">-</span>\r\n <span>{{item.quantity}}</span>\r\n <span class=\"cursor\" (click)=\"addToCart(item, 'SUBSTRACT')\">+</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-4 position-relative\" style=\"margin-left: auto;\">\r\n <div class=\"item-price\">₹ {{(item.price + item.itemTax) * item.quantity}}</div>\r\n <div>\r\n <mat-icon class=\"delete-item\" (click)=\"removeItem(item)\">delete</mat-icon>\r\n </div>\r\n </div>\r\n </div>\r\n <hr *ngIf=\"responseData?.orderedItems?.length != (idx +1)\">\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div class=\"right-panel\">\r\n <div class=\"my-bag\">\r\n Price Details\r\n </div>\r\n <div class=\"price-details\">\r\n <div class=\"price-parent-block\" *ngIf=\"responseData?.billdetails?.totalNetValue\">\r\n <div class=\"price-type\">Total Price</div>\r\n <div class=\"price-value\">\u20B9 {{responseData.billdetails.totalNetValue}}</div>\r\n </div>\r\n <div class=\"price-parent-block\" *ngIf=\"responseData?.billdetails?.totalTax\">\r\n <div class=\"price-type\">Total Tax</div>\r\n <div class=\"price-value\">\u20B9 {{responseData?.billdetails?.totalTax}}</div>\r\n </div>\r\n <div class=\"price-parent-block\"\r\n *ngIf=\"responseData?.billdetails?.deliveryCharges && responseData.billdetails.deliveryCharges > 0\">\r\n <div class=\"price-type\">Delivery Charge</div>\r\n <div class=\"price-value\">\u20B9 {{responseData.billdetails.deliveryCharges}}</div>\r\n </div>\r\n <hr>\r\n <div class=\"price-parent-block\" *ngIf=\"responseData?.totalAmount\">\r\n <div class=\"price-type\" style=\"color: black;font-weight: 600;\">Total Amount</div>\r\n <div class=\"price-value\" style=\"font-weight: 600;\">\u20B9 {{responseData.totalAmount}}</div>\r\n </div>\r\n\r\n <div class=\"button-parent\">\r\n <div *ngFor=\"let button of data?.action?.buttons;let i = index\">\r\n <button class=\"btn\" (click)=\"i == 0 ? proceedToCheckout() : proceedToListPage()\" simpoButtonDirective [id]=\"data?.id+button.id\" [buttonStyle]=\"button?.styles\"\r\n [color]=\"styles?.background?.accentColor\">{{button?.content?.label}}</button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <section class=\"empty-cart\" *ngIf=\"(responseData?.orderedItems?.length || 0) == 0\">\r\n <div>\r\n <div class=\"cart-image\">\r\n <img src=\"https://prod-simpo.s3.ap-south-1.amazonaws.com/prod-images/107213c1716543334040empty-cart.png\" alt=\"\">\r\n </div>\r\n <div class=\"cart-text\">\r\n <div class=\"heading-medium d-flex justify-content-center\">\r\n Your cart is empty\r\n </div>\r\n <div class=\"description d-flex mt-4\">\r\n Looks like you have not added anything to your cart. Go ahead & explore top categories.\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\r\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\r\n </div>\r\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\r\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\r\n </div>\r\n\r\n</section>\r\n", styles: [".cart-parent{display:flex;margin-top:15px;gap:20px}.left-panel{width:65%}.cart-items{padding:10px;margin-top:10px;margin-bottom:15px;border-radius:5px;box-shadow:0 0 1px #28293d14,0 0 2px #60617029}.right-panel{width:35%}.my-bag{font-size:16px;font-weight:600;color:#000}.my-bag span{color:#939393}.item-parent{margin:10px 0}.lh-23{line-height:23px}.item-name{color:#141514;font-size:16px;line-height:30px;font-weight:600}.price-with-tax{font-weight:400;font-size:16px;color:#626262}.item-sku{font-weight:400;font-size:14px;color:#626262}.item-price{display:flex;justify-content:flex-end;font-weight:600;font-size:16px;color:#141514}.product-img{border-radius:5px;height:95px;width:100px;padding:0}.quantity-box{display:flex;gap:5px;align-items:center;border:1px solid #E8E8E8;width:45px;height:22px}.quantity-box input{outline:none;text-align:center;border:none;width:30px;height:100%}.quantity-box .plus{font-size:20px;position:relative;top:-3px;font-weight:500}.quantity-box .minus{font-size:30px;position:relative;top:-3px;font-weight:500}.delete-item{color:#626262;cursor:pointer}.item-quantity{margin-top:5px;display:flex;width:90px;border:1px solid lightgray;justify-content:space-between;align-items:center;padding:5px 10px;border-radius:3px}.coupon{display:flex;justify-content:space-between;border:1px solid #E8E8E8;border-radius:5px;padding:10px;margin-top:10px}.apply-coupon{font-weight:500;color:#626262;font-size:15px}.coupon-desc{color:#939393;font-size:12px;font-weight:500}.apply-coupon-btn{color:#0267c1;font-size:16px;font-weight:600}.price-details{padding:10px;margin-top:10px;border-radius:5px;box-shadow:0 0 1px #28293d14,0 0 2px #60617029;margin-bottom:15px}.price-parent-block{display:flex;justify-content:space-between;margin-top:5px}.price-type{font-weight:400;font-size:16px;color:#434443}.price-value{font-weight:500;font-size:18px;color:#141514}.button-parent{margin-top:20px;display:flex;flex-direction:column;gap:10px}hr{border:1px solid #E8E8E8}.btn{height:40px;font-size:16px!important}.cursor{cursor:pointer}.delete-item{text-align:right;position:absolute;right:16px;bottom:10px}.quantity{display:flex;border:2px solid #E6E6E6;align-items:center;gap:15px;height:47px;margin-top:1rem;border-radius:5px}.quantity .plus{position:relative;left:10px;font-size:18px;font-weight:600;cursor:pointer;color:#848484}.quantity .minus{position:relative;right:15px;font-size:18px;font-weight:600;color:#848484;cursor:pointer}.quantity input{width:60px;border:none;outline:none;text-align:center}.total-container{height:auto;position:relative;display:block!important}.hover_effect{position:absolute;width:100%;top:0;left:0;height:100%}.cart-image{width:13%;display:flex;margin-right:auto;margin-left:auto}.cart-image img{width:100%}.heading-medium{font-weight:600;color:#000}.description{font-size:18px;color:#7f7676;margin-left:auto;margin-right:auto;width:30%;text-align:center}@media screen and (max-width: 475px){.cart-parent{flex-direction:column}.left-panel,.right-panel{width:100%}.cart-image{width:42%}.description{width:84%}.heading-medium{font-size:28px}}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: SimpoComponentModule }, { kind: "component", type: HoverElementsComponent, selector: "simpo-hover-elements", inputs: ["data", "index", "editOptions", "isMerged"], outputs: ["edit"] }, { kind: "component", type: DeleteHoverElementComponent, selector: "simpo-delete-hover-element", inputs: ["index", "data"], outputs: ["edit"] }, { kind: "directive", type:
|
|
4879
4918
|
//DIRECTIVE
|
|
4880
4919
|
ButtonDirectiveDirective, selector: "[simpoButtonDirective]", inputs: ["buttonStyle", "color", "scrollValue"] }, { kind: "directive", type: AnimationDirective, selector: "[simpoAnimation]", inputs: ["simpoAnimation"] }, { kind: "directive", type: ContentFitDirective, selector: "[simpoLayout]", inputs: ["simpoLayout"] }, { kind: "directive", type: HoverDirective, selector: "[simpoHover]", outputs: ["hovering"] }] }); }
|
|
4881
4920
|
}
|
|
@@ -4889,8 +4928,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.2.3", ngImpor
|
|
|
4889
4928
|
AnimationDirective,
|
|
4890
4929
|
ContentFitDirective,
|
|
4891
4930
|
HoverDirective
|
|
4892
|
-
], template: "<section class=\"total-container\" [id]=\"data?.id\" [simpoLayout]=\"styles?.layout\" simpoHover (hovering)=\"showEditTabs($event)\">\r\n <div class=\"cart-parent container\" *ngIf=\"(responseData?.orderedItems?.length || 0) > 0\" [id]=\"data?.id\" [simpoAnimation]=\"styles?.animation\">\r\n <div class=\"left-panel\">\r\n <div class=\"my-bag\">\r\n My Bag <span>({{responseData?.orderedItems?.length}} Items)</span>\r\n </div>\r\n <div class=\"cart-items\">\r\n <ng-container *ngFor=\"let item of responseData?.orderedItems\">\r\n <div class=\"row item-parent\">\r\n <div class=\"
|
|
4893
|
-
}], ctorParameters: () => [{ type: EventsService }], propDecorators: { data: [{
|
|
4931
|
+
], template: "<section class=\"total-container\" [id]=\"data?.id\" [simpoLayout]=\"styles?.layout\" simpoHover (hovering)=\"showEditTabs($event)\">\r\n <div class=\"cart-parent container\" *ngIf=\"(responseData?.orderedItems?.length || 0) > 0\" [id]=\"data?.id\" [simpoAnimation]=\"styles?.animation\">\r\n <div class=\"left-panel\">\r\n <div class=\"my-bag\">\r\n My Bag <span>({{responseData?.orderedItems?.length}} Items)</span>\r\n </div>\r\n <div class=\"cart-items\">\r\n <ng-container *ngFor=\"let item of responseData?.orderedItems; let idx = index\">\r\n <div class=\"row item-parent\">\r\n <div class=\"h-100\" style=\"padding: 0px; width: fit-content;\">\r\n <img class=\"product-img\" [src]=\"item.imgUrl\" alt=\"\">\r\n </div>\r\n <div class=\"col-md-6 h-100\">\r\n <div class=\"lh-23\">\r\n <div class=\"item-name heading-large\">{{item.itemName}}</div>\r\n <div class=\"price-with-tax\">\r\n ₹ {{item.price + item.itemTax}}\r\n </div>\r\n <div class=\"item-quantity\">\r\n <span class=\"cursor\" (click)=\"addToCart(item, 'ADD')\">-</span>\r\n <span>{{item.quantity}}</span>\r\n <span class=\"cursor\" (click)=\"addToCart(item, 'SUBSTRACT')\">+</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-4 position-relative\" style=\"margin-left: auto;\">\r\n <div class=\"item-price\">₹ {{(item.price + item.itemTax) * item.quantity}}</div>\r\n <div>\r\n <mat-icon class=\"delete-item\" (click)=\"removeItem(item)\">delete</mat-icon>\r\n </div>\r\n </div>\r\n </div>\r\n <hr *ngIf=\"responseData?.orderedItems?.length != (idx +1)\">\r\n </ng-container>\r\n </div>\r\n </div>\r\n <div class=\"right-panel\">\r\n <div class=\"my-bag\">\r\n Price Details\r\n </div>\r\n <div class=\"price-details\">\r\n <div class=\"price-parent-block\" *ngIf=\"responseData?.billdetails?.totalNetValue\">\r\n <div class=\"price-type\">Total Price</div>\r\n <div class=\"price-value\">\u20B9 {{responseData.billdetails.totalNetValue}}</div>\r\n </div>\r\n <div class=\"price-parent-block\" *ngIf=\"responseData?.billdetails?.totalTax\">\r\n <div class=\"price-type\">Total Tax</div>\r\n <div class=\"price-value\">\u20B9 {{responseData?.billdetails?.totalTax}}</div>\r\n </div>\r\n <div class=\"price-parent-block\"\r\n *ngIf=\"responseData?.billdetails?.deliveryCharges && responseData.billdetails.deliveryCharges > 0\">\r\n <div class=\"price-type\">Delivery Charge</div>\r\n <div class=\"price-value\">\u20B9 {{responseData.billdetails.deliveryCharges}}</div>\r\n </div>\r\n <hr>\r\n <div class=\"price-parent-block\" *ngIf=\"responseData?.totalAmount\">\r\n <div class=\"price-type\" style=\"color: black;font-weight: 600;\">Total Amount</div>\r\n <div class=\"price-value\" style=\"font-weight: 600;\">\u20B9 {{responseData.totalAmount}}</div>\r\n </div>\r\n\r\n <div class=\"button-parent\">\r\n <div *ngFor=\"let button of data?.action?.buttons;let i = index\">\r\n <button class=\"btn\" (click)=\"i == 0 ? proceedToCheckout() : proceedToListPage()\" simpoButtonDirective [id]=\"data?.id+button.id\" [buttonStyle]=\"button?.styles\"\r\n [color]=\"styles?.background?.accentColor\">{{button?.content?.label}}</button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <section class=\"empty-cart\" *ngIf=\"(responseData?.orderedItems?.length || 0) == 0\">\r\n <div>\r\n <div class=\"cart-image\">\r\n <img src=\"https://prod-simpo.s3.ap-south-1.amazonaws.com/prod-images/107213c1716543334040empty-cart.png\" alt=\"\">\r\n </div>\r\n <div class=\"cart-text\">\r\n <div class=\"heading-medium d-flex justify-content-center\">\r\n Your cart is empty\r\n </div>\r\n <div class=\"description d-flex mt-4\">\r\n Looks like you have not added anything to your cart. Go ahead & explore top categories.\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n <div [ngClass]=\"{'hover_effect': edit}\" *ngIf=\"showEditors\">\r\n <simpo-hover-elements [data]=\"data\" [index]=\"index\" [editOptions]=\"edit\"></simpo-hover-elements>\r\n </div>\r\n <div *ngIf=\"showDelete\" [ngClass]=\"{'hover_effect': delete}\">\r\n <simpo-delete-hover-element [data]=\"data\" [index]=\"index\"></simpo-delete-hover-element>\r\n </div>\r\n\r\n</section>\r\n", styles: [".cart-parent{display:flex;margin-top:15px;gap:20px}.left-panel{width:65%}.cart-items{padding:10px;margin-top:10px;margin-bottom:15px;border-radius:5px;box-shadow:0 0 1px #28293d14,0 0 2px #60617029}.right-panel{width:35%}.my-bag{font-size:16px;font-weight:600;color:#000}.my-bag span{color:#939393}.item-parent{margin:10px 0}.lh-23{line-height:23px}.item-name{color:#141514;font-size:16px;line-height:30px;font-weight:600}.price-with-tax{font-weight:400;font-size:16px;color:#626262}.item-sku{font-weight:400;font-size:14px;color:#626262}.item-price{display:flex;justify-content:flex-end;font-weight:600;font-size:16px;color:#141514}.product-img{border-radius:5px;height:95px;width:100px;padding:0}.quantity-box{display:flex;gap:5px;align-items:center;border:1px solid #E8E8E8;width:45px;height:22px}.quantity-box input{outline:none;text-align:center;border:none;width:30px;height:100%}.quantity-box .plus{font-size:20px;position:relative;top:-3px;font-weight:500}.quantity-box .minus{font-size:30px;position:relative;top:-3px;font-weight:500}.delete-item{color:#626262;cursor:pointer}.item-quantity{margin-top:5px;display:flex;width:90px;border:1px solid lightgray;justify-content:space-between;align-items:center;padding:5px 10px;border-radius:3px}.coupon{display:flex;justify-content:space-between;border:1px solid #E8E8E8;border-radius:5px;padding:10px;margin-top:10px}.apply-coupon{font-weight:500;color:#626262;font-size:15px}.coupon-desc{color:#939393;font-size:12px;font-weight:500}.apply-coupon-btn{color:#0267c1;font-size:16px;font-weight:600}.price-details{padding:10px;margin-top:10px;border-radius:5px;box-shadow:0 0 1px #28293d14,0 0 2px #60617029;margin-bottom:15px}.price-parent-block{display:flex;justify-content:space-between;margin-top:5px}.price-type{font-weight:400;font-size:16px;color:#434443}.price-value{font-weight:500;font-size:18px;color:#141514}.button-parent{margin-top:20px;display:flex;flex-direction:column;gap:10px}hr{border:1px solid #E8E8E8}.btn{height:40px;font-size:16px!important}.cursor{cursor:pointer}.delete-item{text-align:right;position:absolute;right:16px;bottom:10px}.quantity{display:flex;border:2px solid #E6E6E6;align-items:center;gap:15px;height:47px;margin-top:1rem;border-radius:5px}.quantity .plus{position:relative;left:10px;font-size:18px;font-weight:600;cursor:pointer;color:#848484}.quantity .minus{position:relative;right:15px;font-size:18px;font-weight:600;color:#848484;cursor:pointer}.quantity input{width:60px;border:none;outline:none;text-align:center}.total-container{height:auto;position:relative;display:block!important}.hover_effect{position:absolute;width:100%;top:0;left:0;height:100%}.cart-image{width:13%;display:flex;margin-right:auto;margin-left:auto}.cart-image img{width:100%}.heading-medium{font-weight:600;color:#000}.description{font-size:18px;color:#7f7676;margin-left:auto;margin-right:auto;width:30%;text-align:center}@media screen and (max-width: 475px){.cart-parent{flex-direction:column}.left-panel,.right-panel{width:100%}.cart-image{width:42%}.description{width:84%}.heading-medium{font-size:28px}}\n"] }]
|
|
4932
|
+
}], ctorParameters: () => [{ type: EventsService }, { type: CartService }], propDecorators: { data: [{
|
|
4894
4933
|
type: Input
|
|
4895
4934
|
}], responseData: [{
|
|
4896
4935
|
type: Input
|