@kubuild/editor 0.1.3 → 0.3.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 (173) hide show
  1. package/README.md +106 -0
  2. package/dist/ai/enhance-node.d.ts +100 -0
  3. package/dist/ai/enhance-node.d.ts.map +1 -0
  4. package/dist/ai/generate-page.d.ts +80 -0
  5. package/dist/ai/generate-page.d.ts.map +1 -0
  6. package/dist/ai/index.d.ts +3 -0
  7. package/dist/ai/index.d.ts.map +1 -0
  8. package/dist/components/action-builder/action-branch-editor.d.ts +18 -0
  9. package/dist/components/action-builder/action-branch-editor.d.ts.map +1 -0
  10. package/dist/components/action-builder/action-builder-modal.d.ts +32 -0
  11. package/dist/components/action-builder/action-builder-modal.d.ts.map +1 -0
  12. package/dist/components/action-builder/action-step-form.d.ts +71 -0
  13. package/dist/components/action-builder/action-step-form.d.ts.map +1 -0
  14. package/dist/components/action-builder/index.d.ts +4 -0
  15. package/dist/components/action-builder/index.d.ts.map +1 -0
  16. package/dist/components/ai-chat/ai-chat-panel.d.ts +66 -0
  17. package/dist/components/ai-chat/ai-chat-panel.d.ts.map +1 -0
  18. package/dist/components/ai-chat/index.d.ts +2 -0
  19. package/dist/components/ai-chat/index.d.ts.map +1 -0
  20. package/dist/components/canvas/breadcrumbs.d.ts.map +1 -0
  21. package/dist/components/canvas/canvas-pan-zoom.d.ts +61 -0
  22. package/dist/components/canvas/canvas-pan-zoom.d.ts.map +1 -0
  23. package/dist/components/canvas/canvas.d.ts +63 -0
  24. package/dist/components/canvas/canvas.d.ts.map +1 -0
  25. package/dist/components/canvas/distance-meter.d.ts +27 -0
  26. package/dist/components/canvas/distance-meter.d.ts.map +1 -0
  27. package/dist/components/canvas/floating-badges.d.ts.map +1 -0
  28. package/dist/components/canvas/grid-guidelines-overlay.d.ts +18 -0
  29. package/dist/components/canvas/grid-guidelines-overlay.d.ts.map +1 -0
  30. package/dist/components/canvas/index.d.ts +13 -0
  31. package/dist/components/canvas/index.d.ts.map +1 -0
  32. package/dist/components/canvas/marquee-selection.d.ts +25 -0
  33. package/dist/components/canvas/marquee-selection.d.ts.map +1 -0
  34. package/dist/components/canvas/multi-device-preview.d.ts +30 -0
  35. package/dist/components/canvas/multi-device-preview.d.ts.map +1 -0
  36. package/dist/components/canvas/resize-handles.d.ts +18 -0
  37. package/dist/components/canvas/resize-handles.d.ts.map +1 -0
  38. package/dist/components/canvas/smart-guides.d.ts +37 -0
  39. package/dist/components/canvas/smart-guides.d.ts.map +1 -0
  40. package/dist/components/canvas/spacing-sliders.d.ts +21 -0
  41. package/dist/components/canvas/spacing-sliders.d.ts.map +1 -0
  42. package/dist/components/canvas/viewport-resizer.d.ts +83 -0
  43. package/dist/components/canvas/viewport-resizer.d.ts.map +1 -0
  44. package/dist/components/index.d.ts +10 -0
  45. package/dist/components/index.d.ts.map +1 -0
  46. package/dist/{editor.d.ts → components/layout/editor.d.ts} +12 -1
  47. package/dist/components/layout/editor.d.ts.map +1 -0
  48. package/dist/components/layout/index.d.ts +3 -0
  49. package/dist/components/layout/index.d.ts.map +1 -0
  50. package/dist/components/layout/toolbar.d.ts +17 -0
  51. package/dist/components/layout/toolbar.d.ts.map +1 -0
  52. package/dist/components/modals/asset-manager-modal.d.ts.map +1 -0
  53. package/dist/components/modals/code-viewer-modal.d.ts.map +1 -0
  54. package/dist/components/modals/import-modal.d.ts.map +1 -0
  55. package/dist/components/modals/index.d.ts +4 -0
  56. package/dist/components/modals/index.d.ts.map +1 -0
  57. package/dist/components/panels/action-debugger-panel.d.ts +11 -0
  58. package/dist/components/panels/action-debugger-panel.d.ts.map +1 -0
  59. package/dist/components/panels/action-prop-control.d.ts +30 -0
  60. package/dist/components/panels/action-prop-control.d.ts.map +1 -0
  61. package/dist/components/panels/blocks-panel.d.ts.map +1 -0
  62. package/dist/{component-panel.d.ts → components/panels/component-panel.d.ts} +2 -0
  63. package/dist/components/panels/component-panel.d.ts.map +1 -0
  64. package/dist/components/panels/form-validation-rules-panel.d.ts +27 -0
  65. package/dist/components/panels/form-validation-rules-panel.d.ts.map +1 -0
  66. package/dist/components/panels/index.d.ts +10 -0
  67. package/dist/components/panels/index.d.ts.map +1 -0
  68. package/dist/{inspector-panel.d.ts → components/panels/inspector-panel.d.ts} +7 -1
  69. package/dist/components/panels/inspector-panel.d.ts.map +1 -0
  70. package/dist/{layers-panel.d.ts → components/panels/layers-panel.d.ts} +4 -0
  71. package/dist/components/panels/layers-panel.d.ts.map +1 -0
  72. package/dist/{left-sidebar.d.ts → components/panels/left-sidebar.d.ts} +1 -1
  73. package/dist/components/panels/left-sidebar.d.ts.map +1 -0
  74. package/dist/{traits-panel.d.ts → components/panels/traits-panel.d.ts} +3 -1
  75. package/dist/components/panels/traits-panel.d.ts.map +1 -0
  76. package/dist/components/style-manager/auto-layout-controls.d.ts +24 -0
  77. package/dist/components/style-manager/auto-layout-controls.d.ts.map +1 -0
  78. package/dist/components/style-manager/box-model-editor.d.ts.map +1 -0
  79. package/dist/components/style-manager/color-gradient-picker.d.ts +35 -0
  80. package/dist/components/style-manager/color-gradient-picker.d.ts.map +1 -0
  81. package/dist/components/style-manager/design-tokens-panel.d.ts +30 -0
  82. package/dist/components/style-manager/design-tokens-panel.d.ts.map +1 -0
  83. package/dist/{dimension-sector-controls.d.ts → components/style-manager/dimension-sector-controls.d.ts} +12 -1
  84. package/dist/components/style-manager/dimension-sector-controls.d.ts.map +1 -0
  85. package/dist/components/style-manager/effects-sector-controls.d.ts +52 -0
  86. package/dist/components/style-manager/effects-sector-controls.d.ts.map +1 -0
  87. package/dist/components/style-manager/grid-controls.d.ts +19 -0
  88. package/dist/components/style-manager/grid-controls.d.ts.map +1 -0
  89. package/dist/components/style-manager/index.d.ts +12 -0
  90. package/dist/components/style-manager/index.d.ts.map +1 -0
  91. package/dist/components/style-manager/inheritance-indicator.d.ts +52 -0
  92. package/dist/components/style-manager/inheritance-indicator.d.ts.map +1 -0
  93. package/dist/components/style-manager/motion-sector-controls.d.ts.map +1 -0
  94. package/dist/{style-manager-accordion.d.ts → components/style-manager/style-manager-accordion.d.ts} +10 -0
  95. package/dist/components/style-manager/style-manager-accordion.d.ts.map +1 -0
  96. package/dist/{typography-sector-controls.d.ts → components/style-manager/typography-sector-controls.d.ts} +4 -0
  97. package/dist/components/style-manager/typography-sector-controls.d.ts.map +1 -0
  98. package/dist/components/table-editor/index.d.ts +2 -0
  99. package/dist/components/table-editor/index.d.ts.map +1 -0
  100. package/dist/components/table-editor/table-spreadsheet-editor.d.ts.map +1 -0
  101. package/dist/components/ui/code-highlighter.d.ts.map +1 -0
  102. package/dist/components/ui/icons.d.ts.map +1 -0
  103. package/dist/components/ui/index.d.ts +5 -0
  104. package/dist/components/ui/index.d.ts.map +1 -0
  105. package/dist/components/ui/variable-autocomplete-input.d.ts +42 -0
  106. package/dist/components/ui/variable-autocomplete-input.d.ts.map +1 -0
  107. package/dist/components/ui/variable-picker.d.ts.map +1 -0
  108. package/dist/config/ai-config.d.ts +69 -0
  109. package/dist/config/ai-config.d.ts.map +1 -0
  110. package/dist/{config.d.ts → config/config.d.ts} +72 -4
  111. package/dist/config/config.d.ts.map +1 -0
  112. package/dist/config/index.d.ts +3 -0
  113. package/dist/config/index.d.ts.map +1 -0
  114. package/dist/index.cjs +16649 -5163
  115. package/dist/index.cjs.map +1 -1
  116. package/dist/index.d.ts +3 -23
  117. package/dist/index.d.ts.map +1 -1
  118. package/dist/index.js +16825 -5322
  119. package/dist/index.js.map +1 -1
  120. package/dist/store/index.d.ts +2 -0
  121. package/dist/store/index.d.ts.map +1 -0
  122. package/dist/store/store.d.ts +272 -0
  123. package/dist/store/store.d.ts.map +1 -0
  124. package/dist/utils/ai-context.d.ts +25 -0
  125. package/dist/utils/ai-context.d.ts.map +1 -0
  126. package/dist/utils/document-scanner.d.ts +35 -0
  127. package/dist/utils/document-scanner.d.ts.map +1 -0
  128. package/dist/{export-utils.d.ts → utils/export-utils.d.ts} +8 -0
  129. package/dist/utils/export-utils.d.ts.map +1 -0
  130. package/dist/utils/index.d.ts +4 -0
  131. package/dist/utils/index.d.ts.map +1 -0
  132. package/package.json +8 -6
  133. package/dist/asset-manager-modal.d.ts.map +0 -1
  134. package/dist/blocks-panel.d.ts.map +0 -1
  135. package/dist/box-model-editor.d.ts.map +0 -1
  136. package/dist/breadcrumbs.d.ts.map +0 -1
  137. package/dist/canvas.d.ts +0 -16
  138. package/dist/canvas.d.ts.map +0 -1
  139. package/dist/code-highlighter.d.ts.map +0 -1
  140. package/dist/code-viewer-modal.d.ts.map +0 -1
  141. package/dist/component-panel.d.ts.map +0 -1
  142. package/dist/config.d.ts.map +0 -1
  143. package/dist/dimension-sector-controls.d.ts.map +0 -1
  144. package/dist/editor.d.ts.map +0 -1
  145. package/dist/export-utils.d.ts.map +0 -1
  146. package/dist/floating-badges.d.ts.map +0 -1
  147. package/dist/icons.d.ts.map +0 -1
  148. package/dist/import-modal.d.ts.map +0 -1
  149. package/dist/inspector-panel.d.ts.map +0 -1
  150. package/dist/layers-panel.d.ts.map +0 -1
  151. package/dist/left-sidebar.d.ts.map +0 -1
  152. package/dist/motion-sector-controls.d.ts.map +0 -1
  153. package/dist/store.d.ts +0 -103
  154. package/dist/store.d.ts.map +0 -1
  155. package/dist/style-manager-accordion.d.ts.map +0 -1
  156. package/dist/table-spreadsheet-editor.d.ts.map +0 -1
  157. package/dist/toolbar.d.ts +0 -11
  158. package/dist/toolbar.d.ts.map +0 -1
  159. package/dist/traits-panel.d.ts.map +0 -1
  160. package/dist/typography-sector-controls.d.ts.map +0 -1
  161. package/dist/variable-picker.d.ts.map +0 -1
  162. /package/dist/{breadcrumbs.d.ts → components/canvas/breadcrumbs.d.ts} +0 -0
  163. /package/dist/{floating-badges.d.ts → components/canvas/floating-badges.d.ts} +0 -0
  164. /package/dist/{asset-manager-modal.d.ts → components/modals/asset-manager-modal.d.ts} +0 -0
  165. /package/dist/{code-viewer-modal.d.ts → components/modals/code-viewer-modal.d.ts} +0 -0
  166. /package/dist/{import-modal.d.ts → components/modals/import-modal.d.ts} +0 -0
  167. /package/dist/{blocks-panel.d.ts → components/panels/blocks-panel.d.ts} +0 -0
  168. /package/dist/{box-model-editor.d.ts → components/style-manager/box-model-editor.d.ts} +0 -0
  169. /package/dist/{motion-sector-controls.d.ts → components/style-manager/motion-sector-controls.d.ts} +0 -0
  170. /package/dist/{table-spreadsheet-editor.d.ts → components/table-editor/table-spreadsheet-editor.d.ts} +0 -0
  171. /package/dist/{code-highlighter.d.ts → components/ui/code-highlighter.d.ts} +0 -0
  172. /package/dist/{icons.d.ts → components/ui/icons.d.ts} +0 -0
  173. /package/dist/{variable-picker.d.ts → components/ui/variable-picker.d.ts} +0 -0
@@ -0,0 +1,63 @@
1
+ import React from 'react';
2
+ import { PageDocument, type Artboard, type ArtboardType } from '@kubuild/schema';
3
+ import { ComponentRegistry } from '@kubuild/components';
4
+ import { RuntimeContext, Diagnostic } from '@kubuild/core';
5
+ import { Viewport } from '../../store';
6
+ import { EditorCanvasConfig } from '../../config';
7
+ import { type AiGenerationPlaceholderStatus } from '../../ai/generate-page';
8
+ export interface EditorPageItem {
9
+ id: string;
10
+ name: string;
11
+ slug?: string;
12
+ document: PageDocument;
13
+ width?: number;
14
+ viewport?: Viewport;
15
+ /**
16
+ * Which kind of surface this artboard is. Page artboards come from the host's `pages`
17
+ * prop; component artboards (detached modals/drawers/blocks) come from the editor store
18
+ * and are rendered side by side with pages on the same canvas. Defaults to 'page'.
19
+ */
20
+ artboardType?: ArtboardType;
21
+ /** Component artboards only: the id `open_modal` / `close_modal` actions target. */
22
+ triggerId?: string;
23
+ /**
24
+ * Free position on the infinite canvas, in unscaled canvas px. Absent means the artboard
25
+ * hasn't been placed yet and the canvas lays it out in a row instead.
26
+ */
27
+ position?: {
28
+ x: number;
29
+ y: number;
30
+ };
31
+ }
32
+ export interface EditorCanvasProps {
33
+ document?: PageDocument;
34
+ registry: ComponentRegistry;
35
+ context?: RuntimeContext;
36
+ viewport: Viewport;
37
+ onDiagnostic?: (diagnostic: Diagnostic) => void;
38
+ /**
39
+ * Overrides the store's `aiGenerationStatus` (STORA-508) for this render — same
40
+ * store-override pattern as the `document` prop above. Optional: `KubuildEditor`
41
+ * doesn't pass this, so `EditorCanvas` reads live `aiGenerationStatus` from the store
42
+ * as usual in a real app; the prop exists so callers/tests can control it directly.
43
+ */
44
+ aiGenerationStatus?: AiGenerationPlaceholderStatus | null;
45
+ config?: EditorCanvasConfig;
46
+ fluidWidth?: number;
47
+ onFluidWidthChange?: (width: number) => void;
48
+ onBreakpointChange?: (breakpoint: Viewport) => void;
49
+ pages?: EditorPageItem[];
50
+ activePageId?: string;
51
+ onActivePageChange?: (pageId: string) => void;
52
+ onPagesChange?: (pages: EditorPageItem[]) => void;
53
+ /**
54
+ * Overrides the store's `componentArtboards` for this render — same store-override
55
+ * pattern as the `document` and `aiGenerationStatus` props above.
56
+ */
57
+ componentArtboards?: Artboard[];
58
+ /** Overrides the store's `activeArtboardId` for this render. */
59
+ activeArtboardId?: string | null;
60
+ className?: string;
61
+ }
62
+ export declare const EditorCanvas: React.FC<EditorCanvasProps>;
63
+ //# sourceMappingURL=canvas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"canvas.d.ts","sourceRoot":"","sources":["../../../src/components/canvas/canvas.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA6E,MAAM,OAAO,CAAC;AAClG,OAAO,EAAE,YAAY,EAAE,KAAK,QAAQ,EAAE,KAAK,YAAY,EAAE,MAAM,iBAAiB,CAAC;AACjF,OAAO,EAAE,iBAAiB,EAAkB,MAAM,qBAAqB,CAAC;AAExE,OAAO,EACL,cAAc,EACd,UAAU,EAMX,MAAM,eAAe,CAAC;AACvB,OAAO,EAAkB,QAAQ,EAAE,MAAM,aAAa,CAAC;AAWvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EACL,KAAK,6BAA6B,EAEnC,MAAM,wBAAwB,CAAC;AAEhC,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,YAAY,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB;;;;OAIG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,oFAAoF;IACpF,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,QAAQ,CAAC,EAAE;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CACrC;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,QAAQ,EAAE,QAAQ,CAAC;IACnB,YAAY,CAAC,EAAE,CAAC,UAAU,EAAE,UAAU,KAAK,IAAI,CAAC;IAChD;;;;;OAKG;IACH,kBAAkB,CAAC,EAAE,6BAA6B,GAAG,IAAI,CAAC;IAC1D,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAC5B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,kBAAkB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7C,kBAAkB,CAAC,EAAE,CAAC,UAAU,EAAE,QAAQ,KAAK,IAAI,CAAC;IACpD,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,IAAI,CAAC;IAClD;;;OAGG;IACH,kBAAkB,CAAC,EAAE,QAAQ,EAAE,CAAC;IAChC,gEAAgE;IAChE,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AA+CD,eAAO,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,iBAAiB,CAu9CpD,CAAC"}
@@ -0,0 +1,27 @@
1
+ import React from 'react';
2
+ import { CanvasRect } from './smart-guides';
3
+ export interface DistanceMeasurement {
4
+ id: string;
5
+ type: 'horizontal' | 'vertical';
6
+ distance: number;
7
+ startX: number;
8
+ startY: number;
9
+ endX: number;
10
+ endY: number;
11
+ badgeX: number;
12
+ badgeY: number;
13
+ }
14
+ export interface DistanceMeterProps {
15
+ selectedRect: CanvasRect;
16
+ targetRect: CanvasRect;
17
+ }
18
+ /**
19
+ * Calculates distance measurement lines and pixel badges between two bounding boxes (STORA-124).
20
+ */
21
+ export declare function calculateDistances(selected: CanvasRect, target: CanvasRect): DistanceMeasurement[];
22
+ /**
23
+ * Distance Meter component on Alt/Option hold (STORA-124).
24
+ * Renders measurement lines with pixel badges between selected and hovered nodes.
25
+ */
26
+ export declare const DistanceMeter: React.FC<DistanceMeterProps>;
27
+ //# sourceMappingURL=distance-meter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"distance-meter.d.ts","sourceRoot":"","sources":["../../../src/components/canvas/distance-meter.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,YAAY,GAAG,UAAU,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,kBAAkB;IACjC,YAAY,EAAE,UAAU,CAAC;IACzB,UAAU,EAAE,UAAU,CAAC;CACxB;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,UAAU,EACpB,MAAM,EAAE,UAAU,GACjB,mBAAmB,EAAE,CAyOvB;AAED;;;GAGG;AACH,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAoFtD,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"floating-badges.d.ts","sourceRoot":"","sources":["../../../src/components/canvas/floating-badges.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,YAAY,EAAgC,MAAM,iBAAiB,CAAC;AAC7E,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAKxD,MAAM,WAAW,yBAAyB;IACxC,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,YAAY,CAAC;IACvB,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,YAAY,EAAE;QACZ,GAAG,EAAE,MAAM,CAAC;QACZ,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,CAAC;IACF,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,KAAK,IAAI,CAAC;CAC5C;AAED;;;;;;;;GAQG;AACH,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CAAC,yBAAyB,CAqIpE,CAAC"}
@@ -0,0 +1,18 @@
1
+ import React from 'react';
2
+ import { Node } from '@kubuild/schema';
3
+ import { CanvasRect } from './smart-guides';
4
+ export interface GridGuidelinesOverlayProps {
5
+ node: Node;
6
+ selectedRect: CanvasRect;
7
+ viewport?: 'desktop' | 'tablet' | 'mobile';
8
+ zoom?: number;
9
+ containerRef?: React.RefObject<HTMLElement | null>;
10
+ }
11
+ /**
12
+ * Canvas Grid Guidelines Overlay (STORA-114).
13
+ * When a Grid container node is selected (type === 'grid' or display === 'grid'),
14
+ * renders a visual dashed grid overlay showing column tracks and row tracks with gaps
15
+ * over the selected element.
16
+ */
17
+ export declare const GridGuidelinesOverlay: React.FC<GridGuidelinesOverlayProps>;
18
+ //# sourceMappingURL=grid-guidelines-overlay.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grid-guidelines-overlay.d.ts","sourceRoot":"","sources":["../../../src/components/canvas/grid-guidelines-overlay.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkB,MAAM,OAAO,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAG5C,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,IAAI,CAAC;IACX,YAAY,EAAE,UAAU,CAAC;IACzB,QAAQ,CAAC,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAC3C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC;CACpD;AAuBD;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC,0BAA0B,CAwLtE,CAAC"}
@@ -0,0 +1,13 @@
1
+ export * from './breadcrumbs';
2
+ export * from './canvas';
3
+ export * from './floating-badges';
4
+ export * from './smart-guides';
5
+ export * from './resize-handles';
6
+ export * from './spacing-sliders';
7
+ export * from './distance-meter';
8
+ export * from './canvas-pan-zoom';
9
+ export * from './marquee-selection';
10
+ export * from './viewport-resizer';
11
+ export * from './multi-device-preview';
12
+ export * from './grid-guidelines-overlay';
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/canvas/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC;AACvC,cAAc,2BAA2B,CAAC"}
@@ -0,0 +1,25 @@
1
+ import React from 'react';
2
+ import { CanvasRect } from './smart-guides';
3
+ export interface MarqueeRect {
4
+ top: number;
5
+ left: number;
6
+ width: number;
7
+ height: number;
8
+ }
9
+ export interface NodeRectEntry {
10
+ id: string;
11
+ rect: CanvasRect;
12
+ }
13
+ export declare function rectsIntersect(a: CanvasRect, b: CanvasRect): boolean;
14
+ /**
15
+ * Calculates which nodes in `nodes` intersect with the given `marqueeRect` (STORA-133).
16
+ */
17
+ export declare function calculateMarqueeIntersections(marqueeRect: CanvasRect, nodes: NodeRectEntry[]): string[];
18
+ export interface MarqueeSelectionBoxProps {
19
+ rect: MarqueeRect | null;
20
+ }
21
+ /**
22
+ * Marquee Drag Selection Box component (STORA-133).
23
+ */
24
+ export declare const MarqueeSelectionBox: React.FC<MarqueeSelectionBoxProps>;
25
+ //# sourceMappingURL=marquee-selection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"marquee-selection.d.ts","sourceRoot":"","sources":["../../../src/components/canvas/marquee-selection.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,UAAU,CAAC;CAClB;AAED,wBAAgB,cAAc,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE,UAAU,GAAG,OAAO,CAOpE;AAED;;GAEG;AACH,wBAAgB,6BAA6B,CAC3C,WAAW,EAAE,UAAU,EACvB,KAAK,EAAE,aAAa,EAAE,GACrB,MAAM,EAAE,CAIV;AAED,MAAM,WAAW,wBAAwB;IACvC,IAAI,EAAE,WAAW,GAAG,IAAI,CAAC;CAC1B;AAED;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CAqBlE,CAAC"}
@@ -0,0 +1,30 @@
1
+ import React from 'react';
2
+ import { PageDocument } from '@kubuild/schema';
3
+ import { ComponentRegistry } from '@kubuild/components';
4
+ import { RuntimeContext } from '@kubuild/core';
5
+ import { Viewport } from '../../store';
6
+ export interface DeviceSpec {
7
+ id: Viewport;
8
+ label: string;
9
+ width: number;
10
+ minHeight: number;
11
+ icon: React.ComponentType<{
12
+ className?: string;
13
+ }>;
14
+ resolutionBadge: string;
15
+ }
16
+ export declare const DEVICE_SPECS: DeviceSpec[];
17
+ export interface MultiDevicePreviewProps {
18
+ document?: PageDocument;
19
+ registry: ComponentRegistry;
20
+ context?: RuntimeContext;
21
+ onClose?: () => void;
22
+ className?: string;
23
+ }
24
+ /**
25
+ * Side-by-Side Multi-Device Preview Mode (STORA-143).
26
+ * Renders Desktop (1200px), Tablet (768px), and Mobile (375px) frames side-by-side simultaneously
27
+ * with device frame headers, responsive scale controls, and synced node selection.
28
+ */
29
+ export declare const MultiDevicePreview: React.FC<MultiDevicePreviewProps>;
30
+ //# sourceMappingURL=multi-device-preview.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multi-device-preview.d.ts","sourceRoot":"","sources":["../../../src/components/canvas/multi-device-preview.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAkB,QAAQ,EAAE,MAAM,aAAa,CAAC;AAYvD,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,QAAQ,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,KAAK,CAAC,aAAa,CAAC;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClD,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,YAAY,EAAE,UAAU,EAyBpC,CAAC;AAEF,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAkOhE,CAAC"}
@@ -0,0 +1,18 @@
1
+ import React from 'react';
2
+ import { CanvasRect, GuideLine } from './smart-guides';
3
+ export type ResizeHandleDirection = 'n' | 's' | 'e' | 'w' | 'ne' | 'nw' | 'se' | 'sw';
4
+ export interface ResizeHandlesProps {
5
+ selectedNodeId: string;
6
+ selectedRect: CanvasRect;
7
+ zoom?: number;
8
+ candidateRects?: CanvasRect[];
9
+ onGuidesChange?: (guides: GuideLine[]) => void;
10
+ onResizeEnd?: (newWidth: number, newHeight: number) => void;
11
+ }
12
+ /**
13
+ * 8-Point Visual Transform & Resize Handles (STORA-120).
14
+ * Supports aspect ratio lock (Shift key), live dimension tooltip (W: Xpx H: Ypx),
15
+ * 60 FPS performance via requestAnimationFrame (STORA-125), and snapping integration (STORA-123).
16
+ */
17
+ export declare const ResizeHandles: React.FC<ResizeHandlesProps>;
18
+ //# sourceMappingURL=resize-handles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resize-handles.d.ts","sourceRoot":"","sources":["../../../src/components/canvas/resize-handles.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAExE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAqB,MAAM,gBAAgB,CAAC;AAE1E,MAAM,MAAM,qBAAqB,GAC7B,GAAG,GACH,GAAG,GACH,GAAG,GACH,GAAG,GACH,IAAI,GACJ,IAAI,GACJ,IAAI,GACJ,IAAI,CAAC;AAET,MAAM,WAAW,kBAAkB;IACjC,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,UAAU,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,UAAU,EAAE,CAAC;IAC9B,cAAc,CAAC,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,IAAI,CAAC;IAC/C,WAAW,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7D;AAgED;;;;GAIG;AACH,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAgRtD,CAAC"}
@@ -0,0 +1,37 @@
1
+ import React from 'react';
2
+ export interface CanvasRect {
3
+ top: number;
4
+ left: number;
5
+ width: number;
6
+ height: number;
7
+ }
8
+ export interface GuideLine {
9
+ id: string;
10
+ type: 'horizontal' | 'vertical';
11
+ position: number;
12
+ start: number;
13
+ end: number;
14
+ color: 'cyan' | 'magenta';
15
+ matchedValue?: number;
16
+ }
17
+ export interface SnappingResult {
18
+ snappedRect: CanvasRect;
19
+ guides: GuideLine[];
20
+ snappedX: boolean;
21
+ snappedY: boolean;
22
+ }
23
+ /**
24
+ * Calculates snapping of activeRect against reference candidateRects (STORA-123).
25
+ * Threshold: 5px default.
26
+ * Cyan for same-edge alignment (top-top, bottom-bottom, center-center, left-left, right-right).
27
+ * Magenta for opposite-edge alignment (top-bottom, bottom-top, left-right, right-left).
28
+ */
29
+ export declare function calculateSnapping(activeRect: CanvasRect, candidateRects: CanvasRect[], threshold?: number): SnappingResult;
30
+ export interface SmartGuidesProps {
31
+ guides: GuideLine[];
32
+ }
33
+ /**
34
+ * SmartGuides component renders dynamic alignment guide lines (STORA-123).
35
+ */
36
+ export declare const SmartGuides: React.FC<SmartGuidesProps>;
37
+ //# sourceMappingURL=smart-guides.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"smart-guides.d.ts","sourceRoot":"","sources":["../../../src/components/canvas/smart-guides.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,WAAW,UAAU;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,YAAY,GAAG,UAAU,CAAC;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,EAAE,UAAU,CAAC;IACxB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,UAAU,EACtB,cAAc,EAAE,UAAU,EAAE,EAC5B,SAAS,SAAI,GACZ,cAAc,CAuOhB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,SAAS,EAAE,CAAC;CACrB;AAED;;GAEG;AACH,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAyDlD,CAAC"}
@@ -0,0 +1,21 @@
1
+ import React from 'react';
2
+ import { PageDocument } from '@kubuild/schema';
3
+ import { CanvasRect } from './smart-guides';
4
+ export interface SpacingSlidersProps {
5
+ selectedNodeId: string;
6
+ selectedRect: CanvasRect;
7
+ document?: PageDocument;
8
+ containerElement?: HTMLElement | null;
9
+ zoom?: number;
10
+ }
11
+ /**
12
+ * Interactive On-Canvas Padding Drag Sliders (STORA-121) & Gap Drag Slider (STORA-122).
13
+ * Features:
14
+ * - 4 sides padding drag handles (top, right, bottom, left).
15
+ * - Alt/Option symmetric drag for opposite sides.
16
+ * - Tinted semi-transparent padding box (pink/purple).
17
+ * - On-canvas gap slider between children for flex/grid containers.
18
+ * - 60 FPS RAF optimization (STORA-125).
19
+ */
20
+ export declare const SpacingSliders: React.FC<SpacingSlidersProps>;
21
+ //# sourceMappingURL=spacing-sliders.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"spacing-sliders.d.ts","sourceRoot":"","sources":["../../../src/components/canvas/spacing-sliders.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAGxE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAE5C,MAAM,WAAW,mBAAmB;IAClC,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,UAAU,CAAC;IACzB,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,gBAAgB,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC;IACtC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAuCD;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CA0fxD,CAAC"}
@@ -0,0 +1,83 @@
1
+ import React from 'react';
2
+ export type FluidBreakpoint = 'mobile' | 'tablet' | 'desktop';
3
+ export interface BreakpointInfo {
4
+ breakpoint: FluidBreakpoint;
5
+ label: string;
6
+ badgeText: string;
7
+ colorClass: string;
8
+ }
9
+ export declare const DEFAULT_MIN_WIDTH = 320;
10
+ export declare const DEFAULT_MAX_WIDTH = 1440;
11
+ export declare const VIEWPORT_PRESETS: Array<{
12
+ name: string;
13
+ width: number;
14
+ breakpoint: FluidBreakpoint;
15
+ icon: React.ComponentType<{
16
+ className?: string;
17
+ }>;
18
+ }>;
19
+ /**
20
+ * Calculates current breakpoint, human-readable label, and badge string from viewport width (STORA-142).
21
+ * Examples:
22
+ * - 375px -> "375px • Mobile"
23
+ * - 768px -> "768px • Tablet"
24
+ * - 1200px -> "1200px • Desktop"
25
+ */
26
+ export declare function getBreakpointFromWidth(width: number): BreakpointInfo;
27
+ export interface ViewportResizerHandleProps {
28
+ width: number;
29
+ onWidthChange: (width: number) => void;
30
+ minWidth?: number;
31
+ maxWidth?: number;
32
+ onBreakpointChange?: (breakpoint: FluidBreakpoint) => void;
33
+ disabled?: boolean;
34
+ className?: string;
35
+ zoom?: number;
36
+ }
37
+ /**
38
+ * Vertical Draggable Resizer Bar on the right edge of the canvas preview frame (STORA-142).
39
+ * Dragging smoothly modifies viewport width between minWidth (320px) and maxWidth (1440px).
40
+ */
41
+ export declare const ViewportResizerHandle: React.FC<ViewportResizerHandleProps>;
42
+ export interface ViewportResizerProps {
43
+ width: number;
44
+ onWidthChange: (width: number) => void;
45
+ minWidth?: number;
46
+ maxWidth?: number;
47
+ onBreakpointChange?: (breakpoint: FluidBreakpoint) => void;
48
+ disabled?: boolean;
49
+ showPresets?: boolean;
50
+ title?: string;
51
+ slug?: string;
52
+ isActive?: boolean;
53
+ onSelect?: () => void;
54
+ zoom?: number;
55
+ frameRef?: React.Ref<HTMLDivElement>;
56
+ children: React.ReactNode;
57
+ className?: string;
58
+ onHeaderPointerDown?: (e: React.PointerEvent) => void;
59
+ /**
60
+ * Which kind of surface this artboard is, shown as a badge in the header so a page and a
61
+ * detached component surface are distinguishable at a glance. Defaults to 'page'.
62
+ */
63
+ artboardType?: 'page' | 'component';
64
+ /**
65
+ * When provided, a delete control appears in the header. Deleting is destructive, so the
66
+ * control asks for confirmation before invoking this.
67
+ */
68
+ onDelete?: () => void;
69
+ /** Name shown in the delete confirmation, e.g. the artboard's own name. */
70
+ deleteLabel?: string;
71
+ /**
72
+ * Render without page chrome: no white card, no shadow, no page-height floor, no viewport
73
+ * presets or width handle — the surface hugs the content so what you see on the canvas is
74
+ * the component's own shape. Used for component artboards, which aren't pages.
75
+ */
76
+ bare?: boolean;
77
+ }
78
+ /**
79
+ * Canvas Viewport Resizer Frame Container (STORA-142).
80
+ * Wraps canvas content with fluid draggable width handle and quick breakpoint presets toolbar.
81
+ */
82
+ export declare const ViewportResizer: React.FC<ViewportResizerProps>;
83
+ //# sourceMappingURL=viewport-resizer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"viewport-resizer.d.ts","sourceRoot":"","sources":["../../../src/components/canvas/viewport-resizer.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAGxE,MAAM,MAAM,eAAe,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;AAE9D,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,eAAe,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,iBAAiB,MAAM,CAAC;AACrC,eAAO,MAAM,iBAAiB,OAAO,CAAC;AAEtC,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,eAAe,CAAC;IAC5B,IAAI,EAAE,KAAK,CAAC,aAAa,CAAC;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACnD,CAKA,CAAC;AAEF;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,cAAc,CAwBpE;AAED,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,CAAC,UAAU,EAAE,eAAe,KAAK,IAAI,CAAC;IAC3D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;GAGG;AACH,eAAO,MAAM,qBAAqB,EAAE,KAAK,CAAC,EAAE,CAAC,0BAA0B,CAkHtE,CAAC;AAEF,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,CAAC,UAAU,EAAE,eAAe,KAAK,IAAI,CAAC;IAC3D,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IACrC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,mBAAmB,CAAC,EAAE,CAAC,CAAC,EAAE,KAAK,CAAC,YAAY,KAAK,IAAI,CAAC;IACtD;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC;IACpC;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAC;IACtB,2EAA2E;IAC3E,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAaD;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAyN1D,CAAC"}
@@ -0,0 +1,10 @@
1
+ export * from './action-builder';
2
+ export * from './ai-chat';
3
+ export * from './canvas';
4
+ export * from './layout';
5
+ export * from './modals';
6
+ export * from './panels';
7
+ export * from './style-manager';
8
+ export * from './table-editor';
9
+ export * from './ui';
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,MAAM,CAAC"}
@@ -2,9 +2,14 @@ import React from 'react';
2
2
  import { PageDocument } from '@kubuild/schema';
3
3
  import { ComponentRegistry } from '@kubuild/components';
4
4
  import { RuntimeContext, VariableCatalog, Diagnostic } from '@kubuild/core';
5
- import { EditorConfig } from './config';
5
+ import { EditorPageItem } from '../canvas';
6
+ import { EditorConfig, AiEditorConfig } from '../../config';
6
7
  export interface KubuildEditorProps {
7
8
  initialDocument?: PageDocument;
9
+ pages?: EditorPageItem[];
10
+ activePageId?: string;
11
+ onActivePageChange?: (pageId: string) => void;
12
+ onPagesChange?: (pages: EditorPageItem[]) => void;
8
13
  registry?: ComponentRegistry;
9
14
  context?: RuntimeContext;
10
15
  /** Host-declared bindable variables + preview-only sample values (STORA-053). Never written to the document. */
@@ -12,6 +17,12 @@ export interface KubuildEditorProps {
12
17
  onChange?: (doc: PageDocument) => void;
13
18
  onDiagnostic?: (diagnostic: Diagnostic) => void;
14
19
  config?: EditorConfig;
20
+ /**
21
+ * AI provider integration (STORA-501). Opt-in only — when omitted, `KubuildEditor`
22
+ * renders with zero AI UI and zero behavioral difference from a build without AI.
23
+ * The host (consumer) always supplies its own provider adapter/endpoint/API key.
24
+ */
25
+ ai?: AiEditorConfig;
15
26
  className?: string;
16
27
  }
17
28
  export declare const KubuildEditor: React.FC<KubuildEditorProps>;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editor.d.ts","sourceRoot":"","sources":["../../../src/components/layout/editor.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoD,MAAM,OAAO,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAC/C,OAAO,EAAE,iBAAiB,EAAkC,MAAM,qBAAqB,CAAC;AACxF,OAAO,EACL,cAAc,EACd,eAAe,EACf,UAAU,EAEX,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAgB,cAAc,EAAE,MAAM,WAAW,CAAC;AAUzD,OAAO,EACL,YAAY,EAEZ,cAAc,EAIf,MAAM,cAAc,CAAC;AAetB,MAAM,WAAW,kBAAkB;IACjC,eAAe,CAAC,EAAE,YAAY,CAAC;IAC/B,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAC9C,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,cAAc,EAAE,KAAK,IAAI,CAAC;IAClD,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,OAAO,CAAC,EAAE,cAAc,CAAC;IACzB,gHAAgH;IAChH,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,QAAQ,CAAC,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,IAAI,CAAC;IACvC,YAAY,CAAC,EAAE,CAAC,UAAU,EAAE,UAAU,KAAK,IAAI,CAAC;IAChD,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB;;;;OAIG;IACH,EAAE,CAAC,EAAE,cAAc,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAsiBtD,CAAC"}
@@ -0,0 +1,3 @@
1
+ export * from './editor';
2
+ export * from './toolbar';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/layout/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC"}
@@ -0,0 +1,17 @@
1
+ import React from 'react';
2
+ import { ComponentRegistry } from '@kubuild/components';
3
+ import { EditorToolbarConfig } from '../../config';
4
+ export interface EditorToolbarProps {
5
+ registry: ComponentRegistry;
6
+ className?: string;
7
+ showExportImport?: boolean;
8
+ config?: EditorToolbarConfig;
9
+ /**
10
+ * Whether any AI capability is actually turned on in `AiEditorConfig` (STORA-504).
11
+ * The AI Chat toggle button only ever renders when this is `true`, regardless of
12
+ * `config.showAiChatToggle` — AI must stay fully invisible when not configured.
13
+ */
14
+ aiEnabled?: boolean;
15
+ }
16
+ export declare const EditorToolbar: React.FC<EditorToolbarProps>;
17
+ //# sourceMappingURL=toolbar.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"toolbar.d.ts","sourceRoot":"","sources":["../../../src/components/layout/toolbar.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAwC,MAAM,OAAO,CAAC;AAE7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAOxD,OAAO,EAAE,mBAAmB,EAAuB,MAAM,cAAc,CAAC;AAExE,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AA8ED,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CA2TtD,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"asset-manager-modal.d.ts","sourceRoot":"","sources":["../../../src/components/modals/asset-manager-modal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAiD,MAAM,OAAO,CAAC;AACtE,OAAO,EAAE,aAAa,EAAa,MAAM,eAAe,CAAC;AAEzD,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,wDAAwD;IACxD,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;IAChC,2EAA2E;IAC3E,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,wEAAwE;IACxE,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,uCAAuC;IACvC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAoBD;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CA8X9D,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"code-viewer-modal.d.ts","sourceRoot":"","sources":["../../../src/components/modals/code-viewer-modal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAyC,MAAM,OAAO,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAUpD,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,YAAY,CAAC;CACzB;AAED,MAAM,MAAM,OAAO,GAAG,UAAU,GAAG,MAAM,GAAG,KAAK,CAAC;AAElD,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EAAE,CAAC,oBAAoB,CAyT1D,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"import-modal.d.ts","sourceRoot":"","sources":["../../../src/components/modals/import-modal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2B,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,YAAY,EAAsB,MAAM,iBAAiB,CAAC;AASnE,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,QAAQ,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,IAAI,CAAC;IACtC,QAAQ,EAAE,iBAAiB,CAAC;CAC7B;AAED,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAyZlD,CAAC"}
@@ -0,0 +1,4 @@
1
+ export * from './asset-manager-modal';
2
+ export * from './code-viewer-modal';
3
+ export * from './import-modal';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/modals/index.ts"],"names":[],"mappings":"AAAA,cAAc,uBAAuB,CAAC;AACtC,cAAc,qBAAqB,CAAC;AACpC,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1,11 @@
1
+ import React from 'react';
2
+ import { ActionLogEntry, LiveFormState } from '../../store';
3
+ export interface ActionDebuggerPanelProps {
4
+ className?: string;
5
+ onClose?: () => void;
6
+ onResetForm?: () => void;
7
+ formState?: LiveFormState | null;
8
+ logs?: ActionLogEntry[];
9
+ }
10
+ export declare const ActionDebuggerPanel: React.FC<ActionDebuggerPanelProps>;
11
+ //# sourceMappingURL=action-debugger-panel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"action-debugger-panel.d.ts","sourceRoot":"","sources":["../../../src/components/panels/action-debugger-panel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AACxC,OAAO,EAAkB,cAAc,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAsB5E,MAAM,WAAW,wBAAwB;IACvC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,SAAS,CAAC,EAAE,aAAa,GAAG,IAAI,CAAC;IACjC,IAAI,CAAC,EAAE,cAAc,EAAE,CAAC;CACzB;AAED,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,wBAAwB,CAkZlE,CAAC"}
@@ -0,0 +1,30 @@
1
+ import React from 'react';
2
+ import { ActionBinding, PageDocument } from '@kubuild/schema';
3
+ import { ComponentFieldDefinition } from '@kubuild/components';
4
+ export interface ActionPropControlProps {
5
+ nodeId: string;
6
+ field: ComponentFieldDefinition;
7
+ value: unknown;
8
+ document?: PageDocument;
9
+ onCommit: (field: ComponentFieldDefinition, value: unknown, isBlur: boolean) => void;
10
+ onOpenActionBuilder?: () => void;
11
+ setError?: (error: string | null) => void;
12
+ className?: string;
13
+ }
14
+ export interface ActionTypeMeta {
15
+ type: string;
16
+ label: string;
17
+ shortLabel: string;
18
+ description: string;
19
+ badgeClass: string;
20
+ icon: React.ComponentType<{
21
+ className?: string;
22
+ }>;
23
+ defaultPayload: Record<string, unknown>;
24
+ }
25
+ export declare const ACTION_TYPES: ActionTypeMeta[];
26
+ export declare function getActionTypeMeta(type: string): ActionTypeMeta;
27
+ export declare function formatActionSummary(action: ActionBinding): string;
28
+ export declare function parseActionBinding(val: unknown): ActionBinding | null;
29
+ export declare const ActionPropControl: React.FC<ActionPropControlProps>;
30
+ //# sourceMappingURL=action-prop-control.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"action-prop-control.d.ts","sourceRoot":"","sources":["../../../src/components/panels/action-prop-control.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAuC,MAAM,OAAO,CAAC;AAC5D,OAAO,EACL,aAAa,EACb,YAAY,EACb,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAyB/D,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,wBAAwB,CAAC;IAChC,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,YAAY,CAAC;IACxB,QAAQ,EAAE,CAAC,KAAK,EAAE,wBAAwB,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,KAAK,IAAI,CAAC;IACrF,mBAAmB,CAAC,EAAE,MAAM,IAAI,CAAC;IACjC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,KAAK,IAAI,CAAC;IAC1C,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,KAAK,CAAC,aAAa,CAAC;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClD,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACzC;AAED,eAAO,MAAM,YAAY,EAAE,cAAc,EAkFxC,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CAY9D;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CA8CjE;AAED,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,aAAa,GAAG,IAAI,CAUrE;AAED,eAAO,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,sBAAsB,CAuiB9D,CAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blocks-panel.d.ts","sourceRoot":"","sources":["../../../src/components/panels/blocks-panel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA4B,MAAM,OAAO,CAAC;AACjD,OAAO,EAAkB,eAAe,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAMzF,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,MAAM,CAAC,EAAE,eAAe,EAAE,CAAC;IAC3B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,eAAe,KAAK,IAAI,CAAC;CAClD;AAED;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,KAAK,EAAE,eAAe,CAAA;CAAE,CAgL/D,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,gBAAgB,CAkJlD,CAAC"}
@@ -1,7 +1,9 @@
1
1
  import React from 'react';
2
2
  import { ComponentRegistry } from '@kubuild/components';
3
+ import { EditorSidebarConfig } from '../../config';
3
4
  export interface ComponentPanelProps {
4
5
  registry: ComponentRegistry;
6
+ config?: EditorSidebarConfig;
5
7
  className?: string;
6
8
  }
7
9
  export declare const ComponentPanel: React.FC<ComponentPanelProps>;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"component-panel.d.ts","sourceRoot":"","sources":["../../../src/components/panels/component-panel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,iBAAiB,EAA0C,MAAM,qBAAqB,CAAC;AAGhG,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAEnD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,iBAAiB,CAAC;IAC5B,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAsBD,eAAO,MAAM,cAAc,EAAE,KAAK,CAAC,EAAE,CAAC,mBAAmB,CAqGxD,CAAC"}
@@ -0,0 +1,27 @@
1
+ import React from 'react';
2
+ import { Node, ValidationRuleType, FormConfig } from '@kubuild/schema';
3
+ export interface FormValidationRulesPanelProps {
4
+ node: Node;
5
+ onUpdateFormConfig: (formConfig: Partial<FormConfig> | null) => void;
6
+ onCommitProp?: (propName: string, value: unknown) => void;
7
+ className?: string;
8
+ }
9
+ interface RuleTypeDefinition {
10
+ type: ValidationRuleType;
11
+ label: string;
12
+ description: string;
13
+ icon: React.ComponentType<{
14
+ className?: string;
15
+ }>;
16
+ defaultMessage: string;
17
+ hasValue: boolean;
18
+ valueType?: 'number' | 'string';
19
+ defaultValue?: unknown;
20
+ valuePlaceholder?: string;
21
+ }
22
+ export declare const SUPPORTED_RULES: RuleTypeDefinition[];
23
+ export declare function getRuleDefinition(type: string): RuleTypeDefinition | undefined;
24
+ export declare function isFormFieldNode(node: Node | null): boolean;
25
+ export declare const FormValidationRulesPanel: React.FC<FormValidationRulesPanelProps>;
26
+ export {};
27
+ //# sourceMappingURL=form-validation-rules-panel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form-validation-rules-panel.d.ts","sourceRoot":"","sources":["../../../src/components/panels/form-validation-rules-panel.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmB,MAAM,OAAO,CAAC;AACxC,OAAO,EAAE,IAAI,EAAkB,kBAAkB,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAcvF,MAAM,WAAW,6BAA6B;IAC5C,IAAI,EAAE,IAAI,CAAC;IACX,kBAAkB,EAAE,CAAC,UAAU,EAAE,OAAO,CAAC,UAAU,CAAC,GAAG,IAAI,KAAK,IAAI,CAAC;IACrE,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IAC1D,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,UAAU,kBAAkB;IAC1B,IAAI,EAAE,kBAAkB,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,KAAK,CAAC,aAAa,CAAC;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAClD,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAChC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,eAAO,MAAM,eAAe,EAAE,kBAAkB,EAkD/C,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,kBAAkB,GAAG,SAAS,CAE9E;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,GAAG,OAAO,CAQ1D;AAED,eAAO,MAAM,wBAAwB,EAAE,KAAK,CAAC,EAAE,CAAC,6BAA6B,CA2O5E,CAAC"}
@@ -0,0 +1,10 @@
1
+ export * from './action-debugger-panel';
2
+ export * from './action-prop-control';
3
+ export * from './blocks-panel';
4
+ export * from './component-panel';
5
+ export * from './form-validation-rules-panel';
6
+ export * from './inspector-panel';
7
+ export * from './layers-panel';
8
+ export * from './left-sidebar';
9
+ export * from './traits-panel';
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/panels/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,mBAAmB,CAAC;AAClC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,gBAAgB,CAAC"}