@ponchia/ui 0.4.0 → 0.5.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/CHANGELOG.md +352 -12
- package/MIGRATIONS.json +92 -0
- package/README.md +27 -17
- package/annotations/index.d.ts +280 -0
- package/annotations/index.js +522 -0
- package/behaviors/carousel.js +197 -0
- package/behaviors/combobox.js +195 -0
- package/behaviors/command.js +187 -0
- package/behaviors/connectors.js +96 -0
- package/behaviors/crosshair.js +58 -0
- package/behaviors/dialog.js +73 -0
- package/behaviors/disclosure.js +25 -0
- package/behaviors/dismissible.js +24 -0
- package/behaviors/forms.js +158 -0
- package/behaviors/glyph.js +109 -0
- package/behaviors/index.d.ts +82 -1
- package/behaviors/index.js +18 -1336
- package/behaviors/internal.js +50 -0
- package/behaviors/legend.js +46 -0
- package/behaviors/menu.js +46 -0
- package/behaviors/popover.js +108 -0
- package/behaviors/spotlight.js +53 -0
- package/behaviors/table.js +109 -0
- package/behaviors/tabs.js +103 -0
- package/behaviors/theme.js +82 -0
- package/behaviors/toast.js +152 -0
- package/classes/index.d.ts +318 -0
- package/classes/index.js +352 -0
- package/classes/vscode.css-custom-data.json +18 -14
- package/connectors/index.d.ts +71 -0
- package/connectors/index.js +179 -0
- package/css/analytical.css +21 -0
- package/css/annotations.css +292 -0
- package/css/command.css +97 -0
- package/css/connectors.css +93 -0
- package/css/crosshair.css +100 -0
- package/css/disclosure.css +29 -0
- package/css/dots.css +2 -0
- package/css/feedback.css +104 -0
- package/css/fonts.css +11 -7
- package/css/generated.css +117 -0
- package/css/legend.css +268 -0
- package/css/marks.css +144 -0
- package/css/motion.css +88 -0
- package/css/overlay.css +52 -1
- package/css/primitives.css +18 -0
- package/css/report.css +363 -0
- package/css/selection.css +46 -0
- package/css/sources.css +179 -0
- package/css/spotlight.css +104 -0
- package/css/state.css +121 -0
- package/css/tokens.css +78 -60
- package/css/workbench.css +83 -0
- package/dist/bronto.css +1 -1
- package/dist/css/analytical.css +1 -0
- package/dist/css/annotations.css +1 -0
- package/dist/css/command.css +1 -0
- package/dist/css/connectors.css +1 -0
- package/dist/css/crosshair.css +1 -0
- package/dist/css/disclosure.css +1 -1
- package/dist/css/dots.css +1 -1
- package/dist/css/feedback.css +1 -1
- package/dist/css/fonts.css +1 -1
- package/dist/css/generated.css +1 -0
- package/dist/css/legend.css +1 -0
- package/dist/css/marks.css +1 -0
- package/dist/css/motion.css +1 -1
- package/dist/css/overlay.css +1 -1
- package/dist/css/primitives.css +1 -1
- package/dist/css/report.css +1 -0
- package/dist/css/selection.css +1 -0
- package/dist/css/sources.css +1 -0
- package/dist/css/spotlight.css +1 -0
- package/dist/css/state.css +1 -0
- package/dist/css/tokens.css +1 -1
- package/dist/css/workbench.css +1 -0
- package/docs/adr/0001-color-system.md +26 -27
- package/docs/adr/0002-scope-and-2026-baseline.md +104 -0
- package/docs/adr/0003-theme-model.md +97 -0
- package/docs/annotations.md +345 -0
- package/docs/architecture.md +202 -0
- package/docs/command.md +95 -0
- package/docs/connectors.md +91 -0
- package/docs/contrast.md +42 -42
- package/docs/crosshair.md +63 -0
- package/docs/generated.md +91 -0
- package/docs/legends.md +168 -0
- package/docs/marks.md +86 -0
- package/docs/reference.md +418 -15
- package/docs/reporting.md +305 -0
- package/docs/selection.md +40 -0
- package/docs/sources.md +110 -0
- package/docs/spotlight.md +78 -0
- package/docs/stability.md +52 -0
- package/docs/state.md +85 -0
- package/docs/theming.md +18 -6
- package/docs/usage.md +43 -3
- package/docs/workbench.md +72 -0
- package/fonts/doto-400.woff2 +0 -0
- package/fonts/doto-500.woff2 +0 -0
- package/fonts/doto-600.woff2 +0 -0
- package/fonts/doto-700.woff2 +0 -0
- package/fonts/doto-800.woff2 +0 -0
- package/fonts/doto-900.woff2 +0 -0
- package/llms.txt +288 -8
- package/package.json +95 -5
- package/qwik/index.d.ts +60 -0
- package/qwik/index.js +149 -0
- package/react/index.d.ts +40 -14
- package/react/index.js +32 -5
- package/solid/index.d.ts +40 -14
- package/solid/index.js +31 -3
- package/tokens/index.d.ts +3 -3
- package/tokens/index.js +25 -19
- package/tokens/index.json +32 -28
- package/tokens/resolved.json +34 -32
- package/tokens/tokens.dtcg.json +22 -14
- package/fonts/doto-400.ttf +0 -0
- package/fonts/doto-500.ttf +0 -0
- package/fonts/doto-600.ttf +0 -0
- package/fonts/doto-700.ttf +0 -0
- package/fonts/doto-800.ttf +0 -0
- package/fonts/doto-900.ttf +0 -0
package/solid/index.js
CHANGED
|
@@ -7,7 +7,8 @@
|
|
|
7
7
|
* `solid-js` is an optional peer dependency.
|
|
8
8
|
*
|
|
9
9
|
* Behaviors delegate from a root (default `document`); call a primitive once in
|
|
10
|
-
* a component that owns the relevant subtree,
|
|
10
|
+
* a component that owns the relevant subtree, and pass a root resolver to scope
|
|
11
|
+
* it when the element is assigned by Solid's ref lifecycle.
|
|
11
12
|
*
|
|
12
13
|
* import { useDialog, useToast } from '@ponchia/ui/solid';
|
|
13
14
|
* function App() {
|
|
@@ -31,14 +32,36 @@ import {
|
|
|
31
32
|
initDialog,
|
|
32
33
|
initCarousel,
|
|
33
34
|
initDotGlyph,
|
|
35
|
+
initLegend,
|
|
36
|
+
initConnectors,
|
|
37
|
+
initSpotlight,
|
|
38
|
+
initCrosshair,
|
|
39
|
+
initCommand,
|
|
34
40
|
toast,
|
|
35
41
|
} from '../behaviors/index.js';
|
|
36
42
|
|
|
43
|
+
function resolveMaybe(v) {
|
|
44
|
+
return typeof v === 'function' ? v() : v;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
function resolveRoot(root) {
|
|
48
|
+
const value = resolveMaybe(root);
|
|
49
|
+
if (value && typeof value === 'object' && 'current' in value) return value.current;
|
|
50
|
+
return value;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
function resolveOpts(opts) {
|
|
54
|
+
const value = resolveMaybe(opts);
|
|
55
|
+
if (!value || typeof value !== 'object') return undefined;
|
|
56
|
+
const root = resolveRoot(value.root);
|
|
57
|
+
return root ? { ...value, root } : { ...value, root: undefined };
|
|
58
|
+
}
|
|
59
|
+
|
|
37
60
|
/** Run a delegated behavior for the component's lifetime (init on mount, its
|
|
38
|
-
* returned cleanup on dispose). */
|
|
61
|
+
* returned cleanup on dispose). Options resolve on mount, after refs exist. */
|
|
39
62
|
export function useBrontoBehavior(init, opts) {
|
|
40
63
|
onMount(() => {
|
|
41
|
-
const cleanup = init(opts);
|
|
64
|
+
const cleanup = init(resolveOpts(opts));
|
|
42
65
|
if (typeof cleanup === 'function') onCleanup(cleanup);
|
|
43
66
|
});
|
|
44
67
|
}
|
|
@@ -55,6 +78,11 @@ export const useTabs = (opts) => useBrontoBehavior(initTabs, opts);
|
|
|
55
78
|
export const useDialog = (opts) => useBrontoBehavior(initDialog, opts);
|
|
56
79
|
export const useCarousel = (opts) => useBrontoBehavior(initCarousel, opts);
|
|
57
80
|
export const useDotGlyph = (opts) => useBrontoBehavior(initDotGlyph, opts);
|
|
81
|
+
export const useLegend = (opts) => useBrontoBehavior(initLegend, opts);
|
|
82
|
+
export const useConnectors = (opts) => useBrontoBehavior(initConnectors, opts);
|
|
83
|
+
export const useSpotlight = (opts) => useBrontoBehavior(initSpotlight, opts);
|
|
84
|
+
export const useCrosshair = (opts) => useBrontoBehavior(initCrosshair, opts);
|
|
85
|
+
export const useCommand = (opts) => useBrontoBehavior(initCommand, opts);
|
|
58
86
|
|
|
59
87
|
/** The `toast()` imperative (no lifecycle of its own). */
|
|
60
88
|
export const useToast = () => toast;
|
package/tokens/index.d.ts
CHANGED
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
export type ThemeName = 'light' | 'dark';
|
|
5
5
|
|
|
6
6
|
export type GlobalTokenName = '--radius-xl' | '--radius-lg' | '--radius-md' | '--radius-sm' | '--radius-pill' | '--space-2xs' | '--space-xs' | '--space-sm' | '--space-md' | '--space-lg' | '--space-xl' | '--space-2xl' | '--mono' | '--sans' | '--dot-font' | '--display' | '--text-2xs' | '--text-xs' | '--text-sm' | '--text-base' | '--text-lg' | '--text-xl' | '--tracking-wide' | '--tracking-wider' | '--ease-standard' | '--ease-spring' | '--ease-out' | '--duration-fast' | '--duration-base' | '--duration-slow' | '--dot-size' | '--dot-gap' | '--z-base' | '--z-raised' | '--z-sticky' | '--z-overlay' | '--z-popover' | '--z-toast' | '--accent-1' | '--accent-2' | '--accent-3' | '--accent-4' | '--accent-5' | '--accent-6' | '--surface-1' | '--surface-2' | '--surface-3' | '--surface-4' | '--surface-5' | '--surface-6' | '--bronto-color-bg' | '--bronto-color-surface' | '--bronto-color-surface-raised' | '--bronto-color-border' | '--bronto-color-border-strong' | '--bronto-color-text' | '--bronto-color-text-muted' | '--bronto-color-action' | '--bronto-color-on-action' | '--bronto-color-focus' | '--bronto-color-success' | '--bronto-color-warning' | '--bronto-color-danger' | '--bronto-color-info' | '--surface' | '--surface-raised' | '--surface-muted' | '--border' | '--border-strong';
|
|
7
|
-
export type LightTokenName = '--bg' | '--bg-elevated' | '--bg-accent' | '--panel' | '--panel-strong' | '--panel-soft' | '--line' | '--line-strong' | '--text' | '--text-soft' | '--text-dim' | '--accent' | '--accent-strong' | '--accent-text' | '--accent-soft' | '--success' | '--success-soft' | '--warning' | '--warning-soft' | '--danger' | '--danger-soft' | '--info' | '--info-soft' | '--code-bg' | '--button-text' | '--field-dot' | '--field-dot-hot' | '--field-dot-accent' | '--focus-ring' | '--shadow' | '--shadow-raised';
|
|
8
|
-
export type DarkTokenName = '--bg' | '--bg-elevated' | '--bg-accent' | '--panel' | '--panel-strong' | '--panel-soft' | '--line' | '--line-strong' | '--text' | '--text-soft' | '--text-dim' | '--accent' | '--accent-strong' | '--accent-text' | '--accent-soft' | '--success' | '--success-soft' | '--warning' | '--warning-soft' | '--danger' | '--danger-soft' | '--info' | '--info-soft' | '--code-bg' | '--button-text' | '--field-dot' | '--field-dot-hot' | '--field-dot-accent' | '--focus-ring' | '--shadow' | '--shadow-raised';
|
|
7
|
+
export type LightTokenName = '--bg' | '--bg-elevated' | '--bg-accent' | '--panel' | '--panel-strong' | '--panel-soft' | '--line' | '--line-strong' | '--text' | '--text-soft' | '--text-dim' | '--accent' | '--accent-ramp-end' | '--accent-strong' | '--accent-text' | '--accent-soft' | '--success' | '--success-soft' | '--warning' | '--warning-soft' | '--danger' | '--danger-soft' | '--info' | '--info-soft' | '--code-bg' | '--button-text' | '--field-dot' | '--field-dot-hot' | '--field-dot-accent' | '--focus-ring' | '--shadow' | '--shadow-raised';
|
|
8
|
+
export type DarkTokenName = '--bg' | '--bg-elevated' | '--bg-accent' | '--panel' | '--panel-strong' | '--panel-soft' | '--line' | '--line-strong' | '--text' | '--text-soft' | '--text-dim' | '--accent' | '--accent-ramp-end' | '--accent-strong' | '--accent-text' | '--accent-soft' | '--success' | '--success-soft' | '--warning' | '--warning-soft' | '--danger' | '--danger-soft' | '--info' | '--info-soft' | '--code-bg' | '--button-text' | '--field-dot' | '--field-dot-hot' | '--field-dot-accent' | '--focus-ring' | '--shadow' | '--shadow-raised';
|
|
9
9
|
|
|
10
10
|
/** Exact mirror of the :root blocks in css/tokens.css (literal keys). */
|
|
11
11
|
export declare const cssVars: {
|
|
@@ -15,7 +15,7 @@ export declare const cssVars: {
|
|
|
15
15
|
};
|
|
16
16
|
|
|
17
17
|
export type ScaleKey = 'radius-xl' | 'radius-lg' | 'radius-md' | 'radius-sm' | 'radius-pill' | 'space-2xs' | 'space-xs' | 'space-sm' | 'space-md' | 'space-lg' | 'space-xl' | 'space-2xl' | 'mono' | 'sans' | 'dot-font' | 'display' | 'text-2xs' | 'text-xs' | 'text-sm' | 'text-base' | 'text-lg' | 'text-xl' | 'tracking-wide' | 'tracking-wider' | 'ease-standard' | 'ease-spring' | 'ease-out' | 'duration-fast' | 'duration-base' | 'duration-slow' | 'dot-size' | 'dot-gap' | 'z-base' | 'z-raised' | 'z-sticky' | 'z-overlay' | 'z-popover' | 'z-toast' | 'accent-1' | 'accent-2' | 'accent-3' | 'accent-4' | 'accent-5' | 'accent-6' | 'surface-1' | 'surface-2' | 'surface-3' | 'surface-4' | 'surface-5' | 'surface-6' | 'bronto-color-bg' | 'bronto-color-surface' | 'bronto-color-surface-raised' | 'bronto-color-border' | 'bronto-color-border-strong' | 'bronto-color-text' | 'bronto-color-text-muted' | 'bronto-color-action' | 'bronto-color-on-action' | 'bronto-color-focus' | 'bronto-color-success' | 'bronto-color-warning' | 'bronto-color-danger' | 'bronto-color-info' | 'surface' | 'surface-raised' | 'surface-muted' | 'border' | 'border-strong';
|
|
18
|
-
export type ColorKey = 'bg' | 'bg-elevated' | 'bg-accent' | 'panel' | 'panel-strong' | 'panel-soft' | 'line' | 'line-strong' | 'text' | 'text-soft' | 'text-dim' | 'accent' | 'accent-strong' | 'accent-text' | 'accent-soft' | 'success' | 'success-soft' | 'warning' | 'warning-soft' | 'danger' | 'danger-soft' | 'info' | 'info-soft' | 'code-bg' | 'button-text' | 'field-dot' | 'field-dot-hot' | 'field-dot-accent' | 'focus-ring' | 'shadow' | 'shadow-raised';
|
|
18
|
+
export type ColorKey = 'bg' | 'bg-elevated' | 'bg-accent' | 'panel' | 'panel-strong' | 'panel-soft' | 'line' | 'line-strong' | 'text' | 'text-soft' | 'text-dim' | 'accent' | 'accent-ramp-end' | 'accent-strong' | 'accent-text' | 'accent-soft' | 'success' | 'success-soft' | 'warning' | 'warning-soft' | 'danger' | 'danger-soft' | 'info' | 'info-soft' | 'code-bg' | 'button-text' | 'field-dot' | 'field-dot-hot' | 'field-dot-accent' | 'focus-ring' | 'shadow' | 'shadow-raised';
|
|
19
19
|
|
|
20
20
|
/** Ergonomic view derived from {@link cssVars} (`--` prefix stripped). */
|
|
21
21
|
export declare const tokens: {
|
package/tokens/index.js
CHANGED
|
@@ -4,16 +4,20 @@
|
|
|
4
4
|
* For consumers that need token values in JS rather than CSS: charting,
|
|
5
5
|
* canvas, inline styles, theme-aware logic, Style Dictionary / Figma sync.
|
|
6
6
|
*
|
|
7
|
-
* `cssVars` is the
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
7
|
+
* `cssVars` is the SINGLE SOURCE of truth for token values — keyed by the
|
|
8
|
+
* real custom-property name, values are the verbatim CSS strings. The four
|
|
9
|
+
* :root palette blocks of css/tokens.css are GENERATED from it
|
|
10
|
+
* (scripts/gen-tokens-css.mjs), so the dark palette is authored once here
|
|
11
|
+
* rather than in three places (the two CSS dark blocks + a JS mirror).
|
|
12
|
+
* scripts/check-tokens.mjs fails CI if css/tokens.css drifts from this model.
|
|
11
13
|
*
|
|
12
14
|
* `tokens` is an ergonomic view derived programmatically from `cssVars`
|
|
13
15
|
* (no second hand-maintained copy, so nothing to keep in sync).
|
|
14
16
|
*/
|
|
15
17
|
|
|
16
|
-
/**
|
|
18
|
+
/** Single source for token values; the css/tokens.css palette blocks are
|
|
19
|
+
* generated from this (scripts/gen-tokens-css.mjs). Edit values here, then run
|
|
20
|
+
* `npm run tokens:css:build`. Do not reshape — the generators consume it literally. */
|
|
17
21
|
export const cssVars = {
|
|
18
22
|
// Global :root — scales, shared with both themes.
|
|
19
23
|
global: {
|
|
@@ -56,10 +60,10 @@ export const cssVars = {
|
|
|
56
60
|
'--z-overlay': '30',
|
|
57
61
|
'--z-popover': '50',
|
|
58
62
|
'--z-toast': '60',
|
|
59
|
-
'--accent-1': 'color-mix(in oklch, var(--accent) 8%, var(--
|
|
60
|
-
'--accent-2': 'color-mix(in oklch, var(--accent) 16%, var(--
|
|
61
|
-
'--accent-3': 'color-mix(in oklch, var(--accent) 32%, var(--
|
|
62
|
-
'--accent-4': 'color-mix(in oklch, var(--accent) 60%, var(--
|
|
63
|
+
'--accent-1': 'color-mix(in oklch, var(--accent) 8%, var(--accent-ramp-end))',
|
|
64
|
+
'--accent-2': 'color-mix(in oklch, var(--accent) 16%, var(--accent-ramp-end))',
|
|
65
|
+
'--accent-3': 'color-mix(in oklch, var(--accent) 32%, var(--accent-ramp-end))',
|
|
66
|
+
'--accent-4': 'color-mix(in oklch, var(--accent) 60%, var(--accent-ramp-end))',
|
|
63
67
|
'--accent-5': 'var(--accent)',
|
|
64
68
|
'--accent-6': 'var(--accent-strong)',
|
|
65
69
|
'--surface-1': 'var(--bg)',
|
|
@@ -102,6 +106,7 @@ export const cssVars = {
|
|
|
102
106
|
'--text-soft': '#353533',
|
|
103
107
|
'--text-dim': '#686863',
|
|
104
108
|
'--accent': '#d71921',
|
|
109
|
+
'--accent-ramp-end': '#ffffff',
|
|
105
110
|
'--accent-strong': 'color-mix(in srgb, var(--accent) 83%, #000)',
|
|
106
111
|
'--accent-text': 'var(--accent-strong)',
|
|
107
112
|
'--accent-soft': 'color-mix(in srgb, var(--accent) 10%, transparent)',
|
|
@@ -124,18 +129,19 @@ export const cssVars = {
|
|
|
124
129
|
},
|
|
125
130
|
// Dark palette — both the prefers-color-scheme and [data-theme='dark'] blocks.
|
|
126
131
|
dark: {
|
|
127
|
-
'--bg': '#
|
|
128
|
-
'--bg-elevated': '#
|
|
132
|
+
'--bg': '#121212',
|
|
133
|
+
'--bg-elevated': '#181818',
|
|
129
134
|
'--bg-accent': 'color-mix(in srgb, var(--accent) 8%, transparent)',
|
|
130
|
-
'--panel': '#
|
|
131
|
-
'--panel-strong': '#
|
|
132
|
-
'--panel-soft': '#
|
|
133
|
-
'--line': '#
|
|
134
|
-
'--line-strong': '#
|
|
135
|
-
'--text': '#
|
|
136
|
-
'--text-soft': '#
|
|
137
|
-
'--text-dim': '#
|
|
135
|
+
'--panel': '#1c1c1c',
|
|
136
|
+
'--panel-strong': '#222222',
|
|
137
|
+
'--panel-soft': '#242424',
|
|
138
|
+
'--line': '#383838',
|
|
139
|
+
'--line-strong': '#555555',
|
|
140
|
+
'--text': '#e6e6e6',
|
|
141
|
+
'--text-soft': '#c8c8c8',
|
|
142
|
+
'--text-dim': '#a0a0a0',
|
|
138
143
|
'--accent': '#ff3b41',
|
|
144
|
+
'--accent-ramp-end': '#000000',
|
|
139
145
|
'--accent-strong': 'color-mix(in srgb, var(--accent) 84%, #fff)',
|
|
140
146
|
'--accent-text': 'var(--accent-strong)',
|
|
141
147
|
'--accent-soft': 'color-mix(in srgb, var(--accent) 14%, transparent)',
|
package/tokens/index.json
CHANGED
|
@@ -39,10 +39,10 @@
|
|
|
39
39
|
"--z-overlay": "30",
|
|
40
40
|
"--z-popover": "50",
|
|
41
41
|
"--z-toast": "60",
|
|
42
|
-
"--accent-1": "color-mix(in oklch, var(--accent) 8%, var(--
|
|
43
|
-
"--accent-2": "color-mix(in oklch, var(--accent) 16%, var(--
|
|
44
|
-
"--accent-3": "color-mix(in oklch, var(--accent) 32%, var(--
|
|
45
|
-
"--accent-4": "color-mix(in oklch, var(--accent) 60%, var(--
|
|
42
|
+
"--accent-1": "color-mix(in oklch, var(--accent) 8%, var(--accent-ramp-end))",
|
|
43
|
+
"--accent-2": "color-mix(in oklch, var(--accent) 16%, var(--accent-ramp-end))",
|
|
44
|
+
"--accent-3": "color-mix(in oklch, var(--accent) 32%, var(--accent-ramp-end))",
|
|
45
|
+
"--accent-4": "color-mix(in oklch, var(--accent) 60%, var(--accent-ramp-end))",
|
|
46
46
|
"--accent-5": "var(--accent)",
|
|
47
47
|
"--accent-6": "var(--accent-strong)",
|
|
48
48
|
"--surface-1": "var(--bg)",
|
|
@@ -84,6 +84,7 @@
|
|
|
84
84
|
"--text-soft": "#353533",
|
|
85
85
|
"--text-dim": "#686863",
|
|
86
86
|
"--accent": "#d71921",
|
|
87
|
+
"--accent-ramp-end": "#ffffff",
|
|
87
88
|
"--accent-strong": "color-mix(in srgb, var(--accent) 83%, #000)",
|
|
88
89
|
"--accent-text": "var(--accent-strong)",
|
|
89
90
|
"--accent-soft": "color-mix(in srgb, var(--accent) 10%, transparent)",
|
|
@@ -105,18 +106,19 @@
|
|
|
105
106
|
"--shadow-raised": "0 0 0 1px var(--line-strong)"
|
|
106
107
|
},
|
|
107
108
|
"dark": {
|
|
108
|
-
"--bg": "#
|
|
109
|
-
"--bg-elevated": "#
|
|
109
|
+
"--bg": "#121212",
|
|
110
|
+
"--bg-elevated": "#181818",
|
|
110
111
|
"--bg-accent": "color-mix(in srgb, var(--accent) 8%, transparent)",
|
|
111
|
-
"--panel": "#
|
|
112
|
-
"--panel-strong": "#
|
|
113
|
-
"--panel-soft": "#
|
|
114
|
-
"--line": "#
|
|
115
|
-
"--line-strong": "#
|
|
116
|
-
"--text": "#
|
|
117
|
-
"--text-soft": "#
|
|
118
|
-
"--text-dim": "#
|
|
112
|
+
"--panel": "#1c1c1c",
|
|
113
|
+
"--panel-strong": "#222222",
|
|
114
|
+
"--panel-soft": "#242424",
|
|
115
|
+
"--line": "#383838",
|
|
116
|
+
"--line-strong": "#555555",
|
|
117
|
+
"--text": "#e6e6e6",
|
|
118
|
+
"--text-soft": "#c8c8c8",
|
|
119
|
+
"--text-dim": "#a0a0a0",
|
|
119
120
|
"--accent": "#ff3b41",
|
|
121
|
+
"--accent-ramp-end": "#000000",
|
|
120
122
|
"--accent-strong": "color-mix(in srgb, var(--accent) 84%, #fff)",
|
|
121
123
|
"--accent-text": "var(--accent-strong)",
|
|
122
124
|
"--accent-soft": "color-mix(in srgb, var(--accent) 14%, transparent)",
|
|
@@ -178,10 +180,10 @@
|
|
|
178
180
|
"z-overlay": "30",
|
|
179
181
|
"z-popover": "50",
|
|
180
182
|
"z-toast": "60",
|
|
181
|
-
"accent-1": "color-mix(in oklch, var(--accent) 8%, var(--
|
|
182
|
-
"accent-2": "color-mix(in oklch, var(--accent) 16%, var(--
|
|
183
|
-
"accent-3": "color-mix(in oklch, var(--accent) 32%, var(--
|
|
184
|
-
"accent-4": "color-mix(in oklch, var(--accent) 60%, var(--
|
|
183
|
+
"accent-1": "color-mix(in oklch, var(--accent) 8%, var(--accent-ramp-end))",
|
|
184
|
+
"accent-2": "color-mix(in oklch, var(--accent) 16%, var(--accent-ramp-end))",
|
|
185
|
+
"accent-3": "color-mix(in oklch, var(--accent) 32%, var(--accent-ramp-end))",
|
|
186
|
+
"accent-4": "color-mix(in oklch, var(--accent) 60%, var(--accent-ramp-end))",
|
|
185
187
|
"accent-5": "var(--accent)",
|
|
186
188
|
"accent-6": "var(--accent-strong)",
|
|
187
189
|
"surface-1": "var(--bg)",
|
|
@@ -224,6 +226,7 @@
|
|
|
224
226
|
"text-soft": "#353533",
|
|
225
227
|
"text-dim": "#686863",
|
|
226
228
|
"accent": "#d71921",
|
|
229
|
+
"accent-ramp-end": "#ffffff",
|
|
227
230
|
"accent-strong": "color-mix(in srgb, var(--accent) 83%, #000)",
|
|
228
231
|
"accent-text": "var(--accent-strong)",
|
|
229
232
|
"accent-soft": "color-mix(in srgb, var(--accent) 10%, transparent)",
|
|
@@ -245,18 +248,19 @@
|
|
|
245
248
|
"shadow-raised": "0 0 0 1px var(--line-strong)"
|
|
246
249
|
},
|
|
247
250
|
"dark": {
|
|
248
|
-
"bg": "#
|
|
249
|
-
"bg-elevated": "#
|
|
251
|
+
"bg": "#121212",
|
|
252
|
+
"bg-elevated": "#181818",
|
|
250
253
|
"bg-accent": "color-mix(in srgb, var(--accent) 8%, transparent)",
|
|
251
|
-
"panel": "#
|
|
252
|
-
"panel-strong": "#
|
|
253
|
-
"panel-soft": "#
|
|
254
|
-
"line": "#
|
|
255
|
-
"line-strong": "#
|
|
256
|
-
"text": "#
|
|
257
|
-
"text-soft": "#
|
|
258
|
-
"text-dim": "#
|
|
254
|
+
"panel": "#1c1c1c",
|
|
255
|
+
"panel-strong": "#222222",
|
|
256
|
+
"panel-soft": "#242424",
|
|
257
|
+
"line": "#383838",
|
|
258
|
+
"line-strong": "#555555",
|
|
259
|
+
"text": "#e6e6e6",
|
|
260
|
+
"text-soft": "#c8c8c8",
|
|
261
|
+
"text-dim": "#a0a0a0",
|
|
259
262
|
"accent": "#ff3b41",
|
|
263
|
+
"accent-ramp-end": "#000000",
|
|
260
264
|
"accent-strong": "color-mix(in srgb, var(--accent) 84%, #fff)",
|
|
261
265
|
"accent-text": "var(--accent-strong)",
|
|
262
266
|
"accent-soft": "color-mix(in srgb, var(--accent) 14%, transparent)",
|
package/tokens/resolved.json
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$comment": "@ponchia/ui colour tokens resolved to static values per theme (var() + sRGB/OKLCH color-mix() evaluated at build). For non-CSS render targets: MapLibre/canvas/WebGL/SVG. Generated from tokens/index.js — do not edit by hand; run `npm run resolved:build`. Drift-checked in CI.",
|
|
3
3
|
"light": {
|
|
4
|
-
"--accent-1": "#
|
|
5
|
-
"--accent-2": "#
|
|
6
|
-
"--accent-3": "#
|
|
7
|
-
"--accent-4": "#
|
|
4
|
+
"--accent-1": "#ffefed",
|
|
5
|
+
"--accent-2": "#ffe0db",
|
|
6
|
+
"--accent-3": "#fbc0b9",
|
|
7
|
+
"--accent-4": "#f1877d",
|
|
8
8
|
"--accent-5": "#d71921",
|
|
9
9
|
"--accent-6": "#b2151b",
|
|
10
10
|
"--surface-1": "#f4f4f2",
|
|
@@ -44,6 +44,7 @@
|
|
|
44
44
|
"--text-soft": "#353533",
|
|
45
45
|
"--text-dim": "#686863",
|
|
46
46
|
"--accent": "#d71921",
|
|
47
|
+
"--accent-ramp-end": "#ffffff",
|
|
47
48
|
"--accent-strong": "#b2151b",
|
|
48
49
|
"--accent-text": "#b2151b",
|
|
49
50
|
"--accent-soft": "rgba(215, 25, 33, 0.1)",
|
|
@@ -69,19 +70,19 @@
|
|
|
69
70
|
"--accent-4": "#80191c",
|
|
70
71
|
"--accent-5": "#ff3b41",
|
|
71
72
|
"--accent-6": "#ff5a5f",
|
|
72
|
-
"--surface-1": "#
|
|
73
|
-
"--surface-2": "#
|
|
74
|
-
"--surface-3": "#
|
|
75
|
-
"--surface-4": "#
|
|
76
|
-
"--surface-5": "#
|
|
77
|
-
"--surface-6": "#
|
|
78
|
-
"--bronto-color-bg": "#
|
|
79
|
-
"--bronto-color-surface": "#
|
|
80
|
-
"--bronto-color-surface-raised": "#
|
|
81
|
-
"--bronto-color-border": "#
|
|
82
|
-
"--bronto-color-border-strong": "#
|
|
83
|
-
"--bronto-color-text": "#
|
|
84
|
-
"--bronto-color-text-muted": "#
|
|
73
|
+
"--surface-1": "#121212",
|
|
74
|
+
"--surface-2": "#181818",
|
|
75
|
+
"--surface-3": "#1c1c1c",
|
|
76
|
+
"--surface-4": "#242424",
|
|
77
|
+
"--surface-5": "#383838",
|
|
78
|
+
"--surface-6": "#555555",
|
|
79
|
+
"--bronto-color-bg": "#121212",
|
|
80
|
+
"--bronto-color-surface": "#1c1c1c",
|
|
81
|
+
"--bronto-color-surface-raised": "#222222",
|
|
82
|
+
"--bronto-color-border": "#383838",
|
|
83
|
+
"--bronto-color-border-strong": "#555555",
|
|
84
|
+
"--bronto-color-text": "#e6e6e6",
|
|
85
|
+
"--bronto-color-text-muted": "#a0a0a0",
|
|
85
86
|
"--bronto-color-action": "#ff3b41",
|
|
86
87
|
"--bronto-color-on-action": "#000000",
|
|
87
88
|
"--bronto-color-focus": "#ff3b41",
|
|
@@ -89,23 +90,24 @@
|
|
|
89
90
|
"--bronto-color-warning": "#d8bd72",
|
|
90
91
|
"--bronto-color-danger": "#ff4d54",
|
|
91
92
|
"--bronto-color-info": "#6fb0e6",
|
|
92
|
-
"--surface": "#
|
|
93
|
-
"--surface-raised": "#
|
|
94
|
-
"--surface-muted": "#
|
|
95
|
-
"--border": "#
|
|
96
|
-
"--border-strong": "#
|
|
97
|
-
"--bg": "#
|
|
98
|
-
"--bg-elevated": "#
|
|
93
|
+
"--surface": "#1c1c1c",
|
|
94
|
+
"--surface-raised": "#222222",
|
|
95
|
+
"--surface-muted": "#242424",
|
|
96
|
+
"--border": "#383838",
|
|
97
|
+
"--border-strong": "#555555",
|
|
98
|
+
"--bg": "#121212",
|
|
99
|
+
"--bg-elevated": "#181818",
|
|
99
100
|
"--bg-accent": "rgba(255, 59, 65, 0.08)",
|
|
100
|
-
"--panel": "#
|
|
101
|
-
"--panel-strong": "#
|
|
102
|
-
"--panel-soft": "#
|
|
103
|
-
"--line": "#
|
|
104
|
-
"--line-strong": "#
|
|
105
|
-
"--text": "#
|
|
106
|
-
"--text-soft": "#
|
|
107
|
-
"--text-dim": "#
|
|
101
|
+
"--panel": "#1c1c1c",
|
|
102
|
+
"--panel-strong": "#222222",
|
|
103
|
+
"--panel-soft": "#242424",
|
|
104
|
+
"--line": "#383838",
|
|
105
|
+
"--line-strong": "#555555",
|
|
106
|
+
"--text": "#e6e6e6",
|
|
107
|
+
"--text-soft": "#c8c8c8",
|
|
108
|
+
"--text-dim": "#a0a0a0",
|
|
108
109
|
"--accent": "#ff3b41",
|
|
110
|
+
"--accent-ramp-end": "#000000",
|
|
109
111
|
"--accent-strong": "#ff5a5f",
|
|
110
112
|
"--accent-text": "#ff5a5f",
|
|
111
113
|
"--accent-soft": "rgba(255, 59, 65, 0.14)",
|
package/tokens/tokens.dtcg.json
CHANGED
|
@@ -225,28 +225,28 @@
|
|
|
225
225
|
"$type": "color",
|
|
226
226
|
"$value": null,
|
|
227
227
|
"$extensions": {
|
|
228
|
-
"com.ponchia.css": "color-mix(in oklch, var(--accent) 8%, var(--
|
|
228
|
+
"com.ponchia.css": "color-mix(in oklch, var(--accent) 8%, var(--accent-ramp-end))"
|
|
229
229
|
}
|
|
230
230
|
},
|
|
231
231
|
"2": {
|
|
232
232
|
"$type": "color",
|
|
233
233
|
"$value": null,
|
|
234
234
|
"$extensions": {
|
|
235
|
-
"com.ponchia.css": "color-mix(in oklch, var(--accent) 16%, var(--
|
|
235
|
+
"com.ponchia.css": "color-mix(in oklch, var(--accent) 16%, var(--accent-ramp-end))"
|
|
236
236
|
}
|
|
237
237
|
},
|
|
238
238
|
"3": {
|
|
239
239
|
"$type": "color",
|
|
240
240
|
"$value": null,
|
|
241
241
|
"$extensions": {
|
|
242
|
-
"com.ponchia.css": "color-mix(in oklch, var(--accent) 32%, var(--
|
|
242
|
+
"com.ponchia.css": "color-mix(in oklch, var(--accent) 32%, var(--accent-ramp-end))"
|
|
243
243
|
}
|
|
244
244
|
},
|
|
245
245
|
"4": {
|
|
246
246
|
"$type": "color",
|
|
247
247
|
"$value": null,
|
|
248
248
|
"$extensions": {
|
|
249
|
-
"com.ponchia.css": "color-mix(in oklch, var(--accent) 60%, var(--
|
|
249
|
+
"com.ponchia.css": "color-mix(in oklch, var(--accent) 60%, var(--accent-ramp-end))"
|
|
250
250
|
}
|
|
251
251
|
},
|
|
252
252
|
"5": {
|
|
@@ -508,6 +508,10 @@
|
|
|
508
508
|
"$type": "color",
|
|
509
509
|
"$value": "#d71921"
|
|
510
510
|
},
|
|
511
|
+
"ramp-end": {
|
|
512
|
+
"$type": "color",
|
|
513
|
+
"$value": "#ffffff"
|
|
514
|
+
},
|
|
511
515
|
"strong": {
|
|
512
516
|
"$type": "color",
|
|
513
517
|
"$value": null,
|
|
@@ -626,11 +630,11 @@
|
|
|
626
630
|
"bg": {
|
|
627
631
|
"DEFAULT": {
|
|
628
632
|
"$type": "color",
|
|
629
|
-
"$value": "#
|
|
633
|
+
"$value": "#121212"
|
|
630
634
|
},
|
|
631
635
|
"elevated": {
|
|
632
636
|
"$type": "color",
|
|
633
|
-
"$value": "#
|
|
637
|
+
"$value": "#181818"
|
|
634
638
|
},
|
|
635
639
|
"accent": {
|
|
636
640
|
"$type": "color",
|
|
@@ -643,39 +647,39 @@
|
|
|
643
647
|
"panel": {
|
|
644
648
|
"DEFAULT": {
|
|
645
649
|
"$type": "color",
|
|
646
|
-
"$value": "#
|
|
650
|
+
"$value": "#1c1c1c"
|
|
647
651
|
},
|
|
648
652
|
"strong": {
|
|
649
653
|
"$type": "color",
|
|
650
|
-
"$value": "#
|
|
654
|
+
"$value": "#222222"
|
|
651
655
|
},
|
|
652
656
|
"soft": {
|
|
653
657
|
"$type": "color",
|
|
654
|
-
"$value": "#
|
|
658
|
+
"$value": "#242424"
|
|
655
659
|
}
|
|
656
660
|
},
|
|
657
661
|
"line": {
|
|
658
662
|
"DEFAULT": {
|
|
659
663
|
"$type": "color",
|
|
660
|
-
"$value": "#
|
|
664
|
+
"$value": "#383838"
|
|
661
665
|
},
|
|
662
666
|
"strong": {
|
|
663
667
|
"$type": "color",
|
|
664
|
-
"$value": "#
|
|
668
|
+
"$value": "#555555"
|
|
665
669
|
}
|
|
666
670
|
},
|
|
667
671
|
"text": {
|
|
668
672
|
"DEFAULT": {
|
|
669
673
|
"$type": "color",
|
|
670
|
-
"$value": "#
|
|
674
|
+
"$value": "#e6e6e6"
|
|
671
675
|
},
|
|
672
676
|
"soft": {
|
|
673
677
|
"$type": "color",
|
|
674
|
-
"$value": "#
|
|
678
|
+
"$value": "#c8c8c8"
|
|
675
679
|
},
|
|
676
680
|
"dim": {
|
|
677
681
|
"$type": "color",
|
|
678
|
-
"$value": "#
|
|
682
|
+
"$value": "#a0a0a0"
|
|
679
683
|
}
|
|
680
684
|
},
|
|
681
685
|
"accent": {
|
|
@@ -683,6 +687,10 @@
|
|
|
683
687
|
"$type": "color",
|
|
684
688
|
"$value": "#ff3b41"
|
|
685
689
|
},
|
|
690
|
+
"ramp-end": {
|
|
691
|
+
"$type": "color",
|
|
692
|
+
"$value": "#000000"
|
|
693
|
+
},
|
|
686
694
|
"strong": {
|
|
687
695
|
"$type": "color",
|
|
688
696
|
"$value": null,
|
package/fonts/doto-400.ttf
DELETED
|
Binary file
|
package/fonts/doto-500.ttf
DELETED
|
Binary file
|
package/fonts/doto-600.ttf
DELETED
|
Binary file
|
package/fonts/doto-700.ttf
DELETED
|
Binary file
|
package/fonts/doto-800.ttf
DELETED
|
Binary file
|
package/fonts/doto-900.ttf
DELETED
|
Binary file
|