@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.
- package/dist/cli/index.js +0 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/setup.js.map +1 -0
- package/dist/cloudflare-edge/src/mcp-session.js +462 -0
- package/dist/cloudflare-edge/src/types.js +4 -0
- package/dist/cloudflare-edge/src/worker.js +106 -0
- package/dist/cloudflare-pages/vite.config.js +14 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -0
- package/dist/mcp-server/index.js.map +1 -0
- package/dist/mcp-server/mcp-stdio-server.js.map +1 -0
- package/dist/mcp-server/routes/claude.js.map +1 -0
- package/dist/mcp-server/routes/components.js.map +1 -0
- package/dist/mcp-server/routes/generateStory.js.map +1 -0
- package/dist/mcp-server/routes/hybridStories.d.ts +18 -0
- package/dist/mcp-server/routes/hybridStories.d.ts.map +1 -0
- package/dist/mcp-server/routes/hybridStories.js +216 -0
- package/dist/mcp-server/routes/hybridStories.js.map +1 -0
- package/dist/mcp-server/routes/memoryStories.d.ts +26 -0
- package/dist/mcp-server/routes/memoryStories.d.ts.map +1 -0
- package/dist/mcp-server/routes/memoryStories.js +158 -0
- package/dist/mcp-server/routes/memoryStories.js.map +1 -0
- package/dist/mcp-server/routes/storySync.d.ts +26 -0
- package/dist/mcp-server/routes/storySync.d.ts.map +1 -0
- package/dist/mcp-server/routes/storySync.js +147 -0
- package/dist/mcp-server/routes/storySync.js.map +1 -0
- package/dist/mcp-server/routes/updateStory.js +246 -0
- package/dist/mcp-server/sessionManager.d.ts +50 -0
- package/dist/mcp-server/sessionManager.d.ts.map +1 -0
- package/dist/mcp-server/sessionManager.js +125 -0
- package/dist/mcp-server/sessionManager.js.map +1 -0
- package/dist/playground/components/AIAssistant/AIAssistant.d.ts +6 -0
- package/dist/playground/components/AIAssistant/AIAssistant.d.ts.map +1 -0
- package/dist/playground/components/AIAssistant/AIAssistant.js +109 -0
- package/dist/playground/components/AIAssistant/AIAssistant.js.map +1 -0
- package/dist/playground/components/AIAssistant/AIAssistant.module.css +166 -0
- package/dist/playground/components/Canvas/Canvas.d.ts +9 -0
- package/dist/playground/components/Canvas/Canvas.d.ts.map +1 -0
- package/dist/playground/components/Canvas/Canvas.js +58 -0
- package/dist/playground/components/Canvas/Canvas.js.map +1 -0
- package/dist/playground/components/Canvas/Canvas.module.css +189 -0
- package/dist/playground/components/Canvas/CanvasWithDnd.d.ts +9 -0
- package/dist/playground/components/Canvas/CanvasWithDnd.d.ts.map +1 -0
- package/dist/playground/components/Canvas/CanvasWithDnd.js +158 -0
- package/dist/playground/components/Canvas/CanvasWithDnd.js.map +1 -0
- package/dist/playground/components/Canvas/ComponentRenderer.d.ts +15 -0
- package/dist/playground/components/Canvas/ComponentRenderer.d.ts.map +1 -0
- package/dist/playground/components/Canvas/ComponentRenderer.js +177 -0
- package/dist/playground/components/Canvas/ComponentRenderer.js.map +1 -0
- package/dist/playground/components/Canvas/DraggableComponent.d.ts +15 -0
- package/dist/playground/components/Canvas/DraggableComponent.d.ts.map +1 -0
- package/dist/playground/components/Canvas/DraggableComponent.js +49 -0
- package/dist/playground/components/Canvas/DraggableComponent.js.map +1 -0
- package/dist/playground/components/Canvas/index.d.ts +9 -0
- package/dist/playground/components/Canvas/index.d.ts.map +1 -0
- package/dist/playground/components/Canvas/index.js +5 -0
- package/dist/playground/components/Canvas/index.js.map +1 -0
- package/dist/playground/components/CodeView/CodeView.d.ts +12 -0
- package/dist/playground/components/CodeView/CodeView.d.ts.map +1 -0
- package/dist/playground/components/CodeView/CodeView.js +77 -0
- package/dist/playground/components/CodeView/CodeView.js.map +1 -0
- package/dist/playground/components/CodeView/CodeView.module.css +178 -0
- package/dist/playground/components/ComponentPalette/ComponentPalette.d.ts +17 -0
- package/dist/playground/components/ComponentPalette/ComponentPalette.d.ts.map +1 -0
- package/dist/playground/components/ComponentPalette/ComponentPalette.js +138 -0
- package/dist/playground/components/ComponentPalette/ComponentPalette.js.map +1 -0
- package/dist/playground/components/ComponentPalette/ComponentPalette.module.css +217 -0
- package/dist/playground/components/ComponentPalette/index.d.ts +3 -0
- package/dist/playground/components/ComponentPalette/index.d.ts.map +1 -0
- package/dist/playground/components/ComponentPalette/index.js +2 -0
- package/dist/playground/components/ComponentPalette/index.js.map +1 -0
- package/dist/playground/components/DropZone/DropZone.d.ts +17 -0
- package/dist/playground/components/DropZone/DropZone.d.ts.map +1 -0
- package/dist/playground/components/DropZone/DropZone.js +73 -0
- package/dist/playground/components/DropZone/DropZone.js.map +1 -0
- package/dist/playground/components/DropZone/DropZone.module.css +86 -0
- package/dist/playground/components/ExportDialog/ExportDialog.d.ts +10 -0
- package/dist/playground/components/ExportDialog/ExportDialog.d.ts.map +1 -0
- package/dist/playground/components/ExportDialog/ExportDialog.js +57 -0
- package/dist/playground/components/ExportDialog/ExportDialog.js.map +1 -0
- package/dist/playground/components/ExportDialog/ExportDialog.module.css +328 -0
- package/dist/playground/components/LayoutHelpers/LayoutHelpers.d.ts +134 -0
- package/dist/playground/components/LayoutHelpers/LayoutHelpers.d.ts.map +1 -0
- package/dist/playground/components/LayoutHelpers/LayoutHelpers.js +254 -0
- package/dist/playground/components/LayoutHelpers/LayoutHelpers.js.map +1 -0
- package/dist/playground/components/LayoutHelpers/index.d.ts +3 -0
- package/dist/playground/components/LayoutHelpers/index.d.ts.map +1 -0
- package/dist/playground/components/LayoutHelpers/index.js +2 -0
- package/dist/playground/components/LayoutHelpers/index.js.map +1 -0
- package/dist/playground/components/Playground/Playground.d.ts +10 -0
- package/dist/playground/components/Playground/Playground.d.ts.map +1 -0
- package/dist/playground/components/Playground/Playground.js +128 -0
- package/dist/playground/components/Playground/Playground.js.map +1 -0
- package/dist/playground/components/Playground/Playground.module.css +308 -0
- package/dist/playground/components/PropertiesPanel/PropertiesPanel.d.ts +10 -0
- package/dist/playground/components/PropertiesPanel/PropertiesPanel.d.ts.map +1 -0
- package/dist/playground/components/PropertiesPanel/PropertiesPanel.js +150 -0
- package/dist/playground/components/PropertiesPanel/PropertiesPanel.js.map +1 -0
- package/dist/playground/components/PropertiesPanel/PropertiesPanel.module.css +155 -0
- package/dist/playground/components/PropertiesPanel/index.d.ts +3 -0
- package/dist/playground/components/PropertiesPanel/index.d.ts.map +1 -0
- package/dist/playground/components/PropertiesPanel/index.js +2 -0
- package/dist/playground/components/PropertiesPanel/index.js.map +1 -0
- package/dist/playground/components/PropertyEditors/BooleanEditor.d.ts +12 -0
- package/dist/playground/components/PropertyEditors/BooleanEditor.d.ts.map +1 -0
- package/dist/playground/components/PropertyEditors/BooleanEditor.js +14 -0
- package/dist/playground/components/PropertyEditors/BooleanEditor.js.map +1 -0
- package/dist/playground/components/PropertyEditors/ColorEditor.d.ts +12 -0
- package/dist/playground/components/PropertyEditors/ColorEditor.d.ts.map +1 -0
- package/dist/playground/components/PropertyEditors/ColorEditor.js +62 -0
- package/dist/playground/components/PropertyEditors/ColorEditor.js.map +1 -0
- package/dist/playground/components/PropertyEditors/IconEditor.d.ts +12 -0
- package/dist/playground/components/PropertyEditors/IconEditor.d.ts.map +1 -0
- package/dist/playground/components/PropertyEditors/IconEditor.js +123 -0
- package/dist/playground/components/PropertyEditors/IconEditor.js.map +1 -0
- package/dist/playground/components/PropertyEditors/NumberEditor.d.ts +15 -0
- package/dist/playground/components/PropertyEditors/NumberEditor.d.ts.map +1 -0
- package/dist/playground/components/PropertyEditors/NumberEditor.js +46 -0
- package/dist/playground/components/PropertyEditors/NumberEditor.js.map +1 -0
- package/dist/playground/components/PropertyEditors/PropertyEditors.module.css +432 -0
- package/dist/playground/components/PropertyEditors/SelectEditor.d.ts +19 -0
- package/dist/playground/components/PropertyEditors/SelectEditor.d.ts.map +1 -0
- package/dist/playground/components/PropertyEditors/SelectEditor.js +17 -0
- package/dist/playground/components/PropertyEditors/SelectEditor.js.map +1 -0
- package/dist/playground/components/PropertyEditors/SpacingEditor.d.ts +19 -0
- package/dist/playground/components/PropertyEditors/SpacingEditor.d.ts.map +1 -0
- package/dist/playground/components/PropertyEditors/SpacingEditor.js +162 -0
- package/dist/playground/components/PropertyEditors/SpacingEditor.js.map +1 -0
- package/dist/playground/components/PropertyEditors/SpacingEditor.module.css +214 -0
- package/dist/playground/components/PropertyEditors/TextEditor.d.ts +14 -0
- package/dist/playground/components/PropertyEditors/TextEditor.d.ts.map +1 -0
- package/dist/playground/components/PropertyEditors/TextEditor.js +38 -0
- package/dist/playground/components/PropertyEditors/TextEditor.js.map +1 -0
- package/dist/playground/components/PropertyEditors/TokenEditor.d.ts +23 -0
- package/dist/playground/components/PropertyEditors/TokenEditor.d.ts.map +1 -0
- package/dist/playground/components/PropertyEditors/TokenEditor.js +50 -0
- package/dist/playground/components/PropertyEditors/TokenEditor.js.map +1 -0
- package/dist/playground/components/PropertyEditors/index.d.ts +20 -0
- package/dist/playground/components/PropertyEditors/index.d.ts.map +1 -0
- package/dist/playground/components/PropertyEditors/index.js +12 -0
- package/dist/playground/components/PropertyEditors/index.js.map +1 -0
- package/dist/playground/components/TreeView/TreeView.d.ts +10 -0
- package/dist/playground/components/TreeView/TreeView.d.ts.map +1 -0
- package/dist/playground/components/TreeView/TreeView.js +146 -0
- package/dist/playground/components/TreeView/TreeView.js.map +1 -0
- package/dist/playground/components/TreeView/TreeView.module.css +214 -0
- package/dist/playground/components/TreeView/index.d.ts +3 -0
- package/dist/playground/components/TreeView/index.d.ts.map +1 -0
- package/dist/playground/components/TreeView/index.js +2 -0
- package/dist/playground/components/TreeView/index.js.map +1 -0
- package/dist/playground/config/propertyDefinitions.d.ts +73 -0
- package/dist/playground/config/propertyDefinitions.d.ts.map +1 -0
- package/dist/playground/config/propertyDefinitions.js +809 -0
- package/dist/playground/config/propertyDefinitions.js.map +1 -0
- package/dist/playground/hooks/useKeyboardShortcuts.d.ts +38 -0
- package/dist/playground/hooks/useKeyboardShortcuts.d.ts.map +1 -0
- package/dist/playground/hooks/useKeyboardShortcuts.js +191 -0
- package/dist/playground/hooks/useKeyboardShortcuts.js.map +1 -0
- package/dist/playground/index.d.ts +21 -0
- package/dist/playground/index.d.ts.map +1 -0
- package/dist/playground/index.js +23 -0
- package/dist/playground/index.js.map +1 -0
- package/dist/playground/services/CodeGenerator.d.ts +73 -0
- package/dist/playground/services/CodeGenerator.d.ts.map +1 -0
- package/dist/playground/services/CodeGenerator.js +359 -0
- package/dist/playground/services/CodeGenerator.js.map +1 -0
- package/dist/playground/services/DragDropManager.d.ts +95 -0
- package/dist/playground/services/DragDropManager.d.ts.map +1 -0
- package/dist/playground/services/DragDropManager.js +408 -0
- package/dist/playground/services/DragDropManager.js.map +1 -0
- package/dist/playground/services/StoryParser.d.ts +73 -0
- package/dist/playground/services/StoryParser.d.ts.map +1 -0
- package/dist/playground/services/StoryParser.js +419 -0
- package/dist/playground/services/StoryParser.js.map +1 -0
- package/dist/playground/store/playgroundStore.d.ts +86 -0
- package/dist/playground/store/playgroundStore.d.ts.map +1 -0
- package/dist/playground/store/playgroundStore.js +337 -0
- package/dist/playground/store/playgroundStore.js.map +1 -0
- package/dist/playground/stories/PlaygroundDragDrop.stories.d.ts +13 -0
- package/dist/playground/stories/PlaygroundDragDrop.stories.d.ts.map +1 -0
- package/dist/playground/stories/PlaygroundDragDrop.stories.js +227 -0
- package/dist/playground/stories/PlaygroundDragDrop.stories.js.map +1 -0
- package/dist/playground/stories/PlaygroundPhase4.stories.d.ts +13 -0
- package/dist/playground/stories/PlaygroundPhase4.stories.d.ts.map +1 -0
- package/dist/playground/stories/PlaygroundPhase4.stories.js +334 -0
- package/dist/playground/stories/PlaygroundPhase4.stories.js.map +1 -0
- package/dist/playground/stories/PlaygroundPhase5.stories.d.ts +14 -0
- package/dist/playground/stories/PlaygroundPhase5.stories.d.ts.map +1 -0
- package/dist/playground/stories/PlaygroundPhase5.stories.js +512 -0
- package/dist/playground/stories/PlaygroundPhase5.stories.js.map +1 -0
- package/dist/playground/stories/PlaygroundProperties.stories.d.ts +13 -0
- package/dist/playground/stories/PlaygroundProperties.stories.d.ts.map +1 -0
- package/dist/playground/stories/PlaygroundProperties.stories.js +342 -0
- package/dist/playground/stories/PlaygroundProperties.stories.js.map +1 -0
- package/dist/playground/types/index.d.ts +251 -0
- package/dist/playground/types/index.d.ts.map +1 -0
- package/dist/playground/types/index.js +5 -0
- package/dist/playground/types/index.js.map +1 -0
- package/dist/scripts/verify-framework-adapters.js +105 -0
- package/dist/story-generator/componentBlacklist.js.map +1 -0
- package/dist/story-generator/componentDiscovery.js.map +1 -0
- package/dist/story-generator/configLoader.js.map +1 -0
- package/dist/story-generator/considerationsLoader.js.map +1 -0
- package/dist/story-generator/documentation-sources.js.map +1 -0
- package/dist/story-generator/documentationLoader.js.map +1 -0
- package/dist/story-generator/dynamicPackageDiscovery.js.map +1 -0
- package/dist/story-generator/enhancedComponentDiscovery.js.map +1 -0
- package/dist/story-generator/generateStory.js.map +1 -0
- package/dist/story-generator/gitignoreManager.js.map +1 -0
- package/dist/story-generator/inMemoryStoryService.d.ts +89 -0
- package/dist/story-generator/inMemoryStoryService.d.ts.map +1 -0
- package/dist/story-generator/inMemoryStoryService.js +128 -0
- package/dist/story-generator/inMemoryStoryService.js.map +1 -0
- package/dist/story-generator/logger.js.map +1 -0
- package/dist/story-generator/postProcessStory.js.map +1 -0
- package/dist/story-generator/postgresStoryService.d.ts +56 -0
- package/dist/story-generator/postgresStoryService.d.ts.map +1 -0
- package/dist/story-generator/postgresStoryService.js +240 -0
- package/dist/story-generator/productionGitignoreManager.d.ts +91 -0
- package/dist/story-generator/productionGitignoreManager.d.ts.map +1 -0
- package/dist/story-generator/productionGitignoreManager.js +340 -0
- package/dist/story-generator/productionGitignoreManager.js.map +1 -0
- package/dist/story-generator/promptGenerator.js.map +1 -0
- package/dist/story-generator/providerPresets.d.ts +54 -0
- package/dist/story-generator/providerPresets.d.ts.map +1 -0
- package/dist/story-generator/providerPresets.js +214 -0
- package/dist/story-generator/storyHistory.js.map +1 -0
- package/dist/story-generator/storyServiceFactory.d.ts +22 -0
- package/dist/story-generator/storyServiceFactory.d.ts.map +1 -0
- package/dist/story-generator/storyServiceFactory.js +97 -0
- package/dist/story-generator/storyServiceInterface.d.ts +85 -0
- package/dist/story-generator/storyServiceInterface.d.ts.map +1 -0
- package/dist/story-generator/storyServiceInterface.js +5 -0
- package/dist/story-generator/storySync.d.ts +68 -0
- package/dist/story-generator/storySync.d.ts.map +1 -0
- package/dist/story-generator/storySync.js +201 -0
- package/dist/story-generator/storySync.js.map +1 -0
- package/dist/story-generator/storyTracker.js.map +1 -0
- package/dist/story-generator/storyValidator.js.map +1 -0
- package/dist/story-generator/test_validation.d.ts +2 -0
- package/dist/story-generator/test_validation.d.ts.map +1 -0
- package/dist/story-generator/test_validation.js +51 -0
- package/dist/story-generator/universalDesignSystemAdapter.js.map +1 -0
- package/dist/story-generator/urlRedirectService.js.map +1 -0
- package/dist/story-generator/validateStory.js.map +1 -0
- package/dist/story-ui.config.js.map +1 -0
- package/dist/story-ui.config.loader.d.ts +36 -0
- package/dist/story-ui.config.loader.d.ts.map +1 -0
- package/dist/story-ui.config.loader.js +205 -0
- package/dist/story-ui.config.loader.js.map +1 -0
- package/dist/temp/package/templates/StoryUI/StoryUIPanel.js +807 -0
- package/dist/temp/package/templates/StoryUI/StoryUIPanel.stories.js +37 -0
- package/dist/temp/package/templates/StoryUI/index.js +2 -0
- package/dist/templates/StoryUI/StoryUIPanel.js.map +1 -0
- package/dist/templates/StoryUI/StoryUIPanel.stories.js.map +1 -0
- package/dist/templates/StoryUI/index.js.map +1 -0
- package/dist/templates/StoryUI/manager.d.ts +14 -0
- package/dist/templates/StoryUI/manager.d.ts.map +1 -0
- package/dist/templates/production-app/src/App.d.ts +10 -0
- package/dist/templates/production-app/src/App.d.ts.map +1 -0
- package/dist/templates/production-app/src/App.js +653 -0
- package/dist/templates/production-app/src/LivePreviewRenderer.d.ts +24 -0
- package/dist/templates/production-app/src/LivePreviewRenderer.d.ts.map +1 -0
- package/dist/templates/production-app/src/LivePreviewRenderer.js +199 -0
- package/dist/templates/production-app/src/componentRegistry.d.ts +20 -0
- package/dist/templates/production-app/src/componentRegistry.d.ts.map +1 -0
- package/dist/templates/production-app/src/componentRegistry.js +316 -0
- package/dist/templates/production-app/src/main.d.ts +9 -0
- package/dist/templates/production-app/src/main.d.ts.map +1 -0
- package/dist/templates/production-app/src/main.js +18 -0
- package/dist/templates/production-app/vite.config.d.ts +3 -0
- package/dist/templates/production-app/vite.config.d.ts.map +1 -0
- package/dist/templates/production-app/vite.config.js +71 -0
- package/dist/test-storybooks/angular-material-storybook/src/main.js +66 -0
- package/dist/test-storybooks/chakra-storybook/vite.config.js +6 -0
- package/dist/test-storybooks/mantine-storybook/vite.config.js +93 -0
- package/dist/test-storybooks/web-components-shoelace/vite.config.js +9 -0
- package/dist/tsconfig.tsbuildinfo +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* LayoutHelpers - Helper components for design systems lacking native layout components
|
|
3
|
+
* These provide consistent layout primitives across different design systems
|
|
4
|
+
*/
|
|
5
|
+
import React from 'react';
|
|
6
|
+
import type { CSSProperties, ReactNode } from 'react';
|
|
7
|
+
interface BaseLayoutProps {
|
|
8
|
+
children?: ReactNode;
|
|
9
|
+
className?: string;
|
|
10
|
+
style?: CSSProperties;
|
|
11
|
+
as?: keyof React.JSX.IntrinsicElements;
|
|
12
|
+
}
|
|
13
|
+
interface SpacingProps {
|
|
14
|
+
p?: string | number;
|
|
15
|
+
pt?: string | number;
|
|
16
|
+
pr?: string | number;
|
|
17
|
+
pb?: string | number;
|
|
18
|
+
pl?: string | number;
|
|
19
|
+
px?: string | number;
|
|
20
|
+
py?: string | number;
|
|
21
|
+
m?: string | number;
|
|
22
|
+
mt?: string | number;
|
|
23
|
+
mr?: string | number;
|
|
24
|
+
mb?: string | number;
|
|
25
|
+
ml?: string | number;
|
|
26
|
+
mx?: string | number;
|
|
27
|
+
my?: string | number;
|
|
28
|
+
}
|
|
29
|
+
interface FlexStyleProps {
|
|
30
|
+
direction?: 'row' | 'column' | 'row-reverse' | 'column-reverse';
|
|
31
|
+
justify?: 'start' | 'end' | 'center' | 'between' | 'around' | 'evenly';
|
|
32
|
+
align?: 'start' | 'end' | 'center' | 'stretch' | 'baseline';
|
|
33
|
+
wrap?: 'nowrap' | 'wrap' | 'wrap-reverse';
|
|
34
|
+
gap?: string | number;
|
|
35
|
+
flex?: string | number;
|
|
36
|
+
}
|
|
37
|
+
interface GridProps {
|
|
38
|
+
columns?: number | string;
|
|
39
|
+
rows?: number | string;
|
|
40
|
+
gap?: string | number;
|
|
41
|
+
columnGap?: string | number;
|
|
42
|
+
rowGap?: string | number;
|
|
43
|
+
areas?: string;
|
|
44
|
+
autoFlow?: 'row' | 'column' | 'dense' | 'row dense' | 'column dense';
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Box - Basic container with spacing utilities
|
|
48
|
+
*/
|
|
49
|
+
export interface BoxProps extends BaseLayoutProps, SpacingProps {
|
|
50
|
+
display?: CSSProperties['display'];
|
|
51
|
+
width?: string | number;
|
|
52
|
+
height?: string | number;
|
|
53
|
+
minWidth?: string | number;
|
|
54
|
+
minHeight?: string | number;
|
|
55
|
+
maxWidth?: string | number;
|
|
56
|
+
maxHeight?: string | number;
|
|
57
|
+
overflow?: CSSProperties['overflow'];
|
|
58
|
+
position?: CSSProperties['position'];
|
|
59
|
+
background?: string;
|
|
60
|
+
border?: string;
|
|
61
|
+
borderRadius?: string | number;
|
|
62
|
+
boxShadow?: string;
|
|
63
|
+
}
|
|
64
|
+
export declare const Box: React.FC<BoxProps>;
|
|
65
|
+
/**
|
|
66
|
+
* Flex - Flexbox container
|
|
67
|
+
*/
|
|
68
|
+
export interface FlexProps extends BaseLayoutProps, SpacingProps, FlexStyleProps {
|
|
69
|
+
}
|
|
70
|
+
export declare const Flex: React.FC<FlexProps>;
|
|
71
|
+
/**
|
|
72
|
+
* Stack - Vertical flex container
|
|
73
|
+
*/
|
|
74
|
+
export interface StackProps extends Omit<FlexProps, 'direction'> {
|
|
75
|
+
spacing?: string | number;
|
|
76
|
+
}
|
|
77
|
+
export declare const Stack: React.FC<StackProps>;
|
|
78
|
+
/**
|
|
79
|
+
* HStack - Horizontal flex container
|
|
80
|
+
*/
|
|
81
|
+
export interface HStackProps extends Omit<FlexProps, 'direction'> {
|
|
82
|
+
spacing?: string | number;
|
|
83
|
+
}
|
|
84
|
+
export declare const HStack: React.FC<HStackProps>;
|
|
85
|
+
/**
|
|
86
|
+
* Grid - CSS Grid container
|
|
87
|
+
*/
|
|
88
|
+
export interface GridContainerProps extends BaseLayoutProps, SpacingProps, GridProps {
|
|
89
|
+
}
|
|
90
|
+
export declare const Grid: React.FC<GridContainerProps>;
|
|
91
|
+
/**
|
|
92
|
+
* Center - Centers content both horizontally and vertically
|
|
93
|
+
*/
|
|
94
|
+
export interface CenterProps extends BaseLayoutProps, SpacingProps {
|
|
95
|
+
inline?: boolean;
|
|
96
|
+
}
|
|
97
|
+
export declare const Center: React.FC<CenterProps>;
|
|
98
|
+
/**
|
|
99
|
+
* Container - Centered container with max width
|
|
100
|
+
*/
|
|
101
|
+
export interface ContainerProps extends BaseLayoutProps, SpacingProps {
|
|
102
|
+
maxWidth?: 'sm' | 'md' | 'lg' | 'xl' | '2xl' | string | number;
|
|
103
|
+
centerContent?: boolean;
|
|
104
|
+
}
|
|
105
|
+
export declare const Container: React.FC<ContainerProps>;
|
|
106
|
+
/**
|
|
107
|
+
* Spacer - Creates space between elements
|
|
108
|
+
*/
|
|
109
|
+
export interface SpacerProps {
|
|
110
|
+
size?: string | number;
|
|
111
|
+
axis?: 'horizontal' | 'vertical';
|
|
112
|
+
flex?: boolean;
|
|
113
|
+
}
|
|
114
|
+
export declare const Spacer: React.FC<SpacerProps>;
|
|
115
|
+
/**
|
|
116
|
+
* Divider - Visual separator
|
|
117
|
+
*/
|
|
118
|
+
export interface DividerProps {
|
|
119
|
+
orientation?: 'horizontal' | 'vertical';
|
|
120
|
+
color?: string;
|
|
121
|
+
thickness?: string | number;
|
|
122
|
+
spacing?: string | number;
|
|
123
|
+
style?: CSSProperties;
|
|
124
|
+
}
|
|
125
|
+
export declare const Divider: React.FC<DividerProps>;
|
|
126
|
+
/**
|
|
127
|
+
* AspectRatio - Maintains aspect ratio for content
|
|
128
|
+
*/
|
|
129
|
+
export interface AspectRatioProps extends BaseLayoutProps {
|
|
130
|
+
ratio?: number | string;
|
|
131
|
+
}
|
|
132
|
+
export declare const AspectRatio: React.FC<AspectRatioProps>;
|
|
133
|
+
export {};
|
|
134
|
+
//# sourceMappingURL=LayoutHelpers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LayoutHelpers.d.ts","sourceRoot":"","sources":["../../../../playground/components/LayoutHelpers/LayoutHelpers.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,254 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* LayoutHelpers - Helper components for design systems lacking native layout components
|
|
4
|
+
* These provide consistent layout primitives across different design systems
|
|
5
|
+
*/
|
|
6
|
+
import React from 'react';
|
|
7
|
+
// Utility to convert spacing props to CSS
|
|
8
|
+
const getSpacingStyles = (props) => {
|
|
9
|
+
const styles = {};
|
|
10
|
+
// Padding
|
|
11
|
+
if (props.p !== undefined)
|
|
12
|
+
styles.padding = props.p;
|
|
13
|
+
if (props.pt !== undefined)
|
|
14
|
+
styles.paddingTop = props.pt;
|
|
15
|
+
if (props.pr !== undefined)
|
|
16
|
+
styles.paddingRight = props.pr;
|
|
17
|
+
if (props.pb !== undefined)
|
|
18
|
+
styles.paddingBottom = props.pb;
|
|
19
|
+
if (props.pl !== undefined)
|
|
20
|
+
styles.paddingLeft = props.pl;
|
|
21
|
+
if (props.px !== undefined) {
|
|
22
|
+
styles.paddingLeft = props.px;
|
|
23
|
+
styles.paddingRight = props.px;
|
|
24
|
+
}
|
|
25
|
+
if (props.py !== undefined) {
|
|
26
|
+
styles.paddingTop = props.py;
|
|
27
|
+
styles.paddingBottom = props.py;
|
|
28
|
+
}
|
|
29
|
+
// Margin
|
|
30
|
+
if (props.m !== undefined)
|
|
31
|
+
styles.margin = props.m;
|
|
32
|
+
if (props.mt !== undefined)
|
|
33
|
+
styles.marginTop = props.mt;
|
|
34
|
+
if (props.mr !== undefined)
|
|
35
|
+
styles.marginRight = props.mr;
|
|
36
|
+
if (props.mb !== undefined)
|
|
37
|
+
styles.marginBottom = props.mb;
|
|
38
|
+
if (props.ml !== undefined)
|
|
39
|
+
styles.marginLeft = props.ml;
|
|
40
|
+
if (props.mx !== undefined) {
|
|
41
|
+
styles.marginLeft = props.mx;
|
|
42
|
+
styles.marginRight = props.mx;
|
|
43
|
+
}
|
|
44
|
+
if (props.my !== undefined) {
|
|
45
|
+
styles.marginTop = props.my;
|
|
46
|
+
styles.marginBottom = props.my;
|
|
47
|
+
}
|
|
48
|
+
return styles;
|
|
49
|
+
};
|
|
50
|
+
// Utility to convert flex props to CSS
|
|
51
|
+
const getFlexStyles = (props) => {
|
|
52
|
+
const styles = {
|
|
53
|
+
display: 'flex'
|
|
54
|
+
};
|
|
55
|
+
if (props.direction)
|
|
56
|
+
styles.flexDirection = props.direction;
|
|
57
|
+
if (props.gap)
|
|
58
|
+
styles.gap = props.gap;
|
|
59
|
+
if (props.wrap)
|
|
60
|
+
styles.flexWrap = props.wrap;
|
|
61
|
+
if (props.flex)
|
|
62
|
+
styles.flex = props.flex;
|
|
63
|
+
// Map justify values
|
|
64
|
+
if (props.justify) {
|
|
65
|
+
const justifyMap = {
|
|
66
|
+
'start': 'flex-start',
|
|
67
|
+
'end': 'flex-end',
|
|
68
|
+
'center': 'center',
|
|
69
|
+
'between': 'space-between',
|
|
70
|
+
'around': 'space-around',
|
|
71
|
+
'evenly': 'space-evenly'
|
|
72
|
+
};
|
|
73
|
+
styles.justifyContent = justifyMap[props.justify];
|
|
74
|
+
}
|
|
75
|
+
// Map align values
|
|
76
|
+
if (props.align) {
|
|
77
|
+
const alignMap = {
|
|
78
|
+
'start': 'flex-start',
|
|
79
|
+
'end': 'flex-end',
|
|
80
|
+
'center': 'center',
|
|
81
|
+
'stretch': 'stretch',
|
|
82
|
+
'baseline': 'baseline'
|
|
83
|
+
};
|
|
84
|
+
styles.alignItems = alignMap[props.align];
|
|
85
|
+
}
|
|
86
|
+
return styles;
|
|
87
|
+
};
|
|
88
|
+
// Utility to convert grid props to CSS
|
|
89
|
+
const getGridStyles = (props) => {
|
|
90
|
+
const styles = {
|
|
91
|
+
display: 'grid'
|
|
92
|
+
};
|
|
93
|
+
if (props.columns) {
|
|
94
|
+
styles.gridTemplateColumns = typeof props.columns === 'number'
|
|
95
|
+
? `repeat(${props.columns}, 1fr)`
|
|
96
|
+
: props.columns;
|
|
97
|
+
}
|
|
98
|
+
if (props.rows) {
|
|
99
|
+
styles.gridTemplateRows = typeof props.rows === 'number'
|
|
100
|
+
? `repeat(${props.rows}, 1fr)`
|
|
101
|
+
: props.rows;
|
|
102
|
+
}
|
|
103
|
+
if (props.gap)
|
|
104
|
+
styles.gap = props.gap;
|
|
105
|
+
if (props.columnGap)
|
|
106
|
+
styles.columnGap = props.columnGap;
|
|
107
|
+
if (props.rowGap)
|
|
108
|
+
styles.rowGap = props.rowGap;
|
|
109
|
+
if (props.areas)
|
|
110
|
+
styles.gridTemplateAreas = props.areas;
|
|
111
|
+
if (props.autoFlow)
|
|
112
|
+
styles.gridAutoFlow = props.autoFlow;
|
|
113
|
+
return styles;
|
|
114
|
+
};
|
|
115
|
+
export const Box = ({ children, className, style, as: Component = 'div', display, width, height, minWidth, minHeight, maxWidth, maxHeight, overflow, position, background, border, borderRadius, boxShadow, ...spacingProps }) => {
|
|
116
|
+
const computedStyles = {
|
|
117
|
+
...getSpacingStyles(spacingProps),
|
|
118
|
+
display,
|
|
119
|
+
width,
|
|
120
|
+
height,
|
|
121
|
+
minWidth,
|
|
122
|
+
minHeight,
|
|
123
|
+
maxWidth,
|
|
124
|
+
maxHeight,
|
|
125
|
+
overflow,
|
|
126
|
+
position,
|
|
127
|
+
background,
|
|
128
|
+
border,
|
|
129
|
+
borderRadius,
|
|
130
|
+
boxShadow,
|
|
131
|
+
...style
|
|
132
|
+
};
|
|
133
|
+
return React.createElement(Component, {
|
|
134
|
+
className,
|
|
135
|
+
style: computedStyles,
|
|
136
|
+
'data-helper': 'Box'
|
|
137
|
+
}, children);
|
|
138
|
+
};
|
|
139
|
+
export const Flex = ({ children, className, style, as: Component = 'div', ...props }) => {
|
|
140
|
+
const { direction, justify, align, wrap, gap, flex, ...spacingProps } = props;
|
|
141
|
+
const computedStyles = {
|
|
142
|
+
...getSpacingStyles(spacingProps),
|
|
143
|
+
...getFlexStyles({ direction, justify, align, wrap, gap, flex }),
|
|
144
|
+
...style
|
|
145
|
+
};
|
|
146
|
+
return React.createElement(Component, {
|
|
147
|
+
className,
|
|
148
|
+
style: computedStyles,
|
|
149
|
+
'data-helper': 'Flex'
|
|
150
|
+
}, children);
|
|
151
|
+
};
|
|
152
|
+
export const Stack = ({ spacing, gap = spacing, ...props }) => {
|
|
153
|
+
return _jsx(Flex, { ...props, direction: "column", gap: gap, "data-helper": "Stack" });
|
|
154
|
+
};
|
|
155
|
+
export const HStack = ({ spacing, gap = spacing, ...props }) => {
|
|
156
|
+
return _jsx(Flex, { ...props, direction: "row", gap: gap, "data-helper": "HStack" });
|
|
157
|
+
};
|
|
158
|
+
export const Grid = ({ children, className, style, as: Component = 'div', columns, rows, gap, columnGap, rowGap, areas, autoFlow, ...spacingProps }) => {
|
|
159
|
+
const computedStyles = {
|
|
160
|
+
...getSpacingStyles(spacingProps),
|
|
161
|
+
...getGridStyles({ columns, rows, gap, columnGap, rowGap, areas, autoFlow }),
|
|
162
|
+
...style
|
|
163
|
+
};
|
|
164
|
+
return React.createElement(Component, {
|
|
165
|
+
className,
|
|
166
|
+
style: computedStyles,
|
|
167
|
+
'data-helper': 'Grid'
|
|
168
|
+
}, children);
|
|
169
|
+
};
|
|
170
|
+
export const Center = ({ children, className, style, inline, ...spacingProps }) => {
|
|
171
|
+
const computedStyles = {
|
|
172
|
+
...getSpacingStyles(spacingProps),
|
|
173
|
+
display: inline ? 'inline-flex' : 'flex',
|
|
174
|
+
alignItems: 'center',
|
|
175
|
+
justifyContent: 'center',
|
|
176
|
+
...style
|
|
177
|
+
};
|
|
178
|
+
return (_jsx("div", { className: className, style: computedStyles, "data-helper": "Center", children: children }));
|
|
179
|
+
};
|
|
180
|
+
export const Container = ({ children, className, style, maxWidth = 'lg', centerContent, ...spacingProps }) => {
|
|
181
|
+
const maxWidthMap = {
|
|
182
|
+
'sm': '640px',
|
|
183
|
+
'md': '768px',
|
|
184
|
+
'lg': '1024px',
|
|
185
|
+
'xl': '1280px',
|
|
186
|
+
'2xl': '1536px'
|
|
187
|
+
};
|
|
188
|
+
const computedMaxWidth = typeof maxWidth === 'string' && maxWidth in maxWidthMap
|
|
189
|
+
? maxWidthMap[maxWidth]
|
|
190
|
+
: maxWidth;
|
|
191
|
+
const computedStyles = {
|
|
192
|
+
...getSpacingStyles(spacingProps),
|
|
193
|
+
width: '100%',
|
|
194
|
+
maxWidth: computedMaxWidth,
|
|
195
|
+
marginLeft: 'auto',
|
|
196
|
+
marginRight: 'auto',
|
|
197
|
+
...(centerContent && {
|
|
198
|
+
display: 'flex',
|
|
199
|
+
flexDirection: 'column',
|
|
200
|
+
alignItems: 'center',
|
|
201
|
+
justifyContent: 'center'
|
|
202
|
+
}),
|
|
203
|
+
...style
|
|
204
|
+
};
|
|
205
|
+
return (_jsx("div", { className: className, style: computedStyles, "data-helper": "Container", children: children }));
|
|
206
|
+
};
|
|
207
|
+
export const Spacer = ({ size = '1rem', axis = 'vertical', flex }) => {
|
|
208
|
+
const style = flex
|
|
209
|
+
? { flex: 1 }
|
|
210
|
+
: axis === 'horizontal'
|
|
211
|
+
? { width: size }
|
|
212
|
+
: { height: size };
|
|
213
|
+
return _jsx("div", { style: style, "data-helper": "Spacer", "aria-hidden": "true" });
|
|
214
|
+
};
|
|
215
|
+
export const Divider = ({ orientation = 'horizontal', color = '#e5e7eb', thickness = '1px', spacing = '1rem', style }) => {
|
|
216
|
+
const computedStyles = {
|
|
217
|
+
backgroundColor: color,
|
|
218
|
+
...(orientation === 'horizontal' ? {
|
|
219
|
+
width: '100%',
|
|
220
|
+
height: thickness,
|
|
221
|
+
marginTop: spacing,
|
|
222
|
+
marginBottom: spacing
|
|
223
|
+
} : {
|
|
224
|
+
width: thickness,
|
|
225
|
+
height: '100%',
|
|
226
|
+
marginLeft: spacing,
|
|
227
|
+
marginRight: spacing
|
|
228
|
+
}),
|
|
229
|
+
...style
|
|
230
|
+
};
|
|
231
|
+
return _jsx("div", { style: computedStyles, "data-helper": "Divider", "aria-hidden": "true" });
|
|
232
|
+
};
|
|
233
|
+
export const AspectRatio = ({ children, className, style, ratio = 1 }) => {
|
|
234
|
+
// Parse ratio string if needed
|
|
235
|
+
const numericRatio = typeof ratio === 'string'
|
|
236
|
+
? ratio.includes(':')
|
|
237
|
+
? parseFloat(ratio.split(':')[0]) / parseFloat(ratio.split(':')[1])
|
|
238
|
+
: parseFloat(ratio)
|
|
239
|
+
: ratio;
|
|
240
|
+
const paddingBottom = `${(1 / numericRatio) * 100}%`;
|
|
241
|
+
return (_jsx("div", { className: className, style: {
|
|
242
|
+
position: 'relative',
|
|
243
|
+
width: '100%',
|
|
244
|
+
paddingBottom,
|
|
245
|
+
...style
|
|
246
|
+
}, "data-helper": "AspectRatio", children: _jsx("div", { style: {
|
|
247
|
+
position: 'absolute',
|
|
248
|
+
top: 0,
|
|
249
|
+
left: 0,
|
|
250
|
+
right: 0,
|
|
251
|
+
bottom: 0
|
|
252
|
+
}, children: children }) }));
|
|
253
|
+
};
|
|
254
|
+
//# sourceMappingURL=LayoutHelpers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LayoutHelpers.js","sourceRoot":"","sources":["../../../../playground/components/LayoutHelpers/LayoutHelpers.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export { Box, Flex, Stack, HStack, Grid, Center, Container, Spacer, Divider, AspectRatio } from './LayoutHelpers';
|
|
2
|
+
export type { BoxProps, FlexProps, StackProps, HStackProps, GridContainerProps, CenterProps, ContainerProps, SpacerProps, DividerProps, AspectRatioProps } from './LayoutHelpers';
|
|
3
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../playground/components/LayoutHelpers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,GAAG,EACH,IAAI,EACJ,KAAK,EACL,MAAM,EACN,IAAI,EACJ,MAAM,EACN,SAAS,EACT,MAAM,EACN,OAAO,EACP,WAAW,EACZ,MAAM,iBAAiB,CAAC;AAEzB,YAAY,EACV,QAAQ,EACR,SAAS,EACT,UAAU,EACV,WAAW,EACX,kBAAkB,EAClB,WAAW,EACX,cAAc,EACd,WAAW,EACX,YAAY,EACZ,gBAAgB,EACjB,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../playground/components/LayoutHelpers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,GAAG,EACH,IAAI,EACJ,KAAK,EACL,MAAM,EACN,IAAI,EACJ,MAAM,EACN,SAAS,EACT,MAAM,EACN,OAAO,EACP,WAAW,EACZ,MAAM,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Playground - Main component that orchestrates the visual builder
|
|
3
|
+
*/
|
|
4
|
+
import React from 'react';
|
|
5
|
+
export interface PlaygroundProps {
|
|
6
|
+
initialMode?: 'ai' | 'edit' | 'code' | 'preview';
|
|
7
|
+
onReady?: () => void;
|
|
8
|
+
}
|
|
9
|
+
export declare const Playground: React.FC<PlaygroundProps>;
|
|
10
|
+
//# sourceMappingURL=Playground.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Playground.d.ts","sourceRoot":"","sources":["../../../../playground/components/Playground/Playground.tsx"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAmD,MAAM,OAAO,CAAC;AA+BxE,MAAM,WAAW,eAAe;IAC9B,WAAW,CAAC,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IACjD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAwShD,CAAC"}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
/**
|
|
3
|
+
* Playground - Main component that orchestrates the visual builder
|
|
4
|
+
*/
|
|
5
|
+
import { useState, useRef, useEffect, useCallback } from 'react';
|
|
6
|
+
import { DndContext, DragOverlay, closestCenter, KeyboardSensor, PointerSensor, useSensor, useSensors } from '@dnd-kit/core';
|
|
7
|
+
import { sortableKeyboardCoordinates, } from '@dnd-kit/sortable';
|
|
8
|
+
import { Canvas } from '../Canvas/Canvas';
|
|
9
|
+
import { AIAssistant } from '../AIAssistant/AIAssistant';
|
|
10
|
+
import { ComponentPalette } from '../ComponentPalette/ComponentPalette';
|
|
11
|
+
import { PropertiesPanel } from '../PropertiesPanel/PropertiesPanel';
|
|
12
|
+
import { TreeView } from '../TreeView/TreeView';
|
|
13
|
+
import { CodeView } from '../CodeView/CodeView';
|
|
14
|
+
import { ExportDialog } from '../ExportDialog/ExportDialog';
|
|
15
|
+
import { ComponentRenderer } from '../Canvas/ComponentRenderer';
|
|
16
|
+
import { DragDropManager } from '../../services/DragDropManager';
|
|
17
|
+
import { useKeyboardShortcuts } from '../../hooks/useKeyboardShortcuts';
|
|
18
|
+
import styles from './Playground.module.css';
|
|
19
|
+
import { usePlaygroundStore } from '../../store/playgroundStore';
|
|
20
|
+
export const Playground = ({ initialMode = 'ai', onReady }) => {
|
|
21
|
+
const dragDropManagerRef = useRef(null);
|
|
22
|
+
const [exportDialogOpen, setExportDialogOpen] = useState(false);
|
|
23
|
+
const store = usePlaygroundStore();
|
|
24
|
+
const { mode, sidebarTab, setSidebarTab, propertiesPanelOpen, togglePropertiesPanel, canvasZoom, setCanvasZoom, selectedIds, components, draggedItem, selectComponent } = store;
|
|
25
|
+
// Initialize DragDropManager
|
|
26
|
+
useEffect(() => {
|
|
27
|
+
if (!dragDropManagerRef.current) {
|
|
28
|
+
dragDropManagerRef.current = new DragDropManager(store);
|
|
29
|
+
}
|
|
30
|
+
}, [store]);
|
|
31
|
+
// Configure drag sensors
|
|
32
|
+
const sensors = useSensors(useSensor(PointerSensor, {
|
|
33
|
+
activationConstraint: {
|
|
34
|
+
distance: 8,
|
|
35
|
+
},
|
|
36
|
+
}), useSensor(KeyboardSensor, {
|
|
37
|
+
coordinateGetter: sortableKeyboardCoordinates,
|
|
38
|
+
}));
|
|
39
|
+
// Handle drag start
|
|
40
|
+
const handleDragStart = useCallback((event) => {
|
|
41
|
+
const { active } = event;
|
|
42
|
+
// Create dragged item based on what's being dragged
|
|
43
|
+
let draggedItem;
|
|
44
|
+
if (active.data.current?.type === 'component') {
|
|
45
|
+
// Dragging from palette
|
|
46
|
+
draggedItem = {
|
|
47
|
+
type: 'new-component',
|
|
48
|
+
componentType: active.data.current.componentType,
|
|
49
|
+
source: 'palette'
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
else if (active.data.current?.type === 'canvas-component') {
|
|
53
|
+
// Dragging existing component
|
|
54
|
+
const component = components.get(active.id);
|
|
55
|
+
if (component) {
|
|
56
|
+
draggedItem = {
|
|
57
|
+
id: component.id,
|
|
58
|
+
type: 'move-component',
|
|
59
|
+
component,
|
|
60
|
+
source: 'canvas'
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
return;
|
|
69
|
+
}
|
|
70
|
+
dragDropManagerRef.current?.startDrag(draggedItem);
|
|
71
|
+
}, [components]);
|
|
72
|
+
// Handle drag move
|
|
73
|
+
const handleDragMove = useCallback((event) => {
|
|
74
|
+
const { delta, activatorEvent } = event;
|
|
75
|
+
// dnd-kit supplies the original pointer event on activatorEvent for PointerSensor
|
|
76
|
+
const pointerEvent = activatorEvent?.nativeEvent;
|
|
77
|
+
if (pointerEvent && dragDropManagerRef.current) {
|
|
78
|
+
// Forward to DragDropManager for hit testing
|
|
79
|
+
dragDropManagerRef.current.updateDrag(pointerEvent);
|
|
80
|
+
}
|
|
81
|
+
}, []);
|
|
82
|
+
// Handle drag end
|
|
83
|
+
const handleDragEnd = useCallback((event) => {
|
|
84
|
+
const { active, over } = event;
|
|
85
|
+
if (over && dragDropManagerRef.current) {
|
|
86
|
+
// Perform the drop
|
|
87
|
+
const result = dragDropManagerRef.current.endDrag(over.id);
|
|
88
|
+
if (result?.success) {
|
|
89
|
+
// Select the dropped component
|
|
90
|
+
if (result.componentId) {
|
|
91
|
+
selectComponent(result.componentId);
|
|
92
|
+
}
|
|
93
|
+
else if (active.data.current?.type === 'canvas-component') {
|
|
94
|
+
// Existing component was moved, keep it selected
|
|
95
|
+
selectComponent(active.id);
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
else {
|
|
100
|
+
// Cancelled drop
|
|
101
|
+
dragDropManagerRef.current?.cancelDrag();
|
|
102
|
+
}
|
|
103
|
+
}, [selectComponent]);
|
|
104
|
+
// Handle drag cancel
|
|
105
|
+
const handleDragCancel = useCallback((event) => {
|
|
106
|
+
dragDropManagerRef.current?.cancelDrag();
|
|
107
|
+
}, []);
|
|
108
|
+
// Enable keyboard shortcuts
|
|
109
|
+
useKeyboardShortcuts();
|
|
110
|
+
// Get selected component
|
|
111
|
+
const selectedComponent = selectedIds.size === 1
|
|
112
|
+
? components.get(Array.from(selectedIds)[0])
|
|
113
|
+
: null;
|
|
114
|
+
// Render dragged component overlay
|
|
115
|
+
const renderDragOverlay = () => {
|
|
116
|
+
if (!draggedItem)
|
|
117
|
+
return null;
|
|
118
|
+
if (draggedItem.type === 'move-component' && draggedItem.component) {
|
|
119
|
+
return (_jsx("div", { className: styles.dragGhost, children: _jsx(ComponentRenderer, { component: draggedItem.component, isSelected: false, isHovered: false }) }));
|
|
120
|
+
}
|
|
121
|
+
if (draggedItem.type === 'new-component') {
|
|
122
|
+
return (_jsx("div", { className: styles.dragGhost, children: _jsx("div", { className: styles.newComponentGhost, children: draggedItem.componentType }) }));
|
|
123
|
+
}
|
|
124
|
+
return null;
|
|
125
|
+
};
|
|
126
|
+
return (_jsxs(DndContext, { sensors: sensors, collisionDetection: closestCenter, onDragStart: handleDragStart, onDragMove: handleDragMove, onDragEnd: handleDragEnd, onDragCancel: handleDragCancel, children: [_jsxs("div", { className: styles.playground, children: [_jsxs("header", { className: styles.header, children: [_jsx("div", { className: styles.headerLeft, children: _jsx("h1", { className: styles.logo, children: "StoryUI Playground" }) }), _jsx("div", { className: styles.headerCenter, children: _jsxs("div", { className: styles.modeToggle, children: [_jsx("button", { className: `${styles.modeButton} ${mode === 'edit' ? styles.active : ''}`, onClick: () => usePlaygroundStore.getState().setMode('edit'), children: "\u270F\uFE0F Edit" }), _jsx("button", { className: `${styles.modeButton} ${mode === 'preview' ? styles.active : ''}`, onClick: () => usePlaygroundStore.getState().setMode('preview'), children: "\uD83D\uDC41 Preview" }), _jsxs("button", { className: `${styles.modeButton} ${mode === 'code' ? styles.active : ''}`, onClick: () => usePlaygroundStore.getState().setMode('code'), children: ['<>', " Code"] })] }) }), _jsxs("div", { className: styles.headerRight, children: [_jsx("button", { className: styles.exportButton, onClick: () => setExportDialogOpen(true), children: "\uD83D\uDCBE Export" }), _jsxs("div", { className: styles.zoomControls, children: [_jsx("button", { className: styles.zoomButton, onClick: () => setCanvasZoom(canvasZoom - 0.1), disabled: canvasZoom <= 0.25, children: "\u2212" }), _jsxs("span", { className: styles.zoomValue, children: [Math.round(canvasZoom * 100), "%"] }), _jsx("button", { className: styles.zoomButton, onClick: () => setCanvasZoom(canvasZoom + 0.1), disabled: canvasZoom >= 4, children: "+" })] })] })] }), _jsxs("div", { className: styles.main, children: [_jsxs("aside", { className: styles.sidebar, children: [_jsxs("div", { className: styles.sidebarTabs, children: [_jsx("button", { className: `${styles.tab} ${sidebarTab === 'ai' ? styles.activeTab : ''}`, onClick: () => setSidebarTab('ai'), children: "\u2728 AI" }), _jsx("button", { className: `${styles.tab} ${sidebarTab === 'components' ? styles.activeTab : ''}`, onClick: () => setSidebarTab('components'), children: "\uD83E\uDDE9 Components" }), _jsx("button", { className: `${styles.tab} ${sidebarTab === 'structure' ? styles.activeTab : ''}`, onClick: () => setSidebarTab('structure'), children: "\uD83C\uDF33 Structure" })] }), _jsxs("div", { className: styles.sidebarContent, children: [sidebarTab === 'ai' && _jsx(AIAssistant, {}), sidebarTab === 'components' && _jsx(ComponentPalette, {}), sidebarTab === 'structure' && _jsx(TreeView, {})] })] }), _jsx("div", { className: styles.canvasContainer, children: mode === 'code' ? (_jsx(CodeView, { storyName: "PlaygroundStory" })) : (_jsx(Canvas, { onReady: onReady })) }), propertiesPanelOpen && (_jsx("aside", { className: styles.propertiesPanel, children: _jsx(PropertiesPanel, { onClose: togglePropertiesPanel }) }))] }), _jsxs("footer", { className: styles.statusBar, children: [_jsxs("div", { className: styles.statusItem, children: ["\uD83D\uDCE6 ", components.size, " components"] }), _jsxs("div", { className: styles.statusItem, children: ["\u2705 ", selectedIds.size, " selected"] }), _jsxs("div", { className: styles.statusItem, children: ["Mode: ", mode] })] }), _jsx(ExportDialog, { isOpen: exportDialogOpen, onClose: () => setExportDialogOpen(false) })] }), _jsx(DragOverlay, { children: renderDragOverlay() })] }));
|
|
127
|
+
};
|
|
128
|
+
//# sourceMappingURL=Playground.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Playground.js","sourceRoot":"","sources":["../../../../playground/components/Playground/Playground.tsx"],"names":[],"mappings":"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"}
|