@sd-angular/core 1.3.146 → 1.3.148

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 (140) hide show
  1. package/bundles/sd-angular-core-grid-material.umd.js +1 -1
  2. package/bundles/sd-angular-core-grid-material.umd.js.map +1 -1
  3. package/bundles/sd-angular-core-grid-material.umd.min.js +1 -1
  4. package/bundles/sd-angular-core-grid-material.umd.min.js.map +1 -1
  5. package/bundles/sd-angular-core-table.umd.js +4077 -0
  6. package/bundles/sd-angular-core-table.umd.js.map +1 -0
  7. package/bundles/sd-angular-core-table.umd.min.js +2 -0
  8. package/bundles/sd-angular-core-table.umd.min.js.map +1 -0
  9. package/bundles/sd-angular-core.umd.js +6 -4
  10. package/bundles/sd-angular-core.umd.js.map +1 -1
  11. package/bundles/sd-angular-core.umd.min.js +1 -1
  12. package/bundles/sd-angular-core.umd.min.js.map +1 -1
  13. package/esm2015/grid-material/src/lib/components/column-inline-filter/column-inline-filter.component.js +2 -2
  14. package/esm2015/lib/core.module.js +4 -1
  15. package/esm2015/public-api.js +2 -1
  16. package/esm2015/table/index.js +2 -0
  17. package/esm2015/table/sd-angular-core-table.js +40 -0
  18. package/esm2015/table/src/lib/components/column-inline-filter/column-inline-filter.component.js +96 -0
  19. package/esm2015/table/src/lib/components/desktop-cell/desktop-cell.component.js +25 -0
  20. package/esm2015/table/src/lib/components/desktop-cell-view/desktop-cell-view.component.js +21 -0
  21. package/esm2015/table/src/lib/components/desktop-command/desktop-command.component.js +20 -0
  22. package/esm2015/table/src/lib/components/grid-filter/grid-filter.component.js +99 -0
  23. package/esm2015/table/src/lib/components/popup-filter/popup-filter.component.js +79 -0
  24. package/esm2015/table/src/lib/components/popup-grid-configuration/popup-grid-configuration.component.js +96 -0
  25. package/esm2015/table/src/lib/components/quick-action/quick-action.component.js +24 -0
  26. package/esm2015/table/src/lib/directives/sd-material-cell-def.directive.js +18 -0
  27. package/esm2015/table/src/lib/directives/sd-material-empty-data-def.directive.js +15 -0
  28. package/esm2015/table/src/lib/directives/sd-material-filter-def.directive.js +22 -0
  29. package/esm2015/table/src/lib/directives/sd-material-footer-def.directive.js +18 -0
  30. package/esm2015/table/src/lib/directives/sd-material-sub-information-def.directive.js +15 -0
  31. package/esm2015/table/src/lib/models/grid-cell.model.js +2 -0
  32. package/esm2015/table/src/lib/models/index.js +4 -0
  33. package/esm2015/table/src/lib/models/table-column.model.js +63 -0
  34. package/esm2015/table/src/lib/models/table-command.model.js +2 -0
  35. package/esm2015/table/src/lib/models/table-configuration.model.js +9 -0
  36. package/esm2015/table/src/lib/models/table-item.model.js +15 -0
  37. package/esm2015/table/src/lib/models/table-option-config.model.js +2 -0
  38. package/esm2015/table/src/lib/models/table-option-expand.model.js +2 -0
  39. package/esm2015/table/src/lib/models/table-option-export.model.js +2 -0
  40. package/esm2015/table/src/lib/models/table-option-group.model.js +2 -0
  41. package/esm2015/table/src/lib/models/table-option-paginate.model.js +2 -0
  42. package/esm2015/table/src/lib/models/table-option-reload.model.js +2 -0
  43. package/esm2015/table/src/lib/models/table-option-selector.model.js +2 -0
  44. package/esm2015/table/src/lib/models/table-option-sort.model.js +2 -0
  45. package/esm2015/table/src/lib/models/table-option-style.model.js +2 -0
  46. package/esm2015/table/src/lib/models/table-option.model.js +2 -0
  47. package/esm2015/table/src/lib/pipes/cell-view.pipe.js +180 -0
  48. package/esm2015/table/src/lib/pipes/column-badge.pipe.js +43 -0
  49. package/esm2015/table/src/lib/pipes/column-children-filter.pipe.js +31 -0
  50. package/esm2015/table/src/lib/pipes/column-html-template.pipe.js +23 -0
  51. package/esm2015/table/src/lib/pipes/column-tooltip.pipe.js +17 -0
  52. package/esm2015/table/src/lib/pipes/column-transform.pipe.js +35 -0
  53. package/esm2015/table/src/lib/pipes/column-values.pipe.js +63 -0
  54. package/esm2015/table/src/lib/pipes/command-disable.pipe.js +18 -0
  55. package/esm2015/table/src/lib/pipes/command-filter.pipe.js +79 -0
  56. package/esm2015/table/src/lib/pipes/command-icon.pipe.js +18 -0
  57. package/esm2015/table/src/lib/pipes/command-title.pipe.js +18 -0
  58. package/esm2015/table/src/lib/pipes/filter-column.pipe.js +30 -0
  59. package/esm2015/table/src/lib/pipes/filter-external.pipe.js +19 -0
  60. package/esm2015/table/src/lib/pipes/grid-configuration-result.pipe.js +21 -0
  61. package/esm2015/table/src/lib/pipes/sd-group.pipe.js +45 -0
  62. package/esm2015/table/src/lib/pipes/selection-action-filter.pipe.js +72 -0
  63. package/esm2015/table/src/lib/pipes/selection-disable.pipe.js +55 -0
  64. package/esm2015/table/src/lib/pipes/selection-visible-select-all.pipe.js +34 -0
  65. package/esm2015/table/src/lib/pipes/selection-visible.pipe.js +82 -0
  66. package/esm2015/table/src/lib/services/table-configuration.service.js +292 -0
  67. package/esm2015/table/src/lib/services/table-filter/table-filter.model.js +3 -0
  68. package/esm2015/table/src/lib/services/table-filter/table-filter.service.js +229 -0
  69. package/esm2015/table/src/lib/table.component.js +832 -0
  70. package/esm2015/table/src/lib/table.module.js +175 -0
  71. package/esm2015/table/src/public-api.js +5 -0
  72. package/fesm2015/sd-angular-core-grid-material.js +1 -1
  73. package/fesm2015/sd-angular-core-grid-material.js.map +1 -1
  74. package/fesm2015/sd-angular-core-table.js +2927 -0
  75. package/fesm2015/sd-angular-core-table.js.map +1 -0
  76. package/fesm2015/sd-angular-core.js +3 -0
  77. package/fesm2015/sd-angular-core.js.map +1 -1
  78. package/grid-material/sd-angular-core-grid-material.metadata.json +1 -1
  79. package/package.json +1 -1
  80. package/public-api.d.ts +1 -0
  81. package/{sd-angular-core-1.3.146.tgz → sd-angular-core-1.3.148.tgz} +0 -0
  82. package/sd-angular-core.metadata.json +1 -1
  83. package/table/index.d.ts +1 -0
  84. package/table/package.json +12 -0
  85. package/table/sd-angular-core-table.d.ts +39 -0
  86. package/table/sd-angular-core-table.metadata.json +1 -0
  87. package/table/src/lib/components/column-inline-filter/column-inline-filter.component.d.ts +29 -0
  88. package/table/src/lib/components/desktop-cell/desktop-cell.component.d.ts +17 -0
  89. package/table/src/lib/components/desktop-cell-view/desktop-cell-view.component.d.ts +11 -0
  90. package/table/src/lib/components/desktop-command/desktop-command.component.d.ts +7 -0
  91. package/table/src/lib/components/grid-filter/grid-filter.component.d.ts +35 -0
  92. package/table/src/lib/components/popup-filter/popup-filter.component.d.ts +27 -0
  93. package/table/src/lib/components/popup-grid-configuration/popup-grid-configuration.component.d.ts +39 -0
  94. package/table/src/lib/components/quick-action/quick-action.component.d.ts +9 -0
  95. package/table/src/lib/directives/sd-material-cell-def.directive.d.ts +6 -0
  96. package/table/src/lib/directives/sd-material-empty-data-def.directive.d.ts +5 -0
  97. package/table/src/lib/directives/sd-material-filter-def.directive.d.ts +8 -0
  98. package/table/src/lib/directives/sd-material-footer-def.directive.d.ts +6 -0
  99. package/table/src/lib/directives/sd-material-sub-information-def.directive.d.ts +5 -0
  100. package/table/src/lib/models/grid-cell.model.d.ts +16 -0
  101. package/table/src/lib/models/index.d.ts +3 -0
  102. package/table/src/lib/models/table-column.model.d.ts +125 -0
  103. package/table/src/lib/models/table-command.model.d.ts +19 -0
  104. package/table/src/lib/models/table-configuration.model.d.ts +20 -0
  105. package/table/src/lib/models/table-item.model.d.ts +25 -0
  106. package/table/src/lib/models/table-option-config.model.d.ts +62 -0
  107. package/table/src/lib/models/table-option-expand.model.d.ts +6 -0
  108. package/table/src/lib/models/table-option-export.model.d.ts +31 -0
  109. package/table/src/lib/models/table-option-group.model.d.ts +4 -0
  110. package/table/src/lib/models/table-option-paginate.model.d.ts +6 -0
  111. package/table/src/lib/models/table-option-reload.model.d.ts +5 -0
  112. package/table/src/lib/models/table-option-selector.model.d.ts +32 -0
  113. package/table/src/lib/models/table-option-sort.model.d.ts +3 -0
  114. package/table/src/lib/models/table-option-style.model.d.ts +6 -0
  115. package/table/src/lib/models/table-option.model.d.ts +44 -0
  116. package/table/src/lib/pipes/cell-view.pipe.d.ts +15 -0
  117. package/table/src/lib/pipes/column-badge.pipe.d.ts +11 -0
  118. package/table/src/lib/pipes/column-children-filter.pipe.d.ts +8 -0
  119. package/table/src/lib/pipes/column-html-template.pipe.d.ts +8 -0
  120. package/table/src/lib/pipes/column-tooltip.pipe.d.ts +6 -0
  121. package/table/src/lib/pipes/column-transform.pipe.d.ts +8 -0
  122. package/table/src/lib/pipes/column-values.pipe.d.ts +6 -0
  123. package/table/src/lib/pipes/command-disable.pipe.d.ts +5 -0
  124. package/table/src/lib/pipes/command-filter.pipe.d.ts +6 -0
  125. package/table/src/lib/pipes/command-icon.pipe.d.ts +5 -0
  126. package/table/src/lib/pipes/command-title.pipe.d.ts +5 -0
  127. package/table/src/lib/pipes/filter-column.pipe.d.ts +5 -0
  128. package/table/src/lib/pipes/filter-external.pipe.d.ts +5 -0
  129. package/table/src/lib/pipes/grid-configuration-result.pipe.d.ts +10 -0
  130. package/table/src/lib/pipes/sd-group.pipe.d.ts +6 -0
  131. package/table/src/lib/pipes/selection-action-filter.pipe.d.ts +7 -0
  132. package/table/src/lib/pipes/selection-disable.pipe.d.ts +6 -0
  133. package/table/src/lib/pipes/selection-visible-select-all.pipe.d.ts +6 -0
  134. package/table/src/lib/pipes/selection-visible.pipe.d.ts +6 -0
  135. package/table/src/lib/services/table-configuration.service.d.ts +13 -0
  136. package/table/src/lib/services/table-filter/table-filter.model.d.ts +117 -0
  137. package/table/src/lib/services/table-filter/table-filter.service.d.ts +15 -0
  138. package/table/src/lib/table.component.d.ts +87 -0
  139. package/table/src/lib/table.module.d.ts +11 -0
  140. package/table/src/public-api.d.ts +5 -0
@@ -0,0 +1,63 @@
1
+ var _prefix, _cache;
2
+ import { __awaiter, __classPrivateFieldGet, __rest } from "tslib";
3
+ import { Pipe } from '@angular/core';
4
+ import hash from 'object-hash';
5
+ export class SdColumnValuesPipe {
6
+ constructor() {
7
+ _prefix.set(this, 'a1e67660-8aa2-4c11-b02d-71a32188719f');
8
+ _cache.set(this, {});
9
+ this.transform = (value, column) => __awaiter(this, void 0, void 0, function* () {
10
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k;
11
+ if (column.type !== 'values' || !((_a = column.option) === null || _a === void 0 ? void 0 : _a.items) || !((_b = column.option) === null || _b === void 0 ? void 0 : _b.valueField) || !((_c = column.option) === null || _c === void 0 ? void 0 : _c.displayField)) {
12
+ return value;
13
+ }
14
+ const _l = column.option, { items, valueField, displayField, selection } = _l, remain = __rest(_l, ["items", "valueField", "displayField", "selection"]);
15
+ const key = hash({
16
+ prefix: __classPrivateFieldGet(this, _prefix),
17
+ valueField,
18
+ displayField,
19
+ selection,
20
+ remain,
21
+ value
22
+ });
23
+ const isMultible = ['MULTIPLE', 'MULTIPLEAUTOCOMPLETE', 'MULTIPLE_EDITOR', 'MULTIPLEAUTOCOMPLETE_EDITOR'].includes(selection);
24
+ if (typeof (items) === 'function') {
25
+ if (!__classPrivateFieldGet(this, _cache)[key]) {
26
+ const values = yield items(value, true);
27
+ let result = '';
28
+ if (isMultible && Array.isArray(value)) {
29
+ result = ((_e = (_d = values === null || values === void 0 ? void 0 : values.filter(e => value === null || value === void 0 ? void 0 : value.includes(e === null || e === void 0 ? void 0 : e[valueField]))) === null || _d === void 0 ? void 0 : _d.map(e => e === null || e === void 0 ? void 0 : e[displayField])) === null || _e === void 0 ? void 0 : _e.join(', ')) || (value === null || value === void 0 ? void 0 : value.join(', '));
30
+ }
31
+ else {
32
+ result = ((_f = values === null || values === void 0 ? void 0 : values.find(e => (e === null || e === void 0 ? void 0 : e[valueField]) === value)) === null || _f === void 0 ? void 0 : _f[displayField]) || value;
33
+ }
34
+ __classPrivateFieldGet(this, _cache)[key] = {
35
+ result
36
+ };
37
+ }
38
+ }
39
+ else {
40
+ if (!__classPrivateFieldGet(this, _cache)[key]) {
41
+ let result = '';
42
+ if (isMultible && Array.isArray(value)) {
43
+ result = (_j = (_h = (_g = items === null || items === void 0 ? void 0 : items.filter(e => value === null || value === void 0 ? void 0 : value.includes(e === null || e === void 0 ? void 0 : e[valueField]))) === null || _g === void 0 ? void 0 : _g.map(e => e === null || e === void 0 ? void 0 : e[displayField])) === null || _h === void 0 ? void 0 : _h.join(', ')) !== null && _j !== void 0 ? _j : value === null || value === void 0 ? void 0 : value.join(', ');
44
+ }
45
+ else {
46
+ result = ((_k = items === null || items === void 0 ? void 0 : items.find(e => (e === null || e === void 0 ? void 0 : e[valueField]) === value)) === null || _k === void 0 ? void 0 : _k[displayField]) || value;
47
+ }
48
+ __classPrivateFieldGet(this, _cache)[key] = {
49
+ result
50
+ };
51
+ }
52
+ }
53
+ return __classPrivateFieldGet(this, _cache)[key].result;
54
+ });
55
+ }
56
+ }
57
+ _prefix = new WeakMap(), _cache = new WeakMap();
58
+ SdColumnValuesPipe.decorators = [
59
+ { type: Pipe, args: [{
60
+ name: 'columnValues'
61
+ },] }
62
+ ];
63
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sdW1uLXZhbHVlcy5waXBlLmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL25naGlhdHQxNV9vbmVtb3VudC9Eb2N1bWVudHMvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS90YWJsZS8iLCJzb3VyY2VzIjpbInNyYy9saWIvcGlwZXMvY29sdW1uLXZhbHVlcy5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxJQUFJLE1BQU0sYUFBYSxDQUFDO0FBSy9CLE1BQU0sT0FBTyxrQkFBa0I7SUFIL0I7UUFJRSxrQkFBVSxzQ0FBc0MsRUFBQztRQUNqRCxpQkFJSSxFQUFFLEVBQUM7UUFDUCxjQUFTLEdBQUcsQ0FBTyxLQUFVLEVBQUUsTUFBcUIsRUFBbUIsRUFBRTs7WUFDdkUsSUFBSSxNQUFNLENBQUMsSUFBSSxLQUFLLFFBQVEsSUFBSSxRQUFDLE1BQU0sQ0FBQyxNQUFNLDBDQUFFLEtBQUssQ0FBQSxJQUFJLFFBQUMsTUFBTSxDQUFDLE1BQU0sMENBQUUsVUFBVSxDQUFBLElBQUksUUFBQyxNQUFNLENBQUMsTUFBTSwwQ0FBRSxZQUFZLENBQUEsRUFBRTtnQkFDbkgsT0FBTyxLQUFLLENBQUM7YUFDZDtZQUNELE1BQU0sS0FBNEQsTUFBTSxDQUFDLE1BQU0sRUFBekUsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxTQUFTLE9BQTZCLEVBQXhCLE1BQU0sY0FBdkQsb0RBQXlELENBQWdCLENBQUM7WUFDaEYsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDO2dCQUNmLE1BQU0sdUNBQWM7Z0JBQ3BCLFVBQVU7Z0JBQ1YsWUFBWTtnQkFDWixTQUFTO2dCQUNULE1BQU07Z0JBQ04sS0FBSzthQUNOLENBQUMsQ0FBQztZQUNILE1BQU0sVUFBVSxHQUFHLENBQUMsVUFBVSxFQUFFLHNCQUFzQixFQUFFLGlCQUFpQixFQUFFLDZCQUE2QixDQUFDLENBQUMsUUFBUSxDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQzlILElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQyxLQUFLLFVBQVUsRUFBRTtnQkFDakMsSUFBSSxDQUFDLHFDQUFZLEdBQUcsQ0FBQyxFQUFFO29CQUNyQixNQUFNLE1BQU0sR0FBRyxNQUFNLEtBQUssQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLENBQUM7b0JBQ3hDLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQztvQkFDaEIsSUFBSSxVQUFVLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTt3QkFDdEMsTUFBTSxHQUFHLGFBQUEsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssYUFBTCxLQUFLLHVCQUFMLEtBQUssQ0FBRSxRQUFRLENBQUMsQ0FBQyxhQUFELENBQUMsdUJBQUQsQ0FBQyxDQUFHLFVBQVUsRUFBRSwyQ0FBRyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLGFBQUQsQ0FBQyx1QkFBRCxDQUFDLENBQUcsWUFBWSxDQUFDLDJDQUFHLElBQUksQ0FBQyxJQUFJLE9BQUssS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLElBQUksQ0FBQyxJQUFJLEVBQUMsQ0FBQztxQkFDOUg7eUJBQ0k7d0JBQ0gsTUFBTSxHQUFHLE9BQUEsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUEsQ0FBQyxhQUFELENBQUMsdUJBQUQsQ0FBQyxDQUFHLFVBQVUsT0FBTSxLQUFLLDJDQUFJLFlBQVksTUFBSyxLQUFLLENBQUM7cUJBQ2hGO29CQUNELHFDQUFZLEdBQUcsQ0FBQyxHQUFHO3dCQUNqQixNQUFNO3FCQUNQLENBQUM7aUJBQ0g7YUFDRjtpQkFBTTtnQkFDTCxJQUFJLENBQUMscUNBQVksR0FBRyxDQUFDLEVBQUU7b0JBQ3JCLElBQUksTUFBTSxHQUFHLEVBQUUsQ0FBQztvQkFDaEIsSUFBSSxVQUFVLElBQUksS0FBSyxDQUFDLE9BQU8sQ0FBQyxLQUFLLENBQUMsRUFBRTt3QkFDdEMsTUFBTSxxQkFBRyxLQUFLLGFBQUwsS0FBSyx1QkFBTCxLQUFLLENBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLFFBQVEsQ0FBQyxDQUFDLGFBQUQsQ0FBQyx1QkFBRCxDQUFDLENBQUcsVUFBVSxFQUFFLDJDQUFHLEdBQUcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsYUFBRCxDQUFDLHVCQUFELENBQUMsQ0FBRyxZQUFZLENBQUMsMkNBQUcsSUFBSSxDQUFDLElBQUksb0NBQUssS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztxQkFDN0g7eUJBQ0k7d0JBQ0gsTUFBTSxHQUFHLE9BQUEsS0FBSyxhQUFMLEtBQUssdUJBQUwsS0FBSyxDQUFFLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUEsQ0FBQyxhQUFELENBQUMsdUJBQUQsQ0FBQyxDQUFHLFVBQVUsT0FBTSxLQUFLLDJDQUFJLFlBQVksTUFBSyxLQUFLLENBQUE7cUJBQzlFO29CQUNELHFDQUFZLEdBQUcsQ0FBQyxHQUFHO3dCQUNqQixNQUFNO3FCQUNQLENBQUM7aUJBQ0g7YUFDRjtZQUNELE9BQU8scUNBQVksR0FBRyxDQUFDLENBQUMsTUFBTSxDQUFDO1FBQ2pDLENBQUMsQ0FBQSxDQUFBO0lBQ0gsQ0FBQzs7OztZQXREQSxJQUFJLFNBQUM7Z0JBQ0osSUFBSSxFQUFFLGNBQWM7YUFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCBoYXNoIGZyb20gJ29iamVjdC1oYXNoJztcclxuaW1wb3J0IHsgU2RUYWJsZUNvbHVtbiB9IGZyb20gJy4uL21vZGVscy90YWJsZS1jb2x1bW4ubW9kZWwnO1xyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ2NvbHVtblZhbHVlcydcclxufSlcclxuZXhwb3J0IGNsYXNzIFNkQ29sdW1uVmFsdWVzUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gICNwcmVmaXggPSAnYTFlNjc2NjAtOGFhMi00YzExLWIwMmQtNzFhMzIxODg3MTlmJztcclxuICAjY2FjaGU6IHtcclxuICAgIFtrZXk6IHN0cmluZ106IHtcclxuICAgICAgcmVzdWx0OiBhbnlcclxuICAgIH1cclxuICB9ID0ge307XHJcbiAgdHJhbnNmb3JtID0gYXN5bmMgKHZhbHVlOiBhbnksIGNvbHVtbjogU2RUYWJsZUNvbHVtbik6IFByb21pc2U8c3RyaW5nPiA9PiB7XHJcbiAgICBpZiAoY29sdW1uLnR5cGUgIT09ICd2YWx1ZXMnIHx8ICFjb2x1bW4ub3B0aW9uPy5pdGVtcyB8fCAhY29sdW1uLm9wdGlvbj8udmFsdWVGaWVsZCB8fCAhY29sdW1uLm9wdGlvbj8uZGlzcGxheUZpZWxkKSB7XHJcbiAgICAgIHJldHVybiB2YWx1ZTtcclxuICAgIH1cclxuICAgIGNvbnN0IHsgaXRlbXMsIHZhbHVlRmllbGQsIGRpc3BsYXlGaWVsZCwgc2VsZWN0aW9uLCAuLi5yZW1haW4gfSA9IGNvbHVtbi5vcHRpb247XHJcbiAgICBjb25zdCBrZXkgPSBoYXNoKHtcclxuICAgICAgcHJlZml4OiB0aGlzLiNwcmVmaXgsXHJcbiAgICAgIHZhbHVlRmllbGQsXHJcbiAgICAgIGRpc3BsYXlGaWVsZCxcclxuICAgICAgc2VsZWN0aW9uLFxyXG4gICAgICByZW1haW4sXHJcbiAgICAgIHZhbHVlXHJcbiAgICB9KTtcclxuICAgIGNvbnN0IGlzTXVsdGlibGUgPSBbJ01VTFRJUExFJywgJ01VTFRJUExFQVVUT0NPTVBMRVRFJywgJ01VTFRJUExFX0VESVRPUicsICdNVUxUSVBMRUFVVE9DT01QTEVURV9FRElUT1InXS5pbmNsdWRlcyhzZWxlY3Rpb24pO1xyXG4gICAgaWYgKHR5cGVvZiAoaXRlbXMpID09PSAnZnVuY3Rpb24nKSB7XHJcbiAgICAgIGlmICghdGhpcy4jY2FjaGVba2V5XSkge1xyXG4gICAgICAgIGNvbnN0IHZhbHVlcyA9IGF3YWl0IGl0ZW1zKHZhbHVlLCB0cnVlKTtcclxuICAgICAgICBsZXQgcmVzdWx0ID0gJyc7XHJcbiAgICAgICAgaWYgKGlzTXVsdGlibGUgJiYgQXJyYXkuaXNBcnJheSh2YWx1ZSkpIHtcclxuICAgICAgICAgIHJlc3VsdCA9IHZhbHVlcz8uZmlsdGVyKGUgPT4gdmFsdWU/LmluY2x1ZGVzKGU/Llt2YWx1ZUZpZWxkXSkpPy5tYXAoZSA9PiBlPy5bZGlzcGxheUZpZWxkXSk/LmpvaW4oJywgJykgfHwgdmFsdWU/LmpvaW4oJywgJyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgcmVzdWx0ID0gdmFsdWVzPy5maW5kKGUgPT4gZT8uW3ZhbHVlRmllbGRdID09PSB2YWx1ZSk/LltkaXNwbGF5RmllbGRdIHx8IHZhbHVlO1xyXG4gICAgICAgIH1cclxuICAgICAgICB0aGlzLiNjYWNoZVtrZXldID0ge1xyXG4gICAgICAgICAgcmVzdWx0XHJcbiAgICAgICAgfTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgaWYgKCF0aGlzLiNjYWNoZVtrZXldKSB7XHJcbiAgICAgICAgbGV0IHJlc3VsdCA9ICcnO1xyXG4gICAgICAgIGlmIChpc011bHRpYmxlICYmIEFycmF5LmlzQXJyYXkodmFsdWUpKSB7XHJcbiAgICAgICAgICByZXN1bHQgPSBpdGVtcz8uZmlsdGVyKGUgPT4gdmFsdWU/LmluY2x1ZGVzKGU/Llt2YWx1ZUZpZWxkXSkpPy5tYXAoZSA9PiBlPy5bZGlzcGxheUZpZWxkXSk/LmpvaW4oJywgJykgPz8gdmFsdWU/LmpvaW4oJywgJyk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGVsc2Uge1xyXG4gICAgICAgICAgcmVzdWx0ID0gaXRlbXM/LmZpbmQoZSA9PiBlPy5bdmFsdWVGaWVsZF0gPT09IHZhbHVlKT8uW2Rpc3BsYXlGaWVsZF0gfHwgdmFsdWVcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy4jY2FjaGVba2V5XSA9IHtcclxuICAgICAgICAgIHJlc3VsdFxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiB0aGlzLiNjYWNoZVtrZXldLnJlc3VsdDtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,18 @@
1
+ import { Pipe } from '@angular/core';
2
+ export class SdCommandDisablePipe {
3
+ transform(item, command) {
4
+ if (!(command === null || command === void 0 ? void 0 : command.disabled)) {
5
+ return false;
6
+ }
7
+ if (typeof (command.disabled) === 'boolean') {
8
+ return command.disabled;
9
+ }
10
+ return command.disabled(item);
11
+ }
12
+ }
13
+ SdCommandDisablePipe.decorators = [
14
+ { type: Pipe, args: [{
15
+ name: 'commandDisable'
16
+ },] }
17
+ ];
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC1kaXNhYmxlLnBpcGUuanMiLCJzb3VyY2VSb290IjoiQzovVXNlcnMvbmdoaWF0dDE1X29uZW1vdW50L0RvY3VtZW50cy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL3RhYmxlLyIsInNvdXJjZXMiOlsic3JjL2xpYi9waXBlcy9jb21tYW5kLWRpc2FibGUucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUtwRCxNQUFNLE9BQU8sb0JBQW9CO0lBQy9CLFNBQVMsQ0FBQyxJQUFTLEVBQUUsT0FBdUI7UUFDMUMsSUFBSSxFQUFDLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxRQUFRLENBQUEsRUFBRTtZQUN0QixPQUFPLEtBQUssQ0FBQztTQUNkO1FBQ0QsSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxLQUFLLFNBQVMsRUFBRTtZQUMzQyxPQUFPLE9BQU8sQ0FBQyxRQUFRLENBQUM7U0FDekI7UUFDRCxPQUFPLE9BQU8sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEMsQ0FBQzs7O1lBWkYsSUFBSSxTQUFDO2dCQUNKLElBQUksRUFBRSxnQkFBZ0I7YUFDdkIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNkVGFibGVDb21tYW5kIH0gZnJvbSAnLi4vbW9kZWxzL3RhYmxlLWNvbW1hbmQubW9kZWwnO1xyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ2NvbW1hbmREaXNhYmxlJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU2RDb21tYW5kRGlzYWJsZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuICB0cmFuc2Zvcm0oaXRlbTogYW55LCBjb21tYW5kOiBTZFRhYmxlQ29tbWFuZCk6IGJvb2xlYW4ge1xyXG4gICAgaWYgKCFjb21tYW5kPy5kaXNhYmxlZCkge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgICBpZiAodHlwZW9mIChjb21tYW5kLmRpc2FibGVkKSA9PT0gJ2Jvb2xlYW4nKSB7XHJcbiAgICAgIHJldHVybiBjb21tYW5kLmRpc2FibGVkO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGNvbW1hbmQuZGlzYWJsZWQoaXRlbSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,79 @@
1
+ import { __awaiter } from "tslib";
2
+ import { Pipe } from '@angular/core';
3
+ export class SdCommandFilterPipe {
4
+ transform(item, commands) {
5
+ return __awaiter(this, void 0, void 0, function* () {
6
+ const results = [];
7
+ if (!commands) {
8
+ return results;
9
+ }
10
+ for (const command of commands) {
11
+ let flag = false;
12
+ const { hidden } = command;
13
+ if (hidden === undefined) {
14
+ flag = true;
15
+ }
16
+ else if (typeof (hidden) === 'boolean') {
17
+ if (!hidden) {
18
+ flag = true;
19
+ }
20
+ }
21
+ else {
22
+ const isHidden = hidden(item);
23
+ if (isHidden instanceof Promise) {
24
+ if (!(yield isHidden)) {
25
+ flag = true;
26
+ }
27
+ }
28
+ else {
29
+ if (!isHidden) {
30
+ flag = true;
31
+ }
32
+ }
33
+ }
34
+ if (flag) {
35
+ if ('children' in command) {
36
+ const children = [];
37
+ for (const childCommand of command.children) {
38
+ const { hidden } = childCommand;
39
+ if (hidden === undefined) {
40
+ children.push(childCommand);
41
+ }
42
+ else if (typeof (hidden) === 'boolean') {
43
+ if (!hidden) {
44
+ children.push(childCommand);
45
+ }
46
+ }
47
+ else {
48
+ const isHidden = hidden(item);
49
+ if (isHidden instanceof Promise) {
50
+ if (!(yield isHidden)) {
51
+ children.push(childCommand);
52
+ }
53
+ }
54
+ else {
55
+ if (!isHidden) {
56
+ children.push(childCommand);
57
+ }
58
+ }
59
+ }
60
+ }
61
+ if (children.length > 0) {
62
+ results.push(Object.assign(Object.assign({}, command), { children }));
63
+ }
64
+ }
65
+ else {
66
+ results.push(command);
67
+ }
68
+ }
69
+ }
70
+ return results;
71
+ });
72
+ }
73
+ }
74
+ SdCommandFilterPipe.decorators = [
75
+ { type: Pipe, args: [{
76
+ name: 'commandFilter'
77
+ },] }
78
+ ];
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC1maWx0ZXIucGlwZS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTVfb25lbW91bnQvRG9jdW1lbnRzL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvdGFibGUvIiwic291cmNlcyI6WyJzcmMvbGliL3BpcGVzL2NvbW1hbmQtZmlsdGVyLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBTXBELE1BQU0sT0FBTyxtQkFBbUI7SUFDeEIsU0FBUyxDQUFDLElBQWlCLEVBQUUsUUFBMEI7O1lBQzNELE1BQU0sT0FBTyxHQUFxQixFQUFFLENBQUM7WUFDckMsSUFBSSxDQUFDLFFBQVEsRUFBRTtnQkFDYixPQUFPLE9BQU8sQ0FBQzthQUNoQjtZQUNELEtBQUssTUFBTSxPQUFPLElBQUksUUFBUSxFQUFFO2dCQUM5QixJQUFJLElBQUksR0FBRyxLQUFLLENBQUM7Z0JBQ2pCLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxPQUFPLENBQUM7Z0JBQzNCLElBQUksTUFBTSxLQUFLLFNBQVMsRUFBRTtvQkFDeEIsSUFBSSxHQUFHLElBQUksQ0FBQztpQkFDYjtxQkFBTSxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxTQUFTLEVBQUU7b0JBQ3hDLElBQUksQ0FBQyxNQUFNLEVBQUU7d0JBQ1gsSUFBSSxHQUFHLElBQUksQ0FBQztxQkFDYjtpQkFDRjtxQkFBTTtvQkFDTCxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7b0JBQzlCLElBQUksUUFBUSxZQUFZLE9BQU8sRUFBRTt3QkFDL0IsSUFBSSxDQUFDLENBQUEsTUFBTSxRQUFRLENBQUEsRUFBRTs0QkFDbkIsSUFBSSxHQUFHLElBQUksQ0FBQzt5QkFDYjtxQkFDRjt5QkFBTTt3QkFDTCxJQUFJLENBQUMsUUFBUSxFQUFFOzRCQUNiLElBQUksR0FBRyxJQUFJLENBQUM7eUJBQ2I7cUJBQ0Y7aUJBQ0Y7Z0JBQ0QsSUFBSSxJQUFJLEVBQUU7b0JBQ1IsSUFBSSxVQUFVLElBQUksT0FBTyxFQUFFO3dCQUN6QixNQUFNLFFBQVEsR0FBMkIsRUFBRSxDQUFDO3dCQUM1QyxLQUFLLE1BQU0sWUFBWSxJQUFJLE9BQU8sQ0FBQyxRQUFRLEVBQUU7NEJBQzNDLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxZQUFZLENBQUM7NEJBQ2hDLElBQUksTUFBTSxLQUFLLFNBQVMsRUFBRTtnQ0FDeEIsUUFBUSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsQ0FBQzs2QkFDN0I7aUNBQU0sSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssU0FBUyxFQUFFO2dDQUN4QyxJQUFJLENBQUMsTUFBTSxFQUFFO29DQUNYLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7aUNBQzdCOzZCQUNGO2lDQUFNO2dDQUNMLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztnQ0FDOUIsSUFBSSxRQUFRLFlBQVksT0FBTyxFQUFFO29DQUMvQixJQUFJLENBQUMsQ0FBQSxNQUFNLFFBQVEsQ0FBQSxFQUFFO3dDQUNuQixRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO3FDQUM3QjtpQ0FDRjtxQ0FBTTtvQ0FDTCxJQUFJLENBQUMsUUFBUSxFQUFFO3dDQUNiLFFBQVEsQ0FBQyxJQUFJLENBQUMsWUFBWSxDQUFDLENBQUM7cUNBQzdCO2lDQUNGOzZCQUNGO3lCQUNGO3dCQUNELElBQUksUUFBUSxDQUFDLE1BQU0sR0FBRyxDQUFDLEVBQUU7NEJBQ3ZCLE9BQU8sQ0FBQyxJQUFJLGlDQUFNLE9BQU8sS0FBRSxRQUFRLElBQUcsQ0FBQzt5QkFDeEM7cUJBQ0Y7eUJBQU07d0JBQ0wsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztxQkFDdkI7aUJBQ0Y7YUFDRjtZQUNELE9BQU8sT0FBTyxDQUFDO1FBQ2pCLENBQUM7S0FBQTs7O1lBL0RGLElBQUksU0FBQztnQkFDSixJQUFJLEVBQUUsZUFBZTthQUN0QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU2RUYWJsZUNvbW1hbmQsIFNkVGFibGVDb21tYW5kTm9ybWFsIH0gZnJvbSAnLi4vbW9kZWxzL3RhYmxlLWNvbW1hbmQubW9kZWwnO1xyXG5pbXBvcnQgeyBTZFRhYmxlSXRlbSB9IGZyb20gJy4uL21vZGVscy90YWJsZS1pdGVtLm1vZGVsJztcclxuQFBpcGUoe1xyXG4gIG5hbWU6ICdjb21tYW5kRmlsdGVyJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU2RDb21tYW5kRmlsdGVyUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gIGFzeW5jIHRyYW5zZm9ybShpdGVtOiBTZFRhYmxlSXRlbSwgY29tbWFuZHM6IFNkVGFibGVDb21tYW5kW10pOiBQcm9taXNlPFNkVGFibGVDb21tYW5kW10+IHtcclxuICAgIGNvbnN0IHJlc3VsdHM6IFNkVGFibGVDb21tYW5kW10gPSBbXTtcclxuICAgIGlmICghY29tbWFuZHMpIHtcclxuICAgICAgcmV0dXJuIHJlc3VsdHM7XHJcbiAgICB9XHJcbiAgICBmb3IgKGNvbnN0IGNvbW1hbmQgb2YgY29tbWFuZHMpIHtcclxuICAgICAgbGV0IGZsYWcgPSBmYWxzZTtcclxuICAgICAgY29uc3QgeyBoaWRkZW4gfSA9IGNvbW1hbmQ7XHJcbiAgICAgIGlmIChoaWRkZW4gPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgIGZsYWcgPSB0cnVlO1xyXG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiAoaGlkZGVuKSA9PT0gJ2Jvb2xlYW4nKSB7XHJcbiAgICAgICAgaWYgKCFoaWRkZW4pIHtcclxuICAgICAgICAgIGZsYWcgPSB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBjb25zdCBpc0hpZGRlbiA9IGhpZGRlbihpdGVtKTtcclxuICAgICAgICBpZiAoaXNIaWRkZW4gaW5zdGFuY2VvZiBQcm9taXNlKSB7XHJcbiAgICAgICAgICBpZiAoIWF3YWl0IGlzSGlkZGVuKSB7XHJcbiAgICAgICAgICAgIGZsYWcgPSB0cnVlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICBpZiAoIWlzSGlkZGVuKSB7XHJcbiAgICAgICAgICAgIGZsYWcgPSB0cnVlO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAoZmxhZykge1xyXG4gICAgICAgIGlmICgnY2hpbGRyZW4nIGluIGNvbW1hbmQpIHtcclxuICAgICAgICAgIGNvbnN0IGNoaWxkcmVuOiBTZFRhYmxlQ29tbWFuZE5vcm1hbFtdID0gW107XHJcbiAgICAgICAgICBmb3IgKGNvbnN0IGNoaWxkQ29tbWFuZCBvZiBjb21tYW5kLmNoaWxkcmVuKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IHsgaGlkZGVuIH0gPSBjaGlsZENvbW1hbmQ7XHJcbiAgICAgICAgICAgIGlmIChoaWRkZW4gPT09IHVuZGVmaW5lZCkge1xyXG4gICAgICAgICAgICAgIGNoaWxkcmVuLnB1c2goY2hpbGRDb21tYW5kKTtcclxuICAgICAgICAgICAgfSBlbHNlIGlmICh0eXBlb2YgKGhpZGRlbikgPT09ICdib29sZWFuJykge1xyXG4gICAgICAgICAgICAgIGlmICghaGlkZGVuKSB7XHJcbiAgICAgICAgICAgICAgICBjaGlsZHJlbi5wdXNoKGNoaWxkQ29tbWFuZCk7XHJcbiAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIGNvbnN0IGlzSGlkZGVuID0gaGlkZGVuKGl0ZW0pO1xyXG4gICAgICAgICAgICAgIGlmIChpc0hpZGRlbiBpbnN0YW5jZW9mIFByb21pc2UpIHtcclxuICAgICAgICAgICAgICAgIGlmICghYXdhaXQgaXNIaWRkZW4pIHtcclxuICAgICAgICAgICAgICAgICAgY2hpbGRyZW4ucHVzaChjaGlsZENvbW1hbmQpO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICBpZiAoIWlzSGlkZGVuKSB7XHJcbiAgICAgICAgICAgICAgICAgIGNoaWxkcmVuLnB1c2goY2hpbGRDb21tYW5kKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH1cclxuICAgICAgICAgIGlmIChjaGlsZHJlbi5sZW5ndGggPiAwKSB7XHJcbiAgICAgICAgICAgIHJlc3VsdHMucHVzaCh7IC4uLmNvbW1hbmQsIGNoaWxkcmVuIH0pO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICByZXN1bHRzLnB1c2goY29tbWFuZCk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gcmVzdWx0cztcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,18 @@
1
+ import { Pipe } from '@angular/core';
2
+ export class SdCommandIconPipe {
3
+ transform(command, item) {
4
+ if (!(command === null || command === void 0 ? void 0 : command.icon)) {
5
+ return '';
6
+ }
7
+ if (typeof (command.icon) === 'string') {
8
+ return command.icon;
9
+ }
10
+ return command.icon(item);
11
+ }
12
+ }
13
+ SdCommandIconPipe.decorators = [
14
+ { type: Pipe, args: [{
15
+ name: 'commandIcon'
16
+ },] }
17
+ ];
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC1pY29uLnBpcGUuanMiLCJzb3VyY2VSb290IjoiQzovVXNlcnMvbmdoaWF0dDE1X29uZW1vdW50L0RvY3VtZW50cy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL3RhYmxlLyIsInNvdXJjZXMiOlsic3JjL2xpYi9waXBlcy9jb21tYW5kLWljb24ucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUtwRCxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLFNBQVMsQ0FBQyxPQUF1QixFQUFFLElBQVM7UUFDMUMsSUFBSSxFQUFDLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxJQUFJLENBQUEsRUFBRTtZQUNsQixPQUFPLEVBQUUsQ0FBQztTQUNYO1FBQ0QsSUFBSSxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLFFBQVEsRUFBRTtZQUN0QyxPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUM7U0FDckI7UUFDRCxPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUIsQ0FBQzs7O1lBWkYsSUFBSSxTQUFDO2dCQUNKLElBQUksRUFBRSxhQUFhO2FBQ3BCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTZFRhYmxlQ29tbWFuZCB9IGZyb20gJy4uL21vZGVscy90YWJsZS1jb21tYW5kLm1vZGVsJztcclxuQFBpcGUoe1xyXG4gIG5hbWU6ICdjb21tYW5kSWNvbidcclxufSlcclxuZXhwb3J0IGNsYXNzIFNkQ29tbWFuZEljb25QaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgdHJhbnNmb3JtKGNvbW1hbmQ6IFNkVGFibGVDb21tYW5kLCBpdGVtOiBhbnkpOiBzdHJpbmcge1xyXG4gICAgaWYgKCFjb21tYW5kPy5pY29uKSB7XHJcbiAgICAgIHJldHVybiAnJztcclxuICAgIH1cclxuICAgIGlmICh0eXBlb2YgKGNvbW1hbmQuaWNvbikgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgIHJldHVybiBjb21tYW5kLmljb247XHJcbiAgICB9XHJcbiAgICByZXR1cm4gY29tbWFuZC5pY29uKGl0ZW0pO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,18 @@
1
+ import { Pipe } from '@angular/core';
2
+ export class SdCommandTitlePipe {
3
+ transform(command, item) {
4
+ if (!(command === null || command === void 0 ? void 0 : command.title)) {
5
+ return '';
6
+ }
7
+ if (typeof (command.title) === 'string') {
8
+ return command.title;
9
+ }
10
+ return command.title(item);
11
+ }
12
+ }
13
+ SdCommandTitlePipe.decorators = [
14
+ { type: Pipe, args: [{
15
+ name: 'commandTitle'
16
+ },] }
17
+ ];
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29tbWFuZC10aXRsZS5waXBlLmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL25naGlhdHQxNV9vbmVtb3VudC9Eb2N1bWVudHMvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS90YWJsZS8iLCJzb3VyY2VzIjpbInNyYy9saWIvcGlwZXMvY29tbWFuZC10aXRsZS5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBS3BELE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsU0FBUyxDQUFDLE9BQXVCLEVBQUUsSUFBUztRQUMxQyxJQUFJLEVBQUMsT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLEtBQUssQ0FBQSxFQUFFO1lBQ25CLE9BQU8sRUFBRSxDQUFDO1NBQ1g7UUFDRCxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEtBQUssUUFBUSxFQUFFO1lBQ3ZDLE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQztTQUN0QjtRQUNELE9BQU8sT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QixDQUFDOzs7WUFaRixJQUFJLFNBQUM7Z0JBQ0osSUFBSSxFQUFFLGNBQWM7YUFDckIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNkVGFibGVDb21tYW5kIH0gZnJvbSAnLi4vbW9kZWxzL3RhYmxlLWNvbW1hbmQubW9kZWwnO1xyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ2NvbW1hbmRUaXRsZSdcclxufSlcclxuZXhwb3J0IGNsYXNzIFNkQ29tbWFuZFRpdGxlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gIHRyYW5zZm9ybShjb21tYW5kOiBTZFRhYmxlQ29tbWFuZCwgaXRlbTogYW55KTogc3RyaW5nIHtcclxuICAgIGlmICghY29tbWFuZD8udGl0bGUpIHtcclxuICAgICAgcmV0dXJuICcnO1xyXG4gICAgfVxyXG4gICAgaWYgKHR5cGVvZiAoY29tbWFuZC50aXRsZSkgPT09ICdzdHJpbmcnKSB7XHJcbiAgICAgIHJldHVybiBjb21tYW5kLnRpdGxlO1xyXG4gICAgfVxyXG4gICAgcmV0dXJuIGNvbW1hbmQudGl0bGUoaXRlbSk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,30 @@
1
+ import { Pipe } from '@angular/core';
2
+ export class SdFilterColumnPipe {
3
+ transform(columns, field) {
4
+ var _a, _b;
5
+ const results = [];
6
+ if (!columns) {
7
+ return results;
8
+ }
9
+ for (const column of columns) {
10
+ if (column.type === 'children') {
11
+ for (const columnChildren of column === null || column === void 0 ? void 0 : column.children) {
12
+ if (!((_a = columnChildren.filter) === null || _a === void 0 ? void 0 : _a.disabled)) {
13
+ results.push(columnChildren);
14
+ }
15
+ }
16
+ continue;
17
+ }
18
+ if (!((_b = column.filter) === null || _b === void 0 ? void 0 : _b.disabled)) {
19
+ results.push(column);
20
+ }
21
+ }
22
+ return results.filter(e => !field || e.field === field);
23
+ }
24
+ }
25
+ SdFilterColumnPipe.decorators = [
26
+ { type: Pipe, args: [{
27
+ name: 'sdFilterColumn'
28
+ },] }
29
+ ];
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWNvbHVtbi5waXBlLmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL25naGlhdHQxNV9vbmVtb3VudC9Eb2N1bWVudHMvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS90YWJsZS8iLCJzb3VyY2VzIjpbInNyYy9saWIvcGlwZXMvZmlsdGVyLWNvbHVtbi5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBS3BELE1BQU0sT0FBTyxrQkFBa0I7SUFDN0IsU0FBUyxDQUFDLE9BQXdCLEVBQUUsS0FBYzs7UUFDaEQsTUFBTSxPQUFPLEdBQW9CLEVBQUUsQ0FBQztRQUNwQyxJQUFJLENBQUMsT0FBTyxFQUFFO1lBQ1osT0FBTyxPQUFPLENBQUM7U0FDaEI7UUFDRCxLQUFLLE1BQU0sTUFBTSxJQUFJLE9BQU8sRUFBRTtZQUM1QixJQUFJLE1BQU0sQ0FBQyxJQUFJLEtBQUssVUFBVSxFQUFFO2dCQUM5QixLQUFLLE1BQU0sY0FBYyxJQUFJLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxRQUFRLEVBQUU7b0JBQzdDLElBQUksUUFBQyxjQUFjLENBQUMsTUFBTSwwQ0FBRSxRQUFRLENBQUEsRUFBRTt3QkFDcEMsT0FBTyxDQUFDLElBQUksQ0FBQyxjQUFjLENBQUMsQ0FBQztxQkFDOUI7aUJBQ0Y7Z0JBQ0QsU0FBUzthQUNWO1lBQ0QsSUFBSSxRQUFDLE1BQU0sQ0FBQyxNQUFNLDBDQUFFLFFBQVEsQ0FBQSxFQUFFO2dCQUM1QixPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO2FBQ3RCO1NBQ0Y7UUFDRCxPQUFPLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssSUFBSSxDQUFDLENBQUMsS0FBSyxLQUFLLEtBQUssQ0FBQyxDQUFDO0lBQzFELENBQUM7OztZQXZCRixJQUFJLFNBQUM7Z0JBQ0osSUFBSSxFQUFFLGdCQUFnQjthQUN2QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU2RUYWJsZUNvbHVtbiB9IGZyb20gJy4uL21vZGVscy90YWJsZS1jb2x1bW4ubW9kZWwnO1xyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ3NkRmlsdGVyQ29sdW1uJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgU2RGaWx0ZXJDb2x1bW5QaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgdHJhbnNmb3JtKGNvbHVtbnM6IFNkVGFibGVDb2x1bW5bXSwgZmllbGQ/OiBzdHJpbmcpOiBTZFRhYmxlQ29sdW1uW10ge1xyXG4gICAgY29uc3QgcmVzdWx0czogU2RUYWJsZUNvbHVtbltdID0gW107XHJcbiAgICBpZiAoIWNvbHVtbnMpIHtcclxuICAgICAgcmV0dXJuIHJlc3VsdHM7XHJcbiAgICB9XHJcbiAgICBmb3IgKGNvbnN0IGNvbHVtbiBvZiBjb2x1bW5zKSB7XHJcbiAgICAgIGlmIChjb2x1bW4udHlwZSA9PT0gJ2NoaWxkcmVuJykge1xyXG4gICAgICAgIGZvciAoY29uc3QgY29sdW1uQ2hpbGRyZW4gb2YgY29sdW1uPy5jaGlsZHJlbikge1xyXG4gICAgICAgICAgaWYgKCFjb2x1bW5DaGlsZHJlbi5maWx0ZXI/LmRpc2FibGVkKSB7XHJcbiAgICAgICAgICAgIHJlc3VsdHMucHVzaChjb2x1bW5DaGlsZHJlbik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGNvbnRpbnVlO1xyXG4gICAgICB9XHJcbiAgICAgIGlmICghY29sdW1uLmZpbHRlcj8uZGlzYWJsZWQpIHtcclxuICAgICAgICByZXN1bHRzLnB1c2goY29sdW1uKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdHMuZmlsdGVyKGUgPT4gIWZpZWxkIHx8IGUuZmllbGQgPT09IGZpZWxkKTtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,19 @@
1
+ import { Pipe } from '@angular/core';
2
+ export class SdFilterExternalPipe {
3
+ transform(externalFilters, field) {
4
+ const results = [];
5
+ if (!externalFilters) {
6
+ return results;
7
+ }
8
+ for (const filter of externalFilters) {
9
+ results.push(filter);
10
+ }
11
+ return results.filter(e => !field || e.field === field);
12
+ }
13
+ }
14
+ SdFilterExternalPipe.decorators = [
15
+ { type: Pipe, args: [{
16
+ name: 'sdFilterExternal'
17
+ },] }
18
+ ];
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLWV4dGVybmFsLnBpcGUuanMiLCJzb3VyY2VSb290IjoiQzovVXNlcnMvbmdoaWF0dDE1X29uZW1vdW50L0RvY3VtZW50cy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL3RhYmxlLyIsInNvdXJjZXMiOlsic3JjL2xpYi9waXBlcy9maWx0ZXItZXh0ZXJuYWwucGlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUtwRCxNQUFNLE9BQU8sb0JBQW9CO0lBQy9CLFNBQVMsQ0FBQyxlQUF3QyxFQUFFLEtBQWM7UUFDaEUsTUFBTSxPQUFPLEdBQTRCLEVBQUUsQ0FBQztRQUM1QyxJQUFJLENBQUMsZUFBZSxFQUFFO1lBQ3BCLE9BQU8sT0FBTyxDQUFDO1NBQ2hCO1FBQ0QsS0FBSyxNQUFNLE1BQU0sSUFBSSxlQUFlLEVBQUU7WUFDcEMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztTQUN0QjtRQUNELE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQyxLQUFLLEtBQUssS0FBSyxDQUFDLENBQUM7SUFDMUQsQ0FBQzs7O1lBYkYsSUFBSSxTQUFDO2dCQUNKLElBQUksRUFBRSxrQkFBa0I7YUFDekIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFNkVGFibGVFeHRlcm5hbEZpbHRlciB9IGZyb20gJy4uL3NlcnZpY2VzL3RhYmxlLWZpbHRlci90YWJsZS1maWx0ZXIubW9kZWwnO1xyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ3NkRmlsdGVyRXh0ZXJuYWwnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZEZpbHRlckV4dGVybmFsUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gIHRyYW5zZm9ybShleHRlcm5hbEZpbHRlcnM6IFNkVGFibGVFeHRlcm5hbEZpbHRlcltdLCBmaWVsZD86IHN0cmluZyk6IFNkVGFibGVFeHRlcm5hbEZpbHRlcltdIHtcclxuICAgIGNvbnN0IHJlc3VsdHM6IFNkVGFibGVFeHRlcm5hbEZpbHRlcltdID0gW107XHJcbiAgICBpZiAoIWV4dGVybmFsRmlsdGVycykge1xyXG4gICAgICByZXR1cm4gcmVzdWx0cztcclxuICAgIH1cclxuICAgIGZvciAoY29uc3QgZmlsdGVyIG9mIGV4dGVybmFsRmlsdGVycykge1xyXG4gICAgICByZXN1bHRzLnB1c2goZmlsdGVyKTtcclxuICAgIH1cclxuICAgIHJldHVybiByZXN1bHRzLmZpbHRlcihlID0+ICFmaWVsZCB8fCBlLmZpZWxkID09PSBmaWVsZCk7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,21 @@
1
+ import { Pipe } from '@angular/core';
2
+ import { SdTableConfigurationService } from '../services/table-configuration.service';
3
+ export class SdGridConfigurationResultPipe {
4
+ constructor(gridConfigurationService) {
5
+ this.gridConfigurationService = gridConfigurationService;
6
+ }
7
+ transform(configuration, gridOption, sdSubInformation) {
8
+ const a = this.gridConfigurationService.generateConfigurationResult(configuration, gridOption, sdSubInformation);
9
+ console.log(a);
10
+ return a;
11
+ }
12
+ }
13
+ SdGridConfigurationResultPipe.decorators = [
14
+ { type: Pipe, args: [{
15
+ name: 'sdGridConfigurationResult'
16
+ },] }
17
+ ];
18
+ SdGridConfigurationResultPipe.ctorParameters = () => [
19
+ { type: SdTableConfigurationService }
20
+ ];
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1jb25maWd1cmF0aW9uLXJlc3VsdC5waXBlLmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL25naGlhdHQxNV9vbmVtb3VudC9Eb2N1bWVudHMvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS90YWJsZS8iLCJzb3VyY2VzIjpbInNyYy9saWIvcGlwZXMvZ3JpZC1jb25maWd1cmF0aW9uLXJlc3VsdC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxJQUFJLEVBQWlCLE1BQU0sZUFBZSxDQUFDO0FBR3BELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBTXRGLE1BQU0sT0FBTyw2QkFBNkI7SUFDeEMsWUFBb0Isd0JBQXFEO1FBQXJELDZCQUF3QixHQUF4Qix3QkFBd0IsQ0FBNkI7SUFBSSxDQUFDO0lBQzlFLFNBQVMsQ0FBQyxhQUFrQyxFQUFFLFVBQXlCLEVBQUUsZ0JBQXNEO1FBQzdILE1BQU0sQ0FBQyxHQUFHLElBQUksQ0FBQyx3QkFBd0IsQ0FBQywyQkFBMkIsQ0FBQyxhQUFhLEVBQUUsVUFBVSxFQUFFLGdCQUFnQixDQUFDLENBQUM7UUFDakgsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNmLE9BQU8sQ0FBQyxDQUFDO0lBQ1gsQ0FBQzs7O1lBVEYsSUFBSSxTQUFDO2dCQUNKLElBQUksRUFBRSwyQkFBMkI7YUFDbEM7OztZQUxRLDJCQUEyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU2RUYWJsZU9wdGlvbiB9IGZyb20gJy4uL21vZGVscy90YWJsZS1vcHRpb24ubW9kZWwnO1xyXG5pbXBvcnQgeyBTZEdyaWRDb25maWd1cmF0aW9uLCBTZEdyaWRDb25maWd1cmF0aW9uUmVzdWx0IH0gZnJvbSAnLi4vbW9kZWxzL3RhYmxlLW9wdGlvbi1jb25maWcubW9kZWwnO1xyXG5pbXBvcnQgeyBTZFRhYmxlQ29uZmlndXJhdGlvblNlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy90YWJsZS1jb25maWd1cmF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBTZE1hdGVyaWFsU3ViSW5mb3JtYXRpb25EZWZEaXJlY3RpdmUgfSBmcm9tICcuLi9kaXJlY3RpdmVzL3NkLW1hdGVyaWFsLXN1Yi1pbmZvcm1hdGlvbi1kZWYuZGlyZWN0aXZlJztcclxuXHJcbkBQaXBlKHtcclxuICBuYW1lOiAnc2RHcmlkQ29uZmlndXJhdGlvblJlc3VsdCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFNkR3JpZENvbmZpZ3VyYXRpb25SZXN1bHRQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBncmlkQ29uZmlndXJhdGlvblNlcnZpY2U6IFNkVGFibGVDb25maWd1cmF0aW9uU2VydmljZSkgeyB9XHJcbiAgdHJhbnNmb3JtKGNvbmZpZ3VyYXRpb246IFNkR3JpZENvbmZpZ3VyYXRpb24sIGdyaWRPcHRpb246IFNkVGFibGVPcHRpb24sIHNkU3ViSW5mb3JtYXRpb246IFNkTWF0ZXJpYWxTdWJJbmZvcm1hdGlvbkRlZkRpcmVjdGl2ZSk6IFNkR3JpZENvbmZpZ3VyYXRpb25SZXN1bHQge1xyXG4gICAgY29uc3QgYSA9IHRoaXMuZ3JpZENvbmZpZ3VyYXRpb25TZXJ2aWNlLmdlbmVyYXRlQ29uZmlndXJhdGlvblJlc3VsdChjb25maWd1cmF0aW9uLCBncmlkT3B0aW9uLCBzZFN1YkluZm9ybWF0aW9uKTtcclxuICAgIGNvbnNvbGUubG9nKGEpO1xyXG4gICAgcmV0dXJuIGE7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,45 @@
1
+ import { Pipe } from '@angular/core';
2
+ import hash from 'object-hash';
3
+ import { MapToSdTableItem } from '../models/table-item.model';
4
+ export class SdGroupPipe {
5
+ transform(items, gridOption) {
6
+ var _a;
7
+ const { group } = gridOption;
8
+ if (!group) {
9
+ return items;
10
+ }
11
+ const { fields, htmlTemplate } = group;
12
+ if (!(fields === null || fields === void 0 ? void 0 : fields.length)) {
13
+ return items;
14
+ }
15
+ const groupItem = {};
16
+ for (const item of items) {
17
+ let obj = {};
18
+ for (const field of fields) {
19
+ obj = Object.assign(Object.assign({}, obj), ((_a = item[field]) !== null && _a !== void 0 ? _a : { [field]: item[field] }));
20
+ }
21
+ const key = hash(obj);
22
+ if (!groupItem[key]) {
23
+ groupItem[key] = [];
24
+ }
25
+ groupItem[key].push(item);
26
+ }
27
+ const results = [];
28
+ for (const key of Object.keys(groupItem)) {
29
+ const result = MapToSdTableItem({});
30
+ result.meta.group.items = groupItem[key];
31
+ result.meta.group.htmlTemplate = htmlTemplate(groupItem[key]);
32
+ results.push(result);
33
+ for (const item of groupItem[key]) {
34
+ results.push(item);
35
+ }
36
+ }
37
+ return results;
38
+ }
39
+ }
40
+ SdGroupPipe.decorators = [
41
+ { type: Pipe, args: [{
42
+ name: 'sdGroup',
43
+ },] }
44
+ ];
45
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2QtZ3JvdXAucGlwZS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTVfb25lbW91bnQvRG9jdW1lbnRzL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvdGFibGUvIiwic291cmNlcyI6WyJzcmMvbGliL3BpcGVzL3NkLWdyb3VwLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxJQUFJLE1BQU0sYUFBYSxDQUFDO0FBRS9CLE9BQU8sRUFBRSxnQkFBZ0IsRUFBZSxNQUFNLDRCQUE0QixDQUFDO0FBSTNFLE1BQU0sT0FBTyxXQUFXO0lBQ3RCLFNBQVMsQ0FBQyxLQUFvQixFQUFFLFVBQXlCOztRQUN2RCxNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsVUFBVSxDQUFDO1FBQzdCLElBQUksQ0FBQyxLQUFLLEVBQUU7WUFDVixPQUFPLEtBQUssQ0FBQztTQUNkO1FBQ0QsTUFBTSxFQUFFLE1BQU0sRUFBRSxZQUFZLEVBQUUsR0FBRyxLQUFLLENBQUM7UUFDdkMsSUFBSSxFQUFDLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxNQUFNLENBQUEsRUFBRTtZQUNuQixPQUFPLEtBQUssQ0FBQztTQUNkO1FBQ0QsTUFBTSxTQUFTLEdBRVgsRUFBRSxDQUFDO1FBQ1AsS0FBSyxNQUFNLElBQUksSUFBSSxLQUFLLEVBQUU7WUFDeEIsSUFBSSxHQUFHLEdBQUcsRUFBRSxDQUFDO1lBQ2IsS0FBSyxNQUFNLEtBQUssSUFBSSxNQUFNLEVBQUU7Z0JBQzFCLEdBQUcsbUNBQ0UsR0FBRyxHQUNILE9BQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxtQ0FBSSxFQUFFLENBQUMsS0FBSyxDQUFDLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FDN0MsQ0FBQzthQUNIO1lBQ0QsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDO1lBQ3RCLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ25CLFNBQVMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUM7YUFDckI7WUFDRCxTQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQzNCO1FBQ0QsTUFBTSxPQUFPLEdBQWtCLEVBQUUsQ0FBQztRQUNsQyxLQUFLLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUU7WUFDeEMsTUFBTSxNQUFNLEdBQUcsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDcEMsTUFBTSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxHQUFHLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQztZQUN6QyxNQUFNLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLEdBQUcsWUFBWSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO1lBQzlELE9BQU8sQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDckIsS0FBSyxNQUFNLElBQUksSUFBSSxTQUFTLENBQUMsR0FBRyxDQUFDLEVBQUU7Z0JBQ2pDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7YUFDcEI7U0FDRjtRQUNELE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7OztZQXpDRixJQUFJLFNBQUM7Z0JBQ0osSUFBSSxFQUFFLFNBQVM7YUFDaEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCBoYXNoIGZyb20gJ29iamVjdC1oYXNoJztcclxuaW1wb3J0IHsgU2RUYWJsZU9wdGlvbiB9IGZyb20gJy4uL21vZGVscy90YWJsZS1vcHRpb24ubW9kZWwnO1xyXG5pbXBvcnQgeyBNYXBUb1NkVGFibGVJdGVtLCBTZFRhYmxlSXRlbSB9IGZyb20gJy4uL21vZGVscy90YWJsZS1pdGVtLm1vZGVsJztcclxuQFBpcGUoe1xyXG4gIG5hbWU6ICdzZEdyb3VwJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNkR3JvdXBQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgdHJhbnNmb3JtKGl0ZW1zOiBTZFRhYmxlSXRlbVtdLCBncmlkT3B0aW9uOiBTZFRhYmxlT3B0aW9uKTogU2RUYWJsZUl0ZW1bXSB7XHJcbiAgICBjb25zdCB7IGdyb3VwIH0gPSBncmlkT3B0aW9uO1xyXG4gICAgaWYgKCFncm91cCkge1xyXG4gICAgICByZXR1cm4gaXRlbXM7XHJcbiAgICB9XHJcbiAgICBjb25zdCB7IGZpZWxkcywgaHRtbFRlbXBsYXRlIH0gPSBncm91cDtcclxuICAgIGlmICghZmllbGRzPy5sZW5ndGgpIHtcclxuICAgICAgcmV0dXJuIGl0ZW1zO1xyXG4gICAgfVxyXG4gICAgY29uc3QgZ3JvdXBJdGVtOiB7XHJcbiAgICAgIFtrZXk6IHN0cmluZ106IFNkVGFibGVJdGVtW107XHJcbiAgICB9ID0ge307XHJcbiAgICBmb3IgKGNvbnN0IGl0ZW0gb2YgaXRlbXMpIHtcclxuICAgICAgbGV0IG9iaiA9IHt9O1xyXG4gICAgICBmb3IgKGNvbnN0IGZpZWxkIG9mIGZpZWxkcykge1xyXG4gICAgICAgIG9iaiA9IHtcclxuICAgICAgICAgIC4uLm9iaixcclxuICAgICAgICAgIC4uLihpdGVtW2ZpZWxkXSA/PyB7IFtmaWVsZF06IGl0ZW1bZmllbGRdIH0pLFxyXG4gICAgICAgIH07XHJcbiAgICAgIH1cclxuICAgICAgY29uc3Qga2V5ID0gaGFzaChvYmopO1xyXG4gICAgICBpZiAoIWdyb3VwSXRlbVtrZXldKSB7XHJcbiAgICAgICAgZ3JvdXBJdGVtW2tleV0gPSBbXTtcclxuICAgICAgfVxyXG4gICAgICBncm91cEl0ZW1ba2V5XS5wdXNoKGl0ZW0pO1xyXG4gICAgfVxyXG4gICAgY29uc3QgcmVzdWx0czogU2RUYWJsZUl0ZW1bXSA9IFtdO1xyXG4gICAgZm9yIChjb25zdCBrZXkgb2YgT2JqZWN0LmtleXMoZ3JvdXBJdGVtKSkge1xyXG4gICAgICBjb25zdCByZXN1bHQgPSBNYXBUb1NkVGFibGVJdGVtKHt9KTtcclxuICAgICAgcmVzdWx0Lm1ldGEuZ3JvdXAuaXRlbXMgPSBncm91cEl0ZW1ba2V5XTtcclxuICAgICAgcmVzdWx0Lm1ldGEuZ3JvdXAuaHRtbFRlbXBsYXRlID0gaHRtbFRlbXBsYXRlKGdyb3VwSXRlbVtrZXldKTtcclxuICAgICAgcmVzdWx0cy5wdXNoKHJlc3VsdCk7XHJcbiAgICAgIGZvciAoY29uc3QgaXRlbSBvZiBncm91cEl0ZW1ba2V5XSkge1xyXG4gICAgICAgIHJlc3VsdHMucHVzaChpdGVtKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHJlc3VsdHM7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,72 @@
1
+ var _convert;
2
+ import { __classPrivateFieldGet } from "tslib";
3
+ import { Pipe } from '@angular/core';
4
+ import hash from 'object-hash';
5
+ export class SdSelectionActionFilterPipe {
6
+ constructor() {
7
+ _convert.set(this, (action) => {
8
+ if ('children' in action) {
9
+ return {
10
+ title: action.title,
11
+ icon: action.icon,
12
+ fontSet: action.fontSet,
13
+ tooltip: action.tooltip,
14
+ color: action.color,
15
+ type: action.type,
16
+ children: action.children.map(e => ({
17
+ title: e.title,
18
+ icon: e.icon,
19
+ color: action.color,
20
+ type: action.type,
21
+ fontSet: e.fontSet,
22
+ tooltip: e.tooltip,
23
+ click: e.click
24
+ }))
25
+ };
26
+ }
27
+ return {
28
+ title: action.title,
29
+ icon: action.icon,
30
+ color: action.color,
31
+ type: action.type,
32
+ fontSet: action.fontSet,
33
+ tooltip: action.tooltip,
34
+ click: action.click
35
+ };
36
+ });
37
+ this.transform = (selectedItems, actions) => {
38
+ const results = [];
39
+ if (!(actions === null || actions === void 0 ? void 0 : actions.length) || !(selectedItems === null || selectedItems === void 0 ? void 0 : selectedItems.length)) {
40
+ return [];
41
+ }
42
+ for (const action of actions) {
43
+ if ('children' in action) {
44
+ const children = [];
45
+ for (const childAction of action.children) {
46
+ const key = hash(childAction);
47
+ if (selectedItems.every(e => e.meta.selector.actions.includes(key))) {
48
+ children.push(childAction);
49
+ }
50
+ }
51
+ if (children.length > 0) {
52
+ results.push(Object.assign(Object.assign({}, action), { children }));
53
+ }
54
+ }
55
+ else {
56
+ const key = hash(action);
57
+ if (selectedItems.every(e => e.meta.selector.actions.includes(key))) {
58
+ results.push(action);
59
+ }
60
+ }
61
+ }
62
+ return results.map(result => __classPrivateFieldGet(this, _convert).call(this, result));
63
+ };
64
+ }
65
+ }
66
+ _convert = new WeakMap();
67
+ SdSelectionActionFilterPipe.decorators = [
68
+ { type: Pipe, args: [{
69
+ name: 'selectionActionFilter'
70
+ },] }
71
+ ];
72
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLWFjdGlvbi1maWx0ZXIucGlwZS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTVfb25lbW91bnQvRG9jdW1lbnRzL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvdGFibGUvIiwic291cmNlcyI6WyJzcmMvbGliL3BpcGVzL3NlbGVjdGlvbi1hY3Rpb24tZmlsdGVyLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQUNwRCxPQUFPLElBQUksTUFBTSxhQUFhLENBQUM7QUFNL0IsTUFBTSxPQUFPLDJCQUEyQjtJQUh4QztRQUlFLG1CQUFXLENBQUMsTUFBcUIsRUFBaUIsRUFBRTtZQUNsRCxJQUFJLFVBQVUsSUFBSSxNQUFNLEVBQUU7Z0JBQ3hCLE9BQU87b0JBQ0wsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLO29CQUNuQixJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUk7b0JBQ2pCLE9BQU8sRUFBRSxNQUFNLENBQUMsT0FBTztvQkFDdkIsT0FBTyxFQUFFLE1BQU0sQ0FBQyxPQUFPO29CQUN2QixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUs7b0JBQ25CLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSTtvQkFDakIsUUFBUSxFQUFFLE1BQU0sQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQzt3QkFDbEMsS0FBSyxFQUFFLENBQUMsQ0FBQyxLQUFLO3dCQUNkLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSTt3QkFDWixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUs7d0JBQ25CLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSTt3QkFDakIsT0FBTyxFQUFFLENBQUMsQ0FBQyxPQUFPO3dCQUNsQixPQUFPLEVBQUUsQ0FBQyxDQUFDLE9BQU87d0JBQ2xCLEtBQUssRUFBRSxDQUFDLENBQUMsS0FBSztxQkFDZixDQUFDLENBQUM7aUJBQ0osQ0FBQzthQUNIO1lBQ0QsT0FBTztnQkFDTCxLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUs7Z0JBQ25CLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSTtnQkFDakIsS0FBSyxFQUFFLE1BQU0sQ0FBQyxLQUFLO2dCQUNuQixJQUFJLEVBQUUsTUFBTSxDQUFDLElBQUk7Z0JBQ2pCLE9BQU8sRUFBRSxNQUFNLENBQUMsT0FBTztnQkFDdkIsT0FBTyxFQUFFLE1BQU0sQ0FBQyxPQUFPO2dCQUN2QixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUs7YUFDcEIsQ0FBQztRQUVKLENBQUMsRUFBQTtRQUNELGNBQVMsR0FBRyxDQUFDLGFBQTRCLEVBQUUsT0FBd0IsRUFBbUIsRUFBRTtZQUN0RixNQUFNLE9BQU8sR0FBb0IsRUFBRSxDQUFDO1lBQ3BDLElBQUksRUFBQyxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsTUFBTSxDQUFBLElBQUksRUFBQyxhQUFhLGFBQWIsYUFBYSx1QkFBYixhQUFhLENBQUUsTUFBTSxDQUFBLEVBQUU7Z0JBQzlDLE9BQU8sRUFBRSxDQUFDO2FBQ1g7WUFDRCxLQUFLLE1BQU0sTUFBTSxJQUFJLE9BQU8sRUFBRTtnQkFDNUIsSUFBSSxVQUFVLElBQUksTUFBTSxFQUFFO29CQUN4QixNQUFNLFFBQVEsR0FBMEIsRUFBRSxDQUFDO29CQUMzQyxLQUFLLE1BQU0sV0FBVyxJQUFJLE1BQU0sQ0FBQyxRQUFRLEVBQUU7d0JBQ3pDLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQzt3QkFDOUIsSUFBSSxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFOzRCQUNuRSxRQUFRLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO3lCQUM1QjtxQkFDRjtvQkFDRCxJQUFJLFFBQVEsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxFQUFFO3dCQUN2QixPQUFPLENBQUMsSUFBSSxpQ0FBTSxNQUFNLEtBQUUsUUFBUSxJQUFHLENBQUM7cUJBQ3ZDO2lCQUNGO3FCQUFNO29CQUNMLE1BQU0sR0FBRyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztvQkFDekIsSUFBSSxhQUFhLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFO3dCQUNuRSxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO3FCQUN0QjtpQkFDRjthQUNGO1lBQ0QsT0FBTyxPQUFPLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsNENBQUEsSUFBSSxFQUFVLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDdEQsQ0FBQyxDQUFBO0lBQ0gsQ0FBQzs7OztZQTdEQSxJQUFJLFNBQUM7Z0JBQ0osSUFBSSxFQUFFLHVCQUF1QjthQUM5QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IGhhc2ggZnJvbSAnb2JqZWN0LWhhc2gnO1xyXG5pbXBvcnQgeyBTZFRhYmxlSXRlbSB9IGZyb20gJy4uL21vZGVscy90YWJsZS1pdGVtLm1vZGVsJztcclxuaW1wb3J0IHsgU2RUYWJsZUFjdGlvbiwgU2RUYWJsZUFjdGlvbk5vcm1hbCB9IGZyb20gJy4uL21vZGVscy90YWJsZS1vcHRpb24tc2VsZWN0b3IubW9kZWwnO1xyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ3NlbGVjdGlvbkFjdGlvbkZpbHRlcidcclxufSlcclxuZXhwb3J0IGNsYXNzIFNkU2VsZWN0aW9uQWN0aW9uRmlsdGVyUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xyXG4gICNjb252ZXJ0ID0gKGFjdGlvbjogU2RUYWJsZUFjdGlvbik6IFNkVGFibGVBY3Rpb24gPT4ge1xyXG4gICAgaWYgKCdjaGlsZHJlbicgaW4gYWN0aW9uKSB7XHJcbiAgICAgIHJldHVybiB7XHJcbiAgICAgICAgdGl0bGU6IGFjdGlvbi50aXRsZSxcclxuICAgICAgICBpY29uOiBhY3Rpb24uaWNvbixcclxuICAgICAgICBmb250U2V0OiBhY3Rpb24uZm9udFNldCxcclxuICAgICAgICB0b29sdGlwOiBhY3Rpb24udG9vbHRpcCxcclxuICAgICAgICBjb2xvcjogYWN0aW9uLmNvbG9yLFxyXG4gICAgICAgIHR5cGU6IGFjdGlvbi50eXBlLFxyXG4gICAgICAgIGNoaWxkcmVuOiBhY3Rpb24uY2hpbGRyZW4ubWFwKGUgPT4gKHtcclxuICAgICAgICAgIHRpdGxlOiBlLnRpdGxlLFxyXG4gICAgICAgICAgaWNvbjogZS5pY29uLFxyXG4gICAgICAgICAgY29sb3I6IGFjdGlvbi5jb2xvcixcclxuICAgICAgICAgIHR5cGU6IGFjdGlvbi50eXBlLFxyXG4gICAgICAgICAgZm9udFNldDogZS5mb250U2V0LFxyXG4gICAgICAgICAgdG9vbHRpcDogZS50b29sdGlwLFxyXG4gICAgICAgICAgY2xpY2s6IGUuY2xpY2tcclxuICAgICAgICB9KSlcclxuICAgICAgfTtcclxuICAgIH1cclxuICAgIHJldHVybiB7XHJcbiAgICAgIHRpdGxlOiBhY3Rpb24udGl0bGUsXHJcbiAgICAgIGljb246IGFjdGlvbi5pY29uLFxyXG4gICAgICBjb2xvcjogYWN0aW9uLmNvbG9yLFxyXG4gICAgICB0eXBlOiBhY3Rpb24udHlwZSxcclxuICAgICAgZm9udFNldDogYWN0aW9uLmZvbnRTZXQsXHJcbiAgICAgIHRvb2x0aXA6IGFjdGlvbi50b29sdGlwLFxyXG4gICAgICBjbGljazogYWN0aW9uLmNsaWNrXHJcbiAgICB9O1xyXG5cclxuICB9XHJcbiAgdHJhbnNmb3JtID0gKHNlbGVjdGVkSXRlbXM6IFNkVGFibGVJdGVtW10sIGFjdGlvbnM6IFNkVGFibGVBY3Rpb25bXSk6IFNkVGFibGVBY3Rpb25bXSA9PiB7XHJcbiAgICBjb25zdCByZXN1bHRzOiBTZFRhYmxlQWN0aW9uW10gPSBbXTtcclxuICAgIGlmICghYWN0aW9ucz8ubGVuZ3RoIHx8ICFzZWxlY3RlZEl0ZW1zPy5sZW5ndGgpIHtcclxuICAgICAgcmV0dXJuIFtdO1xyXG4gICAgfVxyXG4gICAgZm9yIChjb25zdCBhY3Rpb24gb2YgYWN0aW9ucykge1xyXG4gICAgICBpZiAoJ2NoaWxkcmVuJyBpbiBhY3Rpb24pIHtcclxuICAgICAgICBjb25zdCBjaGlsZHJlbjogU2RUYWJsZUFjdGlvbk5vcm1hbFtdID0gW107XHJcbiAgICAgICAgZm9yIChjb25zdCBjaGlsZEFjdGlvbiBvZiBhY3Rpb24uY2hpbGRyZW4pIHtcclxuICAgICAgICAgIGNvbnN0IGtleSA9IGhhc2goY2hpbGRBY3Rpb24pO1xyXG4gICAgICAgICAgaWYgKHNlbGVjdGVkSXRlbXMuZXZlcnkoZSA9PiBlLm1ldGEuc2VsZWN0b3IuYWN0aW9ucy5pbmNsdWRlcyhrZXkpKSkge1xyXG4gICAgICAgICAgICBjaGlsZHJlbi5wdXNoKGNoaWxkQWN0aW9uKTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgaWYgKGNoaWxkcmVuLmxlbmd0aCA+IDApIHtcclxuICAgICAgICAgIHJlc3VsdHMucHVzaCh7IC4uLmFjdGlvbiwgY2hpbGRyZW4gfSk7XHJcbiAgICAgICAgfVxyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGNvbnN0IGtleSA9IGhhc2goYWN0aW9uKTtcclxuICAgICAgICBpZiAoc2VsZWN0ZWRJdGVtcy5ldmVyeShlID0+IGUubWV0YS5zZWxlY3Rvci5hY3Rpb25zLmluY2x1ZGVzKGtleSkpKSB7XHJcbiAgICAgICAgICByZXN1bHRzLnB1c2goYWN0aW9uKTtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHJldHVybiByZXN1bHRzLm1hcChyZXN1bHQgPT4gdGhpcy4jY29udmVydChyZXN1bHQpKTtcclxuICB9XHJcbn1cclxuIl19
@@ -0,0 +1,55 @@
1
+ import { Pipe } from '@angular/core';
2
+ import hash from 'object-hash';
3
+ export class SdSelectionDisablePipe {
4
+ constructor() {
5
+ this.transform = (selectedItems, rowData, selection) => {
6
+ const { disabled, actions } = selection;
7
+ if (!(actions === null || actions === void 0 ? void 0 : actions.length)) {
8
+ if (!disabled) {
9
+ rowData.meta.selector.selectable = true;
10
+ return false;
11
+ }
12
+ rowData.meta.selector.selectable = !disabled(rowData, selectedItems);
13
+ return !rowData.meta.selector.selectable;
14
+ }
15
+ // Lọc các action theo selectedItems hiện tại
16
+ const availableActions = actions.filter(action => {
17
+ if ('children' in action) {
18
+ for (const childAction of action.children) {
19
+ const key = hash(childAction);
20
+ if (selectedItems.every(e => e.meta.selector.actions.includes(key))) {
21
+ return true;
22
+ }
23
+ }
24
+ return false;
25
+ }
26
+ else {
27
+ const key = hash(action);
28
+ return selectedItems.every(e => e.meta.selector.actions.includes(key));
29
+ }
30
+ });
31
+ // Kiểm tra rowData có action nào thỏa hay ko, nếu ko thì disabled
32
+ for (const action of availableActions) {
33
+ if ('children' in action) {
34
+ for (const childAction of action.children) {
35
+ if (rowData.meta.selector.actions.includes(hash(childAction))) {
36
+ return false;
37
+ }
38
+ }
39
+ }
40
+ else {
41
+ if (rowData.meta.selector.actions.includes(hash(action))) {
42
+ return false;
43
+ }
44
+ }
45
+ }
46
+ return true;
47
+ };
48
+ }
49
+ }
50
+ SdSelectionDisablePipe.decorators = [
51
+ { type: Pipe, args: [{
52
+ name: 'selectionDisable'
53
+ },] }
54
+ ];
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLWRpc2FibGUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTVfb25lbW91bnQvRG9jdW1lbnRzL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvdGFibGUvIiwic291cmNlcyI6WyJzcmMvbGliL3BpcGVzL3NlbGVjdGlvbi1kaXNhYmxlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxJQUFJLE1BQU0sYUFBYSxDQUFDO0FBTS9CLE1BQU0sT0FBTyxzQkFBc0I7SUFIbkM7UUFJRSxjQUFTLEdBQUcsQ0FBQyxhQUE0QixFQUFFLE9BQW9CLEVBQUUsU0FBZ0MsRUFBVyxFQUFFO1lBQzVHLE1BQU0sRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLEdBQUcsU0FBUyxDQUFDO1lBQ3hDLElBQUksRUFBQyxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsTUFBTSxDQUFBLEVBQUU7Z0JBQ3BCLElBQUksQ0FBQyxRQUFRLEVBQUU7b0JBQ2IsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztvQkFDeEMsT0FBTyxLQUFLLENBQUM7aUJBQ2Q7Z0JBQ0QsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxHQUFHLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRSxhQUFhLENBQUMsQ0FBQztnQkFDckUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQzthQUMxQztZQUNELDZDQUE2QztZQUM3QyxNQUFNLGdCQUFnQixHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUU7Z0JBQy9DLElBQUksVUFBVSxJQUFJLE1BQU0sRUFBRTtvQkFDeEIsS0FBSyxNQUFNLFdBQVcsSUFBSSxNQUFNLENBQUMsUUFBUSxFQUFFO3dCQUN6QyxNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUM7d0JBQzlCLElBQUksYUFBYSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLENBQUMsRUFBRTs0QkFDbkUsT0FBTyxJQUFJLENBQUM7eUJBQ2I7cUJBQ0Y7b0JBQ0QsT0FBTyxLQUFLLENBQUM7aUJBQ2Q7cUJBQU07b0JBQ0wsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO29CQUN6QixPQUFPLGFBQWEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7aUJBQ3hFO1lBQ0gsQ0FBQyxDQUFDLENBQUM7WUFDSCxrRUFBa0U7WUFDbEUsS0FBSyxNQUFNLE1BQU0sSUFBSSxnQkFBZ0IsRUFBRTtnQkFDckMsSUFBSSxVQUFVLElBQUksTUFBTSxFQUFFO29CQUN4QixLQUFLLE1BQU0sV0FBVyxJQUFJLE1BQU0sQ0FBQyxRQUFRLEVBQUU7d0JBQ3pDLElBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLENBQUMsRUFBRTs0QkFDNUQsT0FBTyxLQUFLLENBQUM7eUJBQ2Q7cUJBQ0Y7aUJBQ0Y7cUJBQU07b0JBQ0wsSUFBRyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxFQUFFO3dCQUN2RCxPQUFPLEtBQUssQ0FBQztxQkFDZDtpQkFDRjthQUNGO1lBQ0QsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDLENBQUE7SUFDSCxDQUFDOzs7WUE3Q0EsSUFBSSxTQUFDO2dCQUNKLElBQUksRUFBRSxrQkFBa0I7YUFDekIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBQaXBlLCBQaXBlVHJhbnNmb3JtIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCBoYXNoIGZyb20gJ29iamVjdC1oYXNoJztcclxuaW1wb3J0IHsgU2RUYWJsZU9wdGlvblNlbGVjdG9yIH0gZnJvbSAnLi4vbW9kZWxzL3RhYmxlLW9wdGlvbi1zZWxlY3Rvci5tb2RlbCc7XHJcbmltcG9ydCB7IFNkVGFibGVJdGVtIH0gZnJvbSAnLi4vbW9kZWxzL3RhYmxlLWl0ZW0ubW9kZWwnO1xyXG5AUGlwZSh7XHJcbiAgbmFtZTogJ3NlbGVjdGlvbkRpc2FibGUnXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZFNlbGVjdGlvbkRpc2FibGVQaXBlIGltcGxlbWVudHMgUGlwZVRyYW5zZm9ybSB7XHJcbiAgdHJhbnNmb3JtID0gKHNlbGVjdGVkSXRlbXM6IFNkVGFibGVJdGVtW10sIHJvd0RhdGE6IFNkVGFibGVJdGVtLCBzZWxlY3Rpb246IFNkVGFibGVPcHRpb25TZWxlY3Rvcik6IGJvb2xlYW4gPT4ge1xyXG4gICAgY29uc3QgeyBkaXNhYmxlZCwgYWN0aW9ucyB9ID0gc2VsZWN0aW9uO1xyXG4gICAgaWYgKCFhY3Rpb25zPy5sZW5ndGgpIHtcclxuICAgICAgaWYgKCFkaXNhYmxlZCkge1xyXG4gICAgICAgIHJvd0RhdGEubWV0YS5zZWxlY3Rvci5zZWxlY3RhYmxlID0gdHJ1ZTtcclxuICAgICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICAgIH1cclxuICAgICAgcm93RGF0YS5tZXRhLnNlbGVjdG9yLnNlbGVjdGFibGUgPSAhZGlzYWJsZWQocm93RGF0YSwgc2VsZWN0ZWRJdGVtcyk7XHJcbiAgICAgIHJldHVybiAhcm93RGF0YS5tZXRhLnNlbGVjdG9yLnNlbGVjdGFibGU7XHJcbiAgICB9XHJcbiAgICAvLyBM4buNYyBjw6FjIGFjdGlvbiB0aGVvIHNlbGVjdGVkSXRlbXMgaGnhu4duIHThuqFpXHJcbiAgICBjb25zdCBhdmFpbGFibGVBY3Rpb25zID0gYWN0aW9ucy5maWx0ZXIoYWN0aW9uID0+IHtcclxuICAgICAgaWYgKCdjaGlsZHJlbicgaW4gYWN0aW9uKSB7XHJcbiAgICAgICAgZm9yIChjb25zdCBjaGlsZEFjdGlvbiBvZiBhY3Rpb24uY2hpbGRyZW4pIHtcclxuICAgICAgICAgIGNvbnN0IGtleSA9IGhhc2goY2hpbGRBY3Rpb24pO1xyXG4gICAgICAgICAgaWYgKHNlbGVjdGVkSXRlbXMuZXZlcnkoZSA9PiBlLm1ldGEuc2VsZWN0b3IuYWN0aW9ucy5pbmNsdWRlcyhrZXkpKSkge1xyXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIGNvbnN0IGtleSA9IGhhc2goYWN0aW9uKTtcclxuICAgICAgICByZXR1cm4gc2VsZWN0ZWRJdGVtcy5ldmVyeShlID0+IGUubWV0YS5zZWxlY3Rvci5hY3Rpb25zLmluY2x1ZGVzKGtleSkpO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIC8vIEtp4buDbSB0cmEgcm93RGF0YSBjw7MgYWN0aW9uIG7DoG8gdGjhu49hIGhheSBrbywgbuG6v3Uga28gdGjDrCBkaXNhYmxlZFxyXG4gICAgZm9yIChjb25zdCBhY3Rpb24gb2YgYXZhaWxhYmxlQWN0aW9ucykge1xyXG4gICAgICBpZiAoJ2NoaWxkcmVuJyBpbiBhY3Rpb24pIHtcclxuICAgICAgICBmb3IgKGNvbnN0IGNoaWxkQWN0aW9uIG9mIGFjdGlvbi5jaGlsZHJlbikge1xyXG4gICAgICAgICAgaWYocm93RGF0YS5tZXRhLnNlbGVjdG9yLmFjdGlvbnMuaW5jbHVkZXMoaGFzaChjaGlsZEFjdGlvbikpKSB7XHJcbiAgICAgICAgICAgIHJldHVybiBmYWxzZTtcclxuICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgaWYocm93RGF0YS5tZXRhLnNlbGVjdG9yLmFjdGlvbnMuaW5jbHVkZXMoaGFzaChhY3Rpb24pKSkge1xyXG4gICAgICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgcmV0dXJuIHRydWU7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,34 @@
1
+ import { __awaiter } from "tslib";
2
+ import { Pipe } from '@angular/core';
3
+ export class SdSelectionVisibleSelectAllPipe {
4
+ constructor() {
5
+ this.transform = (items, selection) => __awaiter(this, void 0, void 0, function* () {
6
+ const { actions } = selection;
7
+ if (!(actions === null || actions === void 0 ? void 0 : actions.length)) {
8
+ return true;
9
+ }
10
+ if (!items.length) {
11
+ return false;
12
+ }
13
+ if (actions.some(e => ('children' in e && e.children.some(e1 => e1.isGrouped)) || e.isGrouped)) {
14
+ return false;
15
+ }
16
+ yield new Promise(resolve => setTimeout(resolve, 500));
17
+ const first = items.find(t => { var _a; return (_a = t.meta.selector.actions) === null || _a === void 0 ? void 0 : _a.length; });
18
+ if (first) {
19
+ for (const action of first.meta.selector.actions) {
20
+ if (items.filter(t => { var _a; return (_a = t.meta.selector.actions) === null || _a === void 0 ? void 0 : _a.length; }).every(e => e.meta.selector.actions.includes(action))) {
21
+ return true;
22
+ }
23
+ }
24
+ }
25
+ return false;
26
+ });
27
+ }
28
+ }
29
+ SdSelectionVisibleSelectAllPipe.decorators = [
30
+ { type: Pipe, args: [{
31
+ name: 'selectionVisibleSelectAll'
32
+ },] }
33
+ ];
34
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLXZpc2libGUtc2VsZWN0LWFsbC5waXBlLmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL25naGlhdHQxNV9vbmVtb3VudC9Eb2N1bWVudHMvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS90YWJsZS8iLCJzb3VyY2VzIjpbInNyYy9saWIvcGlwZXMvc2VsZWN0aW9uLXZpc2libGUtc2VsZWN0LWFsbC5waXBlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQUUsSUFBSSxFQUFpQixNQUFNLGVBQWUsQ0FBQztBQU1wRCxNQUFNLE9BQU8sK0JBQStCO0lBSDVDO1FBSUUsY0FBUyxHQUFHLENBQU8sS0FBb0IsRUFBRSxTQUFnQyxFQUFvQixFQUFFO1lBQzdGLE1BQU0sRUFBRSxPQUFPLEVBQUUsR0FBRyxTQUFTLENBQUM7WUFDOUIsSUFBSSxFQUFDLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxNQUFNLENBQUEsRUFBRTtnQkFDcEIsT0FBTyxJQUFJLENBQUM7YUFDYjtZQUNELElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxFQUFFO2dCQUNqQixPQUFPLEtBQUssQ0FBQzthQUNkO1lBQ0QsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxVQUFVLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLFNBQVMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FBQyxFQUFFO2dCQUM5RixPQUFPLEtBQUssQ0FBQzthQUNkO1lBQ0QsTUFBTSxJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLFVBQVUsQ0FBQyxPQUFPLEVBQUUsR0FBRyxDQUFDLENBQUMsQ0FBQztZQUN2RCxNQUFNLEtBQUssR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLHdCQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sMENBQUUsTUFBTSxHQUFBLENBQUMsQ0FBQztZQUMvRCxJQUFJLEtBQUssRUFBRTtnQkFDVCxLQUFLLE1BQU0sTUFBTSxJQUFJLEtBQUssQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sRUFBRTtvQkFDaEQsSUFBSSxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLHdCQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sMENBQUUsTUFBTSxHQUFBLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLEVBQUU7d0JBQzNHLE9BQU8sSUFBSSxDQUFDO3FCQUNiO2lCQUNGO2FBQ0Y7WUFDRCxPQUFPLEtBQUssQ0FBQztRQUNmLENBQUMsQ0FBQSxDQUFBO0lBQ0gsQ0FBQzs7O1lBMUJBLElBQUksU0FBQztnQkFDSixJQUFJLEVBQUUsMkJBQTJCO2FBQ2xDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTZFRhYmxlT3B0aW9uU2VsZWN0b3IgfSBmcm9tICcuLi9tb2RlbHMvdGFibGUtb3B0aW9uLXNlbGVjdG9yLm1vZGVsJztcclxuaW1wb3J0IHsgU2RUYWJsZUl0ZW0gfSBmcm9tICcuLi9tb2RlbHMvdGFibGUtaXRlbS5tb2RlbCc7XHJcbkBQaXBlKHtcclxuICBuYW1lOiAnc2VsZWN0aW9uVmlzaWJsZVNlbGVjdEFsbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIFNkU2VsZWN0aW9uVmlzaWJsZVNlbGVjdEFsbFBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuICB0cmFuc2Zvcm0gPSBhc3luYyAoaXRlbXM6IFNkVGFibGVJdGVtW10sIHNlbGVjdGlvbjogU2RUYWJsZU9wdGlvblNlbGVjdG9yKTogUHJvbWlzZTxib29sZWFuPiA9PiB7XHJcbiAgICBjb25zdCB7IGFjdGlvbnMgfSA9IHNlbGVjdGlvbjtcclxuICAgIGlmICghYWN0aW9ucz8ubGVuZ3RoKSB7XHJcbiAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgfVxyXG4gICAgaWYgKCFpdGVtcy5sZW5ndGgpIHtcclxuICAgICAgcmV0dXJuIGZhbHNlO1xyXG4gICAgfVxyXG4gICAgaWYgKGFjdGlvbnMuc29tZShlID0+ICgnY2hpbGRyZW4nIGluIGUgJiYgZS5jaGlsZHJlbi5zb21lKGUxID0+IGUxLmlzR3JvdXBlZCkpIHx8IGUuaXNHcm91cGVkKSkge1xyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9XHJcbiAgICBhd2FpdCBuZXcgUHJvbWlzZShyZXNvbHZlID0+IHNldFRpbWVvdXQocmVzb2x2ZSwgNTAwKSk7XHJcbiAgICBjb25zdCBmaXJzdCA9IGl0ZW1zLmZpbmQodCA9PiB0Lm1ldGEuc2VsZWN0b3IuYWN0aW9ucz8ubGVuZ3RoKTtcclxuICAgIGlmIChmaXJzdCkge1xyXG4gICAgICBmb3IgKGNvbnN0IGFjdGlvbiBvZiBmaXJzdC5tZXRhLnNlbGVjdG9yLmFjdGlvbnMpIHtcclxuICAgICAgICBpZiAoaXRlbXMuZmlsdGVyKHQgPT4gdC5tZXRhLnNlbGVjdG9yLmFjdGlvbnM/Lmxlbmd0aCkuZXZlcnkoZSA9PiBlLm1ldGEuc2VsZWN0b3IuYWN0aW9ucy5pbmNsdWRlcyhhY3Rpb24pKSkge1xyXG4gICAgICAgICAgcmV0dXJuIHRydWU7XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByZXR1cm4gZmFsc2U7XHJcbiAgfVxyXG59XHJcbiJdfQ==