ontimize-web-ngx 15.6.0-next.4 → 15.6.0-next.6

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.
Files changed (57) hide show
  1. package/esm2020/lib/components/app-sidenav/menu-group/o-app-sidenav-menu-group.component.mjs +19 -3
  2. package/esm2020/lib/components/app-sidenav/menu-item/o-app-sidenav-menu-item.component.mjs +17 -4
  3. package/esm2020/lib/components/app-sidenav/o-app-sidenav.component.mjs +7 -5
  4. package/esm2020/lib/components/o-form-data-component.class.mjs +2 -2
  5. package/esm2020/lib/components/table/column/cell-editor/o-base-table-cell-editor.class.mjs +2 -2
  6. package/esm2020/lib/components/table/column/cell-renderer/o-base-table-cell-renderer.class.mjs +1 -1
  7. package/esm2020/lib/components/table/column/o-column.class.mjs +2 -1
  8. package/esm2020/lib/components/table/column/o-table-column.component.mjs +9 -4
  9. package/esm2020/lib/components/table/extensions/contextmenu/o-table-context-menu.component.mjs +24 -6
  10. package/esm2020/lib/components/table/extensions/dialog/filter-by-column/o-table-filter-by-column-data-dialog.component.mjs +75 -87
  11. package/esm2020/lib/components/table/extensions/dialog/filter-by-column/o-table-filter-by-column.service.mjs +52 -0
  12. package/esm2020/lib/components/table/extensions/header/table-columns-filter/o-table-columns-filter.component.mjs +12 -4
  13. package/esm2020/lib/components/table/o-table-base.class.mjs +1 -1
  14. package/esm2020/lib/components/table/o-table.component.mjs +99 -9
  15. package/esm2020/lib/components/table/o-table.module.mjs +4 -1
  16. package/esm2020/lib/injection-tokens/index.mjs +2 -1
  17. package/esm2020/lib/interfaces/index.mjs +2 -1
  18. package/esm2020/lib/interfaces/o-table-column.interface.mjs +1 -1
  19. package/esm2020/lib/layouts/app-layout/o-app-layout-base.class.mjs +1 -1
  20. package/esm2020/lib/layouts/app-layout/o-app-layout.component.mjs +26 -9
  21. package/esm2020/lib/services/factories.mjs +7 -2
  22. package/esm2020/lib/services/state/o-table-component-state.class.mjs +7 -1
  23. package/esm2020/lib/services/state/o-table-component-state.service.mjs +8 -2
  24. package/esm2020/lib/types/table/index.mjs +2 -1
  25. package/esm2020/lib/types/table/o-column-value-filter.type.mjs +1 -1
  26. package/esm2020/lib/types/table/o-table-expandable-row-state.type.mjs +2 -0
  27. package/esm2020/lib/util/codes.mjs +3 -1
  28. package/esm2020/lib/util/util.mjs +11 -1
  29. package/fesm2015/ontimize-web-ngx.mjs +364 -116
  30. package/fesm2015/ontimize-web-ngx.mjs.map +1 -1
  31. package/fesm2020/ontimize-web-ngx.mjs +347 -114
  32. package/fesm2020/ontimize-web-ngx.mjs.map +1 -1
  33. package/lib/components/app-sidenav/menu-group/o-app-sidenav-menu-group.component.d.ts +3 -0
  34. package/lib/components/app-sidenav/menu-item/o-app-sidenav-menu-item.component.d.ts +1 -0
  35. package/lib/components/app-sidenav/o-app-sidenav.component.d.ts +2 -1
  36. package/lib/components/table/column/cell-renderer/o-base-table-cell-renderer.class.d.ts +1 -1
  37. package/lib/components/table/column/o-column.class.d.ts +2 -1
  38. package/lib/components/table/column/o-table-column.component.d.ts +2 -2
  39. package/lib/components/table/extensions/contextmenu/o-table-context-menu.component.d.ts +2 -0
  40. package/lib/components/table/extensions/dialog/filter-by-column/o-table-filter-by-column-data-dialog.component.d.ts +9 -6
  41. package/lib/components/table/extensions/dialog/filter-by-column/o-table-filter-by-column.service.d.ts +12 -0
  42. package/lib/components/table/extensions/header/table-columns-filter/o-table-columns-filter.component.d.ts +1 -1
  43. package/lib/components/table/o-table-base.class.d.ts +2 -0
  44. package/lib/components/table/o-table.component.d.ts +12 -2
  45. package/lib/injection-tokens/index.d.ts +2 -0
  46. package/lib/interfaces/index.d.ts +1 -0
  47. package/lib/interfaces/o-table-column.interface.d.ts +2 -1
  48. package/lib/layouts/app-layout/o-app-layout-base.class.d.ts +1 -1
  49. package/lib/layouts/app-layout/o-app-layout.component.d.ts +7 -3
  50. package/lib/services/state/o-table-component-state.class.d.ts +3 -0
  51. package/lib/types/table/index.d.ts +1 -0
  52. package/lib/types/table/o-column-value-filter.type.d.ts +3 -0
  53. package/lib/types/table/o-table-expandable-row-state.type.d.ts +5 -0
  54. package/lib/util/codes.d.ts +3 -0
  55. package/lib/util/util.d.ts +1 -0
  56. package/package.json +1 -1
  57. package/theme.scss +26 -26
@@ -0,0 +1,52 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { ColumnValueFilterOperator } from '../../../../../types/table/o-column-value-filter.type';
3
+ import { Util } from '../../../../../util/util';
4
+ import * as i0 from "@angular/core";
5
+ export class OTableFilterByColumnService {
6
+ constructor() { }
7
+ getColumnDataUsingRenderer(column, tableData) {
8
+ return tableData.map(row => {
9
+ return column.renderer?.getCellData?.(row[column.attr], row) ?? row[column.attr];
10
+ });
11
+ }
12
+ parseListData(filter, column, tableData, isPageable, sourceData) {
13
+ const columnData = [];
14
+ const colRenderedValues = this.getColumnDataUsingRenderer(column, tableData);
15
+ const colValues = tableData.map((elem) => Util.getValueFromPath(elem, column.valueColumn));
16
+ if (Util.isDefined(filter?.availableValues)) {
17
+ return filter.availableValues;
18
+ }
19
+ colRenderedValues.forEach((renderedValue, i) => {
20
+ renderedValue = renderedValue ?? '';
21
+ const alreadyExists = columnData.find(item => item.renderedValue === renderedValue);
22
+ if (!alreadyExists || (isPageable && sourceData === 'all-data')) {
23
+ const selected = filter?.operator === ColumnValueFilterOperator.IN &&
24
+ (filter?.values ?? []).includes(colValues[i]);
25
+ columnData.push({
26
+ renderedValue,
27
+ value: colValues[i],
28
+ rowValue: tableData[i],
29
+ selected,
30
+ tableIndex: i
31
+ });
32
+ }
33
+ });
34
+ return columnData;
35
+ }
36
+ applySelectedValuesToFilter(column, tableData, filter, selectedValues, sourceData, isPageable, getComponentFilterFn) {
37
+ filter.operator = ColumnValueFilterOperator.IN;
38
+ filter.values = selectedValues.map(item => item.value);
39
+ if (sourceData === 'current-page') {
40
+ filter.availableValues = this.parseListData(filter, column, filter.availableValues ?? tableData, isPageable, sourceData);
41
+ }
42
+ else {
43
+ filter.filterExpresion = filter.filterExpresion || getComponentFilterFn();
44
+ }
45
+ }
46
+ }
47
+ OTableFilterByColumnService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OTableFilterByColumnService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
48
+ OTableFilterByColumnService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OTableFilterByColumnService });
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImport: i0, type: OTableFilterByColumnService, decorators: [{
50
+ type: Injectable
51
+ }], ctorParameters: function () { return []; } });
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby10YWJsZS1maWx0ZXItYnktY29sdW1uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbnRpbWl6ZS13ZWItbmd4L3NyYy9saWIvY29tcG9uZW50cy90YWJsZS9leHRlbnNpb25zL2RpYWxvZy9maWx0ZXItYnktY29sdW1uL28tdGFibGUtZmlsdGVyLWJ5LWNvbHVtbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFM0MsT0FBTyxFQUFFLHlCQUF5QixFQUFzQixNQUFNLHVEQUF1RCxDQUFDO0FBRXRILE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUFJaEQsTUFBTSxPQUFPLDJCQUEyQjtJQUN0QyxnQkFBZ0IsQ0FBQztJQU1qQiwwQkFBMEIsQ0FBQyxNQUFlLEVBQUUsU0FBZ0I7UUFDMUQsT0FBTyxTQUFTLENBQUMsR0FBRyxDQUFDLEdBQUcsQ0FBQyxFQUFFO1lBQ3pCLE9BQU8sTUFBTSxDQUFDLFFBQVEsRUFBRSxXQUFXLEVBQUUsQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkYsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBYUQsYUFBYSxDQUNYLE1BQTBCLEVBQzFCLE1BQWUsRUFDZixTQUFnQixFQUNoQixVQUFtQixFQUNuQixVQUF1QztRQUV2QyxNQUFNLFVBQVUsR0FBOEIsRUFBRSxDQUFDO1FBQ2pELE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLDBCQUEwQixDQUFDLE1BQU0sRUFBRSxTQUFTLENBQUMsQ0FBQztRQUM3RSxNQUFNLFNBQVMsR0FBRyxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO1FBRzNGLElBQUksSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsZUFBZSxDQUFDLEVBQUU7WUFDM0MsT0FBTyxNQUFNLENBQUMsZUFBZSxDQUFDO1NBQy9CO1FBRUQsaUJBQWlCLENBQUMsT0FBTyxDQUFDLENBQUMsYUFBYSxFQUFFLENBQUMsRUFBRSxFQUFFO1lBRTdDLGFBQWEsR0FBRyxhQUFhLElBQUksRUFBRSxDQUFDO1lBRXBDLE1BQU0sYUFBYSxHQUFHLFVBQVUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsYUFBYSxLQUFLLGFBQWEsQ0FBQyxDQUFDO1lBR3BGLElBQUksQ0FBQyxhQUFhLElBQUksQ0FBQyxVQUFVLElBQUksVUFBVSxLQUFLLFVBQVUsQ0FBQyxFQUFFO2dCQUMvRCxNQUFNLFFBQVEsR0FBRyxNQUFNLEVBQUUsUUFBUSxLQUFLLHlCQUF5QixDQUFDLEVBQUU7b0JBQ2hFLENBQUMsTUFBTSxFQUFFLE1BQU0sSUFBSSxFQUFFLENBQUMsQ0FBQyxRQUFRLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBRWhELFVBQVUsQ0FBQyxJQUFJLENBQUM7b0JBQ2QsYUFBYTtvQkFDYixLQUFLLEVBQUUsU0FBUyxDQUFDLENBQUMsQ0FBQztvQkFDbkIsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDLENBQUM7b0JBQ3RCLFFBQVE7b0JBQ1IsVUFBVSxFQUFFLENBQUM7aUJBQ2QsQ0FBQyxDQUFDO2FBQ0o7UUFDSCxDQUFDLENBQUMsQ0FBQztRQUNILE9BQU8sVUFBVSxDQUFDO0lBQ3BCLENBQUM7SUFZRCwyQkFBMkIsQ0FDekIsTUFBZSxFQUNmLFNBQWdCLEVBQ2hCLE1BQTBCLEVBQzFCLGNBQXlDLEVBQ3pDLFVBQXVDLEVBQ3ZDLFVBQW1CLEVBQ25CLG9CQUErQjtRQUUvQixNQUFNLENBQUMsUUFBUSxHQUFHLHlCQUF5QixDQUFDLEVBQUUsQ0FBQztRQUMvQyxNQUFNLENBQUMsTUFBTSxHQUFHLGNBQWMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7UUFFdkQsSUFBSSxVQUFVLEtBQUssY0FBYyxFQUFFO1lBQ2pDLE1BQU0sQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQyxlQUFlLElBQUksU0FBUyxFQUFFLFVBQVUsRUFBRSxVQUFVLENBQUMsQ0FBQztTQUMxSDthQUFNO1lBQ0wsTUFBTSxDQUFDLGVBQWUsR0FBRyxNQUFNLENBQUMsZUFBZSxJQUFJLG9CQUFvQixFQUFFLENBQUM7U0FDM0U7SUFDSCxDQUFDOzt3SEExRlUsMkJBQTJCOzRIQUEzQiwyQkFBMkI7MkZBQTNCLDJCQUEyQjtrQkFEdkMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHsgQ29sdW1uVmFsdWVGaWx0ZXJPcGVyYXRvciwgT0NvbHVtblZhbHVlRmlsdGVyIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdHlwZXMvdGFibGUvby1jb2x1bW4tdmFsdWUtZmlsdGVyLnR5cGUnO1xuaW1wb3J0IHsgVGFibGVGaWx0ZXJCeUNvbHVtbkRhdGEgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi90eXBlcy90YWJsZS9vLXRhYmxlLWZpbHRlci1ieS1jb2x1bW4tZGF0YS50eXBlJztcbmltcG9ydCB7IFV0aWwgfSBmcm9tICcuLi8uLi8uLi8uLi8uLi91dGlsL3V0aWwnO1xuaW1wb3J0IHsgT0NvbHVtbiB9IGZyb20gJy4uLy4uLy4uL2NvbHVtbi9vLWNvbHVtbi5jbGFzcyc7XG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBPVGFibGVGaWx0ZXJCeUNvbHVtblNlcnZpY2Uge1xuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIC8qKlxuICogUmV0dXJucyB0aGUgZGlzcGxheWVkIChyZW5kZXJlZCkgdmFsdWVzIGZvciBhIGNvbHVtbiBmcm9tIHRoZSBnaXZlbiB0YWJsZSBkYXRhLlxuICogRmFsbHMgYmFjayB0byByYXcgdmFsdWUgaWYgbm8gcmVuZGVyZXIgaXMgZGVmaW5lZC5cbiAqL1xuICBnZXRDb2x1bW5EYXRhVXNpbmdSZW5kZXJlcihjb2x1bW46IE9Db2x1bW4sIHRhYmxlRGF0YTogYW55W10pOiBhbnlbXSB7XG4gICAgcmV0dXJuIHRhYmxlRGF0YS5tYXAocm93ID0+IHtcbiAgICAgIHJldHVybiBjb2x1bW4ucmVuZGVyZXI/LmdldENlbGxEYXRhPy4ocm93W2NvbHVtbi5hdHRyXSwgcm93KSA/PyByb3dbY29sdW1uLmF0dHJdO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIEdlbmVyYXRlcyBhIHVuaXF1ZSBsaXN0IG9mIGZpbHRlcmFibGUgY29sdW1uIHZhbHVlcywgb3B0aW9uYWxseSBtYXJraW5nIHNlbGVjdGVkIGl0ZW1zLlxuICAgKlxuICAgKiBAcGFyYW0gZmlsdGVyIC0gQ3VycmVudCBmaWx0ZXIgY29uZmlndXJhdGlvbiAoY2FuIGJlIG51bGwpXG4gICAqIEBwYXJhbSBjb2x1bW4gLSBDb2x1bW4gYmVpbmcgZmlsdGVyZWRcbiAgICogQHBhcmFtIHRhYmxlRGF0YSAtIERhdGEgdG8gZXh0cmFjdCB2YWx1ZXMgZnJvbSAocGFnZWQgb3IgZnVsbClcbiAgICogQHBhcmFtIGlzUGFnZWFibGUgLSBXaGV0aGVyIHRoZSB0YWJsZSBpcyBwYWdlYWJsZVxuICAgKiBAcGFyYW0gc291cmNlRGF0YSAtIEluZGljYXRlcyB3aGV0aGVyIGRhdGEgY29tZXMgZnJvbSBjdXJyZW50IHBhZ2Ugb3IgYWxsIGRhdGFcbiAgICogQHJldHVybnMgTGlzdCBvZiBjb2x1bW4gdmFsdWVzIHdpdGggdGhlaXIgcmVuZGVyZWQgdmFsdWUgYW5kIHNlbGVjdGlvbiBzdGF0ZVxuICAgKi9cblxuICBwYXJzZUxpc3REYXRhKFxuICAgIGZpbHRlcjogT0NvbHVtblZhbHVlRmlsdGVyLFxuICAgIGNvbHVtbjogT0NvbHVtbixcbiAgICB0YWJsZURhdGE6IGFueVtdLFxuICAgIGlzUGFnZWFibGU6IGJvb2xlYW4sXG4gICAgc291cmNlRGF0YTogJ2N1cnJlbnQtcGFnZScgfCAnYWxsLWRhdGEnXG4gICk6IFRhYmxlRmlsdGVyQnlDb2x1bW5EYXRhW10ge1xuICAgIGNvbnN0IGNvbHVtbkRhdGE6IFRhYmxlRmlsdGVyQnlDb2x1bW5EYXRhW10gPSBbXTtcbiAgICBjb25zdCBjb2xSZW5kZXJlZFZhbHVlcyA9IHRoaXMuZ2V0Q29sdW1uRGF0YVVzaW5nUmVuZGVyZXIoY29sdW1uLCB0YWJsZURhdGEpO1xuICAgIGNvbnN0IGNvbFZhbHVlcyA9IHRhYmxlRGF0YS5tYXAoKGVsZW0pID0+IFV0aWwuZ2V0VmFsdWVGcm9tUGF0aChlbGVtLCBjb2x1bW4udmFsdWVDb2x1bW4pKTtcblxuICAgIC8vIFVzZSBwcmVkZWZpbmVkIHZhbHVlcyBpZiBhdmFpbGFibGUgaW4gdGhlIGZpbHRlciBjb25maWd1cmF0aW9uXG4gICAgaWYgKFV0aWwuaXNEZWZpbmVkKGZpbHRlcj8uYXZhaWxhYmxlVmFsdWVzKSkge1xuICAgICAgcmV0dXJuIGZpbHRlci5hdmFpbGFibGVWYWx1ZXM7XG4gICAgfVxuXG4gICAgY29sUmVuZGVyZWRWYWx1ZXMuZm9yRWFjaCgocmVuZGVyZWRWYWx1ZSwgaSkgPT4ge1xuXG4gICAgICByZW5kZXJlZFZhbHVlID0gcmVuZGVyZWRWYWx1ZSA/PyAnJztcblxuICAgICAgY29uc3QgYWxyZWFkeUV4aXN0cyA9IGNvbHVtbkRhdGEuZmluZChpdGVtID0+IGl0ZW0ucmVuZGVyZWRWYWx1ZSA9PT0gcmVuZGVyZWRWYWx1ZSk7XG5cbiAgICAgIC8vIEF2b2lkIGR1cGxpY2F0ZXMgdW5sZXNzIHdlJ3JlIGluIHBhZ2VhYmxlIG1vZGUgYW5kIHByb2Nlc3NpbmcgYWxsLWRhdGFcbiAgICAgIGlmICghYWxyZWFkeUV4aXN0cyB8fCAoaXNQYWdlYWJsZSAmJiBzb3VyY2VEYXRhID09PSAnYWxsLWRhdGEnKSkge1xuICAgICAgICBjb25zdCBzZWxlY3RlZCA9IGZpbHRlcj8ub3BlcmF0b3IgPT09IENvbHVtblZhbHVlRmlsdGVyT3BlcmF0b3IuSU4gJiZcbiAgICAgICAgICAoZmlsdGVyPy52YWx1ZXMgPz8gW10pLmluY2x1ZGVzKGNvbFZhbHVlc1tpXSk7XG5cbiAgICAgICAgY29sdW1uRGF0YS5wdXNoKHtcbiAgICAgICAgICByZW5kZXJlZFZhbHVlLFxuICAgICAgICAgIHZhbHVlOiBjb2xWYWx1ZXNbaV0sXG4gICAgICAgICAgcm93VmFsdWU6IHRhYmxlRGF0YVtpXSxcbiAgICAgICAgICBzZWxlY3RlZCxcbiAgICAgICAgICB0YWJsZUluZGV4OiBpXG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH0pO1xuICAgIHJldHVybiBjb2x1bW5EYXRhO1xuICB9XG5cbiAgLyoqXG4gKiBBcHBsaWVzIHNlbGVjdGVkIGZpbHRlciB2YWx1ZXMgdG8gYSBnaXZlbiBjb2x1bW4gZmlsdGVyLlxuICogVXBkYXRlcyBvcGVyYXRvciwgdmFsdWVzLCBhdmFpbGFibGVWYWx1ZXMgb3IgZmlsdGVyRXhwcmVzc2lvbiBiYXNlZCBvbiBzb3VyY2UgZGF0YS5cbiAqXG4gKiBAcGFyYW0gZmlsdGVyIC0gVGhlIGZpbHRlciBvYmplY3QgdG8gdXBkYXRlXG4gKiBAcGFyYW0gc2VsZWN0ZWRWYWx1ZXMgLSBMaXN0IG9mIHNlbGVjdGVkIGNvbHVtbiBkYXRhIGVudHJpZXNcbiAqIEBwYXJhbSBzb3VyY2VEYXRhIC0gSW5kaWNhdGVzIHdoZXRoZXIgZmlsdGVyaW5nIGlzIGJhc2VkIG9uIGN1cnJlbnQgcGFnZSBvciBhbGwgZGF0YVxuICogQHBhcmFtIGNvbHVtbkRhdGEgLSBGdWxsIGxpc3Qgb2YgYXZhaWxhYmxlIGNvbHVtbiBmaWx0ZXIgZGF0YVxuICogQHBhcmFtIGdldENvbXBvbmVudEZpbHRlckZuIC0gRnVuY3Rpb24gdG8gcmV0cmlldmUgdGhlIGNvbXBvbmVudCBmaWx0ZXIgZXhwcmVzc2lvblxuICovXG4gIGFwcGx5U2VsZWN0ZWRWYWx1ZXNUb0ZpbHRlcihcbiAgICBjb2x1bW46IE9Db2x1bW4sXG4gICAgdGFibGVEYXRhOiBhbnlbXSxcbiAgICBmaWx0ZXI6IE9Db2x1bW5WYWx1ZUZpbHRlcixcbiAgICBzZWxlY3RlZFZhbHVlczogVGFibGVGaWx0ZXJCeUNvbHVtbkRhdGFbXSxcbiAgICBzb3VyY2VEYXRhOiAnY3VycmVudC1wYWdlJyB8ICdhbGwtZGF0YScsXG4gICAgaXNQYWdlYWJsZTogYm9vbGVhbixcbiAgICBnZXRDb21wb25lbnRGaWx0ZXJGbjogKCkgPT4gYW55XG4gICk6IHZvaWQge1xuICAgIGZpbHRlci5vcGVyYXRvciA9IENvbHVtblZhbHVlRmlsdGVyT3BlcmF0b3IuSU47XG4gICAgZmlsdGVyLnZhbHVlcyA9IHNlbGVjdGVkVmFsdWVzLm1hcChpdGVtID0+IGl0ZW0udmFsdWUpO1xuXG4gICAgaWYgKHNvdXJjZURhdGEgPT09ICdjdXJyZW50LXBhZ2UnKSB7XG4gICAgICBmaWx0ZXIuYXZhaWxhYmxlVmFsdWVzID0gdGhpcy5wYXJzZUxpc3REYXRhKGZpbHRlciwgY29sdW1uLCBmaWx0ZXIuYXZhaWxhYmxlVmFsdWVzID8/IHRhYmxlRGF0YSwgaXNQYWdlYWJsZSwgc291cmNlRGF0YSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGZpbHRlci5maWx0ZXJFeHByZXNpb24gPSBmaWx0ZXIuZmlsdGVyRXhwcmVzaW9uIHx8IGdldENvbXBvbmVudEZpbHRlckZuKCk7XG4gICAgfVxuICB9XG59XG4iXX0=
@@ -59,7 +59,15 @@ export class OTableColumnsFilterComponent {
59
59
  }
60
60
  ngAfterContentInit() {
61
61
  if (Util.isDefined(this.filterColumns)) {
62
- this.columnsArray = this.columnsArray.concat(this.parseFilterColumns(this.filterColumns));
62
+ const newColumns = this.parseFilterColumns(this.filterColumns);
63
+ const mergedMap = new Map();
64
+ this.columnsArray.forEach(col => {
65
+ mergedMap.set(col.attr, col);
66
+ });
67
+ newColumns.forEach(col => {
68
+ mergedMap.set(col.attr, col);
69
+ });
70
+ this.columnsArray = Array.from(mergedMap.values());
63
71
  }
64
72
  }
65
73
  isColumnFilterable(attr) {
@@ -99,10 +107,10 @@ export class OTableColumnsFilterComponent {
99
107
  return queryMethod;
100
108
  }
101
109
  getFilterValuesInData(attr) {
102
- let filterValuesInData = '';
110
+ let filterValuesInData = this.filterValuesInData;
103
111
  if (Util.isDefined(this.columnsArray)) {
104
112
  this.columnsArray.forEach(column => {
105
- if (column.attr == attr) {
113
+ if (column.attr == attr && (column.filterValuesInData === 'current-page' || column.filterValuesInData === 'all-data')) {
106
114
  filterValuesInData = column.filterValuesInData;
107
115
  }
108
116
  });
@@ -177,4 +185,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.9", ngImpor
177
185
  type: ContentChildren,
178
186
  args: [OTableColumnsFilterColumnComponent, { descendants: true }]
179
187
  }] } });
180
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby10YWJsZS1jb2x1bW5zLWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbnRpbWl6ZS13ZWItbmd4L3NyYy9saWIvY29tcG9uZW50cy90YWJsZS9leHRlbnNpb25zL2hlYWRlci90YWJsZS1jb2x1bW5zLWZpbHRlci9vLXRhYmxlLWNvbHVtbnMtZmlsdGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFvQix1QkFBdUIsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBVSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUosT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbEYsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUVoRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFpQixrQ0FBa0MsRUFBRSxNQUFNLG1EQUFtRCxDQUFDOzs7QUFFdEgsTUFBTSxDQUFDLE1BQU0sb0NBQW9DLEdBQUc7SUFFbEQsU0FBUztJQUVULCtCQUErQjtJQUUvQixNQUFNO0lBRU4sMkNBQTJDO0NBQzVDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxxQ0FBcUMsR0FBRyxFQUNwRCxDQUFDO0FBVUYsTUFBTSxPQUFPLDRCQUE0QjtJQVl2QyxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQ0ksSUFBSSxDQUFDLEdBQVc7UUFDbEIsTUFBTSxDQUFDLEdBQUcsNEJBQTRCLENBQUMsd0JBQXdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxF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QUUsUUFBUSxDQUFDLENBQUM7eUhBSmpFLDRCQUE0QiwwQ0FpQzdCLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxlQUFlLENBQUM7NkdBakNoQyw0QkFBNEIsbVFBNkJ0QixrQ0FBa0MsZ0RBbkN6QyxHQUFHO0FBY2I7SUFBQyxxQkFBcUIsRUFBRTs7bUVBQ007MkZBVG5CLDRCQUE0QjtrQkFSeEMsU0FBUzttQkFBQztvQkFDVCxRQUFRLEVBQUUsd0JBQXdCO29CQUNsQyxRQUFRLEVBQUUsR0FBRztvQkFDYixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsTUFBTSxFQUFFLG9DQUFvQztvQkFDNUMsT0FBTyxFQUFFLHFDQUFxQztpQkFDL0M7OzBCQW1DSSxNQUFNOzJCQUFDLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxlQUFlLENBQUM7NENBeEIzQyxhQUFhLE1BUVQsSUFBSTtzQkFEUCxLQUFLO2dCQWFzRSxhQUFhO3NCQUF4RixlQUFlO3VCQUFDLGtDQUFrQyxFQUFFLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFmdGVyQ29udGVudEluaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgZm9yd2FyZFJlZiwgSW5qZWN0LCBJbmplY3RvciwgSW5wdXQsIE9uSW5pdCwgUXVlcnlMaXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEJvb2xlYW5JbnB1dENvbnZlcnRlciB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2RlY29yYXRvcnMvaW5wdXQtY29udmVydGVyJztcbmltcG9ydCB7IENvZGVzIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdXRpbC9jb2Rlcyc7XG5pbXBvcnQgeyBVdGlsIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdXRpbC91dGlsJztcbmltcG9ydCB0eXBlIHsgT0NvbHVtbiB9IGZyb20gJy4uLy4uLy4uL2NvbHVtbi9vLWNvbHVtbi5jbGFzcyc7XG5pbXBvcnQgeyBPVGFibGVDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9vLXRhYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBPRmlsdGVyQ29sdW1uLCBPVGFibGVDb2x1bW5zRmlsdGVyQ29sdW1uQ29tcG9uZW50IH0gZnJvbSAnLi9jb2x1bW5zL28tdGFibGUtY29sdW1ucy1maWx0ZXItY29sdW1uLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX0lOUFVUU19PX1RBQkxFX0NPTFVNTl9GSUxURVIgPSBbXG4gIC8vIGNvbHVtbnMgW3N0cmluZ106IGNvbHVtbnMgdGhhdCBtaWdodCBiZSBmaWx0ZXJlZCwgc2VwYXJhdGVkIGJ5ICc7Jy4gRGVmYXVsdDogYWxsIHZpc2libGUgY29sdW1ucy5cbiAgJ2NvbHVtbnMnLFxuICAvLyBwcmVsb2FkVmFsdWVzIFt0cnVlfGZhbHNlfHllc3xub106IGluZGljYXRlcyB3aGV0aGVyIG9yIG5vdCB0byBzaG93IHRoZSBsaXN0IHZhbHVlcyB3aGVuIHRoZSBmaWx0ZXIgZGlhbG9nIGlzIG9wZW5lZC4gRGVmYXVsdDogdHJ1ZS5cbiAgJ3ByZWxvYWRWYWx1ZXM6IHByZWxvYWQtdmFsdWVzJyxcbiAgLy8gbW9kZSBbZGVmYXVsdCB8IHNlbGVjdGlvbiB8ICBjdXN0b21dXG4gICdtb2RlJyxcbiAgLy9maWx0ZXItdmFsdWVzLWluLWRhdGE6ICdjdXJyZW50LXBhZ2UnIHwgJ2FsbC1kYXRhJzogc2V0IG1vZGUgdG8gZmlsdGVyIGJ5LiBEZWZhdWx0ICdjdXJyZW50LXBhZ2UnXG4gICdmaWx0ZXJWYWx1ZXNJbkRhdGE6IGZpbHRlci12YWx1ZXMtaW4tZGF0YSdcbl07XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX09VVFBVVFNfT19UQUJMRV9DT0xVTU5fRklMVEVSID0gW1xuXTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnby10YWJsZS1jb2x1bW5zLWZpbHRlcicsXG4gIHRlbXBsYXRlOiAnICcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbnB1dHM6IERFRkFVTFRfSU5QVVRTX09fVEFCTEVfQ09MVU1OX0ZJTFRFUixcbiAgb3V0cHV0czogREVGQVVMVF9PVVRQVVRTX09fVEFCTEVfQ09MVU1OX0ZJTFRFUlxufSlcblxuZXhwb3J0IGNsYXNzIE9UYWJsZUNvbHVtbnNGaWx0ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyQ29udGVudEluaXQge1xuXG4gIHB1YmxpYyBzdGF0aWMgREVGQVVMVF9DT01QQVJJU09OX1RZUEUgPSAnVklFVyc7XG4gIHB1YmxpYyBzdGF0aWMgTU9ERUxfQ09NUEFSSVNPTl9UWVBFID0gJ01PREVMJztcbiAgcHVibGljIHN0YXRpYyBPVGFibGVDb2x1bW5zRmlsdGVyTW9kZXMgPSBbJ2RlZmF1bHQnLCAnc2VsZWN0aW9uJywgJ2N1c3RvbSddO1xuXG4gIHByb3RlY3RlZCBfY29sdW1uczogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX21vZGU6IHN0cmluZyA9ICdkZWZhdWx0JztcbiAgQEJvb2xlYW5JbnB1dENvbnZlcnRlcigpXG4gIHByZWxvYWRWYWx1ZXM6IGJvb2xlYW4gPSB0cnVlO1xuICBmaWx0ZXJWYWx1ZXNJbkRhdGE6ICdjdXJyZW50LXBhZ2UnIHwgJ2FsbC1kYXRhJztcblxuICBnZXQgbW9kZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9tb2RlO1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IG1vZGUodmFsOiBzdHJpbmcpIHtcbiAgICBjb25zdCBtID0gT1RhYmxlQ29sdW1uc0ZpbHRlckNvbXBvbmVudC5PVGFibGVDb2x1bW5zRmlsdGVyTW9kZXMuZmluZChlID0+IGUgPT09IHZhbCk7XG4gICAgaWYgKFV0aWwuaXNEZWZpbmVkKG0pKSB7XG4gICAgICB0aGlzLl9tb2RlID0gbTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS5lcnJvcignSW52YWxpZCBgby10YWJsZS1jb2x1bW5zLWZpbHRlcmAgbW9kZSAoJyArIHZhbCArICcpJyk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIF9jb2x1bW5zQXJyYXk6IEFycmF5PE9GaWx0ZXJDb2x1bW4+ID0gW107XG4gIHByb3RlY3RlZCBjb2x1bW5zQ29tcGFyaXNvblByb3BlcnR5OiBvYmplY3QgPSB7fTtcblxuICBAQ29udGVudENoaWxkcmVuKE9UYWJsZUNvbHVtbnNGaWx0ZXJDb2x1bW5Db21wb25lbnQsIHsgZGVzY2VuZGFudHM6IHRydWUgfSkgZmlsdGVyQ29sdW1uczogUXVlcnlMaXN0PE9UYWJsZUNvbHVtbnNGaWx0ZXJDb2x1bW5Db21wb25lbnQ+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgQEluamVjdChmb3J3YXJkUmVmKCgpID0+IE9UYWJsZUNvbXBvbmVudCkpIHByb3RlY3RlZCB0YWJsZTogT1RhYmxlQ29tcG9uZW50XG4gICkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKHRoaXMuY29sdW1uc0FycmF5Lmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5jb2x1bW5zQXJyYXkgPSB0aGlzLnRhYmxlLm9UYWJsZU9wdGlvbnMudmlzaWJsZUNvbHVtbnM7XG4gICAgfVxuICAgIGNvbnN0IHNlbGYgPSB0aGlzO1xuICAgIGxldCBjb2x1bW5zID0gVXRpbC5wYXJzZUFycmF5KHRoaXMuX2NvbHVtbnMsIHRydWUpO1xuXG4gICAgY29sdW1ucy5mb3JFYWNoKChjb2xEYXRhLCBpLCBhcnIpID0+IHtcbiAgICAgIGNvbnN0IGNvbERlZiA9IGNvbERhdGEuc3BsaXQoQ29kZXMuVFlQRV9TRVBBUkFUT1IpO1xuICAgICAgY29uc3QgY29sTmFtZSA9IGNvbERlZlswXTtcbiAgICAgIGxldCBjb21wVHlwZSA9IChjb2xEZWZbMV0gfHwgJycpLnRvVXBwZXJDYXNlKCk7XG4gICAgICBpZiAoW09UYWJsZUNvbHVtbnNGaWx0ZXJDb21wb25lbnQuREVGQVVMVF9DT01QQVJJU09OX1RZUEUsIE9UYWJsZUNvbHVtbnNGaWx0ZXJDb21wb25lbnQuTU9ERUxfQ09NUEFSSVNPTl9UWVBFXS5pbmRleE9mKGNvbXBUeXBlKSA9PT0gLTEpIHtcbiAgICAgICAgY29tcFR5cGUgPSBPVGFibGVDb2x1bW5zRmlsdGVyQ29tcG9uZW50LkRFRkFVTFRfQ09NUEFSSVNPTl9UWVBFO1xuICAgICAgfVxuICAgICAgYXJyW2ldID0gY29sTmFtZTtcbiAgICAgIHNlbGYuY29sdW1uc0NvbXBhcmlzb25Qcm9wZXJ0eVtjb2xOYW1lXSA9IGNvbXBUeXBlO1xuICAgIH0pO1xuXG4gICAgdGhpcy50YWJsZS5zZXRPVGFibGVDb2x1bW5zRmlsdGVyKHRoaXMpO1xuXG4gICAgdGhpcy5maWx0ZXJWYWx1ZXNJbkRhdGEgPSB0aGlzLmZpbHRlclZhbHVlc0luRGF0YSA/PyB0aGlzLmdldEZpbHRlclZhbHVlc0luRGF0YUJ5RGVmYXVsdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGaWx0ZXJWYWx1ZXNJbkRhdGFCeURlZmF1bHQoKSB7XG4gICAgcmV0dXJuIHRoaXMudGFibGUucGFnZWFibGUgPyAnY3VycmVudC1wYWdlJyA6ICdhbGwtZGF0YSc7XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgaWYgKFV0aWwuaXNEZWZpbmVkKHRoaXMuZmlsdGVyQ29sdW1ucykpIHtcbiAgICAgIHRoaXMuY29sdW1uc0FycmF5ID0gdGhpcy5jb2x1bW5zQXJyYXkuY29uY2F0KHRoaXMucGFyc2VGaWx0ZXJDb2x1bW5zKHRoaXMuZmlsdGVyQ29sdW1ucykpO1xuICAgIH1cbiAgfVxuXG4gIGlzQ29sdW1uRmlsdGVyYWJsZShhdHRyOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gVXRpbC5pc0RlZmluZWQodGhpcy5jb2x1bW5zQXJyYXkuZmluZCh4ID0+IHguYXR0ciA9PT0gYXR0cikpO1xuICB9XG5cbiAgZ2V0U29ydFZhbHVlT2ZGaWx0ZXJDb2x1bW4oYXR0cjogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBsZXQgc29ydFZhbHVlID0gJyc7XG4gICAgaWYgKFV0aWwuaXNEZWZpbmVkKHRoaXMuY29sdW1uc0FycmF5KSkge1xuICAgICAgdGhpcy5jb2x1bW5zQXJyYXkuZm9yRWFjaChjb2x1bW4gPT4ge1xuICAgICAgICBpZiAoY29sdW1uLmF0dHIgPT0gYXR0cikge1xuICAgICAgICAgIHNvcnRWYWx1ZSA9IGNvbHVtbi5zb3J0O1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHNvcnRWYWx1ZTtcbiAgfVxuXG4gIGdldFN0YXJ0Vmlld1ZhbHVlT2ZGaWx0ZXJDb2x1bW4oYXR0cjogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBsZXQgc3RhcnRWaWV3ID0gJyc7XG4gICAgaWYgKFV0aWwuaXNEZWZpbmVkKHRoaXMuY29sdW1uc0FycmF5KSkge1xuICAgICAgdGhpcy5jb2x1bW5zQXJyYXkuZm9yRWFjaChjb2x1bW4gPT4ge1xuICAgICAgICBpZiAoY29sdW1uLmF0dHIgPT0gYXR0cikge1xuICAgICAgICAgIHN0YXJ0VmlldyA9IGNvbHVtbi5zdGFydFZpZXc7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gc3RhcnRWaWV3O1xuICB9XG5cbiAgZ2V0UXVlcnlNZXRob2RPZkZpbHRlckNvbHVtbihhdHRyOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGxldCBxdWVyeU1ldGhvZCA9ICcnO1xuICAgIGlmIChVdGlsLmlzRGVmaW5lZCh0aGlzLmNvbHVtbnNBcnJheSkpIHtcbiAgICAgIHRoaXMuY29sdW1uc0FycmF5LmZvckVhY2goY29sdW1uID0+IHtcbiAgICAgICAgaWYgKGNvbHVtbi5hdHRyID09IGF0dHIpIHtcbiAgICAgICAgICBxdWVyeU1ldGhvZCA9IGNvbHVtbi5xdWVyeU1ldGhvZDtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBxdWVyeU1ldGhvZDtcbiAgfVxuXG4gIGdldEZpbHRlclZhbHVlc0luRGF0YShhdHRyOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGxldCBmaWx0ZXJWYWx1ZXNJbkRhdGEgPSAnJztcbiAgICBpZiAoVXRpbC5pc0RlZmluZWQodGhpcy5jb2x1bW5zQXJyYXkpKSB7XG4gICAgICB0aGlzLmNvbHVtbnNBcnJheS5mb3JFYWNoKGNvbHVtbiA9PiB7XG4gICAgICAgIGlmIChjb2x1bW4uYXR0ciA9PSBhdHRyKSB7XG4gICAgICAgICAgZmlsdGVyVmFsdWVzSW5EYXRhID0gY29sdW1uLmZpbHRlclZhbHVlc0luRGF0YTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBmaWx0ZXJWYWx1ZXNJbkRhdGE7XG4gIH1cblxuICBnZXRDb2x1bW5Db21wYXJpc29uVmFsdWUoY29sdW1uOiBPQ29sdW1uLCB2YWw6IGFueSk6IGFueSB7XG4gICAgaWYgKCFjb2x1bW4gfHwgdGhpcy5jb2x1bW5zQ29tcGFyaXNvblByb3BlcnR5W2NvbHVtbi5hdHRyXSA9PT0gT1RhYmxlQ29sdW1uc0ZpbHRlckNvbXBvbmVudC5NT0RFTF9DT01QQVJJU09OX1RZUEUpIHtcbiAgICAgIHJldHVybiB2YWw7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBjb2x1bW4ucmVuZGVyZXIgPyBjb2x1bW4ucmVuZGVyZXIuZ2V0Q2VsbERhdGEodmFsKSA6IHZhbDtcbiAgICB9XG4gIH1cblxuICBzZXQgY29sdW1ucyhhcmc6IHN0cmluZykge1xuICAgIHRoaXMuX2NvbHVtbnMgPSBhcmc7XG4gICAgdGhpcy5fY29sdW1uc0FycmF5ID0gdGhpcy5wYXJzZUNvbHVtbnModGhpcy5fY29sdW1ucyk7XG4gIH1cblxuICBzZXQgY29sdW1uc0FycmF5KGFyZzogT0ZpbHRlckNvbHVtbltdKSB7XG4gICAgdGhpcy5fY29sdW1uc0FycmF5ID0gYXJnO1xuICB9XG5cbiAgZ2V0IGNvbHVtbnNBcnJheSgpOiBPRmlsdGVyQ29sdW1uW10ge1xuICAgIHJldHVybiB0aGlzLl9jb2x1bW5zQXJyYXk7XG4gIH1cblxuICBwYXJzZUNvbHVtbnMoY29sdW1uczogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGNvbHVtbnMuc3BsaXQoJzsnKVxuICAgICAgLm1hcCh4ID0+IHtcbiAgICAgICAgbGV0IG9iajogT0ZpbHRlckNvbHVtbiA9IHsgYXR0cjogJycsIHNvcnQ6ICcnLCBzdGFydFZpZXc6ICcnIH07XG4gICAgICAgIG9iai5hdHRyID0geDtcbiAgICAgICAgb2JqLnNvcnQgPSAnJztcbiAgICAgICAgb2JqLnN0YXJ0VmlldyA9ICcnO1xuICAgICAgICByZXR1cm4gb2JqO1xuICAgICAgfSk7XG4gIH1cblxuICBwYXJzZUZpbHRlckNvbHVtbnMoY29sdW1uczogUXVlcnlMaXN0PE9UYWJsZUNvbHVtbnNGaWx0ZXJDb2x1bW5Db21wb25lbnQ+KSB7XG4gICAgcmV0dXJuIGNvbHVtbnNcbiAgICAgIC5tYXAoeCA9PiB7XG4gICAgICAgIGxldCBvYmo6IE9GaWx0ZXJDb2x1bW4gPSB7IGF0dHI6ICcnLCBzb3J0OiAnJywgc3RhcnRWaWV3OiAnJywgcXVlcnlNZXRob2Q6IHZvaWQgMCB9O1xuICAgICAgICBvYmouYXR0ciA9IHguYXR0cjtcbiAgICAgICAgb2JqLnNvcnQgPSB4LnNvcnQ7XG4gICAgICAgIG9iai5zdGFydFZpZXcgPSB4LnN0YXJ0VmlldztcbiAgICAgICAgb2JqLnF1ZXJ5TWV0aG9kID0geC5xdWVyeU1ldGhvZDtcbiAgICAgICAgb2JqLmZpbHRlclZhbHVlc0luRGF0YSA9ICh4LmZpbHRlclZhbHVlc0luRGF0YSB8fCB0aGlzLmZpbHRlclZhbHVlc0luRGF0YSkgPz8gdGhpcy5nZXRGaWx0ZXJWYWx1ZXNJbkRhdGFCeURlZmF1bHQoKTtcbiAgICAgICAgcmV0dXJuIG9iajtcbiAgICAgIH0pO1xuICB9XG5cbn1cbiJdfQ==
188
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby10YWJsZS1jb2x1bW5zLWZpbHRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9vbnRpbWl6ZS13ZWItbmd4L3NyYy9saWIvY29tcG9uZW50cy90YWJsZS9leHRlbnNpb25zL2hlYWRlci90YWJsZS1jb2x1bW5zLWZpbHRlci9vLXRhYmxlLWNvbHVtbnMtZmlsdGVyLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFvQix1QkFBdUIsRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBVSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFOUosT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFDbEYsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUVoRCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFpQixrQ0FBa0MsRUFBRSxNQUFNLG1EQUFtRCxDQUFDOzs7QUFFdEgsTUFBTSxDQUFDLE1BQU0sb0NBQW9DLEdBQUc7SUFFbEQsU0FBUztJQUVULCtCQUErQjtJQUUvQixNQUFNO0lBRU4sMkNBQTJDO0NBQzVDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxxQ0FBcUMsR0FBRyxFQUNwRCxDQUFDO0FBVUYsTUFBTSxPQUFPLDRCQUE0QjtJQVl2QyxJQUFJLElBQUk7UUFDTixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVELElBQ0ksSUFBSSxDQUFDLEdBQVc7UUFDbEIsTUFBTSxDQUFDLEdBQUcsNEJBQTRCLENBQUMsd0JBQXdCLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxF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ZW50IjpbImltcG9ydCB7IEFmdGVyQ29udGVudEluaXQsIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIENvbnRlbnRDaGlsZHJlbiwgZm9yd2FyZFJlZiwgSW5qZWN0LCBJbmplY3RvciwgSW5wdXQsIE9uSW5pdCwgUXVlcnlMaXN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbmltcG9ydCB7IEJvb2xlYW5JbnB1dENvbnZlcnRlciB9IGZyb20gJy4uLy4uLy4uLy4uLy4uL2RlY29yYXRvcnMvaW5wdXQtY29udmVydGVyJztcbmltcG9ydCB7IENvZGVzIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdXRpbC9jb2Rlcyc7XG5pbXBvcnQgeyBVdGlsIH0gZnJvbSAnLi4vLi4vLi4vLi4vLi4vdXRpbC91dGlsJztcbmltcG9ydCB0eXBlIHsgT0NvbHVtbiB9IGZyb20gJy4uLy4uLy4uL2NvbHVtbi9vLWNvbHVtbi5jbGFzcyc7XG5pbXBvcnQgeyBPVGFibGVDb21wb25lbnQgfSBmcm9tICcuLi8uLi8uLi9vLXRhYmxlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBPRmlsdGVyQ29sdW1uLCBPVGFibGVDb2x1bW5zRmlsdGVyQ29sdW1uQ29tcG9uZW50IH0gZnJvbSAnLi9jb2x1bW5zL28tdGFibGUtY29sdW1ucy1maWx0ZXItY29sdW1uLmNvbXBvbmVudCc7XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX0lOUFVUU19PX1RBQkxFX0NPTFVNTl9GSUxURVIgPSBbXG4gIC8vIGNvbHVtbnMgW3N0cmluZ106IGNvbHVtbnMgdGhhdCBtaWdodCBiZSBmaWx0ZXJlZCwgc2VwYXJhdGVkIGJ5ICc7Jy4gRGVmYXVsdDogYWxsIHZpc2libGUgY29sdW1ucy5cbiAgJ2NvbHVtbnMnLFxuICAvLyBwcmVsb2FkVmFsdWVzIFt0cnVlfGZhbHNlfHllc3xub106IGluZGljYXRlcyB3aGV0aGVyIG9yIG5vdCB0byBzaG93IHRoZSBsaXN0IHZhbHVlcyB3aGVuIHRoZSBmaWx0ZXIgZGlhbG9nIGlzIG9wZW5lZC4gRGVmYXVsdDogdHJ1ZS5cbiAgJ3ByZWxvYWRWYWx1ZXM6IHByZWxvYWQtdmFsdWVzJyxcbiAgLy8gbW9kZSBbZGVmYXVsdCB8IHNlbGVjdGlvbiB8ICBjdXN0b21dXG4gICdtb2RlJyxcbiAgLy9maWx0ZXItdmFsdWVzLWluLWRhdGE6ICdjdXJyZW50LXBhZ2UnIHwgJ2FsbC1kYXRhJzogc2V0IG1vZGUgdG8gZmlsdGVyIGJ5LiBEZWZhdWx0ICdjdXJyZW50LXBhZ2UnXG4gICdmaWx0ZXJWYWx1ZXNJbkRhdGE6IGZpbHRlci12YWx1ZXMtaW4tZGF0YSdcbl07XG5cbmV4cG9ydCBjb25zdCBERUZBVUxUX09VVFBVVFNfT19UQUJMRV9DT0xVTU5fRklMVEVSID0gW1xuXTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnby10YWJsZS1jb2x1bW5zLWZpbHRlcicsXG4gIHRlbXBsYXRlOiAnICcsXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBpbnB1dHM6IERFRkFVTFRfSU5QVVRTX09fVEFCTEVfQ09MVU1OX0ZJTFRFUixcbiAgb3V0cHV0czogREVGQVVMVF9PVVRQVVRTX09fVEFCTEVfQ09MVU1OX0ZJTFRFUlxufSlcblxuZXhwb3J0IGNsYXNzIE9UYWJsZUNvbHVtbnNGaWx0ZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyQ29udGVudEluaXQge1xuXG4gIHB1YmxpYyBzdGF0aWMgREVGQVVMVF9DT01QQVJJU09OX1RZUEUgPSAnVklFVyc7XG4gIHB1YmxpYyBzdGF0aWMgTU9ERUxfQ09NUEFSSVNPTl9UWVBFID0gJ01PREVMJztcbiAgcHVibGljIHN0YXRpYyBPVGFibGVDb2x1bW5zRmlsdGVyTW9kZXMgPSBbJ2RlZmF1bHQnLCAnc2VsZWN0aW9uJywgJ2N1c3RvbSddO1xuXG4gIHByb3RlY3RlZCBfY29sdW1uczogc3RyaW5nO1xuICBwcm90ZWN0ZWQgX21vZGU6IHN0cmluZyA9ICdkZWZhdWx0JztcbiAgQEJvb2xlYW5JbnB1dENvbnZlcnRlcigpXG4gIHByZWxvYWRWYWx1ZXM6IGJvb2xlYW4gPSB0cnVlO1xuICBmaWx0ZXJWYWx1ZXNJbkRhdGE6ICdjdXJyZW50LXBhZ2UnIHwgJ2FsbC1kYXRhJztcblxuICBnZXQgbW9kZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9tb2RlO1xuICB9XG5cbiAgQElucHV0KClcbiAgc2V0IG1vZGUodmFsOiBzdHJpbmcpIHtcbiAgICBjb25zdCBtID0gT1RhYmxlQ29sdW1uc0ZpbHRlckNvbXBvbmVudC5PVGFibGVDb2x1bW5zRmlsdGVyTW9kZXMuZmluZChlID0+IGUgPT09IHZhbCk7XG4gICAgaWYgKFV0aWwuaXNEZWZpbmVkKG0pKSB7XG4gICAgICB0aGlzLl9tb2RlID0gbTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS5lcnJvcignSW52YWxpZCBgby10YWJsZS1jb2x1bW5zLWZpbHRlcmAgbW9kZSAoJyArIHZhbCArICcpJyk7XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIF9jb2x1bW5zQXJyYXk6IEFycmF5PE9GaWx0ZXJDb2x1bW4+ID0gW107XG4gIHByb3RlY3RlZCBjb2x1bW5zQ29tcGFyaXNvblByb3BlcnR5OiBvYmplY3QgPSB7fTtcblxuICBAQ29udGVudENoaWxkcmVuKE9UYWJsZUNvbHVtbnNGaWx0ZXJDb2x1bW5Db21wb25lbnQsIHsgZGVzY2VuZGFudHM6IHRydWUgfSkgZmlsdGVyQ29sdW1uczogUXVlcnlMaXN0PE9UYWJsZUNvbHVtbnNGaWx0ZXJDb2x1bW5Db21wb25lbnQ+O1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByb3RlY3RlZCBpbmplY3RvcjogSW5qZWN0b3IsXG4gICAgQEluamVjdChmb3J3YXJkUmVmKCgpID0+IE9UYWJsZUNvbXBvbmVudCkpIHByb3RlY3RlZCB0YWJsZTogT1RhYmxlQ29tcG9uZW50XG4gICkgeyB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgaWYgKHRoaXMuY29sdW1uc0FycmF5Lmxlbmd0aCA9PT0gMCkge1xuICAgICAgdGhpcy5jb2x1bW5zQXJyYXkgPSB0aGlzLnRhYmxlLm9UYWJsZU9wdGlvbnMudmlzaWJsZUNvbHVtbnM7XG4gICAgfVxuICAgIGNvbnN0IHNlbGYgPSB0aGlzO1xuICAgIGxldCBjb2x1bW5zID0gVXRpbC5wYXJzZUFycmF5KHRoaXMuX2NvbHVtbnMsIHRydWUpO1xuXG4gICAgY29sdW1ucy5mb3JFYWNoKChjb2xEYXRhLCBpLCBhcnIpID0+IHtcbiAgICAgIGNvbnN0IGNvbERlZiA9IGNvbERhdGEuc3BsaXQoQ29kZXMuVFlQRV9TRVBBUkFUT1IpO1xuICAgICAgY29uc3QgY29sTmFtZSA9IGNvbERlZlswXTtcbiAgICAgIGxldCBjb21wVHlwZSA9IChjb2xEZWZbMV0gfHwgJycpLnRvVXBwZXJDYXNlKCk7XG4gICAgICBpZiAoW09UYWJsZUNvbHVtbnNGaWx0ZXJDb21wb25lbnQuREVGQVVMVF9DT01QQVJJU09OX1RZUEUsIE9UYWJsZUNvbHVtbnNGaWx0ZXJDb21wb25lbnQuTU9ERUxfQ09NUEFSSVNPTl9UWVBFXS5pbmRleE9mKGNvbXBUeXBlKSA9PT0gLTEpIHtcbiAgICAgICAgY29tcFR5cGUgPSBPVGFibGVDb2x1bW5zRmlsdGVyQ29tcG9uZW50LkRFRkFVTFRfQ09NUEFSSVNPTl9UWVBFO1xuICAgICAgfVxuICAgICAgYXJyW2ldID0gY29sTmFtZTtcbiAgICAgIHNlbGYuY29sdW1uc0NvbXBhcmlzb25Qcm9wZXJ0eVtjb2xOYW1lXSA9IGNvbXBUeXBlO1xuICAgIH0pO1xuXG4gICAgdGhpcy50YWJsZS5zZXRPVGFibGVDb2x1bW5zRmlsdGVyKHRoaXMpO1xuXG4gICAgdGhpcy5maWx0ZXJWYWx1ZXNJbkRhdGEgPSB0aGlzLmZpbHRlclZhbHVlc0luRGF0YSA/PyB0aGlzLmdldEZpbHRlclZhbHVlc0luRGF0YUJ5RGVmYXVsdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBnZXRGaWx0ZXJWYWx1ZXNJbkRhdGFCeURlZmF1bHQoKSB7XG4gICAgcmV0dXJuIHRoaXMudGFibGUucGFnZWFibGUgPyAnY3VycmVudC1wYWdlJyA6ICdhbGwtZGF0YSc7XG4gIH1cblxuICBuZ0FmdGVyQ29udGVudEluaXQoKSB7XG4gICAgaWYgKFV0aWwuaXNEZWZpbmVkKHRoaXMuZmlsdGVyQ29sdW1ucykpIHtcbiAgICAgIGNvbnN0IG5ld0NvbHVtbnMgPSB0aGlzLnBhcnNlRmlsdGVyQ29sdW1ucyh0aGlzLmZpbHRlckNvbHVtbnMpO1xuXG4gICAgICAvLyBDcmVhdGUgYSBtYXAgdG8gbWVyZ2UgYXJyYXlzIGJhc2VkIG9uIHRoZSBcImF0dHJcIiBwcm9wZXJ0eVxuICAgICAgY29uc3QgbWVyZ2VkTWFwID0gbmV3IE1hcDxzdHJpbmcsIGFueT4oKTtcblxuICAgICAgLy8gQWRkIGV4aXN0aW5nIGNvbHVtbnMgdG8gdGhlIG1hcFxuICAgICAgdGhpcy5jb2x1bW5zQXJyYXkuZm9yRWFjaChjb2wgPT4ge1xuICAgICAgICBtZXJnZWRNYXAuc2V0KGNvbC5hdHRyLCBjb2wpO1xuICAgICAgfSk7XG5cbiAgICAgIC8vIEFkZCBuZXcgY29sdW1ucyB0byB0aGUgbWFwLCBvdmVycmlkaW5nIGV4aXN0aW5nIG9uZXMgd2l0aCB0aGUgc2FtZSBcImF0dHJcIlxuICAgICAgbmV3Q29sdW1ucy5mb3JFYWNoKGNvbCA9PiB7XG4gICAgICAgIG1lcmdlZE1hcC5zZXQoY29sLmF0dHIsIGNvbCk7XG4gICAgICB9KTtcblxuICAgICAgLy8gQ29udmVydCB0aGUgbWFwIHZhbHVlcyBiYWNrIHRvIGFuIGFycmF5XG4gICAgICB0aGlzLmNvbHVtbnNBcnJheSA9IEFycmF5LmZyb20obWVyZ2VkTWFwLnZhbHVlcygpKTtcblxuICAgIH1cbiAgfVxuXG4gIGlzQ29sdW1uRmlsdGVyYWJsZShhdHRyOiBzdHJpbmcpOiBib29sZWFuIHtcbiAgICByZXR1cm4gVXRpbC5pc0RlZmluZWQodGhpcy5jb2x1bW5zQXJyYXkuZmluZCh4ID0+IHguYXR0ciA9PT0gYXR0cikpO1xuICB9XG5cbiAgZ2V0U29ydFZhbHVlT2ZGaWx0ZXJDb2x1bW4oYXR0cjogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBsZXQgc29ydFZhbHVlID0gJyc7XG4gICAgaWYgKFV0aWwuaXNEZWZpbmVkKHRoaXMuY29sdW1uc0FycmF5KSkge1xuICAgICAgdGhpcy5jb2x1bW5zQXJyYXkuZm9yRWFjaChjb2x1bW4gPT4ge1xuICAgICAgICBpZiAoY29sdW1uLmF0dHIgPT0gYXR0cikge1xuICAgICAgICAgIHNvcnRWYWx1ZSA9IGNvbHVtbi5zb3J0O1xuICAgICAgICB9XG4gICAgICB9KTtcbiAgICB9XG4gICAgcmV0dXJuIHNvcnRWYWx1ZTtcbiAgfVxuXG4gIGdldFN0YXJ0Vmlld1ZhbHVlT2ZGaWx0ZXJDb2x1bW4oYXR0cjogc3RyaW5nKTogc3RyaW5nIHtcbiAgICBsZXQgc3RhcnRWaWV3ID0gJyc7XG4gICAgaWYgKFV0aWwuaXNEZWZpbmVkKHRoaXMuY29sdW1uc0FycmF5KSkge1xuICAgICAgdGhpcy5jb2x1bW5zQXJyYXkuZm9yRWFjaChjb2x1bW4gPT4ge1xuICAgICAgICBpZiAoY29sdW1uLmF0dHIgPT0gYXR0cikge1xuICAgICAgICAgIHN0YXJ0VmlldyA9IGNvbHVtbi5zdGFydFZpZXc7XG4gICAgICAgIH1cbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gc3RhcnRWaWV3O1xuICB9XG5cbiAgZ2V0UXVlcnlNZXRob2RPZkZpbHRlckNvbHVtbihhdHRyOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIGxldCBxdWVyeU1ldGhvZCA9ICcnO1xuICAgIGlmIChVdGlsLmlzRGVmaW5lZCh0aGlzLmNvbHVtbnNBcnJheSkpIHtcbiAgICAgIHRoaXMuY29sdW1uc0FycmF5LmZvckVhY2goY29sdW1uID0+IHtcbiAgICAgICAgaWYgKGNvbHVtbi5hdHRyID09IGF0dHIpIHtcbiAgICAgICAgICBxdWVyeU1ldGhvZCA9IGNvbHVtbi5xdWVyeU1ldGhvZDtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBxdWVyeU1ldGhvZDtcbiAgfVxuXG4gIGdldEZpbHRlclZhbHVlc0luRGF0YShhdHRyOiBzdHJpbmcpOiAnY3VycmVudC1wYWdlJyB8ICdhbGwtZGF0YScge1xuICAgIGxldCBmaWx0ZXJWYWx1ZXNJbkRhdGE6ICdjdXJyZW50LXBhZ2UnIHwgJ2FsbC1kYXRhJyA9IHRoaXMuZmlsdGVyVmFsdWVzSW5EYXRhO1xuICAgIGlmIChVdGlsLmlzRGVmaW5lZCh0aGlzLmNvbHVtbnNBcnJheSkpIHtcbiAgICAgIHRoaXMuY29sdW1uc0FycmF5LmZvckVhY2goY29sdW1uID0+IHtcbiAgICAgICAgaWYgKGNvbHVtbi5hdHRyID09IGF0dHIgJiYgKGNvbHVtbi5maWx0ZXJWYWx1ZXNJbkRhdGEgPT09ICdjdXJyZW50LXBhZ2UnIHx8IGNvbHVtbi5maWx0ZXJWYWx1ZXNJbkRhdGEgPT09ICdhbGwtZGF0YScpKSB7XG4gICAgICAgICAgZmlsdGVyVmFsdWVzSW5EYXRhID0gY29sdW1uLmZpbHRlclZhbHVlc0luRGF0YTtcbiAgICAgICAgfVxuICAgICAgfSk7XG4gICAgfVxuICAgIHJldHVybiBmaWx0ZXJWYWx1ZXNJbkRhdGE7XG4gIH1cblxuICBnZXRDb2x1bW5Db21wYXJpc29uVmFsdWUoY29sdW1uOiBPQ29sdW1uLCB2YWw6IGFueSk6IGFueSB7XG4gICAgaWYgKCFjb2x1bW4gfHwgdGhpcy5jb2x1bW5zQ29tcGFyaXNvblByb3BlcnR5W2NvbHVtbi5hdHRyXSA9PT0gT1RhYmxlQ29sdW1uc0ZpbHRlckNvbXBvbmVudC5NT0RFTF9DT01QQVJJU09OX1RZUEUpIHtcbiAgICAgIHJldHVybiB2YWw7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBjb2x1bW4ucmVuZGVyZXIgPyBjb2x1bW4ucmVuZGVyZXIuZ2V0Q2VsbERhdGEodmFsKSA6IHZhbDtcbiAgICB9XG4gIH1cblxuICBzZXQgY29sdW1ucyhhcmc6IHN0cmluZykge1xuICAgIHRoaXMuX2NvbHVtbnMgPSBhcmc7XG4gICAgdGhpcy5fY29sdW1uc0FycmF5ID0gdGhpcy5wYXJzZUNvbHVtbnModGhpcy5fY29sdW1ucyk7XG4gIH1cblxuICBzZXQgY29sdW1uc0FycmF5KGFyZzogT0ZpbHRlckNvbHVtbltdKSB7XG4gICAgdGhpcy5fY29sdW1uc0FycmF5ID0gYXJnO1xuICB9XG5cbiAgZ2V0IGNvbHVtbnNBcnJheSgpOiBPRmlsdGVyQ29sdW1uW10ge1xuICAgIHJldHVybiB0aGlzLl9jb2x1bW5zQXJyYXk7XG4gIH1cblxuICBwYXJzZUNvbHVtbnMoY29sdW1uczogc3RyaW5nKSB7XG4gICAgcmV0dXJuIGNvbHVtbnMuc3BsaXQoJzsnKVxuICAgICAgLm1hcCh4ID0+IHtcbiAgICAgICAgbGV0IG9iajogT0ZpbHRlckNvbHVtbiA9IHsgYXR0cjogJycsIHNvcnQ6ICcnLCBzdGFydFZpZXc6ICcnIH07XG4gICAgICAgIG9iai5hdHRyID0geDtcbiAgICAgICAgb2JqLnNvcnQgPSAnJztcbiAgICAgICAgb2JqLnN0YXJ0VmlldyA9ICcnO1xuICAgICAgICByZXR1cm4gb2JqO1xuICAgICAgfSk7XG4gIH1cblxuICBwYXJzZUZpbHRlckNvbHVtbnMoY29sdW1uczogUXVlcnlMaXN0PE9UYWJsZUNvbHVtbnNGaWx0ZXJDb2x1bW5Db21wb25lbnQ+KSB7XG4gICAgcmV0dXJuIGNvbHVtbnNcbiAgICAgIC5tYXAoeCA9PiB7XG4gICAgICAgIGxldCBvYmo6IE9GaWx0ZXJDb2x1bW4gPSB7IGF0dHI6ICcnLCBzb3J0OiAnJywgc3RhcnRWaWV3OiAnJywgcXVlcnlNZXRob2Q6IHZvaWQgMCB9O1xuICAgICAgICBvYmouYXR0ciA9IHguYXR0cjtcbiAgICAgICAgb2JqLnNvcnQgPSB4LnNvcnQ7XG4gICAgICAgIG9iai5zdGFydFZpZXcgPSB4LnN0YXJ0VmlldztcbiAgICAgICAgb2JqLnF1ZXJ5TWV0aG9kID0geC5xdWVyeU1ldGhvZDtcbiAgICAgICAgb2JqLmZpbHRlclZhbHVlc0luRGF0YSA9ICh4LmZpbHRlclZhbHVlc0luRGF0YSB8fCB0aGlzLmZpbHRlclZhbHVlc0luRGF0YSkgPz8gdGhpcy5nZXRGaWx0ZXJWYWx1ZXNJbkRhdGFCeURlZmF1bHQoKTtcbiAgICAgICAgcmV0dXJuIG9iajtcbiAgICAgIH0pO1xuICB9XG5cbn1cbiJdfQ==
@@ -1,3 +1,3 @@
1
1
  export class OTableBase {
2
2
  }
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby10YWJsZS1iYXNlLmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb250aW1pemUtd2ViLW5neC9zcmMvbGliL2NvbXBvbmVudHMvdGFibGUvby10YWJsZS1iYXNlLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXdCQSxNQUFNLE9BQWdCLFVBQVU7Q0F3Ry9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2VsZWN0aW9uTW9kZWwgfSBmcm9tICdAYW5ndWxhci9jZGsvY29sbGVjdGlvbnMnO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIEV2ZW50RW1pdHRlciwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdENoZWNrYm94Q2hhbmdlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hlY2tib3gnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcy9pbnRlcm5hbC9CZWhhdmlvclN1YmplY3QnO1xuXG5pbXBvcnQgdHlwZSB7IFNuYWNrQmFyU2VydmljZSB9IGZyb20gJy4vLi4vLi4vc2VydmljZXMvc25hY2tiYXIuc2VydmljZSc7XG5cbmltcG9ydCB0eXBlIHsgUXVpY2tGaWx0ZXJGdW5jdGlvbiB9IGZyb20gXCIuLi8uLi90eXBlcy9xdWljay1maWx0ZXItZnVuY3Rpb24udHlwZVwiO1xuaW1wb3J0IHR5cGUgeyBPQ29sdW1uIH0gZnJvbSBcIi4vY29sdW1uL28tY29sdW1uLmNsYXNzXCI7XG5pbXBvcnQgdHlwZSB7IE9QZXJtaXNzaW9ucyB9IGZyb20gXCIuLi8uLi90eXBlcy9vLXBlcm1pc3Npb25zLnR5cGVcIjtcbmltcG9ydCB0eXBlIHsgT1RhYmxlQnV0dG9ucyB9IGZyb20gXCIuLi8uLi9pbnRlcmZhY2VzL28tdGFibGUtYnV0dG9ucy5pbnRlcmZhY2VcIjtcbmltcG9ydCB0eXBlIHsgT1RhYmxlUXVpY2tmaWx0ZXIgfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlcy9vLXRhYmxlLXF1aWNrZmlsdGVyLmludGVyZmFjZVwiO1xuaW1wb3J0IHR5cGUgeyBPVGFibGVNZW51IH0gZnJvbSBcIi4uLy4uL2ludGVyZmFjZXMvby10YWJsZS1tZW51LmludGVyZmFjZVwiO1xuaW1wb3J0IHR5cGUgeyBPQ29sdW1uVmFsdWVGaWx0ZXIgfSBmcm9tIFwiLi4vLi4vdHlwZXMvdGFibGUvby1jb2x1bW4tdmFsdWUtZmlsdGVyLnR5cGVcIjtcbmltcG9ydCB0eXBlIHsgT0NvbnRleHRNZW51Q29tcG9uZW50IH0gZnJvbSBcIi4uL2NvbnRleHRtZW51L28tY29udGV4dC1tZW51LmNvbXBvbmVudFwiO1xuaW1wb3J0IHR5cGUgeyBFeHByZXNzaW9uLCBPRmlsdGVyRGVmaW5pdGlvbiwgT0dyb3VwZWRDb2x1bW5UeXBlcywgT1RhYmxlTWVudVBlcm1pc3Npb25zLCBTUUxPcmRlciB9IGZyb20gXCIuLi8uLi90eXBlc1wiO1xuaW1wb3J0IHR5cGUgeyBPVGFibGVDb21wb25lbnRTdGF0ZUNsYXNzIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL3N0YXRlL28tdGFibGUtY29tcG9uZW50LXN0YXRlLmNsYXNzXCI7XG5pbXBvcnQgdHlwZSB7IE9UYWJsZUhlYWRlckNvbXBvbmVudCB9IGZyb20gXCIuL2V4dGVuc2lvbnMvaGVhZGVyL3RhYmxlLWhlYWRlci9vLXRhYmxlLWhlYWRlci5jb21wb25lbnRcIjtcbmltcG9ydCB0eXBlIHsgTWF0UGFnaW5hdG9yIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3BhZ2luYXRvclwiO1xuaW1wb3J0IHR5cGUgeyBPVGFibGVDb2x1bW5TZWxlY3RBbGxEaXJlY3RpdmUgfSBmcm9tIFwiLi9leHRlbnNpb25zL2hlYWRlci90YWJsZS1jb2x1bW4tc2VsZWN0LWFsbC9vLXRhYmxlLWNvbHVtbi1zZWxlY3QtYWxsLmRpcmVjdGl2ZVwiO1xuaW1wb3J0IHR5cGUgeyBPRmlsdGVyQnVpbGRlckNvbXBvbmVudCB9IGZyb20gXCIuLi9maWx0ZXItYnVpbGRlci9vLWZpbHRlci1idWlsZGVyLmNvbXBvbmVudFwiO1xuXG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBPVGFibGVCYXNlIHtcbiAgYWJzdHJhY3QgZ2V0TWVudVBlcm1pc3Npb25zKCk6IE9UYWJsZU1lbnVQZXJtaXNzaW9ucztcbiAgYWJzdHJhY3Qgcm93SGVpZ2h0T2JzZXJ2YWJsZTogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICBhYnN0cmFjdCBpbml0aWFsaXplQ2hlY2tib3hDb2x1bW4oKTtcbiAgdmlzaWJsZUV4cG9ydERpYWxvZ0J1dHRvbnM6IHN0cmluZztcbiAgc2VydmljZTogc3RyaW5nO1xuICBzZXJ2aWNlVHlwZTogc3RyaW5nO1xuICBleHBvcnRTZXJ2aWNlVHlwZTogVGVtcGxhdGVSZWY8YW55PjtcbiAgZXhwb3J0T3B0c1RlbXBsYXRlOiBhbnk7XG4gIHZpc2libGVDb2xBcnJheTogc3RyaW5nW107XG4gIHNob3dOb3RpZmljYXRpb25PZlJlYWRPbmx5OiBib29sZWFuO1xuICBhYnN0cmFjdCByZWluaXRpYWxpemVTb3J0Q29sdW1ucyhzb3J0Q29sdW1ucz86IFNRTE9yZGVyW10pO1xuICBhYnN0cmFjdCBzZXRHcm91cENvbHVtbnModmFsdWU6IGFueVtdKTtcbiAgYWJzdHJhY3QgY2xlYXJDb2x1bW5GaWx0ZXJzKHRyaWdnZXJEYXRhc291cmNlVXBkYXRlPzogYm9vbGVhbiwgY29sdW1uc0F0dHI/OiBzdHJpbmdbXSk6IHZvaWRcbiAgYWJzdHJhY3QgcmVmcmVzaENvbHVtbnNXaWR0aEZyb21Mb2NhbFN0b3JhZ2UoKTtcbiAgYWJzdHJhY3Qgcm93SGVpZ2h0OiBzdHJpbmc7XG4gIGFic3RyYWN0IGdyb3VwZWRDb2x1bW5UeXBlczogT0dyb3VwZWRDb2x1bW5UeXBlc1tdO1xuICBhYnN0cmFjdCBzZXRHcm91cGVkQ29sdW1uVHlwZXModmFsdWU6IE9Hcm91cGVkQ29sdW1uVHlwZXNbXSlcbiAgYWJzdHJhY3Qgc3RhdGU6IE9UYWJsZUNvbXBvbmVudFN0YXRlQ2xhc3M7XG4gIGFic3RyYWN0IHN0b3JlRmlsdGVySW5TdGF0ZShhcmc6IE9GaWx0ZXJEZWZpbml0aW9uKTtcbiAgYWJzdHJhY3Qgc2V0RmlsdGVyc0NvbmZpZ3VyYXRpb24oKTtcbiAgYWJzdHJhY3QgcmVsb2FkUGFnaW5hdGVkRGF0YUZyb21TdGFydChjbGVhclNlbGVjdGVkSXRlbXM/OiBib29sZWFuKTtcbiAgYWJzdHJhY3QgY2xlYXJGaWx0ZXJzKCk6IHZvaWQ7XG4gIGFic3RyYWN0IHJlc2V0Q29sdW1uc1dpZHRoKCk7XG4gIGFic3RyYWN0IGNvbXBvbmVudFN0YXRlU2VydmljZTogYW55O1xuICBhYnN0cmFjdCBhcHBseURlZmF1bHRDb25maWd1cmF0aW9uKCk7XG4gIGFic3RyYWN0IGFwcGx5Q29uZmlndXJhdGlvbihjb25maWd1cmF0aW9uTmFtZTogc3RyaW5nKTtcblxuICBhYnN0cmFjdCBnZXRDb2x1bW5zTm90SW5jbHVkZWQoKTogc3RyaW5nW11cbiAgYWJzdHJhY3QgZ2V0Q29tcG9uZW50RmlsdGVyKGV4aXN0aW5nRmlsdGVyPzogYW55KTogYW55O1xuICBhYnN0cmFjdCBlbnRpdHk6IHN0cmluZztcbiAgYWJzdHJhY3QgZ2V0U3FsVHlwZXMoKTtcbiAgYWJzdHJhY3QgZ2V0Q29sdW1uTmFtZXMoY29sdW1uczogc3RyaW5nW10pOiB7IFtjb2x1bW5JZDogc3RyaW5nXTogc3RyaW5nOyB9O1xuICBhYnN0cmFjdCBzaG93Q2FzZVNlbnNpdGl2ZUNoZWNrYm94KCk6IGJvb2xlYW47XG4gIGFic3RyYWN0IHBhZ2VhYmxlOiBib29sZWFuO1xuICBhYnN0cmFjdCBkYXRhU291cmNlOiBhbnk7XG4gIGFic3RyYWN0IHF1aWNrRmlsdGVyQ2FsbGJhY2s6IFF1aWNrRmlsdGVyRnVuY3Rpb247XG4gIGFic3RyYWN0IGFib3J0UXVlcnk6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPjtcbiAgYWJzdHJhY3Qgb1RhYmxlT3B0aW9uczogYW55O1xuICBhYnN0cmFjdCByZWdpc3RlclF1aWNrRmlsdGVyKGFyZzogYW55KTogdm9pZDtcbiAgYWJzdHJhY3QgZ2V0T0NvbHVtbkZyb21UaCh0aDogYW55KTogT0NvbHVtbjtcbiAgYWJzdHJhY3QgY2Q6IENoYW5nZURldGVjdG9yUmVmO1xuICBhYnN0cmFjdCBnZXRDbGllbnRXaWR0aENvbHVtbihjb2w6IE9Db2x1bW4pOiBudW1iZXI7XG4gIGFic3RyYWN0IGhvcml6b250YWxTY3JvbGw6IGJvb2xlYW47XG4gIGFic3RyYWN0IGdldEFjdGlvbnNQZXJtaXNzaW9ucygpOiBPUGVybWlzc2lvbnNbXTtcbiAgYWJzdHJhY3Qgc2VsZWN0aW9uOiBTZWxlY3Rpb25Nb2RlbDxFbGVtZW50PjtcbiAgYWJzdHJhY3QgcmVnaXN0ZXJPVGFibGVCdXR0b25zKGFyZzogT1RhYmxlQnV0dG9ucyk7XG4gIGFic3RyYWN0IGFkZCgpO1xuICBhYnN0cmFjdCByZWxvYWREYXRhKCk7XG4gIGFic3RyYWN0IHJlbW92ZSgpO1xuICBhYnN0cmFjdCBvblVwZGF0ZVNjcm9sbGVkU3RhdGU6IEV2ZW50RW1pdHRlcjxhbnk+O1xuICBhYnN0cmFjdCByb3dXaWR0aDtcbiAgYWJzdHJhY3Qgb25Db250ZW50Q2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PjtcbiAgYWJzdHJhY3Qgc3RhdGljRGF0YTogQXJyYXk8YW55PjtcbiAgYWJzdHJhY3Qgb1RhYmxlUXVpY2tGaWx0ZXJDb21wb25lbnQ6IE9UYWJsZVF1aWNrZmlsdGVyO1xuICBhYnN0cmFjdCBxdWlja0ZpbHRlcjogYm9vbGVhbjtcbiAgYWJzdHJhY3QgZ3JvdXBlZENvbHVtbnNBcnJheTogc3RyaW5nW107XG4gIGFic3RyYWN0IGlzQ29sdW1uRmlsdGVyYWJsZShjb2x1bW46IE9Db2x1bW4pOiBib29sZWFuO1xuICBhYnN0cmFjdCBvcGVuQ29sdW1uRmlsdGVyRGlhbG9nKGNvbHVtbjogT0NvbHVtbiwgZXZlbnQ6IEV2ZW50KTtcbiAgYWJzdHJhY3QgaXNDb2x1bW5GaWx0ZXJzQWN0aXZlOiBib29sZWFuO1xuICBhYnN0cmFjdCBvVGFibGVNZW51OiBPVGFibGVNZW51O1xuICBhYnN0cmFjdCBnZXRPQ29sdW1uKGF0dHI6IHN0cmluZyk6IE9Db2x1bW47XG4gIGFic3RyYWN0IGdyb3VwQnlDb2x1bW4oY29sdW1uOiBPQ29sdW1uLCB0eXBlPzogc3RyaW5nKTtcbiAgYWJzdHJhY3QgdW5Hcm91cEJ5Q29sdW1uKGNvbHVtbjogT0NvbHVtbik7XG4gIGFic3RyYWN0IHVuR3JvdXBCeUFsbENvbHVtbnMoKTtcbiAgYWJzdHJhY3QgZmlsdGVyQnlDb2x1bW4oY29sdW1uVmFsdWVGaWx0ZXI6IE9Db2x1bW5WYWx1ZUZpbHRlcik7XG4gIGFic3RyYWN0IHJlZnJlc2goKTtcbiAgYWJzdHJhY3QgY29weVNlbGVjdGlvbigpO1xuICBhYnN0cmFjdCBjb3B5QWxsKCk7XG4gIGFic3RyYWN0IHNob3dBbmRTZWxlY3RBbGxDaGVja2JveCgpO1xuICBhYnN0cmFjdCBkb0hhbmRsZUNsaWNrKHJvdzogYW55LCBjb2x1bW46IHN0cmluZywgcm93SW5kZXg6IG51bWJlciwgJGV2ZW50OiBNb3VzZUV2ZW50KTtcbiAgYWJzdHJhY3Qgdmlld0RldGFpbChpdGVtOiBhbnkpOiB2b2lkO1xuICBhYnN0cmFjdCBjbGVhclNlbGVjdGlvbigpOiB2b2lkO1xuICBhYnN0cmFjdCBpc1NlbGVjdGlvbk1vZGVNdWx0aXBsZSgpOiBib29sZWFuO1xuICBhYnN0cmFjdCByZWdpc3RlckNvbnRleHRNZW51KHZhbHVlOiBPQ29udGV4dE1lbnVDb21wb25lbnQpOiB2b2lkO1xuICBhYnN0cmFjdCBncm91cGFibGU6IGJvb2xlYW47XG4gIGFic3RyYWN0IHNlbGVjdEFsbENoZWNrYm94OiBib29sZWFuO1xuICBhYnN0cmFjdCBpc1NlbGVjdGlvbk1vZGVOb25lKCk6IGJvb2xlYW47XG4gIGFic3RyYWN0IGlzQWxsU2VsZWN0ZWQoKTogYm9vbGVhblxuXG4gIGFic3RyYWN0IG5vbkhpZGFibGVDb2x1bW5zOiBzdHJpbmc7XG4gIGFic3RyYWN0IHZpc2libGVDb2x1bW5zOiBzdHJpbmc7XG4gIGFic3RyYWN0IHNvcnRDb2xBcnJheTogU1FMT3JkZXJbXTtcbiAgYWJzdHJhY3QgY3VycmVudFBhZ2U6IG51bWJlcjtcbiAgYWJzdHJhY3QgcXVlcnlSb3dzOiBudW1iZXI7XG4gIGFic3RyYWN0IHJlc2l6YWJsZTogYm9vbGVhblxuICBhYnN0cmFjdCByZWdpc3RlclRhYmxlSGVhZGVycyh0YWJsZUhlYWRlcjogT1RhYmxlSGVhZGVyQ29tcG9uZW50KTtcbiAgYWJzdHJhY3Qgc2hvd0J1dHRvbnNUZXh0OiBib29sZWFuO1xuICBhYnN0cmFjdCBtYXRwYWdpbmF0b3I6IE1hdFBhZ2luYXRvcjtcbiAgYWJzdHJhY3QgaXNJbmRldGVybWluYXRlKCk6IGJvb2xlYW47XG4gIGFic3RyYWN0IG9uRmlsdGVyQnlDb2x1bW5DaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+O1xuICBhYnN0cmFjdCBtYXN0ZXJUb2dnbGUoZXZlbnQ6IE1hdENoZWNrYm94Q2hhbmdlKTogdm9pZDtcbiAgYWJzdHJhY3QgdGFibGVDb2x1bW5TZWxlY3RBbGxDb250ZW50Q2hpbGQ6IE9UYWJsZUNvbHVtblNlbGVjdEFsbERpcmVjdGl2ZTtcblxuICBhYnN0cmFjdCBnZXRDb2x1bW5GaWx0ZXJzRXhwcmVzc2lvbigpOiBFeHByZXNzaW9uO1xuICBhYnN0cmFjdCBjb2x1bW5zOiBzdHJpbmc7XG4gIGFic3RyYWN0IGdldFBhcmVudEtleXNWYWx1ZXMoKTtcbiAgYWJzdHJhY3QgZmlsdGVyQnVpbGRlcjogT0ZpbHRlckJ1aWxkZXJDb21wb25lbnQ7XG4gIGFic3RyYWN0IHJlYWRPbmx5RnVuY3Rpb246IChjb25maWd1cmF0aW9uOiBhbnkpID0+IGJvb2xlYW47XG4gIGFic3RyYWN0IGlzQ29tcG9uZW50UmVhZE9ubHkoc2VsZWN0b3I6IHN0cmluZywgYXR0cjogc3RyaW5nKTogYm9vbGVhbjtcbiAgYWJzdHJhY3QgZ2V0U25hY2tTZXJ2aWNlKCk6IFNuYWNrQmFyU2VydmljZTtcbiAgYWJzdHJhY3Qgc2V0U2VsZWN0ZWRCeUtleXMoa2V5VmFsdWVzOiBBcnJheTxhbnk+KTogdm9pZDtcbiAgYWJzdHJhY3Qgc2V0U2VsZWN0ZWRCeU11bHRpcGxlS2V5cyhrZXlWYWx1ZXM6IEFycmF5PE9iamVjdD4pOiB2b2lkO1xuICBhYnN0cmFjdCBzZXRTZWxlY3RlZEJ5Um93SWRzKHJvd0lkczogQXJyYXk8bnVtYmVyPik6IHZvaWQ7XG59XG4iXX0=
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiby10YWJsZS1iYXNlLmNsYXNzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvb250aW1pemUtd2ViLW5neC9zcmMvbGliL2NvbXBvbmVudHMvdGFibGUvby10YWJsZS1iYXNlLmNsYXNzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXdCQSxNQUFNLE9BQWdCLFVBQVU7Q0EwRy9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2VsZWN0aW9uTW9kZWwgfSBmcm9tICdAYW5ndWxhci9jZGsvY29sbGVjdGlvbnMnO1xuaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0b3JSZWYsIEV2ZW50RW1pdHRlciwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdENoZWNrYm94Q2hhbmdlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvY2hlY2tib3gnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0IH0gZnJvbSAncnhqcy9pbnRlcm5hbC9CZWhhdmlvclN1YmplY3QnO1xuXG5pbXBvcnQgdHlwZSB7IFNuYWNrQmFyU2VydmljZSB9IGZyb20gJy4vLi4vLi4vc2VydmljZXMvc25hY2tiYXIuc2VydmljZSc7XG5cbmltcG9ydCB0eXBlIHsgUXVpY2tGaWx0ZXJGdW5jdGlvbiB9IGZyb20gXCIuLi8uLi90eXBlcy9xdWljay1maWx0ZXItZnVuY3Rpb24udHlwZVwiO1xuaW1wb3J0IHR5cGUgeyBPQ29sdW1uIH0gZnJvbSBcIi4vY29sdW1uL28tY29sdW1uLmNsYXNzXCI7XG5pbXBvcnQgdHlwZSB7IE9QZXJtaXNzaW9ucyB9IGZyb20gXCIuLi8uLi90eXBlcy9vLXBlcm1pc3Npb25zLnR5cGVcIjtcbmltcG9ydCB0eXBlIHsgT1RhYmxlQnV0dG9ucyB9IGZyb20gXCIuLi8uLi9pbnRlcmZhY2VzL28tdGFibGUtYnV0dG9ucy5pbnRlcmZhY2VcIjtcbmltcG9ydCB0eXBlIHsgT1RhYmxlUXVpY2tmaWx0ZXIgfSBmcm9tIFwiLi4vLi4vaW50ZXJmYWNlcy9vLXRhYmxlLXF1aWNrZmlsdGVyLmludGVyZmFjZVwiO1xuaW1wb3J0IHR5cGUgeyBPVGFibGVNZW51IH0gZnJvbSBcIi4uLy4uL2ludGVyZmFjZXMvby10YWJsZS1tZW51LmludGVyZmFjZVwiO1xuaW1wb3J0IHR5cGUgeyBPQ29sdW1uVmFsdWVGaWx0ZXIgfSBmcm9tIFwiLi4vLi4vdHlwZXMvdGFibGUvby1jb2x1bW4tdmFsdWUtZmlsdGVyLnR5cGVcIjtcbmltcG9ydCB0eXBlIHsgT0NvbnRleHRNZW51Q29tcG9uZW50IH0gZnJvbSBcIi4uL2NvbnRleHRtZW51L28tY29udGV4dC1tZW51LmNvbXBvbmVudFwiO1xuaW1wb3J0IHR5cGUgeyBFeHByZXNzaW9uLCBPRmlsdGVyRGVmaW5pdGlvbiwgT0dyb3VwZWRDb2x1bW5UeXBlcywgT1RhYmxlTWVudVBlcm1pc3Npb25zLCBTUUxPcmRlciB9IGZyb20gXCIuLi8uLi90eXBlc1wiO1xuaW1wb3J0IHR5cGUgeyBPVGFibGVDb21wb25lbnRTdGF0ZUNsYXNzIH0gZnJvbSBcIi4uLy4uL3NlcnZpY2VzL3N0YXRlL28tdGFibGUtY29tcG9uZW50LXN0YXRlLmNsYXNzXCI7XG5pbXBvcnQgdHlwZSB7IE9UYWJsZUhlYWRlckNvbXBvbmVudCB9IGZyb20gXCIuL2V4dGVuc2lvbnMvaGVhZGVyL3RhYmxlLWhlYWRlci9vLXRhYmxlLWhlYWRlci5jb21wb25lbnRcIjtcbmltcG9ydCB0eXBlIHsgTWF0UGFnaW5hdG9yIH0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL3BhZ2luYXRvclwiO1xuaW1wb3J0IHR5cGUgeyBPVGFibGVDb2x1bW5TZWxlY3RBbGxEaXJlY3RpdmUgfSBmcm9tIFwiLi9leHRlbnNpb25zL2hlYWRlci90YWJsZS1jb2x1bW4tc2VsZWN0LWFsbC9vLXRhYmxlLWNvbHVtbi1zZWxlY3QtYWxsLmRpcmVjdGl2ZVwiO1xuaW1wb3J0IHR5cGUgeyBPRmlsdGVyQnVpbGRlckNvbXBvbmVudCB9IGZyb20gXCIuLi9maWx0ZXItYnVpbGRlci9vLWZpbHRlci1idWlsZGVyLmNvbXBvbmVudFwiO1xuXG5cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBPVGFibGVCYXNlIHtcbiAgYWJzdHJhY3QgZ2V0TWVudVBlcm1pc3Npb25zKCk6IE9UYWJsZU1lbnVQZXJtaXNzaW9ucztcbiAgYWJzdHJhY3Qgcm93SGVpZ2h0T2JzZXJ2YWJsZTogT2JzZXJ2YWJsZTxzdHJpbmc+O1xuICBhYnN0cmFjdCBpbml0aWFsaXplQ2hlY2tib3hDb2x1bW4oKTtcbiAgdmlzaWJsZUV4cG9ydERpYWxvZ0J1dHRvbnM6IHN0cmluZztcbiAgc2VydmljZTogc3RyaW5nO1xuICBzZXJ2aWNlVHlwZTogc3RyaW5nO1xuICBleHBvcnRTZXJ2aWNlVHlwZTogVGVtcGxhdGVSZWY8YW55PjtcbiAgZXhwb3J0T3B0c1RlbXBsYXRlOiBhbnk7XG4gIHZpc2libGVDb2xBcnJheTogc3RyaW5nW107XG4gIHNob3dOb3RpZmljYXRpb25PZlJlYWRPbmx5OiBib29sZWFuO1xuICBhYnN0cmFjdCByZWluaXRpYWxpemVTb3J0Q29sdW1ucyhzb3J0Q29sdW1ucz86IFNRTE9yZGVyW10pO1xuICBhYnN0cmFjdCBzZXRHcm91cENvbHVtbnModmFsdWU6IGFueVtdKTtcbiAgYWJzdHJhY3QgY2xlYXJDb2x1bW5GaWx0ZXJzKHRyaWdnZXJEYXRhc291cmNlVXBkYXRlPzogYm9vbGVhbiwgY29sdW1uc0F0dHI/OiBzdHJpbmdbXSk6IHZvaWRcbiAgYWJzdHJhY3QgcmVmcmVzaENvbHVtbnNXaWR0aEZyb21Mb2NhbFN0b3JhZ2UoKTtcbiAgYWJzdHJhY3Qgcm93SGVpZ2h0OiBzdHJpbmc7XG4gIGFic3RyYWN0IGdyb3VwZWRDb2x1bW5UeXBlczogT0dyb3VwZWRDb2x1bW5UeXBlc1tdO1xuICBhYnN0cmFjdCBzZXRHcm91cGVkQ29sdW1uVHlwZXModmFsdWU6IE9Hcm91cGVkQ29sdW1uVHlwZXNbXSlcbiAgYWJzdHJhY3Qgc3RhdGU6IE9UYWJsZUNvbXBvbmVudFN0YXRlQ2xhc3M7XG4gIGFic3RyYWN0IHN0b3JlRmlsdGVySW5TdGF0ZShhcmc6IE9GaWx0ZXJEZWZpbml0aW9uKTtcbiAgYWJzdHJhY3Qgc2V0RmlsdGVyc0NvbmZpZ3VyYXRpb24oKTtcbiAgYWJzdHJhY3QgcmVsb2FkUGFnaW5hdGVkRGF0YUZyb21TdGFydChjbGVhclNlbGVjdGVkSXRlbXM/OiBib29sZWFuKTtcbiAgYWJzdHJhY3QgY2xlYXJGaWx0ZXJzKCk6IHZvaWQ7XG4gIGFic3RyYWN0IHJlc2V0Q29sdW1uc1dpZHRoKCk7XG4gIGFic3RyYWN0IGNvbXBvbmVudFN0YXRlU2VydmljZTogYW55O1xuICBhYnN0cmFjdCBhcHBseURlZmF1bHRDb25maWd1cmF0aW9uKCk7XG4gIGFic3RyYWN0IGFwcGx5Q29uZmlndXJhdGlvbihjb25maWd1cmF0aW9uTmFtZTogc3RyaW5nKTtcblxuICBhYnN0cmFjdCBnZXRDb2x1bW5zTm90SW5jbHVkZWQoKTogc3RyaW5nW11cbiAgYWJzdHJhY3QgZ2V0Q29tcG9uZW50RmlsdGVyKGV4aXN0aW5nRmlsdGVyPzogYW55KTogYW55O1xuICBhYnN0cmFjdCBlbnRpdHk6IHN0cmluZztcbiAgYWJzdHJhY3QgZ2V0U3FsVHlwZXMoKTtcbiAgYWJzdHJhY3QgZ2V0Q29sdW1uTmFtZXMoY29sdW1uczogc3RyaW5nW10pOiB7IFtjb2x1bW5JZDogc3RyaW5nXTogc3RyaW5nOyB9O1xuICBhYnN0cmFjdCBzaG93Q2FzZVNlbnNpdGl2ZUNoZWNrYm94KCk6IGJvb2xlYW47XG4gIGFic3RyYWN0IHBhZ2VhYmxlOiBib29sZWFuO1xuICBhYnN0cmFjdCBkYXRhU291cmNlOiBhbnk7XG4gIGFic3RyYWN0IHF1aWNrRmlsdGVyQ2FsbGJhY2s6IFF1aWNrRmlsdGVyRnVuY3Rpb247XG4gIGFic3RyYWN0IGFib3J0UXVlcnk6IEJlaGF2aW9yU3ViamVjdDxib29sZWFuPjtcbiAgYWJzdHJhY3Qgb1RhYmxlT3B0aW9uczogYW55O1xuICBhYnN0cmFjdCByZWdpc3RlclF1aWNrRmlsdGVyKGFyZzogYW55KTogdm9pZDtcbiAgYWJzdHJhY3QgZ2V0T0NvbHVtbkZyb21UaCh0aDogYW55KTogT0NvbHVtbjtcbiAgYWJzdHJhY3QgY2Q6IENoYW5nZURldGVjdG9yUmVmO1xuICBhYnN0cmFjdCBnZXRDbGllbnRXaWR0aENvbHVtbihjb2w6IE9Db2x1bW4pOiBudW1iZXI7XG4gIGFic3RyYWN0IGhvcml6b250YWxTY3JvbGw6IGJvb2xlYW47XG4gIGFic3RyYWN0IGdldEFjdGlvbnNQZXJtaXNzaW9ucygpOiBPUGVybWlzc2lvbnNbXTtcbiAgYWJzdHJhY3Qgc2VsZWN0aW9uOiBTZWxlY3Rpb25Nb2RlbDxFbGVtZW50PjtcbiAgYWJzdHJhY3QgcmVnaXN0ZXJPVGFibGVCdXR0b25zKGFyZzogT1RhYmxlQnV0dG9ucyk7XG4gIGFic3RyYWN0IGFkZCgpO1xuICBhYnN0cmFjdCByZWxvYWREYXRhKCk7XG4gIGFic3RyYWN0IHJlbW92ZSgpO1xuICBhYnN0cmFjdCBvblVwZGF0ZVNjcm9sbGVkU3RhdGU6IEV2ZW50RW1pdHRlcjxhbnk+O1xuICBhYnN0cmFjdCByb3dXaWR0aDtcbiAgYWJzdHJhY3Qgb25Db250ZW50Q2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55PjtcbiAgYWJzdHJhY3Qgc3RhdGljRGF0YTogQXJyYXk8YW55PjtcbiAgYWJzdHJhY3Qgb1RhYmxlUXVpY2tGaWx0ZXJDb21wb25lbnQ6IE9UYWJsZVF1aWNrZmlsdGVyO1xuICBhYnN0cmFjdCBxdWlja0ZpbHRlcjogYm9vbGVhbjtcbiAgYWJzdHJhY3QgZ3JvdXBlZENvbHVtbnNBcnJheTogc3RyaW5nW107XG4gIGFic3RyYWN0IGlzQ29sdW1uRmlsdGVyYWJsZShjb2x1bW46IE9Db2x1bW4pOiBib29sZWFuO1xuICBhYnN0cmFjdCBvcGVuQ29sdW1uRmlsdGVyRGlhbG9nKGNvbHVtbjogT0NvbHVtbiwgZXZlbnQ6IEV2ZW50KTtcbiAgYWJzdHJhY3QgaXNDb2x1bW5GaWx0ZXJzQWN0aXZlOiBib29sZWFuO1xuICBhYnN0cmFjdCBvVGFibGVNZW51OiBPVGFibGVNZW51O1xuICBhYnN0cmFjdCBnZXRPQ29sdW1uKGF0dHI6IHN0cmluZyk6IE9Db2x1bW47XG4gIGFic3RyYWN0IGdyb3VwQnlDb2x1bW4oY29sdW1uOiBPQ29sdW1uLCB0eXBlPzogc3RyaW5nKTtcbiAgYWJzdHJhY3QgdW5Hcm91cEJ5Q29sdW1uKGNvbHVtbjogT0NvbHVtbik7XG4gIGFic3RyYWN0IHVuR3JvdXBCeUFsbENvbHVtbnMoKTtcbiAgYWJzdHJhY3QgZmlsdGVyQnlDb2x1bW4oY29sdW1uVmFsdWVGaWx0ZXI6IE9Db2x1bW5WYWx1ZUZpbHRlcik7XG4gIGFic3RyYWN0IHJlZnJlc2goKTtcbiAgYWJzdHJhY3QgY29weVNlbGVjdGlvbigpO1xuICBhYnN0cmFjdCBjb3B5QWxsKCk7XG4gIGFic3RyYWN0IHNob3dBbmRTZWxlY3RBbGxDaGVja2JveCgpO1xuICBhYnN0cmFjdCBkb0hhbmRsZUNsaWNrKHJvdzogYW55LCBjb2x1bW46IHN0cmluZywgcm93SW5kZXg6IG51bWJlciwgJGV2ZW50OiBNb3VzZUV2ZW50KTtcbiAgYWJzdHJhY3Qgdmlld0RldGFpbChpdGVtOiBhbnkpOiB2b2lkO1xuICBhYnN0cmFjdCBjbGVhclNlbGVjdGlvbigpOiB2b2lkO1xuICBhYnN0cmFjdCBpc1NlbGVjdGlvbk1vZGVNdWx0aXBsZSgpOiBib29sZWFuO1xuICBhYnN0cmFjdCByZWdpc3RlckNvbnRleHRNZW51KHZhbHVlOiBPQ29udGV4dE1lbnVDb21wb25lbnQpOiB2b2lkO1xuICBhYnN0cmFjdCBncm91cGFibGU6IGJvb2xlYW47XG4gIGFic3RyYWN0IHNlbGVjdEFsbENoZWNrYm94OiBib29sZWFuO1xuICBhYnN0cmFjdCBpc1NlbGVjdGlvbk1vZGVOb25lKCk6IGJvb2xlYW47XG4gIGFic3RyYWN0IGlzQWxsU2VsZWN0ZWQoKTogYm9vbGVhblxuXG4gIGFic3RyYWN0IG5vbkhpZGFibGVDb2x1bW5zOiBzdHJpbmc7XG4gIGFic3RyYWN0IHZpc2libGVDb2x1bW5zOiBzdHJpbmc7XG4gIGFic3RyYWN0IHNvcnRDb2xBcnJheTogU1FMT3JkZXJbXTtcbiAgYWJzdHJhY3QgY3VycmVudFBhZ2U6IG51bWJlcjtcbiAgYWJzdHJhY3QgcXVlcnlSb3dzOiBudW1iZXI7XG4gIGFic3RyYWN0IHJlc2l6YWJsZTogYm9vbGVhblxuICBhYnN0cmFjdCByZWdpc3RlclRhYmxlSGVhZGVycyh0YWJsZUhlYWRlcjogT1RhYmxlSGVhZGVyQ29tcG9uZW50KTtcbiAgYWJzdHJhY3Qgc2hvd0J1dHRvbnNUZXh0OiBib29sZWFuO1xuICBhYnN0cmFjdCBtYXRwYWdpbmF0b3I6IE1hdFBhZ2luYXRvcjtcbiAgYWJzdHJhY3QgaXNJbmRldGVybWluYXRlKCk6IGJvb2xlYW47XG4gIGFic3RyYWN0IG9uRmlsdGVyQnlDb2x1bW5DaGFuZ2U6IEV2ZW50RW1pdHRlcjxhbnk+O1xuICBhYnN0cmFjdCBtYXN0ZXJUb2dnbGUoZXZlbnQ6IE1hdENoZWNrYm94Q2hhbmdlKTogdm9pZDtcbiAgYWJzdHJhY3QgdGFibGVDb2x1bW5TZWxlY3RBbGxDb250ZW50Q2hpbGQ6IE9UYWJsZUNvbHVtblNlbGVjdEFsbERpcmVjdGl2ZTtcblxuICBhYnN0cmFjdCBnZXRDb2x1bW5GaWx0ZXJzRXhwcmVzc2lvbigpOiBFeHByZXNzaW9uO1xuICBhYnN0cmFjdCBjb2x1bW5zOiBzdHJpbmc7XG4gIGFic3RyYWN0IGdldFBhcmVudEtleXNWYWx1ZXMoKTtcbiAgYWJzdHJhY3QgZmlsdGVyQnVpbGRlcjogT0ZpbHRlckJ1aWxkZXJDb21wb25lbnQ7XG4gIGFic3RyYWN0IHJlYWRPbmx5RnVuY3Rpb246IChjb25maWd1cmF0aW9uOiBhbnkpID0+IGJvb2xlYW47XG4gIGFic3RyYWN0IGlzQ29tcG9uZW50UmVhZE9ubHkoc2VsZWN0b3I6IHN0cmluZywgYXR0cjogc3RyaW5nKTogYm9vbGVhbjtcbiAgYWJzdHJhY3QgZ2V0U25hY2tTZXJ2aWNlKCk6IFNuYWNrQmFyU2VydmljZTtcbiAgYWJzdHJhY3Qgc2V0U2VsZWN0ZWRCeUtleXMoa2V5VmFsdWVzOiBBcnJheTxhbnk+KTogdm9pZDtcbiAgYWJzdHJhY3Qgc2V0U2VsZWN0ZWRCeU11bHRpcGxlS2V5cyhrZXlWYWx1ZXM6IEFycmF5PE9iamVjdD4pOiB2b2lkO1xuICBhYnN0cmFjdCBzZXRTZWxlY3RlZEJ5Um93SWRzKHJvd0lkczogQXJyYXk8bnVtYmVyPik6IHZvaWQ7XG4gIGFic3RyYWN0IGdldFNvdXJjZURhdGFCeUZpbHRlckNvbHVtbihjb2x1bW46IE9Db2x1bW4pOiAnY3VycmVudC1wYWdlJyB8ICdhbGwtZGF0YSc7XG4gIGFic3RyYWN0IGdldFZhbHVlKCk6IGFueVtdO1xufVxuIl19