sparkdesign 0.4.5 → 0.4.7

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 (377) hide show
  1. package/AI_README.md +60 -0
  2. package/README.md +74 -22
  3. package/cli/dist/commands/add.js +23 -13
  4. package/cli/dist/commands/diff.js +8 -4
  5. package/cli/dist/commands/init.js +85 -10
  6. package/cli/dist/commands/list.js +8 -4
  7. package/cli/dist/index.js +9 -6
  8. package/cli/dist/utils/config.js +16 -8
  9. package/cli/dist/utils/package-manager.js +75 -0
  10. package/cli/dist/utils/registry.js +8 -4
  11. package/cli/dist/utils/tokens.js +33 -25
  12. package/cli/dist/utils/transform.js +9 -5
  13. package/cli/dist/utils/tsconfig.js +182 -0
  14. package/cli/registry/AGENTS.md +25 -0
  15. package/cli/registry/__tests__/chat/thinking-indicator.test.tsx +2 -2
  16. package/cli/registry/agent-manifest.json +794 -0
  17. package/cli/registry/basic/alert.tsx +76 -0
  18. package/cli/registry/basic/aspect-ratio.tsx +8 -0
  19. package/cli/registry/basic/breadcrumb.tsx +117 -0
  20. package/cli/registry/basic/button-group.tsx +79 -0
  21. package/cli/registry/basic/button.tsx +1 -1
  22. package/cli/registry/basic/calendar.tsx +221 -0
  23. package/cli/registry/basic/card.tsx +103 -0
  24. package/cli/registry/basic/carousel.tsx +241 -0
  25. package/cli/registry/basic/chart.tsx +372 -0
  26. package/cli/registry/basic/checkbox.tsx +42 -0
  27. package/cli/registry/basic/collapsible-card.tsx +2 -2
  28. package/cli/registry/basic/combobox.tsx +75 -0
  29. package/cli/registry/basic/command.tsx +184 -0
  30. package/cli/registry/basic/context-menu.tsx +239 -0
  31. package/cli/registry/basic/data-table.tsx +73 -0
  32. package/cli/registry/basic/date-picker.tsx +13 -0
  33. package/cli/registry/basic/dialog.tsx +169 -0
  34. package/cli/registry/basic/direction.tsx +25 -0
  35. package/cli/registry/basic/drawer.tsx +164 -0
  36. package/cli/registry/basic/dropdown-menu.tsx +0 -4
  37. package/cli/registry/basic/empty.tsx +104 -0
  38. package/cli/registry/basic/field.tsx +248 -0
  39. package/cli/registry/basic/hover-card.tsx +58 -0
  40. package/cli/registry/basic/input-group.tsx +168 -0
  41. package/cli/registry/basic/input-otp.tsx +75 -0
  42. package/cli/registry/basic/input.tsx +27 -0
  43. package/cli/registry/basic/item.tsx +204 -0
  44. package/cli/registry/basic/label.tsx +24 -0
  45. package/cli/registry/basic/menubar.tsx +274 -0
  46. package/cli/registry/basic/native-select.tsx +62 -0
  47. package/cli/registry/basic/navigation-menu.tsx +168 -0
  48. package/cli/registry/basic/popover.tsx +59 -0
  49. package/cli/registry/basic/scroll-area.tsx +58 -0
  50. package/cli/registry/basic/select.tsx +2 -1
  51. package/cli/registry/basic/separator.tsx +26 -0
  52. package/cli/registry/basic/sheet.tsx +18 -0
  53. package/cli/registry/basic/textarea.tsx +25 -0
  54. package/cli/registry/basic/toggle.tsx +1 -1
  55. package/cli/registry/basic/typography.tsx +1 -1
  56. package/cli/registry/chat/chat-input/chat-input-folder-selector.tsx +1 -1
  57. package/cli/registry/chat/chat-input/chat-input-textarea.tsx +1 -1
  58. package/cli/registry/chat/chat-input/compound.tsx +4 -3
  59. package/cli/registry/chat/chat-input/context.tsx +4 -1
  60. package/cli/registry/chat/chat-input/folder-permission-dialog.tsx +2 -2
  61. package/cli/registry/chat/code-block-part.tsx +1 -1
  62. package/cli/registry/chat/conversation-anchor-nav.tsx +349 -0
  63. package/cli/registry/chat/file-attachment.tsx +2 -1
  64. package/cli/registry/chat/file-review-part.tsx +21 -21
  65. package/cli/registry/chat/image-generating.tsx +1 -1
  66. package/cli/registry/chat/markdown.tsx +2 -2
  67. package/cli/registry/chat/queue-indicator.tsx +1 -0
  68. package/cli/registry/chat/response/context.tsx +1 -1
  69. package/cli/registry/chat/streaming-markdown-block.tsx +12 -8
  70. package/cli/registry/chat/thinking-indicator.tsx +1 -1
  71. package/cli/registry/chat/tool-invocation-card.tsx +4 -1
  72. package/cli/registry/lib/file-icon-maps.ts +22 -22
  73. package/cli/registry/meta.json +518 -0
  74. package/cli/registry/tokens/index.css +8 -5
  75. package/cli/registry/tokens/ontology.json +404 -0
  76. package/cli/registry/tokens/scale/presets/compact.css +16 -5
  77. package/cli/registry/tokens/scale/presets/dense.css +13 -2
  78. package/cli/registry/tokens/scale/presets/sharp.css +18 -6
  79. package/cli/registry/tokens/scale/presets/soft.css +23 -1
  80. package/cli/registry/tokens/theme-base.css +235 -0
  81. package/{dist/tokens/themes/dark-qoder.css → cli/registry/tokens/themes/dark-mint.css} +1 -1
  82. package/cli/registry/tokens/themes/dark-parchment.css +104 -103
  83. package/{dist/tokens/themes/light-qoder.css → cli/registry/tokens/themes/light-mint.css} +1 -1
  84. package/cli/registry/tokens/themes/light-parchment.css +103 -102
  85. package/dist/registry/basic/alert-dialog.d.ts +7 -5
  86. package/dist/registry/basic/alert.d.ts +24 -0
  87. package/dist/registry/basic/aspect-ratio.d.ts +16 -0
  88. package/dist/registry/basic/avatar.d.ts +7 -5
  89. package/dist/registry/basic/breadcrumb.d.ts +24 -0
  90. package/dist/registry/basic/button-group.d.ts +26 -0
  91. package/dist/registry/basic/button.d.ts +1 -1
  92. package/dist/registry/basic/calendar.d.ts +22 -0
  93. package/dist/registry/basic/card.d.ts +27 -0
  94. package/dist/registry/basic/carousel.d.ts +19 -0
  95. package/dist/registry/basic/chart.d.ts +55 -0
  96. package/dist/registry/basic/checkbox.d.ts +21 -0
  97. package/dist/registry/basic/collapse.d.ts +7 -5
  98. package/dist/registry/basic/collapsible-card.d.ts +7 -6
  99. package/dist/registry/basic/collapsible.d.ts +7 -5
  100. package/dist/registry/basic/combobox.d.ts +26 -0
  101. package/dist/registry/basic/command.d.ts +18 -0
  102. package/dist/registry/basic/context-menu.d.ts +44 -0
  103. package/dist/registry/basic/data-table.d.ts +26 -0
  104. package/dist/registry/basic/date-picker.d.ts +18 -0
  105. package/dist/registry/basic/dialog.d.ts +39 -0
  106. package/dist/registry/basic/direction.d.ts +19 -0
  107. package/dist/registry/basic/drawer.d.ts +37 -0
  108. package/dist/registry/basic/dropdown-menu.d.ts +7 -5
  109. package/dist/registry/basic/empty.d.ts +22 -0
  110. package/dist/registry/basic/field.d.ts +24 -0
  111. package/dist/registry/basic/hover-card.d.ts +22 -0
  112. package/dist/registry/basic/icons-inline.d.ts +7 -5
  113. package/dist/registry/basic/input-group.d.ts +27 -0
  114. package/dist/registry/basic/input-otp.d.ts +22 -0
  115. package/dist/registry/basic/input.d.ts +15 -0
  116. package/dist/registry/basic/item.d.ts +34 -0
  117. package/dist/registry/basic/kbd.d.ts +7 -5
  118. package/dist/registry/basic/label.d.ts +16 -0
  119. package/dist/registry/basic/menubar.d.ts +37 -0
  120. package/dist/registry/basic/native-select.d.ts +18 -0
  121. package/dist/registry/basic/navigation-menu.d.ts +25 -0
  122. package/dist/registry/basic/pagination.d.ts +7 -5
  123. package/dist/registry/basic/popover.d.ts +23 -0
  124. package/dist/registry/basic/progress.d.ts +7 -5
  125. package/dist/registry/basic/radio-group.d.ts +7 -5
  126. package/dist/registry/basic/resizable.d.ts +7 -5
  127. package/dist/registry/basic/scroll-area.d.ts +5 -0
  128. package/dist/registry/basic/select.d.ts +7 -5
  129. package/dist/registry/basic/separator.d.ts +16 -0
  130. package/dist/registry/basic/sheet.d.ts +13 -0
  131. package/dist/registry/basic/slider.d.ts +7 -5
  132. package/dist/registry/basic/sonner.d.ts +7 -5
  133. package/dist/registry/basic/switch.d.ts +7 -5
  134. package/dist/registry/basic/tabs.d.ts +7 -5
  135. package/dist/registry/basic/tag.d.ts +7 -5
  136. package/dist/registry/basic/textarea.d.ts +15 -0
  137. package/dist/registry/basic/theme-from-document.d.ts +7 -5
  138. package/dist/registry/basic/toggle.d.ts +1 -1
  139. package/dist/registry/basic/tooltip.d.ts +7 -5
  140. package/dist/registry/basic/typography.d.ts +7 -5
  141. package/dist/registry/chat/ask-user-part.d.ts +9 -3
  142. package/dist/registry/chat/browser-action-part.d.ts +9 -3
  143. package/dist/registry/chat/chat-input/compound.d.ts +7 -5
  144. package/dist/registry/chat/chat-input/context.d.ts +10 -6
  145. package/dist/registry/chat/chat-input/index.d.ts +7 -5
  146. package/dist/registry/chat/chat-input/types.d.ts +9 -3
  147. package/dist/registry/chat/chat-input/useAutoResizeTextarea.d.ts +9 -3
  148. package/dist/registry/chat/code-block-part.d.ts +9 -3
  149. package/dist/registry/chat/conversation-anchor-nav.d.ts +72 -0
  150. package/dist/registry/chat/file-attachment.d.ts +7 -5
  151. package/dist/registry/chat/file-review-part.d.ts +9 -4
  152. package/dist/registry/chat/generated-images-grid.d.ts +9 -3
  153. package/dist/registry/chat/generation-status-bar.d.ts +8 -4
  154. package/dist/registry/chat/hint-banner.d.ts +9 -3
  155. package/dist/registry/chat/mermaid-part.d.ts +9 -3
  156. package/dist/registry/chat/plan-part.d.ts +9 -3
  157. package/dist/registry/chat/reasoning-step/index.d.ts +8 -6
  158. package/dist/registry/chat/reasoning-step/types.d.ts +9 -3
  159. package/dist/registry/chat/related-prompts.d.ts +9 -3
  160. package/dist/registry/chat/response/index.d.ts +8 -6
  161. package/dist/registry/chat/response/types.d.ts +9 -3
  162. package/dist/registry/chat/task-part.d.ts +9 -3
  163. package/dist/registry/chat/terminal-code-block-part.d.ts +9 -3
  164. package/dist/registry/chat/tool-invocation-card.d.ts +2 -0
  165. package/dist/registry/chat/user-question/UserQuestionCard.d.ts +9 -3
  166. package/dist/registry/chat/user-question/UserQuestionFooter.d.ts +9 -3
  167. package/dist/registry/chat/user-question/UserQuestionHeader.d.ts +9 -3
  168. package/dist/registry/chat/user-question/types.d.ts +8 -5
  169. package/dist/registry/lib/file-icon-maps.d.ts +7 -7
  170. package/dist/registry/lib/utils.d.ts +8 -6
  171. package/dist/scale/presets/compact.css +16 -5
  172. package/dist/scale/presets/dense.css +13 -2
  173. package/dist/scale/presets/sharp.css +18 -6
  174. package/dist/scale/presets/soft.css +23 -1
  175. package/dist/spark-design.cjs.js +40 -36
  176. package/dist/spark-design.es.js +8653 -8663
  177. package/dist/sparkdesign.css +2 -0
  178. package/dist/src/components/basic/Alert/index.d.ts +13 -0
  179. package/dist/src/components/basic/AlertDialog/index.d.ts +7 -5
  180. package/dist/src/components/basic/AspectRatio/index.d.ts +13 -0
  181. package/dist/src/components/basic/Avatar/index.d.ts +9 -3
  182. package/dist/src/components/basic/Breadcrumb/index.d.ts +12 -0
  183. package/dist/src/components/basic/Button/index.d.ts +9 -3
  184. package/dist/src/components/basic/ButtonGroup/index.d.ts +13 -0
  185. package/dist/src/components/basic/Calendar/index.d.ts +13 -0
  186. package/dist/src/components/basic/Card/index.d.ts +13 -0
  187. package/dist/src/components/basic/Carousel/index.d.ts +12 -0
  188. package/dist/src/components/basic/Chart/index.d.ts +13 -0
  189. package/dist/src/components/basic/Checkbox/index.d.ts +13 -0
  190. package/dist/src/components/basic/Collapse/index.d.ts +7 -4
  191. package/dist/src/components/basic/Collapsible/index.d.ts +9 -4
  192. package/dist/src/components/basic/CollapsibleCard/index.d.ts +9 -3
  193. package/dist/src/components/basic/CollapsibleSection/index.d.ts +7 -7
  194. package/dist/src/components/basic/Combobox/index.d.ts +13 -0
  195. package/dist/src/components/basic/Command/index.d.ts +12 -0
  196. package/dist/src/components/basic/ContextMenu/index.d.ts +19 -0
  197. package/dist/src/components/basic/DataTable/index.d.ts +13 -0
  198. package/dist/src/components/basic/DatePicker/index.d.ts +13 -0
  199. package/dist/src/components/basic/Dialog/index.d.ts +16 -0
  200. package/dist/src/components/basic/Direction/index.d.ts +13 -0
  201. package/dist/src/components/basic/Drawer/index.d.ts +16 -0
  202. package/dist/src/components/basic/DropdownMenu/index.d.ts +7 -5
  203. package/dist/src/components/basic/EllipsisText/index.d.ts +7 -15
  204. package/dist/src/components/basic/Empty/index.d.ts +12 -0
  205. package/dist/src/components/basic/Field/index.d.ts +12 -0
  206. package/dist/src/components/basic/HoverCard/index.d.ts +16 -0
  207. package/dist/src/components/basic/IconButton/index.d.ts +9 -3
  208. package/dist/src/components/basic/Input/index.d.ts +13 -0
  209. package/dist/src/components/basic/InputGroup/index.d.ts +12 -0
  210. package/dist/src/components/basic/InputOTP/index.d.ts +12 -0
  211. package/dist/src/components/basic/Item/index.d.ts +12 -0
  212. package/dist/src/components/basic/Kbd/index.d.ts +9 -3
  213. package/dist/src/components/basic/Label/index.d.ts +13 -0
  214. package/dist/src/components/basic/Menubar/index.d.ts +12 -0
  215. package/dist/src/components/basic/NativeSelect/index.d.ts +12 -0
  216. package/dist/src/components/basic/NavigationMenu/index.d.ts +12 -0
  217. package/dist/src/components/basic/OptionList/index.d.ts +9 -3
  218. package/dist/src/components/basic/Pagination/index.d.ts +9 -3
  219. package/dist/src/components/basic/Popover/index.d.ts +16 -0
  220. package/dist/src/components/basic/Progress/index.d.ts +9 -3
  221. package/dist/src/components/basic/RadioGroup/index.d.ts +9 -3
  222. package/dist/src/components/basic/Resizable/index.d.ts +9 -3
  223. package/dist/src/components/basic/ScrollArea/index.d.ts +12 -0
  224. package/dist/src/components/basic/Scrollbar/index.d.ts +9 -3
  225. package/dist/src/components/basic/Select/index.d.ts +7 -4
  226. package/dist/src/components/basic/Separator/index.d.ts +13 -0
  227. package/dist/src/components/basic/Sheet/index.d.ts +13 -0
  228. package/dist/src/components/basic/ShimmeringText/index.d.ts +9 -3
  229. package/dist/src/components/basic/Skeleton/index.d.ts +9 -3
  230. package/dist/src/components/basic/Slider/index.d.ts +9 -3
  231. package/dist/src/components/basic/Spinner/index.d.ts +9 -3
  232. package/dist/src/components/basic/Switch/index.d.ts +8 -5
  233. package/dist/src/components/basic/Table/index.d.ts +9 -3
  234. package/dist/src/components/basic/Tabs/index.d.ts +9 -3
  235. package/dist/src/components/basic/Tag/index.d.ts +7 -4
  236. package/dist/src/components/basic/Textarea/index.d.ts +13 -0
  237. package/dist/src/components/basic/Toggle/index.d.ts +9 -3
  238. package/dist/src/components/basic/Tooltip/index.d.ts +7 -4
  239. package/dist/src/components/basic/Typography/index.d.ts +9 -3
  240. package/dist/src/components/chat/ConversationAnchorNav/index.d.ts +13 -0
  241. package/dist/src/components/chat/GeneratedImagesGrid/index.d.ts +9 -3
  242. package/dist/src/components/chat/GenerationStatusBar/index.d.ts +9 -3
  243. package/dist/src/components/chat/Markdown/demo-content.d.ts +1 -1
  244. package/dist/src/components/chat/Markdown/index.d.ts +9 -3
  245. package/dist/src/components/chat/Response/StreamingMarkdownBlock.d.ts +9 -3
  246. package/dist/src/components/chat/Response/index.d.ts +8 -6
  247. package/dist/src/components/chat/StreamingMarkdownBlock/index.d.ts +13 -0
  248. package/dist/src/components/chat/UserMessage/index.d.ts +9 -3
  249. package/dist/src/components/index.d.ts +64 -9
  250. package/dist/src/icons/context.d.ts +7 -6
  251. package/dist/src/icons/types.d.ts +7 -5
  252. package/dist/src/lib/ThemeStyleContext.d.ts +9 -9
  253. package/dist/src/lib/file-icon.d.ts +7 -6
  254. package/dist/src/lib/i18n.d.ts +7 -6
  255. package/dist/src/lib/index.d.ts +9 -3
  256. package/dist/src/lib/utils.d.ts +7 -5
  257. package/dist/theme-base.css +7 -8
  258. package/dist/theme.css +2 -2
  259. package/dist/themes/{dark-qoder.css → dark-mint.css} +1 -1
  260. package/dist/themes/{light-qoder.css → light-mint.css} +1 -1
  261. package/dist/tokens/AGENTS.md +48 -0
  262. package/dist/tokens/index.css +10 -19
  263. package/dist/tokens/scale/presets/compact.css +16 -5
  264. package/dist/tokens/scale/presets/dense.css +13 -2
  265. package/dist/tokens/scale/presets/sharp.css +18 -6
  266. package/dist/tokens/scale/presets/soft.css +23 -1
  267. package/dist/tokens/theme-base.css +7 -8
  268. package/dist/tokens/theme.css +2 -2
  269. package/dist/tokens/themes/dark-mint.css +133 -0
  270. package/dist/tokens/themes/light-mint.css +132 -0
  271. package/docs/agent/component-selection.md +60 -0
  272. package/docs/agent/token-ontology.md +37 -0
  273. package/package.json +41 -9
  274. package/registry/agent-manifest.json +794 -0
  275. package/registry/tokens/ontology.json +404 -0
  276. package/cli/registry/tokens/themes/dark-qoder.css +0 -132
  277. package/cli/registry/tokens/themes/light-qoder.css +0 -131
  278. package/dist/_basePickBy-DnQN8w3y.js +0 -151
  279. package/dist/_basePickBy-a-kPMlkg.cjs +0 -1
  280. package/dist/_baseUniq-B-N2NQ50.js +0 -614
  281. package/dist/_baseUniq-Cc_zbSif.cjs +0 -1
  282. package/dist/arc-BQBhijZ6.js +0 -83
  283. package/dist/arc-mWQt0Yph.cjs +0 -1
  284. package/dist/architectureDiagram-VXUJARFQ-BMZEucno.cjs +0 -36
  285. package/dist/architectureDiagram-VXUJARFQ-DTdjD3Bp.js +0 -4661
  286. package/dist/blockDiagram-VD42YOAC-CzHn0yob.js +0 -2256
  287. package/dist/blockDiagram-VD42YOAC-DDxdHAlz.cjs +0 -122
  288. package/dist/c4Diagram-YG6GDRKO-4Gz0I4gj.cjs +0 -10
  289. package/dist/c4Diagram-YG6GDRKO-BIy--yVN.js +0 -1580
  290. package/dist/channel-BQn0o8bs.js +0 -5
  291. package/dist/channel-DaN7XniJ.cjs +0 -1
  292. package/dist/chunk-4BX2VUAB-BlQFTQqz.cjs +0 -1
  293. package/dist/chunk-4BX2VUAB-Czitj3Kc.js +0 -8
  294. package/dist/chunk-55IACEB6-DXacNZbO.js +0 -8
  295. package/dist/chunk-55IACEB6-DnDxpye9.cjs +0 -1
  296. package/dist/chunk-B4BG7PRW-CBdN0q_V.js +0 -1375
  297. package/dist/chunk-B4BG7PRW-DbGvUkGO.cjs +0 -165
  298. package/dist/chunk-DI55MBZ5-D1YJMs6x.cjs +0 -220
  299. package/dist/chunk-DI55MBZ5-NCQTvayw.js +0 -1370
  300. package/dist/chunk-FMBD7UC4-CsGMbrtr.js +0 -19
  301. package/dist/chunk-FMBD7UC4-Di7cUUh5.cjs +0 -15
  302. package/dist/chunk-QN33PNHL-0j5LC8Lm.cjs +0 -1
  303. package/dist/chunk-QN33PNHL-3GERZBRm.js +0 -19
  304. package/dist/chunk-QZHKN3VN-AVEY9ImQ.js +0 -15
  305. package/dist/chunk-QZHKN3VN-s8Z0a8mc.cjs +0 -1
  306. package/dist/chunk-TZMSLE5B-CAf87HPt.cjs +0 -1
  307. package/dist/chunk-TZMSLE5B-sbiflal0.js +0 -64
  308. package/dist/classDiagram-2ON5EDUG-Ct9JLIN2.cjs +0 -1
  309. package/dist/classDiagram-2ON5EDUG-Dzfrft3a.js +0 -16
  310. package/dist/classDiagram-v2-WZHVMYZB-Ct9JLIN2.cjs +0 -1
  311. package/dist/classDiagram-v2-WZHVMYZB-Dzfrft3a.js +0 -16
  312. package/dist/clone-Cde_NQ8V.js +0 -8
  313. package/dist/clone-DCNjWuM2.cjs +0 -1
  314. package/dist/cose-bilkent-S5V4N54A-0uLijMro.cjs +0 -1
  315. package/dist/cose-bilkent-S5V4N54A-Bb08N431.js +0 -2608
  316. package/dist/cytoscape.esm-CNUX3VTg.cjs +0 -321
  317. package/dist/cytoscape.esm-Cvf3sx9F.js +0 -18704
  318. package/dist/dagre-6UL2VRFP-CY_Wz5Zd.js +0 -444
  319. package/dist/dagre-6UL2VRFP-Dxe7_qZc.cjs +0 -4
  320. package/dist/defaultLocale-BgPVtth8.js +0 -171
  321. package/dist/defaultLocale-C4wbwF1n.cjs +0 -1
  322. package/dist/diagram-PSM6KHXK-D2bdb7MT.js +0 -531
  323. package/dist/diagram-PSM6KHXK-YF69SUjY.cjs +0 -24
  324. package/dist/diagram-QEK2KX5R-BpUSoh0-.js +0 -217
  325. package/dist/diagram-QEK2KX5R-DZPGteon.cjs +0 -43
  326. package/dist/diagram-S2PKOQOG-ht-zdvFG.cjs +0 -24
  327. package/dist/diagram-S2PKOQOG-zFeLJ50Z.js +0 -142
  328. package/dist/erDiagram-Q2GNP2WA-B38iJ6ts.js +0 -841
  329. package/dist/erDiagram-Q2GNP2WA-RgS80DDU.cjs +0 -60
  330. package/dist/flowDiagram-NV44I4VS-BHilOs2p.cjs +0 -162
  331. package/dist/flowDiagram-NV44I4VS-BrBJcoce.js +0 -1620
  332. package/dist/ganttDiagram-JELNMOA3-pZiJeFio.cjs +0 -267
  333. package/dist/ganttDiagram-JELNMOA3-tw6FhkWJ.js +0 -2670
  334. package/dist/gitGraphDiagram-V2S2FVAM-BWn5uIK5.js +0 -699
  335. package/dist/gitGraphDiagram-V2S2FVAM-DKKeG-9R.cjs +0 -65
  336. package/dist/graph-DIbblrZP.cjs +0 -1
  337. package/dist/graph-DPcK91G3.js +0 -247
  338. package/dist/infoDiagram-HS3SLOUP-B8gwwhct.cjs +0 -2
  339. package/dist/infoDiagram-HS3SLOUP-D47PNcP_.js +0 -24
  340. package/dist/init-CHZsXQcr.cjs +0 -1
  341. package/dist/init-DjUOC4st.js +0 -16
  342. package/dist/journeyDiagram-XKPGCS4Q-BG3cfhyU.js +0 -834
  343. package/dist/journeyDiagram-XKPGCS4Q-D8DVLJof.cjs +0 -139
  344. package/dist/kanban-definition-3W4ZIXB7-4OCnEouP.cjs +0 -89
  345. package/dist/kanban-definition-3W4ZIXB7-CWi_ssF9.js +0 -719
  346. package/dist/layout-Byuh8f-J.cjs +0 -1
  347. package/dist/layout-CdLdvj1j.js +0 -1335
  348. package/dist/linear-C2Q_PI9B.js +0 -259
  349. package/dist/linear-C69aPBW1.cjs +0 -1
  350. package/dist/mermaid.core-DBwAx_jp.cjs +0 -249
  351. package/dist/mermaid.core-gFR0XUlD.js +0 -15300
  352. package/dist/mindmap-definition-VGOIOE7T-8P7obVV4.cjs +0 -68
  353. package/dist/mindmap-definition-VGOIOE7T-DnOa7WJ9.js +0 -784
  354. package/dist/ordinal-B6-f3MAq.js +0 -61
  355. package/dist/ordinal-CagbB1m8.cjs +0 -1
  356. package/dist/pieDiagram-ADFJNKIX-5NAlvhMo.js +0 -161
  357. package/dist/pieDiagram-ADFJNKIX-CQBG4yR9.cjs +0 -30
  358. package/dist/qoder-design.css +0 -2
  359. package/dist/quadrantDiagram-AYHSOK5B-Oe4y7RZ0.cjs +0 -7
  360. package/dist/quadrantDiagram-AYHSOK5B-rh2DPEP1.js +0 -1022
  361. package/dist/requirementDiagram-UZGBJVZJ-DcWaCuXr.js +0 -850
  362. package/dist/requirementDiagram-UZGBJVZJ-gfdlrFiq.cjs +0 -64
  363. package/dist/sankeyDiagram-TZEHDZUN-CQIKFwD0.js +0 -810
  364. package/dist/sankeyDiagram-TZEHDZUN-DvPtzQvC.cjs +0 -10
  365. package/dist/sequenceDiagram-WL72ISMW-BNrsMagL.cjs +0 -145
  366. package/dist/sequenceDiagram-WL72ISMW-iCX3ckKx.js +0 -2511
  367. package/dist/stateDiagram-FKZM4ZOC-DBvJ_eeL.cjs +0 -1
  368. package/dist/stateDiagram-FKZM4ZOC-ZVsJlaHJ.js +0 -263
  369. package/dist/stateDiagram-v2-4FDKWEC3-CB_nTHcE.js +0 -16
  370. package/dist/stateDiagram-v2-4FDKWEC3-Xkx17v6T.cjs +0 -1
  371. package/dist/timeline-definition-IT6M3QCI-BmGkYQiz.cjs +0 -61
  372. package/dist/timeline-definition-IT6M3QCI-Ck8zTt6w.js +0 -795
  373. package/dist/tokens/CLAUDE.md +0 -305
  374. package/dist/treemap-GDKQZRPO-B9sfERx8.js +0 -17922
  375. package/dist/treemap-GDKQZRPO-BVfJRs0Z.cjs +0 -160
  376. package/dist/xychartDiagram-PRI3JC2R-By_S8NzN.js +0 -1340
  377. package/dist/xychartDiagram-PRI3JC2R-CNfDrGxM.cjs +0 -7
@@ -0,0 +1,169 @@
1
+ import * as React from 'react'
2
+ import { motion } from 'framer-motion'
3
+ import * as DialogPrimitive from '@radix-ui/react-dialog'
4
+ import { cva, type VariantProps } from 'class-variance-authority'
5
+ import { cn } from '@/lib/utils'
6
+ import { CloseLine } from './icons-inline'
7
+ import { getThemeFromDocument } from './theme-from-document'
8
+
9
+ const Dialog = DialogPrimitive.Root
10
+ const DialogTrigger = DialogPrimitive.Trigger
11
+ const DialogPortal = DialogPrimitive.Portal
12
+ const DialogClose = DialogPrimitive.Close
13
+
14
+ const DialogOverlay = React.forwardRef<
15
+ React.ElementRef<typeof DialogPrimitive.Overlay>,
16
+ React.ComponentPropsWithoutRef<typeof DialogPrimitive.Overlay>
17
+ >(({ className, ...props }, ref) => (
18
+ <DialogPrimitive.Overlay ref={ref} asChild {...props}>
19
+ <motion.div
20
+ className={cn('fixed inset-0 z-50 bg-bg-mask/60', className)}
21
+ initial={{ opacity: 0 }}
22
+ animate={{ opacity: 1 }}
23
+ exit={{ opacity: 0 }}
24
+ transition={{ duration: 0.15 }}
25
+ />
26
+ </DialogPrimitive.Overlay>
27
+ ))
28
+ DialogOverlay.displayName = DialogPrimitive.Overlay.displayName
29
+
30
+ const contentVariants = cva(
31
+ 'font-sans fixed left-1/2 top-1/2 z-50 w-[calc(100%-2rem)] -translate-x-1/2 -translate-y-1/2 rounded-xl border border-border bg-bg-base text-text shadow-lg p-6 outline-none',
32
+ {
33
+ variants: {
34
+ size: {
35
+ sm: 'max-w-sm',
36
+ default: 'max-w-lg',
37
+ lg: 'max-w-2xl',
38
+ xl: 'max-w-4xl',
39
+ },
40
+ },
41
+ defaultVariants: { size: 'default' },
42
+ },
43
+ )
44
+
45
+ export interface DialogContentProps
46
+ extends React.ComponentPropsWithoutRef<typeof DialogPrimitive.Content>,
47
+ VariantProps<typeof contentVariants> {
48
+ size?: 'sm' | 'default' | 'lg' | 'xl'
49
+ /** Hide the built-in top-right close button. */
50
+ hideCloseButton?: boolean
51
+ /** When provided (e.g. from ThemeStyleProvider), used for portal wrapper */
52
+ dataStyle?: string
53
+ dataTheme?: string
54
+ }
55
+
56
+ const DialogContent = React.forwardRef<
57
+ React.ElementRef<typeof DialogPrimitive.Content>,
58
+ DialogContentProps
59
+ >(
60
+ (
61
+ {
62
+ className,
63
+ children,
64
+ size = 'default',
65
+ hideCloseButton = false,
66
+ dataStyle,
67
+ dataTheme,
68
+ ...props
69
+ },
70
+ ref,
71
+ ) => {
72
+ const fromDoc = getThemeFromDocument()
73
+ const dataProps =
74
+ dataStyle !== undefined
75
+ ? { 'data-style': dataStyle, 'data-theme': dataTheme ?? fromDoc['data-theme'] ?? '' }
76
+ : fromDoc
77
+ return (
78
+ <DialogPortal>
79
+ <div style={{ display: 'contents' }} {...dataProps}>
80
+ <DialogOverlay />
81
+ <DialogPrimitive.Content ref={ref} asChild {...props}>
82
+ <motion.div
83
+ className={cn(contentVariants({ size }), className)}
84
+ initial={{ opacity: 0, y: 8 }}
85
+ animate={{ opacity: 1, y: 0 }}
86
+ exit={{ opacity: 0, y: 8 }}
87
+ transition={{ duration: 0.2, ease: [0.4, 0, 0.2, 1] }}
88
+ >
89
+ {children}
90
+ {!hideCloseButton && (
91
+ <DialogPrimitive.Close
92
+ className={cn(
93
+ 'absolute right-4 top-4 inline-flex size-7 items-center justify-center rounded-md text-text-tertiary opacity-70 transition-colors',
94
+ 'hover:bg-fill-secondary hover:text-text hover:opacity-100',
95
+ 'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary-border',
96
+ 'disabled:pointer-events-none',
97
+ )}
98
+ >
99
+ <CloseLine className="size-4" />
100
+ <span className="sr-only">Close</span>
101
+ </DialogPrimitive.Close>
102
+ )}
103
+ </motion.div>
104
+ </DialogPrimitive.Content>
105
+ </div>
106
+ </DialogPortal>
107
+ )
108
+ },
109
+ )
110
+ DialogContent.displayName = DialogPrimitive.Content.displayName
111
+
112
+ const DialogHeader = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(
113
+ ({ className, ...props }, ref) => (
114
+ <div ref={ref} className={cn('flex flex-col gap-2 text-left', className)} {...props} />
115
+ ),
116
+ )
117
+ DialogHeader.displayName = 'DialogHeader'
118
+
119
+ const DialogFooter = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(
120
+ ({ className, ...props }, ref) => (
121
+ <div
122
+ ref={ref}
123
+ className={cn('mt-6 flex flex-col-reverse gap-2 sm:flex-row sm:justify-end', className)}
124
+ {...props}
125
+ />
126
+ ),
127
+ )
128
+ DialogFooter.displayName = 'DialogFooter'
129
+
130
+ const DialogTitle = React.forwardRef<
131
+ React.ElementRef<typeof DialogPrimitive.Title>,
132
+ React.ComponentPropsWithoutRef<typeof DialogPrimitive.Title>
133
+ >(({ className, ...props }, ref) => (
134
+ <DialogPrimitive.Title
135
+ ref={ref}
136
+ className={cn('font-sans text-base font-medium leading-6 text-text', className)}
137
+ {...props}
138
+ />
139
+ ))
140
+ DialogTitle.displayName = DialogPrimitive.Title.displayName
141
+
142
+ const DialogDescription = React.forwardRef<
143
+ React.ElementRef<typeof DialogPrimitive.Description>,
144
+ React.ComponentPropsWithoutRef<typeof DialogPrimitive.Description>
145
+ >(({ className, ...props }, ref) => (
146
+ <DialogPrimitive.Description
147
+ ref={ref}
148
+ className={cn('text-sm leading-6 text-text-tertiary', className)}
149
+ {...props}
150
+ />
151
+ ))
152
+ DialogDescription.displayName = DialogPrimitive.Description.displayName
153
+
154
+ export type DialogHeaderProps = React.HTMLAttributes<HTMLDivElement>
155
+ export type DialogFooterProps = React.HTMLAttributes<HTMLDivElement>
156
+
157
+ export {
158
+ Dialog,
159
+ DialogTrigger,
160
+ DialogPortal,
161
+ DialogOverlay,
162
+ DialogClose,
163
+ DialogContent,
164
+ DialogHeader,
165
+ DialogFooter,
166
+ DialogTitle,
167
+ DialogDescription,
168
+ contentVariants as dialogContentVariants,
169
+ }
@@ -0,0 +1,25 @@
1
+ import * as React from 'react'
2
+
3
+ export type Direction = 'ltr' | 'rtl'
4
+
5
+ const DirectionContext = React.createContext<Direction>('ltr')
6
+
7
+ export interface DirectionProviderProps extends React.HTMLAttributes<HTMLDivElement> {
8
+ dir?: Direction
9
+ }
10
+
11
+ function DirectionProvider({ dir = 'ltr', children, ...props }: DirectionProviderProps) {
12
+ return (
13
+ <DirectionContext.Provider value={dir}>
14
+ <div dir={dir} {...props}>
15
+ {children}
16
+ </div>
17
+ </DirectionContext.Provider>
18
+ )
19
+ }
20
+
21
+ function useDirection() {
22
+ return React.useContext(DirectionContext)
23
+ }
24
+
25
+ export { DirectionProvider, useDirection }
@@ -0,0 +1,164 @@
1
+ import * as React from 'react'
2
+ import { motion } from 'framer-motion'
3
+ import * as DialogPrimitive from '@radix-ui/react-dialog'
4
+ import { cva, type VariantProps } from 'class-variance-authority'
5
+ import { cn } from '@/lib/utils'
6
+ import { CloseLine } from './icons-inline'
7
+ import { getThemeFromDocument } from './theme-from-document'
8
+
9
+ const Drawer = DialogPrimitive.Root
10
+ const DrawerTrigger = DialogPrimitive.Trigger
11
+ const DrawerClose = DialogPrimitive.Close
12
+ const DrawerPortal = DialogPrimitive.Portal
13
+
14
+ const DrawerOverlay = React.forwardRef<
15
+ React.ElementRef<typeof DialogPrimitive.Overlay>,
16
+ React.ComponentPropsWithoutRef<typeof DialogPrimitive.Overlay>
17
+ >(({ className, ...props }, ref) => (
18
+ <DialogPrimitive.Overlay ref={ref} asChild {...props}>
19
+ <motion.div
20
+ className={cn('fixed inset-0 z-50 bg-bg-mask/60', className)}
21
+ initial={{ opacity: 0 }}
22
+ animate={{ opacity: 1 }}
23
+ exit={{ opacity: 0 }}
24
+ transition={{ duration: 0.15 }}
25
+ />
26
+ </DialogPrimitive.Overlay>
27
+ ))
28
+ DrawerOverlay.displayName = DialogPrimitive.Overlay.displayName
29
+
30
+ const drawerVariants = cva(
31
+ 'fixed z-50 gap-4 bg-bg-base text-text shadow-lg border-border p-6 outline-none flex flex-col',
32
+ {
33
+ variants: {
34
+ side: {
35
+ top: 'inset-x-0 top-0 border-b',
36
+ bottom: 'inset-x-0 bottom-0 border-t',
37
+ left: 'inset-y-0 left-0 h-full w-3/4 border-r sm:max-w-sm',
38
+ right: 'inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm',
39
+ },
40
+ },
41
+ defaultVariants: { side: 'right' },
42
+ },
43
+ )
44
+
45
+ const sideOffsetMap = {
46
+ top: { initial: { y: '-100%' }, animate: { y: 0 }, exit: { y: '-100%' } },
47
+ bottom: { initial: { y: '100%' }, animate: { y: 0 }, exit: { y: '100%' } },
48
+ left: { initial: { x: '-100%' }, animate: { x: 0 }, exit: { x: '-100%' } },
49
+ right: { initial: { x: '100%' }, animate: { x: 0 }, exit: { x: '100%' } },
50
+ } as const
51
+
52
+ export interface DrawerContentProps
53
+ extends React.ComponentPropsWithoutRef<typeof DialogPrimitive.Content>,
54
+ VariantProps<typeof drawerVariants> {
55
+ side?: 'top' | 'right' | 'bottom' | 'left'
56
+ showCloseButton?: boolean
57
+ /** When provided (e.g. from ThemeStyleProvider), used for portal wrapper */
58
+ dataStyle?: string
59
+ dataTheme?: string
60
+ }
61
+
62
+ const DrawerContent = React.forwardRef<
63
+ React.ElementRef<typeof DialogPrimitive.Content>,
64
+ DrawerContentProps
65
+ >(
66
+ (
67
+ { side = 'right', className, children, showCloseButton = true, dataStyle, dataTheme, ...props },
68
+ ref,
69
+ ) => {
70
+ const fromDoc = getThemeFromDocument()
71
+ const dataProps =
72
+ dataStyle !== undefined
73
+ ? { 'data-style': dataStyle, 'data-theme': dataTheme ?? fromDoc['data-theme'] ?? '' }
74
+ : fromDoc
75
+ const motionProps = sideOffsetMap[side]
76
+ return (
77
+ <DrawerPortal>
78
+ <div style={{ display: 'contents' }} {...dataProps}>
79
+ <DrawerOverlay />
80
+ <DialogPrimitive.Content ref={ref} asChild {...props}>
81
+ <motion.div
82
+ className={cn(drawerVariants({ side }), className)}
83
+ initial={motionProps.initial}
84
+ animate={motionProps.animate}
85
+ exit={motionProps.exit}
86
+ transition={{ duration: 0.25, ease: [0.4, 0, 0.2, 1] }}
87
+ >
88
+ {children}
89
+ {showCloseButton && (
90
+ <DialogPrimitive.Close
91
+ className={cn(
92
+ 'absolute right-4 top-4 inline-flex size-7 items-center justify-center rounded-md text-text-tertiary opacity-70 transition-colors',
93
+ 'hover:bg-fill-secondary hover:text-text hover:opacity-100',
94
+ 'focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary-border',
95
+ 'disabled:pointer-events-none',
96
+ )}
97
+ >
98
+ <CloseLine className="size-4" />
99
+ <span className="sr-only">Close</span>
100
+ </DialogPrimitive.Close>
101
+ )}
102
+ </motion.div>
103
+ </DialogPrimitive.Content>
104
+ </div>
105
+ </DrawerPortal>
106
+ )
107
+ },
108
+ )
109
+ DrawerContent.displayName = DialogPrimitive.Content.displayName
110
+
111
+ const DrawerHeader = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(
112
+ ({ className, ...props }, ref) => (
113
+ <div ref={ref} className={cn('flex flex-col gap-1.5', className)} {...props} />
114
+ ),
115
+ )
116
+ DrawerHeader.displayName = 'DrawerHeader'
117
+
118
+ const DrawerFooter = React.forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(
119
+ ({ className, ...props }, ref) => (
120
+ <div ref={ref} className={cn('mt-auto flex flex-col gap-2', className)} {...props} />
121
+ ),
122
+ )
123
+ DrawerFooter.displayName = 'DrawerFooter'
124
+
125
+ const DrawerTitle = React.forwardRef<
126
+ React.ElementRef<typeof DialogPrimitive.Title>,
127
+ React.ComponentPropsWithoutRef<typeof DialogPrimitive.Title>
128
+ >(({ className, ...props }, ref) => (
129
+ <DialogPrimitive.Title
130
+ ref={ref}
131
+ className={cn('text-base font-medium leading-6 text-text', className)}
132
+ {...props}
133
+ />
134
+ ))
135
+ DrawerTitle.displayName = DialogPrimitive.Title.displayName
136
+
137
+ const DrawerDescription = React.forwardRef<
138
+ React.ElementRef<typeof DialogPrimitive.Description>,
139
+ React.ComponentPropsWithoutRef<typeof DialogPrimitive.Description>
140
+ >(({ className, ...props }, ref) => (
141
+ <DialogPrimitive.Description
142
+ ref={ref}
143
+ className={cn('text-sm leading-6 text-text-tertiary', className)}
144
+ {...props}
145
+ />
146
+ ))
147
+ DrawerDescription.displayName = DialogPrimitive.Description.displayName
148
+
149
+ export type DrawerHeaderProps = React.HTMLAttributes<HTMLDivElement>
150
+ export type DrawerFooterProps = React.HTMLAttributes<HTMLDivElement>
151
+
152
+ export {
153
+ Drawer,
154
+ DrawerTrigger,
155
+ DrawerClose,
156
+ DrawerPortal,
157
+ DrawerOverlay,
158
+ DrawerContent,
159
+ DrawerHeader,
160
+ DrawerFooter,
161
+ DrawerTitle,
162
+ DrawerDescription,
163
+ drawerVariants,
164
+ }
@@ -6,10 +6,6 @@ import { cn } from '@/lib/utils'
6
6
  import { ArrowRightLine, CheckLine } from './icons-inline'
7
7
  import { getThemeFromDocument } from './theme-from-document'
8
8
 
9
- /** 取消 outline/ring,避免与全局 *:focus-visible 冲突产生偶现 focus 环 */
10
- const FOCUS_RESET =
11
- 'outline-none focus:outline-none focus:ring-0 focus-visible:outline-none focus-visible:ring-0 focus-visible:!outline-none focus-visible:!ring-0 focus-visible:outline-offset-0 focus-visible:!outline-offset-0 focus-visible:ring-offset-0 focus-visible:!ring-offset-0'
12
-
13
9
  const DropdownMenu = DropdownMenuPrimitive.Root
14
10
  const DropdownMenuTrigger = DropdownMenuPrimitive.Trigger
15
11
  const DropdownMenuGroup = DropdownMenuPrimitive.Group
@@ -0,0 +1,104 @@
1
+ import { cva, type VariantProps } from "class-variance-authority"
2
+
3
+ import { cn } from "@/lib/utils"
4
+
5
+ function Empty({ className, ...props }: React.ComponentProps<"div">) {
6
+ return (
7
+ <div
8
+ data-slot="empty"
9
+ className={cn(
10
+ "flex min-w-0 flex-1 flex-col items-center justify-center gap-6 rounded-lg border-dashed p-6 text-center text-balance md:p-12",
11
+ className
12
+ )}
13
+ {...props}
14
+ />
15
+ )
16
+ }
17
+
18
+ function EmptyHeader({ className, ...props }: React.ComponentProps<"div">) {
19
+ return (
20
+ <div
21
+ data-slot="empty-header"
22
+ className={cn(
23
+ "flex max-w-sm flex-col items-center gap-2 text-center",
24
+ className
25
+ )}
26
+ {...props}
27
+ />
28
+ )
29
+ }
30
+
31
+ const emptyMediaVariants = cva(
32
+ "mb-2 flex shrink-0 items-center justify-center [&_svg]:pointer-events-none [&_svg]:shrink-0",
33
+ {
34
+ variants: {
35
+ variant: {
36
+ default: "bg-transparent",
37
+ icon: "flex size-10 shrink-0 items-center justify-center rounded-lg bg-fill-tertiary text-text [&_svg:not([class*='size-'])]:size-6",
38
+ },
39
+ },
40
+ defaultVariants: {
41
+ variant: "default",
42
+ },
43
+ }
44
+ )
45
+
46
+ function EmptyMedia({
47
+ className,
48
+ variant = "default",
49
+ ...props
50
+ }: React.ComponentProps<"div"> & VariantProps<typeof emptyMediaVariants>) {
51
+ return (
52
+ <div
53
+ data-slot="empty-icon"
54
+ data-variant={variant}
55
+ className={cn(emptyMediaVariants({ variant, className }))}
56
+ {...props}
57
+ />
58
+ )
59
+ }
60
+
61
+ function EmptyTitle({ className, ...props }: React.ComponentProps<"div">) {
62
+ return (
63
+ <div
64
+ data-slot="empty-title"
65
+ className={cn("text-lg font-medium tracking-tight", className)}
66
+ {...props}
67
+ />
68
+ )
69
+ }
70
+
71
+ function EmptyDescription({ className, ...props }: React.ComponentProps<"p">) {
72
+ return (
73
+ <div
74
+ data-slot="empty-description"
75
+ className={cn(
76
+ "text-sm/relaxed text-text-tertiary [&>a]:underline [&>a]:underline-offset-4 [&>a:hover]:text-primary",
77
+ className
78
+ )}
79
+ {...props}
80
+ />
81
+ )
82
+ }
83
+
84
+ function EmptyContent({ className, ...props }: React.ComponentProps<"div">) {
85
+ return (
86
+ <div
87
+ data-slot="empty-content"
88
+ className={cn(
89
+ "flex w-full max-w-sm min-w-0 flex-col items-center gap-4 text-sm text-balance",
90
+ className
91
+ )}
92
+ {...props}
93
+ />
94
+ )
95
+ }
96
+
97
+ export {
98
+ Empty,
99
+ EmptyHeader,
100
+ EmptyTitle,
101
+ EmptyDescription,
102
+ EmptyContent,
103
+ EmptyMedia,
104
+ }