@almadar/patterns 1.0.14 → 1.1.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/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/patterns-registry.json","../src/integrators-registry.json","../src/component-mapping.json","../src/event-contracts.json","../src/pattern-types.ts","../src/helpers/prompt-helpers.ts","../src/index.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["{\n \"version\": \"1.0.0\",\n \"exportedAt\": \"2026-02-10T05:45:36.769Z\",\n \"patterns\": {\n \"entity-table\": {\n \"type\": \"entity-table\",\n \"category\": \"display\",\n \"description\": \"Data table with columns and sorting\",\n \"suggestedFor\": [\n \"data-dense views\",\n \"comparisons\",\n \"admin panels\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"fields\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Fields to display - accepts string[] or Column[] for unified interface. Alias for columns\"\n },\n \"columns\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Columns can be Column objects or simple string field names - accepts readonly for generated const arrays\"\n },\n \"data\": {\n \"types\": [\n \"unknown\",\n \"array\"\n ],\n \"description\": \"Data array - primary prop for data. Accepts readonly or mutable arrays, and unknown for generated components\"\n },\n \"entity\": {\n \"types\": [\n \"string\",\n \"unknown\",\n \"array\"\n ],\n \"description\": \"Entity name for auto-fetch OR data array (backwards compatible)\"\n },\n \"itemActions\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Item actions from generated code - maps to rowActions\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state indicator\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"emptyIcon\": {\n \"types\": [\n \"icon\"\n ],\n \"description\": \"emptyIcon prop\"\n },\n \"emptyTitle\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"emptyTitle prop\"\n },\n \"emptyDescription\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"emptyDescription prop\"\n },\n \"emptyAction\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"emptyAction prop\"\n },\n \"selectable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Selection\"\n },\n \"selectedIds\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"selectedIds prop\"\n },\n \"onSelectionChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onSelectionChange prop\"\n },\n \"sortBy\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Sorting\"\n },\n \"sortDirection\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"sortDirection prop\"\n },\n \"onSort\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onSort prop\"\n },\n \"pagination\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Pagination (manual control)\"\n },\n \"enablePagination\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Server-side pagination (automatic when enabled)\"\n },\n \"defaultPageSize\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Items per page for automatic pagination (default: 20)\"\n },\n \"showTotal\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show total count in pagination\"\n },\n \"searchable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Search\"\n },\n \"searchValue\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"searchValue prop\"\n },\n \"onSearch\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onSearch prop\"\n },\n \"searchPlaceholder\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"searchPlaceholder prop\"\n },\n \"onRowClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Row click navigation\"\n },\n \"rowActions\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Row actions\"\n },\n \"bulkActions\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Bulk actions\"\n },\n \"headerActions\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Header actions\"\n },\n \"query\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Query singleton binding for filter/sort state. When provided, syncs with the query singleton for filtering and sorting. Example: \\\"@TaskQuery\\\"\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n }\n }\n },\n \"entity-list\": {\n \"type\": \"entity-list\",\n \"category\": \"display\",\n \"description\": \"Vertical list of items\",\n \"suggestedFor\": [\n \"mobile-friendly lists\",\n \"simple item browsing\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"entity\": {\n \"types\": [\n \"array\",\n \"unknown\",\n \"string\"\n ],\n \"description\": \"Entity name for auto-fetch OR data array (backwards compatible)\"\n },\n \"data\": {\n \"types\": [\n \"array\",\n \"unknown\"\n ],\n \"description\": \"Data array - primary prop for data\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"selectable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"selectable prop\"\n },\n \"selectedItems\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"selectedItems prop\"\n },\n \"onSelectionChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onSelectionChange prop\"\n },\n \"itemActions\": {\n \"types\": [\n \"function\",\n \"unknown\"\n ],\n \"description\": \"Item actions - schema-driven or function-based\"\n },\n \"showDividers\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"showDividers prop\"\n },\n \"variant\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"variant prop\"\n },\n \"emptyMessage\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"emptyMessage prop\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n },\n \"renderItem\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"renderItem prop\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"children prop\"\n },\n \"onItemAction\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onItemAction prop\"\n },\n \"onRowClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onRowClick prop\"\n },\n \"fields\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Fields to display - accepts string[] or {key, header}[] for unified interface\"\n },\n \"fieldNames\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Alias for fields - backwards compatibility\"\n },\n \"query\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Query singleton binding for filter/sort state. When provided, syncs with the query singleton for filtering and sorting. Example: \\\"@TaskQuery\\\"\"\n },\n \"entityType\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity type name for display\"\n }\n }\n },\n \"entity-cards\": {\n \"type\": \"entity-cards\",\n \"category\": \"display\",\n \"description\": \"Grid of cards for visual content\",\n \"suggestedFor\": [\n \"visual items\",\n \"images\",\n \"previews\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"minCardWidth\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Minimum width of each card (default: 280px)\"\n },\n \"maxCols\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Maximum number of columns\"\n },\n \"gap\": {\n \"types\": [\n \"cardgridgap\"\n ],\n \"description\": \"Gap between cards\"\n },\n \"alignItems\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Align cards vertically in their cells\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Children elements (cards) - optional when using entity/data props\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity type for data-bound usage\"\n },\n \"fields\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Fields to display - accepts string[] or {key, header}[] for unified interface\"\n },\n \"fieldNames\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Alias for fields - backwards compatibility\"\n },\n \"columns\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Alias for fields - backwards compatibility\"\n },\n \"data\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Data array for data-bound usage - accepts readonly for generated const arrays\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state indicator\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"itemActions\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Actions for each card item (schema-driven)\"\n },\n \"onCardClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when a card is clicked\"\n },\n \"enablePagination\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Enable server-side pagination\"\n },\n \"pageSize\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Items per page (default: 20)\"\n },\n \"showTotal\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show total count in pagination\"\n },\n \"filter\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Filter configuration for entity data\"\n },\n \"query\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Query singleton binding for filter/sort state. When provided, syncs with the query singleton for filtering and sorting. Example: \\\"@TaskQuery\\\"\"\n }\n }\n },\n \"detail-panel\": {\n \"type\": \"detail-panel\",\n \"category\": \"display\",\n \"description\": \"Detail view panel for drawers/sidebars\",\n \"suggestedFor\": [\n \"drawer content\",\n \"side panels\",\n \"quick view\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"title prop\"\n },\n \"subtitle\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"subtitle prop\"\n },\n \"status\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"status prop\"\n },\n \"avatar\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"avatar prop\"\n },\n \"sections\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"sections prop\"\n },\n \"actions\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Unified actions array - first action with variant='primary' is the main action\"\n },\n \"footer\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"footer prop\"\n },\n \"slideOver\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"slideOver prop\"\n },\n \"onClose\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onClose prop\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Schema-based props\"\n },\n \"fields\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Fields to display - accepts string[] or {key, header}[] for unified interface\"\n },\n \"fieldNames\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Alias for fields - backwards compatibility\"\n },\n \"data\": {\n \"types\": [\n \"object\",\n \"unknown\"\n ],\n \"description\": \"data prop\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"isLoading prop\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"error prop\"\n },\n \"position\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Panel position (for drawer/sidebar placement)\"\n },\n \"width\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Panel width (CSS value, e.g., '400px', '50%')\"\n }\n }\n },\n \"page-header\": {\n \"type\": \"page-header\",\n \"category\": \"header\",\n \"description\": \"Page title with optional breadcrumb and action buttons\",\n \"suggestedFor\": [\n \"list pages\",\n \"detail pages\",\n \"dashboards\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\",\n \"number\",\n \"unknown\"\n ],\n \"description\": \"Page title - accepts unknown to handle generated code accessing dynamic entity data\"\n },\n \"subtitle\": {\n \"types\": [\n \"string\",\n \"number\",\n \"unknown\"\n ],\n \"description\": \"Optional subtitle/description\"\n },\n \"showBack\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show back button\"\n },\n \"backEvent\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Event to emit when back is clicked (default: BACK)\"\n },\n \"breadcrumbs\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Breadcrumbs\"\n },\n \"status\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Status badge\"\n },\n \"actions\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Actions array - first action with variant='primary' (or first action) is the main action\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state indicator\"\n },\n \"tabs\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Tabs for sub-navigation\"\n },\n \"activeTab\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"activeTab prop\"\n },\n \"onTabChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onTabChange prop\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Custom content in the header\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n }\n }\n },\n \"form\": {\n \"type\": \"form\",\n \"category\": \"form\",\n \"description\": \"Complete form with fields and actions\",\n \"suggestedFor\": [\n \"create forms\",\n \"edit forms\",\n \"data entry\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Form fields (traditional React children)\"\n },\n \"onSubmit\": {\n \"types\": [\n \"function\",\n \"string\"\n ],\n \"description\": \"Submit handler - receives form data, or event name string for trait dispatch\"\n },\n \"onCancel\": {\n \"types\": [\n \"function\",\n \"string\"\n ],\n \"description\": \"Cancel handler - function or event name string for trait dispatch\"\n },\n \"layout\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Form layout\"\n },\n \"gap\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Gap between fields\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Schema-based props\"\n },\n \"mode\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Form mode - 'create' for new records, 'edit' for updating existing\"\n },\n \"fields\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Fields definition (schema format) - accepts readonly for generated const arrays\"\n },\n \"initialData\": {\n \"types\": [\n \"object\",\n \"unknown\"\n ],\n \"description\": \"Initial form data\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"submitLabel\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Submit button label\"\n },\n \"cancelLabel\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Cancel button label (if provided, shows cancel button)\"\n },\n \"showCancel\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show cancel button (defaults to true for schema forms)\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Form title (used by ModalSlot to extract title)\"\n },\n \"submitEvent\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Event dispatch props (for trait state machine integration)\"\n },\n \"cancelEvent\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Event to dispatch on cancel (defaults to 'CANCEL')\"\n },\n \"relationsData\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Relation data props\"\n },\n \"relationsLoading\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Loading state for relation data: { fieldName: boolean }\"\n },\n \"conditionalFields\": {\n \"types\": [\n \"object\",\n \"boolean\"\n ],\n \"description\": \"Inspection form extensions\"\n },\n \"hiddenCalculations\": {\n \"types\": [\n \"array\",\n \"boolean\"\n ],\n \"description\": \"Hidden calculations that emit GLOBAL_VARIABLE_SET on field change (boolean true means enabled but config loaded separately)\"\n },\n \"violationTriggers\": {\n \"types\": [\n \"array\",\n \"boolean\"\n ],\n \"description\": \"Violation conditions that emit VIOLATION_DETECTED when met (boolean true means enabled but config loaded separately)\"\n },\n \"evaluationContext\": {\n \"types\": [\n \"formevaluationcontext\",\n \"object\"\n ],\n \"description\": \"Context for S-expression evaluation - accepts flexible types from generated code\"\n },\n \"sections\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Nested form sections with optional conditions\"\n },\n \"onFieldChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when any field value changes\"\n },\n \"configPath\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Config path for form configuration (schema-driven)\"\n },\n \"repeatable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the form supports repeatable entries\"\n }\n }\n },\n \"form-section\": {\n \"type\": \"form-section\",\n \"category\": \"form\",\n \"description\": \"Group of related input fields\",\n \"suggestedFor\": [\n \"create forms\",\n \"edit forms\",\n \"settings\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Section title\"\n },\n \"description\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Section description\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Form fields\",\n \"required\": true\n },\n \"collapsible\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Collapsible\"\n },\n \"defaultCollapsed\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Default collapsed state\"\n },\n \"card\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Use card wrapper\"\n },\n \"columns\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Grid columns for fields\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n }\n }\n },\n \"search-input\": {\n \"type\": \"search-input\",\n \"category\": \"filter\",\n \"description\": \"Search input with events\",\n \"suggestedFor\": [\n \"search functionality\",\n \"quick filters\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"value\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Search value (controlled mode)\"\n },\n \"onSearch\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when search value changes\"\n },\n \"debounceMs\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Debounce delay in milliseconds @default 300\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show loading state @default false\"\n },\n \"placeholder\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Placeholder text @default 'Search...'\"\n },\n \"clearable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show clear button @default true\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"event\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Event name to dispatch on search (schema metadata, wired by trait) This is metadata used by the trait generator, not by the component.\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity type for context-aware search. When provided, search events include entity context.\"\n },\n \"query\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Query singleton binding for state management. When provided, syncs search state with the query singleton. Example: \\\"@TaskQuery\\\"\"\n }\n }\n },\n \"filter-group\": {\n \"type\": \"filter-group\",\n \"category\": \"filter\",\n \"description\": \"Multiple filter controls\",\n \"suggestedFor\": [\n \"list pages with filterable data\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity name to filter\",\n \"required\": true\n },\n \"filters\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Filter definitions from schema\",\n \"required\": true\n },\n \"onFilterChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when a filter changes - for EntityStore integration\"\n },\n \"onClearAll\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback to clear all filters\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"variant\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Variant style\"\n },\n \"showIcon\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show filter icon\"\n },\n \"query\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Query singleton binding for state management. When provided, syncs filter state with the query singleton. Example: \\\"@TaskQuery\\\"\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state indicator\"\n }\n }\n },\n \"tabs\": {\n \"type\": \"tabs\",\n \"category\": \"navigation\",\n \"description\": \"Tab navigation within page\",\n \"suggestedFor\": [\n \"pages with multiple views\",\n \"filtered lists\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"items\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Tab items\"\n },\n \"tabs\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Tab items (alias for items - used by generated code)\"\n },\n \"defaultActiveTab\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Default active tab ID\"\n },\n \"activeTab\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Controlled active tab ID\"\n },\n \"onTabChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when tab changes\"\n },\n \"variant\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Tab variant\"\n },\n \"orientation\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Tab orientation\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"breadcrumb\": {\n \"type\": \"breadcrumb\",\n \"category\": \"navigation\",\n \"description\": \"Breadcrumb navigation\",\n \"suggestedFor\": [\n \"hierarchical navigation\",\n \"detail pages\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"items\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Breadcrumb items\",\n \"required\": true\n },\n \"separator\": {\n \"types\": [\n \"icon\"\n ],\n \"description\": \"Separator icon\"\n },\n \"maxItems\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Maximum items to show (truncates with ellipsis)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"wizard-progress\": {\n \"type\": \"wizard-progress\",\n \"category\": \"navigation\",\n \"description\": \"Wizard step progress indicator\",\n \"suggestedFor\": [\n \"multi-step forms\",\n \"onboarding\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"steps\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Step definitions (compatible with WizardContainer's WizardStep)\",\n \"required\": true\n },\n \"currentStep\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Current step index (0-based)\",\n \"required\": true\n },\n \"onStepClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when a completed step is clicked\"\n },\n \"allowNavigation\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Allow clicking on completed steps to navigate back\"\n },\n \"compact\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Compact mode (smaller, no titles)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"wizard-navigation\": {\n \"type\": \"wizard-navigation\",\n \"category\": \"navigation\",\n \"description\": \"Wizard navigation buttons\",\n \"suggestedFor\": [\n \"multi-step forms\",\n \"wizards\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"currentStep\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Current step index (0-based)\",\n \"required\": true\n },\n \"totalSteps\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Total number of steps\",\n \"required\": true\n },\n \"isValid\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the current step is valid (enables Next/Complete)\"\n },\n \"showBack\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show the Back button\"\n },\n \"showNext\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show the Next button\"\n },\n \"showComplete\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show the Complete button (on last step)\"\n },\n \"backLabel\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom label for Back button\"\n },\n \"nextLabel\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom label for Next button\"\n },\n \"completeLabel\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom label for Complete button\"\n },\n \"onBack\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Event to emit on Back click\"\n },\n \"onNext\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Event to emit on Next click\"\n },\n \"onComplete\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Event to emit on Complete click\"\n },\n \"onBackClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Direct callback for Back (alternative to event)\"\n },\n \"onNextClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Direct callback for Next (alternative to event)\"\n },\n \"onCompleteClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Direct callback for Complete (alternative to event)\"\n },\n \"compact\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Compact mode (smaller padding)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"wizard-container\": {\n \"type\": \"wizard-container\",\n \"category\": \"navigation\",\n \"description\": \"Multi-step wizard container\",\n \"suggestedFor\": [\n \"multi-step forms\",\n \"wizards\",\n \"onboarding flows\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"steps\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Wizard steps\",\n \"required\": true\n },\n \"currentStep\": {\n \"types\": [\n \"number\",\n \"string\",\n \"unknown\"\n ],\n \"description\": \"Current step index (controlled) - accepts unknown for generated code compatibility\"\n },\n \"onStepChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when step changes\"\n },\n \"onComplete\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when wizard is completed\"\n },\n \"showProgress\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show progress indicator\"\n },\n \"allowBack\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Allow navigation to previous steps\"\n },\n \"compact\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Modal mode (compact header, no padding)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity type name (schema-driven)\"\n }\n }\n },\n \"pagination\": {\n \"type\": \"pagination\",\n \"category\": \"navigation\",\n \"description\": \"Page navigation controls\",\n \"suggestedFor\": [\n \"paginated lists\",\n \"tables\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"currentPage\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Current page (1-indexed)\",\n \"required\": true\n },\n \"totalPages\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Total number of pages\",\n \"required\": true\n },\n \"onPageChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when page changes (optional - can be a no-op if not interactive)\"\n },\n \"showPageSize\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show page size selector @default false\"\n },\n \"pageSizeOptions\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Page size options\"\n },\n \"pageSize\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Current page size\"\n },\n \"onPageSizeChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when page size changes\"\n },\n \"showJumpToPage\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show jump to page input @default false\"\n },\n \"showTotal\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show total count @default false\"\n },\n \"totalItems\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Total items count\"\n },\n \"maxVisiblePages\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Maximum number of page buttons to show @default 7\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"empty-state\": {\n \"type\": \"empty-state\",\n \"category\": \"state\",\n \"description\": \"Message when no data exists\",\n \"suggestedFor\": [\n \"list pages\",\n \"search results\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"icon\": {\n \"types\": [\n \"icon\",\n \"string\"\n ],\n \"description\": \"Icon to display. Accepts either: - A Lucide icon component (LucideIcon) - A string icon name (e.g., \\\"check-circle\\\", \\\"x-circle\\\")\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Primary text to display - use title or message (message is alias for backwards compat)\"\n },\n \"message\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Alias for title - used by schema patterns\"\n },\n \"description\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"description prop\"\n },\n \"actionLabel\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"actionLabel prop\"\n },\n \"onAction\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onAction prop\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n },\n \"destructive\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Destructive styling for confirmation dialogs\"\n },\n \"variant\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Variant for color styling\"\n }\n }\n },\n \"loading-state\": {\n \"type\": \"loading-state\",\n \"category\": \"state\",\n \"description\": \"Loading indicator\",\n \"suggestedFor\": [\n \"any page with async data\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"title prop\"\n },\n \"message\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"message prop\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n }\n }\n },\n \"error-state\": {\n \"type\": \"error-state\",\n \"category\": \"state\",\n \"description\": \"Error message display\",\n \"suggestedFor\": [\n \"error handling\",\n \"failed requests\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"title prop\"\n },\n \"message\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Error message to display\"\n },\n \"description\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Alias for message (schema compatibility)\"\n },\n \"onRetry\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onRetry prop\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n }\n }\n },\n \"notification\": {\n \"type\": \"notification\",\n \"category\": \"state\",\n \"description\": \"Toast notification message\",\n \"suggestedFor\": [\n \"success messages\",\n \"error alerts\",\n \"info messages\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"variant\": {\n \"types\": [\n \"toastvariant\"\n ],\n \"description\": \"Toast variant\"\n },\n \"message\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Toast message\",\n \"required\": true\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Toast title (optional)\"\n },\n \"duration\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Auto-dismiss duration in milliseconds (0 = no auto-dismiss)\"\n },\n \"dismissible\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show dismiss button\"\n },\n \"onDismiss\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when toast is dismissed\"\n },\n \"actionLabel\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Action button label\"\n },\n \"onAction\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Action button click handler\"\n },\n \"badge\": {\n \"types\": [\n \"string\",\n \"number\"\n ],\n \"description\": \"Badge count (optional)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"stats\": {\n \"type\": \"stats\",\n \"category\": \"dashboard\",\n \"description\": \"Key metrics and statistics\",\n \"suggestedFor\": [\n \"dashboards\",\n \"overview pages\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Main label\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Title (alias for label)\"\n },\n \"value\": {\n \"types\": [\n \"string\",\n \"number\",\n \"array\",\n \"unknown\"\n ],\n \"description\": \"Primary value - accepts array/unknown from generated code (will use first element or length)\"\n },\n \"previousValue\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Previous value for comparison\"\n },\n \"currentValue\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Current value as number for trend calculation\"\n },\n \"trend\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Manual trend percentage (overrides calculation)\"\n },\n \"trendDirection\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Trend direction (overrides calculation)\"\n },\n \"invertTrend\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether up is good (green) or bad (red)\"\n },\n \"icon\": {\n \"types\": [\n \"icon\"\n ],\n \"description\": \"Icon to display\"\n },\n \"iconBg\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Icon background color\"\n },\n \"iconColor\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Icon color\"\n },\n \"subtitle\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Subtitle or description\"\n },\n \"action\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Action button\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Schema-based props\"\n },\n \"metrics\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Metrics to display (schema format) - accepts readonly for compatibility with generated const arrays\"\n },\n \"data\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Data to calculate stats from - accepts readonly for compatibility with generated const arrays\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state indicator\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n }\n }\n },\n \"dashboard-grid\": {\n \"type\": \"dashboard-grid\",\n \"category\": \"dashboard\",\n \"description\": \"Multi-column grid for widgets and stats cards\",\n \"suggestedFor\": [\n \"dashboards\",\n \"analytics pages\",\n \"overview screens\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"columns\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Number of columns\"\n },\n \"gap\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Gap between cells\"\n },\n \"cells\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Cell definitions\",\n \"required\": true\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"modal\": {\n \"type\": \"modal\",\n \"category\": \"container\",\n \"description\": \"Modal dialog overlay\",\n \"suggestedFor\": [\n \"dialogs\",\n \"confirmations\",\n \"forms\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"isOpen\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the modal is open (defaults to true when rendered by slot wrapper)\"\n },\n \"onClose\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when modal should close (injected by slot wrapper)\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"title prop\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Modal content (can be empty if using slot content)\"\n },\n \"footer\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"footer prop\"\n },\n \"size\": {\n \"types\": [\n \"modalsize\"\n ],\n \"description\": \"size prop\"\n },\n \"showCloseButton\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"showCloseButton prop\"\n },\n \"closeOnOverlayClick\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"closeOnOverlayClick prop\"\n },\n \"closeOnEscape\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"closeOnEscape prop\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n }\n }\n },\n \"drawer\": {\n \"type\": \"drawer\",\n \"category\": \"container\",\n \"description\": \"Side drawer panel\",\n \"suggestedFor\": [\n \"detail panels\",\n \"settings\",\n \"side navigation\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"isOpen\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the drawer is open (defaults to true when rendered by slot wrapper)\"\n },\n \"onClose\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when drawer should close (injected by slot wrapper)\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Drawer title\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Drawer content (can be empty if using slot content)\"\n },\n \"footer\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Footer content\"\n },\n \"position\": {\n \"types\": [\n \"drawerposition\"\n ],\n \"description\": \"Position (left or right)\"\n },\n \"width\": {\n \"types\": [\n \"string\",\n \"drawersize\"\n ],\n \"description\": \"Width (CSS value or preset size)\"\n },\n \"showCloseButton\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show close button\"\n },\n \"closeOnOverlayClick\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Close on overlay click\"\n },\n \"closeOnEscape\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Close on escape key\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional class name\"\n }\n }\n },\n \"confirm-dialog\": {\n \"type\": \"confirm-dialog\",\n \"category\": \"container\",\n \"description\": \"Confirmation dialog\",\n \"suggestedFor\": [\n \"destructive actions\",\n \"confirmations\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"isOpen\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the dialog is open (defaults to true when rendered by slot wrapper)\"\n },\n \"onClose\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when dialog is closed (injected by slot wrapper)\"\n },\n \"onConfirm\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when action is confirmed (injected by slot wrapper)\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Dialog title\",\n \"required\": true\n },\n \"message\": {\n \"types\": [\n \"string\",\n \"node\"\n ],\n \"description\": \"Dialog message/description\"\n },\n \"description\": {\n \"types\": [\n \"string\",\n \"node\"\n ],\n \"description\": \"Alias for message (schema compatibility)\"\n },\n \"confirmText\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Confirm button text\"\n },\n \"confirmLabel\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Alias for confirmText (schema compatibility)\"\n },\n \"cancelText\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Cancel button text\"\n },\n \"cancelLabel\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Alias for cancelText (schema compatibility)\"\n },\n \"variant\": {\n \"types\": [\n \"confirmdialogvariant\"\n ],\n \"description\": \"Dialog variant\"\n },\n \"size\": {\n \"types\": [\n \"modalsize\"\n ],\n \"description\": \"Dialog size\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state for confirm button\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"master-detail\": {\n \"type\": \"master-detail\",\n \"category\": \"layout\",\n \"description\": \"List on left, selected item detail on right\",\n \"suggestedFor\": [\n \"entity management\",\n \"inbox-style views\",\n \"file browsers\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"master\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Master panel content (usually a list)\",\n \"required\": true\n },\n \"detail\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Detail panel content\",\n \"required\": true\n },\n \"emptyDetail\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Content shown when nothing is selected\"\n },\n \"hasSelection\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether an item is currently selected\"\n },\n \"masterWidth\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Width of master panel (e.g., '350px', '30%')\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"masterClassName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Class for master pane\"\n },\n \"detailClassName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Class for detail pane\"\n }\n }\n },\n \"box\": {\n \"type\": \"box\",\n \"category\": \"layout\",\n \"description\": \"Generic styled container with padding, borders, and backgrounds\",\n \"suggestedFor\": [\n \"card containers\",\n \"sections\",\n \"styled wrappers\",\n \"content boxes\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"padding\": {\n \"types\": [\n \"boxpadding\"\n ],\n \"description\": \"Padding on all sides\"\n },\n \"paddingX\": {\n \"types\": [\n \"boxpadding\"\n ],\n \"description\": \"Horizontal padding (overrides padding for x-axis)\"\n },\n \"paddingY\": {\n \"types\": [\n \"boxpadding\"\n ],\n \"description\": \"Vertical padding (overrides padding for y-axis)\"\n },\n \"margin\": {\n \"types\": [\n \"boxmargin\"\n ],\n \"description\": \"Margin on all sides\"\n },\n \"marginX\": {\n \"types\": [\n \"boxmargin\"\n ],\n \"description\": \"Horizontal margin\"\n },\n \"marginY\": {\n \"types\": [\n \"boxmargin\"\n ],\n \"description\": \"Vertical margin\"\n },\n \"bg\": {\n \"types\": [\n \"boxbg\"\n ],\n \"description\": \"Background color\"\n },\n \"border\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show border\"\n },\n \"rounded\": {\n \"types\": [\n \"boxrounded\"\n ],\n \"description\": \"Border radius\"\n },\n \"shadow\": {\n \"types\": [\n \"boxshadow\"\n ],\n \"description\": \"Box shadow\"\n },\n \"display\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Display type\"\n },\n \"fullWidth\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Fill available width\"\n },\n \"fullHeight\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Fill available height\"\n },\n \"overflow\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Overflow behavior\"\n },\n \"position\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Position\"\n },\n \"as\": {\n \"types\": [\n \"react.elementtype\"\n ],\n \"description\": \"HTML element to render as\"\n }\n }\n },\n \"grid\": {\n \"type\": \"grid\",\n \"category\": \"layout\",\n \"description\": \"CSS Grid layout for multi-column content\",\n \"suggestedFor\": [\n \"dashboards\",\n \"card grids\",\n \"multi-column layouts\",\n \"responsive grids\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"cols\": {\n \"types\": [\n \"gridcols\",\n \"responsivegridcols\"\n ],\n \"description\": \"Number of columns (can be responsive object)\"\n },\n \"rows\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Number of rows\"\n },\n \"gap\": {\n \"types\": [\n \"gridgap\"\n ],\n \"description\": \"Gap between items\"\n },\n \"rowGap\": {\n \"types\": [\n \"gridgap\"\n ],\n \"description\": \"Row gap (overrides gap for rows)\"\n },\n \"colGap\": {\n \"types\": [\n \"gridgap\"\n ],\n \"description\": \"Column gap (overrides gap for columns)\"\n },\n \"alignItems\": {\n \"types\": [\n \"gridalign\"\n ],\n \"description\": \"Align items on block axis\"\n },\n \"justifyItems\": {\n \"types\": [\n \"gridjustify\"\n ],\n \"description\": \"Justify items on inline axis\"\n },\n \"flow\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Auto-flow direction\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n },\n \"style\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Inline styles\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Children elements\",\n \"required\": true\n },\n \"as\": {\n \"types\": [\n \"react.elementtype\"\n ],\n \"description\": \"HTML element to render as\"\n }\n }\n },\n \"center\": {\n \"type\": \"center\",\n \"category\": \"layout\",\n \"description\": \"Centers content horizontally and vertically\",\n \"suggestedFor\": [\n \"centered modals\",\n \"loading states\",\n \"empty states\",\n \"hero sections\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"inline\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Center inline (width fits content) vs block (full width)\"\n },\n \"horizontal\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Center only horizontally\"\n },\n \"vertical\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Center only vertically\"\n },\n \"minHeight\": {\n \"types\": [\n \"string\",\n \"number\"\n ],\n \"description\": \"Minimum height (useful for vertical centering)\"\n },\n \"fullHeight\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Fill available height\"\n },\n \"fullWidth\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Fill available width\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n },\n \"style\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Inline styles\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Children elements\",\n \"required\": true\n },\n \"as\": {\n \"types\": [\n \"react.elementtype\"\n ],\n \"description\": \"HTML element to render as\"\n }\n }\n },\n \"spacer\": {\n \"type\": \"spacer\",\n \"category\": \"layout\",\n \"description\": \"Flexible space that expands to fill available room\",\n \"suggestedFor\": [\n \"pushing elements apart\",\n \"flexible spacing\",\n \"layout adjustment\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"size\": {\n \"types\": [\n \"spacersize\"\n ],\n \"description\": \"Fixed size (auto = flex grow)\"\n },\n \"axis\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Orientation (for fixed sizes)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n }\n }\n },\n \"divider\": {\n \"type\": \"divider\",\n \"category\": \"layout\",\n \"description\": \"Visual separator between content sections\",\n \"suggestedFor\": [\n \"section breaks\",\n \"content separation\",\n \"visual grouping\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"orientation\": {\n \"types\": [\n \"dividerorientation\"\n ],\n \"description\": \"Orientation of the divider @default 'horizontal'\"\n },\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Text label to display in the divider\"\n },\n \"variant\": {\n \"types\": [\n \"dividervariant\"\n ],\n \"description\": \"Line style variant @default 'solid'\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"game-hud\": {\n \"type\": \"game-hud\",\n \"category\": \"game\",\n \"description\": \"Heads-up display showing health, score, lives\",\n \"suggestedFor\": [\n \"game page\",\n \"gameplay overlay\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"position\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Position of the HUD\"\n },\n \"stats\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Stats to display - accepts readonly for compatibility with generated const arrays\"\n },\n \"items\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Alias for stats (schema compatibility)\"\n },\n \"elements\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Schema-style elements array (alternative to stats). Converted to stats internally for backwards compatibility.\"\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Size variant\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"transparent\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether to use a semi-transparent background\"\n }\n }\n },\n \"game-menu\": {\n \"type\": \"game-menu\",\n \"category\": \"game\",\n \"description\": \"Main menu with start, options, credits\",\n \"suggestedFor\": [\n \"main menu page\",\n \"start screen\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Menu title\",\n \"required\": true\n },\n \"subtitle\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Optional subtitle or version\"\n },\n \"options\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Menu options - accepts readonly for compatibility with generated const arrays\"\n },\n \"menuItems\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Alias for options (schema compatibility)\"\n },\n \"onSelect\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when an option is selected (legacy callback, prefer event bus)\"\n },\n \"eventBus\": {\n \"types\": [\n \"eventbuscontexttype\"\n ],\n \"description\": \"Event bus for emitting UI events (optional, uses hook if not provided)\"\n },\n \"background\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Background image or gradient\"\n },\n \"logo\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Logo image URL\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"game-over-screen\": {\n \"type\": \"game-over-screen\",\n \"category\": \"game\",\n \"description\": \"Game over screen with score and retry option\",\n \"suggestedFor\": [\n \"game over\",\n \"victory screen\",\n \"defeat screen\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Screen title (e.g., \\\"Game Over\\\", \\\"Victory!\\\")\",\n \"required\": true\n },\n \"message\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Optional message\"\n },\n \"stats\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Stats to display\"\n },\n \"actions\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Action buttons\"\n },\n \"menuItems\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Alias for actions (schema compatibility)\"\n },\n \"onAction\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when an action is selected (legacy callback, prefer event bus)\"\n },\n \"eventBus\": {\n \"types\": [\n \"eventbuscontexttype\"\n ],\n \"description\": \"Event bus for emitting UI events (optional, uses hook if not provided)\"\n },\n \"variant\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Victory or defeat variant\"\n },\n \"highScore\": {\n \"types\": [\n \"number\",\n \"string\"\n ],\n \"description\": \"High score (optional, shows \\\"NEW HIGH SCORE!\\\" if exceeded)\"\n },\n \"currentScore\": {\n \"types\": [\n \"number\",\n \"string\"\n ],\n \"description\": \"Current score for high score comparison (accepts string for schema bindings)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"inventory-panel\": {\n \"type\": \"inventory-panel\",\n \"category\": \"game\",\n \"description\": \"Grid-based inventory UI for items, equipment, or resources\",\n \"suggestedFor\": [\n \"rpg inventory\",\n \"item management\",\n \"crafting\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"items\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Array of items in inventory\",\n \"required\": true\n },\n \"slots\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Total number of slots\",\n \"required\": true\n },\n \"columns\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Number of columns in grid\",\n \"required\": true\n },\n \"selectedSlot\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Currently selected slot index\"\n },\n \"onSelectSlot\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when a slot is selected\",\n \"required\": true\n },\n \"onUseItem\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when an item is used (double-click or Enter)\"\n },\n \"onDropItem\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when an item is dropped\"\n },\n \"showTooltips\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show item tooltips on hover\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Optional className\"\n },\n \"slotSize\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Slot size in pixels\"\n }\n }\n },\n \"dialogue-box\": {\n \"type\": \"dialogue-box\",\n \"category\": \"game\",\n \"description\": \"RPG-style dialogue box with speaker, portrait, and choices\",\n \"suggestedFor\": [\n \"npc dialogue\",\n \"story sequences\",\n \"tutorials\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"dialogue\": {\n \"types\": [\n \"dialoguenode\"\n ],\n \"description\": \"Current dialogue node to display\",\n \"required\": true\n },\n \"typewriterSpeed\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Typewriter speed in ms per character (0 = instant)\"\n },\n \"position\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Position of dialogue box\"\n },\n \"onComplete\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when text animation completes\"\n },\n \"onChoice\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when a choice is selected\"\n },\n \"onAdvance\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when dialogue is advanced (no choices)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Optional className\"\n }\n }\n },\n \"runtime-debugger\": {\n \"type\": \"runtime-debugger\",\n \"category\": \"debug\",\n \"description\": \"Debug overlay showing FPS, entity states, event logs\",\n \"suggestedFor\": [\n \"development\",\n \"debugging\",\n \"testing\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"position\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Initial position\"\n },\n \"defaultCollapsed\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Initial collapsed state\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"button\": {\n \"type\": \"button\",\n \"category\": \"component\",\n \"description\": \"Clickable button that emits events\",\n \"suggestedFor\": [\n \"actions\",\n \"form submission\",\n \"navigation triggers\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"variant\": {\n \"types\": [\n \"buttonvariant\"\n ],\n \"description\": \"variant prop\"\n },\n \"size\": {\n \"types\": [\n \"buttonsize\"\n ],\n \"description\": \"size prop\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"isLoading prop\"\n },\n \"leftIcon\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Left icon as ReactNode (preferred)\"\n },\n \"rightIcon\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Right icon as ReactNode (preferred)\"\n },\n \"icon\": {\n \"types\": [\n \"icon\"\n ],\n \"description\": \"Left icon as Lucide icon component (convenience prop, renders with default size)\"\n },\n \"iconRight\": {\n \"types\": [\n \"icon\"\n ],\n \"description\": \"Right icon as Lucide icon component (convenience prop)\"\n }\n }\n },\n \"badge\": {\n \"type\": \"badge\",\n \"category\": \"component\",\n \"description\": \"Small label for status or count\",\n \"suggestedFor\": [\n \"status indicators\",\n \"counts\",\n \"tags\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"variant\": {\n \"types\": [\n \"badgevariant\"\n ],\n \"description\": \"variant prop\"\n },\n \"size\": {\n \"types\": [\n \"badgesize\"\n ],\n \"description\": \"size prop\"\n }\n }\n },\n \"avatar\": {\n \"type\": \"avatar\",\n \"category\": \"component\",\n \"description\": \"User avatar image or initials\",\n \"suggestedFor\": [\n \"user profiles\",\n \"comments\",\n \"team lists\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"src\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Image source URL\"\n },\n \"alt\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Alt text for the image\"\n },\n \"name\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Full name - initials will be generated automatically\"\n },\n \"initials\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Initials to display (e.g., \\\"JD\\\" for John Doe) If not provided but name is, initials will be auto-generated\"\n },\n \"icon\": {\n \"types\": [\n \"icon\"\n ],\n \"description\": \"Icon to display when no image or initials\"\n },\n \"size\": {\n \"types\": [\n \"avatarsize\"\n ],\n \"description\": \"Size of the avatar @default 'md'\"\n },\n \"status\": {\n \"types\": [\n \"avatarstatus\"\n ],\n \"description\": \"Status indicator\"\n },\n \"badge\": {\n \"types\": [\n \"string\",\n \"number\"\n ],\n \"description\": \"Badge content (e.g., notification count)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"onClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Click handler\"\n }\n }\n },\n \"icon\": {\n \"type\": \"icon\",\n \"category\": \"component\",\n \"description\": \"Icon from Lucide icon set\",\n \"suggestedFor\": [\n \"decorative icons\",\n \"status indicators\",\n \"buttons\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"icon\": {\n \"types\": [\n \"icon\"\n ],\n \"description\": \"Lucide icon component (preferred for type-safe usage)\"\n },\n \"name\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Icon name as string (resolved from iconMap)\"\n },\n \"size\": {\n \"types\": [\n \"iconsize\"\n ],\n \"description\": \"Size of the icon\"\n },\n \"color\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Color class (Tailwind color class) or 'inherit' for theme default\"\n },\n \"animation\": {\n \"types\": [\n \"iconanimation\"\n ],\n \"description\": \"Animation type\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"strokeWidth\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Icon stroke width - uses theme default if not specified\"\n },\n \"style\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Inline style\"\n }\n }\n },\n \"card\": {\n \"type\": \"card\",\n \"category\": \"component\",\n \"description\": \"Card container with optional header and footer\",\n \"suggestedFor\": [\n \"content cards\",\n \"product cards\",\n \"info cards\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Card title\"\n },\n \"subtitle\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Card subtitle or description\"\n },\n \"image\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Image URL to display at top of card\"\n },\n \"actions\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Action buttons to display in card footer\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Card content\"\n },\n \"onClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Click handler for the entire card\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"progress-bar\": {\n \"type\": \"progress-bar\",\n \"category\": \"component\",\n \"description\": \"Progress indicator bar\",\n \"suggestedFor\": [\n \"progress tracking\",\n \"loading\",\n \"completion status\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"value\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Progress value (0-100)\",\n \"required\": true\n },\n \"max\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Maximum value (for calculating percentage) @default 100\"\n },\n \"variant\": {\n \"types\": [\n \"progressbarvariant\"\n ],\n \"description\": \"Variant/color of the progress bar @default 'primary'\"\n },\n \"color\": {\n \"types\": [\n \"progressbarcolor\"\n ],\n \"description\": \"Color variant (alias for variant) @default 'primary'\"\n },\n \"showPercentage\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show percentage text @default false\"\n },\n \"showLabel\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Alias for showPercentage (pattern compatibility)\"\n },\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Label text\"\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Size (for circular variant) @default 'md'\"\n },\n \"steps\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Number of steps (for stepped variant) @default 5\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"progressType\": {\n \"types\": [\n \"progressbartype\"\n ],\n \"description\": \"Type of the progress bar (linear, circular, stepped) @default 'linear'\"\n }\n }\n },\n \"spinner\": {\n \"type\": \"spinner\",\n \"category\": \"component\",\n \"description\": \"Loading spinner animation\",\n \"suggestedFor\": [\n \"loading states\",\n \"async operations\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"size\": {\n \"types\": [\n \"spinnersize\"\n ],\n \"description\": \"size prop\"\n }\n }\n },\n \"input\": {\n \"type\": \"input\",\n \"category\": \"component\",\n \"description\": \"Text input field\",\n \"suggestedFor\": [\n \"forms\",\n \"search\",\n \"data entry\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"error\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"error prop\"\n },\n \"leftIcon\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"leftIcon prop\"\n },\n \"rightIcon\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"rightIcon prop\"\n },\n \"icon\": {\n \"types\": [\n \"icon\"\n ],\n \"description\": \"Lucide icon component for left side (convenience prop)\"\n },\n \"clearable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show clear button when input has value\"\n },\n \"onClear\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when clear button is clicked\"\n },\n \"options\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Options for select type\"\n },\n \"rows\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Rows for textarea type\"\n },\n \"onChange\": {\n \"types\": [\n \"react.changeeventhandler\"\n ],\n \"description\": \"onChange handler - accepts events from input, select, or textarea\"\n },\n \"inputType\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Input type - supports 'select' and 'textarea' in addition to standard types\"\n }\n }\n },\n \"textarea\": {\n \"type\": \"textarea\",\n \"category\": \"component\",\n \"description\": \"Multi-line text input\",\n \"suggestedFor\": [\n \"long text\",\n \"descriptions\",\n \"comments\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"error\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"error prop\"\n }\n }\n },\n \"select\": {\n \"type\": \"select\",\n \"category\": \"component\",\n \"description\": \"Dropdown select input\",\n \"suggestedFor\": [\n \"option selection\",\n \"filters\",\n \"forms\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"options\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"options prop\",\n \"required\": true\n },\n \"placeholder\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"placeholder prop\"\n },\n \"error\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"error prop\"\n }\n }\n },\n \"checkbox\": {\n \"type\": \"checkbox\",\n \"category\": \"component\",\n \"description\": \"Checkbox input\",\n \"suggestedFor\": [\n \"boolean options\",\n \"multi-select\",\n \"toggles\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"label prop\"\n }\n }\n },\n \"radio\": {\n \"type\": \"radio\",\n \"category\": \"component\",\n \"description\": \"Radio button input\",\n \"suggestedFor\": [\n \"single selection\",\n \"options\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Label text displayed next to the radio button\"\n },\n \"helperText\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Helper text displayed below the radio button\"\n },\n \"error\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Error message displayed below the radio button\"\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Size of the radio button @default 'md'\"\n }\n }\n },\n \"switch\": {\n \"type\": \"switch\",\n \"category\": \"component\",\n \"description\": \"Toggle switch input\",\n \"suggestedFor\": [\n \"on/off settings\",\n \"toggles\",\n \"preferences\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"checked\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"checked prop\"\n },\n \"defaultChecked\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"defaultChecked prop\"\n },\n \"onChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onChange prop\"\n },\n \"disabled\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"disabled prop\"\n },\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"label prop\"\n },\n \"id\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"id prop\"\n },\n \"name\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"name prop\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n }\n }\n },\n \"label\": {\n \"type\": \"label\",\n \"category\": \"component\",\n \"description\": \"Form field label\",\n \"suggestedFor\": [\n \"form fields\",\n \"input labels\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"required\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"required prop\"\n }\n }\n },\n \"alert\": {\n \"type\": \"alert\",\n \"category\": \"component\",\n \"description\": \"Alert message box\",\n \"suggestedFor\": [\n \"warnings\",\n \"errors\",\n \"info messages\",\n \"success messages\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Alert content (children or message)\"\n },\n \"message\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Alert message (alias for children)\"\n },\n \"variant\": {\n \"types\": [\n \"alertvariant\"\n ],\n \"description\": \"variant prop\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"title prop\"\n },\n \"dismissible\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"dismissible prop\"\n },\n \"onDismiss\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onDismiss prop\"\n },\n \"onClose\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onClose prop\"\n },\n \"actions\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"actions prop\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n }\n }\n },\n \"tooltip\": {\n \"type\": \"tooltip\",\n \"category\": \"component\",\n \"description\": \"Hover tooltip\",\n \"suggestedFor\": [\n \"hints\",\n \"extra info\",\n \"help text\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"content\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Tooltip content\",\n \"required\": true\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Tooltip trigger element (ReactElement or ReactNode that will be wrapped in span)\",\n \"required\": true\n },\n \"position\": {\n \"types\": [\n \"tooltipposition\"\n ],\n \"description\": \"Tooltip position\"\n },\n \"delay\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Show delay in milliseconds\"\n },\n \"hideDelay\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Hide delay in milliseconds\"\n },\n \"showArrow\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show arrow\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"popover\": {\n \"type\": \"popover\",\n \"category\": \"component\",\n \"description\": \"Click-triggered popover\",\n \"suggestedFor\": [\n \"menus\",\n \"additional info\",\n \"actions\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"content\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Popover content\",\n \"required\": true\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Popover trigger element (ReactElement or ReactNode that will be wrapped in span)\",\n \"required\": true\n },\n \"position\": {\n \"types\": [\n \"popoverposition\"\n ],\n \"description\": \"Popover position @default 'bottom'\"\n },\n \"trigger\": {\n \"types\": [\n \"popovertrigger\"\n ],\n \"description\": \"Trigger type @default 'click'\"\n },\n \"showArrow\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show arrow @default true\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"menu\": {\n \"type\": \"menu\",\n \"category\": \"component\",\n \"description\": \"Dropdown menu\",\n \"suggestedFor\": [\n \"actions menu\",\n \"context menu\",\n \"dropdown\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"trigger\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Menu trigger element\",\n \"required\": true\n },\n \"items\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Menu items\",\n \"required\": true\n },\n \"position\": {\n \"types\": [\n \"menuposition\"\n ],\n \"description\": \"Menu position\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"accordion\": {\n \"type\": \"accordion\",\n \"category\": \"component\",\n \"description\": \"Collapsible accordion sections\",\n \"suggestedFor\": [\n \"FAQs\",\n \"collapsible content\",\n \"settings\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"items\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Accordion items\",\n \"required\": true\n },\n \"multiple\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Allow multiple items open at once @default false\"\n },\n \"defaultOpenItems\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Default open items (IDs)\"\n },\n \"defaultOpen\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Default open items by index (pattern compatibility)\"\n },\n \"openItems\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Controlled open items (IDs)\"\n },\n \"onItemToggle\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when item opens/closes\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"container\": {\n \"type\": \"container\",\n \"category\": \"component\",\n \"description\": \"Centered max-width container\",\n \"suggestedFor\": [\n \"page content\",\n \"centered layouts\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"size\": {\n \"types\": [\n \"containersize\"\n ],\n \"description\": \"Maximum width\"\n },\n \"maxWidth\": {\n \"types\": [\n \"containersize\"\n ],\n \"description\": \"Alias for size (pattern compatibility)\"\n },\n \"padding\": {\n \"types\": [\n \"containerpadding\"\n ],\n \"description\": \"Horizontal padding\"\n },\n \"center\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Center horizontally\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Children elements\"\n },\n \"as\": {\n \"types\": [\n \"react.elementtype\"\n ],\n \"description\": \"HTML element to render as\"\n }\n }\n },\n \"simple-grid\": {\n \"type\": \"simple-grid\",\n \"category\": \"component\",\n \"description\": \"Simple responsive grid with auto columns\",\n \"suggestedFor\": [\n \"card grids\",\n \"gallery\",\n \"responsive layouts\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"minChildWidth\": {\n \"types\": [\n \"number\",\n \"string\"\n ],\n \"description\": \"Minimum width of each child (e.g., 200, \\\"200px\\\", \\\"15rem\\\")\"\n },\n \"maxCols\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Maximum number of columns\"\n },\n \"cols\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Exact number of columns (disables auto-fit)\"\n },\n \"gap\": {\n \"types\": [\n \"simplegridgap\"\n ],\n \"description\": \"Gap between items\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Children elements\",\n \"required\": true\n }\n }\n },\n \"repeatable-form-section\": {\n \"type\": \"repeatable-form-section\",\n \"category\": \"form\",\n \"description\": \"Repeatable form section for multiple entries\",\n \"suggestedFor\": [\n \"repeating fields\",\n \"dynamic forms\",\n \"multi-entry sections\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"sectionType\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Section type identifier\",\n \"required\": true\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Section title\",\n \"required\": true\n },\n \"items\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Items in the section\",\n \"required\": true\n },\n \"renderItem\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Render function for each item\",\n \"required\": true\n },\n \"minItems\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Minimum items required\"\n },\n \"maxItems\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Maximum items allowed\"\n },\n \"allowReorder\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Allow reordering\"\n },\n \"addLabel\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Add button label\"\n },\n \"emptyMessage\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Empty state message\"\n },\n \"readOnly\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Read-only mode\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"onAdd\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Add handler\"\n },\n \"onRemove\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Remove handler\"\n },\n \"onReorder\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Reorder handler\"\n },\n \"trackAddedInState\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Inspection-specific enhancements\"\n },\n \"currentState\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Current inspection state (used when trackAddedInState is true)\"\n },\n \"showAuditInfo\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show audit metadata (addedInState, addedAt)\"\n }\n }\n },\n \"conditional-wrapper\": {\n \"type\": \"conditional-wrapper\",\n \"category\": \"component\",\n \"description\": \"ConditionalWrapper Atom Component A wrapper component that conditionally renders its children based on S-expression evaluation. Used for dynamic field visibility in inspection forms.\",\n \"suggestedFor\": [\n \"conditional\",\n \"wrapper\",\n \"conditional wrapper\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"condition\": {\n \"types\": [\n \"sexpr\"\n ],\n \"description\": \"The S-expression condition to evaluate\"\n },\n \"context\": {\n \"types\": [\n \"conditionalcontext\"\n ],\n \"description\": \"Context for evaluating the condition\",\n \"required\": true\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Children to render when condition is true (or when no condition is provided)\",\n \"required\": true\n },\n \"fallback\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Optional fallback to render when condition is false\"\n },\n \"animate\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether to animate the transition (uses CSS transitions)\"\n }\n }\n },\n \"law-reference-tooltip\": {\n \"type\": \"law-reference-tooltip\",\n \"category\": \"component\",\n \"description\": \"LawReferenceTooltip Atom Component A specialized tooltip for displaying law references in inspection forms. Shows law name, article number, and relevant clause text.\",\n \"suggestedFor\": [\n \"law\",\n \"reference\",\n \"tooltip\",\n \"law reference tooltip\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"reference\": {\n \"types\": [\n \"lawreference\"\n ],\n \"description\": \"The law reference to display\",\n \"required\": true\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Children element that triggers the tooltip\",\n \"required\": true\n },\n \"position\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Tooltip position\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"overlay\": {\n \"type\": \"overlay\",\n \"category\": \"container\",\n \"description\": \"Overlay Atom Component A fixed backdrop for modals and drawers.\",\n \"suggestedFor\": [\n \"overlay\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"isVisible\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"isVisible prop\"\n },\n \"onClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onClick prop\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n },\n \"blur\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"blur prop\"\n }\n }\n },\n \"stack\": {\n \"type\": \"stack\",\n \"category\": \"component\",\n \"description\": \"Stack Component A layout primitive for arranging children in a vertical or horizontal stack with consistent spacing. Includes convenience exports VStack and HStack for common use cases.\",\n \"suggestedFor\": [\n \"stack\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"direction\": {\n \"types\": [\n \"stackdirection\"\n ],\n \"description\": \"Stack direction\"\n },\n \"gap\": {\n \"types\": [\n \"stackgap\"\n ],\n \"description\": \"Gap between children\"\n },\n \"align\": {\n \"types\": [\n \"stackalign\"\n ],\n \"description\": \"Align items on the cross axis\"\n },\n \"justify\": {\n \"types\": [\n \"stackjustify\"\n ],\n \"description\": \"Justify items on the main axis\"\n },\n \"wrap\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Allow items to wrap\"\n },\n \"reverse\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Reverse the order of children\"\n },\n \"flex\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Fill available space (flex: 1)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n },\n \"style\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Inline styles\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Children elements\"\n },\n \"as\": {\n \"types\": [\n \"react.elementtype\"\n ],\n \"description\": \"HTML element to render as\"\n },\n \"onClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Click handler\"\n },\n \"onKeyDown\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Keyboard handler\"\n },\n \"role\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Role for accessibility\"\n },\n \"tabIndex\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Tab index for focus management\"\n }\n }\n },\n \"text-highlight\": {\n \"type\": \"text-highlight\",\n \"category\": \"component\",\n \"description\": \"TextHighlight Atom Component A styled span component for highlighting text with annotations (questions or notes). Uses different colors for different annotation types: - Questions: Blue highlight - Notes: Yellow highlight\",\n \"suggestedFor\": [\n \"text\",\n \"highlight\",\n \"text highlight\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"isActive\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the highlight is currently active/focused @default false\"\n },\n \"onClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when highlight is clicked\"\n },\n \"onMouseEnter\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when highlight is hovered\"\n },\n \"onMouseLeave\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when hover ends\"\n },\n \"annotationId\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Unique ID for the annotation\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Highlighted text content\",\n \"required\": true\n },\n \"highlightType\": {\n \"types\": [\n \"highlighttype\"\n ],\n \"description\": \"Type of highlight (determines color)\",\n \"required\": true\n }\n }\n },\n \"theme-toggle\": {\n \"type\": \"theme-toggle\",\n \"category\": \"component\",\n \"description\": \"ThemeToggle Atom Component A button that toggles between light and dark themes. Uses Sun and Moon icons to indicate current/target theme.\",\n \"suggestedFor\": [\n \"theme\",\n \"toggle\",\n \"theme toggle\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Size variant\"\n },\n \"showLabel\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show label text\"\n }\n }\n },\n \"typography\": {\n \"type\": \"typography\",\n \"category\": \"component\",\n \"description\": \"Typography Atom Component Text elements following the KFlow design system with theme-aware styling.\",\n \"suggestedFor\": [\n \"typography\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"variant\": {\n \"types\": [\n \"typographyvariant\"\n ],\n \"description\": \"Typography variant\"\n },\n \"level\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Heading level (1-6) - alternative to variant for headings\"\n },\n \"color\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Text color\"\n },\n \"align\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Text alignment\"\n },\n \"weight\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Font weight override\"\n },\n \"size\": {\n \"types\": [\n \"typographysize\"\n ],\n \"description\": \"Font size override\"\n },\n \"truncate\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Truncate with ellipsis (single line)\"\n },\n \"overflow\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Overflow handling mode\"\n },\n \"as\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Custom HTML element\"\n },\n \"id\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"HTML id attribute\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional class names\"\n },\n \"style\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Inline style\"\n },\n \"content\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Text content (alternative to children)\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Children elements\"\n }\n }\n },\n \"control-button\": {\n \"type\": \"control-button\",\n \"category\": \"component\",\n \"description\": \"ControlButton component\",\n \"suggestedFor\": [\n \"control\",\n \"button\",\n \"control button\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Button label text\"\n },\n \"icon\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Icon component or emoji\"\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Size variant\"\n },\n \"shape\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Shape variant\"\n },\n \"variant\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Visual variant\"\n },\n \"onPress\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when button is pressed\"\n },\n \"onRelease\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when button is released\"\n },\n \"pressed\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the button is currently pressed\"\n },\n \"disabled\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the button is disabled\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"health-bar\": {\n \"type\": \"health-bar\",\n \"category\": \"component\",\n \"description\": \"HealthBar component\",\n \"suggestedFor\": [\n \"health\",\n \"bar\",\n \"health bar\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"current\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Current health value\",\n \"required\": true\n },\n \"max\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Maximum health value\",\n \"required\": true\n },\n \"format\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Display format\"\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Size variant\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"animated\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Animation on change\"\n }\n }\n },\n \"score-display\": {\n \"type\": \"score-display\",\n \"category\": \"component\",\n \"description\": \"ScoreDisplay component\",\n \"suggestedFor\": [\n \"score\",\n \"display\",\n \"score display\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"value\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Current score value\",\n \"required\": true\n },\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Label to display before score\"\n },\n \"icon\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Icon component or emoji\"\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Size variant\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"animated\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Animation on value change\"\n },\n \"locale\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Number formatting locale\"\n }\n }\n },\n \"sprite\": {\n \"type\": \"sprite\",\n \"category\": \"game\",\n \"description\": \"Sprite Component Renders a single frame from a spritesheet with transform support.\",\n \"suggestedFor\": [\n \"sprite\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"spritesheet\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Spritesheet image URL\",\n \"required\": true\n },\n \"frameWidth\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Width of each frame in pixels\",\n \"required\": true\n },\n \"frameHeight\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Height of each frame in pixels\",\n \"required\": true\n },\n \"frame\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Frame index to display (0-based, left-to-right, top-to-bottom)\",\n \"required\": true\n },\n \"x\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"X position in pixels\",\n \"required\": true\n },\n \"y\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Y position in pixels\",\n \"required\": true\n },\n \"scale\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Scale factor (default: 1)\"\n },\n \"flipX\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Flip horizontally\"\n },\n \"flipY\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Flip vertically\"\n },\n \"rotation\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Rotation in degrees\"\n },\n \"opacity\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Opacity (0-1)\"\n },\n \"zIndex\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Z-index for layering\"\n },\n \"columns\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Number of columns in spritesheet (for frame calculation)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Optional className\"\n },\n \"onClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Optional onClick handler\"\n }\n }\n },\n \"form-actions\": {\n \"type\": \"form-actions\",\n \"category\": \"component\",\n \"description\": \"ButtonGroup Molecule Component A component for grouping buttons together with connected styling. Supports both children-based and form-actions pattern (primary/secondary) usage. Uses Button atoms.\",\n \"suggestedFor\": [\n \"button\",\n \"group\",\n \"button group\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Button group content (Button components) - use this OR primary/secondary\"\n },\n \"primary\": {\n \"types\": [\n \"readonly\"\n ],\n \"description\": \"Primary action button config (for form-actions pattern) Accepts Readonly for compatibility with generated const objects\"\n },\n \"secondary\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Secondary action buttons config (for form-actions pattern) Accepts readonly array for compatibility with generated const arrays\"\n },\n \"variant\": {\n \"types\": [\n \"buttongroupvariant\"\n ],\n \"description\": \"Visual variant @default 'default'\"\n },\n \"orientation\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Orientation @default 'horizontal'\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity type for filter-group pattern (schema metadata)\"\n },\n \"filters\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Filter definitions for filter-group pattern\"\n }\n }\n },\n \"flex\": {\n \"type\": \"flex\",\n \"category\": \"component\",\n \"description\": \"Flex Component A flexbox wrapper with all common flex properties exposed as props. More explicit than Stack for when you need full flex control.\",\n \"suggestedFor\": [\n \"flex\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"direction\": {\n \"types\": [\n \"flexdirection\"\n ],\n \"description\": \"Flex direction\"\n },\n \"wrap\": {\n \"types\": [\n \"flexwrap\"\n ],\n \"description\": \"Flex wrap\"\n },\n \"align\": {\n \"types\": [\n \"flexalign\"\n ],\n \"description\": \"Align items\"\n },\n \"justify\": {\n \"types\": [\n \"flexjustify\"\n ],\n \"description\": \"Justify content\"\n },\n \"gap\": {\n \"types\": [\n \"flexgap\"\n ],\n \"description\": \"Gap between items\"\n },\n \"inline\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Inline flex\"\n },\n \"grow\": {\n \"types\": [\n \"boolean\",\n \"number\"\n ],\n \"description\": \"Flex grow\"\n },\n \"shrink\": {\n \"types\": [\n \"boolean\",\n \"number\"\n ],\n \"description\": \"Flex shrink\"\n },\n \"basis\": {\n \"types\": [\n \"string\",\n \"number\"\n ],\n \"description\": \"Flex basis\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Children elements\",\n \"required\": true\n },\n \"as\": {\n \"types\": [\n \"react.elementtype\"\n ],\n \"description\": \"HTML element to render as\"\n }\n }\n },\n \"floating-action-button\": {\n \"type\": \"floating-action-button\",\n \"category\": \"component\",\n \"description\": \"FloatingActionButton Molecule Component A floating action button that can expand into multiple actions vertically. Uses Button atom.\",\n \"suggestedFor\": [\n \"floating\",\n \"action\",\n \"button\",\n \"floating action button\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"action\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Single action (if only one action, button will directly trigger onClick)\"\n },\n \"actions\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Multiple actions (if provided, button will expand to show all actions)\"\n },\n \"icon\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Icon name (simplified API for pattern compatibility)\"\n },\n \"onClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Click handler (simplified API for pattern compatibility)\"\n },\n \"variant\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Variant (simplified API for pattern compatibility)\"\n },\n \"position\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Button position @default 'bottom-right'\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"form-field\": {\n \"type\": \"form-field\",\n \"category\": \"form\",\n \"description\": \"FormField Molecule Component A form field wrapper with label, hint, and error message support. **Atomic Design**: Composed using Label and Typography atoms.\",\n \"suggestedFor\": [\n \"form\",\n \"field\",\n \"form field\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"label prop\",\n \"required\": true\n },\n \"required\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"required prop\"\n },\n \"error\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"error prop\"\n },\n \"hint\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"hint prop\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"children prop\",\n \"required\": true\n }\n }\n },\n \"form-section-header\": {\n \"type\": \"form-section-header\",\n \"category\": \"form\",\n \"description\": \"FormSectionHeader Header component for collapsible form sections. Provides consistent styling and interaction for section headers.\",\n \"suggestedFor\": [\n \"form\",\n \"section\",\n \"header\",\n \"form section header\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Section title\",\n \"required\": true\n },\n \"subtitle\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Section subtitle\"\n },\n \"isCollapsed\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether section is collapsed\"\n },\n \"onToggle\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Toggle collapse handler (makes header clickable)\"\n },\n \"badge\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Badge text (e.g., \\\"3 fields\\\", \\\"Required\\\", \\\"Complete\\\")\"\n },\n \"badgeVariant\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Badge variant\"\n },\n \"icon\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Icon name to show before title\"\n },\n \"hasErrors\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether section has validation errors\"\n },\n \"isComplete\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether section is complete\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"input-group\": {\n \"type\": \"input-group\",\n \"category\": \"form\",\n \"description\": \"InputGroup Molecule Component A component for grouping input with addons (icons, buttons, text). Uses Input, Button, Icon, and Typography atoms.\",\n \"suggestedFor\": [\n \"input\",\n \"group\",\n \"input group\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"leftAddon\": {\n \"types\": [\n \"node\",\n \"icon\"\n ],\n \"description\": \"Left addon (icon, button, or text)\"\n },\n \"rightAddon\": {\n \"types\": [\n \"node\",\n \"icon\"\n ],\n \"description\": \"Right addon (icon, button, or text)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"relation-select\": {\n \"type\": \"relation-select\",\n \"category\": \"form\",\n \"description\": \"RelationSelect Molecule Component A searchable select component for relation fields. Allows users to search and select from related entities. Composed from: Box, HStack, VStack, Input, Button, Spinner, Typography atoms\",\n \"suggestedFor\": [\n \"relation\",\n \"select\",\n \"relation select\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"value\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Current value (ID)\"\n },\n \"onChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when value changes\"\n },\n \"options\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Available options - accepts readonly for compatibility with generated const arrays\",\n \"required\": true\n },\n \"placeholder\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Placeholder text\"\n },\n \"required\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the field is required\"\n },\n \"disabled\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the field is disabled\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether data is loading\"\n },\n \"error\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Error message\"\n },\n \"clearable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Allow clearing the selection\"\n },\n \"name\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Name attribute for forms\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"searchPlaceholder\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Search placeholder\"\n },\n \"emptyMessage\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Empty state message\"\n }\n }\n },\n \"side-panel\": {\n \"type\": \"side-panel\",\n \"category\": \"component\",\n \"description\": \"SidePanel Molecule Component A side panel that slides in from the right (or left) with header and content. Uses Button, Typography atoms.\",\n \"suggestedFor\": [\n \"side\",\n \"panel\",\n \"side panel\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Panel title\",\n \"required\": true\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Panel content\",\n \"required\": true\n },\n \"isOpen\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Is panel open\",\n \"required\": true\n },\n \"onClose\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"On close handler\",\n \"required\": true\n },\n \"width\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Panel width @default 'w-96'\"\n },\n \"position\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Panel position @default 'right'\"\n },\n \"showOverlay\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show overlay on mobile @default true\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"violation-alert\": {\n \"type\": \"violation-alert\",\n \"category\": \"state\",\n \"description\": \"ViolationAlert Displays inspection violations with law references and action types. Used in inspection forms to show detected compliance violations. Action Types: - measure: Corrective measure required (warning) - admin: Administrative action (error) - penalty: Penalty proceedings (error, severe)\",\n \"suggestedFor\": [\n \"violation\",\n \"alert\",\n \"violation alert\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"violation\": {\n \"types\": [\n \"violationrecord\"\n ],\n \"description\": \"Violation data\",\n \"required\": true\n },\n \"severity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Visual severity (derived from actionType if not specified)\"\n },\n \"dismissible\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Dismissible alert\"\n },\n \"onDismiss\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Dismiss handler\"\n },\n \"onNavigateToField\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Navigate to the field that caused violation\"\n },\n \"compact\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Compact display mode\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"action-buttons\": {\n \"type\": \"action-buttons\",\n \"category\": \"component\",\n \"description\": \"ActionButtons component\",\n \"suggestedFor\": [\n \"action\",\n \"buttons\",\n \"action buttons\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"buttons\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Button configurations\",\n \"required\": true\n },\n \"onAction\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when a button is pressed/released\",\n \"required\": true\n },\n \"layout\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Layout variant\"\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Size variant\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"disabled\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Disabled state\"\n }\n }\n },\n \"d-pad\": {\n \"type\": \"d-pad\",\n \"category\": \"component\",\n \"description\": \"DPad component\",\n \"suggestedFor\": [\n \"pad\",\n \"d pad\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"onDirection\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when a direction is pressed/released\",\n \"required\": true\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Size variant\"\n },\n \"includeDiagonals\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether to include diagonal buttons\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"disabled\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Disabled state\"\n }\n }\n },\n \"stat-badge\": {\n \"type\": \"stat-badge\",\n \"category\": \"display\",\n \"description\": \"StatBadge component\",\n \"suggestedFor\": [\n \"stat\",\n \"badge\",\n \"stat badge\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Stat label\",\n \"required\": true\n },\n \"value\": {\n \"types\": [\n \"number\",\n \"string\"\n ],\n \"description\": \"Current value (defaults to 0 if not provided)\"\n },\n \"max\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Maximum value (for bar/hearts format)\"\n },\n \"source\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Data source entity name (for schema config)\"\n },\n \"field\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Field name in the source (for schema config)\"\n },\n \"format\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Display format\"\n },\n \"icon\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Icon component or emoji\"\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Size variant\"\n },\n \"variant\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Visual variant\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"button-pattern\": {\n \"type\": \"button-pattern\",\n \"category\": \"display\",\n \"description\": \"Component Pattern Wrappers Pattern wrappers for atomic UI components that can be rendered via render_ui. These bridge the shell's atomic components with the pattern system. Interactive components emit events via useEventBus for the closed circuit pattern.\",\n \"suggestedFor\": [\n \"button\",\n \"pattern\",\n \"button pattern\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"label prop\",\n \"required\": true\n },\n \"variant\": {\n \"types\": [\n \"buttonvariant\"\n ],\n \"description\": \"variant prop\"\n },\n \"size\": {\n \"types\": [\n \"buttonsize\"\n ],\n \"description\": \"size prop\"\n },\n \"disabled\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"disabled prop\"\n },\n \"onClick\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"onClick prop\"\n },\n \"icon\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"icon prop\"\n },\n \"iconPosition\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"iconPosition prop\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n }\n }\n },\n \"custom-pattern\": {\n \"type\": \"custom-pattern\",\n \"category\": \"display\",\n \"description\": \"CustomPattern Component Renders freeform HTML elements with Tailwind classes for custom UI designs. Supports nested children and the closed circuit pattern (action prop for events).\",\n \"suggestedFor\": [\n \"custom\",\n \"pattern\",\n \"custom pattern\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"component\": {\n \"types\": [\n \"allowedcustomcomponent\"\n ],\n \"description\": \"HTML element to render\",\n \"required\": true\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Tailwind classes\"\n },\n \"token\": {\n \"types\": [\n \"string\",\n \"array\"\n ],\n \"description\": \"Token path(s) for design token resolution\"\n },\n \"content\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Text content (for leaf elements)\"\n },\n \"action\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Event to emit on click (REQUIRED for interactive elements)\"\n },\n \"payload\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Event payload\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Nested children patterns\"\n },\n \"src\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Image source (for img elements)\"\n },\n \"alt\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Image alt text (for img elements)\"\n },\n \"href\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Link href (for a elements)\"\n },\n \"external\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Open link in new tab\"\n },\n \"disabled\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Disabled state\"\n },\n \"htmlProps\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Additional HTML attributes\"\n }\n }\n },\n \"drawer-slot\": {\n \"type\": \"drawer-slot\",\n \"category\": \"layout\",\n \"description\": \"DrawerSlot Component Wraps drawer slot content in a proper Drawer component. Used by trait-driven pages to display drawer UI from render_ui effects. Handles: - Auto-open when content is present - Dispatches CLOSE/CANCEL events when closed - Extracts title from Form or DetailPanel components - Configurable position and size\",\n \"suggestedFor\": [\n \"drawer\",\n \"slot\",\n \"drawer slot\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Content to display in the drawer\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Override drawer title (extracted from children if not provided)\"\n },\n \"position\": {\n \"types\": [\n \"drawerposition\"\n ],\n \"description\": \"Drawer position\"\n },\n \"size\": {\n \"types\": [\n \"drawersize\"\n ],\n \"description\": \"Drawer size\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n }\n }\n },\n \"header\": {\n \"type\": \"header\",\n \"category\": \"header\",\n \"description\": \"Header Organism Component A header component for mobile/responsive layouts with menu toggle, brand, and user avatar. Styled to match the main Layout component's mobile header.\",\n \"suggestedFor\": [\n \"header\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"logo\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Logo/Brand content\"\n },\n \"logoSrc\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Logo image source\"\n },\n \"brandName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Brand/App name\"\n },\n \"navigationItems\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Navigation items (for desktop header variant)\"\n },\n \"showMenuToggle\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show menu toggle button @default true\"\n },\n \"isMenuOpen\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Is menu open (for toggle icon)\"\n },\n \"onMenuToggle\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Menu toggle callback\"\n },\n \"showSearch\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show search input @default false\"\n },\n \"searchPlaceholder\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Search placeholder\"\n },\n \"onSearch\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Search callback\"\n },\n \"userAvatar\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"User avatar configuration\"\n },\n \"userName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"User name (display name or email)\"\n },\n \"onUserClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when user avatar is clicked\"\n },\n \"actions\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Action buttons (right side)\"\n },\n \"sticky\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Sticky header @default true\"\n },\n \"variant\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Variant - mobile shows menu toggle, desktop shows full nav @default 'mobile'\"\n },\n \"onLogoClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when logo/brand is clicked\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"layout-pattern\": {\n \"type\": \"layout-pattern\",\n \"category\": \"layout\",\n \"description\": \"Base props for all layout patterns with children support.\",\n \"suggestedFor\": [\n \"layout\",\n \"pattern\",\n \"layout pattern\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Nested pattern configurations - rendered recursively\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"style\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Inline styles\"\n }\n }\n },\n \"modal-slot\": {\n \"type\": \"modal-slot\",\n \"category\": \"layout\",\n \"description\": \"ModalSlot Component Wraps modal slot content in a proper Modal component. Used by trait-driven pages to display modal UI from render_ui effects. Handles: - Auto-open when content is present - Dispatches CLOSE/CANCEL events when closed - Extracts title from Form components\",\n \"suggestedFor\": [\n \"modal\",\n \"slot\",\n \"modal slot\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Content to display in the modal\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Override modal title (extracted from children if not provided)\"\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Modal size\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n }\n }\n },\n \"navigation\": {\n \"type\": \"navigation\",\n \"category\": \"navigation\",\n \"description\": \"Navigation Organism Component A navigation component with items, active indicators, icons, and badges. Uses Menu, ButtonGroup molecules and Button, Icon, Badge, Typography, Divider atoms.\",\n \"suggestedFor\": [\n \"navigation\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"items\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Navigation items\",\n \"required\": true\n },\n \"orientation\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Navigation orientation @default 'horizontal'\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"orbital-visualization\": {\n \"type\": \"orbital-visualization\",\n \"category\": \"display\",\n \"description\": \"OrbitalVisualization Component Visualizes KFlow schemas as atomic orbitals based on complexity. Uses CSS 3D transforms for lightweight rendering without Three.js. Orbital Types (based on complexity score): - 1s (1-3): Simple sphere - Red - 2s (4-8): Larger sphere - Orange - 2p (9-15): Dumbbell shape - Yellow - 3s (16-25): Sphere with node - Green - 3p (26-40): Complex dumbbell - Blue - 3d (41-60): Cloverleaf - Indigo - 4f (61+): Multi-lobe - Violet\",\n \"suggestedFor\": [\n \"orbital\",\n \"visualization\",\n \"orbital visualization\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"schema\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Full KFlow schema object\"\n },\n \"complexity\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Direct complexity override (1-100+)\"\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Size of the visualization\"\n },\n \"showLabel\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show complexity label\"\n },\n \"animated\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Animation enabled\"\n },\n \"onClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Click handler\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"section\": {\n \"type\": \"section\",\n \"category\": \"display\",\n \"description\": \"Section Component A semantic section wrapper with optional title, description, and action. Perfect for grouping related content with consistent spacing.\",\n \"suggestedFor\": [\n \"section\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Section title\"\n },\n \"description\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Section subtitle/description\"\n },\n \"action\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Action element (e.g., button, link)\"\n },\n \"padding\": {\n \"types\": [\n \"sectionpadding\"\n ],\n \"description\": \"Padding amount\"\n },\n \"variant\": {\n \"types\": [\n \"sectionvariant\"\n ],\n \"description\": \"Visual variant\"\n },\n \"divider\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show divider below header\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Children elements\",\n \"required\": true\n },\n \"headerClassName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Header custom class name\"\n },\n \"contentClassName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Content custom class name\"\n },\n \"as\": {\n \"types\": [\n \"react.elementtype\"\n ],\n \"description\": \"HTML element to render as\"\n }\n }\n },\n \"sidebar\": {\n \"type\": \"sidebar\",\n \"category\": \"navigation\",\n \"description\": \"Sidebar Organism Component A sidebar component with logo, navigation items, user section, and collapse/expand. Styled to match the main Layout component with theme-aware CSS variables.\",\n \"suggestedFor\": [\n \"sidebar\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"logo\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Logo/Brand content - can be a ReactNode or logo config\"\n },\n \"logoSrc\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Logo image source\"\n },\n \"brandName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Brand/App name\"\n },\n \"items\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Navigation items\",\n \"required\": true\n },\n \"userSection\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"User section content\"\n },\n \"footerContent\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Footer content (e.g., theme toggle)\"\n },\n \"collapsed\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Collapsed state (controlled)\"\n },\n \"defaultCollapsed\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Default collapsed state\"\n },\n \"onCollapseChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when collapse state changes\"\n },\n \"hideCollapseButton\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Hide the collapse/expand button\"\n },\n \"showCloseButton\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show a close button (for mobile)\"\n },\n \"onClose\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when close button is clicked\"\n },\n \"onLogoClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when logo/brand is clicked\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"split\": {\n \"type\": \"split\",\n \"category\": \"layout\",\n \"description\": \"Split Component A two-column layout with configurable ratios. Perfect for sidebar/content layouts or side-by-side comparisons.\",\n \"suggestedFor\": [\n \"split\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"ratio\": {\n \"types\": [\n \"splitratio\"\n ],\n \"description\": \"Size ratio between left and right panels\"\n },\n \"gap\": {\n \"types\": [\n \"splitgap\"\n ],\n \"description\": \"Gap between panels\"\n },\n \"reverse\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Reverse the order (right first)\"\n },\n \"stackOnMobile\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Stack vertically on mobile\"\n },\n \"stackBreakpoint\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Breakpoint to switch from stacked to side-by-side\"\n },\n \"align\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Align items vertically\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n },\n \"leftClassName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Left/first panel class name\"\n },\n \"rightClassName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Right/second panel class name\"\n },\n \"children\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Exactly two children: [left, right]\",\n \"required\": true\n }\n }\n },\n \"table\": {\n \"type\": \"table\",\n \"category\": \"display\",\n \"description\": \"Table Organism Component A table component with header row, data rows, pagination, sorting, and filters. Uses Pagination, SearchInput, ButtonGroup, Card, Menu molecules and Button, Icon, Checkbox, Typography, Badge, Divider atoms.\",\n \"suggestedFor\": [\n \"table\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"columns\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Table columns\",\n \"required\": true\n },\n \"entity\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Table entity data\",\n \"required\": true\n },\n \"getRowKey\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Row key getter\",\n \"required\": true\n },\n \"selectable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Enable row selection @default false\"\n },\n \"selectedRows\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Selected row keys\"\n },\n \"onSelectionChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when selection changes\"\n },\n \"sortable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Enable sorting @default false\"\n },\n \"sortColumn\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Current sort column\"\n },\n \"sortDirection\": {\n \"types\": [\n \"sortdirection\"\n ],\n \"description\": \"Current sort direction\"\n },\n \"onSortChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when sort changes\"\n },\n \"searchable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Enable search/filter @default false\"\n },\n \"searchPlaceholder\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Search placeholder\"\n },\n \"paginated\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Enable pagination @default false\"\n },\n \"currentPage\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Current page\"\n },\n \"totalPages\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Total pages\"\n },\n \"onPageChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when page changes\"\n },\n \"rowActions\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Row actions menu items\"\n },\n \"emptyMessage\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Empty state message\"\n },\n \"loading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state @default false\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"toast-slot\": {\n \"type\": \"toast-slot\",\n \"category\": \"layout\",\n \"description\": \"ToastSlot Component Wraps toast slot content in a proper Toast component with positioning. Used by trait-driven pages to display toast UI from render_ui effects. Handles: - Auto-show when content is present - Dispatches DISMISS event when dismissed - Fixed positioning in corner of screen\",\n \"suggestedFor\": [\n \"toast\",\n \"slot\",\n \"toast slot\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Content to display in the toast (message or ReactNode)\"\n },\n \"variant\": {\n \"types\": [\n \"toastvariant\"\n ],\n \"description\": \"Toast variant\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Toast title\"\n },\n \"duration\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Auto-dismiss duration in ms (0 = no auto-dismiss)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n }\n }\n },\n \"u-i-slot-renderer\": {\n \"type\": \"u-i-slot-renderer\",\n \"category\": \"layout\",\n \"description\": \"UISlotRenderer Component Renders all UI slots. This is the central component that displays content rendered by traits via render_ui effects. Slots are rendered as: - Layout slots: Inline in the page flow (main, sidebar) - Portal slots: Rendered via portals (modal, drawer, toast, etc.) - HUD slots: Fixed position overlays (hud-top, hud-bottom)\",\n \"suggestedFor\": [\n \"slot\",\n \"renderer\",\n \"u i slot renderer\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"includeHud\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Include HUD slots\"\n },\n \"includeFloating\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Include floating slot\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional class name for the container\"\n }\n }\n },\n \"split-pane\": {\n \"type\": \"split-pane\",\n \"category\": \"layout\",\n \"description\": \"SplitPane Component Two-pane resizable split layout for master-detail views, dual-pane editors, and code + preview layouts. Uses wireframe theme styling (high contrast, sharp edges).\",\n \"suggestedFor\": [\n \"split\",\n \"pane\",\n \"split pane\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"direction\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Direction of the split\"\n },\n \"ratio\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Initial ratio (0-100, percentage of first pane)\"\n },\n \"minSize\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Minimum size of either pane in pixels\"\n },\n \"resizable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Allow user resizing\"\n },\n \"left\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Content for the left/top pane\",\n \"required\": true\n },\n \"right\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Content for the right/bottom pane\",\n \"required\": true\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"leftClassName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Class for left/top pane\"\n },\n \"rightClassName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Class for right/bottom pane\"\n }\n }\n },\n \"tabbed-container\": {\n \"type\": \"tabbed-container\",\n \"category\": \"navigation\",\n \"description\": \"TabbedContainer Component Tabbed content areas with shared header/context. Wraps the Tabs molecule with layout-specific styling. Uses wireframe theme styling (high contrast, sharp edges).\",\n \"suggestedFor\": [\n \"tabbed\",\n \"container\",\n \"tabbed container\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"tabs\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Tab definitions\",\n \"required\": true\n },\n \"defaultTab\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Default active tab ID\"\n },\n \"activeTab\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Controlled active tab\"\n },\n \"onTabChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when tab changes\"\n },\n \"position\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Tab position\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"auth-layout\": {\n \"type\": \"auth-layout\",\n \"category\": \"template\",\n \"description\": \"AuthLayout component\",\n \"suggestedFor\": [\n \"auth\",\n \"layout\",\n \"auth layout\"\n ],\n \"typicalSize\": \"full\",\n \"propsSchema\": {\n \"appName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"App name\"\n },\n \"logo\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Logo component or URL\"\n },\n \"backgroundImage\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Background image URL\"\n },\n \"showBranding\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show branding panel on the side\"\n },\n \"brandingContent\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Branding panel content\"\n }\n }\n },\n \"counter-template\": {\n \"type\": \"counter-template\",\n \"category\": \"template\",\n \"description\": \"CounterTemplate A presentational template for counter/incrementer features. Supports increment, decrement, and reset operations.\",\n \"suggestedFor\": [\n \"counter\",\n \"template\",\n \"counter template\"\n ],\n \"typicalSize\": \"full\",\n \"propsSchema\": {\n \"count\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Current count value\",\n \"required\": true\n },\n \"min\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Minimum allowed value\"\n },\n \"max\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Maximum allowed value\"\n },\n \"step\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Step size for increment/decrement\"\n },\n \"onIncrement\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when increment is clicked\"\n },\n \"onDecrement\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when decrement is clicked\"\n },\n \"onReset\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when reset is clicked\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Title displayed above the counter\"\n },\n \"showReset\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show reset button\"\n },\n \"size\": {\n \"types\": [\n \"countersize\"\n ],\n \"description\": \"Counter display size\"\n },\n \"variant\": {\n \"types\": [\n \"countervariant\"\n ],\n \"description\": \"Template variant\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional class name\"\n }\n }\n },\n \"crud-template\": {\n \"type\": \"crud-template\",\n \"category\": \"template\",\n \"description\": \"CrudTemplate A presentational template for CRUD (Create, Read, Update, Delete) features. Includes data table, search, and modal forms for create/edit.\",\n \"suggestedFor\": [\n \"crud\",\n \"template\",\n \"crud template\"\n ],\n \"typicalSize\": \"full\",\n \"propsSchema\": {\n \"items\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Array of items to display\",\n \"required\": true\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether data is loading\"\n },\n \"error\": {\n \"types\": [\n \"error\",\n \"string\"\n ],\n \"description\": \"Error object if loading failed\"\n },\n \"selectedItem\": {\n \"types\": [\n \"cruditem\"\n ],\n \"description\": \"Currently selected item for editing\"\n },\n \"isModalOpen\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the create/edit modal is open\"\n },\n \"searchQuery\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Current search query\"\n },\n \"sortBy\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Current sort field\"\n },\n \"sortOrder\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Current sort order\"\n },\n \"onLoad\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called to load/refresh items\"\n },\n \"onCreate\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when creating a new item\"\n },\n \"onUpdate\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when updating an item\"\n },\n \"onDelete\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when deleting an item\"\n },\n \"onSelect\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when selecting an item for editing\"\n },\n \"onView\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when viewing an item\"\n },\n \"onSearch\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when search query changes\"\n },\n \"onSort\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when sort changes\"\n },\n \"onOpenModal\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called to open create/edit modal\"\n },\n \"onCloseModal\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called to close modal\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Page title\"\n },\n \"entityName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Singular entity name for labels\"\n },\n \"columns\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Table column definitions\"\n },\n \"fields\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Form field definitions for create/edit\"\n },\n \"showSearch\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether to show search input\"\n },\n \"searchPlaceholder\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Search input placeholder\"\n },\n \"showViewAction\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether to show view action\"\n },\n \"variant\": {\n \"types\": [\n \"crudvariant\"\n ],\n \"description\": \"Template variant\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional class name\"\n }\n }\n },\n \"dashboard-layout\": {\n \"type\": \"dashboard-layout\",\n \"category\": \"template\",\n \"description\": \"DashboardLayout component\",\n \"suggestedFor\": [\n \"dashboard\",\n \"layout\",\n \"dashboard layout\"\n ],\n \"typicalSize\": \"full\",\n \"propsSchema\": {\n \"appName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"App name shown in sidebar\"\n },\n \"logo\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Logo component or URL\"\n },\n \"navItems\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Navigation items\"\n },\n \"user\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Current user info (optional - auto-populated from auth context if not provided)\"\n },\n \"headerActions\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Header actions (notifications, etc.)\"\n },\n \"showSearch\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show search in header\"\n },\n \"sidebarFooter\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Custom sidebar footer\"\n },\n \"onSignOut\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when user clicks sign out (optional - uses auth context signOut if not provided)\"\n }\n }\n },\n \"form-template\": {\n \"type\": \"form-template\",\n \"category\": \"template\",\n \"description\": \"FormTemplate A presentational template for form-based features like contact forms, feedback, surveys. Supports submission, validation, and success/error states.\",\n \"suggestedFor\": [\n \"form\",\n \"template\",\n \"form template\"\n ],\n \"typicalSize\": \"full\",\n \"propsSchema\": {\n \"formData\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Current form field values\",\n \"required\": true\n },\n \"isSubmitting\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether form is being submitted\"\n },\n \"isSuccess\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether submission was successful\"\n },\n \"error\": {\n \"types\": [\n \"error\",\n \"string\"\n ],\n \"description\": \"Error object if submission failed\"\n },\n \"validationErrors\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Field-level validation errors\"\n },\n \"onSubmit\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when form is submitted\"\n },\n \"onFieldChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when a field value changes\"\n },\n \"onReset\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called to reset the form\"\n },\n \"onDismissSuccess\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called to dismiss success message\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Form title\"\n },\n \"subtitle\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Form subtitle/description\"\n },\n \"submitLabel\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Submit button label\"\n },\n \"successMessage\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Success message\"\n },\n \"showReset\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether to show reset button\"\n },\n \"fields\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Form field definitions\"\n },\n \"variant\": {\n \"types\": [\n \"formvariant\"\n ],\n \"description\": \"Template variant\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional class name\"\n }\n }\n },\n \"game-template\": {\n \"type\": \"game-template\",\n \"category\": \"template\",\n \"description\": \"GameTemplate A presentational template for game applications. Includes a main game canvas/area, HUD overlay, and an optional debug sidebar. **Atomic Design**: Composed using Box, Typography, and Layout molecules/atoms.\",\n \"suggestedFor\": [\n \"game\",\n \"template\",\n \"game template\"\n ],\n \"typicalSize\": \"full\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Title of the game\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"The main game canvas or content\",\n \"required\": true\n },\n \"hud\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"HUD overlay content (scores, health, etc.)\"\n },\n \"debugPanel\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Debug panel content\"\n },\n \"showDebugPanel\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the debug panel is visible\"\n },\n \"controls\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Game controls\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional class name\"\n }\n }\n },\n \"generic-app-template\": {\n \"type\": \"generic-app-template\",\n \"category\": \"template\",\n \"description\": \"GenericAppTemplate A simple, generic template for any application. Includes a header with title and actions, and a main content area. **Atomic Design**: Composed using Box, Typography, and Button atoms.\",\n \"suggestedFor\": [\n \"generic\",\n \"app\",\n \"template\",\n \"generic app template\"\n ],\n \"typicalSize\": \"full\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Page title\",\n \"required\": true\n },\n \"subtitle\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Subtitle or description\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Main content\",\n \"required\": true\n },\n \"headerActions\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Header actions (buttons, links)\"\n },\n \"footer\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Footer content\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional class name\"\n }\n }\n },\n \"list-template\": {\n \"type\": \"list-template\",\n \"category\": \"template\",\n \"description\": \"ListTemplate A presentational template for list-based features like todos, shopping lists, notes. Supports add, toggle, delete, and filter operations.\",\n \"suggestedFor\": [\n \"list\",\n \"template\",\n \"list template\"\n ],\n \"typicalSize\": \"full\",\n \"propsSchema\": {\n \"items\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Array of list items\",\n \"required\": true\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether data is loading\"\n },\n \"error\": {\n \"types\": [\n \"error\",\n \"string\"\n ],\n \"description\": \"Error object if loading failed\"\n },\n \"filter\": {\n \"types\": [\n \"filtervalue\"\n ],\n \"description\": \"Current filter value\"\n },\n \"onAdd\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when a new item is added\"\n },\n \"onToggle\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when an item is toggled\"\n },\n \"onDelete\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when an item is deleted\"\n },\n \"onFilterChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when filter changes\"\n },\n \"onRetry\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called to retry loading\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Title displayed above the list\"\n },\n \"placeholder\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Placeholder for the input field\"\n },\n \"showFilters\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether to show filter buttons\"\n },\n \"showCount\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether to show item count\"\n },\n \"emptyMessage\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Message shown when list is empty\"\n },\n \"variant\": {\n \"types\": [\n \"listvariant\"\n ],\n \"description\": \"Template variant\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional class name\"\n }\n }\n },\n \"settings-template\": {\n \"type\": \"settings-template\",\n \"category\": \"template\",\n \"description\": \"SettingsTemplate A presentational template for settings/preferences features. Supports sections with various input types and save/reset operations.\",\n \"suggestedFor\": [\n \"settings\",\n \"template\",\n \"settings template\"\n ],\n \"typicalSize\": \"full\",\n \"propsSchema\": {\n \"settings\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Current settings values\",\n \"required\": true\n },\n \"isSaving\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether settings are being saved\"\n },\n \"hasChanges\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether there are unsaved changes\"\n },\n \"error\": {\n \"types\": [\n \"error\",\n \"string\"\n ],\n \"description\": \"Error object if save failed\"\n },\n \"successMessage\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Success message after save\"\n },\n \"onSave\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when saving settings\"\n },\n \"onChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when a setting value changes\"\n },\n \"onReset\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called to reset to default settings\"\n },\n \"onRevert\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called to revert unsaved changes\"\n },\n \"onDismissSuccess\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called to dismiss success message\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Page title\"\n },\n \"sections\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Settings sections\"\n },\n \"showResetToDefaults\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether to show reset to defaults button\"\n },\n \"variant\": {\n \"types\": [\n \"settingsvariant\"\n ],\n \"description\": \"Template variant\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional class name\"\n }\n }\n },\n \"game-shell\": {\n \"type\": \"game-shell\",\n \"category\": \"template\",\n \"description\": \"GameShell A full-screen layout wrapper for game applications. Replaces DashboardLayout for game clients — no sidebar nav, just full-viewport rendering with an optional HUD overlay bar. Used as a React Router layout route element: <Route element={<GameShell appName=\\\"TraitWars\\\" />}> <Route index element={<WorldMapPage />} /> ... </Route>\",\n \"suggestedFor\": [\n \"game\",\n \"shell\",\n \"game shell\"\n ],\n \"typicalSize\": \"full\",\n \"propsSchema\": {\n \"appName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Application / game title shown in the HUD bar\"\n },\n \"hud\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Optional HUD content rendered above the main area\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Extra class name on the root container\"\n },\n \"showTopBar\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether to show the minimal top bar (default: true)\"\n }\n }\n },\n \"chart\": {\n \"type\": \"chart\",\n \"category\": \"visualization\",\n \"description\": \"Data visualization chart supporting bar, line, pie, area, and donut types\",\n \"suggestedFor\": [\n \"dashboards\",\n \"analytics\",\n \"data visualization\",\n \"reporting\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Chart title\"\n },\n \"subtitle\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Chart subtitle / description\"\n },\n \"chartType\": {\n \"types\": [\n \"charttype\"\n ],\n \"description\": \"Chart type\"\n },\n \"series\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Data series\"\n },\n \"data\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Simple data (single series shorthand)\"\n },\n \"height\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Chart height in px\"\n },\n \"showLegend\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show legend\"\n },\n \"showValues\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show values on chart\"\n },\n \"actions\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Actions for chart interactions\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity name for schema-driven auto-fetch\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"meter\": {\n \"type\": \"meter\",\n \"category\": \"visualization\",\n \"description\": \"Gauge/meter component for displaying a value within a range with thresholds\",\n \"suggestedFor\": [\n \"dashboards\",\n \"progress tracking\",\n \"credit/quota displays\",\n \"KPI indicators\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"value\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Current value\",\n \"required\": true\n },\n \"min\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Minimum value\"\n },\n \"max\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Maximum value\"\n },\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Display label\"\n },\n \"unit\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Unit suffix (e.g., '%', 'MB', 'credits')\"\n },\n \"variant\": {\n \"types\": [\n \"metervariant\"\n ],\n \"description\": \"Display variant\"\n },\n \"thresholds\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Color thresholds\"\n },\n \"segments\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Number of segments (for segmented variant)\"\n },\n \"showValue\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show value text\"\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Size (for radial variant)\"\n },\n \"actions\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Actions\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity name for schema-driven auto-fetch\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"timeline\": {\n \"type\": \"timeline\",\n \"category\": \"display\",\n \"description\": \"Vertical timeline for displaying chronological events with status indicators\",\n \"suggestedFor\": [\n \"activity logs\",\n \"process tracking\",\n \"history views\",\n \"workflow steps\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Timeline title\"\n },\n \"items\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Timeline items\"\n },\n \"data\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Schema-driven data\"\n },\n \"fields\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Fields to display\"\n },\n \"itemActions\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Actions per item\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity name for schema-driven auto-fetch\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"media-gallery\": {\n \"type\": \"media-gallery\",\n \"category\": \"media\",\n \"description\": \"Grid gallery for images and media with lightbox, selection, and upload\",\n \"suggestedFor\": [\n \"photo galleries\",\n \"image management\",\n \"media libraries\",\n \"portfolio displays\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Gallery title\"\n },\n \"items\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Media items\"\n },\n \"data\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Schema-driven data\"\n },\n \"columns\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Column count\"\n },\n \"selectable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Enable item selection\"\n },\n \"selectedItems\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Selected item IDs\"\n },\n \"onSelectionChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Selection change callback\"\n },\n \"showUpload\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show upload button\"\n },\n \"actions\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Actions\"\n },\n \"aspectRatio\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Aspect ratio for thumbnails\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity name for schema-driven auto-fetch\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"signature-pad\": {\n \"type\": \"signature-pad\",\n \"category\": \"form\",\n \"description\": \"Canvas-based signature capture pad with draw, clear, and confirm actions\",\n \"suggestedFor\": [\n \"form signing\",\n \"approval workflows\",\n \"document signing\",\n \"consent forms\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Label above the pad\"\n },\n \"helperText\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Helper text\"\n },\n \"strokeColor\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Stroke color\"\n },\n \"strokeWidth\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Stroke width\"\n },\n \"height\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Pad height\"\n },\n \"readOnly\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the pad is read-only\"\n },\n \"value\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Existing signature image URL\"\n },\n \"onChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when signature changes\"\n },\n \"signEvent\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Event to emit on sign\"\n },\n \"clearEvent\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Event to emit on clear\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity name for schema-driven context\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"document-viewer\": {\n \"type\": \"document-viewer\",\n \"category\": \"display\",\n \"description\": \"Document viewer for PDFs, text, HTML, and markdown with zoom and pagination\",\n \"suggestedFor\": [\n \"document management\",\n \"PDF viewing\",\n \"content preview\",\n \"report viewing\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Document title\"\n },\n \"src\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Document URL (for PDF/external documents)\"\n },\n \"content\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Document content (for text/html/markdown)\"\n },\n \"documentType\": {\n \"types\": [\n \"documenttype\"\n ],\n \"description\": \"Document type\"\n },\n \"currentPage\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Current page (for multi-page documents)\"\n },\n \"totalPages\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Total pages\"\n },\n \"height\": {\n \"types\": [\n \"number\",\n \"string\"\n ],\n \"description\": \"Viewer height\"\n },\n \"showToolbar\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show toolbar\"\n },\n \"showDownload\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show download button\"\n },\n \"showPrint\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show print button\"\n },\n \"actions\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Actions\"\n },\n \"documents\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Multiple documents (tabbed view)\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity name for schema-driven auto-fetch\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"graph-canvas\": {\n \"type\": \"graph-canvas\",\n \"category\": \"visualization\",\n \"description\": \"Force-directed graph visualization for node-link data with interactive zoom, pan, and layout\",\n \"suggestedFor\": [\n \"knowledge graphs\",\n \"network visualization\",\n \"relationship mapping\",\n \"dependency graphs\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Graph title\"\n },\n \"nodes\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Graph nodes\"\n },\n \"edges\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Graph edges\"\n },\n \"height\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Canvas height\"\n },\n \"showLabels\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show node labels\"\n },\n \"interactive\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Enable zoom/pan\"\n },\n \"draggable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Enable node dragging\"\n },\n \"actions\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Actions\"\n },\n \"onNodeClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"On node click\"\n },\n \"nodeClickEvent\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Node click event\"\n },\n \"layout\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Layout algorithm\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity name for schema-driven auto-fetch\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"code-viewer\": {\n \"type\": \"code-viewer\",\n \"category\": \"display\",\n \"description\": \"Code and diff viewer with line numbers, copy, word-wrap, and multi-file tabs\",\n \"suggestedFor\": [\n \"code display\",\n \"diff viewing\",\n \"schema inspection\",\n \"log viewing\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Viewer title\"\n },\n \"code\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Code content\"\n },\n \"language\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Language for display label\"\n },\n \"diff\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Diff lines (for diff mode)\"\n },\n \"oldValue\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Old value (for generating diff)\"\n },\n \"newValue\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"New value (for generating diff)\"\n },\n \"mode\": {\n \"types\": [\n \"codeviewermode\"\n ],\n \"description\": \"Display mode\"\n },\n \"showLineNumbers\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show line numbers\"\n },\n \"showCopy\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show copy button\"\n },\n \"wordWrap\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Enable word wrap\"\n },\n \"maxHeight\": {\n \"types\": [\n \"number\",\n \"string\"\n ],\n \"description\": \"Max height before scrolling\"\n },\n \"files\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Multiple files (tabbed view)\"\n },\n \"actions\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Actions\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity name for schema-driven auto-fetch\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"canvas-effect\": {\n \"type\": \"canvas-effect\",\n \"category\": \"game\",\n \"description\": \"CanvasEffect Component Renders animated visual effects as DOM overlays on the canvas. Maps combat action types to particle/flash effects that play at a specified position and auto-dismiss. Pattern: canvas-effect\",\n \"suggestedFor\": [\n \"canvas\",\n \"effect\",\n \"canvas effect\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"actionType\": {\n \"types\": [\n \"combatactiontype\"\n ],\n \"description\": \"The type of combat action to visualise\",\n \"required\": true\n },\n \"x\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Screen-space X position (center of the effect)\",\n \"required\": true\n },\n \"y\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Screen-space Y position (center of the effect)\",\n \"required\": true\n },\n \"duration\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Duration in ms before auto-dismiss (default 800)\"\n },\n \"intensity\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Optional intensity multiplier (1 = normal, 2 = double size/brightness)\"\n },\n \"onComplete\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when the effect animation completes\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state indicator\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"effectSpriteUrl\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"--- Remote asset loading ---\"\n },\n \"assetBaseUrl\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Base URL for remote assets. Prepended to relative effectSpriteUrl paths.\"\n }\n }\n },\n \"isometric-canvas\": {\n \"type\": \"isometric-canvas\",\n \"category\": \"game\",\n \"description\": \"IsometricCanvas Core isometric game renderer. Maps to the `game-canvas` pattern. Adapted from projects/trait-wars/design-system/organisms/IsometricGameCanvas.tsx with full closed-circuit pattern compliance (className, isLoading, error, entity). Architecture: - 2:1 diamond isometric projection - Painter's algorithm (tile → feature → unit depth sort) - Camera pan/zoom with lerp - Off-screen culling - Minimap on separate canvas - Sprite sheet animation via resolveUnitFrame - Event bus–friendly handlers (onTileClick, onUnitClick, etc.)\",\n \"suggestedFor\": [\n \"isometric\",\n \"canvas\",\n \"isometric canvas\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"--- Closed-circuit props (MANDATORY) ---\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state indicator\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity name for schema-driven auto-fetch\"\n },\n \"tiles\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"--- Grid data ---\"\n },\n \"units\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Array of units on the board\"\n },\n \"features\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Array of features (resources, portals, buildings, etc.)\"\n },\n \"selectedUnitId\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"--- Interaction state ---\"\n },\n \"validMoves\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Valid move positions (shown as pulsing green highlights)\"\n },\n \"attackTargets\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Attack target positions (shown as pulsing red highlights)\"\n },\n \"hoveredTile\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Hovered tile position\"\n },\n \"onTileClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"--- Event handlers ---\"\n },\n \"onUnitClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Unit click handler\"\n },\n \"onTileHover\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Tile hover handler\"\n },\n \"onTileLeave\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Tile leave handler\"\n },\n \"scale\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"--- Rendering options ---\"\n },\n \"debug\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show debug grid lines and coordinates\"\n },\n \"backgroundImage\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Background image URL tiled behind the isometric grid\"\n },\n \"showMinimap\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Toggle minimap overlay\"\n },\n \"enableCamera\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Enable camera pan/zoom controls\"\n },\n \"unitScale\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Extra scale multiplier for unit draw size. 1 = default.\"\n },\n \"getTerrainSprite\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"--- Asset resolution (project-agnostic) ---\"\n },\n \"getFeatureSprite\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Resolve feature sprite URL from feature type key\"\n },\n \"getUnitSprite\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Resolve unit static sprite URL\"\n },\n \"resolveUnitFrame\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Resolve animated sprite sheet frame for a unit\"\n },\n \"effectSpriteUrls\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Additional sprite URLs to preload (e.g., effect sprites)\"\n },\n \"onDrawEffects\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback to draw canvas effects after units\"\n },\n \"hasActiveEffects\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether there are active effects — keeps RAF loop alive\"\n },\n \"assetBaseUrl\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"--- Remote asset loading ---\"\n },\n \"assetManifest\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Manifest mapping entity keys to relative sprite paths. Combined with assetBaseUrl to produce full URLs. Used as a fallback when inline URLs and callbacks don't resolve.\"\n }\n }\n }\n },\n \"categories\": [\n \"display\",\n \"header\",\n \"form\",\n \"filter\",\n \"navigation\",\n \"state\",\n \"dashboard\",\n \"container\",\n \"layout\",\n \"game\",\n \"debug\",\n \"meta\",\n \"component\",\n \"template\",\n \"visualization\",\n \"media\"\n ]\n}\n","{\n \"version\": \"1.0.0\",\n \"exportedAt\": \"2026-01-25T00:58:14.172Z\",\n \"integrators\": {\n \"youtube\": {\n \"name\": \"youtube\",\n \"description\": \"YouTube Data API - search videos, get video/channel details\",\n \"category\": \"media\",\n \"actions\": [\n {\n \"name\": \"search\",\n \"description\": \"Search for videos\",\n \"params\": [\n {\n \"name\": \"query\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Search query\"\n },\n {\n \"name\": \"maxResults\",\n \"type\": \"number\",\n \"required\": false,\n \"description\": \"Max results (1-50)\"\n },\n {\n \"name\": \"type\",\n \"type\": \"string\",\n \"required\": false,\n \"description\": \"video, channel, or playlist\"\n }\n ],\n \"responseShape\": {\n \"videoId\": \"string\",\n \"title\": \"string\",\n \"thumbnail\": \"string\",\n \"description\": \"string\"\n }\n },\n {\n \"name\": \"getVideo\",\n \"description\": \"Get video details by ID\",\n \"params\": [\n {\n \"name\": \"videoId\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"YouTube video ID\"\n }\n ],\n \"responseShape\": {\n \"title\": \"string\",\n \"description\": \"string\",\n \"viewCount\": \"number\",\n \"likeCount\": \"number\"\n }\n },\n {\n \"name\": \"getChannel\",\n \"description\": \"Get channel details by ID\",\n \"params\": [\n {\n \"name\": \"channelId\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"YouTube channel ID\"\n }\n ],\n \"responseShape\": {\n \"name\": \"string\",\n \"description\": \"string\",\n \"subscriberCount\": \"number\"\n }\n }\n ]\n },\n \"stripe\": {\n \"name\": \"stripe\",\n \"description\": \"Stripe payment processing - create intents, confirm payments, refunds\",\n \"category\": \"payment\",\n \"actions\": [\n {\n \"name\": \"createPaymentIntent\",\n \"description\": \"Create a payment intent for collecting payment\",\n \"params\": [\n {\n \"name\": \"amount\",\n \"type\": \"number\",\n \"required\": true,\n \"description\": \"Amount in cents\"\n },\n {\n \"name\": \"currency\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"ISO currency code (e.g., usd)\"\n },\n {\n \"name\": \"metadata\",\n \"type\": \"object\",\n \"required\": false,\n \"description\": \"Custom metadata\"\n }\n ],\n \"responseShape\": {\n \"id\": \"string\",\n \"clientSecret\": \"string\",\n \"status\": \"string\"\n }\n },\n {\n \"name\": \"confirmPayment\",\n \"description\": \"Confirm a payment intent\",\n \"params\": [\n {\n \"name\": \"paymentIntentId\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Payment intent ID\"\n }\n ],\n \"responseShape\": {\n \"status\": \"string\",\n \"amount\": \"number\"\n }\n },\n {\n \"name\": \"refund\",\n \"description\": \"Refund a payment\",\n \"params\": [\n {\n \"name\": \"paymentIntentId\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Payment intent ID\"\n },\n {\n \"name\": \"amount\",\n \"type\": \"number\",\n \"required\": false,\n \"description\": \"Amount to refund (partial)\"\n }\n ],\n \"responseShape\": {\n \"id\": \"string\",\n \"status\": \"string\",\n \"amount\": \"number\"\n }\n }\n ]\n },\n \"twilio\": {\n \"name\": \"twilio\",\n \"description\": \"Twilio messaging - send SMS, WhatsApp messages\",\n \"category\": \"messaging\",\n \"actions\": [\n {\n \"name\": \"sendSMS\",\n \"description\": \"Send an SMS message\",\n \"params\": [\n {\n \"name\": \"to\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Recipient phone number\"\n },\n {\n \"name\": \"body\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Message body\"\n }\n ],\n \"responseShape\": {\n \"sid\": \"string\",\n \"status\": \"string\"\n }\n },\n {\n \"name\": \"sendWhatsApp\",\n \"description\": \"Send a WhatsApp message\",\n \"params\": [\n {\n \"name\": \"to\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Recipient phone number\"\n },\n {\n \"name\": \"body\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Message body\"\n }\n ],\n \"responseShape\": {\n \"sid\": \"string\",\n \"status\": \"string\"\n }\n }\n ]\n },\n \"email\": {\n \"name\": \"email\",\n \"description\": \"Transactional email via SendGrid/Resend\",\n \"category\": \"messaging\",\n \"actions\": [\n {\n \"name\": \"send\",\n \"description\": \"Send a transactional email\",\n \"params\": [\n {\n \"name\": \"to\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Recipient email\"\n },\n {\n \"name\": \"subject\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Email subject\"\n },\n {\n \"name\": \"body\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Email body (HTML or text)\"\n },\n {\n \"name\": \"from\",\n \"type\": \"string\",\n \"required\": false,\n \"description\": \"Sender email (uses default if omitted)\"\n }\n ],\n \"responseShape\": {\n \"id\": \"string\",\n \"status\": \"string\"\n }\n }\n ]\n },\n \"llm\": {\n \"name\": \"llm\",\n \"description\": \"LLM service for content generation, classification, and structured extraction\",\n \"category\": \"ai\",\n \"actions\": [\n {\n \"name\": \"generate\",\n \"description\": \"Generate content from a prompt\",\n \"params\": [\n {\n \"name\": \"systemPrompt\",\n \"type\": \"string\",\n \"required\": false,\n \"description\": \"System instructions for the LLM\"\n },\n {\n \"name\": \"userPrompt\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"User prompt/question\"\n },\n {\n \"name\": \"model\",\n \"type\": \"string\",\n \"required\": false,\n \"description\": \"Model ID (default: claude-sonnet-4-5-20250929)\"\n },\n {\n \"name\": \"temperature\",\n \"type\": \"number\",\n \"required\": false,\n \"description\": \"Sampling temperature (0-1, default: 0.7)\"\n },\n {\n \"name\": \"maxTokens\",\n \"type\": \"number\",\n \"required\": false,\n \"description\": \"Max response tokens (default: 1024)\"\n }\n ],\n \"responseShape\": {\n \"content\": \"string\",\n \"usage\": \"object\"\n }\n },\n {\n \"name\": \"classify\",\n \"description\": \"Classify text into predefined categories\",\n \"params\": [\n {\n \"name\": \"text\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Text to classify\"\n },\n {\n \"name\": \"categories\",\n \"type\": \"array\",\n \"required\": true,\n \"description\": \"List of category labels\"\n },\n {\n \"name\": \"model\",\n \"type\": \"string\",\n \"required\": false,\n \"description\": \"Model ID\"\n }\n ],\n \"responseShape\": {\n \"category\": \"string\",\n \"confidence\": \"number\",\n \"reasoning\": \"string\"\n }\n },\n {\n \"name\": \"extract\",\n \"description\": \"Extract structured data from text using a schema\",\n \"params\": [\n {\n \"name\": \"text\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Text to extract from\"\n },\n {\n \"name\": \"schema\",\n \"type\": \"object\",\n \"required\": true,\n \"description\": \"JSON schema defining fields to extract\"\n },\n {\n \"name\": \"model\",\n \"type\": \"string\",\n \"required\": false,\n \"description\": \"Model ID\"\n }\n ],\n \"responseShape\": {\n \"data\": \"object\",\n \"confidence\": \"number\"\n }\n },\n {\n \"name\": \"summarize\",\n \"description\": \"Summarize long text content\",\n \"params\": [\n {\n \"name\": \"text\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Text to summarize\"\n },\n {\n \"name\": \"maxLength\",\n \"type\": \"number\",\n \"required\": false,\n \"description\": \"Target summary length in words\"\n },\n {\n \"name\": \"style\",\n \"type\": \"string\",\n \"required\": false,\n \"description\": \"Summary style: brief, detailed, bullet\"\n },\n {\n \"name\": \"model\",\n \"type\": \"string\",\n \"required\": false,\n \"description\": \"Model ID\"\n }\n ],\n \"responseShape\": {\n \"summary\": \"string\",\n \"keyPoints\": \"array\"\n }\n }\n ]\n },\n \"deepagent\": {\n \"name\": \"deepagent\",\n \"description\": \"AI code generation agent with tool use - generates schemas, code, and manages projects\",\n \"category\": \"ai\",\n \"actions\": [\n {\n \"name\": \"sendMessage\",\n \"description\": \"Send a message to the AI agent and get a response with tool calls\",\n \"params\": [\n {\n \"name\": \"message\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"User message to the agent\"\n },\n {\n \"name\": \"threadId\",\n \"type\": \"string\",\n \"required\": false,\n \"description\": \"Thread ID for conversation continuity\"\n },\n {\n \"name\": \"skill\",\n \"type\": \"string\",\n \"required\": false,\n \"description\": \"Skill to use: almadar-orbitals, almadar-fixing, etc.\"\n },\n {\n \"name\": \"context\",\n \"type\": \"object\",\n \"required\": false,\n \"description\": \"Additional context (current schema, project info)\"\n }\n ],\n \"responseShape\": {\n \"response\": \"string\",\n \"threadId\": \"string\",\n \"toolCalls\": \"array\",\n \"todos\": \"array\",\n \"schemaDiffs\": \"array\"\n }\n },\n {\n \"name\": \"cancelGeneration\",\n \"description\": \"Cancel an ongoing generation\",\n \"params\": [\n {\n \"name\": \"threadId\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Thread ID to cancel\"\n }\n ],\n \"responseShape\": {\n \"success\": \"boolean\"\n }\n },\n {\n \"name\": \"validateSchema\",\n \"description\": \"Validate an orbital schema\",\n \"params\": [\n {\n \"name\": \"schema\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Schema content to validate\"\n }\n ],\n \"responseShape\": {\n \"valid\": \"boolean\",\n \"errors\": \"array\",\n \"warnings\": \"array\"\n }\n },\n {\n \"name\": \"compileSchema\",\n \"description\": \"Compile an orbital schema to target shell\",\n \"params\": [\n {\n \"name\": \"schema\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Schema content to compile\"\n },\n {\n \"name\": \"shell\",\n \"type\": \"string\",\n \"required\": false,\n \"description\": \"Target shell: typescript, python (default: typescript)\"\n }\n ],\n \"responseShape\": {\n \"success\": \"boolean\",\n \"outputPath\": \"string\",\n \"errors\": \"array\"\n }\n },\n {\n \"name\": \"getThreadHistory\",\n \"description\": \"Get conversation history for a thread\",\n \"params\": [\n {\n \"name\": \"threadId\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Thread ID to get history for\"\n }\n ],\n \"responseShape\": {\n \"messages\": \"array\",\n \"todos\": \"array\",\n \"schemaDiffs\": \"array\"\n }\n }\n ]\n }\n },\n \"categories\": [\"media\", \"payment\", \"messaging\", \"ai\"]\n}\n","{\n \"version\": \"1.0.0\",\n \"exportedAt\": \"2026-02-10T05:45:36.769Z\",\n \"mappings\": {\n \"page-header\": {\n \"component\": \"PageHeader\",\n \"importPath\": \"@/components/organisms/PageHeader\",\n \"category\": \"header\"\n },\n \"entity-list\": {\n \"component\": \"List\",\n \"importPath\": \"@/components/organisms/List\",\n \"category\": \"display\"\n },\n \"entity-table\": {\n \"component\": \"DataTable\",\n \"importPath\": \"@/components/organisms/DataTable\",\n \"category\": \"display\"\n },\n \"entity-cards\": {\n \"component\": \"CardGrid\",\n \"importPath\": \"@/components/organisms/CardGrid\",\n \"category\": \"display\"\n },\n \"stats\": {\n \"component\": \"StatCard\",\n \"importPath\": \"@/components/organisms/StatCard\",\n \"category\": \"display\"\n },\n \"detail-panel\": {\n \"component\": \"DetailPanel\",\n \"importPath\": \"@/components/organisms/DetailPanel\",\n \"category\": \"display\"\n },\n \"form\": {\n \"component\": \"Form\",\n \"importPath\": \"@/components/organisms/Form\",\n \"category\": \"form\"\n },\n \"form-section\": {\n \"component\": \"FormSection\",\n \"importPath\": \"@/components/organisms/Form\",\n \"category\": \"form\"\n },\n \"form-actions\": {\n \"component\": \"ButtonGroup\",\n \"importPath\": \"@/components/molecules/ButtonGroup\",\n \"category\": \"form\"\n },\n \"filter-group\": {\n \"component\": \"FilterGroup\",\n \"importPath\": \"@/components/molecules/FilterGroup\",\n \"category\": \"filter\"\n },\n \"search-input\": {\n \"component\": \"SearchInput\",\n \"importPath\": \"@/components/molecules/SearchInput\",\n \"category\": \"filter\"\n },\n \"empty-state\": {\n \"component\": \"EmptyState\",\n \"importPath\": \"@/components/molecules/EmptyState\",\n \"category\": \"state\"\n },\n \"loading-state\": {\n \"component\": \"LoadingState\",\n \"importPath\": \"@/components/molecules/LoadingState\",\n \"category\": \"state\"\n },\n \"error-state\": {\n \"component\": \"ErrorState\",\n \"importPath\": \"@/components/molecules/ErrorState\",\n \"category\": \"state\"\n },\n \"notification\": {\n \"component\": \"Toast\",\n \"importPath\": \"@/components/molecules/Toast\",\n \"category\": \"state\"\n },\n \"tabs\": {\n \"component\": \"Tabs\",\n \"importPath\": \"@/components/molecules/Tabs\",\n \"category\": \"navigation\"\n },\n \"breadcrumb\": {\n \"component\": \"Breadcrumb\",\n \"importPath\": \"@/components/molecules/Breadcrumb\",\n \"category\": \"navigation\"\n },\n \"wizard-container\": {\n \"component\": \"WizardContainer\",\n \"importPath\": \"@/components/organisms/WizardContainer\",\n \"category\": \"navigation\"\n },\n \"wizard-progress\": {\n \"component\": \"WizardProgress\",\n \"importPath\": \"@/components/molecules/WizardProgress\",\n \"category\": \"navigation\"\n },\n \"wizard-navigation\": {\n \"component\": \"WizardNavigation\",\n \"importPath\": \"@/components/molecules/WizardNavigation\",\n \"category\": \"navigation\"\n },\n \"pagination\": {\n \"component\": \"Pagination\",\n \"importPath\": \"@/components/molecules/Pagination\",\n \"category\": \"navigation\"\n },\n \"card\": {\n \"component\": \"Card\",\n \"importPath\": \"@/components/molecules/Card\",\n \"category\": \"display\"\n },\n \"modal\": {\n \"component\": \"Modal\",\n \"importPath\": \"@/components/molecules/Modal\",\n \"category\": \"layout\"\n },\n \"drawer\": {\n \"component\": \"Drawer\",\n \"importPath\": \"@/components/molecules/Drawer\",\n \"category\": \"layout\"\n },\n \"confirm-dialog\": {\n \"component\": \"ConfirmDialog\",\n \"importPath\": \"@/components/organisms/ConfirmDialog\",\n \"category\": \"layout\"\n },\n \"master-detail\": {\n \"component\": \"MasterDetail\",\n \"importPath\": \"@/components/organisms/layout/MasterDetail\",\n \"category\": \"layout\"\n },\n \"dashboard-grid\": {\n \"component\": \"DashboardGrid\",\n \"importPath\": \"@/components/organisms/layout/DashboardGrid\",\n \"category\": \"layout\"\n },\n \"game-hud\": {\n \"component\": \"GameHud\",\n \"importPath\": \"@/components/organisms/game/GameHud\",\n \"category\": \"game\"\n },\n \"game-menu\": {\n \"component\": \"GameMenu\",\n \"importPath\": \"@/components/organisms/game/GameMenu\",\n \"category\": \"game\"\n },\n \"game-over-screen\": {\n \"component\": \"GameOverScreen\",\n \"importPath\": \"@/components/organisms/game/GameOverScreen\",\n \"category\": \"game\"\n },\n \"inventory-panel\": {\n \"component\": \"InventoryPanel\",\n \"importPath\": \"@/components/organisms/game/InventoryPanel\",\n \"category\": \"game\"\n },\n \"dialogue-box\": {\n \"component\": \"DialogueBox\",\n \"importPath\": \"@/components/organisms/game/DialogueBox\",\n \"category\": \"game\"\n },\n \"runtime-debugger\": {\n \"component\": \"RuntimeDebugger\",\n \"importPath\": \"@/components/organisms/debug/RuntimeDebugger\",\n \"category\": \"debug\"\n },\n \"repeatable-form-section\": {\n \"component\": \"RepeatableFormSection\",\n \"importPath\": \"@/clients/inspection-system/molecules/RepeatableFormSection\",\n \"category\": \"form\",\n \"client\": \"inspection-system\"\n },\n \"box\": {\n \"component\": \"Box\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"layout\"\n },\n \"grid\": {\n \"component\": \"Grid\",\n \"importPath\": \"@/components/molecules\",\n \"category\": \"layout\"\n },\n \"center\": {\n \"component\": \"Center\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"layout\"\n },\n \"spacer\": {\n \"component\": \"Spacer\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"layout\"\n },\n \"divider\": {\n \"component\": \"Divider\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"layout\"\n },\n \"button\": {\n \"component\": \"Button\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"atom\"\n },\n \"badge\": {\n \"component\": \"Badge\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"atom\"\n },\n \"avatar\": {\n \"component\": \"Avatar\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"atom\"\n },\n \"icon\": {\n \"component\": \"Icon\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"atom\"\n },\n \"spinner\": {\n \"component\": \"Spinner\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"atom\"\n },\n \"input\": {\n \"component\": \"Input\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"form\"\n },\n \"textarea\": {\n \"component\": \"Textarea\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"form\"\n },\n \"select\": {\n \"component\": \"Select\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"form\"\n },\n \"checkbox\": {\n \"component\": \"Checkbox\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"form\"\n },\n \"radio\": {\n \"component\": \"Radio\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"form\"\n },\n \"switch\": {\n \"component\": \"Switch\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"form\"\n },\n \"label\": {\n \"component\": \"Label\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"form\"\n },\n \"alert\": {\n \"component\": \"Alert\",\n \"importPath\": \"@/components/molecules/Alert\",\n \"category\": \"state\"\n },\n \"accordion\": {\n \"component\": \"Accordion\",\n \"importPath\": \"@/components/molecules/Accordion\",\n \"category\": \"display\"\n },\n \"tooltip\": {\n \"component\": \"Tooltip\",\n \"importPath\": \"@/components/molecules\",\n \"category\": \"atom\"\n },\n \"popover\": {\n \"component\": \"Popover\",\n \"importPath\": \"@/components/molecules\",\n \"category\": \"atom\"\n },\n \"menu\": {\n \"component\": \"Menu\",\n \"importPath\": \"@/components/molecules\",\n \"category\": \"navigation\"\n },\n \"progress-bar\": {\n \"component\": \"ProgressBar\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"display\"\n },\n \"container\": {\n \"component\": \"Container\",\n \"importPath\": \"@/components/molecules\",\n \"category\": \"layout\"\n },\n \"simple-grid\": {\n \"component\": \"SimpleGrid\",\n \"importPath\": \"@/components/molecules\",\n \"category\": \"layout\"\n },\n \"studio-home-web\": {\n \"component\": \"StudioHomeWebTemplate\",\n \"importPath\": \"@/clients/builder/templates/StudioHomeWebTemplate\",\n \"category\": \"template\",\n \"client\": \"builder\"\n },\n \"studio-home-electron\": {\n \"component\": \"StudioHomeElectronTemplate\",\n \"importPath\": \"@/clients/builder/templates/StudioHomeElectronTemplate\",\n \"category\": \"template\",\n \"client\": \"builder\"\n },\n \"studio-project\": {\n \"component\": \"StudioProjectTemplate\",\n \"importPath\": \"@/clients/builder/templates/StudioProjectTemplate\",\n \"category\": \"template\",\n \"client\": \"builder\"\n },\n \"hex-battlefield\": {\n \"component\": \"BattlefieldTemplate\",\n \"importPath\": \"@/clients/trait-wars/templates/BattlefieldTemplate\",\n \"category\": \"template\",\n \"client\": \"trait-wars\"\n },\n \"hero-selection\": {\n \"component\": \"HexTraitWarsGame\",\n \"importPath\": \"@/clients/trait-wars/templates/HexTraitWarsGame\",\n \"category\": \"template\",\n \"client\": \"trait-wars\"\n },\n \"hero-profile\": {\n \"component\": \"HeroProfileTemplate\",\n \"importPath\": \"@/clients/trait-wars/templates/HeroProfileTemplate\",\n \"category\": \"template\",\n \"client\": \"trait-wars\"\n },\n \"army-builder\": {\n \"component\": \"ArmyBuilderTemplate\",\n \"importPath\": \"@/clients/trait-wars/templates/ArmyBuilderTemplate\",\n \"category\": \"template\",\n \"client\": \"trait-wars\"\n },\n \"conditional-wrapper\": {\n \"component\": \"ConditionalWrapper\",\n \"importPath\": \"@/components/atoms/ConditionalWrapper\",\n \"category\": \"component\"\n },\n \"law-reference-tooltip\": {\n \"component\": \"LawReferenceTooltip\",\n \"importPath\": \"@/components/atoms/LawReferenceTooltip\",\n \"category\": \"component\"\n },\n \"overlay\": {\n \"component\": \"Overlay\",\n \"importPath\": \"@/components/atoms/Overlay\",\n \"category\": \"container\"\n },\n \"stack\": {\n \"component\": \"Stack\",\n \"importPath\": \"@/components/atoms/Stack\",\n \"category\": \"component\"\n },\n \"vstack\": {\n \"component\": \"VStack\",\n \"importPath\": \"@/components/atoms/Stack\",\n \"category\": \"component\"\n },\n \"hstack\": {\n \"component\": \"HStack\",\n \"importPath\": \"@/components/atoms/Stack\",\n \"category\": \"component\"\n },\n \"text-highlight\": {\n \"component\": \"TextHighlight\",\n \"importPath\": \"@/components/atoms/TextHighlight\",\n \"category\": \"component\"\n },\n \"theme-toggle\": {\n \"component\": \"ThemeToggle\",\n \"importPath\": \"@/components/atoms/ThemeToggle\",\n \"category\": \"component\"\n },\n \"typography\": {\n \"component\": \"Typography\",\n \"importPath\": \"@/components/atoms/Typography\",\n \"category\": \"component\"\n },\n \"control-button\": {\n \"component\": \"ControlButton\",\n \"importPath\": \"@/components/atoms/ControlButton\",\n \"category\": \"component\"\n },\n \"health-bar\": {\n \"component\": \"HealthBar\",\n \"importPath\": \"@/components/atoms/HealthBar\",\n \"category\": \"component\"\n },\n \"score-display\": {\n \"component\": \"ScoreDisplay\",\n \"importPath\": \"@/components/atoms/ScoreDisplay\",\n \"category\": \"component\"\n },\n \"sprite\": {\n \"component\": \"Sprite\",\n \"importPath\": \"@/components/atoms/Sprite\",\n \"category\": \"game\"\n },\n \"flex\": {\n \"component\": \"Flex\",\n \"importPath\": \"@/components/molecules/Flex\",\n \"category\": \"component\"\n },\n \"floating-action-button\": {\n \"component\": \"FloatingActionButton\",\n \"importPath\": \"@/components/molecules/FloatingActionButton\",\n \"category\": \"component\"\n },\n \"form-field\": {\n \"component\": \"FormField\",\n \"importPath\": \"@/components/molecules/FormField\",\n \"category\": \"form\"\n },\n \"form-section-header\": {\n \"component\": \"FormSectionHeader\",\n \"importPath\": \"@/components/molecules/FormSectionHeader\",\n \"category\": \"form\"\n },\n \"input-group\": {\n \"component\": \"InputGroup\",\n \"importPath\": \"@/components/molecules/InputGroup\",\n \"category\": \"form\"\n },\n \"relation-select\": {\n \"component\": \"RelationSelect\",\n \"importPath\": \"@/components/molecules/RelationSelect\",\n \"category\": \"form\"\n },\n \"side-panel\": {\n \"component\": \"SidePanel\",\n \"importPath\": \"@/components/molecules/SidePanel\",\n \"category\": \"component\"\n },\n \"violation-alert\": {\n \"component\": \"ViolationAlert\",\n \"importPath\": \"@/components/molecules/ViolationAlert\",\n \"category\": \"state\"\n },\n \"action-buttons\": {\n \"component\": \"ActionButtons\",\n \"importPath\": \"@/components/molecules/ActionButtons\",\n \"category\": \"component\"\n },\n \"d-pad\": {\n \"component\": \"DPad\",\n \"importPath\": \"@/components/molecules/DPad\",\n \"category\": \"component\"\n },\n \"stat-badge\": {\n \"component\": \"StatBadge\",\n \"importPath\": \"@/components/molecules/StatBadge\",\n \"category\": \"display\"\n },\n \"button-pattern\": {\n \"component\": \"ButtonPattern\",\n \"importPath\": \"@/components/organisms/ButtonPattern\",\n \"category\": \"display\"\n },\n \"custom-pattern\": {\n \"component\": \"CustomPattern\",\n \"importPath\": \"@/components/organisms/CustomPattern\",\n \"category\": \"display\"\n },\n \"drawer-slot\": {\n \"component\": \"DrawerSlot\",\n \"importPath\": \"@/components/organisms/DrawerSlot\",\n \"category\": \"layout\"\n },\n \"header\": {\n \"component\": \"Header\",\n \"importPath\": \"@/components/organisms/Header\",\n \"category\": \"header\"\n },\n \"layout-pattern\": {\n \"component\": \"LayoutPattern\",\n \"importPath\": \"@/components/organisms/LayoutPattern\",\n \"category\": \"layout\"\n },\n \"modal-slot\": {\n \"component\": \"ModalSlot\",\n \"importPath\": \"@/components/organisms/ModalSlot\",\n \"category\": \"layout\"\n },\n \"navigation\": {\n \"component\": \"Navigation\",\n \"importPath\": \"@/components/organisms/Navigation\",\n \"category\": \"navigation\"\n },\n \"orbital-visualization\": {\n \"component\": \"OrbitalVisualization\",\n \"importPath\": \"@/components/organisms/OrbitalVisualization\",\n \"category\": \"display\"\n },\n \"section\": {\n \"component\": \"Section\",\n \"importPath\": \"@/components/organisms/Section\",\n \"category\": \"display\"\n },\n \"sidebar\": {\n \"component\": \"Sidebar\",\n \"importPath\": \"@/components/organisms/Sidebar\",\n \"category\": \"navigation\"\n },\n \"split\": {\n \"component\": \"Split\",\n \"importPath\": \"@/components/organisms/Split\",\n \"category\": \"layout\"\n },\n \"table\": {\n \"component\": \"Table\",\n \"importPath\": \"@/components/organisms/Table\",\n \"category\": \"display\"\n },\n \"toast-slot\": {\n \"component\": \"ToastSlot\",\n \"importPath\": \"@/components/organisms/ToastSlot\",\n \"category\": \"layout\"\n },\n \"u-i-slot-renderer\": {\n \"component\": \"UISlotRenderer\",\n \"importPath\": \"@/components/organisms/UISlotRenderer\",\n \"category\": \"layout\"\n },\n \"split-pane\": {\n \"component\": \"SplitPane\",\n \"importPath\": \"@/components/organisms/SplitPane\",\n \"category\": \"layout\"\n },\n \"tabbed-container\": {\n \"component\": \"TabbedContainer\",\n \"importPath\": \"@/components/organisms/TabbedContainer\",\n \"category\": \"navigation\"\n },\n \"auth-layout\": {\n \"component\": \"AuthLayout\",\n \"importPath\": \"@/components/templates/AuthLayout\",\n \"category\": \"template\"\n },\n \"counter-template\": {\n \"component\": \"CounterTemplate\",\n \"importPath\": \"@/components/templates/CounterTemplate\",\n \"category\": \"template\"\n },\n \"crud-template\": {\n \"component\": \"CrudTemplate\",\n \"importPath\": \"@/components/templates/CrudTemplate\",\n \"category\": \"template\"\n },\n \"dashboard-layout\": {\n \"component\": \"DashboardLayout\",\n \"importPath\": \"@/components/templates/DashboardLayout\",\n \"category\": \"template\"\n },\n \"form-template\": {\n \"component\": \"FormTemplate\",\n \"importPath\": \"@/components/templates/FormTemplate\",\n \"category\": \"template\"\n },\n \"game-template\": {\n \"component\": \"GameTemplate\",\n \"importPath\": \"@/components/templates/GameTemplate\",\n \"category\": \"template\"\n },\n \"generic-app-template\": {\n \"component\": \"GenericAppTemplate\",\n \"importPath\": \"@/components/templates/GenericAppTemplate\",\n \"category\": \"template\"\n },\n \"list-template\": {\n \"component\": \"ListTemplate\",\n \"importPath\": \"@/components/templates/ListTemplate\",\n \"category\": \"template\"\n },\n \"settings-template\": {\n \"component\": \"SettingsTemplate\",\n \"importPath\": \"@/components/templates/SettingsTemplate\",\n \"category\": \"template\"\n },\n \"game-shell\": {\n \"component\": \"GameShell\",\n \"importPath\": \"@/components/templates/GameShell\",\n \"category\": \"template\"\n },\n \"chart\": {\n \"component\": \"Chart\",\n \"importPath\": \"@almadar/ui\",\n \"category\": \"visualization\"\n },\n \"meter\": {\n \"component\": \"Meter\",\n \"importPath\": \"@almadar/ui\",\n \"category\": \"visualization\"\n },\n \"timeline\": {\n \"component\": \"Timeline\",\n \"importPath\": \"@almadar/ui\",\n \"category\": \"display\"\n },\n \"media-gallery\": {\n \"component\": \"MediaGallery\",\n \"importPath\": \"@almadar/ui\",\n \"category\": \"media\"\n },\n \"signature-pad\": {\n \"component\": \"SignaturePad\",\n \"importPath\": \"@almadar/ui\",\n \"category\": \"form\"\n },\n \"document-viewer\": {\n \"component\": \"DocumentViewer\",\n \"importPath\": \"@almadar/ui\",\n \"category\": \"display\"\n },\n \"graph-canvas\": {\n \"component\": \"GraphCanvas\",\n \"importPath\": \"@almadar/ui\",\n \"category\": \"visualization\"\n },\n \"code-viewer\": {\n \"component\": \"CodeViewer\",\n \"importPath\": \"@almadar/ui\",\n \"category\": \"display\"\n },\n \"canvas-effect\": {\n \"component\": \"CanvasEffect\",\n \"importPath\": \"@/components/organisms/CanvasEffect\",\n \"category\": \"game\"\n },\n \"isometric-canvas\": {\n \"component\": \"IsometricCanvas\",\n \"importPath\": \"@/components/organisms/IsometricCanvas\",\n \"category\": \"game\"\n }\n }\n}\n","{\n \"version\": \"1.0.0\",\n \"exportedAt\": \"2026-02-10T05:45:36.769Z\",\n \"contracts\": {\n \"form\": {\n \"emits\": [\n {\n \"event\": \"GLOBAL_VARIABLE_SET\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"VIOLATION_DETECTED\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"FIELD_CHANGED\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"CLOSE\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [\n \"SAVE\",\n \"CANCEL\"\n ],\n \"entityAware\": true\n },\n \"form-section\": {\n \"emits\": [\n {\n \"event\": \"SAVE\",\n \"trigger\": \"submit\",\n \"payload\": {\n \"type\": \"FormData\"\n }\n },\n {\n \"event\": \"CANCEL\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n }\n }\n ],\n \"requires\": [\n \"SAVE\",\n \"CANCEL\"\n ],\n \"entityAware\": false\n },\n \"form-actions\": {\n \"emits\": [\n {\n \"event\": \"DISPATCH\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": true,\n \"configDriven\": true\n },\n \"entity-table\": {\n \"emits\": [\n {\n \"event\": \"VIEW\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"SEARCH\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": true,\n \"configDriven\": true\n },\n \"entity-cards\": {\n \"emits\": [\n {\n \"event\": \"VIEW\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"EntityRow\"\n },\n \"optional\": true\n },\n {\n \"event\": \"SELECT\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"EntityRow\"\n },\n \"optional\": true\n }\n ],\n \"requires\": [],\n \"entityAware\": true,\n \"configDriven\": true\n },\n \"entity-list\": {\n \"emits\": [\n {\n \"event\": \"VIEW\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"EntityRow\"\n },\n \"optional\": true\n },\n {\n \"event\": \"SELECT\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"EntityRow\"\n },\n \"optional\": true\n }\n ],\n \"requires\": [],\n \"entityAware\": true,\n \"configDriven\": true\n },\n \"detail-panel\": {\n \"emits\": [],\n \"requires\": [],\n \"entityAware\": true\n },\n \"page-header\": {\n \"emits\": [\n {\n \"event\": \"CREATE\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n },\n \"optional\": true\n }\n ],\n \"requires\": [],\n \"entityAware\": false,\n \"configDriven\": true\n },\n \"filter-group\": {\n \"emits\": [\n {\n \"event\": \"FILTER\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"CLEAR_FILTERS\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": true,\n \"configDriven\": true\n },\n \"search-input\": {\n \"emits\": [\n {\n \"event\": \"SEARCH\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"CLEAR_SEARCH\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": true\n },\n \"empty-state\": {\n \"emits\": [\n {\n \"event\": \"CREATE\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n },\n \"optional\": true\n }\n ],\n \"requires\": [],\n \"entityAware\": false,\n \"configDriven\": true\n },\n \"loading-state\": {\n \"emits\": [],\n \"requires\": [],\n \"entityAware\": false\n },\n \"error-state\": {\n \"emits\": [\n {\n \"event\": \"RETRY\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n },\n \"optional\": true\n }\n ],\n \"requires\": [],\n \"entityAware\": false,\n \"configDriven\": true\n },\n \"notification\": {\n \"emits\": [\n {\n \"event\": \"DISMISS\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n },\n \"optional\": true\n },\n {\n \"event\": \"ACTION\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n },\n \"optional\": true\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"tabs\": {\n \"emits\": [\n {\n \"event\": \"TAB_CHANGE\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"tabId\": \"string\"\n }\n },\n \"optional\": true\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"breadcrumb\": {\n \"emits\": [],\n \"requires\": [],\n \"entityAware\": false\n },\n \"wizard-container\": {\n \"emits\": [\n {\n \"event\": \"WIZARD_NEXT\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n }\n },\n {\n \"event\": \"WIZARD_BACK\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n }\n },\n {\n \"event\": \"WIZARD_COMPLETE\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n }\n },\n {\n \"event\": \"WIZARD_STEP_CHANGE\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"step\": \"number\"\n }\n }\n }\n ],\n \"requires\": [\n \"WIZARD_COMPLETE\"\n ],\n \"entityAware\": true\n },\n \"wizard-progress\": {\n \"emits\": [\n {\n \"event\": \"WIZARD_STEP_CLICK\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"step\": \"number\"\n }\n },\n \"optional\": true\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"wizard-navigation\": {\n \"emits\": [\n {\n \"event\": \"WIZARD_NEXT\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n }\n },\n {\n \"event\": \"WIZARD_BACK\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n }\n },\n {\n \"event\": \"WIZARD_COMPLETE\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": false,\n \"configDriven\": true\n },\n \"pagination\": {\n \"emits\": [\n {\n \"event\": \"PAGE_CHANGE\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"page\": \"number\"\n }\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"modal\": {\n \"emits\": [\n {\n \"event\": \"CLOSE\",\n \"trigger\": \"close\",\n \"payload\": {\n \"type\": \"void\"\n }\n }\n ],\n \"requires\": [\n \"CLOSE\"\n ],\n \"entityAware\": false\n },\n \"drawer\": {\n \"emits\": [\n {\n \"event\": \"CLOSE\",\n \"trigger\": \"close\",\n \"payload\": {\n \"type\": \"void\"\n }\n }\n ],\n \"requires\": [\n \"CLOSE\"\n ],\n \"entityAware\": false\n },\n \"confirm-dialog\": {\n \"emits\": [\n {\n \"event\": \"CONFIRM\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n }\n },\n {\n \"event\": \"CANCEL\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n }\n }\n ],\n \"requires\": [\n \"CONFIRM\",\n \"CANCEL\"\n ],\n \"entityAware\": false\n },\n \"master-detail\": {\n \"emits\": [\n {\n \"event\": \"SELECT\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"EntityRow\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"dashboard-grid\": {\n \"emits\": [],\n \"requires\": [],\n \"entityAware\": false\n },\n \"stats\": {\n \"emits\": [],\n \"requires\": [],\n \"entityAware\": true\n },\n \"card\": {\n \"emits\": [\n {\n \"event\": \"CLICK\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n },\n \"optional\": true\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"game-hud\": {\n \"emits\": [],\n \"requires\": [],\n \"entityAware\": false\n },\n \"game-menu\": {\n \"emits\": [\n {\n \"event\": \"START\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n },\n \"optional\": true\n },\n {\n \"event\": \"RESUME\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n },\n \"optional\": true\n },\n {\n \"event\": \"RESTART\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n },\n \"optional\": true\n }\n ],\n \"requires\": [],\n \"entityAware\": false,\n \"configDriven\": true\n },\n \"game-over-screen\": {\n \"emits\": [\n {\n \"event\": \"RESTART\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n }\n },\n {\n \"event\": \"QUIT\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n },\n \"optional\": true\n }\n ],\n \"requires\": [\n \"RESTART\"\n ],\n \"entityAware\": false\n },\n \"inventory-panel\": {\n \"emits\": [\n {\n \"event\": \"USE_ITEM\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"EntityRow\"\n },\n \"optional\": true\n },\n {\n \"event\": \"DROP_ITEM\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"EntityRow\"\n },\n \"optional\": true\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"dialogue-box\": {\n \"emits\": [\n {\n \"event\": \"ADVANCE\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n }\n },\n {\n \"event\": \"CHOOSE\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"EntityRow\"\n },\n \"optional\": true\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"runtime-debugger\": {\n \"emits\": [],\n \"requires\": [],\n \"entityAware\": false\n },\n \"repeatable-form-section\": {\n \"emits\": [\n {\n \"event\": \"SECTION_ADDED\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"SECTION_REMOVED\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"studio-home-web\": {\n \"emits\": [\n {\n \"event\": \"CREATE_PROJECT\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"void\"\n }\n },\n {\n \"event\": \"SELECT_PROJECT\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"project\": \"object\"\n }\n }\n },\n {\n \"event\": \"DELETE_PROJECT\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"project\": \"object\"\n }\n }\n },\n {\n \"event\": \"OPEN_PROJECT\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"project\": \"object\"\n }\n }\n },\n {\n \"event\": \"SEARCH\",\n \"trigger\": \"input\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"query\": \"string\"\n }\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": true\n },\n \"studio-home-electron\": {\n \"emits\": [\n {\n \"event\": \"OPEN_FILE\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"void\"\n }\n },\n {\n \"event\": \"CREATE_NEW\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"void\"\n }\n },\n {\n \"event\": \"OPEN_RECENT\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"file\": \"object\"\n }\n }\n },\n {\n \"event\": \"REMOVE_RECENT\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"file\": \"object\"\n }\n }\n },\n {\n \"event\": \"CLEAR_RECENT\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"void\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"studio-project\": {\n \"emits\": [\n {\n \"event\": \"MODE_CHANGE\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"mode\": \"string\"\n }\n }\n },\n {\n \"event\": \"TAB_CHANGE\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"tab\": \"string\"\n }\n }\n },\n {\n \"event\": \"SAVE\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"projectId\": \"string\"\n }\n }\n },\n {\n \"event\": \"VALIDATE\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"projectId\": \"string\"\n }\n }\n },\n {\n \"event\": \"COMPILE\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"projectId\": \"string\"\n }\n }\n },\n {\n \"event\": \"PREVIEW\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"projectId\": \"string\"\n }\n }\n },\n {\n \"event\": \"BACK\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"void\"\n }\n },\n {\n \"event\": \"TOGGLE_AGENT\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"visible\": \"boolean\"\n }\n }\n },\n {\n \"event\": \"TOGGLE_INSPECTOR\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"visible\": \"boolean\"\n }\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": true\n },\n \"drawer-slot\": {\n \"emits\": [\n {\n \"event\": \"CLOSE\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"CANCEL\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"modal-slot\": {\n \"emits\": [\n {\n \"event\": \"CLOSE\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"CANCEL\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"toast-slot\": {\n \"emits\": [\n {\n \"event\": \"DISMISS\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"CLOSE\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"code-viewer\": {\n \"emits\": [\n {\n \"event\": \"CODE_COPY\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": true\n },\n \"document-viewer\": {\n \"emits\": [\n {\n \"event\": \"DOCUMENT_DOWNLOAD\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"DOCUMENT_PRINT\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"DOCUMENT_PAGE_CHANGE\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": true\n },\n \"media-gallery\": {\n \"emits\": [\n {\n \"event\": \"MEDIA_SELECT\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"MEDIA_UPLOAD\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": true\n }\n }\n}\n","/**\n * Pattern Types (Auto-Generated)\n *\n * DO NOT EDIT MANUALLY - Generated by scripts/generate-pattern-types.ts\n * Run: npx tsx scripts/generate-pattern-types.ts\n *\n * Generated: 2026-02-10T04:12:13.069Z\n * Pattern count: 117\n */\n\n/**\n * All valid pattern type names from almadar-patterns registry.\n * Use this type in render-ui effects for compile-time validation.\n */\nexport type PatternType =\n | 'accordion'\n | 'action-buttons'\n | 'alert'\n | 'auth-layout'\n | 'avatar'\n | 'badge'\n | 'box'\n | 'breadcrumb'\n | 'button'\n | 'button-pattern'\n | 'canvas-effect'\n | 'card'\n | 'center'\n | 'chart'\n | 'checkbox'\n | 'code-viewer'\n | 'conditional-wrapper'\n | 'confirm-dialog'\n | 'container'\n | 'control-button'\n | 'counter-template'\n | 'crud-template'\n | 'custom-pattern'\n | 'd-pad'\n | 'dashboard-grid'\n | 'dashboard-layout'\n | 'detail-panel'\n | 'dialogue-box'\n | 'divider'\n | 'document-viewer'\n | 'drawer'\n | 'drawer-slot'\n | 'empty-state'\n | 'entity-cards'\n | 'entity-list'\n | 'entity-table'\n | 'error-state'\n | 'filter-group'\n | 'flex'\n | 'floating-action-button'\n | 'form'\n | 'form-actions'\n | 'form-field'\n | 'form-section'\n | 'form-section-header'\n | 'form-template'\n | 'game-hud'\n | 'game-menu'\n | 'game-over-screen'\n | 'game-shell'\n | 'game-template'\n | 'generic-app-template'\n | 'graph-canvas'\n | 'grid'\n | 'header'\n | 'health-bar'\n | 'icon'\n | 'input'\n | 'input-group'\n | 'inventory-panel'\n | 'isometric-canvas'\n | 'label'\n | 'law-reference-tooltip'\n | 'layout-pattern'\n | 'list-template'\n | 'loading-state'\n | 'master-detail'\n | 'media-gallery'\n | 'menu'\n | 'meter'\n | 'modal'\n | 'modal-slot'\n | 'navigation'\n | 'notification'\n | 'orbital-visualization'\n | 'overlay'\n | 'page-header'\n | 'pagination'\n | 'popover'\n | 'progress-bar'\n | 'radio'\n | 'relation-select'\n | 'repeatable-form-section'\n | 'runtime-debugger'\n | 'score-display'\n | 'search-input'\n | 'section'\n | 'select'\n | 'settings-template'\n | 'side-panel'\n | 'sidebar'\n | 'signature-pad'\n | 'simple-grid'\n | 'spacer'\n | 'spinner'\n | 'split'\n | 'split-pane'\n | 'sprite'\n | 'stack'\n | 'stat-badge'\n | 'stats'\n | 'switch'\n | 'tabbed-container'\n | 'table'\n | 'tabs'\n | 'text-highlight'\n | 'textarea'\n | 'theme-toggle'\n | 'timeline'\n | 'toast-slot'\n | 'tooltip'\n | 'typography'\n | 'u-i-slot-renderer'\n | 'violation-alert'\n | 'wizard-container'\n | 'wizard-navigation'\n | 'wizard-progress';\n\n/**\n * Pattern props map - each pattern type maps to its valid props interface.\n * This enables full type-checking of pattern configurations.\n */\nexport interface PatternPropsMap {\n 'accordion': {\n type: 'accordion';\n /** Accordion items */\n items: unknown[] | string;\n /** Allow multiple items open at once @default false */\n multiple?: boolean | string;\n /** Default open items (IDs) */\n defaultOpenItems?: unknown[] | string;\n /** Default open items by index (pattern compatibility) */\n defaultOpen?: unknown[] | string;\n /** Controlled open items (IDs) */\n openItems?: unknown[] | string;\n /** Callback when item opens/closes */\n onItemToggle?: ((...args: unknown[]) => unknown) | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'action-buttons': {\n type: 'action-buttons';\n /** Button configurations */\n buttons: unknown[] | string;\n /** Called when a button is pressed/released */\n onAction: ((...args: unknown[]) => unknown) | string;\n /** Layout variant */\n layout?: string;\n /** Size variant */\n size?: string;\n /** Additional CSS classes */\n className?: string;\n /** Disabled state */\n disabled?: boolean | string;\n };\n 'alert': {\n type: 'alert';\n /** Alert content (children or message) */\n children?: unknown | string;\n /** Alert message (alias for children) */\n message?: string;\n /** variant prop */\n variant?: unknown | string;\n /** title prop */\n title?: string;\n /** dismissible prop */\n dismissible?: boolean | string;\n /** onDismiss prop */\n onDismiss?: ((...args: unknown[]) => unknown) | string;\n /** onClose prop */\n onClose?: ((...args: unknown[]) => unknown) | string;\n /** actions prop */\n actions?: unknown | string;\n /** className prop */\n className?: string;\n };\n 'auth-layout': {\n type: 'auth-layout';\n /** App name */\n appName?: string;\n /** Logo component or URL */\n logo?: unknown | string;\n /** Background image URL */\n backgroundImage?: string;\n /** Show branding panel on the side */\n showBranding?: boolean | string;\n /** Branding panel content */\n brandingContent?: unknown | string;\n };\n 'avatar': {\n type: 'avatar';\n /** Image source URL */\n src?: string;\n /** Alt text for the image */\n alt?: string;\n /** Full name - initials will be generated automatically */\n name?: string;\n /** Initials to display (e.g., \"JD\" for John Doe) If not provided but name is, initials will be auto-generated */\n initials?: string;\n /** Icon to display when no image or initials */\n icon?: unknown | string;\n /** Size of the avatar @default 'md' */\n size?: unknown | string;\n /** Status indicator */\n status?: unknown | string;\n /** Badge content (e.g., notification count) */\n badge?: string | number;\n /** Additional CSS classes */\n className?: string;\n /** Click handler */\n onClick?: ((...args: unknown[]) => unknown) | string;\n };\n 'badge': {\n type: 'badge';\n /** variant prop */\n variant?: unknown | string;\n /** size prop */\n size?: unknown | string;\n };\n 'box': {\n type: 'box';\n /** Padding on all sides */\n padding?: unknown | string;\n /** Horizontal padding (overrides padding for x-axis) */\n paddingX?: unknown | string;\n /** Vertical padding (overrides padding for y-axis) */\n paddingY?: unknown | string;\n /** Margin on all sides */\n margin?: unknown | string;\n /** Horizontal margin */\n marginX?: unknown | string;\n /** Vertical margin */\n marginY?: unknown | string;\n /** Background color */\n bg?: unknown | string;\n /** Show border */\n border?: boolean | string;\n /** Border radius */\n rounded?: unknown | string;\n /** Box shadow */\n shadow?: unknown | string;\n /** Display type */\n display?: string;\n /** Fill available width */\n fullWidth?: boolean | string;\n /** Fill available height */\n fullHeight?: boolean | string;\n /** Overflow behavior */\n overflow?: string;\n /** Position */\n position?: string;\n /** HTML element to render as */\n as?: unknown | string;\n };\n 'breadcrumb': {\n type: 'breadcrumb';\n /** Breadcrumb items */\n items: unknown[] | string;\n /** Separator icon */\n separator?: unknown | string;\n /** Maximum items to show (truncates with ellipsis) */\n maxItems?: number | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'button': {\n type: 'button';\n /** variant prop */\n variant?: unknown | string;\n /** size prop */\n size?: unknown | string;\n /** isLoading prop */\n isLoading?: boolean | string;\n /** Left icon as ReactNode (preferred) */\n leftIcon?: unknown | string;\n /** Right icon as ReactNode (preferred) */\n rightIcon?: unknown | string;\n /** Left icon as Lucide icon component (convenience prop, renders with default size) */\n icon?: unknown | string;\n /** Right icon as Lucide icon component (convenience prop) */\n iconRight?: unknown | string;\n };\n 'button-pattern': {\n type: 'button-pattern';\n /** label prop */\n label: string;\n /** variant prop */\n variant?: unknown | string;\n /** size prop */\n size?: unknown | string;\n /** disabled prop */\n disabled?: boolean | string;\n /** onClick prop */\n onClick?: string;\n /** icon prop */\n icon?: string;\n /** iconPosition prop */\n iconPosition?: string;\n /** className prop */\n className?: string;\n };\n 'canvas-effect': {\n type: 'canvas-effect';\n /** The type of combat action to visualise */\n actionType: unknown | string;\n /** Screen-space X position (center of the effect) */\n x: number | string;\n /** Screen-space Y position (center of the effect) */\n y: number | string;\n /** Duration in ms before auto-dismiss (default 800) */\n duration?: number | string;\n /** Optional intensity multiplier (1 = normal) */\n intensity?: number | string;\n /** Callback when the effect animation completes */\n onComplete?: ((...args: unknown[]) => unknown) | string;\n /** Additional CSS classes */\n className?: string;\n /** Loading state indicator */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n };\n 'card': {\n type: 'card';\n /** Card title */\n title?: string;\n /** Card subtitle or description */\n subtitle?: string;\n /** Image URL to display at top of card */\n image?: string;\n /** Action buttons to display in card footer */\n actions?: unknown[] | string;\n /** Card content */\n children?: unknown | string;\n /** Click handler for the entire card */\n onClick?: ((...args: unknown[]) => unknown) | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'center': {\n type: 'center';\n /** Center inline (width fits content) vs block (full width) */\n inline?: boolean | string;\n /** Center only horizontally */\n horizontal?: boolean | string;\n /** Center only vertically */\n vertical?: boolean | string;\n /** Minimum height (useful for vertical centering) */\n minHeight?: string | number;\n /** Fill available height */\n fullHeight?: boolean | string;\n /** Fill available width */\n fullWidth?: boolean | string;\n /** Custom class name */\n className?: string;\n /** Inline styles */\n style?: Record<string, unknown> | string;\n /** Children elements */\n children: unknown | string;\n /** HTML element to render as */\n as?: unknown | string;\n };\n 'chart': {\n type: 'chart';\n /** Chart title */\n title?: string;\n /** Chart subtitle / description */\n subtitle?: string;\n /** Chart type */\n chartType?: unknown | string;\n /** Data series */\n series?: unknown | string;\n /** Simple data (single series shorthand) */\n data?: unknown | string;\n /** Chart height in px */\n height?: number | string;\n /** Show legend */\n showLegend?: boolean | string;\n /** Show values on chart */\n showValues?: boolean | string;\n /** Actions for chart interactions */\n actions?: unknown | string;\n /** Entity name for schema-driven auto-fetch */\n entity?: string;\n /** Loading state */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'checkbox': {\n type: 'checkbox';\n /** label prop */\n label?: string;\n };\n 'code-viewer': {\n type: 'code-viewer';\n /** Viewer title */\n title?: string;\n /** Code content */\n code?: string;\n /** Language for display label */\n language?: string;\n /** Diff lines (for diff mode) */\n diff?: unknown | string;\n /** Old value (for generating diff) */\n oldValue?: string;\n /** New value (for generating diff) */\n newValue?: string;\n /** Display mode */\n mode?: unknown | string;\n /** Show line numbers */\n showLineNumbers?: boolean | string;\n /** Show copy button */\n showCopy?: boolean | string;\n /** Enable word wrap */\n wordWrap?: boolean | string;\n /** Max height before scrolling */\n maxHeight?: number | string;\n /** Multiple files (tabbed view) */\n files?: unknown | string;\n /** Actions */\n actions?: unknown | string;\n /** Entity name for schema-driven auto-fetch */\n entity?: string;\n /** Loading state */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'conditional-wrapper': {\n type: 'conditional-wrapper';\n /** The S-expression condition to evaluate */\n condition?: unknown | string;\n /** Context for evaluating the condition */\n context: unknown | string;\n /** Children to render when condition is true (or when no condition is provided) */\n children: unknown | string;\n /** Optional fallback to render when condition is false */\n fallback?: unknown | string;\n /** Whether to animate the transition (uses CSS transitions) */\n animate?: boolean | string;\n };\n 'confirm-dialog': {\n type: 'confirm-dialog';\n /** Whether the dialog is open (defaults to true when rendered by slot wrapper) */\n isOpen?: boolean | string;\n /** Callback when dialog is closed (injected by slot wrapper) */\n onClose?: ((...args: unknown[]) => unknown) | string;\n /** Callback when action is confirmed (injected by slot wrapper) */\n onConfirm?: ((...args: unknown[]) => unknown) | string;\n /** Dialog title */\n title: string;\n /** Dialog message/description */\n message?: string | unknown;\n /** Alias for message (schema compatibility) */\n description?: string | unknown;\n /** Confirm button text */\n confirmText?: string;\n /** Alias for confirmText (schema compatibility) */\n confirmLabel?: string;\n /** Cancel button text */\n cancelText?: string;\n /** Alias for cancelText (schema compatibility) */\n cancelLabel?: string;\n /** Dialog variant */\n variant?: unknown | string;\n /** Dialog size */\n size?: unknown | string;\n /** Loading state for confirm button */\n isLoading?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'container': {\n type: 'container';\n /** Maximum width */\n size?: unknown | string;\n /** Alias for size (pattern compatibility) */\n maxWidth?: unknown | string;\n /** Horizontal padding */\n padding?: unknown | string;\n /** Center horizontally */\n center?: boolean | string;\n /** Custom class name */\n className?: string;\n /** Children elements */\n children?: unknown | string;\n /** HTML element to render as */\n as?: unknown | string;\n };\n 'control-button': {\n type: 'control-button';\n /** Button label text */\n label?: string;\n /** Icon component or emoji */\n icon?: unknown | string;\n /** Size variant */\n size?: string;\n /** Shape variant */\n shape?: string;\n /** Visual variant */\n variant?: string;\n /** Called when button is pressed */\n onPress?: ((...args: unknown[]) => unknown) | string;\n /** Called when button is released */\n onRelease?: ((...args: unknown[]) => unknown) | string;\n /** Whether the button is currently pressed */\n pressed?: boolean | string;\n /** Whether the button is disabled */\n disabled?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'counter-template': {\n type: 'counter-template';\n /** Current count value */\n count: number | string;\n /** Minimum allowed value */\n min?: number | string;\n /** Maximum allowed value */\n max?: number | string;\n /** Step size for increment/decrement */\n step?: number | string;\n /** Called when increment is clicked */\n onIncrement?: ((...args: unknown[]) => unknown) | string;\n /** Called when decrement is clicked */\n onDecrement?: ((...args: unknown[]) => unknown) | string;\n /** Called when reset is clicked */\n onReset?: ((...args: unknown[]) => unknown) | string;\n /** Title displayed above the counter */\n title?: string;\n /** Show reset button */\n showReset?: boolean | string;\n /** Counter display size */\n size?: unknown | string;\n /** Template variant */\n variant?: unknown | string;\n /** Additional class name */\n className?: string;\n };\n 'crud-template': {\n type: 'crud-template';\n /** Array of items to display */\n items: unknown[] | string;\n /** Whether data is loading */\n isLoading?: boolean | string;\n /** Error object if loading failed */\n error?: unknown | string;\n /** Currently selected item for editing */\n selectedItem?: unknown | string;\n /** Whether the create/edit modal is open */\n isModalOpen?: boolean | string;\n /** Current search query */\n searchQuery?: string;\n /** Current sort field */\n sortBy?: string;\n /** Current sort order */\n sortOrder?: string;\n /** Called to load/refresh items */\n onLoad?: ((...args: unknown[]) => unknown) | string;\n /** Called when creating a new item */\n onCreate?: ((...args: unknown[]) => unknown) | string;\n /** Called when updating an item */\n onUpdate?: ((...args: unknown[]) => unknown) | string;\n /** Called when deleting an item */\n onDelete?: ((...args: unknown[]) => unknown) | string;\n /** Called when selecting an item for editing */\n onSelect?: ((...args: unknown[]) => unknown) | string;\n /** Called when viewing an item */\n onView?: ((...args: unknown[]) => unknown) | string;\n /** Called when search query changes */\n onSearch?: ((...args: unknown[]) => unknown) | string;\n /** Called when sort changes */\n onSort?: ((...args: unknown[]) => unknown) | string;\n /** Called to open create/edit modal */\n onOpenModal?: ((...args: unknown[]) => unknown) | string;\n /** Called to close modal */\n onCloseModal?: ((...args: unknown[]) => unknown) | string;\n /** Page title */\n title?: string;\n /** Singular entity name for labels */\n entityName?: string;\n /** Table column definitions */\n columns?: unknown[] | string;\n /** Form field definitions for create/edit */\n fields?: unknown[] | string;\n /** Whether to show search input */\n showSearch?: boolean | string;\n /** Search input placeholder */\n searchPlaceholder?: string;\n /** Whether to show view action */\n showViewAction?: boolean | string;\n /** Template variant */\n variant?: unknown | string;\n /** Additional class name */\n className?: string;\n };\n 'custom-pattern': {\n type: 'custom-pattern';\n /** HTML element to render */\n component: unknown | string;\n /** Tailwind classes */\n className?: string;\n /** Token path(s) for design token resolution */\n token?: string | unknown[];\n /** Text content (for leaf elements) */\n content?: string;\n /** Event to emit on click (REQUIRED for interactive elements) */\n action?: string;\n /** Event payload */\n payload?: Record<string, unknown> | string;\n /** Nested children patterns */\n children?: unknown | string;\n /** Image source (for img elements) */\n src?: string;\n /** Image alt text (for img elements) */\n alt?: string;\n /** Link href (for a elements) */\n href?: string;\n /** Open link in new tab */\n external?: boolean | string;\n /** Disabled state */\n disabled?: boolean | string;\n /** Additional HTML attributes */\n htmlProps?: Record<string, unknown> | string;\n };\n 'd-pad': {\n type: 'd-pad';\n /** Called when a direction is pressed/released */\n onDirection: ((...args: unknown[]) => unknown) | string;\n /** Size variant */\n size?: string;\n /** Whether to include diagonal buttons */\n includeDiagonals?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n /** Disabled state */\n disabled?: boolean | string;\n };\n 'dashboard-grid': {\n type: 'dashboard-grid';\n /** Number of columns */\n columns?: number | string;\n /** Gap between cells */\n gap?: string;\n /** Cell definitions */\n cells: unknown[] | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'dashboard-layout': {\n type: 'dashboard-layout';\n /** App name shown in sidebar */\n appName?: string;\n /** Logo component or URL */\n logo?: unknown | string;\n /** Navigation items */\n navItems?: unknown[] | string;\n /** Current user info (optional - auto-populated from auth context if not provided) */\n user?: Record<string, unknown> | string;\n /** Header actions (notifications, etc.) */\n headerActions?: unknown | string;\n /** Show search in header */\n showSearch?: boolean | string;\n /** Custom sidebar footer */\n sidebarFooter?: unknown | string;\n /** Callback when user clicks sign out (optional - uses auth context signOut if not provided) */\n onSignOut?: ((...args: unknown[]) => unknown) | string;\n };\n 'detail-panel': {\n type: 'detail-panel';\n /** title prop */\n title?: string;\n /** subtitle prop */\n subtitle?: string;\n /** status prop */\n status?: Record<string, unknown> | string;\n /** avatar prop */\n avatar?: unknown | string;\n /** sections prop */\n sections?: unknown | string;\n /** Unified actions array - first action with variant='primary' is the main action */\n actions?: unknown | string;\n /** footer prop */\n footer?: unknown | string;\n /** slideOver prop */\n slideOver?: boolean | string;\n /** onClose prop */\n onClose?: ((...args: unknown[]) => unknown) | string;\n /** className prop */\n className?: string;\n /** Schema-based props */\n entity?: string;\n /** Fields to display - accepts string[] or {key, header}[] for unified interface */\n fields?: unknown | string;\n /** Alias for fields - backwards compatibility */\n fieldNames?: unknown | string;\n /** data prop */\n data?: Record<string, unknown> | unknown | string;\n /** isLoading prop */\n isLoading?: boolean | string;\n /** error prop */\n error?: unknown | string;\n /** Panel position (for drawer/sidebar placement) */\n position?: string;\n /** Panel width (CSS value, e.g., '400px', '50%') */\n width?: string;\n };\n 'dialogue-box': {\n type: 'dialogue-box';\n /** Current dialogue node to display */\n dialogue: unknown | string;\n /** Typewriter speed in ms per character (0 = instant) */\n typewriterSpeed?: number | string;\n /** Position of dialogue box */\n position?: string;\n /** Called when text animation completes */\n onComplete?: ((...args: unknown[]) => unknown) | string;\n /** Called when a choice is selected */\n onChoice?: ((...args: unknown[]) => unknown) | string;\n /** Called when dialogue is advanced (no choices) */\n onAdvance?: ((...args: unknown[]) => unknown) | string;\n /** Optional className */\n className?: string;\n };\n 'divider': {\n type: 'divider';\n /** Orientation of the divider @default 'horizontal' */\n orientation?: unknown | string;\n /** Text label to display in the divider */\n label?: string;\n /** Line style variant @default 'solid' */\n variant?: unknown | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'document-viewer': {\n type: 'document-viewer';\n /** Document title */\n title?: string;\n /** Document URL (for PDF/external documents) */\n src?: string;\n /** Document content (for text/html/markdown) */\n content?: string;\n /** Document type */\n documentType?: unknown | string;\n /** Current page (for multi-page documents) */\n currentPage?: number | string;\n /** Total pages */\n totalPages?: number | string;\n /** Viewer height */\n height?: number | string;\n /** Show toolbar */\n showToolbar?: boolean | string;\n /** Show download button */\n showDownload?: boolean | string;\n /** Show print button */\n showPrint?: boolean | string;\n /** Actions */\n actions?: unknown | string;\n /** Multiple documents (tabbed view) */\n documents?: unknown | string;\n /** Entity name for schema-driven auto-fetch */\n entity?: string;\n /** Loading state */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'drawer': {\n type: 'drawer';\n /** Whether the drawer is open (defaults to true when rendered by slot wrapper) */\n isOpen?: boolean | string;\n /** Callback when drawer should close (injected by slot wrapper) */\n onClose?: ((...args: unknown[]) => unknown) | string;\n /** Drawer title */\n title?: string;\n /** Drawer content (can be empty if using slot content) */\n children?: unknown | string;\n /** Footer content */\n footer?: unknown | string;\n /** Position (left or right) */\n position?: unknown | string;\n /** Width (CSS value or preset size) */\n width?: string | unknown;\n /** Show close button */\n showCloseButton?: boolean | string;\n /** Close on overlay click */\n closeOnOverlayClick?: boolean | string;\n /** Close on escape key */\n closeOnEscape?: boolean | string;\n /** Additional class name */\n className?: string;\n };\n 'drawer-slot': {\n type: 'drawer-slot';\n /** Content to display in the drawer */\n children?: unknown | string;\n /** Override drawer title (extracted from children if not provided) */\n title?: string;\n /** Drawer position */\n position?: unknown | string;\n /** Drawer size */\n size?: unknown | string;\n /** Custom class name */\n className?: string;\n };\n 'empty-state': {\n type: 'empty-state';\n /** Icon to display. Accepts either: - A Lucide icon component (LucideIcon) - A string icon name (e.g., \"check-circle\", \"x-circle\") */\n icon?: unknown | string;\n /** Primary text to display - use title or message (message is alias for backwards compat) */\n title?: string;\n /** Alias for title - used by schema patterns */\n message?: string;\n /** description prop */\n description?: string;\n /** actionLabel prop */\n actionLabel?: string;\n /** onAction prop */\n onAction?: ((...args: unknown[]) => unknown) | string;\n /** className prop */\n className?: string;\n /** Destructive styling for confirmation dialogs */\n destructive?: boolean | string;\n /** Variant for color styling */\n variant?: string;\n };\n 'entity-cards': {\n type: 'entity-cards';\n /** Minimum width of each card (default: 280px) */\n minCardWidth?: number | string;\n /** Maximum number of columns */\n maxCols?: number | string;\n /** Gap between cards */\n gap?: unknown | string;\n /** Align cards vertically in their cells */\n alignItems?: string;\n /** Custom class name */\n className?: string;\n /** Children elements (cards) - optional when using entity/data props */\n children?: unknown | string;\n /** Entity type for data-bound usage */\n entity?: string;\n /** Fields to display - accepts string[] or {key, header}[] for unified interface */\n fields?: unknown | string;\n /** Alias for fields - backwards compatibility */\n fieldNames?: unknown | string;\n /** Alias for fields - backwards compatibility */\n columns?: unknown | string;\n /** Data array for data-bound usage - accepts readonly for generated const arrays */\n data?: unknown | string;\n /** Loading state indicator */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** Actions for each card item (schema-driven) */\n itemActions?: unknown | string;\n /** Callback when a card is clicked */\n onCardClick?: ((...args: unknown[]) => unknown) | string;\n /** Enable server-side pagination */\n enablePagination?: boolean | string;\n /** Items per page (default: 20) */\n pageSize?: number | string;\n /** Show total count in pagination */\n showTotal?: boolean | string;\n /** Filter configuration for entity data */\n filter?: Record<string, unknown> | string;\n /** Query singleton binding for filter/sort state. When provided, syncs with the query singleton for filtering and sorting. Example: \"@TaskQuery\" */\n query?: string;\n };\n 'entity-list': {\n type: 'entity-list';\n /** Entity name for auto-fetch OR data array (backwards compatible) */\n entity?: unknown[] | unknown | string;\n /** Data array - primary prop for data */\n data?: unknown[] | unknown | string;\n /** Loading state */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** selectable prop */\n selectable?: boolean | string;\n /** selectedItems prop */\n selectedItems?: unknown | string;\n /** onSelectionChange prop */\n onSelectionChange?: ((...args: unknown[]) => unknown) | string;\n /** Item actions - schema-driven or function-based */\n itemActions?: ((...args: unknown[]) => unknown) | unknown | string;\n /** showDividers prop */\n showDividers?: boolean | string;\n /** variant prop */\n variant?: string;\n /** emptyMessage prop */\n emptyMessage?: string;\n /** className prop */\n className?: string;\n /** renderItem prop */\n renderItem?: ((...args: unknown[]) => unknown) | string;\n /** children prop */\n children?: unknown | string;\n /** onItemAction prop */\n onItemAction?: ((...args: unknown[]) => unknown) | string;\n /** onRowClick prop */\n onRowClick?: ((...args: unknown[]) => unknown) | string;\n /** Fields to display - accepts string[] or {key, header}[] for unified interface */\n fields?: unknown | string;\n /** Alias for fields - backwards compatibility */\n fieldNames?: unknown | string;\n /** Query singleton binding for filter/sort state. When provided, syncs with the query singleton for filtering and sorting. Example: \"@TaskQuery\" */\n query?: string;\n /** Entity type name for display */\n entityType?: string;\n };\n 'entity-table': {\n type: 'entity-table';\n /** Fields to display - accepts string[] or Column[] for unified interface. Alias for columns */\n fields?: unknown | string;\n /** Columns can be Column objects or simple string field names - accepts readonly for generated const arrays */\n columns?: unknown | string;\n /** Data array - primary prop for data. Accepts readonly or mutable arrays, and unknown for generated components */\n data?: unknown | unknown[] | string;\n /** Entity name for auto-fetch OR data array (backwards compatible) */\n entity?: string | unknown | unknown[];\n /** Item actions from generated code - maps to rowActions */\n itemActions?: unknown | string;\n /** Loading state indicator */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** emptyIcon prop */\n emptyIcon?: unknown | string;\n /** emptyTitle prop */\n emptyTitle?: string;\n /** emptyDescription prop */\n emptyDescription?: string;\n /** emptyAction prop */\n emptyAction?: Record<string, unknown> | string;\n /** Selection */\n selectable?: boolean | string;\n /** selectedIds prop */\n selectedIds?: unknown | string;\n /** onSelectionChange prop */\n onSelectionChange?: ((...args: unknown[]) => unknown) | string;\n /** Sorting */\n sortBy?: string;\n /** sortDirection prop */\n sortDirection?: string;\n /** onSort prop */\n onSort?: ((...args: unknown[]) => unknown) | string;\n /** Pagination (manual control) */\n pagination?: Record<string, unknown> | string;\n /** Server-side pagination (automatic when enabled) */\n enablePagination?: boolean | string;\n /** Items per page for automatic pagination (default: 20) */\n defaultPageSize?: number | string;\n /** Show total count in pagination */\n showTotal?: boolean | string;\n /** Search */\n searchable?: boolean | string;\n /** searchValue prop */\n searchValue?: string;\n /** onSearch prop */\n onSearch?: ((...args: unknown[]) => unknown) | string;\n /** searchPlaceholder prop */\n searchPlaceholder?: string;\n /** Row click navigation */\n onRowClick?: ((...args: unknown[]) => unknown) | string;\n /** Row actions */\n rowActions?: unknown | string;\n /** Bulk actions */\n bulkActions?: unknown[] | string;\n /** Header actions */\n headerActions?: unknown | string;\n /** Query singleton binding for filter/sort state. When provided, syncs with the query singleton for filtering and sorting. Example: \"@TaskQuery\" */\n query?: string;\n /** className prop */\n className?: string;\n };\n 'error-state': {\n type: 'error-state';\n /** title prop */\n title?: string;\n /** Error message to display */\n message?: string;\n /** Alias for message (schema compatibility) */\n description?: string;\n /** onRetry prop */\n onRetry?: ((...args: unknown[]) => unknown) | string;\n /** className prop */\n className?: string;\n };\n 'filter-group': {\n type: 'filter-group';\n /** Entity name to filter */\n entity: string;\n /** Filter definitions from schema */\n filters: unknown | string;\n /** Callback when a filter changes - for EntityStore integration */\n onFilterChange?: ((...args: unknown[]) => unknown) | string;\n /** Callback to clear all filters */\n onClearAll?: ((...args: unknown[]) => unknown) | string;\n /** Additional CSS classes */\n className?: string;\n /** Variant style */\n variant?: string;\n /** Show filter icon */\n showIcon?: boolean | string;\n /** Query singleton binding for state management. When provided, syncs filter state with the query singleton. Example: \"@TaskQuery\" */\n query?: string;\n /** Loading state indicator */\n isLoading?: boolean | string;\n };\n 'flex': {\n type: 'flex';\n /** Flex direction */\n direction?: unknown | string;\n /** Flex wrap */\n wrap?: unknown | string;\n /** Align items */\n align?: unknown | string;\n /** Justify content */\n justify?: unknown | string;\n /** Gap between items */\n gap?: unknown | string;\n /** Inline flex */\n inline?: boolean | string;\n /** Flex grow */\n grow?: boolean | number | string;\n /** Flex shrink */\n shrink?: boolean | number | string;\n /** Flex basis */\n basis?: string | number;\n /** Custom class name */\n className?: string;\n /** Children elements */\n children: unknown | string;\n /** HTML element to render as */\n as?: unknown | string;\n };\n 'floating-action-button': {\n type: 'floating-action-button';\n /** Single action (if only one action, button will directly trigger onClick) */\n action?: Record<string, unknown> | string;\n /** Multiple actions (if provided, button will expand to show all actions) */\n actions?: unknown[] | string;\n /** Icon name (simplified API for pattern compatibility) */\n icon?: string;\n /** Click handler (simplified API for pattern compatibility) */\n onClick?: ((...args: unknown[]) => unknown) | string;\n /** Variant (simplified API for pattern compatibility) */\n variant?: string;\n /** Button position @default 'bottom-right' */\n position?: string;\n /** Additional CSS classes */\n className?: string;\n };\n 'form': {\n type: 'form';\n /** Form fields (traditional React children) */\n children?: unknown | string;\n /** Submit handler - receives form data, or event name string for trait dispatch */\n onSubmit?: ((...args: unknown[]) => unknown) | string;\n /** Cancel handler - function or event name string for trait dispatch */\n onCancel?: ((...args: unknown[]) => unknown) | string;\n /** Form layout */\n layout?: string;\n /** Gap between fields */\n gap?: string;\n /** Additional CSS classes */\n className?: string;\n /** Schema-based props */\n entity?: string;\n /** Form mode - 'create' for new records, 'edit' for updating existing */\n mode?: string;\n /** Fields definition (schema format) - accepts readonly for generated const arrays */\n fields?: unknown | string;\n /** Initial form data */\n initialData?: Record<string, unknown> | unknown | string;\n /** Loading state */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** Submit button label */\n submitLabel?: string;\n /** Cancel button label (if provided, shows cancel button) */\n cancelLabel?: string;\n /** Show cancel button (defaults to true for schema forms) */\n showCancel?: boolean | string;\n /** Form title (used by ModalSlot to extract title) */\n title?: string;\n /** Event dispatch props (for trait state machine integration) */\n submitEvent?: string;\n /** Event to dispatch on cancel (defaults to 'CANCEL') */\n cancelEvent?: string;\n /** Relation data props */\n relationsData?: Record<string, unknown> | string;\n /** Loading state for relation data: { fieldName: boolean } */\n relationsLoading?: Record<string, unknown> | string;\n /** Inspection form extensions */\n conditionalFields?: Record<string, unknown> | boolean | string;\n /** Hidden calculations that emit GLOBAL_VARIABLE_SET on field change (boolean true means enabled but config loaded separately) */\n hiddenCalculations?: unknown[] | boolean | string;\n /** Violation conditions that emit VIOLATION_DETECTED when met (boolean true means enabled but config loaded separately) */\n violationTriggers?: unknown[] | boolean | string;\n /** Context for S-expression evaluation - accepts flexible types from generated code */\n evaluationContext?: unknown | Record<string, unknown> | string;\n /** Nested form sections with optional conditions */\n sections?: unknown[] | string;\n /** Callback when any field value changes */\n onFieldChange?: ((...args: unknown[]) => unknown) | string;\n /** Config path for form configuration (schema-driven) */\n configPath?: string;\n /** Whether the form supports repeatable entries */\n repeatable?: boolean | string;\n };\n 'form-actions': {\n type: 'form-actions';\n /** Button group content (Button components) - use this OR primary/secondary */\n children?: unknown | string;\n /** Primary action button config (for form-actions pattern) Accepts Readonly for compatibility with generated const objects */\n primary?: unknown | string;\n /** Secondary action buttons config (for form-actions pattern) Accepts readonly array for compatibility with generated const arrays */\n secondary?: unknown | string;\n /** Visual variant @default 'default' */\n variant?: unknown | string;\n /** Orientation @default 'horizontal' */\n orientation?: string;\n /** Additional CSS classes */\n className?: string;\n /** Entity type for filter-group pattern (schema metadata) */\n entity?: string;\n /** Filter definitions for filter-group pattern */\n filters?: unknown | string;\n };\n 'form-field': {\n type: 'form-field';\n /** label prop */\n label: string;\n /** required prop */\n required?: boolean | string;\n /** error prop */\n error?: string;\n /** hint prop */\n hint?: string;\n /** className prop */\n className?: string;\n /** children prop */\n children: unknown | string;\n };\n 'form-section': {\n type: 'form-section';\n /** Section title */\n title?: string;\n /** Section description */\n description?: string;\n /** Form fields */\n children: unknown | string;\n /** Collapsible */\n collapsible?: boolean | string;\n /** Default collapsed state */\n defaultCollapsed?: boolean | string;\n /** Use card wrapper */\n card?: boolean | string;\n /** Grid columns for fields */\n columns?: number | string;\n /** className prop */\n className?: string;\n };\n 'form-section-header': {\n type: 'form-section-header';\n /** Section title */\n title: string;\n /** Section subtitle */\n subtitle?: string;\n /** Whether section is collapsed */\n isCollapsed?: boolean | string;\n /** Toggle collapse handler (makes header clickable) */\n onToggle?: ((...args: unknown[]) => unknown) | string;\n /** Badge text (e.g., \"3 fields\", \"Required\", \"Complete\") */\n badge?: string;\n /** Badge variant */\n badgeVariant?: string;\n /** Icon name to show before title */\n icon?: string;\n /** Whether section has validation errors */\n hasErrors?: boolean | string;\n /** Whether section is complete */\n isComplete?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'form-template': {\n type: 'form-template';\n /** Current form field values */\n formData: Record<string, unknown> | string;\n /** Whether form is being submitted */\n isSubmitting?: boolean | string;\n /** Whether submission was successful */\n isSuccess?: boolean | string;\n /** Error object if submission failed */\n error?: unknown | string;\n /** Field-level validation errors */\n validationErrors?: Record<string, unknown> | string;\n /** Called when form is submitted */\n onSubmit?: ((...args: unknown[]) => unknown) | string;\n /** Called when a field value changes */\n onFieldChange?: ((...args: unknown[]) => unknown) | string;\n /** Called to reset the form */\n onReset?: ((...args: unknown[]) => unknown) | string;\n /** Called to dismiss success message */\n onDismissSuccess?: ((...args: unknown[]) => unknown) | string;\n /** Form title */\n title?: string;\n /** Form subtitle/description */\n subtitle?: string;\n /** Submit button label */\n submitLabel?: string;\n /** Success message */\n successMessage?: string;\n /** Whether to show reset button */\n showReset?: boolean | string;\n /** Form field definitions */\n fields?: unknown[] | string;\n /** Template variant */\n variant?: unknown | string;\n /** Additional class name */\n className?: string;\n };\n 'game-hud': {\n type: 'game-hud';\n /** Position of the HUD */\n position?: string;\n /** Stats to display - accepts readonly for compatibility with generated const arrays */\n stats?: unknown | string;\n /** Alias for stats (schema compatibility) */\n items?: unknown | string;\n /** Schema-style elements array (alternative to stats). Converted to stats internally for backwards compatibility. */\n elements?: unknown | string;\n /** Size variant */\n size?: string;\n /** Additional CSS classes */\n className?: string;\n /** Whether to use a semi-transparent background */\n transparent?: boolean | string;\n };\n 'game-menu': {\n type: 'game-menu';\n /** Menu title */\n title: string;\n /** Optional subtitle or version */\n subtitle?: string;\n /** Menu options - accepts readonly for compatibility with generated const arrays */\n options?: unknown | string;\n /** Alias for options (schema compatibility) */\n menuItems?: unknown | string;\n /** Called when an option is selected (legacy callback, prefer event bus) */\n onSelect?: ((...args: unknown[]) => unknown) | string;\n /** Event bus for emitting UI events (optional, uses hook if not provided) */\n eventBus?: unknown | string;\n /** Background image or gradient */\n background?: string;\n /** Logo image URL */\n logo?: string;\n /** Additional CSS classes */\n className?: string;\n };\n 'game-over-screen': {\n type: 'game-over-screen';\n /** Screen title (e.g., \"Game Over\", \"Victory!\") */\n title: string;\n /** Optional message */\n message?: string;\n /** Stats to display */\n stats?: unknown[] | string;\n /** Action buttons */\n actions?: unknown[] | string;\n /** Alias for actions (schema compatibility) */\n menuItems?: unknown[] | string;\n /** Called when an action is selected (legacy callback, prefer event bus) */\n onAction?: ((...args: unknown[]) => unknown) | string;\n /** Event bus for emitting UI events (optional, uses hook if not provided) */\n eventBus?: unknown | string;\n /** Victory or defeat variant */\n variant?: string;\n /** High score (optional, shows \"NEW HIGH SCORE!\" if exceeded) */\n highScore?: number | string;\n /** Current score for high score comparison (accepts string for schema bindings) */\n currentScore?: number | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'game-shell': {\n type: 'game-shell';\n /** Application / game title shown in the HUD bar */\n appName?: string;\n /** Optional HUD content rendered above the main area */\n hud?: unknown | string;\n /** Extra class name on the root container */\n className?: string;\n /** Whether to show the minimal top bar (default: true) */\n showTopBar?: boolean | string;\n };\n 'game-template': {\n type: 'game-template';\n /** Title of the game */\n title?: string;\n /** The main game canvas or content */\n children: unknown | string;\n /** HUD overlay content (scores, health, etc.) */\n hud?: unknown | string;\n /** Debug panel content */\n debugPanel?: unknown | string;\n /** Whether the debug panel is visible */\n showDebugPanel?: boolean | string;\n /** Game controls */\n controls?: Record<string, unknown> | string;\n /** Additional class name */\n className?: string;\n };\n 'generic-app-template': {\n type: 'generic-app-template';\n /** Page title */\n title: string;\n /** Subtitle or description */\n subtitle?: string;\n /** Main content */\n children: unknown | string;\n /** Header actions (buttons, links) */\n headerActions?: unknown | string;\n /** Footer content */\n footer?: unknown | string;\n /** Additional class name */\n className?: string;\n };\n 'graph-canvas': {\n type: 'graph-canvas';\n /** Graph title */\n title?: string;\n /** Graph nodes */\n nodes?: unknown | string;\n /** Graph edges */\n edges?: unknown | string;\n /** Canvas height */\n height?: number | string;\n /** Show node labels */\n showLabels?: boolean | string;\n /** Enable zoom/pan */\n interactive?: boolean | string;\n /** Enable node dragging */\n draggable?: boolean | string;\n /** Actions */\n actions?: unknown | string;\n /** On node click */\n onNodeClick?: ((...args: unknown[]) => unknown) | string;\n /** Node click event */\n nodeClickEvent?: string;\n /** Layout algorithm */\n layout?: string;\n /** Entity name for schema-driven auto-fetch */\n entity?: string;\n /** Loading state */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'grid': {\n type: 'grid';\n /** Number of columns (can be responsive object) */\n cols?: unknown | unknown | string;\n /** Number of rows */\n rows?: number | string;\n /** Gap between items */\n gap?: unknown | string;\n /** Row gap (overrides gap for rows) */\n rowGap?: unknown | string;\n /** Column gap (overrides gap for columns) */\n colGap?: unknown | string;\n /** Align items on block axis */\n alignItems?: unknown | string;\n /** Justify items on inline axis */\n justifyItems?: unknown | string;\n /** Auto-flow direction */\n flow?: string;\n /** Custom class name */\n className?: string;\n /** Inline styles */\n style?: Record<string, unknown> | string;\n /** Children elements */\n children: unknown | string;\n /** HTML element to render as */\n as?: unknown | string;\n };\n 'header': {\n type: 'header';\n /** Logo/Brand content */\n logo?: unknown | string;\n /** Logo image source */\n logoSrc?: string;\n /** Brand/App name */\n brandName?: string;\n /** Navigation items (for desktop header variant) */\n navigationItems?: unknown[] | string;\n /** Show menu toggle button @default true */\n showMenuToggle?: boolean | string;\n /** Is menu open (for toggle icon) */\n isMenuOpen?: boolean | string;\n /** Menu toggle callback */\n onMenuToggle?: ((...args: unknown[]) => unknown) | string;\n /** Show search input @default false */\n showSearch?: boolean | string;\n /** Search placeholder */\n searchPlaceholder?: string;\n /** Search callback */\n onSearch?: ((...args: unknown[]) => unknown) | string;\n /** User avatar configuration */\n userAvatar?: Record<string, unknown> | string;\n /** User name (display name or email) */\n userName?: string;\n /** Callback when user avatar is clicked */\n onUserClick?: ((...args: unknown[]) => unknown) | string;\n /** Action buttons (right side) */\n actions?: unknown | string;\n /** Sticky header @default true */\n sticky?: boolean | string;\n /** Variant - mobile shows menu toggle, desktop shows full nav @default 'mobile' */\n variant?: string;\n /** Callback when logo/brand is clicked */\n onLogoClick?: ((...args: unknown[]) => unknown) | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'health-bar': {\n type: 'health-bar';\n /** Current health value */\n current: number | string;\n /** Maximum health value */\n max: number | string;\n /** Display format */\n format?: string;\n /** Size variant */\n size?: string;\n /** Additional CSS classes */\n className?: string;\n /** Animation on change */\n animated?: boolean | string;\n };\n 'icon': {\n type: 'icon';\n /** Lucide icon component (preferred for type-safe usage) */\n icon?: unknown | string;\n /** Icon name as string (resolved from iconMap) */\n name?: string;\n /** Size of the icon */\n size?: unknown | string;\n /** Color class (Tailwind color class) or 'inherit' for theme default */\n color?: string;\n /** Animation type */\n animation?: unknown | string;\n /** Additional CSS classes */\n className?: string;\n /** Icon stroke width - uses theme default if not specified */\n strokeWidth?: number | string;\n /** Inline style */\n style?: Record<string, unknown> | string;\n };\n 'input': {\n type: 'input';\n /** error prop */\n error?: string;\n /** leftIcon prop */\n leftIcon?: unknown | string;\n /** rightIcon prop */\n rightIcon?: unknown | string;\n /** Lucide icon component for left side (convenience prop) */\n icon?: unknown | string;\n /** Show clear button when input has value */\n clearable?: boolean | string;\n /** Callback when clear button is clicked */\n onClear?: ((...args: unknown[]) => unknown) | string;\n /** Options for select type */\n options?: unknown[] | string;\n /** Rows for textarea type */\n rows?: number | string;\n /** onChange handler - accepts events from input, select, or textarea */\n onChange?: unknown | string;\n /** Input type - supports 'select' and 'textarea' in addition to standard types */\n inputType?: string;\n };\n 'input-group': {\n type: 'input-group';\n /** Left addon (icon, button, or text) */\n leftAddon?: unknown | unknown | string;\n /** Right addon (icon, button, or text) */\n rightAddon?: unknown | unknown | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'inventory-panel': {\n type: 'inventory-panel';\n /** Array of items in inventory */\n items: unknown[] | string;\n /** Total number of slots */\n slots: number | string;\n /** Number of columns in grid */\n columns: number | string;\n /** Currently selected slot index */\n selectedSlot?: number | string;\n /** Called when a slot is selected */\n onSelectSlot: ((...args: unknown[]) => unknown) | string;\n /** Called when an item is used (double-click or Enter) */\n onUseItem?: ((...args: unknown[]) => unknown) | string;\n /** Called when an item is dropped */\n onDropItem?: ((...args: unknown[]) => unknown) | string;\n /** Show item tooltips on hover */\n showTooltips?: boolean | string;\n /** Optional className */\n className?: string;\n /** Slot size in pixels */\n slotSize?: number | string;\n };\n 'isometric-canvas': {\n type: 'isometric-canvas';\n /** --- Closed-circuit props (MANDATORY) --- */\n className?: string;\n /** Loading state indicator */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** Entity name for schema-driven auto-fetch */\n entity?: string;\n /** --- Grid data --- */\n tiles?: unknown[] | string;\n /** Array of units on the board */\n units?: unknown[] | string;\n /** Array of features (resources, portals, buildings, etc.) */\n features?: unknown[] | string;\n /** --- Interaction state --- */\n selectedUnitId?: string;\n /** Valid move positions (shown as pulsing green highlights) */\n validMoves?: unknown[] | string;\n /** Attack target positions (shown as pulsing red highlights) */\n attackTargets?: unknown[] | string;\n /** Hovered tile position */\n hoveredTile?: Record<string, unknown> | string;\n /** --- Event handlers --- */\n onTileClick?: ((...args: unknown[]) => unknown) | string;\n /** Unit click handler */\n onUnitClick?: ((...args: unknown[]) => unknown) | string;\n /** Tile hover handler */\n onTileHover?: ((...args: unknown[]) => unknown) | string;\n /** Tile leave handler */\n onTileLeave?: ((...args: unknown[]) => unknown) | string;\n /** --- Rendering options --- */\n scale?: number | string;\n /** Show debug grid lines and coordinates */\n debug?: boolean | string;\n /** Background image URL tiled behind the isometric grid */\n backgroundImage?: string;\n /** Toggle minimap overlay */\n showMinimap?: boolean | string;\n /** Enable camera pan/zoom controls */\n enableCamera?: boolean | string;\n /** Extra scale multiplier for unit draw size. 1 = default. */\n unitScale?: number | string;\n /** --- Asset resolution (project-agnostic) --- */\n getTerrainSprite?: ((...args: unknown[]) => unknown) | string;\n /** Resolve feature sprite URL from feature type key */\n getFeatureSprite?: ((...args: unknown[]) => unknown) | string;\n /** Resolve unit static sprite URL */\n getUnitSprite?: ((...args: unknown[]) => unknown) | string;\n /** Resolve animated sprite sheet frame for a unit */\n resolveUnitFrame?: ((...args: unknown[]) => unknown) | string;\n /** Additional sprite URLs to preload (e.g., effect sprites) */\n effectSpriteUrls?: unknown[] | string;\n /** Callback to draw canvas effects after units */\n onDrawEffects?: ((...args: unknown[]) => unknown) | string;\n /** Whether there are active effects — keeps RAF loop alive */\n hasActiveEffects?: boolean | string;\n };\n 'label': {\n type: 'label';\n /** required prop */\n required?: boolean | string;\n };\n 'law-reference-tooltip': {\n type: 'law-reference-tooltip';\n /** The law reference to display */\n reference: unknown | string;\n /** Children element that triggers the tooltip */\n children: unknown | string;\n /** Tooltip position */\n position?: string;\n /** Additional CSS classes */\n className?: string;\n };\n 'layout-pattern': {\n type: 'layout-pattern';\n /** Nested pattern configurations - rendered recursively */\n children?: unknown | string;\n /** Additional CSS classes */\n className?: string;\n /** Inline styles */\n style?: Record<string, unknown> | string;\n };\n 'list-template': {\n type: 'list-template';\n /** Array of list items */\n items: unknown[] | string;\n /** Whether data is loading */\n isLoading?: boolean | string;\n /** Error object if loading failed */\n error?: unknown | string;\n /** Current filter value */\n filter?: unknown | string;\n /** Called when a new item is added */\n onAdd?: ((...args: unknown[]) => unknown) | string;\n /** Called when an item is toggled */\n onToggle?: ((...args: unknown[]) => unknown) | string;\n /** Called when an item is deleted */\n onDelete?: ((...args: unknown[]) => unknown) | string;\n /** Called when filter changes */\n onFilterChange?: ((...args: unknown[]) => unknown) | string;\n /** Called to retry loading */\n onRetry?: ((...args: unknown[]) => unknown) | string;\n /** Title displayed above the list */\n title?: string;\n /** Placeholder for the input field */\n placeholder?: string;\n /** Whether to show filter buttons */\n showFilters?: boolean | string;\n /** Whether to show item count */\n showCount?: boolean | string;\n /** Message shown when list is empty */\n emptyMessage?: string;\n /** Template variant */\n variant?: unknown | string;\n /** Additional class name */\n className?: string;\n };\n 'loading-state': {\n type: 'loading-state';\n /** title prop */\n title?: string;\n /** message prop */\n message?: string;\n /** className prop */\n className?: string;\n };\n 'master-detail': {\n type: 'master-detail';\n /** Master panel content (usually a list) */\n master: unknown | string;\n /** Detail panel content */\n detail: unknown | string;\n /** Content shown when nothing is selected */\n emptyDetail?: unknown | string;\n /** Whether an item is currently selected */\n hasSelection?: boolean | string;\n /** Width of master panel (e.g., '350px', '30%') */\n masterWidth?: string;\n /** Additional CSS classes */\n className?: string;\n /** Class for master pane */\n masterClassName?: string;\n /** Class for detail pane */\n detailClassName?: string;\n };\n 'media-gallery': {\n type: 'media-gallery';\n /** Gallery title */\n title?: string;\n /** Media items */\n items?: unknown | string;\n /** Schema-driven data */\n data?: unknown | string;\n /** Column count */\n columns?: number | string;\n /** Enable item selection */\n selectable?: boolean | string;\n /** Selected item IDs */\n selectedItems?: unknown | string;\n /** Selection change callback */\n onSelectionChange?: ((...args: unknown[]) => unknown) | string;\n /** Show upload button */\n showUpload?: boolean | string;\n /** Actions */\n actions?: unknown | string;\n /** Aspect ratio for thumbnails */\n aspectRatio?: string;\n /** Entity name for schema-driven auto-fetch */\n entity?: string;\n /** Loading state */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'menu': {\n type: 'menu';\n /** Menu trigger element */\n trigger: unknown | string;\n /** Menu items */\n items: unknown[] | string;\n /** Menu position */\n position?: unknown | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'meter': {\n type: 'meter';\n /** Current value */\n value: number | string;\n /** Minimum value */\n min?: number | string;\n /** Maximum value */\n max?: number | string;\n /** Display label */\n label?: string;\n /** Unit suffix (e.g., '%', 'MB', 'credits') */\n unit?: string;\n /** Display variant */\n variant?: unknown | string;\n /** Color thresholds */\n thresholds?: unknown | string;\n /** Number of segments (for segmented variant) */\n segments?: number | string;\n /** Show value text */\n showValue?: boolean | string;\n /** Size (for radial variant) */\n size?: string;\n /** Actions */\n actions?: unknown | string;\n /** Entity name for schema-driven auto-fetch */\n entity?: string;\n /** Loading state */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'modal': {\n type: 'modal';\n /** Whether the modal is open (defaults to true when rendered by slot wrapper) */\n isOpen?: boolean | string;\n /** Callback when modal should close (injected by slot wrapper) */\n onClose?: ((...args: unknown[]) => unknown) | string;\n /** title prop */\n title?: string;\n /** Modal content (can be empty if using slot content) */\n children?: unknown | string;\n /** footer prop */\n footer?: unknown | string;\n /** size prop */\n size?: unknown | string;\n /** showCloseButton prop */\n showCloseButton?: boolean | string;\n /** closeOnOverlayClick prop */\n closeOnOverlayClick?: boolean | string;\n /** closeOnEscape prop */\n closeOnEscape?: boolean | string;\n /** className prop */\n className?: string;\n };\n 'modal-slot': {\n type: 'modal-slot';\n /** Content to display in the modal */\n children?: unknown | string;\n /** Override modal title (extracted from children if not provided) */\n title?: string;\n /** Modal size */\n size?: string;\n /** Custom class name */\n className?: string;\n };\n 'navigation': {\n type: 'navigation';\n /** Navigation items */\n items: unknown[] | string;\n /** Navigation orientation @default 'horizontal' */\n orientation?: string;\n /** Additional CSS classes */\n className?: string;\n };\n 'notification': {\n type: 'notification';\n /** Toast variant */\n variant?: unknown | string;\n /** Toast message */\n message: string;\n /** Toast title (optional) */\n title?: string;\n /** Auto-dismiss duration in milliseconds (0 = no auto-dismiss) */\n duration?: number | string;\n /** Show dismiss button */\n dismissible?: boolean | string;\n /** Callback when toast is dismissed */\n onDismiss?: ((...args: unknown[]) => unknown) | string;\n /** Action button label */\n actionLabel?: string;\n /** Action button click handler */\n onAction?: ((...args: unknown[]) => unknown) | string;\n /** Badge count (optional) */\n badge?: string | number;\n /** Additional CSS classes */\n className?: string;\n };\n 'orbital-visualization': {\n type: 'orbital-visualization';\n /** Full KFlow schema object */\n schema?: Record<string, unknown> | string;\n /** Direct complexity override (1-100+) */\n complexity?: number | string;\n /** Size of the visualization */\n size?: string;\n /** Show complexity label */\n showLabel?: boolean | string;\n /** Animation enabled */\n animated?: boolean | string;\n /** Click handler */\n onClick?: ((...args: unknown[]) => unknown) | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'overlay': {\n type: 'overlay';\n /** isVisible prop */\n isVisible?: boolean | string;\n /** onClick prop */\n onClick?: ((...args: unknown[]) => unknown) | string;\n /** className prop */\n className?: string;\n /** blur prop */\n blur?: boolean | string;\n };\n 'page-header': {\n type: 'page-header';\n /** Page title - accepts unknown to handle generated code accessing dynamic entity data */\n title?: string | number | unknown;\n /** Optional subtitle/description */\n subtitle?: string | number | unknown;\n /** Show back button */\n showBack?: boolean | string;\n /** Event to emit when back is clicked (default: BACK) */\n backEvent?: string;\n /** Breadcrumbs */\n breadcrumbs?: unknown | string;\n /** Status badge */\n status?: Record<string, unknown> | string;\n /** Actions array - first action with variant='primary' (or first action) is the main action */\n actions?: unknown | string;\n /** Loading state indicator */\n isLoading?: boolean | string;\n /** Tabs for sub-navigation */\n tabs?: unknown[] | string;\n /** activeTab prop */\n activeTab?: string;\n /** onTabChange prop */\n onTabChange?: ((...args: unknown[]) => unknown) | string;\n /** Custom content in the header */\n children?: unknown | string;\n /** className prop */\n className?: string;\n };\n 'pagination': {\n type: 'pagination';\n /** Current page (1-indexed) */\n currentPage: number | string;\n /** Total number of pages */\n totalPages: number | string;\n /** Callback when page changes (optional - can be a no-op if not interactive) */\n onPageChange?: ((...args: unknown[]) => unknown) | string;\n /** Show page size selector @default false */\n showPageSize?: boolean | string;\n /** Page size options */\n pageSizeOptions?: unknown[] | string;\n /** Current page size */\n pageSize?: number | string;\n /** Callback when page size changes */\n onPageSizeChange?: ((...args: unknown[]) => unknown) | string;\n /** Show jump to page input @default false */\n showJumpToPage?: boolean | string;\n /** Show total count @default false */\n showTotal?: boolean | string;\n /** Total items count */\n totalItems?: number | string;\n /** Maximum number of page buttons to show @default 7 */\n maxVisiblePages?: number | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'popover': {\n type: 'popover';\n /** Popover content */\n content: unknown | string;\n /** Popover trigger element (ReactElement or ReactNode that will be wrapped in span) */\n children: unknown | string;\n /** Popover position @default 'bottom' */\n position?: unknown | string;\n /** Trigger type @default 'click' */\n trigger?: unknown | string;\n /** Show arrow @default true */\n showArrow?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'progress-bar': {\n type: 'progress-bar';\n /** Progress value (0-100) */\n value: number | string;\n /** Maximum value (for calculating percentage) @default 100 */\n max?: number | string;\n /** Variant/color of the progress bar @default 'primary' */\n variant?: unknown | string;\n /** Color variant (alias for variant) @default 'primary' */\n color?: unknown | string;\n /** Show percentage text @default false */\n showPercentage?: boolean | string;\n /** Alias for showPercentage (pattern compatibility) */\n showLabel?: boolean | string;\n /** Label text */\n label?: string;\n /** Size (for circular variant) @default 'md' */\n size?: string;\n /** Number of steps (for stepped variant) @default 5 */\n steps?: number | string;\n /** Additional CSS classes */\n className?: string;\n /** Type of the progress bar (linear, circular, stepped) @default 'linear' */\n progressType?: unknown | string;\n };\n 'radio': {\n type: 'radio';\n /** Label text displayed next to the radio button */\n label?: string;\n /** Helper text displayed below the radio button */\n helperText?: string;\n /** Error message displayed below the radio button */\n error?: string;\n /** Size of the radio button @default 'md' */\n size?: string;\n };\n 'relation-select': {\n type: 'relation-select';\n /** Current value (ID) */\n value?: string;\n /** Callback when value changes */\n onChange?: ((...args: unknown[]) => unknown) | string;\n /** Available options - accepts readonly for compatibility with generated const arrays */\n options: unknown | string;\n /** Placeholder text */\n placeholder?: string;\n /** Whether the field is required */\n required?: boolean | string;\n /** Whether the field is disabled */\n disabled?: boolean | string;\n /** Whether data is loading */\n isLoading?: boolean | string;\n /** Error message */\n error?: string;\n /** Allow clearing the selection */\n clearable?: boolean | string;\n /** Name attribute for forms */\n name?: string;\n /** Additional CSS classes */\n className?: string;\n /** Search placeholder */\n searchPlaceholder?: string;\n /** Empty state message */\n emptyMessage?: string;\n };\n 'repeatable-form-section': {\n type: 'repeatable-form-section';\n /** Section type identifier */\n sectionType: string;\n /** Section title */\n title: string;\n /** Items in the section */\n items: unknown[] | string;\n /** Render function for each item */\n renderItem: ((...args: unknown[]) => unknown) | string;\n /** Minimum items required */\n minItems?: number | string;\n /** Maximum items allowed */\n maxItems?: number | string;\n /** Allow reordering */\n allowReorder?: boolean | string;\n /** Add button label */\n addLabel?: string;\n /** Empty state message */\n emptyMessage?: string;\n /** Read-only mode */\n readOnly?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n /** Add handler */\n onAdd?: ((...args: unknown[]) => unknown) | string;\n /** Remove handler */\n onRemove?: ((...args: unknown[]) => unknown) | string;\n /** Reorder handler */\n onReorder?: ((...args: unknown[]) => unknown) | string;\n /** Inspection-specific enhancements */\n trackAddedInState?: boolean | string;\n /** Current inspection state (used when trackAddedInState is true) */\n currentState?: string;\n /** Show audit metadata (addedInState, addedAt) */\n showAuditInfo?: boolean | string;\n };\n 'runtime-debugger': {\n type: 'runtime-debugger';\n /** Initial position */\n position?: string;\n /** Initial collapsed state */\n defaultCollapsed?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'score-display': {\n type: 'score-display';\n /** Current score value */\n value: number | string;\n /** Label to display before score */\n label?: string;\n /** Icon component or emoji */\n icon?: unknown | string;\n /** Size variant */\n size?: string;\n /** Additional CSS classes */\n className?: string;\n /** Animation on value change */\n animated?: boolean | string;\n /** Number formatting locale */\n locale?: string;\n };\n 'search-input': {\n type: 'search-input';\n /** Search value (controlled mode) */\n value?: string;\n /** Callback when search value changes */\n onSearch?: ((...args: unknown[]) => unknown) | string;\n /** Debounce delay in milliseconds @default 300 */\n debounceMs?: number | string;\n /** Show loading state @default false */\n isLoading?: boolean | string;\n /** Placeholder text @default 'Search...' */\n placeholder?: string;\n /** Show clear button @default true */\n clearable?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n /** Event name to dispatch on search (schema metadata, wired by trait) This is metadata used by the trait generator, not by the component. */\n event?: string;\n /** Entity type for context-aware search. When provided, search events include entity context. */\n entity?: string;\n /** Query singleton binding for state management. When provided, syncs search state with the query singleton. Example: \"@TaskQuery\" */\n query?: string;\n };\n 'section': {\n type: 'section';\n /** Section title */\n title?: string;\n /** Section subtitle/description */\n description?: string;\n /** Action element (e.g., button, link) */\n action?: unknown | string;\n /** Padding amount */\n padding?: unknown | string;\n /** Visual variant */\n variant?: unknown | string;\n /** Show divider below header */\n divider?: boolean | string;\n /** Custom class name */\n className?: string;\n /** Children elements */\n children: unknown | string;\n /** Header custom class name */\n headerClassName?: string;\n /** Content custom class name */\n contentClassName?: string;\n /** HTML element to render as */\n as?: unknown | string;\n };\n 'select': {\n type: 'select';\n /** options prop */\n options: unknown[] | string;\n /** placeholder prop */\n placeholder?: string;\n /** error prop */\n error?: string;\n };\n 'settings-template': {\n type: 'settings-template';\n /** Current settings values */\n settings: Record<string, unknown> | string;\n /** Whether settings are being saved */\n isSaving?: boolean | string;\n /** Whether there are unsaved changes */\n hasChanges?: boolean | string;\n /** Error object if save failed */\n error?: unknown | string;\n /** Success message after save */\n successMessage?: string;\n /** Called when saving settings */\n onSave?: ((...args: unknown[]) => unknown) | string;\n /** Called when a setting value changes */\n onChange?: ((...args: unknown[]) => unknown) | string;\n /** Called to reset to default settings */\n onReset?: ((...args: unknown[]) => unknown) | string;\n /** Called to revert unsaved changes */\n onRevert?: ((...args: unknown[]) => unknown) | string;\n /** Called to dismiss success message */\n onDismissSuccess?: ((...args: unknown[]) => unknown) | string;\n /** Page title */\n title?: string;\n /** Settings sections */\n sections?: unknown[] | string;\n /** Whether to show reset to defaults button */\n showResetToDefaults?: boolean | string;\n /** Template variant */\n variant?: unknown | string;\n /** Additional class name */\n className?: string;\n };\n 'side-panel': {\n type: 'side-panel';\n /** Panel title */\n title: string;\n /** Panel content */\n children: unknown | string;\n /** Is panel open */\n isOpen: boolean | string;\n /** On close handler */\n onClose: ((...args: unknown[]) => unknown) | string;\n /** Panel width @default 'w-96' */\n width?: string;\n /** Panel position @default 'right' */\n position?: string;\n /** Show overlay on mobile @default true */\n showOverlay?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'sidebar': {\n type: 'sidebar';\n /** Logo/Brand content - can be a ReactNode or logo config */\n logo?: unknown | string;\n /** Logo image source */\n logoSrc?: string;\n /** Brand/App name */\n brandName?: string;\n /** Navigation items */\n items: unknown[] | string;\n /** User section content */\n userSection?: unknown | string;\n /** Footer content (e.g., theme toggle) */\n footerContent?: unknown | string;\n /** Collapsed state (controlled) */\n collapsed?: boolean | string;\n /** Default collapsed state */\n defaultCollapsed?: boolean | string;\n /** Callback when collapse state changes */\n onCollapseChange?: ((...args: unknown[]) => unknown) | string;\n /** Hide the collapse/expand button */\n hideCollapseButton?: boolean | string;\n /** Show a close button (for mobile) */\n showCloseButton?: boolean | string;\n /** Callback when close button is clicked */\n onClose?: ((...args: unknown[]) => unknown) | string;\n /** Callback when logo/brand is clicked */\n onLogoClick?: ((...args: unknown[]) => unknown) | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'signature-pad': {\n type: 'signature-pad';\n /** Label above the pad */\n label?: string;\n /** Helper text */\n helperText?: string;\n /** Stroke color */\n strokeColor?: string;\n /** Stroke width */\n strokeWidth?: number | string;\n /** Pad height */\n height?: number | string;\n /** Whether the pad is read-only */\n readOnly?: boolean | string;\n /** Existing signature image URL */\n value?: string;\n /** Callback when signature changes */\n onChange?: ((...args: unknown[]) => unknown) | string;\n /** Event to emit on sign */\n signEvent?: string;\n /** Event to emit on clear */\n clearEvent?: string;\n /** Entity name for schema-driven context */\n entity?: string;\n /** Loading state */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'simple-grid': {\n type: 'simple-grid';\n /** Minimum width of each child (e.g., 200, \"200px\", \"15rem\") */\n minChildWidth?: number | string;\n /** Maximum number of columns */\n maxCols?: number | string;\n /** Exact number of columns (disables auto-fit) */\n cols?: number | string;\n /** Gap between items */\n gap?: unknown | string;\n /** Custom class name */\n className?: string;\n /** Children elements */\n children: unknown | string;\n };\n 'spacer': {\n type: 'spacer';\n /** Fixed size (auto = flex grow) */\n size?: unknown | string;\n /** Orientation (for fixed sizes) */\n axis?: string;\n /** Custom class name */\n className?: string;\n };\n 'spinner': {\n type: 'spinner';\n /** size prop */\n size?: unknown | string;\n };\n 'split': {\n type: 'split';\n /** Size ratio between left and right panels */\n ratio?: unknown | string;\n /** Gap between panels */\n gap?: unknown | string;\n /** Reverse the order (right first) */\n reverse?: boolean | string;\n /** Stack vertically on mobile */\n stackOnMobile?: boolean | string;\n /** Breakpoint to switch from stacked to side-by-side */\n stackBreakpoint?: string;\n /** Align items vertically */\n align?: string;\n /** Custom class name */\n className?: string;\n /** Left/first panel class name */\n leftClassName?: string;\n /** Right/second panel class name */\n rightClassName?: string;\n /** Exactly two children: [left, right] */\n children: unknown | string;\n };\n 'split-pane': {\n type: 'split-pane';\n /** Direction of the split */\n direction?: string;\n /** Initial ratio (0-100, percentage of first pane) */\n ratio?: number | string;\n /** Minimum size of either pane in pixels */\n minSize?: number | string;\n /** Allow user resizing */\n resizable?: boolean | string;\n /** Content for the left/top pane */\n left: unknown | string;\n /** Content for the right/bottom pane */\n right: unknown | string;\n /** Additional CSS classes */\n className?: string;\n /** Class for left/top pane */\n leftClassName?: string;\n /** Class for right/bottom pane */\n rightClassName?: string;\n };\n 'sprite': {\n type: 'sprite';\n /** Spritesheet image URL */\n spritesheet: string;\n /** Width of each frame in pixels */\n frameWidth: number | string;\n /** Height of each frame in pixels */\n frameHeight: number | string;\n /** Frame index to display (0-based, left-to-right, top-to-bottom) */\n frame: number | string;\n /** X position in pixels */\n x: number | string;\n /** Y position in pixels */\n y: number | string;\n /** Scale factor (default: 1) */\n scale?: number | string;\n /** Flip horizontally */\n flipX?: boolean | string;\n /** Flip vertically */\n flipY?: boolean | string;\n /** Rotation in degrees */\n rotation?: number | string;\n /** Opacity (0-1) */\n opacity?: number | string;\n /** Z-index for layering */\n zIndex?: number | string;\n /** Number of columns in spritesheet (for frame calculation) */\n columns?: number | string;\n /** Optional className */\n className?: string;\n /** Optional onClick handler */\n onClick?: ((...args: unknown[]) => unknown) | string;\n };\n 'stack': {\n type: 'stack';\n /** Stack direction */\n direction?: unknown | string;\n /** Gap between children */\n gap?: unknown | string;\n /** Align items on the cross axis */\n align?: unknown | string;\n /** Justify items on the main axis */\n justify?: unknown | string;\n /** Allow items to wrap */\n wrap?: boolean | string;\n /** Reverse the order of children */\n reverse?: boolean | string;\n /** Fill available space (flex: 1) */\n flex?: boolean | string;\n /** Custom class name */\n className?: string;\n /** Inline styles */\n style?: Record<string, unknown> | string;\n /** Children elements */\n children?: unknown | string;\n /** HTML element to render as */\n as?: unknown | string;\n /** Click handler */\n onClick?: ((...args: unknown[]) => unknown) | string;\n /** Keyboard handler */\n onKeyDown?: ((...args: unknown[]) => unknown) | string;\n /** Role for accessibility */\n role?: string;\n /** Tab index for focus management */\n tabIndex?: number | string;\n };\n 'stat-badge': {\n type: 'stat-badge';\n /** Stat label */\n label: string;\n /** Current value (defaults to 0 if not provided) */\n value?: number | string;\n /** Maximum value (for bar/hearts format) */\n max?: number | string;\n /** Data source entity name (for schema config) */\n source?: string;\n /** Field name in the source (for schema config) */\n field?: string;\n /** Display format */\n format?: string;\n /** Icon component or emoji */\n icon?: unknown | string;\n /** Size variant */\n size?: string;\n /** Visual variant */\n variant?: string;\n /** Additional CSS classes */\n className?: string;\n };\n 'stats': {\n type: 'stats';\n /** Main label */\n label?: string;\n /** Title (alias for label) */\n title?: string;\n /** Primary value - accepts array/unknown from generated code (will use first element or length) */\n value?: string | number | unknown[] | unknown;\n /** Previous value for comparison */\n previousValue?: number | string;\n /** Current value as number for trend calculation */\n currentValue?: number | string;\n /** Manual trend percentage (overrides calculation) */\n trend?: number | string;\n /** Trend direction (overrides calculation) */\n trendDirection?: string;\n /** Whether up is good (green) or bad (red) */\n invertTrend?: boolean | string;\n /** Icon to display */\n icon?: unknown | string;\n /** Icon background color */\n iconBg?: string;\n /** Icon color */\n iconColor?: string;\n /** Subtitle or description */\n subtitle?: string;\n /** Action button */\n action?: Record<string, unknown> | string;\n /** className prop */\n className?: string;\n /** Schema-based props */\n entity?: string;\n /** Metrics to display (schema format) - accepts readonly for compatibility with generated const arrays */\n metrics?: unknown | string;\n /** Data to calculate stats from - accepts readonly for compatibility with generated const arrays */\n data?: unknown | string;\n /** Loading state indicator */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n };\n 'switch': {\n type: 'switch';\n /** checked prop */\n checked?: boolean | string;\n /** defaultChecked prop */\n defaultChecked?: boolean | string;\n /** onChange prop */\n onChange?: ((...args: unknown[]) => unknown) | string;\n /** disabled prop */\n disabled?: boolean | string;\n /** label prop */\n label?: string;\n /** id prop */\n id?: string;\n /** name prop */\n name?: string;\n /** className prop */\n className?: string;\n };\n 'tabbed-container': {\n type: 'tabbed-container';\n /** Tab definitions */\n tabs: unknown[] | string;\n /** Default active tab ID */\n defaultTab?: string;\n /** Controlled active tab */\n activeTab?: string;\n /** Callback when tab changes */\n onTabChange?: ((...args: unknown[]) => unknown) | string;\n /** Tab position */\n position?: string;\n /** Additional CSS classes */\n className?: string;\n };\n 'table': {\n type: 'table';\n /** Table columns */\n columns: unknown[] | string;\n /** Table entity data */\n entity: unknown[] | string;\n /** Row key getter */\n getRowKey: ((...args: unknown[]) => unknown) | string;\n /** Enable row selection @default false */\n selectable?: boolean | string;\n /** Selected row keys */\n selectedRows?: unknown[] | string;\n /** Callback when selection changes */\n onSelectionChange?: ((...args: unknown[]) => unknown) | string;\n /** Enable sorting @default false */\n sortable?: boolean | string;\n /** Current sort column */\n sortColumn?: string;\n /** Current sort direction */\n sortDirection?: unknown | string;\n /** Callback when sort changes */\n onSortChange?: ((...args: unknown[]) => unknown) | string;\n /** Enable search/filter @default false */\n searchable?: boolean | string;\n /** Search placeholder */\n searchPlaceholder?: string;\n /** Enable pagination @default false */\n paginated?: boolean | string;\n /** Current page */\n currentPage?: number | string;\n /** Total pages */\n totalPages?: number | string;\n /** Callback when page changes */\n onPageChange?: ((...args: unknown[]) => unknown) | string;\n /** Row actions menu items */\n rowActions?: ((...args: unknown[]) => unknown) | string;\n /** Empty state message */\n emptyMessage?: string;\n /** Loading state @default false */\n loading?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'tabs': {\n type: 'tabs';\n /** Tab items */\n items?: unknown[] | string;\n /** Tab items (alias for items - used by generated code) */\n tabs?: unknown[] | string;\n /** Default active tab ID */\n defaultActiveTab?: string;\n /** Controlled active tab ID */\n activeTab?: string;\n /** Callback when tab changes */\n onTabChange?: ((...args: unknown[]) => unknown) | string;\n /** Tab variant */\n variant?: string;\n /** Tab orientation */\n orientation?: string;\n /** Additional CSS classes */\n className?: string;\n };\n 'text-highlight': {\n type: 'text-highlight';\n /** Whether the highlight is currently active/focused @default false */\n isActive?: boolean | string;\n /** Callback when highlight is clicked */\n onClick?: ((...args: unknown[]) => unknown) | string;\n /** Callback when highlight is hovered */\n onMouseEnter?: ((...args: unknown[]) => unknown) | string;\n /** Callback when hover ends */\n onMouseLeave?: ((...args: unknown[]) => unknown) | string;\n /** Unique ID for the annotation */\n annotationId?: string;\n /** Additional CSS classes */\n className?: string;\n /** Highlighted text content */\n children: unknown | string;\n /** Type of highlight (determines color) */\n highlightType: unknown | string;\n };\n 'textarea': {\n type: 'textarea';\n /** error prop */\n error?: string;\n };\n 'theme-toggle': {\n type: 'theme-toggle';\n /** Additional CSS classes */\n className?: string;\n /** Size variant */\n size?: string;\n /** Show label text */\n showLabel?: boolean | string;\n };\n 'timeline': {\n type: 'timeline';\n /** Timeline title */\n title?: string;\n /** Timeline items */\n items?: unknown | string;\n /** Schema-driven data */\n data?: unknown | string;\n /** Fields to display */\n fields?: unknown | string;\n /** Actions per item */\n itemActions?: unknown | string;\n /** Entity name for schema-driven auto-fetch */\n entity?: string;\n /** Loading state */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'toast-slot': {\n type: 'toast-slot';\n /** Content to display in the toast (message or ReactNode) */\n children?: unknown | string;\n /** Toast variant */\n variant?: unknown | string;\n /** Toast title */\n title?: string;\n /** Auto-dismiss duration in ms (0 = no auto-dismiss) */\n duration?: number | string;\n /** Custom class name */\n className?: string;\n };\n 'tooltip': {\n type: 'tooltip';\n /** Tooltip content */\n content: unknown | string;\n /** Tooltip trigger element (ReactElement or ReactNode that will be wrapped in span) */\n children: unknown | string;\n /** Tooltip position */\n position?: unknown | string;\n /** Show delay in milliseconds */\n delay?: number | string;\n /** Hide delay in milliseconds */\n hideDelay?: number | string;\n /** Show arrow */\n showArrow?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'typography': {\n type: 'typography';\n /** Typography variant */\n variant?: unknown | string;\n /** Heading level (1-6) - alternative to variant for headings */\n level?: number | string;\n /** Text color */\n color?: string;\n /** Text alignment */\n align?: string;\n /** Font weight override */\n weight?: string;\n /** Font size override */\n size?: unknown | string;\n /** Truncate with ellipsis (single line) */\n truncate?: boolean | string;\n /** Overflow handling mode */\n overflow?: string;\n /** Custom HTML element */\n as?: unknown | string;\n /** HTML id attribute */\n id?: string;\n /** Additional class names */\n className?: string;\n /** Inline style */\n style?: Record<string, unknown> | string;\n /** Text content (alternative to children) */\n content?: unknown | string;\n /** Children elements */\n children?: unknown | string;\n };\n 'u-i-slot-renderer': {\n type: 'u-i-slot-renderer';\n /** Include HUD slots */\n includeHud?: boolean | string;\n /** Include floating slot */\n includeFloating?: boolean | string;\n /** Additional class name for the container */\n className?: string;\n };\n 'violation-alert': {\n type: 'violation-alert';\n /** Violation data */\n violation: unknown | string;\n /** Visual severity (derived from actionType if not specified) */\n severity?: string;\n /** Dismissible alert */\n dismissible?: boolean | string;\n /** Dismiss handler */\n onDismiss?: ((...args: unknown[]) => unknown) | string;\n /** Navigate to the field that caused violation */\n onNavigateToField?: ((...args: unknown[]) => unknown) | string;\n /** Compact display mode */\n compact?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'wizard-container': {\n type: 'wizard-container';\n /** Wizard steps */\n steps: unknown[] | string;\n /** Current step index (controlled) - accepts unknown for generated code compatibility */\n currentStep?: number | string | unknown;\n /** Callback when step changes */\n onStepChange?: ((...args: unknown[]) => unknown) | string;\n /** Callback when wizard is completed */\n onComplete?: ((...args: unknown[]) => unknown) | string;\n /** Show progress indicator */\n showProgress?: boolean | string;\n /** Allow navigation to previous steps */\n allowBack?: boolean | string;\n /** Modal mode (compact header, no padding) */\n compact?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n /** Entity type name (schema-driven) */\n entity?: string;\n };\n 'wizard-navigation': {\n type: 'wizard-navigation';\n /** Current step index (0-based) */\n currentStep: number | string;\n /** Total number of steps */\n totalSteps: number | string;\n /** Whether the current step is valid (enables Next/Complete) */\n isValid?: boolean | string;\n /** Show the Back button */\n showBack?: boolean | string;\n /** Show the Next button */\n showNext?: boolean | string;\n /** Show the Complete button (on last step) */\n showComplete?: boolean | string;\n /** Custom label for Back button */\n backLabel?: string;\n /** Custom label for Next button */\n nextLabel?: string;\n /** Custom label for Complete button */\n completeLabel?: string;\n /** Event to emit on Back click */\n onBack?: string;\n /** Event to emit on Next click */\n onNext?: string;\n /** Event to emit on Complete click */\n onComplete?: string;\n /** Direct callback for Back (alternative to event) */\n onBackClick?: ((...args: unknown[]) => unknown) | string;\n /** Direct callback for Next (alternative to event) */\n onNextClick?: ((...args: unknown[]) => unknown) | string;\n /** Direct callback for Complete (alternative to event) */\n onCompleteClick?: ((...args: unknown[]) => unknown) | string;\n /** Compact mode (smaller padding) */\n compact?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'wizard-progress': {\n type: 'wizard-progress';\n /** Step definitions (compatible with WizardContainer's WizardStep) */\n steps: unknown[] | string;\n /** Current step index (0-based) */\n currentStep: number | string;\n /** Callback when a completed step is clicked */\n onStepClick?: ((...args: unknown[]) => unknown) | string;\n /** Allow clicking on completed steps to navigate back */\n allowNavigation?: boolean | string;\n /** Compact mode (smaller, no titles) */\n compact?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n };\n}\n\n/**\n * Get the props type for a specific pattern.\n * \n * @example\n * type TableProps = PatternProps<'entity-table'>;\n * // { type: 'entity-table'; columns: unknown[]; data?: Record<string, unknown>; ... }\n */\nexport type PatternProps<T extends PatternType> = PatternPropsMap[T];\n\n/**\n * Type-safe pattern configuration.\n * The props are validated based on the pattern type.\n * \n * @example\n * // ✅ Valid\n * const config: PatternConfig<'entity-table'> = { \n * type: 'entity-table', \n * columns: ['name', 'email'] \n * };\n * \n * // ❌ Error: Property 'columns' is missing\n * const bad: PatternConfig<'entity-table'> = { type: 'entity-table' };\n */\nexport type PatternConfig<T extends PatternType = PatternType> = PatternPropsMap[T];\n\n/**\n * Discriminated union of all pattern configs.\n * Use when the pattern type is not known statically.\n */\nexport type AnyPatternConfig = PatternPropsMap[PatternType];\n\n/**\n * Array of all pattern type names (for runtime validation)\n */\nexport const PATTERN_TYPES: PatternType[] = [\n 'accordion',\n 'action-buttons',\n 'alert',\n 'auth-layout',\n 'avatar',\n 'badge',\n 'box',\n 'breadcrumb',\n 'button',\n 'button-pattern',\n 'canvas-effect',\n 'card',\n 'center',\n 'chart',\n 'checkbox',\n 'code-viewer',\n 'conditional-wrapper',\n 'confirm-dialog',\n 'container',\n 'control-button',\n 'counter-template',\n 'crud-template',\n 'custom-pattern',\n 'd-pad',\n 'dashboard-grid',\n 'dashboard-layout',\n 'detail-panel',\n 'dialogue-box',\n 'divider',\n 'document-viewer',\n 'drawer',\n 'drawer-slot',\n 'empty-state',\n 'entity-cards',\n 'entity-list',\n 'entity-table',\n 'error-state',\n 'filter-group',\n 'flex',\n 'floating-action-button',\n 'form',\n 'form-actions',\n 'form-field',\n 'form-section',\n 'form-section-header',\n 'form-template',\n 'game-hud',\n 'game-menu',\n 'game-over-screen',\n 'game-shell',\n 'game-template',\n 'generic-app-template',\n 'graph-canvas',\n 'grid',\n 'header',\n 'health-bar',\n 'icon',\n 'input',\n 'input-group',\n 'inventory-panel',\n 'isometric-canvas',\n 'label',\n 'law-reference-tooltip',\n 'layout-pattern',\n 'list-template',\n 'loading-state',\n 'master-detail',\n 'media-gallery',\n 'menu',\n 'meter',\n 'modal',\n 'modal-slot',\n 'navigation',\n 'notification',\n 'orbital-visualization',\n 'overlay',\n 'page-header',\n 'pagination',\n 'popover',\n 'progress-bar',\n 'radio',\n 'relation-select',\n 'repeatable-form-section',\n 'runtime-debugger',\n 'score-display',\n 'search-input',\n 'section',\n 'select',\n 'settings-template',\n 'side-panel',\n 'sidebar',\n 'signature-pad',\n 'simple-grid',\n 'spacer',\n 'spinner',\n 'split',\n 'split-pane',\n 'sprite',\n 'stack',\n 'stat-badge',\n 'stats',\n 'switch',\n 'tabbed-container',\n 'table',\n 'tabs',\n 'text-highlight',\n 'textarea',\n 'theme-toggle',\n 'timeline',\n 'toast-slot',\n 'tooltip',\n 'typography',\n 'u-i-slot-renderer',\n 'violation-alert',\n 'wizard-container',\n 'wizard-navigation',\n 'wizard-progress',\n];\n\n/**\n * Check if a string is a valid pattern type\n */\nexport function isValidPatternType(type: string): type is PatternType {\n return PATTERN_TYPES.includes(type as PatternType);\n}\n","/**\n * Prompt Helpers for @almadar/patterns\n * \n * Helper functions for generating prompts/documentation from pattern registry.\n * Used by @almadar/skills package and other tools.\n * \n * @packageDocumentation\n */\n\nimport { patternsRegistry } from '../index.js';\nimport type { PatternType } from '../pattern-types.js';\n\n/**\n * Get patterns grouped by category.\n * Categories are derived from pattern registry metadata.\n */\nexport function getPatternsGroupedByCategory(): Record<string, PatternType[]> {\n const patterns = patternsRegistry.patterns || {};\n const grouped: Record<string, PatternType[]> = {};\n\n for (const [patternName, patternDef] of Object.entries(patterns)) {\n const category = (patternDef as any).category || 'uncategorized';\n if (!grouped[category]) {\n grouped[category] = [];\n }\n grouped[category].push(patternName as PatternType);\n }\n\n return grouped;\n}\n\n/**\n * Get compact pattern props reference table.\n * Generates markdown table of pattern names and their key props.\n */\nexport function getPatternPropsCompact(): string {\n const patterns = patternsRegistry.patterns || {};\n const lines: string[] = [\n '| Pattern | Key Props |',\n '|---------|-----------|',\n ];\n\n for (const [patternName, patternDef] of Object.entries(patterns)) {\n const propsSchema = (patternDef as any).propsSchema || {};\n const requiredProps = Object.keys(propsSchema).filter(\n (key) => propsSchema[key]?.required === true\n );\n const keyProps = requiredProps.length > 0 \n ? requiredProps.join(', ') \n : Object.keys(propsSchema).slice(0, 3).join(', ');\n \n lines.push(`| ${patternName} | ${keyProps} |`);\n }\n\n return lines.join('\\n');\n}\n\n/**\n * Get pattern action props reference.\n * Lists patterns that have action/event props (buttons, forms, etc.).\n */\nexport function getPatternActionsRef(): string {\n const patterns = patternsRegistry.patterns || {};\n const lines: string[] = [\n '## Pattern Action Props',\n '',\n '| Pattern | Action Props | Notes |',\n '|---------|-------------|-------|',\n ];\n\n for (const [patternName, patternDef] of Object.entries(patterns)) {\n const propsSchema = (patternDef as any).propsSchema || {};\n const actionProps: string[] = [];\n\n // Check for common action prop patterns\n for (const [propName, propDef] of Object.entries(propsSchema)) {\n if (\n propName.includes('action') ||\n propName.includes('Action') ||\n propName.includes('event') ||\n propName.includes('Event') ||\n propName === 'onSubmit' ||\n propName === 'onClick'\n ) {\n actionProps.push(propName);\n }\n }\n\n if (actionProps.length > 0) {\n const notes = (patternDef as any).description || '';\n lines.push(`| ${patternName} | ${actionProps.join(', ')} | ${notes.slice(0, 50)} |`);\n }\n }\n\n return lines.join('\\n');\n}\n\n/**\n * Generate pattern description from metadata.\n * Auto-generates human-readable description from pattern props schema.\n */\nexport function generatePatternDescription(patternType: string): string {\n const patterns = patternsRegistry.patterns as Record<string, any> || {};\n const patternDef = patterns[patternType];\n \n if (!patternDef) {\n return patternType;\n }\n\n const desc = patternDef.description;\n if (desc) {\n return desc;\n }\n\n // Auto-generate from props\n const propsSchema = patternDef.propsSchema || {};\n const propCount = Object.keys(propsSchema).length;\n const requiredProps = Object.keys(propsSchema).filter(\n (key) => propsSchema[key]?.required === true\n );\n\n if (requiredProps.length > 0) {\n return `${patternType} (requires: ${requiredProps.join(', ')})`;\n }\n\n return `${patternType} (${propCount} props)`;\n}\n\n/**\n * Get all pattern types as array.\n */\nexport function getAllPatternTypes(): PatternType[] {\n const patterns = patternsRegistry.patterns as Record<string, any> || {};\n return Object.keys(patterns) as PatternType[];\n}\n\n/**\n * Get pattern metadata for a specific pattern.\n */\nexport function getPatternMetadata(patternType: string) {\n const patterns = patternsRegistry.patterns as Record<string, any> || {};\n return patterns[patternType] || null;\n}\n","import patternsRegistry from './patterns-registry.json' with { type: 'json' };\nimport integratorsRegistry from './integrators-registry.json' with { type: 'json' };\nimport componentMapping from './component-mapping.json' with { type: 'json' };\nimport eventContracts from './event-contracts.json' with { type: 'json' };\n\n// Export both registries\nexport { patternsRegistry, integratorsRegistry, componentMapping, eventContracts };\n\n// Export pattern types for compile-time validation\nexport {\n PatternType,\n PatternPropsMap,\n PatternProps,\n PatternConfig,\n AnyPatternConfig,\n PATTERN_TYPES,\n isValidPatternType,\n} from './pattern-types.js';\n\n// Backwards compatible alias - registry refers to patterns registry\nexport const registry = patternsRegistry;\n\nexport const PATTERN_REGISTRY = patternsRegistry;\nexport const INTEGRATORS_REGISTRY = integratorsRegistry;\nexport const COMPONENT_MAPPING = componentMapping;\nexport const EVENT_CONTRACTS = eventContracts;\n\nexport function getPatternDefinition(patternType: string) {\n return (patternsRegistry as any).patterns?.[patternType] ?? null;\n}\n\nexport function getComponentForPattern(patternType: string) {\n return (componentMapping as any).mappings?.[patternType] ?? null;\n}\n\n/**\n * Check if a pattern is entity-aware (requires data injection).\n *\n * Entity-aware patterns:\n * 1. Have `entityAware: true` in the registry (explicit flag)\n * 2. OR have both `entity` and `data` props in propsSchema (auto-detection fallback)\n *\n * @param patternType - Pattern type to check\n * @returns true if the pattern is entity-aware\n */\nexport function isEntityAwarePattern(patternType: string): boolean {\n const definition = getPatternDefinition(patternType);\n if (!definition) return false;\n\n // Explicit flag takes precedence\n if (definition.entityAware === true) return true;\n\n // Auto-detect based on props (fallback)\n const propsSchema = definition.propsSchema;\n if (!propsSchema) return false;\n\n // If pattern has both 'entity' and ('data' or 'items') props, it's likely entity-aware\n const hasEntityProp = 'entity' in propsSchema;\n const hasDataProp = 'data' in propsSchema || 'items' in propsSchema;\n\n return hasEntityProp && hasDataProp;\n}\n\n// Export prompt helpers for @almadar/skills\nexport {\n getPatternsGroupedByCategory,\n getPatternPropsCompact,\n getPatternActionsRef,\n generatePatternDescription,\n getAllPatternTypes,\n getPatternMetadata,\n} from './helpers/prompt-helpers.js';\n"]}
1
+ {"version":3,"sources":["../src/patterns-registry.json","../src/integrators-registry.json","../src/component-mapping.json","../src/event-contracts.json","../src/pattern-types.ts","../src/helpers/prompt-helpers.ts","../src/helpers/pattern-recommender.ts","../src/index.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["{\n \"version\": \"1.0.0\",\n \"exportedAt\": \"2026-02-10T15:35:56.769Z\",\n \"patterns\": {\n \"entity-table\": {\n \"type\": \"entity-table\",\n \"category\": \"display\",\n \"description\": \"Data table with columns and sorting\",\n \"suggestedFor\": [\n \"data-dense views\",\n \"comparisons\",\n \"admin panels\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"fields\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Fields to display - accepts string[] or Column[] for unified interface. Alias for columns\"\n },\n \"columns\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Columns can be Column objects or simple string field names - accepts readonly for generated const arrays\"\n },\n \"data\": {\n \"types\": [\n \"unknown\",\n \"array\"\n ],\n \"description\": \"Data array - primary prop for data. Accepts readonly or mutable arrays, and unknown for generated components\"\n },\n \"entity\": {\n \"types\": [\n \"string\",\n \"unknown\",\n \"array\"\n ],\n \"description\": \"Entity name for auto-fetch OR data array (backwards compatible)\"\n },\n \"itemActions\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Item actions from generated code - maps to rowActions\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state indicator\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"emptyIcon\": {\n \"types\": [\n \"icon\"\n ],\n \"description\": \"emptyIcon prop\"\n },\n \"emptyTitle\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"emptyTitle prop\"\n },\n \"emptyDescription\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"emptyDescription prop\"\n },\n \"emptyAction\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"emptyAction prop\"\n },\n \"selectable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Selection\"\n },\n \"selectedIds\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"selectedIds prop\"\n },\n \"onSelectionChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onSelectionChange prop\"\n },\n \"sortBy\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Sorting\"\n },\n \"sortDirection\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"sortDirection prop\"\n },\n \"onSort\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onSort prop\"\n },\n \"pagination\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Pagination (manual control)\"\n },\n \"enablePagination\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Server-side pagination (automatic when enabled)\"\n },\n \"defaultPageSize\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Items per page for automatic pagination (default: 20)\"\n },\n \"showTotal\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show total count in pagination\"\n },\n \"searchable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Search\"\n },\n \"searchValue\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"searchValue prop\"\n },\n \"onSearch\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onSearch prop\"\n },\n \"searchPlaceholder\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"searchPlaceholder prop\"\n },\n \"onRowClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Row click navigation\"\n },\n \"rowActions\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Row actions\"\n },\n \"bulkActions\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Bulk actions\"\n },\n \"headerActions\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Header actions\"\n },\n \"query\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Query singleton binding for filter/sort state. When provided, syncs with the query singleton for filtering and sorting. Example: \\\"@TaskQuery\\\"\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n }\n }\n },\n \"entity-list\": {\n \"type\": \"entity-list\",\n \"category\": \"display\",\n \"description\": \"Vertical list of items\",\n \"suggestedFor\": [\n \"mobile-friendly lists\",\n \"simple item browsing\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"entity\": {\n \"types\": [\n \"array\",\n \"unknown\",\n \"string\"\n ],\n \"description\": \"Entity name for auto-fetch OR data array (backwards compatible)\"\n },\n \"data\": {\n \"types\": [\n \"array\",\n \"unknown\"\n ],\n \"description\": \"Data array - primary prop for data\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"selectable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"selectable prop\"\n },\n \"selectedItems\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"selectedItems prop\"\n },\n \"onSelectionChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onSelectionChange prop\"\n },\n \"itemActions\": {\n \"types\": [\n \"function\",\n \"unknown\"\n ],\n \"description\": \"Item actions - schema-driven or function-based\"\n },\n \"showDividers\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"showDividers prop\"\n },\n \"variant\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"variant prop\"\n },\n \"emptyMessage\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"emptyMessage prop\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n },\n \"renderItem\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"renderItem prop\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"children prop\"\n },\n \"onItemAction\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onItemAction prop\"\n },\n \"onRowClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onRowClick prop\"\n },\n \"fields\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Fields to display - accepts string[] or {key, header}[] for unified interface\"\n },\n \"fieldNames\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Alias for fields - backwards compatibility\"\n },\n \"query\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Query singleton binding for filter/sort state. When provided, syncs with the query singleton for filtering and sorting. Example: \\\"@TaskQuery\\\"\"\n },\n \"entityType\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity type name for display\"\n }\n }\n },\n \"entity-cards\": {\n \"type\": \"entity-cards\",\n \"category\": \"display\",\n \"description\": \"Grid of cards for visual content\",\n \"suggestedFor\": [\n \"visual items\",\n \"images\",\n \"previews\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"minCardWidth\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Minimum width of each card (default: 280px)\"\n },\n \"maxCols\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Maximum number of columns\"\n },\n \"gap\": {\n \"types\": [\n \"cardgridgap\"\n ],\n \"description\": \"Gap between cards\"\n },\n \"alignItems\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Align cards vertically in their cells\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Children elements (cards) - optional when using entity/data props\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity type for data-bound usage\"\n },\n \"fields\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Fields to display - accepts string[] or {key, header}[] for unified interface\"\n },\n \"fieldNames\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Alias for fields - backwards compatibility\"\n },\n \"columns\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Alias for fields - backwards compatibility\"\n },\n \"data\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Data array for data-bound usage - accepts readonly for generated const arrays\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state indicator\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"itemActions\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Actions for each card item (schema-driven)\"\n },\n \"onCardClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when a card is clicked\"\n },\n \"enablePagination\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Enable server-side pagination\"\n },\n \"pageSize\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Items per page (default: 20)\"\n },\n \"showTotal\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show total count in pagination\"\n },\n \"filter\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Filter configuration for entity data\"\n },\n \"query\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Query singleton binding for filter/sort state. When provided, syncs with the query singleton for filtering and sorting. Example: \\\"@TaskQuery\\\"\"\n }\n }\n },\n \"detail-panel\": {\n \"type\": \"detail-panel\",\n \"category\": \"display\",\n \"description\": \"Detail view panel for drawers/sidebars\",\n \"suggestedFor\": [\n \"drawer content\",\n \"side panels\",\n \"quick view\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"title prop\"\n },\n \"subtitle\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"subtitle prop\"\n },\n \"status\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"status prop\"\n },\n \"avatar\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"avatar prop\"\n },\n \"sections\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"sections prop\"\n },\n \"actions\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Unified actions array - first action with variant='primary' is the main action\"\n },\n \"footer\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"footer prop\"\n },\n \"slideOver\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"slideOver prop\"\n },\n \"onClose\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onClose prop\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Schema-based props\"\n },\n \"fields\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Fields to display - accepts string[] or {key, header}[] for unified interface\"\n },\n \"fieldNames\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Alias for fields - backwards compatibility\"\n },\n \"data\": {\n \"types\": [\n \"object\",\n \"unknown\"\n ],\n \"description\": \"data prop\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"isLoading prop\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"error prop\"\n },\n \"position\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Panel position (for drawer/sidebar placement)\"\n },\n \"width\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Panel width (CSS value, e.g., '400px', '50%')\"\n }\n }\n },\n \"page-header\": {\n \"type\": \"page-header\",\n \"category\": \"header\",\n \"description\": \"Page title with optional breadcrumb and action buttons\",\n \"suggestedFor\": [\n \"list pages\",\n \"detail pages\",\n \"dashboards\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\",\n \"number\",\n \"unknown\"\n ],\n \"description\": \"Page title - accepts unknown to handle generated code accessing dynamic entity data\"\n },\n \"subtitle\": {\n \"types\": [\n \"string\",\n \"number\",\n \"unknown\"\n ],\n \"description\": \"Optional subtitle/description\"\n },\n \"showBack\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show back button\"\n },\n \"backEvent\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Event to emit when back is clicked (default: BACK)\"\n },\n \"breadcrumbs\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Breadcrumbs\"\n },\n \"status\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Status badge\"\n },\n \"actions\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Actions array - first action with variant='primary' (or first action) is the main action\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state indicator\"\n },\n \"tabs\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Tabs for sub-navigation\"\n },\n \"activeTab\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"activeTab prop\"\n },\n \"onTabChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onTabChange prop\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Custom content in the header\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n }\n }\n },\n \"form\": {\n \"type\": \"form\",\n \"category\": \"form\",\n \"description\": \"Complete form with fields and actions\",\n \"suggestedFor\": [\n \"create forms\",\n \"edit forms\",\n \"data entry\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Form fields (traditional React children)\"\n },\n \"onSubmit\": {\n \"types\": [\n \"function\",\n \"string\"\n ],\n \"description\": \"Submit handler - receives form data, or event name string for trait dispatch\"\n },\n \"onCancel\": {\n \"types\": [\n \"function\",\n \"string\"\n ],\n \"description\": \"Cancel handler - function or event name string for trait dispatch\"\n },\n \"layout\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Form layout\"\n },\n \"gap\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Gap between fields\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Schema-based props\"\n },\n \"mode\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Form mode - 'create' for new records, 'edit' for updating existing\"\n },\n \"fields\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Fields definition (schema format) - accepts readonly for generated const arrays\"\n },\n \"initialData\": {\n \"types\": [\n \"object\",\n \"unknown\"\n ],\n \"description\": \"Initial form data\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"submitLabel\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Submit button label\"\n },\n \"cancelLabel\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Cancel button label (if provided, shows cancel button)\"\n },\n \"showCancel\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show cancel button (defaults to true for schema forms)\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Form title (used by ModalSlot to extract title)\"\n },\n \"submitEvent\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Event dispatch props (for trait state machine integration)\"\n },\n \"cancelEvent\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Event to dispatch on cancel (defaults to 'CANCEL')\"\n },\n \"relationsData\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Relation data props\"\n },\n \"relationsLoading\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Loading state for relation data: { fieldName: boolean }\"\n },\n \"conditionalFields\": {\n \"types\": [\n \"object\",\n \"boolean\"\n ],\n \"description\": \"Inspection form extensions\"\n },\n \"hiddenCalculations\": {\n \"types\": [\n \"array\",\n \"boolean\"\n ],\n \"description\": \"Hidden calculations that emit GLOBAL_VARIABLE_SET on field change (boolean true means enabled but config loaded separately)\"\n },\n \"violationTriggers\": {\n \"types\": [\n \"array\",\n \"boolean\"\n ],\n \"description\": \"Violation conditions that emit VIOLATION_DETECTED when met (boolean true means enabled but config loaded separately)\"\n },\n \"evaluationContext\": {\n \"types\": [\n \"formevaluationcontext\",\n \"object\"\n ],\n \"description\": \"Context for S-expression evaluation - accepts flexible types from generated code\"\n },\n \"sections\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Nested form sections with optional conditions\"\n },\n \"onFieldChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when any field value changes\"\n },\n \"configPath\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Config path for form configuration (schema-driven)\"\n },\n \"repeatable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the form supports repeatable entries\"\n }\n }\n },\n \"form-section\": {\n \"type\": \"form-section\",\n \"category\": \"form\",\n \"description\": \"Alias for form — Complete form with fields and actions\",\n \"suggestedFor\": [\n \"create forms\",\n \"edit forms\",\n \"data entry\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Form fields (traditional React children)\"\n },\n \"onSubmit\": {\n \"types\": [\n \"function\",\n \"string\"\n ],\n \"description\": \"Submit handler - receives form data, or event name string for trait dispatch\"\n },\n \"onCancel\": {\n \"types\": [\n \"function\",\n \"string\"\n ],\n \"description\": \"Cancel handler - function or event name string for trait dispatch\"\n },\n \"layout\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Form layout\"\n },\n \"gap\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Gap between fields\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Schema-based props\"\n },\n \"mode\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Form mode - 'create' for new records, 'edit' for updating existing\"\n },\n \"fields\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Fields definition (schema format) - accepts readonly for generated const arrays\"\n },\n \"initialData\": {\n \"types\": [\n \"object\",\n \"unknown\"\n ],\n \"description\": \"Initial form data\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"submitLabel\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Submit button label\"\n },\n \"cancelLabel\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Cancel button label (if provided, shows cancel button)\"\n },\n \"showCancel\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show cancel button (defaults to true for schema forms)\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Form title (used by ModalSlot to extract title)\"\n },\n \"submitEvent\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Event dispatch props (for trait state machine integration)\"\n },\n \"cancelEvent\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Event to dispatch on cancel (defaults to 'CANCEL')\"\n },\n \"relationsData\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Relation data props\"\n },\n \"relationsLoading\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Loading state for relation data: { fieldName: boolean }\"\n },\n \"conditionalFields\": {\n \"types\": [\n \"object\",\n \"boolean\"\n ],\n \"description\": \"Inspection form extensions\"\n },\n \"hiddenCalculations\": {\n \"types\": [\n \"array\",\n \"boolean\"\n ],\n \"description\": \"Hidden calculations that emit GLOBAL_VARIABLE_SET on field change (boolean true means enabled but config loaded separately)\"\n },\n \"violationTriggers\": {\n \"types\": [\n \"array\",\n \"boolean\"\n ],\n \"description\": \"Violation conditions that emit VIOLATION_DETECTED when met (boolean true means enabled but config loaded separately)\"\n },\n \"evaluationContext\": {\n \"types\": [\n \"formevaluationcontext\",\n \"object\"\n ],\n \"description\": \"Context for S-expression evaluation - accepts flexible types from generated code\"\n },\n \"sections\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Nested form sections with optional conditions\"\n },\n \"onFieldChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when any field value changes\"\n },\n \"configPath\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Config path for form configuration (schema-driven)\"\n },\n \"repeatable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the form supports repeatable entries\"\n }\n }\n },\n \"search-input\": {\n \"type\": \"search-input\",\n \"category\": \"filter\",\n \"description\": \"Search input with events\",\n \"suggestedFor\": [\n \"search functionality\",\n \"quick filters\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"value\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Search value (controlled mode)\"\n },\n \"onSearch\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when search value changes\"\n },\n \"debounceMs\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Debounce delay in milliseconds @default 300\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show loading state @default false\"\n },\n \"placeholder\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Placeholder text @default 'Search...'\"\n },\n \"clearable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show clear button @default true\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"event\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Event name to dispatch on search (schema metadata, wired by trait) This is metadata used by the trait generator, not by the component.\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity type for context-aware search. When provided, search events include entity context.\"\n },\n \"query\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Query singleton binding for state management. When provided, syncs search state with the query singleton. Example: \\\"@TaskQuery\\\"\"\n }\n }\n },\n \"filter-group\": {\n \"type\": \"filter-group\",\n \"category\": \"filter\",\n \"description\": \"Multiple filter controls\",\n \"suggestedFor\": [\n \"list pages with filterable data\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity name to filter\",\n \"required\": true\n },\n \"filters\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Filter definitions from schema\",\n \"required\": true\n },\n \"onFilterChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when a filter changes - for EntityStore integration\"\n },\n \"onClearAll\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback to clear all filters\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"variant\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Variant style\"\n },\n \"showIcon\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show filter icon\"\n },\n \"query\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Query singleton binding for state management. When provided, syncs filter state with the query singleton. Example: \\\"@TaskQuery\\\"\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state indicator\"\n }\n }\n },\n \"tabs\": {\n \"type\": \"tabs\",\n \"category\": \"navigation\",\n \"description\": \"Tab navigation within page\",\n \"suggestedFor\": [\n \"pages with multiple views\",\n \"filtered lists\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"items\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Tab items\"\n },\n \"tabs\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Tab items (alias for items - used by generated code)\"\n },\n \"defaultActiveTab\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Default active tab ID\"\n },\n \"activeTab\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Controlled active tab ID\"\n },\n \"onTabChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when tab changes\"\n },\n \"variant\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Tab variant\"\n },\n \"orientation\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Tab orientation\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"breadcrumb\": {\n \"type\": \"breadcrumb\",\n \"category\": \"navigation\",\n \"description\": \"Breadcrumb navigation\",\n \"suggestedFor\": [\n \"hierarchical navigation\",\n \"detail pages\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"items\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Breadcrumb items\",\n \"required\": true\n },\n \"separator\": {\n \"types\": [\n \"icon\"\n ],\n \"description\": \"Separator icon\"\n },\n \"maxItems\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Maximum items to show (truncates with ellipsis)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"wizard-progress\": {\n \"type\": \"wizard-progress\",\n \"category\": \"navigation\",\n \"description\": \"Wizard step progress indicator\",\n \"suggestedFor\": [\n \"multi-step forms\",\n \"onboarding\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"steps\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Step definitions (compatible with WizardContainer's WizardStep)\",\n \"required\": true\n },\n \"currentStep\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Current step index (0-based)\",\n \"required\": true\n },\n \"onStepClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when a completed step is clicked\"\n },\n \"allowNavigation\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Allow clicking on completed steps to navigate back\"\n },\n \"compact\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Compact mode (smaller, no titles)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"wizard-navigation\": {\n \"type\": \"wizard-navigation\",\n \"category\": \"navigation\",\n \"description\": \"Wizard navigation buttons\",\n \"suggestedFor\": [\n \"multi-step forms\",\n \"wizards\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"currentStep\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Current step index (0-based)\",\n \"required\": true\n },\n \"totalSteps\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Total number of steps\",\n \"required\": true\n },\n \"isValid\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the current step is valid (enables Next/Complete)\"\n },\n \"showBack\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show the Back button\"\n },\n \"showNext\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show the Next button\"\n },\n \"showComplete\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show the Complete button (on last step)\"\n },\n \"backLabel\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom label for Back button\"\n },\n \"nextLabel\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom label for Next button\"\n },\n \"completeLabel\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom label for Complete button\"\n },\n \"onBack\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Event to emit on Back click\"\n },\n \"onNext\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Event to emit on Next click\"\n },\n \"onComplete\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Event to emit on Complete click\"\n },\n \"onBackClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Direct callback for Back (alternative to event)\"\n },\n \"onNextClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Direct callback for Next (alternative to event)\"\n },\n \"onCompleteClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Direct callback for Complete (alternative to event)\"\n },\n \"compact\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Compact mode (smaller padding)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"wizard-container\": {\n \"type\": \"wizard-container\",\n \"category\": \"navigation\",\n \"description\": \"Multi-step wizard container\",\n \"suggestedFor\": [\n \"multi-step forms\",\n \"wizards\",\n \"onboarding flows\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"steps\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Wizard steps\",\n \"required\": true\n },\n \"currentStep\": {\n \"types\": [\n \"number\",\n \"string\",\n \"unknown\"\n ],\n \"description\": \"Current step index (controlled) - accepts unknown for generated code compatibility\"\n },\n \"onStepChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when step changes\"\n },\n \"onComplete\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when wizard is completed\"\n },\n \"showProgress\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show progress indicator\"\n },\n \"allowBack\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Allow navigation to previous steps\"\n },\n \"compact\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Modal mode (compact header, no padding)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity type name (schema-driven)\"\n }\n }\n },\n \"pagination\": {\n \"type\": \"pagination\",\n \"category\": \"navigation\",\n \"description\": \"Page navigation controls\",\n \"suggestedFor\": [\n \"paginated lists\",\n \"tables\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"currentPage\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Current page (1-indexed)\",\n \"required\": true\n },\n \"totalPages\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Total number of pages\",\n \"required\": true\n },\n \"onPageChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when page changes (optional - can be a no-op if not interactive)\"\n },\n \"showPageSize\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show page size selector @default false\"\n },\n \"pageSizeOptions\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Page size options\"\n },\n \"pageSize\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Current page size\"\n },\n \"onPageSizeChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when page size changes\"\n },\n \"showJumpToPage\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show jump to page input @default false\"\n },\n \"showTotal\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show total count @default false\"\n },\n \"totalItems\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Total items count\"\n },\n \"maxVisiblePages\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Maximum number of page buttons to show @default 7\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"empty-state\": {\n \"type\": \"empty-state\",\n \"category\": \"state\",\n \"description\": \"Message when no data exists\",\n \"suggestedFor\": [\n \"list pages\",\n \"search results\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"icon\": {\n \"types\": [\n \"icon\",\n \"string\"\n ],\n \"description\": \"Icon to display. Accepts either: - A Lucide icon component (LucideIcon) - A string icon name (e.g., \\\"check-circle\\\", \\\"x-circle\\\")\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Primary text to display - use title or message (message is alias for backwards compat)\"\n },\n \"message\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Alias for title - used by schema patterns\"\n },\n \"description\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"description prop\"\n },\n \"actionLabel\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"actionLabel prop\"\n },\n \"onAction\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onAction prop\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n },\n \"destructive\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Destructive styling for confirmation dialogs\"\n },\n \"variant\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Variant for color styling\"\n }\n }\n },\n \"loading-state\": {\n \"type\": \"loading-state\",\n \"category\": \"state\",\n \"description\": \"Loading indicator\",\n \"suggestedFor\": [\n \"any page with async data\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"title prop\"\n },\n \"message\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"message prop\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n }\n }\n },\n \"error-state\": {\n \"type\": \"error-state\",\n \"category\": \"state\",\n \"description\": \"Error message display\",\n \"suggestedFor\": [\n \"error handling\",\n \"failed requests\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"title prop\"\n },\n \"message\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Error message to display\"\n },\n \"description\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Alias for message (schema compatibility)\"\n },\n \"onRetry\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onRetry prop\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n }\n }\n },\n \"notification\": {\n \"type\": \"notification\",\n \"category\": \"state\",\n \"description\": \"Toast notification message\",\n \"suggestedFor\": [\n \"success messages\",\n \"error alerts\",\n \"info messages\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"variant\": {\n \"types\": [\n \"toastvariant\"\n ],\n \"description\": \"Toast variant\"\n },\n \"message\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Toast message\",\n \"required\": true\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Toast title (optional)\"\n },\n \"duration\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Auto-dismiss duration in milliseconds (0 = no auto-dismiss)\"\n },\n \"dismissible\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show dismiss button\"\n },\n \"onDismiss\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when toast is dismissed\"\n },\n \"actionLabel\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Action button label\"\n },\n \"onAction\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Action button click handler\"\n },\n \"badge\": {\n \"types\": [\n \"string\",\n \"number\"\n ],\n \"description\": \"Badge count (optional)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"stats\": {\n \"type\": \"stats\",\n \"category\": \"dashboard\",\n \"description\": \"Key metrics and statistics\",\n \"suggestedFor\": [\n \"dashboards\",\n \"overview pages\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Main label\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Title (alias for label)\"\n },\n \"value\": {\n \"types\": [\n \"string\",\n \"number\",\n \"array\",\n \"unknown\"\n ],\n \"description\": \"Primary value - accepts array/unknown from generated code (will use first element or length)\"\n },\n \"previousValue\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Previous value for comparison\"\n },\n \"currentValue\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Current value as number for trend calculation\"\n },\n \"trend\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Manual trend percentage (overrides calculation)\"\n },\n \"trendDirection\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Trend direction (overrides calculation)\"\n },\n \"invertTrend\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether up is good (green) or bad (red)\"\n },\n \"icon\": {\n \"types\": [\n \"icon\"\n ],\n \"description\": \"Icon to display\"\n },\n \"iconBg\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Icon background color\"\n },\n \"iconColor\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Icon color\"\n },\n \"subtitle\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Subtitle or description\"\n },\n \"action\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Action button\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Schema-based props\"\n },\n \"metrics\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Metrics to display (schema format) - accepts readonly for compatibility with generated const arrays\"\n },\n \"data\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Data to calculate stats from - accepts readonly for compatibility with generated const arrays\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state indicator\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n }\n }\n },\n \"dashboard-grid\": {\n \"type\": \"dashboard-grid\",\n \"category\": \"dashboard\",\n \"description\": \"Multi-column grid for widgets and stats cards\",\n \"suggestedFor\": [\n \"dashboards\",\n \"analytics pages\",\n \"overview screens\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"columns\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Number of columns\"\n },\n \"gap\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Gap between cells\"\n },\n \"cells\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Cell definitions\",\n \"required\": true\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"modal\": {\n \"type\": \"modal\",\n \"category\": \"container\",\n \"description\": \"Modal dialog overlay\",\n \"suggestedFor\": [\n \"dialogs\",\n \"confirmations\",\n \"forms\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"isOpen\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the modal is open (defaults to true when rendered by slot wrapper)\"\n },\n \"onClose\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when modal should close (injected by slot wrapper)\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"title prop\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Modal content (can be empty if using slot content)\"\n },\n \"footer\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"footer prop\"\n },\n \"size\": {\n \"types\": [\n \"modalsize\"\n ],\n \"description\": \"size prop\"\n },\n \"showCloseButton\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"showCloseButton prop\"\n },\n \"closeOnOverlayClick\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"closeOnOverlayClick prop\"\n },\n \"closeOnEscape\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"closeOnEscape prop\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n }\n }\n },\n \"drawer\": {\n \"type\": \"drawer\",\n \"category\": \"container\",\n \"description\": \"Side drawer panel\",\n \"suggestedFor\": [\n \"detail panels\",\n \"settings\",\n \"side navigation\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"isOpen\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the drawer is open (defaults to true when rendered by slot wrapper)\"\n },\n \"onClose\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when drawer should close (injected by slot wrapper)\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Drawer title\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Drawer content (can be empty if using slot content)\"\n },\n \"footer\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Footer content\"\n },\n \"position\": {\n \"types\": [\n \"drawerposition\"\n ],\n \"description\": \"Position (left or right)\"\n },\n \"width\": {\n \"types\": [\n \"string\",\n \"drawersize\"\n ],\n \"description\": \"Width (CSS value or preset size)\"\n },\n \"showCloseButton\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show close button\"\n },\n \"closeOnOverlayClick\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Close on overlay click\"\n },\n \"closeOnEscape\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Close on escape key\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional class name\"\n }\n }\n },\n \"confirm-dialog\": {\n \"type\": \"confirm-dialog\",\n \"category\": \"container\",\n \"description\": \"Confirmation dialog\",\n \"suggestedFor\": [\n \"destructive actions\",\n \"confirmations\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"isOpen\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the dialog is open (defaults to true when rendered by slot wrapper)\"\n },\n \"onClose\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when dialog is closed (injected by slot wrapper)\"\n },\n \"onConfirm\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when action is confirmed (injected by slot wrapper)\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Dialog title\",\n \"required\": true\n },\n \"message\": {\n \"types\": [\n \"string\",\n \"node\"\n ],\n \"description\": \"Dialog message/description\"\n },\n \"description\": {\n \"types\": [\n \"string\",\n \"node\"\n ],\n \"description\": \"Alias for message (schema compatibility)\"\n },\n \"confirmText\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Confirm button text\"\n },\n \"confirmLabel\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Alias for confirmText (schema compatibility)\"\n },\n \"cancelText\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Cancel button text\"\n },\n \"cancelLabel\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Alias for cancelText (schema compatibility)\"\n },\n \"variant\": {\n \"types\": [\n \"confirmdialogvariant\"\n ],\n \"description\": \"Dialog variant\"\n },\n \"size\": {\n \"types\": [\n \"modalsize\"\n ],\n \"description\": \"Dialog size\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state for confirm button\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"master-detail\": {\n \"type\": \"master-detail\",\n \"category\": \"layout\",\n \"description\": \"List on left, selected item detail on right\",\n \"suggestedFor\": [\n \"entity management\",\n \"inbox-style views\",\n \"file browsers\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"master\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Master panel content (usually a list)\",\n \"required\": true\n },\n \"detail\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Detail panel content\",\n \"required\": true\n },\n \"emptyDetail\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Content shown when nothing is selected\"\n },\n \"hasSelection\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether an item is currently selected\"\n },\n \"masterWidth\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Width of master panel (e.g., '350px', '30%')\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"masterClassName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Class for master pane\"\n },\n \"detailClassName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Class for detail pane\"\n }\n }\n },\n \"box\": {\n \"type\": \"box\",\n \"category\": \"layout\",\n \"description\": \"Generic styled container with padding, borders, and backgrounds\",\n \"suggestedFor\": [\n \"card containers\",\n \"sections\",\n \"styled wrappers\",\n \"content boxes\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"padding\": {\n \"types\": [\n \"boxpadding\"\n ],\n \"description\": \"Padding on all sides\"\n },\n \"paddingX\": {\n \"types\": [\n \"boxpadding\"\n ],\n \"description\": \"Horizontal padding (overrides padding for x-axis)\"\n },\n \"paddingY\": {\n \"types\": [\n \"boxpadding\"\n ],\n \"description\": \"Vertical padding (overrides padding for y-axis)\"\n },\n \"margin\": {\n \"types\": [\n \"boxmargin\"\n ],\n \"description\": \"Margin on all sides\"\n },\n \"marginX\": {\n \"types\": [\n \"boxmargin\"\n ],\n \"description\": \"Horizontal margin\"\n },\n \"marginY\": {\n \"types\": [\n \"boxmargin\"\n ],\n \"description\": \"Vertical margin\"\n },\n \"bg\": {\n \"types\": [\n \"boxbg\"\n ],\n \"description\": \"Background color\"\n },\n \"border\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show border\"\n },\n \"rounded\": {\n \"types\": [\n \"boxrounded\"\n ],\n \"description\": \"Border radius\"\n },\n \"shadow\": {\n \"types\": [\n \"boxshadow\"\n ],\n \"description\": \"Box shadow\"\n },\n \"display\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Display type\"\n },\n \"fullWidth\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Fill available width\"\n },\n \"fullHeight\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Fill available height\"\n },\n \"overflow\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Overflow behavior\"\n },\n \"position\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Position\"\n },\n \"as\": {\n \"types\": [\n \"react.elementtype\"\n ],\n \"description\": \"HTML element to render as\"\n }\n }\n },\n \"grid\": {\n \"type\": \"grid\",\n \"category\": \"layout\",\n \"description\": \"CSS Grid layout for multi-column content\",\n \"suggestedFor\": [\n \"dashboards\",\n \"card grids\",\n \"multi-column layouts\",\n \"responsive grids\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"cols\": {\n \"types\": [\n \"gridcols\",\n \"responsivegridcols\"\n ],\n \"description\": \"Number of columns (can be responsive object)\"\n },\n \"rows\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Number of rows\"\n },\n \"gap\": {\n \"types\": [\n \"gridgap\"\n ],\n \"description\": \"Gap between items\"\n },\n \"rowGap\": {\n \"types\": [\n \"gridgap\"\n ],\n \"description\": \"Row gap (overrides gap for rows)\"\n },\n \"colGap\": {\n \"types\": [\n \"gridgap\"\n ],\n \"description\": \"Column gap (overrides gap for columns)\"\n },\n \"alignItems\": {\n \"types\": [\n \"gridalign\"\n ],\n \"description\": \"Align items on block axis\"\n },\n \"justifyItems\": {\n \"types\": [\n \"gridjustify\"\n ],\n \"description\": \"Justify items on inline axis\"\n },\n \"flow\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Auto-flow direction\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n },\n \"style\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Inline styles\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Children elements\",\n \"required\": true\n },\n \"as\": {\n \"types\": [\n \"react.elementtype\"\n ],\n \"description\": \"HTML element to render as\"\n }\n }\n },\n \"center\": {\n \"type\": \"center\",\n \"category\": \"layout\",\n \"description\": \"Centers content horizontally and vertically\",\n \"suggestedFor\": [\n \"centered modals\",\n \"loading states\",\n \"empty states\",\n \"hero sections\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"inline\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Center inline (width fits content) vs block (full width)\"\n },\n \"horizontal\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Center only horizontally\"\n },\n \"vertical\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Center only vertically\"\n },\n \"minHeight\": {\n \"types\": [\n \"string\",\n \"number\"\n ],\n \"description\": \"Minimum height (useful for vertical centering)\"\n },\n \"fullHeight\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Fill available height\"\n },\n \"fullWidth\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Fill available width\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n },\n \"style\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Inline styles\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Children elements\",\n \"required\": true\n },\n \"as\": {\n \"types\": [\n \"react.elementtype\"\n ],\n \"description\": \"HTML element to render as\"\n }\n }\n },\n \"spacer\": {\n \"type\": \"spacer\",\n \"category\": \"layout\",\n \"description\": \"Flexible space that expands to fill available room\",\n \"suggestedFor\": [\n \"pushing elements apart\",\n \"flexible spacing\",\n \"layout adjustment\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"size\": {\n \"types\": [\n \"spacersize\"\n ],\n \"description\": \"Fixed size (auto = flex grow)\"\n },\n \"axis\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Orientation (for fixed sizes)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n }\n }\n },\n \"divider\": {\n \"type\": \"divider\",\n \"category\": \"layout\",\n \"description\": \"Visual separator between content sections\",\n \"suggestedFor\": [\n \"section breaks\",\n \"content separation\",\n \"visual grouping\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"orientation\": {\n \"types\": [\n \"dividerorientation\"\n ],\n \"description\": \"Orientation of the divider @default 'horizontal'\"\n },\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Text label to display in the divider\"\n },\n \"variant\": {\n \"types\": [\n \"dividervariant\"\n ],\n \"description\": \"Line style variant @default 'solid'\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"game-hud\": {\n \"type\": \"game-hud\",\n \"category\": \"game\",\n \"description\": \"Heads-up display showing health, score, lives\",\n \"suggestedFor\": [\n \"game page\",\n \"gameplay overlay\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"position\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Position of the HUD\"\n },\n \"stats\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Stats to display - accepts readonly for compatibility with generated const arrays\"\n },\n \"items\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Alias for stats (schema compatibility)\"\n },\n \"elements\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Schema-style elements array (alternative to stats). Converted to stats internally for backwards compatibility.\"\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Size variant\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"transparent\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether to use a semi-transparent background\"\n }\n }\n },\n \"game-menu\": {\n \"type\": \"game-menu\",\n \"category\": \"game\",\n \"description\": \"Main menu with start, options, credits\",\n \"suggestedFor\": [\n \"main menu page\",\n \"start screen\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Menu title\",\n \"required\": true\n },\n \"subtitle\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Optional subtitle or version\"\n },\n \"options\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Menu options - accepts readonly for compatibility with generated const arrays\"\n },\n \"menuItems\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Alias for options (schema compatibility)\"\n },\n \"onSelect\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when an option is selected (legacy callback, prefer event bus)\"\n },\n \"eventBus\": {\n \"types\": [\n \"eventbuscontexttype\"\n ],\n \"description\": \"Event bus for emitting UI events (optional, uses hook if not provided)\"\n },\n \"background\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Background image or gradient\"\n },\n \"logo\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Logo image URL\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"game-over-screen\": {\n \"type\": \"game-over-screen\",\n \"category\": \"game\",\n \"description\": \"Game over screen with score and retry option\",\n \"suggestedFor\": [\n \"game over\",\n \"victory screen\",\n \"defeat screen\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Screen title (e.g., \\\"Game Over\\\", \\\"Victory!\\\")\",\n \"required\": true\n },\n \"message\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Optional message\"\n },\n \"stats\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Stats to display\"\n },\n \"actions\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Action buttons\"\n },\n \"menuItems\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Alias for actions (schema compatibility)\"\n },\n \"onAction\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when an action is selected (legacy callback, prefer event bus)\"\n },\n \"eventBus\": {\n \"types\": [\n \"eventbuscontexttype\"\n ],\n \"description\": \"Event bus for emitting UI events (optional, uses hook if not provided)\"\n },\n \"variant\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Victory or defeat variant\"\n },\n \"highScore\": {\n \"types\": [\n \"number\",\n \"string\"\n ],\n \"description\": \"High score (optional, shows \\\"NEW HIGH SCORE!\\\" if exceeded)\"\n },\n \"currentScore\": {\n \"types\": [\n \"number\",\n \"string\"\n ],\n \"description\": \"Current score for high score comparison (accepts string for schema bindings)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"inventory-panel\": {\n \"type\": \"inventory-panel\",\n \"category\": \"game\",\n \"description\": \"Grid-based inventory UI for items, equipment, or resources\",\n \"suggestedFor\": [\n \"rpg inventory\",\n \"item management\",\n \"crafting\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"items\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Array of items in inventory\",\n \"required\": true\n },\n \"slots\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Total number of slots\",\n \"required\": true\n },\n \"columns\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Number of columns in grid\",\n \"required\": true\n },\n \"selectedSlot\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Currently selected slot index\"\n },\n \"onSelectSlot\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when a slot is selected\",\n \"required\": true\n },\n \"onUseItem\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when an item is used (double-click or Enter)\"\n },\n \"onDropItem\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when an item is dropped\"\n },\n \"showTooltips\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show item tooltips on hover\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Optional className\"\n },\n \"slotSize\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Slot size in pixels\"\n }\n }\n },\n \"dialogue-box\": {\n \"type\": \"dialogue-box\",\n \"category\": \"game\",\n \"description\": \"RPG-style dialogue box with speaker, portrait, and choices\",\n \"suggestedFor\": [\n \"npc dialogue\",\n \"story sequences\",\n \"tutorials\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"dialogue\": {\n \"types\": [\n \"dialoguenode\"\n ],\n \"description\": \"Current dialogue node to display\",\n \"required\": true\n },\n \"typewriterSpeed\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Typewriter speed in ms per character (0 = instant)\"\n },\n \"position\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Position of dialogue box\"\n },\n \"onComplete\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when text animation completes\"\n },\n \"onChoice\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when a choice is selected\"\n },\n \"onAdvance\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when dialogue is advanced (no choices)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Optional className\"\n }\n }\n },\n \"runtime-debugger\": {\n \"type\": \"runtime-debugger\",\n \"category\": \"debug\",\n \"description\": \"Debug overlay showing FPS, entity states, event logs\",\n \"suggestedFor\": [\n \"development\",\n \"debugging\",\n \"testing\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"position\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Initial position\"\n },\n \"defaultCollapsed\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Initial collapsed state\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"button\": {\n \"type\": \"button\",\n \"category\": \"component\",\n \"description\": \"Clickable button that emits events\",\n \"suggestedFor\": [\n \"actions\",\n \"form submission\",\n \"navigation triggers\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"variant\": {\n \"types\": [\n \"buttonvariant\"\n ],\n \"description\": \"variant prop\"\n },\n \"size\": {\n \"types\": [\n \"buttonsize\"\n ],\n \"description\": \"size prop\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"isLoading prop\"\n },\n \"leftIcon\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Left icon as ReactNode (preferred)\"\n },\n \"rightIcon\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Right icon as ReactNode (preferred)\"\n },\n \"icon\": {\n \"types\": [\n \"icon\"\n ],\n \"description\": \"Left icon as Lucide icon component (convenience prop, renders with default size)\"\n },\n \"iconRight\": {\n \"types\": [\n \"icon\"\n ],\n \"description\": \"Right icon as Lucide icon component (convenience prop)\"\n }\n }\n },\n \"badge\": {\n \"type\": \"badge\",\n \"category\": \"component\",\n \"description\": \"Small label for status or count\",\n \"suggestedFor\": [\n \"status indicators\",\n \"counts\",\n \"tags\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"variant\": {\n \"types\": [\n \"badgevariant\"\n ],\n \"description\": \"variant prop\"\n },\n \"size\": {\n \"types\": [\n \"badgesize\"\n ],\n \"description\": \"size prop\"\n }\n }\n },\n \"avatar\": {\n \"type\": \"avatar\",\n \"category\": \"component\",\n \"description\": \"User avatar image or initials\",\n \"suggestedFor\": [\n \"user profiles\",\n \"comments\",\n \"team lists\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"src\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Image source URL\"\n },\n \"alt\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Alt text for the image\"\n },\n \"name\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Full name - initials will be generated automatically\"\n },\n \"initials\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Initials to display (e.g., \\\"JD\\\" for John Doe) If not provided but name is, initials will be auto-generated\"\n },\n \"icon\": {\n \"types\": [\n \"icon\"\n ],\n \"description\": \"Icon to display when no image or initials\"\n },\n \"size\": {\n \"types\": [\n \"avatarsize\"\n ],\n \"description\": \"Size of the avatar @default 'md'\"\n },\n \"status\": {\n \"types\": [\n \"avatarstatus\"\n ],\n \"description\": \"Status indicator\"\n },\n \"badge\": {\n \"types\": [\n \"string\",\n \"number\"\n ],\n \"description\": \"Badge content (e.g., notification count)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"onClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Click handler\"\n }\n }\n },\n \"icon\": {\n \"type\": \"icon\",\n \"category\": \"component\",\n \"description\": \"Icon from Lucide icon set\",\n \"suggestedFor\": [\n \"decorative icons\",\n \"status indicators\",\n \"buttons\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"icon\": {\n \"types\": [\n \"icon\"\n ],\n \"description\": \"Lucide icon component (preferred for type-safe usage)\"\n },\n \"name\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Icon name as string (resolved from iconMap)\"\n },\n \"size\": {\n \"types\": [\n \"iconsize\"\n ],\n \"description\": \"Size of the icon\"\n },\n \"color\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Color class (Tailwind color class) or 'inherit' for theme default\"\n },\n \"animation\": {\n \"types\": [\n \"iconanimation\"\n ],\n \"description\": \"Animation type\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"strokeWidth\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Icon stroke width - uses theme default if not specified\"\n },\n \"style\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Inline style\"\n }\n }\n },\n \"card\": {\n \"type\": \"card\",\n \"category\": \"component\",\n \"description\": \"Card container with optional header and footer\",\n \"suggestedFor\": [\n \"content cards\",\n \"product cards\",\n \"info cards\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Card title\"\n },\n \"subtitle\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Card subtitle or description\"\n },\n \"image\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Image URL to display at top of card\"\n },\n \"actions\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Action buttons to display in card footer\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Card content\"\n },\n \"onClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Click handler for the entire card\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"progress-bar\": {\n \"type\": \"progress-bar\",\n \"category\": \"component\",\n \"description\": \"Progress indicator bar\",\n \"suggestedFor\": [\n \"progress tracking\",\n \"loading\",\n \"completion status\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"value\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Progress value (0-100)\",\n \"required\": true\n },\n \"max\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Maximum value (for calculating percentage) @default 100\"\n },\n \"variant\": {\n \"types\": [\n \"progressbarvariant\"\n ],\n \"description\": \"Variant/color of the progress bar @default 'primary'\"\n },\n \"color\": {\n \"types\": [\n \"progressbarcolor\"\n ],\n \"description\": \"Color variant (alias for variant) @default 'primary'\"\n },\n \"showPercentage\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show percentage text @default false\"\n },\n \"showLabel\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Alias for showPercentage (pattern compatibility)\"\n },\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Label text\"\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Size (for circular variant) @default 'md'\"\n },\n \"steps\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Number of steps (for stepped variant) @default 5\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"progressType\": {\n \"types\": [\n \"progressbartype\"\n ],\n \"description\": \"Type of the progress bar (linear, circular, stepped) @default 'linear'\"\n }\n }\n },\n \"spinner\": {\n \"type\": \"spinner\",\n \"category\": \"component\",\n \"description\": \"Loading spinner animation\",\n \"suggestedFor\": [\n \"loading states\",\n \"async operations\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"size\": {\n \"types\": [\n \"spinnersize\"\n ],\n \"description\": \"size prop\"\n }\n }\n },\n \"input\": {\n \"type\": \"input\",\n \"category\": \"component\",\n \"description\": \"Text input field\",\n \"suggestedFor\": [\n \"forms\",\n \"search\",\n \"data entry\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"error\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"error prop\"\n },\n \"leftIcon\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"leftIcon prop\"\n },\n \"rightIcon\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"rightIcon prop\"\n },\n \"icon\": {\n \"types\": [\n \"icon\"\n ],\n \"description\": \"Lucide icon component for left side (convenience prop)\"\n },\n \"clearable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show clear button when input has value\"\n },\n \"onClear\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when clear button is clicked\"\n },\n \"options\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Options for select type\"\n },\n \"rows\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Rows for textarea type\"\n },\n \"onChange\": {\n \"types\": [\n \"react.changeeventhandler\"\n ],\n \"description\": \"onChange handler - accepts events from input, select, or textarea\"\n },\n \"inputType\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Input type - supports 'select' and 'textarea' in addition to standard types\"\n }\n }\n },\n \"textarea\": {\n \"type\": \"textarea\",\n \"category\": \"component\",\n \"description\": \"Multi-line text input\",\n \"suggestedFor\": [\n \"long text\",\n \"descriptions\",\n \"comments\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"error\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"error prop\"\n }\n }\n },\n \"select\": {\n \"type\": \"select\",\n \"category\": \"component\",\n \"description\": \"Dropdown select input\",\n \"suggestedFor\": [\n \"option selection\",\n \"filters\",\n \"forms\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"options\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"options prop\",\n \"required\": true\n },\n \"placeholder\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"placeholder prop\"\n },\n \"error\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"error prop\"\n }\n }\n },\n \"checkbox\": {\n \"type\": \"checkbox\",\n \"category\": \"component\",\n \"description\": \"Checkbox input\",\n \"suggestedFor\": [\n \"boolean options\",\n \"multi-select\",\n \"toggles\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"label prop\"\n }\n }\n },\n \"radio\": {\n \"type\": \"radio\",\n \"category\": \"component\",\n \"description\": \"Radio button input\",\n \"suggestedFor\": [\n \"single selection\",\n \"options\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Label text displayed next to the radio button\"\n },\n \"helperText\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Helper text displayed below the radio button\"\n },\n \"error\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Error message displayed below the radio button\"\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Size of the radio button @default 'md'\"\n }\n }\n },\n \"switch\": {\n \"type\": \"switch\",\n \"category\": \"component\",\n \"description\": \"Toggle switch input\",\n \"suggestedFor\": [\n \"on/off settings\",\n \"toggles\",\n \"preferences\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"checked\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"checked prop\"\n },\n \"defaultChecked\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"defaultChecked prop\"\n },\n \"onChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onChange prop\"\n },\n \"disabled\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"disabled prop\"\n },\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"label prop\"\n },\n \"id\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"id prop\"\n },\n \"name\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"name prop\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n }\n }\n },\n \"label\": {\n \"type\": \"label\",\n \"category\": \"component\",\n \"description\": \"Form field label\",\n \"suggestedFor\": [\n \"form fields\",\n \"input labels\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"required\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"required prop\"\n }\n }\n },\n \"alert\": {\n \"type\": \"alert\",\n \"category\": \"component\",\n \"description\": \"Alert message box\",\n \"suggestedFor\": [\n \"warnings\",\n \"errors\",\n \"info messages\",\n \"success messages\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Alert content (children or message)\"\n },\n \"message\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Alert message (alias for children)\"\n },\n \"variant\": {\n \"types\": [\n \"alertvariant\"\n ],\n \"description\": \"variant prop\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"title prop\"\n },\n \"dismissible\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"dismissible prop\"\n },\n \"onDismiss\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onDismiss prop\"\n },\n \"onClose\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onClose prop\"\n },\n \"actions\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"actions prop\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n }\n }\n },\n \"tooltip\": {\n \"type\": \"tooltip\",\n \"category\": \"component\",\n \"description\": \"Hover tooltip\",\n \"suggestedFor\": [\n \"hints\",\n \"extra info\",\n \"help text\"\n ],\n \"typicalSize\": \"tiny\",\n \"propsSchema\": {\n \"content\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Tooltip content\",\n \"required\": true\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Tooltip trigger element (ReactElement or ReactNode that will be wrapped in span)\",\n \"required\": true\n },\n \"position\": {\n \"types\": [\n \"tooltipposition\"\n ],\n \"description\": \"Tooltip position\"\n },\n \"delay\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Show delay in milliseconds\"\n },\n \"hideDelay\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Hide delay in milliseconds\"\n },\n \"showArrow\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show arrow\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"popover\": {\n \"type\": \"popover\",\n \"category\": \"component\",\n \"description\": \"Click-triggered popover\",\n \"suggestedFor\": [\n \"menus\",\n \"additional info\",\n \"actions\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"content\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Popover content\",\n \"required\": true\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Popover trigger element (ReactElement or ReactNode that will be wrapped in span)\",\n \"required\": true\n },\n \"position\": {\n \"types\": [\n \"popoverposition\"\n ],\n \"description\": \"Popover position @default 'bottom'\"\n },\n \"trigger\": {\n \"types\": [\n \"popovertrigger\"\n ],\n \"description\": \"Trigger type @default 'click'\"\n },\n \"showArrow\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show arrow @default true\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"menu\": {\n \"type\": \"menu\",\n \"category\": \"component\",\n \"description\": \"Dropdown menu\",\n \"suggestedFor\": [\n \"actions menu\",\n \"context menu\",\n \"dropdown\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"trigger\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Menu trigger element\",\n \"required\": true\n },\n \"items\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Menu items\",\n \"required\": true\n },\n \"position\": {\n \"types\": [\n \"menuposition\"\n ],\n \"description\": \"Menu position\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"accordion\": {\n \"type\": \"accordion\",\n \"category\": \"component\",\n \"description\": \"Collapsible accordion sections\",\n \"suggestedFor\": [\n \"FAQs\",\n \"collapsible content\",\n \"settings\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"items\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Accordion items\",\n \"required\": true\n },\n \"multiple\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Allow multiple items open at once @default false\"\n },\n \"defaultOpenItems\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Default open items (IDs)\"\n },\n \"defaultOpen\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Default open items by index (pattern compatibility)\"\n },\n \"openItems\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Controlled open items (IDs)\"\n },\n \"onItemToggle\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when item opens/closes\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"container\": {\n \"type\": \"container\",\n \"category\": \"component\",\n \"description\": \"Centered max-width container\",\n \"suggestedFor\": [\n \"page content\",\n \"centered layouts\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"size\": {\n \"types\": [\n \"containersize\"\n ],\n \"description\": \"Maximum width\"\n },\n \"maxWidth\": {\n \"types\": [\n \"containersize\"\n ],\n \"description\": \"Alias for size (pattern compatibility)\"\n },\n \"padding\": {\n \"types\": [\n \"containerpadding\"\n ],\n \"description\": \"Horizontal padding\"\n },\n \"center\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Center horizontally\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Children elements\"\n },\n \"as\": {\n \"types\": [\n \"react.elementtype\"\n ],\n \"description\": \"HTML element to render as\"\n }\n }\n },\n \"simple-grid\": {\n \"type\": \"simple-grid\",\n \"category\": \"component\",\n \"description\": \"Simple responsive grid with auto columns\",\n \"suggestedFor\": [\n \"card grids\",\n \"gallery\",\n \"responsive layouts\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"minChildWidth\": {\n \"types\": [\n \"number\",\n \"string\"\n ],\n \"description\": \"Minimum width of each child (e.g., 200, \\\"200px\\\", \\\"15rem\\\")\"\n },\n \"maxCols\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Maximum number of columns\"\n },\n \"cols\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Exact number of columns (disables auto-fit)\"\n },\n \"gap\": {\n \"types\": [\n \"simplegridgap\"\n ],\n \"description\": \"Gap between items\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Children elements\",\n \"required\": true\n }\n }\n },\n \"repeatable-form-section\": {\n \"type\": \"repeatable-form-section\",\n \"category\": \"form\",\n \"description\": \"Repeatable form section for multiple entries\",\n \"suggestedFor\": [\n \"repeating fields\",\n \"dynamic forms\",\n \"multi-entry sections\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"sectionType\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Section type identifier\",\n \"required\": true\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Section title\",\n \"required\": true\n },\n \"items\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Items in the section\",\n \"required\": true\n },\n \"renderItem\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Render function for each item\",\n \"required\": true\n },\n \"minItems\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Minimum items required\"\n },\n \"maxItems\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Maximum items allowed\"\n },\n \"allowReorder\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Allow reordering\"\n },\n \"addLabel\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Add button label\"\n },\n \"emptyMessage\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Empty state message\"\n },\n \"readOnly\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Read-only mode\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"onAdd\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Add handler\"\n },\n \"onRemove\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Remove handler\"\n },\n \"onReorder\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Reorder handler\"\n },\n \"trackAddedInState\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Inspection-specific enhancements\"\n },\n \"currentState\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Current inspection state (used when trackAddedInState is true)\"\n },\n \"showAuditInfo\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show audit metadata (addedInState, addedAt)\"\n }\n }\n },\n \"conditional-wrapper\": {\n \"type\": \"conditional-wrapper\",\n \"category\": \"component\",\n \"description\": \"ConditionalWrapper Atom Component A wrapper component that conditionally renders its children based on S-expression evaluation. Used for dynamic field visibility in inspection forms.\",\n \"suggestedFor\": [\n \"conditional\",\n \"wrapper\",\n \"conditional wrapper\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"condition\": {\n \"types\": [\n \"sexpr\"\n ],\n \"description\": \"The S-expression condition to evaluate\"\n },\n \"context\": {\n \"types\": [\n \"conditionalcontext\"\n ],\n \"description\": \"Context for evaluating the condition\",\n \"required\": true\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Children to render when condition is true (or when no condition is provided)\",\n \"required\": true\n },\n \"fallback\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Optional fallback to render when condition is false\"\n },\n \"animate\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether to animate the transition (uses CSS transitions)\"\n }\n }\n },\n \"law-reference-tooltip\": {\n \"type\": \"law-reference-tooltip\",\n \"category\": \"component\",\n \"description\": \"LawReferenceTooltip Atom Component A specialized tooltip for displaying law references in inspection forms. Shows law name, article number, and relevant clause text.\",\n \"suggestedFor\": [\n \"law\",\n \"reference\",\n \"tooltip\",\n \"law reference tooltip\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"reference\": {\n \"types\": [\n \"lawreference\"\n ],\n \"description\": \"The law reference to display\",\n \"required\": true\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Children element that triggers the tooltip\",\n \"required\": true\n },\n \"position\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Tooltip position\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"overlay\": {\n \"type\": \"overlay\",\n \"category\": \"container\",\n \"description\": \"Overlay Atom Component A fixed backdrop for modals and drawers.\",\n \"suggestedFor\": [\n \"overlay\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"isVisible\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"isVisible prop\"\n },\n \"onClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onClick prop\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n },\n \"blur\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"blur prop\"\n }\n }\n },\n \"stack\": {\n \"type\": \"stack\",\n \"category\": \"component\",\n \"description\": \"Stack Component A layout primitive for arranging children in a vertical or horizontal stack with consistent spacing. Includes convenience exports VStack and HStack for common use cases.\",\n \"suggestedFor\": [\n \"stack\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"direction\": {\n \"types\": [\n \"stackdirection\"\n ],\n \"description\": \"Stack direction\"\n },\n \"gap\": {\n \"types\": [\n \"stackgap\"\n ],\n \"description\": \"Gap between children\"\n },\n \"align\": {\n \"types\": [\n \"stackalign\"\n ],\n \"description\": \"Align items on the cross axis\"\n },\n \"justify\": {\n \"types\": [\n \"stackjustify\"\n ],\n \"description\": \"Justify items on the main axis\"\n },\n \"wrap\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Allow items to wrap\"\n },\n \"reverse\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Reverse the order of children\"\n },\n \"flex\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Fill available space (flex: 1)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n },\n \"style\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Inline styles\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Children elements\"\n },\n \"as\": {\n \"types\": [\n \"react.elementtype\"\n ],\n \"description\": \"HTML element to render as\"\n },\n \"onClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Click handler\"\n },\n \"onKeyDown\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Keyboard handler\"\n },\n \"role\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Role for accessibility\"\n },\n \"tabIndex\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Tab index for focus management\"\n }\n }\n },\n \"text-highlight\": {\n \"type\": \"text-highlight\",\n \"category\": \"component\",\n \"description\": \"TextHighlight Atom Component A styled span component for highlighting text with annotations (questions or notes). Uses different colors for different annotation types: - Questions: Blue highlight - Notes: Yellow highlight\",\n \"suggestedFor\": [\n \"text\",\n \"highlight\",\n \"text highlight\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"isActive\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the highlight is currently active/focused @default false\"\n },\n \"onClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when highlight is clicked\"\n },\n \"onMouseEnter\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when highlight is hovered\"\n },\n \"onMouseLeave\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when hover ends\"\n },\n \"annotationId\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Unique ID for the annotation\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Highlighted text content\",\n \"required\": true\n },\n \"highlightType\": {\n \"types\": [\n \"highlighttype\"\n ],\n \"description\": \"Type of highlight (determines color)\",\n \"required\": true\n }\n }\n },\n \"theme-toggle\": {\n \"type\": \"theme-toggle\",\n \"category\": \"component\",\n \"description\": \"ThemeToggle Atom Component A button that toggles between light and dark themes. Uses Sun and Moon icons to indicate current/target theme.\",\n \"suggestedFor\": [\n \"theme\",\n \"toggle\",\n \"theme toggle\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Size variant\"\n },\n \"showLabel\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show label text\"\n }\n }\n },\n \"typography\": {\n \"type\": \"typography\",\n \"category\": \"component\",\n \"description\": \"Typography Atom Component Text elements following the KFlow design system with theme-aware styling.\",\n \"suggestedFor\": [\n \"typography\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"variant\": {\n \"types\": [\n \"typographyvariant\"\n ],\n \"description\": \"Typography variant\"\n },\n \"level\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Heading level (1-6) - alternative to variant for headings\"\n },\n \"color\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Text color\"\n },\n \"align\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Text alignment\"\n },\n \"weight\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Font weight override\"\n },\n \"size\": {\n \"types\": [\n \"typographysize\"\n ],\n \"description\": \"Font size override\"\n },\n \"truncate\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Truncate with ellipsis (single line)\"\n },\n \"overflow\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Overflow handling mode\"\n },\n \"as\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Custom HTML element\"\n },\n \"id\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"HTML id attribute\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional class names\"\n },\n \"style\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Inline style\"\n },\n \"content\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Text content (alternative to children)\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Children elements\"\n }\n }\n },\n \"control-button\": {\n \"type\": \"control-button\",\n \"category\": \"component\",\n \"description\": \"ControlButton component\",\n \"suggestedFor\": [\n \"control\",\n \"button\",\n \"control button\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Button label text\"\n },\n \"icon\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Icon component or emoji\"\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Size variant\"\n },\n \"shape\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Shape variant\"\n },\n \"variant\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Visual variant\"\n },\n \"onPress\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when button is pressed\"\n },\n \"onRelease\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when button is released\"\n },\n \"pressed\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the button is currently pressed\"\n },\n \"disabled\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the button is disabled\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"health-bar\": {\n \"type\": \"health-bar\",\n \"category\": \"component\",\n \"description\": \"HealthBar component\",\n \"suggestedFor\": [\n \"health\",\n \"bar\",\n \"health bar\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"current\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Current health value\",\n \"required\": true\n },\n \"max\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Maximum health value\",\n \"required\": true\n },\n \"format\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Display format\"\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Size variant\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"animated\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Animation on change\"\n }\n }\n },\n \"score-display\": {\n \"type\": \"score-display\",\n \"category\": \"component\",\n \"description\": \"ScoreDisplay component\",\n \"suggestedFor\": [\n \"score\",\n \"display\",\n \"score display\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"value\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Current score value\",\n \"required\": true\n },\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Label to display before score\"\n },\n \"icon\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Icon component or emoji\"\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Size variant\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"animated\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Animation on value change\"\n },\n \"locale\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Number formatting locale\"\n }\n }\n },\n \"sprite\": {\n \"type\": \"sprite\",\n \"category\": \"game\",\n \"description\": \"Sprite Component Renders a single frame from a spritesheet with transform support.\",\n \"suggestedFor\": [\n \"sprite\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"spritesheet\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Spritesheet image URL\",\n \"required\": true\n },\n \"frameWidth\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Width of each frame in pixels\",\n \"required\": true\n },\n \"frameHeight\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Height of each frame in pixels\",\n \"required\": true\n },\n \"frame\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Frame index to display (0-based, left-to-right, top-to-bottom)\",\n \"required\": true\n },\n \"x\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"X position in pixels\",\n \"required\": true\n },\n \"y\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Y position in pixels\",\n \"required\": true\n },\n \"scale\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Scale factor (default: 1)\"\n },\n \"flipX\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Flip horizontally\"\n },\n \"flipY\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Flip vertically\"\n },\n \"rotation\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Rotation in degrees\"\n },\n \"opacity\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Opacity (0-1)\"\n },\n \"zIndex\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Z-index for layering\"\n },\n \"columns\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Number of columns in spritesheet (for frame calculation)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Optional className\"\n },\n \"onClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Optional onClick handler\"\n }\n }\n },\n \"form-actions\": {\n \"type\": \"form-actions\",\n \"category\": \"component\",\n \"description\": \"ButtonGroup Molecule Component A component for grouping buttons together with connected styling. Supports both children-based and form-actions pattern (primary/secondary) usage. Uses Button atoms.\",\n \"suggestedFor\": [\n \"button\",\n \"group\",\n \"button group\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Button group content (Button components) - use this OR primary/secondary\"\n },\n \"primary\": {\n \"types\": [\n \"readonly\"\n ],\n \"description\": \"Primary action button config (for form-actions pattern) Accepts Readonly for compatibility with generated const objects\"\n },\n \"secondary\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Secondary action buttons config (for form-actions pattern) Accepts readonly array for compatibility with generated const arrays\"\n },\n \"variant\": {\n \"types\": [\n \"buttongroupvariant\"\n ],\n \"description\": \"Visual variant @default 'default'\"\n },\n \"orientation\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Orientation @default 'horizontal'\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity type for filter-group pattern (schema metadata)\"\n },\n \"filters\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Filter definitions for filter-group pattern\"\n }\n }\n },\n \"flex\": {\n \"type\": \"flex\",\n \"category\": \"component\",\n \"description\": \"Flex Component A flexbox wrapper with all common flex properties exposed as props. More explicit than Stack for when you need full flex control.\",\n \"suggestedFor\": [\n \"flex\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"direction\": {\n \"types\": [\n \"flexdirection\"\n ],\n \"description\": \"Flex direction\"\n },\n \"wrap\": {\n \"types\": [\n \"flexwrap\"\n ],\n \"description\": \"Flex wrap\"\n },\n \"align\": {\n \"types\": [\n \"flexalign\"\n ],\n \"description\": \"Align items\"\n },\n \"justify\": {\n \"types\": [\n \"flexjustify\"\n ],\n \"description\": \"Justify content\"\n },\n \"gap\": {\n \"types\": [\n \"flexgap\"\n ],\n \"description\": \"Gap between items\"\n },\n \"inline\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Inline flex\"\n },\n \"grow\": {\n \"types\": [\n \"boolean\",\n \"number\"\n ],\n \"description\": \"Flex grow\"\n },\n \"shrink\": {\n \"types\": [\n \"boolean\",\n \"number\"\n ],\n \"description\": \"Flex shrink\"\n },\n \"basis\": {\n \"types\": [\n \"string\",\n \"number\"\n ],\n \"description\": \"Flex basis\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Children elements\",\n \"required\": true\n },\n \"as\": {\n \"types\": [\n \"react.elementtype\"\n ],\n \"description\": \"HTML element to render as\"\n }\n }\n },\n \"floating-action-button\": {\n \"type\": \"floating-action-button\",\n \"category\": \"component\",\n \"description\": \"FloatingActionButton Molecule Component A floating action button that can expand into multiple actions vertically. Uses Button atom.\",\n \"suggestedFor\": [\n \"floating\",\n \"action\",\n \"button\",\n \"floating action button\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"action\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Single action (if only one action, button will directly trigger onClick)\"\n },\n \"actions\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Multiple actions (if provided, button will expand to show all actions)\"\n },\n \"icon\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Icon name (simplified API for pattern compatibility)\"\n },\n \"onClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Click handler (simplified API for pattern compatibility)\"\n },\n \"variant\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Variant (simplified API for pattern compatibility)\"\n },\n \"position\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Button position @default 'bottom-right'\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"form-field\": {\n \"type\": \"form-field\",\n \"category\": \"form\",\n \"description\": \"FormField Molecule Component A form field wrapper with label, hint, and error message support. **Atomic Design**: Composed using Label and Typography atoms.\",\n \"suggestedFor\": [\n \"form\",\n \"field\",\n \"form field\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"label prop\",\n \"required\": true\n },\n \"required\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"required prop\"\n },\n \"error\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"error prop\"\n },\n \"hint\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"hint prop\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"children prop\",\n \"required\": true\n }\n }\n },\n \"form-section-header\": {\n \"type\": \"form-section-header\",\n \"category\": \"form\",\n \"description\": \"FormSectionHeader Header component for collapsible form sections. Provides consistent styling and interaction for section headers.\",\n \"suggestedFor\": [\n \"form\",\n \"section\",\n \"header\",\n \"form section header\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Section title\",\n \"required\": true\n },\n \"subtitle\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Section subtitle\"\n },\n \"isCollapsed\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether section is collapsed\"\n },\n \"onToggle\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Toggle collapse handler (makes header clickable)\"\n },\n \"badge\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Badge text (e.g., \\\"3 fields\\\", \\\"Required\\\", \\\"Complete\\\")\"\n },\n \"badgeVariant\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Badge variant\"\n },\n \"icon\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Icon name to show before title\"\n },\n \"hasErrors\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether section has validation errors\"\n },\n \"isComplete\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether section is complete\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"input-group\": {\n \"type\": \"input-group\",\n \"category\": \"form\",\n \"description\": \"InputGroup Molecule Component A component for grouping input with addons (icons, buttons, text). Uses Input, Button, Icon, and Typography atoms.\",\n \"suggestedFor\": [\n \"input\",\n \"group\",\n \"input group\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"leftAddon\": {\n \"types\": [\n \"node\",\n \"icon\"\n ],\n \"description\": \"Left addon (icon, button, or text)\"\n },\n \"rightAddon\": {\n \"types\": [\n \"node\",\n \"icon\"\n ],\n \"description\": \"Right addon (icon, button, or text)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"relation-select\": {\n \"type\": \"relation-select\",\n \"category\": \"form\",\n \"description\": \"RelationSelect Molecule Component A searchable select component for relation fields. Allows users to search and select from related entities. Composed from: Box, HStack, VStack, Input, Button, Spinner, Typography atoms\",\n \"suggestedFor\": [\n \"relation\",\n \"select\",\n \"relation select\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"value\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Current value (ID)\"\n },\n \"onChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when value changes\"\n },\n \"options\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Available options - accepts readonly for compatibility with generated const arrays\",\n \"required\": true\n },\n \"placeholder\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Placeholder text\"\n },\n \"required\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the field is required\"\n },\n \"disabled\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the field is disabled\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether data is loading\"\n },\n \"error\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Error message\"\n },\n \"clearable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Allow clearing the selection\"\n },\n \"name\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Name attribute for forms\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"searchPlaceholder\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Search placeholder\"\n },\n \"emptyMessage\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Empty state message\"\n }\n }\n },\n \"side-panel\": {\n \"type\": \"side-panel\",\n \"category\": \"component\",\n \"description\": \"SidePanel Molecule Component A side panel that slides in from the right (or left) with header and content. Uses Button, Typography atoms.\",\n \"suggestedFor\": [\n \"side\",\n \"panel\",\n \"side panel\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Panel title\",\n \"required\": true\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Panel content\",\n \"required\": true\n },\n \"isOpen\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Is panel open\",\n \"required\": true\n },\n \"onClose\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"On close handler\",\n \"required\": true\n },\n \"width\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Panel width @default 'w-96'\"\n },\n \"position\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Panel position @default 'right'\"\n },\n \"showOverlay\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show overlay on mobile @default true\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"violation-alert\": {\n \"type\": \"violation-alert\",\n \"category\": \"state\",\n \"description\": \"ViolationAlert Displays inspection violations with law references and action types. Used in inspection forms to show detected compliance violations. Action Types: - measure: Corrective measure required (warning) - admin: Administrative action (error) - penalty: Penalty proceedings (error, severe)\",\n \"suggestedFor\": [\n \"violation\",\n \"alert\",\n \"violation alert\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"violation\": {\n \"types\": [\n \"violationrecord\"\n ],\n \"description\": \"Violation data\",\n \"required\": true\n },\n \"severity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Visual severity (derived from actionType if not specified)\"\n },\n \"dismissible\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Dismissible alert\"\n },\n \"onDismiss\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Dismiss handler\"\n },\n \"onNavigateToField\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Navigate to the field that caused violation\"\n },\n \"compact\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Compact display mode\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"action-buttons\": {\n \"type\": \"action-buttons\",\n \"category\": \"component\",\n \"description\": \"ActionButtons component\",\n \"suggestedFor\": [\n \"action\",\n \"buttons\",\n \"action buttons\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"buttons\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Button configurations\",\n \"required\": true\n },\n \"onAction\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when a button is pressed/released\",\n \"required\": true\n },\n \"layout\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Layout variant\"\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Size variant\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"disabled\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Disabled state\"\n }\n }\n },\n \"d-pad\": {\n \"type\": \"d-pad\",\n \"category\": \"component\",\n \"description\": \"DPad component\",\n \"suggestedFor\": [\n \"pad\",\n \"d pad\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"onDirection\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when a direction is pressed/released\",\n \"required\": true\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Size variant\"\n },\n \"includeDiagonals\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether to include diagonal buttons\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"disabled\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Disabled state\"\n }\n }\n },\n \"stat-badge\": {\n \"type\": \"stat-badge\",\n \"category\": \"display\",\n \"description\": \"StatBadge component\",\n \"suggestedFor\": [\n \"stat\",\n \"badge\",\n \"stat badge\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Stat label\",\n \"required\": true\n },\n \"value\": {\n \"types\": [\n \"number\",\n \"string\"\n ],\n \"description\": \"Current value (defaults to 0 if not provided)\"\n },\n \"max\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Maximum value (for bar/hearts format)\"\n },\n \"source\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Data source entity name (for schema config)\"\n },\n \"field\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Field name in the source (for schema config)\"\n },\n \"format\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Display format\"\n },\n \"icon\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Icon component or emoji\"\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Size variant\"\n },\n \"variant\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Visual variant\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"button-pattern\": {\n \"type\": \"button-pattern\",\n \"category\": \"display\",\n \"description\": \"Component Pattern Wrappers Pattern wrappers for atomic UI components that can be rendered via render_ui. These bridge the shell's atomic components with the pattern system. Interactive components emit events via useEventBus for the closed circuit pattern.\",\n \"suggestedFor\": [\n \"button\",\n \"pattern\",\n \"button pattern\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"label prop\",\n \"required\": true\n },\n \"variant\": {\n \"types\": [\n \"buttonvariant\"\n ],\n \"description\": \"variant prop\"\n },\n \"size\": {\n \"types\": [\n \"buttonsize\"\n ],\n \"description\": \"size prop\"\n },\n \"disabled\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"disabled prop\"\n },\n \"onClick\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"onClick prop\"\n },\n \"icon\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"icon prop\"\n },\n \"iconPosition\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"iconPosition prop\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n }\n }\n },\n \"custom-pattern\": {\n \"type\": \"custom-pattern\",\n \"category\": \"display\",\n \"description\": \"CustomPattern Component Renders freeform HTML elements with Tailwind classes for custom UI designs. Supports nested children and the closed circuit pattern (action prop for events).\",\n \"suggestedFor\": [\n \"custom\",\n \"pattern\",\n \"custom pattern\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"component\": {\n \"types\": [\n \"allowedcustomcomponent\"\n ],\n \"description\": \"HTML element to render\",\n \"required\": true\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Tailwind classes\"\n },\n \"token\": {\n \"types\": [\n \"string\",\n \"array\"\n ],\n \"description\": \"Token path(s) for design token resolution\"\n },\n \"content\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Text content (for leaf elements)\"\n },\n \"action\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Event to emit on click (REQUIRED for interactive elements)\"\n },\n \"payload\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Event payload\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Nested children patterns\"\n },\n \"src\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Image source (for img elements)\"\n },\n \"alt\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Image alt text (for img elements)\"\n },\n \"href\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Link href (for a elements)\"\n },\n \"external\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Open link in new tab\"\n },\n \"disabled\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Disabled state\"\n },\n \"htmlProps\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Additional HTML attributes\"\n }\n }\n },\n \"drawer-slot\": {\n \"type\": \"drawer-slot\",\n \"category\": \"layout\",\n \"description\": \"DrawerSlot Component Wraps drawer slot content in a proper Drawer component. Used by trait-driven pages to display drawer UI from render_ui effects. Handles: - Auto-open when content is present - Dispatches CLOSE/CANCEL events when closed - Extracts title from Form or DetailPanel components - Configurable position and size\",\n \"suggestedFor\": [\n \"drawer\",\n \"slot\",\n \"drawer slot\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Content to display in the drawer\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Override drawer title (extracted from children if not provided)\"\n },\n \"position\": {\n \"types\": [\n \"drawerposition\"\n ],\n \"description\": \"Drawer position\"\n },\n \"size\": {\n \"types\": [\n \"drawersize\"\n ],\n \"description\": \"Drawer size\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n }\n }\n },\n \"header\": {\n \"type\": \"header\",\n \"category\": \"header\",\n \"description\": \"Header Organism Component A header component for mobile/responsive layouts with menu toggle, brand, and user avatar. Styled to match the main Layout component's mobile header.\",\n \"suggestedFor\": [\n \"header\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"logo\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Logo/Brand content\"\n },\n \"logoSrc\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Logo image source\"\n },\n \"brandName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Brand/App name\"\n },\n \"navigationItems\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Navigation items (for desktop header variant)\"\n },\n \"showMenuToggle\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show menu toggle button @default true\"\n },\n \"isMenuOpen\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Is menu open (for toggle icon)\"\n },\n \"onMenuToggle\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Menu toggle callback\"\n },\n \"showSearch\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show search input @default false\"\n },\n \"searchPlaceholder\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Search placeholder\"\n },\n \"onSearch\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Search callback\"\n },\n \"userAvatar\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"User avatar configuration\"\n },\n \"userName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"User name (display name or email)\"\n },\n \"onUserClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when user avatar is clicked\"\n },\n \"actions\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Action buttons (right side)\"\n },\n \"sticky\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Sticky header @default true\"\n },\n \"variant\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Variant - mobile shows menu toggle, desktop shows full nav @default 'mobile'\"\n },\n \"onLogoClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when logo/brand is clicked\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"layout-pattern\": {\n \"type\": \"layout-pattern\",\n \"category\": \"layout\",\n \"description\": \"Base props for all layout patterns with children support.\",\n \"suggestedFor\": [\n \"layout\",\n \"pattern\",\n \"layout pattern\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Nested pattern configurations - rendered recursively\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"style\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Inline styles\"\n }\n }\n },\n \"modal-slot\": {\n \"type\": \"modal-slot\",\n \"category\": \"layout\",\n \"description\": \"ModalSlot Component Wraps modal slot content in a proper Modal component. Used by trait-driven pages to display modal UI from render_ui effects. Handles: - Auto-open when content is present - Dispatches CLOSE/CANCEL events when closed - Extracts title from Form components\",\n \"suggestedFor\": [\n \"modal\",\n \"slot\",\n \"modal slot\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Content to display in the modal\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Override modal title (extracted from children if not provided)\"\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Modal size\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n }\n }\n },\n \"navigation\": {\n \"type\": \"navigation\",\n \"category\": \"navigation\",\n \"description\": \"Navigation Organism Component A navigation component with items, active indicators, icons, and badges. Uses Menu, ButtonGroup molecules and Button, Icon, Badge, Typography, Divider atoms.\",\n \"suggestedFor\": [\n \"navigation\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"items\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Navigation items\",\n \"required\": true\n },\n \"orientation\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Navigation orientation @default 'horizontal'\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"orbital-visualization\": {\n \"type\": \"orbital-visualization\",\n \"category\": \"display\",\n \"description\": \"OrbitalVisualization Component Visualizes KFlow schemas as atomic orbitals based on complexity. Uses CSS 3D transforms for lightweight rendering without Three.js. Orbital Types (based on complexity score): - 1s (1-3): Simple sphere - Red - 2s (4-8): Larger sphere - Orange - 2p (9-15): Dumbbell shape - Yellow - 3s (16-25): Sphere with node - Green - 3p (26-40): Complex dumbbell - Blue - 3d (41-60): Cloverleaf - Indigo - 4f (61+): Multi-lobe - Violet\",\n \"suggestedFor\": [\n \"orbital\",\n \"visualization\",\n \"orbital visualization\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"schema\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Full KFlow schema object\"\n },\n \"complexity\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Direct complexity override (1-100+)\"\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Size of the visualization\"\n },\n \"showLabel\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show complexity label\"\n },\n \"animated\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Animation enabled\"\n },\n \"onClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Click handler\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"section\": {\n \"type\": \"section\",\n \"category\": \"display\",\n \"description\": \"Section Component A semantic section wrapper with optional title, description, and action. Perfect for grouping related content with consistent spacing.\",\n \"suggestedFor\": [\n \"section\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Section title\"\n },\n \"description\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Section subtitle/description\"\n },\n \"action\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Action element (e.g., button, link)\"\n },\n \"padding\": {\n \"types\": [\n \"sectionpadding\"\n ],\n \"description\": \"Padding amount\"\n },\n \"variant\": {\n \"types\": [\n \"sectionvariant\"\n ],\n \"description\": \"Visual variant\"\n },\n \"divider\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show divider below header\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Children elements\",\n \"required\": true\n },\n \"headerClassName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Header custom class name\"\n },\n \"contentClassName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Content custom class name\"\n },\n \"as\": {\n \"types\": [\n \"react.elementtype\"\n ],\n \"description\": \"HTML element to render as\"\n }\n }\n },\n \"sidebar\": {\n \"type\": \"sidebar\",\n \"category\": \"navigation\",\n \"description\": \"Sidebar Organism Component A sidebar component with logo, navigation items, user section, and collapse/expand. Styled to match the main Layout component with theme-aware CSS variables.\",\n \"suggestedFor\": [\n \"sidebar\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"logo\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Logo/Brand content - can be a ReactNode or logo config\"\n },\n \"logoSrc\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Logo image source\"\n },\n \"brandName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Brand/App name\"\n },\n \"items\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Navigation items\",\n \"required\": true\n },\n \"userSection\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"User section content\"\n },\n \"footerContent\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Footer content (e.g., theme toggle)\"\n },\n \"collapsed\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Collapsed state (controlled)\"\n },\n \"defaultCollapsed\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Default collapsed state\"\n },\n \"onCollapseChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when collapse state changes\"\n },\n \"hideCollapseButton\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Hide the collapse/expand button\"\n },\n \"showCloseButton\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show a close button (for mobile)\"\n },\n \"onClose\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when close button is clicked\"\n },\n \"onLogoClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when logo/brand is clicked\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"split\": {\n \"type\": \"split\",\n \"category\": \"layout\",\n \"description\": \"Split Component A two-column layout with configurable ratios. Perfect for sidebar/content layouts or side-by-side comparisons.\",\n \"suggestedFor\": [\n \"split\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"ratio\": {\n \"types\": [\n \"splitratio\"\n ],\n \"description\": \"Size ratio between left and right panels\"\n },\n \"gap\": {\n \"types\": [\n \"splitgap\"\n ],\n \"description\": \"Gap between panels\"\n },\n \"reverse\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Reverse the order (right first)\"\n },\n \"stackOnMobile\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Stack vertically on mobile\"\n },\n \"stackBreakpoint\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Breakpoint to switch from stacked to side-by-side\"\n },\n \"align\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Align items vertically\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n },\n \"leftClassName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Left/first panel class name\"\n },\n \"rightClassName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Right/second panel class name\"\n },\n \"children\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Exactly two children: [left, right]\",\n \"required\": true\n }\n }\n },\n \"table\": {\n \"type\": \"table\",\n \"category\": \"display\",\n \"description\": \"Table Organism Component A table component with header row, data rows, pagination, sorting, and filters. Uses Pagination, SearchInput, ButtonGroup, Card, Menu molecules and Button, Icon, Checkbox, Typography, Badge, Divider atoms.\",\n \"suggestedFor\": [\n \"table\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"columns\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Table columns\",\n \"required\": true\n },\n \"entity\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Table entity data\",\n \"required\": true\n },\n \"getRowKey\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Row key getter\",\n \"required\": true\n },\n \"selectable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Enable row selection @default false\"\n },\n \"selectedRows\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Selected row keys\"\n },\n \"onSelectionChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when selection changes\"\n },\n \"sortable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Enable sorting @default false\"\n },\n \"sortColumn\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Current sort column\"\n },\n \"sortDirection\": {\n \"types\": [\n \"sortdirection\"\n ],\n \"description\": \"Current sort direction\"\n },\n \"onSortChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when sort changes\"\n },\n \"searchable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Enable search/filter @default false\"\n },\n \"searchPlaceholder\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Search placeholder\"\n },\n \"paginated\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Enable pagination @default false\"\n },\n \"currentPage\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Current page\"\n },\n \"totalPages\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Total pages\"\n },\n \"onPageChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when page changes\"\n },\n \"rowActions\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Row actions menu items\"\n },\n \"emptyMessage\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Empty state message\"\n },\n \"loading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state @default false\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"toast-slot\": {\n \"type\": \"toast-slot\",\n \"category\": \"layout\",\n \"description\": \"ToastSlot Component Wraps toast slot content in a proper Toast component with positioning. Used by trait-driven pages to display toast UI from render_ui effects. Handles: - Auto-show when content is present - Dispatches DISMISS event when dismissed - Fixed positioning in corner of screen\",\n \"suggestedFor\": [\n \"toast\",\n \"slot\",\n \"toast slot\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Content to display in the toast (message or ReactNode)\"\n },\n \"variant\": {\n \"types\": [\n \"toastvariant\"\n ],\n \"description\": \"Toast variant\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Toast title\"\n },\n \"duration\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Auto-dismiss duration in ms (0 = no auto-dismiss)\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Custom class name\"\n }\n }\n },\n \"u-i-slot-renderer\": {\n \"type\": \"u-i-slot-renderer\",\n \"category\": \"layout\",\n \"description\": \"UISlotRenderer Component Renders all UI slots. This is the central component that displays content rendered by traits via render_ui effects. Slots are rendered as: - Layout slots: Inline in the page flow (main, sidebar) - Portal slots: Rendered via portals (modal, drawer, toast, etc.) - HUD slots: Fixed position overlays (hud-top, hud-bottom)\",\n \"suggestedFor\": [\n \"slot\",\n \"renderer\",\n \"u i slot renderer\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"includeHud\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Include HUD slots\"\n },\n \"includeFloating\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Include floating slot\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional class name for the container\"\n }\n }\n },\n \"split-pane\": {\n \"type\": \"split-pane\",\n \"category\": \"layout\",\n \"description\": \"SplitPane Component Two-pane resizable split layout for master-detail views, dual-pane editors, and code + preview layouts. Uses wireframe theme styling (high contrast, sharp edges).\",\n \"suggestedFor\": [\n \"split\",\n \"pane\",\n \"split pane\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"direction\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Direction of the split\"\n },\n \"ratio\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Initial ratio (0-100, percentage of first pane)\"\n },\n \"minSize\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Minimum size of either pane in pixels\"\n },\n \"resizable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Allow user resizing\"\n },\n \"left\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Content for the left/top pane\",\n \"required\": true\n },\n \"right\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Content for the right/bottom pane\",\n \"required\": true\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"leftClassName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Class for left/top pane\"\n },\n \"rightClassName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Class for right/bottom pane\"\n }\n }\n },\n \"tabbed-container\": {\n \"type\": \"tabbed-container\",\n \"category\": \"navigation\",\n \"description\": \"TabbedContainer Component Tabbed content areas with shared header/context. Wraps the Tabs molecule with layout-specific styling. Uses wireframe theme styling (high contrast, sharp edges).\",\n \"suggestedFor\": [\n \"tabbed\",\n \"container\",\n \"tabbed container\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"tabs\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Tab definitions\",\n \"required\": true\n },\n \"defaultTab\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Default active tab ID\"\n },\n \"activeTab\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Controlled active tab\"\n },\n \"onTabChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when tab changes\"\n },\n \"position\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Tab position\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"auth-layout\": {\n \"type\": \"auth-layout\",\n \"category\": \"template\",\n \"description\": \"AuthLayout component\",\n \"suggestedFor\": [\n \"auth\",\n \"layout\",\n \"auth layout\"\n ],\n \"typicalSize\": \"full\",\n \"propsSchema\": {\n \"appName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"App name\"\n },\n \"logo\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Logo component or URL\"\n },\n \"backgroundImage\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Background image URL\"\n },\n \"showBranding\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show branding panel on the side\"\n },\n \"brandingContent\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Branding panel content\"\n }\n }\n },\n \"counter-template\": {\n \"type\": \"counter-template\",\n \"category\": \"template\",\n \"description\": \"CounterTemplate A presentational template for counter/incrementer features. Supports increment, decrement, and reset operations.\",\n \"suggestedFor\": [\n \"counter\",\n \"template\",\n \"counter template\"\n ],\n \"typicalSize\": \"full\",\n \"propsSchema\": {\n \"count\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Current count value\",\n \"required\": true\n },\n \"min\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Minimum allowed value\"\n },\n \"max\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Maximum allowed value\"\n },\n \"step\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Step size for increment/decrement\"\n },\n \"onIncrement\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when increment is clicked\"\n },\n \"onDecrement\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when decrement is clicked\"\n },\n \"onReset\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when reset is clicked\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Title displayed above the counter\"\n },\n \"showReset\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show reset button\"\n },\n \"size\": {\n \"types\": [\n \"countersize\"\n ],\n \"description\": \"Counter display size\"\n },\n \"variant\": {\n \"types\": [\n \"countervariant\"\n ],\n \"description\": \"Template variant\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional class name\"\n }\n }\n },\n \"crud-template\": {\n \"type\": \"crud-template\",\n \"category\": \"template\",\n \"description\": \"CrudTemplate A presentational template for CRUD (Create, Read, Update, Delete) features. Includes data table, search, and modal forms for create/edit.\",\n \"suggestedFor\": [\n \"crud\",\n \"template\",\n \"crud template\"\n ],\n \"typicalSize\": \"full\",\n \"propsSchema\": {\n \"items\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Array of items to display\",\n \"required\": true\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether data is loading\"\n },\n \"error\": {\n \"types\": [\n \"error\",\n \"string\"\n ],\n \"description\": \"Error object if loading failed\"\n },\n \"selectedItem\": {\n \"types\": [\n \"cruditem\"\n ],\n \"description\": \"Currently selected item for editing\"\n },\n \"isModalOpen\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the create/edit modal is open\"\n },\n \"searchQuery\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Current search query\"\n },\n \"sortBy\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Current sort field\"\n },\n \"sortOrder\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Current sort order\"\n },\n \"onLoad\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called to load/refresh items\"\n },\n \"onCreate\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when creating a new item\"\n },\n \"onUpdate\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when updating an item\"\n },\n \"onDelete\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when deleting an item\"\n },\n \"onSelect\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when selecting an item for editing\"\n },\n \"onView\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when viewing an item\"\n },\n \"onSearch\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when search query changes\"\n },\n \"onSort\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when sort changes\"\n },\n \"onOpenModal\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called to open create/edit modal\"\n },\n \"onCloseModal\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called to close modal\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Page title\"\n },\n \"entityName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Singular entity name for labels\"\n },\n \"columns\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Table column definitions\"\n },\n \"fields\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Form field definitions for create/edit\"\n },\n \"showSearch\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether to show search input\"\n },\n \"searchPlaceholder\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Search input placeholder\"\n },\n \"showViewAction\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether to show view action\"\n },\n \"variant\": {\n \"types\": [\n \"crudvariant\"\n ],\n \"description\": \"Template variant\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional class name\"\n }\n }\n },\n \"dashboard-layout\": {\n \"type\": \"dashboard-layout\",\n \"category\": \"template\",\n \"description\": \"DashboardLayout component\",\n \"suggestedFor\": [\n \"dashboard\",\n \"layout\",\n \"dashboard layout\"\n ],\n \"typicalSize\": \"full\",\n \"propsSchema\": {\n \"appName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"App name shown in sidebar\"\n },\n \"logo\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Logo component or URL\"\n },\n \"navItems\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Navigation items\"\n },\n \"user\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Current user info (optional - auto-populated from auth context if not provided)\"\n },\n \"headerActions\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Header actions (notifications, etc.)\"\n },\n \"showSearch\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show search in header\"\n },\n \"sidebarFooter\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Custom sidebar footer\"\n },\n \"onSignOut\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when user clicks sign out (optional - uses auth context signOut if not provided)\"\n }\n }\n },\n \"form-template\": {\n \"type\": \"form-template\",\n \"category\": \"template\",\n \"description\": \"FormTemplate A presentational template for form-based features like contact forms, feedback, surveys. Supports submission, validation, and success/error states.\",\n \"suggestedFor\": [\n \"form\",\n \"template\",\n \"form template\"\n ],\n \"typicalSize\": \"full\",\n \"propsSchema\": {\n \"formData\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Current form field values\",\n \"required\": true\n },\n \"isSubmitting\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether form is being submitted\"\n },\n \"isSuccess\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether submission was successful\"\n },\n \"error\": {\n \"types\": [\n \"error\",\n \"string\"\n ],\n \"description\": \"Error object if submission failed\"\n },\n \"validationErrors\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Field-level validation errors\"\n },\n \"onSubmit\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when form is submitted\"\n },\n \"onFieldChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when a field value changes\"\n },\n \"onReset\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called to reset the form\"\n },\n \"onDismissSuccess\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called to dismiss success message\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Form title\"\n },\n \"subtitle\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Form subtitle/description\"\n },\n \"submitLabel\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Submit button label\"\n },\n \"successMessage\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Success message\"\n },\n \"showReset\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether to show reset button\"\n },\n \"fields\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Form field definitions\"\n },\n \"variant\": {\n \"types\": [\n \"formvariant\"\n ],\n \"description\": \"Template variant\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional class name\"\n }\n }\n },\n \"game-template\": {\n \"type\": \"game-template\",\n \"category\": \"template\",\n \"description\": \"GameTemplate A presentational template for game applications. Includes a main game canvas/area, HUD overlay, and an optional debug sidebar. **Atomic Design**: Composed using Box, Typography, and Layout molecules/atoms.\",\n \"suggestedFor\": [\n \"game\",\n \"template\",\n \"game template\"\n ],\n \"typicalSize\": \"full\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Title of the game\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"The main game canvas or content\",\n \"required\": true\n },\n \"hud\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"HUD overlay content (scores, health, etc.)\"\n },\n \"debugPanel\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Debug panel content\"\n },\n \"showDebugPanel\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the debug panel is visible\"\n },\n \"controls\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Game controls\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional class name\"\n }\n }\n },\n \"generic-app-template\": {\n \"type\": \"generic-app-template\",\n \"category\": \"template\",\n \"description\": \"GenericAppTemplate A simple, generic template for any application. Includes a header with title and actions, and a main content area. **Atomic Design**: Composed using Box, Typography, and Button atoms.\",\n \"suggestedFor\": [\n \"generic\",\n \"app\",\n \"template\",\n \"generic app template\"\n ],\n \"typicalSize\": \"full\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Page title\",\n \"required\": true\n },\n \"subtitle\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Subtitle or description\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Main content\",\n \"required\": true\n },\n \"headerActions\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Header actions (buttons, links)\"\n },\n \"footer\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Footer content\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional class name\"\n }\n }\n },\n \"list-template\": {\n \"type\": \"list-template\",\n \"category\": \"template\",\n \"description\": \"ListTemplate A presentational template for list-based features like todos, shopping lists, notes. Supports add, toggle, delete, and filter operations.\",\n \"suggestedFor\": [\n \"list\",\n \"template\",\n \"list template\"\n ],\n \"typicalSize\": \"full\",\n \"propsSchema\": {\n \"items\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Array of list items\",\n \"required\": true\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether data is loading\"\n },\n \"error\": {\n \"types\": [\n \"error\",\n \"string\"\n ],\n \"description\": \"Error object if loading failed\"\n },\n \"filter\": {\n \"types\": [\n \"filtervalue\"\n ],\n \"description\": \"Current filter value\"\n },\n \"onAdd\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when a new item is added\"\n },\n \"onToggle\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when an item is toggled\"\n },\n \"onDelete\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when an item is deleted\"\n },\n \"onFilterChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when filter changes\"\n },\n \"onRetry\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called to retry loading\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Title displayed above the list\"\n },\n \"placeholder\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Placeholder for the input field\"\n },\n \"showFilters\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether to show filter buttons\"\n },\n \"showCount\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether to show item count\"\n },\n \"emptyMessage\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Message shown when list is empty\"\n },\n \"variant\": {\n \"types\": [\n \"listvariant\"\n ],\n \"description\": \"Template variant\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional class name\"\n }\n }\n },\n \"settings-template\": {\n \"type\": \"settings-template\",\n \"category\": \"template\",\n \"description\": \"SettingsTemplate A presentational template for settings/preferences features. Supports sections with various input types and save/reset operations.\",\n \"suggestedFor\": [\n \"settings\",\n \"template\",\n \"settings template\"\n ],\n \"typicalSize\": \"full\",\n \"propsSchema\": {\n \"settings\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Current settings values\",\n \"required\": true\n },\n \"isSaving\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether settings are being saved\"\n },\n \"hasChanges\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether there are unsaved changes\"\n },\n \"error\": {\n \"types\": [\n \"error\",\n \"string\"\n ],\n \"description\": \"Error object if save failed\"\n },\n \"successMessage\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Success message after save\"\n },\n \"onSave\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when saving settings\"\n },\n \"onChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when a setting value changes\"\n },\n \"onReset\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called to reset to default settings\"\n },\n \"onRevert\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called to revert unsaved changes\"\n },\n \"onDismissSuccess\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called to dismiss success message\"\n },\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Page title\"\n },\n \"sections\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Settings sections\"\n },\n \"showResetToDefaults\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether to show reset to defaults button\"\n },\n \"variant\": {\n \"types\": [\n \"settingsvariant\"\n ],\n \"description\": \"Template variant\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional class name\"\n }\n }\n },\n \"game-shell\": {\n \"type\": \"game-shell\",\n \"category\": \"template\",\n \"description\": \"GameShell A full-screen layout wrapper for game applications. Replaces DashboardLayout for game clients — no sidebar nav, just full-viewport rendering with an optional HUD overlay bar. Used as a React Router layout route element: <Route element={<GameShell appName=\\\"TraitWars\\\" />}> <Route index element={<WorldMapPage />} /> ... </Route>\",\n \"suggestedFor\": [\n \"game\",\n \"shell\",\n \"game shell\"\n ],\n \"typicalSize\": \"full\",\n \"propsSchema\": {\n \"appName\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Application / game title shown in the HUD bar\"\n },\n \"hud\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Optional HUD content rendered above the main area\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Extra class name on the root container\"\n },\n \"showTopBar\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether to show the minimal top bar (default: true)\"\n }\n }\n },\n \"chart\": {\n \"type\": \"chart\",\n \"category\": \"visualization\",\n \"description\": \"Data visualization chart supporting bar, line, pie, area, and donut types\",\n \"suggestedFor\": [\n \"dashboards\",\n \"analytics\",\n \"data visualization\",\n \"reporting\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Chart title\"\n },\n \"subtitle\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Chart subtitle / description\"\n },\n \"chartType\": {\n \"types\": [\n \"charttype\"\n ],\n \"description\": \"Chart type\"\n },\n \"series\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Data series\"\n },\n \"data\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Simple data (single series shorthand)\"\n },\n \"height\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Chart height in px\"\n },\n \"showLegend\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show legend\"\n },\n \"showValues\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show values on chart\"\n },\n \"actions\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Actions for chart interactions\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity name for schema-driven auto-fetch\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"meter\": {\n \"type\": \"meter\",\n \"category\": \"visualization\",\n \"description\": \"Gauge/meter component for displaying a value within a range with thresholds\",\n \"suggestedFor\": [\n \"dashboards\",\n \"progress tracking\",\n \"credit/quota displays\",\n \"KPI indicators\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"value\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Current value\",\n \"required\": true\n },\n \"min\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Minimum value\"\n },\n \"max\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Maximum value\"\n },\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Display label\"\n },\n \"unit\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Unit suffix (e.g., '%', 'MB', 'credits')\"\n },\n \"variant\": {\n \"types\": [\n \"metervariant\"\n ],\n \"description\": \"Display variant\"\n },\n \"thresholds\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Color thresholds\"\n },\n \"segments\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Number of segments (for segmented variant)\"\n },\n \"showValue\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show value text\"\n },\n \"size\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Size (for radial variant)\"\n },\n \"actions\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Actions\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity name for schema-driven auto-fetch\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"timeline\": {\n \"type\": \"timeline\",\n \"category\": \"display\",\n \"description\": \"Vertical timeline for displaying chronological events with status indicators\",\n \"suggestedFor\": [\n \"activity logs\",\n \"process tracking\",\n \"history views\",\n \"workflow steps\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Timeline title\"\n },\n \"items\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Timeline items\"\n },\n \"data\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Schema-driven data\"\n },\n \"fields\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Fields to display\"\n },\n \"itemActions\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Actions per item\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity name for schema-driven auto-fetch\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"media-gallery\": {\n \"type\": \"media-gallery\",\n \"category\": \"media\",\n \"description\": \"Grid gallery for images and media with lightbox, selection, and upload\",\n \"suggestedFor\": [\n \"photo galleries\",\n \"image management\",\n \"media libraries\",\n \"portfolio displays\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Gallery title\"\n },\n \"items\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Media items\"\n },\n \"data\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Schema-driven data\"\n },\n \"columns\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Column count\"\n },\n \"selectable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Enable item selection\"\n },\n \"selectedItems\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Selected item IDs\"\n },\n \"onSelectionChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Selection change callback\"\n },\n \"showUpload\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show upload button\"\n },\n \"actions\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Actions\"\n },\n \"aspectRatio\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Aspect ratio for thumbnails\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity name for schema-driven auto-fetch\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"signature-pad\": {\n \"type\": \"signature-pad\",\n \"category\": \"form\",\n \"description\": \"Canvas-based signature capture pad with draw, clear, and confirm actions\",\n \"suggestedFor\": [\n \"form signing\",\n \"approval workflows\",\n \"document signing\",\n \"consent forms\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"label\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Label above the pad\"\n },\n \"helperText\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Helper text\"\n },\n \"strokeColor\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Stroke color\"\n },\n \"strokeWidth\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Stroke width\"\n },\n \"height\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Pad height\"\n },\n \"readOnly\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether the pad is read-only\"\n },\n \"value\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Existing signature image URL\"\n },\n \"onChange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when signature changes\"\n },\n \"signEvent\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Event to emit on sign\"\n },\n \"clearEvent\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Event to emit on clear\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity name for schema-driven context\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"document-viewer\": {\n \"type\": \"document-viewer\",\n \"category\": \"display\",\n \"description\": \"Document viewer for PDFs, text, HTML, and markdown with zoom and pagination\",\n \"suggestedFor\": [\n \"document management\",\n \"PDF viewing\",\n \"content preview\",\n \"report viewing\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Document title\"\n },\n \"src\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Document URL (for PDF/external documents)\"\n },\n \"content\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Document content (for text/html/markdown)\"\n },\n \"documentType\": {\n \"types\": [\n \"documenttype\"\n ],\n \"description\": \"Document type\"\n },\n \"currentPage\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Current page (for multi-page documents)\"\n },\n \"totalPages\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Total pages\"\n },\n \"height\": {\n \"types\": [\n \"number\",\n \"string\"\n ],\n \"description\": \"Viewer height\"\n },\n \"showToolbar\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show toolbar\"\n },\n \"showDownload\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show download button\"\n },\n \"showPrint\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show print button\"\n },\n \"actions\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Actions\"\n },\n \"documents\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Multiple documents (tabbed view)\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity name for schema-driven auto-fetch\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"graph-canvas\": {\n \"type\": \"graph-canvas\",\n \"category\": \"visualization\",\n \"description\": \"Force-directed graph visualization for node-link data with interactive zoom, pan, and layout\",\n \"suggestedFor\": [\n \"knowledge graphs\",\n \"network visualization\",\n \"relationship mapping\",\n \"dependency graphs\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Graph title\"\n },\n \"nodes\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Graph nodes\"\n },\n \"edges\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Graph edges\"\n },\n \"height\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Canvas height\"\n },\n \"showLabels\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show node labels\"\n },\n \"interactive\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Enable zoom/pan\"\n },\n \"draggable\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Enable node dragging\"\n },\n \"actions\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Actions\"\n },\n \"onNodeClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"On node click\"\n },\n \"nodeClickEvent\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Node click event\"\n },\n \"layout\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Layout algorithm\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity name for schema-driven auto-fetch\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"code-viewer\": {\n \"type\": \"code-viewer\",\n \"category\": \"display\",\n \"description\": \"Code and diff viewer with line numbers, copy, word-wrap, and multi-file tabs\",\n \"suggestedFor\": [\n \"code display\",\n \"diff viewing\",\n \"schema inspection\",\n \"log viewing\"\n ],\n \"typicalSize\": \"medium\",\n \"propsSchema\": {\n \"title\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Viewer title\"\n },\n \"code\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Code content\"\n },\n \"language\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Language for display label\"\n },\n \"diff\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Diff lines (for diff mode)\"\n },\n \"oldValue\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Old value (for generating diff)\"\n },\n \"newValue\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"New value (for generating diff)\"\n },\n \"mode\": {\n \"types\": [\n \"codeviewermode\"\n ],\n \"description\": \"Display mode\"\n },\n \"showLineNumbers\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show line numbers\"\n },\n \"showCopy\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show copy button\"\n },\n \"wordWrap\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Enable word wrap\"\n },\n \"maxHeight\": {\n \"types\": [\n \"number\",\n \"string\"\n ],\n \"description\": \"Max height before scrolling\"\n },\n \"files\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Multiple files (tabbed view)\"\n },\n \"actions\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Actions\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity name for schema-driven auto-fetch\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n }\n }\n },\n \"canvas-effect\": {\n \"type\": \"canvas-effect\",\n \"category\": \"game\",\n \"description\": \"CanvasEffect Component Renders animated visual effects as DOM overlays on the canvas. Maps combat action types to particle/flash effects that play at a specified position and auto-dismiss. Pattern: canvas-effect\",\n \"suggestedFor\": [\n \"canvas\",\n \"effect\",\n \"canvas effect\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"actionType\": {\n \"types\": [\n \"combatactiontype\"\n ],\n \"description\": \"The type of combat action to visualise\",\n \"required\": true\n },\n \"x\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Screen-space X position (center of the effect)\",\n \"required\": true\n },\n \"y\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Screen-space Y position (center of the effect)\",\n \"required\": true\n },\n \"duration\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Duration in ms before auto-dismiss (default 2000 for canvas, 800 for emoji)\"\n },\n \"intensity\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Optional intensity multiplier (1 = normal, 2 = double size/brightness)\"\n },\n \"onComplete\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback when the effect animation completes\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional CSS classes\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state indicator\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"effectSpriteUrl\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"--- Remote asset loading ---\"\n },\n \"assetBaseUrl\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Base URL for remote assets. Prepended to relative effectSpriteUrl paths.\"\n },\n \"assetManifest\": {\n \"types\": [\n \"effectassetmanifest\"\n ],\n \"description\": \"Full effect asset manifest for the sprite particle engine. When provided, enables the canvas-based particle system.\"\n },\n \"width\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Canvas width (default 400)\"\n },\n \"height\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Canvas height (default 300)\"\n }\n }\n },\n \"isometric-canvas\": {\n \"type\": \"isometric-canvas\",\n \"category\": \"game\",\n \"description\": \"IsometricCanvas Core isometric game renderer. Maps to the `game-canvas` pattern. Adapted from projects/trait-wars/design-system/organisms/IsometricGameCanvas.tsx with full closed-circuit pattern compliance (className, isLoading, error, entity). Architecture: - 2:1 diamond isometric projection - Painter's algorithm (tile → feature → unit depth sort) - Camera pan/zoom with lerp - Off-screen culling - Minimap on separate canvas - Sprite sheet animation via resolveUnitFrame - Event bus–friendly handlers (onTileClick, onUnitClick, etc.)\",\n \"suggestedFor\": [\n \"isometric\",\n \"canvas\",\n \"isometric canvas\"\n ],\n \"typicalSize\": \"large\",\n \"propsSchema\": {\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"--- Closed-circuit props (MANDATORY) ---\"\n },\n \"isLoading\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Loading state indicator\"\n },\n \"error\": {\n \"types\": [\n \"error\"\n ],\n \"description\": \"Error state\"\n },\n \"entity\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Entity name for schema-driven auto-fetch\"\n },\n \"tiles\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"--- Grid data ---\"\n },\n \"units\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Array of units on the board\"\n },\n \"features\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Array of features (resources, portals, buildings, etc.)\"\n },\n \"selectedUnitId\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"--- Interaction state ---\"\n },\n \"validMoves\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Valid move positions (shown as pulsing green highlights)\"\n },\n \"attackTargets\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Attack target positions (shown as pulsing red highlights)\"\n },\n \"hoveredTile\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Hovered tile position\"\n },\n \"onTileClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"--- Event handlers ---\"\n },\n \"onUnitClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Unit click handler\"\n },\n \"onTileHover\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Tile hover handler\"\n },\n \"onTileLeave\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Tile leave handler\"\n },\n \"scale\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"--- Rendering options ---\"\n },\n \"debug\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Show debug grid lines and coordinates\"\n },\n \"backgroundImage\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Background image URL tiled behind the isometric grid\"\n },\n \"showMinimap\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Toggle minimap overlay\"\n },\n \"enableCamera\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Enable camera pan/zoom controls\"\n },\n \"unitScale\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Extra scale multiplier for unit draw size. 1 = default.\"\n },\n \"getTerrainSprite\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"--- Asset resolution (project-agnostic) ---\"\n },\n \"getFeatureSprite\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Resolve feature sprite URL from feature type key\"\n },\n \"getUnitSprite\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Resolve unit static sprite URL\"\n },\n \"resolveUnitFrame\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Resolve animated sprite sheet frame for a unit\"\n },\n \"effectSpriteUrls\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Additional sprite URLs to preload (e.g., effect sprites)\"\n },\n \"onDrawEffects\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Callback to draw canvas effects after units\"\n },\n \"hasActiveEffects\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Whether there are active effects — keeps RAF loop alive\"\n },\n \"assetBaseUrl\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"--- Remote asset loading ---\"\n },\n \"assetManifest\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Manifest mapping entity keys to relative sprite paths. Combined with assetBaseUrl to produce full URLs. Used as a fallback when inline URLs and callbacks don't resolve.\"\n }\n }\n },\n \"battle-template\": {\n \"type\": \"battle-template\",\n \"category\": \"template\",\n \"description\": \"BattleTemplate Generalized tactical battle template composing IsometricCanvas from almadar-ui. Provides turn-based phase management, movement animation, valid-move/attack-target calculation, screen shake/flash, and a game-over overlay. Game-specific UI (combat log, trait viewer, damage popups, etc.) is injected via render-prop slots so this template remains project-agnostic.\",\n \"suggestedFor\": [\n \"battle\",\n \"template\",\n \"battle template\"\n ],\n \"typicalSize\": \"full\",\n \"propsSchema\": {\n \"initialUnits\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Initial units for the battle\",\n \"required\": true\n },\n \"tiles\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Isometric tiles (pre-resolved with terrainSprite)\",\n \"required\": true\n },\n \"scale\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Canvas render scale\"\n },\n \"boardWidth\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Board width for bounds checking\"\n },\n \"boardHeight\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Board height for bounds checking\"\n },\n \"assetManifest\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Asset manifest for IsometricCanvas\"\n },\n \"backgroundImage\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Background image URL for canvas\"\n },\n \"unitScale\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Unit draw-size multiplier\"\n },\n \"header\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"-- Slots --\"\n },\n \"sidebar\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Sidebar content (combat log, unit roster, etc.)\"\n },\n \"actions\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Floating action buttons\"\n },\n \"overlay\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Floating overlays above the canvas (damage popups, tooltips)\"\n },\n \"gameOverOverlay\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Game-over screen overlay\"\n },\n \"features\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"-- Obstacle features --\"\n },\n \"onAttack\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"-- Callbacks --\"\n },\n \"onGameEnd\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when battle ends\"\n },\n \"onUnitMove\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called after a unit moves\"\n },\n \"calculateDamage\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Custom combat damage calculator\"\n },\n \"onDrawEffects\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"-- Canvas pass-through --\"\n },\n \"hasActiveEffects\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"hasActiveEffects prop\"\n },\n \"effectSpriteUrls\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"effectSpriteUrls prop\"\n },\n \"resolveUnitFrame\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"resolveUnitFrame prop\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n }\n }\n },\n \"castle-template\": {\n \"type\": \"castle-template\",\n \"category\": \"template\",\n \"description\": \"CastleTemplate Generalized castle / base-management template composing IsometricCanvas from almadar-ui. Renders an isometric courtyard/base view and exposes a side-panel area via slots for game-specific UI (building details, recruitment, garrison).\",\n \"suggestedFor\": [\n \"castle\",\n \"template\",\n \"castle template\"\n ],\n \"typicalSize\": \"full\",\n \"propsSchema\": {\n \"tiles\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Isometric tiles (pre-resolved with terrainSprite)\",\n \"required\": true\n },\n \"features\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Building features rendered on the grid\"\n },\n \"units\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Garrison / stationed units on the grid\"\n },\n \"scale\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Canvas render scale\"\n },\n \"assetManifest\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Asset manifest for IsometricCanvas\"\n },\n \"backgroundImage\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Background image URL\"\n },\n \"header\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"-- Slots --\"\n },\n \"sidePanel\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Side panel content (buildings list, recruit tab, garrison tab)\"\n },\n \"overlay\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Canvas overlay (hover tooltips, etc.)\"\n },\n \"footer\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Bottom bar (income summary, etc.)\"\n },\n \"onFeatureClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"-- Callbacks --\"\n },\n \"onUnitClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when a unit is clicked\"\n },\n \"onTileClick\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when any tile is clicked\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n }\n }\n },\n \"world-map-template\": {\n \"type\": \"world-map-template\",\n \"category\": \"template\",\n \"description\": \"WorldMapTemplate Generalized strategic world-map template composing IsometricCanvas from almadar-ui. Renders an isometric hex/iso map with hero selection, movement animation, and encounter callbacks. Game-specific panels (hero detail, hero lists, resource bars) are injected via render-prop slots.\",\n \"suggestedFor\": [\n \"world\",\n \"map\",\n \"template\",\n \"world map template\"\n ],\n \"typicalSize\": \"full\",\n \"propsSchema\": {\n \"hexes\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"All map hexes (with pre-resolved terrain sprites)\",\n \"required\": true\n },\n \"heroes\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Heroes on the map\",\n \"required\": true\n },\n \"features\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"Features rendered on tiles\"\n },\n \"selectedHeroId\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Currently selected hero ID\"\n },\n \"scale\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Canvas render scale\"\n },\n \"unitScale\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Unit draw-size multiplier\"\n },\n \"assetManifest\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Asset manifest for IsometricCanvas\"\n },\n \"backgroundImage\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Background image URL\"\n },\n \"allowMoveAllHeroes\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Allow selecting / moving ALL heroes (including enemy). For testing.\"\n },\n \"isInRange\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Custom movement range validator\"\n },\n \"header\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"-- Slots --\"\n },\n \"sidePanel\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Side panel (hero detail, hero lists, etc.)\"\n },\n \"overlay\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Canvas overlay (tooltips, popups)\"\n },\n \"footer\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Footer\"\n },\n \"onHeroSelect\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"-- Callbacks --\"\n },\n \"onHeroMove\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"onHeroMove prop\"\n },\n \"onBattleEncounter\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when hero clicks an enemy hero tile\"\n },\n \"onFeatureEnter\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"Called when hero enters a feature hex (castle, resource, etc.)\"\n },\n \"effectSpriteUrls\": {\n \"types\": [\n \"array\"\n ],\n \"description\": \"-- Canvas pass-through --\"\n },\n \"resolveUnitFrame\": {\n \"types\": [\n \"function\"\n ],\n \"description\": \"resolveUnitFrame prop\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"className prop\"\n }\n }\n },\n \"heading\": {\n \"type\": \"heading\",\n \"category\": \"component\",\n \"description\": \"Alias for typography — Typography Atom Component Text elements following the KFlow design system with theme-aware styling.\",\n \"suggestedFor\": [\n \"typography\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"variant\": {\n \"types\": [\n \"typographyvariant\"\n ],\n \"description\": \"Typography variant\"\n },\n \"level\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Heading level (1-6) - alternative to variant for headings\"\n },\n \"color\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Text color\"\n },\n \"align\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Text alignment\"\n },\n \"weight\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Font weight override\"\n },\n \"size\": {\n \"types\": [\n \"typographysize\"\n ],\n \"description\": \"Font size override\"\n },\n \"truncate\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Truncate with ellipsis (single line)\"\n },\n \"overflow\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Overflow handling mode\"\n },\n \"as\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Custom HTML element\"\n },\n \"id\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"HTML id attribute\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional class names\"\n },\n \"style\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Inline style\"\n },\n \"content\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Text content (alternative to children)\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Children elements\"\n }\n }\n },\n \"text\": {\n \"type\": \"text\",\n \"category\": \"component\",\n \"description\": \"Alias for typography — Typography Atom Component Text elements following the KFlow design system with theme-aware styling.\",\n \"suggestedFor\": [\n \"typography\"\n ],\n \"typicalSize\": \"small\",\n \"propsSchema\": {\n \"variant\": {\n \"types\": [\n \"typographyvariant\"\n ],\n \"description\": \"Typography variant\"\n },\n \"level\": {\n \"types\": [\n \"number\"\n ],\n \"description\": \"Heading level (1-6) - alternative to variant for headings\"\n },\n \"color\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Text color\"\n },\n \"align\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Text alignment\"\n },\n \"weight\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Font weight override\"\n },\n \"size\": {\n \"types\": [\n \"typographysize\"\n ],\n \"description\": \"Font size override\"\n },\n \"truncate\": {\n \"types\": [\n \"boolean\"\n ],\n \"description\": \"Truncate with ellipsis (single line)\"\n },\n \"overflow\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Overflow handling mode\"\n },\n \"as\": {\n \"types\": [\n \"unknown\"\n ],\n \"description\": \"Custom HTML element\"\n },\n \"id\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"HTML id attribute\"\n },\n \"className\": {\n \"types\": [\n \"string\"\n ],\n \"description\": \"Additional class names\"\n },\n \"style\": {\n \"types\": [\n \"object\"\n ],\n \"description\": \"Inline style\"\n },\n \"content\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Text content (alternative to children)\"\n },\n \"children\": {\n \"types\": [\n \"node\"\n ],\n \"description\": \"Children elements\"\n }\n }\n }\n },\n \"categories\": [\n \"display\",\n \"header\",\n \"form\",\n \"filter\",\n \"navigation\",\n \"state\",\n \"dashboard\",\n \"container\",\n \"layout\",\n \"game\",\n \"debug\",\n \"meta\",\n \"component\",\n \"template\",\n \"visualization\",\n \"media\"\n ]\n}\n","{\n \"version\": \"1.0.0\",\n \"exportedAt\": \"2026-01-25T00:58:14.172Z\",\n \"integrators\": {\n \"youtube\": {\n \"name\": \"youtube\",\n \"description\": \"YouTube Data API - search videos, get video/channel details\",\n \"category\": \"media\",\n \"actions\": [\n {\n \"name\": \"search\",\n \"description\": \"Search for videos\",\n \"params\": [\n {\n \"name\": \"query\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Search query\"\n },\n {\n \"name\": \"maxResults\",\n \"type\": \"number\",\n \"required\": false,\n \"description\": \"Max results (1-50)\"\n },\n {\n \"name\": \"type\",\n \"type\": \"string\",\n \"required\": false,\n \"description\": \"video, channel, or playlist\"\n }\n ],\n \"responseShape\": {\n \"videoId\": \"string\",\n \"title\": \"string\",\n \"thumbnail\": \"string\",\n \"description\": \"string\"\n }\n },\n {\n \"name\": \"getVideo\",\n \"description\": \"Get video details by ID\",\n \"params\": [\n {\n \"name\": \"videoId\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"YouTube video ID\"\n }\n ],\n \"responseShape\": {\n \"title\": \"string\",\n \"description\": \"string\",\n \"viewCount\": \"number\",\n \"likeCount\": \"number\"\n }\n },\n {\n \"name\": \"getChannel\",\n \"description\": \"Get channel details by ID\",\n \"params\": [\n {\n \"name\": \"channelId\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"YouTube channel ID\"\n }\n ],\n \"responseShape\": {\n \"name\": \"string\",\n \"description\": \"string\",\n \"subscriberCount\": \"number\"\n }\n }\n ]\n },\n \"stripe\": {\n \"name\": \"stripe\",\n \"description\": \"Stripe payment processing - create intents, confirm payments, refunds\",\n \"category\": \"payment\",\n \"actions\": [\n {\n \"name\": \"createPaymentIntent\",\n \"description\": \"Create a payment intent for collecting payment\",\n \"params\": [\n {\n \"name\": \"amount\",\n \"type\": \"number\",\n \"required\": true,\n \"description\": \"Amount in cents\"\n },\n {\n \"name\": \"currency\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"ISO currency code (e.g., usd)\"\n },\n {\n \"name\": \"metadata\",\n \"type\": \"object\",\n \"required\": false,\n \"description\": \"Custom metadata\"\n }\n ],\n \"responseShape\": {\n \"id\": \"string\",\n \"clientSecret\": \"string\",\n \"status\": \"string\"\n }\n },\n {\n \"name\": \"confirmPayment\",\n \"description\": \"Confirm a payment intent\",\n \"params\": [\n {\n \"name\": \"paymentIntentId\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Payment intent ID\"\n }\n ],\n \"responseShape\": {\n \"status\": \"string\",\n \"amount\": \"number\"\n }\n },\n {\n \"name\": \"refund\",\n \"description\": \"Refund a payment\",\n \"params\": [\n {\n \"name\": \"paymentIntentId\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Payment intent ID\"\n },\n {\n \"name\": \"amount\",\n \"type\": \"number\",\n \"required\": false,\n \"description\": \"Amount to refund (partial)\"\n }\n ],\n \"responseShape\": {\n \"id\": \"string\",\n \"status\": \"string\",\n \"amount\": \"number\"\n }\n }\n ]\n },\n \"twilio\": {\n \"name\": \"twilio\",\n \"description\": \"Twilio messaging - send SMS, WhatsApp messages\",\n \"category\": \"messaging\",\n \"actions\": [\n {\n \"name\": \"sendSMS\",\n \"description\": \"Send an SMS message\",\n \"params\": [\n {\n \"name\": \"to\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Recipient phone number\"\n },\n {\n \"name\": \"body\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Message body\"\n }\n ],\n \"responseShape\": {\n \"sid\": \"string\",\n \"status\": \"string\"\n }\n },\n {\n \"name\": \"sendWhatsApp\",\n \"description\": \"Send a WhatsApp message\",\n \"params\": [\n {\n \"name\": \"to\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Recipient phone number\"\n },\n {\n \"name\": \"body\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Message body\"\n }\n ],\n \"responseShape\": {\n \"sid\": \"string\",\n \"status\": \"string\"\n }\n }\n ]\n },\n \"email\": {\n \"name\": \"email\",\n \"description\": \"Transactional email via SendGrid/Resend\",\n \"category\": \"messaging\",\n \"actions\": [\n {\n \"name\": \"send\",\n \"description\": \"Send a transactional email\",\n \"params\": [\n {\n \"name\": \"to\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Recipient email\"\n },\n {\n \"name\": \"subject\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Email subject\"\n },\n {\n \"name\": \"body\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Email body (HTML or text)\"\n },\n {\n \"name\": \"from\",\n \"type\": \"string\",\n \"required\": false,\n \"description\": \"Sender email (uses default if omitted)\"\n }\n ],\n \"responseShape\": {\n \"id\": \"string\",\n \"status\": \"string\"\n }\n }\n ]\n },\n \"llm\": {\n \"name\": \"llm\",\n \"description\": \"LLM service for content generation, classification, and structured extraction\",\n \"category\": \"ai\",\n \"actions\": [\n {\n \"name\": \"generate\",\n \"description\": \"Generate content from a prompt\",\n \"params\": [\n {\n \"name\": \"systemPrompt\",\n \"type\": \"string\",\n \"required\": false,\n \"description\": \"System instructions for the LLM\"\n },\n {\n \"name\": \"userPrompt\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"User prompt/question\"\n },\n {\n \"name\": \"model\",\n \"type\": \"string\",\n \"required\": false,\n \"description\": \"Model ID (default: claude-sonnet-4-5-20250929)\"\n },\n {\n \"name\": \"temperature\",\n \"type\": \"number\",\n \"required\": false,\n \"description\": \"Sampling temperature (0-1, default: 0.7)\"\n },\n {\n \"name\": \"maxTokens\",\n \"type\": \"number\",\n \"required\": false,\n \"description\": \"Max response tokens (default: 1024)\"\n }\n ],\n \"responseShape\": {\n \"content\": \"string\",\n \"usage\": \"object\"\n }\n },\n {\n \"name\": \"classify\",\n \"description\": \"Classify text into predefined categories\",\n \"params\": [\n {\n \"name\": \"text\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Text to classify\"\n },\n {\n \"name\": \"categories\",\n \"type\": \"array\",\n \"required\": true,\n \"description\": \"List of category labels\"\n },\n {\n \"name\": \"model\",\n \"type\": \"string\",\n \"required\": false,\n \"description\": \"Model ID\"\n }\n ],\n \"responseShape\": {\n \"category\": \"string\",\n \"confidence\": \"number\",\n \"reasoning\": \"string\"\n }\n },\n {\n \"name\": \"extract\",\n \"description\": \"Extract structured data from text using a schema\",\n \"params\": [\n {\n \"name\": \"text\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Text to extract from\"\n },\n {\n \"name\": \"schema\",\n \"type\": \"object\",\n \"required\": true,\n \"description\": \"JSON schema defining fields to extract\"\n },\n {\n \"name\": \"model\",\n \"type\": \"string\",\n \"required\": false,\n \"description\": \"Model ID\"\n }\n ],\n \"responseShape\": {\n \"data\": \"object\",\n \"confidence\": \"number\"\n }\n },\n {\n \"name\": \"summarize\",\n \"description\": \"Summarize long text content\",\n \"params\": [\n {\n \"name\": \"text\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Text to summarize\"\n },\n {\n \"name\": \"maxLength\",\n \"type\": \"number\",\n \"required\": false,\n \"description\": \"Target summary length in words\"\n },\n {\n \"name\": \"style\",\n \"type\": \"string\",\n \"required\": false,\n \"description\": \"Summary style: brief, detailed, bullet\"\n },\n {\n \"name\": \"model\",\n \"type\": \"string\",\n \"required\": false,\n \"description\": \"Model ID\"\n }\n ],\n \"responseShape\": {\n \"summary\": \"string\",\n \"keyPoints\": \"array\"\n }\n }\n ]\n },\n \"deepagent\": {\n \"name\": \"deepagent\",\n \"description\": \"AI code generation agent with tool use - generates schemas, code, and manages projects\",\n \"category\": \"ai\",\n \"actions\": [\n {\n \"name\": \"sendMessage\",\n \"description\": \"Send a message to the AI agent and get a response with tool calls\",\n \"params\": [\n {\n \"name\": \"message\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"User message to the agent\"\n },\n {\n \"name\": \"threadId\",\n \"type\": \"string\",\n \"required\": false,\n \"description\": \"Thread ID for conversation continuity\"\n },\n {\n \"name\": \"skill\",\n \"type\": \"string\",\n \"required\": false,\n \"description\": \"Skill to use: almadar-orbitals, almadar-fixing, etc.\"\n },\n {\n \"name\": \"context\",\n \"type\": \"object\",\n \"required\": false,\n \"description\": \"Additional context (current schema, project info)\"\n }\n ],\n \"responseShape\": {\n \"response\": \"string\",\n \"threadId\": \"string\",\n \"toolCalls\": \"array\",\n \"todos\": \"array\",\n \"schemaDiffs\": \"array\"\n }\n },\n {\n \"name\": \"cancelGeneration\",\n \"description\": \"Cancel an ongoing generation\",\n \"params\": [\n {\n \"name\": \"threadId\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Thread ID to cancel\"\n }\n ],\n \"responseShape\": {\n \"success\": \"boolean\"\n }\n },\n {\n \"name\": \"validateSchema\",\n \"description\": \"Validate an orbital schema\",\n \"params\": [\n {\n \"name\": \"schema\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Schema content to validate\"\n }\n ],\n \"responseShape\": {\n \"valid\": \"boolean\",\n \"errors\": \"array\",\n \"warnings\": \"array\"\n }\n },\n {\n \"name\": \"compileSchema\",\n \"description\": \"Compile an orbital schema to target shell\",\n \"params\": [\n {\n \"name\": \"schema\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Schema content to compile\"\n },\n {\n \"name\": \"shell\",\n \"type\": \"string\",\n \"required\": false,\n \"description\": \"Target shell: typescript, python (default: typescript)\"\n }\n ],\n \"responseShape\": {\n \"success\": \"boolean\",\n \"outputPath\": \"string\",\n \"errors\": \"array\"\n }\n },\n {\n \"name\": \"getThreadHistory\",\n \"description\": \"Get conversation history for a thread\",\n \"params\": [\n {\n \"name\": \"threadId\",\n \"type\": \"string\",\n \"required\": true,\n \"description\": \"Thread ID to get history for\"\n }\n ],\n \"responseShape\": {\n \"messages\": \"array\",\n \"todos\": \"array\",\n \"schemaDiffs\": \"array\"\n }\n }\n ]\n }\n },\n \"categories\": [\"media\", \"payment\", \"messaging\", \"ai\"]\n}\n","{\n \"version\": \"1.0.0\",\n \"exportedAt\": \"2026-02-10T15:35:56.769Z\",\n \"mappings\": {\n \"page-header\": {\n \"component\": \"PageHeader\",\n \"importPath\": \"@/components/organisms/PageHeader\",\n \"category\": \"header\"\n },\n \"entity-list\": {\n \"component\": \"List\",\n \"importPath\": \"@/components/organisms/List\",\n \"category\": \"display\"\n },\n \"entity-table\": {\n \"component\": \"DataTable\",\n \"importPath\": \"@/components/organisms/DataTable\",\n \"category\": \"display\"\n },\n \"entity-cards\": {\n \"component\": \"CardGrid\",\n \"importPath\": \"@/components/organisms/CardGrid\",\n \"category\": \"display\"\n },\n \"stats\": {\n \"component\": \"StatCard\",\n \"importPath\": \"@/components/organisms/StatCard\",\n \"category\": \"display\"\n },\n \"detail-panel\": {\n \"component\": \"DetailPanel\",\n \"importPath\": \"@/components/organisms/DetailPanel\",\n \"category\": \"display\"\n },\n \"form\": {\n \"component\": \"Form\",\n \"importPath\": \"@/components/organisms/Form\",\n \"category\": \"form\"\n },\n \"form-section\": {\n \"component\": \"Form\",\n \"importPath\": \"@/components/organisms/Form\",\n \"category\": \"form\"\n },\n \"form-actions\": {\n \"component\": \"ButtonGroup\",\n \"importPath\": \"@/components/molecules/ButtonGroup\",\n \"category\": \"form\"\n },\n \"filter-group\": {\n \"component\": \"FilterGroup\",\n \"importPath\": \"@/components/molecules/FilterGroup\",\n \"category\": \"filter\"\n },\n \"search-input\": {\n \"component\": \"SearchInput\",\n \"importPath\": \"@/components/molecules/SearchInput\",\n \"category\": \"filter\"\n },\n \"empty-state\": {\n \"component\": \"EmptyState\",\n \"importPath\": \"@/components/molecules/EmptyState\",\n \"category\": \"state\"\n },\n \"loading-state\": {\n \"component\": \"LoadingState\",\n \"importPath\": \"@/components/molecules/LoadingState\",\n \"category\": \"state\"\n },\n \"error-state\": {\n \"component\": \"ErrorState\",\n \"importPath\": \"@/components/molecules/ErrorState\",\n \"category\": \"state\"\n },\n \"notification\": {\n \"component\": \"Toast\",\n \"importPath\": \"@/components/molecules/Toast\",\n \"category\": \"state\"\n },\n \"tabs\": {\n \"component\": \"Tabs\",\n \"importPath\": \"@/components/molecules/Tabs\",\n \"category\": \"navigation\"\n },\n \"breadcrumb\": {\n \"component\": \"Breadcrumb\",\n \"importPath\": \"@/components/molecules/Breadcrumb\",\n \"category\": \"navigation\"\n },\n \"wizard-container\": {\n \"component\": \"WizardContainer\",\n \"importPath\": \"@/components/organisms/WizardContainer\",\n \"category\": \"navigation\"\n },\n \"wizard-progress\": {\n \"component\": \"WizardProgress\",\n \"importPath\": \"@/components/molecules/WizardProgress\",\n \"category\": \"navigation\"\n },\n \"wizard-navigation\": {\n \"component\": \"WizardNavigation\",\n \"importPath\": \"@/components/molecules/WizardNavigation\",\n \"category\": \"navigation\"\n },\n \"pagination\": {\n \"component\": \"Pagination\",\n \"importPath\": \"@/components/molecules/Pagination\",\n \"category\": \"navigation\"\n },\n \"card\": {\n \"component\": \"Card\",\n \"importPath\": \"@/components/molecules/Card\",\n \"category\": \"display\"\n },\n \"modal\": {\n \"component\": \"Modal\",\n \"importPath\": \"@/components/molecules/Modal\",\n \"category\": \"layout\"\n },\n \"drawer\": {\n \"component\": \"Drawer\",\n \"importPath\": \"@/components/molecules/Drawer\",\n \"category\": \"layout\"\n },\n \"confirm-dialog\": {\n \"component\": \"ConfirmDialog\",\n \"importPath\": \"@/components/organisms/ConfirmDialog\",\n \"category\": \"layout\"\n },\n \"master-detail\": {\n \"component\": \"MasterDetail\",\n \"importPath\": \"@/components/organisms/layout/MasterDetail\",\n \"category\": \"layout\"\n },\n \"dashboard-grid\": {\n \"component\": \"DashboardGrid\",\n \"importPath\": \"@/components/organisms/layout/DashboardGrid\",\n \"category\": \"layout\"\n },\n \"game-hud\": {\n \"component\": \"GameHud\",\n \"importPath\": \"@/components/organisms/game/GameHud\",\n \"category\": \"game\"\n },\n \"game-menu\": {\n \"component\": \"GameMenu\",\n \"importPath\": \"@/components/organisms/game/GameMenu\",\n \"category\": \"game\"\n },\n \"game-over-screen\": {\n \"component\": \"GameOverScreen\",\n \"importPath\": \"@/components/organisms/game/GameOverScreen\",\n \"category\": \"game\"\n },\n \"inventory-panel\": {\n \"component\": \"InventoryPanel\",\n \"importPath\": \"@/components/organisms/game/InventoryPanel\",\n \"category\": \"game\"\n },\n \"dialogue-box\": {\n \"component\": \"DialogueBox\",\n \"importPath\": \"@/components/organisms/game/DialogueBox\",\n \"category\": \"game\"\n },\n \"runtime-debugger\": {\n \"component\": \"RuntimeDebugger\",\n \"importPath\": \"@/components/organisms/debug/RuntimeDebugger\",\n \"category\": \"debug\"\n },\n \"repeatable-form-section\": {\n \"component\": \"RepeatableFormSection\",\n \"importPath\": \"@/clients/inspection-system/molecules/RepeatableFormSection\",\n \"category\": \"form\",\n \"client\": \"inspection-system\"\n },\n \"box\": {\n \"component\": \"Box\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"layout\"\n },\n \"grid\": {\n \"component\": \"Grid\",\n \"importPath\": \"@/components/molecules\",\n \"category\": \"layout\"\n },\n \"center\": {\n \"component\": \"Center\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"layout\"\n },\n \"spacer\": {\n \"component\": \"Spacer\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"layout\"\n },\n \"divider\": {\n \"component\": \"Divider\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"layout\"\n },\n \"button\": {\n \"component\": \"Button\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"atom\"\n },\n \"badge\": {\n \"component\": \"Badge\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"atom\"\n },\n \"avatar\": {\n \"component\": \"Avatar\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"atom\"\n },\n \"icon\": {\n \"component\": \"Icon\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"atom\"\n },\n \"spinner\": {\n \"component\": \"Spinner\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"atom\"\n },\n \"input\": {\n \"component\": \"Input\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"form\"\n },\n \"textarea\": {\n \"component\": \"Textarea\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"form\"\n },\n \"select\": {\n \"component\": \"Select\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"form\"\n },\n \"checkbox\": {\n \"component\": \"Checkbox\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"form\"\n },\n \"radio\": {\n \"component\": \"Radio\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"form\"\n },\n \"switch\": {\n \"component\": \"Switch\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"form\"\n },\n \"label\": {\n \"component\": \"Label\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"form\"\n },\n \"alert\": {\n \"component\": \"Alert\",\n \"importPath\": \"@/components/molecules/Alert\",\n \"category\": \"state\"\n },\n \"accordion\": {\n \"component\": \"Accordion\",\n \"importPath\": \"@/components/molecules/Accordion\",\n \"category\": \"display\"\n },\n \"tooltip\": {\n \"component\": \"Tooltip\",\n \"importPath\": \"@/components/molecules\",\n \"category\": \"atom\"\n },\n \"popover\": {\n \"component\": \"Popover\",\n \"importPath\": \"@/components/molecules\",\n \"category\": \"atom\"\n },\n \"menu\": {\n \"component\": \"Menu\",\n \"importPath\": \"@/components/molecules\",\n \"category\": \"navigation\"\n },\n \"progress-bar\": {\n \"component\": \"ProgressBar\",\n \"importPath\": \"@/components/atoms\",\n \"category\": \"display\"\n },\n \"container\": {\n \"component\": \"Container\",\n \"importPath\": \"@/components/molecules\",\n \"category\": \"layout\"\n },\n \"simple-grid\": {\n \"component\": \"SimpleGrid\",\n \"importPath\": \"@/components/molecules\",\n \"category\": \"layout\"\n },\n \"studio-home-web\": {\n \"component\": \"StudioHomeWebTemplate\",\n \"importPath\": \"@/clients/builder/templates/StudioHomeWebTemplate\",\n \"category\": \"template\",\n \"client\": \"builder\"\n },\n \"studio-home-electron\": {\n \"component\": \"StudioHomeElectronTemplate\",\n \"importPath\": \"@/clients/builder/templates/StudioHomeElectronTemplate\",\n \"category\": \"template\",\n \"client\": \"builder\"\n },\n \"studio-project\": {\n \"component\": \"StudioProjectTemplate\",\n \"importPath\": \"@/clients/builder/templates/StudioProjectTemplate\",\n \"category\": \"template\",\n \"client\": \"builder\"\n },\n \"hex-battlefield\": {\n \"component\": \"BattlefieldTemplate\",\n \"importPath\": \"@/clients/trait-wars/templates/BattlefieldTemplate\",\n \"category\": \"template\",\n \"client\": \"trait-wars\"\n },\n \"hero-selection\": {\n \"component\": \"HexTraitWarsGame\",\n \"importPath\": \"@/clients/trait-wars/templates/HexTraitWarsGame\",\n \"category\": \"template\",\n \"client\": \"trait-wars\"\n },\n \"hero-profile\": {\n \"component\": \"HeroProfileTemplate\",\n \"importPath\": \"@/clients/trait-wars/templates/HeroProfileTemplate\",\n \"category\": \"template\",\n \"client\": \"trait-wars\"\n },\n \"army-builder\": {\n \"component\": \"ArmyBuilderTemplate\",\n \"importPath\": \"@/clients/trait-wars/templates/ArmyBuilderTemplate\",\n \"category\": \"template\",\n \"client\": \"trait-wars\"\n },\n \"conditional-wrapper\": {\n \"component\": \"ConditionalWrapper\",\n \"importPath\": \"@/components/atoms/ConditionalWrapper\",\n \"category\": \"component\"\n },\n \"law-reference-tooltip\": {\n \"component\": \"LawReferenceTooltip\",\n \"importPath\": \"@/components/atoms/LawReferenceTooltip\",\n \"category\": \"component\"\n },\n \"overlay\": {\n \"component\": \"Overlay\",\n \"importPath\": \"@/components/atoms/Overlay\",\n \"category\": \"container\"\n },\n \"stack\": {\n \"component\": \"Stack\",\n \"importPath\": \"@/components/atoms/Stack\",\n \"category\": \"component\"\n },\n \"vstack\": {\n \"component\": \"VStack\",\n \"importPath\": \"@/components/atoms/Stack\",\n \"category\": \"component\"\n },\n \"hstack\": {\n \"component\": \"HStack\",\n \"importPath\": \"@/components/atoms/Stack\",\n \"category\": \"component\"\n },\n \"text-highlight\": {\n \"component\": \"TextHighlight\",\n \"importPath\": \"@/components/atoms/TextHighlight\",\n \"category\": \"component\"\n },\n \"theme-toggle\": {\n \"component\": \"ThemeToggle\",\n \"importPath\": \"@/components/atoms/ThemeToggle\",\n \"category\": \"component\"\n },\n \"typography\": {\n \"component\": \"Typography\",\n \"importPath\": \"@/components/atoms/Typography\",\n \"category\": \"component\"\n },\n \"control-button\": {\n \"component\": \"ControlButton\",\n \"importPath\": \"@/components/atoms/ControlButton\",\n \"category\": \"component\"\n },\n \"health-bar\": {\n \"component\": \"HealthBar\",\n \"importPath\": \"@/components/atoms/HealthBar\",\n \"category\": \"component\"\n },\n \"score-display\": {\n \"component\": \"ScoreDisplay\",\n \"importPath\": \"@/components/atoms/ScoreDisplay\",\n \"category\": \"component\"\n },\n \"sprite\": {\n \"component\": \"Sprite\",\n \"importPath\": \"@/components/atoms/Sprite\",\n \"category\": \"game\"\n },\n \"flex\": {\n \"component\": \"Flex\",\n \"importPath\": \"@/components/molecules/Flex\",\n \"category\": \"component\"\n },\n \"floating-action-button\": {\n \"component\": \"FloatingActionButton\",\n \"importPath\": \"@/components/molecules/FloatingActionButton\",\n \"category\": \"component\"\n },\n \"form-field\": {\n \"component\": \"FormField\",\n \"importPath\": \"@/components/molecules/FormField\",\n \"category\": \"form\"\n },\n \"form-section-header\": {\n \"component\": \"FormSectionHeader\",\n \"importPath\": \"@/components/molecules/FormSectionHeader\",\n \"category\": \"form\"\n },\n \"input-group\": {\n \"component\": \"InputGroup\",\n \"importPath\": \"@/components/molecules/InputGroup\",\n \"category\": \"form\"\n },\n \"relation-select\": {\n \"component\": \"RelationSelect\",\n \"importPath\": \"@/components/molecules/RelationSelect\",\n \"category\": \"form\"\n },\n \"side-panel\": {\n \"component\": \"SidePanel\",\n \"importPath\": \"@/components/molecules/SidePanel\",\n \"category\": \"component\"\n },\n \"violation-alert\": {\n \"component\": \"ViolationAlert\",\n \"importPath\": \"@/components/molecules/ViolationAlert\",\n \"category\": \"state\"\n },\n \"action-buttons\": {\n \"component\": \"ActionButtons\",\n \"importPath\": \"@/components/molecules/ActionButtons\",\n \"category\": \"component\"\n },\n \"d-pad\": {\n \"component\": \"DPad\",\n \"importPath\": \"@/components/molecules/DPad\",\n \"category\": \"component\"\n },\n \"stat-badge\": {\n \"component\": \"StatBadge\",\n \"importPath\": \"@/components/molecules/StatBadge\",\n \"category\": \"display\"\n },\n \"button-pattern\": {\n \"component\": \"ButtonPattern\",\n \"importPath\": \"@/components/organisms/ButtonPattern\",\n \"category\": \"display\"\n },\n \"custom-pattern\": {\n \"component\": \"CustomPattern\",\n \"importPath\": \"@/components/organisms/CustomPattern\",\n \"category\": \"display\"\n },\n \"drawer-slot\": {\n \"component\": \"DrawerSlot\",\n \"importPath\": \"@/components/organisms/DrawerSlot\",\n \"category\": \"layout\"\n },\n \"header\": {\n \"component\": \"Header\",\n \"importPath\": \"@/components/organisms/Header\",\n \"category\": \"header\"\n },\n \"layout-pattern\": {\n \"component\": \"LayoutPattern\",\n \"importPath\": \"@/components/organisms/LayoutPattern\",\n \"category\": \"layout\"\n },\n \"modal-slot\": {\n \"component\": \"ModalSlot\",\n \"importPath\": \"@/components/organisms/ModalSlot\",\n \"category\": \"layout\"\n },\n \"navigation\": {\n \"component\": \"Navigation\",\n \"importPath\": \"@/components/organisms/Navigation\",\n \"category\": \"navigation\"\n },\n \"orbital-visualization\": {\n \"component\": \"OrbitalVisualization\",\n \"importPath\": \"@/components/organisms/OrbitalVisualization\",\n \"category\": \"display\"\n },\n \"section\": {\n \"component\": \"Section\",\n \"importPath\": \"@/components/organisms/Section\",\n \"category\": \"display\"\n },\n \"sidebar\": {\n \"component\": \"Sidebar\",\n \"importPath\": \"@/components/organisms/Sidebar\",\n \"category\": \"navigation\"\n },\n \"split\": {\n \"component\": \"Split\",\n \"importPath\": \"@/components/organisms/Split\",\n \"category\": \"layout\"\n },\n \"table\": {\n \"component\": \"Table\",\n \"importPath\": \"@/components/organisms/Table\",\n \"category\": \"display\"\n },\n \"toast-slot\": {\n \"component\": \"ToastSlot\",\n \"importPath\": \"@/components/organisms/ToastSlot\",\n \"category\": \"layout\"\n },\n \"u-i-slot-renderer\": {\n \"component\": \"UISlotRenderer\",\n \"importPath\": \"@/components/organisms/UISlotRenderer\",\n \"category\": \"layout\"\n },\n \"split-pane\": {\n \"component\": \"SplitPane\",\n \"importPath\": \"@/components/organisms/SplitPane\",\n \"category\": \"layout\"\n },\n \"tabbed-container\": {\n \"component\": \"TabbedContainer\",\n \"importPath\": \"@/components/organisms/TabbedContainer\",\n \"category\": \"navigation\"\n },\n \"auth-layout\": {\n \"component\": \"AuthLayout\",\n \"importPath\": \"@/components/templates/AuthLayout\",\n \"category\": \"template\"\n },\n \"counter-template\": {\n \"component\": \"CounterTemplate\",\n \"importPath\": \"@/components/templates/CounterTemplate\",\n \"category\": \"template\"\n },\n \"crud-template\": {\n \"component\": \"CrudTemplate\",\n \"importPath\": \"@/components/templates/CrudTemplate\",\n \"category\": \"template\"\n },\n \"dashboard-layout\": {\n \"component\": \"DashboardLayout\",\n \"importPath\": \"@/components/templates/DashboardLayout\",\n \"category\": \"template\"\n },\n \"form-template\": {\n \"component\": \"FormTemplate\",\n \"importPath\": \"@/components/templates/FormTemplate\",\n \"category\": \"template\"\n },\n \"game-template\": {\n \"component\": \"GameTemplate\",\n \"importPath\": \"@/components/templates/GameTemplate\",\n \"category\": \"template\"\n },\n \"generic-app-template\": {\n \"component\": \"GenericAppTemplate\",\n \"importPath\": \"@/components/templates/GenericAppTemplate\",\n \"category\": \"template\"\n },\n \"list-template\": {\n \"component\": \"ListTemplate\",\n \"importPath\": \"@/components/templates/ListTemplate\",\n \"category\": \"template\"\n },\n \"settings-template\": {\n \"component\": \"SettingsTemplate\",\n \"importPath\": \"@/components/templates/SettingsTemplate\",\n \"category\": \"template\"\n },\n \"game-shell\": {\n \"component\": \"GameShell\",\n \"importPath\": \"@/components/templates/GameShell\",\n \"category\": \"template\"\n },\n \"chart\": {\n \"component\": \"Chart\",\n \"importPath\": \"@almadar/ui\",\n \"category\": \"visualization\"\n },\n \"meter\": {\n \"component\": \"Meter\",\n \"importPath\": \"@almadar/ui\",\n \"category\": \"visualization\"\n },\n \"timeline\": {\n \"component\": \"Timeline\",\n \"importPath\": \"@almadar/ui\",\n \"category\": \"display\"\n },\n \"media-gallery\": {\n \"component\": \"MediaGallery\",\n \"importPath\": \"@almadar/ui\",\n \"category\": \"media\"\n },\n \"signature-pad\": {\n \"component\": \"SignaturePad\",\n \"importPath\": \"@almadar/ui\",\n \"category\": \"form\"\n },\n \"document-viewer\": {\n \"component\": \"DocumentViewer\",\n \"importPath\": \"@almadar/ui\",\n \"category\": \"display\"\n },\n \"graph-canvas\": {\n \"component\": \"GraphCanvas\",\n \"importPath\": \"@almadar/ui\",\n \"category\": \"visualization\"\n },\n \"code-viewer\": {\n \"component\": \"CodeViewer\",\n \"importPath\": \"@almadar/ui\",\n \"category\": \"display\"\n },\n \"canvas-effect\": {\n \"component\": \"CanvasEffect\",\n \"importPath\": \"@/components/organisms/CanvasEffect\",\n \"category\": \"game\"\n },\n \"isometric-canvas\": {\n \"component\": \"IsometricCanvas\",\n \"importPath\": \"@/components/organisms/IsometricCanvas\",\n \"category\": \"game\"\n },\n \"battle-template\": {\n \"component\": \"BattleTemplate\",\n \"importPath\": \"@/components/templates/BattleTemplate\",\n \"category\": \"template\"\n },\n \"castle-template\": {\n \"component\": \"CastleTemplate\",\n \"importPath\": \"@/components/templates/CastleTemplate\",\n \"category\": \"template\"\n },\n \"world-map-template\": {\n \"component\": \"WorldMapTemplate\",\n \"importPath\": \"@/components/templates/WorldMapTemplate\",\n \"category\": \"template\"\n },\n \"heading\": {\n \"component\": \"Typography\",\n \"importPath\": \"@/components/atoms/Typography\",\n \"category\": \"component\"\n },\n \"text\": {\n \"component\": \"Typography\",\n \"importPath\": \"@/components/atoms/Typography\",\n \"category\": \"component\"\n }\n }\n}\n","{\n \"version\": \"1.0.0\",\n \"exportedAt\": \"2026-02-10T15:35:56.769Z\",\n \"contracts\": {\n \"form\": {\n \"emits\": [\n {\n \"event\": \"GLOBAL_VARIABLE_SET\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"VIOLATION_DETECTED\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"FIELD_CHANGED\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"CLOSE\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [\n \"SAVE\",\n \"CANCEL\"\n ],\n \"entityAware\": true\n },\n \"form-section\": {\n \"emits\": [\n {\n \"event\": \"GLOBAL_VARIABLE_SET\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"VIOLATION_DETECTED\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"FIELD_CHANGED\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"CLOSE\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [\n \"SAVE\",\n \"CANCEL\"\n ],\n \"entityAware\": true\n },\n \"form-actions\": {\n \"emits\": [\n {\n \"event\": \"DISPATCH\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": true,\n \"configDriven\": true\n },\n \"entity-table\": {\n \"emits\": [\n {\n \"event\": \"VIEW\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"SEARCH\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": true,\n \"configDriven\": true\n },\n \"entity-cards\": {\n \"emits\": [\n {\n \"event\": \"VIEW\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"EntityRow\"\n },\n \"optional\": true\n },\n {\n \"event\": \"SELECT\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"EntityRow\"\n },\n \"optional\": true\n }\n ],\n \"requires\": [],\n \"entityAware\": true,\n \"configDriven\": true\n },\n \"entity-list\": {\n \"emits\": [\n {\n \"event\": \"VIEW\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"EntityRow\"\n },\n \"optional\": true\n },\n {\n \"event\": \"SELECT\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"EntityRow\"\n },\n \"optional\": true\n }\n ],\n \"requires\": [],\n \"entityAware\": true,\n \"configDriven\": true\n },\n \"detail-panel\": {\n \"emits\": [],\n \"requires\": [],\n \"entityAware\": true\n },\n \"page-header\": {\n \"emits\": [\n {\n \"event\": \"CREATE\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n },\n \"optional\": true\n }\n ],\n \"requires\": [],\n \"entityAware\": false,\n \"configDriven\": true\n },\n \"filter-group\": {\n \"emits\": [\n {\n \"event\": \"FILTER\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"CLEAR_FILTERS\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": true,\n \"configDriven\": true\n },\n \"search-input\": {\n \"emits\": [\n {\n \"event\": \"SEARCH\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"CLEAR_SEARCH\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": true\n },\n \"empty-state\": {\n \"emits\": [\n {\n \"event\": \"CREATE\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n },\n \"optional\": true\n }\n ],\n \"requires\": [],\n \"entityAware\": false,\n \"configDriven\": true\n },\n \"loading-state\": {\n \"emits\": [],\n \"requires\": [],\n \"entityAware\": false\n },\n \"error-state\": {\n \"emits\": [\n {\n \"event\": \"RETRY\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n },\n \"optional\": true\n }\n ],\n \"requires\": [],\n \"entityAware\": false,\n \"configDriven\": true\n },\n \"notification\": {\n \"emits\": [\n {\n \"event\": \"DISMISS\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n },\n \"optional\": true\n },\n {\n \"event\": \"ACTION\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n },\n \"optional\": true\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"tabs\": {\n \"emits\": [\n {\n \"event\": \"TAB_CHANGE\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"tabId\": \"string\"\n }\n },\n \"optional\": true\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"breadcrumb\": {\n \"emits\": [],\n \"requires\": [],\n \"entityAware\": false\n },\n \"wizard-container\": {\n \"emits\": [\n {\n \"event\": \"WIZARD_NEXT\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n }\n },\n {\n \"event\": \"WIZARD_BACK\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n }\n },\n {\n \"event\": \"WIZARD_COMPLETE\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n }\n },\n {\n \"event\": \"WIZARD_STEP_CHANGE\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"step\": \"number\"\n }\n }\n }\n ],\n \"requires\": [\n \"WIZARD_COMPLETE\"\n ],\n \"entityAware\": true\n },\n \"wizard-progress\": {\n \"emits\": [\n {\n \"event\": \"WIZARD_STEP_CLICK\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"step\": \"number\"\n }\n },\n \"optional\": true\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"wizard-navigation\": {\n \"emits\": [\n {\n \"event\": \"WIZARD_NEXT\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n }\n },\n {\n \"event\": \"WIZARD_BACK\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n }\n },\n {\n \"event\": \"WIZARD_COMPLETE\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": false,\n \"configDriven\": true\n },\n \"pagination\": {\n \"emits\": [\n {\n \"event\": \"PAGE_CHANGE\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"page\": \"number\"\n }\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"modal\": {\n \"emits\": [\n {\n \"event\": \"CLOSE\",\n \"trigger\": \"close\",\n \"payload\": {\n \"type\": \"void\"\n }\n }\n ],\n \"requires\": [\n \"CLOSE\"\n ],\n \"entityAware\": false\n },\n \"drawer\": {\n \"emits\": [\n {\n \"event\": \"CLOSE\",\n \"trigger\": \"close\",\n \"payload\": {\n \"type\": \"void\"\n }\n }\n ],\n \"requires\": [\n \"CLOSE\"\n ],\n \"entityAware\": false\n },\n \"confirm-dialog\": {\n \"emits\": [\n {\n \"event\": \"CONFIRM\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n }\n },\n {\n \"event\": \"CANCEL\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n }\n }\n ],\n \"requires\": [\n \"CONFIRM\",\n \"CANCEL\"\n ],\n \"entityAware\": false\n },\n \"master-detail\": {\n \"emits\": [\n {\n \"event\": \"SELECT\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"EntityRow\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"dashboard-grid\": {\n \"emits\": [],\n \"requires\": [],\n \"entityAware\": false\n },\n \"stats\": {\n \"emits\": [],\n \"requires\": [],\n \"entityAware\": true\n },\n \"card\": {\n \"emits\": [\n {\n \"event\": \"CLICK\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n },\n \"optional\": true\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"game-hud\": {\n \"emits\": [],\n \"requires\": [],\n \"entityAware\": false\n },\n \"game-menu\": {\n \"emits\": [\n {\n \"event\": \"START\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n },\n \"optional\": true\n },\n {\n \"event\": \"RESUME\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n },\n \"optional\": true\n },\n {\n \"event\": \"RESTART\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n },\n \"optional\": true\n }\n ],\n \"requires\": [],\n \"entityAware\": false,\n \"configDriven\": true\n },\n \"game-over-screen\": {\n \"emits\": [\n {\n \"event\": \"RESTART\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n }\n },\n {\n \"event\": \"QUIT\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n },\n \"optional\": true\n }\n ],\n \"requires\": [\n \"RESTART\"\n ],\n \"entityAware\": false\n },\n \"inventory-panel\": {\n \"emits\": [\n {\n \"event\": \"USE_ITEM\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"EntityRow\"\n },\n \"optional\": true\n },\n {\n \"event\": \"DROP_ITEM\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"EntityRow\"\n },\n \"optional\": true\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"dialogue-box\": {\n \"emits\": [\n {\n \"event\": \"ADVANCE\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"void\"\n }\n },\n {\n \"event\": \"CHOOSE\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"EntityRow\"\n },\n \"optional\": true\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"runtime-debugger\": {\n \"emits\": [],\n \"requires\": [],\n \"entityAware\": false\n },\n \"repeatable-form-section\": {\n \"emits\": [\n {\n \"event\": \"SECTION_ADDED\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"SECTION_REMOVED\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"studio-home-web\": {\n \"emits\": [\n {\n \"event\": \"CREATE_PROJECT\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"void\"\n }\n },\n {\n \"event\": \"SELECT_PROJECT\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"project\": \"object\"\n }\n }\n },\n {\n \"event\": \"DELETE_PROJECT\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"project\": \"object\"\n }\n }\n },\n {\n \"event\": \"OPEN_PROJECT\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"project\": \"object\"\n }\n }\n },\n {\n \"event\": \"SEARCH\",\n \"trigger\": \"input\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"query\": \"string\"\n }\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": true\n },\n \"studio-home-electron\": {\n \"emits\": [\n {\n \"event\": \"OPEN_FILE\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"void\"\n }\n },\n {\n \"event\": \"CREATE_NEW\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"void\"\n }\n },\n {\n \"event\": \"OPEN_RECENT\",\n \"trigger\": \"click\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"file\": \"object\"\n }\n }\n },\n {\n \"event\": \"REMOVE_RECENT\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"file\": \"object\"\n }\n }\n },\n {\n \"event\": \"CLEAR_RECENT\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"void\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"studio-project\": {\n \"emits\": [\n {\n \"event\": \"MODE_CHANGE\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"mode\": \"string\"\n }\n }\n },\n {\n \"event\": \"TAB_CHANGE\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"tab\": \"string\"\n }\n }\n },\n {\n \"event\": \"SAVE\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"projectId\": \"string\"\n }\n }\n },\n {\n \"event\": \"VALIDATE\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"projectId\": \"string\"\n }\n }\n },\n {\n \"event\": \"COMPILE\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"projectId\": \"string\"\n }\n }\n },\n {\n \"event\": \"PREVIEW\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"projectId\": \"string\"\n }\n }\n },\n {\n \"event\": \"BACK\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"void\"\n }\n },\n {\n \"event\": \"TOGGLE_AGENT\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"visible\": \"boolean\"\n }\n }\n },\n {\n \"event\": \"TOGGLE_INSPECTOR\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\",\n \"shape\": {\n \"visible\": \"boolean\"\n }\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": true\n },\n \"drawer-slot\": {\n \"emits\": [\n {\n \"event\": \"CLOSE\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"CANCEL\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"modal-slot\": {\n \"emits\": [\n {\n \"event\": \"CLOSE\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"CANCEL\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"toast-slot\": {\n \"emits\": [\n {\n \"event\": \"DISMISS\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"CLOSE\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": false\n },\n \"code-viewer\": {\n \"emits\": [\n {\n \"event\": \"CODE_COPY\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": true\n },\n \"document-viewer\": {\n \"emits\": [\n {\n \"event\": \"DOCUMENT_DOWNLOAD\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"DOCUMENT_PRINT\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"DOCUMENT_PAGE_CHANGE\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": true\n },\n \"media-gallery\": {\n \"emits\": [\n {\n \"event\": \"MEDIA_SELECT\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n },\n {\n \"event\": \"MEDIA_UPLOAD\",\n \"trigger\": \"action\",\n \"payload\": {\n \"type\": \"object\"\n }\n }\n ],\n \"requires\": [],\n \"entityAware\": true\n }\n }\n}\n","/**\n * Pattern Types (Auto-Generated)\n *\n * DO NOT EDIT MANUALLY - Generated by scripts/generate-pattern-types.ts\n * Run: npx tsx scripts/generate-pattern-types.ts\n *\n * Generated: 2026-02-10T14:06:03.975Z\n * Pattern count: 120\n */\n\n/**\n * All valid pattern type names from almadar-patterns registry.\n * Use this type in render-ui effects for compile-time validation.\n */\nexport type PatternType =\n | 'accordion'\n | 'action-buttons'\n | 'alert'\n | 'auth-layout'\n | 'avatar'\n | 'badge'\n | 'battle-template'\n | 'box'\n | 'breadcrumb'\n | 'button'\n | 'button-pattern'\n | 'canvas-effect'\n | 'card'\n | 'castle-template'\n | 'center'\n | 'chart'\n | 'checkbox'\n | 'code-viewer'\n | 'conditional-wrapper'\n | 'confirm-dialog'\n | 'container'\n | 'control-button'\n | 'counter-template'\n | 'crud-template'\n | 'custom-pattern'\n | 'd-pad'\n | 'dashboard-grid'\n | 'dashboard-layout'\n | 'detail-panel'\n | 'dialogue-box'\n | 'divider'\n | 'document-viewer'\n | 'drawer'\n | 'drawer-slot'\n | 'empty-state'\n | 'entity-cards'\n | 'entity-list'\n | 'entity-table'\n | 'error-state'\n | 'filter-group'\n | 'flex'\n | 'floating-action-button'\n | 'form'\n | 'form-actions'\n | 'form-field'\n | 'form-section'\n | 'form-section-header'\n | 'form-template'\n | 'game-hud'\n | 'game-menu'\n | 'game-over-screen'\n | 'game-shell'\n | 'game-template'\n | 'generic-app-template'\n | 'graph-canvas'\n | 'grid'\n | 'header'\n | 'health-bar'\n | 'icon'\n | 'input'\n | 'input-group'\n | 'inventory-panel'\n | 'isometric-canvas'\n | 'label'\n | 'law-reference-tooltip'\n | 'layout-pattern'\n | 'list-template'\n | 'loading-state'\n | 'master-detail'\n | 'media-gallery'\n | 'menu'\n | 'meter'\n | 'modal'\n | 'modal-slot'\n | 'navigation'\n | 'notification'\n | 'orbital-visualization'\n | 'overlay'\n | 'page-header'\n | 'pagination'\n | 'popover'\n | 'progress-bar'\n | 'radio'\n | 'relation-select'\n | 'repeatable-form-section'\n | 'runtime-debugger'\n | 'score-display'\n | 'search-input'\n | 'section'\n | 'select'\n | 'settings-template'\n | 'side-panel'\n | 'sidebar'\n | 'signature-pad'\n | 'simple-grid'\n | 'spacer'\n | 'spinner'\n | 'split'\n | 'split-pane'\n | 'sprite'\n | 'stack'\n | 'stat-badge'\n | 'stats'\n | 'switch'\n | 'tabbed-container'\n | 'table'\n | 'tabs'\n | 'text-highlight'\n | 'textarea'\n | 'theme-toggle'\n | 'timeline'\n | 'toast-slot'\n | 'tooltip'\n | 'typography'\n | 'u-i-slot-renderer'\n | 'violation-alert'\n | 'wizard-container'\n | 'wizard-navigation'\n | 'wizard-progress'\n | 'world-map-template';\n\n/**\n * Pattern props map - each pattern type maps to its valid props interface.\n * This enables full type-checking of pattern configurations.\n */\nexport interface PatternPropsMap {\n 'accordion': {\n type: 'accordion';\n /** Accordion items */\n items: unknown[] | string;\n /** Allow multiple items open at once @default false */\n multiple?: boolean | string;\n /** Default open items (IDs) */\n defaultOpenItems?: unknown[] | string;\n /** Default open items by index (pattern compatibility) */\n defaultOpen?: unknown[] | string;\n /** Controlled open items (IDs) */\n openItems?: unknown[] | string;\n /** Callback when item opens/closes */\n onItemToggle?: ((...args: unknown[]) => unknown) | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'action-buttons': {\n type: 'action-buttons';\n /** Button configurations */\n buttons: unknown[] | string;\n /** Called when a button is pressed/released */\n onAction: ((...args: unknown[]) => unknown) | string;\n /** Layout variant */\n layout?: string;\n /** Size variant */\n size?: string;\n /** Additional CSS classes */\n className?: string;\n /** Disabled state */\n disabled?: boolean | string;\n };\n 'alert': {\n type: 'alert';\n /** Alert content (children or message) */\n children?: unknown | string;\n /** Alert message (alias for children) */\n message?: string;\n /** variant prop */\n variant?: unknown | string;\n /** title prop */\n title?: string;\n /** dismissible prop */\n dismissible?: boolean | string;\n /** onDismiss prop */\n onDismiss?: ((...args: unknown[]) => unknown) | string;\n /** onClose prop */\n onClose?: ((...args: unknown[]) => unknown) | string;\n /** actions prop */\n actions?: unknown | string;\n /** className prop */\n className?: string;\n };\n 'auth-layout': {\n type: 'auth-layout';\n /** App name */\n appName?: string;\n /** Logo component or URL */\n logo?: unknown | string;\n /** Background image URL */\n backgroundImage?: string;\n /** Show branding panel on the side */\n showBranding?: boolean | string;\n /** Branding panel content */\n brandingContent?: unknown | string;\n };\n 'avatar': {\n type: 'avatar';\n /** Image source URL */\n src?: string;\n /** Alt text for the image */\n alt?: string;\n /** Full name - initials will be generated automatically */\n name?: string;\n /** Initials to display (e.g., \"JD\" for John Doe) If not provided but name is, initials will be auto-generated */\n initials?: string;\n /** Icon to display when no image or initials */\n icon?: unknown | string;\n /** Size of the avatar @default 'md' */\n size?: unknown | string;\n /** Status indicator */\n status?: unknown | string;\n /** Badge content (e.g., notification count) */\n badge?: string | number;\n /** Additional CSS classes */\n className?: string;\n /** Click handler */\n onClick?: ((...args: unknown[]) => unknown) | string;\n };\n 'badge': {\n type: 'badge';\n /** variant prop */\n variant?: unknown | string;\n /** size prop */\n size?: unknown | string;\n };\n 'battle-template': {\n type: 'battle-template';\n /** Initial units for the battle */\n initialUnits: unknown[] | string;\n /** Isometric tiles (pre-resolved with terrainSprite) */\n tiles: unknown[] | string;\n /** Canvas render scale */\n scale?: number | string;\n /** Board width for bounds checking */\n boardWidth?: number | string;\n /** Board height for bounds checking */\n boardHeight?: number | string;\n /** Asset manifest for IsometricCanvas */\n assetManifest?: Record<string, unknown> | string;\n /** Background image URL for canvas */\n backgroundImage?: string;\n /** Unit draw-size multiplier */\n unitScale?: number | string;\n /** -- Slots -- */\n header?: ((...args: unknown[]) => unknown) | string;\n /** Sidebar content (combat log, unit roster, etc.) */\n sidebar?: ((...args: unknown[]) => unknown) | string;\n /** Floating action buttons */\n actions?: ((...args: unknown[]) => unknown) | string;\n /** Floating overlays above the canvas (damage popups, tooltips) */\n overlay?: ((...args: unknown[]) => unknown) | string;\n /** Game-over screen overlay */\n gameOverOverlay?: ((...args: unknown[]) => unknown) | string;\n /** -- Obstacle features -- */\n features?: unknown[] | string;\n /** -- Callbacks -- */\n onAttack?: ((...args: unknown[]) => unknown) | string;\n /** Called when battle ends */\n onGameEnd?: ((...args: unknown[]) => unknown) | string;\n /** Called after a unit moves */\n onUnitMove?: ((...args: unknown[]) => unknown) | string;\n /** Custom combat damage calculator */\n calculateDamage?: ((...args: unknown[]) => unknown) | string;\n /** -- Canvas pass-through -- */\n onDrawEffects?: ((...args: unknown[]) => unknown) | string;\n /** hasActiveEffects prop */\n hasActiveEffects?: boolean | string;\n /** effectSpriteUrls prop */\n effectSpriteUrls?: unknown[] | string;\n /** resolveUnitFrame prop */\n resolveUnitFrame?: ((...args: unknown[]) => unknown) | string;\n /** className prop */\n className?: string;\n };\n 'box': {\n type: 'box';\n /** Padding on all sides */\n padding?: unknown | string;\n /** Horizontal padding (overrides padding for x-axis) */\n paddingX?: unknown | string;\n /** Vertical padding (overrides padding for y-axis) */\n paddingY?: unknown | string;\n /** Margin on all sides */\n margin?: unknown | string;\n /** Horizontal margin */\n marginX?: unknown | string;\n /** Vertical margin */\n marginY?: unknown | string;\n /** Background color */\n bg?: unknown | string;\n /** Show border */\n border?: boolean | string;\n /** Border radius */\n rounded?: unknown | string;\n /** Box shadow */\n shadow?: unknown | string;\n /** Display type */\n display?: string;\n /** Fill available width */\n fullWidth?: boolean | string;\n /** Fill available height */\n fullHeight?: boolean | string;\n /** Overflow behavior */\n overflow?: string;\n /** Position */\n position?: string;\n /** HTML element to render as */\n as?: unknown | string;\n };\n 'breadcrumb': {\n type: 'breadcrumb';\n /** Breadcrumb items */\n items: unknown[] | string;\n /** Separator icon */\n separator?: unknown | string;\n /** Maximum items to show (truncates with ellipsis) */\n maxItems?: number | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'button': {\n type: 'button';\n /** variant prop */\n variant?: unknown | string;\n /** size prop */\n size?: unknown | string;\n /** isLoading prop */\n isLoading?: boolean | string;\n /** Left icon as ReactNode (preferred) */\n leftIcon?: unknown | string;\n /** Right icon as ReactNode (preferred) */\n rightIcon?: unknown | string;\n /** Left icon as Lucide icon component (convenience prop, renders with default size) */\n icon?: unknown | string;\n /** Right icon as Lucide icon component (convenience prop) */\n iconRight?: unknown | string;\n };\n 'button-pattern': {\n type: 'button-pattern';\n /** label prop */\n label: string;\n /** variant prop */\n variant?: unknown | string;\n /** size prop */\n size?: unknown | string;\n /** disabled prop */\n disabled?: boolean | string;\n /** onClick prop */\n onClick?: string;\n /** icon prop */\n icon?: string;\n /** iconPosition prop */\n iconPosition?: string;\n /** className prop */\n className?: string;\n };\n 'canvas-effect': {\n type: 'canvas-effect';\n /** The type of combat action to visualise */\n actionType: unknown | string;\n /** Screen-space X position (center of the effect) */\n x: number | string;\n /** Screen-space Y position (center of the effect) */\n y: number | string;\n /** Duration in ms before auto-dismiss (default 2000 for canvas, 800 for emoji) */\n duration?: number | string;\n /** Optional intensity multiplier (1 = normal, 2 = double size/brightness) */\n intensity?: number | string;\n /** Callback when the effect animation completes */\n onComplete?: ((...args: unknown[]) => unknown) | string;\n /** Additional CSS classes */\n className?: string;\n /** Loading state indicator */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** --- Remote asset loading --- */\n effectSpriteUrl?: string;\n /** Base URL for remote assets. Prepended to relative effectSpriteUrl paths. */\n assetBaseUrl?: string;\n /** Full effect asset manifest for the sprite particle engine. When provided, enables the canvas-based particle system. */\n assetManifest?: unknown | string;\n /** Canvas width (default 400) */\n width?: number | string;\n /** Canvas height (default 300) */\n height?: number | string;\n };\n 'card': {\n type: 'card';\n /** Card title */\n title?: string;\n /** Card subtitle or description */\n subtitle?: string;\n /** Image URL to display at top of card */\n image?: string;\n /** Action buttons to display in card footer */\n actions?: unknown[] | string;\n /** Card content */\n children?: unknown | string;\n /** Click handler for the entire card */\n onClick?: ((...args: unknown[]) => unknown) | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'castle-template': {\n type: 'castle-template';\n /** Isometric tiles (pre-resolved with terrainSprite) */\n tiles: unknown[] | string;\n /** Building features rendered on the grid */\n features?: unknown[] | string;\n /** Garrison / stationed units on the grid */\n units?: unknown[] | string;\n /** Canvas render scale */\n scale?: number | string;\n /** Asset manifest for IsometricCanvas */\n assetManifest?: Record<string, unknown> | string;\n /** Background image URL */\n backgroundImage?: string;\n /** -- Slots -- */\n header?: ((...args: unknown[]) => unknown) | string;\n /** Side panel content (buildings list, recruit tab, garrison tab) */\n sidePanel?: ((...args: unknown[]) => unknown) | string;\n /** Canvas overlay (hover tooltips, etc.) */\n overlay?: ((...args: unknown[]) => unknown) | string;\n /** Bottom bar (income summary, etc.) */\n footer?: ((...args: unknown[]) => unknown) | string;\n /** -- Callbacks -- */\n onFeatureClick?: ((...args: unknown[]) => unknown) | string;\n /** Called when a unit is clicked */\n onUnitClick?: ((...args: unknown[]) => unknown) | string;\n /** Called when any tile is clicked */\n onTileClick?: ((...args: unknown[]) => unknown) | string;\n /** className prop */\n className?: string;\n };\n 'center': {\n type: 'center';\n /** Center inline (width fits content) vs block (full width) */\n inline?: boolean | string;\n /** Center only horizontally */\n horizontal?: boolean | string;\n /** Center only vertically */\n vertical?: boolean | string;\n /** Minimum height (useful for vertical centering) */\n minHeight?: string | number;\n /** Fill available height */\n fullHeight?: boolean | string;\n /** Fill available width */\n fullWidth?: boolean | string;\n /** Custom class name */\n className?: string;\n /** Inline styles */\n style?: Record<string, unknown> | string;\n /** Children elements */\n children: unknown | string;\n /** HTML element to render as */\n as?: unknown | string;\n };\n 'chart': {\n type: 'chart';\n /** Chart title */\n title?: string;\n /** Chart subtitle / description */\n subtitle?: string;\n /** Chart type */\n chartType?: unknown | string;\n /** Data series */\n series?: unknown | string;\n /** Simple data (single series shorthand) */\n data?: unknown | string;\n /** Chart height in px */\n height?: number | string;\n /** Show legend */\n showLegend?: boolean | string;\n /** Show values on chart */\n showValues?: boolean | string;\n /** Actions for chart interactions */\n actions?: unknown | string;\n /** Entity name for schema-driven auto-fetch */\n entity?: string;\n /** Loading state */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'checkbox': {\n type: 'checkbox';\n /** label prop */\n label?: string;\n };\n 'code-viewer': {\n type: 'code-viewer';\n /** Viewer title */\n title?: string;\n /** Code content */\n code?: string;\n /** Language for display label */\n language?: string;\n /** Diff lines (for diff mode) */\n diff?: unknown | string;\n /** Old value (for generating diff) */\n oldValue?: string;\n /** New value (for generating diff) */\n newValue?: string;\n /** Display mode */\n mode?: unknown | string;\n /** Show line numbers */\n showLineNumbers?: boolean | string;\n /** Show copy button */\n showCopy?: boolean | string;\n /** Enable word wrap */\n wordWrap?: boolean | string;\n /** Max height before scrolling */\n maxHeight?: number | string;\n /** Multiple files (tabbed view) */\n files?: unknown | string;\n /** Actions */\n actions?: unknown | string;\n /** Entity name for schema-driven auto-fetch */\n entity?: string;\n /** Loading state */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'conditional-wrapper': {\n type: 'conditional-wrapper';\n /** The S-expression condition to evaluate */\n condition?: unknown | string;\n /** Context for evaluating the condition */\n context: unknown | string;\n /** Children to render when condition is true (or when no condition is provided) */\n children: unknown | string;\n /** Optional fallback to render when condition is false */\n fallback?: unknown | string;\n /** Whether to animate the transition (uses CSS transitions) */\n animate?: boolean | string;\n };\n 'confirm-dialog': {\n type: 'confirm-dialog';\n /** Whether the dialog is open (defaults to true when rendered by slot wrapper) */\n isOpen?: boolean | string;\n /** Callback when dialog is closed (injected by slot wrapper) */\n onClose?: ((...args: unknown[]) => unknown) | string;\n /** Callback when action is confirmed (injected by slot wrapper) */\n onConfirm?: ((...args: unknown[]) => unknown) | string;\n /** Dialog title */\n title: string;\n /** Dialog message/description */\n message?: string | unknown;\n /** Alias for message (schema compatibility) */\n description?: string | unknown;\n /** Confirm button text */\n confirmText?: string;\n /** Alias for confirmText (schema compatibility) */\n confirmLabel?: string;\n /** Cancel button text */\n cancelText?: string;\n /** Alias for cancelText (schema compatibility) */\n cancelLabel?: string;\n /** Dialog variant */\n variant?: unknown | string;\n /** Dialog size */\n size?: unknown | string;\n /** Loading state for confirm button */\n isLoading?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'container': {\n type: 'container';\n /** Maximum width */\n size?: unknown | string;\n /** Alias for size (pattern compatibility) */\n maxWidth?: unknown | string;\n /** Horizontal padding */\n padding?: unknown | string;\n /** Center horizontally */\n center?: boolean | string;\n /** Custom class name */\n className?: string;\n /** Children elements */\n children?: unknown | string;\n /** HTML element to render as */\n as?: unknown | string;\n };\n 'control-button': {\n type: 'control-button';\n /** Button label text */\n label?: string;\n /** Icon component or emoji */\n icon?: unknown | string;\n /** Size variant */\n size?: string;\n /** Shape variant */\n shape?: string;\n /** Visual variant */\n variant?: string;\n /** Called when button is pressed */\n onPress?: ((...args: unknown[]) => unknown) | string;\n /** Called when button is released */\n onRelease?: ((...args: unknown[]) => unknown) | string;\n /** Whether the button is currently pressed */\n pressed?: boolean | string;\n /** Whether the button is disabled */\n disabled?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'counter-template': {\n type: 'counter-template';\n /** Current count value */\n count: number | string;\n /** Minimum allowed value */\n min?: number | string;\n /** Maximum allowed value */\n max?: number | string;\n /** Step size for increment/decrement */\n step?: number | string;\n /** Called when increment is clicked */\n onIncrement?: ((...args: unknown[]) => unknown) | string;\n /** Called when decrement is clicked */\n onDecrement?: ((...args: unknown[]) => unknown) | string;\n /** Called when reset is clicked */\n onReset?: ((...args: unknown[]) => unknown) | string;\n /** Title displayed above the counter */\n title?: string;\n /** Show reset button */\n showReset?: boolean | string;\n /** Counter display size */\n size?: unknown | string;\n /** Template variant */\n variant?: unknown | string;\n /** Additional class name */\n className?: string;\n };\n 'crud-template': {\n type: 'crud-template';\n /** Array of items to display */\n items: unknown[] | string;\n /** Whether data is loading */\n isLoading?: boolean | string;\n /** Error object if loading failed */\n error?: unknown | string;\n /** Currently selected item for editing */\n selectedItem?: unknown | string;\n /** Whether the create/edit modal is open */\n isModalOpen?: boolean | string;\n /** Current search query */\n searchQuery?: string;\n /** Current sort field */\n sortBy?: string;\n /** Current sort order */\n sortOrder?: string;\n /** Called to load/refresh items */\n onLoad?: ((...args: unknown[]) => unknown) | string;\n /** Called when creating a new item */\n onCreate?: ((...args: unknown[]) => unknown) | string;\n /** Called when updating an item */\n onUpdate?: ((...args: unknown[]) => unknown) | string;\n /** Called when deleting an item */\n onDelete?: ((...args: unknown[]) => unknown) | string;\n /** Called when selecting an item for editing */\n onSelect?: ((...args: unknown[]) => unknown) | string;\n /** Called when viewing an item */\n onView?: ((...args: unknown[]) => unknown) | string;\n /** Called when search query changes */\n onSearch?: ((...args: unknown[]) => unknown) | string;\n /** Called when sort changes */\n onSort?: ((...args: unknown[]) => unknown) | string;\n /** Called to open create/edit modal */\n onOpenModal?: ((...args: unknown[]) => unknown) | string;\n /** Called to close modal */\n onCloseModal?: ((...args: unknown[]) => unknown) | string;\n /** Page title */\n title?: string;\n /** Singular entity name for labels */\n entityName?: string;\n /** Table column definitions */\n columns?: unknown[] | string;\n /** Form field definitions for create/edit */\n fields?: unknown[] | string;\n /** Whether to show search input */\n showSearch?: boolean | string;\n /** Search input placeholder */\n searchPlaceholder?: string;\n /** Whether to show view action */\n showViewAction?: boolean | string;\n /** Template variant */\n variant?: unknown | string;\n /** Additional class name */\n className?: string;\n };\n 'custom-pattern': {\n type: 'custom-pattern';\n /** HTML element to render */\n component: unknown | string;\n /** Tailwind classes */\n className?: string;\n /** Token path(s) for design token resolution */\n token?: string | unknown[];\n /** Text content (for leaf elements) */\n content?: string;\n /** Event to emit on click (REQUIRED for interactive elements) */\n action?: string;\n /** Event payload */\n payload?: Record<string, unknown> | string;\n /** Nested children patterns */\n children?: unknown | string;\n /** Image source (for img elements) */\n src?: string;\n /** Image alt text (for img elements) */\n alt?: string;\n /** Link href (for a elements) */\n href?: string;\n /** Open link in new tab */\n external?: boolean | string;\n /** Disabled state */\n disabled?: boolean | string;\n /** Additional HTML attributes */\n htmlProps?: Record<string, unknown> | string;\n };\n 'd-pad': {\n type: 'd-pad';\n /** Called when a direction is pressed/released */\n onDirection: ((...args: unknown[]) => unknown) | string;\n /** Size variant */\n size?: string;\n /** Whether to include diagonal buttons */\n includeDiagonals?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n /** Disabled state */\n disabled?: boolean | string;\n };\n 'dashboard-grid': {\n type: 'dashboard-grid';\n /** Number of columns */\n columns?: number | string;\n /** Gap between cells */\n gap?: string;\n /** Cell definitions */\n cells: unknown[] | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'dashboard-layout': {\n type: 'dashboard-layout';\n /** App name shown in sidebar */\n appName?: string;\n /** Logo component or URL */\n logo?: unknown | string;\n /** Navigation items */\n navItems?: unknown[] | string;\n /** Current user info (optional - auto-populated from auth context if not provided) */\n user?: Record<string, unknown> | string;\n /** Header actions (notifications, etc.) */\n headerActions?: unknown | string;\n /** Show search in header */\n showSearch?: boolean | string;\n /** Custom sidebar footer */\n sidebarFooter?: unknown | string;\n /** Callback when user clicks sign out (optional - uses auth context signOut if not provided) */\n onSignOut?: ((...args: unknown[]) => unknown) | string;\n };\n 'detail-panel': {\n type: 'detail-panel';\n /** title prop */\n title?: string;\n /** subtitle prop */\n subtitle?: string;\n /** status prop */\n status?: Record<string, unknown> | string;\n /** avatar prop */\n avatar?: unknown | string;\n /** sections prop */\n sections?: unknown | string;\n /** Unified actions array - first action with variant='primary' is the main action */\n actions?: unknown | string;\n /** footer prop */\n footer?: unknown | string;\n /** slideOver prop */\n slideOver?: boolean | string;\n /** onClose prop */\n onClose?: ((...args: unknown[]) => unknown) | string;\n /** className prop */\n className?: string;\n /** Schema-based props */\n entity?: string;\n /** Fields to display - accepts string[] or {key, header}[] for unified interface */\n fields?: unknown | string;\n /** Alias for fields - backwards compatibility */\n fieldNames?: unknown | string;\n /** data prop */\n data?: Record<string, unknown> | unknown | string;\n /** isLoading prop */\n isLoading?: boolean | string;\n /** error prop */\n error?: unknown | string;\n /** Panel position (for drawer/sidebar placement) */\n position?: string;\n /** Panel width (CSS value, e.g., '400px', '50%') */\n width?: string;\n };\n 'dialogue-box': {\n type: 'dialogue-box';\n /** Current dialogue node to display */\n dialogue: unknown | string;\n /** Typewriter speed in ms per character (0 = instant) */\n typewriterSpeed?: number | string;\n /** Position of dialogue box */\n position?: string;\n /** Called when text animation completes */\n onComplete?: ((...args: unknown[]) => unknown) | string;\n /** Called when a choice is selected */\n onChoice?: ((...args: unknown[]) => unknown) | string;\n /** Called when dialogue is advanced (no choices) */\n onAdvance?: ((...args: unknown[]) => unknown) | string;\n /** Optional className */\n className?: string;\n };\n 'divider': {\n type: 'divider';\n /** Orientation of the divider @default 'horizontal' */\n orientation?: unknown | string;\n /** Text label to display in the divider */\n label?: string;\n /** Line style variant @default 'solid' */\n variant?: unknown | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'document-viewer': {\n type: 'document-viewer';\n /** Document title */\n title?: string;\n /** Document URL (for PDF/external documents) */\n src?: string;\n /** Document content (for text/html/markdown) */\n content?: string;\n /** Document type */\n documentType?: unknown | string;\n /** Current page (for multi-page documents) */\n currentPage?: number | string;\n /** Total pages */\n totalPages?: number | string;\n /** Viewer height */\n height?: number | string;\n /** Show toolbar */\n showToolbar?: boolean | string;\n /** Show download button */\n showDownload?: boolean | string;\n /** Show print button */\n showPrint?: boolean | string;\n /** Actions */\n actions?: unknown | string;\n /** Multiple documents (tabbed view) */\n documents?: unknown | string;\n /** Entity name for schema-driven auto-fetch */\n entity?: string;\n /** Loading state */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'drawer': {\n type: 'drawer';\n /** Whether the drawer is open (defaults to true when rendered by slot wrapper) */\n isOpen?: boolean | string;\n /** Callback when drawer should close (injected by slot wrapper) */\n onClose?: ((...args: unknown[]) => unknown) | string;\n /** Drawer title */\n title?: string;\n /** Drawer content (can be empty if using slot content) */\n children?: unknown | string;\n /** Footer content */\n footer?: unknown | string;\n /** Position (left or right) */\n position?: unknown | string;\n /** Width (CSS value or preset size) */\n width?: string | unknown;\n /** Show close button */\n showCloseButton?: boolean | string;\n /** Close on overlay click */\n closeOnOverlayClick?: boolean | string;\n /** Close on escape key */\n closeOnEscape?: boolean | string;\n /** Additional class name */\n className?: string;\n };\n 'drawer-slot': {\n type: 'drawer-slot';\n /** Content to display in the drawer */\n children?: unknown | string;\n /** Override drawer title (extracted from children if not provided) */\n title?: string;\n /** Drawer position */\n position?: unknown | string;\n /** Drawer size */\n size?: unknown | string;\n /** Custom class name */\n className?: string;\n };\n 'empty-state': {\n type: 'empty-state';\n /** Icon to display. Accepts either: - A Lucide icon component (LucideIcon) - A string icon name (e.g., \"check-circle\", \"x-circle\") */\n icon?: unknown | string;\n /** Primary text to display - use title or message (message is alias for backwards compat) */\n title?: string;\n /** Alias for title - used by schema patterns */\n message?: string;\n /** description prop */\n description?: string;\n /** actionLabel prop */\n actionLabel?: string;\n /** onAction prop */\n onAction?: ((...args: unknown[]) => unknown) | string;\n /** className prop */\n className?: string;\n /** Destructive styling for confirmation dialogs */\n destructive?: boolean | string;\n /** Variant for color styling */\n variant?: string;\n };\n 'entity-cards': {\n type: 'entity-cards';\n /** Minimum width of each card (default: 280px) */\n minCardWidth?: number | string;\n /** Maximum number of columns */\n maxCols?: number | string;\n /** Gap between cards */\n gap?: unknown | string;\n /** Align cards vertically in their cells */\n alignItems?: string;\n /** Custom class name */\n className?: string;\n /** Children elements (cards) - optional when using entity/data props */\n children?: unknown | string;\n /** Entity type for data-bound usage */\n entity?: string;\n /** Fields to display - accepts string[] or {key, header}[] for unified interface */\n fields?: unknown | string;\n /** Alias for fields - backwards compatibility */\n fieldNames?: unknown | string;\n /** Alias for fields - backwards compatibility */\n columns?: unknown | string;\n /** Data array for data-bound usage - accepts readonly for generated const arrays */\n data?: unknown | string;\n /** Loading state indicator */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** Actions for each card item (schema-driven) */\n itemActions?: unknown | string;\n /** Callback when a card is clicked */\n onCardClick?: ((...args: unknown[]) => unknown) | string;\n /** Enable server-side pagination */\n enablePagination?: boolean | string;\n /** Items per page (default: 20) */\n pageSize?: number | string;\n /** Show total count in pagination */\n showTotal?: boolean | string;\n /** Filter configuration for entity data */\n filter?: Record<string, unknown> | string;\n /** Query singleton binding for filter/sort state. When provided, syncs with the query singleton for filtering and sorting. Example: \"@TaskQuery\" */\n query?: string;\n };\n 'entity-list': {\n type: 'entity-list';\n /** Entity name for auto-fetch OR data array (backwards compatible) */\n entity?: unknown[] | unknown | string;\n /** Data array - primary prop for data */\n data?: unknown[] | unknown | string;\n /** Loading state */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** selectable prop */\n selectable?: boolean | string;\n /** selectedItems prop */\n selectedItems?: unknown | string;\n /** onSelectionChange prop */\n onSelectionChange?: ((...args: unknown[]) => unknown) | string;\n /** Item actions - schema-driven or function-based */\n itemActions?: ((...args: unknown[]) => unknown) | unknown | string;\n /** showDividers prop */\n showDividers?: boolean | string;\n /** variant prop */\n variant?: string;\n /** emptyMessage prop */\n emptyMessage?: string;\n /** className prop */\n className?: string;\n /** renderItem prop */\n renderItem?: ((...args: unknown[]) => unknown) | string;\n /** children prop */\n children?: unknown | string;\n /** onItemAction prop */\n onItemAction?: ((...args: unknown[]) => unknown) | string;\n /** onRowClick prop */\n onRowClick?: ((...args: unknown[]) => unknown) | string;\n /** Fields to display - accepts string[] or {key, header}[] for unified interface */\n fields?: unknown | string;\n /** Alias for fields - backwards compatibility */\n fieldNames?: unknown | string;\n /** Query singleton binding for filter/sort state. When provided, syncs with the query singleton for filtering and sorting. Example: \"@TaskQuery\" */\n query?: string;\n /** Entity type name for display */\n entityType?: string;\n };\n 'entity-table': {\n type: 'entity-table';\n /** Fields to display - accepts string[] or Column[] for unified interface. Alias for columns */\n fields?: unknown | string;\n /** Columns can be Column objects or simple string field names - accepts readonly for generated const arrays */\n columns?: unknown | string;\n /** Data array - primary prop for data. Accepts readonly or mutable arrays, and unknown for generated components */\n data?: unknown | unknown[] | string;\n /** Entity name for auto-fetch OR data array (backwards compatible) */\n entity?: string | unknown | unknown[];\n /** Item actions from generated code - maps to rowActions */\n itemActions?: unknown | string;\n /** Loading state indicator */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** emptyIcon prop */\n emptyIcon?: unknown | string;\n /** emptyTitle prop */\n emptyTitle?: string;\n /** emptyDescription prop */\n emptyDescription?: string;\n /** emptyAction prop */\n emptyAction?: Record<string, unknown> | string;\n /** Selection */\n selectable?: boolean | string;\n /** selectedIds prop */\n selectedIds?: unknown | string;\n /** onSelectionChange prop */\n onSelectionChange?: ((...args: unknown[]) => unknown) | string;\n /** Sorting */\n sortBy?: string;\n /** sortDirection prop */\n sortDirection?: string;\n /** onSort prop */\n onSort?: ((...args: unknown[]) => unknown) | string;\n /** Pagination (manual control) */\n pagination?: Record<string, unknown> | string;\n /** Server-side pagination (automatic when enabled) */\n enablePagination?: boolean | string;\n /** Items per page for automatic pagination (default: 20) */\n defaultPageSize?: number | string;\n /** Show total count in pagination */\n showTotal?: boolean | string;\n /** Search */\n searchable?: boolean | string;\n /** searchValue prop */\n searchValue?: string;\n /** onSearch prop */\n onSearch?: ((...args: unknown[]) => unknown) | string;\n /** searchPlaceholder prop */\n searchPlaceholder?: string;\n /** Row click navigation */\n onRowClick?: ((...args: unknown[]) => unknown) | string;\n /** Row actions */\n rowActions?: unknown | string;\n /** Bulk actions */\n bulkActions?: unknown[] | string;\n /** Header actions */\n headerActions?: unknown | string;\n /** Query singleton binding for filter/sort state. When provided, syncs with the query singleton for filtering and sorting. Example: \"@TaskQuery\" */\n query?: string;\n /** className prop */\n className?: string;\n };\n 'error-state': {\n type: 'error-state';\n /** title prop */\n title?: string;\n /** Error message to display */\n message?: string;\n /** Alias for message (schema compatibility) */\n description?: string;\n /** onRetry prop */\n onRetry?: ((...args: unknown[]) => unknown) | string;\n /** className prop */\n className?: string;\n };\n 'filter-group': {\n type: 'filter-group';\n /** Entity name to filter */\n entity: string;\n /** Filter definitions from schema */\n filters: unknown | string;\n /** Callback when a filter changes - for EntityStore integration */\n onFilterChange?: ((...args: unknown[]) => unknown) | string;\n /** Callback to clear all filters */\n onClearAll?: ((...args: unknown[]) => unknown) | string;\n /** Additional CSS classes */\n className?: string;\n /** Variant style */\n variant?: string;\n /** Show filter icon */\n showIcon?: boolean | string;\n /** Query singleton binding for state management. When provided, syncs filter state with the query singleton. Example: \"@TaskQuery\" */\n query?: string;\n /** Loading state indicator */\n isLoading?: boolean | string;\n };\n 'flex': {\n type: 'flex';\n /** Flex direction */\n direction?: unknown | string;\n /** Flex wrap */\n wrap?: unknown | string;\n /** Align items */\n align?: unknown | string;\n /** Justify content */\n justify?: unknown | string;\n /** Gap between items */\n gap?: unknown | string;\n /** Inline flex */\n inline?: boolean | string;\n /** Flex grow */\n grow?: boolean | number | string;\n /** Flex shrink */\n shrink?: boolean | number | string;\n /** Flex basis */\n basis?: string | number;\n /** Custom class name */\n className?: string;\n /** Children elements */\n children: unknown | string;\n /** HTML element to render as */\n as?: unknown | string;\n };\n 'floating-action-button': {\n type: 'floating-action-button';\n /** Single action (if only one action, button will directly trigger onClick) */\n action?: Record<string, unknown> | string;\n /** Multiple actions (if provided, button will expand to show all actions) */\n actions?: unknown[] | string;\n /** Icon name (simplified API for pattern compatibility) */\n icon?: string;\n /** Click handler (simplified API for pattern compatibility) */\n onClick?: ((...args: unknown[]) => unknown) | string;\n /** Variant (simplified API for pattern compatibility) */\n variant?: string;\n /** Button position @default 'bottom-right' */\n position?: string;\n /** Additional CSS classes */\n className?: string;\n };\n 'form': {\n type: 'form';\n /** Form fields (traditional React children) */\n children?: unknown | string;\n /** Submit handler - receives form data, or event name string for trait dispatch */\n onSubmit?: ((...args: unknown[]) => unknown) | string;\n /** Cancel handler - function or event name string for trait dispatch */\n onCancel?: ((...args: unknown[]) => unknown) | string;\n /** Form layout */\n layout?: string;\n /** Gap between fields */\n gap?: string;\n /** Additional CSS classes */\n className?: string;\n /** Schema-based props */\n entity?: string;\n /** Form mode - 'create' for new records, 'edit' for updating existing */\n mode?: string;\n /** Fields definition (schema format) - accepts readonly for generated const arrays */\n fields?: unknown | string;\n /** Initial form data */\n initialData?: Record<string, unknown> | unknown | string;\n /** Loading state */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** Submit button label */\n submitLabel?: string;\n /** Cancel button label (if provided, shows cancel button) */\n cancelLabel?: string;\n /** Show cancel button (defaults to true for schema forms) */\n showCancel?: boolean | string;\n /** Form title (used by ModalSlot to extract title) */\n title?: string;\n /** Event dispatch props (for trait state machine integration) */\n submitEvent?: string;\n /** Event to dispatch on cancel (defaults to 'CANCEL') */\n cancelEvent?: string;\n /** Relation data props */\n relationsData?: Record<string, unknown> | string;\n /** Loading state for relation data: { fieldName: boolean } */\n relationsLoading?: Record<string, unknown> | string;\n /** Inspection form extensions */\n conditionalFields?: Record<string, unknown> | boolean | string;\n /** Hidden calculations that emit GLOBAL_VARIABLE_SET on field change (boolean true means enabled but config loaded separately) */\n hiddenCalculations?: unknown[] | boolean | string;\n /** Violation conditions that emit VIOLATION_DETECTED when met (boolean true means enabled but config loaded separately) */\n violationTriggers?: unknown[] | boolean | string;\n /** Context for S-expression evaluation - accepts flexible types from generated code */\n evaluationContext?: unknown | Record<string, unknown> | string;\n /** Nested form sections with optional conditions */\n sections?: unknown[] | string;\n /** Callback when any field value changes */\n onFieldChange?: ((...args: unknown[]) => unknown) | string;\n /** Config path for form configuration (schema-driven) */\n configPath?: string;\n /** Whether the form supports repeatable entries */\n repeatable?: boolean | string;\n };\n 'form-actions': {\n type: 'form-actions';\n /** Button group content (Button components) - use this OR primary/secondary */\n children?: unknown | string;\n /** Primary action button config (for form-actions pattern) Accepts Readonly for compatibility with generated const objects */\n primary?: unknown | string;\n /** Secondary action buttons config (for form-actions pattern) Accepts readonly array for compatibility with generated const arrays */\n secondary?: unknown | string;\n /** Visual variant @default 'default' */\n variant?: unknown | string;\n /** Orientation @default 'horizontal' */\n orientation?: string;\n /** Additional CSS classes */\n className?: string;\n /** Entity type for filter-group pattern (schema metadata) */\n entity?: string;\n /** Filter definitions for filter-group pattern */\n filters?: unknown | string;\n };\n 'form-field': {\n type: 'form-field';\n /** label prop */\n label: string;\n /** required prop */\n required?: boolean | string;\n /** error prop */\n error?: string;\n /** hint prop */\n hint?: string;\n /** className prop */\n className?: string;\n /** children prop */\n children: unknown | string;\n };\n 'form-section': {\n type: 'form-section';\n /** Form fields (traditional React children) */\n children?: unknown | string;\n /** Submit handler - receives form data, or event name string for trait dispatch */\n onSubmit?: ((...args: unknown[]) => unknown) | string;\n /** Cancel handler - function or event name string for trait dispatch */\n onCancel?: ((...args: unknown[]) => unknown) | string;\n /** Form layout */\n layout?: string;\n /** Gap between fields */\n gap?: string;\n /** Additional CSS classes */\n className?: string;\n /** Schema-based props */\n entity?: string;\n /** Form mode - 'create' for new records, 'edit' for updating existing */\n mode?: string;\n /** Fields definition (schema format) - accepts readonly for generated const arrays */\n fields?: unknown | string;\n /** Initial form data */\n initialData?: Record<string, unknown> | unknown | string;\n /** Loading state */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** Submit button label */\n submitLabel?: string;\n /** Cancel button label (if provided, shows cancel button) */\n cancelLabel?: string;\n /** Show cancel button (defaults to true for schema forms) */\n showCancel?: boolean | string;\n /** Form title (used by ModalSlot to extract title) */\n title?: string;\n /** Event dispatch props (for trait state machine integration) */\n submitEvent?: string;\n /** Event to dispatch on cancel (defaults to 'CANCEL') */\n cancelEvent?: string;\n /** Relation data props */\n relationsData?: Record<string, unknown> | string;\n /** Loading state for relation data: { fieldName: boolean } */\n relationsLoading?: Record<string, unknown> | string;\n /** Inspection form extensions */\n conditionalFields?: Record<string, unknown> | boolean | string;\n /** Hidden calculations that emit GLOBAL_VARIABLE_SET on field change (boolean true means enabled but config loaded separately) */\n hiddenCalculations?: unknown[] | boolean | string;\n /** Violation conditions that emit VIOLATION_DETECTED when met (boolean true means enabled but config loaded separately) */\n violationTriggers?: unknown[] | boolean | string;\n /** Context for S-expression evaluation - accepts flexible types from generated code */\n evaluationContext?: unknown | Record<string, unknown> | string;\n /** Nested form sections with optional conditions */\n sections?: unknown[] | string;\n /** Callback when any field value changes */\n onFieldChange?: ((...args: unknown[]) => unknown) | string;\n /** Config path for form configuration (schema-driven) */\n configPath?: string;\n /** Whether the form supports repeatable entries */\n repeatable?: boolean | string;\n };\n 'form-section-header': {\n type: 'form-section-header';\n /** Section title */\n title: string;\n /** Section subtitle */\n subtitle?: string;\n /** Whether section is collapsed */\n isCollapsed?: boolean | string;\n /** Toggle collapse handler (makes header clickable) */\n onToggle?: ((...args: unknown[]) => unknown) | string;\n /** Badge text (e.g., \"3 fields\", \"Required\", \"Complete\") */\n badge?: string;\n /** Badge variant */\n badgeVariant?: string;\n /** Icon name to show before title */\n icon?: string;\n /** Whether section has validation errors */\n hasErrors?: boolean | string;\n /** Whether section is complete */\n isComplete?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'form-template': {\n type: 'form-template';\n /** Current form field values */\n formData: Record<string, unknown> | string;\n /** Whether form is being submitted */\n isSubmitting?: boolean | string;\n /** Whether submission was successful */\n isSuccess?: boolean | string;\n /** Error object if submission failed */\n error?: unknown | string;\n /** Field-level validation errors */\n validationErrors?: Record<string, unknown> | string;\n /** Called when form is submitted */\n onSubmit?: ((...args: unknown[]) => unknown) | string;\n /** Called when a field value changes */\n onFieldChange?: ((...args: unknown[]) => unknown) | string;\n /** Called to reset the form */\n onReset?: ((...args: unknown[]) => unknown) | string;\n /** Called to dismiss success message */\n onDismissSuccess?: ((...args: unknown[]) => unknown) | string;\n /** Form title */\n title?: string;\n /** Form subtitle/description */\n subtitle?: string;\n /** Submit button label */\n submitLabel?: string;\n /** Success message */\n successMessage?: string;\n /** Whether to show reset button */\n showReset?: boolean | string;\n /** Form field definitions */\n fields?: unknown[] | string;\n /** Template variant */\n variant?: unknown | string;\n /** Additional class name */\n className?: string;\n };\n 'game-hud': {\n type: 'game-hud';\n /** Position of the HUD */\n position?: string;\n /** Stats to display - accepts readonly for compatibility with generated const arrays */\n stats?: unknown | string;\n /** Alias for stats (schema compatibility) */\n items?: unknown | string;\n /** Schema-style elements array (alternative to stats). Converted to stats internally for backwards compatibility. */\n elements?: unknown | string;\n /** Size variant */\n size?: string;\n /** Additional CSS classes */\n className?: string;\n /** Whether to use a semi-transparent background */\n transparent?: boolean | string;\n };\n 'game-menu': {\n type: 'game-menu';\n /** Menu title */\n title: string;\n /** Optional subtitle or version */\n subtitle?: string;\n /** Menu options - accepts readonly for compatibility with generated const arrays */\n options?: unknown | string;\n /** Alias for options (schema compatibility) */\n menuItems?: unknown | string;\n /** Called when an option is selected (legacy callback, prefer event bus) */\n onSelect?: ((...args: unknown[]) => unknown) | string;\n /** Event bus for emitting UI events (optional, uses hook if not provided) */\n eventBus?: unknown | string;\n /** Background image or gradient */\n background?: string;\n /** Logo image URL */\n logo?: string;\n /** Additional CSS classes */\n className?: string;\n };\n 'game-over-screen': {\n type: 'game-over-screen';\n /** Screen title (e.g., \"Game Over\", \"Victory!\") */\n title: string;\n /** Optional message */\n message?: string;\n /** Stats to display */\n stats?: unknown[] | string;\n /** Action buttons */\n actions?: unknown[] | string;\n /** Alias for actions (schema compatibility) */\n menuItems?: unknown[] | string;\n /** Called when an action is selected (legacy callback, prefer event bus) */\n onAction?: ((...args: unknown[]) => unknown) | string;\n /** Event bus for emitting UI events (optional, uses hook if not provided) */\n eventBus?: unknown | string;\n /** Victory or defeat variant */\n variant?: string;\n /** High score (optional, shows \"NEW HIGH SCORE!\" if exceeded) */\n highScore?: number | string;\n /** Current score for high score comparison (accepts string for schema bindings) */\n currentScore?: number | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'game-shell': {\n type: 'game-shell';\n /** Application / game title shown in the HUD bar */\n appName?: string;\n /** Optional HUD content rendered above the main area */\n hud?: unknown | string;\n /** Extra class name on the root container */\n className?: string;\n /** Whether to show the minimal top bar (default: true) */\n showTopBar?: boolean | string;\n };\n 'game-template': {\n type: 'game-template';\n /** Title of the game */\n title?: string;\n /** The main game canvas or content */\n children: unknown | string;\n /** HUD overlay content (scores, health, etc.) */\n hud?: unknown | string;\n /** Debug panel content */\n debugPanel?: unknown | string;\n /** Whether the debug panel is visible */\n showDebugPanel?: boolean | string;\n /** Game controls */\n controls?: Record<string, unknown> | string;\n /** Additional class name */\n className?: string;\n };\n 'generic-app-template': {\n type: 'generic-app-template';\n /** Page title */\n title: string;\n /** Subtitle or description */\n subtitle?: string;\n /** Main content */\n children: unknown | string;\n /** Header actions (buttons, links) */\n headerActions?: unknown | string;\n /** Footer content */\n footer?: unknown | string;\n /** Additional class name */\n className?: string;\n };\n 'graph-canvas': {\n type: 'graph-canvas';\n /** Graph title */\n title?: string;\n /** Graph nodes */\n nodes?: unknown | string;\n /** Graph edges */\n edges?: unknown | string;\n /** Canvas height */\n height?: number | string;\n /** Show node labels */\n showLabels?: boolean | string;\n /** Enable zoom/pan */\n interactive?: boolean | string;\n /** Enable node dragging */\n draggable?: boolean | string;\n /** Actions */\n actions?: unknown | string;\n /** On node click */\n onNodeClick?: ((...args: unknown[]) => unknown) | string;\n /** Node click event */\n nodeClickEvent?: string;\n /** Layout algorithm */\n layout?: string;\n /** Entity name for schema-driven auto-fetch */\n entity?: string;\n /** Loading state */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'grid': {\n type: 'grid';\n /** Number of columns (can be responsive object) */\n cols?: unknown | unknown | string;\n /** Number of rows */\n rows?: number | string;\n /** Gap between items */\n gap?: unknown | string;\n /** Row gap (overrides gap for rows) */\n rowGap?: unknown | string;\n /** Column gap (overrides gap for columns) */\n colGap?: unknown | string;\n /** Align items on block axis */\n alignItems?: unknown | string;\n /** Justify items on inline axis */\n justifyItems?: unknown | string;\n /** Auto-flow direction */\n flow?: string;\n /** Custom class name */\n className?: string;\n /** Inline styles */\n style?: Record<string, unknown> | string;\n /** Children elements */\n children: unknown | string;\n /** HTML element to render as */\n as?: unknown | string;\n };\n 'header': {\n type: 'header';\n /** Logo/Brand content */\n logo?: unknown | string;\n /** Logo image source */\n logoSrc?: string;\n /** Brand/App name */\n brandName?: string;\n /** Navigation items (for desktop header variant) */\n navigationItems?: unknown[] | string;\n /** Show menu toggle button @default true */\n showMenuToggle?: boolean | string;\n /** Is menu open (for toggle icon) */\n isMenuOpen?: boolean | string;\n /** Menu toggle callback */\n onMenuToggle?: ((...args: unknown[]) => unknown) | string;\n /** Show search input @default false */\n showSearch?: boolean | string;\n /** Search placeholder */\n searchPlaceholder?: string;\n /** Search callback */\n onSearch?: ((...args: unknown[]) => unknown) | string;\n /** User avatar configuration */\n userAvatar?: Record<string, unknown> | string;\n /** User name (display name or email) */\n userName?: string;\n /** Callback when user avatar is clicked */\n onUserClick?: ((...args: unknown[]) => unknown) | string;\n /** Action buttons (right side) */\n actions?: unknown | string;\n /** Sticky header @default true */\n sticky?: boolean | string;\n /** Variant - mobile shows menu toggle, desktop shows full nav @default 'mobile' */\n variant?: string;\n /** Callback when logo/brand is clicked */\n onLogoClick?: ((...args: unknown[]) => unknown) | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'health-bar': {\n type: 'health-bar';\n /** Current health value */\n current: number | string;\n /** Maximum health value */\n max: number | string;\n /** Display format */\n format?: string;\n /** Size variant */\n size?: string;\n /** Additional CSS classes */\n className?: string;\n /** Animation on change */\n animated?: boolean | string;\n };\n 'icon': {\n type: 'icon';\n /** Lucide icon component (preferred for type-safe usage) */\n icon?: unknown | string;\n /** Icon name as string (resolved from iconMap) */\n name?: string;\n /** Size of the icon */\n size?: unknown | string;\n /** Color class (Tailwind color class) or 'inherit' for theme default */\n color?: string;\n /** Animation type */\n animation?: unknown | string;\n /** Additional CSS classes */\n className?: string;\n /** Icon stroke width - uses theme default if not specified */\n strokeWidth?: number | string;\n /** Inline style */\n style?: Record<string, unknown> | string;\n };\n 'input': {\n type: 'input';\n /** error prop */\n error?: string;\n /** leftIcon prop */\n leftIcon?: unknown | string;\n /** rightIcon prop */\n rightIcon?: unknown | string;\n /** Lucide icon component for left side (convenience prop) */\n icon?: unknown | string;\n /** Show clear button when input has value */\n clearable?: boolean | string;\n /** Callback when clear button is clicked */\n onClear?: ((...args: unknown[]) => unknown) | string;\n /** Options for select type */\n options?: unknown[] | string;\n /** Rows for textarea type */\n rows?: number | string;\n /** onChange handler - accepts events from input, select, or textarea */\n onChange?: unknown | string;\n /** Input type - supports 'select' and 'textarea' in addition to standard types */\n inputType?: string;\n };\n 'input-group': {\n type: 'input-group';\n /** Left addon (icon, button, or text) */\n leftAddon?: unknown | unknown | string;\n /** Right addon (icon, button, or text) */\n rightAddon?: unknown | unknown | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'inventory-panel': {\n type: 'inventory-panel';\n /** Array of items in inventory */\n items: unknown[] | string;\n /** Total number of slots */\n slots: number | string;\n /** Number of columns in grid */\n columns: number | string;\n /** Currently selected slot index */\n selectedSlot?: number | string;\n /** Called when a slot is selected */\n onSelectSlot: ((...args: unknown[]) => unknown) | string;\n /** Called when an item is used (double-click or Enter) */\n onUseItem?: ((...args: unknown[]) => unknown) | string;\n /** Called when an item is dropped */\n onDropItem?: ((...args: unknown[]) => unknown) | string;\n /** Show item tooltips on hover */\n showTooltips?: boolean | string;\n /** Optional className */\n className?: string;\n /** Slot size in pixels */\n slotSize?: number | string;\n };\n 'isometric-canvas': {\n type: 'isometric-canvas';\n /** --- Closed-circuit props (MANDATORY) --- */\n className?: string;\n /** Loading state indicator */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** Entity name for schema-driven auto-fetch */\n entity?: string;\n /** --- Grid data --- */\n tiles?: unknown[] | string;\n /** Array of units on the board */\n units?: unknown[] | string;\n /** Array of features (resources, portals, buildings, etc.) */\n features?: unknown[] | string;\n /** --- Interaction state --- */\n selectedUnitId?: string;\n /** Valid move positions (shown as pulsing green highlights) */\n validMoves?: unknown[] | string;\n /** Attack target positions (shown as pulsing red highlights) */\n attackTargets?: unknown[] | string;\n /** Hovered tile position */\n hoveredTile?: Record<string, unknown> | string;\n /** --- Event handlers --- */\n onTileClick?: ((...args: unknown[]) => unknown) | string;\n /** Unit click handler */\n onUnitClick?: ((...args: unknown[]) => unknown) | string;\n /** Tile hover handler */\n onTileHover?: ((...args: unknown[]) => unknown) | string;\n /** Tile leave handler */\n onTileLeave?: ((...args: unknown[]) => unknown) | string;\n /** --- Rendering options --- */\n scale?: number | string;\n /** Show debug grid lines and coordinates */\n debug?: boolean | string;\n /** Background image URL tiled behind the isometric grid */\n backgroundImage?: string;\n /** Toggle minimap overlay */\n showMinimap?: boolean | string;\n /** Enable camera pan/zoom controls */\n enableCamera?: boolean | string;\n /** Extra scale multiplier for unit draw size. 1 = default. */\n unitScale?: number | string;\n /** --- Asset resolution (project-agnostic) --- */\n getTerrainSprite?: ((...args: unknown[]) => unknown) | string;\n /** Resolve feature sprite URL from feature type key */\n getFeatureSprite?: ((...args: unknown[]) => unknown) | string;\n /** Resolve unit static sprite URL */\n getUnitSprite?: ((...args: unknown[]) => unknown) | string;\n /** Resolve animated sprite sheet frame for a unit */\n resolveUnitFrame?: ((...args: unknown[]) => unknown) | string;\n /** Additional sprite URLs to preload (e.g., effect sprites) */\n effectSpriteUrls?: unknown[] | string;\n /** Callback to draw canvas effects after units */\n onDrawEffects?: ((...args: unknown[]) => unknown) | string;\n /** Whether there are active effects — keeps RAF loop alive */\n hasActiveEffects?: boolean | string;\n /** --- Remote asset loading --- */\n assetBaseUrl?: string;\n /** Manifest mapping entity keys to relative sprite paths. Combined with assetBaseUrl to produce full URLs. Used as a fallback when inline URLs and callbacks don't resolve. */\n assetManifest?: Record<string, unknown> | string;\n };\n 'label': {\n type: 'label';\n /** required prop */\n required?: boolean | string;\n };\n 'law-reference-tooltip': {\n type: 'law-reference-tooltip';\n /** The law reference to display */\n reference: unknown | string;\n /** Children element that triggers the tooltip */\n children: unknown | string;\n /** Tooltip position */\n position?: string;\n /** Additional CSS classes */\n className?: string;\n };\n 'layout-pattern': {\n type: 'layout-pattern';\n /** Nested pattern configurations - rendered recursively */\n children?: unknown | string;\n /** Additional CSS classes */\n className?: string;\n /** Inline styles */\n style?: Record<string, unknown> | string;\n };\n 'list-template': {\n type: 'list-template';\n /** Array of list items */\n items: unknown[] | string;\n /** Whether data is loading */\n isLoading?: boolean | string;\n /** Error object if loading failed */\n error?: unknown | string;\n /** Current filter value */\n filter?: unknown | string;\n /** Called when a new item is added */\n onAdd?: ((...args: unknown[]) => unknown) | string;\n /** Called when an item is toggled */\n onToggle?: ((...args: unknown[]) => unknown) | string;\n /** Called when an item is deleted */\n onDelete?: ((...args: unknown[]) => unknown) | string;\n /** Called when filter changes */\n onFilterChange?: ((...args: unknown[]) => unknown) | string;\n /** Called to retry loading */\n onRetry?: ((...args: unknown[]) => unknown) | string;\n /** Title displayed above the list */\n title?: string;\n /** Placeholder for the input field */\n placeholder?: string;\n /** Whether to show filter buttons */\n showFilters?: boolean | string;\n /** Whether to show item count */\n showCount?: boolean | string;\n /** Message shown when list is empty */\n emptyMessage?: string;\n /** Template variant */\n variant?: unknown | string;\n /** Additional class name */\n className?: string;\n };\n 'loading-state': {\n type: 'loading-state';\n /** title prop */\n title?: string;\n /** message prop */\n message?: string;\n /** className prop */\n className?: string;\n };\n 'master-detail': {\n type: 'master-detail';\n /** Master panel content (usually a list) */\n master: unknown | string;\n /** Detail panel content */\n detail: unknown | string;\n /** Content shown when nothing is selected */\n emptyDetail?: unknown | string;\n /** Whether an item is currently selected */\n hasSelection?: boolean | string;\n /** Width of master panel (e.g., '350px', '30%') */\n masterWidth?: string;\n /** Additional CSS classes */\n className?: string;\n /** Class for master pane */\n masterClassName?: string;\n /** Class for detail pane */\n detailClassName?: string;\n };\n 'media-gallery': {\n type: 'media-gallery';\n /** Gallery title */\n title?: string;\n /** Media items */\n items?: unknown | string;\n /** Schema-driven data */\n data?: unknown | string;\n /** Column count */\n columns?: number | string;\n /** Enable item selection */\n selectable?: boolean | string;\n /** Selected item IDs */\n selectedItems?: unknown | string;\n /** Selection change callback */\n onSelectionChange?: ((...args: unknown[]) => unknown) | string;\n /** Show upload button */\n showUpload?: boolean | string;\n /** Actions */\n actions?: unknown | string;\n /** Aspect ratio for thumbnails */\n aspectRatio?: string;\n /** Entity name for schema-driven auto-fetch */\n entity?: string;\n /** Loading state */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'menu': {\n type: 'menu';\n /** Menu trigger element */\n trigger: unknown | string;\n /** Menu items */\n items: unknown[] | string;\n /** Menu position */\n position?: unknown | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'meter': {\n type: 'meter';\n /** Current value */\n value: number | string;\n /** Minimum value */\n min?: number | string;\n /** Maximum value */\n max?: number | string;\n /** Display label */\n label?: string;\n /** Unit suffix (e.g., '%', 'MB', 'credits') */\n unit?: string;\n /** Display variant */\n variant?: unknown | string;\n /** Color thresholds */\n thresholds?: unknown | string;\n /** Number of segments (for segmented variant) */\n segments?: number | string;\n /** Show value text */\n showValue?: boolean | string;\n /** Size (for radial variant) */\n size?: string;\n /** Actions */\n actions?: unknown | string;\n /** Entity name for schema-driven auto-fetch */\n entity?: string;\n /** Loading state */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'modal': {\n type: 'modal';\n /** Whether the modal is open (defaults to true when rendered by slot wrapper) */\n isOpen?: boolean | string;\n /** Callback when modal should close (injected by slot wrapper) */\n onClose?: ((...args: unknown[]) => unknown) | string;\n /** title prop */\n title?: string;\n /** Modal content (can be empty if using slot content) */\n children?: unknown | string;\n /** footer prop */\n footer?: unknown | string;\n /** size prop */\n size?: unknown | string;\n /** showCloseButton prop */\n showCloseButton?: boolean | string;\n /** closeOnOverlayClick prop */\n closeOnOverlayClick?: boolean | string;\n /** closeOnEscape prop */\n closeOnEscape?: boolean | string;\n /** className prop */\n className?: string;\n };\n 'modal-slot': {\n type: 'modal-slot';\n /** Content to display in the modal */\n children?: unknown | string;\n /** Override modal title (extracted from children if not provided) */\n title?: string;\n /** Modal size */\n size?: string;\n /** Custom class name */\n className?: string;\n };\n 'navigation': {\n type: 'navigation';\n /** Navigation items */\n items: unknown[] | string;\n /** Navigation orientation @default 'horizontal' */\n orientation?: string;\n /** Additional CSS classes */\n className?: string;\n };\n 'notification': {\n type: 'notification';\n /** Toast variant */\n variant?: unknown | string;\n /** Toast message */\n message: string;\n /** Toast title (optional) */\n title?: string;\n /** Auto-dismiss duration in milliseconds (0 = no auto-dismiss) */\n duration?: number | string;\n /** Show dismiss button */\n dismissible?: boolean | string;\n /** Callback when toast is dismissed */\n onDismiss?: ((...args: unknown[]) => unknown) | string;\n /** Action button label */\n actionLabel?: string;\n /** Action button click handler */\n onAction?: ((...args: unknown[]) => unknown) | string;\n /** Badge count (optional) */\n badge?: string | number;\n /** Additional CSS classes */\n className?: string;\n };\n 'orbital-visualization': {\n type: 'orbital-visualization';\n /** Full KFlow schema object */\n schema?: Record<string, unknown> | string;\n /** Direct complexity override (1-100+) */\n complexity?: number | string;\n /** Size of the visualization */\n size?: string;\n /** Show complexity label */\n showLabel?: boolean | string;\n /** Animation enabled */\n animated?: boolean | string;\n /** Click handler */\n onClick?: ((...args: unknown[]) => unknown) | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'overlay': {\n type: 'overlay';\n /** isVisible prop */\n isVisible?: boolean | string;\n /** onClick prop */\n onClick?: ((...args: unknown[]) => unknown) | string;\n /** className prop */\n className?: string;\n /** blur prop */\n blur?: boolean | string;\n };\n 'page-header': {\n type: 'page-header';\n /** Page title - accepts unknown to handle generated code accessing dynamic entity data */\n title?: string | number | unknown;\n /** Optional subtitle/description */\n subtitle?: string | number | unknown;\n /** Show back button */\n showBack?: boolean | string;\n /** Event to emit when back is clicked (default: BACK) */\n backEvent?: string;\n /** Breadcrumbs */\n breadcrumbs?: unknown | string;\n /** Status badge */\n status?: Record<string, unknown> | string;\n /** Actions array - first action with variant='primary' (or first action) is the main action */\n actions?: unknown | string;\n /** Loading state indicator */\n isLoading?: boolean | string;\n /** Tabs for sub-navigation */\n tabs?: unknown[] | string;\n /** activeTab prop */\n activeTab?: string;\n /** onTabChange prop */\n onTabChange?: ((...args: unknown[]) => unknown) | string;\n /** Custom content in the header */\n children?: unknown | string;\n /** className prop */\n className?: string;\n };\n 'pagination': {\n type: 'pagination';\n /** Current page (1-indexed) */\n currentPage: number | string;\n /** Total number of pages */\n totalPages: number | string;\n /** Callback when page changes (optional - can be a no-op if not interactive) */\n onPageChange?: ((...args: unknown[]) => unknown) | string;\n /** Show page size selector @default false */\n showPageSize?: boolean | string;\n /** Page size options */\n pageSizeOptions?: unknown[] | string;\n /** Current page size */\n pageSize?: number | string;\n /** Callback when page size changes */\n onPageSizeChange?: ((...args: unknown[]) => unknown) | string;\n /** Show jump to page input @default false */\n showJumpToPage?: boolean | string;\n /** Show total count @default false */\n showTotal?: boolean | string;\n /** Total items count */\n totalItems?: number | string;\n /** Maximum number of page buttons to show @default 7 */\n maxVisiblePages?: number | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'popover': {\n type: 'popover';\n /** Popover content */\n content: unknown | string;\n /** Popover trigger element (ReactElement or ReactNode that will be wrapped in span) */\n children: unknown | string;\n /** Popover position @default 'bottom' */\n position?: unknown | string;\n /** Trigger type @default 'click' */\n trigger?: unknown | string;\n /** Show arrow @default true */\n showArrow?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'progress-bar': {\n type: 'progress-bar';\n /** Progress value (0-100) */\n value: number | string;\n /** Maximum value (for calculating percentage) @default 100 */\n max?: number | string;\n /** Variant/color of the progress bar @default 'primary' */\n variant?: unknown | string;\n /** Color variant (alias for variant) @default 'primary' */\n color?: unknown | string;\n /** Show percentage text @default false */\n showPercentage?: boolean | string;\n /** Alias for showPercentage (pattern compatibility) */\n showLabel?: boolean | string;\n /** Label text */\n label?: string;\n /** Size (for circular variant) @default 'md' */\n size?: string;\n /** Number of steps (for stepped variant) @default 5 */\n steps?: number | string;\n /** Additional CSS classes */\n className?: string;\n /** Type of the progress bar (linear, circular, stepped) @default 'linear' */\n progressType?: unknown | string;\n };\n 'radio': {\n type: 'radio';\n /** Label text displayed next to the radio button */\n label?: string;\n /** Helper text displayed below the radio button */\n helperText?: string;\n /** Error message displayed below the radio button */\n error?: string;\n /** Size of the radio button @default 'md' */\n size?: string;\n };\n 'relation-select': {\n type: 'relation-select';\n /** Current value (ID) */\n value?: string;\n /** Callback when value changes */\n onChange?: ((...args: unknown[]) => unknown) | string;\n /** Available options - accepts readonly for compatibility with generated const arrays */\n options: unknown | string;\n /** Placeholder text */\n placeholder?: string;\n /** Whether the field is required */\n required?: boolean | string;\n /** Whether the field is disabled */\n disabled?: boolean | string;\n /** Whether data is loading */\n isLoading?: boolean | string;\n /** Error message */\n error?: string;\n /** Allow clearing the selection */\n clearable?: boolean | string;\n /** Name attribute for forms */\n name?: string;\n /** Additional CSS classes */\n className?: string;\n /** Search placeholder */\n searchPlaceholder?: string;\n /** Empty state message */\n emptyMessage?: string;\n };\n 'repeatable-form-section': {\n type: 'repeatable-form-section';\n /** Section type identifier */\n sectionType: string;\n /** Section title */\n title: string;\n /** Items in the section */\n items: unknown[] | string;\n /** Render function for each item */\n renderItem: ((...args: unknown[]) => unknown) | string;\n /** Minimum items required */\n minItems?: number | string;\n /** Maximum items allowed */\n maxItems?: number | string;\n /** Allow reordering */\n allowReorder?: boolean | string;\n /** Add button label */\n addLabel?: string;\n /** Empty state message */\n emptyMessage?: string;\n /** Read-only mode */\n readOnly?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n /** Add handler */\n onAdd?: ((...args: unknown[]) => unknown) | string;\n /** Remove handler */\n onRemove?: ((...args: unknown[]) => unknown) | string;\n /** Reorder handler */\n onReorder?: ((...args: unknown[]) => unknown) | string;\n /** Inspection-specific enhancements */\n trackAddedInState?: boolean | string;\n /** Current inspection state (used when trackAddedInState is true) */\n currentState?: string;\n /** Show audit metadata (addedInState, addedAt) */\n showAuditInfo?: boolean | string;\n };\n 'runtime-debugger': {\n type: 'runtime-debugger';\n /** Initial position */\n position?: string;\n /** Initial collapsed state */\n defaultCollapsed?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'score-display': {\n type: 'score-display';\n /** Current score value */\n value: number | string;\n /** Label to display before score */\n label?: string;\n /** Icon component or emoji */\n icon?: unknown | string;\n /** Size variant */\n size?: string;\n /** Additional CSS classes */\n className?: string;\n /** Animation on value change */\n animated?: boolean | string;\n /** Number formatting locale */\n locale?: string;\n };\n 'search-input': {\n type: 'search-input';\n /** Search value (controlled mode) */\n value?: string;\n /** Callback when search value changes */\n onSearch?: ((...args: unknown[]) => unknown) | string;\n /** Debounce delay in milliseconds @default 300 */\n debounceMs?: number | string;\n /** Show loading state @default false */\n isLoading?: boolean | string;\n /** Placeholder text @default 'Search...' */\n placeholder?: string;\n /** Show clear button @default true */\n clearable?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n /** Event name to dispatch on search (schema metadata, wired by trait) This is metadata used by the trait generator, not by the component. */\n event?: string;\n /** Entity type for context-aware search. When provided, search events include entity context. */\n entity?: string;\n /** Query singleton binding for state management. When provided, syncs search state with the query singleton. Example: \"@TaskQuery\" */\n query?: string;\n };\n 'section': {\n type: 'section';\n /** Section title */\n title?: string;\n /** Section subtitle/description */\n description?: string;\n /** Action element (e.g., button, link) */\n action?: unknown | string;\n /** Padding amount */\n padding?: unknown | string;\n /** Visual variant */\n variant?: unknown | string;\n /** Show divider below header */\n divider?: boolean | string;\n /** Custom class name */\n className?: string;\n /** Children elements */\n children: unknown | string;\n /** Header custom class name */\n headerClassName?: string;\n /** Content custom class name */\n contentClassName?: string;\n /** HTML element to render as */\n as?: unknown | string;\n };\n 'select': {\n type: 'select';\n /** options prop */\n options: unknown[] | string;\n /** placeholder prop */\n placeholder?: string;\n /** error prop */\n error?: string;\n };\n 'settings-template': {\n type: 'settings-template';\n /** Current settings values */\n settings: Record<string, unknown> | string;\n /** Whether settings are being saved */\n isSaving?: boolean | string;\n /** Whether there are unsaved changes */\n hasChanges?: boolean | string;\n /** Error object if save failed */\n error?: unknown | string;\n /** Success message after save */\n successMessage?: string;\n /** Called when saving settings */\n onSave?: ((...args: unknown[]) => unknown) | string;\n /** Called when a setting value changes */\n onChange?: ((...args: unknown[]) => unknown) | string;\n /** Called to reset to default settings */\n onReset?: ((...args: unknown[]) => unknown) | string;\n /** Called to revert unsaved changes */\n onRevert?: ((...args: unknown[]) => unknown) | string;\n /** Called to dismiss success message */\n onDismissSuccess?: ((...args: unknown[]) => unknown) | string;\n /** Page title */\n title?: string;\n /** Settings sections */\n sections?: unknown[] | string;\n /** Whether to show reset to defaults button */\n showResetToDefaults?: boolean | string;\n /** Template variant */\n variant?: unknown | string;\n /** Additional class name */\n className?: string;\n };\n 'side-panel': {\n type: 'side-panel';\n /** Panel title */\n title: string;\n /** Panel content */\n children: unknown | string;\n /** Is panel open */\n isOpen: boolean | string;\n /** On close handler */\n onClose: ((...args: unknown[]) => unknown) | string;\n /** Panel width @default 'w-96' */\n width?: string;\n /** Panel position @default 'right' */\n position?: string;\n /** Show overlay on mobile @default true */\n showOverlay?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'sidebar': {\n type: 'sidebar';\n /** Logo/Brand content - can be a ReactNode or logo config */\n logo?: unknown | string;\n /** Logo image source */\n logoSrc?: string;\n /** Brand/App name */\n brandName?: string;\n /** Navigation items */\n items: unknown[] | string;\n /** User section content */\n userSection?: unknown | string;\n /** Footer content (e.g., theme toggle) */\n footerContent?: unknown | string;\n /** Collapsed state (controlled) */\n collapsed?: boolean | string;\n /** Default collapsed state */\n defaultCollapsed?: boolean | string;\n /** Callback when collapse state changes */\n onCollapseChange?: ((...args: unknown[]) => unknown) | string;\n /** Hide the collapse/expand button */\n hideCollapseButton?: boolean | string;\n /** Show a close button (for mobile) */\n showCloseButton?: boolean | string;\n /** Callback when close button is clicked */\n onClose?: ((...args: unknown[]) => unknown) | string;\n /** Callback when logo/brand is clicked */\n onLogoClick?: ((...args: unknown[]) => unknown) | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'signature-pad': {\n type: 'signature-pad';\n /** Label above the pad */\n label?: string;\n /** Helper text */\n helperText?: string;\n /** Stroke color */\n strokeColor?: string;\n /** Stroke width */\n strokeWidth?: number | string;\n /** Pad height */\n height?: number | string;\n /** Whether the pad is read-only */\n readOnly?: boolean | string;\n /** Existing signature image URL */\n value?: string;\n /** Callback when signature changes */\n onChange?: ((...args: unknown[]) => unknown) | string;\n /** Event to emit on sign */\n signEvent?: string;\n /** Event to emit on clear */\n clearEvent?: string;\n /** Entity name for schema-driven context */\n entity?: string;\n /** Loading state */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'simple-grid': {\n type: 'simple-grid';\n /** Minimum width of each child (e.g., 200, \"200px\", \"15rem\") */\n minChildWidth?: number | string;\n /** Maximum number of columns */\n maxCols?: number | string;\n /** Exact number of columns (disables auto-fit) */\n cols?: number | string;\n /** Gap between items */\n gap?: unknown | string;\n /** Custom class name */\n className?: string;\n /** Children elements */\n children: unknown | string;\n };\n 'spacer': {\n type: 'spacer';\n /** Fixed size (auto = flex grow) */\n size?: unknown | string;\n /** Orientation (for fixed sizes) */\n axis?: string;\n /** Custom class name */\n className?: string;\n };\n 'spinner': {\n type: 'spinner';\n /** size prop */\n size?: unknown | string;\n };\n 'split': {\n type: 'split';\n /** Size ratio between left and right panels */\n ratio?: unknown | string;\n /** Gap between panels */\n gap?: unknown | string;\n /** Reverse the order (right first) */\n reverse?: boolean | string;\n /** Stack vertically on mobile */\n stackOnMobile?: boolean | string;\n /** Breakpoint to switch from stacked to side-by-side */\n stackBreakpoint?: string;\n /** Align items vertically */\n align?: string;\n /** Custom class name */\n className?: string;\n /** Left/first panel class name */\n leftClassName?: string;\n /** Right/second panel class name */\n rightClassName?: string;\n /** Exactly two children: [left, right] */\n children: unknown | string;\n };\n 'split-pane': {\n type: 'split-pane';\n /** Direction of the split */\n direction?: string;\n /** Initial ratio (0-100, percentage of first pane) */\n ratio?: number | string;\n /** Minimum size of either pane in pixels */\n minSize?: number | string;\n /** Allow user resizing */\n resizable?: boolean | string;\n /** Content for the left/top pane */\n left: unknown | string;\n /** Content for the right/bottom pane */\n right: unknown | string;\n /** Additional CSS classes */\n className?: string;\n /** Class for left/top pane */\n leftClassName?: string;\n /** Class for right/bottom pane */\n rightClassName?: string;\n };\n 'sprite': {\n type: 'sprite';\n /** Spritesheet image URL */\n spritesheet: string;\n /** Width of each frame in pixels */\n frameWidth: number | string;\n /** Height of each frame in pixels */\n frameHeight: number | string;\n /** Frame index to display (0-based, left-to-right, top-to-bottom) */\n frame: number | string;\n /** X position in pixels */\n x: number | string;\n /** Y position in pixels */\n y: number | string;\n /** Scale factor (default: 1) */\n scale?: number | string;\n /** Flip horizontally */\n flipX?: boolean | string;\n /** Flip vertically */\n flipY?: boolean | string;\n /** Rotation in degrees */\n rotation?: number | string;\n /** Opacity (0-1) */\n opacity?: number | string;\n /** Z-index for layering */\n zIndex?: number | string;\n /** Number of columns in spritesheet (for frame calculation) */\n columns?: number | string;\n /** Optional className */\n className?: string;\n /** Optional onClick handler */\n onClick?: ((...args: unknown[]) => unknown) | string;\n };\n 'stack': {\n type: 'stack';\n /** Stack direction */\n direction?: unknown | string;\n /** Gap between children */\n gap?: unknown | string;\n /** Align items on the cross axis */\n align?: unknown | string;\n /** Justify items on the main axis */\n justify?: unknown | string;\n /** Allow items to wrap */\n wrap?: boolean | string;\n /** Reverse the order of children */\n reverse?: boolean | string;\n /** Fill available space (flex: 1) */\n flex?: boolean | string;\n /** Custom class name */\n className?: string;\n /** Inline styles */\n style?: Record<string, unknown> | string;\n /** Children elements */\n children?: unknown | string;\n /** HTML element to render as */\n as?: unknown | string;\n /** Click handler */\n onClick?: ((...args: unknown[]) => unknown) | string;\n /** Keyboard handler */\n onKeyDown?: ((...args: unknown[]) => unknown) | string;\n /** Role for accessibility */\n role?: string;\n /** Tab index for focus management */\n tabIndex?: number | string;\n };\n 'stat-badge': {\n type: 'stat-badge';\n /** Stat label */\n label: string;\n /** Current value (defaults to 0 if not provided) */\n value?: number | string;\n /** Maximum value (for bar/hearts format) */\n max?: number | string;\n /** Data source entity name (for schema config) */\n source?: string;\n /** Field name in the source (for schema config) */\n field?: string;\n /** Display format */\n format?: string;\n /** Icon component or emoji */\n icon?: unknown | string;\n /** Size variant */\n size?: string;\n /** Visual variant */\n variant?: string;\n /** Additional CSS classes */\n className?: string;\n };\n 'stats': {\n type: 'stats';\n /** Main label */\n label?: string;\n /** Title (alias for label) */\n title?: string;\n /** Primary value - accepts array/unknown from generated code (will use first element or length) */\n value?: string | number | unknown[] | unknown;\n /** Previous value for comparison */\n previousValue?: number | string;\n /** Current value as number for trend calculation */\n currentValue?: number | string;\n /** Manual trend percentage (overrides calculation) */\n trend?: number | string;\n /** Trend direction (overrides calculation) */\n trendDirection?: string;\n /** Whether up is good (green) or bad (red) */\n invertTrend?: boolean | string;\n /** Icon to display */\n icon?: unknown | string;\n /** Icon background color */\n iconBg?: string;\n /** Icon color */\n iconColor?: string;\n /** Subtitle or description */\n subtitle?: string;\n /** Action button */\n action?: Record<string, unknown> | string;\n /** className prop */\n className?: string;\n /** Schema-based props */\n entity?: string;\n /** Metrics to display (schema format) - accepts readonly for compatibility with generated const arrays */\n metrics?: unknown | string;\n /** Data to calculate stats from - accepts readonly for compatibility with generated const arrays */\n data?: unknown | string;\n /** Loading state indicator */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n };\n 'switch': {\n type: 'switch';\n /** checked prop */\n checked?: boolean | string;\n /** defaultChecked prop */\n defaultChecked?: boolean | string;\n /** onChange prop */\n onChange?: ((...args: unknown[]) => unknown) | string;\n /** disabled prop */\n disabled?: boolean | string;\n /** label prop */\n label?: string;\n /** id prop */\n id?: string;\n /** name prop */\n name?: string;\n /** className prop */\n className?: string;\n };\n 'tabbed-container': {\n type: 'tabbed-container';\n /** Tab definitions */\n tabs: unknown[] | string;\n /** Default active tab ID */\n defaultTab?: string;\n /** Controlled active tab */\n activeTab?: string;\n /** Callback when tab changes */\n onTabChange?: ((...args: unknown[]) => unknown) | string;\n /** Tab position */\n position?: string;\n /** Additional CSS classes */\n className?: string;\n };\n 'table': {\n type: 'table';\n /** Table columns */\n columns: unknown[] | string;\n /** Table entity data */\n entity: unknown[] | string;\n /** Row key getter */\n getRowKey: ((...args: unknown[]) => unknown) | string;\n /** Enable row selection @default false */\n selectable?: boolean | string;\n /** Selected row keys */\n selectedRows?: unknown[] | string;\n /** Callback when selection changes */\n onSelectionChange?: ((...args: unknown[]) => unknown) | string;\n /** Enable sorting @default false */\n sortable?: boolean | string;\n /** Current sort column */\n sortColumn?: string;\n /** Current sort direction */\n sortDirection?: unknown | string;\n /** Callback when sort changes */\n onSortChange?: ((...args: unknown[]) => unknown) | string;\n /** Enable search/filter @default false */\n searchable?: boolean | string;\n /** Search placeholder */\n searchPlaceholder?: string;\n /** Enable pagination @default false */\n paginated?: boolean | string;\n /** Current page */\n currentPage?: number | string;\n /** Total pages */\n totalPages?: number | string;\n /** Callback when page changes */\n onPageChange?: ((...args: unknown[]) => unknown) | string;\n /** Row actions menu items */\n rowActions?: ((...args: unknown[]) => unknown) | string;\n /** Empty state message */\n emptyMessage?: string;\n /** Loading state @default false */\n loading?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'tabs': {\n type: 'tabs';\n /** Tab items */\n items?: unknown[] | string;\n /** Tab items (alias for items - used by generated code) */\n tabs?: unknown[] | string;\n /** Default active tab ID */\n defaultActiveTab?: string;\n /** Controlled active tab ID */\n activeTab?: string;\n /** Callback when tab changes */\n onTabChange?: ((...args: unknown[]) => unknown) | string;\n /** Tab variant */\n variant?: string;\n /** Tab orientation */\n orientation?: string;\n /** Additional CSS classes */\n className?: string;\n };\n 'text-highlight': {\n type: 'text-highlight';\n /** Whether the highlight is currently active/focused @default false */\n isActive?: boolean | string;\n /** Callback when highlight is clicked */\n onClick?: ((...args: unknown[]) => unknown) | string;\n /** Callback when highlight is hovered */\n onMouseEnter?: ((...args: unknown[]) => unknown) | string;\n /** Callback when hover ends */\n onMouseLeave?: ((...args: unknown[]) => unknown) | string;\n /** Unique ID for the annotation */\n annotationId?: string;\n /** Additional CSS classes */\n className?: string;\n /** Highlighted text content */\n children: unknown | string;\n /** Type of highlight (determines color) */\n highlightType: unknown | string;\n };\n 'textarea': {\n type: 'textarea';\n /** error prop */\n error?: string;\n };\n 'theme-toggle': {\n type: 'theme-toggle';\n /** Additional CSS classes */\n className?: string;\n /** Size variant */\n size?: string;\n /** Show label text */\n showLabel?: boolean | string;\n };\n 'timeline': {\n type: 'timeline';\n /** Timeline title */\n title?: string;\n /** Timeline items */\n items?: unknown | string;\n /** Schema-driven data */\n data?: unknown | string;\n /** Fields to display */\n fields?: unknown | string;\n /** Actions per item */\n itemActions?: unknown | string;\n /** Entity name for schema-driven auto-fetch */\n entity?: string;\n /** Loading state */\n isLoading?: boolean | string;\n /** Error state */\n error?: unknown | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'toast-slot': {\n type: 'toast-slot';\n /** Content to display in the toast (message or ReactNode) */\n children?: unknown | string;\n /** Toast variant */\n variant?: unknown | string;\n /** Toast title */\n title?: string;\n /** Auto-dismiss duration in ms (0 = no auto-dismiss) */\n duration?: number | string;\n /** Custom class name */\n className?: string;\n };\n 'tooltip': {\n type: 'tooltip';\n /** Tooltip content */\n content: unknown | string;\n /** Tooltip trigger element (ReactElement or ReactNode that will be wrapped in span) */\n children: unknown | string;\n /** Tooltip position */\n position?: unknown | string;\n /** Show delay in milliseconds */\n delay?: number | string;\n /** Hide delay in milliseconds */\n hideDelay?: number | string;\n /** Show arrow */\n showArrow?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'typography': {\n type: 'typography';\n /** Typography variant */\n variant?: unknown | string;\n /** Heading level (1-6) - alternative to variant for headings */\n level?: number | string;\n /** Text color */\n color?: string;\n /** Text alignment */\n align?: string;\n /** Font weight override */\n weight?: string;\n /** Font size override */\n size?: unknown | string;\n /** Truncate with ellipsis (single line) */\n truncate?: boolean | string;\n /** Overflow handling mode */\n overflow?: string;\n /** Custom HTML element */\n as?: unknown | string;\n /** HTML id attribute */\n id?: string;\n /** Additional class names */\n className?: string;\n /** Inline style */\n style?: Record<string, unknown> | string;\n /** Text content (alternative to children) */\n content?: unknown | string;\n /** Children elements */\n children?: unknown | string;\n };\n 'u-i-slot-renderer': {\n type: 'u-i-slot-renderer';\n /** Include HUD slots */\n includeHud?: boolean | string;\n /** Include floating slot */\n includeFloating?: boolean | string;\n /** Additional class name for the container */\n className?: string;\n };\n 'violation-alert': {\n type: 'violation-alert';\n /** Violation data */\n violation: unknown | string;\n /** Visual severity (derived from actionType if not specified) */\n severity?: string;\n /** Dismissible alert */\n dismissible?: boolean | string;\n /** Dismiss handler */\n onDismiss?: ((...args: unknown[]) => unknown) | string;\n /** Navigate to the field that caused violation */\n onNavigateToField?: ((...args: unknown[]) => unknown) | string;\n /** Compact display mode */\n compact?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'wizard-container': {\n type: 'wizard-container';\n /** Wizard steps */\n steps: unknown[] | string;\n /** Current step index (controlled) - accepts unknown for generated code compatibility */\n currentStep?: number | string | unknown;\n /** Callback when step changes */\n onStepChange?: ((...args: unknown[]) => unknown) | string;\n /** Callback when wizard is completed */\n onComplete?: ((...args: unknown[]) => unknown) | string;\n /** Show progress indicator */\n showProgress?: boolean | string;\n /** Allow navigation to previous steps */\n allowBack?: boolean | string;\n /** Modal mode (compact header, no padding) */\n compact?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n /** Entity type name (schema-driven) */\n entity?: string;\n };\n 'wizard-navigation': {\n type: 'wizard-navigation';\n /** Current step index (0-based) */\n currentStep: number | string;\n /** Total number of steps */\n totalSteps: number | string;\n /** Whether the current step is valid (enables Next/Complete) */\n isValid?: boolean | string;\n /** Show the Back button */\n showBack?: boolean | string;\n /** Show the Next button */\n showNext?: boolean | string;\n /** Show the Complete button (on last step) */\n showComplete?: boolean | string;\n /** Custom label for Back button */\n backLabel?: string;\n /** Custom label for Next button */\n nextLabel?: string;\n /** Custom label for Complete button */\n completeLabel?: string;\n /** Event to emit on Back click */\n onBack?: string;\n /** Event to emit on Next click */\n onNext?: string;\n /** Event to emit on Complete click */\n onComplete?: string;\n /** Direct callback for Back (alternative to event) */\n onBackClick?: ((...args: unknown[]) => unknown) | string;\n /** Direct callback for Next (alternative to event) */\n onNextClick?: ((...args: unknown[]) => unknown) | string;\n /** Direct callback for Complete (alternative to event) */\n onCompleteClick?: ((...args: unknown[]) => unknown) | string;\n /** Compact mode (smaller padding) */\n compact?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'wizard-progress': {\n type: 'wizard-progress';\n /** Step definitions (compatible with WizardContainer's WizardStep) */\n steps: unknown[] | string;\n /** Current step index (0-based) */\n currentStep: number | string;\n /** Callback when a completed step is clicked */\n onStepClick?: ((...args: unknown[]) => unknown) | string;\n /** Allow clicking on completed steps to navigate back */\n allowNavigation?: boolean | string;\n /** Compact mode (smaller, no titles) */\n compact?: boolean | string;\n /** Additional CSS classes */\n className?: string;\n };\n 'world-map-template': {\n type: 'world-map-template';\n /** All map hexes (with pre-resolved terrain sprites) */\n hexes: unknown[] | string;\n /** Heroes on the map */\n heroes: unknown[] | string;\n /** Features rendered on tiles */\n features?: unknown[] | string;\n /** Currently selected hero ID */\n selectedHeroId?: string;\n /** Canvas render scale */\n scale?: number | string;\n /** Unit draw-size multiplier */\n unitScale?: number | string;\n /** Asset manifest for IsometricCanvas */\n assetManifest?: Record<string, unknown> | string;\n /** Background image URL */\n backgroundImage?: string;\n /** Allow selecting / moving ALL heroes (including enemy). For testing. */\n allowMoveAllHeroes?: boolean | string;\n /** Custom movement range validator */\n isInRange?: ((...args: unknown[]) => unknown) | string;\n /** -- Slots -- */\n header?: ((...args: unknown[]) => unknown) | string;\n /** Side panel (hero detail, hero lists, etc.) */\n sidePanel?: ((...args: unknown[]) => unknown) | string;\n /** Canvas overlay (tooltips, popups) */\n overlay?: ((...args: unknown[]) => unknown) | string;\n /** Footer */\n footer?: ((...args: unknown[]) => unknown) | string;\n /** -- Callbacks -- */\n onHeroSelect?: ((...args: unknown[]) => unknown) | string;\n /** onHeroMove prop */\n onHeroMove?: ((...args: unknown[]) => unknown) | string;\n /** Called when hero clicks an enemy hero tile */\n onBattleEncounter?: ((...args: unknown[]) => unknown) | string;\n /** Called when hero enters a feature hex (castle, resource, etc.) */\n onFeatureEnter?: ((...args: unknown[]) => unknown) | string;\n /** -- Canvas pass-through -- */\n effectSpriteUrls?: unknown[] | string;\n /** resolveUnitFrame prop */\n resolveUnitFrame?: ((...args: unknown[]) => unknown) | string;\n /** className prop */\n className?: string;\n };\n}\n\n/**\n * Get the props type for a specific pattern.\n * \n * @example\n * type TableProps = PatternProps<'entity-table'>;\n * // { type: 'entity-table'; columns: unknown[]; data?: Record<string, unknown>; ... }\n */\nexport type PatternProps<T extends PatternType> = PatternPropsMap[T];\n\n/**\n * Type-safe pattern configuration.\n * The props are validated based on the pattern type.\n * \n * @example\n * // ✅ Valid\n * const config: PatternConfig<'entity-table'> = { \n * type: 'entity-table', \n * columns: ['name', 'email'] \n * };\n * \n * // ❌ Error: Property 'columns' is missing\n * const bad: PatternConfig<'entity-table'> = { type: 'entity-table' };\n */\nexport type PatternConfig<T extends PatternType = PatternType> = PatternPropsMap[T];\n\n/**\n * Discriminated union of all pattern configs.\n * Use when the pattern type is not known statically.\n */\nexport type AnyPatternConfig = PatternPropsMap[PatternType];\n\n/**\n * Array of all pattern type names (for runtime validation)\n */\nexport const PATTERN_TYPES: PatternType[] = [\n 'accordion',\n 'action-buttons',\n 'alert',\n 'auth-layout',\n 'avatar',\n 'badge',\n 'battle-template',\n 'box',\n 'breadcrumb',\n 'button',\n 'button-pattern',\n 'canvas-effect',\n 'card',\n 'castle-template',\n 'center',\n 'chart',\n 'checkbox',\n 'code-viewer',\n 'conditional-wrapper',\n 'confirm-dialog',\n 'container',\n 'control-button',\n 'counter-template',\n 'crud-template',\n 'custom-pattern',\n 'd-pad',\n 'dashboard-grid',\n 'dashboard-layout',\n 'detail-panel',\n 'dialogue-box',\n 'divider',\n 'document-viewer',\n 'drawer',\n 'drawer-slot',\n 'empty-state',\n 'entity-cards',\n 'entity-list',\n 'entity-table',\n 'error-state',\n 'filter-group',\n 'flex',\n 'floating-action-button',\n 'form',\n 'form-actions',\n 'form-field',\n 'form-section',\n 'form-section-header',\n 'form-template',\n 'game-hud',\n 'game-menu',\n 'game-over-screen',\n 'game-shell',\n 'game-template',\n 'generic-app-template',\n 'graph-canvas',\n 'grid',\n 'header',\n 'health-bar',\n 'icon',\n 'input',\n 'input-group',\n 'inventory-panel',\n 'isometric-canvas',\n 'label',\n 'law-reference-tooltip',\n 'layout-pattern',\n 'list-template',\n 'loading-state',\n 'master-detail',\n 'media-gallery',\n 'menu',\n 'meter',\n 'modal',\n 'modal-slot',\n 'navigation',\n 'notification',\n 'orbital-visualization',\n 'overlay',\n 'page-header',\n 'pagination',\n 'popover',\n 'progress-bar',\n 'radio',\n 'relation-select',\n 'repeatable-form-section',\n 'runtime-debugger',\n 'score-display',\n 'search-input',\n 'section',\n 'select',\n 'settings-template',\n 'side-panel',\n 'sidebar',\n 'signature-pad',\n 'simple-grid',\n 'spacer',\n 'spinner',\n 'split',\n 'split-pane',\n 'sprite',\n 'stack',\n 'stat-badge',\n 'stats',\n 'switch',\n 'tabbed-container',\n 'table',\n 'tabs',\n 'text-highlight',\n 'textarea',\n 'theme-toggle',\n 'timeline',\n 'toast-slot',\n 'tooltip',\n 'typography',\n 'u-i-slot-renderer',\n 'violation-alert',\n 'wizard-container',\n 'wizard-navigation',\n 'wizard-progress',\n 'world-map-template',\n];\n\n/**\n * Check if a string is a valid pattern type\n */\nexport function isValidPatternType(type: string): type is PatternType {\n return PATTERN_TYPES.includes(type as PatternType);\n}\n","/**\n * Prompt Helpers for @almadar/patterns\n * \n * Helper functions for generating prompts/documentation from pattern registry.\n * Used by @almadar/skills package and other tools.\n * \n * @packageDocumentation\n */\n\nimport { patternsRegistry } from '../index.js';\nimport type { PatternType } from '../pattern-types.js';\n\n/**\n * Get patterns grouped by category.\n * Categories are derived from pattern registry metadata.\n */\nexport function getPatternsGroupedByCategory(): Record<string, PatternType[]> {\n const patterns = patternsRegistry.patterns || {};\n const grouped: Record<string, PatternType[]> = {};\n\n for (const [patternName, patternDef] of Object.entries(patterns)) {\n const category = (patternDef as any).category || 'uncategorized';\n if (!grouped[category]) {\n grouped[category] = [];\n }\n grouped[category].push(patternName as PatternType);\n }\n\n return grouped;\n}\n\n/**\n * Get compact pattern props reference table.\n * Generates markdown table of pattern names and their key props.\n */\nexport function getPatternPropsCompact(): string {\n const patterns = patternsRegistry.patterns || {};\n const lines: string[] = [\n '| Pattern | Key Props |',\n '|---------|-----------|',\n ];\n\n for (const [patternName, patternDef] of Object.entries(patterns)) {\n const propsSchema = (patternDef as any).propsSchema || {};\n const requiredProps = Object.keys(propsSchema).filter(\n (key) => propsSchema[key]?.required === true\n );\n const keyProps = requiredProps.length > 0 \n ? requiredProps.join(', ') \n : Object.keys(propsSchema).slice(0, 3).join(', ');\n \n lines.push(`| ${patternName} | ${keyProps} |`);\n }\n\n return lines.join('\\n');\n}\n\n/**\n * Get pattern action props reference.\n * Lists patterns that have action/event props (buttons, forms, etc.).\n */\nexport function getPatternActionsRef(): string {\n const patterns = patternsRegistry.patterns || {};\n const lines: string[] = [\n '## Pattern Action Props',\n '',\n '| Pattern | Action Props | Notes |',\n '|---------|-------------|-------|',\n ];\n\n for (const [patternName, patternDef] of Object.entries(patterns)) {\n const propsSchema = (patternDef as any).propsSchema || {};\n const actionProps: string[] = [];\n\n // Check for common action prop patterns\n for (const [propName, propDef] of Object.entries(propsSchema)) {\n if (\n propName.includes('action') ||\n propName.includes('Action') ||\n propName.includes('event') ||\n propName.includes('Event') ||\n propName === 'onSubmit' ||\n propName === 'onClick'\n ) {\n actionProps.push(propName);\n }\n }\n\n if (actionProps.length > 0) {\n const notes = (patternDef as any).description || '';\n lines.push(`| ${patternName} | ${actionProps.join(', ')} | ${notes.slice(0, 50)} |`);\n }\n }\n\n return lines.join('\\n');\n}\n\n/**\n * Generate pattern description from metadata.\n * Auto-generates human-readable description from pattern props schema.\n */\nexport function generatePatternDescription(patternType: string): string {\n const patterns = patternsRegistry.patterns as Record<string, any> || {};\n const patternDef = patterns[patternType];\n \n if (!patternDef) {\n return patternType;\n }\n\n const desc = patternDef.description;\n if (desc) {\n return desc;\n }\n\n // Auto-generate from props\n const propsSchema = patternDef.propsSchema || {};\n const propCount = Object.keys(propsSchema).length;\n const requiredProps = Object.keys(propsSchema).filter(\n (key) => propsSchema[key]?.required === true\n );\n\n if (requiredProps.length > 0) {\n return `${patternType} (requires: ${requiredProps.join(', ')})`;\n }\n\n return `${patternType} (${propCount} props)`;\n}\n\n/**\n * Get all pattern types as array.\n */\nexport function getAllPatternTypes(): PatternType[] {\n const patterns = patternsRegistry.patterns as Record<string, any> || {};\n return Object.keys(patterns) as PatternType[];\n}\n\n/**\n * Get pattern metadata for a specific pattern.\n */\nexport function getPatternMetadata(patternType: string) {\n const patterns = patternsRegistry.patterns as Record<string, any> || {};\n return patterns[patternType] || null;\n}\n","/**\n * Pattern Recommender\n *\n * Maps transition context (entity fields, domain category, UI state) to\n * ranked pattern suggestions using the registry's `suggestedFor` metadata,\n * category matching, and entity field type heuristics.\n *\n * Used by the design-transition tool to include top-N recommendations\n * in the LLM prompt context.\n *\n * @packageDocumentation\n */\n\nimport { patternsRegistry } from '../index.js';\nimport type { PatternType } from '../pattern-types.js';\n\n// ============================================================================\n// Types\n// ============================================================================\n\n/**\n * Context for pattern recommendation.\n */\nexport interface RecommendationContext {\n /** Current state name (e.g., \"Browsing\", \"Creating\") */\n state?: string;\n /** Triggering event (e.g., \"INIT\", \"CREATE\", \"VIEW\") */\n event?: string;\n /** Target UI slot */\n slot?: 'main' | 'modal' | 'drawer' | 'sidebar' | 'overlay';\n /** Domain category */\n domainCategory?: string;\n /** Entity field types present */\n entityFieldTypes?: string[];\n /** Entity has enum fields */\n hasEnumFields?: boolean;\n /** Entity has date/timestamp fields */\n hasDateFields?: boolean;\n /** Entity has numeric fields */\n hasNumericFields?: boolean;\n /** Entity has relation fields */\n hasRelationFields?: boolean;\n /** Entity has image/url fields */\n hasMediaFields?: boolean;\n}\n\n/**\n * A pattern recommendation with score and reasoning.\n */\nexport interface PatternRecommendation {\n /** Pattern type name */\n pattern: PatternType;\n /** Relevance score (0-100) */\n score: number;\n /** Why this pattern was recommended */\n reason: string;\n /** Pattern category */\n category: string;\n /** Pattern description */\n description: string;\n /** Key props to use */\n keyProps: string[];\n}\n\n// ============================================================================\n// Domain → suggestedFor keyword mapping\n// ============================================================================\n\nconst DOMAIN_KEYWORDS: Record<string, string[]> = {\n business: ['admin panels', 'data-dense views', 'list pages', 'data entry', 'comparisons'],\n dashboard: ['dashboards', 'analytics', 'overview pages', 'overview screens', 'data visualization', 'reporting', 'KPI indicators'],\n 'e-commerce': ['visual items', 'images', 'previews', 'data entry', 'list pages'],\n content: ['visual items', 'images', 'previews', 'media', 'pages with multiple views'],\n social: ['activity logs', 'visual items', 'previews'],\n workflow: ['process tracking', 'workflow steps', 'multi-step forms', 'wizards'],\n form: ['data entry', 'create forms', 'edit forms', 'multi-step forms'],\n game: ['game', 'real-time', 'interactive'],\n};\n\n/**\n * Event → relevant suggestedFor keywords\n */\nconst EVENT_KEYWORDS: Record<string, string[]> = {\n INIT: ['list pages', 'overview pages', 'dashboards', 'admin panels'],\n CREATE: ['create forms', 'data entry', 'multi-step forms'],\n EDIT: ['edit forms', 'data entry'],\n VIEW: ['detail pages', 'entity management', 'pages with multiple views'],\n DELETE: ['destructive actions', 'confirmations'],\n FILTER: ['filterable data', 'search functionality', 'quick filters'],\n};\n\n/**\n * Slot → category affinity (which categories belong in which slot)\n */\nconst SLOT_CATEGORY_AFFINITY: Record<string, string[]> = {\n main: ['display', 'dashboard', 'filter', 'header', 'layout', 'visualization', 'navigation', 'template'],\n modal: ['form', 'container', 'state'],\n drawer: ['display', 'form', 'navigation'],\n sidebar: ['navigation', 'filter'],\n overlay: ['container', 'state'],\n};\n\n/**\n * State → relevant categories\n */\nconst STATE_CATEGORY_AFFINITY: Record<string, string[]> = {\n Browsing: ['display', 'filter', 'header', 'dashboard', 'visualization'],\n Creating: ['form', 'navigation'],\n Editing: ['form', 'navigation'],\n Viewing: ['display', 'navigation'],\n Deleting: ['container', 'state'],\n};\n\n// ============================================================================\n// Core Recommendation Engine\n// ============================================================================\n\n/**\n * Recommend patterns for a given context.\n *\n * Scoring algorithm:\n * 1. suggestedFor match with domain keywords (+30)\n * 2. suggestedFor match with event keywords (+25)\n * 3. Category affinity with slot (+20)\n * 4. Category affinity with state (+15)\n * 5. Entity field type bonus (+10 per matching heuristic)\n * 6. Entity-aware bonus for display patterns (+5)\n *\n * @returns Ranked pattern recommendations, highest score first\n */\nexport function recommendPatterns(\n context: RecommendationContext,\n maxResults: number = 10,\n): PatternRecommendation[] {\n const patterns = (patternsRegistry as any).patterns || {};\n const scores: Map<string, { score: number; reasons: string[] }> = new Map();\n\n const domainKeywords = context.domainCategory\n ? DOMAIN_KEYWORDS[context.domainCategory] || []\n : [];\n const eventKeywords = context.event\n ? EVENT_KEYWORDS[context.event] || []\n : [];\n const slotCategories = context.slot\n ? SLOT_CATEGORY_AFFINITY[context.slot] || []\n : [];\n const stateCategories = context.state\n ? STATE_CATEGORY_AFFINITY[context.state] || []\n : [];\n\n for (const [patternName, patternDef] of Object.entries(patterns) as [string, any][]) {\n const suggestedFor: string[] = patternDef.suggestedFor || [];\n const category: string = patternDef.category || '';\n let score = 0;\n const reasons: string[] = [];\n\n // Skip game patterns for non-game domains\n if (category === 'game' && context.domainCategory !== 'game') continue;\n // Skip debug patterns\n if (category === 'debug') continue;\n // Skip template patterns (too high-level for transition design)\n if (category === 'template') continue;\n\n // 1. suggestedFor × domain keywords (+30 max)\n for (const keyword of domainKeywords) {\n if (suggestedFor.some(sf => sf.toLowerCase().includes(keyword.toLowerCase()))) {\n score += 30;\n reasons.push(`domain:${keyword}`);\n break; // Only count once\n }\n }\n\n // 2. suggestedFor × event keywords (+25 max)\n for (const keyword of eventKeywords) {\n if (suggestedFor.some(sf => sf.toLowerCase().includes(keyword.toLowerCase()))) {\n score += 25;\n reasons.push(`event:${keyword}`);\n break;\n }\n }\n\n // 3. Slot category affinity (+20)\n if (slotCategories.includes(category)) {\n score += 20;\n reasons.push(`slot:${context.slot}`);\n }\n\n // 4. State category affinity (+15)\n if (stateCategories.includes(category)) {\n score += 15;\n reasons.push(`state:${context.state}`);\n }\n\n // 5. Entity field type heuristics (+10 each)\n if (context.hasEnumFields && ['filter-group', 'tabs', 'badge'].includes(patternName)) {\n score += 10;\n reasons.push('enum-fields');\n }\n if (context.hasDateFields && ['timeline', 'chart'].includes(patternName)) {\n score += 10;\n reasons.push('date-fields');\n }\n if (context.hasNumericFields && ['stats', 'chart', 'meter', 'progress-bar'].includes(patternName)) {\n score += 10;\n reasons.push('numeric-fields');\n }\n if (context.hasRelationFields && ['tabs', 'master-detail'].includes(patternName)) {\n score += 10;\n reasons.push('relation-fields');\n }\n if (context.hasMediaFields && ['entity-cards', 'media-gallery'].includes(patternName)) {\n score += 10;\n reasons.push('media-fields');\n }\n\n // 6. Entity-aware bonus for display patterns (+5)\n if (category === 'display' || category === 'dashboard') {\n const propsSchema = patternDef.propsSchema || {};\n if ('entity' in propsSchema) {\n score += 5;\n reasons.push('entity-aware');\n }\n }\n\n if (score > 0) {\n scores.set(patternName, { score, reasons });\n }\n }\n\n // Sort by score, take top N\n const ranked = [...scores.entries()]\n .sort((a, b) => b[1].score - a[1].score)\n .slice(0, maxResults);\n\n return ranked.map(([patternName, { score, reasons }]) => {\n const patternDef = patterns[patternName];\n const propsSchema = patternDef.propsSchema || {};\n const keyProps = Object.keys(propsSchema)\n .filter(k => propsSchema[k]?.required === true)\n .slice(0, 5);\n\n // If no required props, show first few meaningful ones\n if (keyProps.length === 0) {\n const meaningful = Object.keys(propsSchema).filter(\n k => !['className', 'isLoading', 'error', 'entity'].includes(k)\n );\n keyProps.push(...meaningful.slice(0, 4));\n }\n\n return {\n pattern: patternName as PatternType,\n score,\n reason: reasons.join(', '),\n category: patternDef.category || 'unknown',\n description: patternDef.description || patternName,\n keyProps,\n };\n });\n}\n\n// ============================================================================\n// Context Builder (from raw entity fields)\n// ============================================================================\n\n/**\n * Build recommendation context from entity field information.\n * Analyzes field types to set the boolean flags used by the recommender.\n */\nexport function buildRecommendationContext(options: {\n state?: string;\n event?: string;\n slot?: 'main' | 'modal' | 'drawer' | 'sidebar' | 'overlay';\n domainCategory?: string;\n entityFields?: Array<{ name: string; type: string; values?: string[] }>;\n}): RecommendationContext {\n const fields = options.entityFields || [];\n const fieldTypes = fields.map(f => f.type);\n\n return {\n state: options.state,\n event: options.event,\n slot: options.slot,\n domainCategory: options.domainCategory,\n entityFieldTypes: fieldTypes,\n hasEnumFields: fields.some(f => f.type === 'enum' || (f.values && f.values.length > 0)),\n hasDateFields: fields.some(f => ['date', 'datetime', 'timestamp'].includes(f.type)),\n hasNumericFields: fields.some(f => ['number', 'integer', 'float', 'decimal', 'currency'].includes(f.type)),\n hasRelationFields: fields.some(f => f.type === 'relation'),\n hasMediaFields: fields.some(f => ['image', 'url', 'media', 'file'].includes(f.type)),\n };\n}\n\n// ============================================================================\n// Prompt Formatter\n// ============================================================================\n\n/**\n * Format recommendations as a concise prompt section.\n * Used to inject into the design-transition tool's user prompt.\n */\nexport function formatRecommendationsForPrompt(\n recommendations: PatternRecommendation[],\n): string {\n if (recommendations.length === 0) return '';\n\n const lines = [\n '## Recommended Patterns',\n '',\n '| Pattern | Category | Key Props | Why |',\n '|---------|----------|-----------|-----|',\n ];\n\n for (const rec of recommendations) {\n const props = rec.keyProps.length > 0 ? rec.keyProps.join(', ') : '—';\n lines.push(`| ${rec.pattern} | ${rec.category} | ${props} | ${rec.reason} |`);\n }\n\n lines.push('');\n lines.push('Use these patterns where appropriate. Combine multiple for rich INIT transitions.');\n\n return lines.join('\\n');\n}\n","import patternsRegistry from './patterns-registry.json' with { type: 'json' };\nimport integratorsRegistry from './integrators-registry.json' with { type: 'json' };\nimport componentMapping from './component-mapping.json' with { type: 'json' };\nimport eventContracts from './event-contracts.json' with { type: 'json' };\n\n// Export both registries\nexport { patternsRegistry, integratorsRegistry, componentMapping, eventContracts };\n\n// Export pattern types for compile-time validation\nexport {\n PatternType,\n PatternPropsMap,\n PatternProps,\n PatternConfig,\n AnyPatternConfig,\n PATTERN_TYPES,\n isValidPatternType,\n} from './pattern-types.js';\n\n// Backwards compatible alias - registry refers to patterns registry\nexport const registry = patternsRegistry;\n\nexport const PATTERN_REGISTRY = patternsRegistry;\nexport const INTEGRATORS_REGISTRY = integratorsRegistry;\nexport const COMPONENT_MAPPING = componentMapping;\nexport const EVENT_CONTRACTS = eventContracts;\n\nexport function getPatternDefinition(patternType: string) {\n return (patternsRegistry as any).patterns?.[patternType] ?? null;\n}\n\nexport function getComponentForPattern(patternType: string) {\n return (componentMapping as any).mappings?.[patternType] ?? null;\n}\n\n/**\n * Check if a pattern is entity-aware (requires data injection).\n *\n * Entity-aware patterns:\n * 1. Have `entityAware: true` in the registry (explicit flag)\n * 2. OR have both `entity` and `data` props in propsSchema (auto-detection fallback)\n *\n * @param patternType - Pattern type to check\n * @returns true if the pattern is entity-aware\n */\nexport function isEntityAwarePattern(patternType: string): boolean {\n const definition = getPatternDefinition(patternType);\n if (!definition) return false;\n\n // Explicit flag takes precedence\n if (definition.entityAware === true) return true;\n\n // Auto-detect based on props (fallback)\n const propsSchema = definition.propsSchema;\n if (!propsSchema) return false;\n\n // If pattern has both 'entity' and ('data' or 'items') props, it's likely entity-aware\n const hasEntityProp = 'entity' in propsSchema;\n const hasDataProp = 'data' in propsSchema || 'items' in propsSchema;\n\n return hasEntityProp && hasDataProp;\n}\n\n// Export prompt helpers for @almadar/skills\nexport {\n getPatternsGroupedByCategory,\n getPatternPropsCompact,\n getPatternActionsRef,\n generatePatternDescription,\n getAllPatternTypes,\n getPatternMetadata,\n} from './helpers/prompt-helpers.js';\n\n// Export pattern recommender for @almadar/agent design tool\nexport {\n recommendPatterns,\n buildRecommendationContext,\n formatRecommendationsForPrompt,\n type RecommendationContext,\n type PatternRecommendation,\n} from './helpers/pattern-recommender.js';\n"]}