@motion-proto/live-tokens 0.78.0 → 0.79.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-check-compliance/SKILL.md +60 -31
- package/.claude/skills/live-tokens-create-component/SKILL.md +23 -28
- package/.claude/skills/live-tokens-create-component/references/contract-tests.md +61 -0
- package/.claude/skills/live-tokens-create-component/references/sketch-mode.md +2 -2
- package/.claude/skills/live-tokens-create-component/references/token-naming.md +6 -15
- package/.claude/skills/live-tokens-create-page/SKILL.md +6 -4
- package/.claude/skills/live-tokens-create-theme/references/design-directions.md +1 -1
- package/.claude/skills/live-tokens-pick-component/SKILL.md +3 -3
- package/.claude/skills/live-tokens-set-colors/references/color-anchors.md +1 -1
- package/.claude/skills/live-tokens-set-geometry/SKILL.md +1 -1
- package/.claude/skills/live-tokens-set-geometry/references/geometry-anchors.md +1 -1
- package/CHANGELOG.md +231 -0
- package/README.md +9 -15
- package/bin/check-component.mjs +152 -551
- package/bin/check-page.mjs +55 -541
- package/bin/cli.mjs +59 -13
- package/bin/contractRunner.mjs +37 -91
- package/bin/lib/catalogue.mjs +161 -34
- package/bin/lib/componentSource.mjs +152 -0
- package/bin/lib/cssValues.mjs +9 -0
- package/bin/lib/dataDir.mjs +126 -0
- package/bin/lib/findings.mjs +103 -12
- package/bin/lib/fixers.mjs +64 -0
- package/bin/lib/geometry.mjs +92 -0
- package/bin/lib/pageSource.mjs +230 -0
- package/bin/lib/report.mjs +57 -59
- package/bin/lib/tokenVocabulary.mjs +104 -34
- package/bin/rules/componentStructure.mjs +344 -0
- package/bin/rules/componentUse.mjs +313 -0
- package/bin/rules/importsAndRoutes.mjs +136 -0
- package/bin/rules/testRuns.mjs +122 -0
- package/bin/rules/tokens.mjs +363 -0
- package/bin/setup-claude.mjs +1 -2
- package/dist-plugin/{chunk-PDNL4NC5.js → chunk-D4WRIKEZ.js} +7 -2
- package/dist-plugin/{chunk-SWXRVZKT.js → chunk-REBHE3ZM.js} +414 -1
- package/dist-plugin/index.cjs +432 -15
- package/dist-plugin/index.js +8 -9
- package/dist-plugin/migrateData/index.cjs +422 -4
- package/dist-plugin/migrateData/index.js +2 -2
- package/dist-plugin/setColors/index.cjs +414 -1
- package/dist-plugin/setColors/index.d.cts +1 -1
- package/dist-plugin/setColors/index.d.ts +1 -1
- package/dist-plugin/setColors/index.js +1 -1
- package/dist-plugin/setGeometry/index.cjs +423 -13
- package/dist-plugin/setGeometry/index.d.cts +3 -3
- package/dist-plugin/setGeometry/index.d.ts +3 -3
- package/dist-plugin/setGeometry/index.js +10 -13
- package/dist-plugin/setType/index.d.cts +1 -1
- package/dist-plugin/setType/index.d.ts +1 -1
- package/dist-plugin/{themeTypes-BxRtuN5V.d.cts → themeTypes-B8_Idrp4.d.cts} +2 -2
- package/dist-plugin/{themeTypes-BxRtuN5V.d.ts → themeTypes-B8_Idrp4.d.ts} +2 -2
- package/package.json +2 -2
- package/src/editor/component-editor/CalloutEditor.svelte +2 -2
- package/src/editor/component-editor/CollapsibleSectionEditor.svelte +14 -15
- package/src/editor/component-editor/CornerBadgeEditor.svelte +14 -14
- package/src/editor/component-editor/DialogEditor.svelte +5 -5
- package/src/editor/component-editor/InlineEditActionsEditor.svelte +2 -2
- package/src/editor/component-editor/RadioButtonEditor.svelte +21 -21
- package/src/editor/component-editor/SectionDividerEditor.svelte +7 -7
- package/src/editor/component-editor/SegmentedControlEditor.svelte +5 -5
- package/src/editor/component-editor/SideNavigationEditor.svelte +25 -25
- package/src/editor/component-editor/TabBarEditor.svelte +6 -6
- package/src/editor/component-editor/TableEditor.svelte +6 -6
- package/src/editor/component-editor/ToggleEditor.svelte +2 -2
- package/src/editor/component-editor/index.ts +3 -0
- package/src/editor/component-editor/registry.ts +57 -1
- package/src/editor/component-editor/scaffolding/TokenLayout.svelte +14 -14
- package/src/editor/component-editor/scaffolding/VariantGroup.svelte +3 -0
- package/src/editor/component-editor/scaffolding/types.ts +15 -0
- package/src/editor/core/components/adjustAliases.ts +4 -4
- package/src/editor/core/components/aliasKinds.ts +20 -19
- package/src/editor/core/sketch/sketchLayer.ts +3 -3
- package/src/editor/core/themes/migrateComponentConfig.ts +14 -6
- package/src/editor/core/themes/migrations/2026-09-13-badge-brand.ts +42 -0
- package/src/editor/core/themes/migrations/2026-09-13-collapsiblesection-open.ts +33 -0
- package/src/editor/core/themes/migrations/2026-09-13-cornerbadge-prefix.ts +70 -0
- package/src/editor/core/themes/migrations/2026-09-13-hairline.ts +92 -0
- package/src/editor/core/themes/migrations/2026-09-13-indicator.ts +54 -0
- package/src/editor/core/themes/migrations/2026-09-13-sectiondivider-surface.ts +36 -0
- package/src/editor/core/themes/migrations/2026-09-13-selected-state.ts +124 -0
- package/src/editor/core/themes/migrations/2026-09-13-toggle-label.ts +31 -0
- package/src/editor/core/themes/migrations/index.ts +16 -0
- package/src/editor/core/themes/themeService.ts +3 -3
- package/src/editor/core/themes/themeTypes.ts +13 -15
- package/src/editor/docs/Docs.svelte +1 -1
- package/src/editor/docs/content/light-and-dark.md +3 -3
- package/src/editor/docs/content.generated.ts +1 -1
- package/src/editor/index.ts +1 -0
- package/src/editor/overlay/LiveEditorOverlay.svelte +15 -0
- package/src/editor/skill-atlas/SkillAtlas.svelte +4 -4
- package/src/editor/skill-atlas/TreeNodeCard.svelte +4 -4
- package/src/editor/skill-atlas/skillSources.generated.ts +11 -14
- package/src/editor/skill-atlas/skillTrees.ts +1 -3
- package/src/editor/skill-atlas/trees/check-compliance.ts +258 -93
- package/src/editor/skill-atlas/trees/create-component.ts +73 -62
- package/src/editor/skill-atlas/trees/create-page.ts +38 -17
- package/src/editor/skill-atlas/trees/pick-component.ts +3 -3
- package/src/editor/skill-atlas/trees/set-geometry.ts +1 -1
- package/src/editor/ui/UIPaletteSelector.svelte +11 -15
- package/src/editor/ui/variantScales.ts +8 -8
- package/src/live-tokens/data/themes/autumn.json +188 -188
- package/src/live-tokens/data/themes/halloween.json +188 -188
- package/src/live-tokens/data/themes/midnight-study.json +245 -245
- package/src/live-tokens/data/themes/ocean.json +188 -188
- package/src/live-tokens/data/themes/royal-velvet.json +188 -188
- package/src/live-tokens/data/themes/sketchy.json +188 -188
- package/src/live-tokens/data/themes/spring-meadow.json +188 -188
- package/src/live-tokens/data/themes/sunset.json +188 -188
- package/src/system/components/Badge.svelte +27 -23
- package/src/system/components/Button.svelte +13 -7
- package/src/system/components/Callout.svelte +16 -11
- package/src/system/components/Card.svelte +22 -15
- package/src/system/components/CodeSnippet.svelte +10 -6
- package/src/system/components/CollapsibleSection.svelte +68 -63
- package/src/system/components/CornerBadge.svelte +78 -72
- package/src/system/components/Dialog.svelte +21 -18
- package/src/system/components/IconButton.svelte +13 -9
- package/src/system/components/Image.svelte +14 -8
- package/src/system/components/ImageLightbox.svelte +10 -6
- package/src/system/components/InlineEditActions.svelte +17 -14
- package/src/system/components/Input.svelte +13 -7
- package/src/system/components/MenuSelect.svelte +13 -7
- package/src/system/components/Notification.svelte +17 -11
- package/src/system/components/Panel.svelte +13 -6
- package/src/system/components/ProgressBar.svelte +10 -5
- package/src/system/components/RadioButton.svelte +33 -30
- package/src/system/components/SectionDivider.svelte +28 -21
- package/src/system/components/SegmentedControl.svelte +27 -23
- package/src/system/components/SideNavigation.svelte +175 -171
- package/src/system/components/Slider.svelte +11 -7
- package/src/system/components/TabBar.svelte +53 -49
- package/src/system/components/Table.svelte +20 -15
- package/src/system/components/Toggle.svelte +14 -10
- package/src/system/components/Tooltip.svelte +10 -6
- package/src/system/styles/CONVENTIONS.md +3 -4
- package/src/testing-js/chunk-3UKGXCDL.js +48 -0
- package/src/testing-js/chunk-3UKGXCDL.js.map +1 -0
- package/src/testing-js/{chunk-FAFOAWYL.js → chunk-Q3YIAAG3.js} +17 -3
- package/src/testing-js/chunk-Q3YIAAG3.js.map +1 -0
- package/src/testing-js/{chunk-GNIUPIU2.js → chunk-U7OJE5DU.js} +18 -18
- package/src/testing-js/chunk-U7OJE5DU.js.map +1 -0
- package/src/testing-js/{chunk-4JQX6WWL.js → chunk-ZMZQZ33J.js} +474 -166
- package/src/testing-js/chunk-ZMZQZ33J.js.map +1 -0
- package/src/testing-js/component-behavior.contract.js +155 -0
- package/src/testing-js/component-behavior.contract.js.map +1 -0
- package/src/testing-js/component-editor.contract.js +6 -4
- package/src/testing-js/component-editor.contract.js.map +1 -1
- package/src/testing-js/component-render.contract.js +14 -10
- package/src/testing-js/component-render.contract.js.map +1 -1
- package/src/testing-js/index.d.ts +44 -4
- package/src/testing-js/index.js +13 -7
- package/src/testing-js/index.js.map +1 -1
- package/src/testing-js/page-compliance.contract.js +48 -10
- package/src/testing-js/page-compliance.contract.js.map +1 -1
- package/src/testing-js/registry.contract.js +5 -3
- package/src/testing-js/registry.contract.js.map +1 -1
- package/src/testing-js/{vitest-C-wNWcoA.d.ts → vitest-BMLIbDs2.d.ts} +8 -2
- package/src/testing-js/vitest.d.ts +1 -1
- package/src/testing-js/vitest.js +2 -1
- package/template/package.json +1 -1
- package/.claude/skills/live-tokens-create-component/SKILL copy.md +0 -196
- package/.claude/skills/live-tokens-fix-findings/SKILL.md +0 -105
- package/src/editor/skill-atlas/trees/fix-findings.ts +0 -504
- package/src/testing-js/chunk-4JQX6WWL.js.map +0 -1
- package/src/testing-js/chunk-FAFOAWYL.js.map +0 -1
- package/src/testing-js/chunk-GNIUPIU2.js.map +0 -1
|
@@ -65,11 +65,12 @@ var KIND_RULES = [
|
|
|
65
65
|
},
|
|
66
66
|
{ kind: "radius", suffix: ["-radius"], prefix: ["--radius-"] },
|
|
67
67
|
// Three stroke roles share the `--border-width-*` scale: a border encloses,
|
|
68
|
-
// a
|
|
69
|
-
// on its own, so a suffix has to say which line it names.
|
|
70
|
-
{ kind: "
|
|
71
|
-
{ kind: "
|
|
72
|
-
{ kind: "
|
|
68
|
+
// a hairline separates, an indicator emphasises. `set-geometry` moves each
|
|
69
|
+
// role on its own, so a suffix has to say which line it names.
|
|
70
|
+
{ kind: "hairline-width", suffix: ["-hairline-width"] },
|
|
71
|
+
{ kind: "indicator-width", suffix: ["-indicator-width"] },
|
|
72
|
+
{ kind: "track-height", suffix: ["-track-height"] },
|
|
73
|
+
{ kind: "hairline-inset", suffix: ["-hairline-inset"] },
|
|
73
74
|
{ kind: "dot-size", suffix: ["-dot-size"] },
|
|
74
75
|
{ kind: "blur", suffix: ["-blur"], prefix: ["--blur-"] },
|
|
75
76
|
{ kind: "scale", suffix: ["-scale"], prefix: ["--scale-"] },
|
|
@@ -78,12 +79,11 @@ var KIND_RULES = [
|
|
|
78
79
|
{ kind: "gap", suffix: ["-gap"] },
|
|
79
80
|
{ kind: "duration", suffix: ["-duration"], prefix: ["--duration-"] },
|
|
80
81
|
{ kind: "easing", suffix: ["-easing"], prefix: ["--ease-"] },
|
|
81
|
-
{ kind: "accent-width", suffix: ["-accent-width", "-indicator-width"] },
|
|
82
82
|
{ kind: "border-width", suffix: ["-border-width"], prefix: ["--border-width-"] },
|
|
83
83
|
{ kind: "border", suffix: ["-border"], prefix: ["--border-"] },
|
|
84
84
|
// A dimension with no more specific name behind it — a panel's width, an
|
|
85
85
|
// avatar's size. Last of the geometry rules, so every `-border-width`,
|
|
86
|
-
// `-
|
|
86
|
+
// `-track-height`, `-icon-size` and the rest claim their token first.
|
|
87
87
|
{ kind: "length", suffix: ["-width", "-height", "-size"] },
|
|
88
88
|
// Fills. A tint is a wash over a surface, so it takes the surface picker: the
|
|
89
89
|
// full palette with an alpha, not just the tint stops it defaults to.
|
|
@@ -92,11 +92,8 @@ var KIND_RULES = [
|
|
|
92
92
|
suffix: [
|
|
93
93
|
"-surface",
|
|
94
94
|
"-fill",
|
|
95
|
-
"-divider",
|
|
96
|
-
"-background",
|
|
97
95
|
"-indicator",
|
|
98
96
|
"-thumb",
|
|
99
|
-
"-accent",
|
|
100
97
|
"-color",
|
|
101
98
|
"-tint",
|
|
102
99
|
"-opacity"
|
|
@@ -181,8 +178,8 @@ var SCALES = {
|
|
|
181
178
|
padding: { steps: SPACE_STEPS, settable: SPACE_SETTABLE, family: SPACE_FAMILY },
|
|
182
179
|
gap: { steps: SPACE_STEPS, settable: SPACE_SETTABLE, family: SPACE_FAMILY },
|
|
183
180
|
"border-width": STROKE_SCALE,
|
|
184
|
-
"
|
|
185
|
-
"
|
|
181
|
+
"hairline-width": STROKE_SCALE,
|
|
182
|
+
"indicator-width": STROKE_SCALE
|
|
186
183
|
};
|
|
187
184
|
var TOKEN_NAME = /^--[a-z0-9-]+$/;
|
|
188
185
|
function stepsFor(op, variable, aliases) {
|
|
@@ -1267,6 +1264,411 @@ var componentMigration_2026_09_07_strokeRoleRenames = {
|
|
|
1267
1264
|
}
|
|
1268
1265
|
};
|
|
1269
1266
|
|
|
1267
|
+
// src/editor/core/themes/migrations/2026-09-13-selected-state.ts
|
|
1268
|
+
var RADIOBUTTON_SUFFIXES = [
|
|
1269
|
+
"dot-border-color",
|
|
1270
|
+
"dot-border-width",
|
|
1271
|
+
"dot-fill",
|
|
1272
|
+
"dot-size",
|
|
1273
|
+
"label",
|
|
1274
|
+
"label-font-family",
|
|
1275
|
+
"label-font-size",
|
|
1276
|
+
"label-font-weight",
|
|
1277
|
+
"label-line-height"
|
|
1278
|
+
];
|
|
1279
|
+
var TABBAR_SUFFIXES = [
|
|
1280
|
+
"border",
|
|
1281
|
+
"icon-size",
|
|
1282
|
+
"indicator-width",
|
|
1283
|
+
"padding",
|
|
1284
|
+
"surface",
|
|
1285
|
+
"tab-border-color",
|
|
1286
|
+
"tab-border-width",
|
|
1287
|
+
"tab-bottom-radius",
|
|
1288
|
+
"tab-top-radius",
|
|
1289
|
+
"text",
|
|
1290
|
+
"text-font-family",
|
|
1291
|
+
"text-font-size",
|
|
1292
|
+
"text-font-weight",
|
|
1293
|
+
"text-line-height"
|
|
1294
|
+
];
|
|
1295
|
+
var SIDENAVIGATION_SUFFIXES = {
|
|
1296
|
+
title: [
|
|
1297
|
+
"accent",
|
|
1298
|
+
"accent-width",
|
|
1299
|
+
"border",
|
|
1300
|
+
"border-width",
|
|
1301
|
+
"label",
|
|
1302
|
+
"label-font-family",
|
|
1303
|
+
"label-font-size",
|
|
1304
|
+
"label-font-weight",
|
|
1305
|
+
"label-line-height",
|
|
1306
|
+
"padding",
|
|
1307
|
+
"surface"
|
|
1308
|
+
],
|
|
1309
|
+
section: [
|
|
1310
|
+
"accent",
|
|
1311
|
+
"accent-width",
|
|
1312
|
+
"surface",
|
|
1313
|
+
"text",
|
|
1314
|
+
"text-font-family",
|
|
1315
|
+
"text-font-size",
|
|
1316
|
+
"text-font-weight",
|
|
1317
|
+
"text-line-height"
|
|
1318
|
+
],
|
|
1319
|
+
item: [
|
|
1320
|
+
"accent",
|
|
1321
|
+
"accent-width",
|
|
1322
|
+
"padding",
|
|
1323
|
+
"surface",
|
|
1324
|
+
"text",
|
|
1325
|
+
"text-font-family",
|
|
1326
|
+
"text-font-size",
|
|
1327
|
+
"text-font-weight",
|
|
1328
|
+
"text-line-height"
|
|
1329
|
+
],
|
|
1330
|
+
footer: [
|
|
1331
|
+
"accent",
|
|
1332
|
+
"accent-width",
|
|
1333
|
+
"gap",
|
|
1334
|
+
"icon",
|
|
1335
|
+
"icon-size",
|
|
1336
|
+
"padding",
|
|
1337
|
+
"surface",
|
|
1338
|
+
"text",
|
|
1339
|
+
"text-font-family",
|
|
1340
|
+
"text-font-size",
|
|
1341
|
+
"text-font-weight",
|
|
1342
|
+
"text-line-height"
|
|
1343
|
+
]
|
|
1344
|
+
};
|
|
1345
|
+
var RENAMES3 = {
|
|
1346
|
+
radiobutton: Object.fromEntries(
|
|
1347
|
+
RADIOBUTTON_SUFFIXES.map((s) => [`--radiobutton-active-${s}`, `--radiobutton-selected-${s}`])
|
|
1348
|
+
),
|
|
1349
|
+
tabbar: Object.fromEntries(
|
|
1350
|
+
TABBAR_SUFFIXES.map((s) => [`--tabbar-active-${s}`, `--tabbar-selected-${s}`])
|
|
1351
|
+
),
|
|
1352
|
+
sidenavigation: Object.fromEntries(
|
|
1353
|
+
Object.entries(SIDENAVIGATION_SUFFIXES).flatMap(
|
|
1354
|
+
([part, suffixes]) => suffixes.map((s) => [
|
|
1355
|
+
`--sidenavigation-${part}-active-${s}`,
|
|
1356
|
+
`--sidenavigation-${part}-selected-${s}`
|
|
1357
|
+
])
|
|
1358
|
+
)
|
|
1359
|
+
)
|
|
1360
|
+
};
|
|
1361
|
+
var componentMigration_2026_09_13_selectedState = {
|
|
1362
|
+
id: "2026-09-13-selected-state",
|
|
1363
|
+
fromVersion: 27,
|
|
1364
|
+
toVersion: 28,
|
|
1365
|
+
appliesTo: "component-config",
|
|
1366
|
+
apply(rawVars, meta) {
|
|
1367
|
+
const renames = meta.component ? RENAMES3[meta.component] : void 0;
|
|
1368
|
+
if (!renames) return { ...rawVars };
|
|
1369
|
+
const out = {};
|
|
1370
|
+
for (const [key, value] of Object.entries(rawVars)) {
|
|
1371
|
+
out[renames[key] ?? key] = value;
|
|
1372
|
+
}
|
|
1373
|
+
return out;
|
|
1374
|
+
}
|
|
1375
|
+
};
|
|
1376
|
+
|
|
1377
|
+
// src/editor/core/themes/migrations/2026-09-13-hairline.ts
|
|
1378
|
+
var COLLAPSIBLESECTION_SUFFIXES = [
|
|
1379
|
+
"surface",
|
|
1380
|
+
"hairline-color",
|
|
1381
|
+
"padding",
|
|
1382
|
+
"label",
|
|
1383
|
+
"label-font-family",
|
|
1384
|
+
"label-font-size",
|
|
1385
|
+
"label-font-weight",
|
|
1386
|
+
"label-line-height",
|
|
1387
|
+
"icon",
|
|
1388
|
+
"icon-size"
|
|
1389
|
+
];
|
|
1390
|
+
var COLLAPSIBLESECTION_STATES = ["default", "hover"];
|
|
1391
|
+
var RENAMES4 = {
|
|
1392
|
+
dialog: {
|
|
1393
|
+
"--dialog-header-divider": "--dialog-header-hairline-color",
|
|
1394
|
+
"--dialog-header-divider-width": "--dialog-header-hairline-width",
|
|
1395
|
+
"--dialog-footer-divider": "--dialog-footer-hairline-color",
|
|
1396
|
+
"--dialog-footer-divider-width": "--dialog-footer-hairline-width"
|
|
1397
|
+
},
|
|
1398
|
+
table: {
|
|
1399
|
+
"--table-default-header-divider": "--table-default-header-hairline-color",
|
|
1400
|
+
"--table-default-header-divider-width": "--table-default-header-hairline-width",
|
|
1401
|
+
"--table-default-row-divider": "--table-default-row-hairline-color",
|
|
1402
|
+
"--table-default-row-divider-width": "--table-default-row-hairline-width",
|
|
1403
|
+
"--table-default-column-divider": "--table-default-column-hairline-color",
|
|
1404
|
+
"--table-default-column-divider-width": "--table-default-column-hairline-width"
|
|
1405
|
+
},
|
|
1406
|
+
tabbar: {
|
|
1407
|
+
"--tabbar-bar-divider": "--tabbar-bar-hairline-color",
|
|
1408
|
+
"--tabbar-bar-divider-thickness": "--tabbar-bar-hairline-width"
|
|
1409
|
+
},
|
|
1410
|
+
segmentedcontrol: {
|
|
1411
|
+
"--segmentedcontrol-divider-color": "--segmentedcontrol-hairline-color",
|
|
1412
|
+
"--segmentedcontrol-divider-thickness": "--segmentedcontrol-hairline-width",
|
|
1413
|
+
"--segmentedcontrol-divider-inset": "--segmentedcontrol-hairline-inset",
|
|
1414
|
+
"--segmentedcontrol-small-divider-thickness": "--segmentedcontrol-small-hairline-width",
|
|
1415
|
+
"--segmentedcontrol-small-divider-inset": "--segmentedcontrol-small-hairline-inset"
|
|
1416
|
+
},
|
|
1417
|
+
collapsiblesection: {
|
|
1418
|
+
...Object.fromEntries(
|
|
1419
|
+
COLLAPSIBLESECTION_STATES.flatMap((state) => [
|
|
1420
|
+
...COLLAPSIBLESECTION_SUFFIXES.map((s) => [
|
|
1421
|
+
`--collapsiblesection-divider-${state}-${s}`,
|
|
1422
|
+
`--collapsiblesection-hairline-${state}-${s}`
|
|
1423
|
+
]),
|
|
1424
|
+
[
|
|
1425
|
+
`--collapsiblesection-divider-${state}-hairline-thickness`,
|
|
1426
|
+
`--collapsiblesection-hairline-${state}-hairline-width`
|
|
1427
|
+
]
|
|
1428
|
+
])
|
|
1429
|
+
),
|
|
1430
|
+
"--collapsiblesection-divider-expanded-padding": "--collapsiblesection-hairline-expanded-padding"
|
|
1431
|
+
},
|
|
1432
|
+
sectiondivider: {
|
|
1433
|
+
"--sectiondivider-lg-hairline-thickness": "--sectiondivider-lg-hairline-width",
|
|
1434
|
+
"--sectiondivider-md-hairline-thickness": "--sectiondivider-md-hairline-width",
|
|
1435
|
+
"--sectiondivider-sm-hairline-thickness": "--sectiondivider-sm-hairline-width"
|
|
1436
|
+
}
|
|
1437
|
+
};
|
|
1438
|
+
var componentMigration_2026_09_13_hairline = {
|
|
1439
|
+
id: "2026-09-13-hairline",
|
|
1440
|
+
fromVersion: 28,
|
|
1441
|
+
toVersion: 29,
|
|
1442
|
+
appliesTo: "component-config",
|
|
1443
|
+
apply(rawVars, meta) {
|
|
1444
|
+
const renames = meta.component ? RENAMES4[meta.component] : void 0;
|
|
1445
|
+
if (!renames) return { ...rawVars };
|
|
1446
|
+
const out = {};
|
|
1447
|
+
for (const [key, value] of Object.entries(rawVars)) {
|
|
1448
|
+
out[renames[key] ?? key] = value;
|
|
1449
|
+
}
|
|
1450
|
+
return out;
|
|
1451
|
+
}
|
|
1452
|
+
};
|
|
1453
|
+
|
|
1454
|
+
// src/editor/core/themes/migrations/2026-09-13-indicator.ts
|
|
1455
|
+
var SIDENAVIGATION_PARTS = ["title", "section", "item", "footer"];
|
|
1456
|
+
var SIDENAVIGATION_STATES = ["default", "hover", "selected"];
|
|
1457
|
+
var CALLOUT_VARIANTS = ["info", "success", "warning", "danger"];
|
|
1458
|
+
var RENAMES5 = {
|
|
1459
|
+
sidenavigation: Object.fromEntries(
|
|
1460
|
+
SIDENAVIGATION_PARTS.flatMap(
|
|
1461
|
+
(part) => SIDENAVIGATION_STATES.flatMap((state) => [
|
|
1462
|
+
[
|
|
1463
|
+
`--sidenavigation-${part}-${state}-accent`,
|
|
1464
|
+
`--sidenavigation-${part}-${state}-indicator`
|
|
1465
|
+
],
|
|
1466
|
+
[
|
|
1467
|
+
`--sidenavigation-${part}-${state}-accent-width`,
|
|
1468
|
+
`--sidenavigation-${part}-${state}-indicator-width`
|
|
1469
|
+
]
|
|
1470
|
+
])
|
|
1471
|
+
)
|
|
1472
|
+
),
|
|
1473
|
+
callout: Object.fromEntries(
|
|
1474
|
+
CALLOUT_VARIANTS.map((v) => [
|
|
1475
|
+
`--callout-${v}-accent-width`,
|
|
1476
|
+
`--callout-${v}-indicator-width`
|
|
1477
|
+
])
|
|
1478
|
+
)
|
|
1479
|
+
};
|
|
1480
|
+
var componentMigration_2026_09_13_indicator = {
|
|
1481
|
+
id: "2026-09-13-indicator",
|
|
1482
|
+
fromVersion: 29,
|
|
1483
|
+
toVersion: 30,
|
|
1484
|
+
appliesTo: "component-config",
|
|
1485
|
+
apply(rawVars, meta) {
|
|
1486
|
+
const renames = meta.component ? RENAMES5[meta.component] : void 0;
|
|
1487
|
+
if (!renames) return { ...rawVars };
|
|
1488
|
+
const out = {};
|
|
1489
|
+
for (const [key, value] of Object.entries(rawVars)) {
|
|
1490
|
+
out[renames[key] ?? key] = value;
|
|
1491
|
+
}
|
|
1492
|
+
return out;
|
|
1493
|
+
}
|
|
1494
|
+
};
|
|
1495
|
+
|
|
1496
|
+
// src/editor/core/themes/migrations/2026-09-13-sectiondivider-surface.ts
|
|
1497
|
+
var SECTIONDIVIDER_VARIANTS = ["lg", "md", "sm"];
|
|
1498
|
+
var RENAMES6 = {
|
|
1499
|
+
sectiondivider: Object.fromEntries(
|
|
1500
|
+
SECTIONDIVIDER_VARIANTS.map((v) => [
|
|
1501
|
+
`--sectiondivider-${v}-background`,
|
|
1502
|
+
`--sectiondivider-${v}-surface`
|
|
1503
|
+
])
|
|
1504
|
+
)
|
|
1505
|
+
};
|
|
1506
|
+
var componentMigration_2026_09_13_sectiondividerSurface = {
|
|
1507
|
+
id: "2026-09-13-sectiondivider-surface",
|
|
1508
|
+
fromVersion: 30,
|
|
1509
|
+
toVersion: 31,
|
|
1510
|
+
appliesTo: "component-config",
|
|
1511
|
+
apply(rawVars, meta) {
|
|
1512
|
+
const renames = meta.component ? RENAMES6[meta.component] : void 0;
|
|
1513
|
+
if (!renames) return { ...rawVars };
|
|
1514
|
+
const out = {};
|
|
1515
|
+
for (const [key, value] of Object.entries(rawVars)) {
|
|
1516
|
+
out[renames[key] ?? key] = value;
|
|
1517
|
+
}
|
|
1518
|
+
return out;
|
|
1519
|
+
}
|
|
1520
|
+
};
|
|
1521
|
+
|
|
1522
|
+
// src/editor/core/themes/migrations/2026-09-13-cornerbadge-prefix.ts
|
|
1523
|
+
var RENAMES7 = {
|
|
1524
|
+
cornerbadge: {
|
|
1525
|
+
"--corner-badge-margin": "--cornerbadge-margin",
|
|
1526
|
+
"--corner-badge-outer-radius": "--cornerbadge-outer-radius",
|
|
1527
|
+
"--corner-badge-inner-radius": "--cornerbadge-inner-radius",
|
|
1528
|
+
"--corner-badge-h-axis-radius": "--cornerbadge-h-axis-radius",
|
|
1529
|
+
"--corner-badge-v-axis-radius": "--cornerbadge-v-axis-radius",
|
|
1530
|
+
"--corner-badge-padding": "--cornerbadge-padding",
|
|
1531
|
+
"--corner-badge-text-font-family": "--cornerbadge-text-font-family",
|
|
1532
|
+
"--corner-badge-text-font-size": "--cornerbadge-text-font-size",
|
|
1533
|
+
"--corner-badge-text-font-weight": "--cornerbadge-text-font-weight",
|
|
1534
|
+
"--corner-badge-text-line-height": "--cornerbadge-text-line-height",
|
|
1535
|
+
"--corner-badge-primary-surface": "--cornerbadge-primary-surface",
|
|
1536
|
+
"--corner-badge-primary-border": "--cornerbadge-primary-border",
|
|
1537
|
+
"--corner-badge-primary-text": "--cornerbadge-primary-text",
|
|
1538
|
+
"--corner-badge-accent-surface": "--cornerbadge-accent-surface",
|
|
1539
|
+
"--corner-badge-accent-border": "--cornerbadge-accent-border",
|
|
1540
|
+
"--corner-badge-accent-text": "--cornerbadge-accent-text",
|
|
1541
|
+
"--corner-badge-neutral-surface": "--cornerbadge-neutral-surface",
|
|
1542
|
+
"--corner-badge-neutral-border": "--cornerbadge-neutral-border",
|
|
1543
|
+
"--corner-badge-neutral-text": "--cornerbadge-neutral-text",
|
|
1544
|
+
"--corner-badge-alternate-surface": "--cornerbadge-alternate-surface",
|
|
1545
|
+
"--corner-badge-alternate-border": "--cornerbadge-alternate-border",
|
|
1546
|
+
"--corner-badge-alternate-text": "--cornerbadge-alternate-text",
|
|
1547
|
+
"--corner-badge-canvas-surface": "--cornerbadge-canvas-surface",
|
|
1548
|
+
"--corner-badge-canvas-border": "--cornerbadge-canvas-border",
|
|
1549
|
+
"--corner-badge-canvas-text": "--cornerbadge-canvas-text",
|
|
1550
|
+
"--corner-badge-special-surface": "--cornerbadge-special-surface",
|
|
1551
|
+
"--corner-badge-special-border": "--cornerbadge-special-border",
|
|
1552
|
+
"--corner-badge-special-text": "--cornerbadge-special-text",
|
|
1553
|
+
"--corner-badge-success-surface": "--cornerbadge-success-surface",
|
|
1554
|
+
"--corner-badge-success-border": "--cornerbadge-success-border",
|
|
1555
|
+
"--corner-badge-success-text": "--cornerbadge-success-text",
|
|
1556
|
+
"--corner-badge-warning-surface": "--cornerbadge-warning-surface",
|
|
1557
|
+
"--corner-badge-warning-border": "--cornerbadge-warning-border",
|
|
1558
|
+
"--corner-badge-warning-text": "--cornerbadge-warning-text",
|
|
1559
|
+
"--corner-badge-danger-surface": "--cornerbadge-danger-surface",
|
|
1560
|
+
"--corner-badge-danger-border": "--cornerbadge-danger-border",
|
|
1561
|
+
"--corner-badge-danger-text": "--cornerbadge-danger-text",
|
|
1562
|
+
"--corner-badge-info-surface": "--cornerbadge-info-surface",
|
|
1563
|
+
"--corner-badge-info-border": "--cornerbadge-info-border",
|
|
1564
|
+
"--corner-badge-info-text": "--cornerbadge-info-text"
|
|
1565
|
+
}
|
|
1566
|
+
};
|
|
1567
|
+
var componentMigration_2026_09_13_cornerbadgePrefix = {
|
|
1568
|
+
id: "2026-09-13-cornerbadge-prefix",
|
|
1569
|
+
fromVersion: 31,
|
|
1570
|
+
toVersion: 32,
|
|
1571
|
+
appliesTo: "component-config",
|
|
1572
|
+
apply(rawVars, meta) {
|
|
1573
|
+
const renames = meta.component ? RENAMES7[meta.component] : void 0;
|
|
1574
|
+
if (!renames) return { ...rawVars };
|
|
1575
|
+
const out = {};
|
|
1576
|
+
for (const [key, value] of Object.entries(rawVars)) {
|
|
1577
|
+
out[renames[key] ?? key] = value;
|
|
1578
|
+
}
|
|
1579
|
+
return out;
|
|
1580
|
+
}
|
|
1581
|
+
};
|
|
1582
|
+
|
|
1583
|
+
// src/editor/core/themes/migrations/2026-09-13-toggle-label.ts
|
|
1584
|
+
var RENAMES8 = {
|
|
1585
|
+
toggle: {
|
|
1586
|
+
"--toggle-label-text": "--toggle-label",
|
|
1587
|
+
"--toggle-disabled-label-text": "--toggle-disabled-label"
|
|
1588
|
+
}
|
|
1589
|
+
};
|
|
1590
|
+
var componentMigration_2026_09_13_toggleLabel = {
|
|
1591
|
+
id: "2026-09-13-toggle-label",
|
|
1592
|
+
fromVersion: 32,
|
|
1593
|
+
toVersion: 33,
|
|
1594
|
+
appliesTo: "component-config",
|
|
1595
|
+
apply(rawVars, meta) {
|
|
1596
|
+
const renames = meta.component ? RENAMES8[meta.component] : void 0;
|
|
1597
|
+
if (!renames) return { ...rawVars };
|
|
1598
|
+
const out = {};
|
|
1599
|
+
for (const [key, value] of Object.entries(rawVars)) {
|
|
1600
|
+
out[renames[key] ?? key] = value;
|
|
1601
|
+
}
|
|
1602
|
+
return out;
|
|
1603
|
+
}
|
|
1604
|
+
};
|
|
1605
|
+
|
|
1606
|
+
// src/editor/core/themes/migrations/2026-09-13-collapsiblesection-open.ts
|
|
1607
|
+
var RENAMES9 = {
|
|
1608
|
+
collapsiblesection: {
|
|
1609
|
+
"--collapsiblesection-chromeless-expanded-padding": "--collapsiblesection-chromeless-open-padding",
|
|
1610
|
+
"--collapsiblesection-hairline-expanded-padding": "--collapsiblesection-hairline-open-padding",
|
|
1611
|
+
"--collapsiblesection-container-expanded-surface": "--collapsiblesection-container-open-surface",
|
|
1612
|
+
"--collapsiblesection-container-expanded-padding": "--collapsiblesection-container-open-padding"
|
|
1613
|
+
}
|
|
1614
|
+
};
|
|
1615
|
+
var componentMigration_2026_09_13_collapsiblesectionOpen = {
|
|
1616
|
+
id: "2026-09-13-collapsiblesection-open",
|
|
1617
|
+
fromVersion: 33,
|
|
1618
|
+
toVersion: 34,
|
|
1619
|
+
appliesTo: "component-config",
|
|
1620
|
+
apply(rawVars, meta) {
|
|
1621
|
+
const renames = meta.component ? RENAMES9[meta.component] : void 0;
|
|
1622
|
+
if (!renames) return { ...rawVars };
|
|
1623
|
+
const out = {};
|
|
1624
|
+
for (const [key, value] of Object.entries(rawVars)) {
|
|
1625
|
+
out[renames[key] ?? key] = value;
|
|
1626
|
+
}
|
|
1627
|
+
return out;
|
|
1628
|
+
}
|
|
1629
|
+
};
|
|
1630
|
+
|
|
1631
|
+
// src/editor/core/themes/migrations/2026-09-13-badge-brand.ts
|
|
1632
|
+
var BADGE_SUFFIXES = [
|
|
1633
|
+
"surface",
|
|
1634
|
+
"text",
|
|
1635
|
+
"border",
|
|
1636
|
+
"text-font-family",
|
|
1637
|
+
"text-font-size",
|
|
1638
|
+
"text-font-weight",
|
|
1639
|
+
"text-line-height",
|
|
1640
|
+
"border-width",
|
|
1641
|
+
"radius",
|
|
1642
|
+
"padding",
|
|
1643
|
+
"shadow",
|
|
1644
|
+
"blur",
|
|
1645
|
+
"icon-size"
|
|
1646
|
+
];
|
|
1647
|
+
var CORNERBADGE_SUFFIXES = ["surface", "border", "text"];
|
|
1648
|
+
var RENAMES10 = {
|
|
1649
|
+
badge: Object.fromEntries(
|
|
1650
|
+
BADGE_SUFFIXES.map((s) => [`--badge-primary-${s}`, `--badge-brand-${s}`])
|
|
1651
|
+
),
|
|
1652
|
+
cornerbadge: Object.fromEntries(
|
|
1653
|
+
CORNERBADGE_SUFFIXES.map((s) => [`--cornerbadge-primary-${s}`, `--cornerbadge-brand-${s}`])
|
|
1654
|
+
)
|
|
1655
|
+
};
|
|
1656
|
+
var componentMigration_2026_09_13_badgeBrand = {
|
|
1657
|
+
id: "2026-09-13-badge-brand",
|
|
1658
|
+
fromVersion: 34,
|
|
1659
|
+
toVersion: 35,
|
|
1660
|
+
appliesTo: "component-config",
|
|
1661
|
+
apply(rawVars, meta) {
|
|
1662
|
+
const renames = meta.component ? RENAMES10[meta.component] : void 0;
|
|
1663
|
+
if (!renames) return { ...rawVars };
|
|
1664
|
+
const out = {};
|
|
1665
|
+
for (const [key, value] of Object.entries(rawVars)) {
|
|
1666
|
+
out[renames[key] ?? key] = value;
|
|
1667
|
+
}
|
|
1668
|
+
return out;
|
|
1669
|
+
}
|
|
1670
|
+
};
|
|
1671
|
+
|
|
1270
1672
|
// src/editor/core/themes/migrations/index.ts
|
|
1271
1673
|
var MIGRATIONS = [
|
|
1272
1674
|
colorsAndTypeMigration_2026_04_24_legacyKeysAndBgToCanvas,
|
|
@@ -1303,7 +1705,15 @@ var MIGRATIONS = [
|
|
|
1303
1705
|
componentMigration_2026_09_01_gateSuffixEnabled,
|
|
1304
1706
|
componentMigration_2026_09_02_sectiondividerDropTitleOutline,
|
|
1305
1707
|
colorsAndTypeMigration_2026_09_03_dropLegacyComponentKeys,
|
|
1306
|
-
componentMigration_2026_09_07_strokeRoleRenames
|
|
1708
|
+
componentMigration_2026_09_07_strokeRoleRenames,
|
|
1709
|
+
componentMigration_2026_09_13_selectedState,
|
|
1710
|
+
componentMigration_2026_09_13_hairline,
|
|
1711
|
+
componentMigration_2026_09_13_indicator,
|
|
1712
|
+
componentMigration_2026_09_13_sectiondividerSurface,
|
|
1713
|
+
componentMigration_2026_09_13_cornerbadgePrefix,
|
|
1714
|
+
componentMigration_2026_09_13_toggleLabel,
|
|
1715
|
+
componentMigration_2026_09_13_collapsiblesectionOpen,
|
|
1716
|
+
componentMigration_2026_09_13_badgeBrand
|
|
1307
1717
|
];
|
|
1308
1718
|
function countFor(kind) {
|
|
1309
1719
|
return MIGRATIONS.filter((m) => m.appliesTo === kind).length;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { A as AliasDiskValue, a as ComponentConfig } from '../themeTypes-
|
|
1
|
+
import { A as AliasDiskValue, a as ComponentConfig } from '../themeTypes-B8_Idrp4.cjs';
|
|
2
2
|
export { r as readLiveTokensConfig, a as resolveDataDirs } from '../dataPaths-BpIK_Obx.cjs';
|
|
3
3
|
export { C as CURRENT_COMPONENT_SCHEMA_VERSION } from '../index-4N-Orzzi.cjs';
|
|
4
4
|
|
|
5
|
-
type AdjustKind = 'radius' | 'padding' | 'gap' | 'border-width' | '
|
|
5
|
+
type AdjustKind = 'radius' | 'padding' | 'gap' | 'border-width' | 'hairline-width' | 'indicator-width';
|
|
6
6
|
interface AdjustOp {
|
|
7
7
|
/** Component id; omitted applies the op to every config. */
|
|
8
8
|
target?: string;
|
|
@@ -37,7 +37,7 @@ interface AdjustResult {
|
|
|
37
37
|
}
|
|
38
38
|
declare function adjustAliases(configs: Record<string, ComponentConfig>, ops: readonly AdjustOp[], now: string): AdjustResult;
|
|
39
39
|
|
|
40
|
-
type TokenKind = 'surface' | 'border' | 'border-width' | '
|
|
40
|
+
type TokenKind = 'surface' | 'border' | 'border-width' | 'hairline-width' | 'indicator-width' | 'radius' | 'track-height' | 'hairline-inset' | 'dot-size' | 'length' | 'blur' | 'scale' | 'shadow' | 'font-family' | 'font-weight' | 'font-size' | 'line-height' | 'letter-spacing' | 'padding' | 'gap' | 'duration' | 'easing' | 'text-color';
|
|
41
41
|
/** Side-aware kind test. Per-side paddings (`--card-default-body-padding-top`)
|
|
42
42
|
are written by UIPaddingSelector and never declared as editor tokens, so
|
|
43
43
|
`rawKind` never meets one; the CLI does, and they belong with their parent. */
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { A as AliasDiskValue, a as ComponentConfig } from '../themeTypes-
|
|
1
|
+
import { A as AliasDiskValue, a as ComponentConfig } from '../themeTypes-B8_Idrp4.js';
|
|
2
2
|
export { r as readLiveTokensConfig, a as resolveDataDirs } from '../dataPaths-BpIK_Obx.js';
|
|
3
3
|
export { C as CURRENT_COMPONENT_SCHEMA_VERSION } from '../index-4N-Orzzi.js';
|
|
4
4
|
|
|
5
|
-
type AdjustKind = 'radius' | 'padding' | 'gap' | 'border-width' | '
|
|
5
|
+
type AdjustKind = 'radius' | 'padding' | 'gap' | 'border-width' | 'hairline-width' | 'indicator-width';
|
|
6
6
|
interface AdjustOp {
|
|
7
7
|
/** Component id; omitted applies the op to every config. */
|
|
8
8
|
target?: string;
|
|
@@ -37,7 +37,7 @@ interface AdjustResult {
|
|
|
37
37
|
}
|
|
38
38
|
declare function adjustAliases(configs: Record<string, ComponentConfig>, ops: readonly AdjustOp[], now: string): AdjustResult;
|
|
39
39
|
|
|
40
|
-
type TokenKind = 'surface' | 'border' | 'border-width' | '
|
|
40
|
+
type TokenKind = 'surface' | 'border' | 'border-width' | 'hairline-width' | 'indicator-width' | 'radius' | 'track-height' | 'hairline-inset' | 'dot-size' | 'length' | 'blur' | 'scale' | 'shadow' | 'font-family' | 'font-weight' | 'font-size' | 'line-height' | 'letter-spacing' | 'padding' | 'gap' | 'duration' | 'easing' | 'text-color';
|
|
41
41
|
/** Side-aware kind test. Per-side paddings (`--card-default-body-padding-top`)
|
|
42
42
|
are written by UIPaddingSelector and never declared as editor tokens, so
|
|
43
43
|
`rawKind` never meets one; the CLI does, and they belong with their parent. */
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
CURRENT_COMPONENT_SCHEMA_VERSION
|
|
3
|
-
} from "../chunk-
|
|
3
|
+
} from "../chunk-REBHE3ZM.js";
|
|
4
4
|
import {
|
|
5
5
|
readLiveTokensConfig,
|
|
6
6
|
resolveDataDirs
|
|
@@ -33,11 +33,12 @@ var KIND_RULES = [
|
|
|
33
33
|
},
|
|
34
34
|
{ kind: "radius", suffix: ["-radius"], prefix: ["--radius-"] },
|
|
35
35
|
// Three stroke roles share the `--border-width-*` scale: a border encloses,
|
|
36
|
-
// a
|
|
37
|
-
// on its own, so a suffix has to say which line it names.
|
|
38
|
-
{ kind: "
|
|
39
|
-
{ kind: "
|
|
40
|
-
{ kind: "
|
|
36
|
+
// a hairline separates, an indicator emphasises. `set-geometry` moves each
|
|
37
|
+
// role on its own, so a suffix has to say which line it names.
|
|
38
|
+
{ kind: "hairline-width", suffix: ["-hairline-width"] },
|
|
39
|
+
{ kind: "indicator-width", suffix: ["-indicator-width"] },
|
|
40
|
+
{ kind: "track-height", suffix: ["-track-height"] },
|
|
41
|
+
{ kind: "hairline-inset", suffix: ["-hairline-inset"] },
|
|
41
42
|
{ kind: "dot-size", suffix: ["-dot-size"] },
|
|
42
43
|
{ kind: "blur", suffix: ["-blur"], prefix: ["--blur-"] },
|
|
43
44
|
{ kind: "scale", suffix: ["-scale"], prefix: ["--scale-"] },
|
|
@@ -46,12 +47,11 @@ var KIND_RULES = [
|
|
|
46
47
|
{ kind: "gap", suffix: ["-gap"] },
|
|
47
48
|
{ kind: "duration", suffix: ["-duration"], prefix: ["--duration-"] },
|
|
48
49
|
{ kind: "easing", suffix: ["-easing"], prefix: ["--ease-"] },
|
|
49
|
-
{ kind: "accent-width", suffix: ["-accent-width", "-indicator-width"] },
|
|
50
50
|
{ kind: "border-width", suffix: ["-border-width"], prefix: ["--border-width-"] },
|
|
51
51
|
{ kind: "border", suffix: ["-border"], prefix: ["--border-"] },
|
|
52
52
|
// A dimension with no more specific name behind it — a panel's width, an
|
|
53
53
|
// avatar's size. Last of the geometry rules, so every `-border-width`,
|
|
54
|
-
// `-
|
|
54
|
+
// `-track-height`, `-icon-size` and the rest claim their token first.
|
|
55
55
|
{ kind: "length", suffix: ["-width", "-height", "-size"] },
|
|
56
56
|
// Fills. A tint is a wash over a surface, so it takes the surface picker: the
|
|
57
57
|
// full palette with an alpha, not just the tint stops it defaults to.
|
|
@@ -60,11 +60,8 @@ var KIND_RULES = [
|
|
|
60
60
|
suffix: [
|
|
61
61
|
"-surface",
|
|
62
62
|
"-fill",
|
|
63
|
-
"-divider",
|
|
64
|
-
"-background",
|
|
65
63
|
"-indicator",
|
|
66
64
|
"-thumb",
|
|
67
|
-
"-accent",
|
|
68
65
|
"-color",
|
|
69
66
|
"-tint",
|
|
70
67
|
"-opacity"
|
|
@@ -149,8 +146,8 @@ var SCALES = {
|
|
|
149
146
|
padding: { steps: SPACE_STEPS, settable: SPACE_SETTABLE, family: SPACE_FAMILY },
|
|
150
147
|
gap: { steps: SPACE_STEPS, settable: SPACE_SETTABLE, family: SPACE_FAMILY },
|
|
151
148
|
"border-width": STROKE_SCALE,
|
|
152
|
-
"
|
|
153
|
-
"
|
|
149
|
+
"hairline-width": STROKE_SCALE,
|
|
150
|
+
"indicator-width": STROKE_SCALE
|
|
154
151
|
};
|
|
155
152
|
var TOKEN_NAME = /^--[a-z0-9-]+$/;
|
|
156
153
|
function stepsFor(op, variable, aliases) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { c as FontStackVariable, C as ColorsAndType, b as FontStack, F as FontSource } from '../themeTypes-
|
|
1
|
+
import { c as FontStackVariable, C as ColorsAndType, b as FontStack, F as FontSource } from '../themeTypes-B8_Idrp4.cjs';
|
|
2
2
|
export { r as readLiveTokensConfig, a as resolveDataDirs } from '../dataPaths-BpIK_Obx.cjs';
|
|
3
3
|
|
|
4
4
|
type PairingSlot = 'display' | 'body' | 'serif' | 'mono' | 'editorial';
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { c as FontStackVariable, C as ColorsAndType, b as FontStack, F as FontSource } from '../themeTypes-
|
|
1
|
+
import { c as FontStackVariable, C as ColorsAndType, b as FontStack, F as FontSource } from '../themeTypes-B8_Idrp4.js';
|
|
2
2
|
export { r as readLiveTokensConfig, a as resolveDataDirs } from '../dataPaths-BpIK_Obx.js';
|
|
3
3
|
|
|
4
4
|
type PairingSlot = 'display' | 'body' | 'serif' | 'mono' | 'editorial';
|
|
@@ -191,8 +191,8 @@ type LiveSource = 'working' | 'theme';
|
|
|
191
191
|
/**
|
|
192
192
|
* Where a live colors-and-type read resolved from. Unlike `LiveSource`, this
|
|
193
193
|
* keeps a third value: colors-and-type resolution is unchanged by the theme
|
|
194
|
-
* completeness work
|
|
195
|
-
*
|
|
194
|
+
* completeness work, so `default` still answers the one case completeness
|
|
195
|
+
* can't reach — the open theme's
|
|
196
196
|
* file itself is unreadable (a stale pointer, or deleted mid-session), so
|
|
197
197
|
* there is no document to resolve `working` or `theme` against.
|
|
198
198
|
*/
|
|
@@ -191,8 +191,8 @@ type LiveSource = 'working' | 'theme';
|
|
|
191
191
|
/**
|
|
192
192
|
* Where a live colors-and-type read resolved from. Unlike `LiveSource`, this
|
|
193
193
|
* keeps a third value: colors-and-type resolution is unchanged by the theme
|
|
194
|
-
* completeness work
|
|
195
|
-
*
|
|
194
|
+
* completeness work, so `default` still answers the one case completeness
|
|
195
|
+
* can't reach — the open theme's
|
|
196
196
|
* file itself is unreadable (a stale pointer, or deleted mid-session), so
|
|
197
197
|
* there is no document to resolve `working` or `theme` against.
|
|
198
198
|
*/
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@motion-proto/live-tokens",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.79.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Design token editor with live CSS variable editing. Svelte 5 + Vite 8.",
|
|
6
6
|
"keywords": [
|
|
@@ -166,7 +166,7 @@
|
|
|
166
166
|
"check:overlay-portal": "node scripts/check-overlay-portal.mjs",
|
|
167
167
|
"check:editor-font-isolation": "node scripts/check-editor-font-isolation.mjs",
|
|
168
168
|
"check:component-defaults": "node scripts/sync-component-defaults.mjs --check",
|
|
169
|
-
"check:pages": "node bin/cli.mjs check-page --strict",
|
|
169
|
+
"check:pages": "node bin/cli.mjs check-page --strict --no-fix",
|
|
170
170
|
"check:production-is-default": "node scripts/check-production-is-default.mjs",
|
|
171
171
|
"check:docs-content": "node scripts/sync-docs.mjs --check",
|
|
172
172
|
"check:token-contract": "node scripts/check-token-contract.mjs",
|
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
{ label: 'surface color', element: 'frame', groupKey: 'surface', variable: `--callout-${v}-surface` },
|
|
13
13
|
{ label: 'border color', element: 'frame', groupKey: 'border', variable: `--callout-${v}-border` },
|
|
14
14
|
{ label: 'border width', element: 'frame', canBeLinked: true, groupKey: 'border-width', variable: `--callout-${v}-border-width` },
|
|
15
|
-
{ label: '
|
|
15
|
+
{ label: 'indicator width', element: 'frame', canBeLinked: true, groupKey: 'indicator-width', variable: `--callout-${v}-indicator-width` },
|
|
16
16
|
{ label: 'corner radius', element: 'frame', canBeLinked: true, groupKey: 'radius', variable: `--callout-${v}-radius` },
|
|
17
17
|
{ label: 'padding', element: 'frame', canBeLinked: true, groupKey: 'padding', variable: `--callout-${v}-padding` },
|
|
18
18
|
];
|
|
@@ -59,7 +59,7 @@
|
|
|
59
59
|
]);
|
|
60
60
|
|
|
61
61
|
const linkableProps = [
|
|
62
|
-
'border-width', '
|
|
62
|
+
'border-width', 'indicator-width', 'radius', 'padding',
|
|
63
63
|
'label-font-family', 'label-font-size', 'label-font-weight', 'label-line-height',
|
|
64
64
|
'text-font-family', 'text-font-size', 'text-font-weight', 'text-line-height',
|
|
65
65
|
] as const;
|