ontimize-web-ngx 15.6.1 → 15.7.0
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/esm2020/lib/components/list/o-list.component.mjs +15 -1
- package/esm2020/lib/components/o-service-base-component.class.mjs +10 -1
- package/esm2020/lib/components/table/extensions/contextmenu/o-table-context-menu.component.mjs +17 -11
- package/esm2020/lib/components/table/extensions/dialog/filter-by-column/o-table-filter-by-column-data-dialog.component.mjs +41 -64
- package/esm2020/lib/components/table/extensions/dialog/filter-by-column/o-table-filter-by-column.service.mjs +75 -8
- package/esm2020/lib/components/table/extensions/dialog/visible-columns/o-table-visible-columns-dialog.component.mjs +2 -2
- package/esm2020/lib/components/table/extensions/header/table-columns-filter/columns/o-table-columns-filter-column.component.mjs +19 -3
- package/esm2020/lib/components/table/extensions/header/table-columns-filter/o-table-columns-filter.component.mjs +68 -51
- package/esm2020/lib/components/table/extensions/header/table-header-column-filter-icon/o-table-header-column-filter-icon.component.mjs +26 -11
- package/esm2020/lib/components/table/extensions/o-table.dao.mjs +6 -3
- package/esm2020/lib/components/table/o-table-base.class.mjs +1 -1
- package/esm2020/lib/components/table/o-table.component.mjs +59 -7
- package/esm2020/lib/components/tree/o-tree-dao.service.mjs +32 -1
- package/esm2020/lib/components/tree/o-tree.component.mjs +144 -22
- package/esm2020/lib/components/tree/o-tree.datasource.mjs +28 -14
- package/esm2020/lib/components/tree/o-tree.module.mjs +1 -1
- package/esm2020/lib/components/tree/tree-node/tree-node.component.mjs +2 -20
- package/esm2020/lib/i18n/i18n.mjs +13 -4
- package/esm2020/lib/interfaces/pagination-data.interface.mjs +2 -0
- package/esm2020/lib/services/state/index.mjs +3 -1
- package/esm2020/lib/services/state/o-tree-component-state.class.mjs +1 -1
- package/esm2020/lib/services/state/o-tree-component-state.service.mjs +54 -14
- package/esm2020/lib/types/table/o-table-initialization-options.type.mjs +1 -1
- package/esm2020/lib/types/tree-flat-node.type.mjs +1 -1
- package/fesm2015/ontimize-web-ngx.mjs +614 -194
- package/fesm2015/ontimize-web-ngx.mjs.map +1 -1
- package/fesm2020/ontimize-web-ngx.mjs +600 -193
- package/fesm2020/ontimize-web-ngx.mjs.map +1 -1
- package/lib/components/list/o-list.component.d.ts +2 -0
- package/lib/components/o-service-base-component.class.d.ts +5 -1
- package/lib/components/table/extensions/dialog/filter-by-column/o-table-filter-by-column-data-dialog.component.d.ts +10 -3
- package/lib/components/table/extensions/dialog/filter-by-column/o-table-filter-by-column.service.d.ts +10 -3
- package/lib/components/table/extensions/header/o-table-header-components.d.ts +2 -2
- package/lib/components/table/extensions/header/table-columns-filter/columns/o-table-columns-filter-column.component.d.ts +19 -2
- package/lib/components/table/extensions/header/table-columns-filter/o-table-columns-filter.component.d.ts +10 -9
- package/lib/components/table/extensions/header/table-header-column-filter-icon/o-table-header-column-filter-icon.component.d.ts +7 -1
- package/lib/components/table/o-table-base.class.d.ts +12 -3
- package/lib/components/table/o-table.component.d.ts +10 -3
- package/lib/components/tree/o-tree-dao.service.d.ts +4 -2
- package/lib/components/tree/o-tree.component.d.ts +21 -2
- package/lib/components/tree/o-tree.datasource.d.ts +3 -0
- package/lib/components/tree/tree-node/tree-node.component.d.ts +0 -4
- package/lib/i18n/i18n.d.ts +9 -0
- package/lib/interfaces/pagination-data.interface.d.ts +6 -0
- package/lib/services/state/index.d.ts +2 -0
- package/lib/services/state/o-tree-component-state.class.d.ts +3 -0
- package/lib/services/state/o-tree-component-state.service.d.ts +4 -1
- package/lib/types/table/o-table-initialization-options.type.d.ts +4 -0
- package/lib/types/tree-flat-node.type.d.ts +5 -1
- package/package.json +1 -1
|
@@ -1,17 +1,30 @@
|
|
|
1
1
|
import { Injectable } from '@angular/core';
|
|
2
2
|
import { ColumnValueFilterOperator } from '../../../../../types/table/o-column-value-filter.type';
|
|
3
3
|
import { Util } from '../../../../../util/util';
|
|
4
|
+
import { Observable, of } from 'rxjs';
|
|
5
|
+
import { FactoryUtil } from '../../../../../util/factory.util';
|
|
6
|
+
import { OntimizeService } from '../../../../../services/ontimize/ontimize.service';
|
|
4
7
|
import * as i0 from "@angular/core";
|
|
5
8
|
export class OTableFilterByColumnService {
|
|
6
9
|
constructor() { }
|
|
7
|
-
getColumnDataUsingRenderer(column, tableData) {
|
|
10
|
+
getColumnDataUsingRenderer(column, tableData, visibleColumns, separator) {
|
|
11
|
+
const useCustomRender = Array.isArray(visibleColumns) && visibleColumns.length > 0;
|
|
8
12
|
return tableData.map(row => {
|
|
9
|
-
|
|
13
|
+
if (useCustomRender) {
|
|
14
|
+
return visibleColumns.map(attr => row[attr] ?? '').join(separator);
|
|
15
|
+
}
|
|
16
|
+
else {
|
|
17
|
+
const rawValue = row[column.attr];
|
|
18
|
+
return column.renderer?.getCellData?.(rawValue, row) ?? rawValue;
|
|
19
|
+
}
|
|
10
20
|
});
|
|
11
21
|
}
|
|
12
|
-
parseListData(filter, column, tableData, isPageable,
|
|
22
|
+
parseListData(filter, column, tableData, isPageable, filterColumnDefinition) {
|
|
13
23
|
const columnData = [];
|
|
14
|
-
const
|
|
24
|
+
const visibleColumns = filterColumnDefinition.visibleColumns;
|
|
25
|
+
const separator = filterColumnDefinition.separator;
|
|
26
|
+
const sourceData = filterColumnDefinition.filterValuesInData;
|
|
27
|
+
const colRenderedValues = this.getColumnDataUsingRenderer(column, tableData, visibleColumns, separator);
|
|
15
28
|
const valueColumn = column.valueColumn ?? column.attr;
|
|
16
29
|
const colValues = tableData.map((elem) => Util.getValueFromPath(elem, valueColumn));
|
|
17
30
|
if (Util.isDefined(filter?.availableValues)) {
|
|
@@ -34,20 +47,74 @@ export class OTableFilterByColumnService {
|
|
|
34
47
|
});
|
|
35
48
|
return columnData;
|
|
36
49
|
}
|
|
37
|
-
applySelectedValuesToFilter(column, tableData, filter, selectedValues,
|
|
50
|
+
applySelectedValuesToFilter(column, tableData, filter, selectedValues, filterByColumnDefinition, isPageable, getComponentFilterFn) {
|
|
38
51
|
filter.operator = ColumnValueFilterOperator.IN;
|
|
39
52
|
filter.values = selectedValues.map(item => item.value);
|
|
40
|
-
|
|
41
|
-
|
|
53
|
+
const sourceData = filterByColumnDefinition.filterValuesInData;
|
|
54
|
+
const effectiveSourceData = sourceData ?? 'current-page';
|
|
55
|
+
if (effectiveSourceData) {
|
|
56
|
+
filter.availableValues = this.parseListData(filter, column, filter.availableValues ?? tableData, isPageable, filterByColumnDefinition);
|
|
42
57
|
}
|
|
43
58
|
else {
|
|
44
59
|
filter.filterExpresion = filter.filterExpresion || getComponentFilterFn();
|
|
45
60
|
}
|
|
46
61
|
}
|
|
62
|
+
getDataForColumnFilter(injector, table, column, filterColumnDefinition) {
|
|
63
|
+
if (filterColumnDefinition.filterValuesInData === 'current-page') {
|
|
64
|
+
return of(table.getValue());
|
|
65
|
+
}
|
|
66
|
+
if (table.pageable) {
|
|
67
|
+
const previousFilter = table.dataSource.getColumnValueFilterByAttr(column.attr);
|
|
68
|
+
const kv = previousFilter?.filterExpresion || table.getComponentFilter();
|
|
69
|
+
const av = [column.attr];
|
|
70
|
+
const sqlTypes = Util.isDefined(kv) && !Util.isObjectEmpty(kv)
|
|
71
|
+
? table.getSqlTypes()
|
|
72
|
+
: {};
|
|
73
|
+
const entity = filterColumnDefinition.entity ?? table.entity;
|
|
74
|
+
const columnQueryArgs = [kv, av, entity, sqlTypes];
|
|
75
|
+
const service = this.configureService(injector, filterColumnDefinition, table);
|
|
76
|
+
const queryMethodName = filterColumnDefinition.queryMethod ?? table.queryMethod;
|
|
77
|
+
if (service && queryMethodName && typeof service[queryMethodName] === 'function') {
|
|
78
|
+
const result$ = service[queryMethodName](...columnQueryArgs);
|
|
79
|
+
return new Observable(observer => {
|
|
80
|
+
result$.subscribe({
|
|
81
|
+
next: res => observer.next(res?.isSuccessful() ? res.data : []),
|
|
82
|
+
error: err => {
|
|
83
|
+
console.error('[FilterService] Error al consultar datos del filtro:', err);
|
|
84
|
+
observer.next([]);
|
|
85
|
+
},
|
|
86
|
+
complete: () => observer.complete()
|
|
87
|
+
});
|
|
88
|
+
});
|
|
89
|
+
}
|
|
90
|
+
return of([]);
|
|
91
|
+
}
|
|
92
|
+
return of(table.getAllValues());
|
|
93
|
+
}
|
|
94
|
+
configureService(injector, filterColumnDefinition, tableEntity) {
|
|
95
|
+
const service = filterColumnDefinition.service;
|
|
96
|
+
const serviceType = filterColumnDefinition.serviceType;
|
|
97
|
+
const entity = filterColumnDefinition.entity ?? tableEntity.entity;
|
|
98
|
+
if ((service || serviceType)) {
|
|
99
|
+
let configureServiceArgs = { injector: injector, baseService: OntimizeService, entity: entity, service: service, serviceType: serviceType };
|
|
100
|
+
return FactoryUtil.configureService(configureServiceArgs);
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
return tableEntity.getDataService();
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
initializeColumnFilterData(filter, column, tableData, isPageable, filterColumnDefinition) {
|
|
107
|
+
const columnData = this.parseListData(filter, column, tableData, isPageable, filterColumnDefinition);
|
|
108
|
+
const selectedValues = filter?.values ?? [];
|
|
109
|
+
for (const item of columnData) {
|
|
110
|
+
item.selected = selectedValues.includes(item.value);
|
|
111
|
+
}
|
|
112
|
+
return columnData;
|
|
113
|
+
}
|
|
47
114
|
}
|
|
48
115
|
OTableFilterByColumnService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OTableFilterByColumnService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
49
116
|
OTableFilterByColumnService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OTableFilterByColumnService });
|
|
50
117
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OTableFilterByColumnService, decorators: [{
|
|
51
118
|
type: Injectable
|
|
52
119
|
}], ctorParameters: function () { return []; } });
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby10YWJsZS1maWx0ZXItYnktY29sdW1uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbnRpbWl6ZS13ZWItbmd4L3NyYy9saWIvY29tcG9uZW50cy90YWJsZS9leHRlbnNpb25zL2RpYWxvZy9maWx0ZXItYnktY29sdW1uL28tdGFibGUtZmlsdGVyLWJ5LWNvbHVtbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLHlCQUF5QixFQUFzQixNQUFNLHVEQUF1RCxDQUFDO0FBRXRILE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUFJaEQsTUFBTSxPQUFPLDJCQUEyQjtJQUN0QyxnQkFBZ0IsQ0FBQztJQU1qQiwwQkFBMEIsQ0FBQyxNQUFlLEVBQUUsU0FBZ0I7UUFDMUQsT0FBTyxTQUFTLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3pCLE9BQU8sTUFBTSxDQUFDLFFBQVEsRUFBRSxXQUFXLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkYsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBYUQsYUFBYSxDQUNYLE1BQTBCLEVBQzFCLE1BQWUsRUFDZixTQUFnQixFQUNoQixVQUFtQixFQUNuQixVQUF1QztRQUV2QyxNQUFNLFVBQVUsR0FBOEIsRUFBRSxDQUFDO1FBQ2pELE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLDBCQUEwQixDQUFDLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQztRQUM3RSxNQUFNLFdBQVcsR0FBRyxNQUFNLENBQUMsV0FBVyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUM7UUFDdEQsTUFBTSxTQUFTLEdBQUcsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksRUFBRSxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBR3BGLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsZUFBZSxDQUFDLEVBQUU7WUFDM0MsT0FBTyxNQUFNLENBQUMsZUFBZSxDQUFDO1NBQy9CO1FBRUQsaUJBQWlCLENBQUMsT0FBTyxDQUFDLENBQUMsYUFBYSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBRTdDLGFBQWEsR0FBRyxhQUFhLElBQUksRUFBRSxDQUFDO1lBRXBDLE1BQU0sYUFBYSxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxLQUFLLGFBQWEsQ0FBQyxDQUFDO1lBR3BGLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxVQUFVLElBQUksVUFBVSxLQUFLLFVBQVUsQ0FBQyxFQUFFO2dCQUMvRCxNQUFNLFFBQVEsR0FBRyxNQUFNLEVBQUUsUUFBUSxLQUFLLHlCQUF5QixDQUFDLEVBQUU7b0JBQ2hFLENBQUMsTUFBTSxFQUFFLE1BQU0sSUFBSSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBRWhELFVBQVUsQ0FBQyxJQUFJLENBQUM7b0JBQ2QsYUFBYTtvQkFDYixLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQztvQkFDbkIsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7b0JBQ3RCLFFBQVE7b0JBQ1IsVUFBVSxFQUFFLENBQUM7aUJBQ2QsQ0FBQyxDQUFDO2FBQ0o7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7SUFZRCwyQkFBMkIsQ0FDekIsTUFBZSxFQUNmLFNBQWdCLEVBQ2hCLE1BQTBCLEVBQzFCLGNBQXlDLEVBQ3pDLFVBQXVDLEVBQ3ZDLFVBQW1CLEVBQ25CLG9CQUErQjtRQUUvQixNQUFNLENBQUMsUUFBUSxHQUFHLHlCQUF5QixDQUFDLEVBQUUsQ0FBQztRQUMvQyxNQUFNLENBQUMsTUFBTSxHQUFHLGNBQWMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFdkQsSUFBSSxVQUFVLEtBQUssY0FBYyxFQUFFO1lBQ2pDLE1BQU0sQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxlQUFlLElBQUksU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQztTQUMxSDthQUFNO1lBQ0wsTUFBTSxDQUFDLGVBQWUsR0FBRyxNQUFNLENBQUMsZUFBZSxJQUFJLG9CQUFvQixFQUFFLENBQUM7U0FDM0U7SUFDSCxDQUFDOzt3SEEzRlUsMkJBQTJCOzRIQUEzQiwyQkFBMkI7MkZBQTNCLDJCQUEyQjtrQkFEdkMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ29sdW1uVmFsdWVGaWx0ZXJPcGVyYXRvciwgT0NvbHVtblZhbHVlRmlsdGVyIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdHlwZXMvdGFibGUvby1jb2x1bW4tdmFsdWUtZmlsdGVyLnR5cGUnO1xuaW1wb3J0IHsgVGFibGVGaWx0ZXJCeUNvbHVtbkRhdGEgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi90eXBlcy90YWJsZS9vLXRhYmxlLWZpbHRlci1ieS1jb2x1bW4tZGF0YS50eXBlJztcbmltcG9ydCB7IFV0aWwgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi91dGlsL3V0aWwnO1xuaW1wb3J0IHsgT0NvbHVtbiB9IGZyb20gJy4uLy4uLy4uL2NvbHVtbi9vLWNvbHVtbi5jbGFzcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBPVGFibGVGaWx0ZXJCeUNvbHVtblNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIC8qKlxuICogUmV0dXJucyB0aGUgZGlzcGxheWVkIChyZW5kZXJlZCkgdmFsdWVzIGZvciBhIGNvbHVtbiBmcm9tIHRoZSBnaXZlbiB0YWJsZSBkYXRhLlxuICogRmFsbHMgYmFjayB0byByYXcgdmFsdWUgaWYgbm8gcmVuZGVyZXIgaXMgZGVmaW5lZC5cbiAqL1xuICBnZXRDb2x1bW5EYXRhVXNpbmdSZW5kZXJlcihjb2x1bW46IE9Db2x1bW4sIHRhYmxlRGF0YTogYW55W10pOiBhbnlbXSB7XG4gICAgcmV0dXJuIHRhYmxlRGF0YS5tYXAocm93ID0+IHtcbiAgICAgIHJldHVybiBjb2x1bW4ucmVuZGVyZXI/LmdldENlbGxEYXRhPy4ocm93W2NvbHVtbi5hdHRyXSwgcm93KSA/PyByb3dbY29sdW1uLmF0dHJdO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlcyBhIHVuaXF1ZSBsaXN0IG9mIGZpbHRlcmFibGUgY29sdW1uIHZhbHVlcywgb3B0aW9uYWxseSBtYXJraW5nIHNlbGVjdGVkIGl0ZW1zLlxuICAgKlxuICAgKiBAcGFyYW0gZmlsdGVyIC0gQ3VycmVudCBmaWx0ZXIgY29uZmlndXJhdGlvbiAoY2FuIGJlIG51bGwpXG4gICAqIEBwYXJhbSBjb2x1bW4gLSBDb2x1bW4gYmVpbmcgZmlsdGVyZWRcbiAgICogQHBhcmFtIHRhYmxlRGF0YSAtIERhdGEgdG8gZXh0cmFjdCB2YWx1ZXMgZnJvbSAocGFnZWQgb3IgZnVsbClcbiAgICogQHBhcmFtIGlzUGFnZWFibGUgLSBXaGV0aGVyIHRoZSB0YWJsZSBpcyBwYWdlYWJsZVxuICAgKiBAcGFyYW0gc291cmNlRGF0YSAtIEluZGljYXRlcyB3aGV0aGVyIGRhdGEgY29tZXMgZnJvbSBjdXJyZW50IHBhZ2Ugb3IgYWxsIGRhdGFcbiAgICogQHJldHVybnMgTGlzdCBvZiBjb2x1bW4gdmFsdWVzIHdpdGggdGhlaXIgcmVuZGVyZWQgdmFsdWUgYW5kIHNlbGVjdGlvbiBzdGF0ZVxuICAgKi9cblxuICBwYXJzZUxpc3REYXRhKFxuICAgIGZpbHRlcjogT0NvbHVtblZhbHVlRmlsdGVyLFxuICAgIGNvbHVtbjogT0NvbHVtbixcbiAgICB0YWJsZURhdGE6IGFueVtdLFxuICAgIGlzUGFnZWFibGU6IGJvb2xlYW4sXG4gICAgc291cmNlRGF0YTogJ2N1cnJlbnQtcGFnZScgfCAnYWxsLWRhdGEnXG4gICk6IFRhYmxlRmlsdGVyQnlDb2x1bW5EYXRhW10ge1xuICAgIGNvbnN0IGNvbHVtbkRhdGE6IFRhYmxlRmlsdGVyQnlDb2x1bW5EYXRhW10gPSBbXTtcbiAgICBjb25zdCBjb2xSZW5kZXJlZFZhbHVlcyA9IHRoaXMuZ2V0Q29sdW1uRGF0YVVzaW5nUmVuZGVyZXIoY29sdW1uLCB0YWJsZURhdGEpO1xuICAgIGNvbnN0IHZhbHVlQ29sdW1uID0gY29sdW1uLnZhbHVlQ29sdW1uID8/IGNvbHVtbi5hdHRyO1xuICAgIGNvbnN0IGNvbFZhbHVlcyA9IHRhYmxlRGF0YS5tYXAoKGVsZW0pID0+IFV0aWwuZ2V0VmFsdWVGcm9tUGF0aChlbGVtLCB2YWx1ZUNvbHVtbikpO1xuXG4gICAgLy8gVXNlIHByZWRlZmluZWQgdmFsdWVzIGlmIGF2YWlsYWJsZSBpbiB0aGUgZmlsdGVyIGNvbmZpZ3VyYXRpb25cbiAgICBpZiAoVXRpbC5pc0RlZmluZWQoZmlsdGVyPy5hdmFpbGFibGVWYWx1ZXMpKSB7XG4gICAgICByZXR1cm4gZmlsdGVyLmF2YWlsYWJsZVZhbHVlcztcbiAgICB9XG5cbiAgICBjb2xSZW5kZXJlZFZhbHVlcy5mb3JFYWNoKChyZW5kZXJlZFZhbHVlLCBpKSA9PiB7XG5cbiAgICAgIHJlbmRlcmVkVmFsdWUgPSByZW5kZXJlZFZhbHVlID8/ICcnO1xuXG4gICAgICBjb25zdCBhbHJlYWR5RXhpc3RzID0gY29sdW1uRGF0YS5maW5kKGl0ZW0gPT4gaXRlbS5yZW5kZXJlZFZhbHVlID09PSByZW5kZXJlZFZhbHVlKTtcblxuICAgICAgLy8gQXZvaWQgZHVwbGljYXRlcyB1bmxlc3Mgd2UncmUgaW4gcGFnZWFibGUgbW9kZSBhbmQgcHJvY2Vzc2luZyBhbGwtZGF0YVxuICAgICAgaWYgKCFhbHJlYWR5RXhpc3RzIHx8IChpc1BhZ2VhYmxlICYmIHNvdXJjZURhdGEgPT09ICdhbGwtZGF0YScpKSB7XG4gICAgICAgIGNvbnN0IHNlbGVjdGVkID0gZmlsdGVyPy5vcGVyYXRvciA9PT0gQ29sdW1uVmFsdWVGaWx0ZXJPcGVyYXRvci5JTiAmJlxuICAgICAgICAgIChmaWx0ZXI/LnZhbHVlcyA/PyBbXSkuaW5jbHVkZXMoY29sVmFsdWVzW2ldKTtcblxuICAgICAgICBjb2x1bW5EYXRhLnB1c2goe1xuICAgICAgICAgIHJlbmRlcmVkVmFsdWUsXG4gICAgICAgICAgdmFsdWU6IGNvbFZhbHVlc1tpXSxcbiAgICAgICAgICByb3dWYWx1ZTogdGFibGVEYXRhW2ldLFxuICAgICAgICAgIHNlbGVjdGVkLFxuICAgICAgICAgIHRhYmxlSW5kZXg6IGlcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSk7XG4gICAgcmV0dXJuIGNvbHVtbkRhdGE7XG4gIH1cblxuICAvKipcbiAqIEFwcGxpZXMgc2VsZWN0ZWQgZmlsdGVyIHZhbHVlcyB0byBhIGdpdmVuIGNvbHVtbiBmaWx0ZXIuXG4gKiBVcGRhdGVzIG9wZXJhdG9yLCB2YWx1ZXMsIGF2YWlsYWJsZVZhbHVlcyBvciBmaWx0ZXJFeHByZXNzaW9uIGJhc2VkIG9uIHNvdXJjZSBkYXRhLlxuICpcbiAqIEBwYXJhbSBmaWx0ZXIgLSBUaGUgZmlsdGVyIG9iamVjdCB0byB1cGRhdGVcbiAqIEBwYXJhbSBzZWxlY3RlZFZhbHVlcyAtIExpc3Qgb2Ygc2VsZWN0ZWQgY29sdW1uIGRhdGEgZW50cmllc1xuICogQHBhcmFtIHNvdXJjZURhdGEgLSBJbmRpY2F0ZXMgd2hldGhlciBmaWx0ZXJpbmcgaXMgYmFzZWQgb24gY3VycmVudCBwYWdlIG9yIGFsbCBkYXRhXG4gKiBAcGFyYW0gY29sdW1uRGF0YSAtIEZ1bGwgbGlzdCBvZiBhdmFpbGFibGUgY29sdW1uIGZpbHRlciBkYXRhXG4gKiBAcGFyYW0gZ2V0Q29tcG9uZW50RmlsdGVyRm4gLSBGdW5jdGlvbiB0byByZXRyaWV2ZSB0aGUgY29tcG9uZW50IGZpbHRlciBleHByZXNzaW9uXG4gKi9cbiAgYXBwbHlTZWxlY3RlZFZhbHVlc1RvRmlsdGVyKFxuICAgIGNvbHVtbjogT0NvbHVtbixcbiAgICB0YWJsZURhdGE6IGFueVtdLFxuICAgIGZpbHRlcjogT0NvbHVtblZhbHVlRmlsdGVyLFxuICAgIHNlbGVjdGVkVmFsdWVzOiBUYWJsZUZpbHRlckJ5Q29sdW1uRGF0YVtdLFxuICAgIHNvdXJjZURhdGE6ICdjdXJyZW50LXBhZ2UnIHwgJ2FsbC1kYXRhJyxcbiAgICBpc1BhZ2VhYmxlOiBib29sZWFuLFxuICAgIGdldENvbXBvbmVudEZpbHRlckZuOiAoKSA9PiBhbnlcbiAgKTogdm9pZCB7XG4gICAgZmlsdGVyLm9wZXJhdG9yID0gQ29sdW1uVmFsdWVGaWx0ZXJPcGVyYXRvci5JTjtcbiAgICBmaWx0ZXIudmFsdWVzID0gc2VsZWN0ZWRWYWx1ZXMubWFwKGl0ZW0gPT4gaXRlbS52YWx1ZSk7XG5cbiAgICBpZiAoc291cmNlRGF0YSA9PT0gJ2N1cnJlbnQtcGFnZScpIHtcbiAgICAgIGZpbHRlci5hdmFpbGFibGVWYWx1ZXMgPSB0aGlzLnBhcnNlTGlzdERhdGEoZmlsdGVyLCBjb2x1bW4sIGZpbHRlci5hdmFpbGFibGVWYWx1ZXMgPz8gdGFibGVEYXRhLCBpc1BhZ2VhYmxlLCBzb3VyY2VEYXRhKTtcbiAgICB9IGVsc2Uge1xuICAgICAgZmlsdGVyLmZpbHRlckV4cHJlc2lvbiA9IGZpbHRlci5maWx0ZXJFeHByZXNpb24gfHwgZ2V0Q29tcG9uZW50RmlsdGVyRm4oKTtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
120
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby10YWJsZS1maWx0ZXItYnktY29sdW1uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbnRpbWl6ZS13ZWItbmd4L3NyYy9saWIvY29tcG9uZW50cy90YWJsZS9leHRlbnNpb25zL2RpYWxvZy9maWx0ZXItYnktY29sdW1uL28tdGFibGUtZmlsdGVyLWJ5LWNvbHVtbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQVksTUFBTSxlQUFlLENBQUM7QUFFckQsT0FBTyxFQUFFLHlCQUF5QixFQUFzQixNQUFNLHVEQUF1RCxDQUFDO0FBRXRILE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUVoRCxPQUFPLEVBQUUsVUFBVSxFQUFFLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUV0QyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFL0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1EQUFtRCxDQUFDOztBQUtwRixNQUFNLE9BQU8sMkJBQTJCO0lBQ3RDLGdCQUFnQixDQUFDO0lBTWpCLDBCQUEwQixDQUFDLE1BQWUsRUFBRSxTQUFnQixFQUFFLGNBQXdCLEVBQUUsU0FBaUI7UUFDdkcsTUFBTSxlQUFlLEdBQUcsS0FBSyxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsSUFBSSxjQUFjLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQztRQUVuRixPQUFPLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDekIsSUFBSSxlQUFlLEVBQUU7Z0JBQ25CLE9BQU8sY0FBYyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7YUFDcEU7aUJBQU07Z0JBQ0wsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDbEMsT0FBTyxNQUFNLENBQUMsUUFBUSxFQUFFLFdBQVcsRUFBRSxDQUFDLFFBQVEsRUFBRSxHQUFHLENBQUMsSUFBSSxRQUFRLENBQUM7YUFDbEU7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFhRCxhQUFhLENBQ1gsTUFBMEIsRUFDMUIsTUFBZSxFQUNmLFNBQWdCLEVBQ2hCLFVBQW1CLEVBQ25CLHNCQUFxQztRQUVyQyxNQUFNLFVBQVUsR0FBOEIsRUFBRSxDQUFDO1FBQ2pELE1BQU0sY0FBYyxHQUFHLHNCQUFzQixDQUFDLGNBQWMsQ0FBQztRQUM3RCxNQUFNLFNBQVMsR0FBRyxzQkFBc0IsQ0FBQyxTQUFTLENBQUM7UUFDbkQsTUFBTSxVQUFVLEdBQUcsc0JBQXNCLENBQUMsa0JBQWtCLENBQUM7UUFDN0QsTUFBTSxpQkFBaUIsR0FBRyxJQUFJLENBQUMsMEJBQTBCLENBQUMsTUFBTSxFQUFFLFNBQVMsRUFBRSxjQUFjLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFHeEcsTUFBTSxXQUFXLEdBQUUsTUFBTSxDQUFDLFdBQVcsSUFBSSxNQUFNLENBQUMsSUFBSSxDQUFDO1FBQ3JELE1BQU0sU0FBUyxHQUFHLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUUsV0FBVyxDQUFDLENBQUMsQ0FBQztRQUdwRixJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLGVBQWUsQ0FBQyxFQUFFO1lBQzNDLE9BQU8sTUFBTSxDQUFDLGVBQWUsQ0FBQztTQUMvQjtRQUVELGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxDQUFDLGFBQWEsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUU3QyxhQUFhLEdBQUcsYUFBYSxJQUFJLEVBQUUsQ0FBQztZQUVwQyxNQUFNLGFBQWEsR0FBRyxVQUFVLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsS0FBSyxhQUFhLENBQUMsQ0FBQztZQUdwRixJQUFJLENBQUMsYUFBYSxJQUFJLENBQUMsVUFBVSxJQUFJLFVBQVUsS0FBSyxVQUFVLENBQUMsRUFBRTtnQkFDL0QsTUFBTSxRQUFRLEdBQUcsTUFBTSxFQUFFLFFBQVEsS0FBSyx5QkFBeUIsQ0FBQyxFQUFFO29CQUNoRSxDQUFDLE1BQU0sRUFBRSxNQUFNLElBQUksRUFBRSxDQUFDLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO2dCQUVoRCxVQUFVLENBQUMsSUFBSSxDQUFDO29CQUNkLGFBQWE7b0JBQ2IsS0FBSyxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7b0JBQ25CLFFBQVEsRUFBRSxTQUFTLENBQUMsQ0FBQyxDQUFDO29CQUN0QixRQUFRO29CQUNSLFVBQVUsRUFBRSxDQUFDO2lCQUNkLENBQUMsQ0FBQzthQUNKO1FBQ0gsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLFVBQVUsQ0FBQztJQUNwQixDQUFDO0lBWUQsMkJBQTJCLENBQ3pCLE1BQWUsRUFDZixTQUFnQixFQUNoQixNQUEwQixFQUMxQixjQUF5QyxFQUN6Qyx3QkFBdUMsRUFDdkMsVUFBbUIsRUFDbkIsb0JBQStCO1FBRS9CLE1BQU0sQ0FBQyxRQUFRLEdBQUcseUJBQXlCLENBQUMsRUFBRSxDQUFDO1FBQy9DLE1BQU0sQ0FBQyxNQUFNLEdBQUcsY0FBYyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUV2RCxNQUFNLFVBQVUsR0FBRyx3QkFBd0IsQ0FBQyxrQkFBa0IsQ0FBQztRQUMvRCxNQUFNLG1CQUFtQixHQUFHLFVBQVUsSUFBSSxjQUFjLENBQUM7UUFDekQsSUFBSSxtQkFBbUIsRUFBRTtZQUN2QixNQUFNLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxNQUFNLENBQUMsZUFBZSxJQUFJLFNBQVMsRUFBRSxVQUFVLEVBQUUsd0JBQXdCLENBQUMsQ0FBQztTQUN4STthQUFNO1lBQ0wsTUFBTSxDQUFDLGVBQWUsR0FBRyxNQUFNLENBQUMsZUFBZSxJQUFJLG9CQUFvQixFQUFFLENBQUM7U0FDM0U7SUFDSCxDQUFDO0lBRUQsc0JBQXNCLENBQ3BCLFFBQWtCLEVBQ2xCLEtBQWlCLEVBQ2pCLE1BQWUsRUFDZixzQkFBcUM7UUFFckMsSUFBSSxzQkFBc0IsQ0FBQyxrQkFBa0IsS0FBSyxjQUFjLEVBQUU7WUFFaEUsT0FBTyxFQUFFLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7U0FDN0I7UUFFRCxJQUFJLEtBQUssQ0FBQyxRQUFRLEVBQUU7WUFDbEIsTUFBTSxjQUFjLEdBQUcsS0FBSyxDQUFDLFVBQVUsQ0FBQywwQkFBMEIsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7WUFFaEYsTUFBTSxFQUFFLEdBQUcsY0FBYyxFQUFFLGVBQWUsSUFBSSxLQUFLLENBQUMsa0JBQWtCLEVBQUUsQ0FBQztZQUN6RSxNQUFNLEVBQUUsR0FBRyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUN6QixNQUFNLFFBQVEsR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxFQUFFLENBQUM7Z0JBQzVELENBQUMsQ0FBQyxLQUFLLENBQUMsV0FBVyxFQUFFO2dCQUNyQixDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ1AsTUFBTSxNQUFNLEdBQUcsc0JBQXNCLENBQUMsTUFBTSxJQUFJLEtBQUssQ0FBQyxNQUFNLENBQUM7WUFFN0QsTUFBTSxlQUFlLEdBQUcsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLE1BQU0sRUFBRSxRQUFRLENBQUMsQ0FBQztZQUNuRCxNQUFNLE9BQU8sR0FBRyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxFQUFFLHNCQUFzQixFQUFFLEtBQUssQ0FBQyxDQUFDO1lBQy9FLE1BQU0sZUFBZSxHQUFHLHNCQUFzQixDQUFDLFdBQVcsSUFBSyxLQUFLLENBQUMsV0FBVyxDQUFDO1lBR2pGLElBQUksT0FBTyxJQUFJLGVBQWUsSUFBSSxPQUFPLE9BQU8sQ0FBQyxlQUFlLENBQUMsS0FBSyxVQUFVLEVBQUU7Z0JBQ2hGLE1BQU0sT0FBTyxHQUFHLE9BQU8sQ0FBQyxlQUFlLENBQUMsQ0FBQyxHQUFHLGVBQWUsQ0FBZ0MsQ0FBQztnQkFHNUYsT0FBTyxJQUFJLFVBQVUsQ0FBUSxRQUFRLENBQUMsRUFBRTtvQkFDdEMsT0FBTyxDQUFDLFNBQVMsQ0FBQzt3QkFDaEIsSUFBSSxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsWUFBWSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQzt3QkFDL0QsS0FBSyxFQUFFLEdBQUcsQ0FBQyxFQUFFOzRCQUNYLE9BQU8sQ0FBQyxLQUFLLENBQUMsc0RBQXNELEVBQUUsR0FBRyxDQUFDLENBQUM7NEJBQzNFLFFBQVEsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7d0JBQ3BCLENBQUM7d0JBQ0QsUUFBUSxFQUFFLEdBQUcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxRQUFRLEVBQUU7cUJBQ3BDLENBQUMsQ0FBQztnQkFDTCxDQUFDLENBQUMsQ0FBQzthQUNKO1lBRUQsT0FBTyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7U0FDZjtRQUdELE9BQU8sRUFBRSxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxRQUFrQixFQUFFLHNCQUFxQyxFQUFFLFdBQXVCO1FBQ2pHLE1BQU0sT0FBTyxHQUFHLHNCQUFzQixDQUFDLE9BQU8sQ0FBQztRQUMvQyxNQUFNLFdBQVcsR0FBRyxzQkFBc0IsQ0FBQyxXQUFXLENBQUM7UUFDdkQsTUFBTSxNQUFNLEdBQUcsc0JBQXNCLENBQUMsTUFBTSxJQUFJLFdBQVcsQ0FBQyxNQUFNLENBQUM7UUFDbkUsSUFBSSxDQUFDLE9BQU8sSUFBSSxXQUFXLENBQUMsRUFBRTtZQUM1QixJQUFJLG9CQUFvQixHQUEwQixFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsV0FBVyxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxDQUFDO1lBQ25LLE9BQU8sV0FBVyxDQUFDLGdCQUFnQixDQUFDLG9CQUFvQixDQUFDLENBQUM7U0FDM0Q7YUFBTTtZQUNMLE9BQU8sV0FBVyxDQUFDLGNBQWMsRUFBRSxDQUFDO1NBQ3JDO0lBRUgsQ0FBQztJQUdELDBCQUEwQixDQUN4QixNQUEwQixFQUMxQixNQUFlLEVBQ2YsU0FBZ0IsRUFDaEIsVUFBbUIsRUFDbkIsc0JBQXFDO1FBSXJDLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxhQUFhLENBQUMsTUFBTSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLHNCQUFzQixDQUFDLENBQUM7UUFFckcsTUFBTSxjQUFjLEdBQUcsTUFBTSxFQUFFLE1BQU0sSUFBSSxFQUFFLENBQUM7UUFDNUMsS0FBSyxNQUFNLElBQUksSUFBSSxVQUFVLEVBQUU7WUFDN0IsSUFBSSxDQUFDLFFBQVEsR0FBRyxjQUFjLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztTQUNyRDtRQUVELE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7O3dIQTNMVSwyQkFBMkI7NEhBQTNCLDJCQUEyQjsyRkFBM0IsMkJBQTJCO2tCQUR2QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0b3IgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ29sdW1uVmFsdWVGaWx0ZXJPcGVyYXRvciwgT0NvbHVtblZhbHVlRmlsdGVyIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdHlwZXMvdGFibGUvby1jb2x1bW4tdmFsdWUtZmlsdGVyLnR5cGUnO1xuaW1wb3J0IHsgVGFibGVGaWx0ZXJCeUNvbHVtbkRhdGEgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi90eXBlcy90YWJsZS9vLXRhYmxlLWZpbHRlci1ieS1jb2x1bW4tZGF0YS50eXBlJztcbmltcG9ydCB7IFV0aWwgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi91dGlsL3V0aWwnO1xuaW1wb3J0IHsgT0NvbHVtbiB9IGZyb20gJy4uLy4uLy4uL2NvbHVtbi9vLWNvbHVtbi5jbGFzcyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlLCBvZiB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgU2VydmljZVJlc3BvbnNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vaW50ZXJmYWNlcyc7XG5pbXBvcnQgeyBGYWN0b3J5VXRpbCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3V0aWwvZmFjdG9yeS51dGlsJztcbmltcG9ydCB7IE9Db25maWd1cmVTZXJ2aWNlQXJncyB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3R5cGVzL2NvbmZpZ3VyZS1zZXJ2aWNlLWFyZ3MudHlwZSc7XG5pbXBvcnQgeyBPbnRpbWl6ZVNlcnZpY2UgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9zZXJ2aWNlcy9vbnRpbWl6ZS9vbnRpbWl6ZS5zZXJ2aWNlJztcbmltcG9ydCB7IE9UYWJsZUJhc2UgfSBmcm9tICcuLi8uLi8uLi9vLXRhYmxlLWJhc2UuY2xhc3MnO1xuaW1wb3J0IHsgT0ZpbHRlckNvbHVtbiB9IGZyb20gJy4uLy4uL2hlYWRlci90YWJsZS1jb2x1bW5zLWZpbHRlci9jb2x1bW5zL28tdGFibGUtY29sdW1ucy1maWx0ZXItY29sdW1uLmNvbXBvbmVudCc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBPVGFibGVGaWx0ZXJCeUNvbHVtblNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIC8qKlxuICogUmV0dXJucyB0aGUgZGlzcGxheWVkIChyZW5kZXJlZCkgdmFsdWVzIGZvciBhIGNvbHVtbiBmcm9tIHRoZSBnaXZlbiB0YWJsZSBkYXRhLlxuICogRmFsbHMgYmFjayB0byByYXcgdmFsdWUgaWYgbm8gcmVuZGVyZXIgaXMgZGVmaW5lZC5cbiAqL1xuICBnZXRDb2x1bW5EYXRhVXNpbmdSZW5kZXJlcihjb2x1bW46IE9Db2x1bW4sIHRhYmxlRGF0YTogYW55W10sIHZpc2libGVDb2x1bW5zOiBzdHJpbmdbXSwgc2VwYXJhdG9yOiBzdHJpbmcpOiBhbnlbXSB7XG4gICAgY29uc3QgdXNlQ3VzdG9tUmVuZGVyID0gQXJyYXkuaXNBcnJheSh2aXNpYmxlQ29sdW1ucykgJiYgdmlzaWJsZUNvbHVtbnMubGVuZ3RoID4gMDtcblxuICAgIHJldHVybiB0YWJsZURhdGEubWFwKHJvdyA9PiB7XG4gICAgICBpZiAodXNlQ3VzdG9tUmVuZGVyKSB7XG4gICAgICAgIHJldHVybiB2aXNpYmxlQ29sdW1ucy5tYXAoYXR0ciA9PiByb3dbYXR0cl0gPz8gJycpLmpvaW4oc2VwYXJhdG9yKTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIGNvbnN0IHJhd1ZhbHVlID0gcm93W2NvbHVtbi5hdHRyXTtcbiAgICAgICAgcmV0dXJuIGNvbHVtbi5yZW5kZXJlcj8uZ2V0Q2VsbERhdGE/LihyYXdWYWx1ZSwgcm93KSA/PyByYXdWYWx1ZTtcbiAgICAgIH1cbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZW5lcmF0ZXMgYSB1bmlxdWUgbGlzdCBvZiBmaWx0ZXJhYmxlIGNvbHVtbiB2YWx1ZXMsIG9wdGlvbmFsbHkgbWFya2luZyBzZWxlY3RlZCBpdGVtcy5cbiAgICpcbiAgICogQHBhcmFtIGZpbHRlciAtIEN1cnJlbnQgZmlsdGVyIGNvbmZpZ3VyYXRpb24gKGNhbiBiZSBudWxsKVxuICAgKiBAcGFyYW0gY29sdW1uIC0gQ29sdW1uIGJlaW5nIGZpbHRlcmVkXG4gICAqIEBwYXJhbSB0YWJsZURhdGEgLSBEYXRhIHRvIGV4dHJhY3QgdmFsdWVzIGZyb20gKHBhZ2VkIG9yIGZ1bGwpXG4gICAqIEBwYXJhbSBpc1BhZ2VhYmxlIC0gV2hldGhlciB0aGUgdGFibGUgaXMgcGFnZWFibGVcbiAgICogQHBhcmFtIHNvdXJjZURhdGEgLSBJbmRpY2F0ZXMgd2hldGhlciBkYXRhIGNvbWVzIGZyb20gY3VycmVudCBwYWdlIG9yIGFsbCBkYXRhXG4gICAqIEByZXR1cm5zIExpc3Qgb2YgY29sdW1uIHZhbHVlcyB3aXRoIHRoZWlyIHJlbmRlcmVkIHZhbHVlIGFuZCBzZWxlY3Rpb24gc3RhdGVcbiAgICovXG5cbiAgcGFyc2VMaXN0RGF0YShcbiAgICBmaWx0ZXI6IE9Db2x1bW5WYWx1ZUZpbHRlcixcbiAgICBjb2x1bW46IE9Db2x1bW4sXG4gICAgdGFibGVEYXRhOiBhbnlbXSxcbiAgICBpc1BhZ2VhYmxlOiBib29sZWFuLFxuICAgIGZpbHRlckNvbHVtbkRlZmluaXRpb246IE9GaWx0ZXJDb2x1bW5cbiAgKTogVGFibGVGaWx0ZXJCeUNvbHVtbkRhdGFbXSB7XG4gICAgY29uc3QgY29sdW1uRGF0YTogVGFibGVGaWx0ZXJCeUNvbHVtbkRhdGFbXSA9IFtdO1xuICAgIGNvbnN0IHZpc2libGVDb2x1bW5zID0gZmlsdGVyQ29sdW1uRGVmaW5pdGlvbi52aXNpYmxlQ29sdW1ucztcbiAgICBjb25zdCBzZXBhcmF0b3IgPSBmaWx0ZXJDb2x1bW5EZWZpbml0aW9uLnNlcGFyYXRvcjtcbiAgICBjb25zdCBzb3VyY2VEYXRhID0gZmlsdGVyQ29sdW1uRGVmaW5pdGlvbi5maWx0ZXJWYWx1ZXNJbkRhdGE7XG4gICAgY29uc3QgY29sUmVuZGVyZWRWYWx1ZXMgPSB0aGlzLmdldENvbHVtbkRhdGFVc2luZ1JlbmRlcmVyKGNvbHVtbiwgdGFibGVEYXRhLCB2aXNpYmxlQ29sdW1ucywgc2VwYXJhdG9yKTtcblxuICAgIC8vIERpZmZlcmVudGlhdGVkIGxvZ2ljOiB1c2UgY29sdW1uLmF0dHIgaWYgY2FsbGVkIGZyb20gdGhlIGNvbnRleHQgbWVudSwgb3RoZXJ3aXNlIHVzZSB2YWx1ZUNvbHVtblxuICAgIGNvbnN0IHZhbHVlQ29sdW1uID1jb2x1bW4udmFsdWVDb2x1bW4gPz8gY29sdW1uLmF0dHI7XG4gICAgY29uc3QgY29sVmFsdWVzID0gdGFibGVEYXRhLm1hcCgoZWxlbSkgPT4gVXRpbC5nZXRWYWx1ZUZyb21QYXRoKGVsZW0sIHZhbHVlQ29sdW1uKSk7XG5cbiAgICAvLyBVc2UgcHJlZGVmaW5lZCB2YWx1ZXMgaWYgYXZhaWxhYmxlIGluIHRoZSBmaWx0ZXIgY29uZmlndXJhdGlvblxuICAgIGlmIChVdGlsLmlzRGVmaW5lZChmaWx0ZXI/LmF2YWlsYWJsZVZhbHVlcykpIHtcbiAgICAgIHJldHVybiBmaWx0ZXIuYXZhaWxhYmxlVmFsdWVzO1xuICAgIH1cblxuICAgIGNvbFJlbmRlcmVkVmFsdWVzLmZvckVhY2goKHJlbmRlcmVkVmFsdWUsIGkpID0+IHtcblxuICAgICAgcmVuZGVyZWRWYWx1ZSA9IHJlbmRlcmVkVmFsdWUgPz8gJyc7XG5cbiAgICAgIGNvbnN0IGFscmVhZHlFeGlzdHMgPSBjb2x1bW5EYXRhLmZpbmQoaXRlbSA9PiBpdGVtLnJlbmRlcmVkVmFsdWUgPT09IHJlbmRlcmVkVmFsdWUpO1xuXG4gICAgICAvLyBBdm9pZCBkdXBsaWNhdGVzIHVubGVzcyB3ZSdyZSBpbiBwYWdlYWJsZSBtb2RlIGFuZCBwcm9jZXNzaW5nIGFsbC1kYXRhXG4gICAgICBpZiAoIWFscmVhZHlFeGlzdHMgfHwgKGlzUGFnZWFibGUgJiYgc291cmNlRGF0YSA9PT0gJ2FsbC1kYXRhJykpIHtcbiAgICAgICAgY29uc3Qgc2VsZWN0ZWQgPSBmaWx0ZXI/Lm9wZXJhdG9yID09PSBDb2x1bW5WYWx1ZUZpbHRlck9wZXJhdG9yLklOICYmXG4gICAgICAgICAgKGZpbHRlcj8udmFsdWVzID8/IFtdKS5pbmNsdWRlcyhjb2xWYWx1ZXNbaV0pO1xuXG4gICAgICAgIGNvbHVtbkRhdGEucHVzaCh7XG4gICAgICAgICAgcmVuZGVyZWRWYWx1ZSxcbiAgICAgICAgICB2YWx1ZTogY29sVmFsdWVzW2ldLFxuICAgICAgICAgIHJvd1ZhbHVlOiB0YWJsZURhdGFbaV0sXG4gICAgICAgICAgc2VsZWN0ZWQsXG4gICAgICAgICAgdGFibGVJbmRleDogaVxuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9KTtcbiAgICByZXR1cm4gY29sdW1uRGF0YTtcbiAgfVxuXG4gIC8qKlxuICogQXBwbGllcyBzZWxlY3RlZCBmaWx0ZXIgdmFsdWVzIHRvIGEgZ2l2ZW4gY29sdW1uIGZpbHRlci5cbiAqIFVwZGF0ZXMgb3BlcmF0b3IsIHZhbHVlcywgYXZhaWxhYmxlVmFsdWVzIG9yIGZpbHRlckV4cHJlc3Npb24gYmFzZWQgb24gc291cmNlIGRhdGEuXG4gKlxuICogQHBhcmFtIGZpbHRlciAtIFRoZSBmaWx0ZXIgb2JqZWN0IHRvIHVwZGF0ZVxuICogQHBhcmFtIHNlbGVjdGVkVmFsdWVzIC0gTGlzdCBvZiBzZWxlY3RlZCBjb2x1bW4gZGF0YSBlbnRyaWVzXG4gKiBAcGFyYW0gc291cmNlRGF0YSAtIEluZGljYXRlcyB3aGV0aGVyIGZpbHRlcmluZyBpcyBiYXNlZCBvbiBjdXJyZW50IHBhZ2Ugb3IgYWxsIGRhdGFcbiAqIEBwYXJhbSBjb2x1bW5EYXRhIC0gRnVsbCBsaXN0IG9mIGF2YWlsYWJsZSBjb2x1bW4gZmlsdGVyIGRhdGFcbiAqIEBwYXJhbSBnZXRDb21wb25lbnRGaWx0ZXJGbiAtIEZ1bmN0aW9uIHRvIHJldHJpZXZlIHRoZSBjb21wb25lbnQgZmlsdGVyIGV4cHJlc3Npb25cbiAqL1xuICBhcHBseVNlbGVjdGVkVmFsdWVzVG9GaWx0ZXIoXG4gICAgY29sdW1uOiBPQ29sdW1uLFxuICAgIHRhYmxlRGF0YTogYW55W10sXG4gICAgZmlsdGVyOiBPQ29sdW1uVmFsdWVGaWx0ZXIsXG4gICAgc2VsZWN0ZWRWYWx1ZXM6IFRhYmxlRmlsdGVyQnlDb2x1bW5EYXRhW10sXG4gICAgZmlsdGVyQnlDb2x1bW5EZWZpbml0aW9uOiBPRmlsdGVyQ29sdW1uLFxuICAgIGlzUGFnZWFibGU6IGJvb2xlYW4sXG4gICAgZ2V0Q29tcG9uZW50RmlsdGVyRm46ICgpID0+IGFueVxuICApOiB2b2lkIHtcbiAgICBmaWx0ZXIub3BlcmF0b3IgPSBDb2x1bW5WYWx1ZUZpbHRlck9wZXJhdG9yLklOO1xuICAgIGZpbHRlci52YWx1ZXMgPSBzZWxlY3RlZFZhbHVlcy5tYXAoaXRlbSA9PiBpdGVtLnZhbHVlKTtcblxuICAgIGNvbnN0IHNvdXJjZURhdGEgPSBmaWx0ZXJCeUNvbHVtbkRlZmluaXRpb24uZmlsdGVyVmFsdWVzSW5EYXRhO1xuICAgIGNvbnN0IGVmZmVjdGl2ZVNvdXJjZURhdGEgPSBzb3VyY2VEYXRhID8/ICdjdXJyZW50LXBhZ2UnO1xuICAgIGlmIChlZmZlY3RpdmVTb3VyY2VEYXRhKSB7XG4gICAgICBmaWx0ZXIuYXZhaWxhYmxlVmFsdWVzID0gdGhpcy5wYXJzZUxpc3REYXRhKGZpbHRlciwgY29sdW1uLCBmaWx0ZXIuYXZhaWxhYmxlVmFsdWVzID8/IHRhYmxlRGF0YSwgaXNQYWdlYWJsZSwgZmlsdGVyQnlDb2x1bW5EZWZpbml0aW9uKTtcbiAgICB9IGVsc2Uge1xuICAgICAgZmlsdGVyLmZpbHRlckV4cHJlc2lvbiA9IGZpbHRlci5maWx0ZXJFeHByZXNpb24gfHwgZ2V0Q29tcG9uZW50RmlsdGVyRm4oKTtcbiAgICB9XG4gIH1cblxuICBnZXREYXRhRm9yQ29sdW1uRmlsdGVyKFxuICAgIGluamVjdG9yOiBJbmplY3RvcixcbiAgICB0YWJsZTogT1RhYmxlQmFzZSxcbiAgICBjb2x1bW46IE9Db2x1bW4sXG4gICAgZmlsdGVyQ29sdW1uRGVmaW5pdGlvbjogT0ZpbHRlckNvbHVtblxuICApOiBPYnNlcnZhYmxlPGFueVtdPiB7XG4gICAgaWYgKGZpbHRlckNvbHVtbkRlZmluaXRpb24uZmlsdGVyVmFsdWVzSW5EYXRhID09PSAnY3VycmVudC1wYWdlJykge1xuICAgICAgLy8gR2V0IGRhdGEgb25seSBmcm9tIHRoZSBjdXJyZW50IHBhZ2VcbiAgICAgIHJldHVybiBvZih0YWJsZS5nZXRWYWx1ZSgpKTtcbiAgICB9XG5cbiAgICBpZiAodGFibGUucGFnZWFibGUpIHtcbiAgICAgIGNvbnN0IHByZXZpb3VzRmlsdGVyID0gdGFibGUuZGF0YVNvdXJjZS5nZXRDb2x1bW5WYWx1ZUZpbHRlckJ5QXR0cihjb2x1bW4uYXR0cik7XG4gICAgICAvLyBHZXQgYWxsIHBhZ2luYXRlZCBkYXRhIHVzaW5nIHRoZSByZW1vdGUgc2VydmljZVxuICAgICAgY29uc3Qga3YgPSBwcmV2aW91c0ZpbHRlcj8uZmlsdGVyRXhwcmVzaW9uIHx8IHRhYmxlLmdldENvbXBvbmVudEZpbHRlcigpO1xuICAgICAgY29uc3QgYXYgPSBbY29sdW1uLmF0dHJdO1xuICAgICAgY29uc3Qgc3FsVHlwZXMgPSBVdGlsLmlzRGVmaW5lZChrdikgJiYgIVV0aWwuaXNPYmplY3RFbXB0eShrdilcbiAgICAgICAgPyB0YWJsZS5nZXRTcWxUeXBlcygpXG4gICAgICAgIDoge307XG4gICAgICBjb25zdCBlbnRpdHkgPSBmaWx0ZXJDb2x1bW5EZWZpbml0aW9uLmVudGl0eSA/PyB0YWJsZS5lbnRpdHk7XG5cbiAgICAgIGNvbnN0IGNvbHVtblF1ZXJ5QXJncyA9IFtrdiwgYXYsIGVudGl0eSwgc3FsVHlwZXNdO1xuICAgICAgY29uc3Qgc2VydmljZSA9IHRoaXMuY29uZmlndXJlU2VydmljZShpbmplY3RvciwgZmlsdGVyQ29sdW1uRGVmaW5pdGlvbiwgdGFibGUpO1xuICAgICAgY29uc3QgcXVlcnlNZXRob2ROYW1lID0gZmlsdGVyQ29sdW1uRGVmaW5pdGlvbi5xdWVyeU1ldGhvZCA/PyAgdGFibGUucXVlcnlNZXRob2Q7XG5cblxuICAgICAgaWYgKHNlcnZpY2UgJiYgcXVlcnlNZXRob2ROYW1lICYmIHR5cGVvZiBzZXJ2aWNlW3F1ZXJ5TWV0aG9kTmFtZV0gPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgY29uc3QgcmVzdWx0JCA9IHNlcnZpY2VbcXVlcnlNZXRob2ROYW1lXSguLi5jb2x1bW5RdWVyeUFyZ3MpIGFzIE9ic2VydmFibGU8U2VydmljZVJlc3BvbnNlPjtcblxuICAgICAgICAvLyBDb252ZXJ0IFNlcnZpY2VSZXNwb25zZSBpbnRvIGEgZGF0YSBhcnJheVxuICAgICAgICByZXR1cm4gbmV3IE9ic2VydmFibGU8YW55W10+KG9ic2VydmVyID0+IHtcbiAgICAgICAgICByZXN1bHQkLnN1YnNjcmliZSh7XG4gICAgICAgICAgICBuZXh0OiByZXMgPT4gb2JzZXJ2ZXIubmV4dChyZXM/LmlzU3VjY2Vzc2Z1bCgpID8gcmVzLmRhdGEgOiBbXSksXG4gICAgICAgICAgICBlcnJvcjogZXJyID0+IHtcbiAgICAgICAgICAgICAgY29uc29sZS5lcnJvcignW0ZpbHRlclNlcnZpY2VdIEVycm9yIGFsIGNvbnN1bHRhciBkYXRvcyBkZWwgZmlsdHJvOicsIGVycik7XG4gICAgICAgICAgICAgIG9ic2VydmVyLm5leHQoW10pO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIGNvbXBsZXRlOiAoKSA9PiBvYnNlcnZlci5jb21wbGV0ZSgpXG4gICAgICAgICAgfSk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuXG4gICAgICByZXR1cm4gb2YoW10pOyAvLyBmYWxsYmFja1xuICAgIH1cblxuICAgIC8vIFNpIGxhIHRhYmxhIG5vIGVzIHBhZ2VhYmxlLCBkZXZ1ZWx2ZSB0b2RvcyBsb3MgdmFsb3JlcyBlbiBtZW1vcmlhXG4gICAgcmV0dXJuIG9mKHRhYmxlLmdldEFsbFZhbHVlcygpKTtcbiAgfVxuXG4gIGNvbmZpZ3VyZVNlcnZpY2UoaW5qZWN0b3I6IEluamVjdG9yLCBmaWx0ZXJDb2x1bW5EZWZpbml0aW9uOiBPRmlsdGVyQ29sdW1uLCB0YWJsZUVudGl0eTogT1RhYmxlQmFzZSkge1xuICAgIGNvbnN0IHNlcnZpY2UgPSBmaWx0ZXJDb2x1bW5EZWZpbml0aW9uLnNlcnZpY2U7XG4gICAgY29uc3Qgc2VydmljZVR5cGUgPSBmaWx0ZXJDb2x1bW5EZWZpbml0aW9uLnNlcnZpY2VUeXBlO1xuICAgIGNvbnN0IGVudGl0eSA9IGZpbHRlckNvbHVtbkRlZmluaXRpb24uZW50aXR5ID8/IHRhYmxlRW50aXR5LmVudGl0eTtcbiAgICBpZiAoKHNlcnZpY2UgfHwgc2VydmljZVR5cGUpKSB7XG4gICAgICBsZXQgY29uZmlndXJlU2VydmljZUFyZ3M6IE9Db25maWd1cmVTZXJ2aWNlQXJncyA9IHsgaW5qZWN0b3I6IGluamVjdG9yLCBiYXNlU2VydmljZTogT250aW1pemVTZXJ2aWNlLCBlbnRpdHk6IGVudGl0eSwgc2VydmljZTogc2VydmljZSwgc2VydmljZVR5cGU6IHNlcnZpY2VUeXBlIH07XG4gICAgICByZXR1cm4gRmFjdG9yeVV0aWwuY29uZmlndXJlU2VydmljZShjb25maWd1cmVTZXJ2aWNlQXJncyk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiB0YWJsZUVudGl0eS5nZXREYXRhU2VydmljZSgpO1xuICAgIH1cblxuICB9XG5cblxuICBpbml0aWFsaXplQ29sdW1uRmlsdGVyRGF0YShcbiAgICBmaWx0ZXI6IE9Db2x1bW5WYWx1ZUZpbHRlcixcbiAgICBjb2x1bW46IE9Db2x1bW4sXG4gICAgdGFibGVEYXRhOiBhbnlbXSxcbiAgICBpc1BhZ2VhYmxlOiBib29sZWFuLFxuICAgIGZpbHRlckNvbHVtbkRlZmluaXRpb246IE9GaWx0ZXJDb2x1bW5cbiAgICAvL2NvbnRleHRTb3VyY2U6ICdtb2RhbCcgfCAnY29udGV4dC1tZW51JyA9ICdtb2RhbCdcbiAgKTogVGFibGVGaWx0ZXJCeUNvbHVtbkRhdGFbXSB7XG5cbiAgICBjb25zdCBjb2x1bW5EYXRhID0gdGhpcy5wYXJzZUxpc3REYXRhKGZpbHRlciwgY29sdW1uLCB0YWJsZURhdGEsIGlzUGFnZWFibGUsIGZpbHRlckNvbHVtbkRlZmluaXRpb24pO1xuXG4gICAgY29uc3Qgc2VsZWN0ZWRWYWx1ZXMgPSBmaWx0ZXI/LnZhbHVlcyA/PyBbXTtcbiAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgY29sdW1uRGF0YSkge1xuICAgICAgaXRlbS5zZWxlY3RlZCA9IHNlbGVjdGVkVmFsdWVzLmluY2x1ZGVzKGl0ZW0udmFsdWUpO1xuICAgIH1cblxuICAgIHJldHVybiBjb2x1bW5EYXRhO1xuICB9XG59XG4iXX0=
|
|
@@ -118,12 +118,12 @@ export class OTableVisibleColumnsDialogComponent {
|
|
|
118
118
|
}
|
|
119
119
|
}
|
|
120
120
|
OTableVisibleColumnsDialogComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OTableVisibleColumnsDialogComponent, deps: [{ token: i0.Injector }, { token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
|
|
121
|
-
OTableVisibleColumnsDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: OTableVisibleColumnsDialogComponent, selector: "o-table-visible-columns-dialog", host: { properties: { "class.o-table-visible-columns-dialog": "true" } }, ngImport: i0, template: "<span mat-dialog-title>{{ 'TABLE.BUTTONS.COLVIS' | oTranslate }}</span>\n\n\n<mat-dialog-content>\n <div mat-subheader>{{'TABLE.VISIBLE_COLUMNS.DESCRIPTION' | oTranslate}}</div>\n\n <div [ngClass]=\"rowHeight\">\n <mat-list cdkDropList (cdkDropListDropped)=\"drop($event)\">\n <mat-list-item *ngFor=\"let column of columns\" cdkDrag (click)=\"onClickColumn(column)\" [ngClass]=\"{'column-hidden':!column.visible}\"\n class=\"o-drag-list-item-box\">\n <div fxLayout=\"row\" fxFlex fxLayoutAlign=\"stretch center\">\n <mat-icon matListItemIcon svgIcon=\"ontimize:drag_handle\"></mat-icon>\n <span matListItemLine fxFlex>{{ (column.title || column.attr) | oTranslate }}</span>\n <mat-icon *ngIf=\"column.visible\" svgIcon=\"ontimize:visibility\" color=\"primary\"></mat-icon>\n <mat-icon *ngIf=\"!column.visible\" svgIcon=\"ontimize:visibility_off\"></mat-icon>\n </div>\n <mat-divider></mat-divider>\n </mat-list-item>\n </mat-list>\n </div>\n</mat-dialog-content>\n\n<mat-dialog-actions fxLayoutAlign=\"end center\">\n <button type=\"button\" mat-stroked-button [mat-dialog-close]=\"null\" class=\"o-button-default cancel\" cancel>{{ 'CANCEL' | oTranslate }}</button>\n <button type=\"button\" mat-stroked-button (click)=\"closeDialog()\" class=\"o-button-primary\">{{ 'ACCEPT' | oTranslate }}</button>\n</mat-dialog-actions>\n", styles: [".o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content{
|
|
121
|
+
OTableVisibleColumnsDialogComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: OTableVisibleColumnsDialogComponent, selector: "o-table-visible-columns-dialog", host: { properties: { "class.o-table-visible-columns-dialog": "true" } }, ngImport: i0, template: "<span mat-dialog-title>{{ 'TABLE.BUTTONS.COLVIS' | oTranslate }}</span>\n\n\n<mat-dialog-content>\n <div mat-subheader>{{'TABLE.VISIBLE_COLUMNS.DESCRIPTION' | oTranslate}}</div>\n\n <div [ngClass]=\"rowHeight\">\n <mat-list cdkDropList (cdkDropListDropped)=\"drop($event)\">\n <mat-list-item *ngFor=\"let column of columns\" cdkDrag (click)=\"onClickColumn(column)\" [ngClass]=\"{'column-hidden':!column.visible}\"\n class=\"o-drag-list-item-box\">\n <div fxLayout=\"row\" fxFlex fxLayoutAlign=\"stretch center\">\n <mat-icon matListItemIcon svgIcon=\"ontimize:drag_handle\"></mat-icon>\n <span matListItemLine fxFlex>{{ (column.title || column.attr) | oTranslate }}</span>\n <mat-icon *ngIf=\"column.visible\" svgIcon=\"ontimize:visibility\" color=\"primary\"></mat-icon>\n <mat-icon *ngIf=\"!column.visible\" svgIcon=\"ontimize:visibility_off\"></mat-icon>\n </div>\n <mat-divider></mat-divider>\n </mat-list-item>\n </mat-list>\n </div>\n</mat-dialog-content>\n\n<mat-dialog-actions fxLayoutAlign=\"end center\">\n <button type=\"button\" mat-stroked-button [mat-dialog-close]=\"null\" class=\"o-button-default cancel\" cancel>{{ 'CANCEL' | oTranslate }}</button>\n <button type=\"button\" mat-stroked-button (click)=\"closeDialog()\" class=\"o-button-primary\">{{ 'ACCEPT' | oTranslate }}</button>\n</mat-dialog-actions>\n", styles: [".o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content{padding-top:0;margin-top:24px;overflow:hidden}.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-mdc-subheader{display:block}.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .title_list{font-weight:600;margin-bottom:6px;margin-top:12px}.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .cdk-drop-list{padding:0}.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-mdc-list{max-height:calc(80vh - 150px);overflow-y:auto}.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-mdc-list .mat-mdc-list-item{padding-left:0;flex-direction:column;cursor:pointer;height:auto}.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-mdc-list .mat-mdc-list-item.column-hidden{opacity:.4}.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-mdc-list .mat-mdc-list-item .mdc-list-item__content{padding:0;cursor:move}.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-mdc-list .mat-mdc-list-item .mdc-list-item__content .mdc-list-item__secondary-text,.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-mdc-list .mat-mdc-list-item .mdc-list-item__content .mdc-list-item__primary-text{padding:0 8px}.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-mdc-list .mat-mdc-list-item .mdc-list-item__content .mdc-list-item__start{margin-top:0}.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-mdc-list .mat-mdc-list-item .mdc-list-item__content .mat-mdc-list-item-icon{display:flex}.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-icon[svgicon=\"ontimize:drag_handle\"],.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-mdc-list-item{cursor:move}.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-icon[svgicon=\"ontimize:visibility\"],.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-icon[svgicon=\"ontimize:visibility_off\"]{width:32px}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.DefaultLayoutDirective, selector: " [fxLayout], [fxLayout.xs], [fxLayout.sm], [fxLayout.md], [fxLayout.lg], [fxLayout.xl], [fxLayout.lt-sm], [fxLayout.lt-md], [fxLayout.lt-lg], [fxLayout.lt-xl], [fxLayout.gt-xs], [fxLayout.gt-sm], [fxLayout.gt-md], [fxLayout.gt-lg]", inputs: ["fxLayout", "fxLayout.xs", "fxLayout.sm", "fxLayout.md", "fxLayout.lg", "fxLayout.xl", "fxLayout.lt-sm", "fxLayout.lt-md", "fxLayout.lt-lg", "fxLayout.lt-xl", "fxLayout.gt-xs", "fxLayout.gt-sm", "fxLayout.gt-md", "fxLayout.gt-lg"] }, { kind: "directive", type: i3.DefaultLayoutAlignDirective, selector: " [fxLayoutAlign], [fxLayoutAlign.xs], [fxLayoutAlign.sm], [fxLayoutAlign.md], [fxLayoutAlign.lg], [fxLayoutAlign.xl], [fxLayoutAlign.lt-sm], [fxLayoutAlign.lt-md], [fxLayoutAlign.lt-lg], [fxLayoutAlign.lt-xl], [fxLayoutAlign.gt-xs], [fxLayoutAlign.gt-sm], [fxLayoutAlign.gt-md], [fxLayoutAlign.gt-lg]", inputs: ["fxLayoutAlign", "fxLayoutAlign.xs", "fxLayoutAlign.sm", "fxLayoutAlign.md", "fxLayoutAlign.lg", "fxLayoutAlign.xl", "fxLayoutAlign.lt-sm", "fxLayoutAlign.lt-md", "fxLayoutAlign.lt-lg", "fxLayoutAlign.lt-xl", "fxLayoutAlign.gt-xs", "fxLayoutAlign.gt-sm", "fxLayoutAlign.gt-md", "fxLayoutAlign.gt-lg"] }, { kind: "directive", type: i3.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "directive", type: i4.DefaultClassDirective, selector: " [ngClass], [ngClass.xs], [ngClass.sm], [ngClass.md], [ngClass.lg], [ngClass.xl], [ngClass.lt-sm], [ngClass.lt-md], [ngClass.lt-lg], [ngClass.lt-xl], [ngClass.gt-xs], [ngClass.gt-sm], [ngClass.gt-md], [ngClass.gt-lg]", inputs: ["ngClass", "ngClass.xs", "ngClass.sm", "ngClass.md", "ngClass.lg", "ngClass.xl", "ngClass.lt-sm", "ngClass.lt-md", "ngClass.lt-lg", "ngClass.lt-xl", "ngClass.gt-xs", "ngClass.gt-sm", "ngClass.gt-md", "ngClass.gt-lg"] }, { kind: "component", type: i5.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i1.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i1.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i1.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "directive", type: i1.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "component", type: i6.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i7.MatList, selector: "mat-list", exportAs: ["matList"] }, { kind: "component", type: i7.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i7.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i7.MatListSubheaderCssMatStyler, selector: "[mat-subheader], [matSubheader]" }, { kind: "component", type: i8.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "directive", type: i7.MatListItemLine, selector: "[matListItemLine]" }, { kind: "directive", type: i9.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i9.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "pipe", type: i10.OTranslatePipe, name: "oTranslate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
122
122
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OTableVisibleColumnsDialogComponent, decorators: [{
|
|
123
123
|
type: Component,
|
|
124
124
|
args: [{ selector: 'o-table-visible-columns-dialog', encapsulation: ViewEncapsulation.None, changeDetection: ChangeDetectionStrategy.OnPush, host: {
|
|
125
125
|
'[class.o-table-visible-columns-dialog]': 'true'
|
|
126
|
-
}, template: "<span mat-dialog-title>{{ 'TABLE.BUTTONS.COLVIS' | oTranslate }}</span>\n\n\n<mat-dialog-content>\n <div mat-subheader>{{'TABLE.VISIBLE_COLUMNS.DESCRIPTION' | oTranslate}}</div>\n\n <div [ngClass]=\"rowHeight\">\n <mat-list cdkDropList (cdkDropListDropped)=\"drop($event)\">\n <mat-list-item *ngFor=\"let column of columns\" cdkDrag (click)=\"onClickColumn(column)\" [ngClass]=\"{'column-hidden':!column.visible}\"\n class=\"o-drag-list-item-box\">\n <div fxLayout=\"row\" fxFlex fxLayoutAlign=\"stretch center\">\n <mat-icon matListItemIcon svgIcon=\"ontimize:drag_handle\"></mat-icon>\n <span matListItemLine fxFlex>{{ (column.title || column.attr) | oTranslate }}</span>\n <mat-icon *ngIf=\"column.visible\" svgIcon=\"ontimize:visibility\" color=\"primary\"></mat-icon>\n <mat-icon *ngIf=\"!column.visible\" svgIcon=\"ontimize:visibility_off\"></mat-icon>\n </div>\n <mat-divider></mat-divider>\n </mat-list-item>\n </mat-list>\n </div>\n</mat-dialog-content>\n\n<mat-dialog-actions fxLayoutAlign=\"end center\">\n <button type=\"button\" mat-stroked-button [mat-dialog-close]=\"null\" class=\"o-button-default cancel\" cancel>{{ 'CANCEL' | oTranslate }}</button>\n <button type=\"button\" mat-stroked-button (click)=\"closeDialog()\" class=\"o-button-primary\">{{ 'ACCEPT' | oTranslate }}</button>\n</mat-dialog-actions>\n", styles: [".o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content{
|
|
126
|
+
}, template: "<span mat-dialog-title>{{ 'TABLE.BUTTONS.COLVIS' | oTranslate }}</span>\n\n\n<mat-dialog-content>\n <div mat-subheader>{{'TABLE.VISIBLE_COLUMNS.DESCRIPTION' | oTranslate}}</div>\n\n <div [ngClass]=\"rowHeight\">\n <mat-list cdkDropList (cdkDropListDropped)=\"drop($event)\">\n <mat-list-item *ngFor=\"let column of columns\" cdkDrag (click)=\"onClickColumn(column)\" [ngClass]=\"{'column-hidden':!column.visible}\"\n class=\"o-drag-list-item-box\">\n <div fxLayout=\"row\" fxFlex fxLayoutAlign=\"stretch center\">\n <mat-icon matListItemIcon svgIcon=\"ontimize:drag_handle\"></mat-icon>\n <span matListItemLine fxFlex>{{ (column.title || column.attr) | oTranslate }}</span>\n <mat-icon *ngIf=\"column.visible\" svgIcon=\"ontimize:visibility\" color=\"primary\"></mat-icon>\n <mat-icon *ngIf=\"!column.visible\" svgIcon=\"ontimize:visibility_off\"></mat-icon>\n </div>\n <mat-divider></mat-divider>\n </mat-list-item>\n </mat-list>\n </div>\n</mat-dialog-content>\n\n<mat-dialog-actions fxLayoutAlign=\"end center\">\n <button type=\"button\" mat-stroked-button [mat-dialog-close]=\"null\" class=\"o-button-default cancel\" cancel>{{ 'CANCEL' | oTranslate }}</button>\n <button type=\"button\" mat-stroked-button (click)=\"closeDialog()\" class=\"o-button-primary\">{{ 'ACCEPT' | oTranslate }}</button>\n</mat-dialog-actions>\n", styles: [".o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content{padding-top:0;margin-top:24px;overflow:hidden}.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-mdc-subheader{display:block}.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .title_list{font-weight:600;margin-bottom:6px;margin-top:12px}.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .cdk-drop-list{padding:0}.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-mdc-list{max-height:calc(80vh - 150px);overflow-y:auto}.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-mdc-list .mat-mdc-list-item{padding-left:0;flex-direction:column;cursor:pointer;height:auto}.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-mdc-list .mat-mdc-list-item.column-hidden{opacity:.4}.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-mdc-list .mat-mdc-list-item .mdc-list-item__content{padding:0;cursor:move}.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-mdc-list .mat-mdc-list-item .mdc-list-item__content .mdc-list-item__secondary-text,.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-mdc-list .mat-mdc-list-item .mdc-list-item__content .mdc-list-item__primary-text{padding:0 8px}.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-mdc-list .mat-mdc-list-item .mdc-list-item__content .mdc-list-item__start{margin-top:0}.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-mdc-list .mat-mdc-list-item .mdc-list-item__content .mat-mdc-list-item-icon{display:flex}.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-icon[svgicon=\"ontimize:drag_handle\"],.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-mdc-list-item{cursor:move}.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-icon[svgicon=\"ontimize:visibility\"],.o-table-visible-columns-dialog .mat-mdc-dialog-content.mat-mdc-dialog-content .mat-icon[svgicon=\"ontimize:visibility_off\"]{width:32px}\n"] }]
|
|
127
127
|
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1.MatDialogRef }, { type: undefined, decorators: [{
|
|
128
128
|
type: Inject,
|
|
129
129
|
args: [MAT_DIALOG_DATA]
|
|
@@ -1,21 +1,37 @@
|
|
|
1
1
|
import { ChangeDetectionStrategy, Component } from '@angular/core';
|
|
2
|
+
import { Util } from '../../../../../../util/util';
|
|
3
|
+
import { Codes } from '../../../../../../util/codes';
|
|
2
4
|
import * as i0 from "@angular/core";
|
|
3
5
|
export const DEFAULT_INPUTS_O_TABLE_COLUMN_FILTER_COLUMN = [
|
|
4
6
|
'attr',
|
|
5
7
|
'sort',
|
|
6
8
|
'startView:start-view',
|
|
7
9
|
'queryMethod:query-method',
|
|
8
|
-
'filterValuesInData: filter-values-in-data'
|
|
10
|
+
'filterValuesInData: filter-values-in-data',
|
|
11
|
+
'filterLocked:filter-locked',
|
|
12
|
+
'filterLockedMessage:filter-locked-message',
|
|
13
|
+
'service',
|
|
14
|
+
'serviceType:service-type',
|
|
15
|
+
'entity',
|
|
16
|
+
'visibleColumns: visible-columns',
|
|
17
|
+
'separator'
|
|
9
18
|
];
|
|
10
19
|
export class OTableColumnsFilterColumnComponent {
|
|
11
20
|
constructor() {
|
|
12
21
|
this.attr = '';
|
|
13
22
|
this.sort = '';
|
|
14
23
|
this.startView = 'month';
|
|
24
|
+
this.filterLocked = false;
|
|
25
|
+
this.filterLockedMessage = 'O_TABLE_COLUMN_FILTER_COLUMN.DEFAULT_LOCKED_MESSAGE';
|
|
26
|
+
this.separator = Codes.SPACE_SEPARATOR;
|
|
27
|
+
}
|
|
28
|
+
ngOnInit() {
|
|
29
|
+
this.visibleColsArray = Util.parseArray(this.visibleColumns, true);
|
|
30
|
+
this.filterValuesInData = this.filterValuesInData ?? (this.queryMethod ? 'all-data' : 'current-page');
|
|
15
31
|
}
|
|
16
32
|
}
|
|
17
33
|
OTableColumnsFilterColumnComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OTableColumnsFilterColumnComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
18
|
-
OTableColumnsFilterColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: OTableColumnsFilterColumnComponent, selector: "o-table-columns-filter-column", inputs: { attr: "attr", sort: "sort", startView: ["start-view", "startView"], queryMethod: ["query-method", "queryMethod"], filterValuesInData: ["filter-values-in-data", "filterValuesInData"] }, ngImport: i0, template: ' ', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
34
|
+
OTableColumnsFilterColumnComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: OTableColumnsFilterColumnComponent, selector: "o-table-columns-filter-column", inputs: { attr: "attr", sort: "sort", startView: ["start-view", "startView"], queryMethod: ["query-method", "queryMethod"], filterValuesInData: ["filter-values-in-data", "filterValuesInData"], filterLocked: ["filter-locked", "filterLocked"], filterLockedMessage: ["filter-locked-message", "filterLockedMessage"], service: "service", serviceType: ["service-type", "serviceType"], entity: "entity", visibleColumns: ["visible-columns", "visibleColumns"], separator: "separator" }, ngImport: i0, template: ' ', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
19
35
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OTableColumnsFilterColumnComponent, decorators: [{
|
|
20
36
|
type: Component,
|
|
21
37
|
args: [{
|
|
@@ -25,4 +41,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
25
41
|
inputs: DEFAULT_INPUTS_O_TABLE_COLUMN_FILTER_COLUMN
|
|
26
42
|
}]
|
|
27
43
|
}] });
|
|
28
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby10YWJsZS1jb2x1bW5zLWZpbHRlci1jb2x1bW4uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb250aW1pemUtd2ViLW5neC9zcmMvbGliL2NvbXBvbmVudHMvdGFibGUvZXh0ZW5zaW9ucy9oZWFkZXIvdGFibGUtY29sdW1ucy1maWx0ZXIvY29sdW1ucy9vLXRhYmxlLWNvbHVtbnMtZmlsdGVyLWNvbHVtbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDbkQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLDhCQUE4QixDQUFDOztBQWtCckQsTUFBTSxDQUFDLE1BQU0sMkNBQTJDLEdBQUc7SUFFekQsTUFBTTtJQUVOLE1BQU07SUFFTixzQkFBc0I7SUFDdEIsMEJBQTBCO0lBRTFCLDJDQUEyQztJQUUzQyw0QkFBNEI7SUFFNUIsMkNBQTJDO0lBRTNDLFNBQVM7SUFFVCwwQkFBMEI7SUFFMUIsUUFBUTtJQUNSLGlDQUFpQztJQUNqQyxXQUFXO0NBQ1osQ0FBQztBQVNGLE1BQU0sT0FBTyxrQ0FBa0M7SUFQL0M7UUFTUyxTQUFJLEdBQVcsRUFBRSxDQUFDO1FBQ2xCLFNBQUksR0FBd0IsRUFBRSxDQUFDO1FBQy9CLGNBQVMsR0FBeUMsT0FBTyxDQUFDO1FBSTFELGlCQUFZLEdBQVksS0FBSyxDQUFDO1FBQzlCLHdCQUFtQixHQUFXLHFEQUFxRCxDQUFDO1FBT3BGLGNBQVMsR0FBVyxLQUFLLENBQUMsZUFBZSxDQUFDO0tBT2xEO0lBTEMsUUFBUTtRQUNOLElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDbkUsSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxrQkFBa0IsSUFBSSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLENBQUM7SUFDeEcsQ0FBQzs7K0hBckJVLGtDQUFrQzttSEFBbEMsa0NBQWtDLG1pQkFMbkMsR0FBRzsyRkFLRixrQ0FBa0M7a0JBUDlDLFNBQVM7bUJBQUM7b0JBQ1QsUUFBUSxFQUFFLCtCQUErQjtvQkFDekMsUUFBUSxFQUFFLEdBQUc7b0JBQ2IsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLE1BQU0sRUFBRSwyQ0FBMkM7aUJBQ3BEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBVdGlsIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vdXRpbC91dGlsJztcbmltcG9ydCB7IENvZGVzIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vLi4vdXRpbC9jb2Rlcyc7XG5cblxuZXhwb3J0IHR5cGUgT0ZpbHRlckNvbHVtbiA9IHtcbiAgYXR0cjogc3RyaW5nO1xuICBzb3J0OiAnYXNjJyB8ICdkZXNjJyB8ICcnO1xuICBzdGFydFZpZXc6ICdtb250aCcgfCAneWVhcicgfCAnbXVsdGkteWVhcicgfCAnJztcbiAgcXVlcnlNZXRob2Q/OiBzdHJpbmc7XG4gIGZpbHRlclZhbHVlc0luRGF0YT86ICdjdXJyZW50LXBhZ2UnIHwgJ2FsbC1kYXRhJztcbiAgc2VydmljZT86IHN0cmluZztcbiAgZW50aXR5Pzogc3RyaW5nO1xuICBzZXJ2aWNlVHlwZT86IHN0cmluZztcbiAgc2VwYXJhdG9yPzogc3RyaW5nO1xuICB2aXNpYmxlQ29sdW1ucz86IHN0cmluZ1tdO1xuICBmaWx0ZXJMb2NrZWQ/OiBib29sZWFuO1xuICBmaWx0ZXJMb2NrZWRNZXNzYWdlPzogc3RyaW5nO1xufTtcblxuZXhwb3J0IGNvbnN0IERFRkFVTFRfSU5QVVRTX09fVEFCTEVfQ09MVU1OX0ZJTFRFUl9DT0xVTU4gPSBbXG4gIC8vIGF0dHIgW3N0cmluZ106IGNvbHVtbiBuYW1lLlxuICAnYXR0cicsXG4gIC8vIHNvcnQgW2FzY3xkZXNjXTogaW5pdGlhbCBzb3J0aW5nLCB3aXRoIHRoZSBmb3JtYXQgY29sdW1uOltBU0N8REVTQ10uXG4gICdzb3J0JyxcbiAgLy8gc3RhcnRWaWV3IFttb250aHx5ZWFyfG11bHRpLXllYXJdOiBEYXRlcGlja2VyIGluaXRpYWwgdmlldyBpbiBjYXNlIG9mIGRhdGUgY29sdW1uLlxuICAnc3RhcnRWaWV3OnN0YXJ0LXZpZXcnLFxuICAncXVlcnlNZXRob2Q6cXVlcnktbWV0aG9kJyxcbiAgLy9maWx0ZXItdmFsdWVzLWluLWRhdGE6ICAnY3VycmVudC1wYWdlJyB8ICdhbGwtZGF0YSc6IHNldCBtb2RlIHRvIGZpbHRlciBieS4gRGVmYXVsdCAnY3VycmVudC1wYWdlJ1xuICAnZmlsdGVyVmFsdWVzSW5EYXRhOiBmaWx0ZXItdmFsdWVzLWluLWRhdGEnLFxuICAvL2ZpbHRlci1sb2NrZWRcbiAgJ2ZpbHRlckxvY2tlZDpmaWx0ZXItbG9ja2VkJyxcbiAgLy9maWx0ZXItbG9ja2VkLW1lc3NhZ2VcbiAgJ2ZpbHRlckxvY2tlZE1lc3NhZ2U6ZmlsdGVyLWxvY2tlZC1tZXNzYWdlJyxcbiAgLy9zZXJ2aWNlXG4gICdzZXJ2aWNlJyxcbiAgLy9zZXJ2aWNlLXR5cGVcbiAgJ3NlcnZpY2VUeXBlOnNlcnZpY2UtdHlwZScsXG4gIC8vZW50aXR5XG4gICdlbnRpdHknLFxuICAndmlzaWJsZUNvbHVtbnM6IHZpc2libGUtY29sdW1ucycsXG4gICdzZXBhcmF0b3InXG5dO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdvLXRhYmxlLWNvbHVtbnMtZmlsdGVyLWNvbHVtbicsXG4gIHRlbXBsYXRlOiAnICcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbnB1dHM6IERFRkFVTFRfSU5QVVRTX09fVEFCTEVfQ09MVU1OX0ZJTFRFUl9DT0xVTU5cbn0pXG5cbmV4cG9ydCBjbGFzcyBPVGFibGVDb2x1bW5zRmlsdGVyQ29sdW1uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBwdWJsaWMgYXR0cjogc3RyaW5nID0gJyc7XG4gIHB1YmxpYyBzb3J0OiAnYXNjJyB8ICdkZXNjJyB8ICcnID0gJyc7XG4gIHB1YmxpYyBzdGFydFZpZXc6ICdtb250aCcgfCAneWVhcicgfCAnbXVsdGkteWVhcicgfCAnJyA9ICdtb250aCc7XG4gIHB1YmxpYyBxdWVyeU1ldGhvZDogc3RyaW5nO1xuICBwdWJsaWMgZmlsdGVyVmFsdWVzSW5EYXRhOiAnY3VycmVudC1wYWdlJyB8ICdhbGwtZGF0YSc7XG5cbiAgcHVibGljIGZpbHRlckxvY2tlZDogYm9vbGVhbiA9IGZhbHNlO1xuICBwdWJsaWMgZmlsdGVyTG9ja2VkTWVzc2FnZTogc3RyaW5nID0gJ09fVEFCTEVfQ09MVU1OX0ZJTFRFUl9DT0xVTU4uREVGQVVMVF9MT0NLRURfTUVTU0FHRSc7XG4gIHB1YmxpYyBzZXJ2aWNlOiBzdHJpbmc7XG4gIHB1YmxpYyBzZXJ2aWNlVHlwZTogc3RyaW5nO1xuICBwdWJsaWMgZW50aXR5OiBzdHJpbmc7XG5cbiAgcHVibGljIHZpc2libGVDb2xzQXJyYXk6IHN0cmluZ1tdO1xuICBwdWJsaWMgdmlzaWJsZUNvbHVtbnM6IHN0cmluZztcbiAgcHVibGljIHNlcGFyYXRvcjogc3RyaW5nID0gQ29kZXMuU1BBQ0VfU0VQQVJBVE9SO1xuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMudmlzaWJsZUNvbHNBcnJheSA9IFV0aWwucGFyc2VBcnJheSh0aGlzLnZpc2libGVDb2x1bW5zLCB0cnVlKTtcbiAgICB0aGlzLmZpbHRlclZhbHVlc0luRGF0YSA9IHRoaXMuZmlsdGVyVmFsdWVzSW5EYXRhID8/ICh0aGlzLnF1ZXJ5TWV0aG9kID8gJ2FsbC1kYXRhJyA6ICdjdXJyZW50LXBhZ2UnKTtcbiAgfVxuXG59XG4iXX0=
|
|
@@ -3,10 +3,10 @@ import { ChangeDetectionStrategy, Component, ContentChildren, forwardRef, Inject
|
|
|
3
3
|
import { BooleanInputConverter } from '../../../../../decorators/input-converter';
|
|
4
4
|
import { Codes } from '../../../../../util/codes';
|
|
5
5
|
import { Util } from '../../../../../util/util';
|
|
6
|
-
import { OTableComponent } from '../../../o-table.component';
|
|
7
6
|
import { OTableColumnsFilterColumnComponent } from './columns/o-table-columns-filter-column.component';
|
|
7
|
+
import { OTableBase } from '../../../o-table-base.class';
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "../../../o-table.
|
|
9
|
+
import * as i1 from "../../../o-table-base.class";
|
|
10
10
|
export const DEFAULT_INPUTS_O_TABLE_COLUMN_FILTER = [
|
|
11
11
|
'columns',
|
|
12
12
|
'preloadValues: preload-values',
|
|
@@ -15,18 +15,6 @@ export const DEFAULT_INPUTS_O_TABLE_COLUMN_FILTER = [
|
|
|
15
15
|
];
|
|
16
16
|
export const DEFAULT_OUTPUTS_O_TABLE_COLUMN_FILTER = [];
|
|
17
17
|
export class OTableColumnsFilterComponent {
|
|
18
|
-
get mode() {
|
|
19
|
-
return this._mode;
|
|
20
|
-
}
|
|
21
|
-
set mode(val) {
|
|
22
|
-
const m = OTableColumnsFilterComponent.OTableColumnsFilterModes.find(e => e === val);
|
|
23
|
-
if (Util.isDefined(m)) {
|
|
24
|
-
this._mode = m;
|
|
25
|
-
}
|
|
26
|
-
else {
|
|
27
|
-
console.error('Invalid `o-table-columns-filter` mode (' + val + ')');
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
18
|
constructor(injector, table) {
|
|
31
19
|
this.injector = injector;
|
|
32
20
|
this.table = table;
|
|
@@ -39,7 +27,6 @@ export class OTableColumnsFilterComponent {
|
|
|
39
27
|
if (this.columnsArray.length === 0) {
|
|
40
28
|
this.columnsArray = this.table.oTableOptions.visibleColumns;
|
|
41
29
|
}
|
|
42
|
-
const self = this;
|
|
43
30
|
let columns = Util.parseArray(this._columns, true);
|
|
44
31
|
columns.forEach((colData, i, arr) => {
|
|
45
32
|
const colDef = colData.split(Codes.TYPE_SEPARATOR);
|
|
@@ -49,29 +36,56 @@ export class OTableColumnsFilterComponent {
|
|
|
49
36
|
compType = OTableColumnsFilterComponent.DEFAULT_COMPARISON_TYPE;
|
|
50
37
|
}
|
|
51
38
|
arr[i] = colName;
|
|
52
|
-
|
|
39
|
+
this.columnsComparisonProperty[colName] = compType;
|
|
53
40
|
});
|
|
54
41
|
this.table.setOTableColumnsFilter(this);
|
|
55
42
|
this.filterValuesInData = this.filterValuesInData ?? this.getFilterValuesInDataByDefault();
|
|
56
43
|
}
|
|
57
|
-
getFilterValuesInDataByDefault() {
|
|
58
|
-
return this.table.pageable ? 'current-page' : 'all-data';
|
|
59
|
-
}
|
|
60
44
|
ngAfterContentInit() {
|
|
61
|
-
if (Util.isDefined(this.filterColumns))
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
45
|
+
if (!Util.isDefined(this.filterColumns))
|
|
46
|
+
return;
|
|
47
|
+
const newColumns = this.parseFilterColumns(this.filterColumns);
|
|
48
|
+
const mergedMap = new Map();
|
|
49
|
+
for (const col of this.columnsArray) {
|
|
50
|
+
mergedMap.set(col.attr, col);
|
|
51
|
+
}
|
|
52
|
+
;
|
|
53
|
+
for (const col of newColumns) {
|
|
54
|
+
mergedMap.set(col.attr, col);
|
|
55
|
+
}
|
|
56
|
+
this.columnsArray = Array.from(mergedMap.values());
|
|
57
|
+
}
|
|
58
|
+
get mode() {
|
|
59
|
+
return this._mode;
|
|
60
|
+
}
|
|
61
|
+
set mode(val) {
|
|
62
|
+
const m = OTableColumnsFilterComponent.OTableColumnsFilterModes.find(e => e === val);
|
|
63
|
+
if (Util.isDefined(m)) {
|
|
64
|
+
this._mode = m;
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
console.error('Invalid `o-table-columns-filter` mode (' + val + ')');
|
|
71
68
|
}
|
|
72
69
|
}
|
|
70
|
+
set columns(arg) {
|
|
71
|
+
this._columns = arg;
|
|
72
|
+
this._columnsArray = this.parseColumns(this._columns);
|
|
73
|
+
}
|
|
74
|
+
set columnsArray(arg) {
|
|
75
|
+
this._columnsArray = arg;
|
|
76
|
+
}
|
|
77
|
+
get columnsArray() {
|
|
78
|
+
return this._columnsArray;
|
|
79
|
+
}
|
|
80
|
+
getFilterColumnByAttr(attr) {
|
|
81
|
+
return this.filterColumns.find(filterColumn => filterColumn.attr === attr);
|
|
82
|
+
}
|
|
83
|
+
getFilterValuesInDataByDefault() {
|
|
84
|
+
return this.table.pageable ? 'current-page' : 'all-data';
|
|
85
|
+
}
|
|
73
86
|
isColumnFilterable(attr) {
|
|
74
|
-
|
|
87
|
+
const filterColumnDefinition = this.columnsArray.find(x => x.attr === attr);
|
|
88
|
+
return Util.isDefined(filterColumnDefinition) && (filterColumnDefinition.filterLocked ?? true);
|
|
75
89
|
}
|
|
76
90
|
getSortValueOfFilterColumn(attr) {
|
|
77
91
|
let sortValue = '';
|
|
@@ -108,12 +122,13 @@ export class OTableColumnsFilterComponent {
|
|
|
108
122
|
}
|
|
109
123
|
getFilterValuesInData(attr) {
|
|
110
124
|
let filterValuesInData = this.filterValuesInData;
|
|
111
|
-
if (Util.isDefined(this.
|
|
112
|
-
|
|
113
|
-
if (column.attr
|
|
125
|
+
if (Util.isDefined(this.filterColumns)) {
|
|
126
|
+
for (const column of this.filterColumns) {
|
|
127
|
+
if (column.attr === attr && (column.filterValuesInData === 'current-page' || column.filterValuesInData === 'all-data')) {
|
|
114
128
|
filterValuesInData = column.filterValuesInData;
|
|
129
|
+
break;
|
|
115
130
|
}
|
|
116
|
-
}
|
|
131
|
+
}
|
|
117
132
|
}
|
|
118
133
|
return filterValuesInData;
|
|
119
134
|
}
|
|
@@ -125,16 +140,6 @@ export class OTableColumnsFilterComponent {
|
|
|
125
140
|
return column.renderer ? column.renderer.getCellData(val) : val;
|
|
126
141
|
}
|
|
127
142
|
}
|
|
128
|
-
set columns(arg) {
|
|
129
|
-
this._columns = arg;
|
|
130
|
-
this._columnsArray = this.parseColumns(this._columns);
|
|
131
|
-
}
|
|
132
|
-
set columnsArray(arg) {
|
|
133
|
-
this._columnsArray = arg;
|
|
134
|
-
}
|
|
135
|
-
get columnsArray() {
|
|
136
|
-
return this._columnsArray;
|
|
137
|
-
}
|
|
138
143
|
parseColumns(columns) {
|
|
139
144
|
return columns.split(';')
|
|
140
145
|
.map(x => {
|
|
@@ -153,6 +158,18 @@ export class OTableColumnsFilterComponent {
|
|
|
153
158
|
obj.sort = x.sort;
|
|
154
159
|
obj.startView = x.startView;
|
|
155
160
|
obj.queryMethod = x.queryMethod;
|
|
161
|
+
if (x.service) {
|
|
162
|
+
obj.service = x.service;
|
|
163
|
+
}
|
|
164
|
+
if (x.serviceType) {
|
|
165
|
+
obj.serviceType = x.serviceType;
|
|
166
|
+
}
|
|
167
|
+
if (x.separator) {
|
|
168
|
+
obj.separator = x.separator;
|
|
169
|
+
}
|
|
170
|
+
if (x.visibleColumns) {
|
|
171
|
+
obj.visibleColumns = Util.parseArray(x.visibleColumns, true);
|
|
172
|
+
}
|
|
156
173
|
obj.filterValuesInData = (x.filterValuesInData || this.filterValuesInData) ?? this.getFilterValuesInDataByDefault();
|
|
157
174
|
return obj;
|
|
158
175
|
});
|
|
@@ -161,7 +178,7 @@ export class OTableColumnsFilterComponent {
|
|
|
161
178
|
OTableColumnsFilterComponent.DEFAULT_COMPARISON_TYPE = 'VIEW';
|
|
162
179
|
OTableColumnsFilterComponent.MODEL_COMPARISON_TYPE = 'MODEL';
|
|
163
180
|
OTableColumnsFilterComponent.OTableColumnsFilterModes = ['default', 'selection', 'custom'];
|
|
164
|
-
OTableColumnsFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OTableColumnsFilterComponent, deps: [{ token: i0.Injector }, { token: forwardRef(() =>
|
|
181
|
+
OTableColumnsFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OTableColumnsFilterComponent, deps: [{ token: i0.Injector }, { token: forwardRef(() => OTableBase) }], target: i0.ɵɵFactoryTarget.Component });
|
|
165
182
|
OTableColumnsFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.9", type: OTableColumnsFilterComponent, selector: "o-table-columns-filter", inputs: { columns: "columns", preloadValues: ["preload-values", "preloadValues"], mode: "mode", filterValuesInData: ["filter-values-in-data", "filterValuesInData"] }, queries: [{ propertyName: "filterColumns", predicate: OTableColumnsFilterColumnComponent, descendants: true }], ngImport: i0, template: ' ', isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
166
183
|
__decorate([
|
|
167
184
|
BooleanInputConverter(),
|
|
@@ -176,13 +193,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
|
|
|
176
193
|
inputs: DEFAULT_INPUTS_O_TABLE_COLUMN_FILTER,
|
|
177
194
|
outputs: DEFAULT_OUTPUTS_O_TABLE_COLUMN_FILTER
|
|
178
195
|
}]
|
|
179
|
-
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1.
|
|
196
|
+
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: i1.OTableBase, decorators: [{
|
|
180
197
|
type: Inject,
|
|
181
|
-
args: [forwardRef(() =>
|
|
182
|
-
}] }]; }, propDecorators: { preloadValues: [],
|
|
183
|
-
type: Input
|
|
184
|
-
}], filterColumns: [{
|
|
198
|
+
args: [forwardRef(() => OTableBase)]
|
|
199
|
+
}] }]; }, propDecorators: { preloadValues: [], filterColumns: [{
|
|
185
200
|
type: ContentChildren,
|
|
186
201
|
args: [OTableColumnsFilterColumnComponent, { descendants: true }]
|
|
202
|
+
}], mode: [{
|
|
203
|
+
type: Input
|
|
187
204
|
}] } });
|
|
188
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby10YWJsZS1jb2x1bW5zLWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbnRpbWl6ZS13ZWItbmd4L3NyYy9saWIvY29tcG9uZW50cy90YWJsZS9leHRlbnNpb25zL2hlYWRlci90YWJsZS1jb2x1bW5zLWZpbHRlci9vLXRhYmxlLWNvbHVtbnMtZmlsdGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFvQix1QkFBdUIsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBVSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUosT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbEYsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUVoRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFpQixrQ0FBa0MsRUFBRSxNQUFNLG1EQUFtRCxDQUFDOzs7QUFFdEgsTUFBTSxDQUFDLE1BQU0sb0NBQW9DLEdBQUc7SUFFbEQsU0FBUztJQUVULCtCQUErQjtJQUUvQixNQUFNO0lBRU4sMkNBQTJDO0NBQzVDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxxQ0FBcUMsR0FBRyxFQUNwRCxDQUFDO0FBVUYsTUFBTSxPQUFPLDRCQUE0QjtJQVl2QyxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQ0ksSUFBSSxDQUFDLEdBQVc7UUFDbEIsTUFBTSxDQUFDLEdBQUcsNEJBQTRCLENBQUMsd0JBQXdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxF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ZW50IjpbImltcG9ydCB7IEFmdGVyQ29udGVudEluaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgZm9yd2FyZFJlZiwgSW5qZWN0LCBJbmplY3RvciwgSW5wdXQsIE9uSW5pdCwgUXVlcnlMaXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEJvb2xlYW5JbnB1dENvbnZlcnRlciB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2RlY29yYXRvcnMvaW5wdXQtY29udmVydGVyJztcbmltcG9ydCB7IENvZGVzIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdXRpbC9jb2Rlcyc7XG5pbXBvcnQgeyBVdGlsIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdXRpbC91dGlsJztcbmltcG9ydCB0eXBlIHsgT0NvbHVtbiB9IGZyb20gJy4uLy4uLy4uL2NvbHVtbi9vLWNvbHVtbi5jbGFzcyc7XG5pbXBvcnQgeyBPVGFibGVDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9vLXRhYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBPRmlsdGVyQ29sdW1uLCBPVGFibGVDb2x1bW5zRmlsdGVyQ29sdW1uQ29tcG9uZW50IH0gZnJvbSAnLi9jb2x1bW5zL28tdGFibGUtY29sdW1ucy1maWx0ZXItY29sdW1uLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX0lOUFVUU19PX1RBQkxFX0NPTFVNTl9GSUxURVIgPSBbXG4gIC8vIGNvbHVtbnMgW3N0cmluZ106IGNvbHVtbnMgdGhhdCBtaWdodCBiZSBmaWx0ZXJlZCwgc2VwYXJhdGVkIGJ5ICc7Jy4gRGVmYXVsdDogYWxsIHZpc2libGUgY29sdW1ucy5cbiAgJ2NvbHVtbnMnLFxuICAvLyBwcmVsb2FkVmFsdWVzIFt0cnVlfGZhbHNlfHllc3xub106IGluZGljYXRlcyB3aGV0aGVyIG9yIG5vdCB0byBzaG93IHRoZSBsaXN0IHZhbHVlcyB3aGVuIHRoZSBmaWx0ZXIgZGlhbG9nIGlzIG9wZW5lZC4gRGVmYXVsdDogdHJ1ZS5cbiAgJ3ByZWxvYWRWYWx1ZXM6IHByZWxvYWQtdmFsdWVzJyxcbiAgLy8gbW9kZSBbZGVmYXVsdCB8IHNlbGVjdGlvbiB8ICBjdXN0b21dXG4gICdtb2RlJyxcbiAgLy9maWx0ZXItdmFsdWVzLWluLWRhdGE6ICdjdXJyZW50LXBhZ2UnIHwgJ2FsbC1kYXRhJzogc2V0IG1vZGUgdG8gZmlsdGVyIGJ5LiBEZWZhdWx0ICdjdXJyZW50LXBhZ2UnXG4gICdmaWx0ZXJWYWx1ZXNJbkRhdGE6IGZpbHRlci12YWx1ZXMtaW4tZGF0YSdcbl07XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX09VVFBVVFNfT19UQUJMRV9DT0xVTU5fRklMVEVSID0gW1xuXTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnby10YWJsZS1jb2x1bW5zLWZpbHRlcicsXG4gIHRlbXBsYXRlOiAnICcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbnB1dHM6IERFRkFVTFRfSU5QVVRTX09fVEFCTEVfQ09MVU1OX0ZJTFRFUixcbiAgb3V0cHV0czogREVGQVVMVF9PVVRQVVRTX09fVEFCTEVfQ09MVU1OX0ZJTFRFUlxufSlcblxuZXhwb3J0IGNsYXNzIE9UYWJsZUNvbHVtbnNGaWx0ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyQ29udGVudEluaXQge1xuXG4gIHB1YmxpYyBzdGF0aWMgREVGQVVMVF9DT01QQVJJU09OX1RZUEUgPSAnVklFVyc7XG4gIHB1YmxpYyBzdGF0aWMgTU9ERUxfQ09NUEFSSVNPTl9UWVBFID0gJ01PREVMJztcbiAgcHVibGljIHN0YXRpYyBPVGFibGVDb2x1bW5zRmlsdGVyTW9kZXMgPSBbJ2RlZmF1bHQnLCAnc2VsZWN0aW9uJywgJ2N1c3RvbSddO1xuXG4gIHByb3RlY3RlZCBfY29sdW1uczogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX21vZGU6IHN0cmluZyA9ICdkZWZhdWx0JztcbiAgQEJvb2xlYW5JbnB1dENvbnZlcnRlcigpXG4gIHByZWxvYWRWYWx1ZXM6IGJvb2xlYW4gPSB0cnVlO1xuICBmaWx0ZXJWYWx1ZXNJbkRhdGE6ICdjdXJyZW50LXBhZ2UnIHwgJ2FsbC1kYXRhJztcblxuICBnZXQgbW9kZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9tb2RlO1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IG1vZGUodmFsOiBzdHJpbmcpIHtcbiAgICBjb25zdCBtID0gT1RhYmxlQ29sdW1uc0ZpbHRlckNvbXBvbmVudC5PVGFibGVDb2x1bW5zRmlsdGVyTW9kZXMuZmluZChlID0+IGUgPT09IHZhbCk7XG4gICAgaWYgKFV0aWwuaXNEZWZpbmVkKG0pKSB7XG4gICAgICB0aGlzLl9tb2RlID0gbTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS5lcnJvcignSW52YWxpZCBgby10YWJsZS1jb2x1bW5zLWZpbHRlcmAgbW9kZSAoJyArIHZhbCArICcpJyk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIF9jb2x1bW5zQXJyYXk6IEFycmF5PE9GaWx0ZXJDb2x1bW4+ID0gW107XG4gIHByb3RlY3RlZCBjb2x1bW5zQ29tcGFyaXNvblByb3BlcnR5OiBvYmplY3QgPSB7fTtcblxuICBAQ29udGVudENoaWxkcmVuKE9UYWJsZUNvbHVtbnNGaWx0ZXJDb2x1bW5Db21wb25lbnQsIHsgZGVzY2VuZGFudHM6IHRydWUgfSkgZmlsdGVyQ29sdW1uczogUXVlcnlMaXN0PE9UYWJsZUNvbHVtbnNGaWx0ZXJDb2x1bW5Db21wb25lbnQ+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgQEluamVjdChmb3J3YXJkUmVmKCgpID0+IE9UYWJsZUNvbXBvbmVudCkpIHByb3RlY3RlZCB0YWJsZTogT1RhYmxlQ29tcG9uZW50XG4gICkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKHRoaXMuY29sdW1uc0FycmF5Lmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5jb2x1bW5zQXJyYXkgPSB0aGlzLnRhYmxlLm9UYWJsZU9wdGlvbnMudmlzaWJsZUNvbHVtbnM7XG4gICAgfVxuICAgIGNvbnN0IHNlbGYgPSB0aGlzO1xuICAgIGxldCBjb2x1bW5zID0gVXRpbC5wYXJzZUFycmF5KHRoaXMuX2NvbHVtbnMsIHRydWUpO1xuXG4gICAgY29sdW1ucy5mb3JFYWNoKChjb2xEYXRhLCBpLCBhcnIpID0+IHtcbiAgICAgIGNvbnN0IGNvbERlZiA9IGNvbERhdGEuc3BsaXQoQ29kZXMuVFlQRV9TRVBBUkFUT1IpO1xuICAgICAgY29uc3QgY29sTmFtZSA9IGNvbERlZlswXTtcbiAgICAgIGxldCBjb21wVHlwZSA9IChjb2xEZWZbMV0gfHwgJycpLnRvVXBwZXJDYXNlKCk7XG4gICAgICBpZiAoW09UYWJsZUNvbHVtbnNGaWx0ZXJDb21wb25lbnQuREVGQVVMVF9DT01QQVJJU09OX1RZUEUsIE9UYWJsZUNvbHVtbnNGaWx0ZXJDb21wb25lbnQuTU9ERUxfQ09NUEFSSVNPTl9UWVBFXS5pbmRleE9mKGNvbXBUeXBlKSA9PT0gLTEpIHtcbiAgICAgICAgY29tcFR5cGUgPSBPVGFibGVDb2x1bW5zRmlsdGVyQ29tcG9uZW50LkRFRkFVTFRfQ09NUEFSSVNPTl9UWVBFO1xuICAgICAgfVxuICAgICAgYXJyW2ldID0gY29sTmFtZTtcbiAgICAgIHNlbGYuY29sdW1uc0NvbXBhcmlzb25Qcm9wZXJ0eVtjb2xOYW1lXSA9IGNvbXBUeXBlO1xuICAgIH0pO1xuXG4gICAgdGhpcy50YWJsZS5zZXRPVGFibGVDb2x1bW5zRmlsdGVyKHRoaXMpO1xuXG4gICAgdGhpcy5maWx0ZXJWYWx1ZXNJbkRhdGEgPSB0aGlzLmZpbHRlclZhbHVlc0luRGF0YSA/PyB0aGlzLmdldEZpbHRlclZhbHVlc0luRGF0YUJ5RGVmYXVsdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGaWx0ZXJWYWx1ZXNJbkRhdGFCeURlZmF1bHQoKSB7XG4gICAgcmV0dXJuIHRoaXMudGFibGUucGFnZWFibGUgPyAnY3VycmVudC1wYWdlJyA6ICdhbGwtZGF0YSc7XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgaWYgKFV0aWwuaXNEZWZpbmVkKHRoaXMuZmlsdGVyQ29sdW1ucykpIHtcbiAgICAgIGNvbnN0IG5ld0NvbHVtbnMgPSB0aGlzLnBhcnNlRmlsdGVyQ29sdW1ucyh0aGlzLmZpbHRlckNvbHVtbnMpO1xuXG4gICAgICAvLyBDcmVhdGUgYSBtYXAgdG8gbWVyZ2UgYXJyYXlzIGJhc2VkIG9uIHRoZSBcImF0dHJcIiBwcm9wZXJ0eVxuICAgICAgY29uc3QgbWVyZ2VkTWFwID0gbmV3IE1hcDxzdHJpbmcsIGFueT4oKTtcblxuICAgICAgLy8gQWRkIGV4aXN0aW5nIGNvbHVtbnMgdG8gdGhlIG1hcFxuICAgICAgdGhpcy5jb2x1bW5zQXJyYXkuZm9yRWFjaChjb2wgPT4ge1xuICAgICAgICBtZXJnZWRNYXAuc2V0KGNvbC5hdHRyLCBjb2wpO1xuICAgICAgfSk7XG5cbiAgICAgIC8vIEFkZCBuZXcgY29sdW1ucyB0byB0aGUgbWFwLCBvdmVycmlkaW5nIGV4aXN0aW5nIG9uZXMgd2l0aCB0aGUgc2FtZSBcImF0dHJcIlxuICAgICAgbmV3Q29sdW1ucy5mb3JFYWNoKGNvbCA9PiB7XG4gICAgICAgIG1lcmdlZE1hcC5zZXQoY29sLmF0dHIsIGNvbCk7XG4gICAgICB9KTtcblxuICAgICAgLy8gQ29udmVydCB0aGUgbWFwIHZhbHVlcyBiYWNrIHRvIGFuIGFycmF5XG4gICAgICB0aGlzLmNvbHVtbnNBcnJheSA9IEFycmF5LmZyb20obWVyZ2VkTWFwLnZhbHVlcygpKTtcblxuICAgIH1cbiAgfVxuXG4gIGlzQ29sdW1uRmlsdGVyYWJsZShhdHRyOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gVXRpbC5pc0RlZmluZWQodGhpcy5jb2x1bW5zQXJyYXkuZmluZCh4ID0+IHguYXR0ciA9PT0gYXR0cikpO1xuICB9XG5cbiAgZ2V0U29ydFZhbHVlT2ZGaWx0ZXJDb2x1bW4oYXR0cjogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBsZXQgc29ydFZhbHVlID0gJyc7XG4gICAgaWYgKFV0aWwuaXNEZWZpbmVkKHRoaXMuY29sdW1uc0FycmF5KSkge1xuICAgICAgdGhpcy5jb2x1bW5zQXJyYXkuZm9yRWFjaChjb2x1bW4gPT4ge1xuICAgICAgICBpZiAoY29sdW1uLmF0dHIgPT0gYXR0cikge1xuICAgICAgICAgIHNvcnRWYWx1ZSA9IGNvbHVtbi5zb3J0O1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHNvcnRWYWx1ZTtcbiAgfVxuXG4gIGdldFN0YXJ0Vmlld1ZhbHVlT2ZGaWx0ZXJDb2x1bW4oYXR0cjogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBsZXQgc3RhcnRWaWV3ID0gJyc7XG4gICAgaWYgKFV0aWwuaXNEZWZpbmVkKHRoaXMuY29sdW1uc0FycmF5KSkge1xuICAgICAgdGhpcy5jb2x1bW5zQXJyYXkuZm9yRWFjaChjb2x1bW4gPT4ge1xuICAgICAgICBpZiAoY29sdW1uLmF0dHIgPT0gYXR0cikge1xuICAgICAgICAgIHN0YXJ0VmlldyA9IGNvbHVtbi5zdGFydFZpZXc7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gc3RhcnRWaWV3O1xuICB9XG5cbiAgZ2V0UXVlcnlNZXRob2RPZkZpbHRlckNvbHVtbihhdHRyOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGxldCBxdWVyeU1ldGhvZCA9ICcnO1xuICAgIGlmIChVdGlsLmlzRGVmaW5lZCh0aGlzLmNvbHVtbnNBcnJheSkpIHtcbiAgICAgIHRoaXMuY29sdW1uc0FycmF5LmZvckVhY2goY29sdW1uID0+IHtcbiAgICAgICAgaWYgKGNvbHVtbi5hdHRyID09IGF0dHIpIHtcbiAgICAgICAgICBxdWVyeU1ldGhvZCA9IGNvbHVtbi5xdWVyeU1ldGhvZDtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBxdWVyeU1ldGhvZDtcbiAgfVxuXG4gIGdldEZpbHRlclZhbHVlc0luRGF0YShhdHRyOiBzdHJpbmcpOiAnY3VycmVudC1wYWdlJyB8ICdhbGwtZGF0YScge1xuICAgIGxldCBmaWx0ZXJWYWx1ZXNJbkRhdGE6ICdjdXJyZW50LXBhZ2UnIHwgJ2FsbC1kYXRhJyA9IHRoaXMuZmlsdGVyVmFsdWVzSW5EYXRhO1xuICAgIGlmIChVdGlsLmlzRGVmaW5lZCh0aGlzLmNvbHVtbnNBcnJheSkpIHtcbiAgICAgIHRoaXMuY29sdW1uc0FycmF5LmZvckVhY2goY29sdW1uID0+IHtcbiAgICAgICAgaWYgKGNvbHVtbi5hdHRyID09IGF0dHIgJiYgKGNvbHVtbi5maWx0ZXJWYWx1ZXNJbkRhdGEgPT09ICdjdXJyZW50LXBhZ2UnIHx8IGNvbHVtbi5maWx0ZXJWYWx1ZXNJbkRhdGEgPT09ICdhbGwtZGF0YScpKSB7XG4gICAgICAgICAgZmlsdGVyVmFsdWVzSW5EYXRhID0gY29sdW1uLmZpbHRlclZhbHVlc0luRGF0YTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBmaWx0ZXJWYWx1ZXNJbkRhdGE7XG4gIH1cblxuICBnZXRDb2x1bW5Db21wYXJpc29uVmFsdWUoY29sdW1uOiBPQ29sdW1uLCB2YWw6IGFueSk6IGFueSB7XG4gICAgaWYgKCFjb2x1bW4gfHwgdGhpcy5jb2x1bW5zQ29tcGFyaXNvblByb3BlcnR5W2NvbHVtbi5hdHRyXSA9PT0gT1RhYmxlQ29sdW1uc0ZpbHRlckNvbXBvbmVudC5NT0RFTF9DT01QQVJJU09OX1RZUEUpIHtcbiAgICAgIHJldHVybiB2YWw7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBjb2x1bW4ucmVuZGVyZXIgPyBjb2x1bW4ucmVuZGVyZXIuZ2V0Q2VsbERhdGEodmFsKSA6IHZhbDtcbiAgICB9XG4gIH1cblxuICBzZXQgY29sdW1ucyhhcmc6IHN0cmluZykge1xuICAgIHRoaXMuX2NvbHVtbnMgPSBhcmc7XG4gICAgdGhpcy5fY29sdW1uc0FycmF5ID0gdGhpcy5wYXJzZUNvbHVtbnModGhpcy5fY29sdW1ucyk7XG4gIH1cblxuICBzZXQgY29sdW1uc0FycmF5KGFyZzogT0ZpbHRlckNvbHVtbltdKSB7XG4gICAgdGhpcy5fY29sdW1uc0FycmF5ID0gYXJnO1xuICB9XG5cbiAgZ2V0IGNvbHVtbnNBcnJheSgpOiBPRmlsdGVyQ29sdW1uW10ge1xuICAgIHJldHVybiB0aGlzLl9jb2x1bW5zQXJyYXk7XG4gIH1cblxuICBwYXJzZUNvbHVtbnMoY29sdW1uczogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGNvbHVtbnMuc3BsaXQoJzsnKVxuICAgICAgLm1hcCh4ID0+IHtcbiAgICAgICAgbGV0IG9iajogT0ZpbHRlckNvbHVtbiA9IHsgYXR0cjogJycsIHNvcnQ6ICcnLCBzdGFydFZpZXc6ICcnIH07XG4gICAgICAgIG9iai5hdHRyID0geDtcbiAgICAgICAgb2JqLnNvcnQgPSAnJztcbiAgICAgICAgb2JqLnN0YXJ0VmlldyA9ICcnO1xuICAgICAgICByZXR1cm4gb2JqO1xuICAgICAgfSk7XG4gIH1cblxuICBwYXJzZUZpbHRlckNvbHVtbnMoY29sdW1uczogUXVlcnlMaXN0PE9UYWJsZUNvbHVtbnNGaWx0ZXJDb2x1bW5Db21wb25lbnQ+KSB7XG4gICAgcmV0dXJuIGNvbHVtbnNcbiAgICAgIC5tYXAoeCA9PiB7XG4gICAgICAgIGxldCBvYmo6IE9GaWx0ZXJDb2x1bW4gPSB7IGF0dHI6ICcnLCBzb3J0OiAnJywgc3RhcnRWaWV3OiAnJywgcXVlcnlNZXRob2Q6IHZvaWQgMCB9O1xuICAgICAgICBvYmouYXR0ciA9IHguYXR0cjtcbiAgICAgICAgb2JqLnNvcnQgPSB4LnNvcnQ7XG4gICAgICAgIG9iai5zdGFydFZpZXcgPSB4LnN0YXJ0VmlldztcbiAgICAgICAgb2JqLnF1ZXJ5TWV0aG9kID0geC5xdWVyeU1ldGhvZDtcbiAgICAgICAgb2JqLmZpbHRlclZhbHVlc0luRGF0YSA9ICh4LmZpbHRlclZhbHVlc0luRGF0YSB8fCB0aGlzLmZpbHRlclZhbHVlc0luRGF0YSkgPz8gdGhpcy5nZXRGaWx0ZXJWYWx1ZXNJbkRhdGFCeURlZmF1bHQoKTtcbiAgICAgICAgcmV0dXJuIG9iajtcbiAgICAgIH0pO1xuICB9XG5cbn1cbiJdfQ==
|
|
205
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby10YWJsZS1jb2x1bW5zLWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbnRpbWl6ZS13ZWItbmd4L3NyYy9saWIvY29tcG9uZW50cy90YWJsZS9leHRlbnNpb25zL2hlYWRlci90YWJsZS1jb2x1bW5zLWZpbHRlci9vLXRhYmxlLWNvbHVtbnMtZmlsdGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFvQix1QkFBdUIsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBVSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUosT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbEYsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUVoRCxPQUFPLEVBQWlCLGtDQUFrQyxFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDdEgsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDZCQUE2QixDQUFDOzs7QUFFekQsTUFBTSxDQUFDLE1BQU0sb0NBQW9DLEdBQUc7SUFFbEQsU0FBUztJQUVULCtCQUErQjtJQUUvQixNQUFNO0lBRU4sMkNBQTJDO0NBQzVDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxxQ0FBcUMsR0FBRyxFQUNwRCxDQUFDO0FBVUYsTUFBTSxPQUFPLDRCQUE0QjtJQWlCdkMsWUFDWSxRQUFrQixFQUNpQixLQUFpQjtRQURwRCxhQUFRLEdBQVIsUUFBUSxDQUFVO1FBQ2lCLFVBQUssR0FBTCxLQUFLLENBQVk7UUFadEQsVUFBSyxHQUFXLFNBQVMsQ0FBQztRQUVwQyxrQkFBYSxHQUFZLElBQUksQ0FBQztRQUdwQixrQkFBYSxHQUF5QixFQUFFLENBQUM7UUFDekMsOEJBQXlCLEdBQVcsRUFBRSxDQUFDO0lBTzdDLENBQUM7SUFFTCxRQUFRO1FBQ04sSUFBSSxJQUFJLENBQUMsWUFBWSxDQUFDLE1BQU0sS0FBSyxDQUFDLEVBQUU7WUFDbEMsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxjQUFjLENBQUM7U0FDN0Q7UUFDRCxJQUFJLE9BQU8sR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFFbkQsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFLEVBQUU7WUFDbEMsTUFBTSxNQUFNLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsY0FBYyxDQUFDLENBQUM7WUFDbkQsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzFCLElBQUksUUFBUSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxDQUFDLFdBQVcsRUFBRSxDQUFDO1lBQy9DLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyx1QkFBdUIsRUFBRSw0QkFBNEIsQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtnQkFDdkksUUFBUSxHQUFHLDRCQUE0QixDQUFDLHVCQUF1QixDQUFDO2FBQ2pFO1lBQ0QsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLE9BQU8sQ0FBQztZQUNqQixJQUFJLENBQUMseUJBQXlCLENBQUMsT0FBTyxDQUFDLEdBQUcsUUFBUSxDQUFDO1FBQ3JELENBQUMsQ0FBQyxDQUFDO1FBRUgsSUFBSSxDQUFDLEtBQUssQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUV4QyxJQUFJLENBQUMsa0JBQWtCLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixJQUFJLElBQUksQ0FBQyw4QkFBOEIsRUFBRSxDQUFDO0lBQzdGLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQztZQUFFLE9BQU87UUFFaEQsTUFBTSxVQUFVLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUcvRCxNQUFNLFNBQVMsR0FBRyxJQUFJLEdBQUcsRUFBZSxDQUFDO1FBR3pDLEtBQUssTUFBTSxHQUFHLElBQUksSUFBSSxDQUFDLFlBQVksRUFBRTtZQUNuQyxTQUFTLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxJQUFJLEVBQUUsR0FBRyxDQUFDLENBQUM7U0FDOUI7UUFBQSxDQUFDO1FBR0YsS0FBSyxNQUFNLEdBQUcsSUFBSSxVQUFVLEVBQUU7WUFDNUIsU0FBUyxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLEdBQUcsQ0FBQyxDQUFDO1NBQzlCO1FBR0QsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0lBQ3JELENBQUM7SUFJRCxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQ0ksSUFBSSxDQUFDLEdBQVc7UUFDbEIsTUFBTSxDQUFDLEdBQUcsNEJBQTRCLENBQUMsd0JBQXdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ3JGLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRTtZQUNyQixJQUFJLENBQUMsS0FBSyxHQUFHLENBQUMsQ0FBQztTQUNoQjthQUFNO1lBQ0wsT0FBTyxDQUFDLEtBQUssQ0FBQyx5Q0FBeUMsR0FBRyxHQUFHLEdBQUcsR0FBRyxDQUFDLENBQUM7U0FDdEU7SUFDSCxDQUFDO0lBRUQsSUFBSSxPQUFPLENBQUMsR0FBVztRQUNyQixJQUFJLENBQUMsUUFBUSxHQUFHLEdBQUcsQ0FBQztRQUNwQixJQUFJLENBQUMsYUFBYSxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFRCxJQUFJLFlBQVksQ0FBQyxHQUFvQjtRQUNuQyxJQUFJLENBQUMsYUFBYSxHQUFHLEdBQUcsQ0FBQztJQUMzQixDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFHRCxxQkFBcUIsQ0FBQyxJQUFZO1FBQ2hDLE9BQU8sSUFBSSxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsSUFBSSxLQUFLLElBQUksQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFTyw4QkFBOEI7UUFDcEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUM7SUFDM0QsQ0FBQztJQUVELGtCQUFrQixDQUFDLElBQVk7UUFDN0IsTUFBTSxzQkFBc0IsR0FBRyxJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssSUFBSSxDQUFDLENBQUM7UUFDNUUsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLHNCQUFzQixDQUFDLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxZQUFZLElBQUksSUFBSSxDQUFDLENBQUM7SUFDakcsQ0FBQztJQUVELDBCQUEwQixDQUFDLElBQVk7UUFDckMsSUFBSSxTQUFTLEdBQUcsRUFBRSxDQUFDO1FBQ25CLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLEVBQUU7WUFDckMsSUFBSSxDQUFDLFlBQVksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEVBQUU7Z0JBQ2pDLElBQUksTUFBTSxDQUFDLElBQUksSUFBSSxJQUFJLEVBQUU7b0JBQ3ZCLFNBQVMsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDO2lCQUN6QjtZQUNILENBQUMsQ0FBQyxDQUFDO1NBQ0o7UUFDRCxPQUFPLFNBQVMsQ0FBQztJQUNuQixDQUFDO0lBRUQsK0JBQStCLENBQUMsSUFBWTtRQUMxQyxJQUFJLFNBQVMsR0FBRyxFQUFFLENBQUM7UUFDbkIsSUFBSSxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsRUFBRTtZQUNyQyxJQUFJLENBQUMsWUFBWSxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsRUFBRTtnQkFDakMsSUFBSSxNQUFNLENBQUMsSUFBSSxJQUFJLElBQUksRUFBRTtvQkFDdkIsU0FBUyxHQUFHLE1BQU0sQ0FBQyxTQUFTLENBQUM7aUJBQzlCO1lBQ0gsQ0FBQyxDQUFDLENBQUM7U0FDSjtRQUNELE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFFRCw0QkFBNEIsQ0FBQyxJQUFZO1FBQ3ZDLElBQUksV0FBVyxHQUFHLEVBQUUsQ0FBQztRQUNyQixJQUFJLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxFQUFFO1lBQ3JDLElBQUksQ0FBQyxZQUFZLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUNqQyxJQUFJLE1BQU0sQ0FBQyxJQUFJLElBQUksSUFBSSxFQUFFO29CQUN2QixXQUFXLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQztpQkFDbEM7WUFDSCxDQUFDLENBQUMsQ0FBQztTQUNKO1FBQ0QsT0FBTyxXQUFXLENBQUM7SUFDckIsQ0FBQztJQUVELHFCQUFxQixDQUFDLElBQVk7UUFDaEMsSUFBSSxrQkFBa0IsR0FBZ0MsSUFBSSxDQUFDLGtCQUFrQixDQUFDO1FBQzlFLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLEVBQUU7WUFDdEMsS0FBSyxNQUFNLE1BQU0sSUFBSSxJQUFJLENBQUMsYUFBYSxFQUFFO2dCQUN2QyxJQUFJLE1BQU0sQ0FBQyxJQUFJLEtBQUssSUFBSSxJQUFJLENBQUMsTUFBTSxDQUFDLGtCQUFrQixLQUFLLGNBQWMsSUFBSSxNQUFNLENBQUMsa0JBQWtCLEtBQUssVUFBVSxDQUFDLEVBQUU7b0JBQ3RILGtCQUFrQixHQUFHLE1BQU0sQ0FBQyxrQkFBa0IsQ0FBQztvQkFDL0MsTUFBTTtpQkFDUDthQUNGO1NBQ0Y7UUFDRCxPQUFPLGtCQUFrQixDQUFDO0lBQzVCLENBQUM7SUFFRCx3QkFBd0IsQ0FBQyxNQUFlLEVBQUUsR0FBUTtRQUNoRCxJQUFJLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyx5QkFBeUIsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssNEJBQTRCLENBQUMscUJBQXFCLEVBQUU7WUFDakgsT0FBTyxHQUFHLENBQUM7U0FDWjthQUFNO1lBQ0wsT0FBTyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLFdBQVcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDO1NBQ2pFO0lBQ0gsQ0FBQztJQUlELFlBQVksQ0FBQyxPQUFlO1FBQzFCLE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7YUFDdEIsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFO1lBQ1AsSUFBSSxHQUFHLEdBQWtCLEVBQUUsSUFBSSxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsQ0FBQztZQUMvRCxHQUFHLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQztZQUNiLEdBQUcsQ0FBQyxJQUFJLEdBQUcsRUFBRSxDQUFDO1lBQ2QsR0FBRyxDQUFDLFNBQVMsR0FBRyxFQUFFLENBQUM7WUFDbkIsT0FBTyxHQUFHLENBQUM7UUFDYixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxrQkFBa0IsQ0FBQyxPQUFzRDtRQUN2RSxPQUFPLE9BQU87YUFDWCxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUU7WUFDUCxJQUFJLEdBQUcsR0FBa0IsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsU0FBUyxFQUFFLEVBQUUsRUFBRSxXQUFXLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNwRixHQUFHLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxJQUFJLENBQUM7WUFDbEIsR0FBRyxDQUFDLElBQUksR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDO1lBQ2xCLEdBQUcsQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDLFNBQVMsQ0FBQztZQUM1QixHQUFHLENBQUMsV0FBVyxHQUFHLENBQUMsQ0FBQyxXQUFXLENBQUM7WUFDaEMsSUFBSSxDQUFDLENBQUMsT0FBTyxFQUFFO2dCQUNiLEdBQUcsQ0FBQyxPQUFPLEdBQUcsQ0FBQyxDQUFDLE9BQU8sQ0FBQTthQUN4QjtZQUNELElBQUksQ0FBQyxDQUFDLFdBQVcsRUFBRTtnQkFDakIsR0FBRyxDQUFDLFdBQVcsR0FBRyxDQUFDLENBQUMsV0FBVyxDQUFBO2FBQ2hDO1lBQ0QsSUFBSSxDQUFDLENBQUMsU0FBUyxFQUFFO2dCQUNmLEdBQUcsQ0FBQyxTQUFTLEdBQUcsQ0FBQyxDQUFDLFNBQVMsQ0FBQTthQUM1QjtZQUNELElBQUksQ0FBQyxDQUFDLGNBQWMsRUFBRTtnQkFDcEIsR0FBRyxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxjQUFjLEVBQUUsSUFBSSxDQUFDLENBQUE7YUFDN0Q7WUFDRCxHQUFHLENBQUMsa0JBQWtCLEdBQUcsQ0FBQyxDQUFDLENBQUMsa0JBQWtCLElBQUksSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksSUFBSSxDQUFDLDhCQUE4QixFQUFFLENBQUM7WUFDcEgsT0FBTyxHQUFHLENBQUM7UUFDYixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7O0FBeE1hLG9EQUF1QixHQUFHLE1BQU0sQ0FBQztBQUNqQyxrREFBcUIsR0FBRyxPQUFPLENBQUM7QUFDaEMscURBQXdCLEdBQUcsQ0FBQyxTQUFTLEVBQUUsV0FBVyxFQUFFLFFBQVEsQ0FBQyxDQUFDO3lIQUpqRSw0QkFBNEIsMENBbUI3QixVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsVUFBVSxDQUFDOzZHQW5CM0IsNEJBQTRCLG1RQWV0QixrQ0FBa0MsZ0RBckJ6QyxHQUFHO0FBY2I7SUFBQyxxQkFBcUIsRUFBRTs7bUVBQ007MkZBVG5CLDRCQUE0QjtrQkFSeEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsd0JBQXdCO29CQUNsQyxRQUFRLEVBQUUsR0FBRztvQkFDYixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsTUFBTSxFQUFFLG9DQUFvQztvQkFDNUMsT0FBTyxFQUFFLHFDQUFxQztpQkFDL0M7OzBCQXFCSSxNQUFNOzJCQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxVQUFVLENBQUM7NENBVnRDLGFBQWEsTUFNK0QsYUFBYTtzQkFBeEYsZUFBZTt1QkFBQyxrQ0FBa0MsRUFBRSxFQUFFLFdBQVcsRUFBRSxJQUFJLEVBQUU7Z0JBMER0RSxJQUFJO3NCQURQLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlckNvbnRlbnRJbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGRyZW4sIGZvcndhcmRSZWYsIEluamVjdCwgSW5qZWN0b3IsIElucHV0LCBPbkluaXQsIFF1ZXJ5TGlzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5pbXBvcnQgeyBCb29sZWFuSW5wdXRDb252ZXJ0ZXIgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi9kZWNvcmF0b3JzL2lucHV0LWNvbnZlcnRlcic7XG5pbXBvcnQgeyBDb2RlcyB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3V0aWwvY29kZXMnO1xuaW1wb3J0IHsgVXRpbCB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL3V0aWwvdXRpbCc7XG5pbXBvcnQgdHlwZSB7IE9Db2x1bW4gfSBmcm9tICcuLi8uLi8uLi9jb2x1bW4vby1jb2x1bW4uY2xhc3MnO1xuaW1wb3J0IHsgT0ZpbHRlckNvbHVtbiwgT1RhYmxlQ29sdW1uc0ZpbHRlckNvbHVtbkNvbXBvbmVudCB9IGZyb20gJy4vY29sdW1ucy9vLXRhYmxlLWNvbHVtbnMtZmlsdGVyLWNvbHVtbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgT1RhYmxlQmFzZSB9IGZyb20gJy4uLy4uLy4uL28tdGFibGUtYmFzZS5jbGFzcyc7XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX0lOUFVUU19PX1RBQkxFX0NPTFVNTl9GSUxURVIgPSBbXG4gIC8vIGNvbHVtbnMgW3N0cmluZ106IGNvbHVtbnMgdGhhdCBtaWdodCBiZSBmaWx0ZXJlZCwgc2VwYXJhdGVkIGJ5ICc7Jy4gRGVmYXVsdDogYWxsIHZpc2libGUgY29sdW1ucy5cbiAgJ2NvbHVtbnMnLFxuICAvLyBwcmVsb2FkVmFsdWVzIFt0cnVlfGZhbHNlfHllc3xub106IGluZGljYXRlcyB3aGV0aGVyIG9yIG5vdCB0byBzaG93IHRoZSBsaXN0IHZhbHVlcyB3aGVuIHRoZSBmaWx0ZXIgZGlhbG9nIGlzIG9wZW5lZC4gRGVmYXVsdDogdHJ1ZS5cbiAgJ3ByZWxvYWRWYWx1ZXM6IHByZWxvYWQtdmFsdWVzJyxcbiAgLy8gbW9kZSBbZGVmYXVsdCB8IHNlbGVjdGlvbiB8ICBjdXN0b21dXG4gICdtb2RlJyxcbiAgLy9maWx0ZXItdmFsdWVzLWluLWRhdGE6ICdjdXJyZW50LXBhZ2UnIHwgJ2FsbC1kYXRhJzogc2V0IG1vZGUgdG8gZmlsdGVyIGJ5LiBEZWZhdWx0ICdjdXJyZW50LXBhZ2UnXG4gICdmaWx0ZXJWYWx1ZXNJbkRhdGE6IGZpbHRlci12YWx1ZXMtaW4tZGF0YSdcbl07XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX09VVFBVVFNfT19UQUJMRV9DT0xVTU5fRklMVEVSID0gW1xuXTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnby10YWJsZS1jb2x1bW5zLWZpbHRlcicsXG4gIHRlbXBsYXRlOiAnICcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbnB1dHM6IERFRkFVTFRfSU5QVVRTX09fVEFCTEVfQ09MVU1OX0ZJTFRFUixcbiAgb3V0cHV0czogREVGQVVMVF9PVVRQVVRTX09fVEFCTEVfQ09MVU1OX0ZJTFRFUlxufSlcblxuZXhwb3J0IGNsYXNzIE9UYWJsZUNvbHVtbnNGaWx0ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyQ29udGVudEluaXQge1xuXG4gIHB1YmxpYyBzdGF0aWMgREVGQVVMVF9DT01QQVJJU09OX1RZUEUgPSAnVklFVyc7XG4gIHB1YmxpYyBzdGF0aWMgTU9ERUxfQ09NUEFSSVNPTl9UWVBFID0gJ01PREVMJztcbiAgcHVibGljIHN0YXRpYyBPVGFibGVDb2x1bW5zRmlsdGVyTW9kZXMgPSBbJ2RlZmF1bHQnLCAnc2VsZWN0aW9uJywgJ2N1c3RvbSddO1xuXG4gIHByb3RlY3RlZCBfY29sdW1uczogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX21vZGU6IHN0cmluZyA9ICdkZWZhdWx0JztcbiAgQEJvb2xlYW5JbnB1dENvbnZlcnRlcigpXG4gIHByZWxvYWRWYWx1ZXM6IGJvb2xlYW4gPSB0cnVlO1xuICBmaWx0ZXJWYWx1ZXNJbkRhdGE6ICdjdXJyZW50LXBhZ2UnIHwgJ2FsbC1kYXRhJztcblxuICBwcm90ZWN0ZWQgX2NvbHVtbnNBcnJheTogQXJyYXk8T0ZpbHRlckNvbHVtbj4gPSBbXTtcbiAgcHJvdGVjdGVkIGNvbHVtbnNDb21wYXJpc29uUHJvcGVydHk6IG9iamVjdCA9IHt9O1xuXG4gIEBDb250ZW50Q2hpbGRyZW4oT1RhYmxlQ29sdW1uc0ZpbHRlckNvbHVtbkNvbXBvbmVudCwgeyBkZXNjZW5kYW50czogdHJ1ZSB9KSBmaWx0ZXJDb2x1bW5zOiBRdWVyeUxpc3Q8T1RhYmxlQ29sdW1uc0ZpbHRlckNvbHVtbkNvbXBvbmVudD47XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJvdGVjdGVkIGluamVjdG9yOiBJbmplY3RvcixcbiAgICBASW5qZWN0KGZvcndhcmRSZWYoKCkgPT4gT1RhYmxlQmFzZSkpIHB1YmxpYyB0YWJsZTogT1RhYmxlQmFzZVxuICApIHsgfVxuXG4gIG5nT25Jbml0KCkge1xuICAgIGlmICh0aGlzLmNvbHVtbnNBcnJheS5sZW5ndGggPT09IDApIHtcbiAgICAgIHRoaXMuY29sdW1uc0FycmF5ID0gdGhpcy50YWJsZS5vVGFibGVPcHRpb25zLnZpc2libGVDb2x1bW5zO1xuICAgIH1cbiAgICBsZXQgY29sdW1ucyA9IFV0aWwucGFyc2VBcnJheSh0aGlzLl9jb2x1bW5zLCB0cnVlKTtcblxuICAgIGNvbHVtbnMuZm9yRWFjaCgoY29sRGF0YSwgaSwgYXJyKSA9PiB7XG4gICAgICBjb25zdCBjb2xEZWYgPSBjb2xEYXRhLnNwbGl0KENvZGVzLlRZUEVfU0VQQVJBVE9SKTtcbiAgICAgIGNvbnN0IGNvbE5hbWUgPSBjb2xEZWZbMF07XG4gICAgICBsZXQgY29tcFR5cGUgPSAoY29sRGVmWzFdIHx8ICcnKS50b1VwcGVyQ2FzZSgpO1xuICAgICAgaWYgKFtPVGFibGVDb2x1bW5zRmlsdGVyQ29tcG9uZW50LkRFRkFVTFRfQ09NUEFSSVNPTl9UWVBFLCBPVGFibGVDb2x1bW5zRmlsdGVyQ29tcG9uZW50Lk1PREVMX0NPTVBBUklTT05fVFlQRV0uaW5kZXhPZihjb21wVHlwZSkgPT09IC0xKSB7XG4gICAgICAgIGNvbXBUeXBlID0gT1RhYmxlQ29sdW1uc0ZpbHRlckNvbXBvbmVudC5ERUZBVUxUX0NPTVBBUklTT05fVFlQRTtcbiAgICAgIH1cbiAgICAgIGFycltpXSA9IGNvbE5hbWU7XG4gICAgICB0aGlzLmNvbHVtbnNDb21wYXJpc29uUHJvcGVydHlbY29sTmFtZV0gPSBjb21wVHlwZTtcbiAgICB9KTtcblxuICAgIHRoaXMudGFibGUuc2V0T1RhYmxlQ29sdW1uc0ZpbHRlcih0aGlzKTtcblxuICAgIHRoaXMuZmlsdGVyVmFsdWVzSW5EYXRhID0gdGhpcy5maWx0ZXJWYWx1ZXNJbkRhdGEgPz8gdGhpcy5nZXRGaWx0ZXJWYWx1ZXNJbkRhdGFCeURlZmF1bHQoKTtcbiAgfVxuXG4gIG5nQWZ0ZXJDb250ZW50SW5pdCgpIHtcbiAgICBpZiAoIVV0aWwuaXNEZWZpbmVkKHRoaXMuZmlsdGVyQ29sdW1ucykpIHJldHVybjtcblxuICAgIGNvbnN0IG5ld0NvbHVtbnMgPSB0aGlzLnBhcnNlRmlsdGVyQ29sdW1ucyh0aGlzLmZpbHRlckNvbHVtbnMpO1xuXG4gICAgLy8gQ3JlYXRlIGEgbWFwIHRvIG1lcmdlIGFycmF5cyBiYXNlZCBvbiB0aGUgXCJhdHRyXCIgcHJvcGVydHlcbiAgICBjb25zdCBtZXJnZWRNYXAgPSBuZXcgTWFwPHN0cmluZywgYW55PigpO1xuXG4gICAgLy8gQWRkIGV4aXN0aW5nIGNvbHVtbnMgdG8gdGhlIG1hcFxuICAgIGZvciAoY29uc3QgY29sIG9mIHRoaXMuY29sdW1uc0FycmF5KSB7XG4gICAgICBtZXJnZWRNYXAuc2V0KGNvbC5hdHRyLCBjb2wpO1xuICAgIH07XG5cbiAgICAvLyBBZGQgbmV3IGNvbHVtbnMgdG8gdGhlIG1hcCwgb3ZlcnJpZGluZyBleGlzdGluZyBvbmVzIHdpdGggdGhlIHNhbWUgXCJhdHRyXCJcbiAgICBmb3IgKGNvbnN0IGNvbCBvZiBuZXdDb2x1bW5zKSB7XG4gICAgICBtZXJnZWRNYXAuc2V0KGNvbC5hdHRyLCBjb2wpO1xuICAgIH1cblxuICAgIC8vIENvbnZlcnQgdGhlIG1hcCB2YWx1ZXMgYmFjayB0byBhbiBhcnJheVxuICAgIHRoaXMuY29sdW1uc0FycmF5ID0gQXJyYXkuZnJvbShtZXJnZWRNYXAudmFsdWVzKCkpO1xuICB9XG5cbiAgLy8gLS0tLS0tLS0tLS0tLS0tLS0tLS0gR2V0dGVycyAvIFNldHRlcnMgLS0tLS0tLS0tLS0tLS0tLS0tLS1cblxuICBnZXQgbW9kZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9tb2RlO1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IG1vZGUodmFsOiBzdHJpbmcpIHtcbiAgICBjb25zdCBtID0gT1RhYmxlQ29sdW1uc0ZpbHRlckNvbXBvbmVudC5PVGFibGVDb2x1bW5zRmlsdGVyTW9kZXMuZmluZChlID0+IGUgPT09IHZhbCk7XG4gICAgaWYgKFV0aWwuaXNEZWZpbmVkKG0pKSB7XG4gICAgICB0aGlzLl9tb2RlID0gbTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS5lcnJvcignSW52YWxpZCBgby10YWJsZS1jb2x1bW5zLWZpbHRlcmAgbW9kZSAoJyArIHZhbCArICcpJyk7XG4gICAgfVxuICB9XG5cbiAgc2V0IGNvbHVtbnMoYXJnOiBzdHJpbmcpIHtcbiAgICB0aGlzLl9jb2x1bW5zID0gYXJnO1xuICAgIHRoaXMuX2NvbHVtbnNBcnJheSA9IHRoaXMucGFyc2VDb2x1bW5zKHRoaXMuX2NvbHVtbnMpO1xuICB9XG5cbiAgc2V0IGNvbHVtbnNBcnJheShhcmc6IE9GaWx0ZXJDb2x1bW5bXSkge1xuICAgIHRoaXMuX2NvbHVtbnNBcnJheSA9IGFyZztcbiAgfVxuXG4gIGdldCBjb2x1bW5zQXJyYXkoKTogT0ZpbHRlckNvbHVtbltdIHtcbiAgICByZXR1cm4gdGhpcy5fY29sdW1uc0FycmF5O1xuICB9XG5cbiAgLy8tLS0tLS0tLS0tLS0tLS0tIE1FVEhPRFMgLS0tLS0tLS0tLS0tLS0tLS1cbiAgZ2V0RmlsdGVyQ29sdW1uQnlBdHRyKGF0dHI6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmZpbHRlckNvbHVtbnMuZmluZChmaWx0ZXJDb2x1bW4gPT4gZmlsdGVyQ29sdW1uLmF0dHIgPT09IGF0dHIpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGaWx0ZXJWYWx1ZXNJbkRhdGFCeURlZmF1bHQoKSB7XG4gICAgcmV0dXJuIHRoaXMudGFibGUucGFnZWFibGUgPyAnY3VycmVudC1wYWdlJyA6ICdhbGwtZGF0YSc7XG4gIH1cblxuICBpc0NvbHVtbkZpbHRlcmFibGUoYXR0cjogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgY29uc3QgZmlsdGVyQ29sdW1uRGVmaW5pdGlvbiA9IHRoaXMuY29sdW1uc0FycmF5LmZpbmQoeCA9PiB4LmF0dHIgPT09IGF0dHIpO1xuICAgIHJldHVybiBVdGlsLmlzRGVmaW5lZChmaWx0ZXJDb2x1bW5EZWZpbml0aW9uKSAmJiAoZmlsdGVyQ29sdW1uRGVmaW5pdGlvbi5maWx0ZXJMb2NrZWQgPz8gdHJ1ZSk7XG4gIH1cblxuICBnZXRTb3J0VmFsdWVPZkZpbHRlckNvbHVtbihhdHRyOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGxldCBzb3J0VmFsdWUgPSAnJztcbiAgICBpZiAoVXRpbC5pc0RlZmluZWQodGhpcy5jb2x1bW5zQXJyYXkpKSB7XG4gICAgICB0aGlzLmNvbHVtbnNBcnJheS5mb3JFYWNoKGNvbHVtbiA9PiB7XG4gICAgICAgIGlmIChjb2x1bW4uYXR0ciA9PSBhdHRyKSB7XG4gICAgICAgICAgc29ydFZhbHVlID0gY29sdW1uLnNvcnQ7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gc29ydFZhbHVlO1xuICB9XG5cbiAgZ2V0U3RhcnRWaWV3VmFsdWVPZkZpbHRlckNvbHVtbihhdHRyOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGxldCBzdGFydFZpZXcgPSAnJztcbiAgICBpZiAoVXRpbC5pc0RlZmluZWQodGhpcy5jb2x1bW5zQXJyYXkpKSB7XG4gICAgICB0aGlzLmNvbHVtbnNBcnJheS5mb3JFYWNoKGNvbHVtbiA9PiB7XG4gICAgICAgIGlmIChjb2x1bW4uYXR0ciA9PSBhdHRyKSB7XG4gICAgICAgICAgc3RhcnRWaWV3ID0gY29sdW1uLnN0YXJ0VmlldztcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBzdGFydFZpZXc7XG4gIH1cblxuICBnZXRRdWVyeU1ldGhvZE9mRmlsdGVyQ29sdW1uKGF0dHI6IHN0cmluZyk6IHN0cmluZyB7XG4gICAgbGV0IHF1ZXJ5TWV0aG9kID0gJyc7XG4gICAgaWYgKFV0aWwuaXNEZWZpbmVkKHRoaXMuY29sdW1uc0FycmF5KSkge1xuICAgICAgdGhpcy5jb2x1bW5zQXJyYXkuZm9yRWFjaChjb2x1bW4gPT4ge1xuICAgICAgICBpZiAoY29sdW1uLmF0dHIgPT0gYXR0cikge1xuICAgICAgICAgIHF1ZXJ5TWV0aG9kID0gY29sdW1uLnF1ZXJ5TWV0aG9kO1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHF1ZXJ5TWV0aG9kO1xuICB9XG5cbiAgZ2V0RmlsdGVyVmFsdWVzSW5EYXRhKGF0dHI6IHN0cmluZyk6ICdjdXJyZW50LXBhZ2UnIHwgJ2FsbC1kYXRhJyB7XG4gICAgbGV0IGZpbHRlclZhbHVlc0luRGF0YTogJ2N1cnJlbnQtcGFnZScgfCAnYWxsLWRhdGEnID0gdGhpcy5maWx0ZXJWYWx1ZXNJbkRhdGE7XG4gICAgaWYgKFV0aWwuaXNEZWZpbmVkKHRoaXMuZmlsdGVyQ29sdW1ucykpIHtcbiAgICAgIGZvciAoY29uc3QgY29sdW1uIG9mIHRoaXMuZmlsdGVyQ29sdW1ucykge1xuICAgICAgICBpZiAoY29sdW1uLmF0dHIgPT09IGF0dHIgJiYgKGNvbHVtbi5maWx0ZXJWYWx1ZXNJbkRhdGEgPT09ICdjdXJyZW50LXBhZ2UnIHx8IGNvbHVtbi5maWx0ZXJWYWx1ZXNJbkRhdGEgPT09ICdhbGwtZGF0YScpKSB7XG4gICAgICAgICAgZmlsdGVyVmFsdWVzSW5EYXRhID0gY29sdW1uLmZpbHRlclZhbHVlc0luRGF0YTtcbiAgICAgICAgICBicmVhazsgLy8gc2FsaW1vcyBkZWwgYnVjbGUgdW5hIHZleiBlbmNvbnRyYWRhIGxhIGNvaW5jaWRlbmNpYVxuICAgICAgICB9XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiBmaWx0ZXJWYWx1ZXNJbkRhdGE7XG4gIH1cblxuICBnZXRDb2x1bW5Db21wYXJpc29uVmFsdWUoY29sdW1uOiBPQ29sdW1uLCB2YWw6IGFueSk6IGFueSB7XG4gICAgaWYgKCFjb2x1bW4gfHwgdGhpcy5jb2x1bW5zQ29tcGFyaXNvblByb3BlcnR5W2NvbHVtbi5hdHRyXSA9PT0gT1RhYmxlQ29sdW1uc0ZpbHRlckNvbXBvbmVudC5NT0RFTF9DT01QQVJJU09OX1RZUEUpIHtcbiAgICAgIHJldHVybiB2YWw7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBjb2x1bW4ucmVuZGVyZXIgPyBjb2x1bW4ucmVuZGVyZXIuZ2V0Q2VsbERhdGEodmFsKSA6IHZhbDtcbiAgICB9XG4gIH1cblxuICAvLyAtLS0tLS0tLS0tLS0tLS0tLS0tLSBQYXJzaW5nIC0tLS0tLS0tLS0tLS0tLS0tLS0tXG5cbiAgcGFyc2VDb2x1bW5zKGNvbHVtbnM6IHN0cmluZykge1xuICAgIHJldHVybiBjb2x1bW5zLnNwbGl0KCc7JylcbiAgICAgIC5tYXAoeCA9PiB7XG4gICAgICAgIGxldCBvYmo6IE9GaWx0ZXJDb2x1bW4gPSB7IGF0dHI6ICcnLCBzb3J0OiAnJywgc3RhcnRWaWV3OiAnJyB9O1xuICAgICAgICBvYmouYXR0ciA9IHg7XG4gICAgICAgIG9iai5zb3J0ID0gJyc7XG4gICAgICAgIG9iai5zdGFydFZpZXcgPSAnJztcbiAgICAgICAgcmV0dXJuIG9iajtcbiAgICAgIH0pO1xuICB9XG5cbiAgcGFyc2VGaWx0ZXJDb2x1bW5zKGNvbHVtbnM6IFF1ZXJ5TGlzdDxPVGFibGVDb2x1bW5zRmlsdGVyQ29sdW1uQ29tcG9uZW50Pikge1xuICAgIHJldHVybiBjb2x1bW5zXG4gICAgICAubWFwKHggPT4ge1xuICAgICAgICBsZXQgb2JqOiBPRmlsdGVyQ29sdW1uID0geyBhdHRyOiAnJywgc29ydDogJycsIHN0YXJ0VmlldzogJycsIHF1ZXJ5TWV0aG9kOiB2b2lkIDAgfTtcbiAgICAgICAgb2JqLmF0dHIgPSB4LmF0dHI7XG4gICAgICAgIG9iai5zb3J0ID0geC5zb3J0O1xuICAgICAgICBvYmouc3RhcnRWaWV3ID0geC5zdGFydFZpZXc7XG4gICAgICAgIG9iai5xdWVyeU1ldGhvZCA9IHgucXVlcnlNZXRob2Q7XG4gICAgICAgIGlmICh4LnNlcnZpY2UpIHtcbiAgICAgICAgICBvYmouc2VydmljZSA9IHguc2VydmljZVxuICAgICAgICB9XG4gICAgICAgIGlmICh4LnNlcnZpY2VUeXBlKSB7XG4gICAgICAgICAgb2JqLnNlcnZpY2VUeXBlID0geC5zZXJ2aWNlVHlwZVxuICAgICAgICB9XG4gICAgICAgIGlmICh4LnNlcGFyYXRvcikge1xuICAgICAgICAgIG9iai5zZXBhcmF0b3IgPSB4LnNlcGFyYXRvclxuICAgICAgICB9XG4gICAgICAgIGlmICh4LnZpc2libGVDb2x1bW5zKSB7XG4gICAgICAgICAgb2JqLnZpc2libGVDb2x1bW5zID0gVXRpbC5wYXJzZUFycmF5KHgudmlzaWJsZUNvbHVtbnMsIHRydWUpXG4gICAgICAgIH1cbiAgICAgICAgb2JqLmZpbHRlclZhbHVlc0luRGF0YSA9ICh4LmZpbHRlclZhbHVlc0luRGF0YSB8fCB0aGlzLmZpbHRlclZhbHVlc0luRGF0YSkgPz8gdGhpcy5nZXRGaWx0ZXJWYWx1ZXNJbkRhdGFCeURlZmF1bHQoKTtcbiAgICAgICAgcmV0dXJuIG9iajtcbiAgICAgIH0pO1xuICB9XG5cbn1cbiJdfQ==
|