@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,25 @@
1
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
+ export class SdDesktopCell {
3
+ constructor() {
4
+ this.cellDef = {};
5
+ }
6
+ }
7
+ SdDesktopCell.decorators = [
8
+ { type: Component, args: [{
9
+ selector: 'sd-desktop-cell',
10
+ template: "<ng-container *ngIf=\"cellDef[column.field]\">\r\n <ng-container *ngTemplateOutlet=\"cellDef[column.field].templateRef; context: { item: item, column: column, idx: idx }\"> </ng-container>\r\n</ng-container>\r\n<sd-desktop-cell-view\r\n *ngIf=\"!cellDef[column.field]\"\r\n [sdId]=\"item.meta.id\"\r\n [key]=\"key\"\r\n [column]=\"column\"\r\n [gridOption]=\"gridOption\"\r\n [item]=\"item\">\r\n</sd-desktop-cell-view>\r\n",
11
+ changeDetection: ChangeDetectionStrategy.OnPush
12
+ },] }
13
+ ];
14
+ SdDesktopCell.ctorParameters = () => [];
15
+ SdDesktopCell.propDecorators = {
16
+ sdId: [{ type: Input }],
17
+ value: [{ type: Input }],
18
+ key: [{ type: Input }],
19
+ column: [{ type: Input }],
20
+ item: [{ type: Input }],
21
+ gridOption: [{ type: Input }],
22
+ cellDef: [{ type: Input }],
23
+ idx: [{ type: Input }]
24
+ };
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVza3RvcC1jZWxsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTVfb25lbW91bnQvRG9jdW1lbnRzL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvdGFibGUvIiwic291cmNlcyI6WyJzcmMvbGliL2NvbXBvbmVudHMvZGVza3RvcC1jZWxsL2Rlc2t0b3AtY2VsbC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFXckYsTUFBTSxPQUFPLGFBQWE7SUFXeEI7UUFKUyxZQUFPLEdBRVosRUFBRSxDQUFDO0lBR0gsQ0FBQzs7O1lBakJOLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsaUJBQWlCO2dCQUMzQiwwYkFBNEM7Z0JBQzVDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2FBQ2hEOzs7O21CQUVFLEtBQUs7b0JBQ0wsS0FBSztrQkFDTCxLQUFLO3FCQUNMLEtBQUs7bUJBQ0wsS0FBSzt5QkFDTCxLQUFLO3NCQUNMLEtBQUs7a0JBR0wsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBRdWVyeUxpc3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU2RNYXRlcmlhbENlbGxEZWZEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL3NkLW1hdGVyaWFsLWNlbGwtZGVmLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFNkVGFibGVDb2x1bW4gfSBmcm9tICcuLi8uLi9tb2RlbHMvdGFibGUtY29sdW1uLm1vZGVsJztcclxuaW1wb3J0IHsgU2RUYWJsZU9wdGlvbiB9IGZyb20gJy4uLy4uL21vZGVscy90YWJsZS1vcHRpb24ubW9kZWwnO1xyXG5pbXBvcnQgeyBTZFRhYmxlSXRlbSB9IGZyb20gJy4uLy4uL21vZGVscy90YWJsZS1pdGVtLm1vZGVsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2QtZGVza3RvcC1jZWxsJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vZGVza3RvcC1jZWxsLmNvbXBvbmVudC5odG1sJyxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2REZXNrdG9wQ2VsbCB7XHJcbiAgQElucHV0KCkgc2RJZDogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIHZhbHVlOiBhbnk7XHJcbiAgQElucHV0KCkga2V5OiBzdHJpbmc7XHJcbiAgQElucHV0KCkgY29sdW1uOiBTZFRhYmxlQ29sdW1uO1xyXG4gIEBJbnB1dCgpIGl0ZW06IFNkVGFibGVJdGVtO1xyXG4gIEBJbnB1dCgpIGdyaWRPcHRpb246IFNkVGFibGVPcHRpb247XHJcbiAgQElucHV0KCkgY2VsbERlZjoge1xyXG4gICAgW2NvbHVtbjogc3RyaW5nXTogU2RNYXRlcmlhbENlbGxEZWZEaXJlY3RpdmVcclxuICB9ID0ge307XHJcbiAgQElucHV0KCkgaWR4OiBudW1iZXI7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgKSB7IH1cclxufVxyXG4iXX0=
@@ -0,0 +1,21 @@
1
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
+ export class SdDesktopCellView {
3
+ constructor() { }
4
+ }
5
+ SdDesktopCellView.decorators = [
6
+ { type: Component, args: [{
7
+ selector: 'sd-desktop-cell-view',
8
+ template: "<ng-container *ngIf=\"item.current[column.field] | cellView : item : column : gridOption | async as view\">\r\n <ng-container *ngIf=\"view.display.hasHtml; else useValue\">\r\n <div\r\n *ngIf=\"view.click\"\r\n (click)=\"view.click()\"\r\n class=\"text-break cursor-pointer\"\r\n [matTooltip]=\"view.tooltip\"\r\n [class.text-center]=\"view.display.align === 'center'\"\r\n [class.text-right]=\"view.display.align === 'right'\"\r\n [innerHTML]=\"view.display.html | safeHtml\"></div>\r\n <div\r\n *ngIf=\"!view.click\"\r\n class=\"text-break\"\r\n [matTooltip]=\"view.tooltip\"\r\n [class.text-center]=\"view.display.align === 'center'\"\r\n [class.text-right]=\"view.display.align === 'right'\"\r\n [innerHTML]=\"view.display.html | safeHtml\"></div>\r\n </ng-container>\r\n <ng-template #useValue>\r\n <ng-container *ngIf=\"!!view.badge; else noBadge\">\r\n <sd-badge\r\n *ngIf=\"view.display.value\"\r\n [type]=\"view.badge.type\"\r\n [title]=\"view.display.value\"\r\n [color]=\"view.badge.color\"\r\n [icon]=\"view.badge.icon\"\r\n [tooltip]=\"view.tooltip\"\r\n (sdClick)=\"!!view.click && view.click()\"></sd-badge>\r\n </ng-container>\r\n <ng-template #noBadge>\r\n <div\r\n class=\"text-break\"\r\n [class.text-center]=\"view.display.align === 'center'\"\r\n [class.text-right]=\"view.display.align === 'right'\"\r\n [matTooltip]=\"view.tooltip\">\r\n <a *ngIf=\"!!view.click\" href=\"javascript:;\" (click)=\"view.click()\">{{ view.display.value }}</a>\r\n <ng-container *ngIf=\"!view.click\">{{ view.display.value }} </ng-container>\r\n </div>\r\n </ng-template>\r\n </ng-template>\r\n</ng-container>\r\n",
9
+ changeDetection: ChangeDetectionStrategy.OnPush,
10
+ styles: [".text-black400{color:#757575}.c-color-success{color:#4caf50}.c-color-danger{color:#f82c13}.c-image{-o-object-fit:contain;margin:5px 0;object-fit:contain}.c-img{font-size:30px;opacity:.5}.c-img.pointer:hover{opacity:.9}"]
11
+ },] }
12
+ ];
13
+ SdDesktopCellView.ctorParameters = () => [];
14
+ SdDesktopCellView.propDecorators = {
15
+ sdId: [{ type: Input }],
16
+ key: [{ type: Input }],
17
+ column: [{ type: Input }],
18
+ item: [{ type: Input }],
19
+ gridOption: [{ type: Input }]
20
+ };
21
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVza3RvcC1jZWxsLXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL25naGlhdHQxNV9vbmVtb3VudC9Eb2N1bWVudHMvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS90YWJsZS8iLCJzb3VyY2VzIjpbInNyYy9saWIvY29tcG9uZW50cy9kZXNrdG9wLWNlbGwtdmlldy9kZXNrdG9wLWNlbGwtdmlldy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWEsTUFBTSxlQUFlLENBQUM7QUFXckYsTUFBTSxPQUFPLGlCQUFpQjtJQU01QixnQkFDSSxDQUFDOzs7WUFiTixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHNCQUFzQjtnQkFDaEMsNHhEQUFpRDtnQkFFakQsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O2FBQ2hEOzs7O21CQUVFLEtBQUs7a0JBQ0wsS0FBSztxQkFDTCxLQUFLO21CQUNMLEtBQUs7eUJBQ0wsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBRdWVyeUxpc3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU2RUYWJsZUNvbHVtbiB9IGZyb20gJy4uLy4uL21vZGVscy90YWJsZS1jb2x1bW4ubW9kZWwnO1xyXG5pbXBvcnQgeyBTZFRhYmxlT3B0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RhYmxlLW9wdGlvbi5tb2RlbCc7XHJcbmltcG9ydCB7IFNkVGFibGVJdGVtIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RhYmxlLWl0ZW0ubW9kZWwnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzZC1kZXNrdG9wLWNlbGwtdmlldycsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2Rlc2t0b3AtY2VsbC12aWV3LmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9kZXNrdG9wLWNlbGwtdmlldy5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZERlc2t0b3BDZWxsVmlldyB7XHJcbiAgQElucHV0KCkgc2RJZDogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGtleTogc3RyaW5nO1xyXG4gIEBJbnB1dCgpIGNvbHVtbjogU2RUYWJsZUNvbHVtbjtcclxuICBASW5wdXQoKSBpdGVtOiBTZFRhYmxlSXRlbTtcclxuICBASW5wdXQoKSBncmlkT3B0aW9uOiBTZFRhYmxlT3B0aW9uO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICkgeyB9XHJcbn1cclxuIl19
@@ -0,0 +1,20 @@
1
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
+ export class SdDesktopCommand {
3
+ constructor() {
4
+ this.commands = [];
5
+ }
6
+ }
7
+ SdDesktopCommand.decorators = [
8
+ { type: Component, args: [{
9
+ selector: 'sd-desktop-command',
10
+ template: "<ng-container *ngIf=\"item | commandFilter:commands | async; $implicit as filteredCommands\">\r\n <ng-container *ngFor=\"let command of filteredCommands\">\r\n <ng-container *ngIf=\"command?.click; else elseChildren\">\r\n <button (click)=\"command.click(item)\" [matTooltip]=\"command | commandTitle:item\" aria-hidden=\"true\"\r\n [disabled]=\"item | commandDisable:command\" mat-icon-button>\r\n <mat-icon class=\"c-icon\" [fontSet]=\"command.fontSet\">{{command | commandIcon:item}}</mat-icon>\r\n </button>\r\n </ng-container>\r\n <ng-template #elseChildren>\r\n <button [matMenuTriggerFor]=\"menu\" aria-hidden=\"true\" mat-icon-button>\r\n <mat-icon *ngIf=\"command?.icon\" class=\"c-icon\" [fontSet]=\"command.fontSet\">{{command | commandIcon:item}}\r\n </mat-icon>\r\n <mat-icon *ngIf=\"!command?.icon\" class=\"c-icon\">more_vert</mat-icon>\r\n </button>\r\n <mat-menu #menu=\"matMenu\">\r\n <span>\r\n <button *ngFor=\"let childCommand of command.children\" mat-menu-item (click)=\"childCommand.click(item)\"\r\n [disabled]=\"item | commandDisable:childCommand\">\r\n <ng-container *ngIf=\"!childCommand.htmlTemplate\">\r\n <mat-icon [fontSet]=\"command.fontSet\" class=\"c-icon\">{{childCommand | commandIcon:item}}\r\n </mat-icon>\r\n <span> {{childCommand | commandTitle:item}}</span>\r\n </ng-container>\r\n <ng-container *ngIf=\"childCommand.htmlTemplate\">\r\n <div [innerHTML]=\"childCommand.htmlTemplate(item)\"></div>\r\n </ng-container>\r\n </button>\r\n </span>\r\n </mat-menu>\r\n </ng-template>\r\n </ng-container>\r\n</ng-container>\r\n",
11
+ changeDetection: ChangeDetectionStrategy.OnPush,
12
+ styles: [":host{align-items:center;display:flex}mat-icon.c-icon{color:rgba(0,0,0,.54)!important}"]
13
+ },] }
14
+ ];
15
+ SdDesktopCommand.ctorParameters = () => [];
16
+ SdDesktopCommand.propDecorators = {
17
+ item: [{ type: Input }],
18
+ commands: [{ type: Input }]
19
+ };
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVza3RvcC1jb21tYW5kLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTVfb25lbW91bnQvRG9jdW1lbnRzL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvdGFibGUvIiwic291cmNlcyI6WyJzcmMvbGliL2NvbXBvbmVudHMvZGVza3RvcC1jb21tYW5kL2Rlc2t0b3AtY29tbWFuZC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFVMUUsTUFBTSxPQUFPLGdCQUFnQjtJQUczQjtRQURTLGFBQVEsR0FBcUIsRUFBRSxDQUFDO0lBRXpDLENBQUM7OztZQVZGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsb0JBQW9CO2dCQUM5Qixnd0RBQStDO2dCQUUvQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7YUFDaEQ7Ozs7bUJBRUUsS0FBSzt1QkFDTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU2RUYWJsZUNvbW1hbmQgfSBmcm9tICcuLi8uLi9tb2RlbHMvdGFibGUtY29tbWFuZC5tb2RlbCc7XHJcbmltcG9ydCB7IFNkVGFibGVJdGVtIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RhYmxlLWl0ZW0ubW9kZWwnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzZC1kZXNrdG9wLWNvbW1hbmQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9kZXNrdG9wLWNvbW1hbmQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL2Rlc2t0b3AtY29tbWFuZC5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZERlc2t0b3BDb21tYW5kIHtcclxuICBASW5wdXQoKSBpdGVtOiBTZFRhYmxlSXRlbTtcclxuICBASW5wdXQoKSBjb21tYW5kczogU2RUYWJsZUNvbW1hbmRbXSA9IFtdO1xyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,99 @@
1
+ var _subscription;
2
+ import { __classPrivateFieldGet } from "tslib";
3
+ import { Component, Input, ViewChild, ChangeDetectionStrategy, ChangeDetectorRef, } from '@angular/core';
4
+ import { SdPopupFilter } from '../popup-filter/popup-filter.component';
5
+ import { BehaviorSubject, Subscription } from 'rxjs';
6
+ import { DeviceDetectorService } from 'ngx-device-detector';
7
+ import { startWith } from 'rxjs/operators';
8
+ export class SdGridFilter {
9
+ constructor(ref, deviceService) {
10
+ this.ref = ref;
11
+ this.deviceService = deviceService;
12
+ this.columns = [];
13
+ this.externalFilters = [];
14
+ this.filterDefs = [];
15
+ this.filterRegisterChange = new BehaviorSubject(null);
16
+ this.filterDef = {};
17
+ this.inlineFilterDef = {};
18
+ this.columnFilter = {};
19
+ this.inlineColumn = {};
20
+ this.externalFilter = {};
21
+ this.inlineExternal = {};
22
+ _subscription.set(this, new Subscription());
23
+ this.onFilter = (item) => {
24
+ this.filterRegister.value.set({
25
+ columnFilter: this.columnFilter,
26
+ externalFilter: this.externalFilter,
27
+ filterDef: this.filterDef,
28
+ });
29
+ };
30
+ this.updateFilter = () => {
31
+ this.filterRegister.value.set({
32
+ columnFilter: this.columnFilter,
33
+ externalFilter: this.externalFilter,
34
+ filterDef: this.filterDef,
35
+ notReload: true
36
+ });
37
+ };
38
+ this.open = () => {
39
+ this.popupFilter.open();
40
+ };
41
+ this.isMobileOrTablet = !this.deviceService.isDesktop();
42
+ this.ref.markForCheck();
43
+ }
44
+ set _filter(filter) {
45
+ this.filter = filter;
46
+ }
47
+ set _externalFilters(value) {
48
+ this.externalFilters = value || [];
49
+ }
50
+ set _filterRegister(value) {
51
+ this.filterRegister = value;
52
+ this.filterRegisterChange.next(this.filterRegister);
53
+ }
54
+ ngAfterViewInit() {
55
+ __classPrivateFieldGet(this, _subscription).add(this.filterRegisterChange.pipe(startWith(this.filterRegister)).subscribe(filterRegister => {
56
+ if (this.filterRegister) {
57
+ __classPrivateFieldGet(this, _subscription).add(this.filterRegister.configuration.observer.subscribe(configuration => {
58
+ const { inlineColumn, inlineExternal, inlineFilterDef } = configuration;
59
+ this.inlineColumn = inlineColumn;
60
+ this.inlineExternal = inlineExternal;
61
+ this.inlineFilterDef = inlineFilterDef;
62
+ this.ref.markForCheck();
63
+ }));
64
+ __classPrivateFieldGet(this, _subscription).add(this.filterRegister.value.observer.subscribe(value => {
65
+ const { columnFilter, externalFilter, filterDef } = value;
66
+ this.columnFilter = columnFilter;
67
+ this.externalFilter = externalFilter;
68
+ this.filterDef = filterDef;
69
+ this.ref.markForCheck();
70
+ }));
71
+ }
72
+ }));
73
+ }
74
+ ngOnDestroy() {
75
+ __classPrivateFieldGet(this, _subscription).unsubscribe();
76
+ }
77
+ }
78
+ _subscription = new WeakMap();
79
+ SdGridFilter.decorators = [
80
+ { type: Component, args: [{
81
+ selector: 'sd-grid-filter',
82
+ template: "<ng-container *ngIf=\"!filter?.disabled\">\r\n <ng-container *ngIf=\"filter?.enableCollapse;else noCollapse\">\r\n <sd-group class=\"p-12\" [isExpanded]=\"false\" title=\"T\u00ECm ki\u1EBFm\" expandable>\r\n <div sdGroupBody>\r\n <ng-container *ngTemplateOutlet=\"noCollapse\"></ng-container>\r\n </div>\r\n </sd-group>\r\n </ng-container>\r\n <ng-template #noCollapse>\r\n <div\r\n *ngIf=\"!isMobileOrTablet && ((columns?.length && !filter?.inlineColumn) || externalFilters?.length || filterDefs?.length)\"\r\n class=\"row mx-0\">\r\n <ng-container *ngIf=\"filter?.sorts?.length\">\r\n <ng-container *ngFor=\"let field of filter?.sorts\">\r\n <ng-container *ngIf=\"columns?.length && !filter?.inlineColumn\">\r\n <ng-container *ngFor=\"let item of columns | sdFilterColumn:field\">\r\n <ng-container *ngTemplateOutlet=\"filterColumn; context: {item: item}\"></ng-container>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"externalFilters?.length\">\r\n <ng-container *ngFor=\"let item of externalFilters | sdFilterExternal:field\">\r\n <ng-container *ngTemplateOutlet=\"filterExternal; context: {item: item}\"></ng-container>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngFor=\"let item of filterDefs\">\r\n <div *ngIf=\"inlineFilterDef[item.sdMaterialFilterDef] && item.sdMaterialFilterDef === field\"\r\n class=\"col-lg-2 col-md-3 col-sm-6 px-8\">\r\n <ng-container *ngTemplateOutlet=\"item.templateRef;context:{filterDef:filterDef, isInline: true}\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"!filter?.sorts?.length\">\r\n <ng-container *ngIf=\"columns?.length && !filter?.inlineColumn\">\r\n <ng-container *ngFor=\"let item of columns | sdFilterColumn\">\r\n <ng-container *ngTemplateOutlet=\"filterColumn; context: {item: item}\"></ng-container>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngIf=\"externalFilters?.length\">\r\n <ng-container *ngFor=\"let item of externalFilters | sdFilterExternal\">\r\n <ng-container *ngTemplateOutlet=\"filterExternal; context: {item: item}\"></ng-container>\r\n </ng-container>\r\n </ng-container>\r\n <ng-container *ngFor=\"let item of filterDefs\">\r\n <div *ngIf=\"inlineFilterDef[item.sdMaterialFilterDef]\" class=\"col-lg-2 col-md-3 col-sm-6 px-8\">\r\n <ng-container *ngTemplateOutlet=\"item.templateRef;context:{filterDef:filterDef, isInline: true}\">\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n <ng-template #filterColumn let-item=\"item\">\r\n <div *ngIf=\"inlineColumn[item.field]\" class=\"col-lg-2 col-md-3 col-sm-6 px-8\">\r\n <sd-input [label]=\"item.title\" *ngIf=\"item.type === 'string'\" type=\"text\" [(model)]=\"columnFilter[item.field]\"\r\n (keyupEnter)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-input>\r\n <sd-input-number [label]=\"item.title\" *ngIf=\"item.type === 'number'\" [(model)]=\"columnFilter[item.field]\"\r\n (keyupEnter)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-input-number>\r\n <sd-select [label]=\"item.title\" *ngIf=\"item.type === 'bool'\" [items]=\"[{value:'1',display:item.option?.displayOnTrue || 'True' },\r\n {value:'0',display:item.option?.displayOnFalse || 'False' }]\" valueField=\"value\" displayField=\"display\"\r\n [(model)]=\"columnFilter[item.field]\" (sdChange)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-select>\r\n <sd-select *ngIf=\"item.type === 'values' && item?.option?.selection !== 'AUTOCOMPLETE'\"\r\n [items]=\"item.option?.items\" [valueField]=\"item.option?.valueField\" [displayField]=\"item.option.displayField\"\r\n [(model)]=\"columnFilter[item.field]\" (sdChange)=\"onFilter(item)\" [disabled]=\"item.filter?.disabled\"\r\n [multiple]=\"item?.option?.selection === 'MULTIPLE' || item?.item?.selection === 'MULTIPLEAUTOCOMPLETE'\"\r\n [filtered]=\"item?.option?.selection === 'MULTIPLEAUTOCOMPLETE'\" appearance=\"outline\">\r\n </sd-select>\r\n <sd-autocomplete *ngIf=\"item.type === 'values' && item?.option?.selection === 'AUTOCOMPLETE'\"\r\n [items]=\"item.option?.items\" [valueField]=\"item.option?.valueField\" [displayField]=\"item.option?.displayField\"\r\n [(model)]=\"columnFilter[item.field]\" (sdChange)=\"onFilter(item)\" [disabled]=\"item.filter?.disabled\"\r\n appearance=\"outline\">\r\n </sd-autocomplete>\r\n <sd-date-time *ngIf=\"item.type === 'date' || item.type === 'datetime' || item.type === 'time'\"\r\n [label]=\"item.title\" [(model)]=\"columnFilter[item.field]\" [type]=\"item.type\" (sdChange)=\"onFilter(item)\"\r\n appearance=\"outline\">\r\n </sd-date-time>\r\n </div>\r\n </ng-template>\r\n <ng-template #filterExternal let-item=\"item\">\r\n <div *ngIf=\"inlineExternal[item.field]\" class=\"col-lg-2 col-md-3 col-sm-6 px-8\">\r\n <sd-input [label]=\"item.title\" *ngIf=\"item.type === 'string'\" type=\"text\" [(model)]=\"externalFilter[item.field]\"\r\n (keyupEnter)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-input>\r\n <sd-input-number [label]=\"item.title\" *ngIf=\"item.type === 'number'\" [(model)]=\"externalFilter[item.field]\"\r\n (keyupEnter)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-input-number>\r\n <sd-select [label]=\"item.title\" *ngIf=\"item.type === 'bool'\" [items]=\"[{value:'1',display:item.option?.displayOnTrue || 'True' },\r\n {value:'0',display:item.option?.displayOnFalse || 'False' }]\" valueField=\"value\" displayField=\"display\"\r\n [(model)]=\"externalFilter[item.field]\" (sdChange)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-select>\r\n <ng-container *ngIf=\"item.type === 'values' && item.option\">\r\n <sd-select *ngIf=\"item.option?.selection === 'MULTIPLE'\" [label]=\"item.title\" [items]=\"item.option.items\"\r\n [valueField]=\"item.option.valueField\" [displayField]=\"item.option.displayField\"\r\n [(model)]=\"externalFilter[item.field]\" (sdChange)=\"onFilter(item)\" [selectAll]=\"item.option.selectAll\"\r\n appearance=\"outline\" multiple>\r\n </sd-select>\r\n <sd-autocomplete *ngIf=\"item.option?.selection === 'AUTOCOMPLETE'\" [label]=\"item.title\"\r\n [items]=\"item.option.items\" [valueField]=\"item.option.valueField\" [displayField]=\"item.option.displayField\"\r\n [(model)]=\"externalFilter[item.field]\" (sdChange)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-autocomplete>\r\n <sd-select *ngIf=\"item.option?.selection === 'MULTIPLEAUTOCOMPLETE'\" [label]=\"item.title\"\r\n [items]=\"item.option.items\" [valueField]=\"item.option.valueField\" [displayField]=\"item.option.displayField\"\r\n [(model)]=\"externalFilter[item.field]\" (sdChange)=\"onFilter(item)\" filtered=\"true\" appearance=\"outline\"\r\n multiple>\r\n </sd-select>\r\n <sd-select *ngIf=\"!item.option?.selection\" [label]=\"item.title\" [items]=\"item.option.items\"\r\n [valueField]=\"item.option.valueField\" [displayField]=\"item.option.displayField\"\r\n [(model)]=\"externalFilter[item.field]\" (sdChange)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-select>\r\n </ng-container>\r\n <sd-date-time [label]=\"item.title\" *ngIf=\"item.type ==='date' || item.type ==='datetime'\"\r\n [(model)]=\"externalFilter[item.field]\" [type]=\"item.type\" (sdChange)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-date-time>\r\n <sd-date-range [label]=\"item.title\" *ngIf=\"item.type ==='daterange' && externalFilter[item.field]\"\r\n [(from)]=\"externalFilter[item.field].from\" [(to)]=\"externalFilter[item.field].to\" [min]=\"item.minDate\"\r\n [max]=\"item.maxDate\" (sdChange)=\"onFilter(item)\" appearance=\"outline\">\r\n </sd-date-range>\r\n </div>\r\n </ng-template>\r\n <sd-popup-filter [filterRegister]=\"filterRegister\" [columns]=\"columns\"\r\n [externalFilters]=\"externalFilters\" [filterDefs]=\"filterDefs\">\r\n </sd-popup-filter>\r\n </ng-template>\r\n</ng-container>",
83
+ changeDetection: ChangeDetectionStrategy.OnPush,
84
+ styles: [":host{display:block;padding-bottom:10px;padding-left:0;padding-right:0}:host ::ng-deep .mat-form-field-wrapper{padding-bottom:0}"]
85
+ },] }
86
+ ];
87
+ SdGridFilter.ctorParameters = () => [
88
+ { type: ChangeDetectorRef },
89
+ { type: DeviceDetectorService }
90
+ ];
91
+ SdGridFilter.propDecorators = {
92
+ popupFilter: [{ type: ViewChild, args: [SdPopupFilter,] }],
93
+ _filter: [{ type: Input, args: ['filter',] }],
94
+ columns: [{ type: Input }],
95
+ _externalFilters: [{ type: Input, args: ['externalFilters',] }],
96
+ filterDefs: [{ type: Input }],
97
+ _filterRegister: [{ type: Input, args: ['filterRegister',] }]
98
+ };
99
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1maWx0ZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL25naGlhdHQxNV9vbmVtb3VudC9Eb2N1bWVudHMvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS90YWJsZS8iLCJzb3VyY2VzIjpbInNyYy9saWIvY29tcG9uZW50cy9ncmlkLWZpbHRlci9ncmlkLWZpbHRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFHTCxTQUFTLEVBR1QsdUJBQXVCLEVBQ3ZCLGlCQUFpQixHQUNsQixNQUFNLGVBQWUsQ0FBQztBQU92QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGVBQWUsRUFBVyxZQUFZLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFDOUQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFFNUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBUTNDLE1BQU0sT0FBTyxZQUFZO0lBNkJ2QixZQUFvQixHQUFzQixFQUFVLGFBQW9DO1FBQXBFLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQVUsa0JBQWEsR0FBYixhQUFhLENBQXVCO1FBdkIvRSxZQUFPLEdBQW9CLEVBQUUsQ0FBQztRQUN2QyxvQkFBZSxHQUE0QixFQUFFLENBQUM7UUFJckMsZUFBVSxHQUFtQyxFQUFFLENBQUM7UUFNekQseUJBQW9CLEdBQUcsSUFBSSxlQUFlLENBQStCLElBQUksQ0FBQyxDQUFDO1FBRS9FLGNBQVMsR0FBUSxFQUFFLENBQUM7UUFDcEIsb0JBQWUsR0FBNEIsRUFBRSxDQUFDO1FBQzlDLGlCQUFZLEdBQVEsRUFBRSxDQUFDO1FBQ3ZCLGlCQUFZLEdBQTRCLEVBQUUsQ0FBQztRQUMzQyxtQkFBYyxHQUFRLEVBQUUsQ0FBQztRQUN6QixtQkFBYyxHQUE0QixFQUFFLENBQUM7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QUFDLENBQUMsQ0FDSCxDQUFDO0lBQ0osQ0FBQztJQUVELFdBQVc7UUFDVCw0Q0FBbUIsV0FBVyxFQUFFLENBQUM7SUFDbkMsQ0FBQzs7OztZQXJFRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGdCQUFnQjtnQkFDMUIsb2xSQUEyQztnQkFFM0MsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O2FBQ2hEOzs7WUFuQkMsaUJBQWlCO1lBVVYscUJBQXFCOzs7MEJBVzNCLFNBQVMsU0FBQyxhQUFhO3NCQUV2QixLQUFLLFNBQUMsUUFBUTtzQkFHZCxLQUFLOytCQUVMLEtBQUssU0FBQyxpQkFBaUI7eUJBR3ZCLEtBQUs7OEJBRUwsS0FBSyxTQUFDLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XHJcbiAgQ29tcG9uZW50LFxyXG4gIElucHV0LFxyXG4gIE91dHB1dCxcclxuICBFdmVudEVtaXR0ZXIsXHJcbiAgVmlld0NoaWxkLFxyXG4gIEFmdGVyVmlld0luaXQsXHJcbiAgT25EZXN0cm95LFxyXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxyXG4gIENoYW5nZURldGVjdG9yUmVmLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQge1xyXG4gIFNkVGFibGVPcHRpb25GaWx0ZXIsXHJcbiAgU2RUYWJsZUV4dGVybmFsRmlsdGVyLFxyXG4gIFNkR3JpZE1hdGVyaWFsRmlsdGVyUmVnaXN0ZXIsXHJcbn0gZnJvbSAnLi4vLi4vc2VydmljZXMvdGFibGUtZmlsdGVyL3RhYmxlLWZpbHRlci5tb2RlbCc7XHJcbmltcG9ydCB7IFNkVGFibGVDb2x1bW4gfSBmcm9tICcuLi8uLi9tb2RlbHMvdGFibGUtY29sdW1uLm1vZGVsJztcclxuaW1wb3J0IHsgU2RQb3B1cEZpbHRlciB9IGZyb20gJy4uL3BvcHVwLWZpbHRlci9wb3B1cC1maWx0ZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQmVoYXZpb3JTdWJqZWN0LCBTdWJqZWN0LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgRGV2aWNlRGV0ZWN0b3JTZXJ2aWNlIH0gZnJvbSAnbmd4LWRldmljZS1kZXRlY3Rvcic7XHJcbmltcG9ydCB7IFNkTWF0ZXJpYWxGaWx0ZXJEZWZEaXJlY3RpdmUgfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL3NkLW1hdGVyaWFsLWZpbHRlci1kZWYuZGlyZWN0aXZlJztcclxuaW1wb3J0IHsgc3RhcnRXaXRoIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzZC1ncmlkLWZpbHRlcicsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2dyaWQtZmlsdGVyLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9ncmlkLWZpbHRlci5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2RHcmlkRmlsdGVyIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcclxuICBAVmlld0NoaWxkKFNkUG9wdXBGaWx0ZXIpIHBvcHVwRmlsdGVyOiBTZFBvcHVwRmlsdGVyO1xyXG4gIGZpbHRlcjogUmVhZG9ubHk8U2RUYWJsZU9wdGlvbkZpbHRlcj47XHJcbiAgQElucHV0KCdmaWx0ZXInKSBzZXQgX2ZpbHRlcihmaWx0ZXI6IFNkVGFibGVPcHRpb25GaWx0ZXIpIHtcclxuICAgIHRoaXMuZmlsdGVyID0gZmlsdGVyO1xyXG4gIH1cclxuICBASW5wdXQoKSBjb2x1bW5zOiBTZFRhYmxlQ29sdW1uW10gPSBbXTtcclxuICBleHRlcm5hbEZpbHRlcnM6IFNkVGFibGVFeHRlcm5hbEZpbHRlcltdID0gW107XHJcbiAgQElucHV0KCdleHRlcm5hbEZpbHRlcnMnKSBzZXQgX2V4dGVybmFsRmlsdGVycyh2YWx1ZTogU2RUYWJsZUV4dGVybmFsRmlsdGVyW10pIHtcclxuICAgIHRoaXMuZXh0ZXJuYWxGaWx0ZXJzID0gdmFsdWUgfHwgW107XHJcbiAgfVxyXG4gIEBJbnB1dCgpIGZpbHRlckRlZnM6IFNkTWF0ZXJpYWxGaWx0ZXJEZWZEaXJlY3RpdmVbXSA9IFtdO1xyXG4gIGZpbHRlclJlZ2lzdGVyOiBTZEdyaWRNYXRlcmlhbEZpbHRlclJlZ2lzdGVyO1xyXG4gIEBJbnB1dCgnZmlsdGVyUmVnaXN0ZXInKSBzZXQgX2ZpbHRlclJlZ2lzdGVyKHZhbHVlOiBTZEdyaWRNYXRlcmlhbEZpbHRlclJlZ2lzdGVyKSB7XHJcbiAgICB0aGlzLmZpbHRlclJlZ2lzdGVyID0gdmFsdWU7XHJcbiAgICB0aGlzLmZpbHRlclJlZ2lzdGVyQ2hhbmdlLm5leHQodGhpcy5maWx0ZXJSZWdpc3Rlcik7XHJcbiAgfVxyXG4gIGZpbHRlclJlZ2lzdGVyQ2hhbmdlID0gbmV3IEJlaGF2aW9yU3ViamVjdDxTZEdyaWRNYXRlcmlhbEZpbHRlclJlZ2lzdGVyPihudWxsKTtcclxuXHJcbiAgZmlsdGVyRGVmOiBhbnkgPSB7fTtcclxuICBpbmxpbmVGaWx0ZXJEZWY6IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+ID0ge307XHJcbiAgY29sdW1uRmlsdGVyOiBhbnkgPSB7fTtcclxuICBpbmxpbmVDb2x1bW46IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+ID0ge307XHJcbiAgZXh0ZXJuYWxGaWx0ZXI6IGFueSA9IHt9O1xyXG4gIGlubGluZUV4dGVybmFsOiBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPiA9IHt9O1xyXG4gIGlzTW9iaWxlT3JUYWJsZXQ6IGJvb2xlYW47XHJcblxyXG4gICNzdWJzY3JpcHRpb24gPSBuZXcgU3Vic2NyaXB0aW9uKCk7XHJcblxyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgcmVmOiBDaGFuZ2VEZXRlY3RvclJlZiwgcHJpdmF0ZSBkZXZpY2VTZXJ2aWNlOiBEZXZpY2VEZXRlY3RvclNlcnZpY2UpIHtcclxuICAgIHRoaXMuaXNNb2JpbGVPclRhYmxldCA9ICF0aGlzLmRldmljZVNlcnZpY2UuaXNEZXNrdG9wKCk7XHJcbiAgICB0aGlzLnJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICB9XHJcblxyXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcclxuICAgIHRoaXMuI3N1YnNjcmlwdGlvbi5hZGQoXHJcbiAgICAgIHRoaXMuZmlsdGVyUmVnaXN0ZXJDaGFuZ2UucGlwZShzdGFydFdpdGgodGhpcy5maWx0ZXJSZWdpc3RlcikpLnN1YnNjcmliZShmaWx0ZXJSZWdpc3RlciA9PiB7XHJcbiAgICAgICAgaWYgKHRoaXMuZmlsdGVyUmVnaXN0ZXIpIHtcclxuICAgICAgICAgIHRoaXMuI3N1YnNjcmlwdGlvbi5hZGQoXHJcbiAgICAgICAgICAgIHRoaXMuZmlsdGVyUmVnaXN0ZXIuY29uZmlndXJhdGlvbi5vYnNlcnZlci5zdWJzY3JpYmUoY29uZmlndXJhdGlvbiA9PiB7XHJcbiAgICAgICAgICAgICAgY29uc3QgeyBpbmxpbmVDb2x1bW4sIGlubGluZUV4dGVybmFsLCBpbmxpbmVGaWx0ZXJEZWYgfSA9IGNvbmZpZ3VyYXRpb247XHJcbiAgICAgICAgICAgICAgdGhpcy5pbmxpbmVDb2x1bW4gPSBpbmxpbmVDb2x1bW47XHJcbiAgICAgICAgICAgICAgdGhpcy5pbmxpbmVFeHRlcm5hbCA9IGlubGluZUV4dGVybmFsO1xyXG4gICAgICAgICAgICAgIHRoaXMuaW5saW5lRmlsdGVyRGVmID0gaW5saW5lRmlsdGVyRGVmO1xyXG4gICAgICAgICAgICAgIHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgKTtcclxuICAgICAgICAgIHRoaXMuI3N1YnNjcmlwdGlvbi5hZGQoXHJcbiAgICAgICAgICAgIHRoaXMuZmlsdGVyUmVnaXN0ZXIudmFsdWUub2JzZXJ2ZXIuc3Vic2NyaWJlKHZhbHVlID0+IHtcclxuICAgICAgICAgICAgICBjb25zdCB7IGNvbHVtbkZpbHRlciwgZXh0ZXJuYWxGaWx0ZXIsIGZpbHRlckRlZiB9ID0gdmFsdWU7XHJcbiAgICAgICAgICAgICAgdGhpcy5jb2x1bW5GaWx0ZXIgPSBjb2x1bW5GaWx0ZXI7XHJcbiAgICAgICAgICAgICAgdGhpcy5leHRlcm5hbEZpbHRlciA9IGV4dGVybmFsRmlsdGVyO1xyXG4gICAgICAgICAgICAgIHRoaXMuZmlsdGVyRGVmID0gZmlsdGVyRGVmO1xyXG4gICAgICAgICAgICAgIHRoaXMucmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gICAgICAgICAgICB9KVxyXG4gICAgICAgICAgKTtcclxuICAgICAgICB9XHJcbiAgICAgIH0pXHJcbiAgICApO1xyXG4gIH1cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7XHJcbiAgICB0aGlzLiNzdWJzY3JpcHRpb24udW5zdWJzY3JpYmUoKTtcclxuICB9XHJcblxyXG4gIG9uRmlsdGVyID0gKGl0ZW0/OiBTZFRhYmxlQ29sdW1uIHwgU2RUYWJsZUV4dGVybmFsRmlsdGVyKSA9PiB7XHJcbiAgICB0aGlzLmZpbHRlclJlZ2lzdGVyLnZhbHVlLnNldCh7XHJcbiAgICAgIGNvbHVtbkZpbHRlcjogdGhpcy5jb2x1bW5GaWx0ZXIsXHJcbiAgICAgIGV4dGVybmFsRmlsdGVyOiB0aGlzLmV4dGVybmFsRmlsdGVyLFxyXG4gICAgICBmaWx0ZXJEZWY6IHRoaXMuZmlsdGVyRGVmLFxyXG4gICAgfSk7XHJcbiAgfTtcclxuXHJcbiAgdXBkYXRlRmlsdGVyID0gKCkgPT4ge1xyXG4gICAgdGhpcy5maWx0ZXJSZWdpc3Rlci52YWx1ZS5zZXQoe1xyXG4gICAgICBjb2x1bW5GaWx0ZXI6IHRoaXMuY29sdW1uRmlsdGVyLFxyXG4gICAgICBleHRlcm5hbEZpbHRlcjogdGhpcy5leHRlcm5hbEZpbHRlcixcclxuICAgICAgZmlsdGVyRGVmOiB0aGlzLmZpbHRlckRlZixcclxuICAgICAgbm90UmVsb2FkOiB0cnVlXHJcbiAgICB9KTtcclxuICB9O1xyXG5cclxuICBvcGVuID0gKCkgPT4ge1xyXG4gICAgdGhpcy5wb3B1cEZpbHRlci5vcGVuKCk7XHJcbiAgfTtcclxufVxyXG4iXX0=
@@ -0,0 +1,79 @@
1
+ var _filterRegister;
2
+ import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
+ import { Component, ViewChild, Input, ChangeDetectionStrategy, ChangeDetectorRef } from '@angular/core';
4
+ import { SdModal } from '@sd-angular/core/modal';
5
+ export class SdPopupFilter {
6
+ constructor(cdRef) {
7
+ this.cdRef = cdRef;
8
+ _filterRegister.set(this, void 0);
9
+ this.externalFilters = [];
10
+ this.externalFilter = {};
11
+ this.inlineExternal = {};
12
+ this.columns = [];
13
+ this.columnFilter = {};
14
+ this.inlineColumn = {};
15
+ this.filterDefs = [];
16
+ this.filterDef = {};
17
+ this.inlineFilterDef = {};
18
+ this.open = () => {
19
+ const configuration = __classPrivateFieldGet(this, _filterRegister).configuration.get();
20
+ this.inlineColumn = JSON.parse(JSON.stringify(configuration.inlineColumn));
21
+ this.inlineExternal = JSON.parse(JSON.stringify(configuration.inlineExternal));
22
+ this.inlineFilterDef = JSON.parse(JSON.stringify(configuration.inlineFilterDef));
23
+ const filterValue = __classPrivateFieldGet(this, _filterRegister).value.get();
24
+ this.columnFilter = JSON.parse(JSON.stringify(filterValue.columnFilter));
25
+ this.externalFilter = JSON.parse(JSON.stringify(filterValue.externalFilter));
26
+ this.filterDef = JSON.parse(JSON.stringify(filterValue.filterDef));
27
+ this.modal.open();
28
+ this.cdRef.markForCheck();
29
+ };
30
+ this.close = () => {
31
+ this.modal.close();
32
+ this.cdRef.markForCheck();
33
+ };
34
+ this.onApply = () => {
35
+ __classPrivateFieldGet(this, _filterRegister).configuration.set({
36
+ inlineColumn: this.inlineColumn,
37
+ inlineExternal: this.inlineExternal,
38
+ inlineFilterDef: this.inlineFilterDef,
39
+ });
40
+ __classPrivateFieldGet(this, _filterRegister).value.set({
41
+ columnFilter: this.columnFilter,
42
+ externalFilter: this.externalFilter,
43
+ filterDef: this.filterDef,
44
+ });
45
+ this.modal.close();
46
+ this.cdRef.markForCheck();
47
+ };
48
+ }
49
+ set filterRegister(value) {
50
+ __classPrivateFieldSet(this, _filterRegister, value);
51
+ }
52
+ ngAfterViewInit() { }
53
+ ngOnDestroy() { }
54
+ onClear() {
55
+ __classPrivateFieldGet(this, _filterRegister).value.remove();
56
+ this.modal.close();
57
+ this.cdRef.markForCheck();
58
+ }
59
+ }
60
+ _filterRegister = new WeakMap();
61
+ SdPopupFilter.decorators = [
62
+ { type: Component, args: [{
63
+ selector: 'sd-popup-filter',
64
+ template: "<sd-modal width=\"500px\" [title]=\"'Filter' | sdTranslate\">\r\n <sd-modal-body class=\"c-popup-filter\">\r\n <ng-container *ngFor=\"let column of columns | sdFilterColumn\">\r\n <div class=\"d-flex align-items-baseline\">\r\n <ng-container>\r\n <div *sdDesktop class=\"c-checkable\">\r\n <mat-slide-toggle [(ngModel)]=\"inlineColumn[column.field]\" color=\"primary\"></mat-slide-toggle>\r\n </div>\r\n </ng-container>\r\n <div class=\"c-filterable\">\r\n <sd-input\r\n *ngIf=\"column.type === 'string'\"\r\n [label]=\"column.title\"\r\n type=\"text\"\r\n [(model)]=\"columnFilter[column.field]\"\r\n appearance=\"outline\">\r\n </sd-input>\r\n <sd-input\r\n *ngIf=\"column.type === 'number'\"\r\n [label]=\"column.title\"\r\n type=\" number\"\r\n [(model)]=\"columnFilter[column.field]\"\r\n appearance=\"outline\">\r\n </sd-input>\r\n <sd-select\r\n *ngIf=\"column.type === 'bool'\"\r\n [label]=\"column.title\"\r\n [items]=\"[\r\n { value: '1', display: column.trueValue || 'True' },\r\n { value: '0', display: column.falseValue || 'False' }\r\n ]\"\r\n valueField=\"value\"\r\n displayField=\"display\"\r\n [(model)]=\"columnFilter[column.field]\"\r\n appearance=\"outline\">\r\n </sd-select>\r\n <sd-select\r\n *ngIf=\"column.type === 'values' && !column?.editor?.autocomplete\"\r\n [label]=\"column.title\"\r\n [items]=\"column.option.items\"\r\n [valueField]=\"column.option.valueField\"\r\n [displayField]=\"column.option.displayField\"\r\n [(model)]=\"columnFilter[column.field]\"\r\n appearance=\"outline\">\r\n </sd-select>\r\n <sd-autocomplete\r\n *ngIf=\"column.type === 'values' && column?.editor?.autocomplete\"\r\n [label]=\"column.title\"\r\n [items]=\"column.option.items\"\r\n [valueField]=\"column.option.valueField\"\r\n [displayField]=\"column.option.displayField\"\r\n [(model)]=\"columnFilter[column.field]\"\r\n appearance=\"outline\">\r\n </sd-autocomplete>\r\n <sd-date-time\r\n *ngIf=\"column.type === 'date' || column.type === 'datetime' || column.type === 'time'\"\r\n [label]=\"column.title\"\r\n [(model)]=\"columnFilter[column.field]\"\r\n type=\"date\"\r\n appearance=\"outline\">\r\n </sd-date-time>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngFor=\"let item of externalFilters | sdFilterExternal\">\r\n <div class=\"d-flex align-items-baseline\">\r\n <ng-container>\r\n <div *sdDesktop class=\"c-checkable\">\r\n <mat-slide-toggle [(ngModel)]=\"inlineExternal[item.field]\" color=\"primary\"></mat-slide-toggle>\r\n </div>\r\n </ng-container>\r\n <div class=\"c-filterable\">\r\n <sd-input\r\n [label]=\"item.title\"\r\n *ngIf=\"item.type === 'string'\"\r\n type=\"text\"\r\n [(model)]=\"externalFilter[item.field]\"\r\n appearance=\"outline\">\r\n </sd-input>\r\n <sd-input-number [label]=\"item.title\" *ngIf=\"item.type === 'number'\" [(model)]=\"externalFilter[item.field]\" appearance=\"outline\">\r\n </sd-input-number>\r\n <sd-select\r\n [label]=\"item.title\"\r\n *ngIf=\"item.type === 'bool'\"\r\n [items]=\"[\r\n { value: '1', display: item.option?.displayOnTrue || 'True' },\r\n { value: '0', display: item.option?.displayOnFalse || 'False' }\r\n ]\"\r\n valueField=\"value\"\r\n displayField=\"display\"\r\n [(model)]=\"externalFilter[item.field]\"\r\n appearance=\"outline\">\r\n </sd-select>\r\n <ng-container *ngIf=\"item.type === 'values'\">\r\n <sd-select\r\n *ngIf=\"item.option?.selection === 'MULTIPLE'\"\r\n [label]=\"item.title\"\r\n [items]=\"item.option.items\"\r\n [valueField]=\"item.option.valueField\"\r\n [displayField]=\"item.option.displayField\"\r\n [(model)]=\"externalFilter[item.field]\"\r\n appearance=\"outline\"\r\n multiple>\r\n </sd-select>\r\n <sd-autocomplete\r\n *ngIf=\"item.option?.selection === 'AUTOCOMPLETE'\"\r\n [label]=\"item.title\"\r\n [items]=\"item.option.items\"\r\n [valueField]=\"item.option.valueField\"\r\n [displayField]=\"item.option.displayField\"\r\n appearance=\"outline\"\r\n [(model)]=\"externalFilter[item.field]\">\r\n </sd-autocomplete>\r\n <sd-select\r\n *ngIf=\"item.option?.selection === 'MULTIPLEAUTOCOMPLETE'\"\r\n [label]=\"item.title\"\r\n [items]=\"item.option.items\"\r\n [valueField]=\"item.option.valueField\"\r\n [displayField]=\"item.option.displayField\"\r\n appearance=\"outline\"\r\n [(model)]=\"externalFilter[item.field]\"\r\n filtered=\"true\"\r\n multiple>\r\n </sd-select>\r\n <sd-select\r\n *ngIf=\"!item.option?.selection\"\r\n [label]=\"item.title\"\r\n [items]=\"item.values\"\r\n [items]=\"item.option.items\"\r\n [valueField]=\"item.option.valueField\"\r\n [displayField]=\"item.option.displayField\"\r\n appearance=\"outline\"\r\n [(model)]=\"externalFilter[item.field]\">\r\n </sd-select>\r\n </ng-container>\r\n <sd-date-time\r\n [label]=\"item.title\"\r\n *ngIf=\"item.type === 'date' || item.type === 'datetime'\"\r\n [(model)]=\"externalFilter[item.field]\"\r\n [type]=\"item.type\"\r\n appearance=\"outline\">\r\n </sd-date-time>\r\n <sd-date-range\r\n [label]=\"item.title\"\r\n *ngIf=\"item.type === 'daterange' && externalFilter[item.field]\"\r\n [(from)]=\"externalFilter[item.field].from\"\r\n [(to)]=\"externalFilter[item.field].to\"\r\n [min]=\"item.minDate\"\r\n [max]=\"item.maxDate\"\r\n appearance=\"outline\">\r\n </sd-date-range>\r\n </div>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngFor=\"let filter of filterDefs\">\r\n <div class=\"d-flex align-items-baseline\">\r\n <ng-container>\r\n <div *sdDesktop class=\"c-checkable\">\r\n <mat-slide-toggle [(ngModel)]=\"inlineFilterDef[filter.sdMaterialFilterDef]\" color=\"primary\"> </mat-slide-toggle>\r\n </div>\r\n </ng-container>\r\n <div class=\"c-filterable\">\r\n <ng-container *ngTemplateOutlet=\"filter.templateRef; context: { filterDef: filterDef }\"> </ng-container>\r\n </div>\r\n </div>\r\n </ng-container>\r\n </sd-modal-body>\r\n <sd-modal-footer *sdDesktop>\r\n <sd-button class=\"mr-auto\" (action)=\"onClear()\" title=\"M\u1EB7c \u0111\u1ECBnh\" size=\"sm\" type=\"link\"> </sd-button>\r\n <sd-button (action)=\"onApply()\" title=\"\u0110\u1ED3ng \u00FD\" color=\"primary\" size=\"sm\" type=\"fill\"></sd-button>\r\n </sd-modal-footer>\r\n <sd-modal-footer *sdMobileTablet>\r\n <sd-button style=\"flex: 1; padding-right: 5px\" (action)=\"onClear()\" title=\"M\u1EB7c \u0111\u1ECBnh\" width=\"100%\" size=\"sm\" type=\"link\"></sd-button>\r\n <sd-button\r\n style=\"flex: 1; padding-left: 5px\"\r\n (action)=\"onApply()\"\r\n title=\"\u0110\u1ED3ng \u00FD\"\r\n color=\"primary\"\r\n width=\"100%\"\r\n size=\"sm\"\r\n type=\"fill\"></sd-button>\r\n </sd-modal-footer>\r\n</sd-modal>\r\n",
65
+ changeDetection: ChangeDetectionStrategy.OnPush,
66
+ styles: [".c-checkable{width:50px}.c-filterable{flex:1}::ng-deep sd-modal-body.c-popup-filter .mat-form-field-wrapper{padding-bottom:0}"]
67
+ },] }
68
+ ];
69
+ SdPopupFilter.ctorParameters = () => [
70
+ { type: ChangeDetectorRef }
71
+ ];
72
+ SdPopupFilter.propDecorators = {
73
+ modal: [{ type: ViewChild, args: [SdModal,] }],
74
+ filterRegister: [{ type: Input }],
75
+ externalFilters: [{ type: Input }],
76
+ columns: [{ type: Input }],
77
+ filterDefs: [{ type: Input }]
78
+ };
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wdXAtZmlsdGVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTVfb25lbW91bnQvRG9jdW1lbnRzL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvdGFibGUvIiwic291cmNlcyI6WyJzcmMvbGliL2NvbXBvbmVudHMvcG9wdXAtZmlsdGVyL3BvcHVwLWZpbHRlci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsdUJBQXVCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEcsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBWWpELE1BQU0sT0FBTyxhQUFhO0lBZ0J4QixZQUFvQixLQUF3QjtRQUF4QixVQUFLLEdBQUwsS0FBSyxDQUFtQjtRQWQ1QyxrQ0FBOEM7UUFJckMsb0JBQWUsR0FBNEIsRUFBRSxDQUFDO1FBQ3ZELG1CQUFjLEdBQXdCLEVBQUUsQ0FBQztRQUN6QyxtQkFBYyxHQUE0QixFQUFFLENBQUM7UUFDcEMsWUFBTyxHQUFvQixFQUFFLENBQUM7UUFDdkMsaUJBQVksR0FBd0IsRUFBRSxDQUFDO1FBQ3ZDLGlCQUFZLEdBQTRCLEVBQUUsQ0FBQztRQUVsQyxlQUFVLEdBQW1DLEVBQUUsQ0FBQztRQUN6RCxjQUFTLEdBQXdCLEVBQUUsQ0FBQztRQUNwQyxvQkFBZSxHQUE0QixFQUFFLENBQUM7UUFPOUMsU0FBSSxHQUFHLEdBQUcsRUFBRTtZQUNWLE1BQU0sYUFBYSxHQUFHLDhDQUFxQixhQUFhLENBQUMsR0FBRyxFQUFFLENBQUM7WUFDL0QsSUFBSSxDQUFDLFlBQVksR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUM7WUFDM0UsSUFBSSxDQUFDLGNBQWMsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLGNBQWMsQ0FBQyxDQUFDLENBQUM7WUFDL0UsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsYUFBYSxDQUFDLGVBQWUsQ0FBQyxDQUFDLENBQUM7WUFDakYsTUFBTSxXQUFXLEdBQUcsOENBQXFCLEtBQUssQ0FBQyxHQUFHLEVBQUUsQ0FBQztZQUNyRCxJQUFJLENBQUMsWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsWUFBWSxDQUFDLENBQUMsQ0FBQztZQUN6RSxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsY0FBYyxDQUFDLENBQUMsQ0FBQztZQUM3RSxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUMsQ0FBQztZQUNuRSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksRUFBRSxDQUFDO1lBQ2xCLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7UUFDNUIsQ0FBQyxDQUFDO1FBRUYsVUFBSyxHQUFHLEdBQUcsRUFBRTtZQUNYLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLEtBQUssQ0FBQyxZQUFZLEVBQUUsQ0FBQztRQUM1QixDQUFDLENBQUM7UUFFRixZQUFPLEdBQUcsR0FBRyxFQUFFO1lBQ2IsOENBQXFCLGFBQWEsQ0FBQyxHQUFHLENBQUM7Z0JBQ3JDLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtnQkFDL0IsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjO2dCQUNuQyxlQUFlLEVBQUUsSUFBSSxDQUFDLGVBQWU7YUFDdEMsQ0FBQyxDQUFDO1lBQ0gsOENBQXFCLEtBQUssQ0FBQyxHQUFHLENBQUM7Z0JBQzdCLFlBQVksRUFBRSxJQUFJLENBQUMsWUFBWTtnQkFDL0IsY0FBYyxFQUFFLElBQUksQ0FBQyxjQUFjO2dCQUNuQyxTQUFTLEVBQUUsSUFBSSxDQUFDLFNBQVM7YUFDMUIsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsS0FBSyxDQUFDLFlBQVksRUFBRSxDQUFDO1FBQzVCLENBQUMsQ0FBQztJQXJDNkMsQ0FBQztJQWJoRCxJQUFhLGNBQWMsQ0FBQyxLQUFtQztRQUM3RCx1QkFBQSxJQUFJLG1CQUFtQixLQUFLLEVBQUM7SUFDL0IsQ0FBQztJQWFELGVBQWUsS0FBSSxDQUFDO0lBRXBCLFdBQVcsS0FBSSxDQUFDO0lBbUNoQixPQUFPO1FBQ0wsOENBQXFCLEtBQUssQ0FBQyxNQUFNLEVBQUUsQ0FBQztRQUNwQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ25CLElBQUksQ0FBQyxLQUFLLENBQUMsWUFBWSxFQUFFLENBQUM7SUFDNUIsQ0FBQzs7OztZQWpFRixTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLGlCQUFpQjtnQkFDM0IsdWxRQUE0QztnQkFFNUMsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O2FBQ2hEOzs7WUFaOEQsaUJBQWlCOzs7b0JBYzdFLFNBQVMsU0FBQyxPQUFPOzZCQUVqQixLQUFLOzhCQUdMLEtBQUs7c0JBR0wsS0FBSzt5QkFJTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBWaWV3Q2hpbGQsIElucHV0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ2hhbmdlRGV0ZWN0b3JSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgU2RNb2RhbCB9IGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvbW9kYWwnO1xyXG5pbXBvcnQgeyBTZFRhYmxlQ29sdW1uIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RhYmxlLWNvbHVtbi5tb2RlbCc7XHJcbmltcG9ydCB7IFNkVGFibGVFeHRlcm5hbEZpbHRlciwgU2RHcmlkTWF0ZXJpYWxGaWx0ZXJSZWdpc3RlciB9IGZyb20gJy4uLy4uL3NlcnZpY2VzL3RhYmxlLWZpbHRlci90YWJsZS1maWx0ZXIubW9kZWwnO1xyXG5pbXBvcnQgeyBTZE1hdGVyaWFsRmlsdGVyRGVmRGlyZWN0aXZlIH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9zZC1tYXRlcmlhbC1maWx0ZXItZGVmLmRpcmVjdGl2ZSc7XHJcbmltcG9ydCB7IFN1YnNjcmlwdGlvbiB9IGZyb20gJ3J4anMnO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgc2VsZWN0b3I6ICdzZC1wb3B1cC1maWx0ZXInLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wb3B1cC1maWx0ZXIuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3BvcHVwLWZpbHRlci5jb21wb25lbnQuc2NzcyddLFxyXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2RQb3B1cEZpbHRlciB7XHJcbiAgQFZpZXdDaGlsZChTZE1vZGFsKSBtb2RhbDogU2RNb2RhbDtcclxuICAjZmlsdGVyUmVnaXN0ZXI6IFNkR3JpZE1hdGVyaWFsRmlsdGVyUmVnaXN0ZXI7XHJcbiAgQElucHV0KCkgc2V0IGZpbHRlclJlZ2lzdGVyKHZhbHVlOiBTZEdyaWRNYXRlcmlhbEZpbHRlclJlZ2lzdGVyKSB7XHJcbiAgICB0aGlzLiNmaWx0ZXJSZWdpc3RlciA9IHZhbHVlO1xyXG4gIH1cclxuICBASW5wdXQoKSBleHRlcm5hbEZpbHRlcnM6IFNkVGFibGVFeHRlcm5hbEZpbHRlcltdID0gW107XHJcbiAgZXh0ZXJuYWxGaWx0ZXI6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fTtcclxuICBpbmxpbmVFeHRlcm5hbDogUmVjb3JkPHN0cmluZywgYm9vbGVhbj4gPSB7fTtcclxuICBASW5wdXQoKSBjb2x1bW5zOiBTZFRhYmxlQ29sdW1uW10gPSBbXTtcclxuICBjb2x1bW5GaWx0ZXI6IFJlY29yZDxzdHJpbmcsIGFueT4gPSB7fTtcclxuICBpbmxpbmVDb2x1bW46IFJlY29yZDxzdHJpbmcsIGJvb2xlYW4+ID0ge307XHJcblxyXG4gIEBJbnB1dCgpIGZpbHRlckRlZnM6IFNkTWF0ZXJpYWxGaWx0ZXJEZWZEaXJlY3RpdmVbXSA9IFtdO1xyXG4gIGZpbHRlckRlZjogUmVjb3JkPHN0cmluZywgYW55PiA9IHt9O1xyXG4gIGlubGluZUZpbHRlckRlZjogUmVjb3JkPHN0cmluZywgYm9vbGVhbj4gPSB7fTtcclxuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGNkUmVmOiBDaGFuZ2VEZXRlY3RvclJlZikge31cclxuXHJcbiAgbmdBZnRlclZpZXdJbml0KCkge31cclxuXHJcbiAgbmdPbkRlc3Ryb3koKSB7fVxyXG5cclxuICBvcGVuID0gKCkgPT4ge1xyXG4gICAgY29uc3QgY29uZmlndXJhdGlvbiA9IHRoaXMuI2ZpbHRlclJlZ2lzdGVyLmNvbmZpZ3VyYXRpb24uZ2V0KCk7XHJcbiAgICB0aGlzLmlubGluZUNvbHVtbiA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoY29uZmlndXJhdGlvbi5pbmxpbmVDb2x1bW4pKTtcclxuICAgIHRoaXMuaW5saW5lRXh0ZXJuYWwgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGNvbmZpZ3VyYXRpb24uaW5saW5lRXh0ZXJuYWwpKTtcclxuICAgIHRoaXMuaW5saW5lRmlsdGVyRGVmID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShjb25maWd1cmF0aW9uLmlubGluZUZpbHRlckRlZikpO1xyXG4gICAgY29uc3QgZmlsdGVyVmFsdWUgPSB0aGlzLiNmaWx0ZXJSZWdpc3Rlci52YWx1ZS5nZXQoKTtcclxuICAgIHRoaXMuY29sdW1uRmlsdGVyID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShmaWx0ZXJWYWx1ZS5jb2x1bW5GaWx0ZXIpKTtcclxuICAgIHRoaXMuZXh0ZXJuYWxGaWx0ZXIgPSBKU09OLnBhcnNlKEpTT04uc3RyaW5naWZ5KGZpbHRlclZhbHVlLmV4dGVybmFsRmlsdGVyKSk7XHJcbiAgICB0aGlzLmZpbHRlckRlZiA9IEpTT04ucGFyc2UoSlNPTi5zdHJpbmdpZnkoZmlsdGVyVmFsdWUuZmlsdGVyRGVmKSk7XHJcbiAgICB0aGlzLm1vZGFsLm9wZW4oKTtcclxuICAgIHRoaXMuY2RSZWYubWFya0ZvckNoZWNrKCk7XHJcbiAgfTtcclxuXHJcbiAgY2xvc2UgPSAoKSA9PiB7XHJcbiAgICB0aGlzLm1vZGFsLmNsb3NlKCk7XHJcbiAgICB0aGlzLmNkUmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gIH07XHJcblxyXG4gIG9uQXBwbHkgPSAoKSA9PiB7XHJcbiAgICB0aGlzLiNmaWx0ZXJSZWdpc3Rlci5jb25maWd1cmF0aW9uLnNldCh7XHJcbiAgICAgIGlubGluZUNvbHVtbjogdGhpcy5pbmxpbmVDb2x1bW4sXHJcbiAgICAgIGlubGluZUV4dGVybmFsOiB0aGlzLmlubGluZUV4dGVybmFsLFxyXG4gICAgICBpbmxpbmVGaWx0ZXJEZWY6IHRoaXMuaW5saW5lRmlsdGVyRGVmLFxyXG4gICAgfSk7XHJcbiAgICB0aGlzLiNmaWx0ZXJSZWdpc3Rlci52YWx1ZS5zZXQoe1xyXG4gICAgICBjb2x1bW5GaWx0ZXI6IHRoaXMuY29sdW1uRmlsdGVyLFxyXG4gICAgICBleHRlcm5hbEZpbHRlcjogdGhpcy5leHRlcm5hbEZpbHRlcixcclxuICAgICAgZmlsdGVyRGVmOiB0aGlzLmZpbHRlckRlZixcclxuICAgIH0pO1xyXG4gICAgdGhpcy5tb2RhbC5jbG9zZSgpO1xyXG4gICAgdGhpcy5jZFJlZi5tYXJrRm9yQ2hlY2soKTtcclxuICB9O1xyXG5cclxuICBvbkNsZWFyKCkge1xyXG4gICAgdGhpcy4jZmlsdGVyUmVnaXN0ZXIudmFsdWUucmVtb3ZlKCk7XHJcbiAgICB0aGlzLm1vZGFsLmNsb3NlKCk7XHJcbiAgICB0aGlzLmNkUmVmLm1hcmtGb3JDaGVjaygpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,96 @@
1
+ var _cache;
2
+ import { __awaiter, __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
+ import { Component, ViewChild, EventEmitter, ChangeDetectorRef, Input, HostListener } from '@angular/core';
4
+ import { SdNotifyService } from '@sd-angular/core/notify';
5
+ import { SdTranslateService } from '@sd-angular/core/translate';
6
+ import { SdTableConfigurationService } from '../../services/table-configuration.service';
7
+ import * as uuid from 'uuid';
8
+ // import { SdGridMaterialColumn } from '@sd-angular/core/grid-material';
9
+ import { moveItemInArray } from '@angular/cdk/drag-drop';
10
+ export class SdPopupGridConfiguration {
11
+ constructor(ref, notifyService, translateService, gridConfigurationService) {
12
+ this.ref = ref;
13
+ this.notifyService = notifyService;
14
+ this.translateService = translateService;
15
+ this.gridConfigurationService = gridConfigurationService;
16
+ this.changes = new EventEmitter();
17
+ _cache.set(this, void 0);
18
+ this.isCreatingColumn = false;
19
+ this.selected = {};
20
+ this.disabledDrag = true;
21
+ this.open = () => __awaiter(this, void 0, void 0, function* () {
22
+ __classPrivateFieldSet(this, _cache, this.gridConfigurationService.init(this.key, this.gridOption));
23
+ this.configuration = yield __classPrivateFieldGet(this, _cache).get();
24
+ this.modal.open();
25
+ });
26
+ this.onSave = () => {
27
+ __classPrivateFieldGet(this, _cache).set(this.configuration);
28
+ this.modal.close();
29
+ this.ref.detectChanges();
30
+ };
31
+ this.onReset = () => __awaiter(this, void 0, void 0, function* () {
32
+ const { translate } = this.translateService;
33
+ this.notifyService.confirm(translate('Reset grid configuration to default')).then(() => {
34
+ __classPrivateFieldGet(this, _cache).remove();
35
+ this.modal.close();
36
+ this.ref.detectChanges();
37
+ });
38
+ });
39
+ this.createColumn = () => __awaiter(this, void 0, void 0, function* () {
40
+ this.selected = {};
41
+ this.isCreatingColumn = true;
42
+ });
43
+ this.confirm = () => __awaiter(this, void 0, void 0, function* () {
44
+ const generatedColumn = {
45
+ origin: {
46
+ field: uuid.v4(),
47
+ title: 'Generated',
48
+ width: '300px',
49
+ },
50
+ fixed: false,
51
+ invisible: false,
52
+ title: 'Generated',
53
+ width: '300px',
54
+ };
55
+ this.configuration.columns.push(generatedColumn);
56
+ this.configuration = __classPrivateFieldGet(this, _cache).set(this.configuration);
57
+ this.isCreatingColumn = false;
58
+ });
59
+ }
60
+ ngOnInit() { }
61
+ mouseUp(event) {
62
+ this.disabledDrag = true;
63
+ }
64
+ dropTable(event) {
65
+ moveItemInArray(this.configuration.columns, event.previousIndex, event.currentIndex);
66
+ this.table.renderRows();
67
+ }
68
+ handleMouseDown() {
69
+ this.disabledDrag = false;
70
+ }
71
+ handleMouseUp() {
72
+ this.disabledDrag = true;
73
+ }
74
+ }
75
+ _cache = new WeakMap();
76
+ SdPopupGridConfiguration.decorators = [
77
+ { type: Component, args: [{
78
+ selector: 'sd-popup-grid-configuration',
79
+ template: "<sd-modal width=\"sm\" [title]=\"'Configuration' | sdTranslate\" #modal>\r\n <sd-modal-body *ngIf=\"configuration\">\r\n <div *ngIf=\"!isCreatingColumn\" class=\"c-container\">\r\n <div class=\"c-table\" style=\"max-height:70vh\">\r\n <table #table mat-table [dataSource]=\"configuration.columns\"\r\n cdkDropList\r\n [cdkDropListData]=\"configuration.columns\"\r\n (cdkDropListDropped)=\"dropTable($event)\">\r\n >\r\n <ng-container matColumnDef=\"stt\">\r\n <th mat-header-cell class=\"c-th text-center px-5\" *matHeaderCellDef style=\"width:50px\">#\r\n </th>\r\n <td class=\"text-center px-5\" mat-cell *matCellDef=\"let item; let idx = index\">\r\n <div class=\"c-handle\" (mousedown) = \"handleMouseDown()\" (mouseup)=\"handleMouseUp()\">\r\n <svg width=\"24px\" fill=\"currentColor\" viewBox=\"0 0 24 24\">\r\n <path d=\"M10 9h4V6h3l-5-5-5 5h3v3zm-1 1H6V7l-5 5 5 5v-3h3v-4zm14 2l-5-5v3h-3v4h3v3l5-5zm-9 3h-4v3H7l5 5 5-5h-3v-3z\"></path>\r\n <path d=\"M0 0h24v24H0z\" fill=\"none\"></path>\r\n </svg>\r\n </div>\r\n\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"title\">\r\n <th mat-header-cell class=\"c-th px-5\" *matHeaderCellDef>{{'Title' | sdTranslate}}\r\n </th>\r\n <td class=\"px-5\" mat-cell *matCellDef=\"let item;\">\r\n <sd-input [placeholder]=\"item?.origin?.title\" [(model)]=\"item.title\" disableErrorMessage></sd-input>\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"width\">\r\n <th mat-header-cell class=\"c-th px-5\" *matHeaderCellDef style=\"width:80px\">{{'Width' | sdTranslate}}\r\n </th>\r\n <td class=\"px-5\" mat-cell *matCellDef=\"let item;\">\r\n <!-- <span>{{item.width}}</span>\r\n <mat-slider\r\n step=\"1\"\r\n min=\"0\"\r\n [max]=\"+item?.origin?.width*3\"\r\n [(ngModel)]=\"+item.width\"\r\n aria-label=\"units\">\r\n </mat-slider> -->\r\n <sd-input [placeholder]=\"item?.origin?.width\" [(model)]=\"item.width\" disableErrorMessage></sd-input>\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"invisible\">\r\n <th mat-header-cell class=\"c-th text-center px-5\" *matHeaderCellDef style=\"width:80px\">{{'Hidden' |\r\n sdTranslate}}\r\n </th>\r\n <td class=\"text-center px-5\" mat-cell *matCellDef=\"let item;\">\r\n <mat-slide-toggle [(ngModel)]=\"item.invisible\" color=\"primary\">\r\n </mat-slide-toggle>\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"fixed\">\r\n <th mat-header-cell class=\"c-th text-center px-5\" *matHeaderCellDef style=\"width:80px\">{{'Freeze' |\r\n sdTranslate}}\r\n </th>\r\n <td class=\"text-center px-5\" mat-cell *matCellDef=\"let item;\">\r\n <mat-slide-toggle [(ngModel)]=\"item.fixed\" color=\"primary\"></mat-slide-toggle>\r\n </td>\r\n </ng-container>\r\n <tr mat-header-row *matHeaderRowDef=\"['stt', 'title', 'width', 'invisible', 'fixed']; sticky: true\"></tr>\r\n <tr mat-row *matRowDef=\"let row; columns: ['stt', 'title', 'width', 'invisible', 'fixed'];\" cdkDrag [cdkDragData]=\"row\" cdkDragLockAxis=\"y\" [cdkDragDisabled] = \"disabledDrag\"></tr>\r\n </table>\r\n </div>\r\n </div>\r\n <div *ngIf=\"isCreatingColumn\">\r\n <div class=\"c-table\" style=\"max-height:50vh\">\r\n <table mat-table [dataSource]=\"configuration.columns\">\r\n <ng-container matColumnDef=\"stt\">\r\n <th mat-header-cell class=\"c-th text-center px-5\" *matHeaderCellDef style=\"width:50px\">#\r\n </th>\r\n <td class=\"text-center px-5\" mat-cell *matCellDef=\"let item; let idx = index\">\r\n <sd-checkbox *ngIf=\"isCreatingColumn\" [(model)]=\"selected[item.origin?.field]\"></sd-checkbox>\r\n </td>\r\n </ng-container>\r\n <ng-container matColumnDef=\"title\">\r\n <th mat-header-cell class=\"c-th px-5\" *matHeaderCellDef>{{'Title' | sdTranslate}}\r\n </th>\r\n <td class=\"px-5\" mat-cell *matCellDef=\"let item;\">\r\n <span *ngIf=\"isCreatingColumn\">{{item.title || item?.origin?.title}}</span>\r\n </td>\r\n </ng-container>\r\n <tr mat-header-row *matHeaderRowDef=\"['stt', 'title']; sticky: true\"></tr>\r\n <tr mat-row *matRowDef=\"let row; columns: ['stt', 'title'];\"></tr>\r\n </table>\r\n </div>\r\n </div>\r\n </sd-modal-body>\r\n <sd-modal-footer>\r\n <ng-container *ngIf=\"!isCreatingColumn\">\r\n <!-- <sd-button class=\"mr-auto\" (action)=\"createColumn()\" [title]=\"'Create column' | sdTranslate\" color=\"info\"\r\n size=\"sm\">\r\n </sd-button> -->\r\n <sd-button class=\"mr-5\" (action)=\"onReset()\" [title]=\"'Default' | sdTranslate\" color=\"info\" size=\"sm\">\r\n </sd-button>\r\n <sd-button (action)=\"onSave()\" [title]=\"'Save' | sdTranslate\" type=\"fill\" color=\"info\" size=\"sm\">\r\n </sd-button>\r\n </ng-container>\r\n <ng-container *ngIf=\"isCreatingColumn\">\r\n <sd-button class=\"mr-auto\" (action)=\"isCreatingColumn = false\" [title]=\"'Cancel' | sdTranslate\" color=\"info\"\r\n size=\"sm\">\r\n </sd-button>\r\n <sd-button (action)=\"confirm()\" [title]=\"'Confirm' | sdTranslate\" type=\"fill\" color=\"info\" size=\"sm\">\r\n </sd-button>\r\n </ng-container>\r\n </sd-modal-footer>\r\n</sd-modal>",
80
+ styles: [".c-table{overflow:auto;position:relative}.c-table table{width:100%}.c-table .c-th{color:#000;font-size:14px;font-weight:500;line-height:20px}.c-container{min-height:200px;position:relative}.c-handle{color:#ccc;cursor:move}"]
81
+ },] }
82
+ ];
83
+ SdPopupGridConfiguration.ctorParameters = () => [
84
+ { type: ChangeDetectorRef },
85
+ { type: SdNotifyService },
86
+ { type: SdTranslateService },
87
+ { type: SdTableConfigurationService }
88
+ ];
89
+ SdPopupGridConfiguration.propDecorators = {
90
+ gridOption: [{ type: Input }],
91
+ key: [{ type: Input }],
92
+ modal: [{ type: ViewChild, args: ['modal',] }],
93
+ table: [{ type: ViewChild, args: ['table',] }],
94
+ mouseUp: [{ type: HostListener, args: ['window:mouseup', ['$event'],] }]
95
+ };
96
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicG9wdXAtZ3JpZC1jb25maWd1cmF0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTVfb25lbW91bnQvRG9jdW1lbnRzL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvdGFibGUvIiwic291cmNlcyI6WyJzcmMvbGliL2NvbXBvbmVudHMvcG9wdXAtZ3JpZC1jb25maWd1cmF0aW9uL3BvcHVwLWdyaWQtY29uZmlndXJhdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLFNBQVMsRUFBRSxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuSCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFRaEUsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDekYsT0FBTyxLQUFLLElBQUksTUFBTSxNQUFNLENBQUM7QUFFN0IseUVBQXlFO0FBQ3pFLE9BQU8sRUFBZSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQVF0RSxNQUFNLE9BQU8sd0JBQXdCO0lBYW5DLFlBQ1UsR0FBc0IsRUFDdEIsYUFBOEIsRUFDOUIsZ0JBQW9DLEVBQ3BDLHdCQUFxRDtRQUhyRCxRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUN0QixrQkFBYSxHQUFiLGFBQWEsQ0FBaUI7UUFDOUIscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFvQjtRQUNwQyw2QkFBd0IsR0FBeEIsd0JBQXdCLENBQTZCO1FBWnRELFlBQU8sR0FBRyxJQUFJLFlBQVksRUFBNkIsQ0FBQztRQUNqRSx5QkFBaUM7UUFFakMscUJBQWdCLEdBQUcsS0FBSyxDQUFDO1FBQ3pCLGFBQVEsR0FFSixFQUFFLENBQUM7UUFDUCxpQkFBWSxH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QUNMLEtBQUs7b0JBQ0wsU0FBUyxTQUFDLE9BQU87b0JBQ2pCLFNBQVMsU0FBQyxPQUFPO3NCQWlCakIsWUFBWSxTQUFDLGdCQUFnQixFQUFFLENBQUMsUUFBUSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIFZpZXdDaGlsZCwgRXZlbnRFbWl0dGVyLCBDaGFuZ2VEZXRlY3RvclJlZiwgSW5wdXQsIEhvc3RMaXN0ZW5lciB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTZE1vZGFsIH0gZnJvbSAnQHNkLWFuZ3VsYXIvY29yZS9tb2RhbCc7XHJcbmltcG9ydCB7IFNkTm90aWZ5U2VydmljZSB9IGZyb20gJ0BzZC1hbmd1bGFyL2NvcmUvbm90aWZ5JztcclxuaW1wb3J0IHsgU2RUcmFuc2xhdGVTZXJ2aWNlIH0gZnJvbSAnQHNkLWFuZ3VsYXIvY29yZS90cmFuc2xhdGUnO1xyXG5pbXBvcnQgeyBTZFRhYmxlT3B0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RhYmxlLW9wdGlvbi5tb2RlbCc7XHJcbmltcG9ydCB7XHJcbiAgU2RHcmlkQ29uZmlndXJhdGlvblJlc3VsdCxcclxuICBTZEdyaWRDb25maWd1cmF0aW9uLFxyXG4gIFNkR3JpZENvbmZpZ3VyYXRpb25DYWNoZSxcclxuICBTZENvbHVtbkNvbmZpZ3VyYXRpb24sXHJcbn0gZnJvbSAnLi4vLi4vbW9kZWxzL3RhYmxlLW9wdGlvbi1jb25maWcubW9kZWwnO1xyXG5pbXBvcnQgeyBTZFRhYmxlQ29uZmlndXJhdGlvblNlcnZpY2UgfSBmcm9tICcuLi8uLi9zZXJ2aWNlcy90YWJsZS1jb25maWd1cmF0aW9uLnNlcnZpY2UnO1xyXG5pbXBvcnQgKiBhcyB1dWlkIGZyb20gJ3V1aWQnO1xyXG5pbXBvcnQgeyBNYXRUYWJsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL3RhYmxlJztcclxuLy8gaW1wb3J0IHsgU2RHcmlkTWF0ZXJpYWxDb2x1bW4gfSBmcm9tICdAc2QtYW5ndWxhci9jb3JlL2dyaWQtbWF0ZXJpYWwnO1xyXG5pbXBvcnQgeyBDZGtEcmFnRHJvcCwgbW92ZUl0ZW1JbkFycmF5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XHJcbmltcG9ydCB7IFNkVGFibGVDb2x1bW4gfSBmcm9tICcuLi8uLi9tb2RlbHMvdGFibGUtY29sdW1uLm1vZGVsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2QtcG9wdXAtZ3JpZC1jb25maWd1cmF0aW9uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcG9wdXAtZ3JpZC1jb25maWd1cmF0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9wb3B1cC1ncmlkLWNvbmZpZ3VyYXRpb24uY29tcG9uZW50LnNjc3MnXSxcclxufSlcclxuZXhwb3J0IGNsYXNzIFNkUG9wdXBHcmlkQ29uZmlndXJhdGlvbiBpbXBsZW1lbnRzIE9uSW5pdCB7XHJcbiAgQElucHV0KCkgZ3JpZE9wdGlvbjogU2RUYWJsZU9wdGlvbjtcclxuICBASW5wdXQoKSBrZXk6IHN0cmluZztcclxuICBAVmlld0NoaWxkKCdtb2RhbCcpIG1vZGFsOiBTZE1vZGFsO1xyXG4gIEBWaWV3Q2hpbGQoJ3RhYmxlJykgdGFibGU6IE1hdFRhYmxlPFNkVGFibGVDb2x1bW4+O1xyXG4gIHJlYWRvbmx5IGNoYW5nZXMgPSBuZXcgRXZlbnRFbWl0dGVyPFNkR3JpZENvbmZpZ3VyYXRpb25SZXN1bHQ+KCk7XHJcbiAgI2NhY2hlOiBTZEdyaWRDb25maWd1cmF0aW9uQ2FjaGU7XHJcbiAgY29uZmlndXJhdGlvbjogU2RHcmlkQ29uZmlndXJhdGlvbjtcclxuICBpc0NyZWF0aW5nQ29sdW1uID0gZmFsc2U7XHJcbiAgc2VsZWN0ZWQ6IHtcclxuICAgIFtrZXk6IHN0cmluZ106IGJvb2xlYW47XHJcbiAgfSA9IHt9O1xyXG4gIGRpc2FibGVkRHJhZyA9IHRydWU7XHJcbiAgY29uc3RydWN0b3IoXHJcbiAgICBwcml2YXRlIHJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXHJcbiAgICBwcml2YXRlIG5vdGlmeVNlcnZpY2U6IFNkTm90aWZ5U2VydmljZSxcclxuICAgIHByaXZhdGUgdHJhbnNsYXRlU2VydmljZTogU2RUcmFuc2xhdGVTZXJ2aWNlLFxyXG4gICAgcHJpdmF0ZSBncmlkQ29uZmlndXJhdGlvblNlcnZpY2U6IFNkVGFibGVDb25maWd1cmF0aW9uU2VydmljZVxyXG4gICkge31cclxuXHJcbiAgbmdPbkluaXQoKSB7fVxyXG4gIEBIb3N0TGlzdGVuZXIoJ3dpbmRvdzptb3VzZXVwJywgWyckZXZlbnQnXSlcclxuICBtb3VzZVVwKGV2ZW50KSB7XHJcbiAgICB0aGlzLmRpc2FibGVkRHJhZyA9IHRydWU7XHJcbiAgfVxyXG4gIG9wZW4gPSBhc3luYyAoKSA9PiB7XHJcbiAgICB0aGlzLiNjYWNoZSA9IHRoaXMuZ3JpZENvbmZpZ3VyYXRpb25TZXJ2aWNlLmluaXQodGhpcy5rZXksIHRoaXMuZ3JpZE9wdGlvbik7XHJcbiAgICB0aGlzLmNvbmZpZ3VyYXRpb24gPSBhd2FpdCB0aGlzLiNjYWNoZS5nZXQoKTtcclxuICAgIHRoaXMubW9kYWwub3BlbigpO1xyXG4gIH07XHJcblxyXG4gIG9uU2F2ZSA9ICgpID0+IHtcclxuICAgIHRoaXMuI2NhY2hlLnNldCh0aGlzLmNvbmZpZ3VyYXRpb24pO1xyXG4gICAgdGhpcy5tb2RhbC5jbG9zZSgpO1xyXG4gICAgdGhpcy5yZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gIH07XHJcblxyXG4gIG9uUmVzZXQgPSBhc3luYyAoKSA9PiB7XHJcbiAgICBjb25zdCB7IHRyYW5zbGF0ZSB9ID0gdGhpcy50cmFuc2xhdGVTZXJ2aWNlO1xyXG4gICAgdGhpcy5ub3RpZnlTZXJ2aWNlLmNvbmZpcm0odHJhbnNsYXRlKCdSZXNldCBncmlkIGNvbmZpZ3VyYXRpb24gdG8gZGVmYXVsdCcpKS50aGVuKCgpID0+IHtcclxuICAgICAgdGhpcy4jY2FjaGUucmVtb3ZlKCk7XHJcbiAgICAgIHRoaXMubW9kYWwuY2xvc2UoKTtcclxuICAgICAgdGhpcy5yZWYuZGV0ZWN0Q2hhbmdlcygpO1xyXG4gICAgfSk7XHJcbiAgfTtcclxuXHJcbiAgY3JlYXRlQ29sdW1uID0gYXN5bmMgKCkgPT4ge1xyXG4gICAgdGhpcy5zZWxlY3RlZCA9IHt9O1xyXG4gICAgdGhpcy5pc0NyZWF0aW5nQ29sdW1uID0gdHJ1ZTtcclxuICB9O1xyXG5cclxuICBjb25maXJtID0gYXN5bmMgKCkgPT4ge1xyXG4gICAgY29uc3QgZ2VuZXJhdGVkQ29sdW1uOiBTZENvbHVtbkNvbmZpZ3VyYXRpb24gPSB7XHJcbiAgICAgIG9yaWdpbjoge1xyXG4gICAgICAgIGZpZWxkOiB1dWlkLnY0KCksXHJcbiAgICAgICAgdGl0bGU6ICdHZW5lcmF0ZWQnLFxyXG4gICAgICAgIHdpZHRoOiAnMzAwcHgnLFxyXG4gICAgICB9LFxyXG4gICAgICBmaXhlZDogZmFsc2UsXHJcbiAgICAgIGludmlzaWJsZTogZmFsc2UsXHJcbiAgICAgIHRpdGxlOiAnR2VuZXJhdGVkJyxcclxuICAgICAgd2lkdGg6ICczMDBweCcsXHJcbiAgICB9O1xyXG4gICAgdGhpcy5jb25maWd1cmF0aW9uLmNvbHVtbnMucHVzaChnZW5lcmF0ZWRDb2x1bW4pO1xyXG4gICAgdGhpcy5jb25maWd1cmF0aW9uID0gdGhpcy4jY2FjaGUuc2V0KHRoaXMuY29uZmlndXJhdGlvbik7XHJcbiAgICB0aGlzLmlzQ3JlYXRpbmdDb2x1bW4gPSBmYWxzZTtcclxuICB9O1xyXG5cclxuICBkcm9wVGFibGUoZXZlbnQ6IENka0RyYWdEcm9wPFNkVGFibGVDb2x1bW5bXT4pIHtcclxuICAgIG1vdmVJdGVtSW5BcnJheSh0aGlzLmNvbmZpZ3VyYXRpb24uY29sdW1ucywgZXZlbnQucHJldmlvdXNJbmRleCwgZXZlbnQuY3VycmVudEluZGV4KTtcclxuICAgIHRoaXMudGFibGUucmVuZGVyUm93cygpO1xyXG4gIH1cclxuXHJcbiAgaGFuZGxlTW91c2VEb3duKCkge1xyXG4gICAgdGhpcy5kaXNhYmxlZERyYWcgPSBmYWxzZTtcclxuICB9XHJcblxyXG4gIGhhbmRsZU1vdXNlVXAoKSB7XHJcbiAgICB0aGlzLmRpc2FibGVkRHJhZyA9IHRydWU7XHJcbiAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,24 @@
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
2
+ export class SdGridQuickAction {
3
+ constructor() {
4
+ this.clear = new EventEmitter();
5
+ this.onClear = () => {
6
+ this.clear.emit();
7
+ };
8
+ }
9
+ }
10
+ SdGridQuickAction.decorators = [
11
+ { type: Component, args: [{
12
+ selector: 'sd-grid-quick-action',
13
+ template: "<sd-quick-action *ngIf=\"selectedItems | selectionActionFilter: gridOption?.selector?.actions as actions\"\r\n [isOpened]=\"actions?.length\">\r\n <div class=\"d-flex align-items-center\" sdMessage>\r\n <div class=\"c-bg-length\">\r\n <span class=\"c-length\">{{ selectedItems.length }}</span>\r\n </div>\r\n <div class=\"c-message\">{{ gridOption?.selector?.message || 'd\u1EEF li\u1EC7u \u0111\u01B0\u1EE3c ch\u1ECDn' }}</div>\r\n </div>\r\n <div class=\"d-flex align-items-center mr-8\" sdAction>\r\n <ng-container *ngFor=\"let action of actions\">\r\n <sd-button *ngIf=\"action.click\" class=\"ml-5\" [tooltip]=\"action.tooltip\" [icon]=\"action.icon\"\r\n [color]=\"action.color || 'secondary'\" [type]=\"action.type || 'light'\" [fontSet]=\"action.fontSet\"\r\n [title]=\"action.title\" size=\"sm\" (action)=\"action.click(selectedItems)\"></sd-button>\r\n <ng-container *ngIf=\"action.children?.length\">\r\n <sd-button class=\"ml-5\" [tooltip]=\"action.tooltip\" [icon]=\"action.icon || 'more_vert'\"\r\n [color]=\"action.color || 'secondary'\" [type]=\"action.type || 'light'\" [fontSet]=\"action.fontSet\"\r\n [title]=\"action.title\" size=\"sm\" [matMenuTriggerFor]=\"menu\">\r\n </sd-button>\r\n <mat-menu #menu=\"matMenu\">\r\n <span>\r\n <button *ngFor=\"let childAction of action.children\" mat-menu-item (click)=\"childAction.click(selectedItems)\"\r\n [disabled]=\"childAction.disabled\">\r\n <mat-icon [fontSet]=\"childAction.fontSet\" class=\"c-icon\">{{ childAction.icon }}\r\n </mat-icon>\r\n <span> {{ childAction.title }}</span>\r\n </button>\r\n </span>\r\n </mat-menu>\r\n </ng-container>\r\n </ng-container>\r\n <sd-button class=\"ml-5\" icon=\"close\" color=\"secondary\" type=\"outline\" size=\"sm\"\r\n (action)=\"onClear()\" width=\"35px\"></sd-button>\r\n </div>\r\n</sd-quick-action>",
14
+ changeDetection: ChangeDetectionStrategy.OnPush,
15
+ styles: [".c-bg-length{align-items:flex-start;background:#2962ff;border-radius:4px 0 0 4px;display:flex;flex-direction:column;height:48px;left:0;min-width:48px;padding:12px 8px;position:static;top:0;width:auto}.c-bg-length .c-length{color:#fff;font-size:16px;font-weight:500;height:24px;left:8px;line-height:24px;min-width:32px;text-align:center;top:12px;width:auto}.c-bg-length .c-length,.c-message{font-family:Roboto;font-style:normal;position:static}.c-message{color:#000;font-size:14px;font-weight:400;height:20px;left:0;line-height:20px;margin:0 0 0 16px;min-width:200px;top:6px}"]
16
+ },] }
17
+ ];
18
+ SdGridQuickAction.ctorParameters = () => [];
19
+ SdGridQuickAction.propDecorators = {
20
+ gridOption: [{ type: Input }],
21
+ selectedItems: [{ type: Input }],
22
+ clear: [{ type: Output }]
23
+ };
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicXVpY2stYWN0aW9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJDOi9Vc2Vycy9uZ2hpYXR0MTVfb25lbW91bnQvRG9jdW1lbnRzL2xpYi1jb3JlLXVpL3Byb2plY3RzL3NkLWNvcmUvdGFibGUvIiwic291cmNlcyI6WyJzcmMvbGliL2NvbXBvbmVudHMvcXVpY2stYWN0aW9uL3F1aWNrLWFjdGlvbi5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVNoRyxNQUFNLE9BQU8saUJBQWlCO0lBSTVCO1FBRFUsVUFBSyxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7UUFHckMsWUFBTyxHQUFHLEdBQUcsRUFBRTtZQUNiLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDcEIsQ0FBQyxDQUFBO0lBSEcsQ0FBQzs7O1lBWE4sU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxzQkFBc0I7Z0JBQ2hDLDIrREFBNEM7Z0JBRTVDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNOzthQUNoRDs7Ozt5QkFFRSxLQUFLOzRCQUNMLEtBQUs7b0JBQ0wsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE91dHB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBTZFRhYmxlT3B0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWxzL3RhYmxlLW9wdGlvbi5tb2RlbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NkLWdyaWQtcXVpY2stYWN0aW9uJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcXVpY2stYWN0aW9uLmNvbXBvbmVudC5odG1sJyxcclxuICBzdHlsZVVybHM6IFsnLi9xdWljay1hY3Rpb24uY29tcG9uZW50LnNjc3MnXSxcclxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2RHcmlkUXVpY2tBY3Rpb24ge1xyXG4gIEBJbnB1dCgpIGdyaWRPcHRpb246IFNkVGFibGVPcHRpb247XHJcbiAgQElucHV0KCkgc2VsZWN0ZWRJdGVtczogYW55W107XHJcbiAgQE91dHB1dCgpIGNsZWFyID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG4gIGNvbnN0cnVjdG9yKFxyXG4gICkgeyB9XHJcbiAgb25DbGVhciA9ICgpID0+IHtcclxuICAgIHRoaXMuY2xlYXIuZW1pdCgpO1xyXG4gIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,18 @@
1
+ import { Directive, Input, TemplateRef } from '@angular/core';
2
+ export class SdMaterialCellDefDirective {
3
+ constructor(templateRef) {
4
+ this.templateRef = templateRef;
5
+ }
6
+ }
7
+ SdMaterialCellDefDirective.decorators = [
8
+ { type: Directive, args: [{
9
+ selector: '[sdMaterialCellDef]'
10
+ },] }
11
+ ];
12
+ SdMaterialCellDefDirective.ctorParameters = () => [
13
+ { type: TemplateRef }
14
+ ];
15
+ SdMaterialCellDefDirective.propDecorators = {
16
+ sdMaterialCellDef: [{ type: Input }]
17
+ };
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2QtbWF0ZXJpYWwtY2VsbC1kZWYuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL25naGlhdHQxNV9vbmVtb3VudC9Eb2N1bWVudHMvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS90YWJsZS8iLCJzb3VyY2VzIjpbInNyYy9saWIvZGlyZWN0aXZlcy9zZC1tYXRlcmlhbC1jZWxsLWRlZi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBSzlELE1BQU0sT0FBTywwQkFBMEI7SUFFckMsWUFBbUIsV0FBNkI7UUFBN0IsZ0JBQVcsR0FBWCxXQUFXLENBQWtCO0lBQUksQ0FBQzs7O1lBTHRELFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUscUJBQXFCO2FBQ2hDOzs7WUFKMEIsV0FBVzs7O2dDQU1uQyxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBJbnB1dCwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW3NkTWF0ZXJpYWxDZWxsRGVmXSdcclxufSlcclxuZXhwb3J0IGNsYXNzIFNkTWF0ZXJpYWxDZWxsRGVmRGlyZWN0aXZlIHtcclxuICBASW5wdXQoKSBzZE1hdGVyaWFsQ2VsbERlZjogc3RyaW5nO1xyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PikgeyB9XHJcbn1cclxuIl19
@@ -0,0 +1,15 @@
1
+ import { Directive, TemplateRef } from '@angular/core';
2
+ export class SdMaterialEmptyDataDefDirective {
3
+ constructor(templateRef) {
4
+ this.templateRef = templateRef;
5
+ }
6
+ }
7
+ SdMaterialEmptyDataDefDirective.decorators = [
8
+ { type: Directive, args: [{
9
+ selector: '[sdMaterialEmptyDataDef]'
10
+ },] }
11
+ ];
12
+ SdMaterialEmptyDataDefDirective.ctorParameters = () => [
13
+ { type: TemplateRef }
14
+ ];
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2QtbWF0ZXJpYWwtZW1wdHktZGF0YS1kZWYuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL25naGlhdHQxNV9vbmVtb3VudC9Eb2N1bWVudHMvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS90YWJsZS8iLCJzb3VyY2VzIjpbInNyYy9saWIvZGlyZWN0aXZlcy9zZC1tYXRlcmlhbC1lbXB0eS1kYXRhLWRlZi5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFLdkQsTUFBTSxPQUFPLCtCQUErQjtJQUMxQyxZQUFtQixXQUE2QjtRQUE3QixnQkFBVyxHQUFYLFdBQVcsQ0FBa0I7SUFBSSxDQUFDOzs7WUFKdEQsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSwwQkFBMEI7YUFDckM7OztZQUptQixXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRGlyZWN0aXZlLCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbc2RNYXRlcmlhbEVtcHR5RGF0YURlZl0nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZE1hdGVyaWFsRW1wdHlEYXRhRGVmRGlyZWN0aXZlIHtcclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4pIHsgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,22 @@
1
+ import { Directive, Input, TemplateRef } from '@angular/core';
2
+ export class SdMaterialFilterDefDirective {
3
+ constructor(templateRef) {
4
+ this.templateRef = templateRef;
5
+ }
6
+ set showing(val) {
7
+ this.defaultShowing = (val === '') || val;
8
+ }
9
+ }
10
+ SdMaterialFilterDefDirective.decorators = [
11
+ { type: Directive, args: [{
12
+ selector: '[sdMaterialFilterDef]'
13
+ },] }
14
+ ];
15
+ SdMaterialFilterDefDirective.ctorParameters = () => [
16
+ { type: TemplateRef }
17
+ ];
18
+ SdMaterialFilterDefDirective.propDecorators = {
19
+ sdMaterialFilterDef: [{ type: Input }],
20
+ showing: [{ type: Input, args: ['defaultShowing',] }]
21
+ };
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2QtbWF0ZXJpYWwtZmlsdGVyLWRlZi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiQzovVXNlcnMvbmdoaWF0dDE1X29uZW1vdW50L0RvY3VtZW50cy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL3RhYmxlLyIsInNvdXJjZXMiOlsic3JjL2xpYi9kaXJlY3RpdmVzL3NkLW1hdGVyaWFsLWZpbHRlci1kZWYuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUs5RCxNQUFNLE9BQU8sNEJBQTRCO0lBTXZDLFlBQW1CLFdBQTZCO1FBQTdCLGdCQUFXLEdBQVgsV0FBVyxDQUFrQjtJQUFJLENBQUM7SUFKckQsSUFBNkIsT0FBTyxDQUFDLEdBQWlCO1FBQ3BELElBQUksQ0FBQyxjQUFjLEdBQUcsQ0FBQyxHQUFHLEtBQUssRUFBRSxDQUFDLElBQUksR0FBRyxDQUFDO0lBQzVDLENBQUM7OztZQVBGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsdUJBQXVCO2FBQ2xDOzs7WUFKMEIsV0FBVzs7O2tDQU1uQyxLQUFLO3NCQUNMLEtBQUssU0FBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBEaXJlY3RpdmUsIElucHV0LCBUZW1wbGF0ZVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgc2VsZWN0b3I6ICdbc2RNYXRlcmlhbEZpbHRlckRlZl0nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZE1hdGVyaWFsRmlsdGVyRGVmRGlyZWN0aXZlIHtcclxuICBASW5wdXQoKSBzZE1hdGVyaWFsRmlsdGVyRGVmOiBzdHJpbmc7XHJcbiAgQElucHV0KCdkZWZhdWx0U2hvd2luZycpIHNldCBzaG93aW5nKHZhbDogYm9vbGVhbiB8ICcnKSB7XHJcbiAgICB0aGlzLmRlZmF1bHRTaG93aW5nID0gKHZhbCA9PT0gJycpIHx8IHZhbDtcclxuICB9XHJcbiAgZGVmYXVsdFNob3dpbmc6IGJvb2xlYW47XHJcbiAgY29uc3RydWN0b3IocHVibGljIHRlbXBsYXRlUmVmOiBUZW1wbGF0ZVJlZjxhbnk+KSB7IH1cclxufVxyXG4iXX0=
@@ -0,0 +1,18 @@
1
+ import { Directive, Input, TemplateRef } from '@angular/core';
2
+ export class SdMaterialFooterDefDirective {
3
+ constructor(templateRef) {
4
+ this.templateRef = templateRef;
5
+ }
6
+ }
7
+ SdMaterialFooterDefDirective.decorators = [
8
+ { type: Directive, args: [{
9
+ selector: '[sdMaterialFooterDef]'
10
+ },] }
11
+ ];
12
+ SdMaterialFooterDefDirective.ctorParameters = () => [
13
+ { type: TemplateRef }
14
+ ];
15
+ SdMaterialFooterDefDirective.propDecorators = {
16
+ sdMaterialFooterDef: [{ type: Input }]
17
+ };
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2QtbWF0ZXJpYWwtZm9vdGVyLWRlZi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiQzovVXNlcnMvbmdoaWF0dDE1X29uZW1vdW50L0RvY3VtZW50cy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL3RhYmxlLyIsInNvdXJjZXMiOlsic3JjL2xpYi9kaXJlY3RpdmVzL3NkLW1hdGVyaWFsLWZvb3Rlci1kZWYuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUs5RCxNQUFNLE9BQU8sNEJBQTRCO0lBRXZDLFlBQW1CLFdBQTZCO1FBQTdCLGdCQUFXLEdBQVgsV0FBVyxDQUFrQjtJQUFJLENBQUM7OztZQUx0RCxTQUFTLFNBQUM7Z0JBQ1QsUUFBUSxFQUFFLHVCQUF1QjthQUNsQzs7O1lBSjBCLFdBQVc7OztrQ0FNbkMsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSW5wdXQsIFRlbXBsYXRlUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5ARGlyZWN0aXZlKHtcclxuICBzZWxlY3RvcjogJ1tzZE1hdGVyaWFsRm9vdGVyRGVmXSdcclxufSlcclxuZXhwb3J0IGNsYXNzIFNkTWF0ZXJpYWxGb290ZXJEZWZEaXJlY3RpdmUge1xyXG4gIEBJbnB1dCgpIHNkTWF0ZXJpYWxGb290ZXJEZWY6IHN0cmluZztcclxuICBjb25zdHJ1Y3RvcihwdWJsaWMgdGVtcGxhdGVSZWY6IFRlbXBsYXRlUmVmPGFueT4pIHsgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,15 @@
1
+ import { Directive, TemplateRef } from '@angular/core';
2
+ export class SdMaterialSubInformationDefDirective {
3
+ constructor(templateRef) {
4
+ this.templateRef = templateRef;
5
+ }
6
+ }
7
+ SdMaterialSubInformationDefDirective.decorators = [
8
+ { type: Directive, args: [{
9
+ selector: '[sdMaterialSubInformationDef]'
10
+ },] }
11
+ ];
12
+ SdMaterialSubInformationDefDirective.ctorParameters = () => [
13
+ { type: TemplateRef }
14
+ ];
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2QtbWF0ZXJpYWwtc3ViLWluZm9ybWF0aW9uLWRlZi5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiQzovVXNlcnMvbmdoaWF0dDE1X29uZW1vdW50L0RvY3VtZW50cy9saWItY29yZS11aS9wcm9qZWN0cy9zZC1jb3JlL3RhYmxlLyIsInNvdXJjZXMiOlsic3JjL2xpYi9kaXJlY3RpdmVzL3NkLW1hdGVyaWFsLXN1Yi1pbmZvcm1hdGlvbi1kZWYuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBS3ZELE1BQU0sT0FBTyxvQ0FBb0M7SUFDL0MsWUFBbUIsV0FBNkI7UUFBN0IsZ0JBQVcsR0FBWCxXQUFXLENBQWtCO0lBQUksQ0FBQzs7O1lBSnRELFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsK0JBQStCO2FBQzFDOzs7WUFKbUIsV0FBVyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgVGVtcGxhdGVSZWYgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIHNlbGVjdG9yOiAnW3NkTWF0ZXJpYWxTdWJJbmZvcm1hdGlvbkRlZl0nXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZE1hdGVyaWFsU3ViSW5mb3JtYXRpb25EZWZEaXJlY3RpdmUge1xyXG4gIGNvbnN0cnVjdG9yKHB1YmxpYyB0ZW1wbGF0ZVJlZjogVGVtcGxhdGVSZWY8YW55PikgeyB9XHJcbn1cclxuIl19
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ3JpZC1jZWxsLm1vZGVsLmpzIiwic291cmNlUm9vdCI6IkM6L1VzZXJzL25naGlhdHQxNV9vbmVtb3VudC9Eb2N1bWVudHMvbGliLWNvcmUtdWkvcHJvamVjdHMvc2QtY29yZS90YWJsZS8iLCJzb3VyY2VzIjpbInNyYy9saWIvbW9kZWxzL2dyaWQtY2VsbC5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgU2RCYWRnZUNvbG9yIH0gZnJvbSBcIkBzZC1hbmd1bGFyL2NvcmUvYmFkZ2VcIjtcclxuXHJcbmV4cG9ydCBpbnRlcmZhY2UgU2RDZWxsVmlldyB7XHJcbiAgYmFkZ2U/OiB7XHJcbiAgICB0eXBlOiAncm91bmQnIHwgJ2NpcmNsZScgfCAnaWNvbicsXHJcbiAgICBjb2xvcjogU2RCYWRnZUNvbG9yLFxyXG4gICAgaWNvbjogc3RyaW5nXHJcbiAgfTtcclxuICB0b29sdGlwPzogc3RyaW5nO1xyXG4gIGRpc3BsYXk6IHtcclxuICAgIGFsaWduOiAnY2VudGVyJyB8ICdsZWZ0JyB8ICdyaWdodCc7XHJcbiAgICB2YWx1ZTogc3RyaW5nLFxyXG4gICAgaGFzSHRtbD86IGJvb2xlYW4sXHJcbiAgICBodG1sPzogc3RyaW5nXHJcbiAgfTtcclxuICBjbGljaz86ICgpID0+IHZvaWQ7XHJcbn1cclxuIl19