cats-data-grid 2.0.85 → 2.0.86

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 (35) hide show
  1. package/assets/images/add-more-right-blue.svg +3 -3
  2. package/assets/images/autosize-all.svg +3 -3
  3. package/assets/images/autosize-this.svg +3 -3
  4. package/assets/images/check-white.svg +3 -3
  5. package/assets/images/eye-custom-header.svg +4 -4
  6. package/assets/images/eye-off-custom-header.svg +3 -3
  7. package/assets/images/gripper.svg +8 -8
  8. package/assets/images/minus-blue.svg +3 -3
  9. package/assets/images/pin.svg +4 -4
  10. package/assets/images/sort_down.svg +6 -6
  11. package/assets/images/sort_up.svg +6 -6
  12. package/assets/images/t-arrow-down.svg +4 -4
  13. package/assets/images/t-arrow-up.svg +4 -4
  14. package/assets/images/t-choose-column.svg +3 -3
  15. package/assets/images/t-data-pipeline.svg +13 -13
  16. package/assets/images/t-filter-applied.svg +4 -4
  17. package/assets/images/t-filter.svg +3 -3
  18. package/assets/images/t-gripper.svg +8 -8
  19. package/assets/images/t-group-by-name.svg +3 -3
  20. package/assets/images/t-more-vertical.svg +5 -5
  21. package/assets/images/t-move.svg +15 -15
  22. package/assets/images/t-x.svg +4 -4
  23. package/fesm2022/cats-data-grid.mjs +12 -12
  24. package/fesm2022/cats-data-grid.mjs.map +1 -1
  25. package/package.json +1 -1
  26. package/styles/_index.scss +3 -3
  27. package/styles/base/_fonts.scss +74 -74
  28. package/styles/base/_index.scss +1 -1
  29. package/styles/base/_reset.scss +60 -60
  30. package/styles/component/_form.scss +426 -426
  31. package/styles/component/_index.scss +1 -1
  32. package/styles/sass-utils/_function.scss +14 -14
  33. package/styles/sass-utils/_index.scss +3 -3
  34. package/styles/sass-utils/_mixin.scss +100 -100
  35. package/styles/sass-utils/_variable.scss +128 -128
@@ -1,426 +1,426 @@
1
- @use "../sass-utils" as *;
2
-
3
- //========== CUSTOM SCROLL BAR ======================
4
-
5
- #table_scroll.filter-tag-wrapper::-webkit-scrollbar {
6
- @include box(rem(10px), rem(10px));
7
- }
8
- #table_scroll::-webkit-scrollbar {
9
- @include box(rem(14px), rem(14px));
10
- }
11
- #table_scroll::-webkit-scrollbar-track {
12
- background-color: var(--border-core-default);
13
- @include border($width: rem(3px), $radius: rem(100px), $color: transparent);
14
- background-clip: padding-box;
15
- }
16
- #table_scroll::-webkit-scrollbar-thumb {
17
- background-color: var(--text-body-secondary);
18
- @include border($width: rem(3px), $radius: rem(100px), $color: transparent);
19
- background-clip: padding-box;
20
- }
21
- #table_scroll::-webkit-scrollbar-corner {
22
- background: transparent;
23
- }
24
- #table_scroll::-webkit-scrollbar-button {
25
- @include box(rem(14px), rem(14px));
26
- background-color: var(--surface-background-subtle);
27
- border-radius: rem(2px);
28
- cursor: pointer;
29
- display: none;
30
- background-repeat: no-repeat;
31
- background-position: center;
32
- background-size: rem(15px);
33
- }
34
- #table_scroll::-webkit-scrollbar-button:hover {
35
- background-color: var(--text-body-muted);
36
- }
37
- #table_scroll::-webkit-scrollbar-button:single-button:vertical:decrement {
38
- background-image: url("/images/chevron-up.svg");
39
- display: block;
40
- // border-top-right-radius: 8px;
41
- }
42
- #table_scroll::-webkit-scrollbar-button:single-button:vertical:increment {
43
- background-image: url("/images/chevron-down.svg");
44
- display: block;
45
- }
46
- #table_scroll::-webkit-scrollbar-button:single-button:horizontal:decrement {
47
- background-image: url("/images/chevron-left.svg");
48
- display: block;
49
- // border-bottom-left-radius: 8px;
50
- }
51
- #table_scroll::-webkit-scrollbar-button:single-button:horizontal:increment {
52
- background-image: url("/images/chevron-right.svg");
53
- display: block;
54
- }
55
- #table_scroll.global::-webkit-scrollbar-button:single-button:vertical:decrement {
56
- display: block;
57
- height: rem(55px);
58
- background:
59
- url("/images/chevron-up.svg") bottom / rem(15px) no-repeat,
60
- linear-gradient(
61
- to bottom,
62
- rgb(240, 240, 240) 0%,
63
- rgb(240, 240, 240) 70.5%,
64
- var(--border-core-default) 70.5%,
65
- var(--border-core-default) 72.5%,
66
- var(--surface-background-subtle) 72.5%,
67
- var(--surface-background-subtle) 100%
68
- );
69
- border-top-left-radius: 0;
70
- border-top-right-radius: 0;
71
- &:hover {
72
- background:
73
- url("/images/chevron-up.svg") bottom / rem(15px) no-repeat,
74
- linear-gradient(
75
- to bottom,
76
- var(--surface-background-default) 0%,
77
- var(--surface-background-default) 70.5%,
78
- var(--border-core-default) 70.5%,
79
- var(--border-core-default) 72.5%,
80
- var(--text-body-muted) 72.5%,
81
- var(--text-body-muted) 100%
82
- );
83
- }
84
- }
85
- //CSS for large height rows
86
- .cats-tableArea.large {
87
- #table_scroll.global::-webkit-scrollbar-button:single-button:vertical:decrement {
88
- height: rem(71px);
89
- background:
90
- url("/images/chevron-up.svg") bottom / rem(15px) no-repeat,
91
- linear-gradient(
92
- to bottom,
93
- rgb(240, 240, 240) 0%,
94
- rgb(240, 240, 240) 78.8%,
95
-
96
- var(--border-core-default) 78.8%,
97
- var(--border-core-default) 81.7%,
98
-
99
- var(--surface-background-subtle) 81.7%,
100
- var(--surface-background-subtle) 100%
101
- );
102
- &:hover {
103
- background:
104
- url("/images/chevron-up.svg") bottom / rem(15px) no-repeat,
105
- linear-gradient(
106
- to bottom,
107
- var(--surface-background-default) 0%,
108
- var(--surface-background-default) 78.8%,
109
-
110
- var(--border-core-default) 78.8%,
111
- var(--border-core-default) 81.7%,
112
-
113
- var(--text-body-muted) 81.7%,
114
- var(--text-body-muted) 100%
115
- );
116
- }
117
- }
118
- }
119
-
120
- // ---------------- CUSTOM RADIO INPUT START HERE--------
121
- .cats-radio-option {
122
- display: flex;
123
- @include box(rem(16px), rem(16px));
124
- [type="radio"]:not(:checked)[disabled] + .label {
125
- color: var(--text-body-muted);
126
- cursor: default;
127
- &::before {
128
- background-color: var(--surface-background-subtle);
129
- }
130
- }
131
- [type="radio"]:is(:checked)[disabled] + .label {
132
- color: var(--text-body-muted);
133
- cursor: default;
134
- &::before {
135
- border-color: var(--border-core-muted);
136
- }
137
- &::after {
138
- background-color: var(--surface-background-subtle);
139
- }
140
- }
141
- %check-style {
142
- content: "";
143
- position: absolute;
144
- @include positioning(0, 0);
145
- @include box(rem(16px), rem(16px));
146
- background: var(--surface-background-canvas);
147
- }
148
- [type="radio"]:checked,
149
- [type="radio"]:not(:checked) {
150
- position: absolute;
151
- left: -9999px;
152
- }
153
- [type="radio"]:checked + .label,
154
- [type="radio"]:not(:checked) + .label {
155
- position: relative;
156
- padding-left: rem(24px);
157
- cursor: pointer;
158
- display: inline-block;
159
- color: var(--text-heading-primary);
160
- line-height: rem(16px);
161
- }
162
- [type="radio"]:checked + .label:before {
163
- @extend %check-style;
164
- @include border(
165
- $width: rem(1.5px),
166
- $color: var(--border-interaction-focus),
167
- $radius: 100%
168
- );
169
- }
170
- [type="radio"]:not(:checked) + .label:before {
171
- @extend %check-style;
172
- @include border($width: rem(1.5px), $radius: 100%);
173
- }
174
- [type="radio"]:checked + .label:after,
175
- [type="radio"]:not(:checked) + .label:after {
176
- content: "";
177
- @include box(rem(6px), rem(6px));
178
- background: var(--surface-action-default);
179
- position: absolute;
180
- @include positioning(rem(5px), rem(5px));
181
- border-radius: 100%;
182
- transition: all 0.2s ease;
183
- }
184
- [type="radio"]:not(:checked) + .label:after {
185
- opacity: 0;
186
- transform: scale(0);
187
- }
188
- [type="radio"]:checked + .label:after {
189
- opacity: 1;
190
- transform: scale(1);
191
- }
192
- }
193
-
194
- // ---------------- CUSTOM CHECKBOX INPUT START HERE--------
195
- .cats-checkbox_container {
196
- @include flex(flex-start, center, rem(8px));
197
- @include fontStyle(var(--fs-14), rem(20px), 400);
198
- color: var(--text-heading-primary);
199
- // --- Disabled (check & uncheck) ---
200
- input[type="checkbox"].custom_check_box,
201
- input[type="checkbox"].custom_check_box:checked {
202
- &[disabled] {
203
- cursor: default;
204
- background-color: var(--text-body-muted);
205
- border-color: var(--border-core-strong);
206
- & + span {
207
- color: var(--text-body-muted);
208
- }
209
- }
210
- }
211
- input[type="checkbox"].custom_check_box {
212
- appearance: none;
213
- -webkit-appearance: none;
214
- @include box(rem(16px), rem(16px));
215
- min-width: rem(16px);
216
- @include border();
217
- cursor: pointer;
218
- background-color: var(--surface-background-canvas);
219
- position: relative;
220
- transition: all 0.2s ease;
221
-
222
- // --- Default (unchecked) ---
223
- &::after {
224
- content: "";
225
- display: none;
226
- position: absolute;
227
- @include positioning(rem(-1px), rem(-1px));
228
- @include box(rem(16px), rem(16px));
229
- background-size: auto;
230
- background-repeat: no-repeat;
231
- background-position: center;
232
- }
233
- // --- Checked State ---
234
- &:checked {
235
- border-color: var(--border-interaction-focus);
236
- background-color: var(--surface-action-default);
237
- &::after {
238
- display: block;
239
- background-image: url("/images/check-white.svg");
240
- background-size: rem(8px) rem(6px);
241
- }
242
- }
243
- // --- Indeterminate (minus) state ---
244
- &:indeterminate {
245
- border-color: var(--border-interaction-focus);
246
- background-color: var(--surface-background-canvas);
247
- &::after {
248
- display: block;
249
- top: 0;
250
- background-image: url("/images/minus-blue.svg");
251
- background-size: rem(7px) rem(1px);
252
- }
253
- }
254
- }
255
- }
256
-
257
- // ---------------- CUSTOM SINGLE SELECT DROPDOWN START HERE--------
258
- .text_filter_section {
259
- position: relative;
260
- width: 100%;
261
- .single_select_dropdown {
262
- @include flex(space-between, center);
263
- @include box(100%, rem(40px));
264
- @include border();
265
- padding: rem(10px) rem(12px);
266
- @include fontStyle(var(--fs-14), rem(20px));
267
- background-color: var(--surface-background-canvas);
268
- color: var(--text-heading-primary);
269
- cursor: pointer;
270
-
271
- .left_details {
272
- @include flex("", center);
273
- @include box(calc(100% - rem(20px)), "");
274
- }
275
- .arrow_icon {
276
- img {
277
- max-width: rem(20px);
278
- }
279
- }
280
- }
281
-
282
- .dropdown_list {
283
- @include border();
284
- width: 100%;
285
- max-height: rem(172px);
286
- overflow: auto;
287
- position: absolute;
288
- z-index: 2;
289
- background: var(--surface-background-canvas);
290
- box-shadow: rem(0px) rem(12px) rem(16px) rem(-4px) var(--box-shadow);
291
- top: rem(40px);
292
-
293
- ul {
294
- list-style-type: none;
295
- padding: rem(4px) 0;
296
-
297
- &:has(.no_data) li:hover {
298
- background-color: unset;
299
- cursor: default;
300
- }
301
- li {
302
- height: rem(40px);
303
- @include flex(space-between, center);
304
- @include fontStyle(var(--fs-14), rem(20px));
305
- padding: rem(10px) rem(12px);
306
- cursor: pointer;
307
- color: var(--text-heading-primary);
308
- &:hover {
309
- background-color: var(--surface-background-default);
310
- }
311
- &.disabled_option {
312
- opacity: 0.3;
313
- pointer-events: none;
314
- }
315
- }
316
- }
317
- }
318
- }
319
-
320
- // --------------Searchbox with icon-------------
321
- .search_input {
322
- position: relative;
323
- @include box(100%, rem(40px));
324
- @include border();
325
- padding: rem(10px) rem(12px);
326
- background-color: var(--surface-background-canvas);
327
- @include flex(flex-start, center, rem(4px));
328
-
329
- img {
330
- @include box(rem(20px), rem(20px));
331
- opacity: 0.5;
332
- }
333
- input {
334
- @include box(100%, 100%);
335
- border: 0;
336
- @include fontStyle(var(--fs-14), rem(20px), 400);
337
- color: var(--text-heading-primary);
338
- &::placeholder {
339
- color: var(--text-heading-secondary);
340
- }
341
- }
342
- }
343
-
344
- // --------------Toggle Switch css-------------
345
- .table_switch_wrapper {
346
- display: flex;
347
- .switch {
348
- position: relative;
349
- display: inline-block;
350
- @include box(rem(28px), rem(16px)); /* default size */
351
- input {
352
- display: none;
353
- }
354
- .slider {
355
- position: absolute;
356
- cursor: pointer;
357
- background-color: var(--surface-background-subtle);
358
- border-radius: rem(16px);
359
- inset: 0;
360
- transition: 0.3s;
361
- &:before {
362
- content: "";
363
- position: absolute;
364
- @include box(rem(12px), rem(12px));
365
- left: rem(2px);
366
- bottom: rem(2px);
367
- background-color: var(--surface-background-canvas);
368
- border-radius: 50%;
369
- transition: 0.3s;
370
- box-shadow: 0 rem(0.8px) rem(2.4px) 0 var(--box-shadow);
371
- }
372
- }
373
-
374
- input:checked + .slider {
375
- background-color: var(--surface-action-default);
376
- &:before {
377
- transform: translateX(rem(12px));
378
- }
379
- }
380
- }
381
- }
382
- .cats-tableArea.large {
383
- .table_wrapper {
384
- table {
385
- tbody {
386
- tr {
387
- :host .table_switch_wrapper {
388
- .switch {
389
- @include box(rem(38px), rem(20px)); /* big size */
390
- .slider {
391
- &:before {
392
- @include box(rem(16px), rem(16px));
393
- }
394
- }
395
- input:checked + .slider {
396
- &:before {
397
- transform: translateX(rem(18px));
398
- }
399
- }
400
- }
401
- }
402
- }
403
- }
404
- }
405
- }
406
- }
407
-
408
- .cats-text-primary {
409
- color: var(--text-link-default);
410
- }
411
- .cats-text-danger {
412
- color: var(--semantics-error-default);
413
- }
414
- //---------------Text Trunctae CSS -----------
415
-
416
- .ellipsis,
417
- .textTruncate {
418
- white-space: nowrap;
419
- overflow: hidden;
420
- text-overflow: ellipsis;
421
- /* max-width: rem(200px); */
422
- }
423
-
424
- .tooltip-trigger {
425
- cursor: default;
426
- }
1
+ @use "../sass-utils" as *;
2
+
3
+ //========== CUSTOM SCROLL BAR ======================
4
+
5
+ #table_scroll.filter-tag-wrapper::-webkit-scrollbar {
6
+ @include box(rem(10px), rem(10px));
7
+ }
8
+ #table_scroll::-webkit-scrollbar {
9
+ @include box(rem(14px), rem(14px));
10
+ }
11
+ #table_scroll::-webkit-scrollbar-track {
12
+ background-color: var(--border-core-default);
13
+ @include border($width: rem(3px), $radius: rem(100px), $color: transparent);
14
+ background-clip: padding-box;
15
+ }
16
+ #table_scroll::-webkit-scrollbar-thumb {
17
+ background-color: var(--text-body-secondary);
18
+ @include border($width: rem(3px), $radius: rem(100px), $color: transparent);
19
+ background-clip: padding-box;
20
+ }
21
+ #table_scroll::-webkit-scrollbar-corner {
22
+ background: transparent;
23
+ }
24
+ #table_scroll::-webkit-scrollbar-button {
25
+ @include box(rem(14px), rem(14px));
26
+ background-color: var(--surface-background-subtle);
27
+ border-radius: rem(2px);
28
+ cursor: pointer;
29
+ display: none;
30
+ background-repeat: no-repeat;
31
+ background-position: center;
32
+ background-size: rem(15px);
33
+ }
34
+ #table_scroll::-webkit-scrollbar-button:hover {
35
+ background-color: var(--text-body-muted);
36
+ }
37
+ #table_scroll::-webkit-scrollbar-button:single-button:vertical:decrement {
38
+ background-image: url("/images/chevron-up.svg");
39
+ display: block;
40
+ // border-top-right-radius: 8px;
41
+ }
42
+ #table_scroll::-webkit-scrollbar-button:single-button:vertical:increment {
43
+ background-image: url("/images/chevron-down.svg");
44
+ display: block;
45
+ }
46
+ #table_scroll::-webkit-scrollbar-button:single-button:horizontal:decrement {
47
+ background-image: url("/images/chevron-left.svg");
48
+ display: block;
49
+ // border-bottom-left-radius: 8px;
50
+ }
51
+ #table_scroll::-webkit-scrollbar-button:single-button:horizontal:increment {
52
+ background-image: url("/images/chevron-right.svg");
53
+ display: block;
54
+ }
55
+ #table_scroll.global::-webkit-scrollbar-button:single-button:vertical:decrement {
56
+ display: block;
57
+ height: rem(55px);
58
+ background:
59
+ url("/images/chevron-up.svg") bottom / rem(15px) no-repeat,
60
+ linear-gradient(
61
+ to bottom,
62
+ rgb(240, 240, 240) 0%,
63
+ rgb(240, 240, 240) 70.5%,
64
+ var(--border-core-default) 70.5%,
65
+ var(--border-core-default) 72.5%,
66
+ var(--surface-background-subtle) 72.5%,
67
+ var(--surface-background-subtle) 100%
68
+ );
69
+ border-top-left-radius: 0;
70
+ border-top-right-radius: 0;
71
+ &:hover {
72
+ background:
73
+ url("/images/chevron-up.svg") bottom / rem(15px) no-repeat,
74
+ linear-gradient(
75
+ to bottom,
76
+ var(--surface-background-default) 0%,
77
+ var(--surface-background-default) 70.5%,
78
+ var(--border-core-default) 70.5%,
79
+ var(--border-core-default) 72.5%,
80
+ var(--text-body-muted) 72.5%,
81
+ var(--text-body-muted) 100%
82
+ );
83
+ }
84
+ }
85
+ //CSS for large height rows
86
+ .cats-tableArea.large {
87
+ #table_scroll.global::-webkit-scrollbar-button:single-button:vertical:decrement {
88
+ height: rem(71px);
89
+ background:
90
+ url("/images/chevron-up.svg") bottom / rem(15px) no-repeat,
91
+ linear-gradient(
92
+ to bottom,
93
+ rgb(240, 240, 240) 0%,
94
+ rgb(240, 240, 240) 78.8%,
95
+
96
+ var(--border-core-default) 78.8%,
97
+ var(--border-core-default) 81.7%,
98
+
99
+ var(--surface-background-subtle) 81.7%,
100
+ var(--surface-background-subtle) 100%
101
+ );
102
+ &:hover {
103
+ background:
104
+ url("/images/chevron-up.svg") bottom / rem(15px) no-repeat,
105
+ linear-gradient(
106
+ to bottom,
107
+ var(--surface-background-default) 0%,
108
+ var(--surface-background-default) 78.8%,
109
+
110
+ var(--border-core-default) 78.8%,
111
+ var(--border-core-default) 81.7%,
112
+
113
+ var(--text-body-muted) 81.7%,
114
+ var(--text-body-muted) 100%
115
+ );
116
+ }
117
+ }
118
+ }
119
+
120
+ // ---------------- CUSTOM RADIO INPUT START HERE--------
121
+ .cats-radio-option {
122
+ display: flex;
123
+ @include box(rem(16px), rem(16px));
124
+ [type="radio"]:not(:checked)[disabled] + .label {
125
+ color: var(--text-body-muted);
126
+ cursor: default;
127
+ &::before {
128
+ background-color: var(--surface-background-subtle);
129
+ }
130
+ }
131
+ [type="radio"]:is(:checked)[disabled] + .label {
132
+ color: var(--text-body-muted);
133
+ cursor: default;
134
+ &::before {
135
+ border-color: var(--border-core-muted);
136
+ }
137
+ &::after {
138
+ background-color: var(--surface-background-subtle);
139
+ }
140
+ }
141
+ %check-style {
142
+ content: "";
143
+ position: absolute;
144
+ @include positioning(0, 0);
145
+ @include box(rem(16px), rem(16px));
146
+ background: var(--surface-background-canvas);
147
+ }
148
+ [type="radio"]:checked,
149
+ [type="radio"]:not(:checked) {
150
+ position: absolute;
151
+ left: -9999px;
152
+ }
153
+ [type="radio"]:checked + .label,
154
+ [type="radio"]:not(:checked) + .label {
155
+ position: relative;
156
+ padding-left: rem(24px);
157
+ cursor: pointer;
158
+ display: inline-block;
159
+ color: var(--text-heading-primary);
160
+ line-height: rem(16px);
161
+ }
162
+ [type="radio"]:checked + .label:before {
163
+ @extend %check-style;
164
+ @include border(
165
+ $width: rem(1.5px),
166
+ $color: var(--border-interaction-focus),
167
+ $radius: 100%
168
+ );
169
+ }
170
+ [type="radio"]:not(:checked) + .label:before {
171
+ @extend %check-style;
172
+ @include border($width: rem(1.5px), $radius: 100%);
173
+ }
174
+ [type="radio"]:checked + .label:after,
175
+ [type="radio"]:not(:checked) + .label:after {
176
+ content: "";
177
+ @include box(rem(6px), rem(6px));
178
+ background: var(--surface-action-default);
179
+ position: absolute;
180
+ @include positioning(rem(5px), rem(5px));
181
+ border-radius: 100%;
182
+ transition: all 0.2s ease;
183
+ }
184
+ [type="radio"]:not(:checked) + .label:after {
185
+ opacity: 0;
186
+ transform: scale(0);
187
+ }
188
+ [type="radio"]:checked + .label:after {
189
+ opacity: 1;
190
+ transform: scale(1);
191
+ }
192
+ }
193
+
194
+ // ---------------- CUSTOM CHECKBOX INPUT START HERE--------
195
+ .cats-checkbox_container {
196
+ @include flex(flex-start, center, rem(8px));
197
+ @include fontStyle(var(--fs-14), rem(20px), 400);
198
+ color: var(--text-heading-primary);
199
+ // --- Disabled (check & uncheck) ---
200
+ input[type="checkbox"].custom_check_box,
201
+ input[type="checkbox"].custom_check_box:checked {
202
+ &[disabled] {
203
+ cursor: default;
204
+ background-color: var(--text-body-muted);
205
+ border-color: var(--border-core-strong);
206
+ & + span {
207
+ color: var(--text-body-muted);
208
+ }
209
+ }
210
+ }
211
+ input[type="checkbox"].custom_check_box {
212
+ appearance: none;
213
+ -webkit-appearance: none;
214
+ @include box(rem(16px), rem(16px));
215
+ min-width: rem(16px);
216
+ @include border();
217
+ cursor: pointer;
218
+ background-color: var(--surface-background-canvas);
219
+ position: relative;
220
+ transition: all 0.2s ease;
221
+
222
+ // --- Default (unchecked) ---
223
+ &::after {
224
+ content: "";
225
+ display: none;
226
+ position: absolute;
227
+ @include positioning(rem(-1px), rem(-1px));
228
+ @include box(rem(16px), rem(16px));
229
+ background-size: auto;
230
+ background-repeat: no-repeat;
231
+ background-position: center;
232
+ }
233
+ // --- Checked State ---
234
+ &:checked {
235
+ border-color: var(--border-interaction-focus);
236
+ background-color: var(--surface-action-default);
237
+ &::after {
238
+ display: block;
239
+ background-image: url("/images/check-white.svg");
240
+ background-size: rem(8px) rem(6px);
241
+ }
242
+ }
243
+ // --- Indeterminate (minus) state ---
244
+ &:indeterminate {
245
+ border-color: var(--border-interaction-focus);
246
+ background-color: var(--surface-background-canvas);
247
+ &::after {
248
+ display: block;
249
+ top: 0;
250
+ background-image: url("/images/minus-blue.svg");
251
+ background-size: rem(7px) rem(1px);
252
+ }
253
+ }
254
+ }
255
+ }
256
+
257
+ // ---------------- CUSTOM SINGLE SELECT DROPDOWN START HERE--------
258
+ .text_filter_section {
259
+ position: relative;
260
+ width: 100%;
261
+ .single_select_dropdown {
262
+ @include flex(space-between, center);
263
+ @include box(100%, rem(40px));
264
+ @include border();
265
+ padding: rem(10px) rem(12px);
266
+ @include fontStyle(var(--fs-14), rem(20px));
267
+ background-color: var(--surface-background-canvas);
268
+ color: var(--text-heading-primary);
269
+ cursor: pointer;
270
+
271
+ .left_details {
272
+ @include flex("", center);
273
+ @include box(calc(100% - rem(20px)), "");
274
+ }
275
+ .arrow_icon {
276
+ img {
277
+ max-width: rem(20px);
278
+ }
279
+ }
280
+ }
281
+
282
+ .dropdown_list {
283
+ @include border();
284
+ width: 100%;
285
+ max-height: rem(172px);
286
+ overflow: auto;
287
+ position: absolute;
288
+ z-index: 2;
289
+ background: var(--surface-background-canvas);
290
+ box-shadow: rem(0px) rem(12px) rem(16px) rem(-4px) var(--box-shadow);
291
+ top: rem(40px);
292
+
293
+ ul {
294
+ list-style-type: none;
295
+ padding: rem(4px) 0;
296
+
297
+ &:has(.no_data) li:hover {
298
+ background-color: unset;
299
+ cursor: default;
300
+ }
301
+ li {
302
+ height: rem(40px);
303
+ @include flex(space-between, center);
304
+ @include fontStyle(var(--fs-14), rem(20px));
305
+ padding: rem(10px) rem(12px);
306
+ cursor: pointer;
307
+ color: var(--text-heading-primary);
308
+ &:hover {
309
+ background-color: var(--surface-background-default);
310
+ }
311
+ &.disabled_option {
312
+ opacity: 0.3;
313
+ pointer-events: none;
314
+ }
315
+ }
316
+ }
317
+ }
318
+ }
319
+
320
+ // --------------Searchbox with icon-------------
321
+ .search_input {
322
+ position: relative;
323
+ @include box(100%, rem(40px));
324
+ @include border();
325
+ padding: rem(10px) rem(12px);
326
+ background-color: var(--surface-background-canvas);
327
+ @include flex(flex-start, center, rem(4px));
328
+
329
+ img {
330
+ @include box(rem(20px), rem(20px));
331
+ opacity: 0.5;
332
+ }
333
+ input {
334
+ @include box(100%, 100%);
335
+ border: 0;
336
+ @include fontStyle(var(--fs-14), rem(20px), 400);
337
+ color: var(--text-heading-primary);
338
+ &::placeholder {
339
+ color: var(--text-heading-secondary);
340
+ }
341
+ }
342
+ }
343
+
344
+ // --------------Toggle Switch css-------------
345
+ .table_switch_wrapper {
346
+ display: flex;
347
+ .switch {
348
+ position: relative;
349
+ display: inline-block;
350
+ @include box(rem(28px), rem(16px)); /* default size */
351
+ input {
352
+ display: none;
353
+ }
354
+ .slider {
355
+ position: absolute;
356
+ cursor: pointer;
357
+ background-color: var(--surface-background-subtle);
358
+ border-radius: rem(16px);
359
+ inset: 0;
360
+ transition: 0.3s;
361
+ &:before {
362
+ content: "";
363
+ position: absolute;
364
+ @include box(rem(12px), rem(12px));
365
+ left: rem(2px);
366
+ bottom: rem(2px);
367
+ background-color: var(--surface-background-canvas);
368
+ border-radius: 50%;
369
+ transition: 0.3s;
370
+ box-shadow: 0 rem(0.8px) rem(2.4px) 0 var(--box-shadow);
371
+ }
372
+ }
373
+
374
+ input:checked + .slider {
375
+ background-color: var(--surface-action-default);
376
+ &:before {
377
+ transform: translateX(rem(12px));
378
+ }
379
+ }
380
+ }
381
+ }
382
+ .cats-tableArea.large {
383
+ .table_wrapper {
384
+ table {
385
+ tbody {
386
+ tr {
387
+ :host .table_switch_wrapper {
388
+ .switch {
389
+ @include box(rem(38px), rem(20px)); /* big size */
390
+ .slider {
391
+ &:before {
392
+ @include box(rem(16px), rem(16px));
393
+ }
394
+ }
395
+ input:checked + .slider {
396
+ &:before {
397
+ transform: translateX(rem(18px));
398
+ }
399
+ }
400
+ }
401
+ }
402
+ }
403
+ }
404
+ }
405
+ }
406
+ }
407
+
408
+ .cats-text-primary {
409
+ color: var(--text-link-default);
410
+ }
411
+ .cats-text-danger {
412
+ color: var(--semantics-error-default);
413
+ }
414
+ //---------------Text Trunctae CSS -----------
415
+
416
+ .ellipsis,
417
+ .textTruncate {
418
+ white-space: nowrap;
419
+ overflow: hidden;
420
+ text-overflow: ellipsis;
421
+ /* max-width: rem(200px); */
422
+ }
423
+
424
+ .tooltip-trigger {
425
+ cursor: default;
426
+ }