@visual-platform/contracts 0.2.0 → 0.4.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.
Files changed (52) hide show
  1. package/dist/app-sources.d.ts +206 -0
  2. package/dist/app-sources.d.ts.map +1 -0
  3. package/dist/app-sources.js +287 -0
  4. package/dist/app-sources.js.map +1 -0
  5. package/dist/component.d.ts +97 -1
  6. package/dist/component.d.ts.map +1 -1
  7. package/dist/component.js +27 -3
  8. package/dist/component.js.map +1 -1
  9. package/dist/data.d.ts +55 -2
  10. package/dist/data.d.ts.map +1 -1
  11. package/dist/data.js +17 -2
  12. package/dist/data.js.map +1 -1
  13. package/dist/design.d.ts +201 -2
  14. package/dist/design.d.ts.map +1 -1
  15. package/dist/design.js +131 -6
  16. package/dist/design.js.map +1 -1
  17. package/dist/events.d.ts +40 -1
  18. package/dist/events.d.ts.map +1 -1
  19. package/dist/events.js +17 -0
  20. package/dist/events.js.map +1 -1
  21. package/dist/flow-sim.d.ts +36 -0
  22. package/dist/flow-sim.d.ts.map +1 -0
  23. package/dist/flow-sim.js +128 -0
  24. package/dist/flow-sim.js.map +1 -0
  25. package/dist/flows.d.ts +267 -0
  26. package/dist/flows.d.ts.map +1 -0
  27. package/dist/flows.js +387 -0
  28. package/dist/flows.js.map +1 -0
  29. package/dist/index.d.ts +5 -0
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/index.js +5 -0
  32. package/dist/index.js.map +1 -1
  33. package/dist/motion.d.ts +161 -0
  34. package/dist/motion.d.ts.map +1 -0
  35. package/dist/motion.js +228 -0
  36. package/dist/motion.js.map +1 -0
  37. package/dist/page-document.d.ts +130 -0
  38. package/dist/page-document.d.ts.map +1 -1
  39. package/dist/page-document.js +14 -1
  40. package/dist/page-document.js.map +1 -1
  41. package/dist/published.d.ts +411 -0
  42. package/dist/published.d.ts.map +1 -1
  43. package/dist/published.js +5 -0
  44. package/dist/published.js.map +1 -1
  45. package/dist/sources.d.ts +170 -0
  46. package/dist/sources.d.ts.map +1 -0
  47. package/dist/sources.js +236 -0
  48. package/dist/sources.js.map +1 -0
  49. package/dist/tables.d.ts.map +1 -1
  50. package/dist/tables.js +2 -1
  51. package/dist/tables.js.map +1 -1
  52. package/package.json +1 -1
package/dist/design.d.ts CHANGED
@@ -8,6 +8,15 @@ export declare const ThemeSchema: z.ZodObject<{
8
8
  label: z.ZodString;
9
9
  color: z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>>;
10
10
  }, z.core.$strict>;
11
+ /** A named font of a project (ADR-047): heading, body, display, mono… — any role the team needs. */
12
+ export declare const ProjectFontSchema: z.ZodObject<{
13
+ role: z.ZodString;
14
+ label: z.ZodOptional<z.ZodString>;
15
+ familyId: z.ZodNullable<z.ZodString>;
16
+ google: z.ZodOptional<z.ZodString>;
17
+ fallback: z.ZodString;
18
+ }, z.core.$strict>;
19
+ export type ProjectFont = z.infer<typeof ProjectFontSchema>;
11
20
  export declare const DesignSystemSchema: z.ZodObject<{
12
21
  schemaVersion: z.ZodLiteral<1>;
13
22
  global: z.ZodObject<{
@@ -15,6 +24,8 @@ export declare const DesignSystemSchema: z.ZodObject<{
15
24
  spacing: z.ZodRecord<z.ZodString, z.ZodString>;
16
25
  radius: z.ZodRecord<z.ZodString, z.ZodString>;
17
26
  fontSize: z.ZodRecord<z.ZodString, z.ZodString>;
27
+ shadow: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
28
+ lineHeight: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
18
29
  }, z.core.$strict>;
19
30
  semantic: z.ZodObject<{
20
31
  color: z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodString]>>;
@@ -39,6 +50,43 @@ export declare const DesignSystemSchema: z.ZodObject<{
39
50
  set: z.ZodLiteral<"lucide">;
40
51
  strokeWidth: z.ZodNumber;
41
52
  }, z.core.$strict>>;
53
+ guidelines: z.ZodOptional<z.ZodString>;
54
+ motion: z.ZodOptional<z.ZodLazy<z.ZodObject<{
55
+ presets: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
56
+ label: z.ZodOptional<z.ZodString>;
57
+ kind: z.ZodEnum<{
58
+ emphasis: "emphasis";
59
+ entrance: "entrance";
60
+ hover: "hover";
61
+ loop: "loop";
62
+ }>;
63
+ frames: z.ZodArray<z.ZodObject<{
64
+ at: z.ZodNumber;
65
+ opacity: z.ZodOptional<z.ZodNumber>;
66
+ x: z.ZodOptional<z.ZodNumber>;
67
+ y: z.ZodOptional<z.ZodNumber>;
68
+ unit: z.ZodOptional<z.ZodEnum<{
69
+ "%": "%";
70
+ px: "px";
71
+ }>>;
72
+ scale: z.ZodOptional<z.ZodNumber>;
73
+ rotate: z.ZodOptional<z.ZodNumber>;
74
+ blur: z.ZodOptional<z.ZodNumber>;
75
+ }, z.core.$strict>>;
76
+ duration: z.ZodNumber;
77
+ easing: z.ZodString;
78
+ delay: z.ZodOptional<z.ZodNumber>;
79
+ iterations: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodLiteral<"infinite">]>>;
80
+ alternate: z.ZodOptional<z.ZodBoolean>;
81
+ }, z.core.$strict>>>;
82
+ durations: z.ZodOptional<z.ZodObject<{
83
+ fast: z.ZodNumber;
84
+ normal: z.ZodNumber;
85
+ slow: z.ZodNumber;
86
+ }, z.core.$strict>>;
87
+ easings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
88
+ disabled: z.ZodOptional<z.ZodBoolean>;
89
+ }, z.core.$strict>>>;
42
90
  }, z.core.$strict>;
43
91
  export type DesignSystem = z.infer<typeof DesignSystemSchema>;
44
92
  /** Project override: replaces individual tokens of the workspace design system. */
@@ -66,6 +114,50 @@ export declare const DesignOverrideSchema: z.ZodObject<{
66
114
  }, z.core.$strict>>;
67
115
  }, z.core.$strict>>;
68
116
  designSystemId: z.ZodOptional<z.ZodString>;
117
+ projectFonts: z.ZodOptional<z.ZodArray<z.ZodObject<{
118
+ role: z.ZodString;
119
+ label: z.ZodOptional<z.ZodString>;
120
+ familyId: z.ZodNullable<z.ZodString>;
121
+ google: z.ZodOptional<z.ZodString>;
122
+ fallback: z.ZodString;
123
+ }, z.core.$strict>>>;
124
+ defaultFont: z.ZodOptional<z.ZodString>;
125
+ motion: z.ZodOptional<z.ZodLazy<z.ZodObject<{
126
+ presets: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
127
+ label: z.ZodOptional<z.ZodString>;
128
+ kind: z.ZodEnum<{
129
+ emphasis: "emphasis";
130
+ entrance: "entrance";
131
+ hover: "hover";
132
+ loop: "loop";
133
+ }>;
134
+ frames: z.ZodArray<z.ZodObject<{
135
+ at: z.ZodNumber;
136
+ opacity: z.ZodOptional<z.ZodNumber>;
137
+ x: z.ZodOptional<z.ZodNumber>;
138
+ y: z.ZodOptional<z.ZodNumber>;
139
+ unit: z.ZodOptional<z.ZodEnum<{
140
+ "%": "%";
141
+ px: "px";
142
+ }>>;
143
+ scale: z.ZodOptional<z.ZodNumber>;
144
+ rotate: z.ZodOptional<z.ZodNumber>;
145
+ blur: z.ZodOptional<z.ZodNumber>;
146
+ }, z.core.$strict>>;
147
+ duration: z.ZodNumber;
148
+ easing: z.ZodString;
149
+ delay: z.ZodOptional<z.ZodNumber>;
150
+ iterations: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodLiteral<"infinite">]>>;
151
+ alternate: z.ZodOptional<z.ZodBoolean>;
152
+ }, z.core.$strict>>>;
153
+ durations: z.ZodOptional<z.ZodObject<{
154
+ fast: z.ZodNumber;
155
+ normal: z.ZodNumber;
156
+ slow: z.ZodNumber;
157
+ }, z.core.$strict>>;
158
+ easings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
159
+ disabled: z.ZodOptional<z.ZodBoolean>;
160
+ }, z.core.$strict>>>;
69
161
  }, z.core.$strict>;
70
162
  export type DesignOverride = z.infer<typeof DesignOverrideSchema>;
71
163
  export declare const FontFaceSchema: z.ZodObject<{
@@ -89,7 +181,6 @@ export type FontFamilyRef = {
89
181
  family: string;
90
182
  faces: FontFace[];
91
183
  };
92
- /** What a release pins and the SDK renders: flat CSS variables per theme + @font-face rules. */
93
184
  export declare const DesignSnapshotSchema: z.ZodObject<{
94
185
  vars: z.ZodRecord<z.ZodString, z.ZodString>;
95
186
  themes: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>;
@@ -111,9 +202,107 @@ export declare const DesignSnapshotSchema: z.ZodObject<{
111
202
  unicodeRange: z.ZodOptional<z.ZodString>;
112
203
  }, z.core.$strict>>;
113
204
  }, z.core.$strip>>;
205
+ motion: z.ZodOptional<z.ZodLazy<z.ZodObject<{
206
+ presets: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
207
+ label: z.ZodOptional<z.ZodString>;
208
+ kind: z.ZodEnum<{
209
+ emphasis: "emphasis";
210
+ entrance: "entrance";
211
+ hover: "hover";
212
+ loop: "loop";
213
+ }>;
214
+ frames: z.ZodArray<z.ZodObject<{
215
+ at: z.ZodNumber;
216
+ opacity: z.ZodOptional<z.ZodNumber>;
217
+ x: z.ZodOptional<z.ZodNumber>;
218
+ y: z.ZodOptional<z.ZodNumber>;
219
+ unit: z.ZodOptional<z.ZodEnum<{
220
+ "%": "%";
221
+ px: "px";
222
+ }>>;
223
+ scale: z.ZodOptional<z.ZodNumber>;
224
+ rotate: z.ZodOptional<z.ZodNumber>;
225
+ blur: z.ZodOptional<z.ZodNumber>;
226
+ }, z.core.$strict>>;
227
+ duration: z.ZodNumber;
228
+ easing: z.ZodString;
229
+ delay: z.ZodOptional<z.ZodNumber>;
230
+ iterations: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodLiteral<"infinite">]>>;
231
+ alternate: z.ZodOptional<z.ZodBoolean>;
232
+ }, z.core.$strict>>>;
233
+ durations: z.ZodOptional<z.ZodObject<{
234
+ fast: z.ZodNumber;
235
+ normal: z.ZodNumber;
236
+ slow: z.ZodNumber;
237
+ }, z.core.$strict>>;
238
+ easings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
239
+ disabled: z.ZodOptional<z.ZodBoolean>;
240
+ }, z.core.$strict>>>;
241
+ systems: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
242
+ vars: z.ZodRecord<z.ZodString, z.ZodString>;
243
+ themes: z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>>;
244
+ fonts: z.ZodArray<z.ZodObject<{
245
+ family: z.ZodString;
246
+ faces: z.ZodArray<z.ZodObject<{
247
+ weight: z.ZodNumber;
248
+ style: z.ZodEnum<{
249
+ italic: "italic";
250
+ normal: "normal";
251
+ }>;
252
+ url: z.ZodString;
253
+ format: z.ZodEnum<{
254
+ opentype: "opentype";
255
+ truetype: "truetype";
256
+ woff: "woff";
257
+ woff2: "woff2";
258
+ }>;
259
+ unicodeRange: z.ZodOptional<z.ZodString>;
260
+ }, z.core.$strict>>;
261
+ }, z.core.$strip>>;
262
+ motion: z.ZodOptional<z.ZodLazy<z.ZodObject<{
263
+ presets: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
264
+ label: z.ZodOptional<z.ZodString>;
265
+ kind: z.ZodEnum<{
266
+ emphasis: "emphasis";
267
+ entrance: "entrance";
268
+ hover: "hover";
269
+ loop: "loop";
270
+ }>;
271
+ frames: z.ZodArray<z.ZodObject<{
272
+ at: z.ZodNumber;
273
+ opacity: z.ZodOptional<z.ZodNumber>;
274
+ x: z.ZodOptional<z.ZodNumber>;
275
+ y: z.ZodOptional<z.ZodNumber>;
276
+ unit: z.ZodOptional<z.ZodEnum<{
277
+ "%": "%";
278
+ px: "px";
279
+ }>>;
280
+ scale: z.ZodOptional<z.ZodNumber>;
281
+ rotate: z.ZodOptional<z.ZodNumber>;
282
+ blur: z.ZodOptional<z.ZodNumber>;
283
+ }, z.core.$strict>>;
284
+ duration: z.ZodNumber;
285
+ easing: z.ZodString;
286
+ delay: z.ZodOptional<z.ZodNumber>;
287
+ iterations: z.ZodOptional<z.ZodUnion<readonly [z.ZodNumber, z.ZodLiteral<"infinite">]>>;
288
+ alternate: z.ZodOptional<z.ZodBoolean>;
289
+ }, z.core.$strict>>>;
290
+ durations: z.ZodOptional<z.ZodObject<{
291
+ fast: z.ZodNumber;
292
+ normal: z.ZodNumber;
293
+ slow: z.ZodNumber;
294
+ }, z.core.$strict>>;
295
+ easings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
296
+ disabled: z.ZodOptional<z.ZodBoolean>;
297
+ }, z.core.$strict>>>;
298
+ }, z.core.$strip>>>;
114
299
  }, z.core.$strip>;
115
300
  export type DesignSnapshot = z.infer<typeof DesignSnapshotSchema>;
116
301
  export declare function mergeDesign(base: DesignSystem, o: DesignOverride | null | undefined): DesignSystem;
302
+ /** Project fonts → font roles of a system: "heading"/"body" roles replace the system's, default → body text. */
303
+ export declare function withProjectFonts(ds: DesignSystem, o: Pick<DesignOverride, "projectFonts" | "defaultFont"> | null | undefined): DesignSystem & {
304
+ extraFonts?: ProjectFont[];
305
+ };
117
306
  /**
118
307
  * Design system → snapshot. Variable names stay compatible with the built-in library
119
308
  * (--vp-color-*, --vp-spacing-*, --vp-radius-*, --vp-font-size-*), plus --vp-palette-* and
@@ -121,7 +310,7 @@ export declare function mergeDesign(base: DesignSystem, o: DesignOverride | null
121
310
  */
122
311
  export declare function resolveDesign(ds: DesignSystem, families: FontFamilyRef[]): DesignSnapshot;
123
312
  /** Values an editor may offer for a token field (blueprint 31 §4 token picker). */
124
- export declare function tokenOptions(ds: DesignSystem): Record<"spacing" | "radius" | "color" | "font.size", string[]>;
313
+ export declare function tokenOptions(ds: DesignSystem): Record<"spacing" | "radius" | "color" | "font.size" | "font.family" | "shadow" | "line.height", string[]>;
125
314
  /** Starting point for a new workspace; mirrors the previous hard-coded tokens. */
126
315
  export declare const DEFAULT_DESIGN_SYSTEM: DesignSystem;
127
316
  /**
@@ -130,6 +319,16 @@ export declare const DEFAULT_DESIGN_SYSTEM: DesignSystem;
130
319
  */
131
320
  export declare const SHADCN_DESIGN_SYSTEM: DesignSystem;
132
321
  /** Read-only starting points; users clone one into an editable workspace design system. */
322
+ /** Minimal starting point (ADR-047): a few neutrals + one brand colour; every semantic name the library reads. */
323
+ export declare const BLANK_DESIGN_SYSTEM: DesignSystem;
324
+ /**
325
+ * Starting guidelines for a design system (ADR-047), from its tokens — the team then edits them.
326
+ * AI assistants read these before choosing colours, sizes and fonts.
327
+ */
328
+ export declare function designGuidelinesTemplate(ds: DesignSystem, fonts?: {
329
+ role: string;
330
+ family?: string;
331
+ }[]): string;
133
332
  export declare const DESIGN_PRESETS: {
134
333
  id: string;
135
334
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"design.d.ts","sourceRoot":"","sources":["../src/design.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAiBxB,eAAO,MAAM,cAAc;;;;kBAMhB,CAAC;AAEZ,eAAO,MAAM,WAAW;;;kBAGb,CAAC;AAEZ,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA0B7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,mFAAmF;AACnF,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;kBAUtB,CAAC;AACZ,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,eAAO,MAAM,cAAc;;;;;;;;;;;;;;kBAMhB,CAAC;AACZ,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AACtD,MAAM,MAAM,aAAa,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,QAAQ,EAAE,CAAA;CAAE,CAAC;AAE9E,gGAAgG;AAChG,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;iBAI/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,wBAAgB,WAAW,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC,EAAE,cAAc,GAAG,IAAI,GAAG,SAAS,GAAG,YAAY,CAYlG;AAKD;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,EAAE,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,GAAG,cAAc,CAoBzF;AAED,mFAAmF;AACnF,wBAAgB,YAAY,CAAC,EAAE,EAAE,YAAY,GAAG,MAAM,CAAC,SAAS,GAAG,QAAQ,GAAG,OAAO,GAAG,WAAW,EAAE,MAAM,EAAE,CAAC,CAO7G;AAED,kFAAkF;AAClF,eAAO,MAAM,qBAAqB,EAAE,YAwBnC,CAAC;AAKF;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE,YAiDlC,CAAC;AAEF,2FAA2F;AAC3F,eAAO,MAAM,cAAc,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,YAAY,CAAA;CAAE,EAGnG,CAAC"}
1
+ {"version":3,"file":"design.d.ts","sourceRoot":"","sources":["../src/design.ts"],"names":[],"mappings":"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"}
package/dist/design.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import { z } from "zod";
2
+ import { mergeMotion, MotionSettingsSchema } from "./motion.js";
2
3
  /**
3
4
  * Design system (blueprint 25, ADR-026): global tokens (raw values) → semantic tokens (meaning,
4
5
  * referencing globals) → themes (semantic overrides) + font roles. Pure data; CSS is produced by
@@ -24,6 +25,18 @@ export const ThemeSchema = z.object({
24
25
  label: z.string().min(1).max(40),
25
26
  color: z.record(KEY, COLOR_VALUE),
26
27
  }).strict();
28
+ /** Box shadow: lengths, colours (hex/rgb/rgba/oklch) and commas only — e.g. 0 1px 3px rgba(0,0,0,.1). */
29
+ const SHADOW = z.string().max(200).regex(/^(?:none|[0-9a-zA-Z#.,%()\/\s-]+)$/, "use a CSS box-shadow, e.g. 0 1px 3px rgba(0,0,0,.1)");
30
+ /** Unitless line height (1.5) or a length. */
31
+ const LINE_HEIGHT = z.string().regex(/^(?:\d+(?:\.\d+)?|\d+(?:\.\d+)?(?:px|rem|em|%))$/, "use 1.5 or 24px");
32
+ /** A named font of a project (ADR-047): heading, body, display, mono… — any role the team needs. */
33
+ export const ProjectFontSchema = z.object({
34
+ role: KEY,
35
+ label: z.string().trim().max(60).optional(),
36
+ familyId: z.string().nullable(),
37
+ google: FAMILY_NAME.optional(),
38
+ fallback: FALLBACK,
39
+ }).strict();
27
40
  export const DesignSystemSchema = z.object({
28
41
  schemaVersion: z.literal(1),
29
42
  global: z.object({
@@ -31,6 +44,9 @@ export const DesignSystemSchema = z.object({
31
44
  spacing: z.record(KEY, LENGTH),
32
45
  radius: z.record(KEY, LENGTH),
33
46
  fontSize: z.record(KEY, LENGTH),
47
+ /** Optional extra scales (ADR-047). */
48
+ shadow: z.record(KEY, SHADOW).optional(),
49
+ lineHeight: z.record(KEY, LINE_HEIGHT).optional(),
34
50
  }).strict(),
35
51
  semantic: z.object({ color: z.record(KEY, COLOR_VALUE) }).strict(),
36
52
  fonts: z.object({ heading: FontRoleSchema, body: FontRoleSchema }).strict(),
@@ -38,6 +54,10 @@ export const DesignSystemSchema = z.object({
38
54
  themes: z.record(KEY, ThemeSchema),
39
55
  /** Icon set for icon fields (Lucide = shadcn's icon set) and its default stroke. */
40
56
  icons: z.object({ set: z.literal("lucide"), strokeWidth: z.number().min(0.5).max(3) }).strict().optional(),
57
+ /** How to use this system (Markdown, ADR-047): which colours/sizes/fonts for what, mobile vs desktop. Read by AI. */
58
+ guidelines: z.string().max(20_000).optional(),
59
+ /** Animation presets + motion tokens shared by every project on this system (ADR-052). */
60
+ motion: z.lazy(() => MotionSettingsSchema).optional(),
41
61
  }).strict().superRefine((ds, ctx) => {
42
62
  const check = (v, path) => {
43
63
  const ref = /^\{palette\.(.+)\}$/.exec(v)?.[1];
@@ -65,7 +85,19 @@ export const DesignOverrideSchema = z.object({
65
85
  fonts: z.object({ heading: FontRoleSchema.optional(), body: FontRoleSchema.optional() }).strict().optional(),
66
86
  /** Which design system the project uses: a workspace design system id or "preset:<id>". */
67
87
  designSystemId: z.string().min(1).max(80).optional(),
68
- }).strict();
88
+ /** Fonts of the project by role (ADR-047), used by every design system the project renders with. */
89
+ projectFonts: z.array(ProjectFontSchema).max(12).optional(),
90
+ /** Role of the default text font (body text, buttons…). */
91
+ defaultFont: KEY.optional(),
92
+ /** Project-only animation presets/tokens, or `disabled` (ADR-052). */
93
+ motion: z.lazy(() => MotionSettingsSchema).optional(),
94
+ }).strict().superRefine((o, ctx) => {
95
+ const roles = (o.projectFonts ?? []).map((f) => f.role);
96
+ if (new Set(roles).size !== roles.length)
97
+ ctx.addIssue({ code: "custom", path: ["projectFonts"], message: "font roles must be unique" });
98
+ if (o.defaultFont && !roles.includes(o.defaultFont))
99
+ ctx.addIssue({ code: "custom", path: ["defaultFont"], message: `no project font with role "${o.defaultFont}"` });
100
+ });
69
101
  export const FontFaceSchema = z.object({
70
102
  weight: z.number().int().min(100).max(900),
71
103
  style: z.enum(["normal", "italic"]),
@@ -74,10 +106,16 @@ export const FontFaceSchema = z.object({
74
106
  unicodeRange: z.string().regex(/^[U+0-9A-Fa-f?, -]+$/).optional(),
75
107
  }).strict();
76
108
  /** What a release pins and the SDK renders: flat CSS variables per theme + @font-face rules. */
77
- export const DesignSnapshotSchema = z.object({
109
+ const SnapshotCore = z.object({
78
110
  vars: z.record(z.string(), z.string()),
79
111
  themes: z.record(z.string(), z.record(z.string(), z.string())),
80
112
  fonts: z.array(z.object({ family: FAMILY_NAME, faces: z.array(FontFaceSchema) })),
113
+ /** Merged animation settings pinned by the release (ADR-052). */
114
+ motion: z.lazy(() => MotionSettingsSchema).optional(),
115
+ });
116
+ export const DesignSnapshotSchema = SnapshotCore.extend({
117
+ /** Other design systems used by pages/components of the release, by id (ADR-047). */
118
+ systems: z.record(z.string(), SnapshotCore).optional(),
81
119
  });
82
120
  export function mergeDesign(base, o) {
83
121
  if (!o)
@@ -87,12 +125,25 @@ export function mergeDesign(base, o) {
87
125
  global: {
88
126
  palette: { ...base.global.palette, ...o.global?.palette }, spacing: { ...base.global.spacing, ...o.global?.spacing },
89
127
  radius: { ...base.global.radius, ...o.global?.radius }, fontSize: { ...base.global.fontSize, ...o.global?.fontSize },
128
+ ...(base.global.shadow ? { shadow: base.global.shadow } : {}), ...(base.global.lineHeight ? { lineHeight: base.global.lineHeight } : {}),
90
129
  },
91
130
  semantic: { color: { ...base.semantic.color, ...o.semantic?.color } },
92
131
  ...(base.icons ? { icons: base.icons } : {}),
93
132
  fonts: { heading: o.fonts?.heading ?? base.fonts.heading, body: o.fonts?.body ?? base.fonts.body },
133
+ ...(base.motion || o.motion ? { motion: mergeMotion(base.motion, o.motion) } : {}),
94
134
  };
95
135
  }
136
+ /** Project fonts → font roles of a system: "heading"/"body" roles replace the system's, default → body text. */
137
+ export function withProjectFonts(ds, o) {
138
+ const list = o?.projectFonts ?? [];
139
+ if (!list.length)
140
+ return ds;
141
+ const role = (r) => list.find((f) => f.role === r);
142
+ const asRole = (f) => ({ familyId: f.familyId, ...(f.google ? { google: f.google } : {}), fallback: f.fallback });
143
+ const body = (o?.defaultFont ? role(o.defaultFont) : undefined) ?? role("body");
144
+ const heading = role("heading");
145
+ return { ...ds, fonts: { heading: heading ? asRole(heading) : ds.fonts.heading, body: body ? asRole(body) : ds.fonts.body }, extraFonts: list };
146
+ }
96
147
  const colorCss = (v) => v.startsWith("{") ? `var(--vp-palette-${v.slice(9, -1)})` : v;
97
148
  const quote = (f) => `"${f}"`;
98
149
  /**
@@ -113,23 +164,41 @@ export function resolveDesign(ds, families) {
113
164
  vars[`font-size-${k}`] = v;
114
165
  for (const [k, v] of Object.entries(ds.semantic.color))
115
166
  vars[`color-${k}`] = colorCss(v);
167
+ for (const [k, v] of Object.entries(ds.global.shadow ?? {}))
168
+ vars[`shadow-${k}`] = v;
169
+ for (const [k, v] of Object.entries(ds.global.lineHeight ?? {}))
170
+ vars[`line-height-${k}`] = v;
116
171
  const used = [];
117
- for (const role of ["heading", "body"]) {
118
- const fam = ds.fonts[role].familyId ? byId.get(ds.fonts[role].familyId) : undefined;
172
+ const stack = (familyId, fallback) => {
173
+ const fam = familyId ? byId.get(familyId) : undefined;
119
174
  if (fam && !used.includes(fam))
120
175
  used.push(fam);
121
- vars[`font-${role}`] = [fam ? quote(fam.family) : null, ds.fonts[role].fallback].filter(Boolean).join(", ");
176
+ return [fam ? quote(fam.family) : null, fallback].filter(Boolean).join(", ");
177
+ };
178
+ for (const role of ["heading", "body"]) {
179
+ vars[`font-${role}`] = stack(ds.fonts[role].familyId, ds.fonts[role].fallback);
180
+ vars[`font-family-${role}`] = `var(--vp-font-${role})`;
181
+ }
182
+ // Project fonts by role (ADR-047): font.family.<role> → var(--vp-font-family-<role>).
183
+ for (const f of ds.extraFonts ?? []) {
184
+ if (f.role === "heading" || f.role === "body")
185
+ continue;
186
+ vars[`font-family-${f.role}`] = stack(f.familyId, f.fallback);
122
187
  }
123
188
  vars["icon-stroke"] = String(ds.icons?.strokeWidth ?? 2);
124
189
  const themes = {};
125
190
  for (const [name, t] of Object.entries(ds.themes)) {
126
191
  themes[name] = Object.fromEntries(Object.entries(t.color).map(([k, v]) => [`color-${k}`, colorCss(v)]));
127
192
  }
128
- return { vars, themes, fonts: used.map((f) => ({ family: f.family, faces: f.faces })) };
193
+ return { vars, themes, fonts: used.map((f) => ({ family: f.family, faces: f.faces })), ...(ds.motion ? { motion: ds.motion } : {}) };
129
194
  }
130
195
  /** Values an editor may offer for a token field (blueprint 31 §4 token picker). */
131
196
  export function tokenOptions(ds) {
197
+ const fontRoles = [...new Set(["heading", "body", ...(ds.extraFonts ?? []).map((f) => f.role)])];
132
198
  return {
199
+ "font.family": fontRoles.map((r) => `font.family.${r}`),
200
+ shadow: Object.keys(ds.global.shadow ?? {}).map((k) => `shadow.${k}`),
201
+ "line.height": Object.keys(ds.global.lineHeight ?? {}).map((k) => `line.height.${k}`),
133
202
  spacing: Object.keys(ds.global.spacing).map((k) => `spacing.${k}`),
134
203
  radius: Object.keys(ds.global.radius).map((k) => `radius.${k}`),
135
204
  "font.size": Object.keys(ds.global.fontSize).map((k) => `font.size.${k}`),
@@ -219,7 +288,63 @@ export const SHADCN_DESIGN_SYSTEM = {
219
288
  icons: { set: "lucide", strokeWidth: 2 },
220
289
  };
221
290
  /** Read-only starting points; users clone one into an editable workspace design system. */
291
+ /** Minimal starting point (ADR-047): a few neutrals + one brand colour; every semantic name the library reads. */
292
+ export const BLANK_DESIGN_SYSTEM = (() => {
293
+ const palette = { "white": "#ffffff", "gray-50": "#f9fafb", "gray-200": "#e5e7eb", "gray-500": "#6b7280", "gray-900": "#111827", "brand-600": "#2563eb", "danger-600": "#dc2626", "success-600": "#16a34a" };
294
+ const pick = (k) => /destructive|danger|error/.test(k) ? "danger-600" : /success/.test(k) ? "success-600"
295
+ : /^on-|foreground$/.test(k) && !/^(foreground|muted-foreground)$/.test(k) ? "white"
296
+ : /muted-foreground|muted$|placeholder/.test(k) ? "gray-500" : /border|input|ring-muted/.test(k) ? "gray-200"
297
+ : /primary|accent|ring|brand|link/.test(k) ? "brand-600" : /surface|card|popover|secondary|muted/.test(k) ? "gray-50"
298
+ : /background/.test(k) ? "white" : "gray-900";
299
+ return {
300
+ schemaVersion: 1,
301
+ global: {
302
+ palette,
303
+ spacing: DEFAULT_DESIGN_SYSTEM.global.spacing, radius: DEFAULT_DESIGN_SYSTEM.global.radius, fontSize: DEFAULT_DESIGN_SYSTEM.global.fontSize,
304
+ shadow: { sm: "0 1px 2px rgba(0,0,0,.05)", md: "0 4px 12px rgba(0,0,0,.08)", lg: "0 12px 32px rgba(0,0,0,.12)" },
305
+ lineHeight: { tight: "1.2", normal: "1.5", relaxed: "1.7" },
306
+ },
307
+ semantic: { color: Object.fromEntries(Object.keys(DEFAULT_DESIGN_SYSTEM.semantic.color).map((k) => [k, `{palette.${pick(k)}}`])) },
308
+ fonts: DEFAULT_DESIGN_SYSTEM.fonts,
309
+ themes: {},
310
+ };
311
+ })();
312
+ /**
313
+ * Starting guidelines for a design system (ADR-047), from its tokens — the team then edits them.
314
+ * AI assistants read these before choosing colours, sizes and fonts.
315
+ */
316
+ export function designGuidelinesTemplate(ds, fonts = []) {
317
+ const list = (o, prefix) => Object.keys(o ?? {}).map((k) => `\`${prefix}.${k}\``).join(", ") || "—";
318
+ const fontRoles = fonts.length ? fonts.map((f) => `- \`font.family.${f.role}\`${f.family ? ` (${f.family})` : ""}: …`).join("\n") : "- `font.family.heading`: titles\n- `font.family.body`: body text";
319
+ return `# Design guidelines
320
+
321
+ ## Colours
322
+ - Brand / main actions: \`semantic.color.primary\`. Secondary emphasis: \`semantic.color.accent\`.
323
+ - Text: \`semantic.color.text\`, secondary text: \`semantic.color.muted\`. Page background: \`semantic.color.background\`, cards/sections: \`semantic.color.surface\`.
324
+ - Never use raw colours when a semantic colour exists. Available: ${list(ds.semantic.color, "semantic.color")}.
325
+ - Themes: ${Object.keys(ds.themes).join(", ") || "none"} (e.g. dark sections).
326
+
327
+ ## Spacing (margin, padding, gaps)
328
+ - Mobile (base): section padding \`spacing.8\`, gaps \`spacing.4\`. Desktop (lg): section padding \`spacing.16\`, gaps \`spacing.6\`.
329
+ - Always responsive: { "$responsive": { "base": "spacing.8", "lg": "spacing.16" } }.
330
+ - Scale: ${list(ds.global.spacing, "spacing")}.
331
+
332
+ ## Radius & shadows
333
+ - Cards and inputs: \`radius.md\`; large media: \`radius.lg\`. Scale: ${list(ds.global.radius, "radius")}.
334
+ - Shadows: ${list(ds.global.shadow, "shadow")}.
335
+
336
+ ## Typography
337
+ ${fontRoles}
338
+ - Sizes: page title \`font.size.display\` on desktop, \`font.size.xl\` on mobile; body \`font.size.md\`. Scale: ${list(ds.global.fontSize, "font.size")}.
339
+ - Line heights: ${list(ds.global.lineHeight, "line.height")}.
340
+
341
+ ## Layout
342
+ - Max 3 columns on desktop (4 for small cards), 1 on mobile, 2 on tablets.
343
+ - Use Re-use components before building sections from scratch.
344
+ `;
345
+ }
222
346
  export const DESIGN_PRESETS = [
347
+ { id: "blank", name: "Blank", description: "A few neutrals and one brand colour, every semantic name — build your own", system: BLANK_DESIGN_SYSTEM },
223
348
  { id: "shadcn", name: "shadcn/ui (Neutral)", description: "shadcn/ui tokens (oklch), light + dark, Inter, Lucide icons", system: SHADCN_DESIGN_SYSTEM },
224
349
  { id: "visual-default", name: "Visual Platform default", description: "The original built-in look (blue primary, orange accent)", system: DEFAULT_DESIGN_SYSTEM },
225
350
  ];
@@ -1 +1 @@
1
- {"version":3,"file":"design.js","sourceRoot":"","sources":["../src/design.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"design.js","sourceRoot":"","sources":["../src/design.ts"],"names":[],"mappings":"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"}
package/dist/events.d.ts CHANGED
@@ -18,9 +18,48 @@ export declare const EventBindingsSchema: z.ZodRecord<z.ZodEnum<{
18
18
  toggle: "toggle";
19
19
  }> & z.core.$partial, z.ZodString>;
20
20
  export type EventBindings = z.infer<typeof EventBindingsSchema>;
21
+ export declare const EventStepSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
22
+ kind: z.ZodLiteral<"toast">;
23
+ text: z.ZodString;
24
+ }, z.core.$strict>, z.ZodObject<{
25
+ kind: z.ZodLiteral<"navigate">;
26
+ href: z.ZodString;
27
+ }, z.core.$strict>, z.ZodObject<{
28
+ kind: z.ZodLiteral<"refresh">;
29
+ }, z.core.$strict>], "kind">;
30
+ export type EventStep = z.infer<typeof EventStepSchema>;
31
+ export declare const EventStepsSchema: z.ZodRecord<z.ZodEnum<{
32
+ blur: "blur";
33
+ change: "change";
34
+ click: "click";
35
+ enter: "enter";
36
+ reset: "reset";
37
+ submit: "submit";
38
+ toggle: "toggle";
39
+ }> & z.core.$partial, z.ZodObject<{
40
+ success: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
41
+ kind: z.ZodLiteral<"toast">;
42
+ text: z.ZodString;
43
+ }, z.core.$strict>, z.ZodObject<{
44
+ kind: z.ZodLiteral<"navigate">;
45
+ href: z.ZodString;
46
+ }, z.core.$strict>, z.ZodObject<{
47
+ kind: z.ZodLiteral<"refresh">;
48
+ }, z.core.$strict>], "kind">>;
49
+ error: z.ZodOptional<z.ZodDiscriminatedUnion<[z.ZodObject<{
50
+ kind: z.ZodLiteral<"toast">;
51
+ text: z.ZodString;
52
+ }, z.core.$strict>, z.ZodObject<{
53
+ kind: z.ZodLiteral<"navigate">;
54
+ href: z.ZodString;
55
+ }, z.core.$strict>, z.ZodObject<{
56
+ kind: z.ZodLiteral<"refresh">;
57
+ }, z.core.$strict>], "kind">>;
58
+ }, z.core.$strict>>;
59
+ export type EventSteps = z.infer<typeof EventStepsSchema>;
21
60
  export type EventUse = {
22
61
  name: string;
23
- kind: EventKind;
62
+ kind: EventKind | "mount" | "unmount" | "visible" | "leave" | "every";
24
63
  nodeId: string;
25
64
  type: string;
26
65
  };
@@ -1 +1 @@
1
- {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAa,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnE;;;GAGG;AACH,eAAO,MAAM,WAAW,YAAI,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAU,CAAC;AACtG,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;AAErD,0FAA0F;AAC1F,eAAO,MAAM,eAAe,aAAsF,CAAC;AACnH,eAAO,MAAM,mBAAmB;;;;;;;;kCAAwD,CAAC;AACzF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,MAAM,MAAM,QAAQ,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,SAAS,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvF,0FAA0F;AAC1F,wBAAgB,aAAa,CAAC,SAAS,EAAE;IAAE,KAAK,EAAE,SAAS,aAAa,EAAE,CAAA;CAAE,EAAE,GAAG,QAAQ,EAAE,CAM1F;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAYxE"}
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAa,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnE;;;GAGG;AACH,eAAO,MAAM,WAAW,YAAI,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAU,CAAC;AACtG,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,WAAW,CAAC,CAAC,MAAM,CAAC,CAAC;AAErD,0FAA0F;AAC1F,eAAO,MAAM,eAAe,aAAsF,CAAC;AACnH,eAAO,MAAM,mBAAmB;;;;;;;;kCAAwD,CAAC;AACzF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAOhE,eAAO,MAAM,eAAe;;;;;;;;4BAI1B,CAAC;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AACxD,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAAsI,CAAC;AACpK,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,MAAM,MAAM,QAAQ,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAE7I,0FAA0F;AAC1F,wBAAgB,aAAa,CAAC,SAAS,EAAE;IAAE,KAAK,EAAE,SAAS,aAAa,EAAE,CAAA;CAAE,EAAE,GAAG,QAAQ,EAAE,CAS1F;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAYxE"}