@alquimia-ai/tools 2.3.0 → 2.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.
- package/dist/actions-B0hfoYRd.d.ts +57 -0
- package/dist/actions-CZU_GRy5.d.mts +57 -0
- package/dist/genui/index.d.mts +1 -1
- package/dist/genui/index.d.ts +1 -1
- package/dist/genui/index.js +25 -1
- package/dist/genui/index.js.map +1 -1
- package/dist/genui/index.mjs +25 -1
- package/dist/genui/index.mjs.map +1 -1
- package/dist/hooks/index.d.mts +2 -1
- package/dist/hooks/index.d.ts +2 -1
- package/dist/hooks/index.js +53 -3
- package/dist/hooks/index.js.map +1 -1
- package/dist/hooks/index.mjs +53 -3
- package/dist/hooks/index.mjs.map +1 -1
- package/dist/types/index.d.mts +2 -0
- package/dist/types/index.d.ts +2 -0
- package/dist/types/index.js.map +1 -1
- package/dist/types/index.mjs.map +1 -1
- package/package.json +1 -1
- package/dist/actions-BebMyGqF.d.ts +0 -16
- package/dist/actions-Ca3ro-hX.d.mts +0 -16
package/dist/genui/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/genui/style.ts","../../src/genui/registry.ts","../../src/genui/catalog.ts","../../src/genui/binding.ts","../../src/genui/actions.ts","../../src/genui/validate.ts","../../src/genui/tool-schema.ts","../../src/genui/clause.ts","../../src/genui/dynamic.ts","../../src/genui/emit.ts","../../src/genui/core-v1.catalog.json"],"sourcesContent":["import { z } from \"zod\";\n\n/**\n * The agent-facing \"style vocabulary\" — enum-constrained semantic props that let\n * the model style a surface via INTENT, never CSS. Shared across every catalog\n * component; the UI renderer maps these to the consumer's design tokens.\n * See docs/a2ui-approach.md §11.\n */\nexport const TONES = [\"default\", \"muted\", \"primary\", \"success\", \"warning\", \"danger\"] as const;\nexport const SIZES = [\"sm\", \"md\", \"lg\"] as const;\nexport const EMPHASES = [\"low\", \"medium\", \"high\"] as const;\nexport const ALIGNS = [\"start\", \"center\", \"end\"] as const;\nexport const DENSITIES = [\"compact\", \"comfortable\"] as const;\n\nexport type Tone = (typeof TONES)[number];\nexport type Size = (typeof SIZES)[number];\nexport type Emphasis = (typeof EMPHASES)[number];\nexport type Align = (typeof ALIGNS)[number];\nexport type Density = (typeof DENSITIES)[number];\n\nexport interface StyleProps {\n tone?: Tone;\n size?: Size;\n emphasis?: Emphasis;\n align?: Align;\n density?: Density;\n}\n\n/**\n * Raw zod shape merged into every component schema in the catalog.\n * `variant` is component-specific and added per component, not here.\n */\nexport const styleSchemaShape = {\n tone: z.enum(TONES).optional(),\n size: z.enum(SIZES).optional(),\n emphasis: z.enum(EMPHASES).optional(),\n align: z.enum(ALIGNS).optional(),\n density: z.enum(DENSITIES).optional(),\n};\n","import type { ZodType } from \"zod\";\n\nexport interface UIComponentDefinition {\n name: string;\n /** zod schema for the component's presentational props. */\n schema: ZodType;\n /** semantic action names this component may emit. */\n allowedActions?: string[];\n}\n\nexport interface CatalogManifest {\n id: string;\n components: Record<string, UIComponentDefinition>;\n}\n\n/** Marker used by the renderer when a component name is not in the catalog. */\nexport const UNKNOWN_COMPONENT = \"__unknown__\";\n\n/** Resolve a component name against the active catalog. Returns null on miss — never throws. */\nexport function resolveComponent(\n manifest: CatalogManifest,\n name: string,\n): UIComponentDefinition | null {\n if (!name || typeof name !== \"string\") return null;\n return manifest.components[name] ?? null;\n}\n","import { z } from \"zod\";\nimport type { CatalogManifest } from \"./registry\";\nimport { styleSchemaShape } from \"./style\";\n\n/** Versioned catalog id — a URI (A2UI convention). The version lives in the path. */\nexport const CORE_CATALOG_ID = \"https://alquimia.ai/catalogs/core/v1/catalog.json\";\n\n/** Merge shared style vocabulary + an optional component-specific variant enum + own props. */\nconst def = (\n name: string,\n own: z.ZodRawShape,\n opts?: { variant?: readonly [string, ...string[]]; allowedActions?: string[] },\n) => ({\n name,\n schema: z\n .object({\n ...styleSchemaShape,\n ...(opts?.variant ? { variant: z.enum(opts.variant).optional() } : {}),\n ...own,\n })\n .passthrough(),\n allowedActions: opts?.allowedActions,\n});\n\nconst option = z.object({ label: z.string(), value: z.union([z.string(), z.number()]) });\n\n/**\n * The default catalog: ~40 components across layout / content / inputs / data / actions.\n * Prop schemas describe ONLY presentational props; id/component/children/binding/action\n * are structural. Every component also accepts the shared style vocabulary.\n */\nexport const coreCatalog: CatalogManifest = {\n id: CORE_CATALOG_ID,\n components: {\n // ---- layout ----\n Stack: def(\"Stack\", {\n direction: z.enum([\"vertical\", \"horizontal\"]).optional(),\n gap: z.enum([\"sm\", \"md\", \"lg\"]).optional(),\n }),\n Grid: def(\"Grid\", {\n columns: z.number().int().min(1).max(6).optional(),\n gap: z.enum([\"sm\", \"md\", \"lg\"]).optional(),\n }),\n Row: def(\"Row\", { gap: z.enum([\"sm\", \"md\", \"lg\"]).optional(), wrap: z.boolean().optional() }),\n Column: def(\"Column\", { gap: z.enum([\"sm\", \"md\", \"lg\"]).optional() }),\n Divider: def(\"Divider\", { label: z.string().optional() }),\n Spacer: def(\"Spacer\", { size: z.enum([\"sm\", \"md\", \"lg\"]).optional() }),\n Card: def(\"Card\", { title: z.string().optional(), description: z.string().optional() }, {\n variant: [\"elevated\", \"outline\", \"ghost\"],\n }),\n Accordion: def(\"Accordion\", {\n items: z.array(z.object({ title: z.string(), value: z.string() })).optional(),\n }),\n Tabs: def(\"Tabs\", { tabs: z.array(z.object({ label: z.string(), value: z.string() })).min(1) }),\n // ---- content ----\n Text: def(\"Text\", { text: z.string() }, { variant: [\"body\", \"muted\", \"caption\", \"lead\"] }),\n Heading: def(\"Heading\", { text: z.string(), level: z.number().int().min(1).max(4).optional() }),\n Markdown: def(\"Markdown\", { text: z.string() }),\n Image: def(\"Image\", { src: z.string(), alt: z.string().optional() }),\n Icon: def(\"Icon\", { name: z.string() }),\n Badge: def(\"Badge\", { text: z.string() }, { variant: [\"solid\", \"outline\", \"subtle\"] }),\n Avatar: def(\"Avatar\", { src: z.string().optional(), fallback: z.string().optional() }),\n Alert: def(\"Alert\", { text: z.string(), title: z.string().optional() }, {\n variant: [\"info\", \"success\", \"warning\", \"danger\"],\n }),\n Stat: def(\"Stat\", { label: z.string(), value: z.union([z.string(), z.number()]), delta: z.string().optional() }),\n KeyValue: def(\"KeyValue\", {}),\n List: def(\"List\", { ordered: z.boolean().optional() }),\n Quote: def(\"Quote\", { text: z.string(), cite: z.string().optional() }),\n // ---- inputs ----\n TextField: def(\"TextField\", { label: z.string().optional(), placeholder: z.string().optional() }),\n TextArea: def(\"TextArea\", {\n label: z.string().optional(),\n placeholder: z.string().optional(),\n rows: z.number().int().optional(),\n }),\n NumberField: def(\"NumberField\", {\n label: z.string().optional(),\n min: z.number().optional(),\n max: z.number().optional(),\n step: z.number().optional(),\n }),\n Select: def(\"Select\", {\n label: z.string().optional(),\n placeholder: z.string().optional(),\n options: z.array(option).min(1),\n }),\n MultiSelect: def(\"MultiSelect\", { label: z.string().optional(), options: z.array(option).min(1) }),\n Combobox: def(\"Combobox\", {\n label: z.string().optional(),\n placeholder: z.string().optional(),\n options: z.array(option).min(1),\n }),\n Checkbox: def(\"Checkbox\", { label: z.string().optional() }),\n CheckboxGroup: def(\"CheckboxGroup\", { label: z.string().optional(), options: z.array(option).min(1) }),\n Radio: def(\"Radio\", { label: z.string().optional(), options: z.array(option).min(1) }),\n Switch: def(\"Switch\", { label: z.string().optional() }),\n Slider: def(\"Slider\", {\n label: z.string().optional(),\n min: z.number().optional(),\n max: z.number().optional(),\n step: z.number().optional(),\n }),\n DatePicker: def(\"DatePicker\", { label: z.string().optional() }),\n DateRange: def(\"DateRange\", { label: z.string().optional() }),\n FileUpload: def(\"FileUpload\", {\n label: z.string().optional(),\n accept: z.string().optional(),\n multiple: z.boolean().optional(),\n }),\n Rating: def(\"Rating\", { label: z.string().optional(), max: z.number().int().optional() }),\n // ---- data ----\n Table: def(\"Table\", {\n columns: z.array(z.object({ key: z.string(), header: z.string().optional() })).min(1),\n sortable: z.boolean().optional(),\n }, { allowedActions: [\"sort\", \"filter\"] }),\n Chart: def(\"Chart\", {\n kind: z.enum([\"bar\", \"line\", \"area\", \"pie\"]),\n x: z.string().optional(),\n series: z.array(z.object({ key: z.string(), label: z.string().optional() })).min(1),\n title: z.string().optional(),\n }),\n Progress: def(\"Progress\", { value: z.number(), max: z.number().optional(), label: z.string().optional() }),\n Timeline: def(\"Timeline\", {\n items: z\n .array(z.object({ title: z.string(), description: z.string().optional(), timestamp: z.string().optional() }))\n .min(1),\n }),\n // ---- actions ----\n Button: def(\"Button\", { text: z.string() }, {\n variant: [\"solid\", \"outline\", \"ghost\", \"link\"],\n allowedActions: [\"submit\", \"cancel\", \"reset\", \"select\", \"confirm\"],\n }),\n ButtonGroup: def(\"ButtonGroup\", {}),\n Link: def(\"Link\", { text: z.string(), href: z.string().optional() }),\n },\n};\n","/** JSON Pointer (RFC 6901) read/write against the surface dataModel. */\n\nfunction decode(token: string): string {\n return token.replace(/~1/g, \"/\").replace(/~0/g, \"~\");\n}\n\nfunction tokens(pointer: string): string[] {\n if (pointer === \"\") return [];\n if (pointer[0] !== \"/\") throw new Error(`Invalid JSON Pointer: ${pointer}`);\n return pointer.slice(1).split(\"/\").map(decode);\n}\n\nexport function getPointer(model: unknown, pointer: string): unknown {\n const parts = tokens(pointer);\n let cur: unknown = model;\n for (const p of parts) {\n if (cur == null || typeof cur !== \"object\") return undefined;\n cur = (cur as Record<string, unknown>)[p];\n }\n return cur;\n}\n\nexport function setPointer<T>(model: T, pointer: string, value: unknown): T {\n const parts = tokens(pointer);\n if (parts.length === 0) return value as T;\n const root: Record<string, unknown> =\n model && typeof model === \"object\" ? { ...(model as Record<string, unknown>) } : {};\n let cur = root;\n for (let i = 0; i < parts.length - 1; i++) {\n const key = parts[i];\n const child = cur[key];\n cur[key] = child && typeof child === \"object\" ? { ...(child as Record<string, unknown>) } : {};\n cur = cur[key] as Record<string, unknown>;\n }\n cur[parts[parts.length - 1]] = value;\n return root as T;\n}\n","import type { SurfaceAction } from \"./types\";\n\nexport type UIActionKind = \"agent-bound\" | \"local\";\n\nexport interface UIAction {\n surfaceId: string;\n componentId: string;\n action: string;\n kind: UIActionKind;\n payload?: Record<string, unknown>;\n}\n\n/** Agent-bound actions (wantResponse) return their payload to the agent; others stay local. */\nexport function classifyAction(action: SurfaceAction): UIActionKind {\n return action.wantResponse === true ? \"agent-bound\" : \"local\";\n}\n\nconst URL_LIKE = /^\\s*([a-z][a-z0-9+.-]*:|\\/\\/)/i;\n\n/** Actions are semantic names, never URLs. Reject anything scheme- or protocol-relative. */\nexport function assertSafeActionName(name: string): void {\n if (typeof name !== \"string\" || name.length === 0) {\n throw new Error(\"action.name must be a non-empty string\");\n }\n if (URL_LIKE.test(name)) {\n throw new Error(`action.name must be a semantic name, not a URL: ${name}`);\n }\n}\n","import { z } from \"zod\";\nimport type { A2uiComponent, A2uiSurface } from \"./types\";\nimport type { CatalogManifest, UIComponentDefinition } from \"./registry\";\nimport { resolveComponent } from \"./registry\";\nimport { assertSafeActionName } from \"./actions\";\n\nexport interface ValidationError {\n path: string;\n message: string;\n}\nexport interface ValidationResult<T = unknown> {\n ok: boolean;\n value?: T;\n /** Fatal problems — the surface cannot be rendered. */\n errors: ValidationError[];\n /** Non-fatal problems — the surface still renders; these degrade gracefully. */\n warnings?: ValidationError[];\n}\n\nconst surfaceShape = z.object({\n surfaceId: z.string().min(1),\n // Tier 2 canonical id (versioned URI); `catalog` is the legacy alias. Both optional on the\n // wire — the SDK stamps `catalogId` if the agent omits it.\n catalogId: z.string().min(1).optional(),\n catalog: z.string().min(1).optional(),\n // Legacy explicit root. A2UI uses the component with id \"root\"; kept optional for back-compat.\n root: z.string().min(1).optional(),\n components: z.array(\n z\n .object({\n id: z.string().min(1),\n component: z.string().min(1),\n children: z.array(z.string()).optional(),\n child: z.string().optional(),\n binding: z.string().optional(),\n action: z.object({ name: z.string(), wantResponse: z.boolean().optional() }).optional(),\n })\n .passthrough(),\n ),\n dataModel: z.record(z.unknown()).optional(),\n});\n\n/** UAX#31 identifier rule (A2UI): XID_Start/underscore then XID_Continue. */\nconst UAX31_ID = /^[\\p{XID_Start}_][\\p{XID_Continue}]*$/u;\n\n/** Validate one node's presentational props against its catalog definition. */\nexport function validateProps(node: A2uiComponent, def: UIComponentDefinition): ValidationResult {\n const { id, component, children, child, binding, action, ...props } = node;\n void child;\n const parsed = def.schema.safeParse(props);\n if (parsed.success) return { ok: true, value: parsed.data, errors: [] };\n return {\n ok: false,\n errors: parsed.error.issues.map((i) => ({ path: `${id}.${i.path.join(\".\")}`, message: i.message })),\n };\n}\n\n/** Full structural + catalog + prop + action validation of an incoming surface. */\nexport function validateSurface(input: unknown, manifest: CatalogManifest): ValidationResult<A2uiSurface> {\n const shape = surfaceShape.safeParse(input);\n if (!shape.success) {\n return { ok: false, errors: shape.error.issues.map((i) => ({ path: i.path.join(\".\"), message: i.message })) };\n }\n const surface = shape.data as A2uiSurface;\n const errors: ValidationError[] = []; // fatal — cannot render\n const warnings: ValidationError[] = []; // non-fatal — render anyway, degrade gracefully\n const ids = new Set(surface.components.map((c) => c.id));\n\n // Root = the component with id \"root\" (A2UI convention), falling back to the legacy `root` field.\n const rootId = ids.has(\"root\") ? \"root\" : surface.root;\n // Fatal: without a resolvable root node there is nothing to render.\n if (!rootId || !ids.has(rootId)) {\n errors.push({ path: \"root\", message: `no root component (expected a component with id \"root\")` });\n }\n\n // Non-fatal: catalogId should be present (the SDK stamps it if the agent omits it).\n if (!surface.catalogId && !surface.catalog) {\n warnings.push({ path: \"catalogId\", message: \"surface has no catalogId (SDK will stamp the active catalog)\" });\n }\n\n for (const node of surface.components) {\n // Non-fatal: A2UI mandates UAX#31 identifiers; a bad id still renders but is flagged.\n if (!UAX31_ID.test(node.id)) {\n warnings.push({ path: node.id, message: `id \"${node.id}\" is not a valid UAX#31 identifier` });\n }\n\n const def = resolveComponent(manifest, node.component);\n if (!def) {\n // Non-fatal: the renderer falls back to a text placeholder for unknown components.\n warnings.push({ path: node.id, message: `unknown component \"${node.component}\" (renders as text)` });\n continue;\n }\n\n // Non-fatal: invalid presentational props degrade to component defaults.\n warnings.push(...validateProps(node, def).errors);\n\n for (const childId of node.children ?? []) {\n if (!ids.has(childId)) {\n warnings.push({ path: node.id, message: `child \"${childId}\" does not exist (skipped)` });\n }\n }\n if (node.child && !ids.has(node.child)) {\n warnings.push({ path: node.id, message: `child \"${node.child}\" does not exist (skipped)` });\n }\n\n // Fatal (security invariant): an action name must be a semantic string, never a URL.\n if (node.action) {\n try {\n assertSafeActionName(node.action.name);\n } catch (e) {\n errors.push({ path: `${node.id}.action`, message: (e as Error).message });\n }\n }\n }\n\n return errors.length === 0\n ? { ok: true, value: surface, errors: [], warnings }\n : { ok: false, errors, warnings };\n}\n","import type { CatalogManifest } from \"./registry\";\nimport { TONES, SIZES, EMPHASES, ALIGNS, DENSITIES } from \"./style\";\n\n/**\n * The runtime expects each `tool_schemas` entry to be a flat JSON Schema of the\n * tool arguments: `title` is the tool name, `properties` are the arguments.\n * (Not the OpenAI `{ type:\"function\", function:{...} }` wrapper, and not a\n * `{ name, description, parameters }` envelope — both leave the runtime with an\n * empty argument schema.)\n */\nexport interface RenderUiToolSchema {\n title: \"render_ui\";\n name: \"render_ui\";\n description: string;\n type: \"object\";\n properties: Record<string, unknown>;\n required: string[];\n additionalProperties: boolean;\n}\n\nconst DESCRIPTION =\n \"Render a UI using A2UI. The arguments are a UI surface, NOT free-form. Shape: \" +\n \"{ surfaceId, root, components, dataModel? }. `components` is a FLAT array; every item is \" +\n \"{ id, component, children?, ...props } where `component` is one of the allowed names (use \" +\n \"`component`, never `type`) and `children` is an array of string ids referencing other items \" +\n \"(never nested objects). Inputs bind to the data model via `binding` (a JSON Pointer like \" +\n '\"/name\"). To collect input, include a Button with action { name, wantResponse: true } — its ' +\n \"result (the data model) is returned to you; a surface with no such button is display-only. \" +\n 'Example: { \"surfaceId\": \"signup\", \"root\": \"root\", \"components\": [ ' +\n '{ \"id\": \"root\", \"component\": \"Stack\", \"children\": [\"name\", \"desc\", \"submit\"] }, ' +\n '{ \"id\": \"name\", \"component\": \"TextField\", \"label\": \"Username\", \"binding\": \"/name\" }, ' +\n '{ \"id\": \"desc\", \"component\": \"TextField\", \"label\": \"Description\", \"binding\": \"/description\" }, ' +\n '{ \"id\": \"submit\", \"component\": \"Button\", \"text\": \"Save\", \"action\": { \"name\": \"save\", \"wantResponse\": true } } ' +\n '], \"dataModel\": { \"name\": \"\", \"description\": \"\" } }. ' +\n \"IMPORTANT: when you call render_ui, the rendered surface IS your reply — do NOT also \" +\n \"reproduce its content as text, markdown, or ASCII. Any accompanying message must be a brief \" +\n \"one-line intro at most, never a duplicate of the UI.\";\n\n/** Build the render_ui tool schema from a catalog, filtered to an allowlist of component names. */\nexport function buildRenderUiSchema(manifest: CatalogManifest, allowlist: string[]): RenderUiToolSchema {\n const allowed = allowlist.filter((name) => name in manifest.components);\n return {\n title: \"render_ui\",\n name: \"render_ui\",\n description: DESCRIPTION,\n type: \"object\",\n properties: {\n surfaceId: { type: \"string\" },\n // A2UI catalog id — a versioned URI. `const` nudges the model to echo it; the SDK\n // also stamps it if omitted, so the client always knows which catalog version to render.\n catalogId: { type: \"string\", const: manifest.id },\n catalog: { type: \"string\" }, // legacy alias (accepted, ignored)\n root: { type: \"string\" }, // legacy explicit root (accepted; A2UI uses the id:\"root\" component)\n components: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n id: { type: \"string\" },\n component: { type: \"string\", enum: allowed },\n children: { type: \"array\", items: { type: \"string\" } },\n child: { type: \"string\" },\n binding: { type: \"string\" },\n action: {\n type: \"object\",\n properties: {\n name: { type: \"string\" },\n wantResponse: { type: \"boolean\" },\n },\n required: [\"name\"],\n },\n tone: { type: \"string\", enum: [...TONES] },\n size: { type: \"string\", enum: [...SIZES] },\n emphasis: { type: \"string\", enum: [...EMPHASES] },\n align: { type: \"string\", enum: [...ALIGNS] },\n density: { type: \"string\", enum: [...DENSITIES] },\n variant: { type: \"string\" },\n text: { type: \"string\" },\n label: { type: \"string\" },\n placeholder: { type: \"string\" },\n title: { type: \"string\" },\n direction: { type: \"string\" },\n gap: { type: \"string\" },\n // Data props for data components. Several are legitimately polymorphic across\n // components — type them as their real unions so the runtime doesn't reject\n // valid output (adapters normalize each shape):\n // data: array (Chart/Table rows) | object (KeyValue)\n // rows: array (Table) | number (TextArea row count)\n // columns: array (Table col defs) | number (Grid column count)\n data: { type: [\"array\", \"object\"] },\n rows: { type: [\"array\", \"number\"] },\n items: { type: \"array\" },\n // Accept string OR object items — models routinely emit the terse string\n // form (e.g. series:[\"revenue\"], options:[\"A\",\"B\"]); adapters normalize.\n columns: { type: [\"array\", \"number\"], items: { type: [\"object\", \"string\"] } },\n series: { type: \"array\", items: { type: [\"object\", \"string\"] } },\n options: { type: \"array\", items: { type: [\"object\", \"string\"] } },\n kind: { type: \"string\" },\n x: { type: \"string\" },\n value: {},\n },\n required: [\"id\", \"component\"],\n },\n },\n dataModel: { type: \"object\" },\n },\n required: [\"surfaceId\", \"root\", \"components\"],\n additionalProperties: false,\n };\n}\n","import type { CatalogManifest } from \"./registry\";\nimport { TONES, SIZES } from \"./style\";\n\n/**\n * Build the compact GenUI prompt clause from the catalog, filtered to an allowlist.\n * Teaches the allowed components, the style vocabulary, the wantResponse round-trip\n * rule, and the \"don't reproduce the UI as text\" rule.\n */\nexport function buildGenuiClause(manifest: CatalogManifest, allowlist: string[]): string {\n const names = allowlist.filter((n) => n in manifest.components);\n return [\n \"You can render UI by calling render_ui with an A2UI surface (a flat components array; each item is { id, component, children?, ...props }; component is one of the allowed names; children are string ids referencing other items).\",\n `Components: ${names.join(\", \")}.`,\n `Style each component via the semantic vocabulary (never CSS, colors, or HTML): tone (${TONES.join(\"/\")}), size (${SIZES.join(\"/\")}), emphasis (low/medium/high), align (start/center/end), density (compact/comfortable), plus a component-specific variant where offered.`,\n \"Data components MUST carry their data: Chart takes `data` (an array of row objects) + `series` (keys to plot) + `x` (the category key); Table takes `rows` (array of row objects) + `columns` ([{ key, header }] matching the row keys); List takes `items` (array); Stat takes `label`+`value`; KeyValue takes `data` (an object). Put the data inline on the component (or in dataModel referenced via `binding`).\",\n \"To collect input, add a Button with an action { name, wantResponse: true }; its result (the data model) is returned to you. A surface with no such button is display-only.\",\n \"IMPORTANT: the rendered surface IS your reply — do NOT reproduce its content as text, markdown, or ASCII; a one-line intro at most.\",\n \"Prefer plain text for simple replies.\",\n ].join(\" \");\n}\n","import { getPointer } from \"./binding\";\n\n/**\n * An A2UI DynamicString / DynamicNumber: a prop value that is either a literal\n * OR a reference to a data-model path (`{ path: \"/user/name\" }`, JSON Pointer).\n */\nexport type DynamicValue<T = unknown> = T | { path: string };\n\n/** True when a value is a `{ path: string }` data-model reference. */\nexport function isPathRef(v: unknown): v is { path: string } {\n return !!v && typeof v === \"object\" && typeof (v as { path?: unknown }).path === \"string\";\n}\n\n/** Resolve a possibly-bound value against the surface data model. Literals pass through. */\nexport function resolveDynamic(v: unknown, dataModel: unknown): unknown {\n return isPathRef(v) ? getPointer(dataModel, v.path) : v;\n}\n","import { zodToJsonSchema } from \"zod-to-json-schema\";\nimport type { CatalogManifest } from \"./registry\";\n\n/**\n * `zodToJsonSchema`'s generic return type triggers TS2589 (excessively deep) during .d.ts\n * generation. Call it through a plain, non-generic signature — we only read properties/required.\n */\nconst toJsonSchema = zodToJsonSchema as unknown as (\n schema: unknown,\n opts?: unknown,\n) => { properties?: Record<string, unknown>; required?: string[] };\n\n/**\n * The A2UI-format catalog JSON — the published, versioned contract. Emitted from the\n * authoring catalog (the zod `CatalogManifest`) so the shipped artifact can never drift\n * from what the SDK validates against (guarded by emit.test.ts).\n */\nexport interface A2uiCatalogJson {\n $schema: string;\n catalogId: string;\n title: string;\n description: string;\n components: Record<string, unknown>;\n $defs: Record<string, unknown>;\n}\n\n/** Shared A2UI type defs referenced by (future, DynamicString-bound) components. */\nconst SHARED_DEFS: Record<string, unknown> = {\n DynamicString: {\n description: \"A literal string OR a data-model path reference { path }.\",\n oneOf: [\n { type: \"string\" },\n { type: \"object\", properties: { path: { type: \"string\" } }, required: [\"path\"], additionalProperties: false },\n ],\n },\n Action: {\n description: \"A semantic action (never a URL). wantResponse:true returns the data model to the agent.\",\n type: \"object\",\n properties: { name: { type: \"string\" }, wantResponse: { type: \"boolean\" } },\n required: [\"name\"],\n additionalProperties: false,\n },\n};\n\n/**\n * Compile the authoring catalog to the A2UI v1.0 catalog format:\n * `{ catalogId, components: { Name: {type:object, properties:{ component:{const}, …}, required, unevaluatedProperties:false } }, $defs }`.\n */\nexport function emitA2uiCatalog(manifest: CatalogManifest, opts: { catalogId: string }): A2uiCatalogJson {\n const components: Record<string, unknown> = {};\n\n for (const [name, def] of Object.entries(manifest.components)) {\n const propsSchema = toJsonSchema(def.schema, { $refStrategy: \"none\", target: \"jsonSchema2020\" });\n const properties: Record<string, unknown> = {\n component: { const: name },\n ...(propsSchema.properties ?? {}),\n };\n const required = Array.from(new Set([\"component\", ...(propsSchema.required ?? [])]));\n components[name] = {\n type: \"object\",\n properties,\n required,\n // Presentational props are open at authoring time (zod .passthrough()); the tool\n // schema is where the model-facing prop set is fixed. Keep the catalog permissive.\n unevaluatedProperties: false,\n };\n }\n\n return {\n $schema: \"https://json-schema.org/draft/2020-12/schema\",\n catalogId: opts.catalogId,\n title: \"Alquimia Core Catalog\",\n description:\n \"Alquimia's default A2UI catalog. Abstract, framework-agnostic component contract; \" +\n \"consumers map each component to their own (shadcn) renderer. Generated from the SDK authoring catalog.\",\n components,\n $defs: SHARED_DEFS,\n };\n}\n","{\n \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\n \"catalogId\": \"https://alquimia.ai/catalogs/core/v1/catalog.json\",\n \"title\": \"Alquimia Core Catalog\",\n \"description\": \"Alquimia's default A2UI catalog. Abstract, framework-agnostic component contract; consumers map each component to their own (shadcn) renderer. Generated from the SDK authoring catalog.\",\n \"components\": {\n \"Stack\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Stack\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"direction\": {\n \"type\": \"string\",\n \"enum\": [\n \"vertical\",\n \"horizontal\"\n ]\n },\n \"gap\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Grid\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Grid\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"columns\": {\n \"type\": \"integer\",\n \"minimum\": 1,\n \"maximum\": 6\n },\n \"gap\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Row\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Row\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"gap\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"wrap\": {\n \"type\": \"boolean\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Column\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Column\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"gap\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Divider\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Divider\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Spacer\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Spacer\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Card\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Card\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"variant\": {\n \"type\": \"string\",\n \"enum\": [\n \"elevated\",\n \"outline\",\n \"ghost\"\n ]\n },\n \"title\": {\n \"type\": \"string\"\n },\n \"description\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Accordion\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Accordion\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"items\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"title\": {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"title\",\n \"value\"\n ],\n \"additionalProperties\": false\n }\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Tabs\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Tabs\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"tabs\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"label\": {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"label\",\n \"value\"\n ],\n \"additionalProperties\": false\n },\n \"minItems\": 1\n }\n },\n \"required\": [\n \"component\",\n \"tabs\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Text\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Text\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"variant\": {\n \"type\": \"string\",\n \"enum\": [\n \"body\",\n \"muted\",\n \"caption\",\n \"lead\"\n ]\n },\n \"text\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\",\n \"text\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Heading\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Heading\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"text\": {\n \"type\": \"string\"\n },\n \"level\": {\n \"type\": \"integer\",\n \"minimum\": 1,\n \"maximum\": 4\n }\n },\n \"required\": [\n \"component\",\n \"text\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Markdown\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Markdown\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"text\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\",\n \"text\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Image\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Image\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"src\": {\n \"type\": \"string\"\n },\n \"alt\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\",\n \"src\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Icon\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Icon\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"name\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\",\n \"name\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Badge\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Badge\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"variant\": {\n \"type\": \"string\",\n \"enum\": [\n \"solid\",\n \"outline\",\n \"subtle\"\n ]\n },\n \"text\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\",\n \"text\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Avatar\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Avatar\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"src\": {\n \"type\": \"string\"\n },\n \"fallback\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Alert\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Alert\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"variant\": {\n \"type\": \"string\",\n \"enum\": [\n \"info\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"text\": {\n \"type\": \"string\"\n },\n \"title\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\",\n \"text\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Stat\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Stat\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": [\n \"string\",\n \"number\"\n ]\n },\n \"delta\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\",\n \"label\",\n \"value\"\n ],\n \"unevaluatedProperties\": false\n },\n \"KeyValue\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"KeyValue\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"List\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"List\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"ordered\": {\n \"type\": \"boolean\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Quote\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Quote\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"text\": {\n \"type\": \"string\"\n },\n \"cite\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\",\n \"text\"\n ],\n \"unevaluatedProperties\": false\n },\n \"TextField\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"TextField\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n },\n \"placeholder\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"TextArea\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"TextArea\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n },\n \"placeholder\": {\n \"type\": \"string\"\n },\n \"rows\": {\n \"type\": \"integer\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"NumberField\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"NumberField\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n },\n \"min\": {\n \"type\": \"number\"\n },\n \"max\": {\n \"type\": \"number\"\n },\n \"step\": {\n \"type\": \"number\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Select\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Select\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n },\n \"placeholder\": {\n \"type\": \"string\"\n },\n \"options\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"label\": {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": [\n \"string\",\n \"number\"\n ]\n }\n },\n \"required\": [\n \"label\",\n \"value\"\n ],\n \"additionalProperties\": false\n },\n \"minItems\": 1\n }\n },\n \"required\": [\n \"component\",\n \"options\"\n ],\n \"unevaluatedProperties\": false\n },\n \"MultiSelect\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"MultiSelect\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n },\n \"options\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"label\": {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": [\n \"string\",\n \"number\"\n ]\n }\n },\n \"required\": [\n \"label\",\n \"value\"\n ],\n \"additionalProperties\": false\n },\n \"minItems\": 1\n }\n },\n \"required\": [\n \"component\",\n \"options\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Combobox\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Combobox\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n },\n \"placeholder\": {\n \"type\": \"string\"\n },\n \"options\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"label\": {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": [\n \"string\",\n \"number\"\n ]\n }\n },\n \"required\": [\n \"label\",\n \"value\"\n ],\n \"additionalProperties\": false\n },\n \"minItems\": 1\n }\n },\n \"required\": [\n \"component\",\n \"options\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Checkbox\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Checkbox\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"CheckboxGroup\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"CheckboxGroup\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n },\n \"options\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"label\": {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": [\n \"string\",\n \"number\"\n ]\n }\n },\n \"required\": [\n \"label\",\n \"value\"\n ],\n \"additionalProperties\": false\n },\n \"minItems\": 1\n }\n },\n \"required\": [\n \"component\",\n \"options\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Radio\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Radio\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n },\n \"options\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"label\": {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": [\n \"string\",\n \"number\"\n ]\n }\n },\n \"required\": [\n \"label\",\n \"value\"\n ],\n \"additionalProperties\": false\n },\n \"minItems\": 1\n }\n },\n \"required\": [\n \"component\",\n \"options\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Switch\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Switch\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Slider\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Slider\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n },\n \"min\": {\n \"type\": \"number\"\n },\n \"max\": {\n \"type\": \"number\"\n },\n \"step\": {\n \"type\": \"number\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"DatePicker\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"DatePicker\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"DateRange\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"DateRange\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"FileUpload\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"FileUpload\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n },\n \"accept\": {\n \"type\": \"string\"\n },\n \"multiple\": {\n \"type\": \"boolean\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Rating\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Rating\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n },\n \"max\": {\n \"type\": \"integer\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Table\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Table\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"columns\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"key\": {\n \"type\": \"string\"\n },\n \"header\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"key\"\n ],\n \"additionalProperties\": false\n },\n \"minItems\": 1\n },\n \"sortable\": {\n \"type\": \"boolean\"\n }\n },\n \"required\": [\n \"component\",\n \"columns\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Chart\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Chart\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"kind\": {\n \"type\": \"string\",\n \"enum\": [\n \"bar\",\n \"line\",\n \"area\",\n \"pie\"\n ]\n },\n \"x\": {\n \"type\": \"string\"\n },\n \"series\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"key\": {\n \"type\": \"string\"\n },\n \"label\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"key\"\n ],\n \"additionalProperties\": false\n },\n \"minItems\": 1\n },\n \"title\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\",\n \"kind\",\n \"series\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Progress\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Progress\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"value\": {\n \"type\": \"number\"\n },\n \"max\": {\n \"type\": \"number\"\n },\n \"label\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\",\n \"value\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Timeline\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Timeline\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"items\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"title\": {\n \"type\": \"string\"\n },\n \"description\": {\n \"type\": \"string\"\n },\n \"timestamp\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"title\"\n ],\n \"additionalProperties\": false\n },\n \"minItems\": 1\n }\n },\n \"required\": [\n \"component\",\n \"items\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Button\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Button\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"variant\": {\n \"type\": \"string\",\n \"enum\": [\n \"solid\",\n \"outline\",\n \"ghost\",\n \"link\"\n ]\n },\n \"text\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\",\n \"text\"\n ],\n \"unevaluatedProperties\": false\n },\n \"ButtonGroup\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"ButtonGroup\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Link\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Link\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"text\": {\n \"type\": \"string\"\n },\n \"href\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\",\n \"text\"\n ],\n \"unevaluatedProperties\": false\n }\n },\n \"$defs\": {\n \"DynamicString\": {\n \"description\": \"A literal string OR a data-model path reference { path }.\",\n \"oneOf\": [\n {\n \"type\": \"string\"\n },\n {\n \"type\": \"object\",\n \"properties\": {\n \"path\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"path\"\n ],\n \"additionalProperties\": false\n }\n ]\n },\n \"Action\": {\n \"description\": \"A semantic action (never a URL). wantResponse:true returns the data model to the agent.\",\n \"type\": \"object\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\"\n },\n \"wantResponse\": {\n \"type\": \"boolean\"\n }\n },\n \"required\": [\n \"name\"\n ],\n \"additionalProperties\": false\n }\n }\n}\n"],"mappings":"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","names":["z","z","z","z","def","def"]}
|
|
1
|
+
{"version":3,"sources":["../../src/genui/style.ts","../../src/genui/registry.ts","../../src/genui/catalog.ts","../../src/genui/binding.ts","../../src/genui/actions.ts","../../src/genui/validate.ts","../../src/genui/tool-schema.ts","../../src/genui/clause.ts","../../src/genui/dynamic.ts","../../src/genui/emit.ts","../../src/genui/core-v1.catalog.json"],"sourcesContent":["import { z } from \"zod\";\n\n/**\n * The agent-facing \"style vocabulary\" — enum-constrained semantic props that let\n * the model style a surface via INTENT, never CSS. Shared across every catalog\n * component; the UI renderer maps these to the consumer's design tokens.\n * See docs/a2ui-approach.md §11.\n */\nexport const TONES = [\"default\", \"muted\", \"primary\", \"success\", \"warning\", \"danger\"] as const;\nexport const SIZES = [\"sm\", \"md\", \"lg\"] as const;\nexport const EMPHASES = [\"low\", \"medium\", \"high\"] as const;\nexport const ALIGNS = [\"start\", \"center\", \"end\"] as const;\nexport const DENSITIES = [\"compact\", \"comfortable\"] as const;\n\nexport type Tone = (typeof TONES)[number];\nexport type Size = (typeof SIZES)[number];\nexport type Emphasis = (typeof EMPHASES)[number];\nexport type Align = (typeof ALIGNS)[number];\nexport type Density = (typeof DENSITIES)[number];\n\nexport interface StyleProps {\n tone?: Tone;\n size?: Size;\n emphasis?: Emphasis;\n align?: Align;\n density?: Density;\n}\n\n/**\n * Raw zod shape merged into every component schema in the catalog.\n * `variant` is component-specific and added per component, not here.\n */\nexport const styleSchemaShape = {\n tone: z.enum(TONES).optional(),\n size: z.enum(SIZES).optional(),\n emphasis: z.enum(EMPHASES).optional(),\n align: z.enum(ALIGNS).optional(),\n density: z.enum(DENSITIES).optional(),\n};\n","import type { ZodType } from \"zod\";\n\nexport interface UIComponentDefinition {\n name: string;\n /** zod schema for the component's presentational props. */\n schema: ZodType;\n /** semantic action names this component may emit. */\n allowedActions?: string[];\n}\n\nexport interface CatalogManifest {\n id: string;\n components: Record<string, UIComponentDefinition>;\n}\n\n/** Marker used by the renderer when a component name is not in the catalog. */\nexport const UNKNOWN_COMPONENT = \"__unknown__\";\n\n/** Resolve a component name against the active catalog. Returns null on miss — never throws. */\nexport function resolveComponent(\n manifest: CatalogManifest,\n name: string,\n): UIComponentDefinition | null {\n if (!name || typeof name !== \"string\") return null;\n return manifest.components[name] ?? null;\n}\n","import { z } from \"zod\";\nimport type { CatalogManifest } from \"./registry\";\nimport { styleSchemaShape } from \"./style\";\n\n/** Versioned catalog id — a URI (A2UI convention). The version lives in the path. */\nexport const CORE_CATALOG_ID = \"https://alquimia.ai/catalogs/core/v1/catalog.json\";\n\n/** Merge shared style vocabulary + an optional component-specific variant enum + own props. */\nconst def = (\n name: string,\n own: z.ZodRawShape,\n opts?: { variant?: readonly [string, ...string[]]; allowedActions?: string[] },\n) => ({\n name,\n schema: z\n .object({\n ...styleSchemaShape,\n ...(opts?.variant ? { variant: z.enum(opts.variant).optional() } : {}),\n ...own,\n })\n .passthrough(),\n allowedActions: opts?.allowedActions,\n});\n\nconst option = z.object({ label: z.string(), value: z.union([z.string(), z.number()]) });\n\n/**\n * The default catalog: ~40 components across layout / content / inputs / data / actions.\n * Prop schemas describe ONLY presentational props; id/component/children/binding/action\n * are structural. Every component also accepts the shared style vocabulary.\n */\nexport const coreCatalog: CatalogManifest = {\n id: CORE_CATALOG_ID,\n components: {\n // ---- layout ----\n Stack: def(\"Stack\", {\n direction: z.enum([\"vertical\", \"horizontal\"]).optional(),\n gap: z.enum([\"sm\", \"md\", \"lg\"]).optional(),\n }),\n Grid: def(\"Grid\", {\n columns: z.number().int().min(1).max(6).optional(),\n gap: z.enum([\"sm\", \"md\", \"lg\"]).optional(),\n }),\n Row: def(\"Row\", { gap: z.enum([\"sm\", \"md\", \"lg\"]).optional(), wrap: z.boolean().optional() }),\n Column: def(\"Column\", { gap: z.enum([\"sm\", \"md\", \"lg\"]).optional() }),\n Divider: def(\"Divider\", { label: z.string().optional() }),\n Spacer: def(\"Spacer\", { size: z.enum([\"sm\", \"md\", \"lg\"]).optional() }),\n Card: def(\"Card\", { title: z.string().optional(), description: z.string().optional() }, {\n variant: [\"elevated\", \"outline\", \"ghost\"],\n }),\n Accordion: def(\"Accordion\", {\n items: z.array(z.object({ title: z.string(), value: z.string() })).optional(),\n }),\n Tabs: def(\"Tabs\", { tabs: z.array(z.object({ label: z.string(), value: z.string() })).min(1) }),\n // ---- content ----\n Text: def(\"Text\", { text: z.string() }, { variant: [\"body\", \"muted\", \"caption\", \"lead\"] }),\n Heading: def(\"Heading\", { text: z.string(), level: z.number().int().min(1).max(4).optional() }),\n Markdown: def(\"Markdown\", { text: z.string() }),\n Image: def(\"Image\", { src: z.string(), alt: z.string().optional() }),\n Icon: def(\"Icon\", { name: z.string() }),\n Badge: def(\"Badge\", { text: z.string() }, { variant: [\"solid\", \"outline\", \"subtle\"] }),\n Avatar: def(\"Avatar\", { src: z.string().optional(), fallback: z.string().optional() }),\n Alert: def(\"Alert\", { text: z.string(), title: z.string().optional() }, {\n variant: [\"info\", \"success\", \"warning\", \"danger\"],\n }),\n Stat: def(\"Stat\", { label: z.string(), value: z.union([z.string(), z.number()]), delta: z.string().optional() }),\n KeyValue: def(\"KeyValue\", {}),\n List: def(\"List\", { ordered: z.boolean().optional() }),\n Quote: def(\"Quote\", { text: z.string(), cite: z.string().optional() }),\n // ---- inputs ----\n TextField: def(\"TextField\", { label: z.string().optional(), placeholder: z.string().optional() }),\n TextArea: def(\"TextArea\", {\n label: z.string().optional(),\n placeholder: z.string().optional(),\n rows: z.number().int().optional(),\n }),\n NumberField: def(\"NumberField\", {\n label: z.string().optional(),\n min: z.number().optional(),\n max: z.number().optional(),\n step: z.number().optional(),\n }),\n Select: def(\"Select\", {\n label: z.string().optional(),\n placeholder: z.string().optional(),\n options: z.array(option).min(1),\n }),\n MultiSelect: def(\"MultiSelect\", { label: z.string().optional(), options: z.array(option).min(1) }),\n Combobox: def(\"Combobox\", {\n label: z.string().optional(),\n placeholder: z.string().optional(),\n options: z.array(option).min(1),\n }),\n Checkbox: def(\"Checkbox\", { label: z.string().optional() }),\n CheckboxGroup: def(\"CheckboxGroup\", { label: z.string().optional(), options: z.array(option).min(1) }),\n Radio: def(\"Radio\", { label: z.string().optional(), options: z.array(option).min(1) }),\n Switch: def(\"Switch\", { label: z.string().optional() }),\n Slider: def(\"Slider\", {\n label: z.string().optional(),\n min: z.number().optional(),\n max: z.number().optional(),\n step: z.number().optional(),\n }),\n DatePicker: def(\"DatePicker\", { label: z.string().optional() }),\n DateRange: def(\"DateRange\", { label: z.string().optional() }),\n FileUpload: def(\"FileUpload\", {\n label: z.string().optional(),\n accept: z.string().optional(),\n multiple: z.boolean().optional(),\n }),\n Rating: def(\"Rating\", { label: z.string().optional(), max: z.number().int().optional() }),\n // ---- data ----\n Table: def(\"Table\", {\n columns: z.array(z.object({ key: z.string(), header: z.string().optional() })).min(1),\n sortable: z.boolean().optional(),\n }, { allowedActions: [\"sort\", \"filter\"] }),\n Chart: def(\"Chart\", {\n kind: z.enum([\"bar\", \"line\", \"area\", \"pie\"]),\n x: z.string().optional(),\n series: z.array(z.object({ key: z.string(), label: z.string().optional() })).min(1),\n title: z.string().optional(),\n }),\n Progress: def(\"Progress\", { value: z.number(), max: z.number().optional(), label: z.string().optional() }),\n Timeline: def(\"Timeline\", {\n items: z\n .array(z.object({ title: z.string(), description: z.string().optional(), timestamp: z.string().optional() }))\n .min(1),\n }),\n // ---- actions ----\n Button: def(\"Button\", { text: z.string() }, {\n variant: [\"solid\", \"outline\", \"ghost\", \"link\"],\n allowedActions: [\"submit\", \"cancel\", \"reset\", \"select\", \"confirm\"],\n }),\n ButtonGroup: def(\"ButtonGroup\", {}),\n Link: def(\"Link\", { text: z.string(), href: z.string().optional() }),\n },\n};\n","/** JSON Pointer (RFC 6901) read/write against the surface dataModel. */\n\nfunction decode(token: string): string {\n return token.replace(/~1/g, \"/\").replace(/~0/g, \"~\");\n}\n\nfunction tokens(pointer: string): string[] {\n if (pointer === \"\") return [];\n if (pointer[0] !== \"/\") throw new Error(`Invalid JSON Pointer: ${pointer}`);\n return pointer.slice(1).split(\"/\").map(decode);\n}\n\nexport function getPointer(model: unknown, pointer: string): unknown {\n const parts = tokens(pointer);\n let cur: unknown = model;\n for (const p of parts) {\n if (cur == null || typeof cur !== \"object\") return undefined;\n cur = (cur as Record<string, unknown>)[p];\n }\n return cur;\n}\n\nexport function setPointer<T>(model: T, pointer: string, value: unknown): T {\n const parts = tokens(pointer);\n if (parts.length === 0) return value as T;\n const root: Record<string, unknown> =\n model && typeof model === \"object\" ? { ...(model as Record<string, unknown>) } : {};\n let cur = root;\n for (let i = 0; i < parts.length - 1; i++) {\n const key = parts[i];\n const child = cur[key];\n cur[key] = child && typeof child === \"object\" ? { ...(child as Record<string, unknown>) } : {};\n cur = cur[key] as Record<string, unknown>;\n }\n cur[parts[parts.length - 1]] = value;\n return root as T;\n}\n","import type { SurfaceAction } from \"./types\";\n\nexport type UIActionKind = \"agent-bound\" | \"local\";\n\nexport interface UIAction {\n surfaceId: string;\n componentId: string;\n action: string;\n kind: UIActionKind;\n payload?: Record<string, unknown>;\n}\n\n/**\n * The `result` body posted to /event/tool-completion for an agent-bound action.\n * Shape is part of the agent-facing contract — the prompt clause describes it.\n */\nexport interface SurfaceResult {\n /** The action's semantic name. */\n action: string;\n /** Which surface it came from. */\n surfaceId: string;\n /**\n * The id of the component that was acted on. This is what lets the agent tell WHICH\n * element fired when several share one action name — e.g. a grid of option cards that\n * all use `selectFlight`. Without it the agent has to ask the user what they just\n * clicked, which reads as a broken assistant.\n */\n componentId: string;\n /** The surface's collected data model (empty object when the surface binds no fields). */\n data: Record<string, unknown>;\n /**\n * Present only when the user declined the surface and answered in words instead\n * (see `buildDismissResult`). Absent on a normal submit or selection.\n */\n userMessage?: string;\n}\n\n/**\n * Action name reported when the user dismisses an interactive surface rather than using it.\n * Kept distinct from any model-authored action so the agent can tell the two apart.\n */\nexport const DISMISS_ACTION = \"userDismissedSurface\";\n\n/**\n * Complete a pending interactive surface *negatively*, optionally carrying the natural-language\n * reply the user typed instead of interacting.\n *\n * Why this exists: an interactive surface parks the inference until a tool result arrives. If\n * the UI is the only way to answer, a user who doesn't want any of the offered options is stuck\n * — they cannot type, and the task never resumes. Completing with this result unparks the\n * conversation and hands the agent the user's actual words, so it can respond to them.\n */\nexport function buildDismissResult(surfaceId: string, userMessage?: string): SurfaceResult {\n const said = typeof userMessage === \"string\" ? userMessage.trim() : \"\";\n return {\n action: DISMISS_ACTION,\n surfaceId,\n componentId: \"\",\n data: {},\n ...(said ? { userMessage: said } : {}),\n };\n}\n\n/** Build the tool-completion `result` for an agent-bound action. */\nexport function buildSurfaceResult(action: UIAction): SurfaceResult {\n return {\n action: action.action,\n surfaceId: action.surfaceId,\n componentId: action.componentId,\n data: action.payload ?? {},\n };\n}\n\n/** Agent-bound actions (wantResponse) return their payload to the agent; others stay local. */\nexport function classifyAction(action: SurfaceAction): UIActionKind {\n return action.wantResponse === true ? \"agent-bound\" : \"local\";\n}\n\nconst URL_LIKE = /^\\s*([a-z][a-z0-9+.-]*:|\\/\\/)/i;\n\n/** Actions are semantic names, never URLs. Reject anything scheme- or protocol-relative. */\nexport function assertSafeActionName(name: string): void {\n if (typeof name !== \"string\" || name.length === 0) {\n throw new Error(\"action.name must be a non-empty string\");\n }\n if (URL_LIKE.test(name)) {\n throw new Error(`action.name must be a semantic name, not a URL: ${name}`);\n }\n}\n","import { z } from \"zod\";\nimport type { A2uiComponent, A2uiSurface } from \"./types\";\nimport type { CatalogManifest, UIComponentDefinition } from \"./registry\";\nimport { resolveComponent } from \"./registry\";\nimport { assertSafeActionName } from \"./actions\";\n\nexport interface ValidationError {\n path: string;\n message: string;\n}\nexport interface ValidationResult<T = unknown> {\n ok: boolean;\n value?: T;\n /** Fatal problems — the surface cannot be rendered. */\n errors: ValidationError[];\n /** Non-fatal problems — the surface still renders; these degrade gracefully. */\n warnings?: ValidationError[];\n}\n\nconst surfaceShape = z.object({\n surfaceId: z.string().min(1),\n // Tier 2 canonical id (versioned URI); `catalog` is the legacy alias. Both optional on the\n // wire — the SDK stamps `catalogId` if the agent omits it.\n catalogId: z.string().min(1).optional(),\n catalog: z.string().min(1).optional(),\n // Legacy explicit root. A2UI uses the component with id \"root\"; kept optional for back-compat.\n root: z.string().min(1).optional(),\n components: z.array(\n z\n .object({\n id: z.string().min(1),\n component: z.string().min(1),\n children: z.array(z.string()).optional(),\n child: z.string().optional(),\n binding: z.string().optional(),\n action: z.object({ name: z.string(), wantResponse: z.boolean().optional() }).optional(),\n })\n .passthrough(),\n ),\n dataModel: z.record(z.unknown()).optional(),\n});\n\n/** UAX#31 identifier rule (A2UI): XID_Start/underscore then XID_Continue. */\nconst UAX31_ID = /^[\\p{XID_Start}_][\\p{XID_Continue}]*$/u;\n\n/** Validate one node's presentational props against its catalog definition. */\nexport function validateProps(node: A2uiComponent, def: UIComponentDefinition): ValidationResult {\n const { id, component, children, child, binding, action, ...props } = node;\n void child;\n const parsed = def.schema.safeParse(props);\n if (parsed.success) return { ok: true, value: parsed.data, errors: [] };\n return {\n ok: false,\n errors: parsed.error.issues.map((i) => ({ path: `${id}.${i.path.join(\".\")}`, message: i.message })),\n };\n}\n\n/** Full structural + catalog + prop + action validation of an incoming surface. */\nexport function validateSurface(input: unknown, manifest: CatalogManifest): ValidationResult<A2uiSurface> {\n const shape = surfaceShape.safeParse(input);\n if (!shape.success) {\n return { ok: false, errors: shape.error.issues.map((i) => ({ path: i.path.join(\".\"), message: i.message })) };\n }\n const surface = shape.data as A2uiSurface;\n const errors: ValidationError[] = []; // fatal — cannot render\n const warnings: ValidationError[] = []; // non-fatal — render anyway, degrade gracefully\n const ids = new Set(surface.components.map((c) => c.id));\n\n // Root = the component with id \"root\" (A2UI convention), falling back to the legacy `root` field.\n const rootId = ids.has(\"root\") ? \"root\" : surface.root;\n // Fatal: without a resolvable root node there is nothing to render.\n if (!rootId || !ids.has(rootId)) {\n errors.push({ path: \"root\", message: `no root component (expected a component with id \"root\")` });\n }\n\n // Non-fatal: catalogId should be present (the SDK stamps it if the agent omits it).\n if (!surface.catalogId && !surface.catalog) {\n warnings.push({ path: \"catalogId\", message: \"surface has no catalogId (SDK will stamp the active catalog)\" });\n }\n\n for (const node of surface.components) {\n // Non-fatal: A2UI mandates UAX#31 identifiers; a bad id still renders but is flagged.\n if (!UAX31_ID.test(node.id)) {\n warnings.push({ path: node.id, message: `id \"${node.id}\" is not a valid UAX#31 identifier` });\n }\n\n const def = resolveComponent(manifest, node.component);\n if (!def) {\n // Non-fatal: the renderer falls back to a text placeholder for unknown components.\n warnings.push({ path: node.id, message: `unknown component \"${node.component}\" (renders as text)` });\n continue;\n }\n\n // Non-fatal: invalid presentational props degrade to component defaults.\n warnings.push(...validateProps(node, def).errors);\n\n for (const childId of node.children ?? []) {\n if (!ids.has(childId)) {\n warnings.push({ path: node.id, message: `child \"${childId}\" does not exist (skipped)` });\n }\n }\n if (node.child && !ids.has(node.child)) {\n warnings.push({ path: node.id, message: `child \"${node.child}\" does not exist (skipped)` });\n }\n\n // Fatal (security invariant): an action name must be a semantic string, never a URL.\n if (node.action) {\n try {\n assertSafeActionName(node.action.name);\n } catch (e) {\n errors.push({ path: `${node.id}.action`, message: (e as Error).message });\n }\n }\n }\n\n return errors.length === 0\n ? { ok: true, value: surface, errors: [], warnings }\n : { ok: false, errors, warnings };\n}\n","import type { CatalogManifest } from \"./registry\";\nimport { TONES, SIZES, EMPHASES, ALIGNS, DENSITIES } from \"./style\";\n\n/**\n * The runtime expects each `tool_schemas` entry to be a flat JSON Schema of the\n * tool arguments: `title` is the tool name, `properties` are the arguments.\n * (Not the OpenAI `{ type:\"function\", function:{...} }` wrapper, and not a\n * `{ name, description, parameters }` envelope — both leave the runtime with an\n * empty argument schema.)\n */\nexport interface RenderUiToolSchema {\n title: \"render_ui\";\n name: \"render_ui\";\n description: string;\n type: \"object\";\n properties: Record<string, unknown>;\n required: string[];\n additionalProperties: boolean;\n}\n\nconst DESCRIPTION =\n \"Render a UI using A2UI. The arguments are a UI surface, NOT free-form. Shape: \" +\n \"{ surfaceId, root, components, dataModel? }. `components` is a FLAT array; every item is \" +\n \"{ id, component, children?, ...props } where `component` is one of the allowed names (use \" +\n \"`component`, never `type`) and `children` is an array of string ids referencing other items \" +\n \"(never nested objects). Inputs bind to the data model via `binding` (a JSON Pointer like \" +\n '\"/name\"). To collect input, include a Button with action { name, wantResponse: true } — its ' +\n \"result (the data model) is returned to you; a surface with no such button is display-only. \" +\n 'Example: { \"surfaceId\": \"signup\", \"root\": \"root\", \"components\": [ ' +\n '{ \"id\": \"root\", \"component\": \"Stack\", \"children\": [\"name\", \"desc\", \"submit\"] }, ' +\n '{ \"id\": \"name\", \"component\": \"TextField\", \"label\": \"Username\", \"binding\": \"/name\" }, ' +\n '{ \"id\": \"desc\", \"component\": \"TextField\", \"label\": \"Description\", \"binding\": \"/description\" }, ' +\n '{ \"id\": \"submit\", \"component\": \"Button\", \"text\": \"Save\", \"action\": { \"name\": \"save\", \"wantResponse\": true } } ' +\n '], \"dataModel\": { \"name\": \"\", \"description\": \"\" } }. ' +\n \"IMPORTANT: when you call render_ui, the rendered surface IS your reply — do NOT also \" +\n \"reproduce its content as text, markdown, or ASCII. Any accompanying message must be a brief \" +\n \"one-line intro at most, never a duplicate of the UI.\";\n\n/** Build the render_ui tool schema from a catalog, filtered to an allowlist of component names. */\nexport function buildRenderUiSchema(manifest: CatalogManifest, allowlist: string[]): RenderUiToolSchema {\n const allowed = allowlist.filter((name) => name in manifest.components);\n return {\n title: \"render_ui\",\n name: \"render_ui\",\n description: DESCRIPTION,\n type: \"object\",\n properties: {\n surfaceId: { type: \"string\" },\n // A2UI catalog id — a versioned URI. `const` nudges the model to echo it; the SDK\n // also stamps it if omitted, so the client always knows which catalog version to render.\n catalogId: { type: \"string\", const: manifest.id },\n catalog: { type: \"string\" }, // legacy alias (accepted, ignored)\n root: { type: \"string\" }, // legacy explicit root (accepted; A2UI uses the id:\"root\" component)\n components: {\n type: \"array\",\n items: {\n type: \"object\",\n properties: {\n id: { type: \"string\" },\n component: { type: \"string\", enum: allowed },\n children: { type: \"array\", items: { type: \"string\" } },\n child: { type: \"string\" },\n binding: { type: \"string\" },\n action: {\n type: \"object\",\n properties: {\n name: { type: \"string\" },\n wantResponse: { type: \"boolean\" },\n },\n required: [\"name\"],\n },\n tone: { type: \"string\", enum: [...TONES] },\n size: { type: \"string\", enum: [...SIZES] },\n emphasis: { type: \"string\", enum: [...EMPHASES] },\n align: { type: \"string\", enum: [...ALIGNS] },\n density: { type: \"string\", enum: [...DENSITIES] },\n variant: { type: \"string\" },\n text: { type: \"string\" },\n label: { type: \"string\" },\n placeholder: { type: \"string\" },\n title: { type: \"string\" },\n direction: { type: \"string\" },\n gap: { type: \"string\" },\n // Data props for data components. Several are legitimately polymorphic across\n // components — type them as their real unions so the runtime doesn't reject\n // valid output (adapters normalize each shape):\n // data: array (Chart/Table rows) | object (KeyValue)\n // rows: array (Table) | number (TextArea row count)\n // columns: array (Table col defs) | number (Grid column count)\n data: { type: [\"array\", \"object\"] },\n rows: { type: [\"array\", \"number\"] },\n items: { type: \"array\" },\n // Accept string OR object items — models routinely emit the terse string\n // form (e.g. series:[\"revenue\"], options:[\"A\",\"B\"]); adapters normalize.\n columns: { type: [\"array\", \"number\"], items: { type: [\"object\", \"string\"] } },\n series: { type: \"array\", items: { type: [\"object\", \"string\"] } },\n options: { type: \"array\", items: { type: [\"object\", \"string\"] } },\n kind: { type: \"string\" },\n x: { type: \"string\" },\n value: {},\n },\n required: [\"id\", \"component\"],\n },\n },\n dataModel: { type: \"object\" },\n },\n required: [\"surfaceId\", \"root\", \"components\"],\n additionalProperties: false,\n };\n}\n","import type { CatalogManifest } from \"./registry\";\nimport { TONES, SIZES } from \"./style\";\n\n/**\n * Build the compact GenUI prompt clause from the catalog, filtered to an allowlist.\n * Teaches the allowed components, the style vocabulary, the wantResponse round-trip\n * rule, and the \"don't reproduce the UI as text\" rule.\n */\nexport function buildGenuiClause(manifest: CatalogManifest, allowlist: string[]): string {\n const names = allowlist.filter((n) => n in manifest.components);\n return [\n \"You can render UI by calling render_ui with an A2UI surface (a flat components array; each item is { id, component, children?, ...props }; component is one of the allowed names; children are string ids referencing other items).\",\n `Components: ${names.join(\", \")}.`,\n `Style each component via the semantic vocabulary (never CSS, colors, or HTML): tone (${TONES.join(\"/\")}), size (${SIZES.join(\"/\")}), emphasis (low/medium/high), align (start/center/end), density (compact/comfortable), plus a component-specific variant where offered.`,\n \"Data components MUST carry their data: Chart takes `data` (an array of row objects) + `series` (keys to plot) + `x` (the category key); Table takes `rows` (array of row objects) + `columns` ([{ key, header }] matching the row keys); List takes `items` (array); Stat takes `label`+`value`; KeyValue takes `data` (an object). Put the data inline on the component (or in dataModel referenced via `binding`).\",\n \"To collect input, add a Button with an action { name, wantResponse: true }. You get back { action, surfaceId, componentId, data } — `data` is the collected data model and `componentId` is the id of the component that was acted on. A surface with no such button is display-only.\",\n \"When you render several options to choose from (a grid of cards, each with its own button), give every option component a MEANINGFUL id (e.g. flight-NH107, hotel-memmo-alfama): `componentId` tells you which one the user picked, so never ask them to repeat a choice they already made.\",\n 'The user may ignore an interactive surface and just type instead. You then receive action \"userDismissedSurface\" with their words in `userMessage` — treat it as their reply, answer it directly, and do not re-render the same surface or scold them for not using it.',\n \"IMPORTANT: the rendered surface IS your reply — do NOT reproduce its content as text, markdown, or ASCII; a one-line intro at most.\",\n \"Prefer plain text for simple replies.\",\n ].join(\" \");\n}\n","import { getPointer } from \"./binding\";\n\n/**\n * An A2UI DynamicString / DynamicNumber: a prop value that is either a literal\n * OR a reference to a data-model path (`{ path: \"/user/name\" }`, JSON Pointer).\n */\nexport type DynamicValue<T = unknown> = T | { path: string };\n\n/** True when a value is a `{ path: string }` data-model reference. */\nexport function isPathRef(v: unknown): v is { path: string } {\n return !!v && typeof v === \"object\" && typeof (v as { path?: unknown }).path === \"string\";\n}\n\n/** Resolve a possibly-bound value against the surface data model. Literals pass through. */\nexport function resolveDynamic(v: unknown, dataModel: unknown): unknown {\n return isPathRef(v) ? getPointer(dataModel, v.path) : v;\n}\n","import { zodToJsonSchema } from \"zod-to-json-schema\";\nimport type { CatalogManifest } from \"./registry\";\n\n/**\n * `zodToJsonSchema`'s generic return type triggers TS2589 (excessively deep) during .d.ts\n * generation. Call it through a plain, non-generic signature — we only read properties/required.\n */\nconst toJsonSchema = zodToJsonSchema as unknown as (\n schema: unknown,\n opts?: unknown,\n) => { properties?: Record<string, unknown>; required?: string[] };\n\n/**\n * The A2UI-format catalog JSON — the published, versioned contract. Emitted from the\n * authoring catalog (the zod `CatalogManifest`) so the shipped artifact can never drift\n * from what the SDK validates against (guarded by emit.test.ts).\n */\nexport interface A2uiCatalogJson {\n $schema: string;\n catalogId: string;\n title: string;\n description: string;\n components: Record<string, unknown>;\n $defs: Record<string, unknown>;\n}\n\n/** Shared A2UI type defs referenced by (future, DynamicString-bound) components. */\nconst SHARED_DEFS: Record<string, unknown> = {\n DynamicString: {\n description: \"A literal string OR a data-model path reference { path }.\",\n oneOf: [\n { type: \"string\" },\n { type: \"object\", properties: { path: { type: \"string\" } }, required: [\"path\"], additionalProperties: false },\n ],\n },\n Action: {\n description: \"A semantic action (never a URL). wantResponse:true returns the data model to the agent.\",\n type: \"object\",\n properties: { name: { type: \"string\" }, wantResponse: { type: \"boolean\" } },\n required: [\"name\"],\n additionalProperties: false,\n },\n};\n\n/**\n * Compile the authoring catalog to the A2UI v1.0 catalog format:\n * `{ catalogId, components: { Name: {type:object, properties:{ component:{const}, …}, required, unevaluatedProperties:false } }, $defs }`.\n */\nexport function emitA2uiCatalog(manifest: CatalogManifest, opts: { catalogId: string }): A2uiCatalogJson {\n const components: Record<string, unknown> = {};\n\n for (const [name, def] of Object.entries(manifest.components)) {\n const propsSchema = toJsonSchema(def.schema, { $refStrategy: \"none\", target: \"jsonSchema2020\" });\n const properties: Record<string, unknown> = {\n component: { const: name },\n ...(propsSchema.properties ?? {}),\n };\n const required = Array.from(new Set([\"component\", ...(propsSchema.required ?? [])]));\n components[name] = {\n type: \"object\",\n properties,\n required,\n // Presentational props are open at authoring time (zod .passthrough()); the tool\n // schema is where the model-facing prop set is fixed. Keep the catalog permissive.\n unevaluatedProperties: false,\n };\n }\n\n return {\n $schema: \"https://json-schema.org/draft/2020-12/schema\",\n catalogId: opts.catalogId,\n title: \"Alquimia Core Catalog\",\n description:\n \"Alquimia's default A2UI catalog. Abstract, framework-agnostic component contract; \" +\n \"consumers map each component to their own (shadcn) renderer. Generated from the SDK authoring catalog.\",\n components,\n $defs: SHARED_DEFS,\n };\n}\n","{\n \"$schema\": \"https://json-schema.org/draft/2020-12/schema\",\n \"catalogId\": \"https://alquimia.ai/catalogs/core/v1/catalog.json\",\n \"title\": \"Alquimia Core Catalog\",\n \"description\": \"Alquimia's default A2UI catalog. Abstract, framework-agnostic component contract; consumers map each component to their own (shadcn) renderer. Generated from the SDK authoring catalog.\",\n \"components\": {\n \"Stack\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Stack\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"direction\": {\n \"type\": \"string\",\n \"enum\": [\n \"vertical\",\n \"horizontal\"\n ]\n },\n \"gap\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Grid\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Grid\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"columns\": {\n \"type\": \"integer\",\n \"minimum\": 1,\n \"maximum\": 6\n },\n \"gap\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Row\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Row\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"gap\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"wrap\": {\n \"type\": \"boolean\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Column\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Column\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"gap\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Divider\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Divider\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Spacer\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Spacer\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Card\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Card\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"variant\": {\n \"type\": \"string\",\n \"enum\": [\n \"elevated\",\n \"outline\",\n \"ghost\"\n ]\n },\n \"title\": {\n \"type\": \"string\"\n },\n \"description\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Accordion\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Accordion\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"items\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"title\": {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"title\",\n \"value\"\n ],\n \"additionalProperties\": false\n }\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Tabs\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Tabs\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"tabs\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"label\": {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"label\",\n \"value\"\n ],\n \"additionalProperties\": false\n },\n \"minItems\": 1\n }\n },\n \"required\": [\n \"component\",\n \"tabs\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Text\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Text\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"variant\": {\n \"type\": \"string\",\n \"enum\": [\n \"body\",\n \"muted\",\n \"caption\",\n \"lead\"\n ]\n },\n \"text\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\",\n \"text\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Heading\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Heading\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"text\": {\n \"type\": \"string\"\n },\n \"level\": {\n \"type\": \"integer\",\n \"minimum\": 1,\n \"maximum\": 4\n }\n },\n \"required\": [\n \"component\",\n \"text\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Markdown\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Markdown\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"text\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\",\n \"text\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Image\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Image\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"src\": {\n \"type\": \"string\"\n },\n \"alt\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\",\n \"src\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Icon\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Icon\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"name\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\",\n \"name\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Badge\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Badge\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"variant\": {\n \"type\": \"string\",\n \"enum\": [\n \"solid\",\n \"outline\",\n \"subtle\"\n ]\n },\n \"text\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\",\n \"text\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Avatar\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Avatar\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"src\": {\n \"type\": \"string\"\n },\n \"fallback\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Alert\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Alert\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"variant\": {\n \"type\": \"string\",\n \"enum\": [\n \"info\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"text\": {\n \"type\": \"string\"\n },\n \"title\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\",\n \"text\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Stat\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Stat\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": [\n \"string\",\n \"number\"\n ]\n },\n \"delta\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\",\n \"label\",\n \"value\"\n ],\n \"unevaluatedProperties\": false\n },\n \"KeyValue\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"KeyValue\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"List\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"List\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"ordered\": {\n \"type\": \"boolean\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Quote\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Quote\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"text\": {\n \"type\": \"string\"\n },\n \"cite\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\",\n \"text\"\n ],\n \"unevaluatedProperties\": false\n },\n \"TextField\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"TextField\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n },\n \"placeholder\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"TextArea\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"TextArea\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n },\n \"placeholder\": {\n \"type\": \"string\"\n },\n \"rows\": {\n \"type\": \"integer\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"NumberField\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"NumberField\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n },\n \"min\": {\n \"type\": \"number\"\n },\n \"max\": {\n \"type\": \"number\"\n },\n \"step\": {\n \"type\": \"number\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Select\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Select\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n },\n \"placeholder\": {\n \"type\": \"string\"\n },\n \"options\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"label\": {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": [\n \"string\",\n \"number\"\n ]\n }\n },\n \"required\": [\n \"label\",\n \"value\"\n ],\n \"additionalProperties\": false\n },\n \"minItems\": 1\n }\n },\n \"required\": [\n \"component\",\n \"options\"\n ],\n \"unevaluatedProperties\": false\n },\n \"MultiSelect\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"MultiSelect\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n },\n \"options\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"label\": {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": [\n \"string\",\n \"number\"\n ]\n }\n },\n \"required\": [\n \"label\",\n \"value\"\n ],\n \"additionalProperties\": false\n },\n \"minItems\": 1\n }\n },\n \"required\": [\n \"component\",\n \"options\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Combobox\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Combobox\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n },\n \"placeholder\": {\n \"type\": \"string\"\n },\n \"options\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"label\": {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": [\n \"string\",\n \"number\"\n ]\n }\n },\n \"required\": [\n \"label\",\n \"value\"\n ],\n \"additionalProperties\": false\n },\n \"minItems\": 1\n }\n },\n \"required\": [\n \"component\",\n \"options\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Checkbox\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Checkbox\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"CheckboxGroup\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"CheckboxGroup\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n },\n \"options\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"label\": {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": [\n \"string\",\n \"number\"\n ]\n }\n },\n \"required\": [\n \"label\",\n \"value\"\n ],\n \"additionalProperties\": false\n },\n \"minItems\": 1\n }\n },\n \"required\": [\n \"component\",\n \"options\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Radio\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Radio\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n },\n \"options\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"label\": {\n \"type\": \"string\"\n },\n \"value\": {\n \"type\": [\n \"string\",\n \"number\"\n ]\n }\n },\n \"required\": [\n \"label\",\n \"value\"\n ],\n \"additionalProperties\": false\n },\n \"minItems\": 1\n }\n },\n \"required\": [\n \"component\",\n \"options\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Switch\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Switch\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Slider\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Slider\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n },\n \"min\": {\n \"type\": \"number\"\n },\n \"max\": {\n \"type\": \"number\"\n },\n \"step\": {\n \"type\": \"number\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"DatePicker\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"DatePicker\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"DateRange\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"DateRange\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"FileUpload\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"FileUpload\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n },\n \"accept\": {\n \"type\": \"string\"\n },\n \"multiple\": {\n \"type\": \"boolean\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Rating\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Rating\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"label\": {\n \"type\": \"string\"\n },\n \"max\": {\n \"type\": \"integer\"\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Table\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Table\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"columns\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"key\": {\n \"type\": \"string\"\n },\n \"header\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"key\"\n ],\n \"additionalProperties\": false\n },\n \"minItems\": 1\n },\n \"sortable\": {\n \"type\": \"boolean\"\n }\n },\n \"required\": [\n \"component\",\n \"columns\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Chart\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Chart\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"kind\": {\n \"type\": \"string\",\n \"enum\": [\n \"bar\",\n \"line\",\n \"area\",\n \"pie\"\n ]\n },\n \"x\": {\n \"type\": \"string\"\n },\n \"series\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"key\": {\n \"type\": \"string\"\n },\n \"label\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"key\"\n ],\n \"additionalProperties\": false\n },\n \"minItems\": 1\n },\n \"title\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\",\n \"kind\",\n \"series\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Progress\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Progress\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"value\": {\n \"type\": \"number\"\n },\n \"max\": {\n \"type\": \"number\"\n },\n \"label\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\",\n \"value\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Timeline\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Timeline\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"items\": {\n \"type\": \"array\",\n \"items\": {\n \"type\": \"object\",\n \"properties\": {\n \"title\": {\n \"type\": \"string\"\n },\n \"description\": {\n \"type\": \"string\"\n },\n \"timestamp\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"title\"\n ],\n \"additionalProperties\": false\n },\n \"minItems\": 1\n }\n },\n \"required\": [\n \"component\",\n \"items\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Button\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Button\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"variant\": {\n \"type\": \"string\",\n \"enum\": [\n \"solid\",\n \"outline\",\n \"ghost\",\n \"link\"\n ]\n },\n \"text\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\",\n \"text\"\n ],\n \"unevaluatedProperties\": false\n },\n \"ButtonGroup\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"ButtonGroup\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n }\n },\n \"required\": [\n \"component\"\n ],\n \"unevaluatedProperties\": false\n },\n \"Link\": {\n \"type\": \"object\",\n \"properties\": {\n \"component\": {\n \"const\": \"Link\"\n },\n \"tone\": {\n \"type\": \"string\",\n \"enum\": [\n \"default\",\n \"muted\",\n \"primary\",\n \"success\",\n \"warning\",\n \"danger\"\n ]\n },\n \"size\": {\n \"type\": \"string\",\n \"enum\": [\n \"sm\",\n \"md\",\n \"lg\"\n ]\n },\n \"emphasis\": {\n \"type\": \"string\",\n \"enum\": [\n \"low\",\n \"medium\",\n \"high\"\n ]\n },\n \"align\": {\n \"type\": \"string\",\n \"enum\": [\n \"start\",\n \"center\",\n \"end\"\n ]\n },\n \"density\": {\n \"type\": \"string\",\n \"enum\": [\n \"compact\",\n \"comfortable\"\n ]\n },\n \"text\": {\n \"type\": \"string\"\n },\n \"href\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"component\",\n \"text\"\n ],\n \"unevaluatedProperties\": false\n }\n },\n \"$defs\": {\n \"DynamicString\": {\n \"description\": \"A literal string OR a data-model path reference { path }.\",\n \"oneOf\": [\n {\n \"type\": \"string\"\n },\n {\n \"type\": \"object\",\n \"properties\": {\n \"path\": {\n \"type\": \"string\"\n }\n },\n \"required\": [\n \"path\"\n ],\n \"additionalProperties\": false\n }\n ]\n },\n \"Action\": {\n \"description\": \"A semantic action (never a URL). wantResponse:true returns the data model to the agent.\",\n \"type\": \"object\",\n \"properties\": {\n \"name\": {\n \"type\": \"string\"\n },\n \"wantResponse\": {\n \"type\": \"boolean\"\n }\n },\n \"required\": [\n \"name\"\n ],\n \"additionalProperties\": false\n }\n }\n}\n"],"mappings":"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","names":["z","z","z","z","def","def"]}
|