dishui 0.0.65 → 0.0.66

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 (500) 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/Badge/index.js +10 -15
  5. package/dist/components/Badge/index.js.map +1 -1
  6. package/dist/components/Button/index.js +62 -89
  7. package/dist/components/Button/index.js.map +1 -1
  8. package/dist/components/Card/index.d.ts +76 -0
  9. package/dist/components/Card/index.js +178 -69
  10. package/dist/components/Card/index.js.map +1 -1
  11. package/dist/components/Chart/Chart.js +25 -25
  12. package/dist/components/Chart/Chart.js.map +1 -1
  13. package/dist/components/Checkbox/index.js +57 -65
  14. package/dist/components/Checkbox/index.js.map +1 -1
  15. package/dist/components/ChoicePicker/index.d.ts +44 -0
  16. package/dist/components/ChoicePicker/index.js +81 -0
  17. package/dist/components/ChoicePicker/index.js.map +1 -0
  18. package/dist/components/Column/index.d.ts +28 -0
  19. package/dist/components/Column/index.js +30 -0
  20. package/dist/components/Column/index.js.map +1 -0
  21. package/dist/components/DateTimeInput/index.d.ts +44 -0
  22. package/dist/components/DateTimeInput/index.js +48 -0
  23. package/dist/components/DateTimeInput/index.js.map +1 -0
  24. package/dist/components/Demo/index.js +107 -107
  25. package/dist/components/Demo/index.js.map +1 -1
  26. package/dist/components/Divider/index.d.ts +20 -0
  27. package/dist/components/Divider/index.js +30 -0
  28. package/dist/components/Divider/index.js.map +1 -0
  29. package/dist/components/EmptyState/index.js +24 -24
  30. package/dist/components/EmptyState/index.js.map +1 -1
  31. package/dist/components/FileUploader/DropZone.js +134 -136
  32. package/dist/components/FileUploader/DropZone.js.map +1 -1
  33. package/dist/components/FileUploader/FileItem.js +159 -163
  34. package/dist/components/FileUploader/FileItem.js.map +1 -1
  35. package/dist/components/FileUploader/FileUploader.js +126 -127
  36. package/dist/components/FileUploader/FileUploader.js.map +1 -1
  37. package/dist/components/FileUploader/UploadQueue.js +62 -62
  38. package/dist/components/FileUploader/UploadQueue.js.map +1 -1
  39. package/dist/components/FloatWindow/index.d.ts +28 -0
  40. package/dist/components/GridLayout/index.d.ts +42 -0
  41. package/dist/components/Icon/index.d.ts +24 -0
  42. package/dist/components/Icon/index.js +26 -0
  43. package/dist/components/Icon/index.js.map +1 -0
  44. package/dist/components/Image/index.d.ts +33 -0
  45. package/dist/components/Image/index.js +44 -0
  46. package/dist/components/Image/index.js.map +1 -0
  47. package/dist/components/Input/index.js +196 -197
  48. package/dist/components/Input/index.js.map +1 -1
  49. package/dist/components/Label/index.js +62 -74
  50. package/dist/components/Label/index.js.map +1 -1
  51. package/dist/components/Layout/index.js +134 -139
  52. package/dist/components/Layout/index.js.map +1 -1
  53. package/dist/components/List/index.js +45 -58
  54. package/dist/components/List/index.js.map +1 -1
  55. package/dist/components/Markdown/Markdown.js +106 -107
  56. package/dist/components/Markdown/Markdown.js.map +1 -1
  57. package/dist/components/Markdown/codeThemes.js +24 -33
  58. package/dist/components/Markdown/codeThemes.js.map +1 -1
  59. package/dist/components/Markdown/markdownComponents.js +203 -208
  60. package/dist/components/Markdown/markdownComponents.js.map +1 -1
  61. package/dist/components/Markdown/parseCodeBlockMeta.js +22 -22
  62. package/dist/components/Markdown/parseCodeBlockMeta.js.map +1 -1
  63. package/dist/components/Markdown/useMarkdownSource.js +46 -46
  64. package/dist/components/Markdown/useMarkdownSource.js.map +1 -1
  65. package/dist/components/Markdown/useMarkmapRenderer.js +35 -36
  66. package/dist/components/Markdown/useMarkmapRenderer.js.map +1 -1
  67. package/dist/components/Markdown/useMermaidRenderer.js +41 -42
  68. package/dist/components/Markdown/useMermaidRenderer.js.map +1 -1
  69. package/dist/components/Modal/index.js +82 -82
  70. package/dist/components/Modal/index.js.map +1 -1
  71. package/dist/components/MultipleChoice/index.d.ts +44 -0
  72. package/dist/components/MultipleChoice/index.js +52 -0
  73. package/dist/components/MultipleChoice/index.js.map +1 -0
  74. package/dist/components/Notification/index.d.ts +17 -0
  75. package/dist/components/Page/index.js +40 -71
  76. package/dist/components/Page/index.js.map +1 -1
  77. package/dist/components/PageHeader/index.js +28 -28
  78. package/dist/components/PageHeader/index.js.map +1 -1
  79. package/dist/components/ProtectedRoute/index.js +8 -9
  80. package/dist/components/ProtectedRoute/index.js.map +1 -1
  81. package/dist/components/Row/index.d.ts +28 -0
  82. package/dist/components/Row/index.js +30 -0
  83. package/dist/components/Row/index.js.map +1 -0
  84. package/dist/components/Select/index.js +251 -254
  85. package/dist/components/Select/index.js.map +1 -1
  86. package/dist/components/SidebarToggleButton/index.js +56 -59
  87. package/dist/components/SidebarToggleButton/index.js.map +1 -1
  88. package/dist/components/Slider/index.d.ts +39 -0
  89. package/dist/components/Slider/index.js +52 -0
  90. package/dist/components/Slider/index.js.map +1 -0
  91. package/dist/components/StatCard/index.d.ts +29 -1
  92. package/dist/components/StatCard/index.js +189 -86
  93. package/dist/components/StatCard/index.js.map +1 -1
  94. package/dist/components/Switch/index.d.ts +34 -0
  95. package/dist/components/Switch/index.js +55 -0
  96. package/dist/components/Switch/index.js.map +1 -0
  97. package/dist/components/Tab/index.d.ts +40 -0
  98. package/dist/components/Table/index.js +109 -121
  99. package/dist/components/Table/index.js.map +1 -1
  100. package/dist/components/Tabs/index.js +28 -38
  101. package/dist/components/Tabs/index.js.map +1 -1
  102. package/dist/components/Text/index.d.ts +43 -0
  103. package/dist/components/Text/index.js +55 -0
  104. package/dist/components/Text/index.js.map +1 -0
  105. package/dist/components/Tooltip/index.d.ts +23 -0
  106. package/dist/components/Tooltip/index.js +34 -0
  107. package/dist/components/Tooltip/index.js.map +1 -0
  108. package/dist/components/Tree/Tree.js +205 -205
  109. package/dist/components/Tree/Tree.js.map +1 -1
  110. package/dist/components/pro/ArticleContextMenu/index.js +86 -87
  111. package/dist/components/pro/ArticleContextMenu/index.js.map +1 -1
  112. package/dist/components/pro/ArticleControl/ArticleControl2.js +250 -250
  113. package/dist/components/pro/ArticleControl/ArticleControl2.js.map +1 -1
  114. package/dist/components/pro/ArticleControl/buildHeadingTree.js +31 -32
  115. package/dist/components/pro/ArticleControl/buildHeadingTree.js.map +1 -1
  116. package/dist/components/pro/ArticleControl/useArticleToc.js +100 -102
  117. package/dist/components/pro/ArticleControl/useArticleToc.js.map +1 -1
  118. package/dist/components/pro/Calendar/Calendar.d.ts +10 -0
  119. package/dist/components/pro/Calendar/hooks/useCalendarDrag.d.ts +47 -0
  120. package/dist/components/pro/Calendar/hooks/useCalendarState.d.ts +56 -0
  121. package/dist/components/pro/Calendar/index.d.ts +7 -0
  122. package/dist/components/pro/Calendar/types.d.ts +151 -0
  123. package/dist/components/pro/Calendar/utils.d.ts +94 -0
  124. package/dist/components/pro/Chat/Chat.d.ts +6 -0
  125. package/dist/components/pro/Chat/index.d.ts +2 -0
  126. package/dist/components/pro/Chat/types.d.ts +84 -0
  127. package/dist/components/pro/CodeEditor/editors/CodeEditor.js +287 -327
  128. package/dist/components/pro/CodeEditor/editors/CodeEditor.js.map +1 -1
  129. package/dist/components/pro/CodeEditor/editors/MarkdownEditor.js +167 -224
  130. package/dist/components/pro/CodeEditor/editors/MarkdownEditor.js.map +1 -1
  131. package/dist/components/pro/CodeEditor/editors/markdownExtensions.js +594 -613
  132. package/dist/components/pro/CodeEditor/editors/markdownExtensions.js.map +1 -1
  133. package/dist/components/pro/CodeEditor/extensions/contextMenu.js +54 -55
  134. package/dist/components/pro/CodeEditor/extensions/contextMenu.js.map +1 -1
  135. package/dist/components/pro/CodeEditor/extensions/index.js +152 -160
  136. package/dist/components/pro/CodeEditor/extensions/index.js.map +1 -1
  137. package/dist/components/pro/CodeEditor/langs/index.js +7 -15
  138. package/dist/components/pro/CodeEditor/langs/index.js.map +1 -1
  139. package/dist/components/pro/CodeEditor/langs/javascript.js +11 -48
  140. package/dist/components/pro/CodeEditor/langs/javascript.js.map +1 -1
  141. package/dist/components/pro/CodeEditor/langs/python.js +4 -40
  142. package/dist/components/pro/CodeEditor/langs/python.js.map +1 -1
  143. package/dist/components/pro/CodeEditor/langs/snippets.js +118 -147
  144. package/dist/components/pro/CodeEditor/langs/snippets.js.map +1 -1
  145. package/dist/components/pro/CodeEditor/panels/FootnotePanel.js +153 -153
  146. package/dist/components/pro/CodeEditor/panels/FootnotePanel.js.map +1 -1
  147. package/dist/components/pro/CodeEditor/panels/HistoryPanel.js +180 -190
  148. package/dist/components/pro/CodeEditor/panels/HistoryPanel.js.map +1 -1
  149. package/dist/components/pro/CodeEditor/panels/OutlinePanel.js +130 -137
  150. package/dist/components/pro/CodeEditor/panels/OutlinePanel.js.map +1 -1
  151. package/dist/components/pro/CodeEditor/panels/TableOfContentsPanel.js +228 -242
  152. package/dist/components/pro/CodeEditor/panels/TableOfContentsPanel.js.map +1 -1
  153. package/dist/components/pro/CodeEditor/panels/VariablePanel.js +208 -248
  154. package/dist/components/pro/CodeEditor/panels/VariablePanel.js.map +1 -1
  155. package/dist/components/pro/CodeEditor/themes.js +513 -483
  156. package/dist/components/pro/CodeEditor/themes.js.map +1 -1
  157. package/dist/components/pro/CodeEditor/types.d.ts +1 -1
  158. package/dist/components/pro/CodeEditor/utils.js +171 -175
  159. package/dist/components/pro/CodeEditor/utils.js.map +1 -1
  160. package/dist/components/pro/DataTable/DataTable.js +305 -306
  161. package/dist/components/pro/DataTable/DataTable.js.map +1 -1
  162. package/dist/components/pro/DataTable/Filters.js +299 -314
  163. package/dist/components/pro/DataTable/Filters.js.map +1 -1
  164. package/dist/components/pro/DataTable/PivotPanel.js +203 -204
  165. package/dist/components/pro/DataTable/PivotPanel.js.map +1 -1
  166. package/dist/components/pro/DataTable/PivotView.js +142 -144
  167. package/dist/components/pro/DataTable/PivotView.js.map +1 -1
  168. package/dist/components/pro/DataTable/components/BulkActions.js +42 -42
  169. package/dist/components/pro/DataTable/components/BulkActions.js.map +1 -1
  170. package/dist/components/pro/DataTable/components/ColumnSelector.js +84 -84
  171. package/dist/components/pro/DataTable/components/ColumnSelector.js.map +1 -1
  172. package/dist/components/pro/DataTable/components/FilterBar.js +58 -58
  173. package/dist/components/pro/DataTable/components/FilterBar.js.map +1 -1
  174. package/dist/components/pro/DataTable/components/TableBody.js +93 -94
  175. package/dist/components/pro/DataTable/components/TableBody.js.map +1 -1
  176. package/dist/components/pro/DataTable/components/TableHeader.js +78 -78
  177. package/dist/components/pro/DataTable/components/TableHeader.js.map +1 -1
  178. package/dist/components/pro/DataTable/components/TablePagination.js +77 -77
  179. package/dist/components/pro/DataTable/components/TablePagination.js.map +1 -1
  180. package/dist/components/pro/DataTable/components/TableToolbar.js +40 -40
  181. package/dist/components/pro/DataTable/components/TableToolbar.js.map +1 -1
  182. package/dist/components/pro/DataTable/extension.js +5 -5
  183. package/dist/components/pro/DataTable/extension.js.map +1 -1
  184. package/dist/components/pro/DataTable/pivotEngine.js +84 -92
  185. package/dist/components/pro/DataTable/pivotEngine.js.map +1 -1
  186. package/dist/components/pro/DataTable/pivotExtension.js +93 -93
  187. package/dist/components/pro/DataTable/pivotExtension.js.map +1 -1
  188. package/dist/components/pro/DataTable/rowDetailExtension.js +30 -30
  189. package/dist/components/pro/DataTable/rowDetailExtension.js.map +1 -1
  190. package/dist/components/pro/DataTable/tanstack-table.js +45 -62
  191. package/dist/components/pro/DataTable/tanstack-table.js.map +1 -1
  192. package/dist/components/pro/DataTable/treeDataUtils.js +37 -48
  193. package/dist/components/pro/DataTable/treeDataUtils.js.map +1 -1
  194. package/dist/components/pro/DataTable/useColumnDragReorder.js +68 -68
  195. package/dist/components/pro/DataTable/useColumnDragReorder.js.map +1 -1
  196. package/dist/components/pro/DataTable/utils.js +156 -168
  197. package/dist/components/pro/DataTable/utils.js.map +1 -1
  198. package/dist/components/pro/FileExplorer/Breadcrumb.js +180 -180
  199. package/dist/components/pro/FileExplorer/Breadcrumb.js.map +1 -1
  200. package/dist/components/pro/FileExplorer/CreateDialog.js +78 -78
  201. package/dist/components/pro/FileExplorer/CreateDialog.js.map +1 -1
  202. package/dist/components/pro/FileExplorer/FileExplorer.js +202 -205
  203. package/dist/components/pro/FileExplorer/FileExplorer.js.map +1 -1
  204. package/dist/components/pro/FileExplorer/FileIcon.js +189 -189
  205. package/dist/components/pro/FileExplorer/FileIcon.js.map +1 -1
  206. package/dist/components/pro/FileExplorer/GridView.js +100 -100
  207. package/dist/components/pro/FileExplorer/GridView.js.map +1 -1
  208. package/dist/components/pro/FileExplorer/ListView.js +209 -209
  209. package/dist/components/pro/FileExplorer/ListView.js.map +1 -1
  210. package/dist/components/pro/FileExplorer/Toolbar.js +199 -199
  211. package/dist/components/pro/FileExplorer/Toolbar.js.map +1 -1
  212. package/dist/components/pro/Flow/Flow.js +920 -948
  213. package/dist/components/pro/Flow/Flow.js.map +1 -1
  214. package/dist/components/pro/Flow/FlowCanvas.js +1626 -1662
  215. package/dist/components/pro/Flow/FlowCanvas.js.map +1 -1
  216. package/dist/components/pro/Flow/archify/build.js +85 -94
  217. package/dist/components/pro/Flow/archify/build.js.map +1 -1
  218. package/dist/components/pro/Flow/archify/convert.js +512 -519
  219. package/dist/components/pro/Flow/archify/convert.js.map +1 -1
  220. package/dist/components/pro/Flow/archify/palette.js +87 -104
  221. package/dist/components/pro/Flow/archify/palette.js.map +1 -1
  222. package/dist/components/pro/Flow/archify/presets.js +34 -37
  223. package/dist/components/pro/Flow/archify/presets.js.map +1 -1
  224. package/dist/components/pro/Flow/archify/spec.js +7 -7
  225. package/dist/components/pro/Flow/archify/spec.js.map +1 -1
  226. package/dist/components/pro/Flow/canvas/AlignmentGuides.js +25 -25
  227. package/dist/components/pro/Flow/canvas/AlignmentGuides.js.map +1 -1
  228. package/dist/components/pro/Flow/canvas/GridRenderer.js +54 -55
  229. package/dist/components/pro/Flow/canvas/GridRenderer.js.map +1 -1
  230. package/dist/components/pro/Flow/canvas/MiniMapRenderer.js +54 -58
  231. package/dist/components/pro/Flow/canvas/MiniMapRenderer.js.map +1 -1
  232. package/dist/components/pro/Flow/canvas/PixiApp.js +105 -102
  233. package/dist/components/pro/Flow/canvas/PixiApp.js.map +1 -1
  234. package/dist/components/pro/Flow/canvas/SelectionOverlay.js +38 -38
  235. package/dist/components/pro/Flow/canvas/SelectionOverlay.js.map +1 -1
  236. package/dist/components/pro/Flow/canvas/ViewportContainer.js +117 -117
  237. package/dist/components/pro/Flow/canvas/ViewportContainer.js.map +1 -1
  238. package/dist/components/pro/Flow/constants.js +266 -278
  239. package/dist/components/pro/Flow/constants.js.map +1 -1
  240. package/dist/components/pro/Flow/context/FlowAIContext.js +27 -28
  241. package/dist/components/pro/Flow/context/FlowAIContext.js.map +1 -1
  242. package/dist/components/pro/Flow/context/FlowContext.js +60 -61
  243. package/dist/components/pro/Flow/context/FlowContext.js.map +1 -1
  244. package/dist/components/pro/Flow/context/FlowUIContext.js +115 -117
  245. package/dist/components/pro/Flow/context/FlowUIContext.js.map +1 -1
  246. package/dist/components/pro/Flow/edges/EdgeRenderer.js +135 -138
  247. package/dist/components/pro/Flow/edges/EdgeRenderer.js.map +1 -1
  248. package/dist/components/pro/Flow/edges/edgeMarkers.js +11 -14
  249. package/dist/components/pro/Flow/edges/edgeMarkers.js.map +1 -1
  250. package/dist/components/pro/Flow/edges/edgePaths.js +351 -367
  251. package/dist/components/pro/Flow/edges/edgePaths.js.map +1 -1
  252. package/dist/components/pro/Flow/hooks/useAlignmentGuides.js +49 -52
  253. package/dist/components/pro/Flow/hooks/useAlignmentGuides.js.map +1 -1
  254. package/dist/components/pro/Flow/hooks/useClipboard.js +154 -154
  255. package/dist/components/pro/Flow/hooks/useClipboard.js.map +1 -1
  256. package/dist/components/pro/Flow/hooks/useCompactMode.js +17 -17
  257. package/dist/components/pro/Flow/hooks/useCompactMode.js.map +1 -1
  258. package/dist/components/pro/Flow/hooks/useDeleteSelection.js +40 -40
  259. package/dist/components/pro/Flow/hooks/useDeleteSelection.js.map +1 -1
  260. package/dist/components/pro/Flow/hooks/useDraggablePanel.js +51 -51
  261. package/dist/components/pro/Flow/hooks/useDraggablePanel.js.map +1 -1
  262. package/dist/components/pro/Flow/hooks/useEdgeMutations.js +157 -157
  263. package/dist/components/pro/Flow/hooks/useEdgeMutations.js.map +1 -1
  264. package/dist/components/pro/Flow/hooks/useFlowImportExport.js +190 -201
  265. package/dist/components/pro/Flow/hooks/useFlowImportExport.js.map +1 -1
  266. package/dist/components/pro/Flow/hooks/useKeyboardShortcuts.js +32 -38
  267. package/dist/components/pro/Flow/hooks/useKeyboardShortcuts.js.map +1 -1
  268. package/dist/components/pro/Flow/hooks/useLayoutActions.js +172 -180
  269. package/dist/components/pro/Flow/hooks/useLayoutActions.js.map +1 -1
  270. package/dist/components/pro/Flow/hooks/useLineMutations.js +57 -57
  271. package/dist/components/pro/Flow/hooks/useLineMutations.js.map +1 -1
  272. package/dist/components/pro/Flow/hooks/useMindMap.js +229 -238
  273. package/dist/components/pro/Flow/hooks/useMindMap.js.map +1 -1
  274. package/dist/components/pro/Flow/hooks/useNodeMutations.js +102 -102
  275. package/dist/components/pro/Flow/hooks/useNodeMutations.js.map +1 -1
  276. package/dist/components/pro/Flow/hooks/usePdfExport.js +55 -56
  277. package/dist/components/pro/Flow/hooks/usePdfExport.js.map +1 -1
  278. package/dist/components/pro/Flow/hooks/usePixiApp.js +55 -57
  279. package/dist/components/pro/Flow/hooks/usePixiApp.js.map +1 -1
  280. package/dist/components/pro/Flow/hooks/useResizablePanel.js +31 -31
  281. package/dist/components/pro/Flow/hooks/useResizablePanel.js.map +1 -1
  282. package/dist/components/pro/Flow/hooks/useSelection.js +69 -69
  283. package/dist/components/pro/Flow/hooks/useSelection.js.map +1 -1
  284. package/dist/components/pro/Flow/hooks/useUndoRedo.js +27 -27
  285. package/dist/components/pro/Flow/hooks/useUndoRedo.js.map +1 -1
  286. package/dist/components/pro/Flow/hooks/useViewport.js +28 -28
  287. package/dist/components/pro/Flow/hooks/useViewport.js.map +1 -1
  288. package/dist/components/pro/Flow/lines/FreehandTool.js +63 -63
  289. package/dist/components/pro/Flow/lines/FreehandTool.js.map +1 -1
  290. package/dist/components/pro/Flow/lines/GeometricLineTool.js +80 -80
  291. package/dist/components/pro/Flow/lines/GeometricLineTool.js.map +1 -1
  292. package/dist/components/pro/Flow/lines/LineRenderer.js +88 -88
  293. package/dist/components/pro/Flow/lines/LineRenderer.js.map +1 -1
  294. package/dist/components/pro/Flow/lines/lineSmoothing.js +32 -34
  295. package/dist/components/pro/Flow/lines/lineSmoothing.js.map +1 -1
  296. package/dist/components/pro/Flow/nodes/DataNodeView.js +236 -242
  297. package/dist/components/pro/Flow/nodes/DataNodeView.js.map +1 -1
  298. package/dist/components/pro/Flow/nodes/MediaContent.js +236 -246
  299. package/dist/components/pro/Flow/nodes/MediaContent.js.map +1 -1
  300. package/dist/components/pro/Flow/nodes/MediaOverlay.js +63 -63
  301. package/dist/components/pro/Flow/nodes/MediaOverlay.js.map +1 -1
  302. package/dist/components/pro/Flow/nodes/Model3DView.js +111 -113
  303. package/dist/components/pro/Flow/nodes/Model3DView.js.map +1 -1
  304. package/dist/components/pro/Flow/nodes/NodeHandles.js +74 -80
  305. package/dist/components/pro/Flow/nodes/NodeHandles.js.map +1 -1
  306. package/dist/components/pro/Flow/nodes/NodeRenderer.js +303 -314
  307. package/dist/components/pro/Flow/nodes/NodeRenderer.js.map +1 -1
  308. package/dist/components/pro/Flow/nodes/NodeText.js +25 -29
  309. package/dist/components/pro/Flow/nodes/NodeText.js.map +1 -1
  310. package/dist/components/pro/Flow/nodes/aiClient.js +124 -137
  311. package/dist/components/pro/Flow/nodes/aiClient.js.map +1 -1
  312. package/dist/components/pro/Flow/nodes/animAnchors.js +42 -49
  313. package/dist/components/pro/Flow/nodes/animAnchors.js.map +1 -1
  314. package/dist/components/pro/Flow/nodes/dataUtils.js +246 -267
  315. package/dist/components/pro/Flow/nodes/dataUtils.js.map +1 -1
  316. package/dist/components/pro/Flow/nodes/nodeUtils.js +23 -28
  317. package/dist/components/pro/Flow/nodes/nodeUtils.js.map +1 -1
  318. package/dist/components/pro/Flow/nodes/shapes.js +556 -589
  319. package/dist/components/pro/Flow/nodes/shapes.js.map +1 -1
  320. package/dist/components/pro/Flow/nodes/svgIconTexture.js +37 -39
  321. package/dist/components/pro/Flow/nodes/svgIconTexture.js.map +1 -1
  322. package/dist/components/pro/Flow/nodes/svgIcons.js +684 -689
  323. package/dist/components/pro/Flow/nodes/svgIcons.js.map +1 -1
  324. package/dist/components/pro/Flow/panels/AIPanel.js +464 -491
  325. package/dist/components/pro/Flow/panels/AIPanel.js.map +1 -1
  326. package/dist/components/pro/Flow/panels/Breadcrumb.js +41 -41
  327. package/dist/components/pro/Flow/panels/Breadcrumb.js.map +1 -1
  328. package/dist/components/pro/Flow/panels/ContextMenu.js +37 -37
  329. package/dist/components/pro/Flow/panels/ContextMenu.js.map +1 -1
  330. package/dist/components/pro/Flow/panels/DataInspectorSection.js +428 -432
  331. package/dist/components/pro/Flow/panels/DataInspectorSection.js.map +1 -1
  332. package/dist/components/pro/Flow/panels/ExpandableTextarea.js +61 -62
  333. package/dist/components/pro/Flow/panels/ExpandableTextarea.js.map +1 -1
  334. package/dist/components/pro/Flow/panels/FlowPanelGroup.js +114 -114
  335. package/dist/components/pro/Flow/panels/FlowPanelGroup.js.map +1 -1
  336. package/dist/components/pro/Flow/panels/FlowToolbar.js +347 -391
  337. package/dist/components/pro/Flow/panels/FlowToolbar.js.map +1 -1
  338. package/dist/components/pro/Flow/panels/InspectorPanel.js +1792 -1798
  339. package/dist/components/pro/Flow/panels/InspectorPanel.js.map +1 -1
  340. package/dist/components/pro/Flow/panels/OutlinePanel.js +242 -248
  341. package/dist/components/pro/Flow/panels/OutlinePanel.js.map +1 -1
  342. package/dist/components/pro/Flow/panels/PresentationMode.js +137 -140
  343. package/dist/components/pro/Flow/panels/PresentationMode.js.map +1 -1
  344. package/dist/components/pro/Flow/panels/ProjectTitle.js +46 -46
  345. package/dist/components/pro/Flow/panels/ProjectTitle.js.map +1 -1
  346. package/dist/components/pro/Flow/panels/ShapePalette.js +557 -572
  347. package/dist/components/pro/Flow/panels/ShapePalette.js.map +1 -1
  348. package/dist/components/pro/Flow/panels/toolbarIcons.d.ts +0 -1
  349. package/dist/components/pro/Flow/panels/toolbarIcons.js +508 -557
  350. package/dist/components/pro/Flow/panels/toolbarIcons.js.map +1 -1
  351. package/dist/components/pro/Flow/types.js +26 -26
  352. package/dist/components/pro/Flow/types.js.map +1 -1
  353. package/dist/components/pro/Flow/utils/dashedLine.js +113 -117
  354. package/dist/components/pro/Flow/utils/dashedLine.js.map +1 -1
  355. package/dist/components/pro/Flow/utils/gradient.js +55 -55
  356. package/dist/components/pro/Flow/utils/gradient.js.map +1 -1
  357. package/dist/components/pro/Flow/utils/pdfExport.js +50 -89
  358. package/dist/components/pro/Flow/utils/pdfExport.js.map +1 -1
  359. package/dist/components/pro/Flow/utils/themeColor.js +185 -195
  360. package/dist/components/pro/Flow/utils/themeColor.js.map +1 -1
  361. package/dist/components/pro/Gantt/Gantt.d.ts +7 -0
  362. package/dist/components/pro/Gantt/hooks/useGanttDrag.d.ts +31 -0
  363. package/dist/components/pro/Gantt/hooks/useGanttState.d.ts +58 -0
  364. package/dist/components/pro/Gantt/index.d.ts +6 -0
  365. package/dist/components/pro/Gantt/types.d.ts +478 -0
  366. package/dist/components/pro/Gantt/utils.d.ts +124 -0
  367. package/dist/components/pro/Resizable/Resizable.d.ts +30 -0
  368. package/dist/components/pro/Resizable/index.d.ts +2 -0
  369. package/dist/components/pro/RichTextEditor/AIRewrite.js +323 -334
  370. package/dist/components/pro/RichTextEditor/AIRewrite.js.map +1 -1
  371. package/dist/components/pro/RichTextEditor/BlockHandle.js +314 -316
  372. package/dist/components/pro/RichTextEditor/BlockHandle.js.map +1 -1
  373. package/dist/components/pro/RichTextEditor/BubbleToolbar.js +97 -97
  374. package/dist/components/pro/RichTextEditor/BubbleToolbar.js.map +1 -1
  375. package/dist/components/pro/RichTextEditor/CommentDialog.js +88 -88
  376. package/dist/components/pro/RichTextEditor/CommentDialog.js.map +1 -1
  377. package/dist/components/pro/RichTextEditor/CommentPanel.js +240 -240
  378. package/dist/components/pro/RichTextEditor/CommentPanel.js.map +1 -1
  379. package/dist/components/pro/RichTextEditor/CommentPopover.js +234 -234
  380. package/dist/components/pro/RichTextEditor/CommentPopover.js.map +1 -1
  381. package/dist/components/pro/RichTextEditor/ContextMenu.js +251 -252
  382. package/dist/components/pro/RichTextEditor/ContextMenu.js.map +1 -1
  383. package/dist/components/pro/RichTextEditor/RichTextEditor.js +267 -271
  384. package/dist/components/pro/RichTextEditor/RichTextEditor.js.map +1 -1
  385. package/dist/components/pro/RichTextEditor/SlashMenu.js +214 -214
  386. package/dist/components/pro/RichTextEditor/SlashMenu.js.map +1 -1
  387. package/dist/components/pro/RichTextEditor/Toolbar/ColorPicker.js +44 -75
  388. package/dist/components/pro/RichTextEditor/Toolbar/ColorPicker.js.map +1 -1
  389. package/dist/components/pro/RichTextEditor/Toolbar/FloatingDialogMenu.js +261 -261
  390. package/dist/components/pro/RichTextEditor/Toolbar/FloatingDialogMenu.js.map +1 -1
  391. package/dist/components/pro/RichTextEditor/Toolbar/MarkdownTemplates.js +172 -526
  392. package/dist/components/pro/RichTextEditor/Toolbar/MarkdownTemplates.js.map +1 -1
  393. package/dist/components/pro/RichTextEditor/Toolbar/SelectDropdown.js +112 -114
  394. package/dist/components/pro/RichTextEditor/Toolbar/SelectDropdown.js.map +1 -1
  395. package/dist/components/pro/RichTextEditor/Toolbar/TableOpsMenu.js +194 -194
  396. package/dist/components/pro/RichTextEditor/Toolbar/TableOpsMenu.js.map +1 -1
  397. package/dist/components/pro/RichTextEditor/Toolbar/Toolbar.js +970 -973
  398. package/dist/components/pro/RichTextEditor/Toolbar/Toolbar.js.map +1 -1
  399. package/dist/components/pro/RichTextEditor/Toolbar/ToolbarButton.js +11 -12
  400. package/dist/components/pro/RichTextEditor/Toolbar/ToolbarButton.js.map +1 -1
  401. package/dist/components/pro/RichTextEditor/extensions/CodeBlockView.js +310 -344
  402. package/dist/components/pro/RichTextEditor/extensions/CodeBlockView.js.map +1 -1
  403. package/dist/components/pro/RichTextEditor/extensions/CommentMark.js +38 -39
  404. package/dist/components/pro/RichTextEditor/extensions/CommentMark.js.map +1 -1
  405. package/dist/components/pro/RichTextEditor/extensions/FloatingDialog.js +620 -625
  406. package/dist/components/pro/RichTextEditor/extensions/FloatingDialog.js.map +1 -1
  407. package/dist/components/pro/RichTextEditor/extensions/FontSize.js +25 -25
  408. package/dist/components/pro/RichTextEditor/extensions/FontSize.js.map +1 -1
  409. package/dist/components/pro/RichTextEditor/extensions/MarkdownBlock.js +167 -176
  410. package/dist/components/pro/RichTextEditor/extensions/MarkdownBlock.js.map +1 -1
  411. package/dist/components/pro/RichTextEditor/types.js +75 -75
  412. package/dist/components/pro/RichTextEditor/types.js.map +1 -1
  413. package/dist/contexts/AppContext.d.ts +1 -1
  414. package/dist/contexts/AppContext.js +216 -221
  415. package/dist/contexts/AppContext.js.map +1 -1
  416. package/dist/data-table.js +15 -41
  417. package/dist/data-table.js.map +1 -1
  418. package/dist/dishui.css +1 -1
  419. package/dist/flow.js +27 -83
  420. package/dist/hooks/useClickOutside.js +18 -18
  421. package/dist/hooks/useClickOutside.js.map +1 -1
  422. package/dist/hooks/useContainerElement.js +9 -9
  423. package/dist/hooks/useContainerElement.js.map +1 -1
  424. package/dist/hooks/useControllableState.js +33 -35
  425. package/dist/hooks/useControllableState.js.map +1 -1
  426. package/dist/hooks/useCopyToClipboard.js +16 -16
  427. package/dist/hooks/useCopyToClipboard.js.map +1 -1
  428. package/dist/hooks/useDebounce.js +14 -14
  429. package/dist/hooks/useDebounce.js.map +1 -1
  430. package/dist/hooks/useDraggable.js +50 -50
  431. package/dist/hooks/useDraggable.js.map +1 -1
  432. package/dist/hooks/useTableColumns.js +39 -41
  433. package/dist/hooks/useTableColumns.js.map +1 -1
  434. package/dist/hooks/useTableData.js +67 -68
  435. package/dist/hooks/useTableData.js.map +1 -1
  436. package/dist/index-nostyled.d.ts +8 -0
  437. package/dist/index.d.ts +27 -1
  438. package/dist/index.js +105 -241
  439. package/dist/layouts/MainLayout.js +56 -56
  440. package/dist/layouts/MainLayout.js.map +1 -1
  441. package/dist/layouts/Navbar.js +214 -214
  442. package/dist/layouts/Navbar.js.map +1 -1
  443. package/dist/layouts/Sidebar.js +184 -186
  444. package/dist/layouts/Sidebar.js.map +1 -1
  445. package/dist/layouts/headbar/Headbar.js +25 -25
  446. package/dist/layouts/headbar/Headbar.js.map +1 -1
  447. package/dist/layouts/headbar/HeadbarLangSwitcher.js +39 -39
  448. package/dist/layouts/headbar/HeadbarLangSwitcher.js.map +1 -1
  449. package/dist/layouts/headbar/HeadbarSearch.js +120 -120
  450. package/dist/layouts/headbar/HeadbarSearch.js.map +1 -1
  451. package/dist/layouts/headbar/HeadbarThemeSwitcher.js +27 -27
  452. package/dist/layouts/headbar/HeadbarThemeSwitcher.js.map +1 -1
  453. package/dist/layouts/headbar/HeadbarTitle.js +26 -26
  454. package/dist/layouts/headbar/HeadbarTitle.js.map +1 -1
  455. package/dist/lite.js +9 -24
  456. package/dist/markdown.js +4 -9
  457. package/dist/pages/components/Calendar/index.d.ts +3 -0
  458. package/dist/pages/components/Calendar/index.en.d.ts +3 -0
  459. package/dist/pages/components/Calendar/index.zh.d.ts +3 -0
  460. package/dist/pages/components/Chat/index.d.ts +3 -0
  461. package/dist/pages/components/Chat/index.en.d.ts +3 -0
  462. package/dist/pages/components/Chat/index.zh.d.ts +3 -0
  463. package/dist/pages/components/FloatWindow/index.d.ts +3 -0
  464. package/dist/pages/components/FloatWindow/index.en.d.ts +3 -0
  465. package/dist/pages/components/FloatWindow/index.zh.d.ts +3 -0
  466. package/dist/pages/components/Gantt/index.d.ts +3 -0
  467. package/dist/pages/components/Gantt/index.en.d.ts +3 -0
  468. package/dist/pages/components/Gantt/index.zh.d.ts +3 -0
  469. package/dist/pages/components/GridLayout/index.d.ts +3 -0
  470. package/dist/pages/components/GridLayout/index.en.d.ts +3 -0
  471. package/dist/pages/components/GridLayout/index.zh.d.ts +3 -0
  472. package/dist/pages/components/Notification/index.d.ts +3 -0
  473. package/dist/pages/components/Notification/index.en.d.ts +3 -0
  474. package/dist/pages/components/Notification/index.zh.d.ts +3 -0
  475. package/dist/pages/components/Resizable/index.d.ts +3 -0
  476. package/dist/pages/components/Resizable/index.en.d.ts +3 -0
  477. package/dist/pages/components/Resizable/index.zh.d.ts +3 -0
  478. package/dist/pages/components/Tab/index.d.ts +3 -0
  479. package/dist/pages/components/Tab/index.en.d.ts +3 -0
  480. package/dist/pages/components/Tab/index.zh.d.ts +3 -0
  481. package/dist/styles/themeStyles.js +87 -86
  482. package/dist/styles/themeStyles.js.map +1 -1
  483. package/dist/utils/cn.d.ts +13 -0
  484. package/dist/utils/cn.js +16 -0
  485. package/dist/utils/cn.js.map +1 -0
  486. package/dist/utils/i18n.js +690 -602
  487. package/dist/utils/i18n.js.map +1 -1
  488. package/dist/utils/menu.js +94 -94
  489. package/dist/utils/menu.js.map +1 -1
  490. package/dist/utils/rehype-code-meta.js +14 -14
  491. package/dist/utils/rehype-code-meta.js.map +1 -1
  492. package/dist/utils/remark-code-meta.js +9 -9
  493. package/dist/utils/remark-code-meta.js.map +1 -1
  494. package/dist/utils/routerBuilder.js +59 -60
  495. package/dist/utils/routerBuilder.js.map +1 -1
  496. package/dist/utils/selection.js +28 -29
  497. package/dist/utils/selection.js.map +1 -1
  498. package/dist/utils/themes.js +275 -255
  499. package/dist/utils/themes.js.map +1 -1
  500. package/package.json +19 -6
@@ -1,529 +1,175 @@
1
- import { useEffect as p, useRef as d, useState as m } from "react";
2
- import { jsx as t, jsxs as a } from "react/jsx-runtime";
3
- var l = [
4
- {
5
- key: "flowchart",
6
- labelKey: "mdTplFlowchart",
7
- icon: "🔀",
8
- content: `## Flowchart
9
-
10
- \`\`\`mermaid
11
- graph TD
12
- A[Start] --> B{Is it valid?}
13
- B -->|Yes| C[Process Data]
14
- B -->|No| D[Show Error]
15
- C --> E[Save to DB]
16
- E --> F[Send Response]
17
- D --> G[Log Warning]
18
- G --> A
19
- F --> H[End]
20
- \`\`\`
21
- `
22
- },
23
- {
24
- key: "sequence",
25
- labelKey: "mdTplSequence",
26
- icon: "🔄",
27
- content: `## Sequence Diagram
28
-
29
- \`\`\`mermaid
30
- sequenceDiagram
31
- participant Browser
32
- participant Server
33
- participant Database
34
- participant Cache
35
-
36
- Browser->>Server: POST /api/login
37
- Server->>Database: Query user
38
- Database-->>Server: User record
39
- Server->>Cache: Store session
40
- Cache-->>Server: OK
41
- Server-->>Browser: 200 JWT Token
42
- Browser->>Server: GET /api/data (Bearer token)
43
- Server->>Cache: Validate session
44
- Cache-->>Server: Valid
45
- Server->>Database: Fetch data
46
- Database-->>Server: Result set
47
- Server-->>Browser: 200 JSON data
48
- \`\`\`
49
- `
50
- },
51
- {
52
- key: "pie",
53
- labelKey: "mdTplPieChart",
54
- icon: "🥧",
55
- content: `## Pie Chart
56
-
57
- \`\`\`mermaid
58
- pie title Tech Stack Usage 2025
59
- "TypeScript" : 35
60
- "Python" : 25
61
- "Rust" : 15
62
- "Go" : 12
63
- "Java" : 8
64
- "Others" : 5
65
- \`\`\`
66
- `
67
- },
68
- {
69
- key: "gantt",
70
- labelKey: "mdTplGantt",
71
- icon: "📊",
72
- content: `## Gantt Chart
73
-
74
- \`\`\`mermaid
75
- gantt
76
- title Project Development Timeline
77
- dateFormat YYYY-MM-DD
78
- section Design
79
- UI/UX Design :a1, 2025-01-01, 20d
80
- API Design :a2, after a1, 10d
81
- section Frontend
82
- Component Library :b1, after a2, 25d
83
- Page Integration :b2, after b1, 15d
84
- Testing & Bug Fix :b3, after b2, 10d
85
- section Backend
86
- Core API Development :c1, after a2, 30d
87
- Database Optimization :c2, after c1, 10d
88
- section Deployment
89
- Staging Deploy :d1, after b3, 5d
90
- Production Release :milestone, after d1, 0d
91
- \`\`\`
92
- `
93
- },
94
- {
95
- key: "xychart",
96
- labelKey: "mdTplBarChart",
97
- icon: "📈",
98
- content: `## Bar Chart (xychart)
99
-
100
- \`\`\`mermaid
101
- xychart-beta
102
- title "Monthly Revenue (in thousands)"
103
- x-axis [Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec]
104
- y-axis "Revenue (USD)" 0 --> 120
105
- bar [52, 48, 61, 55, 72, 68, 85, 90, 78, 95, 102, 110]
106
- line [52, 48, 61, 55, 72, 68, 85, 90, 78, 95, 102, 110]
107
- \`\`\`
108
- `
109
- },
110
- {
111
- key: "python",
112
- labelKey: "mdTplPython",
113
- icon: "🐍",
114
- content: `## Python Example
115
-
116
- \`\`\`python
117
- import asyncio
118
- from dataclasses import dataclass, field
119
- from typing import AsyncIterator
120
-
121
-
122
- @dataclass
123
- class DataPipeline:
124
- """Async data processing pipeline."""
125
- name: str
126
- buffer_size: int = 100
127
- _queue: asyncio.Queue = field(init=False)
128
-
129
- def __post_init__(self):
130
- self._queue = asyncio.Queue(maxsize=self.buffer_size)
131
-
132
- async def produce(self, items: list[int]) -> None:
133
- for item in items:
134
- transformed = item ** 2 + 2 * item + 1
135
- await self._queue.put(transformed)
136
- await self._queue.put(None) # sentinel
137
-
138
- async def consume(self) -> AsyncIterator[int]:
139
- while True:
140
- item = await self._queue.get()
141
- if item is None:
142
- break
143
- yield item
144
-
145
- async def run(self, data: list[int]) -> list[int]:
146
- results: list[int] = []
147
- producer = asyncio.create_task(self.produce(data))
148
- async for value in self.consume():
149
- results.append(value)
150
- await producer
151
- return results
152
-
153
-
154
- async def main():
155
- pipeline = DataPipeline(name="squares", buffer_size=50)
156
- data = list(range(1, 21))
157
- results = await pipeline.run(data)
158
- print(f"Processed {len(results)} items: {results[:5]}...")
159
-
160
-
161
- if __name__ == "__main__":
162
- asyncio.run(main())
163
- \`\`\`
164
- `
165
- },
166
- {
167
- key: "typescript",
168
- labelKey: "mdTplTypeScript",
169
- icon: "🟦",
170
- content: `## TypeScript Example
171
-
172
- \`\`\`typescript
173
- interface APIResponse<T> {
174
- data: T;
175
- status: number;
176
- message: string;
177
- timestamp: Date;
178
- }
179
-
180
- type HttpMethod = 'GET' | 'POST' | 'PUT' | 'DELETE';
181
-
182
- class TypedFetcher {
183
- private baseUrl: string;
184
- private headers: Record<string, string>;
185
-
186
- constructor(baseUrl: string, token?: string) {
187
- this.baseUrl = baseUrl;
188
- this.headers = {
189
- 'Content-Type': 'application/json',
190
- ...(token ? { Authorization: \\\`Bearer \\\${token}\\\` } : {}),
191
- };
192
- }
193
-
194
- async request<T>(
195
- method: HttpMethod,
196
- path: string,
197
- body?: unknown,
198
- ): Promise<APIResponse<T>> {
199
- const response = await fetch(\\\`\\\${this.baseUrl}\\\${path}\\\`, {
200
- method,
201
- headers: this.headers,
202
- body: body ? JSON.stringify(body) : undefined,
203
- });
204
-
205
- if (!response.ok) {
206
- throw new Error(\\\`HTTP \\\${response.status}: \\\${response.statusText}\\\`);
207
- }
208
-
209
- return response.json() as Promise<APIResponse<T>>;
210
- }
211
-
212
- get<T>(path: string) { return this.request<T>('GET', path); }
213
- post<T>(path: string, body: unknown) { return this.request<T>('POST', path, body); }
214
- put<T>(path: string, body: unknown) { return this.request<T>('PUT', path, body); }
215
- delete<T>(path: string) { return this.request<T>('DELETE', path); }
216
- }
217
-
218
- // Usage
219
- interface User {
220
- id: number;
221
- name: string;
222
- email: string;
223
- }
224
-
225
- const api = new TypedFetcher('https://api.example.com', 'my-token');
226
- const users = await api.get<User[]>('/users');
227
- console.log(users.data);
228
- \`\`\`
229
- `
230
- },
231
- {
232
- key: "rust",
233
- labelKey: "mdTplRust",
234
- icon: "🦀",
235
- content: `## Rust Example
236
-
237
- \`\`\`rust
238
- use std::collections::HashMap;
239
- use std::sync::Arc;
240
- use tokio::sync::RwLock;
241
-
242
- #[derive(Debug, Clone)]
243
- struct CacheEntry<V: Clone> {
244
- value: V,
245
- expires_at: std::time::Instant,
246
- }
247
-
248
- #[derive(Clone)]
249
- struct AsyncCache<V: Clone + Send + Sync + 'static> {
250
- store: Arc<RwLock<HashMap<String, CacheEntry<V>>>>,
251
- ttl: std::time::Duration,
252
- }
253
-
254
- impl<V: Clone + Send + Sync + 'static> AsyncCache<V> {
255
- fn new(ttl_secs: u64) -> Self {
256
- Self {
257
- store: Arc::new(RwLock::new(HashMap::new())),
258
- ttl: std::time::Duration::from_secs(ttl_secs),
259
- }
260
- }
261
-
262
- async fn get(&self, key: &str) -> Option<V> {
263
- let store = self.store.read().await;
264
- store.get(key).and_then(|entry| {
265
- if entry.expires_at > std::time::Instant::now() {
266
- Some(entry.value.clone())
267
- } else {
268
- None
269
- }
270
- })
271
- }
272
-
273
- async fn set(&self, key: String, value: V) {
274
- let mut store = self.store.write().await;
275
- store.insert(key, CacheEntry {
276
- value,
277
- expires_at: std::time::Instant::now() + self.ttl,
278
- });
279
- }
280
-
281
- async fn cleanup(&self) -> usize {
282
- let mut store = self.store.write().await;
283
- let now = std::time::Instant::now();
284
- let before = store.len();
285
- store.retain(|_, entry| entry.expires_at > now);
286
- before - store.len()
287
- }
288
- }
289
-
290
- #[tokio::main]
291
- async fn main() {
292
- let cache = AsyncCache::<String>::new(60);
293
- cache.set("hello".into(), "world".into()).await;
294
-
295
- if let Some(val) = cache.get("hello").await {
296
- println!("Got: {val}");
297
- }
298
- }
299
- \`\`\`
300
- `
301
- },
302
- {
303
- key: "math",
304
- labelKey: "mdTplMath",
305
- icon: "🔢",
306
- content: `## Math Formulas (TeX)
307
-
308
- ### Euler's Identity
309
-
310
- $$
311
- e^{i\\pi} + 1 = 0
312
- $$
313
-
314
- ### Quadratic Formula
315
-
316
- $$
317
- x = \\frac{-b \\pm \\sqrt{b^2 - 4ac}}{2a}
318
- $$
319
-
320
- ### Gaussian Integral
321
-
322
- $$
323
- \\int_{-\\infty}^{\\infty} e^{-x^2} \\, dx = \\sqrt{\\pi}
324
- $$
325
-
326
- ### Maxwell's Equations
327
-
328
- $$
329
- \\nabla \\cdot \\mathbf{E} = \\frac{\\rho}{\\epsilon_0}
330
- $$
331
-
332
- $$
333
- \\nabla \\cdot \\mathbf{B} = 0
334
- $$
335
-
336
- $$
337
- \\nabla \\times \\mathbf{E} = -\\frac{\\partial \\mathbf{B}}{\\partial t}
338
- $$
339
-
340
- $$
341
- \\nabla \\times \\mathbf{B} = \\mu_0 \\mathbf{J} + \\mu_0 \\epsilon_0 \\frac{\\partial \\mathbf{E}}{\\partial t}
342
- $$
343
-
344
- ### Taylor Series Expansion
345
-
346
- $$
347
- f(x) = \\sum_{n=0}^{\\infty} \\frac{f^{(n)}(a)}{n!}(x-a)^n
348
- $$
349
-
350
- ### Matrix Notation
351
-
352
- $$
353
- \\mathbf{A} = \\begin{pmatrix} a_{11} & a_{12} & \\cdots & a_{1n} \\\\ a_{21} & a_{22} & \\cdots & a_{2n} \\\\ \\vdots & \\vdots & \\ddots & \\vdots \\\\ a_{m1} & a_{m2} & \\cdots & a_{mn} \\end{pmatrix}
354
- $$
355
-
356
- ### Inline math: The identity $e^{i\\theta} = \\cos\\theta + i\\sin\\theta$ is known as Euler's formula.
357
- `
358
- },
359
- {
360
- key: "mixed",
361
- labelKey: "mdTplMixed",
362
- icon: "🎨",
363
- content: `## Mixed Content Example
364
-
365
- ### Architecture Overview
366
-
367
- \`\`\`mermaid
368
- graph LR
369
- Client[Client App] --> Gateway[API Gateway]
370
- Gateway --> Auth[Auth Service]
371
- Gateway --> Core[Core Service]
372
- Core --> DB[(PostgreSQL)]
373
- Core --> Cache[(Redis)]
374
- Auth --> DB
375
- \`\`\`
376
-
377
- ### Performance Formula
378
-
379
- The response time $T$ is calculated as:
380
-
381
- $$
382
- T = T_{network} + T_{processing} + T_{db}
383
- $$
384
-
385
- where $T_{db} = O(\\log n)$ with proper indexing.
386
-
387
- ### Implementation
388
-
389
- \`\`\`python
390
- from fastapi import FastAPI, Depends
391
- from functools import lru_cache
392
-
393
- app = FastAPI()
394
-
395
- @lru_cache(maxsize=256)
396
- def compute_heavy(n: int) -> float:
397
- """Cached computation: O(log n) amortized."""
398
- return sum(1.0 / i for i in range(1, n + 1))
399
-
400
- @app.get("/api/harmonic/{n}")
401
- async def harmonic(n: int):
402
- result = compute_heavy(n)
403
- return {"n": n, "H_n": round(result, 6)}
404
- \`\`\`
405
-
406
- ### Project Status
407
-
408
- \`\`\`mermaid
409
- pie title Sprint Progress
410
- "Completed" : 65
411
- "In Progress" : 20
412
- "Blocked" : 10
413
- "Not Started" : 5
414
- \`\`\`
415
- `
416
- }
417
- ], f = ({ labels: r, onSelect: s }) => {
418
- const [i, n] = m(!1), o = d(null);
419
- return p(() => {
420
- const e = (c) => {
421
- o.current && !o.current.contains(c.target) && n(!1);
422
- };
423
- return document.addEventListener("mousedown", e), () => document.removeEventListener("mousedown", e);
424
- }, []), /* @__PURE__ */ a("div", {
425
- ref: o,
426
- className: "rte-toolbar__template-menu",
427
- children: [/* @__PURE__ */ a("button", {
428
- type: "button",
429
- className: `rte-toolbar__btn ${i ? "rte-toolbar__btn--active" : ""}`,
430
- onClick: () => n(!i),
431
- title: r.mdTemplates || "Markdown Templates",
432
- style: {
433
- width: "auto",
434
- padding: "0 6px",
435
- gap: "2px",
436
- display: "inline-flex",
437
- alignItems: "center"
438
- },
439
- children: [/* @__PURE__ */ a("svg", {
440
- width: "16",
441
- height: "16",
442
- viewBox: "0 0 24 24",
443
- fill: "none",
444
- stroke: "currentColor",
445
- strokeWidth: "2",
446
- strokeLinecap: "round",
447
- strokeLinejoin: "round",
448
- children: [
449
- /* @__PURE__ */ t("path", { d: "M2 3h20v18H2z" }),
450
- /* @__PURE__ */ t("path", { d: "M5 15V9l3 3.5L11 9v6" }),
451
- /* @__PURE__ */ t("path", { d: "M17 9l-2.5 3H17v3" })
452
- ]
453
- }), /* @__PURE__ */ t("svg", {
454
- width: "10",
455
- height: "10",
456
- viewBox: "0 0 24 24",
457
- fill: "none",
458
- stroke: "currentColor",
459
- strokeWidth: "2.5",
460
- children: /* @__PURE__ */ t("polyline", { points: "6 9 12 15 18 9" })
461
- })]
462
- }), i && /* @__PURE__ */ a("div", {
463
- className: "rte-toolbar__template-dropdown",
464
- children: [
465
- /* @__PURE__ */ t("div", {
466
- className: "rte-toolbar__template-group-label",
467
- children: "Mermaid"
468
- }),
469
- l.filter((e) => [
470
- "flowchart",
471
- "sequence",
472
- "pie",
473
- "gantt",
474
- "xychart"
475
- ].includes(e.key)).map((e) => /* @__PURE__ */ a("button", {
476
- type: "button",
477
- className: "rte-toolbar__template-item",
478
- onClick: () => {
479
- s(e.content), n(!1);
480
- },
481
- children: [/* @__PURE__ */ t("span", {
482
- className: "rte-toolbar__template-icon",
483
- children: e.icon
484
- }), /* @__PURE__ */ t("span", { children: r[e.labelKey] || e.labelKey })]
485
- }, e.key)),
486
- /* @__PURE__ */ t("div", {
487
- className: "rte-toolbar__template-group-label",
488
- children: "Code"
489
- }),
490
- l.filter((e) => [
491
- "python",
492
- "typescript",
493
- "rust"
494
- ].includes(e.key)).map((e) => /* @__PURE__ */ a("button", {
495
- type: "button",
496
- className: "rte-toolbar__template-item",
497
- onClick: () => {
498
- s(e.content), n(!1);
499
- },
500
- children: [/* @__PURE__ */ t("span", {
501
- className: "rte-toolbar__template-icon",
502
- children: e.icon
503
- }), /* @__PURE__ */ t("span", { children: r[e.labelKey] || e.labelKey })]
504
- }, e.key)),
505
- /* @__PURE__ */ t("div", {
506
- className: "rte-toolbar__template-group-label",
507
- children: "Math / Mixed"
508
- }),
509
- l.filter((e) => ["math", "mixed"].includes(e.key)).map((e) => /* @__PURE__ */ a("button", {
510
- type: "button",
511
- className: "rte-toolbar__template-item",
512
- onClick: () => {
513
- s(e.content), n(!1);
514
- },
515
- children: [/* @__PURE__ */ t("span", {
516
- className: "rte-toolbar__template-icon",
517
- children: e.icon
518
- }), /* @__PURE__ */ t("span", { children: r[e.labelKey] || e.labelKey })]
519
- }, e.key))
520
- ]
521
- })]
522
- });
523
- };
524
- export {
525
- l as MD_TEMPLATES,
526
- f as MarkdownTemplateMenu
1
+ import { useEffect as e, useRef as t, useState as n } from "react";
2
+ import { jsx as r, jsxs as i } from "react/jsx-runtime";
3
+ //#region src/components/pro/RichTextEditor/Toolbar/MarkdownTemplates.tsx
4
+ var a = [
5
+ {
6
+ key: "flowchart",
7
+ labelKey: "mdTplFlowchart",
8
+ icon: "🔀",
9
+ content: "## Flowchart\n\n```mermaid\ngraph TD\n A[Start] --> B{Is it valid?}\n B -->|Yes| C[Process Data]\n B -->|No| D[Show Error]\n C --> E[Save to DB]\n E --> F[Send Response]\n D --> G[Log Warning]\n G --> A\n F --> H[End]\n```\n"
10
+ },
11
+ {
12
+ key: "sequence",
13
+ labelKey: "mdTplSequence",
14
+ icon: "🔄",
15
+ content: "## Sequence Diagram\n\n```mermaid\nsequenceDiagram\n participant Browser\n participant Server\n participant Database\n participant Cache\n\n Browser->>Server: POST /api/login\n Server->>Database: Query user\n Database-->>Server: User record\n Server->>Cache: Store session\n Cache-->>Server: OK\n Server-->>Browser: 200 JWT Token\n Browser->>Server: GET /api/data (Bearer token)\n Server->>Cache: Validate session\n Cache-->>Server: Valid\n Server->>Database: Fetch data\n Database-->>Server: Result set\n Server-->>Browser: 200 JSON data\n```\n"
16
+ },
17
+ {
18
+ key: "pie",
19
+ labelKey: "mdTplPieChart",
20
+ icon: "🥧",
21
+ content: "## Pie Chart\n\n```mermaid\npie title Tech Stack Usage 2025\n \"TypeScript\" : 35\n \"Python\" : 25\n \"Rust\" : 15\n \"Go\" : 12\n \"Java\" : 8\n \"Others\" : 5\n```\n"
22
+ },
23
+ {
24
+ key: "gantt",
25
+ labelKey: "mdTplGantt",
26
+ icon: "📊",
27
+ content: "## Gantt Chart\n\n```mermaid\ngantt\n title Project Development Timeline\n dateFormat YYYY-MM-DD\n section Design\n UI/UX Design :a1, 2025-01-01, 20d\n API Design :a2, after a1, 10d\n section Frontend\n Component Library :b1, after a2, 25d\n Page Integration :b2, after b1, 15d\n Testing & Bug Fix :b3, after b2, 10d\n section Backend\n Core API Development :c1, after a2, 30d\n Database Optimization :c2, after c1, 10d\n section Deployment\n Staging Deploy :d1, after b3, 5d\n Production Release :milestone, after d1, 0d\n```\n"
28
+ },
29
+ {
30
+ key: "xychart",
31
+ labelKey: "mdTplBarChart",
32
+ icon: "📈",
33
+ content: "## Bar Chart (xychart)\n\n```mermaid\nxychart-beta\n title \"Monthly Revenue (in thousands)\"\n x-axis [Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec]\n y-axis \"Revenue (USD)\" 0 --> 120\n bar [52, 48, 61, 55, 72, 68, 85, 90, 78, 95, 102, 110]\n line [52, 48, 61, 55, 72, 68, 85, 90, 78, 95, 102, 110]\n```\n"
34
+ },
35
+ {
36
+ key: "python",
37
+ labelKey: "mdTplPython",
38
+ icon: "🐍",
39
+ content: "## Python Example\n\n```python\nimport asyncio\nfrom dataclasses import dataclass, field\nfrom typing import AsyncIterator\n\n\n@dataclass\nclass DataPipeline:\n \"\"\"Async data processing pipeline.\"\"\"\n name: str\n buffer_size: int = 100\n _queue: asyncio.Queue = field(init=False)\n\n def __post_init__(self):\n self._queue = asyncio.Queue(maxsize=self.buffer_size)\n\n async def produce(self, items: list[int]) -> None:\n for item in items:\n transformed = item ** 2 + 2 * item + 1\n await self._queue.put(transformed)\n await self._queue.put(None) # sentinel\n\n async def consume(self) -> AsyncIterator[int]:\n while True:\n item = await self._queue.get()\n if item is None:\n break\n yield item\n\n async def run(self, data: list[int]) -> list[int]:\n results: list[int] = []\n producer = asyncio.create_task(self.produce(data))\n async for value in self.consume():\n results.append(value)\n await producer\n return results\n\n\nasync def main():\n pipeline = DataPipeline(name=\"squares\", buffer_size=50)\n data = list(range(1, 21))\n results = await pipeline.run(data)\n print(f\"Processed {len(results)} items: {results[:5]}...\")\n\n\nif __name__ == \"__main__\":\n asyncio.run(main())\n```\n"
40
+ },
41
+ {
42
+ key: "typescript",
43
+ labelKey: "mdTplTypeScript",
44
+ icon: "🟦",
45
+ content: "## TypeScript Example\n\n```typescript\ninterface APIResponse<T> {\n data: T;\n status: number;\n message: string;\n timestamp: Date;\n}\n\ntype HttpMethod = 'GET' | 'POST' | 'PUT' | 'DELETE';\n\nclass TypedFetcher {\n private baseUrl: string;\n private headers: Record<string, string>;\n\n constructor(baseUrl: string, token?: string) {\n this.baseUrl = baseUrl;\n this.headers = {\n 'Content-Type': 'application/json',\n ...(token ? { Authorization: \\`Bearer \\${token}\\` } : {}),\n };\n }\n\n async request<T>(\n method: HttpMethod,\n path: string,\n body?: unknown,\n ): Promise<APIResponse<T>> {\n const response = await fetch(\\`\\${this.baseUrl}\\${path}\\`, {\n method,\n headers: this.headers,\n body: body ? JSON.stringify(body) : undefined,\n });\n\n if (!response.ok) {\n throw new Error(\\`HTTP \\${response.status}: \\${response.statusText}\\`);\n }\n\n return response.json() as Promise<APIResponse<T>>;\n }\n\n get<T>(path: string) { return this.request<T>('GET', path); }\n post<T>(path: string, body: unknown) { return this.request<T>('POST', path, body); }\n put<T>(path: string, body: unknown) { return this.request<T>('PUT', path, body); }\n delete<T>(path: string) { return this.request<T>('DELETE', path); }\n}\n\n// Usage\ninterface User {\n id: number;\n name: string;\n email: string;\n}\n\nconst api = new TypedFetcher('https://api.example.com', 'my-token');\nconst users = await api.get<User[]>('/users');\nconsole.log(users.data);\n```\n"
46
+ },
47
+ {
48
+ key: "rust",
49
+ labelKey: "mdTplRust",
50
+ icon: "🦀",
51
+ content: "## Rust Example\n\n```rust\nuse std::collections::HashMap;\nuse std::sync::Arc;\nuse tokio::sync::RwLock;\n\n#[derive(Debug, Clone)]\nstruct CacheEntry<V: Clone> {\n value: V,\n expires_at: std::time::Instant,\n}\n\n#[derive(Clone)]\nstruct AsyncCache<V: Clone + Send + Sync + 'static> {\n store: Arc<RwLock<HashMap<String, CacheEntry<V>>>>,\n ttl: std::time::Duration,\n}\n\nimpl<V: Clone + Send + Sync + 'static> AsyncCache<V> {\n fn new(ttl_secs: u64) -> Self {\n Self {\n store: Arc::new(RwLock::new(HashMap::new())),\n ttl: std::time::Duration::from_secs(ttl_secs),\n }\n }\n\n async fn get(&self, key: &str) -> Option<V> {\n let store = self.store.read().await;\n store.get(key).and_then(|entry| {\n if entry.expires_at > std::time::Instant::now() {\n Some(entry.value.clone())\n } else {\n None\n }\n })\n }\n\n async fn set(&self, key: String, value: V) {\n let mut store = self.store.write().await;\n store.insert(key, CacheEntry {\n value,\n expires_at: std::time::Instant::now() + self.ttl,\n });\n }\n\n async fn cleanup(&self) -> usize {\n let mut store = self.store.write().await;\n let now = std::time::Instant::now();\n let before = store.len();\n store.retain(|_, entry| entry.expires_at > now);\n before - store.len()\n }\n}\n\n#[tokio::main]\nasync fn main() {\n let cache = AsyncCache::<String>::new(60);\n cache.set(\"hello\".into(), \"world\".into()).await;\n\n if let Some(val) = cache.get(\"hello\").await {\n println!(\"Got: {val}\");\n }\n}\n```\n"
52
+ },
53
+ {
54
+ key: "math",
55
+ labelKey: "mdTplMath",
56
+ icon: "🔢",
57
+ content: "## Math Formulas (TeX)\n\n### Euler's Identity\n\n$$\ne^{i\\pi} + 1 = 0\n$$\n\n### Quadratic Formula\n\n$$\nx = \\frac{-b \\pm \\sqrt{b^2 - 4ac}}{2a}\n$$\n\n### Gaussian Integral\n\n$$\n\\int_{-\\infty}^{\\infty} e^{-x^2} \\, dx = \\sqrt{\\pi}\n$$\n\n### Maxwell's Equations\n\n$$\n\\nabla \\cdot \\mathbf{E} = \\frac{\\rho}{\\epsilon_0}\n$$\n\n$$\n\\nabla \\cdot \\mathbf{B} = 0\n$$\n\n$$\n\\nabla \\times \\mathbf{E} = -\\frac{\\partial \\mathbf{B}}{\\partial t}\n$$\n\n$$\n\\nabla \\times \\mathbf{B} = \\mu_0 \\mathbf{J} + \\mu_0 \\epsilon_0 \\frac{\\partial \\mathbf{E}}{\\partial t}\n$$\n\n### Taylor Series Expansion\n\n$$\nf(x) = \\sum_{n=0}^{\\infty} \\frac{f^{(n)}(a)}{n!}(x-a)^n\n$$\n\n### Matrix Notation\n\n$$\n\\mathbf{A} = \\begin{pmatrix} a_{11} & a_{12} & \\cdots & a_{1n} \\\\ a_{21} & a_{22} & \\cdots & a_{2n} \\\\ \\vdots & \\vdots & \\ddots & \\vdots \\\\ a_{m1} & a_{m2} & \\cdots & a_{mn} \\end{pmatrix}\n$$\n\n### Inline math: The identity $e^{i\\theta} = \\cos\\theta + i\\sin\\theta$ is known as Euler's formula.\n"
58
+ },
59
+ {
60
+ key: "mixed",
61
+ labelKey: "mdTplMixed",
62
+ icon: "🎨",
63
+ content: "## Mixed Content Example\n\n### Architecture Overview\n\n```mermaid\ngraph LR\n Client[Client App] --> Gateway[API Gateway]\n Gateway --> Auth[Auth Service]\n Gateway --> Core[Core Service]\n Core --> DB[(PostgreSQL)]\n Core --> Cache[(Redis)]\n Auth --> DB\n```\n\n### Performance Formula\n\nThe response time $T$ is calculated as:\n\n$$\nT = T_{network} + T_{processing} + T_{db}\n$$\n\nwhere $T_{db} = O(\\log n)$ with proper indexing.\n\n### Implementation\n\n```python\nfrom fastapi import FastAPI, Depends\nfrom functools import lru_cache\n\napp = FastAPI()\n\n@lru_cache(maxsize=256)\ndef compute_heavy(n: int) -> float:\n \"\"\"Cached computation: O(log n) amortized.\"\"\"\n return sum(1.0 / i for i in range(1, n + 1))\n\n@app.get(\"/api/harmonic/{n}\")\nasync def harmonic(n: int):\n result = compute_heavy(n)\n return {\"n\": n, \"H_n\": round(result, 6)}\n```\n\n### Project Status\n\n```mermaid\npie title Sprint Progress\n \"Completed\" : 65\n \"In Progress\" : 20\n \"Blocked\" : 10\n \"Not Started\" : 5\n```\n"
64
+ }
65
+ ], o = ({ labels: o, onSelect: s }) => {
66
+ let [c, l] = n(!1), u = t(null);
67
+ return e(() => {
68
+ let e = (e) => {
69
+ u.current && !u.current.contains(e.target) && l(!1);
70
+ };
71
+ return document.addEventListener("mousedown", e), () => document.removeEventListener("mousedown", e);
72
+ }, []), /* @__PURE__ */ i("div", {
73
+ ref: u,
74
+ className: "rte-toolbar__template-menu",
75
+ children: [/* @__PURE__ */ i("button", {
76
+ type: "button",
77
+ className: `rte-toolbar__btn ${c ? "rte-toolbar__btn--active" : ""}`,
78
+ onClick: () => l(!c),
79
+ title: o.mdTemplates || "Markdown Templates",
80
+ style: {
81
+ width: "auto",
82
+ padding: "0 6px",
83
+ gap: "2px",
84
+ display: "inline-flex",
85
+ alignItems: "center"
86
+ },
87
+ children: [/* @__PURE__ */ i("svg", {
88
+ width: "16",
89
+ height: "16",
90
+ viewBox: "0 0 24 24",
91
+ fill: "none",
92
+ stroke: "currentColor",
93
+ strokeWidth: "2",
94
+ strokeLinecap: "round",
95
+ strokeLinejoin: "round",
96
+ children: [
97
+ /* @__PURE__ */ r("path", { d: "M2 3h20v18H2z" }),
98
+ /* @__PURE__ */ r("path", { d: "M5 15V9l3 3.5L11 9v6" }),
99
+ /* @__PURE__ */ r("path", { d: "M17 9l-2.5 3H17v3" })
100
+ ]
101
+ }), /* @__PURE__ */ r("svg", {
102
+ width: "10",
103
+ height: "10",
104
+ viewBox: "0 0 24 24",
105
+ fill: "none",
106
+ stroke: "currentColor",
107
+ strokeWidth: "2.5",
108
+ children: /* @__PURE__ */ r("polyline", { points: "6 9 12 15 18 9" })
109
+ })]
110
+ }), c && /* @__PURE__ */ i("div", {
111
+ className: "rte-toolbar__template-dropdown",
112
+ children: [
113
+ /* @__PURE__ */ r("div", {
114
+ className: "rte-toolbar__template-group-label",
115
+ children: "Mermaid"
116
+ }),
117
+ a.filter((e) => [
118
+ "flowchart",
119
+ "sequence",
120
+ "pie",
121
+ "gantt",
122
+ "xychart"
123
+ ].includes(e.key)).map((e) => /* @__PURE__ */ i("button", {
124
+ type: "button",
125
+ className: "rte-toolbar__template-item",
126
+ onClick: () => {
127
+ s(e.content), l(!1);
128
+ },
129
+ children: [/* @__PURE__ */ r("span", {
130
+ className: "rte-toolbar__template-icon",
131
+ children: e.icon
132
+ }), /* @__PURE__ */ r("span", { children: o[e.labelKey] || e.labelKey })]
133
+ }, e.key)),
134
+ /* @__PURE__ */ r("div", {
135
+ className: "rte-toolbar__template-group-label",
136
+ children: "Code"
137
+ }),
138
+ a.filter((e) => [
139
+ "python",
140
+ "typescript",
141
+ "rust"
142
+ ].includes(e.key)).map((e) => /* @__PURE__ */ i("button", {
143
+ type: "button",
144
+ className: "rte-toolbar__template-item",
145
+ onClick: () => {
146
+ s(e.content), l(!1);
147
+ },
148
+ children: [/* @__PURE__ */ r("span", {
149
+ className: "rte-toolbar__template-icon",
150
+ children: e.icon
151
+ }), /* @__PURE__ */ r("span", { children: o[e.labelKey] || e.labelKey })]
152
+ }, e.key)),
153
+ /* @__PURE__ */ r("div", {
154
+ className: "rte-toolbar__template-group-label",
155
+ children: "Math / Mixed"
156
+ }),
157
+ a.filter((e) => ["math", "mixed"].includes(e.key)).map((e) => /* @__PURE__ */ i("button", {
158
+ type: "button",
159
+ className: "rte-toolbar__template-item",
160
+ onClick: () => {
161
+ s(e.content), l(!1);
162
+ },
163
+ children: [/* @__PURE__ */ r("span", {
164
+ className: "rte-toolbar__template-icon",
165
+ children: e.icon
166
+ }), /* @__PURE__ */ r("span", { children: o[e.labelKey] || e.labelKey })]
167
+ }, e.key))
168
+ ]
169
+ })]
170
+ });
527
171
  };
172
+ //#endregion
173
+ export { a as MD_TEMPLATES, o as MarkdownTemplateMenu };
528
174
 
529
175
  //# sourceMappingURL=MarkdownTemplates.js.map