@tpitre/story-ui 3.3.0 → 3.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (281) hide show
  1. package/dist/cli/index.js +0 -0
  2. package/dist/cli/index.js.map +1 -0
  3. package/dist/cli/setup.js.map +1 -0
  4. package/dist/cloudflare-edge/src/mcp-session.js +462 -0
  5. package/dist/cloudflare-edge/src/types.js +4 -0
  6. package/dist/cloudflare-edge/src/worker.js +106 -0
  7. package/dist/cloudflare-pages/vite.config.js +14 -0
  8. package/dist/index.d.ts +13 -0
  9. package/dist/index.d.ts.map +1 -0
  10. package/dist/index.js +12 -0
  11. package/dist/index.js.map +1 -0
  12. package/dist/mcp-server/index.js.map +1 -0
  13. package/dist/mcp-server/mcp-stdio-server.js.map +1 -0
  14. package/dist/mcp-server/routes/claude.js.map +1 -0
  15. package/dist/mcp-server/routes/components.js.map +1 -0
  16. package/dist/mcp-server/routes/generateStory.js.map +1 -0
  17. package/dist/mcp-server/routes/hybridStories.d.ts +18 -0
  18. package/dist/mcp-server/routes/hybridStories.d.ts.map +1 -0
  19. package/dist/mcp-server/routes/hybridStories.js +216 -0
  20. package/dist/mcp-server/routes/hybridStories.js.map +1 -0
  21. package/dist/mcp-server/routes/memoryStories.d.ts +26 -0
  22. package/dist/mcp-server/routes/memoryStories.d.ts.map +1 -0
  23. package/dist/mcp-server/routes/memoryStories.js +158 -0
  24. package/dist/mcp-server/routes/memoryStories.js.map +1 -0
  25. package/dist/mcp-server/routes/storySync.d.ts +26 -0
  26. package/dist/mcp-server/routes/storySync.d.ts.map +1 -0
  27. package/dist/mcp-server/routes/storySync.js +147 -0
  28. package/dist/mcp-server/routes/storySync.js.map +1 -0
  29. package/dist/mcp-server/routes/updateStory.js +246 -0
  30. package/dist/mcp-server/sessionManager.d.ts +50 -0
  31. package/dist/mcp-server/sessionManager.d.ts.map +1 -0
  32. package/dist/mcp-server/sessionManager.js +125 -0
  33. package/dist/mcp-server/sessionManager.js.map +1 -0
  34. package/dist/playground/components/AIAssistant/AIAssistant.d.ts +6 -0
  35. package/dist/playground/components/AIAssistant/AIAssistant.d.ts.map +1 -0
  36. package/dist/playground/components/AIAssistant/AIAssistant.js +109 -0
  37. package/dist/playground/components/AIAssistant/AIAssistant.js.map +1 -0
  38. package/dist/playground/components/AIAssistant/AIAssistant.module.css +166 -0
  39. package/dist/playground/components/Canvas/Canvas.d.ts +9 -0
  40. package/dist/playground/components/Canvas/Canvas.d.ts.map +1 -0
  41. package/dist/playground/components/Canvas/Canvas.js +58 -0
  42. package/dist/playground/components/Canvas/Canvas.js.map +1 -0
  43. package/dist/playground/components/Canvas/Canvas.module.css +189 -0
  44. package/dist/playground/components/Canvas/CanvasWithDnd.d.ts +9 -0
  45. package/dist/playground/components/Canvas/CanvasWithDnd.d.ts.map +1 -0
  46. package/dist/playground/components/Canvas/CanvasWithDnd.js +158 -0
  47. package/dist/playground/components/Canvas/CanvasWithDnd.js.map +1 -0
  48. package/dist/playground/components/Canvas/ComponentRenderer.d.ts +15 -0
  49. package/dist/playground/components/Canvas/ComponentRenderer.d.ts.map +1 -0
  50. package/dist/playground/components/Canvas/ComponentRenderer.js +177 -0
  51. package/dist/playground/components/Canvas/ComponentRenderer.js.map +1 -0
  52. package/dist/playground/components/Canvas/DraggableComponent.d.ts +15 -0
  53. package/dist/playground/components/Canvas/DraggableComponent.d.ts.map +1 -0
  54. package/dist/playground/components/Canvas/DraggableComponent.js +49 -0
  55. package/dist/playground/components/Canvas/DraggableComponent.js.map +1 -0
  56. package/dist/playground/components/Canvas/index.d.ts +9 -0
  57. package/dist/playground/components/Canvas/index.d.ts.map +1 -0
  58. package/dist/playground/components/Canvas/index.js +5 -0
  59. package/dist/playground/components/Canvas/index.js.map +1 -0
  60. package/dist/playground/components/CodeView/CodeView.d.ts +12 -0
  61. package/dist/playground/components/CodeView/CodeView.d.ts.map +1 -0
  62. package/dist/playground/components/CodeView/CodeView.js +77 -0
  63. package/dist/playground/components/CodeView/CodeView.js.map +1 -0
  64. package/dist/playground/components/CodeView/CodeView.module.css +178 -0
  65. package/dist/playground/components/ComponentPalette/ComponentPalette.d.ts +17 -0
  66. package/dist/playground/components/ComponentPalette/ComponentPalette.d.ts.map +1 -0
  67. package/dist/playground/components/ComponentPalette/ComponentPalette.js +138 -0
  68. package/dist/playground/components/ComponentPalette/ComponentPalette.js.map +1 -0
  69. package/dist/playground/components/ComponentPalette/ComponentPalette.module.css +217 -0
  70. package/dist/playground/components/ComponentPalette/index.d.ts +3 -0
  71. package/dist/playground/components/ComponentPalette/index.d.ts.map +1 -0
  72. package/dist/playground/components/ComponentPalette/index.js +2 -0
  73. package/dist/playground/components/ComponentPalette/index.js.map +1 -0
  74. package/dist/playground/components/DropZone/DropZone.d.ts +17 -0
  75. package/dist/playground/components/DropZone/DropZone.d.ts.map +1 -0
  76. package/dist/playground/components/DropZone/DropZone.js +73 -0
  77. package/dist/playground/components/DropZone/DropZone.js.map +1 -0
  78. package/dist/playground/components/DropZone/DropZone.module.css +86 -0
  79. package/dist/playground/components/ExportDialog/ExportDialog.d.ts +10 -0
  80. package/dist/playground/components/ExportDialog/ExportDialog.d.ts.map +1 -0
  81. package/dist/playground/components/ExportDialog/ExportDialog.js +57 -0
  82. package/dist/playground/components/ExportDialog/ExportDialog.js.map +1 -0
  83. package/dist/playground/components/ExportDialog/ExportDialog.module.css +328 -0
  84. package/dist/playground/components/LayoutHelpers/LayoutHelpers.d.ts +134 -0
  85. package/dist/playground/components/LayoutHelpers/LayoutHelpers.d.ts.map +1 -0
  86. package/dist/playground/components/LayoutHelpers/LayoutHelpers.js +254 -0
  87. package/dist/playground/components/LayoutHelpers/LayoutHelpers.js.map +1 -0
  88. package/dist/playground/components/LayoutHelpers/index.d.ts +3 -0
  89. package/dist/playground/components/LayoutHelpers/index.d.ts.map +1 -0
  90. package/dist/playground/components/LayoutHelpers/index.js +2 -0
  91. package/dist/playground/components/LayoutHelpers/index.js.map +1 -0
  92. package/dist/playground/components/Playground/Playground.d.ts +10 -0
  93. package/dist/playground/components/Playground/Playground.d.ts.map +1 -0
  94. package/dist/playground/components/Playground/Playground.js +128 -0
  95. package/dist/playground/components/Playground/Playground.js.map +1 -0
  96. package/dist/playground/components/Playground/Playground.module.css +308 -0
  97. package/dist/playground/components/PropertiesPanel/PropertiesPanel.d.ts +10 -0
  98. package/dist/playground/components/PropertiesPanel/PropertiesPanel.d.ts.map +1 -0
  99. package/dist/playground/components/PropertiesPanel/PropertiesPanel.js +150 -0
  100. package/dist/playground/components/PropertiesPanel/PropertiesPanel.js.map +1 -0
  101. package/dist/playground/components/PropertiesPanel/PropertiesPanel.module.css +155 -0
  102. package/dist/playground/components/PropertiesPanel/index.d.ts +3 -0
  103. package/dist/playground/components/PropertiesPanel/index.d.ts.map +1 -0
  104. package/dist/playground/components/PropertiesPanel/index.js +2 -0
  105. package/dist/playground/components/PropertiesPanel/index.js.map +1 -0
  106. package/dist/playground/components/PropertyEditors/BooleanEditor.d.ts +12 -0
  107. package/dist/playground/components/PropertyEditors/BooleanEditor.d.ts.map +1 -0
  108. package/dist/playground/components/PropertyEditors/BooleanEditor.js +14 -0
  109. package/dist/playground/components/PropertyEditors/BooleanEditor.js.map +1 -0
  110. package/dist/playground/components/PropertyEditors/ColorEditor.d.ts +12 -0
  111. package/dist/playground/components/PropertyEditors/ColorEditor.d.ts.map +1 -0
  112. package/dist/playground/components/PropertyEditors/ColorEditor.js +62 -0
  113. package/dist/playground/components/PropertyEditors/ColorEditor.js.map +1 -0
  114. package/dist/playground/components/PropertyEditors/IconEditor.d.ts +12 -0
  115. package/dist/playground/components/PropertyEditors/IconEditor.d.ts.map +1 -0
  116. package/dist/playground/components/PropertyEditors/IconEditor.js +123 -0
  117. package/dist/playground/components/PropertyEditors/IconEditor.js.map +1 -0
  118. package/dist/playground/components/PropertyEditors/NumberEditor.d.ts +15 -0
  119. package/dist/playground/components/PropertyEditors/NumberEditor.d.ts.map +1 -0
  120. package/dist/playground/components/PropertyEditors/NumberEditor.js +46 -0
  121. package/dist/playground/components/PropertyEditors/NumberEditor.js.map +1 -0
  122. package/dist/playground/components/PropertyEditors/PropertyEditors.module.css +432 -0
  123. package/dist/playground/components/PropertyEditors/SelectEditor.d.ts +19 -0
  124. package/dist/playground/components/PropertyEditors/SelectEditor.d.ts.map +1 -0
  125. package/dist/playground/components/PropertyEditors/SelectEditor.js +17 -0
  126. package/dist/playground/components/PropertyEditors/SelectEditor.js.map +1 -0
  127. package/dist/playground/components/PropertyEditors/SpacingEditor.d.ts +19 -0
  128. package/dist/playground/components/PropertyEditors/SpacingEditor.d.ts.map +1 -0
  129. package/dist/playground/components/PropertyEditors/SpacingEditor.js +162 -0
  130. package/dist/playground/components/PropertyEditors/SpacingEditor.js.map +1 -0
  131. package/dist/playground/components/PropertyEditors/SpacingEditor.module.css +214 -0
  132. package/dist/playground/components/PropertyEditors/TextEditor.d.ts +14 -0
  133. package/dist/playground/components/PropertyEditors/TextEditor.d.ts.map +1 -0
  134. package/dist/playground/components/PropertyEditors/TextEditor.js +38 -0
  135. package/dist/playground/components/PropertyEditors/TextEditor.js.map +1 -0
  136. package/dist/playground/components/PropertyEditors/TokenEditor.d.ts +23 -0
  137. package/dist/playground/components/PropertyEditors/TokenEditor.d.ts.map +1 -0
  138. package/dist/playground/components/PropertyEditors/TokenEditor.js +50 -0
  139. package/dist/playground/components/PropertyEditors/TokenEditor.js.map +1 -0
  140. package/dist/playground/components/PropertyEditors/index.d.ts +20 -0
  141. package/dist/playground/components/PropertyEditors/index.d.ts.map +1 -0
  142. package/dist/playground/components/PropertyEditors/index.js +12 -0
  143. package/dist/playground/components/PropertyEditors/index.js.map +1 -0
  144. package/dist/playground/components/TreeView/TreeView.d.ts +10 -0
  145. package/dist/playground/components/TreeView/TreeView.d.ts.map +1 -0
  146. package/dist/playground/components/TreeView/TreeView.js +146 -0
  147. package/dist/playground/components/TreeView/TreeView.js.map +1 -0
  148. package/dist/playground/components/TreeView/TreeView.module.css +214 -0
  149. package/dist/playground/components/TreeView/index.d.ts +3 -0
  150. package/dist/playground/components/TreeView/index.d.ts.map +1 -0
  151. package/dist/playground/components/TreeView/index.js +2 -0
  152. package/dist/playground/components/TreeView/index.js.map +1 -0
  153. package/dist/playground/config/propertyDefinitions.d.ts +73 -0
  154. package/dist/playground/config/propertyDefinitions.d.ts.map +1 -0
  155. package/dist/playground/config/propertyDefinitions.js +809 -0
  156. package/dist/playground/config/propertyDefinitions.js.map +1 -0
  157. package/dist/playground/hooks/useKeyboardShortcuts.d.ts +38 -0
  158. package/dist/playground/hooks/useKeyboardShortcuts.d.ts.map +1 -0
  159. package/dist/playground/hooks/useKeyboardShortcuts.js +191 -0
  160. package/dist/playground/hooks/useKeyboardShortcuts.js.map +1 -0
  161. package/dist/playground/index.d.ts +21 -0
  162. package/dist/playground/index.d.ts.map +1 -0
  163. package/dist/playground/index.js +23 -0
  164. package/dist/playground/index.js.map +1 -0
  165. package/dist/playground/services/CodeGenerator.d.ts +73 -0
  166. package/dist/playground/services/CodeGenerator.d.ts.map +1 -0
  167. package/dist/playground/services/CodeGenerator.js +359 -0
  168. package/dist/playground/services/CodeGenerator.js.map +1 -0
  169. package/dist/playground/services/DragDropManager.d.ts +95 -0
  170. package/dist/playground/services/DragDropManager.d.ts.map +1 -0
  171. package/dist/playground/services/DragDropManager.js +408 -0
  172. package/dist/playground/services/DragDropManager.js.map +1 -0
  173. package/dist/playground/services/StoryParser.d.ts +73 -0
  174. package/dist/playground/services/StoryParser.d.ts.map +1 -0
  175. package/dist/playground/services/StoryParser.js +419 -0
  176. package/dist/playground/services/StoryParser.js.map +1 -0
  177. package/dist/playground/store/playgroundStore.d.ts +86 -0
  178. package/dist/playground/store/playgroundStore.d.ts.map +1 -0
  179. package/dist/playground/store/playgroundStore.js +337 -0
  180. package/dist/playground/store/playgroundStore.js.map +1 -0
  181. package/dist/playground/stories/PlaygroundDragDrop.stories.d.ts +13 -0
  182. package/dist/playground/stories/PlaygroundDragDrop.stories.d.ts.map +1 -0
  183. package/dist/playground/stories/PlaygroundDragDrop.stories.js +227 -0
  184. package/dist/playground/stories/PlaygroundDragDrop.stories.js.map +1 -0
  185. package/dist/playground/stories/PlaygroundPhase4.stories.d.ts +13 -0
  186. package/dist/playground/stories/PlaygroundPhase4.stories.d.ts.map +1 -0
  187. package/dist/playground/stories/PlaygroundPhase4.stories.js +334 -0
  188. package/dist/playground/stories/PlaygroundPhase4.stories.js.map +1 -0
  189. package/dist/playground/stories/PlaygroundPhase5.stories.d.ts +14 -0
  190. package/dist/playground/stories/PlaygroundPhase5.stories.d.ts.map +1 -0
  191. package/dist/playground/stories/PlaygroundPhase5.stories.js +512 -0
  192. package/dist/playground/stories/PlaygroundPhase5.stories.js.map +1 -0
  193. package/dist/playground/stories/PlaygroundProperties.stories.d.ts +13 -0
  194. package/dist/playground/stories/PlaygroundProperties.stories.d.ts.map +1 -0
  195. package/dist/playground/stories/PlaygroundProperties.stories.js +342 -0
  196. package/dist/playground/stories/PlaygroundProperties.stories.js.map +1 -0
  197. package/dist/playground/types/index.d.ts +251 -0
  198. package/dist/playground/types/index.d.ts.map +1 -0
  199. package/dist/playground/types/index.js +5 -0
  200. package/dist/playground/types/index.js.map +1 -0
  201. package/dist/scripts/verify-framework-adapters.js +105 -0
  202. package/dist/story-generator/componentBlacklist.js.map +1 -0
  203. package/dist/story-generator/componentDiscovery.js.map +1 -0
  204. package/dist/story-generator/configLoader.js.map +1 -0
  205. package/dist/story-generator/considerationsLoader.js.map +1 -0
  206. package/dist/story-generator/documentation-sources.js.map +1 -0
  207. package/dist/story-generator/documentationLoader.js.map +1 -0
  208. package/dist/story-generator/dynamicPackageDiscovery.js.map +1 -0
  209. package/dist/story-generator/enhancedComponentDiscovery.js.map +1 -0
  210. package/dist/story-generator/generateStory.js.map +1 -0
  211. package/dist/story-generator/gitignoreManager.js.map +1 -0
  212. package/dist/story-generator/inMemoryStoryService.d.ts +89 -0
  213. package/dist/story-generator/inMemoryStoryService.d.ts.map +1 -0
  214. package/dist/story-generator/inMemoryStoryService.js +128 -0
  215. package/dist/story-generator/inMemoryStoryService.js.map +1 -0
  216. package/dist/story-generator/logger.js.map +1 -0
  217. package/dist/story-generator/postProcessStory.js.map +1 -0
  218. package/dist/story-generator/postgresStoryService.d.ts +56 -0
  219. package/dist/story-generator/postgresStoryService.d.ts.map +1 -0
  220. package/dist/story-generator/postgresStoryService.js +240 -0
  221. package/dist/story-generator/productionGitignoreManager.d.ts +91 -0
  222. package/dist/story-generator/productionGitignoreManager.d.ts.map +1 -0
  223. package/dist/story-generator/productionGitignoreManager.js +340 -0
  224. package/dist/story-generator/productionGitignoreManager.js.map +1 -0
  225. package/dist/story-generator/promptGenerator.js.map +1 -0
  226. package/dist/story-generator/providerPresets.d.ts +54 -0
  227. package/dist/story-generator/providerPresets.d.ts.map +1 -0
  228. package/dist/story-generator/providerPresets.js +214 -0
  229. package/dist/story-generator/storyHistory.js.map +1 -0
  230. package/dist/story-generator/storyServiceFactory.d.ts +22 -0
  231. package/dist/story-generator/storyServiceFactory.d.ts.map +1 -0
  232. package/dist/story-generator/storyServiceFactory.js +97 -0
  233. package/dist/story-generator/storyServiceInterface.d.ts +85 -0
  234. package/dist/story-generator/storyServiceInterface.d.ts.map +1 -0
  235. package/dist/story-generator/storyServiceInterface.js +5 -0
  236. package/dist/story-generator/storySync.d.ts +68 -0
  237. package/dist/story-generator/storySync.d.ts.map +1 -0
  238. package/dist/story-generator/storySync.js +201 -0
  239. package/dist/story-generator/storySync.js.map +1 -0
  240. package/dist/story-generator/storyTracker.js.map +1 -0
  241. package/dist/story-generator/storyValidator.js.map +1 -0
  242. package/dist/story-generator/test_validation.d.ts +2 -0
  243. package/dist/story-generator/test_validation.d.ts.map +1 -0
  244. package/dist/story-generator/test_validation.js +51 -0
  245. package/dist/story-generator/universalDesignSystemAdapter.js.map +1 -0
  246. package/dist/story-generator/urlRedirectService.js.map +1 -0
  247. package/dist/story-generator/validateStory.js.map +1 -0
  248. package/dist/story-ui.config.js.map +1 -0
  249. package/dist/story-ui.config.loader.d.ts +36 -0
  250. package/dist/story-ui.config.loader.d.ts.map +1 -0
  251. package/dist/story-ui.config.loader.js +205 -0
  252. package/dist/story-ui.config.loader.js.map +1 -0
  253. package/dist/temp/package/templates/StoryUI/StoryUIPanel.js +807 -0
  254. package/dist/temp/package/templates/StoryUI/StoryUIPanel.stories.js +37 -0
  255. package/dist/temp/package/templates/StoryUI/index.js +2 -0
  256. package/dist/templates/StoryUI/StoryUIPanel.js.map +1 -0
  257. package/dist/templates/StoryUI/StoryUIPanel.stories.js.map +1 -0
  258. package/dist/templates/StoryUI/index.js.map +1 -0
  259. package/dist/templates/StoryUI/manager.d.ts +14 -0
  260. package/dist/templates/StoryUI/manager.d.ts.map +1 -0
  261. package/dist/templates/production-app/src/App.d.ts +10 -0
  262. package/dist/templates/production-app/src/App.d.ts.map +1 -0
  263. package/dist/templates/production-app/src/App.js +653 -0
  264. package/dist/templates/production-app/src/LivePreviewRenderer.d.ts +24 -0
  265. package/dist/templates/production-app/src/LivePreviewRenderer.d.ts.map +1 -0
  266. package/dist/templates/production-app/src/LivePreviewRenderer.js +199 -0
  267. package/dist/templates/production-app/src/componentRegistry.d.ts +20 -0
  268. package/dist/templates/production-app/src/componentRegistry.d.ts.map +1 -0
  269. package/dist/templates/production-app/src/componentRegistry.js +316 -0
  270. package/dist/templates/production-app/src/main.d.ts +9 -0
  271. package/dist/templates/production-app/src/main.d.ts.map +1 -0
  272. package/dist/templates/production-app/src/main.js +18 -0
  273. package/dist/templates/production-app/vite.config.d.ts +3 -0
  274. package/dist/templates/production-app/vite.config.d.ts.map +1 -0
  275. package/dist/templates/production-app/vite.config.js +71 -0
  276. package/dist/test-storybooks/angular-material-storybook/src/main.js +66 -0
  277. package/dist/test-storybooks/chakra-storybook/vite.config.js +6 -0
  278. package/dist/test-storybooks/mantine-storybook/vite.config.js +93 -0
  279. package/dist/test-storybooks/web-components-shoelace/vite.config.js +9 -0
  280. package/dist/tsconfig.tsbuildinfo +1 -0
  281. package/package.json +1 -1
@@ -0,0 +1,809 @@
1
+ /**
2
+ * Property definitions for intelligent field type detection
3
+ * Maps component types and property names to appropriate editors
4
+ */
5
+ // Design system tokens for spacing and sizing
6
+ export const SPACING_TOKENS = [0, 2, 4, 8, 12, 16, 20, 24, 32, 40, 48, 64];
7
+ export const SIZE_TOKENS = ['small', 'medium', 'large'];
8
+ export const BUTTON_TYPES = ['default', 'primary', 'dashed', 'text', 'link'];
9
+ export const STATUS_TYPES = ['success', 'warning', 'error', 'info'];
10
+ export const INPUT_SIZES = ['small', 'middle', 'large'];
11
+ // Common prop options
12
+ export const COMMON_OPTIONS = {
13
+ size: SIZE_TOKENS.map(size => ({ label: size.charAt(0).toUpperCase() + size.slice(1), value: size })),
14
+ inputSize: INPUT_SIZES.map(size => ({ label: size.charAt(0).toUpperCase() + size.slice(1), value: size })),
15
+ buttonType: BUTTON_TYPES.map(type => ({ label: type.charAt(0).toUpperCase() + type.slice(1), value: type })),
16
+ status: STATUS_TYPES.map(status => ({ label: status.charAt(0).toUpperCase() + status.slice(1), value: status })),
17
+ spacingTokens: SPACING_TOKENS.map(token => ({ label: `${token}px`, value: token })),
18
+ booleanOptions: [
19
+ { label: 'True', value: true },
20
+ { label: 'False', value: false }
21
+ ]
22
+ };
23
+ // Boolean properties that should use Switch components
24
+ export const BOOLEAN_PROPERTIES = new Set([
25
+ 'disabled',
26
+ 'loading',
27
+ 'ghost',
28
+ 'block',
29
+ 'danger',
30
+ 'allowClear',
31
+ 'autoFocus',
32
+ 'bordered',
33
+ 'hoverable',
34
+ 'checked',
35
+ 'defaultChecked',
36
+ 'indeterminate',
37
+ 'autosize',
38
+ 'showCount',
39
+ 'showSearch',
40
+ 'multiple',
41
+ 'clearable',
42
+ 'searchable',
43
+ 'virtual',
44
+ 'showArrow',
45
+ 'open',
46
+ 'visible',
47
+ 'closable',
48
+ 'destroyOnClose',
49
+ 'forceRender',
50
+ 'mask',
51
+ 'maskClosable',
52
+ 'keyboard',
53
+ 'autoDestroy',
54
+ 'preserveDrawerHeight',
55
+ 'push',
56
+ 'placement',
57
+ 'getContainer',
58
+ 'afterVisibleChange',
59
+ 'onClose'
60
+ ]);
61
+ // Select/Enum properties with their options
62
+ export const SELECT_PROPERTIES = {
63
+ type: COMMON_OPTIONS.buttonType,
64
+ size: COMMON_OPTIONS.size,
65
+ htmlType: [
66
+ { label: 'Button', value: 'button' },
67
+ { label: 'Submit', value: 'submit' },
68
+ { label: 'Reset', value: 'reset' }
69
+ ],
70
+ shape: [
71
+ { label: 'Default', value: 'default' },
72
+ { label: 'Circle', value: 'circle' },
73
+ { label: 'Round', value: 'round' }
74
+ ],
75
+ status: COMMON_OPTIONS.status,
76
+ variant: [
77
+ { label: 'Outlined', value: 'outlined' },
78
+ { label: 'Borderless', value: 'borderless' },
79
+ { label: 'Filled', value: 'filled' }
80
+ ],
81
+ mode: [
82
+ { label: 'Default', value: undefined },
83
+ { label: 'Multiple', value: 'multiple' },
84
+ { label: 'Tags', value: 'tags' }
85
+ ],
86
+ placement: [
87
+ { label: 'Top', value: 'top' },
88
+ { label: 'Bottom', value: 'bottom' },
89
+ { label: 'Left', value: 'left' },
90
+ { label: 'Right', value: 'right' }
91
+ ],
92
+ align: [
93
+ { label: 'Start', value: 'start' },
94
+ { label: 'Center', value: 'center' },
95
+ { label: 'End', value: 'end' }
96
+ ],
97
+ justify: [
98
+ { label: 'Start', value: 'start' },
99
+ { label: 'Center', value: 'center' },
100
+ { label: 'End', value: 'end' },
101
+ { label: 'Space Between', value: 'space-between' },
102
+ { label: 'Space Around', value: 'space-around' },
103
+ { label: 'Space Evenly', value: 'space-evenly' }
104
+ ],
105
+ direction: [
106
+ { label: 'Horizontal', value: 'horizontal' },
107
+ { label: 'Vertical', value: 'vertical' }
108
+ ],
109
+ wrap: [
110
+ { label: 'Wrap', value: true },
111
+ { label: 'No Wrap', value: false }
112
+ ]
113
+ };
114
+ // Number properties with constraints
115
+ export const NUMBER_PROPERTIES = {
116
+ span: { min: 0, max: 24, step: 1 },
117
+ offset: { min: 0, max: 24, step: 1 },
118
+ order: { min: -1, max: 10, step: 1 },
119
+ flex: { min: 0, max: 10, step: 0.1 },
120
+ gutter: { min: 0, max: 64, step: 4, unit: 'px' },
121
+ tabIndex: { min: -1, max: 1000, step: 1 },
122
+ rows: { min: 1, max: 20, step: 1 },
123
+ maxLength: { min: 0, max: 10000, step: 1 },
124
+ precision: { min: 0, max: 10, step: 1 },
125
+ step: { min: 0.01, max: 1000, step: 0.01 },
126
+ min: { min: -Infinity, max: Infinity, step: 1 },
127
+ max: { min: -Infinity, max: Infinity, step: 1 },
128
+ defaultValue: { min: -Infinity, max: Infinity, step: 1 },
129
+ value: { min: -Infinity, max: Infinity, step: 1 }
130
+ };
131
+ // Color properties
132
+ export const COLOR_PROPERTIES = new Set([
133
+ 'color',
134
+ 'backgroundColor',
135
+ 'borderColor',
136
+ 'textColor',
137
+ 'primaryColor',
138
+ 'secondaryColor',
139
+ 'successColor',
140
+ 'warningColor',
141
+ 'errorColor',
142
+ 'infoColor'
143
+ ]);
144
+ // Spacing properties that should use design tokens
145
+ export const SPACING_PROPERTIES = new Set([
146
+ 'margin',
147
+ 'padding',
148
+ 'marginTop',
149
+ 'marginRight',
150
+ 'marginBottom',
151
+ 'marginLeft',
152
+ 'paddingTop',
153
+ 'paddingRight',
154
+ 'paddingBottom',
155
+ 'paddingLeft',
156
+ 'gap',
157
+ 'rowGap',
158
+ 'columnGap'
159
+ ]);
160
+ // Component-specific property definitions
161
+ export const COMPONENT_PROPERTIES = {
162
+ Button: {
163
+ type: {
164
+ name: 'type',
165
+ type: 'select',
166
+ label: 'Type',
167
+ description: 'Button type',
168
+ options: SELECT_PROPERTIES.type,
169
+ defaultValue: 'default'
170
+ },
171
+ size: {
172
+ name: 'size',
173
+ type: 'select',
174
+ label: 'Size',
175
+ description: 'Button size',
176
+ options: SELECT_PROPERTIES.size,
177
+ defaultValue: 'middle'
178
+ },
179
+ shape: {
180
+ name: 'shape',
181
+ type: 'select',
182
+ label: 'Shape',
183
+ description: 'Button shape',
184
+ options: SELECT_PROPERTIES.shape,
185
+ defaultValue: 'default'
186
+ },
187
+ htmlType: {
188
+ name: 'htmlType',
189
+ type: 'select',
190
+ label: 'HTML Type',
191
+ description: 'Button HTML type',
192
+ options: SELECT_PROPERTIES.htmlType,
193
+ defaultValue: 'button'
194
+ },
195
+ danger: {
196
+ name: 'danger',
197
+ type: 'boolean',
198
+ label: 'Danger',
199
+ description: 'Set danger status',
200
+ defaultValue: false
201
+ },
202
+ ghost: {
203
+ name: 'ghost',
204
+ type: 'boolean',
205
+ label: 'Ghost',
206
+ description: 'Make background transparent',
207
+ defaultValue: false
208
+ },
209
+ loading: {
210
+ name: 'loading',
211
+ type: 'boolean',
212
+ label: 'Loading',
213
+ description: 'Show loading spinner',
214
+ defaultValue: false
215
+ },
216
+ block: {
217
+ name: 'block',
218
+ type: 'boolean',
219
+ label: 'Block',
220
+ description: 'Make button full width',
221
+ defaultValue: false
222
+ },
223
+ disabled: {
224
+ name: 'disabled',
225
+ type: 'boolean',
226
+ label: 'Disabled',
227
+ description: 'Disable the button',
228
+ defaultValue: false
229
+ }
230
+ },
231
+ Input: {
232
+ size: {
233
+ name: 'size',
234
+ type: 'select',
235
+ label: 'Size',
236
+ description: 'Input size',
237
+ options: COMMON_OPTIONS.inputSize,
238
+ defaultValue: 'middle'
239
+ },
240
+ variant: {
241
+ name: 'variant',
242
+ type: 'select',
243
+ label: 'Variant',
244
+ description: 'Input variant',
245
+ options: SELECT_PROPERTIES.variant,
246
+ defaultValue: 'outlined'
247
+ },
248
+ status: {
249
+ name: 'status',
250
+ type: 'select',
251
+ label: 'Status',
252
+ description: 'Validation status',
253
+ options: SELECT_PROPERTIES.status
254
+ },
255
+ disabled: {
256
+ name: 'disabled',
257
+ type: 'boolean',
258
+ label: 'Disabled',
259
+ description: 'Disable the input',
260
+ defaultValue: false
261
+ },
262
+ allowClear: {
263
+ name: 'allowClear',
264
+ type: 'boolean',
265
+ label: 'Allow Clear',
266
+ description: 'Show clear button',
267
+ defaultValue: false
268
+ },
269
+ autoFocus: {
270
+ name: 'autoFocus',
271
+ type: 'boolean',
272
+ label: 'Auto Focus',
273
+ description: 'Auto focus on mount',
274
+ defaultValue: false
275
+ },
276
+ showCount: {
277
+ name: 'showCount',
278
+ type: 'boolean',
279
+ label: 'Show Count',
280
+ description: 'Show character count',
281
+ defaultValue: false
282
+ },
283
+ maxLength: {
284
+ name: 'maxLength',
285
+ type: 'number',
286
+ label: 'Max Length',
287
+ description: 'Maximum input length',
288
+ validation: {
289
+ min: NUMBER_PROPERTIES.maxLength.min,
290
+ max: NUMBER_PROPERTIES.maxLength.max
291
+ }
292
+ }
293
+ },
294
+ Card: {
295
+ bordered: {
296
+ name: 'bordered',
297
+ type: 'boolean',
298
+ label: 'Bordered',
299
+ description: 'Show card border',
300
+ defaultValue: true
301
+ },
302
+ hoverable: {
303
+ name: 'hoverable',
304
+ type: 'boolean',
305
+ label: 'Hoverable',
306
+ description: 'Lift up when hover card',
307
+ defaultValue: false
308
+ },
309
+ loading: {
310
+ name: 'loading',
311
+ type: 'boolean',
312
+ label: 'Loading',
313
+ description: 'Show loading state',
314
+ defaultValue: false
315
+ },
316
+ size: {
317
+ name: 'size',
318
+ type: 'select',
319
+ label: 'Size',
320
+ description: 'Card size',
321
+ options: SELECT_PROPERTIES.size,
322
+ defaultValue: 'default'
323
+ }
324
+ },
325
+ Select: {
326
+ mode: {
327
+ name: 'mode',
328
+ type: 'select',
329
+ label: 'Mode',
330
+ description: 'Select mode',
331
+ options: SELECT_PROPERTIES.mode
332
+ },
333
+ size: {
334
+ name: 'size',
335
+ type: 'select',
336
+ label: 'Size',
337
+ description: 'Select size',
338
+ options: COMMON_OPTIONS.inputSize,
339
+ defaultValue: 'middle'
340
+ },
341
+ variant: {
342
+ name: 'variant',
343
+ type: 'select',
344
+ label: 'Variant',
345
+ description: 'Select variant',
346
+ options: SELECT_PROPERTIES.variant,
347
+ defaultValue: 'outlined'
348
+ },
349
+ status: {
350
+ name: 'status',
351
+ type: 'select',
352
+ label: 'Status',
353
+ description: 'Validation status',
354
+ options: SELECT_PROPERTIES.status
355
+ },
356
+ disabled: {
357
+ name: 'disabled',
358
+ type: 'boolean',
359
+ label: 'Disabled',
360
+ description: 'Disable the select',
361
+ defaultValue: false
362
+ },
363
+ loading: {
364
+ name: 'loading',
365
+ type: 'boolean',
366
+ label: 'Loading',
367
+ description: 'Show loading spinner',
368
+ defaultValue: false
369
+ },
370
+ allowClear: {
371
+ name: 'allowClear',
372
+ type: 'boolean',
373
+ label: 'Allow Clear',
374
+ description: 'Show clear button',
375
+ defaultValue: false
376
+ },
377
+ showSearch: {
378
+ name: 'showSearch',
379
+ type: 'boolean',
380
+ label: 'Show Search',
381
+ description: 'Enable search functionality',
382
+ defaultValue: false
383
+ },
384
+ virtual: {
385
+ name: 'virtual',
386
+ type: 'boolean',
387
+ label: 'Virtual',
388
+ description: 'Use virtual scrolling',
389
+ defaultValue: true
390
+ },
391
+ showArrow: {
392
+ name: 'showArrow',
393
+ type: 'boolean',
394
+ label: 'Show Arrow',
395
+ description: 'Show dropdown arrow',
396
+ defaultValue: true
397
+ }
398
+ },
399
+ Checkbox: {
400
+ checked: {
401
+ name: 'checked',
402
+ type: 'boolean',
403
+ label: 'Checked',
404
+ description: 'Checked state',
405
+ defaultValue: false
406
+ },
407
+ defaultChecked: {
408
+ name: 'defaultChecked',
409
+ type: 'boolean',
410
+ label: 'Default Checked',
411
+ description: 'Initial checked state',
412
+ defaultValue: false
413
+ },
414
+ disabled: {
415
+ name: 'disabled',
416
+ type: 'boolean',
417
+ label: 'Disabled',
418
+ description: 'Disable the checkbox',
419
+ defaultValue: false
420
+ },
421
+ indeterminate: {
422
+ name: 'indeterminate',
423
+ type: 'boolean',
424
+ label: 'Indeterminate',
425
+ description: 'Indeterminate state',
426
+ defaultValue: false
427
+ }
428
+ },
429
+ Switch: {
430
+ checked: {
431
+ name: 'checked',
432
+ type: 'boolean',
433
+ label: 'Checked',
434
+ description: 'Checked state',
435
+ defaultValue: false
436
+ },
437
+ defaultChecked: {
438
+ name: 'defaultChecked',
439
+ type: 'boolean',
440
+ label: 'Default Checked',
441
+ description: 'Initial checked state',
442
+ defaultValue: false
443
+ },
444
+ disabled: {
445
+ name: 'disabled',
446
+ type: 'boolean',
447
+ label: 'Disabled',
448
+ description: 'Disable the switch',
449
+ defaultValue: false
450
+ },
451
+ loading: {
452
+ name: 'loading',
453
+ type: 'boolean',
454
+ label: 'Loading',
455
+ description: 'Show loading state',
456
+ defaultValue: false
457
+ },
458
+ size: {
459
+ name: 'size',
460
+ type: 'select',
461
+ label: 'Size',
462
+ description: 'Switch size',
463
+ options: [
464
+ { label: 'Default', value: 'default' },
465
+ { label: 'Small', value: 'small' }
466
+ ],
467
+ defaultValue: 'default'
468
+ }
469
+ },
470
+ Space: {
471
+ align: {
472
+ name: 'align',
473
+ type: 'select',
474
+ label: 'Align',
475
+ description: 'Align items',
476
+ options: SELECT_PROPERTIES.align,
477
+ defaultValue: 'center'
478
+ },
479
+ direction: {
480
+ name: 'direction',
481
+ type: 'select',
482
+ label: 'Direction',
483
+ description: 'Space direction',
484
+ options: SELECT_PROPERTIES.direction,
485
+ defaultValue: 'horizontal'
486
+ },
487
+ size: {
488
+ name: 'size',
489
+ type: 'select',
490
+ label: 'Size',
491
+ description: 'Space size',
492
+ options: [
493
+ { label: 'Small', value: 'small' },
494
+ { label: 'Middle', value: 'middle' },
495
+ { label: 'Large', value: 'large' }
496
+ ],
497
+ defaultValue: 'small'
498
+ },
499
+ wrap: {
500
+ name: 'wrap',
501
+ type: 'boolean',
502
+ label: 'Wrap',
503
+ description: 'Auto wrap line',
504
+ defaultValue: false
505
+ }
506
+ },
507
+ Divider: {
508
+ type: {
509
+ name: 'type',
510
+ type: 'select',
511
+ label: 'Type',
512
+ description: 'Divider type',
513
+ options: [
514
+ { label: 'Horizontal', value: 'horizontal' },
515
+ { label: 'Vertical', value: 'vertical' }
516
+ ],
517
+ defaultValue: 'horizontal'
518
+ },
519
+ orientation: {
520
+ name: 'orientation',
521
+ type: 'select',
522
+ label: 'Orientation',
523
+ description: 'Text orientation',
524
+ options: [
525
+ { label: 'Center', value: 'center' },
526
+ { label: 'Left', value: 'left' },
527
+ { label: 'Right', value: 'right' }
528
+ ],
529
+ defaultValue: 'center'
530
+ },
531
+ dashed: {
532
+ name: 'dashed',
533
+ type: 'boolean',
534
+ label: 'Dashed',
535
+ description: 'Use dashed line',
536
+ defaultValue: false
537
+ },
538
+ plain: {
539
+ name: 'plain',
540
+ type: 'boolean',
541
+ label: 'Plain',
542
+ description: 'Plain text style',
543
+ defaultValue: false
544
+ }
545
+ },
546
+ IconButton: {
547
+ size: {
548
+ name: 'size',
549
+ type: 'select',
550
+ label: 'Size',
551
+ description: 'Button size',
552
+ options: [
553
+ { label: 'Small', value: 'small' },
554
+ { label: 'Medium', value: 'medium' },
555
+ { label: 'Large', value: 'large' }
556
+ ],
557
+ defaultValue: 'medium'
558
+ },
559
+ color: {
560
+ name: 'color',
561
+ type: 'select',
562
+ label: 'Color',
563
+ description: 'Button color',
564
+ options: [
565
+ { label: 'Default', value: 'default' },
566
+ { label: 'Primary', value: 'primary' },
567
+ { label: 'Secondary', value: 'secondary' },
568
+ { label: 'Error', value: 'error' },
569
+ { label: 'Info', value: 'info' },
570
+ { label: 'Success', value: 'success' },
571
+ { label: 'Warning', value: 'warning' }
572
+ ],
573
+ defaultValue: 'default'
574
+ },
575
+ disabled: {
576
+ name: 'disabled',
577
+ type: 'boolean',
578
+ label: 'Disabled',
579
+ description: 'Disable the button',
580
+ defaultValue: false
581
+ },
582
+ edge: {
583
+ name: 'edge',
584
+ type: 'select',
585
+ label: 'Edge',
586
+ description: 'Position relative to container edge',
587
+ options: [
588
+ { label: 'None', value: false },
589
+ { label: 'Start', value: 'start' },
590
+ { label: 'End', value: 'end' }
591
+ ],
592
+ defaultValue: false
593
+ }
594
+ },
595
+ TextField: {
596
+ variant: {
597
+ name: 'variant',
598
+ type: 'select',
599
+ label: 'Variant',
600
+ description: 'TextField variant',
601
+ options: [
602
+ { label: 'Outlined', value: 'outlined' },
603
+ { label: 'Filled', value: 'filled' },
604
+ { label: 'Standard', value: 'standard' }
605
+ ],
606
+ defaultValue: 'outlined'
607
+ },
608
+ size: {
609
+ name: 'size',
610
+ type: 'select',
611
+ label: 'Size',
612
+ description: 'TextField size',
613
+ options: [
614
+ { label: 'Small', value: 'small' },
615
+ { label: 'Medium', value: 'medium' }
616
+ ],
617
+ defaultValue: 'medium'
618
+ },
619
+ color: {
620
+ name: 'color',
621
+ type: 'select',
622
+ label: 'Color',
623
+ description: 'TextField color',
624
+ options: [
625
+ { label: 'Primary', value: 'primary' },
626
+ { label: 'Secondary', value: 'secondary' },
627
+ { label: 'Error', value: 'error' },
628
+ { label: 'Info', value: 'info' },
629
+ { label: 'Success', value: 'success' },
630
+ { label: 'Warning', value: 'warning' }
631
+ ],
632
+ defaultValue: 'primary'
633
+ },
634
+ disabled: {
635
+ name: 'disabled',
636
+ type: 'boolean',
637
+ label: 'Disabled',
638
+ description: 'Disable the field',
639
+ defaultValue: false
640
+ },
641
+ required: {
642
+ name: 'required',
643
+ type: 'boolean',
644
+ label: 'Required',
645
+ description: 'Mark field as required',
646
+ defaultValue: false
647
+ },
648
+ fullWidth: {
649
+ name: 'fullWidth',
650
+ type: 'boolean',
651
+ label: 'Full Width',
652
+ description: 'Make field full width',
653
+ defaultValue: false
654
+ },
655
+ multiline: {
656
+ name: 'multiline',
657
+ type: 'boolean',
658
+ label: 'Multiline',
659
+ description: 'Enable multiline input',
660
+ defaultValue: false
661
+ },
662
+ rows: {
663
+ name: 'rows',
664
+ type: 'number',
665
+ label: 'Rows',
666
+ description: 'Number of rows for multiline',
667
+ validation: { min: 1, max: 20 },
668
+ defaultValue: 4
669
+ }
670
+ },
671
+ Chip: {
672
+ variant: {
673
+ name: 'variant',
674
+ type: 'select',
675
+ label: 'Variant',
676
+ description: 'Chip variant',
677
+ options: [
678
+ { label: 'Filled', value: 'filled' },
679
+ { label: 'Outlined', value: 'outlined' }
680
+ ],
681
+ defaultValue: 'filled'
682
+ },
683
+ size: {
684
+ name: 'size',
685
+ type: 'select',
686
+ label: 'Size',
687
+ description: 'Chip size',
688
+ options: [
689
+ { label: 'Small', value: 'small' },
690
+ { label: 'Medium', value: 'medium' }
691
+ ],
692
+ defaultValue: 'medium'
693
+ },
694
+ color: {
695
+ name: 'color',
696
+ type: 'select',
697
+ label: 'Color',
698
+ description: 'Chip color',
699
+ options: [
700
+ { label: 'Default', value: 'default' },
701
+ { label: 'Primary', value: 'primary' },
702
+ { label: 'Secondary', value: 'secondary' },
703
+ { label: 'Error', value: 'error' },
704
+ { label: 'Info', value: 'info' },
705
+ { label: 'Success', value: 'success' },
706
+ { label: 'Warning', value: 'warning' }
707
+ ],
708
+ defaultValue: 'default'
709
+ },
710
+ clickable: {
711
+ name: 'clickable',
712
+ type: 'boolean',
713
+ label: 'Clickable',
714
+ description: 'Make chip clickable',
715
+ defaultValue: false
716
+ },
717
+ disabled: {
718
+ name: 'disabled',
719
+ type: 'boolean',
720
+ label: 'Disabled',
721
+ description: 'Disable the chip',
722
+ defaultValue: false
723
+ }
724
+ }
725
+ };
726
+ /**
727
+ * Get property type based on property name and value
728
+ */
729
+ export function getPropertyType(propName, value, componentType) {
730
+ // Check component-specific definitions first
731
+ if (componentType && COMPONENT_PROPERTIES[componentType]?.[propName]) {
732
+ return COMPONENT_PROPERTIES[componentType][propName].type;
733
+ }
734
+ // Boolean properties
735
+ if (BOOLEAN_PROPERTIES.has(propName) || typeof value === 'boolean') {
736
+ return 'boolean';
737
+ }
738
+ // Select properties
739
+ if (SELECT_PROPERTIES[propName]) {
740
+ return 'select';
741
+ }
742
+ // Number properties
743
+ if (NUMBER_PROPERTIES[propName] || typeof value === 'number') {
744
+ return 'number';
745
+ }
746
+ // Color properties
747
+ if (COLOR_PROPERTIES.has(propName)) {
748
+ return 'color';
749
+ }
750
+ // Spacing properties
751
+ if (SPACING_PROPERTIES.has(propName)) {
752
+ return 'spacing';
753
+ }
754
+ // Special cases
755
+ if (propName === 'size' && typeof value === 'string') {
756
+ return 'select';
757
+ }
758
+ if (propName === 'icon') {
759
+ return 'icon';
760
+ }
761
+ // Default to string
762
+ return 'string';
763
+ }
764
+ /**
765
+ * Get property definition for a specific component and property
766
+ */
767
+ export function getPropertyDefinition(componentType, propName) {
768
+ return COMPONENT_PROPERTIES[componentType]?.[propName] || null;
769
+ }
770
+ /**
771
+ * Get select options for a property
772
+ */
773
+ export function getSelectOptions(propName, componentType) {
774
+ // Check component-specific definitions first
775
+ if (componentType && COMPONENT_PROPERTIES[componentType]) {
776
+ const componentProp = COMPONENT_PROPERTIES[componentType][propName];
777
+ if (componentProp && componentProp.options) {
778
+ return componentProp.options;
779
+ }
780
+ }
781
+ // Fall back to common options
782
+ return SELECT_PROPERTIES[propName] || [];
783
+ }
784
+ /**
785
+ * Get number constraints for a property
786
+ */
787
+ export function getNumberConstraints(propName) {
788
+ return NUMBER_PROPERTIES[propName] || {};
789
+ }
790
+ /**
791
+ * Check if a property should use a specific editor type
792
+ */
793
+ export function shouldUseEditor(propName, editorType) {
794
+ switch (editorType) {
795
+ case 'boolean':
796
+ return BOOLEAN_PROPERTIES.has(propName);
797
+ case 'select':
798
+ return !!SELECT_PROPERTIES[propName];
799
+ case 'number':
800
+ return !!NUMBER_PROPERTIES[propName];
801
+ case 'color':
802
+ return COLOR_PROPERTIES.has(propName);
803
+ case 'spacing':
804
+ return SPACING_PROPERTIES.has(propName);
805
+ default:
806
+ return false;
807
+ }
808
+ }
809
+ //# sourceMappingURL=propertyDefinitions.js.map