@tpitre/story-ui 3.0.0 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (281) hide show
  1. package/README.md +25 -72
  2. package/dist/cli/deploy.d.ts +0 -7
  3. package/dist/cli/deploy.d.ts.map +1 -1
  4. package/dist/cli/deploy.js +10 -421
  5. package/dist/cli/index.js +0 -0
  6. package/dist/mcp-server/index.js +7 -8
  7. package/dist/mcp-server/mcp-stdio-server.js +1 -2
  8. package/dist/mcp-server/routes/generateStory.d.ts.map +1 -1
  9. package/dist/mcp-server/routes/generateStory.js +3 -3
  10. package/dist/mcp-server/routes/generateStoryStream.d.ts.map +1 -1
  11. package/dist/mcp-server/routes/generateStoryStream.js +3 -3
  12. package/dist/mcp-server/routes/hybridStories.d.ts +6 -6
  13. package/dist/mcp-server/routes/hybridStories.d.ts.map +1 -1
  14. package/dist/mcp-server/routes/hybridStories.js +29 -27
  15. package/dist/mcp-server/routes/memoryStories.d.ts +7 -7
  16. package/dist/mcp-server/routes/memoryStories.d.ts.map +1 -1
  17. package/dist/mcp-server/routes/memoryStories.js +37 -26
  18. package/dist/story-generator/postgresStoryService.d.ts +56 -0
  19. package/dist/story-generator/postgresStoryService.d.ts.map +1 -0
  20. package/dist/story-generator/postgresStoryService.js +240 -0
  21. package/dist/story-generator/storyServiceFactory.d.ts +22 -0
  22. package/dist/story-generator/storyServiceFactory.d.ts.map +1 -0
  23. package/dist/story-generator/storyServiceFactory.js +97 -0
  24. package/dist/story-generator/storyServiceInterface.d.ts +85 -0
  25. package/dist/story-generator/storyServiceInterface.d.ts.map +1 -0
  26. package/dist/story-generator/storyServiceInterface.js +5 -0
  27. package/dist/templates/StoryUI/StoryUIPanel.d.ts +5 -0
  28. package/dist/templates/StoryUI/StoryUIPanel.d.ts.map +1 -1
  29. package/dist/templates/StoryUI/StoryUIPanel.js +18 -3
  30. package/package.json +6 -6
  31. package/templates/StoryUI/StoryUIPanel.tsx +28 -3
  32. package/templates/StoryUI/manager.tsx +444 -213
  33. package/dist/cli/index.js.map +0 -1
  34. package/dist/cli/setup.js.map +0 -1
  35. package/dist/cloudflare-edge/src/mcp-session.js +0 -462
  36. package/dist/cloudflare-edge/src/types.js +0 -4
  37. package/dist/cloudflare-edge/src/worker.js +0 -106
  38. package/dist/cloudflare-pages/vite.config.js +0 -14
  39. package/dist/index.d.ts +0 -13
  40. package/dist/index.d.ts.map +0 -1
  41. package/dist/index.js +0 -12
  42. package/dist/index.js.map +0 -1
  43. package/dist/mcp-server/index.js.map +0 -1
  44. package/dist/mcp-server/mcp-stdio-server.js.map +0 -1
  45. package/dist/mcp-server/routes/claude.js.map +0 -1
  46. package/dist/mcp-server/routes/components.js.map +0 -1
  47. package/dist/mcp-server/routes/generateStory.js.map +0 -1
  48. package/dist/mcp-server/routes/hybridStories.js.map +0 -1
  49. package/dist/mcp-server/routes/memoryStories.js.map +0 -1
  50. package/dist/mcp-server/routes/storySync.js.map +0 -1
  51. package/dist/mcp-server/routes/updateStory.js +0 -246
  52. package/dist/mcp-server/sessionManager.js.map +0 -1
  53. package/dist/playground/components/AIAssistant/AIAssistant.d.ts +0 -6
  54. package/dist/playground/components/AIAssistant/AIAssistant.d.ts.map +0 -1
  55. package/dist/playground/components/AIAssistant/AIAssistant.js +0 -109
  56. package/dist/playground/components/AIAssistant/AIAssistant.js.map +0 -1
  57. package/dist/playground/components/AIAssistant/AIAssistant.module.css +0 -166
  58. package/dist/playground/components/Canvas/Canvas.d.ts +0 -9
  59. package/dist/playground/components/Canvas/Canvas.d.ts.map +0 -1
  60. package/dist/playground/components/Canvas/Canvas.js +0 -58
  61. package/dist/playground/components/Canvas/Canvas.js.map +0 -1
  62. package/dist/playground/components/Canvas/Canvas.module.css +0 -189
  63. package/dist/playground/components/Canvas/CanvasWithDnd.d.ts +0 -9
  64. package/dist/playground/components/Canvas/CanvasWithDnd.d.ts.map +0 -1
  65. package/dist/playground/components/Canvas/CanvasWithDnd.js +0 -158
  66. package/dist/playground/components/Canvas/CanvasWithDnd.js.map +0 -1
  67. package/dist/playground/components/Canvas/ComponentRenderer.d.ts +0 -15
  68. package/dist/playground/components/Canvas/ComponentRenderer.d.ts.map +0 -1
  69. package/dist/playground/components/Canvas/ComponentRenderer.js +0 -177
  70. package/dist/playground/components/Canvas/ComponentRenderer.js.map +0 -1
  71. package/dist/playground/components/Canvas/DraggableComponent.d.ts +0 -15
  72. package/dist/playground/components/Canvas/DraggableComponent.d.ts.map +0 -1
  73. package/dist/playground/components/Canvas/DraggableComponent.js +0 -49
  74. package/dist/playground/components/Canvas/DraggableComponent.js.map +0 -1
  75. package/dist/playground/components/Canvas/index.d.ts +0 -9
  76. package/dist/playground/components/Canvas/index.d.ts.map +0 -1
  77. package/dist/playground/components/Canvas/index.js +0 -5
  78. package/dist/playground/components/Canvas/index.js.map +0 -1
  79. package/dist/playground/components/CodeView/CodeView.d.ts +0 -12
  80. package/dist/playground/components/CodeView/CodeView.d.ts.map +0 -1
  81. package/dist/playground/components/CodeView/CodeView.js +0 -77
  82. package/dist/playground/components/CodeView/CodeView.js.map +0 -1
  83. package/dist/playground/components/CodeView/CodeView.module.css +0 -178
  84. package/dist/playground/components/ComponentPalette/ComponentPalette.d.ts +0 -17
  85. package/dist/playground/components/ComponentPalette/ComponentPalette.d.ts.map +0 -1
  86. package/dist/playground/components/ComponentPalette/ComponentPalette.js +0 -138
  87. package/dist/playground/components/ComponentPalette/ComponentPalette.js.map +0 -1
  88. package/dist/playground/components/ComponentPalette/ComponentPalette.module.css +0 -217
  89. package/dist/playground/components/ComponentPalette/index.d.ts +0 -3
  90. package/dist/playground/components/ComponentPalette/index.d.ts.map +0 -1
  91. package/dist/playground/components/ComponentPalette/index.js +0 -2
  92. package/dist/playground/components/ComponentPalette/index.js.map +0 -1
  93. package/dist/playground/components/DropZone/DropZone.d.ts +0 -17
  94. package/dist/playground/components/DropZone/DropZone.d.ts.map +0 -1
  95. package/dist/playground/components/DropZone/DropZone.js +0 -73
  96. package/dist/playground/components/DropZone/DropZone.js.map +0 -1
  97. package/dist/playground/components/DropZone/DropZone.module.css +0 -86
  98. package/dist/playground/components/ExportDialog/ExportDialog.d.ts +0 -10
  99. package/dist/playground/components/ExportDialog/ExportDialog.d.ts.map +0 -1
  100. package/dist/playground/components/ExportDialog/ExportDialog.js +0 -57
  101. package/dist/playground/components/ExportDialog/ExportDialog.js.map +0 -1
  102. package/dist/playground/components/ExportDialog/ExportDialog.module.css +0 -328
  103. package/dist/playground/components/LayoutHelpers/LayoutHelpers.d.ts +0 -134
  104. package/dist/playground/components/LayoutHelpers/LayoutHelpers.d.ts.map +0 -1
  105. package/dist/playground/components/LayoutHelpers/LayoutHelpers.js +0 -254
  106. package/dist/playground/components/LayoutHelpers/LayoutHelpers.js.map +0 -1
  107. package/dist/playground/components/LayoutHelpers/index.d.ts +0 -3
  108. package/dist/playground/components/LayoutHelpers/index.d.ts.map +0 -1
  109. package/dist/playground/components/LayoutHelpers/index.js +0 -2
  110. package/dist/playground/components/LayoutHelpers/index.js.map +0 -1
  111. package/dist/playground/components/Playground/Playground.d.ts +0 -10
  112. package/dist/playground/components/Playground/Playground.d.ts.map +0 -1
  113. package/dist/playground/components/Playground/Playground.js +0 -128
  114. package/dist/playground/components/Playground/Playground.js.map +0 -1
  115. package/dist/playground/components/Playground/Playground.module.css +0 -308
  116. package/dist/playground/components/PropertiesPanel/PropertiesPanel.d.ts +0 -10
  117. package/dist/playground/components/PropertiesPanel/PropertiesPanel.d.ts.map +0 -1
  118. package/dist/playground/components/PropertiesPanel/PropertiesPanel.js +0 -150
  119. package/dist/playground/components/PropertiesPanel/PropertiesPanel.js.map +0 -1
  120. package/dist/playground/components/PropertiesPanel/PropertiesPanel.module.css +0 -155
  121. package/dist/playground/components/PropertiesPanel/index.d.ts +0 -3
  122. package/dist/playground/components/PropertiesPanel/index.d.ts.map +0 -1
  123. package/dist/playground/components/PropertiesPanel/index.js +0 -2
  124. package/dist/playground/components/PropertiesPanel/index.js.map +0 -1
  125. package/dist/playground/components/PropertyEditors/BooleanEditor.d.ts +0 -12
  126. package/dist/playground/components/PropertyEditors/BooleanEditor.d.ts.map +0 -1
  127. package/dist/playground/components/PropertyEditors/BooleanEditor.js +0 -14
  128. package/dist/playground/components/PropertyEditors/BooleanEditor.js.map +0 -1
  129. package/dist/playground/components/PropertyEditors/ColorEditor.d.ts +0 -12
  130. package/dist/playground/components/PropertyEditors/ColorEditor.d.ts.map +0 -1
  131. package/dist/playground/components/PropertyEditors/ColorEditor.js +0 -62
  132. package/dist/playground/components/PropertyEditors/ColorEditor.js.map +0 -1
  133. package/dist/playground/components/PropertyEditors/IconEditor.d.ts +0 -12
  134. package/dist/playground/components/PropertyEditors/IconEditor.d.ts.map +0 -1
  135. package/dist/playground/components/PropertyEditors/IconEditor.js +0 -123
  136. package/dist/playground/components/PropertyEditors/IconEditor.js.map +0 -1
  137. package/dist/playground/components/PropertyEditors/NumberEditor.d.ts +0 -15
  138. package/dist/playground/components/PropertyEditors/NumberEditor.d.ts.map +0 -1
  139. package/dist/playground/components/PropertyEditors/NumberEditor.js +0 -46
  140. package/dist/playground/components/PropertyEditors/NumberEditor.js.map +0 -1
  141. package/dist/playground/components/PropertyEditors/PropertyEditors.module.css +0 -432
  142. package/dist/playground/components/PropertyEditors/SelectEditor.d.ts +0 -19
  143. package/dist/playground/components/PropertyEditors/SelectEditor.d.ts.map +0 -1
  144. package/dist/playground/components/PropertyEditors/SelectEditor.js +0 -17
  145. package/dist/playground/components/PropertyEditors/SelectEditor.js.map +0 -1
  146. package/dist/playground/components/PropertyEditors/SpacingEditor.d.ts +0 -19
  147. package/dist/playground/components/PropertyEditors/SpacingEditor.d.ts.map +0 -1
  148. package/dist/playground/components/PropertyEditors/SpacingEditor.js +0 -162
  149. package/dist/playground/components/PropertyEditors/SpacingEditor.js.map +0 -1
  150. package/dist/playground/components/PropertyEditors/SpacingEditor.module.css +0 -214
  151. package/dist/playground/components/PropertyEditors/TextEditor.d.ts +0 -14
  152. package/dist/playground/components/PropertyEditors/TextEditor.d.ts.map +0 -1
  153. package/dist/playground/components/PropertyEditors/TextEditor.js +0 -38
  154. package/dist/playground/components/PropertyEditors/TextEditor.js.map +0 -1
  155. package/dist/playground/components/PropertyEditors/TokenEditor.d.ts +0 -23
  156. package/dist/playground/components/PropertyEditors/TokenEditor.d.ts.map +0 -1
  157. package/dist/playground/components/PropertyEditors/TokenEditor.js +0 -50
  158. package/dist/playground/components/PropertyEditors/TokenEditor.js.map +0 -1
  159. package/dist/playground/components/PropertyEditors/index.d.ts +0 -20
  160. package/dist/playground/components/PropertyEditors/index.d.ts.map +0 -1
  161. package/dist/playground/components/PropertyEditors/index.js +0 -12
  162. package/dist/playground/components/PropertyEditors/index.js.map +0 -1
  163. package/dist/playground/components/TreeView/TreeView.d.ts +0 -10
  164. package/dist/playground/components/TreeView/TreeView.d.ts.map +0 -1
  165. package/dist/playground/components/TreeView/TreeView.js +0 -146
  166. package/dist/playground/components/TreeView/TreeView.js.map +0 -1
  167. package/dist/playground/components/TreeView/TreeView.module.css +0 -214
  168. package/dist/playground/components/TreeView/index.d.ts +0 -3
  169. package/dist/playground/components/TreeView/index.d.ts.map +0 -1
  170. package/dist/playground/components/TreeView/index.js +0 -2
  171. package/dist/playground/components/TreeView/index.js.map +0 -1
  172. package/dist/playground/config/propertyDefinitions.d.ts +0 -73
  173. package/dist/playground/config/propertyDefinitions.d.ts.map +0 -1
  174. package/dist/playground/config/propertyDefinitions.js +0 -809
  175. package/dist/playground/config/propertyDefinitions.js.map +0 -1
  176. package/dist/playground/hooks/useKeyboardShortcuts.d.ts +0 -38
  177. package/dist/playground/hooks/useKeyboardShortcuts.d.ts.map +0 -1
  178. package/dist/playground/hooks/useKeyboardShortcuts.js +0 -191
  179. package/dist/playground/hooks/useKeyboardShortcuts.js.map +0 -1
  180. package/dist/playground/index.d.ts +0 -21
  181. package/dist/playground/index.d.ts.map +0 -1
  182. package/dist/playground/index.js +0 -23
  183. package/dist/playground/index.js.map +0 -1
  184. package/dist/playground/services/CodeGenerator.d.ts +0 -73
  185. package/dist/playground/services/CodeGenerator.d.ts.map +0 -1
  186. package/dist/playground/services/CodeGenerator.js +0 -359
  187. package/dist/playground/services/CodeGenerator.js.map +0 -1
  188. package/dist/playground/services/DragDropManager.d.ts +0 -95
  189. package/dist/playground/services/DragDropManager.d.ts.map +0 -1
  190. package/dist/playground/services/DragDropManager.js +0 -408
  191. package/dist/playground/services/DragDropManager.js.map +0 -1
  192. package/dist/playground/services/StoryParser.d.ts +0 -73
  193. package/dist/playground/services/StoryParser.d.ts.map +0 -1
  194. package/dist/playground/services/StoryParser.js +0 -419
  195. package/dist/playground/services/StoryParser.js.map +0 -1
  196. package/dist/playground/store/playgroundStore.d.ts +0 -86
  197. package/dist/playground/store/playgroundStore.d.ts.map +0 -1
  198. package/dist/playground/store/playgroundStore.js +0 -337
  199. package/dist/playground/store/playgroundStore.js.map +0 -1
  200. package/dist/playground/stories/PlaygroundDragDrop.stories.d.ts +0 -13
  201. package/dist/playground/stories/PlaygroundDragDrop.stories.d.ts.map +0 -1
  202. package/dist/playground/stories/PlaygroundDragDrop.stories.js +0 -227
  203. package/dist/playground/stories/PlaygroundDragDrop.stories.js.map +0 -1
  204. package/dist/playground/stories/PlaygroundPhase4.stories.d.ts +0 -13
  205. package/dist/playground/stories/PlaygroundPhase4.stories.d.ts.map +0 -1
  206. package/dist/playground/stories/PlaygroundPhase4.stories.js +0 -334
  207. package/dist/playground/stories/PlaygroundPhase4.stories.js.map +0 -1
  208. package/dist/playground/stories/PlaygroundPhase5.stories.d.ts +0 -14
  209. package/dist/playground/stories/PlaygroundPhase5.stories.d.ts.map +0 -1
  210. package/dist/playground/stories/PlaygroundPhase5.stories.js +0 -512
  211. package/dist/playground/stories/PlaygroundPhase5.stories.js.map +0 -1
  212. package/dist/playground/stories/PlaygroundProperties.stories.d.ts +0 -13
  213. package/dist/playground/stories/PlaygroundProperties.stories.d.ts.map +0 -1
  214. package/dist/playground/stories/PlaygroundProperties.stories.js +0 -342
  215. package/dist/playground/stories/PlaygroundProperties.stories.js.map +0 -1
  216. package/dist/playground/types/index.d.ts +0 -251
  217. package/dist/playground/types/index.d.ts.map +0 -1
  218. package/dist/playground/types/index.js +0 -5
  219. package/dist/playground/types/index.js.map +0 -1
  220. package/dist/scripts/verify-framework-adapters.js +0 -105
  221. package/dist/story-generator/componentBlacklist.js.map +0 -1
  222. package/dist/story-generator/componentDiscovery.js.map +0 -1
  223. package/dist/story-generator/configLoader.js.map +0 -1
  224. package/dist/story-generator/considerationsLoader.js.map +0 -1
  225. package/dist/story-generator/documentation-sources.js.map +0 -1
  226. package/dist/story-generator/documentationLoader.js.map +0 -1
  227. package/dist/story-generator/dynamicPackageDiscovery.js.map +0 -1
  228. package/dist/story-generator/enhancedComponentDiscovery.js.map +0 -1
  229. package/dist/story-generator/generateStory.js.map +0 -1
  230. package/dist/story-generator/gitignoreManager.js.map +0 -1
  231. package/dist/story-generator/inMemoryStoryService.js.map +0 -1
  232. package/dist/story-generator/logger.js.map +0 -1
  233. package/dist/story-generator/postProcessStory.js.map +0 -1
  234. package/dist/story-generator/productionGitignoreManager.js.map +0 -1
  235. package/dist/story-generator/promptGenerator.js.map +0 -1
  236. package/dist/story-generator/providerPresets.d.ts +0 -54
  237. package/dist/story-generator/providerPresets.d.ts.map +0 -1
  238. package/dist/story-generator/providerPresets.js +0 -214
  239. package/dist/story-generator/storyHistory.js.map +0 -1
  240. package/dist/story-generator/storySync.js.map +0 -1
  241. package/dist/story-generator/storyTracker.js.map +0 -1
  242. package/dist/story-generator/storyValidator.js.map +0 -1
  243. package/dist/story-generator/test_validation.d.ts +0 -2
  244. package/dist/story-generator/test_validation.d.ts.map +0 -1
  245. package/dist/story-generator/test_validation.js +0 -51
  246. package/dist/story-generator/universalDesignSystemAdapter.js.map +0 -1
  247. package/dist/story-generator/urlRedirectService.js.map +0 -1
  248. package/dist/story-generator/validateStory.js.map +0 -1
  249. package/dist/story-ui.config.js.map +0 -1
  250. package/dist/story-ui.config.loader.d.ts +0 -36
  251. package/dist/story-ui.config.loader.d.ts.map +0 -1
  252. package/dist/story-ui.config.loader.js +0 -205
  253. package/dist/story-ui.config.loader.js.map +0 -1
  254. package/dist/temp/package/templates/StoryUI/StoryUIPanel.js +0 -807
  255. package/dist/temp/package/templates/StoryUI/StoryUIPanel.stories.js +0 -37
  256. package/dist/temp/package/templates/StoryUI/index.js +0 -2
  257. package/dist/templates/StoryUI/StoryUIPanel.js.map +0 -1
  258. package/dist/templates/StoryUI/StoryUIPanel.stories.js.map +0 -1
  259. package/dist/templates/StoryUI/index.js.map +0 -1
  260. package/dist/templates/StoryUI/manager.d.ts +0 -14
  261. package/dist/templates/StoryUI/manager.d.ts.map +0 -1
  262. package/dist/templates/production-app/src/App.d.ts +0 -10
  263. package/dist/templates/production-app/src/App.d.ts.map +0 -1
  264. package/dist/templates/production-app/src/App.js +0 -653
  265. package/dist/templates/production-app/src/LivePreviewRenderer.d.ts +0 -24
  266. package/dist/templates/production-app/src/LivePreviewRenderer.d.ts.map +0 -1
  267. package/dist/templates/production-app/src/LivePreviewRenderer.js +0 -199
  268. package/dist/templates/production-app/src/componentRegistry.d.ts +0 -20
  269. package/dist/templates/production-app/src/componentRegistry.d.ts.map +0 -1
  270. package/dist/templates/production-app/src/componentRegistry.js +0 -316
  271. package/dist/templates/production-app/src/main.d.ts +0 -9
  272. package/dist/templates/production-app/src/main.d.ts.map +0 -1
  273. package/dist/templates/production-app/src/main.js +0 -18
  274. package/dist/templates/production-app/vite.config.d.ts +0 -3
  275. package/dist/templates/production-app/vite.config.d.ts.map +0 -1
  276. package/dist/templates/production-app/vite.config.js +0 -71
  277. package/dist/test-storybooks/angular-material-storybook/src/main.js +0 -66
  278. package/dist/test-storybooks/chakra-storybook/vite.config.js +0 -6
  279. package/dist/test-storybooks/mantine-storybook/vite.config.js +0 -93
  280. package/dist/test-storybooks/web-components-shoelace/vite.config.js +0 -9
  281. package/dist/tsconfig.tsbuildinfo +0 -1
@@ -1,809 +0,0 @@
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