@sudajs/cli 0.12.3 → 0.12.4
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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sudajs/cli",
|
|
3
|
-
"version": "0.12.
|
|
3
|
+
"version": "0.12.4",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"bin": {
|
|
6
6
|
"suda": "./bin/suda.js"
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"react": "^19.2.7",
|
|
35
35
|
"react-dom": "^19.2.7",
|
|
36
36
|
"zod": "^3.24.1",
|
|
37
|
-
"@sudajs/theme-engine": "
|
|
37
|
+
"@sudajs/theme-engine": "5.0.0"
|
|
38
38
|
},
|
|
39
39
|
"devDependencies": {
|
|
40
40
|
"@tailwindcss/postcss": "^4.3.0",
|
|
@@ -139,7 +139,7 @@ Field source of truth:
|
|
|
139
139
|
generation reliable.
|
|
140
140
|
- Use `description`, `placeholder`, and `visibleIf` only when they help the
|
|
141
141
|
editor or AI choose the right value.
|
|
142
|
-
- Suda extended field types are `url`, `icon`, `
|
|
142
|
+
- Suda extended field types are `url`, `icon`, `color`,
|
|
143
143
|
`range`, `spacing`, `media`, `image`, `video`, and `posts`. These are valid
|
|
144
144
|
in `fields` and are normalized by `@sudajs/theme-engine`.
|
|
145
145
|
|
|
@@ -189,8 +189,6 @@ fields: {
|
|
|
189
189
|
download: { type: "media", kind: "file", label: t("common.fields.file") },
|
|
190
190
|
icon: { type: "icon", label: t("common.fields.icon") },
|
|
191
191
|
accentColor: { type: "color", label: t("common.fields.color") },
|
|
192
|
-
font: { type: "font", label: t("common.fields.font") },
|
|
193
|
-
links: { type: "menu", label: t("common.fields.menu") },
|
|
194
192
|
spacing: { type: "spacing", label: t("common.fields.spacing") },
|
|
195
193
|
|
|
196
194
|
// Dynamic post lists. Use this only on page sections that intentionally
|
|
@@ -492,11 +490,11 @@ radius, shadows, or spacing.
|
|
|
492
490
|
- Section props may expose semantic choices such as `tone`, `variant`,
|
|
493
491
|
`columns`, `mediaPosition`, `showImage`, or `spacing`. Map those choices to
|
|
494
492
|
the existing design tokens and shared CSS classes.
|
|
495
|
-
- Do not add raw `color`,
|
|
493
|
+
- Do not add raw `color`, typography, `spacing`, `radius`, or `shadow` fields to a
|
|
496
494
|
section just because the CSS has a value. Expose a design token field only
|
|
497
495
|
when the user should intentionally customize that value per component
|
|
498
496
|
instance. Otherwise, keep the value in the theme CSS.
|
|
499
|
-
- Use `color
|
|
497
|
+
- Use `color` and `spacing` field types only for real editor-facing
|
|
500
498
|
design controls. Use `select`/`radio` for named variants that are already
|
|
501
499
|
part of the theme design system.
|
|
502
500
|
- Local blocks inside `blockSlots` inherit the host section's design system.
|
|
@@ -534,10 +532,11 @@ Use the most specific field type available. A generic `text` field may pass type
|
|
|
534
532
|
|
|
535
533
|
- Always use `url` for links and routes, including anchors, `mailto:` links, and external URLs. Do not use `text` for href-like props.
|
|
536
534
|
- Use `image` for images, `video` for videos, and `media` only when the same prop intentionally accepts mixed media.
|
|
537
|
-
- Use `color` for color values, `icon` for icon names, `
|
|
535
|
+
- Use `color` for color values, `icon` for icon names, `range` for bounded numbers, and `spacing` for spacing tokens.
|
|
536
|
+
- Use `select` for typography choices and `array`/`object` fields for navigation lists.
|
|
538
537
|
- Use `select` or `radio` for fixed choices. Keep option values stable, short, and serializable.
|
|
539
538
|
- Use `array` for repeatable items and `object` for grouped settings. Keep nested field names aligned with the prop shape and `defaultProps`.
|
|
540
|
-
- Use `textarea` for multi-sentence copy. Use `text` only for short labels, headings, slugs, names, or plain strings that are not URLs, media, colors, icons,
|
|
539
|
+
- Use `textarea` for multi-sentence copy. Use `text` only for short labels, headings, slugs, names, or plain strings that are not URLs, media, colors, icons, typography choices, or navigation lists.
|
|
541
540
|
- Use `t(...)` for every editor-facing `label` in components, fields, nested
|
|
542
541
|
`arrayFields` / `object.fields`, local blocks, and option lists. Add matching
|
|
543
542
|
keys to `src/locales/en.json` at the same time.
|