ms-data-grid 0.0.59 → 0.0.60

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 (64) hide show
  1. package/esm2022/lib/data-grid/data-grid.component.mjs +5069 -0
  2. package/esm2022/lib/data-grid/statuses.mjs +45 -0
  3. package/esm2022/lib/data-grid.module.mjs +27 -0
  4. package/esm2022/lib/directives/cell-render-init.directive.mjs +67 -0
  5. package/esm2022/lib/directives/cellHost.directive.mjs +16 -0
  6. package/esm2022/lib/pipes/filter.pipe.mjs +28 -0
  7. package/esm2022/lib/services/common.service.mjs +259 -0
  8. package/esm2022/lib/services/copy-service.service.mjs +222 -0
  9. package/esm2022/lib/services/export.service.mjs +149 -0
  10. package/esm2022/lib/services/split-columns.service.mjs +143 -0
  11. package/esm2022/ms-data-grid.mjs +5 -0
  12. package/esm2022/public-api.mjs +6 -0
  13. package/fesm2022/ms-data-grid.mjs +6006 -0
  14. package/fesm2022/ms-data-grid.mjs.map +1 -0
  15. package/index.d.ts +5 -0
  16. package/lib/data-grid/data-grid.component.d.ts +564 -0
  17. package/lib/data-grid/statuses.d.ts +3 -0
  18. package/lib/data-grid.module.d.ts +15 -0
  19. package/lib/directives/cell-render-init.directive.d.ts +18 -0
  20. package/lib/directives/cellHost.directive.d.ts +8 -0
  21. package/lib/pipes/filter.pipe.d.ts +7 -0
  22. package/lib/services/common.service.d.ts +18 -0
  23. package/lib/services/copy-service.service.d.ts +14 -0
  24. package/lib/services/export.service.d.ts +24 -0
  25. package/lib/services/split-columns.service.d.ts +9 -0
  26. package/package.json +51 -38
  27. package/{src/public-api.ts → public-api.d.ts} +2 -6
  28. package/ng-package.json +0 -18
  29. package/src/lib/css/bootstrap.css +0 -12043
  30. package/src/lib/data-grid/animations.ts +0 -267
  31. package/src/lib/data-grid/data-grid.component.html +0 -5724
  32. package/src/lib/data-grid/data-grid.component.scss +0 -2126
  33. package/src/lib/data-grid/data-grid.component.spec.ts +0 -28
  34. package/src/lib/data-grid/data-grid.component.ts +0 -5780
  35. package/src/lib/data-grid/statuses.ts +0 -49
  36. package/src/lib/data-grid.module.ts +0 -21
  37. package/src/lib/data-grid.service.spec.ts +0 -16
  38. package/src/lib/data-grid.service.ts +0 -9
  39. package/src/lib/directives/cell-render-init.directive.spec.ts +0 -11
  40. package/src/lib/directives/cell-render-init.directive.ts +0 -65
  41. package/src/lib/directives/cellHost.directive.spec.ts +0 -11
  42. package/src/lib/directives/cellHost.directive.ts +0 -10
  43. package/src/lib/directives/draggable-header.directive.spec.ts +0 -11
  44. package/src/lib/directives/draggable-header.directive.ts +0 -172
  45. package/src/lib/pipes/filter.pipe.spec.ts +0 -11
  46. package/src/lib/pipes/filter.pipe.ts +0 -22
  47. package/src/lib/services/cell-selection.service.spec.ts +0 -16
  48. package/src/lib/services/cell-selection.service.ts +0 -205
  49. package/src/lib/services/common.service.spec.ts +0 -16
  50. package/src/lib/services/common.service.ts +0 -306
  51. package/src/lib/services/copy-service.service.spec.ts +0 -16
  52. package/src/lib/services/copy-service.service.ts +0 -252
  53. package/src/lib/services/drag-drp.service.spec.ts +0 -16
  54. package/src/lib/services/drag-drp.service.ts +0 -58
  55. package/src/lib/services/export.service.spec.ts +0 -16
  56. package/src/lib/services/export.service.ts +0 -189
  57. package/src/lib/services/split-columns.service.spec.ts +0 -16
  58. package/src/lib/services/split-columns.service.ts +0 -148
  59. package/src/lib/services/swap-columns.service.spec.ts +0 -16
  60. package/src/lib/services/swap-columns.service.ts +0 -162
  61. package/src/typings.d.ts +0 -4
  62. package/tsconfig.lib.json +0 -19
  63. package/tsconfig.lib.prod.json +0 -10
  64. package/tsconfig.spec.json +0 -14
@@ -1,2126 +0,0 @@
1
- @import "bootstrap/dist/css/bootstrap.min.css";
2
-
3
- $border-color: #d9d9db;
4
- $header-background-color: #efe1e1;
5
-
6
- .data-grid-table-wrapper {
7
- height: 100%;
8
- width: 100%;
9
- border: 1px solid $border-color;
10
- border-radius: 12px;
11
- // overflow: hidden;
12
- position: relative;
13
- }
14
-
15
- // .transition{
16
- // transition: min-width 0.3s ease;
17
- // }
18
-
19
- .data-grid-header {
20
- position: sticky;
21
- top: 0;
22
- // z-index: 2;
23
- }
24
-
25
- .data-grid-header {
26
- display: flex;
27
- }
28
-
29
- .header-row {
30
- display: grid;
31
- width: 100%;
32
- }
33
-
34
- .header-cell {
35
- display: flex;
36
- align-items: center;
37
- position: relative;
38
- width: 100%;
39
- padding: 8px 0px 8px 8px;
40
- font-weight: bold;
41
- border-bottom: 1px solid $border-color;
42
- white-space: nowrap;
43
- min-width: 80px;
44
- font-weight: 600;
45
-
46
- // font-size: 16px;
47
- .filter-applied-on-text {
48
- color: #5d9cff !important
49
- }
50
-
51
- // .filter-applied-on-text::after {
52
- // content: '';
53
- // position: absolute;
54
- // top: 2px;
55
- // right: 4px;
56
- // width: 6px;
57
- // height: 6px;
58
- // background-color: rgb(100, 131, 255);
59
- // border-radius: 50%;
60
- // }
61
- }
62
-
63
- .filter-cell {
64
- padding: 4px !important;
65
- display: flex;
66
- align-items: center;
67
- gap: 8px;
68
- width: 100%;
69
-
70
- .filter-applied {
71
- background-color: #bddef9;
72
- }
73
- }
74
-
75
- .border-right {
76
- border-right: 1px solid $border-color;
77
- }
78
-
79
- .merged-grid {
80
- display: grid;
81
- grid-auto-rows: 40px;
82
- border-bottom: 1px solid #ccc;
83
- }
84
-
85
- .span-two-rows {
86
- grid-row: span 2;
87
- display: flex;
88
- justify-content: space-between;
89
- align-items: center;
90
- }
91
-
92
- .group-header {
93
- display: flex;
94
- justify-content: space-between;
95
- position: relative;
96
- }
97
-
98
- .group-header-content {
99
- position: sticky;
100
- left: 10px;
101
- overflow: hidden;
102
- text-overflow: ellipsis;
103
- }
104
-
105
- .resize-handle {
106
- width: 6px;
107
- cursor: e-resize;
108
- top: 0;
109
- right: 0;
110
- // z-index: 20;
111
- top: 0;
112
- color: rgba(0, 0, 0, 0.15);
113
- margin-right: 4px;
114
- }
115
-
116
- .group-header {
117
- .resize-handle {
118
- top: 25%;
119
- }
120
- }
121
-
122
- .group-column-wrapper {
123
- // display: grid;
124
- // padding: 0px 0px 1px 0px;
125
- // gap: 0px;
126
- // margin: 0px;
127
- }
128
-
129
- .h-100 {
130
- height: 100%;
131
- }
132
-
133
- .data-grid-body {
134
- // width: 100%;
135
- position: relative;
136
- overflow-y: auto;
137
- overflow-x: hidden;
138
- // top: 31px;
139
- }
140
-
141
- .cell {
142
- padding: 8px;
143
- // border: 1px solid #ddd;
144
- white-space: nowrap;
145
- overflow: hidden;
146
- text-overflow: ellipsis;
147
- height: 100%;
148
- display: flex;
149
- align-items: center;
150
- }
151
-
152
- .data-grid-row {
153
- display: flex;
154
- width: 100%;
155
- min-width: max-content;
156
- align-items: center;
157
- border-bottom: 1px solid $border-color;
158
- // transition: background-color 0.4s ease;
159
- }
160
-
161
- .hovered-row {
162
- background-color: #ccc;
163
- }
164
-
165
- .checkbox-row {
166
- border-bottom: $border-color;
167
- }
168
-
169
- .w-100 {
170
- width: 100%;
171
- }
172
-
173
- // New Layout Css
174
-
175
- .data-grid-header-wrapper {
176
- display: flex;
177
- position: relative;
178
- overflow: hidden;
179
- user-select: none;
180
- }
181
-
182
- .data-grid-header {
183
- display: flex;
184
- position: relative;
185
- // grid-auto-rows: minmax(40px, auto);
186
- z-index: 1;
187
- }
188
-
189
- .left-pinned,
190
- .right-pinned {
191
- position: sticky;
192
- top: 0;
193
- // z-index: 2;
194
- // background: white; /* Or your header bg */
195
- }
196
-
197
- .right-pinned-header {
198
- position: absolute;
199
- right: 0;
200
- border-left: 1px solid $border-color;
201
- z-index: unset;
202
- }
203
-
204
- .left-pinned {
205
- left: 0;
206
- // box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.15); /* Optional shadow */
207
- // border-right: 1px solid $border-color;
208
- }
209
-
210
- .right-pinned {
211
- right: 0;
212
- // box-shadow: -2px 0 4px rgba(0, 0, 0, 0.1); /* Optional shadow */'
213
- border-left: 1px solid $border-color;
214
- }
215
-
216
-
217
- .center-scrollable {
218
- z-index: unset !important;
219
- overflow-x: auto;
220
- overflow-y: visible;
221
- white-space: nowrap;
222
- // min-width: 100%;
223
-
224
- /* Hide scrollbar for Webkit (Chrome, Safari) */
225
- &::-webkit-scrollbar {
226
- display: none;
227
- }
228
-
229
- /* Hide scrollbar for Firefox */
230
- scrollbar-width: none;
231
-
232
- /* Hide scrollbar for IE/Edge */
233
- -ms-overflow-style: none;
234
- }
235
-
236
- // Table Body CSS
237
-
238
- .fake-scrollbar-vertical {
239
- // will-change: transform;
240
- // transform: translateZ(0);
241
- // scroll-behavior: auto;
242
- }
243
-
244
- .data-grid-body-wrapper {
245
- // will-change: transform;
246
- // transform: translateZ(0);
247
- // scroll-behavior: auto;
248
- user-select: none;
249
- display: flex;
250
- // & {
251
- // &::-webkit-scrollbar {
252
- // display: none;
253
- // }
254
-
255
- // /* Hide scrollbar for Firefox */
256
- // scrollbar-width: none;
257
-
258
- // /* Hide scrollbar for IE/Edge */
259
- // -ms-overflow-style: none;
260
- // }
261
- }
262
-
263
- .center-scrollable-body {
264
- overflow-x: auto;
265
-
266
- // overflow: hidden;
267
- &::-webkit-scrollbar {
268
- display: none;
269
- }
270
-
271
- /* Hide scrollbar for Firefox */
272
- scrollbar-width: none;
273
-
274
- /* Hide scrollbar for IE/Edge */
275
- -ms-overflow-style: none;
276
- }
277
-
278
- .left-pinned-body,
279
- .right-pinned-body {
280
- position: sticky;
281
- top: 0;
282
- z-index: unset;
283
- background: white;
284
-
285
- /* Or your header bg */
286
- &::-webkit-scrollbar {
287
- display: none;
288
- }
289
-
290
- /* Hide scrollbar for Firefox */
291
- scrollbar-width: none;
292
-
293
- /* Hide scrollbar for IE/Edge */
294
- -ms-overflow-style: none;
295
- }
296
-
297
- .left-pinned-body {
298
- left: 0;
299
- // box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.15); /* Optional shadow */
300
- // border-right: 1px solid $border-color;
301
- }
302
-
303
- .border-end {
304
- border-right: 1px solid $border-color !important;
305
- }
306
-
307
- .right-pinned-body {
308
- right: 0;
309
- // box-shadow: -2px 0 4px rgba(0, 0, 0, 0.1); /* Optional shadow */
310
- border-left: 1px solid $border-color;
311
- }
312
-
313
- .fake-scroll-bar {
314
- height: 14px;
315
- overflow: scroll;
316
- margin-bottom: 10px;
317
- }
318
-
319
- .text-ellipsis {
320
- overflow: hidden;
321
- text-overflow: ellipsis;
322
- }
323
-
324
- .select-all-checkbox-cell {
325
- width: 50px;
326
- display: flex;
327
- justify-content: center;
328
- align-items: center;
329
- height: 100%;
330
- border-right: 1px solid $border-color;
331
-
332
- input {
333
- width: 16px;
334
- height: 14px;
335
- }
336
- }
337
-
338
- .border-below {
339
- border-bottom: 1px solid $border-color !important;
340
- }
341
-
342
- .three-dots {
343
- width: 22px;
344
- height: 22px;
345
- display: flex;
346
- justify-content: center;
347
- align-items: center;
348
- border-radius: 3px;
349
- margin-right: 8px;
350
- cursor: pointer;
351
-
352
- &:hover {
353
- background-color: #ccc !important;
354
- }
355
- }
356
-
357
- // .odd-row{
358
- // background-color: #f9ecec !important;
359
- // }
360
-
361
- .filter-icon-wrapper {
362
- min-height: 22px;
363
- max-height: 22px;
364
- min-width: 22px;
365
- max-width: 22px;
366
- display: flex;
367
- justify-content: center;
368
- align-items: center;
369
- border-radius: 3px;
370
- cursor: pointer;
371
- transition: background-color 0.3s ease;
372
-
373
- &:hover {
374
- background-color: #ccc;
375
- }
376
- }
377
-
378
- .column-menu,
379
- .filter-menu {
380
- box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.15);
381
-
382
- border-radius: 4px;
383
- }
384
-
385
- .column-menu {
386
- background: white;
387
- width: 100%;
388
- width: 240px;
389
- border: 1px solid #ddd;
390
- box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.15);
391
- border: 1px solid $border-color;
392
- padding: 4px 0;
393
- font-size: 14px;
394
- position: fixed;
395
- }
396
-
397
- .column-menu-item {
398
- padding: 8px 12px;
399
- cursor: pointer;
400
- display: flex;
401
- align-items: center;
402
- transition: background-color 0.2s ease;
403
- }
404
-
405
- .column-menu-item:hover {
406
- background-color: rgb(222, 235, 247);
407
- }
408
-
409
- /* Submenu */
410
- .pin-parent {
411
- position: relative;
412
- width: 100% !important;
413
- }
414
-
415
- .column-submenu {
416
- position: absolute;
417
- top: 0;
418
- left: 100%;
419
- background: white;
420
- border: 1px solid #ddd;
421
- width: 130px;
422
- box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.15);
423
- border: 1px solid $border-color;
424
- display: none;
425
- padding: 4px 0;
426
- z-index: 10;
427
- border-radius: 4px;
428
- }
429
-
430
- .pin-parent:hover .column-submenu {
431
- display: block;
432
- }
433
-
434
- // Filter Menue Container
435
-
436
- .filter-menu-container {
437
- position: fixed;
438
- width: 210px;
439
- background: white;
440
- border: 1px solid #ddd;
441
- border-radius: 4px;
442
- padding: 12px;
443
- box-shadow: 0 0 16px 0 rgba(0, 0, 0, 0.15);
444
- border: 1px solid $border-color;
445
- z-index: 1000;
446
- font-size: 14px;
447
- }
448
-
449
- .filter-menu-header {
450
- font-weight: 600;
451
- margin-bottom: 10px;
452
- }
453
-
454
- .filter-dropdown-section {
455
- max-height: 350px;
456
- overflow-y: auto;
457
- }
458
-
459
- .dropdown-options {
460
- // max-height: 140px;
461
- overflow-y: auto;
462
- scrollbar-width: thin;
463
- height: 100%;
464
- }
465
-
466
- .filter-text-section select,
467
- .filter-text-section input {
468
- width: 100%;
469
- }
470
-
471
- // .filter-menu-actions {
472
- // padding-top: 10px;
473
- // }
474
- .filter-radio-inputs {
475
- width: 14px !important;
476
- height: 14px !important;
477
- }
478
-
479
- .right-menu {
480
- border-left: 1px solid $border-color;
481
- font-size: 14px;
482
- // transition: width 0.3s ease;
483
- }
484
-
485
- .border-start {
486
- border-left: 1px solid $border-color !important;
487
- }
488
-
489
- // Side Menu
490
-
491
- .column-panel-item {
492
- font-size: 0.875rem;
493
- color: #333;
494
- }
495
-
496
- .toggle-icon {
497
- cursor: pointer;
498
- transition: transform 0.2s ease;
499
- }
500
-
501
- .toggle-icon.rotate {
502
- transform: rotate(90deg);
503
- }
504
-
505
- .grab-icon {
506
- cursor: grab;
507
- color: #6c757d;
508
- }
509
-
510
- .text-truncate {
511
- overflow: hidden;
512
- text-overflow: ellipsis;
513
- white-space: nowrap;
514
- }
515
-
516
- .cursor-pointer {
517
- cursor: pointer;
518
- }
519
-
520
- .pivot-mode {
521
- height: 48px;
522
- }
523
-
524
- .chevron-wrapper {
525
- width: 30px;
526
- height: 20px;
527
- cursor: pointer;
528
- border-radius: 3px;
529
- display: flex;
530
- justify-content: center;
531
- align-items: center;
532
- transition: background-color 0.3s ease;
533
- margin-right: 8px;
534
-
535
- &:hover {
536
- background-color: #cac7c7;
537
- }
538
-
539
- i {
540
- font-size: 14px;
541
- }
542
- }
543
-
544
- .column-panel-body {
545
- height: 70%;
546
- overflow: auto;
547
- scrollbar-width: thin;
548
- }
549
-
550
- .side-menue-text {
551
- transform: rotate(90deg);
552
- position: relative;
553
- font-weight: bold;
554
- margin-top: 40px;
555
- }
556
-
557
- .columns-button {
558
- padding-top: 20px;
559
- padding-bottom: 35px;
560
- width: 29px;
561
- }
562
-
563
- .fake-scroll-content {
564
- height: 12px;
565
- }
566
-
567
- .fake-scrollbar {
568
- width: 25px;
569
-
570
- div {
571
- min-width: 1px;
572
- }
573
- }
574
-
575
- .fake-horizintal-scrollbar {
576
- div {
577
- min-height: 1px;
578
- }
579
- }
580
-
581
- .side-filter-columns-wrapper {
582
- height: calc(100% - 25px);
583
- }
584
-
585
- // Center Overaly for showing the chose columns menu
586
-
587
- .custom-modal-overlay {
588
- position: fixed;
589
- top: 0;
590
- left: 0;
591
- width: 100%;
592
- height: 100%;
593
- overflow: hidden;
594
- display: flex;
595
- justify-content: center;
596
- align-items: center;
597
- z-index: 1050;
598
-
599
- .moda-header {
600
- background-color: #f8f8f8;
601
- }
602
- }
603
-
604
- .custom-modal-content {
605
- background-color: #fff;
606
- border-radius: 8px;
607
- min-width: 300px;
608
- max-width: 400px;
609
- box-shadow: 0 5px 20px #0000004d;
610
- }
611
-
612
- .overlay-scrollable {
613
- height: 250px;
614
- overflow: auto;
615
- }
616
-
617
- .footer-row {
618
- border-top: 1px solid $border-color;
619
- padding-left: 32px;
620
- }
621
-
622
- .fw-500 {
623
- font-weight: 500 !important;
624
- }
625
-
626
- // ::ng-deep cdk-virtual-scroll-viewport.d-none-scrollbar {
627
- // scrollbar-width: none; /* Firefox */
628
- // }
629
-
630
- // ::ng-deep cdk-virtual-scroll-viewport.d-none-scrollbar::-webkit-scrollbar {
631
- // display: none; /* Chrome, Safari */
632
- // }
633
-
634
- .fake-horizintal-scrollbar {
635
- position: relative;
636
- bottom: 17px;
637
- overflow-x: auto;
638
- overflow-y: hidden;
639
- height: 17px;
640
- }
641
-
642
- .border-dashed {
643
- border: 1px dashed $border-color;
644
- }
645
-
646
- .cdk-drag-preview {
647
- box-sizing: border-box !important;
648
- border-radius: 4px !important;
649
- box-shadow: 0 5px 5px -3px rgba(0, 0, 0, 0.2),
650
- 0 8px 10px 1px rgba(0, 0, 0, 0.14), 0 3px 14px 2px rgba(0, 0, 0, 0.12) !important;
651
- z-index: 9999 !important;
652
- background-color: #f3f4f5 !important;
653
- border: 1px solid $border-color !important;
654
- z-index: 9999 !important;
655
- }
656
-
657
- .data-grid-header-wrapper ::ng-deep .cdk-drag-placeholder {
658
- display: block !important;
659
- background: #fff !important;
660
- opacity: 1 !important;
661
- }
662
-
663
- .cdk-drag-animating {
664
- transition: transform 250ms cubic-bezier(0, 0, 0.2, 1) !important;
665
- }
666
-
667
- .top-row-grouping-placeholder {
668
- display: flex;
669
- align-items: center;
670
- border-radius: 12px;
671
- font-size: 14px;
672
- padding-inline: 6px;
673
- // opacity: 0.6;
674
- // background-color: #eaeaeb;
675
- border: 1px solid $border-color;
676
-
677
- .bi-x {
678
- cursor: pointer;
679
- color: #7a7a7a;
680
-
681
- &:hover {
682
- color: #111;
683
- }
684
- }
685
- }
686
-
687
- .right-pinned-body-wrapper {
688
- position: absolute;
689
- right: 0;
690
- }
691
-
692
- .actions-dropdown {
693
- position: absolute;
694
- right: 200px;
695
- z-index: 1050;
696
- background-color: #fff;
697
- border-radius: 8px !important;
698
- cursor: default;
699
- }
700
-
701
- .bg-fff {
702
- background-color: #fff;
703
- }
704
-
705
- .actions-dropdown-setting {
706
- right: 250px;
707
- }
708
-
709
- .action-button {
710
- background-color: #007cf5 !important;
711
- border-radius: 8px !important;
712
- padding: 8px 16px !important;
713
- font-size: 14px;
714
- height: 32px;
715
- align-items: center;
716
- }
717
-
718
- .global-search {
719
- max-width: 380px !important;
720
- display: flex !important;
721
- align-items: center !important;
722
-
723
- span {
724
- margin-top: -4px !important;
725
- }
726
-
727
- input {
728
- padding-left: 28px;
729
- border-radius: 8px !important;
730
-
731
- &:focus {
732
- outline: none !important;
733
- box-shadow: none !important;
734
- }
735
- }
736
- }
737
-
738
- .active .top-icon {
739
- ::ng-deep svg path {
740
- stroke: #007cf5 !important;
741
- }
742
- }
743
-
744
- .dropdown-menu {
745
- background-color: #fff !important;
746
- border: 1px solid $border-color !important;
747
- border-radius: 8px !important;
748
- }
749
-
750
- .custom-menu {
751
- width: 220px;
752
- border-radius: 8px;
753
- padding: 4px 0;
754
- background-color: #fff;
755
- }
756
-
757
- .custom-menu .dropdown-item {
758
- font-size: 14px;
759
- padding: 8px 14px;
760
- }
761
-
762
- .custom-menu .dropdown-item:hover {
763
- background-color: #f5f5f5;
764
- border-radius: 6px;
765
- }
766
-
767
- .table-layout {
768
- right: 0;
769
- background: #fff;
770
- border-radius: 8px !important;
771
- }
772
-
773
- .actions-dropdown,
774
- .table-layout,
775
- .custom-menu,
776
- .dropdown-menu {
777
- background: white;
778
- border-radius: 8px !important;
779
- border: 1px solid #ccc !important;
780
- background-color: #fff;
781
- }
782
-
783
- .preview-box {
784
- width: 40px;
785
- height: 10px;
786
- border-radius: 3px;
787
- background-color: transparent;
788
- transition: background-color 0.2s ease-in-out;
789
- }
790
-
791
- .btn-check:checked+label .preview-box {
792
- background-color: var(--bs-primary);
793
- }
794
-
795
- .preview-box {
796
- width: 40px;
797
- height: 10px;
798
- border-radius: 3px;
799
- border: 2px solid transparent;
800
- transition: border-color 0.2s ease-in-out;
801
- }
802
-
803
- #small:checked+label .preview-box {
804
- border-color: #007cf5 !important;
805
- background-color: transparent !important;
806
- }
807
-
808
- #medium:checked+label .preview-box {
809
- border-color: #007cf5 !important;
810
- background-color: transparent !important;
811
- }
812
-
813
- #large:checked+label .preview-box {
814
- border-color: #007cf5 !important;
815
- background-color: transparent !important;
816
- }
817
-
818
- .btn-check:checked+.btn {
819
- background-color: transparent !important;
820
- border-color: #007cf5 !important;
821
- }
822
-
823
- .layout-button {
824
- padding: 8px 28px !important;
825
- width: 82px;
826
- border-radius: 8px !important;
827
- // color: #727272 !important;
828
- }
829
-
830
- .show-hide-table-label {
831
- position: sticky;
832
- top: 0px;
833
- z-index: 99;
834
- background: #fff;
835
- }
836
-
837
- .cursor-grap {
838
- cursor: grabbing;
839
- }
840
-
841
- // Pagination Css
842
-
843
- .pagination-container {
844
- display: flex;
845
- align-items: center;
846
- gap: 12px;
847
- font-size: 13px;
848
- color: #333;
849
- }
850
-
851
- .page-size select {
852
- padding: 3px 6px;
853
- border: 1px solid #ccc;
854
- border-radius: 6px;
855
- background: #fff;
856
- font-size: 13px;
857
- }
858
-
859
- .page-info {
860
- margin-left: 10px;
861
- }
862
-
863
- .page-buttons {
864
- display: flex;
865
- gap: 4px;
866
- margin-left: auto;
867
- align-items: center;
868
- }
869
-
870
- .page-buttons button {
871
- padding: 3px 8px;
872
- border: 1px solid #ccc;
873
- background: #fff;
874
- border-radius: 4px;
875
- cursor: pointer;
876
- font-size: 13px;
877
- line-height: 1.2;
878
- }
879
-
880
- .page-buttons button.active {
881
- background: #eee;
882
- font-weight: 600;
883
- }
884
-
885
- .page-buttons button:disabled {
886
- opacity: 0.5;
887
- cursor: not-allowed;
888
- }
889
-
890
- .page-buttons span {
891
- padding: 0 6px;
892
- color: #666;
893
- }
894
-
895
- .page-size .separator {
896
- padding: 0 8px;
897
- border-right: 1px solid #ccc;
898
- /* vertical line */
899
- margin-right: 8px;
900
-
901
- /* space after line */
902
- .actions-dropdown {
903
- position: fixed;
904
- right: 200px;
905
- z-index: 1050;
906
- background-color: #fff;
907
- }
908
- }
909
-
910
- .fs-14px {
911
- font-size: 14px;
912
- }
913
-
914
- .fs-12px {
915
- font-size: 12px !important;
916
- }
917
-
918
- .save-preset-dropdown {
919
- background: #fff;
920
- color: #111 !important;
921
- right: 0;
922
- font-weight: 400 !important;
923
- text-align: left !important;
924
- max-width: 250px !important;
925
- text-wrap: auto !important;
926
- top: 14px;
927
- font-size: 14px !important;
928
- }
929
-
930
- .add-filter-button {
931
- // box-shadow: rgba(0, 0, 0, 0.06) 0px 2px 4px 0px inset;
932
- height: 28px;
933
- cursor: pointer;
934
- border-radius: 4px;
935
-
936
- &:hover {
937
- color: #000 !important;
938
- // ::ng-deep svg path {
939
- // stroke: black !important;
940
- // }
941
- }
942
-
943
- // span {
944
- // margin-top: -4px;
945
- // }
946
- }
947
-
948
- .button-filter {
949
- &:hover {
950
- color: #000 !important;
951
-
952
- ::ng-deep svg path {
953
- stroke: black !important;
954
- }
955
- }
956
- }
957
-
958
- .table-layout {
959
- .dropdown-item {
960
- border-radius: 0 !important;
961
- padding-inline: 16px !important;
962
- font-size: 14px;
963
- padding-block: 6px !important;
964
-
965
- &:hover {
966
- background-color: transparent !important;
967
- }
968
- }
969
- }
970
-
971
- .filter-serach-inpt {
972
- max-height: 230px !important;
973
- overflow: auto;
974
- scrollbar-width: thin;
975
- padding-top: 4px;
976
- background-color: #f7f7f7;
977
- border-color: #dedede;
978
- border-radius: 8px;
979
-
980
- .badge {
981
- color: #007cf5 !important;
982
- background-color: #e6f2ff !important;
983
- border-radius: 8px !important;
984
- padding: 8px !important;
985
- font-weight: 500 !important;
986
- font-size: 12px !important;
987
- height: 24px !important;
988
-
989
- ::ng-deep svg {
990
- cursor: pointer;
991
- }
992
-
993
- ::ng-deep svg:hover path {
994
- stroke: #040081 !important;
995
- }
996
- }
997
-
998
- input {
999
- background-color: #f7f7f7;
1000
- padding: 0;
1001
- height: 26px;
1002
- margin-top: -5px;
1003
- }
1004
- }
1005
-
1006
- .text-filter {
1007
- select {
1008
- border: 0;
1009
-
1010
- option {
1011
- font-size: 14px;
1012
- font-weight: 500;
1013
- }
1014
-
1015
- &:focus {
1016
- border: 0;
1017
- }
1018
- }
1019
-
1020
- input:focus,
1021
- select:focus {
1022
- box-shadow: none !important;
1023
- }
1024
- }
1025
-
1026
- .active-filters {
1027
- background-color: #f7f7f7;
1028
- white-space: nowrap;
1029
- background: #f7f7f7;
1030
- padding-inline: 8px;
1031
- height: 28px;
1032
- font-size: 14px;
1033
- font-weight: 500;
1034
- border-radius: 8px;
1035
- box-shadow: none;
1036
-
1037
- .header-tag {
1038
- white-space: nowrap;
1039
- }
1040
- }
1041
-
1042
- .filter-tags {
1043
- .active {
1044
- background-color: #e6f2ff;
1045
-
1046
- .header-tag {
1047
- color: #007cf5 !important;
1048
- }
1049
- }
1050
- }
1051
-
1052
- .table-cell {
1053
- cursor: pointer;
1054
- width: 100%;
1055
-
1056
- input:focus {
1057
- outline: 0 !important;
1058
- border: 0 !important;
1059
- width: 100% !important;
1060
- box-shadow: none !important;
1061
- }
1062
- }
1063
-
1064
- .active-for-editing {
1065
- // border: 4px solid #007cf5 !important;
1066
- outline: 2.5px solid #007cf5 !important;
1067
- border-radius: 4px;
1068
- border: 0 !important;
1069
- width: 100% !important;
1070
- }
1071
-
1072
- .active-cell {
1073
- outline: none !important;
1074
- box-shadow: inset 0 0 0 1.5px #007cf5;
1075
- }
1076
-
1077
- span[inlineSVG] {
1078
- width: 16px;
1079
- height: 16px;
1080
- display: inline-block;
1081
- }
1082
-
1083
- .cell {
1084
- .dropdown-menu {
1085
- min-width: unset !important;
1086
-
1087
- .item {
1088
- transition: background-color 0.3s ease;
1089
- display: flex;
1090
- align-items: center;
1091
- user-select: none;
1092
-
1093
- &:hover {
1094
- background-color: aliceblue;
1095
- }
1096
- }
1097
- }
1098
-
1099
- .cell-editin-dropdown {
1100
- scrollbar-width: thin !important;
1101
- user-select: none;
1102
- }
1103
- }
1104
-
1105
- .fw-semibold {
1106
- font-weight: 500 !important;
1107
- }
1108
-
1109
- :host ::ng-deep .three-dots-col-menu svg,
1110
- :host ::ng-deep .three-dots-col-menu svg path {
1111
- // fill: #000 !important;
1112
- stroke: #000 !important;
1113
- // stroke-width: 2px !important;
1114
- }
1115
-
1116
- .fs-7 {
1117
- font-size: 12px !important;
1118
- }
1119
-
1120
- .fs-8 {
1121
- font-size: 10px !important;
1122
- }
1123
-
1124
- .all-filters-reset-button:hover {
1125
- opacity: 0.7;
1126
- }
1127
-
1128
- // Full text template
1129
-
1130
- .full-text-box {
1131
- background: #fff;
1132
- position: relative;
1133
- display: flex;
1134
- align-items: center;
1135
- justify-content: center;
1136
- z-index: 1050;
1137
- border: 1px solid #dedede;
1138
- border-radius: 8px;
1139
- padding: 12px 14px;
1140
- box-shadow: 0px 2px 8px 0px #00000026;
1141
- }
1142
-
1143
- .full-text-content {
1144
- border-radius: 8px;
1145
- // max-width: 600px;
1146
- max-height: 70vh;
1147
- overflow: auto;
1148
- white-space: pre-wrap;
1149
- }
1150
-
1151
- .pic {
1152
- border-radius: 50%;
1153
- display: flex;
1154
- align-items: center;
1155
- justify-content: center;
1156
- font-size: 22px;
1157
- }
1158
-
1159
- .pic-comb2 {
1160
- background-color: #fbe7bf;
1161
- color: #fd7f31;
1162
- }
1163
-
1164
- .pic-comb1 {
1165
- background-color: #d9ecbf;
1166
- color: #65b500;
1167
- }
1168
-
1169
- .pic-comb4 {
1170
- background-color: #fdd3d7;
1171
- color: #f64e60;
1172
- }
1173
-
1174
- .w-40px {
1175
- width: 40px;
1176
- }
1177
-
1178
- .h-40px {
1179
- height: 40px;
1180
- }
1181
-
1182
- .pic {
1183
- border-radius: 50%;
1184
- overflow: hidden;
1185
- }
1186
-
1187
- .image-placeholder {
1188
- .pic {
1189
- font-size: 14px;
1190
- font-weight: 600;
1191
- letter-spacing: 0.5px;
1192
- }
1193
- }
1194
-
1195
- .header-cell {
1196
- font-weight: 600;
1197
- }
1198
-
1199
- .header-cell,
1200
- .cell {
1201
- box-sizing: border-box;
1202
- }
1203
-
1204
- .transparent-border-right {
1205
- border-right: 1px solid transparent !important;
1206
- }
1207
-
1208
- .resizing-highlight {
1209
- position: relative;
1210
- }
1211
-
1212
- .resizing-highlight::before {
1213
- content: "";
1214
- position: absolute;
1215
- top: -1px;
1216
- right: -1px;
1217
- width: 2px;
1218
- height: calc(100% + 2px);
1219
- background: #7cb9f6;
1220
- z-index: 1000;
1221
- pointer-events: none;
1222
- }
1223
-
1224
- .resizing-highlight-right {
1225
- position: relative;
1226
- }
1227
-
1228
- .resizing-highlight-right::before {
1229
- content: "";
1230
- position: absolute;
1231
- top: -1px;
1232
- left: -1px;
1233
- width: 2px;
1234
- height: calc(100% + 2px);
1235
- background: #7cb9f6;
1236
- z-index: 1000;
1237
- pointer-events: none;
1238
- }
1239
-
1240
- .resizing-highlight-right:first-child {
1241
- width: 1px;
1242
- }
1243
-
1244
- .editable-header {
1245
- border-bottom: 1px dashed #666;
1246
- }
1247
-
1248
- .muted-text {
1249
- color: #727272 !important;
1250
- }
1251
-
1252
- .context-menu {
1253
- position: fixed;
1254
- display: none;
1255
- background: white;
1256
- border: 1px solid #dcdcdc;
1257
- box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
1258
- z-index: 1000;
1259
- width: 150px;
1260
- border-radius: 8px;
1261
- font-weight: 600;
1262
- }
1263
-
1264
- .context-menu.show {
1265
- display: block;
1266
- }
1267
-
1268
- .context-menu ul {
1269
- list-style: none;
1270
- margin: 0;
1271
- padding: 0;
1272
- }
1273
-
1274
- .context-menu li {
1275
- padding: 10px;
1276
- cursor: pointer;
1277
- color: #99a1b7;
1278
-
1279
- ::ng-deep svg {
1280
- width: 16px;
1281
- height: 16px;
1282
- display: inline-block;
1283
- color: #727272;
1284
- }
1285
-
1286
- ::ng-deep svg path {
1287
- stroke: #727272;
1288
- }
1289
- }
1290
-
1291
- .context-menu li:hover {
1292
- background-color: #f0f0f5 !important;
1293
- }
1294
-
1295
- .invisible {
1296
- visibility: hidden !important;
1297
- }
1298
-
1299
- .fw-500 {
1300
- font-weight: 500 !important;
1301
- }
1302
-
1303
- .taskbar {
1304
- position: fixed;
1305
- // bottom: 0;
1306
- // left: 45%;
1307
- // right: 50%;
1308
- display: flex;
1309
- justify-content: center;
1310
- z-index: 1000;
1311
- // padding: 36px;
1312
-
1313
- .action-btn {
1314
- transition: opacity text-decoration 0.3s ease;
1315
-
1316
- &:hover {
1317
- text-decoration: underline;
1318
- opacity: 0.8;
1319
- }
1320
- }
1321
-
1322
- .delete {
1323
- color: rgb(234, 0, 0);
1324
- }
1325
- }
1326
-
1327
- .selected-count,
1328
- .action-btn,
1329
- .dropdown-content a {
1330
- font-weight: 500;
1331
- font-size: 14px;
1332
- }
1333
-
1334
- .selected-rows-action-bar {
1335
- background-color: #1a1a1a;
1336
- color: white;
1337
- padding: 4px 24px;
1338
- border-radius: 8px;
1339
- display: flex;
1340
- align-items: center;
1341
- justify-content: space-between;
1342
- gap: 24px;
1343
- box-shadow: 0 -4px 12px rgba(0, 0, 0, 0.15);
1344
-
1345
- .btn:active,
1346
- .btn:focus {
1347
- outline: 0 !important;
1348
- border: 0 !important;
1349
- border-color: transparent !important;
1350
- }
1351
-
1352
- .action-btn {
1353
- color: #fff !important;
1354
- }
1355
- }
1356
-
1357
- .cell {
1358
-
1359
- .dropdown-menu,
1360
- .form-select {
1361
- color: #000 !important;
1362
- }
1363
-
1364
- input {
1365
- color: #000 !important;
1366
- }
1367
-
1368
- input::placeholder {
1369
- color: #727272 !important;
1370
- }
1371
-
1372
- .badge {
1373
- border-radius: 50px !important;
1374
- height: 26px;
1375
- align-items: center;
1376
- }
1377
-
1378
- .badge-danger {
1379
- color: #ea5353 !important;
1380
- border: 1px solid #ea5353 !important;
1381
- background-color: #ff00000d !important;
1382
- }
1383
-
1384
- .badge-success {
1385
- background-color: #84ca8130 !important;
1386
- border: 1.5px solid rgb(70, 227, 114) !important;
1387
- color: rgb(70, 227, 114) !important;
1388
- }
1389
-
1390
- .badge-warning {
1391
- background-color: #fff3dc !important;
1392
- color: orange !important;
1393
- border: 1px solid #ffa000 !important;
1394
- }
1395
-
1396
- .badge-info {
1397
- color: #00bad1;
1398
- background-color: #e8fbfd;
1399
- border: 1px solid #00bad1;
1400
- }
1401
-
1402
- .badge-secondary {
1403
- color: #6c757d;
1404
- background-color: #f1f3f5;
1405
- border: 1px solid #6c757d;
1406
- }
1407
-
1408
-
1409
- }
1410
-
1411
- .header-tag ::ng-deep svg path {
1412
- stroke: #727272 !important;
1413
- }
1414
-
1415
- .cross-secondary:hover {
1416
- ::ng-deep svg path {
1417
- stroke: #000 !important;
1418
- }
1419
- }
1420
-
1421
- .disable-sorting {
1422
- pointer-events: none;
1423
- opacity: 0.5;
1424
- }
1425
-
1426
- .rows-grouping-top-container ::ng-deep .cdk-drag-placeholder {
1427
- background-color: transparent !important;
1428
- }
1429
-
1430
- input.is-invalid:focus {
1431
- border: 2.5px solid red !important;
1432
- outline: none;
1433
- }
1434
-
1435
- .table-cell input.is-invalid:focus {
1436
- border: 2.5px solid red !important;
1437
- outline-color: red !important;
1438
- outline: none !important;
1439
- box-shadow: none !important;
1440
- }
1441
-
1442
- .active-for-editing:has(input.is-invalid:focus) {
1443
- outline: none !important;
1444
- box-shadow: none !important;
1445
- border: 0 !important;
1446
- }
1447
-
1448
- .selected-cell,
1449
- .row-selected {
1450
- background-color: #c2e0fe;
1451
- }
1452
-
1453
- // .row-selected{
1454
- // background-color: #8ac5ff !important;
1455
- // // border-right: 1px solid blue !important;
1456
- // }
1457
-
1458
- .first-row-selected {
1459
- border-top: 2px solid #2196f3 !important;
1460
- }
1461
-
1462
- .last-row-selected {
1463
- border-bottom: 2px solid #2196f3 !important;
1464
- }
1465
-
1466
- .left-selection-border {
1467
- border-left: 2px solid #2196f3 !important;
1468
- }
1469
-
1470
- .s-no {
1471
- font-size: 14px;
1472
- font-weight: 500;
1473
- }
1474
-
1475
- .top-border {
1476
- border-top: 2px solid #2196f3 !important;
1477
- }
1478
-
1479
- .bottom-border {
1480
- border-bottom: 2px solid #2196f3 !important;
1481
- }
1482
-
1483
- .left-border {
1484
- border-left: 2px solid #2196f3 !important;
1485
- }
1486
-
1487
- .border-left {
1488
- border-left: 1px solid $border-color;
1489
- }
1490
-
1491
- .right-border {
1492
- border-right: 2px solid #2196f3 !important;
1493
- }
1494
-
1495
- /* Optional: Corner styling */
1496
- .top-left-corner {
1497
- border-top-left-radius: 4px;
1498
- }
1499
-
1500
- .top-right-corner {
1501
- border-top-right-radius: 4px;
1502
- }
1503
-
1504
- .bottom-left-corner {
1505
- border-bottom-left-radius: 4px;
1506
- }
1507
-
1508
- .bottom-right-corner {
1509
- border-bottom-right-radius: 4px;
1510
- }
1511
-
1512
- .flash-bg {
1513
- animation: flashAnim 1000s ease;
1514
- }
1515
-
1516
- @keyframes flashAnim {
1517
- 0% {
1518
- background-color: #48a2fc;
1519
- }
1520
-
1521
- 50% {
1522
- background-color: #c2e0fe;
1523
- }
1524
-
1525
- 100% {
1526
- background-color: #c2e0fe;
1527
- }
1528
- }
1529
-
1530
- .cut-flash-bg {
1531
- animation: cut-flash 0.8s ease;
1532
- }
1533
-
1534
- @keyframes cut-flash {
1535
- 0% {
1536
- background-color: rgba(255, 0, 0, 0.4);
1537
- }
1538
-
1539
- 50% {
1540
- background-color: rgba(255, 0, 0, 0.8);
1541
- }
1542
-
1543
- 100% {
1544
- background-color: #c2e0fe;
1545
- }
1546
- }
1547
-
1548
- .accordion-details .center-section .table .tbody .tr:hover .td {
1549
- background-color: aliceblue !important;
1550
- }
1551
-
1552
- .editing-dropdown-search-input input:focus {
1553
- border: 1px solid #86b7fe !important;
1554
- }
1555
-
1556
- .nested-table {
1557
- .thead {
1558
- position: sticky;
1559
- top: 0;
1560
- }
1561
- }
1562
-
1563
-
1564
- .dropdown-wrapper {
1565
- position: relative;
1566
- display: inline-block;
1567
- }
1568
-
1569
- .btn-icon {
1570
- background: transparent;
1571
- border: 0;
1572
- padding: .25rem .5rem;
1573
- cursor: pointer;
1574
- }
1575
-
1576
- .custom-dropdown-menu {
1577
- position: absolute;
1578
- right: 0;
1579
- top: calc(100% + 6px);
1580
- min-width: 200px;
1581
- list-style: none;
1582
- margin: 0;
1583
- padding: .25rem 0;
1584
- background: #fff !important;
1585
- border: 1px solid rgba(0, 0, 0, 0.08);
1586
- box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08);
1587
- border-radius: .35rem;
1588
- z-index: 1200;
1589
- }
1590
-
1591
- .custom-dropdown-menu .dropdown-item {
1592
- display: block;
1593
- width: 100%;
1594
- padding: .5rem 1rem;
1595
- text-align: left;
1596
- background: transparent;
1597
- border: none;
1598
- }
1599
-
1600
- .custom-dropdown-menu .dropdown-item:hover {
1601
- background: rgba(0, 0, 0, 0.03);
1602
- }
1603
-
1604
- .confirm-block {
1605
- padding: 0;
1606
- }
1607
-
1608
- .center-nested-table {
1609
- .tr:hover {
1610
- .td {
1611
- background-color: aliceblue;
1612
- }
1613
- }
1614
- }
1615
-
1616
- .table ::ng-deep .cdk-drag-placeholder {
1617
- background-color: #fff !important;
1618
- }
1619
-
1620
- .assets-pic {
1621
- border-radius: 8px !important;
1622
- }
1623
-
1624
- .fullscreen-overlay {
1625
- position: fixed;
1626
- top: 0;
1627
- left: 0;
1628
- width: 100vw;
1629
- height: 100vh;
1630
- background: rgba(0, 0, 0, 0.8);
1631
- display: flex;
1632
- align-items: center;
1633
- justify-content: center;
1634
- z-index: 1000;
1635
- cursor: zoom-out;
1636
- }
1637
-
1638
- .fullscreen-img {
1639
- max-width: 90%;
1640
- max-height: 90%;
1641
- border-radius: 8px;
1642
- box-shadow: 0 0 15px rgba(0, 0, 0, 0.5);
1643
- }
1644
-
1645
- .position-sticky {
1646
- z-index: 2;
1647
- }
1648
-
1649
- .viewport {
1650
- display: block !important;
1651
- overflow: visible !important;
1652
- // width: 100% !important;
1653
- }
1654
-
1655
- .nested-table ::ng-deep .cdk-virtual-scroll-content-wrapper {
1656
- padding: 0 !important;
1657
- }
1658
-
1659
- .nested-table ::ng-deep .cdk-virtual-scroll-viewport {
1660
- overflow-x: hidden !important;
1661
- }
1662
-
1663
- .disabled-search-input {
1664
- background-color: #f5f5f5;
1665
- cursor: pointer !important;
1666
- }
1667
-
1668
- .right-click-menu-icons ::ng-deep svg {
1669
- path {
1670
- stroke-width: 2 !important;
1671
- }
1672
- }
1673
-
1674
-
1675
- .loader {
1676
- animation: rotate 1s infinite;
1677
- height: 50px;
1678
- width: 50px;
1679
- }
1680
-
1681
- .loader:before,
1682
- .loader:after {
1683
- border-radius: 50%;
1684
- content: "";
1685
- display: block;
1686
- height: 20px;
1687
- width: 20px;
1688
- }
1689
-
1690
- .loader:before {
1691
- animation: ball1 1s infinite;
1692
- background-color: #fff;
1693
- box-shadow: 30px 0 0 #ff3d00;
1694
- margin-bottom: 10px;
1695
- }
1696
-
1697
- .loader:after {
1698
- animation: ball2 1s infinite;
1699
- background-color: #ff3d00;
1700
- box-shadow: 30px 0 0 #fff;
1701
- }
1702
-
1703
- @keyframes rotate {
1704
- 0% {
1705
- transform: rotate(0deg) scale(0.8)
1706
- }
1707
-
1708
- 50% {
1709
- transform: rotate(360deg) scale(1.2)
1710
- }
1711
-
1712
- 100% {
1713
- transform: rotate(720deg) scale(0.8)
1714
- }
1715
- }
1716
-
1717
- @keyframes ball1 {
1718
- 0% {
1719
- box-shadow: 30px 0 0 #ff3d00;
1720
- }
1721
-
1722
- 50% {
1723
- box-shadow: 0 0 0 #ff3d00;
1724
- margin-bottom: 0;
1725
- transform: translate(15px, 15px);
1726
- }
1727
-
1728
- 100% {
1729
- box-shadow: 30px 0 0 #ff3d00;
1730
- margin-bottom: 10px;
1731
- }
1732
- }
1733
-
1734
- @keyframes ball2 {
1735
- 0% {
1736
- box-shadow: 30px 0 0 #fff;
1737
- }
1738
-
1739
- 50% {
1740
- box-shadow: 0 0 0 #fff;
1741
- margin-top: -20px;
1742
- transform: translate(15px, 15px);
1743
- }
1744
-
1745
- 100% {
1746
- box-shadow: 30px 0 0 #fff;
1747
- margin-top: 0;
1748
- }
1749
- }
1750
-
1751
- .rows-grouping-top-container ::ng-deep .cdk-drag-placeholder {
1752
- opacity: 0.7 !important;
1753
- }
1754
-
1755
- .action-button {
1756
- background-color: #6F61CF !important;
1757
- color: white !important;
1758
- border-radius: 6px !important;
1759
- font-weight: 500 !important;
1760
- margin-top: -4px;
1761
-
1762
- &:hover {
1763
- background-color: #6a5fb3 !important;
1764
- }
1765
-
1766
- // :host ::ng-deep .data-grid-svg-icon {
1767
- // width: 16px;
1768
- // height: 16px;
1769
- // display: inline-block;
1770
- // vertical-align: middle;
1771
- // }
1772
-
1773
- // :host ::ng-deep .data-grid-svg-icon svg {
1774
- // width: 100%;
1775
- // height: 100%;
1776
- // fill: white !important;
1777
- // color: white !important;
1778
- // }
1779
-
1780
- }
1781
-
1782
- .action-buttons-row {
1783
- .button {
1784
- display: inline-flex;
1785
- align-items: center;
1786
- justify-content: center;
1787
- overflow: hidden;
1788
- color: white;
1789
- border-radius: 6px;
1790
- height: 34px;
1791
- padding: 0 10px;
1792
- white-space: nowrap;
1793
- transition: max-width 0.4s ease, background-color 0.3s ease;
1794
- max-width: 40px;
1795
- background-color: transparent;
1796
- border: 1px solid #6F61CF;
1797
-
1798
- // &:Active,
1799
- // &:focus {
1800
-
1801
- // // background-color: transparent !important;
1802
- // ::ng-deep .svg-icon svg path {
1803
- // // fill: #ffffff;
1804
- // stroke: #ffffff;
1805
- // }
1806
- // }
1807
- }
1808
-
1809
- .button .label-hidden {
1810
- opacity: 0;
1811
- margin-left: 8px;
1812
- transition: opacity 0.3s ease;
1813
- pointer-events: none;
1814
- display: none;
1815
- }
1816
-
1817
- .button:hover {
1818
- max-width: 200px;
1819
- background-color: #6F61CF;
1820
- }
1821
-
1822
- .button:hover .label-hidden {
1823
- opacity: 1;
1824
- pointer-events: auto;
1825
- margin-left: 8px !important;
1826
- display: block;
1827
- }
1828
-
1829
- ::ng-deep .button .svg-icon svg path {
1830
- // fill: #6F61CF;
1831
- stroke: #6F61CF;
1832
- transition: fill 0.3s ease, stroke 0.3s ease;
1833
- }
1834
-
1835
- ::ng-deep .button:hover .svg-icon svg path {
1836
- // fill: #ffffff !important;
1837
- stroke: #ffffff !important;
1838
- }
1839
-
1840
- }
1841
-
1842
- ::ng-deep .nav-tabs .nav-link {
1843
- border: none !important;
1844
- border-bottom: 2px solid transparent !important;
1845
- border-radius: 0 !important;
1846
- background: transparent !important;
1847
- }
1848
-
1849
- ::ng-deep .nav-tabs .nav-link:hover,
1850
- ::ng-deep .nav-tabs .nav-link:focus {
1851
- border: none !important;
1852
- border-bottom: 2px solid transparent !important;
1853
- outline: none !important;
1854
- background: transparent !important;
1855
- }
1856
-
1857
- ::ng-deep .nav-tabs .nav-link.active {
1858
- border: none !important;
1859
- border-bottom: 2px solid var(--bs-primary) !important;
1860
- /* customize color */
1861
- background: transparent !important;
1862
- color: var(--bs-primary) !important;
1863
- }
1864
-
1865
- .open-top {
1866
- top: -150% !important;
1867
- }
1868
-
1869
- .muted {
1870
- color: #7a7a7a !important;
1871
- }
1872
-
1873
- .item-title {
1874
- font-size: 1.2em;
1875
- font-weight: bold;
1876
- margin-bottom: 10px;
1877
- }
1878
-
1879
-
1880
- .item-image {
1881
- width: 100%;
1882
- border-radius: 10px;
1883
- }
1884
-
1885
- .comment {
1886
- display: flex;
1887
- align-items: center;
1888
- margin-bottom: 10px;
1889
- }
1890
-
1891
- .comment-avatar {
1892
- width: 40px;
1893
- height: 40px;
1894
- border-radius: 50%;
1895
- margin-right: 10px;
1896
- }
1897
-
1898
- .comment-author {
1899
- font-weight: bold;
1900
- }
1901
-
1902
- .comment-content {
1903
- font-size: 0.9em;
1904
- line-height: 1.4;
1905
- }
1906
-
1907
- .comment-timestamp {
1908
- font-size: 0.8em;
1909
- color: #888;
1910
- margin-left: auto;
1911
- }
1912
-
1913
- .des_low{
1914
- text-overflow: ellipsis;
1915
- white-space: nowrap;
1916
- overflow: hidden;
1917
- width: 242px;
1918
- display: block;
1919
- text-transform: capitalize !important;
1920
- }
1921
-
1922
- .firstDiv{
1923
- word-break: break-word;
1924
- overflow-wrap: break-word;
1925
- white-space: normal;
1926
- }
1927
-
1928
- .container {
1929
- display: flex;
1930
- flex-wrap: wrap;
1931
- margin: 20px;
1932
- gap: 20px;
1933
- background-color: #fff;
1934
- padding: 20px;
1935
- border-radius: 10px;
1936
- }
1937
-
1938
- .item {
1939
- width: calc(33.33% - 20px);
1940
- background-color: #fff;
1941
- padding: 20px;
1942
- border-radius: 10px;
1943
- box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
1944
- }
1945
- .forCommentImg {
1946
- width: 70px;
1947
- border-radius: 16px;
1948
- margin: 8px 0;
1949
- cursor: pointer;
1950
- }
1951
- .image-modal img {
1952
- max-width: 90%;
1953
- max-height: 90%;
1954
- border-radius: 8px;
1955
- box-shadow: 0 4px 10px rgba(0, 0, 0, 0.5);
1956
- }
1957
- .full-image-modal {
1958
- position: fixed;
1959
- // top: 0;
1960
- // left: 0;
1961
- // width: 100%;
1962
- // height: 100%;
1963
- background: rgba(0, 0, 0, 0.8);
1964
- display: flex;
1965
- justify-content: center;
1966
- align-items: center;
1967
- z-index: 1000;
1968
- .full-image {
1969
- max-width: 90%;
1970
- max-height: 90%;
1971
- border-radius: 8px;
1972
- box-shadow: 0 0 10px rgba(255, 255, 255, 0.2);
1973
- }
1974
- }
1975
-
1976
- .item-content {
1977
- font-size: 14px;
1978
- line-height: 1.5;
1979
- max-height: 220px;
1980
- overflow-y: auto;
1981
- }
1982
-
1983
- .image-modal.full-image-modal {
1984
- position: fixed;
1985
- // top: 0;
1986
- // left: 0;
1987
- width: 100vw;
1988
- height: 100vh;
1989
- background-color: rgba(0, 0, 0, 0.8); /* semi-transparent dark overlay */
1990
- display: flex;
1991
- justify-content: center;
1992
- align-items: center;
1993
- z-index: 9999; /* ensure it’s on top of everything */
1994
- overflow: hidden; /* disable scroll inside */
1995
- cursor: zoom-out; /* indicate you can click to close */
1996
- }
1997
-
1998
- .image-modal.full-image-modal img {
1999
- // max-width: 90vw;
2000
- // max-height: 90vh;
2001
- border-radius: 8px;
2002
- box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4);
2003
- object-fit: contain;
2004
- transition: transform 0.3s ease;
2005
- }
2006
-
2007
- .image-modal.full-image-modal img:hover {
2008
- transform: scale(1.02);
2009
- }
2010
-
2011
- ::ng-deep .custom-overlay-wrapper {
2012
- .custom-overlay {
2013
- position: fixed;
2014
- top: 0;
2015
- left: 0;
2016
- width: 100vw;
2017
- height: 100vh;
2018
- background: rgb(0 0 0 / 85%);
2019
- display: flex;
2020
- align-items: center;
2021
- justify-content: center;
2022
- z-index: 9999;
2023
- }
2024
-
2025
- .custom-modal {
2026
- background: #fff;
2027
- border-radius: 12px;
2028
- box-shadow: 0 8px 25px rgba(0, 0, 0, 0.2);
2029
- width: 360px;
2030
- max-width: 90%;
2031
- padding: 24px;
2032
- text-align: center;
2033
- animation: fadeInScale 0.25s ease;
2034
- }
2035
-
2036
- .custom-modal-body .modal-message {
2037
- font-size: 16px;
2038
- margin-bottom: 20px;
2039
- color: #333;
2040
- }
2041
-
2042
- .modal-actions {
2043
- display: flex;
2044
- justify-content: center;
2045
- gap: 12px;
2046
- }
2047
-
2048
- .modal-actions button {
2049
- min-width: 90px;
2050
- padding: 8px 14px;
2051
- border-radius: 6px;
2052
- border: none;
2053
- font-weight: 500;
2054
- cursor: pointer;
2055
- transition: background-color 0.2s ease;
2056
- }
2057
-
2058
- .btn-confirm {
2059
- background-color: #007bff;
2060
- color: white;
2061
-
2062
- &:hover {
2063
- background-color: #0069d9;
2064
- }
2065
- }
2066
-
2067
- .btn-cancel {
2068
- background-color: #e4e4e4;
2069
- color: #333;
2070
-
2071
- &:hover {
2072
- background-color: #d6d6d6;
2073
- }
2074
- }
2075
-
2076
- @keyframes fadeInScale {
2077
- from {
2078
- opacity: 0;
2079
- transform: scale(0.95);
2080
- }
2081
- to {
2082
- opacity: 1;
2083
- transform: scale(1);
2084
- }
2085
- }
2086
- }
2087
-
2088
-
2089
- .clear-btn {
2090
- background: linear-gradient(135deg, #f53545, #f53545);
2091
- border: none;
2092
- color: white;
2093
- font-size: 13px;
2094
- padding: 3px 6px;
2095
- border-radius: 20px;
2096
- font-weight: 500;
2097
- display: inline-flex;
2098
- align-items: center;
2099
- gap: 6px;
2100
- cursor: pointer;
2101
- transition: all 0.3s ease;
2102
- box-shadow: 0 2px 6px rgba(255, 95, 109, 0.4);
2103
- position: relative;
2104
- bottom: 4px;
2105
- }
2106
-
2107
- .clear-btn:hover {
2108
- transform: translateY(-2px);
2109
- box-shadow: 0 4px 10px rgba(255, 95, 109, 0.6);
2110
- background: linear-gradient(135deg, #f53545, #f53545);
2111
- }
2112
-
2113
- .clear-btn i {
2114
- font-size: 16px;
2115
- vertical-align: middle;
2116
- }
2117
- .cell-editin-dropdown .deopdown-item{
2118
- width: 100% !important;
2119
- box-shadow: none !important;
2120
- border-radius: 4px;
2121
- cursor: pointer;
2122
- padding-block: 8px !important;
2123
- &:hover{
2124
- background-color: #f1f1f1;
2125
- }
2126
- }