@keenmate/pure-admin-theme-express 1.5.1 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/express.css +895 -19
  2. package/package.json +3 -3
package/dist/express.css CHANGED
@@ -372,6 +372,7 @@ body.pa-layout--sticky .pa-layout__inner {
372
372
  .pa-layout__main {
373
373
  flex: 1;
374
374
  padding: 1.6rem;
375
+ container-type: inline-size;
375
376
  }
376
377
 
377
378
  .pa-layout__footer {
@@ -1559,7 +1560,7 @@ body:not(.sidebar-hidden) .pa-layout__sidebar--icon-collapse .pa-sidebar__icon {
1559
1560
  margin-inline-start: 95%;
1560
1561
  }
1561
1562
 
1562
- @media (min-width: 576px) {
1563
+ @container (min-width: 576px) {
1563
1564
  .pa-col-sm-5 {
1564
1565
  flex: 0 0 5%;
1565
1566
  max-width: 5%;
@@ -1832,7 +1833,7 @@ body:not(.sidebar-hidden) .pa-layout__sidebar--icon-collapse .pa-sidebar__icon {
1832
1833
  width: auto;
1833
1834
  }
1834
1835
  }
1835
- @media (min-width: 768px) {
1836
+ @container (min-width: 768px) {
1836
1837
  .pa-col-md-5 {
1837
1838
  flex: 0 0 5%;
1838
1839
  max-width: 5%;
@@ -2105,7 +2106,7 @@ body:not(.sidebar-hidden) .pa-layout__sidebar--icon-collapse .pa-sidebar__icon {
2105
2106
  width: auto;
2106
2107
  }
2107
2108
  }
2108
- @media (min-width: 992px) {
2109
+ @container (min-width: 992px) {
2109
2110
  .pa-col-lg-5 {
2110
2111
  flex: 0 0 5%;
2111
2112
  max-width: 5%;
@@ -2378,7 +2379,7 @@ body:not(.sidebar-hidden) .pa-layout__sidebar--icon-collapse .pa-sidebar__icon {
2378
2379
  width: auto;
2379
2380
  }
2380
2381
  }
2381
- @media (min-width: 1200px) {
2382
+ @container (min-width: 1200px) {
2382
2383
  .pa-col-xl-5 {
2383
2384
  flex: 0 0 5%;
2384
2385
  max-width: 5%;
@@ -3140,6 +3141,21 @@ body:not(.sidebar-hidden) .pa-layout__sidebar--icon-collapse .pa-sidebar__icon {
3140
3141
  border-top: none !important;
3141
3142
  }
3142
3143
 
3144
+ .pa-card--live-up {
3145
+ background-color: rgba(40, 167, 69, 0.1);
3146
+ transition: background-color 0.3s ease;
3147
+ }
3148
+
3149
+ .pa-card--live-down {
3150
+ background-color: rgba(220, 53, 69, 0.1);
3151
+ transition: background-color 0.3s ease;
3152
+ }
3153
+
3154
+ .pa-card--live-neutral {
3155
+ background-color: #ffffff;
3156
+ transition: background-color 0.3s ease;
3157
+ }
3158
+
3143
3159
  .pa-card--color-1 {
3144
3160
  border-color: var(--pa-color-1);
3145
3161
  }
@@ -3907,43 +3923,43 @@ a.pa-card p {
3907
3923
  font-size: 1.4rem;
3908
3924
  }
3909
3925
 
3910
- .pa-stat--hero {
3926
+ .pa-stat--hero, .pa-stat--hero-compact {
3911
3927
  display: block;
3912
3928
  text-align: center;
3913
- padding: 2.4rem;
3929
+ padding: 0.8rem 0.8rem 1.2rem;
3914
3930
  }
3915
3931
 
3916
- .pa-stat--hero .pa-stat__label {
3917
- font-size: 1.4rem;
3932
+ .pa-stat--hero .pa-stat__label, .pa-stat--hero-compact .pa-stat__label {
3933
+ font-size: 1.2rem;
3918
3934
  text-transform: uppercase;
3919
3935
  letter-spacing: 0.05em;
3920
- font-weight: 500;
3936
+ font-weight: 600;
3921
3937
  color: var(--pa-text-color-2);
3922
- margin-bottom: 0.8rem;
3938
+ margin-bottom: 0.4rem;
3923
3939
  }
3924
3940
 
3925
- .pa-stat--hero .pa-stat__value {
3926
- font-size: 3.2rem;
3941
+ .pa-stat--hero .pa-stat__value, .pa-stat--hero-compact .pa-stat__value {
3942
+ font-size: 4.48rem;
3927
3943
  font-weight: 700;
3928
3944
  color: var(--pa-text-color-1);
3929
- line-height: 1.1;
3930
- margin-bottom: 0.8rem;
3945
+ line-height: 1;
3946
+ margin-bottom: 0.4rem;
3931
3947
  }
3932
3948
 
3933
- .pa-stat--hero .pa-stat__change {
3949
+ .pa-stat--hero .pa-stat__change, .pa-stat--hero-compact .pa-stat__change {
3934
3950
  font-size: 1.2rem;
3935
- font-weight: 500;
3951
+ font-weight: 600;
3936
3952
  }
3937
3953
 
3938
- .pa-stat--hero .pa-stat__change--positive {
3954
+ .pa-stat--hero .pa-stat__change--positive, .pa-stat--hero-compact .pa-stat__change--positive {
3939
3955
  color: #28a745;
3940
3956
  }
3941
3957
 
3942
- .pa-stat--hero .pa-stat__change--negative {
3958
+ .pa-stat--hero .pa-stat__change--negative, .pa-stat--hero-compact .pa-stat__change--negative {
3943
3959
  color: #dc3545;
3944
3960
  }
3945
3961
 
3946
- .pa-stat--hero .pa-stat__change--neutral {
3962
+ .pa-stat--hero .pa-stat__change--neutral, .pa-stat--hero-compact .pa-stat__change--neutral {
3947
3963
  color: var(--pa-text-color-2);
3948
3964
  }
3949
3965
 
@@ -13660,6 +13676,71 @@ code {
13660
13676
  grid-column: 2;
13661
13677
  }
13662
13678
  }
13679
+ .pa-desc-table__copy {
13680
+ flex-shrink: 0;
13681
+ padding: 0.4rem;
13682
+ background: transparent;
13683
+ border: none;
13684
+ border-radius: 4px;
13685
+ cursor: pointer;
13686
+ transition: opacity 0.15s, background 0.15s;
13687
+ }
13688
+
13689
+ .pa-desc-table__copy:hover {
13690
+ opacity: 1;
13691
+ background: rgba(128, 128, 128, 0.1);
13692
+ }
13693
+
13694
+ .pa-desc-table__value--copy-btn, .pa-desc-table__value--copy-hover {
13695
+ display: flex;
13696
+ align-items: center;
13697
+ gap: 0.8rem;
13698
+ }
13699
+
13700
+ .pa-desc-table__value--copy-btn .pa-desc-table__copy {
13701
+ opacity: 0.5;
13702
+ }
13703
+
13704
+ .pa-desc-table__value--copy-hover .pa-desc-table__copy {
13705
+ opacity: 0;
13706
+ }
13707
+
13708
+ .pa-desc-table__value--copy-hover:hover .pa-desc-table__copy {
13709
+ opacity: 0.5;
13710
+ }
13711
+
13712
+ .pa-desc-table__value--copy-hover:hover .pa-desc-table__copy:hover {
13713
+ opacity: 1;
13714
+ background: rgba(128, 128, 128, 0.1);
13715
+ }
13716
+
13717
+ .pa-desc-table__value--copy-click {
13718
+ cursor: pointer;
13719
+ transition: opacity 0.15s;
13720
+ }
13721
+
13722
+ .pa-desc-table__value--copy-click:hover {
13723
+ opacity: 0.7;
13724
+ }
13725
+
13726
+ .pa-desc-table__value--copy-click::after {
13727
+ content: "Click to copy";
13728
+ font-size: 1rem;
13729
+ opacity: 0;
13730
+ margin-inline-start: 0.8rem;
13731
+ transition: opacity 0.15s;
13732
+ }
13733
+
13734
+ .pa-desc-table__value--copy-click:hover::after {
13735
+ opacity: 0.6;
13736
+ }
13737
+
13738
+ .pa-desc-table__value--copied::after {
13739
+ content: "Copied!" !important;
13740
+ opacity: 1 !important;
13741
+ color: var(--pa-color-4, #28a745);
13742
+ }
13743
+
13663
13744
  .pa-dot-leaders {
13664
13745
  display: flex;
13665
13746
  flex-direction: column;
@@ -13761,6 +13842,57 @@ code {
13761
13842
  font-weight: 700;
13762
13843
  }
13763
13844
 
13845
+ .pa-prop-card__copy {
13846
+ flex-shrink: 0;
13847
+ padding: 0.4rem;
13848
+ background: transparent;
13849
+ border: none;
13850
+ border-radius: 4px;
13851
+ cursor: pointer;
13852
+ transition: opacity 0.15s, background 0.15s;
13853
+ }
13854
+
13855
+ .pa-prop-card__copy:hover {
13856
+ opacity: 1;
13857
+ background: rgba(128, 128, 128, 0.1);
13858
+ }
13859
+
13860
+ .pa-prop-card__row--copy-btn .pa-prop-card__value, .pa-prop-card__row--copy-hover .pa-prop-card__value {
13861
+ display: flex;
13862
+ align-items: center;
13863
+ gap: 0.8rem;
13864
+ }
13865
+
13866
+ .pa-prop-card__row--copy-btn .pa-prop-card__copy, .pa-prop-card__row--copy-hover .pa-prop-card__copy {
13867
+ order: -1;
13868
+ }
13869
+
13870
+ .pa-prop-card__row--copy-btn .pa-prop-card__copy {
13871
+ opacity: 0.5;
13872
+ }
13873
+
13874
+ .pa-prop-card__row--copy-hover .pa-prop-card__copy {
13875
+ opacity: 0;
13876
+ }
13877
+
13878
+ .pa-prop-card__row--copy-hover:hover .pa-prop-card__copy {
13879
+ opacity: 0.5;
13880
+ }
13881
+
13882
+ .pa-prop-card__row--copy-hover:hover .pa-prop-card__copy:hover {
13883
+ opacity: 1;
13884
+ background: rgba(128, 128, 128, 0.1);
13885
+ }
13886
+
13887
+ .pa-prop-card__row--copy-click .pa-prop-card__value {
13888
+ cursor: pointer;
13889
+ transition: opacity 0.15s;
13890
+ }
13891
+
13892
+ .pa-prop-card__row--copy-click .pa-prop-card__value:hover {
13893
+ opacity: 0.7;
13894
+ }
13895
+
13764
13896
  .pa-banded-container {
13765
13897
  container-type: inline-size;
13766
13898
  }
@@ -13857,6 +13989,69 @@ code {
13857
13989
  display: block;
13858
13990
  }
13859
13991
  }
13992
+ .pa-banded__copy {
13993
+ flex-shrink: 0;
13994
+ padding: 0.4rem;
13995
+ background: transparent;
13996
+ border: none;
13997
+ border-radius: 4px;
13998
+ cursor: pointer;
13999
+ transition: opacity 0.15s, background 0.15s;
14000
+ }
14001
+
14002
+ .pa-banded__copy:hover {
14003
+ opacity: 1;
14004
+ background: rgba(128, 128, 128, 0.1);
14005
+ }
14006
+
14007
+ .pa-banded__row--copy-btn .pa-banded__value, .pa-banded__row--copy-hover .pa-banded__value {
14008
+ gap: 0.8rem;
14009
+ }
14010
+
14011
+ .pa-banded__row--copy-btn .pa-banded__copy {
14012
+ opacity: 0.5;
14013
+ }
14014
+
14015
+ .pa-banded__row--copy-hover .pa-banded__copy {
14016
+ opacity: 0;
14017
+ }
14018
+
14019
+ .pa-banded__row--copy-hover:hover .pa-banded__copy {
14020
+ opacity: 0.5;
14021
+ }
14022
+
14023
+ .pa-banded__row--copy-hover:hover .pa-banded__copy:hover {
14024
+ opacity: 1;
14025
+ background: rgba(128, 128, 128, 0.1);
14026
+ }
14027
+
14028
+ .pa-banded__row--copy-click .pa-banded__value {
14029
+ cursor: pointer;
14030
+ transition: opacity 0.15s;
14031
+ }
14032
+
14033
+ .pa-banded__row--copy-click .pa-banded__value:hover {
14034
+ opacity: 0.7;
14035
+ }
14036
+
14037
+ .pa-banded__row--copy-click .pa-banded__value::after {
14038
+ content: "Click to copy";
14039
+ font-size: 1rem;
14040
+ opacity: 0;
14041
+ margin-inline-start: 0.8rem;
14042
+ transition: opacity 0.15s;
14043
+ }
14044
+
14045
+ .pa-banded__row--copy-click .pa-banded__value:hover::after {
14046
+ opacity: 0.6;
14047
+ }
14048
+
14049
+ .pa-banded__row--copied .pa-banded__value::after {
14050
+ content: "Copied!" !important;
14051
+ opacity: 1 !important;
14052
+ color: var(--pa-color-4, #28a745);
14053
+ }
14054
+
13860
14055
  .pa-accent-grid {
13861
14056
  display: grid;
13862
14057
  grid-template-columns: repeat(auto-fill, minmax(20rem, 1fr));
@@ -13901,6 +14096,687 @@ code {
13901
14096
  line-height: 1.2;
13902
14097
  }
13903
14098
 
14099
+ .pa-accent-grid__copy {
14100
+ flex-shrink: 0;
14101
+ padding: 0.4rem;
14102
+ background: transparent;
14103
+ border: none;
14104
+ border-radius: 4px;
14105
+ cursor: pointer;
14106
+ transition: opacity 0.15s, background 0.15s;
14107
+ }
14108
+
14109
+ .pa-accent-grid__copy:hover {
14110
+ opacity: 1;
14111
+ background: rgba(128, 128, 128, 0.1);
14112
+ }
14113
+
14114
+ .pa-accent-grid__item--copy-btn .pa-accent-grid__value, .pa-accent-grid__item--copy-hover .pa-accent-grid__value {
14115
+ display: flex;
14116
+ align-items: center;
14117
+ gap: 0.8rem;
14118
+ }
14119
+
14120
+ .pa-accent-grid__item--copy-btn .pa-accent-grid__copy {
14121
+ opacity: 0.5;
14122
+ }
14123
+
14124
+ .pa-accent-grid__item--copy-hover .pa-accent-grid__copy {
14125
+ opacity: 0;
14126
+ }
14127
+
14128
+ .pa-accent-grid__item--copy-hover:hover .pa-accent-grid__copy {
14129
+ opacity: 0.5;
14130
+ }
14131
+
14132
+ .pa-accent-grid__item--copy-hover:hover .pa-accent-grid__copy:hover {
14133
+ opacity: 1;
14134
+ background: rgba(128, 128, 128, 0.1);
14135
+ }
14136
+
14137
+ .pa-accent-grid__item--copy-click .pa-accent-grid__value {
14138
+ cursor: pointer;
14139
+ transition: opacity 0.15s;
14140
+ }
14141
+
14142
+ .pa-accent-grid__item--copy-click .pa-accent-grid__value:hover {
14143
+ opacity: 0.7;
14144
+ }
14145
+
14146
+ .pa-accent-grid__item--copy-click .pa-accent-grid__value::after {
14147
+ content: "Click to copy";
14148
+ font-size: 1rem;
14149
+ opacity: 0;
14150
+ margin-inline-start: 0.8rem;
14151
+ transition: opacity 0.15s;
14152
+ }
14153
+
14154
+ .pa-accent-grid__item--copy-click .pa-accent-grid__value:hover::after {
14155
+ opacity: 0.6;
14156
+ }
14157
+
14158
+ .pa-accent-grid__item--copied .pa-accent-grid__value::after {
14159
+ content: "Copied!" !important;
14160
+ opacity: 1 !important;
14161
+ color: var(--pa-color-4, #28a745);
14162
+ }
14163
+
14164
+ /* ========================================
14165
+ Data Visualization Components
14166
+ Progress bars, rings, gauges, heatmaps, sparklines
14167
+ ======================================== */
14168
+ .pa-progress {
14169
+ width: 100%;
14170
+ height: 0.8rem;
14171
+ background: rgba(0, 0, 0, 0.08);
14172
+ border-radius: 4px;
14173
+ overflow: hidden;
14174
+ position: relative;
14175
+ }
14176
+
14177
+ .pa-progress__fill {
14178
+ height: 100%;
14179
+ width: var(--value, 0%);
14180
+ background: #007bff;
14181
+ border-radius: inherit;
14182
+ transition: width 0.25s ease;
14183
+ }
14184
+
14185
+ .pa-progress__label {
14186
+ display: flex;
14187
+ justify-content: space-between;
14188
+ margin-bottom: 0.4rem;
14189
+ font-size: 1.2rem;
14190
+ font-weight: 500;
14191
+ color: var(--pa-text-color-1);
14192
+ }
14193
+
14194
+ .pa-progress__label-value {
14195
+ color: var(--pa-text-color-2);
14196
+ }
14197
+
14198
+ .pa-progress--xs {
14199
+ height: 0.3rem;
14200
+ }
14201
+
14202
+ .pa-progress--sm {
14203
+ height: 0.5rem;
14204
+ }
14205
+
14206
+ .pa-progress--lg {
14207
+ height: 1.2rem;
14208
+ }
14209
+
14210
+ .pa-progress--success > .pa-progress__fill {
14211
+ background: #28a745;
14212
+ }
14213
+
14214
+ .pa-progress--warning > .pa-progress__fill {
14215
+ background: #ffc107;
14216
+ }
14217
+
14218
+ .pa-progress--danger > .pa-progress__fill {
14219
+ background: #dc3545;
14220
+ }
14221
+
14222
+ .pa-progress--info > .pa-progress__fill {
14223
+ background: #17a2b8;
14224
+ }
14225
+
14226
+ .pa-progress--rounded {
14227
+ border-radius: 50rem;
14228
+ }
14229
+
14230
+ .pa-progress--striped > .pa-progress__fill {
14231
+ background-image: repeating-linear-gradient(45deg, rgba(255, 255, 255, 0.2) 0, rgba(255, 255, 255, 0.2) 25%, transparent 25%, transparent 50%);
14232
+ background-size: 1.6rem 1.6rem;
14233
+ }
14234
+
14235
+ .pa-progress--animated > .pa-progress__fill {
14236
+ animation: pa-progress-stripe 1s linear infinite;
14237
+ }
14238
+
14239
+ @keyframes pa-progress-stripe {
14240
+ 0% {
14241
+ background-position: 1.6rem 0;
14242
+ }
14243
+ 100% {
14244
+ background-position: 0 0;
14245
+ }
14246
+ }
14247
+ .pa-progress-group {
14248
+ display: flex;
14249
+ flex-direction: column;
14250
+ gap: 0.4rem;
14251
+ }
14252
+
14253
+ .pa-stacked-bar {
14254
+ display: flex;
14255
+ width: 100%;
14256
+ height: 1.2rem;
14257
+ border-radius: 4px;
14258
+ overflow: hidden;
14259
+ background: rgba(0, 0, 0, 0.08);
14260
+ }
14261
+
14262
+ .pa-stacked-bar__segment {
14263
+ height: 100%;
14264
+ width: var(--value, 0%);
14265
+ transition: width 0.25s ease;
14266
+ background: #007bff;
14267
+ }
14268
+
14269
+ .pa-stacked-bar__segment--success {
14270
+ background: #28a745;
14271
+ }
14272
+
14273
+ .pa-stacked-bar__segment--warning {
14274
+ background: #ffc107;
14275
+ }
14276
+
14277
+ .pa-stacked-bar__segment--danger {
14278
+ background: #dc3545;
14279
+ }
14280
+
14281
+ .pa-stacked-bar__segment--info {
14282
+ background: #17a2b8;
14283
+ }
14284
+
14285
+ .pa-stacked-bar__segment--secondary {
14286
+ background: #6c757d;
14287
+ }
14288
+
14289
+ .pa-stacked-bar__legend {
14290
+ display: flex;
14291
+ flex-wrap: wrap;
14292
+ gap: 1.6rem;
14293
+ margin-top: 0.8rem;
14294
+ }
14295
+
14296
+ .pa-stacked-bar__legend-item {
14297
+ display: flex;
14298
+ align-items: center;
14299
+ gap: 0.4rem;
14300
+ font-size: 1.2rem;
14301
+ color: var(--pa-text-color-2);
14302
+ }
14303
+
14304
+ .pa-stacked-bar__legend-swatch {
14305
+ width: 1rem;
14306
+ height: 1rem;
14307
+ border-radius: 2px;
14308
+ flex-shrink: 0;
14309
+ }
14310
+
14311
+ .pa-stacked-bar__legend-swatch--primary {
14312
+ background: #007bff;
14313
+ }
14314
+
14315
+ .pa-stacked-bar__legend-swatch--success {
14316
+ background: #28a745;
14317
+ }
14318
+
14319
+ .pa-stacked-bar__legend-swatch--warning {
14320
+ background: #ffc107;
14321
+ }
14322
+
14323
+ .pa-stacked-bar__legend-swatch--danger {
14324
+ background: #dc3545;
14325
+ }
14326
+
14327
+ .pa-stacked-bar__legend-swatch--info {
14328
+ background: #17a2b8;
14329
+ }
14330
+
14331
+ .pa-stacked-bar__legend-swatch--secondary {
14332
+ background: #6c757d;
14333
+ }
14334
+
14335
+ .pa-stacked-bar--sm {
14336
+ height: 0.5rem;
14337
+ }
14338
+
14339
+ .pa-stacked-bar--lg {
14340
+ height: 1.2rem;
14341
+ }
14342
+
14343
+ .pa-stacked-bar--rounded {
14344
+ border-radius: 50rem;
14345
+ }
14346
+
14347
+ .pa-progress-ring {
14348
+ width: 8rem;
14349
+ height: 8rem;
14350
+ border-radius: 50%;
14351
+ background: conic-gradient(#007bff calc(var(--value, 0) * 3.6deg), rgba(0, 0, 0, 0.08) 0deg);
14352
+ display: flex;
14353
+ align-items: center;
14354
+ justify-content: center;
14355
+ flex-shrink: 0;
14356
+ }
14357
+
14358
+ .pa-progress-ring__inner {
14359
+ width: 70%;
14360
+ height: 70%;
14361
+ border-radius: 50%;
14362
+ background: #ffffff;
14363
+ display: flex;
14364
+ flex-direction: column;
14365
+ align-items: center;
14366
+ justify-content: center;
14367
+ }
14368
+
14369
+ .pa-progress-ring__value {
14370
+ font-size: 1.8rem;
14371
+ font-weight: 700;
14372
+ line-height: 1;
14373
+ color: var(--pa-text-color-1);
14374
+ }
14375
+
14376
+ .pa-progress-ring__label {
14377
+ font-size: 1rem;
14378
+ color: var(--pa-text-color-2);
14379
+ margin-top: 0.4rem;
14380
+ }
14381
+
14382
+ .pa-progress-ring--sm {
14383
+ width: 5rem;
14384
+ height: 5rem;
14385
+ }
14386
+
14387
+ .pa-progress-ring--sm .pa-progress-ring__value {
14388
+ font-size: 1.6rem;
14389
+ }
14390
+
14391
+ .pa-progress-ring--sm .pa-progress-ring__label {
14392
+ font-size: 1rem;
14393
+ }
14394
+
14395
+ .pa-progress-ring--lg {
14396
+ width: 11rem;
14397
+ height: 11rem;
14398
+ }
14399
+
14400
+ .pa-progress-ring--lg .pa-progress-ring__value {
14401
+ font-size: 2.4rem;
14402
+ }
14403
+
14404
+ .pa-progress-ring--lg .pa-progress-ring__label {
14405
+ font-size: 1.2rem;
14406
+ }
14407
+
14408
+ .pa-progress-ring--success {
14409
+ background: conic-gradient(#28a745 calc(var(--value, 0) * 3.6deg), rgba(0, 0, 0, 0.08) 0deg);
14410
+ }
14411
+
14412
+ .pa-progress-ring--warning {
14413
+ background: conic-gradient(#ffc107 calc(var(--value, 0) * 3.6deg), rgba(0, 0, 0, 0.08) 0deg);
14414
+ }
14415
+
14416
+ .pa-progress-ring--danger {
14417
+ background: conic-gradient(#dc3545 calc(var(--value, 0) * 3.6deg), rgba(0, 0, 0, 0.08) 0deg);
14418
+ }
14419
+
14420
+ .pa-progress-ring--info {
14421
+ background: conic-gradient(#17a2b8 calc(var(--value, 0) * 3.6deg), rgba(0, 0, 0, 0.08) 0deg);
14422
+ }
14423
+
14424
+ .pa-gauge {
14425
+ width: 12rem;
14426
+ height: calc(12rem / 2);
14427
+ border-radius: 12rem 12rem 0 0;
14428
+ overflow: hidden;
14429
+ background: conic-gradient(from 0.75turn, #007bff calc(var(--value, 0) * 1.8deg), rgba(0, 0, 0, 0.08) 0deg);
14430
+ position: relative;
14431
+ flex-shrink: 0;
14432
+ }
14433
+
14434
+ .pa-gauge__inner {
14435
+ position: absolute;
14436
+ bottom: 0;
14437
+ left: 15%;
14438
+ right: 15%;
14439
+ height: 70%;
14440
+ border-radius: 12rem 12rem 0 0;
14441
+ background: #ffffff;
14442
+ display: flex;
14443
+ flex-direction: column;
14444
+ align-items: center;
14445
+ justify-content: flex-end;
14446
+ padding-bottom: 0.4rem;
14447
+ }
14448
+
14449
+ .pa-gauge__value {
14450
+ font-size: 2.4rem;
14451
+ font-weight: 700;
14452
+ line-height: 1;
14453
+ color: var(--pa-text-color-1);
14454
+ }
14455
+
14456
+ .pa-gauge__label {
14457
+ font-size: 1.2rem;
14458
+ color: var(--pa-text-color-2);
14459
+ margin-top: 0.4rem;
14460
+ }
14461
+
14462
+ .pa-gauge__min, .pa-gauge__max {
14463
+ position: absolute;
14464
+ bottom: 0;
14465
+ font-size: 1rem;
14466
+ color: var(--pa-text-color-2);
14467
+ }
14468
+
14469
+ .pa-gauge__min {
14470
+ left: 0;
14471
+ }
14472
+
14473
+ .pa-gauge__max {
14474
+ right: 0;
14475
+ }
14476
+
14477
+ .pa-gauge--success {
14478
+ background: conic-gradient(from 0.75turn, #28a745 calc(var(--value, 0) * 1.8deg), rgba(0, 0, 0, 0.08) 0deg);
14479
+ }
14480
+
14481
+ .pa-gauge--warning {
14482
+ background: conic-gradient(from 0.75turn, #ffc107 calc(var(--value, 0) * 1.8deg), rgba(0, 0, 0, 0.08) 0deg);
14483
+ }
14484
+
14485
+ .pa-gauge--danger {
14486
+ background: conic-gradient(from 0.75turn, #dc3545 calc(var(--value, 0) * 1.8deg), rgba(0, 0, 0, 0.08) 0deg);
14487
+ }
14488
+
14489
+ .pa-gauge--info {
14490
+ background: conic-gradient(from 0.75turn, #17a2b8 calc(var(--value, 0) * 1.8deg), rgba(0, 0, 0, 0.08) 0deg);
14491
+ }
14492
+
14493
+ .pa-gauge--zones {
14494
+ background: conic-gradient(from 0.75turn, #28a745 0deg, #28a745 90deg, #ffc107 90deg, #ffc107 135deg, #dc3545 135deg, #dc3545 180deg, rgba(0, 0, 0, 0.08) 180deg);
14495
+ }
14496
+
14497
+ .pa-data-bar {
14498
+ display: flex;
14499
+ flex-direction: column;
14500
+ gap: 0.4rem;
14501
+ min-width: 6rem;
14502
+ }
14503
+
14504
+ .pa-data-bar__value {
14505
+ font-size: 1.4rem;
14506
+ font-weight: 500;
14507
+ color: var(--pa-text-color-1);
14508
+ line-height: 1;
14509
+ }
14510
+
14511
+ .pa-data-bar__track {
14512
+ width: 100%;
14513
+ height: 0.4rem;
14514
+ background: rgba(0, 0, 0, 0.06);
14515
+ border-radius: 2px;
14516
+ overflow: hidden;
14517
+ }
14518
+
14519
+ .pa-data-bar__fill {
14520
+ height: 100%;
14521
+ width: var(--value, 0%);
14522
+ background: #007bff;
14523
+ border-radius: inherit;
14524
+ transition: width 0.25s ease;
14525
+ }
14526
+
14527
+ .pa-data-bar--success .pa-data-bar__fill {
14528
+ background: #28a745;
14529
+ }
14530
+
14531
+ .pa-data-bar--warning .pa-data-bar__fill {
14532
+ background: #ffc107;
14533
+ }
14534
+
14535
+ .pa-data-bar--danger .pa-data-bar__fill {
14536
+ background: #dc3545;
14537
+ }
14538
+
14539
+ .pa-data-bar--info .pa-data-bar__fill {
14540
+ background: #17a2b8;
14541
+ }
14542
+
14543
+ .pa-data-bar--negative .pa-data-bar__fill {
14544
+ background: #dc3545;
14545
+ margin-inline-start: auto;
14546
+ }
14547
+
14548
+ .pa-heatmap {
14549
+ display: inline-grid;
14550
+ grid-template-columns: repeat(53, 1.2rem);
14551
+ grid-auto-rows: 1.2rem;
14552
+ gap: 0.2rem;
14553
+ }
14554
+
14555
+ .pa-heatmap__cell {
14556
+ border-radius: 2px;
14557
+ background: rgba(0, 0, 0, 0.08);
14558
+ }
14559
+
14560
+ .pa-heatmap__cell[data-level="1"] {
14561
+ background: rgba(0, 123, 255, 0.2);
14562
+ }
14563
+
14564
+ .pa-heatmap__cell[data-level="2"] {
14565
+ background: rgba(0, 123, 255, 0.4);
14566
+ }
14567
+
14568
+ .pa-heatmap__cell[data-level="3"] {
14569
+ background: rgba(0, 123, 255, 0.65);
14570
+ }
14571
+
14572
+ .pa-heatmap__cell[data-level="4"] {
14573
+ background: #007bff;
14574
+ }
14575
+
14576
+ .pa-heatmap--success .pa-heatmap__cell[data-level="1"] {
14577
+ background: rgba(40, 167, 69, 0.2);
14578
+ }
14579
+
14580
+ .pa-heatmap--success .pa-heatmap__cell[data-level="2"] {
14581
+ background: rgba(40, 167, 69, 0.4);
14582
+ }
14583
+
14584
+ .pa-heatmap--success .pa-heatmap__cell[data-level="3"] {
14585
+ background: rgba(40, 167, 69, 0.65);
14586
+ }
14587
+
14588
+ .pa-heatmap--success .pa-heatmap__cell[data-level="4"] {
14589
+ background: #28a745;
14590
+ }
14591
+
14592
+ .pa-heatmap--danger .pa-heatmap__cell[data-level="1"] {
14593
+ background: rgba(220, 53, 69, 0.2);
14594
+ }
14595
+
14596
+ .pa-heatmap--danger .pa-heatmap__cell[data-level="2"] {
14597
+ background: rgba(220, 53, 69, 0.4);
14598
+ }
14599
+
14600
+ .pa-heatmap--danger .pa-heatmap__cell[data-level="3"] {
14601
+ background: rgba(220, 53, 69, 0.65);
14602
+ }
14603
+
14604
+ .pa-heatmap--danger .pa-heatmap__cell[data-level="4"] {
14605
+ background: #dc3545;
14606
+ }
14607
+
14608
+ .pa-heatmap__legend {
14609
+ display: flex;
14610
+ align-items: center;
14611
+ gap: 0.4rem;
14612
+ margin-top: 0.8rem;
14613
+ font-size: 1.2rem;
14614
+ color: var(--pa-text-color-2);
14615
+ }
14616
+
14617
+ .pa-heatmap__legend-cell {
14618
+ width: 1.2rem;
14619
+ height: 1.2rem;
14620
+ border-radius: 2px;
14621
+ background: rgba(0, 0, 0, 0.08);
14622
+ }
14623
+
14624
+ .pa-heatmap__legend-cell[data-level="1"] {
14625
+ background: rgba(0, 123, 255, 0.2);
14626
+ }
14627
+
14628
+ .pa-heatmap__legend-cell[data-level="2"] {
14629
+ background: rgba(0, 123, 255, 0.4);
14630
+ }
14631
+
14632
+ .pa-heatmap__legend-cell[data-level="3"] {
14633
+ background: rgba(0, 123, 255, 0.65);
14634
+ }
14635
+
14636
+ .pa-heatmap__legend-cell[data-level="4"] {
14637
+ background: #007bff;
14638
+ }
14639
+
14640
+ .pa-heatmap--compact {
14641
+ grid-template-columns: repeat(53, 1rem);
14642
+ grid-auto-rows: 1rem;
14643
+ gap: 0.1rem;
14644
+ }
14645
+
14646
+ .pa-heatmap--compact .pa-heatmap__cell {
14647
+ border-radius: 1px;
14648
+ }
14649
+
14650
+ .pa-sparkline {
14651
+ display: inline-flex;
14652
+ align-items: flex-end;
14653
+ gap: 0.2rem;
14654
+ height: 3rem;
14655
+ }
14656
+
14657
+ .pa-sparkline__bar {
14658
+ width: 0.3rem;
14659
+ height: var(--value, 50%);
14660
+ background: #007bff;
14661
+ border-radius: 2px 2px 0 0;
14662
+ transition: height 0.25s ease;
14663
+ min-height: 1px;
14664
+ }
14665
+
14666
+ .pa-sparkline--success .pa-sparkline__bar {
14667
+ background: #28a745;
14668
+ }
14669
+
14670
+ .pa-sparkline--warning .pa-sparkline__bar {
14671
+ background: #ffc107;
14672
+ }
14673
+
14674
+ .pa-sparkline--danger .pa-sparkline__bar {
14675
+ background: #dc3545;
14676
+ }
14677
+
14678
+ .pa-sparkline--info .pa-sparkline__bar {
14679
+ background: #17a2b8;
14680
+ }
14681
+
14682
+ .pa-sparkline--sm {
14683
+ height: 2rem;
14684
+ }
14685
+
14686
+ .pa-sparkline--lg {
14687
+ height: 4.8rem;
14688
+ }
14689
+
14690
+ .pa-sparkline--lg .pa-sparkline__bar {
14691
+ width: 0.4rem;
14692
+ }
14693
+
14694
+ .pa-bar-list {
14695
+ display: flex;
14696
+ flex-direction: column;
14697
+ gap: 1.6rem;
14698
+ }
14699
+
14700
+ .pa-bar-list__item {
14701
+ display: flex;
14702
+ flex-direction: column;
14703
+ gap: 0.4rem;
14704
+ }
14705
+
14706
+ .pa-bar-list__header {
14707
+ display: flex;
14708
+ justify-content: space-between;
14709
+ align-items: baseline;
14710
+ gap: 0.8rem;
14711
+ }
14712
+
14713
+ .pa-bar-list__label {
14714
+ font-size: 1.4rem;
14715
+ color: var(--pa-text-color-1);
14716
+ min-width: 0;
14717
+ overflow: hidden;
14718
+ text-overflow: ellipsis;
14719
+ white-space: nowrap;
14720
+ }
14721
+
14722
+ .pa-bar-list__value {
14723
+ font-size: 1.4rem;
14724
+ font-weight: 600;
14725
+ color: var(--pa-text-color-1);
14726
+ flex-shrink: 0;
14727
+ }
14728
+
14729
+ .pa-bar-list__bar {
14730
+ width: 100%;
14731
+ height: 0.4rem;
14732
+ background: rgba(0, 0, 0, 0.06);
14733
+ border-radius: 2px;
14734
+ overflow: hidden;
14735
+ }
14736
+
14737
+ .pa-bar-list__bar::after {
14738
+ content: "";
14739
+ display: block;
14740
+ height: 100%;
14741
+ width: var(--value, 0%);
14742
+ background: #007bff;
14743
+ border-radius: inherit;
14744
+ transition: width 0.25s ease;
14745
+ }
14746
+
14747
+ .pa-bar-list--success .pa-bar-list__bar::after {
14748
+ background: #28a745;
14749
+ }
14750
+
14751
+ .pa-bar-list--warning .pa-bar-list__bar::after {
14752
+ background: #ffc107;
14753
+ }
14754
+
14755
+ .pa-bar-list--danger .pa-bar-list__bar::after {
14756
+ background: #dc3545;
14757
+ }
14758
+
14759
+ .pa-bar-list--info .pa-bar-list__bar::after {
14760
+ background: #17a2b8;
14761
+ }
14762
+
14763
+ .pa-bar-list--compact {
14764
+ gap: 0.8rem;
14765
+ }
14766
+
14767
+ .pa-bar-list--compact .pa-bar-list__item {
14768
+ gap: 0.2rem;
14769
+ }
14770
+
14771
+ .pa-bar-list--compact .pa-bar-list__label,
14772
+ .pa-bar-list--compact .pa-bar-list__value {
14773
+ font-size: 1.2rem;
14774
+ }
14775
+
14776
+ .pa-bar-list--compact .pa-bar-list__bar {
14777
+ height: 0.3rem;
14778
+ }
14779
+
13904
14780
  /* ========================================
13905
14781
  Utility Components
13906
14782
  Font utilities, compact mode, component showcase
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@keenmate/pure-admin-theme-express",
3
- "version": "1.5.1",
3
+ "version": "2.0.0",
4
4
  "description": "Express theme for Pure Admin",
5
5
  "style": "dist/express.css",
6
6
  "exports": {
@@ -33,10 +33,10 @@
33
33
  },
34
34
  "homepage": "https://github.com/KeenMate/pure-admin#readme",
35
35
  "peerDependencies": {
36
- "@keenmate/pure-admin-core": "^1.0.0"
36
+ "@keenmate/pure-admin-core": "^2.0.0"
37
37
  },
38
38
  "devDependencies": {
39
- "@keenmate/pure-admin-core": "^1.0.0",
39
+ "@keenmate/pure-admin-core": "^2.0.0",
40
40
  "sass": "^1.70.0"
41
41
  },
42
42
  "publishConfig": {