@weasel-js/theme 0.7.1 → 0.8.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/NOTICE +18 -0
- package/README.md +33 -6
- package/dist/fonts.css +19 -0
- package/dist/index.d.ts +211 -44
- package/dist/index.js +236 -89
- package/dist/index.js.map +1 -1
- package/dist/tokens.css +86 -172
- package/fonts/OFL-Inter.txt +92 -0
- package/fonts/OFL-Oswald.txt +93 -0
- package/fonts/README.md +70 -0
- package/fonts/inter-latin.woff2 +0 -0
- package/fonts/oswald-latin-variable.woff2 +0 -0
- package/package.json +14 -6
package/NOTICE
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
@weasel-js/theme
|
|
2
|
+
|
|
3
|
+
The package's source code is licensed under the MIT License (see LICENSE).
|
|
4
|
+
|
|
5
|
+
This package additionally redistributes two font binaries under the SIL Open
|
|
6
|
+
Font License, Version 1.1. The OFL applies to these files only:
|
|
7
|
+
|
|
8
|
+
fonts/oswald-latin-variable.woff2
|
|
9
|
+
Copyright 2016 The Oswald Project Authors
|
|
10
|
+
https://github.com/googlefonts/OswaldFont
|
|
11
|
+
License: fonts/OFL-Oswald.txt
|
|
12
|
+
|
|
13
|
+
fonts/inter-latin.woff2
|
|
14
|
+
Copyright (c) 2016 The Inter Project Authors
|
|
15
|
+
https://github.com/rsms/inter
|
|
16
|
+
License: fonts/OFL-Inter.txt
|
|
17
|
+
|
|
18
|
+
See fonts/README.md for the exact subsetting commands used.
|
package/README.md
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
# @weasel-js/theme
|
|
2
2
|
|
|
3
|
-
Design tokens shared by weasel-ui and weasel-hud —
|
|
3
|
+
Design tokens shared by weasel-ui and weasel-hud — generated from a DTCG
|
|
4
|
+
source into CSS custom properties plus a parallel TS export.
|
|
4
5
|
|
|
5
6
|
Part of [weasel](https://github.com/orochi235/weasel), a domain-agnostic 2D
|
|
6
7
|
scene-graph canvas kit for React. See the
|
|
@@ -15,12 +16,38 @@ npm install @weasel-js/theme
|
|
|
15
16
|
## Usage
|
|
16
17
|
|
|
17
18
|
```ts
|
|
18
|
-
import {
|
|
19
|
-
import '@weasel-js/theme/tokens.css';
|
|
19
|
+
import { THEMES, TOKEN_MANIFEST, type TokenName } from '@weasel-js/theme';
|
|
20
|
+
import '@weasel-js/theme/tokens.css'; // required — component styles read these
|
|
21
|
+
import '@weasel-js/theme/fonts.css'; // optional — bundled Oswald + Inter
|
|
20
22
|
```
|
|
21
23
|
|
|
22
|
-
|
|
24
|
+
`tokens.css` is required; component styles reference the custom properties it
|
|
25
|
+
declares. `fonts.css` is optional — skip it and the token font stacks fall back
|
|
26
|
+
to `system-ui`. Nothing is fetched from a third-party host either way.
|
|
23
27
|
|
|
24
|
-
|
|
28
|
+
Modes are selected with a data attribute, which cascades:
|
|
25
29
|
|
|
26
|
-
|
|
30
|
+
```html
|
|
31
|
+
<html data-wzl-mode="light">
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## Editing tokens
|
|
35
|
+
|
|
36
|
+
`src/generated/` is generated — never edit it. Change `tokens/weasel/*.json`,
|
|
37
|
+
then:
|
|
38
|
+
|
|
39
|
+
```sh
|
|
40
|
+
npm run gen:tokens -w @weasel-js/theme
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
CI re-runs the generator and fails if the committed output differs.
|
|
44
|
+
|
|
45
|
+
Token names are flat leaf keys inside `$type` groups: `color.fg-muted` becomes
|
|
46
|
+
`--wzl-fg-muted`. The group carries `$type` and contributes nothing to the name,
|
|
47
|
+
because `--wzl-accent` and `--wzl-accent-base` are both real tokens and DTCG
|
|
48
|
+
forbids a token that is also a group.
|
|
49
|
+
|
|
50
|
+
## Licenses
|
|
51
|
+
|
|
52
|
+
Code is MIT. The two bundled fonts are SIL Open Font License 1.1 — see `NOTICE`
|
|
53
|
+
and `fonts/README.md`.
|
package/dist/fonts.css
ADDED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/* Opt-in webfont loading. Import this only if you want the kit's intended
|
|
2
|
+
* faces; the token font stacks fall back to system-ui without it.
|
|
3
|
+
* Licenses: ../fonts/OFL-Oswald.txt, ../fonts/OFL-Inter.txt */
|
|
4
|
+
|
|
5
|
+
@font-face {
|
|
6
|
+
font-family: 'Oswald';
|
|
7
|
+
font-style: normal;
|
|
8
|
+
font-weight: 200 700;
|
|
9
|
+
font-display: swap;
|
|
10
|
+
src: url('../fonts/oswald-latin-variable.woff2') format('woff2');
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
@font-face {
|
|
14
|
+
font-family: 'Inter';
|
|
15
|
+
font-style: normal;
|
|
16
|
+
font-weight: 400;
|
|
17
|
+
font-display: swap;
|
|
18
|
+
src: url('../fonts/inter-latin.woff2') format('woff2');
|
|
19
|
+
}
|
package/dist/index.d.ts
CHANGED
|
@@ -1,12 +1,180 @@
|
|
|
1
|
+
type TokenName = '--wzl-accent' | '--wzl-accent-base' | '--wzl-accent-fg' | '--wzl-accent-hover' | '--wzl-accent-soft' | '--wzl-accent-strong' | '--wzl-bg' | '--wzl-border' | '--wzl-border-strong' | '--wzl-border-w' | '--wzl-button-fill' | '--wzl-button-fill-hover' | '--wzl-button-fill-pressed' | '--wzl-button-text' | '--wzl-curve-color' | '--wzl-curve-width' | '--wzl-danger' | '--wzl-danger-base' | '--wzl-ease-in-cubic' | '--wzl-ease-in-out-cubic' | '--wzl-ease-out-back' | '--wzl-ease-out-cubic' | '--wzl-fg' | '--wzl-fg-muted' | '--wzl-fg-on-accent' | '--wzl-fg-subtle' | '--wzl-focus-ring' | '--wzl-font-body' | '--wzl-font-display' | '--wzl-font-mono' | '--wzl-font-ui' | '--wzl-font-weight-bold' | '--wzl-font-weight-light' | '--wzl-font-weight-normal' | '--wzl-glass-tint' | '--wzl-gray-100' | '--wzl-gray-200' | '--wzl-gray-300' | '--wzl-gray-400' | '--wzl-gray-50' | '--wzl-gray-500' | '--wzl-gray-600' | '--wzl-gray-700' | '--wzl-gray-800' | '--wzl-gray-900' | '--wzl-input-bg' | '--wzl-line' | '--wzl-line-strong' | '--wzl-line-subtle' | '--wzl-line-width' | '--wzl-motion-fast' | '--wzl-motion-medium' | '--wzl-muted' | '--wzl-panel-bg' | '--wzl-panel-border' | '--wzl-radius-md' | '--wzl-radius-sm' | '--wzl-success' | '--wzl-success-base' | '--wzl-surface' | '--wzl-surface-raised' | '--wzl-surface-sunken' | '--wzl-tb-height' | '--wzl-text' | '--wzl-text-muted' | '--wzl-thumb-border' | '--wzl-thumb-fill' | '--wzl-thumb-text' | '--wzl-track-bg' | '--wzl-track-border' | '--wzl-warning' | '--wzl-warning-base';
|
|
2
|
+
interface GeneratedTheme {
|
|
3
|
+
readonly name: string;
|
|
4
|
+
readonly defaultMode: string;
|
|
5
|
+
readonly modes: Readonly<Record<string, Readonly<Record<TokenName, string>>>>;
|
|
6
|
+
}
|
|
7
|
+
declare const THEMES: {
|
|
8
|
+
readonly weasel: {
|
|
9
|
+
readonly name: "weasel";
|
|
10
|
+
readonly defaultMode: "dark";
|
|
11
|
+
readonly modes: {
|
|
12
|
+
readonly dark: {
|
|
13
|
+
readonly '--wzl-gray-50': "#f5f5f6";
|
|
14
|
+
readonly '--wzl-gray-100': "#e6e7e9";
|
|
15
|
+
readonly '--wzl-gray-200': "#c9cbcf";
|
|
16
|
+
readonly '--wzl-gray-300': "#9ea1a8";
|
|
17
|
+
readonly '--wzl-gray-400': "#6f737b";
|
|
18
|
+
readonly '--wzl-gray-500': "#4d5058";
|
|
19
|
+
readonly '--wzl-gray-600': "#383b42";
|
|
20
|
+
readonly '--wzl-gray-700': "#25272c";
|
|
21
|
+
readonly '--wzl-gray-800': "#181a1e";
|
|
22
|
+
readonly '--wzl-gray-900': "#0e0f12";
|
|
23
|
+
readonly '--wzl-accent-soft': "#1d1454";
|
|
24
|
+
readonly '--wzl-accent-base': "#2e1f7a";
|
|
25
|
+
readonly '--wzl-accent-strong': "#5841b8";
|
|
26
|
+
readonly '--wzl-danger-base': "#d94a3f";
|
|
27
|
+
readonly '--wzl-warning-base': "#d99a3f";
|
|
28
|
+
readonly '--wzl-success-base': "#2ec27e";
|
|
29
|
+
readonly '--wzl-fg-on-accent': "#f5f5f6";
|
|
30
|
+
readonly '--wzl-fg': "#e6e7e9";
|
|
31
|
+
readonly '--wzl-line-subtle': "rgba(230, 231, 233, 0.1)";
|
|
32
|
+
readonly '--wzl-line': "rgba(230, 231, 233, 0.2)";
|
|
33
|
+
readonly '--wzl-line-strong': "rgba(230, 231, 233, 0.4)";
|
|
34
|
+
readonly '--wzl-curve-color': "#5841b8";
|
|
35
|
+
readonly '--wzl-accent': "#2e1f7a";
|
|
36
|
+
readonly '--wzl-accent-hover': "#5841b8";
|
|
37
|
+
readonly '--wzl-danger': "#d94a3f";
|
|
38
|
+
readonly '--wzl-warning': "#d99a3f";
|
|
39
|
+
readonly '--wzl-success': "#2ec27e";
|
|
40
|
+
readonly '--wzl-focus-ring': "#5841b8";
|
|
41
|
+
readonly '--wzl-glass-tint': "#2e1f7a";
|
|
42
|
+
readonly '--wzl-text': "#e6e7e9";
|
|
43
|
+
readonly '--wzl-fg-muted': "#9ea1a8";
|
|
44
|
+
readonly '--wzl-text-muted': "#9ea1a8";
|
|
45
|
+
readonly '--wzl-surface': "#181a1e";
|
|
46
|
+
readonly '--wzl-bg': "#181a1e";
|
|
47
|
+
readonly '--wzl-muted': "#9ea1a8";
|
|
48
|
+
readonly '--wzl-panel-bg': "#181a1e";
|
|
49
|
+
readonly '--wzl-border': "#25272c";
|
|
50
|
+
readonly '--wzl-panel-border': "#25272c";
|
|
51
|
+
readonly '--wzl-surface-sunken': "#0e0f12";
|
|
52
|
+
readonly '--wzl-input-bg': "#0e0f12";
|
|
53
|
+
readonly '--wzl-track-bg': "#0e0f12";
|
|
54
|
+
readonly '--wzl-track-border': "#25272c";
|
|
55
|
+
readonly '--wzl-thumb-fill': "#9ea1a8";
|
|
56
|
+
readonly '--wzl-border-strong': "#383b42";
|
|
57
|
+
readonly '--wzl-thumb-border': "#383b42";
|
|
58
|
+
readonly '--wzl-surface-raised': "#25272c";
|
|
59
|
+
readonly '--wzl-button-fill': "#25272c";
|
|
60
|
+
readonly '--wzl-button-fill-hover': "rgba(230, 231, 233, 0.1)";
|
|
61
|
+
readonly '--wzl-button-fill-pressed': "rgba(230, 231, 233, 0.18)";
|
|
62
|
+
readonly '--wzl-button-text': "#e6e7e9";
|
|
63
|
+
readonly '--wzl-radius-sm': "3px";
|
|
64
|
+
readonly '--wzl-radius-md': "5px";
|
|
65
|
+
readonly '--wzl-border-w': "1px";
|
|
66
|
+
readonly '--wzl-line-width': "2px";
|
|
67
|
+
readonly '--wzl-curve-width': "3px";
|
|
68
|
+
readonly '--wzl-tb-height': "28px";
|
|
69
|
+
readonly '--wzl-motion-fast': "120ms";
|
|
70
|
+
readonly '--wzl-motion-medium': "240ms";
|
|
71
|
+
readonly '--wzl-ease-in-cubic': "cubic-bezier(0.32, 0, 0.67, 0)";
|
|
72
|
+
readonly '--wzl-ease-out-cubic': "cubic-bezier(0.33, 1, 0.68, 1)";
|
|
73
|
+
readonly '--wzl-ease-in-out-cubic': "cubic-bezier(0.65, 0, 0.35, 1)";
|
|
74
|
+
readonly '--wzl-ease-out-back': "cubic-bezier(0.34, 1.56, 0.64, 1)";
|
|
75
|
+
readonly '--wzl-font-ui': "Oswald, 'Helvetica Neue Condensed', 'Arial Narrow', system-ui, sans-serif";
|
|
76
|
+
readonly '--wzl-font-display': "Oswald, 'Helvetica Neue Condensed', 'Arial Narrow', system-ui, sans-serif";
|
|
77
|
+
readonly '--wzl-font-body': "Inter, system-ui, -apple-system, 'Segoe UI', sans-serif";
|
|
78
|
+
readonly '--wzl-font-mono': "ui-monospace, SFMono-Regular, Menlo, Consolas, monospace";
|
|
79
|
+
readonly '--wzl-font-weight-light': "200";
|
|
80
|
+
readonly '--wzl-font-weight-normal': "300";
|
|
81
|
+
readonly '--wzl-font-weight-bold': "400";
|
|
82
|
+
readonly '--wzl-fg-subtle': "#6f737b";
|
|
83
|
+
readonly '--wzl-accent-fg': "#5841b8";
|
|
84
|
+
readonly '--wzl-thumb-text': "#0e0f12";
|
|
85
|
+
};
|
|
86
|
+
readonly light: {
|
|
87
|
+
readonly '--wzl-gray-50': "#f5f5f6";
|
|
88
|
+
readonly '--wzl-gray-100': "#e6e7e9";
|
|
89
|
+
readonly '--wzl-gray-200': "#c9cbcf";
|
|
90
|
+
readonly '--wzl-gray-300': "#9ea1a8";
|
|
91
|
+
readonly '--wzl-gray-400': "#6f737b";
|
|
92
|
+
readonly '--wzl-gray-500': "#4d5058";
|
|
93
|
+
readonly '--wzl-gray-600': "#383b42";
|
|
94
|
+
readonly '--wzl-gray-700': "#25272c";
|
|
95
|
+
readonly '--wzl-gray-800': "#181a1e";
|
|
96
|
+
readonly '--wzl-gray-900': "#0e0f12";
|
|
97
|
+
readonly '--wzl-accent-soft': "#1d1454";
|
|
98
|
+
readonly '--wzl-accent-base': "#2e1f7a";
|
|
99
|
+
readonly '--wzl-accent-strong': "#5841b8";
|
|
100
|
+
readonly '--wzl-danger-base': "#d94a3f";
|
|
101
|
+
readonly '--wzl-warning-base': "#d99a3f";
|
|
102
|
+
readonly '--wzl-success-base': "#2ec27e";
|
|
103
|
+
readonly '--wzl-fg-on-accent': "#f5f5f6";
|
|
104
|
+
readonly '--wzl-fg': "#0e0f12";
|
|
105
|
+
readonly '--wzl-line-subtle': "rgba(14, 15, 18, 0.1)";
|
|
106
|
+
readonly '--wzl-line': "rgba(14, 15, 18, 0.2)";
|
|
107
|
+
readonly '--wzl-line-strong': "rgba(14, 15, 18, 0.4)";
|
|
108
|
+
readonly '--wzl-curve-color': "#5841b8";
|
|
109
|
+
readonly '--wzl-accent': "#2e1f7a";
|
|
110
|
+
readonly '--wzl-accent-hover': "#5841b8";
|
|
111
|
+
readonly '--wzl-danger': "#d94a3f";
|
|
112
|
+
readonly '--wzl-warning': "#d99a3f";
|
|
113
|
+
readonly '--wzl-success': "#2ec27e";
|
|
114
|
+
readonly '--wzl-focus-ring': "#5841b8";
|
|
115
|
+
readonly '--wzl-glass-tint': "#2e1f7a";
|
|
116
|
+
readonly '--wzl-text': "#0e0f12";
|
|
117
|
+
readonly '--wzl-fg-muted': "#383b42";
|
|
118
|
+
readonly '--wzl-text-muted': "#383b42";
|
|
119
|
+
readonly '--wzl-surface': "#f5f5f6";
|
|
120
|
+
readonly '--wzl-bg': "#f5f5f6";
|
|
121
|
+
readonly '--wzl-muted': "#383b42";
|
|
122
|
+
readonly '--wzl-panel-bg': "#f5f5f6";
|
|
123
|
+
readonly '--wzl-border': "#c9cbcf";
|
|
124
|
+
readonly '--wzl-panel-border': "#c9cbcf";
|
|
125
|
+
readonly '--wzl-surface-sunken': "#c9cbcf";
|
|
126
|
+
readonly '--wzl-input-bg': "#c9cbcf";
|
|
127
|
+
readonly '--wzl-track-bg': "#c9cbcf";
|
|
128
|
+
readonly '--wzl-track-border': "#c9cbcf";
|
|
129
|
+
readonly '--wzl-thumb-fill': "#383b42";
|
|
130
|
+
readonly '--wzl-border-strong': "#9ea1a8";
|
|
131
|
+
readonly '--wzl-thumb-border': "#9ea1a8";
|
|
132
|
+
readonly '--wzl-surface-raised': "#e6e7e9";
|
|
133
|
+
readonly '--wzl-button-fill': "#e6e7e9";
|
|
134
|
+
readonly '--wzl-button-fill-hover': "rgba(14, 15, 18, 0.1)";
|
|
135
|
+
readonly '--wzl-button-fill-pressed': "rgba(14, 15, 18, 0.18)";
|
|
136
|
+
readonly '--wzl-button-text': "#0e0f12";
|
|
137
|
+
readonly '--wzl-radius-sm': "3px";
|
|
138
|
+
readonly '--wzl-radius-md': "5px";
|
|
139
|
+
readonly '--wzl-border-w': "1px";
|
|
140
|
+
readonly '--wzl-line-width': "2px";
|
|
141
|
+
readonly '--wzl-curve-width': "3px";
|
|
142
|
+
readonly '--wzl-tb-height': "28px";
|
|
143
|
+
readonly '--wzl-motion-fast': "120ms";
|
|
144
|
+
readonly '--wzl-motion-medium': "240ms";
|
|
145
|
+
readonly '--wzl-ease-in-cubic': "cubic-bezier(0.32, 0, 0.67, 0)";
|
|
146
|
+
readonly '--wzl-ease-out-cubic': "cubic-bezier(0.33, 1, 0.68, 1)";
|
|
147
|
+
readonly '--wzl-ease-in-out-cubic': "cubic-bezier(0.65, 0, 0.35, 1)";
|
|
148
|
+
readonly '--wzl-ease-out-back': "cubic-bezier(0.34, 1.56, 0.64, 1)";
|
|
149
|
+
readonly '--wzl-font-ui': "Oswald, 'Helvetica Neue Condensed', 'Arial Narrow', system-ui, sans-serif";
|
|
150
|
+
readonly '--wzl-font-display': "Oswald, 'Helvetica Neue Condensed', 'Arial Narrow', system-ui, sans-serif";
|
|
151
|
+
readonly '--wzl-font-body': "Inter, system-ui, -apple-system, 'Segoe UI', sans-serif";
|
|
152
|
+
readonly '--wzl-font-mono': "ui-monospace, SFMono-Regular, Menlo, Consolas, monospace";
|
|
153
|
+
readonly '--wzl-font-weight-light': "200";
|
|
154
|
+
readonly '--wzl-font-weight-normal': "300";
|
|
155
|
+
readonly '--wzl-font-weight-bold': "400";
|
|
156
|
+
readonly '--wzl-fg-subtle': "#4d5058";
|
|
157
|
+
readonly '--wzl-accent-fg': "#2e1f7a";
|
|
158
|
+
readonly '--wzl-thumb-text': "#f5f5f6";
|
|
159
|
+
};
|
|
160
|
+
};
|
|
161
|
+
};
|
|
162
|
+
};
|
|
163
|
+
|
|
164
|
+
interface TokenManifestEntry {
|
|
165
|
+
readonly name: string;
|
|
166
|
+
readonly type: string;
|
|
167
|
+
readonly group: string;
|
|
168
|
+
readonly defaultValue: string;
|
|
169
|
+
readonly description: string;
|
|
170
|
+
}
|
|
171
|
+
declare const TOKEN_MANIFEST: readonly TokenManifestEntry[];
|
|
172
|
+
|
|
1
173
|
/**
|
|
2
|
-
*
|
|
3
|
-
* with var(--*) references resolved to their literal target value (TS
|
|
4
|
-
* exports can't reference each other syntactically the way CSS can with
|
|
5
|
-
* var()). The parity test in tokens.test.ts catches drift.
|
|
174
|
+
* Default token values for the built-in theme's default mode.
|
|
6
175
|
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* from the live DOM rather than relying on these defaults.
|
|
176
|
+
* Retained under its original name because `@weasel-js/hud` reads it as a
|
|
177
|
+
* boot-window fallback. Plan B replaces that consumer with a resolved theme.
|
|
10
178
|
*/
|
|
11
179
|
declare const DEFAULT_TOKENS: {
|
|
12
180
|
readonly '--wzl-gray-50': "#f5f5f6";
|
|
@@ -25,40 +193,13 @@ declare const DEFAULT_TOKENS: {
|
|
|
25
193
|
readonly '--wzl-danger-base': "#d94a3f";
|
|
26
194
|
readonly '--wzl-warning-base': "#d99a3f";
|
|
27
195
|
readonly '--wzl-success-base': "#2ec27e";
|
|
28
|
-
readonly '--wzl-radius-sm': "3px";
|
|
29
|
-
readonly '--wzl-radius-md': "5px";
|
|
30
|
-
readonly '--wzl-border-w': "1px";
|
|
31
|
-
readonly '--wzl-line-width': "2px";
|
|
32
|
-
readonly '--wzl-curve-width': "3px";
|
|
33
|
-
readonly '--wzl-tb-height': "28px";
|
|
34
|
-
readonly '--wzl-motion-fast': "120ms";
|
|
35
|
-
readonly '--wzl-motion-medium': "240ms";
|
|
36
|
-
readonly '--wzl-ease-in-cubic': "cubic-bezier(0.32, 0, 0.67, 0)";
|
|
37
|
-
readonly '--wzl-ease-out-cubic': "cubic-bezier(0.33, 1, 0.68, 1)";
|
|
38
|
-
readonly '--wzl-ease-in-out-cubic': "cubic-bezier(0.65, 0, 0.35, 1)";
|
|
39
|
-
readonly '--wzl-ease-out-back': "cubic-bezier(0.34, 1.56, 0.64, 1)";
|
|
40
|
-
readonly '--wzl-line-subtle': "rgba(230, 231, 233, 0.10)";
|
|
41
|
-
readonly '--wzl-line': "rgba(230, 231, 233, 0.20)";
|
|
42
|
-
readonly '--wzl-line-strong': "rgba(230, 231, 233, 0.40)";
|
|
43
|
-
readonly '--wzl-curve-color': "#5841b8";
|
|
44
|
-
readonly '--wzl-font-ui': "'Oswald', 'Helvetica Neue Condensed', 'Arial Narrow', system-ui, sans-serif";
|
|
45
|
-
readonly '--wzl-font-display': "'Oswald', 'Helvetica Neue Condensed', 'Arial Narrow', system-ui, sans-serif";
|
|
46
|
-
readonly '--wzl-font-body': "'Inter', system-ui, -apple-system, 'Segoe UI', sans-serif";
|
|
47
|
-
readonly '--wzl-font-mono': "ui-monospace, SFMono-Regular, Menlo, Consolas, monospace";
|
|
48
|
-
readonly '--wzl-font-weight-light': "200";
|
|
49
|
-
readonly '--wzl-font-weight-normal': "300";
|
|
50
|
-
readonly '--wzl-font-weight-bold': "400";
|
|
51
|
-
readonly '--wzl-surface': "#181a1e";
|
|
52
|
-
readonly '--wzl-surface-raised': "#25272c";
|
|
53
|
-
readonly '--wzl-surface-sunken': "#0e0f12";
|
|
54
|
-
readonly '--wzl-fg': "#e6e7e9";
|
|
55
|
-
readonly '--wzl-fg-muted': "#9ea1a8";
|
|
56
|
-
readonly '--wzl-fg-subtle': "#6f737b";
|
|
57
196
|
readonly '--wzl-fg-on-accent': "#f5f5f6";
|
|
58
|
-
readonly '--wzl-
|
|
59
|
-
readonly '--wzl-
|
|
197
|
+
readonly '--wzl-fg': "#e6e7e9";
|
|
198
|
+
readonly '--wzl-line-subtle': "rgba(230, 231, 233, 0.1)";
|
|
199
|
+
readonly '--wzl-line': "rgba(230, 231, 233, 0.2)";
|
|
200
|
+
readonly '--wzl-line-strong': "rgba(230, 231, 233, 0.4)";
|
|
201
|
+
readonly '--wzl-curve-color': "#5841b8";
|
|
60
202
|
readonly '--wzl-accent': "#2e1f7a";
|
|
61
|
-
readonly '--wzl-accent-fg': "#5841b8";
|
|
62
203
|
readonly '--wzl-accent-hover': "#5841b8";
|
|
63
204
|
readonly '--wzl-danger': "#d94a3f";
|
|
64
205
|
readonly '--wzl-warning': "#d99a3f";
|
|
@@ -66,22 +207,48 @@ declare const DEFAULT_TOKENS: {
|
|
|
66
207
|
readonly '--wzl-focus-ring': "#5841b8";
|
|
67
208
|
readonly '--wzl-glass-tint': "#2e1f7a";
|
|
68
209
|
readonly '--wzl-text': "#e6e7e9";
|
|
210
|
+
readonly '--wzl-fg-muted': "#9ea1a8";
|
|
69
211
|
readonly '--wzl-text-muted': "#9ea1a8";
|
|
212
|
+
readonly '--wzl-surface': "#181a1e";
|
|
70
213
|
readonly '--wzl-bg': "#181a1e";
|
|
71
214
|
readonly '--wzl-muted': "#9ea1a8";
|
|
72
215
|
readonly '--wzl-panel-bg': "#181a1e";
|
|
216
|
+
readonly '--wzl-border': "#25272c";
|
|
73
217
|
readonly '--wzl-panel-border': "#25272c";
|
|
218
|
+
readonly '--wzl-surface-sunken': "#0e0f12";
|
|
74
219
|
readonly '--wzl-input-bg': "#0e0f12";
|
|
75
220
|
readonly '--wzl-track-bg': "#0e0f12";
|
|
76
221
|
readonly '--wzl-track-border': "#25272c";
|
|
77
222
|
readonly '--wzl-thumb-fill': "#9ea1a8";
|
|
223
|
+
readonly '--wzl-border-strong': "#383b42";
|
|
78
224
|
readonly '--wzl-thumb-border': "#383b42";
|
|
79
|
-
readonly '--wzl-
|
|
225
|
+
readonly '--wzl-surface-raised': "#25272c";
|
|
80
226
|
readonly '--wzl-button-fill': "#25272c";
|
|
81
|
-
readonly '--wzl-button-fill-hover': "
|
|
82
|
-
readonly '--wzl-button-fill-pressed': "
|
|
227
|
+
readonly '--wzl-button-fill-hover': "rgba(230, 231, 233, 0.1)";
|
|
228
|
+
readonly '--wzl-button-fill-pressed': "rgba(230, 231, 233, 0.18)";
|
|
83
229
|
readonly '--wzl-button-text': "#e6e7e9";
|
|
230
|
+
readonly '--wzl-radius-sm': "3px";
|
|
231
|
+
readonly '--wzl-radius-md': "5px";
|
|
232
|
+
readonly '--wzl-border-w': "1px";
|
|
233
|
+
readonly '--wzl-line-width': "2px";
|
|
234
|
+
readonly '--wzl-curve-width': "3px";
|
|
235
|
+
readonly '--wzl-tb-height': "28px";
|
|
236
|
+
readonly '--wzl-motion-fast': "120ms";
|
|
237
|
+
readonly '--wzl-motion-medium': "240ms";
|
|
238
|
+
readonly '--wzl-ease-in-cubic': "cubic-bezier(0.32, 0, 0.67, 0)";
|
|
239
|
+
readonly '--wzl-ease-out-cubic': "cubic-bezier(0.33, 1, 0.68, 1)";
|
|
240
|
+
readonly '--wzl-ease-in-out-cubic': "cubic-bezier(0.65, 0, 0.35, 1)";
|
|
241
|
+
readonly '--wzl-ease-out-back': "cubic-bezier(0.34, 1.56, 0.64, 1)";
|
|
242
|
+
readonly '--wzl-font-ui': "Oswald, 'Helvetica Neue Condensed', 'Arial Narrow', system-ui, sans-serif";
|
|
243
|
+
readonly '--wzl-font-display': "Oswald, 'Helvetica Neue Condensed', 'Arial Narrow', system-ui, sans-serif";
|
|
244
|
+
readonly '--wzl-font-body': "Inter, system-ui, -apple-system, 'Segoe UI', sans-serif";
|
|
245
|
+
readonly '--wzl-font-mono': "ui-monospace, SFMono-Regular, Menlo, Consolas, monospace";
|
|
246
|
+
readonly '--wzl-font-weight-light': "200";
|
|
247
|
+
readonly '--wzl-font-weight-normal': "300";
|
|
248
|
+
readonly '--wzl-font-weight-bold': "400";
|
|
249
|
+
readonly '--wzl-fg-subtle': "#6f737b";
|
|
250
|
+
readonly '--wzl-accent-fg': "#5841b8";
|
|
251
|
+
readonly '--wzl-thumb-text': "#0e0f12";
|
|
84
252
|
};
|
|
85
|
-
type TokenName = keyof typeof DEFAULT_TOKENS;
|
|
86
253
|
|
|
87
|
-
export { DEFAULT_TOKENS, type TokenName };
|
|
254
|
+
export { DEFAULT_TOKENS, type GeneratedTheme, THEMES, TOKEN_MANIFEST, type TokenManifestEntry, type TokenName };
|