@hewnui/themes 0.0.0-stage → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +33 -2
- package/dist/authoring/css-vars.d.ts +10 -0
- package/dist/authoring/css-vars.js +83 -0
- package/dist/authoring/derive.d.ts +9 -0
- package/dist/authoring/derive.js +79 -0
- package/dist/authoring/export-css.d.ts +8 -0
- package/dist/authoring/export-css.js +60 -0
- package/dist/authoring/export-design-md.d.ts +5 -0
- package/dist/authoring/export-design-md.js +113 -0
- package/dist/authoring/export-dtcg.d.ts +6 -0
- package/dist/authoring/export-dtcg.js +85 -0
- package/dist/authoring/export-figma.d.ts +27 -0
- package/dist/authoring/export-figma.js +76 -0
- package/dist/authoring/export-formats.d.ts +27 -0
- package/dist/authoring/export-formats.js +62 -0
- package/dist/authoring/export-skill.d.ts +5 -0
- package/dist/authoring/export-skill.js +75 -0
- package/dist/authoring/export-sticker.d.ts +6 -0
- package/dist/authoring/export-sticker.js +54 -0
- package/dist/authoring/export-style-dictionary.d.ts +3 -0
- package/dist/authoring/export-style-dictionary.js +52 -0
- package/dist/authoring/figma-kit.d.ts +16 -0
- package/dist/authoring/figma-kit.js +41 -0
- package/dist/authoring/index.d.ts +21 -0
- package/dist/authoring/index.js +18 -0
- package/dist/authoring/oklch.d.ts +11 -0
- package/dist/authoring/oklch.js +116 -0
- package/dist/authoring/override-map.d.ts +9 -0
- package/dist/authoring/override-map.js +150 -0
- package/dist/authoring/pack-def.d.ts +7 -0
- package/dist/authoring/pack-def.js +3 -0
- package/dist/authoring/pack-meta.d.ts +10 -0
- package/dist/authoring/pack-meta.js +58 -0
- package/dist/authoring/packs-dual.d.ts +129 -0
- package/dist/authoring/packs-dual.js +130 -0
- package/dist/authoring/packs-single.d.ts +87 -0
- package/dist/authoring/packs-single.js +88 -0
- package/dist/authoring/packs.d.ts +8 -0
- package/dist/authoring/packs.js +26 -0
- package/dist/authoring/pro-apply.d.ts +8 -0
- package/dist/authoring/pro-apply.js +107 -0
- package/dist/authoring/propose.d.ts +21 -0
- package/dist/authoring/propose.js +162 -0
- package/dist/authoring/ramps.d.ts +13 -0
- package/dist/authoring/ramps.js +40 -0
- package/dist/authoring/status-ramps.d.ts +13 -0
- package/dist/authoring/status-ramps.js +76 -0
- package/dist/authoring/token-entries.d.ts +10 -0
- package/dist/authoring/token-entries.js +52 -0
- package/dist/authoring/types.d.ts +110 -0
- package/dist/authoring/types.js +11 -0
- package/exports/clay/DESIGN.md +138 -0
- package/exports/clay/SKILL.md +94 -0
- package/exports/clay/theme.css +37 -0
- package/exports/clay/tokens.dtcg.json +200 -0
- package/exports/dune/DESIGN.md +138 -0
- package/exports/dune/SKILL.md +94 -0
- package/exports/dune/theme.css +37 -0
- package/exports/dune/tokens.dtcg.json +200 -0
- package/exports/ember/DESIGN.md +138 -0
- package/exports/ember/SKILL.md +94 -0
- package/exports/ember/theme.css +37 -0
- package/exports/ember/tokens.dtcg.json +200 -0
- package/exports/forest/DESIGN.md +138 -0
- package/exports/forest/SKILL.md +94 -0
- package/exports/forest/theme.css +67 -0
- package/exports/forest/tokens.dtcg.json +348 -0
- package/exports/graphite/DESIGN.md +138 -0
- package/exports/graphite/SKILL.md +94 -0
- package/exports/graphite/theme.css +67 -0
- package/exports/graphite/tokens.dtcg.json +348 -0
- package/exports/index.json +45 -0
- package/exports/tide/DESIGN.md +138 -0
- package/exports/tide/SKILL.md +94 -0
- package/exports/tide/theme.css +67 -0
- package/exports/tide/tokens.dtcg.json +348 -0
- package/figma/README.md +16 -0
- package/figma/hewn.tokens.json +1308 -0
- package/figma/sticker-sheet.svg +93 -0
- package/package.json +98 -4
- package/src/authoring/css-vars.ts +92 -0
- package/src/authoring/derive.ts +106 -0
- package/src/authoring/export-css.ts +86 -0
- package/src/authoring/export-design-md.ts +134 -0
- package/src/authoring/export-dtcg.ts +116 -0
- package/src/authoring/export-figma.ts +109 -0
- package/src/authoring/export-formats.ts +101 -0
- package/src/authoring/export-skill.ts +93 -0
- package/src/authoring/export-sticker.ts +60 -0
- package/src/authoring/export-style-dictionary.ts +67 -0
- package/src/authoring/figma-kit.ts +60 -0
- package/src/authoring/index.ts +61 -0
- package/src/authoring/oklch.ts +137 -0
- package/src/authoring/override-map.ts +191 -0
- package/src/authoring/pack-def.ts +11 -0
- package/src/authoring/pack-meta.ts +66 -0
- package/src/authoring/packs-dual.ts +131 -0
- package/src/authoring/packs-single.ts +89 -0
- package/src/authoring/packs.ts +43 -0
- package/src/authoring/pro-apply.ts +156 -0
- package/src/authoring/propose.ts +181 -0
- package/src/authoring/ramps.ts +62 -0
- package/src/authoring/status-ramps.ts +98 -0
- package/src/authoring/token-entries.ts +59 -0
- package/src/authoring/types.ts +133 -0
- package/src/glass-buttons.css +46 -0
- package/src/glass.css +266 -0
- package/src/motion.css +60 -0
- package/src/packs/clay.css +45 -0
- package/src/packs/dune.css +45 -0
- package/src/packs/ember.css +45 -0
- package/src/packs/forest.css +80 -0
- package/src/packs/graphite.css +79 -0
- package/src/packs/tide.css +79 -0
- package/src/radius.css +25 -0
- package/src/tokens.css +104 -0
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
[data-theme="tide"][data-mode="light"] {
|
|
2
|
+
color-scheme: light;
|
|
3
|
+
--kp-background: oklch(0.97 0.01 220);
|
|
4
|
+
--kp-foreground: oklch(0.24 0.03 230);
|
|
5
|
+
--kp-surface: oklch(0.995 0.004 220);
|
|
6
|
+
--kp-surface-raised: oklch(1 0 0);
|
|
7
|
+
--kp-muted: oklch(0.93 0.015 220);
|
|
8
|
+
--kp-muted-foreground: oklch(0.48 0.03 230);
|
|
9
|
+
--kp-accent: oklch(0.52 0.07 210);
|
|
10
|
+
--kp-accent-foreground: oklch(0.98 0.01 210);
|
|
11
|
+
--kp-border: oklch(0.35 0.03 230 / 14%);
|
|
12
|
+
--kp-ring: oklch(0.58 0.08 210);
|
|
13
|
+
--kp-danger: oklch(0.56 0.17 27);
|
|
14
|
+
--kp-danger-foreground: oklch(0.985 0.01 27);
|
|
15
|
+
--kp-danger-subtle: oklch(0.94 0.035 27);
|
|
16
|
+
--kp-danger-border: oklch(0.56 0.12 27 / 40%);
|
|
17
|
+
--kp-success: oklch(0.55 0.15 165);
|
|
18
|
+
--kp-success-foreground: oklch(0.985 0.01 165);
|
|
19
|
+
--kp-success-subtle: oklch(0.94 0.035 165);
|
|
20
|
+
--kp-success-border: oklch(0.55 0.12 165 / 40%);
|
|
21
|
+
--kp-warning: oklch(0.75 0.14 75);
|
|
22
|
+
--kp-warning-foreground: oklch(0.25 0.05 75);
|
|
23
|
+
--kp-warning-subtle: oklch(0.94 0.04 75);
|
|
24
|
+
--kp-warning-border: oklch(0.72 0.12 75 / 40%);
|
|
25
|
+
--kp-info: oklch(0.52 0.11 230);
|
|
26
|
+
--kp-info-foreground: oklch(0.985 0.01 230);
|
|
27
|
+
--kp-info-subtle: oklch(0.94 0.03 230);
|
|
28
|
+
--kp-info-border: oklch(0.52 0.09 230 / 40%);
|
|
29
|
+
--kp-glass-tint: oklch(0.72 0.08 210 / 28%);
|
|
30
|
+
--kp-radius-sm: 0.45rem;
|
|
31
|
+
--kp-radius-md: 0.7rem;
|
|
32
|
+
--kp-radius-lg: 0.95rem;
|
|
33
|
+
--kp-radius-panel: 0.95rem;
|
|
34
|
+
--kp-density: 1;
|
|
35
|
+
--kp-motion-duration: 240ms;
|
|
36
|
+
--kp-motion-stiffness: 380;
|
|
37
|
+
--kp-motion-damping: 30;
|
|
38
|
+
--kp-shadow-surface:
|
|
39
|
+
0 1px 2px oklch(0.22 0.03 230 / 5%),
|
|
40
|
+
0 18px 42px -28px oklch(0.28 0.04 220 / 28%);
|
|
41
|
+
--kp-font-sans: var(--font-plex-sans, "IBM Plex Sans"), ui-sans-serif, system-ui,
|
|
42
|
+
sans-serif;
|
|
43
|
+
--kp-font-mono: var(--font-plex-mono, "IBM Plex Mono"), ui-monospace, monospace;
|
|
44
|
+
--kp-font-display: var(--font-space-grotesk, "Space Grotesk"), var(--kp-font-sans);
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
[data-theme="tide"][data-mode="dark"] {
|
|
48
|
+
color-scheme: dark;
|
|
49
|
+
--kp-background: oklch(0.18 0.02 230);
|
|
50
|
+
--kp-foreground: oklch(0.92 0.015 220);
|
|
51
|
+
--kp-surface: oklch(0.22 0.025 230);
|
|
52
|
+
--kp-surface-raised: oklch(0.26 0.028 230);
|
|
53
|
+
--kp-muted: oklch(0.28 0.025 230);
|
|
54
|
+
--kp-muted-foreground: oklch(0.72 0.025 220);
|
|
55
|
+
--kp-accent: oklch(0.72 0.08 205);
|
|
56
|
+
--kp-accent-foreground: oklch(0.985 0.01 220);
|
|
57
|
+
--kp-border: oklch(0.86 0.02 220 / 13%);
|
|
58
|
+
--kp-ring: oklch(0.72 0.08 205);
|
|
59
|
+
--kp-danger: oklch(0.68 0.16 27);
|
|
60
|
+
--kp-danger-foreground: oklch(0.985 0.01 27);
|
|
61
|
+
--kp-danger-subtle: oklch(0.32 0.05 27);
|
|
62
|
+
--kp-danger-border: oklch(0.72 0.1 27 / 40%);
|
|
63
|
+
--kp-success: oklch(0.71 0.14 165);
|
|
64
|
+
--kp-success-foreground: oklch(0.985 0.01 165);
|
|
65
|
+
--kp-success-subtle: oklch(0.32 0.045 165);
|
|
66
|
+
--kp-success-border: oklch(0.72 0.1 165 / 40%);
|
|
67
|
+
--kp-warning: oklch(0.78 0.12 75);
|
|
68
|
+
--kp-warning-foreground: oklch(0.22 0.04 75);
|
|
69
|
+
--kp-warning-subtle: oklch(0.34 0.04 75);
|
|
70
|
+
--kp-warning-border: oklch(0.78 0.1 75 / 40%);
|
|
71
|
+
--kp-info: oklch(0.72 0.1 230);
|
|
72
|
+
--kp-info-foreground: oklch(0.985 0.01 230);
|
|
73
|
+
--kp-info-subtle: oklch(0.32 0.035 230);
|
|
74
|
+
--kp-info-border: oklch(0.72 0.08 230 / 40%);
|
|
75
|
+
--kp-glass-tint: oklch(0.6 0.09 205 / 24%);
|
|
76
|
+
--kp-shadow-surface:
|
|
77
|
+
0 1px 2px oklch(0.08 0.02 230 / 35%),
|
|
78
|
+
0 24px 48px -30px oklch(0.08 0.03 230 / 84%);
|
|
79
|
+
}
|
package/src/radius.css
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/* Must beat theme-pack selectors: [data-theme][data-mode]
|
|
2
|
+
Controls use sm/md (may be fully pill). Panels use --kp-radius-panel (never 9999). */
|
|
3
|
+
|
|
4
|
+
html[data-theme][data-mode][data-radius="sharp"] {
|
|
5
|
+
--kp-radius-sm: 0.125rem;
|
|
6
|
+
--kp-radius-md: 0.2rem;
|
|
7
|
+
--kp-radius-lg: 0.3rem;
|
|
8
|
+
--kp-radius-panel: 0.25rem;
|
|
9
|
+
}
|
|
10
|
+
|
|
11
|
+
/* soft = theme pack values (no override) */
|
|
12
|
+
|
|
13
|
+
html[data-theme][data-mode][data-radius="rounded"] {
|
|
14
|
+
--kp-radius-sm: 0.85rem;
|
|
15
|
+
--kp-radius-md: 1.15rem;
|
|
16
|
+
--kp-radius-lg: 1.5rem;
|
|
17
|
+
--kp-radius-panel: 1.25rem;
|
|
18
|
+
}
|
|
19
|
+
|
|
20
|
+
html[data-theme][data-mode][data-radius="pill"] {
|
|
21
|
+
--kp-radius-sm: 9999px;
|
|
22
|
+
--kp-radius-md: 9999px;
|
|
23
|
+
--kp-radius-lg: 1.5rem;
|
|
24
|
+
--kp-radius-panel: 1.15rem;
|
|
25
|
+
}
|
package/src/tokens.css
ADDED
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
@import "./motion.css";
|
|
2
|
+
@import "./packs/forest.css";
|
|
3
|
+
@import "./packs/tide.css";
|
|
4
|
+
@import "./packs/graphite.css";
|
|
5
|
+
@import "./packs/dune.css";
|
|
6
|
+
@import "./packs/clay.css";
|
|
7
|
+
@import "./packs/ember.css";
|
|
8
|
+
|
|
9
|
+
@theme inline {
|
|
10
|
+
--color-background: var(--kp-background);
|
|
11
|
+
--color-foreground: var(--kp-foreground);
|
|
12
|
+
--color-surface: var(--kp-surface);
|
|
13
|
+
--color-surface-raised: var(--kp-surface-raised);
|
|
14
|
+
--color-muted: var(--kp-muted);
|
|
15
|
+
--color-muted-foreground: var(--kp-muted-foreground);
|
|
16
|
+
--color-accent: var(--kp-accent);
|
|
17
|
+
--color-accent-foreground: var(--kp-accent-foreground);
|
|
18
|
+
--color-border: var(--kp-border);
|
|
19
|
+
--color-ring: var(--kp-ring);
|
|
20
|
+
--color-danger: var(--kp-danger);
|
|
21
|
+
--color-danger-foreground: var(--kp-danger-foreground);
|
|
22
|
+
--color-danger-subtle: var(--kp-danger-subtle);
|
|
23
|
+
--color-danger-border: var(--kp-danger-border);
|
|
24
|
+
--color-success: var(--kp-success);
|
|
25
|
+
--color-success-foreground: var(--kp-success-foreground);
|
|
26
|
+
--color-success-subtle: var(--kp-success-subtle);
|
|
27
|
+
--color-success-border: var(--kp-success-border);
|
|
28
|
+
--color-warning: var(--kp-warning);
|
|
29
|
+
--color-warning-foreground: var(--kp-warning-foreground);
|
|
30
|
+
--color-warning-subtle: var(--kp-warning-subtle);
|
|
31
|
+
--color-warning-border: var(--kp-warning-border);
|
|
32
|
+
--color-info: var(--kp-info);
|
|
33
|
+
--color-info-foreground: var(--kp-info-foreground);
|
|
34
|
+
--color-info-subtle: var(--kp-info-subtle);
|
|
35
|
+
--color-info-border: var(--kp-info-border);
|
|
36
|
+
--font-sans: var(--kp-font-sans);
|
|
37
|
+
--font-mono: var(--kp-font-mono);
|
|
38
|
+
--font-display: var(--kp-font-display);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
html {
|
|
42
|
+
background: var(--kp-background);
|
|
43
|
+
color: var(--kp-foreground);
|
|
44
|
+
font-family: var(--kp-font-sans);
|
|
45
|
+
-webkit-font-smoothing: antialiased;
|
|
46
|
+
-moz-osx-font-smoothing: grayscale;
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
@keyframes kp-spin {
|
|
50
|
+
to {
|
|
51
|
+
transform: rotate(360deg);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
@keyframes kp-progress {
|
|
56
|
+
0% {
|
|
57
|
+
transform: translateX(-120%);
|
|
58
|
+
}
|
|
59
|
+
100% {
|
|
60
|
+
transform: translateX(320%);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
.kp-spinner {
|
|
65
|
+
display: inline-block;
|
|
66
|
+
width: 1rem;
|
|
67
|
+
height: 1rem;
|
|
68
|
+
flex-shrink: 0;
|
|
69
|
+
box-sizing: border-box;
|
|
70
|
+
border-radius: 9999px;
|
|
71
|
+
border-style: solid;
|
|
72
|
+
border-width: 2px;
|
|
73
|
+
border-color: transparent;
|
|
74
|
+
border-top-color: currentColor;
|
|
75
|
+
border-right-color: color-mix(in oklch, currentColor 35%, transparent);
|
|
76
|
+
animation: kp-spin 0.7s linear infinite;
|
|
77
|
+
will-change: transform;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
.kp-progress-indeterminate {
|
|
81
|
+
animation: kp-progress 1.2s ease-in-out infinite;
|
|
82
|
+
will-change: transform;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
@media (prefers-reduced-motion: reduce) {
|
|
86
|
+
.kp-spinner {
|
|
87
|
+
animation: none;
|
|
88
|
+
opacity: 0.72;
|
|
89
|
+
border-color: color-mix(in oklch, currentColor 35%, transparent);
|
|
90
|
+
border-top-color: currentColor;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
.kp-progress-indeterminate {
|
|
94
|
+
animation: none;
|
|
95
|
+
opacity: 0.7;
|
|
96
|
+
left: 33%;
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
[data-kp-control="skeleton"] {
|
|
100
|
+
animation: none;
|
|
101
|
+
opacity: 0.85;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
|