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,59 +1,59 @@
1
- var i = {
2
- "to-r": {
3
- x1: "0%",
4
- y1: "50%",
5
- x2: "100%",
6
- y2: "50%"
7
- },
8
- "to-l": {
9
- x1: "100%",
10
- y1: "50%",
11
- x2: "0%",
12
- y2: "50%"
13
- },
14
- "to-b": {
15
- x1: "50%",
16
- y1: "0%",
17
- x2: "50%",
18
- y2: "100%"
19
- },
20
- "to-t": {
21
- x1: "50%",
22
- y1: "100%",
23
- x2: "50%",
24
- y2: "0%"
25
- },
26
- "to-br": {
27
- x1: "0%",
28
- y1: "0%",
29
- x2: "100%",
30
- y2: "100%"
31
- },
32
- "to-tl": {
33
- x1: "100%",
34
- y1: "100%",
35
- x2: "0%",
36
- y2: "0%"
37
- },
38
- "to-tr": {
39
- x1: "0%",
40
- y1: "100%",
41
- x2: "100%",
42
- y2: "0%"
43
- },
44
- "to-bl": {
45
- x1: "100%",
46
- y1: "0%",
47
- x2: "0%",
48
- y2: "100%"
49
- }
1
+ //#region src/components/pro/Flow/utils/gradient.ts
2
+ var e = {
3
+ "to-r": {
4
+ x1: "0%",
5
+ y1: "50%",
6
+ x2: "100%",
7
+ y2: "50%"
8
+ },
9
+ "to-l": {
10
+ x1: "100%",
11
+ y1: "50%",
12
+ x2: "0%",
13
+ y2: "50%"
14
+ },
15
+ "to-b": {
16
+ x1: "50%",
17
+ y1: "0%",
18
+ x2: "50%",
19
+ y2: "100%"
20
+ },
21
+ "to-t": {
22
+ x1: "50%",
23
+ y1: "100%",
24
+ x2: "50%",
25
+ y2: "0%"
26
+ },
27
+ "to-br": {
28
+ x1: "0%",
29
+ y1: "0%",
30
+ x2: "100%",
31
+ y2: "100%"
32
+ },
33
+ "to-tl": {
34
+ x1: "100%",
35
+ y1: "100%",
36
+ x2: "0%",
37
+ y2: "0%"
38
+ },
39
+ "to-tr": {
40
+ x1: "0%",
41
+ y1: "100%",
42
+ x2: "100%",
43
+ y2: "0%"
44
+ },
45
+ "to-bl": {
46
+ x1: "100%",
47
+ y1: "0%",
48
+ x2: "0%",
49
+ y2: "100%"
50
+ }
50
51
  };
51
- function l(t, o, x = "to-r", y = "flow-gradient") {
52
- const { x1: r, y1: e, x2: n, y2: f } = i[x];
53
- return `<defs><linearGradient id="${y}" x1="${r}" y1="${e}" x2="${n}" y2="${f}"><stop offset="0%" stop-color="${t}"/><stop offset="100%" stop-color="${o}"/></linearGradient></defs>`;
52
+ function t(t, n, r = "to-r", i = "flow-gradient") {
53
+ let { x1: a, y1: o, x2: s, y2: c } = e[r];
54
+ return `<defs><linearGradient id="${i}" x1="${a}" y1="${o}" x2="${s}" y2="${c}"><stop offset="0%" stop-color="${t}"/><stop offset="100%" stop-color="${n}"/></linearGradient></defs>`;
54
55
  }
55
- export {
56
- l as buildSvgGradientDef
57
- };
56
+ //#endregion
57
+ export { t as buildSvgGradientDef };
58
58
 
59
59
  //# sourceMappingURL=gradient.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"gradient.js","names":[],"sources":["../../../../../src/components/pro/Flow/utils/gradient.ts"],"sourcesContent":["import type { GradientDirection } from '../types';\n\ninterface GradientVector {\n x1: string;\n y1: string;\n x2: string;\n y2: string;\n}\n\nconst GRADIENT_VECTORS: Record<GradientDirection, GradientVector> = {\n 'to-r': { x1: '0%', y1: '50%', x2: '100%', y2: '50%' },\n 'to-l': { x1: '100%', y1: '50%', x2: '0%', y2: '50%' },\n 'to-b': { x1: '50%', y1: '0%', x2: '50%', y2: '100%' },\n 'to-t': { x1: '50%', y1: '100%', x2: '50%', y2: '0%' },\n 'to-br': { x1: '0%', y1: '0%', x2: '100%', y2: '100%' },\n 'to-tl': { x1: '100%', y1: '100%', x2: '0%', y2: '0%' },\n 'to-tr': { x1: '0%', y1: '100%', x2: '100%', y2: '0%' },\n 'to-bl': { x1: '100%', y1: '0%', x2: '0%', y2: '100%' },\n};\n\n/** Build an SVG linear-gradient definition for a Flow color gradient. */\nexport function buildSvgGradientDef(\n from: string,\n to: string,\n direction: GradientDirection = 'to-r',\n id = 'flow-gradient',\n): string {\n const { x1, y1, x2, y2 } = GRADIENT_VECTORS[direction];\n return `<defs><linearGradient id=\"${id}\" x1=\"${x1}\" y1=\"${y1}\" x2=\"${x2}\" y2=\"${y2}\"><stop offset=\"0%\" stop-color=\"${from}\"/><stop offset=\"100%\" stop-color=\"${to}\"/></linearGradient></defs>`;\n}\n"],"mappings":"AASA,IAAM,IAA8D;AAAA,EAClE,QAAQ;AAAA,IAAE,IAAI;AAAA,IAAM,IAAI;AAAA,IAAO,IAAI;AAAA,IAAQ,IAAI;AAAA,EAAM;AAAA,EACrD,QAAQ;AAAA,IAAE,IAAI;AAAA,IAAQ,IAAI;AAAA,IAAO,IAAI;AAAA,IAAM,IAAI;AAAA,EAAM;AAAA,EACrD,QAAQ;AAAA,IAAE,IAAI;AAAA,IAAO,IAAI;AAAA,IAAM,IAAI;AAAA,IAAO,IAAI;AAAA,EAAO;AAAA,EACrD,QAAQ;AAAA,IAAE,IAAI;AAAA,IAAO,IAAI;AAAA,IAAQ,IAAI;AAAA,IAAO,IAAI;AAAA,EAAK;AAAA,EACrD,SAAS;AAAA,IAAE,IAAI;AAAA,IAAM,IAAI;AAAA,IAAM,IAAI;AAAA,IAAQ,IAAI;AAAA,EAAO;AAAA,EACtD,SAAS;AAAA,IAAE,IAAI;AAAA,IAAQ,IAAI;AAAA,IAAQ,IAAI;AAAA,IAAM,IAAI;AAAA,EAAK;AAAA,EACtD,SAAS;AAAA,IAAE,IAAI;AAAA,IAAM,IAAI;AAAA,IAAQ,IAAI;AAAA,IAAQ,IAAI;AAAA,EAAK;AAAA,EACtD,SAAS;AAAA,IAAE,IAAI;AAAA,IAAQ,IAAI;AAAA,IAAM,IAAI;AAAA,IAAM,IAAI;AAAA,EAAO;AACxD;AAGA,SAAgB,EACd,GACA,GACA,IAA+B,QAC/B,IAAK,iBACG;AACR,QAAM,EAAE,IAAA,GAAI,IAAA,GAAI,IAAA,GAAI,IAAA,EAAA,IAAO,EAAiB,CAAA;AAC5C,SAAO,6BAA6B,CAAA,SAAW,CAAA,SAAW,CAAA,SAAW,CAAA,SAAW,CAAA,mCAAqC,CAAA,sCAA0C,CAAA;AACjK"}
1
+ {"version":3,"file":"gradient.js","names":[],"sources":["../../../../../src/components/pro/Flow/utils/gradient.ts"],"sourcesContent":["import type { GradientDirection } from '../types';\n\ninterface GradientVector {\n x1: string;\n y1: string;\n x2: string;\n y2: string;\n}\n\nconst GRADIENT_VECTORS: Record<GradientDirection, GradientVector> = {\n 'to-r': { x1: '0%', y1: '50%', x2: '100%', y2: '50%' },\n 'to-l': { x1: '100%', y1: '50%', x2: '0%', y2: '50%' },\n 'to-b': { x1: '50%', y1: '0%', x2: '50%', y2: '100%' },\n 'to-t': { x1: '50%', y1: '100%', x2: '50%', y2: '0%' },\n 'to-br': { x1: '0%', y1: '0%', x2: '100%', y2: '100%' },\n 'to-tl': { x1: '100%', y1: '100%', x2: '0%', y2: '0%' },\n 'to-tr': { x1: '0%', y1: '100%', x2: '100%', y2: '0%' },\n 'to-bl': { x1: '100%', y1: '0%', x2: '0%', y2: '100%' },\n};\n\n/** Build an SVG linear-gradient definition for a Flow color gradient. */\nexport function buildSvgGradientDef(\n from: string,\n to: string,\n direction: GradientDirection = 'to-r',\n id = 'flow-gradient',\n): string {\n const { x1, y1, x2, y2 } = GRADIENT_VECTORS[direction];\n return `<defs><linearGradient id=\"${id}\" x1=\"${x1}\" y1=\"${y1}\" x2=\"${x2}\" y2=\"${y2}\"><stop offset=\"0%\" stop-color=\"${from}\"/><stop offset=\"100%\" stop-color=\"${to}\"/></linearGradient></defs>`;\n}\n"],"mappings":";AASA,IAAM,IAA8D;CAClE,QAAQ;EAAE,IAAI;EAAM,IAAI;EAAO,IAAI;EAAQ,IAAI;CAAM;CACrD,QAAQ;EAAE,IAAI;EAAQ,IAAI;EAAO,IAAI;EAAM,IAAI;CAAM;CACrD,QAAQ;EAAE,IAAI;EAAO,IAAI;EAAM,IAAI;EAAO,IAAI;CAAO;CACrD,QAAQ;EAAE,IAAI;EAAO,IAAI;EAAQ,IAAI;EAAO,IAAI;CAAK;CACrD,SAAS;EAAE,IAAI;EAAM,IAAI;EAAM,IAAI;EAAQ,IAAI;CAAO;CACtD,SAAS;EAAE,IAAI;EAAQ,IAAI;EAAQ,IAAI;EAAM,IAAI;CAAK;CACtD,SAAS;EAAE,IAAI;EAAM,IAAI;EAAQ,IAAI;EAAQ,IAAI;CAAK;CACtD,SAAS;EAAE,IAAI;EAAQ,IAAI;EAAM,IAAI;EAAM,IAAI;CAAO;AACxD;AAGA,SAAgB,EACd,GACA,GACA,IAA+B,QAC/B,IAAK,iBACG;CACR,IAAM,EAAE,OAAI,OAAI,OAAI,UAAO,EAAiB;CAC5C,OAAO,6BAA6B,EAAG,QAAQ,EAAG,QAAQ,EAAG,QAAQ,EAAG,QAAQ,EAAG,kCAAkC,EAAK,qCAAqC,EAAG;AACpK"}
@@ -1,95 +1,56 @@
1
- function y(c) {
2
- const r = c.indexOf(","), s = c.slice(r + 1), t = atob(s), o = new Uint8Array(t.length);
3
- for (let n = 0; n < t.length; n++) o[n] = t.charCodeAt(n);
4
- return o;
1
+ //#region src/components/pro/Flow/utils/pdfExport.ts
2
+ function e(e) {
3
+ let t = e.indexOf(","), n = e.slice(t + 1), r = atob(n), i = new Uint8Array(r.length);
4
+ for (let e = 0; e < r.length; e++) i[e] = r.charCodeAt(e);
5
+ return i;
5
6
  }
6
- async function x(c, r = 0.92, s = "#ffffff") {
7
- const t = await R(c), o = document.createElement("canvas");
8
- o.width = t.naturalWidth || t.width, o.height = t.naturalHeight || t.height;
9
- const n = o.getContext("2d");
10
- if (!n) throw new Error("无法创建绘图上下文");
11
- return n.fillStyle = s, n.fillRect(0, 0, o.width, o.height), n.drawImage(t, 0, 0), {
12
- jpeg: y(o.toDataURL("image/jpeg", r)),
13
- width: o.width,
14
- height: o.height
15
- };
7
+ async function t(t, r = .92, i = "#ffffff") {
8
+ let a = await n(t), o = document.createElement("canvas");
9
+ o.width = a.naturalWidth || a.width, o.height = a.naturalHeight || a.height;
10
+ let s = o.getContext("2d");
11
+ if (!s) throw Error("无法创建绘图上下文");
12
+ return s.fillStyle = i, s.fillRect(0, 0, o.width, o.height), s.drawImage(a, 0, 0), {
13
+ jpeg: e(o.toDataURL("image/jpeg", r)),
14
+ width: o.width,
15
+ height: o.height
16
+ };
16
17
  }
17
- function R(c) {
18
- return new Promise((r, s) => {
19
- const t = new Image();
20
- t.onload = () => r(t), t.onerror = () => s(/* @__PURE__ */ new Error("图片加载失败")), t.src = c;
21
- });
18
+ function n(e) {
19
+ return new Promise((t, n) => {
20
+ let r = new Image();
21
+ r.onload = () => t(r), r.onerror = () => n(/* @__PURE__ */ Error("图片加载失败")), r.src = e;
22
+ });
22
23
  }
23
- function O(c) {
24
- const r = new TextEncoder(), s = [];
25
- let t = 0;
26
- const o = [], n = (e) => {
27
- const i = typeof e == "string" ? r.encode(e) : e;
28
- s.push(i), t += i.length;
29
- }, b = 2 + c.length * 3, a = (e) => {
30
- o[e] = t;
31
- };
32
- n(`%PDF-1.4
33
- `), n(new Uint8Array([
34
- 37,
35
- 226,
36
- 227,
37
- 207,
38
- 211,
39
- 10
40
- ])), a(1), n(`1 0 obj
41
- << /Type /Catalog /Pages 2 0 R >>
42
- endobj
43
- `);
44
- const u = c.map((e, i) => 3 + i * 3);
45
- a(2), n(`2 0 obj
46
- << /Type /Pages /Count ${c.length} /Kids [${u.map((e) => `${e} 0 R`).join(" ")}] >>
47
- endobj
48
- `), c.forEach((e, i) => {
49
- const h = 3 + i * 3, g = h + 1, l = h + 2, d = e.width, f = e.height;
50
- a(h), n(`${h} 0 obj
51
- << /Type /Page /Parent 2 0 R /MediaBox [0 0 ${d} ${f}] /Resources << /XObject << /Im0 ${g} 0 R >> >> /Contents ${l} 0 R >>
52
- endobj
53
- `), a(g), n(`${g} 0 obj
54
- << /Type /XObject /Subtype /Image /Width ${d} /Height ${f} /ColorSpace /DeviceRGB /BitsPerComponent 8 /Filter /DCTDecode /Length ${e.jpeg.length} >>
55
- stream
56
- `), n(e.jpeg), n(`
57
- endstream
58
- endobj
59
- `);
60
- const w = `q
61
- ${d} 0 0 ${f} 0 0 cm
62
- /Im0 Do
63
- Q
64
- `, p = r.encode(w);
65
- a(l), n(`${l} 0 obj
66
- << /Length ${p.length} >>
67
- stream
68
- `), n(p), n(`
69
- endstream
70
- endobj
71
- `);
72
- });
73
- const $ = t, m = b + 1;
74
- let j = `xref
75
- 0 ${m}
76
- 0000000000 65535 f
77
- `;
78
- for (let e = 1; e <= b; e++) {
79
- const i = o[e] ?? 0;
80
- j += `${i.toString().padStart(10, "0")} 00000 n
81
- `;
82
- }
83
- return n(j), n(`trailer
84
- << /Size ${m} /Root 1 0 R >>
85
- startxref
86
- ${$}
87
- %%EOF`), new Blob(s, { type: "application/pdf" });
24
+ function r(e) {
25
+ let t = new TextEncoder(), n = [], r = 0, i = [], a = (e) => {
26
+ let i = typeof e == "string" ? t.encode(e) : e;
27
+ n.push(i), r += i.length;
28
+ }, o = 2 + e.length * 3, s = (e) => {
29
+ i[e] = r;
30
+ };
31
+ a("%PDF-1.4\n"), a(new Uint8Array([
32
+ 37,
33
+ 226,
34
+ 227,
35
+ 207,
36
+ 211,
37
+ 10
38
+ ])), s(1), a("1 0 obj\n<< /Type /Catalog /Pages 2 0 R >>\nendobj\n");
39
+ let c = e.map((e, t) => 3 + t * 3);
40
+ s(2), a(`2 0 obj\n<< /Type /Pages /Count ${e.length} /Kids [${c.map((e) => `${e} 0 R`).join(" ")}] >>\nendobj\n`), e.forEach((e, n) => {
41
+ let r = 3 + n * 3, i = r + 1, o = r + 2, c = e.width, l = e.height;
42
+ s(r), a(`${r} 0 obj\n<< /Type /Page /Parent 2 0 R /MediaBox [0 0 ${c} ${l}] /Resources << /XObject << /Im0 ${i} 0 R >> >> /Contents ${o} 0 R >>\nendobj\n`), s(i), a(`${i} 0 obj\n<< /Type /XObject /Subtype /Image /Width ${c} /Height ${l} /ColorSpace /DeviceRGB /BitsPerComponent 8 /Filter /DCTDecode /Length ${e.jpeg.length} >>\nstream\n`), a(e.jpeg), a("\nendstream\nendobj\n");
43
+ let u = `q\n${c} 0 0 ${l} 0 0 cm\n/Im0 Do\nQ\n`, d = t.encode(u);
44
+ s(o), a(`${o} 0 obj\n<< /Length ${d.length} >>\nstream\n`), a(d), a("\nendstream\nendobj\n");
45
+ });
46
+ let l = r, u = o + 1, d = `xref\n0 ${u}\n0000000000 65535 f \n`;
47
+ for (let e = 1; e <= o; e++) {
48
+ let t = i[e] ?? 0;
49
+ d += `${t.toString().padStart(10, "0")} 00000 n \n`;
50
+ }
51
+ return a(d), a(`trailer\n<< /Size ${u} /Root 1 0 R >>\nstartxref\n${l}\n%%EOF`), new Blob(n, { type: "application/pdf" });
88
52
  }
89
- export {
90
- O as buildPdfFromJpegs,
91
- y as dataUrlToBytes,
92
- x as pngDataUrlToJpeg
93
- };
53
+ //#endregion
54
+ export { r as buildPdfFromJpegs, e as dataUrlToBytes, t as pngDataUrlToJpeg };
94
55
 
95
56
  //# sourceMappingURL=pdfExport.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"pdfExport.js","names":[],"sources":["../../../../../src/components/pro/Flow/utils/pdfExport.ts"],"sourcesContent":["// Minimal client-side PDF writer: assembles a set of JPEG images (one per page)\n// into a single PDF file, with no third-party dependency.\n//\n// Each page is sized to the image's pixel dimensions (interpreted as PDF points)\n// so the exported slides keep their aspect ratio. This is intentionally tiny —\n// it only supports what the anchor→PDF export needs (a sequence of full-page\n// raster images).\n\ninterface PdfPageImage {\n /** Raw JPEG bytes. */\n jpeg: Uint8Array;\n width: number;\n height: number;\n}\n\n/** Convert a data URL (data:image/...;base64,....) to raw bytes. */\nexport function dataUrlToBytes(dataUrl: string): Uint8Array {\n const comma = dataUrl.indexOf(',');\n const base64 = dataUrl.slice(comma + 1);\n const binary = atob(base64);\n const bytes = new Uint8Array(binary.length);\n for (let i = 0; i < binary.length; i++) bytes[i] = binary.charCodeAt(i);\n return bytes;\n}\n\n/**\n * Re-encode any image data URL (typically PNG) to a JPEG data URL at the given\n * quality, returning the JPEG bytes and pixel dimensions. JPEG keeps the PDF\n * compact and is natively embeddable via a DCTDecode filter.\n */\nexport async function pngDataUrlToJpeg(\n dataUrl: string,\n quality = 0.92,\n background = '#ffffff',\n): Promise<PdfPageImage> {\n const img = await loadImage(dataUrl);\n const canvas = document.createElement('canvas');\n canvas.width = img.naturalWidth || img.width;\n canvas.height = img.naturalHeight || img.height;\n const ctx = canvas.getContext('2d');\n if (!ctx) throw new Error('无法创建绘图上下文');\n // JPEG has no alpha; paint an opaque background first.\n ctx.fillStyle = background;\n ctx.fillRect(0, 0, canvas.width, canvas.height);\n ctx.drawImage(img, 0, 0);\n const jpegUrl = canvas.toDataURL('image/jpeg', quality);\n return { jpeg: dataUrlToBytes(jpegUrl), width: canvas.width, height: canvas.height };\n}\n\nfunction loadImage(src: string): Promise<HTMLImageElement> {\n return new Promise((resolve, reject) => {\n const img = new Image();\n img.onload = () => resolve(img);\n img.onerror = () => reject(new Error('图片加载失败'));\n img.src = src;\n });\n}\n\n/**\n * Build a PDF (as a Blob) from a list of JPEG page images. Every page is sized\n * to its image dimensions (in points) so slides render 1:1 with their capture.\n */\nexport function buildPdfFromJpegs(pages: PdfPageImage[]): Blob {\n // We assemble the PDF as a list of byte chunks, tracking each object's byte\n // offset for the cross-reference (xref) table required by the format.\n const encoder = new TextEncoder();\n const chunks: Uint8Array[] = [];\n let length = 0;\n const offsets: number[] = [];\n\n const push = (data: Uint8Array | string) => {\n const bytes = typeof data === 'string' ? encoder.encode(data) : data;\n chunks.push(bytes);\n length += bytes.length;\n };\n\n // Object numbering:\n // 1 = Catalog, 2 = Pages, then for each page: Page, Image, Content (3 objs).\n const objCount = 2 + pages.length * 3;\n const markObj = (n: number) => { offsets[n] = length; };\n\n push('%PDF-1.4\\n');\n // Binary comment so tools treat the file as binary.\n push(new Uint8Array([0x25, 0xe2, 0xe3, 0xcf, 0xd3, 0x0a]));\n\n // 1: Catalog\n markObj(1);\n push('1 0 obj\\n<< /Type /Catalog /Pages 2 0 R >>\\nendobj\\n');\n\n // 2: Pages\n const pageObjNums = pages.map((_, i) => 3 + i * 3);\n markObj(2);\n push(\n `2 0 obj\\n<< /Type /Pages /Count ${pages.length} /Kids [${pageObjNums\n .map((n) => `${n} 0 R`)\n .join(' ')}] >>\\nendobj\\n`,\n );\n\n pages.forEach((page, i) => {\n const pageObj = 3 + i * 3;\n const imageObj = pageObj + 1;\n const contentObj = pageObj + 2;\n const w = page.width;\n const h = page.height;\n\n // Page object.\n markObj(pageObj);\n push(\n `${pageObj} 0 obj\\n<< /Type /Page /Parent 2 0 R /MediaBox [0 0 ${w} ${h}] ` +\n `/Resources << /XObject << /Im0 ${imageObj} 0 R >> >> ` +\n `/Contents ${contentObj} 0 R >>\\nendobj\\n`,\n );\n\n // Image XObject (JPEG via DCTDecode).\n markObj(imageObj);\n push(\n `${imageObj} 0 obj\\n<< /Type /XObject /Subtype /Image /Width ${w} /Height ${h} ` +\n `/ColorSpace /DeviceRGB /BitsPerComponent 8 /Filter /DCTDecode /Length ${page.jpeg.length} >>\\nstream\\n`,\n );\n push(page.jpeg);\n push('\\nendstream\\nendobj\\n');\n\n // Content stream: draw the image to fill the page.\n const content = `q\\n${w} 0 0 ${h} 0 0 cm\\n/Im0 Do\\nQ\\n`;\n const contentBytes = encoder.encode(content);\n markObj(contentObj);\n push(`${contentObj} 0 obj\\n<< /Length ${contentBytes.length} >>\\nstream\\n`);\n push(contentBytes);\n push('\\nendstream\\nendobj\\n');\n });\n\n // Cross-reference table.\n const xrefOffset = length;\n const total = objCount + 1; // + free object 0\n let xref = `xref\\n0 ${total}\\n0000000000 65535 f \\n`;\n for (let n = 1; n <= objCount; n++) {\n const off = offsets[n] ?? 0;\n xref += `${off.toString().padStart(10, '0')} 00000 n \\n`;\n }\n push(xref);\n push(\n `trailer\\n<< /Size ${total} /Root 1 0 R >>\\nstartxref\\n${xrefOffset}\\n%%EOF`,\n );\n\n return new Blob(chunks as BlobPart[], { type: 'application/pdf' });\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"pdfExport.js","names":[],"sources":["../../../../../src/components/pro/Flow/utils/pdfExport.ts"],"sourcesContent":["// Minimal client-side PDF writer: assembles a set of JPEG images (one per page)\n// into a single PDF file, with no third-party dependency.\n//\n// Each page is sized to the image's pixel dimensions (interpreted as PDF points)\n// so the exported slides keep their aspect ratio. This is intentionally tiny —\n// it only supports what the anchor→PDF export needs (a sequence of full-page\n// raster images).\n\ninterface PdfPageImage {\n /** Raw JPEG bytes. */\n jpeg: Uint8Array;\n width: number;\n height: number;\n}\n\n/** Convert a data URL (data:image/...;base64,....) to raw bytes. */\nexport function dataUrlToBytes(dataUrl: string): Uint8Array {\n const comma = dataUrl.indexOf(',');\n const base64 = dataUrl.slice(comma + 1);\n const binary = atob(base64);\n const bytes = new Uint8Array(binary.length);\n for (let i = 0; i < binary.length; i++) bytes[i] = binary.charCodeAt(i);\n return bytes;\n}\n\n/**\n * Re-encode any image data URL (typically PNG) to a JPEG data URL at the given\n * quality, returning the JPEG bytes and pixel dimensions. JPEG keeps the PDF\n * compact and is natively embeddable via a DCTDecode filter.\n */\nexport async function pngDataUrlToJpeg(\n dataUrl: string,\n quality = 0.92,\n background = '#ffffff',\n): Promise<PdfPageImage> {\n const img = await loadImage(dataUrl);\n const canvas = document.createElement('canvas');\n canvas.width = img.naturalWidth || img.width;\n canvas.height = img.naturalHeight || img.height;\n const ctx = canvas.getContext('2d');\n if (!ctx) throw new Error('无法创建绘图上下文');\n // JPEG has no alpha; paint an opaque background first.\n ctx.fillStyle = background;\n ctx.fillRect(0, 0, canvas.width, canvas.height);\n ctx.drawImage(img, 0, 0);\n const jpegUrl = canvas.toDataURL('image/jpeg', quality);\n return { jpeg: dataUrlToBytes(jpegUrl), width: canvas.width, height: canvas.height };\n}\n\nfunction loadImage(src: string): Promise<HTMLImageElement> {\n return new Promise((resolve, reject) => {\n const img = new Image();\n img.onload = () => resolve(img);\n img.onerror = () => reject(new Error('图片加载失败'));\n img.src = src;\n });\n}\n\n/**\n * Build a PDF (as a Blob) from a list of JPEG page images. Every page is sized\n * to its image dimensions (in points) so slides render 1:1 with their capture.\n */\nexport function buildPdfFromJpegs(pages: PdfPageImage[]): Blob {\n // We assemble the PDF as a list of byte chunks, tracking each object's byte\n // offset for the cross-reference (xref) table required by the format.\n const encoder = new TextEncoder();\n const chunks: Uint8Array[] = [];\n let length = 0;\n const offsets: number[] = [];\n\n const push = (data: Uint8Array | string) => {\n const bytes = typeof data === 'string' ? encoder.encode(data) : data;\n chunks.push(bytes);\n length += bytes.length;\n };\n\n // Object numbering:\n // 1 = Catalog, 2 = Pages, then for each page: Page, Image, Content (3 objs).\n const objCount = 2 + pages.length * 3;\n const markObj = (n: number) => { offsets[n] = length; };\n\n push('%PDF-1.4\\n');\n // Binary comment so tools treat the file as binary.\n push(new Uint8Array([0x25, 0xe2, 0xe3, 0xcf, 0xd3, 0x0a]));\n\n // 1: Catalog\n markObj(1);\n push('1 0 obj\\n<< /Type /Catalog /Pages 2 0 R >>\\nendobj\\n');\n\n // 2: Pages\n const pageObjNums = pages.map((_, i) => 3 + i * 3);\n markObj(2);\n push(\n `2 0 obj\\n<< /Type /Pages /Count ${pages.length} /Kids [${pageObjNums\n .map((n) => `${n} 0 R`)\n .join(' ')}] >>\\nendobj\\n`,\n );\n\n pages.forEach((page, i) => {\n const pageObj = 3 + i * 3;\n const imageObj = pageObj + 1;\n const contentObj = pageObj + 2;\n const w = page.width;\n const h = page.height;\n\n // Page object.\n markObj(pageObj);\n push(\n `${pageObj} 0 obj\\n<< /Type /Page /Parent 2 0 R /MediaBox [0 0 ${w} ${h}] ` +\n `/Resources << /XObject << /Im0 ${imageObj} 0 R >> >> ` +\n `/Contents ${contentObj} 0 R >>\\nendobj\\n`,\n );\n\n // Image XObject (JPEG via DCTDecode).\n markObj(imageObj);\n push(\n `${imageObj} 0 obj\\n<< /Type /XObject /Subtype /Image /Width ${w} /Height ${h} ` +\n `/ColorSpace /DeviceRGB /BitsPerComponent 8 /Filter /DCTDecode /Length ${page.jpeg.length} >>\\nstream\\n`,\n );\n push(page.jpeg);\n push('\\nendstream\\nendobj\\n');\n\n // Content stream: draw the image to fill the page.\n const content = `q\\n${w} 0 0 ${h} 0 0 cm\\n/Im0 Do\\nQ\\n`;\n const contentBytes = encoder.encode(content);\n markObj(contentObj);\n push(`${contentObj} 0 obj\\n<< /Length ${contentBytes.length} >>\\nstream\\n`);\n push(contentBytes);\n push('\\nendstream\\nendobj\\n');\n });\n\n // Cross-reference table.\n const xrefOffset = length;\n const total = objCount + 1; // + free object 0\n let xref = `xref\\n0 ${total}\\n0000000000 65535 f \\n`;\n for (let n = 1; n <= objCount; n++) {\n const off = offsets[n] ?? 0;\n xref += `${off.toString().padStart(10, '0')} 00000 n \\n`;\n }\n push(xref);\n push(\n `trailer\\n<< /Size ${total} /Root 1 0 R >>\\nstartxref\\n${xrefOffset}\\n%%EOF`,\n );\n\n return new Blob(chunks as BlobPart[], { type: 'application/pdf' });\n}\n"],"mappings":"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"}