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,61 +1,48 @@
1
+ import { cn as e } from "../../utils/cn.js";
1
2
  import "react";
2
- import { jsx as r } from "react/jsx-runtime";
3
- var m = ({ children: s, className: o = "", onClick: a, onMouseEnter: l, onMouseLeave: t }) => {
4
- const i = ["list", o].filter(Boolean).join(" ");
5
- return /* @__PURE__ */ r("ul", {
6
- className: i,
7
- onClick: a,
8
- onMouseEnter: l,
9
- onMouseLeave: t,
10
- children: s
11
- });
12
- }, w = ({ children: s, className: o = "", selected: a = !1, onClick: l, onDoubleClick: t, onMouseEnter: i, onMouseLeave: n, onContextMenu: c }) => {
13
- const p = [
14
- "list-row",
15
- a ? "bg-base-200" : "",
16
- o
17
- ].filter(Boolean).join(" ");
18
- return /* @__PURE__ */ r("li", {
19
- className: p,
20
- onClick: l,
21
- onDoubleClick: t,
22
- onMouseEnter: i,
23
- onMouseLeave: n,
24
- onContextMenu: c,
25
- children: s
26
- });
27
- }, C = ({ children: s, className: o = "" }) => {
28
- const a = ["list-col-wrap", o].filter(Boolean).join(" ");
29
- return /* @__PURE__ */ r("div", {
30
- className: a,
31
- children: s
32
- });
33
- }, f = ({ children: s, className: o = "" }) => {
34
- const a = ["list-col-grow", o].filter(Boolean).join(" ");
35
- return /* @__PURE__ */ r("div", {
36
- className: a,
37
- children: s
38
- });
39
- }, d = ({ children: s, className: o = "" }) => {
40
- const a = [
41
- "p-4",
42
- "pb-2",
43
- "text-xs",
44
- "opacity-60",
45
- "tracking-wide",
46
- o
47
- ].filter(Boolean).join(" ");
48
- return /* @__PURE__ */ r("li", {
49
- className: a,
50
- children: s
51
- });
52
- }, e = m;
53
- e.Row = w;
54
- e.ColWrap = C;
55
- e.ColGrow = f;
56
- e.Header = d;
57
- export {
58
- e as default
59
- };
3
+ import { jsx as t } from "react/jsx-runtime";
4
+ //#region src/components/List/index.tsx
5
+ var n = ({ children: n, className: r = "", onClick: i, onMouseEnter: a, onMouseLeave: o }) => {
6
+ let s = e("list", r);
7
+ return /* @__PURE__ */ t("ul", {
8
+ className: s,
9
+ onClick: i,
10
+ onMouseEnter: a,
11
+ onMouseLeave: o,
12
+ children: n
13
+ });
14
+ }, r = ({ children: n, className: r = "", selected: i = !1, onClick: a, onDoubleClick: o, onMouseEnter: s, onMouseLeave: c, onContextMenu: l }) => {
15
+ let u = e("list-row", i && "bg-base-200", r);
16
+ return /* @__PURE__ */ t("li", {
17
+ className: u,
18
+ onClick: a,
19
+ onDoubleClick: o,
20
+ onMouseEnter: s,
21
+ onMouseLeave: c,
22
+ onContextMenu: l,
23
+ children: n
24
+ });
25
+ }, i = ({ children: n, className: r = "" }) => {
26
+ let i = e("list-col-wrap", r);
27
+ return /* @__PURE__ */ t("div", {
28
+ className: i,
29
+ children: n
30
+ });
31
+ }, a = ({ children: n, className: r = "" }) => {
32
+ let i = e("list-col-grow", r);
33
+ return /* @__PURE__ */ t("div", {
34
+ className: i,
35
+ children: n
36
+ });
37
+ }, o = ({ children: n, className: r = "" }) => {
38
+ let i = e("p-4", "pb-2", "text-xs", "opacity-60", "tracking-wide", r);
39
+ return /* @__PURE__ */ t("li", {
40
+ className: i,
41
+ children: n
42
+ });
43
+ }, s = n;
44
+ s.Row = r, s.ColWrap = i, s.ColGrow = a, s.Header = o;
45
+ //#endregion
46
+ export { s as default };
60
47
 
61
48
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../../src/components/List/index.tsx"],"sourcesContent":["import React, { ReactElement } from 'react';\n\nexport type ListProps = {\n children: React.ReactNode;\n className?: string;\n onClick?: (e: React.MouseEvent) => void;\n onMouseEnter?: (e: React.MouseEvent) => void;\n onMouseLeave?: (e: React.MouseEvent) => void;\n};\n\nconst List = ({\n children,\n className = '',\n onClick,\n onMouseEnter,\n onMouseLeave,\n}: ListProps) => {\n const baseClass = 'list';\n \n const listClasses = [\n baseClass,\n className\n ].filter(Boolean).join(' ');\n\n return (\n <ul \n className={listClasses}\n onClick={onClick}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n >\n {children}\n </ul>\n );\n};\n\n// List.Row 组件\nexport type ListRowProps = {\n children: React.ReactNode;\n className?: string;\n selected?: boolean;\n onClick?: (e: React.MouseEvent) => void;\n onDoubleClick?: (e: React.MouseEvent) => void;\n onMouseEnter?: (e: React.MouseEvent) => void;\n onMouseLeave?: (e: React.MouseEvent) => void;\n onContextMenu?: (e: React.MouseEvent) => void;\n};\n\nconst ListRow = ({\n children,\n className = '',\n selected = false,\n onClick,\n onDoubleClick,\n onMouseEnter,\n onMouseLeave,\n onContextMenu,\n}: ListRowProps) => {\n const baseClass = 'list-row';\n \n const rowClasses = [\n baseClass,\n selected ? 'bg-base-200' : '',\n className\n ].filter(Boolean).join(' ');\n\n return (\n <li \n className={rowClasses}\n onClick={onClick}\n onDoubleClick={onDoubleClick}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n onContextMenu={onContextMenu}\n >\n {children}\n </li>\n );\n};\n\n// List.ColWrap 组件\nexport type ListColWrapProps = {\n children: React.ReactNode;\n className?: string;\n};\n\nconst ListColWrap = ({\n children,\n className = '',\n}: ListColWrapProps) => {\n const baseClass = 'list-col-wrap';\n \n const colWrapClasses = [\n baseClass,\n className\n ].filter(Boolean).join(' ');\n\n return (\n <div className={colWrapClasses}>\n {children}\n </div>\n );\n};\n\n// List.ColGrow 组件\nexport type ListColGrowProps = {\n children: React.ReactNode;\n className?: string;\n};\n\nconst ListColGrow = ({\n children,\n className = '',\n}: ListColGrowProps) => {\n const baseClass = 'list-col-grow';\n \n const colGrowClasses = [\n baseClass,\n className\n ].filter(Boolean).join(' ');\n\n return (\n <div className={colGrowClasses}>\n {children}\n </div>\n );\n};\n\n// List.Header 组件\nexport type ListHeaderProps = {\n children: React.ReactNode;\n className?: string;\n};\n\nconst ListHeader = ({\n children,\n className = '',\n}: ListHeaderProps) => {\n const headerClasses = [\n 'p-4',\n 'pb-2',\n 'text-xs',\n 'opacity-60',\n 'tracking-wide',\n className\n ].filter(Boolean).join(' ');\n\n return (\n <li className={headerClasses}>\n {children}\n </li>\n );\n};\n\n// 扩展List组件,添加Row、ColWrap和ColGrow子组件\ninterface ListCompound extends React.FC<ListProps> {\n Row: React.FC<ListRowProps>;\n ColWrap: React.FC<ListColWrapProps>;\n ColGrow: React.FC<ListColGrowProps>;\n Header: React.FC<ListHeaderProps>;\n}\n\nconst ListWithCompounds = List as ListCompound;\nListWithCompounds.Row = ListRow;\nListWithCompounds.ColWrap = ListColWrap;\nListWithCompounds.ColGrow = ListColGrow;\nListWithCompounds.Header = ListHeader;\n\nexport default ListWithCompounds; "],"mappings":";;AAUA,IAAM,IAAA,CAAQ,EACZ,UAAA,GACA,WAAA,IAAY,IACZ,SAAA,GACA,cAAA,GACA,cAAA,EAAA,MACe;AAGf,QAAM,IAAc,CAClB,QACA,CACF,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG;AAE1B,SACE,gBAAA,EAAC,MAAD;AAAA,IACE,WAAW;AAAA,IACF,SAAA;AAAA,IACK,cAAA;AAAA,IACA,cAAA;AAAA,IAEb,UAAA;AAAA,EACC,CAAA;AAER,GAcM,IAAA,CAAW,EACf,UAAA,GACA,WAAA,IAAY,IACZ,UAAA,IAAW,IACX,SAAA,GACA,eAAA,GACA,cAAA,GACA,cAAA,GACA,eAAA,EAAA,MACkB;AAGlB,QAAM,IAAa;AAAA,IACjB;AAAA,IACA,IAAW,gBAAgB;AAAA,IAC3B;AAAA,EACF,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG;AAE1B,SACE,gBAAA,EAAC,MAAD;AAAA,IACE,WAAW;AAAA,IACF,SAAA;AAAA,IACM,eAAA;AAAA,IACD,cAAA;AAAA,IACA,cAAA;AAAA,IACC,eAAA;AAAA,IAEd,UAAA;AAAA,EACC,CAAA;AAER,GAQM,IAAA,CAAe,EACnB,UAAA,GACA,WAAA,IAAY,GAAA,MACU;AAGtB,QAAM,IAAiB,CACrB,iBACA,CACF,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG;AAE1B,SACE,gBAAA,EAAC,OAAD;AAAA,IAAK,WAAW;AAAA,IACb,UAAA;AAAA,EACE,CAAA;AAET,GAQM,IAAA,CAAe,EACnB,UAAA,GACA,WAAA,IAAY,GAAA,MACU;AAGtB,QAAM,IAAiB,CACrB,iBACA,CACF,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG;AAE1B,SACE,gBAAA,EAAC,OAAD;AAAA,IAAK,WAAW;AAAA,IACb,UAAA;AAAA,EACE,CAAA;AAET,GAQM,IAAA,CAAc,EAClB,UAAA,GACA,WAAA,IAAY,GAAA,MACS;AACrB,QAAM,IAAgB;AAAA,IACpB;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACF,EAAE,OAAO,OAAO,EAAE,KAAK,GAAG;AAE1B,SACE,gBAAA,EAAC,MAAD;AAAA,IAAI,WAAW;AAAA,IACZ,UAAA;AAAA,EACC,CAAA;AAER,GAUM,IAAoB;AAC1B,EAAkB,MAAM;AACxB,EAAkB,UAAU;AAC5B,EAAkB,UAAU;AAC5B,EAAkB,SAAS"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../src/components/List/index.tsx"],"sourcesContent":["import React from 'react';\nimport { cn } from '../../utils/cn';\n\nexport type ListProps = {\n children: React.ReactNode;\n className?: string;\n onClick?: (e: React.MouseEvent) => void;\n onMouseEnter?: (e: React.MouseEvent) => void;\n onMouseLeave?: (e: React.MouseEvent) => void;\n};\n\nconst List = ({\n children,\n className = '',\n onClick,\n onMouseEnter,\n onMouseLeave,\n}: ListProps) => {\n const baseClass = 'list';\n \n const listClasses = cn(baseClass, className);\n\n return (\n <ul \n className={listClasses}\n onClick={onClick}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n >\n {children}\n </ul>\n );\n};\n\n// List.Row 组件\nexport type ListRowProps = {\n children: React.ReactNode;\n className?: string;\n selected?: boolean;\n onClick?: (e: React.MouseEvent) => void;\n onDoubleClick?: (e: React.MouseEvent) => void;\n onMouseEnter?: (e: React.MouseEvent) => void;\n onMouseLeave?: (e: React.MouseEvent) => void;\n onContextMenu?: (e: React.MouseEvent) => void;\n};\n\nconst ListRow = ({\n children,\n className = '',\n selected = false,\n onClick,\n onDoubleClick,\n onMouseEnter,\n onMouseLeave,\n onContextMenu,\n}: ListRowProps) => {\n const baseClass = 'list-row';\n \n const rowClasses = cn(baseClass, selected && 'bg-base-200', className);\n\n return (\n <li \n className={rowClasses}\n onClick={onClick}\n onDoubleClick={onDoubleClick}\n onMouseEnter={onMouseEnter}\n onMouseLeave={onMouseLeave}\n onContextMenu={onContextMenu}\n >\n {children}\n </li>\n );\n};\n\n// List.ColWrap 组件\nexport type ListColWrapProps = {\n children: React.ReactNode;\n className?: string;\n};\n\nconst ListColWrap = ({\n children,\n className = '',\n}: ListColWrapProps) => {\n const baseClass = 'list-col-wrap';\n \n const colWrapClasses = cn(baseClass, className);\n\n return (\n <div className={colWrapClasses}>\n {children}\n </div>\n );\n};\n\n// List.ColGrow 组件\nexport type ListColGrowProps = {\n children: React.ReactNode;\n className?: string;\n};\n\nconst ListColGrow = ({\n children,\n className = '',\n}: ListColGrowProps) => {\n const baseClass = 'list-col-grow';\n \n const colGrowClasses = cn(baseClass, className);\n\n return (\n <div className={colGrowClasses}>\n {children}\n </div>\n );\n};\n\n// List.Header 组件\nexport type ListHeaderProps = {\n children: React.ReactNode;\n className?: string;\n};\n\nconst ListHeader = ({\n children,\n className = '',\n}: ListHeaderProps) => {\n const headerClasses = cn(\n 'p-4',\n 'pb-2',\n 'text-xs',\n 'opacity-60',\n 'tracking-wide',\n className\n );\n\n return (\n <li className={headerClasses}>\n {children}\n </li>\n );\n};\n\n// 扩展List组件,添加Row、ColWrap和ColGrow子组件\ninterface ListCompound extends React.FC<ListProps> {\n Row: React.FC<ListRowProps>;\n ColWrap: React.FC<ListColWrapProps>;\n ColGrow: React.FC<ListColGrowProps>;\n Header: React.FC<ListHeaderProps>;\n}\n\nconst ListWithCompounds = List as ListCompound;\nListWithCompounds.Row = ListRow;\nListWithCompounds.ColWrap = ListColWrap;\nListWithCompounds.ColGrow = ListColGrow;\nListWithCompounds.Header = ListHeader;\n\nexport default ListWithCompounds; "],"mappings":";;;;AAWA,IAAM,KAAQ,EACZ,aACA,eAAY,IACZ,YACA,iBACA,sBACe;CAGf,IAAM,IAAc,EAAG,QAAW,CAAS;CAE3C,OACE,kBAAC,MAAD;EACE,WAAW;EACF;EACK;EACA;EAEb;CACC,CAAA;AAER,GAcM,KAAW,EACf,aACA,eAAY,IACZ,cAAW,IACX,YACA,kBACA,iBACA,iBACA,uBACkB;CAGlB,IAAM,IAAa,EAAG,YAAW,KAAY,eAAe,CAAS;CAErE,OACE,kBAAC,MAAD;EACE,WAAW;EACF;EACM;EACD;EACA;EACC;EAEd;CACC,CAAA;AAER,GAQM,KAAe,EACnB,aACA,eAAY,SACU;CAGtB,IAAM,IAAiB,EAAG,iBAAW,CAAS;CAE9C,OACE,kBAAC,OAAD;EAAK,WAAW;EACb;CACE,CAAA;AAET,GAQM,KAAe,EACnB,aACA,eAAY,SACU;CAGtB,IAAM,IAAiB,EAAG,iBAAW,CAAS;CAE9C,OACE,kBAAC,OAAD;EAAK,WAAW;EACb;CACE,CAAA;AAET,GAQM,KAAc,EAClB,aACA,eAAY,SACS;CACrB,IAAM,IAAgB,EACpB,OACA,QACA,WACA,cACA,iBACA,CACF;CAEA,OACE,kBAAC,MAAD;EAAI,WAAW;EACZ;CACC,CAAA;AAER,GAUM,IAAoB;AAC1B,EAAkB,MAAM,GACxB,EAAkB,UAAU,GAC5B,EAAkB,UAAU,GAC5B,EAAkB,SAAS"}
@@ -1,111 +1,110 @@
1
- import { remarkCodeMeta as J } from "../../utils/remark-code-meta.js";
2
- import { rehypeCodeMeta as O } from "../../utils/rehype-code-meta.js";
3
- import Q from "../pro/ArticleControl/ArticleControl2.js";
4
- import U from "../pro/ArticleContextMenu/index.js";
5
- import { useMarkdownSource as V } from "./useMarkdownSource.js";
6
- import { useMermaidRenderer as X } from "./useMermaidRenderer.js";
7
- import { useMarkmapRenderer as Y } from "./useMarkmapRenderer.js";
8
- import { getCodeStyle as Z } from "./codeThemes.js";
9
- import { createMarkdownComponents as _ } from "./markdownComponents.js";
10
- import { useMemo as o, useRef as d } from "react";
11
- import { Fragment as C, jsx as r, jsxs as n } from "react/jsx-runtime";
12
- import T from "react-markdown";
13
- import K from "remark-gfm";
14
- import b from "remark-emoji";
15
- import rr from "rehype-katex";
16
- import er from "rehype-raw";
17
- import tr from "rehype-slug";
18
- import or from "remark-math";
1
+ import { remarkCodeMeta as e } from "../../utils/remark-code-meta.js";
2
+ import { rehypeCodeMeta as t } from "../../utils/rehype-code-meta.js";
3
+ import n from "../pro/ArticleControl/ArticleControl2.js";
4
+ import r from "../pro/ArticleContextMenu/index.js";
5
+ import { useMarkdownSource as ee } from "./useMarkdownSource.js";
6
+ import { useMermaidRenderer as i } from "./useMermaidRenderer.js";
7
+ import { useMarkmapRenderer as a } from "./useMarkmapRenderer.js";
8
+ import { getCodeStyle as o } from "./codeThemes.js";
9
+ import { createMarkdownComponents as s } from "./markdownComponents.js";
10
+ import { useMemo as c, useRef as l } from "react";
11
+ import { Fragment as u, jsx as d, jsxs as f } from "react/jsx-runtime";
12
+ import p from "react-markdown";
13
+ import m from "remark-gfm";
14
+ import h from "remark-emoji";
15
+ import g from "rehype-katex";
16
+ import _ from "rehype-raw";
17
+ import v from "rehype-slug";
18
+ import y from "remark-math";
19
19
  import "katex/dist/katex.min.css";
20
- var Mr = ({ source: M = "text", content: N, showLoading: j = !0, loadingText: S = "Loading...", showError: $ = !0, errorRenderer: f, codeTheme: u = "vscDarkPlus", showLineNumbers: h = !1, enableGfm: g = !0, enableEmoji: k = !0, enableKatex: t = !0, enableMermaid: i = !0, enableMarkmap: s = !0, enableMdx: w = !0, enableSlug: v = !0, slugPrefix: x = "", showArticleControl: A = !1, articleControlProps: I, showContextMenu: L = !1, contextMenuItems: R = [], containerId: P, className: m = "", s3Config: z, onLoad: B, onError: D }) => {
21
- const a = d(null), l = d(null), F = d(`markdown-${Math.random().toString(36).substr(2, 9)}`), { markdown: c, loading: W, error: p } = V(M, N, z, B, D);
22
- X(a, c, i), Y(a, c, s);
23
- const q = o(() => {
24
- const e = [J];
25
- return g && e.push(K), k && e.push(b), t && e.push(or), e;
26
- }, [
27
- g,
28
- k,
29
- t
30
- ]), E = o(() => {
31
- const e = [O];
32
- return v && e.push([tr, { prefix: x }]), w && e.push(er), t && e.push(rr), e;
33
- }, [
34
- v,
35
- x,
36
- w,
37
- t
38
- ]), y = o(() => Z(u), [u]), G = o(() => _({
39
- enableMermaid: i,
40
- enableMarkmap: s,
41
- showLineNumbers: h,
42
- codeStyle: y
43
- }), [
44
- i,
45
- s,
46
- h,
47
- y
48
- ]);
49
- if (W && j) return /* @__PURE__ */ r("div", {
50
- className: `flex items-center justify-center p-8 ${m}`,
51
- children: /* @__PURE__ */ n("div", {
52
- className: "flex flex-col items-center gap-4",
53
- children: [/* @__PURE__ */ r("span", { className: "loading loading-spinner loading-lg" }), /* @__PURE__ */ r("p", {
54
- className: "text-base-content/70",
55
- children: S
56
- })]
57
- })
58
- });
59
- if (p && $)
60
- return f ? /* @__PURE__ */ r(C, { children: f(p) }) : /* @__PURE__ */ n("div", {
61
- className: `alert alert-error ${m}`,
62
- children: [/* @__PURE__ */ r("svg", {
63
- xmlns: "http://www.w3.org/2000/svg",
64
- className: "stroke-current shrink-0 h-6 w-6",
65
- fill: "none",
66
- viewBox: "0 0 24 24",
67
- children: /* @__PURE__ */ r("path", {
68
- strokeLinecap: "round",
69
- strokeLinejoin: "round",
70
- strokeWidth: "2",
71
- d: "M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0 9 9 0 0118 0z"
72
- })
73
- }), /* @__PURE__ */ n("div", { children: [/* @__PURE__ */ r("h3", {
74
- className: "font-bold",
75
- children: "加载失败"
76
- }), /* @__PURE__ */ r("div", {
77
- className: "text-xs",
78
- children: p.message
79
- })] })]
80
- });
81
- const H = P || F.current;
82
- return /* @__PURE__ */ n(C, { children: [
83
- /* @__PURE__ */ r("div", {
84
- ref: l,
85
- id: H,
86
- className: `prose prose-sm md:prose-base lg:prose-lg max-w-none ${m}`,
87
- children: /* @__PURE__ */ r("div", {
88
- ref: a,
89
- children: /* @__PURE__ */ r(T, {
90
- remarkPlugins: q,
91
- rehypePlugins: E,
92
- components: G,
93
- children: c
94
- })
95
- })
96
- }),
97
- A && /* @__PURE__ */ r(Q, {
98
- targetRef: l,
99
- ...I
100
- }),
101
- L && R.length > 0 && /* @__PURE__ */ r(U, {
102
- targetRef: l,
103
- menuItems: R
104
- })
105
- ] });
106
- };
107
- export {
108
- Mr as default
20
+ //#region src/components/Markdown/Markdown.tsx
21
+ var b = ({ source: b = "text", content: x, showLoading: S = !0, loadingText: C = "Loading...", showError: w = !0, errorRenderer: T, codeTheme: E = "vscDarkPlus", showLineNumbers: D = !1, enableGfm: O = !0, enableEmoji: k = !0, enableKatex: A = !0, enableMermaid: j = !0, enableMarkmap: M = !0, enableMdx: N = !0, enableSlug: P = !0, slugPrefix: F = "", showArticleControl: I = !1, articleControlProps: L, showContextMenu: R = !1, contextMenuItems: z = [], containerId: B, className: V = "", s3Config: H, onLoad: U, onError: W }) => {
22
+ let G = l(null), K = l(null), q = l(`markdown-${Math.random().toString(36).substr(2, 9)}`), { markdown: J, loading: Y, error: X } = ee(b, x, H, U, W);
23
+ i(G, J, j), a(G, J, M);
24
+ let Z = c(() => {
25
+ let t = [e];
26
+ return O && t.push(m), k && t.push(h), A && t.push(y), t;
27
+ }, [
28
+ O,
29
+ k,
30
+ A
31
+ ]), Q = c(() => {
32
+ let e = [t];
33
+ return P && e.push([v, { prefix: F }]), N && e.push(_), A && e.push(g), e;
34
+ }, [
35
+ P,
36
+ F,
37
+ N,
38
+ A
39
+ ]), $ = c(() => o(E), [E]), te = c(() => s({
40
+ enableMermaid: j,
41
+ enableMarkmap: M,
42
+ showLineNumbers: D,
43
+ codeStyle: $
44
+ }), [
45
+ j,
46
+ M,
47
+ D,
48
+ $
49
+ ]);
50
+ if (Y && S) return /* @__PURE__ */ d("div", {
51
+ className: `flex items-center justify-center p-8 ${V}`,
52
+ children: /* @__PURE__ */ f("div", {
53
+ className: "flex flex-col items-center gap-4",
54
+ children: [/* @__PURE__ */ d("span", { className: "loading loading-spinner loading-lg" }), /* @__PURE__ */ d("p", {
55
+ className: "text-base-content/70",
56
+ children: C
57
+ })]
58
+ })
59
+ });
60
+ if (X && w) return T ? /* @__PURE__ */ d(u, { children: T(X) }) : /* @__PURE__ */ f("div", {
61
+ className: `alert alert-error ${V}`,
62
+ children: [/* @__PURE__ */ d("svg", {
63
+ xmlns: "http://www.w3.org/2000/svg",
64
+ className: "stroke-current shrink-0 h-6 w-6",
65
+ fill: "none",
66
+ viewBox: "0 0 24 24",
67
+ children: /* @__PURE__ */ d("path", {
68
+ strokeLinecap: "round",
69
+ strokeLinejoin: "round",
70
+ strokeWidth: "2",
71
+ d: "M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0 9 9 0 0118 0z"
72
+ })
73
+ }), /* @__PURE__ */ f("div", { children: [/* @__PURE__ */ d("h3", {
74
+ className: "font-bold",
75
+ children: "加载失败"
76
+ }), /* @__PURE__ */ d("div", {
77
+ className: "text-xs",
78
+ children: X.message
79
+ })] })]
80
+ });
81
+ let ne = B || q.current;
82
+ return /* @__PURE__ */ f(u, { children: [
83
+ /* @__PURE__ */ d("div", {
84
+ ref: K,
85
+ id: ne,
86
+ className: `prose prose-sm md:prose-base lg:prose-lg max-w-none ${V}`,
87
+ children: /* @__PURE__ */ d("div", {
88
+ ref: G,
89
+ children: /* @__PURE__ */ d(p, {
90
+ remarkPlugins: Z,
91
+ rehypePlugins: Q,
92
+ components: te,
93
+ children: J
94
+ })
95
+ })
96
+ }),
97
+ I && /* @__PURE__ */ d(n, {
98
+ targetRef: K,
99
+ ...L
100
+ }),
101
+ R && z.length > 0 && /* @__PURE__ */ d(r, {
102
+ targetRef: K,
103
+ menuItems: z
104
+ })
105
+ ] });
109
106
  };
107
+ //#endregion
108
+ export { b as default };
110
109
 
111
110
  //# sourceMappingURL=Markdown.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Markdown.js","names":[],"sources":["../../../src/components/Markdown/Markdown.tsx"],"sourcesContent":["import React, { useRef, useMemo } from 'react';\nimport ReactMarkdown from 'react-markdown';\nimport remarkGfm from 'remark-gfm';\nimport remarkEmoji from 'remark-emoji';\nimport rehypeKatex from 'rehype-katex';\nimport rehypeRaw from 'rehype-raw';\nimport rehypeSlug from 'rehype-slug';\nimport remarkMath from 'remark-math';\nimport { remarkCodeMeta } from '../../utils/remark-code-meta';\nimport { rehypeCodeMeta } from '../../utils/rehype-code-meta';\nimport ArticleControl, { ArticleAction } from '../pro/ArticleControl';\nimport ArticleContextMenu, { ContextMenuItem } from '../pro/ArticleContextMenu';\nimport { useMarkdownSource } from './useMarkdownSource';\nimport { useMermaidRenderer } from './useMermaidRenderer';\nimport { useMarkmapRenderer } from './useMarkmapRenderer';\nimport { getCodeStyle } from './codeThemes';\nimport type { CodeThemeName } from './codeThemes';\nimport { createMarkdownComponents } from './markdownComponents';\nimport 'katex/dist/katex.min.css';\n\nexport type MarkdownSource = 'url' | 's3' | 'text';\n\nexport interface MarkdownProps {\n source?: MarkdownSource;\n content: string;\n showLoading?: boolean;\n loadingText?: string;\n showError?: boolean;\n errorRenderer?: (error: Error) => React.ReactNode;\n codeTheme?: CodeThemeName;\n showLineNumbers?: boolean;\n enableGfm?: boolean;\n enableEmoji?: boolean;\n enableKatex?: boolean;\n enableMermaid?: boolean;\n enableMarkmap?: boolean;\n enableMdx?: boolean;\n enableSlug?: boolean;\n slugPrefix?: string;\n showArticleControl?: boolean;\n articleControlProps?: {\n initialPosition?: { x: number; y: number };\n initialExpanded?: boolean;\n ballSize?: number;\n panelWidth?: number;\n panelMaxHeight?: number;\n actions?: ArticleAction[];\n };\n containerId?: string;\n showContextMenu?: boolean;\n contextMenuItems?: ContextMenuItem[];\n className?: string;\n s3Config?: {\n accessKeyId?: string;\n secretAccessKey?: string;\n region?: string;\n endpoint?: string;\n };\n onLoad?: (content: string) => void;\n onError?: (error: Error) => void;\n}\n\nconst Markdown: React.FC<MarkdownProps> = ({\n source = 'text',\n content,\n showLoading = true,\n loadingText = 'Loading...',\n showError = true,\n errorRenderer,\n codeTheme = 'vscDarkPlus',\n showLineNumbers = false,\n enableGfm = true,\n enableEmoji = true,\n enableKatex = true,\n enableMermaid = true,\n enableMarkmap = true,\n enableMdx = true,\n enableSlug = true,\n slugPrefix = '',\n showArticleControl = false,\n articleControlProps,\n showContextMenu = false,\n contextMenuItems = [],\n containerId,\n className = '',\n s3Config,\n onLoad,\n onError,\n}) => {\n const mermaidRef = useRef<HTMLDivElement>(null);\n const containerRef = useRef<HTMLDivElement>(null);\n const generatedContainerId = useRef(`markdown-${Math.random().toString(36).substr(2, 9)}`);\n\n const { markdown, loading, error } = useMarkdownSource(source, content, s3Config, onLoad, onError);\n\n useMermaidRenderer(mermaidRef, markdown, enableMermaid);\n useMarkmapRenderer(mermaidRef, markdown, enableMarkmap);\n\n const remarkPlugins: any[] = useMemo(() => {\n const plugins: any[] = [remarkCodeMeta];\n if (enableGfm) plugins.push(remarkGfm);\n if (enableEmoji) plugins.push(remarkEmoji);\n if (enableKatex) plugins.push(remarkMath);\n return plugins;\n }, [enableGfm, enableEmoji, enableKatex]);\n\n const rehypePlugins: any[] = useMemo(() => {\n const plugins: any[] = [rehypeCodeMeta];\n if (enableSlug) plugins.push([rehypeSlug, { prefix: slugPrefix }]);\n if (enableMdx) plugins.push(rehypeRaw);\n if (enableKatex) plugins.push(rehypeKatex);\n return plugins;\n }, [enableSlug, slugPrefix, enableMdx, enableKatex]);\n\n const codeStyle = useMemo(() => getCodeStyle(codeTheme), [codeTheme]);\n\n const components = useMemo(\n () => createMarkdownComponents({ enableMermaid, enableMarkmap, showLineNumbers, codeStyle }),\n [enableMermaid, enableMarkmap, showLineNumbers, codeStyle],\n );\n\n if (loading && showLoading) {\n return (\n <div className={`flex items-center justify-center p-8 ${className}`}>\n <div className=\"flex flex-col items-center gap-4\">\n <span className=\"loading loading-spinner loading-lg\"></span>\n <p className=\"text-base-content/70\">{loadingText}</p>\n </div>\n </div>\n );\n }\n\n if (error && showError) {\n if (errorRenderer) {\n return <>{errorRenderer(error)}</>;\n }\n return (\n <div className={`alert alert-error ${className}`}>\n <svg xmlns=\"http://www.w3.org/2000/svg\" className=\"stroke-current shrink-0 h-6 w-6\" fill=\"none\" viewBox=\"0 0 24 24\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth=\"2\" d=\"M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0 9 9 0 0118 0z\" />\n </svg>\n <div>\n <h3 className=\"font-bold\">加载失败</h3>\n <div className=\"text-xs\">{error.message}</div>\n </div>\n </div>\n );\n }\n\n const finalContainerId = containerId || generatedContainerId.current;\n\n return (\n <>\n <div\n ref={containerRef}\n id={finalContainerId}\n className={`prose prose-sm md:prose-base lg:prose-lg max-w-none ${className}`}\n >\n <div ref={mermaidRef}>\n <ReactMarkdown\n remarkPlugins={remarkPlugins}\n rehypePlugins={rehypePlugins}\n components={components}\n >\n {markdown}\n </ReactMarkdown>\n </div>\n </div>\n\n {showArticleControl && (\n <ArticleControl\n targetRef={containerRef}\n {...articleControlProps}\n />\n )}\n\n {showContextMenu && contextMenuItems.length > 0 && (\n <ArticleContextMenu\n targetRef={containerRef}\n menuItems={contextMenuItems}\n />\n )}\n </>\n );\n};\n\nexport default Markdown;\n"],"mappings":"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"}
1
+ {"version":3,"file":"Markdown.js","names":[],"sources":["../../../src/components/Markdown/Markdown.tsx"],"sourcesContent":["import React, { useRef, useMemo } from 'react';\nimport ReactMarkdown from 'react-markdown';\nimport remarkGfm from 'remark-gfm';\nimport remarkEmoji from 'remark-emoji';\nimport rehypeKatex from 'rehype-katex';\nimport rehypeRaw from 'rehype-raw';\nimport rehypeSlug from 'rehype-slug';\nimport remarkMath from 'remark-math';\nimport { remarkCodeMeta } from '../../utils/remark-code-meta';\nimport { rehypeCodeMeta } from '../../utils/rehype-code-meta';\nimport ArticleControl, { ArticleAction } from '../pro/ArticleControl';\nimport ArticleContextMenu, { ContextMenuItem } from '../pro/ArticleContextMenu';\nimport { useMarkdownSource } from './useMarkdownSource';\nimport { useMermaidRenderer } from './useMermaidRenderer';\nimport { useMarkmapRenderer } from './useMarkmapRenderer';\nimport { getCodeStyle } from './codeThemes';\nimport type { CodeThemeName } from './codeThemes';\nimport { createMarkdownComponents } from './markdownComponents';\nimport 'katex/dist/katex.min.css';\n\nexport type MarkdownSource = 'url' | 's3' | 'text';\n\nexport interface MarkdownProps {\n source?: MarkdownSource;\n content: string;\n showLoading?: boolean;\n loadingText?: string;\n showError?: boolean;\n errorRenderer?: (error: Error) => React.ReactNode;\n codeTheme?: CodeThemeName;\n showLineNumbers?: boolean;\n enableGfm?: boolean;\n enableEmoji?: boolean;\n enableKatex?: boolean;\n enableMermaid?: boolean;\n enableMarkmap?: boolean;\n enableMdx?: boolean;\n enableSlug?: boolean;\n slugPrefix?: string;\n showArticleControl?: boolean;\n articleControlProps?: {\n initialPosition?: { x: number; y: number };\n initialExpanded?: boolean;\n ballSize?: number;\n panelWidth?: number;\n panelMaxHeight?: number;\n actions?: ArticleAction[];\n };\n containerId?: string;\n showContextMenu?: boolean;\n contextMenuItems?: ContextMenuItem[];\n className?: string;\n s3Config?: {\n accessKeyId?: string;\n secretAccessKey?: string;\n region?: string;\n endpoint?: string;\n };\n onLoad?: (content: string) => void;\n onError?: (error: Error) => void;\n}\n\nconst Markdown: React.FC<MarkdownProps> = ({\n source = 'text',\n content,\n showLoading = true,\n loadingText = 'Loading...',\n showError = true,\n errorRenderer,\n codeTheme = 'vscDarkPlus',\n showLineNumbers = false,\n enableGfm = true,\n enableEmoji = true,\n enableKatex = true,\n enableMermaid = true,\n enableMarkmap = true,\n enableMdx = true,\n enableSlug = true,\n slugPrefix = '',\n showArticleControl = false,\n articleControlProps,\n showContextMenu = false,\n contextMenuItems = [],\n containerId,\n className = '',\n s3Config,\n onLoad,\n onError,\n}) => {\n const mermaidRef = useRef<HTMLDivElement>(null);\n const containerRef = useRef<HTMLDivElement>(null);\n const generatedContainerId = useRef(`markdown-${Math.random().toString(36).substr(2, 9)}`);\n\n const { markdown, loading, error } = useMarkdownSource(source, content, s3Config, onLoad, onError);\n\n useMermaidRenderer(mermaidRef, markdown, enableMermaid);\n useMarkmapRenderer(mermaidRef, markdown, enableMarkmap);\n\n const remarkPlugins: any[] = useMemo(() => {\n const plugins: any[] = [remarkCodeMeta];\n if (enableGfm) plugins.push(remarkGfm);\n if (enableEmoji) plugins.push(remarkEmoji);\n if (enableKatex) plugins.push(remarkMath);\n return plugins;\n }, [enableGfm, enableEmoji, enableKatex]);\n\n const rehypePlugins: any[] = useMemo(() => {\n const plugins: any[] = [rehypeCodeMeta];\n if (enableSlug) plugins.push([rehypeSlug, { prefix: slugPrefix }]);\n if (enableMdx) plugins.push(rehypeRaw);\n if (enableKatex) plugins.push(rehypeKatex);\n return plugins;\n }, [enableSlug, slugPrefix, enableMdx, enableKatex]);\n\n const codeStyle = useMemo(() => getCodeStyle(codeTheme), [codeTheme]);\n\n const components = useMemo(\n () => createMarkdownComponents({ enableMermaid, enableMarkmap, showLineNumbers, codeStyle }),\n [enableMermaid, enableMarkmap, showLineNumbers, codeStyle],\n );\n\n if (loading && showLoading) {\n return (\n <div className={`flex items-center justify-center p-8 ${className}`}>\n <div className=\"flex flex-col items-center gap-4\">\n <span className=\"loading loading-spinner loading-lg\"></span>\n <p className=\"text-base-content/70\">{loadingText}</p>\n </div>\n </div>\n );\n }\n\n if (error && showError) {\n if (errorRenderer) {\n return <>{errorRenderer(error)}</>;\n }\n return (\n <div className={`alert alert-error ${className}`}>\n <svg xmlns=\"http://www.w3.org/2000/svg\" className=\"stroke-current shrink-0 h-6 w-6\" fill=\"none\" viewBox=\"0 0 24 24\">\n <path strokeLinecap=\"round\" strokeLinejoin=\"round\" strokeWidth=\"2\" d=\"M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0 9 9 0 0118 0z\" />\n </svg>\n <div>\n <h3 className=\"font-bold\">加载失败</h3>\n <div className=\"text-xs\">{error.message}</div>\n </div>\n </div>\n );\n }\n\n const finalContainerId = containerId || generatedContainerId.current;\n\n return (\n <>\n <div\n ref={containerRef}\n id={finalContainerId}\n className={`prose prose-sm md:prose-base lg:prose-lg max-w-none ${className}`}\n >\n <div ref={mermaidRef}>\n <ReactMarkdown\n remarkPlugins={remarkPlugins}\n rehypePlugins={rehypePlugins}\n components={components}\n >\n {markdown}\n </ReactMarkdown>\n </div>\n </div>\n\n {showArticleControl && (\n <ArticleControl\n targetRef={containerRef}\n {...articleControlProps}\n />\n )}\n\n {showContextMenu && contextMenuItems.length > 0 && (\n <ArticleContextMenu\n targetRef={containerRef}\n menuItems={contextMenuItems}\n />\n )}\n </>\n );\n};\n\nexport default Markdown;\n"],"mappings":"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"}
@@ -1,38 +1,29 @@
1
- import { atomDark as a, dracula as s, oneDark as n, oneLight as t, prism as u, tomorrow as g, vs as d, vscDarkPlus as r } from "react-syntax-highlighter/dist/esm/styles/prism";
2
- var i = {
3
- dracula: s,
4
- prism: u,
5
- vscDarkPlus: r,
6
- oneDark: n,
7
- atomDark: a,
8
- tomorrow: g,
9
- vs: d,
10
- oneLight: t,
11
- "vscode-dark": r,
12
- "vsc-dark-plus": r,
13
- "github-dark": r,
14
- "one-dark": n,
15
- "atom-dark": a,
16
- "github-light": t,
17
- "one-light": t
1
+ import { atomDark as e, dracula as t, oneDark as n, oneLight as r, prism as i, tomorrow as a, vs as o, vscDarkPlus as s } from "react-syntax-highlighter/dist/esm/styles/prism";
2
+ //#region src/components/Markdown/codeThemes.ts
3
+ var c = {
4
+ dracula: t,
5
+ prism: i,
6
+ vscDarkPlus: s,
7
+ oneDark: n,
8
+ atomDark: e,
9
+ tomorrow: a,
10
+ vs: o,
11
+ oneLight: r,
12
+ "vscode-dark": s,
13
+ "vsc-dark-plus": s,
14
+ "github-dark": s,
15
+ "one-dark": n,
16
+ "atom-dark": e,
17
+ "github-light": r,
18
+ "one-light": r
18
19
  };
19
- function k(o) {
20
- return i[o] || r;
20
+ function l(e) {
21
+ return c[e] || s;
21
22
  }
22
- function v(o, e) {
23
- return o && i[o.toLowerCase()] || e;
23
+ function u(e, t) {
24
+ return e && c[e.toLowerCase()] || t;
24
25
  }
25
- export {
26
- a as atomDark,
27
- s as dracula,
28
- k as getCodeStyle,
29
- n as oneDark,
30
- t as oneLight,
31
- u as prism,
32
- v as resolveMetaTheme,
33
- g as tomorrow,
34
- d as vs,
35
- r as vscDarkPlus
36
- };
26
+ //#endregion
27
+ export { e as atomDark, t as dracula, l as getCodeStyle, n as oneDark, r as oneLight, i as prism, u as resolveMetaTheme, a as tomorrow, o as vs, s as vscDarkPlus };
37
28
 
38
29
  //# sourceMappingURL=codeThemes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"codeThemes.js","names":[],"sources":["../../../src/components/Markdown/codeThemes.ts"],"sourcesContent":["import {\n dracula,\n prism,\n vscDarkPlus,\n oneDark,\n atomDark,\n tomorrow,\n vs,\n oneLight,\n} from 'react-syntax-highlighter/dist/esm/styles/prism';\n\nexport type CodeThemeName = 'dracula' | 'prism' | 'vscDarkPlus' | 'oneDark' | 'atomDark' | 'tomorrow' | 'vs' | 'oneLight';\n\nconst CODE_THEMES: Record<string, any> = {\n dracula,\n prism,\n vscDarkPlus,\n oneDark,\n atomDark,\n tomorrow,\n vs,\n oneLight,\n 'vscode-dark': vscDarkPlus,\n 'vsc-dark-plus': vscDarkPlus,\n 'github-dark': vscDarkPlus,\n 'one-dark': oneDark,\n 'atom-dark': atomDark,\n 'github-light': oneLight,\n 'one-light': oneLight,\n};\n\nexport function getCodeStyle(theme: CodeThemeName): any {\n return CODE_THEMES[theme] || vscDarkPlus;\n}\n\nexport function resolveMetaTheme(metaTheme: string | undefined, fallback: any): any {\n if (!metaTheme) return fallback;\n return CODE_THEMES[metaTheme.toLowerCase()] || fallback;\n}\n\nexport { dracula, prism, vscDarkPlus, oneDark, atomDark, tomorrow, vs, oneLight };\n"],"mappings":";AAaA,IAAM,IAAmC;AAAA,EACvC,SAAA;AAAA,EACA,OAAA;AAAA,EACA,aAAA;AAAA,EACA,SAAA;AAAA,EACA,UAAA;AAAA,EACA,UAAA;AAAA,EACA,IAAA;AAAA,EACA,UAAA;AAAA,EACA,eAAe;AAAA,EACf,iBAAiB;AAAA,EACjB,eAAe;AAAA,EACf,YAAY;AAAA,EACZ,aAAa;AAAA,EACb,gBAAgB;AAAA,EAChB,aAAa;AACf;AAEA,SAAgB,EAAa,GAA2B;AACtD,SAAO,EAAY,CAAA,KAAU;AAC/B;AAEA,SAAgB,EAAiB,GAA+B,GAAoB;AAClF,SAAK,KACE,EAAY,EAAU,YAAY,CAAA,KAAM;AACjD"}
1
+ {"version":3,"file":"codeThemes.js","names":[],"sources":["../../../src/components/Markdown/codeThemes.ts"],"sourcesContent":["import {\n dracula,\n prism,\n vscDarkPlus,\n oneDark,\n atomDark,\n tomorrow,\n vs,\n oneLight,\n} from 'react-syntax-highlighter/dist/esm/styles/prism';\n\nexport type CodeThemeName = 'dracula' | 'prism' | 'vscDarkPlus' | 'oneDark' | 'atomDark' | 'tomorrow' | 'vs' | 'oneLight';\n\nconst CODE_THEMES: Record<string, any> = {\n dracula,\n prism,\n vscDarkPlus,\n oneDark,\n atomDark,\n tomorrow,\n vs,\n oneLight,\n 'vscode-dark': vscDarkPlus,\n 'vsc-dark-plus': vscDarkPlus,\n 'github-dark': vscDarkPlus,\n 'one-dark': oneDark,\n 'atom-dark': atomDark,\n 'github-light': oneLight,\n 'one-light': oneLight,\n};\n\nexport function getCodeStyle(theme: CodeThemeName): any {\n return CODE_THEMES[theme] || vscDarkPlus;\n}\n\nexport function resolveMetaTheme(metaTheme: string | undefined, fallback: any): any {\n if (!metaTheme) return fallback;\n return CODE_THEMES[metaTheme.toLowerCase()] || fallback;\n}\n\nexport { dracula, prism, vscDarkPlus, oneDark, atomDark, tomorrow, vs, oneLight };\n"],"mappings":";;AAaA,IAAM,IAAmC;CACvC;CACA;CACA;CACA;CACA;CACA;CACA;CACA,UAAA;CACA,eAAe;CACf,iBAAiB;CACjB,eAAe;CACf,YAAY;CACZ,aAAa;CACb,gBAAgB;CAChB,aAAa;AACf;AAEA,SAAgB,EAAa,GAA2B;CACtD,OAAO,EAAY,MAAU;AAC/B;AAEA,SAAgB,EAAiB,GAA+B,GAAoB;CAElF,OADK,KACE,EAAY,EAAU,YAAY,MADlB;AAEzB"}