@aibloom/schemas 0.2.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 (54) hide show
  1. package/README.md +20 -0
  2. package/dist/config.d.ts +124 -0
  3. package/dist/config.d.ts.map +1 -0
  4. package/dist/config.js +27 -0
  5. package/dist/config.js.map +1 -0
  6. package/dist/design-reference.d.ts +860 -0
  7. package/dist/design-reference.d.ts.map +1 -0
  8. package/dist/design-reference.js +147 -0
  9. package/dist/design-reference.js.map +1 -0
  10. package/dist/design-system.d.ts +191 -0
  11. package/dist/design-system.d.ts.map +1 -0
  12. package/dist/design-system.js +47 -0
  13. package/dist/design-system.js.map +1 -0
  14. package/dist/design-tokens.d.ts +318 -0
  15. package/dist/design-tokens.d.ts.map +1 -0
  16. package/dist/design-tokens.js +78 -0
  17. package/dist/design-tokens.js.map +1 -0
  18. package/dist/framework.d.ts +90 -0
  19. package/dist/framework.d.ts.map +1 -0
  20. package/dist/framework.js +34 -0
  21. package/dist/framework.js.map +1 -0
  22. package/dist/host-task.d.ts +197 -0
  23. package/dist/host-task.d.ts.map +1 -0
  24. package/dist/host-task.js +38 -0
  25. package/dist/host-task.js.map +1 -0
  26. package/dist/implementation-plan.d.ts +69 -0
  27. package/dist/implementation-plan.d.ts.map +1 -0
  28. package/dist/implementation-plan.js +21 -0
  29. package/dist/implementation-plan.js.map +1 -0
  30. package/dist/index.d.ts +13 -0
  31. package/dist/index.d.ts.map +1 -0
  32. package/dist/index.js +13 -0
  33. package/dist/index.js.map +1 -0
  34. package/dist/page-shape.d.ts +334 -0
  35. package/dist/page-shape.d.ts.map +1 -0
  36. package/dist/page-shape.js +62 -0
  37. package/dist/page-shape.js.map +1 -0
  38. package/dist/product.d.ts +153 -0
  39. package/dist/product.d.ts.map +1 -0
  40. package/dist/product.js +32 -0
  41. package/dist/product.js.map +1 -0
  42. package/dist/state.d.ts +505 -0
  43. package/dist/state.d.ts.map +1 -0
  44. package/dist/state.js +115 -0
  45. package/dist/state.js.map +1 -0
  46. package/dist/verification.d.ts +197 -0
  47. package/dist/verification.d.ts.map +1 -0
  48. package/dist/verification.js +50 -0
  49. package/dist/verification.js.map +1 -0
  50. package/dist/visual-input.d.ts +130 -0
  51. package/dist/visual-input.d.ts.map +1 -0
  52. package/dist/visual-input.js +34 -0
  53. package/dist/visual-input.js.map +1 -0
  54. package/package.json +23 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"design-reference.d.ts","sourceRoot":"","sources":["../src/design-reference.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAcxB,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkBxC,CAAC;AAEH,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC;AAIpF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgCjC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAItE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;EAQhC,CAAC;AAEH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAIpE,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;EAU/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAIlE,eAAO,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAepC,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAI5E,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAc7B,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAI9D,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAa/B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAIlE,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;EAQrC,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAIhC,CAAC;AAEH,eAAO,MAAM,6BAA6B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOxC,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAC9E,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACpE,MAAM,MAAM,uBAAuB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,6BAA6B,CAAC,CAAC"}
@@ -0,0 +1,147 @@
1
+ import { z } from "zod";
2
+ import { SCHEMA_VERSION } from "./state.js";
3
+ import { ColorSystemSchema, SpacingSystemSchema, LayoutSystemSchema, ImagerySystemSchema, MotionSystemSchema, EvidenceRefSchema, FontSpecSchema, } from "./design-tokens.js";
4
+ // ── Design Reference Document (raw parsed DESIGN.md) ──
5
+ export const DesignReferenceDocumentSchema = z.object({
6
+ schemaVersion: z.literal(SCHEMA_VERSION),
7
+ id: z.string(),
8
+ name: z.string(),
9
+ sourceType: z.enum(["refero", "figma-export", "manual", "unknown", "uploaded", "local", "remote", "image-derived"]),
10
+ sourceUri: z.string().optional(),
11
+ originalPath: z.string(),
12
+ sections: z.array(z.object({
13
+ heading: z.string(),
14
+ level: z.number(),
15
+ content: z.string(),
16
+ tables: z.array(z.string()).optional(),
17
+ codeBlocks: z.array(z.string()).optional(),
18
+ })),
19
+ rawText: z.string(),
20
+ importedAt: z.string(),
21
+ });
22
+ // ── Style Fingerprint ──
23
+ export const StyleFingerprintSchema = z.object({
24
+ schemaVersion: z.literal(SCHEMA_VERSION),
25
+ id: z.string(),
26
+ name: z.string(),
27
+ theme: z.enum(["light", "dark", "adaptive", "unknown"]).optional(),
28
+ styleSummary: z.string(),
29
+ personality: z.array(z.string()),
30
+ visualMetaphor: z.string().optional(),
31
+ productFit: z.array(z.string()),
32
+ productMisfit: z.array(z.string()),
33
+ colorSystem: ColorSystemSchema,
34
+ typography: z.object({
35
+ display: FontSpecSchema.optional(),
36
+ body: FontSpecSchema.optional(),
37
+ mono: FontSpecSchema.optional(),
38
+ rules: z.array(z.string()),
39
+ }),
40
+ spacing: SpacingSystemSchema,
41
+ shapeLanguage: z.object({
42
+ cardRadius: z.string().optional(),
43
+ buttonRadius: z.string().optional(),
44
+ inputRadius: z.string().optional(),
45
+ borderWeight: z.string().optional(),
46
+ shadowStyle: z.enum(["none", "subtle", "soft", "dramatic", "mixed"]),
47
+ }),
48
+ layoutLanguage: LayoutSystemSchema,
49
+ componentLanguage: z.array(z.string()),
50
+ imagery: ImagerySystemSchema,
51
+ motion: MotionSystemSchema,
52
+ hardConstraints: z.array(z.string()),
53
+ antiPatterns: z.array(z.string()),
54
+ rawEvidence: z.array(EvidenceRefSchema),
55
+ });
56
+ // ── Normalized Token ──
57
+ export const NormalizedTokenSchema = z.object({
58
+ name: z.string(),
59
+ value: z.string(),
60
+ dimension: z.enum(["color", "typography", "spacing", "radius", "shadow", "surface", "layout"]),
61
+ standardizedValue: z.string(),
62
+ sourceFingerprintId: z.string(),
63
+ conflictingWith: z.array(z.string()).optional(),
64
+ isCompatible: z.boolean().optional(),
65
+ });
66
+ // ── Design Conflict ──
67
+ export const DesignConflictSchema = z.object({
68
+ dimension: z.enum([
69
+ "theme", "canvas", "accent", "typography", "radius",
70
+ "elevation", "layout", "components", "imagery", "motion", "anti-patterns",
71
+ ]),
72
+ references: z.array(z.string()),
73
+ relation: z.enum(["compatible", "weak-conflict", "strong-conflict", "mutually-exclusive", "complementary"]),
74
+ severity: z.union([z.literal(0), z.literal(1), z.literal(2), z.literal(3)]),
75
+ explanation: z.string(),
76
+ recommendation: z.string(),
77
+ });
78
+ // ── Style Conflict Report ──
79
+ export const StyleConflictReportSchema = z.object({
80
+ schemaVersion: z.literal(SCHEMA_VERSION),
81
+ compatibilityScore: z.number().min(0).max(100),
82
+ fusionRisk: z.enum(["low", "medium", "high"]),
83
+ summary: z.string(),
84
+ conflicts: z.array(DesignConflictSchema),
85
+ safeFusions: z.array(z.string()),
86
+ nonNegotiableConflicts: z.array(z.object({
87
+ description: z.string(),
88
+ refA: z.string(),
89
+ refB: z.string(),
90
+ })),
91
+ recommendedOptions: z.array(z.string()),
92
+ });
93
+ // ── Fusion Option ──
94
+ export const FusionOptionSchema = z.object({
95
+ id: z.string(),
96
+ label: z.string(),
97
+ strategy: z.enum([
98
+ "primary-plus-accent", "page-type-split", "layered-fusion",
99
+ "contextual-fusion", "new-derived-system", "reject-and-restart",
100
+ ]),
101
+ description: z.string(),
102
+ primaryReference: z.string().optional(),
103
+ secondaryReferences: z.array(z.string()).optional(),
104
+ adoptedRules: z.array(z.string()),
105
+ rejectedRules: z.array(z.string()),
106
+ risks: z.array(z.string()),
107
+ recommendedFor: z.array(z.string()),
108
+ });
109
+ // ── Fusion Decision ──
110
+ export const FusionDecisionSchema = z.object({
111
+ schemaVersion: z.literal(SCHEMA_VERSION),
112
+ selectedOptionId: z.string(),
113
+ selectedStrategy: z.enum([
114
+ "primary-plus-accent", "page-type-split", "layered-fusion",
115
+ "contextual-fusion", "new-derived-system", "reject-and-restart",
116
+ ]),
117
+ userInstruction: z.string(),
118
+ timestamp: z.string(),
119
+ finalReferenceRoles: z.record(z.enum(["primary", "secondary", "inspiration", "negative", "rejected"])),
120
+ rejectedRules: z.array(z.string()),
121
+ conditionalRules: z.array(z.string()),
122
+ notes: z.array(z.string()),
123
+ });
124
+ // ── Synthesized Design System ──
125
+ export const DesignDecisionSourceSchema = z.object({
126
+ decisionId: z.string(),
127
+ dimension: z.string(),
128
+ finalRule: z.string(),
129
+ sourceReferenceIds: z.array(z.string()),
130
+ treatment: z.enum(["adopted", "adapted", "rejected", "conditional", "derived"]),
131
+ rationale: z.string(),
132
+ affectedFiles: z.array(z.string()).optional(),
133
+ });
134
+ export const DesignSourceMapSchema = z.object({
135
+ schemaVersion: z.literal(SCHEMA_VERSION),
136
+ projectDesignPath: z.string(),
137
+ decisions: z.array(DesignDecisionSourceSchema),
138
+ });
139
+ export const SynthesizedDesignSystemSchema = z.object({
140
+ schemaVersion: z.literal(SCHEMA_VERSION),
141
+ designPath: z.string(),
142
+ fusionBriefPath: z.string(),
143
+ sourceMapPath: z.string(),
144
+ decisions: z.array(DesignDecisionSourceSchema),
145
+ content: z.string(),
146
+ });
147
+ //# sourceMappingURL=design-reference.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"design-reference.js","sourceRoot":"","sources":["../src/design-reference.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,191 @@
1
+ import { z } from "zod";
2
+ export declare const DesignSystemSpecSchema: z.ZodObject<{
3
+ personality: z.ZodArray<z.ZodString, "many">;
4
+ principles: z.ZodArray<z.ZodString, "many">;
5
+ visualMetaphor: z.ZodOptional<z.ZodString>;
6
+ colors: z.ZodArray<z.ZodObject<{
7
+ name: z.ZodString;
8
+ hex: z.ZodString;
9
+ role: z.ZodEnum<["canvas", "surface", "text", "muted-text", "accent", "decorative", "danger", "success", "border"]>;
10
+ usage: z.ZodString;
11
+ }, "strip", z.ZodTypeAny, {
12
+ name: string;
13
+ role: "canvas" | "surface" | "text" | "muted-text" | "accent" | "decorative" | "danger" | "success" | "border";
14
+ hex: string;
15
+ usage: string;
16
+ }, {
17
+ name: string;
18
+ role: "canvas" | "surface" | "text" | "muted-text" | "accent" | "decorative" | "danger" | "success" | "border";
19
+ hex: string;
20
+ usage: string;
21
+ }>, "many">;
22
+ typography: z.ZodObject<{
23
+ display: z.ZodOptional<z.ZodString>;
24
+ body: z.ZodString;
25
+ mono: z.ZodOptional<z.ZodString>;
26
+ scale: z.ZodArray<z.ZodString, "many">;
27
+ }, "strip", z.ZodTypeAny, {
28
+ body: string;
29
+ scale: string[];
30
+ display?: string | undefined;
31
+ mono?: string | undefined;
32
+ }, {
33
+ body: string;
34
+ scale: string[];
35
+ display?: string | undefined;
36
+ mono?: string | undefined;
37
+ }>;
38
+ spacing: z.ZodObject<{
39
+ baseUnit: z.ZodString;
40
+ scale: z.ZodArray<z.ZodString, "many">;
41
+ }, "strip", z.ZodTypeAny, {
42
+ baseUnit: string;
43
+ scale: string[];
44
+ }, {
45
+ baseUnit: string;
46
+ scale: string[];
47
+ }>;
48
+ radius: z.ZodObject<{
49
+ none: z.ZodOptional<z.ZodString>;
50
+ small: z.ZodOptional<z.ZodString>;
51
+ medium: z.ZodOptional<z.ZodString>;
52
+ large: z.ZodOptional<z.ZodString>;
53
+ full: z.ZodOptional<z.ZodString>;
54
+ }, "strip", z.ZodTypeAny, {
55
+ medium?: string | undefined;
56
+ none?: string | undefined;
57
+ small?: string | undefined;
58
+ large?: string | undefined;
59
+ full?: string | undefined;
60
+ }, {
61
+ medium?: string | undefined;
62
+ none?: string | undefined;
63
+ small?: string | undefined;
64
+ large?: string | undefined;
65
+ full?: string | undefined;
66
+ }>;
67
+ shadow: z.ZodObject<{
68
+ none: z.ZodOptional<z.ZodString>;
69
+ subtle: z.ZodOptional<z.ZodString>;
70
+ medium: z.ZodOptional<z.ZodString>;
71
+ large: z.ZodOptional<z.ZodString>;
72
+ }, "strip", z.ZodTypeAny, {
73
+ medium?: string | undefined;
74
+ none?: string | undefined;
75
+ subtle?: string | undefined;
76
+ large?: string | undefined;
77
+ }, {
78
+ medium?: string | undefined;
79
+ none?: string | undefined;
80
+ subtle?: string | undefined;
81
+ large?: string | undefined;
82
+ }>;
83
+ surface: z.ZodArray<z.ZodObject<{
84
+ name: z.ZodString;
85
+ background: z.ZodString;
86
+ border: z.ZodOptional<z.ZodString>;
87
+ shadow: z.ZodOptional<z.ZodString>;
88
+ }, "strip", z.ZodTypeAny, {
89
+ name: string;
90
+ background: string;
91
+ border?: string | undefined;
92
+ shadow?: string | undefined;
93
+ }, {
94
+ name: string;
95
+ background: string;
96
+ border?: string | undefined;
97
+ shadow?: string | undefined;
98
+ }>, "many">;
99
+ componentRules: z.ZodArray<z.ZodString, "many">;
100
+ motionRules: z.ZodArray<z.ZodString, "many">;
101
+ responsiveRules: z.ZodArray<z.ZodString, "many">;
102
+ antiPatterns: z.ZodArray<z.ZodString, "many">;
103
+ }, "strip", z.ZodTypeAny, {
104
+ surface: {
105
+ name: string;
106
+ background: string;
107
+ border?: string | undefined;
108
+ shadow?: string | undefined;
109
+ }[];
110
+ personality: string[];
111
+ typography: {
112
+ body: string;
113
+ scale: string[];
114
+ display?: string | undefined;
115
+ mono?: string | undefined;
116
+ };
117
+ spacing: {
118
+ baseUnit: string;
119
+ scale: string[];
120
+ };
121
+ antiPatterns: string[];
122
+ radius: {
123
+ medium?: string | undefined;
124
+ none?: string | undefined;
125
+ small?: string | undefined;
126
+ large?: string | undefined;
127
+ full?: string | undefined;
128
+ };
129
+ shadow: {
130
+ medium?: string | undefined;
131
+ none?: string | undefined;
132
+ subtle?: string | undefined;
133
+ large?: string | undefined;
134
+ };
135
+ principles: string[];
136
+ colors: {
137
+ name: string;
138
+ role: "canvas" | "surface" | "text" | "muted-text" | "accent" | "decorative" | "danger" | "success" | "border";
139
+ hex: string;
140
+ usage: string;
141
+ }[];
142
+ componentRules: string[];
143
+ motionRules: string[];
144
+ responsiveRules: string[];
145
+ visualMetaphor?: string | undefined;
146
+ }, {
147
+ surface: {
148
+ name: string;
149
+ background: string;
150
+ border?: string | undefined;
151
+ shadow?: string | undefined;
152
+ }[];
153
+ personality: string[];
154
+ typography: {
155
+ body: string;
156
+ scale: string[];
157
+ display?: string | undefined;
158
+ mono?: string | undefined;
159
+ };
160
+ spacing: {
161
+ baseUnit: string;
162
+ scale: string[];
163
+ };
164
+ antiPatterns: string[];
165
+ radius: {
166
+ medium?: string | undefined;
167
+ none?: string | undefined;
168
+ small?: string | undefined;
169
+ large?: string | undefined;
170
+ full?: string | undefined;
171
+ };
172
+ shadow: {
173
+ medium?: string | undefined;
174
+ none?: string | undefined;
175
+ subtle?: string | undefined;
176
+ large?: string | undefined;
177
+ };
178
+ principles: string[];
179
+ colors: {
180
+ name: string;
181
+ role: "canvas" | "surface" | "text" | "muted-text" | "accent" | "decorative" | "danger" | "success" | "border";
182
+ hex: string;
183
+ usage: string;
184
+ }[];
185
+ componentRules: string[];
186
+ motionRules: string[];
187
+ responsiveRules: string[];
188
+ visualMetaphor?: string | undefined;
189
+ }>;
190
+ export type DesignSystemSpec = z.infer<typeof DesignSystemSpecSchema>;
191
+ //# sourceMappingURL=design-system.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"design-system.d.ts","sourceRoot":"","sources":["../src/design-system.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA+CjC,CAAC;AAEH,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC"}
@@ -0,0 +1,47 @@
1
+ import { z } from "zod";
2
+ // ── Design System Spec (project-level DESIGN.md content model) ──
3
+ export const DesignSystemSpecSchema = z.object({
4
+ personality: z.array(z.string()),
5
+ principles: z.array(z.string()),
6
+ visualMetaphor: z.string().optional(),
7
+ colors: z.array(z.object({
8
+ name: z.string(),
9
+ hex: z.string().regex(/^#[0-9a-fA-F]{3,8}$/),
10
+ role: z.enum(["canvas", "surface", "text", "muted-text", "accent", "decorative", "danger", "success", "border"]),
11
+ usage: z.string(),
12
+ })),
13
+ typography: z.object({
14
+ display: z.string().optional(),
15
+ body: z.string(),
16
+ mono: z.string().optional(),
17
+ scale: z.array(z.string()),
18
+ }),
19
+ spacing: z.object({
20
+ baseUnit: z.string(),
21
+ scale: z.array(z.string()),
22
+ }),
23
+ radius: z.object({
24
+ none: z.string().optional(),
25
+ small: z.string().optional(),
26
+ medium: z.string().optional(),
27
+ large: z.string().optional(),
28
+ full: z.string().optional(),
29
+ }),
30
+ shadow: z.object({
31
+ none: z.string().optional(),
32
+ subtle: z.string().optional(),
33
+ medium: z.string().optional(),
34
+ large: z.string().optional(),
35
+ }),
36
+ surface: z.array(z.object({
37
+ name: z.string(),
38
+ background: z.string(),
39
+ border: z.string().optional(),
40
+ shadow: z.string().optional(),
41
+ })),
42
+ componentRules: z.array(z.string()),
43
+ motionRules: z.array(z.string()),
44
+ responsiveRules: z.array(z.string()),
45
+ antiPatterns: z.array(z.string()),
46
+ });
47
+ //# sourceMappingURL=design-system.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"design-system.js","sourceRoot":"","sources":["../src/design-system.ts"],"names":[],"mappings":"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"}