@motion-proto/live-tokens 0.94.2 → 0.95.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/.claude/skills/live-tokens-create-page/SKILL.md +7 -3
- package/CHANGELOG.md +108 -0
- package/README.md +6 -6
- package/dist-plugin/{chunk-7XSUHJUH.js → chunk-4J6JPSVS.js} +53 -2
- package/dist-plugin/{chunk-W5VQV32K.js → chunk-GYRULB2X.js} +1 -1
- package/dist-plugin/{chunk-ONYAIXCZ.js → chunk-QQASYPW7.js} +32 -9
- package/dist-plugin/index.cjs +598 -17
- package/dist-plugin/index.d.cts +9 -1
- package/dist-plugin/index.d.ts +9 -1
- package/dist-plugin/index.js +513 -6
- package/dist-plugin/migrateData/index.cjs +32 -9
- package/dist-plugin/migrateData/index.js +2 -2
- package/dist-plugin/setColors/index.cjs +32 -22
- package/dist-plugin/setColors/index.js +2 -15
- package/dist-plugin/setGeometry/index.cjs +32 -9
- package/dist-plugin/setGeometry/index.js +1 -1
- package/dist-plugin/tokensCssMigrations/index.cjs +53 -2
- package/dist-plugin/tokensCssMigrations/index.d.cts +9 -2
- package/dist-plugin/tokensCssMigrations/index.d.ts +9 -2
- package/dist-plugin/tokensCssMigrations/index.js +1 -1
- package/package.json +8 -3
- package/src/demo/ChromeSelect.svelte +111 -0
- package/src/demo/Demo.svelte +39 -5
- package/src/demo/DemoBar.svelte +33 -14
- package/src/demo/FloatingTokenTags.css +33 -4
- package/src/demo/FloatingTokenTags.svelte +81 -68
- package/src/demo/Section.svelte +1 -7
- package/src/demo/SketchSelect.svelte +36 -12
- package/src/demo/SourceLinks.svelte +5 -4
- package/src/demo/TestingLoops.svelte +128 -19
- package/src/demo/ThemeSelect.svelte +34 -11
- package/src/demo/evalResults.ts +7 -7
- package/src/demo/sections/SectionClaude.svelte +20 -13
- package/src/demo/sections/SectionFooter.svelte +4 -5
- package/src/demo/sections/SectionGetStarted.svelte +5 -6
- package/src/demo/sections/SectionHero.svelte +43 -23
- package/src/demo/sections/SectionKit.svelte +141 -45
- package/src/demo/sections/SectionLayers.svelte +3 -3
- package/src/demo/sections/SectionOffering.svelte +8 -23
- package/src/editor/bootstrap.ts +12 -6
- package/src/editor/component-editor/ImageEditor.svelte +1 -1
- package/src/editor/component-editor/ImageLightboxEditor.svelte +3 -4
- package/src/editor/component-editor/registration.ts +36 -0
- package/src/editor/component-editor/registry.ts +5 -12
- package/src/editor/component-editor/scaffolding/ShadowBackdrop.svelte +11 -2
- package/src/editor/component-editor/scaffolding/StateBlock.svelte +7 -0
- package/src/editor/component-editor/scaffolding/TokenLayout.svelte +1 -2
- package/src/editor/component-editor/scaffolding/VariantGroup.svelte +17 -2
- package/src/editor/core/store/editorPersistence.ts +6 -1
- package/src/editor/core/store/editorRenderer.ts +1 -4
- package/src/editor/core/store/editorStore.ts +5 -9
- package/src/editor/core/store/editorTypes.ts +2 -2
- package/src/editor/core/themes/migrations/2026-10-15-responsive-columns.ts +40 -0
- package/src/editor/core/themes/migrations/index.ts +2 -0
- package/src/editor/core/themes/slices/columns.ts +112 -42
- package/src/editor/docs/Docs.svelte +25 -22
- package/src/editor/docs/chapters.ts +1 -0
- package/src/editor/docs/content/editing-tokens.md +5 -3
- package/src/editor/docs/content/production-css.md +116 -0
- package/src/editor/docs/content/themes-workflow.md +2 -0
- package/src/editor/docs/content.generated.ts +3 -2
- package/src/editor/index.ts +2 -1
- package/src/editor/overlay/LiveEditorOverlay.svelte +67 -19
- package/src/editor/overlay/LiveTokensRouter.svelte +8 -4
- package/src/editor/pages/Editor.svelte +15 -1
- package/src/editor/pages/EditorShell.svelte +312 -99
- package/src/editor/skill-atlas/SkillAtlas.svelte +111 -24
- package/src/editor/skill-atlas/TreeCanvas.svelte +14 -0
- package/src/editor/skill-atlas/skillSources.generated.ts +1 -1
- package/src/editor/skill-atlas/trees/create-page.ts +24 -24
- package/src/editor/skill-atlas/wireLayout.ts +62 -0
- package/src/editor/ui/BezierCurveEditor.svelte +3 -0
- package/src/editor/ui/FontStackEditor.svelte +2 -2
- package/src/editor/ui/PaletteEditor.svelte +64 -6
- package/src/editor/ui/UIPaletteSelector.svelte +2 -0
- package/src/editor/ui/colors/ColorsTab.svelte +5 -2
- package/src/editor/ui/palette/OverridesPanel.svelte +1 -0
- package/src/editor/ui/palette/ScaleCurveEditor.svelte +127 -18
- package/src/editor/ui/sections/ColumnsSection.svelte +79 -49
- package/src/editor/ui/sections/ShadowsSection.svelte +14 -0
- package/src/editor/ui/sections/WashesSection.svelte +11 -0
- package/src/editor/ui/sketch/SketchTab.svelte +1 -1
- package/src/live-tokens/data/colors-and-type/autumn.json +1 -4
- package/src/live-tokens/data/colors-and-type/default.json +1 -4
- package/src/live-tokens/data/colors-and-type/halloween.json +1 -4
- package/src/live-tokens/data/colors-and-type/midnight-study.json +1 -4
- package/src/live-tokens/data/colors-and-type/ocean.json +1 -4
- package/src/live-tokens/data/colors-and-type/royal-velvet.json +1 -4
- package/src/live-tokens/data/colors-and-type/sketchy.json +1 -4
- package/src/live-tokens/data/colors-and-type/spring-meadow.json +1 -4
- package/src/live-tokens/data/colors-and-type/sunset.json +1 -4
- package/src/live-tokens/data/themes/autumn.json +1 -4
- package/src/live-tokens/data/themes/halloween.json +1 -4
- package/src/live-tokens/data/themes/midnight-study.json +1 -4
- package/src/live-tokens/data/themes/ocean.json +1 -4
- package/src/live-tokens/data/themes/royal-velvet.json +1 -4
- package/src/live-tokens/data/themes/sketchy.json +1 -4
- package/src/live-tokens/data/themes/spring-meadow.json +1 -4
- package/src/live-tokens/data/themes/sunset.json +1 -4
- package/src/live-tokens/data/tokens.generated.css +1 -4
- package/src/system/components/SectionDivider.svelte +4 -0
- package/src/system/styles/CONVENTIONS.md +1 -1
- package/src/system/styles/tokens.css +30 -4
- package/template/src/main.ts +2 -2
- package/template/src/pages/Home.svelte +11 -8
- package/template/vite.config.ts +7 -3
- package/src/system/assets/offering.webp +0 -0
- /package/dist-plugin/{chunk-O6GQ6GBH.js → chunk-A4TBP4MM.js} +0 -0
|
@@ -1,31 +1,52 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
|
-
import { onMount } from 'svelte';
|
|
3
2
|
import { editorState, mutate, beginSliderGesture } from '../../core/store/editorStore';
|
|
4
|
-
import
|
|
3
|
+
import {
|
|
4
|
+
COLUMN_BREAKPOINTS,
|
|
5
|
+
COLUMN_DEFAULTS,
|
|
6
|
+
type ColumnProperty,
|
|
7
|
+
type ColumnViewport,
|
|
8
|
+
} from '../../core/themes/slices/columns';
|
|
9
|
+
import UISegmentedControl from '../UISegmentedControl.svelte';
|
|
5
10
|
|
|
6
|
-
const STANDARD_COLS = 12;
|
|
7
11
|
const COLS_MIN = 1;
|
|
8
12
|
const COLS_MAX = 24;
|
|
9
|
-
// Pointer-events needed to break free of
|
|
10
|
-
// The slider is bound to state, so returning early during
|
|
11
|
-
// keeps the thumb visually pinned
|
|
13
|
+
// Pointer-events needed to break free of the default count once the drag
|
|
14
|
+
// arrives there. The slider is bound to state, so returning early during
|
|
15
|
+
// these trips keeps the thumb visually pinned even as the pointer wanders.
|
|
12
16
|
const DETENT_RESISTANCE = 4;
|
|
13
17
|
|
|
18
|
+
const VIEWPORT_OPTIONS: { value: ColumnViewport; label: string; title: string }[] = [
|
|
19
|
+
{ value: 'desktop', label: 'Desktop', title: `Wider than ${COLUMN_BREAKPOINTS.tablet}px` },
|
|
20
|
+
{ value: 'tablet', label: 'Tablet', title: `${COLUMN_BREAKPOINTS.tablet}px and narrower` },
|
|
21
|
+
{ value: 'phone', label: 'Phone', title: `${COLUMN_BREAKPOINTS.phone}px and narrower` },
|
|
22
|
+
];
|
|
23
|
+
|
|
24
|
+
let viewport = $state<ColumnViewport>('desktop');
|
|
25
|
+
let count = $derived($editorState.columns.count);
|
|
26
|
+
let values = $derived($editorState.columns.viewports[viewport]);
|
|
27
|
+
let viewportLabel = $derived(VIEWPORT_OPTIONS.find((o) => o.value === viewport)!.label.toLowerCase());
|
|
28
|
+
// The preview scales the grid to the widest window it serves.
|
|
29
|
+
let previewWidth = $derived(viewport === 'desktop' ? $editorState.columns.maxWidth : COLUMN_BREAKPOINTS[viewport]);
|
|
30
|
+
|
|
14
31
|
function clampNum(v: number, lo: number, hi: number): number {
|
|
15
32
|
return Math.max(lo, Math.min(hi, Math.round(v)));
|
|
16
33
|
}
|
|
17
34
|
|
|
35
|
+
function setViewportValue(property: ColumnProperty, value: number) {
|
|
36
|
+
const target = viewport;
|
|
37
|
+
mutate(`set ${target} columns ${property}`, (s) => { s.columns.viewports[target][property] = value; });
|
|
38
|
+
}
|
|
18
39
|
function setColumnsCount(n: number) {
|
|
19
40
|
mutate('set columns count', (s) => { s.columns.count = clampNum(n, COLS_MIN, COLS_MAX); });
|
|
20
41
|
}
|
|
21
|
-
function setColumnsMaxWidth(px: number) {
|
|
22
|
-
mutate('set columns max-width', (s) => { s.columns.maxWidth = clampNum(px, 320, 2560); });
|
|
23
|
-
}
|
|
24
42
|
function setColumnsGutter(px: number) {
|
|
25
|
-
|
|
43
|
+
setViewportValue('gutter', clampNum(px, 0, 200));
|
|
26
44
|
}
|
|
27
45
|
function setColumnsMargin(px: number) {
|
|
28
|
-
|
|
46
|
+
setViewportValue('margin', clampNum(px, 0, 400));
|
|
47
|
+
}
|
|
48
|
+
function setColumnsMaxWidth(px: number) {
|
|
49
|
+
mutate('set columns max-width', (s) => { s.columns.maxWidth = clampNum(px, 320, 2560); });
|
|
29
50
|
}
|
|
30
51
|
|
|
31
52
|
let colsDragging = false;
|
|
@@ -41,76 +62,70 @@
|
|
|
41
62
|
colsDetentTrips = 0;
|
|
42
63
|
}
|
|
43
64
|
function handleColsInput(raw: number, target: HTMLInputElement) {
|
|
44
|
-
const
|
|
65
|
+
const detent = COLUMN_DEFAULTS.count;
|
|
45
66
|
if (
|
|
46
67
|
colsDragging &&
|
|
47
|
-
|
|
48
|
-
Math.abs(raw -
|
|
68
|
+
count === detent &&
|
|
69
|
+
Math.abs(raw - detent) === 1
|
|
49
70
|
) {
|
|
50
71
|
colsDetentTrips += 1;
|
|
51
72
|
if (colsDetentTrips < DETENT_RESISTANCE) {
|
|
52
73
|
// Force the thumb back. Svelte's controlled value may not re-sync
|
|
53
74
|
// when the underlying number is unchanged, so set the DOM value here.
|
|
54
|
-
target.value = String(
|
|
75
|
+
target.value = String(detent);
|
|
55
76
|
return;
|
|
56
77
|
}
|
|
57
78
|
colsDetentTrips = 0;
|
|
58
79
|
}
|
|
59
|
-
if (raw ===
|
|
80
|
+
if (raw === detent) colsDetentTrips = 0;
|
|
60
81
|
setColumnsCount(raw);
|
|
61
82
|
}
|
|
62
83
|
|
|
63
|
-
//
|
|
64
|
-
//
|
|
65
|
-
|
|
66
|
-
// sits when value === 12.
|
|
67
|
-
const colsTickPct = ((STANDARD_COLS - COLS_MIN) / (COLS_MAX - COLS_MIN)) * 100;
|
|
68
|
-
|
|
69
|
-
let initialColumns: ColumnsState | null = null;
|
|
84
|
+
// Inset by approximately one thumb-radius so the tick aligns with where the
|
|
85
|
+
// thumb sits at the default count.
|
|
86
|
+
const colsTickPct = ((COLUMN_DEFAULTS.count - COLS_MIN) / (COLS_MAX - COLS_MIN)) * 100;
|
|
70
87
|
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
function resetColumns() {
|
|
76
|
-
if (!initialColumns) return;
|
|
77
|
-
const snapshot = initialColumns;
|
|
78
|
-
mutate('reset columns', (s) => { s.columns = { ...snapshot }; });
|
|
88
|
+
function resetViewport() {
|
|
89
|
+
const target = viewport;
|
|
90
|
+
mutate(`reset ${target} columns`, (s) => { s.columns.viewports[target] = { ...COLUMN_DEFAULTS.viewports[target] }; });
|
|
79
91
|
}
|
|
80
92
|
</script>
|
|
81
93
|
|
|
82
94
|
<section class="section" id="columns">
|
|
83
95
|
<h2 class="section-title">Columns</h2>
|
|
84
96
|
<p class="columns-intro">
|
|
85
|
-
Layout grid for page content.
|
|
97
|
+
Layout grid for page content. The count and the max width hold at every
|
|
98
|
+
width. Desktop, tablet and phone each hold a gutter and a margin, and the
|
|
99
|
+
grid switches them at {COLUMN_BREAKPOINTS.tablet}px and
|
|
100
|
+
{COLUMN_BREAKPOINTS.phone}px. Toggle the live overlay from the editor bar's
|
|
86
101
|
<i class="fas fa-grip-lines-vertical"></i> button to visualize.
|
|
87
102
|
</p>
|
|
88
103
|
|
|
89
104
|
<div class="columns-controls">
|
|
90
105
|
<div class="global-shadow-row cols-row">
|
|
91
|
-
<span class="shadow-slider-label" title="Number of columns">Cols</span>
|
|
106
|
+
<span class="shadow-slider-label" title="Number of columns, shared by every viewport">Cols</span>
|
|
92
107
|
<div class="cols-slider-wrap">
|
|
93
|
-
<input type="range" min={COLS_MIN} max={COLS_MAX} value={
|
|
108
|
+
<input type="range" min={COLS_MIN} max={COLS_MAX} value={count}
|
|
94
109
|
onpointerdown={onColsPointerDown}
|
|
95
110
|
onpointerup={onColsPointerUp}
|
|
96
111
|
onpointercancel={onColsPointerUp}
|
|
97
112
|
oninput={(e) => handleColsInput(+e.currentTarget.value, e.currentTarget)} />
|
|
98
113
|
<span class="cols-tick" style="left: {colsTickPct}%" aria-hidden="true"></span>
|
|
99
|
-
<span class="cols-tick-label" style="left: {colsTickPct}%" aria-hidden="true">
|
|
114
|
+
<span class="cols-tick-label" style="left: {colsTickPct}%" aria-hidden="true">{COLUMN_DEFAULTS.count}</span>
|
|
100
115
|
</div>
|
|
101
116
|
<input class="shadow-slider-input" type="number" min={COLS_MIN} max={COLS_MAX}
|
|
102
|
-
value={
|
|
117
|
+
value={count}
|
|
103
118
|
onchange={(e) => setColumnsCount(+e.currentTarget.value)} />
|
|
104
119
|
<span class="shadow-slider-unit"></span>
|
|
105
120
|
</div>
|
|
106
|
-
{#if
|
|
121
|
+
{#if count !== COLUMN_DEFAULTS.count}
|
|
107
122
|
<p class="cols-consequence" role="note">
|
|
108
123
|
<i class="fas fa-circle-exclamation"></i>
|
|
109
|
-
<span>Most
|
|
124
|
+
<span>Most layouts assume {COLUMN_DEFAULTS.count} cols.</span>
|
|
110
125
|
</p>
|
|
111
126
|
{/if}
|
|
112
127
|
<div class="global-shadow-row">
|
|
113
|
-
<span class="shadow-slider-label" title="Maximum content width">Max-Width</span>
|
|
128
|
+
<span class="shadow-slider-label" title="Maximum content width, shared by every viewport">Max-Width</span>
|
|
114
129
|
<input type="range" min="480" max="2560" step="10" value={$editorState.columns.maxWidth}
|
|
115
130
|
onpointerdown={() => beginSliderGesture('drag columns max-width')}
|
|
116
131
|
oninput={(e) => setColumnsMaxWidth(+e.currentTarget.value)} />
|
|
@@ -119,41 +134,49 @@
|
|
|
119
134
|
onchange={(e) => setColumnsMaxWidth(+e.currentTarget.value)} />
|
|
120
135
|
<span class="shadow-slider-unit">px</span>
|
|
121
136
|
</div>
|
|
137
|
+
|
|
138
|
+
<div class="columns-viewport">
|
|
139
|
+
<UISegmentedControl bind:value={viewport} options={VIEWPORT_OPTIONS} ariaLabel="Viewport" />
|
|
140
|
+
</div>
|
|
141
|
+
|
|
122
142
|
<div class="global-shadow-row">
|
|
123
143
|
<span class="shadow-slider-label" title="Space between columns">Gutter</span>
|
|
124
|
-
<input type="range" min="0" max="80" value={
|
|
125
|
-
onpointerdown={() => beginSliderGesture(
|
|
144
|
+
<input type="range" min="0" max="80" value={values.gutter}
|
|
145
|
+
onpointerdown={() => beginSliderGesture(`drag ${viewport} columns gutter`)}
|
|
126
146
|
oninput={(e) => setColumnsGutter(+e.currentTarget.value)} />
|
|
127
147
|
<input class="shadow-slider-input" type="number" min="0" max="200"
|
|
128
|
-
value={
|
|
148
|
+
value={values.gutter}
|
|
129
149
|
onchange={(e) => setColumnsGutter(+e.currentTarget.value)} />
|
|
130
150
|
<span class="shadow-slider-unit">px</span>
|
|
131
151
|
</div>
|
|
132
152
|
<div class="global-shadow-row">
|
|
133
153
|
<span class="shadow-slider-label" title="Outer page margin (side gutters)">Margin</span>
|
|
134
|
-
<input type="range" min="0" max="200" value={
|
|
135
|
-
onpointerdown={() => beginSliderGesture(
|
|
154
|
+
<input type="range" min="0" max="200" value={values.margin}
|
|
155
|
+
onpointerdown={() => beginSliderGesture(`drag ${viewport} columns margin`)}
|
|
136
156
|
oninput={(e) => setColumnsMargin(+e.currentTarget.value)} />
|
|
137
157
|
<input class="shadow-slider-input columns-input-wide" type="number" min="0" max="400"
|
|
138
|
-
value={
|
|
158
|
+
value={values.margin}
|
|
139
159
|
onchange={(e) => setColumnsMargin(+e.currentTarget.value)} />
|
|
140
160
|
<span class="shadow-slider-unit">px</span>
|
|
141
161
|
</div>
|
|
142
162
|
|
|
143
163
|
<div class="columns-controls-footer">
|
|
144
|
-
<button class="columns-reset" onclick={
|
|
164
|
+
<button class="columns-reset" onclick={resetViewport} title="Restore the default {viewportLabel} gutter and margin">
|
|
145
165
|
<i class="fas fa-rotate-left"></i>
|
|
146
|
-
Reset
|
|
166
|
+
Reset {viewportLabel}
|
|
147
167
|
</button>
|
|
148
168
|
</div>
|
|
149
169
|
</div>
|
|
150
170
|
|
|
171
|
+
<!-- A scaled picture of the grid at the widest window it serves: gutter and
|
|
172
|
+
margin are shares of that width, so the preview keeps its proportions in
|
|
173
|
+
any panel. -->
|
|
151
174
|
<div class="columns-preview">
|
|
152
175
|
<div
|
|
153
176
|
class="columns-preview-inner"
|
|
154
|
-
style="gap: {
|
|
177
|
+
style="gap: {(values.gutter / previewWidth) * 100}%; padding-inline: {(values.margin / previewWidth) * 100}%; grid-template-columns: repeat({count}, minmax(0, 1fr));"
|
|
155
178
|
>
|
|
156
|
-
{#each
|
|
179
|
+
{#each { length: count }, i (i)}
|
|
157
180
|
<div class="columns-preview-col"><span>{i + 1}</span></div>
|
|
158
181
|
{/each}
|
|
159
182
|
</div>
|
|
@@ -203,6 +226,13 @@
|
|
|
203
226
|
text-align: left;
|
|
204
227
|
}
|
|
205
228
|
|
|
229
|
+
.columns-viewport {
|
|
230
|
+
display: flex;
|
|
231
|
+
padding-top: var(--ui-space-8);
|
|
232
|
+
margin-top: var(--ui-space-4);
|
|
233
|
+
border-top: 1px solid var(--ui-border-low);
|
|
234
|
+
}
|
|
235
|
+
|
|
206
236
|
.cols-row {
|
|
207
237
|
/* Slightly more breathing room so the tick label below the slider
|
|
208
238
|
does not collide with the next row. */
|
|
@@ -853,6 +853,20 @@
|
|
|
853
853
|
align-items: flex-start;
|
|
854
854
|
}
|
|
855
855
|
|
|
856
|
+
/* No room for the sidebar: the editor stacks above the shadows and scrolls
|
|
857
|
+
with them, since pinned it would cover the screen. */
|
|
858
|
+
@media (max-width: 600px) {
|
|
859
|
+
.shadows-layout {
|
|
860
|
+
flex-direction: column-reverse;
|
|
861
|
+
align-items: stretch;
|
|
862
|
+
}
|
|
863
|
+
|
|
864
|
+
.global-shadow-editor {
|
|
865
|
+
position: static;
|
|
866
|
+
width: auto;
|
|
867
|
+
}
|
|
868
|
+
}
|
|
869
|
+
|
|
856
870
|
.shadows-main {
|
|
857
871
|
flex: 1;
|
|
858
872
|
min-width: 0;
|
|
@@ -205,6 +205,17 @@
|
|
|
205
205
|
|
|
206
206
|
.wash-control { min-width: 0; }
|
|
207
207
|
|
|
208
|
+
/* Too narrow for three columns: the control drops under the swatch and name. */
|
|
209
|
+
@media (max-width: 600px) {
|
|
210
|
+
.wash-row {
|
|
211
|
+
grid-template-columns: 3.5rem minmax(0, 1fr);
|
|
212
|
+
}
|
|
213
|
+
|
|
214
|
+
.wash-control {
|
|
215
|
+
grid-column: 1 / -1;
|
|
216
|
+
}
|
|
217
|
+
}
|
|
218
|
+
|
|
208
219
|
.wash-opacity {
|
|
209
220
|
display: flex;
|
|
210
221
|
align-items: center;
|
|
@@ -2219,10 +2219,7 @@
|
|
|
2219
2219
|
"--gradient-2": "linear-gradient(135deg, var(--color-special-500) 0%, var(--color-brand-500) 100%)",
|
|
2220
2220
|
"--gradient-3": "linear-gradient(90deg, var(--color-brand-500) 0%, var(--color-accent-500) 100%)",
|
|
2221
2221
|
"--gradient-4": "linear-gradient(180deg, var(--color-canvas-200) 0%, var(--color-canvas-500) 100%)",
|
|
2222
|
-
"--columns-count": "12",
|
|
2223
2222
|
"--columns-max-width": "1440px",
|
|
2224
|
-
"--columns-gutter": "32px",
|
|
2225
|
-
"--columns-margin": "0px",
|
|
2226
2223
|
"--scrim-color": "var(--surface-neutral-lowest)",
|
|
2227
2224
|
"--scrim-opacity-low": "0.7",
|
|
2228
2225
|
"--scrim-opacity": "0.8",
|
|
@@ -2407,7 +2404,7 @@
|
|
|
2407
2404
|
"family": null
|
|
2408
2405
|
}
|
|
2409
2406
|
],
|
|
2410
|
-
"schemaVersion":
|
|
2407
|
+
"schemaVersion": 10,
|
|
2411
2408
|
"gradients": [
|
|
2412
2409
|
{
|
|
2413
2410
|
"variable": "--gradient-1",
|
|
@@ -2250,10 +2250,7 @@
|
|
|
2250
2250
|
"--gradient-2": "linear-gradient(135deg, var(--color-brand-500) 0%, var(--color-special-500) 100%)",
|
|
2251
2251
|
"--gradient-3": "linear-gradient(90deg, var(--color-success-500) 0%, var(--color-info-500) 100%)",
|
|
2252
2252
|
"--gradient-4": "linear-gradient(45deg, var(--color-danger-500) 0%, var(--color-warning-500) 100%)",
|
|
2253
|
-
"--columns-count": "12",
|
|
2254
2253
|
"--columns-max-width": "1440px",
|
|
2255
|
-
"--columns-gutter": "32px",
|
|
2256
|
-
"--columns-margin": "0px",
|
|
2257
2254
|
"--scrim-color": "var(--surface-neutral-lowest)",
|
|
2258
2255
|
"--scrim-opacity-low": "0.7",
|
|
2259
2256
|
"--scrim-opacity": "0.8",
|
|
@@ -2417,5 +2414,5 @@
|
|
|
2417
2414
|
]
|
|
2418
2415
|
}
|
|
2419
2416
|
],
|
|
2420
|
-
"schemaVersion":
|
|
2417
|
+
"schemaVersion": 10
|
|
2421
2418
|
}
|
|
@@ -2266,10 +2266,7 @@
|
|
|
2266
2266
|
"--gradient-2": "linear-gradient(135deg, var(--color-special-500) 0%, var(--color-brand-500) 100%)",
|
|
2267
2267
|
"--gradient-3": "linear-gradient(90deg, var(--color-accent-400) 0%, var(--color-accent-700) 100%)",
|
|
2268
2268
|
"--gradient-4": "linear-gradient(180deg, var(--color-canvas-600) 0%, var(--color-canvas-900) 100%)",
|
|
2269
|
-
"--columns-count": "12",
|
|
2270
2269
|
"--columns-max-width": "1440px",
|
|
2271
|
-
"--columns-gutter": "32px",
|
|
2272
|
-
"--columns-margin": "0px",
|
|
2273
2270
|
"--scrim-color": "var(--surface-neutral-lowest)",
|
|
2274
2271
|
"--scrim-opacity-low": "0.7",
|
|
2275
2272
|
"--scrim-opacity": "0.8",
|
|
@@ -2446,7 +2443,7 @@
|
|
|
2446
2443
|
"family": null
|
|
2447
2444
|
}
|
|
2448
2445
|
],
|
|
2449
|
-
"schemaVersion":
|
|
2446
|
+
"schemaVersion": 10,
|
|
2450
2447
|
"gradients": [
|
|
2451
2448
|
{
|
|
2452
2449
|
"variable": "--gradient-1",
|
|
@@ -2262,10 +2262,7 @@
|
|
|
2262
2262
|
}
|
|
2263
2263
|
},
|
|
2264
2264
|
"cssVariables": {
|
|
2265
|
-
"--columns-count": "12",
|
|
2266
2265
|
"--columns-max-width": "1440px",
|
|
2267
|
-
"--columns-gutter": "32px",
|
|
2268
|
-
"--columns-margin": "0px",
|
|
2269
2266
|
"--scrim-color": "var(--surface-neutral-lowest)",
|
|
2270
2267
|
"--scrim-opacity-low": "0.7",
|
|
2271
2268
|
"--scrim-opacity": "0.8",
|
|
@@ -2525,5 +2522,5 @@
|
|
|
2525
2522
|
"family": null
|
|
2526
2523
|
}
|
|
2527
2524
|
],
|
|
2528
|
-
"schemaVersion":
|
|
2525
|
+
"schemaVersion": 10
|
|
2529
2526
|
}
|
|
@@ -2219,10 +2219,7 @@
|
|
|
2219
2219
|
"--gradient-2": "linear-gradient(135deg, var(--color-special-400) 0%, var(--color-special-700) 100%)",
|
|
2220
2220
|
"--gradient-3": "linear-gradient(90deg, var(--color-brand-500) 0%, var(--color-accent-500) 100%)",
|
|
2221
2221
|
"--gradient-4": "linear-gradient(180deg, var(--color-canvas-200) 0%, var(--color-canvas-500) 100%)",
|
|
2222
|
-
"--columns-count": "12",
|
|
2223
2222
|
"--columns-max-width": "1440px",
|
|
2224
|
-
"--columns-gutter": "32px",
|
|
2225
|
-
"--columns-margin": "0px",
|
|
2226
2223
|
"--scrim-color": "var(--surface-neutral-lowest)",
|
|
2227
2224
|
"--scrim-opacity-low": "0.7",
|
|
2228
2225
|
"--scrim-opacity": "0.8",
|
|
@@ -2406,7 +2403,7 @@
|
|
|
2406
2403
|
"family": null
|
|
2407
2404
|
}
|
|
2408
2405
|
],
|
|
2409
|
-
"schemaVersion":
|
|
2406
|
+
"schemaVersion": 10,
|
|
2410
2407
|
"gradients": [
|
|
2411
2408
|
{
|
|
2412
2409
|
"variable": "--gradient-1",
|
|
@@ -2251,10 +2251,7 @@
|
|
|
2251
2251
|
"--gradient-2": "linear-gradient(135deg, var(--color-special-500) 0%, var(--color-brand-500) 100%)",
|
|
2252
2252
|
"--gradient-3": "linear-gradient(90deg, var(--color-accent-400) 0%, var(--color-accent-700) 100%)",
|
|
2253
2253
|
"--gradient-4": "linear-gradient(180deg, var(--color-canvas-600) 0%, var(--color-canvas-900) 100%)",
|
|
2254
|
-
"--columns-count": "12",
|
|
2255
2254
|
"--columns-max-width": "1440px",
|
|
2256
|
-
"--columns-gutter": "32px",
|
|
2257
|
-
"--columns-margin": "0px",
|
|
2258
2255
|
"--scrim-color": "var(--surface-neutral-lowest)",
|
|
2259
2256
|
"--scrim-opacity-low": "0.7",
|
|
2260
2257
|
"--scrim-opacity": "0.8",
|
|
@@ -2437,7 +2434,7 @@
|
|
|
2437
2434
|
"family": null
|
|
2438
2435
|
}
|
|
2439
2436
|
],
|
|
2440
|
-
"schemaVersion":
|
|
2437
|
+
"schemaVersion": 10,
|
|
2441
2438
|
"gradients": [
|
|
2442
2439
|
{
|
|
2443
2440
|
"variable": "--gradient-1",
|
|
@@ -2205,10 +2205,7 @@
|
|
|
2205
2205
|
"--gradient-2": "linear-gradient(135deg, var(--color-special-500) 0%, var(--color-brand-500) 100%)",
|
|
2206
2206
|
"--gradient-3": "linear-gradient(90deg, var(--color-brand-500) 0%, var(--color-accent-500) 100%)",
|
|
2207
2207
|
"--gradient-4": "linear-gradient(180deg, var(--color-canvas-200) 0%, var(--color-canvas-500) 100%)",
|
|
2208
|
-
"--columns-count": "12",
|
|
2209
2208
|
"--columns-max-width": "1440px",
|
|
2210
|
-
"--columns-gutter": "32px",
|
|
2211
|
-
"--columns-margin": "0px",
|
|
2212
2209
|
"--scrim-color": "var(--surface-neutral-lowest)",
|
|
2213
2210
|
"--scrim-opacity-low": "0.7",
|
|
2214
2211
|
"--scrim-opacity": "0.8",
|
|
@@ -2482,5 +2479,5 @@
|
|
|
2482
2479
|
"family": null
|
|
2483
2480
|
}
|
|
2484
2481
|
],
|
|
2485
|
-
"schemaVersion":
|
|
2482
|
+
"schemaVersion": 10
|
|
2486
2483
|
}
|
|
@@ -2205,10 +2205,7 @@
|
|
|
2205
2205
|
"--gradient-2": "linear-gradient(135deg, var(--color-special-400) 0%, var(--color-special-700) 100%)",
|
|
2206
2206
|
"--gradient-3": "linear-gradient(90deg, var(--color-brand-500) 0%, var(--color-accent-500) 100%)",
|
|
2207
2207
|
"--gradient-4": "linear-gradient(180deg, var(--color-canvas-200) 0%, var(--color-canvas-500) 100%)",
|
|
2208
|
-
"--columns-count": "12",
|
|
2209
2208
|
"--columns-max-width": "1440px",
|
|
2210
|
-
"--columns-gutter": "32px",
|
|
2211
|
-
"--columns-margin": "0px",
|
|
2212
2209
|
"--scrim-color": "var(--surface-neutral-lowest)",
|
|
2213
2210
|
"--scrim-opacity-low": "0.7",
|
|
2214
2211
|
"--scrim-opacity": "0.8",
|
|
@@ -2393,7 +2390,7 @@
|
|
|
2393
2390
|
"family": null
|
|
2394
2391
|
}
|
|
2395
2392
|
],
|
|
2396
|
-
"schemaVersion":
|
|
2393
|
+
"schemaVersion": 10,
|
|
2397
2394
|
"gradients": [
|
|
2398
2395
|
{
|
|
2399
2396
|
"variable": "--gradient-1",
|
|
@@ -2266,10 +2266,7 @@
|
|
|
2266
2266
|
"--gradient-2": "linear-gradient(135deg, var(--color-special-500) 0%, var(--color-brand-500) 100%)",
|
|
2267
2267
|
"--gradient-3": "linear-gradient(90deg, var(--color-brand-500) 0%, var(--color-accent-500) 100%)",
|
|
2268
2268
|
"--gradient-4": "linear-gradient(180deg, var(--color-canvas-600) 0%, var(--color-canvas-900) 100%)",
|
|
2269
|
-
"--columns-count": "12",
|
|
2270
2269
|
"--columns-max-width": "1440px",
|
|
2271
|
-
"--columns-gutter": "32px",
|
|
2272
|
-
"--columns-margin": "0px",
|
|
2273
2270
|
"--scrim-color": "var(--surface-neutral-lowest)",
|
|
2274
2271
|
"--scrim-opacity-low": "0.7",
|
|
2275
2272
|
"--scrim-opacity": "0.8",
|
|
@@ -2445,7 +2442,7 @@
|
|
|
2445
2442
|
"family": null
|
|
2446
2443
|
}
|
|
2447
2444
|
],
|
|
2448
|
-
"schemaVersion":
|
|
2445
|
+
"schemaVersion": 10,
|
|
2449
2446
|
"gradients": [
|
|
2450
2447
|
{
|
|
2451
2448
|
"variable": "--gradient-1",
|
|
@@ -2224,10 +2224,7 @@
|
|
|
2224
2224
|
"--gradient-2": "linear-gradient(135deg, var(--color-special-500) 0%, var(--color-brand-500) 100%)",
|
|
2225
2225
|
"--gradient-3": "linear-gradient(90deg, var(--color-brand-500) 0%, var(--color-accent-500) 100%)",
|
|
2226
2226
|
"--gradient-4": "linear-gradient(180deg, var(--color-canvas-200) 0%, var(--color-canvas-500) 100%)",
|
|
2227
|
-
"--columns-count": "12",
|
|
2228
2227
|
"--columns-max-width": "1440px",
|
|
2229
|
-
"--columns-gutter": "32px",
|
|
2230
|
-
"--columns-margin": "0px",
|
|
2231
2228
|
"--scrim-color": "var(--surface-neutral-lowest)",
|
|
2232
2229
|
"--scrim-opacity-low": "0.7",
|
|
2233
2230
|
"--scrim-opacity": "0.8",
|
|
@@ -2412,7 +2409,7 @@
|
|
|
2412
2409
|
"family": null
|
|
2413
2410
|
}
|
|
2414
2411
|
],
|
|
2415
|
-
"schemaVersion":
|
|
2412
|
+
"schemaVersion": 10,
|
|
2416
2413
|
"gradients": [
|
|
2417
2414
|
{
|
|
2418
2415
|
"variable": "--gradient-1",
|
|
@@ -2271,10 +2271,7 @@
|
|
|
2271
2271
|
"--gradient-2": "linear-gradient(135deg, var(--color-special-500) 0%, var(--color-brand-500) 100%)",
|
|
2272
2272
|
"--gradient-3": "linear-gradient(90deg, var(--color-accent-400) 0%, var(--color-accent-700) 100%)",
|
|
2273
2273
|
"--gradient-4": "linear-gradient(180deg, var(--color-canvas-600) 0%, var(--color-canvas-900) 100%)",
|
|
2274
|
-
"--columns-count": "12",
|
|
2275
2274
|
"--columns-max-width": "1440px",
|
|
2276
|
-
"--columns-gutter": "32px",
|
|
2277
|
-
"--columns-margin": "0px",
|
|
2278
2275
|
"--scrim-color": "var(--surface-neutral-lowest)",
|
|
2279
2276
|
"--scrim-opacity-low": "0.7",
|
|
2280
2277
|
"--scrim-opacity": "0.8",
|
|
@@ -2451,7 +2448,7 @@
|
|
|
2451
2448
|
"family": null
|
|
2452
2449
|
}
|
|
2453
2450
|
],
|
|
2454
|
-
"schemaVersion":
|
|
2451
|
+
"schemaVersion": 10,
|
|
2455
2452
|
"gradients": [
|
|
2456
2453
|
{
|
|
2457
2454
|
"variable": "--gradient-1",
|
|
@@ -2267,10 +2267,7 @@
|
|
|
2267
2267
|
}
|
|
2268
2268
|
},
|
|
2269
2269
|
"cssVariables": {
|
|
2270
|
-
"--columns-count": "12",
|
|
2271
2270
|
"--columns-max-width": "1440px",
|
|
2272
|
-
"--columns-gutter": "32px",
|
|
2273
|
-
"--columns-margin": "0px",
|
|
2274
2271
|
"--scrim-color": "var(--surface-neutral-lowest)",
|
|
2275
2272
|
"--scrim-opacity-low": "0.7",
|
|
2276
2273
|
"--scrim-opacity": "0.8",
|
|
@@ -2530,7 +2527,7 @@
|
|
|
2530
2527
|
"family": null
|
|
2531
2528
|
}
|
|
2532
2529
|
],
|
|
2533
|
-
"schemaVersion":
|
|
2530
|
+
"schemaVersion": 10
|
|
2534
2531
|
},
|
|
2535
2532
|
"componentConfigs": {
|
|
2536
2533
|
"badge": {
|
|
@@ -2224,10 +2224,7 @@
|
|
|
2224
2224
|
"--gradient-2": "linear-gradient(135deg, var(--color-special-400) 0%, var(--color-special-700) 100%)",
|
|
2225
2225
|
"--gradient-3": "linear-gradient(90deg, var(--color-brand-500) 0%, var(--color-accent-500) 100%)",
|
|
2226
2226
|
"--gradient-4": "linear-gradient(180deg, var(--color-canvas-200) 0%, var(--color-canvas-500) 100%)",
|
|
2227
|
-
"--columns-count": "12",
|
|
2228
2227
|
"--columns-max-width": "1440px",
|
|
2229
|
-
"--columns-gutter": "32px",
|
|
2230
|
-
"--columns-margin": "0px",
|
|
2231
2228
|
"--scrim-color": "var(--surface-neutral-lowest)",
|
|
2232
2229
|
"--scrim-opacity-low": "0.7",
|
|
2233
2230
|
"--scrim-opacity": "0.8",
|
|
@@ -2411,7 +2408,7 @@
|
|
|
2411
2408
|
"family": null
|
|
2412
2409
|
}
|
|
2413
2410
|
],
|
|
2414
|
-
"schemaVersion":
|
|
2411
|
+
"schemaVersion": 10,
|
|
2415
2412
|
"gradients": [
|
|
2416
2413
|
{
|
|
2417
2414
|
"variable": "--gradient-1",
|
|
@@ -2256,10 +2256,7 @@
|
|
|
2256
2256
|
"--gradient-2": "linear-gradient(135deg, var(--color-special-500) 0%, var(--color-brand-500) 100%)",
|
|
2257
2257
|
"--gradient-3": "linear-gradient(90deg, var(--color-accent-400) 0%, var(--color-accent-700) 100%)",
|
|
2258
2258
|
"--gradient-4": "linear-gradient(180deg, var(--color-canvas-600) 0%, var(--color-canvas-900) 100%)",
|
|
2259
|
-
"--columns-count": "12",
|
|
2260
2259
|
"--columns-max-width": "1440px",
|
|
2261
|
-
"--columns-gutter": "32px",
|
|
2262
|
-
"--columns-margin": "0px",
|
|
2263
2260
|
"--scrim-color": "var(--surface-neutral-lowest)",
|
|
2264
2261
|
"--scrim-opacity-low": "0.7",
|
|
2265
2262
|
"--scrim-opacity": "0.8",
|
|
@@ -2442,7 +2439,7 @@
|
|
|
2442
2439
|
"family": null
|
|
2443
2440
|
}
|
|
2444
2441
|
],
|
|
2445
|
-
"schemaVersion":
|
|
2442
|
+
"schemaVersion": 10,
|
|
2446
2443
|
"gradients": [
|
|
2447
2444
|
{
|
|
2448
2445
|
"variable": "--gradient-1",
|
|
@@ -2210,10 +2210,7 @@
|
|
|
2210
2210
|
"--gradient-2": "linear-gradient(135deg, var(--color-special-500) 0%, var(--color-brand-500) 100%)",
|
|
2211
2211
|
"--gradient-3": "linear-gradient(90deg, var(--color-brand-500) 0%, var(--color-accent-500) 100%)",
|
|
2212
2212
|
"--gradient-4": "linear-gradient(180deg, var(--color-canvas-200) 0%, var(--color-canvas-500) 100%)",
|
|
2213
|
-
"--columns-count": "12",
|
|
2214
2213
|
"--columns-max-width": "1440px",
|
|
2215
|
-
"--columns-gutter": "32px",
|
|
2216
|
-
"--columns-margin": "0px",
|
|
2217
2214
|
"--scrim-color": "var(--surface-neutral-lowest)",
|
|
2218
2215
|
"--scrim-opacity-low": "0.7",
|
|
2219
2216
|
"--scrim-opacity": "0.8",
|
|
@@ -2487,7 +2484,7 @@
|
|
|
2487
2484
|
"family": null
|
|
2488
2485
|
}
|
|
2489
2486
|
],
|
|
2490
|
-
"schemaVersion":
|
|
2487
|
+
"schemaVersion": 10
|
|
2491
2488
|
},
|
|
2492
2489
|
"componentConfigs": {
|
|
2493
2490
|
"badge": {
|
|
@@ -2210,10 +2210,7 @@
|
|
|
2210
2210
|
"--gradient-2": "linear-gradient(135deg, var(--color-special-400) 0%, var(--color-special-700) 100%)",
|
|
2211
2211
|
"--gradient-3": "linear-gradient(90deg, var(--color-brand-500) 0%, var(--color-accent-500) 100%)",
|
|
2212
2212
|
"--gradient-4": "linear-gradient(180deg, var(--color-canvas-200) 0%, var(--color-canvas-500) 100%)",
|
|
2213
|
-
"--columns-count": "12",
|
|
2214
2213
|
"--columns-max-width": "1440px",
|
|
2215
|
-
"--columns-gutter": "32px",
|
|
2216
|
-
"--columns-margin": "0px",
|
|
2217
2214
|
"--scrim-color": "var(--surface-neutral-lowest)",
|
|
2218
2215
|
"--scrim-opacity-low": "0.7",
|
|
2219
2216
|
"--scrim-opacity": "0.8",
|
|
@@ -2398,7 +2395,7 @@
|
|
|
2398
2395
|
"family": null
|
|
2399
2396
|
}
|
|
2400
2397
|
],
|
|
2401
|
-
"schemaVersion":
|
|
2398
|
+
"schemaVersion": 10,
|
|
2402
2399
|
"gradients": [
|
|
2403
2400
|
{
|
|
2404
2401
|
"variable": "--gradient-1",
|
|
@@ -2271,10 +2271,7 @@
|
|
|
2271
2271
|
"--gradient-2": "linear-gradient(135deg, var(--color-special-500) 0%, var(--color-brand-500) 100%)",
|
|
2272
2272
|
"--gradient-3": "linear-gradient(90deg, var(--color-brand-500) 0%, var(--color-accent-500) 100%)",
|
|
2273
2273
|
"--gradient-4": "linear-gradient(180deg, var(--color-canvas-600) 0%, var(--color-canvas-900) 100%)",
|
|
2274
|
-
"--columns-count": "12",
|
|
2275
2274
|
"--columns-max-width": "1440px",
|
|
2276
|
-
"--columns-gutter": "32px",
|
|
2277
|
-
"--columns-margin": "0px",
|
|
2278
2275
|
"--scrim-color": "var(--surface-neutral-lowest)",
|
|
2279
2276
|
"--scrim-opacity-low": "0.7",
|
|
2280
2277
|
"--scrim-opacity": "0.8",
|
|
@@ -2450,7 +2447,7 @@
|
|
|
2450
2447
|
"family": null
|
|
2451
2448
|
}
|
|
2452
2449
|
],
|
|
2453
|
-
"schemaVersion":
|
|
2450
|
+
"schemaVersion": 10,
|
|
2454
2451
|
"gradients": [
|
|
2455
2452
|
{
|
|
2456
2453
|
"variable": "--gradient-1",
|