@dfosco/storyboard-core 4.2.0-beta.2 → 4.2.0-beta.21

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 (414) hide show
  1. package/commandpalette.config.json +109 -24
  2. package/dist/storyboard-ui.css +1 -1
  3. package/dist/storyboard-ui.js +17379 -28568
  4. package/dist/storyboard-ui.js.map +1 -1
  5. package/dist/tailwind.css +1 -1
  6. package/package.json +5 -2
  7. package/scaffold/agents/prompt-agent.agent.md +181 -0
  8. package/scaffold/agents/terminal-agent.agent.md +351 -0
  9. package/scaffold/codex/config.toml +246 -0
  10. package/scaffold/manifest.json +5 -0
  11. package/scaffold/skills/canvas/SKILL.md +5 -4
  12. package/scaffold/skills/ship/SKILL.md +1 -1
  13. package/scaffold/storyboard.config.json +14 -1
  14. package/scaffold/toolbar.config.json +1 -1
  15. package/src/ActionMenuButton.jsx +100 -0
  16. package/src/AutosyncMenuButton.css +67 -0
  17. package/src/AutosyncMenuButton.jsx +241 -0
  18. package/src/BranchSelect.jsx +29 -0
  19. package/src/BranchSelect.module.css +30 -0
  20. package/src/CanvasAgentsMenu.jsx +87 -0
  21. package/src/CanvasCreateMenu.jsx +609 -0
  22. package/src/CanvasSnap.css +27 -0
  23. package/src/CanvasSnap.jsx +51 -0
  24. package/src/CanvasUndoRedo.css +36 -0
  25. package/src/CanvasUndoRedo.jsx +62 -0
  26. package/src/CanvasZoomControl.css +53 -0
  27. package/src/CanvasZoomControl.jsx +49 -0
  28. package/src/CanvasZoomToFit.css +18 -0
  29. package/src/CanvasZoomToFit.jsx +26 -0
  30. package/src/CommandMenu.css +8 -0
  31. package/src/CommandMenu.jsx +286 -0
  32. package/src/CommandPalette.jsx +35 -0
  33. package/src/CommandPaletteTrigger.jsx +25 -0
  34. package/src/CommentsMenuButton.jsx +38 -0
  35. package/src/CoreUIBar.css +47 -0
  36. package/src/CoreUIBar.jsx +855 -0
  37. package/src/CreateMenuButton.jsx +116 -0
  38. package/src/HideChromeTrigger.jsx +40 -0
  39. package/src/InspectorPanel.css +109 -0
  40. package/src/InspectorPanel.jsx +629 -0
  41. package/src/PwaInstallBanner.css +42 -0
  42. package/src/PwaInstallBanner.jsx +124 -0
  43. package/src/SidePanel.jsx +260 -0
  44. package/src/ThemeMenuButton.jsx +136 -0
  45. package/src/autosync/server.js +202 -5
  46. package/src/autosync/server.test.js +112 -0
  47. package/src/canvas/__tests__/agent-integration.test.js +593 -0
  48. package/src/canvas/__tests__/helpers/browser.js +95 -0
  49. package/src/canvas/__tests__/helpers/canvas-api.js +129 -0
  50. package/src/canvas/__tests__/helpers/perf.js +118 -0
  51. package/src/canvas/__tests__/helpers/setup.js +176 -0
  52. package/src/canvas/__tests__/helpers/tmux.js +130 -0
  53. package/src/canvas/__tests__/helpers/transcript.js +129 -0
  54. package/src/canvas/__tests__/terminal-integration.test.js +175 -0
  55. package/src/canvas/hot-pool.js +757 -0
  56. package/src/canvas/materializer.js +31 -0
  57. package/src/canvas/materializer.test.js +56 -0
  58. package/src/canvas/selectedWidgets.js +65 -7
  59. package/src/canvas/server.js +1801 -22
  60. package/src/canvas/server.test.js +239 -0
  61. package/src/canvas/terminal-config.js +331 -0
  62. package/src/canvas/terminal-registry.js +38 -0
  63. package/src/canvas/terminal-server.js +1037 -29
  64. package/src/canvas/writeGuard.js +51 -3
  65. package/src/canvasConfig.js +67 -1
  66. package/src/canvasConfig.test.js +79 -1
  67. package/src/cli/agent.js +85 -0
  68. package/src/cli/branch.js +232 -0
  69. package/src/cli/canvasAdd.js +59 -12
  70. package/src/cli/canvasBatch.js +98 -0
  71. package/src/cli/canvasBounds.js +1 -1
  72. package/src/cli/canvasRead.js +1 -1
  73. package/src/cli/canvasUpdate.js +179 -0
  74. package/src/cli/create.js +38 -14
  75. package/src/cli/dev.js +157 -83
  76. package/src/cli/exit.js +23 -24
  77. package/src/cli/index.js +55 -2
  78. package/src/cli/proxy.js +96 -37
  79. package/src/cli/schemas.js +22 -4
  80. package/src/cli/server.js +148 -25
  81. package/src/cli/serverUrl.js +8 -3
  82. package/src/cli/sessions.js +131 -5
  83. package/src/cli/setup.js +109 -11
  84. package/src/cli/terminal-commands.js +16 -8
  85. package/src/cli/terminal-messaging.js +231 -0
  86. package/src/cli/terminal-welcome.js +365 -33
  87. package/src/commandActions.js +1 -0
  88. package/src/commandPaletteConfig.js +9 -0
  89. package/src/comments/auth.js +2 -1
  90. package/src/comments/ui/AuthModal.jsx +114 -0
  91. package/src/comments/ui/CommentWindow.jsx +329 -0
  92. package/src/comments/ui/CommentsDrawer.jsx +102 -0
  93. package/src/comments/ui/Composer.jsx +64 -0
  94. package/src/comments/ui/authModal.test.js +1 -1
  95. package/src/comments/ui/commentWindow.js +16 -17
  96. package/src/comments/ui/commentsDrawer.js +25 -26
  97. package/src/comments/ui/composer.js +23 -24
  98. package/src/comments/ui/index.js +2 -3
  99. package/src/configSchema.js +59 -1
  100. package/src/configStore.js +161 -0
  101. package/src/core-ui-colors.css +12 -0
  102. package/src/devtools.js +17 -19
  103. package/src/devtools.test.js +18 -9
  104. package/src/featureFlags.js +12 -5
  105. package/src/fuzzySearch.test.js +10 -0
  106. package/src/index.js +14 -2
  107. package/src/lib/components/ui/alert/alert-action.jsx +11 -0
  108. package/src/lib/components/ui/alert/alert-description.jsx +11 -0
  109. package/src/lib/components/ui/alert/alert-title.jsx +11 -0
  110. package/src/lib/components/ui/alert/alert.jsx +25 -0
  111. package/src/lib/components/ui/alert/index.js +15 -15
  112. package/src/lib/components/ui/avatar/avatar-badge.jsx +22 -0
  113. package/src/lib/components/ui/avatar/avatar-fallback.jsx +18 -0
  114. package/src/lib/components/ui/avatar/avatar-group-count.jsx +19 -0
  115. package/src/lib/components/ui/avatar/avatar-group.jsx +19 -0
  116. package/src/lib/components/ui/avatar/avatar-image.jsx +15 -0
  117. package/src/lib/components/ui/avatar/avatar.jsx +19 -0
  118. package/src/lib/components/ui/avatar/index.js +20 -20
  119. package/src/lib/components/ui/badge/badge.jsx +31 -0
  120. package/src/lib/components/ui/badge/index.js +2 -2
  121. package/src/lib/components/ui/button/button.jsx +100 -0
  122. package/src/lib/components/ui/button/index.js +9 -9
  123. package/src/lib/components/ui/card/card-action.jsx +11 -0
  124. package/src/lib/components/ui/card/card-content.jsx +11 -0
  125. package/src/lib/components/ui/card/card-description.jsx +11 -0
  126. package/src/lib/components/ui/card/card-footer.jsx +11 -0
  127. package/src/lib/components/ui/card/card-header.jsx +19 -0
  128. package/src/lib/components/ui/card/card-title.jsx +11 -0
  129. package/src/lib/components/ui/card/card.jsx +17 -0
  130. package/src/lib/components/ui/card/index.js +23 -23
  131. package/src/lib/components/ui/checkbox/checkbox.jsx +29 -0
  132. package/src/lib/components/ui/checkbox/index.js +5 -5
  133. package/src/lib/components/ui/collapsible/collapsible-content.jsx +7 -0
  134. package/src/lib/components/ui/collapsible/collapsible-trigger.jsx +7 -0
  135. package/src/lib/components/ui/collapsible/collapsible.jsx +7 -0
  136. package/src/lib/components/ui/collapsible/index.js +11 -11
  137. package/src/lib/components/ui/dialog/dialog-close.jsx +7 -0
  138. package/src/lib/components/ui/dialog/dialog-content.jsx +34 -0
  139. package/src/lib/components/ui/dialog/dialog-description.jsx +15 -0
  140. package/src/lib/components/ui/dialog/dialog-footer.jsx +23 -0
  141. package/src/lib/components/ui/dialog/dialog-header.jsx +11 -0
  142. package/src/lib/components/ui/dialog/dialog-overlay.jsx +15 -0
  143. package/src/lib/components/ui/dialog/dialog-portal.jsx +4 -0
  144. package/src/lib/components/ui/dialog/dialog-title.jsx +15 -0
  145. package/src/lib/components/ui/dialog/dialog-trigger.jsx +7 -0
  146. package/src/lib/components/ui/dialog/dialog.jsx +4 -0
  147. package/src/lib/components/ui/dialog/index.js +32 -32
  148. package/src/lib/components/ui/dropdown-menu/dropdown-menu-checkbox-group.jsx +8 -0
  149. package/src/lib/components/ui/dropdown-menu/dropdown-menu-checkbox-item.jsx +30 -0
  150. package/src/lib/components/ui/dropdown-menu/dropdown-menu-content.jsx +22 -0
  151. package/src/lib/components/ui/dropdown-menu/dropdown-menu-group-heading.jsx +16 -0
  152. package/src/lib/components/ui/dropdown-menu/dropdown-menu-group.jsx +7 -0
  153. package/src/lib/components/ui/dropdown-menu/dropdown-menu-item.jsx +20 -0
  154. package/src/lib/components/ui/dropdown-menu/dropdown-menu-label.jsx +17 -0
  155. package/src/lib/components/ui/dropdown-menu/dropdown-menu-portal.jsx +4 -0
  156. package/src/lib/components/ui/dropdown-menu/dropdown-menu-radio-group.jsx +7 -0
  157. package/src/lib/components/ui/dropdown-menu/dropdown-menu-radio-item.jsx +29 -0
  158. package/src/lib/components/ui/dropdown-menu/dropdown-menu-separator.jsx +15 -0
  159. package/src/lib/components/ui/dropdown-menu/dropdown-menu-shortcut.jsx +16 -0
  160. package/src/lib/components/ui/dropdown-menu/dropdown-menu-sub-content.jsx +15 -0
  161. package/src/lib/components/ui/dropdown-menu/dropdown-menu-sub-trigger.jsx +23 -0
  162. package/src/lib/components/ui/dropdown-menu/dropdown-menu-sub.jsx +4 -0
  163. package/src/lib/components/ui/dropdown-menu/dropdown-menu-trigger.jsx +7 -0
  164. package/src/lib/components/ui/dropdown-menu/dropdown-menu.jsx +4 -0
  165. package/src/lib/components/ui/dropdown-menu/index.js +52 -52
  166. package/src/lib/components/ui/input/index.js +5 -5
  167. package/src/lib/components/ui/input/input.jsx +19 -0
  168. package/src/lib/components/ui/label/index.js +5 -5
  169. package/src/lib/components/ui/label/label.jsx +19 -0
  170. package/src/lib/components/ui/panel/index.js +21 -21
  171. package/src/lib/components/ui/panel/panel-body.jsx +11 -0
  172. package/src/lib/components/ui/panel/panel-close.jsx +16 -0
  173. package/src/lib/components/ui/panel/panel-content.jsx +29 -0
  174. package/src/lib/components/ui/panel/panel-footer.jsx +11 -0
  175. package/src/lib/components/ui/panel/panel-header.jsx +11 -0
  176. package/src/lib/components/ui/panel/panel-title.jsx +12 -0
  177. package/src/lib/components/ui/panel/panel.jsx +4 -0
  178. package/src/lib/components/ui/popover/index.js +26 -26
  179. package/src/lib/components/ui/popover/popover-close.jsx +7 -0
  180. package/src/lib/components/ui/popover/popover-content.jsx +22 -0
  181. package/src/lib/components/ui/popover/popover-description.jsx +11 -0
  182. package/src/lib/components/ui/popover/popover-header.jsx +11 -0
  183. package/src/lib/components/ui/popover/popover-portal.jsx +4 -0
  184. package/src/lib/components/ui/popover/popover-title.jsx +11 -0
  185. package/src/lib/components/ui/popover/popover-trigger.jsx +8 -0
  186. package/src/lib/components/ui/popover/popover.jsx +4 -0
  187. package/src/lib/components/ui/searchable-list.jsx +159 -0
  188. package/src/lib/components/ui/select/index.js +35 -35
  189. package/src/lib/components/ui/select/select-content.jsx +30 -0
  190. package/src/lib/components/ui/select/select-group-heading.jsx +17 -0
  191. package/src/lib/components/ui/select/select-group.jsx +15 -0
  192. package/src/lib/components/ui/select/select-item.jsx +26 -0
  193. package/src/lib/components/ui/select/select-label.jsx +11 -0
  194. package/src/lib/components/ui/select/select-portal.jsx +4 -0
  195. package/src/lib/components/ui/select/select-scroll-down-button.jsx +18 -0
  196. package/src/lib/components/ui/select/select-scroll-up-button.jsx +18 -0
  197. package/src/lib/components/ui/select/select-separator.jsx +15 -0
  198. package/src/lib/components/ui/select/select-trigger.jsx +25 -0
  199. package/src/lib/components/ui/select/select.jsx +4 -0
  200. package/src/lib/components/ui/separator/index.js +5 -5
  201. package/src/lib/components/ui/separator/separator.jsx +22 -0
  202. package/src/lib/components/ui/sheet/index.js +32 -32
  203. package/src/lib/components/ui/sheet/sheet-close.jsx +7 -0
  204. package/src/lib/components/ui/sheet/sheet-content.jsx +35 -0
  205. package/src/lib/components/ui/sheet/sheet-description.jsx +15 -0
  206. package/src/lib/components/ui/sheet/sheet-footer.jsx +11 -0
  207. package/src/lib/components/ui/sheet/sheet-header.jsx +11 -0
  208. package/src/lib/components/ui/sheet/sheet-overlay.jsx +15 -0
  209. package/src/lib/components/ui/sheet/sheet-portal.jsx +4 -0
  210. package/src/lib/components/ui/sheet/sheet-title.jsx +15 -0
  211. package/src/lib/components/ui/sheet/sheet-trigger.jsx +7 -0
  212. package/src/lib/components/ui/sheet/sheet.jsx +4 -0
  213. package/src/lib/components/ui/textarea/index.js +5 -5
  214. package/src/lib/components/ui/textarea/textarea.jsx +18 -0
  215. package/src/lib/components/ui/toggle/index.js +6 -9
  216. package/src/lib/components/ui/toggle/toggle.jsx +36 -0
  217. package/src/lib/components/ui/toggle-group/index.js +8 -8
  218. package/src/lib/components/ui/toggle-group/toggle-group-item.jsx +29 -0
  219. package/src/lib/components/ui/toggle-group/toggle-group.jsx +43 -0
  220. package/src/lib/components/ui/tooltip/index.js +3 -3
  221. package/src/lib/components/ui/tooltip/tooltip-content.jsx +21 -0
  222. package/src/lib/components/ui/tooltip/tooltip-trigger.jsx +23 -0
  223. package/src/lib/components/ui/tooltip/tooltip.jsx +11 -0
  224. package/src/lib/components/ui/trigger-button/index.js +3 -3
  225. package/src/lib/components/ui/trigger-button/trigger-button.css +38 -0
  226. package/src/lib/components/ui/trigger-button/trigger-button.jsx +63 -0
  227. package/src/logger/devLogger.js +238 -0
  228. package/src/logger/devLogger.test.js +193 -0
  229. package/src/modes.test.js +4 -4
  230. package/src/mountStoryboardCore.js +123 -27
  231. package/src/paletteProviders.js +3 -0
  232. package/src/paletteProviders.test.js +2 -2
  233. package/src/server/index.js +98 -36
  234. package/src/sidepanel.css +214 -0
  235. package/src/styles/tailwind.css +1 -1
  236. package/src/svelte-plugin-ui/__tests__/ModeSwitch.test.ts +8 -8
  237. package/src/svelte-plugin-ui/__tests__/ToolbarShell.test.ts +11 -10
  238. package/src/svelte-plugin-ui/components/Icon.css +11 -0
  239. package/src/svelte-plugin-ui/components/Icon.jsx +281 -0
  240. package/src/svelte-plugin-ui/components/ModeSwitch.css +90 -0
  241. package/src/svelte-plugin-ui/components/ModeSwitch.jsx +47 -0
  242. package/src/svelte-plugin-ui/components/ToolbarShell.css +80 -0
  243. package/src/svelte-plugin-ui/components/ToolbarShell.jsx +84 -0
  244. package/src/svelte-plugin-ui/components/Viewfinder.css +412 -0
  245. package/src/svelte-plugin-ui/components/Viewfinder.jsx +512 -0
  246. package/src/svelte-plugin-ui/mount.ts +12 -16
  247. package/src/toolRegistry.js +4 -4
  248. package/src/toolbarConfigStore.js +30 -0
  249. package/src/tools/handlers/autosync.js +1 -1
  250. package/src/tools/handlers/canvasAddWidget.js +1 -1
  251. package/src/tools/handlers/canvasAgents.js +19 -0
  252. package/src/tools/handlers/canvasToolbar.js +8 -8
  253. package/src/tools/handlers/commandPalette.js +9 -0
  254. package/src/tools/handlers/comments.js +1 -1
  255. package/src/tools/handlers/create.js +1 -1
  256. package/src/tools/handlers/devtools.js +16 -0
  257. package/src/tools/handlers/devtools.test.js +38 -0
  258. package/src/tools/handlers/flows.js +1 -1
  259. package/src/tools/handlers/hideChrome.js +9 -0
  260. package/src/tools/handlers/paletteTheme.js +35 -0
  261. package/src/tools/handlers/theme.js +1 -1
  262. package/src/tools/registry.js +4 -1
  263. package/src/tools/surfaces/commandList.js +3 -3
  264. package/src/tools/surfaces/mainToolbar.js +3 -3
  265. package/src/tools/surfaces/registry.js +4 -4
  266. package/src/ui/design-modes.ts +2 -2
  267. package/src/ui/viewfinder.ts +1 -1
  268. package/src/vite/server-plugin.js +242 -60
  269. package/src/workshop/features/createCanvas/CreateCanvasForm.jsx +260 -0
  270. package/src/workshop/features/createCanvas/index.js +1 -1
  271. package/src/workshop/features/createFlow/CreateFlowForm.jsx +334 -0
  272. package/src/workshop/features/createFlow/index.js +1 -1
  273. package/src/workshop/features/createPage/CreatePageForm.jsx +304 -0
  274. package/src/workshop/features/createPage/index.js +1 -1
  275. package/src/workshop/features/createPrototype/CreatePrototypeForm.jsx +289 -0
  276. package/src/workshop/features/createPrototype/index.js +1 -1
  277. package/src/workshop/features/createPrototype/server.js +98 -0
  278. package/src/workshop/features/createStory/CreateStoryForm.jsx +208 -0
  279. package/src/workshop/features/createStory/index.js +1 -1
  280. package/src/workshop/ui/WorkshopPanel.jsx +98 -0
  281. package/src/workshop/ui/mount.ts +1 -1
  282. package/src/worktree/port.js +48 -0
  283. package/src/worktree/serverRegistry.js +120 -0
  284. package/toolbar.config.json +93 -42
  285. package/widgets.config.json +580 -12
  286. package/src/ActionMenuButton.svelte +0 -119
  287. package/src/AutosyncMenuButton.svelte +0 -397
  288. package/src/CanvasCreateMenu.svelte +0 -295
  289. package/src/CanvasSnap.svelte +0 -87
  290. package/src/CanvasUndoRedo.svelte +0 -108
  291. package/src/CanvasZoomControl.svelte +0 -111
  292. package/src/CanvasZoomToFit.svelte +0 -52
  293. package/src/CommandMenu.svelte +0 -249
  294. package/src/CommandPalette.svelte +0 -33
  295. package/src/CommentsMenuButton.svelte +0 -53
  296. package/src/CoreUIBar.svelte +0 -847
  297. package/src/CreateMenuButton.svelte +0 -133
  298. package/src/DocPanel.svelte +0 -299
  299. package/src/InspectorPanel.svelte +0 -745
  300. package/src/PwaInstallBanner.svelte +0 -124
  301. package/src/SidePanel.svelte +0 -480
  302. package/src/ThemeMenuButton.svelte +0 -132
  303. package/src/comments/ui/AuthModal.svelte +0 -108
  304. package/src/comments/ui/CommentWindow.svelte +0 -333
  305. package/src/comments/ui/CommentsDrawer.svelte +0 -96
  306. package/src/comments/ui/Composer.svelte +0 -65
  307. package/src/lib/components/ui/alert/alert-action.svelte +0 -19
  308. package/src/lib/components/ui/alert/alert-description.svelte +0 -22
  309. package/src/lib/components/ui/alert/alert-title.svelte +0 -22
  310. package/src/lib/components/ui/alert/alert.svelte +0 -38
  311. package/src/lib/components/ui/avatar/avatar-badge.svelte +0 -25
  312. package/src/lib/components/ui/avatar/avatar-fallback.svelte +0 -20
  313. package/src/lib/components/ui/avatar/avatar-group-count.svelte +0 -22
  314. package/src/lib/components/ui/avatar/avatar-group.svelte +0 -22
  315. package/src/lib/components/ui/avatar/avatar-image.svelte +0 -17
  316. package/src/lib/components/ui/avatar/avatar.svelte +0 -24
  317. package/src/lib/components/ui/badge/badge.svelte +0 -44
  318. package/src/lib/components/ui/button/button.svelte +0 -108
  319. package/src/lib/components/ui/card/card-action.svelte +0 -21
  320. package/src/lib/components/ui/card/card-content.svelte +0 -19
  321. package/src/lib/components/ui/card/card-description.svelte +0 -19
  322. package/src/lib/components/ui/card/card-footer.svelte +0 -18
  323. package/src/lib/components/ui/card/card-header.svelte +0 -21
  324. package/src/lib/components/ui/card/card-title.svelte +0 -14
  325. package/src/lib/components/ui/card/card.svelte +0 -21
  326. package/src/lib/components/ui/checkbox/checkbox.svelte +0 -39
  327. package/src/lib/components/ui/collapsible/collapsible-content.svelte +0 -7
  328. package/src/lib/components/ui/collapsible/collapsible-trigger.svelte +0 -7
  329. package/src/lib/components/ui/collapsible/collapsible.svelte +0 -11
  330. package/src/lib/components/ui/dialog/dialog-close.svelte +0 -11
  331. package/src/lib/components/ui/dialog/dialog-content.svelte +0 -42
  332. package/src/lib/components/ui/dialog/dialog-description.svelte +0 -17
  333. package/src/lib/components/ui/dialog/dialog-footer.svelte +0 -29
  334. package/src/lib/components/ui/dialog/dialog-header.svelte +0 -19
  335. package/src/lib/components/ui/dialog/dialog-overlay.svelte +0 -17
  336. package/src/lib/components/ui/dialog/dialog-portal.svelte +0 -7
  337. package/src/lib/components/ui/dialog/dialog-title.svelte +0 -17
  338. package/src/lib/components/ui/dialog/dialog-trigger.svelte +0 -11
  339. package/src/lib/components/ui/dialog/dialog.svelte +0 -7
  340. package/src/lib/components/ui/dropdown-menu/dropdown-menu-checkbox-group.svelte +0 -16
  341. package/src/lib/components/ui/dropdown-menu/dropdown-menu-checkbox-item.svelte +0 -40
  342. package/src/lib/components/ui/dropdown-menu/dropdown-menu-content.svelte +0 -27
  343. package/src/lib/components/ui/dropdown-menu/dropdown-menu-group-heading.svelte +0 -18
  344. package/src/lib/components/ui/dropdown-menu/dropdown-menu-group.svelte +0 -7
  345. package/src/lib/components/ui/dropdown-menu/dropdown-menu-item.svelte +0 -24
  346. package/src/lib/components/ui/dropdown-menu/dropdown-menu-label.svelte +0 -20
  347. package/src/lib/components/ui/dropdown-menu/dropdown-menu-portal.svelte +0 -7
  348. package/src/lib/components/ui/dropdown-menu/dropdown-menu-radio-group.svelte +0 -16
  349. package/src/lib/components/ui/dropdown-menu/dropdown-menu-radio-item.svelte +0 -34
  350. package/src/lib/components/ui/dropdown-menu/dropdown-menu-separator.svelte +0 -17
  351. package/src/lib/components/ui/dropdown-menu/dropdown-menu-shortcut.svelte +0 -19
  352. package/src/lib/components/ui/dropdown-menu/dropdown-menu-sub-content.svelte +0 -17
  353. package/src/lib/components/ui/dropdown-menu/dropdown-menu-sub-trigger.svelte +0 -27
  354. package/src/lib/components/ui/dropdown-menu/dropdown-menu-sub.svelte +0 -7
  355. package/src/lib/components/ui/dropdown-menu/dropdown-menu-trigger.svelte +0 -7
  356. package/src/lib/components/ui/dropdown-menu/dropdown-menu.svelte +0 -7
  357. package/src/lib/components/ui/input/input.svelte +0 -40
  358. package/src/lib/components/ui/label/label.svelte +0 -20
  359. package/src/lib/components/ui/panel/panel-body.svelte +0 -13
  360. package/src/lib/components/ui/panel/panel-close.svelte +0 -16
  361. package/src/lib/components/ui/panel/panel-content.svelte +0 -33
  362. package/src/lib/components/ui/panel/panel-footer.svelte +0 -13
  363. package/src/lib/components/ui/panel/panel-header.svelte +0 -16
  364. package/src/lib/components/ui/panel/panel-title.svelte +0 -14
  365. package/src/lib/components/ui/panel/panel.svelte +0 -15
  366. package/src/lib/components/ui/popover/popover-close.svelte +0 -7
  367. package/src/lib/components/ui/popover/popover-content.svelte +0 -27
  368. package/src/lib/components/ui/popover/popover-description.svelte +0 -19
  369. package/src/lib/components/ui/popover/popover-header.svelte +0 -19
  370. package/src/lib/components/ui/popover/popover-portal.svelte +0 -7
  371. package/src/lib/components/ui/popover/popover-title.svelte +0 -19
  372. package/src/lib/components/ui/popover/popover-trigger.svelte +0 -17
  373. package/src/lib/components/ui/popover/popover.svelte +0 -7
  374. package/src/lib/components/ui/select/select-content.svelte +0 -40
  375. package/src/lib/components/ui/select/select-group-heading.svelte +0 -19
  376. package/src/lib/components/ui/select/select-group.svelte +0 -17
  377. package/src/lib/components/ui/select/select-item.svelte +0 -38
  378. package/src/lib/components/ui/select/select-label.svelte +0 -18
  379. package/src/lib/components/ui/select/select-portal.svelte +0 -7
  380. package/src/lib/components/ui/select/select-scroll-down-button.svelte +0 -20
  381. package/src/lib/components/ui/select/select-scroll-up-button.svelte +0 -20
  382. package/src/lib/components/ui/select/select-separator.svelte +0 -17
  383. package/src/lib/components/ui/select/select-trigger.svelte +0 -27
  384. package/src/lib/components/ui/select/select.svelte +0 -11
  385. package/src/lib/components/ui/separator/separator.svelte +0 -23
  386. package/src/lib/components/ui/sheet/sheet-close.svelte +0 -7
  387. package/src/lib/components/ui/sheet/sheet-content.svelte +0 -43
  388. package/src/lib/components/ui/sheet/sheet-description.svelte +0 -17
  389. package/src/lib/components/ui/sheet/sheet-footer.svelte +0 -18
  390. package/src/lib/components/ui/sheet/sheet-header.svelte +0 -19
  391. package/src/lib/components/ui/sheet/sheet-overlay.svelte +0 -17
  392. package/src/lib/components/ui/sheet/sheet-portal.svelte +0 -7
  393. package/src/lib/components/ui/sheet/sheet-title.svelte +0 -17
  394. package/src/lib/components/ui/sheet/sheet-trigger.svelte +0 -7
  395. package/src/lib/components/ui/sheet/sheet.svelte +0 -7
  396. package/src/lib/components/ui/textarea/textarea.svelte +0 -21
  397. package/src/lib/components/ui/toggle/toggle.svelte +0 -45
  398. package/src/lib/components/ui/toggle-group/toggle-group-item.svelte +0 -35
  399. package/src/lib/components/ui/toggle-group/toggle-group.svelte +0 -63
  400. package/src/lib/components/ui/tooltip/tooltip-content.svelte +0 -24
  401. package/src/lib/components/ui/tooltip/tooltip-trigger.svelte +0 -27
  402. package/src/lib/components/ui/tooltip/tooltip.svelte +0 -9
  403. package/src/lib/components/ui/trigger-button/trigger-button.svelte +0 -106
  404. package/src/svelte-plugin-ui/components/Icon.svelte +0 -181
  405. package/src/svelte-plugin-ui/components/ModeSwitch.svelte +0 -121
  406. package/src/svelte-plugin-ui/components/ToolbarShell.svelte +0 -150
  407. package/src/svelte-plugin-ui/components/Viewfinder.svelte +0 -1001
  408. package/src/tools/handlers/docs.js +0 -11
  409. package/src/workshop/features/createCanvas/CreateCanvasForm.svelte +0 -139
  410. package/src/workshop/features/createFlow/CreateFlowForm.svelte +0 -314
  411. package/src/workshop/features/createPage/CreatePageForm.svelte +0 -249
  412. package/src/workshop/features/createPrototype/CreatePrototypeForm.svelte +0 -287
  413. package/src/workshop/features/createStory/CreateStoryForm.svelte +0 -161
  414. package/src/workshop/ui/WorkshopPanel.svelte +0 -97
@@ -0,0 +1,15 @@
1
+ import { forwardRef } from "react";
2
+ import * as DialogPrimitive from "@radix-ui/react-dialog";
3
+ import { cn } from "../../../utils/index.js";
4
+
5
+ const DialogDescription = forwardRef(function DialogDescription({ className, ...props }, ref) {
6
+ return (
7
+ <DialogPrimitive.Description
8
+ ref={ref}
9
+ data-slot="dialog-description"
10
+ className={cn("text-muted-foreground *:[a]:hover:text-foreground text-sm *:[a]:underline *:[a]:underline-offset-3", className)}
11
+ {...props}
12
+ />
13
+ );
14
+ });
15
+ export default DialogDescription;
@@ -0,0 +1,23 @@
1
+ import { forwardRef } from "react";
2
+ import * as DialogPrimitive from "@radix-ui/react-dialog";
3
+ import { cn } from "../../../utils/index.js";
4
+ import { Button } from "../../../components/ui/button/index.js";
5
+
6
+ const DialogFooter = forwardRef(function DialogFooter({ className, children, showCloseButton = false, ...props }, ref) {
7
+ return (
8
+ <div
9
+ ref={ref}
10
+ data-slot="dialog-footer"
11
+ className={cn("bg-muted/50 -mx-4 -mb-4 rounded-b-xl border-t p-4 flex flex-col-reverse gap-2 sm:flex-row sm:justify-end", className)}
12
+ {...props}
13
+ >
14
+ {children}
15
+ {showCloseButton && (
16
+ <DialogPrimitive.Close asChild>
17
+ <Button variant="outline">Close</Button>
18
+ </DialogPrimitive.Close>
19
+ )}
20
+ </div>
21
+ );
22
+ });
23
+ export default DialogFooter;
@@ -0,0 +1,11 @@
1
+ import { forwardRef } from "react";
2
+ import { cn } from "../../../utils/index.js";
3
+
4
+ const DialogHeader = forwardRef(function DialogHeader({ className, children, ...props }, ref) {
5
+ return (
6
+ <div ref={ref} data-slot="dialog-header" className={cn("gap-2 flex flex-col", className)} {...props}>
7
+ {children}
8
+ </div>
9
+ );
10
+ });
11
+ export default DialogHeader;
@@ -0,0 +1,15 @@
1
+ import { forwardRef } from "react";
2
+ import * as DialogPrimitive from "@radix-ui/react-dialog";
3
+ import { cn } from "../../../utils/index.js";
4
+
5
+ const DialogOverlay = forwardRef(function DialogOverlay({ className, ...props }, ref) {
6
+ return (
7
+ <DialogPrimitive.Overlay
8
+ ref={ref}
9
+ data-slot="dialog-overlay"
10
+ className={cn("data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 bg-black/10 duration-100 supports-backdrop-filter:backdrop-blur-xs fixed inset-0 isolate z-50", className)}
11
+ {...props}
12
+ />
13
+ );
14
+ });
15
+ export default DialogOverlay;
@@ -0,0 +1,4 @@
1
+ import * as DialogPrimitive from "@radix-ui/react-dialog";
2
+ export default function DialogPortal(props) {
3
+ return <DialogPrimitive.Portal {...props} />;
4
+ }
@@ -0,0 +1,15 @@
1
+ import { forwardRef } from "react";
2
+ import * as DialogPrimitive from "@radix-ui/react-dialog";
3
+ import { cn } from "../../../utils/index.js";
4
+
5
+ const DialogTitle = forwardRef(function DialogTitle({ className, ...props }, ref) {
6
+ return (
7
+ <DialogPrimitive.Title
8
+ ref={ref}
9
+ data-slot="dialog-title"
10
+ className={cn("text-base leading-none font-medium", className)}
11
+ {...props}
12
+ />
13
+ );
14
+ });
15
+ export default DialogTitle;
@@ -0,0 +1,7 @@
1
+ import { forwardRef } from "react";
2
+ import * as DialogPrimitive from "@radix-ui/react-dialog";
3
+
4
+ const DialogTrigger = forwardRef(function DialogTrigger({ type = "button", ...props }, ref) {
5
+ return <DialogPrimitive.Trigger ref={ref} data-slot="dialog-trigger" type={type} {...props} />;
6
+ });
7
+ export default DialogTrigger;
@@ -0,0 +1,4 @@
1
+ import * as DialogPrimitive from "@radix-ui/react-dialog";
2
+ export default function Dialog({ children, ...props }) {
3
+ return <DialogPrimitive.Root {...props}>{children}</DialogPrimitive.Root>;
4
+ }
@@ -1,34 +1,34 @@
1
- import Root from "./dialog.svelte";
2
- import Portal from "./dialog-portal.svelte";
3
- import Title from "./dialog-title.svelte";
4
- import Footer from "./dialog-footer.svelte";
5
- import Header from "./dialog-header.svelte";
6
- import Overlay from "./dialog-overlay.svelte";
7
- import Content from "./dialog-content.svelte";
8
- import Description from "./dialog-description.svelte";
9
- import Trigger from "./dialog-trigger.svelte";
10
- import Close from "./dialog-close.svelte";
1
+ import Root from "./dialog.jsx";
2
+ import Portal from "./dialog-portal.jsx";
3
+ import Title from "./dialog-title.jsx";
4
+ import Footer from "./dialog-footer.jsx";
5
+ import Header from "./dialog-header.jsx";
6
+ import Overlay from "./dialog-overlay.jsx";
7
+ import Content from "./dialog-content.jsx";
8
+ import Description from "./dialog-description.jsx";
9
+ import Trigger from "./dialog-trigger.jsx";
10
+ import Close from "./dialog-close.jsx";
11
11
 
12
12
  export {
13
- Root,
14
- Title,
15
- Portal,
16
- Footer,
17
- Header,
18
- Trigger,
19
- Overlay,
20
- Content,
21
- Description,
22
- Close,
23
- //
24
- Root as Dialog,
25
- Title as DialogTitle,
26
- Portal as DialogPortal,
27
- Footer as DialogFooter,
28
- Header as DialogHeader,
29
- Trigger as DialogTrigger,
30
- Overlay as DialogOverlay,
31
- Content as DialogContent,
32
- Description as DialogDescription,
33
- Close as DialogClose,
34
- };
13
+ Root,
14
+ Title,
15
+ Portal,
16
+ Footer,
17
+ Header,
18
+ Trigger,
19
+ Overlay,
20
+ Content,
21
+ Description,
22
+ Close,
23
+ //
24
+ Root as Dialog,
25
+ Title as DialogTitle,
26
+ Portal as DialogPortal,
27
+ Footer as DialogFooter,
28
+ Header as DialogHeader,
29
+ Trigger as DialogTrigger,
30
+ Overlay as DialogOverlay,
31
+ Content as DialogContent,
32
+ Description as DialogDescription,
33
+ Close as DialogClose,
34
+ };
@@ -0,0 +1,8 @@
1
+ import { forwardRef } from "react";
2
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
3
+
4
+ // Radix doesn't have a CheckboxGroup — use a plain Group as container
5
+ const DropdownMenuCheckboxGroup = forwardRef(function DropdownMenuCheckboxGroup(props, ref) {
6
+ return <DropdownMenuPrimitive.Group ref={ref} data-slot="dropdown-menu-checkbox-group" {...props} />;
7
+ });
8
+ export default DropdownMenuCheckboxGroup;
@@ -0,0 +1,30 @@
1
+ import { forwardRef } from "react";
2
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
3
+ import { Check, Minus } from "lucide-react";
4
+ import { cn } from "../../../utils/index.js";
5
+
6
+ const DropdownMenuCheckboxItem = forwardRef(function DropdownMenuCheckboxItem({ className, children, checked, ...props }, ref) {
7
+ return (
8
+ <DropdownMenuPrimitive.CheckboxItem
9
+ ref={ref}
10
+ data-slot="dropdown-menu-checkbox-item"
11
+ className={cn(
12
+ "focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground gap-2 rounded-[4px] py-2 pr-8 pl-2.5 text-sm data-inset:pl-7 [&_svg:not([class*='size-'])]:size-4 relative flex cursor-default items-center outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0",
13
+ className
14
+ )}
15
+ checked={checked}
16
+ {...props}
17
+ >
18
+ <span
19
+ className="absolute right-2 flex items-center justify-center pointer-events-none"
20
+ data-slot="dropdown-menu-checkbox-item-indicator"
21
+ >
22
+ <DropdownMenuPrimitive.ItemIndicator>
23
+ {checked === "indeterminate" ? <Minus /> : <Check />}
24
+ </DropdownMenuPrimitive.ItemIndicator>
25
+ </span>
26
+ {children}
27
+ </DropdownMenuPrimitive.CheckboxItem>
28
+ );
29
+ });
30
+ export default DropdownMenuCheckboxItem;
@@ -0,0 +1,22 @@
1
+ import { forwardRef } from "react";
2
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
3
+ import { cn } from "../../../utils/index.js";
4
+
5
+ const DropdownMenuContent = forwardRef(function DropdownMenuContent({ className, sideOffset = 8, align = "start", ...props }, ref) {
6
+ return (
7
+ <DropdownMenuPrimitive.Portal>
8
+ <DropdownMenuPrimitive.Content
9
+ ref={ref}
10
+ data-slot="dropdown-menu-content"
11
+ sideOffset={sideOffset}
12
+ align={align}
13
+ className={cn(
14
+ "font-sans data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 ring-foreground/10 z-[10000] bg-popover border-3 border-border text-popover-foreground fill-popover-foreground min-w-40 rounded-xl p-2 shadow-xl duration-100 overflow-x-hidden overflow-y-auto",
15
+ className
16
+ )}
17
+ {...props}
18
+ />
19
+ </DropdownMenuPrimitive.Portal>
20
+ );
21
+ });
22
+ export default DropdownMenuContent;
@@ -0,0 +1,16 @@
1
+ import { forwardRef } from "react";
2
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
3
+ import { cn } from "../../../utils/index.js";
4
+
5
+ const DropdownMenuGroupHeading = forwardRef(function DropdownMenuGroupHeading({ className, inset, ...props }, ref) {
6
+ return (
7
+ <DropdownMenuPrimitive.Label
8
+ ref={ref}
9
+ data-slot="dropdown-menu-group-heading"
10
+ data-inset={inset}
11
+ className={cn("px-2 py-1.5 text-sm font-semibold data-[inset]:ps-8", className)}
12
+ {...props}
13
+ />
14
+ );
15
+ });
16
+ export default DropdownMenuGroupHeading;
@@ -0,0 +1,7 @@
1
+ import { forwardRef } from "react";
2
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
3
+
4
+ const DropdownMenuGroup = forwardRef(function DropdownMenuGroup(props, ref) {
5
+ return <DropdownMenuPrimitive.Group ref={ref} data-slot="dropdown-menu-group" {...props} />;
6
+ });
7
+ export default DropdownMenuGroup;
@@ -0,0 +1,20 @@
1
+ import { forwardRef } from "react";
2
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
3
+ import { cn } from "../../../utils/index.js";
4
+
5
+ const DropdownMenuItem = forwardRef(function DropdownMenuItem({ className, inset, variant = "default", ...props }, ref) {
6
+ return (
7
+ <DropdownMenuPrimitive.Item
8
+ ref={ref}
9
+ data-slot="dropdown-menu-item"
10
+ data-inset={inset}
11
+ data-variant={variant}
12
+ className={cn(
13
+ "focus:bg-accent focus:text-accent-foreground data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 dark:data-[variant=destructive]:focus:bg-destructive/20 data-[variant=destructive]:focus:text-destructive data-[variant=destructive]:*:[svg]:text-destructive not-data-[variant=destructive]:focus:**:text-accent-foreground gap-2 rounded-[4px] px-2.5 py-2 text-sm data-inset:pl-7 [&_svg:not([class*='size-'])]:size-4 group/dropdown-menu-item relative flex cursor-default items-center outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0",
14
+ className
15
+ )}
16
+ {...props}
17
+ />
18
+ );
19
+ });
20
+ export default DropdownMenuItem;
@@ -0,0 +1,17 @@
1
+ import { forwardRef } from "react";
2
+ import { cn } from "../../../utils/index.js";
3
+
4
+ const DropdownMenuLabel = forwardRef(function DropdownMenuLabel({ className, inset, children, ...props }, ref) {
5
+ return (
6
+ <div
7
+ ref={ref}
8
+ data-slot="dropdown-menu-label"
9
+ data-inset={inset}
10
+ className={cn("text-muted-foreground px-1.5 py-1 text-xs font-medium data-inset:pl-7 data-[inset]:pl-8", className)}
11
+ {...props}
12
+ >
13
+ {children}
14
+ </div>
15
+ );
16
+ });
17
+ export default DropdownMenuLabel;
@@ -0,0 +1,4 @@
1
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
2
+ export default function DropdownMenuPortal(props) {
3
+ return <DropdownMenuPrimitive.Portal {...props} />;
4
+ }
@@ -0,0 +1,7 @@
1
+ import { forwardRef } from "react";
2
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
3
+
4
+ const DropdownMenuRadioGroup = forwardRef(function DropdownMenuRadioGroup(props, ref) {
5
+ return <DropdownMenuPrimitive.RadioGroup ref={ref} data-slot="dropdown-menu-radio-group" {...props} />;
6
+ });
7
+ export default DropdownMenuRadioGroup;
@@ -0,0 +1,29 @@
1
+ import { forwardRef } from "react";
2
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
3
+ import { Check } from "lucide-react";
4
+ import { cn } from "../../../utils/index.js";
5
+
6
+ const DropdownMenuRadioItem = forwardRef(function DropdownMenuRadioItem({ className, children, ...props }, ref) {
7
+ return (
8
+ <DropdownMenuPrimitive.RadioItem
9
+ ref={ref}
10
+ data-slot="dropdown-menu-radio-item"
11
+ className={cn(
12
+ "focus:bg-accent focus:text-accent-foreground focus:**:text-accent-foreground gap-1.5 rounded-md py-1 pr-8 pl-1.5 text-sm data-inset:pl-7 [&_svg:not([class*='size-'])]:size-4 relative flex cursor-default items-center outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0",
13
+ className
14
+ )}
15
+ {...props}
16
+ >
17
+ <span
18
+ className="absolute right-2 flex items-center justify-center pointer-events-none"
19
+ data-slot="dropdown-menu-radio-item-indicator"
20
+ >
21
+ <DropdownMenuPrimitive.ItemIndicator>
22
+ <Check />
23
+ </DropdownMenuPrimitive.ItemIndicator>
24
+ </span>
25
+ {children}
26
+ </DropdownMenuPrimitive.RadioItem>
27
+ );
28
+ });
29
+ export default DropdownMenuRadioItem;
@@ -0,0 +1,15 @@
1
+ import { forwardRef } from "react";
2
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
3
+ import { cn } from "../../../utils/index.js";
4
+
5
+ const DropdownMenuSeparator = forwardRef(function DropdownMenuSeparator({ className, ...props }, ref) {
6
+ return (
7
+ <DropdownMenuPrimitive.Separator
8
+ ref={ref}
9
+ data-slot="dropdown-menu-separator"
10
+ className={cn("bg-border -mx-1.5 my-1 h-px", className)}
11
+ {...props}
12
+ />
13
+ );
14
+ });
15
+ export default DropdownMenuSeparator;
@@ -0,0 +1,16 @@
1
+ import { forwardRef } from "react";
2
+ import { cn } from "../../../utils/index.js";
3
+
4
+ const DropdownMenuShortcut = forwardRef(function DropdownMenuShortcut({ className, children, ...props }, ref) {
5
+ return (
6
+ <span
7
+ ref={ref}
8
+ data-slot="dropdown-menu-shortcut"
9
+ className={cn("text-muted-foreground group-focus/dropdown-menu-item:text-accent-foreground ml-auto text-xs tracking-widest", className)}
10
+ {...props}
11
+ >
12
+ {children}
13
+ </span>
14
+ );
15
+ });
16
+ export default DropdownMenuShortcut;
@@ -0,0 +1,15 @@
1
+ import { forwardRef } from "react";
2
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
3
+ import { cn } from "../../../utils/index.js";
4
+
5
+ const DropdownMenuSubContent = forwardRef(function DropdownMenuSubContent({ className, ...props }, ref) {
6
+ return (
7
+ <DropdownMenuPrimitive.SubContent
8
+ ref={ref}
9
+ data-slot="dropdown-menu-sub-content"
10
+ className={cn("font-sans data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 z-[10000] bg-popover border-3 border-border text-popover-foreground fill-popover-foreground min-w-[96px] rounded-xl p-2 shadow-xl duration-100 w-auto", className)}
11
+ {...props}
12
+ />
13
+ );
14
+ });
15
+ export default DropdownMenuSubContent;
@@ -0,0 +1,23 @@
1
+ import { forwardRef } from "react";
2
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
3
+ import { ChevronRight } from "lucide-react";
4
+ import { cn } from "../../../utils/index.js";
5
+
6
+ const DropdownMenuSubTrigger = forwardRef(function DropdownMenuSubTrigger({ className, inset, children, ...props }, ref) {
7
+ return (
8
+ <DropdownMenuPrimitive.SubTrigger
9
+ ref={ref}
10
+ data-slot="dropdown-menu-sub-trigger"
11
+ data-inset={inset}
12
+ className={cn(
13
+ "focus:bg-accent focus:text-accent-foreground data-[state=open]:bg-accent data-[state=open]:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground gap-1.5 rounded-md px-2.5 py-2 text-sm data-inset:pl-7 [&_svg:not([class*='size-'])]:size-4 flex cursor-default items-center outline-hidden select-none data-[inset]:pl-8 [&_svg]:pointer-events-none [&_svg]:shrink-0",
14
+ className
15
+ )}
16
+ {...props}
17
+ >
18
+ {children}
19
+ <ChevronRight className="ml-auto" />
20
+ </DropdownMenuPrimitive.SubTrigger>
21
+ );
22
+ });
23
+ export default DropdownMenuSubTrigger;
@@ -0,0 +1,4 @@
1
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
2
+ export default function DropdownMenuSub({ children, ...props }) {
3
+ return <DropdownMenuPrimitive.Sub {...props}>{children}</DropdownMenuPrimitive.Sub>;
4
+ }
@@ -0,0 +1,7 @@
1
+ import { forwardRef } from "react";
2
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
3
+
4
+ const DropdownMenuTrigger = forwardRef(function DropdownMenuTrigger({ children, ...props }, ref) {
5
+ return <DropdownMenuPrimitive.Trigger ref={ref} asChild {...props}>{children}</DropdownMenuPrimitive.Trigger>;
6
+ });
7
+ export default DropdownMenuTrigger;
@@ -0,0 +1,4 @@
1
+ import * as DropdownMenuPrimitive from "@radix-ui/react-dropdown-menu";
2
+ export default function DropdownMenu({ children, ...props }) {
3
+ return <DropdownMenuPrimitive.Root {...props}>{children}</DropdownMenuPrimitive.Root>;
4
+ }
@@ -1,54 +1,54 @@
1
- import Root from "./dropdown-menu.svelte";
2
- import Sub from "./dropdown-menu-sub.svelte";
3
- import CheckboxGroup from "./dropdown-menu-checkbox-group.svelte";
4
- import CheckboxItem from "./dropdown-menu-checkbox-item.svelte";
5
- import Content from "./dropdown-menu-content.svelte";
6
- import Group from "./dropdown-menu-group.svelte";
7
- import Item from "./dropdown-menu-item.svelte";
8
- import Label from "./dropdown-menu-label.svelte";
9
- import RadioGroup from "./dropdown-menu-radio-group.svelte";
10
- import RadioItem from "./dropdown-menu-radio-item.svelte";
11
- import Separator from "./dropdown-menu-separator.svelte";
12
- import Shortcut from "./dropdown-menu-shortcut.svelte";
13
- import Trigger from "./dropdown-menu-trigger.svelte";
14
- import SubContent from "./dropdown-menu-sub-content.svelte";
15
- import SubTrigger from "./dropdown-menu-sub-trigger.svelte";
16
- import GroupHeading from "./dropdown-menu-group-heading.svelte";
17
- import Portal from "./dropdown-menu-portal.svelte";
1
+ import Root from "./dropdown-menu.jsx";
2
+ import Sub from "./dropdown-menu-sub.jsx";
3
+ import CheckboxGroup from "./dropdown-menu-checkbox-group.jsx";
4
+ import CheckboxItem from "./dropdown-menu-checkbox-item.jsx";
5
+ import Content from "./dropdown-menu-content.jsx";
6
+ import Group from "./dropdown-menu-group.jsx";
7
+ import Item from "./dropdown-menu-item.jsx";
8
+ import Label from "./dropdown-menu-label.jsx";
9
+ import RadioGroup from "./dropdown-menu-radio-group.jsx";
10
+ import RadioItem from "./dropdown-menu-radio-item.jsx";
11
+ import Separator from "./dropdown-menu-separator.jsx";
12
+ import Shortcut from "./dropdown-menu-shortcut.jsx";
13
+ import Trigger from "./dropdown-menu-trigger.jsx";
14
+ import SubContent from "./dropdown-menu-sub-content.jsx";
15
+ import SubTrigger from "./dropdown-menu-sub-trigger.jsx";
16
+ import GroupHeading from "./dropdown-menu-group-heading.jsx";
17
+ import Portal from "./dropdown-menu-portal.jsx";
18
18
 
19
19
  export {
20
- CheckboxGroup,
21
- CheckboxItem,
22
- Content,
23
- Portal,
24
- Root as DropdownMenu,
25
- CheckboxGroup as DropdownMenuCheckboxGroup,
26
- CheckboxItem as DropdownMenuCheckboxItem,
27
- Content as DropdownMenuContent,
28
- Portal as DropdownMenuPortal,
29
- Group as DropdownMenuGroup,
30
- Item as DropdownMenuItem,
31
- Label as DropdownMenuLabel,
32
- RadioGroup as DropdownMenuRadioGroup,
33
- RadioItem as DropdownMenuRadioItem,
34
- Separator as DropdownMenuSeparator,
35
- Shortcut as DropdownMenuShortcut,
36
- Sub as DropdownMenuSub,
37
- SubContent as DropdownMenuSubContent,
38
- SubTrigger as DropdownMenuSubTrigger,
39
- Trigger as DropdownMenuTrigger,
40
- GroupHeading as DropdownMenuGroupHeading,
41
- Group,
42
- GroupHeading,
43
- Item,
44
- Label,
45
- RadioGroup,
46
- RadioItem,
47
- Root,
48
- Separator,
49
- Shortcut,
50
- Sub,
51
- SubContent,
52
- SubTrigger,
53
- Trigger,
54
- };
20
+ CheckboxGroup,
21
+ CheckboxItem,
22
+ Content,
23
+ Portal,
24
+ Root as DropdownMenu,
25
+ CheckboxGroup as DropdownMenuCheckboxGroup,
26
+ CheckboxItem as DropdownMenuCheckboxItem,
27
+ Content as DropdownMenuContent,
28
+ Portal as DropdownMenuPortal,
29
+ Group as DropdownMenuGroup,
30
+ Item as DropdownMenuItem,
31
+ Label as DropdownMenuLabel,
32
+ RadioGroup as DropdownMenuRadioGroup,
33
+ RadioItem as DropdownMenuRadioItem,
34
+ Separator as DropdownMenuSeparator,
35
+ Shortcut as DropdownMenuShortcut,
36
+ Sub as DropdownMenuSub,
37
+ SubContent as DropdownMenuSubContent,
38
+ SubTrigger as DropdownMenuSubTrigger,
39
+ Trigger as DropdownMenuTrigger,
40
+ GroupHeading as DropdownMenuGroupHeading,
41
+ Group,
42
+ GroupHeading,
43
+ Item,
44
+ Label,
45
+ RadioGroup,
46
+ RadioItem,
47
+ Root,
48
+ Separator,
49
+ Shortcut,
50
+ Sub,
51
+ SubContent,
52
+ SubTrigger,
53
+ Trigger,
54
+ };
@@ -1,7 +1,7 @@
1
- import Root from "./input.svelte";
1
+ import Root from "./input.jsx";
2
2
 
3
3
  export {
4
- Root,
5
- //
6
- Root as Input,
7
- };
4
+ Root,
5
+ //
6
+ Root as Input,
7
+ };
@@ -0,0 +1,19 @@
1
+ import { forwardRef } from "react";
2
+ import { cn } from "../../../utils/index.js";
3
+
4
+ const Input = forwardRef(function Input({ className, type, "data-slot": dataSlot = "input", ...props }, ref) {
5
+ return (
6
+ <input
7
+ ref={ref}
8
+ data-slot={dataSlot}
9
+ type={type}
10
+ className={cn(
11
+ "dark:bg-input/30 border-input focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:aria-invalid:border-destructive/50 disabled:bg-input/50 dark:disabled:bg-input/80 h-8 rounded-lg border bg-transparent px-2.5 py-1 text-base transition-colors file:h-6 file:text-sm file:font-medium focus-visible:ring-3 aria-invalid:ring-3 md:text-sm file:text-foreground placeholder:text-muted-foreground w-full min-w-0 outline-none file:inline-flex file:border-0 file:bg-transparent disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-50",
12
+ className
13
+ )}
14
+ {...props}
15
+ />
16
+ );
17
+ });
18
+
19
+ export default Input;
@@ -1,7 +1,7 @@
1
- import Root from "./label.svelte";
1
+ import Root from "./label.jsx";
2
2
 
3
3
  export {
4
- Root,
5
- //
6
- Root as Label,
7
- };
4
+ Root,
5
+ //
6
+ Root as Label,
7
+ };
@@ -0,0 +1,19 @@
1
+ import { forwardRef } from "react";
2
+ import * as LabelPrimitive from "@radix-ui/react-label";
3
+ import { cn } from "../../../utils/index.js";
4
+
5
+ const Label = forwardRef(function Label({ className, ...props }, ref) {
6
+ return (
7
+ <LabelPrimitive.Root
8
+ ref={ref}
9
+ data-slot="label"
10
+ className={cn(
11
+ "gap-2 text-sm leading-none font-medium group-data-[disabled=true]:opacity-50 peer-disabled:opacity-50 flex items-center select-none group-data-[disabled=true]:pointer-events-none peer-disabled:cursor-not-allowed",
12
+ className
13
+ )}
14
+ {...props}
15
+ />
16
+ );
17
+ });
18
+
19
+ export default Label;