dishui 0.0.65 → 0.0.67

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 (507) hide show
  1. package/dist/_virtual/_rolldown/runtime.js +10 -11
  2. package/dist/chart.js +12 -46
  3. package/dist/code-editor.js +16 -43
  4. package/dist/components/Accordion/index.d.ts +39 -0
  5. package/dist/components/Accordion/index.js +70 -0
  6. package/dist/components/Accordion/index.js.map +1 -0
  7. package/dist/components/Avatar/index.d.ts +48 -0
  8. package/dist/components/Avatar/index.js +71 -0
  9. package/dist/components/Avatar/index.js.map +1 -0
  10. package/dist/components/Badge/index.js +10 -15
  11. package/dist/components/Badge/index.js.map +1 -1
  12. package/dist/components/Button/index.js +62 -89
  13. package/dist/components/Button/index.js.map +1 -1
  14. package/dist/components/Card/index.d.ts +142 -0
  15. package/dist/components/Card/index.js +368 -69
  16. package/dist/components/Card/index.js.map +1 -1
  17. package/dist/components/Chart/Chart.js +25 -25
  18. package/dist/components/Chart/Chart.js.map +1 -1
  19. package/dist/components/Checkbox/index.js +57 -65
  20. package/dist/components/Checkbox/index.js.map +1 -1
  21. package/dist/components/ChoicePicker/index.d.ts +44 -0
  22. package/dist/components/ChoicePicker/index.js +81 -0
  23. package/dist/components/ChoicePicker/index.js.map +1 -0
  24. package/dist/components/Column/index.d.ts +28 -0
  25. package/dist/components/Column/index.js +30 -0
  26. package/dist/components/Column/index.js.map +1 -0
  27. package/dist/components/DateTimeInput/index.d.ts +44 -0
  28. package/dist/components/DateTimeInput/index.js +48 -0
  29. package/dist/components/DateTimeInput/index.js.map +1 -0
  30. package/dist/components/Demo/index.js +107 -107
  31. package/dist/components/Demo/index.js.map +1 -1
  32. package/dist/components/Divider/index.d.ts +20 -0
  33. package/dist/components/Divider/index.js +30 -0
  34. package/dist/components/Divider/index.js.map +1 -0
  35. package/dist/components/EmptyState/index.js +24 -24
  36. package/dist/components/EmptyState/index.js.map +1 -1
  37. package/dist/components/FileUploader/DropZone.js +134 -136
  38. package/dist/components/FileUploader/DropZone.js.map +1 -1
  39. package/dist/components/FileUploader/FileItem.js +159 -163
  40. package/dist/components/FileUploader/FileItem.js.map +1 -1
  41. package/dist/components/FileUploader/FileUploader.js +126 -127
  42. package/dist/components/FileUploader/FileUploader.js.map +1 -1
  43. package/dist/components/FileUploader/UploadQueue.js +62 -62
  44. package/dist/components/FileUploader/UploadQueue.js.map +1 -1
  45. package/dist/components/FloatWindow/index.d.ts +28 -0
  46. package/dist/components/GridLayout/index.d.ts +42 -0
  47. package/dist/components/Icon/index.d.ts +26 -0
  48. package/dist/components/Icon/index.js +27 -0
  49. package/dist/components/Icon/index.js.map +1 -0
  50. package/dist/components/Image/index.d.ts +33 -0
  51. package/dist/components/Image/index.js +44 -0
  52. package/dist/components/Image/index.js.map +1 -0
  53. package/dist/components/Input/index.js +196 -197
  54. package/dist/components/Input/index.js.map +1 -1
  55. package/dist/components/Label/index.js +62 -74
  56. package/dist/components/Label/index.js.map +1 -1
  57. package/dist/components/Layout/index.js +134 -139
  58. package/dist/components/Layout/index.js.map +1 -1
  59. package/dist/components/List/index.js +45 -58
  60. package/dist/components/List/index.js.map +1 -1
  61. package/dist/components/Markdown/Markdown.js +106 -107
  62. package/dist/components/Markdown/Markdown.js.map +1 -1
  63. package/dist/components/Markdown/codeThemes.js +24 -33
  64. package/dist/components/Markdown/codeThemes.js.map +1 -1
  65. package/dist/components/Markdown/markdownComponents.js +203 -208
  66. package/dist/components/Markdown/markdownComponents.js.map +1 -1
  67. package/dist/components/Markdown/parseCodeBlockMeta.js +22 -22
  68. package/dist/components/Markdown/parseCodeBlockMeta.js.map +1 -1
  69. package/dist/components/Markdown/useMarkdownSource.js +46 -46
  70. package/dist/components/Markdown/useMarkdownSource.js.map +1 -1
  71. package/dist/components/Markdown/useMarkmapRenderer.js +35 -36
  72. package/dist/components/Markdown/useMarkmapRenderer.js.map +1 -1
  73. package/dist/components/Markdown/useMermaidRenderer.js +41 -42
  74. package/dist/components/Markdown/useMermaidRenderer.js.map +1 -1
  75. package/dist/components/Modal/index.js +82 -82
  76. package/dist/components/Modal/index.js.map +1 -1
  77. package/dist/components/MultipleChoice/index.d.ts +44 -0
  78. package/dist/components/MultipleChoice/index.js +52 -0
  79. package/dist/components/MultipleChoice/index.js.map +1 -0
  80. package/dist/components/Notification/index.d.ts +17 -0
  81. package/dist/components/Page/index.d.ts +1 -1
  82. package/dist/components/Page/index.js +40 -71
  83. package/dist/components/Page/index.js.map +1 -1
  84. package/dist/components/PageHeader/index.js +28 -28
  85. package/dist/components/PageHeader/index.js.map +1 -1
  86. package/dist/components/ProtectedRoute/index.js +8 -9
  87. package/dist/components/ProtectedRoute/index.js.map +1 -1
  88. package/dist/components/Row/index.d.ts +28 -0
  89. package/dist/components/Row/index.js +30 -0
  90. package/dist/components/Row/index.js.map +1 -0
  91. package/dist/components/Select/index.js +251 -254
  92. package/dist/components/Select/index.js.map +1 -1
  93. package/dist/components/SidebarToggleButton/index.js +56 -59
  94. package/dist/components/SidebarToggleButton/index.js.map +1 -1
  95. package/dist/components/Slider/index.d.ts +39 -0
  96. package/dist/components/Slider/index.js +52 -0
  97. package/dist/components/Slider/index.js.map +1 -0
  98. package/dist/components/Switch/index.d.ts +34 -0
  99. package/dist/components/Switch/index.js +55 -0
  100. package/dist/components/Switch/index.js.map +1 -0
  101. package/dist/components/Tab/index.d.ts +40 -0
  102. package/dist/components/Table/index.js +109 -121
  103. package/dist/components/Table/index.js.map +1 -1
  104. package/dist/components/Tabs/index.js +28 -38
  105. package/dist/components/Tabs/index.js.map +1 -1
  106. package/dist/components/Text/index.d.ts +43 -0
  107. package/dist/components/Text/index.js +55 -0
  108. package/dist/components/Text/index.js.map +1 -0
  109. package/dist/components/Tooltip/index.d.ts +23 -0
  110. package/dist/components/Tooltip/index.js +34 -0
  111. package/dist/components/Tooltip/index.js.map +1 -0
  112. package/dist/components/Tree/Tree.js +205 -205
  113. package/dist/components/Tree/Tree.js.map +1 -1
  114. package/dist/components/pro/ArticleContextMenu/index.js +86 -87
  115. package/dist/components/pro/ArticleContextMenu/index.js.map +1 -1
  116. package/dist/components/pro/ArticleControl/ArticleControl2.js +250 -250
  117. package/dist/components/pro/ArticleControl/ArticleControl2.js.map +1 -1
  118. package/dist/components/pro/ArticleControl/buildHeadingTree.js +31 -32
  119. package/dist/components/pro/ArticleControl/buildHeadingTree.js.map +1 -1
  120. package/dist/components/pro/ArticleControl/useArticleToc.js +100 -102
  121. package/dist/components/pro/ArticleControl/useArticleToc.js.map +1 -1
  122. package/dist/components/pro/Calendar/Calendar.d.ts +10 -0
  123. package/dist/components/pro/Calendar/hooks/useCalendarDrag.d.ts +47 -0
  124. package/dist/components/pro/Calendar/hooks/useCalendarState.d.ts +56 -0
  125. package/dist/components/pro/Calendar/index.d.ts +7 -0
  126. package/dist/components/pro/Calendar/types.d.ts +151 -0
  127. package/dist/components/pro/Calendar/utils.d.ts +94 -0
  128. package/dist/components/pro/Chat/Chat.d.ts +6 -0
  129. package/dist/components/pro/Chat/index.d.ts +2 -0
  130. package/dist/components/pro/Chat/types.d.ts +84 -0
  131. package/dist/components/pro/CodeEditor/editors/CodeEditor.js +287 -327
  132. package/dist/components/pro/CodeEditor/editors/CodeEditor.js.map +1 -1
  133. package/dist/components/pro/CodeEditor/editors/MarkdownEditor.js +167 -224
  134. package/dist/components/pro/CodeEditor/editors/MarkdownEditor.js.map +1 -1
  135. package/dist/components/pro/CodeEditor/editors/markdownExtensions.js +594 -613
  136. package/dist/components/pro/CodeEditor/editors/markdownExtensions.js.map +1 -1
  137. package/dist/components/pro/CodeEditor/extensions/contextMenu.js +54 -55
  138. package/dist/components/pro/CodeEditor/extensions/contextMenu.js.map +1 -1
  139. package/dist/components/pro/CodeEditor/extensions/index.js +152 -160
  140. package/dist/components/pro/CodeEditor/extensions/index.js.map +1 -1
  141. package/dist/components/pro/CodeEditor/langs/index.js +7 -15
  142. package/dist/components/pro/CodeEditor/langs/index.js.map +1 -1
  143. package/dist/components/pro/CodeEditor/langs/javascript.js +11 -48
  144. package/dist/components/pro/CodeEditor/langs/javascript.js.map +1 -1
  145. package/dist/components/pro/CodeEditor/langs/python.js +4 -40
  146. package/dist/components/pro/CodeEditor/langs/python.js.map +1 -1
  147. package/dist/components/pro/CodeEditor/langs/snippets.js +118 -147
  148. package/dist/components/pro/CodeEditor/langs/snippets.js.map +1 -1
  149. package/dist/components/pro/CodeEditor/panels/FootnotePanel.js +153 -153
  150. package/dist/components/pro/CodeEditor/panels/FootnotePanel.js.map +1 -1
  151. package/dist/components/pro/CodeEditor/panels/HistoryPanel.js +180 -190
  152. package/dist/components/pro/CodeEditor/panels/HistoryPanel.js.map +1 -1
  153. package/dist/components/pro/CodeEditor/panels/OutlinePanel.js +130 -137
  154. package/dist/components/pro/CodeEditor/panels/OutlinePanel.js.map +1 -1
  155. package/dist/components/pro/CodeEditor/panels/TableOfContentsPanel.js +228 -242
  156. package/dist/components/pro/CodeEditor/panels/TableOfContentsPanel.js.map +1 -1
  157. package/dist/components/pro/CodeEditor/panels/VariablePanel.js +208 -248
  158. package/dist/components/pro/CodeEditor/panels/VariablePanel.js.map +1 -1
  159. package/dist/components/pro/CodeEditor/themes.js +513 -483
  160. package/dist/components/pro/CodeEditor/themes.js.map +1 -1
  161. package/dist/components/pro/CodeEditor/types.d.ts +1 -1
  162. package/dist/components/pro/CodeEditor/utils.js +171 -175
  163. package/dist/components/pro/CodeEditor/utils.js.map +1 -1
  164. package/dist/components/pro/DataTable/DataTable.js +305 -306
  165. package/dist/components/pro/DataTable/DataTable.js.map +1 -1
  166. package/dist/components/pro/DataTable/Filters.js +299 -314
  167. package/dist/components/pro/DataTable/Filters.js.map +1 -1
  168. package/dist/components/pro/DataTable/PivotPanel.js +203 -204
  169. package/dist/components/pro/DataTable/PivotPanel.js.map +1 -1
  170. package/dist/components/pro/DataTable/PivotView.js +142 -144
  171. package/dist/components/pro/DataTable/PivotView.js.map +1 -1
  172. package/dist/components/pro/DataTable/components/BulkActions.js +42 -42
  173. package/dist/components/pro/DataTable/components/BulkActions.js.map +1 -1
  174. package/dist/components/pro/DataTable/components/ColumnSelector.js +84 -84
  175. package/dist/components/pro/DataTable/components/ColumnSelector.js.map +1 -1
  176. package/dist/components/pro/DataTable/components/FilterBar.js +58 -58
  177. package/dist/components/pro/DataTable/components/FilterBar.js.map +1 -1
  178. package/dist/components/pro/DataTable/components/TableBody.js +93 -94
  179. package/dist/components/pro/DataTable/components/TableBody.js.map +1 -1
  180. package/dist/components/pro/DataTable/components/TableHeader.js +78 -78
  181. package/dist/components/pro/DataTable/components/TableHeader.js.map +1 -1
  182. package/dist/components/pro/DataTable/components/TablePagination.js +77 -77
  183. package/dist/components/pro/DataTable/components/TablePagination.js.map +1 -1
  184. package/dist/components/pro/DataTable/components/TableToolbar.js +40 -40
  185. package/dist/components/pro/DataTable/components/TableToolbar.js.map +1 -1
  186. package/dist/components/pro/DataTable/extension.js +5 -5
  187. package/dist/components/pro/DataTable/extension.js.map +1 -1
  188. package/dist/components/pro/DataTable/pivotEngine.js +84 -92
  189. package/dist/components/pro/DataTable/pivotEngine.js.map +1 -1
  190. package/dist/components/pro/DataTable/pivotExtension.js +93 -93
  191. package/dist/components/pro/DataTable/pivotExtension.js.map +1 -1
  192. package/dist/components/pro/DataTable/rowDetailExtension.js +30 -30
  193. package/dist/components/pro/DataTable/rowDetailExtension.js.map +1 -1
  194. package/dist/components/pro/DataTable/tanstack-table.js +45 -62
  195. package/dist/components/pro/DataTable/tanstack-table.js.map +1 -1
  196. package/dist/components/pro/DataTable/treeDataUtils.js +37 -48
  197. package/dist/components/pro/DataTable/treeDataUtils.js.map +1 -1
  198. package/dist/components/pro/DataTable/useColumnDragReorder.js +68 -68
  199. package/dist/components/pro/DataTable/useColumnDragReorder.js.map +1 -1
  200. package/dist/components/pro/DataTable/utils.js +156 -168
  201. package/dist/components/pro/DataTable/utils.js.map +1 -1
  202. package/dist/components/pro/FileExplorer/Breadcrumb.js +180 -180
  203. package/dist/components/pro/FileExplorer/Breadcrumb.js.map +1 -1
  204. package/dist/components/pro/FileExplorer/CreateDialog.js +78 -78
  205. package/dist/components/pro/FileExplorer/CreateDialog.js.map +1 -1
  206. package/dist/components/pro/FileExplorer/FileExplorer.js +202 -205
  207. package/dist/components/pro/FileExplorer/FileExplorer.js.map +1 -1
  208. package/dist/components/pro/FileExplorer/FileIcon.js +189 -189
  209. package/dist/components/pro/FileExplorer/FileIcon.js.map +1 -1
  210. package/dist/components/pro/FileExplorer/GridView.js +100 -100
  211. package/dist/components/pro/FileExplorer/GridView.js.map +1 -1
  212. package/dist/components/pro/FileExplorer/ListView.js +209 -209
  213. package/dist/components/pro/FileExplorer/ListView.js.map +1 -1
  214. package/dist/components/pro/FileExplorer/Toolbar.js +199 -199
  215. package/dist/components/pro/FileExplorer/Toolbar.js.map +1 -1
  216. package/dist/components/pro/Flow/Flow.js +920 -948
  217. package/dist/components/pro/Flow/Flow.js.map +1 -1
  218. package/dist/components/pro/Flow/FlowCanvas.js +1626 -1662
  219. package/dist/components/pro/Flow/FlowCanvas.js.map +1 -1
  220. package/dist/components/pro/Flow/archify/build.js +85 -94
  221. package/dist/components/pro/Flow/archify/build.js.map +1 -1
  222. package/dist/components/pro/Flow/archify/convert.js +512 -519
  223. package/dist/components/pro/Flow/archify/convert.js.map +1 -1
  224. package/dist/components/pro/Flow/archify/palette.js +87 -104
  225. package/dist/components/pro/Flow/archify/palette.js.map +1 -1
  226. package/dist/components/pro/Flow/archify/presets.js +34 -37
  227. package/dist/components/pro/Flow/archify/presets.js.map +1 -1
  228. package/dist/components/pro/Flow/archify/spec.js +7 -7
  229. package/dist/components/pro/Flow/archify/spec.js.map +1 -1
  230. package/dist/components/pro/Flow/canvas/AlignmentGuides.js +25 -25
  231. package/dist/components/pro/Flow/canvas/AlignmentGuides.js.map +1 -1
  232. package/dist/components/pro/Flow/canvas/GridRenderer.js +54 -55
  233. package/dist/components/pro/Flow/canvas/GridRenderer.js.map +1 -1
  234. package/dist/components/pro/Flow/canvas/MiniMapRenderer.js +54 -58
  235. package/dist/components/pro/Flow/canvas/MiniMapRenderer.js.map +1 -1
  236. package/dist/components/pro/Flow/canvas/PixiApp.js +105 -102
  237. package/dist/components/pro/Flow/canvas/PixiApp.js.map +1 -1
  238. package/dist/components/pro/Flow/canvas/SelectionOverlay.js +38 -38
  239. package/dist/components/pro/Flow/canvas/SelectionOverlay.js.map +1 -1
  240. package/dist/components/pro/Flow/canvas/ViewportContainer.js +117 -117
  241. package/dist/components/pro/Flow/canvas/ViewportContainer.js.map +1 -1
  242. package/dist/components/pro/Flow/constants.js +266 -278
  243. package/dist/components/pro/Flow/constants.js.map +1 -1
  244. package/dist/components/pro/Flow/context/FlowAIContext.js +27 -28
  245. package/dist/components/pro/Flow/context/FlowAIContext.js.map +1 -1
  246. package/dist/components/pro/Flow/context/FlowContext.js +60 -61
  247. package/dist/components/pro/Flow/context/FlowContext.js.map +1 -1
  248. package/dist/components/pro/Flow/context/FlowUIContext.js +115 -117
  249. package/dist/components/pro/Flow/context/FlowUIContext.js.map +1 -1
  250. package/dist/components/pro/Flow/edges/EdgeRenderer.js +135 -138
  251. package/dist/components/pro/Flow/edges/EdgeRenderer.js.map +1 -1
  252. package/dist/components/pro/Flow/edges/edgeMarkers.js +11 -14
  253. package/dist/components/pro/Flow/edges/edgeMarkers.js.map +1 -1
  254. package/dist/components/pro/Flow/edges/edgePaths.js +351 -367
  255. package/dist/components/pro/Flow/edges/edgePaths.js.map +1 -1
  256. package/dist/components/pro/Flow/hooks/useAlignmentGuides.js +49 -52
  257. package/dist/components/pro/Flow/hooks/useAlignmentGuides.js.map +1 -1
  258. package/dist/components/pro/Flow/hooks/useClipboard.js +154 -154
  259. package/dist/components/pro/Flow/hooks/useClipboard.js.map +1 -1
  260. package/dist/components/pro/Flow/hooks/useCompactMode.js +17 -17
  261. package/dist/components/pro/Flow/hooks/useCompactMode.js.map +1 -1
  262. package/dist/components/pro/Flow/hooks/useDeleteSelection.js +40 -40
  263. package/dist/components/pro/Flow/hooks/useDeleteSelection.js.map +1 -1
  264. package/dist/components/pro/Flow/hooks/useDraggablePanel.js +51 -51
  265. package/dist/components/pro/Flow/hooks/useDraggablePanel.js.map +1 -1
  266. package/dist/components/pro/Flow/hooks/useEdgeMutations.js +157 -157
  267. package/dist/components/pro/Flow/hooks/useEdgeMutations.js.map +1 -1
  268. package/dist/components/pro/Flow/hooks/useFlowImportExport.js +190 -201
  269. package/dist/components/pro/Flow/hooks/useFlowImportExport.js.map +1 -1
  270. package/dist/components/pro/Flow/hooks/useKeyboardShortcuts.js +32 -38
  271. package/dist/components/pro/Flow/hooks/useKeyboardShortcuts.js.map +1 -1
  272. package/dist/components/pro/Flow/hooks/useLayoutActions.js +172 -180
  273. package/dist/components/pro/Flow/hooks/useLayoutActions.js.map +1 -1
  274. package/dist/components/pro/Flow/hooks/useLineMutations.js +57 -57
  275. package/dist/components/pro/Flow/hooks/useLineMutations.js.map +1 -1
  276. package/dist/components/pro/Flow/hooks/useMindMap.js +229 -238
  277. package/dist/components/pro/Flow/hooks/useMindMap.js.map +1 -1
  278. package/dist/components/pro/Flow/hooks/useNodeMutations.js +102 -102
  279. package/dist/components/pro/Flow/hooks/useNodeMutations.js.map +1 -1
  280. package/dist/components/pro/Flow/hooks/usePdfExport.js +55 -56
  281. package/dist/components/pro/Flow/hooks/usePdfExport.js.map +1 -1
  282. package/dist/components/pro/Flow/hooks/usePixiApp.js +55 -57
  283. package/dist/components/pro/Flow/hooks/usePixiApp.js.map +1 -1
  284. package/dist/components/pro/Flow/hooks/useResizablePanel.js +31 -31
  285. package/dist/components/pro/Flow/hooks/useResizablePanel.js.map +1 -1
  286. package/dist/components/pro/Flow/hooks/useSelection.js +69 -69
  287. package/dist/components/pro/Flow/hooks/useSelection.js.map +1 -1
  288. package/dist/components/pro/Flow/hooks/useUndoRedo.js +27 -27
  289. package/dist/components/pro/Flow/hooks/useUndoRedo.js.map +1 -1
  290. package/dist/components/pro/Flow/hooks/useViewport.js +28 -28
  291. package/dist/components/pro/Flow/hooks/useViewport.js.map +1 -1
  292. package/dist/components/pro/Flow/lines/FreehandTool.js +63 -63
  293. package/dist/components/pro/Flow/lines/FreehandTool.js.map +1 -1
  294. package/dist/components/pro/Flow/lines/GeometricLineTool.js +80 -80
  295. package/dist/components/pro/Flow/lines/GeometricLineTool.js.map +1 -1
  296. package/dist/components/pro/Flow/lines/LineRenderer.js +88 -88
  297. package/dist/components/pro/Flow/lines/LineRenderer.js.map +1 -1
  298. package/dist/components/pro/Flow/lines/lineSmoothing.js +32 -34
  299. package/dist/components/pro/Flow/lines/lineSmoothing.js.map +1 -1
  300. package/dist/components/pro/Flow/nodes/DataNodeView.js +236 -242
  301. package/dist/components/pro/Flow/nodes/DataNodeView.js.map +1 -1
  302. package/dist/components/pro/Flow/nodes/MediaContent.js +236 -246
  303. package/dist/components/pro/Flow/nodes/MediaContent.js.map +1 -1
  304. package/dist/components/pro/Flow/nodes/MediaOverlay.js +63 -63
  305. package/dist/components/pro/Flow/nodes/MediaOverlay.js.map +1 -1
  306. package/dist/components/pro/Flow/nodes/Model3DView.js +111 -113
  307. package/dist/components/pro/Flow/nodes/Model3DView.js.map +1 -1
  308. package/dist/components/pro/Flow/nodes/NodeHandles.js +74 -80
  309. package/dist/components/pro/Flow/nodes/NodeHandles.js.map +1 -1
  310. package/dist/components/pro/Flow/nodes/NodeRenderer.js +303 -314
  311. package/dist/components/pro/Flow/nodes/NodeRenderer.js.map +1 -1
  312. package/dist/components/pro/Flow/nodes/NodeText.js +25 -29
  313. package/dist/components/pro/Flow/nodes/NodeText.js.map +1 -1
  314. package/dist/components/pro/Flow/nodes/aiClient.js +124 -137
  315. package/dist/components/pro/Flow/nodes/aiClient.js.map +1 -1
  316. package/dist/components/pro/Flow/nodes/animAnchors.js +42 -49
  317. package/dist/components/pro/Flow/nodes/animAnchors.js.map +1 -1
  318. package/dist/components/pro/Flow/nodes/dataUtils.js +246 -267
  319. package/dist/components/pro/Flow/nodes/dataUtils.js.map +1 -1
  320. package/dist/components/pro/Flow/nodes/nodeUtils.js +23 -28
  321. package/dist/components/pro/Flow/nodes/nodeUtils.js.map +1 -1
  322. package/dist/components/pro/Flow/nodes/shapes.js +556 -589
  323. package/dist/components/pro/Flow/nodes/shapes.js.map +1 -1
  324. package/dist/components/pro/Flow/nodes/svgIconTexture.js +37 -39
  325. package/dist/components/pro/Flow/nodes/svgIconTexture.js.map +1 -1
  326. package/dist/components/pro/Flow/nodes/svgIcons.js +684 -689
  327. package/dist/components/pro/Flow/nodes/svgIcons.js.map +1 -1
  328. package/dist/components/pro/Flow/panels/AIPanel.js +464 -491
  329. package/dist/components/pro/Flow/panels/AIPanel.js.map +1 -1
  330. package/dist/components/pro/Flow/panels/Breadcrumb.js +41 -41
  331. package/dist/components/pro/Flow/panels/Breadcrumb.js.map +1 -1
  332. package/dist/components/pro/Flow/panels/ContextMenu.js +37 -37
  333. package/dist/components/pro/Flow/panels/ContextMenu.js.map +1 -1
  334. package/dist/components/pro/Flow/panels/DataInspectorSection.js +428 -432
  335. package/dist/components/pro/Flow/panels/DataInspectorSection.js.map +1 -1
  336. package/dist/components/pro/Flow/panels/ExpandableTextarea.js +61 -62
  337. package/dist/components/pro/Flow/panels/ExpandableTextarea.js.map +1 -1
  338. package/dist/components/pro/Flow/panels/FlowPanelGroup.js +114 -114
  339. package/dist/components/pro/Flow/panels/FlowPanelGroup.js.map +1 -1
  340. package/dist/components/pro/Flow/panels/FlowToolbar.js +347 -391
  341. package/dist/components/pro/Flow/panels/FlowToolbar.js.map +1 -1
  342. package/dist/components/pro/Flow/panels/InspectorPanel.js +1792 -1798
  343. package/dist/components/pro/Flow/panels/InspectorPanel.js.map +1 -1
  344. package/dist/components/pro/Flow/panels/OutlinePanel.js +242 -248
  345. package/dist/components/pro/Flow/panels/OutlinePanel.js.map +1 -1
  346. package/dist/components/pro/Flow/panels/PresentationMode.js +137 -140
  347. package/dist/components/pro/Flow/panels/PresentationMode.js.map +1 -1
  348. package/dist/components/pro/Flow/panels/ProjectTitle.js +46 -46
  349. package/dist/components/pro/Flow/panels/ProjectTitle.js.map +1 -1
  350. package/dist/components/pro/Flow/panels/ShapePalette.js +557 -572
  351. package/dist/components/pro/Flow/panels/ShapePalette.js.map +1 -1
  352. package/dist/components/pro/Flow/panels/toolbarIcons.d.ts +0 -1
  353. package/dist/components/pro/Flow/panels/toolbarIcons.js +508 -557
  354. package/dist/components/pro/Flow/panels/toolbarIcons.js.map +1 -1
  355. package/dist/components/pro/Flow/types.js +26 -26
  356. package/dist/components/pro/Flow/types.js.map +1 -1
  357. package/dist/components/pro/Flow/utils/dashedLine.js +113 -117
  358. package/dist/components/pro/Flow/utils/dashedLine.js.map +1 -1
  359. package/dist/components/pro/Flow/utils/gradient.js +55 -55
  360. package/dist/components/pro/Flow/utils/gradient.js.map +1 -1
  361. package/dist/components/pro/Flow/utils/pdfExport.js +50 -89
  362. package/dist/components/pro/Flow/utils/pdfExport.js.map +1 -1
  363. package/dist/components/pro/Flow/utils/themeColor.js +185 -195
  364. package/dist/components/pro/Flow/utils/themeColor.js.map +1 -1
  365. package/dist/components/pro/Gantt/Gantt.d.ts +7 -0
  366. package/dist/components/pro/Gantt/hooks/useGanttDrag.d.ts +31 -0
  367. package/dist/components/pro/Gantt/hooks/useGanttState.d.ts +58 -0
  368. package/dist/components/pro/Gantt/index.d.ts +6 -0
  369. package/dist/components/pro/Gantt/types.d.ts +478 -0
  370. package/dist/components/pro/Gantt/utils.d.ts +124 -0
  371. package/dist/components/pro/Resizable/Resizable.d.ts +30 -0
  372. package/dist/components/pro/Resizable/index.d.ts +2 -0
  373. package/dist/components/pro/RichTextEditor/AIRewrite.js +323 -334
  374. package/dist/components/pro/RichTextEditor/AIRewrite.js.map +1 -1
  375. package/dist/components/pro/RichTextEditor/BlockHandle.js +314 -316
  376. package/dist/components/pro/RichTextEditor/BlockHandle.js.map +1 -1
  377. package/dist/components/pro/RichTextEditor/BubbleToolbar.js +97 -97
  378. package/dist/components/pro/RichTextEditor/BubbleToolbar.js.map +1 -1
  379. package/dist/components/pro/RichTextEditor/CommentDialog.js +88 -88
  380. package/dist/components/pro/RichTextEditor/CommentDialog.js.map +1 -1
  381. package/dist/components/pro/RichTextEditor/CommentPanel.js +240 -240
  382. package/dist/components/pro/RichTextEditor/CommentPanel.js.map +1 -1
  383. package/dist/components/pro/RichTextEditor/CommentPopover.js +234 -234
  384. package/dist/components/pro/RichTextEditor/CommentPopover.js.map +1 -1
  385. package/dist/components/pro/RichTextEditor/ContextMenu.js +251 -252
  386. package/dist/components/pro/RichTextEditor/ContextMenu.js.map +1 -1
  387. package/dist/components/pro/RichTextEditor/RichTextEditor.js +267 -271
  388. package/dist/components/pro/RichTextEditor/RichTextEditor.js.map +1 -1
  389. package/dist/components/pro/RichTextEditor/SlashMenu.js +214 -214
  390. package/dist/components/pro/RichTextEditor/SlashMenu.js.map +1 -1
  391. package/dist/components/pro/RichTextEditor/Toolbar/ColorPicker.js +44 -75
  392. package/dist/components/pro/RichTextEditor/Toolbar/ColorPicker.js.map +1 -1
  393. package/dist/components/pro/RichTextEditor/Toolbar/FloatingDialogMenu.js +261 -261
  394. package/dist/components/pro/RichTextEditor/Toolbar/FloatingDialogMenu.js.map +1 -1
  395. package/dist/components/pro/RichTextEditor/Toolbar/MarkdownTemplates.js +172 -526
  396. package/dist/components/pro/RichTextEditor/Toolbar/MarkdownTemplates.js.map +1 -1
  397. package/dist/components/pro/RichTextEditor/Toolbar/SelectDropdown.js +112 -114
  398. package/dist/components/pro/RichTextEditor/Toolbar/SelectDropdown.js.map +1 -1
  399. package/dist/components/pro/RichTextEditor/Toolbar/TableOpsMenu.js +194 -194
  400. package/dist/components/pro/RichTextEditor/Toolbar/TableOpsMenu.js.map +1 -1
  401. package/dist/components/pro/RichTextEditor/Toolbar/Toolbar.js +970 -973
  402. package/dist/components/pro/RichTextEditor/Toolbar/Toolbar.js.map +1 -1
  403. package/dist/components/pro/RichTextEditor/Toolbar/ToolbarButton.js +11 -12
  404. package/dist/components/pro/RichTextEditor/Toolbar/ToolbarButton.js.map +1 -1
  405. package/dist/components/pro/RichTextEditor/extensions/CodeBlockView.js +310 -344
  406. package/dist/components/pro/RichTextEditor/extensions/CodeBlockView.js.map +1 -1
  407. package/dist/components/pro/RichTextEditor/extensions/CommentMark.js +38 -39
  408. package/dist/components/pro/RichTextEditor/extensions/CommentMark.js.map +1 -1
  409. package/dist/components/pro/RichTextEditor/extensions/FloatingDialog.js +620 -625
  410. package/dist/components/pro/RichTextEditor/extensions/FloatingDialog.js.map +1 -1
  411. package/dist/components/pro/RichTextEditor/extensions/FontSize.js +25 -25
  412. package/dist/components/pro/RichTextEditor/extensions/FontSize.js.map +1 -1
  413. package/dist/components/pro/RichTextEditor/extensions/MarkdownBlock.js +167 -176
  414. package/dist/components/pro/RichTextEditor/extensions/MarkdownBlock.js.map +1 -1
  415. package/dist/components/pro/RichTextEditor/types.js +75 -75
  416. package/dist/components/pro/RichTextEditor/types.js.map +1 -1
  417. package/dist/contexts/AppContext.d.ts +1 -1
  418. package/dist/contexts/AppContext.js +216 -221
  419. package/dist/contexts/AppContext.js.map +1 -1
  420. package/dist/data-table.js +15 -41
  421. package/dist/data-table.js.map +1 -1
  422. package/dist/dishui.css +1 -1
  423. package/dist/flow.js +27 -83
  424. package/dist/hooks/useClickOutside.js +18 -18
  425. package/dist/hooks/useClickOutside.js.map +1 -1
  426. package/dist/hooks/useContainerElement.js +9 -9
  427. package/dist/hooks/useContainerElement.js.map +1 -1
  428. package/dist/hooks/useControllableState.js +33 -35
  429. package/dist/hooks/useControllableState.js.map +1 -1
  430. package/dist/hooks/useCopyToClipboard.js +16 -16
  431. package/dist/hooks/useCopyToClipboard.js.map +1 -1
  432. package/dist/hooks/useDebounce.js +14 -14
  433. package/dist/hooks/useDebounce.js.map +1 -1
  434. package/dist/hooks/useDraggable.js +50 -50
  435. package/dist/hooks/useDraggable.js.map +1 -1
  436. package/dist/hooks/useTableColumns.js +39 -41
  437. package/dist/hooks/useTableColumns.js.map +1 -1
  438. package/dist/hooks/useTableData.js +67 -68
  439. package/dist/hooks/useTableData.js.map +1 -1
  440. package/dist/index-nostyled.d.ts +8 -0
  441. package/dist/index.d.ts +31 -3
  442. package/dist/index.js +106 -241
  443. package/dist/layouts/MainLayout.js +56 -56
  444. package/dist/layouts/MainLayout.js.map +1 -1
  445. package/dist/layouts/Navbar.js +214 -214
  446. package/dist/layouts/Navbar.js.map +1 -1
  447. package/dist/layouts/Sidebar.js +184 -186
  448. package/dist/layouts/Sidebar.js.map +1 -1
  449. package/dist/layouts/headbar/Headbar.js +25 -25
  450. package/dist/layouts/headbar/Headbar.js.map +1 -1
  451. package/dist/layouts/headbar/HeadbarLangSwitcher.js +39 -39
  452. package/dist/layouts/headbar/HeadbarLangSwitcher.js.map +1 -1
  453. package/dist/layouts/headbar/HeadbarSearch.js +120 -120
  454. package/dist/layouts/headbar/HeadbarSearch.js.map +1 -1
  455. package/dist/layouts/headbar/HeadbarThemeSwitcher.js +27 -27
  456. package/dist/layouts/headbar/HeadbarThemeSwitcher.js.map +1 -1
  457. package/dist/layouts/headbar/HeadbarTitle.js +26 -26
  458. package/dist/layouts/headbar/HeadbarTitle.js.map +1 -1
  459. package/dist/lite.js +9 -24
  460. package/dist/markdown.js +4 -9
  461. package/dist/pages/components/Calendar/index.d.ts +3 -0
  462. package/dist/pages/components/Calendar/index.en.d.ts +3 -0
  463. package/dist/pages/components/Calendar/index.zh.d.ts +3 -0
  464. package/dist/pages/components/Chat/index.d.ts +3 -0
  465. package/dist/pages/components/Chat/index.en.d.ts +3 -0
  466. package/dist/pages/components/Chat/index.zh.d.ts +3 -0
  467. package/dist/pages/components/FloatWindow/index.d.ts +3 -0
  468. package/dist/pages/components/FloatWindow/index.en.d.ts +3 -0
  469. package/dist/pages/components/FloatWindow/index.zh.d.ts +3 -0
  470. package/dist/pages/components/Gantt/index.d.ts +3 -0
  471. package/dist/pages/components/Gantt/index.en.d.ts +3 -0
  472. package/dist/pages/components/Gantt/index.zh.d.ts +3 -0
  473. package/dist/pages/components/GridLayout/index.d.ts +3 -0
  474. package/dist/pages/components/GridLayout/index.en.d.ts +3 -0
  475. package/dist/pages/components/GridLayout/index.zh.d.ts +3 -0
  476. package/dist/pages/components/Notification/index.d.ts +3 -0
  477. package/dist/pages/components/Notification/index.en.d.ts +3 -0
  478. package/dist/pages/components/Notification/index.zh.d.ts +3 -0
  479. package/dist/pages/components/Resizable/index.d.ts +3 -0
  480. package/dist/pages/components/Resizable/index.en.d.ts +3 -0
  481. package/dist/pages/components/Resizable/index.zh.d.ts +3 -0
  482. package/dist/pages/components/Tab/index.d.ts +3 -0
  483. package/dist/pages/components/Tab/index.en.d.ts +3 -0
  484. package/dist/pages/components/Tab/index.zh.d.ts +3 -0
  485. package/dist/styles/themeStyles.js +87 -86
  486. package/dist/styles/themeStyles.js.map +1 -1
  487. package/dist/utils/cn.d.ts +13 -0
  488. package/dist/utils/cn.js +16 -0
  489. package/dist/utils/cn.js.map +1 -0
  490. package/dist/utils/i18n.js +700 -602
  491. package/dist/utils/i18n.js.map +1 -1
  492. package/dist/utils/menu.js +94 -94
  493. package/dist/utils/menu.js.map +1 -1
  494. package/dist/utils/rehype-code-meta.js +14 -14
  495. package/dist/utils/rehype-code-meta.js.map +1 -1
  496. package/dist/utils/remark-code-meta.js +9 -9
  497. package/dist/utils/remark-code-meta.js.map +1 -1
  498. package/dist/utils/routerBuilder.js +59 -60
  499. package/dist/utils/routerBuilder.js.map +1 -1
  500. package/dist/utils/selection.js +28 -29
  501. package/dist/utils/selection.js.map +1 -1
  502. package/dist/utils/themes.js +275 -255
  503. package/dist/utils/themes.js.map +1 -1
  504. package/package.json +19 -6
  505. package/dist/components/StatCard/index.d.ts +0 -24
  506. package/dist/components/StatCard/index.js +0 -90
  507. package/dist/components/StatCard/index.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.js","names":[],"sources":["../../src/utils/i18n.tsx"],"sourcesContent":["// 导入类型\nimport { MenuItem } from '../types/menu';\n\n// 定义语言类型\nexport type Language = 'zh' | 'en';\n\n// 定义翻译类型\nexport type Translations = {\n navbar: {\n search: string;\n searchPlaceholder: string;\n searchShortcut: string;\n noResults: string;\n };\n sidebar: {\n menu: {\n home: MenuItem;\n components: Omit<MenuItem, 'children'> & {\n children: Record<string, MenuItem>;\n };\n layouts: Omit<MenuItem, 'children'> & {\n children: Record<string, MenuItem>;\n };\n advanced: Omit<MenuItem, 'children'> & {\n children: Record<string, MenuItem>;\n };\n charts: MenuItem;\n };\n };\n};\n\n// 中文翻译\nexport const zhTranslations: Translations = {\n navbar: {\n search: '搜索组件',\n searchPlaceholder: '搜索组件、文档、示例...',\n searchShortcut: 'Cmd+K',\n noResults: '没有找到匹配的结果',\n },\n sidebar: {\n menu: {\n home: {\n id: 'home',\n label: '主页',\n path: '/',\n },\n components: {\n id: 'components',\n label: '组件',\n children: {\n button: {\n id: 'button',\n label: '按钮 Button',\n path: '/components/button',\n },\n badge: {\n id: 'badge',\n label: '徽章 Badge',\n path: '/components/badge',\n },\n input: {\n id: 'input',\n label: '输入框 Input',\n path: '/components/input',\n },\n label: {\n id: 'label',\n label: '标签 Label',\n path: '/components/label',\n },\n checkbox: {\n id: 'checkbox',\n label: '复选框 Checkbox',\n path: '/components/checkbox',\n },\n select: {\n id: 'select',\n label: '选择器 Select',\n path: '/components/select',\n },\n card: {\n id: 'card',\n label: '卡片 Card',\n path: '/components/card',\n },\n statcard: {\n id: 'statcard',\n label: '统计卡片 StatCard',\n path: '/components/statcard',\n },\n emptystate: {\n id: 'emptystate',\n label: '空状态 EmptyState',\n path: '/components/emptystate',\n },\n modal: {\n id: 'modal',\n label: '模态框 Modal',\n path: '/components/modal',\n },\n tabs: {\n id: 'tabs',\n label: '标签页 Tabs',\n path: '/components/tabs',\n },\n list: {\n id: 'list',\n label: '列表 List',\n path: '/components/list',\n },\n table: {\n id: 'table',\n label: '表格 Table',\n path: '/components/table',\n },\n markdown: {\n id: 'markdown',\n label: '文档 Markdown',\n path: '/components/markdown',\n },\n tree: {\n id: 'tree',\n label: '树形控件 Tree',\n path: '/components/tree',\n },\n fileuploader: {\n id: 'fileuploader',\n label: '文件上传 FileUploader',\n path: '/components/fileuploader',\n },\n },\n },\n layouts: {\n id: 'layouts',\n label: '布局 Layout',\n children: {\n layout: { id: 'layout', label: '布局总览 Layout', path: '/layouts/layout' },\n container: { id: 'container', label: '容器 Container', path: '/layouts/container' },\n grid: { id: 'grid', label: '栅格 Grid', path: '/layouts/grid' },\n flex: { id: 'flex', label: '弹性布局 Flex', path: '/layouts/flex' },\n group: { id: 'group', label: '布局组 Group', path: '/layouts/group' },\n space: { id: 'space', label: '占位 Space', path: '/layouts/space' },\n page: { id: 'page', label: '页面布局 Page', path: '/layouts/page' },\n },\n },\n charts: {\n id: 'charts',\n label: '图表 Charts',\n path: '/components/chart',\n children: [\n { id: 'chart-line', label: '折线图 Line', path: '/components/chart/line' },\n { id: 'chart-area', label: '面积图 Area', path: '/components/chart/area' },\n { id: 'chart-bar', label: '柱状图 Bar', path: '/components/chart/bar' },\n { id: 'chart-pie', label: '饼图 Pie', path: '/components/chart/pie' },\n { id: 'chart-scatter', label: '散点图 Scatter', path: '/components/chart/scatter' },\n { id: 'chart-combo', label: '组合图 Combo', path: '/components/chart/complex/combo' },\n { id: 'chart-stacked', label: '堆叠面积图 Stacked Area', path: '/components/chart/complex/stacked' },\n { id: 'chart-heatmap', label: '热力图 Heatmap', path: '/components/chart/complex/heatmap' },\n { id: 'chart-regression', label: '回归分析 Regression', path: '/components/chart/complex/regression' },\n { id: 'chart-radar', label: '雷达图 Radar', path: '/components/chart/special/radar' },\n { id: 'chart-sankey', label: '桑基图 Sankey', path: '/components/chart/special/sankey' },\n { id: 'chart-network', label: '网络图 Network', path: '/components/chart/special/network' },\n { id: 'chart-calendar', label: '日历热力图 Calendar', path: '/components/chart/special/calendar' },\n { id: 'chart-stacked-pie', label: '堆叠饼图 Stacked Pie', path: '/components/chart/special/stacked-pie' },\n { id: 'chart-funnel', label: '销售漏斗图 Funnel', path: '/components/chart/special/funnel' },\n { id: 'chart-treemap', label: '矩形树图 Treemap', path: '/components/chart/special/treemap' },\n { id: 'chart-globe', label: '地球 Globe', path: '/components/chart/special/globe' },\n { id: 'chart-world-map', label: '世界地图 World Map', path: '/components/chart/special/world-map' },\n ],\n },\n advanced: {\n id: 'advanced-components',\n label: '高级组件',\n children: {\n datatable: {\n id: 'datatable',\n label: '数据表格 DataTable',\n path: '/components/datatable',\n },\n\n jukebox: {\n id: 'jukebox',\n label: '音乐播放器 Jukebox',\n path: '/components/jukebox',\n },\n articlecontrol: {\n id: 'articlecontrol',\n label: '文档悬浮控件 ArticleControl',\n path: '/components/articlecontrol',\n },\n codeeditor: {\n id: 'codeeditor',\n label: '代码编辑器 CodeEditor',\n path: '/components/codeeditor',\n },\n markdowneditor: {\n id: 'markdowneditor',\n label: 'Markdown编辑器 MarkdownEditor',\n path: '/components/markdowneditor',\n },\n sidebar: {\n id: 'sidebar-demo',\n label: '侧边栏 Sidebar',\n path: '/components/sidebar',\n },\n fileexplorer: {\n id: 'fileexplorer',\n label: '文件浏览器 FileExplorer',\n path: '/components/fileexplorer',\n },\n richtexteditor: {\n id: 'richtexteditor',\n label: '富文本编辑器 RichTextEditor',\n path: '/components/richtexteditor',\n },\n flow: {\n id: 'flow',\n label: '流程图编辑器 Flow',\n path: '/components/flow',\n },\n flowUsage: {\n id: 'flow-usage',\n label: 'Flow 使用示例',\n path: '/components/flow/usage',\n },\n flowMobile: {\n id: 'flow-mobile',\n label: 'Flow 移动端示例',\n path: '/components/flow/mobile',\n },\n },\n },\n },\n },\n};\n\n// 英文翻译\nexport const enTranslations: Translations = {\n navbar: {\n search: 'Search Components',\n searchPlaceholder: 'Search components, docs, examples...',\n searchShortcut: 'Cmd+K',\n noResults: 'No results found',\n },\n sidebar: {\n menu: {\n home: {\n id: 'home',\n label: 'Home',\n path: '/',\n },\n components: {\n id: 'components',\n label: 'Components',\n children: {\n button: {\n id: 'button',\n label: 'Button',\n path: '/components/button',\n },\n badge: {\n id: 'badge',\n label: 'Badge',\n path: '/components/badge',\n },\n input: {\n id: 'input',\n label: 'Input',\n path: '/components/input',\n },\n label: {\n id: 'label',\n label: 'Label',\n path: '/components/label',\n },\n checkbox: {\n id: 'checkbox',\n label: 'Checkbox',\n path: '/components/checkbox',\n },\n select: {\n id: 'select',\n label: 'Select',\n path: '/components/select',\n },\n card: {\n id: 'card',\n label: 'Card',\n path: '/components/card',\n },\n statcard: {\n id: 'statcard',\n label: 'StatCard',\n path: '/components/statcard',\n },\n emptystate: {\n id: 'emptystate',\n label: 'EmptyState',\n path: '/components/emptystate',\n },\n modal: {\n id: 'modal',\n label: 'Modal',\n path: '/components/modal',\n },\n tabs: {\n id: 'tabs',\n label: 'Tabs',\n path: '/components/tabs',\n },\n list: {\n id: 'list',\n label: 'List',\n path: '/components/list',\n },\n table: {\n id: 'table',\n label: 'Table',\n path: '/components/table',\n },\n markdown: {\n id: 'markdown',\n label: 'Markdown',\n path: '/components/markdown',\n },\n tree: {\n id: 'tree',\n label: 'Tree',\n path: '/components/tree',\n },\n fileuploader: {\n id: 'fileuploader',\n label: 'FileUploader',\n path: '/components/fileuploader',\n },\n },\n },\n layouts: {\n id: 'layouts',\n label: 'Layout',\n children: {\n layout: { id: 'layout', label: 'Layout Overview', path: '/layouts/layout' },\n container: { id: 'container', label: 'Container', path: '/layouts/container' },\n grid: { id: 'grid', label: 'Grid', path: '/layouts/grid' },\n flex: { id: 'flex', label: 'Flex', path: '/layouts/flex' },\n group: { id: 'group', label: 'Group', path: '/layouts/group' },\n space: { id: 'space', label: 'Space', path: '/layouts/space' },\n page: { id: 'page', label: 'Page Layout', path: '/layouts/page' },\n },\n },\n charts: {\n id: 'charts',\n label: 'Charts',\n path: '/components/chart',\n children: [\n { id: 'chart-line', label: 'Line Chart', path: '/components/chart/line' },\n { id: 'chart-area', label: 'Area Chart', path: '/components/chart/area' },\n { id: 'chart-bar', label: 'Bar Chart', path: '/components/chart/bar' },\n { id: 'chart-pie', label: 'Pie Chart', path: '/components/chart/pie' },\n { id: 'chart-scatter', label: 'Scatter Chart', path: '/components/chart/scatter' },\n { id: 'chart-combo', label: 'Combo Chart', path: '/components/chart/complex/combo' },\n { id: 'chart-stacked', label: 'Stacked Area', path: '/components/chart/complex/stacked' },\n { id: 'chart-heatmap', label: 'Heatmap', path: '/components/chart/complex/heatmap' },\n { id: 'chart-regression', label: 'Regression Analysis', path: '/components/chart/complex/regression' },\n { id: 'chart-radar', label: 'Radar Chart', path: '/components/chart/special/radar' },\n { id: 'chart-sankey', label: 'Sankey Diagram', path: '/components/chart/special/sankey' },\n { id: 'chart-network', label: 'Network Graph', path: '/components/chart/special/network' },\n { id: 'chart-calendar', label: 'Calendar Heatmap', path: '/components/chart/special/calendar' },\n { id: 'chart-stacked-pie', label: 'Stacked Pie', path: '/components/chart/special/stacked-pie' },\n { id: 'chart-funnel', label: 'Sales Funnel', path: '/components/chart/special/funnel' },\n { id: 'chart-treemap', label: 'Treemap', path: '/components/chart/special/treemap' },\n { id: 'chart-globe', label: 'Globe', path: '/components/chart/special/globe' },\n { id: 'chart-world-map', label: 'World Map', path: '/components/chart/special/world-map' }\n ],\n },\n advanced: {\n id: 'advanced-components',\n label: 'Advanced Components',\n children: {\n datatable: {\n id: 'datatable',\n label: 'DataTable',\n path: '/components/datatable',\n },\n\n jukebox: {\n id: 'jukebox',\n label: 'Jukebox',\n path: '/components/jukebox',\n },\n articlecontrol: {\n id: 'articlecontrol',\n label: 'ArticleControl',\n path: '/components/articlecontrol',\n },\n codeeditor: {\n id: 'codeeditor',\n label: 'CodeEditor',\n path: '/components/codeeditor',\n },\n markdowneditor: {\n id: 'markdowneditor',\n label: 'MarkdownEditor',\n path: '/components/markdowneditor',\n },\n sidebar: {\n id: 'sidebar-demo',\n label: 'Sidebar',\n path: '/components/sidebar',\n },\n fileexplorer: {\n id: 'fileexplorer',\n label: 'FileExplorer',\n path: '/components/fileexplorer',\n },\n richtexteditor: {\n id: 'richtexteditor',\n label: 'RichTextEditor',\n path: '/components/richtexteditor',\n },\n flow: {\n id: 'flow',\n label: 'Flow Editor',\n path: '/components/flow',\n },\n flowUsage: {\n id: 'flow-usage',\n label: 'Flow Usage Guide',\n path: '/components/flow/usage',\n },\n flowMobile: {\n id: 'flow-mobile',\n label: 'Flow Mobile Guide',\n path: '/components/flow/mobile',\n },\n },\n },\n },\n },\n};\n\n// 根据语言获取翻译\nexport const getTranslations = (language: Language): Translations => {\n return language === 'zh' ? zhTranslations : enTranslations;\n};"],"mappings":"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"}
1
+ {"version":3,"file":"i18n.js","names":[],"sources":["../../src/utils/i18n.tsx"],"sourcesContent":["// 导入类型\nimport { MenuItem } from '../types/menu';\n\n// 定义语言类型\nexport type Language = 'zh' | 'en';\n\n// 定义翻译类型\nexport type Translations = {\n navbar: {\n search: string;\n searchPlaceholder: string;\n searchShortcut: string;\n noResults: string;\n };\n sidebar: {\n menu: {\n home: MenuItem;\n components: Omit<MenuItem, 'children'> & {\n children: Record<string, MenuItem>;\n };\n layouts: Omit<MenuItem, 'children'> & {\n children: Record<string, MenuItem>;\n };\n advanced: Omit<MenuItem, 'children'> & {\n children: Record<string, MenuItem>;\n };\n charts: MenuItem;\n };\n };\n};\n\n// 中文翻译\nexport const zhTranslations: Translations = {\n navbar: {\n search: '搜索组件',\n searchPlaceholder: '搜索组件、文档、示例...',\n searchShortcut: 'Cmd+K',\n noResults: '没有找到匹配的结果',\n },\n sidebar: {\n menu: {\n home: {\n id: 'home',\n label: '主页',\n path: '/',\n },\n components: {\n id: 'components',\n label: '组件',\n children: {\n button: {\n id: 'button',\n label: '按钮 Button',\n path: '/components/button',\n },\n badge: {\n id: 'badge',\n label: '徽章 Badge',\n path: '/components/badge',\n },\n input: {\n id: 'input',\n label: '输入框 Input',\n path: '/components/input',\n },\n label: {\n id: 'label',\n label: '标签 Label',\n path: '/components/label',\n },\n checkbox: {\n id: 'checkbox',\n label: '复选框 Checkbox',\n path: '/components/checkbox',\n },\n select: {\n id: 'select',\n label: '选择器 Select',\n path: '/components/select',\n },\n card: {\n id: 'card',\n label: '卡片 Card',\n path: '/components/card',\n },\n avatar: {\n id: 'avatar',\n label: '头像 Avatar',\n path: '/components/avatar',\n },\n accordion: {\n id: 'accordion',\n label: '手风琴 Accordion',\n path: '/components/accordion',\n },\n emptystate: {\n id: 'emptystate',\n label: '空状态 EmptyState',\n path: '/components/emptystate',\n },\n modal: {\n id: 'modal',\n label: '模态框 Modal',\n path: '/components/modal',\n },\n tabs: {\n id: 'tabs',\n label: '标签页 Tabs',\n path: '/components/tabs',\n },\n list: {\n id: 'list',\n label: '列表 List',\n path: '/components/list',\n },\n table: {\n id: 'table',\n label: '表格 Table',\n path: '/components/table',\n },\n markdown: {\n id: 'markdown',\n label: '文档 Markdown',\n path: '/components/markdown',\n },\n tree: {\n id: 'tree',\n label: '树形控件 Tree',\n path: '/components/tree',\n },\n fileuploader: {\n id: 'fileuploader',\n label: '文件上传 FileUploader',\n path: '/components/fileuploader',\n },\n text: {\n id: 'text',\n label: '文本 Text',\n path: '/components/text',\n },\n image: {\n id: 'image',\n label: '图片 Image',\n path: '/components/image',\n },\n icon: {\n id: 'icon',\n label: '图标 Icon',\n path: '/components/icon',\n },\n slider: {\n id: 'slider',\n label: '滑块 Slider',\n path: '/components/slider',\n },\n datetimeinput: {\n id: 'datetimeinput',\n label: '日期时间 DateTimeInput',\n path: '/components/datetime-input',\n },\n multiplechoice: {\n id: 'multiplechoice',\n label: '多选组 MultipleChoice',\n path: '/components/multiple-choice',\n },\n choicepicker: {\n id: 'choicepicker',\n label: '单选组 ChoicePicker',\n path: '/components/choice-picker',\n },\n },\n },\n layouts: {\n id: 'layouts',\n label: '布局 Layout',\n children: {\n layout: { id: 'layout', label: '布局总览 Layout', path: '/layouts/layout' },\n container: { id: 'container', label: '容器 Container', path: '/layouts/container' },\n grid: { id: 'grid', label: '栅格 Grid', path: '/layouts/grid' },\n flex: { id: 'flex', label: '弹性布局 Flex', path: '/layouts/flex' },\n group: { id: 'group', label: '布局组 Group', path: '/layouts/group' },\n space: { id: 'space', label: '占位 Space', path: '/layouts/space' },\n page: { id: 'page', label: '页面布局 Page', path: '/layouts/page' },\n row: { id: 'row', label: '行布局 Row', path: '/layouts/row' },\n column: { id: 'column', label: '列布局 Column', path: '/layouts/column' },\n },\n },\n charts: {\n id: 'charts',\n label: '图表 Charts',\n path: '/components/chart',\n children: [\n { id: 'chart-line', label: '折线图 Line', path: '/components/chart/line' },\n { id: 'chart-area', label: '面积图 Area', path: '/components/chart/area' },\n { id: 'chart-bar', label: '柱状图 Bar', path: '/components/chart/bar' },\n { id: 'chart-pie', label: '饼图 Pie', path: '/components/chart/pie' },\n { id: 'chart-scatter', label: '散点图 Scatter', path: '/components/chart/scatter' },\n { id: 'chart-combo', label: '组合图 Combo', path: '/components/chart/complex/combo' },\n { id: 'chart-stacked', label: '堆叠面积图 Stacked Area', path: '/components/chart/complex/stacked' },\n { id: 'chart-heatmap', label: '热力图 Heatmap', path: '/components/chart/complex/heatmap' },\n { id: 'chart-regression', label: '回归分析 Regression', path: '/components/chart/complex/regression' },\n { id: 'chart-radar', label: '雷达图 Radar', path: '/components/chart/special/radar' },\n { id: 'chart-sankey', label: '桑基图 Sankey', path: '/components/chart/special/sankey' },\n { id: 'chart-network', label: '网络图 Network', path: '/components/chart/special/network' },\n { id: 'chart-calendar', label: '日历热力图 Calendar', path: '/components/chart/special/calendar' },\n { id: 'chart-stacked-pie', label: '堆叠饼图 Stacked Pie', path: '/components/chart/special/stacked-pie' },\n { id: 'chart-funnel', label: '销售漏斗图 Funnel', path: '/components/chart/special/funnel' },\n { id: 'chart-treemap', label: '矩形树图 Treemap', path: '/components/chart/special/treemap' },\n { id: 'chart-globe', label: '地球 Globe', path: '/components/chart/special/globe' },\n { id: 'chart-world-map', label: '世界地图 World Map', path: '/components/chart/special/world-map' },\n ],\n },\n advanced: {\n id: 'advanced-components',\n label: '高级组件',\n children: {\n datatable: {\n id: 'datatable',\n label: '数据表格 DataTable',\n path: '/components/datatable',\n },\n\n jukebox: {\n id: 'jukebox',\n label: '音乐播放器 Jukebox',\n path: '/components/jukebox',\n },\n articlecontrol: {\n id: 'articlecontrol',\n label: '文档悬浮控件 ArticleControl',\n path: '/components/articlecontrol',\n },\n codeeditor: {\n id: 'codeeditor',\n label: '代码编辑器 CodeEditor',\n path: '/components/codeeditor',\n },\n markdowneditor: {\n id: 'markdowneditor',\n label: 'Markdown编辑器 MarkdownEditor',\n path: '/components/markdowneditor',\n },\n sidebar: {\n id: 'sidebar-demo',\n label: '侧边栏 Sidebar',\n path: '/components/sidebar',\n },\n fileexplorer: {\n id: 'fileexplorer',\n label: '文件浏览器 FileExplorer',\n path: '/components/fileexplorer',\n },\n richtexteditor: {\n id: 'richtexteditor',\n label: '富文本编辑器 RichTextEditor',\n path: '/components/richtexteditor',\n },\n flow: {\n id: 'flow',\n label: '流程图编辑器 Flow',\n path: '/components/flow',\n },\n flowUsage: {\n id: 'flow-usage',\n label: 'Flow 使用示例',\n path: '/components/flow/usage',\n },\n flowMobile: {\n id: 'flow-mobile',\n label: 'Flow 移动端示例',\n path: '/components/flow/mobile',\n },\n },\n },\n },\n },\n};\n\n// 英文翻译\nexport const enTranslations: Translations = {\n navbar: {\n search: 'Search Components',\n searchPlaceholder: 'Search components, docs, examples...',\n searchShortcut: 'Cmd+K',\n noResults: 'No results found',\n },\n sidebar: {\n menu: {\n home: {\n id: 'home',\n label: 'Home',\n path: '/',\n },\n components: {\n id: 'components',\n label: 'Components',\n children: {\n button: {\n id: 'button',\n label: 'Button',\n path: '/components/button',\n },\n badge: {\n id: 'badge',\n label: 'Badge',\n path: '/components/badge',\n },\n input: {\n id: 'input',\n label: 'Input',\n path: '/components/input',\n },\n label: {\n id: 'label',\n label: 'Label',\n path: '/components/label',\n },\n checkbox: {\n id: 'checkbox',\n label: 'Checkbox',\n path: '/components/checkbox',\n },\n select: {\n id: 'select',\n label: 'Select',\n path: '/components/select',\n },\n card: {\n id: 'card',\n label: 'Card',\n path: '/components/card',\n },\n avatar: {\n id: 'avatar',\n label: 'Avatar',\n path: '/components/avatar',\n },\n accordion: {\n id: 'accordion',\n label: 'Accordion',\n path: '/components/accordion',\n },\n emptystate: {\n id: 'emptystate',\n label: 'EmptyState',\n path: '/components/emptystate',\n },\n modal: {\n id: 'modal',\n label: 'Modal',\n path: '/components/modal',\n },\n tabs: {\n id: 'tabs',\n label: 'Tabs',\n path: '/components/tabs',\n },\n list: {\n id: 'list',\n label: 'List',\n path: '/components/list',\n },\n table: {\n id: 'table',\n label: 'Table',\n path: '/components/table',\n },\n markdown: {\n id: 'markdown',\n label: 'Markdown',\n path: '/components/markdown',\n },\n tree: {\n id: 'tree',\n label: 'Tree',\n path: '/components/tree',\n },\n fileuploader: {\n id: 'fileuploader',\n label: 'FileUploader',\n path: '/components/fileuploader',\n },\n text: {\n id: 'text',\n label: 'Text',\n path: '/components/text',\n },\n image: {\n id: 'image',\n label: 'Image',\n path: '/components/image',\n },\n icon: {\n id: 'icon',\n label: 'Icon',\n path: '/components/icon',\n },\n slider: {\n id: 'slider',\n label: 'Slider',\n path: '/components/slider',\n },\n datetimeinput: {\n id: 'datetimeinput',\n label: 'DateTimeInput',\n path: '/components/datetime-input',\n },\n multiplechoice: {\n id: 'multiplechoice',\n label: 'MultipleChoice',\n path: '/components/multiple-choice',\n },\n choicepicker: {\n id: 'choicepicker',\n label: 'ChoicePicker',\n path: '/components/choice-picker',\n },\n },\n },\n layouts: {\n id: 'layouts',\n label: 'Layout',\n children: {\n layout: { id: 'layout', label: 'Layout Overview', path: '/layouts/layout' },\n container: { id: 'container', label: 'Container', path: '/layouts/container' },\n grid: { id: 'grid', label: 'Grid', path: '/layouts/grid' },\n flex: { id: 'flex', label: 'Flex', path: '/layouts/flex' },\n group: { id: 'group', label: 'Group', path: '/layouts/group' },\n space: { id: 'space', label: 'Space', path: '/layouts/space' },\n page: { id: 'page', label: 'Page Layout', path: '/layouts/page' },\n row: { id: 'row', label: 'Row', path: '/layouts/row' },\n column: { id: 'column', label: 'Column', path: '/layouts/column' },\n },\n },\n charts: {\n id: 'charts',\n label: 'Charts',\n path: '/components/chart',\n children: [\n { id: 'chart-line', label: 'Line Chart', path: '/components/chart/line' },\n { id: 'chart-area', label: 'Area Chart', path: '/components/chart/area' },\n { id: 'chart-bar', label: 'Bar Chart', path: '/components/chart/bar' },\n { id: 'chart-pie', label: 'Pie Chart', path: '/components/chart/pie' },\n { id: 'chart-scatter', label: 'Scatter Chart', path: '/components/chart/scatter' },\n { id: 'chart-combo', label: 'Combo Chart', path: '/components/chart/complex/combo' },\n { id: 'chart-stacked', label: 'Stacked Area', path: '/components/chart/complex/stacked' },\n { id: 'chart-heatmap', label: 'Heatmap', path: '/components/chart/complex/heatmap' },\n { id: 'chart-regression', label: 'Regression Analysis', path: '/components/chart/complex/regression' },\n { id: 'chart-radar', label: 'Radar Chart', path: '/components/chart/special/radar' },\n { id: 'chart-sankey', label: 'Sankey Diagram', path: '/components/chart/special/sankey' },\n { id: 'chart-network', label: 'Network Graph', path: '/components/chart/special/network' },\n { id: 'chart-calendar', label: 'Calendar Heatmap', path: '/components/chart/special/calendar' },\n { id: 'chart-stacked-pie', label: 'Stacked Pie', path: '/components/chart/special/stacked-pie' },\n { id: 'chart-funnel', label: 'Sales Funnel', path: '/components/chart/special/funnel' },\n { id: 'chart-treemap', label: 'Treemap', path: '/components/chart/special/treemap' },\n { id: 'chart-globe', label: 'Globe', path: '/components/chart/special/globe' },\n { id: 'chart-world-map', label: 'World Map', path: '/components/chart/special/world-map' }\n ],\n },\n advanced: {\n id: 'advanced-components',\n label: 'Advanced Components',\n children: {\n datatable: {\n id: 'datatable',\n label: 'DataTable',\n path: '/components/datatable',\n },\n\n jukebox: {\n id: 'jukebox',\n label: 'Jukebox',\n path: '/components/jukebox',\n },\n articlecontrol: {\n id: 'articlecontrol',\n label: 'ArticleControl',\n path: '/components/articlecontrol',\n },\n codeeditor: {\n id: 'codeeditor',\n label: 'CodeEditor',\n path: '/components/codeeditor',\n },\n markdowneditor: {\n id: 'markdowneditor',\n label: 'MarkdownEditor',\n path: '/components/markdowneditor',\n },\n sidebar: {\n id: 'sidebar-demo',\n label: 'Sidebar',\n path: '/components/sidebar',\n },\n fileexplorer: {\n id: 'fileexplorer',\n label: 'FileExplorer',\n path: '/components/fileexplorer',\n },\n richtexteditor: {\n id: 'richtexteditor',\n label: 'RichTextEditor',\n path: '/components/richtexteditor',\n },\n flow: {\n id: 'flow',\n label: 'Flow Editor',\n path: '/components/flow',\n },\n flowUsage: {\n id: 'flow-usage',\n label: 'Flow Usage Guide',\n path: '/components/flow/usage',\n },\n flowMobile: {\n id: 'flow-mobile',\n label: 'Flow Mobile Guide',\n path: '/components/flow/mobile',\n },\n },\n },\n },\n },\n};\n\n// 根据语言获取翻译\nexport const getTranslations = (language: Language): Translations => {\n return language === 'zh' ? zhTranslations : enTranslations;\n};"],"mappings":"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"}
@@ -1,98 +1,98 @@
1
- import { getTranslations as d } from "./i18n.js";
1
+ import { getTranslations as e } from "./i18n.js";
2
2
  import "react";
3
- import { jsx as e } from "react/jsx-runtime";
4
- var p = (l) => {
5
- const { home: s, components: n, layouts: r, charts: a, advanced: o } = d(l).sidebar.menu, i = Object.values(n.children || {}), h = Object.values(r.children || {}), c = o ? Object.values(o.children || {}) : [], t = [
6
- {
7
- ...s,
8
- icon: /* @__PURE__ */ e("svg", {
9
- xmlns: "http://www.w3.org/2000/svg",
10
- className: "h-5 w-5",
11
- fill: "none",
12
- viewBox: "0 0 24 24",
13
- stroke: "currentColor",
14
- children: /* @__PURE__ */ e("path", {
15
- strokeLinecap: "round",
16
- strokeLinejoin: "round",
17
- strokeWidth: "2",
18
- d: "M3 12l2-2m0 0l7-7 7 7M5 10v10a1 1 0 001 1h3m10-11l2 2m-2-2v10a1 1 0 01-1 1h-3m-6 0a1 1 0 001-1v-4a1 1 0 011-1h2a1 1 0 011 1v4a1 1 0 001 1m-6 0h6"
19
- })
20
- })
21
- },
22
- {
23
- id: n.id,
24
- label: n.label,
25
- icon: /* @__PURE__ */ e("svg", {
26
- xmlns: "http://www.w3.org/2000/svg",
27
- className: "h-5 w-5",
28
- fill: "none",
29
- viewBox: "0 0 24 24",
30
- stroke: "currentColor",
31
- children: /* @__PURE__ */ e("path", {
32
- strokeLinecap: "round",
33
- strokeLinejoin: "round",
34
- strokeWidth: "2",
35
- d: "M7 21a4 4 0 01-4-4V5a2 2 0 012-2h4a2 2 0 012 2v12a4 4 0 01-4 4zm0 0h12a2 2 0 002-2v-4a2 2 0 00-2-2h-2.343M11 7.343l1.657-1.657a2 2 0 012.828 0l2.829 2.829a2 2 0 010 2.828l-8.486 8.485M7 17h.01"
36
- })
37
- }),
38
- children: i
39
- },
40
- {
41
- id: r.id,
42
- label: r.label,
43
- icon: /* @__PURE__ */ e("svg", {
44
- xmlns: "http://www.w3.org/2000/svg",
45
- className: "h-5 w-5",
46
- fill: "none",
47
- viewBox: "0 0 24 24",
48
- stroke: "currentColor",
49
- children: /* @__PURE__ */ e("path", {
50
- strokeLinecap: "round",
51
- strokeLinejoin: "round",
52
- strokeWidth: "2",
53
- d: "M4 5a1 1 0 011-1h16v6H4V5zm0 9h7v6H4v-6zm11 0h6v6h-6v-6z"
54
- })
55
- }),
56
- children: h
57
- },
58
- {
59
- ...a,
60
- icon: /* @__PURE__ */ e("svg", {
61
- xmlns: "http://www.w3.org/2000/svg",
62
- className: "h-5 w-5",
63
- fill: "none",
64
- viewBox: "0 0 24 24",
65
- stroke: "currentColor",
66
- children: /* @__PURE__ */ e("path", {
67
- strokeLinecap: "round",
68
- strokeLinejoin: "round",
69
- strokeWidth: "2",
70
- d: "M4 19V9m6 10V5m6 14v-7m4 7H2"
71
- })
72
- })
73
- }
74
- ];
75
- return o && t.push({
76
- id: o.id,
77
- label: o.label,
78
- icon: /* @__PURE__ */ e("svg", {
79
- xmlns: "http://www.w3.org/2000/svg",
80
- className: "h-5 w-5",
81
- fill: "none",
82
- viewBox: "0 0 24 24",
83
- stroke: "currentColor",
84
- children: /* @__PURE__ */ e("path", {
85
- strokeLinecap: "round",
86
- strokeLinejoin: "round",
87
- strokeWidth: "2",
88
- d: "M19.428 15.428a2 2 0 00-1.022-.547l-2.384-.477a6 6 0 00-3.86.517l-.318.158a6 6 0 01-3.86.517L6.05 15.21a2 2 0 00-1.806.547M8 4h8l-1 1v5.172a2 2 0 00.586 1.414l5 5c1.26 1.26.367 3.414-1.415 3.414H4.828c-1.782 0-2.674-2.154-1.414-3.414l5-5A2 2 0 009 10.172V5L8 4z"
89
- })
90
- }),
91
- children: c
92
- }), t;
93
- };
94
- export {
95
- p as getMenuItems
3
+ import { jsx as t } from "react/jsx-runtime";
4
+ //#region src/utils/menu.tsx
5
+ var n = (n) => {
6
+ let { home: r, components: i, layouts: a, charts: o, advanced: s } = e(n).sidebar.menu, c = Object.values(i.children || {}), l = Object.values(a.children || {}), u = s ? Object.values(s.children || {}) : [], d = [
7
+ {
8
+ ...r,
9
+ icon: /* @__PURE__ */ t("svg", {
10
+ xmlns: "http://www.w3.org/2000/svg",
11
+ className: "h-5 w-5",
12
+ fill: "none",
13
+ viewBox: "0 0 24 24",
14
+ stroke: "currentColor",
15
+ children: /* @__PURE__ */ t("path", {
16
+ strokeLinecap: "round",
17
+ strokeLinejoin: "round",
18
+ strokeWidth: "2",
19
+ d: "M3 12l2-2m0 0l7-7 7 7M5 10v10a1 1 0 001 1h3m10-11l2 2m-2-2v10a1 1 0 01-1 1h-3m-6 0a1 1 0 001-1v-4a1 1 0 011-1h2a1 1 0 011 1v4a1 1 0 001 1m-6 0h6"
20
+ })
21
+ })
22
+ },
23
+ {
24
+ id: i.id,
25
+ label: i.label,
26
+ icon: /* @__PURE__ */ t("svg", {
27
+ xmlns: "http://www.w3.org/2000/svg",
28
+ className: "h-5 w-5",
29
+ fill: "none",
30
+ viewBox: "0 0 24 24",
31
+ stroke: "currentColor",
32
+ children: /* @__PURE__ */ t("path", {
33
+ strokeLinecap: "round",
34
+ strokeLinejoin: "round",
35
+ strokeWidth: "2",
36
+ d: "M7 21a4 4 0 01-4-4V5a2 2 0 012-2h4a2 2 0 012 2v12a4 4 0 01-4 4zm0 0h12a2 2 0 002-2v-4a2 2 0 00-2-2h-2.343M11 7.343l1.657-1.657a2 2 0 012.828 0l2.829 2.829a2 2 0 010 2.828l-8.486 8.485M7 17h.01"
37
+ })
38
+ }),
39
+ children: c
40
+ },
41
+ {
42
+ id: a.id,
43
+ label: a.label,
44
+ icon: /* @__PURE__ */ t("svg", {
45
+ xmlns: "http://www.w3.org/2000/svg",
46
+ className: "h-5 w-5",
47
+ fill: "none",
48
+ viewBox: "0 0 24 24",
49
+ stroke: "currentColor",
50
+ children: /* @__PURE__ */ t("path", {
51
+ strokeLinecap: "round",
52
+ strokeLinejoin: "round",
53
+ strokeWidth: "2",
54
+ d: "M4 5a1 1 0 011-1h16v6H4V5zm0 9h7v6H4v-6zm11 0h6v6h-6v-6z"
55
+ })
56
+ }),
57
+ children: l
58
+ },
59
+ {
60
+ ...o,
61
+ icon: /* @__PURE__ */ t("svg", {
62
+ xmlns: "http://www.w3.org/2000/svg",
63
+ className: "h-5 w-5",
64
+ fill: "none",
65
+ viewBox: "0 0 24 24",
66
+ stroke: "currentColor",
67
+ children: /* @__PURE__ */ t("path", {
68
+ strokeLinecap: "round",
69
+ strokeLinejoin: "round",
70
+ strokeWidth: "2",
71
+ d: "M4 19V9m6 10V5m6 14v-7m4 7H2"
72
+ })
73
+ })
74
+ }
75
+ ];
76
+ return s && d.push({
77
+ id: s.id,
78
+ label: s.label,
79
+ icon: /* @__PURE__ */ t("svg", {
80
+ xmlns: "http://www.w3.org/2000/svg",
81
+ className: "h-5 w-5",
82
+ fill: "none",
83
+ viewBox: "0 0 24 24",
84
+ stroke: "currentColor",
85
+ children: /* @__PURE__ */ t("path", {
86
+ strokeLinecap: "round",
87
+ strokeLinejoin: "round",
88
+ strokeWidth: "2",
89
+ d: "M19.428 15.428a2 2 0 00-1.022-.547l-2.384-.477a6 6 0 00-3.86.517l-.318.158a6 6 0 01-3.86.517L6.05 15.21a2 2 0 00-1.806.547M8 4h8l-1 1v5.172a2 2 0 00.586 1.414l5 5c1.26 1.26.367 3.414-1.415 3.414H4.828c-1.782 0-2.674-2.154-1.414-3.414l5-5A2 2 0 009 10.172V5L8 4z"
90
+ })
91
+ }),
92
+ children: u
93
+ }), d;
96
94
  };
95
+ //#endregion
96
+ export { n as getMenuItems };
97
97
 
98
98
  //# sourceMappingURL=menu.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"menu.js","names":[],"sources":["../../src/utils/menu.tsx"],"sourcesContent":["// 菜单配置\nimport React from 'react';\nimport { MenuItem } from '../types/menu';\nimport { getTranslations, Language } from './i18n';\n\n// 转换扁平化的菜单项字典为菜单树\nexport const getMenuItems = (language: Language): MenuItem[] => {\n const translations = getTranslations(language);\n const { home, components, layouts, charts, advanced } = translations.sidebar.menu;\n\n // 转换组件子菜单\n const componentsChildren = Object.values(components.children || {});\n\n const layoutsChildren = Object.values(layouts.children || {});\n const advancedChildren = advanced ? Object.values(advanced.children || {}) : [];\n\n // 创建完整菜单树,确保结构正确\n const menuItems: MenuItem[] = [\n {\n ...home,\n icon: <svg xmlns=\"http://www.w3.org/2000/svg\" className=\"h-5 w-5\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth=\"2\" d=\"M3 12l2-2m0 0l7-7 7 7M5 10v10a1 1 0 001 1h3m10-11l2 2m-2-2v10a1 1 0 01-1 1h-3m-6 0a1 1 0 001-1v-4a1 1 0 011-1h2a1 1 0 011 1v4a1 1 0 001 1m-6 0h6\" />\n </svg>\n },\n {\n id: components.id,\n label: components.label,\n icon: <svg xmlns=\"http://www.w3.org/2000/svg\" className=\"h-5 w-5\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth=\"2\" d=\"M7 21a4 4 0 01-4-4V5a2 2 0 012-2h4a2 2 0 012 2v12a4 4 0 01-4 4zm0 0h12a2 2 0 002-2v-4a2 2 0 00-2-2h-2.343M11 7.343l1.657-1.657a2 2 0 012.828 0l2.829 2.829a2 2 0 010 2.828l-8.486 8.485M7 17h.01\" />\n </svg>,\n children: componentsChildren\n },\n {\n id: layouts.id,\n label: layouts.label,\n icon: <svg xmlns=\"http://www.w3.org/2000/svg\" className=\"h-5 w-5\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth=\"2\" d=\"M4 5a1 1 0 011-1h16v6H4V5zm0 9h7v6H4v-6zm11 0h6v6h-6v-6z\" />\n </svg>,\n children: layoutsChildren\n },\n {\n ...charts,\n icon: <svg xmlns=\"http://www.w3.org/2000/svg\" className=\"h-5 w-5\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth=\"2\" d=\"M4 19V9m6 10V5m6 14v-7m4 7H2\" />\n </svg>,\n },\n ];\n\n if (advanced) {\n menuItems.push({\n id: advanced.id,\n label: advanced.label,\n icon: <svg xmlns=\"http://www.w3.org/2000/svg\" className=\"h-5 w-5\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth=\"2\" d=\"M19.428 15.428a2 2 0 00-1.022-.547l-2.384-.477a6 6 0 00-3.86.517l-.318.158a6 6 0 01-3.86.517L6.05 15.21a2 2 0 00-1.806.547M8 4h8l-1 1v5.172a2 2 0 00.586 1.414l5 5c1.26 1.26.367 3.414-1.415 3.414H4.828c-1.782 0-2.674-2.154-1.414-3.414l5-5A2 2 0 009 10.172V5L8 4z\" />\n </svg>,\n children: advancedChildren\n });\n }\n\n return menuItems;\n};\n"],"mappings":";;;AAMA,IAAa,IAAA,CAAgB,MAAmC;AAE5D,QAAM,EAAE,MAAA,GAAM,YAAA,GAAY,SAAA,GAAS,QAAA,GAAQ,UAAA,EAAA,IADtB,EAAgB,CACmB,EAAa,QAAQ,MAGvE,IAAqB,OAAO,OAAO,EAAW,YAAY,CAAC,CAAC,GAE5D,IAAkB,OAAO,OAAO,EAAQ,YAAY,CAAC,CAAC,GACtD,IAAmB,IAAW,OAAO,OAAO,EAAS,YAAY,CAAC,CAAC,IAAI,CAAC,GAGxE,IAAwB;AAAA,IAC1B;AAAA,MACI,GAAG;AAAA,MACH,MAAM,gBAAA,EAAC,OAAD;AAAA,QAAK,OAAM;AAAA,QAA6B,WAAU;AAAA,QAAU,MAAK;AAAA,QAAO,SAAQ;AAAA,QAAY,QAAO;AAAA,QACrG,UAAA,gBAAA,EAAC,QAAD;AAAA,UAAM,eAAc;AAAA,UAAQ,gBAAe;AAAA,UAAQ,aAAY;AAAA,UAAI,GAAE;AAAA,QAAoJ,CAAA;AAAA,MACxN,CAAA;AAAA,IACT;AAAA,IACA;AAAA,MACI,IAAI,EAAW;AAAA,MACf,OAAO,EAAW;AAAA,MAClB,MAAM,gBAAA,EAAC,OAAD;AAAA,QAAK,OAAM;AAAA,QAA6B,WAAU;AAAA,QAAU,MAAK;AAAA,QAAO,SAAQ;AAAA,QAAY,QAAO;AAAA,QACrG,UAAA,gBAAA,EAAC,QAAD;AAAA,UAAM,eAAc;AAAA,UAAQ,gBAAe;AAAA,UAAQ,aAAY;AAAA,UAAI,GAAE;AAAA,QAAoM,CAAA;AAAA,MACxQ,CAAA;AAAA,MACL,UAAU;AAAA,IACd;AAAA,IACA;AAAA,MACI,IAAI,EAAQ;AAAA,MACZ,OAAO,EAAQ;AAAA,MACf,MAAM,gBAAA,EAAC,OAAD;AAAA,QAAK,OAAM;AAAA,QAA6B,WAAU;AAAA,QAAU,MAAK;AAAA,QAAO,SAAQ;AAAA,QAAY,QAAO;AAAA,QACrG,UAAA,gBAAA,EAAC,QAAD;AAAA,UAAM,eAAc;AAAA,UAAQ,gBAAe;AAAA,UAAQ,aAAY;AAAA,UAAI,GAAE;AAAA,QAA4D,CAAA;AAAA,MAChI,CAAA;AAAA,MACL,UAAU;AAAA,IACd;AAAA,IACA;AAAA,MACI,GAAG;AAAA,MACH,MAAM,gBAAA,EAAC,OAAD;AAAA,QAAK,OAAM;AAAA,QAA6B,WAAU;AAAA,QAAU,MAAK;AAAA,QAAO,SAAQ;AAAA,QAAY,QAAO;AAAA,QACrG,UAAA,gBAAA,EAAC,QAAD;AAAA,UAAM,eAAc;AAAA,UAAQ,gBAAe;AAAA,UAAQ,aAAY;AAAA,UAAI,GAAE;AAAA,QAAgC,CAAA;AAAA,MACpG,CAAA;AAAA,IACT;AAAA,EACJ;AAEA,SAAI,KACA,EAAU,KAAK;AAAA,IACX,IAAI,EAAS;AAAA,IACb,OAAO,EAAS;AAAA,IAChB,MAAM,gBAAA,EAAC,OAAD;AAAA,MAAK,OAAM;AAAA,MAA6B,WAAU;AAAA,MAAU,MAAK;AAAA,MAAO,SAAQ;AAAA,MAAY,QAAO;AAAA,MACrG,UAAA,gBAAA,EAAC,QAAD;AAAA,QAAM,eAAc;AAAA,QAAQ,gBAAe;AAAA,QAAQ,aAAY;AAAA,QAAI,GAAE;AAAA,MAAyQ,CAAA;AAAA,IAC7U,CAAA;AAAA,IACL,UAAU;AAAA,EACd,CAAC,GAGE;AACX"}
1
+ {"version":3,"file":"menu.js","names":[],"sources":["../../src/utils/menu.tsx"],"sourcesContent":["// 菜单配置\nimport React from 'react';\nimport { MenuItem } from '../types/menu';\nimport { getTranslations, Language } from './i18n';\n\n// 转换扁平化的菜单项字典为菜单树\nexport const getMenuItems = (language: Language): MenuItem[] => {\n const translations = getTranslations(language);\n const { home, components, layouts, charts, advanced } = translations.sidebar.menu;\n\n // 转换组件子菜单\n const componentsChildren = Object.values(components.children || {});\n\n const layoutsChildren = Object.values(layouts.children || {});\n const advancedChildren = advanced ? Object.values(advanced.children || {}) : [];\n\n // 创建完整菜单树,确保结构正确\n const menuItems: MenuItem[] = [\n {\n ...home,\n icon: <svg xmlns=\"http://www.w3.org/2000/svg\" className=\"h-5 w-5\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth=\"2\" d=\"M3 12l2-2m0 0l7-7 7 7M5 10v10a1 1 0 001 1h3m10-11l2 2m-2-2v10a1 1 0 01-1 1h-3m-6 0a1 1 0 001-1v-4a1 1 0 011-1h2a1 1 0 011 1v4a1 1 0 001 1m-6 0h6\" />\n </svg>\n },\n {\n id: components.id,\n label: components.label,\n icon: <svg xmlns=\"http://www.w3.org/2000/svg\" className=\"h-5 w-5\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth=\"2\" d=\"M7 21a4 4 0 01-4-4V5a2 2 0 012-2h4a2 2 0 012 2v12a4 4 0 01-4 4zm0 0h12a2 2 0 002-2v-4a2 2 0 00-2-2h-2.343M11 7.343l1.657-1.657a2 2 0 012.828 0l2.829 2.829a2 2 0 010 2.828l-8.486 8.485M7 17h.01\" />\n </svg>,\n children: componentsChildren\n },\n {\n id: layouts.id,\n label: layouts.label,\n icon: <svg xmlns=\"http://www.w3.org/2000/svg\" className=\"h-5 w-5\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth=\"2\" d=\"M4 5a1 1 0 011-1h16v6H4V5zm0 9h7v6H4v-6zm11 0h6v6h-6v-6z\" />\n </svg>,\n children: layoutsChildren\n },\n {\n ...charts,\n icon: <svg xmlns=\"http://www.w3.org/2000/svg\" className=\"h-5 w-5\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth=\"2\" d=\"M4 19V9m6 10V5m6 14v-7m4 7H2\" />\n </svg>,\n },\n ];\n\n if (advanced) {\n menuItems.push({\n id: advanced.id,\n label: advanced.label,\n icon: <svg xmlns=\"http://www.w3.org/2000/svg\" className=\"h-5 w-5\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth=\"2\" d=\"M19.428 15.428a2 2 0 00-1.022-.547l-2.384-.477a6 6 0 00-3.86.517l-.318.158a6 6 0 01-3.86.517L6.05 15.21a2 2 0 00-1.806.547M8 4h8l-1 1v5.172a2 2 0 00.586 1.414l5 5c1.26 1.26.367 3.414-1.415 3.414H4.828c-1.782 0-2.674-2.154-1.414-3.414l5-5A2 2 0 009 10.172V5L8 4z\" />\n </svg>,\n children: advancedChildren\n });\n }\n\n return menuItems;\n};\n"],"mappings":";;;;AAMA,IAAa,KAAgB,MAAmC;CAE5D,IAAM,EAAE,SAAM,eAAY,YAAS,WAAQ,gBADtB,EAAgB,CACmB,CAAA,CAAa,QAAQ,MAGvE,IAAqB,OAAO,OAAO,EAAW,YAAY,CAAC,CAAC,GAE5D,IAAkB,OAAO,OAAO,EAAQ,YAAY,CAAC,CAAC,GACtD,IAAmB,IAAW,OAAO,OAAO,EAAS,YAAY,CAAC,CAAC,IAAI,CAAC,GAGxE,IAAwB;EAC1B;GACI,GAAG;GACH,MAAM,kBAAC,OAAD;IAAK,OAAM;IAA6B,WAAU;IAAU,MAAK;IAAO,SAAQ;IAAY,QAAO;IACrG,UAAA,kBAAC,QAAD;KAAM,eAAc;KAAQ,gBAAe;KAAQ,aAAY;KAAI,GAAE;IAAoJ,CAAA;GACxN,CAAA;EACT;EACA;GACI,IAAI,EAAW;GACf,OAAO,EAAW;GAClB,MAAM,kBAAC,OAAD;IAAK,OAAM;IAA6B,WAAU;IAAU,MAAK;IAAO,SAAQ;IAAY,QAAO;IACrG,UAAA,kBAAC,QAAD;KAAM,eAAc;KAAQ,gBAAe;KAAQ,aAAY;KAAI,GAAE;IAAoM,CAAA;GACxQ,CAAA;GACL,UAAU;EACd;EACA;GACI,IAAI,EAAQ;GACZ,OAAO,EAAQ;GACf,MAAM,kBAAC,OAAD;IAAK,OAAM;IAA6B,WAAU;IAAU,MAAK;IAAO,SAAQ;IAAY,QAAO;IACrG,UAAA,kBAAC,QAAD;KAAM,eAAc;KAAQ,gBAAe;KAAQ,aAAY;KAAI,GAAE;IAA4D,CAAA;GAChI,CAAA;GACL,UAAU;EACd;EACA;GACI,GAAG;GACH,MAAM,kBAAC,OAAD;IAAK,OAAM;IAA6B,WAAU;IAAU,MAAK;IAAO,SAAQ;IAAY,QAAO;IACrG,UAAA,kBAAC,QAAD;KAAM,eAAc;KAAQ,gBAAe;KAAQ,aAAY;KAAI,GAAE;IAAgC,CAAA;GACpG,CAAA;EACT;CACJ;CAaA,OAXI,KACA,EAAU,KAAK;EACX,IAAI,EAAS;EACb,OAAO,EAAS;EAChB,MAAM,kBAAC,OAAD;GAAK,OAAM;GAA6B,WAAU;GAAU,MAAK;GAAO,SAAQ;GAAY,QAAO;GACrG,UAAA,kBAAC,QAAD;IAAM,eAAc;IAAQ,gBAAe;IAAQ,aAAY;IAAI,GAAE;GAAyQ,CAAA;EAC7U,CAAA;EACL,UAAU;CACd,CAAC,GAGE;AACX"}
@@ -1,17 +1,17 @@
1
- import { visit as s } from "unist-util-visit";
2
- var p = () => (a) => {
3
- s(a, "element", (t) => {
4
- if (t.tagName === "code") {
5
- const r = t.properties?.className;
6
- if (Array.isArray(r) && r.some((e) => typeof e == "string" && e.startsWith("language-"))) {
7
- const e = t.data?.meta || t.properties?.meta || t.properties?.metastring || "";
8
- e && (t.properties || (t.properties = {}), t.properties.dataMeta = e, t.properties["data-meta"] = e);
9
- }
10
- }
11
- });
12
- };
13
- export {
14
- p as rehypeCodeMeta
1
+ import { visit as e } from "unist-util-visit";
2
+ //#region src/utils/rehype-code-meta.ts
3
+ var t = () => (t) => {
4
+ e(t, "element", (e) => {
5
+ if (e.tagName === "code") {
6
+ let t = e.properties?.className;
7
+ if (Array.isArray(t) && t.some((e) => typeof e == "string" && e.startsWith("language-"))) {
8
+ let t = e.data?.meta || e.properties?.meta || e.properties?.metastring || "";
9
+ t && (e.properties ||= {}, e.properties.dataMeta = t, e.properties["data-meta"] = t);
10
+ }
11
+ }
12
+ });
15
13
  };
14
+ //#endregion
15
+ export { t as rehypeCodeMeta };
16
16
 
17
17
  //# sourceMappingURL=rehype-code-meta.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"rehype-code-meta.js","names":[],"sources":["../../src/utils/rehype-code-meta.ts"],"sourcesContent":["import { visit } from 'unist-util-visit';\nimport type { Plugin } from 'unified';\nimport type { Element, Root } from 'hast';\n\n/**\n * Rehype plugin to pass code block metadata to the code element\n * \n * This plugin runs after remark-to-rehype conversion and adds the meta information\n * to the element's properties so it can be accessed in React components\n */\nexport const rehypeCodeMeta: Plugin<[], Root> = () => {\n return (tree: Root) => {\n visit(tree, 'element', (node: Element) => {\n // Find code elements with language class\n if (node.tagName === 'code') {\n const className = node.properties?.className;\n const hasLanguage = Array.isArray(className) &&\n className.some((c: any) => typeof c === 'string' && c.startsWith('language-'));\n\n if (hasLanguage) {\n // Get meta from various sources\n const meta = (node.data as any)?.meta ||\n (node.properties as any)?.meta ||\n (node.properties as any)?.metastring ||\n '';\n\n if (meta) {\n // Add meta to code element's properties\n if (!node.properties) {\n node.properties = {};\n }\n (node.properties as any).dataMeta = meta;\n (node.properties as any)['data-meta'] = meta;\n }\n }\n }\n });\n };\n};\n\n"],"mappings":";AAUA,IAAa,IAAA,MACT,CAAQ,MAAe;AACnB,EAAA,EAAM,GAAM,WAAA,CAAY,MAAkB;AAEtC,QAAI,EAAK,YAAY,QAAQ;AACzB,YAAM,IAAY,EAAK,YAAY;AAInC,UAHoB,MAAM,QAAQ,CAAS,KACvC,EAAU,KAAA,CAAM,MAAW,OAAO,KAAM,YAAY,EAAE,WAAW,WAAW,CAAC,GAEhE;AAEb,cAAM,IAAQ,EAAK,MAAc,QAC5B,EAAK,YAAoB,QACzB,EAAK,YAAoB,cAC1B;AAEJ,QAAI,MAEK,EAAK,eACN,EAAK,aAAa,CAAC,IAEvB,EAAM,WAAmB,WAAW,GACpC,EAAM,WAAmB,WAAA,IAAe;AAAA,MAEhD;AAAA,IACJ;AAAA,EACJ,CAAC;AACL"}
1
+ {"version":3,"file":"rehype-code-meta.js","names":[],"sources":["../../src/utils/rehype-code-meta.ts"],"sourcesContent":["import { visit } from 'unist-util-visit';\nimport type { Plugin } from 'unified';\nimport type { Element, Root } from 'hast';\n\n/**\n * Rehype plugin to pass code block metadata to the code element\n * \n * This plugin runs after remark-to-rehype conversion and adds the meta information\n * to the element's properties so it can be accessed in React components\n */\nexport const rehypeCodeMeta: Plugin<[], Root> = () => {\n return (tree: Root) => {\n visit(tree, 'element', (node: Element) => {\n // Find code elements with language class\n if (node.tagName === 'code') {\n const className = node.properties?.className;\n const hasLanguage = Array.isArray(className) &&\n className.some((c: any) => typeof c === 'string' && c.startsWith('language-'));\n\n if (hasLanguage) {\n // Get meta from various sources\n const meta = (node.data as any)?.meta ||\n (node.properties as any)?.meta ||\n (node.properties as any)?.metastring ||\n '';\n\n if (meta) {\n // Add meta to code element's properties\n if (!node.properties) {\n node.properties = {};\n }\n (node.properties as any).dataMeta = meta;\n (node.properties as any)['data-meta'] = meta;\n }\n }\n }\n });\n };\n};\n\n"],"mappings":";;AAUA,IAAa,WACD,MAAe;CACnB,EAAM,GAAM,YAAY,MAAkB;EAEtC,IAAI,EAAK,YAAY,QAAQ;GACzB,IAAM,IAAY,EAAK,YAAY;GAInC,IAHoB,MAAM,QAAQ,CAAS,KACvC,EAAU,MAAM,MAAW,OAAO,KAAM,YAAY,EAAE,WAAW,WAAW,CAAC,GAEhE;IAEb,IAAM,IAAQ,EAAK,MAAc,QAC5B,EAAK,YAAoB,QACzB,EAAK,YAAoB,cAC1B;IAEJ,AAAI,MAEA,AACI,EAAK,eAAa,CAAC,GAEvB,EAAM,WAAmB,WAAW,GACpC,EAAM,WAAmB,eAAe;GAEhD;EACJ;CACJ,CAAC;AACL"}
@@ -1,12 +1,12 @@
1
- import { visit as i } from "unist-util-visit";
2
- var s = () => (r) => {
3
- i(r, "code", (a) => {
4
- const e = a.lang || "", t = a.meta || "";
5
- a.data || (a.data = {}), a.data.meta = t, a.data.lang = e, t && (a.data.hProperties || (a.data.hProperties = {}), a.data.hProperties.dataMeta = t, a.data.hProperties["data-meta"] = t);
6
- });
7
- };
8
- export {
9
- s as remarkCodeMeta
1
+ import { visit as e } from "unist-util-visit";
2
+ //#region src/utils/remark-code-meta.ts
3
+ var t = () => (t) => {
4
+ e(t, "code", (e) => {
5
+ let t = e.lang || "", n = e.meta || "";
6
+ e.data ||= {}, e.data.meta = n, e.data.lang = t, n && (e.data.hProperties || (e.data.hProperties = {}), e.data.hProperties.dataMeta = n, e.data.hProperties["data-meta"] = n);
7
+ });
10
8
  };
9
+ //#endregion
10
+ export { t as remarkCodeMeta };
11
11
 
12
12
  //# sourceMappingURL=remark-code-meta.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"remark-code-meta.js","names":[],"sources":["../../src/utils/remark-code-meta.ts"],"sourcesContent":["import { visit } from 'unist-util-visit';\nimport type { Plugin } from 'unified';\nimport type { Code } from 'mdast';\nimport type { Root } from 'mdast';\n\n/**\n * Remark plugin to extract code block metadata from the info string\n * \n * Example:\n * ```python showLineNumbers startLineNumber=10 {1,3-5}\n * code here\n * ```\n * \n * This will add the metadata to node.data.meta\n */\nexport const remarkCodeMeta: Plugin<[], Root> = () => {\n return (tree: Root) => {\n visit(tree, 'code', (node: Code) => {\n const lang = node.lang || '';\n const meta = node.meta || '';\n\n // 确保 node.data 存在\n if (!node.data) {\n node.data = {};\n }\n\n // 将 meta 信息存储到 node.data\n (node.data as any).meta = meta;\n (node.data as any).lang = lang;\n\n // 关键:将 meta 存储到 hProperties 中,这样它会被传递到 rehype/HTML\n if (meta) {\n if (!(node.data as any).hProperties) {\n (node.data as any).hProperties = {};\n }\n (node.data as any).hProperties.dataMeta = meta;\n (node.data as any).hProperties['data-meta'] = meta;\n }\n });\n };\n};\n\n"],"mappings":";AAeA,IAAa,IAAA,MACT,CAAQ,MAAe;AACnB,EAAA,EAAM,GAAM,QAAA,CAAS,MAAe;AAChC,UAAM,IAAO,EAAK,QAAQ,IACpB,IAAO,EAAK,QAAQ;AAG1B,IAAK,EAAK,SACN,EAAK,OAAO,CAAC,IAIjB,EAAM,KAAa,OAAO,GAC1B,EAAM,KAAa,OAAO,GAGtB,MACM,EAAK,KAAa,gBACpB,EAAM,KAAa,cAAc,CAAC,IAEtC,EAAM,KAAa,YAAY,WAAW,GAC1C,EAAM,KAAa,YAAY,WAAA,IAAe;AAAA,EAEtD,CAAC;AACL"}
1
+ {"version":3,"file":"remark-code-meta.js","names":[],"sources":["../../src/utils/remark-code-meta.ts"],"sourcesContent":["import { visit } from 'unist-util-visit';\nimport type { Plugin } from 'unified';\nimport type { Code } from 'mdast';\nimport type { Root } from 'mdast';\n\n/**\n * Remark plugin to extract code block metadata from the info string\n * \n * Example:\n * ```python showLineNumbers startLineNumber=10 {1,3-5}\n * code here\n * ```\n * \n * This will add the metadata to node.data.meta\n */\nexport const remarkCodeMeta: Plugin<[], Root> = () => {\n return (tree: Root) => {\n visit(tree, 'code', (node: Code) => {\n const lang = node.lang || '';\n const meta = node.meta || '';\n\n // 确保 node.data 存在\n if (!node.data) {\n node.data = {};\n }\n\n // 将 meta 信息存储到 node.data\n (node.data as any).meta = meta;\n (node.data as any).lang = lang;\n\n // 关键:将 meta 存储到 hProperties 中,这样它会被传递到 rehype/HTML\n if (meta) {\n if (!(node.data as any).hProperties) {\n (node.data as any).hProperties = {};\n }\n (node.data as any).hProperties.dataMeta = meta;\n (node.data as any).hProperties['data-meta'] = meta;\n }\n });\n };\n};\n\n"],"mappings":";;AAeA,IAAa,WACD,MAAe;CACnB,EAAM,GAAM,SAAS,MAAe;EAChC,IAAM,IAAO,EAAK,QAAQ,IACpB,IAAO,EAAK,QAAQ;EAY1B,AATA,AACI,EAAK,SAAO,CAAC,GAIjB,EAAM,KAAa,OAAO,GAC1B,EAAM,KAAa,OAAO,GAGtB,MACM,EAAK,KAAa,gBACpB,EAAM,KAAa,cAAc,CAAC,IAEtC,EAAM,KAAa,YAAY,WAAW,GAC1C,EAAM,KAAa,YAAY,eAAe;CAEtD,CAAC;AACL"}
@@ -1,67 +1,66 @@
1
1
  import "react";
2
- import { jsx as s, jsxs as c } from "react/jsx-runtime";
3
- import { createRootRoute as h, createRoute as m, createRouter as i } from "@tanstack/react-router";
4
- function p(t, o) {
5
- const e = [], n = {
6
- getParentRoute: () => o,
7
- component: t.component
8
- };
9
- t.path ? n.path = t.path : t.id && (n.id = t.id);
10
- const r = m(n);
11
- return e.push(r), t.children && t.children.length > 0 && t.children.forEach((u) => {
12
- const d = p(u, r);
13
- e.push(...d);
14
- }), e;
2
+ import { jsx as e, jsxs as t } from "react/jsx-runtime";
3
+ import { createRootRoute as n, createRoute as r, createRouter as i } from "@tanstack/react-router";
4
+ //#region src/utils/routerBuilder.tsx
5
+ function a(e, t) {
6
+ let n = [], i = {
7
+ getParentRoute: () => t,
8
+ component: e.component
9
+ };
10
+ e.path ? i.path = e.path : e.id && (i.id = e.id);
11
+ let o = r(i);
12
+ return n.push(o), e.children && e.children.length > 0 && e.children.forEach((e) => {
13
+ let t = a(e, o);
14
+ n.push(...t);
15
+ }), n;
15
16
  }
16
- function l(t) {
17
- const o = h({
18
- component: t.rootComponent,
19
- notFoundComponent: t.notFoundComponent ?? a
20
- }), e = [];
21
- t.routes.forEach((r) => {
22
- const u = p(r, o);
23
- e.push(...u);
24
- });
25
- const n = o.addChildren(e);
26
- return i({
27
- routeTree: n,
28
- basepath: t.basepath,
29
- defaultNotFoundComponent: t.notFoundComponent ?? a
30
- });
17
+ function o(e) {
18
+ let t = n({
19
+ component: e.rootComponent,
20
+ notFoundComponent: e.notFoundComponent ?? s
21
+ }), r = [];
22
+ e.routes.forEach((e) => {
23
+ let n = a(e, t);
24
+ r.push(...n);
25
+ });
26
+ let o = t.addChildren(r);
27
+ return i({
28
+ routeTree: o,
29
+ basepath: e.basepath,
30
+ defaultNotFoundComponent: e.notFoundComponent ?? s
31
+ });
31
32
  }
32
- function a() {
33
- return /* @__PURE__ */ c("div", {
34
- style: {
35
- textAlign: "center",
36
- padding: "4rem 1rem"
37
- },
38
- children: [/* @__PURE__ */ s("h1", {
39
- style: {
40
- fontSize: "3rem",
41
- fontWeight: 700,
42
- margin: 0
43
- },
44
- children: "404"
45
- }), /* @__PURE__ */ s("p", {
46
- style: {
47
- color: "#666",
48
- marginTop: "0.5rem"
49
- },
50
- children: "Page not found"
51
- })]
52
- });
33
+ function s() {
34
+ return /* @__PURE__ */ t("div", {
35
+ style: {
36
+ textAlign: "center",
37
+ padding: "4rem 1rem"
38
+ },
39
+ children: [/* @__PURE__ */ e("h1", {
40
+ style: {
41
+ fontSize: "3rem",
42
+ fontWeight: 700,
43
+ margin: 0
44
+ },
45
+ children: "404"
46
+ }), /* @__PURE__ */ e("p", {
47
+ style: {
48
+ color: "#666",
49
+ marginTop: "0.5rem"
50
+ },
51
+ children: "Page not found"
52
+ })]
53
+ });
53
54
  }
54
- function b(t, o, e) {
55
- return l({
56
- routes: t,
57
- rootComponent: o,
58
- basepath: e?.basepath,
59
- notFoundComponent: e?.notFoundComponent
60
- });
55
+ function c(e, t, n) {
56
+ return o({
57
+ routes: e,
58
+ rootComponent: t,
59
+ basepath: n?.basepath,
60
+ notFoundComponent: n?.notFoundComponent
61
+ });
61
62
  }
62
- export {
63
- l as buildRouter,
64
- b as createRouterFromConfig
65
- };
63
+ //#endregion
64
+ export { o as buildRouter, c as createRouterFromConfig };
66
65
 
67
66
  //# sourceMappingURL=routerBuilder.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"routerBuilder.js","names":[],"sources":["../../src/utils/routerBuilder.tsx"],"sourcesContent":["import React from 'react';\nimport {\n createRouter,\n createRootRoute,\n createRoute,\n RootRoute,\n AnyRoute,\n RouteComponent,\n} from '@tanstack/react-router';\n\n/**\n * 路由配置接口\n */\nexport interface RouteConfig {\n /** 路由路径(与 id 二选一,优先使用 path) */\n path?: string;\n /** 路由组件 */\n component?: RouteComponent;\n /** 子路由配置 */\n children?: RouteConfig[];\n /** 路由 ID(仅用于无路径的布局路由,不能与 path 同时使用) */\n id?: string;\n}\n\n/**\n * 路由构建器配置\n */\nexport interface RouterBuilderConfig {\n /** 路由配置数组 */\n routes: RouteConfig[];\n /** 根路由组件,默认使用 AppLayoutWrapper */\n rootComponent?: RouteComponent;\n /** 路由基础路径,部署在子路径时使用(如 '/dish-ui') */\n basepath?: string;\n /** 自定义 404 组件 */\n notFoundComponent?: RouteComponent;\n}\n\n/**\n * 递归创建路由树\n * @param config 路由配置\n * @param parentRoute 父路由\n * @returns 创建的路由数组\n */\nfunction createRoutesRecursive(\n config: RouteConfig,\n parentRoute: RootRoute | AnyRoute\n): AnyRoute[] {\n const routes: AnyRoute[] = [];\n\n // 创建当前路由\n // 注意:TanStack Router 不允许同时设置 id 和 path\n // id 只用于无路径的布局路由\n const routeOptions: any = {\n getParentRoute: () => parentRoute,\n component: config.component,\n };\n\n // 如果有 path,使用 path;否则使用 id(用于布局路由)\n if (config.path) {\n routeOptions.path = config.path;\n } else if (config.id) {\n routeOptions.id = config.id;\n }\n\n const currentRoute = createRoute(routeOptions);\n\n routes.push(currentRoute);\n\n // 递归创建子路由\n if (config.children && config.children.length > 0) {\n config.children.forEach((childConfig) => {\n const childRoutes = createRoutesRecursive(childConfig, currentRoute);\n routes.push(...childRoutes);\n });\n }\n\n return routes;\n}\n\n/**\n * 构建路由器\n * @param config 路由构建器配置\n * @returns TanStack Router 实例\n */\nexport function buildRouter(config: RouterBuilderConfig) {\n const rootRoute = createRootRoute({\n component: config.rootComponent,\n notFoundComponent: config.notFoundComponent ?? DefaultNotFound,\n });\n\n const allRoutes: AnyRoute[] = [];\n\n config.routes.forEach((routeConfig) => {\n const routes = createRoutesRecursive(routeConfig, rootRoute);\n allRoutes.push(...routes);\n });\n\n const routeTree = rootRoute.addChildren(allRoutes);\n\n const router = createRouter({\n routeTree,\n basepath: config.basepath,\n defaultNotFoundComponent: config.notFoundComponent ?? DefaultNotFound,\n });\n\n return router;\n}\n\nfunction DefaultNotFound() {\n return (\n <div style={{ textAlign: 'center', padding: '4rem 1rem' }}>\n <h1 style={{ fontSize: '3rem', fontWeight: 700, margin: 0 }}>404</h1>\n <p style={{ color: '#666', marginTop: '0.5rem' }}>Page not found</p>\n </div>\n );\n}\n\n/**\n * 从扁平路由配置创建路由器(简化版)\n * @param routes 路由配置数组\n * @param rootComponent 根路由组件\n * @returns TanStack Router 实例\n */\nexport function createRouterFromConfig(\n routes: RouteConfig[],\n rootComponent?: RouteComponent,\n options?: { basepath?: string; notFoundComponent?: RouteComponent }\n) {\n return buildRouter({\n routes,\n rootComponent,\n basepath: options?.basepath,\n notFoundComponent: options?.notFoundComponent,\n });\n}\n\n"],"mappings":";;;AA4CA,SAAS,EACL,GACA,GACU;AACV,QAAM,IAAqB,CAAC,GAKtB,IAAoB;AAAA,IACtB,gBAAA,MAAsB;AAAA,IACtB,WAAW,EAAO;AAAA,EACtB;AAGA,EAAI,EAAO,OACP,EAAa,OAAO,EAAO,OACpB,EAAO,OACd,EAAa,KAAK,EAAO;AAG7B,QAAM,IAAe,EAAY,CAAY;AAE7C,SAAA,EAAO,KAAK,CAAY,GAGpB,EAAO,YAAY,EAAO,SAAS,SAAS,KAC5C,EAAO,SAAS,QAAA,CAAS,MAAgB;AACrC,UAAM,IAAc,EAAsB,GAAa,CAAY;AACnE,IAAA,EAAO,KAAK,GAAG,CAAW;AAAA,EAC9B,CAAC,GAGE;AACX;AAOA,SAAgB,EAAY,GAA6B;AACrD,QAAM,IAAY,EAAgB;AAAA,IAC9B,WAAW,EAAO;AAAA,IAClB,mBAAmB,EAAO,qBAAqB;AAAA,EACnD,CAAC,GAEK,IAAwB,CAAC;AAE/B,EAAA,EAAO,OAAO,QAAA,CAAS,MAAgB;AACnC,UAAM,IAAS,EAAsB,GAAa,CAAS;AAC3D,IAAA,EAAU,KAAK,GAAG,CAAM;AAAA,EAC5B,CAAC;AAED,QAAM,IAAY,EAAU,YAAY,CAAS;AAQjD,SANe,EAAa;AAAA,IACxB,WAAA;AAAA,IACA,UAAU,EAAO;AAAA,IACjB,0BAA0B,EAAO,qBAAqB;AAAA,EAC1D,CAEO;AACX;AAEA,SAAS,IAAkB;AACvB,SACI,gBAAA,EAAC,OAAD;AAAA,IAAK,OAAO;AAAA,MAAE,WAAW;AAAA,MAAU,SAAS;AAAA,IAAY;AAAA,IAAxD,UAAA,CACI,gBAAA,EAAC,MAAD;AAAA,MAAI,OAAO;AAAA,QAAE,UAAU;AAAA,QAAQ,YAAY;AAAA,QAAK,QAAQ;AAAA,MAAE;AAAA,MAAG,UAAA;AAAA,IAAO,CAAA,GACpE,gBAAA,EAAC,KAAD;AAAA,MAAG,OAAO;AAAA,QAAE,OAAO;AAAA,QAAQ,WAAW;AAAA,MAAS;AAAA,MAAG,UAAA;AAAA,IAAiB,CAAA,CAClE;AAAA;AAEb;AAQA,SAAgB,EACZ,GACA,GACA,GACF;AACE,SAAO,EAAY;AAAA,IACf,QAAA;AAAA,IACA,eAAA;AAAA,IACA,UAAU,GAAS;AAAA,IACnB,mBAAmB,GAAS;AAAA,EAChC,CAAC;AACL"}
1
+ {"version":3,"file":"routerBuilder.js","names":[],"sources":["../../src/utils/routerBuilder.tsx"],"sourcesContent":["import React from 'react';\nimport {\n createRouter,\n createRootRoute,\n createRoute,\n RootRoute,\n AnyRoute,\n RouteComponent,\n} from '@tanstack/react-router';\n\n/**\n * 路由配置接口\n */\nexport interface RouteConfig {\n /** 路由路径(与 id 二选一,优先使用 path) */\n path?: string;\n /** 路由组件 */\n component?: RouteComponent;\n /** 子路由配置 */\n children?: RouteConfig[];\n /** 路由 ID(仅用于无路径的布局路由,不能与 path 同时使用) */\n id?: string;\n}\n\n/**\n * 路由构建器配置\n */\nexport interface RouterBuilderConfig {\n /** 路由配置数组 */\n routes: RouteConfig[];\n /** 根路由组件,默认使用 AppLayoutWrapper */\n rootComponent?: RouteComponent;\n /** 路由基础路径,部署在子路径时使用(如 '/dish-ui') */\n basepath?: string;\n /** 自定义 404 组件 */\n notFoundComponent?: RouteComponent;\n}\n\n/**\n * 递归创建路由树\n * @param config 路由配置\n * @param parentRoute 父路由\n * @returns 创建的路由数组\n */\nfunction createRoutesRecursive(\n config: RouteConfig,\n parentRoute: RootRoute | AnyRoute\n): AnyRoute[] {\n const routes: AnyRoute[] = [];\n\n // 创建当前路由\n // 注意:TanStack Router 不允许同时设置 id 和 path\n // id 只用于无路径的布局路由\n const routeOptions: any = {\n getParentRoute: () => parentRoute,\n component: config.component,\n };\n\n // 如果有 path,使用 path;否则使用 id(用于布局路由)\n if (config.path) {\n routeOptions.path = config.path;\n } else if (config.id) {\n routeOptions.id = config.id;\n }\n\n const currentRoute = createRoute(routeOptions);\n\n routes.push(currentRoute);\n\n // 递归创建子路由\n if (config.children && config.children.length > 0) {\n config.children.forEach((childConfig) => {\n const childRoutes = createRoutesRecursive(childConfig, currentRoute);\n routes.push(...childRoutes);\n });\n }\n\n return routes;\n}\n\n/**\n * 构建路由器\n * @param config 路由构建器配置\n * @returns TanStack Router 实例\n */\nexport function buildRouter(config: RouterBuilderConfig) {\n const rootRoute = createRootRoute({\n component: config.rootComponent,\n notFoundComponent: config.notFoundComponent ?? DefaultNotFound,\n });\n\n const allRoutes: AnyRoute[] = [];\n\n config.routes.forEach((routeConfig) => {\n const routes = createRoutesRecursive(routeConfig, rootRoute);\n allRoutes.push(...routes);\n });\n\n const routeTree = rootRoute.addChildren(allRoutes);\n\n const router = createRouter({\n routeTree,\n basepath: config.basepath,\n defaultNotFoundComponent: config.notFoundComponent ?? DefaultNotFound,\n });\n\n return router;\n}\n\nfunction DefaultNotFound() {\n return (\n <div style={{ textAlign: 'center', padding: '4rem 1rem' }}>\n <h1 style={{ fontSize: '3rem', fontWeight: 700, margin: 0 }}>404</h1>\n <p style={{ color: '#666', marginTop: '0.5rem' }}>Page not found</p>\n </div>\n );\n}\n\n/**\n * 从扁平路由配置创建路由器(简化版)\n * @param routes 路由配置数组\n * @param rootComponent 根路由组件\n * @returns TanStack Router 实例\n */\nexport function createRouterFromConfig(\n routes: RouteConfig[],\n rootComponent?: RouteComponent,\n options?: { basepath?: string; notFoundComponent?: RouteComponent }\n) {\n return buildRouter({\n routes,\n rootComponent,\n basepath: options?.basepath,\n notFoundComponent: options?.notFoundComponent,\n });\n}\n\n"],"mappings":";;;;AA4CA,SAAS,EACL,GACA,GACU;CACV,IAAM,IAAqB,CAAC,GAKtB,IAAoB;EACtB,sBAAsB;EACtB,WAAW,EAAO;CACtB;CAGA,AAAI,EAAO,OACP,EAAa,OAAO,EAAO,OACpB,EAAO,OACd,EAAa,KAAK,EAAO;CAG7B,IAAM,IAAe,EAAY,CAAY;CAY7C,OAVA,EAAO,KAAK,CAAY,GAGpB,EAAO,YAAY,EAAO,SAAS,SAAS,KAC5C,EAAO,SAAS,SAAS,MAAgB;EACrC,IAAM,IAAc,EAAsB,GAAa,CAAY;EACnE,EAAO,KAAK,GAAG,CAAW;CAC9B,CAAC,GAGE;AACX;AAOA,SAAgB,EAAY,GAA6B;CACrD,IAAM,IAAY,EAAgB;EAC9B,WAAW,EAAO;EAClB,mBAAmB,EAAO,qBAAqB;CACnD,CAAC,GAEK,IAAwB,CAAC;CAE/B,EAAO,OAAO,SAAS,MAAgB;EACnC,IAAM,IAAS,EAAsB,GAAa,CAAS;EAC3D,EAAU,KAAK,GAAG,CAAM;CAC5B,CAAC;CAED,IAAM,IAAY,EAAU,YAAY,CAAS;CAQjD,OANe,EAAa;EACxB;EACA,UAAU,EAAO;EACjB,0BAA0B,EAAO,qBAAqB;CAC1D,CAEO;AACX;AAEA,SAAS,IAAkB;CACvB,OACI,kBAAC,OAAD;EAAK,OAAO;GAAE,WAAW;GAAU,SAAS;EAAY;EAAxD,UAAA,CACI,kBAAC,MAAD;GAAI,OAAO;IAAE,UAAU;IAAQ,YAAY;IAAK,QAAQ;GAAE;GAAG,UAAA;EAAO,CAAA,GACpE,kBAAC,KAAD;GAAG,OAAO;IAAE,OAAO;IAAQ,WAAW;GAAS;GAAG,UAAA;EAAiB,CAAA,CAClE;;AAEb;AAQA,SAAgB,EACZ,GACA,GACA,GACF;CACE,OAAO,EAAY;EACf;EACA;EACA,UAAU,GAAS;EACnB,mBAAmB,GAAS;CAChC,CAAC;AACL"}