@energycap/components 0.44.8 → 0.44.9-Angular19Upgrade.20260217-1620
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/fesm2022/energycap-components.mjs +379 -354
- package/fesm2022/energycap-components.mjs.map +1 -1
- package/lib/controls/button/copy-button-base.directive.d.ts +1 -1
- package/lib/controls/date-input/date-input.component.d.ts +1 -1
- package/lib/controls/form-control-base.d.ts +1 -1
- package/lib/core/date-time-helper.d.ts +2 -2
- package/lib/display/hierarchy/hierarchy-base.d.ts +1 -1
- package/lib/display/hierarchy/hierarchy-mocks.spec.d.ts +1 -1
- package/lib/display/resizable/resizable-base.d.ts +1 -1
- package/lib/shared/display/pipes/date-display.pipe.d.ts +1 -1
- package/lib/shared/page/page-base/page-base.component.d.ts +1 -1
- package/lib/shared/testing/public-mocks.spec.d.ts +1 -1
- package/lib/shared/wizard/wizard-base/wizard-base.component.d.ts +1 -1
- package/package.json +1 -3
- package/schematics/utilities/typescript.js +3 -4
- package/schematics/utilities/typescript.js.map +1 -1
- package/schematics/utilities/workspace.d.ts +0 -8
- package/schematics/utilities/workspace.js +48 -71
- package/schematics/utilities/workspace.js.map +1 -1
- package/esm2022/energycap-components.mjs +0 -5
- package/esm2022/lib/components.module.mjs +0 -425
- package/esm2022/lib/controls/banner/banner.component.mjs +0 -112
- package/esm2022/lib/controls/button/button.component.mjs +0 -114
- package/esm2022/lib/controls/button/copy-button-base.directive.mjs +0 -67
- package/esm2022/lib/controls/button/copy-button.directive.mjs +0 -28
- package/esm2022/lib/controls/button/copy-table-button.directive.mjs +0 -43
- package/esm2022/lib/controls/calendar/calendar-item.component.mjs +0 -91
- package/esm2022/lib/controls/calendar/calendar.component.mjs +0 -251
- package/esm2022/lib/controls/calendar/calendar.types.mjs +0 -2
- package/esm2022/lib/controls/checkbox/checkbox.component.mjs +0 -140
- package/esm2022/lib/controls/collapsible-toggle/collapsible-toggle.component.mjs +0 -38
- package/esm2022/lib/controls/combobox/combobox.component.mjs +0 -879
- package/esm2022/lib/controls/date-input/date-input-selection-strategies/date-input-selection-strategy-base.mjs +0 -57
- package/esm2022/lib/controls/date-input/date-input-selection-strategies/day-selection-strategy.mjs +0 -62
- package/esm2022/lib/controls/date-input/date-input-selection-strategies/last-28-days-selection-strategy.mjs +0 -100
- package/esm2022/lib/controls/date-input/date-input-selection-strategies/last-7-days-selection-strategy.mjs +0 -101
- package/esm2022/lib/controls/date-input/date-input-selection-strategies/month-selection-strategy.mjs +0 -76
- package/esm2022/lib/controls/date-input/date-input-selection-strategies/quarter-selection-strategy.mjs +0 -79
- package/esm2022/lib/controls/date-input/date-input-selection-strategies/range-selection-strategy.mjs +0 -210
- package/esm2022/lib/controls/date-input/date-input-selection-strategies/year-selection-strategy.mjs +0 -81
- package/esm2022/lib/controls/date-input/date-input.component.mjs +0 -466
- package/esm2022/lib/controls/date-input/date-input.types.mjs +0 -44
- package/esm2022/lib/controls/dropdown/dropdown.component.mjs +0 -243
- package/esm2022/lib/controls/file-upload/file-upload.component.mjs +0 -261
- package/esm2022/lib/controls/form-control/form-control.component.mjs +0 -110
- package/esm2022/lib/controls/form-control-base.mjs +0 -151
- package/esm2022/lib/controls/form-control-label/form-control-label.component.mjs +0 -136
- package/esm2022/lib/controls/form-group/form-group.component.mjs +0 -261
- package/esm2022/lib/controls/help-popover/help-popover.component.mjs +0 -31
- package/esm2022/lib/controls/item-picker/item-picker.component.mjs +0 -329
- package/esm2022/lib/controls/link-button/link-button.component.mjs +0 -11
- package/esm2022/lib/controls/menu/menu.component.mjs +0 -485
- package/esm2022/lib/controls/navigation/link-item.mjs +0 -2
- package/esm2022/lib/controls/navigation/nav-group.mjs +0 -39
- package/esm2022/lib/controls/navigation/nav-item-active.directive.mjs +0 -92
- package/esm2022/lib/controls/navigation/nav-item.mjs +0 -2
- package/esm2022/lib/controls/numericbox/numericbox.component.mjs +0 -372
- package/esm2022/lib/controls/popover/popover.component.mjs +0 -117
- package/esm2022/lib/controls/radio-button/radio-button-option.mjs +0 -3
- package/esm2022/lib/controls/radio-button/radio-button.component.mjs +0 -82
- package/esm2022/lib/controls/select/select.component.mjs +0 -88
- package/esm2022/lib/controls/tabs/tabs.component.mjs +0 -47
- package/esm2022/lib/controls/textbox/textbox.component.mjs +0 -155
- package/esm2022/lib/core/cache.service.mjs +0 -105
- package/esm2022/lib/core/custom-validators.mjs +0 -29
- package/esm2022/lib/core/date-time-helper.mjs +0 -228
- package/esm2022/lib/core/error.service.mjs +0 -61
- package/esm2022/lib/core/router-helper.service.mjs +0 -111
- package/esm2022/lib/core/scroll.service.mjs +0 -89
- package/esm2022/lib/core/telemetry-tracker.service.mjs +0 -16
- package/esm2022/lib/core/telemetry.service.mjs +0 -38
- package/esm2022/lib/core/validation-message.service.mjs +0 -185
- package/esm2022/lib/core/validation-patterns.mjs +0 -31
- package/esm2022/lib/core/window.service.mjs +0 -186
- package/esm2022/lib/display/app-bar/app-bar.component.mjs +0 -49
- package/esm2022/lib/display/avatar/avatar.component.mjs +0 -67
- package/esm2022/lib/display/avatar/avatar.service.mjs +0 -64
- package/esm2022/lib/display/confirm/confirm.component.mjs +0 -168
- package/esm2022/lib/display/dialog/dialog-content.mjs +0 -2
- package/esm2022/lib/display/dialog/dialog-group/dialog-group.component.mjs +0 -63
- package/esm2022/lib/display/dialog/dialog-types.mjs +0 -77
- package/esm2022/lib/display/dialog/dialog.component.mjs +0 -287
- package/esm2022/lib/display/dialog/dialog.service.mjs +0 -71
- package/esm2022/lib/display/help/help-types.mjs +0 -2
- package/esm2022/lib/display/hierarchy/hierarchy-base.mjs +0 -111
- package/esm2022/lib/display/hierarchy/hierarchy-mocks.spec.mjs +0 -54
- package/esm2022/lib/display/hierarchy/hierarchy-tree/hierarchy-tree.component.mjs +0 -65
- package/esm2022/lib/display/item-display/item-display.component.mjs +0 -83
- package/esm2022/lib/display/json-display/json-display.component.mjs +0 -47
- package/esm2022/lib/display/resizable/resizable-base.mjs +0 -120
- package/esm2022/lib/display/resizable/resizable.component.mjs +0 -57
- package/esm2022/lib/display/spinner/spinner.component.mjs +0 -12
- package/esm2022/lib/display/splash/splash.component.mjs +0 -61
- package/esm2022/lib/display/splash/splash.service.mjs +0 -35
- package/esm2022/lib/display/table/resizable-column.component.mjs +0 -20
- package/esm2022/lib/display/table/resizable-table.directive.mjs +0 -227
- package/esm2022/lib/display/table/searchable-table.component.mjs +0 -344
- package/esm2022/lib/display/table/table-detail-row.component.mjs +0 -28
- package/esm2022/lib/display/table/table-locked-column.component.mjs +0 -58
- package/esm2022/lib/display/table/table-master-header-row.component.mjs +0 -14
- package/esm2022/lib/display/table/table-master-row.component.mjs +0 -163
- package/esm2022/lib/display/table/table-pagination.component.mjs +0 -155
- package/esm2022/lib/display/table/table-selectable-row.component.mjs +0 -235
- package/esm2022/lib/display/table/table.component.mjs +0 -257
- package/esm2022/lib/display/tags/tag.mjs +0 -18
- package/esm2022/lib/display/tags/tags.component.mjs +0 -82
- package/esm2022/lib/display/toast/toast/toast.component.mjs +0 -77
- package/esm2022/lib/display/toast/toast-types.mjs +0 -8
- package/esm2022/lib/display/toast/toast.service.mjs +0 -35
- package/esm2022/lib/display/toast/toaster/toaster.component.mjs +0 -114
- package/esm2022/lib/display/tooltip/tooltip.component.mjs +0 -28
- package/esm2022/lib/display/tooltip/tooltip.service.mjs +0 -78
- package/esm2022/lib/display/tooltip-directive/tooltip.directive.mjs +0 -173
- package/esm2022/lib/display/tree/tree.component.mjs +0 -139
- package/esm2022/lib/display/view-overlay/view-overlay.component.mjs +0 -58
- package/esm2022/lib/shared/directives/click-area-for/click-area-for.directive.mjs +0 -32
- package/esm2022/lib/shared/directives/if-viewport-width/if-viewport-width.directive.mjs +0 -111
- package/esm2022/lib/shared/directives/keyboard-nav-container/keyboard-nav-container.directive.mjs +0 -103
- package/esm2022/lib/shared/directives/popup/popup-container.directive.mjs +0 -166
- package/esm2022/lib/shared/display/pipes/date-display-2.pipe.mjs +0 -39
- package/esm2022/lib/shared/display/pipes/date-display.pipe.mjs +0 -51
- package/esm2022/lib/shared/display/pipes/highlight-text.pipe.mjs +0 -30
- package/esm2022/lib/shared/display/pipes/relative-date.pipe.mjs +0 -62
- package/esm2022/lib/shared/display/pipes/row-count.pipe.mjs +0 -48
- package/esm2022/lib/shared/display/pipes/time-display.pipe.mjs +0 -41
- package/esm2022/lib/shared/display.mjs +0 -6
- package/esm2022/lib/shared/form-group.helper.mjs +0 -67
- package/esm2022/lib/shared/json-helper.mjs +0 -19
- package/esm2022/lib/shared/lodash-helper.mjs +0 -52
- package/esm2022/lib/shared/page/page-base/page-base.component.mjs +0 -387
- package/esm2022/lib/shared/page/page-statuses.mjs +0 -23
- package/esm2022/lib/shared/page/page-title/page-title.component.mjs +0 -23
- package/esm2022/lib/shared/page/page-view/page-view.component.mjs +0 -147
- package/esm2022/lib/shared/testing/copy-button-base-test-injector-factory.spec.mjs +0 -17
- package/esm2022/lib/shared/testing/hierarchy-base-test-injector-factory.spec.mjs +0 -17
- package/esm2022/lib/shared/testing/page-base-component-test-helper.spec.mjs +0 -38
- package/esm2022/lib/shared/testing/page-base-component-test-injector-factory.spec.mjs +0 -98
- package/esm2022/lib/shared/testing/public-mocks.spec.mjs +0 -148
- package/esm2022/lib/shared/testing/spy-factory.spec.mjs +0 -40
- package/esm2022/lib/shared/testing/translation-mocks.spec.mjs +0 -57
- package/esm2022/lib/shared/user-preference.service.mjs +0 -17
- package/esm2022/lib/shared/wizard/wizard-base/wizard-base.component.mjs +0 -246
- package/esm2022/lib/shared/wizard/wizard-buttons/wizard-buttons.component.mjs +0 -68
- package/esm2022/lib/shared/wizard/wizard-progress/wizard-progress.component.mjs +0 -18
- package/esm2022/public-api.mjs +0 -115
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import { of } from "rxjs";
|
|
2
|
-
export const clickEvent = new MouseEvent('click');
|
|
3
|
-
;
|
|
4
|
-
/**
|
|
5
|
-
* returns an object that is formatted the same way as an API error would be
|
|
6
|
-
* if the provided message was the message coming from the API
|
|
7
|
-
* @param message
|
|
8
|
-
*/
|
|
9
|
-
export function getApiError(message) {
|
|
10
|
-
return {
|
|
11
|
-
error: {
|
|
12
|
-
status: {
|
|
13
|
-
message: message
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
};
|
|
17
|
-
}
|
|
18
|
-
export class MockTranslateService {
|
|
19
|
-
constructor(suffix) {
|
|
20
|
-
this.suffix = suffix;
|
|
21
|
-
this.currentLang = 'en_US';
|
|
22
|
-
}
|
|
23
|
-
get(key, interpolateParams) {
|
|
24
|
-
return of(key + (this.suffix || ''));
|
|
25
|
-
}
|
|
26
|
-
stream(key, interpolateParams) {
|
|
27
|
-
return of(key + (this.suffix || ''));
|
|
28
|
-
}
|
|
29
|
-
instant(key, interpolateParams) {
|
|
30
|
-
return key + (this.suffix || '');
|
|
31
|
-
}
|
|
32
|
-
setTranslation(langKey, languagePack, shouldMerge) {
|
|
33
|
-
//do nothing
|
|
34
|
-
}
|
|
35
|
-
setDefaultLang(lang) {
|
|
36
|
-
//do nothing
|
|
37
|
-
}
|
|
38
|
-
use(lang) {
|
|
39
|
-
//do nothing
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
export class MockTranslationHelperService {
|
|
43
|
-
translateObjectArray(items, prop) {
|
|
44
|
-
return Promise.resolve(items);
|
|
45
|
-
}
|
|
46
|
-
translateObjectProperty(item, prop, interpolateParams) {
|
|
47
|
-
return of(item);
|
|
48
|
-
}
|
|
49
|
-
getKendoLocaleId() {
|
|
50
|
-
return 'en';
|
|
51
|
-
}
|
|
52
|
-
translateCorePopValue(key, defaultValue) {
|
|
53
|
-
return defaultValue;
|
|
54
|
-
}
|
|
55
|
-
setLanguage() { }
|
|
56
|
-
}
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRpb24tbW9ja3Muc3BlYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9zaGFyZWQvdGVzdGluZy90cmFuc2xhdGlvbi1tb2Nrcy5zcGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFJdEMsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFlLElBQUksVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0FBRVIsQ0FBQztBQUN2RDs7OztHQUlHO0FBQ0YsTUFBTSxVQUFVLFdBQVcsQ0FBQyxPQUFlO0lBQ3hDLE9BQTBCO1FBQ3hCLEtBQUssRUFBRTtZQUNMLE1BQU0sRUFBRTtnQkFDTixPQUFPLEVBQUUsT0FBTzthQUNqQjtTQUNGO0tBQ0YsQ0FBQztBQUNKLENBQUM7QUFFSCxNQUFNLE9BQU8sb0JBQW9CO0lBRS9CLFlBQW1CLE1BQWU7UUFBZixXQUFNLEdBQU4sTUFBTSxDQUFTO1FBRDNCLGdCQUFXLEdBQVUsT0FBTyxDQUFDO0lBQ0UsQ0FBQztJQUNoQyxHQUFHLENBQUMsR0FBc0IsRUFBRSxpQkFBc0M7UUFDdkUsT0FBTyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFTSxNQUFNLENBQUMsR0FBc0IsRUFBRSxpQkFBc0M7UUFDMUUsT0FBTyxFQUFFLENBQUMsR0FBRyxHQUFHLENBQUMsSUFBSSxDQUFDLE1BQU0sSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFTSxPQUFPLENBQUMsR0FBcUIsRUFBRSxpQkFBc0M7UUFDMUUsT0FBTyxHQUFHLEdBQUcsQ0FBQyxJQUFJLENBQUMsTUFBTSxJQUFJLEVBQUUsQ0FBQyxDQUFDO0lBQ25DLENBQUM7SUFFTSxjQUFjLENBQUMsT0FBZSxFQUFFLFlBQWlCLEVBQUUsV0FBb0I7UUFDNUUsWUFBWTtJQUNkLENBQUM7SUFFTSxjQUFjLENBQUMsSUFBWTtRQUNoQyxZQUFZO0lBQ2QsQ0FBQztJQUVNLEdBQUcsQ0FBQyxJQUFZO1FBQ3JCLFlBQVk7SUFDZCxDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8sNEJBQTRCO0lBQ2hDLG9CQUFvQixDQUFJLEtBQWUsRUFBRSxJQUFZO1FBQzFELE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNoQyxDQUFDO0lBRU0sdUJBQXVCLENBQUksSUFBTyxFQUFFLElBQVksRUFBRSxpQkFBdUI7UUFDOUUsT0FBTyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDbEIsQ0FBQztJQUVNLGdCQUFnQjtRQUNyQixPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7SUFFTSxxQkFBcUIsQ0FBQyxHQUFVLEVBQUUsWUFBb0I7UUFDM0QsT0FBTyxZQUFZLENBQUM7SUFDdEIsQ0FBQztJQUVNLFdBQVcsS0FBVSxDQUFDO0NBQzlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSwgb2YgfSBmcm9tIFwicnhqc1wiO1xuaW1wb3J0IHsgUGlwZVRyYW5zZm9ybSwgUGlwZSB9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBIdHRwRXJyb3JSZXNwb25zZSB9IGZyb20gXCJAYW5ndWxhci9jb21tb24vaHR0cFwiO1xuXG5leHBvcnQgY29uc3QgY2xpY2tFdmVudDogTW91c2VFdmVudCA9IG5ldyBNb3VzZUV2ZW50KCdjbGljaycpO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFwaUVycm9yIHsgZXJyb3I6IEh0dHBFcnJvclJlc3BvbnNlIH07XG4vKipcbiAqIHJldHVybnMgYW4gb2JqZWN0IHRoYXQgaXMgZm9ybWF0dGVkIHRoZSBzYW1lIHdheSBhcyBhbiBBUEkgZXJyb3Igd291bGQgYmVcbiAqIGlmIHRoZSBwcm92aWRlZCBtZXNzYWdlIHdhcyB0aGUgbWVzc2FnZSBjb21pbmcgZnJvbSB0aGUgQVBJXG4gKiBAcGFyYW0gbWVzc2FnZVxuICovXG4gZXhwb3J0IGZ1bmN0aW9uIGdldEFwaUVycm9yKG1lc3NhZ2U6IHN0cmluZyk6IEFwaUVycm9yIHtcbiAgICByZXR1cm4gPEh0dHBFcnJvclJlc3BvbnNlPntcbiAgICAgIGVycm9yOiB7XG4gICAgICAgIHN0YXR1czoge1xuICAgICAgICAgIG1lc3NhZ2U6IG1lc3NhZ2VcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH07XG4gIH1cblxuZXhwb3J0IGNsYXNzIE1vY2tUcmFuc2xhdGVTZXJ2aWNlIHtcbiAgcHVibGljIGN1cnJlbnRMYW5nOnN0cmluZyA9ICdlbl9VUyc7XG4gIGNvbnN0cnVjdG9yKHB1YmxpYyBzdWZmaXg/OiBzdHJpbmcpIHsgfVxuICBwdWJsaWMgZ2V0KGtleTogc3RyaW5nIHwgc3RyaW5nW10sIGludGVycG9sYXRlUGFyYW1zPzogT2JqZWN0IHwgdW5kZWZpbmVkKTogT2JzZXJ2YWJsZTxzdHJpbmcgfCBhbnk+IHtcbiAgICByZXR1cm4gb2Yoa2V5ICsgKHRoaXMuc3VmZml4IHx8ICcnKSk7XG4gIH1cblxuICBwdWJsaWMgc3RyZWFtKGtleTogc3RyaW5nIHwgc3RyaW5nW10sIGludGVycG9sYXRlUGFyYW1zPzogT2JqZWN0IHwgdW5kZWZpbmVkKTogT2JzZXJ2YWJsZTxzdHJpbmcgfCBhbnk+IHtcbiAgICByZXR1cm4gb2Yoa2V5ICsgKHRoaXMuc3VmZml4IHx8ICcnKSk7XG4gIH1cblxuICBwdWJsaWMgaW5zdGFudChrZXk6c3RyaW5nIHwgc3RyaW5nW10sIGludGVycG9sYXRlUGFyYW1zPzogT2JqZWN0IHwgdW5kZWZpbmVkKTogYW55IHtcbiAgICByZXR1cm4ga2V5ICsgKHRoaXMuc3VmZml4IHx8ICcnKTtcbiAgfVxuXG4gIHB1YmxpYyBzZXRUcmFuc2xhdGlvbihsYW5nS2V5OiBzdHJpbmcsIGxhbmd1YWdlUGFjazogYW55LCBzaG91bGRNZXJnZTogYm9vbGVhbil7XG4gICAgLy9kbyBub3RoaW5nXG4gIH1cblxuICBwdWJsaWMgc2V0RGVmYXVsdExhbmcobGFuZzogc3RyaW5nKXtcbiAgICAvL2RvIG5vdGhpbmdcbiAgfVxuXG4gIHB1YmxpYyB1c2UobGFuZzogc3RyaW5nKSB7XG4gICAgLy9kbyBub3RoaW5nXG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIE1vY2tUcmFuc2xhdGlvbkhlbHBlclNlcnZpY2Uge1xuICBwdWJsaWMgdHJhbnNsYXRlT2JqZWN0QXJyYXk8VD4oaXRlbXM6IEFycmF5PFQ+LCBwcm9wOiBzdHJpbmcpOiBQcm9taXNlPEFycmF5PFQ+PiB7XG4gICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShpdGVtcyk7XG4gIH1cbiAgXG4gIHB1YmxpYyB0cmFuc2xhdGVPYmplY3RQcm9wZXJ0eTxUPihpdGVtOiBULCBwcm9wOiBzdHJpbmcsIGludGVycG9sYXRlUGFyYW1zPzogYW55KTogT2JzZXJ2YWJsZTxUPiB7XG4gICAgcmV0dXJuIG9mKGl0ZW0pO1xuICB9XG5cbiAgcHVibGljIGdldEtlbmRvTG9jYWxlSWQoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gJ2VuJztcbiAgfVxuXG4gIHB1YmxpYyB0cmFuc2xhdGVDb3JlUG9wVmFsdWUoa2V5OnN0cmluZywgZGVmYXVsdFZhbHVlOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIHJldHVybiBkZWZhdWx0VmFsdWU7XG4gIH1cblxuICBwdWJsaWMgc2V0TGFuZ3VhZ2UoKTogdm9pZCB7fVxufSJdfQ==
|
|
@@ -1,17 +0,0 @@
|
|
|
1
|
-
import { Injectable } from '@angular/core';
|
|
2
|
-
import { of } from 'rxjs';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export class UserPreferenceService {
|
|
5
|
-
getPreferences() {
|
|
6
|
-
return of({ preference: { dateFormat: 'MM/DD/YYYY', timeFormat: 'h:mm:ss a' } });
|
|
7
|
-
}
|
|
8
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UserPreferenceService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
9
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UserPreferenceService, providedIn: 'root' }); }
|
|
10
|
-
}
|
|
11
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: UserPreferenceService, decorators: [{
|
|
12
|
-
type: Injectable,
|
|
13
|
-
args: [{
|
|
14
|
-
providedIn: 'root'
|
|
15
|
-
}]
|
|
16
|
-
}] });
|
|
17
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXNlci1wcmVmZXJlbmNlLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb21wb25lbnRzL3NyYy9saWIvc2hhcmVkL3VzZXItcHJlZmVyZW5jZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0MsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQzs7QUFVdEMsTUFBTSxPQUFPLHFCQUFxQjtJQUV6QixjQUFjO1FBQ2pCLE9BQU8sRUFBRSxDQUFDLEVBQUMsVUFBVSxFQUFDLEVBQUMsVUFBVSxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQUUsV0FBVyxFQUFDLEVBQUMsQ0FBQyxDQUFDO0lBQ2hGLENBQUM7K0dBSlUscUJBQXFCO21IQUFyQixxQkFBcUIsY0FGdEIsTUFBTTs7NEZBRUwscUJBQXFCO2tCQUhqQyxVQUFVO21CQUFDO29CQUNaLFVBQVUsRUFBRSxNQUFNO2lCQUNqQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5cblxuZXhwb3J0IGludGVyZmFjZSBEYXRlUHJlZmVyZW5jZUNvbnRhaW5lciB7XG4gIHByZWZlcmVuY2U6IHtkYXRlRm9ybWF0OiBzdHJpbmd8bnVsbHx1bmRlZmluZWQsIHRpbWVGb3JtYXQ6IHN0cmluZ3xudWxsfHVuZGVmaW5lZH0gfCBudWxsIHwgdW5kZWZpbmVkXG59XG5cbkBJbmplY3RhYmxlKHtcbnByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBVc2VyUHJlZmVyZW5jZVNlcnZpY2Uge1xuXG4gIHB1YmxpYyBnZXRQcmVmZXJlbmNlcygpOiBPYnNlcnZhYmxlPERhdGVQcmVmZXJlbmNlQ29udGFpbmVyPiB7IFxuICAgICAgcmV0dXJuIG9mKHtwcmVmZXJlbmNlOntkYXRlRm9ybWF0OiAnTU0vREQvWVlZWScsIHRpbWVGb3JtYXQ6ICdoOm1tOnNzIGEnfX0pO1xuICB9XG4gIFxufVxuIl19
|
|
@@ -1,246 +0,0 @@
|
|
|
1
|
-
import { Directive } from '@angular/core';
|
|
2
|
-
import { upperFirst } from 'lodash';
|
|
3
|
-
import { takeUntil } from 'rxjs/operators';
|
|
4
|
-
import { TelemetryService } from '../../../core/telemetry.service';
|
|
5
|
-
import { PageBaseComponent } from '../../page/page-base/page-base.component';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
export class WizardBaseComponent extends PageBaseComponent {
|
|
8
|
-
get tabGroup() {
|
|
9
|
-
return this._tabGroup;
|
|
10
|
-
}
|
|
11
|
-
set tabGroup(value) {
|
|
12
|
-
this._tabGroup = value;
|
|
13
|
-
}
|
|
14
|
-
get currentTab() {
|
|
15
|
-
return this._currentTab;
|
|
16
|
-
}
|
|
17
|
-
constructor(injector) {
|
|
18
|
-
super(injector);
|
|
19
|
-
this.isWizardMode = true;
|
|
20
|
-
this.showWizardSaveSuccess = false;
|
|
21
|
-
/** True when there are no custom fields or when in wizard mode on the custom fields tab */
|
|
22
|
-
this.showSave = true;
|
|
23
|
-
/** True when in wizard mode you do not want to show the next or save button*/
|
|
24
|
-
this.hideNextSaveButton = false;
|
|
25
|
-
/** True when in wizard mode and on the custom fields tab */
|
|
26
|
-
this.showBack = false;
|
|
27
|
-
this.cancelLabel = 'Cancel';
|
|
28
|
-
this.dialogId = '';
|
|
29
|
-
this.telemetryService = injector.get(TelemetryService);
|
|
30
|
-
}
|
|
31
|
-
onFirstInit() {
|
|
32
|
-
this._tabGroup = this.configureTabs();
|
|
33
|
-
this.setCurrentTab(this._tabGroup.selected);
|
|
34
|
-
this.subscribeToTabChanges();
|
|
35
|
-
}
|
|
36
|
-
onWizardSaveSuccess() { }
|
|
37
|
-
async onAfterViewInit() {
|
|
38
|
-
this.updateButtons();
|
|
39
|
-
}
|
|
40
|
-
//
|
|
41
|
-
// PageBase lifecycle hooks. Override in derived class if needed.
|
|
42
|
-
//
|
|
43
|
-
async applyModelUpdates() { }
|
|
44
|
-
async saveToApi() { }
|
|
45
|
-
onSaveComplete(entityId) { }
|
|
46
|
-
async onSave(event) {
|
|
47
|
-
// Mark the current tab as completed if the tab is valid before attempting to save.
|
|
48
|
-
if (this._currentTab && this.isCurrentTabValid()) {
|
|
49
|
-
this._currentTab.completed = true;
|
|
50
|
-
}
|
|
51
|
-
await super.onSave(event);
|
|
52
|
-
if (this.showWizardSaveSuccess) {
|
|
53
|
-
this.onWizardSaveSuccess();
|
|
54
|
-
this.telemetryService.trackEvent(`${this.dialogId}_WizardSuccess`);
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
/**
|
|
58
|
-
* Navigates to the next tab in the tab group. Calls canGoToNextTab() to determine if navigating to the next tab
|
|
59
|
-
* is allowed or not. If tab validation succeeds, enables the next tab (if it is disabled) and selects it.
|
|
60
|
-
* @memberof WizardBaseComponent
|
|
61
|
-
*/
|
|
62
|
-
nextTab() {
|
|
63
|
-
const currentTabIndex = this._tabGroup.items.findIndex(t => t === this._currentTab);
|
|
64
|
-
// If there is a current tab selected and the current tab is not the last tab,
|
|
65
|
-
// update the selected tab in the tabGroup to the next tab
|
|
66
|
-
if (currentTabIndex > -1 && currentTabIndex < this._tabGroup.items.length - 1) {
|
|
67
|
-
const nextTab = this._tabGroup.items[currentTabIndex + 1];
|
|
68
|
-
if (this.canGoToNextTab(nextTab)) {
|
|
69
|
-
// Enable the next tab if it is disabled
|
|
70
|
-
if (nextTab.disabled) {
|
|
71
|
-
nextTab.disabled = false;
|
|
72
|
-
}
|
|
73
|
-
this._tabGroup.selected = nextTab;
|
|
74
|
-
this.telemetryService.trackEvent(`${this.dialogId}_${upperFirst(nextTab.id?.toString())}`);
|
|
75
|
-
}
|
|
76
|
-
else {
|
|
77
|
-
this.onTabChangeFailed();
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
/**
|
|
82
|
-
* Navigates to the previous tab in the tab group. Calls canGoToPreviousTab() to determine if navigating to the previous tab
|
|
83
|
-
* is allowed or not. Navigates to the tab if validation succeeds
|
|
84
|
-
* @memberof WizardBaseComponent
|
|
85
|
-
*/
|
|
86
|
-
previousTab() {
|
|
87
|
-
const currentTabIndex = this._tabGroup.items.findIndex(t => t === this._currentTab);
|
|
88
|
-
// If there is a current tab selected and the current tab is not the first tab,
|
|
89
|
-
// update the selected tab in the tabGroup to the previous tab
|
|
90
|
-
if (currentTabIndex > 0 && currentTabIndex < this._tabGroup.items.length) {
|
|
91
|
-
const prevTab = this._tabGroup.items[currentTabIndex - 1];
|
|
92
|
-
if (this.canGoToPreviousTab(prevTab)) {
|
|
93
|
-
this._tabGroup.selected = prevTab;
|
|
94
|
-
this.telemetryService.trackEvent(`${this.dialogId}_${upperFirst(prevTab.id?.toString())}`);
|
|
95
|
-
}
|
|
96
|
-
else {
|
|
97
|
-
this.onTabChangeFailed();
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
}
|
|
101
|
-
updateButtons() {
|
|
102
|
-
if (this.isWizardMode) {
|
|
103
|
-
if (this.currentTab) {
|
|
104
|
-
const tabIndex = this._tabGroup.items.findIndex(t => t === this.currentTab);
|
|
105
|
-
if (tabIndex > 0) {
|
|
106
|
-
// Show the back button and set the label to the previous tab when not on the first tab
|
|
107
|
-
this.showBack = true;
|
|
108
|
-
const prevTabKey = this._tabGroup.items[tabIndex - 1].label;
|
|
109
|
-
this.backLabel = `${this.translateService.instant('Back_TC')}: ${this.translateService.instant(prevTabKey)}`;
|
|
110
|
-
}
|
|
111
|
-
else {
|
|
112
|
-
// Hide the back button when on the first tab
|
|
113
|
-
this.showBack = false;
|
|
114
|
-
}
|
|
115
|
-
if (tabIndex < this._tabGroup.items.length - 1) {
|
|
116
|
-
// Show the next button and set the label to the next tab when not on the last tab
|
|
117
|
-
this.showSave = false;
|
|
118
|
-
const nextTabKey = this._tabGroup.items[tabIndex + 1].label;
|
|
119
|
-
this.nextLabel = `${this.translateService.instant('Next_TC')}: ${this.translateService.instant(nextTabKey)}`;
|
|
120
|
-
}
|
|
121
|
-
else {
|
|
122
|
-
this.nextLabel = undefined;
|
|
123
|
-
// Show the save button instead of next when on the last tab
|
|
124
|
-
this.showSave = true;
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
else {
|
|
129
|
-
this.showBack = false;
|
|
130
|
-
this.showSave = true;
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
|
-
/**
|
|
134
|
-
* Used to determine whether navigation to the next tab is prevented or not. Fired in nextTab(), but not when a tab is
|
|
135
|
-
* clicked or selected programmatically. By default, this checks the validity of the current tab's form model and
|
|
136
|
-
* prevents navigation if it is invalid. Can be overridden if different logic is needed.
|
|
137
|
-
* @param nextTab - The tab being navigated to
|
|
138
|
-
* @memberof WizardBaseComponent
|
|
139
|
-
*/
|
|
140
|
-
canGoToNextTab(nextTab) {
|
|
141
|
-
return this.isCurrentTabValid();
|
|
142
|
-
}
|
|
143
|
-
/**
|
|
144
|
-
* Used to determine whether navigation to the previous tab is prevented or not. Fired in previousTab(), but not when a tab is
|
|
145
|
-
* clicked or selected programmatically. By default, this checks the validity of the current tab's form model and
|
|
146
|
-
* prevents navigation if it is invalid. Can be overridden if different logic is needed.
|
|
147
|
-
* @param prevTab - The tab being navigated to
|
|
148
|
-
* @memberof WizardBaseComponent
|
|
149
|
-
*/
|
|
150
|
-
canGoToPreviousTab(prevTab) {
|
|
151
|
-
return this.isCurrentTabValid();
|
|
152
|
-
}
|
|
153
|
-
/**
|
|
154
|
-
* Used to determine whether navigating away from the current tab is prevented or not. Fired any time the selected tab
|
|
155
|
-
* changes in the tabGroup. By default, this checks the validity of the current tab's form model and prevents navigation
|
|
156
|
-
* if it is invalid. Can be overridden if different logic is needed.
|
|
157
|
-
* @memberof WizardBaseComponent
|
|
158
|
-
*/
|
|
159
|
-
canLeaveCurrentTab() {
|
|
160
|
-
return this.isCurrentTabValid();
|
|
161
|
-
}
|
|
162
|
-
/**
|
|
163
|
-
* Triggers validation on the current wizard tab's form control. Returns true if the form control is valid, false if not.
|
|
164
|
-
* Returns true if the formModelPath for the tab is not defined or no form control is found. Can be overridden if different
|
|
165
|
-
* logic is needed to validate the form control for the current tab.
|
|
166
|
-
* @memberof WizardBaseComponent
|
|
167
|
-
*/
|
|
168
|
-
isCurrentTabValid() {
|
|
169
|
-
if (this._currentTab && this._currentTab.formModelPath) {
|
|
170
|
-
let formModel = this.formGroup.get(this._currentTab.formModelPath);
|
|
171
|
-
if (formModel) {
|
|
172
|
-
formModel.markAllAsTouched();
|
|
173
|
-
return formModel.valid || formModel.disabled;
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
return true;
|
|
177
|
-
}
|
|
178
|
-
/**
|
|
179
|
-
* Fired if navigation to a tab succeeds. Hides the error banner by default, but can be overridden if logic is needed.
|
|
180
|
-
* @memberof WizardBaseComponent
|
|
181
|
-
*/
|
|
182
|
-
onTabChangeSuccess() {
|
|
183
|
-
this.updateButtons();
|
|
184
|
-
this.hideErrorBanner();
|
|
185
|
-
}
|
|
186
|
-
/**
|
|
187
|
-
* Fired if navigation to a tab fails. By default, shows the error banner with the default invalid form message, but
|
|
188
|
-
* can be overridden if different logic is needed.
|
|
189
|
-
* @memberof WizardBaseComponent
|
|
190
|
-
*/
|
|
191
|
-
onTabChangeFailed() {
|
|
192
|
-
this.showErrorBanner(this.defaultInvalidFormMessage);
|
|
193
|
-
}
|
|
194
|
-
/**
|
|
195
|
-
* Listen for when the tabGroup's selected item is changed (I.E. when a tab is clicked or selected programmatically)
|
|
196
|
-
* and navigate to that tab.
|
|
197
|
-
*/
|
|
198
|
-
subscribeToTabChanges() {
|
|
199
|
-
// Whenever the tabGroup's selected tab changes, go to the selected tab
|
|
200
|
-
this._tabGroup.selectedChanges.pipe(takeUntil(this.destroyed)).subscribe(tab => {
|
|
201
|
-
this.goToTab(tab);
|
|
202
|
-
});
|
|
203
|
-
}
|
|
204
|
-
/**
|
|
205
|
-
* Triggered when the tabGroup's selected item changes. If the current tab passes validation, updates
|
|
206
|
-
* the current tab to the selected tab.
|
|
207
|
-
* @param tab - the tab that was selected
|
|
208
|
-
*/
|
|
209
|
-
goToTab(tab) {
|
|
210
|
-
// Only continue if the current tab is not the tab that was selected. They are the same
|
|
211
|
-
// when we are resetting the tab group's selected tab back to the current tab when validation fails.
|
|
212
|
-
// Without this check, we could end up in an infinite loop.
|
|
213
|
-
if (tab !== this._currentTab) {
|
|
214
|
-
if (this.canLeaveCurrentTab()) {
|
|
215
|
-
// Mark the current tab as complete before switching
|
|
216
|
-
if (this._currentTab) {
|
|
217
|
-
this._currentTab.completed = true;
|
|
218
|
-
}
|
|
219
|
-
this.setCurrentTab(tab);
|
|
220
|
-
this.onTabChangeSuccess();
|
|
221
|
-
}
|
|
222
|
-
else {
|
|
223
|
-
// Because the tabGroup's selected tab is updated when a tab is clicked before we can run any form validation,
|
|
224
|
-
// we need to reset the selected tab back to the current tab if validation fails.
|
|
225
|
-
// Without this we would have no way to prevent the user from leaving the current tab if the form is invalid.
|
|
226
|
-
this._tabGroup.selected = this._currentTab;
|
|
227
|
-
this.onTabChangeFailed();
|
|
228
|
-
}
|
|
229
|
-
}
|
|
230
|
-
}
|
|
231
|
-
/**
|
|
232
|
-
* Updates the current tab, title, and help.
|
|
233
|
-
* @param tab Tab to set
|
|
234
|
-
*/
|
|
235
|
-
setCurrentTab(tab) {
|
|
236
|
-
this._currentTab = tab;
|
|
237
|
-
this.help = tab ? tab.help : undefined;
|
|
238
|
-
this.title = tab ? tab.title : undefined;
|
|
239
|
-
}
|
|
240
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: WizardBaseComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive }); }
|
|
241
|
-
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.13", type: WizardBaseComponent, usesInheritance: true, ngImport: i0 }); }
|
|
242
|
-
}
|
|
243
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: WizardBaseComponent, decorators: [{
|
|
244
|
-
type: Directive
|
|
245
|
-
}], ctorParameters: () => [{ type: i0.Injector }] });
|
|
246
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l6YXJkLWJhc2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL3NoYXJlZC93aXphcmQvd2l6YXJkLWJhc2Uvd2l6YXJkLWJhc2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQVksTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUNwQyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFHM0MsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFbkUsT0FBTyxFQUFFLGlCQUFpQixFQUFrQixNQUFNLDBDQUEwQyxDQUFDOztBQWU3RixNQUFNLE9BQWdCLG1CQUFvQixTQUFRLGlCQUFpQjtJQTBCakUsSUFBVyxRQUFRO1FBQ2pCLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQztJQUN4QixDQUFDO0lBQ0QsSUFBVyxRQUFRLENBQUMsS0FBZTtRQUNqQyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztJQUN6QixDQUFDO0lBT0QsSUFBVyxVQUFVO1FBQ25CLE9BQU8sSUFBSSxDQUFDLFdBQVcsQ0FBQztJQUMxQixDQUFDO0lBTUQsWUFBWSxRQUFrQjtRQUM1QixLQUFLLENBQUMsUUFBUSxDQUFDLENBQUM7UUE3Q1gsaUJBQVksR0FBWSxJQUFJLENBQUM7UUFDN0IsMEJBQXFCLEdBQVksS0FBSyxDQUFDO1FBRTlDLDJGQUEyRjtRQUNwRixhQUFRLEdBQVksSUFBSSxDQUFDO1FBRWhDLDhFQUE4RTtRQUN2RSx1QkFBa0IsR0FBWSxLQUFLLENBQUM7UUFFM0MsNERBQTREO1FBQ3JELGFBQVEsR0FBWSxLQUFLLENBQUM7UUFLMUIsZ0JBQVcsR0FBVyxRQUFRLENBQUM7UUFFL0IsYUFBUSxH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SSxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQzdCLElBQUksSUFBSSxDQUFDLGtCQUFrQixFQUFFLEVBQUUsQ0FBQztnQkFDOUIsb0RBQW9EO2dCQUNwRCxJQUFJLElBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztvQkFDckIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDO2dCQUNwQyxDQUFDO2dCQUNELElBQUksQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1lBQzVCLENBQUM7aUJBQU0sQ0FBQztnQkFDTiw4R0FBOEc7Z0JBQzlHLGlGQUFpRjtnQkFDakYsNkdBQTZHO2dCQUM3RyxJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDO2dCQUMzQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQztZQUMzQixDQUFDO1FBQ0gsQ0FBQztJQUNILENBQUM7SUFFRDs7O09BR0c7SUFDSyxhQUFhLENBQUMsR0FBZTtRQUNuQyxJQUFJLENBQUMsV0FBVyxHQUFHLEdBQUcsQ0FBQztRQUN2QixJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsU0FBUyxDQUFDO1FBQ3ZDLElBQUksQ0FBQyxLQUFLLEdBQUcsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxTQUFTLENBQUM7SUFDM0MsQ0FBQzsrR0F6Um1CLG1CQUFtQjttR0FBbkIsbUJBQW1COzs0RkFBbkIsbUJBQW1CO2tCQUR4QyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbmplY3RvciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgdXBwZXJGaXJzdCB9IGZyb20gJ2xvZGFzaCc7XG5pbXBvcnQgeyB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBOYXZHcm91cCB9IGZyb20gJy4uLy4uLy4uL2NvbnRyb2xzL25hdmlnYXRpb24vbmF2LWdyb3VwJztcbmltcG9ydCB7IE5hdkl0ZW0gfSBmcm9tICcuLi8uLi8uLi9jb250cm9scy9uYXZpZ2F0aW9uL25hdi1pdGVtJztcbmltcG9ydCB7IFRlbGVtZXRyeVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi9jb3JlL3RlbGVtZXRyeS5zZXJ2aWNlJztcbmltcG9ydCB7IEhlbHAgfSBmcm9tICcuLi8uLi8uLi9kaXNwbGF5L2hlbHAvaGVscC10eXBlcyc7XG5pbXBvcnQgeyBQYWdlQmFzZUNvbXBvbmVudCwgUGFnZUluaXRSZXN1bHQgfSBmcm9tICcuLi8uLi9wYWdlL3BhZ2UtYmFzZS9wYWdlLWJhc2UuY29tcG9uZW50JztcblxuZXhwb3J0IGludGVyZmFjZSBXaXphcmRUYWIgZXh0ZW5kcyBOYXZJdGVtIHtcbiAgLyoqXG4gICAqIFBhdGggdG8gYSBmb3JtIGdyb3VwL2FycmF5L2NvbnRyb2wgY29udGFpbmVkIGluIHRoZSBmb3JtJ3MgbWFpbiBmb3JtIGdyb3VwLlxuICAgKiBVc2VkIHRvIG1hcCBhIHRhYiB0byBpdCdzIGZvcm0gbW9kZWwgZm9yIGZvcm0gdmFsaWRhdGlvbiBpbiBXaXphcmRCYXNlQ29tcG9uZW50LlxuICAgKiBTZWUgaHR0cHM6Ly9hbmd1bGFyLmlvL2FwaS9mb3Jtcy9BYnN0cmFjdENvbnRyb2wjZ2V0LXVzYWdlLW5vdGVzIGZvciBkZXRhaWxzIG9uIHBhdGhzLlxuICAgKi9cbiAgZm9ybU1vZGVsUGF0aD86IHN0cmluZyB8IChzdHJpbmcgfCBudW1iZXIpW107XG4gIGhlbHA/OiBIZWxwO1xuICB0aXRsZT86IHN0cmluZztcbiAgY29tcGxldGVkPzogYm9vbGVhbjtcbn1cblxuQERpcmVjdGl2ZSgpXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgV2l6YXJkQmFzZUNvbXBvbmVudCBleHRlbmRzIFBhZ2VCYXNlQ29tcG9uZW50IHtcblxuICBwdWJsaWMgaXNXaXphcmRNb2RlOiBib29sZWFuID0gdHJ1ZTtcbiAgcHVibGljIHNob3dXaXphcmRTYXZlU3VjY2VzczogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKiBUcnVlIHdoZW4gdGhlcmUgYXJlIG5vIGN1c3RvbSBmaWVsZHMgb3Igd2hlbiBpbiB3aXphcmQgbW9kZSBvbiB0aGUgY3VzdG9tIGZpZWxkcyB0YWIgKi9cbiAgcHVibGljIHNob3dTYXZlOiBib29sZWFuID0gdHJ1ZTtcblxuICAvKiogVHJ1ZSB3aGVuIGluIHdpemFyZCBtb2RlIHlvdSBkbyBub3Qgd2FudCB0byBzaG93IHRoZSBuZXh0IG9yIHNhdmUgYnV0dG9uKi9cbiAgcHVibGljIGhpZGVOZXh0U2F2ZUJ1dHRvbjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIC8qKiBUcnVlIHdoZW4gaW4gd2l6YXJkIG1vZGUgYW5kIG9uIHRoZSBjdXN0b20gZmllbGRzIHRhYiAqL1xuICBwdWJsaWMgc2hvd0JhY2s6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAvKiogTGFiZWxzIGZvciB0aGUgY2FuY2VsLCBuZXh0IGFuZCBiYWNrIGJ1dHRvbnMgKi9cbiAgcHVibGljIG5leHRMYWJlbD86IHN0cmluZztcbiAgcHVibGljIGJhY2tMYWJlbD86IHN0cmluZztcbiAgcHVibGljIGNhbmNlbExhYmVsOiBzdHJpbmcgPSAnQ2FuY2VsJztcblxuICBwdWJsaWMgZGlhbG9nSWQ6IHN0cmluZyA9ICcnO1xuXG4gIC8qKlxuICAgKiBDb250YWlucyB0aGUgYXZhaWxhYmxlIHdpemFyZCB0YWJzLiBQYXNzZWQgdG8gVGFic0NvbXBvbmVudC5cbiAgICogQG1lbWJlcm9mIFdpemFyZEJhc2VDb21wb25lbnRcbiAgICovXG4gIHByaXZhdGUgX3RhYkdyb3VwITogTmF2R3JvdXA7XG4gIHB1YmxpYyBnZXQgdGFiR3JvdXAoKTogTmF2R3JvdXAge1xuICAgIHJldHVybiB0aGlzLl90YWJHcm91cDtcbiAgfVxuICBwdWJsaWMgc2V0IHRhYkdyb3VwKHZhbHVlOiBOYXZHcm91cCkge1xuICAgIHRoaXMuX3RhYkdyb3VwID0gdmFsdWU7XG4gIH1cblxuICAvKipcbiAgICogQ29udGFpbnMgdGhlIHRhYiB0aGF0IGlzIGN1cnJlbnRseSBzZWxlY3RlZC5cbiAgICogQG1lbWJlcm9mIFdpemFyZEJhc2VDb21wb25lbnRcbiAgICovXG4gIHByaXZhdGUgX2N1cnJlbnRUYWI/OiBXaXphcmRUYWI7XG4gIHB1YmxpYyBnZXQgY3VycmVudFRhYigpOiBXaXphcmRUYWIgfCB1bmRlZmluZWQge1xuICAgIHJldHVybiB0aGlzLl9jdXJyZW50VGFiO1xuICB9XG5cbiAgcHJvdGVjdGVkIGluaXRQcm9taXNlITogUHJvbWlzZTxXaXphcmRCYXNlQ29tcG9uZW50PjtcblxuICBwcm90ZWN0ZWQgdGVsZW1ldHJ5U2VydmljZTogVGVsZW1ldHJ5U2VydmljZTtcblxuICBjb25zdHJ1Y3RvcihpbmplY3RvcjogSW5qZWN0b3IpIHtcbiAgICBzdXBlcihpbmplY3Rvcik7XG5cbiAgICB0aGlzLnRlbGVtZXRyeVNlcnZpY2UgPSBpbmplY3Rvci5nZXQoVGVsZW1ldHJ5U2VydmljZSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgb25GaXJzdEluaXQoKSB7XG4gICAgdGhpcy5fdGFiR3JvdXAgPSB0aGlzLmNvbmZpZ3VyZVRhYnMoKTtcbiAgICB0aGlzLnNldEN1cnJlbnRUYWIodGhpcy5fdGFiR3JvdXAuc2VsZWN0ZWQpO1xuICAgIHRoaXMuc3Vic2NyaWJlVG9UYWJDaGFuZ2VzKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgYWJzdHJhY3Qgb25Jbml0KCk6IFByb21pc2U8UGFnZUluaXRSZXN1bHQ+O1xuXG4gIHByb3RlY3RlZCBvbldpemFyZFNhdmVTdWNjZXNzKCk6IHZvaWQgeyB9XG5cbiAgcHJvdGVjdGVkIGFzeW5jIG9uQWZ0ZXJWaWV3SW5pdCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICB0aGlzLnVwZGF0ZUJ1dHRvbnMoKTtcbiAgfVxuXG4gIC8vXG4gIC8vIFBhZ2VCYXNlIGxpZmVjeWNsZSBob29rcy4gT3ZlcnJpZGUgaW4gZGVyaXZlZCBjbGFzcyBpZiBuZWVkZWQuXG4gIC8vXG4gIHByb3RlY3RlZCBhc3luYyBhcHBseU1vZGVsVXBkYXRlcygpIHt9XG4gIHByb3RlY3RlZCBhc3luYyBzYXZlVG9BcGkoKTogUHJvbWlzZTxudW1iZXJ8dm9pZD4ge31cbiAgcHJvdGVjdGVkIG9uU2F2ZUNvbXBsZXRlKGVudGl0eUlkOiBudW1iZXIpIHt9XG5cbiAgcHVibGljIGFzeW5jIG9uU2F2ZShldmVudDogRXZlbnQpIHtcbiAgICAvLyBNYXJrIHRoZSBjdXJyZW50IHRhYiBhcyBjb21wbGV0ZWQgaWYgdGhlIHRhYiBpcyB2YWxpZCBiZWZvcmUgYXR0ZW1wdGluZyB0byBzYXZlLlxuICAgIGlmICh0aGlzLl9jdXJyZW50VGFiICYmIHRoaXMuaXNDdXJyZW50VGFiVmFsaWQoKSkge1xuICAgICAgdGhpcy5fY3VycmVudFRhYi5jb21wbGV0ZWQgPSB0cnVlO1xuICAgIH1cblxuICAgIGF3YWl0IHN1cGVyLm9uU2F2ZShldmVudCk7XG5cbiAgICBpZiAodGhpcy5zaG93V2l6YXJkU2F2ZVN1Y2Nlc3MpIHtcbiAgICAgIHRoaXMub25XaXphcmRTYXZlU3VjY2VzcygpO1xuICAgICAgdGhpcy50ZWxlbWV0cnlTZXJ2aWNlLnRyYWNrRXZlbnQoYCR7dGhpcy5kaWFsb2dJZH1fV2l6YXJkU3VjY2Vzc2ApO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiBOYXZpZ2F0ZXMgdG8gdGhlIG5leHQgdGFiIGluIHRoZSB0YWIgZ3JvdXAuIENhbGxzIGNhbkdvVG9OZXh0VGFiKCkgdG8gZGV0ZXJtaW5lIGlmIG5hdmlnYXRpbmcgdG8gdGhlIG5leHQgdGFiXG4gICAqIGlzIGFsbG93ZWQgb3Igbm90LiBJZiB0YWIgdmFsaWRhdGlvbiBzdWNjZWVkcywgZW5hYmxlcyB0aGUgbmV4dCB0YWIgKGlmIGl0IGlzIGRpc2FibGVkKSBhbmQgc2VsZWN0cyBpdC5cbiAgICogQG1lbWJlcm9mIFdpemFyZEJhc2VDb21wb25lbnRcbiAgICovXG4gIHB1YmxpYyBuZXh0VGFiKCkge1xuICAgIGNvbnN0IGN1cnJlbnRUYWJJbmRleCA9IHRoaXMuX3RhYkdyb3VwLml0ZW1zLmZpbmRJbmRleCh0ID0+IHQgPT09IHRoaXMuX2N1cnJlbnRUYWIpO1xuICAgIC8vIElmIHRoZXJlIGlzIGEgY3VycmVudCB0YWIgc2VsZWN0ZWQgYW5kIHRoZSBjdXJyZW50IHRhYiBpcyBub3QgdGhlIGxhc3QgdGFiLFxuICAgIC8vIHVwZGF0ZSB0aGUgc2VsZWN0ZWQgdGFiIGluIHRoZSB0YWJHcm91cCB0byB0aGUgbmV4dCB0YWJcbiAgICBpZiAoY3VycmVudFRhYkluZGV4ID4gLTEgJiYgY3VycmVudFRhYkluZGV4IDwgdGhpcy5fdGFiR3JvdXAuaXRlbXMubGVuZ3RoIC0gMSkge1xuICAgICAgY29uc3QgbmV4dFRhYiA9IHRoaXMuX3RhYkdyb3VwLml0ZW1zW2N1cnJlbnRUYWJJbmRleCArIDFdO1xuICAgICAgaWYgKHRoaXMuY2FuR29Ub05leHRUYWIobmV4dFRhYikpIHtcbiAgICAgICAgLy8gRW5hYmxlIHRoZSBuZXh0IHRhYiBpZiBpdCBpcyBkaXNhYmxlZFxuICAgICAgICBpZiAobmV4dFRhYi5kaXNhYmxlZCkge1xuICAgICAgICAgIG5leHRUYWIuZGlzYWJsZWQgPSBmYWxzZTtcbiAgICAgICAgfVxuICAgICAgICB0aGlzLl90YWJHcm91cC5zZWxlY3RlZCA9IG5leHRUYWI7XG4gICAgICAgIHRoaXMudGVsZW1ldHJ5U2VydmljZS50cmFja0V2ZW50KGAke3RoaXMuZGlhbG9nSWR9XyR7dXBwZXJGaXJzdChuZXh0VGFiLmlkPy50b1N0cmluZygpKX1gKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMub25UYWJDaGFuZ2VGYWlsZWQoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogTmF2aWdhdGVzIHRvIHRoZSBwcmV2aW91cyB0YWIgaW4gdGhlIHRhYiBncm91cC4gQ2FsbHMgY2FuR29Ub1ByZXZpb3VzVGFiKCkgdG8gZGV0ZXJtaW5lIGlmIG5hdmlnYXRpbmcgdG8gdGhlIHByZXZpb3VzIHRhYlxuICAgKiBpcyBhbGxvd2VkIG9yIG5vdC4gTmF2aWdhdGVzIHRvIHRoZSB0YWIgaWYgdmFsaWRhdGlvbiBzdWNjZWVkc1xuICAgKiBAbWVtYmVyb2YgV2l6YXJkQmFzZUNvbXBvbmVudFxuICAgKi9cbiAgcHVibGljIHByZXZpb3VzVGFiKCkge1xuICAgIGNvbnN0IGN1cnJlbnRUYWJJbmRleCA9IHRoaXMuX3RhYkdyb3VwLml0ZW1zLmZpbmRJbmRleCh0ID0+IHQgPT09IHRoaXMuX2N1cnJlbnRUYWIpO1xuICAgIC8vIElmIHRoZXJlIGlzIGEgY3VycmVudCB0YWIgc2VsZWN0ZWQgYW5kIHRoZSBjdXJyZW50IHRhYiBpcyBub3QgdGhlIGZpcnN0IHRhYixcbiAgICAvLyB1cGRhdGUgdGhlIHNlbGVjdGVkIHRhYiBpbiB0aGUgdGFiR3JvdXAgdG8gdGhlIHByZXZpb3VzIHRhYlxuICAgIGlmIChjdXJyZW50VGFiSW5kZXggPiAwICYmIGN1cnJlbnRUYWJJbmRleCA8IHRoaXMuX3RhYkdyb3VwLml0ZW1zLmxlbmd0aCkge1xuICAgICAgY29uc3QgcHJldlRhYiA9IHRoaXMuX3RhYkdyb3VwLml0ZW1zW2N1cnJlbnRUYWJJbmRleCAtIDFdO1xuICAgICAgaWYgKHRoaXMuY2FuR29Ub1ByZXZpb3VzVGFiKHByZXZUYWIpKSB7XG4gICAgICAgIHRoaXMuX3RhYkdyb3VwLnNlbGVjdGVkID0gcHJldlRhYjtcbiAgICAgICAgdGhpcy50ZWxlbWV0cnlTZXJ2aWNlLnRyYWNrRXZlbnQoYCR7dGhpcy5kaWFsb2dJZH1fJHt1cHBlckZpcnN0KHByZXZUYWIuaWQ/LnRvU3RyaW5nKCkpfWApO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5vblRhYkNoYW5nZUZhaWxlZCgpO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIHByb3RlY3RlZCB1cGRhdGVCdXR0b25zKCkge1xuICAgIGlmICh0aGlzLmlzV2l6YXJkTW9kZSkge1xuICAgICAgaWYgKHRoaXMuY3VycmVudFRhYikge1xuICAgICAgICBjb25zdCB0YWJJbmRleCA9IHRoaXMuX3RhYkdyb3VwLml0ZW1zLmZpbmRJbmRleCh0ID0+IHQgPT09IHRoaXMuY3VycmVudFRhYik7XG4gICAgICAgIGlmICh0YWJJbmRleCA+IDApIHtcbiAgICAgICAgICAvLyBTaG93IHRoZSBiYWNrIGJ1dHRvbiBhbmQgc2V0IHRoZSBsYWJlbCB0byB0aGUgcHJldmlvdXMgdGFiIHdoZW4gbm90IG9uIHRoZSBmaXJzdCB0YWJcbiAgICAgICAgICB0aGlzLnNob3dCYWNrID0gdHJ1ZTtcbiAgICAgICAgICBjb25zdCBwcmV2VGFiS2V5ID0gdGhpcy5fdGFiR3JvdXAuaXRlbXNbdGFiSW5kZXggLSAxXS5sYWJlbCE7XG4gICAgICAgICAgdGhpcy5iYWNrTGFiZWwgPSBgJHt0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudCgnQmFja19UQycpfTogJHt0aGlzLnRyYW5zbGF0ZVNlcnZpY2UuaW5zdGFudChwcmV2VGFiS2V5KX1gO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIEhpZGUgdGhlIGJhY2sgYnV0dG9uIHdoZW4gb24gdGhlIGZpcnN0IHRhYlxuICAgICAgICAgIHRoaXMuc2hvd0JhY2sgPSBmYWxzZTtcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICh0YWJJbmRleCA8IHRoaXMuX3RhYkdyb3VwLml0ZW1zLmxlbmd0aCAtIDEpIHtcbiAgICAgICAgICAvLyBTaG93IHRoZSBuZXh0IGJ1dHRvbiBhbmQgc2V0IHRoZSBsYWJlbCB0byB0aGUgbmV4dCB0YWIgd2hlbiBub3Qgb24gdGhlIGxhc3QgdGFiXG4gICAgICAgICAgdGhpcy5zaG93U2F2ZSA9IGZhbHNlO1xuICAgICAgICAgIGNvbnN0IG5leHRUYWJLZXkgPSB0aGlzLl90YWJHcm91cC5pdGVtc1t0YWJJbmRleCArIDFdLmxhYmVsITtcbiAgICAgICAgICB0aGlzLm5leHRMYWJlbCA9IGAke3RoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KCdOZXh0X1RDJyl9OiAke3RoaXMudHJhbnNsYXRlU2VydmljZS5pbnN0YW50KG5leHRUYWJLZXkpfWA7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgdGhpcy5uZXh0TGFiZWwgPSB1bmRlZmluZWQ7XG4gICAgICAgICAgLy8gU2hvdyB0aGUgc2F2ZSBidXR0b24gaW5zdGVhZCBvZiBuZXh0IHdoZW4gb24gdGhlIGxhc3QgdGFiXG4gICAgICAgICAgdGhpcy5zaG93U2F2ZSA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zaG93QmFjayA9IGZhbHNlO1xuICAgICAgdGhpcy5zaG93U2F2ZSA9IHRydWU7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqIFJlcXVpcmVkIHRvIGNvbmZpZ3VyZSB0aGUgdGFicyBhbmQgZGVmYXVsdCB0YWIgZm9yIHRoZSB3aXphcmQuIFJ1bnMgaW4gb25GaXJzdEluaXQsIGJlZm9yZSBvbkluaXQuXG4gICAqIEBtZW1iZXJvZiBXaXphcmRCYXNlQ29tcG9uZW50XG4gICAqL1xuICBwcm90ZWN0ZWQgYWJzdHJhY3QgY29uZmlndXJlVGFicygpOiBOYXZHcm91cDtcblxuICAvKipcbiAgICogVXNlZCB0byBkZXRlcm1pbmUgd2hldGhlciBuYXZpZ2F0aW9uIHRvIHRoZSBuZXh0IHRhYiBpcyBwcmV2ZW50ZWQgb3Igbm90LiBGaXJlZCBpbiBuZXh0VGFiKCksIGJ1dCBub3Qgd2hlbiBhIHRhYiBpc1xuICAgKiBjbGlja2VkIG9yIHNlbGVjdGVkIHByb2dyYW1tYXRpY2FsbHkuIEJ5IGRlZmF1bHQsIHRoaXMgY2hlY2tzIHRoZSB2YWxpZGl0eSBvZiB0aGUgY3VycmVudCB0YWIncyBmb3JtIG1vZGVsIGFuZFxuICAgKiBwcmV2ZW50cyBuYXZpZ2F0aW9uIGlmIGl0IGlzIGludmFsaWQuIENhbiBiZSBvdmVycmlkZGVuIGlmIGRpZmZlcmVudCBsb2dpYyBpcyBuZWVkZWQuXG4gICAqIEBwYXJhbSBuZXh0VGFiIC0gVGhlIHRhYiBiZWluZyBuYXZpZ2F0ZWQgdG9cbiAgICogQG1lbWJlcm9mIFdpemFyZEJhc2VDb21wb25lbnRcbiAgICovXG4gIHByb3RlY3RlZCBjYW5Hb1RvTmV4dFRhYihuZXh0VGFiOiBXaXphcmRUYWIpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pc0N1cnJlbnRUYWJWYWxpZCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFVzZWQgdG8gZGV0ZXJtaW5lIHdoZXRoZXIgbmF2aWdhdGlvbiB0byB0aGUgcHJldmlvdXMgdGFiIGlzIHByZXZlbnRlZCBvciBub3QuIEZpcmVkIGluIHByZXZpb3VzVGFiKCksIGJ1dCBub3Qgd2hlbiBhIHRhYiBpc1xuICAgKiBjbGlja2VkIG9yIHNlbGVjdGVkIHByb2dyYW1tYXRpY2FsbHkuIEJ5IGRlZmF1bHQsIHRoaXMgY2hlY2tzIHRoZSB2YWxpZGl0eSBvZiB0aGUgY3VycmVudCB0YWIncyBmb3JtIG1vZGVsIGFuZFxuICAgKiBwcmV2ZW50cyBuYXZpZ2F0aW9uIGlmIGl0IGlzIGludmFsaWQuIENhbiBiZSBvdmVycmlkZGVuIGlmIGRpZmZlcmVudCBsb2dpYyBpcyBuZWVkZWQuXG4gICAqIEBwYXJhbSBwcmV2VGFiIC0gVGhlIHRhYiBiZWluZyBuYXZpZ2F0ZWQgdG9cbiAgICogQG1lbWJlcm9mIFdpemFyZEJhc2VDb21wb25lbnRcbiAgICovXG4gIHByb3RlY3RlZCBjYW5Hb1RvUHJldmlvdXNUYWIocHJldlRhYjogV2l6YXJkVGFiKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuIHRoaXMuaXNDdXJyZW50VGFiVmFsaWQoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVc2VkIHRvIGRldGVybWluZSB3aGV0aGVyIG5hdmlnYXRpbmcgYXdheSBmcm9tIHRoZSBjdXJyZW50IHRhYiBpcyBwcmV2ZW50ZWQgb3Igbm90LiBGaXJlZCBhbnkgdGltZSB0aGUgc2VsZWN0ZWQgdGFiXG4gICAqIGNoYW5nZXMgaW4gdGhlIHRhYkdyb3VwLiBCeSBkZWZhdWx0LCB0aGlzIGNoZWNrcyB0aGUgdmFsaWRpdHkgb2YgdGhlIGN1cnJlbnQgdGFiJ3MgZm9ybSBtb2RlbCBhbmQgcHJldmVudHMgbmF2aWdhdGlvblxuICAgKiBpZiBpdCBpcyBpbnZhbGlkLiBDYW4gYmUgb3ZlcnJpZGRlbiBpZiBkaWZmZXJlbnQgbG9naWMgaXMgbmVlZGVkLlxuICAgKiBAbWVtYmVyb2YgV2l6YXJkQmFzZUNvbXBvbmVudFxuICAgKi9cbiAgcHJvdGVjdGVkIGNhbkxlYXZlQ3VycmVudFRhYigpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5pc0N1cnJlbnRUYWJWYWxpZCgpO1xuICB9XG5cbiAgLyoqXG4gICAqIFRyaWdnZXJzIHZhbGlkYXRpb24gb24gdGhlIGN1cnJlbnQgd2l6YXJkIHRhYidzIGZvcm0gY29udHJvbC4gUmV0dXJucyB0cnVlIGlmIHRoZSBmb3JtIGNvbnRyb2wgaXMgdmFsaWQsIGZhbHNlIGlmIG5vdC5cbiAgICogUmV0dXJucyB0cnVlIGlmIHRoZSBmb3JtTW9kZWxQYXRoIGZvciB0aGUgdGFiIGlzIG5vdCBkZWZpbmVkIG9yIG5vIGZvcm0gY29udHJvbCBpcyBmb3VuZC4gQ2FuIGJlIG92ZXJyaWRkZW4gaWYgZGlmZmVyZW50XG4gICAqIGxvZ2ljIGlzIG5lZWRlZCB0byB2YWxpZGF0ZSB0aGUgZm9ybSBjb250cm9sIGZvciB0aGUgY3VycmVudCB0YWIuXG4gICAqIEBtZW1iZXJvZiBXaXphcmRCYXNlQ29tcG9uZW50XG4gICAqL1xuICBwcm90ZWN0ZWQgaXNDdXJyZW50VGFiVmFsaWQoKTogYm9vbGVhbiB7XG4gICAgaWYgKHRoaXMuX2N1cnJlbnRUYWIgJiYgdGhpcy5fY3VycmVudFRhYi5mb3JtTW9kZWxQYXRoKSB7XG4gICAgICBsZXQgZm9ybU1vZGVsID0gdGhpcy5mb3JtR3JvdXAuZ2V0KHRoaXMuX2N1cnJlbnRUYWIuZm9ybU1vZGVsUGF0aCk7XG4gICAgICBpZiAoZm9ybU1vZGVsKSB7XG4gICAgICAgIGZvcm1Nb2RlbC5tYXJrQWxsQXNUb3VjaGVkKCk7XG4gICAgICAgIHJldHVybiBmb3JtTW9kZWwudmFsaWQgfHwgZm9ybU1vZGVsLmRpc2FibGVkO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdHJ1ZTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGaXJlZCBpZiBuYXZpZ2F0aW9uIHRvIGEgdGFiIHN1Y2NlZWRzLiBIaWRlcyB0aGUgZXJyb3IgYmFubmVyIGJ5IGRlZmF1bHQsIGJ1dCBjYW4gYmUgb3ZlcnJpZGRlbiBpZiBsb2dpYyBpcyBuZWVkZWQuXG4gICAqIEBtZW1iZXJvZiBXaXphcmRCYXNlQ29tcG9uZW50XG4gICAqL1xuICBwcm90ZWN0ZWQgb25UYWJDaGFuZ2VTdWNjZXNzKCk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlQnV0dG9ucygpO1xuICAgIHRoaXMuaGlkZUVycm9yQmFubmVyKCk7XG4gIH1cblxuICAvKipcbiAgICogRmlyZWQgaWYgbmF2aWdhdGlvbiB0byBhIHRhYiBmYWlscy4gQnkgZGVmYXVsdCwgc2hvd3MgdGhlIGVycm9yIGJhbm5lciB3aXRoIHRoZSBkZWZhdWx0IGludmFsaWQgZm9ybSBtZXNzYWdlLCBidXRcbiAgICogY2FuIGJlIG92ZXJyaWRkZW4gaWYgZGlmZmVyZW50IGxvZ2ljIGlzIG5lZWRlZC5cbiAgICogQG1lbWJlcm9mIFdpemFyZEJhc2VDb21wb25lbnRcbiAgICovXG4gIHByb3RlY3RlZCBvblRhYkNoYW5nZUZhaWxlZCgpOiB2b2lkIHtcbiAgICB0aGlzLnNob3dFcnJvckJhbm5lcih0aGlzLmRlZmF1bHRJbnZhbGlkRm9ybU1lc3NhZ2UpO1xuICB9XG5cbiAgLyoqXG4gICAqIExpc3RlbiBmb3Igd2hlbiB0aGUgdGFiR3JvdXAncyBzZWxlY3RlZCBpdGVtIGlzIGNoYW5nZWQgKEkuRS4gd2hlbiBhIHRhYiBpcyBjbGlja2VkIG9yIHNlbGVjdGVkIHByb2dyYW1tYXRpY2FsbHkpXG4gICAqIGFuZCBuYXZpZ2F0ZSB0byB0aGF0IHRhYi5cbiAgICovXG4gIHByaXZhdGUgc3Vic2NyaWJlVG9UYWJDaGFuZ2VzKCkge1xuICAgIC8vIFdoZW5ldmVyIHRoZSB0YWJHcm91cCdzIHNlbGVjdGVkIHRhYiBjaGFuZ2VzLCBnbyB0byB0aGUgc2VsZWN0ZWQgdGFiXG4gICAgdGhpcy5fdGFiR3JvdXAuc2VsZWN0ZWRDaGFuZ2VzLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkKSkuc3Vic2NyaWJlKHRhYiA9PiB7XG4gICAgICB0aGlzLmdvVG9UYWIodGFiKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUcmlnZ2VyZWQgd2hlbiB0aGUgdGFiR3JvdXAncyBzZWxlY3RlZCBpdGVtIGNoYW5nZXMuIElmIHRoZSBjdXJyZW50IHRhYiBwYXNzZXMgdmFsaWRhdGlvbiwgdXBkYXRlc1xuICAgKiB0aGUgY3VycmVudCB0YWIgdG8gdGhlIHNlbGVjdGVkIHRhYi5cbiAgICogQHBhcmFtIHRhYiAtIHRoZSB0YWIgdGhhdCB3YXMgc2VsZWN0ZWRcbiAgICovXG4gIHByaXZhdGUgZ29Ub1RhYih0YWI6IFdpemFyZFRhYikge1xuICAgIC8vIE9ubHkgY29udGludWUgaWYgdGhlIGN1cnJlbnQgdGFiIGlzIG5vdCB0aGUgdGFiIHRoYXQgd2FzIHNlbGVjdGVkLiBUaGV5IGFyZSB0aGUgc2FtZVxuICAgIC8vIHdoZW4gd2UgYXJlIHJlc2V0dGluZyB0aGUgdGFiIGdyb3VwJ3Mgc2VsZWN0ZWQgdGFiIGJhY2sgdG8gdGhlIGN1cnJlbnQgdGFiIHdoZW4gdmFsaWRhdGlvbiBmYWlscy5cbiAgICAvLyBXaXRob3V0IHRoaXMgY2hlY2ssIHdlIGNvdWxkIGVuZCB1cCBpbiBhbiBpbmZpbml0ZSBsb29wLlxuICAgIGlmICh0YWIgIT09IHRoaXMuX2N1cnJlbnRUYWIpIHtcbiAgICAgIGlmICh0aGlzLmNhbkxlYXZlQ3VycmVudFRhYigpKSB7XG4gICAgICAgIC8vIE1hcmsgdGhlIGN1cnJlbnQgdGFiIGFzIGNvbXBsZXRlIGJlZm9yZSBzd2l0Y2hpbmdcbiAgICAgICAgaWYgKHRoaXMuX2N1cnJlbnRUYWIpIHtcbiAgICAgICAgICB0aGlzLl9jdXJyZW50VGFiLmNvbXBsZXRlZCA9IHRydWU7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5zZXRDdXJyZW50VGFiKHRhYik7XG4gICAgICAgIHRoaXMub25UYWJDaGFuZ2VTdWNjZXNzKCk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICAvLyBCZWNhdXNlIHRoZSB0YWJHcm91cCdzIHNlbGVjdGVkIHRhYiBpcyB1cGRhdGVkIHdoZW4gYSB0YWIgaXMgY2xpY2tlZCBiZWZvcmUgd2UgY2FuIHJ1biBhbnkgZm9ybSB2YWxpZGF0aW9uLFxuICAgICAgICAvLyB3ZSBuZWVkIHRvIHJlc2V0IHRoZSBzZWxlY3RlZCB0YWIgYmFjayB0byB0aGUgY3VycmVudCB0YWIgaWYgdmFsaWRhdGlvbiBmYWlscy5cbiAgICAgICAgLy8gV2l0aG91dCB0aGlzIHdlIHdvdWxkIGhhdmUgbm8gd2F5IHRvIHByZXZlbnQgdGhlIHVzZXIgZnJvbSBsZWF2aW5nIHRoZSBjdXJyZW50IHRhYiBpZiB0aGUgZm9ybSBpcyBpbnZhbGlkLlxuICAgICAgICB0aGlzLl90YWJHcm91cC5zZWxlY3RlZCA9IHRoaXMuX2N1cnJlbnRUYWI7XG4gICAgICAgIHRoaXMub25UYWJDaGFuZ2VGYWlsZWQoKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlcyB0aGUgY3VycmVudCB0YWIsIHRpdGxlLCBhbmQgaGVscC5cbiAgICogQHBhcmFtIHRhYiBUYWIgdG8gc2V0XG4gICAqL1xuICBwcml2YXRlIHNldEN1cnJlbnRUYWIodGFiPzogV2l6YXJkVGFiKSB7XG4gICAgdGhpcy5fY3VycmVudFRhYiA9IHRhYjtcbiAgICB0aGlzLmhlbHAgPSB0YWIgPyB0YWIuaGVscCA6IHVuZGVmaW5lZDtcbiAgICB0aGlzLnRpdGxlID0gdGFiID8gdGFiLnRpdGxlIDogdW5kZWZpbmVkO1xuICB9XG59XG4iXX0=
|
|
@@ -1,68 +0,0 @@
|
|
|
1
|
-
import { Component, EventEmitter, Input, Output } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/common";
|
|
4
|
-
import * as i2 from "../../../controls/button/button.component";
|
|
5
|
-
export class WizardButtonsComponent {
|
|
6
|
-
constructor() {
|
|
7
|
-
this.nextLabel = 'Next_TC';
|
|
8
|
-
this.backLabel = 'Back_TC';
|
|
9
|
-
this.cancelLabel = 'Cancel';
|
|
10
|
-
this.saveLabel = 'Save';
|
|
11
|
-
this.cancelId = 'cancelWizardDialog';
|
|
12
|
-
this.saveId = 'saveWizardDialog';
|
|
13
|
-
this.tabindex = 0;
|
|
14
|
-
this.cancel = new EventEmitter();
|
|
15
|
-
this.save = new EventEmitter();
|
|
16
|
-
this.nextTab = new EventEmitter();
|
|
17
|
-
this.previousTab = new EventEmitter();
|
|
18
|
-
}
|
|
19
|
-
onCancel() {
|
|
20
|
-
this.cancel.emit();
|
|
21
|
-
}
|
|
22
|
-
onSave(event) {
|
|
23
|
-
this.save.emit(event);
|
|
24
|
-
}
|
|
25
|
-
onPreviousTab() {
|
|
26
|
-
this.previousTab.emit();
|
|
27
|
-
}
|
|
28
|
-
onNextTab() {
|
|
29
|
-
this.nextTab.emit();
|
|
30
|
-
}
|
|
31
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: WizardButtonsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
32
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: WizardButtonsComponent, selector: "ec-wizard-buttons", inputs: { nextLabel: "nextLabel", backLabel: "backLabel", cancelLabel: "cancelLabel", saveLabel: "saveLabel", cancelId: "cancelId", saveId: "saveId", tabindex: "tabindex", status: "status", showBack: "showBack", showSave: "showSave", hideNextSaveButton: "hideNextSaveButton" }, outputs: { cancel: "cancel", save: "save", nextTab: "nextTab", previousTab: "previousTab" }, ngImport: i0, template: "<ec-button id=\"{{saveId}}\"\n class=\"ml-2\"\n *ngIf=\"!hideNextSaveButton\"\n type=\"primary\"\n [label]=\"(!showSave ? nextLabel : saveLabel)\"\n [tabindex]=\"!tabindex ? 0 : tabindex\"\n (clicked)=\"!showSave ? onNextTab() : onSave($event)\"\n [disabled]=\"status?.status === 'pending' || status?.status === 'error'\">\n</ec-button>\n<ec-button id=\"previousTab\"\n class=\"ml-2\"\n *ngIf=\"showBack\"\n type=\"secondary\"\n [label]=\"backLabel\"\n [tabindex]=\"!tabindex ? 0 : tabindex+1\"\n (clicked)=\"onPreviousTab()\">\n</ec-button>\n<ec-button id=\"{{cancelId}}\"\n type=\"secondary\"\n [label]=\"cancelLabel\"\n [tabindex]=\"!tabindex ? 0 : tabindex+2\"\n (clicked)=\"onCancel()\">\n</ec-button>\n", styles: [":host{display:flex;flex-direction:row-reverse}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ButtonComponent, selector: "ec-button", inputs: ["id", "disabled", "lockButton", "icon", "iconColor", "label", "badge", "tabindex", "type", "pending", "pendingIcon", "customTemplate", "isSubmit", "autofocus"], outputs: ["clicked"] }] }); }
|
|
33
|
-
}
|
|
34
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: WizardButtonsComponent, decorators: [{
|
|
35
|
-
type: Component,
|
|
36
|
-
args: [{ selector: 'ec-wizard-buttons', template: "<ec-button id=\"{{saveId}}\"\n class=\"ml-2\"\n *ngIf=\"!hideNextSaveButton\"\n type=\"primary\"\n [label]=\"(!showSave ? nextLabel : saveLabel)\"\n [tabindex]=\"!tabindex ? 0 : tabindex\"\n (clicked)=\"!showSave ? onNextTab() : onSave($event)\"\n [disabled]=\"status?.status === 'pending' || status?.status === 'error'\">\n</ec-button>\n<ec-button id=\"previousTab\"\n class=\"ml-2\"\n *ngIf=\"showBack\"\n type=\"secondary\"\n [label]=\"backLabel\"\n [tabindex]=\"!tabindex ? 0 : tabindex+1\"\n (clicked)=\"onPreviousTab()\">\n</ec-button>\n<ec-button id=\"{{cancelId}}\"\n type=\"secondary\"\n [label]=\"cancelLabel\"\n [tabindex]=\"!tabindex ? 0 : tabindex+2\"\n (clicked)=\"onCancel()\">\n</ec-button>\n", styles: [":host{display:flex;flex-direction:row-reverse}\n"] }]
|
|
37
|
-
}], ctorParameters: () => [], propDecorators: { nextLabel: [{
|
|
38
|
-
type: Input
|
|
39
|
-
}], backLabel: [{
|
|
40
|
-
type: Input
|
|
41
|
-
}], cancelLabel: [{
|
|
42
|
-
type: Input
|
|
43
|
-
}], saveLabel: [{
|
|
44
|
-
type: Input
|
|
45
|
-
}], cancelId: [{
|
|
46
|
-
type: Input
|
|
47
|
-
}], saveId: [{
|
|
48
|
-
type: Input
|
|
49
|
-
}], tabindex: [{
|
|
50
|
-
type: Input
|
|
51
|
-
}], status: [{
|
|
52
|
-
type: Input
|
|
53
|
-
}], showBack: [{
|
|
54
|
-
type: Input
|
|
55
|
-
}], showSave: [{
|
|
56
|
-
type: Input
|
|
57
|
-
}], hideNextSaveButton: [{
|
|
58
|
-
type: Input
|
|
59
|
-
}], cancel: [{
|
|
60
|
-
type: Output
|
|
61
|
-
}], save: [{
|
|
62
|
-
type: Output
|
|
63
|
-
}], nextTab: [{
|
|
64
|
-
type: Output
|
|
65
|
-
}], previousTab: [{
|
|
66
|
-
type: Output
|
|
67
|
-
}] } });
|
|
68
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l6YXJkLWJ1dHRvbnMuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL3NoYXJlZC93aXphcmQvd2l6YXJkLWJ1dHRvbnMvd2l6YXJkLWJ1dHRvbnMuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL3NoYXJlZC93aXphcmQvd2l6YXJkLWJ1dHRvbnMvd2l6YXJkLWJ1dHRvbnMuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQVF2RSxNQUFNLE9BQU8sc0JBQXNCO0lBdUJqQztRQXJCZ0IsY0FBUyxHQUFZLFNBQVMsQ0FBQztRQUMvQixjQUFTLEdBQVksU0FBUyxDQUFDO1FBQy9CLGdCQUFXLEdBQVksUUFBUSxDQUFDO1FBQ2hDLGNBQVMsR0FBWSxNQUFNLENBQUM7UUFFNUIsYUFBUSxHQUFZLG9CQUFvQixDQUFDO1FBQ3pDLFdBQU0sR0FBWSxrQkFBa0IsQ0FBQztRQUVyQyxhQUFRLEdBQVcsQ0FBQyxDQUFDO1FBUXBCLFdBQU0sR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQUMvQyxTQUFJLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUFDN0MsWUFBTyxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBQ2hELGdCQUFXLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7SUFFckQsQ0FBQztJQUVWLFFBQVE7UUFDYixJQUFJLENBQUMsTUFBTSxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3JCLENBQUM7SUFFTSxNQUFNLENBQUMsS0FBVTtRQUN0QixJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUN4QixDQUFDO0lBRU0sYUFBYTtRQUNsQixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQzFCLENBQUM7SUFFTSxTQUFTO1FBQ2QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQztJQUN0QixDQUFDOytHQXZDVSxzQkFBc0I7bUdBQXRCLHNCQUFzQiw0YUNSbkMsZzNCQXVCQTs7NEZEZmEsc0JBQXNCO2tCQUxsQyxTQUFTOytCQUNFLG1CQUFtQjt3REFNYixTQUFTO3NCQUF4QixLQUFLO2dCQUNVLFNBQVM7c0JBQXhCLEtBQUs7Z0JBQ1UsV0FBVztzQkFBMUIsS0FBSztnQkFDVSxTQUFTO3NCQUF4QixLQUFLO2dCQUVVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBQ1UsTUFBTTtzQkFBckIsS0FBSztnQkFFVSxRQUFRO3NCQUF2QixLQUFLO2dCQUVVLE1BQU07c0JBQXJCLEtBQUs7Z0JBRVUsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxRQUFRO3NCQUF2QixLQUFLO2dCQUNVLGtCQUFrQjtzQkFBakMsS0FBSztnQkFFVyxNQUFNO3NCQUF0QixNQUFNO2dCQUNVLElBQUk7c0JBQXBCLE1BQU07Z0JBQ1UsT0FBTztzQkFBdkIsTUFBTTtnQkFDVSxXQUFXO3NCQUEzQixNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERpc3BsYXlTdGF0dXMgfSBmcm9tICcuLi8uLi9kaXNwbGF5JztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnZWMtd2l6YXJkLWJ1dHRvbnMnLFxuICB0ZW1wbGF0ZVVybDogJy4vd2l6YXJkLWJ1dHRvbnMuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi93aXphcmQtYnV0dG9ucy5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIFdpemFyZEJ1dHRvbnNDb21wb25lbnQge1xuXG4gIEBJbnB1dCgpIHB1YmxpYyBuZXh0TGFiZWw/OiBzdHJpbmcgPSAnTmV4dF9UQyc7XG4gIEBJbnB1dCgpIHB1YmxpYyBiYWNrTGFiZWw/OiBzdHJpbmcgPSAnQmFja19UQyc7XG4gIEBJbnB1dCgpIHB1YmxpYyBjYW5jZWxMYWJlbD86IHN0cmluZyA9ICdDYW5jZWwnO1xuICBASW5wdXQoKSBwdWJsaWMgc2F2ZUxhYmVsPzogc3RyaW5nID0gJ1NhdmUnO1xuXG4gIEBJbnB1dCgpIHB1YmxpYyBjYW5jZWxJZD86IHN0cmluZyA9ICdjYW5jZWxXaXphcmREaWFsb2cnO1xuICBASW5wdXQoKSBwdWJsaWMgc2F2ZUlkPzogc3RyaW5nID0gJ3NhdmVXaXphcmREaWFsb2cnO1xuXG4gIEBJbnB1dCgpIHB1YmxpYyB0YWJpbmRleDogbnVtYmVyID0gMDtcblxuICBASW5wdXQoKSBwdWJsaWMgc3RhdHVzPzogRGlzcGxheVN0YXR1cztcblxuICBASW5wdXQoKSBwdWJsaWMgc2hvd0JhY2s/OiBib29sZWFuO1xuICBASW5wdXQoKSBwdWJsaWMgc2hvd1NhdmU/OiBib29sZWFuO1xuICBASW5wdXQoKSBwdWJsaWMgaGlkZU5leHRTYXZlQnV0dG9uPzogYm9vbGVhbjtcblxuICBAT3V0cHV0KCkgcHVibGljIGNhbmNlbDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBwdWJsaWMgc2F2ZTogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBwdWJsaWMgbmV4dFRhYjogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIEBPdXRwdXQoKSBwdWJsaWMgcHJldmlvdXNUYWI6IEV2ZW50RW1pdHRlcjxhbnk+ID0gbmV3IEV2ZW50RW1pdHRlcigpO1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG5cbiAgcHVibGljIG9uQ2FuY2VsKCkge1xuICAgIHRoaXMuY2FuY2VsLmVtaXQoKTtcbiAgfVxuXG4gIHB1YmxpYyBvblNhdmUoZXZlbnQ6IGFueSkge1xuICAgIHRoaXMuc2F2ZS5lbWl0KGV2ZW50KTtcbiAgfVxuXG4gIHB1YmxpYyBvblByZXZpb3VzVGFiKCkge1xuICAgIHRoaXMucHJldmlvdXNUYWIuZW1pdCgpO1xuICB9XG5cbiAgcHVibGljIG9uTmV4dFRhYigpIHtcbiAgICB0aGlzLm5leHRUYWIuZW1pdCgpO1xuICB9XG59XG4iLCI8ZWMtYnV0dG9uIGlkPVwie3tzYXZlSWR9fVwiXG4gICAgICAgICAgIGNsYXNzPVwibWwtMlwiXG4gICAgICAgICAgICpuZ0lmPVwiIWhpZGVOZXh0U2F2ZUJ1dHRvblwiXG4gICAgICAgICAgIHR5cGU9XCJwcmltYXJ5XCJcbiAgICAgICAgICAgW2xhYmVsXT1cIighc2hvd1NhdmUgPyBuZXh0TGFiZWwgOiBzYXZlTGFiZWwpXCJcbiAgICAgICAgICAgW3RhYmluZGV4XT1cIiF0YWJpbmRleCA/IDAgOiB0YWJpbmRleFwiXG4gICAgICAgICAgIChjbGlja2VkKT1cIiFzaG93U2F2ZSA/IG9uTmV4dFRhYigpIDogb25TYXZlKCRldmVudClcIlxuICAgICAgICAgICBbZGlzYWJsZWRdPVwic3RhdHVzPy5zdGF0dXMgPT09ICdwZW5kaW5nJyB8fCBzdGF0dXM/LnN0YXR1cyA9PT0gJ2Vycm9yJ1wiPlxuPC9lYy1idXR0b24+XG48ZWMtYnV0dG9uIGlkPVwicHJldmlvdXNUYWJcIlxuICAgICAgICAgICBjbGFzcz1cIm1sLTJcIlxuICAgICAgICAgICAqbmdJZj1cInNob3dCYWNrXCJcbiAgICAgICAgICAgdHlwZT1cInNlY29uZGFyeVwiXG4gICAgICAgICAgIFtsYWJlbF09XCJiYWNrTGFiZWxcIlxuICAgICAgICAgICBbdGFiaW5kZXhdPVwiIXRhYmluZGV4ID8gMCA6IHRhYmluZGV4KzFcIlxuICAgICAgICAgICAoY2xpY2tlZCk9XCJvblByZXZpb3VzVGFiKClcIj5cbjwvZWMtYnV0dG9uPlxuPGVjLWJ1dHRvbiBpZD1cInt7Y2FuY2VsSWR9fVwiXG4gICAgICAgICAgIHR5cGU9XCJzZWNvbmRhcnlcIlxuICAgICAgICAgICBbbGFiZWxdPVwiY2FuY2VsTGFiZWxcIlxuICAgICAgICAgICBbdGFiaW5kZXhdPVwiIXRhYmluZGV4ID8gMCA6IHRhYmluZGV4KzJcIlxuICAgICAgICAgICAoY2xpY2tlZCk9XCJvbkNhbmNlbCgpXCI+XG48L2VjLWJ1dHRvbj5cbiJdfQ==
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { Component, Input } from '@angular/core';
|
|
2
|
-
import * as i0 from "@angular/core";
|
|
3
|
-
import * as i1 from "@angular/common";
|
|
4
|
-
import * as i2 from "@ngx-translate/core";
|
|
5
|
-
export class WizardProgressComponent {
|
|
6
|
-
constructor() { }
|
|
7
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: WizardProgressComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
8
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.13", type: WizardProgressComponent, selector: "ec-wizard-progress", inputs: { tabGroup: "tabGroup", currentTab: "currentTab" }, ngImport: i0, template: "<div *ngFor=\"let tab of tabGroup?.items; index as index; first as isFirst; last as isLast\"\n class=\"progress-tab\"\n [class.ml-2]=\"!isFirst\"\n [class.is-active]=\"currentTab?.id === tab.id\">\n\n <i *ngIf=\"tab.completed\"\n class=\"ec-icon icon-check-circle mr-1 font-color-success\"></i>\n <span *ngIf=\"!tab.completed\">{{index+1}}. </span>\n <span>{{tab.label | translate}}</span>\n <i *ngIf=\"!isLast\"\n class=\"ec-icon icon-angle-down rotate-270 ml-2\"></i>\n</div>", styles: [":host{display:flex;align-items:center;padding:0 1rem}.progress-tab{display:flex;align-items:center}.progress-tab.is-active{font-weight:700}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }] }); }
|
|
9
|
-
}
|
|
10
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.13", ngImport: i0, type: WizardProgressComponent, decorators: [{
|
|
11
|
-
type: Component,
|
|
12
|
-
args: [{ selector: 'ec-wizard-progress', template: "<div *ngFor=\"let tab of tabGroup?.items; index as index; first as isFirst; last as isLast\"\n class=\"progress-tab\"\n [class.ml-2]=\"!isFirst\"\n [class.is-active]=\"currentTab?.id === tab.id\">\n\n <i *ngIf=\"tab.completed\"\n class=\"ec-icon icon-check-circle mr-1 font-color-success\"></i>\n <span *ngIf=\"!tab.completed\">{{index+1}}. </span>\n <span>{{tab.label | translate}}</span>\n <i *ngIf=\"!isLast\"\n class=\"ec-icon icon-angle-down rotate-270 ml-2\"></i>\n</div>", styles: [":host{display:flex;align-items:center;padding:0 1rem}.progress-tab{display:flex;align-items:center}.progress-tab.is-active{font-weight:700}\n"] }]
|
|
13
|
-
}], ctorParameters: () => [], propDecorators: { tabGroup: [{
|
|
14
|
-
type: Input
|
|
15
|
-
}], currentTab: [{
|
|
16
|
-
type: Input
|
|
17
|
-
}] } });
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2l6YXJkLXByb2dyZXNzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL2xpYi9zaGFyZWQvd2l6YXJkL3dpemFyZC1wcm9ncmVzcy93aXphcmQtcHJvZ3Jlc3MuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29tcG9uZW50cy9zcmMvbGliL3NoYXJlZC93aXphcmQvd2l6YXJkLXByb2dyZXNzL3dpemFyZC1wcm9ncmVzcy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQzs7OztBQVNqRCxNQUFNLE9BQU8sdUJBQXVCO0lBS2xDLGdCQUFnQixDQUFDOytHQUxOLHVCQUF1QjttR0FBdkIsdUJBQXVCLHNIQ1RwQyxrZ0JBV007OzRGREZPLHVCQUF1QjtrQkFMbkMsU0FBUzsrQkFDRSxvQkFBb0I7d0RBTWQsUUFBUTtzQkFBdkIsS0FBSztnQkFDVSxVQUFVO3NCQUF6QixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTmF2R3JvdXAgfSBmcm9tICcuLi8uLi8uLi9jb250cm9scy9uYXZpZ2F0aW9uL25hdi1ncm91cCc7XG5pbXBvcnQgeyBXaXphcmRUYWIgfSBmcm9tICcuLi93aXphcmQtYmFzZS93aXphcmQtYmFzZS5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdlYy13aXphcmQtcHJvZ3Jlc3MnLFxuICB0ZW1wbGF0ZVVybDogJy4vd2l6YXJkLXByb2dyZXNzLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vd2l6YXJkLXByb2dyZXNzLmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgV2l6YXJkUHJvZ3Jlc3NDb21wb25lbnQge1xuXG4gIEBJbnB1dCgpIHB1YmxpYyB0YWJHcm91cD86IE5hdkdyb3VwO1xuICBASW5wdXQoKSBwdWJsaWMgY3VycmVudFRhYj86IFdpemFyZFRhYjtcblxuICBjb25zdHJ1Y3RvcigpIHsgfVxufVxuIiwiPGRpdiAqbmdGb3I9XCJsZXQgdGFiIG9mIHRhYkdyb3VwPy5pdGVtczsgaW5kZXggYXMgaW5kZXg7IGZpcnN0IGFzIGlzRmlyc3Q7IGxhc3QgYXMgaXNMYXN0XCJcbiAgICAgY2xhc3M9XCJwcm9ncmVzcy10YWJcIlxuICAgICBbY2xhc3MubWwtMl09XCIhaXNGaXJzdFwiXG4gICAgIFtjbGFzcy5pcy1hY3RpdmVdPVwiY3VycmVudFRhYj8uaWQgPT09IHRhYi5pZFwiPlxuXG4gICA8aSAqbmdJZj1cInRhYi5jb21wbGV0ZWRcIlxuICAgICAgY2xhc3M9XCJlYy1pY29uIGljb24tY2hlY2stY2lyY2xlIG1yLTEgZm9udC1jb2xvci1zdWNjZXNzXCI+PC9pPlxuICAgPHNwYW4gKm5nSWY9XCIhdGFiLmNvbXBsZXRlZFwiPnt7aW5kZXgrMX19LiZuYnNwOzwvc3Bhbj5cbiAgIDxzcGFuPnt7dGFiLmxhYmVsIHwgdHJhbnNsYXRlfX08L3NwYW4+XG4gICA8aSAqbmdJZj1cIiFpc0xhc3RcIlxuICAgICAgY2xhc3M9XCJlYy1pY29uIGljb24tYW5nbGUtZG93biByb3RhdGUtMjcwIG1sLTJcIj48L2k+XG48L2Rpdj4iXX0=
|
package/esm2022/public-api.mjs
DELETED
|
@@ -1,115 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* Public API Surface of @energycap/components
|
|
3
|
-
*/
|
|
4
|
-
export * from './lib/components.module';
|
|
5
|
-
export * from './lib/controls/banner/banner.component';
|
|
6
|
-
export * from './lib/controls/button/button.component';
|
|
7
|
-
export * from './lib/controls/button/copy-button.directive';
|
|
8
|
-
export * from './lib/controls/button/copy-table-button.directive';
|
|
9
|
-
export * from './lib/controls/calendar/calendar.component';
|
|
10
|
-
export * from './lib/controls/calendar/calendar.types';
|
|
11
|
-
export * from './lib/controls/checkbox/checkbox.component';
|
|
12
|
-
export * from './lib/controls/collapsible-toggle/collapsible-toggle.component';
|
|
13
|
-
export * from './lib/controls/combobox/combobox.component';
|
|
14
|
-
export * from './lib/controls/date-input/date-input.component';
|
|
15
|
-
export * from './lib/controls/date-input/date-input.types';
|
|
16
|
-
export * from './lib/controls/dropdown/dropdown.component';
|
|
17
|
-
export * from './lib/controls/file-upload/file-upload.component';
|
|
18
|
-
export * from './lib/controls/form-control-base';
|
|
19
|
-
export * from './lib/controls/form-control-label/form-control-label.component';
|
|
20
|
-
export * from './lib/controls/form-control/form-control.component';
|
|
21
|
-
export * from './lib/controls/form-group/form-group.component';
|
|
22
|
-
export * from './lib/controls/help-popover/help-popover.component';
|
|
23
|
-
export * from './lib/controls/item-picker/item-picker.component';
|
|
24
|
-
export * from './lib/controls/link-button/link-button.component';
|
|
25
|
-
export * from './lib/controls/menu/menu.component';
|
|
26
|
-
export * from './lib/controls/navigation/link-item';
|
|
27
|
-
export * from './lib/controls/navigation/nav-group';
|
|
28
|
-
export * from './lib/controls/navigation/nav-item';
|
|
29
|
-
export * from './lib/controls/navigation/nav-item-active.directive';
|
|
30
|
-
export * from './lib/controls/numericbox/numericbox.component';
|
|
31
|
-
export * from './lib/controls/popover/popover.component';
|
|
32
|
-
export * from './lib/controls/radio-button/radio-button-option';
|
|
33
|
-
export * from './lib/controls/radio-button/radio-button.component';
|
|
34
|
-
export * from './lib/controls/select/select.component';
|
|
35
|
-
export * from './lib/controls/tabs/tabs.component';
|
|
36
|
-
export * from './lib/controls/textbox/textbox.component';
|
|
37
|
-
export * from './lib/core/cache.service';
|
|
38
|
-
export * from './lib/core/custom-validators';
|
|
39
|
-
export * from './lib/core/date-time-helper';
|
|
40
|
-
export * from './lib/core/error.service';
|
|
41
|
-
export * from './lib/core/router-helper.service';
|
|
42
|
-
export * from './lib/core/scroll.service';
|
|
43
|
-
export * from './lib/core/telemetry-tracker.service';
|
|
44
|
-
export * from './lib/core/telemetry.service';
|
|
45
|
-
export * from './lib/core/validation-message.service';
|
|
46
|
-
export * from './lib/core/validation-patterns';
|
|
47
|
-
export * from './lib/core/window.service';
|
|
48
|
-
export * from './lib/display/app-bar/app-bar.component';
|
|
49
|
-
export * from './lib/display/avatar/avatar.component';
|
|
50
|
-
export * from './lib/display/confirm/confirm.component';
|
|
51
|
-
export * from './lib/display/dialog/dialog-content';
|
|
52
|
-
export * from './lib/display/dialog/dialog-group/dialog-group.component';
|
|
53
|
-
export * from './lib/display/dialog/dialog-types';
|
|
54
|
-
export * from './lib/display/dialog/dialog.component';
|
|
55
|
-
export * from './lib/display/dialog/dialog.service';
|
|
56
|
-
export * from './lib/display/help/help-types';
|
|
57
|
-
export * from './lib/display/hierarchy/hierarchy-base';
|
|
58
|
-
export * from './lib/display/hierarchy/hierarchy-mocks.spec';
|
|
59
|
-
export * from './lib/display/hierarchy/hierarchy-tree/hierarchy-tree.component';
|
|
60
|
-
export * from './lib/display/item-display/item-display.component';
|
|
61
|
-
export * from './lib/display/json-display/json-display.component';
|
|
62
|
-
export * from './lib/display/resizable/resizable-base';
|
|
63
|
-
export * from './lib/display/resizable/resizable.component';
|
|
64
|
-
export * from './lib/display/spinner/spinner.component';
|
|
65
|
-
export * from './lib/display/splash/splash.component';
|
|
66
|
-
export * from './lib/display/splash/splash.service';
|
|
67
|
-
export * from './lib/display/table/resizable-column.component';
|
|
68
|
-
export * from './lib/display/table/searchable-table.component';
|
|
69
|
-
export * from './lib/display/table/table-locked-column.component';
|
|
70
|
-
export * from './lib/display/table/table-master-header-row.component';
|
|
71
|
-
export * from './lib/display/table/table-master-row.component';
|
|
72
|
-
export * from './lib/display/table/table-pagination.component';
|
|
73
|
-
export * from './lib/display/table/table-selectable-row.component';
|
|
74
|
-
export * from './lib/display/table/table.component';
|
|
75
|
-
export * from './lib/display/tags/tag';
|
|
76
|
-
export * from './lib/display/tags/tags.component';
|
|
77
|
-
export * from './lib/display/toast/toast-types';
|
|
78
|
-
export * from './lib/display/toast/toast.service';
|
|
79
|
-
export * from './lib/display/toast/toast/toast.component';
|
|
80
|
-
export * from './lib/display/toast/toaster/toaster.component';
|
|
81
|
-
export * from './lib/display/tooltip-directive/tooltip.directive';
|
|
82
|
-
export * from './lib/display/tooltip/tooltip.component';
|
|
83
|
-
export * from './lib/display/tooltip/tooltip.service';
|
|
84
|
-
export * from './lib/display/tree/tree.component';
|
|
85
|
-
export * from './lib/display/view-overlay/view-overlay.component';
|
|
86
|
-
export * from './lib/shared/directives/click-area-for/click-area-for.directive';
|
|
87
|
-
export * from './lib/shared/directives/if-viewport-width/if-viewport-width.directive';
|
|
88
|
-
export * from './lib/shared/directives/keyboard-nav-container/keyboard-nav-container.directive';
|
|
89
|
-
export * from './lib/shared/directives/popup/popup-container.directive';
|
|
90
|
-
export * from './lib/shared/display';
|
|
91
|
-
export * from './lib/shared/display/pipes/date-display-2.pipe';
|
|
92
|
-
export * from './lib/shared/display/pipes/date-display.pipe';
|
|
93
|
-
export * from './lib/shared/display/pipes/highlight-text.pipe';
|
|
94
|
-
export * from './lib/shared/display/pipes/relative-date.pipe';
|
|
95
|
-
export * from './lib/shared/display/pipes/row-count.pipe';
|
|
96
|
-
export * from './lib/shared/display/pipes/time-display.pipe';
|
|
97
|
-
export * from './lib/shared/form-group.helper';
|
|
98
|
-
export * from './lib/shared/json-helper';
|
|
99
|
-
export * from './lib/shared/lodash-helper';
|
|
100
|
-
export * from './lib/shared/page/page-base/page-base.component';
|
|
101
|
-
export * from './lib/shared/page/page-statuses';
|
|
102
|
-
export * from './lib/shared/page/page-title/page-title.component';
|
|
103
|
-
export * from './lib/shared/page/page-view/page-view.component';
|
|
104
|
-
export * from './lib/shared/testing/copy-button-base-test-injector-factory.spec';
|
|
105
|
-
export * from './lib/shared/testing/hierarchy-base-test-injector-factory.spec';
|
|
106
|
-
export * from './lib/shared/testing/page-base-component-test-helper.spec';
|
|
107
|
-
export * from './lib/shared/testing/page-base-component-test-injector-factory.spec';
|
|
108
|
-
export * from './lib/shared/testing/public-mocks.spec';
|
|
109
|
-
export * from './lib/shared/testing/spy-factory.spec';
|
|
110
|
-
export * from './lib/shared/testing/translation-mocks.spec';
|
|
111
|
-
export * from './lib/shared/user-preference.service';
|
|
112
|
-
export * from './lib/shared/wizard/wizard-base/wizard-base.component';
|
|
113
|
-
export * from './lib/shared/wizard/wizard-buttons/wizard-buttons.component';
|
|
114
|
-
export * from './lib/shared/wizard/wizard-progress/wizard-progress.component';
|
|
115
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2NvbXBvbmVudHMvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLDZDQUE2QyxDQUFDO0FBQzVELGNBQWMsbURBQW1ELENBQUM7QUFDbEUsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsNENBQTRDLENBQUM7QUFDM0QsY0FBYyxnRUFBZ0UsQ0FBQztBQUMvRSxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyw0Q0FBNEMsQ0FBQztBQUMzRCxjQUFjLDRDQUE0QyxDQUFDO0FBQzNELGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGdFQUFnRSxDQUFDO0FBQy9FLGNBQWMsb0RBQW9ELENBQUM7QUFDbkUsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMsa0RBQWtELENBQUM7QUFDakUsY0FBYyxrREFBa0QsQ0FBQztBQUNqRSxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLG9DQUFvQyxDQUFDO0FBQ25ELGNBQWMscURBQXFELENBQUM7QUFDcEUsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLDBDQUEwQyxDQUFDO0FBQ3pELGNBQWMsaURBQWlELENBQUM7QUFDaEUsY0FBYyxvREFBb0QsQ0FBQztBQUNuRSxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsb0NBQW9DLENBQUM7QUFDbkQsY0FBYywwQ0FBMEMsQ0FBQztBQUN6RCxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsa0NBQWtDLENBQUM7QUFDakQsY0FBYywyQkFBMkIsQ0FBQztBQUMxQyxjQUFjLHNDQUFzQyxDQUFDO0FBQ3JELGNBQWMsOEJBQThCLENBQUM7QUFDN0MsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLDBEQUEwRCxDQUFDO0FBQ3pFLGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLHFDQUFxQyxDQUFDO0FBQ3BELGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLDhDQUE4QyxDQUFDO0FBQzdELGNBQWMsaUVBQWlFLENBQUM7QUFDaEYsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsd0NBQXdDLENBQUM7QUFDdkQsY0FBYyw2Q0FBNkMsQ0FBQztBQUM1RCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxxQ0FBcUMsQ0FBQztBQUNwRCxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsZ0RBQWdELENBQUM7QUFDL0QsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLG9EQUFvRCxDQUFDO0FBQ25FLGNBQWMscUNBQXFDLENBQUM7QUFDcEQsY0FBYyx3QkFBd0IsQ0FBQztBQUN2QyxjQUFjLG1DQUFtQyxDQUFDO0FBQ2xELGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMsK0NBQStDLENBQUM7QUFDOUQsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLG1EQUFtRCxDQUFDO0FBQ2xFLGNBQWMsaUVBQWlFLENBQUM7QUFDaEYsY0FBYyx1RUFBdUUsQ0FBQztBQUN0RixjQUFjLGlGQUFpRixDQUFDO0FBQ2hHLGNBQWMseURBQXlELENBQUM7QUFDeEUsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLGdEQUFnRCxDQUFDO0FBQy9ELGNBQWMsOENBQThDLENBQUM7QUFDN0QsY0FBYyxnREFBZ0QsQ0FBQztBQUMvRCxjQUFjLCtDQUErQyxDQUFDO0FBQzlELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyw4Q0FBOEMsQ0FBQztBQUM3RCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYyxtREFBbUQsQ0FBQztBQUNsRSxjQUFjLGlEQUFpRCxDQUFDO0FBQ2hFLGNBQWMsa0VBQWtFLENBQUM7QUFDakYsY0FBYyxnRUFBZ0UsQ0FBQztBQUMvRSxjQUFjLDJEQUEyRCxDQUFDO0FBQzFFLGNBQWMscUVBQXFFLENBQUM7QUFDcEYsY0FBYyx3Q0FBd0MsQ0FBQztBQUN2RCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsNkNBQTZDLENBQUM7QUFDNUQsY0FBYyxzQ0FBc0MsQ0FBQztBQUNyRCxjQUFjLHVEQUF1RCxDQUFDO0FBQ3RFLGNBQWMsNkRBQTZELENBQUM7QUFDNUUsY0FBYywrREFBK0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgQGVuZXJneWNhcC9jb21wb25lbnRzXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvY29tcG9uZW50cy5tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvYmFubmVyL2Jhbm5lci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvYnV0dG9uL2NvcHktYnV0dG9uLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb250cm9scy9idXR0b24vY29weS10YWJsZS1idXR0b24uZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRyb2xzL2NhbGVuZGFyL2NhbGVuZGFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb250cm9scy9jYWxlbmRhci9jYWxlbmRhci50eXBlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb250cm9scy9jaGVja2JveC9jaGVja2JveC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvY29sbGFwc2libGUtdG9nZ2xlL2NvbGxhcHNpYmxlLXRvZ2dsZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvY29tYm9ib3gvY29tYm9ib3guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRyb2xzL2RhdGUtaW5wdXQvZGF0ZS1pbnB1dC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvZGF0ZS1pbnB1dC9kYXRlLWlucHV0LnR5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRyb2xzL2Ryb3Bkb3duL2Ryb3Bkb3duLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb250cm9scy9maWxlLXVwbG9hZC9maWxlLXVwbG9hZC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvZm9ybS1jb250cm9sLWJhc2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvZm9ybS1jb250cm9sLWxhYmVsL2Zvcm0tY29udHJvbC1sYWJlbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvZm9ybS1jb250cm9sL2Zvcm0tY29udHJvbC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvZm9ybS1ncm91cC9mb3JtLWdyb3VwLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb250cm9scy9oZWxwLXBvcG92ZXIvaGVscC1wb3BvdmVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb250cm9scy9pdGVtLXBpY2tlci9pdGVtLXBpY2tlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvbGluay1idXR0b24vbGluay1idXR0b24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRyb2xzL21lbnUvbWVudS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvbmF2aWdhdGlvbi9saW5rLWl0ZW0nO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvbmF2aWdhdGlvbi9uYXYtZ3JvdXAnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvbmF2aWdhdGlvbi9uYXYtaXRlbSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb250cm9scy9uYXZpZ2F0aW9uL25hdi1pdGVtLWFjdGl2ZS5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvbnVtZXJpY2JveC9udW1lcmljYm94LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb250cm9scy9wb3BvdmVyL3BvcG92ZXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRyb2xzL3JhZGlvLWJ1dHRvbi9yYWRpby1idXR0b24tb3B0aW9uJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRyb2xzL3JhZGlvLWJ1dHRvbi9yYWRpby1idXR0b24uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRyb2xzL3NlbGVjdC9zZWxlY3QuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbnRyb2xzL3RhYnMvdGFicy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29udHJvbHMvdGV4dGJveC90ZXh0Ym94LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlL2NhY2hlLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29yZS9jdXN0b20tdmFsaWRhdG9ycyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlL2RhdGUtdGltZS1oZWxwZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29yZS9lcnJvci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvcmUvcm91dGVyLWhlbHBlci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvcmUvc2Nyb2xsLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29yZS90ZWxlbWV0cnktdHJhY2tlci5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvcmUvdGVsZW1ldHJ5LnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29yZS92YWxpZGF0aW9uLW1lc3NhZ2Uuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9jb3JlL3ZhbGlkYXRpb24tcGF0dGVybnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY29yZS93aW5kb3cuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXNwbGF5L2FwcC1iYXIvYXBwLWJhci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlzcGxheS9hdmF0YXIvYXZhdGFyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXNwbGF5L2NvbmZpcm0vY29uZmlybS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlzcGxheS9kaWFsb2cvZGlhbG9nLWNvbnRlbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlzcGxheS9kaWFsb2cvZGlhbG9nLWdyb3VwL2RpYWxvZy1ncm91cC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlzcGxheS9kaWFsb2cvZGlhbG9nLXR5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Rpc3BsYXkvZGlhbG9nL2RpYWxvZy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlzcGxheS9kaWFsb2cvZGlhbG9nLnNlcnZpY2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlzcGxheS9oZWxwL2hlbHAtdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlzcGxheS9oaWVyYXJjaHkvaGllcmFyY2h5LWJhc2UnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlzcGxheS9oaWVyYXJjaHkvaGllcmFyY2h5LW1vY2tzLnNwZWMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlzcGxheS9oaWVyYXJjaHkvaGllcmFyY2h5LXRyZWUvaGllcmFyY2h5LXRyZWUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Rpc3BsYXkvaXRlbS1kaXNwbGF5L2l0ZW0tZGlzcGxheS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlzcGxheS9qc29uLWRpc3BsYXkvanNvbi1kaXNwbGF5LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXNwbGF5L3Jlc2l6YWJsZS9yZXNpemFibGUtYmFzZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXNwbGF5L3Jlc2l6YWJsZS9yZXNpemFibGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Rpc3BsYXkvc3Bpbm5lci9zcGlubmVyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXNwbGF5L3NwbGFzaC9zcGxhc2guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Rpc3BsYXkvc3BsYXNoL3NwbGFzaC5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Rpc3BsYXkvdGFibGUvcmVzaXphYmxlLWNvbHVtbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlzcGxheS90YWJsZS9zZWFyY2hhYmxlLXRhYmxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXNwbGF5L3RhYmxlL3RhYmxlLWxvY2tlZC1jb2x1bW4uY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Rpc3BsYXkvdGFibGUvdGFibGUtbWFzdGVyLWhlYWRlci1yb3cuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Rpc3BsYXkvdGFibGUvdGFibGUtbWFzdGVyLXJvdy5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlzcGxheS90YWJsZS90YWJsZS1wYWdpbmF0aW9uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXNwbGF5L3RhYmxlL3RhYmxlLXNlbGVjdGFibGUtcm93LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXNwbGF5L3RhYmxlL3RhYmxlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXNwbGF5L3RhZ3MvdGFnJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Rpc3BsYXkvdGFncy90YWdzLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXNwbGF5L3RvYXN0L3RvYXN0LXR5cGVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Rpc3BsYXkvdG9hc3QvdG9hc3Quc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXNwbGF5L3RvYXN0L3RvYXN0L3RvYXN0LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXNwbGF5L3RvYXN0L3RvYXN0ZXIvdG9hc3Rlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlzcGxheS90b29sdGlwLWRpcmVjdGl2ZS90b29sdGlwLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXNwbGF5L3Rvb2x0aXAvdG9vbHRpcC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlzcGxheS90b29sdGlwL3Rvb2x0aXAuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXNwbGF5L3RyZWUvdHJlZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlzcGxheS92aWV3LW92ZXJsYXkvdmlldy1vdmVybGF5LmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zaGFyZWQvZGlyZWN0aXZlcy9jbGljay1hcmVhLWZvci9jbGljay1hcmVhLWZvci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2hhcmVkL2RpcmVjdGl2ZXMvaWYtdmlld3BvcnQtd2lkdGgvaWYtdmlld3BvcnQtd2lkdGguZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NoYXJlZC9kaXJlY3RpdmVzL2tleWJvYXJkLW5hdi1jb250YWluZXIva2V5Ym9hcmQtbmF2LWNvbnRhaW5lci5kaXJlY3RpdmUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2hhcmVkL2RpcmVjdGl2ZXMvcG9wdXAvcG9wdXAtY29udGFpbmVyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zaGFyZWQvZGlzcGxheSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zaGFyZWQvZGlzcGxheS9waXBlcy9kYXRlLWRpc3BsYXktMi5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NoYXJlZC9kaXNwbGF5L3BpcGVzL2RhdGUtZGlzcGxheS5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NoYXJlZC9kaXNwbGF5L3BpcGVzL2hpZ2hsaWdodC10ZXh0LnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2hhcmVkL2Rpc3BsYXkvcGlwZXMvcmVsYXRpdmUtZGF0ZS5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NoYXJlZC9kaXNwbGF5L3BpcGVzL3Jvdy1jb3VudC5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NoYXJlZC9kaXNwbGF5L3BpcGVzL3RpbWUtZGlzcGxheS5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NoYXJlZC9mb3JtLWdyb3VwLmhlbHBlcic7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zaGFyZWQvanNvbi1oZWxwZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2hhcmVkL2xvZGFzaC1oZWxwZXInO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2hhcmVkL3BhZ2UvcGFnZS1iYXNlL3BhZ2UtYmFzZS5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2hhcmVkL3BhZ2UvcGFnZS1zdGF0dXNlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zaGFyZWQvcGFnZS9wYWdlLXRpdGxlL3BhZ2UtdGl0bGUuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NoYXJlZC9wYWdlL3BhZ2Utdmlldy9wYWdlLXZpZXcuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NoYXJlZC90ZXN0aW5nL2NvcHktYnV0dG9uLWJhc2UtdGVzdC1pbmplY3Rvci1mYWN0b3J5LnNwZWMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2hhcmVkL3Rlc3RpbmcvaGllcmFyY2h5LWJhc2UtdGVzdC1pbmplY3Rvci1mYWN0b3J5LnNwZWMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2hhcmVkL3Rlc3RpbmcvcGFnZS1iYXNlLWNvbXBvbmVudC10ZXN0LWhlbHBlci5zcGVjJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NoYXJlZC90ZXN0aW5nL3BhZ2UtYmFzZS1jb21wb25lbnQtdGVzdC1pbmplY3Rvci1mYWN0b3J5LnNwZWMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2hhcmVkL3Rlc3RpbmcvcHVibGljLW1vY2tzLnNwZWMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2hhcmVkL3Rlc3Rpbmcvc3B5LWZhY3Rvcnkuc3BlYyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zaGFyZWQvdGVzdGluZy90cmFuc2xhdGlvbi1tb2Nrcy5zcGVjJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NoYXJlZC91c2VyLXByZWZlcmVuY2Uuc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zaGFyZWQvd2l6YXJkL3dpemFyZC1iYXNlL3dpemFyZC1iYXNlLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zaGFyZWQvd2l6YXJkL3dpemFyZC1idXR0b25zL3dpemFyZC1idXR0b25zLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zaGFyZWQvd2l6YXJkL3dpemFyZC1wcm9ncmVzcy93aXphcmQtcHJvZ3Jlc3MuY29tcG9uZW50JztcblxuIl19
|