ngx-edu-sharing-ui 9.0.2 → 9.1.1
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/actionbar/actionbar.component.mjs +5 -5
- package/esm2022/lib/common/edu-sharing-ui-common.module.mjs +73 -62
- package/esm2022/lib/directives/check-text-overflow.directive.mjs +8 -2
- package/esm2022/lib/directives/icon.directive.mjs +15 -8
- package/esm2022/lib/directives/infinite-scroll.directive.mjs +85 -0
- package/esm2022/lib/dropdown/dropdown.component.mjs +3 -3
- package/esm2022/lib/edu-sharing-ui-configuration.mjs +8 -1
- package/esm2022/lib/list-items/list-base/list-base.component.mjs +6 -6
- package/esm2022/lib/list-items/list-counts/list-counts.component.mjs +3 -1
- package/esm2022/lib/list-items/list-text/list-text.component.mjs +15 -13
- package/esm2022/lib/node-entries/entries-model.mjs +2 -1
- package/esm2022/lib/node-entries/node-cache.mjs +9 -1
- package/esm2022/lib/node-entries/node-data-source.mjs +4 -2
- package/esm2022/lib/node-entries/node-entries-card/node-entries-card.component.mjs +13 -11
- package/esm2022/lib/node-entries/node-entries-card-grid/node-entries-card-grid.component.mjs +37 -22
- package/esm2022/lib/node-entries/node-entries-card-small/node-entries-card-small.component.mjs +5 -5
- package/esm2022/lib/node-entries/node-entries-global-options/node-entries-global-options.component.mjs +3 -3
- package/esm2022/lib/node-entries/node-entries-global.service.mjs +14 -1
- package/esm2022/lib/node-entries/node-entries-table/column-chooser/column-chooser.component.mjs +3 -3
- package/esm2022/lib/node-entries/node-entries-table/node-entries-table.component.mjs +43 -34
- package/esm2022/lib/node-entries/node-entries-wrapper.component.mjs +10 -3
- package/esm2022/lib/node-entries/node-entries.component.mjs +2 -2
- package/esm2022/lib/node-entries/node-rating/node-rating.component.mjs +35 -12
- package/esm2022/lib/node-entries/option-button/option-button.component.mjs +18 -7
- package/esm2022/lib/node-entries/sort-select-panel/sort-select-panel.component.mjs +3 -3
- package/esm2022/lib/node-url/node-url.component.mjs +7 -3
- package/esm2022/lib/pipes/file-size.pipe.mjs +2 -2
- package/esm2022/lib/pipes/property-slug.pipe.mjs +16 -0
- package/esm2022/lib/services/abstract/options-helper.service.mjs +1 -1
- package/esm2022/lib/services/app-container.service.mjs +66 -0
- package/esm2022/lib/services/node-entries.service.mjs +47 -3
- package/esm2022/lib/services/node-helper.service.mjs +34 -11
- package/esm2022/lib/services/options-helper-data.service.mjs +4 -4
- package/esm2022/lib/services/repo-url.service.mjs +2 -1
- package/esm2022/lib/services/ui.service.mjs +7 -1
- package/esm2022/lib/spinner/spinner.component.mjs +4 -3
- package/esm2022/lib/translations/translation-loader.mjs +39 -8
- package/esm2022/lib/translations/translations.module.mjs +15 -4
- package/esm2022/lib/translations/translations.service.mjs +3 -3
- package/esm2022/lib/types/injection-tokens.mjs +9 -0
- package/esm2022/lib/types/option-item.mjs +4 -3
- package/esm2022/module.mjs +49 -43
- package/fesm2022/ngx-edu-sharing-ui.mjs +3955 -3568
- package/fesm2022/ngx-edu-sharing-ui.mjs.map +1 -1
- package/lib/common/edu-sharing-ui-common.module.d.ts +27 -25
- package/lib/directives/icon.directive.d.ts +2 -2
- package/lib/directives/infinite-scroll.directive.d.ts +22 -0
- package/lib/edu-sharing-ui-configuration.d.ts +5 -0
- package/lib/list-items/list-text/list-text.component.d.ts +1 -1
- package/lib/list-items/list-widget.d.ts +1 -1
- package/lib/node-entries/entries-model.d.ts +2 -1
- package/lib/node-entries/node-data-source.d.ts +1 -1
- package/lib/node-entries/node-entries-card/node-entries-card.component.d.ts +1 -1
- package/lib/node-entries/node-entries-card-grid/node-entries-card-grid.component.d.ts +6 -1
- package/lib/node-entries/node-entries-global.service.d.ts +7 -0
- package/lib/node-entries/node-entries-table/node-entries-table.component.d.ts +4 -1
- package/lib/node-entries/node-entries-wrapper.component.d.ts +8 -3
- package/lib/node-entries/node-rating/node-rating.component.d.ts +3 -3
- package/lib/node-entries/option-button/option-button.component.d.ts +6 -2
- package/lib/pipes/property-slug.pipe.d.ts +7 -0
- package/lib/services/abstract/options-helper.service.d.ts +3 -3
- package/lib/services/app-container.service.d.ts +43 -0
- package/lib/services/node-entries.service.d.ts +31 -6
- package/lib/services/node-helper.service.d.ts +5 -3
- package/lib/services/options-helper-data.service.d.ts +3 -3
- package/lib/services/ui.service.d.ts +8 -1
- package/lib/spinner/spinner.component.d.ts +1 -1
- package/lib/translations/translation-loader.d.ts +2 -1
- package/lib/types/injection-tokens.d.ts +8 -0
- package/lib/types/option-item.d.ts +3 -4
- package/module.d.ts +48 -42
- package/package.json +1 -1
- package/esm2022/lib/translations/languages.mjs +0 -5
- package/lib/translations/languages.d.ts +0 -4
|
@@ -56,7 +56,7 @@ export class OptionsHelperDataService {
|
|
|
56
56
|
setData(data) {
|
|
57
57
|
this.data = this.optionsHelperService.wrapOptionCallbacks(data);
|
|
58
58
|
}
|
|
59
|
-
refreshComponents(refreshListOptions = true) {
|
|
59
|
+
async refreshComponents(refreshListOptions = true) {
|
|
60
60
|
if (this.data == null) {
|
|
61
61
|
console.warn('options helper refresh called but no data previously bound');
|
|
62
62
|
return;
|
|
@@ -65,8 +65,8 @@ export class OptionsHelperDataService {
|
|
|
65
65
|
console.warn('optionsHelperService not provided. No default actions will be generated');
|
|
66
66
|
return;
|
|
67
67
|
}
|
|
68
|
-
this.globalOptions = this.getAvailableOptions(Target.Actionbar);
|
|
69
|
-
this.optionsHelperService?.refreshComponents(this.components, this.data, refreshListOptions);
|
|
68
|
+
this.globalOptions = await this.getAvailableOptions(Target.Actionbar);
|
|
69
|
+
await this.optionsHelperService?.refreshComponents(this.components, this.data, refreshListOptions);
|
|
70
70
|
}
|
|
71
71
|
getAvailableOptions(target, objects = null) {
|
|
72
72
|
return this.optionsHelperService?.getAvailableOptions(target, objects, this.components, this.data);
|
|
@@ -131,4 +131,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImpor
|
|
|
131
131
|
}] }, { type: i5.OptionsHelperService, decorators: [{
|
|
132
132
|
type: Optional
|
|
133
133
|
}] }]; } });
|
|
134
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy1oZWxwZXItZGF0YS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9zZXJ2aWNlcy9vcHRpb25zLWhlbHBlci1kYXRhLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsT0FBTyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQXFCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RixPQUFPLEVBQXlCLEVBQUUsRUFBcUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRyxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pELE9BQU8sRUFBb0MsTUFBTSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFaEYsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQ3hELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7Ozs7O0FBNkJ2RSxNQUFNLE9BQU8sd0JBQXdCO0lBWWpDLFlBQ1ksTUFBYyxFQUNkLEtBQXFCLEVBQ3JCLFdBQStCLEVBQy9CLHFCQUE0QyxFQUM1QyxXQUF3QixFQUN4QixjQUE4QixFQUNsQix3QkFBa0QsRUFDbEQsb0JBQTBDO1FBUHRELFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixnQkFBVyxHQUFYLFdBQVcsQ0FBb0I7UUFDL0IsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1QyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDbEIsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtRQUNsRCx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBZjFELGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRS9CLHNC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QUFnQjtnQkFDdkIsd0JBQXdCLENBQUMsS0FBSyxFQUFFLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUMvRCxDQUFDO1lBQ0YsSUFBSSxhQUFhLEVBQUU7Z0JBQ2YsS0FBSyxDQUFDLGNBQWMsRUFBRSxDQUFDO2dCQUN2QixLQUFLLENBQUMsZUFBZSxFQUFFLENBQUM7Z0JBQ3hCLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLGFBQWEsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQzthQUN2RDtTQUNKO0lBQ0wsQ0FBQztJQUNELGFBQWEsQ0FBQyxPQUFxQixFQUFFLE1BQWMsRUFBRSxVQUF3QixJQUFJO1FBQzdFLE9BQU8sSUFBSSxDQUFDLG9CQUFvQixDQUFDLGFBQWEsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDeEYsQ0FBQztJQUNEOzs7O09BSUc7SUFDSCxlQUFlLENBQUMsU0FBNkIsRUFBRSxPQUFpQyxJQUFJO1FBQ2hGLElBQUksSUFBSSxFQUFFO1lBQ04sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FBQztTQUN6QjtRQUNELElBQUksU0FBUyxFQUFFO1lBQ1gsU0FBUyxDQUFDLE9BQU8sR0FBRyxFQUFFLENBQUM7U0FDMUI7SUFDTCxDQUFDO0lBRUQsU0FBUyxDQUFDLFFBQWdCLEVBQUU7UUFDeEIsSUFBSSxDQUFDLG9CQUFvQixDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDM0UsQ0FBQzs4R0E5SVEsd0JBQXdCO2tIQUF4Qix3QkFBd0I7OzJGQUF4Qix3QkFBd0I7a0JBRHBDLFVBQVU7OzBCQW9CRixRQUFROzswQkFDUixRQUFRIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuLi9kcm9wZG93bi9kcm9wZG93bi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQWN0aW9uYmFyQ29tcG9uZW50IH0gZnJvbSAnLi4vYWN0aW9uYmFyL2FjdGlvbmJhci5jb21wb25lbnQnO1xuaW1wb3J0IHtcbiAgICBMaXN0RXZlbnRJbnRlcmZhY2UsXG4gICAgTm9kZUVudHJpZXNEYXRhVHlwZSxcbiAgICBOb2RlRW50cmllc0Rpc3BsYXlUeXBlLFxufSBmcm9tICcuLi9ub2RlLWVudHJpZXMvZW50cmllcy1tb2RlbCc7XG5pbXBvcnQgeyBFdmVudEVtaXR0ZXIsIEluamVjdGFibGUsIE5nWm9uZSwgT25EZXN0cm95LCBPcHRpb25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQXV0aGVudGljYXRpb25TZXJ2aWNlLCBNRSwgTmV0d29ya1NlcnZpY2UsIE5vZGUsIFVzZXJTZXJ2aWNlIH0gZnJvbSAnbmd4LWVkdS1zaGFyaW5nLWFwaSc7XG5pbXBvcnQgeyB0YWtlLCB0YWtlVW50aWwgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBDdXN0b21PcHRpb25zLCBPcHRpb25JdGVtLCBTY29wZSwgVGFyZ2V0IH0gZnJvbSAnLi4vdHlwZXMvb3B0aW9uLWl0ZW0nO1xuaW1wb3J0IHsgT3B0aW9uc0hlbHBlclNlcnZpY2UgfSBmcm9tICcuL2Fic3RyYWN0L29wdGlvbnMtaGVscGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgZnJvbUV2ZW50LCBTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IG1hdGNoZXNTaG9ydGN1dENvbmRpdGlvbiB9IGZyb20gJy4uL3R5cGVzL2tleWJvYXJkLXNob3J0Y3V0cyc7XG5pbXBvcnQgeyBLZXlib2FyZFNob3J0Y3V0c1NlcnZpY2UgfSBmcm9tICcuL2Fic3RyYWN0L2tleWJvYXJkLXNob3J0Y3V0cy5zZXJ2aWNlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IExvY2FsRXZlbnRzU2VydmljZSB9IGZyb20gJy4vbG9jYWwtZXZlbnRzLnNlcnZpY2UnO1xuXG50eXBlIERlbGV0ZUV2ZW50ID0ge1xuICAgIG9iamVjdHM6IE5vZGVbXSB8IGFueTtcbiAgICBjb3VudDogbnVtYmVyO1xuICAgIGVycm9yOiBib29sZWFuO1xufTtcbmV4cG9ydCBpbnRlcmZhY2UgT3B0aW9uc0hlbHBlckNvbXBvbmVudHMge1xuICAgIGFjdGlvbmJhcjogQWN0aW9uYmFyQ29tcG9uZW50O1xuICAgIGRyb3Bkb3duOiBEcm9wZG93bkNvbXBvbmVudDtcbiAgICBsaXN0OiBMaXN0RXZlbnRJbnRlcmZhY2U8Tm9kZUVudHJpZXNEYXRhVHlwZT47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgT3B0aW9uRGF0YSB7XG4gICAgc2NvcGU6IFNjb3BlO1xuICAgIGFjdGl2ZU9iamVjdHM/OiBOb2RlW10gfCBhbnlbXTtcbiAgICBzZWxlY3RlZE9iamVjdHM/OiBOb2RlW10gfCBhbnlbXTtcbiAgICBhbGxPYmplY3RzPzogTm9kZVtdIHwgYW55W107XG4gICAgcGFyZW50PzogTm9kZSB8IGFueTtcbiAgICBjdXN0b21PcHRpb25zPzogQ3VzdG9tT3B0aW9ucztcbiAgICAvKipcbiAgICAgKiBjdXN0b20gaW50ZXJjZXB0b3IgdG8gbW9kaWZ5IHRoZSBkZWZhdWx0IG9wdGlvbnMgYXJyYXlcbiAgICAgKi9cbiAgICBwb3N0UHJlcGFyZU9wdGlvbnM/OiAob3B0aW9uczogT3B0aW9uSXRlbVtdLCBvYmplY3RzOiBOb2RlW10pID0+IHZvaWQ7XG59XG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgT3B0aW9uc0hlbHBlckRhdGFTZXJ2aWNlIGltcGxlbWVudHMgT25EZXN0cm95IHtcbiAgICBwcml2YXRlIGNvbXBvbmVudHM6IE9wdGlvbnNIZWxwZXJDb21wb25lbnRzO1xuICAgIHByaXZhdGUgZGF0YTogT3B0aW9uRGF0YTtcbiAgICBwcml2YXRlIGtleWJvYXJkU2hvcnRjdXRzU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG4gICAgcHJpdmF0ZSBnbG9iYWxPcHRpb25zOiBPcHRpb25JdGVtW107XG4gICAgcHJpdmF0ZSBkZXN0cm95ZWQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgcmVhZG9ubHkgdmlydHVhbE5vZGVzQWRkZWQgPSBuZXcgRXZlbnRFbWl0dGVyPE5vZGVbXT4oKTtcbiAgICByZWFkb25seSBub2Rlc0NoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPE5vZGVbXSB8IHZvaWQ+KCk7XG4gICAgcmVhZG9ubHkgbm9kZXNEZWxldGVkID0gbmV3IEV2ZW50RW1pdHRlcjxEZWxldGVFdmVudD4oKTtcbiAgICByZWFkb25seSBkaXNwbGF5VHlwZUNoYW5nZWQgPSBuZXcgRXZlbnRFbWl0dGVyPE5vZGVFbnRyaWVzRGlzcGxheVR5cGU+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBuZ1pvbmU6IE5nWm9uZSxcbiAgICAgICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgICAgIHByaXZhdGUgbG9jYWxFdmVudHM6IExvY2FsRXZlbnRzU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBhdXRoZW50aWNhdGlvblNlcnZpY2U6IEF1dGhlbnRpY2F0aW9uU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSB1c2VyU2VydmljZTogVXNlclNlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgbmV0d29ya1NlcnZpY2U6IE5ldHdvcmtTZXJ2aWNlLFxuICAgICAgICBAT3B0aW9uYWwoKSBwcml2YXRlIGtleWJvYXJkU2hvcnRjdXRzU2VydmljZTogS2V5Ym9hcmRTaG9ydGN1dHNTZXJ2aWNlLFxuICAgICAgICBAT3B0aW9uYWwoKSBwcml2YXRlIG9wdGlvbnNIZWxwZXJTZXJ2aWNlOiBPcHRpb25zSGVscGVyU2VydmljZSxcbiAgICApIHtcbiAgICAgICAgdGhpcy5yZWdpc3RlclN0YXRpY1N1YnNjcmlwdGlvbnMoKTtcbiAgICB9XG4gICAgLyoqIFBlcmZvcm1zIHN1YnNjcmlwdGlvbnMgdGhhdCBkb24ndCBoYXZlIHRvIGJlIHJlZnJlc2hlZC4gKi9cbiAgICBwcml2YXRlIHJlZ2lzdGVyU3RhdGljU3Vic2NyaXB0aW9ucygpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5sb2NhbEV2ZW50cy5ub2Rlc0RlbGV0ZWRcbiAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCkpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChub2RlcykgPT4gdGhpcy5jb21wb25lbnRzPy5saXN0Py5kZWxldGVOb2Rlcyhub2RlcykpO1xuICAgICAgICB0aGlzLmxvY2FsRXZlbnRzLm5vZGVzQ2hhbmdlZFxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKG5vZGVzKSA9PiB0aGlzLmNvbXBvbmVudHM/Lmxpc3Q/LnVwZGF0ZU5vZGVzKG5vZGVzKSk7XG4gICAgfVxuICAgIG5nT25EZXN0cm95KCk6IHZvaWQge1xuICAgICAgICB0aGlzLmRlc3Ryb3llZC5uZXh0KCk7XG4gICAgICAgIHRoaXMuZGVzdHJveWVkLmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgYXN5bmMgaW5pdENvbXBvbmVudHMoXG4gICAgICAgIGFjdGlvbmJhcjogQWN0aW9uYmFyQ29tcG9uZW50ID0gbnVsbCxcbiAgICAgICAgbGlzdDogTGlzdEV2ZW50SW50ZXJmYWNlPE5vZGVFbnRyaWVzRGF0YVR5cGU+ID0gbnVsbCxcbiAgICAgICAgZHJvcGRvd246IERyb3Bkb3duQ29tcG9uZW50ID0gbnVsbCxcbiAgICApIHtcbiAgICAgICAgdGhpcy5jb21wb25lbnRzID0ge1xuICAgICAgICAgICAgYWN0aW9uYmFyLFxuICAgICAgICAgICAgbGlzdCxcbiAgICAgICAgICAgIGRyb3Bkb3duLFxuICAgICAgICB9O1xuICAgICAgICBpZiAoKGF3YWl0IHRoaXMudXNlclNlcnZpY2UuZ2V0VXNlcihNRSkucGlwZSh0YWtlKDEpKS50b1Byb21pc2UoKSkucGVyc29uLmF1dGhvcml0eU5hbWUpIHtcbiAgICAgICAgICAgIGF3YWl0IHRoaXMubmV0d29ya1NlcnZpY2UuZ2V0UmVwb3NpdG9yaWVzKCkucGlwZSh0YWtlKDEpKS50b1Byb21pc2UoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGdldERhdGEoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmRhdGE7XG4gICAgfVxuXG4gICAgc2V0RGF0YShkYXRhOiBPcHRpb25EYXRhKSB7XG4gICAgICAgIHRoaXMuZGF0YSA9IHRoaXMub3B0aW9uc0hlbHBlclNlcnZpY2Uud3JhcE9wdGlvbkNhbGxiYWNrcyhkYXRhKTtcbiAgICB9XG5cbiAgICByZWZyZXNoQ29tcG9uZW50cyhyZWZyZXNoTGlzdE9wdGlvbnMgPSB0cnVlKSB7XG4gICAgICAgIGlmICh0aGlzLmRhdGEgPT0gbnVsbCkge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKCdvcHRpb25zIGhlbHBlciByZWZyZXNoIGNhbGxlZCBidXQgbm8gZGF0YSBwcmV2aW91c2x5IGJvdW5kJyk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHRoaXMub3B0aW9uc0hlbHBlclNlcnZpY2UgPT0gbnVsbCkge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKCdvcHRpb25zSGVscGVyU2VydmljZSBub3QgcHJvdmlkZWQuIE5vIGRlZmF1bHQgYWN0aW9ucyB3aWxsIGJlIGdlbmVyYXRlZCcpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuZ2xvYmFsT3B0aW9ucyA9IHRoaXMuZ2V0QXZhaWxhYmxlT3B0aW9ucyhUYXJnZXQuQWN0aW9uYmFyKTtcbiAgICAgICAgdGhpcy5vcHRpb25zSGVscGVyU2VydmljZT8ucmVmcmVzaENvbXBvbmVudHMoXG4gICAgICAgICAgICB0aGlzLmNvbXBvbmVudHMsXG4gICAgICAgICAgICB0aGlzLmRhdGEsXG4gICAgICAgICAgICByZWZyZXNoTGlzdE9wdGlvbnMsXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgZ2V0QXZhaWxhYmxlT3B0aW9ucyh0YXJnZXQ6IFRhcmdldCwgb2JqZWN0czogTm9kZVtdID0gbnVsbCkge1xuICAgICAgICByZXR1cm4gdGhpcy5vcHRpb25zSGVscGVyU2VydmljZT8uZ2V0QXZhaWxhYmxlT3B0aW9ucyhcbiAgICAgICAgICAgIHRhcmdldCxcbiAgICAgICAgICAgIG9iamVjdHMsXG4gICAgICAgICAgICB0aGlzLmNvbXBvbmVudHMsXG4gICAgICAgICAgICB0aGlzLmRhdGEsXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBhZGRWaXJ0dWFsT2JqZWN0cyhvYmplY3RzOiBhbnlbXSkge1xuICAgICAgICBvYmplY3RzID0gb2JqZWN0cy5tYXAoKG86IGFueSkgPT4ge1xuICAgICAgICAgICAgby52aXJ0dWFsID0gdHJ1ZTtcbiAgICAgICAgICAgIHJldHVybiBvO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy52aXJ0dWFsTm9kZXNBZGRlZC5lbWl0KG9iamVjdHMpO1xuICAgICAgICBpZiAodGhpcy5jb21wb25lbnRzPy5saXN0KSB7XG4gICAgICAgICAgICB0aGlzLmNvbXBvbmVudHM/Lmxpc3QuYWRkVmlydHVhbE5vZGVzKG9iamVjdHMpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmVnaXN0ZXJHbG9iYWxLZXlib2FyZFNob3J0Y3V0cygpIHtcbiAgICAgICAgdGhpcy5uZ1pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xuICAgICAgICAgICAgaWYgKCF0aGlzLmtleWJvYXJkU2hvcnRjdXRzU3Vic2NyaXB0aW9uKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5rZXlib2FyZFNob3J0Y3V0c1N1YnNjcmlwdGlvbiA9IGZyb21FdmVudChkb2N1bWVudCwgJ2tleWRvd24nKVxuICAgICAgICAgICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQpKVxuICAgICAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKChldmVudDogS2V5Ym9hcmRFdmVudCkgPT4gdGhpcy5oYW5kbGVLZXlib2FyZEV2ZW50KGV2ZW50KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIHByaXZhdGUgaGFuZGxlS2V5Ym9hcmRFdmVudChldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICBpZiAodGhpcy5nbG9iYWxPcHRpb25zICYmICF0aGlzLmtleWJvYXJkU2hvcnRjdXRzU2VydmljZT8uc2hvdWxkSWdub3JlU2hvcnRjdXQoZXZlbnQpKSB7XG4gICAgICAgICAgICBjb25zdCBtYXRjaGVkT3B0aW9uID0gdGhpcy5nbG9iYWxPcHRpb25zLmZpbmQoXG4gICAgICAgICAgICAgICAgKG9wdGlvbjogT3B0aW9uSXRlbSkgPT5cbiAgICAgICAgICAgICAgICAgICAgb3B0aW9uLmlzRW5hYmxlZCAmJlxuICAgICAgICAgICAgICAgICAgICBvcHRpb24ua2V5Ym9hcmRTaG9ydGN1dCAmJlxuICAgICAgICAgICAgICAgICAgICBtYXRjaGVzU2hvcnRjdXRDb25kaXRpb24oZXZlbnQsIG9wdGlvbi5rZXlib2FyZFNob3J0Y3V0KSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICBpZiAobWF0Y2hlZE9wdGlvbikge1xuICAgICAgICAgICAgICAgIGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICAgICAgZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gICAgICAgICAgICAgICAgdGhpcy5uZ1pvbmUucnVuKCgpID0+IG1hdGNoZWRPcHRpb24uY2FsbGJhY2sobnVsbCkpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGZpbHRlck9wdGlvbnMob3B0aW9uczogT3B0aW9uSXRlbVtdLCB0YXJnZXQ6IFRhcmdldCwgb2JqZWN0czogTm9kZVtdIHwgYW55ID0gbnVsbCkge1xuICAgICAgICByZXR1cm4gdGhpcy5vcHRpb25zSGVscGVyU2VydmljZS5maWx0ZXJPcHRpb25zKG9wdGlvbnMsIHRhcmdldCwgdGhpcy5kYXRhLCBvYmplY3RzKTtcbiAgICB9XG4gICAgLyoqXG4gICAgICogc2hvcnRjdXQgdG8gc2ltcGx5IGRpc2FibGUgYWxsIG9wdGlvbnMgb24gdGhlIGdpdmVuIGNvbXBvZW5udHNcbiAgICAgKiBAcGFyYW0gYWN0aW9uYmFyXG4gICAgICogQHBhcmFtIGxpc3RcbiAgICAgKi9cbiAgICBjbGVhckNvbXBvbmVudHMoYWN0aW9uYmFyOiBBY3Rpb25iYXJDb21wb25lbnQsIGxpc3Q6IExpc3RFdmVudEludGVyZmFjZTxOb2RlPiA9IG51bGwpIHtcbiAgICAgICAgaWYgKGxpc3QpIHtcbiAgICAgICAgICAgIGxpc3Quc2V0T3B0aW9ucyhudWxsKTtcbiAgICAgICAgfVxuICAgICAgICBpZiAoYWN0aW9uYmFyKSB7XG4gICAgICAgICAgICBhY3Rpb25iYXIub3B0aW9ucyA9IFtdO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcGFzdGVOb2RlKG5vZGVzOiBOb2RlW10gPSBbXSkge1xuICAgICAgICB0aGlzLm9wdGlvbnNIZWxwZXJTZXJ2aWNlLnBhc3RlTm9kZSh0aGlzLmNvbXBvbmVudHMsIHRoaXMuZGF0YSwgbm9kZXMpO1xuICAgIH1cbn1cbiJdfQ==
|
|
134
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3B0aW9ucy1oZWxwZXItZGF0YS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi9zZXJ2aWNlcy9vcHRpb25zLWhlbHBlci1kYXRhLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBT0EsT0FBTyxFQUFFLFlBQVksRUFBRSxVQUFVLEVBQXFCLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN0RixPQUFPLEVBQXlCLEVBQUUsRUFBcUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRyxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ2pELE9BQU8sRUFBb0MsTUFBTSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFaEYsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQ3hELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7Ozs7O0FBNkJ2RSxNQUFNLE9BQU8sd0JBQXdCO0lBWWpDLFlBQ1ksTUFBYyxFQUNkLEtBQXFCLEVBQ3JCLFdBQStCLEVBQy9CLHFCQUE0QyxFQUM1QyxXQUF3QixFQUN4QixjQUE4QixFQUNsQix3QkFBa0QsRUFDbEQsb0JBQTBDO1FBUHRELFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixnQkFBVyxHQUFYLFdBQVcsQ0FBb0I7UUFDL0IsMEJBQXFCLEdBQXJCLHFCQUFxQixDQUF1QjtRQUM1QyxnQkFBVyxHQUFYLFdBQVcsQ0FBYTtRQUN4QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDbEIsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtRQUNsRCx5QkFBb0IsR0FBcEIsb0JBQW9CLENBQXNCO1FBZjFELGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBUSxDQUFDO1FBRS9CLHNC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b3duL2Ryb3Bkb3duLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBY3Rpb25iYXJDb21wb25lbnQgfSBmcm9tICcuLi9hY3Rpb25iYXIvYWN0aW9uYmFyLmNvbXBvbmVudCc7XG5pbXBvcnQge1xuICAgIExpc3RFdmVudEludGVyZmFjZSxcbiAgICBOb2RlRW50cmllc0RhdGFUeXBlLFxuICAgIE5vZGVFbnRyaWVzRGlzcGxheVR5cGUsXG59IGZyb20gJy4uL25vZGUtZW50cmllcy9lbnRyaWVzLW1vZGVsJztcbmltcG9ydCB7IEV2ZW50RW1pdHRlciwgSW5qZWN0YWJsZSwgTmdab25lLCBPbkRlc3Ryb3ksIE9wdGlvbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBdXRoZW50aWNhdGlvblNlcnZpY2UsIE1FLCBOZXR3b3JrU2VydmljZSwgTm9kZSwgVXNlclNlcnZpY2UgfSBmcm9tICduZ3gtZWR1LXNoYXJpbmctYXBpJztcbmltcG9ydCB7IHRha2UsIHRha2VVbnRpbCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7IEN1c3RvbU9wdGlvbnMsIE9wdGlvbkl0ZW0sIFNjb3BlLCBUYXJnZXQgfSBmcm9tICcuLi90eXBlcy9vcHRpb24taXRlbSc7XG5pbXBvcnQgeyBPcHRpb25zSGVscGVyU2VydmljZSB9IGZyb20gJy4vYWJzdHJhY3Qvb3B0aW9ucy1oZWxwZXIuc2VydmljZSc7XG5pbXBvcnQgeyBmcm9tRXZlbnQsIFN1YmplY3QsIFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgbWF0Y2hlc1Nob3J0Y3V0Q29uZGl0aW9uIH0gZnJvbSAnLi4vdHlwZXMva2V5Ym9hcmQtc2hvcnRjdXRzJztcbmltcG9ydCB7IEtleWJvYXJkU2hvcnRjdXRzU2VydmljZSB9IGZyb20gJy4vYWJzdHJhY3Qva2V5Ym9hcmQtc2hvcnRjdXRzLnNlcnZpY2UnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgTG9jYWxFdmVudHNTZXJ2aWNlIH0gZnJvbSAnLi9sb2NhbC1ldmVudHMuc2VydmljZSc7XG5cbnR5cGUgRGVsZXRlRXZlbnQgPSB7XG4gICAgb2JqZWN0czogTm9kZVtdIHwgYW55O1xuICAgIGNvdW50OiBudW1iZXI7XG4gICAgZXJyb3I6IGJvb2xlYW47XG59O1xuZXhwb3J0IGludGVyZmFjZSBPcHRpb25zSGVscGVyQ29tcG9uZW50cyB7XG4gICAgYWN0aW9uYmFyOiBBY3Rpb25iYXJDb21wb25lbnQ7XG4gICAgZHJvcGRvd246IERyb3Bkb3duQ29tcG9uZW50O1xuICAgIGxpc3Q6IExpc3RFdmVudEludGVyZmFjZTxOb2RlRW50cmllc0RhdGFUeXBlPjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBPcHRpb25EYXRhIHtcbiAgICBzY29wZTogU2NvcGU7XG4gICAgYWN0aXZlT2JqZWN0cz86IE5vZGVbXSB8IGFueVtdO1xuICAgIHNlbGVjdGVkT2JqZWN0cz86IE5vZGVbXSB8IGFueVtdO1xuICAgIGFsbE9iamVjdHM/OiBOb2RlW10gfCBhbnlbXTtcbiAgICBwYXJlbnQ/OiBOb2RlIHwgYW55O1xuICAgIGN1c3RvbU9wdGlvbnM/OiBDdXN0b21PcHRpb25zO1xuICAgIC8qKlxuICAgICAqIGN1c3RvbSBpbnRlcmNlcHRvciB0byBtb2RpZnkgdGhlIGRlZmF1bHQgb3B0aW9ucyBhcnJheVxuICAgICAqL1xuICAgIHBvc3RQcmVwYXJlT3B0aW9ucz86IChvcHRpb25zOiBPcHRpb25JdGVtW10sIG9iamVjdHM6IE5vZGVbXSkgPT4gdm9pZDtcbn1cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBPcHRpb25zSGVscGVyRGF0YVNlcnZpY2UgaW1wbGVtZW50cyBPbkRlc3Ryb3kge1xuICAgIHByaXZhdGUgY29tcG9uZW50czogT3B0aW9uc0hlbHBlckNvbXBvbmVudHM7XG4gICAgcHJpdmF0ZSBkYXRhOiBPcHRpb25EYXRhO1xuICAgIHByaXZhdGUga2V5Ym9hcmRTaG9ydGN1dHNTdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbjtcbiAgICBwcml2YXRlIGdsb2JhbE9wdGlvbnM6IE9wdGlvbkl0ZW1bXTtcbiAgICBwcml2YXRlIGRlc3Ryb3llZCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICByZWFkb25seSB2aXJ0dWFsTm9kZXNBZGRlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Tm9kZVtdPigpO1xuICAgIHJlYWRvbmx5IG5vZGVzQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Tm9kZVtdIHwgdm9pZD4oKTtcbiAgICByZWFkb25seSBub2Rlc0RlbGV0ZWQgPSBuZXcgRXZlbnRFbWl0dGVyPERlbGV0ZUV2ZW50PigpO1xuICAgIHJlYWRvbmx5IGRpc3BsYXlUeXBlQ2hhbmdlZCA9IG5ldyBFdmVudEVtaXR0ZXI8Tm9kZUVudHJpZXNEaXNwbGF5VHlwZT4oKTtcblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIG5nWm9uZTogTmdab25lLFxuICAgICAgICBwcml2YXRlIHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSxcbiAgICAgICAgcHJpdmF0ZSBsb2NhbEV2ZW50czogTG9jYWxFdmVudHNTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGF1dGhlbnRpY2F0aW9uU2VydmljZTogQXV0aGVudGljYXRpb25TZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIHVzZXJTZXJ2aWNlOiBVc2VyU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBuZXR3b3JrU2VydmljZTogTmV0d29ya1NlcnZpY2UsXG4gICAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUga2V5Ym9hcmRTaG9ydGN1dHNTZXJ2aWNlOiBLZXlib2FyZFNob3J0Y3V0c1NlcnZpY2UsXG4gICAgICAgIEBPcHRpb25hbCgpIHByaXZhdGUgb3B0aW9uc0hlbHBlclNlcnZpY2U6IE9wdGlvbnNIZWxwZXJTZXJ2aWNlLFxuICAgICkge1xuICAgICAgICB0aGlzLnJlZ2lzdGVyU3RhdGljU3Vic2NyaXB0aW9ucygpO1xuICAgIH1cbiAgICAvKiogUGVyZm9ybXMgc3Vic2NyaXB0aW9ucyB0aGF0IGRvbid0IGhhdmUgdG8gYmUgcmVmcmVzaGVkLiAqL1xuICAgIHByaXZhdGUgcmVnaXN0ZXJTdGF0aWNTdWJzY3JpcHRpb25zKCk6IHZvaWQge1xuICAgICAgICB0aGlzLmxvY2FsRXZlbnRzLm5vZGVzRGVsZXRlZFxuICAgICAgICAgICAgLnBpcGUodGFrZVVudGlsKHRoaXMuZGVzdHJveWVkKSlcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKG5vZGVzKSA9PiB0aGlzLmNvbXBvbmVudHM/Lmxpc3Q/LmRlbGV0ZU5vZGVzKG5vZGVzKSk7XG4gICAgICAgIHRoaXMubG9jYWxFdmVudHMubm9kZXNDaGFuZ2VkXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWwodGhpcy5kZXN0cm95ZWQpKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgobm9kZXMpID0+IHRoaXMuY29tcG9uZW50cz8ubGlzdD8udXBkYXRlTm9kZXMobm9kZXMpKTtcbiAgICB9XG4gICAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgICAgIHRoaXMuZGVzdHJveWVkLm5leHQoKTtcbiAgICAgICAgdGhpcy5kZXN0cm95ZWQuY29tcGxldGUoKTtcbiAgICB9XG5cbiAgICBhc3luYyBpbml0Q29tcG9uZW50cyhcbiAgICAgICAgYWN0aW9uYmFyOiBBY3Rpb25iYXJDb21wb25lbnQgPSBudWxsLFxuICAgICAgICBsaXN0OiBMaXN0RXZlbnRJbnRlcmZhY2U8Tm9kZUVudHJpZXNEYXRhVHlwZT4gPSBudWxsLFxuICAgICAgICBkcm9wZG93bjogRHJvcGRvd25Db21wb25lbnQgPSBudWxsLFxuICAgICkge1xuICAgICAgICB0aGlzLmNvbXBvbmVudHMgPSB7XG4gICAgICAgICAgICBhY3Rpb25iYXIsXG4gICAgICAgICAgICBsaXN0LFxuICAgICAgICAgICAgZHJvcGRvd24sXG4gICAgICAgIH07XG4gICAgICAgIGlmICgoYXdhaXQgdGhpcy51c2VyU2VydmljZS5nZXRVc2VyKE1FKS5waXBlKHRha2UoMSkpLnRvUHJvbWlzZSgpKS5wZXJzb24uYXV0aG9yaXR5TmFtZSkge1xuICAgICAgICAgICAgYXdhaXQgdGhpcy5uZXR3b3JrU2VydmljZS5nZXRSZXBvc2l0b3JpZXMoKS5waXBlKHRha2UoMSkpLnRvUHJvbWlzZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgZ2V0RGF0YSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuZGF0YTtcbiAgICB9XG5cbiAgICBzZXREYXRhKGRhdGE6IE9wdGlvbkRhdGEpIHtcbiAgICAgICAgdGhpcy5kYXRhID0gdGhpcy5vcHRpb25zSGVscGVyU2VydmljZS53cmFwT3B0aW9uQ2FsbGJhY2tzKGRhdGEpO1xuICAgIH1cblxuICAgIGFzeW5jIHJlZnJlc2hDb21wb25lbnRzKHJlZnJlc2hMaXN0T3B0aW9ucyA9IHRydWUpIHtcbiAgICAgICAgaWYgKHRoaXMuZGF0YSA9PSBudWxsKSB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oJ29wdGlvbnMgaGVscGVyIHJlZnJlc2ggY2FsbGVkIGJ1dCBubyBkYXRhIHByZXZpb3VzbHkgYm91bmQnKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICBpZiAodGhpcy5vcHRpb25zSGVscGVyU2VydmljZSA9PSBudWxsKSB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oJ29wdGlvbnNIZWxwZXJTZXJ2aWNlIG5vdCBwcm92aWRlZC4gTm8gZGVmYXVsdCBhY3Rpb25zIHdpbGwgYmUgZ2VuZXJhdGVkJyk7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5nbG9iYWxPcHRpb25zID0gYXdhaXQgdGhpcy5nZXRBdmFpbGFibGVPcHRpb25zKFRhcmdldC5BY3Rpb25iYXIpO1xuICAgICAgICBhd2FpdCB0aGlzLm9wdGlvbnNIZWxwZXJTZXJ2aWNlPy5yZWZyZXNoQ29tcG9uZW50cyhcbiAgICAgICAgICAgIHRoaXMuY29tcG9uZW50cyxcbiAgICAgICAgICAgIHRoaXMuZGF0YSxcbiAgICAgICAgICAgIHJlZnJlc2hMaXN0T3B0aW9ucyxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBnZXRBdmFpbGFibGVPcHRpb25zKHRhcmdldDogVGFyZ2V0LCBvYmplY3RzOiBOb2RlW10gPSBudWxsKSB7XG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnNIZWxwZXJTZXJ2aWNlPy5nZXRBdmFpbGFibGVPcHRpb25zKFxuICAgICAgICAgICAgdGFyZ2V0LFxuICAgICAgICAgICAgb2JqZWN0cyxcbiAgICAgICAgICAgIHRoaXMuY29tcG9uZW50cyxcbiAgICAgICAgICAgIHRoaXMuZGF0YSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFkZFZpcnR1YWxPYmplY3RzKG9iamVjdHM6IGFueVtdKSB7XG4gICAgICAgIG9iamVjdHMgPSBvYmplY3RzLm1hcCgobzogYW55KSA9PiB7XG4gICAgICAgICAgICBvLnZpcnR1YWwgPSB0cnVlO1xuICAgICAgICAgICAgcmV0dXJuIG87XG4gICAgICAgIH0pO1xuICAgICAgICB0aGlzLnZpcnR1YWxOb2Rlc0FkZGVkLmVtaXQob2JqZWN0cyk7XG4gICAgICAgIGlmICh0aGlzLmNvbXBvbmVudHM/Lmxpc3QpIHtcbiAgICAgICAgICAgIHRoaXMuY29tcG9uZW50cz8ubGlzdC5hZGRWaXJ0dWFsTm9kZXMob2JqZWN0cyk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICByZWdpc3Rlckdsb2JhbEtleWJvYXJkU2hvcnRjdXRzKCkge1xuICAgICAgICB0aGlzLm5nWm9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XG4gICAgICAgICAgICBpZiAoIXRoaXMua2V5Ym9hcmRTaG9ydGN1dHNTdWJzY3JpcHRpb24pIHtcbiAgICAgICAgICAgICAgICB0aGlzLmtleWJvYXJkU2hvcnRjdXRzU3Vic2NyaXB0aW9uID0gZnJvbUV2ZW50KGRvY3VtZW50LCAna2V5ZG93bicpXG4gICAgICAgICAgICAgICAgICAgIC5waXBlKHRha2VVbnRpbCh0aGlzLmRlc3Ryb3llZCkpXG4gICAgICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUoKGV2ZW50OiBLZXlib2FyZEV2ZW50KSA9PiB0aGlzLmhhbmRsZUtleWJvYXJkRXZlbnQoZXZlbnQpKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBoYW5kbGVLZXlib2FyZEV2ZW50KGV2ZW50OiBLZXlib2FyZEV2ZW50KSB7XG4gICAgICAgIGlmICh0aGlzLmdsb2JhbE9wdGlvbnMgJiYgIXRoaXMua2V5Ym9hcmRTaG9ydGN1dHNTZXJ2aWNlPy5zaG91bGRJZ25vcmVTaG9ydGN1dChldmVudCkpIHtcbiAgICAgICAgICAgIGNvbnN0IG1hdGNoZWRPcHRpb24gPSB0aGlzLmdsb2JhbE9wdGlvbnMuZmluZChcbiAgICAgICAgICAgICAgICAob3B0aW9uOiBPcHRpb25JdGVtKSA9PlxuICAgICAgICAgICAgICAgICAgICBvcHRpb24uaXNFbmFibGVkICYmXG4gICAgICAgICAgICAgICAgICAgIG9wdGlvbi5rZXlib2FyZFNob3J0Y3V0ICYmXG4gICAgICAgICAgICAgICAgICAgIG1hdGNoZXNTaG9ydGN1dENvbmRpdGlvbihldmVudCwgb3B0aW9uLmtleWJvYXJkU2hvcnRjdXQpLFxuICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIGlmIChtYXRjaGVkT3B0aW9uKSB7XG4gICAgICAgICAgICAgICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAgICAgICAgICAgICBldmVudC5zdG9wUHJvcGFnYXRpb24oKTtcbiAgICAgICAgICAgICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4gbWF0Y2hlZE9wdGlvbi5jYWxsYmFjayhudWxsKSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgZmlsdGVyT3B0aW9ucyhvcHRpb25zOiBPcHRpb25JdGVtW10sIHRhcmdldDogVGFyZ2V0LCBvYmplY3RzOiBOb2RlW10gfCBhbnkgPSBudWxsKSB7XG4gICAgICAgIHJldHVybiB0aGlzLm9wdGlvbnNIZWxwZXJTZXJ2aWNlLmZpbHRlck9wdGlvbnMob3B0aW9ucywgdGFyZ2V0LCB0aGlzLmRhdGEsIG9iamVjdHMpO1xuICAgIH1cbiAgICAvKipcbiAgICAgKiBzaG9ydGN1dCB0byBzaW1wbHkgZGlzYWJsZSBhbGwgb3B0aW9ucyBvbiB0aGUgZ2l2ZW4gY29tcG9lbm50c1xuICAgICAqIEBwYXJhbSBhY3Rpb25iYXJcbiAgICAgKiBAcGFyYW0gbGlzdFxuICAgICAqL1xuICAgIGNsZWFyQ29tcG9uZW50cyhhY3Rpb25iYXI6IEFjdGlvbmJhckNvbXBvbmVudCwgbGlzdDogTGlzdEV2ZW50SW50ZXJmYWNlPE5vZGU+ID0gbnVsbCkge1xuICAgICAgICBpZiAobGlzdCkge1xuICAgICAgICAgICAgbGlzdC5zZXRPcHRpb25zKG51bGwpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChhY3Rpb25iYXIpIHtcbiAgICAgICAgICAgIGFjdGlvbmJhci5vcHRpb25zID0gW107XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwYXN0ZU5vZGUobm9kZXM6IE5vZGVbXSA9IFtdKSB7XG4gICAgICAgIHRoaXMub3B0aW9uc0hlbHBlclNlcnZpY2UucGFzdGVOb2RlKHRoaXMuY29tcG9uZW50cywgdGhpcy5kYXRhLCBub2Rlcyk7XG4gICAgfVxufVxuIl19
|
|
@@ -19,6 +19,7 @@ export class RepoUrlService {
|
|
|
19
19
|
*/
|
|
20
20
|
async getRepoUrl(url, node) {
|
|
21
21
|
if (!this.configuration.production &&
|
|
22
|
+
!this.configuration.isEmbedded &&
|
|
22
23
|
(await this.networkService.isFromHomeRepository(node).pipe(take(1)).toPromise())) {
|
|
23
24
|
return this.withCurrentOrigin(url);
|
|
24
25
|
}
|
|
@@ -46,4 +47,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImpor
|
|
|
46
47
|
providedIn: 'root',
|
|
47
48
|
}]
|
|
48
49
|
}], ctorParameters: function () { return [{ type: i1.NetworkService }, { type: i2.EduSharingUiConfiguration }]; } });
|
|
49
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwby11cmwuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VkdS1zaGFyaW5nLXVpL3NyYy9saWIvc2VydmljZXMvcmVwby11cmwuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTNDLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7OztBQUd0Qzs7Ozs7R0FLRztBQUlILE1BQU0sT0FBTyxjQUFjO0lBQ3ZCLFlBQ1ksY0FBOEIsRUFDOUIsYUFBd0M7UUFEeEMsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQzlCLGtCQUFhLEdBQWIsYUFBYSxDQUEyQjtJQUNqRCxDQUFDO0lBRUo7O09BRUc7SUFDSCxLQUFLLENBQUMsVUFBVSxDQUFDLEdBQVcsRUFBRSxJQUFVO1FBQ3BDLElBQ0ksQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVU7WUFDOUIsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLFVBQVU7WUFDOUIsQ0FBQyxNQUFNLElBQUksQ0FBQyxjQUFjLENBQUMsb0JBQW9CLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsRUFBRSxDQUFDLEVBQ2xGO1lBQ0UsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDdEM7YUFBTTtZQUNILE9BQU8sR0FBRyxDQUFDO1NBQ2Q7SUFDTCxDQUFDO0lBRUQ7Ozs7T0FJRztJQUNILGlCQUFpQixDQUFDLEdBQVc7UUFDekIsTUFBTSxTQUFTLEdBQUcsSUFBSSxHQUFHLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDL0IsU0FBUyxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQztRQUN0QyxTQUFTLENBQUMsUUFBUSxHQUFHLE1BQU0sQ0FBQyxRQUFRLENBQUMsUUFBUSxDQUFDO1FBQzlDLE9BQU8sU0FBUyxDQUFDLElBQUksQ0FBQztJQUMxQixDQUFDOzhHQS9CUSxjQUFjO2tIQUFkLGNBQWMsY0FGWCxNQUFNOzsyRkFFVCxjQUFjO2tCQUgxQixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5ldHdvcmtTZXJ2aWNlLCBOb2RlIH0gZnJvbSAnbmd4LWVkdS1zaGFyaW5nLWFwaSc7XG5pbXBvcnQgeyB0YWtlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRWR1U2hhcmluZ1VpQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2VkdS1zaGFyaW5nLXVpLWNvbmZpZ3VyYXRpb24nO1xuXG4vKipcbiAqIFJlcGxhY2VzIGFic29sdXRlIGJhY2tlbmQgVVJMcyB3aXRoIHByb3hpZWQgVVJMcyB3aGVuIGluIGRldiBlbnZpcm9ubWVudC5cbiAqXG4gKiBUaGlzIGlzIG5lZWRlZCBmb3IgY29udGVudCB0aGF0IHJlcXVpcmVzIGF1dGhlbnRpY2F0aW9uLCBzbyB0aGUgYnJvd3NlciBwcm92aWRlcyB0aGUgcmVxdWlyZWRcbiAqIHNlc3Npb24gY29va2llIHdpdGggdGhlIHJlcXVlc3QsIG9yIHdoZW4gYWNjZXNzaW5nIHRoZSBkZXYgc2VydmVyIGZyb20gYW5vdGhlciBkZXZpY2UuXG4gKi9cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCcsXG59KVxuZXhwb3J0IGNsYXNzIFJlcG9VcmxTZXJ2aWNlIHtcbiAgICBwcml2YXRlIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIG5ldHdvcmtTZXJ2aWNlOiBOZXR3b3JrU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBjb25maWd1cmF0aW9uOiBFZHVTaGFyaW5nVWlDb25maWd1cmF0aW9uLFxuICAgICkge31cblxuICAgIC8qKlxuICAgICAqIFJlcGxhY2VzIHRoZSBnaXZlbiBVUkwgaWYgdGhlIGdpdmVuIG5vZGUgYmVsb25ncyB0byB0aGUgaG9tZSByZXBvc2l0b3J5LlxuICAgICAqL1xuICAgIGFzeW5jIGdldFJlcG9VcmwodXJsOiBzdHJpbmcsIG5vZGU6IE5vZGUpIHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgIXRoaXMuY29uZmlndXJhdGlvbi5wcm9kdWN0aW9uICYmXG4gICAgICAgICAgICAhdGhpcy5jb25maWd1cmF0aW9uLmlzRW1iZWRkZWQgJiZcbiAgICAgICAgICAgIChhd2FpdCB0aGlzLm5ldHdvcmtTZXJ2aWNlLmlzRnJvbUhvbWVSZXBvc2l0b3J5KG5vZGUpLnBpcGUodGFrZSgxKSkudG9Qcm9taXNlKCkpXG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMud2l0aEN1cnJlbnRPcmlnaW4odXJsKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiB1cmw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXBsYWNlcyB0aGUgZ2l2ZW4gVVJMLlxuICAgICAqXG4gICAgICogVGhlIGNhbGxlciBuZWVkcyB0byBtYWtlIHN1cmUgdGhhdCB0aGUgZ2l2ZW4gVVJMIGJlbG9uZ3MgdG8gdGhlIGhvbWUgcmVwb3NpdG9yeS5cbiAgICAgKi9cbiAgICB3aXRoQ3VycmVudE9yaWdpbih1cmw6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIGNvbnN0IHVybE9iamVjdCA9IG5ldyBVUkwodXJsKTtcbiAgICAgICAgdXJsT2JqZWN0Lmhvc3QgPSB3aW5kb3cubG9jYXRpb24uaG9zdDtcbiAgICAgICAgdXJsT2JqZWN0LnByb3RvY29sID0gd2luZG93LmxvY2F0aW9uLnByb3RvY29sO1xuICAgICAgICByZXR1cm4gdXJsT2JqZWN0LmhyZWY7XG4gICAgfVxufVxuIl19
|
|
@@ -69,6 +69,12 @@ export class UIService {
|
|
|
69
69
|
observeCtrlOrCmdKeyPressedOutsideZone() {
|
|
70
70
|
return rxjs.combineLatest([this.metaKeyPressedSubject, this.ctrlKeyPressedSubject]).pipe(map(([metaKeyPressed, ctrlKeyPressed]) => metaKeyPressed || ctrlKeyPressed), distinctUntilChanged());
|
|
71
71
|
}
|
|
72
|
+
/**
|
|
73
|
+
* @Deprecated
|
|
74
|
+
* Prefer to subscribe to the isTouchSubject directly if viable
|
|
75
|
+
*
|
|
76
|
+
* Returns true if the current sessions seems to be running on a mobile device
|
|
77
|
+
*/
|
|
72
78
|
isMobile() {
|
|
73
79
|
return this.isTouchSubject.value;
|
|
74
80
|
}
|
|
@@ -159,4 +165,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImpor
|
|
|
159
165
|
type: Injectable,
|
|
160
166
|
args: [{ providedIn: 'root' }]
|
|
161
167
|
}], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }, { type: i0.Injector }, { type: i0.NgZone }]; } });
|
|
162
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VkdS1zaGFyaW5nLXVpL3NyYy9saWIvc2VydmljZXMvdWkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBSUgsVUFBVSxHQUtiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sS0FBSyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBQzdCLE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFHM0QsTUFBTSxPQUFPLFNBQVM7SUFNbEIsSUFBSSxlQUFlO1FBQ2YsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUMsS0FBSyxDQUFDO0lBQzdDLENBQUM7SUFFRCxZQUNjLHdCQUFrRCxFQUNsRCxRQUFrQixFQUNsQixNQUFjO1FBRmQsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtRQUNsRCxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFacEIsbUJBQWMsR0FBRyxJQUFJLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM1QywwQkFBcUIsR0FBRyxJQUFJLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuRCwyQkFBc0IsR0FBRyxJQUFJLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwRCwwQkFBcUIsR0FBRyxJQUFJLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQVd2RCwwQ0FBMEM7UUFDMUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUU7WUFDL0IsTUFBTSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFO2dCQUN6QyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDakMsQ0FBQyxDQUFDLENBQUM7WUFDSCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsT0FBTyxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQ3ZDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNqQyxDQUFDLENBQUMsQ0FBQztZQUNILE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxhQUFhLEVBQUUsQ0FBQyxLQUFLLEVBQUUsRUFBRTtnQkFDN0MsbUZBQW1GO2dCQUNuRiw2RUFBNkU7Z0JBQzdFLDhFQUE4RTtnQkFDOUUscUJBQXFCO2dCQUNyQixJQUFJLENBQUMsa0JBQWtCLENBQUMsS0FBSyxDQUFDLENBQUM7WUFDbkMsQ0FBQyxDQUFDLENBQUM7WUFDSCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsYUFBYSxFQUFFLENBQUMsS0FBSyxFQUFFLEVBQUU7Z0JBQzdDLG1GQUFtRjtnQkFDbkYsNkVBQTZFO2dCQUM3RSw4RUFBOEU7Z0JBQzlFLHFCQUFxQjtnQkFDckIsTUFBTSxPQUFPLEdBQUksS0FBc0IsQ0FBQyxXQUFXLEtBQUssT0FBTyxDQUFDO2dCQUNoRSxJQUFJLElBQUksQ0FBQyxjQUFjLENBQUMsS0FBSyxLQUFLLE9BQU8sRUFBRTtvQkFDdkMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQztpQkFDNUQ7WUFDTCxDQUFDLENBQUMsQ0FBQztRQUNQLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUNPLGdCQUFnQixDQUFDLEtBQW9CO1FBQ3pDLDJGQUEyRjtRQUMzRiw2Q0FBNkM7UUFDN0MsSUFBSSxLQUFLLENBQUMsR0FBRyxLQUFLLFNBQVMsRUFBRTtZQUN6QixJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLEtBQUssU0FBUyxDQUFDLENBQUM7U0FDN0Q7YUFBTSxJQUFJLEtBQUssQ0FBQyxHQUFHLEtBQUssT0FBTyxFQUFFO1lBQzlCLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksS0FBSyxTQUFTLENBQUMsQ0FBQztTQUM5RDthQUFNLElBQUksS0FBSyxDQUFDLEdBQUcsS0FBSyxNQUFNLEVBQUU7WUFDN0IsSUFBSSxDQUFDLHFCQUFxQixDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxLQUFLLFNBQVMsQ0FBQyxDQUFDO1NBQzdEO2FBQU07WUFDSCxtRkFBbUY7WUFDbkYsa0VBQWtFO1lBQ2xFLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNsQztJQUNMLENBQUM7SUFFTyxrQkFBa0IsQ0FBQyxLQUFtQztRQUMxRCxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUMvQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMscUJBQXFCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRUQscUNBQXFDO1FBQ2pDLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsRUFBRSxJQUFJLENBQUMscUJBQXFCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FDcEYsR0FBRyxDQUFDLENBQUMsQ0FBQyxjQUFjLEVBQUUsY0FBYyxDQUFDLEVBQUUsRUFBRSxDQUFDLGNBQWMsSUFBSSxjQUFjLENBQUMsRUFDM0Usb0JBQW9CLEVBQUUsQ0FDekIsQ0FBQztJQUNOLENBQUM7SUFFTSxRQUFRO1FBQ1gsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLEtBQUssQ0FBQztJQUNyQyxDQUFDO0lBQ00sTUFBTSxDQUFDLGtCQUFrQixDQUFDLElBQVksRUFBRSxLQUFhO1FBQ3hELElBQUksSUFBSSxJQUFJLFdBQVcsQ0FBQyxxQkFBcUI7WUFBRSxPQUFPLEtBQUssR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDO1FBQ2hGLElBQUksSUFBSSxJQUFJLFdBQVcsQ0FBQyxxQkFBcUI7WUFBRSxPQUFPLEtBQUssR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDO1FBQ2hGLElBQUksSUFBSSxJQUFJLFdBQVcsQ0FBQyxzQkFBc0I7WUFBRSxPQUFPLEtBQUssR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDO1FBQ2xGLElBQUksSUFBSSxJQUFJLFdBQVcsQ0FBQyxzQkFBc0I7WUFBRSxPQUFPLEtBQUssR0FBRyxNQUFNLENBQUMsV0FBVyxDQUFDO1FBQ2xGLE9BQU8sQ0FBQyxJQUFJLENBQUMsMEJBQTBCLEdBQUcsSUFBSSxDQUFDLENBQUM7UUFDaEQsT0FBTyxJQUFJLENBQUM7SUFDaEIsQ0FBQztJQUNELGtCQUFrQixDQUFDLE9BQXFCO1FBQ3BDLElBQUksT0FBTyxJQUFJLElBQUk7WUFBRSxPQUFPLElBQUksQ0FBQztRQUNqQyxPQUFPLEdBQUcsT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQyxDQUFDO1FBQ25ELElBQUksZUFBZSxHQUFpQixFQUFFLENBQUM7UUFDdkMsS0FBSyxJQUFJLE1BQU0sSUFBSSxPQUFPLEVBQUU7WUFDeEIsSUFDSSxDQUFDLENBQUMsTUFBTSxDQUFDLFVBQVUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxVQUFVLElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7Z0JBQzlELENBQUMsQ0FBQyxNQUFNLENBQUMsV0FBVyxJQUFJLENBQUMsTUFBTSxDQUFDLFdBQVcsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxDQUFDO2dCQUNqRSxDQUFDLENBQUMsTUFBTSxDQUFDLGNBQWM7b0JBQ25CLENBQUMsTUFBTSxDQUFDLGNBQWM7d0JBQ2xCLFNBQVMsQ0FBQyxrQkFBa0IsQ0FDeEIsTUFBTSxDQUFDLGNBQWMsRUFDckIsTUFBTSxDQUFDLGVBQWUsQ0FDekIsQ0FBQyxDQUFDO2dCQUVYLGVBQWUsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7U0FDcEM7UUFDRCxPQUFPLGVBQWUsQ0FBQztJQUMzQixDQUFDO0lBRU0sbUJBQW1CLENBQUMsT0FBcUIsRUFBRSxNQUFlO1FBQzdELElBQUksTUFBTSxHQUFpQixFQUFFLENBQUM7UUFDOUIsS0FBSyxJQUFJLE1BQU0sSUFBSSxPQUFPLEVBQUU7WUFDeEIsSUFBSSxNQUFNLENBQUMsUUFBUSxJQUFJLE1BQU07Z0JBQUUsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUN0RDtRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7SUFDRDs7Ozs7Ozs7OztPQVVHO0lBQ0ksc0JBQXNCLENBQ3pCLGdCQUFrQyxFQUNsQyxhQUFzQixFQUN0QixhQUFzQixFQUN0QixXQUFtQyxJQUFJLEVBQ3ZDLEVBQUUsS0FBSyxHQUFHLENBQUMsRUFBRSxPQUFPLEdBQUcsSUFBSSxFQUFFLEdBQUcsRUFBRTtRQUVsQyxJQUFJLGFBQWEsSUFBSSxJQUFJLEVBQUU7WUFDdkIsT0FBTyxJQUFJLENBQUM7U0FDZjtRQUNELE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyx1QkFBdUIsQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNyRixNQUFNLFNBQVMsR0FBb0IsZ0JBQWdCLENBQUMsZUFBZSxDQUMvRCxPQUFPLEVBQ1AsU0FBUyxFQUNULElBQUksQ0FBQyxRQUFRLENBQ2hCLENBQUM7UUFDRixJQUFJLFFBQVEsRUFBRTtZQUNWLE1BQU0sUUFBUSxHQUEyQixTQUFTLENBQUMsUUFBUSxDQUFDO1lBQzVELEtBQUssTUFBTSxHQUFHLElBQUksUUFBUSxFQUFFO2dCQUN4QixNQUFNLE9BQU8sR0FBRyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUM7Z0JBQzlCLElBQUksT0FBTyxZQUFZLFFBQVEsRUFBRTtvQkFDN0IsNkNBQTZDO29CQUM3QyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBVSxFQUFFLEVBQUUsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztpQkFDM0Q7cUJBQU07b0JBQ0gsUUFBUSxDQUFDLEdBQUcsQ0FBQyxHQUFHLE9BQU8sQ0FBQztvQkFDeEIsMkVBQTJFO29CQUMzRSx1QkFBdUI7b0JBQ3ZCLDhKQUE4SjtpQkFDaks7YUFDSjtTQUNKO1FBRUQsb0NBQW9DO1FBQ3BDLE1BQU0sT0FBTyxHQUFJLFNBQVMsQ0FBQyxRQUFpQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQWdCLENBQUM7UUFDekYsT0FBTyxDQUFDLEtBQUssQ0FBQyxPQUFPLEdBQUcsTUFBTSxDQUFDO1FBQy9CLElBQUksT0FBTyxFQUFFO1lBQ1QsYUFBYSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7U0FDbEM7UUFDRCxhQUFhLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ25DLFVBQVUsQ0FBQyxHQUFHLEVBQUU7WUFDWixPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUM7UUFDakMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQ1YsT0FBTyxTQUFTLENBQUM7SUFDckIsQ0FBQzs4R0FuS1EsU0FBUztrSEFBVCxTQUFTLGNBREksTUFBTTs7MkZBQ25CLFNBQVM7a0JBRHJCLFVBQVU7bUJBQUMsRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICAgQ29tcG9uZW50UmVmLFxuICAgIEVtYmVkZGVkVmlld1JlZixcbiAgICBJbmplY3RhYmxlLFxuICAgIEluamVjdG9yLFxuICAgIE5nWm9uZSxcbiAgICBUeXBlLFxuICAgIFZpZXdDb250YWluZXJSZWYsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0ICogYXMgcnhqcyBmcm9tICdyeGpzJztcbmltcG9ydCB7IEJlaGF2aW9yU3ViamVjdCwgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgVUlDb25zdGFudHMgfSBmcm9tICcuLi91dGlsL3VpLWNvbnN0YW50cyc7XG5pbXBvcnQgeyBPcHRpb25JdGVtIH0gZnJvbSAnLi4vdHlwZXMvb3B0aW9uLWl0ZW0nO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBVSVNlcnZpY2Uge1xuICAgIHByaXZhdGUgaXNUb3VjaFN1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcbiAgICBwcml2YXRlIG1ldGFLZXlQcmVzc2VkU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuICAgIHByaXZhdGUgc2hpZnRLZXlQcmVzc2VkU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuICAgIHByaXZhdGUgY3RybEtleVByZXNzZWRTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XG5cbiAgICBnZXQgc2hpZnRLZXlQcmVzc2VkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5zaGlmdEtleVByZXNzZWRTdWJqZWN0LnZhbHVlO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcm90ZWN0ZWQgY29tcG9uZW50RmFjdG9yeVJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICAgICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgIHByb3RlY3RlZCBuZ1pvbmU6IE5nWm9uZSxcbiAgICApIHtcbiAgICAgICAgLy8gSG9zdExpc3RlbmVyIG5vdCB3b3JraW5nLCBzbyB1c2Ugd2luZG93XG4gICAgICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdrZXlkb3duJywgKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5vbktleURvd25PcktleVVwKGV2ZW50KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2tleXVwJywgKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5vbktleURvd25PcktleVVwKGV2ZW50KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJkb3duJywgKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgLy8gVXN1YWxseSwgcHJvcGVydGllcyBmb3IgbW9kaWZpZXIga2V5cyB3aWxsIGJlIHNldCBjb3JyZWN0bHkgb24ga2V5ZG93biBhbmQga2V5dXBcbiAgICAgICAgICAgICAgICAvLyBldmVudHMsIGJ1dCB0aGVyZSBhcmUgc2l0dWF0aW9ucyB3aGVyZSB0aGUgb3BlcmF0aW5nIHN5c3RlbSBpbnRlcmNlcHRzIGtleVxuICAgICAgICAgICAgICAgIC8vIHByZXNzZXMsIGUuZy4gdGhlIFdpbmRvd3Mga2V5IG9uIExpbnV4IHN5c3RlbXMsIHNvIHdlIHVwZGF0ZSBhZ2FpbiBvbiBtb3VzZVxuICAgICAgICAgICAgICAgIC8vIGNsaWNrcyB0byBiZSBzdXJlLlxuICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlTW9kaWZpZXJLZXlzKGV2ZW50KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJkb3duJywgKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgLy8gVXN1YWxseSwgcHJvcGVydGllcyBmb3IgbW9kaWZpZXIga2V5cyB3aWxsIGJlIHNldCBjb3JyZWN0bHkgb24ga2V5ZG93biBhbmQga2V5dXBcbiAgICAgICAgICAgICAgICAvLyBldmVudHMsIGJ1dCB0aGVyZSBhcmUgc2l0dWF0aW9ucyB3aGVyZSB0aGUgb3BlcmF0aW5nIHN5c3RlbSBpbnRlcmNlcHRzIGtleVxuICAgICAgICAgICAgICAgIC8vIHByZXNzZXMsIGUuZy4gdGhlIFdpbmRvd3Mga2V5IG9uIExpbnV4IHN5c3RlbXMsIHNvIHdlIHVwZGF0ZSBhZ2FpbiBvbiBtb3VzZVxuICAgICAgICAgICAgICAgIC8vIGNsaWNrcyB0byBiZSBzdXJlLlxuICAgICAgICAgICAgICAgIGNvbnN0IGlzVG91Y2ggPSAoZXZlbnQgYXMgUG9pbnRlckV2ZW50KS5wb2ludGVyVHlwZSA9PT0gJ3RvdWNoJztcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5pc1RvdWNoU3ViamVjdC52YWx1ZSAhPT0gaXNUb3VjaCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4gdGhpcy5pc1RvdWNoU3ViamVjdC5uZXh0KGlzVG91Y2gpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHByaXZhdGUgb25LZXlEb3duT3JLZXlVcChldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICAvLyBgZXZlbnQubWV0YUtleWAgaXMgbm90IGNvbnNpc3RlbnQgYWNyb3NzIGJyb3dzZXJzIG9uIHRoZSBhY3R1YWwga2V5cHJlc3Mgb2YgdGhlIG1vZGlmaWVyXG4gICAgICAgIC8vIGtleS4gU28gd2UgaGFuZGxlIHRoZXNlIGV2ZW50cyBzZXBhcmF0ZWx5LlxuICAgICAgICBpZiAoZXZlbnQua2V5ID09PSAnQ29udHJvbCcpIHtcbiAgICAgICAgICAgIHRoaXMuY3RybEtleVByZXNzZWRTdWJqZWN0Lm5leHQoZXZlbnQudHlwZSA9PT0gJ2tleWRvd24nKTtcbiAgICAgICAgfSBlbHNlIGlmIChldmVudC5rZXkgPT09ICdTaGlmdCcpIHtcbiAgICAgICAgICAgIHRoaXMuc2hpZnRLZXlQcmVzc2VkU3ViamVjdC5uZXh0KGV2ZW50LnR5cGUgPT09ICdrZXlkb3duJyk7XG4gICAgICAgIH0gZWxzZSBpZiAoZXZlbnQua2V5ID09PSAnTWV0YScpIHtcbiAgICAgICAgICAgIHRoaXMubWV0YUtleVByZXNzZWRTdWJqZWN0Lm5leHQoZXZlbnQudHlwZSA9PT0gJ2tleWRvd24nKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIEluIGNhc2Ugd2UgbWlzcyBtb2RpZmllciBldmVudHMgYmVjYXVzZSB0aGUgYnJvd3NlciBkaWRuJ3QgaGF2ZSBmb2N1cyBkdXJpbmcgdGhlXG4gICAgICAgICAgICAvLyBldmVudCwgd2UgdXBkYXRlIG1vZGlmaWVyIGtleXMgb24gdW5yZWxhdGVkIGtleSBldmVudHMgYXMgd2VsbC5cbiAgICAgICAgICAgIHRoaXMudXBkYXRlTW9kaWZpZXJLZXlzKGV2ZW50KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlTW9kaWZpZXJLZXlzKGV2ZW50OiBQb2ludGVyRXZlbnQgfCBLZXlib2FyZEV2ZW50KSB7XG4gICAgICAgIHRoaXMubWV0YUtleVByZXNzZWRTdWJqZWN0Lm5leHQoZXZlbnQubWV0YUtleSk7XG4gICAgICAgIHRoaXMuc2hpZnRLZXlQcmVzc2VkU3ViamVjdC5uZXh0KGV2ZW50LnNoaWZ0S2V5KTtcbiAgICAgICAgdGhpcy5jdHJsS2V5UHJlc3NlZFN1YmplY3QubmV4dChldmVudC5jdHJsS2V5KTtcbiAgICB9XG5cbiAgICBvYnNlcnZlQ3RybE9yQ21kS2V5UHJlc3NlZE91dHNpZGVab25lKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gcnhqcy5jb21iaW5lTGF0ZXN0KFt0aGlzLm1ldGFLZXlQcmVzc2VkU3ViamVjdCwgdGhpcy5jdHJsS2V5UHJlc3NlZFN1YmplY3RdKS5waXBlKFxuICAgICAgICAgICAgbWFwKChbbWV0YUtleVByZXNzZWQsIGN0cmxLZXlQcmVzc2VkXSkgPT4gbWV0YUtleVByZXNzZWQgfHwgY3RybEtleVByZXNzZWQpLFxuICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgaXNNb2JpbGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmlzVG91Y2hTdWJqZWN0LnZhbHVlO1xuICAgIH1cbiAgICBwdWJsaWMgc3RhdGljIGV2YWx1YXRlTWVkaWFRdWVyeSh0eXBlOiBzdHJpbmcsIHZhbHVlOiBudW1iZXIpIHtcbiAgICAgICAgaWYgKHR5cGUgPT0gVUlDb25zdGFudHMuTUVESUFfUVVFUllfTUFYX1dJRFRIKSByZXR1cm4gdmFsdWUgPiB3aW5kb3cuaW5uZXJXaWR0aDtcbiAgICAgICAgaWYgKHR5cGUgPT0gVUlDb25zdGFudHMuTUVESUFfUVVFUllfTUlOX1dJRFRIKSByZXR1cm4gdmFsdWUgPCB3aW5kb3cuaW5uZXJXaWR0aDtcbiAgICAgICAgaWYgKHR5cGUgPT0gVUlDb25zdGFudHMuTUVESUFfUVVFUllfTUFYX0hFSUdIVCkgcmV0dXJuIHZhbHVlID4gd2luZG93LmlubmVySGVpZ2h0O1xuICAgICAgICBpZiAodHlwZSA9PSBVSUNvbnN0YW50cy5NRURJQV9RVUVSWV9NSU5fSEVJR0hUKSByZXR1cm4gdmFsdWUgPCB3aW5kb3cuaW5uZXJIZWlnaHQ7XG4gICAgICAgIGNvbnNvbGUud2FybignVW5zdXBwb3J0ZWQgbWVkaWEgcXVlcnkgJyArIHR5cGUpO1xuICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICB9XG4gICAgZmlsdGVyVmFsaWRPcHRpb25zKG9wdGlvbnM6IE9wdGlvbkl0ZW1bXSkge1xuICAgICAgICBpZiAob3B0aW9ucyA9PSBudWxsKSByZXR1cm4gbnVsbDtcbiAgICAgICAgb3B0aW9ucyA9IG9wdGlvbnMuZmlsdGVyKCh2YWx1ZSkgPT4gdmFsdWUgIT0gbnVsbCk7XG4gICAgICAgIGxldCBvcHRpb25zRmlsdGVyZWQ6IE9wdGlvbkl0ZW1bXSA9IFtdO1xuICAgICAgICBmb3IgKGxldCBvcHRpb24gb2Ygb3B0aW9ucykge1xuICAgICAgICAgICAgaWYgKFxuICAgICAgICAgICAgICAgICghb3B0aW9uLm9ubHlNb2JpbGUgfHwgKG9wdGlvbi5vbmx5TW9iaWxlICYmIHRoaXMuaXNNb2JpbGUoKSkpICYmXG4gICAgICAgICAgICAgICAgKCFvcHRpb24ub25seURlc2t0b3AgfHwgKG9wdGlvbi5vbmx5RGVza3RvcCAmJiAhdGhpcy5pc01vYmlsZSgpKSkgJiZcbiAgICAgICAgICAgICAgICAoIW9wdGlvbi5tZWRpYVF1ZXJ5VHlwZSB8fFxuICAgICAgICAgICAgICAgICAgICAob3B0aW9uLm1lZGlhUXVlcnlUeXBlICYmXG4gICAgICAgICAgICAgICAgICAgICAgICBVSVNlcnZpY2UuZXZhbHVhdGVNZWRpYVF1ZXJ5KFxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbi5tZWRpYVF1ZXJ5VHlwZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb24ubWVkaWFRdWVyeVZhbHVlLFxuICAgICAgICAgICAgICAgICAgICAgICAgKSkpXG4gICAgICAgICAgICApXG4gICAgICAgICAgICAgICAgb3B0aW9uc0ZpbHRlcmVkLnB1c2gob3B0aW9uKTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gb3B0aW9uc0ZpbHRlcmVkO1xuICAgIH1cblxuICAgIHB1YmxpYyBmaWx0ZXJUb2dnbGVPcHRpb25zKG9wdGlvbnM6IE9wdGlvbkl0ZW1bXSwgdG9nZ2xlOiBib29sZWFuKSB7XG4gICAgICAgIGxldCByZXN1bHQ6IE9wdGlvbkl0ZW1bXSA9IFtdO1xuICAgICAgICBmb3IgKGxldCBvcHRpb24gb2Ygb3B0aW9ucykge1xuICAgICAgICAgICAgaWYgKG9wdGlvbi5pc1RvZ2dsZSA9PSB0b2dnbGUpIHJlc3VsdC5wdXNoKG9wdGlvbik7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHJlc3VsdDtcbiAgICB9XG4gICAgLyoqXG4gICAgICogZHluYW1pY2FsbHkgaW5qZWN0IGFuIGFuZ3VsYXIgY29tcG9uZW50IGludG8gYSByZWd1bGFyIGh0bWwgZG9tIGVsZW1lbnRcbiAgICAgKiBAcGFyYW0gY29tcG9uZW50RmFjdG9yeVJlc29sdmVyIFRoZSByZXNvbHZlciBzZXJ2aWNlXG4gICAgICogQHBhcmFtIHZpZXdDb250YWluZXJSZWYgVGhlIHZpZXdDb250YWluZXJSZWYgc2VydmljZVxuICAgICAqIEBwYXJhbSBjb21wb25lbnROYW1lIFRoZSBuYW1lIG9mIHRoZSBhbmd1bGFyIGNvbXBvbmVudCAoZS5nLiBTcGlubmVyQ29tcG9uZW50KVxuICAgICAqIEBwYXJhbSB0YXJnZXRFbGVtZW50IFRoZSB0YXJnZXQgZWxlbWVudCBvZiB0aGUgZG9tLiBJZiB0aGUgZWxlbWVudCBpcyBudWxsIChub3QgZm91bmQpLCBub3RoaW5nIGlzIGRvbmVcbiAgICAgKiBAcGFyYW0gYmluZGluZ3MgT3B0aW9uYWwgYmluZGluZ3MgKGlucHV0cyAmIG91dHB1dHMpIHRvIHRoZSBnaXZlbiBjb21wb25lbnRcbiAgICAgKiBAcGFyYW0gZGVsYXkgT3B0aW9uYWwgaW5mbGF0aW5nIGRlbGF5IGluIG1zKHNvbWUgY29tcG9uZW50cyBtYXkgbmVlZCBzb21lIHRpbWUgdG8gXCJpbml0XCIgdGhlIGxheW91dClcbiAgICAgKiBAcGFyYW0gcmVwbGFjZSBXaGV0aGVyIHRvIHJlcGxhY2UgdG8gcHJldmlvdXMgYGlubmVySFRNTGAgb2YgYHRhcmdldEVsZW1lbnRgXG4gICAgICogQHBhcmFtIGluamVjdG9yICh0byBmZXRjaCB0ZW1wbGF0ZXMgZm9yIHRoZSBjb21wb25lbnQpXG4gICAgICovXG4gICAgcHVibGljIGluamVjdEFuZ3VsYXJDb21wb25lbnQ8VD4oXG4gICAgICAgIHZpZXdDb250YWluZXJSZWY6IFZpZXdDb250YWluZXJSZWYsXG4gICAgICAgIGNvbXBvbmVudE5hbWU6IFR5cGU8VD4sXG4gICAgICAgIHRhcmdldEVsZW1lbnQ6IEVsZW1lbnQsXG4gICAgICAgIGJpbmRpbmdzOiB7IFtrZXk6IHN0cmluZ106IGFueSB9ID0gbnVsbCxcbiAgICAgICAgeyBkZWxheSA9IDAsIHJlcGxhY2UgPSB0cnVlIH0gPSB7fSxcbiAgICApOiBDb21wb25lbnRSZWY8VD4ge1xuICAgICAgICBpZiAodGFyZ2V0RWxlbWVudCA9PSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBmYWN0b3J5ID0gdGhpcy5jb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIucmVzb2x2ZUNvbXBvbmVudEZhY3RvcnkoY29tcG9uZW50TmFtZSk7XG4gICAgICAgIGNvbnN0IGNvbXBvbmVudDogQ29tcG9uZW50UmVmPFQ+ID0gdmlld0NvbnRhaW5lclJlZi5jcmVhdGVDb21wb25lbnQoXG4gICAgICAgICAgICBmYWN0b3J5LFxuICAgICAgICAgICAgdW5kZWZpbmVkLFxuICAgICAgICAgICAgdGhpcy5pbmplY3RvcixcbiAgICAgICAgKTtcbiAgICAgICAgaWYgKGJpbmRpbmdzKSB7XG4gICAgICAgICAgICBjb25zdCBpbnN0YW5jZTogeyBba2V5OiBzdHJpbmddOiBhbnkgfSA9IGNvbXBvbmVudC5pbnN0YW5jZTtcbiAgICAgICAgICAgIGZvciAoY29uc3Qga2V5IGluIGJpbmRpbmdzKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgYmluZGluZyA9IGJpbmRpbmdzW2tleV07XG4gICAgICAgICAgICAgICAgaWYgKGJpbmRpbmcgaW5zdGFuY2VvZiBGdW5jdGlvbikge1xuICAgICAgICAgICAgICAgICAgICAvLyBzdWJzY3JpYmUgc28gY2FsbGJhY2sgY2FuIHByb3Blcmx5IGludm9rZWRcbiAgICAgICAgICAgICAgICAgICAgaW5zdGFuY2Vba2V5XS5zdWJzY3JpYmUoKHZhbHVlOiBhbnkpID0+IGJpbmRpbmcodmFsdWUpKTtcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBpbnN0YW5jZVtrZXldID0gYmluZGluZztcbiAgICAgICAgICAgICAgICAgICAgLy8gYG5nT25DaGFuZ2VzYCB3b24ndCBiZSBjYWxsZWQgb24gdGhlIGNvbXBvbmVudCBsaWtlIHRoaXMuIENvbnNpZGVyIGRvaW5nXG4gICAgICAgICAgICAgICAgICAgIC8vIHNvbWV0aGluZyBsaWtlIHRoaXM6XG4gICAgICAgICAgICAgICAgICAgIC8vIGh0dHBzOi8vc2NtLmVkdS1zaGFyaW5nLmNvbS9lZHUtc2hhcmluZy9wcm9qZWN0cy9vZWgtcmVkYWt0aW9uL25nLW1ldGEtd2lkZ2V0cy8tL2Jsb2IvMTYwM2ZiMmRlZGFkZDM5NTI0MDEzODViY2JkOTFhNGJkODQwNzY0My9zcmMvYXBwL2FwcC5tb2R1bGUudHMjTDY2LTc5XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG5cbiAgICAgICAgLy8gMy4gR2V0IERPTSBlbGVtZW50IGZyb20gY29tcG9uZW50XG4gICAgICAgIGNvbnN0IGRvbUVsZW0gPSAoY29tcG9uZW50Lmhvc3RWaWV3IGFzIEVtYmVkZGVkVmlld1JlZjxhbnk+KS5yb290Tm9kZXNbMF0gYXMgSFRNTEVsZW1lbnQ7XG4gICAgICAgIGRvbUVsZW0uc3R5bGUuZGlzcGxheSA9ICdub25lJztcbiAgICAgICAgaWYgKHJlcGxhY2UpIHtcbiAgICAgICAgICAgIHRhcmdldEVsZW1lbnQuaW5uZXJIVE1MID0gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICB0YXJnZXRFbGVtZW50LmFwcGVuZENoaWxkKGRvbUVsZW0pO1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgIGRvbUVsZW0uc3R5bGUuZGlzcGxheSA9IG51bGw7XG4gICAgICAgIH0sIGRlbGF5KTtcbiAgICAgICAgcmV0dXJuIGNvbXBvbmVudDtcbiAgICB9XG59XG4iXX0=
|
|
168
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWkuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VkdS1zaGFyaW5nLXVpL3NyYy9saWIvc2VydmljZXMvdWkuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBSUgsVUFBVSxHQUtiLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sS0FBSyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBQzdCLE9BQU8sRUFBRSxlQUFlLEVBQWMsTUFBTSxNQUFNLENBQUM7QUFDbkQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRW5ELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFHM0QsTUFBTSxPQUFPLFNBQVM7SUFNbEIsSUFBSSxlQUFlO1FBQ2YsT0FBTyxJQUFJLENBQUMsc0JBQXNCLENBQUMsS0FBSyxDQUFDO0lBQzdDLENBQUM7SUFFRCxZQUNjLHdCQUFrRCxFQUNsRCxRQUFrQixFQUNsQixNQUFjO1FBRmQsNkJBQXdCLEdBQXhCLHdCQUF3QixDQUEwQjtRQUNsRCxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2xCLFdBQU0sR0FBTixNQUFNLENBQVE7UUFaNUIsbUJBQWMsR0FBRyxJQUFJLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwQywwQkFBcUIsR0FBRyxJQUFJLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNuRCwyQkFBc0IsR0FBRyxJQUFJLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUNwRCwwQkFBcUIsR0FBRyxJQUFJLGVBQWUsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQVd2RCwwQ0FBMEM7UUFDMUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxHQUFHLEVBQUU7WUFDL0IsTUFBTSxDQUFDLGdCQUFnQixDQUFDLFNBQVMsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFO2dC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NkM7b0JBQzdDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxLQUFVLEVBQUUsRUFBRSxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO2lCQUMzRDtxQkFBTTtvQkFDSCxRQUFRLENBQUMsR0FBRyxDQUFDLEdBQUcsT0FBTyxDQUFDO29CQUN4QiwyRUFBMkU7b0JBQzNFLHVCQUF1QjtvQkFDdkIsOEpBQThKO2lCQUNqSzthQUNKO1NBQ0o7UUFFRCxvQ0FBb0M7UUFDcEMsTUFBTSxPQUFPLEdBQUksU0FBUyxDQUFDLFFBQWlDLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBZ0IsQ0FBQztRQUN6RixPQUFPLENBQUMsS0FBSyxDQUFDLE9BQU8sR0FBRyxNQUFNLENBQUM7UUFDL0IsSUFBSSxPQUFPLEVBQUU7WUFDVCxhQUFhLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztTQUNsQztRQUNELGFBQWEsQ0FBQyxXQUFXLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDbkMsVUFBVSxDQUFDLEdBQUcsRUFBRTtZQUNaLE9BQU8sQ0FBQyxLQUFLLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQztRQUNqQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUM7UUFDVixPQUFPLFNBQVMsQ0FBQztJQUNyQixDQUFDOzhHQXpLUSxTQUFTO2tIQUFULFNBQVMsY0FESSxNQUFNOzsyRkFDbkIsU0FBUztrQkFEckIsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENvbXBvbmVudEZhY3RvcnlSZXNvbHZlcixcbiAgICBDb21wb25lbnRSZWYsXG4gICAgRW1iZWRkZWRWaWV3UmVmLFxuICAgIEluamVjdGFibGUsXG4gICAgSW5qZWN0b3IsXG4gICAgTmdab25lLFxuICAgIFR5cGUsXG4gICAgVmlld0NvbnRhaW5lclJlZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgKiBhcyByeGpzIGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBVSUNvbnN0YW50cyB9IGZyb20gJy4uL3V0aWwvdWktY29uc3RhbnRzJztcbmltcG9ydCB7IE9wdGlvbkl0ZW0gfSBmcm9tICcuLi90eXBlcy9vcHRpb24taXRlbSc7XG5pbXBvcnQgeyBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIFVJU2VydmljZSB7XG4gICAgaXNUb3VjaFN1YmplY3QgPSBuZXcgQmVoYXZpb3JTdWJqZWN0KGZhbHNlKTtcbiAgICBwcml2YXRlIG1ldGFLZXlQcmVzc2VkU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuICAgIHByaXZhdGUgc2hpZnRLZXlQcmVzc2VkU3ViamVjdCA9IG5ldyBCZWhhdmlvclN1YmplY3QoZmFsc2UpO1xuICAgIHByaXZhdGUgY3RybEtleVByZXNzZWRTdWJqZWN0ID0gbmV3IEJlaGF2aW9yU3ViamVjdChmYWxzZSk7XG5cbiAgICBnZXQgc2hpZnRLZXlQcmVzc2VkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5zaGlmdEtleVByZXNzZWRTdWJqZWN0LnZhbHVlO1xuICAgIH1cblxuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcm90ZWN0ZWQgY29tcG9uZW50RmFjdG9yeVJlc29sdmVyOiBDb21wb25lbnRGYWN0b3J5UmVzb2x2ZXIsXG4gICAgICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgICAgIHByb3RlY3RlZCBuZ1pvbmU6IE5nWm9uZSxcbiAgICApIHtcbiAgICAgICAgLy8gSG9zdExpc3RlbmVyIG5vdCB3b3JraW5nLCBzbyB1c2Ugd2luZG93XG4gICAgICAgIHRoaXMubmdab25lLnJ1bk91dHNpZGVBbmd1bGFyKCgpID0+IHtcbiAgICAgICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdrZXlkb3duJywgKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5vbktleURvd25PcktleVVwKGV2ZW50KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ2tleXVwJywgKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5vbktleURvd25PcktleVVwKGV2ZW50KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJkb3duJywgKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgLy8gVXN1YWxseSwgcHJvcGVydGllcyBmb3IgbW9kaWZpZXIga2V5cyB3aWxsIGJlIHNldCBjb3JyZWN0bHkgb24ga2V5ZG93biBhbmQga2V5dXBcbiAgICAgICAgICAgICAgICAvLyBldmVudHMsIGJ1dCB0aGVyZSBhcmUgc2l0dWF0aW9ucyB3aGVyZSB0aGUgb3BlcmF0aW5nIHN5c3RlbSBpbnRlcmNlcHRzIGtleVxuICAgICAgICAgICAgICAgIC8vIHByZXNzZXMsIGUuZy4gdGhlIFdpbmRvd3Mga2V5IG9uIExpbnV4IHN5c3RlbXMsIHNvIHdlIHVwZGF0ZSBhZ2FpbiBvbiBtb3VzZVxuICAgICAgICAgICAgICAgIC8vIGNsaWNrcyB0byBiZSBzdXJlLlxuICAgICAgICAgICAgICAgIHRoaXMudXBkYXRlTW9kaWZpZXJLZXlzKGV2ZW50KTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3BvaW50ZXJkb3duJywgKGV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgICAgLy8gVXN1YWxseSwgcHJvcGVydGllcyBmb3IgbW9kaWZpZXIga2V5cyB3aWxsIGJlIHNldCBjb3JyZWN0bHkgb24ga2V5ZG93biBhbmQga2V5dXBcbiAgICAgICAgICAgICAgICAvLyBldmVudHMsIGJ1dCB0aGVyZSBhcmUgc2l0dWF0aW9ucyB3aGVyZSB0aGUgb3BlcmF0aW5nIHN5c3RlbSBpbnRlcmNlcHRzIGtleVxuICAgICAgICAgICAgICAgIC8vIHByZXNzZXMsIGUuZy4gdGhlIFdpbmRvd3Mga2V5IG9uIExpbnV4IHN5c3RlbXMsIHNvIHdlIHVwZGF0ZSBhZ2FpbiBvbiBtb3VzZVxuICAgICAgICAgICAgICAgIC8vIGNsaWNrcyB0byBiZSBzdXJlLlxuICAgICAgICAgICAgICAgIGNvbnN0IGlzVG91Y2ggPSAoZXZlbnQgYXMgUG9pbnRlckV2ZW50KS5wb2ludGVyVHlwZSA9PT0gJ3RvdWNoJztcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5pc1RvdWNoU3ViamVjdC52YWx1ZSAhPT0gaXNUb3VjaCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4gdGhpcy5pc1RvdWNoU3ViamVjdC5uZXh0KGlzVG91Y2gpKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgfVxuICAgIHByaXZhdGUgb25LZXlEb3duT3JLZXlVcChldmVudDogS2V5Ym9hcmRFdmVudCkge1xuICAgICAgICAvLyBgZXZlbnQubWV0YUtleWAgaXMgbm90IGNvbnNpc3RlbnQgYWNyb3NzIGJyb3dzZXJzIG9uIHRoZSBhY3R1YWwga2V5cHJlc3Mgb2YgdGhlIG1vZGlmaWVyXG4gICAgICAgIC8vIGtleS4gU28gd2UgaGFuZGxlIHRoZXNlIGV2ZW50cyBzZXBhcmF0ZWx5LlxuICAgICAgICBpZiAoZXZlbnQua2V5ID09PSAnQ29udHJvbCcpIHtcbiAgICAgICAgICAgIHRoaXMuY3RybEtleVByZXNzZWRTdWJqZWN0Lm5leHQoZXZlbnQudHlwZSA9PT0gJ2tleWRvd24nKTtcbiAgICAgICAgfSBlbHNlIGlmIChldmVudC5rZXkgPT09ICdTaGlmdCcpIHtcbiAgICAgICAgICAgIHRoaXMuc2hpZnRLZXlQcmVzc2VkU3ViamVjdC5uZXh0KGV2ZW50LnR5cGUgPT09ICdrZXlkb3duJyk7XG4gICAgICAgIH0gZWxzZSBpZiAoZXZlbnQua2V5ID09PSAnTWV0YScpIHtcbiAgICAgICAgICAgIHRoaXMubWV0YUtleVByZXNzZWRTdWJqZWN0Lm5leHQoZXZlbnQudHlwZSA9PT0gJ2tleWRvd24nKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIC8vIEluIGNhc2Ugd2UgbWlzcyBtb2RpZmllciBldmVudHMgYmVjYXVzZSB0aGUgYnJvd3NlciBkaWRuJ3QgaGF2ZSBmb2N1cyBkdXJpbmcgdGhlXG4gICAgICAgICAgICAvLyBldmVudCwgd2UgdXBkYXRlIG1vZGlmaWVyIGtleXMgb24gdW5yZWxhdGVkIGtleSBldmVudHMgYXMgd2VsbC5cbiAgICAgICAgICAgIHRoaXMudXBkYXRlTW9kaWZpZXJLZXlzKGV2ZW50KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgdXBkYXRlTW9kaWZpZXJLZXlzKGV2ZW50OiBQb2ludGVyRXZlbnQgfCBLZXlib2FyZEV2ZW50KSB7XG4gICAgICAgIHRoaXMubWV0YUtleVByZXNzZWRTdWJqZWN0Lm5leHQoZXZlbnQubWV0YUtleSk7XG4gICAgICAgIHRoaXMuc2hpZnRLZXlQcmVzc2VkU3ViamVjdC5uZXh0KGV2ZW50LnNoaWZ0S2V5KTtcbiAgICAgICAgdGhpcy5jdHJsS2V5UHJlc3NlZFN1YmplY3QubmV4dChldmVudC5jdHJsS2V5KTtcbiAgICB9XG5cbiAgICBvYnNlcnZlQ3RybE9yQ21kS2V5UHJlc3NlZE91dHNpZGVab25lKCk6IE9ic2VydmFibGU8Ym9vbGVhbj4ge1xuICAgICAgICByZXR1cm4gcnhqcy5jb21iaW5lTGF0ZXN0KFt0aGlzLm1ldGFLZXlQcmVzc2VkU3ViamVjdCwgdGhpcy5jdHJsS2V5UHJlc3NlZFN1YmplY3RdKS5waXBlKFxuICAgICAgICAgICAgbWFwKChbbWV0YUtleVByZXNzZWQsIGN0cmxLZXlQcmVzc2VkXSkgPT4gbWV0YUtleVByZXNzZWQgfHwgY3RybEtleVByZXNzZWQpLFxuICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBARGVwcmVjYXRlZFxuICAgICAqIFByZWZlciB0byBzdWJzY3JpYmUgdG8gdGhlIGlzVG91Y2hTdWJqZWN0IGRpcmVjdGx5IGlmIHZpYWJsZVxuICAgICAqXG4gICAgICogUmV0dXJucyB0cnVlIGlmIHRoZSBjdXJyZW50IHNlc3Npb25zIHNlZW1zIHRvIGJlIHJ1bm5pbmcgb24gYSBtb2JpbGUgZGV2aWNlXG4gICAgICovXG4gICAgcHVibGljIGlzTW9iaWxlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5pc1RvdWNoU3ViamVjdC52YWx1ZTtcbiAgICB9XG4gICAgcHVibGljIHN0YXRpYyBldmFsdWF0ZU1lZGlhUXVlcnkodHlwZTogc3RyaW5nLCB2YWx1ZTogbnVtYmVyKSB7XG4gICAgICAgIGlmICh0eXBlID09IFVJQ29uc3RhbnRzLk1FRElBX1FVRVJZX01BWF9XSURUSCkgcmV0dXJuIHZhbHVlID4gd2luZG93LmlubmVyV2lkdGg7XG4gICAgICAgIGlmICh0eXBlID09IFVJQ29uc3RhbnRzLk1FRElBX1FVRVJZX01JTl9XSURUSCkgcmV0dXJuIHZhbHVlIDwgd2luZG93LmlubmVyV2lkdGg7XG4gICAgICAgIGlmICh0eXBlID09IFVJQ29uc3RhbnRzLk1FRElBX1FVRVJZX01BWF9IRUlHSFQpIHJldHVybiB2YWx1ZSA+IHdpbmRvdy5pbm5lckhlaWdodDtcbiAgICAgICAgaWYgKHR5cGUgPT0gVUlDb25zdGFudHMuTUVESUFfUVVFUllfTUlOX0hFSUdIVCkgcmV0dXJuIHZhbHVlIDwgd2luZG93LmlubmVySGVpZ2h0O1xuICAgICAgICBjb25zb2xlLndhcm4oJ1Vuc3VwcG9ydGVkIG1lZGlhIHF1ZXJ5ICcgKyB0eXBlKTtcbiAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICAgIGZpbHRlclZhbGlkT3B0aW9ucyhvcHRpb25zOiBPcHRpb25JdGVtW10pIHtcbiAgICAgICAgaWYgKG9wdGlvbnMgPT0gbnVsbCkgcmV0dXJuIG51bGw7XG4gICAgICAgIG9wdGlvbnMgPSBvcHRpb25zLmZpbHRlcigodmFsdWUpID0+IHZhbHVlICE9IG51bGwpO1xuICAgICAgICBsZXQgb3B0aW9uc0ZpbHRlcmVkOiBPcHRpb25JdGVtW10gPSBbXTtcbiAgICAgICAgZm9yIChsZXQgb3B0aW9uIG9mIG9wdGlvbnMpIHtcbiAgICAgICAgICAgIGlmIChcbiAgICAgICAgICAgICAgICAoIW9wdGlvbi5vbmx5TW9iaWxlIHx8IChvcHRpb24ub25seU1vYmlsZSAmJiB0aGlzLmlzTW9iaWxlKCkpKSAmJlxuICAgICAgICAgICAgICAgICghb3B0aW9uLm9ubHlEZXNrdG9wIHx8IChvcHRpb24ub25seURlc2t0b3AgJiYgIXRoaXMuaXNNb2JpbGUoKSkpICYmXG4gICAgICAgICAgICAgICAgKCFvcHRpb24ubWVkaWFRdWVyeVR5cGUgfHxcbiAgICAgICAgICAgICAgICAgICAgKG9wdGlvbi5tZWRpYVF1ZXJ5VHlwZSAmJlxuICAgICAgICAgICAgICAgICAgICAgICAgVUlTZXJ2aWNlLmV2YWx1YXRlTWVkaWFRdWVyeShcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb24ubWVkaWFRdWVyeVR5cGUsXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgb3B0aW9uLm1lZGlhUXVlcnlWYWx1ZSxcbiAgICAgICAgICAgICAgICAgICAgICAgICkpKVxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgICAgIG9wdGlvbnNGaWx0ZXJlZC5wdXNoKG9wdGlvbik7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIG9wdGlvbnNGaWx0ZXJlZDtcbiAgICB9XG5cbiAgICBwdWJsaWMgZmlsdGVyVG9nZ2xlT3B0aW9ucyhvcHRpb25zOiBPcHRpb25JdGVtW10sIHRvZ2dsZTogYm9vbGVhbikge1xuICAgICAgICBsZXQgcmVzdWx0OiBPcHRpb25JdGVtW10gPSBbXTtcbiAgICAgICAgZm9yIChsZXQgb3B0aW9uIG9mIG9wdGlvbnMpIHtcbiAgICAgICAgICAgIGlmIChvcHRpb24uaXNUb2dnbGUgPT0gdG9nZ2xlKSByZXN1bHQucHVzaChvcHRpb24pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiByZXN1bHQ7XG4gICAgfVxuICAgIC8qKlxuICAgICAqIGR5bmFtaWNhbGx5IGluamVjdCBhbiBhbmd1bGFyIGNvbXBvbmVudCBpbnRvIGEgcmVndWxhciBodG1sIGRvbSBlbGVtZW50XG4gICAgICogQHBhcmFtIGNvbXBvbmVudEZhY3RvcnlSZXNvbHZlciBUaGUgcmVzb2x2ZXIgc2VydmljZVxuICAgICAqIEBwYXJhbSB2aWV3Q29udGFpbmVyUmVmIFRoZSB2aWV3Q29udGFpbmVyUmVmIHNlcnZpY2VcbiAgICAgKiBAcGFyYW0gY29tcG9uZW50TmFtZSBUaGUgbmFtZSBvZiB0aGUgYW5ndWxhciBjb21wb25lbnQgKGUuZy4gU3Bpbm5lckNvbXBvbmVudClcbiAgICAgKiBAcGFyYW0gdGFyZ2V0RWxlbWVudCBUaGUgdGFyZ2V0IGVsZW1lbnQgb2YgdGhlIGRvbS4gSWYgdGhlIGVsZW1lbnQgaXMgbnVsbCAobm90IGZvdW5kKSwgbm90aGluZyBpcyBkb25lXG4gICAgICogQHBhcmFtIGJpbmRpbmdzIE9wdGlvbmFsIGJpbmRpbmdzIChpbnB1dHMgJiBvdXRwdXRzKSB0byB0aGUgZ2l2ZW4gY29tcG9uZW50XG4gICAgICogQHBhcmFtIGRlbGF5IE9wdGlvbmFsIGluZmxhdGluZyBkZWxheSBpbiBtcyhzb21lIGNvbXBvbmVudHMgbWF5IG5lZWQgc29tZSB0aW1lIHRvIFwiaW5pdFwiIHRoZSBsYXlvdXQpXG4gICAgICogQHBhcmFtIHJlcGxhY2UgV2hldGhlciB0byByZXBsYWNlIHRvIHByZXZpb3VzIGBpbm5lckhUTUxgIG9mIGB0YXJnZXRFbGVtZW50YFxuICAgICAqIEBwYXJhbSBpbmplY3RvciAodG8gZmV0Y2ggdGVtcGxhdGVzIGZvciB0aGUgY29tcG9uZW50KVxuICAgICAqL1xuICAgIHB1YmxpYyBpbmplY3RBbmd1bGFyQ29tcG9uZW50PFQ+KFxuICAgICAgICB2aWV3Q29udGFpbmVyUmVmOiBWaWV3Q29udGFpbmVyUmVmLFxuICAgICAgICBjb21wb25lbnROYW1lOiBUeXBlPFQ+LFxuICAgICAgICB0YXJnZXRFbGVtZW50OiBFbGVtZW50LFxuICAgICAgICBiaW5kaW5nczogeyBba2V5OiBzdHJpbmddOiBhbnkgfSA9IG51bGwsXG4gICAgICAgIHsgZGVsYXkgPSAwLCByZXBsYWNlID0gdHJ1ZSB9ID0ge30sXG4gICAgKTogQ29tcG9uZW50UmVmPFQ+IHtcbiAgICAgICAgaWYgKHRhcmdldEVsZW1lbnQgPT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgZmFjdG9yeSA9IHRoaXMuY29tcG9uZW50RmFjdG9yeVJlc29sdmVyLnJlc29sdmVDb21wb25lbnRGYWN0b3J5KGNvbXBvbmVudE5hbWUpO1xuICAgICAgICBjb25zdCBjb21wb25lbnQ6IENvbXBvbmVudFJlZjxUPiA9IHZpZXdDb250YWluZXJSZWYuY3JlYXRlQ29tcG9uZW50KFxuICAgICAgICAgICAgZmFjdG9yeSxcbiAgICAgICAgICAgIHVuZGVmaW5lZCxcbiAgICAgICAgICAgIHRoaXMuaW5qZWN0b3IsXG4gICAgICAgICk7XG4gICAgICAgIGlmIChiaW5kaW5ncykge1xuICAgICAgICAgICAgY29uc3QgaW5zdGFuY2U6IHsgW2tleTogc3RyaW5nXTogYW55IH0gPSBjb21wb25lbnQuaW5zdGFuY2U7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IGtleSBpbiBiaW5kaW5ncykge1xuICAgICAgICAgICAgICAgIGNvbnN0IGJpbmRpbmcgPSBiaW5kaW5nc1trZXldO1xuICAgICAgICAgICAgICAgIGlmIChiaW5kaW5nIGluc3RhbmNlb2YgRnVuY3Rpb24pIHtcbiAgICAgICAgICAgICAgICAgICAgLy8gc3Vic2NyaWJlIHNvIGNhbGxiYWNrIGNhbiBwcm9wZXJseSBpbnZva2VkXG4gICAgICAgICAgICAgICAgICAgIGluc3RhbmNlW2tleV0uc3Vic2NyaWJlKCh2YWx1ZTogYW55KSA9PiBiaW5kaW5nKHZhbHVlKSk7XG4gICAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgaW5zdGFuY2Vba2V5XSA9IGJpbmRpbmc7XG4gICAgICAgICAgICAgICAgICAgIC8vIGBuZ09uQ2hhbmdlc2Agd29uJ3QgYmUgY2FsbGVkIG9uIHRoZSBjb21wb25lbnQgbGlrZSB0aGlzLiBDb25zaWRlciBkb2luZ1xuICAgICAgICAgICAgICAgICAgICAvLyBzb21ldGhpbmcgbGlrZSB0aGlzOlxuICAgICAgICAgICAgICAgICAgICAvLyBodHRwczovL3NjbS5lZHUtc2hhcmluZy5jb20vZWR1LXNoYXJpbmcvcHJvamVjdHMvb2VoLXJlZGFrdGlvbi9uZy1tZXRhLXdpZGdldHMvLS9ibG9iLzE2MDNmYjJkZWRhZGQzOTUyNDAxMzg1YmNiZDkxYTRiZDg0MDc2NDMvc3JjL2FwcC9hcHAubW9kdWxlLnRzI0w2Ni03OVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIC8vIDMuIEdldCBET00gZWxlbWVudCBmcm9tIGNvbXBvbmVudFxuICAgICAgICBjb25zdCBkb21FbGVtID0gKGNvbXBvbmVudC5ob3N0VmlldyBhcyBFbWJlZGRlZFZpZXdSZWY8YW55Pikucm9vdE5vZGVzWzBdIGFzIEhUTUxFbGVtZW50O1xuICAgICAgICBkb21FbGVtLnN0eWxlLmRpc3BsYXkgPSAnbm9uZSc7XG4gICAgICAgIGlmIChyZXBsYWNlKSB7XG4gICAgICAgICAgICB0YXJnZXRFbGVtZW50LmlubmVySFRNTCA9IG51bGw7XG4gICAgICAgIH1cbiAgICAgICAgdGFyZ2V0RWxlbWVudC5hcHBlbmRDaGlsZChkb21FbGVtKTtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICBkb21FbGVtLnN0eWxlLmRpc3BsYXkgPSBudWxsO1xuICAgICAgICB9LCBkZWxheSk7XG4gICAgICAgIHJldHVybiBjb21wb25lbnQ7XG4gICAgfVxufVxuIl19
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { Component, HostBinding } from '@angular/core';
|
|
2
|
+
import { TranslateModule } from '@ngx-translate/core';
|
|
2
3
|
import * as i0 from "@angular/core";
|
|
3
4
|
import * as i1 from "@ngx-translate/core";
|
|
4
5
|
export class SpinnerComponent {
|
|
@@ -6,13 +7,13 @@ export class SpinnerComponent {
|
|
|
6
7
|
this.dataTest = 'loading-spinner';
|
|
7
8
|
}
|
|
8
9
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: SpinnerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
9
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: SpinnerComponent, selector: "es-spinner", host: { properties: { "attr.data-test": "this.dataTest" } }, ngImport: i0, template: "<div class=\"spinner\">\n <span aria-live=\"polite\" class=\"cdk-visually-hidden\">{{ 'LOADING' | translate }}</span>\n <div class=\"spinnercontainer\">\n <div class=\"inner\">\n <div class=\"spinner1\"></div>\n </div>\n <div class=\"inner\">\n <div class=\"spinner2\"></div>\n </div>\n <div class=\"inner\">\n <div class=\"spinner3\"></div>\n </div>\n </div>\n</div>\n", styles: [".spinner{margin:0 auto}.spinnercontainer{margin:20px auto auto;height:54px;color:#0000;text-align:center;float:left;width:100%}.inner{width:30px;height:50px;display:inline-block}.spinner1{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDEyLjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgNTE0NDgpICAtLT4KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIiBbCgk8IUVOVElUWSBuc19zdmcgImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KCTwhRU5USVRZIG5zX3hsaW5rICJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KXT4KPHN2ZyAgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9IiZuc19zdmc7IiB4bWxuczp4bGluaz0iJm5zX3hsaW5rOyIgd2lkdGg9IjE1LjY1NyIgaGVpZ2h0PSIxMy41NTkiCgkgdmlld0JveD0iMCAwIDE1LjY1NyAxMy41NTkiIG92ZXJmbG93PSJ2aXNpYmxlIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAxNS42NTcgMTMuNTU5IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHBvbHlnb24gb3BhY2l0eT0iMC42IiBmaWxsPSIjYzFjNmUzIiBwb2ludHM9IjMuOTE0LDEzLjU1OSAwLDYuNzggMy45MTQsMCAxMS43NDMsMCAxNS42NTcsNi43OCAxMS43NDMsMTMuNTU5ICIvPgo8L3N2Zz4K);background-repeat:no-repeat;background-position:center;background-size:50px;width:50px;height:50px;animation:spin 2s infinite ease-in;animation-delay:.1s}.spinner2{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDEyLjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgNTE0NDgpICAtLT4KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIiBbCgk8IUVOVElUWSBuc19zdmcgImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KCTwhRU5USVRZIG5zX3hsaW5rICJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KXT4KPHN2ZyAgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9IiZuc19zdmc7IiB4bWxuczp4bGluaz0iJm5zX3hsaW5rOyIgd2lkdGg9IjE1LjY1NyIgaGVpZ2h0PSIxMy41NTkiCgkgdmlld0JveD0iMCAwIDE1LjY1NyAxMy41NTkiIG92ZXJmbG93PSJ2aXNpYmxlIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAxNS42NTcgMTMuNTU5IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHBvbHlnb24gb3BhY2l0eT0iMC42IiBmaWxsPSIjN2Y5MWMzIiBwb2ludHM9IjMuOTE0LDEzLjU1OSAwLDYuNzggMy45MTQsMCAxMS43NDMsMCAxNS42NTcsNi43OCAxMS43NDMsMTMuNTU5ICIvPgo8L3N2Zz4K);background-repeat:no-repeat;background-position:center;background-size:50px;width:50px;height:50px;animation:spin 2s infinite ease-in;animation-delay:.25s}.spinner3{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDEyLjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgNTE0NDgpICAtLT4KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIiBbCgk8IUVOVElUWSBuc19zdmcgImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KCTwhRU5USVRZIG5zX3hsaW5rICJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KXT4KPHN2ZyAgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9IiZuc19zdmc7IiB4bWxuczp4bGluaz0iJm5zX3hsaW5rOyIgd2lkdGg9IjE1LjY1NyIgaGVpZ2h0PSIxMy41NTkiCgkgdmlld0JveD0iMCAwIDE1LjY1NyAxMy41NTkiIG92ZXJmbG93PSJ2aXNpYmxlIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAxNS42NTcgMTMuNTU5IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHBvbHlnb24gb3BhY2l0eT0iMC42IiBmaWxsPSIjMzE2MmE3IiBwb2ludHM9IjMuOTE0LDEzLjU1OSAwLDYuNzggMy45MTQsMCAxMS43NDMsMCAxNS42NTcsNi43OCAxMS43NDMsMTMuNTU5ICIvPgo8L3N2Zz4K);background-repeat:no-repeat;background-position:center;background-size:50px;width:50px;height:50px;animation:spin 2s infinite ease-in;animation-delay:.5s}@keyframes spin{0%{transform:scale(1)}50%{transform:scale(.5) rotate(90deg)}to{transform:scale(1)}}\n"], dependencies: [{ kind: "pipe", type: i1.TranslatePipe, name: "translate" }] }); }
|
|
10
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.6", type: SpinnerComponent, isStandalone: true, selector: "es-spinner", host: { properties: { "attr.data-test": "this.dataTest" } }, ngImport: i0, template: "<div class=\"spinner\">\n <span aria-live=\"polite\" class=\"cdk-visually-hidden\">{{ 'LOADING' | translate }}</span>\n <div class=\"spinnercontainer\">\n <div class=\"inner\">\n <div class=\"spinner1\"></div>\n </div>\n <div class=\"inner\">\n <div class=\"spinner2\"></div>\n </div>\n <div class=\"inner\">\n <div class=\"spinner3\"></div>\n </div>\n </div>\n</div>\n", styles: [".spinner{margin:0 auto}.spinnercontainer{margin:20px auto auto;height:54px;color:#0000;text-align:center;float:left;width:100%}.inner{width:30px;height:50px;display:inline-block}.spinner1{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDEyLjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgNTE0NDgpICAtLT4KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIiBbCgk8IUVOVElUWSBuc19zdmcgImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KCTwhRU5USVRZIG5zX3hsaW5rICJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KXT4KPHN2ZyAgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9IiZuc19zdmc7IiB4bWxuczp4bGluaz0iJm5zX3hsaW5rOyIgd2lkdGg9IjE1LjY1NyIgaGVpZ2h0PSIxMy41NTkiCgkgdmlld0JveD0iMCAwIDE1LjY1NyAxMy41NTkiIG92ZXJmbG93PSJ2aXNpYmxlIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAxNS42NTcgMTMuNTU5IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHBvbHlnb24gb3BhY2l0eT0iMC42IiBmaWxsPSIjYzFjNmUzIiBwb2ludHM9IjMuOTE0LDEzLjU1OSAwLDYuNzggMy45MTQsMCAxMS43NDMsMCAxNS42NTcsNi43OCAxMS43NDMsMTMuNTU5ICIvPgo8L3N2Zz4K);background-repeat:no-repeat;background-position:center;background-size:50px;width:50px;height:50px;animation:spin 2s infinite ease-in;animation-delay:.1s}.spinner2{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDEyLjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgNTE0NDgpICAtLT4KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIiBbCgk8IUVOVElUWSBuc19zdmcgImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KCTwhRU5USVRZIG5zX3hsaW5rICJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KXT4KPHN2ZyAgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9IiZuc19zdmc7IiB4bWxuczp4bGluaz0iJm5zX3hsaW5rOyIgd2lkdGg9IjE1LjY1NyIgaGVpZ2h0PSIxMy41NTkiCgkgdmlld0JveD0iMCAwIDE1LjY1NyAxMy41NTkiIG92ZXJmbG93PSJ2aXNpYmxlIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAxNS42NTcgMTMuNTU5IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHBvbHlnb24gb3BhY2l0eT0iMC42IiBmaWxsPSIjN2Y5MWMzIiBwb2ludHM9IjMuOTE0LDEzLjU1OSAwLDYuNzggMy45MTQsMCAxMS43NDMsMCAxNS42NTcsNi43OCAxMS43NDMsMTMuNTU5ICIvPgo8L3N2Zz4K);background-repeat:no-repeat;background-position:center;background-size:50px;width:50px;height:50px;animation:spin 2s infinite ease-in;animation-delay:.25s}.spinner3{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDEyLjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgNTE0NDgpICAtLT4KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIiBbCgk8IUVOVElUWSBuc19zdmcgImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KCTwhRU5USVRZIG5zX3hsaW5rICJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KXT4KPHN2ZyAgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9IiZuc19zdmc7IiB4bWxuczp4bGluaz0iJm5zX3hsaW5rOyIgd2lkdGg9IjE1LjY1NyIgaGVpZ2h0PSIxMy41NTkiCgkgdmlld0JveD0iMCAwIDE1LjY1NyAxMy41NTkiIG92ZXJmbG93PSJ2aXNpYmxlIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAxNS42NTcgMTMuNTU5IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHBvbHlnb24gb3BhY2l0eT0iMC42IiBmaWxsPSIjMzE2MmE3IiBwb2ludHM9IjMuOTE0LDEzLjU1OSAwLDYuNzggMy45MTQsMCAxMS43NDMsMCAxNS42NTcsNi43OCAxMS43NDMsMTMuNTU5ICIvPgo8L3N2Zz4K);background-repeat:no-repeat;background-position:center;background-size:50px;width:50px;height:50px;animation:spin 2s infinite ease-in;animation-delay:.5s}@keyframes spin{0%{transform:scale(1)}50%{transform:scale(.5) rotate(90deg)}to{transform:scale(1)}}\n"], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] }); }
|
|
10
11
|
}
|
|
11
12
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImport: i0, type: SpinnerComponent, decorators: [{
|
|
12
13
|
type: Component,
|
|
13
|
-
args: [{ selector: 'es-spinner', template: "<div class=\"spinner\">\n <span aria-live=\"polite\" class=\"cdk-visually-hidden\">{{ 'LOADING' | translate }}</span>\n <div class=\"spinnercontainer\">\n <div class=\"inner\">\n <div class=\"spinner1\"></div>\n </div>\n <div class=\"inner\">\n <div class=\"spinner2\"></div>\n </div>\n <div class=\"inner\">\n <div class=\"spinner3\"></div>\n </div>\n </div>\n</div>\n", styles: [".spinner{margin:0 auto}.spinnercontainer{margin:20px auto auto;height:54px;color:#0000;text-align:center;float:left;width:100%}.inner{width:30px;height:50px;display:inline-block}.spinner1{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDEyLjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgNTE0NDgpICAtLT4KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIiBbCgk8IUVOVElUWSBuc19zdmcgImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KCTwhRU5USVRZIG5zX3hsaW5rICJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KXT4KPHN2ZyAgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9IiZuc19zdmc7IiB4bWxuczp4bGluaz0iJm5zX3hsaW5rOyIgd2lkdGg9IjE1LjY1NyIgaGVpZ2h0PSIxMy41NTkiCgkgdmlld0JveD0iMCAwIDE1LjY1NyAxMy41NTkiIG92ZXJmbG93PSJ2aXNpYmxlIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAxNS42NTcgMTMuNTU5IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHBvbHlnb24gb3BhY2l0eT0iMC42IiBmaWxsPSIjYzFjNmUzIiBwb2ludHM9IjMuOTE0LDEzLjU1OSAwLDYuNzggMy45MTQsMCAxMS43NDMsMCAxNS42NTcsNi43OCAxMS43NDMsMTMuNTU5ICIvPgo8L3N2Zz4K);background-repeat:no-repeat;background-position:center;background-size:50px;width:50px;height:50px;animation:spin 2s infinite ease-in;animation-delay:.1s}.spinner2{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDEyLjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgNTE0NDgpICAtLT4KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIiBbCgk8IUVOVElUWSBuc19zdmcgImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KCTwhRU5USVRZIG5zX3hsaW5rICJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KXT4KPHN2ZyAgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9IiZuc19zdmc7IiB4bWxuczp4bGluaz0iJm5zX3hsaW5rOyIgd2lkdGg9IjE1LjY1NyIgaGVpZ2h0PSIxMy41NTkiCgkgdmlld0JveD0iMCAwIDE1LjY1NyAxMy41NTkiIG92ZXJmbG93PSJ2aXNpYmxlIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAxNS42NTcgMTMuNTU5IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHBvbHlnb24gb3BhY2l0eT0iMC42IiBmaWxsPSIjN2Y5MWMzIiBwb2ludHM9IjMuOTE0LDEzLjU1OSAwLDYuNzggMy45MTQsMCAxMS43NDMsMCAxNS42NTcsNi43OCAxMS43NDMsMTMuNTU5ICIvPgo8L3N2Zz4K);background-repeat:no-repeat;background-position:center;background-size:50px;width:50px;height:50px;animation:spin 2s infinite ease-in;animation-delay:.25s}.spinner3{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDEyLjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgNTE0NDgpICAtLT4KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIiBbCgk8IUVOVElUWSBuc19zdmcgImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KCTwhRU5USVRZIG5zX3hsaW5rICJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KXT4KPHN2ZyAgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9IiZuc19zdmc7IiB4bWxuczp4bGluaz0iJm5zX3hsaW5rOyIgd2lkdGg9IjE1LjY1NyIgaGVpZ2h0PSIxMy41NTkiCgkgdmlld0JveD0iMCAwIDE1LjY1NyAxMy41NTkiIG92ZXJmbG93PSJ2aXNpYmxlIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAxNS42NTcgMTMuNTU5IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHBvbHlnb24gb3BhY2l0eT0iMC42IiBmaWxsPSIjMzE2MmE3IiBwb2ludHM9IjMuOTE0LDEzLjU1OSAwLDYuNzggMy45MTQsMCAxMS43NDMsMCAxNS42NTcsNi43OCAxMS43NDMsMTMuNTU5ICIvPgo8L3N2Zz4K);background-repeat:no-repeat;background-position:center;background-size:50px;width:50px;height:50px;animation:spin 2s infinite ease-in;animation-delay:.5s}@keyframes spin{0%{transform:scale(1)}50%{transform:scale(.5) rotate(90deg)}to{transform:scale(1)}}\n"] }]
|
|
14
|
+
args: [{ selector: 'es-spinner', standalone: true, imports: [TranslateModule], template: "<div class=\"spinner\">\n <span aria-live=\"polite\" class=\"cdk-visually-hidden\">{{ 'LOADING' | translate }}</span>\n <div class=\"spinnercontainer\">\n <div class=\"inner\">\n <div class=\"spinner1\"></div>\n </div>\n <div class=\"inner\">\n <div class=\"spinner2\"></div>\n </div>\n <div class=\"inner\">\n <div class=\"spinner3\"></div>\n </div>\n </div>\n</div>\n", styles: [".spinner{margin:0 auto}.spinnercontainer{margin:20px auto auto;height:54px;color:#0000;text-align:center;float:left;width:100%}.inner{width:30px;height:50px;display:inline-block}.spinner1{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDEyLjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgNTE0NDgpICAtLT4KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIiBbCgk8IUVOVElUWSBuc19zdmcgImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KCTwhRU5USVRZIG5zX3hsaW5rICJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KXT4KPHN2ZyAgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9IiZuc19zdmc7IiB4bWxuczp4bGluaz0iJm5zX3hsaW5rOyIgd2lkdGg9IjE1LjY1NyIgaGVpZ2h0PSIxMy41NTkiCgkgdmlld0JveD0iMCAwIDE1LjY1NyAxMy41NTkiIG92ZXJmbG93PSJ2aXNpYmxlIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAxNS42NTcgMTMuNTU5IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHBvbHlnb24gb3BhY2l0eT0iMC42IiBmaWxsPSIjYzFjNmUzIiBwb2ludHM9IjMuOTE0LDEzLjU1OSAwLDYuNzggMy45MTQsMCAxMS43NDMsMCAxNS42NTcsNi43OCAxMS43NDMsMTMuNTU5ICIvPgo8L3N2Zz4K);background-repeat:no-repeat;background-position:center;background-size:50px;width:50px;height:50px;animation:spin 2s infinite ease-in;animation-delay:.1s}.spinner2{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDEyLjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgNTE0NDgpICAtLT4KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIiBbCgk8IUVOVElUWSBuc19zdmcgImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KCTwhRU5USVRZIG5zX3hsaW5rICJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KXT4KPHN2ZyAgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9IiZuc19zdmc7IiB4bWxuczp4bGluaz0iJm5zX3hsaW5rOyIgd2lkdGg9IjE1LjY1NyIgaGVpZ2h0PSIxMy41NTkiCgkgdmlld0JveD0iMCAwIDE1LjY1NyAxMy41NTkiIG92ZXJmbG93PSJ2aXNpYmxlIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAxNS42NTcgMTMuNTU5IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHBvbHlnb24gb3BhY2l0eT0iMC42IiBmaWxsPSIjN2Y5MWMzIiBwb2ludHM9IjMuOTE0LDEzLjU1OSAwLDYuNzggMy45MTQsMCAxMS43NDMsMCAxNS42NTcsNi43OCAxMS43NDMsMTMuNTU5ICIvPgo8L3N2Zz4K);background-repeat:no-repeat;background-position:center;background-size:50px;width:50px;height:50px;animation:spin 2s infinite ease-in;animation-delay:.25s}.spinner3{background:url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDEyLjAuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgNTE0NDgpICAtLT4KPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIiBbCgk8IUVOVElUWSBuc19zdmcgImh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KCTwhRU5USVRZIG5zX3hsaW5rICJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIj4KXT4KPHN2ZyAgdmVyc2lvbj0iMS4xIiBpZD0iTGF5ZXJfMSIgeG1sbnM9IiZuc19zdmc7IiB4bWxuczp4bGluaz0iJm5zX3hsaW5rOyIgd2lkdGg9IjE1LjY1NyIgaGVpZ2h0PSIxMy41NTkiCgkgdmlld0JveD0iMCAwIDE1LjY1NyAxMy41NTkiIG92ZXJmbG93PSJ2aXNpYmxlIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCAxNS42NTcgMTMuNTU5IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHBvbHlnb24gb3BhY2l0eT0iMC42IiBmaWxsPSIjMzE2MmE3IiBwb2ludHM9IjMuOTE0LDEzLjU1OSAwLDYuNzggMy45MTQsMCAxMS43NDMsMCAxNS42NTcsNi43OCAxMS43NDMsMTMuNTU5ICIvPgo8L3N2Zz4K);background-repeat:no-repeat;background-position:center;background-size:50px;width:50px;height:50px;animation:spin 2s infinite ease-in;animation-delay:.5s}@keyframes spin{0%{transform:scale(1)}50%{transform:scale(.5) rotate(90deg)}to{transform:scale(1)}}\n"] }]
|
|
14
15
|
}], ctorParameters: function () { return []; }, propDecorators: { dataTest: [{
|
|
15
16
|
type: HostBinding,
|
|
16
17
|
args: ['attr.data-test']
|
|
17
18
|
}] } });
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Bpbm5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lZHUtc2hhcmluZy11aS9zcmMvbGliL3NwaW5uZXIvc3Bpbm5lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9lZHUtc2hhcmluZy11aS9zcmMvbGliL3NwaW5uZXIvc3Bpbm5lci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMvRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUJBQXFCLENBQUM7OztBQVN0RCxNQUFNLE9BQU8sZ0JBQWdCO0lBR3pCO1FBRndDLGFBQVEsR0FBRyxpQkFBaUIsQ0FBQztJQUV0RCxDQUFDOzhHQUhQLGdCQUFnQjtrR0FBaEIsZ0JBQWdCLG1JQ1Y3Qix1WkFjQSxzbEhETmMsZUFBZTs7MkZBRWhCLGdCQUFnQjtrQkFQNUIsU0FBUzsrQkFDSSxZQUFZLGNBR1YsSUFBSSxXQUNQLENBQUMsZUFBZSxDQUFDOzBFQUdjLFFBQVE7c0JBQS9DLFdBQVc7dUJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBIb3N0QmluZGluZywgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdlcy1zcGlubmVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJ3NwaW5uZXIuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWydzcGlubmVyLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbVHJhbnNsYXRlTW9kdWxlXSxcbn0pXG5leHBvcnQgY2xhc3MgU3Bpbm5lckNvbXBvbmVudCB7XG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLmRhdGEtdGVzdCcpIHJlYWRvbmx5IGRhdGFUZXN0ID0gJ2xvYWRpbmctc3Bpbm5lcic7XG5cbiAgICBjb25zdHJ1Y3RvcigpIHt9XG59XG4iLCI8ZGl2IGNsYXNzPVwic3Bpbm5lclwiPlxuICA8c3BhbiBhcmlhLWxpdmU9XCJwb2xpdGVcIiBjbGFzcz1cImNkay12aXN1YWxseS1oaWRkZW5cIj57eyAnTE9BRElORycgfCB0cmFuc2xhdGUgfX08L3NwYW4+XG4gIDxkaXYgY2xhc3M9XCJzcGlubmVyY29udGFpbmVyXCI+XG4gICAgPGRpdiBjbGFzcz1cImlubmVyXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwic3Bpbm5lcjFcIj48L2Rpdj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiaW5uZXJcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJzcGlubmVyMlwiPjwvZGl2PlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJpbm5lclwiPlxuICAgICAgPGRpdiBjbGFzcz1cInNwaW5uZXIzXCI+PC9kaXY+XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
|
|
@@ -1,7 +1,18 @@
|
|
|
1
|
+
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
2
|
+
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
|
|
3
|
+
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
|
|
4
|
+
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
5
|
+
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
6
|
+
};
|
|
7
|
+
var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
8
|
+
return function (target, key) { decorator(target, key, paramIndex); }
|
|
9
|
+
};
|
|
10
|
+
import { Inject, Optional } from '@angular/core';
|
|
11
|
+
import { LANGUAGES } from 'ngx-edu-sharing-api';
|
|
1
12
|
import * as rxjs from 'rxjs';
|
|
2
13
|
import { concat, of } from 'rxjs';
|
|
3
14
|
import { catchError, first, map, reduce } from 'rxjs/operators';
|
|
4
|
-
import {
|
|
15
|
+
import { ASSETS_BASE_PATH } from '../types/injection-tokens';
|
|
5
16
|
import { TranslationSource } from './translation-source';
|
|
6
17
|
export const TRANSLATION_LIST = [
|
|
7
18
|
'common',
|
|
@@ -20,11 +31,12 @@ export const TRANSLATION_LIST = [
|
|
|
20
31
|
'stream',
|
|
21
32
|
'override',
|
|
22
33
|
];
|
|
23
|
-
|
|
24
|
-
static create(http, configService, configuration) {
|
|
25
|
-
return new TranslationLoader(http, configService, configuration);
|
|
34
|
+
let TranslationLoader = class TranslationLoader {
|
|
35
|
+
static create(http, configService, configuration, assetsBasePath) {
|
|
36
|
+
return new TranslationLoader(assetsBasePath, http, configService, configuration);
|
|
26
37
|
}
|
|
27
|
-
constructor(http, configService, configuration, prefix = 'assets/i18n', suffix = '.json') {
|
|
38
|
+
constructor(assetsBasePath, http, configService, configuration, prefix = (assetsBasePath ?? '') + 'assets/i18n', suffix = '.json') {
|
|
39
|
+
this.assetsBasePath = assetsBasePath;
|
|
28
40
|
this.http = http;
|
|
29
41
|
this.configService = configService;
|
|
30
42
|
this.configuration = configuration;
|
|
@@ -41,6 +53,9 @@ export class TranslationLoader {
|
|
|
41
53
|
if (lang === 'none') {
|
|
42
54
|
return of({});
|
|
43
55
|
}
|
|
56
|
+
if (!LANGUAGES[lang]) {
|
|
57
|
+
console.error('unknown locale for language ' + lang);
|
|
58
|
+
}
|
|
44
59
|
this.configService.setLocale(LANGUAGES[lang]);
|
|
45
60
|
return rxjs
|
|
46
61
|
.forkJoin({
|
|
@@ -80,7 +95,14 @@ export class TranslationLoader {
|
|
|
80
95
|
* file.
|
|
81
96
|
*/
|
|
82
97
|
fetchTranslations(lang) {
|
|
83
|
-
return TRANSLATION_LIST.map((translation) => `${this.prefix}/${translation}/${lang}${this.suffix}`)
|
|
98
|
+
return TRANSLATION_LIST.map((translation) => `${this.prefix}/${translation}/${lang}${this.suffix}`)
|
|
99
|
+
.map((url) => this.http.get(url))
|
|
100
|
+
.map((obs) => obs.pipe(catchError((e) => {
|
|
101
|
+
console.warn('missing translation file for language ' +
|
|
102
|
+
lang +
|
|
103
|
+
', translations will be missing / falling back to the default language');
|
|
104
|
+
return of({});
|
|
105
|
+
})));
|
|
84
106
|
}
|
|
85
107
|
/**
|
|
86
108
|
* Takes an array as returned by `fetchTranslations` and converts it to an
|
|
@@ -145,5 +167,14 @@ export class TranslationLoader {
|
|
|
145
167
|
}
|
|
146
168
|
return translations;
|
|
147
169
|
}
|
|
148
|
-
}
|
|
149
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRpb24tbG9hZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi90cmFuc2xhdGlvbnMvdHJhbnNsYXRpb24tbG9hZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUdBLE9BQU8sS0FBSyxJQUFJLE1BQU0sTUFBTSxDQUFDO0FBQzdCLE9BQU8sRUFBRSxNQUFNLEVBQWMsRUFBRSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQzlDLE9BQU8sRUFBRSxVQUFVLEVBQUUsS0FBSyxFQUFFLEdBQUcsRUFBRSxNQUFNLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUVoRSxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3hDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXpELE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHO0lBQzVCLFFBQVE7SUFDUixPQUFPO0lBQ1AsU0FBUztJQUNULFdBQVc7SUFDWCxRQUFRO0lBQ1IsYUFBYTtJQUNiLE9BQU87SUFDUCxhQUFhO0lBQ2IsS0FBSztJQUNMLFVBQVU7SUFDVixVQUFVO0lBQ1YsVUFBVTtJQUNWLFVBQVU7SUFDVixRQUFRO0lBQ1IsVUFBVTtDQUNiLENBQUM7QUFJRixNQUFNLE9BQU8saUJBQWlCO0lBQzFCLE1BQU0sQ0FBQyxNQUFNLENBQ1QsSUFBZ0IsRUFDaEIsYUFBNEIsRUFDNUIsYUFBd0M7UUFFeEMsT0FBTyxJQUFJLGlCQUFpQixDQUFDLElBQUksRUFBRSxhQUFhLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDckUsQ0FBQztJQUVELFlBQ1ksSUFBZ0IsRUFDaEIsYUFBNEIsRUFDNUIsYUFBd0MsRUFDeEMsU0FBaUIsYUFBYSxFQUM5QixTQUFpQixPQUFPO1FBSnhCLFNBQUksR0FBSixJQUFJLENBQVk7UUFDaEIsa0JBQWEsR0FBYixhQUFhLENBQWU7UUFD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QU8sWUFBWSxDQUFDO0lBQ3hCLENBQUM7SUFFTyxzQkFBc0IsQ0FBQyxZQUF3QixFQUFFLE9BQWlCLEVBQUU7UUFDeEUsS0FBSyxJQUFJLEdBQUcsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFO1lBQ3ZDLElBQUksT0FBTyxZQUFZLENBQUMsR0FBRyxDQUFDLEtBQUssUUFBUSxFQUFFO2dCQUN2QyxvREFBb0Q7Z0JBQ3BEOzt1QkFFTztnQkFDUCxZQUFZLENBQUMsR0FBRyxDQUFDLEdBQUksWUFBWSxDQUFDLEdBQUcsQ0FBWSxDQUFDLE9BQU8sQ0FDckQsdUJBQXVCLEVBQ3ZCLEdBQUcsQ0FDTixDQUFDO2FBQ0w7aUJBQU07Z0JBQ0gsWUFBWSxDQUFDLEdBQUcsQ0FBQyxHQUFHLElBQUksQ0FBQyxzQkFBc0IsQ0FDM0MsWUFBWSxDQUFDLEdBQUcsQ0FBZSxFQUMvQixJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUNuQixDQUFDO2FBQ0w7U0FDSjtRQUVELE9BQU8sWUFBWSxDQUFDO0lBQ3hCLENBQUM7Q0FDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBUcmFuc2xhdGVMb2FkZXIgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IENvbmZpZ1NlcnZpY2UgfSBmcm9tICduZ3gtZWR1LXNoYXJpbmctYXBpJztcbmltcG9ydCAqIGFzIHJ4anMgZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjb25jYXQsIE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBjYXRjaEVycm9yLCBmaXJzdCwgbWFwLCByZWR1Y2UgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQgeyBFZHVTaGFyaW5nVWlDb25maWd1cmF0aW9uIH0gZnJvbSAnLi4vZWR1LXNoYXJpbmctdWktY29uZmlndXJhdGlvbic7XG5pbXBvcnQgeyBMQU5HVUFHRVMgfSBmcm9tICcuL2xhbmd1YWdlcyc7XG5pbXBvcnQgeyBUcmFuc2xhdGlvblNvdXJjZSB9IGZyb20gJy4vdHJhbnNsYXRpb24tc291cmNlJztcblxuZXhwb3J0IGNvbnN0IFRSQU5TTEFUSU9OX0xJU1QgPSBbXG4gICAgJ2NvbW1vbicsXG4gICAgJ2FkbWluJyxcbiAgICAncmVjeWNsZScsXG4gICAgJ3dvcmtzcGFjZScsXG4gICAgJ3NlYXJjaCcsXG4gICAgJ2NvbGxlY3Rpb25zJyxcbiAgICAnbG9naW4nLFxuICAgICdwZXJtaXNzaW9ucycsXG4gICAgJ29lcicsXG4gICAgJ21lc3NhZ2VzJyxcbiAgICAncmVnaXN0ZXInLFxuICAgICdwcm9maWxlcycsXG4gICAgJ3NlcnZpY2VzJyxcbiAgICAnc3RyZWFtJyxcbiAgICAnb3ZlcnJpZGUnLFxuXTtcblxudHlwZSBEaWN0aW9uYXJ5ID0geyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfCBEaWN0aW9uYXJ5IH07XG5cbmV4cG9ydCBjbGFzcyBUcmFuc2xhdGlvbkxvYWRlciBpbXBsZW1lbnRzIFRyYW5zbGF0ZUxvYWRlciB7XG4gICAgc3RhdGljIGNyZWF0ZShcbiAgICAgICAgaHR0cDogSHR0cENsaWVudCxcbiAgICAgICAgY29uZmlnU2VydmljZTogQ29uZmlnU2VydmljZSxcbiAgICAgICAgY29uZmlndXJhdGlvbjogRWR1U2hhcmluZ1VpQ29uZmlndXJhdGlvbixcbiAgICApIHtcbiAgICAgICAgcmV0dXJuIG5ldyBUcmFuc2xhdGlvbkxvYWRlcihodHRwLCBjb25maWdTZXJ2aWNlLCBjb25maWd1cmF0aW9uKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgICAgIHByaXZhdGUgY29uZmlnU2VydmljZTogQ29uZmlnU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBjb25maWd1cmF0aW9uOiBFZHVTaGFyaW5nVWlDb25maWd1cmF0aW9uLFxuICAgICAgICBwcml2YXRlIHByZWZpeDogc3RyaW5nID0gJ2Fzc2V0cy9pMThuJyxcbiAgICAgICAgcHJpdmF0ZSBzdWZmaXg6IHN0cmluZyA9ICcuanNvbicsXG4gICAgKSB7fVxuXG4gICAgLy8gSWYgeW91IG5lZWQgdG8gY29uZmlndXJlIHRoaXMsIGRlZmluZSBhbiBpbmplY3RhYmxlIGNvbmZpZ3VyYXRpb24gb2JqZWN0LiBTZWVcbiAgICAvLyBodHRwczovL2FuZ3VsYXIuaW8vZ3VpZGUvZGVwZW5kZW5jeS1pbmplY3Rpb24tcHJvdmlkZXJzI2luamVjdGluZy1hLWNvbmZpZ3VyYXRpb24tb2JqZWN0LlxuICAgIHByaXZhdGUgcmVhZG9ubHkgc291cmNlOiBUcmFuc2xhdGlvblNvdXJjZSA9IFRyYW5zbGF0aW9uU291cmNlLkF1dG87XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSB0cmFuc2xhdGlvbnMgZnJvbSB0aGUgc2VydmVyXG4gICAgICovXG4gICAgZ2V0VHJhbnNsYXRpb24obGFuZzogc3RyaW5nKTogT2JzZXJ2YWJsZTxEaWN0aW9uYXJ5PiB7XG4gICAgICAgIGlmIChsYW5nID09PSAnbm9uZScpIHtcbiAgICAgICAgICAgIHJldHVybiBvZih7fSk7XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5jb25maWdTZXJ2aWNlLnNldExvY2FsZShMQU5HVUFHRVNbbGFuZ10pO1xuICAgICAgICByZXR1cm4gcnhqc1xuICAgICAgICAgICAgLmZvcmtKb2luKHtcbiAgICAgICAgICAgICAgICBvcmlnaW5hbFRyYW5zbGF0aW9uczogdGhpcy5nZXRPcmlnaW5hbFRyYW5zbGF0aW9ucyhsYW5nKS5waXBlKFxuICAgICAgICAgICAgICAgICAgICAvLyBEZWZhdWx0IHRvIGVtcHR5IGRpY3Rpb25hcnkgaWYgd2UgZ290IG5vdGhpbmdcbiAgICAgICAgICAgICAgICAgICAgbWFwKCh0cmFuc2xhdGlvbnMpID0+IHRyYW5zbGF0aW9ucyB8fCB7fSksXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICB0cmFuc2xhdGlvbk92ZXJyaWRlczogdGhpcy5jb25maWdTZXJ2aWNlXG4gICAgICAgICAgICAgICAgICAgIC5vYnNlcnZlVHJhbnNsYXRpb25PdmVycmlkZXMoKVxuICAgICAgICAgICAgICAgICAgICAucGlwZShmaXJzdCgpKSxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAucGlwZShcbiAgICAgICAgICAgICAgICBtYXAoKHsgb3JpZ2luYWxUcmFuc2xhdGlvbnMsIHRyYW5zbGF0aW9uT3ZlcnJpZGVzIH0pID0+XG4gICAgICAgICAgICAgICAgICAgIC8vIEZJWE1FOiBUaGlzIHdpbGwgYWx0ZXIgdGhlIG9iamVjdCByZXR1cm5lZCBieSBgZ2V0T3JpZ2luYWxUcmFuc2xhdGlvbnNgLlxuICAgICAgICAgICAgICAgICAgICB0aGlzLmFwcGx5T3ZlcnJpZGVzKG9yaWdpbmFsVHJhbnNsYXRpb25zLCB0cmFuc2xhdGlvbk92ZXJyaWRlcyksXG4gICAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgICAgICBtYXAoKHRyYW5zbGF0aW9ucykgPT4gdGhpcy5yZXBsYWNlR2VuZGVyQ2hhcmFjdGVyKHRyYW5zbGF0aW9ucykpLFxuICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGVycm9yLCBvYnMpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcihlcnJvcik7XG4gICAgICAgICAgICAgICAgICAgIHJldHVybiBvZihlcnJvcik7XG4gICAgICAgICAgICAgICAgfSksXG4gICAgICAgICAgICApO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0T3JpZ2luYWxUcmFuc2xhdGlvbnMobGFuZzogc3RyaW5nKTogT2JzZXJ2YWJsZTxEaWN0aW9uYXJ5PiB7XG4gICAgICAgIHN3aXRjaCAodGhpcy5nZXRTb3VyY2UoKSkge1xuICAgICAgICAgICAgY2FzZSAncmVwb3NpdG9yeSc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMuY29uZmlnU2VydmljZS5vYnNlcnZlRGVmYXVsdFRyYW5zbGF0aW9ucygpLnBpcGUoZmlyc3QoKSk7XG4gICAgICAgICAgICBjYXNlICdsb2NhbCc6XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMubWVyZ2VUcmFuc2xhdGlvbnModGhpcy5mZXRjaFRyYW5zbGF0aW9ucyhsYW5nKSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBwcml2YXRlIGdldFNvdXJjZSgpOiAncmVwb3NpdG9yeScgfCAnbG9jYWwnIHtcbiAgICAgICAgaWYgKFxuICAgICAgICAgICAgKHRoaXMuY29uZmlndXJhdGlvbi5wcm9kdWN0aW9uICYmIHRoaXMuc291cmNlID09PSBUcmFuc2xhdGlvblNvdXJjZS5BdXRvKSB8fFxuICAgICAgICAgICAgdGhpcy5zb3VyY2UgPT09IFRyYW5zbGF0aW9uU291cmNlLlJlcG9zaXRvcnlcbiAgICAgICAgKSB7XG4gICAgICAgICAgICByZXR1cm4gJ3JlcG9zaXRvcnknO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuICdsb2NhbCc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGFuIGFycmF5IG9mIE9ic2VydmFibGVzIHRoYXQgd2lsbCBlYWNoIGZldGNoIGEgdHJhbnNsYXRpb25zIGpzb25cbiAgICAgKiBmaWxlLlxuICAgICAqL1xuICAgIHByaXZhdGUgZmV0Y2hUcmFuc2xhdGlvbnMobGFuZzogc3RyaW5nKTogT2JzZXJ2YWJsZTxEaWN0aW9uYXJ5PltdIHtcbiAgICAgICAgcmV0dXJuIFRSQU5TTEFUSU9OX0xJU1QubWFwKFxuICAgICAgICAgICAgKHRyYW5zbGF0aW9uKSA9PiBgJHt0aGlzLnByZWZpeH0vJHt0cmFuc2xhdGlvbn0vJHtsYW5nfSR7dGhpcy5zdWZmaXh9YCxcbiAgICAgICAgKS5tYXAoKHVybCkgPT4gdGhpcy5odHRwLmdldCh1cmwpIGFzIE9ic2VydmFibGU8RGljdGlvbmFyeT4pO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRha2VzIGFuIGFycmF5IGFzIHJldHVybmVkIGJ5IGBmZXRjaFRyYW5zbGF0aW9uc2AgYW5kIGNvbnZlcnRzIGl0IHRvIGFuXG4gICAgICogT2JzZXJ2YWJsZSB0aGF0IHlpZWxkcyBhIHNpbmdsZSBEaWN0aW9uYXJ5IG9iamVjdC5cbiAgICAgKi9cbiAgICBwcml2YXRlIG1lcmdlVHJhbnNsYXRpb25zKHRyYW5zbGF0aW9uczogT2JzZXJ2YWJsZTxEaWN0aW9uYXJ5PltdKTogT2JzZXJ2YWJsZTxEaWN0aW9uYXJ5PiB7XG4gICAgICAgIHJldHVybiBjb25jYXQoLi4udHJhbnNsYXRpb25zKS5waXBlKFxuICAgICAgICAgICAgcmVkdWNlKChhY2M6IERpY3Rpb25hcnksIHZhbHVlOiBEaWN0aW9uYXJ5KSA9PiB7XG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCBwcm9wIGluIHZhbHVlKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh2YWx1ZS5oYXNPd25Qcm9wZXJ0eShwcm9wKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYWNjW3Byb3BdID0gdmFsdWVbcHJvcF07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgICAgICAgIH0sIHt9KSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBcHBsaWVzIGBvdmVycmlkZXNgIHRvIGB0cmFuc2xhdGlvbnNgIGFuZCByZXR1cm5zIGB0cmFuc2xhdGlvbnNgLlxuICAgICAqXG4gICAgICogRXhhbXBsZTpcbiAgICAgKiAgdHJhbnNsYXRpb25zID0geyBmb286IHsgYmFyOiAnYmFyJyB9IH1cbiAgICAgKiAgb3ZlcnJpZGVzID0geyAnZm9vLmJhcic6ICdiYXonIH1cbiAgICAgKiByZXN1bHRzIGluXG4gICAgICogIHRyYW5zbGF0aW9ucyA9IHsgZm9vOiB7YmFyOiAnYmF6JyB9IH1cbiAgICAgKlxuICAgICAqIEBwYXJhbSB0cmFuc2xhdGlvbnMgTmVzdGVkIHRyYW5zbGF0aW9ucyBvYmplY3QuXG4gICAgICogQHBhcmFtIG92ZXJyaWRlcyBGbGF0IG9iamVjdCB3aXRoIGRvdHMgKC4pIGluIGtleXMgaW50ZXJwcmV0ZWQgYXNcbiAgICAgKiBzZXBhcmF0b3JzLlxuICAgICAqL1xuICAgIHByaXZhdGUgYXBwbHlPdmVycmlkZXMoXG4gICAgICAgIHRyYW5zbGF0aW9uczogRGljdGlvbmFyeSxcbiAgICAgICAgb3ZlcnJpZGVzOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9LFxuICAgICk6IERpY3Rpb25hcnkge1xuICAgICAgICBpZiAob3ZlcnJpZGVzKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBPYmplY3QuZW50cmllczxzdHJpbmc+KG92ZXJyaWRlcykpIHtcbiAgICAgICAgICAgICAgICBsZXQgcmVmID0gdHJhbnNsYXRpb25zO1xuICAgICAgICAgICAgICAgIGNvbnN0IHBhdGggPSBrZXkuc3BsaXQoJy4nKTtcbiAgICAgICAgICAgICAgICBjb25zdCBwYXRoTGFzdCA9IHBhdGgucG9wKCk7XG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCBpdGVtIG9mIHBhdGgpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFyZWZbaXRlbV0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZltpdGVtXSA9IHt9O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlZkl0ZW0gPSByZWZbaXRlbV07XG4gICAgICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgcmVmSXRlbSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignVHJ5aW5nIHRvIG92ZXJyaWRlIGxlYXZlIHdpdGggc3ViIHRyZWU6ICcgKyBwYXRoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICByZWYgPSByZWZJdGVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZWZbcGF0aExhc3RdID0gdmFsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRyYW5zbGF0aW9ucztcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlcGxhY2VHZW5kZXJDaGFyYWN0ZXIodHJhbnNsYXRpb25zOiBEaWN0aW9uYXJ5LCBwYXRoOiBzdHJpbmdbXSA9IFtdKSB7XG4gICAgICAgIGZvciAobGV0IGtleSBvZiBPYmplY3Qua2V5cyh0cmFuc2xhdGlvbnMpKSB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIHRyYW5zbGF0aW9uc1trZXldID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICAgIC8vIERPIE5PVCBSRU1PVkUgKHJlcXVpcmVkIGZvciBjc3YgbGFuZ3VhZ2UgZHVtcGluZylcbiAgICAgICAgICAgICAgICAvKmNvbnNvbGUubG9nKENzdkhlbHBlci5mcm9tQXJyYXkobnVsbCwgW1tcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGguY29uY2F0KGtleSkuam9pbignLicpLCB0cmFuc2xhdGlvbnNba2V5XVxuICAgICAgICAgICAgICAgIF1dKSk7Ki9cbiAgICAgICAgICAgICAgICB0cmFuc2xhdGlvbnNba2V5XSA9ICh0cmFuc2xhdGlvbnNba2V5XSBhcyBzdHJpbmcpLnJlcGxhY2UoXG4gICAgICAgICAgICAgICAgICAgIC97e0dFTkRFUl9TRVBBUkFUT1J9fS9nLFxuICAgICAgICAgICAgICAgICAgICAnKicsXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdHJhbnNsYXRpb25zW2tleV0gPSB0aGlzLnJlcGxhY2VHZW5kZXJDaGFyYWN0ZXIoXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zbGF0aW9uc1trZXldIGFzIERpY3Rpb25hcnksXG4gICAgICAgICAgICAgICAgICAgIHBhdGguY29uY2F0KGtleSksXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0cmFuc2xhdGlvbnM7XG4gICAgfVxufVxuIl19
|
|
170
|
+
};
|
|
171
|
+
__decorate([
|
|
172
|
+
__param(3, Optional()),
|
|
173
|
+
__param(3, Inject(ASSETS_BASE_PATH))
|
|
174
|
+
], TranslationLoader, "create", null);
|
|
175
|
+
TranslationLoader = __decorate([
|
|
176
|
+
__param(0, Optional()),
|
|
177
|
+
__param(0, Inject(ASSETS_BASE_PATH))
|
|
178
|
+
], TranslationLoader);
|
|
179
|
+
export { TranslationLoader };
|
|
180
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRpb24tbG9hZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvZWR1LXNoYXJpbmctdWkvc3JjL2xpYi90cmFuc2xhdGlvbnMvdHJhbnNsYXRpb24tbG9hZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7OztBQUNBLE9BQU8sRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRWpELE9BQU8sRUFBaUIsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDL0QsT0FBTyxLQUFLLElBQUksTUFBTSxNQUFNLENBQUM7QUFDN0IsT0FBTyxFQUFFLE1BQU0sRUFBYyxFQUFFLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsR0FBRyxFQUFFLE1BQU0sRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRWhFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXpELE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHO0lBQzVCLFFBQVE7SUFDUixPQUFPO0lBQ1AsU0FBUztJQUNULFdBQVc7SUFDWCxRQUFRO0lBQ1IsYUFBYTtJQUNiLE9BQU87SUFDUCxhQUFhO0lBQ2IsS0FBSztJQUNMLFVBQVU7SUFDVixVQUFVO0lBQ1YsVUFBVTtJQUNWLFVBQVU7SUFDVixRQUFRO0lBQ1IsVUFBVTtDQUNiLENBQUM7QUFJSyxJQUFNLGlCQUFpQixHQUF2QixNQUFNLGlCQUFpQjtJQUNuQixBQUFQLE1BQU0sQ0FBQyxNQUFNLENBQ1QsSUFBZ0IsRUFDaEIsYUFBNEIsRUFDNUIsYUFBd0MsRUFDRixjQUF1QjtRQUU3RCxPQUFPLElBQUksaUJBQWlCLENBQUMsY0FBYyxFQUFFLElBQUksRUFBRSxhQUFhLEVBQUUsYUFBYSxDQUFD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WSxDQUFDLEdBQUcsQ0FBZSxFQUMvQixJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUNuQixDQUFDO2FBQ0w7U0FDSjtRQUVELE9BQU8sWUFBWSxDQUFDO0lBQ3hCLENBQUM7Q0FDSixDQUFBO0FBL0tVO0lBSUYsV0FBQSxRQUFRLEVBQUUsQ0FBQTtJQUFFLFdBQUEsTUFBTSxDQUFDLGdCQUFnQixDQUFDLENBQUE7cUNBR3hDO0FBUlEsaUJBQWlCO0lBV3JCLFdBQUEsUUFBUSxFQUFFLENBQUE7SUFBRSxXQUFBLE1BQU0sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFBO0dBWGhDLGlCQUFpQixDQWdMN0I7U0FoTFksaUJBQWlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IEluamVjdCwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFRyYW5zbGF0ZUxvYWRlciB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgQ29uZmlnU2VydmljZSwgTEFOR1VBR0VTIH0gZnJvbSAnbmd4LWVkdS1zaGFyaW5nLWFwaSc7XG5pbXBvcnQgKiBhcyByeGpzIGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY29uY2F0LCBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgY2F0Y2hFcnJvciwgZmlyc3QsIG1hcCwgcmVkdWNlIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRWR1U2hhcmluZ1VpQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL2VkdS1zaGFyaW5nLXVpLWNvbmZpZ3VyYXRpb24nO1xuaW1wb3J0IHsgQVNTRVRTX0JBU0VfUEFUSCB9IGZyb20gJy4uL3R5cGVzL2luamVjdGlvbi10b2tlbnMnO1xuaW1wb3J0IHsgVHJhbnNsYXRpb25Tb3VyY2UgfSBmcm9tICcuL3RyYW5zbGF0aW9uLXNvdXJjZSc7XG5cbmV4cG9ydCBjb25zdCBUUkFOU0xBVElPTl9MSVNUID0gW1xuICAgICdjb21tb24nLFxuICAgICdhZG1pbicsXG4gICAgJ3JlY3ljbGUnLFxuICAgICd3b3Jrc3BhY2UnLFxuICAgICdzZWFyY2gnLFxuICAgICdjb2xsZWN0aW9ucycsXG4gICAgJ2xvZ2luJyxcbiAgICAncGVybWlzc2lvbnMnLFxuICAgICdvZXInLFxuICAgICdtZXNzYWdlcycsXG4gICAgJ3JlZ2lzdGVyJyxcbiAgICAncHJvZmlsZXMnLFxuICAgICdzZXJ2aWNlcycsXG4gICAgJ3N0cmVhbScsXG4gICAgJ292ZXJyaWRlJyxcbl07XG5cbnR5cGUgRGljdGlvbmFyeSA9IHsgW2tleTogc3RyaW5nXTogc3RyaW5nIHwgRGljdGlvbmFyeSB9O1xuXG5leHBvcnQgY2xhc3MgVHJhbnNsYXRpb25Mb2FkZXIgaW1wbGVtZW50cyBUcmFuc2xhdGVMb2FkZXIge1xuICAgIHN0YXRpYyBjcmVhdGUoXG4gICAgICAgIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgICAgIGNvbmZpZ1NlcnZpY2U6IENvbmZpZ1NlcnZpY2UsXG4gICAgICAgIGNvbmZpZ3VyYXRpb246IEVkdVNoYXJpbmdVaUNvbmZpZ3VyYXRpb24sXG4gICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoQVNTRVRTX0JBU0VfUEFUSCkgYXNzZXRzQmFzZVBhdGg/OiBzdHJpbmcsXG4gICAgKSB7XG4gICAgICAgIHJldHVybiBuZXcgVHJhbnNsYXRpb25Mb2FkZXIoYXNzZXRzQmFzZVBhdGgsIGh0dHAsIGNvbmZpZ1NlcnZpY2UsIGNvbmZpZ3VyYXRpb24pO1xuICAgIH1cblxuICAgIHByaXZhdGUgY29uc3RydWN0b3IoXG4gICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoQVNTRVRTX0JBU0VfUEFUSCkgcHJpdmF0ZSBhc3NldHNCYXNlUGF0aDogc3RyaW5nLFxuICAgICAgICBwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsXG4gICAgICAgIHByaXZhdGUgY29uZmlnU2VydmljZTogQ29uZmlnU2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBjb25maWd1cmF0aW9uOiBFZHVTaGFyaW5nVWlDb25maWd1cmF0aW9uLFxuICAgICAgICBwcml2YXRlIHByZWZpeDogc3RyaW5nID0gKGFzc2V0c0Jhc2VQYXRoID8/ICcnKSArICdhc3NldHMvaTE4bicsXG4gICAgICAgIHByaXZhdGUgc3VmZml4OiBzdHJpbmcgPSAnLmpzb24nLFxuICAgICkge31cblxuICAgIC8vIElmIHlvdSBuZWVkIHRvIGNvbmZpZ3VyZSB0aGlzLCBkZWZpbmUgYW4gaW5qZWN0YWJsZSBjb25maWd1cmF0aW9uIG9iamVjdC4gU2VlXG4gICAgLy8gaHR0cHM6Ly9hbmd1bGFyLmlvL2d1aWRlL2RlcGVuZGVuY3ktaW5qZWN0aW9uLXByb3ZpZGVycyNpbmplY3RpbmctYS1jb25maWd1cmF0aW9uLW9iamVjdC5cbiAgICBwcml2YXRlIHJlYWRvbmx5IHNvdXJjZTogVHJhbnNsYXRpb25Tb3VyY2UgPSBUcmFuc2xhdGlvblNvdXJjZS5BdXRvO1xuXG4gICAgLyoqXG4gICAgICogR2V0cyB0aGUgdHJhbnNsYXRpb25zIGZyb20gdGhlIHNlcnZlclxuICAgICAqL1xuICAgIGdldFRyYW5zbGF0aW9uKGxhbmc6IHN0cmluZyk6IE9ic2VydmFibGU8RGljdGlvbmFyeT4ge1xuICAgICAgICBpZiAobGFuZyA9PT0gJ25vbmUnKSB7XG4gICAgICAgICAgICByZXR1cm4gb2Yoe30pO1xuICAgICAgICB9XG4gICAgICAgIGlmICghTEFOR1VBR0VTW2xhbmddKSB7XG4gICAgICAgICAgICBjb25zb2xlLmVycm9yKCd1bmtub3duIGxvY2FsZSBmb3IgbGFuZ3VhZ2UgJyArIGxhbmcpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY29uZmlnU2VydmljZS5zZXRMb2NhbGUoTEFOR1VBR0VTW2xhbmddKTtcbiAgICAgICAgcmV0dXJuIHJ4anNcbiAgICAgICAgICAgIC5mb3JrSm9pbih7XG4gICAgICAgICAgICAgICAgb3JpZ2luYWxUcmFuc2xhdGlvbnM6IHRoaXMuZ2V0T3JpZ2luYWxUcmFuc2xhdGlvbnMobGFuZykucGlwZShcbiAgICAgICAgICAgICAgICAgICAgLy8gRGVmYXVsdCB0byBlbXB0eSBkaWN0aW9uYXJ5IGlmIHdlIGdvdCBub3RoaW5nXG4gICAgICAgICAgICAgICAgICAgIG1hcCgodHJhbnNsYXRpb25zKSA9PiB0cmFuc2xhdGlvbnMgfHwge30pLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgdHJhbnNsYXRpb25PdmVycmlkZXM6IHRoaXMuY29uZmlnU2VydmljZVxuICAgICAgICAgICAgICAgICAgICAub2JzZXJ2ZVRyYW5zbGF0aW9uT3ZlcnJpZGVzKClcbiAgICAgICAgICAgICAgICAgICAgLnBpcGUoZmlyc3QoKSksXG4gICAgICAgICAgICB9KVxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKCh7IG9yaWdpbmFsVHJhbnNsYXRpb25zLCB0cmFuc2xhdGlvbk92ZXJyaWRlcyB9KSA9PlxuICAgICAgICAgICAgICAgICAgICAvLyBGSVhNRTogVGhpcyB3aWxsIGFsdGVyIHRoZSBvYmplY3QgcmV0dXJuZWQgYnkgYGdldE9yaWdpbmFsVHJhbnNsYXRpb25zYC5cbiAgICAgICAgICAgICAgICAgICAgdGhpcy5hcHBseU92ZXJyaWRlcyhvcmlnaW5hbFRyYW5zbGF0aW9ucywgdHJhbnNsYXRpb25PdmVycmlkZXMpLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICAgICAgbWFwKCh0cmFuc2xhdGlvbnMpID0+IHRoaXMucmVwbGFjZUdlbmRlckNoYXJhY3Rlcih0cmFuc2xhdGlvbnMpKSxcbiAgICAgICAgICAgICAgICBjYXRjaEVycm9yKChlcnJvciwgb2JzKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gb2YoZXJyb3IpO1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldE9yaWdpbmFsVHJhbnNsYXRpb25zKGxhbmc6IHN0cmluZyk6IE9ic2VydmFibGU8RGljdGlvbmFyeT4ge1xuICAgICAgICBzd2l0Y2ggKHRoaXMuZ2V0U291cmNlKCkpIHtcbiAgICAgICAgICAgIGNhc2UgJ3JlcG9zaXRvcnknOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLmNvbmZpZ1NlcnZpY2Uub2JzZXJ2ZURlZmF1bHRUcmFuc2xhdGlvbnMoKS5waXBlKGZpcnN0KCkpO1xuICAgICAgICAgICAgY2FzZSAnbG9jYWwnOlxuICAgICAgICAgICAgICAgIHJldHVybiB0aGlzLm1lcmdlVHJhbnNsYXRpb25zKHRoaXMuZmV0Y2hUcmFuc2xhdGlvbnMobGFuZykpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRTb3VyY2UoKTogJ3JlcG9zaXRvcnknIHwgJ2xvY2FsJyB7XG4gICAgICAgIGlmIChcbiAgICAgICAgICAgICh0aGlzLmNvbmZpZ3VyYXRpb24ucHJvZHVjdGlvbiAmJiB0aGlzLnNvdXJjZSA9PT0gVHJhbnNsYXRpb25Tb3VyY2UuQXV0bykgfHxcbiAgICAgICAgICAgIHRoaXMuc291cmNlID09PSBUcmFuc2xhdGlvblNvdXJjZS5SZXBvc2l0b3J5XG4gICAgICAgICkge1xuICAgICAgICAgICAgcmV0dXJuICdyZXBvc2l0b3J5JztcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHJldHVybiAnbG9jYWwnO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogUmV0dXJucyBhbiBhcnJheSBvZiBPYnNlcnZhYmxlcyB0aGF0IHdpbGwgZWFjaCBmZXRjaCBhIHRyYW5zbGF0aW9ucyBqc29uXG4gICAgICogZmlsZS5cbiAgICAgKi9cbiAgICBwcml2YXRlIGZldGNoVHJhbnNsYXRpb25zKGxhbmc6IHN0cmluZyk6IE9ic2VydmFibGU8RGljdGlvbmFyeT5bXSB7XG4gICAgICAgIHJldHVybiBUUkFOU0xBVElPTl9MSVNULm1hcChcbiAgICAgICAgICAgICh0cmFuc2xhdGlvbikgPT4gYCR7dGhpcy5wcmVmaXh9LyR7dHJhbnNsYXRpb259LyR7bGFuZ30ke3RoaXMuc3VmZml4fWAsXG4gICAgICAgIClcbiAgICAgICAgICAgIC5tYXAoKHVybCkgPT4gdGhpcy5odHRwLmdldCh1cmwpIGFzIE9ic2VydmFibGU8RGljdGlvbmFyeT4pXG4gICAgICAgICAgICAubWFwKChvYnMpID0+XG4gICAgICAgICAgICAgICAgb2JzLnBpcGUoXG4gICAgICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKGUpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnNvbGUud2FybihcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAnbWlzc2luZyB0cmFuc2xhdGlvbiBmaWxlIGZvciBsYW5ndWFnZSAnICtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGFuZyArXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICcsIHRyYW5zbGF0aW9ucyB3aWxsIGJlIG1pc3NpbmcgLyBmYWxsaW5nIGJhY2sgdG8gdGhlIGRlZmF1bHQgbGFuZ3VhZ2UnLFxuICAgICAgICAgICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiBvZih7fSk7XG4gICAgICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgICksXG4gICAgICAgICAgICApO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFRha2VzIGFuIGFycmF5IGFzIHJldHVybmVkIGJ5IGBmZXRjaFRyYW5zbGF0aW9uc2AgYW5kIGNvbnZlcnRzIGl0IHRvIGFuXG4gICAgICogT2JzZXJ2YWJsZSB0aGF0IHlpZWxkcyBhIHNpbmdsZSBEaWN0aW9uYXJ5IG9iamVjdC5cbiAgICAgKi9cbiAgICBwcml2YXRlIG1lcmdlVHJhbnNsYXRpb25zKHRyYW5zbGF0aW9uczogT2JzZXJ2YWJsZTxEaWN0aW9uYXJ5PltdKTogT2JzZXJ2YWJsZTxEaWN0aW9uYXJ5PiB7XG4gICAgICAgIHJldHVybiBjb25jYXQoLi4udHJhbnNsYXRpb25zKS5waXBlKFxuICAgICAgICAgICAgcmVkdWNlKChhY2M6IERpY3Rpb25hcnksIHZhbHVlOiBEaWN0aW9uYXJ5KSA9PiB7XG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCBwcm9wIGluIHZhbHVlKSB7XG4gICAgICAgICAgICAgICAgICAgIGlmICh2YWx1ZS5oYXNPd25Qcm9wZXJ0eShwcm9wKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYWNjW3Byb3BdID0gdmFsdWVbcHJvcF07XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIGFjYztcbiAgICAgICAgICAgIH0sIHt9KSxcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBcHBsaWVzIGBvdmVycmlkZXNgIHRvIGB0cmFuc2xhdGlvbnNgIGFuZCByZXR1cm5zIGB0cmFuc2xhdGlvbnNgLlxuICAgICAqXG4gICAgICogRXhhbXBsZTpcbiAgICAgKiAgdHJhbnNsYXRpb25zID0geyBmb286IHsgYmFyOiAnYmFyJyB9IH1cbiAgICAgKiAgb3ZlcnJpZGVzID0geyAnZm9vLmJhcic6ICdiYXonIH1cbiAgICAgKiByZXN1bHRzIGluXG4gICAgICogIHRyYW5zbGF0aW9ucyA9IHsgZm9vOiB7YmFyOiAnYmF6JyB9IH1cbiAgICAgKlxuICAgICAqIEBwYXJhbSB0cmFuc2xhdGlvbnMgTmVzdGVkIHRyYW5zbGF0aW9ucyBvYmplY3QuXG4gICAgICogQHBhcmFtIG92ZXJyaWRlcyBGbGF0IG9iamVjdCB3aXRoIGRvdHMgKC4pIGluIGtleXMgaW50ZXJwcmV0ZWQgYXNcbiAgICAgKiBzZXBhcmF0b3JzLlxuICAgICAqL1xuICAgIHByaXZhdGUgYXBwbHlPdmVycmlkZXMoXG4gICAgICAgIHRyYW5zbGF0aW9uczogRGljdGlvbmFyeSxcbiAgICAgICAgb3ZlcnJpZGVzOiB7IFtrZXk6IHN0cmluZ106IHN0cmluZyB9LFxuICAgICk6IERpY3Rpb25hcnkge1xuICAgICAgICBpZiAob3ZlcnJpZGVzKSB7XG4gICAgICAgICAgICBmb3IgKGNvbnN0IFtrZXksIHZhbHVlXSBvZiBPYmplY3QuZW50cmllczxzdHJpbmc+KG92ZXJyaWRlcykpIHtcbiAgICAgICAgICAgICAgICBsZXQgcmVmID0gdHJhbnNsYXRpb25zO1xuICAgICAgICAgICAgICAgIGNvbnN0IHBhdGggPSBrZXkuc3BsaXQoJy4nKTtcbiAgICAgICAgICAgICAgICBjb25zdCBwYXRoTGFzdCA9IHBhdGgucG9wKCk7XG4gICAgICAgICAgICAgICAgZm9yIChjb25zdCBpdGVtIG9mIHBhdGgpIHtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFyZWZbaXRlbV0pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHJlZltpdGVtXSA9IHt9O1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHJlZkl0ZW0gPSByZWZbaXRlbV07XG4gICAgICAgICAgICAgICAgICAgIGlmICh0eXBlb2YgcmVmSXRlbSA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcignVHJ5aW5nIHRvIG92ZXJyaWRlIGxlYXZlIHdpdGggc3ViIHRyZWU6ICcgKyBwYXRoKTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICByZWYgPSByZWZJdGVtO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZWZbcGF0aExhc3RdID0gdmFsdWU7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIHRyYW5zbGF0aW9ucztcbiAgICB9XG5cbiAgICBwcml2YXRlIHJlcGxhY2VHZW5kZXJDaGFyYWN0ZXIodHJhbnNsYXRpb25zOiBEaWN0aW9uYXJ5LCBwYXRoOiBzdHJpbmdbXSA9IFtdKSB7XG4gICAgICAgIGZvciAobGV0IGtleSBvZiBPYmplY3Qua2V5cyh0cmFuc2xhdGlvbnMpKSB7XG4gICAgICAgICAgICBpZiAodHlwZW9mIHRyYW5zbGF0aW9uc1trZXldID09PSAnc3RyaW5nJykge1xuICAgICAgICAgICAgICAgIC8vIERPIE5PVCBSRU1PVkUgKHJlcXVpcmVkIGZvciBjc3YgbGFuZ3VhZ2UgZHVtcGluZylcbiAgICAgICAgICAgICAgICAvKmNvbnNvbGUubG9nKENzdkhlbHBlci5mcm9tQXJyYXkobnVsbCwgW1tcbiAgICAgICAgICAgICAgICAgICAgICAgIHBhdGguY29uY2F0KGtleSkuam9pbignLicpLCB0cmFuc2xhdGlvbnNba2V5XVxuICAgICAgICAgICAgICAgIF1dKSk7Ki9cbiAgICAgICAgICAgICAgICB0cmFuc2xhdGlvbnNba2V5XSA9ICh0cmFuc2xhdGlvbnNba2V5XSBhcyBzdHJpbmcpLnJlcGxhY2UoXG4gICAgICAgICAgICAgICAgICAgIC97e0dFTkRFUl9TRVBBUkFUT1J9fS9nLFxuICAgICAgICAgICAgICAgICAgICAnKicsXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICAgICAgdHJhbnNsYXRpb25zW2tleV0gPSB0aGlzLnJlcGxhY2VHZW5kZXJDaGFyYWN0ZXIoXG4gICAgICAgICAgICAgICAgICAgIHRyYW5zbGF0aW9uc1trZXldIGFzIERpY3Rpb25hcnksXG4gICAgICAgICAgICAgICAgICAgIHBhdGguY29uY2F0KGtleSksXG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB0cmFuc2xhdGlvbnM7XG4gICAgfVxufVxuIl19
|
|
@@ -2,9 +2,10 @@ import { HttpClient } from '@angular/common/http';
|
|
|
2
2
|
import { NgModule, Optional, SkipSelf } from '@angular/core';
|
|
3
3
|
import { MissingTranslationHandler, TranslateLoader, TranslateModule } from '@ngx-translate/core';
|
|
4
4
|
import { ConfigService } from 'ngx-edu-sharing-api';
|
|
5
|
+
import { EduSharingUiConfiguration } from '../edu-sharing-ui-configuration';
|
|
6
|
+
import { ASSETS_BASE_PATH } from '../types/injection-tokens';
|
|
5
7
|
import { FallbackTranslationHandler } from './fallback-translation-handler';
|
|
6
8
|
import { TranslationLoader } from './translation-loader';
|
|
7
|
-
import { EduSharingUiConfiguration } from '../edu-sharing-ui-configuration';
|
|
8
9
|
import * as i0 from "@angular/core";
|
|
9
10
|
import * as i1 from "@ngx-translate/core";
|
|
10
11
|
/**
|
|
@@ -33,7 +34,12 @@ export class TranslationsModule {
|
|
|
33
34
|
loader: {
|
|
34
35
|
provide: TranslateLoader,
|
|
35
36
|
useFactory: TranslationLoader.create,
|
|
36
|
-
deps: [
|
|
37
|
+
deps: [
|
|
38
|
+
HttpClient,
|
|
39
|
+
ConfigService,
|
|
40
|
+
EduSharingUiConfiguration,
|
|
41
|
+
[new Optional(), ASSETS_BASE_PATH],
|
|
42
|
+
],
|
|
37
43
|
},
|
|
38
44
|
missingTranslationHandler: {
|
|
39
45
|
provide: MissingTranslationHandler,
|
|
@@ -50,7 +56,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImpor
|
|
|
50
56
|
loader: {
|
|
51
57
|
provide: TranslateLoader,
|
|
52
58
|
useFactory: TranslationLoader.create,
|
|
53
|
-
deps: [
|
|
59
|
+
deps: [
|
|
60
|
+
HttpClient,
|
|
61
|
+
ConfigService,
|
|
62
|
+
EduSharingUiConfiguration,
|
|
63
|
+
[new Optional(), ASSETS_BASE_PATH],
|
|
64
|
+
],
|
|
54
65
|
},
|
|
55
66
|
missingTranslationHandler: {
|
|
56
67
|
provide: MissingTranslationHandler,
|
|
@@ -64,4 +75,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.6", ngImpor
|
|
|
64
75
|
}, {
|
|
65
76
|
type: SkipSelf
|
|
66
77
|
}] }]; } });
|
|
67
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
78
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRpb25zLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2VkdS1zaGFyaW5nLXVpL3NyYy9saWIvdHJhbnNsYXRpb25zL3RyYW5zbGF0aW9ucy5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBdUIsUUFBUSxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDbEYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLGVBQWUsRUFBRSxlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNsRyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDcEQsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDN0QsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7OztBQUV6RDs7OztHQUlHO0FBc0JILE1BQU0sT0FBTyxrQkFBa0I7SUFDM0IsTUFBTSxDQUFDLE9BQU87UUFDVixPQUFPO1lBQ0gsUUFBUSxFQUFFLGtCQUFrQjtZQUM1QixTQUFTLEVBQUUsRUFBRTtTQUNoQixDQUFDO0lBQ04sQ0FBQztJQUVELFlBQW9DLFlBQWlDO1FBQ2pFLElBQUksWUFBWSxFQUFFO1lBQ2QsT0FBTyxDQUFDLElBQUksQ0FDUix1RUFBdUUsRUFDdkUsWUFBWSxDQUNmLENBQUM7WUFDRjs7Z0JBRUk7U0FDUDtJQUNMLENBQUM7OEdBbEJRLGtCQUFrQjsrR0FBbEIsa0JBQWtCOytHQUFsQixrQkFBa0IsWUFsQnZCLGVBQWUsQ0FBQyxPQUFPLENBQUM7Z0JBQ3BCLE1BQU0sRUFBRTtvQkFDSixPQUFPLEVBQUUsZUFBZTtvQkFDeEIsVUFBVSxFQUFFLGlCQUFpQixDQUFDLE1BQU07b0JBQ3BDLElBQUksRUFBRTt3QkFDRixVQUFVO3dCQUNWLGFBQWE7d0JBQ2IseUJBQXlCO3dCQUN6QixDQUFDLElBQUksUUFBUSxFQUFFLEVBQUUsZ0JBQWdCLENBQUM7cUJBQ3JDO2lCQUNKO2dCQUNELHlCQUF5QixFQUFFO29CQUN2QixPQUFPLEVBQUUseUJBQXlCO29CQUNsQyxRQUFRLEVBQUUsMEJBQTBCO2lCQUN2QzthQUNKLENBQUM7OzJGQUdHLGtCQUFrQjtrQkFyQjlCLFFBQVE7bUJBQUM7b0JBQ04sWUFBWSxFQUFFLEVBQUU7b0JBQ2hCLE9BQU8sRUFBRTt3QkFDTCxlQUFlLENBQUMsT0FBTyxDQUFDOzRCQUNwQixNQUFNLEVBQUU7Z0NBQ0osT0FBTyxFQUFFLGVBQWU7Z0NBQ3hCLFVBQVUsRUFBRSxpQkFBaUIsQ0FBQyxNQUFNO2dDQUNwQyxJQUFJLEVBQUU7b0NBQ0YsVUFBVTtvQ0FDVixhQUFhO29DQUNiLHlCQUF5QjtvQ0FDekIsQ0FBQyxJQUFJLFFBQVEsRUFBRSxFQUFFLGdCQUFnQixDQUFDO2lDQUNyQzs2QkFDSjs0QkFDRCx5QkFBeUIsRUFBRTtnQ0FDdkIsT0FBTyxFQUFFLHlCQUF5QjtnQ0FDbEMsUUFBUSxFQUFFLDBCQUEwQjs2QkFDdkM7eUJBQ0osQ0FBQztxQkFDTDtpQkFDSjs7MEJBU2dCLFFBQVE7OzBCQUFJLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgTW9kdWxlV2l0aFByb3ZpZGVycywgTmdNb2R1bGUsIE9wdGlvbmFsLCBTa2lwU2VsZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWlzc2luZ1RyYW5zbGF0aW9uSGFuZGxlciwgVHJhbnNsYXRlTG9hZGVyLCBUcmFuc2xhdGVNb2R1bGUgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IENvbmZpZ1NlcnZpY2UgfSBmcm9tICduZ3gtZWR1LXNoYXJpbmctYXBpJztcbmltcG9ydCB7IEVkdVNoYXJpbmdVaUNvbmZpZ3VyYXRpb24gfSBmcm9tICcuLi9lZHUtc2hhcmluZy11aS1jb25maWd1cmF0aW9uJztcbmltcG9ydCB7IEFTU0VUU19CQVNFX1BBVEggfSBmcm9tICcuLi90eXBlcy9pbmplY3Rpb24tdG9rZW5zJztcbmltcG9ydCB7IEZhbGxiYWNrVHJhbnNsYXRpb25IYW5kbGVyIH0gZnJvbSAnLi9mYWxsYmFjay10cmFuc2xhdGlvbi1oYW5kbGVyJztcbmltcG9ydCB7IFRyYW5zbGF0aW9uTG9hZGVyIH0gZnJvbSAnLi90cmFuc2xhdGlvbi1sb2FkZXInO1xuXG4vKipcbiAqIEltcG9ydCB0aGlzIG1vZHVsZSBvbmNlIGluIHRoZSBhcHAgbW9kdWxlIHRvIHByb3ZpZGUgdGhlIGBUcmFuc2xhdGVTZXJ2aWNlYC5cbiAqXG4gKiBFeHBvcnQgYFRyYW5zbGF0ZU1vZHVsZWAgaW4gdGhlIHNoYXJlZCBtb2R1bGUgdG8gcHJvdmlkZSBkaXJlY3RpdmVzIGFuZCBwaXBlcy5cbiAqL1xuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtdLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgVHJhbnNsYXRlTW9kdWxlLmZvclJvb3Qoe1xuICAgICAgICAgICAgbG9hZGVyOiB7XG4gICAgICAgICAgICAgICAgcHJvdmlkZTogVHJhbnNsYXRlTG9hZGVyLFxuICAgICAgICAgICAgICAgIHVzZUZhY3Rvcnk6IFRyYW5zbGF0aW9uTG9hZGVyLmNyZWF0ZSxcbiAgICAgICAgICAgICAgICBkZXBzOiBbXG4gICAgICAgICAgICAgICAgICAgIEh0dHBDbGllbnQsXG4gICAgICAgICAgICAgICAgICAgIENvbmZpZ1NlcnZpY2UsXG4gICAgICAgICAgICAgICAgICAgIEVkdVNoYXJpbmdVaUNvbmZpZ3VyYXRpb24sXG4gICAgICAgICAgICAgICAgICAgIFtuZXcgT3B0aW9uYWwoKSwgQVNTRVRTX0JBU0VfUEFUSF0sXG4gICAgICAgICAgICAgICAgXSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBtaXNzaW5nVHJhbnNsYXRpb25IYW5kbGVyOiB7XG4gICAgICAgICAgICAgICAgcHJvdmlkZTogTWlzc2luZ1RyYW5zbGF0aW9uSGFuZGxlcixcbiAgICAgICAgICAgICAgICB1c2VDbGFzczogRmFsbGJhY2tUcmFuc2xhdGlvbkhhbmRsZXIsXG4gICAgICAgICAgICB9LFxuICAgICAgICB9KSxcbiAgICBdLFxufSlcbmV4cG9ydCBjbGFzcyBUcmFuc2xhdGlvbnNNb2R1bGUge1xuICAgIHN0YXRpYyBmb3JSb290KCk6IE1vZHVsZVdpdGhQcm92aWRlcnM8VHJhbnNsYXRpb25zTW9kdWxlPiB7XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICBuZ01vZHVsZTogVHJhbnNsYXRpb25zTW9kdWxlLFxuICAgICAgICAgICAgcHJvdmlkZXJzOiBbXSxcbiAgICAgICAgfTtcbiAgICB9XG5cbiAgICBjb25zdHJ1Y3RvcihAT3B0aW9uYWwoKSBAU2tpcFNlbGYoKSBwYXJlbnRNb2R1bGU/OiBUcmFuc2xhdGlvbnNNb2R1bGUpIHtcbiAgICAgICAgaWYgKHBhcmVudE1vZHVsZSkge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKFxuICAgICAgICAgICAgICAgICdUcmFuc2xhdGlvbnNNb2R1bGUgaXMgYWxyZWFkeSBsb2FkZWQuIEltcG9ydCBpdCBpbiB0aGUgQXBwTW9kdWxlIG9ubHknLFxuICAgICAgICAgICAgICAgIHBhcmVudE1vZHVsZSxcbiAgICAgICAgICAgICk7XG4gICAgICAgICAgICAvKnRocm93IG5ldyBFcnJvcihcbiAgICAgICAgICAgICAgICAnVHJhbnNsYXRpb25zTW9kdWxlIGlzIGFscmVhZHkgbG9hZGVkLiBJbXBvcnQgaXQgaW4gdGhlIEFwcE1vZHVsZSBvbmx5JyxcbiAgICAgICAgICAgICk7Ki9cbiAgICAgICAgfVxuICAgIH1cbn1cbiJdfQ==
|