@sd-angular/core 1.3.146 → 1.3.147

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (132) hide show
  1. package/bundles/sd-angular-core-table.umd.js +4004 -0
  2. package/bundles/sd-angular-core-table.umd.js.map +1 -0
  3. package/bundles/sd-angular-core-table.umd.min.js +2 -0
  4. package/bundles/sd-angular-core-table.umd.min.js.map +1 -0
  5. package/bundles/sd-angular-core.umd.js +6 -4
  6. package/bundles/sd-angular-core.umd.js.map +1 -1
  7. package/bundles/sd-angular-core.umd.min.js +1 -1
  8. package/bundles/sd-angular-core.umd.min.js.map +1 -1
  9. package/esm2015/lib/core.module.js +4 -1
  10. package/esm2015/public-api.js +2 -1
  11. package/esm2015/table/index.js +2 -0
  12. package/esm2015/table/sd-angular-core-table.js +40 -0
  13. package/esm2015/table/src/lib/components/column-inline-filter/column-inline-filter.component.js +74 -0
  14. package/esm2015/table/src/lib/components/desktop-cell/desktop-cell.component.js +25 -0
  15. package/esm2015/table/src/lib/components/desktop-cell-view/desktop-cell-view.component.js +21 -0
  16. package/esm2015/table/src/lib/components/desktop-command/desktop-command.component.js +20 -0
  17. package/esm2015/table/src/lib/components/grid-filter/grid-filter.component.js +99 -0
  18. package/esm2015/table/src/lib/components/popup-filter/popup-filter.component.js +79 -0
  19. package/esm2015/table/src/lib/components/popup-grid-configuration/popup-grid-configuration.component.js +96 -0
  20. package/esm2015/table/src/lib/components/quick-action/quick-action.component.js +24 -0
  21. package/esm2015/table/src/lib/directives/sd-material-cell-def.directive.js +18 -0
  22. package/esm2015/table/src/lib/directives/sd-material-empty-data-def.directive.js +15 -0
  23. package/esm2015/table/src/lib/directives/sd-material-filter-def.directive.js +22 -0
  24. package/esm2015/table/src/lib/directives/sd-material-footer-def.directive.js +18 -0
  25. package/esm2015/table/src/lib/directives/sd-material-sub-information-def.directive.js +15 -0
  26. package/esm2015/table/src/lib/models/grid-cell.model.js +2 -0
  27. package/esm2015/table/src/lib/models/index.js +4 -0
  28. package/esm2015/table/src/lib/models/table-column.model.js +39 -0
  29. package/esm2015/table/src/lib/models/table-command.model.js +2 -0
  30. package/esm2015/table/src/lib/models/table-configuration.model.js +9 -0
  31. package/esm2015/table/src/lib/models/table-item.model.js +15 -0
  32. package/esm2015/table/src/lib/models/table-option-config.model.js +2 -0
  33. package/esm2015/table/src/lib/models/table-option-expand.model.js +2 -0
  34. package/esm2015/table/src/lib/models/table-option-export.model.js +2 -0
  35. package/esm2015/table/src/lib/models/table-option-group.model.js +2 -0
  36. package/esm2015/table/src/lib/models/table-option-paginate.model.js +2 -0
  37. package/esm2015/table/src/lib/models/table-option-reload.model.js +2 -0
  38. package/esm2015/table/src/lib/models/table-option-selector.model.js +2 -0
  39. package/esm2015/table/src/lib/models/table-option-sort.model.js +2 -0
  40. package/esm2015/table/src/lib/models/table-option-style.model.js +2 -0
  41. package/esm2015/table/src/lib/models/table-option.model.js +2 -0
  42. package/esm2015/table/src/lib/pipes/cell-view.pipe.js +180 -0
  43. package/esm2015/table/src/lib/pipes/column-badge.pipe.js +43 -0
  44. package/esm2015/table/src/lib/pipes/column-children-filter.pipe.js +31 -0
  45. package/esm2015/table/src/lib/pipes/column-html-template.pipe.js +23 -0
  46. package/esm2015/table/src/lib/pipes/column-tooltip.pipe.js +17 -0
  47. package/esm2015/table/src/lib/pipes/column-transform.pipe.js +35 -0
  48. package/esm2015/table/src/lib/pipes/column-values.pipe.js +63 -0
  49. package/esm2015/table/src/lib/pipes/command-disable.pipe.js +18 -0
  50. package/esm2015/table/src/lib/pipes/command-filter.pipe.js +79 -0
  51. package/esm2015/table/src/lib/pipes/command-icon.pipe.js +18 -0
  52. package/esm2015/table/src/lib/pipes/command-title.pipe.js +18 -0
  53. package/esm2015/table/src/lib/pipes/filter-column.pipe.js +30 -0
  54. package/esm2015/table/src/lib/pipes/filter-external.pipe.js +19 -0
  55. package/esm2015/table/src/lib/pipes/grid-configuration-result.pipe.js +21 -0
  56. package/esm2015/table/src/lib/pipes/sd-group.pipe.js +45 -0
  57. package/esm2015/table/src/lib/pipes/selection-action-filter.pipe.js +72 -0
  58. package/esm2015/table/src/lib/pipes/selection-disable.pipe.js +55 -0
  59. package/esm2015/table/src/lib/pipes/selection-visible-select-all.pipe.js +34 -0
  60. package/esm2015/table/src/lib/pipes/selection-visible.pipe.js +82 -0
  61. package/esm2015/table/src/lib/services/table-configuration.service.js +292 -0
  62. package/esm2015/table/src/lib/services/table-filter/table-filter.model.js +3 -0
  63. package/esm2015/table/src/lib/services/table-filter/table-filter.service.js +229 -0
  64. package/esm2015/table/src/lib/table.component.js +816 -0
  65. package/esm2015/table/src/lib/table.module.js +175 -0
  66. package/esm2015/table/src/public-api.js +5 -0
  67. package/fesm2015/sd-angular-core-table.js +2865 -0
  68. package/fesm2015/sd-angular-core-table.js.map +1 -0
  69. package/fesm2015/sd-angular-core.js +3 -0
  70. package/fesm2015/sd-angular-core.js.map +1 -1
  71. package/package.json +1 -1
  72. package/public-api.d.ts +1 -0
  73. package/{sd-angular-core-1.3.146.tgz → sd-angular-core-1.3.147.tgz} +0 -0
  74. package/sd-angular-core.metadata.json +1 -1
  75. package/table/index.d.ts +1 -0
  76. package/table/package.json +12 -0
  77. package/table/sd-angular-core-table.d.ts +39 -0
  78. package/table/sd-angular-core-table.metadata.json +1 -0
  79. package/table/src/lib/components/column-inline-filter/column-inline-filter.component.d.ts +22 -0
  80. package/table/src/lib/components/desktop-cell/desktop-cell.component.d.ts +17 -0
  81. package/table/src/lib/components/desktop-cell-view/desktop-cell-view.component.d.ts +11 -0
  82. package/table/src/lib/components/desktop-command/desktop-command.component.d.ts +7 -0
  83. package/table/src/lib/components/grid-filter/grid-filter.component.d.ts +35 -0
  84. package/table/src/lib/components/popup-filter/popup-filter.component.d.ts +27 -0
  85. package/table/src/lib/components/popup-grid-configuration/popup-grid-configuration.component.d.ts +39 -0
  86. package/table/src/lib/components/quick-action/quick-action.component.d.ts +9 -0
  87. package/table/src/lib/directives/sd-material-cell-def.directive.d.ts +6 -0
  88. package/table/src/lib/directives/sd-material-empty-data-def.directive.d.ts +5 -0
  89. package/table/src/lib/directives/sd-material-filter-def.directive.d.ts +8 -0
  90. package/table/src/lib/directives/sd-material-footer-def.directive.d.ts +6 -0
  91. package/table/src/lib/directives/sd-material-sub-information-def.directive.d.ts +5 -0
  92. package/table/src/lib/models/grid-cell.model.d.ts +16 -0
  93. package/table/src/lib/models/index.d.ts +3 -0
  94. package/table/src/lib/models/table-column.model.d.ts +124 -0
  95. package/table/src/lib/models/table-command.model.d.ts +19 -0
  96. package/table/src/lib/models/table-configuration.model.d.ts +13 -0
  97. package/table/src/lib/models/table-item.model.d.ts +25 -0
  98. package/table/src/lib/models/table-option-config.model.d.ts +62 -0
  99. package/table/src/lib/models/table-option-expand.model.d.ts +6 -0
  100. package/table/src/lib/models/table-option-export.model.d.ts +31 -0
  101. package/table/src/lib/models/table-option-group.model.d.ts +4 -0
  102. package/table/src/lib/models/table-option-paginate.model.d.ts +6 -0
  103. package/table/src/lib/models/table-option-reload.model.d.ts +5 -0
  104. package/table/src/lib/models/table-option-selector.model.d.ts +32 -0
  105. package/table/src/lib/models/table-option-sort.model.d.ts +3 -0
  106. package/table/src/lib/models/table-option-style.model.d.ts +6 -0
  107. package/table/src/lib/models/table-option.model.d.ts +44 -0
  108. package/table/src/lib/pipes/cell-view.pipe.d.ts +15 -0
  109. package/table/src/lib/pipes/column-badge.pipe.d.ts +11 -0
  110. package/table/src/lib/pipes/column-children-filter.pipe.d.ts +8 -0
  111. package/table/src/lib/pipes/column-html-template.pipe.d.ts +8 -0
  112. package/table/src/lib/pipes/column-tooltip.pipe.d.ts +6 -0
  113. package/table/src/lib/pipes/column-transform.pipe.d.ts +8 -0
  114. package/table/src/lib/pipes/column-values.pipe.d.ts +6 -0
  115. package/table/src/lib/pipes/command-disable.pipe.d.ts +5 -0
  116. package/table/src/lib/pipes/command-filter.pipe.d.ts +6 -0
  117. package/table/src/lib/pipes/command-icon.pipe.d.ts +5 -0
  118. package/table/src/lib/pipes/command-title.pipe.d.ts +5 -0
  119. package/table/src/lib/pipes/filter-column.pipe.d.ts +5 -0
  120. package/table/src/lib/pipes/filter-external.pipe.d.ts +5 -0
  121. package/table/src/lib/pipes/grid-configuration-result.pipe.d.ts +10 -0
  122. package/table/src/lib/pipes/sd-group.pipe.d.ts +6 -0
  123. package/table/src/lib/pipes/selection-action-filter.pipe.d.ts +7 -0
  124. package/table/src/lib/pipes/selection-disable.pipe.d.ts +6 -0
  125. package/table/src/lib/pipes/selection-visible-select-all.pipe.d.ts +6 -0
  126. package/table/src/lib/pipes/selection-visible.pipe.d.ts +6 -0
  127. package/table/src/lib/services/table-configuration.service.d.ts +13 -0
  128. package/table/src/lib/services/table-filter/table-filter.model.d.ts +117 -0
  129. package/table/src/lib/services/table-filter/table-filter.service.d.ts +15 -0
  130. package/table/src/lib/table.component.d.ts +87 -0
  131. package/table/src/lib/table.module.d.ts +11 -0
  132. package/table/src/public-api.d.ts +5 -0
@@ -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==
@@ -0,0 +1,82 @@
1
+ import { Pipe } from '@angular/core';
2
+ import hash from 'object-hash';
3
+ export class SdSelectionVisiblePipe {
4
+ constructor() {
5
+ this.transform = (rowData, selection) => {
6
+ var _a, _b, _c;
7
+ const { actions } = selection;
8
+ const groupedActions = [];
9
+ rowData.meta.selector.actions = rowData.meta.selector.actions || [];
10
+ if (!(actions === null || actions === void 0 ? void 0 : actions.length)) {
11
+ rowData.meta.selector.selectable = true;
12
+ return rowData.meta.selector.selectable;
13
+ }
14
+ for (const action of actions) {
15
+ if ('children' in action) {
16
+ let flag = false;
17
+ let hasGroup = false;
18
+ for (const childAction of action.children) {
19
+ const { hidden, isGrouped } = childAction;
20
+ const key = hash(childAction);
21
+ if (isGrouped) {
22
+ hasGroup = true;
23
+ }
24
+ if (typeof (hidden) === 'function') {
25
+ if (!hidden(rowData)) {
26
+ flag = true;
27
+ rowData.meta.selector.actions.push(key);
28
+ if (isGrouped) {
29
+ groupedActions.push(key);
30
+ }
31
+ }
32
+ }
33
+ else if (!hidden) {
34
+ flag = true;
35
+ rowData.meta.selector.actions.push(key);
36
+ if (isGrouped) {
37
+ groupedActions.push(key);
38
+ }
39
+ }
40
+ }
41
+ if (flag) {
42
+ rowData.meta.selector.actions.push(hash(action));
43
+ if (hasGroup) {
44
+ groupedActions.push(hash(action));
45
+ }
46
+ }
47
+ }
48
+ else {
49
+ const { hidden, isGrouped } = action;
50
+ const key = hash(action);
51
+ if (typeof (hidden) === 'function') {
52
+ if (!hidden(rowData)) {
53
+ rowData.meta.selector.actions.push(key);
54
+ if (isGrouped) {
55
+ groupedActions.push(key);
56
+ }
57
+ }
58
+ }
59
+ else if (!hidden) {
60
+ rowData.meta.selector.actions.push(key);
61
+ if (isGrouped) {
62
+ groupedActions.push(key);
63
+ }
64
+ }
65
+ }
66
+ }
67
+ rowData.meta.selector.selectable = !!((_a = rowData.meta.selector.actions) === null || _a === void 0 ? void 0 : _a.length);
68
+ if (!rowData.meta.selector.selectable || !groupedActions.length || ((_c = (_b = rowData === null || rowData === void 0 ? void 0 : rowData.meta.group) === null || _b === void 0 ? void 0 : _b.items) === null || _c === void 0 ? void 0 : _c.length)) {
69
+ return rowData.meta.selector.selectable;
70
+ }
71
+ // Đối với trường hợp grouped, tuy selectable là true nhưng vẫn ẩn đi checkbox
72
+ // nếu các action đều thuộc groupedActions và rowData ko phải là dòng group
73
+ return rowData.meta.selector.actions.some(action => !groupedActions.includes(action));
74
+ };
75
+ }
76
+ }
77
+ SdSelectionVisiblePipe.decorators = [
78
+ { type: Pipe, args: [{
79
+ name: 'selectionVisible'
80
+ },] }
81
+ ];
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0aW9uLXZpc2libGUucGlwZS5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTVfb25lbW91bnQvRG9jdW1lbnRzL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvdGFibGUvIiwic291cmNlcyI6WyJzcmMvbGliL3BpcGVzL3NlbGVjdGlvbi12aXNpYmxlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7QUFDcEQsT0FBTyxJQUFJLE1BQU0sYUFBYSxDQUFDO0FBTy9CLE1BQU0sT0FBTyxzQkFBc0I7SUFIbkM7UUFJRSxjQUFTLEdBQUcsQ0FBQyxPQUFvQixFQUFFLFNBQWdDLEVBQVcsRUFBRTs7WUFDOUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxHQUFHLFNBQVMsQ0FBQztZQUM5QixNQUFNLGNBQWMsR0FBYSxFQUFFLENBQUM7WUFDcEMsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sSUFBSSxFQUFFLENBQUM7WUFDcEUsSUFBSSxFQUFDLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxNQUFNLENBQUEsRUFBRTtnQkFDcEIsT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxHQUFHLElBQUksQ0FBQztnQkFDeEMsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUM7YUFDekM7WUFDRCxLQUFLLE1BQU0sTUFBTSxJQUFJLE9BQU8sRUFBRTtnQkFDNUIsSUFBSSxVQUFVLElBQUksTUFBTSxFQUFFO29CQUN4QixJQUFJLElBQUksR0FBRyxLQUFLLENBQUM7b0JBQ2pCLElBQUksUUFBUSxHQUFHLEtBQUssQ0FBQztvQkFDckIsS0FBSyxNQUFNLFdBQVcsSUFBSSxNQUFNLENBQUMsUUFBUSxFQUFFO3dCQUN6QyxNQUFNLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxHQUFHLFdBQVcsQ0FBQzt3QkFDMUMsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO3dCQUM5QixJQUFJLFNBQVMsRUFBRTs0QkFDYixRQUFRLEdBQUcsSUFBSSxDQUFDO3lCQUNqQjt3QkFDRCxJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxVQUFVLEVBQUU7NEJBQ2xDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUU7Z0NBQ3BCLElBQUksR0FBRyxJQUFJLENBQUM7Z0NBQ1osT0FBTyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztnQ0FDeEMsSUFBSSxTQUFTLEVBQUU7b0NBQ2IsY0FBYyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQztpQ0FDMUI7NkJBQ0Y7eUJBQ0Y7NkJBQU0sSUFBSSxDQUFDLE1BQU0sRUFBRTs0QkFDbEIsSUFBSSxHQUFHLElBQUksQ0FBQzs0QkFDWixPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDOzRCQUN4QyxJQUFJLFNBQVMsRUFBRTtnQ0FDYixjQUFjLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDOzZCQUMxQjt5QkFDRjtxQkFDRjtvQkFDRCxJQUFJLElBQUksRUFBRTt3QkFDUixPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO3dCQUNqRCxJQUFJLFFBQVEsRUFBRTs0QkFDWixjQUFjLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO3lCQUNuQztxQkFDRjtpQkFDRjtxQkFBTTtvQkFDTCxNQUFNLEVBQUUsTUFBTSxFQUFFLFNBQVMsRUFBRSxHQUFHLE1BQU0sQ0FBQztvQkFDckMsTUFBTSxHQUFHLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxDQUFDO29CQUN6QixJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsS0FBSyxVQUFVLEVBQUU7d0JBQ2xDLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTyxDQUFDLEVBQUU7NEJBQ3BCLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7NEJBQ3hDLElBQUksU0FBUyxFQUFFO2dDQUNiLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7NkJBQzFCO3lCQUNGO3FCQUNGO3lCQUFNLElBQUksQ0FBQyxNQUFNLEVBQUU7d0JBQ2xCLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7d0JBQ3hDLElBQUksU0FBUyxFQUFFOzRCQUNiLGNBQWMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7eUJBQzFCO3FCQUNGO2lCQUNGO2FBQ0Y7WUFDRCxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxVQUFVLEdBQUcsQ0FBQyxRQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLE9BQU8sMENBQUUsTUFBTSxDQUFBLENBQUM7WUFDM0UsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxNQUFNLGlCQUFJLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxJQUFJLENBQUMsS0FBSywwQ0FBRSxLQUFLLDBDQUFFLE1BQU0sQ0FBQSxFQUFFO2dCQUNyRyxPQUFPLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLFVBQVUsQ0FBQzthQUN6QztZQUNELDhFQUE4RTtZQUM5RSwyRUFBMkU7WUFDM0UsT0FBTyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQyxjQUFjLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDeEYsQ0FBQyxDQUFBO0lBQ0gsQ0FBQzs7O1lBdEVBLElBQUksU0FBQztnQkFDSixJQUFJLEVBQUUsa0JBQWtCO2FBQ3pCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUGlwZSwgUGlwZVRyYW5zZm9ybSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgaGFzaCBmcm9tICdvYmplY3QtaGFzaCc7XHJcbmltcG9ydCB7IFNkVGFibGVPcHRpb25TZWxlY3RvciB9IGZyb20gJy4uL21vZGVscy90YWJsZS1vcHRpb24tc2VsZWN0b3IubW9kZWwnO1xyXG5pbXBvcnQgeyBTZFRhYmxlSXRlbSB9IGZyb20gJy4uL21vZGVscy90YWJsZS1pdGVtLm1vZGVsJztcclxuXHJcbkBQaXBlKHtcclxuICBuYW1lOiAnc2VsZWN0aW9uVmlzaWJsZSdcclxufSlcclxuZXhwb3J0IGNsYXNzIFNkU2VsZWN0aW9uVmlzaWJsZVBpcGUgaW1wbGVtZW50cyBQaXBlVHJhbnNmb3JtIHtcclxuICB0cmFuc2Zvcm0gPSAocm93RGF0YTogU2RUYWJsZUl0ZW0sIHNlbGVjdGlvbjogU2RUYWJsZU9wdGlvblNlbGVjdG9yKTogYm9vbGVhbiA9PiB7XHJcbiAgICBjb25zdCB7IGFjdGlvbnMgfSA9IHNlbGVjdGlvbjtcclxuICAgIGNvbnN0IGdyb3VwZWRBY3Rpb25zOiBzdHJpbmdbXSA9IFtdO1xyXG4gICAgcm93RGF0YS5tZXRhLnNlbGVjdG9yLmFjdGlvbnMgPSByb3dEYXRhLm1ldGEuc2VsZWN0b3IuYWN0aW9ucyB8fCBbXTtcclxuICAgIGlmICghYWN0aW9ucz8ubGVuZ3RoKSB7XHJcbiAgICAgIHJvd0RhdGEubWV0YS5zZWxlY3Rvci5zZWxlY3RhYmxlID0gdHJ1ZTtcclxuICAgICAgcmV0dXJuIHJvd0RhdGEubWV0YS5zZWxlY3Rvci5zZWxlY3RhYmxlO1xyXG4gICAgfVxyXG4gICAgZm9yIChjb25zdCBhY3Rpb24gb2YgYWN0aW9ucykge1xyXG4gICAgICBpZiAoJ2NoaWxkcmVuJyBpbiBhY3Rpb24pIHtcclxuICAgICAgICBsZXQgZmxhZyA9IGZhbHNlO1xyXG4gICAgICAgIGxldCBoYXNHcm91cCA9IGZhbHNlO1xyXG4gICAgICAgIGZvciAoY29uc3QgY2hpbGRBY3Rpb24gb2YgYWN0aW9uLmNoaWxkcmVuKSB7XHJcbiAgICAgICAgICBjb25zdCB7IGhpZGRlbiwgaXNHcm91cGVkIH0gPSBjaGlsZEFjdGlvbjtcclxuICAgICAgICAgIGNvbnN0IGtleSA9IGhhc2goY2hpbGRBY3Rpb24pO1xyXG4gICAgICAgICAgaWYgKGlzR3JvdXBlZCkge1xyXG4gICAgICAgICAgICBoYXNHcm91cCA9IHRydWU7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICBpZiAodHlwZW9mIChoaWRkZW4pID09PSAnZnVuY3Rpb24nKSB7XHJcbiAgICAgICAgICAgIGlmICghaGlkZGVuKHJvd0RhdGEpKSB7XHJcbiAgICAgICAgICAgICAgZmxhZyA9IHRydWU7XHJcbiAgICAgICAgICAgICAgcm93RGF0YS5tZXRhLnNlbGVjdG9yLmFjdGlvbnMucHVzaChrZXkpO1xyXG4gICAgICAgICAgICAgIGlmIChpc0dyb3VwZWQpIHtcclxuICAgICAgICAgICAgICAgIGdyb3VwZWRBY3Rpb25zLnB1c2goa2V5KTtcclxuICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgIH0gZWxzZSBpZiAoIWhpZGRlbikge1xyXG4gICAgICAgICAgICBmbGFnID0gdHJ1ZTtcclxuICAgICAgICAgICAgcm93RGF0YS5tZXRhLnNlbGVjdG9yLmFjdGlvbnMucHVzaChrZXkpO1xyXG4gICAgICAgICAgICBpZiAoaXNHcm91cGVkKSB7XHJcbiAgICAgICAgICAgICAgZ3JvdXBlZEFjdGlvbnMucHVzaChrZXkpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmIChmbGFnKSB7XHJcbiAgICAgICAgICByb3dEYXRhLm1ldGEuc2VsZWN0b3IuYWN0aW9ucy5wdXNoKGhhc2goYWN0aW9uKSk7XHJcbiAgICAgICAgICBpZiAoaGFzR3JvdXApIHtcclxuICAgICAgICAgICAgZ3JvdXBlZEFjdGlvbnMucHVzaChoYXNoKGFjdGlvbikpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBjb25zdCB7IGhpZGRlbiwgaXNHcm91cGVkIH0gPSBhY3Rpb247XHJcbiAgICAgICAgY29uc3Qga2V5ID0gaGFzaChhY3Rpb24pO1xyXG4gICAgICAgIGlmICh0eXBlb2YgKGhpZGRlbikgPT09ICdmdW5jdGlvbicpIHtcclxuICAgICAgICAgIGlmICghaGlkZGVuKHJvd0RhdGEpKSB7XHJcbiAgICAgICAgICAgIHJvd0RhdGEubWV0YS5zZWxlY3Rvci5hY3Rpb25zLnB1c2goa2V5KTtcclxuICAgICAgICAgICAgaWYgKGlzR3JvdXBlZCkge1xyXG4gICAgICAgICAgICAgIGdyb3VwZWRBY3Rpb25zLnB1c2goa2V5KTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH0gZWxzZSBpZiAoIWhpZGRlbikge1xyXG4gICAgICAgICAgcm93RGF0YS5tZXRhLnNlbGVjdG9yLmFjdGlvbnMucHVzaChrZXkpO1xyXG4gICAgICAgICAgaWYgKGlzR3JvdXBlZCkge1xyXG4gICAgICAgICAgICBncm91cGVkQWN0aW9ucy5wdXNoKGtleSk7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgICByb3dEYXRhLm1ldGEuc2VsZWN0b3Iuc2VsZWN0YWJsZSA9ICEhcm93RGF0YS5tZXRhLnNlbGVjdG9yLmFjdGlvbnM/Lmxlbmd0aDtcclxuICAgIGlmICghcm93RGF0YS5tZXRhLnNlbGVjdG9yLnNlbGVjdGFibGUgfHwgIWdyb3VwZWRBY3Rpb25zLmxlbmd0aCB8fCByb3dEYXRhPy5tZXRhLmdyb3VwPy5pdGVtcz8ubGVuZ3RoKSB7XHJcbiAgICAgIHJldHVybiByb3dEYXRhLm1ldGEuc2VsZWN0b3Iuc2VsZWN0YWJsZTtcclxuICAgIH1cclxuICAgIC8vIMSQ4buRaSB24bubaSB0csaw4budbmcgaOG7o3AgZ3JvdXBlZCwgdHV5IHNlbGVjdGFibGUgbMOgIHRydWUgbmjGsG5nIHbhuqtuIOG6qW4gxJFpIGNoZWNrYm94XHJcbiAgICAvLyBu4bq/dSBjw6FjIGFjdGlvbiDEkeG7gXUgdGh14buZYyBncm91cGVkQWN0aW9ucyB2w6Agcm93RGF0YSBrbyBwaOG6o2kgbMOgIGTDsm5nIGdyb3VwXHJcbiAgICByZXR1cm4gcm93RGF0YS5tZXRhLnNlbGVjdG9yLmFjdGlvbnMuc29tZShhY3Rpb24gPT4gIWdyb3VwZWRBY3Rpb25zLmluY2x1ZGVzKGFjdGlvbikpO1xyXG4gIH1cclxufVxyXG4iXX0=