@memobit/themes 1.2.0 → 1.4.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/dist/vite.js CHANGED
@@ -2,7 +2,7 @@ import { THEME_ASSET_DIR } from "./index.js";
2
2
  import { readFileSync, readdirSync } from "node:fs";
3
3
  import { createRequire } from "node:module";
4
4
  import { dirname, join } from "node:path";
5
- //#region src/vite.ts
5
+ // src/vite.ts
6
6
  var readThemeFiles = (root) => {
7
7
  const require = createRequire(join(root, "noop.js"));
8
8
  let themesDir;
@@ -64,5 +64,4 @@ var memobitThemes = (options = {}) => {
64
64
  }
65
65
  };
66
66
  };
67
- //#endregion
68
67
  export { memobitThemes };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@memobit/themes",
3
- "version": "1.2.0",
4
- "description": "67 themes for the Memobit apps — each published as its own stylesheet so an app loads only the one it is showing, with preview palettes for the theme picker.",
3
+ "version": "1.4.0",
4
+ "description": "69 themes for the Memobit apps — each published as its own stylesheet so an app loads only the one it is showing, with preview palettes for the theme picker.",
5
5
  "keywords": [
6
6
  "css",
7
7
  "themes",
@@ -76,7 +76,7 @@
76
76
  "sass": "1.99.0",
77
77
  "typescript": "6.0.3",
78
78
  "typescript-eslint": "8.70.1",
79
- "vite": "8.1.5",
79
+ "vite": "8.3.3",
80
80
  "vite-plugin-dts": "5.0.0"
81
81
  }
82
82
  }
@@ -0,0 +1,36 @@
1
+ // Circuit Harbor theme - Dedicated to IoT Central app
2
+ // Dense device dashboard: Mesh Circuit's cyan kept for the accent only, on neutral surfaces that
3
+ // stay apart (card vs page 1.31, card border vs card 1.61) and neutral text (muted 5.3 on cards),
4
+ // so colour is left to device states.
5
+ @use './profile-theme' as profile;
6
+
7
+ [data-theme='circuit-harbor'] {
8
+ @include profile.app-profile(
9
+ (
10
+ font-family: "'Inter', 'IBM Plex Sans', sans-serif",
11
+ display-family: "'Space Grotesk', 'Inter', sans-serif",
12
+ base: #070c10,
13
+ surface: #1a2833,
14
+ surface-alt: #213140,
15
+ surface-strong: #0d151b,
16
+ border: #33495a,
17
+ border-strong: #44606f,
18
+ text: #d6e2ea,
19
+ title: #f4f8fb,
20
+ muted: #879cad,
21
+ sub-title: #abbecd,
22
+ accent: #22d3ee,
23
+ accent-strong: #06b6d4,
24
+ accent-soft: #0e3440,
25
+ accent-contrast: #04161a,
26
+ success: #4ade80,
27
+ warning: #fbbf24,
28
+ danger: #f87171,
29
+ info: #60a5fa,
30
+ wash-a: #0e7490,
31
+ wash-b: #1e3a5f,
32
+ title-transform: none,
33
+ title-letter-spacing: 0,
34
+ )
35
+ );
36
+ }
@@ -0,0 +1,272 @@
1
+ // War Room theme - Dark tactical command console for the Skirmish app (a themeable real-time strategy game)
2
+ // Slate-navy plotting table under amber command lights, a faint steel-blue radar glow and crisp HUD typography
3
+ [data-theme='war-room'] {
4
+ --font-family: 'Exo 2', 'Segoe UI', sans-serif;
5
+ --font-family-display: 'Rajdhani', 'Exo 2', sans-serif;
6
+
7
+ --body-background: var(--body-background-wash, var(--body-background-base));
8
+ --body-background-base: #0d131d;
9
+ --body-background-wash:
10
+ radial-gradient(55% 50% at 100% 0%, rgba(245, 158, 11, 0.12) 0%, transparent 65%),
11
+ radial-gradient(50% 45% at 0% 100%, rgba(56, 189, 248, 0.08) 0%, transparent 65%), linear-gradient(160deg, #141c29 0%, #0d131d 55%, #090d14 100%);
12
+ --body-background-glow:
13
+ radial-gradient(900px 500px at 85% 5%, rgba(245, 158, 11, 0.1) 0%, transparent 60%),
14
+ radial-gradient(700px 700px at 10% 95%, rgba(56, 189, 248, 0.06) 0%, transparent 65%);
15
+ --body-color: #d4dce8;
16
+ --body-color-accent: #f1f5fb;
17
+ --body-color-muted: #8a97ab;
18
+ --body-title-color: #eef2f8;
19
+ --body-sub-title-color: #b4c0d2;
20
+ --body-accent-color: #f59e0b;
21
+ --body-danger-color: #f0675a;
22
+
23
+ --backdrop-color: rgba(4, 7, 12, 0.7);
24
+ --text-shadow: rgba(0, 0, 0, 0.5);
25
+ --box-shadow: rgba(0, 0, 0, 0.5);
26
+
27
+ --header-background-color: #111926;
28
+ --header-border-bottom-color: rgba(245, 158, 11, 0.16);
29
+ --header-color: #d4dce8;
30
+ --header-font-weight: 600;
31
+
32
+ --card-background-color: #162030;
33
+ --card-background-accent-color: rgba(245, 158, 11, 0.06);
34
+ --card-border-color: #24324a;
35
+ --card-backdrop-filter: none;
36
+ --card-border-accent-color: #f59e0b;
37
+ --card-hover-border-color: rgba(245, 158, 11, 0.45);
38
+ --card-color: #d4dce8;
39
+ --card-accent-color: #f59e0b;
40
+ --card-box-shadow: 0 14px 34px rgba(0, 0, 0, 0.42), 0 2px 8px rgba(0, 0, 0, 0.3);
41
+ --card-surface-box-shadow: 0 1px 0 rgba(200, 220, 255, 0.05) inset, 0 0 0 1px rgba(0, 0, 0, 0.35), 0 18px 40px -20px rgba(0, 0, 0, 0.65);
42
+ --card-footer-background-color: #111926;
43
+ --card-footer-color: #b4c0d2;
44
+ --card-title-color: var(--body-title-color);
45
+ --card-title-font-family: var(--font-family-display, 'Rajdhani', sans-serif);
46
+ --card-title-font-size: var(--font-size-xl);
47
+ --card-title-font-style: normal;
48
+ --card-title-font-weight: var(--font-weight-bold);
49
+ --card-title-letter-spacing: 0.08em;
50
+ --card-title-text-transform: uppercase;
51
+
52
+ --links-color: #f59e0b;
53
+ --links-hover-color: #fbbf24;
54
+
55
+ --delimiter-color: rgba(212, 220, 232, 0.1);
56
+ --border-color: rgba(212, 220, 232, 0.13);
57
+
58
+ --button-default-border-color: #2c3c56;
59
+ --button-default-background-color: #1c2739;
60
+ --button-default-color: #d4dce8;
61
+ --button-default-hover-border-color: #fbbf24;
62
+ --button-default-hover-background-color: #233049;
63
+ --button-default-hover-color: #f1f5fb;
64
+
65
+ --button-info-border-color: #f59e0b;
66
+ --button-info-background-color: #b45309;
67
+ --button-info-color: #fff8eb;
68
+ --button-info-hover-border-color: #fbbf24;
69
+ --button-info-hover-background-color: #c9620e;
70
+ --button-info-hover-color: #fff8eb;
71
+
72
+ --button-warning-border-color: #f97316;
73
+ --button-warning-background-color: #b4501a;
74
+ --button-warning-color: #fff4ea;
75
+ --button-warning-hover-border-color: #fb923c;
76
+ --button-warning-hover-background-color: #c95f24;
77
+ --button-warning-hover-color: #fff4ea;
78
+
79
+ --button-success-border-color: #4ade80;
80
+ --button-success-background-color: #1f7a45;
81
+ --button-success-color: #effdf4;
82
+ --button-success-hover-border-color: #86efac;
83
+ --button-success-hover-background-color: #258c50;
84
+ --button-success-hover-color: #effdf4;
85
+
86
+ --button-danger-border-color: #f0675a;
87
+ --button-danger-background-color: #a83a30;
88
+ --button-danger-color: #fff1ef;
89
+ --button-danger-hover-border-color: #f58f85;
90
+ --button-danger-hover-background-color: #bf473c;
91
+ --button-danger-hover-color: #fff1ef;
92
+
93
+ --button-plain-color: #b4c0d2;
94
+ --button-plain-hover-color: #f1f5fb;
95
+ --button-ghost-border-color: transparent;
96
+ --button-ghost-background-color: transparent;
97
+ --button-ghost-color: var(--button-plain-color);
98
+ --button-ghost-hover-border-color: transparent;
99
+ --button-ghost-hover-background-color: rgba(245, 158, 11, 0.12);
100
+ --button-ghost-hover-color: var(--button-plain-hover-color);
101
+ --dropdown-border-color: #2c3c56;
102
+ --dropdown-header-background-color: #111926;
103
+ --dropdown-header-border-focus-color: #f59e0b;
104
+ --dropdown-header-color: #d4dce8;
105
+ --dropdown-options-background-color: #18233a;
106
+ --dropdown-options-color: #d4dce8;
107
+ --dropdown-options-hover-background-color: rgba(245, 158, 11, 0.12);
108
+ --dropdown-options-hover-color: #f1f5fb;
109
+ --dropdown-options-selected-background-color: rgba(245, 158, 11, 0.24);
110
+ --dropdown-options-selected-color: #fff6e0;
111
+ --dropdown-chips-background-color: #b45309;
112
+ --dropdown-chips-color: #fff8eb;
113
+ --dropdown-chips-border-color: #f59e0b;
114
+ --dropdown-chips-hover-background-color: #c9620e;
115
+ --dropdown-action-color: #b4c0d2;
116
+ --dropdown-action-background-color: #18233a;
117
+ --dropdown-action-hover-color: #f1f5fb;
118
+ --dropdown-action-hover-background-color: #233049;
119
+
120
+ --tabs-active-background-color: #f59e0b;
121
+ --tabs-active-color: #120c02;
122
+ --tabs-inactive-background-color: transparent;
123
+ --tabs-inactive-color: #8a97ab;
124
+
125
+ --modal-background-color: #162030;
126
+ --modal-border-color: #2c3c56;
127
+ --modal-backdrop-filter: none;
128
+ --modal-header-background-color: #111926;
129
+ --modal-header-color: #eef2f8;
130
+ --modal-title-color: var(--modal-header-color);
131
+ --modal-title-font-family: var(--font-family-display, 'Rajdhani', sans-serif);
132
+ --modal-title-font-size: var(--font-size-xl);
133
+ --modal-title-font-style: normal;
134
+ --modal-title-font-weight: var(--font-weight-bold);
135
+ --modal-title-letter-spacing: 0.08em;
136
+ --modal-title-text-transform: uppercase;
137
+ --modal-body-color: #d4dce8;
138
+ --modal-footer-background-color: #111926;
139
+ --modal-color: #d4dce8;
140
+ --modal-box-shadow: 0 28px 80px rgba(0, 0, 0, 0.62), 0 6px 18px rgba(0, 0, 0, 0.42);
141
+ --modal-surface-box-shadow: 0 1px 0 rgba(200, 220, 255, 0.05) inset, 0 0 0 1px rgba(0, 0, 0, 0.35), 0 18px 40px -20px rgba(0, 0, 0, 0.65);
142
+ --modal-box-shadow-hover: 0 32px 90px rgba(0, 0, 0, 0.66), 0 8px 24px rgba(0, 0, 0, 0.46);
143
+
144
+ --list-alternate-background-color: #131c2a;
145
+ --list-hover-background-color: rgba(245, 158, 11, 0.08);
146
+
147
+ --progress-bar-background-color: #1f2a3d;
148
+ --progress-bar-color: #f1f5fb;
149
+
150
+ --progress-default-bar-border-color: #2c3c56;
151
+ --progress-default-bar-fill-color: #6b7a92;
152
+
153
+ --progress-success-bar-border-color: #4ade80;
154
+ --progress-success-bar-fill-color: #4ade80;
155
+
156
+ --progress-info-bar-border-color: #f59e0b;
157
+ --progress-info-bar-fill-color: #f59e0b;
158
+
159
+ --progress-warning-bar-border-color: #f97316;
160
+ --progress-warning-bar-fill-color: #f97316;
161
+
162
+ --progress-danger-bar-border-color: #f0675a;
163
+ --progress-danger-bar-fill-color: #f0675a;
164
+
165
+ --form-control-background-color: #0f1622;
166
+ --form-control-color: #d4dce8;
167
+ --form-control-label-color: #8a97ab;
168
+ --form-control-label-font-size: var(--font-size-xs);
169
+ --form-control-label-font-weight: var(--font-weight-semibold);
170
+ --form-control-label-letter-spacing: 0.1em;
171
+ --form-control-label-text-transform: uppercase;
172
+ --form-control-border-color: #2c3c56;
173
+ --form-control-error-background-color: rgba(240, 103, 90, 0.08);
174
+ --form-control-error-color: #f58f85;
175
+ --form-control-error-border-color: #f0675a;
176
+ --form-control-focus-background-color: #131c2b;
177
+ --form-control-focus-border-color: #f59e0b;
178
+ --form-control-focus-color: #f1f5fb;
179
+ --form-control-placeholder-color: #66748a;
180
+ --form-control-success-background-color: rgba(74, 222, 128, 0.08);
181
+ --form-control-success-color: #86efac;
182
+ --form-control-success-border-color: #4ade80;
183
+
184
+ --form-control-selection-background-color: #f59e0b;
185
+ --form-control-selection-border-color: #f59e0b;
186
+ --form-control-selection-color: #120c02;
187
+ --form-control-selection-label-color: #f1f5fb;
188
+ --form-control-focus-ring: rgba(245, 158, 11, 0.3);
189
+
190
+ --calendar-background-color: #111926;
191
+ --calendar-border-color: #2c3c56;
192
+ --calendar-header-background-color: #1c2739;
193
+ --calendar-header-color: #eef2f8;
194
+ --calendar-day-color: #b4c0d2;
195
+ --calendar-day-hover-background-color: #233049;
196
+ --calendar-day-selected-background-color: #f59e0b;
197
+ --calendar-day-selected-color: #120c02;
198
+ --calendar-day-disabled-color: #4a5870;
199
+ --calendar-day-today-border-color: #f59e0b;
200
+ --calendar-day-weekend-color: #fb923c;
201
+
202
+ --datepicker-input-background-color: #0f1622;
203
+
204
+ --tooltip-background-color: #f59e0b;
205
+ --tooltip-border-color: #f59e0b;
206
+ --tooltip-color: #120c02;
207
+
208
+ --popover-background-color: #18233a;
209
+ --popover-border-color: #f59e0b;
210
+ --popover-color: #d4dce8;
211
+ --popover-arrow-color: #f59e0b;
212
+
213
+ --toast-info-background-color: #b45309;
214
+ --toast-info-color: #fff8eb;
215
+ --toast-info-border-color: #f59e0b;
216
+
217
+ --toast-success-background-color: #1f7a45;
218
+ --toast-success-color: #effdf4;
219
+ --toast-success-border-color: #4ade80;
220
+
221
+ --toast-warning-background-color: #b4501a;
222
+ --toast-warning-color: #fff4ea;
223
+ --toast-warning-border-color: #f97316;
224
+
225
+ --toast-danger-background-color: #a83a30;
226
+ --toast-danger-color: #fff1ef;
227
+ --toast-danger-border-color: #f0675a;
228
+
229
+ --loader-border-color: rgba(245, 158, 11, 0.22);
230
+ --loader-border-top-color: #f59e0b;
231
+
232
+ --rating-color-success: #4ade80;
233
+ --rating-color-warning: #f97316;
234
+ --rating-color-danger: #f0675a;
235
+ --rating-color-info: #f59e0b;
236
+ --rating-empty-color: #2c3a52;
237
+ --rating-empty-label-color: #8a97ab;
238
+ --rating-half-rate-empty-color: #2c3a52;
239
+
240
+ --slider-track-background-color: #1f2a3d;
241
+ --slider-track-border-color: #2c3c56;
242
+ --slider-track-hover-background-color: #26344c;
243
+ --slider-track-hover-border-color: #3a4c6a;
244
+ --slider-thumb-background-color: #f59e0b;
245
+ --slider-thumb-border-color: #f59e0b;
246
+ --slider-thumb-hover-background-color: #fbbf24;
247
+ --slider-thumb-hover-border-color: #fbbf24;
248
+
249
+ --chip-selected-background-color: rgba(245, 158, 11, 0.2);
250
+ --chip-selected-border-color: #f59e0b;
251
+ --chip-hover-border-color: #fbbf24;
252
+ --chip-hover-background-color: transparent;
253
+ --chip-hover-color: var(--body-color);
254
+ --chip-selected-color: #fbbf24;
255
+ --chip-selected-count-color: rgba(251, 191, 36, 0.75);
256
+
257
+ --note-container-effect-background-color: rgba(245, 158, 11, 0.08);
258
+ --note-container-effect-color: #d4dce8;
259
+ --note-container-effect-border-left-color: #f59e0b;
260
+
261
+ --infuse-effect-hover-border-color: #f59e0b;
262
+ --infuse-effect-hover-box-shadow-color: rgba(245, 158, 11, 0.26);
263
+ --infuse-effect-before-background: linear-gradient(90deg, #f59e0b, #38bdf8);
264
+
265
+ --up-lift-effect-hover-border-color: #f59e0b;
266
+ --up-lift-effect-box-shadow-color: rgba(0, 0, 0, 0.45);
267
+ --up-lift-effect-hover-box-shadow-color: rgba(245, 158, 11, 0.3);
268
+ --up-lift-effect-before-background: linear-gradient(135deg, #f59e0b 0%, #38bdf8 100%);
269
+
270
+ --glow-box-shadow-color: 0 0 18px rgba(245, 158, 11, 0.32), 0 0 8px rgba(56, 189, 248, 0.18);
271
+ --glow-hover-border-color: rgba(245, 158, 11, 0.45);
272
+ }