@skdx/tokens 0.27.0 → 0.29.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/LICENSE +21 -0
- package/README.md +92 -69
- package/dist/foundation.css +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.d.cts +3 -2
- package/dist/index.d.ts +3 -2
- package/dist/index.js +1 -1
- package/dist/themes/AntDark.cjs +1 -1
- package/dist/themes/AntDark.d.cts +3 -12
- package/dist/themes/AntDark.d.ts +3 -12
- package/dist/themes/AntDark.js +1 -1
- package/dist/themes/{AntBrand.cjs → AntLight.cjs} +1 -1
- package/dist/themes/{AntBrand.d.cts → AntLight.d.cts} +1 -1
- package/dist/themes/{AntBrand.d.ts → AntLight.d.ts} +1 -1
- package/dist/themes/{AntBrand.js → AntLight.js} +1 -1
- package/dist/themes/CatppuccinLatte.cjs +1 -1
- package/dist/themes/CatppuccinLatte.d.cts +1 -7
- package/dist/themes/CatppuccinLatte.d.ts +1 -7
- package/dist/themes/CatppuccinLatte.js +1 -1
- package/dist/themes/CatppuccinMocha.cjs +1 -1
- package/dist/themes/CatppuccinMocha.d.cts +1 -7
- package/dist/themes/CatppuccinMocha.d.ts +1 -7
- package/dist/themes/CatppuccinMocha.js +1 -1
- package/dist/themes/ChakraDark.cjs +1 -1
- package/dist/themes/ChakraDark.d.cts +3 -12
- package/dist/themes/ChakraDark.d.ts +3 -12
- package/dist/themes/ChakraDark.js +1 -1
- package/dist/themes/{ChakraBrand.cjs → ChakraLight.cjs} +1 -1
- package/dist/themes/{ChakraBrand.d.cts → ChakraLight.d.cts} +1 -1
- package/dist/themes/{ChakraBrand.d.ts → ChakraLight.d.ts} +1 -1
- package/dist/themes/{ChakraBrand.js → ChakraLight.js} +1 -1
- package/dist/themes/CupcakeDark.cjs +1 -1
- package/dist/themes/CupcakeDark.d.cts +3 -5
- package/dist/themes/CupcakeDark.d.ts +3 -5
- package/dist/themes/CupcakeLight.cjs +1 -1
- package/dist/themes/CupcakeLight.d.cts +1 -8
- package/dist/themes/CupcakeLight.d.ts +1 -8
- package/dist/themes/CupcakeLight.js +1 -1
- package/dist/themes/DefaultTheme.cjs +1 -1
- package/dist/themes/DefaultTheme.d.cts +3 -15
- package/dist/themes/DefaultTheme.d.ts +3 -15
- package/dist/themes/DefaultTheme.js +1 -1
- package/dist/themes/DraculaLight.cjs +1 -1
- package/dist/themes/DraculaLight.d.cts +3 -10
- package/dist/themes/DraculaLight.d.ts +3 -10
- package/dist/themes/DraculaLight.js +1 -1
- package/dist/themes/EmeraldDark.cjs +1 -1
- package/dist/themes/EmeraldDark.d.cts +3 -8
- package/dist/themes/EmeraldDark.d.ts +3 -8
- package/dist/themes/EmeraldDark.js +1 -1
- package/dist/themes/{EmeraldBrand.cjs → EmeraldLight.cjs} +1 -1
- package/dist/themes/{EmeraldBrand.d.cts → EmeraldLight.d.cts} +1 -1
- package/dist/themes/{EmeraldBrand.d.ts → EmeraldLight.d.ts} +1 -1
- package/dist/themes/{EmeraldBrand.js → EmeraldLight.js} +1 -1
- package/dist/themes/EverforestDark.cjs +1 -1
- package/dist/themes/EverforestDark.d.cts +1 -2
- package/dist/themes/EverforestDark.d.ts +1 -2
- package/dist/themes/EverforestDark.js +1 -1
- package/dist/themes/EverforestLight.cjs +1 -1
- package/dist/themes/EverforestLight.d.cts +3 -9
- package/dist/themes/EverforestLight.d.ts +3 -9
- package/dist/themes/FluentDark.cjs +1 -1
- package/dist/themes/FluentDark.d.cts +3 -11
- package/dist/themes/FluentDark.d.ts +3 -11
- package/dist/themes/FluentDark.js +1 -1
- package/dist/themes/{FluentBrand.cjs → FluentLight.cjs} +1 -1
- package/dist/themes/{FluentBrand.d.cts → FluentLight.d.cts} +1 -1
- package/dist/themes/{FluentBrand.d.ts → FluentLight.d.ts} +1 -1
- package/dist/themes/{FluentBrand.js → FluentLight.js} +1 -1
- package/dist/themes/GraphiteDark.cjs +1 -1
- package/dist/themes/GraphiteDark.d.cts +3 -8
- package/dist/themes/GraphiteDark.d.ts +3 -8
- package/dist/themes/GraphiteDark.js +1 -1
- package/dist/themes/{GraphiteBrand.cjs → GraphiteLight.cjs} +1 -1
- package/dist/themes/{GraphiteBrand.d.cts → GraphiteLight.d.cts} +1 -1
- package/dist/themes/{GraphiteBrand.d.ts → GraphiteLight.d.ts} +1 -1
- package/dist/themes/{GraphiteBrand.js → GraphiteLight.js} +1 -1
- package/dist/themes/GruvboxDark.cjs +1 -1
- package/dist/themes/GruvboxDark.d.cts +1 -7
- package/dist/themes/GruvboxDark.d.ts +1 -7
- package/dist/themes/GruvboxDark.js +1 -1
- package/dist/themes/GruvboxLight.cjs +1 -1
- package/dist/themes/GruvboxLight.d.cts +3 -13
- package/dist/themes/GruvboxLight.d.ts +3 -13
- package/dist/themes/GruvboxLight.js +1 -1
- package/dist/themes/MaterialDark.cjs +1 -1
- package/dist/themes/MaterialDark.d.cts +3 -12
- package/dist/themes/MaterialDark.d.ts +3 -12
- package/dist/themes/MaterialDark.js +1 -1
- package/dist/themes/{MaterialBrand.cjs → MaterialLight.cjs} +1 -1
- package/dist/themes/MaterialLight.d.cts +3 -0
- package/dist/themes/MaterialLight.d.ts +3 -0
- package/dist/themes/{MaterialBrand.js → MaterialLight.js} +1 -1
- package/dist/themes/MidnightDark.cjs +1 -0
- package/dist/themes/MidnightDark.d.cts +3 -0
- package/dist/themes/MidnightDark.d.ts +3 -0
- package/dist/themes/{MidnightBrand.js → MidnightDark.js} +1 -1
- package/dist/themes/MidnightLight.cjs +1 -1
- package/dist/themes/MidnightLight.d.cts +4 -6
- package/dist/themes/MidnightLight.d.ts +4 -6
- package/dist/themes/MidnightLight.js +1 -1
- package/dist/themes/NordDark.cjs +1 -1
- package/dist/themes/NordDark.js +1 -1
- package/dist/themes/NordLight.cjs +1 -1
- package/dist/themes/NordLight.d.cts +3 -13
- package/dist/themes/NordLight.d.ts +3 -13
- package/dist/themes/NordLight.js +1 -1
- package/dist/themes/OneDark.cjs +1 -1
- package/dist/themes/OneDark.d.cts +1 -7
- package/dist/themes/OneDark.d.ts +1 -7
- package/dist/themes/OneDark.js +1 -1
- package/dist/themes/OneLight.cjs +1 -1
- package/dist/themes/OneLight.d.cts +3 -9
- package/dist/themes/OneLight.d.ts +3 -9
- package/dist/themes/OneLight.js +1 -1
- package/dist/themes/PrimerDark.cjs +1 -1
- package/dist/themes/PrimerDark.d.cts +0 -1
- package/dist/themes/PrimerDark.d.ts +0 -1
- package/dist/themes/PrimerDark.js +1 -1
- package/dist/themes/PrimerLight.d.cts +1 -7
- package/dist/themes/PrimerLight.d.ts +1 -7
- package/dist/themes/RosePine.cjs +1 -1
- package/dist/themes/RosePine.d.cts +1 -7
- package/dist/themes/RosePine.d.ts +1 -7
- package/dist/themes/RosePine.js +1 -1
- package/dist/themes/RosePineDawn.cjs +1 -1
- package/dist/themes/RosePineDawn.d.cts +3 -9
- package/dist/themes/RosePineDawn.d.ts +3 -9
- package/dist/themes/RosePineDawn.js +1 -1
- package/dist/themes/SkandaDark.cjs +1 -1
- package/dist/themes/SkandaDark.d.cts +5 -8
- package/dist/themes/SkandaDark.d.ts +5 -8
- package/dist/themes/SkandaDark.js +1 -1
- package/dist/themes/SkandaLight.cjs +1 -1
- package/dist/themes/SkandaLight.js +1 -1
- package/dist/themes/SolarizedDark.d.cts +1 -7
- package/dist/themes/SolarizedDark.d.ts +1 -7
- package/dist/themes/SolarizedLight.cjs +1 -1
- package/dist/themes/SolarizedLight.d.cts +1 -7
- package/dist/themes/SolarizedLight.d.ts +1 -7
- package/dist/themes/SolarizedLight.js +1 -1
- package/dist/themes/SynthwaveDark.d.cts +1 -7
- package/dist/themes/SynthwaveDark.d.ts +1 -7
- package/dist/themes/SynthwaveLight.cjs +1 -1
- package/dist/themes/SynthwaveLight.d.cts +3 -12
- package/dist/themes/SynthwaveLight.d.ts +3 -12
- package/dist/themes/SynthwaveLight.js +1 -1
- package/dist/themes/brands.cjs +1 -1
- package/dist/themes/brands.d.cts +5 -28
- package/dist/themes/brands.d.ts +5 -28
- package/dist/themes/brands.js +1 -1
- package/dist/themes/createBrandTheme.cjs +1 -1
- package/dist/themes/createBrandTheme.d.cts +11 -23
- package/dist/themes/createBrandTheme.d.ts +11 -23
- package/dist/themes/createBrandTheme.js +1 -1
- package/dist/themes/index.cjs +1 -1
- package/dist/themes/index.d.cts +10 -9
- package/dist/themes/index.d.ts +10 -9
- package/dist/themes/index.js +1 -1
- package/dist/themes.css +1 -1
- package/dist/tokens.css +1 -1
- package/dist/tokens.dtcg.json +14246 -0
- package/dist/utils/aliases.cjs +9 -3
- package/dist/utils/aliases.d.cts +19 -99
- package/dist/utils/aliases.d.ts +19 -99
- package/dist/utils/aliases.js +9 -3
- package/dist/utils/contrast.d.cts +2 -17
- package/dist/utils/contrast.d.ts +2 -17
- package/dist/utils/cssVars.cjs +2 -2
- package/dist/utils/cssVars.d.cts +12 -37
- package/dist/utils/cssVars.d.ts +12 -37
- package/dist/utils/cssVars.js +2 -2
- package/dist/utils/foundation.cjs +4 -4
- package/dist/utils/foundation.d.cts +24 -177
- package/dist/utils/foundation.d.ts +24 -177
- package/dist/utils/foundation.js +3 -3
- package/dist/utils/mode.cjs +1 -1
- package/dist/utils/mode.d.cts +18 -57
- package/dist/utils/mode.d.ts +18 -57
- package/dist/utils/mode.js +1 -1
- package/dist/utils/theme.cjs +1 -1
- package/dist/utils/theme.d.cts +68 -292
- package/dist/utils/theme.d.ts +68 -292
- package/dist/utils/toCss.cjs +5 -5
- package/dist/utils/toCss.d.cts +22 -60
- package/dist/utils/toCss.d.ts +22 -60
- package/dist/utils/toCss.js +5 -5
- package/package.json +5 -4
- package/dist/themes/MaterialBrand.d.cts +0 -3
- package/dist/themes/MaterialBrand.d.ts +0 -3
- package/dist/themes/MidnightBrand.cjs +0 -1
- package/dist/themes/MidnightBrand.d.cts +0 -11
- package/dist/themes/MidnightBrand.d.ts +0 -11
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 SkandaDX
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -29,7 +29,7 @@ import { applyTheme, defaultTheme, foundationToCss } from '@skdx/tokens';
|
|
|
29
29
|
|
|
30
30
|
// Once: the type scale, spacing, radii, shadow geometry and motion every theme shares.
|
|
31
31
|
document.head.appendChild(
|
|
32
|
-
Object.assign(document.createElement('style'), { textContent: foundationToCss() })
|
|
32
|
+
Object.assign(document.createElement('style'), { textContent: foundationToCss() }),
|
|
33
33
|
);
|
|
34
34
|
// Per theme: colors.
|
|
35
35
|
applyTheme(defaultTheme);
|
|
@@ -50,14 +50,14 @@ applyTheme(defaultTheme);
|
|
|
50
50
|
## The theme contract
|
|
51
51
|
|
|
52
52
|
**A theme is colors.** The type scale, spacing, radii, shadow geometry and motion are identical
|
|
53
|
-
in all 38 bundled themes, so they aren't part of a theme at all — they're the
|
|
53
|
+
in all 38 bundled themes, so they aren't part of a theme at all — they're the _foundation_,
|
|
54
54
|
exported once and emitted at `:root` by `foundationToCss()`.
|
|
55
55
|
|
|
56
|
-
| Group | Type
|
|
57
|
-
| --------------------------------------------------------------- |
|
|
58
|
-
| `colors.primary` / `neutral` / `success` / `warning` / `danger` | `ColorScale`
|
|
59
|
-
| `colors.semantic` | `SemanticColors`
|
|
60
|
-
| `shadow` | `ThemeShadowColor`
|
|
56
|
+
| Group | Type | Contents |
|
|
57
|
+
| --------------------------------------------------------------- | ------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
58
|
+
| `colors.primary` / `neutral` / `success` / `warning` / `danger` | `ColorScale` | 11-step scales, `50` (lightest) → `950` (darkest) |
|
|
59
|
+
| `colors.semantic` | `SemanticColors` | Purpose-driven colors: `background`, `surface`, `surfaceHover`, `overlay`, `text`, `textMuted`, `textInverted`, `border`, `borderStrong`, `focusRing` |
|
|
60
|
+
| `shadow` | `ThemeShadowColor` | The color half of the shared shadow geometry: `color` (an sRGB triple like `'2 6 23'`) and `strength` (a multiplier on the shared base alphas) |
|
|
61
61
|
|
|
62
62
|
Components should use the **semantic** colors (`colors.semantic.*`) wherever possible and reach into the raw scales only for accents — that is what lets one component tree re-brand cleanly across light and dark themes.
|
|
63
63
|
|
|
@@ -65,18 +65,18 @@ Components should use the **semantic** colors (`colors.semantic.*`) wherever pos
|
|
|
65
65
|
|
|
66
66
|
Imported as bare named exports, not read off a theme:
|
|
67
67
|
|
|
68
|
-
| Export | Type | Contents
|
|
69
|
-
| ------------ | ----------------- |
|
|
70
|
-
| `typography` | `ThemeTypography` | `fontFamily`, `fontFamilyMono`, `fontSize` (`xs`–`3xl`), `fontWeight` (`regular`–`bold`), `lineHeight`, `letterSpacing`
|
|
71
|
-
| `space` | `ThemeSpace` | Spacing steps `1`–`16` (`0.25rem`–`4rem`)
|
|
72
|
-
| `radii` | `ThemeRadii` | `sm`, `md`, `lg`, `xl`, `full`
|
|
73
|
-
| `shadows` | `ThemeShadows` | `sm`, `md`, `lg`, `overlay` — geometry only; each defers its color to `var(--skdx-shadow-color)` / `var(--skdx-shadow-strength)`
|
|
74
|
-
| `motion` | `ThemeMotion` | `durationFast`/`Normal`/`Slow`, `easing`, plus the optional `easingExit`/`Steady`/`Linear` and the two staggers
|
|
68
|
+
| Export | Type | Contents |
|
|
69
|
+
| ------------ | ----------------- | -------------------------------------------------------------------------------------------------------------------------------- |
|
|
70
|
+
| `typography` | `ThemeTypography` | `fontFamily`, `fontFamilyMono`, `fontSize` (`xs`–`3xl`), `fontWeight` (`regular`–`bold`), `lineHeight`, `letterSpacing` |
|
|
71
|
+
| `space` | `ThemeSpace` | Spacing steps `1`–`16` (`0.25rem`–`4rem`) |
|
|
72
|
+
| `radii` | `ThemeRadii` | `sm`, `md`, `lg`, `xl`, `full` |
|
|
73
|
+
| `shadows` | `ThemeShadows` | `sm`, `md`, `lg`, `overlay` — geometry only; each defers its color to `var(--skdx-shadow-color)` / `var(--skdx-shadow-strength)` |
|
|
74
|
+
| `motion` | `ThemeMotion` | `durationFast`/`Normal`/`Slow`, `easing`, plus the optional `easingExit`/`Steady`/`Linear` and the two staggers |
|
|
75
75
|
|
|
76
76
|
### The two escape hatches
|
|
77
77
|
|
|
78
78
|
A theme may optionally declare `typography` (just `fontFamily` / `fontFamilyMono`) and `motion`
|
|
79
|
-
(just the four base tokens). Declaring one
|
|
79
|
+
(just the four base tokens). Declaring one _is_ the deviation — there is no wrapper to opt into,
|
|
80
80
|
and they re-emit at the theme's own higher-specificity selector so `[data-skdx-theme="material-you"]`
|
|
81
81
|
beats `:root`.
|
|
82
82
|
|
|
@@ -100,18 +100,18 @@ applyTheme(nord.themes[mode]); // stamps data-skdx-theme="nord-dark|nord-light"
|
|
|
100
100
|
|
|
101
101
|
Brand and color mode are **independent dimensions**: the brand decides identity (hues, and for three themes type and motion), the mode decides light or dark appearance, and the resolved theme is an ordinary `Theme` — so `themeToCss` / `applyTheme` and every `--skdx-*` variable name work exactly as before. Store a user's brand preference and color-mode preference (`'light' | 'dark' | 'system'`) separately; resolve `'system'` via `prefers-color-scheme`, then apply `brand.themes[resolvedMode]`. `getBrandByThemeName('one-dark')` maps a persisted pre-brand theme name to its owning brand for migrations, and `defaultBrand` is `skanda`.
|
|
102
102
|
|
|
103
|
-
|
|
103
|
+
Every theme is exported as `<brand><Mode>`, except the pairs whose upstream already names the modes (`catppuccinLatte`/`catppuccinMocha`, `rosePineDawn`/`rosePine`). Within a brand, one mode is authored in full and the other is a `createTheme` override of it, keeping the brand's ramps. Themes inspired by third-party palettes only use permissively licensed sources (MIT / MIT-X11) — see [THIRD-PARTY-NOTICES.md](./THIRD-PARTY-NOTICES.md):
|
|
104
104
|
|
|
105
105
|
| Export | Name | Character |
|
|
106
106
|
| ----------------- | ------------------- | ----------------------------------------------------------------------------------- |
|
|
107
107
|
| `skandaLight` | `skanda-light` | The default SkandaDX light theme (same values as `defaultTheme`) |
|
|
108
|
-
| `
|
|
109
|
-
| `
|
|
110
|
-
| `
|
|
111
|
-
| `
|
|
112
|
-
| `
|
|
113
|
-
| `
|
|
114
|
-
| `
|
|
108
|
+
| `emeraldLight` | `emerald-brand` | Fresh greens, soft mint surfaces, tight corners |
|
|
109
|
+
| `midnightDark` | `midnight-brand` | Dark theme — violet actions on deep indigo surfaces |
|
|
110
|
+
| `graphiteLight` | `graphite` | Monochrome, shadcn/ui-zinc spirit: near-black actions, quiet grays |
|
|
111
|
+
| `materialLight` | `material-you` | Material Design 3 inspired: tonal purple, Roboto, M3's slower emphasized motion |
|
|
112
|
+
| `antLight` | `ant-daybreak` | Ant Design inspired: daybreak blue, compact corners |
|
|
113
|
+
| `fluentLight` | `fluent` | Microsoft Fluent 2 inspired: communication blue, Segoe UI |
|
|
114
|
+
| `chakraLight` | `chakra-teal` | Chakra UI inspired: teal actions, blue focus ring |
|
|
115
115
|
| `nordDark` | `nord-dark` | Dark theme — polar-night surfaces, frost blue actions |
|
|
116
116
|
| `draculaDark` | `dracula` | Dark theme — purple actions on the classic `#282a36` |
|
|
117
117
|
| `catppuccinLatte` | `catppuccin-latte` | Catppuccin Latte inspired: warm off-white surfaces, saturated blue actions |
|
|
@@ -143,12 +143,12 @@ The original twenty-two themes are unchanged (names, exports, and light-mode val
|
|
|
143
143
|
| `cupcakeDark` | `cupcake-dark` | Dark counterpart of `cupcake-light` — pastel teal on deep plum |
|
|
144
144
|
| `synthwaveLight` | `synthwave-light` | Light counterpart of `synthwave-dark` — neon pink on pale lavender |
|
|
145
145
|
|
|
146
|
-
`themes` exports all thirty-eight as an array — handy for theme pickers and galleries:
|
|
146
|
+
`themes` exports all thirty-eight as an array, derived from `brands` brand by brand with light before dark — handy for theme pickers and galleries:
|
|
147
147
|
|
|
148
148
|
```ts
|
|
149
|
-
import {
|
|
149
|
+
import { applyTheme, themes } from '@skdx/tokens';
|
|
150
150
|
|
|
151
|
-
themes.map((t) => t.name); // ['skanda-light', 'emerald-brand', ...]
|
|
151
|
+
themes.map((t) => t.name); // ['skanda-light', 'skanda-dark', 'emerald-brand', ...]
|
|
152
152
|
applyTheme(themes.find((t) => t.name === 'nord-dark')!);
|
|
153
153
|
```
|
|
154
154
|
|
|
@@ -197,7 +197,7 @@ Sets all variables as inline styles on `element` (default `document.documentElem
|
|
|
197
197
|
Renders a theme as a CSS rule, ready to inject into a `<style>` tag or write to a file at build time:
|
|
198
198
|
|
|
199
199
|
```ts
|
|
200
|
-
import {
|
|
200
|
+
import { nordDark, themeToCss } from '@skdx/tokens';
|
|
201
201
|
|
|
202
202
|
themeToCss(nordDark);
|
|
203
203
|
// [data-skdx-theme="nord-dark"] {
|
|
@@ -227,7 +227,7 @@ themeToCss(defaultTheme, { selector: ':root' });
|
|
|
227
227
|
Returns the raw `Record<string, string>` of variable names to values (`{ '--skdx-color-primary-500': '#3d6eef', ... }`). Useful for CSS-in-JS style objects or React inline styles:
|
|
228
228
|
|
|
229
229
|
```tsx
|
|
230
|
-
<div style={themeToCssVars(
|
|
230
|
+
<div style={themeToCssVars(emeraldLight)}>...</div>
|
|
231
231
|
```
|
|
232
232
|
|
|
233
233
|
## Non-themed foundation tokens
|
|
@@ -238,7 +238,17 @@ way color is. Every theme should behave the same way, so they're exported once a
|
|
|
238
238
|
rather than duplicated into all 38 `Theme` objects:
|
|
239
239
|
|
|
240
240
|
```ts
|
|
241
|
-
import {
|
|
241
|
+
import {
|
|
242
|
+
borderWidth,
|
|
243
|
+
breakpoints,
|
|
244
|
+
focusRing,
|
|
245
|
+
foundationToCss,
|
|
246
|
+
opacity,
|
|
247
|
+
radii,
|
|
248
|
+
space,
|
|
249
|
+
typography,
|
|
250
|
+
zIndex,
|
|
251
|
+
} from '@skdx/tokens';
|
|
242
252
|
|
|
243
253
|
typography.fontSize.md; // '1rem'
|
|
244
254
|
space['4']; // '1rem'
|
|
@@ -250,7 +260,9 @@ opacity.disabled; // '0.5'
|
|
|
250
260
|
breakpoints.lg; // 1024 (a number — see below)
|
|
251
261
|
|
|
252
262
|
// Inject once. Without it the shared half of the --skdx-* surface does not exist.
|
|
253
|
-
document.head.appendChild(
|
|
263
|
+
document.head.appendChild(
|
|
264
|
+
Object.assign(document.createElement('style'), { textContent: foundationToCss() }),
|
|
265
|
+
);
|
|
254
266
|
```
|
|
255
267
|
|
|
256
268
|
`zIndex` scale (low → high): `base`, `dropdown`, `sticky`, `overlay`, `modal`, `popover`, `toast`, `max`.
|
|
@@ -302,24 +314,34 @@ theme (see `themeToCss`).
|
|
|
302
314
|
|
|
303
315
|
```ts
|
|
304
316
|
// Nuxt — nuxt.config.ts
|
|
305
|
-
app: {
|
|
317
|
+
app: {
|
|
318
|
+
head: {
|
|
319
|
+
script: [{ innerHTML: getThemeInitScript(), tagPosition: 'head' }];
|
|
320
|
+
}
|
|
321
|
+
}
|
|
306
322
|
```
|
|
307
323
|
|
|
324
|
+
<!-- prettier-ignore -->
|
|
308
325
|
```html
|
|
309
326
|
<!-- SvelteKit — src/app.html; replace the placeholder from a Vite plugin at build time -->
|
|
310
327
|
<head>
|
|
311
328
|
%sveltekit.head%
|
|
312
|
-
<script
|
|
329
|
+
<script>
|
|
330
|
+
%skdx.themeInit%
|
|
331
|
+
</script>
|
|
313
332
|
</head>
|
|
314
333
|
```
|
|
315
334
|
|
|
316
335
|
```astro
|
|
317
336
|
<!-- Astro — src/layouts/Base.astro -->
|
|
318
|
-
<script
|
|
337
|
+
<script
|
|
338
|
+
is:inline
|
|
339
|
+
set:html={getThemeInitScript()}
|
|
340
|
+
/>
|
|
319
341
|
```
|
|
320
342
|
|
|
321
343
|
Storage keys default to `skdx-brand` and `skdx-mode` (exported as `BRAND_STORAGE_KEY` /
|
|
322
|
-
`MODE_STORAGE_KEY`) and are overridable via `getThemeInitScript({ brandKey, modeKey,
|
|
344
|
+
`MODE_STORAGE_KEY`) and are overridable via `getThemeInitScript({ brandKey, modeKey, brand })`.
|
|
323
345
|
|
|
324
346
|
## Validating contrast
|
|
325
347
|
|
|
@@ -347,8 +369,8 @@ of the two blocks declares them moved.
|
|
|
347
369
|
|
|
348
370
|
From a `Theme`, at `[data-skdx-theme="…"]`:
|
|
349
371
|
|
|
350
|
-
| Theme path | CSS variable
|
|
351
|
-
| ------------------------------ |
|
|
372
|
+
| Theme path | CSS variable |
|
|
373
|
+
| ------------------------------ | ------------------------------------- |
|
|
352
374
|
| `colors.primary[500]` | `--skdx-color-primary-500` |
|
|
353
375
|
| `colors.semantic.surfaceHover` | `--skdx-color-semantic-surface-hover` |
|
|
354
376
|
| `shadow.color` | `--skdx-shadow-color` |
|
|
@@ -356,18 +378,18 @@ From a `Theme`, at `[data-skdx-theme="…"]`:
|
|
|
356
378
|
|
|
357
379
|
From the foundation, at `:root`:
|
|
358
380
|
|
|
359
|
-
| Foundation path
|
|
360
|
-
|
|
|
361
|
-
| `typography.fontFamily`
|
|
362
|
-
| `typography.fontSize.md`
|
|
363
|
-
| `typography.fontWeight.semibold` | `--skdx-font-weight-semibold
|
|
364
|
-
| `typography.lineHeight.tight` | `--skdx-font-line-height-tight`
|
|
381
|
+
| Foundation path | CSS variable |
|
|
382
|
+
| -------------------------------- | --------------------------------- |
|
|
383
|
+
| `typography.fontFamily` | `--skdx-font-family` |
|
|
384
|
+
| `typography.fontSize.md` | `--skdx-font-size-md` |
|
|
385
|
+
| `typography.fontWeight.semibold` | `--skdx-font-weight-semibold` |
|
|
386
|
+
| `typography.lineHeight.tight` | `--skdx-font-line-height-tight` |
|
|
365
387
|
| `typography.letterSpacing.wide` | `--skdx-font-letter-spacing-wide` |
|
|
366
|
-
| `space[4]`
|
|
367
|
-
| `radii.md`
|
|
368
|
-
| `shadows.overlay`
|
|
369
|
-
| `motion.durationFast`
|
|
370
|
-
| `motion.easing`
|
|
388
|
+
| `space[4]` | `--skdx-space-4` |
|
|
389
|
+
| `radii.md` | `--skdx-radius-md` |
|
|
390
|
+
| `shadows.overlay` | `--skdx-shadow-overlay` |
|
|
391
|
+
| `motion.durationFast` | `--skdx-motion-duration-fast` |
|
|
392
|
+
| `motion.easing` | `--skdx-motion-easing` |
|
|
371
393
|
|
|
372
394
|
The pattern: section prefix (`color`, `font`, `space`, `radius`, `shadow`, `motion`) followed by the kebab-cased path within that group. When the path already starts with the section prefix (typography's `fontSize`, `fontFamily`, `fontWeight`), the prefix is not doubled — `--skdx-font-size-md`, not `--skdx-font-font-size-md`.
|
|
373
395
|
|
|
@@ -379,7 +401,8 @@ A shadow resolves across both blocks:
|
|
|
379
401
|
|
|
380
402
|
```css
|
|
381
403
|
/* :root, from foundationToCss() */
|
|
382
|
-
--skdx-shadow-md:
|
|
404
|
+
--skdx-shadow-md:
|
|
405
|
+
0 4px 6px -1px rgb(var(--skdx-shadow-color) / calc(0.1 * var(--skdx-shadow-strength))), …;
|
|
383
406
|
/* [data-skdx-theme="nord-dark"], from themeToCss() */
|
|
384
407
|
--skdx-shadow-color: 0 0 0;
|
|
385
408
|
--skdx-shadow-strength: 4.7;
|
|
@@ -391,27 +414,27 @@ run around `5`. It's a look, not a measurement — tune it by eye.
|
|
|
391
414
|
|
|
392
415
|
## API summary
|
|
393
416
|
|
|
394
|
-
| Export
|
|
395
|
-
|
|
|
396
|
-
| `defaultTheme`
|
|
397
|
-
| `createTheme(name, override?, base?)`
|
|
398
|
-
| `themeToCssVars(theme)`
|
|
399
|
-
| `themeToCss(theme, options?)`
|
|
400
|
-
| `applyTheme(theme, element?)`
|
|
401
|
-
| `skandaLight` … `synthwaveDark`
|
|
402
|
-
| `watchSystemMode(options?)`
|
|
403
|
-
| `getThemeInitScript(options?)`
|
|
404
|
-
| `zIndex`
|
|
405
|
-
| `focusRing`
|
|
406
|
-
| `borderWidth`
|
|
407
|
-
| `opacity`
|
|
408
|
-
| `breakpoints`
|
|
409
|
-
| `typography` / `space` / `radii` / `shadows` / `motion` | constants
|
|
410
|
-
| `foundationToCss()`
|
|
411
|
-
| `foundationToCssVars()`
|
|
412
|
-
| `contrastRatio(hexA, hexB)`
|
|
413
|
-
| `themes`
|
|
414
|
-
| `Theme`, `ThemeOverride`, …
|
|
417
|
+
| Export | Kind | Description |
|
|
418
|
+
| ------------------------------------------------------- | ------------------ | ------------------------------------------------------------------------------------------------------------------------ |
|
|
419
|
+
| `defaultTheme` | `Theme` | The reference theme (`skanda-light`) |
|
|
420
|
+
| `createTheme(name, override?, base?)` | function | Deep-merge a partial override into a base theme |
|
|
421
|
+
| `themeToCssVars(theme)` | function | Theme → flat `--skdx-*` variable map |
|
|
422
|
+
| `themeToCss(theme, options?)` | function | Theme → CSS rule string (scoped to `[data-skdx-theme]` by default) |
|
|
423
|
+
| `applyTheme(theme, element?)` | function | Set variables inline on an element at runtime |
|
|
424
|
+
| `skandaLight` … `synthwaveDark` | `Theme` × 38 | Built-in brand themes (19 brands × light/dark) |
|
|
425
|
+
| `watchSystemMode(options?)` | function | Apply a brand's theme from `prefers-color-scheme`, and on change |
|
|
426
|
+
| `getThemeInitScript(options?)` | function | Pre-paint snippet that stamps `data-skdx-theme`/`-mode` (no FOUC) |
|
|
427
|
+
| `zIndex` | `ZIndexScale` | Non-themed overlay stacking-order scale (`base`…`max`) |
|
|
428
|
+
| `focusRing` | `FocusRingScale` | Non-themed focus-ring `width`/`offset` |
|
|
429
|
+
| `borderWidth` | `BorderWidthScale` | Non-themed `thin`/`thick`/`thicker` border thicknesses |
|
|
430
|
+
| `opacity` | `OpacityScale` | Non-themed `disabled` and `scrim` opacities |
|
|
431
|
+
| `breakpoints` | `BreakpointScale` | Viewport widths in px — TS only, never emitted as CSS vars |
|
|
432
|
+
| `typography` / `space` / `radii` / `shadows` / `motion` | constants | The shared scales every theme inherits — not per-theme |
|
|
433
|
+
| `foundationToCss()` | function | The shared scales + `zIndex`/`focusRing`/`borderWidth`/`opacity` → a `:root` CSS block, plus its reduced-motion override |
|
|
434
|
+
| `foundationToCssVars()` | function | The same, as a flat `--skdx-*` variable map |
|
|
435
|
+
| `contrastRatio(hexA, hexB)` | function | WCAG relative-luminance contrast ratio between two colors |
|
|
436
|
+
| `themes` | `Theme[]` | All built-in themes |
|
|
437
|
+
| `Theme`, `ThemeOverride`, … | types | The full theme contract |
|
|
415
438
|
|
|
416
439
|
## Package layout
|
|
417
440
|
|
package/dist/foundation.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
:root{--skdx-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--skdx-font-family-mono: "SF Mono", SFMono-Regular, ui-monospace, Menlo, Consolas, monospace;--skdx-font-size-xs: .75rem;--skdx-font-size-sm: .875rem;--skdx-font-size-md: 1rem;--skdx-font-size-lg: 1.125rem;--skdx-font-size-xl: 1.25rem;--skdx-font-size-2xl: 1.5rem;--skdx-font-size-3xl: 1.875rem;--skdx-font-weight-regular: 400;--skdx-font-weight-medium: 500;--skdx-font-weight-semibold: 600;--skdx-font-weight-bold: 700;--skdx-font-line-height-tight: 1.25;--skdx-font-line-height-snug: 1.43;--skdx-font-line-height-normal: 1.5;--skdx-font-line-height-relaxed: 1.75;--skdx-font-letter-spacing-tight: -.015em;--skdx-font-letter-spacing-normal: 0em;--skdx-font-letter-spacing-wide: .025em;--skdx-font-letter-spacing-wider: .05em;--skdx-space-1: .25rem;--skdx-space-2: .5rem;--skdx-space-3: .75rem;--skdx-space-4: 1rem;--skdx-space-5: 1.25rem;--skdx-space-6: 1.5rem;--skdx-space-8: 2rem;--skdx-space-10: 2.5rem;--skdx-space-12: 3rem;--skdx-space-16: 4rem;--skdx-radius-sm: .25rem;--skdx-radius-inner: .375rem;--skdx-radius-md: .5rem;--skdx-radius-lg: .75rem;--skdx-radius-xl: 1rem;--skdx-radius-full: 9999px;--skdx-shadow-sm: 0 1px 2px 0 rgb(var(--skdx-shadow-color) / calc(.05 * var(--skdx-shadow-strength)));--skdx-shadow-md: 0 4px 6px -1px rgb(var(--skdx-shadow-color) / calc(.1 * var(--skdx-shadow-strength))), 0 2px 4px -2px rgb(var(--skdx-shadow-color) / calc(.1 * var(--skdx-shadow-strength)));--skdx-shadow-lg: 0 10px 15px -3px rgb(var(--skdx-shadow-color) / calc(.1 * var(--skdx-shadow-strength))), 0 4px 6px -4px rgb(var(--skdx-shadow-color) / calc(.1 * var(--skdx-shadow-strength)));--skdx-shadow-overlay: 0 25px 50px -12px rgb(var(--skdx-shadow-color) / calc(.25 * var(--skdx-shadow-strength)));--skdx-motion-duration-instant: 0ms;--skdx-motion-duration-fast: .1s;--skdx-motion-duration-normal: .2s;--skdx-motion-duration-slow: .3s;--skdx-motion-easing: cubic-bezier(.16, 1, .3, 1);--skdx-motion-easing-exit: cubic-bezier(.4, 0, 1, 1);--skdx-motion-easing-steady: cubic-bezier(.4, 0, .2, 1);--skdx-motion-easing-linear: linear;--skdx-motion-stagger-tight: 4ms;--skdx-motion-stagger-loose: 40ms;--skdx-z-index-base: 0;--skdx-z-index-dropdown: 10;--skdx-z-index-sticky: 20;--skdx-z-index-overlay: 30;--skdx-z-index-modal: 35;--skdx-z-index-popover: 40;--skdx-z-index-toast: 50;--skdx-z-index-max: 9999;--skdx-focus-ring-width: 2px;--skdx-focus-ring-offset: 2px;--skdx-focus-ring-offset-inset: calc(-1 * var(--skdx-focus-ring-width));--skdx-border-width-thin: 1px;--skdx-border-width-thick: 2px;--skdx-border-width-thicker: 4px;--skdx-opacity-disabled: .5;--skdx-opacity-scrim: .6;--skdx-control-height-sm: 1.875rem;--skdx-control-height-md: 2.25rem;--skdx-control-height-lg: 2.625rem;--skdx-control-height-compact: 2rem;--skdx-control-padding-sm: .625rem;--skdx-control-padding-md: var(--skdx-space-3);--skdx-control-padding-lg: var(--skdx-space-4);--skdx-control-gap-sm: var(--skdx-space-1);--skdx-control-gap-md: var(--skdx-space-2);--skdx-control-gap-lg: var(--skdx-space-2);--skdx-icon-size-sm: 1rem;--skdx-icon-size-md: 1.25rem;--skdx-icon-size-lg: 1.5rem;--skdx-indicator-size-sm: 1rem;--skdx-indicator-size-md: 1.25rem;--skdx-indicator-size-lg: 1.5rem;--skdx-item-height-sm: 1.75rem;--skdx-item-height-md: 2.25rem;--skdx-item-height-lg: 2.5rem;--skdx-item-gap: 2px;--skdx-overlay-padding: var(--skdx-space-1);--skdx-overlay-radius: var(--skdx-radius-lg);--skdx-overlay-min-width: 7.5rem;--skdx-field-gap: var(--skdx-space-1);--skdx-field-label-gap: var(--skdx-space-1);--skdx-target-min: 24px}@media(prefers-reduced-motion:reduce){:root{--skdx-motion-duration-instant: 0ms;--skdx-motion-duration-fast: 0ms;--skdx-motion-duration-normal: 0ms;--skdx-motion-duration-slow: 0ms;--skdx-motion-stagger-tight: 0ms;--skdx-motion-stagger-loose: 0ms}}@media(pointer:coarse){:root{--skdx-control-height-sm: 2.25rem;--skdx-control-height-md: 2.75rem;--skdx-control-height-lg: 3rem;--skdx-control-height-compact: 2.75rem;--skdx-item-height-sm: 2.25rem;--skdx-item-height-md: 2.75rem;--skdx-item-height-lg: 3rem;--skdx-target-min: 44px}}:root{--skdx-color-surface-inverse: var(--skdx-color-neutral-900);--skdx-color-text-on-inverse: var(--skdx-color-neutral-50);--skdx-color-surface-page: var(--skdx-color-semantic-background);--skdx-color-surface-default: var(--skdx-color-semantic-surface);--skdx-color-surface-hover: var(--skdx-color-semantic-surface-hover);--skdx-color-surface-raised: var(--skdx-color-semantic-background);--skdx-color-surface-sunken: var(--skdx-color-semantic-surface);--skdx-color-surface-pressed: var(--skdx-color-neutral-200);--skdx-color-surface-selected: var(--skdx-color-primary-50);--skdx-color-surface-disabled: var(--skdx-color-neutral-100);--skdx-color-surface-overlay: var(--skdx-color-semantic-overlay);--skdx-color-text-default: var(--skdx-color-semantic-text);--skdx-color-text-muted: var(--skdx-color-semantic-text-muted);--skdx-color-text-on-accent: var(--skdx-color-semantic-text-inverted);--skdx-color-text-accent: var(--skdx-color-primary-700);--skdx-color-text-disabled: var(--skdx-color-neutral-600);--skdx-color-text-placeholder: var(--skdx-color-semantic-text-muted);--skdx-color-text-danger: var(--skdx-color-danger-700);--skdx-color-text-success: var(--skdx-color-success-800);--skdx-color-text-warning: var(--skdx-color-warning-900);--skdx-color-text-info: var(--skdx-color-primary-700);--skdx-color-border-default: var(--skdx-color-semantic-border);--skdx-color-border-strong: var(--skdx-color-semantic-border-strong);--skdx-color-border-subtle: var(--skdx-color-neutral-200);--skdx-color-border-accent: var(--skdx-color-primary-600);--skdx-color-border-disabled: var(--skdx-color-neutral-200);--skdx-color-border-danger: var(--skdx-color-danger-600);--skdx-color-border-success: var(--skdx-color-success-600);--skdx-color-border-warning: var(--skdx-color-warning-600);--skdx-color-action-primary-bg: var(--skdx-color-primary-600);--skdx-color-action-primary-bg-hover: var(--skdx-color-primary-600);--skdx-color-action-primary-bg-pressed: var(--skdx-color-primary-600);--skdx-color-action-primary-border-hover: var(--skdx-color-primary-800);--skdx-color-action-primary-text: var(--skdx-color-semantic-text-inverted);--skdx-color-action-primary-border: var(--skdx-color-primary-600);--skdx-color-action-secondary-bg: var(--skdx-color-semantic-surface);--skdx-color-action-secondary-bg-hover: var(--skdx-color-semantic-surface-hover);--skdx-color-action-secondary-bg-pressed: var(--skdx-color-neutral-300);--skdx-color-action-secondary-text: var(--skdx-color-semantic-text);--skdx-color-action-secondary-border: var(--skdx-color-semantic-border);--skdx-color-action-outline-text: var(--skdx-color-semantic-text);--skdx-color-action-outline-border: var(--skdx-color-semantic-border-strong);--skdx-color-action-outline-bg-hover: var(--skdx-color-semantic-surface-hover);--skdx-color-action-outline-bg-pressed: var(--skdx-color-neutral-200);--skdx-color-action-ghost-text: var(--skdx-color-semantic-text);--skdx-color-action-ghost-bg-hover: var(--skdx-color-semantic-surface-hover);--skdx-color-action-ghost-bg-pressed: var(--skdx-color-neutral-200);--skdx-color-action-danger-bg: var(--skdx-color-danger-700);--skdx-color-action-danger-bg-hover: var(--skdx-color-danger-800);--skdx-color-action-danger-bg-pressed: var(--skdx-color-danger-900);--skdx-color-action-danger-text: var(--skdx-color-danger-50);--skdx-color-action-danger-border: var(--skdx-color-danger-700);--skdx-color-action-disabled-bg: var(--skdx-color-neutral-100);--skdx-color-action-disabled-text: var(--skdx-color-neutral-700);--skdx-color-action-disabled-border: var(--skdx-color-neutral-200);--skdx-color-field-bg: var(--skdx-color-semantic-background);--skdx-color-field-bg-hover: var(--skdx-color-semantic-surface-hover);--skdx-color-field-bg-disabled: var(--skdx-color-neutral-100);--skdx-color-field-bg-readonly: var(--skdx-color-neutral-50);--skdx-color-field-border: var(--skdx-color-semantic-border-strong);--skdx-color-field-border-hover: var(--skdx-color-neutral-500);--skdx-color-field-border-focus: var(--skdx-color-primary-600);--skdx-color-field-border-invalid: var(--skdx-color-danger-700);--skdx-color-field-text: var(--skdx-color-semantic-text);--skdx-color-selection-bg: var(--skdx-color-primary-600);--skdx-color-selection-bg-hover: var(--skdx-color-primary-600);--skdx-color-selection-mark: var(--skdx-color-semantic-text-inverted);--skdx-color-highlight-bg: var(--skdx-color-semantic-surface-hover);--skdx-color-highlight-text: var(--skdx-color-semantic-text);--skdx-color-status-info-bg: var(--skdx-color-primary-50);--skdx-color-status-info-border: var(--skdx-color-primary-200);--skdx-color-status-info-text: var(--skdx-color-primary-800);--skdx-color-status-info-icon: var(--skdx-color-primary-600);--skdx-color-status-success-bg: var(--skdx-color-success-50);--skdx-color-status-success-border: var(--skdx-color-success-200);--skdx-color-status-success-text: var(--skdx-color-success-800);--skdx-color-status-success-icon: var(--skdx-color-success-600);--skdx-color-status-warning-bg: var(--skdx-color-warning-50);--skdx-color-status-warning-border: var(--skdx-color-warning-200);--skdx-color-status-warning-text: var(--skdx-color-warning-800);--skdx-color-status-warning-icon: var(--skdx-color-warning-600);--skdx-color-status-danger-bg: var(--skdx-color-danger-50);--skdx-color-status-danger-border: var(--skdx-color-danger-200);--skdx-color-status-danger-text: var(--skdx-color-danger-800);--skdx-color-status-danger-icon: var(--skdx-color-danger-600);--skdx-color-status-neutral-bg: var(--skdx-color-semantic-surface);--skdx-color-status-neutral-border: var(--skdx-color-semantic-border);--skdx-color-status-neutral-text: var(--skdx-color-semantic-text);--skdx-color-status-neutral-icon: var(--skdx-color-semantic-text-muted);--skdx-color-focus-ring: var(--skdx-color-semantic-focus-ring);--skdx-color-focus-ring-offset: var(--skdx-color-semantic-background);--skdx-color-separator: var(--skdx-color-semantic-border);--skdx-color-track: var(--skdx-color-neutral-100);--skdx-color-track-fill: var(--skdx-color-primary-600);--skdx-color-skeleton: var(--skdx-color-neutral-200);--skdx-color-skeleton-sheen: var(--skdx-color-neutral-100)}
|
|
1
|
+
:root{--skdx-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--skdx-font-family-mono: "SF Mono", SFMono-Regular, ui-monospace, Menlo, Consolas, monospace;--skdx-font-size-xs: .75rem;--skdx-font-size-sm: .875rem;--skdx-font-size-md: 1rem;--skdx-font-size-lg: 1.125rem;--skdx-font-size-xl: 1.25rem;--skdx-font-size-2xl: 1.5rem;--skdx-font-size-3xl: 1.875rem;--skdx-font-weight-regular: 400;--skdx-font-weight-medium: 500;--skdx-font-weight-semibold: 600;--skdx-font-weight-bold: 700;--skdx-font-line-height-tight: 1.25;--skdx-font-line-height-snug: 1.43;--skdx-font-line-height-normal: 1.5;--skdx-font-line-height-relaxed: 1.75;--skdx-font-letter-spacing-tight: -.015em;--skdx-font-letter-spacing-normal: 0em;--skdx-font-letter-spacing-wide: .025em;--skdx-font-letter-spacing-wider: .05em;--skdx-space-1: .25rem;--skdx-space-2: .5rem;--skdx-space-3: .75rem;--skdx-space-4: 1rem;--skdx-space-5: 1.25rem;--skdx-space-6: 1.5rem;--skdx-space-8: 2rem;--skdx-space-10: 2.5rem;--skdx-space-12: 3rem;--skdx-space-16: 4rem;--skdx-radius-sm: .25rem;--skdx-radius-inner: .375rem;--skdx-radius-md: .5rem;--skdx-radius-lg: .75rem;--skdx-radius-xl: 1rem;--skdx-radius-full: 9999px;--skdx-shadow-sm: 0 1px 2px 0 rgb(var(--skdx-shadow-color) / calc(.05 * var(--skdx-shadow-strength)));--skdx-shadow-md: 0 4px 6px -1px rgb(var(--skdx-shadow-color) / calc(.1 * var(--skdx-shadow-strength))), 0 2px 4px -2px rgb(var(--skdx-shadow-color) / calc(.1 * var(--skdx-shadow-strength)));--skdx-shadow-lg: 0 10px 15px -3px rgb(var(--skdx-shadow-color) / calc(.1 * var(--skdx-shadow-strength))), 0 4px 6px -4px rgb(var(--skdx-shadow-color) / calc(.1 * var(--skdx-shadow-strength)));--skdx-shadow-overlay: 0 25px 50px -12px rgb(var(--skdx-shadow-color) / calc(.25 * var(--skdx-shadow-strength)));--skdx-motion-duration-instant: 0ms;--skdx-motion-duration-fast: .1s;--skdx-motion-duration-normal: .2s;--skdx-motion-duration-slow: .3s;--skdx-motion-easing: cubic-bezier(.16, 1, .3, 1);--skdx-motion-easing-exit: cubic-bezier(.4, 0, 1, 1);--skdx-motion-easing-steady: cubic-bezier(.4, 0, .2, 1);--skdx-motion-easing-linear: linear;--skdx-motion-stagger-tight: 4ms;--skdx-motion-stagger-loose: 40ms;--skdx-z-index-base: 0;--skdx-z-index-dropdown: 10;--skdx-z-index-sticky: 20;--skdx-z-index-overlay: 30;--skdx-z-index-modal: 35;--skdx-z-index-popover: 40;--skdx-z-index-toast: 50;--skdx-z-index-max: 9999;--skdx-focus-ring-width: 2px;--skdx-focus-ring-offset: 2px;--skdx-focus-ring-offset-inset: calc(-1 * var(--skdx-focus-ring-width));--skdx-border-width-thin: 1px;--skdx-border-width-thick: 2px;--skdx-border-width-thicker: 4px;--skdx-opacity-disabled: .5;--skdx-opacity-scrim: .6;--skdx-control-height-sm: 1.875rem;--skdx-control-height-md: 2.25rem;--skdx-control-height-lg: 2.625rem;--skdx-control-height-compact: 2rem;--skdx-control-padding-sm: .625rem;--skdx-control-padding-md: var(--skdx-space-3);--skdx-control-padding-lg: var(--skdx-space-4);--skdx-control-gap-sm: var(--skdx-space-1);--skdx-control-gap-md: var(--skdx-space-2);--skdx-control-gap-lg: var(--skdx-space-2);--skdx-icon-size-sm: 1rem;--skdx-icon-size-md: 1.25rem;--skdx-icon-size-lg: 1.5rem;--skdx-indicator-size-sm: 1rem;--skdx-indicator-size-md: 1.25rem;--skdx-indicator-size-lg: 1.5rem;--skdx-item-height-sm: 1.75rem;--skdx-item-height-md: 2.25rem;--skdx-item-height-lg: 2.5rem;--skdx-item-gap: 2px;--skdx-overlay-padding: var(--skdx-space-1);--skdx-overlay-radius: var(--skdx-radius-lg);--skdx-overlay-min-width: 7.5rem;--skdx-field-gap: var(--skdx-space-1);--skdx-field-label-gap: var(--skdx-space-1);--skdx-target-min: 24px}@media(prefers-reduced-motion:reduce){:root{--skdx-motion-duration-instant: 0ms;--skdx-motion-duration-fast: 0ms;--skdx-motion-duration-normal: 0ms;--skdx-motion-duration-slow: 0ms;--skdx-motion-stagger-tight: 0ms;--skdx-motion-stagger-loose: 0ms}}@media(pointer:coarse){:root{--skdx-control-height-sm: 2.25rem;--skdx-control-height-md: 2.75rem;--skdx-control-height-lg: 3rem;--skdx-control-height-compact: 2.75rem;--skdx-item-height-sm: 2.25rem;--skdx-item-height-md: 2.75rem;--skdx-item-height-lg: 3rem;--skdx-target-min: 44px}}:root{--skdx-color-surface-inverse: var(--skdx-color-neutral-900);--skdx-color-text-on-inverse: var(--skdx-color-neutral-50);--skdx-color-surface-page: var(--skdx-color-semantic-background);--skdx-color-surface-default: var(--skdx-color-semantic-surface);--skdx-color-surface-hover: var(--skdx-color-semantic-surface-hover);--skdx-color-surface-raised: var(--skdx-color-semantic-background);--skdx-color-surface-sunken: var(--skdx-color-semantic-surface);--skdx-color-surface-pressed: var(--skdx-color-neutral-200);--skdx-color-surface-selected: var(--skdx-color-primary-50);--skdx-color-surface-disabled: var(--skdx-color-neutral-100);--skdx-color-surface-overlay: var(--skdx-color-semantic-overlay);--skdx-color-text-default: var(--skdx-color-semantic-text);--skdx-color-text-muted: var(--skdx-color-semantic-text-muted);--skdx-color-text-on-accent: var(--skdx-color-semantic-text-inverted);--skdx-color-text-accent: var(--skdx-color-primary-700);--skdx-color-text-disabled: var(--skdx-color-neutral-600);--skdx-color-text-placeholder: var(--skdx-color-semantic-text-muted);--skdx-color-text-danger: var(--skdx-color-danger-700);--skdx-color-text-success: var(--skdx-color-success-800);--skdx-color-text-warning: var(--skdx-color-warning-900);--skdx-color-text-info: var(--skdx-color-primary-700);--skdx-color-border-default: var(--skdx-color-semantic-border);--skdx-color-border-strong: var(--skdx-color-semantic-border-strong);--skdx-color-border-subtle: var(--skdx-color-neutral-200);--skdx-color-border-accent: var(--skdx-color-primary-600);--skdx-color-border-disabled: var(--skdx-color-neutral-200);--skdx-color-border-danger: var(--skdx-color-danger-600);--skdx-color-border-success: var(--skdx-color-success-600);--skdx-color-border-warning: var(--skdx-color-warning-600);--skdx-color-action-primary-bg: var(--skdx-color-primary-600);--skdx-color-action-primary-bg-hover: var(--skdx-color-primary-600);--skdx-color-action-primary-border-hover: var(--skdx-color-primary-800);--skdx-color-action-primary-text: var(--skdx-color-semantic-text-inverted);--skdx-color-action-primary-border: var(--skdx-color-primary-600);--skdx-color-action-secondary-bg: var(--skdx-color-semantic-surface);--skdx-color-action-secondary-bg-hover: var(--skdx-color-semantic-surface-hover);--skdx-color-action-secondary-bg-pressed: var(--skdx-color-neutral-300);--skdx-color-action-secondary-text: var(--skdx-color-semantic-text);--skdx-color-action-secondary-border: var(--skdx-color-semantic-border);--skdx-color-action-outline-text: var(--skdx-color-semantic-text);--skdx-color-action-outline-border: var(--skdx-color-semantic-border-strong);--skdx-color-action-outline-bg-hover: var(--skdx-color-semantic-surface-hover);--skdx-color-action-outline-bg-pressed: var(--skdx-color-neutral-200);--skdx-color-action-ghost-text: var(--skdx-color-semantic-text);--skdx-color-action-ghost-bg-hover: var(--skdx-color-semantic-surface-hover);--skdx-color-action-ghost-bg-pressed: var(--skdx-color-neutral-200);--skdx-color-action-danger-bg: var(--skdx-color-danger-700);--skdx-color-action-danger-bg-hover: var(--skdx-color-danger-800);--skdx-color-action-danger-bg-pressed: var(--skdx-color-danger-900);--skdx-color-action-danger-text: var(--skdx-color-danger-50);--skdx-color-action-danger-border: var(--skdx-color-danger-700);--skdx-color-action-disabled-bg: var(--skdx-color-neutral-100);--skdx-color-action-disabled-text: var(--skdx-color-neutral-700);--skdx-color-action-disabled-border: var(--skdx-color-neutral-200);--skdx-color-field-bg: var(--skdx-color-semantic-background);--skdx-color-field-bg-hover: var(--skdx-color-semantic-surface-hover);--skdx-color-field-bg-disabled: var(--skdx-color-neutral-100);--skdx-color-field-bg-readonly: var(--skdx-color-neutral-50);--skdx-color-field-border: var(--skdx-color-semantic-border-strong);--skdx-color-field-border-hover: var(--skdx-color-neutral-500);--skdx-color-field-border-focus: var(--skdx-color-primary-600);--skdx-color-field-border-invalid: var(--skdx-color-danger-700);--skdx-color-field-text: var(--skdx-color-semantic-text);--skdx-color-selection-bg: var(--skdx-color-primary-600);--skdx-color-selection-mark: var(--skdx-color-semantic-text-inverted);--skdx-color-highlight-bg: var(--skdx-color-semantic-surface-hover);--skdx-color-highlight-text: var(--skdx-color-semantic-text);--skdx-color-status-info-bg: var(--skdx-color-primary-50);--skdx-color-status-info-border: var(--skdx-color-primary-200);--skdx-color-status-info-text: var(--skdx-color-primary-800);--skdx-color-status-info-icon: var(--skdx-color-primary-600);--skdx-color-status-success-bg: var(--skdx-color-success-50);--skdx-color-status-success-border: var(--skdx-color-success-200);--skdx-color-status-success-text: var(--skdx-color-success-800);--skdx-color-status-success-icon: var(--skdx-color-success-600);--skdx-color-status-warning-bg: var(--skdx-color-warning-50);--skdx-color-status-warning-border: var(--skdx-color-warning-200);--skdx-color-status-warning-text: var(--skdx-color-warning-800);--skdx-color-status-warning-icon: var(--skdx-color-warning-600);--skdx-color-status-danger-bg: var(--skdx-color-danger-50);--skdx-color-status-danger-border: var(--skdx-color-danger-200);--skdx-color-status-danger-text: var(--skdx-color-danger-800);--skdx-color-status-danger-icon: var(--skdx-color-danger-600);--skdx-color-status-neutral-bg: var(--skdx-color-semantic-surface);--skdx-color-status-neutral-border: var(--skdx-color-semantic-border);--skdx-color-status-neutral-text: var(--skdx-color-semantic-text);--skdx-color-status-neutral-icon: var(--skdx-color-semantic-text-muted);--skdx-color-focus-ring: var(--skdx-color-semantic-focus-ring);--skdx-color-separator: var(--skdx-color-semantic-border);--skdx-color-track: var(--skdx-color-neutral-100);--skdx-color-track-fill: var(--skdx-color-primary-600);--skdx-color-skeleton: var(--skdx-color-neutral-200)}@media(prefers-contrast:more){:root{--skdx-color-border-default: var(--skdx-color-semantic-border-strong);--skdx-color-border-strong: var(--skdx-color-semantic-text-muted);--skdx-color-border-subtle: var(--skdx-color-neutral-400);--skdx-color-text-muted: var(--skdx-color-semantic-text);--skdx-color-text-placeholder: var(--skdx-color-semantic-text);--skdx-color-text-disabled: var(--skdx-color-neutral-800);--skdx-color-focus-ring: var(--skdx-color-semantic-text);--skdx-color-separator: var(--skdx-color-semantic-border-strong)}}
|
package/dist/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var m=Object.defineProperty;var
|
|
1
|
+
"use strict";var m=Object.defineProperty;var T=Object.getOwnPropertyDescriptor;var g=Object.getOwnPropertyNames;var k=Object.prototype.hasOwnProperty;var y=(s,o)=>{for(var n in o)m(s,n,{get:o[n],enumerable:!0})},C=(s,o,n,c)=>{if(o&&typeof o=="object"||typeof o=="function")for(let h of g(o))!k.call(s,h)&&h!==n&&m(s,h,{get:()=>o[h],enumerable:!(c=T(o,h))||c.enumerable});return s};var D=s=>C(m({},"__esModule",{value:!0}),s);var f={};y(f,{BRAND_STORAGE_KEY:()=>t.BRAND_STORAGE_KEY,MODE_STORAGE_KEY:()=>t.MODE_STORAGE_KEY,aliasesToCss:()=>r.aliasesToCss,aliasesToCssVars:()=>r.aliasesToCssVars,antDark:()=>e.antDark,antLight:()=>e.antLight,applyTheme:()=>i.applyTheme,borderWidth:()=>a.borderWidth,brands:()=>e.brands,breakpoints:()=>a.breakpoints,catppuccinLatte:()=>e.catppuccinLatte,catppuccinMocha:()=>e.catppuccinMocha,chakraDark:()=>e.chakraDark,chakraLight:()=>e.chakraLight,coarsePointerToCssVars:()=>a.coarsePointerToCssVars,colorAliases:()=>r.colorAliases,contrastAliasesToCss:()=>r.contrastAliasesToCss,contrastColorAliases:()=>r.contrastColorAliases,contrastRatio:()=>d.contrastRatio,controls:()=>a.controls,controlsCoarse:()=>a.controlsCoarse,createTheme:()=>p.createTheme,cupcakeDark:()=>e.cupcakeDark,cupcakeLight:()=>e.cupcakeLight,darkAliasesToCss:()=>r.darkAliasesToCss,darkColorAliases:()=>r.darkColorAliases,defaultBrand:()=>e.defaultBrand,defaultTheme:()=>p.defaultTheme,draculaDark:()=>e.draculaDark,draculaLight:()=>e.draculaLight,emeraldDark:()=>e.emeraldDark,emeraldLight:()=>e.emeraldLight,everforestDark:()=>e.everforestDark,everforestLight:()=>e.everforestLight,fluentDark:()=>e.fluentDark,fluentLight:()=>e.fluentLight,focusRing:()=>a.focusRing,foundationToCss:()=>a.foundationToCss,foundationToCssVars:()=>a.foundationToCssVars,getBrand:()=>e.getBrand,getBrandByThemeName:()=>e.getBrandByThemeName,getThemeInitScript:()=>t.getThemeInitScript,graphiteDark:()=>e.graphiteDark,graphiteLight:()=>e.graphiteLight,gruvboxDark:()=>e.gruvboxDark,gruvboxLight:()=>e.gruvboxLight,materialDark:()=>e.materialDark,materialLight:()=>e.materialLight,midnightDark:()=>e.midnightDark,midnightLight:()=>e.midnightLight,motion:()=>a.motion,nordDark:()=>e.nordDark,nordLight:()=>e.nordLight,oneDark:()=>e.oneDark,oneLight:()=>e.oneLight,opacity:()=>a.opacity,primerDark:()=>e.primerDark,primerLight:()=>e.primerLight,radii:()=>a.radii,rosePine:()=>e.rosePine,rosePineDawn:()=>e.rosePineDawn,sectionsToCssVars:()=>l.sectionsToCssVars,shadows:()=>a.shadows,skandaDark:()=>e.skandaDark,skandaLight:()=>e.skandaLight,solarizedDark:()=>e.solarizedDark,solarizedLight:()=>e.solarizedLight,space:()=>a.space,synthwaveDark:()=>e.synthwaveDark,synthwaveLight:()=>e.synthwaveLight,themeToCss:()=>i.themeToCss,themeToCssVars:()=>i.themeToCssVars,themes:()=>e.themes,typography:()=>a.typography,watchSystemMode:()=>t.watchSystemMode,zIndex:()=>a.zIndex});module.exports=D(f);var p=require("./themes/DefaultTheme.cjs"),i=require("./utils/toCss.cjs"),l=require("./utils/cssVars.cjs"),r=require("./utils/aliases.cjs"),a=require("./utils/foundation.cjs"),d=require("./utils/contrast.cjs"),t=require("./utils/mode.cjs"),e=require("./themes/index.cjs");0&&(module.exports={BRAND_STORAGE_KEY,MODE_STORAGE_KEY,aliasesToCss,aliasesToCssVars,antDark,antLight,applyTheme,borderWidth,brands,breakpoints,catppuccinLatte,catppuccinMocha,chakraDark,chakraLight,coarsePointerToCssVars,colorAliases,contrastAliasesToCss,contrastColorAliases,contrastRatio,controls,controlsCoarse,createTheme,cupcakeDark,cupcakeLight,darkAliasesToCss,darkColorAliases,defaultBrand,defaultTheme,draculaDark,draculaLight,emeraldDark,emeraldLight,everforestDark,everforestLight,fluentDark,fluentLight,focusRing,foundationToCss,foundationToCssVars,getBrand,getBrandByThemeName,getThemeInitScript,graphiteDark,graphiteLight,gruvboxDark,gruvboxLight,materialDark,materialLight,midnightDark,midnightLight,motion,nordDark,nordLight,oneDark,oneLight,opacity,primerDark,primerLight,radii,rosePine,rosePineDawn,sectionsToCssVars,shadows,skandaDark,skandaLight,solarizedDark,solarizedLight,space,synthwaveDark,synthwaveLight,themeToCss,themeToCssVars,themes,typography,watchSystemMode,zIndex});
|
package/dist/index.d.cts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
export type { Theme, ThemeColorMode, ThemeOverride, ThemeColors, ColorScale, SemanticColors, ThemeTypography, ThemeSpace, ThemeRadii, ThemeControls, ThemeControlsCoarse, ThemeShadows, ThemeShadowColor, ThemeTypographyDeviation, ThemeMotionDeviation, ThemeMotion, } from './utils/theme.cjs';
|
|
2
2
|
export { defaultTheme, createTheme } from './themes/DefaultTheme.cjs';
|
|
3
3
|
export { themeToCss, themeToCssVars, applyTheme, type ThemeToCssOptions } from './utils/toCss.cjs';
|
|
4
|
-
export {
|
|
4
|
+
export { sectionsToCssVars, type CssVar, type CssVarSection } from './utils/cssVars.cjs';
|
|
5
|
+
export { aliasesToCss, aliasesToCssVars, colorAliases, contrastAliasesToCss, contrastColorAliases, darkAliasesToCss, darkColorAliases, } from './utils/aliases.cjs';
|
|
5
6
|
export { typography, space, radii, shadows, motion, zIndex, focusRing, borderWidth, opacity, breakpoints, controls, controlsCoarse, foundationToCss, foundationToCssVars, coarsePointerToCssVars, type ZIndexScale, type FocusRingScale, type BorderWidthScale, type OpacityScale, type BreakpointScale, } from './utils/foundation.cjs';
|
|
6
7
|
export { contrastRatio } from './utils/contrast.cjs';
|
|
7
8
|
export { watchSystemMode, getThemeInitScript, MODE_STORAGE_KEY, BRAND_STORAGE_KEY, type WatchSystemModeOptions, type ThemeInitScriptOptions, } from './utils/mode.cjs';
|
|
8
|
-
export { skandaLight,
|
|
9
|
+
export { skandaLight, emeraldLight, midnightDark, graphiteLight, materialLight, antLight, fluentLight, chakraLight, nordDark, draculaDark, catppuccinLatte, catppuccinMocha, solarizedLight, solarizedDark, gruvboxDark, rosePine, everforestDark, oneDark, primerLight, primerDark, cupcakeLight, synthwaveDark, skandaDark, emeraldDark, midnightLight, graphiteDark, materialDark, antDark, fluentDark, chakraDark, nordLight, draculaLight, gruvboxLight, rosePineDawn, everforestLight, oneLight, cupcakeDark, synthwaveLight, themes, brands, defaultBrand, getBrand, getBrandByThemeName, type Brand, } from './themes/index.cjs';
|
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
export type { Theme, ThemeColorMode, ThemeOverride, ThemeColors, ColorScale, SemanticColors, ThemeTypography, ThemeSpace, ThemeRadii, ThemeControls, ThemeControlsCoarse, ThemeShadows, ThemeShadowColor, ThemeTypographyDeviation, ThemeMotionDeviation, ThemeMotion, } from './utils/theme.js';
|
|
2
2
|
export { defaultTheme, createTheme } from './themes/DefaultTheme.js';
|
|
3
3
|
export { themeToCss, themeToCssVars, applyTheme, type ThemeToCssOptions } from './utils/toCss.js';
|
|
4
|
-
export {
|
|
4
|
+
export { sectionsToCssVars, type CssVar, type CssVarSection } from './utils/cssVars.js';
|
|
5
|
+
export { aliasesToCss, aliasesToCssVars, colorAliases, contrastAliasesToCss, contrastColorAliases, darkAliasesToCss, darkColorAliases, } from './utils/aliases.js';
|
|
5
6
|
export { typography, space, radii, shadows, motion, zIndex, focusRing, borderWidth, opacity, breakpoints, controls, controlsCoarse, foundationToCss, foundationToCssVars, coarsePointerToCssVars, type ZIndexScale, type FocusRingScale, type BorderWidthScale, type OpacityScale, type BreakpointScale, } from './utils/foundation.js';
|
|
6
7
|
export { contrastRatio } from './utils/contrast.js';
|
|
7
8
|
export { watchSystemMode, getThemeInitScript, MODE_STORAGE_KEY, BRAND_STORAGE_KEY, type WatchSystemModeOptions, type ThemeInitScriptOptions, } from './utils/mode.js';
|
|
8
|
-
export { skandaLight,
|
|
9
|
+
export { skandaLight, emeraldLight, midnightDark, graphiteLight, materialLight, antLight, fluentLight, chakraLight, nordDark, draculaDark, catppuccinLatte, catppuccinMocha, solarizedLight, solarizedDark, gruvboxDark, rosePine, everforestDark, oneDark, primerLight, primerDark, cupcakeLight, synthwaveDark, skandaDark, emeraldDark, midnightLight, graphiteDark, materialDark, antDark, fluentDark, chakraDark, nordLight, draculaLight, gruvboxLight, rosePineDawn, everforestLight, oneLight, cupcakeDark, synthwaveLight, themes, brands, defaultBrand, getBrand, getBrandByThemeName, type Brand, } from './themes/index.js';
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{defaultTheme as r,createTheme as o}from"./themes/DefaultTheme.js";import{themeToCss as s,themeToCssVars as i,applyTheme as
|
|
1
|
+
import{defaultTheme as r,createTheme as o}from"./themes/DefaultTheme.js";import{themeToCss as s,themeToCssVars as i,applyTheme as h}from"./utils/toCss.js";import{sectionsToCssVars as p}from"./utils/cssVars.js";import{aliasesToCss as c,aliasesToCssVars as l,colorAliases as d,contrastAliasesToCss as T,contrastColorAliases as g,darkAliasesToCss as k,darkColorAliases as y}from"./utils/aliases.js";import{typography as D,space as f,radii as L,shadows as u,motion as S,zIndex as x,focusRing as v,borderWidth as A,opacity as B,breakpoints as O,controls as w,controlsCoarse as M,foundationToCss as R,foundationToCssVars as V,coarsePointerToCssVars as b}from"./utils/foundation.js";import{contrastRatio as I}from"./utils/contrast.js";import{watchSystemMode as z,getThemeInitScript as P,MODE_STORAGE_KEY as W,BRAND_STORAGE_KEY as G}from"./utils/mode.js";import{skandaLight as N,emeraldLight as Y,midnightDark as F,graphiteLight as Z,materialLight as j,antLight as q,fluentLight as H,chakraLight as J,nordDark as Q,draculaDark as U,catppuccinLatte as X,catppuccinMocha as $,solarizedLight as ee,solarizedDark as ae,gruvboxDark as re,rosePine as oe,everforestDark as te,oneDark as se,primerLight as ie,primerDark as he,cupcakeLight as ne,synthwaveDark as pe,skandaDark as me,emeraldDark as ce,midnightLight as le,graphiteDark as de,materialDark as Te,antDark as ge,fluentDark as ke,chakraDark as ye,nordLight as Ce,draculaLight as De,gruvboxLight as fe,rosePineDawn as Le,everforestLight as ue,oneLight as Se,cupcakeDark as xe,synthwaveLight as ve,themes as Ae,brands as Be,defaultBrand as Oe,getBrand as we,getBrandByThemeName as Me}from"./themes/index.js";export{G as BRAND_STORAGE_KEY,W as MODE_STORAGE_KEY,c as aliasesToCss,l as aliasesToCssVars,ge as antDark,q as antLight,h as applyTheme,A as borderWidth,Be as brands,O as breakpoints,X as catppuccinLatte,$ as catppuccinMocha,ye as chakraDark,J as chakraLight,b as coarsePointerToCssVars,d as colorAliases,T as contrastAliasesToCss,g as contrastColorAliases,I as contrastRatio,w as controls,M as controlsCoarse,o as createTheme,xe as cupcakeDark,ne as cupcakeLight,k as darkAliasesToCss,y as darkColorAliases,Oe as defaultBrand,r as defaultTheme,U as draculaDark,De as draculaLight,ce as emeraldDark,Y as emeraldLight,te as everforestDark,ue as everforestLight,ke as fluentDark,H as fluentLight,v as focusRing,R as foundationToCss,V as foundationToCssVars,we as getBrand,Me as getBrandByThemeName,P as getThemeInitScript,de as graphiteDark,Z as graphiteLight,re as gruvboxDark,fe as gruvboxLight,Te as materialDark,j as materialLight,F as midnightDark,le as midnightLight,S as motion,Q as nordDark,Ce as nordLight,se as oneDark,Se as oneLight,B as opacity,he as primerDark,ie as primerLight,L as radii,oe as rosePine,Le as rosePineDawn,p as sectionsToCssVars,u as shadows,me as skandaDark,N as skandaLight,ae as solarizedDark,ee as solarizedLight,f as space,pe as synthwaveDark,ve as synthwaveLight,s as themeToCss,i as themeToCssVars,Ae as themes,D as typography,z as watchSystemMode,x as zIndex};
|
package/dist/themes/AntDark.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var f=Object.defineProperty;var m=Object.getOwnPropertyDescriptor;var n=Object.getOwnPropertyNames;var b=Object.prototype.hasOwnProperty;var s=(r,e)=>{for(var a in e)f(r,a,{get:e[a],enumerable:!0})},i=(r,e,a,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let t of n(e))!b.call(r,t)&&t!==a&&f(r,t,{get:()=>e[t],enumerable:!(o=m(e,t))||o.enumerable});return r};var h=r=>i(f({},"__esModule",{value:!0}),r);var g={};s(g,{antDark:()=>u});module.exports=h(g);var c=require("./AntLight.cjs"),d=require("./DefaultTheme.cjs"),u=(0,d.createTheme)("ant-dark",{mode:"dark",colors:{primary:{50:"#f3f9fe",100:"#e4f1fc",200:"#c5e1f8",300:"#9ecdf4",400:"#7abaef",500:"#5baaec",600:"#3c9ae8",700:"#327dbd",800:"#2a669a",900:"#23527c",950:"#18324c"},neutral:{200:"#303030",300:"#424242",800:"#1f1f1f",900:"#141414",950:"#0a0a0a"},semantic:{background:"#141414",surface:"#1f1f1f",surfaceHover:"#262626",overlay:"rgb(0 0 0 / 0.65)",text:"#d9d9d9",textMuted:"#8c8c8c",textInverted:"#141414",border:"#303030",borderStrong:"#6b6b6b",focusRing:"#4096ff"}},shadow:{color:"0 0 0",strength:"4.7"}},c.antLight);0&&(module.exports={antDark});
|
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
*
|
|
5
|
-
* The accent comes from Ant's *dark* daybreak ramp rather than the light
|
|
6
|
-
* one — Ant's dark algorithm re-derives the palette against #141414, and
|
|
7
|
-
* the light ramp's blue-7 lands at 2.99:1 there. This takes the dark ramp's
|
|
8
|
-
* seventh step, which clears the gate with dark ink on the filled state.
|
|
9
|
-
*
|
|
10
|
-
* @public
|
|
11
|
-
*/
|
|
12
|
-
export declare const antDark: import("../index.cjs").Theme;
|
|
1
|
+
import type { Theme } from '../utils/theme.cjs';
|
|
2
|
+
/** Dark counterpart of Ant Design's dark surfaces (#141414/#1f1f1f), using the dark-derived blue since the light ramp's blue fails contrast on dark backgrounds. @public */
|
|
3
|
+
export declare const antDark: Theme;
|
package/dist/themes/AntDark.d.ts
CHANGED
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
*
|
|
5
|
-
* The accent comes from Ant's *dark* daybreak ramp rather than the light
|
|
6
|
-
* one — Ant's dark algorithm re-derives the palette against #141414, and
|
|
7
|
-
* the light ramp's blue-7 lands at 2.99:1 there. This takes the dark ramp's
|
|
8
|
-
* seventh step, which clears the gate with dark ink on the filled state.
|
|
9
|
-
*
|
|
10
|
-
* @public
|
|
11
|
-
*/
|
|
12
|
-
export declare const antDark: import("../index.js").Theme;
|
|
1
|
+
import type { Theme } from '../utils/theme.js';
|
|
2
|
+
/** Dark counterpart of Ant Design's dark surfaces (#141414/#1f1f1f), using the dark-derived blue since the light ramp's blue fails contrast on dark backgrounds. @public */
|
|
3
|
+
export declare const antDark: Theme;
|
package/dist/themes/AntDark.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{
|
|
1
|
+
import{antLight as e}from"./AntLight.js";import{createTheme as r}from"./DefaultTheme.js";var f=r("ant-dark",{mode:"dark",colors:{primary:{50:"#f3f9fe",100:"#e4f1fc",200:"#c5e1f8",300:"#9ecdf4",400:"#7abaef",500:"#5baaec",600:"#3c9ae8",700:"#327dbd",800:"#2a669a",900:"#23527c",950:"#18324c"},neutral:{200:"#303030",300:"#424242",800:"#1f1f1f",900:"#141414",950:"#0a0a0a"},semantic:{background:"#141414",surface:"#1f1f1f",surfaceHover:"#262626",overlay:"rgb(0 0 0 / 0.65)",text:"#d9d9d9",textMuted:"#8c8c8c",textInverted:"#141414",border:"#303030",borderStrong:"#6b6b6b",focusRing:"#4096ff"}},shadow:{color:"0 0 0",strength:"4.7"}},e);export{f as antDark};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var c=Object.defineProperty;var t=Object.getOwnPropertyDescriptor;var b=Object.getOwnPropertyNames;var o=Object.prototype.hasOwnProperty;var n=(e,f)=>{for(var d in f)c(e,d,{get:f[d],enumerable:!0})},s=(e,f,d,r)=>{if(f&&typeof f=="object"||typeof f=="function")for(let a of b(f))!o.call(e,a)&&a!==d&&c(e,a,{get:()=>f[a],enumerable:!(r=t(f,a))||r.enumerable});return e};var i=e=>s(c({},"__esModule",{value:!0}),e);var m={};n(m,{antLight:()=>g});module.exports=i(m);var g={name:"ant-daybreak",mode:"light",colors:{primary:{50:"#e6f4ff",100:"#bae0ff",200:"#91caff",300:"#69b1ff",400:"#4096ff",500:"#1677ff",600:"#0958d9",700:"#003eb3",800:"#002c8c",900:"#001d66",950:"#001141"},neutral:{50:"#f8fafc",100:"#f1f5f9",200:"#e2e8f0",300:"#cbd5e1",400:"#94a3b8",500:"#64748b",600:"#475569",700:"#334155",800:"#1e293b",900:"#0f172a",950:"#020617"},success:{50:"#f6ffed",100:"#d9f7be",200:"#b7eb8f",300:"#95de64",400:"#73d13d",500:"#52c41a",600:"#389e0d",700:"#237804",800:"#135200",900:"#092b00",950:"#051f00"},warning:{50:"#fffbe6",100:"#fff1b8",200:"#ffe58f",300:"#ffd666",400:"#ffc53d",500:"#faad14",600:"#c88006",700:"#ad6800",800:"#874d00",900:"#613400",950:"#422400"},danger:{50:"#fff1f0",100:"#ffccc7",200:"#ffa39e",300:"#ff7875",400:"#ff4d4f",500:"#f5222d",600:"#cf1322",700:"#a8071a",800:"#820014",900:"#5c0011",950:"#3d000b"},semantic:{background:"#ffffff",surface:"#fafafa",surfaceHover:"#f5f5f5",overlay:"rgb(0 0 0 / 0.45)",text:"#1f1f1f",textMuted:"#737373",textInverted:"#ffffff",border:"#d9d9d9",borderStrong:"#919191",focusRing:"#1677ff"}},shadow:{color:"2 6 23",strength:"1"},motion:{easing:"cubic-bezier(0.645, 0.045, 0.355, 1)"}};0&&(module.exports={antLight});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var f={name:"ant-daybreak",mode:"light",colors:{primary:{50:"#e6f4ff",100:"#bae0ff",200:"#91caff",300:"#69b1ff",400:"#4096ff",500:"#1677ff",600:"#0958d9",700:"#003eb3",800:"#002c8c",900:"#001d66",950:"#001141"},neutral:{50:"#f8fafc",100:"#f1f5f9",200:"#e2e8f0",300:"#cbd5e1",400:"#94a3b8",500:"#64748b",600:"#475569",700:"#334155",800:"#1e293b",900:"#0f172a",950:"#020617"},success:{50:"#f6ffed",100:"#d9f7be",200:"#b7eb8f",300:"#95de64",400:"#73d13d",500:"#52c41a",600:"#389e0d",700:"#237804",800:"#135200",900:"#092b00",950:"#051f00"},warning:{50:"#fffbe6",100:"#fff1b8",200:"#ffe58f",300:"#ffd666",400:"#ffc53d",500:"#faad14",600:"#
|
|
1
|
+
var f={name:"ant-daybreak",mode:"light",colors:{primary:{50:"#e6f4ff",100:"#bae0ff",200:"#91caff",300:"#69b1ff",400:"#4096ff",500:"#1677ff",600:"#0958d9",700:"#003eb3",800:"#002c8c",900:"#001d66",950:"#001141"},neutral:{50:"#f8fafc",100:"#f1f5f9",200:"#e2e8f0",300:"#cbd5e1",400:"#94a3b8",500:"#64748b",600:"#475569",700:"#334155",800:"#1e293b",900:"#0f172a",950:"#020617"},success:{50:"#f6ffed",100:"#d9f7be",200:"#b7eb8f",300:"#95de64",400:"#73d13d",500:"#52c41a",600:"#389e0d",700:"#237804",800:"#135200",900:"#092b00",950:"#051f00"},warning:{50:"#fffbe6",100:"#fff1b8",200:"#ffe58f",300:"#ffd666",400:"#ffc53d",500:"#faad14",600:"#c88006",700:"#ad6800",800:"#874d00",900:"#613400",950:"#422400"},danger:{50:"#fff1f0",100:"#ffccc7",200:"#ffa39e",300:"#ff7875",400:"#ff4d4f",500:"#f5222d",600:"#cf1322",700:"#a8071a",800:"#820014",900:"#5c0011",950:"#3d000b"},semantic:{background:"#ffffff",surface:"#fafafa",surfaceHover:"#f5f5f5",overlay:"rgb(0 0 0 / 0.45)",text:"#1f1f1f",textMuted:"#737373",textInverted:"#ffffff",border:"#d9d9d9",borderStrong:"#919191",focusRing:"#1677ff"}},shadow:{color:"2 6 23",strength:"1"},motion:{easing:"cubic-bezier(0.645, 0.045, 0.355, 1)"}};export{f as antLight};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var a=Object.defineProperty;var r=Object.getOwnPropertyDescriptor;var o=Object.getOwnPropertyNames;var b=Object.prototype.hasOwnProperty;var n=(f,e)=>{for(var d in e)a(f,d,{get:e[d],enumerable:!0})},s=(f,e,d,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let c of o(e))!b.call(f,c)&&c!==d&&a(f,c,{get:()=>e[c],enumerable:!(t=r(e,c))||t.enumerable});return f};var u=f=>s(a({},"__esModule",{value:!0}),f);var m={};n(m,{catppuccinLatte:()=>i});module.exports=u(m);var i={name:"catppuccin-latte",mode:"light",colors:{primary:{50:"#eef2fe",100:"#dde6fd",200:"#c1d2fb",300:"#96b4f9",400:"#648df7",500:"#3a70f6",600:"#1e66f5",700:"#1652cd",800:"#1543a4",900:"#163a82",950:"#12254f"},neutral:{50:"#f4f6fa",100:"#eff1f5",200:"#e6e9ef",300:"#ccd0da",400:"#acb0be",500:"#9ca0b0",600:"#7c7f93",700:"#6c6f85",800:"#5c5f77",900:"#4c4f69",950:"#3a3d52"},success:{50:"#f1faee",100:"#e0f4d9",200:"#c3e8b6",300:"#9cd688",400:"#6fbe55",500:"#4fae38",600:"#
|
|
1
|
+
"use strict";var a=Object.defineProperty;var r=Object.getOwnPropertyDescriptor;var o=Object.getOwnPropertyNames;var b=Object.prototype.hasOwnProperty;var n=(f,e)=>{for(var d in e)a(f,d,{get:e[d],enumerable:!0})},s=(f,e,d,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let c of o(e))!b.call(f,c)&&c!==d&&a(f,c,{get:()=>e[c],enumerable:!(t=r(e,c))||t.enumerable});return f};var u=f=>s(a({},"__esModule",{value:!0}),f);var m={};n(m,{catppuccinLatte:()=>i});module.exports=u(m);var i={name:"catppuccin-latte",mode:"light",colors:{primary:{50:"#eef2fe",100:"#dde6fd",200:"#c1d2fb",300:"#96b4f9",400:"#648df7",500:"#3a70f6",600:"#1e66f5",700:"#1652cd",800:"#1543a4",900:"#163a82",950:"#12254f"},neutral:{50:"#f4f6fa",100:"#eff1f5",200:"#e6e9ef",300:"#ccd0da",400:"#acb0be",500:"#9ca0b0",600:"#7c7f93",700:"#6c6f85",800:"#5c5f77",900:"#4c4f69",950:"#3a3d52"},success:{50:"#f1faee",100:"#e0f4d9",200:"#c3e8b6",300:"#9cd688",400:"#6fbe55",500:"#4fae38",600:"#3f9e2a",700:"#357f25",800:"#2d6521",900:"#27531f",950:"#112d0c"},warning:{50:"#fdf7ec",100:"#f9ecd3",200:"#f3d7a5",300:"#ecbd6e",400:"#e5a340",500:"#df8e1d",600:"#c67916",700:"#a45e15",800:"#854a17",900:"#6d3d16",950:"#3e1f09"},danger:{50:"#fef1f4",100:"#fde0e7",200:"#fbc6d3",300:"#f79cb1",400:"#f16587",500:"#e63862",600:"#d20f39",700:"#b10d33",800:"#940e31",900:"#7f102f",950:"#470415"},semantic:{background:"#eff1f5",surface:"#e6e9ef",surfaceHover:"#dce0e8",overlay:"rgb(76 79 105 / 0.4)",text:"#4c4f69",textMuted:"#65687d",textInverted:"#ffffff",border:"#ccd0da",borderStrong:"#7c849c",focusRing:"#1e66f5"}},shadow:{color:"76 79 105",strength:"1.3"}};0&&(module.exports={catppuccinLatte});
|
|
@@ -1,9 +1,3 @@
|
|
|
1
1
|
import type { Theme } from '../utils/theme.cjs';
|
|
2
|
-
/**
|
|
3
|
-
* Catppuccin Latte inspired light theme: warm off-white surfaces, saturated
|
|
4
|
-
* blue actions, and the Latte green/yellow/red status hues.
|
|
5
|
-
* Palette source: catppuccin/catppuccin (MIT).
|
|
6
|
-
*
|
|
7
|
-
* @public
|
|
8
|
-
*/
|
|
2
|
+
/** Catppuccin Latte inspired light theme: warm off-white surfaces, saturated blue actions, Latte status hues. Palette source: catppuccin/catppuccin (MIT). @public */
|
|
9
3
|
export declare const catppuccinLatte: Theme;
|
|
@@ -1,9 +1,3 @@
|
|
|
1
1
|
import type { Theme } from '../utils/theme.js';
|
|
2
|
-
/**
|
|
3
|
-
* Catppuccin Latte inspired light theme: warm off-white surfaces, saturated
|
|
4
|
-
* blue actions, and the Latte green/yellow/red status hues.
|
|
5
|
-
* Palette source: catppuccin/catppuccin (MIT).
|
|
6
|
-
*
|
|
7
|
-
* @public
|
|
8
|
-
*/
|
|
2
|
+
/** Catppuccin Latte inspired light theme: warm off-white surfaces, saturated blue actions, Latte status hues. Palette source: catppuccin/catppuccin (MIT). @public */
|
|
9
3
|
export declare const catppuccinLatte: Theme;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var e={name:"catppuccin-latte",mode:"light",colors:{primary:{50:"#eef2fe",100:"#dde6fd",200:"#c1d2fb",300:"#96b4f9",400:"#648df7",500:"#3a70f6",600:"#1e66f5",700:"#1652cd",800:"#1543a4",900:"#163a82",950:"#12254f"},neutral:{50:"#f4f6fa",100:"#eff1f5",200:"#e6e9ef",300:"#ccd0da",400:"#acb0be",500:"#9ca0b0",600:"#7c7f93",700:"#6c6f85",800:"#5c5f77",900:"#4c4f69",950:"#3a3d52"},success:{50:"#f1faee",100:"#e0f4d9",200:"#c3e8b6",300:"#9cd688",400:"#6fbe55",500:"#4fae38",600:"#
|
|
1
|
+
var e={name:"catppuccin-latte",mode:"light",colors:{primary:{50:"#eef2fe",100:"#dde6fd",200:"#c1d2fb",300:"#96b4f9",400:"#648df7",500:"#3a70f6",600:"#1e66f5",700:"#1652cd",800:"#1543a4",900:"#163a82",950:"#12254f"},neutral:{50:"#f4f6fa",100:"#eff1f5",200:"#e6e9ef",300:"#ccd0da",400:"#acb0be",500:"#9ca0b0",600:"#7c7f93",700:"#6c6f85",800:"#5c5f77",900:"#4c4f69",950:"#3a3d52"},success:{50:"#f1faee",100:"#e0f4d9",200:"#c3e8b6",300:"#9cd688",400:"#6fbe55",500:"#4fae38",600:"#3f9e2a",700:"#357f25",800:"#2d6521",900:"#27531f",950:"#112d0c"},warning:{50:"#fdf7ec",100:"#f9ecd3",200:"#f3d7a5",300:"#ecbd6e",400:"#e5a340",500:"#df8e1d",600:"#c67916",700:"#a45e15",800:"#854a17",900:"#6d3d16",950:"#3e1f09"},danger:{50:"#fef1f4",100:"#fde0e7",200:"#fbc6d3",300:"#f79cb1",400:"#f16587",500:"#e63862",600:"#d20f39",700:"#b10d33",800:"#940e31",900:"#7f102f",950:"#470415"},semantic:{background:"#eff1f5",surface:"#e6e9ef",surfaceHover:"#dce0e8",overlay:"rgb(76 79 105 / 0.4)",text:"#4c4f69",textMuted:"#65687d",textInverted:"#ffffff",border:"#ccd0da",borderStrong:"#7c849c",focusRing:"#1e66f5"}},shadow:{color:"76 79 105",strength:"1.3"}};export{e as catppuccinLatte};
|