@sd-angular/core 1.3.146 → 1.3.147
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bundles/sd-angular-core-table.umd.js +4004 -0
- package/bundles/sd-angular-core-table.umd.js.map +1 -0
- package/bundles/sd-angular-core-table.umd.min.js +2 -0
- package/bundles/sd-angular-core-table.umd.min.js.map +1 -0
- package/bundles/sd-angular-core.umd.js +6 -4
- package/bundles/sd-angular-core.umd.js.map +1 -1
- package/bundles/sd-angular-core.umd.min.js +1 -1
- package/bundles/sd-angular-core.umd.min.js.map +1 -1
- package/esm2015/lib/core.module.js +4 -1
- package/esm2015/public-api.js +2 -1
- package/esm2015/table/index.js +2 -0
- package/esm2015/table/sd-angular-core-table.js +40 -0
- package/esm2015/table/src/lib/components/column-inline-filter/column-inline-filter.component.js +74 -0
- package/esm2015/table/src/lib/components/desktop-cell/desktop-cell.component.js +25 -0
- package/esm2015/table/src/lib/components/desktop-cell-view/desktop-cell-view.component.js +21 -0
- package/esm2015/table/src/lib/components/desktop-command/desktop-command.component.js +20 -0
- package/esm2015/table/src/lib/components/grid-filter/grid-filter.component.js +99 -0
- package/esm2015/table/src/lib/components/popup-filter/popup-filter.component.js +79 -0
- package/esm2015/table/src/lib/components/popup-grid-configuration/popup-grid-configuration.component.js +96 -0
- package/esm2015/table/src/lib/components/quick-action/quick-action.component.js +24 -0
- package/esm2015/table/src/lib/directives/sd-material-cell-def.directive.js +18 -0
- package/esm2015/table/src/lib/directives/sd-material-empty-data-def.directive.js +15 -0
- package/esm2015/table/src/lib/directives/sd-material-filter-def.directive.js +22 -0
- package/esm2015/table/src/lib/directives/sd-material-footer-def.directive.js +18 -0
- package/esm2015/table/src/lib/directives/sd-material-sub-information-def.directive.js +15 -0
- package/esm2015/table/src/lib/models/grid-cell.model.js +2 -0
- package/esm2015/table/src/lib/models/index.js +4 -0
- package/esm2015/table/src/lib/models/table-column.model.js +39 -0
- package/esm2015/table/src/lib/models/table-command.model.js +2 -0
- package/esm2015/table/src/lib/models/table-configuration.model.js +9 -0
- package/esm2015/table/src/lib/models/table-item.model.js +15 -0
- package/esm2015/table/src/lib/models/table-option-config.model.js +2 -0
- package/esm2015/table/src/lib/models/table-option-expand.model.js +2 -0
- package/esm2015/table/src/lib/models/table-option-export.model.js +2 -0
- package/esm2015/table/src/lib/models/table-option-group.model.js +2 -0
- package/esm2015/table/src/lib/models/table-option-paginate.model.js +2 -0
- package/esm2015/table/src/lib/models/table-option-reload.model.js +2 -0
- package/esm2015/table/src/lib/models/table-option-selector.model.js +2 -0
- package/esm2015/table/src/lib/models/table-option-sort.model.js +2 -0
- package/esm2015/table/src/lib/models/table-option-style.model.js +2 -0
- package/esm2015/table/src/lib/models/table-option.model.js +2 -0
- package/esm2015/table/src/lib/pipes/cell-view.pipe.js +180 -0
- package/esm2015/table/src/lib/pipes/column-badge.pipe.js +43 -0
- package/esm2015/table/src/lib/pipes/column-children-filter.pipe.js +31 -0
- package/esm2015/table/src/lib/pipes/column-html-template.pipe.js +23 -0
- package/esm2015/table/src/lib/pipes/column-tooltip.pipe.js +17 -0
- package/esm2015/table/src/lib/pipes/column-transform.pipe.js +35 -0
- package/esm2015/table/src/lib/pipes/column-values.pipe.js +63 -0
- package/esm2015/table/src/lib/pipes/command-disable.pipe.js +18 -0
- package/esm2015/table/src/lib/pipes/command-filter.pipe.js +79 -0
- package/esm2015/table/src/lib/pipes/command-icon.pipe.js +18 -0
- package/esm2015/table/src/lib/pipes/command-title.pipe.js +18 -0
- package/esm2015/table/src/lib/pipes/filter-column.pipe.js +30 -0
- package/esm2015/table/src/lib/pipes/filter-external.pipe.js +19 -0
- package/esm2015/table/src/lib/pipes/grid-configuration-result.pipe.js +21 -0
- package/esm2015/table/src/lib/pipes/sd-group.pipe.js +45 -0
- package/esm2015/table/src/lib/pipes/selection-action-filter.pipe.js +72 -0
- package/esm2015/table/src/lib/pipes/selection-disable.pipe.js +55 -0
- package/esm2015/table/src/lib/pipes/selection-visible-select-all.pipe.js +34 -0
- package/esm2015/table/src/lib/pipes/selection-visible.pipe.js +82 -0
- package/esm2015/table/src/lib/services/table-configuration.service.js +292 -0
- package/esm2015/table/src/lib/services/table-filter/table-filter.model.js +3 -0
- package/esm2015/table/src/lib/services/table-filter/table-filter.service.js +229 -0
- package/esm2015/table/src/lib/table.component.js +816 -0
- package/esm2015/table/src/lib/table.module.js +175 -0
- package/esm2015/table/src/public-api.js +5 -0
- package/fesm2015/sd-angular-core-table.js +2865 -0
- package/fesm2015/sd-angular-core-table.js.map +1 -0
- package/fesm2015/sd-angular-core.js +3 -0
- package/fesm2015/sd-angular-core.js.map +1 -1
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
- package/{sd-angular-core-1.3.146.tgz → sd-angular-core-1.3.147.tgz} +0 -0
- package/sd-angular-core.metadata.json +1 -1
- package/table/index.d.ts +1 -0
- package/table/package.json +12 -0
- package/table/sd-angular-core-table.d.ts +39 -0
- package/table/sd-angular-core-table.metadata.json +1 -0
- package/table/src/lib/components/column-inline-filter/column-inline-filter.component.d.ts +22 -0
- package/table/src/lib/components/desktop-cell/desktop-cell.component.d.ts +17 -0
- package/table/src/lib/components/desktop-cell-view/desktop-cell-view.component.d.ts +11 -0
- package/table/src/lib/components/desktop-command/desktop-command.component.d.ts +7 -0
- package/table/src/lib/components/grid-filter/grid-filter.component.d.ts +35 -0
- package/table/src/lib/components/popup-filter/popup-filter.component.d.ts +27 -0
- package/table/src/lib/components/popup-grid-configuration/popup-grid-configuration.component.d.ts +39 -0
- package/table/src/lib/components/quick-action/quick-action.component.d.ts +9 -0
- package/table/src/lib/directives/sd-material-cell-def.directive.d.ts +6 -0
- package/table/src/lib/directives/sd-material-empty-data-def.directive.d.ts +5 -0
- package/table/src/lib/directives/sd-material-filter-def.directive.d.ts +8 -0
- package/table/src/lib/directives/sd-material-footer-def.directive.d.ts +6 -0
- package/table/src/lib/directives/sd-material-sub-information-def.directive.d.ts +5 -0
- package/table/src/lib/models/grid-cell.model.d.ts +16 -0
- package/table/src/lib/models/index.d.ts +3 -0
- package/table/src/lib/models/table-column.model.d.ts +124 -0
- package/table/src/lib/models/table-command.model.d.ts +19 -0
- package/table/src/lib/models/table-configuration.model.d.ts +13 -0
- package/table/src/lib/models/table-item.model.d.ts +25 -0
- package/table/src/lib/models/table-option-config.model.d.ts +62 -0
- package/table/src/lib/models/table-option-expand.model.d.ts +6 -0
- package/table/src/lib/models/table-option-export.model.d.ts +31 -0
- package/table/src/lib/models/table-option-group.model.d.ts +4 -0
- package/table/src/lib/models/table-option-paginate.model.d.ts +6 -0
- package/table/src/lib/models/table-option-reload.model.d.ts +5 -0
- package/table/src/lib/models/table-option-selector.model.d.ts +32 -0
- package/table/src/lib/models/table-option-sort.model.d.ts +3 -0
- package/table/src/lib/models/table-option-style.model.d.ts +6 -0
- package/table/src/lib/models/table-option.model.d.ts +44 -0
- package/table/src/lib/pipes/cell-view.pipe.d.ts +15 -0
- package/table/src/lib/pipes/column-badge.pipe.d.ts +11 -0
- package/table/src/lib/pipes/column-children-filter.pipe.d.ts +8 -0
- package/table/src/lib/pipes/column-html-template.pipe.d.ts +8 -0
- package/table/src/lib/pipes/column-tooltip.pipe.d.ts +6 -0
- package/table/src/lib/pipes/column-transform.pipe.d.ts +8 -0
- package/table/src/lib/pipes/column-values.pipe.d.ts +6 -0
- package/table/src/lib/pipes/command-disable.pipe.d.ts +5 -0
- package/table/src/lib/pipes/command-filter.pipe.d.ts +6 -0
- package/table/src/lib/pipes/command-icon.pipe.d.ts +5 -0
- package/table/src/lib/pipes/command-title.pipe.d.ts +5 -0
- package/table/src/lib/pipes/filter-column.pipe.d.ts +5 -0
- package/table/src/lib/pipes/filter-external.pipe.d.ts +5 -0
- package/table/src/lib/pipes/grid-configuration-result.pipe.d.ts +10 -0
- package/table/src/lib/pipes/sd-group.pipe.d.ts +6 -0
- package/table/src/lib/pipes/selection-action-filter.pipe.d.ts +7 -0
- package/table/src/lib/pipes/selection-disable.pipe.d.ts +6 -0
- package/table/src/lib/pipes/selection-visible-select-all.pipe.d.ts +6 -0
- package/table/src/lib/pipes/selection-visible.pipe.d.ts +6 -0
- package/table/src/lib/services/table-configuration.service.d.ts +13 -0
- package/table/src/lib/services/table-filter/table-filter.model.d.ts +117 -0
- package/table/src/lib/services/table-filter/table-filter.service.d.ts +15 -0
- package/table/src/lib/table.component.d.ts +87 -0
- package/table/src/lib/table.module.d.ts +11 -0
- package/table/src/public-api.d.ts +5 -0
|
@@ -0,0 +1,292 @@
|
|
|
1
|
+
var _COLUMNS, _cache, _getKey, _default, _load, _get, _set, _remove;
|
|
2
|
+
import { __awaiter, __classPrivateFieldGet } from "tslib";
|
|
3
|
+
import { Inject, Injectable, Optional } from '@angular/core';
|
|
4
|
+
import hash from 'object-hash';
|
|
5
|
+
import { SdSettingService } from '@sd-angular/core/setting';
|
|
6
|
+
import { Subject } from 'rxjs';
|
|
7
|
+
import { TABLE_CONFIG } from '../models/table-configuration.model';
|
|
8
|
+
export class SdTableConfigurationService {
|
|
9
|
+
constructor(settingService, gridMaterialConfiguration) {
|
|
10
|
+
this.settingService = settingService;
|
|
11
|
+
this.gridMaterialConfiguration = gridMaterialConfiguration;
|
|
12
|
+
_COLUMNS.set(this, {
|
|
13
|
+
EDITORVALIDATION: 'sdEditorValidation',
|
|
14
|
+
EDITOR: 'sdEditor',
|
|
15
|
+
SUBINFORMATION: 'sdSubInformationAction',
|
|
16
|
+
COMMAND: 'sdCommand',
|
|
17
|
+
SELECTION: 'sdSelection',
|
|
18
|
+
GROUP: 'sdGroup',
|
|
19
|
+
});
|
|
20
|
+
_cache.set(this, {});
|
|
21
|
+
this.init = (key, gridOption) => {
|
|
22
|
+
if (!__classPrivateFieldGet(this, _cache)[key]) {
|
|
23
|
+
const subject = new Subject();
|
|
24
|
+
__classPrivateFieldGet(this, _cache)[key] = {
|
|
25
|
+
load: __classPrivateFieldGet(this, _load).call(this, gridOption, subject),
|
|
26
|
+
get: __classPrivateFieldGet(this, _get).call(this, gridOption),
|
|
27
|
+
set: (configuration) => {
|
|
28
|
+
configuration = __classPrivateFieldGet(this, _set).call(this, gridOption, configuration);
|
|
29
|
+
subject.next(Object.assign({}, configuration));
|
|
30
|
+
return configuration;
|
|
31
|
+
},
|
|
32
|
+
remove: () => {
|
|
33
|
+
__classPrivateFieldGet(this, _remove).call(this, gridOption)();
|
|
34
|
+
subject.next(__classPrivateFieldGet(this, _default).call(this, gridOption));
|
|
35
|
+
},
|
|
36
|
+
observer: subject,
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
return __classPrivateFieldGet(this, _cache)[key];
|
|
40
|
+
};
|
|
41
|
+
_getKey.set(this, (gridOption) => {
|
|
42
|
+
var _a, _b;
|
|
43
|
+
const prefix = 'c9e94836-6ace-4aeb-b148-4f0be63589ee';
|
|
44
|
+
if (!((_a = gridOption === null || gridOption === void 0 ? void 0 : gridOption.config) === null || _a === void 0 ? void 0 : _a.key) && !(gridOption === null || gridOption === void 0 ? void 0 : gridOption.key)) {
|
|
45
|
+
return null;
|
|
46
|
+
}
|
|
47
|
+
return hash({
|
|
48
|
+
prefix,
|
|
49
|
+
key: ((_b = gridOption === null || gridOption === void 0 ? void 0 : gridOption.config) === null || _b === void 0 ? void 0 : _b.key) || !(gridOption === null || gridOption === void 0 ? void 0 : gridOption.key),
|
|
50
|
+
});
|
|
51
|
+
});
|
|
52
|
+
_default.set(this, (gridOption) => {
|
|
53
|
+
var _a;
|
|
54
|
+
const columns = ((_a = gridOption === null || gridOption === void 0 ? void 0 : gridOption.columns) === null || _a === void 0 ? void 0 : _a.filter(e => !e.hidden).map(e => ({
|
|
55
|
+
origin: {
|
|
56
|
+
field: e.field,
|
|
57
|
+
title: e.title,
|
|
58
|
+
width: e.width,
|
|
59
|
+
invisible: e.invisible,
|
|
60
|
+
},
|
|
61
|
+
invisible: e.invisible,
|
|
62
|
+
fixed: false,
|
|
63
|
+
}))) || [];
|
|
64
|
+
return {
|
|
65
|
+
columns,
|
|
66
|
+
};
|
|
67
|
+
});
|
|
68
|
+
_load.set(this, (gridOption, subject) => {
|
|
69
|
+
return () => __awaiter(this, void 0, void 0, function* () {
|
|
70
|
+
const get = __classPrivateFieldGet(this, _get).call(this, gridOption);
|
|
71
|
+
const configuration = yield get();
|
|
72
|
+
subject.next(Object.assign({}, configuration));
|
|
73
|
+
});
|
|
74
|
+
});
|
|
75
|
+
_get.set(this, (gridOption) => {
|
|
76
|
+
return () => __awaiter(this, void 0, void 0, function* () {
|
|
77
|
+
const key = __classPrivateFieldGet(this, _getKey).call(this, gridOption);
|
|
78
|
+
if (!key) {
|
|
79
|
+
return __classPrivateFieldGet(this, _default).call(this, gridOption);
|
|
80
|
+
}
|
|
81
|
+
const { columns, config } = gridOption;
|
|
82
|
+
let configuration;
|
|
83
|
+
if ((config === null || config === void 0 ? void 0 : config.storage) === 'server') {
|
|
84
|
+
const { get, remove } = this.settingService.createServer(key, {
|
|
85
|
+
args: config === null || config === void 0 ? void 0 : config.args,
|
|
86
|
+
});
|
|
87
|
+
configuration = yield get().catch(() => undefined);
|
|
88
|
+
if (!(configuration === null || configuration === void 0 ? void 0 : configuration.columns)) {
|
|
89
|
+
remove().catch(console.error);
|
|
90
|
+
return __classPrivateFieldGet(this, _default).call(this, gridOption);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
else {
|
|
94
|
+
const { get, remove } = this.settingService.create(key, {
|
|
95
|
+
type: config === null || config === void 0 ? void 0 : config.storage,
|
|
96
|
+
args: config === null || config === void 0 ? void 0 : config.args,
|
|
97
|
+
});
|
|
98
|
+
configuration = get();
|
|
99
|
+
if (!(configuration === null || configuration === void 0 ? void 0 : configuration.columns)) {
|
|
100
|
+
remove();
|
|
101
|
+
return __classPrivateFieldGet(this, _default).call(this, gridOption);
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
configuration.columns = configuration.columns.filter(column => columns.some(e => !e.hidden && e.field === column.origin.field));
|
|
105
|
+
// Thêm những column mới vào storage nếu có
|
|
106
|
+
columns.forEach(column => {
|
|
107
|
+
const col = configuration.columns.find(e => { var _a; return ((_a = e.origin) === null || _a === void 0 ? void 0 : _a.field) === column.field; });
|
|
108
|
+
if (!col) {
|
|
109
|
+
configuration.columns.push({
|
|
110
|
+
origin: {
|
|
111
|
+
field: column.field,
|
|
112
|
+
title: column.title,
|
|
113
|
+
width: column.width,
|
|
114
|
+
invisible: column.invisible,
|
|
115
|
+
},
|
|
116
|
+
invisible: column.invisible,
|
|
117
|
+
fixed: false,
|
|
118
|
+
});
|
|
119
|
+
}
|
|
120
|
+
else {
|
|
121
|
+
col.origin = {
|
|
122
|
+
field: column.field,
|
|
123
|
+
title: column.title,
|
|
124
|
+
width: column.width,
|
|
125
|
+
invisible: column.invisible,
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
});
|
|
129
|
+
return configuration;
|
|
130
|
+
});
|
|
131
|
+
});
|
|
132
|
+
_set.set(this, (gridOption, configuration) => {
|
|
133
|
+
var _a, _b, _c, _d;
|
|
134
|
+
const key = __classPrivateFieldGet(this, _getKey).call(this, gridOption);
|
|
135
|
+
if (key) {
|
|
136
|
+
if (((_a = gridOption === null || gridOption === void 0 ? void 0 : gridOption.config) === null || _a === void 0 ? void 0 : _a.storage) === 'server') {
|
|
137
|
+
const { set } = this.settingService.createServer(key, {
|
|
138
|
+
args: (_b = gridOption === null || gridOption === void 0 ? void 0 : gridOption.config) === null || _b === void 0 ? void 0 : _b.args,
|
|
139
|
+
});
|
|
140
|
+
set(configuration);
|
|
141
|
+
}
|
|
142
|
+
else {
|
|
143
|
+
const { set } = this.settingService.create(key, {
|
|
144
|
+
type: (_c = gridOption === null || gridOption === void 0 ? void 0 : gridOption.config) === null || _c === void 0 ? void 0 : _c.storage,
|
|
145
|
+
args: (_d = gridOption === null || gridOption === void 0 ? void 0 : gridOption.config) === null || _d === void 0 ? void 0 : _d.args,
|
|
146
|
+
});
|
|
147
|
+
set(configuration);
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
return JSON.parse(JSON.stringify(configuration));
|
|
151
|
+
});
|
|
152
|
+
_remove.set(this, (gridOption) => {
|
|
153
|
+
return () => {
|
|
154
|
+
var _a, _b, _c, _d;
|
|
155
|
+
const key = __classPrivateFieldGet(this, _getKey).call(this, gridOption);
|
|
156
|
+
if (key) {
|
|
157
|
+
if (((_a = gridOption === null || gridOption === void 0 ? void 0 : gridOption.config) === null || _a === void 0 ? void 0 : _a.storage) === 'server') {
|
|
158
|
+
const { remove } = this.settingService.createServer(key, {
|
|
159
|
+
args: (_b = gridOption === null || gridOption === void 0 ? void 0 : gridOption.config) === null || _b === void 0 ? void 0 : _b.args,
|
|
160
|
+
});
|
|
161
|
+
remove();
|
|
162
|
+
}
|
|
163
|
+
else {
|
|
164
|
+
const { remove } = this.settingService.create(key, {
|
|
165
|
+
type: (_c = gridOption === null || gridOption === void 0 ? void 0 : gridOption.config) === null || _c === void 0 ? void 0 : _c.storage,
|
|
166
|
+
args: (_d = gridOption === null || gridOption === void 0 ? void 0 : gridOption.config) === null || _d === void 0 ? void 0 : _d.args,
|
|
167
|
+
});
|
|
168
|
+
remove();
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
};
|
|
172
|
+
});
|
|
173
|
+
// get = async (gridOption: SdGridMaterialOption): Promise<SdGridConfiguration> => {
|
|
174
|
+
// if (!gridOption?.key) {
|
|
175
|
+
// return this.#getDefaultConfiguration(gridOption);
|
|
176
|
+
// }
|
|
177
|
+
// const { key, columns } = gridOption;
|
|
178
|
+
// const configuration: SdGridConfiguration = await this.settingService.get(this.#getKey(key)).catch(() => undefined);
|
|
179
|
+
// if (!configuration?.columns) {
|
|
180
|
+
// this.settingService.remove(this.#getKey(key)).catch(console.error);
|
|
181
|
+
// return this.#getDefaultConfiguration(gridOption);
|
|
182
|
+
// }
|
|
183
|
+
// configuration.columns = configuration.columns
|
|
184
|
+
// .filter(column => columns.some(e => !e.hidden && e.field === column.origin.field));
|
|
185
|
+
// // Thêm những column mới vào storage nếu có
|
|
186
|
+
// columns.forEach(column => {
|
|
187
|
+
// const col = configuration.columns.find(e => e.origin?.field === column.field);
|
|
188
|
+
// if (!col) {
|
|
189
|
+
// configuration.columns.push({
|
|
190
|
+
// origin: {
|
|
191
|
+
// field: column.field,
|
|
192
|
+
// title: column.title,
|
|
193
|
+
// width: column.width,
|
|
194
|
+
// invisible: column.invisible,
|
|
195
|
+
// },
|
|
196
|
+
// invisible: column.invisible,
|
|
197
|
+
// fixed: false
|
|
198
|
+
// });
|
|
199
|
+
// } else {
|
|
200
|
+
// col.origin = {
|
|
201
|
+
// field: column.field,
|
|
202
|
+
// title: column.title,
|
|
203
|
+
// width: column.width,
|
|
204
|
+
// invisible: column.invisible
|
|
205
|
+
// };
|
|
206
|
+
// }
|
|
207
|
+
// });
|
|
208
|
+
// return configuration;
|
|
209
|
+
// }
|
|
210
|
+
// set = async (key: string, configuration: SdGridConfiguration): Promise<SdGridConfiguration> => {
|
|
211
|
+
// if (key) {
|
|
212
|
+
// this.settingService.set(this.#getKey(key), configuration);
|
|
213
|
+
// }
|
|
214
|
+
// return configuration;
|
|
215
|
+
// }
|
|
216
|
+
// remove = (key: string) => {
|
|
217
|
+
// if (key) {
|
|
218
|
+
// this.settingService.remove(this.#getKey(key));
|
|
219
|
+
// }
|
|
220
|
+
// }
|
|
221
|
+
this.generateConfigurationResult = (configuration, gridOption, sdSubInformation) => {
|
|
222
|
+
var _a, _b;
|
|
223
|
+
const result = {
|
|
224
|
+
column: {},
|
|
225
|
+
fixedColumn: {},
|
|
226
|
+
firstColumns: [],
|
|
227
|
+
secondColumns: [],
|
|
228
|
+
firstHeaders: [],
|
|
229
|
+
secondHeaders: [],
|
|
230
|
+
displayedColumns: [],
|
|
231
|
+
displayedFooters: [],
|
|
232
|
+
multipleHeader: false,
|
|
233
|
+
};
|
|
234
|
+
const { selector, commands, group } = gridOption || {};
|
|
235
|
+
if (selector === null || selector === void 0 ? void 0 : selector.visible) {
|
|
236
|
+
result.firstHeaders.push(__classPrivateFieldGet(this, _COLUMNS).SELECTION);
|
|
237
|
+
result.displayedColumns.push(__classPrivateFieldGet(this, _COLUMNS).SELECTION);
|
|
238
|
+
}
|
|
239
|
+
if (commands === null || commands === void 0 ? void 0 : commands.length) {
|
|
240
|
+
result.firstHeaders.push(__classPrivateFieldGet(this, _COLUMNS).COMMAND);
|
|
241
|
+
result.displayedColumns.push(__classPrivateFieldGet(this, _COLUMNS).COMMAND);
|
|
242
|
+
}
|
|
243
|
+
if ((_a = group === null || group === void 0 ? void 0 : group.fields) === null || _a === void 0 ? void 0 : _a.length) {
|
|
244
|
+
result.firstHeaders.push(__classPrivateFieldGet(this, _COLUMNS).GROUP);
|
|
245
|
+
result.displayedColumns.push(__classPrivateFieldGet(this, _COLUMNS).GROUP);
|
|
246
|
+
}
|
|
247
|
+
(_b = configuration === null || configuration === void 0 ? void 0 : configuration.columns) === null || _b === void 0 ? void 0 : _b.filter(col => !col.invisible).forEach(col => {
|
|
248
|
+
var _a;
|
|
249
|
+
const column = gridOption === null || gridOption === void 0 ? void 0 : gridOption.columns.find(e => e.field === col.origin.field);
|
|
250
|
+
if (column) {
|
|
251
|
+
result.column[col.origin.field] = {
|
|
252
|
+
title: col.title || col.origin.title,
|
|
253
|
+
width: col.width || col.origin.width,
|
|
254
|
+
};
|
|
255
|
+
if (col.fixed) {
|
|
256
|
+
result.fixedColumn[col.origin.field] = {
|
|
257
|
+
title: col.title || col.origin.title,
|
|
258
|
+
width: col.width || col.origin.width,
|
|
259
|
+
};
|
|
260
|
+
}
|
|
261
|
+
result.firstColumns.push(Object.assign(Object.assign({}, column), { title: col.title || col.origin.title, width: col.width || col.origin.width }));
|
|
262
|
+
result.firstHeaders.push(col.origin.field);
|
|
263
|
+
result.displayedColumns.push(col.origin.field);
|
|
264
|
+
if (column.type === 'children') {
|
|
265
|
+
(_a = column.children) === null || _a === void 0 ? void 0 : _a.forEach(childColumn => {
|
|
266
|
+
result.secondColumns.push(childColumn);
|
|
267
|
+
result.secondHeaders.push(childColumn.field);
|
|
268
|
+
result.displayedColumns.push(childColumn.field);
|
|
269
|
+
});
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
});
|
|
273
|
+
if (sdSubInformation === null || sdSubInformation === void 0 ? void 0 : sdSubInformation.templateRef) {
|
|
274
|
+
result.firstHeaders.push(__classPrivateFieldGet(this, _COLUMNS).SUBINFORMATION);
|
|
275
|
+
result.displayedColumns.push(__classPrivateFieldGet(this, _COLUMNS).SUBINFORMATION);
|
|
276
|
+
}
|
|
277
|
+
result.multipleHeader = result.secondHeaders.length > 0;
|
|
278
|
+
// Sub infomation không thể có footer
|
|
279
|
+
result.displayedFooters = result.displayedColumns.filter(val => val !== __classPrivateFieldGet(this, _COLUMNS).SUBINFORMATION);
|
|
280
|
+
return result;
|
|
281
|
+
};
|
|
282
|
+
}
|
|
283
|
+
}
|
|
284
|
+
_COLUMNS = new WeakMap(), _cache = new WeakMap(), _getKey = new WeakMap(), _default = new WeakMap(), _load = new WeakMap(), _get = new WeakMap(), _set = new WeakMap(), _remove = new WeakMap();
|
|
285
|
+
SdTableConfigurationService.decorators = [
|
|
286
|
+
{ type: Injectable }
|
|
287
|
+
];
|
|
288
|
+
SdTableConfigurationService.ctorParameters = () => [
|
|
289
|
+
{ type: SdSettingService },
|
|
290
|
+
{ type: undefined, decorators: [{ type: Inject, args: [TABLE_CONFIG,] }, { type: Optional }] }
|
|
291
|
+
];
|
|
292
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtY29uZmlndXJhdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL25naGlhdHQxNV9vbmVtb3VudC9Eb2N1bWVudHMvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS90YWJsZS8iLCJzb3VyY2VzIjpbInNyYy9saWIvc2VydmljZXMvdGFibGUtY29uZmlndXJhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzdELE9BQU8sSUFBSSxNQUFNLGFBQWEsQ0FBQztBQUMvQixPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQVM1RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBRS9CLE9BQU8sRUFBRSxZQUFZLEVBQXlCLE1BQU0scUNBQXFDLENBQUM7QUFHMUYsTUFBTSxPQUFPLDJCQUEyQjtJQVl0QyxZQUNVLGNBQWdDLEVBQ0MseUJBQWdEO1FBRGpGLG1CQUFjLEdBQWQsY0FBYyxDQUFrQjtRQUNDLDhCQUF5QixHQUF6Qix5QkFBeUIsQ0FBdUI7UUFiM0YsbUJBQVc7WUFDVCxnQkFBZ0IsRUFBRSxvQkFBb0I7WUFDdEMsTUFBTSxFQUFFLFVBQVU7WUFDbEIsY0FBYyxFQUFFLHdCQUF3QjtZQUN4QyxPQUFPLEVBQUUsV0FBVztZQUNwQixTQUFTLEVBQUUsYUFBYTtZQUN4QixLQUFLLEVBQUUsU0FBUztTQUNqQixFQUFDO1FBQ0YsaUJBRUksRUFBRSxFQUFDO1FBTVAsU0FBSSxHQUFHLENBQUMsR0FBVyxFQUFFLFVBQXlCLEVBQUUsRUFBRTtZQUNoRCxJQUFJLENBQUMscUNBQVksR0FBRyxDQUFDLEVBQUU7Z0JBQ3JCLE1BQU0sT0FBTyxHQUFHLElBQUksT0FBTyxFQUF1QixDQUFDO2dCQUNuRCxxQ0FBWSxHQUFHLENBQUMsR0FBRztvQkFDakIsSUFB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O1lBQ0QsTUFBTSxDQUFDLGNBQWMsR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7WUFDeEQscUNBQXFDO1lBQ3JDLE1BQU0sQ0FBQyxnQkFBZ0IsR0FBRyxNQUFNLENBQUMsZ0JBQWdCLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLHVDQUFjLGNBQWMsQ0FBQyxDQUFDO1lBQ3RHLE9BQU8sTUFBTSxDQUFDO1FBQ2hCLENBQUMsQ0FBQztJQXBSQyxDQUFDOzs7O1lBaEJMLFVBQVU7OztZQWJGLGdCQUFnQjs0Q0E0QnBCLE1BQU0sU0FBQyxZQUFZLGNBQUcsUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IGhhc2ggZnJvbSAnb2JqZWN0LWhhc2gnO1xyXG5pbXBvcnQgeyBTZFNldHRpbmdTZXJ2aWNlIH0gZnJvbSAnQHNkLWFuZ3VsYXIvY29yZS9zZXR0aW5nJztcclxuaW1wb3J0IHsgU2RUYWJsZU9wdGlvbiB9IGZyb20gJy4uL21vZGVscy90YWJsZS1vcHRpb24ubW9kZWwnO1xyXG5pbXBvcnQge1xyXG4gIFNkQ29sdW1uQ29uZmlndXJhdGlvbixcclxuICBTZEdyaWRDb25maWd1cmF0aW9uLFxyXG4gIFNkR3JpZENvbmZpZ3VyYXRpb25DYWNoZSxcclxuICBTZEdyaWRDb25maWd1cmF0aW9uUmVzdWx0LFxyXG59IGZyb20gJy4uL21vZGVscy90YWJsZS1vcHRpb24tY29uZmlnLm1vZGVsJztcclxuaW1wb3J0IHsgU2RNYXRlcmlhbFN1YkluZm9ybWF0aW9uRGVmRGlyZWN0aXZlIH0gZnJvbSAnLi4vZGlyZWN0aXZlcy9zZC1tYXRlcmlhbC1zdWItaW5mb3JtYXRpb24tZGVmLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgU2RUYWJsZUNvbHVtbiB9IGZyb20gJy4uL21vZGVscy90YWJsZS1jb2x1bW4ubW9kZWwnO1xyXG5pbXBvcnQgeyBUQUJMRV9DT05GSUcsIElTZFRhYmxlQ29uZmlndXJhdGlvbiB9IGZyb20gJy4uL21vZGVscy90YWJsZS1jb25maWd1cmF0aW9uLm1vZGVsJztcclxuXHJcbkBJbmplY3RhYmxlKClcclxuZXhwb3J0IGNsYXNzIFNkVGFibGVDb25maWd1cmF0aW9uU2VydmljZSB7XHJcbiAgI0NPTFVNTlMgPSB7XHJcbiAgICBFRElUT1JWQUxJREFUSU9OOiAnc2RFZGl0b3JWYWxpZGF0aW9uJyxcclxuICAgIEVESVRPUjogJ3NkRWRpdG9yJyxcclxuICAgIFNVQklORk9STUFUSU9OOiAnc2RTdWJJbmZvcm1hdGlvbkFjdGlvbicsXHJcbiAgICBDT01NQU5EOiAnc2RDb21tYW5kJyxcclxuICAgIFNFTEVDVElPTjogJ3NkU2VsZWN0aW9uJyxcclxuICAgIEdST1VQOiAnc2RHcm91cCcsXHJcbiAgfTtcclxuICAjY2FjaGU6IHtcclxuICAgIFtrZXk6IHN0cmluZ106IFNkR3JpZENvbmZpZ3VyYXRpb25DYWNoZTtcclxuICB9ID0ge307XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHNldHRpbmdTZXJ2aWNlOiBTZFNldHRpbmdTZXJ2aWNlLFxyXG4gICAgQEluamVjdChUQUJMRV9DT05GSUcpIEBPcHRpb25hbCgpIHB1YmxpYyBncmlkTWF0ZXJpYWxDb25maWd1cmF0aW9uOiBJU2RUYWJsZUNvbmZpZ3VyYXRpb25cclxuICApIHt9XHJcblxyXG4gIGluaXQgPSAoa2V5OiBzdHJpbmcsIGdyaWRPcHRpb246IFNkVGFibGVPcHRpb24pID0+IHtcclxuICAgIGlmICghdGhpcy4jY2FjaGVba2V5XSkge1xyXG4gICAgICBjb25zdCBzdWJqZWN0ID0gbmV3IFN1YmplY3Q8U2RHcmlkQ29uZmlndXJhdGlvbj4oKTtcclxuICAgICAgdGhpcy4jY2FjaGVba2V5XSA9IHtcclxuICAgICAgICBsb2FkOiB0aGlzLiNsb2FkKGdyaWRPcHRpb24sIHN1YmplY3QpLFxyXG4gICAgICAgIGdldDogdGhpcy4jZ2V0KGdyaWRPcHRpb24pLFxyXG4gICAgICAgIHNldDogKGNvbmZpZ3VyYXRpb246IFNkR3JpZENvbmZpZ3VyYXRpb24pID0+IHtcclxuICAgICAgICAgIGNvbmZpZ3VyYXRpb24gPSB0aGlzLiNzZXQoZ3JpZE9wdGlvbiwgY29uZmlndXJhdGlvbik7XHJcbiAgICAgICAgICBzdWJqZWN0Lm5leHQoeyAuLi5jb25maWd1cmF0aW9uIH0pO1xyXG4gICAgICAgICAgcmV0dXJuIGNvbmZpZ3VyYXRpb247XHJcbiAgICAgICAgfSxcclxuICAgICAgICByZW1vdmU6ICgpID0+IHtcclxuICAgICAgICAgIHRoaXMuI3JlbW92ZShncmlkT3B0aW9uKSgpO1xyXG4gICAgICAgICAgc3ViamVjdC5uZXh0KHRoaXMuI2RlZmF1bHQoZ3JpZE9wdGlvbikpO1xyXG4gICAgICAgIH0sXHJcbiAgICAgICAgb2JzZXJ2ZXI6IHN1YmplY3QsXHJcbiAgICAgIH07XHJcbiAgICB9XHJcbiAgICByZXR1cm4gdGhpcy4jY2FjaGVba2V5XTtcclxuICB9O1xyXG5cclxuICAjZ2V0S2V5ID0gKGdyaWRPcHRpb246IFNkVGFibGVPcHRpb24pID0+IHtcclxuICAgIGNvbnN0IHByZWZpeCA9ICdjOWU5NDgzNi02YWNlLTRhZWItYjE0OC00ZjBiZTYzNTg5ZWUnO1xyXG4gICAgaWYgKCFncmlkT3B0aW9uPy5jb25maWc/LmtleSAmJiAhZ3JpZE9wdGlvbj8ua2V5KSB7XHJcbiAgICAgIHJldHVybiBudWxsO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGhhc2goe1xyXG4gICAgICBwcmVmaXgsXHJcbiAgICAgIGtleTogZ3JpZE9wdGlvbj8uY29uZmlnPy5rZXkgfHwgIWdyaWRPcHRpb24/LmtleSxcclxuICAgIH0pO1xyXG4gIH07XHJcblxyXG4gICNkZWZhdWx0ID0gKGdyaWRPcHRpb246IFNkVGFibGVPcHRpb24pOiBTZEdyaWRDb25maWd1cmF0aW9uID0+IHtcclxuICAgIGNvbnN0IGNvbHVtbnM6IFNkQ29sdW1uQ29uZmlndXJhdGlvbltdID1cclxuICAgICAgZ3JpZE9wdGlvbj8uY29sdW1uc1xyXG4gICAgICAgID8uZmlsdGVyKGUgPT4gIWUuaGlkZGVuKVxyXG4gICAgICAgIC5tYXAoZSA9PiAoe1xyXG4gICAgICAgICAgb3JpZ2luOiB7XHJcbiAgICAgICAgICAgIGZpZWxkOiBlLmZpZWxkLFxyXG4gICAgICAgICAgICB0aXRsZTogZS50aXRsZSxcclxuICAgICAgICAgICAgd2lkdGg6IGUud2lkdGgsXHJcbiAgICAgICAgICAgIGludmlzaWJsZTogZS5pbnZpc2libGUsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgaW52aXNpYmxlOiBlLmludmlzaWJsZSxcclxuICAgICAgICAgIGZpeGVkOiBmYWxzZSxcclxuICAgICAgICB9KSkgfHwgW107XHJcbiAgICByZXR1cm4ge1xyXG4gICAgICBjb2x1bW5zLFxyXG4gICAgfTtcclxuICB9O1xyXG5cclxuICAjbG9hZCA9IChncmlkT3B0aW9uOiBTZFRhYmxlT3B0aW9uLCBzdWJqZWN0OiBTdWJqZWN0PFNkR3JpZENvbmZpZ3VyYXRpb24+KSA9PiB7XHJcbiAgICByZXR1cm4gYXN5bmMgKCkgPT4ge1xyXG4gICAgICBjb25zdCBnZXQgPSB0aGlzLiNnZXQoZ3JpZE9wdGlvbik7XHJcbiAgICAgIGNvbnN0IGNvbmZpZ3VyYXRpb24gPSBhd2FpdCBnZXQoKTtcclxuICAgICAgc3ViamVjdC5uZXh0KHsgLi4uY29uZmlndXJhdGlvbiB9KTtcclxuICAgIH07XHJcbiAgfTtcclxuXHJcbiAgI2dldCA9IChncmlkT3B0aW9uOiBTZFRhYmxlT3B0aW9uKSA9PiB7XHJcbiAgICByZXR1cm4gYXN5bmMgKCkgPT4ge1xyXG4gICAgICBjb25zdCBrZXkgPSB0aGlzLiNnZXRLZXkoZ3JpZE9wdGlvbik7XHJcbiAgICAgIGlmICgha2V5KSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuI2RlZmF1bHQoZ3JpZE9wdGlvbik7XHJcbiAgICAgIH1cclxuICAgICAgY29uc3QgeyBjb2x1bW5zLCBjb25maWcgfSA9IGdyaWRPcHRpb247XHJcbiAgICAgIGxldCBjb25maWd1cmF0aW9uOiBTZEdyaWRDb25maWd1cmF0aW9uO1xyXG4gICAgICBpZiAoY29uZmlnPy5zdG9yYWdlID09PSAnc2VydmVyJykge1xyXG4gICAgICAgIGNvbnN0IHsgZ2V0LCByZW1vdmUgfSA9IHRoaXMuc2V0dGluZ1NlcnZpY2UuY3JlYXRlU2VydmVyPFNkR3JpZENvbmZpZ3VyYXRpb24+KGtleSwge1xyXG4gICAgICAgICAgYXJnczogY29uZmlnPy5hcmdzLFxyXG4gICAgICAgIH0pO1xyXG4gICAgICAgIGNvbmZpZ3VyYXRpb24gPSBhd2FpdCBnZXQoKS5jYXRjaCgoKSA9PiB1bmRlZmluZWQpO1xyXG4gICAgICAgIGlmICghY29uZmlndXJhdGlvbj8uY29sdW1ucykge1xyXG4gICAgICAgICAgcmVtb3ZlKCkuY2F0Y2goY29uc29sZS5lcnJvcik7XHJcbiAgICAgICAgICByZXR1cm4gdGhpcy4jZGVmYXVsdChncmlkT3B0aW9uKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgY29uc3QgeyBnZXQsIHJlbW92ZSB9ID0gdGhpcy5zZXR0aW5nU2VydmljZS5jcmVhdGU8U2RHcmlkQ29uZmlndXJhdGlvbj4oa2V5LCB7XHJcbiAgICAgICAgICB0eXBlOiBjb25maWc/LnN0b3JhZ2UsXHJcbiAgICAgICAgICBhcmdzOiBjb25maWc/LmFyZ3MsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgY29uZmlndXJhdGlvbiA9IGdldCgpO1xyXG4gICAgICAgIGlmICghY29uZmlndXJhdGlvbj8uY29sdW1ucykge1xyXG4gICAgICAgICAgcmVtb3ZlKCk7XHJcbiAgICAgICAgICByZXR1cm4gdGhpcy4jZGVmYXVsdChncmlkT3B0aW9uKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGNvbmZpZ3VyYXRpb24uY29sdW1ucyA9IGNvbmZpZ3VyYXRpb24uY29sdW1ucy5maWx0ZXIoY29sdW1uID0+IGNvbHVtbnMuc29tZShlID0+ICFlLmhpZGRlbiAmJiBlLmZpZWxkID09PSBjb2x1bW4ub3JpZ2luLmZpZWxkKSk7XHJcbiAgICAgIC8vIFRow6ptIG5o4buvbmcgY29sdW1uIG3hu5tpIHbDoG8gc3RvcmFnZSBu4bq/dSBjw7NcclxuICAgICAgY29sdW1ucy5mb3JFYWNoKGNvbHVtbiA9PiB7XHJcbiAgICAgICAgY29uc3QgY29sID0gY29uZmlndXJhdGlvbi5jb2x1bW5zLmZpbmQoZSA9PiBlLm9yaWdpbj8uZmllbGQgPT09IGNvbHVtbi5maWVsZCk7XHJcbiAgICAgICAgaWYgKCFjb2wpIHtcclxuICAgICAgICAgIGNvbmZpZ3VyYXRpb24uY29sdW1ucy5wdXNoKHtcclxuICAgICAgICAgICAgb3JpZ2luOiB7XHJcbiAgICAgICAgICAgICAgZmllbGQ6IGNvbHVtbi5maWVsZCxcclxuICAgICAgICAgICAgICB0aXRsZTogY29sdW1uLnRpdGxlLFxyXG4gICAgICAgICAgICAgIHdpZHRoOiBjb2x1bW4ud2lkdGgsXHJcbiAgICAgICAgICAgICAgaW52aXNpYmxlOiBjb2x1bW4uaW52aXNpYmxlLFxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBpbnZpc2libGU6IGNvbHVtbi5pbnZpc2libGUsXHJcbiAgICAgICAgICAgIGZpeGVkOiBmYWxzZSxcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBjb2wub3JpZ2luID0ge1xyXG4gICAgICAgICAgICBmaWVsZDogY29sdW1uLmZpZWxkLFxyXG4gICAgICAgICAgICB0aXRsZTogY29sdW1uLnRpdGxlLFxyXG4gICAgICAgICAgICB3aWR0aDogY29sdW1uLndpZHRoLFxyXG4gICAgICAgICAgICBpbnZpc2libGU6IGNvbHVtbi5pbnZpc2libGUsXHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgIH1cclxuICAgICAgfSk7XHJcbiAgICAgIHJldHVybiBjb25maWd1cmF0aW9uO1xyXG4gICAgfTtcclxuICB9O1xyXG5cclxuICAjc2V0ID0gKGdyaWRPcHRpb246IFNkVGFibGVPcHRpb24sIGNvbmZpZ3VyYXRpb246IFNkR3JpZENvbmZpZ3VyYXRpb24pID0+IHtcclxuICAgIGNvbnN0IGtleSA9IHRoaXMuI2dldEtleShncmlkT3B0aW9uKTtcclxuICAgIGlmIChrZXkpIHtcclxuICAgICAgaWYgKGdyaWRPcHRpb24/LmNvbmZpZz8uc3RvcmFnZSA9PT0gJ3NlcnZlcicpIHtcclxuICAgICAgICBjb25zdCB7IHNldCB9ID0gdGhpcy5zZXR0aW5nU2VydmljZS5jcmVhdGVTZXJ2ZXI8U2RHcmlkQ29uZmlndXJhdGlvbj4oa2V5LCB7XHJcbiAgICAgICAgICBhcmdzOiBncmlkT3B0aW9uPy5jb25maWc/LmFyZ3MsXHJcbiAgICAgICAgfSk7XHJcbiAgICAgICAgc2V0KGNvbmZpZ3VyYXRpb24pO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGNvbnN0IHsgc2V0IH0gPSB0aGlzLnNldHRpbmdTZXJ2aWNlLmNyZWF0ZTxTZEdyaWRDb25maWd1cmF0aW9uPihrZXksIHtcclxuICAgICAgICAgIHR5cGU6IGdyaWRPcHRpb24/LmNvbmZpZz8uc3RvcmFnZSxcclxuICAgICAgICAgIGFyZ3M6IGdyaWRPcHRpb24/LmNvbmZpZz8uYXJncyxcclxuICAgICAgICB9KTtcclxuICAgICAgICBzZXQoY29uZmlndXJhdGlvbik7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGNvbmZpZ3VyYXRpb24pKTtcclxuICB9O1xyXG5cclxuICAjcmVtb3ZlID0gKGdyaWRPcHRpb246IFNkVGFibGVPcHRpb24pID0+IHtcclxuICAgIHJldHVybiAoKSA9PiB7XHJcbiAgICAgIGNvbnN0IGtleSA9IHRoaXMuI2dldEtleShncmlkT3B0aW9uKTtcclxuICAgICAgaWYgKGtleSkge1xyXG4gICAgICAgIGlmIChncmlkT3B0aW9uPy5jb25maWc/LnN0b3JhZ2UgPT09ICdzZXJ2ZXInKSB7XHJcbiAgICAgICAgICBjb25zdCB7IHJlbW92ZSB9ID0gdGhpcy5zZXR0aW5nU2VydmljZS5jcmVhdGVTZXJ2ZXI8U2RHcmlkQ29uZmlndXJhdGlvbj4oa2V5LCB7XHJcbiAgICAgICAgICAgIGFyZ3M6IGdyaWRPcHRpb24/LmNvbmZpZz8uYXJncyxcclxuICAgICAgICAgIH0pO1xyXG4gICAgICAgICAgcmVtb3ZlKCk7XHJcbiAgICAgICAgfSBlbHNlIHtcclxuICAgICAgICAgIGNvbnN0IHsgcmVtb3ZlIH0gPSB0aGlzLnNldHRpbmdTZXJ2aWNlLmNyZWF0ZTxTZEdyaWRDb25maWd1cmF0aW9uPihrZXksIHtcclxuICAgICAgICAgICAgdHlwZTogZ3JpZE9wdGlvbj8uY29uZmlnPy5zdG9yYWdlLFxyXG4gICAgICAgICAgICBhcmdzOiBncmlkT3B0aW9uPy5jb25maWc/LmFyZ3MsXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICAgIHJlbW92ZSgpO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfTtcclxuICB9O1xyXG5cclxuICAvLyBnZXQgPSBhc3luYyAoZ3JpZE9wdGlvbjogU2RHcmlkTWF0ZXJpYWxPcHRpb24pOiBQcm9taXNlPFNkR3JpZENvbmZpZ3VyYXRpb24+ID0+IHtcclxuICAvLyAgIGlmICghZ3JpZE9wdGlvbj8ua2V5KSB7XHJcbiAgLy8gICAgIHJldHVybiB0aGlzLiNnZXREZWZhdWx0Q29uZmlndXJhdGlvbihncmlkT3B0aW9uKTtcclxuICAvLyAgIH1cclxuICAvLyAgIGNvbnN0IHsga2V5LCBjb2x1bW5zIH0gPSBncmlkT3B0aW9uO1xyXG4gIC8vICAgY29uc3QgY29uZmlndXJhdGlvbjogU2RHcmlkQ29uZmlndXJhdGlvbiA9IGF3YWl0IHRoaXMuc2V0dGluZ1NlcnZpY2UuZ2V0KHRoaXMuI2dldEtleShrZXkpKS5jYXRjaCgoKSA9PiB1bmRlZmluZWQpO1xyXG4gIC8vICAgaWYgKCFjb25maWd1cmF0aW9uPy5jb2x1bW5zKSB7XHJcbiAgLy8gICAgIHRoaXMuc2V0dGluZ1NlcnZpY2UucmVtb3ZlKHRoaXMuI2dldEtleShrZXkpKS5jYXRjaChjb25zb2xlLmVycm9yKTtcclxuICAvLyAgICAgcmV0dXJuIHRoaXMuI2dldERlZmF1bHRDb25maWd1cmF0aW9uKGdyaWRPcHRpb24pO1xyXG4gIC8vICAgfVxyXG4gIC8vICAgY29uZmlndXJhdGlvbi5jb2x1bW5zID0gY29uZmlndXJhdGlvbi5jb2x1bW5zXHJcbiAgLy8gICAgIC5maWx0ZXIoY29sdW1uID0+IGNvbHVtbnMuc29tZShlID0+ICFlLmhpZGRlbiAmJiBlLmZpZWxkID09PSBjb2x1bW4ub3JpZ2luLmZpZWxkKSk7XHJcbiAgLy8gICAvLyBUaMOqbSBuaOG7r25nIGNvbHVtbiBt4bubaSB2w6BvIHN0b3JhZ2UgbuG6v3UgY8OzXHJcbiAgLy8gICBjb2x1bW5zLmZvckVhY2goY29sdW1uID0+IHtcclxuICAvLyAgICAgY29uc3QgY29sID0gY29uZmlndXJhdGlvbi5jb2x1bW5zLmZpbmQoZSA9PiBlLm9yaWdpbj8uZmllbGQgPT09IGNvbHVtbi5maWVsZCk7XHJcbiAgLy8gICAgIGlmICghY29sKSB7XHJcbiAgLy8gICAgICAgY29uZmlndXJhdGlvbi5jb2x1bW5zLnB1c2goe1xyXG4gIC8vICAgICAgICAgb3JpZ2luOiB7XHJcbiAgLy8gICAgICAgICAgIGZpZWxkOiBjb2x1bW4uZmllbGQsXHJcbiAgLy8gICAgICAgICAgIHRpdGxlOiBjb2x1bW4udGl0bGUsXHJcbiAgLy8gICAgICAgICAgIHdpZHRoOiBjb2x1bW4ud2lkdGgsXHJcbiAgLy8gICAgICAgICAgIGludmlzaWJsZTogY29sdW1uLmludmlzaWJsZSxcclxuICAvLyAgICAgICAgIH0sXHJcbiAgLy8gICAgICAgICBpbnZpc2libGU6IGNvbHVtbi5pbnZpc2libGUsXHJcbiAgLy8gICAgICAgICBmaXhlZDogZmFsc2VcclxuICAvLyAgICAgICB9KTtcclxuICAvLyAgICAgfSBlbHNlIHtcclxuICAvLyAgICAgICBjb2wub3JpZ2luID0ge1xyXG4gIC8vICAgICAgICAgZmllbGQ6IGNvbHVtbi5maWVsZCxcclxuICAvLyAgICAgICAgIHRpdGxlOiBjb2x1bW4udGl0bGUsXHJcbiAgLy8gICAgICAgICB3aWR0aDogY29sdW1uLndpZHRoLFxyXG4gIC8vICAgICAgICAgaW52aXNpYmxlOiBjb2x1bW4uaW52aXNpYmxlXHJcbiAgLy8gICAgICAgfTtcclxuICAvLyAgICAgfVxyXG4gIC8vICAgfSk7XHJcbiAgLy8gICByZXR1cm4gY29uZmlndXJhdGlvbjtcclxuICAvLyB9XHJcblxyXG4gIC8vIHNldCA9IGFzeW5jIChrZXk6IHN0cmluZywgY29uZmlndXJhdGlvbjogU2RHcmlkQ29uZmlndXJhdGlvbik6IFByb21pc2U8U2RHcmlkQ29uZmlndXJhdGlvbj4gPT4ge1xyXG4gIC8vICAgaWYgKGtleSkge1xyXG4gIC8vICAgICB0aGlzLnNldHRpbmdTZXJ2aWNlLnNldCh0aGlzLiNnZXRLZXkoa2V5KSwgY29uZmlndXJhdGlvbik7XHJcbiAgLy8gICB9XHJcbiAgLy8gICByZXR1cm4gY29uZmlndXJhdGlvbjtcclxuICAvLyB9XHJcblxyXG4gIC8vIHJlbW92ZSA9IChrZXk6IHN0cmluZykgPT4ge1xyXG4gIC8vICAgaWYgKGtleSkge1xyXG4gIC8vICAgICB0aGlzLnNldHRpbmdTZXJ2aWNlLnJlbW92ZSh0aGlzLiNnZXRLZXkoa2V5KSk7XHJcbiAgLy8gICB9XHJcbiAgLy8gfVxyXG5cclxuICBnZW5lcmF0ZUNvbmZpZ3VyYXRpb25SZXN1bHQgPSAoXHJcbiAgICBjb25maWd1cmF0aW9uOiBTZEdyaWRDb25maWd1cmF0aW9uLFxyXG4gICAgZ3JpZE9wdGlvbjogU2RUYWJsZU9wdGlvbixcclxuICAgIHNkU3ViSW5mb3JtYXRpb246IFNkTWF0ZXJpYWxTdWJJbmZvcm1hdGlvbkRlZkRpcmVjdGl2ZVxyXG4gICkgPT4ge1xyXG4gICAgY29uc3QgcmVzdWx0OiBTZEdyaWRDb25maWd1cmF0aW9uUmVzdWx0ID0ge1xyXG4gICAgICBjb2x1bW46IHt9LFxyXG4gICAgICBmaXhlZENvbHVtbjoge30sXHJcbiAgICAgIGZpcnN0Q29sdW1uczogW10sXHJcbiAgICAgIHNlY29uZENvbHVtbnM6IFtdLFxyXG4gICAgICBmaXJzdEhlYWRlcnM6IFtdLFxyXG4gICAgICBzZWNvbmRIZWFkZXJzOiBbXSxcclxuICAgICAgZGlzcGxheWVkQ29sdW1uczogW10sXHJcbiAgICAgIGRpc3BsYXllZEZvb3RlcnM6IFtdLFxyXG4gICAgICBtdWx0aXBsZUhlYWRlcjogZmFsc2UsXHJcbiAgICB9O1xyXG4gICAgY29uc3QgeyBzZWxlY3RvciwgY29tbWFuZHMsIGdyb3VwIH0gPSBncmlkT3B0aW9uIHx8IHt9O1xyXG4gICAgaWYgKHNlbGVjdG9yPy52aXNpYmxlKSB7XHJcbiAgICAgIHJlc3VsdC5maXJzdEhlYWRlcnMucHVzaCh0aGlzLiNDT0xVTU5TLlNFTEVDVElPTik7XHJcbiAgICAgIHJlc3VsdC5kaXNwbGF5ZWRDb2x1bW5zLnB1c2godGhpcy4jQ09MVU1OUy5TRUxFQ1RJT04pO1xyXG4gICAgfVxyXG4gICAgaWYgKGNvbW1hbmRzPy5sZW5ndGgpIHtcclxuICAgICAgcmVzdWx0LmZpcnN0SGVhZGVycy5wdXNoKHRoaXMuI0NPTFVNTlMuQ09NTUFORCk7XHJcbiAgICAgIHJlc3VsdC5kaXNwbGF5ZWRDb2x1bW5zLnB1c2godGhpcy4jQ09MVU1OUy5DT01NQU5EKTtcclxuICAgIH1cclxuICAgIGlmIChncm91cD8uZmllbGRzPy5sZW5ndGgpIHtcclxuICAgICAgcmVzdWx0LmZpcnN0SGVhZGVycy5wdXNoKHRoaXMuI0NPTFVNTlMuR1JPVVApO1xyXG4gICAgICByZXN1bHQuZGlzcGxheWVkQ29sdW1ucy5wdXNoKHRoaXMuI0NPTFVNTlMuR1JPVVApO1xyXG4gICAgfVxyXG4gICAgY29uZmlndXJhdGlvbj8uY29sdW1uc1xyXG4gICAgICA/LmZpbHRlcihjb2wgPT4gIWNvbC5pbnZpc2libGUpXHJcbiAgICAgIC5mb3JFYWNoKGNvbCA9PiB7XHJcbiAgICAgICAgY29uc3QgY29sdW1uID0gZ3JpZE9wdGlvbj8uY29sdW1ucy5maW5kKGUgPT4gZS5maWVsZCA9PT0gY29sLm9yaWdpbi5maWVsZCk7XHJcbiAgICAgICAgaWYgKGNvbHVtbikge1xyXG4gICAgICAgICAgcmVzdWx0LmNvbHVtbltjb2wub3JpZ2luLmZpZWxkXSA9IHtcclxuICAgICAgICAgICAgdGl0bGU6IGNvbC50aXRsZSB8fCBjb2wub3JpZ2luLnRpdGxlLFxyXG4gICAgICAgICAgICB3aWR0aDogY29sLndpZHRoIHx8IGNvbC5vcmlnaW4ud2lkdGgsXHJcbiAgICAgICAgICB9O1xyXG4gICAgICAgICAgaWYgKGNvbC5maXhlZCkge1xyXG4gICAgICAgICAgICByZXN1bHQuZml4ZWRDb2x1bW5bY29sLm9yaWdpbi5maWVsZF0gPSB7XHJcbiAgICAgICAgICAgICAgdGl0bGU6IGNvbC50aXRsZSB8fCBjb2wub3JpZ2luLnRpdGxlLFxyXG4gICAgICAgICAgICAgIHdpZHRoOiBjb2wud2lkdGggfHwgY29sLm9yaWdpbi53aWR0aCxcclxuICAgICAgICAgICAgfTtcclxuICAgICAgICAgIH1cclxuICAgICAgICAgIHJlc3VsdC5maXJzdENvbHVtbnMucHVzaCh7XHJcbiAgICAgICAgICAgIC4uLmNvbHVtbixcclxuICAgICAgICAgICAgdGl0bGU6IGNvbC50aXRsZSB8fCBjb2wub3JpZ2luLnRpdGxlLFxyXG4gICAgICAgICAgICB3aWR0aDogY29sLndpZHRoIHx8IGNvbC5vcmlnaW4ud2lkdGgsXHJcbiAgICAgICAgICB9KTtcclxuICAgICAgICAgIHJlc3VsdC5maXJzdEhlYWRlcnMucHVzaChjb2wub3JpZ2luLmZpZWxkKTtcclxuICAgICAgICAgIHJlc3VsdC5kaXNwbGF5ZWRDb2x1bW5zLnB1c2goY29sLm9yaWdpbi5maWVsZCk7XHJcbiAgICAgICAgICBpZiAoY29sdW1uLnR5cGUgPT09ICdjaGlsZHJlbicpIHtcclxuICAgICAgICAgICAgY29sdW1uLmNoaWxkcmVuPy5mb3JFYWNoKGNoaWxkQ29sdW1uID0+IHtcclxuICAgICAgICAgICAgICByZXN1bHQuc2Vjb25kQ29sdW1ucy5wdXNoKGNoaWxkQ29sdW1uKTtcclxuICAgICAgICAgICAgICByZXN1bHQuc2Vjb25kSGVhZGVycy5wdXNoKGNoaWxkQ29sdW1uLmZpZWxkKTtcclxuICAgICAgICAgICAgICByZXN1bHQuZGlzcGxheWVkQ29sdW1ucy5wdXNoKGNoaWxkQ29sdW1uLmZpZWxkKTtcclxuICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9KTtcclxuICAgIGlmIChzZFN1YkluZm9ybWF0aW9uPy50ZW1wbGF0ZVJlZikge1xyXG4gICAgICByZXN1bHQuZmlyc3RIZWFkZXJzLnB1c2godGhpcy4jQ09MVU1OUy5TVUJJTkZPUk1BVElPTik7XHJcbiAgICAgIHJlc3VsdC5kaXNwbGF5ZWRDb2x1bW5zLnB1c2godGhpcy4jQ09MVU1OUy5TVUJJTkZPUk1BVElPTik7XHJcbiAgICB9XHJcbiAgICByZXN1bHQubXVsdGlwbGVIZWFkZXIgPSByZXN1bHQuc2Vjb25kSGVhZGVycy5sZW5ndGggPiAwO1xyXG4gICAgLy8gU3ViIGluZm9tYXRpb24ga2jDtG5nIHRo4buDIGPDsyBmb290ZXJcclxuICAgIHJlc3VsdC5kaXNwbGF5ZWRGb290ZXJzID0gcmVzdWx0LmRpc3BsYXllZENvbHVtbnMuZmlsdGVyKHZhbCA9PiB2YWwgIT09IHRoaXMuI0NPTFVNTlMuU1VCSU5GT1JNQVRJT04pO1xyXG4gICAgcmV0dXJuIHJlc3VsdDtcclxuICB9O1xyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export class SdTableQuickFilter {
|
|
2
|
+
}
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtZmlsdGVyLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL25naGlhdHQxNV9vbmVtb3VudC9Eb2N1bWVudHMvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS90YWJsZS8iLCJzb3VyY2VzIjpbInNyYy9saWIvc2VydmljZXMvdGFibGUtZmlsdGVyL3RhYmxlLWZpbHRlci5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxNQUFNLE9BQU8sa0JBQWtCO0NBVzlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xyXG5pbXBvcnQgeyBTZEZpbHRlck9wZXJhdG9yIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RhYmxlLWNvbHVtbi5tb2RlbCc7XHJcblxyXG5leHBvcnQgY2xhc3MgU2RUYWJsZVF1aWNrRmlsdGVyIHtcclxuICBjb2RlOiBzdHJpbmc7XHJcbiAgY29sdW1uRmlsdGVyOiB7XHJcbiAgICBbZmllbGQ6IHN0cmluZ106IGFueTtcclxuICB9O1xyXG4gIGV4dGVybmFsRmlsdGVyOiB7XHJcbiAgICBbZmllbGQ6IHN0cmluZ106IGFueTtcclxuICB9O1xyXG4gIGZpbHRlckRlZjoge1xyXG4gICAgW2ZpZWxkOiBzdHJpbmddOiBhbnk7XHJcbiAgfTtcclxufVxyXG5cclxuZXhwb3J0IGludGVyZmFjZSBTZFRhYmxlRmlsdGVyQ29uZmlndXJhdGlvbiB7XHJcbiAgLy8gc2VsZWN0ZWRRdWlja0ZpbHRlcjogc3RyaW5nO1xyXG4gIC8vIHF1aWNrRmlsdGVyczogU2RHcmlkTWF0ZXJpYWxRdWlja0ZpbHRlcltdO1xyXG5cclxuICBpbmxpbmVDb2x1bW46IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+OyAvLyDhuqhuIGhp4buHbiBmaWx0ZXIgY29sdW1uXHJcbiAgLy8gY29sdW1uRmlsdGVyPzogUmVjb3JkPHN0cmluZywgYW55PjsgLy8gR2nDoSB0cuG7iyBmaWx0ZXIgY29sdW1uXHJcblxyXG4gIGlubGluZUV4dGVybmFsOiBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPjsgLy8g4bqobiBoaeG7h24gZmlsdGVyIGV4dGVybmFsXHJcbiAgLy8gZXh0ZXJuYWxGaWx0ZXI/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+OyAvLyBHacOhIHRy4buLIGZpbHRlciBleHRlcm5hbFxyXG5cclxuICBpbmxpbmVGaWx0ZXJEZWY6IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+OyAvLyDhuqhuIGhp4buHbiBmaWx0ZXIgZGVmXHJcbiAgLy8gZmlsdGVyRGVmPzogUmVjb3JkPHN0cmluZywgYW55PjsgLy8gR2nDoSB0cuG7iyBmaWx0ZXIgZGVmXHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU2RUYWJsZUZpbHRlclZhbHVlIHtcclxuICBjb2x1bW5PcGVyYXRvcj86IFJlY29yZDxzdHJpbmcsIFNkRmlsdGVyT3BlcmF0b3I+O1xyXG5cclxuICBjb2x1bW5GaWx0ZXI/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+OyAvLyBHacOhIHRy4buLIGZpbHRlciBjb2x1bW5cclxuXHJcbiAgZXh0ZXJuYWxGaWx0ZXI/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+OyAvLyBHacOhIHRy4buLIGZpbHRlciBleHRlcm5hbFxyXG5cclxuICBmaWx0ZXJEZWY/OiBSZWNvcmQ8c3RyaW5nLCBhbnk+OyAvLyBHacOhIHRy4buLIGZpbHRlciBkZWZcclxuXHJcbiAgbm90UmVsb2FkPzogYm9vbGVhbjsgLy8gxJDhu4Mgbmjhuq1uIGJp4bq/dCBsw6AgY2jhu4kgc2V0IGdpw6EgdHLhu4ssIGtow7RuZyB0cmlnZ2VyIGNoYW5nZVxyXG59XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNkVGFibGVGaWx0ZXJSZXF1ZXN0IHtcclxuICBjb2x1bW5PcGVyYXRvcjogUmVjb3JkPHN0cmluZywgU2RGaWx0ZXJPcGVyYXRvcj47XHJcbiAgcmF3Q29sdW1uRmlsdGVyOiBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xyXG4gIHJhd0V4dGVybmFsRmlsdGVyOiBSZWNvcmQ8c3RyaW5nLCBhbnk+O1xyXG4gIHJhd0ZpbHRlckRlZjogUmVjb3JkPHN0cmluZywgYW55PjtcclxuICBwYWdlTnVtYmVyOiBudW1iZXI7XHJcbiAgcGFnZVNpemU6IG51bWJlcjtcclxuICBvcmRlckJ5OiBzdHJpbmc7XHJcbiAgb3JkZXJEaXJlY3Rpb246ICdhc2MnIHwgJ2Rlc2MnIHwgJyc7XHJcbiAgaXNFeHBvcnRlZD86IGJvb2xlYW47XHJcbn1cclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU2RUYWJsZU9wdGlvbkZpbHRlciB7XHJcbiAga2V5Pzogc3RyaW5nO1xyXG4gIGNhY2hlRmlsdGVyPzogYm9vbGVhbjtcclxuICBkaXNhYmxlZD86IGJvb2xlYW47XHJcbiAgZXh0ZXJuYWxGaWx0ZXJzPzogU2RUYWJsZUV4dGVybmFsRmlsdGVyW107XHJcbiAgaW5saW5lQ29sdW1uPzogYm9vbGVhbjtcclxuICBzb3J0cz86IHN0cmluZ1tdO1xyXG4gIGVuYWJsZUNvbGxhcHNlPzogYm9vbGVhbjtcclxufVxyXG5cclxuZXhwb3J0IGRlY2xhcmUgdHlwZSBTZFRhYmxlRXh0ZXJuYWxGaWx0ZXIgPVxyXG4gIHwgVGV4dEZpbHRlclxyXG4gIHwgRGF0ZUZpbHRlclxyXG4gIHwgRGF0ZVRpbWVGaWx0ZXJcclxuICB8IERhdGVSYW5nZUZpbHRlclxyXG4gIHwgTnVtYmVyRmlsdGVyXHJcbiAgfCBWYWx1ZXNGaWx0ZXJcclxuICB8IEJvb2xGaWx0ZXI7XHJcblxyXG5pbnRlcmZhY2UgQmFzZUZpbHRlciB7XHJcbiAgZmllbGQ6IHN0cmluZztcclxuICB0aXRsZTogc3RyaW5nO1xyXG4gIGRlZmF1bHRTaG93aW5nPzogYm9vbGVhbjtcclxuICBkaXNhYmxlZD86IGJvb2xlYW47XHJcbn1cclxuXHJcbmludGVyZmFjZSBUZXh0RmlsdGVyIGV4dGVuZHMgQmFzZUZpbHRlciB7XHJcbiAgdHlwZTogJ3N0cmluZyc7XHJcbiAgZGVmYXVsdD86IHN0cmluZztcclxufVxyXG5cclxuaW50ZXJmYWNlIERhdGVGaWx0ZXIgZXh0ZW5kcyBCYXNlRmlsdGVyIHtcclxuICB0eXBlOiAnZGF0ZSc7XHJcbiAgZGVmYXVsdD86IERhdGUgfCBzdHJpbmc7XHJcbiAgbWluRGF0ZT86IHN0cmluZyB8IERhdGU7XHJcbiAgbWF4RGF0ZT86IHN0cmluZyB8IERhdGU7XHJcbn1cclxuXHJcbmludGVyZmFjZSBEYXRlVGltZUZpbHRlciBleHRlbmRzIEJhc2VGaWx0ZXIge1xyXG4gIHR5cGU6ICdkYXRldGltZSc7XHJcbiAgZGVmYXVsdD86IERhdGUgfCBzdHJpbmc7XHJcbiAgbWluRGF0ZT86IHN0cmluZyB8IERhdGU7XHJcbiAgbWF4RGF0ZT86IHN0cmluZyB8IERhdGU7XHJcbn1cclxuXHJcbmludGVyZmFjZSBEYXRlUmFuZ2VGaWx0ZXIgZXh0ZW5kcyBCYXNlRmlsdGVyIHtcclxuICB0eXBlOiAnZGF0ZXJhbmdlJztcclxuICBlbmFibGVUaW1lPzogYm9vbGVhbjtcclxuICBtaW5EYXRlPzogc3RyaW5nIHwgRGF0ZTtcclxuICBtYXhEYXRlPzogc3RyaW5nIHwgRGF0ZTtcclxuICBkZWZhdWx0Pzoge1xyXG4gICAgZnJvbT86IERhdGUgfCBzdHJpbmc7XHJcbiAgICB0bz86IERhdGUgfCBzdHJpbmc7XHJcbiAgfTtcclxufVxyXG5cclxuaW50ZXJmYWNlIE51bWJlckZpbHRlciBleHRlbmRzIEJhc2VGaWx0ZXIge1xyXG4gIHR5cGU6ICdudW1iZXInO1xyXG4gIGRlZmF1bHQ/OiBudW1iZXI7XHJcbn1cclxuXHJcbmludGVyZmFjZSBWYWx1ZXNGaWx0ZXIgZXh0ZW5kcyBCYXNlRmlsdGVyIHtcclxuICB0eXBlOiAndmFsdWVzJztcclxuICBvcHRpb24/OiB7XHJcbiAgICBpdGVtczogYW55W10gfCAoKHNlYXJjaFRleHQ/OiBzdHJpbmcpID0+IFByb21pc2U8YW55W10+KTtcclxuICAgIHZhbHVlRmllbGQ6IHN0cmluZztcclxuICAgIGRpc3BsYXlGaWVsZDogc3RyaW5nO1xyXG4gICAgc2VsZWN0aW9uPzogJ0FVVE9DT01QTEVURScgfCAnTVVMVElQTEUnIHwgJ01VTFRJUExFQVVUT0NPTVBMRVRFJztcclxuICAgIHNlbGVjdEFsbD86IGJvb2xlYW47XHJcbiAgfTtcclxuICBkZWZhdWx0Pzogc3RyaW5nIHwgc3RyaW5nW107XHJcbn1cclxuXHJcbmludGVyZmFjZSBCb29sRmlsdGVyIGV4dGVuZHMgQmFzZUZpbHRlciB7XHJcbiAgdHlwZTogJ2Jvb2wnO1xyXG4gIG9wdGlvbj86IHtcclxuICAgIGRpc3BsYXlPblRydWU/OiBzdHJpbmc7XHJcbiAgICBkaXNwbGF5T25GYWxzZT86IHN0cmluZztcclxuICB9O1xyXG4gIGRlZmF1bHQ/OiBib29sZWFuO1xyXG59XHJcblxyXG4vLyBleHBvcnQgaW50ZXJmYWNlIFNkR3JpZE1hdGVyaWFsRmlsdGVyUmVnaXN0ZXIge1xyXG4vLyAgIGdldDogKCkgPT4gU2RHcmlkTWF0ZXJpYWxGaWx0ZXJDb25maWd1cmF0aW9uO1xyXG4vLyAgIHNldDogKGNvbmZpZ3VyYXRpb246IFBhcnRpYWw8U2RHcmlkTWF0ZXJpYWxGaWx0ZXJDb25maWd1cmF0aW9uPikgPT4gU2RHcmlkTWF0ZXJpYWxGaWx0ZXJDb25maWd1cmF0aW9uO1xyXG4vLyAgIHJlbW92ZTogKCkgPT4gdm9pZDtcclxuLy8gICBzdWJqZWN0OiBCZWhhdmlvclN1YmplY3Q8U2RHcmlkTWF0ZXJpYWxGaWx0ZXJDb25maWd1cmF0aW9uPjtcclxuLy8gICBvYnNlcnZlcjogT2JzZXJ2YWJsZTxTZEdyaWRNYXRlcmlhbEZpbHRlckNvbmZpZ3VyYXRpb24+O1xyXG4vLyB9XHJcblxyXG5leHBvcnQgaW50ZXJmYWNlIFNkR3JpZE1hdGVyaWFsRmlsdGVyUmVnaXN0ZXIge1xyXG4gIGNvbmZpZ3VyYXRpb246IHtcclxuICAgIGdldDogKCkgPT4gU2RUYWJsZUZpbHRlckNvbmZpZ3VyYXRpb247XHJcbiAgICBzZXQ6IChjb25maWd1cmF0aW9uOiBQYXJ0aWFsPFNkVGFibGVGaWx0ZXJDb25maWd1cmF0aW9uPikgPT4gU2RUYWJsZUZpbHRlckNvbmZpZ3VyYXRpb247XHJcbiAgICByZW1vdmU6ICgpID0+IHZvaWQ7XHJcbiAgICBvYnNlcnZlcjogT2JzZXJ2YWJsZTxTZFRhYmxlRmlsdGVyQ29uZmlndXJhdGlvbj47XHJcbiAgfTtcclxuICB2YWx1ZToge1xyXG4gICAgZ2V0OiAoKSA9PiBTZFRhYmxlRmlsdGVyVmFsdWU7XHJcbiAgICBzZXQ6ICh2YWx1ZTogUGFydGlhbDxTZFRhYmxlRmlsdGVyVmFsdWU+KSA9PiBTZFRhYmxlRmlsdGVyVmFsdWU7XHJcbiAgICByZW1vdmU6ICgpID0+IHZvaWQ7XHJcbiAgICBvYnNlcnZlcjogT2JzZXJ2YWJsZTxTZFRhYmxlRmlsdGVyVmFsdWU+O1xyXG4gIH07XHJcbn1cclxuIl19
|