@universis/ngx-tables 6.14.0 → 9.14.2
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/bundles/universis-ngx-tables.umd.js +4902 -6847
- package/bundles/universis-ngx-tables.umd.js.map +1 -1
- package/bundles/universis-ngx-tables.umd.min.js +15 -1
- package/bundles/universis-ngx-tables.umd.min.js.map +1 -1
- package/esm2015/lib/actions/table.actions.js +7 -49
- package/esm2015/lib/advanced-aggregator.js +0 -5
- package/esm2015/lib/components/add-items/add-items.component.js +36 -96
- package/esm2015/lib/components/advanced-aggregator/advanced-aggregator.component.js +48 -103
- package/esm2015/lib/components/advanced-aggregator-list/advanced-aggregator-list.component.js +36 -58
- package/esm2015/lib/components/advanced-list/advanced-list.component.js +68 -121
- package/esm2015/lib/components/advanced-row-action/advanced-row-action.component.js +61 -118
- package/esm2015/lib/components/advanced-search-form/advanced-search-form.component.js +47 -99
- package/esm2015/lib/components/advanced-select/advanced-select.component.js +25 -58
- package/esm2015/lib/components/advanced-select/advanced-select.service.js +10 -27
- package/esm2015/lib/components/advanced-table/advanced-filter-value-provider.service.js +13 -36
- package/esm2015/lib/components/advanced-table/advanced-table-resolvers.js +22 -50
- package/esm2015/lib/components/advanced-table/advanced-table-search-base.js +15 -37
- package/esm2015/lib/components/advanced-table/advanced-table-search.component.js +55 -227
- package/esm2015/lib/components/advanced-table/advanced-table-settings.component.js +23 -96
- package/esm2015/lib/components/advanced-table/advanced-table.component.js +303 -688
- package/esm2015/lib/components/advanced-table/advanced-table.formatters.interface.js +1 -10
- package/esm2015/lib/components/advanced-table/advanced-table.formatters.js +19 -230
- package/esm2015/lib/components/advanced-table/advanced-table.interfaces.js +0 -5
- package/esm2015/lib/components/advanced-table/custom-button.formatter.js +3 -17
- package/esm2015/lib/components/advanced-table-modal/advanced-table-modal-base.component.js +77 -198
- package/esm2015/lib/components/column-selector/column-selector.component.js +39 -109
- package/esm2015/lib/components/column-selector/column-selector.service.js +9 -26
- package/esm2015/lib/components/table-simple-header/table-simple-header.component.js +28 -51
- package/esm2015/lib/directives/advance-search-state.directive.js +22 -54
- package/esm2015/lib/directives/advance-table-state.directive.js +20 -39
- package/esm2015/lib/directives/advanced-search-router-state.directive.js +15 -37
- package/esm2015/lib/directives/advanced-table-editor.directive.js +24 -54
- package/esm2015/lib/directives/btnexp.directive.js +55 -97
- package/esm2015/lib/i18n/tables.el.js +3 -7
- package/esm2015/lib/i18n/tables.en.js +3 -7
- package/esm2015/lib/pipes/advanced-aggregator.pipe.js +15 -18
- package/esm2015/lib/pipes/advansed-aggregator-list-title-parse.pipe.js +13 -25
- package/esm2015/lib/reducers/index.js +7 -37
- package/esm2015/lib/services/advanced-aggregator/advanced-aggregator.service.js +27 -48
- package/esm2015/lib/tables.activated-table.service.js +11 -46
- package/esm2015/lib/tables.module.js +90 -105
- package/esm2015/public_api.js +29 -34
- package/esm2015/universis-ngx-tables.js +2 -7
- package/esm5/lib/actions/table.actions.js +7 -38
- package/esm5/lib/advanced-aggregator.js +0 -5
- package/esm5/lib/components/add-items/add-items.component.js +42 -127
- package/esm5/lib/components/advanced-aggregator/advanced-aggregator.component.js +58 -141
- package/esm5/lib/components/advanced-aggregator-list/advanced-aggregator-list.component.js +32 -71
- package/esm5/lib/components/advanced-list/advanced-list.component.js +67 -136
- package/esm5/lib/components/advanced-row-action/advanced-row-action.component.js +62 -139
- package/esm5/lib/components/advanced-search-form/advanced-search-form.component.js +45 -116
- package/esm5/lib/components/advanced-select/advanced-select.component.js +23 -57
- package/esm5/lib/components/advanced-select/advanced-select.service.js +8 -27
- package/esm5/lib/components/advanced-table/advanced-filter-value-provider.service.js +15 -50
- package/esm5/lib/components/advanced-table/advanced-table-resolvers.js +18 -52
- package/esm5/lib/components/advanced-table/advanced-table-search-base.js +17 -48
- package/esm5/lib/components/advanced-table/advanced-table-search.component.js +84 -329
- package/esm5/lib/components/advanced-table/advanced-table-settings.component.js +27 -116
- package/esm5/lib/components/advanced-table/advanced-table.component.js +324 -863
- package/esm5/lib/components/advanced-table/advanced-table.formatters.interface.js +1 -10
- package/esm5/lib/components/advanced-table/advanced-table.formatters.js +58 -393
- package/esm5/lib/components/advanced-table/advanced-table.interfaces.js +0 -5
- package/esm5/lib/components/advanced-table/custom-button.formatter.js +6 -27
- package/esm5/lib/components/advanced-table-modal/advanced-table-modal-base.component.js +90 -296
- package/esm5/lib/components/column-selector/column-selector.component.js +46 -143
- package/esm5/lib/components/column-selector/column-selector.service.js +7 -26
- package/esm5/lib/components/table-simple-header/table-simple-header.component.js +26 -61
- package/esm5/lib/directives/advance-search-state.directive.js +24 -74
- package/esm5/lib/directives/advance-table-state.directive.js +17 -37
- package/esm5/lib/directives/advanced-search-router-state.directive.js +13 -43
- package/esm5/lib/directives/advanced-table-editor.directive.js +31 -81
- package/esm5/lib/directives/btnexp.directive.js +43 -175
- package/esm5/lib/i18n/tables.el.js +3 -7
- package/esm5/lib/i18n/tables.en.js +3 -7
- package/esm5/lib/pipes/advanced-aggregator.pipe.js +9 -35
- package/esm5/lib/pipes/advansed-aggregator-list-title-parse.pipe.js +9 -36
- package/esm5/lib/reducers/index.js +8 -38
- package/esm5/lib/services/advanced-aggregator/advanced-aggregator.service.js +21 -82
- package/esm5/lib/tables.activated-table.service.js +10 -42
- package/esm5/lib/tables.module.js +89 -105
- package/esm5/public_api.js +29 -34
- package/esm5/universis-ngx-tables.js +2 -7
- package/fesm2015/universis-ngx-tables.js +1178 -2187
- package/fesm2015/universis-ngx-tables.js.map +1 -1
- package/fesm5/universis-ngx-tables.js +1235 -3067
- package/fesm5/universis-ngx-tables.js.map +1 -1
- package/lib/actions/table.actions.d.ts +3 -3
- package/lib/components/add-items/add-items.component.d.ts +1 -1
- package/lib/components/advanced-aggregator/advanced-aggregator.component.d.ts +7 -4
- package/lib/components/advanced-aggregator-list/advanced-aggregator-list.component.d.ts +1 -1
- package/lib/components/advanced-list/advanced-list.component.d.ts +3 -3
- package/lib/components/advanced-row-action/advanced-row-action.component.d.ts +1 -1
- package/lib/components/advanced-table/advanced-table-search-base.d.ts +3 -2
- package/lib/components/advanced-table/advanced-table-search.component.d.ts +3 -2
- package/lib/components/advanced-table/advanced-table.component.d.ts +13 -8
- package/lib/directives/advanced-table-editor.directive.d.ts +1 -1
- package/lib/i18n/tables.el.d.ts +108 -108
- package/lib/i18n/tables.en.d.ts +107 -107
- package/lib/reducers/index.d.ts +3 -3
- package/lib/tables.activated-table.service.d.ts +2 -1
- package/package.json +20 -31
- package/universis-ngx-tables.metadata.json +1 -1
|
@@ -1,6 +1 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
|
-
|
|
6
1
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWR2YW5jZWQtdGFibGUuaW50ZXJmYWNlcy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0B1bml2ZXJzaXMvbmd4LXRhYmxlcy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2FkdmFuY2VkLXRhYmxlL2FkdmFuY2VkLXRhYmxlLmludGVyZmFjZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbIlxuZXhwb3J0IGRlY2xhcmUgaW50ZXJmYWNlIFRhYmxlQ29sdW1uQ29uZmlndXJhdGlvbiB7XG4gICAga2V5Pzogc3RyaW5nO1xuICAgIG5hbWU/OiBzdHJpbmc7XG4gICAgdGl0bGU6IHN0cmluZztcbiAgICBwbGFjZWhvbGRlcj86IHN0cmluZztcbiAgICBzb3J0YWJsZT86IGJvb2xlYW47XG4gICAgY2xhc3M/OiBzdHJpbmc7XG4gICAgZGVmYXVsdENvbnRlbnQ/OiBzdHJpbmc7XG4gICAgZm9ybWF0dGVyPzogc3RyaW5nO1xuICAgIGZvcm1hdFN0cmluZz86IHN0cmluZztcbiAgICBoaWRkZW4/OiBib29sZWFuO1xuICAgIHByb3BlcnR5Pzogc3RyaW5nO1xuICAgIG9yZGVyPzogc3RyaW5nO1xuICAgIGZvcm1hdE9wdGlvbnM/OiBhbnk7XG4gICAgZm9ybWF0dGVycz86IEFycmF5PGFueT47XG4gICAgdmlydHVhbD86IGJvb2xlYW47XG4gICAgZXhwb3J0PzogYm9vbGVhbjtcbiAgICBvcHRpb25hbD86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBkZWNsYXJlIGludGVyZmFjZSBUYWJsZUNvbmZpZ3VyYXRpb24ge1xuICAgIGNyaXRlcmlhOiBhbnk7XG4gICAgZGVmYXVsdHM6IGFueTtcbiAgICB0aXRsZT86IHN0cmluZztcbiAgICBtb2RlbDogc3RyaW5nO1xuICAgIHNlYXJjaEV4cHJlc3Npb24/OiBzdHJpbmc7XG4gICAgY29sdW1uczogQXJyYXk8VGFibGVDb2x1bW5Db25maWd1cmF0aW9uPjtcbiAgICBzZWFyY2hlczogQXJyYXk8YW55PjtcbiAgICBzZWxlY3RhYmxlPzogYm9vbGVhbjtcbiAgICBtdWx0aXBsZVNlbGVjdD86IGJvb2xlYW47XG4gICAgZml4ZWRDb2x1bW5zPzoge1xuICAgICAgICBsZWZ0PzogbnVtYmVyO1xuICAgICAgICByaWdodD86IG51bWJlcjtcbiAgICB9XG59XG4iXX0=
|
|
@@ -1,40 +1,21 @@
|
|
|
1
|
-
|
|
2
|
-
* @fileoverview added by tsickle
|
|
3
|
-
* @suppress {checkTypes,extraRequire,uselessCode} checked by tsc
|
|
4
|
-
*/
|
|
5
|
-
import * as tslib_1 from "tslib";
|
|
1
|
+
import { __extends } from "tslib";
|
|
6
2
|
import { TranslateService } from '@ngx-translate/core';
|
|
7
3
|
import { ButtonFormatter } from './advanced-table.formatters';
|
|
8
4
|
var CustomButtonFormatter = /** @class */ (function (_super) {
|
|
9
|
-
|
|
5
|
+
__extends(CustomButtonFormatter, _super);
|
|
10
6
|
function CustomButtonFormatter() {
|
|
11
7
|
return _super.call(this) || this;
|
|
12
8
|
}
|
|
13
|
-
|
|
14
|
-
* @param {?} data
|
|
15
|
-
* @param {?} type
|
|
16
|
-
* @param {?} row
|
|
17
|
-
* @param {?} meta
|
|
18
|
-
* @return {?}
|
|
19
|
-
*/
|
|
20
|
-
CustomButtonFormatter.prototype.render = /**
|
|
21
|
-
* @param {?} data
|
|
22
|
-
* @param {?} type
|
|
23
|
-
* @param {?} row
|
|
24
|
-
* @param {?} meta
|
|
25
|
-
* @return {?}
|
|
26
|
-
*/
|
|
27
|
-
function (data, type, row, meta) {
|
|
9
|
+
CustomButtonFormatter.prototype.render = function (data, type, row, meta) {
|
|
28
10
|
if (data == null || this.injector == null) {
|
|
29
11
|
return '';
|
|
30
12
|
}
|
|
31
|
-
|
|
13
|
+
// get format options
|
|
32
14
|
var formatOptions = Object.assign({
|
|
33
15
|
buttonClass: 'btn btn-default',
|
|
34
16
|
}, this.formatOptions);
|
|
35
|
-
|
|
17
|
+
// get text content
|
|
36
18
|
var buttonText;
|
|
37
|
-
/** @type {?} */
|
|
38
19
|
var buttonTitle = '';
|
|
39
20
|
if (formatOptions.buttonText) {
|
|
40
21
|
buttonText = this.injector.get(TranslateService).instant(formatOptions.buttonText);
|
|
@@ -45,12 +26,10 @@ var CustomButtonFormatter = /** @class */ (function (_super) {
|
|
|
45
26
|
if (formatOptions.buttonTitle) {
|
|
46
27
|
buttonTitle = this.injector.get(TranslateService).instant(formatOptions.buttonTitle);
|
|
47
28
|
}
|
|
48
|
-
/** @type {?} */
|
|
49
29
|
var customEvent = formatOptions.event || 'event';
|
|
50
30
|
return "<button style=\"cursor:pointer\" data-event=\"" + customEvent + "\" class=\"dt-custom " + formatOptions.buttonClass + "\" title=\"" + buttonTitle + "\">" + buttonText + "</button>";
|
|
51
31
|
};
|
|
52
32
|
return CustomButtonFormatter;
|
|
53
33
|
}(ButtonFormatter));
|
|
54
34
|
export { CustomButtonFormatter };
|
|
55
|
-
|
|
56
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWJ1dHRvbi5mb3JtYXR0ZXIuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdW5pdmVyc2lzL25neC10YWJsZXMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9hZHZhbmNlZC10YWJsZS9jdXN0b20tYnV0dG9uLmZvcm1hdHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUNBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQU85RCxJQUFBO0lBQTJDLGlEQUFlO0lBQ3REO2VBQ0ksaUJBQU87S0FDVjs7Ozs7Ozs7SUFFTSxzQ0FBTTs7Ozs7OztjQUFDLElBQVMsRUFBRSxJQUFZLEVBQUUsR0FBUSxFQUFFLElBQWlDO1FBQzlFLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksRUFBRTtZQUN2QyxPQUFPLEVBQUUsQ0FBQztTQUNiOztRQUVELElBQU0sYUFBYSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7WUFDaEMsV0FBVyxFQUFFLGlCQUFpQjtTQUNqQyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQzs7UUFFdkIsSUFBSSxVQUFVLENBQVM7O1FBQ3ZCLElBQUksV0FBVyxHQUFHLEVBQUUsQ0FBQztRQUNyQixJQUFJLGFBQWEsQ0FBQyxVQUFVLEVBQUU7WUFDMUIsVUFBVSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUN0RjthQUFNO1lBQ0gsVUFBVSxHQUFHLGFBQWEsQ0FBQyxhQUFhLENBQUM7U0FDNUM7UUFDRCxJQUFJLGFBQWEsQ0FBQyxXQUFXLEVBQUU7WUFDM0IsV0FBVyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUN4Rjs7UUFDRCxJQUFNLFdBQVcsR0FBRyxhQUFhLENBQUMsS0FBSyxJQUFJLE9BQU8sQ0FBQztRQUNuRCxPQUFPLG1EQUE4QyxXQUFXLDZCQUFzQixhQUFhLENBQUMsV0FBVyxtQkFBWSxXQUFXLFdBQUssVUFBVSxjQUFXLENBQUM7O2dDQWxDeks7RUFTMkMsZUFBZSxFQTRCekQsQ0FBQTtBQTVCRCxpQ0E0QkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBFbGVtZW50UmVmLCBJbmplY3RhYmxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQG5neC10cmFuc2xhdGUvY29yZSc7XG5pbXBvcnQgeyBCdXR0b25Gb3JtYXR0ZXIgfSBmcm9tICcuL2FkdmFuY2VkLXRhYmxlLmZvcm1hdHRlcnMnO1xuXG5kZWNsYXJlIGdsb2JhbCB7XG4gICAgaW50ZXJmYWNlIFdpbmRvdyB7XG4gICAgICAgIGRpc3BhdGNoQ3VzdG9tRXZlbnQ6ICh0eXBlOiBzdHJpbmcsIGV2ZW50OiBhbnkpID0+IHZvaWQ7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIEN1c3RvbUJ1dHRvbkZvcm1hdHRlciBleHRlbmRzIEJ1dHRvbkZvcm1hdHRlciB7XG4gICAgY29uc3RydWN0b3IoKSB7XG4gICAgICAgIHN1cGVyKClcbiAgICB9XG5cbiAgICBwdWJsaWMgcmVuZGVyKGRhdGE6IGFueSwgdHlwZTogc3RyaW5nLCByb3c6IGFueSwgbWV0YTogRGF0YVRhYmxlcy5DZWxsTWV0YVNldHRpbmdzKSB7XG4gICAgICAgIGlmIChkYXRhID09IG51bGwgfHwgdGhpcy5pbmplY3RvciA9PSBudWxsKSB7XG4gICAgICAgICAgICByZXR1cm4gJyc7XG4gICAgICAgIH1cbiAgICAgICAgLy8gZ2V0IGZvcm1hdCBvcHRpb25zXG4gICAgICAgIGNvbnN0IGZvcm1hdE9wdGlvbnMgPSBPYmplY3QuYXNzaWduKHtcbiAgICAgICAgICAgIGJ1dHRvbkNsYXNzOiAnYnRuIGJ0bi1kZWZhdWx0JyxcbiAgICAgICAgfSwgdGhpcy5mb3JtYXRPcHRpb25zKTtcbiAgICAgICAgLy8gZ2V0IHRleHQgY29udGVudFxuICAgICAgICBsZXQgYnV0dG9uVGV4dDogc3RyaW5nO1xuICAgICAgICBsZXQgYnV0dG9uVGl0bGUgPSAnJztcbiAgICAgICAgaWYgKGZvcm1hdE9wdGlvbnMuYnV0dG9uVGV4dCkge1xuICAgICAgICAgICAgYnV0dG9uVGV4dCA9IHRoaXMuaW5qZWN0b3IuZ2V0KFRyYW5zbGF0ZVNlcnZpY2UpLmluc3RhbnQoZm9ybWF0T3B0aW9ucy5idXR0b25UZXh0KTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGJ1dHRvblRleHQgPSBmb3JtYXRPcHRpb25zLmJ1dHRvbkNvbnRlbnQ7XG4gICAgICAgIH1cbiAgICAgICAgaWYgKGZvcm1hdE9wdGlvbnMuYnV0dG9uVGl0bGUpIHtcbiAgICAgICAgICAgIGJ1dHRvblRpdGxlID0gdGhpcy5pbmplY3Rvci5nZXQoVHJhbnNsYXRlU2VydmljZSkuaW5zdGFudChmb3JtYXRPcHRpb25zLmJ1dHRvblRpdGxlKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBjdXN0b21FdmVudCA9IGZvcm1hdE9wdGlvbnMuZXZlbnQgfHwgJ2V2ZW50JztcbiAgICAgICAgcmV0dXJuIGA8YnV0dG9uIHN0eWxlPVwiY3Vyc29yOnBvaW50ZXJcIiBkYXRhLWV2ZW50PVwiJHtjdXN0b21FdmVudH1cIiBjbGFzcz1cImR0LWN1c3RvbSAke2Zvcm1hdE9wdGlvbnMuYnV0dG9uQ2xhc3N9XCIgdGl0bGU9XCIke2J1dHRvblRpdGxlfVwiPiR7YnV0dG9uVGV4dH08L2J1dHRvbj5gO1xuICAgIH1cblxufVxuIl19
|
|
35
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY3VzdG9tLWJ1dHRvbi5mb3JtYXR0ZXIuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdW5pdmVyc2lzL25neC10YWJsZXMvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9hZHZhbmNlZC10YWJsZS9jdXN0b20tYnV0dG9uLmZvcm1hdHRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQ0EsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBTzlEO0lBQTJDLHlDQUFlO0lBQ3REO2VBQ0ksaUJBQU87SUFDWCxDQUFDO0lBRU0sc0NBQU0sR0FBYixVQUFjLElBQVMsRUFBRSxJQUFZLEVBQUUsR0FBUSxFQUFFLElBQWlDO1FBQzlFLElBQUksSUFBSSxJQUFJLElBQUksSUFBSSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksRUFBRTtZQUN2QyxPQUFPLEVBQUUsQ0FBQztTQUNiO1FBQ0QscUJBQXFCO1FBQ3JCLElBQU0sYUFBYSxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7WUFDaEMsV0FBVyxFQUFFLGlCQUFpQjtTQUNqQyxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN2QixtQkFBbUI7UUFDbkIsSUFBSSxVQUFrQixDQUFDO1FBQ3ZCLElBQUksV0FBVyxHQUFHLEVBQUUsQ0FBQztRQUNyQixJQUFJLGFBQWEsQ0FBQyxVQUFVLEVBQUU7WUFDMUIsVUFBVSxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsQ0FBQztTQUN0RjthQUFNO1lBQ0gsVUFBVSxHQUFHLGFBQWEsQ0FBQyxhQUFhLENBQUM7U0FDNUM7UUFDRCxJQUFJLGFBQWEsQ0FBQyxXQUFXLEVBQUU7WUFDM0IsV0FBVyxHQUFHLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLGdCQUFnQixDQUFDLENBQUMsT0FBTyxDQUFDLGFBQWEsQ0FBQyxXQUFXLENBQUMsQ0FBQztTQUN4RjtRQUNELElBQU0sV0FBVyxHQUFHLGFBQWEsQ0FBQyxLQUFLLElBQUksT0FBTyxDQUFDO1FBQ25ELE9BQU8sbURBQThDLFdBQVcsNkJBQXNCLGFBQWEsQ0FBQyxXQUFXLG1CQUFZLFdBQVcsV0FBSyxVQUFVLGNBQVcsQ0FBQztJQUNySyxDQUFDO0lBRUwsNEJBQUM7QUFBRCxDQUFDLEFBNUJELENBQTJDLGVBQWUsR0E0QnpEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRWxlbWVudFJlZiwgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVHJhbnNsYXRlU2VydmljZSB9IGZyb20gJ0BuZ3gtdHJhbnNsYXRlL2NvcmUnO1xuaW1wb3J0IHsgQnV0dG9uRm9ybWF0dGVyIH0gZnJvbSAnLi9hZHZhbmNlZC10YWJsZS5mb3JtYXR0ZXJzJztcblxuZGVjbGFyZSBnbG9iYWwge1xuICAgIGludGVyZmFjZSBXaW5kb3cge1xuICAgICAgICBkaXNwYXRjaEN1c3RvbUV2ZW50OiAodHlwZTogc3RyaW5nLCBldmVudDogYW55KSA9PiB2b2lkO1xuICAgIH1cbn1cbmV4cG9ydCBjbGFzcyBDdXN0b21CdXR0b25Gb3JtYXR0ZXIgZXh0ZW5kcyBCdXR0b25Gb3JtYXR0ZXIge1xuICAgIGNvbnN0cnVjdG9yKCkge1xuICAgICAgICBzdXBlcigpXG4gICAgfVxuXG4gICAgcHVibGljIHJlbmRlcihkYXRhOiBhbnksIHR5cGU6IHN0cmluZywgcm93OiBhbnksIG1ldGE6IERhdGFUYWJsZXMuQ2VsbE1ldGFTZXR0aW5ncykge1xuICAgICAgICBpZiAoZGF0YSA9PSBudWxsIHx8IHRoaXMuaW5qZWN0b3IgPT0gbnVsbCkge1xuICAgICAgICAgICAgcmV0dXJuICcnO1xuICAgICAgICB9XG4gICAgICAgIC8vIGdldCBmb3JtYXQgb3B0aW9uc1xuICAgICAgICBjb25zdCBmb3JtYXRPcHRpb25zID0gT2JqZWN0LmFzc2lnbih7XG4gICAgICAgICAgICBidXR0b25DbGFzczogJ2J0biBidG4tZGVmYXVsdCcsXG4gICAgICAgIH0sIHRoaXMuZm9ybWF0T3B0aW9ucyk7XG4gICAgICAgIC8vIGdldCB0ZXh0IGNvbnRlbnRcbiAgICAgICAgbGV0IGJ1dHRvblRleHQ6IHN0cmluZztcbiAgICAgICAgbGV0IGJ1dHRvblRpdGxlID0gJyc7XG4gICAgICAgIGlmIChmb3JtYXRPcHRpb25zLmJ1dHRvblRleHQpIHtcbiAgICAgICAgICAgIGJ1dHRvblRleHQgPSB0aGlzLmluamVjdG9yLmdldChUcmFuc2xhdGVTZXJ2aWNlKS5pbnN0YW50KGZvcm1hdE9wdGlvbnMuYnV0dG9uVGV4dCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBidXR0b25UZXh0ID0gZm9ybWF0T3B0aW9ucy5idXR0b25Db250ZW50O1xuICAgICAgICB9XG4gICAgICAgIGlmIChmb3JtYXRPcHRpb25zLmJ1dHRvblRpdGxlKSB7XG4gICAgICAgICAgICBidXR0b25UaXRsZSA9IHRoaXMuaW5qZWN0b3IuZ2V0KFRyYW5zbGF0ZVNlcnZpY2UpLmluc3RhbnQoZm9ybWF0T3B0aW9ucy5idXR0b25UaXRsZSk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgY3VzdG9tRXZlbnQgPSBmb3JtYXRPcHRpb25zLmV2ZW50IHx8ICdldmVudCc7XG4gICAgICAgIHJldHVybiBgPGJ1dHRvbiBzdHlsZT1cImN1cnNvcjpwb2ludGVyXCIgZGF0YS1ldmVudD1cIiR7Y3VzdG9tRXZlbnR9XCIgY2xhc3M9XCJkdC1jdXN0b20gJHtmb3JtYXRPcHRpb25zLmJ1dHRvbkNsYXNzfVwiIHRpdGxlPVwiJHtidXR0b25UaXRsZX1cIj4ke2J1dHRvblRleHR9PC9idXR0b24+YDtcbiAgICB9XG5cbn1cbiJdfQ==
|