@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,342 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ /**
3
+ * Storybook stories for testing Properties Panel functionality
4
+ */
5
+ import React from 'react';
6
+ import { Playground } from '../components/Playground/Playground';
7
+ import { usePlaygroundStore } from '../store/playgroundStore';
8
+ const meta = {
9
+ title: 'StoryUI/Playground/Properties',
10
+ component: Playground,
11
+ parameters: {
12
+ layout: 'fullscreen',
13
+ },
14
+ };
15
+ export default meta;
16
+ // Helper to initialize with components for testing properties
17
+ const initializeWithPropertiesTest = () => {
18
+ const store = usePlaygroundStore.getState();
19
+ // Clear existing
20
+ store.components.clear();
21
+ // Root container
22
+ store.addComponent({
23
+ id: 'root',
24
+ type: 'Container',
25
+ displayName: 'Root Container',
26
+ props: {
27
+ style: {
28
+ padding: '32px',
29
+ minHeight: '100vh',
30
+ background: 'linear-gradient(135deg, #667eea 0%, #764ba2 100%)'
31
+ }
32
+ },
33
+ children: []
34
+ });
35
+ // Card with various styles
36
+ store.addComponent({
37
+ id: 'card1',
38
+ type: 'Card',
39
+ displayName: 'Styled Card',
40
+ parentId: 'root',
41
+ props: {
42
+ style: {
43
+ padding: '24px',
44
+ margin: '16px',
45
+ background: 'white',
46
+ borderRadius: '12px',
47
+ boxShadow: '0 10px 40px rgba(0, 0, 0, 0.15)',
48
+ maxWidth: '600px'
49
+ }
50
+ },
51
+ children: []
52
+ });
53
+ // Heading
54
+ store.addComponent({
55
+ id: 'heading1',
56
+ type: 'Heading',
57
+ displayName: 'Title',
58
+ parentId: 'card1',
59
+ textContent: 'Properties Panel Demo',
60
+ props: {
61
+ style: {
62
+ fontSize: '28px',
63
+ fontWeight: 'bold',
64
+ color: '#1a202c',
65
+ marginBottom: '16px'
66
+ }
67
+ }
68
+ });
69
+ // Text with spacing
70
+ store.addComponent({
71
+ id: 'text1',
72
+ type: 'Text',
73
+ displayName: 'Description',
74
+ parentId: 'card1',
75
+ textContent: 'Click on any component to edit its properties. Try adjusting spacing, colors, typography, and layout properties.',
76
+ props: {
77
+ style: {
78
+ fontSize: '16px',
79
+ lineHeight: '1.6',
80
+ color: '#4a5568',
81
+ marginBottom: '24px'
82
+ }
83
+ }
84
+ });
85
+ // Flex container
86
+ store.addComponent({
87
+ id: 'flex1',
88
+ type: 'HStack',
89
+ displayName: 'Button Group',
90
+ parentId: 'card1',
91
+ props: {
92
+ style: {
93
+ display: 'flex',
94
+ gap: '12px',
95
+ justifyContent: 'center',
96
+ flexWrap: 'wrap'
97
+ }
98
+ },
99
+ children: []
100
+ });
101
+ // Buttons with different styles
102
+ store.addComponent({
103
+ id: 'button1',
104
+ type: 'Button',
105
+ displayName: 'Primary Button',
106
+ parentId: 'flex1',
107
+ textContent: 'Primary',
108
+ props: {
109
+ style: {
110
+ padding: '12px 24px',
111
+ background: '#667eea',
112
+ color: 'white',
113
+ border: 'none',
114
+ borderRadius: '8px',
115
+ fontSize: '14px',
116
+ fontWeight: '500',
117
+ cursor: 'pointer',
118
+ transition: 'all 0.3s'
119
+ }
120
+ }
121
+ });
122
+ store.addComponent({
123
+ id: 'button2',
124
+ type: 'Button',
125
+ displayName: 'Secondary Button',
126
+ parentId: 'flex1',
127
+ textContent: 'Secondary',
128
+ props: {
129
+ style: {
130
+ padding: '12px 24px',
131
+ background: 'transparent',
132
+ color: '#667eea',
133
+ border: '2px solid #667eea',
134
+ borderRadius: '8px',
135
+ fontSize: '14px',
136
+ fontWeight: '500',
137
+ cursor: 'pointer'
138
+ }
139
+ }
140
+ });
141
+ // Build tree structure
142
+ const root = store.components.get('root');
143
+ const card = store.components.get('card1');
144
+ const heading = store.components.get('heading1');
145
+ const text = store.components.get('text1');
146
+ const flex = store.components.get('flex1');
147
+ const button1 = store.components.get('button1');
148
+ const button2 = store.components.get('button2');
149
+ if (root && card && heading && text && flex && button1 && button2) {
150
+ flex.children = ['button1', 'button2'];
151
+ card.children = ['heading1', 'text1', 'flex1'];
152
+ root.children = ['card1'];
153
+ store.components.set('flex1', flex);
154
+ store.components.set('card1', card);
155
+ store.components.set('root', root);
156
+ }
157
+ // Set mode and open properties
158
+ store.setMode('edit');
159
+ store.setSidebarTab('components');
160
+ store.togglePropertiesPanel(); // Open the panel
161
+ // Select the card to show properties
162
+ store.selectComponent('card1');
163
+ };
164
+ export const SpacingEditor = {
165
+ render: () => {
166
+ React.useEffect(() => {
167
+ initializeWithPropertiesTest();
168
+ }, []);
169
+ return _jsx(Playground, { initialMode: "edit" });
170
+ },
171
+ name: 'Spacing Editor (Priority Feature)',
172
+ parameters: {
173
+ docs: {
174
+ description: {
175
+ story: 'Test the spacing editor - the top priority feature. Select components and adjust margin/padding with visual feedback and linked/unlinked modes.'
176
+ }
177
+ }
178
+ }
179
+ };
180
+ export const AllPropertyTypes = {
181
+ render: () => {
182
+ React.useEffect(() => {
183
+ initializeWithPropertiesTest();
184
+ }, []);
185
+ return _jsx(Playground, { initialMode: "edit" });
186
+ },
187
+ name: 'All Property Types',
188
+ parameters: {
189
+ docs: {
190
+ description: {
191
+ story: 'Test all property editor types: text, number, color, select, boolean, and spacing. Click different components to see various property types.'
192
+ }
193
+ }
194
+ }
195
+ };
196
+ export const RealTimeUpdates = {
197
+ render: () => {
198
+ React.useEffect(() => {
199
+ const store = usePlaygroundStore.getState();
200
+ // Simple setup for real-time testing
201
+ store.components.clear();
202
+ store.addComponent({
203
+ id: 'root',
204
+ type: 'Container',
205
+ displayName: 'Root',
206
+ props: { style: { padding: '40px', minHeight: '100vh', background: '#f7fafc' } },
207
+ children: []
208
+ });
209
+ store.addComponent({
210
+ id: 'box1',
211
+ type: 'Box',
212
+ displayName: 'Live Update Box',
213
+ parentId: 'root',
214
+ props: {
215
+ style: {
216
+ width: '300px',
217
+ height: '200px',
218
+ padding: '20px',
219
+ margin: '20px auto',
220
+ background: '#4299e1',
221
+ borderRadius: '8px',
222
+ display: 'flex',
223
+ alignItems: 'center',
224
+ justifyContent: 'center'
225
+ }
226
+ },
227
+ children: []
228
+ });
229
+ store.addComponent({
230
+ id: 'text1',
231
+ type: 'Text',
232
+ displayName: 'Dynamic Text',
233
+ parentId: 'box1',
234
+ textContent: 'Edit my properties!',
235
+ props: {
236
+ style: {
237
+ color: 'white',
238
+ fontSize: '24px',
239
+ fontWeight: 'bold'
240
+ }
241
+ }
242
+ });
243
+ // Build tree
244
+ const root = store.components.get('root');
245
+ const box = store.components.get('box1');
246
+ const text = store.components.get('text1');
247
+ if (root && box && text) {
248
+ box.children = ['text1'];
249
+ root.children = ['box1'];
250
+ store.components.set('box1', box);
251
+ store.components.set('root', root);
252
+ }
253
+ store.setMode('edit');
254
+ store.selectComponent('box1'); // This will open the properties panel automatically
255
+ }, []);
256
+ return _jsx(Playground, { initialMode: "edit" });
257
+ },
258
+ name: 'Real-Time Updates',
259
+ parameters: {
260
+ docs: {
261
+ description: {
262
+ story: 'See property changes update in real-time. Adjust colors, spacing, text, and layout properties to see immediate visual feedback.'
263
+ }
264
+ }
265
+ }
266
+ };
267
+ export const StyleGroups = {
268
+ render: () => {
269
+ React.useEffect(() => {
270
+ const store = usePlaygroundStore.getState();
271
+ store.components.clear();
272
+ // Create a component with all style groups
273
+ store.addComponent({
274
+ id: 'root',
275
+ type: 'Container',
276
+ displayName: 'Root',
277
+ props: { style: { padding: '40px', minHeight: '100vh' } },
278
+ children: []
279
+ });
280
+ store.addComponent({
281
+ id: 'demo1',
282
+ type: 'Box',
283
+ displayName: 'All Styles Demo',
284
+ parentId: 'root',
285
+ textContent: 'Component with all style properties',
286
+ props: {
287
+ style: {
288
+ // Spacing
289
+ margin: '20px',
290
+ padding: '30px',
291
+ // Layout
292
+ display: 'flex',
293
+ flexDirection: 'column',
294
+ justifyContent: 'center',
295
+ alignItems: 'center',
296
+ gap: '16px',
297
+ // Sizing
298
+ width: '400px',
299
+ height: '300px',
300
+ minWidth: '300px',
301
+ maxWidth: '500px',
302
+ // Typography
303
+ fontSize: '18px',
304
+ fontWeight: 'bold',
305
+ fontFamily: 'system-ui',
306
+ lineHeight: '1.5',
307
+ textAlign: 'center',
308
+ color: '#2d3748',
309
+ // Background
310
+ background: 'linear-gradient(135deg, #f093fb 0%, #f5576c 100%)',
311
+ // Border
312
+ border: '2px solid #e2e8f0',
313
+ borderRadius: '16px',
314
+ // Effects
315
+ opacity: 0.95,
316
+ boxShadow: '0 20px 25px -5px rgba(0, 0, 0, 0.1)',
317
+ transform: 'rotate(-2deg)',
318
+ transition: 'all 0.3s ease'
319
+ }
320
+ }
321
+ });
322
+ const root = store.components.get('root');
323
+ const demo = store.components.get('demo1');
324
+ if (root && demo) {
325
+ root.children = ['demo1'];
326
+ store.components.set('root', root);
327
+ }
328
+ store.setMode('edit');
329
+ store.selectComponent('demo1'); // This will open the properties panel automatically
330
+ }, []);
331
+ return _jsx(Playground, { initialMode: "edit" });
332
+ },
333
+ name: 'Style Groups Organization',
334
+ parameters: {
335
+ docs: {
336
+ description: {
337
+ story: 'See how style properties are organized into logical groups: Spacing, Layout, Size, Typography, Background, Border, and Effects.'
338
+ }
339
+ }
340
+ }
341
+ };
342
+ //# sourceMappingURL=PlaygroundProperties.stories.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PlaygroundProperties.stories.js","sourceRoot":"","sources":["../../../playground/stories/PlaygroundProperties.stories.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,251 @@
1
+ /**
2
+ * Core TypeScript interfaces for StoryUI Playground
3
+ */
4
+ import type { CSSProperties, ComponentType } from 'react';
5
+ /**
6
+ * Represents a component instance in the playground canvas
7
+ */
8
+ export interface PlaygroundComponent {
9
+ /** Unique identifier for the component instance */
10
+ id: string;
11
+ /** Component type (e.g., 'Button', 'Card', 'FlexContainer') */
12
+ type: string;
13
+ /** Component display name for UI */
14
+ displayName?: string;
15
+ /** Props passed to the component */
16
+ props: Record<string, any>;
17
+ /** Child component IDs (for containers) */
18
+ children?: string[];
19
+ /** Direct text content (for text nodes) */
20
+ textContent?: string;
21
+ /** Inline styles */
22
+ style?: CSSProperties;
23
+ /** Parent component ID */
24
+ parentId?: string;
25
+ /** Position within parent's children array */
26
+ index?: number;
27
+ /** Whether this is a layout helper component */
28
+ isHelper?: boolean;
29
+ /** Lock state preventing editing */
30
+ locked?: boolean;
31
+ /** Visibility state */
32
+ hidden?: boolean;
33
+ }
34
+ /**
35
+ * Component metadata from the registry
36
+ */
37
+ export interface ComponentDefinition {
38
+ /** Component name matching import */
39
+ name: string;
40
+ /** Display name for UI */
41
+ displayName: string;
42
+ /** Loaded React component */
43
+ component: ComponentType<any>;
44
+ /** Component category for palette */
45
+ category: ComponentCategory;
46
+ /** Prop definitions */
47
+ props: PropDefinition[];
48
+ /** Available drop zones */
49
+ dropZones: DropZoneDefinition[];
50
+ /** Default props when creating new instance */
51
+ defaultProps?: Record<string, any>;
52
+ /** Whether component accepts children */
53
+ acceptsChildren: boolean;
54
+ /** Component documentation URL */
55
+ docUrl?: string;
56
+ /** Example usage snippets */
57
+ examples?: string[];
58
+ /** Preview thumbnail */
59
+ thumbnail?: string;
60
+ /** Tags for search */
61
+ tags?: string[];
62
+ }
63
+ /**
64
+ * Component categories for organization
65
+ */
66
+ export type ComponentCategory = 'layout' | 'content' | 'forms' | 'navigation' | 'feedback' | 'data-display' | 'overlay' | 'media' | 'helpers';
67
+ /**
68
+ * Definition of a component prop
69
+ */
70
+ export interface PropDefinition {
71
+ /** Prop name */
72
+ name: string;
73
+ /** Prop type */
74
+ type: PropType;
75
+ /** Display label */
76
+ label?: string;
77
+ /** Help text */
78
+ description?: string;
79
+ /** Default value */
80
+ defaultValue?: any;
81
+ /** Whether prop is required */
82
+ required?: boolean;
83
+ /** Possible values for select/enum types */
84
+ options?: PropOption[];
85
+ /** Validation rules */
86
+ validation?: PropValidation;
87
+ /** Group for organization in panel */
88
+ group?: string;
89
+ /** Display order */
90
+ order?: number;
91
+ /** Whether to show in basic/advanced mode */
92
+ advanced?: boolean;
93
+ }
94
+ /**
95
+ * Supported prop types
96
+ */
97
+ export type PropType = 'string' | 'number' | 'boolean' | 'select' | 'multiselect' | 'color' | 'spacing' | 'size' | 'icon' | 'date' | 'json' | 'function' | 'component' | 'slot';
98
+ /**
99
+ * Option for select props
100
+ */
101
+ export interface PropOption {
102
+ label: string;
103
+ value: any;
104
+ icon?: string;
105
+ disabled?: boolean;
106
+ }
107
+ /**
108
+ * Prop validation rules
109
+ */
110
+ export interface PropValidation {
111
+ min?: number;
112
+ max?: number;
113
+ pattern?: string;
114
+ custom?: (value: any) => boolean | string;
115
+ }
116
+ /**
117
+ * Spacing value for margin/padding
118
+ */
119
+ export interface SpacingValue {
120
+ top: string | number;
121
+ right: string | number;
122
+ bottom: string | number;
123
+ left: string | number;
124
+ unit: 'px' | 'rem' | 'em' | '%' | 'vh' | 'vw' | 'auto';
125
+ linked: boolean;
126
+ }
127
+ /**
128
+ * Item being dragged
129
+ */
130
+ export interface DraggedItem {
131
+ /** Item ID (for existing components) */
132
+ id?: string;
133
+ /** Drag operation type */
134
+ type: 'new-component' | 'move-component' | 'resize';
135
+ /** Component type (for new components) */
136
+ componentType?: string;
137
+ /** Component data (for moves) */
138
+ component?: PlaygroundComponent;
139
+ /** Drag source */
140
+ source: 'palette' | 'canvas' | 'tree';
141
+ /** Initial mouse position */
142
+ initialPosition?: {
143
+ x: number;
144
+ y: number;
145
+ };
146
+ /** Offset from component origin */
147
+ offset?: {
148
+ x: number;
149
+ y: number;
150
+ };
151
+ }
152
+ /**
153
+ * Drop zone definition
154
+ */
155
+ export interface DropZone {
156
+ /** Unique drop zone ID */
157
+ id: string;
158
+ /** Parent component ID */
159
+ componentId: string;
160
+ /** Accepted component types */
161
+ accepts: string[] | ((item: DraggedItem) => boolean);
162
+ /** Whether zone is currently active */
163
+ isActive: boolean;
164
+ /** Whether item is over zone */
165
+ isOver: boolean;
166
+ /** Can accept current dragged item */
167
+ canDrop: boolean;
168
+ /** DOM rect for zone */
169
+ rect?: DOMRect;
170
+ /** Drop zone type */
171
+ type: 'container' | 'slot' | 'list' | 'grid' | 'before' | 'after';
172
+ /** Insert index for ordered drops */
173
+ insertIndex?: number;
174
+ /** Maximum children allowed */
175
+ maxChildren?: number;
176
+ /** Current children count */
177
+ childCount?: number;
178
+ }
179
+ /**
180
+ * Drop zone definition for component metadata
181
+ */
182
+ export interface DropZoneDefinition {
183
+ /** Zone identifier */
184
+ id: string;
185
+ /** Display label */
186
+ label?: string;
187
+ /** Accepted component types */
188
+ accepts: string[] | 'all';
189
+ /** Zone type */
190
+ type: 'container' | 'slot' | 'list' | 'grid';
191
+ /** Max items allowed */
192
+ maxItems?: number;
193
+ }
194
+ /**
195
+ * Canvas snapshot for history
196
+ */
197
+ export interface CanvasSnapshot {
198
+ components: Map<string, PlaygroundComponent>;
199
+ timestamp: number;
200
+ description?: string;
201
+ }
202
+ /**
203
+ * Playground modes
204
+ */
205
+ export type PlaygroundMode = 'view' | 'edit' | 'code' | 'preview' | 'responsive';
206
+ /**
207
+ * Sidebar tabs
208
+ */
209
+ export type SidebarTab = 'ai' | 'components' | 'structure' | 'assets' | 'templates';
210
+ /**
211
+ * Drop result after successful drop
212
+ */
213
+ export interface DropResult {
214
+ /** Target drop zone */
215
+ dropZone: DropZone;
216
+ /** New parent component ID */
217
+ parentId: string;
218
+ /** Insert index */
219
+ index: number;
220
+ /** Whether drop was successful */
221
+ success: boolean;
222
+ /** ID of component that was created or moved */
223
+ componentId?: string;
224
+ /** Error message if failed */
225
+ error?: string;
226
+ }
227
+ /**
228
+ * Alignment guide for snapping
229
+ */
230
+ export interface AlignmentGuide {
231
+ type: 'vertical' | 'horizontal';
232
+ position: number;
233
+ source: string;
234
+ priority: number;
235
+ }
236
+ /**
237
+ * Template definition
238
+ */
239
+ export interface Template {
240
+ id: string;
241
+ name: string;
242
+ description?: string;
243
+ components: PlaygroundComponent[];
244
+ thumbnail?: string;
245
+ tags: string[];
246
+ createdAt: Date;
247
+ updatedAt: Date;
248
+ author?: string;
249
+ downloads?: number;
250
+ }
251
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../playground/types/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Core TypeScript interfaces for StoryUI Playground
3
+ */
4
+ export {};
5
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../playground/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG"}