@djb25/digit-ui-css 1.0.68 → 1.0.69

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@djb25/digit-ui-css",
3
- "version": "1.0.68",
3
+ "version": "1.0.69",
4
4
  "license": "MIT",
5
5
  "main": "dist/index.css",
6
6
  "author": "satyam",
@@ -1,5 +1,6 @@
1
1
  .search-form-wrapper {
2
2
  @apply w-full flex-wrap gap-5 justify-between bg-white;
3
+ padding: 20px;
3
4
 
4
5
  border-radius: 11px;
5
6
  .form-field {
@@ -81,18 +81,19 @@
81
81
  }
82
82
 
83
83
  .action-bar-wrap-registry {
84
+ @apply relative;
84
85
  div {
85
86
  @apply w-full;
86
87
  }
87
88
 
88
89
  .menu-wrap {
89
- @apply absolute bg-white text-left mb-xs z-30 cursor-pointer;
90
+ @apply absolute bg-white text-left right-10 rounded-xl z-30 cursor-pointer;
90
91
  box-shadow: rgba(0, 0, 0, 0.14) 0 8px 10px 1px, rgba(0, 0, 0, 0.12) 0 3px 14px 2px, rgba(0, 0, 0, 0.2) 0 5px 5px -3px;
91
- width: 160px;
92
- right: 60px;
92
+ width: fit-content;
93
+ border-radius: 10px !important;
93
94
 
94
95
  div {
95
- @apply h-12 pl-sm py-md text-body-l text-text-primary;
96
+ @apply p-sm text-body-l rounded-xl text-text-primary;
96
97
 
97
98
  p {
98
99
  word-wrap: break-word;
@@ -129,4 +130,4 @@
129
130
  align-items: center;
130
131
  margin-left: 10px;
131
132
  }
132
- }
133
+ }
@@ -627,96 +627,201 @@
627
627
  transform: scale(1.05);
628
628
  }
629
629
 
630
- .card-body-row {
631
- display: flex;
632
- justify-content: space-between;
633
- align-items: center;
630
+ /* ── KPI TILES GRID ─────────────────────────────────────── */
631
+ @keyframes countPop {
632
+ 0% { transform: scale(0.6) translateY(6px); opacity: 0; }
633
+ 50% { transform: scale(1.06) translateY(-2px); opacity: 1; }
634
+ 100% { transform: scale(1) translateY(0); }
634
635
  }
635
636
 
636
- .main-kpi-section {
637
- display: flex;
638
- align-items: center;
639
- gap: 8px;
637
+ @keyframes shimmer {
638
+ 0% { left: -100%; }
639
+ 100% { left: 200%; }
640
640
  }
641
641
 
642
- .main-kpi-number {
643
- font-size: 2.5rem;
644
- font-weight: 700;
645
- color: #111827;
646
- line-height: 1;
642
+ @keyframes pulseGlow {
643
+ 0%, 100% { opacity: 0.45; transform: translate(-50%, -50%) scale(1); }
644
+ 50% { opacity: 0.7; transform: translate(-50%, -50%) scale(1.15); }
645
+ }
646
+
647
+ .kpi-tiles-grid {
648
+ display: grid;
649
+ grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
650
+ gap: 10px;
651
+ width: 100%;
647
652
  }
648
653
 
649
- .main-kpi-label-wrap {
654
+ .kpi-tile {
655
+ position: relative;
650
656
  display: flex;
651
657
  flex-direction: column;
658
+ align-items: center;
652
659
  justify-content: center;
653
- align-items: flex-start;
654
- gap: 4px;
660
+ padding: 16px 12px 14px;
661
+ border-radius: 16px;
662
+ background: rgba(255, 255, 255, 0.65);
663
+ backdrop-filter: blur(12px);
664
+ -webkit-backdrop-filter: blur(12px);
665
+ border: 1px solid rgba(255, 255, 255, 0.5);
666
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04),
667
+ inset 0 1px 0 rgba(255, 255, 255, 0.8);
668
+ text-align: center;
669
+ overflow: hidden;
670
+ transition: transform 0.3s cubic-bezier(0.34, 1.56, 0.64, 1),
671
+ box-shadow 0.3s ease,
672
+ border-color 0.3s ease,
673
+ background 0.3s ease;
674
+ cursor: pointer;
655
675
  }
656
676
 
657
- .trend-icon {
658
- width: 18px;
659
- height: 18px;
660
- border: 1.5px solid #10b981;
661
- border-radius: 50%;
662
- color: #10b981;
663
- display: flex;
664
- justify-content: center;
665
- align-items: center;
677
+ .kpi-tile:hover {
678
+ transform: translateY(-4px) scale(1.02);
679
+ box-shadow: 0 8px 24px -6px rgba(0, 0, 0, 0.12),
680
+ 0 2px 6px rgba(0, 0, 0, 0.04),
681
+ inset 0 1px 0 rgba(255, 255, 255, 0.9);
682
+ border-color: rgba(200, 200, 220, 0.6);
666
683
  }
667
684
 
668
- .main-kpi-label {
669
- color: #6b7280;
670
- font-weight: 400;
671
- font-size: 0.9rem;
685
+ /* Shimmer sweep on hover */
686
+ .kpi-tile::after {
687
+ content: "";
688
+ position: absolute;
689
+ top: 0;
690
+ left: -100%;
691
+ width: 60%;
692
+ height: 100%;
693
+ background: linear-gradient(
694
+ 90deg,
695
+ transparent 0%,
696
+ rgba(255, 255, 255, 0.4) 50%,
697
+ transparent 100%
698
+ );
699
+ transition: none;
700
+ pointer-events: none;
672
701
  }
673
702
 
674
- .secondary-kpi-section {
675
- display: flex;
676
- flex-direction: column;
677
- align-items: flex-end;
678
- gap: 8px;
703
+ .kpi-tile:hover::after {
704
+ animation: shimmer 0.8s ease-in-out;
679
705
  }
680
706
 
681
- .secondary-kpi-item {
682
- display: flex;
683
- justify-content: flex-end;
684
- align-items: center;
685
- gap: 8px;
686
- width: 100%;
707
+ /* ── Accent — repurposed as a small colored dot next to label ── */
708
+ .kpi-tile__accent {
709
+ position: absolute;
710
+ top: 10px;
711
+ left: 10px;
712
+ width: 6px;
713
+ height: 6px;
714
+ border-radius: 50%;
715
+ background: #94a3b8;
716
+ transition: transform 0.3s ease, box-shadow 0.3s ease;
717
+ }
718
+
719
+ .kpi-tile:hover .kpi-tile__accent {
720
+ transform: scale(1.4);
687
721
  }
688
722
 
689
- .sec-kpi-header .sec-kpi-label {
690
- font-size: 0.7rem;
723
+ /* Color-coded dots per module */
724
+ .kpi-tile--icon-blue .kpi-tile__accent { background: #0ea5e9; box-shadow: 0 0 6px rgba(14, 165, 233, 0.4); }
725
+ .kpi-tile--icon-purple .kpi-tile__accent { background: #8b5cf6; box-shadow: 0 0 6px rgba(139, 92, 246, 0.4); }
726
+ .kpi-tile--icon-orange .kpi-tile__accent { background: #f97316; box-shadow: 0 0 6px rgba(249, 115, 22, 0.4); }
727
+ .kpi-tile--icon-green .kpi-tile__accent { background: #22c55e; box-shadow: 0 0 6px rgba(34, 197, 94, 0.4); }
728
+ .kpi-tile--icon-brown .kpi-tile__accent { background: #eab308; box-shadow: 0 0 6px rgba(234, 179, 8, 0.4); }
729
+ .kpi-tile--icon-violet .kpi-tile__accent { background: #7c3aed; box-shadow: 0 0 6px rgba(124, 58, 237, 0.4); }
730
+ .kpi-tile--icon-teal .kpi-tile__accent { background: #14b8a6; box-shadow: 0 0 6px rgba(20, 184, 166, 0.4); }
731
+ .kpi-tile--icon-default .kpi-tile__accent { background: #64748b; box-shadow: 0 0 6px rgba(100, 116, 139, 0.4); }
732
+
733
+ /* ── Label ── */
734
+ .kpi-tile__label {
735
+ font-size: 0.65rem;
691
736
  font-weight: 700;
692
- color: #9ca3af;
693
- letter-spacing: 0.5px;
737
+ color: #64748b;
738
+ text-transform: uppercase;
739
+ letter-spacing: 0.8px;
740
+ line-height: 1.35;
741
+ margin-bottom: 8px;
742
+ max-width: 100%;
743
+ word-break: break-word;
694
744
  }
695
745
 
696
- .sec-kpi-label {
697
- font-size: 0.85rem;
698
- color: #4b5563;
699
- font-weight: 500;
700
- text-align: right;
746
+ /* ── Count with radial glow behind ── */
747
+ .kpi-tile__count {
748
+ position: relative;
749
+ font-size: 2rem;
750
+ font-weight: 800;
751
+ color: #0f172a;
752
+ line-height: 1;
753
+ animation: countPop 0.55s cubic-bezier(0.34, 1.56, 0.64, 1) both;
754
+ font-variant-numeric: tabular-nums;
755
+ z-index: 1;
701
756
  }
702
757
 
703
- .sec-kpi-value {
704
- font-size: 0.9rem;
705
- font-weight: 700;
706
- color: #111827;
758
+ /* Radial glow circle behind the number */
759
+ .kpi-tile__count::before {
760
+ content: "";
761
+ position: absolute;
762
+ top: 50%;
763
+ left: 50%;
764
+ width: 44px;
765
+ height: 44px;
766
+ border-radius: 50%;
767
+ transform: translate(-50%, -50%);
768
+ opacity: 0.35;
769
+ z-index: -1;
770
+ background: radial-gradient(circle, #94a3b8 0%, transparent 70%);
771
+ transition: opacity 0.3s ease, transform 0.3s ease;
772
+ }
773
+
774
+ .kpi-tile:hover .kpi-tile__count::before {
775
+ opacity: 0.55;
776
+ animation: pulseGlow 2s ease-in-out infinite;
777
+ }
778
+
779
+ /* Color-coded glow per module */
780
+ .kpi-tile--icon-blue .kpi-tile__count::before { background: radial-gradient(circle, #7dd3fc 0%, transparent 70%); }
781
+ .kpi-tile--icon-purple .kpi-tile__count::before { background: radial-gradient(circle, #c4b5fd 0%, transparent 70%); }
782
+ .kpi-tile--icon-orange .kpi-tile__count::before { background: radial-gradient(circle, #fdba74 0%, transparent 70%); }
783
+ .kpi-tile--icon-green .kpi-tile__count::before { background: radial-gradient(circle, #86efac 0%, transparent 70%); }
784
+ .kpi-tile--icon-brown .kpi-tile__count::before { background: radial-gradient(circle, #fde68a 0%, transparent 70%); }
785
+ .kpi-tile--icon-violet .kpi-tile__count::before { background: radial-gradient(circle, #a78bfa 0%, transparent 70%); }
786
+ .kpi-tile--icon-teal .kpi-tile__count::before { background: radial-gradient(circle, #5eead4 0%, transparent 70%); }
787
+ .kpi-tile--icon-default .kpi-tile__count::before { background: radial-gradient(circle, #cbd5e1 0%, transparent 70%); }
788
+
789
+ /* Count color on hover */
790
+ .kpi-tile--icon-blue:hover .kpi-tile__count { color: #0369a1; }
791
+ .kpi-tile--icon-purple:hover .kpi-tile__count { color: #6d28d9; }
792
+ .kpi-tile--icon-orange:hover .kpi-tile__count { color: #c2410c; }
793
+ .kpi-tile--icon-green:hover .kpi-tile__count { color: #15803d; }
794
+ .kpi-tile--icon-brown:hover .kpi-tile__count { color: #a16207; }
795
+ .kpi-tile--icon-violet:hover .kpi-tile__count { color: #5b21b6; }
796
+ .kpi-tile--icon-teal:hover .kpi-tile__count { color: #0f766e; }
797
+
798
+ /* Subtle bg tint on hover per color */
799
+ .kpi-tile--icon-blue:hover { background: rgba(240, 249, 255, 0.85); border-color: rgba(56, 189, 248, 0.25); }
800
+ .kpi-tile--icon-purple:hover { background: rgba(250, 245, 255, 0.85); border-color: rgba(192, 132, 252, 0.25); }
801
+ .kpi-tile--icon-orange:hover { background: rgba(255, 247, 237, 0.85); border-color: rgba(251, 146, 60, 0.25); }
802
+ .kpi-tile--icon-green:hover { background: rgba(240, 253, 244, 0.85); border-color: rgba(74, 222, 128, 0.25); }
803
+ .kpi-tile--icon-brown:hover { background: rgba(255, 251, 235, 0.85); border-color: rgba(251, 191, 36, 0.25); }
804
+ .kpi-tile--icon-violet:hover { background: rgba(245, 243, 255, 0.85); border-color: rgba(167, 139, 250, 0.25); }
805
+ .kpi-tile--icon-teal:hover { background: rgba(240, 253, 250, 0.85); border-color: rgba(45, 212, 191, 0.25); }
806
+
807
+ /* ── LEGACY: kept for backwards-compat if referenced elsewhere ── */
808
+ .card-body-row {
707
809
  display: flex;
810
+ justify-content: space-between;
708
811
  align-items: center;
709
- justify-content: flex-end;
710
- min-width: 16px;
711
812
  }
712
813
 
713
- .sec-kpi-dot {
714
- width: 8px;
715
- height: 8px;
716
- background-color: #ef4444;
717
- border-radius: 50%;
718
- display: inline-block;
719
- }
814
+ .main-kpi-section { display: none; }
815
+ .main-kpi-number { display: none; }
816
+ .main-kpi-label-wrap { display: none; }
817
+ .main-kpi-label { display: none; }
818
+ .secondary-kpi-section { display: none; }
819
+ .secondary-kpi-item { display: none; }
820
+ .sec-kpi-label { display: none; }
821
+ .sec-kpi-value { display: none; }
822
+ .sec-kpi-dot { display: none; }
823
+ .sec-kpi-header { display: none; }
824
+ .trend-icon { display: none; }
720
825
 
721
826
  .card-footer-row {
722
827
  display: flex;
package/src/index.scss CHANGED
@@ -732,7 +732,6 @@ input[type="number"] {
732
732
  @media (min-width: 780px) {
733
733
  .citizen-obps-wrapper,
734
734
  .pgr-citizen-wrapper,
735
- .pt-citizen,
736
735
  .bill-citizen,
737
736
  .bills-citizen-wrapper,
738
737
  .payer-bills-citizen-wrapper,
@@ -1,30 +1,31 @@
1
- .dss-switch-tabs{/* Card / Primary */
1
+ .dss-switch-tabs {
2
+ /* Card / Primary */
2
3
 
3
- /* Light Theme / Paper */
4
+ /* Light Theme / Paper */
4
5
 
5
- background: theme(colors.white);
6
- /* Card-Shadow */
6
+ background: theme(colors.white);
7
+ /* Card-Shadow */
7
8
 
8
- box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.16);
9
- border-radius: 4px;
10
- margin-bottom:3%;
11
- margin-right:25px;
9
+ box-shadow: 0px 1px 2px rgba(0, 0, 0, 0.16);
10
+ border-radius: 4px;
11
+ margin-bottom: 3%;
12
+ margin-right: 25px;
12
13
  }
13
14
 
14
- .dss-header-label{
15
+ .dss-header-label {
15
16
  font-weight: 600 !important;
16
17
  font-size: 22px !important;
17
18
  white-space: pre-line;
18
19
  }
19
- .dss-switch-tab-wrapper{
20
- cursor:pointer;
21
- display: flex;
22
- flex-direction: row;
23
- height: 50px;
24
- align-items: center;
20
+ .dss-switch-tab-wrapper {
21
+ cursor: pointer;
22
+ display: flex;
23
+ flex-direction: row;
24
+ height: 50px;
25
+ align-items: center;
25
26
  }
26
27
 
27
- .dss-switch-tab-selected{
28
+ .dss-switch-tab-selected {
28
29
  /* Revenue */
29
30
  border-bottom: 3px solid theme(colors.primary.main);
30
31
  font-family: Roboto;
@@ -33,82 +34,75 @@ margin-right:25px;
33
34
  font-size: 22px;
34
35
  color: theme(colors.primary.main);
35
36
  padding: 7px 24px;
36
-
37
37
  }
38
- .dss-switch-tab-unselected{
39
-
40
- font-family: Roboto;
41
- font-style: normal;
42
- font-weight: 500;
43
- font-size: 22px;
44
- color: theme(colors.text.secondary);
45
- padding: 8px 24px;
46
-
38
+ .dss-switch-tab-unselected {
39
+ font-family: Roboto;
40
+ font-style: normal;
41
+ font-weight: 500;
42
+ font-size: 22px;
43
+ color: theme(colors.text.secondary);
44
+ padding: 8px 24px;
47
45
  }
48
46
 
49
- .dss-table-subheader{
47
+ .dss-table-subheader {
50
48
  position: relative;
51
- top: -7px;
52
- font-size: 13px;
53
- font-weight: 400;
54
- color: rgba(80, 90, 95, 1);
49
+ top: -7px;
50
+ font-size: 13px;
51
+ font-weight: 400;
52
+ color: rgba(80, 90, 95, 1);
55
53
  }
56
54
 
57
- .dss-pie-subheader{
55
+ .dss-pie-subheader {
58
56
  position: relative;
59
- top: -7px;
60
- font-size: 13px;
61
- font-weight: 400;
62
- color: rgba(80, 90, 95, 1);
57
+ top: -7px;
58
+ font-size: 13px;
59
+ font-weight: 400;
60
+ color: rgba(80, 90, 95, 1);
63
61
  }
64
62
 
65
- .recharts-legend-item{
63
+ .recharts-legend-item {
66
64
  margin-bottom: 20px !important;
67
65
  white-space: pre;
68
66
  }
69
67
 
70
- .dss-white-pre{
68
+ .dss-white-pre {
71
69
  white-space: pre;
72
-
73
70
  }
74
- .dss-white-pre-line{
71
+ .dss-white-pre-line {
75
72
  white-space: pre-line;
76
-
77
73
  }
78
- .dss-white-pre-temp{
74
+ .dss-white-pre-temp {
79
75
  white-space: pre-line;
80
-
81
76
  }
82
77
 
83
- .multi-select-dropdown-wrap{
84
- .master{
85
- .label{
86
- p{
87
- white-space:pre;
78
+ .multi-select-dropdown-wrap {
79
+ .master {
80
+ .label {
81
+ p {
88
82
  margin: auto;
89
- margin-left:0px;
83
+ margin-left: 0px;
90
84
  padding-left: 1%;
91
85
  }
92
86
  }
93
87
  }
94
88
  }
95
89
 
96
- .divToBeHidden{
97
- display:block;
90
+ .divToBeHidden {
91
+ display: block;
98
92
  }
99
93
 
100
- .divWillGetHidden{
101
- display:none;
94
+ .divWillGetHidden {
95
+ display: none;
102
96
  }
103
97
 
104
- .dss-temp-white-pre{
98
+ .dss-temp-white-pre {
105
99
  white-space: pre;
106
100
  }
107
101
 
108
- .dss-input-active-border{
109
- --border-opacity: 1;
110
- border: 1px solid theme(colors.primary.main) !important;
111
- border-color: rgba(244, 119, 56, var(--border-opacity));
102
+ .dss-input-active-border {
103
+ --border-opacity: 1;
104
+ border: 1px solid theme(colors.primary.main) !important;
105
+ border-color: rgba(244, 119, 56, var(--border-opacity));
112
106
  }
113
107
 
114
108
  .dss-card {
@@ -151,7 +145,6 @@ border-color: rgba(244, 119, 56, var(--border-opacity));
151
145
  }
152
146
  }
153
147
 
154
-
155
148
  .dss-insight-card {
156
149
  margin: 10px 0;
157
150
 
@@ -160,18 +153,18 @@ border-color: rgba(244, 119, 56, var(--border-opacity));
160
153
  }
161
154
 
162
155
  .p1 {
163
- font-size: 16px;
156
+ font-size: 16px;
164
157
  color: #585858;
165
158
  }
166
159
 
167
160
  .p3 {
168
- font-size: 16px;
169
- font-weight: 400;
161
+ font-size: 16px;
162
+ font-weight: 400;
170
163
  }
171
164
 
172
165
  .p2 {
173
166
  font-size: 24px;
174
- font-weight: 500;
167
+ font-weight: 500;
175
168
  color: theme(colors.black);
176
169
  }
177
170
 
@@ -190,77 +183,77 @@ border-color: rgba(244, 119, 56, var(--border-opacity));
190
183
  width: 97%;
191
184
  }
192
185
 
193
- .h-100{
186
+ .h-100 {
194
187
  width: 100%;
195
188
  height: 100%;
196
189
  }
197
190
 
198
- .dss-h-100{
191
+ .dss-h-100 {
199
192
  width: 97%;
200
193
  height: 100%;
201
194
  }
202
195
 
203
- .tab-rows{
196
+ .tab-rows {
204
197
  display: flex;
205
- justify-content:space-between;
198
+ justify-content: space-between;
206
199
  height: 30px;
207
200
  align-items: center;
208
201
  width: 60%;
209
202
  margin-left: 13%;
210
203
  }
211
- .tab-header{
204
+ .tab-header {
212
205
  font-weight: 700;
213
206
  font-size: 16px;
214
207
  line-height: 19px;
215
208
  border-bottom: 1px solid #b1b4b6;
216
209
  color: #2a3340;
217
210
  }
218
- .map-status{
211
+ .map-status {
219
212
  position: relative;
220
213
  width: 33%;
221
214
  left: 50%;
222
215
  bottom: 130px;
223
216
  }
224
- .map-row{
217
+ .map-row {
225
218
  display: flex;
226
219
  align-items: center;
227
220
  margin-top: 5px;
228
221
  }
229
- .map-box{
222
+ .map-box {
230
223
  display: inline-block;
231
224
  height: 10px;
232
225
  width: 10px;
233
226
  }
234
- .map-text{
227
+ .map-text {
235
228
  margin-left: 5px;
236
229
  color: #636363;
237
230
  font-size: 14px;
238
231
  }
239
232
 
240
-
241
233
  @media screen and (max-width: 768px) {
242
- .dss-switch-tabs{/* Card / Primary */
243
- margin-right:0px;
234
+ .dss-switch-tabs {
235
+ /* Card / Primary */
236
+ margin-right: 0px;
244
237
  }
245
238
 
246
- .dss-card-parent{
247
- width:100%;
239
+ .dss-card-parent {
240
+ width: 100%;
248
241
  }
249
242
  }
250
243
 
251
- .dss-metric-horizontal{
244
+ .dss-metric-horizontal {
252
245
  width: 48%;
253
246
  max-width: 48%;
254
247
  }
255
- .dss-primary{
248
+ .dss-primary {
256
249
  display: inline;
257
250
  margin-right: 10px;
258
- path{
259
- fill:theme(colors.primary.main);
251
+ path {
252
+ fill: theme(colors.primary.main);
260
253
  }
261
254
  }
262
255
 
263
- .dss-horizontal-v2{
256
+ .dss-horizontal-v2 {
264
257
  width: 22.7%;
265
258
  max-width: 22.7%;
266
- }
259
+ }
@@ -28,7 +28,7 @@
28
28
 
29
29
  @screen dt {
30
30
  .popup-module {
31
- width: 960px;
31
+ width: auto;
32
32
  margin: auto;
33
33
  @apply bg-white;
34
34
 
@@ -36,4 +36,4 @@
36
36
  @apply w-full p-md h-full;
37
37
  }
38
38
  }
39
- }
39
+ }