dishui 0.0.65 → 0.0.66
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/_virtual/_rolldown/runtime.js +10 -11
- package/dist/chart.js +12 -46
- package/dist/code-editor.js +16 -43
- package/dist/components/Badge/index.js +10 -15
- package/dist/components/Badge/index.js.map +1 -1
- package/dist/components/Button/index.js +62 -89
- package/dist/components/Button/index.js.map +1 -1
- package/dist/components/Card/index.d.ts +76 -0
- package/dist/components/Card/index.js +178 -69
- package/dist/components/Card/index.js.map +1 -1
- package/dist/components/Chart/Chart.js +25 -25
- package/dist/components/Chart/Chart.js.map +1 -1
- package/dist/components/Checkbox/index.js +57 -65
- package/dist/components/Checkbox/index.js.map +1 -1
- package/dist/components/ChoicePicker/index.d.ts +44 -0
- package/dist/components/ChoicePicker/index.js +81 -0
- package/dist/components/ChoicePicker/index.js.map +1 -0
- package/dist/components/Column/index.d.ts +28 -0
- package/dist/components/Column/index.js +30 -0
- package/dist/components/Column/index.js.map +1 -0
- package/dist/components/DateTimeInput/index.d.ts +44 -0
- package/dist/components/DateTimeInput/index.js +48 -0
- package/dist/components/DateTimeInput/index.js.map +1 -0
- package/dist/components/Demo/index.js +107 -107
- package/dist/components/Demo/index.js.map +1 -1
- package/dist/components/Divider/index.d.ts +20 -0
- package/dist/components/Divider/index.js +30 -0
- package/dist/components/Divider/index.js.map +1 -0
- package/dist/components/EmptyState/index.js +24 -24
- package/dist/components/EmptyState/index.js.map +1 -1
- package/dist/components/FileUploader/DropZone.js +134 -136
- package/dist/components/FileUploader/DropZone.js.map +1 -1
- package/dist/components/FileUploader/FileItem.js +159 -163
- package/dist/components/FileUploader/FileItem.js.map +1 -1
- package/dist/components/FileUploader/FileUploader.js +126 -127
- package/dist/components/FileUploader/FileUploader.js.map +1 -1
- package/dist/components/FileUploader/UploadQueue.js +62 -62
- package/dist/components/FileUploader/UploadQueue.js.map +1 -1
- package/dist/components/FloatWindow/index.d.ts +28 -0
- package/dist/components/GridLayout/index.d.ts +42 -0
- package/dist/components/Icon/index.d.ts +24 -0
- package/dist/components/Icon/index.js +26 -0
- package/dist/components/Icon/index.js.map +1 -0
- package/dist/components/Image/index.d.ts +33 -0
- package/dist/components/Image/index.js +44 -0
- package/dist/components/Image/index.js.map +1 -0
- package/dist/components/Input/index.js +196 -197
- package/dist/components/Input/index.js.map +1 -1
- package/dist/components/Label/index.js +62 -74
- package/dist/components/Label/index.js.map +1 -1
- package/dist/components/Layout/index.js +134 -139
- package/dist/components/Layout/index.js.map +1 -1
- package/dist/components/List/index.js +45 -58
- package/dist/components/List/index.js.map +1 -1
- package/dist/components/Markdown/Markdown.js +106 -107
- package/dist/components/Markdown/Markdown.js.map +1 -1
- package/dist/components/Markdown/codeThemes.js +24 -33
- package/dist/components/Markdown/codeThemes.js.map +1 -1
- package/dist/components/Markdown/markdownComponents.js +203 -208
- package/dist/components/Markdown/markdownComponents.js.map +1 -1
- package/dist/components/Markdown/parseCodeBlockMeta.js +22 -22
- package/dist/components/Markdown/parseCodeBlockMeta.js.map +1 -1
- package/dist/components/Markdown/useMarkdownSource.js +46 -46
- package/dist/components/Markdown/useMarkdownSource.js.map +1 -1
- package/dist/components/Markdown/useMarkmapRenderer.js +35 -36
- package/dist/components/Markdown/useMarkmapRenderer.js.map +1 -1
- package/dist/components/Markdown/useMermaidRenderer.js +41 -42
- package/dist/components/Markdown/useMermaidRenderer.js.map +1 -1
- package/dist/components/Modal/index.js +82 -82
- package/dist/components/Modal/index.js.map +1 -1
- package/dist/components/MultipleChoice/index.d.ts +44 -0
- package/dist/components/MultipleChoice/index.js +52 -0
- package/dist/components/MultipleChoice/index.js.map +1 -0
- package/dist/components/Notification/index.d.ts +17 -0
- package/dist/components/Page/index.js +40 -71
- package/dist/components/Page/index.js.map +1 -1
- package/dist/components/PageHeader/index.js +28 -28
- package/dist/components/PageHeader/index.js.map +1 -1
- package/dist/components/ProtectedRoute/index.js +8 -9
- package/dist/components/ProtectedRoute/index.js.map +1 -1
- package/dist/components/Row/index.d.ts +28 -0
- package/dist/components/Row/index.js +30 -0
- package/dist/components/Row/index.js.map +1 -0
- package/dist/components/Select/index.js +251 -254
- package/dist/components/Select/index.js.map +1 -1
- package/dist/components/SidebarToggleButton/index.js +56 -59
- package/dist/components/SidebarToggleButton/index.js.map +1 -1
- package/dist/components/Slider/index.d.ts +39 -0
- package/dist/components/Slider/index.js +52 -0
- package/dist/components/Slider/index.js.map +1 -0
- package/dist/components/StatCard/index.d.ts +29 -1
- package/dist/components/StatCard/index.js +189 -86
- package/dist/components/StatCard/index.js.map +1 -1
- package/dist/components/Switch/index.d.ts +34 -0
- package/dist/components/Switch/index.js +55 -0
- package/dist/components/Switch/index.js.map +1 -0
- package/dist/components/Tab/index.d.ts +40 -0
- package/dist/components/Table/index.js +109 -121
- package/dist/components/Table/index.js.map +1 -1
- package/dist/components/Tabs/index.js +28 -38
- package/dist/components/Tabs/index.js.map +1 -1
- package/dist/components/Text/index.d.ts +43 -0
- package/dist/components/Text/index.js +55 -0
- package/dist/components/Text/index.js.map +1 -0
- package/dist/components/Tooltip/index.d.ts +23 -0
- package/dist/components/Tooltip/index.js +34 -0
- package/dist/components/Tooltip/index.js.map +1 -0
- package/dist/components/Tree/Tree.js +205 -205
- package/dist/components/Tree/Tree.js.map +1 -1
- package/dist/components/pro/ArticleContextMenu/index.js +86 -87
- package/dist/components/pro/ArticleContextMenu/index.js.map +1 -1
- package/dist/components/pro/ArticleControl/ArticleControl2.js +250 -250
- package/dist/components/pro/ArticleControl/ArticleControl2.js.map +1 -1
- package/dist/components/pro/ArticleControl/buildHeadingTree.js +31 -32
- package/dist/components/pro/ArticleControl/buildHeadingTree.js.map +1 -1
- package/dist/components/pro/ArticleControl/useArticleToc.js +100 -102
- package/dist/components/pro/ArticleControl/useArticleToc.js.map +1 -1
- package/dist/components/pro/Calendar/Calendar.d.ts +10 -0
- package/dist/components/pro/Calendar/hooks/useCalendarDrag.d.ts +47 -0
- package/dist/components/pro/Calendar/hooks/useCalendarState.d.ts +56 -0
- package/dist/components/pro/Calendar/index.d.ts +7 -0
- package/dist/components/pro/Calendar/types.d.ts +151 -0
- package/dist/components/pro/Calendar/utils.d.ts +94 -0
- package/dist/components/pro/Chat/Chat.d.ts +6 -0
- package/dist/components/pro/Chat/index.d.ts +2 -0
- package/dist/components/pro/Chat/types.d.ts +84 -0
- package/dist/components/pro/CodeEditor/editors/CodeEditor.js +287 -327
- package/dist/components/pro/CodeEditor/editors/CodeEditor.js.map +1 -1
- package/dist/components/pro/CodeEditor/editors/MarkdownEditor.js +167 -224
- package/dist/components/pro/CodeEditor/editors/MarkdownEditor.js.map +1 -1
- package/dist/components/pro/CodeEditor/editors/markdownExtensions.js +594 -613
- package/dist/components/pro/CodeEditor/editors/markdownExtensions.js.map +1 -1
- package/dist/components/pro/CodeEditor/extensions/contextMenu.js +54 -55
- package/dist/components/pro/CodeEditor/extensions/contextMenu.js.map +1 -1
- package/dist/components/pro/CodeEditor/extensions/index.js +152 -160
- package/dist/components/pro/CodeEditor/extensions/index.js.map +1 -1
- package/dist/components/pro/CodeEditor/langs/index.js +7 -15
- package/dist/components/pro/CodeEditor/langs/index.js.map +1 -1
- package/dist/components/pro/CodeEditor/langs/javascript.js +11 -48
- package/dist/components/pro/CodeEditor/langs/javascript.js.map +1 -1
- package/dist/components/pro/CodeEditor/langs/python.js +4 -40
- package/dist/components/pro/CodeEditor/langs/python.js.map +1 -1
- package/dist/components/pro/CodeEditor/langs/snippets.js +118 -147
- package/dist/components/pro/CodeEditor/langs/snippets.js.map +1 -1
- package/dist/components/pro/CodeEditor/panels/FootnotePanel.js +153 -153
- package/dist/components/pro/CodeEditor/panels/FootnotePanel.js.map +1 -1
- package/dist/components/pro/CodeEditor/panels/HistoryPanel.js +180 -190
- package/dist/components/pro/CodeEditor/panels/HistoryPanel.js.map +1 -1
- package/dist/components/pro/CodeEditor/panels/OutlinePanel.js +130 -137
- package/dist/components/pro/CodeEditor/panels/OutlinePanel.js.map +1 -1
- package/dist/components/pro/CodeEditor/panels/TableOfContentsPanel.js +228 -242
- package/dist/components/pro/CodeEditor/panels/TableOfContentsPanel.js.map +1 -1
- package/dist/components/pro/CodeEditor/panels/VariablePanel.js +208 -248
- package/dist/components/pro/CodeEditor/panels/VariablePanel.js.map +1 -1
- package/dist/components/pro/CodeEditor/themes.js +513 -483
- package/dist/components/pro/CodeEditor/themes.js.map +1 -1
- package/dist/components/pro/CodeEditor/types.d.ts +1 -1
- package/dist/components/pro/CodeEditor/utils.js +171 -175
- package/dist/components/pro/CodeEditor/utils.js.map +1 -1
- package/dist/components/pro/DataTable/DataTable.js +305 -306
- package/dist/components/pro/DataTable/DataTable.js.map +1 -1
- package/dist/components/pro/DataTable/Filters.js +299 -314
- package/dist/components/pro/DataTable/Filters.js.map +1 -1
- package/dist/components/pro/DataTable/PivotPanel.js +203 -204
- package/dist/components/pro/DataTable/PivotPanel.js.map +1 -1
- package/dist/components/pro/DataTable/PivotView.js +142 -144
- package/dist/components/pro/DataTable/PivotView.js.map +1 -1
- package/dist/components/pro/DataTable/components/BulkActions.js +42 -42
- package/dist/components/pro/DataTable/components/BulkActions.js.map +1 -1
- package/dist/components/pro/DataTable/components/ColumnSelector.js +84 -84
- package/dist/components/pro/DataTable/components/ColumnSelector.js.map +1 -1
- package/dist/components/pro/DataTable/components/FilterBar.js +58 -58
- package/dist/components/pro/DataTable/components/FilterBar.js.map +1 -1
- package/dist/components/pro/DataTable/components/TableBody.js +93 -94
- package/dist/components/pro/DataTable/components/TableBody.js.map +1 -1
- package/dist/components/pro/DataTable/components/TableHeader.js +78 -78
- package/dist/components/pro/DataTable/components/TableHeader.js.map +1 -1
- package/dist/components/pro/DataTable/components/TablePagination.js +77 -77
- package/dist/components/pro/DataTable/components/TablePagination.js.map +1 -1
- package/dist/components/pro/DataTable/components/TableToolbar.js +40 -40
- package/dist/components/pro/DataTable/components/TableToolbar.js.map +1 -1
- package/dist/components/pro/DataTable/extension.js +5 -5
- package/dist/components/pro/DataTable/extension.js.map +1 -1
- package/dist/components/pro/DataTable/pivotEngine.js +84 -92
- package/dist/components/pro/DataTable/pivotEngine.js.map +1 -1
- package/dist/components/pro/DataTable/pivotExtension.js +93 -93
- package/dist/components/pro/DataTable/pivotExtension.js.map +1 -1
- package/dist/components/pro/DataTable/rowDetailExtension.js +30 -30
- package/dist/components/pro/DataTable/rowDetailExtension.js.map +1 -1
- package/dist/components/pro/DataTable/tanstack-table.js +45 -62
- package/dist/components/pro/DataTable/tanstack-table.js.map +1 -1
- package/dist/components/pro/DataTable/treeDataUtils.js +37 -48
- package/dist/components/pro/DataTable/treeDataUtils.js.map +1 -1
- package/dist/components/pro/DataTable/useColumnDragReorder.js +68 -68
- package/dist/components/pro/DataTable/useColumnDragReorder.js.map +1 -1
- package/dist/components/pro/DataTable/utils.js +156 -168
- package/dist/components/pro/DataTable/utils.js.map +1 -1
- package/dist/components/pro/FileExplorer/Breadcrumb.js +180 -180
- package/dist/components/pro/FileExplorer/Breadcrumb.js.map +1 -1
- package/dist/components/pro/FileExplorer/CreateDialog.js +78 -78
- package/dist/components/pro/FileExplorer/CreateDialog.js.map +1 -1
- package/dist/components/pro/FileExplorer/FileExplorer.js +202 -205
- package/dist/components/pro/FileExplorer/FileExplorer.js.map +1 -1
- package/dist/components/pro/FileExplorer/FileIcon.js +189 -189
- package/dist/components/pro/FileExplorer/FileIcon.js.map +1 -1
- package/dist/components/pro/FileExplorer/GridView.js +100 -100
- package/dist/components/pro/FileExplorer/GridView.js.map +1 -1
- package/dist/components/pro/FileExplorer/ListView.js +209 -209
- package/dist/components/pro/FileExplorer/ListView.js.map +1 -1
- package/dist/components/pro/FileExplorer/Toolbar.js +199 -199
- package/dist/components/pro/FileExplorer/Toolbar.js.map +1 -1
- package/dist/components/pro/Flow/Flow.js +920 -948
- package/dist/components/pro/Flow/Flow.js.map +1 -1
- package/dist/components/pro/Flow/FlowCanvas.js +1626 -1662
- package/dist/components/pro/Flow/FlowCanvas.js.map +1 -1
- package/dist/components/pro/Flow/archify/build.js +85 -94
- package/dist/components/pro/Flow/archify/build.js.map +1 -1
- package/dist/components/pro/Flow/archify/convert.js +512 -519
- package/dist/components/pro/Flow/archify/convert.js.map +1 -1
- package/dist/components/pro/Flow/archify/palette.js +87 -104
- package/dist/components/pro/Flow/archify/palette.js.map +1 -1
- package/dist/components/pro/Flow/archify/presets.js +34 -37
- package/dist/components/pro/Flow/archify/presets.js.map +1 -1
- package/dist/components/pro/Flow/archify/spec.js +7 -7
- package/dist/components/pro/Flow/archify/spec.js.map +1 -1
- package/dist/components/pro/Flow/canvas/AlignmentGuides.js +25 -25
- package/dist/components/pro/Flow/canvas/AlignmentGuides.js.map +1 -1
- package/dist/components/pro/Flow/canvas/GridRenderer.js +54 -55
- package/dist/components/pro/Flow/canvas/GridRenderer.js.map +1 -1
- package/dist/components/pro/Flow/canvas/MiniMapRenderer.js +54 -58
- package/dist/components/pro/Flow/canvas/MiniMapRenderer.js.map +1 -1
- package/dist/components/pro/Flow/canvas/PixiApp.js +105 -102
- package/dist/components/pro/Flow/canvas/PixiApp.js.map +1 -1
- package/dist/components/pro/Flow/canvas/SelectionOverlay.js +38 -38
- package/dist/components/pro/Flow/canvas/SelectionOverlay.js.map +1 -1
- package/dist/components/pro/Flow/canvas/ViewportContainer.js +117 -117
- package/dist/components/pro/Flow/canvas/ViewportContainer.js.map +1 -1
- package/dist/components/pro/Flow/constants.js +266 -278
- package/dist/components/pro/Flow/constants.js.map +1 -1
- package/dist/components/pro/Flow/context/FlowAIContext.js +27 -28
- package/dist/components/pro/Flow/context/FlowAIContext.js.map +1 -1
- package/dist/components/pro/Flow/context/FlowContext.js +60 -61
- package/dist/components/pro/Flow/context/FlowContext.js.map +1 -1
- package/dist/components/pro/Flow/context/FlowUIContext.js +115 -117
- package/dist/components/pro/Flow/context/FlowUIContext.js.map +1 -1
- package/dist/components/pro/Flow/edges/EdgeRenderer.js +135 -138
- package/dist/components/pro/Flow/edges/EdgeRenderer.js.map +1 -1
- package/dist/components/pro/Flow/edges/edgeMarkers.js +11 -14
- package/dist/components/pro/Flow/edges/edgeMarkers.js.map +1 -1
- package/dist/components/pro/Flow/edges/edgePaths.js +351 -367
- package/dist/components/pro/Flow/edges/edgePaths.js.map +1 -1
- package/dist/components/pro/Flow/hooks/useAlignmentGuides.js +49 -52
- package/dist/components/pro/Flow/hooks/useAlignmentGuides.js.map +1 -1
- package/dist/components/pro/Flow/hooks/useClipboard.js +154 -154
- package/dist/components/pro/Flow/hooks/useClipboard.js.map +1 -1
- package/dist/components/pro/Flow/hooks/useCompactMode.js +17 -17
- package/dist/components/pro/Flow/hooks/useCompactMode.js.map +1 -1
- package/dist/components/pro/Flow/hooks/useDeleteSelection.js +40 -40
- package/dist/components/pro/Flow/hooks/useDeleteSelection.js.map +1 -1
- package/dist/components/pro/Flow/hooks/useDraggablePanel.js +51 -51
- package/dist/components/pro/Flow/hooks/useDraggablePanel.js.map +1 -1
- package/dist/components/pro/Flow/hooks/useEdgeMutations.js +157 -157
- package/dist/components/pro/Flow/hooks/useEdgeMutations.js.map +1 -1
- package/dist/components/pro/Flow/hooks/useFlowImportExport.js +190 -201
- package/dist/components/pro/Flow/hooks/useFlowImportExport.js.map +1 -1
- package/dist/components/pro/Flow/hooks/useKeyboardShortcuts.js +32 -38
- package/dist/components/pro/Flow/hooks/useKeyboardShortcuts.js.map +1 -1
- package/dist/components/pro/Flow/hooks/useLayoutActions.js +172 -180
- package/dist/components/pro/Flow/hooks/useLayoutActions.js.map +1 -1
- package/dist/components/pro/Flow/hooks/useLineMutations.js +57 -57
- package/dist/components/pro/Flow/hooks/useLineMutations.js.map +1 -1
- package/dist/components/pro/Flow/hooks/useMindMap.js +229 -238
- package/dist/components/pro/Flow/hooks/useMindMap.js.map +1 -1
- package/dist/components/pro/Flow/hooks/useNodeMutations.js +102 -102
- package/dist/components/pro/Flow/hooks/useNodeMutations.js.map +1 -1
- package/dist/components/pro/Flow/hooks/usePdfExport.js +55 -56
- package/dist/components/pro/Flow/hooks/usePdfExport.js.map +1 -1
- package/dist/components/pro/Flow/hooks/usePixiApp.js +55 -57
- package/dist/components/pro/Flow/hooks/usePixiApp.js.map +1 -1
- package/dist/components/pro/Flow/hooks/useResizablePanel.js +31 -31
- package/dist/components/pro/Flow/hooks/useResizablePanel.js.map +1 -1
- package/dist/components/pro/Flow/hooks/useSelection.js +69 -69
- package/dist/components/pro/Flow/hooks/useSelection.js.map +1 -1
- package/dist/components/pro/Flow/hooks/useUndoRedo.js +27 -27
- package/dist/components/pro/Flow/hooks/useUndoRedo.js.map +1 -1
- package/dist/components/pro/Flow/hooks/useViewport.js +28 -28
- package/dist/components/pro/Flow/hooks/useViewport.js.map +1 -1
- package/dist/components/pro/Flow/lines/FreehandTool.js +63 -63
- package/dist/components/pro/Flow/lines/FreehandTool.js.map +1 -1
- package/dist/components/pro/Flow/lines/GeometricLineTool.js +80 -80
- package/dist/components/pro/Flow/lines/GeometricLineTool.js.map +1 -1
- package/dist/components/pro/Flow/lines/LineRenderer.js +88 -88
- package/dist/components/pro/Flow/lines/LineRenderer.js.map +1 -1
- package/dist/components/pro/Flow/lines/lineSmoothing.js +32 -34
- package/dist/components/pro/Flow/lines/lineSmoothing.js.map +1 -1
- package/dist/components/pro/Flow/nodes/DataNodeView.js +236 -242
- package/dist/components/pro/Flow/nodes/DataNodeView.js.map +1 -1
- package/dist/components/pro/Flow/nodes/MediaContent.js +236 -246
- package/dist/components/pro/Flow/nodes/MediaContent.js.map +1 -1
- package/dist/components/pro/Flow/nodes/MediaOverlay.js +63 -63
- package/dist/components/pro/Flow/nodes/MediaOverlay.js.map +1 -1
- package/dist/components/pro/Flow/nodes/Model3DView.js +111 -113
- package/dist/components/pro/Flow/nodes/Model3DView.js.map +1 -1
- package/dist/components/pro/Flow/nodes/NodeHandles.js +74 -80
- package/dist/components/pro/Flow/nodes/NodeHandles.js.map +1 -1
- package/dist/components/pro/Flow/nodes/NodeRenderer.js +303 -314
- package/dist/components/pro/Flow/nodes/NodeRenderer.js.map +1 -1
- package/dist/components/pro/Flow/nodes/NodeText.js +25 -29
- package/dist/components/pro/Flow/nodes/NodeText.js.map +1 -1
- package/dist/components/pro/Flow/nodes/aiClient.js +124 -137
- package/dist/components/pro/Flow/nodes/aiClient.js.map +1 -1
- package/dist/components/pro/Flow/nodes/animAnchors.js +42 -49
- package/dist/components/pro/Flow/nodes/animAnchors.js.map +1 -1
- package/dist/components/pro/Flow/nodes/dataUtils.js +246 -267
- package/dist/components/pro/Flow/nodes/dataUtils.js.map +1 -1
- package/dist/components/pro/Flow/nodes/nodeUtils.js +23 -28
- package/dist/components/pro/Flow/nodes/nodeUtils.js.map +1 -1
- package/dist/components/pro/Flow/nodes/shapes.js +556 -589
- package/dist/components/pro/Flow/nodes/shapes.js.map +1 -1
- package/dist/components/pro/Flow/nodes/svgIconTexture.js +37 -39
- package/dist/components/pro/Flow/nodes/svgIconTexture.js.map +1 -1
- package/dist/components/pro/Flow/nodes/svgIcons.js +684 -689
- package/dist/components/pro/Flow/nodes/svgIcons.js.map +1 -1
- package/dist/components/pro/Flow/panels/AIPanel.js +464 -491
- package/dist/components/pro/Flow/panels/AIPanel.js.map +1 -1
- package/dist/components/pro/Flow/panels/Breadcrumb.js +41 -41
- package/dist/components/pro/Flow/panels/Breadcrumb.js.map +1 -1
- package/dist/components/pro/Flow/panels/ContextMenu.js +37 -37
- package/dist/components/pro/Flow/panels/ContextMenu.js.map +1 -1
- package/dist/components/pro/Flow/panels/DataInspectorSection.js +428 -432
- package/dist/components/pro/Flow/panels/DataInspectorSection.js.map +1 -1
- package/dist/components/pro/Flow/panels/ExpandableTextarea.js +61 -62
- package/dist/components/pro/Flow/panels/ExpandableTextarea.js.map +1 -1
- package/dist/components/pro/Flow/panels/FlowPanelGroup.js +114 -114
- package/dist/components/pro/Flow/panels/FlowPanelGroup.js.map +1 -1
- package/dist/components/pro/Flow/panels/FlowToolbar.js +347 -391
- package/dist/components/pro/Flow/panels/FlowToolbar.js.map +1 -1
- package/dist/components/pro/Flow/panels/InspectorPanel.js +1792 -1798
- package/dist/components/pro/Flow/panels/InspectorPanel.js.map +1 -1
- package/dist/components/pro/Flow/panels/OutlinePanel.js +242 -248
- package/dist/components/pro/Flow/panels/OutlinePanel.js.map +1 -1
- package/dist/components/pro/Flow/panels/PresentationMode.js +137 -140
- package/dist/components/pro/Flow/panels/PresentationMode.js.map +1 -1
- package/dist/components/pro/Flow/panels/ProjectTitle.js +46 -46
- package/dist/components/pro/Flow/panels/ProjectTitle.js.map +1 -1
- package/dist/components/pro/Flow/panels/ShapePalette.js +557 -572
- package/dist/components/pro/Flow/panels/ShapePalette.js.map +1 -1
- package/dist/components/pro/Flow/panels/toolbarIcons.d.ts +0 -1
- package/dist/components/pro/Flow/panels/toolbarIcons.js +508 -557
- package/dist/components/pro/Flow/panels/toolbarIcons.js.map +1 -1
- package/dist/components/pro/Flow/types.js +26 -26
- package/dist/components/pro/Flow/types.js.map +1 -1
- package/dist/components/pro/Flow/utils/dashedLine.js +113 -117
- package/dist/components/pro/Flow/utils/dashedLine.js.map +1 -1
- package/dist/components/pro/Flow/utils/gradient.js +55 -55
- package/dist/components/pro/Flow/utils/gradient.js.map +1 -1
- package/dist/components/pro/Flow/utils/pdfExport.js +50 -89
- package/dist/components/pro/Flow/utils/pdfExport.js.map +1 -1
- package/dist/components/pro/Flow/utils/themeColor.js +185 -195
- package/dist/components/pro/Flow/utils/themeColor.js.map +1 -1
- package/dist/components/pro/Gantt/Gantt.d.ts +7 -0
- package/dist/components/pro/Gantt/hooks/useGanttDrag.d.ts +31 -0
- package/dist/components/pro/Gantt/hooks/useGanttState.d.ts +58 -0
- package/dist/components/pro/Gantt/index.d.ts +6 -0
- package/dist/components/pro/Gantt/types.d.ts +478 -0
- package/dist/components/pro/Gantt/utils.d.ts +124 -0
- package/dist/components/pro/Resizable/Resizable.d.ts +30 -0
- package/dist/components/pro/Resizable/index.d.ts +2 -0
- package/dist/components/pro/RichTextEditor/AIRewrite.js +323 -334
- package/dist/components/pro/RichTextEditor/AIRewrite.js.map +1 -1
- package/dist/components/pro/RichTextEditor/BlockHandle.js +314 -316
- package/dist/components/pro/RichTextEditor/BlockHandle.js.map +1 -1
- package/dist/components/pro/RichTextEditor/BubbleToolbar.js +97 -97
- package/dist/components/pro/RichTextEditor/BubbleToolbar.js.map +1 -1
- package/dist/components/pro/RichTextEditor/CommentDialog.js +88 -88
- package/dist/components/pro/RichTextEditor/CommentDialog.js.map +1 -1
- package/dist/components/pro/RichTextEditor/CommentPanel.js +240 -240
- package/dist/components/pro/RichTextEditor/CommentPanel.js.map +1 -1
- package/dist/components/pro/RichTextEditor/CommentPopover.js +234 -234
- package/dist/components/pro/RichTextEditor/CommentPopover.js.map +1 -1
- package/dist/components/pro/RichTextEditor/ContextMenu.js +251 -252
- package/dist/components/pro/RichTextEditor/ContextMenu.js.map +1 -1
- package/dist/components/pro/RichTextEditor/RichTextEditor.js +267 -271
- package/dist/components/pro/RichTextEditor/RichTextEditor.js.map +1 -1
- package/dist/components/pro/RichTextEditor/SlashMenu.js +214 -214
- package/dist/components/pro/RichTextEditor/SlashMenu.js.map +1 -1
- package/dist/components/pro/RichTextEditor/Toolbar/ColorPicker.js +44 -75
- package/dist/components/pro/RichTextEditor/Toolbar/ColorPicker.js.map +1 -1
- package/dist/components/pro/RichTextEditor/Toolbar/FloatingDialogMenu.js +261 -261
- package/dist/components/pro/RichTextEditor/Toolbar/FloatingDialogMenu.js.map +1 -1
- package/dist/components/pro/RichTextEditor/Toolbar/MarkdownTemplates.js +172 -526
- package/dist/components/pro/RichTextEditor/Toolbar/MarkdownTemplates.js.map +1 -1
- package/dist/components/pro/RichTextEditor/Toolbar/SelectDropdown.js +112 -114
- package/dist/components/pro/RichTextEditor/Toolbar/SelectDropdown.js.map +1 -1
- package/dist/components/pro/RichTextEditor/Toolbar/TableOpsMenu.js +194 -194
- package/dist/components/pro/RichTextEditor/Toolbar/TableOpsMenu.js.map +1 -1
- package/dist/components/pro/RichTextEditor/Toolbar/Toolbar.js +970 -973
- package/dist/components/pro/RichTextEditor/Toolbar/Toolbar.js.map +1 -1
- package/dist/components/pro/RichTextEditor/Toolbar/ToolbarButton.js +11 -12
- package/dist/components/pro/RichTextEditor/Toolbar/ToolbarButton.js.map +1 -1
- package/dist/components/pro/RichTextEditor/extensions/CodeBlockView.js +310 -344
- package/dist/components/pro/RichTextEditor/extensions/CodeBlockView.js.map +1 -1
- package/dist/components/pro/RichTextEditor/extensions/CommentMark.js +38 -39
- package/dist/components/pro/RichTextEditor/extensions/CommentMark.js.map +1 -1
- package/dist/components/pro/RichTextEditor/extensions/FloatingDialog.js +620 -625
- package/dist/components/pro/RichTextEditor/extensions/FloatingDialog.js.map +1 -1
- package/dist/components/pro/RichTextEditor/extensions/FontSize.js +25 -25
- package/dist/components/pro/RichTextEditor/extensions/FontSize.js.map +1 -1
- package/dist/components/pro/RichTextEditor/extensions/MarkdownBlock.js +167 -176
- package/dist/components/pro/RichTextEditor/extensions/MarkdownBlock.js.map +1 -1
- package/dist/components/pro/RichTextEditor/types.js +75 -75
- package/dist/components/pro/RichTextEditor/types.js.map +1 -1
- package/dist/contexts/AppContext.d.ts +1 -1
- package/dist/contexts/AppContext.js +216 -221
- package/dist/contexts/AppContext.js.map +1 -1
- package/dist/data-table.js +15 -41
- package/dist/data-table.js.map +1 -1
- package/dist/dishui.css +1 -1
- package/dist/flow.js +27 -83
- package/dist/hooks/useClickOutside.js +18 -18
- package/dist/hooks/useClickOutside.js.map +1 -1
- package/dist/hooks/useContainerElement.js +9 -9
- package/dist/hooks/useContainerElement.js.map +1 -1
- package/dist/hooks/useControllableState.js +33 -35
- package/dist/hooks/useControllableState.js.map +1 -1
- package/dist/hooks/useCopyToClipboard.js +16 -16
- package/dist/hooks/useCopyToClipboard.js.map +1 -1
- package/dist/hooks/useDebounce.js +14 -14
- package/dist/hooks/useDebounce.js.map +1 -1
- package/dist/hooks/useDraggable.js +50 -50
- package/dist/hooks/useDraggable.js.map +1 -1
- package/dist/hooks/useTableColumns.js +39 -41
- package/dist/hooks/useTableColumns.js.map +1 -1
- package/dist/hooks/useTableData.js +67 -68
- package/dist/hooks/useTableData.js.map +1 -1
- package/dist/index-nostyled.d.ts +8 -0
- package/dist/index.d.ts +27 -1
- package/dist/index.js +105 -241
- package/dist/layouts/MainLayout.js +56 -56
- package/dist/layouts/MainLayout.js.map +1 -1
- package/dist/layouts/Navbar.js +214 -214
- package/dist/layouts/Navbar.js.map +1 -1
- package/dist/layouts/Sidebar.js +184 -186
- package/dist/layouts/Sidebar.js.map +1 -1
- package/dist/layouts/headbar/Headbar.js +25 -25
- package/dist/layouts/headbar/Headbar.js.map +1 -1
- package/dist/layouts/headbar/HeadbarLangSwitcher.js +39 -39
- package/dist/layouts/headbar/HeadbarLangSwitcher.js.map +1 -1
- package/dist/layouts/headbar/HeadbarSearch.js +120 -120
- package/dist/layouts/headbar/HeadbarSearch.js.map +1 -1
- package/dist/layouts/headbar/HeadbarThemeSwitcher.js +27 -27
- package/dist/layouts/headbar/HeadbarThemeSwitcher.js.map +1 -1
- package/dist/layouts/headbar/HeadbarTitle.js +26 -26
- package/dist/layouts/headbar/HeadbarTitle.js.map +1 -1
- package/dist/lite.js +9 -24
- package/dist/markdown.js +4 -9
- package/dist/pages/components/Calendar/index.d.ts +3 -0
- package/dist/pages/components/Calendar/index.en.d.ts +3 -0
- package/dist/pages/components/Calendar/index.zh.d.ts +3 -0
- package/dist/pages/components/Chat/index.d.ts +3 -0
- package/dist/pages/components/Chat/index.en.d.ts +3 -0
- package/dist/pages/components/Chat/index.zh.d.ts +3 -0
- package/dist/pages/components/FloatWindow/index.d.ts +3 -0
- package/dist/pages/components/FloatWindow/index.en.d.ts +3 -0
- package/dist/pages/components/FloatWindow/index.zh.d.ts +3 -0
- package/dist/pages/components/Gantt/index.d.ts +3 -0
- package/dist/pages/components/Gantt/index.en.d.ts +3 -0
- package/dist/pages/components/Gantt/index.zh.d.ts +3 -0
- package/dist/pages/components/GridLayout/index.d.ts +3 -0
- package/dist/pages/components/GridLayout/index.en.d.ts +3 -0
- package/dist/pages/components/GridLayout/index.zh.d.ts +3 -0
- package/dist/pages/components/Notification/index.d.ts +3 -0
- package/dist/pages/components/Notification/index.en.d.ts +3 -0
- package/dist/pages/components/Notification/index.zh.d.ts +3 -0
- package/dist/pages/components/Resizable/index.d.ts +3 -0
- package/dist/pages/components/Resizable/index.en.d.ts +3 -0
- package/dist/pages/components/Resizable/index.zh.d.ts +3 -0
- package/dist/pages/components/Tab/index.d.ts +3 -0
- package/dist/pages/components/Tab/index.en.d.ts +3 -0
- package/dist/pages/components/Tab/index.zh.d.ts +3 -0
- package/dist/styles/themeStyles.js +87 -86
- package/dist/styles/themeStyles.js.map +1 -1
- package/dist/utils/cn.d.ts +13 -0
- package/dist/utils/cn.js +16 -0
- package/dist/utils/cn.js.map +1 -0
- package/dist/utils/i18n.js +690 -602
- package/dist/utils/i18n.js.map +1 -1
- package/dist/utils/menu.js +94 -94
- package/dist/utils/menu.js.map +1 -1
- package/dist/utils/rehype-code-meta.js +14 -14
- package/dist/utils/rehype-code-meta.js.map +1 -1
- package/dist/utils/remark-code-meta.js +9 -9
- package/dist/utils/remark-code-meta.js.map +1 -1
- package/dist/utils/routerBuilder.js +59 -60
- package/dist/utils/routerBuilder.js.map +1 -1
- package/dist/utils/selection.js +28 -29
- package/dist/utils/selection.js.map +1 -1
- package/dist/utils/themes.js +275 -255
- package/dist/utils/themes.js.map +1 -1
- package/package.json +19 -6
|
@@ -1,59 +1,59 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
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
|
|
52
|
-
|
|
53
|
-
|
|
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
|
-
|
|
56
|
-
|
|
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;
|
|
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
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
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
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
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
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
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
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
<< /Type /
|
|
42
|
-
|
|
43
|
-
`);
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
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
|
-
|
|
90
|
-
|
|
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":"AAgBA,SAAgB,EAAe,GAA6B;
|
|
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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"}
|