cax-design-system 2.5.0 → 2.6.0

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 (69) hide show
  1. package/README.md +1 -1
  2. package/api/confirmation.d.ts +5 -0
  3. package/chips/chips.d.ts +12 -1
  4. package/chips/chips.module.d.ts +2 -1
  5. package/confirmdialog/confirmdialog.d.ts +9 -1
  6. package/dialog/dialog.d.ts +4 -0
  7. package/esm2022/api/confirmation.mjs +1 -1
  8. package/esm2022/autocomplete/autocomplete.mjs +3 -3
  9. package/esm2022/calendar/calendar.mjs +4 -4
  10. package/esm2022/chips/chips.mjs +56 -17
  11. package/esm2022/chips/chips.module.mjs +5 -4
  12. package/esm2022/confirmdialog/confirmdialog.mjs +31 -6
  13. package/esm2022/dialog/dialog.mjs +18 -3
  14. package/esm2022/dropdown/dropdown.mjs +3 -3
  15. package/esm2022/dynamicdialog/dynamicdialog.mjs +3 -3
  16. package/esm2022/inputtext/inputtext.component.mjs +2 -2
  17. package/esm2022/navigation/navigation.interface.mjs +1 -1
  18. package/esm2022/navigation/navigation.mjs +78 -17
  19. package/esm2022/sidebar/sidebar.mjs +10 -3
  20. package/esm2022/table/components/column-filter/column-filter.mjs +146 -7
  21. package/esm2022/table/components/column-filter-form-element/column-filter-form-element.mjs +8 -7
  22. package/esm2022/table/components/sort-icon/sort-icon.mjs +7 -7
  23. package/esm2022/table/directives/sortable-column.directive.mjs +6 -6
  24. package/esm2022/table/table.mjs +114 -77
  25. package/esm2022/timeline/timeline.mjs +2 -2
  26. package/esm2022/tooltip/tooltip.module.mjs +6 -4
  27. package/fesm2022/cax-design-system-autocomplete.mjs +2 -2
  28. package/fesm2022/cax-design-system-autocomplete.mjs.map +1 -1
  29. package/fesm2022/cax-design-system-calendar.mjs +3 -3
  30. package/fesm2022/cax-design-system-calendar.mjs.map +1 -1
  31. package/fesm2022/cax-design-system-chips.mjs +58 -19
  32. package/fesm2022/cax-design-system-chips.mjs.map +1 -1
  33. package/fesm2022/cax-design-system-confirmdialog.mjs +31 -6
  34. package/fesm2022/cax-design-system-confirmdialog.mjs.map +1 -1
  35. package/fesm2022/cax-design-system-dialog.mjs +17 -2
  36. package/fesm2022/cax-design-system-dialog.mjs.map +1 -1
  37. package/fesm2022/cax-design-system-dropdown.mjs +2 -2
  38. package/fesm2022/cax-design-system-dropdown.mjs.map +1 -1
  39. package/fesm2022/cax-design-system-dynamicdialog.mjs +2 -2
  40. package/fesm2022/cax-design-system-dynamicdialog.mjs.map +1 -1
  41. package/fesm2022/cax-design-system-inputtext.mjs +1 -1
  42. package/fesm2022/cax-design-system-inputtext.mjs.map +1 -1
  43. package/fesm2022/cax-design-system-navigation.mjs +77 -16
  44. package/fesm2022/cax-design-system-navigation.mjs.map +1 -1
  45. package/fesm2022/cax-design-system-sidebar.mjs +9 -2
  46. package/fesm2022/cax-design-system-sidebar.mjs.map +1 -1
  47. package/fesm2022/cax-design-system-table.mjs +270 -99
  48. package/fesm2022/cax-design-system-table.mjs.map +1 -1
  49. package/fesm2022/cax-design-system-timeline.mjs +2 -2
  50. package/fesm2022/cax-design-system-timeline.mjs.map +1 -1
  51. package/fesm2022/cax-design-system-tooltip.mjs +5 -3
  52. package/fesm2022/cax-design-system-tooltip.mjs.map +1 -1
  53. package/navigation/navigation.d.ts +12 -7
  54. package/navigation/navigation.interface.d.ts +8 -5
  55. package/package.json +132 -132
  56. package/resources/cax.min.scss +1 -1
  57. package/resources/cax.scss +760 -377
  58. package/resources/components/autocomplete/autocomplete.scss +32 -33
  59. package/resources/components/calendar/calendar.scss +9 -10
  60. package/resources/components/chips/chips.scss +110 -62
  61. package/resources/components/dialog/dialog.scss +2 -2
  62. package/resources/components/dropdown/dropdown.scss +6 -0
  63. package/resources/components/table/table.scss +50 -2
  64. package/resources/components/timeline/timeline.scss +0 -1
  65. package/sidebar/sidebar.d.ts +8 -1
  66. package/table/components/column-filter/column-filter.d.ts +30 -0
  67. package/table/directives/sortable-column.directive.d.ts +2 -2
  68. package/table/table.d.ts +3 -2
  69. package/tooltip/tooltip.module.d.ts +3 -1
@@ -1,11 +1,11 @@
1
1
  @layer cax {
2
2
  .cax-autocomplete {
3
- display: inline-flex;
3
+ display: flex;
4
4
  position: relative;
5
+ height: 40px;
5
6
  }
6
7
 
7
8
  .cax-autocomplete-loader {
8
- position: absolute;
9
9
  position: absolute;
10
10
  top: 50%;
11
11
  margin-top: -0.5rem;
@@ -106,72 +106,72 @@
106
106
  top: 50%;
107
107
  margin-top: -0.5rem;
108
108
  cursor: pointer;
109
- margin-left: 9px;
109
+ left: 9px;
110
+
110
111
  }
111
112
  .cax-autocomplete-sm {
112
- height: 32px;
113
+ height: 32px !important;
113
114
  .cax-inputtext{
114
- font-size: 16px !important;
115
+ font-size: 12px !important;
115
116
  }
116
117
  .cax-autocomplete-clear-icon {
117
- width: 16px !important;
118
- height: 16px !important;
118
+ width: 12px !important;
119
+ height: 12px !important;
120
+ margin-top: -0.3rem;
119
121
  }
120
122
  .cax-autocomplete-search-icon{
121
- width: 16px !important;
122
- height: 16px !important;
123
+ width: 12px !important;
124
+ height: 12px !important;
125
+ margin-top: -0.3rem;
123
126
  }
124
127
 
125
128
 
126
129
  }
127
130
 
128
131
  .cax-autocomplete-md {
129
- height: 40px;
132
+ height: 40px !important;
130
133
  .cax-inputtext{
131
- font-size: 20px !important;
134
+ font-size: 16px !important;
132
135
  }
133
136
  .cax-autocomplete-clear-icon {
134
- width: 20px !important;
135
- height: 20px !important;
136
- margin-top: -0.6rem;
137
+ width: 16px !important;
138
+ height: 16px !important;
137
139
 
138
140
  }
139
141
  .cax-autocomplete-search-icon{
140
- width: 20px !important;
141
- height: 20px !important;
142
- margin-top: -0.6rem;
142
+ width: 16px !important;
143
+ height: 16px !important;
143
144
  }
144
145
  .cax-inputtext {
145
146
  padding-left: 2rem !important;
146
147
  padding-right: 2rem !important;
147
148
  }
148
149
  .cax-autocomplete-loader{
149
- width: 20px !important;
150
- height: 20px !important;
151
- margin-top: -0.6rem;
150
+ width: 16px !important;
151
+ height: 16px !important;
152
152
  }
153
153
 
154
154
  }
155
155
 
156
156
  .cax-autocomplete-lg {
157
- height: 48px;
157
+ height: 48px !important;
158
158
  .cax-inputtext{
159
- font-size: 24px !important;
159
+ font-size: 18px !important;
160
160
  }
161
161
  .cax-autocomplete-clear-icon {
162
- width: 24px !important;
163
- height: 24px !important;
164
- margin-top: -0.7rem;
162
+ width: 18px !important;
163
+ height: 18px !important;
164
+ margin-top: -0.6rem;
165
165
  }
166
166
  .cax-autocomplete-search-icon{
167
- width: 24px !important;
168
- height: 24px !important;
169
- margin-top: -0.7rem;
167
+ width: 18px !important;
168
+ height: 18px !important;
169
+ margin-top: -0.6rem;
170
170
  }
171
171
  .cax-autocomplete-loader{
172
- width: 24px !important;
173
- height: 24px !important;
174
- margin-top: -0.7rem;
172
+ width: 18px !important;
173
+ height: 18px !important;
174
+ margin-top: -0.6rem;
175
175
  }
176
176
 
177
177
  .cax-inputtext {
@@ -181,5 +181,4 @@
181
181
 
182
182
 
183
183
  }
184
- }
185
-
184
+ }
@@ -1,15 +1,16 @@
1
1
  @layer cax {
2
2
  .cax-calendar {
3
3
  position: relative;
4
- display: inline-flex;
5
- max-width: 100%;
4
+ display: flex;
5
+ width: 216px !important;
6
+ height : 40px;
6
7
  }
7
8
 
8
9
  .cax-calendar .cax-inputtext {
9
10
  flex: 1 1 auto;
10
11
  text-overflow: ellipsis;
11
- padding-left: 25px !important;
12
- padding-right: 25px !important;
12
+ padding-left: 1.8rem !important;
13
+ padding-right: 1.8rem !important;
13
14
  }
14
15
 
15
16
  .cax-calendar-w-btn .cax-inputtext {
@@ -41,7 +42,7 @@
41
42
  }
42
43
 
43
44
  .cax-datepicker {
44
- width: 372px;
45
+ width: 372px;
45
46
  position: absolute;
46
47
  top: 0;
47
48
  left: 0;
@@ -176,13 +177,12 @@
176
177
 
177
178
  .cax-datepicker-icon {
178
179
  pointer-events: none;
179
- left: 8px;
180
+ left: 1.67px;
180
181
  color: black !important;
181
182
  margin-top: 1px !important;
182
183
  }
183
184
  .cax-input-icon-left {
184
185
  order: -1;
185
- margin-left: 20px;
186
186
  }
187
187
 
188
188
 
@@ -191,9 +191,8 @@
191
191
  }
192
192
 
193
193
  .downarrow{
194
- position: absolute;
195
- right: 0.5rem;
196
- top: 0.5rem;
194
+ top: 1.5rem !important;
195
+ color: black !important;
197
196
 
198
197
  }
199
198
  }
@@ -20,6 +20,16 @@
20
20
  align-items: center;
21
21
  flex: 0 0 auto;
22
22
  max-width: 100%;
23
+ border-radius: 8px;
24
+ padding: 0 10px;
25
+ background: var(--neutral-100);
26
+ border: 1px solid var(--neutral-200);
27
+ scroll-snap-align: end;
28
+ scroll-snap-stop: always;
29
+
30
+ &:hover {
31
+ border-color: var(--neutral-300);
32
+ }
23
33
  }
24
34
 
25
35
  .cax-chips-token-label {
@@ -38,6 +48,24 @@
38
48
 
39
49
  .cax-chips-token-icon {
40
50
  cursor: pointer;
51
+ position: relative;
52
+ display: inline-flex;
53
+ align-items: center;
54
+ justify-content: center;
55
+ min-width: 20px;
56
+ min-height: 20px;
57
+
58
+ i {
59
+ display: inline-flex;
60
+ align-items: center;
61
+ justify-content: center;
62
+ width: 100%;
63
+ height: 100%;
64
+ }
65
+
66
+ &:hover {
67
+ color: var(--neutral-900);
68
+ }
41
69
  }
42
70
 
43
71
  .cax-chips-input-token input {
@@ -56,25 +84,52 @@
56
84
  }
57
85
 
58
86
  .cax-chips-clear-icon {
59
- position: absolute;
60
- top: 50%;
61
- margin-top: -0.5rem;
87
+ position: relative;
88
+ display: inline-flex;
89
+ align-items: center;
90
+ justify-content: center;
91
+ min-width: 20px;
92
+ min-height: 20px;
93
+ color: var(--neutral-750);
94
+ margin-left: 8px;
62
95
  cursor: pointer;
96
+
97
+ &:hover {
98
+ color: var(--neutral-900);
99
+ }
100
+
101
+ i {
102
+ display: inline-flex;
103
+ align-items: center;
104
+ justify-content: center;
105
+ width: 100%;
106
+ height: 100%;
107
+ }
63
108
  }
64
109
 
65
110
  .cax-chips-clearable .cax-inputtext {
66
111
  position: relative;
67
112
  }
113
+
68
114
  .cax-cax-edit-icon {
69
115
  margin-right: 5px;
70
116
  height: 15px;
71
117
  width: auto;
72
118
  }
119
+
73
120
  .cax-chips-wrapper {
74
121
  display: flex;
75
- justify-content: space-between;
76
122
  align-items: center;
77
- width: 100%;
123
+ flex: 1;
124
+ min-width: 0;
125
+ position: relative;
126
+ }
127
+
128
+ .cax-chips-content {
129
+ display: flex;
130
+ flex: 1;
131
+ min-width: 0;
132
+ overflow: hidden;
78
133
  }
79
134
 
80
135
  .cax-input-icon-left {
@@ -88,69 +143,62 @@
88
143
  }
89
144
 
90
145
  .cax-chips-input-token {
91
- display: flex;
146
+ display: inline-flex;
92
147
  align-items: center;
93
- justify-content: space-between;
94
- }
148
+ min-width: 120px;
149
+ flex: 0 0 auto;
150
+ height: 100%;
95
151
 
96
- .cax-chips-clear-icon {
97
- cursor: pointer;
98
- }
99
- .cax-chips-icon-left {
100
- margin-left: 8px;
101
- margin-top: 2px;
102
- }
103
- .cax-chips-container {
104
- display: flex;
105
- align-items: center;
106
- width: 216px;
107
- height: 30px;
108
- overflow: hidden;
109
- white-space: nowrap;
110
- border: transparent;
152
+ input {
153
+ width: 100%;
154
+ background: transparent;
155
+ border: none;
156
+ outline: none;
157
+ padding: 4px;
158
+ font-family: inherit;
159
+ font-size: inherit;
160
+ }
111
161
  }
112
162
 
113
- .cax-chips-scrollable {
114
- display: flex;
163
+ .cax-chips-icon-left {
164
+ position: relative;
165
+ display: inline-flex;
115
166
  align-items: center;
116
- flex: 1;
117
- overflow-x: auto;
118
- overflow-y: hidden;
119
- scrollbar-width: none;
120
- -ms-overflow-style: none;
121
- }
122
-
123
- .cax-chips-scrollable::-webkit-scrollbar {
124
- display: none;
125
- }
126
-
127
- .cax-chips-list {
128
- display: flex;
129
- gap: 6px;
130
- margin: 0;
131
- padding: 0;
132
- list-style: none;
133
- flex-shrink: 0;
134
- overflow-x: hidden;
135
- }
136
-
137
- .cax-chips-input-container {
138
- flex-shrink: 0;
139
- display: flex;
167
+ justify-content: center;
168
+ min-width: 20px;
169
+ min-height: 20px;
170
+ color: var(--neutral-750);
171
+ margin-right: 8px;
172
+
173
+ i {
174
+ display: inline-flex;
175
+ align-items: center;
176
+ justify-content: center;
177
+ width: 100%;
178
+ height: 100%;
179
+ }
180
+ }
181
+
182
+ .cax-chips-icon-right {
183
+ position: relative;
184
+ display: inline-flex;
140
185
  align-items: center;
141
- width: 50px;
142
- }
143
-
144
- .cax-chips-input {
145
- height: 30px;
146
- margin-left: 2px;
147
- width: 140px;
148
- border: transparent;
149
- border-radius: 4px;
150
- box-sizing: border-box;
151
- }
186
+ justify-content: center;
187
+ min-width: 20px;
188
+ min-height: 20px;
189
+ color: var(--neutral-750);
190
+ margin-left: 8px;
152
191
 
153
- .cax-chips-container.no-chips .cax-chips-input {
154
- width: 100%;
192
+ i {
193
+ display: inline-flex;
194
+ align-items: center;
195
+ justify-content: center;
196
+ width: 100%;
197
+ height: 100%;
198
+ }
199
+
200
+ &:hover {
201
+ color: var(--neutral-900);
202
+ }
155
203
  }
156
204
  }
@@ -140,10 +140,10 @@
140
140
  }
141
141
  .cax-header-allign {
142
142
  display: flex;
143
+ align-items: center;
143
144
  }
144
- .cax-dialog-icon {
145
+ .cax-dialog-header-icon {
145
146
  font-size: 1.25rem;
146
- margin-top: 11%;
147
147
  }
148
148
 
149
149
  .cax-confirm-dialog .cax-dialog-content {
@@ -13,6 +13,12 @@
13
13
  top: 50%;
14
14
  margin-top: -0.5rem;
15
15
  }
16
+ .cax-dropdown-main-label {
17
+ font-weight: 500;
18
+ font-size: 14px;
19
+ line-height: 20px;
20
+ margin-bottom: 8px;
21
+ }
16
22
 
17
23
  .cax-dropdown-trigger {
18
24
  display: flex;
@@ -27,7 +27,6 @@
27
27
  }
28
28
 
29
29
  .cax-datatable .cax-sortable-column {
30
- cursor: pointer;
31
30
  user-select: none;
32
31
  }
33
32
 
@@ -191,10 +190,37 @@
191
190
  display: flex;
192
191
  align-items: center;
193
192
  width: 100%;
193
+ i {
194
+ font-size: 20px;
195
+ }
194
196
  }
195
197
 
196
- .cax-column-filter-menu {
198
+ .cax-column-filter-menu,
199
+ .cax-column-filter-custom {
197
200
  display: inline-flex;
201
+ position: relative;
202
+ float: right;
203
+ i {
204
+ font-size: 20px;
205
+ }
206
+ }
207
+
208
+ .cax-column-filter-custom-container {
209
+ padding: 16px;
210
+ display: flex;
211
+ gap: 16px;
212
+ flex-direction: column;
213
+ .cax-column-filter-custom-buttons {
214
+ display: flex;
215
+ gap: 12px;
216
+ cax-button {
217
+ flex: 1;
218
+ }
219
+ }
220
+ }
221
+
222
+ .cax-column-filter-overlay-custom {
223
+ width: 248px;
198
224
  }
199
225
 
200
226
  .cax-column-filter-row cax-columnfilterformelement {
@@ -243,6 +269,7 @@
243
269
  display: flex;
244
270
  align-items: center;
245
271
  justify-content: space-between;
272
+ gap: 12px;
246
273
  }
247
274
 
248
275
  .cax-column-filter-buttonbar .cax-button {
@@ -393,3 +420,24 @@ $checkbox-size-xl: 22px;
393
420
  .cax-cell-background-error {
394
421
  background: var(--error-50);
395
422
  }
423
+
424
+ .cax-sort-icon-button {
425
+ border: 0;
426
+ width: 28px;
427
+ height: 28px;
428
+ display: flex;
429
+ background: transparent;
430
+ cursor: pointer;
431
+ padding: 0;
432
+
433
+ align-items: center;
434
+ justify-content: center;
435
+ i {
436
+ font-size: 20px;
437
+ }
438
+ }
439
+
440
+ cax-sorticon {
441
+ float: right;
442
+ margin-left: 8px;
443
+ }
@@ -48,7 +48,6 @@
48
48
  .cax-timeline-event {
49
49
  display: flex;
50
50
  position: relative;
51
- min-height: 70px;
52
51
  }
53
52
 
54
53
  .cax-timeline-event:last-child {
@@ -127,6 +127,13 @@ export declare class Sidebar implements AfterViewInit, AfterContentInit, OnDestr
127
127
  headlessTemplate: TemplateRef<any> | null;
128
128
  footerTemplate: Nullable<TemplateRef<any>>;
129
129
  closeIconTemplate: TemplateRef<any> | null;
130
+ /**
131
+ * Inline style of the header section.
132
+ * @group Props
133
+ */
134
+ headerStyle: {
135
+ [klass: string]: any;
136
+ };
130
137
  constructor(document: Document, el: ElementRef, renderer: Renderer2, cd: ChangeDetectorRef, config: caxConfig);
131
138
  ngAfterViewInit(): void;
132
139
  ngAfterContentInit(): void;
@@ -147,7 +154,7 @@ export declare class Sidebar implements AfterViewInit, AfterContentInit, OnDestr
147
154
  unbindAnimationEndListener(): void;
148
155
  ngOnDestroy(): void;
149
156
  static ɵfac: i0.ɵɵFactoryDeclaration<Sidebar, never>;
150
- static ɵcmp: i0.ɵɵComponentDeclaration<Sidebar, "cax-sidebar", never, { "headerText": { "alias": "headerText"; "required": false; }; "appendTo": { "alias": "appendTo"; "required": false; }; "blockScroll": { "alias": "blockScroll"; "required": false; }; "style": { "alias": "style"; "required": false; }; "styleClass": { "alias": "styleClass"; "required": false; }; "ariaCloseLabel": { "alias": "ariaCloseLabel"; "required": false; }; "autoZIndex": { "alias": "autoZIndex"; "required": false; }; "baseZIndex": { "alias": "baseZIndex"; "required": false; }; "modal": { "alias": "modal"; "required": false; }; "dismissible": { "alias": "dismissible"; "required": false; }; "showCloseIcon": { "alias": "showCloseIcon"; "required": false; }; "closeOnEscape": { "alias": "closeOnEscape"; "required": false; }; "transitionOptions": { "alias": "transitionOptions"; "required": false; }; "visible": { "alias": "visible"; "required": false; }; "position": { "alias": "position"; "required": false; }; "fullScreen": { "alias": "fullScreen"; "required": false; }; "contentTemplate": { "alias": "contentTemplate"; "required": false; }; "headerTemplate": { "alias": "headerTemplate"; "required": false; }; "headlessTemplate": { "alias": "headlessTemplate"; "required": false; }; "footerTemplate": { "alias": "footerTemplate"; "required": false; }; "closeIconTemplate": { "alias": "closeIconTemplate"; "required": false; }; }, { "onShow": "onShow"; "onHide": "onHide"; "visibleChange": "visibleChange"; }, ["templates"], ["*"], true, never>;
157
+ static ɵcmp: i0.ɵɵComponentDeclaration<Sidebar, "cax-sidebar", never, { "headerText": { "alias": "headerText"; "required": false; }; "appendTo": { "alias": "appendTo"; "required": false; }; "blockScroll": { "alias": "blockScroll"; "required": false; }; "style": { "alias": "style"; "required": false; }; "styleClass": { "alias": "styleClass"; "required": false; }; "ariaCloseLabel": { "alias": "ariaCloseLabel"; "required": false; }; "autoZIndex": { "alias": "autoZIndex"; "required": false; }; "baseZIndex": { "alias": "baseZIndex"; "required": false; }; "modal": { "alias": "modal"; "required": false; }; "dismissible": { "alias": "dismissible"; "required": false; }; "showCloseIcon": { "alias": "showCloseIcon"; "required": false; }; "closeOnEscape": { "alias": "closeOnEscape"; "required": false; }; "transitionOptions": { "alias": "transitionOptions"; "required": false; }; "visible": { "alias": "visible"; "required": false; }; "position": { "alias": "position"; "required": false; }; "fullScreen": { "alias": "fullScreen"; "required": false; }; "contentTemplate": { "alias": "contentTemplate"; "required": false; }; "headerTemplate": { "alias": "headerTemplate"; "required": false; }; "headlessTemplate": { "alias": "headlessTemplate"; "required": false; }; "footerTemplate": { "alias": "footerTemplate"; "required": false; }; "closeIconTemplate": { "alias": "closeIconTemplate"; "required": false; }; "headerStyle": { "alias": "headerStyle"; "required": false; }; }, { "onShow": "onShow"; "onHide": "onHide"; "visibleChange": "visibleChange"; }, ["templates"], ["*"], true, never>;
151
158
  static ngAcceptInputType_blockScroll: unknown;
152
159
  static ngAcceptInputType_autoZIndex: unknown;
153
160
  static ngAcceptInputType_baseZIndex: unknown;
@@ -200,6 +200,28 @@ export declare class ColumnFilter implements AfterContentInit {
200
200
  get removeRuleButtonAriaLabel(): string;
201
201
  get filterOperatorAriaLabel(): string;
202
202
  get filterConstraintAriaLabel(): string;
203
+ customFilterListVisible: boolean;
204
+ selectedCustomFilter: any;
205
+ commonFilterOptions: {
206
+ label: string;
207
+ key: string;
208
+ }[];
209
+ stringFilterOptions: {
210
+ label: string;
211
+ key: string;
212
+ }[];
213
+ numberFilterOptions: {
214
+ label: string;
215
+ key: string;
216
+ }[];
217
+ dateFilterOptions: {
218
+ label: string;
219
+ key: string;
220
+ }[];
221
+ customInputFilter: string;
222
+ customNumberFilter1: number;
223
+ customNumberFilter2: number;
224
+ customDateFilter: any;
203
225
  constructor(document: Document, el: ElementRef, dt: Table, renderer: Renderer2, config: caxConfig, overlayService: OverlayService, cd: ChangeDetectorRef);
204
226
  ngOnInit(): void;
205
227
  generateMatchModeOptions(): void;
@@ -239,6 +261,14 @@ export declare class ColumnFilter implements AfterContentInit {
239
261
  clearFilter(): void;
240
262
  applyFilter(): void;
241
263
  ngOnDestroy(): void;
264
+ toggleCustomFilterList(): void;
265
+ selectCustomFilter(option: any): void;
266
+ get isCustomCommonFilterSelected(): boolean;
267
+ get isCustomStringFilterSelected(): boolean;
268
+ get isCustomNumberFilterSelected(): boolean;
269
+ get isCustomDateFilterSelected(): boolean;
270
+ onClearCustomFilters(): void;
271
+ onApplyCustomFilters(): void;
242
272
  static ɵfac: i0.ɵɵFactoryDeclaration<ColumnFilter, never>;
243
273
  static ɵcmp: i0.ɵɵComponentDeclaration<ColumnFilter, "cax-columnFilter", never, { "field": { "alias": "field"; "required": false; }; "type": { "alias": "type"; "required": false; }; "display": { "alias": "display"; "required": false; }; "showMenu": { "alias": "showMenu"; "required": false; }; "matchMode": { "alias": "matchMode"; "required": false; }; "operator": { "alias": "operator"; "required": false; }; "showOperator": { "alias": "showOperator"; "required": false; }; "showClearButton": { "alias": "showClearButton"; "required": false; }; "showApplyButton": { "alias": "showApplyButton"; "required": false; }; "showMatchModes": { "alias": "showMatchModes"; "required": false; }; "showAddButton": { "alias": "showAddButton"; "required": false; }; "hideOnClear": { "alias": "hideOnClear"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "matchModeOptions": { "alias": "matchModeOptions"; "required": false; }; "maxConstraints": { "alias": "maxConstraints"; "required": false; }; "minFractionDigits": { "alias": "minFractionDigits"; "required": false; }; "maxFractionDigits": { "alias": "maxFractionDigits"; "required": false; }; "prefix": { "alias": "prefix"; "required": false; }; "suffix": { "alias": "suffix"; "required": false; }; "locale": { "alias": "locale"; "required": false; }; "localeMatcher": { "alias": "localeMatcher"; "required": false; }; "currency": { "alias": "currency"; "required": false; }; "currencyDisplay": { "alias": "currencyDisplay"; "required": false; }; "useGrouping": { "alias": "useGrouping"; "required": false; }; "showButtons": { "alias": "showButtons"; "required": false; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; }; }, { "onShow": "onShow"; "onHide": "onHide"; }, ["templates"], never, true, never>;
244
274
  static ngAcceptInputType_showMenu: unknown;
@@ -15,8 +15,8 @@ export declare class SortableColumn implements OnInit, OnDestroy {
15
15
  onClick(event: MouseEvent): void;
16
16
  onEnterKey(event: MouseEvent): void;
17
17
  isEnabled(): boolean;
18
- isFilterElement(element: HTMLElement): boolean;
19
- private isFilterElementIconOrButton;
18
+ isSortElement(element: HTMLElement): boolean;
19
+ private isSortButton;
20
20
  ngOnDestroy(): void;
21
21
  static ɵfac: i0.ɵɵFactoryDeclaration<SortableColumn, never>;
22
22
  static ɵdir: i0.ɵɵDirectiveDeclaration<SortableColumn, "[caxSortableColumn]", never, { "field": { "alias": "caxSortableColumn"; "required": false; }; "caxSortableColumnDisabled": { "alias": "caxSortableColumnDisabled"; "required": false; }; }, {}, never, never, true, never>;
package/table/table.d.ts CHANGED
@@ -138,7 +138,7 @@ export declare class Table implements OnInit, AfterViewInit, AfterContentInit, B
138
138
  * Defines whether sorting works on single column or on multiple columns.
139
139
  * @group Props
140
140
  */
141
- sortMode: 'single' | 'multiple';
141
+ sortMode: 'single' | 'multiple' | 'custom';
142
142
  /**
143
143
  * When true, resets paginator to first page after sorting. Available only when sortMode is set to single.
144
144
  * @group Props
@@ -726,6 +726,7 @@ export declare class Table implements OnInit, AfterViewInit, AfterContentInit, B
726
726
  onPageChange(event: TablePageEvent): void;
727
727
  sort(event: any): void;
728
728
  sortSingle(): void;
729
+ sortCustom(): void;
729
730
  sortMultiple(): void;
730
731
  multisortField(data1: any, data2: any, multiSortMeta: SortMeta[], index: number): any;
731
732
  compareValuesOnSort(value1: any, value2: any, order: any): number;
@@ -746,7 +747,7 @@ export declare class Table implements OnInit, AfterViewInit, AfterContentInit, B
746
747
  filter(value: any, field: string, matchMode: string): void;
747
748
  filterGlobal(value: any, matchMode: string): void;
748
749
  isFilterBlank(filter: any): boolean;
749
- _filter(): void;
750
+ _filter(display?: string): void;
750
751
  executeLocalFilter(field: string, rowData: any, filterMeta: FilterMetadata): boolean;
751
752
  hasFilter(): boolean;
752
753
  createLazyLoadMetadata(): any;
@@ -1,8 +1,10 @@
1
1
  import * as i0 from "@angular/core";
2
2
  import * as i1 from "./tooltip";
3
3
  import * as i2 from "@angular/common";
4
+ import * as i3 from "cax-design-system/inputtext";
5
+ import * as i4 from "cax-design-system/button";
4
6
  export declare class TooltipModule {
5
7
  static ɵfac: i0.ɵɵFactoryDeclaration<TooltipModule, never>;
6
- static ɵmod: i0.ɵɵNgModuleDeclaration<TooltipModule, [typeof i1.Tooltip], [typeof i2.CommonModule], [typeof i1.Tooltip]>;
8
+ static ɵmod: i0.ɵɵNgModuleDeclaration<TooltipModule, [typeof i1.Tooltip], [typeof i2.CommonModule, typeof i3.InputTextModule, typeof i4.ButtonModule], [typeof i1.Tooltip]>;
7
9
  static ɵinj: i0.ɵɵInjectorDeclaration<TooltipModule>;
8
10
  }