imm-element-ui 2.0.2 → 2.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/am/am.component.mjs +6 -6
- package/esm2022/lib/form/form/form.component.mjs +3 -3
- package/esm2022/lib/form/form-field/field-utils.mjs +2 -2
- package/esm2022/lib/form/form-type/codemirror.type.mjs +3 -3
- package/esm2022/lib/form/form-type/image.type.mjs +3 -3
- package/esm2022/lib/form/form-type/radio.type.mjs +2 -2
- package/esm2022/lib/form/form-type/rowselector.type.mjs +5 -5
- package/esm2022/lib/form/form-type/upload.type.mjs +3 -3
- package/esm2022/lib/grid/cell-edit/cell-edit-autoComplete.component.mjs +3 -3
- package/esm2022/lib/grid/cell-edit/cell-edit-datePicker.compoent.mjs +2 -2
- package/esm2022/lib/grid/cell-edit/cell-edit-select.component.mjs +2 -2
- package/esm2022/lib/grid/grid/grid.component.mjs +7 -7
- package/esm2022/lib/head/head.component.mjs +2 -2
- package/esm2022/lib/href-btn-list/href-btn-list.component.mjs +7 -7
- package/esm2022/lib/loading/loading.component.mjs +2 -2
- package/esm2022/lib/page-form/page-form.component.mjs +5 -5
- package/esm2022/lib/search/search/search.component.mjs +2 -2
- package/esm2022/lib/steps/steps.component.mjs +4 -4
- package/fesm2022/imm-element-ui.mjs +45 -45
- package/fesm2022/imm-element-ui.mjs.map +1 -1
- package/lib/crumb-action/crumb-action.component.d.ts +1 -1
- package/lib/steps/steps.component.d.ts +1 -1
- package/package.json +1 -1
|
@@ -30,7 +30,7 @@ export class SearchComponent {
|
|
|
30
30
|
effect(() => {
|
|
31
31
|
const columnDefs = this.gridOptions()?.columnDefs;
|
|
32
32
|
this.visible = this.gridOptions()?.showSearch ?? true;
|
|
33
|
-
console.log('mount------')
|
|
33
|
+
// console.log('mount------')
|
|
34
34
|
this.searchItems = searchUtils.extractSearchItems(columnDefs, this.i18n);
|
|
35
35
|
this.sortOptions = columnDefs.map((columnDef) => ({ key: columnDef.field, label: columnDef.headerName }));
|
|
36
36
|
}, { allowSignalWrites: true });
|
|
@@ -155,4 +155,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
155
155
|
type: ViewChild,
|
|
156
156
|
args: ['textPanel']
|
|
157
157
|
}] } });
|
|
158
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ltbS1lbGVtZW50LXVpL3NyYy9saWIvc2VhcmNoL3NlYXJjaC9zZWFyY2guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW1tLWVsZW1lbnQtdWkvc3JjL2xpYi9zZWFyY2gvc2VhcmNoL3NlYXJjaC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQXNCLE1BQU0sZUFBZSxDQUFDO0FBRTdHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVwRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTlDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7QUEwQzFDLE1BQU0sT0FBTyxlQUFlO0lBbUIzQixZQUNTLE1BQXFCLEVBQ3JCLElBQWlCO1FBRGpCLFdBQU0sR0FBTixNQUFNLENBQWU7UUFDckIsU0FBSSxHQUFKLElBQUksQ0FBYTtRQWpCMUIsY0FBUyxHQUFHLEtBQUssRUFBVSxDQUFDO1FBQzVCLGdCQUFXLEdBQUcsS0FBSyxFQUFlLENBQUM7UUFDbkMsZ0JBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQzNCLElBQUksQ0FBQyxJQUFJLENBQUMs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QUksQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdkIsQ0FBQzsrR0F6SlcsZUFBZTttR0FBZixlQUFlLDJuQkNwRDVCLHkrREF3REEsZ3BORFJXLFdBQVcsK21CQUFFLGlCQUFpQiwyR0FBRSxrQkFBa0Isd0hBQUUsa0JBQWtCLCtHQUFFLGFBQWEsa0RBQUUsT0FBTzs7NEZBSTVGLGVBQWU7a0JBUDNCLFNBQVM7K0JBQ0MsZUFBZSxjQUNiLElBQUksV0FDUCxDQUFDLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxrQkFBa0IsRUFBRSxrQkFBa0IsRUFBRSxhQUFhLEVBQUUsT0FBTyxDQUFDOzRHQUs5RCxTQUFTO3NCQUFuRCxTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBQ2xCLFFBQVE7c0JBQTlCLFNBQVM7dUJBQUMsVUFBVTtnQkFDRyxTQUFTO3NCQUFoQyxTQUFTO3VCQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIGlucHV0LCBlZmZlY3QsIHVudHJhY2tlZCwgY29tcHV0ZWQsIFZpZXdDaGlsZCwgRWxlbWVudFJlZiwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBHcmlkT3B0aW9ucyB9IGZyb20gJy4uLy4uL2dyaWQvZ3JpZC9ncmlkLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQb3BQYW5lbENvbXBvbmVudCB9IGZyb20gJy4uL3BvcC1wYW5lbC9wb3AtcGFuZWwuY29tcG9uZW50JztcbmltcG9ydCB7IFRleHRQYW5lbENvbXBvbmVudCB9IGZyb20gJy4uL3RleHQtcGFuZWwvdGV4dC1wYW5lbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2VhcmNoVGlwQ29tcG9uZW50IH0gZnJvbSAnLi4vc2VhcmNoLXRpcC9zZWFyY2gtdGlwLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBUcmFuc2xhdGVQaXBlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBBY3Rpb25TZXJ2aWNlLCBTb3J0SXRlbSB9IGZyb20gJy4uLy4uL3NlcnZpY2UvYWN0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBzZWFyY2hVdGlscyB9IGZyb20gJy4uL3NlYXJjaC11dGlscyc7XG5pbXBvcnQgeyBTZWFyY2gsIFNvcnQgfSBmcm9tICcuLi8uLi9hbS9hbS5jb21wb25lbnQnO1xuaW1wb3J0IHsgUG9wb3ZlciB9IGZyb20gJ3ByaW1lbmcvcG9wb3Zlcic7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBJMThuU2VydmljZSB9IGZyb20gJy4uLy4uL3NlcnZpY2UvaTE4bi5zZXJ2aWNlJztcblxuZXhwb3J0IHR5cGUgU2VhcmNoVHlwZSA9ICd0ZXh0JyB8ICdsaXN0JyB8ICdzZWxlY3QnIHwgJ2RhdGUnIHwgJ251bWJlcicgfCAndHJlZSc7XG5leHBvcnQgaW50ZXJmYWNlIFNlYXJjaEl0ZW1PcHRpb24ge1xuXHRrZXk/OiBzdHJpbmc7XG5cdGxhYmVsPzogc3RyaW5nO1xuXHRjaGVja2VkPzogYm9vbGVhbjtcbn1cbmV4cG9ydCBpbnRlcmZhY2UgU2VhcmNoSXRlbSB7XG5cdGZpZWxkPzogc3RyaW5nO1xuXHRsYWJlbD86IHN0cmluZztcblx0c2VsZWN0ZWQ/OiBib29sZWFuO1xuXHRmaWx0ZXI/OiBib29sZWFuO1xuXHRmb3JtYXQ/OiBzdHJpbmc7XG5cdGZpbHRlclR5cGU/OiBTZWFyY2hUeXBlO1xuXHRvcHRpb25zPzogU2VhcmNoSXRlbU9wdGlvbltdO1xuXHRjYXNjYWRlPzogYm9vbGVhbjtcblx0Y2FzY2FkZUtleT86IHN0cmluZztcblx0bXVsdGlwbGU/OiBib29sZWFuO1xuXHRncm91cD86IGJvb2xlYW47XG5cdHZhbHVlPzogYW55O1xuXHRmcm9tPzogc3RyaW5nO1xuXHR0bz86IHN0cmluZztcblx0b3BlcmF0b3I/OiBzdHJpbmc7XG5cdGNhc2NhZGVGdW5jPzogKHZhbHVlOiBhbnkpID0+IE9ic2VydmFibGU8U2VhcmNoSXRlbU9wdGlvbltdPjtcblx0W3Byb3BzTmFtZTogc3RyaW5nXTogYW55O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFNlYXJjaE9wdGlvbnMge1xuXHRzZWFyY2hJdGVtcz86IFNlYXJjaEl0ZW1bXTtcblx0bW9kZWxOYW1lPzogc3RyaW5nO1xufVxuXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICdjdXN0b20tc2VhcmNoJyxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0aW1wb3J0czogW0Zvcm1zTW9kdWxlLCBQb3BQYW5lbENvbXBvbmVudCwgVGV4dFBhbmVsQ29tcG9uZW50LCBTZWFyY2hUaXBDb21wb25lbnQsIFRyYW5zbGF0ZVBpcGUsIFBvcG92ZXJdLFxuXHR0ZW1wbGF0ZVVybDogJy4vc2VhcmNoLmNvbXBvbmVudC5odG1sJyxcblx0c3R5bGVVcmw6ICcuL3NlYXJjaC5jb21wb25lbnQuc2NzcycsXG59KVxuZXhwb3J0IGNsYXNzIFNlYXJjaENvbXBvbmVudCB7XG5cdEBWaWV3Q2hpbGQoJ3NlYXJjaFJlZicsIHsgc3RhdGljOiBmYWxzZSB9KSBzZWFyY2hSZWYhOiBFbGVtZW50UmVmO1xuXHRAVmlld0NoaWxkKCdwb3BQYW5lbCcpIHBvcFBhbmVsITogUG9wb3Zlcjtcblx0QFZpZXdDaGlsZCgndGV4dFBhbmVsJykgdGV4dFBhbmVsITogUG9wb3Zlcjtcblx0c2VhcmNoUHJtID0gaW5wdXQ8U2VhcmNoPigpO1xuXHRncmlkT3B0aW9ucyA9IGlucHV0PEdyaWRPcHRpb25zPigpO1xuXHRzZWFyY2hNb2RlbCA9IGNvbXB1dGVkKCgpID0+IHtcblx0XHRpZiAoIXRoaXMuYWN0aW9uLnNlYXJjaE1vbml0b3IodW50cmFja2VkKCgpID0+IHRoaXMuZ3JpZE9wdGlvbnMoKT8ubW9kZWxOYW1lKSkpIHJldHVybjtcblx0XHRjb25zdCBzZWFyY2ggPSB0aGlzLmFjdGlvbi5nZXRTZWFyY2godW50cmFja2VkKCgpID0+IHRoaXMuZ3JpZE9wdGlvbnMoKT8ubW9kZWxOYW1lKSk7XG5cdFx0cmV0dXJuIHNlYXJjaDtcblx0fSk7XG5cdHNlYXJjaEl0ZW1zITogU2VhcmNoSXRlbVtdO1xuXHRzb3J0T3B0aW9ucyE6IFNlYXJjaEl0ZW1PcHRpb25bXTtcblx0bWFyZ2luTGVmdDogc3RyaW5nID0gJzAnO1xuXHRzZWFyY2hTdHIgPSAnJztcblx0aXNBY3RpdmUgPSBmYWxzZTtcblx0dmlzaWJsZSA9IHRydWU7XG5cdHJlbG9hZCA9IHRydWU7XG5cblx0Y29uc3RydWN0b3IoXG5cdFx0cHJpdmF0ZSBhY3Rpb246IEFjdGlvblNlcnZpY2UsXG5cdFx0cHJpdmF0ZSBpMThuOiBJMThuU2VydmljZSxcblx0KSB7XG5cdFx0ZWZmZWN0KFxuXHRcdFx0KCkgPT4ge1xuXHRcdFx0XHRjb25zdCBjb2x1bW5EZWZzID0gdGhpcy5ncmlkT3B0aW9ucygpPy5jb2x1bW5EZWZzO1xuXHRcdFx0XHR0aGlzLnZpc2libGUgPSB0aGlzLmdyaWRPcHRpb25zKCk/LnNob3dTZWFyY2ggPz8gdHJ1ZTtcblx0XHRcdFx0Y29uc29sZS5sb2coJ21vdW50LS0tLS0tJylcblx0XHRcdFx0dGhpcy5zZWFyY2hJdGVtcyA9IHNlYXJjaFV0aWxzLmV4dHJhY3RTZWFyY2hJdGVtcyhjb2x1bW5EZWZzLCB0aGlzLmkxOG4pO1xuXHRcdFx0XHR0aGlzLnNvcnRPcHRpb25zID0gY29sdW1uRGVmcyEubWFwKChjb2x1bW5EZWY6IGFueSkgPT4gKHsga2V5OiBjb2x1bW5EZWYuZmllbGQsIGxhYmVsOiBjb2x1bW5EZWYuaGVhZGVyTmFtZSB9KSk7XG5cdFx0XHR9LFxuXHRcdFx0eyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9LFxuXHRcdCk7XG5cdFx0ZWZmZWN0KCgpID0+IHtcblx0XHRcdGNvbnN0IHNlYXJjaFBybSA9IHRoaXMuc2VhcmNoUHJtKCk7XG5cdFx0XHRpZiAoc2VhcmNoUHJtPy5jb2x1bW5GaWx0ZXJzPy5sZW5ndGggfHwgc2VhcmNoUHJtPy5ncm91cHM/Lmxlbmd0aCkge1xuXHRcdFx0XHR0aGlzLmFjdGlvbi5zZXRTZWFyY2goeyBjb2x1bW5GaWx0ZXJzOiBzZWFyY2hQcm0/LmNvbHVtbkZpbHRlcnMsIGdyb3Vwczogc2VhcmNoUHJtPy5ncm91cHMgfSwgc2VhcmNoUHJtLm1vZGVsTmFtZSk7XG5cdFx0XHR9XG5cdFx0fSk7XG5cdFx0ZWZmZWN0KFxuXHRcdFx0KCkgPT4ge1xuXHRcdFx0XHRjb25zdCBzZWFyY2hJdGVtID0gdGhpcy5hY3Rpb24uZ2V0U2VhcmNoSXRlbSgpO1xuXHRcdFx0XHRjb25zdCBtb2RlbE5hbWUgPSB1bnRyYWNrZWQoKCkgPT4gdGhpcy5ncmlkT3B0aW9ucygpPy5tb2RlbE5hbWUpO1xuXHRcdFx0XHRpZiAoc2VhcmNoSXRlbSA9PSB1bmRlZmluZWQpIHJldHVybjtcblx0XHRcdFx0dGhpcy5hY3Rpb24uc2V0U2VhcmNoKFxuXHRcdFx0XHRcdHNlYXJjaFV0aWxzLmNvbmNhdEZpbHRlcih0aGlzLmFjdGlvbi5nZXRTZWFyY2gobW9kZWxOYW1lKSwgc2VhcmNoVXRpbHMudHJhbnNmZXJGaWx0ZXIoc2VhcmNoSXRlbSkhKSxcblx0XHRcdFx0XHRtb2RlbE5hbWUsXG5cdFx0XHRcdCk7XG5cdFx0XHR9LFxuXHRcdFx0eyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9LFxuXHRcdCk7XG5cdFx0ZWZmZWN0KFxuXHRcdFx0KCkgPT4ge1xuXHRcdFx0XHRjb25zdCBzZWFyY2hDbGVhciA9IHRoaXMuYWN0aW9uLmdldFNlYXJjaENsZWFyKCk7XG5cdFx0XHRcdGNvbnN0IG1vZGVsTmFtZSA9IHVudHJhY2tlZCgoKSA9PiB0aGlzLmdyaWRPcHRpb25zKCk/Lm1vZGVsTmFtZSk7XG5cdFx0XHRcdGlmIChzZWFyY2hDbGVhciA9PSB1bmRlZmluZWQpIHJldHVybjtcblx0XHRcdFx0bGV0IHNlYXJjaCA9IHRoaXMuYWN0aW9uLmdldFNlYXJjaChtb2RlbE5hbWUpO1xuXHRcdFx0XHRzZWFyY2ggPSB7XG5cdFx0XHRcdFx0Li4uc2VhcmNoLFxuXHRcdFx0XHRcdGNvbHVtbkZpbHRlcnM6IHNlYXJjaFV0aWxzLmNhc2NhZGVDb2x1bW5GaWx0ZXJzKHNlYXJjaENsZWFyICsgJycsIHNlYXJjaD8uY29sdW1uRmlsdGVycyB8fCBbXSwgdGhpcy5zZWFyY2hJdGVtcyksXG5cdFx0XHRcdH07XG5cdFx0XHRcdHRoaXMuYWN0aW9uLnNldFNlYXJjaChzZWFyY2gsIG1vZGVsTmFtZSk7XG5cdFx0XHR9LFxuXHRcdFx0eyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9LFxuXHRcdCk7XG5cdFx0ZWZmZWN0KFxuXHRcdFx0KCkgPT4ge1xuXHRcdFx0XHRjb25zdCBzb3J0SXRlbSA9IHRoaXMuYWN0aW9uLmdldFNvcnRJdGVtKCk7XG5cdFx0XHRcdGlmIChzb3J0SXRlbSA9PT0gdW5kZWZpbmVkKSByZXR1cm47XG5cdFx0XHRcdGNvbnN0IG1vZGVsTmFtZSA9IHVudHJhY2tlZCgoKSA9PiB0aGlzLmdyaWRPcHRpb25zKCk/Lm1vZGVsTmFtZSk7XG5cdFx0XHRcdGxldCBzb3J0czogU29ydFtdID0gc29ydEl0ZW0uZmllbGRzIS5tYXAoKGZpZWxkKSA9PiAoeyBmaWVsZCwgaXNBc2M6IHNvcnRJdGVtIS5pc0FzYyB9KSk7XG5cdFx0XHRcdHRoaXMuYWN0aW9uLnNldFNlYXJjaCh7IGNvbHVtbkZpbHRlcnM6IHRoaXMuYWN0aW9uLmdldFNlYXJjaChtb2RlbE5hbWUpPy5jb2x1bW5GaWx0ZXJzIHx8IFtdLCBzb3J0cyB9LCBtb2RlbE5hbWUpO1xuXHRcdFx0fSxcblx0XHRcdHsgYWxsb3dTaWduYWxXcml0ZXM6IHRydWUgfSxcblx0XHQpO1xuXHR9XG5cblx0bmdPbkluaXQoKSB7XG5cdFx0dGhpcy5pMThuLmNoYW5nZS5zdWJzY3JpYmUoKHJlczogYW55KSA9PiB7XG5cdFx0XHRjb25zdCBjb2x1bW5EZWZzID0gdGhpcy5ncmlkT3B0aW9ucygpPy5jb2x1bW5EZWZzO1xuXHRcdFx0dGhpcy52aXNpYmxlID0gdGhpcy5ncmlkT3B0aW9ucygpPy5zaG93U2VhcmNoID8/IHRydWU7XG5cdFx0XHR0aGlzLnNlYXJjaEl0ZW1zID0gc2VhcmNoVXRpbHMuZXh0cmFjdFNlYXJjaEl0ZW1zKGNvbHVtbkRlZnMsIHRoaXMuaTE4bik7XG5cdFx0XHR0aGlzLnNvcnRPcHRpb25zID0gY29sdW1uRGVmcyEubWFwKChjb2x1bW5EZWY6IGFueSkgPT4gKHsga2V5OiBjb2x1bW5EZWYuZmllbGQsIGxhYmVsOiBjb2x1bW5EZWYuaGVhZGVyTmFtZSB9KSk7XG5cdFx0XHR0aGlzLnJlbG9hZCA9IGZhbHNlO1xuXHRcdFx0c2V0VGltZW91dCgoKSA9PiB7XG5cdFx0XHRcdHRoaXMucmVsb2FkID0gdHJ1ZTtcblx0XHRcdH0sIDIwMCk7XG5cdFx0fSk7XG5cdH1cblxuXHRuZ09uRGVzdHJveSgpIHtcblx0XHR0aGlzLmFjdGlvbi5jbGVhcigpO1xuXHR9XG5cblx0b25Gb2N1cyhldmVudDogYW55LCBzZWFyY2hSZWY6IGFueSkge1xuXHRcdHRoaXMuaXNBY3RpdmUgPSB0cnVlO1xuXHRcdGlmICghdGhpcy5zZWFyY2hTdHIpIHtcblx0XHRcdHRoaXMucG9wUGFuZWwuc2hvdyhldmVudCwgc2VhcmNoUmVmKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0dGhpcy50ZXh0UGFuZWwuc2hvdyhldmVudCwgc2VhcmNoUmVmKTtcblx0XHR9XG5cdH1cblxuXHRvbkRyb3BEb3duQ2xpY2soZXZlbnQ6IGFueSwgc2VhcmNoUmVmOiBhbnkpIHtcblx0XHR0aGlzLmlzQWN0aXZlID0gIXRoaXMuaXNBY3RpdmU7XG5cdFx0aWYgKCF0aGlzLnNlYXJjaFN0cikge1xuXHRcdFx0dGhpcy5wb3BQYW5lbC50b2dnbGUoZXZlbnQsIHNlYXJjaFJlZik7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHRoaXMudGV4dFBhbmVsLnRvZ2dsZShldmVudCwgc2VhcmNoUmVmKTtcblx0XHR9XG5cdH1cblxuXHRvbklucHV0KGV2ZW50OiBhbnksIHNlYXJjaFJlZjogYW55KSB7XG5cdFx0aWYgKCFldmVudC50YXJnZXQ/LnZhbHVlKSB7XG5cdFx0XHR0aGlzLnBvcFBhbmVsLnNob3coZXZlbnQsIHNlYXJjaFJlZik7XG5cdFx0XHR0aGlzLnRleHRQYW5lbC5oaWRlKCk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHRoaXMudGV4dFBhbmVsLnNob3coZXZlbnQsIHNlYXJjaFJlZik7XG5cdFx0XHR0aGlzLnBvcFBhbmVsLmhpZGUoKTtcblx0XHR9XG5cdH1cblxuXHRvblBvcFNob3coZXZlbnQ6IGFueSkge1xuXHRcdHRoaXMuY2FsY01hcmdpbkxlZnQoKTtcblx0fVxuXG5cdG9uUG9wSGlkZShldmVudDogYW55KSB7XG5cdFx0dGhpcy5pc0FjdGl2ZSA9IHRoaXMucG9wUGFuZWwub3ZlcmxheVZpc2libGUgfHwgdGhpcy5wb3BQYW5lbC5vdmVybGF5VmlzaWJsZTtcblx0fVxuXG5cdGNhbGNNYXJnaW5MZWZ0KCkge1xuXHRcdGlmICghdGhpcy5zZWFyY2hSZWYpIHJldHVybjtcblx0XHRjb25zdCBzZWFyY2hSZWZSZWN0ID0gdGhpcy5zZWFyY2hSZWYubmF0aXZlRWxlbWVudC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTtcblx0XHRjb25zdCBwYW5lbFdpZHRoID0gd2luZG93LmlubmVyV2lkdGggPiA3NjggPyA1MzUgOiAzMDU7XG5cdFx0Y29uc3Qgb2Zmc2V0ID0gc2VhcmNoUmVmUmVjdC53aWR0aCAtIHBhbmVsV2lkdGggLSAyMy41O1xuXHRcdHRoaXMubWFyZ2luTGVmdCA9IG9mZnNldCArICdweCc7XG5cdH1cblxuXHRnZXRTZWFyY2hJdGVtQnlGaWVsZChmaWVsZDogc3RyaW5nKSB7XG5cdFx0cmV0dXJuIHRoaXMuc2VhcmNoSXRlbXM/LmZpbHRlcigoc2VhcmNoSXRlbSkgPT4gc2VhcmNoSXRlbS5maWVsZCA9PSBmaWVsZClbMF07XG5cdH1cblxuXHRnZXRTb3J0SXRlbUJ5U29ydHMoc29ydHM6IFNvcnRbXSk6IFNvcnRJdGVtIHwgdW5kZWZpbmVkIHtcblx0XHRjb25zdCBmaWVsZHMgPSBzb3J0cz8ubWFwKChzb3J0KSA9PiBzb3J0LmZpZWxkISk7XG5cdFx0Y29uc3QgbGFiZWxzID0gc29ydHM/Lm1hcCgoc29ydCkgPT4gdGhpcy5zb3J0T3B0aW9ucz8uZmluZCgoc29ydE9wdGlvbikgPT4gc29ydE9wdGlvbi5rZXkgPT0gc29ydC5maWVsZCk/LmxhYmVsIHx8ICcnKTtcblx0XHRjb25zdCBpc0FzYyA9IHNvcnRzWzBdLmlzQXNjO1xuXHRcdHJldHVybiB7IGZpZWxkcywgbGFiZWxzLCBpc0FzYyB9O1xuXHR9XG5cblx0b25TdHJJdGVtQ2xpY2soZXZlbnQ6IGFueSkge1xuXHRcdHRoaXMuaXNBY3RpdmUgPSBmYWxzZTtcblx0XHR0aGlzLnNlYXJjaFN0ciA9ICcnO1xuXHRcdHRoaXMudGV4dFBhbmVsLmhpZGUoKTtcblx0fVxufVxuIiwiQGlmICh2aXNpYmxlICYmIHJlbG9hZCkge1xuXHQ8ZGl2XG5cdFx0I3NlYXJjaFJlZlxuXHRcdGNsYXNzPVwicy1tYWluXCI+XG5cdFx0PGRpdiBbY2xhc3NdPVwiJ2ZsZXggaXRlbXMtY2VudGVyIHMtY29udGFpbmVyICcgKyAoaXNBY3RpdmUgPyAncy1hY3RpdmUnIDogJ3MtdW5hY3RpdmUnKVwiPlxuXHRcdFx0PHNwYW4gY2xhc3M9XCJmbGV4LW5vbmUgcy1zZWFyY2ggcGkgcGktc2VhcmNoXCI+PC9zcGFuPlxuXHRcdFx0PGRpdiBjbGFzcz1cImZsZXgtMSBmbGV4IGl0ZW1zLWNlbnRlciBjb250ZW50LWNlbnRlciBmbGV4LXdyYXBcIj5cblx0XHRcdFx0QGZvciAoY29sdW1uRmlsdGVyIG9mIHNlYXJjaE1vZGVsKCk/LmNvbHVtbkZpbHRlcnM7IHRyYWNrIGNvbHVtbkZpbHRlcikge1xuXHRcdFx0XHRcdDxzZWFyY2gtdGlwXG5cdFx0XHRcdFx0XHRbY29sdW1uRmlsdGVyXT1cImNvbHVtbkZpbHRlclwiXG5cdFx0XHRcdFx0XHRbc2VhcmNoSXRlbV09XCJnZXRTZWFyY2hJdGVtQnlGaWVsZChjb2x1bW5GaWx0ZXIuY29sdW1uRmllbGQhKVwiPjwvc2VhcmNoLXRpcD5cblx0XHRcdFx0fVxuXHRcdFx0XHRAaWYgKHNlYXJjaE1vZGVsKCk/LnNvcnRzPy5sZW5ndGgpIHtcblx0XHRcdFx0XHQ8c2VhcmNoLXRpcFxuXHRcdFx0XHRcdFx0W3NvcnRzXT1cInNlYXJjaE1vZGVsKCk/LnNvcnRzXCJcblx0XHRcdFx0XHRcdFtzb3J0SXRlbV09XCJnZXRTb3J0SXRlbUJ5U29ydHMoc2VhcmNoTW9kZWwoKT8uc29ydHMhKVwiPjwvc2VhcmNoLXRpcD5cblx0XHRcdFx0fVxuXHRcdFx0XHQ8ZGl2IGNsYXNzPVwiZmxleC0xXCI+XG5cdFx0XHRcdFx0PGlucHV0XG5cdFx0XHRcdFx0XHR0eXBlPVwidGV4dFwiXG5cdFx0XHRcdFx0XHRjbGFzcz1cInMtaW5wdXRcIlxuXHRcdFx0XHRcdFx0W3BsYWNlaG9sZGVyXT1cIidzZWFyY2guc2VhcmNoJyB8IHRyYW5zbGF0ZVwiXG5cdFx0XHRcdFx0XHRbKG5nTW9kZWwpXT1cInNlYXJjaFN0clwiXG5cdFx0XHRcdFx0XHQoZm9jdXMpPVwib25Gb2N1cygkZXZlbnQsIHNlYXJjaFJlZilcIlxuXHRcdFx0XHRcdFx0KGlucHV0KT1cIm9uSW5wdXQoJGV2ZW50LCBzZWFyY2hSZWYpXCIgLz5cblx0XHRcdFx0PC9kaXY+XG5cdFx0XHQ8L2Rpdj5cblx0XHQ8L2Rpdj5cblx0XHQ8ZGl2XG5cdFx0XHRbY2xhc3NdPVwiJ3MtZHJvcGRvd24gJyArIChpc0FjdGl2ZSA/ICdzLWFjdGl2ZScgOiAncy11bmFjdGl2ZScpXCJcblx0XHRcdChjbGljayk9XCJvbkRyb3BEb3duQ2xpY2soJGV2ZW50LCBzZWFyY2hSZWYpXCI+XG5cdFx0XHQ8c3BhbiBbY2xhc3NdPVwiJ3MtZHJvcGRvd24taWNvbiBwaSBwaS1jaGV2cm9uLScgKyAoaXNBY3RpdmUgPyAndXAnIDogJ2Rvd24nKVwiPjwvc3Bhbj5cblx0XHQ8L2Rpdj5cblx0PC9kaXY+XG5cblx0PHAtcG9wb3ZlclxuXHRcdFtzdHlsZV09XCJ7IG1hcmdpbkxlZnQsIG1heEhlaWdodDogJzc1dmgnLCBvdmVyZmxvd1k6ICdzY3JvbGwnIH1cIlxuXHRcdChvblNob3cpPVwib25Qb3BTaG93KCRldmVudClcIlxuXHRcdChvbkhpZGUpPVwib25Qb3BIaWRlKCRldmVudClcIlxuXHRcdCNwb3BQYW5lbD5cblx0XHQ8cG9wLXBhbmVsXG5cdFx0XHRbc2VhcmNoSXRlbXNdPVwic2VhcmNoSXRlbXNcIlxuXHRcdFx0W3NvcnRPcHRpb25zXT1cInNvcnRPcHRpb25zXCJcblx0XHRcdFttb2RlbE5hbWVdPVwiZ3JpZE9wdGlvbnMoKT8ubW9kZWxOYW1lXCI+PC9wb3AtcGFuZWw+XG5cdDwvcC1wb3BvdmVyPlxuXG5cdDxwLXBvcG92ZXJcblx0XHRbc3R5bGVdPVwieyBtYXhIZWlnaHQ6ICc3NXZoJywgb3ZlcmZsb3dZOiAnc2Nyb2xsJyB9XCJcblx0XHQob25IaWRlKT1cIm9uUG9wSGlkZSgkZXZlbnQpXCJcblx0XHQjdGV4dFBhbmVsPlxuXHRcdDx0ZXh0LXBhbmVsXG5cdFx0XHRbc2VhcmNoSXRlbXNdPVwic2VhcmNoSXRlbXNcIlxuXHRcdFx0W3NlYXJjaFN0cl09XCJzZWFyY2hTdHJcIlxuXHRcdFx0KHN0ckl0ZW1DbGljayk9XCJvblN0ckl0ZW1DbGljaygkZXZlbnQpXCI+PC90ZXh0LXBhbmVsPlxuXHQ8L3AtcG9wb3Zlcj5cbn1cbiJdfQ==
|
|
158
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VhcmNoLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2ltbS1lbGVtZW50LXVpL3NyYy9saWIvc2VhcmNoL3NlYXJjaC9zZWFyY2guY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW1tLWVsZW1lbnQtdWkvc3JjL2xpYi9zZWFyY2gvc2VhcmNoL3NlYXJjaC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLFFBQVEsRUFBRSxTQUFTLEVBQXNCLE1BQU0sZUFBZSxDQUFDO0FBRTdHLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3hFLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVwRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBRTlDLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7QUEwQzFDLE1BQU0sT0FBTyxlQUFlO0lBbUIzQixZQUNTLE1BQXFCLEVBQ3JCLElBQWlCO1FBRGpCLFdBQU0sR0FBTixNQUFNLENBQWU7UUFDckIsU0FBSSxHQUFKLElBQUksQ0FBYTtRQWpCMUIsY0FBUyxHQUFHLEtBQUssRUFBVSxDQUFDO1FBQzVCLGdCQUFXLEdBQUcsS0FBSyxFQUFlLENBQUM7UUFDbkMsZ0JBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQzNCLElBQUksQ0FBQyxJQUFJLENBQUMs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Q0FBQztJQUN2QixDQUFDOytHQXpKVyxlQUFlO21HQUFmLGVBQWUsMm5CQ3BENUIseStEQXdEQSxncE5EUlcsV0FBVywrbUJBQUUsaUJBQWlCLDJHQUFFLGtCQUFrQix3SEFBRSxrQkFBa0IsK0dBQUUsYUFBYSxrREFBRSxPQUFPOzs0RkFJNUYsZUFBZTtrQkFQM0IsU0FBUzsrQkFDQyxlQUFlLGNBQ2IsSUFBSSxXQUNQLENBQUMsV0FBVyxFQUFFLGlCQUFpQixFQUFFLGtCQUFrQixFQUFFLGtCQUFrQixFQUFFLGFBQWEsRUFBRSxPQUFPLENBQUM7NEdBSzlELFNBQVM7c0JBQW5ELFNBQVM7dUJBQUMsV0FBVyxFQUFFLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRTtnQkFDbEIsUUFBUTtzQkFBOUIsU0FBUzt1QkFBQyxVQUFVO2dCQUNHLFNBQVM7c0JBQWhDLFNBQVM7dUJBQUMsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgaW5wdXQsIGVmZmVjdCwgdW50cmFja2VkLCBjb21wdXRlZCwgVmlld0NoaWxkLCBFbGVtZW50UmVmLCBzaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEdyaWRPcHRpb25zIH0gZnJvbSAnLi4vLi4vZ3JpZC9ncmlkL2dyaWQuY29tcG9uZW50JztcbmltcG9ydCB7IFBvcFBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vcG9wLXBhbmVsL3BvcC1wYW5lbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgVGV4dFBhbmVsQ29tcG9uZW50IH0gZnJvbSAnLi4vdGV4dC1wYW5lbC90ZXh0LXBhbmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTZWFyY2hUaXBDb21wb25lbnQgfSBmcm9tICcuLi9zZWFyY2gtdGlwL3NlYXJjaC10aXAuY29tcG9uZW50JztcbmltcG9ydCB7IFRyYW5zbGF0ZVBpcGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IEFjdGlvblNlcnZpY2UsIFNvcnRJdGVtIH0gZnJvbSAnLi4vLi4vc2VydmljZS9hY3Rpb24uc2VydmljZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IHNlYXJjaFV0aWxzIH0gZnJvbSAnLi4vc2VhcmNoLXV0aWxzJztcbmltcG9ydCB7IFNlYXJjaCwgU29ydCB9IGZyb20gJy4uLy4uL2FtL2FtLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBQb3BvdmVyIH0gZnJvbSAncHJpbWVuZy9wb3BvdmVyJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEkxOG5TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZS9pMThuLnNlcnZpY2UnO1xuXG5leHBvcnQgdHlwZSBTZWFyY2hUeXBlID0gJ3RleHQnIHwgJ2xpc3QnIHwgJ3NlbGVjdCcgfCAnZGF0ZScgfCAnbnVtYmVyJyB8ICd0cmVlJztcbmV4cG9ydCBpbnRlcmZhY2UgU2VhcmNoSXRlbU9wdGlvbiB7XG5cdGtleT86IHN0cmluZztcblx0bGFiZWw/OiBzdHJpbmc7XG5cdGNoZWNrZWQ/OiBib29sZWFuO1xufVxuZXhwb3J0IGludGVyZmFjZSBTZWFyY2hJdGVtIHtcblx0ZmllbGQ/OiBzdHJpbmc7XG5cdGxhYmVsPzogc3RyaW5nO1xuXHRzZWxlY3RlZD86IGJvb2xlYW47XG5cdGZpbHRlcj86IGJvb2xlYW47XG5cdGZvcm1hdD86IHN0cmluZztcblx0ZmlsdGVyVHlwZT86IFNlYXJjaFR5cGU7XG5cdG9wdGlvbnM/OiBTZWFyY2hJdGVtT3B0aW9uW107XG5cdGNhc2NhZGU/OiBib29sZWFuO1xuXHRjYXNjYWRlS2V5Pzogc3RyaW5nO1xuXHRtdWx0aXBsZT86IGJvb2xlYW47XG5cdGdyb3VwPzogYm9vbGVhbjtcblx0dmFsdWU/OiBhbnk7XG5cdGZyb20/OiBzdHJpbmc7XG5cdHRvPzogc3RyaW5nO1xuXHRvcGVyYXRvcj86IHN0cmluZztcblx0Y2FzY2FkZUZ1bmM/OiAodmFsdWU6IGFueSkgPT4gT2JzZXJ2YWJsZTxTZWFyY2hJdGVtT3B0aW9uW10+O1xuXHRbcHJvcHNOYW1lOiBzdHJpbmddOiBhbnk7XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgU2VhcmNoT3B0aW9ucyB7XG5cdHNlYXJjaEl0ZW1zPzogU2VhcmNoSXRlbVtdO1xuXHRtb2RlbE5hbWU/OiBzdHJpbmc7XG59XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ2N1c3RvbS1zZWFyY2gnLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHRpbXBvcnRzOiBbRm9ybXNNb2R1bGUsIFBvcFBhbmVsQ29tcG9uZW50LCBUZXh0UGFuZWxDb21wb25lbnQsIFNlYXJjaFRpcENvbXBvbmVudCwgVHJhbnNsYXRlUGlwZSwgUG9wb3Zlcl0sXG5cdHRlbXBsYXRlVXJsOiAnLi9zZWFyY2guY29tcG9uZW50Lmh0bWwnLFxuXHRzdHlsZVVybDogJy4vc2VhcmNoLmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgU2VhcmNoQ29tcG9uZW50IHtcblx0QFZpZXdDaGlsZCgnc2VhcmNoUmVmJywgeyBzdGF0aWM6IGZhbHNlIH0pIHNlYXJjaFJlZiE6IEVsZW1lbnRSZWY7XG5cdEBWaWV3Q2hpbGQoJ3BvcFBhbmVsJykgcG9wUGFuZWwhOiBQb3BvdmVyO1xuXHRAVmlld0NoaWxkKCd0ZXh0UGFuZWwnKSB0ZXh0UGFuZWwhOiBQb3BvdmVyO1xuXHRzZWFyY2hQcm0gPSBpbnB1dDxTZWFyY2g+KCk7XG5cdGdyaWRPcHRpb25zID0gaW5wdXQ8R3JpZE9wdGlvbnM+KCk7XG5cdHNlYXJjaE1vZGVsID0gY29tcHV0ZWQoKCkgPT4ge1xuXHRcdGlmICghdGhpcy5hY3Rpb24uc2VhcmNoTW9uaXRvcih1bnRyYWNrZWQoKCkgPT4gdGhpcy5ncmlkT3B0aW9ucygpPy5tb2RlbE5hbWUpKSkgcmV0dXJuO1xuXHRcdGNvbnN0IHNlYXJjaCA9IHRoaXMuYWN0aW9uLmdldFNlYXJjaCh1bnRyYWNrZWQoKCkgPT4gdGhpcy5ncmlkT3B0aW9ucygpPy5tb2RlbE5hbWUpKTtcblx0XHRyZXR1cm4gc2VhcmNoO1xuXHR9KTtcblx0c2VhcmNoSXRlbXMhOiBTZWFyY2hJdGVtW107XG5cdHNvcnRPcHRpb25zITogU2VhcmNoSXRlbU9wdGlvbltdO1xuXHRtYXJnaW5MZWZ0OiBzdHJpbmcgPSAnMCc7XG5cdHNlYXJjaFN0ciA9ICcnO1xuXHRpc0FjdGl2ZSA9IGZhbHNlO1xuXHR2aXNpYmxlID0gdHJ1ZTtcblx0cmVsb2FkID0gdHJ1ZTtcblxuXHRjb25zdHJ1Y3Rvcihcblx0XHRwcml2YXRlIGFjdGlvbjogQWN0aW9uU2VydmljZSxcblx0XHRwcml2YXRlIGkxOG46IEkxOG5TZXJ2aWNlLFxuXHQpIHtcblx0XHRlZmZlY3QoXG5cdFx0XHQoKSA9PiB7XG5cdFx0XHRcdGNvbnN0IGNvbHVtbkRlZnMgPSB0aGlzLmdyaWRPcHRpb25zKCk/LmNvbHVtbkRlZnM7XG5cdFx0XHRcdHRoaXMudmlzaWJsZSA9IHRoaXMuZ3JpZE9wdGlvbnMoKT8uc2hvd1NlYXJjaCA/PyB0cnVlO1xuXHRcdFx0XHQvLyBjb25zb2xlLmxvZygnbW91bnQtLS0tLS0nKVxuXHRcdFx0XHR0aGlzLnNlYXJjaEl0ZW1zID0gc2VhcmNoVXRpbHMuZXh0cmFjdFNlYXJjaEl0ZW1zKGNvbHVtbkRlZnMsIHRoaXMuaTE4bik7XG5cdFx0XHRcdHRoaXMuc29ydE9wdGlvbnMgPSBjb2x1bW5EZWZzIS5tYXAoKGNvbHVtbkRlZjogYW55KSA9PiAoeyBrZXk6IGNvbHVtbkRlZi5maWVsZCwgbGFiZWw6IGNvbHVtbkRlZi5oZWFkZXJOYW1lIH0pKTtcblx0XHRcdH0sXG5cdFx0XHR7IGFsbG93U2lnbmFsV3JpdGVzOiB0cnVlIH0sXG5cdFx0KTtcblx0XHRlZmZlY3QoKCkgPT4ge1xuXHRcdFx0Y29uc3Qgc2VhcmNoUHJtID0gdGhpcy5zZWFyY2hQcm0oKTtcblx0XHRcdGlmIChzZWFyY2hQcm0/LmNvbHVtbkZpbHRlcnM/Lmxlbmd0aCB8fCBzZWFyY2hQcm0/Lmdyb3Vwcz8ubGVuZ3RoKSB7XG5cdFx0XHRcdHRoaXMuYWN0aW9uLnNldFNlYXJjaCh7IGNvbHVtbkZpbHRlcnM6IHNlYXJjaFBybT8uY29sdW1uRmlsdGVycywgZ3JvdXBzOiBzZWFyY2hQcm0/Lmdyb3VwcyB9LCBzZWFyY2hQcm0ubW9kZWxOYW1lKTtcblx0XHRcdH1cblx0XHR9KTtcblx0XHRlZmZlY3QoXG5cdFx0XHQoKSA9PiB7XG5cdFx0XHRcdGNvbnN0IHNlYXJjaEl0ZW0gPSB0aGlzLmFjdGlvbi5nZXRTZWFyY2hJdGVtKCk7XG5cdFx0XHRcdGNvbnN0IG1vZGVsTmFtZSA9IHVudHJhY2tlZCgoKSA9PiB0aGlzLmdyaWRPcHRpb25zKCk/Lm1vZGVsTmFtZSk7XG5cdFx0XHRcdGlmIChzZWFyY2hJdGVtID09IHVuZGVmaW5lZCkgcmV0dXJuO1xuXHRcdFx0XHR0aGlzLmFjdGlvbi5zZXRTZWFyY2goXG5cdFx0XHRcdFx0c2VhcmNoVXRpbHMuY29uY2F0RmlsdGVyKHRoaXMuYWN0aW9uLmdldFNlYXJjaChtb2RlbE5hbWUpLCBzZWFyY2hVdGlscy50cmFuc2ZlckZpbHRlcihzZWFyY2hJdGVtKSEpLFxuXHRcdFx0XHRcdG1vZGVsTmFtZSxcblx0XHRcdFx0KTtcblx0XHRcdH0sXG5cdFx0XHR7IGFsbG93U2lnbmFsV3JpdGVzOiB0cnVlIH0sXG5cdFx0KTtcblx0XHRlZmZlY3QoXG5cdFx0XHQoKSA9PiB7XG5cdFx0XHRcdGNvbnN0IHNlYXJjaENsZWFyID0gdGhpcy5hY3Rpb24uZ2V0U2VhcmNoQ2xlYXIoKTtcblx0XHRcdFx0Y29uc3QgbW9kZWxOYW1lID0gdW50cmFja2VkKCgpID0+IHRoaXMuZ3JpZE9wdGlvbnMoKT8ubW9kZWxOYW1lKTtcblx0XHRcdFx0aWYgKHNlYXJjaENsZWFyID09IHVuZGVmaW5lZCkgcmV0dXJuO1xuXHRcdFx0XHRsZXQgc2VhcmNoID0gdGhpcy5hY3Rpb24uZ2V0U2VhcmNoKG1vZGVsTmFtZSk7XG5cdFx0XHRcdHNlYXJjaCA9IHtcblx0XHRcdFx0XHQuLi5zZWFyY2gsXG5cdFx0XHRcdFx0Y29sdW1uRmlsdGVyczogc2VhcmNoVXRpbHMuY2FzY2FkZUNvbHVtbkZpbHRlcnMoc2VhcmNoQ2xlYXIgKyAnJywgc2VhcmNoPy5jb2x1bW5GaWx0ZXJzIHx8IFtdLCB0aGlzLnNlYXJjaEl0ZW1zKSxcblx0XHRcdFx0fTtcblx0XHRcdFx0dGhpcy5hY3Rpb24uc2V0U2VhcmNoKHNlYXJjaCwgbW9kZWxOYW1lKTtcblx0XHRcdH0sXG5cdFx0XHR7IGFsbG93U2lnbmFsV3JpdGVzOiB0cnVlIH0sXG5cdFx0KTtcblx0XHRlZmZlY3QoXG5cdFx0XHQoKSA9PiB7XG5cdFx0XHRcdGNvbnN0IHNvcnRJdGVtID0gdGhpcy5hY3Rpb24uZ2V0U29ydEl0ZW0oKTtcblx0XHRcdFx0aWYgKHNvcnRJdGVtID09PSB1bmRlZmluZWQpIHJldHVybjtcblx0XHRcdFx0Y29uc3QgbW9kZWxOYW1lID0gdW50cmFja2VkKCgpID0+IHRoaXMuZ3JpZE9wdGlvbnMoKT8ubW9kZWxOYW1lKTtcblx0XHRcdFx0bGV0IHNvcnRzOiBTb3J0W10gPSBzb3J0SXRlbS5maWVsZHMhLm1hcCgoZmllbGQpID0+ICh7IGZpZWxkLCBpc0FzYzogc29ydEl0ZW0hLmlzQXNjIH0pKTtcblx0XHRcdFx0dGhpcy5hY3Rpb24uc2V0U2VhcmNoKHsgY29sdW1uRmlsdGVyczogdGhpcy5hY3Rpb24uZ2V0U2VhcmNoKG1vZGVsTmFtZSk/LmNvbHVtbkZpbHRlcnMgfHwgW10sIHNvcnRzIH0sIG1vZGVsTmFtZSk7XG5cdFx0XHR9LFxuXHRcdFx0eyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9LFxuXHRcdCk7XG5cdH1cblxuXHRuZ09uSW5pdCgpIHtcblx0XHR0aGlzLmkxOG4uY2hhbmdlLnN1YnNjcmliZSgocmVzOiBhbnkpID0+IHtcblx0XHRcdGNvbnN0IGNvbHVtbkRlZnMgPSB0aGlzLmdyaWRPcHRpb25zKCk/LmNvbHVtbkRlZnM7XG5cdFx0XHR0aGlzLnZpc2libGUgPSB0aGlzLmdyaWRPcHRpb25zKCk/LnNob3dTZWFyY2ggPz8gdHJ1ZTtcblx0XHRcdHRoaXMuc2VhcmNoSXRlbXMgPSBzZWFyY2hVdGlscy5leHRyYWN0U2VhcmNoSXRlbXMoY29sdW1uRGVmcywgdGhpcy5pMThuKTtcblx0XHRcdHRoaXMuc29ydE9wdGlvbnMgPSBjb2x1bW5EZWZzIS5tYXAoKGNvbHVtbkRlZjogYW55KSA9PiAoeyBrZXk6IGNvbHVtbkRlZi5maWVsZCwgbGFiZWw6IGNvbHVtbkRlZi5oZWFkZXJOYW1lIH0pKTtcblx0XHRcdHRoaXMucmVsb2FkID0gZmFsc2U7XG5cdFx0XHRzZXRUaW1lb3V0KCgpID0+IHtcblx0XHRcdFx0dGhpcy5yZWxvYWQgPSB0cnVlO1xuXHRcdFx0fSwgMjAwKTtcblx0XHR9KTtcblx0fVxuXG5cdG5nT25EZXN0cm95KCkge1xuXHRcdHRoaXMuYWN0aW9uLmNsZWFyKCk7XG5cdH1cblxuXHRvbkZvY3VzKGV2ZW50OiBhbnksIHNlYXJjaFJlZjogYW55KSB7XG5cdFx0dGhpcy5pc0FjdGl2ZSA9IHRydWU7XG5cdFx0aWYgKCF0aGlzLnNlYXJjaFN0cikge1xuXHRcdFx0dGhpcy5wb3BQYW5lbC5zaG93KGV2ZW50LCBzZWFyY2hSZWYpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHR0aGlzLnRleHRQYW5lbC5zaG93KGV2ZW50LCBzZWFyY2hSZWYpO1xuXHRcdH1cblx0fVxuXG5cdG9uRHJvcERvd25DbGljayhldmVudDogYW55LCBzZWFyY2hSZWY6IGFueSkge1xuXHRcdHRoaXMuaXNBY3RpdmUgPSAhdGhpcy5pc0FjdGl2ZTtcblx0XHRpZiAoIXRoaXMuc2VhcmNoU3RyKSB7XG5cdFx0XHR0aGlzLnBvcFBhbmVsLnRvZ2dsZShldmVudCwgc2VhcmNoUmVmKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0dGhpcy50ZXh0UGFuZWwudG9nZ2xlKGV2ZW50LCBzZWFyY2hSZWYpO1xuXHRcdH1cblx0fVxuXG5cdG9uSW5wdXQoZXZlbnQ6IGFueSwgc2VhcmNoUmVmOiBhbnkpIHtcblx0XHRpZiAoIWV2ZW50LnRhcmdldD8udmFsdWUpIHtcblx0XHRcdHRoaXMucG9wUGFuZWwuc2hvdyhldmVudCwgc2VhcmNoUmVmKTtcblx0XHRcdHRoaXMudGV4dFBhbmVsLmhpZGUoKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0dGhpcy50ZXh0UGFuZWwuc2hvdyhldmVudCwgc2VhcmNoUmVmKTtcblx0XHRcdHRoaXMucG9wUGFuZWwuaGlkZSgpO1xuXHRcdH1cblx0fVxuXG5cdG9uUG9wU2hvdyhldmVudDogYW55KSB7XG5cdFx0dGhpcy5jYWxjTWFyZ2luTGVmdCgpO1xuXHR9XG5cblx0b25Qb3BIaWRlKGV2ZW50OiBhbnkpIHtcblx0XHR0aGlzLmlzQWN0aXZlID0gdGhpcy5wb3BQYW5lbC5vdmVybGF5VmlzaWJsZSB8fCB0aGlzLnBvcFBhbmVsLm92ZXJsYXlWaXNpYmxlO1xuXHR9XG5cblx0Y2FsY01hcmdpbkxlZnQoKSB7XG5cdFx0aWYgKCF0aGlzLnNlYXJjaFJlZikgcmV0dXJuO1xuXHRcdGNvbnN0IHNlYXJjaFJlZlJlY3QgPSB0aGlzLnNlYXJjaFJlZi5uYXRpdmVFbGVtZW50LmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpO1xuXHRcdGNvbnN0IHBhbmVsV2lkdGggPSB3aW5kb3cuaW5uZXJXaWR0aCA+IDc2OCA/IDUzNSA6IDMwNTtcblx0XHRjb25zdCBvZmZzZXQgPSBzZWFyY2hSZWZSZWN0LndpZHRoIC0gcGFuZWxXaWR0aCAtIDIzLjU7XG5cdFx0dGhpcy5tYXJnaW5MZWZ0ID0gb2Zmc2V0ICsgJ3B4Jztcblx0fVxuXG5cdGdldFNlYXJjaEl0ZW1CeUZpZWxkKGZpZWxkOiBzdHJpbmcpIHtcblx0XHRyZXR1cm4gdGhpcy5zZWFyY2hJdGVtcz8uZmlsdGVyKChzZWFyY2hJdGVtKSA9PiBzZWFyY2hJdGVtLmZpZWxkID09IGZpZWxkKVswXTtcblx0fVxuXG5cdGdldFNvcnRJdGVtQnlTb3J0cyhzb3J0czogU29ydFtdKTogU29ydEl0ZW0gfCB1bmRlZmluZWQge1xuXHRcdGNvbnN0IGZpZWxkcyA9IHNvcnRzPy5tYXAoKHNvcnQpID0+IHNvcnQuZmllbGQhKTtcblx0XHRjb25zdCBsYWJlbHMgPSBzb3J0cz8ubWFwKChzb3J0KSA9PiB0aGlzLnNvcnRPcHRpb25zPy5maW5kKChzb3J0T3B0aW9uKSA9PiBzb3J0T3B0aW9uLmtleSA9PSBzb3J0LmZpZWxkKT8ubGFiZWwgfHwgJycpO1xuXHRcdGNvbnN0IGlzQXNjID0gc29ydHNbMF0uaXNBc2M7XG5cdFx0cmV0dXJuIHsgZmllbGRzLCBsYWJlbHMsIGlzQXNjIH07XG5cdH1cblxuXHRvblN0ckl0ZW1DbGljayhldmVudDogYW55KSB7XG5cdFx0dGhpcy5pc0FjdGl2ZSA9IGZhbHNlO1xuXHRcdHRoaXMuc2VhcmNoU3RyID0gJyc7XG5cdFx0dGhpcy50ZXh0UGFuZWwuaGlkZSgpO1xuXHR9XG59XG4iLCJAaWYgKHZpc2libGUgJiYgcmVsb2FkKSB7XG5cdDxkaXZcblx0XHQjc2VhcmNoUmVmXG5cdFx0Y2xhc3M9XCJzLW1haW5cIj5cblx0XHQ8ZGl2IFtjbGFzc109XCInZmxleCBpdGVtcy1jZW50ZXIgcy1jb250YWluZXIgJyArIChpc0FjdGl2ZSA/ICdzLWFjdGl2ZScgOiAncy11bmFjdGl2ZScpXCI+XG5cdFx0XHQ8c3BhbiBjbGFzcz1cImZsZXgtbm9uZSBzLXNlYXJjaCBwaSBwaS1zZWFyY2hcIj48L3NwYW4+XG5cdFx0XHQ8ZGl2IGNsYXNzPVwiZmxleC0xIGZsZXggaXRlbXMtY2VudGVyIGNvbnRlbnQtY2VudGVyIGZsZXgtd3JhcFwiPlxuXHRcdFx0XHRAZm9yIChjb2x1bW5GaWx0ZXIgb2Ygc2VhcmNoTW9kZWwoKT8uY29sdW1uRmlsdGVyczsgdHJhY2sgY29sdW1uRmlsdGVyKSB7XG5cdFx0XHRcdFx0PHNlYXJjaC10aXBcblx0XHRcdFx0XHRcdFtjb2x1bW5GaWx0ZXJdPVwiY29sdW1uRmlsdGVyXCJcblx0XHRcdFx0XHRcdFtzZWFyY2hJdGVtXT1cImdldFNlYXJjaEl0ZW1CeUZpZWxkKGNvbHVtbkZpbHRlci5jb2x1bW5GaWVsZCEpXCI+PC9zZWFyY2gtdGlwPlxuXHRcdFx0XHR9XG5cdFx0XHRcdEBpZiAoc2VhcmNoTW9kZWwoKT8uc29ydHM/Lmxlbmd0aCkge1xuXHRcdFx0XHRcdDxzZWFyY2gtdGlwXG5cdFx0XHRcdFx0XHRbc29ydHNdPVwic2VhcmNoTW9kZWwoKT8uc29ydHNcIlxuXHRcdFx0XHRcdFx0W3NvcnRJdGVtXT1cImdldFNvcnRJdGVtQnlTb3J0cyhzZWFyY2hNb2RlbCgpPy5zb3J0cyEpXCI+PC9zZWFyY2gtdGlwPlxuXHRcdFx0XHR9XG5cdFx0XHRcdDxkaXYgY2xhc3M9XCJmbGV4LTFcIj5cblx0XHRcdFx0XHQ8aW5wdXRcblx0XHRcdFx0XHRcdHR5cGU9XCJ0ZXh0XCJcblx0XHRcdFx0XHRcdGNsYXNzPVwicy1pbnB1dFwiXG5cdFx0XHRcdFx0XHRbcGxhY2Vob2xkZXJdPVwiJ3NlYXJjaC5zZWFyY2gnIHwgdHJhbnNsYXRlXCJcblx0XHRcdFx0XHRcdFsobmdNb2RlbCldPVwic2VhcmNoU3RyXCJcblx0XHRcdFx0XHRcdChmb2N1cyk9XCJvbkZvY3VzKCRldmVudCwgc2VhcmNoUmVmKVwiXG5cdFx0XHRcdFx0XHQoaW5wdXQpPVwib25JbnB1dCgkZXZlbnQsIHNlYXJjaFJlZilcIiAvPlxuXHRcdFx0XHQ8L2Rpdj5cblx0XHRcdDwvZGl2PlxuXHRcdDwvZGl2PlxuXHRcdDxkaXZcblx0XHRcdFtjbGFzc109XCIncy1kcm9wZG93biAnICsgKGlzQWN0aXZlID8gJ3MtYWN0aXZlJyA6ICdzLXVuYWN0aXZlJylcIlxuXHRcdFx0KGNsaWNrKT1cIm9uRHJvcERvd25DbGljaygkZXZlbnQsIHNlYXJjaFJlZilcIj5cblx0XHRcdDxzcGFuIFtjbGFzc109XCIncy1kcm9wZG93bi1pY29uIHBpIHBpLWNoZXZyb24tJyArIChpc0FjdGl2ZSA/ICd1cCcgOiAnZG93bicpXCI+PC9zcGFuPlxuXHRcdDwvZGl2PlxuXHQ8L2Rpdj5cblxuXHQ8cC1wb3BvdmVyXG5cdFx0W3N0eWxlXT1cInsgbWFyZ2luTGVmdCwgbWF4SGVpZ2h0OiAnNzV2aCcsIG92ZXJmbG93WTogJ3Njcm9sbCcgfVwiXG5cdFx0KG9uU2hvdyk9XCJvblBvcFNob3coJGV2ZW50KVwiXG5cdFx0KG9uSGlkZSk9XCJvblBvcEhpZGUoJGV2ZW50KVwiXG5cdFx0I3BvcFBhbmVsPlxuXHRcdDxwb3AtcGFuZWxcblx0XHRcdFtzZWFyY2hJdGVtc109XCJzZWFyY2hJdGVtc1wiXG5cdFx0XHRbc29ydE9wdGlvbnNdPVwic29ydE9wdGlvbnNcIlxuXHRcdFx0W21vZGVsTmFtZV09XCJncmlkT3B0aW9ucygpPy5tb2RlbE5hbWVcIj48L3BvcC1wYW5lbD5cblx0PC9wLXBvcG92ZXI+XG5cblx0PHAtcG9wb3ZlclxuXHRcdFtzdHlsZV09XCJ7IG1heEhlaWdodDogJzc1dmgnLCBvdmVyZmxvd1k6ICdzY3JvbGwnIH1cIlxuXHRcdChvbkhpZGUpPVwib25Qb3BIaWRlKCRldmVudClcIlxuXHRcdCN0ZXh0UGFuZWw+XG5cdFx0PHRleHQtcGFuZWxcblx0XHRcdFtzZWFyY2hJdGVtc109XCJzZWFyY2hJdGVtc1wiXG5cdFx0XHRbc2VhcmNoU3RyXT1cInNlYXJjaFN0clwiXG5cdFx0XHQoc3RySXRlbUNsaWNrKT1cIm9uU3RySXRlbUNsaWNrKCRldmVudClcIj48L3RleHQtcGFuZWw+XG5cdDwvcC1wb3BvdmVyPlxufVxuIl19
|
|
@@ -176,7 +176,7 @@ export class StepsComponent {
|
|
|
176
176
|
}
|
|
177
177
|
totalWidth += this.startIndex === 0 ? 0 : this.START_BUTTON_WIDTH;
|
|
178
178
|
totalWidth += this.endIndex === this.widthList.length - 1 ? 0 : this.END_BUTTON_WIDTH;
|
|
179
|
-
console.log('----------------totalWidth', totalWidth, this.maxWidth);
|
|
179
|
+
// console.log('----------------totalWidth', totalWidth, this.maxWidth);
|
|
180
180
|
return totalWidth >= this.maxWidth;
|
|
181
181
|
}
|
|
182
182
|
handleSteps() {
|
|
@@ -205,7 +205,7 @@ export class StepsComponent {
|
|
|
205
205
|
this.excludeValues.set(excludeValues);
|
|
206
206
|
}
|
|
207
207
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StepsComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component }); }
|
|
208
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: StepsComponent, isStandalone: true, selector: "custom-steps", inputs: { modelLog: { classPropertyName: "modelLog", publicName: "modelLog", isSignal: true, isRequired: false, transformFunction: null }, needSelfAdjusting: { classPropertyName: "needSelfAdjusting", publicName: "needSelfAdjusting", isSignal: true, isRequired: false, transformFunction: null }, steps: { classPropertyName: "steps", publicName: "steps", isSignal: true, isRequired: false, transformFunction: null }, current: { classPropertyName: "current", publicName: "current", isSignal: true, isRequired: false, transformFunction: null }, authLevel: { classPropertyName: "authLevel", publicName: "authLevel", isSignal: true, isRequired: false, transformFunction: null }, isClick: { classPropertyName: "isClick", publicName: "isClick", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { change: "change" }, host: { listeners: { "window:resize": "onResize(
|
|
208
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.13", type: StepsComponent, isStandalone: true, selector: "custom-steps", inputs: { modelLog: { classPropertyName: "modelLog", publicName: "modelLog", isSignal: true, isRequired: false, transformFunction: null }, needSelfAdjusting: { classPropertyName: "needSelfAdjusting", publicName: "needSelfAdjusting", isSignal: true, isRequired: false, transformFunction: null }, steps: { classPropertyName: "steps", publicName: "steps", isSignal: true, isRequired: false, transformFunction: null }, current: { classPropertyName: "current", publicName: "current", isSignal: true, isRequired: false, transformFunction: null }, authLevel: { classPropertyName: "authLevel", publicName: "authLevel", isSignal: true, isRequired: false, transformFunction: null }, isClick: { classPropertyName: "isClick", publicName: "isClick", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { change: "change" }, host: { listeners: { "window:resize": "onResize()" } }, viewQueries: [{ propertyName: "containerRef", first: true, predicate: ["container"], descendants: true }], ngImport: i0, template: "<div\r\n\t#container\r\n\tclass=\"flex my-1 w-full justify-end\">\r\n\t@for (st of displaySteps(); track st; let i = $index) {\r\n\t\t@if (st.value === 'start') {\r\n\t\t\t<div\r\n\t\t\t\t#startItem\r\n\t\t\t\t[class]=\"getClass(i, ['start-item'])\"\r\n\t\t\t\t(click)=\"showStartSteps($event, startOp)\">\r\n\t\t\t\t<span>...</span>\r\n\t\t\t</div>\r\n\t\t\t<p-popover\r\n\t\t\t\t#startOp\r\n\t\t\t\t[styleClass]=\"'pop-steps start-steps'\"\r\n\t\t\t\t[appendTo]=\"startItem\">\r\n\t\t\t\t<p-listbox\r\n\t\t\t\t\t[options]=\"startSteps\"\r\n\t\t\t\t\t(onChange)=\"onStartStepsChange($event)\"\r\n\t\t\t\t\toptionLabel=\"label\"\r\n\t\t\t\t\tclass=\"w-full md:w-56\">\r\n\t\t\t\t\t<ng-template\r\n\t\t\t\t\t\tlet-country\r\n\t\t\t\t\t\tpTemplate=\"item\">\r\n\t\t\t\t\t\t<div class=\"flex items-center gap-2\">\r\n\t\t\t\t\t\t\t<div>{{ country.i18nKey ? i18n.fanyi(country.i18nKey) : country.label }}</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t</p-listbox>\r\n\t\t\t</p-popover>\r\n\t\t} @else if (st.value === 'end') {\r\n\t\t\t<div\r\n\t\t\t\t#endItem\r\n\t\t\t\t[class]=\"getClass(i, ['end-item'])\"\r\n\t\t\t\t(click)=\"showEndSteps($event, endOp)\">\r\n\t\t\t\t<span>...</span>\r\n\t\t\t</div>\r\n\t\t\t<p-popover\r\n\t\t\t\t#endOp\r\n\t\t\t\t[styleClass]=\"'pop-steps end-steps'\"\r\n\t\t\t\t[appendTo]=\"endItem\">\r\n\t\t\t\t<p-listbox\r\n\t\t\t\t\t[options]=\"endSteps\"\r\n\t\t\t\t\t(onChange)=\"onEndStepsChange($event)\"\r\n\t\t\t\t\toptionLabel=\"label\"\r\n\t\t\t\t\tclass=\"w-full md:w-56\">\r\n\t\t\t\t\t<ng-template\r\n\t\t\t\t\t\tlet-country\r\n\t\t\t\t\t\tpTemplate=\"item\">\r\n\t\t\t\t\t\t<div class=\"flex items-center gap-2\">\r\n\t\t\t\t\t\t\t<div>{{ country.i18nKey ? i18n.fanyi(country.i18nKey) : country.label }}</div>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t</p-listbox>\r\n\t\t\t</p-popover>\r\n\t\t} @else {\r\n\t\t\t<div\r\n\t\t\t\t[class]=\"getClass(i, [])\"\r\n\t\t\t\t(click)=\"changeStatus(st)\">\r\n\t\t\t\t<span>{{ st.i18nKey ? i18n.fanyi(st.i18nKey) : st.label }}</span>\r\n\t\t\t</div>\r\n\t\t}\r\n\t}\r\n</div>\r\n", styles: ["::ng-deep .pop-steps.p-popover.p-popover-flipped:before{display:none}::ng-deep .pop-steps.p-popover.p-popover-flipped:after{display:none}::ng-deep .pop-steps.p-popover:before{display:none}::ng-deep .pop-steps.p-popover:after{display:none}::ng-deep .pop-steps.p-popover-flipped{margin-top:-5px}::ng-deep .pop-steps .p-popover-content{padding:0}::ng-deep .end-steps.p-popover{margin-top:2.5px;z-index:999;position:absolute!important;left:auto!important;right:0!important;top:100%!important;min-width:125px}::ng-deep .start-steps.p-popover{margin-top:2.5px;z-index:999;position:absolute!important;left:0!important;right:auto!important;top:100%!important;min-width:125px}.step-item{position:relative;height:32px;padding:0 5px;background-color:#e7e9ed}.step-item span{color:#334155c2;white-space:nowrap}.step-item.step-first{padding-left:15px}.step-item.step-last{padding-right:15px}.step-item:not(.step-first){border-left:15px solid transparent;margin-left:2px}.step-item:not(.step-first):before{content:\"\";position:absolute;top:0;left:-15px;width:0;height:0;border-top:15px solid transparent;border-bottom:15px solid transparent;border-left:12px solid white}.step-item:not(.step-last):after{content:\"\";position:absolute;top:0;right:-12px;width:0;height:0;border-top:15px solid transparent;border-bottom:15px solid transparent;border-left:12px solid #e7e9ed;z-index:2}.step-item.step-active{background-color:var(--p-primary-200)}.step-item.step-active span{color:#334155}.step-item.step-active:after{border-left:12px solid var(--p-primary-200)}\n"], dependencies: [{ kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: ListboxModule }, { kind: "component", type: i1.Listbox, selector: "p-listbox, p-listBox, p-list-box", inputs: ["id", "searchMessage", "emptySelectionMessage", "selectionMessage", "autoOptionFocus", "ariaLabel", "selectOnFocus", "searchLocale", "focusOnHover", "filterMessage", "filterFields", "lazy", "virtualScroll", "virtualScrollItemSize", "virtualScrollOptions", "scrollHeight", "tabindex", "multiple", "style", "styleClass", "listStyle", "listStyleClass", "readonly", "disabled", "checkbox", "filter", "filterBy", "filterMatchMode", "filterLocale", "metaKeySelection", "dataKey", "showToggleAll", "optionLabel", "optionValue", "optionGroupChildren", "optionGroupLabel", "optionDisabled", "ariaFilterLabel", "filterPlaceHolder", "emptyFilterMessage", "emptyMessage", "group", "options", "filterValue", "selectAll", "striped", "highlightOnSelect", "checkmark"], outputs: ["onChange", "onClick", "onDblClick", "onFilter", "onFocus", "onBlur", "onSelectAllChange", "onLazyLoad"] }, { kind: "directive", type: i2.PrimeTemplate, selector: "[pTemplate]", inputs: ["type", "pTemplate"] }, { kind: "component", type: Popover, selector: "p-popover", inputs: ["ariaLabel", "ariaLabelledBy", "dismissable", "showCloseIcon", "style", "styleClass", "appendTo", "autoZIndex", "ariaCloseLabel", "baseZIndex", "focusOnShow", "showTransitionOptions", "hideTransitionOptions"], outputs: ["onShow", "onHide"] }] }); }
|
|
209
209
|
}
|
|
210
210
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: StepsComponent, decorators: [{
|
|
211
211
|
type: Component,
|
|
@@ -215,6 +215,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImpo
|
|
|
215
215
|
args: ['container', { static: false }]
|
|
216
216
|
}], onResize: [{
|
|
217
217
|
type: HostListener,
|
|
218
|
-
args: ['window:resize'
|
|
218
|
+
args: ['window:resize']
|
|
219
219
|
}] } });
|
|
220
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW1tLWVsZW1lbnQtdWkvc3JjL2xpYi9zdGVwcy9zdGVwcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbW0tZWxlbWVudC11aS9zcmMvbGliL3N0ZXBzL3N0ZXBzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBYyxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWEsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzSSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7O0FBYzFELE1BQU0sT0FBTyxjQUFjO0lBK0IxQixRQUFRO1FBQ1AsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsWUFBb0IsUUFBbUI7UUFBbkIsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQWxDdkMsYUFBUSxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUNqQyxzQkFBaUIsR0FBRyxLQUFLLENBQVUsSUFBSSxDQUFDLENBQUM7UUFDekMsVUFBSyxHQUFHLEtBQUssQ0FBcUIsU0FBUyxDQUFDLENBQUM7UUFDN0MsaUJBQVksR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQzVCLElB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b21wdXRlZCwgZWZmZWN0LCBFbGVtZW50UmVmLCBIb3N0TGlzdGVuZXIsIGluamVjdCwgaW5wdXQsIG91dHB1dCwgUmVuZGVyZXIyLCBzaWduYWwsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSTE4blNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlL2kxOG4uc2VydmljZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IExpc3Rib3hNb2R1bGUgfSBmcm9tICdwcmltZW5nL2xpc3Rib3gnO1xuaW1wb3J0IHsgUG9wb3ZlciB9IGZyb20gJ3ByaW1lbmcvcG9wb3Zlcic7XG5pbXBvcnQgeyB0b09ic2VydmFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5leHBvcnQgaW50ZXJmYWNlIFN0ZXAge1xuXHRsYWJlbDogc3RyaW5nO1xuXHRpMThuS2V5Pzogc3RyaW5nO1xuXHR2YWx1ZTogbnVtYmVyIHwgJ3N0YXJ0JyB8ICdlbmQnO1xufVxuXG5AQ29tcG9uZW50KHtcblx0c2VsZWN0b3I6ICdjdXN0b20tc3RlcHMnLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHRpbXBvcnRzOiBbRm9ybXNNb2R1bGUsIExpc3Rib3hNb2R1bGUsIFBvcG92ZXJdLFxuXHR0ZW1wbGF0ZVVybDogJy4vc3RlcHMuY29tcG9uZW50Lmh0bWwnLFxuXHRzdHlsZVVybDogJy4vc3RlcHMuY29tcG9uZW50LnNjc3MnLFxufSlcbmV4cG9ydCBjbGFzcyBTdGVwc0NvbXBvbmVudCB7XG5cdEBWaWV3Q2hpbGQoJ2NvbnRhaW5lcicsIHsgc3RhdGljOiBmYWxzZSB9KSBjb250YWluZXJSZWYhOiBFbGVtZW50UmVmO1xuXHRtb2RlbExvZyA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcblx0bmVlZFNlbGZBZGp1c3RpbmcgPSBpbnB1dDxib29sZWFuPih0cnVlKTtcblx0c3RlcHMgPSBpbnB1dDxTdGVwW10gfCB1bmRlZmluZWQ+KHVuZGVmaW5lZCk7XG5cdGRpc3BsYXlTdGVwcyA9IGNvbXB1dGVkKCgpID0+IHtcblx0XHRpZiAodGhpcy5zdGVwcygpID09PSB1bmRlZmluZWQpIHJldHVybiBbXTtcblx0XHRjb25zdCBzdGVwcyA9IFsuLi50aGlzLnN0ZXBzKCkhXTtcblx0XHRzdGVwcy51bnNoaWZ0KHsgdmFsdWU6ICdzdGFydCcsIGxhYmVsOiAnLi4uJyB9KTtcblx0XHRzdGVwcy5wdXNoKHsgdmFsdWU6ICdlbmQnLCBsYWJlbDogJy4uLicgfSk7XG5cdFx0cmV0dXJuIHN0ZXBzLmZpbHRlcigoc3RlcCkgPT4gIXRoaXMuZXhjbHVkZVZhbHVlcygpLmluY2x1ZGVzKHN0ZXAudmFsdWUpKTtcblx0fSk7XG5cdGV4Y2x1ZGVWYWx1ZXMgPSBzaWduYWw8KG51bWJlciB8ICdzdGFydCcgfCAnZW5kJylbXT4oW10pO1xuXHRjdXJyZW50ID0gaW5wdXQ8bnVtYmVyPigyKTtcblx0aTE4biA9IGluamVjdChJMThuU2VydmljZSk7XG5cdGNoYW5nZSA9IG91dHB1dDxudW1iZXI+KCk7XG5cdGF1dGhMZXZlbCA9IGlucHV0PG51bWJlcj4oLTEpO1xuXHRpc0NsaWNrID0gaW5wdXQ8Ym9vbGVhbj4odHJ1ZSk7XG5cblx0d2lkdGhMaXN0OiBudW1iZXJbXSA9IFtdO1xuXHRTVEFSVF9CVVRUT05fV0lEVEggPSAzMjtcblx0RU5EX0JVVFRPTl9XSURUSCA9IDQ3O1xuXHRTVEVQX0lURU1fTUFSR0lOID0gMjtcblxuXHRzdGFydEluZGV4ID0gMDtcblx0ZW5kSW5kZXggPSAwO1xuXHRzdGFydFN0ZXBzOiBTdGVwW10gPSBbXTtcblx0ZW5kU3RlcHM6IFN0ZXBbXSA9IFtdO1xuXHRtYXhXaWR0aCA9IDA7XG5cblx0QEhvc3RMaXN0ZW5lcignd2luZG93OnJlc2l6ZScsIFsnJGV2ZW50J10pXG5cdG9uUmVzaXplKCkge1xuXHRcdHRoaXMuY2FsY01heFdpZHRoKCk7XG5cdFx0dGhpcy5yZWZyZXNoU3RlcHMoKTtcblx0fVxuXG5cdGNvbnN0cnVjdG9yKHByaXZhdGUgcmVuZGVyZXI6IFJlbmRlcmVyMikge1xuXHRcdGVmZmVjdChcblx0XHRcdCgpID0+IHtcblx0XHRcdFx0bGV0IGN1cnJlbnQgPSB0aGlzLmN1cnJlbnQoKTtcblx0XHRcdFx0aWYgKGN1cnJlbnQgIT0gMCAmJiB0aGlzLnN0ZXBzKCkhLmxlbmd0aCA+IDApIHtcblx0XHRcdFx0XHR0aGlzLnJlZnJlc2hTdGVwcygpO1xuXHRcdFx0XHR9XG5cdFx0XHR9LFxuXHRcdFx0eyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9LFxuXHRcdCk7XG5cdFx0ZWZmZWN0KFxuXHRcdFx0KCkgPT4ge1xuXHRcdFx0XHR0aGlzLmNhbGNNYXhXaWR0aCgpO1xuXHRcdFx0XHR0aGlzLnJlZnJlc2hTdGVwcygpO1xuXHRcdFx0fSxcblx0XHRcdHsgYWxsb3dTaWduYWxXcml0ZXM6IHRydWUgfSxcblx0XHQpO1xuXHRcdGNvbnN0IHN0ZXBzJCA9IHRvT2JzZXJ2YWJsZSh0aGlzLnN0ZXBzKS5zdWJzY3JpYmUoKHN0ZXBzKSA9PiB7XG5cdFx0XHRpZiAoc3RlcHMgPT09IHVuZGVmaW5lZCkgcmV0dXJuO1xuXHRcdFx0dGhpcy5pbml0U3RlcHMoKTtcblx0XHRcdHN0ZXBzJC51bnN1YnNjcmliZSgpO1xuXHRcdH0pO1xuXHR9XG5cblx0aW5pdFN0ZXBzKCkge1xuXHRcdHRoaXMuY2FsY01heFdpZHRoKCk7XG5cdFx0dGhpcy5pbml0V2lkdGhMaXN0KCk7XG5cdFx0dGhpcy5yZWZyZXNoU3RlcHMoKTtcblx0fVxuXG5cdHJlZnJlc2hTdGVwcygpIHtcblx0XHR0aGlzLmFsdGVybmF0ZVdpZHRoTGlzdCgpO1xuXHRcdHRoaXMuaGFuZGxlU3RlcHMoKTtcblx0fVxuXG5cdGluaXRXaWR0aExpc3QoKSB7XG5cdFx0dGhpcy53aWR0aExpc3QgPSBbXTtcblx0XHRjb25zdCBjaGlsZHJlbiA9IHRoaXMucmVuZGVyZXIucGFyZW50Tm9kZSh0aGlzLmNvbnRhaW5lclJlZi5uYXRpdmVFbGVtZW50KS5jaGlsZHJlblswXS5jaGlsZHJlbjtcblx0XHRmb3IgKGxldCBpID0gMDsgaSA8IGNoaWxkcmVuLmxlbmd0aDsgaSsrKSB7XG5cdFx0XHRpZiAoIWNoaWxkcmVuW2ldLmNsYXNzTGlzdC5jb250YWlucygnc3RlcC1pdGVtJykpIHtcblx0XHRcdFx0Y29udGludWU7XG5cdFx0XHR9XG5cdFx0XHRpZiAoY2hpbGRyZW5baV0uY2xhc3NMaXN0LmNvbnRhaW5zKCdzdGFydC1pdGVtJykpIHtcblx0XHRcdFx0Y29udGludWU7XG5cdFx0XHR9XG5cdFx0XHRpZiAoY2hpbGRyZW5baV0uY2xhc3NMaXN0LmNvbnRhaW5zKCdlbmQtaXRlbScpKSB7XG5cdFx0XHRcdGNvbnRpbnVlO1xuXHRcdFx0fVxuXHRcdFx0dGhpcy53aWR0aExpc3QucHVzaCgoY2hpbGRyZW5baV0ub2Zmc2V0V2lkdGggfHwgMCkgKyB0aGlzLlNURVBfSVRFTV9NQVJHSU4pO1xuXHRcdH1cblx0fVxuXG5cdGNhbGNNYXhXaWR0aCgpIHtcblx0XHRpZiAod2luZG93LmlubmVyV2lkdGggPCA3NjgpIHtcblx0XHRcdHRoaXMubWF4V2lkdGggPSB3aW5kb3cuaW5uZXJXaWR0aCAqIDAuOTY7XG5cdFx0XHRyZXR1cm47XG5cdFx0fVxuXHRcdGlmICghdGhpcy5tb2RlbExvZygpKSB7XG5cdFx0XHR0aGlzLm1heFdpZHRoID0gd2luZG93LmlubmVyV2lkdGggKiAwLjY0O1xuXHRcdFx0cmV0dXJuO1xuXHRcdH1cblx0XHRjb25zdCBjZW50ZXJXaWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoIDwgMTAyNCA/IHdpbmRvdy5pbm5lcldpZHRoIC0gMzAwIDogd2luZG93LmlubmVyV2lkdGggLSA0MDA7XG5cdFx0dGhpcy5tYXhXaWR0aCA9IGNlbnRlcldpZHRoICogMC42NDtcblx0fVxuXG5cdHNob3dTdGFydFN0ZXBzKGV2ZW50OiBhbnksIHN0YXJ0T3A6IGFueSkge1xuXHRcdGlmICh0aGlzLmF1dGhMZXZlbCgpIDwgNCkgcmV0dXJuO1xuXHRcdHN0YXJ0T3AudG9nZ2xlKGV2ZW50KTtcblx0fVxuXG5cdHNob3dFbmRTdGVwcyhldmVudDogYW55LCBlbmRPcDogYW55KSB7XG5cdFx0aWYgKHRoaXMuYXV0aExldmVsKCkgPCA0KSByZXR1cm47XG5cdFx0ZW5kT3AudG9nZ2xlKGV2ZW50KTtcblx0fVxuXG5cdGdldENsYXNzKGk6IG51bWJlciwgY2xhc3Nlczogc3RyaW5nW10pIHtcblx0XHRsZXQgcmVzdWx0ID0gWydzdGVwLWl0ZW0nLCAnZmxleCcsICdpdGVtcy1jZW50ZXInLCAnanVzdGlmeS1jZW50ZXInXTtcblx0XHRyZXN1bHQgPSByZXN1bHQuY29uY2F0KGNsYXNzZXMpO1xuXHRcdGlmICh0aGlzLmF1dGhMZXZlbCgpIDwgNCB8fCAhdGhpcy5pc0NsaWNrKCkpIHtcblx0XHRcdHJlc3VsdC5wdXNoKCdjdXJzb3Itbm90LWFsbG93ZWQnKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0cmVzdWx0LnB1c2goJ2N1cnNvci1wb2ludGVyIGFsbG93LWhvdmVyJyk7XG5cdFx0fVxuXHRcdGNvbnN0IHsgdmFsdWUgfSA9IHRoaXMuZGlzcGxheVN0ZXBzKCkhW2ldO1xuXHRcdGlmIChpID09IDApIHtcblx0XHRcdHJlc3VsdC5wdXNoKCdzdGVwLWZpcnN0Jyk7XG5cdFx0fSBlbHNlIGlmIChpICsgMSA9PSB0aGlzLmRpc3BsYXlTdGVwcygpPy5sZW5ndGgpIHtcblx0XHRcdHJlc3VsdC5wdXNoKCdzdGVwLWxhc3QnKTtcblx0XHR9XG5cdFx0aWYgKHZhbHVlID09IHRoaXMuY3VycmVudCgpKSB7XG5cdFx0XHRyZXN1bHQucHVzaCgnc3RlcC1hY3RpdmUnKTtcblx0XHRcdC8vIHJlc3VsdC5wdXNoKCdtZDpmbGV4LW5vbmUgZmxleC0xJyk7XG5cdFx0fVxuXHRcdHJldHVybiByZXN1bHQuam9pbignICcpO1xuXHR9XG5cblx0Y2hhbmdlU3RhdHVzKHN0ZXA6IGFueSkge1xuXHRcdHRoaXMuY2hhbmdlLmVtaXQoc3RlcC52YWx1ZSk7XG5cdH1cblxuXHRvblN0YXJ0U3RlcHNDaGFuZ2UoZXZlbnQ6IGFueSkge1xuXHRcdGNvbnN0IHN0ZXAgPSBldmVudC52YWx1ZTtcblx0XHR0aGlzLmNoYW5nZS5lbWl0KHN0ZXAudmFsdWUpO1xuXHR9XG5cblx0b25FbmRTdGVwc0NoYW5nZShldmVudDogYW55KSB7XG5cdFx0Y29uc3Qgc3RlcCA9IGV2ZW50LnZhbHVlO1xuXHRcdHRoaXMuY2hhbmdlLmVtaXQoc3RlcC52YWx1ZSk7XG5cdH1cblxuXHRhbHRlcm5hdGVXaWR0aExpc3QoKSB7XG5cdFx0bGV0IGluZGV4ID0gdGhpcy5zdGVwcygpIS5maW5kSW5kZXgoKHMpID0+IHMudmFsdWUgPT09IHRoaXMuY3VycmVudCgpKTtcblx0XHRpbmRleCA9IGluZGV4ID09PSAtMSA/IDAgOiBpbmRleDtcblx0XHR0aGlzLnN0YXJ0SW5kZXggPSBpbmRleDtcblx0XHR0aGlzLmVuZEluZGV4ID0gaW5kZXg7XG5cblx0XHRsZXQgbGVmdEluZGV4ID0gaW5kZXggLSAxO1xuXHRcdGxldCByaWdodEluZGV4ID0gaW5kZXggKyAxO1xuXHRcdGxldCB0dXJuID0gJ3JpZ2h0Jztcblx0XHRsZXQgdG90YWxXaWR0aCA9IHRoaXMud2lkdGhMaXN0W2luZGV4XTtcblx0XHRcblx0XHR3aGlsZSAobGVmdEluZGV4ID49IDAgfHwgcmlnaHRJbmRleCA8IHRoaXMud2lkdGhMaXN0Lmxlbmd0aCkge1xuXHRcdFx0aWYgKHR1cm4gPT09ICdyaWdodCcgJiYgcmlnaHRJbmRleCA8IHRoaXMud2lkdGhMaXN0Lmxlbmd0aCkge1xuXHRcdFx0XHR0b3RhbFdpZHRoICs9IHRoaXMud2lkdGhMaXN0W3JpZ2h0SW5kZXhdO1xuXHRcdFx0XHRpZiAodGhpcy5pc0V4Y2VlZE1heFdpZHRoKHRvdGFsV2lkdGgpKSB7XG5cdFx0XHRcdFx0YnJlYWs7XG5cdFx0XHRcdH1cblx0XHRcdFx0dGhpcy5lbmRJbmRleCA9IHJpZ2h0SW5kZXg7XG5cdFx0XHRcdHJpZ2h0SW5kZXgrKztcblx0XHRcdFx0dHVybiA9ICdsZWZ0Jztcblx0XHRcdH0gZWxzZSBpZiAodHVybiA9PT0gJ2xlZnQnICYmIGxlZnRJbmRleCA+PSAwKSB7XG5cdFx0XHRcdHRvdGFsV2lkdGggKz0gdGhpcy53aWR0aExpc3RbbGVmdEluZGV4XTtcblx0XHRcdFx0aWYgKHRoaXMuaXNFeGNlZWRNYXhXaWR0aCh0b3RhbFdpZHRoKSkge1xuXHRcdFx0XHRcdGJyZWFrO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHRoaXMuc3RhcnRJbmRleCA9IGxlZnRJbmRleDtcblx0XHRcdFx0bGVmdEluZGV4LS07XG5cdFx0XHRcdHR1cm4gPSAncmlnaHQnO1xuXHRcdFx0fSBlbHNlIHtcblx0XHRcdFx0dHVybiA9IHJpZ2h0SW5kZXggPCB0aGlzLndpZHRoTGlzdC5sZW5ndGggPyAncmlnaHQnIDogJ2xlZnQnO1xuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdGlzRXhjZWVkTWF4V2lkdGgodG90YWxXaWR0aDogbnVtYmVyKSB7XG5cdFx0aWYgKCF0aGlzLm5lZWRTZWxmQWRqdXN0aW5nKCkpIHtcblx0XHRcdHJldHVybiBmYWxzZTtcblx0XHR9XG5cdFx0dG90YWxXaWR0aCArPSB0aGlzLnN0YXJ0SW5kZXggPT09IDAgPyAwIDogdGhpcy5TVEFSVF9CVVRUT05fV0lEVEg7XG5cdFx0dG90YWxXaWR0aCArPSB0aGlzLmVuZEluZGV4ID09PSB0aGlzLndpZHRoTGlzdC5sZW5ndGggLSAxID8gMCA6IHRoaXMuRU5EX0JVVFRPTl9XSURUSDtcblx0XHRjb25zb2xlLmxvZygnLS0tLS0tLS0tLS0tLS0tLXRvdGFsV2lkdGgnLCB0b3RhbFdpZHRoLCB0aGlzLm1heFdpZHRoKTtcblx0XHRyZXR1cm4gdG90YWxXaWR0aCA+PSB0aGlzLm1heFdpZHRoO1xuXHR9XG5cblx0aGFuZGxlU3RlcHMoKSB7XG5cdFx0Y29uc3Qgc3RlcHMgPSB0aGlzLnN0ZXBzKCkhO1xuXHRcdGNvbnN0IGV4Y2x1ZGVWYWx1ZXM6IGFueVtdID0gW107XG5cdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCBzdGVwcy5sZW5ndGg7IGkrKykge1xuXHRcdFx0aWYgKGkgPCB0aGlzLnN0YXJ0SW5kZXgpIHtcblx0XHRcdFx0ZXhjbHVkZVZhbHVlcy5wdXNoKHN0ZXBzW2ldLnZhbHVlKTtcblx0XHRcdH1cblx0XHRcdGlmIChpID4gdGhpcy5lbmRJbmRleCkge1xuXHRcdFx0XHRleGNsdWRlVmFsdWVzLnB1c2goc3RlcHNbaV0udmFsdWUpO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGlmICh0aGlzLnN0YXJ0SW5kZXggPiAwKSB7XG5cdFx0XHR0aGlzLnN0YXJ0U3RlcHMgPSBzdGVwcy5zbGljZSgwLCB0aGlzLnN0YXJ0SW5kZXgpO1xuXHRcdH0gZWxzZSB7XG5cdFx0XHRleGNsdWRlVmFsdWVzLnB1c2goJ3N0YXJ0Jyk7XG5cdFx0fVxuXHRcdGlmICh0aGlzLmVuZEluZGV4IDwgc3RlcHMubGVuZ3RoIC0gMSkge1xuXHRcdFx0dGhpcy5lbmRTdGVwcyA9IHN0ZXBzLnNsaWNlKHRoaXMuZW5kSW5kZXggKyAxKTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0ZXhjbHVkZVZhbHVlcy5wdXNoKCdlbmQnKTtcblx0XHR9XG5cdFx0dGhpcy5leGNsdWRlVmFsdWVzLnNldChleGNsdWRlVmFsdWVzKTtcblx0fVxufVxuIiwiPGRpdlxyXG5cdCNjb250YWluZXJcclxuXHRjbGFzcz1cImZsZXggbXktMSB3LWZ1bGwganVzdGlmeS1lbmRcIj5cclxuXHRAZm9yIChzdCBvZiBkaXNwbGF5U3RlcHMoKTsgdHJhY2sgc3Q7IGxldCBpID0gJGluZGV4KSB7XHJcblx0XHRAaWYgKHN0LnZhbHVlID09PSAnc3RhcnQnKSB7XHJcblx0XHRcdDxkaXZcclxuXHRcdFx0XHQjc3RhcnRJdGVtXHJcblx0XHRcdFx0W2NsYXNzXT1cImdldENsYXNzKGksIFsnc3RhcnQtaXRlbSddKVwiXHJcblx0XHRcdFx0KGNsaWNrKT1cInNob3dTdGFydFN0ZXBzKCRldmVudCwgc3RhcnRPcClcIj5cclxuXHRcdFx0XHQ8c3Bhbj4uLi48L3NwYW4+XHJcblx0XHRcdDwvZGl2PlxyXG5cdFx0XHQ8cC1wb3BvdmVyXHJcblx0XHRcdFx0I3N0YXJ0T3BcclxuXHRcdFx0XHRbc3R5bGVDbGFzc109XCIncG9wLXN0ZXBzIHN0YXJ0LXN0ZXBzJ1wiXHJcblx0XHRcdFx0W2FwcGVuZFRvXT1cInN0YXJ0SXRlbVwiPlxyXG5cdFx0XHRcdDxwLWxpc3Rib3hcclxuXHRcdFx0XHRcdFtvcHRpb25zXT1cInN0YXJ0U3RlcHNcIlxyXG5cdFx0XHRcdFx0KG9uQ2hhbmdlKT1cIm9uU3RhcnRTdGVwc0NoYW5nZSgkZXZlbnQpXCJcclxuXHRcdFx0XHRcdG9wdGlvbkxhYmVsPVwibGFiZWxcIlxyXG5cdFx0XHRcdFx0Y2xhc3M9XCJ3LWZ1bGwgbWQ6dy01NlwiPlxyXG5cdFx0XHRcdFx0PG5nLXRlbXBsYXRlXHJcblx0XHRcdFx0XHRcdGxldC1jb3VudHJ5XHJcblx0XHRcdFx0XHRcdHBUZW1wbGF0ZT1cIml0ZW1cIj5cclxuXHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGdhcC0yXCI+XHJcblx0XHRcdFx0XHRcdFx0PGRpdj57eyBjb3VudHJ5LmkxOG5LZXkgPyBpMThuLmZhbnlpKGNvdW50cnkuaTE4bktleSkgOiBjb3VudHJ5LmxhYmVsIH19PC9kaXY+XHJcblx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0PC9uZy10ZW1wbGF0ZT5cclxuXHRcdFx0XHQ8L3AtbGlzdGJveD5cclxuXHRcdFx0PC9wLXBvcG92ZXI+XHJcblx0XHR9IEBlbHNlIGlmIChzdC52YWx1ZSA9PT0gJ2VuZCcpIHtcclxuXHRcdFx0PGRpdlxyXG5cdFx0XHRcdCNlbmRJdGVtXHJcblx0XHRcdFx0W2NsYXNzXT1cImdldENsYXNzKGksIFsnZW5kLWl0ZW0nXSlcIlxyXG5cdFx0XHRcdChjbGljayk9XCJzaG93RW5kU3RlcHMoJGV2ZW50LCBlbmRPcClcIj5cclxuXHRcdFx0XHQ8c3Bhbj4uLi48L3NwYW4+XHJcblx0XHRcdDwvZGl2PlxyXG5cdFx0XHQ8cC1wb3BvdmVyXHJcblx0XHRcdFx0I2VuZE9wXHJcblx0XHRcdFx0W3N0eWxlQ2xhc3NdPVwiJ3BvcC1zdGVwcyBlbmQtc3RlcHMnXCJcclxuXHRcdFx0XHRbYXBwZW5kVG9dPVwiZW5kSXRlbVwiPlxyXG5cdFx0XHRcdDxwLWxpc3Rib3hcclxuXHRcdFx0XHRcdFtvcHRpb25zXT1cImVuZFN0ZXBzXCJcclxuXHRcdFx0XHRcdChvbkNoYW5nZSk9XCJvbkVuZFN0ZXBzQ2hhbmdlKCRldmVudClcIlxyXG5cdFx0XHRcdFx0b3B0aW9uTGFiZWw9XCJsYWJlbFwiXHJcblx0XHRcdFx0XHRjbGFzcz1cInctZnVsbCBtZDp3LTU2XCI+XHJcblx0XHRcdFx0XHQ8bmctdGVtcGxhdGVcclxuXHRcdFx0XHRcdFx0bGV0LWNvdW50cnlcclxuXHRcdFx0XHRcdFx0cFRlbXBsYXRlPVwiaXRlbVwiPlxyXG5cdFx0XHRcdFx0XHQ8ZGl2IGNsYXNzPVwiZmxleCBpdGVtcy1jZW50ZXIgZ2FwLTJcIj5cclxuXHRcdFx0XHRcdFx0XHQ8ZGl2Pnt7IGNvdW50cnkuaTE4bktleSA/IGkxOG4uZmFueWkoY291bnRyeS5pMThuS2V5KSA6IGNvdW50cnkubGFiZWwgfX08L2Rpdj5cclxuXHRcdFx0XHRcdFx0PC9kaXY+XHJcblx0XHRcdFx0XHQ8L25nLXRlbXBsYXRlPlxyXG5cdFx0XHRcdDwvcC1saXN0Ym94PlxyXG5cdFx0XHQ8L3AtcG9wb3Zlcj5cclxuXHRcdH0gQGVsc2Uge1xyXG5cdFx0XHQ8ZGl2XHJcblx0XHRcdFx0W2NsYXNzXT1cImdldENsYXNzKGksIFtdKVwiXHJcblx0XHRcdFx0KGNsaWNrKT1cImNoYW5nZVN0YXR1cyhzdClcIj5cclxuXHRcdFx0XHQ8c3Bhbj57eyBzdC5pMThuS2V5ID8gaTE4bi5mYW55aShzdC5pMThuS2V5KSA6IHN0LmxhYmVsIH19PC9zcGFuPlxyXG5cdFx0XHQ8L2Rpdj5cclxuXHRcdH1cclxuXHR9XHJcbjwvZGl2PlxyXG4iXX0=
|
|
220
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RlcHMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvaW1tLWVsZW1lbnQtdWkvc3JjL2xpYi9zdGVwcy9zdGVwcy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9pbW0tZWxlbWVudC11aS9zcmMvbGliL3N0ZXBzL3N0ZXBzLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBYyxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQWEsTUFBTSxFQUFFLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzSSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDdEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDMUMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7O0FBYzFELE1BQU0sT0FBTyxjQUFjO0lBK0IxQixRQUFRO1FBQ1AsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQ3BCLElBQUksQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUNyQixDQUFDO0lBRUQsWUFBb0IsUUFBbUI7UUFBbkIsYUFBUSxHQUFSLFFBQVEsQ0FBVztRQWxDdkMsYUFBUSxHQUFHLEtBQUssQ0FBVSxLQUFLLENBQUMsQ0FBQztRQUNqQyxzQkFBaUIsR0FBRyxLQUFLLENBQVUsSUFBSSxDQUFDLENBQUM7UUFDekMsVUFBSyxHQUFHLEtBQUssQ0FBcUIsU0FBUyxDQUFDLENBQUM7UUFDN0MsaUJBQVksR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFO1lBQzVCLElB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Q0FBQyxLQUFLLENBQUMsQ0FBQztZQUNwQyxDQUFDO1FBQ0YsQ0FBQztRQUVELElBQUksSUFBSSxDQUFDLFVBQVUsR0FBRyxDQUFDLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztRQUNuRCxDQUFDO2FBQU0sQ0FBQztZQUNQLGFBQWEsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDN0IsQ0FBQztRQUNELElBQUksSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsTUFBTSxHQUFHLENBQUMsRUFBRSxDQUFDO1lBQ3RDLElBQUksQ0FBQyxRQUFRLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxHQUFHLENBQUMsQ0FBQyxDQUFDO1FBQ2hELENBQUM7YUFBTSxDQUFDO1lBQ1AsYUFBYSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQixDQUFDO1FBQ0QsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQUMsYUFBYSxDQUFDLENBQUM7SUFDdkMsQ0FBQzsrR0FyTlcsY0FBYzttR0FBZCxjQUFjLDJpQ0NuQjNCLHFqRUErREEsbWtERGhEVyxXQUFXLDhCQUFFLGFBQWEsNGtDQUFFLE9BQU87OzRGQUlqQyxjQUFjO2tCQVAxQixTQUFTOytCQUNDLGNBQWMsY0FDWixJQUFJLFdBQ1AsQ0FBQyxXQUFXLEVBQUUsYUFBYSxFQUFFLE9BQU8sQ0FBQzs4RUFLSCxZQUFZO3NCQUF0RCxTQUFTO3VCQUFDLFdBQVcsRUFBRSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUU7Z0JBOEJ6QyxRQUFRO3NCQURQLFlBQVk7dUJBQUMsZUFBZSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgY29tcHV0ZWQsIGVmZmVjdCwgRWxlbWVudFJlZiwgSG9zdExpc3RlbmVyLCBpbmplY3QsIGlucHV0LCBvdXRwdXQsIFJlbmRlcmVyMiwgc2lnbmFsLCBWaWV3Q2hpbGQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEkxOG5TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZS9pMThuLnNlcnZpY2UnO1xuaW1wb3J0IHsgRm9ybXNNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBMaXN0Ym94TW9kdWxlIH0gZnJvbSAncHJpbWVuZy9saXN0Ym94JztcbmltcG9ydCB7IFBvcG92ZXIgfSBmcm9tICdwcmltZW5nL3BvcG92ZXInO1xuaW1wb3J0IHsgdG9PYnNlcnZhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuZXhwb3J0IGludGVyZmFjZSBTdGVwIHtcblx0bGFiZWw6IHN0cmluZztcblx0aTE4bktleT86IHN0cmluZztcblx0dmFsdWU6IG51bWJlciB8ICdzdGFydCcgfCAnZW5kJztcbn1cblxuQENvbXBvbmVudCh7XG5cdHNlbGVjdG9yOiAnY3VzdG9tLXN0ZXBzJyxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0aW1wb3J0czogW0Zvcm1zTW9kdWxlLCBMaXN0Ym94TW9kdWxlLCBQb3BvdmVyXSxcblx0dGVtcGxhdGVVcmw6ICcuL3N0ZXBzLmNvbXBvbmVudC5odG1sJyxcblx0c3R5bGVVcmw6ICcuL3N0ZXBzLmNvbXBvbmVudC5zY3NzJyxcbn0pXG5leHBvcnQgY2xhc3MgU3RlcHNDb21wb25lbnQge1xuXHRAVmlld0NoaWxkKCdjb250YWluZXInLCB7IHN0YXRpYzogZmFsc2UgfSkgY29udGFpbmVyUmVmITogRWxlbWVudFJlZjtcblx0bW9kZWxMb2cgPSBpbnB1dDxib29sZWFuPihmYWxzZSk7XG5cdG5lZWRTZWxmQWRqdXN0aW5nID0gaW5wdXQ8Ym9vbGVhbj4odHJ1ZSk7XG5cdHN0ZXBzID0gaW5wdXQ8U3RlcFtdIHwgdW5kZWZpbmVkPih1bmRlZmluZWQpO1xuXHRkaXNwbGF5U3RlcHMgPSBjb21wdXRlZCgoKSA9PiB7XG5cdFx0aWYgKHRoaXMuc3RlcHMoKSA9PT0gdW5kZWZpbmVkKSByZXR1cm4gW107XG5cdFx0Y29uc3Qgc3RlcHMgPSBbLi4udGhpcy5zdGVwcygpIV07XG5cdFx0c3RlcHMudW5zaGlmdCh7IHZhbHVlOiAnc3RhcnQnLCBsYWJlbDogJy4uLicgfSk7XG5cdFx0c3RlcHMucHVzaCh7IHZhbHVlOiAnZW5kJywgbGFiZWw6ICcuLi4nIH0pO1xuXHRcdHJldHVybiBzdGVwcy5maWx0ZXIoKHN0ZXApID0+ICF0aGlzLmV4Y2x1ZGVWYWx1ZXMoKS5pbmNsdWRlcyhzdGVwLnZhbHVlKSk7XG5cdH0pO1xuXHRleGNsdWRlVmFsdWVzID0gc2lnbmFsPChudW1iZXIgfCAnc3RhcnQnIHwgJ2VuZCcpW10+KFtdKTtcblx0Y3VycmVudCA9IGlucHV0PG51bWJlcj4oMik7XG5cdGkxOG4gPSBpbmplY3QoSTE4blNlcnZpY2UpO1xuXHRjaGFuZ2UgPSBvdXRwdXQ8bnVtYmVyPigpO1xuXHRhdXRoTGV2ZWwgPSBpbnB1dDxudW1iZXI+KC0xKTtcblx0aXNDbGljayA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xuXG5cdHdpZHRoTGlzdDogbnVtYmVyW10gPSBbXTtcblx0U1RBUlRfQlVUVE9OX1dJRFRIID0gMzI7XG5cdEVORF9CVVRUT05fV0lEVEggPSA0Nztcblx0U1RFUF9JVEVNX01BUkdJTiA9IDI7XG5cblx0c3RhcnRJbmRleCA9IDA7XG5cdGVuZEluZGV4ID0gMDtcblx0c3RhcnRTdGVwczogU3RlcFtdID0gW107XG5cdGVuZFN0ZXBzOiBTdGVwW10gPSBbXTtcblx0bWF4V2lkdGggPSAwO1xuXG5cdEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzpyZXNpemUnKVxuXHRvblJlc2l6ZSgpIHtcblx0XHR0aGlzLmNhbGNNYXhXaWR0aCgpO1xuXHRcdHRoaXMucmVmcmVzaFN0ZXBzKCk7XG5cdH1cblxuXHRjb25zdHJ1Y3Rvcihwcml2YXRlIHJlbmRlcmVyOiBSZW5kZXJlcjIpIHtcblx0XHRlZmZlY3QoXG5cdFx0XHQoKSA9PiB7XG5cdFx0XHRcdGxldCBjdXJyZW50ID0gdGhpcy5jdXJyZW50KCk7XG5cdFx0XHRcdGlmIChjdXJyZW50ICE9IDAgJiYgdGhpcy5zdGVwcygpIS5sZW5ndGggPiAwKSB7XG5cdFx0XHRcdFx0dGhpcy5yZWZyZXNoU3RlcHMoKTtcblx0XHRcdFx0fVxuXHRcdFx0fSxcblx0XHRcdHsgYWxsb3dTaWduYWxXcml0ZXM6IHRydWUgfSxcblx0XHQpO1xuXHRcdGVmZmVjdChcblx0XHRcdCgpID0+IHtcblx0XHRcdFx0dGhpcy5jYWxjTWF4V2lkdGgoKTtcblx0XHRcdFx0dGhpcy5yZWZyZXNoU3RlcHMoKTtcblx0XHRcdH0sXG5cdFx0XHR7IGFsbG93U2lnbmFsV3JpdGVzOiB0cnVlIH0sXG5cdFx0KTtcblx0XHRjb25zdCBzdGVwcyQgPSB0b09ic2VydmFibGUodGhpcy5zdGVwcykuc3Vic2NyaWJlKChzdGVwcykgPT4ge1xuXHRcdFx0aWYgKHN0ZXBzID09PSB1bmRlZmluZWQpIHJldHVybjtcblx0XHRcdHRoaXMuaW5pdFN0ZXBzKCk7XG5cdFx0XHRzdGVwcyQudW5zdWJzY3JpYmUoKTtcblx0XHR9KTtcblx0fVxuXG5cdGluaXRTdGVwcygpIHtcblx0XHR0aGlzLmNhbGNNYXhXaWR0aCgpO1xuXHRcdHRoaXMuaW5pdFdpZHRoTGlzdCgpO1xuXHRcdHRoaXMucmVmcmVzaFN0ZXBzKCk7XG5cdH1cblxuXHRyZWZyZXNoU3RlcHMoKSB7XG5cdFx0dGhpcy5hbHRlcm5hdGVXaWR0aExpc3QoKTtcblx0XHR0aGlzLmhhbmRsZVN0ZXBzKCk7XG5cdH1cblxuXHRpbml0V2lkdGhMaXN0KCkge1xuXHRcdHRoaXMud2lkdGhMaXN0ID0gW107XG5cdFx0Y29uc3QgY2hpbGRyZW4gPSB0aGlzLnJlbmRlcmVyLnBhcmVudE5vZGUodGhpcy5jb250YWluZXJSZWYubmF0aXZlRWxlbWVudCkuY2hpbGRyZW5bMF0uY2hpbGRyZW47XG5cdFx0Zm9yIChsZXQgaSA9IDA7IGkgPCBjaGlsZHJlbi5sZW5ndGg7IGkrKykge1xuXHRcdFx0aWYgKCFjaGlsZHJlbltpXS5jbGFzc0xpc3QuY29udGFpbnMoJ3N0ZXAtaXRlbScpKSB7XG5cdFx0XHRcdGNvbnRpbnVlO1xuXHRcdFx0fVxuXHRcdFx0aWYgKGNoaWxkcmVuW2ldLmNsYXNzTGlzdC5jb250YWlucygnc3RhcnQtaXRlbScpKSB7XG5cdFx0XHRcdGNvbnRpbnVlO1xuXHRcdFx0fVxuXHRcdFx0aWYgKGNoaWxkcmVuW2ldLmNsYXNzTGlzdC5jb250YWlucygnZW5kLWl0ZW0nKSkge1xuXHRcdFx0XHRjb250aW51ZTtcblx0XHRcdH1cblx0XHRcdHRoaXMud2lkdGhMaXN0LnB1c2goKGNoaWxkcmVuW2ldLm9mZnNldFdpZHRoIHx8IDApICsgdGhpcy5TVEVQX0lURU1fTUFSR0lOKTtcblx0XHR9XG5cdH1cblxuXHRjYWxjTWF4V2lkdGgoKSB7XG5cdFx0aWYgKHdpbmRvdy5pbm5lcldpZHRoIDwgNzY4KSB7XG5cdFx0XHR0aGlzLm1heFdpZHRoID0gd2luZG93LmlubmVyV2lkdGggKiAwLjk2O1xuXHRcdFx0cmV0dXJuO1xuXHRcdH1cblx0XHRpZiAoIXRoaXMubW9kZWxMb2coKSkge1xuXHRcdFx0dGhpcy5tYXhXaWR0aCA9IHdpbmRvdy5pbm5lcldpZHRoICogMC42NDtcblx0XHRcdHJldHVybjtcblx0XHR9XG5cdFx0Y29uc3QgY2VudGVyV2lkdGggPSB3aW5kb3cuaW5uZXJXaWR0aCA8IDEwMjQgPyB3aW5kb3cuaW5uZXJXaWR0aCAtIDMwMCA6IHdpbmRvdy5pbm5lcldpZHRoIC0gNDAwO1xuXHRcdHRoaXMubWF4V2lkdGggPSBjZW50ZXJXaWR0aCAqIDAuNjQ7XG5cdH1cblxuXHRzaG93U3RhcnRTdGVwcyhldmVudDogYW55LCBzdGFydE9wOiBhbnkpIHtcblx0XHRpZiAodGhpcy5hdXRoTGV2ZWwoKSA8IDQpIHJldHVybjtcblx0XHRzdGFydE9wLnRvZ2dsZShldmVudCk7XG5cdH1cblxuXHRzaG93RW5kU3RlcHMoZXZlbnQ6IGFueSwgZW5kT3A6IGFueSkge1xuXHRcdGlmICh0aGlzLmF1dGhMZXZlbCgpIDwgNCkgcmV0dXJuO1xuXHRcdGVuZE9wLnRvZ2dsZShldmVudCk7XG5cdH1cblxuXHRnZXRDbGFzcyhpOiBudW1iZXIsIGNsYXNzZXM6IHN0cmluZ1tdKSB7XG5cdFx0bGV0IHJlc3VsdCA9IFsnc3RlcC1pdGVtJywgJ2ZsZXgnLCAnaXRlbXMtY2VudGVyJywgJ2p1c3RpZnktY2VudGVyJ107XG5cdFx0cmVzdWx0ID0gcmVzdWx0LmNvbmNhdChjbGFzc2VzKTtcblx0XHRpZiAodGhpcy5hdXRoTGV2ZWwoKSA8IDQgfHwgIXRoaXMuaXNDbGljaygpKSB7XG5cdFx0XHRyZXN1bHQucHVzaCgnY3Vyc29yLW5vdC1hbGxvd2VkJyk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdHJlc3VsdC5wdXNoKCdjdXJzb3ItcG9pbnRlciBhbGxvdy1ob3ZlcicpO1xuXHRcdH1cblx0XHRjb25zdCB7IHZhbHVlIH0gPSB0aGlzLmRpc3BsYXlTdGVwcygpIVtpXTtcblx0XHRpZiAoaSA9PSAwKSB7XG5cdFx0XHRyZXN1bHQucHVzaCgnc3RlcC1maXJzdCcpO1xuXHRcdH0gZWxzZSBpZiAoaSArIDEgPT0gdGhpcy5kaXNwbGF5U3RlcHMoKT8ubGVuZ3RoKSB7XG5cdFx0XHRyZXN1bHQucHVzaCgnc3RlcC1sYXN0Jyk7XG5cdFx0fVxuXHRcdGlmICh2YWx1ZSA9PSB0aGlzLmN1cnJlbnQoKSkge1xuXHRcdFx0cmVzdWx0LnB1c2goJ3N0ZXAtYWN0aXZlJyk7XG5cdFx0XHQvLyByZXN1bHQucHVzaCgnbWQ6ZmxleC1ub25lIGZsZXgtMScpO1xuXHRcdH1cblx0XHRyZXR1cm4gcmVzdWx0LmpvaW4oJyAnKTtcblx0fVxuXG5cdGNoYW5nZVN0YXR1cyhzdGVwOiBhbnkpIHtcblx0XHR0aGlzLmNoYW5nZS5lbWl0KHN0ZXAudmFsdWUpO1xuXHR9XG5cblx0b25TdGFydFN0ZXBzQ2hhbmdlKGV2ZW50OiBhbnkpIHtcblx0XHRjb25zdCBzdGVwID0gZXZlbnQudmFsdWU7XG5cdFx0dGhpcy5jaGFuZ2UuZW1pdChzdGVwLnZhbHVlKTtcblx0fVxuXG5cdG9uRW5kU3RlcHNDaGFuZ2UoZXZlbnQ6IGFueSkge1xuXHRcdGNvbnN0IHN0ZXAgPSBldmVudC52YWx1ZTtcblx0XHR0aGlzLmNoYW5nZS5lbWl0KHN0ZXAudmFsdWUpO1xuXHR9XG5cblx0YWx0ZXJuYXRlV2lkdGhMaXN0KCkge1xuXHRcdGxldCBpbmRleCA9IHRoaXMuc3RlcHMoKSEuZmluZEluZGV4KChzKSA9PiBzLnZhbHVlID09PSB0aGlzLmN1cnJlbnQoKSk7XG5cdFx0aW5kZXggPSBpbmRleCA9PT0gLTEgPyAwIDogaW5kZXg7XG5cdFx0dGhpcy5zdGFydEluZGV4ID0gaW5kZXg7XG5cdFx0dGhpcy5lbmRJbmRleCA9IGluZGV4O1xuXG5cdFx0bGV0IGxlZnRJbmRleCA9IGluZGV4IC0gMTtcblx0XHRsZXQgcmlnaHRJbmRleCA9IGluZGV4ICsgMTtcblx0XHRsZXQgdHVybiA9ICdyaWdodCc7XG5cdFx0bGV0IHRvdGFsV2lkdGggPSB0aGlzLndpZHRoTGlzdFtpbmRleF07XG5cdFx0XG5cdFx0d2hpbGUgKGxlZnRJbmRleCA+PSAwIHx8IHJpZ2h0SW5kZXggPCB0aGlzLndpZHRoTGlzdC5sZW5ndGgpIHtcblx0XHRcdGlmICh0dXJuID09PSAncmlnaHQnICYmIHJpZ2h0SW5kZXggPCB0aGlzLndpZHRoTGlzdC5sZW5ndGgpIHtcblx0XHRcdFx0dG90YWxXaWR0aCArPSB0aGlzLndpZHRoTGlzdFtyaWdodEluZGV4XTtcblx0XHRcdFx0aWYgKHRoaXMuaXNFeGNlZWRNYXhXaWR0aCh0b3RhbFdpZHRoKSkge1xuXHRcdFx0XHRcdGJyZWFrO1xuXHRcdFx0XHR9XG5cdFx0XHRcdHRoaXMuZW5kSW5kZXggPSByaWdodEluZGV4O1xuXHRcdFx0XHRyaWdodEluZGV4Kys7XG5cdFx0XHRcdHR1cm4gPSAnbGVmdCc7XG5cdFx0XHR9IGVsc2UgaWYgKHR1cm4gPT09ICdsZWZ0JyAmJiBsZWZ0SW5kZXggPj0gMCkge1xuXHRcdFx0XHR0b3RhbFdpZHRoICs9IHRoaXMud2lkdGhMaXN0W2xlZnRJbmRleF07XG5cdFx0XHRcdGlmICh0aGlzLmlzRXhjZWVkTWF4V2lkdGgodG90YWxXaWR0aCkpIHtcblx0XHRcdFx0XHRicmVhaztcblx0XHRcdFx0fVxuXHRcdFx0XHR0aGlzLnN0YXJ0SW5kZXggPSBsZWZ0SW5kZXg7XG5cdFx0XHRcdGxlZnRJbmRleC0tO1xuXHRcdFx0XHR0dXJuID0gJ3JpZ2h0Jztcblx0XHRcdH0gZWxzZSB7XG5cdFx0XHRcdHR1cm4gPSByaWdodEluZGV4IDwgdGhpcy53aWR0aExpc3QubGVuZ3RoID8gJ3JpZ2h0JyA6ICdsZWZ0Jztcblx0XHRcdH1cblx0XHR9XG5cdH1cblxuXHRpc0V4Y2VlZE1heFdpZHRoKHRvdGFsV2lkdGg6IG51bWJlcikge1xuXHRcdGlmICghdGhpcy5uZWVkU2VsZkFkanVzdGluZygpKSB7XG5cdFx0XHRyZXR1cm4gZmFsc2U7XG5cdFx0fVxuXHRcdHRvdGFsV2lkdGggKz0gdGhpcy5zdGFydEluZGV4ID09PSAwID8gMCA6IHRoaXMuU1RBUlRfQlVUVE9OX1dJRFRIO1xuXHRcdHRvdGFsV2lkdGggKz0gdGhpcy5lbmRJbmRleCA9PT0gdGhpcy53aWR0aExpc3QubGVuZ3RoIC0gMSA/IDAgOiB0aGlzLkVORF9CVVRUT05fV0lEVEg7XG5cdFx0Ly8gY29uc29sZS5sb2coJy0tLS0tLS0tLS0tLS0tLS10b3RhbFdpZHRoJywgdG90YWxXaWR0aCwgdGhpcy5tYXhXaWR0aCk7XG5cdFx0cmV0dXJuIHRvdGFsV2lkdGggPj0gdGhpcy5tYXhXaWR0aDtcblx0fVxuXG5cdGhhbmRsZVN0ZXBzKCkge1xuXHRcdGNvbnN0IHN0ZXBzID0gdGhpcy5zdGVwcygpITtcblx0XHRjb25zdCBleGNsdWRlVmFsdWVzOiBhbnlbXSA9IFtdO1xuXHRcdGZvciAobGV0IGkgPSAwOyBpIDwgc3RlcHMubGVuZ3RoOyBpKyspIHtcblx0XHRcdGlmIChpIDwgdGhpcy5zdGFydEluZGV4KSB7XG5cdFx0XHRcdGV4Y2x1ZGVWYWx1ZXMucHVzaChzdGVwc1tpXS52YWx1ZSk7XG5cdFx0XHR9XG5cdFx0XHRpZiAoaSA+IHRoaXMuZW5kSW5kZXgpIHtcblx0XHRcdFx0ZXhjbHVkZVZhbHVlcy5wdXNoKHN0ZXBzW2ldLnZhbHVlKTtcblx0XHRcdH1cblx0XHR9XG5cblx0XHRpZiAodGhpcy5zdGFydEluZGV4ID4gMCkge1xuXHRcdFx0dGhpcy5zdGFydFN0ZXBzID0gc3RlcHMuc2xpY2UoMCwgdGhpcy5zdGFydEluZGV4KTtcblx0XHR9IGVsc2Uge1xuXHRcdFx0ZXhjbHVkZVZhbHVlcy5wdXNoKCdzdGFydCcpO1xuXHRcdH1cblx0XHRpZiAodGhpcy5lbmRJbmRleCA8IHN0ZXBzLmxlbmd0aCAtIDEpIHtcblx0XHRcdHRoaXMuZW5kU3RlcHMgPSBzdGVwcy5zbGljZSh0aGlzLmVuZEluZGV4ICsgMSk7XG5cdFx0fSBlbHNlIHtcblx0XHRcdGV4Y2x1ZGVWYWx1ZXMucHVzaCgnZW5kJyk7XG5cdFx0fVxuXHRcdHRoaXMuZXhjbHVkZVZhbHVlcy5zZXQoZXhjbHVkZVZhbHVlcyk7XG5cdH1cbn1cbiIsIjxkaXZcclxuXHQjY29udGFpbmVyXHJcblx0Y2xhc3M9XCJmbGV4IG15LTEgdy1mdWxsIGp1c3RpZnktZW5kXCI+XHJcblx0QGZvciAoc3Qgb2YgZGlzcGxheVN0ZXBzKCk7IHRyYWNrIHN0OyBsZXQgaSA9ICRpbmRleCkge1xyXG5cdFx0QGlmIChzdC52YWx1ZSA9PT0gJ3N0YXJ0Jykge1xyXG5cdFx0XHQ8ZGl2XHJcblx0XHRcdFx0I3N0YXJ0SXRlbVxyXG5cdFx0XHRcdFtjbGFzc109XCJnZXRDbGFzcyhpLCBbJ3N0YXJ0LWl0ZW0nXSlcIlxyXG5cdFx0XHRcdChjbGljayk9XCJzaG93U3RhcnRTdGVwcygkZXZlbnQsIHN0YXJ0T3ApXCI+XHJcblx0XHRcdFx0PHNwYW4+Li4uPC9zcGFuPlxyXG5cdFx0XHQ8L2Rpdj5cclxuXHRcdFx0PHAtcG9wb3ZlclxyXG5cdFx0XHRcdCNzdGFydE9wXHJcblx0XHRcdFx0W3N0eWxlQ2xhc3NdPVwiJ3BvcC1zdGVwcyBzdGFydC1zdGVwcydcIlxyXG5cdFx0XHRcdFthcHBlbmRUb109XCJzdGFydEl0ZW1cIj5cclxuXHRcdFx0XHQ8cC1saXN0Ym94XHJcblx0XHRcdFx0XHRbb3B0aW9uc109XCJzdGFydFN0ZXBzXCJcclxuXHRcdFx0XHRcdChvbkNoYW5nZSk9XCJvblN0YXJ0U3RlcHNDaGFuZ2UoJGV2ZW50KVwiXHJcblx0XHRcdFx0XHRvcHRpb25MYWJlbD1cImxhYmVsXCJcclxuXHRcdFx0XHRcdGNsYXNzPVwidy1mdWxsIG1kOnctNTZcIj5cclxuXHRcdFx0XHRcdDxuZy10ZW1wbGF0ZVxyXG5cdFx0XHRcdFx0XHRsZXQtY291bnRyeVxyXG5cdFx0XHRcdFx0XHRwVGVtcGxhdGU9XCJpdGVtXCI+XHJcblx0XHRcdFx0XHRcdDxkaXYgY2xhc3M9XCJmbGV4IGl0ZW1zLWNlbnRlciBnYXAtMlwiPlxyXG5cdFx0XHRcdFx0XHRcdDxkaXY+e3sgY291bnRyeS5pMThuS2V5ID8gaTE4bi5mYW55aShjb3VudHJ5LmkxOG5LZXkpIDogY291bnRyeS5sYWJlbCB9fTwvZGl2PlxyXG5cdFx0XHRcdFx0XHQ8L2Rpdj5cclxuXHRcdFx0XHRcdDwvbmctdGVtcGxhdGU+XHJcblx0XHRcdFx0PC9wLWxpc3Rib3g+XHJcblx0XHRcdDwvcC1wb3BvdmVyPlxyXG5cdFx0fSBAZWxzZSBpZiAoc3QudmFsdWUgPT09ICdlbmQnKSB7XHJcblx0XHRcdDxkaXZcclxuXHRcdFx0XHQjZW5kSXRlbVxyXG5cdFx0XHRcdFtjbGFzc109XCJnZXRDbGFzcyhpLCBbJ2VuZC1pdGVtJ10pXCJcclxuXHRcdFx0XHQoY2xpY2spPVwic2hvd0VuZFN0ZXBzKCRldmVudCwgZW5kT3ApXCI+XHJcblx0XHRcdFx0PHNwYW4+Li4uPC9zcGFuPlxyXG5cdFx0XHQ8L2Rpdj5cclxuXHRcdFx0PHAtcG9wb3ZlclxyXG5cdFx0XHRcdCNlbmRPcFxyXG5cdFx0XHRcdFtzdHlsZUNsYXNzXT1cIidwb3Atc3RlcHMgZW5kLXN0ZXBzJ1wiXHJcblx0XHRcdFx0W2FwcGVuZFRvXT1cImVuZEl0ZW1cIj5cclxuXHRcdFx0XHQ8cC1saXN0Ym94XHJcblx0XHRcdFx0XHRbb3B0aW9uc109XCJlbmRTdGVwc1wiXHJcblx0XHRcdFx0XHQob25DaGFuZ2UpPVwib25FbmRTdGVwc0NoYW5nZSgkZXZlbnQpXCJcclxuXHRcdFx0XHRcdG9wdGlvbkxhYmVsPVwibGFiZWxcIlxyXG5cdFx0XHRcdFx0Y2xhc3M9XCJ3LWZ1bGwgbWQ6dy01NlwiPlxyXG5cdFx0XHRcdFx0PG5nLXRlbXBsYXRlXHJcblx0XHRcdFx0XHRcdGxldC1jb3VudHJ5XHJcblx0XHRcdFx0XHRcdHBUZW1wbGF0ZT1cIml0ZW1cIj5cclxuXHRcdFx0XHRcdFx0PGRpdiBjbGFzcz1cImZsZXggaXRlbXMtY2VudGVyIGdhcC0yXCI+XHJcblx0XHRcdFx0XHRcdFx0PGRpdj57eyBjb3VudHJ5LmkxOG5LZXkgPyBpMThuLmZhbnlpKGNvdW50cnkuaTE4bktleSkgOiBjb3VudHJ5LmxhYmVsIH19PC9kaXY+XHJcblx0XHRcdFx0XHRcdDwvZGl2PlxyXG5cdFx0XHRcdFx0PC9uZy10ZW1wbGF0ZT5cclxuXHRcdFx0XHQ8L3AtbGlzdGJveD5cclxuXHRcdFx0PC9wLXBvcG92ZXI+XHJcblx0XHR9IEBlbHNlIHtcclxuXHRcdFx0PGRpdlxyXG5cdFx0XHRcdFtjbGFzc109XCJnZXRDbGFzcyhpLCBbXSlcIlxyXG5cdFx0XHRcdChjbGljayk9XCJjaGFuZ2VTdGF0dXMoc3QpXCI+XHJcblx0XHRcdFx0PHNwYW4+e3sgc3QuaTE4bktleSA/IGkxOG4uZmFueWkoc3QuaTE4bktleSkgOiBzdC5sYWJlbCB9fTwvc3Bhbj5cclxuXHRcdFx0PC9kaXY+XHJcblx0XHR9XHJcblx0fVxyXG48L2Rpdj5cclxuIl19
|