@tpitre/story-ui 3.4.0 → 3.4.1

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 (282) hide show
  1. package/dist/cli/index.js +0 -0
  2. package/dist/mcp-server/index.js +32 -0
  3. package/package.json +2 -1
  4. package/dist/cli/index.js.map +0 -1
  5. package/dist/cli/setup.js.map +0 -1
  6. package/dist/cloudflare-edge/src/mcp-session.js +0 -462
  7. package/dist/cloudflare-edge/src/types.js +0 -4
  8. package/dist/cloudflare-edge/src/worker.js +0 -106
  9. package/dist/cloudflare-pages/vite.config.js +0 -14
  10. package/dist/index.d.ts +0 -13
  11. package/dist/index.d.ts.map +0 -1
  12. package/dist/index.js +0 -12
  13. package/dist/index.js.map +0 -1
  14. package/dist/mcp-server/index.js.map +0 -1
  15. package/dist/mcp-server/mcp-stdio-server.js.map +0 -1
  16. package/dist/mcp-server/routes/claude.js.map +0 -1
  17. package/dist/mcp-server/routes/components.js.map +0 -1
  18. package/dist/mcp-server/routes/generateStory.js.map +0 -1
  19. package/dist/mcp-server/routes/hybridStories.d.ts +0 -18
  20. package/dist/mcp-server/routes/hybridStories.d.ts.map +0 -1
  21. package/dist/mcp-server/routes/hybridStories.js +0 -216
  22. package/dist/mcp-server/routes/hybridStories.js.map +0 -1
  23. package/dist/mcp-server/routes/memoryStories.d.ts +0 -26
  24. package/dist/mcp-server/routes/memoryStories.d.ts.map +0 -1
  25. package/dist/mcp-server/routes/memoryStories.js +0 -158
  26. package/dist/mcp-server/routes/memoryStories.js.map +0 -1
  27. package/dist/mcp-server/routes/storySync.d.ts +0 -26
  28. package/dist/mcp-server/routes/storySync.d.ts.map +0 -1
  29. package/dist/mcp-server/routes/storySync.js +0 -147
  30. package/dist/mcp-server/routes/storySync.js.map +0 -1
  31. package/dist/mcp-server/routes/updateStory.js +0 -246
  32. package/dist/mcp-server/sessionManager.d.ts +0 -50
  33. package/dist/mcp-server/sessionManager.d.ts.map +0 -1
  34. package/dist/mcp-server/sessionManager.js +0 -125
  35. package/dist/mcp-server/sessionManager.js.map +0 -1
  36. package/dist/playground/components/AIAssistant/AIAssistant.d.ts +0 -6
  37. package/dist/playground/components/AIAssistant/AIAssistant.d.ts.map +0 -1
  38. package/dist/playground/components/AIAssistant/AIAssistant.js +0 -109
  39. package/dist/playground/components/AIAssistant/AIAssistant.js.map +0 -1
  40. package/dist/playground/components/AIAssistant/AIAssistant.module.css +0 -166
  41. package/dist/playground/components/Canvas/Canvas.d.ts +0 -9
  42. package/dist/playground/components/Canvas/Canvas.d.ts.map +0 -1
  43. package/dist/playground/components/Canvas/Canvas.js +0 -58
  44. package/dist/playground/components/Canvas/Canvas.js.map +0 -1
  45. package/dist/playground/components/Canvas/Canvas.module.css +0 -189
  46. package/dist/playground/components/Canvas/CanvasWithDnd.d.ts +0 -9
  47. package/dist/playground/components/Canvas/CanvasWithDnd.d.ts.map +0 -1
  48. package/dist/playground/components/Canvas/CanvasWithDnd.js +0 -158
  49. package/dist/playground/components/Canvas/CanvasWithDnd.js.map +0 -1
  50. package/dist/playground/components/Canvas/ComponentRenderer.d.ts +0 -15
  51. package/dist/playground/components/Canvas/ComponentRenderer.d.ts.map +0 -1
  52. package/dist/playground/components/Canvas/ComponentRenderer.js +0 -177
  53. package/dist/playground/components/Canvas/ComponentRenderer.js.map +0 -1
  54. package/dist/playground/components/Canvas/DraggableComponent.d.ts +0 -15
  55. package/dist/playground/components/Canvas/DraggableComponent.d.ts.map +0 -1
  56. package/dist/playground/components/Canvas/DraggableComponent.js +0 -49
  57. package/dist/playground/components/Canvas/DraggableComponent.js.map +0 -1
  58. package/dist/playground/components/Canvas/index.d.ts +0 -9
  59. package/dist/playground/components/Canvas/index.d.ts.map +0 -1
  60. package/dist/playground/components/Canvas/index.js +0 -5
  61. package/dist/playground/components/Canvas/index.js.map +0 -1
  62. package/dist/playground/components/CodeView/CodeView.d.ts +0 -12
  63. package/dist/playground/components/CodeView/CodeView.d.ts.map +0 -1
  64. package/dist/playground/components/CodeView/CodeView.js +0 -77
  65. package/dist/playground/components/CodeView/CodeView.js.map +0 -1
  66. package/dist/playground/components/CodeView/CodeView.module.css +0 -178
  67. package/dist/playground/components/ComponentPalette/ComponentPalette.d.ts +0 -17
  68. package/dist/playground/components/ComponentPalette/ComponentPalette.d.ts.map +0 -1
  69. package/dist/playground/components/ComponentPalette/ComponentPalette.js +0 -138
  70. package/dist/playground/components/ComponentPalette/ComponentPalette.js.map +0 -1
  71. package/dist/playground/components/ComponentPalette/ComponentPalette.module.css +0 -217
  72. package/dist/playground/components/ComponentPalette/index.d.ts +0 -3
  73. package/dist/playground/components/ComponentPalette/index.d.ts.map +0 -1
  74. package/dist/playground/components/ComponentPalette/index.js +0 -2
  75. package/dist/playground/components/ComponentPalette/index.js.map +0 -1
  76. package/dist/playground/components/DropZone/DropZone.d.ts +0 -17
  77. package/dist/playground/components/DropZone/DropZone.d.ts.map +0 -1
  78. package/dist/playground/components/DropZone/DropZone.js +0 -73
  79. package/dist/playground/components/DropZone/DropZone.js.map +0 -1
  80. package/dist/playground/components/DropZone/DropZone.module.css +0 -86
  81. package/dist/playground/components/ExportDialog/ExportDialog.d.ts +0 -10
  82. package/dist/playground/components/ExportDialog/ExportDialog.d.ts.map +0 -1
  83. package/dist/playground/components/ExportDialog/ExportDialog.js +0 -57
  84. package/dist/playground/components/ExportDialog/ExportDialog.js.map +0 -1
  85. package/dist/playground/components/ExportDialog/ExportDialog.module.css +0 -328
  86. package/dist/playground/components/LayoutHelpers/LayoutHelpers.d.ts +0 -134
  87. package/dist/playground/components/LayoutHelpers/LayoutHelpers.d.ts.map +0 -1
  88. package/dist/playground/components/LayoutHelpers/LayoutHelpers.js +0 -254
  89. package/dist/playground/components/LayoutHelpers/LayoutHelpers.js.map +0 -1
  90. package/dist/playground/components/LayoutHelpers/index.d.ts +0 -3
  91. package/dist/playground/components/LayoutHelpers/index.d.ts.map +0 -1
  92. package/dist/playground/components/LayoutHelpers/index.js +0 -2
  93. package/dist/playground/components/LayoutHelpers/index.js.map +0 -1
  94. package/dist/playground/components/Playground/Playground.d.ts +0 -10
  95. package/dist/playground/components/Playground/Playground.d.ts.map +0 -1
  96. package/dist/playground/components/Playground/Playground.js +0 -128
  97. package/dist/playground/components/Playground/Playground.js.map +0 -1
  98. package/dist/playground/components/Playground/Playground.module.css +0 -308
  99. package/dist/playground/components/PropertiesPanel/PropertiesPanel.d.ts +0 -10
  100. package/dist/playground/components/PropertiesPanel/PropertiesPanel.d.ts.map +0 -1
  101. package/dist/playground/components/PropertiesPanel/PropertiesPanel.js +0 -150
  102. package/dist/playground/components/PropertiesPanel/PropertiesPanel.js.map +0 -1
  103. package/dist/playground/components/PropertiesPanel/PropertiesPanel.module.css +0 -155
  104. package/dist/playground/components/PropertiesPanel/index.d.ts +0 -3
  105. package/dist/playground/components/PropertiesPanel/index.d.ts.map +0 -1
  106. package/dist/playground/components/PropertiesPanel/index.js +0 -2
  107. package/dist/playground/components/PropertiesPanel/index.js.map +0 -1
  108. package/dist/playground/components/PropertyEditors/BooleanEditor.d.ts +0 -12
  109. package/dist/playground/components/PropertyEditors/BooleanEditor.d.ts.map +0 -1
  110. package/dist/playground/components/PropertyEditors/BooleanEditor.js +0 -14
  111. package/dist/playground/components/PropertyEditors/BooleanEditor.js.map +0 -1
  112. package/dist/playground/components/PropertyEditors/ColorEditor.d.ts +0 -12
  113. package/dist/playground/components/PropertyEditors/ColorEditor.d.ts.map +0 -1
  114. package/dist/playground/components/PropertyEditors/ColorEditor.js +0 -62
  115. package/dist/playground/components/PropertyEditors/ColorEditor.js.map +0 -1
  116. package/dist/playground/components/PropertyEditors/IconEditor.d.ts +0 -12
  117. package/dist/playground/components/PropertyEditors/IconEditor.d.ts.map +0 -1
  118. package/dist/playground/components/PropertyEditors/IconEditor.js +0 -123
  119. package/dist/playground/components/PropertyEditors/IconEditor.js.map +0 -1
  120. package/dist/playground/components/PropertyEditors/NumberEditor.d.ts +0 -15
  121. package/dist/playground/components/PropertyEditors/NumberEditor.d.ts.map +0 -1
  122. package/dist/playground/components/PropertyEditors/NumberEditor.js +0 -46
  123. package/dist/playground/components/PropertyEditors/NumberEditor.js.map +0 -1
  124. package/dist/playground/components/PropertyEditors/PropertyEditors.module.css +0 -432
  125. package/dist/playground/components/PropertyEditors/SelectEditor.d.ts +0 -19
  126. package/dist/playground/components/PropertyEditors/SelectEditor.d.ts.map +0 -1
  127. package/dist/playground/components/PropertyEditors/SelectEditor.js +0 -17
  128. package/dist/playground/components/PropertyEditors/SelectEditor.js.map +0 -1
  129. package/dist/playground/components/PropertyEditors/SpacingEditor.d.ts +0 -19
  130. package/dist/playground/components/PropertyEditors/SpacingEditor.d.ts.map +0 -1
  131. package/dist/playground/components/PropertyEditors/SpacingEditor.js +0 -162
  132. package/dist/playground/components/PropertyEditors/SpacingEditor.js.map +0 -1
  133. package/dist/playground/components/PropertyEditors/SpacingEditor.module.css +0 -214
  134. package/dist/playground/components/PropertyEditors/TextEditor.d.ts +0 -14
  135. package/dist/playground/components/PropertyEditors/TextEditor.d.ts.map +0 -1
  136. package/dist/playground/components/PropertyEditors/TextEditor.js +0 -38
  137. package/dist/playground/components/PropertyEditors/TextEditor.js.map +0 -1
  138. package/dist/playground/components/PropertyEditors/TokenEditor.d.ts +0 -23
  139. package/dist/playground/components/PropertyEditors/TokenEditor.d.ts.map +0 -1
  140. package/dist/playground/components/PropertyEditors/TokenEditor.js +0 -50
  141. package/dist/playground/components/PropertyEditors/TokenEditor.js.map +0 -1
  142. package/dist/playground/components/PropertyEditors/index.d.ts +0 -20
  143. package/dist/playground/components/PropertyEditors/index.d.ts.map +0 -1
  144. package/dist/playground/components/PropertyEditors/index.js +0 -12
  145. package/dist/playground/components/PropertyEditors/index.js.map +0 -1
  146. package/dist/playground/components/TreeView/TreeView.d.ts +0 -10
  147. package/dist/playground/components/TreeView/TreeView.d.ts.map +0 -1
  148. package/dist/playground/components/TreeView/TreeView.js +0 -146
  149. package/dist/playground/components/TreeView/TreeView.js.map +0 -1
  150. package/dist/playground/components/TreeView/TreeView.module.css +0 -214
  151. package/dist/playground/components/TreeView/index.d.ts +0 -3
  152. package/dist/playground/components/TreeView/index.d.ts.map +0 -1
  153. package/dist/playground/components/TreeView/index.js +0 -2
  154. package/dist/playground/components/TreeView/index.js.map +0 -1
  155. package/dist/playground/config/propertyDefinitions.d.ts +0 -73
  156. package/dist/playground/config/propertyDefinitions.d.ts.map +0 -1
  157. package/dist/playground/config/propertyDefinitions.js +0 -809
  158. package/dist/playground/config/propertyDefinitions.js.map +0 -1
  159. package/dist/playground/hooks/useKeyboardShortcuts.d.ts +0 -38
  160. package/dist/playground/hooks/useKeyboardShortcuts.d.ts.map +0 -1
  161. package/dist/playground/hooks/useKeyboardShortcuts.js +0 -191
  162. package/dist/playground/hooks/useKeyboardShortcuts.js.map +0 -1
  163. package/dist/playground/index.d.ts +0 -21
  164. package/dist/playground/index.d.ts.map +0 -1
  165. package/dist/playground/index.js +0 -23
  166. package/dist/playground/index.js.map +0 -1
  167. package/dist/playground/services/CodeGenerator.d.ts +0 -73
  168. package/dist/playground/services/CodeGenerator.d.ts.map +0 -1
  169. package/dist/playground/services/CodeGenerator.js +0 -359
  170. package/dist/playground/services/CodeGenerator.js.map +0 -1
  171. package/dist/playground/services/DragDropManager.d.ts +0 -95
  172. package/dist/playground/services/DragDropManager.d.ts.map +0 -1
  173. package/dist/playground/services/DragDropManager.js +0 -408
  174. package/dist/playground/services/DragDropManager.js.map +0 -1
  175. package/dist/playground/services/StoryParser.d.ts +0 -73
  176. package/dist/playground/services/StoryParser.d.ts.map +0 -1
  177. package/dist/playground/services/StoryParser.js +0 -419
  178. package/dist/playground/services/StoryParser.js.map +0 -1
  179. package/dist/playground/store/playgroundStore.d.ts +0 -86
  180. package/dist/playground/store/playgroundStore.d.ts.map +0 -1
  181. package/dist/playground/store/playgroundStore.js +0 -337
  182. package/dist/playground/store/playgroundStore.js.map +0 -1
  183. package/dist/playground/stories/PlaygroundDragDrop.stories.d.ts +0 -13
  184. package/dist/playground/stories/PlaygroundDragDrop.stories.d.ts.map +0 -1
  185. package/dist/playground/stories/PlaygroundDragDrop.stories.js +0 -227
  186. package/dist/playground/stories/PlaygroundDragDrop.stories.js.map +0 -1
  187. package/dist/playground/stories/PlaygroundPhase4.stories.d.ts +0 -13
  188. package/dist/playground/stories/PlaygroundPhase4.stories.d.ts.map +0 -1
  189. package/dist/playground/stories/PlaygroundPhase4.stories.js +0 -334
  190. package/dist/playground/stories/PlaygroundPhase4.stories.js.map +0 -1
  191. package/dist/playground/stories/PlaygroundPhase5.stories.d.ts +0 -14
  192. package/dist/playground/stories/PlaygroundPhase5.stories.d.ts.map +0 -1
  193. package/dist/playground/stories/PlaygroundPhase5.stories.js +0 -512
  194. package/dist/playground/stories/PlaygroundPhase5.stories.js.map +0 -1
  195. package/dist/playground/stories/PlaygroundProperties.stories.d.ts +0 -13
  196. package/dist/playground/stories/PlaygroundProperties.stories.d.ts.map +0 -1
  197. package/dist/playground/stories/PlaygroundProperties.stories.js +0 -342
  198. package/dist/playground/stories/PlaygroundProperties.stories.js.map +0 -1
  199. package/dist/playground/types/index.d.ts +0 -251
  200. package/dist/playground/types/index.d.ts.map +0 -1
  201. package/dist/playground/types/index.js +0 -5
  202. package/dist/playground/types/index.js.map +0 -1
  203. package/dist/scripts/verify-framework-adapters.js +0 -105
  204. package/dist/story-generator/componentBlacklist.js.map +0 -1
  205. package/dist/story-generator/componentDiscovery.js.map +0 -1
  206. package/dist/story-generator/configLoader.js.map +0 -1
  207. package/dist/story-generator/considerationsLoader.js.map +0 -1
  208. package/dist/story-generator/documentation-sources.js.map +0 -1
  209. package/dist/story-generator/documentationLoader.js.map +0 -1
  210. package/dist/story-generator/dynamicPackageDiscovery.js.map +0 -1
  211. package/dist/story-generator/enhancedComponentDiscovery.js.map +0 -1
  212. package/dist/story-generator/generateStory.js.map +0 -1
  213. package/dist/story-generator/gitignoreManager.js.map +0 -1
  214. package/dist/story-generator/inMemoryStoryService.d.ts +0 -89
  215. package/dist/story-generator/inMemoryStoryService.d.ts.map +0 -1
  216. package/dist/story-generator/inMemoryStoryService.js +0 -128
  217. package/dist/story-generator/inMemoryStoryService.js.map +0 -1
  218. package/dist/story-generator/logger.js.map +0 -1
  219. package/dist/story-generator/postProcessStory.js.map +0 -1
  220. package/dist/story-generator/postgresStoryService.d.ts +0 -56
  221. package/dist/story-generator/postgresStoryService.d.ts.map +0 -1
  222. package/dist/story-generator/postgresStoryService.js +0 -240
  223. package/dist/story-generator/productionGitignoreManager.d.ts +0 -91
  224. package/dist/story-generator/productionGitignoreManager.d.ts.map +0 -1
  225. package/dist/story-generator/productionGitignoreManager.js +0 -340
  226. package/dist/story-generator/productionGitignoreManager.js.map +0 -1
  227. package/dist/story-generator/promptGenerator.js.map +0 -1
  228. package/dist/story-generator/providerPresets.d.ts +0 -54
  229. package/dist/story-generator/providerPresets.d.ts.map +0 -1
  230. package/dist/story-generator/providerPresets.js +0 -214
  231. package/dist/story-generator/storyHistory.js.map +0 -1
  232. package/dist/story-generator/storyServiceFactory.d.ts +0 -22
  233. package/dist/story-generator/storyServiceFactory.d.ts.map +0 -1
  234. package/dist/story-generator/storyServiceFactory.js +0 -97
  235. package/dist/story-generator/storyServiceInterface.d.ts +0 -85
  236. package/dist/story-generator/storyServiceInterface.d.ts.map +0 -1
  237. package/dist/story-generator/storyServiceInterface.js +0 -5
  238. package/dist/story-generator/storySync.d.ts +0 -68
  239. package/dist/story-generator/storySync.d.ts.map +0 -1
  240. package/dist/story-generator/storySync.js +0 -201
  241. package/dist/story-generator/storySync.js.map +0 -1
  242. package/dist/story-generator/storyTracker.js.map +0 -1
  243. package/dist/story-generator/storyValidator.js.map +0 -1
  244. package/dist/story-generator/test_validation.d.ts +0 -2
  245. package/dist/story-generator/test_validation.d.ts.map +0 -1
  246. package/dist/story-generator/test_validation.js +0 -51
  247. package/dist/story-generator/universalDesignSystemAdapter.js.map +0 -1
  248. package/dist/story-generator/urlRedirectService.js.map +0 -1
  249. package/dist/story-generator/validateStory.js.map +0 -1
  250. package/dist/story-ui.config.js.map +0 -1
  251. package/dist/story-ui.config.loader.d.ts +0 -36
  252. package/dist/story-ui.config.loader.d.ts.map +0 -1
  253. package/dist/story-ui.config.loader.js +0 -205
  254. package/dist/story-ui.config.loader.js.map +0 -1
  255. package/dist/temp/package/templates/StoryUI/StoryUIPanel.js +0 -807
  256. package/dist/temp/package/templates/StoryUI/StoryUIPanel.stories.js +0 -37
  257. package/dist/temp/package/templates/StoryUI/index.js +0 -2
  258. package/dist/templates/StoryUI/StoryUIPanel.js.map +0 -1
  259. package/dist/templates/StoryUI/StoryUIPanel.stories.js.map +0 -1
  260. package/dist/templates/StoryUI/index.js.map +0 -1
  261. package/dist/templates/StoryUI/manager.d.ts +0 -14
  262. package/dist/templates/StoryUI/manager.d.ts.map +0 -1
  263. package/dist/templates/production-app/src/App.d.ts +0 -10
  264. package/dist/templates/production-app/src/App.d.ts.map +0 -1
  265. package/dist/templates/production-app/src/App.js +0 -653
  266. package/dist/templates/production-app/src/LivePreviewRenderer.d.ts +0 -24
  267. package/dist/templates/production-app/src/LivePreviewRenderer.d.ts.map +0 -1
  268. package/dist/templates/production-app/src/LivePreviewRenderer.js +0 -199
  269. package/dist/templates/production-app/src/componentRegistry.d.ts +0 -20
  270. package/dist/templates/production-app/src/componentRegistry.d.ts.map +0 -1
  271. package/dist/templates/production-app/src/componentRegistry.js +0 -316
  272. package/dist/templates/production-app/src/main.d.ts +0 -9
  273. package/dist/templates/production-app/src/main.d.ts.map +0 -1
  274. package/dist/templates/production-app/src/main.js +0 -18
  275. package/dist/templates/production-app/vite.config.d.ts +0 -3
  276. package/dist/templates/production-app/vite.config.d.ts.map +0 -1
  277. package/dist/templates/production-app/vite.config.js +0 -71
  278. package/dist/test-storybooks/angular-material-storybook/src/main.js +0 -66
  279. package/dist/test-storybooks/chakra-storybook/vite.config.js +0 -6
  280. package/dist/test-storybooks/mantine-storybook/vite.config.js +0 -93
  281. package/dist/test-storybooks/web-components-shoelace/vite.config.js +0 -9
  282. package/dist/tsconfig.tsbuildinfo +0 -1
package/dist/cli/index.js CHANGED
File without changes
@@ -1,6 +1,7 @@
1
1
  import dotenv from 'dotenv';
2
2
  import path from 'path';
3
3
  import { fileURLToPath } from 'url';
4
+ import { createProxyMiddleware } from 'http-proxy-middleware';
4
5
  // Get __dirname equivalent for ES modules
5
6
  const __filename = fileURLToPath(import.meta.url);
6
7
  const __dirname = path.dirname(__filename);
@@ -199,6 +200,37 @@ const config = loadUserConfig();
199
200
  // Initialize URL redirect service
200
201
  const redirectService = new UrlRedirectService(process.cwd());
201
202
  const PORT = parseInt(process.env.PORT || '4001', 10);
203
+ // Storybook proxy configuration for production deployment
204
+ // When STORYBOOK_PROXY_ENABLED is set, proxy all non-API requests to Storybook dev server
205
+ const storybookProxyPort = process.env.STORYBOOK_PROXY_PORT || '6006';
206
+ const storybookProxyEnabled = process.env.STORYBOOK_PROXY_ENABLED === 'true';
207
+ if (storybookProxyEnabled) {
208
+ console.log(`📖 Storybook proxy enabled - forwarding to localhost:${storybookProxyPort}`);
209
+ // Proxy all requests that don't match API routes to Storybook
210
+ // This must be added AFTER all API routes so they take precedence
211
+ app.use('/', createProxyMiddleware({
212
+ target: `http://localhost:${storybookProxyPort}`,
213
+ changeOrigin: true,
214
+ ws: true, // Enable WebSocket proxying for HMR
215
+ logger: console,
216
+ // Don't proxy API routes
217
+ pathFilter: (path) => {
218
+ const isApiRoute = path.startsWith('/mcp') ||
219
+ path.startsWith('/story-ui') ||
220
+ path.startsWith('/mcp-remote');
221
+ return !isApiRoute;
222
+ },
223
+ on: {
224
+ error: (err, req, res) => {
225
+ console.error('Storybook proxy error:', err.message);
226
+ if (res && typeof res.writeHead === 'function' && !res.headersSent) {
227
+ res.writeHead(502, { 'Content-Type': 'text/plain' });
228
+ res.end('Storybook is starting up, please wait...');
229
+ }
230
+ }
231
+ }
232
+ }));
233
+ }
202
234
  // Start server
203
235
  app.listen(PORT, () => {
204
236
  console.log(`MCP server running on port ${PORT}`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tpitre/story-ui",
3
- "version": "3.4.0",
3
+ "version": "3.4.1",
4
4
  "description": "AI-powered Storybook story generator with dynamic component discovery",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -83,6 +83,7 @@
83
83
  "dotenv": "^16.3.1",
84
84
  "express": "^4.18.2",
85
85
  "glob": "^11.0.3",
86
+ "http-proxy-middleware": "^3.0.0",
86
87
  "inquirer": "^9.2.0",
87
88
  "node-fetch": "^2.6.7",
88
89
  "pg": "^8.16.3",
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../cli/index.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../cli/setup.ts"],"names":[],"mappings":"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"}
@@ -1,462 +0,0 @@
1
- /**
2
- * Story UI MCP Session Durable Object
3
- *
4
- * Handles per-session MCP protocol communication with:
5
- * - SSE transport (legacy)
6
- * - Streamable HTTP transport (new)
7
- * - WebSocket hibernation for cost optimization
8
- */
9
- // MCP Protocol Constants
10
- const MCP_VERSION = '2024-11-05';
11
- const SERVER_NAME = 'story-ui-mcp-edge';
12
- const SERVER_VERSION = '3.0.0';
13
- // Story UI Tools Definition
14
- const STORY_UI_TOOLS = [
15
- {
16
- name: 'test-connection',
17
- description: 'Test the MCP connection to Story UI edge server',
18
- inputSchema: {
19
- type: 'object',
20
- properties: {},
21
- },
22
- },
23
- {
24
- name: 'generate-story',
25
- description: 'Generate a Storybook story for a component using AI',
26
- inputSchema: {
27
- type: 'object',
28
- properties: {
29
- prompt: {
30
- type: 'string',
31
- description: 'Description of the story to generate',
32
- },
33
- componentPath: {
34
- type: 'string',
35
- description: 'Path to the component file (optional)',
36
- },
37
- framework: {
38
- type: 'string',
39
- description: 'UI framework',
40
- enum: ['react', 'vue', 'angular', 'svelte'],
41
- },
42
- },
43
- required: ['prompt'],
44
- },
45
- },
46
- {
47
- name: 'list-stories',
48
- description: 'List all generated stories in this session',
49
- inputSchema: {
50
- type: 'object',
51
- properties: {
52
- limit: {
53
- type: 'number',
54
- description: 'Maximum number of stories to return',
55
- default: 50,
56
- },
57
- },
58
- },
59
- },
60
- {
61
- name: 'get-story',
62
- description: 'Get the content of a specific story',
63
- inputSchema: {
64
- type: 'object',
65
- properties: {
66
- id: {
67
- type: 'string',
68
- description: 'Story ID',
69
- },
70
- },
71
- required: ['id'],
72
- },
73
- },
74
- {
75
- name: 'delete-story',
76
- description: 'Delete a generated story',
77
- inputSchema: {
78
- type: 'object',
79
- properties: {
80
- id: {
81
- type: 'string',
82
- description: 'Story ID',
83
- },
84
- },
85
- required: ['id'],
86
- },
87
- },
88
- ];
89
- export class MCPSessionDO {
90
- constructor(state, env) {
91
- this.sessions = new Map();
92
- this.sseWriters = new Map();
93
- this.state = state;
94
- this._env = env;
95
- }
96
- async fetch(request) {
97
- const url = new URL(request.url);
98
- try {
99
- switch (url.pathname) {
100
- case '/sse':
101
- return this.handleSSE(request);
102
- case '/messages':
103
- return this.handleMessages(request, url);
104
- case '/mcp':
105
- return this.handleStreamableHTTP(request);
106
- case '/health':
107
- return this.handleHealth();
108
- default:
109
- return new Response('Not Found', { status: 404 });
110
- }
111
- }
112
- catch (error) {
113
- console.error('MCPSessionDO error:', error);
114
- return new Response(JSON.stringify({ error: 'Internal Server Error' }), { status: 500, headers: { 'Content-Type': 'application/json' } });
115
- }
116
- }
117
- /**
118
- * Handle SSE connection (legacy transport)
119
- */
120
- async handleSSE(request) {
121
- const sessionId = crypto.randomUUID();
122
- // Create transform stream for SSE
123
- const { readable, writable } = new TransformStream();
124
- const writer = writable.getWriter();
125
- const encoder = new TextEncoder();
126
- // Store session
127
- const session = {
128
- id: sessionId,
129
- createdAt: Date.now(),
130
- lastActive: Date.now(),
131
- };
132
- this.sessions.set(sessionId, session);
133
- this.sseWriters.set(sessionId, writer);
134
- // Save to durable storage
135
- await this.state.storage.put(`session:${sessionId}`, session);
136
- // Send endpoint event
137
- const endpointUrl = `/mcp-remote/messages?sessionId=${sessionId}`;
138
- await writer.write(encoder.encode(`event: endpoint\ndata: ${endpointUrl}\n\n`));
139
- // Clean up on close
140
- request.signal.addEventListener('abort', async () => {
141
- this.sessions.delete(sessionId);
142
- this.sseWriters.delete(sessionId);
143
- await this.state.storage.delete(`session:${sessionId}`);
144
- console.log(`Session ${sessionId} closed`);
145
- });
146
- console.log(`SSE session ${sessionId} created`);
147
- return new Response(readable, {
148
- headers: {
149
- 'Content-Type': 'text/event-stream',
150
- 'Cache-Control': 'no-cache',
151
- 'Connection': 'keep-alive',
152
- 'Access-Control-Allow-Origin': '*',
153
- },
154
- });
155
- }
156
- /**
157
- * Handle POST messages for SSE transport
158
- */
159
- async handleMessages(request, url) {
160
- if (request.method !== 'POST') {
161
- return new Response('Method Not Allowed', { status: 405 });
162
- }
163
- const sessionId = url.searchParams.get('sessionId');
164
- if (!sessionId) {
165
- return new Response(JSON.stringify({ error: 'Missing sessionId' }), { status: 400, headers: { 'Content-Type': 'application/json' } });
166
- }
167
- const session = this.sessions.get(sessionId);
168
- if (!session) {
169
- return new Response(JSON.stringify({ error: 'Session not found' }), { status: 404, headers: { 'Content-Type': 'application/json' } });
170
- }
171
- // Update last active
172
- session.lastActive = Date.now();
173
- // Parse message
174
- const message = await request.json();
175
- // Process and get response
176
- const response = await this.processMessage(message);
177
- // Send response via SSE
178
- const writer = this.sseWriters.get(sessionId);
179
- if (writer) {
180
- const encoder = new TextEncoder();
181
- await writer.write(encoder.encode(`event: message\ndata: ${JSON.stringify(response)}\n\n`));
182
- }
183
- return new Response(null, { status: 202 });
184
- }
185
- /**
186
- * Handle Streamable HTTP transport (new MCP standard)
187
- */
188
- async handleStreamableHTTP(request) {
189
- if (request.method !== 'POST') {
190
- return new Response('Method Not Allowed', { status: 405 });
191
- }
192
- const message = await request.json();
193
- const response = await this.processMessage(message);
194
- return new Response(JSON.stringify(response), {
195
- headers: {
196
- 'Content-Type': 'application/json',
197
- 'Access-Control-Allow-Origin': '*',
198
- },
199
- });
200
- }
201
- /**
202
- * Process MCP JSON-RPC message
203
- */
204
- async processMessage(message) {
205
- const { method, params, id } = message;
206
- try {
207
- switch (method) {
208
- case 'initialize':
209
- return this.handleInitialize(id, params);
210
- case 'tools/list':
211
- return this.handleListTools(id);
212
- case 'tools/call':
213
- return this.handleCallTool(id, params);
214
- case 'ping':
215
- return { jsonrpc: '2.0', id, result: {} };
216
- default:
217
- return {
218
- jsonrpc: '2.0',
219
- id,
220
- error: { code: -32601, message: `Method not found: ${method}` },
221
- };
222
- }
223
- }
224
- catch (error) {
225
- console.error(`Error processing ${method}:`, error);
226
- return {
227
- jsonrpc: '2.0',
228
- id,
229
- error: {
230
- code: -32603,
231
- message: error instanceof Error ? error.message : 'Internal error'
232
- },
233
- };
234
- }
235
- }
236
- /**
237
- * Handle MCP initialize
238
- */
239
- handleInitialize(id, params) {
240
- // Store client info for potential future session tracking
241
- const _clientInfo = params?.clientInfo;
242
- return {
243
- jsonrpc: '2.0',
244
- id,
245
- result: {
246
- protocolVersion: MCP_VERSION,
247
- capabilities: {
248
- tools: {},
249
- },
250
- serverInfo: {
251
- name: SERVER_NAME,
252
- version: SERVER_VERSION,
253
- },
254
- },
255
- };
256
- }
257
- /**
258
- * Handle tools/list
259
- */
260
- handleListTools(id) {
261
- return {
262
- jsonrpc: '2.0',
263
- id,
264
- result: {
265
- tools: STORY_UI_TOOLS,
266
- },
267
- };
268
- }
269
- /**
270
- * Handle tools/call
271
- */
272
- async handleCallTool(id, params) {
273
- const toolName = params?.name;
274
- const toolArgs = params?.arguments;
275
- const result = await this.executeTool(toolName, toolArgs || {});
276
- return {
277
- jsonrpc: '2.0',
278
- id,
279
- result,
280
- };
281
- }
282
- /**
283
- * Execute a tool
284
- */
285
- async executeTool(name, args) {
286
- switch (name) {
287
- case 'test-connection':
288
- return {
289
- content: [{
290
- type: 'text',
291
- text: JSON.stringify({
292
- status: 'connected',
293
- server: SERVER_NAME,
294
- version: SERVER_VERSION,
295
- transport: 'cloudflare-edge',
296
- timestamp: new Date().toISOString(),
297
- }, null, 2),
298
- }],
299
- };
300
- case 'generate-story':
301
- return this.generateStory(args);
302
- case 'list-stories':
303
- return this.listStories(args);
304
- case 'get-story':
305
- return this.getStory(args);
306
- case 'delete-story':
307
- return this.deleteStory(args);
308
- default:
309
- return {
310
- content: [{ type: 'text', text: `Unknown tool: ${name}` }],
311
- isError: true,
312
- };
313
- }
314
- }
315
- /**
316
- * Generate a story (placeholder - needs LLM integration)
317
- */
318
- async generateStory(args) {
319
- const prompt = args.prompt;
320
- const componentPath = args.componentPath;
321
- const framework = args.framework || 'react';
322
- // Generate a unique story ID
323
- const storyId = `story-${Date.now()}-${Math.random().toString(36).substr(2, 9)}`;
324
- // Create placeholder story content
325
- const storyContent = `import type { Meta, StoryObj } from '@storybook/react';
326
-
327
- // Generated by Story UI MCP Edge
328
- // Prompt: ${prompt}
329
- // Framework: ${framework}
330
- ${componentPath ? `// Component: ${componentPath}` : ''}
331
-
332
- const meta = {
333
- title: 'Generated/${storyId}',
334
- parameters: {
335
- layout: 'centered',
336
- },
337
- } satisfies Meta;
338
-
339
- export default meta;
340
- type Story = StoryObj<typeof meta>;
341
-
342
- export const Default: Story = {
343
- render: () => (
344
- <div>
345
- {/* TODO: Implement based on prompt: ${prompt} */}
346
- <p>Story generated on Cloudflare Edge</p>
347
- </div>
348
- ),
349
- };
350
- `;
351
- // Store story
352
- const story = {
353
- id: storyId,
354
- title: `Generated Story - ${prompt.substring(0, 50)}`,
355
- componentPath,
356
- createdAt: Date.now(),
357
- framework,
358
- };
359
- await this.state.storage.put(`story:${storyId}`, { ...story, content: storyContent });
360
- return {
361
- content: [{
362
- type: 'text',
363
- text: JSON.stringify({
364
- success: true,
365
- storyId,
366
- message: 'Story generated successfully on Cloudflare Edge',
367
- note: 'Full LLM integration pending - this is a placeholder story',
368
- content: storyContent,
369
- }, null, 2),
370
- }],
371
- };
372
- }
373
- /**
374
- * List stories in this session
375
- */
376
- async listStories(args) {
377
- const limit = args.limit || 50;
378
- const stories = [];
379
- const storageMap = await this.state.storage.list({ prefix: 'story:' });
380
- for (const [, value] of storageMap) {
381
- const story = value;
382
- stories.push({
383
- id: story.id,
384
- title: story.title,
385
- componentPath: story.componentPath,
386
- createdAt: story.createdAt,
387
- framework: story.framework,
388
- });
389
- if (stories.length >= limit)
390
- break;
391
- }
392
- return {
393
- content: [{
394
- type: 'text',
395
- text: JSON.stringify({
396
- stories,
397
- count: stories.length,
398
- }, null, 2),
399
- }],
400
- };
401
- }
402
- /**
403
- * Get a specific story
404
- */
405
- async getStory(args) {
406
- const id = args.id;
407
- const story = await this.state.storage.get(`story:${id}`);
408
- if (!story) {
409
- return {
410
- content: [{ type: 'text', text: `Story not found: ${id}` }],
411
- isError: true,
412
- };
413
- }
414
- return {
415
- content: [{
416
- type: 'text',
417
- text: JSON.stringify(story, null, 2),
418
- }],
419
- };
420
- }
421
- /**
422
- * Delete a story
423
- */
424
- async deleteStory(args) {
425
- const id = args.id;
426
- const existed = await this.state.storage.get(`story:${id}`);
427
- if (!existed) {
428
- return {
429
- content: [{ type: 'text', text: `Story not found: ${id}` }],
430
- isError: true,
431
- };
432
- }
433
- await this.state.storage.delete(`story:${id}`);
434
- return {
435
- content: [{
436
- type: 'text',
437
- text: JSON.stringify({
438
- success: true,
439
- message: `Story ${id} deleted`,
440
- }, null, 2),
441
- }],
442
- };
443
- }
444
- /**
445
- * Health check
446
- */
447
- handleHealth() {
448
- return new Response(JSON.stringify({
449
- status: 'ok',
450
- service: SERVER_NAME,
451
- version: SERVER_VERSION,
452
- transport: 'cloudflare-edge',
453
- activeSessions: this.sessions.size,
454
- timestamp: new Date().toISOString(),
455
- }), {
456
- headers: {
457
- 'Content-Type': 'application/json',
458
- 'Access-Control-Allow-Origin': '*',
459
- },
460
- });
461
- }
462
- }
@@ -1,4 +0,0 @@
1
- /**
2
- * Story UI MCP Edge - Type Definitions
3
- */
4
- export {};