dishui 0.0.64 → 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 (504) 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 +11 -13
  5. package/dist/components/Badge/index.js.map +1 -1
  6. package/dist/components/Button/index.js +62 -86
  7. package/dist/components/Button/index.js.map +1 -1
  8. package/dist/components/Card/index.d.ts +87 -0
  9. package/dist/components/Card/index.js +178 -44
  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 -63
  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.d.ts +4 -1
  30. package/dist/components/EmptyState/index.js +24 -24
  31. package/dist/components/EmptyState/index.js.map +1 -1
  32. package/dist/components/FileUploader/DropZone.js +134 -136
  33. package/dist/components/FileUploader/DropZone.js.map +1 -1
  34. package/dist/components/FileUploader/FileItem.js +159 -163
  35. package/dist/components/FileUploader/FileItem.js.map +1 -1
  36. package/dist/components/FileUploader/FileUploader.js +126 -127
  37. package/dist/components/FileUploader/FileUploader.js.map +1 -1
  38. package/dist/components/FileUploader/UploadQueue.js +62 -62
  39. package/dist/components/FileUploader/UploadQueue.js.map +1 -1
  40. package/dist/components/FloatWindow/index.d.ts +28 -0
  41. package/dist/components/GridLayout/index.d.ts +42 -0
  42. package/dist/components/Icon/index.d.ts +24 -0
  43. package/dist/components/Icon/index.js +26 -0
  44. package/dist/components/Icon/index.js.map +1 -0
  45. package/dist/components/Image/index.d.ts +33 -0
  46. package/dist/components/Image/index.js +44 -0
  47. package/dist/components/Image/index.js.map +1 -0
  48. package/dist/components/Input/index.js +196 -197
  49. package/dist/components/Input/index.js.map +1 -1
  50. package/dist/components/Label/index.js +62 -73
  51. package/dist/components/Label/index.js.map +1 -1
  52. package/dist/components/Layout/index.js +134 -139
  53. package/dist/components/Layout/index.js.map +1 -1
  54. package/dist/components/List/index.js +45 -43
  55. package/dist/components/List/index.js.map +1 -1
  56. package/dist/components/Markdown/Markdown.js +106 -103
  57. package/dist/components/Markdown/Markdown.js.map +1 -1
  58. package/dist/components/Markdown/codeThemes.js +24 -33
  59. package/dist/components/Markdown/codeThemes.js.map +1 -1
  60. package/dist/components/Markdown/markdownComponents.js +203 -208
  61. package/dist/components/Markdown/markdownComponents.js.map +1 -1
  62. package/dist/components/Markdown/parseCodeBlockMeta.js +22 -22
  63. package/dist/components/Markdown/parseCodeBlockMeta.js.map +1 -1
  64. package/dist/components/Markdown/useMarkdownSource.js +46 -46
  65. package/dist/components/Markdown/useMarkdownSource.js.map +1 -1
  66. package/dist/components/Markdown/useMarkmapRenderer.js +35 -36
  67. package/dist/components/Markdown/useMarkmapRenderer.js.map +1 -1
  68. package/dist/components/Markdown/useMermaidRenderer.js +41 -42
  69. package/dist/components/Markdown/useMermaidRenderer.js.map +1 -1
  70. package/dist/components/Modal/index.d.ts +7 -3
  71. package/dist/components/Modal/index.js +82 -70
  72. package/dist/components/Modal/index.js.map +1 -1
  73. package/dist/components/MultipleChoice/index.d.ts +44 -0
  74. package/dist/components/MultipleChoice/index.js +52 -0
  75. package/dist/components/MultipleChoice/index.js.map +1 -0
  76. package/dist/components/Notification/index.d.ts +17 -0
  77. package/dist/components/Page/index.d.ts +58 -0
  78. package/dist/components/Page/index.js +43 -0
  79. package/dist/components/Page/index.js.map +1 -0
  80. package/dist/components/PageHeader/index.js +28 -28
  81. package/dist/components/PageHeader/index.js.map +1 -1
  82. package/dist/components/ProtectedRoute/index.js +8 -9
  83. package/dist/components/ProtectedRoute/index.js.map +1 -1
  84. package/dist/components/Row/index.d.ts +28 -0
  85. package/dist/components/Row/index.js +30 -0
  86. package/dist/components/Row/index.js.map +1 -0
  87. package/dist/components/Select/index.js +251 -257
  88. package/dist/components/Select/index.js.map +1 -1
  89. package/dist/components/SidebarToggleButton/index.js +56 -59
  90. package/dist/components/SidebarToggleButton/index.js.map +1 -1
  91. package/dist/components/Slider/index.d.ts +39 -0
  92. package/dist/components/Slider/index.js +52 -0
  93. package/dist/components/Slider/index.js.map +1 -0
  94. package/dist/components/StatCard/index.d.ts +31 -1
  95. package/dist/components/StatCard/index.js +189 -58
  96. package/dist/components/StatCard/index.js.map +1 -1
  97. package/dist/components/Switch/index.d.ts +34 -0
  98. package/dist/components/Switch/index.js +55 -0
  99. package/dist/components/Switch/index.js.map +1 -0
  100. package/dist/components/Tab/index.d.ts +40 -0
  101. package/dist/components/Table/index.js +109 -103
  102. package/dist/components/Table/index.js.map +1 -1
  103. package/dist/components/Tabs/index.d.ts +19 -5
  104. package/dist/components/Tabs/index.js +30 -21
  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 -320
  132. package/dist/components/pro/CodeEditor/editors/CodeEditor.js.map +1 -1
  133. package/dist/components/pro/CodeEditor/editors/MarkdownEditor.js +167 -221
  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 -305
  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 -141
  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 +190 -190
  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 -946
  217. package/dist/components/pro/Flow/Flow.js.map +1 -1
  218. package/dist/components/pro/Flow/FlowCanvas.js +1626 -1663
  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 -182
  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 -222
  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 -591
  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 -244
  345. package/dist/components/pro/Flow/panels/OutlinePanel.js.map +1 -1
  346. package/dist/components/pro/Flow/panels/PresentationMode.js +137 -138
  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 -567
  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 -42
  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 +29 -1
  442. package/dist/index.js +106 -236
  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 -165
  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 +690 -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 -58
  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 +23 -10
@@ -1,323 +1,290 @@
1
- import { bracketMatchingStyle as vt, jumpTargetHighlight as wt, jumpToDefinition as yt, lineHighlightStyle as kt, smartAutocompletion as jt } from "../extensions/index.js";
2
- import { createHighlightExtension as rt, createThemeExtension as nt } from "../themes.js";
3
- import { collectVariables as U, generateOutline as W } from "../utils.js";
4
- import { defaultContextMenu as St } from "../extensions/contextMenu.js";
5
- import { forwardRef as Mt, useCallback as h, useEffect as a, useImperativeHandle as Et, useRef as c, useState as X } from "react";
6
- import { jsx as d, jsxs as Tt } from "react/jsx-runtime";
7
- import { EditorView as Y, drawSelection as It, highlightActiveLine as Nt, highlightActiveLineGutter as Lt, keymap as Ct, lineNumbers as Rt } from "@codemirror/view";
8
- import { Compartment as I, EditorState as q } from "@codemirror/state";
9
- import { defaultKeymap as Kt, history as At, historyKeymap as Ht, indentWithTab as Dt } from "@codemirror/commands";
10
- import { bracketMatching as $t, defaultHighlightStyle as zt, foldGutter as Bt, indentOnInput as Ft, syntaxHighlighting as Ut } from "@codemirror/language";
11
- import { closeBrackets as Wt, closeBracketsKeymap as Xt, completionKeymap as Yt } from "@codemirror/autocomplete";
12
- import { lintKeymap as qt } from "@codemirror/lint";
13
- import { searchKeymap as Jt } from "@codemirror/search";
14
- import { javascript as j } from "@codemirror/lang-javascript";
15
- import { python as Pt } from "@codemirror/lang-python";
16
- import { html as Qt } from "@codemirror/lang-html";
17
- import { css as Vt } from "@codemirror/lang-css";
18
- import { json as Zt } from "@codemirror/lang-json";
19
- import { markdown as _t } from "@codemirror/lang-markdown";
20
- var ct = (s) => ({
21
- javascript: () => j({ jsx: !1 }),
22
- jsx: () => j({ jsx: !0 }),
23
- typescript: () => j({
24
- jsx: !1,
25
- typescript: !0
26
- }),
27
- tsx: () => j({
28
- jsx: !0,
29
- typescript: !0
30
- }),
31
- python: Pt,
32
- html: Qt,
33
- css: Vt,
34
- json: Zt,
35
- markdown: _t
36
- })[s]?.() || j(), Ot = Mt(({ value: s = "", onChange: x, language: o = "javascript", theme: g = "light", readOnly: N = !1, lineNumbers: ot = !0, highlightActiveLine: it = !0, autocompletion: L = !0, jumpToDefinition: C = !0, contextMenu: st, onVariablesCollected: f, onOutlineGenerated: l, enableHistory: m = !1, historyLimit: J = 50, historySaveInterval: S = 3, onHistoryChange: u, className: ut = "", height: at = "400px", minHeight: ft, maxHeight: lt, placeholder: P, extensions: Q = [] }, dt) => {
37
- const R = c(null), e = c(null), [b, V] = X({
38
- visible: !1,
39
- x: 0,
40
- y: 0
41
- }), [p, K] = X([]), [A, H] = X(-1), D = c(0), $ = c(!1), v = c(!1), M = c(""), w = c(!1), z = c(""), Z = c(new I()), _ = c(new I()), O = c(new I()), G = c(new I()), B = c(o);
42
- a(() => {
43
- B.current = o;
44
- }, [o]);
45
- const F = h((t) => {
46
- if (e.current) try {
47
- const r = e.current.state.doc.line(t);
48
- e.current.dispatch({
49
- selection: {
50
- anchor: r.from,
51
- head: r.to
52
- },
53
- scrollIntoView: !0
54
- }), e.current.focus();
55
- } catch (r) {
56
- console.error("Failed to jump to line:", r);
57
- }
58
- }, []), E = h((t, r) => {
59
- if (!m || $.current || v.current) return;
60
- const i = Date.now(), n = S * 1e4;
61
- if (!(i - D.current >= n)) {
62
- w.current = !0, M.current = t;
63
- return;
64
- }
65
- if (t === z.current && !r) {
66
- w.current = !1;
67
- return;
68
- }
69
- D.current = i, w.current = !1, z.current = t, K((y) => {
70
- const gt = A >= 0 ? y.slice(0, A + 1) : y, bt = {
71
- id: `${i}-${Math.random()}`,
72
- timestamp: new Date(i),
73
- content: t,
74
- description: r
75
- }, k = [...gt, bt];
76
- k.length > J && k.shift();
77
- const et = k.length - 1;
78
- return H(et), setTimeout(() => {
79
- u && u(k, et);
80
- }, 0), k;
81
- });
82
- }, [
83
- m,
84
- J,
85
- S,
86
- A,
87
- u
88
- ]), tt = h((t) => {
89
- if (t < 0 || t >= p.length) return;
90
- $.current = !0;
91
- const r = p[t];
92
- e.current && e.current.dispatch({ changes: {
93
- from: 0,
94
- to: e.current.state.doc.length,
95
- insert: r.content
96
- } });
97
- const i = p.slice(0, t + 1);
98
- K(i);
99
- const n = i.length - 1;
100
- H(n), setTimeout(() => {
101
- u && u(i, n);
102
- }, 0), x && x(r.content), setTimeout(() => {
103
- $.current = !1;
104
- }, 100);
105
- }, [
106
- p,
107
- x,
108
- u
109
- ]);
110
- Et(dt, () => ({
111
- jumpToLine: F,
112
- getView: () => e.current,
113
- getValue: () => e.current?.state.doc.toString() || "",
114
- setValue: (t) => {
115
- e.current && e.current.dispatch({ changes: {
116
- from: 0,
117
- to: e.current.state.doc.length,
118
- insert: t
119
- } });
120
- },
121
- focus: () => e.current?.focus(),
122
- getHistory: () => p,
123
- restoreHistory: tt,
124
- clearHistory: () => {
125
- K([]), H(-1), D.current = 0, w.current = !1, M.current = "", z.current = "", setTimeout(() => {
126
- u && u([], -1);
127
- }, 0);
128
- }
129
- }), [
130
- F,
131
- p,
132
- tt,
133
- u
134
- ]), a(() => {
135
- if (!m) return;
136
- const t = S * 1e4, r = setInterval(() => {
137
- w.current && M.current && E(M.current);
138
- }, t);
139
- return () => clearInterval(r);
140
- }, [
141
- m,
142
- S,
143
- E
144
- ]), a(() => {
145
- if (!R.current) return;
146
- const t = Y.updateListener.of((n) => {
147
- if (n.docChanged && x) {
148
- const y = n.state.doc.toString();
149
- x(y), m && !v.current && E(y), v.current && (v.current = !1);
150
- }
151
- n.docChanged && f && f(U(n.state.doc.toString(), B.current)), n.docChanged && l && l(W(n.state.doc.toString(), B.current));
152
- }), r = [
153
- At(),
154
- It(),
155
- $t(),
156
- Wt(),
157
- Ft(),
158
- Ut(zt, { fallback: !0 }),
159
- Z.current.of(ct(o)),
160
- _.current.of(nt(g)),
161
- O.current.of(rt(g)),
162
- G.current.of(q.readOnly.of(N)),
163
- t,
164
- Ct.of([
165
- ...Xt,
166
- ...Kt,
167
- ...Jt,
168
- ...Ht,
169
- ...Yt,
170
- ...qt,
171
- Dt
172
- ]),
173
- vt,
174
- kt,
175
- wt
176
- ];
177
- if (ot && r.push(Rt(), Bt(), Lt()), it && r.push(Nt()), L) {
178
- const n = typeof L == "object" ? L : {};
179
- r.push(jt(o, n));
180
- }
181
- if (C) {
182
- const n = typeof C == "object" ? C : {};
183
- r.push(yt(F, n));
184
- }
185
- P && r.push(Y.contentAttributes.of({ "data-placeholder": P })), Q.length > 0 && r.push(...Q);
186
- const i = new Y({
187
- state: q.create({
188
- doc: s,
189
- extensions: r
190
- }),
191
- parent: R.current
192
- });
193
- return e.current = i, setTimeout(() => {
194
- f && f(U(s, o)), l && l(W(s, o));
195
- }, 0), m && s && E(s, "Initial content"), () => {
196
- i.destroy();
197
- };
198
- }, []), a(() => {
199
- e.current && s !== e.current.state.doc.toString() && (v.current = !0, e.current.dispatch({ changes: {
200
- from: 0,
201
- to: e.current.state.doc.length,
202
- insert: s
203
- } }));
204
- }, [s]), a(() => {
205
- if (e.current) {
206
- e.current.dispatch({ effects: Z.current.reconfigure(ct(o)) });
207
- const t = e.current.state.doc.toString();
208
- setTimeout(() => {
209
- f && f(U(t, o)), l && l(W(t, o));
210
- }, 0);
211
- }
212
- }, [
213
- o,
214
- f,
215
- l
216
- ]), a(() => {
217
- e.current && e.current.dispatch({ effects: [_.current.reconfigure(nt(g)), O.current.reconfigure(rt(g))] });
218
- }, [g]), a(() => {
219
- e.current && e.current.dispatch({ effects: G.current.reconfigure(q.readOnly.of(N)) });
220
- }, [N]);
221
- const mt = h((t) => {
222
- t.preventDefault(), V({
223
- visible: !0,
224
- x: t.clientX,
225
- y: t.clientY
226
- });
227
- }, []), T = h(() => {
228
- V({
229
- visible: !1,
230
- x: 0,
231
- y: 0
232
- });
233
- }, []), pt = h((t) => {
234
- e.current && !t.disabled && t.action(e.current), T();
235
- }, [T]);
236
- a(() => {
237
- if (b.visible) {
238
- const t = () => T();
239
- return document.addEventListener("click", t), () => document.removeEventListener("click", t);
240
- }
241
- }, [b.visible, T]);
242
- const ht = {
243
- height: at,
244
- minHeight: ft,
245
- maxHeight: lt,
246
- overflow: "auto"
247
- }, xt = st || St;
248
- return /* @__PURE__ */ Tt("div", {
249
- className: `code-editor-wrapper ${ut}`,
250
- children: [
251
- /* @__PURE__ */ d("div", {
252
- ref: R,
253
- onContextMenu: mt,
254
- style: ht,
255
- className: "code-editor"
256
- }),
257
- b.visible && /* @__PURE__ */ d("div", {
258
- className: "context-menu",
259
- style: {
260
- position: "fixed",
261
- top: b.y,
262
- left: b.x,
263
- zIndex: 1e3
264
- },
265
- children: /* @__PURE__ */ d("ul", {
266
- className: "menu bg-base-200 rounded-box shadow-lg",
267
- children: xt.map((t, r) => t.separator ? /* @__PURE__ */ d("li", { className: "menu-separator" }, r) : /* @__PURE__ */ d("li", { children: /* @__PURE__ */ d("a", {
268
- onClick: () => pt(t),
269
- className: t.disabled ? "disabled" : "",
270
- children: t.label
271
- }) }, r))
272
- })
273
- }),
274
- /* @__PURE__ */ d("style", { children: `
275
- .code-editor-wrapper {
276
- position: relative;
277
- border: 1px solid var(--fallback-bc, oklch(var(--bc) / 0.2));
278
- border-radius: 0.5rem;
279
- overflow: hidden;
280
- }
281
-
282
- .code-editor .cm-editor {
283
- height: 100%;
284
- }
285
-
286
- .code-editor .cm-scroller {
287
- overflow: auto;
288
- font-family: 'Fira Code', 'Consolas', 'Monaco', monospace;
289
- font-size: 14px;
290
- line-height: 1.5;
291
- }
292
-
293
- .code-editor .cm-content[data-placeholder]::before {
294
- content: attr(data-placeholder);
295
- color: var(--fallback-bc, oklch(var(--bc) / 0.4));
296
- position: absolute;
297
- pointer-events: none;
298
- }
299
-
300
- .context-menu {
301
- min-width: 150px;
302
- }
303
-
304
- .context-menu .menu-separator {
305
- height: 1px;
306
- background: var(--fallback-bc, oklch(var(--bc) / 0.2));
307
- margin: 0.25rem 0;
308
- }
309
-
310
- .context-menu .disabled {
311
- opacity: 0.5;
312
- pointer-events: none;
313
- }
314
- ` })
315
- ]
316
- });
1
+ import { bracketMatchingStyle as e, jumpTargetHighlight as t, jumpToDefinition as n, lineHighlightStyle as r, smartAutocompletion as i } from "../extensions/index.js";
2
+ import { createHighlightExtension as a, createThemeExtension as o } from "../themes.js";
3
+ import { collectVariables as s, generateOutline as c } from "../utils.js";
4
+ import { defaultContextMenu as l } from "../extensions/contextMenu.js";
5
+ import { forwardRef as u, useCallback as d, useEffect as f, useImperativeHandle as p, useRef as m, useState as h } from "react";
6
+ import { jsx as g, jsxs as ee } from "react/jsx-runtime";
7
+ import { EditorView as _, drawSelection as te, highlightActiveLine as ne, highlightActiveLineGutter as re, keymap as ie, lineNumbers as ae } from "@codemirror/view";
8
+ import { Compartment as v, EditorState as y } from "@codemirror/state";
9
+ import { defaultKeymap as oe, history as se, historyKeymap as ce, indentWithTab as le } from "@codemirror/commands";
10
+ import { bracketMatching as ue, defaultHighlightStyle as de, foldGutter as fe, indentOnInput as pe, syntaxHighlighting as me } from "@codemirror/language";
11
+ import { closeBrackets as he, closeBracketsKeymap as ge, completionKeymap as _e } from "@codemirror/autocomplete";
12
+ import { lintKeymap as ve } from "@codemirror/lint";
13
+ import { searchKeymap as ye } from "@codemirror/search";
14
+ import { javascript as b } from "@codemirror/lang-javascript";
15
+ import { python as x } from "@codemirror/lang-python";
16
+ import { html as S } from "@codemirror/lang-html";
17
+ import { css as C } from "@codemirror/lang-css";
18
+ import { json as w } from "@codemirror/lang-json";
19
+ import { markdown as T } from "@codemirror/lang-markdown";
20
+ //#region src/components/pro/CodeEditor/editors/CodeEditor.tsx
21
+ var E = (e) => ({
22
+ javascript: () => b({ jsx: !1 }),
23
+ jsx: () => b({ jsx: !0 }),
24
+ typescript: () => b({
25
+ jsx: !1,
26
+ typescript: !0
27
+ }),
28
+ tsx: () => b({
29
+ jsx: !0,
30
+ typescript: !0
31
+ }),
32
+ python: x,
33
+ html: S,
34
+ css: C,
35
+ json: w,
36
+ markdown: T
37
+ })[e]?.() || b(), D = u(({ value: u = "", onChange: b, language: x = "javascript", theme: S = "light", readOnly: C = !1, lineNumbers: w = !0, highlightActiveLine: T = !0, autocompletion: D = !0, jumpToDefinition: O = !0, contextMenu: be, onVariablesCollected: k, onOutlineGenerated: A, enableHistory: j = !1, historyLimit: M = 50, historySaveInterval: N = 3, onHistoryChange: P, className: xe = "", height: Se = "400px", minHeight: Ce, maxHeight: we, placeholder: F, extensions: Te = [] }, Ee) => {
38
+ let I = m(null), L = m(null), [R, De] = h({
39
+ visible: !1,
40
+ x: 0,
41
+ y: 0
42
+ }), [z, B] = h([]), [V, H] = h(-1), U = m(0), W = m(!1), G = m(!1), K = m(""), q = m(!1), J = m(""), Oe = m(new v()), ke = m(new v()), Ae = m(new v()), je = m(new v()), Y = m(x);
43
+ f(() => {
44
+ Y.current = x;
45
+ }, [x]);
46
+ let X = d((e) => {
47
+ if (L.current) try {
48
+ let t = L.current.state.doc.line(e);
49
+ L.current.dispatch({
50
+ selection: {
51
+ anchor: t.from,
52
+ head: t.to
53
+ },
54
+ scrollIntoView: !0
55
+ }), L.current.focus();
56
+ } catch (e) {
57
+ console.error("Failed to jump to line:", e);
58
+ }
59
+ }, []), Z = d((e, t) => {
60
+ if (!j || W.current || G.current) return;
61
+ let n = Date.now(), r = N * 1e4;
62
+ if (!(n - U.current >= r)) {
63
+ q.current = !0, K.current = e;
64
+ return;
65
+ }
66
+ if (e === J.current && !t) {
67
+ q.current = !1;
68
+ return;
69
+ }
70
+ U.current = n, q.current = !1, J.current = e, B((r) => {
71
+ let i = V >= 0 ? r.slice(0, V + 1) : r, a = {
72
+ id: `${n}-${Math.random()}`,
73
+ timestamp: new Date(n),
74
+ content: e,
75
+ description: t
76
+ }, o = [...i, a];
77
+ o.length > M && o.shift();
78
+ let s = o.length - 1;
79
+ return H(s), setTimeout(() => {
80
+ P && P(o, s);
81
+ }, 0), o;
82
+ });
83
+ }, [
84
+ j,
85
+ M,
86
+ N,
87
+ V,
88
+ P
89
+ ]), Q = d((e) => {
90
+ if (e < 0 || e >= z.length) return;
91
+ W.current = !0;
92
+ let t = z[e];
93
+ L.current && L.current.dispatch({ changes: {
94
+ from: 0,
95
+ to: L.current.state.doc.length,
96
+ insert: t.content
97
+ } });
98
+ let n = z.slice(0, e + 1);
99
+ B(n);
100
+ let r = n.length - 1;
101
+ H(r), setTimeout(() => {
102
+ P && P(n, r);
103
+ }, 0), b && b(t.content), setTimeout(() => {
104
+ W.current = !1;
105
+ }, 100);
106
+ }, [
107
+ z,
108
+ b,
109
+ P
110
+ ]);
111
+ p(Ee, () => ({
112
+ jumpToLine: X,
113
+ getView: () => L.current,
114
+ getValue: () => L.current?.state.doc.toString() || "",
115
+ setValue: (e) => {
116
+ L.current && L.current.dispatch({ changes: {
117
+ from: 0,
118
+ to: L.current.state.doc.length,
119
+ insert: e
120
+ } });
121
+ },
122
+ focus: () => L.current?.focus(),
123
+ getHistory: () => z,
124
+ restoreHistory: Q,
125
+ clearHistory: () => {
126
+ B([]), H(-1), U.current = 0, q.current = !1, K.current = "", J.current = "", setTimeout(() => {
127
+ P && P([], -1);
128
+ }, 0);
129
+ }
130
+ }), [
131
+ X,
132
+ z,
133
+ Q,
134
+ P
135
+ ]), f(() => {
136
+ if (!j) return;
137
+ let e = N * 1e4, t = setInterval(() => {
138
+ q.current && K.current && Z(K.current);
139
+ }, e);
140
+ return () => clearInterval(t);
141
+ }, [
142
+ j,
143
+ N,
144
+ Z
145
+ ]), f(() => {
146
+ if (!I.current) return;
147
+ let l = _.updateListener.of((e) => {
148
+ if (e.docChanged && b) {
149
+ let t = e.state.doc.toString();
150
+ b(t), j && !G.current && Z(t), G.current &&= !1;
151
+ }
152
+ if (e.docChanged && k) {
153
+ let t = e.state.doc.toString();
154
+ k(s(t, Y.current));
155
+ }
156
+ if (e.docChanged && A) {
157
+ let t = e.state.doc.toString();
158
+ A(c(t, Y.current));
159
+ }
160
+ }), d = [
161
+ se(),
162
+ te(),
163
+ ue(),
164
+ he(),
165
+ pe(),
166
+ me(de, { fallback: !0 }),
167
+ Oe.current.of(E(x)),
168
+ ke.current.of(o(S)),
169
+ Ae.current.of(a(S)),
170
+ je.current.of(y.readOnly.of(C)),
171
+ l,
172
+ ie.of([
173
+ ...ge,
174
+ ...oe,
175
+ ...ye,
176
+ ...ce,
177
+ ..._e,
178
+ ...ve,
179
+ le
180
+ ]),
181
+ e,
182
+ r,
183
+ t
184
+ ];
185
+ if (w && d.push(ae(), fe(), re()), T && d.push(ne()), D) {
186
+ let e = typeof D == "object" ? D : {};
187
+ d.push(i(x, e));
188
+ }
189
+ if (O) {
190
+ let e = typeof O == "object" ? O : {};
191
+ d.push(n(X, e));
192
+ }
193
+ F && d.push(_.contentAttributes.of({ "data-placeholder": F })), Te.length > 0 && d.push(...Te);
194
+ let f = y.create({
195
+ doc: u,
196
+ extensions: d
197
+ }), p = new _({
198
+ state: f,
199
+ parent: I.current
200
+ });
201
+ return L.current = p, setTimeout(() => {
202
+ k && k(s(u, x)), A && A(c(u, x));
203
+ }, 0), j && u && Z(u, "Initial content"), () => {
204
+ p.destroy();
205
+ };
206
+ }, []), f(() => {
207
+ L.current && u !== L.current.state.doc.toString() && (G.current = !0, L.current.dispatch({ changes: {
208
+ from: 0,
209
+ to: L.current.state.doc.length,
210
+ insert: u
211
+ } }));
212
+ }, [u]), f(() => {
213
+ if (L.current) {
214
+ L.current.dispatch({ effects: Oe.current.reconfigure(E(x)) });
215
+ let e = L.current.state.doc.toString();
216
+ setTimeout(() => {
217
+ k && k(s(e, x)), A && A(c(e, x));
218
+ }, 0);
219
+ }
220
+ }, [
221
+ x,
222
+ k,
223
+ A
224
+ ]), f(() => {
225
+ L.current && L.current.dispatch({ effects: [ke.current.reconfigure(o(S)), Ae.current.reconfigure(a(S))] });
226
+ }, [S]), f(() => {
227
+ L.current && L.current.dispatch({ effects: je.current.reconfigure(y.readOnly.of(C)) });
228
+ }, [C]);
229
+ let Me = d((e) => {
230
+ e.preventDefault(), De({
231
+ visible: !0,
232
+ x: e.clientX,
233
+ y: e.clientY
234
+ });
235
+ }, []), $ = d(() => {
236
+ De({
237
+ visible: !1,
238
+ x: 0,
239
+ y: 0
240
+ });
241
+ }, []), Ne = d((e) => {
242
+ L.current && !e.disabled && e.action(L.current), $();
243
+ }, [$]);
244
+ f(() => {
245
+ if (R.visible) {
246
+ let e = () => $();
247
+ return document.addEventListener("click", e), () => document.removeEventListener("click", e);
248
+ }
249
+ }, [R.visible, $]);
250
+ let Pe = {
251
+ height: Se,
252
+ minHeight: Ce,
253
+ maxHeight: we,
254
+ overflow: "auto"
255
+ }, Fe = be || l;
256
+ return /* @__PURE__ */ ee("div", {
257
+ className: `code-editor-wrapper ${xe}`,
258
+ children: [
259
+ /* @__PURE__ */ g("div", {
260
+ ref: I,
261
+ onContextMenu: Me,
262
+ style: Pe,
263
+ className: "code-editor"
264
+ }),
265
+ R.visible && /* @__PURE__ */ g("div", {
266
+ className: "context-menu",
267
+ style: {
268
+ position: "fixed",
269
+ top: R.y,
270
+ left: R.x,
271
+ zIndex: 1e3
272
+ },
273
+ children: /* @__PURE__ */ g("ul", {
274
+ className: "menu bg-base-200 rounded-box shadow-lg",
275
+ children: Fe.map((e, t) => e.separator ? /* @__PURE__ */ g("li", { className: "menu-separator" }, t) : /* @__PURE__ */ g("li", { children: /* @__PURE__ */ g("a", {
276
+ onClick: () => Ne(e),
277
+ className: e.disabled ? "disabled" : "",
278
+ children: e.label
279
+ }) }, t))
280
+ })
281
+ }),
282
+ /* @__PURE__ */ g("style", { children: "\n .code-editor-wrapper {\n position: relative;\n border: 1px solid var(--fallback-bc, oklch(var(--bc) / 0.2));\n border-radius: 0.5rem;\n overflow: hidden;\n }\n\n .code-editor .cm-editor {\n height: 100%;\n }\n\n .code-editor .cm-scroller {\n overflow: auto;\n font-family: 'Fira Code', 'Consolas', 'Monaco', monospace;\n font-size: 14px;\n line-height: 1.5;\n }\n\n .code-editor .cm-content[data-placeholder]::before {\n content: attr(data-placeholder);\n color: var(--fallback-bc, oklch(var(--bc) / 0.4));\n position: absolute;\n pointer-events: none;\n }\n\n .context-menu {\n min-width: 150px;\n }\n\n .context-menu .menu-separator {\n height: 1px;\n background: var(--fallback-bc, oklch(var(--bc) / 0.2));\n margin: 0.25rem 0;\n }\n\n .context-menu .disabled {\n opacity: 0.5;\n pointer-events: none;\n }\n " })
283
+ ]
284
+ });
317
285
  });
318
- Ot.displayName = "CodeEditor";
319
- export {
320
- Ot as default
321
- };
286
+ D.displayName = "CodeEditor";
287
+ //#endregion
288
+ export { D as default };
322
289
 
323
290
  //# sourceMappingURL=CodeEditor.js.map