@tuongaz/seeflow 0.1.74 → 0.1.76
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/dist/web/assets/arc-DtxbFlka.js +1 -0
- package/dist/web/assets/architectureDiagram-3BPJPVTR-CVOsL8en.js +36 -0
- package/dist/web/assets/band-BEGRCkg7.js +1 -0
- package/dist/web/assets/blockDiagram-GPEHLZMM-C4ln3pHP.js +132 -0
- package/dist/web/assets/c4Diagram-AAUBKEIU-COBq_O0m.js +10 -0
- package/dist/web/assets/channel-BpDUSI6-.js +1 -0
- package/dist/web/assets/chart-DD5RfLtm.js +73 -0
- package/dist/web/assets/chunk-2J33WTMH-Bdm-YMMv.js +1 -0
- package/dist/web/assets/chunk-4BX2VUAB-BV9NRSCp.js +1 -0
- package/dist/web/assets/chunk-55IACEB6-D-Xe7eUY.js +1 -0
- package/dist/web/assets/chunk-727SXJPM-DB6EZ4tw.js +206 -0
- package/dist/web/assets/chunk-AQP2D5EJ-DDlp8cdl.js +231 -0
- package/dist/web/assets/chunk-FMBD7UC4-qmkSV1r1.js +15 -0
- package/dist/web/assets/chunk-ND2GUHAM-BFkM9OZ5.js +1 -0
- package/dist/web/assets/chunk-QZHKN3VN-Cye5hUth.js +1 -0
- package/dist/web/assets/classDiagram-4FO5ZUOK-po1qHJgX.js +1 -0
- package/dist/web/assets/classDiagram-v2-Q7XG4LA2-po1qHJgX.js +1 -0
- package/dist/web/assets/{code-block-DTATyN2X.js → code-block-B2Jj4pwe.js} +1 -1
- package/dist/web/assets/cose-bilkent-S5V4N54A-B8Q15-m-.js +1 -0
- package/dist/web/assets/cytoscape.esm-BHYC38rz.js +331 -0
- package/dist/web/assets/dagre-BM42HDAG-BEYccL0v.js +4 -0
- package/dist/web/assets/defaultLocale-CrowFXzY.js +1 -0
- package/dist/web/assets/diagram-2AECGRRQ-BHPvhIzV.js +43 -0
- package/dist/web/assets/diagram-5GNKFQAL-Csqbxt3l.js +10 -0
- package/dist/web/assets/diagram-KO2AKTUF-BR6CIJyT.js +3 -0
- package/dist/web/assets/diagram-LMA3HP47-CNtClLgB.js +24 -0
- package/dist/web/assets/diagram-OG6HWLK6-6C-uLOFp.js +24 -0
- package/dist/web/assets/erDiagram-TEJ5UH35-WbZOwkSY.js +85 -0
- package/dist/web/assets/flowDiagram-I6XJVG4X-DkXzWb1H.js +162 -0
- package/dist/web/assets/ganttDiagram-6RSMTGT7-CUvI4hDd.js +292 -0
- package/dist/web/assets/gitGraphDiagram-PVQCEYII-DQ5Z5DTr.js +106 -0
- package/dist/web/assets/graph-Dqkl27Ch.js +1 -0
- package/dist/web/assets/{index-B1T3YjX6.js → index-DJa2Qm_q.js} +1738 -1737
- package/dist/web/assets/index-DljfurDC.css +1 -0
- package/dist/web/assets/{index.es-CgEQDFi5.js → index.es-DU_7oRoK.js} +1 -1
- package/dist/web/assets/infoDiagram-5YYISTIA-CVl3bX4h.js +2 -0
- package/dist/web/assets/init-BFKUnIhM.js +1 -0
- package/dist/web/assets/ishikawaDiagram-YF4QCWOH-CQs9MZtd.js +70 -0
- package/dist/web/assets/journeyDiagram-JHISSGLW-B9emRTSL.js +139 -0
- package/dist/web/assets/{jspdf.es.min-CvwMPY1k.js → jspdf.es.min-DO9eBtyx.js} +3 -3
- package/dist/web/assets/kanban-definition-UN3LZRKU-CU4PXBkO.js +89 -0
- package/dist/web/assets/katex-C5jXJg4s.js +257 -0
- package/dist/web/assets/layout-DO9UvE1P.js +1 -0
- package/dist/web/assets/linear-Djd98ym6.js +1 -0
- package/dist/web/assets/markdown-Dtbihta2.js +1 -0
- package/dist/web/assets/mermaid.core--5B4uu7H.js +307 -0
- package/dist/web/assets/mindmap-definition-RKZ34NQL-DBa-qOvW.js +96 -0
- package/dist/web/assets/ordinal-BQ3KlzSu.js +1 -0
- package/dist/web/assets/pieDiagram-4H26LBE5-BgO03eBD.js +30 -0
- package/dist/web/assets/quadrantDiagram-W4KKPZXB-D5qnQqxO.js +7 -0
- package/dist/web/assets/requirementDiagram-4Y6WPE33-CvFTU_QP.js +84 -0
- package/dist/web/assets/sankeyDiagram-5OEKKPKP-BSwt6J0r.js +40 -0
- package/dist/web/assets/sequenceDiagram-3UESZ5HK-B6xwt7gx.js +162 -0
- package/dist/web/assets/stateDiagram-AJRCARHV-B4aBLe9A.js +1 -0
- package/dist/web/assets/stateDiagram-v2-BHNVJYJU-D1iGL3Mj.js +1 -0
- package/dist/web/assets/step-CWvwoXpJ.js +1 -0
- package/dist/web/assets/time-VmDaOXzG.js +1 -0
- package/dist/web/assets/timeline-definition-PNZ67QCA-Bp46ZbZu.js +120 -0
- package/dist/web/assets/vennDiagram-CIIHVFJN-ObB0ozDF.js +34 -0
- package/dist/web/assets/wardley-L42UT6IY-DZQGppGX.js +173 -0
- package/dist/web/assets/wardleyDiagram-YWT4CUSO-B3dCDfV5.js +78 -0
- package/dist/web/assets/xychartDiagram-2RQKCTM6-CpxmkRi4.js +7 -0
- package/dist/web/index.html +2 -2
- package/package.json +65 -56
- package/src/schema-catalog.ts +2 -0
- package/src/schema.ts +88 -23
- package/src/vendored-canvas-catalog.ts +108 -0
- package/dist/web/assets/chart-Bk7w2gX0.js +0 -73
- package/dist/web/assets/index-DJdVTUx5.css +0 -1
- package/dist/web/assets/markdown-tPuLLX8d.js +0 -1
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
|
|
3
|
+
// `$ref` shapes accepted in any prop slot. Resolved at render time by the
|
|
4
|
+
// json-render runtime — Zod here only enforces structural shape; path /
|
|
5
|
+
// action-name validity is enforced by superRefine in apps/studio/src/schema.ts.
|
|
6
|
+
const StateRef = z.object({ $state: z.string().min(1) });
|
|
7
|
+
const ActionRef = z.object({ $action: z.string().min(1) });
|
|
8
|
+
const CondRef = z.object({
|
|
9
|
+
$cond: z.unknown(),
|
|
10
|
+
$then: z.unknown(),
|
|
11
|
+
$else: z.unknown().optional(),
|
|
12
|
+
});
|
|
13
|
+
const refOr = <T extends z.ZodTypeAny>(t: T) => z.union([t, StateRef, ActionRef, CondRef]);
|
|
14
|
+
|
|
15
|
+
const StringProp = refOr(z.string());
|
|
16
|
+
const NumberProp = refOr(z.number());
|
|
17
|
+
const BoolProp = refOr(z.boolean());
|
|
18
|
+
|
|
19
|
+
const PropsSchemas = {
|
|
20
|
+
Card: z.object({ title: StringProp.optional() }),
|
|
21
|
+
Separator: z.object({ orientation: refOr(z.enum(['horizontal', 'vertical'])).optional() }),
|
|
22
|
+
Tabs: z.object({
|
|
23
|
+
value: StringProp.optional(),
|
|
24
|
+
items: z.array(z.object({ id: z.string(), label: z.string() })),
|
|
25
|
+
onChange: ActionRef.optional(),
|
|
26
|
+
}),
|
|
27
|
+
Accordion: z.object({
|
|
28
|
+
items: z.array(z.object({ id: z.string(), title: z.string(), content: z.string() })),
|
|
29
|
+
}),
|
|
30
|
+
Badge: z.object({
|
|
31
|
+
label: StringProp,
|
|
32
|
+
variant: refOr(z.enum(['default', 'secondary', 'destructive', 'outline'])).optional(),
|
|
33
|
+
}),
|
|
34
|
+
Avatar: z.object({
|
|
35
|
+
src: StringProp.optional(),
|
|
36
|
+
alt: StringProp.optional(),
|
|
37
|
+
fallback: StringProp.optional(),
|
|
38
|
+
}),
|
|
39
|
+
Progress: z.object({ value: NumberProp }),
|
|
40
|
+
Skeleton: z.object({ width: NumberProp.optional(), height: NumberProp.optional() }),
|
|
41
|
+
Label: z.object({ text: StringProp }),
|
|
42
|
+
Heading: z.object({
|
|
43
|
+
level: refOr(z.union([z.literal(1), z.literal(2), z.literal(3), z.literal(4)])).optional(),
|
|
44
|
+
text: StringProp,
|
|
45
|
+
}),
|
|
46
|
+
Text: z.object({ text: StringProp, muted: BoolProp.optional() }),
|
|
47
|
+
Icon: z.object({ name: StringProp, size: NumberProp.optional() }),
|
|
48
|
+
Chart: z.object({
|
|
49
|
+
kind: refOr(z.enum(['bar', 'line', 'area', 'pie'])),
|
|
50
|
+
data: refOr(z.array(z.record(z.string(), z.unknown()))),
|
|
51
|
+
xKey: StringProp.optional(),
|
|
52
|
+
series: z.array(z.object({ key: z.string(), label: z.string().optional() })).optional(),
|
|
53
|
+
}),
|
|
54
|
+
Table: z.object({
|
|
55
|
+
columns: z.array(z.object({ key: z.string(), label: z.string() })),
|
|
56
|
+
rows: refOr(z.array(z.record(z.string(), z.unknown()))),
|
|
57
|
+
}),
|
|
58
|
+
Metric: z.object({ label: StringProp, value: refOr(z.union([z.string(), z.number()])) }),
|
|
59
|
+
CodeBlock: z.object({ code: StringProp, language: StringProp.optional() }),
|
|
60
|
+
Markdown: z.object({ content: StringProp }),
|
|
61
|
+
Button: z.object({
|
|
62
|
+
label: StringProp,
|
|
63
|
+
variant: refOr(
|
|
64
|
+
z.enum(['default', 'destructive', 'outline', 'secondary', 'ghost', 'link']),
|
|
65
|
+
).optional(),
|
|
66
|
+
onClick: ActionRef.optional(),
|
|
67
|
+
disabled: BoolProp.optional(),
|
|
68
|
+
}),
|
|
69
|
+
Input: z.object({
|
|
70
|
+
value: StringProp.optional(),
|
|
71
|
+
placeholder: StringProp.optional(),
|
|
72
|
+
onChange: ActionRef.optional(),
|
|
73
|
+
}),
|
|
74
|
+
Checkbox: z.object({
|
|
75
|
+
checked: BoolProp.optional(),
|
|
76
|
+
onChange: ActionRef.optional(),
|
|
77
|
+
label: StringProp.optional(),
|
|
78
|
+
}),
|
|
79
|
+
Switch: z.object({ checked: BoolProp.optional(), onChange: ActionRef.optional() }),
|
|
80
|
+
Select: z.object({
|
|
81
|
+
value: StringProp.optional(),
|
|
82
|
+
items: z.array(z.object({ value: z.string(), label: z.string() })),
|
|
83
|
+
onChange: ActionRef.optional(),
|
|
84
|
+
}),
|
|
85
|
+
Textarea: z.object({
|
|
86
|
+
value: StringProp.optional(),
|
|
87
|
+
placeholder: StringProp.optional(),
|
|
88
|
+
rows: NumberProp.optional(),
|
|
89
|
+
onChange: ActionRef.optional(),
|
|
90
|
+
}),
|
|
91
|
+
Slider: z.object({
|
|
92
|
+
value: NumberProp.optional(),
|
|
93
|
+
min: NumberProp.optional(),
|
|
94
|
+
max: NumberProp.optional(),
|
|
95
|
+
step: NumberProp.optional(),
|
|
96
|
+
onChange: ActionRef.optional(),
|
|
97
|
+
}),
|
|
98
|
+
} as const;
|
|
99
|
+
|
|
100
|
+
export const COMPONENT_NAMES = Object.keys(PropsSchemas) as Array<keyof typeof PropsSchemas>;
|
|
101
|
+
|
|
102
|
+
export const componentCatalog = {
|
|
103
|
+
components: Object.fromEntries(
|
|
104
|
+
COMPONENT_NAMES.map((name) => [name, { props: PropsSchemas[name], description: name }]),
|
|
105
|
+
) as Record<string, { props: z.ZodTypeAny; description: string }>,
|
|
106
|
+
};
|
|
107
|
+
|
|
108
|
+
export type ComponentName = (typeof COMPONENT_NAMES)[number];
|