tango-app-ui-store-builder 1.2.9 → 1.2.10

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.
Files changed (26) hide show
  1. package/esm2022/lib/components/manage-store-plano/manage-store-plano.component.mjs +34 -12
  2. package/esm2022/lib/components/manage-store-plano/verification-feedback/zone-editable-fixture/zone-editable-fixture.component.mjs +90 -8
  3. package/esm2022/lib/components/manage-store-plano/zone-verification-feedback/zone-verification-feedback.component.mjs +3 -3
  4. package/esm2022/lib/components/onboard-store-plano/onboard-store-plano.component.mjs +17 -1
  5. package/esm2022/lib/components/plano-tools/allow-edit/allow-edit.component.mjs +14 -4
  6. package/esm2022/lib/components/plano-tools/delete-floor/delete-floor.component.mjs +252 -0
  7. package/esm2022/lib/components/plano-tools/tools-parent/tools-parent.component.mjs +3 -3
  8. package/esm2022/lib/components/planogram/plano-overview/plano-overview.component.mjs +9 -2
  9. package/esm2022/lib/components/popups/publish-plano-modal/publish-plano-modal.component.mjs +10 -4
  10. package/esm2022/lib/components/store-plano/store-plano.component.mjs +9 -2
  11. package/esm2022/lib/services/store-builder.service.mjs +12 -3
  12. package/esm2022/lib/tango-store-builder-routing.module.mjs +6 -1
  13. package/esm2022/lib/tango-store-builder.module.mjs +4 -1
  14. package/fesm2022/tango-app-ui-store-builder.mjs +439 -32
  15. package/fesm2022/tango-app-ui-store-builder.mjs.map +1 -1
  16. package/lib/components/manage-plano/rollout-table/rollout-table.component.d.ts +4 -4
  17. package/lib/components/manage-plano/verification-table/verification-table.component.d.ts +6 -6
  18. package/lib/components/manage-store-plano/manage-store-plano.component.d.ts +3 -1
  19. package/lib/components/manage-store-plano/verification-feedback/zone-editable-fixture/zone-editable-fixture.component.d.ts +14 -1
  20. package/lib/components/onboard-store-plano/onboard-store-plano.component.d.ts +2 -0
  21. package/lib/components/plano-tools/allow-edit/allow-edit.component.d.ts +2 -0
  22. package/lib/components/plano-tools/delete-floor/delete-floor.component.d.ts +85 -0
  23. package/lib/components/popups/publish-plano-modal/publish-plano-modal.component.d.ts +2 -0
  24. package/lib/services/store-builder.service.d.ts +15 -2
  25. package/lib/tango-store-builder.module.d.ts +59 -58
  26. package/package.json +1 -1
@@ -5,17 +5,23 @@ import * as i0 from "@angular/core";
5
5
  import * as i1 from "@ng-bootstrap/ng-bootstrap";
6
6
  import * as i2 from "@angular/common";
7
7
  import * as i3 from "@angular/forms";
8
+ const CURRENT_PLANO_NAME = 'Current Plano';
8
9
  export class PublishPlanoModalComponent {
9
10
  activeModal;
10
11
  datePipe;
11
12
  revisionName = '';
12
13
  publishAsDraft = false;
14
+ draftDefaultName = '';
13
15
  constructor(activeModal, datePipe) {
14
16
  this.activeModal = activeModal;
15
17
  this.datePipe = datePipe;
16
18
  }
17
19
  ngOnInit() {
18
- this.revisionName = `Revision: ${this.datePipe.transform(new Date(), 'MMM dd, yyyy, h:mm:ss a')}`;
20
+ this.draftDefaultName = `Revision: ${this.datePipe.transform(new Date(), 'MMM dd, yyyy, h:mm:ss a')}`;
21
+ this.revisionName = CURRENT_PLANO_NAME;
22
+ }
23
+ onDraftToggle() {
24
+ this.revisionName = this.publishAsDraft ? this.draftDefaultName : CURRENT_PLANO_NAME;
19
25
  }
20
26
  onCancel() {
21
27
  this.activeModal.dismiss();
@@ -27,10 +33,10 @@ export class PublishPlanoModalComponent {
27
33
  });
28
34
  }
29
35
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PublishPlanoModalComponent, deps: [{ token: i1.NgbActiveModal }, { token: i2.DatePipe }], target: i0.ɵɵFactoryTarget.Component });
30
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: PublishPlanoModalComponent, isStandalone: true, selector: "app-publish-plano-modal", providers: [DatePipe], ngImport: i0, template: "<div class=\"modal-wrapper\">\r\n <h3 class=\"mb-4\">Publish Planogram</h3>\r\n\r\n <div class=\"mb-3\">\r\n <label class=\"form-label fw-semibold\">Revision name</label>\r\n <input type=\"text\" class=\"form-control\" [(ngModel)]=\"revisionName\" />\r\n </div>\r\n\r\n <p class=\"description-text\">\r\n You're about to publish this planogram. It will be saved as a new revision\r\n and set as the current planogram. Do you want to continue?\r\n </p>\r\n\r\n <div class=\"draft-option\">\r\n <label class=\"d-flex align-items-start gap-2\">\r\n <input\r\n type=\"checkbox\"\r\n class=\"form-check-input mt-1\"\r\n [(ngModel)]=\"publishAsDraft\"\r\n />\r\n <div>\r\n <span class=\"fw-semibold\">Publish as draft</span>\r\n <p class=\"text-muted mb-0 small\">\r\n Saves this as a revision without setting it as the current planogram.\r\n </p>\r\n </div>\r\n </label>\r\n </div>\r\n\r\n <div class=\"modal-actions mt-4\">\r\n <button type=\"button\" class=\"btn btn-outline\" (click)=\"onCancel()\">\r\n Cancel\r\n </button>\r\n <button type=\"button\" class=\"btn btn-primary px-4\" (click)=\"onPublish()\">\r\n Publish\r\n </button>\r\n </div>\r\n</div>\r\n", styles: [".modal-wrapper{padding:24px}.modal-actions{display:flex;justify-content:end;gap:12px}::ng-deep .modal-content{border-radius:12px!important}.description-text{color:#475467;font-size:14px;line-height:1.5}.draft-option .form-check-input{min-width:18px;min-height:18px}.draft-option .small{font-size:13px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
36
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.12", type: PublishPlanoModalComponent, isStandalone: true, selector: "app-publish-plano-modal", providers: [DatePipe], ngImport: i0, template: "<div class=\"modal-wrapper\">\r\n <h3 class=\"mb-4\">Publish Planogram</h3>\r\n\r\n <div class=\"mb-3\">\r\n <label class=\"form-label fw-semibold\">Revision name</label>\r\n <input\r\n type=\"text\"\r\n class=\"form-control\"\r\n [(ngModel)]=\"revisionName\"\r\n [readonly]=\"!publishAsDraft\"\r\n />\r\n </div>\r\n\r\n <p class=\"description-text\">\r\n You're about to publish this planogram. It will be saved as a new revision\r\n and set as the current planogram. Do you want to continue?\r\n </p>\r\n\r\n <div class=\"draft-option\">\r\n <label class=\"d-flex align-items-start gap-2\">\r\n <input\r\n type=\"checkbox\"\r\n class=\"form-check-input mt-1\"\r\n [(ngModel)]=\"publishAsDraft\"\r\n (ngModelChange)=\"onDraftToggle()\"\r\n />\r\n <div>\r\n <span class=\"fw-semibold\">Publish as draft</span>\r\n <p class=\"text-muted mb-0 small\">\r\n Saves this as a revision without setting it as the current planogram.\r\n </p>\r\n </div>\r\n </label>\r\n </div>\r\n\r\n <div class=\"modal-actions mt-4\">\r\n <button type=\"button\" class=\"btn btn-outline\" (click)=\"onCancel()\">\r\n Cancel\r\n </button>\r\n <button type=\"button\" class=\"btn btn-primary px-4\" (click)=\"onPublish()\">\r\n Publish\r\n </button>\r\n </div>\r\n</div>\r\n", styles: [".modal-wrapper{padding:24px}.modal-actions{display:flex;justify-content:end;gap:12px}::ng-deep .modal-content{border-radius:12px!important}.description-text{color:#475467;font-size:14px;line-height:1.5}.draft-option .form-check-input{min-width:18px;min-height:18px}.draft-option .small{font-size:13px}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3.CheckboxControlValueAccessor, selector: "input[type=checkbox][formControlName],input[type=checkbox][formControl],input[type=checkbox][ngModel]" }, { kind: "directive", type: i3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
31
37
  }
32
38
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PublishPlanoModalComponent, decorators: [{
33
39
  type: Component,
34
- args: [{ selector: 'app-publish-plano-modal', standalone: true, imports: [CommonModule, FormsModule], providers: [DatePipe], template: "<div class=\"modal-wrapper\">\r\n <h3 class=\"mb-4\">Publish Planogram</h3>\r\n\r\n <div class=\"mb-3\">\r\n <label class=\"form-label fw-semibold\">Revision name</label>\r\n <input type=\"text\" class=\"form-control\" [(ngModel)]=\"revisionName\" />\r\n </div>\r\n\r\n <p class=\"description-text\">\r\n You're about to publish this planogram. It will be saved as a new revision\r\n and set as the current planogram. Do you want to continue?\r\n </p>\r\n\r\n <div class=\"draft-option\">\r\n <label class=\"d-flex align-items-start gap-2\">\r\n <input\r\n type=\"checkbox\"\r\n class=\"form-check-input mt-1\"\r\n [(ngModel)]=\"publishAsDraft\"\r\n />\r\n <div>\r\n <span class=\"fw-semibold\">Publish as draft</span>\r\n <p class=\"text-muted mb-0 small\">\r\n Saves this as a revision without setting it as the current planogram.\r\n </p>\r\n </div>\r\n </label>\r\n </div>\r\n\r\n <div class=\"modal-actions mt-4\">\r\n <button type=\"button\" class=\"btn btn-outline\" (click)=\"onCancel()\">\r\n Cancel\r\n </button>\r\n <button type=\"button\" class=\"btn btn-primary px-4\" (click)=\"onPublish()\">\r\n Publish\r\n </button>\r\n </div>\r\n</div>\r\n", styles: [".modal-wrapper{padding:24px}.modal-actions{display:flex;justify-content:end;gap:12px}::ng-deep .modal-content{border-radius:12px!important}.description-text{color:#475467;font-size:14px;line-height:1.5}.draft-option .form-check-input{min-width:18px;min-height:18px}.draft-option .small{font-size:13px}\n"] }]
40
+ args: [{ selector: 'app-publish-plano-modal', standalone: true, imports: [CommonModule, FormsModule], providers: [DatePipe], template: "<div class=\"modal-wrapper\">\r\n <h3 class=\"mb-4\">Publish Planogram</h3>\r\n\r\n <div class=\"mb-3\">\r\n <label class=\"form-label fw-semibold\">Revision name</label>\r\n <input\r\n type=\"text\"\r\n class=\"form-control\"\r\n [(ngModel)]=\"revisionName\"\r\n [readonly]=\"!publishAsDraft\"\r\n />\r\n </div>\r\n\r\n <p class=\"description-text\">\r\n You're about to publish this planogram. It will be saved as a new revision\r\n and set as the current planogram. Do you want to continue?\r\n </p>\r\n\r\n <div class=\"draft-option\">\r\n <label class=\"d-flex align-items-start gap-2\">\r\n <input\r\n type=\"checkbox\"\r\n class=\"form-check-input mt-1\"\r\n [(ngModel)]=\"publishAsDraft\"\r\n (ngModelChange)=\"onDraftToggle()\"\r\n />\r\n <div>\r\n <span class=\"fw-semibold\">Publish as draft</span>\r\n <p class=\"text-muted mb-0 small\">\r\n Saves this as a revision without setting it as the current planogram.\r\n </p>\r\n </div>\r\n </label>\r\n </div>\r\n\r\n <div class=\"modal-actions mt-4\">\r\n <button type=\"button\" class=\"btn btn-outline\" (click)=\"onCancel()\">\r\n Cancel\r\n </button>\r\n <button type=\"button\" class=\"btn btn-primary px-4\" (click)=\"onPublish()\">\r\n Publish\r\n </button>\r\n </div>\r\n</div>\r\n", styles: [".modal-wrapper{padding:24px}.modal-actions{display:flex;justify-content:end;gap:12px}::ng-deep .modal-content{border-radius:12px!important}.description-text{color:#475467;font-size:14px;line-height:1.5}.draft-option .form-check-input{min-width:18px;min-height:18px}.draft-option .small{font-size:13px}\n"] }]
35
41
  }], ctorParameters: () => [{ type: i1.NgbActiveModal }, { type: i2.DatePipe }] });
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGlzaC1wbGFuby1tb2RhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1zdG9yZS1idWlsZGVyL3NyYy9saWIvY29tcG9uZW50cy9wb3B1cHMvcHVibGlzaC1wbGFuby1tb2RhbC9wdWJsaXNoLXBsYW5vLW1vZGFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLXN0b3JlLWJ1aWxkZXIvc3JjL2xpYi9jb21wb25lbnRzL3BvcHVwcy9wdWJsaXNoLXBsYW5vLW1vZGFsL3B1Ymxpc2gtcGxhbm8tbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFXN0MsTUFBTSxPQUFPLDBCQUEwQjtJQUszQjtJQUNBO0lBTFYsWUFBWSxHQUFHLEVBQUUsQ0FBQztJQUNsQixjQUFjLEdBQUcsS0FBSyxDQUFDO0lBRXZCLFlBQ1UsV0FBMkIsRUFDM0IsUUFBa0I7UUFEbEIsZ0JBQVcsR0FBWCxXQUFXLENBQWdCO1FBQzNCLGFBQVEsR0FBUixRQUFRLENBQVU7SUFDekIsQ0FBQztJQUVKLFFBQVE7UUFDTixJQUFJLENBQUMsWUFBWSxHQUFHLGFBQWEsSUFBSSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsSUFBSSxJQUFJLEVBQUUsRUFBRSx5QkFBeUIsQ0FBQyxFQUFFLENBQUM7SUFDcEcsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sRUFBRSxDQUFDO0lBQzdCLENBQUM7SUFFRCxTQUFTO1FBQ1AsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUM7WUFDckIsWUFBWSxFQUFFLElBQUksQ0FBQyxZQUFZO1lBQy9CLGNBQWMsRUFBRSxJQUFJLENBQUMsY0FBYztTQUNwQyxDQUFDLENBQUM7SUFDTCxDQUFDO3dHQXRCVSwwQkFBMEI7NEZBQTFCLDBCQUEwQixzRUFKMUIsQ0FBQyxRQUFRLENBQUMsMEJDVHZCLCt2Q0FzQ0Esd1dEOUJZLFlBQVksOEJBQUUsV0FBVzs7NEZBS3hCLDBCQUEwQjtrQkFSdEMsU0FBUzsrQkFDRSx5QkFBeUIsY0FDdkIsSUFBSSxXQUNQLENBQUMsWUFBWSxFQUFFLFdBQVcsQ0FBQyxhQUN6QixDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IENvbW1vbk1vZHVsZSwgRGF0ZVBpcGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xyXG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHsgTmdiQWN0aXZlTW9kYWwgfSBmcm9tICdAbmctYm9vdHN0cmFwL25nLWJvb3RzdHJhcCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FwcC1wdWJsaXNoLXBsYW5vLW1vZGFsJyxcclxuICBzdGFuZGFsb25lOiB0cnVlLFxyXG4gIGltcG9ydHM6IFtDb21tb25Nb2R1bGUsIEZvcm1zTW9kdWxlXSxcclxuICBwcm92aWRlcnM6IFtEYXRlUGlwZV0sXHJcbiAgdGVtcGxhdGVVcmw6ICcuL3B1Ymxpc2gtcGxhbm8tbW9kYWwuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsOiAnLi9wdWJsaXNoLXBsYW5vLW1vZGFsLmNvbXBvbmVudC5zY3NzJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFB1Ymxpc2hQbGFub01vZGFsQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcclxuICByZXZpc2lvbk5hbWUgPSAnJztcclxuICBwdWJsaXNoQXNEcmFmdCA9IGZhbHNlO1xyXG5cclxuICBjb25zdHJ1Y3RvcihcclxuICAgIHByaXZhdGUgYWN0aXZlTW9kYWw6IE5nYkFjdGl2ZU1vZGFsLFxyXG4gICAgcHJpdmF0ZSBkYXRlUGlwZTogRGF0ZVBpcGUsXHJcbiAgKSB7fVxyXG5cclxuICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgIHRoaXMucmV2aXNpb25OYW1lID0gYFJldmlzaW9uOiAke3RoaXMuZGF0ZVBpcGUudHJhbnNmb3JtKG5ldyBEYXRlKCksICdNTU0gZGQsIHl5eXksIGg6bW06c3MgYScpfWA7XHJcbiAgfVxyXG5cclxuICBvbkNhbmNlbCgpIHtcclxuICAgIHRoaXMuYWN0aXZlTW9kYWwuZGlzbWlzcygpO1xyXG4gIH1cclxuXHJcbiAgb25QdWJsaXNoKCkge1xyXG4gICAgdGhpcy5hY3RpdmVNb2RhbC5jbG9zZSh7XHJcbiAgICAgIHJldmlzaW9uTmFtZTogdGhpcy5yZXZpc2lvbk5hbWUsXHJcbiAgICAgIHB1Ymxpc2hBc0RyYWZ0OiB0aGlzLnB1Ymxpc2hBc0RyYWZ0LFxyXG4gICAgfSk7XHJcbiAgfVxyXG59XHJcbiIsIjxkaXYgY2xhc3M9XCJtb2RhbC13cmFwcGVyXCI+XHJcbiAgPGgzIGNsYXNzPVwibWItNFwiPlB1Ymxpc2ggUGxhbm9ncmFtPC9oMz5cclxuXHJcbiAgPGRpdiBjbGFzcz1cIm1iLTNcIj5cclxuICAgIDxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWwgZnctc2VtaWJvbGRcIj5SZXZpc2lvbiBuYW1lPC9sYWJlbD5cclxuICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgWyhuZ01vZGVsKV09XCJyZXZpc2lvbk5hbWVcIiAvPlxyXG4gIDwvZGl2PlxyXG5cclxuICA8cCBjbGFzcz1cImRlc2NyaXB0aW9uLXRleHRcIj5cclxuICAgIFlvdSdyZSBhYm91dCB0byBwdWJsaXNoIHRoaXMgcGxhbm9ncmFtLiBJdCB3aWxsIGJlIHNhdmVkIGFzIGEgbmV3IHJldmlzaW9uXHJcbiAgICBhbmQgc2V0IGFzIHRoZSBjdXJyZW50IHBsYW5vZ3JhbS4gRG8geW91IHdhbnQgdG8gY29udGludWU/XHJcbiAgPC9wPlxyXG5cclxuICA8ZGl2IGNsYXNzPVwiZHJhZnQtb3B0aW9uXCI+XHJcbiAgICA8bGFiZWwgY2xhc3M9XCJkLWZsZXggYWxpZ24taXRlbXMtc3RhcnQgZ2FwLTJcIj5cclxuICAgICAgPGlucHV0XHJcbiAgICAgICAgdHlwZT1cImNoZWNrYm94XCJcclxuICAgICAgICBjbGFzcz1cImZvcm0tY2hlY2staW5wdXQgbXQtMVwiXHJcbiAgICAgICAgWyhuZ01vZGVsKV09XCJwdWJsaXNoQXNEcmFmdFwiXHJcbiAgICAgIC8+XHJcbiAgICAgIDxkaXY+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJmdy1zZW1pYm9sZFwiPlB1Ymxpc2ggYXMgZHJhZnQ8L3NwYW4+XHJcbiAgICAgICAgPHAgY2xhc3M9XCJ0ZXh0LW11dGVkIG1iLTAgc21hbGxcIj5cclxuICAgICAgICAgIFNhdmVzIHRoaXMgYXMgYSByZXZpc2lvbiB3aXRob3V0IHNldHRpbmcgaXQgYXMgdGhlIGN1cnJlbnQgcGxhbm9ncmFtLlxyXG4gICAgICAgIDwvcD5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2xhYmVsPlxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2IGNsYXNzPVwibW9kYWwtYWN0aW9ucyBtdC00XCI+XHJcbiAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tb3V0bGluZVwiIChjbGljayk9XCJvbkNhbmNlbCgpXCI+XHJcbiAgICAgIENhbmNlbFxyXG4gICAgPC9idXR0b24+XHJcbiAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBweC00XCIgKGNsaWNrKT1cIm9uUHVibGlzaCgpXCI+XHJcbiAgICAgIFB1Ymxpc2hcclxuICAgIDwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGlzaC1wbGFuby1tb2RhbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90YW5nby1zdG9yZS1idWlsZGVyL3NyYy9saWIvY29tcG9uZW50cy9wb3B1cHMvcHVibGlzaC1wbGFuby1tb2RhbC9wdWJsaXNoLXBsYW5vLW1vZGFsLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3RhbmdvLXN0b3JlLWJ1aWxkZXIvc3JjL2xpYi9jb21wb25lbnRzL3BvcHVwcy9wdWJsaXNoLXBsYW5vLW1vZGFsL3B1Ymxpc2gtcGxhbm8tbW9kYWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUNsRCxPQUFPLEVBQUUsWUFBWSxFQUFFLFFBQVEsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7Ozs7QUFHN0MsTUFBTSxrQkFBa0IsR0FBRyxlQUFlLENBQUM7QUFVM0MsTUFBTSxPQUFPLDBCQUEwQjtJQU0zQjtJQUNBO0lBTlYsWUFBWSxHQUFHLEVBQUUsQ0FBQztJQUNsQixjQUFjLEdBQUcsS0FBSyxDQUFDO0lBQ2YsZ0JBQWdCLEdBQUcsRUFBRSxDQUFDO0lBRTlCLFlBQ1UsV0FBMkIsRUFDM0IsUUFBa0I7UUFEbEIsZ0JBQVcsR0FBWCxXQUFXLENBQWdCO1FBQzNCLGFBQVEsR0FBUixRQUFRLENBQVU7SUFDekIsQ0FBQztJQUVKLFFBQVE7UUFDTixJQUFJLENBQUMsZ0JBQWdCLEdBQUcsYUFBYSxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxJQUFJLElBQUksRUFBRSxFQUFFLHlCQUF5QixDQUFDLEVBQUUsQ0FBQztRQUN0RyxJQUFJLENBQUMsWUFBWSxHQUFHLGtCQUFrQixDQUFDO0lBQ3pDLENBQUM7SUFFRCxhQUFhO1FBQ1gsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsQ0FBQyxDQUFDLGtCQUFrQixDQUFDO0lBQ3ZGLENBQUM7SUFFRCxRQUFRO1FBQ04sSUFBSSxDQUFDLFdBQVcsQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUM3QixDQUFDO0lBRUQsU0FBUztRQUNQLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDO1lBQ3JCLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtZQUMvQixjQUFjLEVBQUUsSUFBSSxDQUFDLGNBQWM7U0FDcEMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt3R0E1QlUsMEJBQTBCOzRGQUExQiwwQkFBMEIsc0VBSjFCLENBQUMsUUFBUSxDQUFDLDBCQ1h2Qix3M0NBNENBLHdXRGxDWSxZQUFZLDhCQUFFLFdBQVc7OzRGQUt4QiwwQkFBMEI7a0JBUnRDLFNBQVM7K0JBQ0UseUJBQXlCLGNBQ3ZCLElBQUksV0FDUCxDQUFDLFlBQVksRUFBRSxXQUFXLENBQUMsYUFDekIsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlLCBEYXRlUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IE5nYkFjdGl2ZU1vZGFsIH0gZnJvbSAnQG5nLWJvb3RzdHJhcC9uZy1ib290c3RyYXAnO1xuXG5jb25zdCBDVVJSRU5UX1BMQU5PX05BTUUgPSAnQ3VycmVudCBQbGFubyc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2FwcC1wdWJsaXNoLXBsYW5vLW1vZGFsJyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW0NvbW1vbk1vZHVsZSwgRm9ybXNNb2R1bGVdLFxuICBwcm92aWRlcnM6IFtEYXRlUGlwZV0sXG4gIHRlbXBsYXRlVXJsOiAnLi9wdWJsaXNoLXBsYW5vLW1vZGFsLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL3B1Ymxpc2gtcGxhbm8tbW9kYWwuY29tcG9uZW50LnNjc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBQdWJsaXNoUGxhbm9Nb2RhbENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHJldmlzaW9uTmFtZSA9ICcnO1xuICBwdWJsaXNoQXNEcmFmdCA9IGZhbHNlO1xuICBwcml2YXRlIGRyYWZ0RGVmYXVsdE5hbWUgPSAnJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcml2YXRlIGFjdGl2ZU1vZGFsOiBOZ2JBY3RpdmVNb2RhbCxcbiAgICBwcml2YXRlIGRhdGVQaXBlOiBEYXRlUGlwZSxcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuZHJhZnREZWZhdWx0TmFtZSA9IGBSZXZpc2lvbjogJHt0aGlzLmRhdGVQaXBlLnRyYW5zZm9ybShuZXcgRGF0ZSgpLCAnTU1NIGRkLCB5eXl5LCBoOm1tOnNzIGEnKX1gO1xuICAgIHRoaXMucmV2aXNpb25OYW1lID0gQ1VSUkVOVF9QTEFOT19OQU1FO1xuICB9XG5cbiAgb25EcmFmdFRvZ2dsZSgpIHtcbiAgICB0aGlzLnJldmlzaW9uTmFtZSA9IHRoaXMucHVibGlzaEFzRHJhZnQgPyB0aGlzLmRyYWZ0RGVmYXVsdE5hbWUgOiBDVVJSRU5UX1BMQU5PX05BTUU7XG4gIH1cblxuICBvbkNhbmNlbCgpIHtcbiAgICB0aGlzLmFjdGl2ZU1vZGFsLmRpc21pc3MoKTtcbiAgfVxuXG4gIG9uUHVibGlzaCgpIHtcbiAgICB0aGlzLmFjdGl2ZU1vZGFsLmNsb3NlKHtcbiAgICAgIHJldmlzaW9uTmFtZTogdGhpcy5yZXZpc2lvbk5hbWUsXG4gICAgICBwdWJsaXNoQXNEcmFmdDogdGhpcy5wdWJsaXNoQXNEcmFmdCxcbiAgICB9KTtcbiAgfVxufVxuIiwiPGRpdiBjbGFzcz1cIm1vZGFsLXdyYXBwZXJcIj5cclxuICA8aDMgY2xhc3M9XCJtYi00XCI+UHVibGlzaCBQbGFub2dyYW08L2gzPlxyXG5cclxuICA8ZGl2IGNsYXNzPVwibWItM1wiPlxyXG4gICAgPGxhYmVsIGNsYXNzPVwiZm9ybS1sYWJlbCBmdy1zZW1pYm9sZFwiPlJldmlzaW9uIG5hbWU8L2xhYmVsPlxyXG4gICAgPGlucHV0XHJcbiAgICAgIHR5cGU9XCJ0ZXh0XCJcclxuICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxyXG4gICAgICBbKG5nTW9kZWwpXT1cInJldmlzaW9uTmFtZVwiXHJcbiAgICAgIFtyZWFkb25seV09XCIhcHVibGlzaEFzRHJhZnRcIlxyXG4gICAgLz5cclxuICA8L2Rpdj5cclxuXHJcbiAgPHAgY2xhc3M9XCJkZXNjcmlwdGlvbi10ZXh0XCI+XHJcbiAgICBZb3UncmUgYWJvdXQgdG8gcHVibGlzaCB0aGlzIHBsYW5vZ3JhbS4gSXQgd2lsbCBiZSBzYXZlZCBhcyBhIG5ldyByZXZpc2lvblxyXG4gICAgYW5kIHNldCBhcyB0aGUgY3VycmVudCBwbGFub2dyYW0uIERvIHlvdSB3YW50IHRvIGNvbnRpbnVlP1xyXG4gIDwvcD5cclxuXHJcbiAgPGRpdiBjbGFzcz1cImRyYWZ0LW9wdGlvblwiPlxyXG4gICAgPGxhYmVsIGNsYXNzPVwiZC1mbGV4IGFsaWduLWl0ZW1zLXN0YXJ0IGdhcC0yXCI+XHJcbiAgICAgIDxpbnB1dFxyXG4gICAgICAgIHR5cGU9XCJjaGVja2JveFwiXHJcbiAgICAgICAgY2xhc3M9XCJmb3JtLWNoZWNrLWlucHV0IG10LTFcIlxyXG4gICAgICAgIFsobmdNb2RlbCldPVwicHVibGlzaEFzRHJhZnRcIlxyXG4gICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm9uRHJhZnRUb2dnbGUoKVwiXHJcbiAgICAgIC8+XHJcbiAgICAgIDxkaXY+XHJcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJmdy1zZW1pYm9sZFwiPlB1Ymxpc2ggYXMgZHJhZnQ8L3NwYW4+XHJcbiAgICAgICAgPHAgY2xhc3M9XCJ0ZXh0LW11dGVkIG1iLTAgc21hbGxcIj5cclxuICAgICAgICAgIFNhdmVzIHRoaXMgYXMgYSByZXZpc2lvbiB3aXRob3V0IHNldHRpbmcgaXQgYXMgdGhlIGN1cnJlbnQgcGxhbm9ncmFtLlxyXG4gICAgICAgIDwvcD5cclxuICAgICAgPC9kaXY+XHJcbiAgICA8L2xhYmVsPlxyXG4gIDwvZGl2PlxyXG5cclxuICA8ZGl2IGNsYXNzPVwibW9kYWwtYWN0aW9ucyBtdC00XCI+XHJcbiAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tb3V0bGluZVwiIChjbGljayk9XCJvbkNhbmNlbCgpXCI+XHJcbiAgICAgIENhbmNlbFxyXG4gICAgPC9idXR0b24+XHJcbiAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cImJ0biBidG4tcHJpbWFyeSBweC00XCIgKGNsaWNrKT1cIm9uUHVibGlzaCgpXCI+XHJcbiAgICAgIFB1Ymxpc2hcclxuICAgIDwvYnV0dG9uPlxyXG4gIDwvZGl2PlxyXG48L2Rpdj5cclxuIl19