@unipin/angular-applet 18.6.7 → 18.6.9

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 (62) hide show
  1. package/esm2022/lib/components/approval/detail/approval-detail.component.mjs +11 -12
  2. package/esm2022/lib/components/approval/form/approval-form.component.mjs +4 -4
  3. package/esm2022/lib/components/approval/list/approval-list.component.mjs +4 -4
  4. package/esm2022/lib/components/approval/services/approval.service.mjs +4 -4
  5. package/esm2022/lib/components/audit/detail/audit-detail.component.mjs +7 -8
  6. package/esm2022/lib/components/audit/list/audit-list.component.mjs +4 -4
  7. package/esm2022/lib/components/audit/service/audit.service.mjs +4 -4
  8. package/esm2022/lib/components/buttons/group/btn-group.component.mjs +4 -4
  9. package/esm2022/lib/components/buttons/loading/btn-loading.component.mjs +4 -4
  10. package/esm2022/lib/components/containers/applet-container/applet-container.component.mjs +4 -4
  11. package/esm2022/lib/components/containers/colum-header-container/column-header-container.component.mjs +4 -4
  12. package/esm2022/lib/components/containers/column-container/column-container.component.mjs +5 -5
  13. package/esm2022/lib/components/containers/column-container/directives/lazy-route.directive.mjs +4 -4
  14. package/esm2022/lib/components/containers/list-container/list-pagination-container/list-pagination-container.component.mjs +4 -4
  15. package/esm2022/lib/components/containers/list-container/list-snapshot-container/list-snapshot-container.component.mjs +4 -4
  16. package/esm2022/lib/components/containers/modal-container/modal-container.component.mjs +4 -4
  17. package/esm2022/lib/components/filter/filter.component.mjs +4 -4
  18. package/esm2022/lib/components/forms/country-input/form-country-input.component.mjs +5 -5
  19. package/esm2022/lib/components/forms/currency-input/form-currency-input.component.mjs +5 -5
  20. package/esm2022/lib/components/forms/date/form-date.component.mjs +4 -4
  21. package/esm2022/lib/components/forms/image-picker/directives/drag-n-drop.directive.mjs +4 -4
  22. package/esm2022/lib/components/forms/image-picker/form-image-picker.component.mjs +4 -4
  23. package/esm2022/lib/components/forms/input/form-input.component.mjs +4 -4
  24. package/esm2022/lib/components/forms/number/form-number.component.mjs +4 -4
  25. package/esm2022/lib/components/forms/number/pipes/locale-number.pipe.mjs +4 -4
  26. package/esm2022/lib/components/forms/password/form-password.component.mjs +4 -4
  27. package/esm2022/lib/components/forms/searchable-select/form-searchable-select.component.mjs +5 -5
  28. package/esm2022/lib/components/forms/select/form-select.component.mjs +5 -5
  29. package/esm2022/lib/components/forms/textarea/form-textarea.component.mjs +4 -4
  30. package/esm2022/lib/components/grids/grid-pagination/grid-pagination.component.mjs +6 -8
  31. package/esm2022/lib/components/grids/grid-snapshot/grid-snapshot.component.mjs +6 -8
  32. package/esm2022/lib/components/grids/services/grid.service.mjs +4 -4
  33. package/esm2022/lib/components/index.mjs +2 -2
  34. package/esm2022/lib/components/infinite-scroll/directive/infinite-scroll.directive.mjs +4 -4
  35. package/esm2022/lib/components/infinite-scroll/infinite-scroll.component.mjs +5 -5
  36. package/esm2022/lib/components/tabs/index.mjs +1 -2
  37. package/esm2022/lib/components/tabs/tab-content/tab-content.component.mjs +5 -7
  38. package/esm2022/lib/components/tabs/tab-group/tab-group.component.mjs +21 -21
  39. package/esm2022/lib/interceptors/header/header.interceptor.mjs +4 -4
  40. package/esm2022/lib/interceptors/refresh-token/refresh-token.interceptor.mjs +4 -4
  41. package/esm2022/lib/modules/permission/directive/permission.directive.mjs +4 -4
  42. package/esm2022/lib/modules/permission/pages/401/unauthorized.page.mjs +4 -4
  43. package/esm2022/lib/modules/permission/pages/loading/loading.page.mjs +4 -4
  44. package/esm2022/lib/modules/permission/permission.module.mjs +5 -5
  45. package/esm2022/lib/modules/permission/services/permission.service.mjs +4 -4
  46. package/esm2022/lib/resolvers/auth/auth.resolver.mjs +4 -4
  47. package/esm2022/lib/services/auth/auth.service.mjs +4 -4
  48. package/esm2022/lib/services/country/country.service.mjs +4 -4
  49. package/esm2022/lib/services/currency/currency.service.mjs +4 -4
  50. package/esm2022/lib/services/profile/profile.service.mjs +4 -4
  51. package/esm2022/public-api.mjs +2 -2
  52. package/fesm2022/unipin-angular-applet.mjs +180 -209
  53. package/fesm2022/unipin-angular-applet.mjs.map +1 -1
  54. package/lib/components/approval/detail/approval-detail.component.d.ts +2 -1
  55. package/lib/components/index.d.ts +1 -1
  56. package/lib/components/tabs/index.d.ts +4 -1
  57. package/lib/components/tabs/tab-content/tab-content.component.d.ts +1 -1
  58. package/lib/components/tabs/tab-group/tab-group.component.d.ts +7 -5
  59. package/package.json +2 -2
  60. package/public-api.d.ts +1 -1
  61. package/esm2022/lib/components/tabs/tabs.component.module.mjs +0 -29
  62. package/lib/components/tabs/tabs.component.module.d.ts +0 -9
@@ -66,8 +66,8 @@ export class FormSearchableSelectComponent {
66
66
  this.errorMsg = getFormErrorMessage(this.formControl.errors, this.label);
67
67
  }
68
68
  }
69
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: FormSearchableSelectComponent, deps: [{ token: 'placeholder', attribute: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
70
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.4", type: FormSearchableSelectComponent, isStandalone: true, selector: "up-searchable-select", inputs: { queryFunc: "queryFunc", clearable: "clearable", label: "label", initialItems: "initialItems", required: "required", addTag: "addTag", disabled: "disabled", multiple: "multiple", bindLabel: "bindLabel", bindValue: "bindValue", appendTo: "appendTo" }, outputs: { onChange: "onChange" }, host: { classAttribute: "d-block" }, providers: [
69
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FormSearchableSelectComponent, deps: [{ token: 'placeholder', attribute: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
70
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FormSearchableSelectComponent, isStandalone: true, selector: "up-searchable-select", inputs: { queryFunc: "queryFunc", clearable: "clearable", label: "label", initialItems: "initialItems", required: "required", addTag: "addTag", disabled: "disabled", multiple: "multiple", bindLabel: "bindLabel", bindValue: "bindValue", appendTo: "appendTo" }, outputs: { onChange: "onChange" }, host: { classAttribute: "d-block" }, providers: [
71
71
  {
72
72
  multi: true,
73
73
  provide: NG_VALUE_ACCESSOR,
@@ -78,9 +78,9 @@ export class FormSearchableSelectComponent {
78
78
  provide: NG_VALIDATORS,
79
79
  useExisting: FormSearchableSelectComponent
80
80
  }
81
- ], usesOnChanges: true, ngImport: i0, template: "<label class=\"form-label d-flex align-items-center\" [class.required]=\"required\">\n <ng-content select=\"[icon]\" />\n <span>{{ label }}</span>\n</label>\n\n<ng-select \n typeToSearchText=\"Please enter 3 or more characters\"\n bindLabel=\"{{ bindLabel }}\"\n bindValue=\"{{ bindValue }}\"\n placeholder=\"{{ placeholder }}\"\n [minTermLength]=\"3\"\n [virtualScroll]=\"true\"\n [editableSearchTerm]=\"true\"\n [ngModel]=\"value\" \n [addTag]=\"addTag\"\n [multiple]=\"multiple\"\n [readonly]=\"disabled\" \n [loading]=\"isLoading\"\n [appendTo]=\"appendTo\" \n [clearable]=\"clearable\"\n [typeahead]=\"typeahead\"\n [items]=\"items$ | async\"\n (change)=\"change($event);\"\n/>\n\n@if (errorMsg) {\n <label class=\"is-invalid\">{{ errorMsg }}</label>\n}\n", styles: [""], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: NgSelectModule }, { kind: "component", type: i2.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "preventToggleOnRightClick", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "ngClass", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "deselectOnClick"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
81
+ ], usesOnChanges: true, ngImport: i0, template: "<label class=\"form-label d-flex align-items-center\" [class.required]=\"required\">\n <ng-content select=\"[icon]\" />\n <span>{{ label }}</span>\n</label>\n\n<ng-select \n typeToSearchText=\"Please enter 3 or more characters\"\n bindLabel=\"{{ bindLabel }}\"\n bindValue=\"{{ bindValue }}\"\n placeholder=\"{{ placeholder }}\"\n [minTermLength]=\"3\"\n [virtualScroll]=\"true\"\n [editableSearchTerm]=\"true\"\n [ngModel]=\"value\" \n [addTag]=\"addTag\"\n [multiple]=\"multiple\"\n [readonly]=\"disabled\" \n [loading]=\"isLoading\"\n [appendTo]=\"appendTo\" \n [clearable]=\"clearable\"\n [typeahead]=\"typeahead\"\n [items]=\"items$ | async\"\n (change)=\"change($event);\"\n/>\n\n@if (errorMsg) {\n <label class=\"is-invalid\">{{ errorMsg }}</label>\n}\n", styles: [""], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: NgSelectModule }, { kind: "component", type: i2.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "ariaLabel", "markFirst", "placeholder", "fixedPlaceholder", "notFoundText", "typeToSearchText", "preventToggleOnRightClick", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "ngClass", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "deselectOnClick", "keyDownFn"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
82
82
  }
83
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: FormSearchableSelectComponent, decorators: [{
83
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FormSearchableSelectComponent, decorators: [{
84
84
  type: Component,
85
85
  args: [{ standalone: true, selector: 'up-searchable-select', changeDetection: ChangeDetectionStrategy.OnPush, host: {
86
86
  class: 'd-block'
@@ -129,4 +129,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
129
129
  }], onChange: [{
130
130
  type: Output
131
131
  }] } });
132
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1zZWFyY2hhYmxlLXNlbGVjdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvZm9ybXMvc2VhcmNoYWJsZS1zZWxlY3QvZm9ybS1zZWFyY2hhYmxlLXNlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvZm9ybXMvc2VhcmNoYWJsZS1zZWxlY3QvZm9ybS1zZWFyY2hhYmxlLXNlbGVjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQix1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUE0QixNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hKLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBQXlDLFdBQVcsRUFBRSxhQUFhLEVBQUUsaUJBQWlCLEVBQStCLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkosT0FBTyxFQUFjLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUgsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBNkJyRCxNQUFNLE9BQU8sNkJBQTZCO0lBOEp4QyxZQUNtQyxXQUFtQixFQUNqQyxFQUFxQjtRQURQLGdCQUFXLEdBQVgsV0FBVyxDQUFRO1FBQ2pDLE9BQUUsR0FBRixFQUFFLENBQW1CO1FBbEoxQixjQUFT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QkFDakIsV0FDUTt3QkFDUCxTQUFTO3dCQUNULFdBQVc7d0JBQ1gsY0FBYztxQkFDZixhQUNVO3dCQUNUOzRCQUNFLEtBQUssRUFBRSxJQUFJOzRCQUNYLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsK0JBQStCO3lCQUMzQzt3QkFDRDs0QkFDRSxLQUFLLEVBQUUsSUFBSTs0QkFDWCxPQUFPLEVBQUUsYUFBYTs0QkFDdEIsV0FBVywrQkFBK0I7eUJBQzNDO3FCQUNGOzswQkFpS0UsU0FBUzsyQkFBQyxhQUFhO3lFQXhKUSxTQUFTO3NCQUExQyxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFPVCxTQUFTO3NCQUF4QixLQUFLO2dCQU9VLEtBQUs7c0JBQXBCLEtBQUs7Z0JBT1UsWUFBWTtzQkFBM0IsS0FBSztnQkFPVSxRQUFRO3NCQUF2QixLQUFLO2dCQU9VLE1BQU07c0JBQXJCLEtBQUs7Z0JBT1UsUUFBUTtzQkFBdkIsS0FBSztnQkFPVSxRQUFRO3NCQUF2QixLQUFLO2dCQU9VLFNBQVM7c0JBQXhCLEtBQUs7Z0JBT1UsU0FBUztzQkFBeEIsS0FBSztnQkFPVSxRQUFRO3NCQUF2QixLQUFLO2dCQU1XLFFBQVE7c0JBQXhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBdHRyaWJ1dGUsIENoYW5nZURldGVjdG9yUmVmLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzLCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXN5bmNQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEZvcm1zTW9kdWxlLCBOR19WQUxJREFUT1JTLCBOR19WQUxVRV9BQ0NFU1NPUiwgVmFsaWRhdGlvbkVycm9ycywgVmFsaWRhdG9yIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCwgY2F0Y2hFcnJvciwgY29uY2F0LCBkZWJvdW5jZVRpbWUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAsIG9mLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTmdTZWxlY3RNb2R1bGUgfSBmcm9tICdAbmctc2VsZWN0L25nLXNlbGVjdCc7XG5pbXBvcnQgeyBnZXRGb3JtRXJyb3JNZXNzYWdlIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICd1cC1zZWFyY2hhYmxlLXNlbGVjdCcsXG4gIHN0eWxlVXJsOiAnLi9mb3JtLXNlYXJjaGFibGUtc2VsZWN0LmNvbXBvbmVudC5zY3NzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvcm0tc2VhcmNoYWJsZS1zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDogeyBcbiAgICBjbGFzczogJ2QtYmxvY2snIFxuICB9LFxuICBpbXBvcnRzOiBbXG4gICAgQXN5bmNQaXBlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIE5nU2VsZWN0TW9kdWxlXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogRm9ybVNlYXJjaGFibGVTZWxlY3RDb21wb25lbnRcbiAgICB9LFxuICAgIHtcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgcHJvdmlkZTogTkdfVkFMSURBVE9SUyxcbiAgICAgIHVzZUV4aXN0aW5nOiBGb3JtU2VhcmNoYWJsZVNlbGVjdENvbXBvbmVudFxuICAgIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBGb3JtU2VhcmNoYWJsZVNlbGVjdENvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBWYWxpZGF0b3IsIE9uQ2hhbmdlcyB7XG5cbiAgLyoqXG4gICAqIElucHV0IHZhcmlhYmxlIGZvciB0aGUgZnVuY3Rpb24gdG8gcmV0cmlldmUgaXRlbXMgYmFzZWQgb24gYSBzZWFyY2gga2V5d29yZC5cbiAgICogQHR5cGUgeyhrZXl3b3JkOiBzdHJpbmcpID0+IE9ic2VydmFibGU8YW55Pn1cbiAgICogQHJlcXVpcmVkXG4gICAqL1xuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBwdWJsaWMgcXVlcnlGdW5jITogKGtleXdvcmQ6IHN0cmluZykgPT4gT2JzZXJ2YWJsZTxhbnk+O1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YXJpYWJsZSB0byBkZXRlcm1pbmUgd2hldGhlciB0aGUgc2VsZWN0IGlucHV0IGlzIGNsZWFyYWJsZS5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBjbGVhcmFibGU6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YXJpYWJsZSBmb3IgdGhlIGxhYmVsIGFzc29jaWF0ZWQgd2l0aCB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAZGVmYXVsdCAnJ1xuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGxhYmVsOiBzdHJpbmcgPSAnJztcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgZm9yIHRoZSBpbml0aWFsIGl0ZW1zIHRvIGJlIGRpc3BsYXllZCBpbiB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAdHlwZSB7YW55W119XG4gICAqIEBkZWZhdWx0IFtdXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgaW5pdGlhbEl0ZW1zOiBhbnlbXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YXJpYWJsZSB0byBkZXRlcm1pbmUgd2hldGhlciB0aGUgc2VsZWN0IGlucHV0IGlzIHJlcXVpcmVkLlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyByZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YXJpYWJsZSB0byBkZXRlcm1pbmUgd2hldGhlciB0YWdzIGNhbiBiZSBhZGRlZCB0byB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBhZGRUYWc6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGhlIHNlbGVjdCBpbnB1dCBpcyBkaXNhYmxlZC5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGhlIHNlbGVjdCBpbnB1dCBhbGxvd3MgbXVsdGlwbGUgc2VsZWN0aW9ucy5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgbXVsdGlwbGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgc3BlY2lmeWluZyB0aGUgcHJvcGVydHkgdG8gYmluZCBhcyB0aGUgbGFiZWwgZm9yIGl0ZW1zIGluIHRoZSBzZWxlY3QgaW5wdXQuXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBkZWZhdWx0ICdsYWJlbCdcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBiaW5kTGFiZWw6IHN0cmluZyA9ICdsYWJlbCc7XG5cbiAgLyoqXG4gICAqIElucHV0IHZhcmlhYmxlIHNwZWNpZnlpbmcgdGhlIHByb3BlcnR5IHRvIGJpbmQgYXMgdGhlIHZhbHVlIGZvciBpdGVtcyBpbiB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAZGVmYXVsdCAndmFsdWUnXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgYmluZFZhbHVlOiBzdHJpbmcgPSAndmFsdWUnO1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YXJpYWJsZSBzcGVjaWZ5aW5nIGFwcGVuZCBkcm9wZG93biB0byBib2R5IG9yIGFueSBvdGhlciBlbGVtZW50IHVzaW5nIGNzcyBzZWxlY3Rvci4gRm9yIGNvcnJlY3QgcG9zaXRpb25pbmcgYm9keSBzaG91bGQgaGF2ZSBwb3NpdGlvbjpyZWxhdGl2ZS5cbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQGRlZmF1bHQgJydcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBhcHBlbmRUbzogc3RyaW5nID0gJyc7XG5cbiAgLyoqXG4gICAqIE91dHB1dCB2YXJpYWJsZSB0byBlbWl0IGNoYW5nZXMgd2hlbiB0aGUgc2VsZWN0IGlucHV0IHZhbHVlIGNoYW5nZXMuXG4gICAqIEB0eXBlIHtFdmVudEVtaXR0ZXI8YW55Pn1cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgb25DaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgLyoqXG4gICAqIFN1YmplY3QgZm9yIGhhbmRsaW5nIHR5cGVhaGVhZCBldmVudHMgdG8gdHJpZ2dlciBpdGVtIHF1ZXJpZXMgYmFzZWQgb24gdGhlIHNlYXJjaCBrZXl3b3JkLlxuICAgKiBAdHlwZSB7U3ViamVjdDxzdHJpbmc+fVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHR5cGVhaGVhZDogU3ViamVjdDxzdHJpbmc+ID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpO1xuXG4gIC8qKlxuICAgKiBPYnNlcnZhYmxlIGZvciBoYW5kbGluZyBpdGVtIHF1ZXJpZXMgYmFzZWQgb24gdGhlIHNlYXJjaCBrZXl3b3JkLlxuICAgKiBAdHlwZSB7T2JzZXJ2YWJsZTxhbnlbXT59XG4gICAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcXVlcnkkOiBPYnNlcnZhYmxlPGFueVtdPiA9IHRoaXMudHlwZWFoZWFkLnBpcGUoXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBkZWJvdW5jZVRpbWUoMzAwKSxcbiAgICB0YXAoKCkgPT4gdGhpcy5pc0xvYWRpbmcgPSB0cnVlKSxcbiAgICBzd2l0Y2hNYXAoKGs6IHN0cmluZykgPT4gdGhpcy5xdWVyeUZ1bmMoaykucGlwZShcbiAgICAgIG1hcCgocmVzdWx0OiBhbnlbXSkgPT4gcmVzdWx0Lmxlbmd0aCA9PT0gMD8gdGhpcy5pbml0aWFsSXRlbXMgOiByZXN1bHQpLFxuICAgICAgY2F0Y2hFcnJvcigoKSA9PiBvZih0aGlzLmluaXRpYWxJdGVtcykpXG4gICAgKSksXG4gICAgdGFwKCgpID0+IHRoaXMuaXNMb2FkaW5nID0gZmFsc2UpXG4gICk7XG5cbiAgLyoqXG4gICAqIE9ic2VydmFibGUgZm9yIGRpc3BsYXlpbmcgaXRlbXMgaW4gdGhlIHNlbGVjdCBpbnB1dC5cbiAgICogQHR5cGUge09ic2VydmFibGU8YW55W10+fVxuICAgKi9cbiAgcHVibGljIGl0ZW1zJDogT2JzZXJ2YWJsZTxhbnlbXT4gPSB0aGlzLnF1ZXJ5JDtcblxuICAvKipcbiAgICogQm9vbGVhbiBmbGFnIGluZGljYXRpbmcgd2hldGhlciB0aGUgc2VsZWN0IGlucHV0IGlzIGxvYWRpbmcuXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcHVibGljIGlzTG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBCb29sZWFuIGZsYWcgaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBzZWxlY3QgaW5wdXQgaGFzIGJlZW4gdG91Y2hlZC5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBwdWJsaWMgaXNUb3VjaGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFRoZSB2YWx1ZSBvZiB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAdHlwZSB7YW55IHwgbnVsbH1cbiAgICogQGRlZmF1bHQgbnVsbFxuICAgKi9cbiAgcHVibGljIHZhbHVlOiBhbnkgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogRXJyb3IgbWVzc2FnZSBhc3NvY2lhdGVkIHdpdGggdGhlIHNlbGVjdCBpbnB1dC5cbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQGRlZmF1bHQgdW5kZWZpbmVkXG4gICAqL1xuICBwdWJsaWMgZXJyb3JNc2chOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBmb3JtIGNvbnRyb2wgYXNzb2NpYXRlZCB3aXRoIHRoZSBzZWxlY3QgaW5wdXQuXG4gICAqIEB0eXBlIHtBYnN0cmFjdENvbnRyb2x9XG4gICAqL1xuICBwcm90ZWN0ZWQgZm9ybUNvbnRyb2whOiBBYnN0cmFjdENvbnRyb2w7XG5cbiAgLyoqXG4gICAqIENhbGxiYWNrIGZ1bmN0aW9uIHRvIGhhbmRsZSB2YWx1ZSBjaGFuZ2VzIGluIHRoZSBzZWxlY3QgaW5wdXQuXG4gICAqIEB0eXBlIHsoX3ZhbDogYW55KSA9PiB2b2lkfVxuICAgKi9cbiAgcHJvdGVjdGVkIGNoYW5nZWQ6IChfdmFsOiBhbnkpID0+IHZvaWQgPSAoX3ZhbDogYW55KSA9PiB7fTtcblxuICAvKipcbiAgICogQ2FsbGJhY2sgZnVuY3Rpb24gdG8gaGFuZGxlIHRvdWNoIGV2ZW50cyBpbiB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAdHlwZSB7KCkgPT4gdm9pZH1cbiAgICovXG4gIHByb3RlY3RlZCBvblRvdWNoZWQ6ICgpID0+IHZvaWQgPSAoKSA9PiB7fTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAQXR0cmlidXRlKCdwbGFjZWhvbGRlcicpIHB1YmxpYyBwbGFjZWhvbGRlcjogc3RyaW5nLFxuICAgIHByb3RlY3RlZCByZWFkb25seSBjaDogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7IH1cblxuICAvKipcbiAgICogTGlmZWN5Y2xlIGhvb2sgY2FsbGVkIHdoZW4gY2hhbmdlcyBvY2N1ciB0byBpbnB1dCBwcm9wZXJ0aWVzLlxuICAgKiBVcGRhdGVzIHRoZSBpdGVtcyQgb2JzZXJ2YWJsZSB3aGVuIHRoZSBpbml0aWFsSXRlbXMgaW5wdXQgY2hhbmdlcy5cbiAgICogQHBhcmFtIHtTaW1wbGVDaGFuZ2VzfSBjaGFuZ2VzIC0gT2JqZWN0IGNvbnRhaW5pbmcgdGhlIGNoYW5nZWQgcHJvcGVydGllcy5cbiAgICovXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZHtcbiAgICBpZiAoY2hhbmdlc1snaW5pdGlhbEl0ZW1zJ10pIHRoaXMuaXRlbXMkID0gY29uY2F0KG9mKHRoaXMuaW5pdGlhbEl0ZW1zKSwgdGhpcy5xdWVyeSQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVycyBhIGNhbGxiYWNrIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSBzZWxlY3QgaW5wdXQgdmFsdWUgY2hhbmdlcy5cbiAgICogQHBhcmFtIHsoX3ZhbDogYW55KSA9PiB2b2lkfSBmbiAtIENhbGxiYWNrIGZ1bmN0aW9uIGZvciB2YWx1ZSBjaGFuZ2VzLlxuICAgKi9cbiAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWR7IHRoaXMuY2hhbmdlZCA9IGZuOyB9XG4gIFxuICAvKipcbiAgICogUmVnaXN0ZXJzIGEgY2FsbGJhY2sgZnVuY3Rpb24gdG8gYmUgY2FsbGVkIHdoZW4gdGhlIHNlbGVjdCBpbnB1dCBpcyB0b3VjaGVkLlxuICAgKiBAcGFyYW0geygpID0+IHZvaWR9IGZuIC0gQ2FsbGJhY2sgZnVuY3Rpb24gZm9yIHRvdWNoIGV2ZW50cy5cbiAgICovXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZHsgdGhpcy5vblRvdWNoZWQgPSBmbjsgfSBcbiAgXG4gIC8qKlxuICAgKiBXcml0ZXMgYSBuZXcgdmFsdWUgdG8gdGhlIHNlbGVjdCBpbnB1dC5cbiAgICogQHBhcmFtIHsqfSB2YWwgLSBUaGUgbmV3IHZhbHVlIHRvIGJlIHNldC5cbiAgICovXG4gIHB1YmxpYyB3cml0ZVZhbHVlKHZhbDogYW55KTogdm9pZHsgXG4gICAgdGhpcy52YWx1ZSA9IHZhbDsgXG4gICAgdGhpcy5jaC5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuICBcbiAgLyoqXG4gICAqIFNldHMgdGhlIGRpc2FibGVkIHN0YXRlIG9mIHRoZSBzZWxlY3QgaW5wdXQuXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gZCAtIFRoZSBuZXcgZGlzYWJsZWQgc3RhdGUuXG4gICAqL1xuICBwdWJsaWMgc2V0RGlzYWJsZWRTdGF0ZT8oZDogYm9vbGVhbik6IHZvaWR7IFxuICAgIHRoaXMuZGlzYWJsZWQgPSBkOyBcbiAgICB0aGlzLmNoLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIFZhbGlkYXRlcyB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAcGFyYW0ge0Fic3RyYWN0Q29udHJvbH0gY29udHJvbCAtIFRoZSBhYnN0cmFjdCBjb250cm9sIHJlcHJlc2VudGluZyB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAcmV0dXJucyB7KFZhbGlkYXRpb25FcnJvcnMgfCBudWxsKX0gLSBWYWxpZGF0aW9uIGVycm9ycyBpZiBhbnksIG90aGVyd2lzZSBudWxsLlxuICAgKi9cbiAgcHVibGljIHZhbGlkYXRlKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxseyAgICBcbiAgICB0aGlzLmZvcm1Db250cm9sID0gY29udHJvbDtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBFdmVudCBoYW5kbGVyIGZvciBjaGFuZ2VzIGluIHRoZSBzZWxlY3QgaW5wdXQuXG4gICAqIEVtaXRzIHRoZSBvbkNoYW5nZSBldmVudCwgdXBkYXRlcyB0aGUgaW5pdGlhbEl0ZW1zLCBhbmQgaGFuZGxlcyB2YWxpZGF0aW9uIGJhc2VkIG9uIGZvcm0gY29udHJvbCBlcnJvcnMgYW5kIGxhYmVsLlxuICAgKiBAcGFyYW0ge2FueX0gZSAtIFRoZSBldmVudCBjb250YWluaW5nIHRoZSBuZXcgc2VsZWN0IGlucHV0IHZhbHVlLlxuICAgKi9cbiAgcHVibGljIGNoYW5nZShlPzogYW55KTogdm9pZHtcbiAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoZSk7XG4gICAgdGhpcy5pbml0aWFsSXRlbXMgPSBlO1xuXG4gICAgaWYgKCF0aGlzLmlzVG91Y2hlZCkge1xuICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICAgIHRoaXMuaXNUb3VjaGVkID0gdHJ1ZTtcbiAgICB9XG4gICAgXG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICBpZiAoIWUpIHRoaXMudmFsdWUgPSBudWxsO1xuICAgICAgZWxzZSB7XG4gICAgICAgIHRoaXMudmFsdWUgPSAhdGhpcy5tdWx0aXBsZT8gZVt0aGlzLmJpbmRWYWx1ZV0gOiBlLm1hcCgobzogYW55KSA9PiBvW3RoaXMuYmluZFZhbHVlXSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuY2hhbmdlZCh0aGlzLnZhbHVlKTtcbiAgICAgIHRoaXMuZXJyb3JNc2cgPSBnZXRGb3JtRXJyb3JNZXNzYWdlKHRoaXMuZm9ybUNvbnRyb2wuZXJyb3JzLCB0aGlzLmxhYmVsKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWwgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiIFtjbGFzcy5yZXF1aXJlZF09XCJyZXF1aXJlZFwiPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltpY29uXVwiIC8+XG4gICAgPHNwYW4+e3sgbGFiZWwgfX08L3NwYW4+XG48L2xhYmVsPlxuXG48bmctc2VsZWN0IFxuICAgIHR5cGVUb1NlYXJjaFRleHQ9XCJQbGVhc2UgZW50ZXIgMyBvciBtb3JlIGNoYXJhY3RlcnNcIlxuICAgIGJpbmRMYWJlbD1cInt7IGJpbmRMYWJlbCB9fVwiXG4gICAgYmluZFZhbHVlPVwie3sgYmluZFZhbHVlIH19XCJcbiAgICBwbGFjZWhvbGRlcj1cInt7IHBsYWNlaG9sZGVyIH19XCJcbiAgICBbbWluVGVybUxlbmd0aF09XCIzXCJcbiAgICBbdmlydHVhbFNjcm9sbF09XCJ0cnVlXCJcbiAgICBbZWRpdGFibGVTZWFyY2hUZXJtXT1cInRydWVcIlxuICAgIFtuZ01vZGVsXT1cInZhbHVlXCIgXG4gICAgW2FkZFRhZ109XCJhZGRUYWdcIlxuICAgIFttdWx0aXBsZV09XCJtdWx0aXBsZVwiXG4gICAgW3JlYWRvbmx5XT1cImRpc2FibGVkXCIgXG4gICAgW2xvYWRpbmddPVwiaXNMb2FkaW5nXCJcbiAgICBbYXBwZW5kVG9dPVwiYXBwZW5kVG9cIiBcbiAgICBbY2xlYXJhYmxlXT1cImNsZWFyYWJsZVwiXG4gICAgW3R5cGVhaGVhZF09XCJ0eXBlYWhlYWRcIlxuICAgIFtpdGVtc109XCJpdGVtcyQgfCBhc3luY1wiXG4gICAgKGNoYW5nZSk9XCJjaGFuZ2UoJGV2ZW50KTtcIlxuLz5cblxuQGlmIChlcnJvck1zZykge1xuICAgIDxsYWJlbCBjbGFzcz1cImlzLWludmFsaWRcIj57eyBlcnJvck1zZyB9fTwvbGFiZWw+XG59XG4iXX0=
132
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1zZWFyY2hhYmxlLXNlbGVjdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvZm9ybXMvc2VhcmNoYWJsZS1zZWxlY3QvZm9ybS1zZWFyY2hhYmxlLXNlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvZm9ybXMvc2VhcmNoYWJsZS1zZWxlY3QvZm9ybS1zZWFyY2hhYmxlLXNlbGVjdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQix1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUE0QixNQUFNLEVBQUUsWUFBWSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hKLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1QyxPQUFPLEVBQXlDLFdBQVcsRUFBRSxhQUFhLEVBQUUsaUJBQWlCLEVBQStCLE1BQU0sZ0JBQWdCLENBQUM7QUFDbkosT0FBTyxFQUFjLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxHQUFHLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDNUgsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3RELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7O0FBNkJyRCxNQUFNLE9BQU8sNkJBQTZCO0lBOEp4QyxZQUNtQyxXQUFtQixFQUNqQyxFQUFxQjtRQURQLGdCQUFXLEdBQVgsV0FBVyxDQUFRO1FBQ2pDLE9BQUUsR0FBRixFQUFFLENBQW1CO1FBbEoxQixjQUFT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QkFDakIsV0FDUTt3QkFDUCxTQUFTO3dCQUNULFdBQVc7d0JBQ1gsY0FBYztxQkFDZixhQUNVO3dCQUNUOzRCQUNFLEtBQUssRUFBRSxJQUFJOzRCQUNYLE9BQU8sRUFBRSxpQkFBaUI7NEJBQzFCLFdBQVcsK0JBQStCO3lCQUMzQzt3QkFDRDs0QkFDRSxLQUFLLEVBQUUsSUFBSTs0QkFDWCxPQUFPLEVBQUUsYUFBYTs0QkFDdEIsV0FBVywrQkFBK0I7eUJBQzNDO3FCQUNGOzswQkFpS0UsU0FBUzsyQkFBQyxhQUFhO3lFQXhKUSxTQUFTO3NCQUExQyxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFPVCxTQUFTO3NCQUF4QixLQUFLO2dCQU9VLEtBQUs7c0JBQXBCLEtBQUs7Z0JBT1UsWUFBWTtzQkFBM0IsS0FBSztnQkFPVSxRQUFRO3NCQUF2QixLQUFLO2dCQU9VLE1BQU07c0JBQXJCLEtBQUs7Z0JBT1UsUUFBUTtzQkFBdkIsS0FBSztnQkFPVSxRQUFRO3NCQUF2QixLQUFLO2dCQU9VLFNBQVM7c0JBQXhCLEtBQUs7Z0JBT1UsU0FBUztzQkFBeEIsS0FBSztnQkFPVSxRQUFRO3NCQUF2QixLQUFLO2dCQU1XLFFBQVE7c0JBQXhCLE1BQU0iLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBdHRyaWJ1dGUsIENoYW5nZURldGVjdG9yUmVmLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBTaW1wbGVDaGFuZ2VzLCBPdXRwdXQsIEV2ZW50RW1pdHRlciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXN5bmNQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgQ29udHJvbFZhbHVlQWNjZXNzb3IsIEZvcm1zTW9kdWxlLCBOR19WQUxJREFUT1JTLCBOR19WQUxVRV9BQ0NFU1NPUiwgVmFsaWRhdGlvbkVycm9ycywgVmFsaWRhdG9yIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCwgY2F0Y2hFcnJvciwgY29uY2F0LCBkZWJvdW5jZVRpbWUsIGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAsIG9mLCBzd2l0Y2hNYXAsIHRhcCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgTmdTZWxlY3RNb2R1bGUgfSBmcm9tICdAbmctc2VsZWN0L25nLXNlbGVjdCc7XG5pbXBvcnQgeyBnZXRGb3JtRXJyb3JNZXNzYWdlIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICd1cC1zZWFyY2hhYmxlLXNlbGVjdCcsXG4gIHN0eWxlVXJsOiAnLi9mb3JtLXNlYXJjaGFibGUtc2VsZWN0LmNvbXBvbmVudC5zY3NzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvcm0tc2VhcmNoYWJsZS1zZWxlY3QuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDogeyBcbiAgICBjbGFzczogJ2QtYmxvY2snIFxuICB9LFxuICBpbXBvcnRzOiBbXG4gICAgQXN5bmNQaXBlLFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIE5nU2VsZWN0TW9kdWxlXG4gIF0sXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogRm9ybVNlYXJjaGFibGVTZWxlY3RDb21wb25lbnRcbiAgICB9LFxuICAgIHtcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgcHJvdmlkZTogTkdfVkFMSURBVE9SUyxcbiAgICAgIHVzZUV4aXN0aW5nOiBGb3JtU2VhcmNoYWJsZVNlbGVjdENvbXBvbmVudFxuICAgIH1cbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBGb3JtU2VhcmNoYWJsZVNlbGVjdENvbXBvbmVudCBpbXBsZW1lbnRzIENvbnRyb2xWYWx1ZUFjY2Vzc29yLCBWYWxpZGF0b3IsIE9uQ2hhbmdlcyB7XG5cbiAgLyoqXG4gICAqIElucHV0IHZhcmlhYmxlIGZvciB0aGUgZnVuY3Rpb24gdG8gcmV0cmlldmUgaXRlbXMgYmFzZWQgb24gYSBzZWFyY2gga2V5d29yZC5cbiAgICogQHR5cGUgeyhrZXl3b3JkOiBzdHJpbmcpID0+IE9ic2VydmFibGU8YW55Pn1cbiAgICogQHJlcXVpcmVkXG4gICAqL1xuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBwdWJsaWMgcXVlcnlGdW5jITogKGtleXdvcmQ6IHN0cmluZykgPT4gT2JzZXJ2YWJsZTxhbnk+O1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YXJpYWJsZSB0byBkZXRlcm1pbmUgd2hldGhlciB0aGUgc2VsZWN0IGlucHV0IGlzIGNsZWFyYWJsZS5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBjbGVhcmFibGU6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YXJpYWJsZSBmb3IgdGhlIGxhYmVsIGFzc29jaWF0ZWQgd2l0aCB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAZGVmYXVsdCAnJ1xuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGxhYmVsOiBzdHJpbmcgPSAnJztcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgZm9yIHRoZSBpbml0aWFsIGl0ZW1zIHRvIGJlIGRpc3BsYXllZCBpbiB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAdHlwZSB7YW55W119XG4gICAqIEBkZWZhdWx0IFtdXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgaW5pdGlhbEl0ZW1zOiBhbnlbXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YXJpYWJsZSB0byBkZXRlcm1pbmUgd2hldGhlciB0aGUgc2VsZWN0IGlucHV0IGlzIHJlcXVpcmVkLlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyByZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YXJpYWJsZSB0byBkZXRlcm1pbmUgd2hldGhlciB0YWdzIGNhbiBiZSBhZGRlZCB0byB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBhZGRUYWc6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGhlIHNlbGVjdCBpbnB1dCBpcyBkaXNhYmxlZC5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGhlIHNlbGVjdCBpbnB1dCBhbGxvd3MgbXVsdGlwbGUgc2VsZWN0aW9ucy5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgbXVsdGlwbGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgc3BlY2lmeWluZyB0aGUgcHJvcGVydHkgdG8gYmluZCBhcyB0aGUgbGFiZWwgZm9yIGl0ZW1zIGluIHRoZSBzZWxlY3QgaW5wdXQuXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBkZWZhdWx0ICdsYWJlbCdcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBiaW5kTGFiZWw6IHN0cmluZyA9ICdsYWJlbCc7XG5cbiAgLyoqXG4gICAqIElucHV0IHZhcmlhYmxlIHNwZWNpZnlpbmcgdGhlIHByb3BlcnR5IHRvIGJpbmQgYXMgdGhlIHZhbHVlIGZvciBpdGVtcyBpbiB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAZGVmYXVsdCAndmFsdWUnXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgYmluZFZhbHVlOiBzdHJpbmcgPSAndmFsdWUnO1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YXJpYWJsZSBzcGVjaWZ5aW5nIGFwcGVuZCBkcm9wZG93biB0byBib2R5IG9yIGFueSBvdGhlciBlbGVtZW50IHVzaW5nIGNzcyBzZWxlY3Rvci4gRm9yIGNvcnJlY3QgcG9zaXRpb25pbmcgYm9keSBzaG91bGQgaGF2ZSBwb3NpdGlvbjpyZWxhdGl2ZS5cbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQGRlZmF1bHQgJydcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBhcHBlbmRUbzogc3RyaW5nID0gJyc7XG5cbiAgLyoqXG4gICAqIE91dHB1dCB2YXJpYWJsZSB0byBlbWl0IGNoYW5nZXMgd2hlbiB0aGUgc2VsZWN0IGlucHV0IHZhbHVlIGNoYW5nZXMuXG4gICAqIEB0eXBlIHtFdmVudEVtaXR0ZXI8YW55Pn1cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgb25DaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnk+KCk7XG5cbiAgLyoqXG4gICAqIFN1YmplY3QgZm9yIGhhbmRsaW5nIHR5cGVhaGVhZCBldmVudHMgdG8gdHJpZ2dlciBpdGVtIHF1ZXJpZXMgYmFzZWQgb24gdGhlIHNlYXJjaCBrZXl3b3JkLlxuICAgKiBAdHlwZSB7U3ViamVjdDxzdHJpbmc+fVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IHR5cGVhaGVhZDogU3ViamVjdDxzdHJpbmc+ID0gbmV3IFN1YmplY3Q8c3RyaW5nPigpO1xuXG4gIC8qKlxuICAgKiBPYnNlcnZhYmxlIGZvciBoYW5kbGluZyBpdGVtIHF1ZXJpZXMgYmFzZWQgb24gdGhlIHNlYXJjaCBrZXl3b3JkLlxuICAgKiBAdHlwZSB7T2JzZXJ2YWJsZTxhbnlbXT59XG4gICAqL1xuICBwcm90ZWN0ZWQgcmVhZG9ubHkgcXVlcnkkOiBPYnNlcnZhYmxlPGFueVtdPiA9IHRoaXMudHlwZWFoZWFkLnBpcGUoXG4gICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICBkZWJvdW5jZVRpbWUoMzAwKSxcbiAgICB0YXAoKCkgPT4gdGhpcy5pc0xvYWRpbmcgPSB0cnVlKSxcbiAgICBzd2l0Y2hNYXAoKGs6IHN0cmluZykgPT4gdGhpcy5xdWVyeUZ1bmMoaykucGlwZShcbiAgICAgIG1hcCgocmVzdWx0OiBhbnlbXSkgPT4gcmVzdWx0Lmxlbmd0aCA9PT0gMD8gdGhpcy5pbml0aWFsSXRlbXMgOiByZXN1bHQpLFxuICAgICAgY2F0Y2hFcnJvcigoKSA9PiBvZih0aGlzLmluaXRpYWxJdGVtcykpXG4gICAgKSksXG4gICAgdGFwKCgpID0+IHRoaXMuaXNMb2FkaW5nID0gZmFsc2UpXG4gICk7XG5cbiAgLyoqXG4gICAqIE9ic2VydmFibGUgZm9yIGRpc3BsYXlpbmcgaXRlbXMgaW4gdGhlIHNlbGVjdCBpbnB1dC5cbiAgICogQHR5cGUge09ic2VydmFibGU8YW55W10+fVxuICAgKi9cbiAgcHVibGljIGl0ZW1zJDogT2JzZXJ2YWJsZTxhbnlbXT4gPSB0aGlzLnF1ZXJ5JDtcblxuICAvKipcbiAgICogQm9vbGVhbiBmbGFnIGluZGljYXRpbmcgd2hldGhlciB0aGUgc2VsZWN0IGlucHV0IGlzIGxvYWRpbmcuXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcHVibGljIGlzTG9hZGluZzogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBCb29sZWFuIGZsYWcgaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBzZWxlY3QgaW5wdXQgaGFzIGJlZW4gdG91Y2hlZC5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBwdWJsaWMgaXNUb3VjaGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFRoZSB2YWx1ZSBvZiB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAdHlwZSB7YW55IHwgbnVsbH1cbiAgICogQGRlZmF1bHQgbnVsbFxuICAgKi9cbiAgcHVibGljIHZhbHVlOiBhbnkgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogRXJyb3IgbWVzc2FnZSBhc3NvY2lhdGVkIHdpdGggdGhlIHNlbGVjdCBpbnB1dC5cbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQGRlZmF1bHQgdW5kZWZpbmVkXG4gICAqL1xuICBwdWJsaWMgZXJyb3JNc2chOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBmb3JtIGNvbnRyb2wgYXNzb2NpYXRlZCB3aXRoIHRoZSBzZWxlY3QgaW5wdXQuXG4gICAqIEB0eXBlIHtBYnN0cmFjdENvbnRyb2x9XG4gICAqL1xuICBwcm90ZWN0ZWQgZm9ybUNvbnRyb2whOiBBYnN0cmFjdENvbnRyb2w7XG5cbiAgLyoqXG4gICAqIENhbGxiYWNrIGZ1bmN0aW9uIHRvIGhhbmRsZSB2YWx1ZSBjaGFuZ2VzIGluIHRoZSBzZWxlY3QgaW5wdXQuXG4gICAqIEB0eXBlIHsoX3ZhbDogYW55KSA9PiB2b2lkfVxuICAgKi9cbiAgcHJvdGVjdGVkIGNoYW5nZWQ6IChfdmFsOiBhbnkpID0+IHZvaWQgPSAoX3ZhbDogYW55KSA9PiB7fTtcblxuICAvKipcbiAgICogQ2FsbGJhY2sgZnVuY3Rpb24gdG8gaGFuZGxlIHRvdWNoIGV2ZW50cyBpbiB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAdHlwZSB7KCkgPT4gdm9pZH1cbiAgICovXG4gIHByb3RlY3RlZCBvblRvdWNoZWQ6ICgpID0+IHZvaWQgPSAoKSA9PiB7fTtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAQXR0cmlidXRlKCdwbGFjZWhvbGRlcicpIHB1YmxpYyBwbGFjZWhvbGRlcjogc3RyaW5nLFxuICAgIHByb3RlY3RlZCByZWFkb25seSBjaDogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7IH1cblxuICAvKipcbiAgICogTGlmZWN5Y2xlIGhvb2sgY2FsbGVkIHdoZW4gY2hhbmdlcyBvY2N1ciB0byBpbnB1dCBwcm9wZXJ0aWVzLlxuICAgKiBVcGRhdGVzIHRoZSBpdGVtcyQgb2JzZXJ2YWJsZSB3aGVuIHRoZSBpbml0aWFsSXRlbXMgaW5wdXQgY2hhbmdlcy5cbiAgICogQHBhcmFtIHtTaW1wbGVDaGFuZ2VzfSBjaGFuZ2VzIC0gT2JqZWN0IGNvbnRhaW5pbmcgdGhlIGNoYW5nZWQgcHJvcGVydGllcy5cbiAgICovXG4gIHB1YmxpYyBuZ09uQ2hhbmdlcyhjaGFuZ2VzOiBTaW1wbGVDaGFuZ2VzKTogdm9pZHtcbiAgICBpZiAoY2hhbmdlc1snaW5pdGlhbEl0ZW1zJ10pIHRoaXMuaXRlbXMkID0gY29uY2F0KG9mKHRoaXMuaW5pdGlhbEl0ZW1zKSwgdGhpcy5xdWVyeSQpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVycyBhIGNhbGxiYWNrIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSBzZWxlY3QgaW5wdXQgdmFsdWUgY2hhbmdlcy5cbiAgICogQHBhcmFtIHsoX3ZhbDogYW55KSA9PiB2b2lkfSBmbiAtIENhbGxiYWNrIGZ1bmN0aW9uIGZvciB2YWx1ZSBjaGFuZ2VzLlxuICAgKi9cbiAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWR7IHRoaXMuY2hhbmdlZCA9IGZuOyB9XG4gIFxuICAvKipcbiAgICogUmVnaXN0ZXJzIGEgY2FsbGJhY2sgZnVuY3Rpb24gdG8gYmUgY2FsbGVkIHdoZW4gdGhlIHNlbGVjdCBpbnB1dCBpcyB0b3VjaGVkLlxuICAgKiBAcGFyYW0geygpID0+IHZvaWR9IGZuIC0gQ2FsbGJhY2sgZnVuY3Rpb24gZm9yIHRvdWNoIGV2ZW50cy5cbiAgICovXG4gIHB1YmxpYyByZWdpc3Rlck9uVG91Y2hlZChmbjogYW55KTogdm9pZHsgdGhpcy5vblRvdWNoZWQgPSBmbjsgfSBcbiAgXG4gIC8qKlxuICAgKiBXcml0ZXMgYSBuZXcgdmFsdWUgdG8gdGhlIHNlbGVjdCBpbnB1dC5cbiAgICogQHBhcmFtIHsqfSB2YWwgLSBUaGUgbmV3IHZhbHVlIHRvIGJlIHNldC5cbiAgICovXG4gIHB1YmxpYyB3cml0ZVZhbHVlKHZhbDogYW55KTogdm9pZHsgXG4gICAgdGhpcy52YWx1ZSA9IHZhbDsgXG4gICAgdGhpcy5jaC5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuICBcbiAgLyoqXG4gICAqIFNldHMgdGhlIGRpc2FibGVkIHN0YXRlIG9mIHRoZSBzZWxlY3QgaW5wdXQuXG4gICAqIEBwYXJhbSB7Ym9vbGVhbn0gZCAtIFRoZSBuZXcgZGlzYWJsZWQgc3RhdGUuXG4gICAqL1xuICBwdWJsaWMgc2V0RGlzYWJsZWRTdGF0ZT8oZDogYm9vbGVhbik6IHZvaWR7IFxuICAgIHRoaXMuZGlzYWJsZWQgPSBkOyBcbiAgICB0aGlzLmNoLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIFZhbGlkYXRlcyB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAcGFyYW0ge0Fic3RyYWN0Q29udHJvbH0gY29udHJvbCAtIFRoZSBhYnN0cmFjdCBjb250cm9sIHJlcHJlc2VudGluZyB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAcmV0dXJucyB7KFZhbGlkYXRpb25FcnJvcnMgfCBudWxsKX0gLSBWYWxpZGF0aW9uIGVycm9ycyBpZiBhbnksIG90aGVyd2lzZSBudWxsLlxuICAgKi9cbiAgcHVibGljIHZhbGlkYXRlKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxseyAgICBcbiAgICB0aGlzLmZvcm1Db250cm9sID0gY29udHJvbDtcbiAgICByZXR1cm4gbnVsbDtcbiAgfVxuXG4gIC8qKlxuICAgKiBFdmVudCBoYW5kbGVyIGZvciBjaGFuZ2VzIGluIHRoZSBzZWxlY3QgaW5wdXQuXG4gICAqIEVtaXRzIHRoZSBvbkNoYW5nZSBldmVudCwgdXBkYXRlcyB0aGUgaW5pdGlhbEl0ZW1zLCBhbmQgaGFuZGxlcyB2YWxpZGF0aW9uIGJhc2VkIG9uIGZvcm0gY29udHJvbCBlcnJvcnMgYW5kIGxhYmVsLlxuICAgKiBAcGFyYW0ge2FueX0gZSAtIFRoZSBldmVudCBjb250YWluaW5nIHRoZSBuZXcgc2VsZWN0IGlucHV0IHZhbHVlLlxuICAgKi9cbiAgcHVibGljIGNoYW5nZShlPzogYW55KTogdm9pZHtcbiAgICB0aGlzLm9uQ2hhbmdlLmVtaXQoZSk7XG4gICAgdGhpcy5pbml0aWFsSXRlbXMgPSBlO1xuXG4gICAgaWYgKCF0aGlzLmlzVG91Y2hlZCkge1xuICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICAgIHRoaXMuaXNUb3VjaGVkID0gdHJ1ZTtcbiAgICB9XG4gICAgXG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICBpZiAoIWUpIHRoaXMudmFsdWUgPSBudWxsO1xuICAgICAgZWxzZSB7XG4gICAgICAgIHRoaXMudmFsdWUgPSAhdGhpcy5tdWx0aXBsZT8gZVt0aGlzLmJpbmRWYWx1ZV0gOiBlLm1hcCgobzogYW55KSA9PiBvW3RoaXMuYmluZFZhbHVlXSk7XG4gICAgICB9XG5cbiAgICAgIHRoaXMuY2hhbmdlZCh0aGlzLnZhbHVlKTtcbiAgICAgIHRoaXMuZXJyb3JNc2cgPSBnZXRGb3JtRXJyb3JNZXNzYWdlKHRoaXMuZm9ybUNvbnRyb2wuZXJyb3JzLCB0aGlzLmxhYmVsKTtcbiAgICB9XG4gIH1cbn1cbiIsIjxsYWJlbCBjbGFzcz1cImZvcm0tbGFiZWwgZC1mbGV4IGFsaWduLWl0ZW1zLWNlbnRlclwiIFtjbGFzcy5yZXF1aXJlZF09XCJyZXF1aXJlZFwiPlxuICAgIDxuZy1jb250ZW50IHNlbGVjdD1cIltpY29uXVwiIC8+XG4gICAgPHNwYW4+e3sgbGFiZWwgfX08L3NwYW4+XG48L2xhYmVsPlxuXG48bmctc2VsZWN0IFxuICAgIHR5cGVUb1NlYXJjaFRleHQ9XCJQbGVhc2UgZW50ZXIgMyBvciBtb3JlIGNoYXJhY3RlcnNcIlxuICAgIGJpbmRMYWJlbD1cInt7IGJpbmRMYWJlbCB9fVwiXG4gICAgYmluZFZhbHVlPVwie3sgYmluZFZhbHVlIH19XCJcbiAgICBwbGFjZWhvbGRlcj1cInt7IHBsYWNlaG9sZGVyIH19XCJcbiAgICBbbWluVGVybUxlbmd0aF09XCIzXCJcbiAgICBbdmlydHVhbFNjcm9sbF09XCJ0cnVlXCJcbiAgICBbZWRpdGFibGVTZWFyY2hUZXJtXT1cInRydWVcIlxuICAgIFtuZ01vZGVsXT1cInZhbHVlXCIgXG4gICAgW2FkZFRhZ109XCJhZGRUYWdcIlxuICAgIFttdWx0aXBsZV09XCJtdWx0aXBsZVwiXG4gICAgW3JlYWRvbmx5XT1cImRpc2FibGVkXCIgXG4gICAgW2xvYWRpbmddPVwiaXNMb2FkaW5nXCJcbiAgICBbYXBwZW5kVG9dPVwiYXBwZW5kVG9cIiBcbiAgICBbY2xlYXJhYmxlXT1cImNsZWFyYWJsZVwiXG4gICAgW3R5cGVhaGVhZF09XCJ0eXBlYWhlYWRcIlxuICAgIFtpdGVtc109XCJpdGVtcyQgfCBhc3luY1wiXG4gICAgKGNoYW5nZSk9XCJjaGFuZ2UoJGV2ZW50KTtcIlxuLz5cblxuQGlmIChlcnJvck1zZykge1xuICAgIDxsYWJlbCBjbGFzcz1cImlzLWludmFsaWRcIj57eyBlcnJvck1zZyB9fTwvbGFiZWw+XG59XG4iXX0=
@@ -53,8 +53,8 @@ export class FormSelectComponent {
53
53
  this.errorMsg = getFormErrorMessage(this.formControl.errors, this.label);
54
54
  }
55
55
  }
56
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: FormSelectComponent, deps: [{ token: 'placeholder', attribute: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
57
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.4", type: FormSelectComponent, isStandalone: true, selector: "up-select", inputs: { items: "items", clearable: "clearable", label: "label", multiple: "multiple", required: "required", addTag: "addTag", disabled: "disabled", searchable: "searchable", bindLabel: "bindLabel", bindValue: "bindValue", appendTo: "appendTo" }, host: { classAttribute: "d-block" }, providers: [
56
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FormSelectComponent, deps: [{ token: 'placeholder', attribute: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
57
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FormSelectComponent, isStandalone: true, selector: "up-select", inputs: { items: "items", clearable: "clearable", label: "label", multiple: "multiple", required: "required", addTag: "addTag", disabled: "disabled", searchable: "searchable", bindLabel: "bindLabel", bindValue: "bindValue", appendTo: "appendTo" }, host: { classAttribute: "d-block" }, providers: [
58
58
  {
59
59
  multi: true,
60
60
  provide: NG_VALUE_ACCESSOR,
@@ -65,9 +65,9 @@ export class FormSelectComponent {
65
65
  provide: NG_VALIDATORS,
66
66
  useExisting: FormSelectComponent
67
67
  }
68
- ], ngImport: i0, template: "<label class=\"form-label d-flex align-items-center\" [class.required]=\"required\">\n <ng-content select=\"[icon]\"/>\n <span>{{ label }}</span>\n</label>\n\n<ng-select\n bindLabel=\"{{ bindLabel }}\"\n bindValue=\"{{ bindValue }}\"\n placeholder=\"{{ placeholder }}\"\n [virtualScroll]=\"true\"\n [items]=\"items\"\n [ngModel]=\"value\"\n [addTag]=\"addTag\"\n [multiple]=\"multiple\"\n [readonly]=\"disabled\"\n [appendTo]=\"appendTo\"\n [clearable]=\"clearable\"\n [searchable]=\"searchable\"\n (change)=\"change($event);\"\n/>\n\n@if (errorMsg) {\n <label class=\"is-invalid\">{{ errorMsg }}</label>\n}\n", styles: [".ng-select.ng-select-opened>.ng-select-container{background:#fff}.ng-select.ng-select-opened>.ng-select-container:hover{box-shadow:none}.ng-select.ng-select-opened>.ng-select-container .ng-arrow{top:-2px;border-color:transparent transparent #616161;border-width:0 5px 5px}.ng-select.ng-select-disabled>.ng-select-container{background-color:#e9ecef}.ng-select .ng-has-value .ng-placeholder{display:none}.ng-select .ng-select-container{color:#424242;background-color:#fff;border-radius:4px;border:2px solid #e0e0e0;min-height:36px;align-items:center}.ng-select .ng-select-container:hover{box-shadow:0 1px #0000000f}.ng-select .ng-select-container .ng-value-container{align-items:center;padding-left:10px}.ng-select .ng-select-container .ng-value-container .ng-placeholder{color:#a8a8a8}.ng-select.ng-select-single .ng-select-container{height:36px}.ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{left:0;padding-left:10px;padding-right:50px}.ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input input{color:#424242}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value{background-color:#e9ecef;border:1px solid #fafafa}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value .ng-value-label{padding:0 5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container{padding-top:5px;padding-left:7px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value{font-size:.9em;margin-bottom:5px;color:#ed6b26;background-color:#fef3ee;border-radius:2px;margin-right:5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled{background-color:#e9ecef}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled .ng-value-label{padding-left:5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-label,.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon{display:inline-block;padding:1px 5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon:hover{background-color:#fde2d6}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.left{border-right:1px solid #fbd1be}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.right{border-left:1px solid #fbd1be}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input{padding:0 0 3px 3px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input>input{color:#424242}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{padding-bottom:5px;padding-left:3px}.ng-select .ng-clear-wrapper{color:#adadad}.ng-select .ng-clear-wrapper:hover .ng-clear{color:#ff3b30}.ng-select .ng-spinner-zone{padding:5px 5px 0 0}.ng-select .ng-arrow-wrapper{width:25px;padding-right:5px}.ng-select .ng-arrow-wrapper .ng-arrow{border-color:#616161 transparent transparent;border-style:solid;border-width:5px 5px 2.5px}.ng-dropdown-panel{background-color:#fff;border:2px solid #e0e0e0;box-shadow:0 1px #0000000f;left:0;z-index:20100!important;border-radius:4px}.ng-dropdown-panel.ng-select-top{bottom:100%;margin-bottom:2px}.ng-dropdown-panel.ng-select-bottom{top:100%;margin-top:2px}.ng-dropdown-panel .ng-dropdown-header{border-bottom:1px solid #e0e0e0;padding:5px 7px}.ng-dropdown-panel .ng-dropdown-footer{border-top:1px solid #e0e0e0;padding:5px 7px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup{-webkit-user-select:none;user-select:none;padding:8px 10px;font-weight:500;color:#0000008a;cursor:pointer}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-disabled{cursor:default}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-marked{background-color:#fef3ee}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected.ng-option-marked{color:#0000008a;background-color:#fef3ee;font-weight:600}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option{background-color:#fff;color:#000000de;padding:8px 10px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked{color:#ed6b26;background-color:#fef3ee}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected .ng-option-label,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked .ng-option-label{font-weight:600}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-marked{background-color:#fef3ee;color:#424242}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-disabled{color:#888}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-child{padding-left:22px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .ng-tag-label{font-size:80%;font-weight:400;padding-right:5px}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: NgSelectModule }, { kind: "component", type: i2.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "markFirst", "placeholder", "notFoundText", "typeToSearchText", "preventToggleOnRightClick", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "ngClass", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "deselectOnClick"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
68
+ ], ngImport: i0, template: "<label class=\"form-label d-flex align-items-center\" [class.required]=\"required\">\n <ng-content select=\"[icon]\"/>\n <span>{{ label }}</span>\n</label>\n\n<ng-select\n bindLabel=\"{{ bindLabel }}\"\n bindValue=\"{{ bindValue }}\"\n placeholder=\"{{ placeholder }}\"\n [virtualScroll]=\"true\"\n [items]=\"items\"\n [ngModel]=\"value\"\n [addTag]=\"addTag\"\n [multiple]=\"multiple\"\n [readonly]=\"disabled\"\n [appendTo]=\"appendTo\"\n [clearable]=\"clearable\"\n [searchable]=\"searchable\"\n (change)=\"change($event);\"\n/>\n\n@if (errorMsg) {\n <label class=\"is-invalid\">{{ errorMsg }}</label>\n}\n", styles: [".ng-select.ng-select-opened>.ng-select-container{background:#fff}.ng-select.ng-select-opened>.ng-select-container:hover{box-shadow:none}.ng-select.ng-select-opened>.ng-select-container .ng-arrow{top:-2px;border-color:transparent transparent #616161;border-width:0 5px 5px}.ng-select.ng-select-disabled>.ng-select-container{background-color:#e9ecef}.ng-select .ng-has-value .ng-placeholder{display:none}.ng-select .ng-select-container{color:#424242;background-color:#fff;border-radius:4px;border:2px solid #e0e0e0;min-height:36px;align-items:center}.ng-select .ng-select-container:hover{box-shadow:0 1px #0000000f}.ng-select .ng-select-container .ng-value-container{align-items:center;padding-left:10px}.ng-select .ng-select-container .ng-value-container .ng-placeholder{color:#a8a8a8}.ng-select.ng-select-single .ng-select-container{height:36px}.ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input{left:0;padding-left:10px;padding-right:50px}.ng-select.ng-select-single .ng-select-container .ng-value-container .ng-input input{color:#424242}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value{background-color:#e9ecef;border:1px solid #fafafa}.ng-select.ng-select-multiple.ng-select-disabled>.ng-select-container .ng-value-container .ng-value .ng-value-label{padding:0 5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container{padding-top:5px;padding-left:7px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value{font-size:.9em;margin-bottom:5px;color:#ed6b26;background-color:#fef3ee;border-radius:2px;margin-right:5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled{background-color:#e9ecef}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value.ng-value-disabled .ng-value-label{padding-left:5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-label,.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon{display:inline-block;padding:1px 5px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon:hover{background-color:#fde2d6}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.left{border-right:1px solid #fbd1be}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-value .ng-value-icon.right{border-left:1px solid #fbd1be}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input{padding:0 0 3px 3px}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-input>input{color:#424242}.ng-select.ng-select-multiple .ng-select-container .ng-value-container .ng-placeholder{padding-bottom:5px;padding-left:3px}.ng-select .ng-clear-wrapper{color:#adadad}.ng-select .ng-clear-wrapper:hover .ng-clear{color:#ff3b30}.ng-select .ng-spinner-zone{padding:5px 5px 0 0}.ng-select .ng-arrow-wrapper{width:25px;padding-right:5px}.ng-select .ng-arrow-wrapper .ng-arrow{border-color:#616161 transparent transparent;border-style:solid;border-width:5px 5px 2.5px}.ng-dropdown-panel{background-color:#fff;border:2px solid #e0e0e0;box-shadow:0 1px #0000000f;left:0;z-index:20100!important;border-radius:4px}.ng-dropdown-panel.ng-select-top{bottom:100%;margin-bottom:2px}.ng-dropdown-panel.ng-select-bottom{top:100%;margin-top:2px}.ng-dropdown-panel .ng-dropdown-header{border-bottom:1px solid #e0e0e0;padding:5px 7px}.ng-dropdown-panel .ng-dropdown-footer{border-top:1px solid #e0e0e0;padding:5px 7px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup{-webkit-user-select:none;user-select:none;padding:8px 10px;font-weight:500;color:#0000008a;cursor:pointer}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-disabled{cursor:default}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-marked{background-color:#fef3ee}.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-optgroup.ng-option-selected.ng-option-marked{color:#0000008a;background-color:#fef3ee;font-weight:600}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option{background-color:#fff;color:#000000de;padding:8px 10px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked{color:#ed6b26;background-color:#fef3ee}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected .ng-option-label,.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-selected.ng-option-marked .ng-option-label{font-weight:600}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-marked{background-color:#fef3ee;color:#424242}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-disabled{color:#888}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option.ng-option-child{padding-left:22px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .ng-tag-label{font-size:80%;font-weight:400;padding-right:5px}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: NgSelectModule }, { kind: "component", type: i2.NgSelectComponent, selector: "ng-select", inputs: ["bindLabel", "bindValue", "ariaLabel", "markFirst", "placeholder", "fixedPlaceholder", "notFoundText", "typeToSearchText", "preventToggleOnRightClick", "addTagText", "loadingText", "clearAllText", "appearance", "dropdownPosition", "appendTo", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "openOnEnter", "maxSelectedItems", "groupBy", "groupValue", "bufferAmount", "virtualScroll", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "tabIndex", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "ngClass", "typeahead", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "deselectOnClick", "keyDownFn"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
69
69
  }
70
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: FormSelectComponent, decorators: [{
70
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FormSelectComponent, decorators: [{
71
71
  type: Component,
72
72
  args: [{ standalone: true, selector: 'up-select', changeDetection: ChangeDetectionStrategy.OnPush, host: {
73
73
  class: 'd-block'
@@ -113,4 +113,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
113
113
  }], appendTo: [{
114
114
  type: Input
115
115
  }] } });
116
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdW5pcGluLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm1zL3NlbGVjdC9mb3JtLXNlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvZm9ybXMvc2VsZWN0L2Zvcm0tc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEcsT0FBTyxFQUF5QyxXQUFXLEVBQUUsYUFBYSxFQUFFLGlCQUFpQixFQUErQixNQUFNLGdCQUFnQixDQUFDO0FBQ25KLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQTRCckQsTUFBTSxPQUFPLG1CQUFtQjtJQXNIOUIsWUFDbUMsV0FBbUIsRUFDakMsRUFBcUI7UUFEUCxnQkFBVyxHQUFYLFdBQVcsQ0FBUTtRQUNqQyxPQUFFLEdBQUYsRUFBRSxDQUFtQjtRQTFHMUIsY0FBUyxHQUFZLElBQUksQ0FBQztRQU8xQixVQUFLLEdBQVcsRUFBRSxDQUFDO1FBT25CLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFPMUIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQU8xQixXQUFNLEdBQVksS0FBSyxDQUFDO1FBT3hCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFPMUIsZUFBVSxHQUFZLEtBQUssQ0FBQztRQU81QixjQUFTLEdBQVcsT0FBTyxDQUFDO1FBTzVCLGNBQVMsR0FBVyxPQUFPLENBQUM7UUFPNUIsYUFBUSxHQUFXLEVB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QUs7c0JBQXRDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQU9ULFNBQVM7c0JBQXhCLEtBQUs7Z0JBT1UsS0FBSztzQkFBcEIsS0FBSztnQkFPVSxRQUFRO3NCQUF2QixLQUFLO2dCQU9VLFFBQVE7c0JBQXZCLEtBQUs7Z0JBT1UsTUFBTTtzQkFBckIsS0FBSztnQkFPVSxRQUFRO3NCQUF2QixLQUFLO2dCQU9VLFVBQVU7c0JBQXpCLEtBQUs7Z0JBT1UsU0FBUztzQkFBeEIsS0FBSztnQkFPVSxTQUFTO3NCQUF4QixLQUFLO2dCQU9VLFFBQVE7c0JBQXZCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBdHRyaWJ1dGUsIENoYW5nZURldGVjdG9yUmVmLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBDb250cm9sVmFsdWVBY2Nlc3NvciwgRm9ybXNNb2R1bGUsIE5HX1ZBTElEQVRPUlMsIE5HX1ZBTFVFX0FDQ0VTU09SLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBOZ1NlbGVjdE1vZHVsZSB9IGZyb20gJ0BuZy1zZWxlY3Qvbmctc2VsZWN0JztcbmltcG9ydCB7IGdldEZvcm1FcnJvck1lc3NhZ2UgfSBmcm9tICcuLi8uLi8uLi91dGlscyc7XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3VwLXNlbGVjdCcsXG4gIHN0eWxlVXJsOiAnLi9mb3JtLXNlbGVjdC5jb21wb25lbnQuc2NzcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9mb3JtLXNlbGVjdC5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0OiB7IFxuICAgIGNsYXNzOiAnZC1ibG9jaycgXG4gIH0sXG4gIGltcG9ydHM6IFtcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBOZ1NlbGVjdE1vZHVsZVxuICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IEZvcm1TZWxlY3RDb21wb25lbnRcbiAgICB9LFxuICAgIHtcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgcHJvdmlkZTogTkdfVkFMSURBVE9SUyxcbiAgICAgIHVzZUV4aXN0aW5nOiBGb3JtU2VsZWN0Q29tcG9uZW50XG4gICAgfVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1TZWxlY3RDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgVmFsaWRhdG9yIHtcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgZm9yIHRoZSBpdGVtcyB0byBiZSBkaXNwbGF5ZWQgaW4gdGhlIHNlbGVjdCBpbnB1dC5cbiAgICogQHR5cGUge2FueVtdfVxuICAgKiBAcmVxdWlyZWRcbiAgICovXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIHB1YmxpYyBpdGVtcyE6IGFueVtdO1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YXJpYWJsZSB0byBkZXRlcm1pbmUgd2hldGhlciB0aGUgc2VsZWN0IGlucHV0IGlzIGNsZWFyYWJsZS5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBjbGVhcmFibGU6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YXJpYWJsZSBmb3IgdGhlIGxhYmVsIGFzc29jaWF0ZWQgd2l0aCB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAZGVmYXVsdCAnJ1xuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGxhYmVsOiBzdHJpbmcgPSAnJztcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGhlIHNlbGVjdCBpbnB1dCBhbGxvd3MgbXVsdGlwbGUgc2VsZWN0aW9ucy5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgbXVsdGlwbGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGhlIHNlbGVjdCBpbnB1dCBpcyByZXF1aXJlZC5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgcmVxdWlyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGFncyBjYW4gYmUgYWRkZWQgdG8gdGhlIHNlbGVjdCBpbnB1dC5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgYWRkVGFnOiBib29sZWFuID0gZmFsc2U7XG4gIFxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGhlIHNlbGVjdCBpbnB1dCBpcyBkaXNhYmxlZC5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGhlIHNlbGVjdCBpbnB1dCBpcyBzZWFyY2hhYmxlLlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBzZWFyY2hhYmxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIElucHV0IHZhcmlhYmxlIHNwZWNpZnlpbmcgdGhlIHByb3BlcnR5IHRvIGJpbmQgYXMgdGhlIGxhYmVsIGZvciBpdGVtcyBpbiB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAZGVmYXVsdCAnbGFiZWwnXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgYmluZExhYmVsOiBzdHJpbmcgPSAnbGFiZWwnO1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YXJpYWJsZSBzcGVjaWZ5aW5nIHRoZSBwcm9wZXJ0eSB0byBiaW5kIGFzIHRoZSB2YWx1ZSBmb3IgaXRlbXMgaW4gdGhlIHNlbGVjdCBpbnB1dC5cbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQGRlZmF1bHQgJ3ZhbHVlJ1xuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGJpbmRWYWx1ZTogc3RyaW5nID0gJ3ZhbHVlJztcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgc3BlY2lmeWluZyBhcHBlbmQgZHJvcGRvd24gdG8gYm9keSBvciBhbnkgb3RoZXIgZWxlbWVudCB1c2luZyBjc3Mgc2VsZWN0b3IuIEZvciBjb3JyZWN0IHBvc2l0aW9uaW5nIGJvZHkgc2hvdWxkIGhhdmUgcG9zaXRpb246cmVsYXRpdmUuXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBkZWZhdWx0ICcnXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgYXBwZW5kVG86IHN0cmluZyA9ICcnO1xuXG4gIC8qKlxuICAgKiBCb29sZWFuIGZsYWcgaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBzZWxlY3QgaW5wdXQgaGFzIGJlZW4gdG91Y2hlZC5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBwdWJsaWMgaXNUb3VjaGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFRoZSB2YWx1ZSBvZiB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAdHlwZSB7YW55IHwgbnVsbH1cbiAgICogQGRlZmF1bHQgbnVsbFxuICAgKi9cbiAgcHVibGljIHZhbHVlOiBhbnkgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogRXJyb3IgbWVzc2FnZSBhc3NvY2lhdGVkIHdpdGggdGhlIHNlbGVjdCBpbnB1dC5cbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQGRlZmF1bHQgdW5kZWZpbmVkXG4gICAqL1xuICBwdWJsaWMgZXJyb3JNc2chOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBmb3JtIGNvbnRyb2wgYXNzb2NpYXRlZCB3aXRoIHRoZSBzZWxlY3QgaW5wdXQuXG4gICAqIEB0eXBlIHtBYnN0cmFjdENvbnRyb2x9XG4gICAqL1xuICBwcm90ZWN0ZWQgZm9ybUNvbnRyb2whOiBBYnN0cmFjdENvbnRyb2w7XG5cbiAgLyoqXG4gICAqIENhbGxiYWNrIGZ1bmN0aW9uIHRvIGhhbmRsZSB2YWx1ZSBjaGFuZ2VzIGluIHRoZSBzZWxlY3QgaW5wdXQuXG4gICAqIEB0eXBlIHsoX3ZhbDogYW55KSA9PiB2b2lkfVxuICAgKi9cbiAgcHJvdGVjdGVkIG9uQ2hhbmdlOiAoX3ZhbDogYW55KSA9PiB2b2lkID0gKF92YWw6IGFueSkgPT4ge307XG5cbiAgLyoqXG4gICAqIENhbGxiYWNrIGZ1bmN0aW9uIHRvIGhhbmRsZSB0b3VjaCBldmVudHMgaW4gdGhlIHNlbGVjdCBpbnB1dC5cbiAgICogQHR5cGUgeygpID0+IHZvaWR9XG4gICAqL1xuICBwcm90ZWN0ZWQgb25Ub3VjaGVkOiAoKSA9PiB2b2lkID0gKCkgPT4ge307XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEF0dHJpYnV0ZSgncGxhY2Vob2xkZXInKSBwdWJsaWMgcGxhY2Vob2xkZXI6IHN0cmluZyxcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2g6IENoYW5nZURldGVjdG9yUmVmXG4gICkgeyB9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVycyBhIGNhbGxiYWNrIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSBzZWxlY3QgaW5wdXQgdmFsdWUgY2hhbmdlcy5cbiAgICogQHBhcmFtIHsoX3ZhbDogYW55KSA9PiB2b2lkfSBmbiAtIENhbGxiYWNrIGZ1bmN0aW9uIGZvciB2YWx1ZSBjaGFuZ2VzLlxuICAgKi9cbiAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWR7IHRoaXMub25DaGFuZ2UgPSBmbjsgfVxuXG4gIC8qKlxuICAgKiBSZWdpc3RlcnMgYSBjYWxsYmFjayBmdW5jdGlvbiB0byBiZSBjYWxsZWQgd2hlbiB0aGUgc2VsZWN0IGlucHV0IGlzIHRvdWNoZWQuXG4gICAqIEBwYXJhbSB7KCkgPT4gdm9pZH0gZm4gLSBDYWxsYmFjayBmdW5jdGlvbiBmb3IgdG91Y2ggZXZlbnRzLlxuICAgKi9cbiAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkeyB0aGlzLm9uVG91Y2hlZCA9IGZuOyB9XG5cbiAgLyoqXG4gICAqIFdyaXRlcyBhIG5ldyB2YWx1ZSB0byB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAcGFyYW0geyp9IHZhbCAtIFRoZSBuZXcgdmFsdWUgdG8gYmUgc2V0LlxuICAgKi9cbiAgcHVibGljIHdyaXRlVmFsdWUodmFsOiBhbnkpOiB2b2lke1xuICAgIHRoaXMudmFsdWUgPSB2YWw7XG4gICAgdGhpcy5jaC5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBkaXNhYmxlZCBzdGF0ZSBvZiB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IGQgLSBUaGUgbmV3IGRpc2FibGVkIHN0YXRlLlxuICAgKi9cbiAgcHVibGljIHNldERpc2FibGVkU3RhdGU/KGQ6IGJvb2xlYW4pOiB2b2lkeyBcbiAgICB0aGlzLmRpc2FibGVkID0gZDtcbiAgICB0aGlzLmNoLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIFZhbGlkYXRlcyB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAcGFyYW0ge0Fic3RyYWN0Q29udHJvbH0gY29udHJvbCAtIFRoZSBhYnN0cmFjdCBjb250cm9sIHJlcHJlc2VudGluZyB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAcmV0dXJucyB7KFZhbGlkYXRpb25FcnJvcnMgfCBudWxsKX0gLSBWYWxpZGF0aW9uIGVycm9ycyBpZiBhbnksIG90aGVyd2lzZSBudWxsLlxuICAgKi9cbiAgcHVibGljIHZhbGlkYXRlKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxse1xuICAgIHRoaXMuZm9ybUNvbnRyb2wgPSBjb250cm9sO1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIEV2ZW50IGhhbmRsZXIgZm9yIGNoYW5nZXMgaW4gdGhlIHNlbGVjdCBpbnB1dC5cbiAgICogRW1pdHMgdGhlIG9uQ2hhbmdlIGV2ZW50IGFuZCBoYW5kbGVzIHZhbGlkYXRpb24gYmFzZWQgb24gZm9ybSBjb250cm9sIGVycm9ycyBhbmQgbGFiZWwuXG4gICAqIEBwYXJhbSB7YW55fSBlIC0gVGhlIGV2ZW50IGNvbnRhaW5pbmcgdGhlIG5ldyBzZWxlY3QgaW5wdXQgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgY2hhbmdlKGU/OiBhbnkpOiB2b2lke1xuICAgIGlmICghdGhpcy5pc1RvdWNoZWQpIHtcbiAgICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gICAgICB0aGlzLmlzVG91Y2hlZCA9IHRydWU7XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICBpZiAoIWUpIHRoaXMudmFsdWUgPSBudWxsO1xuICAgICAgZWxzZSB7XG4gICAgICAgIHRoaXMudmFsdWUgPSAhdGhpcy5tdWx0aXBsZT8gZVt0aGlzLmJpbmRWYWx1ZV0gOiBlLm1hcCgobzogYW55KSA9PiBvW3RoaXMuYmluZFZhbHVlXSk7XG4gICAgICB9XG4gICAgICBcbiAgICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XG4gICAgICB0aGlzLmVycm9yTXNnID0gZ2V0Rm9ybUVycm9yTWVzc2FnZSh0aGlzLmZvcm1Db250cm9sLmVycm9ycywgdGhpcy5sYWJlbCk7XG4gICAgfVxuICB9XG59XG4iLCI8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIiBbY2xhc3MucmVxdWlyZWRdPVwicmVxdWlyZWRcIj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbaWNvbl1cIi8+XG4gICAgPHNwYW4+e3sgbGFiZWwgfX08L3NwYW4+XG48L2xhYmVsPlxuXG48bmctc2VsZWN0XG4gICAgYmluZExhYmVsPVwie3sgYmluZExhYmVsIH19XCJcbiAgICBiaW5kVmFsdWU9XCJ7eyBiaW5kVmFsdWUgfX1cIlxuICAgIHBsYWNlaG9sZGVyPVwie3sgcGxhY2Vob2xkZXIgfX1cIlxuICAgIFt2aXJ0dWFsU2Nyb2xsXT1cInRydWVcIlxuICAgIFtpdGVtc109XCJpdGVtc1wiXG4gICAgW25nTW9kZWxdPVwidmFsdWVcIlxuICAgIFthZGRUYWddPVwiYWRkVGFnXCJcbiAgICBbbXVsdGlwbGVdPVwibXVsdGlwbGVcIlxuICAgIFtyZWFkb25seV09XCJkaXNhYmxlZFwiXG4gICAgW2FwcGVuZFRvXT1cImFwcGVuZFRvXCJcbiAgICBbY2xlYXJhYmxlXT1cImNsZWFyYWJsZVwiXG4gICAgW3NlYXJjaGFibGVdPVwic2VhcmNoYWJsZVwiXG4gICAgKGNoYW5nZSk9XCJjaGFuZ2UoJGV2ZW50KTtcIlxuLz5cblxuQGlmIChlcnJvck1zZykge1xuICAgIDxsYWJlbCBjbGFzcz1cImlzLWludmFsaWRcIj57eyBlcnJvck1zZyB9fTwvbGFiZWw+XG59XG4iXX0=
116
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS1zZWxlY3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvdW5pcGluLWFuZ3VsYXIvc3JjL2xpYi9jb21wb25lbnRzL2Zvcm1zL3NlbGVjdC9mb3JtLXNlbGVjdC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvZm9ybXMvc2VsZWN0L2Zvcm0tc2VsZWN0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQXFCLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEcsT0FBTyxFQUF5QyxXQUFXLEVBQUUsYUFBYSxFQUFFLGlCQUFpQixFQUErQixNQUFNLGdCQUFnQixDQUFDO0FBQ25KLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQTRCckQsTUFBTSxPQUFPLG1CQUFtQjtJQXNIOUIsWUFDbUMsV0FBbUIsRUFDakMsRUFBcUI7UUFEUCxnQkFBVyxHQUFYLFdBQVcsQ0FBUTtRQUNqQyxPQUFFLEdBQUYsRUFBRSxDQUFtQjtRQTFHMUIsY0FBUyxHQUFZLElBQUksQ0FBQztRQU8xQixVQUFLLEdBQVcsRUFBRSxDQUFDO1FBT25CLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFPMUIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQU8xQixXQUFNLEdBQVksS0FBSyxDQUFDO1FBT3hCLGFBQVEsR0FBWSxLQUFLLENBQUM7UUFPMUIsZUFBVSxHQUFZLEtBQUssQ0FBQztRQU81QixjQUFTLEdBQVcsT0FBTyxDQUFDO1FBTzVCLGNBQVMsR0FBVyxPQUFPLENBQUM7UUFPNUIsYUFBUSxHQUFXLEVB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QUs7c0JBQXRDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQU9ULFNBQVM7c0JBQXhCLEtBQUs7Z0JBT1UsS0FBSztzQkFBcEIsS0FBSztnQkFPVSxRQUFRO3NCQUF2QixLQUFLO2dCQU9VLFFBQVE7c0JBQXZCLEtBQUs7Z0JBT1UsTUFBTTtzQkFBckIsS0FBSztnQkFPVSxRQUFRO3NCQUF2QixLQUFLO2dCQU9VLFVBQVU7c0JBQXpCLEtBQUs7Z0JBT1UsU0FBUztzQkFBeEIsS0FBSztnQkFPVSxTQUFTO3NCQUF4QixLQUFLO2dCQU9VLFFBQVE7c0JBQXZCLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBdHRyaWJ1dGUsIENoYW5nZURldGVjdG9yUmVmLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWJzdHJhY3RDb250cm9sLCBDb250cm9sVmFsdWVBY2Nlc3NvciwgRm9ybXNNb2R1bGUsIE5HX1ZBTElEQVRPUlMsIE5HX1ZBTFVFX0FDQ0VTU09SLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBOZ1NlbGVjdE1vZHVsZSB9IGZyb20gJ0BuZy1zZWxlY3Qvbmctc2VsZWN0JztcbmltcG9ydCB7IGdldEZvcm1FcnJvck1lc3NhZ2UgfSBmcm9tICcuLi8uLi8uLi91dGlscyc7XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3VwLXNlbGVjdCcsXG4gIHN0eWxlVXJsOiAnLi9mb3JtLXNlbGVjdC5jb21wb25lbnQuc2NzcycsXG4gIHRlbXBsYXRlVXJsOiAnLi9mb3JtLXNlbGVjdC5jb21wb25lbnQuaHRtbCcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBob3N0OiB7IFxuICAgIGNsYXNzOiAnZC1ibG9jaycgXG4gIH0sXG4gIGltcG9ydHM6IFtcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBOZ1NlbGVjdE1vZHVsZVxuICBdLFxuICBwcm92aWRlcnM6IFtcbiAgICB7XG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IEZvcm1TZWxlY3RDb21wb25lbnRcbiAgICB9LFxuICAgIHtcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgcHJvdmlkZTogTkdfVkFMSURBVE9SUyxcbiAgICAgIHVzZUV4aXN0aW5nOiBGb3JtU2VsZWN0Q29tcG9uZW50XG4gICAgfVxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1TZWxlY3RDb21wb25lbnQgaW1wbGVtZW50cyBDb250cm9sVmFsdWVBY2Nlc3NvciwgVmFsaWRhdG9yIHtcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgZm9yIHRoZSBpdGVtcyB0byBiZSBkaXNwbGF5ZWQgaW4gdGhlIHNlbGVjdCBpbnB1dC5cbiAgICogQHR5cGUge2FueVtdfVxuICAgKiBAcmVxdWlyZWRcbiAgICovXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIHB1YmxpYyBpdGVtcyE6IGFueVtdO1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YXJpYWJsZSB0byBkZXRlcm1pbmUgd2hldGhlciB0aGUgc2VsZWN0IGlucHV0IGlzIGNsZWFyYWJsZS5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBkZWZhdWx0IHRydWVcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBjbGVhcmFibGU6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YXJpYWJsZSBmb3IgdGhlIGxhYmVsIGFzc29jaWF0ZWQgd2l0aCB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAZGVmYXVsdCAnJ1xuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGxhYmVsOiBzdHJpbmcgPSAnJztcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGhlIHNlbGVjdCBpbnB1dCBhbGxvd3MgbXVsdGlwbGUgc2VsZWN0aW9ucy5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgbXVsdGlwbGU6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGhlIHNlbGVjdCBpbnB1dCBpcyByZXF1aXJlZC5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgcmVxdWlyZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGFncyBjYW4gYmUgYWRkZWQgdG8gdGhlIHNlbGVjdCBpbnB1dC5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgYWRkVGFnOiBib29sZWFuID0gZmFsc2U7XG4gIFxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGhlIHNlbGVjdCBpbnB1dCBpcyBkaXNhYmxlZC5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgZGlzYWJsZWQ6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGhlIHNlbGVjdCBpbnB1dCBpcyBzZWFyY2hhYmxlLlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyBzZWFyY2hhYmxlOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIElucHV0IHZhcmlhYmxlIHNwZWNpZnlpbmcgdGhlIHByb3BlcnR5IHRvIGJpbmQgYXMgdGhlIGxhYmVsIGZvciBpdGVtcyBpbiB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAdHlwZSB7c3RyaW5nfVxuICAgKiBAZGVmYXVsdCAnbGFiZWwnXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgYmluZExhYmVsOiBzdHJpbmcgPSAnbGFiZWwnO1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YXJpYWJsZSBzcGVjaWZ5aW5nIHRoZSBwcm9wZXJ0eSB0byBiaW5kIGFzIHRoZSB2YWx1ZSBmb3IgaXRlbXMgaW4gdGhlIHNlbGVjdCBpbnB1dC5cbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQGRlZmF1bHQgJ3ZhbHVlJ1xuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGJpbmRWYWx1ZTogc3RyaW5nID0gJ3ZhbHVlJztcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgc3BlY2lmeWluZyBhcHBlbmQgZHJvcGRvd24gdG8gYm9keSBvciBhbnkgb3RoZXIgZWxlbWVudCB1c2luZyBjc3Mgc2VsZWN0b3IuIEZvciBjb3JyZWN0IHBvc2l0aW9uaW5nIGJvZHkgc2hvdWxkIGhhdmUgcG9zaXRpb246cmVsYXRpdmUuXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBkZWZhdWx0ICcnXG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgYXBwZW5kVG86IHN0cmluZyA9ICcnO1xuXG4gIC8qKlxuICAgKiBCb29sZWFuIGZsYWcgaW5kaWNhdGluZyB3aGV0aGVyIHRoZSBzZWxlY3QgaW5wdXQgaGFzIGJlZW4gdG91Y2hlZC5cbiAgICogQHR5cGUge2Jvb2xlYW59XG4gICAqIEBkZWZhdWx0IGZhbHNlXG4gICAqL1xuICBwdWJsaWMgaXNUb3VjaGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIFRoZSB2YWx1ZSBvZiB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAdHlwZSB7YW55IHwgbnVsbH1cbiAgICogQGRlZmF1bHQgbnVsbFxuICAgKi9cbiAgcHVibGljIHZhbHVlOiBhbnkgfCBudWxsID0gbnVsbDtcblxuICAvKipcbiAgICogRXJyb3IgbWVzc2FnZSBhc3NvY2lhdGVkIHdpdGggdGhlIHNlbGVjdCBpbnB1dC5cbiAgICogQHR5cGUge3N0cmluZ31cbiAgICogQGRlZmF1bHQgdW5kZWZpbmVkXG4gICAqL1xuICBwdWJsaWMgZXJyb3JNc2chOiBzdHJpbmc7XG5cbiAgLyoqXG4gICAqIFRoZSBmb3JtIGNvbnRyb2wgYXNzb2NpYXRlZCB3aXRoIHRoZSBzZWxlY3QgaW5wdXQuXG4gICAqIEB0eXBlIHtBYnN0cmFjdENvbnRyb2x9XG4gICAqL1xuICBwcm90ZWN0ZWQgZm9ybUNvbnRyb2whOiBBYnN0cmFjdENvbnRyb2w7XG5cbiAgLyoqXG4gICAqIENhbGxiYWNrIGZ1bmN0aW9uIHRvIGhhbmRsZSB2YWx1ZSBjaGFuZ2VzIGluIHRoZSBzZWxlY3QgaW5wdXQuXG4gICAqIEB0eXBlIHsoX3ZhbDogYW55KSA9PiB2b2lkfVxuICAgKi9cbiAgcHJvdGVjdGVkIG9uQ2hhbmdlOiAoX3ZhbDogYW55KSA9PiB2b2lkID0gKF92YWw6IGFueSkgPT4ge307XG5cbiAgLyoqXG4gICAqIENhbGxiYWNrIGZ1bmN0aW9uIHRvIGhhbmRsZSB0b3VjaCBldmVudHMgaW4gdGhlIHNlbGVjdCBpbnB1dC5cbiAgICogQHR5cGUgeygpID0+IHZvaWR9XG4gICAqL1xuICBwcm90ZWN0ZWQgb25Ub3VjaGVkOiAoKSA9PiB2b2lkID0gKCkgPT4ge307XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEF0dHJpYnV0ZSgncGxhY2Vob2xkZXInKSBwdWJsaWMgcGxhY2Vob2xkZXI6IHN0cmluZyxcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgY2g6IENoYW5nZURldGVjdG9yUmVmXG4gICkgeyB9XG5cbiAgLyoqXG4gICAqIFJlZ2lzdGVycyBhIGNhbGxiYWNrIGZ1bmN0aW9uIHRvIGJlIGNhbGxlZCB3aGVuIHRoZSBzZWxlY3QgaW5wdXQgdmFsdWUgY2hhbmdlcy5cbiAgICogQHBhcmFtIHsoX3ZhbDogYW55KSA9PiB2b2lkfSBmbiAtIENhbGxiYWNrIGZ1bmN0aW9uIGZvciB2YWx1ZSBjaGFuZ2VzLlxuICAgKi9cbiAgcHVibGljIHJlZ2lzdGVyT25DaGFuZ2UoZm46IGFueSk6IHZvaWR7IHRoaXMub25DaGFuZ2UgPSBmbjsgfVxuXG4gIC8qKlxuICAgKiBSZWdpc3RlcnMgYSBjYWxsYmFjayBmdW5jdGlvbiB0byBiZSBjYWxsZWQgd2hlbiB0aGUgc2VsZWN0IGlucHV0IGlzIHRvdWNoZWQuXG4gICAqIEBwYXJhbSB7KCkgPT4gdm9pZH0gZm4gLSBDYWxsYmFjayBmdW5jdGlvbiBmb3IgdG91Y2ggZXZlbnRzLlxuICAgKi9cbiAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkeyB0aGlzLm9uVG91Y2hlZCA9IGZuOyB9XG5cbiAgLyoqXG4gICAqIFdyaXRlcyBhIG5ldyB2YWx1ZSB0byB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAcGFyYW0geyp9IHZhbCAtIFRoZSBuZXcgdmFsdWUgdG8gYmUgc2V0LlxuICAgKi9cbiAgcHVibGljIHdyaXRlVmFsdWUodmFsOiBhbnkpOiB2b2lke1xuICAgIHRoaXMudmFsdWUgPSB2YWw7XG4gICAgdGhpcy5jaC5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIHRoZSBkaXNhYmxlZCBzdGF0ZSBvZiB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IGQgLSBUaGUgbmV3IGRpc2FibGVkIHN0YXRlLlxuICAgKi9cbiAgcHVibGljIHNldERpc2FibGVkU3RhdGU/KGQ6IGJvb2xlYW4pOiB2b2lkeyBcbiAgICB0aGlzLmRpc2FibGVkID0gZDtcbiAgICB0aGlzLmNoLm1hcmtGb3JDaGVjaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIFZhbGlkYXRlcyB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAcGFyYW0ge0Fic3RyYWN0Q29udHJvbH0gY29udHJvbCAtIFRoZSBhYnN0cmFjdCBjb250cm9sIHJlcHJlc2VudGluZyB0aGUgc2VsZWN0IGlucHV0LlxuICAgKiBAcmV0dXJucyB7KFZhbGlkYXRpb25FcnJvcnMgfCBudWxsKX0gLSBWYWxpZGF0aW9uIGVycm9ycyBpZiBhbnksIG90aGVyd2lzZSBudWxsLlxuICAgKi9cbiAgcHVibGljIHZhbGlkYXRlKGNvbnRyb2w6IEFic3RyYWN0Q29udHJvbCk6IFZhbGlkYXRpb25FcnJvcnMgfCBudWxse1xuICAgIHRoaXMuZm9ybUNvbnRyb2wgPSBjb250cm9sO1xuICAgIHJldHVybiBudWxsO1xuICB9XG5cbiAgLyoqXG4gICAqIEV2ZW50IGhhbmRsZXIgZm9yIGNoYW5nZXMgaW4gdGhlIHNlbGVjdCBpbnB1dC5cbiAgICogRW1pdHMgdGhlIG9uQ2hhbmdlIGV2ZW50IGFuZCBoYW5kbGVzIHZhbGlkYXRpb24gYmFzZWQgb24gZm9ybSBjb250cm9sIGVycm9ycyBhbmQgbGFiZWwuXG4gICAqIEBwYXJhbSB7YW55fSBlIC0gVGhlIGV2ZW50IGNvbnRhaW5pbmcgdGhlIG5ldyBzZWxlY3QgaW5wdXQgdmFsdWUuXG4gICAqL1xuICBwdWJsaWMgY2hhbmdlKGU/OiBhbnkpOiB2b2lke1xuICAgIGlmICghdGhpcy5pc1RvdWNoZWQpIHtcbiAgICAgIHRoaXMub25Ub3VjaGVkKCk7XG4gICAgICB0aGlzLmlzVG91Y2hlZCA9IHRydWU7XG4gICAgfVxuXG4gICAgaWYgKCF0aGlzLmRpc2FibGVkKSB7XG4gICAgICBpZiAoIWUpIHRoaXMudmFsdWUgPSBudWxsO1xuICAgICAgZWxzZSB7XG4gICAgICAgIHRoaXMudmFsdWUgPSAhdGhpcy5tdWx0aXBsZT8gZVt0aGlzLmJpbmRWYWx1ZV0gOiBlLm1hcCgobzogYW55KSA9PiBvW3RoaXMuYmluZFZhbHVlXSk7XG4gICAgICB9XG4gICAgICBcbiAgICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XG4gICAgICB0aGlzLmVycm9yTXNnID0gZ2V0Rm9ybUVycm9yTWVzc2FnZSh0aGlzLmZvcm1Db250cm9sLmVycm9ycywgdGhpcy5sYWJlbCk7XG4gICAgfVxuICB9XG59XG4iLCI8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIiBbY2xhc3MucmVxdWlyZWRdPVwicmVxdWlyZWRcIj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbaWNvbl1cIi8+XG4gICAgPHNwYW4+e3sgbGFiZWwgfX08L3NwYW4+XG48L2xhYmVsPlxuXG48bmctc2VsZWN0XG4gICAgYmluZExhYmVsPVwie3sgYmluZExhYmVsIH19XCJcbiAgICBiaW5kVmFsdWU9XCJ7eyBiaW5kVmFsdWUgfX1cIlxuICAgIHBsYWNlaG9sZGVyPVwie3sgcGxhY2Vob2xkZXIgfX1cIlxuICAgIFt2aXJ0dWFsU2Nyb2xsXT1cInRydWVcIlxuICAgIFtpdGVtc109XCJpdGVtc1wiXG4gICAgW25nTW9kZWxdPVwidmFsdWVcIlxuICAgIFthZGRUYWddPVwiYWRkVGFnXCJcbiAgICBbbXVsdGlwbGVdPVwibXVsdGlwbGVcIlxuICAgIFtyZWFkb25seV09XCJkaXNhYmxlZFwiXG4gICAgW2FwcGVuZFRvXT1cImFwcGVuZFRvXCJcbiAgICBbY2xlYXJhYmxlXT1cImNsZWFyYWJsZVwiXG4gICAgW3NlYXJjaGFibGVdPVwic2VhcmNoYWJsZVwiXG4gICAgKGNoYW5nZSk9XCJjaGFuZ2UoJGV2ZW50KTtcIlxuLz5cblxuQGlmIChlcnJvck1zZykge1xuICAgIDxsYWJlbCBjbGFzcz1cImlzLWludmFsaWRcIj57eyBlcnJvck1zZyB9fTwvbGFiZWw+XG59XG4iXX0=
@@ -39,8 +39,8 @@ export class FormTextareaComponent {
39
39
  this.errorMsg = getFormErrorMessage(this.formControl.errors, this.label);
40
40
  }
41
41
  }
42
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: FormTextareaComponent, deps: [{ token: 'label', attribute: true }, { token: 'placeholder', attribute: true }, { token: 'autocomplete', attribute: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
43
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.4", type: FormTextareaComponent, isStandalone: true, selector: "up-textarea", inputs: { value: "value", required: "required", disabled: "disabled" }, host: { classAttribute: "d-block" }, providers: [
42
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FormTextareaComponent, deps: [{ token: 'label', attribute: true }, { token: 'placeholder', attribute: true }, { token: 'autocomplete', attribute: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
43
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: FormTextareaComponent, isStandalone: true, selector: "up-textarea", inputs: { value: "value", required: "required", disabled: "disabled" }, host: { classAttribute: "d-block" }, providers: [
44
44
  {
45
45
  multi: true,
46
46
  provide: NG_VALUE_ACCESSOR,
@@ -53,7 +53,7 @@ export class FormTextareaComponent {
53
53
  }
54
54
  ], ngImport: i0, template: "<label class=\"form-label d-flex align-items-center\">\n <ng-content select=\"[icon]\"/>\n <span>{{ label }}</span>\n</label>\n<textarea autocomplete=\"{{ autocomplete }}\" placeholder=\"{{ placeholder }}\" rows=\"3\" class=\"form-control\" [required]=\"required\" [disabled]=\"disabled\" [value]=\"value\" (change)=\"change($event.target)\"></textarea>\n\n@if (errorMsg) {\n <label class=\"is-invalid\">{{ errorMsg }}</label>\n}\n", styles: [""], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
55
55
  }
56
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: FormTextareaComponent, decorators: [{
56
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: FormTextareaComponent, decorators: [{
57
57
  type: Component,
58
58
  args: [{ standalone: true, selector: 'up-textarea', changeDetection: ChangeDetectionStrategy.OnPush, host: {
59
59
  class: 'd-block'
@@ -85,4 +85,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
85
85
  }], disabled: [{
86
86
  type: Input
87
87
  }] } });
88
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS10ZXh0YXJlYS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvZm9ybXMvdGV4dGFyZWEvZm9ybS10ZXh0YXJlYS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvZm9ybXMvdGV4dGFyZWEvZm9ybS10ZXh0YXJlYS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQix1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hHLE9BQU8sRUFBeUMsYUFBYSxFQUFFLGlCQUFpQixFQUErQixNQUFNLGdCQUFnQixDQUFDO0FBQ3RJLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQXdCckQsTUFBTSxPQUFPLHFCQUFxQjtJQXVEaEMsWUFDNkIsS0FBYSxFQUNQLFdBQW1CLEVBQ2xCLFlBQXVMLEVBQ3RNLEVBQXFCO1FBSGIsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUNQLGdCQUFXLEdBQVgsV0FBVyxDQUFRO1FBQ2xCLGlCQUFZLEdBQVosWUFBWSxDQUEySztRQUN0TSxPQUFFLEdBQUYsRUFBRSxDQUFtQjtRQTdDMUIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQU8xQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBT25DLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFtQnhCLGFBQVEsR0FBd0IsQ0FBQyxJQUFTLEVBQUUsRUFBRSxHQUFFLENBQUMsQ0FBQztRQU1sRCxjQUFTLEdBQWUsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO0lBT3ZDLENBQUM7SUFNRSxnQkFBZ0IsQ0FBQyxFQUFPLElBQVMsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBTXRELGlCQUFpQixDQUFDLEVBQU8sSUFBUyxJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFNeEQsVUFBVSxDQUFDLEdBQVE7UUFDeEIsSUFBSSxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUM7UUFDakIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBTU0sZ0JBQWdCLENBQUUsQ0FBVTtRQUNqQyxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQztRQUNsQixJQUFJLENBQUMsRUFBRSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFPTSxRQUFRLENBQUMsT0FBd0I7UUFDdEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUM7UUFDM0IsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBT00sTUFBTSxDQUFDLEVBQUUsS0FBSyxFQUFPO1FBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLENBQUM7UUFFRCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1lBQ25CLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzFCLElBQUksQ0FBQyxRQUFRLEdBQUcsbUJBQW1CLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNFLENBQUM7SUFDSCxDQUFDOzhHQXRIVSxxQkFBcUIsa0JBd0RuQixPQUFPLDhCQUNQLGFBQWEsOEJBQ2IsY0FBYztrR0ExRGhCLHFCQUFxQix1S0FickI7WUFDVDtnQkFDRSxLQUFLLEVBQUUsSUFBSTtnQkFDWCxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUscUJBQXFCO2FBQ25DO1lBQ0Q7Z0JBQ0UsS0FBSyxFQUFFLElBQUk7Z0JBQ1gsT0FBTyxFQUFFLGFBQWE7Z0JBQ3RCLFdBQVcsRUFBRSxxQkFBcUI7YUFDbkM7U0FDRiwwQkN4QkgsMGJBU0E7OzJGRGlCYSxxQkFBcUI7a0JBdEJqQyxTQUFTO2lDQUNJLElBQUksWUFDTixhQUFhLG1CQUdOLHVCQUF1QixDQUFDLE1BQU0sUUFDekM7d0JBQ0osS0FBSyxFQUFFLFNBQVM7cUJBQ2pCLGFBQ1U7d0JBQ1Q7NEJBQ0UsS0FBSyxFQUFFLElBQUk7NEJBQ1gsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyx1QkFBdUI7eUJBQ25DO3dCQUNEOzRCQUNFLEtBQUssRUFBRSxJQUFJOzRCQUNYLE9BQU8sRUFBRSxhQUFhOzRCQUN0QixXQUFXLHVCQUF1Qjt5QkFDbkM7cUJBQ0Y7OzBCQTBERSxTQUFTOzJCQUFDLE9BQU87OzBCQUNqQixTQUFTOzJCQUFDLGFBQWE7OzBCQUN2QixTQUFTOzJCQUFDLGNBQWM7eUVBbkRYLEtBQUs7c0JBQXBCLEtBQUs7Z0JBT1UsUUFBUTtzQkFBdkIsS0FBSztnQkFPVSxRQUFRO3NCQUF2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXR0cmlidXRlLCBDaGFuZ2VEZXRlY3RvclJlZiwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTElEQVRPUlMsIE5HX1ZBTFVFX0FDQ0VTU09SLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBnZXRGb3JtRXJyb3JNZXNzYWdlIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICd1cC10ZXh0YXJlYScsXG4gIHN0eWxlVXJsOiAnLi9mb3JtLXRleHRhcmVhLmNvbXBvbmVudC5zY3NzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvcm0tdGV4dGFyZWEuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnZC1ibG9jaydcbiAgfSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgbXVsdGk6IHRydWUsXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBGb3JtVGV4dGFyZWFDb21wb25lbnRcbiAgICB9LFxuICAgIHtcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgcHJvdmlkZTogTkdfVkFMSURBVE9SUyxcbiAgICAgIHVzZUV4aXN0aW5nOiBGb3JtVGV4dGFyZWFDb21wb25lbnRcbiAgICB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRm9ybVRleHRhcmVhQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIFZhbGlkYXRvciB7XG5cbiAgLyoqXG4gICAqIElucHV0IHZhcmlhYmxlIHRvIGRldGVybWluZSB0aGUgaW5pdGlhbCB2YWx1ZSBvZiB0aGUgdGV4dGFyZWEuXG4gICAqIEB0eXBlIHsoc3RyaW5nIHwgbnVsbCl9XG4gICAqIEBkZWZhdWx0IHVuZGVmaW5lZFxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIHZhbHVlPzogc3RyaW5nIHwgbnVsbDtcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGhlIHRleHRhcmVhIGlzIHJlcXVpcmVkLlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyByZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YXJpYWJsZSB0byBkZXRlcm1pbmUgd2hldGhlciB0aGUgdGV4dGFyZWEgaXMgZGlzYWJsZWQuXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEJvb2xlYW4gZmxhZyBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIHRleHRhcmVhIGhhcyBiZWVuIHRvdWNoZWQuXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcHVibGljIGlzVG91Y2hlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBFcnJvciBtZXNzYWdlIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGV4dGFyZWEuXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBkZWZhdWx0IHVuZGVmaW5lZFxuICAgKi9cbiAgcHVibGljIGVycm9yTXNnITogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgZm9ybSBjb250cm9sIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGV4dGFyZWEuXG4gICAqIEB0eXBlIHtBYnN0cmFjdENvbnRyb2x9XG4gICAqL1xuICBwcm90ZWN0ZWQgZm9ybUNvbnRyb2whOiBBYnN0cmFjdENvbnRyb2w7XG5cbiAgLyoqXG4gICAqIENhbGxiYWNrIGZ1bmN0aW9uIHRvIGhhbmRsZSB2YWx1ZSBjaGFuZ2VzIGluIHRoZSB0ZXh0YXJlYS5cbiAgICogQHR5cGUgeyhfdmFsOiBhbnkpID0+IHZvaWR9XG4gICAqL1xuICBwcm90ZWN0ZWQgb25DaGFuZ2U6IChfdmFsOiBhbnkpID0+IHZvaWQgPSAoX3ZhbDogYW55KSA9PiB7fTtcblxuICAvKipcbiAgICogQ2FsbGJhY2sgZnVuY3Rpb24gdG8gaGFuZGxlIHRvdWNoIGV2ZW50cyBpbiB0aGUgdGV4dGFyZWEuXG4gICAqIEB0eXBlIHsoKSA9PiB2b2lkfVxuICAgKi9cbiAgcHJvdGVjdGVkIG9uVG91Y2hlZDogKCkgPT4gdm9pZCA9ICgpID0+IHt9O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBBdHRyaWJ1dGUoJ2xhYmVsJykgcHVibGljIGxhYmVsOiBzdHJpbmcsXG4gICAgQEF0dHJpYnV0ZSgncGxhY2Vob2xkZXInKSBwdWJsaWMgcGxhY2Vob2xkZXI6IHN0cmluZyxcbiAgICBAQXR0cmlidXRlKCdhdXRvY29tcGxldGUnKSBwdWJsaWMgYXV0b2NvbXBsZXRlOiAndXJsJyB8ICdvbicgfCAnb2ZmJyB8ICdzdHJlZXQtYWRkcmVzcycgfCAnYWRkcmVzcy1saW5lMScgfCAnYWRkcmVzcy1saW5lMicgfCAnYWRkcmVzcy1saW5lMycgfCAnYWRkcmVzcy1sZXZlbDQnIHwgJ2FkZHJlc3MtbGV2ZWwzJyB8ICdhZGRyZXNzLWxldmVsMicgfCAnYWRkcmVzcy1sZXZlbDEnLFxuICAgIHByb3RlY3RlZCByZWFkb25seSBjaDogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7IH1cblxuICAvKipcbiAgICogUmVnaXN0ZXJzIGEgY2FsbGJhY2sgZnVuY3Rpb24gdG8gYmUgY2FsbGVkIHdoZW4gdGhlIHRleHRhcmVhIHZhbHVlIGNoYW5nZXMuXG4gICAqIEBwYXJhbSB7KF92YWw6IGFueSkgPT4gdm9pZH0gZm4gLSBDYWxsYmFjayBmdW5jdGlvbiBmb3IgdmFsdWUgY2hhbmdlcy5cbiAgICovXG4gIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkeyB0aGlzLm9uQ2hhbmdlID0gZm47IH1cblxuICAvKipcbiAgICogUmVnaXN0ZXJzIGEgY2FsbGJhY2sgZnVuY3Rpb24gdG8gYmUgY2FsbGVkIHdoZW4gdGhlIHRleHRhcmVhIGlzIHRvdWNoZWQuXG4gICAqIEBwYXJhbSB7KCkgPT4gdm9pZH0gZm4gLSBDYWxsYmFjayBmdW5jdGlvbiBmb3IgdG91Y2ggZXZlbnRzLlxuICAgKi9cbiAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkeyB0aGlzLm9uVG91Y2hlZCA9IGZuOyB9XG5cbiAgLyoqXG4gICAqIFdyaXRlcyBhIG5ldyB2YWx1ZSB0byB0aGUgdGV4dGFyZWEuXG4gICAqIEBwYXJhbSB7Kn0gdmFsIC0gVGhlIG5ldyB2YWx1ZSB0byBiZSBzZXQuXG4gICAqL1xuICBwdWJsaWMgd3JpdGVWYWx1ZSh2YWw6IGFueSk6IHZvaWR7IFxuICAgIHRoaXMudmFsdWUgPSB2YWw7IFxuICAgIHRoaXMuY2gubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgZGlzYWJsZWQgc3RhdGUgb2YgdGhlIHRleHRhcmVhLlxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IGQgLSBUaGUgbmV3IGRpc2FibGVkIHN0YXRlLlxuICAgKi9cbiAgcHVibGljIHNldERpc2FibGVkU3RhdGU/KGQ6IGJvb2xlYW4pOiB2b2lkeyBcbiAgICB0aGlzLmRpc2FibGVkID0gZDsgXG4gICAgdGhpcy5jaC5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZXMgdGhlIHRleHRhcmVhLlxuICAgKiBAcGFyYW0ge0Fic3RyYWN0Q29udHJvbH0gY29udHJvbCAtIFRoZSBhYnN0cmFjdCBjb250cm9sIHJlcHJlc2VudGluZyB0aGUgdGV4dGFyZWEuXG4gICAqIEByZXR1cm5zIHsoVmFsaWRhdGlvbkVycm9ycyB8IG51bGwpfSAtIFZhbGlkYXRpb24gZXJyb3JzIGlmIGFueSwgb3RoZXJ3aXNlIG51bGwuXG4gICAqL1xuICBwdWJsaWMgdmFsaWRhdGUoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGx7XG4gICAgdGhpcy5mb3JtQ29udHJvbCA9IGNvbnRyb2w7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICAvKipcbiAgICogRXZlbnQgaGFuZGxlciBmb3IgY2hhbmdlcyBpbiB0aGUgdGV4dGFyZWEuXG4gICAqIEVtaXRzIHRoZSBvbkNoYW5nZSBldmVudCBhbmQgaGFuZGxlcyB2YWxpZGF0aW9uIGJhc2VkIG9uIGZvcm0gY29udHJvbCBlcnJvcnMgYW5kIGxhYmVsLlxuICAgKiBAcGFyYW0ge2FueX0gdmFsdWUgLSBUaGUgbmV3IHRleHRhcmVhIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIGNoYW5nZSh7IHZhbHVlIH06IGFueSk6IHZvaWR7XG4gICAgaWYgKCF0aGlzLmlzVG91Y2hlZCkge1xuICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICAgIHRoaXMuaXNUb3VjaGVkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XG4gICAgICB0aGlzLmVycm9yTXNnID0gZ2V0Rm9ybUVycm9yTWVzc2FnZSh0aGlzLmZvcm1Db250cm9sLmVycm9ycywgdGhpcy5sYWJlbCk7XG4gICAgfVxuICB9XG59XG4iLCI8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbaWNvbl1cIi8+XG4gICAgPHNwYW4+e3sgbGFiZWwgfX08L3NwYW4+XG48L2xhYmVsPlxuPHRleHRhcmVhIGF1dG9jb21wbGV0ZT1cInt7IGF1dG9jb21wbGV0ZSB9fVwiIHBsYWNlaG9sZGVyPVwie3sgcGxhY2Vob2xkZXIgfX1cIiByb3dzPVwiM1wiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgW3ZhbHVlXT1cInZhbHVlXCIgKGNoYW5nZSk9XCJjaGFuZ2UoJGV2ZW50LnRhcmdldClcIj48L3RleHRhcmVhPlxuXG5AaWYgKGVycm9yTXNnKSB7XG4gICAgPGxhYmVsIGNsYXNzPVwiaXMtaW52YWxpZFwiPnt7IGVycm9yTXNnIH19PC9sYWJlbD5cbn1cbiJdfQ==
88
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm9ybS10ZXh0YXJlYS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvZm9ybXMvdGV4dGFyZWEvZm9ybS10ZXh0YXJlYS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy91bmlwaW4tYW5ndWxhci9zcmMvbGliL2NvbXBvbmVudHMvZm9ybXMvdGV4dGFyZWEvZm9ybS10ZXh0YXJlYS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQix1QkFBdUIsRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3hHLE9BQU8sRUFBeUMsYUFBYSxFQUFFLGlCQUFpQixFQUErQixNQUFNLGdCQUFnQixDQUFDO0FBQ3RJLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGdCQUFnQixDQUFDOztBQXdCckQsTUFBTSxPQUFPLHFCQUFxQjtJQXVEaEMsWUFDNkIsS0FBYSxFQUNQLFdBQW1CLEVBQ2xCLFlBQXVMLEVBQ3RNLEVBQXFCO1FBSGIsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUNQLGdCQUFXLEdBQVgsV0FBVyxDQUFRO1FBQ2xCLGlCQUFZLEdBQVosWUFBWSxDQUEySztRQUN0TSxPQUFFLEdBQUYsRUFBRSxDQUFtQjtRQTdDMUIsYUFBUSxHQUFZLEtBQUssQ0FBQztRQU8xQixhQUFRLEdBQVksS0FBSyxDQUFDO1FBT25DLGNBQVMsR0FBWSxLQUFLLENBQUM7UUFtQnhCLGFBQVEsR0FBd0IsQ0FBQyxJQUFTLEVBQUUsRUFBRSxHQUFFLENBQUMsQ0FBQztRQU1sRCxjQUFTLEdBQWUsR0FBRyxFQUFFLEdBQUUsQ0FBQyxDQUFDO0lBT3ZDLENBQUM7SUFNRSxnQkFBZ0IsQ0FBQyxFQUFPLElBQVMsSUFBSSxDQUFDLFFBQVEsR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBTXRELGlCQUFpQixDQUFDLEVBQU8sSUFBUyxJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFNeEQsVUFBVSxDQUFDLEdBQVE7UUFDeEIsSUFBSSxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUM7UUFDakIsSUFBSSxDQUFDLEVBQUUsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUN6QixDQUFDO0lBTU0sZ0JBQWdCLENBQUUsQ0FBVTtRQUNqQyxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQztRQUNsQixJQUFJLENBQUMsRUFBRSxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3pCLENBQUM7SUFPTSxRQUFRLENBQUMsT0FBd0I7UUFDdEMsSUFBSSxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUM7UUFDM0IsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBT00sTUFBTSxDQUFDLEVBQUUsS0FBSyxFQUFPO1FBQzFCLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDcEIsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ2pCLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO1FBQ3hCLENBQUM7UUFFRCxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ25CLElBQUksQ0FBQyxLQUFLLEdBQUcsS0FBSyxDQUFDO1lBQ25CLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQzFCLElBQUksQ0FBQyxRQUFRLEdBQUcsbUJBQW1CLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzNFLENBQUM7SUFDSCxDQUFDOytHQXRIVSxxQkFBcUIsa0JBd0RuQixPQUFPLDhCQUNQLGFBQWEsOEJBQ2IsY0FBYzttR0ExRGhCLHFCQUFxQix1S0FickI7WUFDVDtnQkFDRSxLQUFLLEVBQUUsSUFBSTtnQkFDWCxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUscUJBQXFCO2FBQ25DO1lBQ0Q7Z0JBQ0UsS0FBSyxFQUFFLElBQUk7Z0JBQ1gsT0FBTyxFQUFFLGFBQWE7Z0JBQ3RCLFdBQVcsRUFBRSxxQkFBcUI7YUFDbkM7U0FDRiwwQkN4QkgsMGJBU0E7OzRGRGlCYSxxQkFBcUI7a0JBdEJqQyxTQUFTO2lDQUNJLElBQUksWUFDTixhQUFhLG1CQUdOLHVCQUF1QixDQUFDLE1BQU0sUUFDekM7d0JBQ0osS0FBSyxFQUFFLFNBQVM7cUJBQ2pCLGFBQ1U7d0JBQ1Q7NEJBQ0UsS0FBSyxFQUFFLElBQUk7NEJBQ1gsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyx1QkFBdUI7eUJBQ25DO3dCQUNEOzRCQUNFLEtBQUssRUFBRSxJQUFJOzRCQUNYLE9BQU8sRUFBRSxhQUFhOzRCQUN0QixXQUFXLHVCQUF1Qjt5QkFDbkM7cUJBQ0Y7OzBCQTBERSxTQUFTOzJCQUFDLE9BQU87OzBCQUNqQixTQUFTOzJCQUFDLGFBQWE7OzBCQUN2QixTQUFTOzJCQUFDLGNBQWM7eUVBbkRYLEtBQUs7c0JBQXBCLEtBQUs7Z0JBT1UsUUFBUTtzQkFBdkIsS0FBSztnQkFPVSxRQUFRO3NCQUF2QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXR0cmlidXRlLCBDaGFuZ2VEZXRlY3RvclJlZiwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFic3RyYWN0Q29udHJvbCwgQ29udHJvbFZhbHVlQWNjZXNzb3IsIE5HX1ZBTElEQVRPUlMsIE5HX1ZBTFVFX0FDQ0VTU09SLCBWYWxpZGF0aW9uRXJyb3JzLCBWYWxpZGF0b3IgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBnZXRGb3JtRXJyb3JNZXNzYWdlIH0gZnJvbSAnLi4vLi4vLi4vdXRpbHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6ICd1cC10ZXh0YXJlYScsXG4gIHN0eWxlVXJsOiAnLi9mb3JtLXRleHRhcmVhLmNvbXBvbmVudC5zY3NzJyxcbiAgdGVtcGxhdGVVcmw6ICcuL2Zvcm0tdGV4dGFyZWEuY29tcG9uZW50Lmh0bWwnLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgaG9zdDoge1xuICAgIGNsYXNzOiAnZC1ibG9jaydcbiAgfSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgbXVsdGk6IHRydWUsXG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBGb3JtVGV4dGFyZWFDb21wb25lbnRcbiAgICB9LFxuICAgIHtcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgcHJvdmlkZTogTkdfVkFMSURBVE9SUyxcbiAgICAgIHVzZUV4aXN0aW5nOiBGb3JtVGV4dGFyZWFDb21wb25lbnRcbiAgICB9XG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgRm9ybVRleHRhcmVhQ29tcG9uZW50IGltcGxlbWVudHMgQ29udHJvbFZhbHVlQWNjZXNzb3IsIFZhbGlkYXRvciB7XG5cbiAgLyoqXG4gICAqIElucHV0IHZhcmlhYmxlIHRvIGRldGVybWluZSB0aGUgaW5pdGlhbCB2YWx1ZSBvZiB0aGUgdGV4dGFyZWEuXG4gICAqIEB0eXBlIHsoc3RyaW5nIHwgbnVsbCl9XG4gICAqIEBkZWZhdWx0IHVuZGVmaW5lZFxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIHZhbHVlPzogc3RyaW5nIHwgbnVsbDtcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgdGhlIHRleHRhcmVhIGlzIHJlcXVpcmVkLlxuICAgKiBAdHlwZSB7Ym9vbGVhbn1cbiAgICogQGRlZmF1bHQgZmFsc2VcbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyByZXF1aXJlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YXJpYWJsZSB0byBkZXRlcm1pbmUgd2hldGhlciB0aGUgdGV4dGFyZWEgaXMgZGlzYWJsZWQuXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGRpc2FibGVkOiBib29sZWFuID0gZmFsc2U7XG5cbiAgLyoqXG4gICAqIEJvb2xlYW4gZmxhZyBpbmRpY2F0aW5nIHdoZXRoZXIgdGhlIHRleHRhcmVhIGhhcyBiZWVuIHRvdWNoZWQuXG4gICAqIEB0eXBlIHtib29sZWFufVxuICAgKiBAZGVmYXVsdCBmYWxzZVxuICAgKi9cbiAgcHVibGljIGlzVG91Y2hlZDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKlxuICAgKiBFcnJvciBtZXNzYWdlIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGV4dGFyZWEuXG4gICAqIEB0eXBlIHtzdHJpbmd9XG4gICAqIEBkZWZhdWx0IHVuZGVmaW5lZFxuICAgKi9cbiAgcHVibGljIGVycm9yTXNnITogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBUaGUgZm9ybSBjb250cm9sIGFzc29jaWF0ZWQgd2l0aCB0aGUgdGV4dGFyZWEuXG4gICAqIEB0eXBlIHtBYnN0cmFjdENvbnRyb2x9XG4gICAqL1xuICBwcm90ZWN0ZWQgZm9ybUNvbnRyb2whOiBBYnN0cmFjdENvbnRyb2w7XG5cbiAgLyoqXG4gICAqIENhbGxiYWNrIGZ1bmN0aW9uIHRvIGhhbmRsZSB2YWx1ZSBjaGFuZ2VzIGluIHRoZSB0ZXh0YXJlYS5cbiAgICogQHR5cGUgeyhfdmFsOiBhbnkpID0+IHZvaWR9XG4gICAqL1xuICBwcm90ZWN0ZWQgb25DaGFuZ2U6IChfdmFsOiBhbnkpID0+IHZvaWQgPSAoX3ZhbDogYW55KSA9PiB7fTtcblxuICAvKipcbiAgICogQ2FsbGJhY2sgZnVuY3Rpb24gdG8gaGFuZGxlIHRvdWNoIGV2ZW50cyBpbiB0aGUgdGV4dGFyZWEuXG4gICAqIEB0eXBlIHsoKSA9PiB2b2lkfVxuICAgKi9cbiAgcHJvdGVjdGVkIG9uVG91Y2hlZDogKCkgPT4gdm9pZCA9ICgpID0+IHt9O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBBdHRyaWJ1dGUoJ2xhYmVsJykgcHVibGljIGxhYmVsOiBzdHJpbmcsXG4gICAgQEF0dHJpYnV0ZSgncGxhY2Vob2xkZXInKSBwdWJsaWMgcGxhY2Vob2xkZXI6IHN0cmluZyxcbiAgICBAQXR0cmlidXRlKCdhdXRvY29tcGxldGUnKSBwdWJsaWMgYXV0b2NvbXBsZXRlOiAndXJsJyB8ICdvbicgfCAnb2ZmJyB8ICdzdHJlZXQtYWRkcmVzcycgfCAnYWRkcmVzcy1saW5lMScgfCAnYWRkcmVzcy1saW5lMicgfCAnYWRkcmVzcy1saW5lMycgfCAnYWRkcmVzcy1sZXZlbDQnIHwgJ2FkZHJlc3MtbGV2ZWwzJyB8ICdhZGRyZXNzLWxldmVsMicgfCAnYWRkcmVzcy1sZXZlbDEnLFxuICAgIHByb3RlY3RlZCByZWFkb25seSBjaDogQ2hhbmdlRGV0ZWN0b3JSZWZcbiAgKSB7IH1cblxuICAvKipcbiAgICogUmVnaXN0ZXJzIGEgY2FsbGJhY2sgZnVuY3Rpb24gdG8gYmUgY2FsbGVkIHdoZW4gdGhlIHRleHRhcmVhIHZhbHVlIGNoYW5nZXMuXG4gICAqIEBwYXJhbSB7KF92YWw6IGFueSkgPT4gdm9pZH0gZm4gLSBDYWxsYmFjayBmdW5jdGlvbiBmb3IgdmFsdWUgY2hhbmdlcy5cbiAgICovXG4gIHB1YmxpYyByZWdpc3Rlck9uQ2hhbmdlKGZuOiBhbnkpOiB2b2lkeyB0aGlzLm9uQ2hhbmdlID0gZm47IH1cblxuICAvKipcbiAgICogUmVnaXN0ZXJzIGEgY2FsbGJhY2sgZnVuY3Rpb24gdG8gYmUgY2FsbGVkIHdoZW4gdGhlIHRleHRhcmVhIGlzIHRvdWNoZWQuXG4gICAqIEBwYXJhbSB7KCkgPT4gdm9pZH0gZm4gLSBDYWxsYmFjayBmdW5jdGlvbiBmb3IgdG91Y2ggZXZlbnRzLlxuICAgKi9cbiAgcHVibGljIHJlZ2lzdGVyT25Ub3VjaGVkKGZuOiBhbnkpOiB2b2lkeyB0aGlzLm9uVG91Y2hlZCA9IGZuOyB9XG5cbiAgLyoqXG4gICAqIFdyaXRlcyBhIG5ldyB2YWx1ZSB0byB0aGUgdGV4dGFyZWEuXG4gICAqIEBwYXJhbSB7Kn0gdmFsIC0gVGhlIG5ldyB2YWx1ZSB0byBiZSBzZXQuXG4gICAqL1xuICBwdWJsaWMgd3JpdGVWYWx1ZSh2YWw6IGFueSk6IHZvaWR7IFxuICAgIHRoaXMudmFsdWUgPSB2YWw7IFxuICAgIHRoaXMuY2gubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICAvKipcbiAgICogU2V0cyB0aGUgZGlzYWJsZWQgc3RhdGUgb2YgdGhlIHRleHRhcmVhLlxuICAgKiBAcGFyYW0ge2Jvb2xlYW59IGQgLSBUaGUgbmV3IGRpc2FibGVkIHN0YXRlLlxuICAgKi9cbiAgcHVibGljIHNldERpc2FibGVkU3RhdGU/KGQ6IGJvb2xlYW4pOiB2b2lkeyBcbiAgICB0aGlzLmRpc2FibGVkID0gZDsgXG4gICAgdGhpcy5jaC5tYXJrRm9yQ2hlY2soKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBWYWxpZGF0ZXMgdGhlIHRleHRhcmVhLlxuICAgKiBAcGFyYW0ge0Fic3RyYWN0Q29udHJvbH0gY29udHJvbCAtIFRoZSBhYnN0cmFjdCBjb250cm9sIHJlcHJlc2VudGluZyB0aGUgdGV4dGFyZWEuXG4gICAqIEByZXR1cm5zIHsoVmFsaWRhdGlvbkVycm9ycyB8IG51bGwpfSAtIFZhbGlkYXRpb24gZXJyb3JzIGlmIGFueSwgb3RoZXJ3aXNlIG51bGwuXG4gICAqL1xuICBwdWJsaWMgdmFsaWRhdGUoY29udHJvbDogQWJzdHJhY3RDb250cm9sKTogVmFsaWRhdGlvbkVycm9ycyB8IG51bGx7XG4gICAgdGhpcy5mb3JtQ29udHJvbCA9IGNvbnRyb2w7XG4gICAgcmV0dXJuIG51bGw7XG4gIH1cblxuICAvKipcbiAgICogRXZlbnQgaGFuZGxlciBmb3IgY2hhbmdlcyBpbiB0aGUgdGV4dGFyZWEuXG4gICAqIEVtaXRzIHRoZSBvbkNoYW5nZSBldmVudCBhbmQgaGFuZGxlcyB2YWxpZGF0aW9uIGJhc2VkIG9uIGZvcm0gY29udHJvbCBlcnJvcnMgYW5kIGxhYmVsLlxuICAgKiBAcGFyYW0ge2FueX0gdmFsdWUgLSBUaGUgbmV3IHRleHRhcmVhIHZhbHVlLlxuICAgKi9cbiAgcHVibGljIGNoYW5nZSh7IHZhbHVlIH06IGFueSk6IHZvaWR7XG4gICAgaWYgKCF0aGlzLmlzVG91Y2hlZCkge1xuICAgICAgdGhpcy5vblRvdWNoZWQoKTtcbiAgICAgIHRoaXMuaXNUb3VjaGVkID0gdHJ1ZTtcbiAgICB9XG5cbiAgICBpZiAoIXRoaXMuZGlzYWJsZWQpIHtcbiAgICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgICAgIHRoaXMub25DaGFuZ2UodGhpcy52YWx1ZSk7XG4gICAgICB0aGlzLmVycm9yTXNnID0gZ2V0Rm9ybUVycm9yTWVzc2FnZSh0aGlzLmZvcm1Db250cm9sLmVycm9ycywgdGhpcy5sYWJlbCk7XG4gICAgfVxuICB9XG59XG4iLCI8bGFiZWwgY2xhc3M9XCJmb3JtLWxhYmVsIGQtZmxleCBhbGlnbi1pdGVtcy1jZW50ZXJcIj5cbiAgICA8bmctY29udGVudCBzZWxlY3Q9XCJbaWNvbl1cIi8+XG4gICAgPHNwYW4+e3sgbGFiZWwgfX08L3NwYW4+XG48L2xhYmVsPlxuPHRleHRhcmVhIGF1dG9jb21wbGV0ZT1cInt7IGF1dG9jb21wbGV0ZSB9fVwiIHBsYWNlaG9sZGVyPVwie3sgcGxhY2Vob2xkZXIgfX1cIiByb3dzPVwiM1wiIGNsYXNzPVwiZm9ybS1jb250cm9sXCIgW3JlcXVpcmVkXT1cInJlcXVpcmVkXCIgW2Rpc2FibGVkXT1cImRpc2FibGVkXCIgW3ZhbHVlXT1cInZhbHVlXCIgKGNoYW5nZSk9XCJjaGFuZ2UoJGV2ZW50LnRhcmdldClcIj48L3RleHRhcmVhPlxuXG5AaWYgKGVycm9yTXNnKSB7XG4gICAgPGxhYmVsIGNsYXNzPVwiaXMtaW52YWxpZFwiPnt7IGVycm9yTXNnIH19PC9sYWJlbD5cbn1cbiJdfQ==
@@ -78,16 +78,14 @@ export class GridPaginationComponent {
78
78
  };
79
79
  this.gridApi?.setGridOption('datasource', datasource);
80
80
  }
81
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GridPaginationComponent, deps: [{ token: i1.GridService }], target: i0.ɵɵFactoryTarget.Component }); }
82
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.4", type: GridPaginationComponent, isStandalone: true, selector: "up-pagination-grid", inputs: { config: "config", rowData: "rowData", id: "id", rowModelType: "rowModelType", rowSelection: "rowSelection", getRowClass: "getRowClass" }, outputs: { onRowClick: "onRowClick", onGridReady: "onGridReady", onSelectionChanged: "onSelectionChanged" }, host: { classAttribute: "d-block h-100 w-100" }, ngImport: i0, template: "<ag-grid-angular class=\"ag-theme-balham h-100\"\n [pagination]=\"true\"\n [animateRows]=\"true\"\n [getRowClass]=\"getRowClass\"\n [rowModelType]=\"rowModelType\"\n [rowSelection]=\"rowSelection\"\n [columnDefs]=\"config.colDefs\"\n [defaultColDef]=\"defaultColDef\"\n [cacheBlockSize]=\"config.rowPerPage\"\n [paginationPageSize]=\"config.rowPerPage\"\n [overlayNoRowsTemplate]=\"config.noRowText\"\n (dragStopped)=\"dragColumn($event)\"\n (gridReady)=\"setDatasource($event)\"\n (rowClicked)=\"clickRow($event.data)\"\n (selectionChanged)=\"changeSelected($event)\"\n (paginationChanged)=\"changePagination($event)\"\n/>\n", styles: [""], dependencies: [{ kind: "ngmodule", type: AgGridModule }, { kind: "component", type: i2.AgGridAngular, selector: "ag-grid-angular", inputs: ["gridOptions", "modules", "statusBar", "sideBar", "suppressContextMenu", "preventDefaultOnContextMenu", "allowContextMenuWithControlKey", "columnMenu", "suppressMenuHide", "enableBrowserTooltips", "tooltipTrigger", "tooltipShowDelay", "tooltipHideDelay", "tooltipMouseTrack", "tooltipInteraction", "popupParent", "copyHeadersToClipboard", "copyGroupHeadersToClipboard", "clipboardDelimiter", "suppressCopyRowsToClipboard", "suppressCopySingleCellRanges", "suppressLastEmptyLineOnPaste", "suppressClipboardPaste", "suppressClipboardApi", "suppressCutToClipboard", "columnDefs", "defaultColDef", "defaultColGroupDef", "columnTypes", "dataTypeDefinitions", "maintainColumnOrder", "suppressFieldDotNotation", "headerHeight", "groupHeaderHeight", "floatingFiltersHeight", "pivotHeaderHeight", "pivotGroupHeaderHeight", "allowDragFromColumnsToolPanel", "suppressMovableColumns", "suppressColumnMoveAnimation", "suppressDragLeaveHidesColumns", "suppressRowGroupHidesColumns", "colResizeDefault", "suppressAutoSize", "autoSizePadding", "skipHeaderOnAutoSize", "autoSizeStrategy", "components", "editType", "singleClickEdit", "suppressClickEdit", "readOnlyEdit", "stopEditingWhenCellsLoseFocus", "enterMovesDown", "enterMovesDownAfterEdit", "enterNavigatesVertically", "enterNavigatesVerticallyAfterEdit", "enableCellEditingOnBackspace", "undoRedoCellEditing", "undoRedoCellEditingLimit", "defaultCsvExportParams", "suppressCsvExport", "defaultExcelExportParams", "suppressExcelExport", "excelStyles", "quickFilterText", "cacheQuickFilter", "excludeHiddenColumnsFromQuickFilter", "includeHiddenColumnsInQuickFilter", "quickFilterParser", "quickFilterMatcher", "excludeChildrenWhenTreeDataFiltering", "enableAdvancedFilter", "advancedFilterModel", "includeHiddenColumnsInAdvancedFilter", "advancedFilterParent", "advancedFilterBuilderParams", "enableCharts", "chartThemes", "customChartThemes", "chartThemeOverrides", "enableChartToolPanelsButton", "suppressChartToolPanelsButton", "chartToolPanelsDef", "loadingCellRenderer", "loadingCellRendererParams", "loadingCellRendererSelector", "localeText", "masterDetail", "keepDetailRows", "keepDetailRowsCount", "detailCellRenderer", "detailCellRendererParams", "detailRowHeight", "detailRowAutoHeight", "context", "alignedGrids", "tabIndex", "rowBuffer", "valueCache", "valueCacheNeverExpires", "enableCellExpressions", "suppressParentsInRowNodes", "suppressTouch", "suppressFocusAfterRefresh", "suppressAsyncEvents", "suppressBrowserResizeObserver", "suppressPropertyNamesCheck", "suppressChangeDetection", "debug", "overlayLoadingTemplate", "loadingOverlayComponent", "loadingOverlayComponentParams", "suppressLoadingOverlay", "overlayNoRowsTemplate", "noRowsOverlayComponent", "noRowsOverlayComponentParams", "suppressNoRowsOverlay", "pagination", "paginationPageSize", "paginationPageSizeSelector", "paginationAutoPageSize", "paginateChildRows", "suppressPaginationPanel", "pivotMode", "pivotPanelShow", "pivotDefaultExpanded", "pivotColumnGroupTotals", "pivotRowTotals", "pivotSuppressAutoColumn", "suppressExpandablePivotGroups", "functionsReadOnly", "aggFuncs", "suppressAggFuncInHeader", "alwaysAggregateAtRootLevel", "suppressAggAtRootLevel", "aggregateOnlyChangedColumns", "suppressAggFilteredOnly", "removePivotHeaderRowWhenSingleValueColumn", "animateRows", "enableCellChangeFlash", "cellFlashDuration", "cellFlashDelay", "cellFadeDuration", "cellFadeDelay", "allowShowChangeAfterFilter", "domLayout", "ensureDomOrder", "enableRtl", "suppressColumnVirtualisation", "suppressMaxRenderedRowRestriction", "suppressRowVirtualisation", "rowDragManaged", "suppressRowDrag", "suppressMoveWhenRowDragging", "rowDragEntireRow", "rowDragMultiRow", "rowDragText", "fullWidthCellRenderer", "fullWidthCellRendererParams", "embedFullWidthRows", "suppressGroupMaintainValueType", "groupDisplayType", "groupDefaultExpanded", "autoGroupColumnDef", "groupMaintainOrder", "groupSelectsChildren", "groupLockGroupColumns", "groupAggFiltering", "groupIncludeFooter", "groupIncludeTotalFooter", "groupSuppressBlankHeader", "groupSelectsFiltered", "showOpenedGroup", "groupRemoveSingleChildren", "groupRemoveLowestSingleChildren", "groupHideOpenParents", "groupAllowUnbalanced", "rowGroupPanelShow", "groupRowRenderer", "groupRowRendererParams", "suppressMakeColumnVisibleAfterUnGroup", "treeData", "rowGroupPanelSuppressSort", "suppressGroupRowsSticky", "pinnedTopRowData", "pinnedBottomRowData", "rowModelType", "rowData", "asyncTransactionWaitMillis", "suppressModelUpdateAfterUpdateTransaction", "datasource", "cacheOverflowSize", "infiniteInitialRowCount", "serverSideInitialRowCount", "suppressServerSideInfiniteScroll", "cacheBlockSize", "maxBlocksInCache", "maxConcurrentDatasourceRequests", "blockLoadDebounceMillis", "purgeClosedRowNodes", "serverSideDatasource", "serverSideSortAllLevels", "serverSideEnableClientSideSort", "serverSideOnlyRefreshFilteredGroups", "serverSideFilterAllLevels", "serverSideSortOnServer", "serverSideFilterOnServer", "serverSidePivotResultFieldSeparator", "viewportDatasource", "viewportRowModelPageSize", "viewportRowModelBufferSize", "alwaysShowHorizontalScroll", "alwaysShowVerticalScroll", "debounceVerticalScrollbar", "suppressHorizontalScroll", "suppressScrollOnNewData", "suppressScrollWhenPopupsAreOpen", "suppressAnimationFrame", "suppressMiddleClickScrolls", "suppressPreventDefaultOnMouseWheel", "scrollbarWidth", "rowSelection", "rowMultiSelectWithClick", "suppressRowDeselection", "suppressRowClickSelection", "suppressCellFocus", "suppressHeaderFocus", "suppressMultiRangeSelection", "enableCellTextSelection", "enableRangeSelection", "enableRangeHandle", "enableFillHandle", "fillHandleDirection", "suppressClearOnFillReduction", "sortingOrder", "accentedSort", "unSortIcon", "suppressMultiSort", "alwaysMultiSort", "multiSortKey", "suppressMaintainUnsortedOrder", "icons", "rowHeight", "rowStyle", "rowClass", "rowClassRules", "suppressRowHoverHighlight", "suppressRowTransform", "columnHoverHighlight", "gridId", "deltaSort", "treeDataDisplayType", "functionsPassive", "enableGroupEdit", "initialState", "getContextMenuItems", "getMainMenuItems", "postProcessPopup", "processUnpinnedColumns", "processCellForClipboard", "processHeaderForClipboard", "processGroupHeaderForClipboard", "processCellFromClipboard", "sendToClipboard", "processDataFromClipboard", "isExternalFilterPresent", "doesExternalFilterPass", "getChartToolbarItems", "createChartContainer", "navigateToNextHeader", "tabToNextHeader", "navigateToNextCell", "tabToNextCell", "getLocaleText", "getDocument", "paginationNumberFormatter", "getGroupRowAgg", "isGroupOpenByDefault", "initialGroupOrderComparator", "processPivotResultColDef", "processPivotResultColGroupDef", "getDataPath", "getChildCount", "getServerSideGroupLevelParams", "isServerSideGroupOpenByDefault", "isApplyServerSideTransaction", "isServerSideGroup", "getServerSideGroupKey", "getBusinessKeyForNode", "getRowId", "resetRowDataOnUpdate", "processRowPostCreate", "isRowSelectable", "isRowMaster", "fillOperation", "postSortRows", "getRowStyle", "getRowClass", "getRowHeight", "isFullWidthRow"], outputs: ["toolPanelVisibleChanged", "toolPanelSizeChanged", "columnMenuVisibleChanged", "cutStart", "cutEnd", "pasteStart", "pasteEnd", "columnVisible", "columnPinned", "columnResized", "columnMoved", "columnValueChanged", "columnPivotModeChanged", "columnPivotChanged", "columnGroupOpened", "newColumnsLoaded", "gridColumnsChanged", "displayedColumnsChanged", "virtualColumnsChanged", "columnEverythingChanged", "columnHeaderMouseOver", "columnHeaderMouseLeave", "columnHeaderClicked", "columnHeaderContextMenu", "componentStateChanged", "cellValueChanged", "cellEditRequest", "rowValueChanged", "cellEditingStarted", "cellEditingStopped", "rowEditingStarted", "rowEditingStopped", "undoStarted", "undoEnded", "redoStarted", "redoEnded", "rangeDeleteStart", "rangeDeleteEnd", "filterOpened", "filterChanged", "filterModified", "advancedFilterBuilderVisibleChanged", "chartCreated", "chartRangeSelectionChanged", "chartOptionsChanged", "chartDestroyed", "cellKeyDown", "gridReady", "gridPreDestroyed", "firstDataRendered", "gridSizeChanged", "modelUpdated", "virtualRowRemoved", "viewportChanged", "bodyScroll", "bodyScrollEnd", "dragStarted", "dragStopped", "stateUpdated", "paginationChanged", "rowDragEnter", "rowDragMove", "rowDragLeave", "rowDragEnd", "columnRowGroupChanged", "rowGroupOpened", "expandOrCollapseAll", "pinnedRowDataChanged", "rowDataUpdated", "asyncTransactionsFlushed", "storeRefreshed", "cellClicked", "cellDoubleClicked", "cellFocused", "cellMouseOver", "cellMouseOut", "cellMouseDown", "rowClicked", "rowDoubleClicked", "rowSelected", "selectionChanged", "cellContextMenu", "rangeSelectionChanged", "tooltipShow", "tooltipHide", "sortChanged", "columnRowGroupChangeRequest", "columnPivotChangeRequest", "columnValueChangeRequest", "columnAggFuncChangeRequest"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
81
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GridPaginationComponent, deps: [{ token: i1.GridService }], target: i0.ɵɵFactoryTarget.Component }); }
82
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: GridPaginationComponent, isStandalone: true, selector: "up-pagination-grid", inputs: { config: "config", rowData: "rowData", id: "id", rowModelType: "rowModelType", rowSelection: "rowSelection", getRowClass: "getRowClass" }, outputs: { onRowClick: "onRowClick", onGridReady: "onGridReady", onSelectionChanged: "onSelectionChanged" }, ngImport: i0, template: "<ag-grid-angular class=\"ag-theme-balham\"\n [pagination]=\"true\"\n [animateRows]=\"true\"\n [getRowClass]=\"getRowClass\"\n [rowModelType]=\"rowModelType\"\n [rowSelection]=\"rowSelection\"\n [columnDefs]=\"config.colDefs\"\n [defaultColDef]=\"defaultColDef\"\n [cacheBlockSize]=\"config.rowPerPage\"\n [paginationPageSize]=\"config.rowPerPage\"\n [overlayNoRowsTemplate]=\"config.noRowText\"\n (dragStopped)=\"dragColumn($event)\"\n (gridReady)=\"setDatasource($event)\"\n (rowClicked)=\"clickRow($event.data)\"\n (selectionChanged)=\"changeSelected($event)\"\n (paginationChanged)=\"changePagination($event)\"\n/>\n", styles: [":host{width:100%;height:100%;display:block}ag-grid-angular{height:100%}\n"], dependencies: [{ kind: "ngmodule", type: AgGridModule }, { kind: "component", type: i2.AgGridAngular, selector: "ag-grid-angular", inputs: ["gridOptions", "modules", "statusBar", "sideBar", "suppressContextMenu", "preventDefaultOnContextMenu", "allowContextMenuWithControlKey", "columnMenu", "suppressMenuHide", "enableBrowserTooltips", "tooltipTrigger", "tooltipShowDelay", "tooltipHideDelay", "tooltipMouseTrack", "tooltipInteraction", "popupParent", "copyHeadersToClipboard", "copyGroupHeadersToClipboard", "clipboardDelimiter", "suppressCopyRowsToClipboard", "suppressCopySingleCellRanges", "suppressLastEmptyLineOnPaste", "suppressClipboardPaste", "suppressClipboardApi", "suppressCutToClipboard", "columnDefs", "defaultColDef", "defaultColGroupDef", "columnTypes", "dataTypeDefinitions", "maintainColumnOrder", "suppressFieldDotNotation", "headerHeight", "groupHeaderHeight", "floatingFiltersHeight", "pivotHeaderHeight", "pivotGroupHeaderHeight", "allowDragFromColumnsToolPanel", "suppressMovableColumns", "suppressColumnMoveAnimation", "suppressDragLeaveHidesColumns", "suppressRowGroupHidesColumns", "colResizeDefault", "suppressAutoSize", "autoSizePadding", "skipHeaderOnAutoSize", "autoSizeStrategy", "components", "editType", "singleClickEdit", "suppressClickEdit", "readOnlyEdit", "stopEditingWhenCellsLoseFocus", "enterMovesDown", "enterMovesDownAfterEdit", "enterNavigatesVertically", "enterNavigatesVerticallyAfterEdit", "enableCellEditingOnBackspace", "undoRedoCellEditing", "undoRedoCellEditingLimit", "defaultCsvExportParams", "suppressCsvExport", "defaultExcelExportParams", "suppressExcelExport", "excelStyles", "quickFilterText", "cacheQuickFilter", "excludeHiddenColumnsFromQuickFilter", "includeHiddenColumnsInQuickFilter", "quickFilterParser", "quickFilterMatcher", "excludeChildrenWhenTreeDataFiltering", "enableAdvancedFilter", "advancedFilterModel", "includeHiddenColumnsInAdvancedFilter", "advancedFilterParent", "advancedFilterBuilderParams", "enableCharts", "chartThemes", "customChartThemes", "chartThemeOverrides", "enableChartToolPanelsButton", "suppressChartToolPanelsButton", "chartToolPanelsDef", "loadingCellRenderer", "loadingCellRendererParams", "loadingCellRendererSelector", "localeText", "masterDetail", "keepDetailRows", "keepDetailRowsCount", "detailCellRenderer", "detailCellRendererParams", "detailRowHeight", "detailRowAutoHeight", "context", "alignedGrids", "tabIndex", "rowBuffer", "valueCache", "valueCacheNeverExpires", "enableCellExpressions", "suppressParentsInRowNodes", "suppressTouch", "suppressFocusAfterRefresh", "suppressAsyncEvents", "suppressBrowserResizeObserver", "suppressPropertyNamesCheck", "suppressChangeDetection", "debug", "overlayLoadingTemplate", "loadingOverlayComponent", "loadingOverlayComponentParams", "suppressLoadingOverlay", "overlayNoRowsTemplate", "noRowsOverlayComponent", "noRowsOverlayComponentParams", "suppressNoRowsOverlay", "pagination", "paginationPageSize", "paginationPageSizeSelector", "paginationAutoPageSize", "paginateChildRows", "suppressPaginationPanel", "pivotMode", "pivotPanelShow", "pivotDefaultExpanded", "pivotColumnGroupTotals", "pivotRowTotals", "pivotSuppressAutoColumn", "suppressExpandablePivotGroups", "functionsReadOnly", "aggFuncs", "suppressAggFuncInHeader", "alwaysAggregateAtRootLevel", "suppressAggAtRootLevel", "aggregateOnlyChangedColumns", "suppressAggFilteredOnly", "removePivotHeaderRowWhenSingleValueColumn", "animateRows", "enableCellChangeFlash", "cellFlashDuration", "cellFlashDelay", "cellFadeDuration", "cellFadeDelay", "allowShowChangeAfterFilter", "domLayout", "ensureDomOrder", "enableRtl", "suppressColumnVirtualisation", "suppressMaxRenderedRowRestriction", "suppressRowVirtualisation", "rowDragManaged", "suppressRowDrag", "suppressMoveWhenRowDragging", "rowDragEntireRow", "rowDragMultiRow", "rowDragText", "fullWidthCellRenderer", "fullWidthCellRendererParams", "embedFullWidthRows", "suppressGroupMaintainValueType", "groupDisplayType", "groupDefaultExpanded", "autoGroupColumnDef", "groupMaintainOrder", "groupSelectsChildren", "groupLockGroupColumns", "groupAggFiltering", "groupIncludeFooter", "groupIncludeTotalFooter", "groupSuppressBlankHeader", "groupSelectsFiltered", "showOpenedGroup", "groupRemoveSingleChildren", "groupRemoveLowestSingleChildren", "groupHideOpenParents", "groupAllowUnbalanced", "rowGroupPanelShow", "groupRowRenderer", "groupRowRendererParams", "suppressMakeColumnVisibleAfterUnGroup", "treeData", "rowGroupPanelSuppressSort", "suppressGroupRowsSticky", "pinnedTopRowData", "pinnedBottomRowData", "rowModelType", "rowData", "asyncTransactionWaitMillis", "suppressModelUpdateAfterUpdateTransaction", "datasource", "cacheOverflowSize", "infiniteInitialRowCount", "serverSideInitialRowCount", "suppressServerSideInfiniteScroll", "cacheBlockSize", "maxBlocksInCache", "maxConcurrentDatasourceRequests", "blockLoadDebounceMillis", "purgeClosedRowNodes", "serverSideDatasource", "serverSideSortAllLevels", "serverSideEnableClientSideSort", "serverSideOnlyRefreshFilteredGroups", "serverSideFilterAllLevels", "serverSideSortOnServer", "serverSideFilterOnServer", "serverSidePivotResultFieldSeparator", "viewportDatasource", "viewportRowModelPageSize", "viewportRowModelBufferSize", "alwaysShowHorizontalScroll", "alwaysShowVerticalScroll", "debounceVerticalScrollbar", "suppressHorizontalScroll", "suppressScrollOnNewData", "suppressScrollWhenPopupsAreOpen", "suppressAnimationFrame", "suppressMiddleClickScrolls", "suppressPreventDefaultOnMouseWheel", "scrollbarWidth", "rowSelection", "rowMultiSelectWithClick", "suppressRowDeselection", "suppressRowClickSelection", "suppressCellFocus", "suppressHeaderFocus", "suppressMultiRangeSelection", "enableCellTextSelection", "enableRangeSelection", "enableRangeHandle", "enableFillHandle", "fillHandleDirection", "suppressClearOnFillReduction", "sortingOrder", "accentedSort", "unSortIcon", "suppressMultiSort", "alwaysMultiSort", "multiSortKey", "suppressMaintainUnsortedOrder", "icons", "rowHeight", "rowStyle", "rowClass", "rowClassRules", "suppressRowHoverHighlight", "suppressRowTransform", "columnHoverHighlight", "gridId", "deltaSort", "treeDataDisplayType", "functionsPassive", "enableGroupEdit", "initialState", "getContextMenuItems", "getMainMenuItems", "postProcessPopup", "processUnpinnedColumns", "processCellForClipboard", "processHeaderForClipboard", "processGroupHeaderForClipboard", "processCellFromClipboard", "sendToClipboard", "processDataFromClipboard", "isExternalFilterPresent", "doesExternalFilterPass", "getChartToolbarItems", "createChartContainer", "navigateToNextHeader", "tabToNextHeader", "navigateToNextCell", "tabToNextCell", "getLocaleText", "getDocument", "paginationNumberFormatter", "getGroupRowAgg", "isGroupOpenByDefault", "initialGroupOrderComparator", "processPivotResultColDef", "processPivotResultColGroupDef", "getDataPath", "getChildCount", "getServerSideGroupLevelParams", "isServerSideGroupOpenByDefault", "isApplyServerSideTransaction", "isServerSideGroup", "getServerSideGroupKey", "getBusinessKeyForNode", "getRowId", "resetRowDataOnUpdate", "processRowPostCreate", "isRowSelectable", "isRowMaster", "fillOperation", "postSortRows", "getRowStyle", "getRowClass", "getRowHeight", "isFullWidthRow"], outputs: ["toolPanelVisibleChanged", "toolPanelSizeChanged", "columnMenuVisibleChanged", "cutStart", "cutEnd", "pasteStart", "pasteEnd", "columnVisible", "columnPinned", "columnResized", "columnMoved", "columnValueChanged", "columnPivotModeChanged", "columnPivotChanged", "columnGroupOpened", "newColumnsLoaded", "gridColumnsChanged", "displayedColumnsChanged", "virtualColumnsChanged", "columnEverythingChanged", "columnHeaderMouseOver", "columnHeaderMouseLeave", "columnHeaderClicked", "columnHeaderContextMenu", "componentStateChanged", "cellValueChanged", "cellEditRequest", "rowValueChanged", "cellEditingStarted", "cellEditingStopped", "rowEditingStarted", "rowEditingStopped", "undoStarted", "undoEnded", "redoStarted", "redoEnded", "rangeDeleteStart", "rangeDeleteEnd", "filterOpened", "filterChanged", "filterModified", "advancedFilterBuilderVisibleChanged", "chartCreated", "chartRangeSelectionChanged", "chartOptionsChanged", "chartDestroyed", "cellKeyDown", "gridReady", "gridPreDestroyed", "firstDataRendered", "gridSizeChanged", "modelUpdated", "virtualRowRemoved", "viewportChanged", "bodyScroll", "bodyScrollEnd", "dragStarted", "dragStopped", "stateUpdated", "paginationChanged", "rowDragEnter", "rowDragMove", "rowDragLeave", "rowDragEnd", "columnRowGroupChanged", "rowGroupOpened", "expandOrCollapseAll", "pinnedRowDataChanged", "rowDataUpdated", "asyncTransactionsFlushed", "storeRefreshed", "cellClicked", "cellDoubleClicked", "cellFocused", "cellMouseOver", "cellMouseOut", "cellMouseDown", "rowClicked", "rowDoubleClicked", "rowSelected", "selectionChanged", "cellContextMenu", "rangeSelectionChanged", "tooltipShow", "tooltipHide", "sortChanged", "columnRowGroupChangeRequest", "columnPivotChangeRequest", "columnValueChangeRequest", "columnAggFuncChangeRequest"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
83
83
  }
84
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImport: i0, type: GridPaginationComponent, decorators: [{
84
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: GridPaginationComponent, decorators: [{
85
85
  type: Component,
86
- args: [{ standalone: true, selector: 'up-pagination-grid', changeDetection: ChangeDetectionStrategy.OnPush, host: {
87
- class: 'd-block h-100 w-100'
88
- }, imports: [
86
+ args: [{ standalone: true, selector: 'up-pagination-grid', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
89
87
  AgGridModule
90
- ], template: "<ag-grid-angular class=\"ag-theme-balham h-100\"\n [pagination]=\"true\"\n [animateRows]=\"true\"\n [getRowClass]=\"getRowClass\"\n [rowModelType]=\"rowModelType\"\n [rowSelection]=\"rowSelection\"\n [columnDefs]=\"config.colDefs\"\n [defaultColDef]=\"defaultColDef\"\n [cacheBlockSize]=\"config.rowPerPage\"\n [paginationPageSize]=\"config.rowPerPage\"\n [overlayNoRowsTemplate]=\"config.noRowText\"\n (dragStopped)=\"dragColumn($event)\"\n (gridReady)=\"setDatasource($event)\"\n (rowClicked)=\"clickRow($event.data)\"\n (selectionChanged)=\"changeSelected($event)\"\n (paginationChanged)=\"changePagination($event)\"\n/>\n" }]
88
+ ], template: "<ag-grid-angular class=\"ag-theme-balham\"\n [pagination]=\"true\"\n [animateRows]=\"true\"\n [getRowClass]=\"getRowClass\"\n [rowModelType]=\"rowModelType\"\n [rowSelection]=\"rowSelection\"\n [columnDefs]=\"config.colDefs\"\n [defaultColDef]=\"defaultColDef\"\n [cacheBlockSize]=\"config.rowPerPage\"\n [paginationPageSize]=\"config.rowPerPage\"\n [overlayNoRowsTemplate]=\"config.noRowText\"\n (dragStopped)=\"dragColumn($event)\"\n (gridReady)=\"setDatasource($event)\"\n (rowClicked)=\"clickRow($event.data)\"\n (selectionChanged)=\"changeSelected($event)\"\n (paginationChanged)=\"changePagination($event)\"\n/>\n", styles: [":host{width:100%;height:100%;display:block}ag-grid-angular{height:100%}\n"] }]
91
89
  }], ctorParameters: () => [{ type: i1.GridService }], propDecorators: { config: [{
92
90
  type: Input,
93
91
  args: [{ required: true }]
@@ -108,4 +106,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.4", ngImpor
108
106
  }], onSelectionChanged: [{
109
107
  type: Output
110
108
  }] } });
111
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1wYWdpbmF0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuaXBpbi1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9ncmlkcy9ncmlkLXBhZ2luYXRpb24vZ3JpZC1wYWdpbmF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuaXBpbi1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9ncmlkcy9ncmlkLXBhZ2luYXRpb24vZ3JpZC1wYWdpbmF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5ILE9BQU8sRUFBdUMsY0FBYyxFQUFtSSxNQUFNLHlCQUF5QixDQUFDO0FBQy9OLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7OztBQWlCMUQsTUFBTSxPQUFPLHVCQUF1QjtJQXVGbEMsWUFDcUIsT0FBb0I7UUFBcEIsWUFBTyxHQUFQLE9BQU8sQ0FBYTtRQTNFekIsWUFBTyxHQUFVLEVBQUUsQ0FBQztRQU1wQixPQUFFLEdBQXVCLFFBQVEsQ0FBQztRQU9sQyxpQkFBWSxHQUFpQixVQUFVLENBQUM7UUFNeEMsaUJBQVksR0FBMEIsUUFBUSxDQUFDO1FBZXJDLGVBQVUsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQU9uRCxnQkFBVyxHQUFpQyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBTy9ELHVCQUFrQixHQUE2QyxJQUFJLFlBQVksRUFBRSxDQUFDO1FBTTVGLGtCQUFhLEdBQVcsRUFBRSxRQUFRLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFlBQVksRUFBRSxDQUFFLEtBQUssRUFBRSxNQUFNLENBQUUsRUFBRSxTQUFTLEVBQUUsRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEVBQUMsQ0FBQztJQXNCbkssQ0FBQztJQU9HLFFBQVE7UUFDYixjQUFjLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFZLEtBQUssVUFBVSxDQUFBLENBQUMsQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDLENBQUMsd0JBQXdCLENBQUMsQ0FBQztRQUU3RyxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVO1lBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO1FBQ3pELElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxHQUFHLHFCQUFzQixJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsSUFBRyxnQkFBaUIsU0FBUyxDQUFDO0lBQ25HLENBQUM7SUFNTSxXQUFXLEtBQVUsSUFBSSxDQUFDLElBQUksRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFPaEQsUUFBUSxDQUFDLElBQVMsSUFBUyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFPeEQsVUFBVSxDQUFDLEVBQUUsR0FBRyxFQUFvQixJQUFTLFlBQVksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxjQUFjLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBT25ILGNBQWMsQ0FBQyxJQUFnQyxJQUFTLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBTzdGLGdCQUFnQixDQUFDLEVBQTBCO1FBQ2hELElBQUksRUFBRSxDQUFDLFdBQVc7WUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLHFCQUFxQixFQUFFLENBQUM7SUFDcEYsQ0FBQztJQVFNLGFBQWEsQ0FBQyxFQUFrQjtRQUNyQyxJQUFJLENBQUMsT0FBTyxHQUFHLEVBQUUsQ0FBQyxHQUFHLENBQUM7UUFDdEIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFDMUIsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFM0MsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQVEsQ0FBQyxDQUFDO1FBQy9ELElBQUksS0FBSztZQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7UUFFaEUsSUFBSSxJQUFJLENBQUMsWUFBWSxLQUFLLFlBQVk7WUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxTQUFTLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQzVGLElBQUksSUFBSSxDQUFDLFlBQVksS0FBSyxVQUFVO1lBQUUsT0FBTztRQUM3QyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7SUFDZixDQUFDO0lBT00sS0FBSztRQUNWLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTztZQUFFLE9BQU87UUFFMUIsTUFBTSxVQUFVLEdBQWdCO1lBQzlCLE9BQU8sRUFBRSxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxlQUFlLEVBQUUsWUFBWSxFQUFrQixFQUFFLEVBQUU7Z0JBQzNGLElBQUksQ0FBQyxPQUFPLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztnQkFDbEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO2dCQUV2RCxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBUSxDQUFDLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVcsRUFBRSxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUMsU0FBUyxDQUFDO29CQUN2RixJQUFJLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsRUFBRSxFQUFFO3dCQUM5QixJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDO3dCQUUzQixJQUFJLE1BQU0sS0FBSyxDQUFDLEVBQUUsQ0FBQzs0QkFDakIsSUFBSSxJQUFJLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRSxDQUFDO2dDQUN0QixJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyx1QkFBdUIsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO2dDQUMzRSxJQUFJLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUFFLENBQUM7NEJBQ25DLENBQUM7NEJBQ0QsSUFBSSxDQUFDLEtBQUssR0FBRyxXQUFXLENBQUM7d0JBQzNCLENBQUM7d0JBRUQsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsY0FBYyxJQUFJLElBQUksQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFXLEVBQUUsQ0FBQzs0QkFDekUsSUFBSSxDQUFDLEtBQUssR0FBRyxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLFVBQVcsQ0FBQyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUM7d0JBQ2hFLENBQUM7d0JBQ0QsZUFBZSxDQUFDLElBQUksRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7b0JBQ3BDLENBQUM7b0JBQ0QsS0FBSyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsRUFBRSxFQUFFO3dCQUNyQixJQUFJLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyx1QkFBdUIsRUFBRSxxQkFBc0IsT0FBUSxTQUFTLENBQUMsQ0FBQzt3QkFFN0YsSUFBSSxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQzt3QkFDM0IsSUFBSSxDQUFDLE9BQU8sQ0FBQyxpQkFBaUIsRUFBRSxDQUFDO3dCQUNqQyxZQUFZLEVBQUUsQ0FBQztvQkFDakIsQ0FBQztpQkFDRixDQUFDLENBQUM7WUFDTCxDQUFDO1NBQ0YsQ0FBQztRQUVGLElBQUksQ0FBQyxPQUFPLEVBQUUsYUFBYSxDQUFDLFlBQVksRUFBRSxVQUFVLENBQUMsQ0FBQztJQUN4RCxDQUFDOzhHQXhNVSx1QkFBdUI7a0dBQXZCLHVCQUF1QixnWUN0QnBDLGdxQkFpQkEseURERUksWUFBWTs7MkZBR0gsdUJBQXVCO2tCQWJuQyxTQUFTO2lDQUNJLElBQUksWUFDTixvQkFBb0IsbUJBR2IsdUJBQXVCLENBQUMsTUFBTSxRQUN6Qzt3QkFDSixLQUFLLEVBQUUscUJBQXFCO3FCQUM3QixXQUNRO3dCQUNQLFlBQVk7cUJBQ2I7Z0ZBU2lDLE1BQU07c0JBQXZDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQU1ULE9BQU87c0JBQXRCLEtBQUs7Z0JBTVUsRUFBRTtzQkFBakIsS0FBSztnQkFPVSxZQUFZO3NCQUEzQixLQUFLO2dCQU1VLFlBQVk7c0JBQTNCLEtBQUs7Z0JBUVUsV0FBVztzQkFBMUIsS0FBSztnQkFPb0IsVUFBVTtzQkFBbkMsTUFBTTtnQkFPbUIsV0FBVztzQkFBcEMsTUFBTTtnQkFPbUIsa0JBQWtCO3NCQUEzQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDb2xEZWYsIElEYXRhc291cmNlLCBJR2V0Um93c1BhcmFtcywgTW9kdWxlUmVnaXN0cnksIFJvd01vZGVsVHlwZSwgR3JpZFJlYWR5RXZlbnQsIERyYWdTdG9wcGVkRXZlbnQsIFNlbGVjdGlvbkNoYW5nZWRFdmVudCwgR3JpZEFwaSwgUGFnaW5hdGlvbkNoYW5nZWRFdmVudCwgUm93Q2xhc3NQYXJhbXMsIFJvd05vZGUgfSBmcm9tICdAYWctZ3JpZC1jb21tdW5pdHkvY29yZSc7XG5pbXBvcnQgeyBJbmZpbml0ZVJvd01vZGVsTW9kdWxlIH0gZnJvbSAnQGFnLWdyaWQtY29tbXVuaXR5L2luZmluaXRlLXJvdy1tb2RlbCc7XG5pbXBvcnQgeyBDbGllbnRTaWRlUm93TW9kZWxNb2R1bGUgfSBmcm9tICdAYWctZ3JpZC1jb21tdW5pdHkvY2xpZW50LXNpZGUtcm93LW1vZGVsJztcbmltcG9ydCB7IEFnR3JpZE1vZHVsZSB9IGZyb20gJ0BhZy1ncmlkLWNvbW11bml0eS9hbmd1bGFyJztcbmltcG9ydCB7IEdyaWRDb25maWcgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2dyaWQtY29uZmlnLmludGVyZmFjZSc7XG5pbXBvcnQgeyBHcmlkU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2dyaWQuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3VwLXBhZ2luYXRpb24tZ3JpZCcsXG4gIHN0eWxlVXJsOiAnLi9ncmlkLXBhZ2luYXRpb24uY29tcG9uZW50LnNjc3MnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ3JpZC1wYWdpbmF0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGhvc3Q6IHsgXG4gICAgY2xhc3M6ICdkLWJsb2NrIGgtMTAwIHctMTAwJyBcbiAgfSxcbiAgaW1wb3J0czogWyBcbiAgICBBZ0dyaWRNb2R1bGUgXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgR3JpZFBhZ2luYXRpb25Db21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgLyoqXG4gICAqIElucHV0IHZhcmlhYmxlIGZvciB0aGUgY29uZmlndXJhdGlvbiBvYmplY3QgZGVmaW5pbmcgdGhlIGFnLUdyaWQgcHJvcGVydGllcy5cbiAgICogQHR5cGUge0dyaWRDb25maWd9XG4gICAqIEByZXF1aXJlZFxuICAgKi9cbiAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgcHVibGljIGNvbmZpZyE6IEdyaWRDb25maWc7XG5cbiAgLyoqXG4gICAqIElucHV0IHZhcmlhYmxlIGZvciBwcm92aWRpbmcgdGhlIHJvdyBkYXRhIHRvIGJlIGRpc3BsYXllZCBpbiB0aGUgYWctR3JpZC5cbiAgICogQHR5cGUge2FueVtdfVxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIHJvd0RhdGE6IGFueVtdID0gW107XG5cbiAgLyoqXG4gICAqIElucHV0IHZhcmlhYmxlIGZvciBzcGVjaWZ5aW5nIHRoZSB1bmlxdWUgaWRlbnRpZmllciBvZiB0aGUgYWctR3JpZCBjb21wb25lbnQuXG4gICAqIEB0eXBlIHtgZ3JpZC0keyBzdHJpbmcgfWB9XG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgaWQ6IGBncmlkLSR7IHN0cmluZyB9YCA9ICdncmlkLXAnO1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YXJpYWJsZSBmb3Igc3BlY2lmeWluZyB0aGUgcm93IG1vZGVsIHR5cGUgZm9yIHRoZSBhZy1HcmlkLlxuICAgKiBJdCBjYW4gYmUgJ2luZmluaXRlJyBvciAnY2xpZW50U2lkZScuXG4gICAqIEB0eXBlIHtSb3dNb2RlbFR5cGV9XG4gICAqL1xuICBASW5wdXQoKSBwdWJsaWMgcm93TW9kZWxUeXBlOiBSb3dNb2RlbFR5cGUgPSAnaW5maW5pdGUnO1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YXJpYWJsZSBmb3Igc3BlY2lmeWluZyB0aGUgcm93IHNlbGVjdGlvbiBtb2RlLiBJdCBjYW4gYmUgJ3NpbmdsZScgb3IgJ211bHRpcGxlJy5cbiAgICogQHR5cGUgeygnc2luZ2xlJyB8ICdtdWx0aXBsZScpfVxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIHJvd1NlbGVjdGlvbjogJ3NpbmdsZScgfCAnbXVsdGlwbGUnID0gJ3NpbmdsZSc7XG5cbiAgLyoqXG4gICAqIENhbGxiYWNrIHZlcnNpb24gb2YgcHJvcGVydHkgYHJvd0NsYXNzYCB0byBzZXQgY2xhc3MoZXMpIGZvciBlYWNoIHJvdyBpbmRpdmlkdWFsbHkuIFxuICAgKiBGdW5jdGlvbiBzaG91bGQgcmV0dXJuIGVpdGhlciBhIHN0cmluZyAoY2xhc3MgbmFtZSksIGFycmF5IG9mIHN0cmluZ3MgKGFycmF5IG9mIGNsYXNzIG5hbWVzKSBvciB1bmRlZmluZWQgZm9yIG5vIGNsYXNzLlxuICAgKiBAdHlwZSB7IFJvd0NsYXNzUGFyYW1zPFREYXRhID0gYW55LCBUQ29udGV4dCA9IGFueT4gfVxuICAgKiBAcmV0dXJucyB7IHN0cmluZyB9XG4gICovIFxuICBASW5wdXQoKSBwdWJsaWMgZ2V0Um93Q2xhc3M6ICgocGFyYW1zOiBSb3dDbGFzc1BhcmFtczxSb3dOb2RlLCBhbnk+KSA9PiBzdHJpbmcpIHwgdW5kZWZpbmVkO1xuXG4gIC8qKlxuICAgKiBPdXRwdXQgZXZlbnQgZW1pdHRlciB0cmlnZ2VyZWQgd2hlbiBhIHJvdyBpbiB0aGUgYWctR3JpZCBpcyBjbGlja2VkLlxuICAgKiBFbWl0cyB0aGUgZGF0YSBhc3NvY2lhdGVkIHdpdGggdGhlIGNsaWNrZWQgcm93LlxuICAgKiBAdHlwZSB7RXZlbnRFbWl0dGVyPGFueT59XG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHJlYWRvbmx5IG9uUm93Q2xpY2s6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIC8qKlxuICAgKiBPdXRwdXQgZXZlbnQgZW1pdHRlciB0cmlnZ2VyZWQgd2hlbiB0aGUgYWctR3JpZCBpcyByZWFkeS5cbiAgICogRW1pdHMgYSBgR3JpZFJlYWR5RXZlbnRgIG9iamVjdC5cbiAgICogQHR5cGUge0V2ZW50RW1pdHRlcjxHcmlkUmVhZHlFdmVudD59XG4gICAqL1xuICBAT3V0cHV0KCkgcHVibGljIHJlYWRvbmx5IG9uR3JpZFJlYWR5OiBFdmVudEVtaXR0ZXI8R3JpZFJlYWR5RXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIC8qKlxuICAgKiBPdXRwdXQgZXZlbnQgZW1pdHRlciB0cmlnZ2VyZWQgd2hlbiB0aGUgc2VsZWN0aW9uIGluIHRoZSBhZy1HcmlkIGNoYW5nZXMuXG4gICAqIEVtaXRzIGEgYFNlbGVjdGlvbkNoYW5nZWRFdmVudDxhbnk+YCBvYmplY3QuXG4gICAqIEB0eXBlIHtFdmVudEVtaXR0ZXI8U2VsZWN0aW9uQ2hhbmdlZEV2ZW50PGFueT4+fVxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyByZWFkb25seSBvblNlbGVjdGlvbkNoYW5nZWQ6IEV2ZW50RW1pdHRlcjxTZWxlY3Rpb25DaGFuZ2VkRXZlbnQ8YW55Pj4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgLyoqXG4gICAqIERlZmF1bHQgY29sdW1uIGRlZmluaXRpb24gZm9yIHRoZSBhZy1HcmlkLlxuICAgKiBAdHlwZSB7Q29sRGVmfVxuICAgKi9cbiAgcHVibGljIHJlYWRvbmx5IGRlZmF1bHRDb2xEZWY6IENvbERlZiA9IHsgbWluV2lkdGg6IDIwMCwgZmxleDogMSwgc29ydGFibGU6IHRydWUsIHJlc2l6YWJsZTogdHJ1ZSwgc29ydGluZ09yZGVyOiBbICdhc2MnLCAnZGVzYycgXSwgY2VsbFN0eWxlOiB7IHRleHRBbGlnbjogJ2xlZnQnIH19O1xuXG4gIC8qKlxuICAgKiBQcm90ZWN0ZWQgdmFyaWFibGUgdG8gc3RvcmUgdGhlIHRvdGFsIGNvdW50IG9mIHJlY29yZHMuXG4gICAqIEB0eXBlIHtudW1iZXIgfCB1bmRlZmluZWR9XG4gICAqL1xuICBwcm90ZWN0ZWQgY291bnQ/OiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFByb3RlY3RlZCB2YXJpYWJsZSB0byBzdG9yZSB0aGUgYWctR3JpZCBBUEkuXG4gICAqIEB0eXBlIHtHcmlkQXBpfVxuICAgKi9cbiAgcHJvdGVjdGVkIGdyaWRBcGkhOiBHcmlkQXBpO1xuXG4gIC8qKlxuICAgKiBQcm90ZWN0ZWQgdmFyaWFibGUgdG8gc3RvcmUgdGhlIHN1YnNjcmlwdGlvbiB0byBkYXRhIHJldHJpZXZhbC5cbiAgICogQHR5cGUge1N1YnNjcmlwdGlvbiB8IHVuZGVmaW5lZH1cbiAgICovXG4gIHByb3RlY3RlZCBzdWJzPzogU3Vic2NyaXB0aW9uO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCByZWFkb25seSBzZXJ2aWNlOiBHcmlkU2VydmljZVxuICApIHt9XG5cbiAgLyoqXG4gICAqIExpZmVjeWNsZSBob29rIHRvIGluaXRpYWxpemUgdGhlIGNvbXBvbmVudC5cbiAgICogUmVnaXN0ZXJzIHRoZSByb3cgbW9kZWwgdHlwZSBtb2R1bGUgYmFzZWQgb24gdGhlIHNwZWNpZmllZCB0eXBlLlxuICAgKiBTZXRzIGRlZmF1bHQgdmFsdWVzIGZvciByb3dQZXJQYWdlIGFuZCBub1Jvd1RleHQgcHJvcGVydGllcyBpbiB0aGUgY29uZmlndXJhdGlvbi5cbiAgICovXG4gIHB1YmxpYyBuZ09uSW5pdCgpOiB2b2lke1xuICAgIE1vZHVsZVJlZ2lzdHJ5LnJlZ2lzdGVyKHRoaXMucm93TW9kZWxUeXBlID09PSAnaW5maW5pdGUnPyBJbmZpbml0ZVJvd01vZGVsTW9kdWxlIDogQ2xpZW50U2lkZVJvd01vZGVsTW9kdWxlKTtcblxuICAgIGlmICghdGhpcy5jb25maWcucm93UGVyUGFnZSkgdGhpcy5jb25maWcucm93UGVyUGFnZSA9IDUwO1xuICAgIHRoaXMuY29uZmlnLm5vUm93VGV4dCA9IGA8c3BhbiBjbGFzcz1cImYyMFwiPiR7IHRoaXMuY29uZmlnLm5vUm93VGV4dD8/ICdEYXRhIG5vdCBmb3VuZCcgfTwvc3Bhbj5gO1xuICB9XG5cbiAgLyoqXG4gICAqIExpZmVjeWNsZSBob29rIHRvIGhhbmRsZSBjb21wb25lbnQgZGVzdHJ1Y3Rpb24uXG4gICAqIFVuc3Vic2NyaWJlcyBmcm9tIGRhdGEgcmV0cmlldmFsIHN1YnNjcmlwdGlvbnMuXG4gICAqL1xuICBwdWJsaWMgbmdPbkRlc3Ryb3koKTogdm9pZHsgdGhpcy5zdWJzPy51bnN1YnNjcmliZSgpOyB9XG5cbiAgLyoqXG4gICAqIEV2ZW50IGhhbmRsZXIgZm9yIGNsaWNraW5nIGEgcm93IGluIHRoZSBhZy1HcmlkLlxuICAgKiBFbWl0cyB0aGUgZGF0YSBhc3NvY2lhdGVkIHdpdGggdGhlIGNsaWNrZWQgcm93LlxuICAgKiBAcGFyYW0ge2FueX0gZGF0YSAtIERhdGEgYXNzb2NpYXRlZCB3aXRoIHRoZSBjbGlja2VkIHJvdy5cbiAgICovXG4gIHB1YmxpYyBjbGlja1JvdyhkYXRhOiBhbnkpOiB2b2lkeyB0aGlzLm9uUm93Q2xpY2suZW1pdChkYXRhKTsgfVxuXG4gIC8qKlxuICAgKiBFdmVudCBoYW5kbGVyIGZvciB3aGVuIGNvbHVtbiBkcmFnIHN0b3BzIGluIHRoZSBhZy1HcmlkLlxuICAgKiBTYXZlcyB0aGUgY29sdW1uIHN0YXRlIHRvIGxvY2FsIHN0b3JhZ2UuXG4gICAqIEBwYXJhbSB7RHJhZ1N0b3BwZWRFdmVudH0gcGFyYW0wIC0gRHJhZ1N0b3BwZWRFdmVudCBvYmplY3QgY29udGFpbmluZyBBUEkgaW5mb3JtYXRpb24uXG4gICAqL1xuICBwdWJsaWMgZHJhZ0NvbHVtbih7IGFwaSB9OiBEcmFnU3RvcHBlZEV2ZW50KTogdm9pZHsgbG9jYWxTdG9yYWdlLnNldEl0ZW0odGhpcy5pZCwgSlNPTi5zdHJpbmdpZnkoYXBpLmdldENvbHVtblN0YXRlKCkpKTsgfVxuXG4gIC8qKlxuICAgKiBFdmVudCBoYW5kbGVyIGZvciBzZWxlY3Rpb24gY2hhbmdlIGluIHRoZSBhZy1HcmlkLlxuICAgKiBFbWl0cyBhIGBTZWxlY3Rpb25DaGFuZ2VkRXZlbnQ8YW55PmAgb2JqZWN0LlxuICAgKiBAcGFyYW0ge1NlbGVjdGlvbkNoYW5nZWRFdmVudDxhbnk+fSBkYXRhIC0gU2VsZWN0aW9uQ2hhbmdlZEV2ZW50IG9iamVjdC5cbiAgICovXG4gIHB1YmxpYyBjaGFuZ2VTZWxlY3RlZChkYXRhOiBTZWxlY3Rpb25DaGFuZ2VkRXZlbnQ8YW55Pik6IHZvaWR7IHRoaXMub25TZWxlY3Rpb25DaGFuZ2VkLmVtaXQoZGF0YSk7IH1cblxuICAvKipcbiAgICogRXZlbnQgaGFuZGxlciBmb3IgcGFnaW5hdGlvbiBjaGFuZ2UgaW4gdGhlIGFnLUdyaWQuXG4gICAqIFVwZGF0ZXMgdGhlIHJvd1BlclBhZ2UgcHJvcGVydHkgaW4gdGhlIGNvbmZpZ3VyYXRpb24gYmFzZWQgb24gdGhlIG5ldyBwYWdlIHNpemUuXG4gICAqIEBwYXJhbSB7UGFnaW5hdGlvbkNoYW5nZWRFdmVudH0gZXYgLSBQYWdpbmF0aW9uQ2hhbmdlZEV2ZW50IG9iamVjdC5cbiAgICovXG4gIHB1YmxpYyBjaGFuZ2VQYWdpbmF0aW9uKGV2OiBQYWdpbmF0aW9uQ2hhbmdlZEV2ZW50KTogdm9pZHtcbiAgICBpZiAoZXYubmV3UGFnZVNpemUpIHRoaXMuY29uZmlnLnJvd1BlclBhZ2UgPSB0aGlzLmdyaWRBcGkucGFnaW5hdGlvbkdldFBhZ2VTaXplKCk7XG4gIH1cblxuICAvKipcbiAgICogRXZlbnQgaGFuZGxlciBmb3Igc2V0dGluZyB0aGUgZGF0YXNvdXJjZSB3aGVuIHRoZSBhZy1HcmlkIGlzIHJlYWR5LlxuICAgKiBFbWl0cyB0aGUgb25HcmlkUmVhZHkgZXZlbnQgYW5kIHNldHMgdGhlIEFQSSBpbiB0aGUgR3JpZFNlcnZpY2UuXG4gICAqIEFwcGxpZXMgY29sdW1uIHN0YXRlIGZyb20gbG9jYWwgc3RvcmFnZSBhbmQgcmVzZXRzIHRoZSBncmlkIGZvciBpbmZpbml0ZSByb3cgbW9kZWwgdHlwZS5cbiAgICogQHBhcmFtIHtHcmlkUmVhZHlFdmVudH0gZXYgLSBHcmlkUmVhZHlFdmVudCBvYmplY3QuXG4gICAqL1xuICBwdWJsaWMgc2V0RGF0YXNvdXJjZShldjogR3JpZFJlYWR5RXZlbnQpOiB2b2lke1xuICAgIHRoaXMuZ3JpZEFwaSA9IGV2LmFwaTtcbiAgICB0aGlzLm9uR3JpZFJlYWR5LmVtaXQoZXYpO1xuICAgIHRoaXMuc2VydmljZS5zZXRBcGkodGhpcy5pZCwgdGhpcy5ncmlkQXBpKTtcblxuICAgIGNvbnN0IHN0YXRlID0gSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbSh0aGlzLmlkKSBhcyBhbnkpO1xuICAgIGlmIChzdGF0ZSkgZXYuYXBpLmFwcGx5Q29sdW1uU3RhdGUoeyBzdGF0ZSwgYXBwbHlPcmRlcjogdHJ1ZSB9KTtcblxuICAgIGlmICh0aGlzLnJvd01vZGVsVHlwZSA9PT0gJ2NsaWVudFNpZGUnKSB0aGlzLmdyaWRBcGkuc2V0R3JpZE9wdGlvbigncm93RGF0YScsIHRoaXMucm93RGF0YSk7XG4gICAgaWYgKHRoaXMucm93TW9kZWxUeXBlICE9PSAnaW5maW5pdGUnKSByZXR1cm47XG4gICAgdGhpcy5yZXNldCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFJlc2V0cyB0aGUgZGF0YXNvdXJjZSBmb3IgaW5maW5pdGUgcm93IG1vZGVsIHR5cGUuXG4gICAqIFJldHJpZXZlcyByb3dzIGFzeW5jaHJvbm91c2x5IGJhc2VkIG9uIHBhZ2luYXRpb24gYW5kIHNvcnRpbmcuXG4gICAqIFVwZGF0ZXMgdGhlIGNvdW50IG9mIHJlY29yZHMgYW5kIGNhbGxzIHN1Y2Nlc3Mgb3IgZmFpbCBjYWxsYmFja3MgYWNjb3JkaW5nbHkuXG4gICAqL1xuICBwdWJsaWMgcmVzZXQoKTogdm9pZHtcbiAgICBpZiAoIXRoaXMuZ3JpZEFwaSkgcmV0dXJuO1xuXG4gICAgY29uc3QgZGF0YXNvdXJjZTogSURhdGFzb3VyY2UgPSB7XG4gICAgICBnZXRSb3dzOiAoeyBzb3J0TW9kZWw6IFt7IGNvbElkLCBzb3J0IH1dLCBzdWNjZXNzQ2FsbGJhY2ssIGZhaWxDYWxsYmFjayB9OiBJR2V0Um93c1BhcmFtcykgPT4ge1xuICAgICAgICB0aGlzLmdyaWRBcGkuc2hvd0xvYWRpbmdPdmVybGF5KCk7XG4gICAgICAgIGNvbnN0IG9mZnNldCA9IHRoaXMuZ3JpZEFwaS5wYWdpbmF0aW9uR2V0Q3VycmVudFBhZ2UoKTtcblxuICAgICAgICB0aGlzLnN1YnMgPSB0aGlzLmNvbmZpZy5nZXREYXRhIShvZmZzZXQsIHRoaXMuY29uZmlnLnJvd1BlclBhZ2UhLCBjb2xJZCwgc29ydCkuc3Vic2NyaWJlKHtcbiAgICAgICAgICBuZXh0OiAoeyBkYXRhLCB0b3RhbFJlY29yZCB9KSA9PiB7XG4gICAgICAgICAgICB0aGlzLmdyaWRBcGkuaGlkZU92ZXJsYXkoKTtcbiAgICAgICAgICAgIFxuICAgICAgICAgICAgaWYgKG9mZnNldCA9PT0gMCkge1xuICAgICAgICAgICAgICBpZiAoZGF0YS5sZW5ndGggPT09IDApIHtcbiAgICAgICAgICAgICAgICB0aGlzLmdyaWRBcGkuc2V0R3JpZE9wdGlvbignb3ZlcmxheU5vUm93c1RlbXBsYXRlJywgdGhpcy5jb25maWcubm9Sb3dUZXh0KTtcbiAgICAgICAgICAgICAgICB0aGlzLmdyaWRBcGkuc2hvd05vUm93c092ZXJsYXkoKTtcbiAgICAgICAgICAgICAgfSBcbiAgICAgICAgICAgICAgdGhpcy5jb3VudCA9IHRvdGFsUmVjb3JkO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBpZiAoIXRoaXMuY29uZmlnLnVzZVRvdGFsUmVjb3JkICYmIGRhdGEubGVuZ3RoIDwgdGhpcy5jb25maWcucm93UGVyUGFnZSEpIHtcbiAgICAgICAgICAgICAgdGhpcy5jb3VudCA9IChvZmZzZXQgKiB0aGlzLmNvbmZpZy5yb3dQZXJQYWdlISkgKyBkYXRhLmxlbmd0aDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHN1Y2Nlc3NDYWxsYmFjayhkYXRhLCB0aGlzLmNvdW50KTtcbiAgICAgICAgICB9LFxuICAgICAgICAgIGVycm9yOiAoeyBtZXNzYWdlIH0pID0+IHtcbiAgICAgICAgICAgIHRoaXMuZ3JpZEFwaS5zZXRHcmlkT3B0aW9uKCdvdmVybGF5Tm9Sb3dzVGVtcGxhdGUnLCBgPHNwYW4gY2xhc3M9XCJmMjBcIj4keyBtZXNzYWdlIH08L3NwYW4+YCk7XG5cbiAgICAgICAgICAgIHRoaXMuZ3JpZEFwaS5oaWRlT3ZlcmxheSgpO1xuICAgICAgICAgICAgdGhpcy5ncmlkQXBpLnNob3dOb1Jvd3NPdmVybGF5KCk7XG4gICAgICAgICAgICBmYWlsQ2FsbGJhY2soKTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH07XG4gICAgXG4gICAgdGhpcy5ncmlkQXBpPy5zZXRHcmlkT3B0aW9uKCdkYXRhc291cmNlJywgZGF0YXNvdXJjZSk7XG4gIH1cbn1cbiIsIjxhZy1ncmlkLWFuZ3VsYXIgY2xhc3M9XCJhZy10aGVtZS1iYWxoYW0gaC0xMDBcIlxuICAgIFtwYWdpbmF0aW9uXT1cInRydWVcIlxuICAgIFthbmltYXRlUm93c109XCJ0cnVlXCJcbiAgICBbZ2V0Um93Q2xhc3NdPVwiZ2V0Um93Q2xhc3NcIlxuICAgIFtyb3dNb2RlbFR5cGVdPVwicm93TW9kZWxUeXBlXCJcbiAgICBbcm93U2VsZWN0aW9uXT1cInJvd1NlbGVjdGlvblwiXG4gICAgW2NvbHVtbkRlZnNdPVwiY29uZmlnLmNvbERlZnNcIlxuICAgIFtkZWZhdWx0Q29sRGVmXT1cImRlZmF1bHRDb2xEZWZcIlxuICAgIFtjYWNoZUJsb2NrU2l6ZV09XCJjb25maWcucm93UGVyUGFnZVwiXG4gICAgW3BhZ2luYXRpb25QYWdlU2l6ZV09XCJjb25maWcucm93UGVyUGFnZVwiXG4gICAgW292ZXJsYXlOb1Jvd3NUZW1wbGF0ZV09XCJjb25maWcubm9Sb3dUZXh0XCJcbiAgICAoZHJhZ1N0b3BwZWQpPVwiZHJhZ0NvbHVtbigkZXZlbnQpXCJcbiAgICAoZ3JpZFJlYWR5KT1cInNldERhdGFzb3VyY2UoJGV2ZW50KVwiXG4gICAgKHJvd0NsaWNrZWQpPVwiY2xpY2tSb3coJGV2ZW50LmRhdGEpXCJcbiAgICAoc2VsZWN0aW9uQ2hhbmdlZCk9XCJjaGFuZ2VTZWxlY3RlZCgkZXZlbnQpXCJcbiAgICAocGFnaW5hdGlvbkNoYW5nZWQpPVwiY2hhbmdlUGFnaW5hdGlvbigkZXZlbnQpXCJcbi8+XG4iXX0=
109
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1wYWdpbmF0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuaXBpbi1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9ncmlkcy9ncmlkLXBhZ2luYXRpb24vZ3JpZC1wYWdpbmF0aW9uLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL3VuaXBpbi1hbmd1bGFyL3NyYy9saWIvY29tcG9uZW50cy9ncmlkcy9ncmlkLXBhZ2luYXRpb24vZ3JpZC1wYWdpbmF0aW9uLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBcUIsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5ILE9BQU8sRUFBdUMsY0FBYyxFQUFtSSxNQUFNLHlCQUF5QixDQUFDO0FBQy9OLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDBDQUEwQyxDQUFDO0FBQ3BGLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQzs7OztBQWMxRCxNQUFNLE9BQU8sdUJBQXVCO0lBdUZsQyxZQUNxQixPQUFvQjtRQUFwQixZQUFPLEdBQVAsT0FBTyxDQUFhO1FBM0V6QixZQUFPLEdBQVUsRUFBRSxDQUFDO1FBTXBCLE9BQUUsR0FBdUIsUUFBUSxDQUFDO1FBT2xDLGlCQUFZLEdBQWlCLFVBQVUsQ0FBQztRQU14QyxpQkFBWSxHQUEwQixRQUFRLENBQUM7UUFlckMsZUFBVSxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBT25ELGdCQUFXLEdBQWlDLElBQUksWUFBWSxFQUFFLENBQUM7UUFPL0QsdUJBQWtCLEdBQTZDLElBQUksWUFBWSxFQUFFLENBQUM7UUFNNUYs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LENBQUMsYUFBYSxDQUFDLHVCQUF1QixFQUFFLHFCQUFzQixPQUFRLFNBQVMsQ0FBQyxDQUFDO3dCQUU3RixJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDO3dCQUMzQixJQUFJLENBQUMsT0FBTyxDQUFDLGlCQUFpQixFQUFFLENBQUM7d0JBQ2pDLFlBQVksRUFBRSxDQUFDO29CQUNqQixDQUFDO2lCQUNGLENBQUMsQ0FBQztZQUNMLENBQUM7U0FDRixDQUFDO1FBRUYsSUFBSSxDQUFDLE9BQU8sRUFBRSxhQUFhLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQyxDQUFDO0lBQ3hELENBQUM7K0dBeE1VLHVCQUF1QjttR0FBdkIsdUJBQXVCLCtVQ25CcEMsMHBCQWlCQSxrSURESSxZQUFZOzs0RkFHSCx1QkFBdUI7a0JBVm5DLFNBQVM7aUNBQ0ksSUFBSSxZQUNOLG9CQUFvQixtQkFHYix1QkFBdUIsQ0FBQyxNQUFNLFdBQ3RDO3dCQUNQLFlBQVk7cUJBQ2I7Z0ZBU2lDLE1BQU07c0JBQXZDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQU1ULE9BQU87c0JBQXRCLEtBQUs7Z0JBTVUsRUFBRTtzQkFBakIsS0FBSztnQkFPVSxZQUFZO3NCQUEzQixLQUFLO2dCQU1VLFlBQVk7c0JBQTNCLEtBQUs7Z0JBUVUsV0FBVztzQkFBMUIsS0FBSztnQkFPb0IsVUFBVTtzQkFBbkMsTUFBTTtnQkFPbUIsV0FBVztzQkFBcEMsTUFBTTtnQkFPbUIsa0JBQWtCO3NCQUEzQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBDb2xEZWYsIElEYXRhc291cmNlLCBJR2V0Um93c1BhcmFtcywgTW9kdWxlUmVnaXN0cnksIFJvd01vZGVsVHlwZSwgR3JpZFJlYWR5RXZlbnQsIERyYWdTdG9wcGVkRXZlbnQsIFNlbGVjdGlvbkNoYW5nZWRFdmVudCwgR3JpZEFwaSwgUGFnaW5hdGlvbkNoYW5nZWRFdmVudCwgUm93Q2xhc3NQYXJhbXMsIFJvd05vZGUgfSBmcm9tICdAYWctZ3JpZC1jb21tdW5pdHkvY29yZSc7XG5pbXBvcnQgeyBJbmZpbml0ZVJvd01vZGVsTW9kdWxlIH0gZnJvbSAnQGFnLWdyaWQtY29tbXVuaXR5L2luZmluaXRlLXJvdy1tb2RlbCc7XG5pbXBvcnQgeyBDbGllbnRTaWRlUm93TW9kZWxNb2R1bGUgfSBmcm9tICdAYWctZ3JpZC1jb21tdW5pdHkvY2xpZW50LXNpZGUtcm93LW1vZGVsJztcbmltcG9ydCB7IEFnR3JpZE1vZHVsZSB9IGZyb20gJ0BhZy1ncmlkLWNvbW11bml0eS9hbmd1bGFyJztcbmltcG9ydCB7IEdyaWRDb25maWcgfSBmcm9tICcuLi9pbnRlcmZhY2VzL2dyaWQtY29uZmlnLmludGVyZmFjZSc7XG5pbXBvcnQgeyBHcmlkU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2dyaWQuc2VydmljZSc7XG5cbkBDb21wb25lbnQoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ3VwLXBhZ2luYXRpb24tZ3JpZCcsXG4gIHN0eWxlVXJsOiAnLi9ncmlkLXBhZ2luYXRpb24uY29tcG9uZW50LnNjc3MnLFxuICB0ZW1wbGF0ZVVybDogJy4vZ3JpZC1wYWdpbmF0aW9uLmNvbXBvbmVudC5odG1sJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGltcG9ydHM6IFsgXG4gICAgQWdHcmlkTW9kdWxlIFxuICBdXG59KVxuZXhwb3J0IGNsYXNzIEdyaWRQYWdpbmF0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YXJpYWJsZSBmb3IgdGhlIGNvbmZpZ3VyYXRpb24gb2JqZWN0IGRlZmluaW5nIHRoZSBhZy1HcmlkIHByb3BlcnRpZXMuXG4gICAqIEB0eXBlIHtHcmlkQ29uZmlnfVxuICAgKiBAcmVxdWlyZWRcbiAgICovXG4gIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIHB1YmxpYyBjb25maWchOiBHcmlkQ29uZmlnO1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YXJpYWJsZSBmb3IgcHJvdmlkaW5nIHRoZSByb3cgZGF0YSB0byBiZSBkaXNwbGF5ZWQgaW4gdGhlIGFnLUdyaWQuXG4gICAqIEB0eXBlIHthbnlbXX1cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyByb3dEYXRhOiBhbnlbXSA9IFtdO1xuXG4gIC8qKlxuICAgKiBJbnB1dCB2YXJpYWJsZSBmb3Igc3BlY2lmeWluZyB0aGUgdW5pcXVlIGlkZW50aWZpZXIgb2YgdGhlIGFnLUdyaWQgY29tcG9uZW50LlxuICAgKiBAdHlwZSB7YGdyaWQtJHsgc3RyaW5nIH1gfVxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIGlkOiBgZ3JpZC0keyBzdHJpbmcgfWAgPSAnZ3JpZC1wJztcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgZm9yIHNwZWNpZnlpbmcgdGhlIHJvdyBtb2RlbCB0eXBlIGZvciB0aGUgYWctR3JpZC5cbiAgICogSXQgY2FuIGJlICdpbmZpbml0ZScgb3IgJ2NsaWVudFNpZGUnLlxuICAgKiBAdHlwZSB7Um93TW9kZWxUeXBlfVxuICAgKi9cbiAgQElucHV0KCkgcHVibGljIHJvd01vZGVsVHlwZTogUm93TW9kZWxUeXBlID0gJ2luZmluaXRlJztcblxuICAvKipcbiAgICogSW5wdXQgdmFyaWFibGUgZm9yIHNwZWNpZnlpbmcgdGhlIHJvdyBzZWxlY3Rpb24gbW9kZS4gSXQgY2FuIGJlICdzaW5nbGUnIG9yICdtdWx0aXBsZScuXG4gICAqIEB0eXBlIHsoJ3NpbmdsZScgfCAnbXVsdGlwbGUnKX1cbiAgICovXG4gIEBJbnB1dCgpIHB1YmxpYyByb3dTZWxlY3Rpb246ICdzaW5nbGUnIHwgJ211bHRpcGxlJyA9ICdzaW5nbGUnO1xuXG4gIC8qKlxuICAgKiBDYWxsYmFjayB2ZXJzaW9uIG9mIHByb3BlcnR5IGByb3dDbGFzc2AgdG8gc2V0IGNsYXNzKGVzKSBmb3IgZWFjaCByb3cgaW5kaXZpZHVhbGx5LiBcbiAgICogRnVuY3Rpb24gc2hvdWxkIHJldHVybiBlaXRoZXIgYSBzdHJpbmcgKGNsYXNzIG5hbWUpLCBhcnJheSBvZiBzdHJpbmdzIChhcnJheSBvZiBjbGFzcyBuYW1lcykgb3IgdW5kZWZpbmVkIGZvciBubyBjbGFzcy5cbiAgICogQHR5cGUgeyBSb3dDbGFzc1BhcmFtczxURGF0YSA9IGFueSwgVENvbnRleHQgPSBhbnk+IH1cbiAgICogQHJldHVybnMgeyBzdHJpbmcgfVxuICAqLyBcbiAgQElucHV0KCkgcHVibGljIGdldFJvd0NsYXNzOiAoKHBhcmFtczogUm93Q2xhc3NQYXJhbXM8Um93Tm9kZSwgYW55PikgPT4gc3RyaW5nKSB8IHVuZGVmaW5lZDtcblxuICAvKipcbiAgICogT3V0cHV0IGV2ZW50IGVtaXR0ZXIgdHJpZ2dlcmVkIHdoZW4gYSByb3cgaW4gdGhlIGFnLUdyaWQgaXMgY2xpY2tlZC5cbiAgICogRW1pdHMgdGhlIGRhdGEgYXNzb2NpYXRlZCB3aXRoIHRoZSBjbGlja2VkIHJvdy5cbiAgICogQHR5cGUge0V2ZW50RW1pdHRlcjxhbnk+fVxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyByZWFkb25seSBvblJvd0NsaWNrOiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAvKipcbiAgICogT3V0cHV0IGV2ZW50IGVtaXR0ZXIgdHJpZ2dlcmVkIHdoZW4gdGhlIGFnLUdyaWQgaXMgcmVhZHkuXG4gICAqIEVtaXRzIGEgYEdyaWRSZWFkeUV2ZW50YCBvYmplY3QuXG4gICAqIEB0eXBlIHtFdmVudEVtaXR0ZXI8R3JpZFJlYWR5RXZlbnQ+fVxuICAgKi9cbiAgQE91dHB1dCgpIHB1YmxpYyByZWFkb25seSBvbkdyaWRSZWFkeTogRXZlbnRFbWl0dGVyPEdyaWRSZWFkeUV2ZW50PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcblxuICAvKipcbiAgICogT3V0cHV0IGV2ZW50IGVtaXR0ZXIgdHJpZ2dlcmVkIHdoZW4gdGhlIHNlbGVjdGlvbiBpbiB0aGUgYWctR3JpZCBjaGFuZ2VzLlxuICAgKiBFbWl0cyBhIGBTZWxlY3Rpb25DaGFuZ2VkRXZlbnQ8YW55PmAgb2JqZWN0LlxuICAgKiBAdHlwZSB7RXZlbnRFbWl0dGVyPFNlbGVjdGlvbkNoYW5nZWRFdmVudDxhbnk+Pn1cbiAgICovXG4gIEBPdXRwdXQoKSBwdWJsaWMgcmVhZG9ubHkgb25TZWxlY3Rpb25DaGFuZ2VkOiBFdmVudEVtaXR0ZXI8U2VsZWN0aW9uQ2hhbmdlZEV2ZW50PGFueT4+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIC8qKlxuICAgKiBEZWZhdWx0IGNvbHVtbiBkZWZpbml0aW9uIGZvciB0aGUgYWctR3JpZC5cbiAgICogQHR5cGUge0NvbERlZn1cbiAgICovXG4gIHB1YmxpYyByZWFkb25seSBkZWZhdWx0Q29sRGVmOiBDb2xEZWYgPSB7IG1pbldpZHRoOiAyMDAsIGZsZXg6IDEsIHNvcnRhYmxlOiB0cnVlLCByZXNpemFibGU6IHRydWUsIHNvcnRpbmdPcmRlcjogWyAnYXNjJywgJ2Rlc2MnIF0sIGNlbGxTdHlsZTogeyB0ZXh0QWxpZ246ICdsZWZ0JyB9fTtcblxuICAvKipcbiAgICogUHJvdGVjdGVkIHZhcmlhYmxlIHRvIHN0b3JlIHRoZSB0b3RhbCBjb3VudCBvZiByZWNvcmRzLlxuICAgKiBAdHlwZSB7bnVtYmVyIHwgdW5kZWZpbmVkfVxuICAgKi9cbiAgcHJvdGVjdGVkIGNvdW50PzogbnVtYmVyO1xuXG4gIC8qKlxuICAgKiBQcm90ZWN0ZWQgdmFyaWFibGUgdG8gc3RvcmUgdGhlIGFnLUdyaWQgQVBJLlxuICAgKiBAdHlwZSB7R3JpZEFwaX1cbiAgICovXG4gIHByb3RlY3RlZCBncmlkQXBpITogR3JpZEFwaTtcblxuICAvKipcbiAgICogUHJvdGVjdGVkIHZhcmlhYmxlIHRvIHN0b3JlIHRoZSBzdWJzY3JpcHRpb24gdG8gZGF0YSByZXRyaWV2YWwuXG4gICAqIEB0eXBlIHtTdWJzY3JpcHRpb24gfCB1bmRlZmluZWR9XG4gICAqL1xuICBwcm90ZWN0ZWQgc3Vicz86IFN1YnNjcmlwdGlvbjtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgc2VydmljZTogR3JpZFNlcnZpY2VcbiAgKSB7fVxuXG4gIC8qKlxuICAgKiBMaWZlY3ljbGUgaG9vayB0byBpbml0aWFsaXplIHRoZSBjb21wb25lbnQuXG4gICAqIFJlZ2lzdGVycyB0aGUgcm93IG1vZGVsIHR5cGUgbW9kdWxlIGJhc2VkIG9uIHRoZSBzcGVjaWZpZWQgdHlwZS5cbiAgICogU2V0cyBkZWZhdWx0IHZhbHVlcyBmb3Igcm93UGVyUGFnZSBhbmQgbm9Sb3dUZXh0IHByb3BlcnRpZXMgaW4gdGhlIGNvbmZpZ3VyYXRpb24uXG4gICAqL1xuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZHtcbiAgICBNb2R1bGVSZWdpc3RyeS5yZWdpc3Rlcih0aGlzLnJvd01vZGVsVHlwZSA9PT0gJ2luZmluaXRlJz8gSW5maW5pdGVSb3dNb2RlbE1vZHVsZSA6IENsaWVudFNpZGVSb3dNb2RlbE1vZHVsZSk7XG5cbiAgICBpZiAoIXRoaXMuY29uZmlnLnJvd1BlclBhZ2UpIHRoaXMuY29uZmlnLnJvd1BlclBhZ2UgPSA1MDtcbiAgICB0aGlzLmNvbmZpZy5ub1Jvd1RleHQgPSBgPHNwYW4gY2xhc3M9XCJmMjBcIj4keyB0aGlzLmNvbmZpZy5ub1Jvd1RleHQ/PyAnRGF0YSBub3QgZm91bmQnIH08L3NwYW4+YDtcbiAgfVxuXG4gIC8qKlxuICAgKiBMaWZlY3ljbGUgaG9vayB0byBoYW5kbGUgY29tcG9uZW50IGRlc3RydWN0aW9uLlxuICAgKiBVbnN1YnNjcmliZXMgZnJvbSBkYXRhIHJldHJpZXZhbCBzdWJzY3JpcHRpb25zLlxuICAgKi9cbiAgcHVibGljIG5nT25EZXN0cm95KCk6IHZvaWR7IHRoaXMuc3Vicz8udW5zdWJzY3JpYmUoKTsgfVxuXG4gIC8qKlxuICAgKiBFdmVudCBoYW5kbGVyIGZvciBjbGlja2luZyBhIHJvdyBpbiB0aGUgYWctR3JpZC5cbiAgICogRW1pdHMgdGhlIGRhdGEgYXNzb2NpYXRlZCB3aXRoIHRoZSBjbGlja2VkIHJvdy5cbiAgICogQHBhcmFtIHthbnl9IGRhdGEgLSBEYXRhIGFzc29jaWF0ZWQgd2l0aCB0aGUgY2xpY2tlZCByb3cuXG4gICAqL1xuICBwdWJsaWMgY2xpY2tSb3coZGF0YTogYW55KTogdm9pZHsgdGhpcy5vblJvd0NsaWNrLmVtaXQoZGF0YSk7IH1cblxuICAvKipcbiAgICogRXZlbnQgaGFuZGxlciBmb3Igd2hlbiBjb2x1bW4gZHJhZyBzdG9wcyBpbiB0aGUgYWctR3JpZC5cbiAgICogU2F2ZXMgdGhlIGNvbHVtbiBzdGF0ZSB0byBsb2NhbCBzdG9yYWdlLlxuICAgKiBAcGFyYW0ge0RyYWdTdG9wcGVkRXZlbnR9IHBhcmFtMCAtIERyYWdTdG9wcGVkRXZlbnQgb2JqZWN0IGNvbnRhaW5pbmcgQVBJIGluZm9ybWF0aW9uLlxuICAgKi9cbiAgcHVibGljIGRyYWdDb2x1bW4oeyBhcGkgfTogRHJhZ1N0b3BwZWRFdmVudCk6IHZvaWR7IGxvY2FsU3RvcmFnZS5zZXRJdGVtKHRoaXMuaWQsIEpTT04uc3RyaW5naWZ5KGFwaS5nZXRDb2x1bW5TdGF0ZSgpKSk7IH1cblxuICAvKipcbiAgICogRXZlbnQgaGFuZGxlciBmb3Igc2VsZWN0aW9uIGNoYW5nZSBpbiB0aGUgYWctR3JpZC5cbiAgICogRW1pdHMgYSBgU2VsZWN0aW9uQ2hhbmdlZEV2ZW50PGFueT5gIG9iamVjdC5cbiAgICogQHBhcmFtIHtTZWxlY3Rpb25DaGFuZ2VkRXZlbnQ8YW55Pn0gZGF0YSAtIFNlbGVjdGlvbkNoYW5nZWRFdmVudCBvYmplY3QuXG4gICAqL1xuICBwdWJsaWMgY2hhbmdlU2VsZWN0ZWQoZGF0YTogU2VsZWN0aW9uQ2hhbmdlZEV2ZW50PGFueT4pOiB2b2lkeyB0aGlzLm9uU2VsZWN0aW9uQ2hhbmdlZC5lbWl0KGRhdGEpOyB9XG5cbiAgLyoqXG4gICAqIEV2ZW50IGhhbmRsZXIgZm9yIHBhZ2luYXRpb24gY2hhbmdlIGluIHRoZSBhZy1HcmlkLlxuICAgKiBVcGRhdGVzIHRoZSByb3dQZXJQYWdlIHByb3BlcnR5IGluIHRoZSBjb25maWd1cmF0aW9uIGJhc2VkIG9uIHRoZSBuZXcgcGFnZSBzaXplLlxuICAgKiBAcGFyYW0ge1BhZ2luYXRpb25DaGFuZ2VkRXZlbnR9IGV2IC0gUGFnaW5hdGlvbkNoYW5nZWRFdmVudCBvYmplY3QuXG4gICAqL1xuICBwdWJsaWMgY2hhbmdlUGFnaW5hdGlvbihldjogUGFnaW5hdGlvbkNoYW5nZWRFdmVudCk6IHZvaWR7XG4gICAgaWYgKGV2Lm5ld1BhZ2VTaXplKSB0aGlzLmNvbmZpZy5yb3dQZXJQYWdlID0gdGhpcy5ncmlkQXBpLnBhZ2luYXRpb25HZXRQYWdlU2l6ZSgpO1xuICB9XG5cbiAgLyoqXG4gICAqIEV2ZW50IGhhbmRsZXIgZm9yIHNldHRpbmcgdGhlIGRhdGFzb3VyY2Ugd2hlbiB0aGUgYWctR3JpZCBpcyByZWFkeS5cbiAgICogRW1pdHMgdGhlIG9uR3JpZFJlYWR5IGV2ZW50IGFuZCBzZXRzIHRoZSBBUEkgaW4gdGhlIEdyaWRTZXJ2aWNlLlxuICAgKiBBcHBsaWVzIGNvbHVtbiBzdGF0ZSBmcm9tIGxvY2FsIHN0b3JhZ2UgYW5kIHJlc2V0cyB0aGUgZ3JpZCBmb3IgaW5maW5pdGUgcm93IG1vZGVsIHR5cGUuXG4gICAqIEBwYXJhbSB7R3JpZFJlYWR5RXZlbnR9IGV2IC0gR3JpZFJlYWR5RXZlbnQgb2JqZWN0LlxuICAgKi9cbiAgcHVibGljIHNldERhdGFzb3VyY2UoZXY6IEdyaWRSZWFkeUV2ZW50KTogdm9pZHtcbiAgICB0aGlzLmdyaWRBcGkgPSBldi5hcGk7XG4gICAgdGhpcy5vbkdyaWRSZWFkeS5lbWl0KGV2KTtcbiAgICB0aGlzLnNlcnZpY2Uuc2V0QXBpKHRoaXMuaWQsIHRoaXMuZ3JpZEFwaSk7XG5cbiAgICBjb25zdCBzdGF0ZSA9IEpTT04ucGFyc2UobG9jYWxTdG9yYWdlLmdldEl0ZW0odGhpcy5pZCkgYXMgYW55KTtcbiAgICBpZiAoc3RhdGUpIGV2LmFwaS5hcHBseUNvbHVtblN0YXRlKHsgc3RhdGUsIGFwcGx5T3JkZXI6IHRydWUgfSk7XG5cbiAgICBpZiAodGhpcy5yb3dNb2RlbFR5cGUgPT09ICdjbGllbnRTaWRlJykgdGhpcy5ncmlkQXBpLnNldEdyaWRPcHRpb24oJ3Jvd0RhdGEnLCB0aGlzLnJvd0RhdGEpO1xuICAgIGlmICh0aGlzLnJvd01vZGVsVHlwZSAhPT0gJ2luZmluaXRlJykgcmV0dXJuO1xuICAgIHRoaXMucmVzZXQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBSZXNldHMgdGhlIGRhdGFzb3VyY2UgZm9yIGluZmluaXRlIHJvdyBtb2RlbCB0eXBlLlxuICAgKiBSZXRyaWV2ZXMgcm93cyBhc3luY2hyb25vdXNseSBiYXNlZCBvbiBwYWdpbmF0aW9uIGFuZCBzb3J0aW5nLlxuICAgKiBVcGRhdGVzIHRoZSBjb3VudCBvZiByZWNvcmRzIGFuZCBjYWxscyBzdWNjZXNzIG9yIGZhaWwgY2FsbGJhY2tzIGFjY29yZGluZ2x5LlxuICAgKi9cbiAgcHVibGljIHJlc2V0KCk6IHZvaWR7XG4gICAgaWYgKCF0aGlzLmdyaWRBcGkpIHJldHVybjtcblxuICAgIGNvbnN0IGRhdGFzb3VyY2U6IElEYXRhc291cmNlID0ge1xuICAgICAgZ2V0Um93czogKHsgc29ydE1vZGVsOiBbeyBjb2xJZCwgc29ydCB9XSwgc3VjY2Vzc0NhbGxiYWNrLCBmYWlsQ2FsbGJhY2sgfTogSUdldFJvd3NQYXJhbXMpID0+IHtcbiAgICAgICAgdGhpcy5ncmlkQXBpLnNob3dMb2FkaW5nT3ZlcmxheSgpO1xuICAgICAgICBjb25zdCBvZmZzZXQgPSB0aGlzLmdyaWRBcGkucGFnaW5hdGlvbkdldEN1cnJlbnRQYWdlKCk7XG5cbiAgICAgICAgdGhpcy5zdWJzID0gdGhpcy5jb25maWcuZ2V0RGF0YSEob2Zmc2V0LCB0aGlzLmNvbmZpZy5yb3dQZXJQYWdlISwgY29sSWQsIHNvcnQpLnN1YnNjcmliZSh7XG4gICAgICAgICAgbmV4dDogKHsgZGF0YSwgdG90YWxSZWNvcmQgfSkgPT4ge1xuICAgICAgICAgICAgdGhpcy5ncmlkQXBpLmhpZGVPdmVybGF5KCk7XG4gICAgICAgICAgICBcbiAgICAgICAgICAgIGlmIChvZmZzZXQgPT09IDApIHtcbiAgICAgICAgICAgICAgaWYgKGRhdGEubGVuZ3RoID09PSAwKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5ncmlkQXBpLnNldEdyaWRPcHRpb24oJ292ZXJsYXlOb1Jvd3NUZW1wbGF0ZScsIHRoaXMuY29uZmlnLm5vUm93VGV4dCk7XG4gICAgICAgICAgICAgICAgdGhpcy5ncmlkQXBpLnNob3dOb1Jvd3NPdmVybGF5KCk7XG4gICAgICAgICAgICAgIH0gXG4gICAgICAgICAgICAgIHRoaXMuY291bnQgPSB0b3RhbFJlY29yZDtcbiAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgaWYgKCF0aGlzLmNvbmZpZy51c2VUb3RhbFJlY29yZCAmJiBkYXRhLmxlbmd0aCA8IHRoaXMuY29uZmlnLnJvd1BlclBhZ2UhKSB7XG4gICAgICAgICAgICAgIHRoaXMuY291bnQgPSAob2Zmc2V0ICogdGhpcy5jb25maWcucm93UGVyUGFnZSEpICsgZGF0YS5sZW5ndGg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzdWNjZXNzQ2FsbGJhY2soZGF0YSwgdGhpcy5jb3VudCk7XG4gICAgICAgICAgfSxcbiAgICAgICAgICBlcnJvcjogKHsgbWVzc2FnZSB9KSA9PiB7XG4gICAgICAgICAgICB0aGlzLmdyaWRBcGkuc2V0R3JpZE9wdGlvbignb3ZlcmxheU5vUm93c1RlbXBsYXRlJywgYDxzcGFuIGNsYXNzPVwiZjIwXCI+JHsgbWVzc2FnZSB9PC9zcGFuPmApO1xuXG4gICAgICAgICAgICB0aGlzLmdyaWRBcGkuaGlkZU92ZXJsYXkoKTtcbiAgICAgICAgICAgIHRoaXMuZ3JpZEFwaS5zaG93Tm9Sb3dzT3ZlcmxheSgpO1xuICAgICAgICAgICAgZmFpbENhbGxiYWNrKCk7XG4gICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9O1xuICAgIFxuICAgIHRoaXMuZ3JpZEFwaT8uc2V0R3JpZE9wdGlvbignZGF0YXNvdXJjZScsIGRhdGFzb3VyY2UpO1xuICB9XG59XG4iLCI8YWctZ3JpZC1hbmd1bGFyIGNsYXNzPVwiYWctdGhlbWUtYmFsaGFtXCJcbiAgICBbcGFnaW5hdGlvbl09XCJ0cnVlXCJcbiAgICBbYW5pbWF0ZVJvd3NdPVwidHJ1ZVwiXG4gICAgW2dldFJvd0NsYXNzXT1cImdldFJvd0NsYXNzXCJcbiAgICBbcm93TW9kZWxUeXBlXT1cInJvd01vZGVsVHlwZVwiXG4gICAgW3Jvd1NlbGVjdGlvbl09XCJyb3dTZWxlY3Rpb25cIlxuICAgIFtjb2x1bW5EZWZzXT1cImNvbmZpZy5jb2xEZWZzXCJcbiAgICBbZGVmYXVsdENvbERlZl09XCJkZWZhdWx0Q29sRGVmXCJcbiAgICBbY2FjaGVCbG9ja1NpemVdPVwiY29uZmlnLnJvd1BlclBhZ2VcIlxuICAgIFtwYWdpbmF0aW9uUGFnZVNpemVdPVwiY29uZmlnLnJvd1BlclBhZ2VcIlxuICAgIFtvdmVybGF5Tm9Sb3dzVGVtcGxhdGVdPVwiY29uZmlnLm5vUm93VGV4dFwiXG4gICAgKGRyYWdTdG9wcGVkKT1cImRyYWdDb2x1bW4oJGV2ZW50KVwiXG4gICAgKGdyaWRSZWFkeSk9XCJzZXREYXRhc291cmNlKCRldmVudClcIlxuICAgIChyb3dDbGlja2VkKT1cImNsaWNrUm93KCRldmVudC5kYXRhKVwiXG4gICAgKHNlbGVjdGlvbkNoYW5nZWQpPVwiY2hhbmdlU2VsZWN0ZWQoJGV2ZW50KVwiXG4gICAgKHBhZ2luYXRpb25DaGFuZ2VkKT1cImNoYW5nZVBhZ2luYXRpb24oJGV2ZW50KVwiXG4vPlxuIl19