@keenmate/pure-admin-theme-dark 1.0.0 → 1.1.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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@keenmate/pure-admin-theme-dark",
3
- "version": "1.0.0",
3
+ "version": "1.1.0",
4
4
  "description": "Dark theme for Pure Admin with color variants (blue, green, red) via CSS classes",
5
5
  "style": "dist/dark.css",
6
6
  "exports": {
@@ -15,7 +15,12 @@
15
15
  "build": "sass src/scss:dist --no-source-map --silence-deprecation=import --load-path=../../node_modules",
16
16
  "prepublishOnly": "npm run build"
17
17
  },
18
- "keywords": ["pure-admin", "theme", "dark", "css"],
18
+ "keywords": [
19
+ "pure-admin",
20
+ "theme",
21
+ "dark",
22
+ "css"
23
+ ],
19
24
  "author": "KeenMate",
20
25
  "license": "MIT",
21
26
  "peerDependencies": {
@@ -49,14 +49,22 @@ $base-text-color-3: #888888;
49
49
  $base-text-color-4: #666666;
50
50
  $base-text-color-on-accent: #ffffff;
51
51
 
52
- // Surface colors (dark theme = dark surfaces)
53
- $base-surface-1: $dark-bg-secondary; // Cards, modals
54
- $base-surface-2: $dark-bg-primary; // Page background
55
- $base-surface-3: $dark-bg-quaternary; // Dividers
56
- $base-surface-inverse: $dark-text-primary; // Light elements on dark
52
+ // Background colors (dark theme = dark surfaces)
53
+ $base-main-bg: $dark-bg-secondary; // Cards, modals (primary background)
54
+ $base-page-bg: $dark-bg-primary; // Page background
55
+ $base-subtle-bg: $dark-bg-tertiary; // Subtle/muted areas
56
+ $base-inverse-bg: $dark-text-primary; // Light elements on dark
57
+ $base-hover-bg: $dark-bg-hover; // Hover state background
58
+ $base-disabled-bg: $dark-bg-tertiary; // Disabled state background
57
59
  $base-overlay-bg: rgba(0, 0, 0, 0.7);
58
60
  $base-shadow-color: rgba(0, 0, 0, 0.4);
59
61
 
62
+ // Legacy surface aliases (for backward compatibility)
63
+ $base-surface-1: $base-main-bg;
64
+ $base-surface-2: $base-page-bg;
65
+ $base-surface-3: $dark-bg-quaternary;
66
+ $base-surface-inverse: $base-inverse-bg;
67
+
60
68
  // Border
61
69
  $base-border-color: $dark-bg-quaternary;
62
70
 
@@ -111,16 +119,16 @@ $base-focus-ring-color: rgba($dark-accent, 0.25);
111
119
  @import '@keenmate/pure-admin-core/src/scss/variables/index';
112
120
 
113
121
  // Layout-specific overrides (these are Pure Admin specific)
114
- $primary-bg: $dark-bg-primary;
115
- $content-background-color: $dark-bg-primary;
122
+ $main-bg: $dark-bg-primary;
123
+ $subtle-bg: $dark-bg-primary;
116
124
  $header-bg: $dark-bg-header;
117
125
  $sidebar-bg: $dark-bg-sidebar;
118
126
  $sidebar-submenu-bg: $dark-bg-tertiary;
119
127
  $sidebar-submenu-hover-bg: $dark-bg-hover;
120
128
  $sidebar-submenu-active-bg: $dark-bg-quaternary;
121
129
  $footer-bg: $dark-bg-header;
122
- $text-primary: $dark-text-primary;
123
- $text-secondary: $dark-text-secondary;
130
+ $text-color-1: $dark-text-primary;
131
+ $text-color-2: $dark-text-secondary;
124
132
  $accent-hover: rgba($dark-accent, 0.15);
125
133
  $accent-light: rgba($dark-accent, 0.08);
126
134
 
@@ -198,13 +206,16 @@ $checkbox-focus-shadow: 0 0 0 2px $base-focus-ring-color;
198
206
  // Pure Admin theme CSS variables for runtime theme switching
199
207
  @include output-pa-css-variables;
200
208
 
209
+ // Override base-elevated-bg for dark mode (web-grid striped rows, headers)
210
+ --base-elevated-bg: #{$dark-bg-tertiary};
211
+
201
212
  // Web component overrides (dark mode)
202
213
  --drp-dropdown-bg: #{$dark-bg-secondary};
203
214
  --drp-border-color: #{$dark-bg-quaternary};
204
215
  --drp-primary-bg: #{$dark-bg-primary};
205
216
  --drp-primary-bg-hover: #{$dark-bg-tertiary};
206
- --drp-text-primary: #{$dark-text-primary};
207
- --drp-text-secondary: #{$dark-text-secondary};
217
+ --drp-text-color-1: #{$dark-text-primary};
218
+ --drp-text-color-2: #{$dark-text-secondary};
208
219
  --drp-button-bg: transparent;
209
220
  --drp-button-color: #{$dark-text-primary};
210
221
  --drp-button-accent-text-color: #ffffff;
@@ -243,13 +254,13 @@ $checkbox-focus-shadow: 0 0 0 2px $base-focus-ring-color;
243
254
  --page-loader-spinner-accent: #{$dark-accent};
244
255
 
245
256
  // Core colors - light backgrounds
246
- --pa-primary-bg: #{$light-card};
247
- --pa-bg-secondary: #{$light-bg};
248
- --pa-content-bg: #{$light-bg};
257
+ --pa-main-bg: #{$light-card};
258
+ --pa-page-bg: #{$light-bg};
259
+ --pa-subtle-bg: #{$light-bg};
249
260
 
250
261
  // Text colors - dark text on light bg
251
- --pa-text-primary: #{$light-text};
252
- --pa-text-secondary: #{$light-text-secondary};
262
+ --pa-text-color-1: #{$light-text};
263
+ --pa-text-color-2: #{$light-text-secondary};
253
264
 
254
265
  // Keep accent color
255
266
  --pa-accent: #{$dark-accent};
@@ -352,9 +363,19 @@ $checkbox-focus-shadow: 0 0 0 2px $base-focus-ring-color;
352
363
  --pa-info-bg-light: rgba(14, 165, 233, 0.1);
353
364
 
354
365
  // Base variables for web components (light mode)
366
+ // Semantic names (preferred)
367
+ --base-main-bg: #{$light-card};
368
+ --base-page-bg: #{$light-bg};
369
+ --base-subtle-bg: #{$light-surface};
370
+ --base-hover-bg: #{$light-surface};
371
+ --base-active-bg: #{$light-border};
372
+ --base-disabled-bg: #{$light-surface};
373
+ --base-elevated-bg: #{$light-surface};
374
+ // Legacy aliases
355
375
  --base-surface-1: #{$light-card};
356
376
  --base-surface-2: #{$light-bg};
357
377
  --base-surface-3: #{$light-surface};
378
+ // Text colors
358
379
  --base-text-color-1: #{$light-text};
359
380
  --base-text-color-2: #{$light-text-secondary};
360
381
  --base-text-color-3: #94a3b8;
@@ -383,8 +404,8 @@ $checkbox-focus-shadow: 0 0 0 2px $base-focus-ring-color;
383
404
  --drp-border-color: #{$light-border};
384
405
  --drp-primary-bg: #{$light-bg};
385
406
  --drp-primary-bg-hover: #{$light-surface};
386
- --drp-text-primary: #{$light-text};
387
- --drp-text-secondary: #{$light-text-secondary};
407
+ --drp-text-color-1: #{$light-text};
408
+ --drp-text-color-2: #{$light-text-secondary};
388
409
  --drp-button-bg: transparent;
389
410
  --drp-button-color: #{$light-text};
390
411
  --drp-button-accent-text-color: #ffffff;
@@ -425,6 +446,17 @@ $checkbox-focus-shadow: 0 0 0 2px $base-focus-ring-color;
425
446
  border-color: #94a3b8 !important;
426
447
  }
427
448
  }
449
+
450
+ // Profile panel header - dark background needs light text
451
+ .pa-profile-panel__header {
452
+ .pa-profile-panel__name {
453
+ color: #ffffff;
454
+ }
455
+
456
+ .pa-profile-panel__email {
457
+ color: #{$dark-text-secondary};
458
+ }
459
+ }
428
460
  }
429
461
 
430
462
  // ============================================================================
@@ -440,9 +472,9 @@ $checkbox-focus-shadow: 0 0 0 2px $base-focus-ring-color;
440
472
  $blue-border: #475569; // slate-600
441
473
  $blue-accent: #3b82f6; // blue-500
442
474
 
443
- --pa-primary-bg: #{$blue-bg};
444
- --pa-bg-secondary: #{$blue-bg};
445
- --pa-content-bg: #020617;
475
+ --pa-main-bg: #{$blue-bg};
476
+ --pa-page-bg: #{$blue-bg};
477
+ --pa-subtle-bg: #020617;
446
478
 
447
479
  --pa-header-bg: #{$blue-card};
448
480
  --pa-header-border-color: #{$blue-border};
@@ -478,6 +510,11 @@ $checkbox-focus-shadow: 0 0 0 2px $base-focus-ring-color;
478
510
  --page-loader-spinner-accent: #{$blue-accent};
479
511
 
480
512
  --base-accent-color: #{$blue-accent};
513
+ // Semantic names (preferred)
514
+ --base-main-bg: #{$blue-card};
515
+ --base-page-bg: #{$blue-bg};
516
+ --base-hover-bg: #{$blue-surface};
517
+ // Legacy aliases
481
518
  --base-surface-1: #{$blue-card};
482
519
  --base-surface-2: #{$blue-bg};
483
520
  --base-border-color: #{$blue-surface};
@@ -494,9 +531,9 @@ $checkbox-focus-shadow: 0 0 0 2px $base-focus-ring-color;
494
531
  $green-border: #365e42;
495
532
  $green-accent: #22c55e;
496
533
 
497
- --pa-primary-bg: #{$green-bg};
498
- --pa-bg-secondary: #{$green-bg};
499
- --pa-content-bg: #0a0f0b;
534
+ --pa-main-bg: #{$green-bg};
535
+ --pa-page-bg: #{$green-bg};
536
+ --pa-subtle-bg: #0a0f0b;
500
537
 
501
538
  --pa-header-bg: #{$green-card};
502
539
  --pa-header-border-color: #{$green-border};
@@ -512,7 +549,7 @@ $checkbox-focus-shadow: 0 0 0 2px $base-focus-ring-color;
512
549
  --pa-accent-hover: rgba(34, 197, 94, 0.15);
513
550
  --pa-accent-light: rgba(34, 197, 94, 0.08);
514
551
 
515
- --pa-text-secondary: #86efac;
552
+ --pa-text-color-2: #86efac;
516
553
 
517
554
  --pa-card-bg: #{$green-card};
518
555
  --pa-card-header-bg: #{$green-bg};
@@ -534,6 +571,11 @@ $checkbox-focus-shadow: 0 0 0 2px $base-focus-ring-color;
534
571
  --page-loader-spinner-accent: #{$green-accent};
535
572
 
536
573
  --base-accent-color: #{$green-accent};
574
+ // Semantic names (preferred)
575
+ --base-main-bg: #{$green-card};
576
+ --base-page-bg: #{$green-bg};
577
+ --base-hover-bg: #{$green-surface};
578
+ // Legacy aliases
537
579
  --base-surface-1: #{$green-card};
538
580
  --base-surface-2: #{$green-bg};
539
581
  --base-border-color: #{$green-surface};
@@ -550,9 +592,9 @@ $checkbox-focus-shadow: 0 0 0 2px $base-focus-ring-color;
550
592
  $red-border: #6b3333;
551
593
  $red-accent: #ef4444;
552
594
 
553
- --pa-primary-bg: #{$red-bg};
554
- --pa-bg-secondary: #{$red-bg};
555
- --pa-content-bg: #18080a;
595
+ --pa-main-bg: #{$red-bg};
596
+ --pa-page-bg: #{$red-bg};
597
+ --pa-subtle-bg: #18080a;
556
598
 
557
599
  --pa-header-bg: #{$red-card};
558
600
  --pa-header-border-color: #{$red-border};
@@ -568,7 +610,7 @@ $checkbox-focus-shadow: 0 0 0 2px $base-focus-ring-color;
568
610
  --pa-accent-hover: rgba(239, 68, 68, 0.15);
569
611
  --pa-accent-light: rgba(239, 68, 68, 0.08);
570
612
 
571
- --pa-text-secondary: #fca5a5;
613
+ --pa-text-color-2: #fca5a5;
572
614
 
573
615
  --pa-card-bg: #{$red-card};
574
616
  --pa-card-header-bg: #{$red-bg};
@@ -590,6 +632,11 @@ $checkbox-focus-shadow: 0 0 0 2px $base-focus-ring-color;
590
632
  --page-loader-spinner-accent: #{$red-accent};
591
633
 
592
634
  --base-accent-color: #{$red-accent};
635
+ // Semantic names (preferred)
636
+ --base-main-bg: #{$red-card};
637
+ --base-page-bg: #{$red-bg};
638
+ --base-hover-bg: #{$red-surface};
639
+ // Legacy aliases
593
640
  --base-surface-1: #{$red-card};
594
641
  --base-surface-2: #{$red-bg};
595
642
  --base-border-color: #{$red-surface};