@sd-angular/core 1.3.145 → 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 (148) hide show
  1. package/bundles/sd-angular-core-export.umd.js +67 -0
  2. package/bundles/sd-angular-core-export.umd.js.map +1 -1
  3. package/bundles/sd-angular-core-export.umd.min.js +1 -1
  4. package/bundles/sd-angular-core-export.umd.min.js.map +1 -1
  5. package/bundles/sd-angular-core-table.umd.js +4004 -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-upload-excel.umd.js +7 -77
  10. package/bundles/sd-angular-core-upload-excel.umd.js.map +1 -1
  11. package/bundles/sd-angular-core-upload-excel.umd.min.js +15 -1
  12. package/bundles/sd-angular-core-upload-excel.umd.min.js.map +1 -1
  13. package/bundles/sd-angular-core.umd.js +6 -4
  14. package/bundles/sd-angular-core.umd.js.map +1 -1
  15. package/bundles/sd-angular-core.umd.min.js +1 -1
  16. package/bundles/sd-angular-core.umd.min.js.map +1 -1
  17. package/esm2015/export/src/lib/export.service.js +63 -1
  18. package/esm2015/lib/core.module.js +4 -1
  19. package/esm2015/public-api.js +2 -1
  20. package/esm2015/table/index.js +2 -0
  21. package/esm2015/table/sd-angular-core-table.js +40 -0
  22. package/esm2015/table/src/lib/components/column-inline-filter/column-inline-filter.component.js +74 -0
  23. package/esm2015/table/src/lib/components/desktop-cell/desktop-cell.component.js +25 -0
  24. package/esm2015/table/src/lib/components/desktop-cell-view/desktop-cell-view.component.js +21 -0
  25. package/esm2015/table/src/lib/components/desktop-command/desktop-command.component.js +20 -0
  26. package/esm2015/table/src/lib/components/grid-filter/grid-filter.component.js +99 -0
  27. package/esm2015/table/src/lib/components/popup-filter/popup-filter.component.js +79 -0
  28. package/esm2015/table/src/lib/components/popup-grid-configuration/popup-grid-configuration.component.js +96 -0
  29. package/esm2015/table/src/lib/components/quick-action/quick-action.component.js +24 -0
  30. package/esm2015/table/src/lib/directives/sd-material-cell-def.directive.js +18 -0
  31. package/esm2015/table/src/lib/directives/sd-material-empty-data-def.directive.js +15 -0
  32. package/esm2015/table/src/lib/directives/sd-material-filter-def.directive.js +22 -0
  33. package/esm2015/table/src/lib/directives/sd-material-footer-def.directive.js +18 -0
  34. package/esm2015/table/src/lib/directives/sd-material-sub-information-def.directive.js +15 -0
  35. package/esm2015/table/src/lib/models/grid-cell.model.js +2 -0
  36. package/esm2015/table/src/lib/models/index.js +4 -0
  37. package/esm2015/table/src/lib/models/table-column.model.js +39 -0
  38. package/esm2015/table/src/lib/models/table-command.model.js +2 -0
  39. package/esm2015/table/src/lib/models/table-configuration.model.js +9 -0
  40. package/esm2015/table/src/lib/models/table-item.model.js +15 -0
  41. package/esm2015/table/src/lib/models/table-option-config.model.js +2 -0
  42. package/esm2015/table/src/lib/models/table-option-expand.model.js +2 -0
  43. package/esm2015/table/src/lib/models/table-option-export.model.js +2 -0
  44. package/esm2015/table/src/lib/models/table-option-group.model.js +2 -0
  45. package/esm2015/table/src/lib/models/table-option-paginate.model.js +2 -0
  46. package/esm2015/table/src/lib/models/table-option-reload.model.js +2 -0
  47. package/esm2015/table/src/lib/models/table-option-selector.model.js +2 -0
  48. package/esm2015/table/src/lib/models/table-option-sort.model.js +2 -0
  49. package/esm2015/table/src/lib/models/table-option-style.model.js +2 -0
  50. package/esm2015/table/src/lib/models/table-option.model.js +2 -0
  51. package/esm2015/table/src/lib/pipes/cell-view.pipe.js +180 -0
  52. package/esm2015/table/src/lib/pipes/column-badge.pipe.js +43 -0
  53. package/esm2015/table/src/lib/pipes/column-children-filter.pipe.js +31 -0
  54. package/esm2015/table/src/lib/pipes/column-html-template.pipe.js +23 -0
  55. package/esm2015/table/src/lib/pipes/column-tooltip.pipe.js +17 -0
  56. package/esm2015/table/src/lib/pipes/column-transform.pipe.js +35 -0
  57. package/esm2015/table/src/lib/pipes/column-values.pipe.js +63 -0
  58. package/esm2015/table/src/lib/pipes/command-disable.pipe.js +18 -0
  59. package/esm2015/table/src/lib/pipes/command-filter.pipe.js +79 -0
  60. package/esm2015/table/src/lib/pipes/command-icon.pipe.js +18 -0
  61. package/esm2015/table/src/lib/pipes/command-title.pipe.js +18 -0
  62. package/esm2015/table/src/lib/pipes/filter-column.pipe.js +30 -0
  63. package/esm2015/table/src/lib/pipes/filter-external.pipe.js +19 -0
  64. package/esm2015/table/src/lib/pipes/grid-configuration-result.pipe.js +21 -0
  65. package/esm2015/table/src/lib/pipes/sd-group.pipe.js +45 -0
  66. package/esm2015/table/src/lib/pipes/selection-action-filter.pipe.js +72 -0
  67. package/esm2015/table/src/lib/pipes/selection-disable.pipe.js +55 -0
  68. package/esm2015/table/src/lib/pipes/selection-visible-select-all.pipe.js +34 -0
  69. package/esm2015/table/src/lib/pipes/selection-visible.pipe.js +82 -0
  70. package/esm2015/table/src/lib/services/table-configuration.service.js +292 -0
  71. package/esm2015/table/src/lib/services/table-filter/table-filter.model.js +3 -0
  72. package/esm2015/table/src/lib/services/table-filter/table-filter.service.js +229 -0
  73. package/esm2015/table/src/lib/table.component.js +816 -0
  74. package/esm2015/table/src/lib/table.module.js +175 -0
  75. package/esm2015/table/src/public-api.js +5 -0
  76. package/esm2015/upload-excel/src/lib/upload-excel.component.js +4 -71
  77. package/export/src/lib/export.service.d.ts +4 -0
  78. package/fesm2015/sd-angular-core-export.js +62 -0
  79. package/fesm2015/sd-angular-core-export.js.map +1 -1
  80. package/fesm2015/sd-angular-core-table.js +2865 -0
  81. package/fesm2015/sd-angular-core-table.js.map +1 -0
  82. package/fesm2015/sd-angular-core-upload-excel.js +3 -70
  83. package/fesm2015/sd-angular-core-upload-excel.js.map +1 -1
  84. package/fesm2015/sd-angular-core.js +3 -0
  85. package/fesm2015/sd-angular-core.js.map +1 -1
  86. package/package.json +1 -2
  87. package/public-api.d.ts +1 -0
  88. package/{sd-angular-core-1.3.145.tgz → sd-angular-core-1.3.147.tgz} +0 -0
  89. package/sd-angular-core.metadata.json +1 -1
  90. package/table/index.d.ts +1 -0
  91. package/table/package.json +12 -0
  92. package/table/sd-angular-core-table.d.ts +39 -0
  93. package/table/sd-angular-core-table.metadata.json +1 -0
  94. package/table/src/lib/components/column-inline-filter/column-inline-filter.component.d.ts +22 -0
  95. package/table/src/lib/components/desktop-cell/desktop-cell.component.d.ts +17 -0
  96. package/table/src/lib/components/desktop-cell-view/desktop-cell-view.component.d.ts +11 -0
  97. package/table/src/lib/components/desktop-command/desktop-command.component.d.ts +7 -0
  98. package/table/src/lib/components/grid-filter/grid-filter.component.d.ts +35 -0
  99. package/table/src/lib/components/popup-filter/popup-filter.component.d.ts +27 -0
  100. package/table/src/lib/components/popup-grid-configuration/popup-grid-configuration.component.d.ts +39 -0
  101. package/table/src/lib/components/quick-action/quick-action.component.d.ts +9 -0
  102. package/table/src/lib/directives/sd-material-cell-def.directive.d.ts +6 -0
  103. package/table/src/lib/directives/sd-material-empty-data-def.directive.d.ts +5 -0
  104. package/table/src/lib/directives/sd-material-filter-def.directive.d.ts +8 -0
  105. package/table/src/lib/directives/sd-material-footer-def.directive.d.ts +6 -0
  106. package/table/src/lib/directives/sd-material-sub-information-def.directive.d.ts +5 -0
  107. package/table/src/lib/models/grid-cell.model.d.ts +16 -0
  108. package/table/src/lib/models/index.d.ts +3 -0
  109. package/table/src/lib/models/table-column.model.d.ts +124 -0
  110. package/table/src/lib/models/table-command.model.d.ts +19 -0
  111. package/table/src/lib/models/table-configuration.model.d.ts +13 -0
  112. package/table/src/lib/models/table-item.model.d.ts +25 -0
  113. package/table/src/lib/models/table-option-config.model.d.ts +62 -0
  114. package/table/src/lib/models/table-option-expand.model.d.ts +6 -0
  115. package/table/src/lib/models/table-option-export.model.d.ts +31 -0
  116. package/table/src/lib/models/table-option-group.model.d.ts +4 -0
  117. package/table/src/lib/models/table-option-paginate.model.d.ts +6 -0
  118. package/table/src/lib/models/table-option-reload.model.d.ts +5 -0
  119. package/table/src/lib/models/table-option-selector.model.d.ts +32 -0
  120. package/table/src/lib/models/table-option-sort.model.d.ts +3 -0
  121. package/table/src/lib/models/table-option-style.model.d.ts +6 -0
  122. package/table/src/lib/models/table-option.model.d.ts +44 -0
  123. package/table/src/lib/pipes/cell-view.pipe.d.ts +15 -0
  124. package/table/src/lib/pipes/column-badge.pipe.d.ts +11 -0
  125. package/table/src/lib/pipes/column-children-filter.pipe.d.ts +8 -0
  126. package/table/src/lib/pipes/column-html-template.pipe.d.ts +8 -0
  127. package/table/src/lib/pipes/column-tooltip.pipe.d.ts +6 -0
  128. package/table/src/lib/pipes/column-transform.pipe.d.ts +8 -0
  129. package/table/src/lib/pipes/column-values.pipe.d.ts +6 -0
  130. package/table/src/lib/pipes/command-disable.pipe.d.ts +5 -0
  131. package/table/src/lib/pipes/command-filter.pipe.d.ts +6 -0
  132. package/table/src/lib/pipes/command-icon.pipe.d.ts +5 -0
  133. package/table/src/lib/pipes/command-title.pipe.d.ts +5 -0
  134. package/table/src/lib/pipes/filter-column.pipe.d.ts +5 -0
  135. package/table/src/lib/pipes/filter-external.pipe.d.ts +5 -0
  136. package/table/src/lib/pipes/grid-configuration-result.pipe.d.ts +10 -0
  137. package/table/src/lib/pipes/sd-group.pipe.d.ts +6 -0
  138. package/table/src/lib/pipes/selection-action-filter.pipe.d.ts +7 -0
  139. package/table/src/lib/pipes/selection-disable.pipe.d.ts +6 -0
  140. package/table/src/lib/pipes/selection-visible-select-all.pipe.d.ts +6 -0
  141. package/table/src/lib/pipes/selection-visible.pipe.d.ts +6 -0
  142. package/table/src/lib/services/table-configuration.service.d.ts +13 -0
  143. package/table/src/lib/services/table-filter/table-filter.model.d.ts +117 -0
  144. package/table/src/lib/services/table-filter/table-filter.service.d.ts +15 -0
  145. package/table/src/lib/table.component.d.ts +87 -0
  146. package/table/src/lib/table.module.d.ts +11 -0
  147. package/table/src/public-api.d.ts +5 -0
  148. package/upload-excel/sd-angular-core-upload-excel.metadata.json +1 -1
@@ -0,0 +1,124 @@
1
+ import { SdBadgeColor } from '@sd-angular/core/badge';
2
+ export declare type SdTableColumn<T = any> = SdTableColumnText<T> | SdTableColumnNumber<T> | SdTableColumnBool<T> | SdTableColumnDate<T> | SdTableColumnValues<T> | SdTableColumnChildren<T>;
3
+ export declare type SdFilterOperator = 'EQUAL' | 'NOT_EQUAL' | 'CONTAIN' | 'START_WITH' | 'END_WITH' | 'GREATER_THAN' | 'LESS_THAN' | 'GREATER_OR_EQUAL' | 'LESS_OR_EQUAL';
4
+ export declare const SdFilterOperators: {
5
+ value: SdFilterOperator;
6
+ display: string;
7
+ }[];
8
+ export declare type SdTableColumnTransformFunc<T = any> = (value: any, rowData: T, args?: {
9
+ isExport?: boolean;
10
+ }) => string | Promise<string>;
11
+ interface SdTableColumnBase<T = any> {
12
+ field: string;
13
+ title: string;
14
+ titleHtml?: string;
15
+ description?: string;
16
+ width?: string;
17
+ hidden?: boolean;
18
+ invisible?: boolean;
19
+ fixed?: boolean;
20
+ align?: 'center' | 'left' | 'right';
21
+ htmlTemplate?: (value: any, rowData: T, isMobileOrTablet: boolean) => string;
22
+ transform?: SdTableColumnTransformFunc<T>;
23
+ tooltip?: (value: any, rowData: T) => string;
24
+ click?: (value: any, rowData: T) => void;
25
+ sortable?: boolean;
26
+ filter?: {
27
+ disabled?: boolean;
28
+ defaultShowing?: boolean;
29
+ default?: any;
30
+ operator?: {
31
+ enable?: boolean;
32
+ list?: SdFilterOperator[];
33
+ };
34
+ };
35
+ export?: {
36
+ disabled?: boolean;
37
+ };
38
+ }
39
+ interface SdTableColumnText<T = any> extends SdTableColumnBase<T> {
40
+ type: 'string';
41
+ badge?: (value: any, rowData: T) => SdBadgeColor;
42
+ badgeIcon?: (value: any, rowData: T) => string;
43
+ badgeType?: 'circle' | 'icon';
44
+ editor?: {
45
+ change?: (rowData: T, selected?: any) => void;
46
+ hidden?: boolean | ((rowData: T) => boolean);
47
+ disabled?: boolean | ((rowData: T) => boolean);
48
+ required?: boolean | ((rowData: T) => boolean);
49
+ minLength?: number;
50
+ maxLength?: number;
51
+ validator?: (rowData: T) => string;
52
+ };
53
+ }
54
+ interface SdTableColumnNumber<T = any> extends SdTableColumnBase<T> {
55
+ type: 'number';
56
+ badge?: (value: any, rowData: T) => SdBadgeColor;
57
+ badgeIcon?: (value: any, rowData: T) => string;
58
+ badgeType?: 'circle' | 'icon';
59
+ editor?: {
60
+ change?: (rowData: T, selected?: any) => void;
61
+ hidden?: boolean | ((rowData: T) => boolean);
62
+ disabled?: boolean | ((rowData: T) => boolean);
63
+ required?: boolean | ((rowData: T) => boolean);
64
+ minValue?: number;
65
+ maxValue?: number;
66
+ precision?: number;
67
+ validator?: (rowData: T) => string;
68
+ };
69
+ }
70
+ interface SdTableColumnBool<T = any> extends SdTableColumnBase<T> {
71
+ type: 'bool';
72
+ option?: {
73
+ displayOnTrue?: string;
74
+ displayOnFalse?: string;
75
+ };
76
+ badgeType?: 'circle';
77
+ editor?: {
78
+ change?: (rowData: T, selected?: any) => void;
79
+ hidden?: boolean | ((rowData: T) => boolean);
80
+ disabled?: boolean | ((rowData: T) => boolean);
81
+ required?: boolean | ((rowData: T) => boolean);
82
+ };
83
+ }
84
+ interface SdTableColumnDate<T = any> extends SdTableColumnBase<T> {
85
+ type: 'date' | 'datetime' | 'time';
86
+ option?: {
87
+ useFilterDate?: boolean;
88
+ timeDifferent?: 'second' | 'minute' | 'hour' | 'day' | 'month';
89
+ };
90
+ transformDate?: (value: any, rowData: T) => string | Date;
91
+ editor?: {
92
+ change?: (rowData: T, selected?: any) => void;
93
+ hidden?: boolean | ((rowData: T) => boolean);
94
+ disabled?: boolean | ((rowData: T) => boolean);
95
+ required?: boolean | ((rowData: T) => boolean);
96
+ };
97
+ }
98
+ export interface SdTableColumnValues<T = any> extends SdTableColumnBase<T> {
99
+ type: 'values';
100
+ badge?: (value: any, rowData: T) => SdBadgeColor;
101
+ badgeIcon?: (value: any, rowData: T) => string;
102
+ badgeType?: 'circle' | 'icon';
103
+ option: {
104
+ items: any[] | ((searchText?: string, isFormValue?: boolean) => Promise<any[]>) | ((searchText?: string[], isFormValue?: boolean) => Promise<any[]>);
105
+ valueField: string;
106
+ displayField: string;
107
+ selection?: 'AUTOCOMPLETE' | 'MULTIPLE' | 'MULTIPLEAUTOCOMPLETE' | 'AUTOCOMPLETE_EDITOR' | 'MULTIPLE_EDITOR' | 'MULTIPLEAUTOCOMPLETE_EDITOR';
108
+ };
109
+ editor?: {
110
+ change?: (rowData: T, selected?: any) => void;
111
+ add?: (rowData: T) => void;
112
+ edit?: (option: any, rowData: T) => void;
113
+ delete?: (option: any, rowData: T) => void;
114
+ hidden?: boolean | ((rowData: T) => boolean);
115
+ disabled?: boolean | ((rowData: T) => boolean);
116
+ required?: boolean | ((rowData: T) => boolean);
117
+ };
118
+ }
119
+ declare type SdTableColumnNormal<T> = Exclude<SdTableColumn<T>, SdTableColumnChildren<T>>;
120
+ export interface SdTableColumnChildren<T = any> extends SdTableColumnBase<T> {
121
+ type: 'children';
122
+ children: SdTableColumnNormal<T>[];
123
+ }
124
+ export {};
@@ -0,0 +1,19 @@
1
+ export declare type SdTableCommand<T = any> = SdTableCommandNormal<T> | SdTableCommandChildren<T>;
2
+ export interface SdTableCommandNormal<T = any> {
3
+ icon?: string | ((rowData: T) => string);
4
+ fontSet?: 'material-icons' | 'material-icons-outlined' | 'material-icons-outlined' | 'material-icons-round' | 'material-icons-sharp';
5
+ title?: string | ((rowData: T) => string);
6
+ disabled?: boolean | ((rowData: T) => boolean);
7
+ hidden?: boolean | ((rowData: T) => boolean | Promise<boolean>);
8
+ click: (rowData: T) => void;
9
+ htmlTemplate?: (rowData: T) => string;
10
+ }
11
+ interface SdTableCommandChildren<T = any> {
12
+ icon?: string | ((rowData: T) => string);
13
+ fontSet?: 'material-icons' | 'material-icons-outlined' | 'material-icons-outlined' | 'material-icons-round' | 'material-icons-sharp';
14
+ title?: string | ((rowData: T) => string);
15
+ disabled?: boolean | ((rowData: T) => boolean);
16
+ hidden?: boolean | ((rowData: T) => boolean | Promise<boolean>);
17
+ children: SdTableCommandNormal<T>[];
18
+ }
19
+ export {};
@@ -0,0 +1,13 @@
1
+ import { InjectionToken } from '@angular/core';
2
+ export interface ISdTableConfiguration {
3
+ filter?: {
4
+ quickFilter?: boolean;
5
+ };
6
+ paginate?: {
7
+ pageSize?: number;
8
+ pages?: number[];
9
+ };
10
+ translate?: boolean;
11
+ }
12
+ export declare const DEFAULT_TABLE_CONFIG: ISdTableConfiguration;
13
+ export declare const TABLE_CONFIG: InjectionToken<ISdTableConfiguration>;
@@ -0,0 +1,25 @@
1
+ export interface SdTableMetaSelector {
2
+ selectable?: boolean;
3
+ isSelected?: boolean;
4
+ actions?: string[];
5
+ }
6
+ export interface SdTableMetaExpand {
7
+ isExpanded?: boolean;
8
+ isExpanding?: boolean;
9
+ data?: any;
10
+ }
11
+ export interface SdTableMeta<T> {
12
+ id?: string;
13
+ selector?: SdTableMetaSelector;
14
+ expand?: SdTableMetaExpand;
15
+ group?: {
16
+ htmlTemplate?: string;
17
+ items?: SdTableItem<T>[];
18
+ };
19
+ }
20
+ export interface SdTableItem<T = any> {
21
+ meta: SdTableMeta<T>;
22
+ origin: T;
23
+ current: T;
24
+ }
25
+ export declare const MapToSdTableItem: <T = any>(item: T) => SdTableItem<T>;
@@ -0,0 +1,62 @@
1
+ import { Observable } from 'rxjs';
2
+ import { SdTableColumn } from './table-column.model';
3
+ export interface SdTableConfigOption<T = any> {
4
+ key?: string;
5
+ visible?: boolean;
6
+ storage?: 'session' | 'server';
7
+ customColumn?: boolean;
8
+ args?: {
9
+ [key: string]: any;
10
+ };
11
+ systemColumn?: {
12
+ permission?: 'READ' | 'CREATE' | 'UPDATE' | 'DELETE';
13
+ args?: {
14
+ [key: string]: any;
15
+ };
16
+ };
17
+ }
18
+ export interface SdOriginColumn {
19
+ field: string;
20
+ title: string;
21
+ width?: string;
22
+ invisible?: boolean;
23
+ }
24
+ export interface SdColumnConfiguration {
25
+ origin: SdOriginColumn;
26
+ title?: string;
27
+ width?: string;
28
+ invisible?: boolean;
29
+ fixed?: boolean;
30
+ htmlTemplate?: string;
31
+ }
32
+ export interface SdGridConfiguration {
33
+ columns?: SdColumnConfiguration[];
34
+ }
35
+ export interface SdGridConfigurationResult {
36
+ column: {
37
+ [field: string]: {
38
+ title?: string;
39
+ width?: string;
40
+ };
41
+ };
42
+ fixedColumn: {
43
+ [field: string]: {
44
+ title?: string;
45
+ width?: string;
46
+ };
47
+ };
48
+ firstColumns: SdTableColumn[];
49
+ secondColumns: SdTableColumn[];
50
+ firstHeaders: string[];
51
+ secondHeaders: string[];
52
+ displayedColumns: string[];
53
+ displayedFooters: string[];
54
+ multipleHeader: boolean;
55
+ }
56
+ export interface SdGridConfigurationCache {
57
+ load: () => Promise<void>;
58
+ get: () => Promise<SdGridConfiguration>;
59
+ set: (configuration: SdGridConfiguration) => SdGridConfiguration;
60
+ remove: () => void;
61
+ observer: Observable<SdGridConfiguration>;
62
+ }
@@ -0,0 +1,6 @@
1
+ export interface SdTableOptionExpand<T = any> {
2
+ disabled?: (rowData: T) => boolean;
3
+ onExpand?: (rowData: T) => Promise<any> | any;
4
+ multiple?: boolean;
5
+ always?: boolean;
6
+ }
@@ -0,0 +1,31 @@
1
+ import { SdTableFilterRequest } from '../services/table-filter/table-filter.model';
2
+ export interface SdTableOptionExport<T = any> {
3
+ key?: string;
4
+ visible?: 'ALL' | 'EXCEL' | 'CSV';
5
+ enableUpload?: boolean;
6
+ fileName?: string;
7
+ max?: number;
8
+ maxItemsPerRequest?: number;
9
+ batch?: number;
10
+ items?: (filterRequest: SdTableFilterRequest) => T[] | Promise<T[]> | Promise<{
11
+ items: any[];
12
+ total: number;
13
+ }>;
14
+ mapping?: (items: T[], fileName?: string) => T[] | Promise<T[]>;
15
+ columns?: SdTableOptionExportColumn<T>[];
16
+ sheets?: {
17
+ name: string;
18
+ items: any[] | ((items?: any[]) => any[] | Promise<any[]>);
19
+ fields: string[];
20
+ }[];
21
+ }
22
+ export interface SdTableOptionExportColumn<T = any> {
23
+ field: string;
24
+ title: string;
25
+ description?: string;
26
+ width?: string;
27
+ transform?: (value: any, rowData: T) => string;
28
+ export?: {
29
+ disabled: boolean;
30
+ };
31
+ }
@@ -0,0 +1,4 @@
1
+ export interface SdTableOptionGroup<T = any> {
2
+ fields: string[];
3
+ htmlTemplate: (rowDatas: T[]) => string;
4
+ }
@@ -0,0 +1,6 @@
1
+ export interface SdTableOptionPaginate {
2
+ pageSize?: number;
3
+ pages?: number[];
4
+ showFirstLastButtons?: boolean;
5
+ hidden?: boolean;
6
+ }
@@ -0,0 +1,5 @@
1
+ import { SdTableItem } from "./table-item.model";
2
+ export interface SdTableOptionReload<T = any> {
3
+ visible?: boolean;
4
+ onReload?: (items: SdTableItem<T>[]) => Promise<void> | void;
5
+ }
@@ -0,0 +1,32 @@
1
+ export interface SdTableOptionSelector<T = any> {
2
+ visible?: boolean;
3
+ single?: boolean;
4
+ actions?: SdTableAction<T>[];
5
+ message?: string | ((selectedItems?: T[]) => string);
6
+ onSelect?: (rowData?: T, selectedItems?: T[]) => void;
7
+ onSelectAll?: (selectedItems: T[]) => void;
8
+ disabled?: (rowData?: T, selectedItems?: T[]) => boolean;
9
+ }
10
+ export declare type SdTableAction<T = any> = SdTableActionNormal<T> | SdTableActionChildren<T>;
11
+ export interface SdTableActionNormal<T = any> {
12
+ icon?: string | ((rowData: T) => string);
13
+ fontSet?: 'material-icons' | 'material-icons-outlined' | 'material-icons-outlined' | 'material-icons-round' | 'material-icons-sharp';
14
+ tooltip?: string;
15
+ title?: string;
16
+ color?: 'primary' | 'accent' | 'warn' | 'info' | 'success' | 'warning' | 'danger' | 'secondary';
17
+ type?: 'fill' | 'light' | 'outline' | 'link';
18
+ hidden?: boolean | ((rowData?: T) => boolean);
19
+ isGrouped?: boolean;
20
+ click: (selectedItems?: T[]) => void;
21
+ }
22
+ interface SdTableActionChildren<T = any> {
23
+ icon?: string | ((rowData: T) => string);
24
+ fontSet?: 'material-icons' | 'material-icons-outlined' | 'material-icons-outlined' | 'material-icons-round' | 'material-icons-sharp';
25
+ tooltip?: string;
26
+ title?: string;
27
+ color?: 'primary' | 'accent' | 'warn' | 'info' | 'success' | 'warning' | 'danger' | 'secondary';
28
+ type?: 'fill' | 'light' | 'outline' | 'link';
29
+ isGrouped?: boolean;
30
+ children: SdTableActionNormal<T>[];
31
+ }
32
+ export {};
@@ -0,0 +1,3 @@
1
+ export interface SdTableOptionSort {
2
+ enable?: boolean;
3
+ }
@@ -0,0 +1,6 @@
1
+ export interface SdTableOptionStyle<T = any> {
2
+ shadow?: boolean;
3
+ maxHeight?: string;
4
+ minHeight?: string;
5
+ rowCss?: (rowData: T) => Record<string, string>;
6
+ }
@@ -0,0 +1,44 @@
1
+ import { SdTableColumn } from './table-column.model';
2
+ import { SdTableCommand } from './table-command.model';
3
+ import { SdTableFilterRequest, SdTableOptionFilter } from '../services/table-filter/table-filter.model';
4
+ import { SdTableOptionExport } from './table-option-export.model';
5
+ import { SdTableOptionReload } from './table-option-reload.model';
6
+ import { SdTableOptionExpand } from './table-option-expand.model';
7
+ import { SdTableOptionSelector } from './table-option-selector.model';
8
+ import { SdTableOptionStyle } from './table-option-style.model';
9
+ import { SdTableOptionGroup } from './table-option-group.model';
10
+ import { SdTableOptionSort } from './table-option-sort.model';
11
+ import { SdTableOptionPaginate } from './table-option-paginate.model';
12
+ import { SdTableConfigOption } from './table-option-config.model';
13
+ export declare type SdTableOption<T = any> = SdTableLocalOption<T> | SdTableServerOption<T>;
14
+ interface SdTableBaseOption<T = any> {
15
+ key?: string;
16
+ config?: SdTableConfigOption<T>;
17
+ selector?: SdTableOptionSelector<T>;
18
+ expand?: SdTableOptionExpand<T>;
19
+ sort?: SdTableOptionSort;
20
+ paginate?: SdTableOptionPaginate;
21
+ reload?: SdTableOptionReload<T>;
22
+ export?: SdTableOptionExport<T>;
23
+ group?: SdTableOptionGroup<T>;
24
+ filter?: SdTableOptionFilter;
25
+ commands?: SdTableCommand<T>[];
26
+ columns: SdTableColumn<T>[];
27
+ style?: SdTableOptionStyle<T>;
28
+ displayOnEmpty?: boolean | ((rowData: T, column?: SdTableColumn<T>) => string) | {
29
+ display?: boolean | ((rowData: T, column?: SdTableColumn<T>) => string);
30
+ emptyValues?: any[];
31
+ };
32
+ }
33
+ interface SdTableLocalOption<T = any> extends SdTableBaseOption<T> {
34
+ type: 'local';
35
+ items: () => T[] | Promise<T[]>;
36
+ }
37
+ interface SdTableServerOption<T = any> extends SdTableBaseOption<T> {
38
+ type: 'server';
39
+ items: (filterRequest: SdTableFilterRequest) => Promise<{
40
+ items: T[];
41
+ total: number;
42
+ }>;
43
+ }
44
+ export {};
@@ -0,0 +1,15 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { SdUtilityService } from '@sd-angular/core/utility';
3
+ import { DeviceDetectorService } from 'ngx-device-detector';
4
+ import { SdCellView } from '../models/grid-cell.model';
5
+ import { SdTableColumn } from '../models/table-column.model';
6
+ import { SdTableOption } from '../models/table-option.model';
7
+ import { SdColumnValuesPipe } from './column-values.pipe';
8
+ import { SdTableItem } from '../models/table-item.model';
9
+ export declare class SdCellViewPipe implements PipeTransform {
10
+ #private;
11
+ private utilityService;
12
+ private columnValuesPipe;
13
+ constructor(deviceService: DeviceDetectorService, utilityService: SdUtilityService, columnValuesPipe: SdColumnValuesPipe);
14
+ transform(value: any, tableItem: SdTableItem, column: SdTableColumn, gridOption: SdTableOption): Promise<SdCellView>;
15
+ }
@@ -0,0 +1,11 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { SdBadgeColor } from '@sd-angular/core/badge';
3
+ import { SdTableColumn } from '../models/table-column.model';
4
+ export declare class SdColumnBadgePipe implements PipeTransform {
5
+ constructor();
6
+ transform(value: any, rowData: any, column: SdTableColumn): {
7
+ type: 'round' | 'circle' | 'icon';
8
+ color: SdBadgeColor;
9
+ icon: string;
10
+ };
11
+ }
@@ -0,0 +1,8 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { DeviceDetectorService } from 'ngx-device-detector';
3
+ import { SdTableColumn } from '../models/table-column.model';
4
+ export declare class SdColumnChildrenFilterPipe implements PipeTransform {
5
+ #private;
6
+ constructor(deviceService: DeviceDetectorService);
7
+ transform(columns: SdTableColumn[], item: any): SdTableColumn[];
8
+ }
@@ -0,0 +1,8 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { DeviceDetectorService } from 'ngx-device-detector';
3
+ import { SdTableColumn } from '../models/table-column.model';
4
+ export declare class SdColumnHtmlTemplatePipe implements PipeTransform {
5
+ private isMobileOrTablet;
6
+ constructor(deviceService: DeviceDetectorService);
7
+ transform(value: any, rowData: any, column: SdTableColumn): string;
8
+ }
@@ -0,0 +1,6 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { SdTableColumn } from '../models/table-column.model';
3
+ export declare class SdColumnTooltipPipe implements PipeTransform {
4
+ constructor();
5
+ transform(value: any, rowData: any, column: SdTableColumn): string;
6
+ }
@@ -0,0 +1,8 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { SdTableColumn } from '../models/table-column.model';
3
+ import { SdColumnValuesPipe } from './column-values.pipe';
4
+ export declare class SdColumnTransformPipe implements PipeTransform {
5
+ private columnValuesPipe;
6
+ constructor(columnValuesPipe: SdColumnValuesPipe);
7
+ transform(value: any, rowData: any, column: SdTableColumn, key?: string): Promise<string>;
8
+ }
@@ -0,0 +1,6 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { SdTableColumn } from '../models/table-column.model';
3
+ export declare class SdColumnValuesPipe implements PipeTransform {
4
+ #private;
5
+ transform: (value: any, column: SdTableColumn) => Promise<string>;
6
+ }
@@ -0,0 +1,5 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { SdTableCommand } from '../models/table-command.model';
3
+ export declare class SdCommandDisablePipe implements PipeTransform {
4
+ transform(item: any, command: SdTableCommand): boolean;
5
+ }
@@ -0,0 +1,6 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { SdTableCommand } from '../models/table-command.model';
3
+ import { SdTableItem } from '../models/table-item.model';
4
+ export declare class SdCommandFilterPipe implements PipeTransform {
5
+ transform(item: SdTableItem, commands: SdTableCommand[]): Promise<SdTableCommand[]>;
6
+ }
@@ -0,0 +1,5 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { SdTableCommand } from '../models/table-command.model';
3
+ export declare class SdCommandIconPipe implements PipeTransform {
4
+ transform(command: SdTableCommand, item: any): string;
5
+ }
@@ -0,0 +1,5 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { SdTableCommand } from '../models/table-command.model';
3
+ export declare class SdCommandTitlePipe implements PipeTransform {
4
+ transform(command: SdTableCommand, item: any): string;
5
+ }
@@ -0,0 +1,5 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { SdTableColumn } from '../models/table-column.model';
3
+ export declare class SdFilterColumnPipe implements PipeTransform {
4
+ transform(columns: SdTableColumn[], field?: string): SdTableColumn[];
5
+ }
@@ -0,0 +1,5 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { SdTableExternalFilter } from '../services/table-filter/table-filter.model';
3
+ export declare class SdFilterExternalPipe implements PipeTransform {
4
+ transform(externalFilters: SdTableExternalFilter[], field?: string): SdTableExternalFilter[];
5
+ }
@@ -0,0 +1,10 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { SdTableOption } from '../models/table-option.model';
3
+ import { SdGridConfiguration, SdGridConfigurationResult } from '../models/table-option-config.model';
4
+ import { SdTableConfigurationService } from '../services/table-configuration.service';
5
+ import { SdMaterialSubInformationDefDirective } from '../directives/sd-material-sub-information-def.directive';
6
+ export declare class SdGridConfigurationResultPipe implements PipeTransform {
7
+ private gridConfigurationService;
8
+ constructor(gridConfigurationService: SdTableConfigurationService);
9
+ transform(configuration: SdGridConfiguration, gridOption: SdTableOption, sdSubInformation: SdMaterialSubInformationDefDirective): SdGridConfigurationResult;
10
+ }
@@ -0,0 +1,6 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { SdTableOption } from '../models/table-option.model';
3
+ import { SdTableItem } from '../models/table-item.model';
4
+ export declare class SdGroupPipe implements PipeTransform {
5
+ transform(items: SdTableItem[], gridOption: SdTableOption): SdTableItem[];
6
+ }
@@ -0,0 +1,7 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { SdTableItem } from '../models/table-item.model';
3
+ import { SdTableAction } from '../models/table-option-selector.model';
4
+ export declare class SdSelectionActionFilterPipe implements PipeTransform {
5
+ #private;
6
+ transform: (selectedItems: SdTableItem[], actions: SdTableAction[]) => SdTableAction[];
7
+ }
@@ -0,0 +1,6 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { SdTableOptionSelector } from '../models/table-option-selector.model';
3
+ import { SdTableItem } from '../models/table-item.model';
4
+ export declare class SdSelectionDisablePipe implements PipeTransform {
5
+ transform: (selectedItems: SdTableItem[], rowData: SdTableItem, selection: SdTableOptionSelector) => boolean;
6
+ }
@@ -0,0 +1,6 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { SdTableOptionSelector } from '../models/table-option-selector.model';
3
+ import { SdTableItem } from '../models/table-item.model';
4
+ export declare class SdSelectionVisibleSelectAllPipe implements PipeTransform {
5
+ transform: (items: SdTableItem[], selection: SdTableOptionSelector) => Promise<boolean>;
6
+ }
@@ -0,0 +1,6 @@
1
+ import { PipeTransform } from '@angular/core';
2
+ import { SdTableOptionSelector } from '../models/table-option-selector.model';
3
+ import { SdTableItem } from '../models/table-item.model';
4
+ export declare class SdSelectionVisiblePipe implements PipeTransform {
5
+ transform: (rowData: SdTableItem, selection: SdTableOptionSelector) => boolean;
6
+ }
@@ -0,0 +1,13 @@
1
+ import { SdSettingService } from '@sd-angular/core/setting';
2
+ import { SdTableOption } from '../models/table-option.model';
3
+ import { SdGridConfiguration, SdGridConfigurationCache, SdGridConfigurationResult } from '../models/table-option-config.model';
4
+ import { SdMaterialSubInformationDefDirective } from '../directives/sd-material-sub-information-def.directive';
5
+ import { ISdTableConfiguration } from '../models/table-configuration.model';
6
+ export declare class SdTableConfigurationService {
7
+ #private;
8
+ private settingService;
9
+ gridMaterialConfiguration: ISdTableConfiguration;
10
+ constructor(settingService: SdSettingService, gridMaterialConfiguration: ISdTableConfiguration);
11
+ init: (key: string, gridOption: SdTableOption) => SdGridConfigurationCache;
12
+ generateConfigurationResult: (configuration: SdGridConfiguration, gridOption: SdTableOption, sdSubInformation: SdMaterialSubInformationDefDirective) => SdGridConfigurationResult;
13
+ }