@univerjs/sheets-ui 0.1.0-alpha.1
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/LICENSE +21 -0
- package/README.md +16 -0
- package/lib/cjs/index.js +21729 -0
- package/lib/cjs/locale/en-US.js +605 -0
- package/lib/cjs/locale/zh-CN.js +442 -0
- package/lib/esm/index.js +21640 -0
- package/lib/esm/locale/en-US.js +584 -0
- package/lib/esm/locale/zh-CN.js +421 -0
- package/lib/index.css +587 -0
- package/lib/types/basics/const/default-univer-sheet-config.d.ts +127 -0
- package/lib/types/basics/const/default-univer-sheet-config.d.ts.map +1 -0
- package/lib/types/basics/const/index.d.ts +3 -0
- package/lib/types/basics/const/index.d.ts.map +1 -0
- package/lib/types/basics/const/plugin-name.d.ts +2 -0
- package/lib/types/basics/const/plugin-name.d.ts.map +1 -0
- package/lib/types/basics/editor/get-editor-object.d.ts +9 -0
- package/lib/types/basics/editor/get-editor-object.d.ts.map +1 -0
- package/lib/types/basics/index.d.ts +3 -0
- package/lib/types/basics/index.d.ts.map +1 -0
- package/lib/types/basics/interfaces/cell.d.ts +6 -0
- package/lib/types/basics/interfaces/cell.d.ts.map +1 -0
- package/lib/types/basics/interfaces/component-config/i-sheet-ui-plugin-config.d.ts +13 -0
- package/lib/types/basics/interfaces/component-config/i-sheet-ui-plugin-config.d.ts.map +1 -0
- package/lib/types/basics/interfaces/component-config/index.d.ts +3 -0
- package/lib/types/basics/interfaces/component-config/index.d.ts.map +1 -0
- package/lib/types/basics/interfaces/component-config/sheet-container-config.d.ts +20 -0
- package/lib/types/basics/interfaces/component-config/sheet-container-config.d.ts.map +1 -0
- package/lib/types/basics/interfaces/component-config/toolbar-config.d.ts +25 -0
- package/lib/types/basics/interfaces/component-config/toolbar-config.d.ts.map +1 -0
- package/lib/types/basics/interfaces/index.d.ts +2 -0
- package/lib/types/basics/interfaces/index.d.ts.map +1 -0
- package/lib/types/commands/commands/__tests__/auto-fill.controller.spec.d.ts +2 -0
- package/lib/types/commands/commands/__tests__/auto-fill.controller.spec.d.ts.map +1 -0
- package/lib/types/commands/commands/__tests__/create-selection-command-test-bed.d.ts +29 -0
- package/lib/types/commands/commands/__tests__/create-selection-command-test-bed.d.ts.map +1 -0
- package/lib/types/commands/commands/__tests__/set-frozen.command.spec.d.ts +2 -0
- package/lib/types/commands/commands/__tests__/set-frozen.command.spec.d.ts.map +1 -0
- package/lib/types/commands/commands/__tests__/set-selections.command.spec.d.ts +2 -0
- package/lib/types/commands/commands/__tests__/set-selections.command.spec.d.ts.map +1 -0
- package/lib/types/commands/commands/auto-fill.command.d.ts +20 -0
- package/lib/types/commands/commands/auto-fill.command.d.ts.map +1 -0
- package/lib/types/commands/commands/clipboard.command.d.ts +12 -0
- package/lib/types/commands/commands/clipboard.command.d.ts.map +1 -0
- package/lib/types/commands/commands/inline-format.command.d.ts +15 -0
- package/lib/types/commands/commands/inline-format.command.d.ts.map +1 -0
- package/lib/types/commands/commands/refill.command.d.ts +3 -0
- package/lib/types/commands/commands/refill.command.d.ts.map +1 -0
- package/lib/types/commands/commands/rename.command.d.ts +3 -0
- package/lib/types/commands/commands/rename.command.d.ts.map +1 -0
- package/lib/types/commands/commands/set-format-painter.command.d.ts +12 -0
- package/lib/types/commands/commands/set-format-painter.command.d.ts.map +1 -0
- package/lib/types/commands/commands/set-frozen.command.d.ts +14 -0
- package/lib/types/commands/commands/set-frozen.command.d.ts.map +1 -0
- package/lib/types/commands/commands/set-scroll.command.d.ts +24 -0
- package/lib/types/commands/commands/set-scroll.command.d.ts.map +1 -0
- package/lib/types/commands/commands/set-selection-frozen.command.d.ts +3 -0
- package/lib/types/commands/commands/set-selection-frozen.command.d.ts.map +1 -0
- package/lib/types/commands/commands/set-selection.command.d.ts +40 -0
- package/lib/types/commands/commands/set-selection.command.d.ts.map +1 -0
- package/lib/types/commands/commands/set-zoom-ratio.command.d.ts +16 -0
- package/lib/types/commands/commands/set-zoom-ratio.command.d.ts.map +1 -0
- package/lib/types/commands/commands/unhide.command.d.ts +3 -0
- package/lib/types/commands/commands/unhide.command.d.ts.map +1 -0
- package/lib/types/commands/operations/activate-cell-edit.operation.d.ts +4 -0
- package/lib/types/commands/operations/activate-cell-edit.operation.d.ts.map +1 -0
- package/lib/types/commands/operations/cell-edit.operation.d.ts +9 -0
- package/lib/types/commands/operations/cell-edit.operation.d.ts.map +1 -0
- package/lib/types/commands/operations/scroll.operation.d.ts +4 -0
- package/lib/types/commands/operations/scroll.operation.d.ts.map +1 -0
- package/lib/types/commands/operations/selection.operation.d.ts +12 -0
- package/lib/types/commands/operations/selection.operation.d.ts.map +1 -0
- package/lib/types/commands/operations/set-editor-resize.operation.d.ts +3 -0
- package/lib/types/commands/operations/set-editor-resize.operation.d.ts.map +1 -0
- package/lib/types/commands/operations/set-format-painter.operation.d.ts +7 -0
- package/lib/types/commands/operations/set-format-painter.operation.d.ts.map +1 -0
- package/lib/types/commands/operations/set-zoom-ratio.operation.d.ts +10 -0
- package/lib/types/commands/operations/set-zoom-ratio.operation.d.ts.map +1 -0
- package/lib/types/common/keys.d.ts +22 -0
- package/lib/types/common/keys.d.ts.map +1 -0
- package/lib/types/components/border-panel/BorderPanel.d.ts +4 -0
- package/lib/types/components/border-panel/BorderPanel.d.ts.map +1 -0
- package/lib/types/components/border-panel/border-line/BorderLine.d.ts +8 -0
- package/lib/types/components/border-panel/border-line/BorderLine.d.ts.map +1 -0
- package/lib/types/components/border-panel/border-line/icons/BorderDashDot.d.ts +3 -0
- package/lib/types/components/border-panel/border-line/icons/BorderDashDot.d.ts.map +1 -0
- package/lib/types/components/border-panel/border-line/icons/BorderDashDotDot.d.ts +3 -0
- package/lib/types/components/border-panel/border-line/icons/BorderDashDotDot.d.ts.map +1 -0
- package/lib/types/components/border-panel/border-line/icons/BorderDashed.d.ts +3 -0
- package/lib/types/components/border-panel/border-line/icons/BorderDashed.d.ts.map +1 -0
- package/lib/types/components/border-panel/border-line/icons/BorderDotted.d.ts +3 -0
- package/lib/types/components/border-panel/border-line/icons/BorderDotted.d.ts.map +1 -0
- package/lib/types/components/border-panel/border-line/icons/BorderHair.d.ts +3 -0
- package/lib/types/components/border-panel/border-line/icons/BorderHair.d.ts.map +1 -0
- package/lib/types/components/border-panel/border-line/icons/BorderMedium.d.ts +3 -0
- package/lib/types/components/border-panel/border-line/icons/BorderMedium.d.ts.map +1 -0
- package/lib/types/components/border-panel/border-line/icons/BorderMediumDashDot.d.ts +3 -0
- package/lib/types/components/border-panel/border-line/icons/BorderMediumDashDot.d.ts.map +1 -0
- package/lib/types/components/border-panel/border-line/icons/BorderMediumDashDotDot.d.ts +3 -0
- package/lib/types/components/border-panel/border-line/icons/BorderMediumDashDotDot.d.ts.map +1 -0
- package/lib/types/components/border-panel/border-line/icons/BorderMediumDashed.d.ts +3 -0
- package/lib/types/components/border-panel/border-line/icons/BorderMediumDashed.d.ts.map +1 -0
- package/lib/types/components/border-panel/border-line/icons/BorderThick.d.ts +3 -0
- package/lib/types/components/border-panel/border-line/icons/BorderThick.d.ts.map +1 -0
- package/lib/types/components/border-panel/border-line/icons/BorderThin.d.ts +3 -0
- package/lib/types/components/border-panel/border-line/icons/BorderThin.d.ts.map +1 -0
- package/lib/types/components/border-panel/index.d.ts +1 -0
- package/lib/types/components/border-panel/index.d.ts.map +1 -0
- package/lib/types/components/border-panel/interface.d.ts +11 -0
- package/lib/types/components/border-panel/interface.d.ts.map +1 -0
- package/lib/types/components/color-picker/index.d.ts +3 -0
- package/lib/types/components/color-picker/index.d.ts.map +1 -0
- package/lib/types/components/color-picker/interface.d.ts +2 -0
- package/lib/types/components/color-picker/interface.d.ts.map +1 -0
- package/lib/types/components/const.d.ts +2 -0
- package/lib/types/components/const.d.ts.map +1 -0
- package/lib/types/components/font-family/FontFamily.d.ts +4 -0
- package/lib/types/components/font-family/FontFamily.d.ts.map +1 -0
- package/lib/types/components/font-family/FontFamilyItem.d.ts +4 -0
- package/lib/types/components/font-family/FontFamilyItem.d.ts.map +1 -0
- package/lib/types/components/font-family/index.d.ts +4 -0
- package/lib/types/components/font-family/index.d.ts.map +1 -0
- package/lib/types/components/font-family/interface.d.ts +10 -0
- package/lib/types/components/font-family/interface.d.ts.map +1 -0
- package/lib/types/components/font-size/FontSize.d.ts +4 -0
- package/lib/types/components/font-size/FontSize.d.ts.map +1 -0
- package/lib/types/components/font-size/index.d.ts +3 -0
- package/lib/types/components/font-size/index.d.ts.map +1 -0
- package/lib/types/components/font-size/interface.d.ts +9 -0
- package/lib/types/components/font-size/interface.d.ts.map +1 -0
- package/lib/types/components/menu-item-input/MenuItemInput.d.ts +4 -0
- package/lib/types/components/menu-item-input/MenuItemInput.d.ts.map +1 -0
- package/lib/types/components/menu-item-input/index.d.ts +3 -0
- package/lib/types/components/menu-item-input/index.d.ts.map +1 -0
- package/lib/types/components/menu-item-input/interface.d.ts +7 -0
- package/lib/types/components/menu-item-input/interface.d.ts.map +1 -0
- package/lib/types/components/range-selector/RangeSelector.d.ts +7 -0
- package/lib/types/components/range-selector/RangeSelector.d.ts.map +1 -0
- package/lib/types/controllers/auto-fill.controller.d.ts +32 -0
- package/lib/types/controllers/auto-fill.controller.d.ts.map +1 -0
- package/lib/types/controllers/auto-height.controller.d.ts +15 -0
- package/lib/types/controllers/auto-height.controller.d.ts.map +1 -0
- package/lib/types/controllers/clipboard/clipboard.controller.d.ts +25 -0
- package/lib/types/controllers/clipboard/clipboard.controller.d.ts.map +1 -0
- package/lib/types/controllers/clipboard/utils.d.ts +36 -0
- package/lib/types/controllers/clipboard/utils.d.ts.map +1 -0
- package/lib/types/controllers/contextmenu/contextmenu.controller.d.ts +20 -0
- package/lib/types/controllers/contextmenu/contextmenu.controller.d.ts.map +1 -0
- package/lib/types/controllers/editor/editing.controller.d.ts +16 -0
- package/lib/types/controllers/editor/editing.controller.d.ts.map +1 -0
- package/lib/types/controllers/editor/end-edit.controller.d.ts +36 -0
- package/lib/types/controllers/editor/end-edit.controller.d.ts.map +1 -0
- package/lib/types/controllers/editor/formula-editor.controller.d.ts +28 -0
- package/lib/types/controllers/editor/formula-editor.controller.d.ts.map +1 -0
- package/lib/types/controllers/editor/initialize-editor.controller.d.ts +13 -0
- package/lib/types/controllers/editor/initialize-editor.controller.d.ts.map +1 -0
- package/lib/types/controllers/editor/start-edit.controller.d.ts +49 -0
- package/lib/types/controllers/editor/start-edit.controller.d.ts.map +1 -0
- package/lib/types/controllers/editor-bridge.controller.d.ts +29 -0
- package/lib/types/controllers/editor-bridge.controller.d.ts.map +1 -0
- package/lib/types/controllers/format-painter/format-painter.controller.d.ts +17 -0
- package/lib/types/controllers/format-painter/format-painter.controller.d.ts.map +1 -0
- package/lib/types/controllers/freeze.controller.d.ts +57 -0
- package/lib/types/controllers/freeze.controller.d.ts.map +1 -0
- package/lib/types/controllers/header-menu.controller.d.ts +27 -0
- package/lib/types/controllers/header-menu.controller.d.ts.map +1 -0
- package/lib/types/controllers/header-move.controller.d.ts +39 -0
- package/lib/types/controllers/header-move.controller.d.ts.map +1 -0
- package/lib/types/controllers/header-resize.controller.d.ts +27 -0
- package/lib/types/controllers/header-resize.controller.d.ts.map +1 -0
- package/lib/types/controllers/header-unhide.controller.d.ts +21 -0
- package/lib/types/controllers/header-unhide.controller.d.ts.map +1 -0
- package/lib/types/controllers/menu/__tests__/create-menu-test-bed.d.ts +7 -0
- package/lib/types/controllers/menu/__tests__/create-menu-test-bed.d.ts.map +1 -0
- package/lib/types/controllers/menu/__tests__/menu.spec.d.ts +2 -0
- package/lib/types/controllers/menu/__tests__/menu.spec.d.ts.map +1 -0
- package/lib/types/controllers/menu/__tests__/row-col.menu.spec.d.ts +2 -0
- package/lib/types/controllers/menu/__tests__/row-col.menu.spec.d.ts.map +1 -0
- package/lib/types/controllers/menu/border.menu.d.ts +5 -0
- package/lib/types/controllers/menu/border.menu.d.ts.map +1 -0
- package/lib/types/controllers/menu/clear.menu.d.ts +6 -0
- package/lib/types/controllers/menu/clear.menu.d.ts.map +1 -0
- package/lib/types/controllers/menu/delete.menu.d.ts +7 -0
- package/lib/types/controllers/menu/delete.menu.d.ts.map +1 -0
- package/lib/types/controllers/menu/insert.menu.d.ts +12 -0
- package/lib/types/controllers/menu/insert.menu.d.ts.map +1 -0
- package/lib/types/controllers/menu/menu.d.ts +79 -0
- package/lib/types/controllers/menu/menu.d.ts.map +1 -0
- package/lib/types/controllers/menu/merge.menu.d.ts +8 -0
- package/lib/types/controllers/menu/merge.menu.d.ts.map +1 -0
- package/lib/types/controllers/menu/sheet.menu.d.ts +10 -0
- package/lib/types/controllers/menu/sheet.menu.d.ts.map +1 -0
- package/lib/types/controllers/move-range.controller.d.ts +11 -0
- package/lib/types/controllers/move-range.controller.d.ts.map +1 -0
- package/lib/types/controllers/navigation/navigation.controller.d.ts +8 -0
- package/lib/types/controllers/navigation/navigation.controller.d.ts.map +1 -0
- package/lib/types/controllers/scroll.controller.d.ts +24 -0
- package/lib/types/controllers/scroll.controller.d.ts.map +1 -0
- package/lib/types/controllers/selection.controller.d.ts +27 -0
- package/lib/types/controllers/selection.controller.d.ts.map +1 -0
- package/lib/types/controllers/sheet-render.controller.d.ts +19 -0
- package/lib/types/controllers/sheet-render.controller.d.ts.map +1 -0
- package/lib/types/controllers/sheet-ui.controller.d.ts +15 -0
- package/lib/types/controllers/sheet-ui.controller.d.ts.map +1 -0
- package/lib/types/controllers/shortcuts/editor.shortcut.d.ts +12 -0
- package/lib/types/controllers/shortcuts/editor.shortcut.d.ts.map +1 -0
- package/lib/types/controllers/shortcuts/operation.shortcut.d.ts +4 -0
- package/lib/types/controllers/shortcuts/operation.shortcut.d.ts.map +1 -0
- package/lib/types/controllers/shortcuts/selection.shortcut.d.ts +24 -0
- package/lib/types/controllers/shortcuts/selection.shortcut.d.ts.map +1 -0
- package/lib/types/controllers/shortcuts/style.shortcut.d.ts +6 -0
- package/lib/types/controllers/shortcuts/style.shortcut.d.ts.map +1 -0
- package/lib/types/controllers/shortcuts/utils.d.ts +9 -0
- package/lib/types/controllers/shortcuts/utils.d.ts.map +1 -0
- package/lib/types/controllers/shortcuts/value.shortcut.d.ts +3 -0
- package/lib/types/controllers/shortcuts/value.shortcut.d.ts.map +1 -0
- package/lib/types/controllers/shortcuts/view.shortcut.d.ts +5 -0
- package/lib/types/controllers/shortcuts/view.shortcut.d.ts.map +1 -0
- package/lib/types/controllers/status-bar.controller.d.ts +16 -0
- package/lib/types/controllers/status-bar.controller.d.ts.map +1 -0
- package/lib/types/controllers/utils/component-tools.d.ts +30 -0
- package/lib/types/controllers/utils/component-tools.d.ts.map +1 -0
- package/lib/types/controllers/zoom.controller.d.ts +24 -0
- package/lib/types/controllers/zoom.controller.d.ts.map +1 -0
- package/lib/types/index.d.ts +26 -0
- package/lib/types/index.d.ts.map +1 -0
- package/lib/types/locale/en-US.d.ts +471 -0
- package/lib/types/locale/en-US.d.ts.map +1 -0
- package/lib/types/locale/index.d.ts +3 -0
- package/lib/types/locale/index.d.ts.map +1 -0
- package/lib/types/locale/zh-CN.d.ts +436 -0
- package/lib/types/locale/zh-CN.d.ts.map +1 -0
- package/lib/types/services/auto-fill/auto-fill.service.d.ts +65 -0
- package/lib/types/services/auto-fill/auto-fill.service.d.ts.map +1 -0
- package/lib/types/services/auto-fill/rules.d.ts +9 -0
- package/lib/types/services/auto-fill/rules.d.ts.map +1 -0
- package/lib/types/services/auto-fill/tools.d.ts +96 -0
- package/lib/types/services/auto-fill/tools.d.ts.map +1 -0
- package/lib/types/services/auto-fill/type.d.ts +54 -0
- package/lib/types/services/auto-fill/type.d.ts.map +1 -0
- package/lib/types/services/clipboard/__tests__/clipboard-service.spec.d.ts +2 -0
- package/lib/types/services/clipboard/__tests__/clipboard-service.spec.d.ts.map +1 -0
- package/lib/types/services/clipboard/__tests__/clipboard-test-bed.d.ts +21 -0
- package/lib/types/services/clipboard/__tests__/clipboard-test-bed.d.ts.map +1 -0
- package/lib/types/services/clipboard/__tests__/mock-clipboard.d.ts +23 -0
- package/lib/types/services/clipboard/__tests__/mock-clipboard.d.ts.map +1 -0
- package/lib/types/services/clipboard/clipboard.service.d.ts +104 -0
- package/lib/types/services/clipboard/clipboard.service.d.ts.map +1 -0
- package/lib/types/services/clipboard/copy-content-cache.d.ts +20 -0
- package/lib/types/services/clipboard/copy-content-cache.d.ts.map +1 -0
- package/lib/types/services/clipboard/html-to-usm/converter.d.ts +27 -0
- package/lib/types/services/clipboard/html-to-usm/converter.d.ts.map +1 -0
- package/lib/types/services/clipboard/html-to-usm/parse-node-style.d.ts +3 -0
- package/lib/types/services/clipboard/html-to-usm/parse-node-style.d.ts.map +1 -0
- package/lib/types/services/clipboard/html-to-usm/paste-plugins/plugin-lark.d.ts +4 -0
- package/lib/types/services/clipboard/html-to-usm/paste-plugins/plugin-lark.d.ts.map +1 -0
- package/lib/types/services/clipboard/html-to-usm/paste-plugins/plugin-word.d.ts +4 -0
- package/lib/types/services/clipboard/html-to-usm/paste-plugins/plugin-word.d.ts.map +1 -0
- package/lib/types/services/clipboard/html-to-usm/paste-plugins/type.d.ts +16 -0
- package/lib/types/services/clipboard/html-to-usm/paste-plugins/type.d.ts.map +1 -0
- package/lib/types/services/clipboard/html-to-usm/utils.d.ts +5 -0
- package/lib/types/services/clipboard/html-to-usm/utils.d.ts.map +1 -0
- package/lib/types/services/clipboard/type.d.ts +120 -0
- package/lib/types/services/clipboard/type.d.ts.map +1 -0
- package/lib/types/services/clipboard/usm-to-html/convertor.d.ts +9 -0
- package/lib/types/services/clipboard/usm-to-html/convertor.d.ts.map +1 -0
- package/lib/types/services/editor/cell-editor-manager.service.d.ts +43 -0
- package/lib/types/services/editor/cell-editor-manager.service.d.ts.map +1 -0
- package/lib/types/services/editor/formula-editor-manager.service.d.ts +30 -0
- package/lib/types/services/editor/formula-editor-manager.service.d.ts.map +1 -0
- package/lib/types/services/editor-bridge.service.d.ts +79 -0
- package/lib/types/services/editor-bridge.service.d.ts.map +1 -0
- package/lib/types/services/format-painter/format-painter.service.d.ts +29 -0
- package/lib/types/services/format-painter/format-painter.service.d.ts.map +1 -0
- package/lib/types/services/mark-selection/mark-selection.service.d.ts +28 -0
- package/lib/types/services/mark-selection/mark-selection.service.d.ts.map +1 -0
- package/lib/types/services/scroll-manager.service.d.ts +38 -0
- package/lib/types/services/scroll-manager.service.d.ts.map +1 -0
- package/lib/types/services/selection/selection-render-model.d.ts +45 -0
- package/lib/types/services/selection/selection-render-model.d.ts.map +1 -0
- package/lib/types/services/selection/selection-render.service.d.ts +165 -0
- package/lib/types/services/selection/selection-render.service.d.ts.map +1 -0
- package/lib/types/services/selection/selection-shape-extension.d.ts +45 -0
- package/lib/types/services/selection/selection-shape-extension.d.ts.map +1 -0
- package/lib/types/services/selection/selection-shape.d.ts +114 -0
- package/lib/types/services/selection/selection-shape.d.ts.map +1 -0
- package/lib/types/services/sheet-bar/sheet-bar.service.d.ts +39 -0
- package/lib/types/services/sheet-bar/sheet-bar.service.d.ts.map +1 -0
- package/lib/types/services/sheet-skeleton-manager.service.d.ts +47 -0
- package/lib/types/services/sheet-skeleton-manager.service.d.ts.map +1 -0
- package/lib/types/services/status-bar.service.d.ts +26 -0
- package/lib/types/services/status-bar.service.d.ts.map +1 -0
- package/lib/types/sheets-ui-plugin.d.ts +13 -0
- package/lib/types/sheets-ui-plugin.d.ts.map +1 -0
- package/lib/types/views/count-bar/CountBar.d.ts +8 -0
- package/lib/types/views/count-bar/CountBar.d.ts.map +1 -0
- package/lib/types/views/count-bar/index.d.ts +2 -0
- package/lib/types/views/count-bar/index.d.ts.map +1 -0
- package/lib/types/views/count-bar/zoom-slider.d.ts +3 -0
- package/lib/types/views/count-bar/zoom-slider.d.ts.map +1 -0
- package/lib/types/views/editor-container/EditorContainer.d.ts +10 -0
- package/lib/types/views/editor-container/EditorContainer.d.ts.map +1 -0
- package/lib/types/views/editor-container/index.d.ts +2 -0
- package/lib/types/views/editor-container/index.d.ts.map +1 -0
- package/lib/types/views/formula-bar/FormulaBar.d.ts +3 -0
- package/lib/types/views/formula-bar/FormulaBar.d.ts.map +1 -0
- package/lib/types/views/formula-bar/index.d.ts +2 -0
- package/lib/types/views/formula-bar/index.d.ts.map +1 -0
- package/lib/types/views/header-menu-shape.d.ts +23 -0
- package/lib/types/views/header-menu-shape.d.ts.map +1 -0
- package/lib/types/views/header-resize-shape.d.ts +27 -0
- package/lib/types/views/header-resize-shape.d.ts.map +1 -0
- package/lib/types/views/header-unhide-shape.d.ts +35 -0
- package/lib/types/views/header-unhide-shape.d.ts.map +1 -0
- package/lib/types/views/operate-container/AutoFillPopupMenu.d.ts +14 -0
- package/lib/types/views/operate-container/AutoFillPopupMenu.d.ts.map +1 -0
- package/lib/types/views/operate-container/OperateContainer.d.ts +3 -0
- package/lib/types/views/operate-container/OperateContainer.d.ts.map +1 -0
- package/lib/types/views/operate-container/index.d.ts +2 -0
- package/lib/types/views/operate-container/index.d.ts.map +1 -0
- package/lib/types/views/sheet-bar/SheetBar.d.ts +3 -0
- package/lib/types/views/sheet-bar/SheetBar.d.ts.map +1 -0
- package/lib/types/views/sheet-bar/sheet-bar-button/SheetBarButton.d.ts +20 -0
- package/lib/types/views/sheet-bar/sheet-bar-button/SheetBarButton.d.ts.map +1 -0
- package/lib/types/views/sheet-bar/sheet-bar-menu/SheetBarMenu.d.ts +14 -0
- package/lib/types/views/sheet-bar/sheet-bar-menu/SheetBarMenu.d.ts.map +1 -0
- package/lib/types/views/sheet-bar/sheet-bar-tabs/SheetBarItem.d.ts +14 -0
- package/lib/types/views/sheet-bar/sheet-bar-tabs/SheetBarItem.d.ts.map +1 -0
- package/lib/types/views/sheet-bar/sheet-bar-tabs/SheetBarTabs.d.ts +5 -0
- package/lib/types/views/sheet-bar/sheet-bar-tabs/SheetBarTabs.d.ts.map +1 -0
- package/lib/types/views/sheet-bar/sheet-bar-tabs/utils/animate.d.ts +29 -0
- package/lib/types/views/sheet-bar/sheet-bar-tabs/utils/animate.d.ts.map +1 -0
- package/lib/types/views/sheet-bar/sheet-bar-tabs/utils/slide-tab-bar.d.ts +142 -0
- package/lib/types/views/sheet-bar/sheet-bar-tabs/utils/slide-tab-bar.d.ts.map +1 -0
- package/lib/types/views/sheet-canvas-view.d.ts +20 -0
- package/lib/types/views/sheet-canvas-view.d.ts.map +1 -0
- package/lib/types/views/sheet-container/SheetContainer.d.ts +11 -0
- package/lib/types/views/sheet-container/SheetContainer.d.ts.map +1 -0
- package/lib/types/views/status-bar/CopyableStatisticItem.d.ts +15 -0
- package/lib/types/views/status-bar/CopyableStatisticItem.d.ts.map +1 -0
- package/lib/types/views/status-bar/StatusBar.d.ts +3 -0
- package/lib/types/views/status-bar/StatusBar.d.ts.map +1 -0
- package/package.json +72 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { IWorkbookData } from '@univerjs/core';
|
|
2
|
+
import { Univer } from '@univerjs/core';
|
|
3
|
+
import type { Dependency } from '@wendellhu/redi';
|
|
4
|
+
export declare class testMarkSelectionService {
|
|
5
|
+
addShape(): string | null;
|
|
6
|
+
removeShape(id: string): void;
|
|
7
|
+
removeAllShapes(): void;
|
|
8
|
+
}
|
|
9
|
+
export declare function clipboardTestBed(workbookConfig?: IWorkbookData, dependencies?: Dependency[]): {
|
|
10
|
+
univer: Univer;
|
|
11
|
+
get: {
|
|
12
|
+
<T>(id: import("@wendellhu/redi").DependencyIdentifier<T>, lookUp?: import("@wendellhu/redi").LookUp | undefined): T;
|
|
13
|
+
<T_1>(id: import("@wendellhu/redi").DependencyIdentifier<T_1>, quantity: import("@wendellhu/redi").Quantity.MANY, lookUp?: import("@wendellhu/redi").LookUp | undefined): T_1[];
|
|
14
|
+
<T_2>(id: import("@wendellhu/redi").DependencyIdentifier<T_2>, quantity: import("@wendellhu/redi").Quantity.OPTIONAL, lookUp?: import("@wendellhu/redi").LookUp | undefined): T_2 | null;
|
|
15
|
+
<T_3>(id: import("@wendellhu/redi").DependencyIdentifier<T_3>, quantity: import("@wendellhu/redi").Quantity.REQUIRED, lookUp?: import("@wendellhu/redi").LookUp | undefined): T_3;
|
|
16
|
+
<T_4>(id: import("@wendellhu/redi").DependencyIdentifier<T_4>, quantity?: import("@wendellhu/redi").Quantity | undefined, lookUp?: import("@wendellhu/redi").LookUp | undefined): T_4 | T_4[] | null;
|
|
17
|
+
<T_5>(id: import("@wendellhu/redi").DependencyIdentifier<T_5>, quantityOrLookup?: import("@wendellhu/redi").Quantity | import("@wendellhu/redi").LookUp | undefined, lookUp?: import("@wendellhu/redi").LookUp | undefined): T_5 | T_5[] | null;
|
|
18
|
+
};
|
|
19
|
+
sheet: import("@univerjs/core").Workbook;
|
|
20
|
+
};
|
|
21
|
+
//# sourceMappingURL=clipboard-test-bed.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clipboard-test-bed.d.ts","sourceRoot":"","sources":["../../../../../src/services/clipboard/__tests__/clipboard-test-bed.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAuE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAS7G,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAielD,qBAAa,wBAAwB;IACjC,QAAQ,IAAI,MAAM,GAAG,IAAI;IAIzB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAE7B,eAAe,IAAI,IAAI;CAC1B;AAED,wBAAgB,gBAAgB,CAAC,cAAc,CAAC,EAAE,aAAa,EAAE,YAAY,CAAC,EAAE,UAAU,EAAE;;;;;;;;;;;EAiE3F"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export interface IClipboardItem {
|
|
2
|
+
readonly types: readonly string[];
|
|
3
|
+
getType(type: string): Promise<Blob>;
|
|
4
|
+
}
|
|
5
|
+
export declare class MockClipboardItem implements IClipboardItem {
|
|
6
|
+
private props;
|
|
7
|
+
private readonly itemTypes;
|
|
8
|
+
constructor(props: IMockClipboardProps);
|
|
9
|
+
get types(): readonly string[];
|
|
10
|
+
getType(type: string): Promise<Blob>;
|
|
11
|
+
}
|
|
12
|
+
interface IMockClipboardProps {
|
|
13
|
+
'text/plain'?: string;
|
|
14
|
+
'text/html'?: string;
|
|
15
|
+
'image/png'?: string;
|
|
16
|
+
}
|
|
17
|
+
export declare class MockClipboard {
|
|
18
|
+
private props;
|
|
19
|
+
constructor(props: IMockClipboardProps);
|
|
20
|
+
read(): Promise<IClipboardItem[]>;
|
|
21
|
+
}
|
|
22
|
+
export {};
|
|
23
|
+
//# sourceMappingURL=mock-clipboard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-clipboard.d.ts","sourceRoot":"","sources":["../../../../../src/services/clipboard/__tests__/mock-clipboard.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC3B,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACxC;AAED,qBAAa,iBAAkB,YAAW,cAAc;IAExC,OAAO,CAAC,KAAK;IADzB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAoB;gBAC1B,KAAK,EAAE,mBAAmB;IAI9C,IAAI,KAAK,IAAI,SAAS,MAAM,EAAE,CAE7B;IAED,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAWvC;AAED,UAAU,mBAAmB;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,qBAAa,aAAa;IACV,OAAO,CAAC,KAAK;gBAAL,KAAK,EAAE,mBAAmB;IAC9C,IAAI,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;CAKpC"}
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
import { Disposable, ICommandService, ILogService, IUndoRedoService, IUniverInstanceService } from '@univerjs/core';
|
|
2
|
+
import { SelectionManagerService } from '@univerjs/sheets';
|
|
3
|
+
import { IClipboardInterfaceService } from '@univerjs/ui';
|
|
4
|
+
import type { IDisposable } from '@wendellhu/redi';
|
|
5
|
+
import { IMarkSelectionService } from '../mark-selection/mark-selection.service';
|
|
6
|
+
import type { ISheetClipboardHook } from './type';
|
|
7
|
+
import { COPY_TYPE } from './type';
|
|
8
|
+
export declare const PREDEFINED_HOOK_NAME: {
|
|
9
|
+
DEFAULT_COPY: string;
|
|
10
|
+
DEFAULT_PASTE: string;
|
|
11
|
+
SPECIAL_PASTE_VALUE: string;
|
|
12
|
+
SPECIAL_PASTE_FORMAT: string;
|
|
13
|
+
SPECIAL_PASTE_COL_WIDTH: string;
|
|
14
|
+
SPECIAL_PASTE_BESIDES_BORDER: string;
|
|
15
|
+
};
|
|
16
|
+
export interface ISheetClipboardService {
|
|
17
|
+
copy(): Promise<boolean>;
|
|
18
|
+
cut(): Promise<boolean>;
|
|
19
|
+
paste(item: ClipboardItem, pasteType?: string): Promise<boolean>;
|
|
20
|
+
addClipboardHook(hook: ISheetClipboardHook): IDisposable;
|
|
21
|
+
getClipboardHooks(): ISheetClipboardHook[];
|
|
22
|
+
}
|
|
23
|
+
export declare const ISheetClipboardService: import("@wendellhu/redi").IdentifierDecorator<ISheetClipboardService>;
|
|
24
|
+
export declare class SheetClipboardService extends Disposable implements ISheetClipboardService {
|
|
25
|
+
private readonly _logService;
|
|
26
|
+
private readonly _currentUniverService;
|
|
27
|
+
private readonly _selectionManagerService;
|
|
28
|
+
private readonly _clipboardInterfaceService;
|
|
29
|
+
private readonly _undoRedoService;
|
|
30
|
+
private readonly _commandService;
|
|
31
|
+
private readonly _markSelectionService;
|
|
32
|
+
private _clipboardHooks;
|
|
33
|
+
private readonly _clipboardHooks$;
|
|
34
|
+
readonly clipboardHooks$: import("rxjs").Observable<ISheetClipboardHook[]>;
|
|
35
|
+
private _htmlToUSM;
|
|
36
|
+
private _usmToHtml;
|
|
37
|
+
private _copyMarkId;
|
|
38
|
+
private _pasteType;
|
|
39
|
+
constructor(_logService: ILogService, _currentUniverService: IUniverInstanceService, _selectionManagerService: SelectionManagerService, _clipboardInterfaceService: IClipboardInterfaceService, _undoRedoService: IUndoRedoService, _commandService: ICommandService, _markSelectionService: IMarkSelectionService);
|
|
40
|
+
copy(copyType?: COPY_TYPE): Promise<boolean>;
|
|
41
|
+
cut(): Promise<boolean>;
|
|
42
|
+
paste(item: ClipboardItem, pasteType?: string): Promise<boolean>;
|
|
43
|
+
addClipboardHook(hook: ISheetClipboardHook): IDisposable;
|
|
44
|
+
getClipboardHooks(): ISheetClipboardHook[];
|
|
45
|
+
private _notifyClipboardHook;
|
|
46
|
+
private _pastePlainText;
|
|
47
|
+
private _pasteHTML;
|
|
48
|
+
private _pasteExternal;
|
|
49
|
+
private _pasteInternal;
|
|
50
|
+
private _pasteUSM;
|
|
51
|
+
private _getSetSelectionOperation;
|
|
52
|
+
private _getPastingTarget;
|
|
53
|
+
/**
|
|
54
|
+
* Handles copying one range to another range, obtained by the following rules
|
|
55
|
+
*
|
|
56
|
+
* [Content to be assigned] => [Target range]
|
|
57
|
+
*
|
|
58
|
+
* I. There are no merged cells in the upper left corner of the pasted area
|
|
59
|
+
*
|
|
60
|
+
* 1. 1 -> 1: 1 => 1
|
|
61
|
+
* 2. N -> 1: N => N
|
|
62
|
+
* 3. 1 -> N: N => N
|
|
63
|
+
* 4. N1 -> N2:
|
|
64
|
+
* 1) N1 <N2: If N2 is a multiple of N1 (X), N1 * X => N2; If not, N1 => N1 (refer to office excel, different from google sheet)
|
|
65
|
+
* 2) N1> N2: N1 => N1
|
|
66
|
+
*
|
|
67
|
+
* The above four cases can be combined and processed as
|
|
68
|
+
*
|
|
69
|
+
* Case 1, 1/2/4-2 merged into N1 => N1
|
|
70
|
+
* Case 2, 3/4-1 merge into N1 * X => N2 or Case 1
|
|
71
|
+
*
|
|
72
|
+
* In the end we only need to judge whether N2 is a multiple of N1
|
|
73
|
+
*
|
|
74
|
+
* II. The pasted area contains merged cells
|
|
75
|
+
*
|
|
76
|
+
* 1. If N2 is a multiple of N1,
|
|
77
|
+
* 1) If N2 === N1, paste this area directly and the range remains unchanged.
|
|
78
|
+
* 2) Otherwise, determine whether other cells are included
|
|
79
|
+
* 1] If included, tile, the range remains unchanged
|
|
80
|
+
* 2] If not included, determine whether the source data is a combined cell
|
|
81
|
+
* 1} If yes, tile, the range remains unchanged
|
|
82
|
+
* 2} If not, only the content will be pasted, the original style will be discarded, and the scope will remain unchanged.
|
|
83
|
+
*
|
|
84
|
+
* 2. If N2 is not a multiple of N1, determine whether the upper left corner cell (merged or non-merged or combined) is consistent with the size of the original data.
|
|
85
|
+
* 1) If consistent, only paste this area;
|
|
86
|
+
* 2) If inconsistent, then determine whether the pasted area contains other cells.
|
|
87
|
+
* 1] If yes, pasting is not allowed and an error will pop up;
|
|
88
|
+
* 2] If not, only the content will be pasted and the original style will be discarded.
|
|
89
|
+
*
|
|
90
|
+
* @param rowCount
|
|
91
|
+
* @param colCount
|
|
92
|
+
* @param cellMatrix
|
|
93
|
+
* @param range
|
|
94
|
+
*/
|
|
95
|
+
private _transformPastedData;
|
|
96
|
+
/**
|
|
97
|
+
* Determine whether the cells starting from the upper left corner of the range (merged or non-merged or combined) are consistent with the size of the original data
|
|
98
|
+
* @param cellMatrix
|
|
99
|
+
* @param range
|
|
100
|
+
*/
|
|
101
|
+
private _topLeftCellsMatch;
|
|
102
|
+
}
|
|
103
|
+
export declare const escapeSpecialCode: (cellStr: string) => string;
|
|
104
|
+
//# sourceMappingURL=clipboard.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clipboard.service.d.ts","sourceRoot":"","sources":["../../../../src/services/clipboard/clipboard.service.ts"],"names":[],"mappings":"AAQA,OAAO,EACH,UAAU,EACV,eAAe,EACf,WAAW,EACX,gBAAgB,EAChB,sBAAsB,EAIzB,MAAM,gBAAgB,CAAC;AAExB,OAAO,EAGH,uBAAuB,EAG1B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAA4B,0BAA0B,EAAkC,MAAM,cAAc,CAAC;AACpH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAInD,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AAKjF,OAAO,KAAK,EAIR,mBAAmB,EAEtB,MAAM,QAAQ,CAAC;AAChB,OAAO,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AAGnC,eAAO,MAAM,oBAAoB;;;;;;;CAOhC,CAAC;AAQF,MAAM,WAAW,sBAAsB;IACnC,IAAI,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IACzB,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IACxB,KAAK,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAEjE,gBAAgB,CAAC,IAAI,EAAE,mBAAmB,GAAG,WAAW,CAAC;IACzD,iBAAiB,IAAI,mBAAmB,EAAE,CAAC;CAC9C;AAED,eAAO,MAAM,sBAAsB,uEAAsE,CAAC;AAE1G,qBAAa,qBAAsB,SAAQ,UAAW,YAAW,sBAAsB;IAWlE,OAAO,CAAC,QAAQ,CAAC,WAAW;IACjB,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IAC7B,OAAO,CAAC,QAAQ,CAAC,wBAAwB;IAC9C,OAAO,CAAC,QAAQ,CAAC,0BAA0B;IACrD,OAAO,CAAC,QAAQ,CAAC,gBAAgB;IAClC,OAAO,CAAC,QAAQ,CAAC,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,qBAAqB;IAhBjE,OAAO,CAAC,eAAe,CAA6B;IACpD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAkD;IACnF,QAAQ,CAAC,eAAe,mDAAwC;IAEhE,OAAO,CAAC,UAAU,CAA0B;IAC5C,OAAO,CAAC,UAAU,CAA0B;IAC5C,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,UAAU,CAAsC;gBAGtB,WAAW,EAAE,WAAW,EACb,qBAAqB,EAAE,sBAAsB,EACpC,wBAAwB,EAAE,uBAAuB,EACtD,0BAA0B,EAAE,0BAA0B,EAChE,gBAAgB,EAAE,gBAAgB,EACnC,eAAe,EAAE,eAAe,EAC1B,qBAAqB,EAAE,qBAAqB;IAKlF,IAAI,CAAC,QAAQ,YAAiB,GAAG,OAAO,CAAC,OAAO,CAAC;IA0DjD,GAAG,IAAI,OAAO,CAAC,OAAO,CAAC;IAIvB,KAAK,CAAC,IAAI,EAAE,aAAa,EAAE,SAAS,SAAqC,GAAG,OAAO,CAAC,OAAO,CAAC;IA0BlG,gBAAgB,CAAC,IAAI,EAAE,mBAAmB,GAAG,WAAW;IAgBxD,iBAAiB,IAAI,mBAAmB,EAAE;IAI1C,OAAO,CAAC,oBAAoB;YAId,eAAe;YA4Bf,UAAU;YAWV,cAAc;YAsDd,cAAc;IA6D5B,OAAO,CAAC,SAAS;IAkFjB,OAAO,CAAC,yBAAyB;IAwDjC,OAAO,CAAC,iBAAiB;IAWzB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAyCG;IACH,OAAO,CAAC,oBAAoB;IA0G5B;;;;OAIG;IACH,OAAO,CAAC,kBAAkB;CAoB7B;AA2CD,eAAO,MAAM,iBAAiB,YAAa,MAAM,WAKnB,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { IRange, ObjectMatrix } from '@univerjs/core';
|
|
2
|
+
import type { COPY_TYPE, ICellDataWithSpanInfo } from './type';
|
|
3
|
+
export interface ICopyContentCacheData {
|
|
4
|
+
worksheetId: string;
|
|
5
|
+
workbookId: string;
|
|
6
|
+
range: IRange;
|
|
7
|
+
copyType: COPY_TYPE;
|
|
8
|
+
matrix: ObjectMatrix<ICellDataWithSpanInfo>;
|
|
9
|
+
}
|
|
10
|
+
export declare function genId(): string;
|
|
11
|
+
export declare function extractId(html: string): string | null;
|
|
12
|
+
export declare class CopyContentCache {
|
|
13
|
+
private _cache;
|
|
14
|
+
set(id: string, clipboardData: ICopyContentCacheData): void;
|
|
15
|
+
get(id: string): ICopyContentCacheData | undefined;
|
|
16
|
+
del(id: string): void;
|
|
17
|
+
clear(): void;
|
|
18
|
+
}
|
|
19
|
+
export declare const copyContentCache: CopyContentCache;
|
|
20
|
+
//# sourceMappingURL=copy-content-cache.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"copy-content-cache.d.ts","sourceRoot":"","sources":["../../../../src/services/clipboard/copy-content-cache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG3D,OAAO,KAAK,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,QAAQ,CAAC;AAK/D,MAAM,WAAW,qBAAqB;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,SAAS,CAAC;IACpB,MAAM,EAAE,YAAY,CAAC,qBAAqB,CAAC,CAAC;CAC/C;AAED,wBAAgB,KAAK,WAEpB;AAED,wBAAgB,SAAS,CAAC,IAAI,EAAE,MAAM,iBAQrC;AAED,qBAAa,gBAAgB;IACzB,OAAO,CAAC,MAAM,CAAuE;IAErF,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,qBAAqB;IAIpD,GAAG,CAAC,EAAE,EAAE,MAAM;IAId,GAAG,CAAC,EAAE,EAAE,MAAM;IAId,KAAK;CAGR;AAED,eAAO,MAAM,gBAAgB,kBAAyB,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { ITextStyle } from '@univerjs/core';
|
|
2
|
+
import type { IUniverSheetCopyDataModel } from '../type';
|
|
3
|
+
import type { IAfterProcessRule } from './paste-plugins/type';
|
|
4
|
+
export interface IStyleRule {
|
|
5
|
+
filter: string | string[] | ((node: HTMLElement) => boolean);
|
|
6
|
+
getStyle(node: HTMLElement): ITextStyle;
|
|
7
|
+
}
|
|
8
|
+
export interface IParsedTablesInfo {
|
|
9
|
+
index: number;
|
|
10
|
+
}
|
|
11
|
+
export interface IPasteExtension {
|
|
12
|
+
name: string;
|
|
13
|
+
checkPasteType(html: string): boolean;
|
|
14
|
+
stylesRules: IStyleRule[];
|
|
15
|
+
afterProcessRules: IAfterProcessRule[];
|
|
16
|
+
}
|
|
17
|
+
export declare class HtmlToUSMService {
|
|
18
|
+
private static pluginList;
|
|
19
|
+
static use(plugin: IPasteExtension): void;
|
|
20
|
+
private styleCache;
|
|
21
|
+
private styleRules;
|
|
22
|
+
private afterProcessRules;
|
|
23
|
+
convert(html: string): IUniverSheetCopyDataModel;
|
|
24
|
+
private _parseTable;
|
|
25
|
+
private process;
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=converter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"converter.d.ts","sourceRoot":"","sources":["../../../../../src/services/clipboard/html-to-usm/converter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAA2B,UAAU,EAAY,MAAM,gBAAgB,CAAC;AAKpF,OAAO,KAAK,EAIR,yBAAyB,EAC5B,MAAM,SAAS,CAAC;AAEjB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAG9D,MAAM,WAAW,UAAU;IACvB,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC;IAC7D,QAAQ,CAAC,IAAI,EAAE,WAAW,GAAG,UAAU,CAAC;CAC3C;AAED,MAAM,WAAW,iBAAiB;IAC9B,KAAK,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,eAAe;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IACtC,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,iBAAiB,EAAE,iBAAiB,EAAE,CAAC;CAC1C;AAgBD,qBAAa,gBAAgB;IACzB,OAAO,CAAC,MAAM,CAAC,UAAU,CAAyB;IAElD,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,eAAe;IAQlC,OAAO,CAAC,UAAU,CAAyC;IAE3D,OAAO,CAAC,UAAU,CAAoB;IAEtC,OAAO,CAAC,iBAAiB,CAA2B;IAEpD,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,yBAAyB;IA6GhD,OAAO,CAAC,WAAW;IAuBnB,OAAO,CAAC,OAAO;CA6DlB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parse-node-style.d.ts","sourceRoot":"","sources":["../../../../../src/services/clipboard/html-to-usm/parse-node-style.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAKjD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,GAAG,UAAU,CAkI9D"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-lark.d.ts","sourceRoot":"","sources":["../../../../../../src/services/clipboard/html-to-usm/paste-plugins/plugin-lark.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAE3C,QAAA,MAAM,eAAe,EAAE,YAuCtB,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plugin-word.d.ts","sourceRoot":"","sources":["../../../../../../src/services/clipboard/html-to-usm/paste-plugins/plugin-word.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAE3C,QAAA,MAAM,eAAe,EAAE,YA0CtB,CAAC;AAEF,eAAe,eAAe,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { IDocumentBody, ITextStyle } from '@univerjs/core';
|
|
2
|
+
export interface IStyleRule {
|
|
3
|
+
filter: string | string[] | ((node: HTMLElement) => boolean);
|
|
4
|
+
getStyle(node: HTMLElement): ITextStyle;
|
|
5
|
+
}
|
|
6
|
+
export interface IAfterProcessRule {
|
|
7
|
+
filter: string | string[] | ((node: HTMLElement) => boolean);
|
|
8
|
+
handler(doc: IDocumentBody, node: HTMLElement): void;
|
|
9
|
+
}
|
|
10
|
+
export interface IPastePlugin {
|
|
11
|
+
name: string;
|
|
12
|
+
checkPasteType(html: string): boolean;
|
|
13
|
+
stylesRules: IStyleRule[];
|
|
14
|
+
afterProcessRules: IAfterProcessRule[];
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=type.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../../../src/services/clipboard/html-to-usm/paste-plugins/type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAEhE,MAAM,WAAW,UAAU;IACvB,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC;IAC7D,QAAQ,CAAC,IAAI,EAAE,WAAW,GAAG,UAAU,CAAC;CAC3C;AAED,MAAM,WAAW,iBAAiB;IAC9B,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,CAAC,CAAC,IAAI,EAAE,WAAW,KAAK,OAAO,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,WAAW,GAAG,IAAI,CAAC;CACxD;AAED,MAAM,WAAW,YAAY;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IACtC,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,iBAAiB,EAAE,iBAAiB,EAAE,CAAC;CAC1C"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import type { IParagraphStyle, Nullable } from '@univerjs/core';
|
|
2
|
+
export default function parseToDom(rawHtml: string): Element | null;
|
|
3
|
+
export declare function getParagraphStyle(el: HTMLElement): Nullable<IParagraphStyle>;
|
|
4
|
+
export declare function ptToPixel(pt: number): number;
|
|
5
|
+
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../../src/services/clipboard/html-to-usm/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEhE,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,OAAO,EAAE,MAAM,kBAMjD;AAGD,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,WAAW,GAAG,QAAQ,CAAC,eAAe,CAAC,CA+B5E;AAED,wBAAgB,SAAS,CAAC,EAAE,EAAE,MAAM,UAKnC"}
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import type { ICellData, IMutationInfo, IRange, ObjectMatrix } from '@univerjs/core';
|
|
2
|
+
export declare enum COPY_TYPE {
|
|
3
|
+
COPY = "COPY",
|
|
4
|
+
CUT = "CUT"
|
|
5
|
+
}
|
|
6
|
+
export type ICellDataWithSpanInfo = ICellData & {
|
|
7
|
+
rowSpan?: number;
|
|
8
|
+
colSpan?: number;
|
|
9
|
+
};
|
|
10
|
+
export interface IClipboardPropertyItem {
|
|
11
|
+
[key: string]: string;
|
|
12
|
+
}
|
|
13
|
+
export interface IParsedCellValue {
|
|
14
|
+
rowSpan?: number;
|
|
15
|
+
colSpan?: number;
|
|
16
|
+
properties?: IClipboardPropertyItem;
|
|
17
|
+
content: string;
|
|
18
|
+
}
|
|
19
|
+
export interface IUniverSheetCopyDataModel {
|
|
20
|
+
rowProperties?: IClipboardPropertyItem[];
|
|
21
|
+
colProperties?: IClipboardPropertyItem[] | null;
|
|
22
|
+
cellMatrix: ObjectMatrix<ICellDataWithSpanInfo>;
|
|
23
|
+
}
|
|
24
|
+
export interface IPasteTarget {
|
|
25
|
+
pastedRange: IRange;
|
|
26
|
+
worksheetId: string;
|
|
27
|
+
workbookId: string;
|
|
28
|
+
}
|
|
29
|
+
export interface IPasteSource {
|
|
30
|
+
copyId: string;
|
|
31
|
+
worksheetId: string;
|
|
32
|
+
workbookId: string;
|
|
33
|
+
range: IRange;
|
|
34
|
+
copyType: COPY_TYPE;
|
|
35
|
+
}
|
|
36
|
+
export interface ISpecialPasteInfo {
|
|
37
|
+
label: string;
|
|
38
|
+
icon?: string;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* `ClipboardHook` could:
|
|
42
|
+
* 1. Before copy/cut/paste, decide whether to execute the command and prepare caches if necessary.
|
|
43
|
+
* 1. When copying, decide what content could be written into clipboard.
|
|
44
|
+
* 1. When pasting, get access to the clipboard content and append mutations to the paste command.
|
|
45
|
+
*/
|
|
46
|
+
export interface ISheetClipboardHook {
|
|
47
|
+
hookName: string;
|
|
48
|
+
isDefaultHook?: boolean;
|
|
49
|
+
specialPasteInfo?: ISpecialPasteInfo;
|
|
50
|
+
priority?: number;
|
|
51
|
+
/**
|
|
52
|
+
* The callback would be called after the clipboard service has decided what region need to be copied.
|
|
53
|
+
* Features could use this hook to build copying cache or any other pre-copy jobs.
|
|
54
|
+
*/
|
|
55
|
+
onBeforeCopy?(workbookId: string, worksheetId: string, range: IRange): void;
|
|
56
|
+
/**
|
|
57
|
+
*
|
|
58
|
+
* @param row
|
|
59
|
+
* @param col
|
|
60
|
+
* @return content
|
|
61
|
+
*/
|
|
62
|
+
onCopyCellContent?(row: number, col: number): string;
|
|
63
|
+
/**
|
|
64
|
+
* Properties that would be appended to the td element.
|
|
65
|
+
*
|
|
66
|
+
* @deprecated should be merged with `onCopyCellContent` to `onCopyCell`
|
|
67
|
+
* @param row row of the the copied cell
|
|
68
|
+
* @param col col of the the copied cell
|
|
69
|
+
*/
|
|
70
|
+
onCopyCellStyle?(row: number, col: number, rowSpan?: number, colSpan?: number): IClipboardPropertyItem | null;
|
|
71
|
+
/**
|
|
72
|
+
* Properties that would be appended to the tr element.
|
|
73
|
+
* @param row each row of the the copied range
|
|
74
|
+
*/
|
|
75
|
+
onCopyRow?(row: number): IClipboardPropertyItem | null;
|
|
76
|
+
/**
|
|
77
|
+
* Properties that would be appended to the col element.
|
|
78
|
+
* @param col each col of the copied range
|
|
79
|
+
*/
|
|
80
|
+
onCopyColumn?(col: number): IClipboardPropertyItem | null;
|
|
81
|
+
/**
|
|
82
|
+
* Would be called after copy content has been written into clipboard.
|
|
83
|
+
* Features could do some cleaning up jobs here.
|
|
84
|
+
*/
|
|
85
|
+
onAfterCopy?(): void;
|
|
86
|
+
/**
|
|
87
|
+
* The callback would be called after the clipboard service has decided what region need to be pasted.
|
|
88
|
+
* Features could use this hook to build copying cache or any other pre-copy jobs.
|
|
89
|
+
*
|
|
90
|
+
* @returns if it block copying it should return false
|
|
91
|
+
*/
|
|
92
|
+
onBeforePaste?(workbookId: string, worksheetId: string, range: IRange): boolean;
|
|
93
|
+
/**
|
|
94
|
+
*
|
|
95
|
+
* @param row
|
|
96
|
+
* @param col
|
|
97
|
+
*/
|
|
98
|
+
onPasteCells?(pastedRange: IRange, matrix: ObjectMatrix<ICellDataWithSpanInfo>, pasteType: string, copyInfo: {
|
|
99
|
+
copyType: COPY_TYPE;
|
|
100
|
+
copyRange?: IRange;
|
|
101
|
+
}): {
|
|
102
|
+
undos: IMutationInfo[];
|
|
103
|
+
redos: IMutationInfo[];
|
|
104
|
+
};
|
|
105
|
+
onPasteRows?(range: IRange, rowProperties: IClipboardPropertyItem[], pasteType: string): {
|
|
106
|
+
undos: IMutationInfo[];
|
|
107
|
+
redos: IMutationInfo[];
|
|
108
|
+
};
|
|
109
|
+
onPasteColumns?(range: IRange, colProperties: IClipboardPropertyItem[], pasteType: string): {
|
|
110
|
+
undos: IMutationInfo[];
|
|
111
|
+
redos: IMutationInfo[];
|
|
112
|
+
};
|
|
113
|
+
onAfterPaste?(success: boolean): void;
|
|
114
|
+
/**
|
|
115
|
+
* The callback would be called before the clipboard service decides what region need to be copied from or pasted to.
|
|
116
|
+
* It would jump over these filtered rows when copying or pasting.
|
|
117
|
+
*/
|
|
118
|
+
getFilteredOutRows?(): number[];
|
|
119
|
+
}
|
|
120
|
+
//# sourceMappingURL=type.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"type.d.ts","sourceRoot":"","sources":["../../../../src/services/clipboard/type.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAErF,oBAAY,SAAS;IACjB,IAAI,SAAS;IACb,GAAG,QAAQ;CACd;AAED,MAAM,MAAM,qBAAqB,GAAG,SAAS,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvF,MAAM,WAAW,sBAAsB;IACnC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,gBAAgB;IAC7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,sBAAsB,CAAC;IACpC,OAAO,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,yBAAyB;IACtC,aAAa,CAAC,EAAE,sBAAsB,EAAE,CAAC;IACzC,aAAa,CAAC,EAAE,sBAAsB,EAAE,GAAG,IAAI,CAAC;IAChD,UAAU,EAAE,YAAY,CAAC,qBAAqB,CAAC,CAAC;CACnD;AAED,MAAM,WAAW,YAAY;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,YAAY;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,SAAS,CAAC;CACvB;AAED,MAAM,WAAW,iBAAiB;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,CAAC;CACjB;AACD;;;;;GAKG;AACH,MAAM,WAAW,mBAAmB;IAChC,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,gBAAgB,CAAC,EAAE,iBAAiB,CAAC;IACrC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,YAAY,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5E;;;;;OAKG;IACH,iBAAiB,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,CAAC;IACrD;;;;;;OAMG;IACH,eAAe,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI,CAAC;IAC9G;;;OAGG;IACH,SAAS,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI,CAAC;IACvD;;;OAGG;IACH,YAAY,CAAC,CAAC,GAAG,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI,CAAC;IAC1D;;;OAGG;IACH,WAAW,CAAC,IAAI,IAAI,CAAC;IAOrB;;;;;OAKG;IACH,aAAa,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;IAChF;;;;OAIG;IACH,YAAY,CAAC,CACT,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,YAAY,CAAC,qBAAqB,CAAC,EAC3C,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE;QACN,QAAQ,EAAE,SAAS,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,CAAC;KACtB,GACF;QACC,KAAK,EAAE,aAAa,EAAE,CAAC;QACvB,KAAK,EAAE,aAAa,EAAE,CAAC;KAC1B,CAAC;IACF,WAAW,CAAC,CACR,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,sBAAsB,EAAE,EACvC,SAAS,EAAE,MAAM,GAClB;QACC,KAAK,EAAE,aAAa,EAAE,CAAC;QACvB,KAAK,EAAE,aAAa,EAAE,CAAC;KAC1B,CAAC;IACF,cAAc,CAAC,CACX,KAAK,EAAE,MAAM,EACb,aAAa,EAAE,sBAAsB,EAAE,EACvC,SAAS,EAAE,MAAM,GAClB;QACC,KAAK,EAAE,aAAa,EAAE,CAAC;QACvB,KAAK,EAAE,aAAa,EAAE,CAAC;KAC1B,CAAC;IACF,YAAY,CAAC,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IAEtC;;;OAGG;IACH,kBAAkB,CAAC,IAAI,MAAM,EAAE,CAAC;CACnC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { ICellData, IRange, ObjectMatrix } from '@univerjs/core';
|
|
2
|
+
import type { ISheetClipboardHook } from '../type';
|
|
3
|
+
export declare class USMToHtmlService {
|
|
4
|
+
convert(matrix: ObjectMatrix<ICellData & {
|
|
5
|
+
rowSpan?: number | undefined;
|
|
6
|
+
colSpan?: number | undefined;
|
|
7
|
+
}>, range: IRange, hooks: ISheetClipboardHook[]): string;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=convertor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"convertor.d.ts","sourceRoot":"","sources":["../../../../../src/services/clipboard/usm-to-html/convertor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAEtE,OAAO,KAAK,EAAiD,mBAAmB,EAAE,MAAM,SAAS,CAAC;AA6FlG,qBAAa,gBAAgB;IACzB,OAAO,CACH,MAAM,EAAE,YAAY,CAChB,SAAS,GAAG;QACR,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;QAC7B,OAAO,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;KAChC,CACJ,EACD,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,mBAAmB,EAAE,GAC7B,MAAM;CAeZ"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import type { IPosition, Nullable } from '@univerjs/core';
|
|
2
|
+
import type { IDisposable } from '@wendellhu/redi';
|
|
3
|
+
import type { Observable } from 'rxjs';
|
|
4
|
+
export interface ICellEditorManagerParam extends Partial<IPosition> {
|
|
5
|
+
show: boolean;
|
|
6
|
+
}
|
|
7
|
+
export interface ICellEditorBoundingClientRect {
|
|
8
|
+
left: number;
|
|
9
|
+
top: number;
|
|
10
|
+
width: number;
|
|
11
|
+
height: number;
|
|
12
|
+
}
|
|
13
|
+
export interface ICellEditorManagerService {
|
|
14
|
+
state$: Observable<Nullable<ICellEditorManagerParam>>;
|
|
15
|
+
rect$: Observable<Nullable<ICellEditorBoundingClientRect>>;
|
|
16
|
+
focus$: Observable<boolean>;
|
|
17
|
+
dispose(): void;
|
|
18
|
+
setState(param: ICellEditorManagerParam): void;
|
|
19
|
+
getState(): Readonly<Nullable<ICellEditorManagerParam>>;
|
|
20
|
+
setRect(param: ICellEditorBoundingClientRect): void;
|
|
21
|
+
getRect(): Readonly<Nullable<ICellEditorBoundingClientRect>>;
|
|
22
|
+
setFocus(param: boolean): void;
|
|
23
|
+
}
|
|
24
|
+
export declare class CellEditorManagerService implements ICellEditorManagerService, IDisposable {
|
|
25
|
+
private _state;
|
|
26
|
+
private _rect;
|
|
27
|
+
private _focus;
|
|
28
|
+
private readonly _state$;
|
|
29
|
+
readonly state$: Observable<Nullable<ICellEditorManagerParam>>;
|
|
30
|
+
private readonly _rect$;
|
|
31
|
+
readonly rect$: Observable<Nullable<ICellEditorBoundingClientRect>>;
|
|
32
|
+
private readonly _focus$;
|
|
33
|
+
readonly focus$: Observable<boolean>;
|
|
34
|
+
dispose(): void;
|
|
35
|
+
setState(param: ICellEditorManagerParam): void;
|
|
36
|
+
getRect(): Readonly<Nullable<ICellEditorBoundingClientRect>>;
|
|
37
|
+
setRect(param: ICellEditorBoundingClientRect): void;
|
|
38
|
+
getState(): Readonly<Nullable<ICellEditorManagerParam>>;
|
|
39
|
+
setFocus(param?: boolean): void;
|
|
40
|
+
private _refresh;
|
|
41
|
+
}
|
|
42
|
+
export declare const ICellEditorManagerService: import("@wendellhu/redi").IdentifierDecorator<CellEditorManagerService>;
|
|
43
|
+
//# sourceMappingURL=cell-editor-manager.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cell-editor-manager.service.d.ts","sourceRoot":"","sources":["../../../../src/services/editor/cell-editor-manager.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAGvC,MAAM,WAAW,uBAAwB,SAAQ,OAAO,CAAC,SAAS,CAAC;IAC/D,IAAI,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,6BAA6B;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,yBAAyB;IACtC,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC,CAAC;IACtD,KAAK,EAAE,UAAU,CAAC,QAAQ,CAAC,6BAA6B,CAAC,CAAC,CAAC;IAC3D,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAC5B,OAAO,IAAI,IAAI,CAAC;IAChB,QAAQ,CAAC,KAAK,EAAE,uBAAuB,GAAG,IAAI,CAAC;IAC/C,QAAQ,IAAI,QAAQ,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC,CAAC;IACxD,OAAO,CAAC,KAAK,EAAE,6BAA6B,GAAG,IAAI,CAAC;IACpD,OAAO,IAAI,QAAQ,CAAC,QAAQ,CAAC,6BAA6B,CAAC,CAAC,CAAC;IAC7D,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;CAClC;AAED,qBAAa,wBAAyB,YAAW,yBAAyB,EAAE,WAAW;IACnF,OAAO,CAAC,MAAM,CAA2C;IAEzD,OAAO,CAAC,KAAK,CAAiD;IAE9D,OAAO,CAAC,MAAM,CAAkB;IAEhC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAgE;IAExF,QAAQ,CAAC,MAAM,gDAA+B;IAE9C,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsE;IAE7F,QAAQ,CAAC,KAAK,sDAA8B;IAE5C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA6C;IAErE,QAAQ,CAAC,MAAM,sBAA+B;IAE9C,OAAO,IAAI,IAAI;IAOf,QAAQ,CAAC,KAAK,EAAE,uBAAuB;IAMvC,OAAO,IAAI,QAAQ,CAAC,QAAQ,CAAC,6BAA6B,CAAC,CAAC;IAI5D,OAAO,CAAC,KAAK,EAAE,6BAA6B;IAK5C,QAAQ,IAAI,QAAQ,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC;IAIvD,QAAQ,CAAC,KAAK,GAAE,OAAe;IAK/B,OAAO,CAAC,QAAQ;CAGnB;AAED,eAAO,MAAM,yBAAyB,yEAErC,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import type { Nullable } from '@univerjs/core';
|
|
2
|
+
import type { IDisposable } from '@wendellhu/redi';
|
|
3
|
+
import type { Observable } from 'rxjs';
|
|
4
|
+
export interface IFormulaEditorManagerService {
|
|
5
|
+
position$: Observable<Nullable<DOMRect>>;
|
|
6
|
+
focus$: Observable<boolean>;
|
|
7
|
+
fxBtnClick$: Observable<boolean>;
|
|
8
|
+
dispose(): void;
|
|
9
|
+
setPosition(param: DOMRect): void;
|
|
10
|
+
getPosition(): Readonly<Nullable<DOMRect>>;
|
|
11
|
+
setFocus(param: boolean): void;
|
|
12
|
+
}
|
|
13
|
+
export declare class FormulaEditorManagerService implements IDisposable {
|
|
14
|
+
private _position;
|
|
15
|
+
private readonly _position$;
|
|
16
|
+
readonly position$: Observable<Nullable<DOMRect>>;
|
|
17
|
+
private _focus;
|
|
18
|
+
private readonly _focus$;
|
|
19
|
+
readonly focus$: Observable<boolean>;
|
|
20
|
+
private readonly _fxBtnClick$;
|
|
21
|
+
readonly fxBtnClick$: Observable<boolean>;
|
|
22
|
+
dispose(): void;
|
|
23
|
+
setPosition(param: DOMRect): void;
|
|
24
|
+
getPosition(): Readonly<Nullable<DOMRect>>;
|
|
25
|
+
setFocus(param?: boolean): void;
|
|
26
|
+
handleFxBtnClick(params: boolean): void;
|
|
27
|
+
private _refresh;
|
|
28
|
+
}
|
|
29
|
+
export declare const IFormulaEditorManagerService: import("@wendellhu/redi").IdentifierDecorator<FormulaEditorManagerService>;
|
|
30
|
+
//# sourceMappingURL=formula-editor-manager.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"formula-editor-manager.service.d.ts","sourceRoot":"","sources":["../../../../src/services/editor/formula-editor-manager.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC/C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEnD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAGvC,MAAM,WAAW,4BAA4B;IACzC,SAAS,EAAE,UAAU,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;IACzC,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IAC5B,WAAW,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC;IACjC,OAAO,IAAI,IAAI,CAAC;IAChB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;IAClC,WAAW,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3C,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;CAClC;AAED,qBAAa,2BAA4B,YAAW,WAAW;IAC3D,OAAO,CAAC,SAAS,CAA2B;IAE5C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAgD;IAC3E,QAAQ,CAAC,SAAS,gCAAkC;IAEpD,OAAO,CAAC,MAAM,CAAkB;IAEhC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA6C;IACrE,QAAQ,CAAC,MAAM,sBAA+B;IAE9C,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAuC;IACpE,QAAQ,CAAC,WAAW,sBAAoC;IAExD,OAAO,IAAI,IAAI;IAOf,WAAW,CAAC,KAAK,EAAE,OAAO;IAM1B,WAAW,IAAI,QAAQ,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;IAI1C,QAAQ,CAAC,KAAK,GAAE,OAAe;IAK/B,gBAAgB,CAAC,MAAM,EAAE,OAAO;IAIhC,OAAO,CAAC,QAAQ;CAGnB;AAED,eAAO,MAAM,4BAA4B,4EAExC,CAAC"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import type { ICellData, IPosition, Nullable } from '@univerjs/core';
|
|
2
|
+
import { Disposable, InterceptorManager } from '@univerjs/core';
|
|
3
|
+
import type { IDocumentLayoutObject } from '@univerjs/engine-render';
|
|
4
|
+
import { DeviceInputEventType } from '@univerjs/engine-render';
|
|
5
|
+
import type { ISheetLocation } from '@univerjs/sheets';
|
|
6
|
+
import type { KeyCode } from '@univerjs/ui';
|
|
7
|
+
import type { IDisposable } from '@wendellhu/redi';
|
|
8
|
+
import type { Observable } from 'rxjs';
|
|
9
|
+
export interface IEditorBridgeServiceVisibleParam {
|
|
10
|
+
visible: boolean;
|
|
11
|
+
eventType: DeviceInputEventType;
|
|
12
|
+
keycode?: KeyCode;
|
|
13
|
+
}
|
|
14
|
+
export interface IEditorBridgeServiceParam {
|
|
15
|
+
unitId: string;
|
|
16
|
+
sheetId: string;
|
|
17
|
+
row: number;
|
|
18
|
+
column: number;
|
|
19
|
+
position: IPosition;
|
|
20
|
+
canvasOffset: {
|
|
21
|
+
left: number;
|
|
22
|
+
top: number;
|
|
23
|
+
};
|
|
24
|
+
documentLayoutObject: IDocumentLayoutObject;
|
|
25
|
+
scaleX: number;
|
|
26
|
+
scaleY: number;
|
|
27
|
+
editorUnitId: string;
|
|
28
|
+
}
|
|
29
|
+
declare const BEFORE_CELL_EDIT: import("@univerjs/core").IInterceptor<ICellData, ISheetLocation>;
|
|
30
|
+
declare const AFTER_CELL_EDIT: import("@univerjs/core").IInterceptor<ICellData, ISheetLocation>;
|
|
31
|
+
export interface IEditorBridgeService {
|
|
32
|
+
state$: Observable<Nullable<IEditorBridgeServiceParam>>;
|
|
33
|
+
visible$: Observable<IEditorBridgeServiceVisibleParam>;
|
|
34
|
+
interceptor: InterceptorManager<{
|
|
35
|
+
BEFORE_CELL_EDIT: typeof BEFORE_CELL_EDIT;
|
|
36
|
+
AFTER_CELL_EDIT: typeof AFTER_CELL_EDIT;
|
|
37
|
+
}>;
|
|
38
|
+
dispose(): void;
|
|
39
|
+
setState(param: IEditorBridgeServiceParam): void;
|
|
40
|
+
getState(): Readonly<Nullable<IEditorBridgeServiceParam>>;
|
|
41
|
+
changeVisible(param: IEditorBridgeServiceVisibleParam): void;
|
|
42
|
+
changeEditorDirty(dirtyStatus: boolean): void;
|
|
43
|
+
getEditorDirty(): boolean;
|
|
44
|
+
isVisible(): IEditorBridgeServiceVisibleParam;
|
|
45
|
+
enableForceKeepVisible(): void;
|
|
46
|
+
disableForceKeepVisible(): void;
|
|
47
|
+
isForceKeepVisible(): boolean;
|
|
48
|
+
getCurrentEditorId(): Nullable<string>;
|
|
49
|
+
}
|
|
50
|
+
export declare class EditorBridgeService extends Disposable implements IEditorBridgeService, IDisposable {
|
|
51
|
+
private _state;
|
|
52
|
+
private _isForceKeepVisible;
|
|
53
|
+
private _editorIsDirty;
|
|
54
|
+
private _visible;
|
|
55
|
+
private readonly _state$;
|
|
56
|
+
readonly state$: Observable<Nullable<IEditorBridgeServiceParam>>;
|
|
57
|
+
private readonly _visible$;
|
|
58
|
+
readonly visible$: Observable<IEditorBridgeServiceVisibleParam>;
|
|
59
|
+
private readonly _afterVisible$;
|
|
60
|
+
readonly afterVisible$: Observable<IEditorBridgeServiceVisibleParam>;
|
|
61
|
+
interceptor: InterceptorManager<{
|
|
62
|
+
BEFORE_CELL_EDIT: import("@univerjs/core").IInterceptor<ICellData, ISheetLocation>;
|
|
63
|
+
AFTER_CELL_EDIT: import("@univerjs/core").IInterceptor<ICellData, ISheetLocation>;
|
|
64
|
+
}>;
|
|
65
|
+
constructor();
|
|
66
|
+
setState(param: IEditorBridgeServiceParam): void;
|
|
67
|
+
getState(): Readonly<Nullable<IEditorBridgeServiceParam>>;
|
|
68
|
+
getCurrentEditorId(): string | undefined;
|
|
69
|
+
changeVisible(param: IEditorBridgeServiceVisibleParam): void;
|
|
70
|
+
isVisible(): IEditorBridgeServiceVisibleParam;
|
|
71
|
+
enableForceKeepVisible(): void;
|
|
72
|
+
disableForceKeepVisible(): void;
|
|
73
|
+
isForceKeepVisible(): boolean;
|
|
74
|
+
changeEditorDirty(dirtyStatus: boolean): void;
|
|
75
|
+
getEditorDirty(): boolean;
|
|
76
|
+
}
|
|
77
|
+
export declare const IEditorBridgeService: import("@wendellhu/redi").IdentifierDecorator<EditorBridgeService>;
|
|
78
|
+
export {};
|
|
79
|
+
//# sourceMappingURL=editor-bridge.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"editor-bridge.service.d.ts","sourceRoot":"","sources":["../../../src/services/editor-bridge.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { IStyleData } from '@univerjs/core';
|
|
2
|
+
import { Disposable, IUniverInstanceService, ObjectMatrix } from '@univerjs/core';
|
|
3
|
+
import { SelectionManagerService } from '@univerjs/sheets';
|
|
4
|
+
import type { Observable } from 'rxjs';
|
|
5
|
+
export interface IFormatPainterService {
|
|
6
|
+
status$: Observable<FormatPainterStatus>;
|
|
7
|
+
setStatus(status: FormatPainterStatus): void;
|
|
8
|
+
getStatus(): FormatPainterStatus;
|
|
9
|
+
getSelectionStyles(): ObjectMatrix<IStyleData>;
|
|
10
|
+
}
|
|
11
|
+
export declare enum FormatPainterStatus {
|
|
12
|
+
OFF = 0,
|
|
13
|
+
ONCE = 1,
|
|
14
|
+
INFINITE = 2
|
|
15
|
+
}
|
|
16
|
+
export declare const IFormatPainterService: import("@wendellhu/redi").IdentifierDecorator<IFormatPainterService>;
|
|
17
|
+
export declare class FormatPainterService extends Disposable implements IFormatPainterService {
|
|
18
|
+
private readonly _selectionManagerService;
|
|
19
|
+
private readonly _currentService;
|
|
20
|
+
readonly status$: Observable<FormatPainterStatus>;
|
|
21
|
+
private _selectionStyles;
|
|
22
|
+
private readonly _status$;
|
|
23
|
+
constructor(_selectionManagerService: SelectionManagerService, _currentService: IUniverInstanceService);
|
|
24
|
+
setStatus(status: FormatPainterStatus): void;
|
|
25
|
+
getStatus(): FormatPainterStatus;
|
|
26
|
+
private _getSelectionRangeStyle;
|
|
27
|
+
getSelectionStyles(): ObjectMatrix<IStyleData>;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=format-painter.service.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"format-painter.service.d.ts","sourceRoot":"","sources":["../../../../src/services/format-painter/format-painter.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAa,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAClF,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAE3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAGvC,MAAM,WAAW,qBAAqB;IAClC,OAAO,EAAE,UAAU,CAAC,mBAAmB,CAAC,CAAC;IACzC,SAAS,CAAC,MAAM,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAC7C,SAAS,IAAI,mBAAmB,CAAC;IACjC,kBAAkB,IAAI,YAAY,CAAC,UAAU,CAAC,CAAC;CAClD;AAED,oBAAY,mBAAmB;IAC3B,GAAG,IAAA;IACH,IAAI,IAAA;IACJ,QAAQ,IAAA;CACX;AAED,eAAO,MAAM,qBAAqB,sEAA2E,CAAC;AAE9G,qBAAa,oBAAqB,SAAQ,UAAW,YAAW,qBAAqB;IAO5C,OAAO,CAAC,QAAQ,CAAC,wBAAwB;IAClD,OAAO,CAAC,QAAQ,CAAC,eAAe;IAP5D,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,mBAAmB,CAAC,CAAC;IAClD,OAAO,CAAC,gBAAgB,CAA2B;IAEnD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAuC;gBAGV,wBAAwB,EAAE,uBAAuB,EAC1D,eAAe,EAAE,sBAAsB;IASpF,SAAS,CAAC,MAAM,EAAE,mBAAmB;IAOrC,SAAS,IAAI,mBAAmB;IAIhC,OAAO,CAAC,uBAAuB;IAmB/B,kBAAkB;CAGrB"}
|