@formicoidea/labre-core 0.31.0 → 0.33.0
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/_pkgs/affine-block-attachment/attachment-block.js +1 -1
- package/dist/_pkgs/affine-block-callout/callout-block.d.ts +6 -0
- package/dist/_pkgs/affine-block-callout/callout-block.js +26 -4
- package/dist/_pkgs/affine-block-callout/callout-keymap.js +59 -19
- package/dist/_pkgs/affine-block-callout/commands/callout-to-paragraph.d.ts +20 -0
- package/dist/_pkgs/affine-block-callout/commands/callout-to-paragraph.js +60 -0
- package/dist/_pkgs/affine-block-callout/commands/split-callout.d.ts +17 -0
- package/dist/_pkgs/affine-block-callout/commands/split-callout.js +42 -0
- package/dist/_pkgs/affine-block-callout/configs/slash-menu.js +9 -6
- package/dist/_pkgs/affine-block-callout/emoji-margin.d.ts +9 -0
- package/dist/_pkgs/affine-block-callout/emoji-margin.js +36 -0
- package/dist/_pkgs/affine-block-callout/emoji-menu.d.ts +5 -1
- package/dist/_pkgs/affine-block-callout/emoji-menu.js +5 -0
- package/dist/_pkgs/affine-block-code/code-block-inline.js +1 -1
- package/dist/_pkgs/affine-block-code/code-block.d.ts +14 -0
- package/dist/_pkgs/affine-block-code/code-block.js +44 -6
- package/dist/_pkgs/affine-block-code/code-toolbar/components/code-toolbar.d.ts +2 -0
- package/dist/_pkgs/affine-block-code/code-toolbar/components/code-toolbar.js +23 -14
- package/dist/_pkgs/affine-block-code/code-toolbar/components/more-menu.d.ts +16 -0
- package/dist/_pkgs/affine-block-code/code-toolbar/components/more-menu.js +93 -0
- package/dist/_pkgs/affine-block-code/code-toolbar/config.js +54 -5
- package/dist/_pkgs/affine-block-code/code-toolbar/index.js +1 -1
- package/dist/_pkgs/affine-block-code/effects.d.ts +2 -0
- package/dist/_pkgs/affine-block-code/effects.js +2 -0
- package/dist/_pkgs/affine-block-code/highlight/affine-code-unit.js +6 -1
- package/dist/_pkgs/affine-block-code/index.d.ts +1 -0
- package/dist/_pkgs/affine-block-code/index.js +1 -0
- package/dist/_pkgs/affine-block-code/line-numbers.d.ts +25 -0
- package/dist/_pkgs/affine-block-code/line-numbers.js +27 -0
- package/dist/_pkgs/affine-block-code/styles.js +31 -0
- package/dist/_pkgs/affine-block-data-view/data-view-block.js +1 -0
- package/dist/_pkgs/affine-block-database/components/title/index.js +4 -1
- package/dist/_pkgs/affine-block-database/configs/slash-menu.js +28 -1
- package/dist/_pkgs/affine-block-database/data-source.js +1 -2
- package/dist/_pkgs/affine-block-database/database-block.js +13 -0
- package/dist/_pkgs/affine-block-database/external-data-source.js +1 -1
- package/dist/_pkgs/affine-block-database/properties/paste-url.d.ts +24 -0
- package/dist/_pkgs/affine-block-database/properties/paste-url.js +98 -0
- package/dist/_pkgs/affine-block-database/properties/rich-text/cell-renderer.js +9 -19
- package/dist/_pkgs/affine-block-database/properties/title/text.js +20 -25
- package/dist/_pkgs/affine-block-database/views/index.js +1 -0
- package/dist/_pkgs/affine-block-edgeless-text/edgeless-text-block.js +11 -1
- package/dist/_pkgs/affine-block-edgeless-text/edgeless-toolbar/config.d.ts +3 -0
- package/dist/_pkgs/affine-block-edgeless-text/edgeless-toolbar/config.js +48 -1
- package/dist/_pkgs/affine-block-edgeless-text/edgeless-toolbar/font-size.d.ts +17 -0
- package/dist/_pkgs/affine-block-edgeless-text/edgeless-toolbar/font-size.js +24 -0
- package/dist/_pkgs/affine-block-embed/embed-figma-block/embed-figma-service.js +1 -1
- package/dist/_pkgs/affine-block-embed/embed-iframe-block/configs/toolbar.js +2 -2
- package/dist/_pkgs/affine-block-embed-doc/common/doc-trashed.d.ts +9 -0
- package/dist/_pkgs/affine-block-embed-doc/common/doc-trashed.js +10 -0
- package/dist/_pkgs/affine-block-embed-doc/embed-linked-doc-block/configs/toolbar.js +1 -1
- package/dist/_pkgs/affine-block-embed-doc/embed-linked-doc-block/embed-linked-doc-block.js +8 -4
- package/dist/_pkgs/affine-block-embed-doc/embed-linked-doc-block/utils.js +1 -1
- package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/configs/toolbar.js +1 -1
- package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/embed-synced-doc-block.d.ts +4 -0
- package/dist/_pkgs/affine-block-embed-doc/embed-synced-doc-block/embed-synced-doc-block.js +23 -4
- package/dist/_pkgs/affine-block-frame/frame-manager.d.ts +13 -0
- package/dist/_pkgs/affine-block-frame/frame-manager.js +34 -2
- package/dist/_pkgs/affine-block-frame/frame-tool.js +1 -1
- package/dist/_pkgs/affine-block-image/components/page-image-block.js +1 -1
- package/dist/_pkgs/affine-block-image/image-edgeless-block.js +1 -1
- package/dist/_pkgs/affine-block-latex/styles.js +6 -1
- package/dist/_pkgs/affine-block-list/utils/forward-delete.js +1 -1
- package/dist/_pkgs/affine-block-note/commands/select-block.js +1 -1
- package/dist/_pkgs/affine-block-note/commands/select-blocks-between.js +1 -1
- package/dist/_pkgs/affine-block-note/move-block.js +1 -1
- package/dist/_pkgs/affine-block-note/note-edgeless-block.d.ts +9 -0
- package/dist/_pkgs/affine-block-note/note-edgeless-block.js +29 -1
- package/dist/_pkgs/affine-block-paragraph/utils/forward-delete.js +2 -2
- package/dist/_pkgs/affine-block-paragraph/utils/merge-with-prev.js +1 -1
- package/dist/_pkgs/affine-block-root/commands/pivot-commands.d.ts +37 -0
- package/dist/_pkgs/affine-block-root/commands/pivot-commands.js +168 -0
- package/dist/_pkgs/affine-block-root/commands/reading-commands.d.ts +23 -0
- package/dist/_pkgs/affine-block-root/commands/reading-commands.js +107 -0
- package/dist/_pkgs/affine-block-root/commands/tag-commands.d.ts +47 -0
- package/dist/_pkgs/affine-block-root/commands/tag-commands.js +159 -0
- package/dist/_pkgs/affine-block-root/configs/toolbar.d.ts +1 -0
- package/dist/_pkgs/affine-block-root/edgeless/configs/toolbar/more.js +10 -3
- package/dist/_pkgs/affine-block-root/edgeless/configs/toolbar/render-linked-doc.js +1 -1
- package/dist/_pkgs/affine-block-root/edgeless/edgeless-keyboard.js +27 -2
- package/dist/_pkgs/affine-block-root/edgeless/edgeless-root-block.js +11 -2
- package/dist/_pkgs/affine-block-root/edgeless/edgeless-root-service.js +14 -0
- package/dist/_pkgs/affine-block-root/edgeless/index.d.ts +1 -0
- package/dist/_pkgs/affine-block-root/edgeless/index.js +1 -0
- package/dist/_pkgs/affine-block-root/edgeless/reserved-keys.d.ts +21 -0
- package/dist/_pkgs/affine-block-root/edgeless/reserved-keys.js +34 -0
- package/dist/_pkgs/affine-block-root/edgeless/utils/clipboard-utils.js +1 -1
- package/dist/_pkgs/affine-block-root/edgeless/utils/clone-utils.d.ts +7 -1
- package/dist/_pkgs/affine-block-root/edgeless/utils/clone-utils.js +11 -2
- package/dist/_pkgs/affine-block-root/index.d.ts +4 -1
- package/dist/_pkgs/affine-block-root/index.js +4 -1
- package/dist/_pkgs/affine-block-root/keyboard/commands.d.ts +2 -0
- package/dist/_pkgs/affine-block-root/keyboard/commands.js +147 -0
- package/dist/_pkgs/affine-block-root/view.js +13 -4
- package/dist/_pkgs/affine-block-surface/adapters/markdown/element-adapter/type.js +1 -1
- package/dist/_pkgs/affine-block-surface/adapters/plain-text/element-adapter/type.js +1 -1
- package/dist/_pkgs/affine-block-surface/commands/reassociate-connectors.js +0 -1
- package/dist/_pkgs/affine-block-surface/effects.js +6 -0
- package/dist/_pkgs/affine-block-surface/element-model/index.d.ts +21 -3
- package/dist/_pkgs/affine-block-surface/element-model/index.js +14 -2
- package/dist/_pkgs/affine-block-surface/extensions/audit.d.ts +107 -0
- package/dist/_pkgs/affine-block-surface/extensions/audit.js +489 -0
- package/dist/_pkgs/affine-block-surface/extensions/crud-extension.d.ts +14 -0
- package/dist/_pkgs/affine-block-surface/extensions/crud-extension.js +37 -5
- package/dist/_pkgs/affine-block-surface/extensions/editor-anchored-panel.d.ts +133 -0
- package/dist/_pkgs/affine-block-surface/extensions/editor-anchored-panel.js +327 -0
- package/dist/_pkgs/affine-block-surface/extensions/element-renderer.js +1 -1
- package/dist/_pkgs/affine-block-surface/extensions/export-manager/export-manager.js +1 -1
- package/dist/_pkgs/affine-block-surface/extensions/index.d.ts +17 -0
- package/dist/_pkgs/affine-block-surface/extensions/index.js +17 -0
- package/dist/_pkgs/affine-block-surface/extensions/interchange-import.d.ts +172 -0
- package/dist/_pkgs/affine-block-surface/extensions/interchange-import.js +393 -0
- package/dist/_pkgs/affine-block-surface/extensions/interchange.d.ts +306 -0
- package/dist/_pkgs/affine-block-surface/extensions/interchange.js +64 -0
- package/dist/_pkgs/affine-block-surface/extensions/map-quality-widget.d.ts +146 -0
- package/dist/_pkgs/affine-block-surface/extensions/map-quality-widget.js +528 -0
- package/dist/_pkgs/affine-block-surface/extensions/map-quality.d.ts +109 -0
- package/dist/_pkgs/affine-block-surface/extensions/map-quality.js +84 -0
- package/dist/_pkgs/affine-block-surface/extensions/morph-toolbar.d.ts +248 -0
- package/dist/_pkgs/affine-block-surface/extensions/morph-toolbar.js +248 -0
- package/dist/_pkgs/affine-block-surface/extensions/reading-toolbar.d.ts +15 -0
- package/dist/_pkgs/affine-block-surface/extensions/reading-toolbar.js +158 -0
- package/dist/_pkgs/affine-block-surface/extensions/reading-widget.d.ts +145 -0
- package/dist/_pkgs/affine-block-surface/extensions/reading-widget.js +588 -0
- package/dist/_pkgs/affine-block-surface/extensions/reading.d.ts +494 -0
- package/dist/_pkgs/affine-block-surface/extensions/reading.js +767 -0
- package/dist/_pkgs/affine-block-surface/extensions/spotlight.d.ts +45 -0
- package/dist/_pkgs/affine-block-surface/extensions/spotlight.js +177 -0
- package/dist/_pkgs/affine-block-surface/extensions/svg-sketch.d.ts +107 -0
- package/dist/_pkgs/affine-block-surface/extensions/svg-sketch.js +958 -0
- package/dist/_pkgs/affine-block-surface/extensions/tags-toolbar.d.ts +10 -0
- package/dist/_pkgs/affine-block-surface/extensions/tags-toolbar.js +295 -0
- package/dist/_pkgs/affine-block-surface/extensions/validation-toolbar.d.ts +27 -0
- package/dist/_pkgs/affine-block-surface/extensions/validation-toolbar.js +361 -0
- package/dist/_pkgs/affine-block-surface/extensions/validation.d.ts +2129 -0
- package/dist/_pkgs/affine-block-surface/extensions/validation.js +4620 -0
- package/dist/_pkgs/affine-block-surface/extensions/violation-detail-widget.d.ts +330 -0
- package/dist/_pkgs/affine-block-surface/extensions/violation-detail-widget.js +1004 -0
- package/dist/_pkgs/affine-block-surface/extensions/violation-timeline.d.ts +80 -0
- package/dist/_pkgs/affine-block-surface/extensions/violation-timeline.js +123 -0
- package/dist/_pkgs/affine-block-surface/framework-background/def.d.ts +610 -0
- package/dist/_pkgs/affine-block-surface/framework-background/def.js +206 -0
- package/dist/_pkgs/affine-block-surface/framework-background/facts.d.ts +188 -0
- package/dist/_pkgs/affine-block-surface/framework-background/facts.js +284 -0
- package/dist/_pkgs/affine-block-surface/framework-background/index.d.ts +5 -0
- package/dist/_pkgs/affine-block-surface/framework-background/index.js +5 -0
- package/dist/_pkgs/affine-block-surface/framework-background/interaction.d.ts +12 -0
- package/dist/_pkgs/affine-block-surface/framework-background/interaction.js +24 -0
- package/dist/_pkgs/affine-block-surface/framework-background/labels.d.ts +99 -0
- package/dist/_pkgs/affine-block-surface/framework-background/labels.js +193 -0
- package/dist/_pkgs/affine-block-surface/framework-background/renderer.d.ts +8 -0
- package/dist/_pkgs/affine-block-surface/framework-background/renderer.js +399 -0
- package/dist/_pkgs/affine-block-surface/index.d.ts +1 -0
- package/dist/_pkgs/affine-block-surface/index.js +1 -0
- package/dist/_pkgs/affine-block-surface/renderer/canvas-renderer.d.ts +69 -3
- package/dist/_pkgs/affine-block-surface/renderer/canvas-renderer.js +333 -44
- package/dist/_pkgs/affine-block-surface/renderer/dom-renderer.js +18 -2
- package/dist/_pkgs/affine-block-surface/renderer/overlay.js +1 -1
- package/dist/_pkgs/affine-block-surface/tool/default-tool.js +8 -0
- package/dist/_pkgs/affine-block-surface/utils/font.js +9 -3
- package/dist/_pkgs/affine-block-surface/view.d.ts +17 -0
- package/dist/_pkgs/affine-block-surface/view.js +57 -2
- package/dist/_pkgs/affine-block-surface-ref/portal/note.js +2 -2
- package/dist/_pkgs/affine-block-table/commands.js +1 -1
- package/dist/_pkgs/affine-block-table/selection-controller.d.ts +6 -0
- package/dist/_pkgs/affine-block-table/selection-controller.js +24 -1
- package/dist/_pkgs/affine-block-table/table-block.js +8 -2
- package/dist/_pkgs/affine-block-table/table-cell.js +5 -6
- package/dist/_pkgs/affine-block-table/table-keymap.d.ts +18 -0
- package/dist/_pkgs/affine-block-table/table-keymap.js +41 -0
- package/dist/_pkgs/affine-block-table/utils.d.ts +7 -0
- package/dist/_pkgs/affine-block-table/utils.js +12 -0
- package/dist/_pkgs/affine-block-table/view.js +2 -0
- package/dist/_pkgs/affine-components/caption/captioned-block-component.js +2 -1
- package/dist/_pkgs/affine-components/context-menu/button.d.ts +7 -0
- package/dist/_pkgs/affine-components/context-menu/button.js +7 -2
- package/dist/_pkgs/affine-components/context-menu/input.d.ts +4 -0
- package/dist/_pkgs/affine-components/context-menu/input.js +12 -0
- package/dist/_pkgs/affine-components/context-menu/menu-all.d.ts +2 -0
- package/dist/_pkgs/affine-components/context-menu/menu-renderer.js +8 -1
- package/dist/_pkgs/affine-components/context-menu/sub-menu.js +3 -0
- package/dist/_pkgs/affine-components/edgeless-shape-color-picker/color-picker.js +1 -1
- package/dist/_pkgs/affine-components/embed-card-modal/embed-card-edit-modal.js +1 -1
- package/dist/_pkgs/affine-components/filterable-list/styles.js +1 -1
- package/dist/_pkgs/affine-components/highlight-dropdown-menu/highlight-duotone-icon.js +8 -8
- package/dist/_pkgs/affine-components/highlight-dropdown-menu/text-duotone-icon.js +11 -11
- package/dist/_pkgs/affine-components/icon-picker/affine-icon-picker-panel.d.ts +28 -0
- package/dist/_pkgs/affine-components/icon-picker/affine-icon-picker-panel.js +231 -0
- package/dist/_pkgs/affine-components/icon-picker/emoji-data.d.ts +40 -0
- package/dist/_pkgs/affine-components/icon-picker/emoji-data.js +99 -0
- package/dist/_pkgs/affine-components/icon-picker/emoji-picker-panel.d.ts +32 -0
- package/dist/_pkgs/affine-components/icon-picker/emoji-picker-panel.js +276 -0
- package/dist/_pkgs/affine-components/icon-picker/icon-data.d.ts +34 -0
- package/dist/_pkgs/affine-components/icon-picker/icon-data.js +83 -0
- package/dist/_pkgs/affine-components/icon-picker/icon-picker.d.ts +39 -0
- package/dist/_pkgs/affine-components/icon-picker/icon-picker.js +233 -0
- package/dist/_pkgs/affine-components/icon-picker/index.d.ts +8 -0
- package/dist/_pkgs/affine-components/icon-picker/index.js +15 -0
- package/dist/_pkgs/affine-components/icon-picker/recent-store.d.ts +8 -0
- package/dist/_pkgs/affine-components/icon-picker/recent-store.js +41 -0
- package/dist/_pkgs/affine-components/icon-picker/styles.d.ts +5 -0
- package/dist/_pkgs/affine-components/icon-picker/styles.js +166 -0
- package/dist/_pkgs/affine-components/icon-picker/types.d.ts +22 -0
- package/dist/_pkgs/affine-components/icon-picker/types.js +10 -0
- package/dist/_pkgs/affine-components/icons/text.js +426 -426
- package/dist/_pkgs/affine-components/open-doc-dropdown-menu/dropdown-menu.d.ts +1 -0
- package/dist/_pkgs/affine-components/peek/peekable.js +1 -1
- package/dist/_pkgs/affine-components/portal/portal.d.ts +1 -1
- package/dist/_pkgs/affine-components/toolbar/index.d.ts +1 -0
- package/dist/_pkgs/affine-components/toolbar/index.js +1 -0
- package/dist/_pkgs/affine-components/toolbar/menu-button.js +2 -1
- package/dist/_pkgs/affine-components/toolbar/picker-menu.d.ts +55 -0
- package/dist/_pkgs/affine-components/toolbar/picker-menu.js +47 -0
- package/dist/_pkgs/affine-components/toolbar/toolbar.js +11 -10
- package/dist/_pkgs/affine-foundation/view.js +11 -2
- package/dist/_pkgs/affine-fragment-frame-panel/body/frame-panel-body.js +2 -2
- package/dist/_pkgs/affine-fragment-frame-panel/header/frame-panel-header.js +2 -2
- package/dist/_pkgs/affine-fragment-frame-panel/header/frames-setting-menu.js +1 -1
- package/dist/_pkgs/affine-fragment-outline/mobile-outline-panel.js +1 -1
- package/dist/_pkgs/affine-gfx-brush/index.d.ts +1 -0
- package/dist/_pkgs/affine-gfx-brush/index.js +1 -0
- package/dist/_pkgs/affine-gfx-brush/renderer/dom/brush.d.ts +1 -0
- package/dist/_pkgs/affine-gfx-brush/renderer/dom/brush.js +11 -0
- package/dist/_pkgs/affine-gfx-brush/renderer/dom/highlighter.d.ts +1 -0
- package/dist/_pkgs/affine-gfx-brush/renderer/dom/highlighter.js +11 -0
- package/dist/_pkgs/affine-gfx-brush/renderer/dom/index.d.ts +2 -0
- package/dist/_pkgs/affine-gfx-brush/renderer/dom/index.js +2 -0
- package/dist/_pkgs/affine-gfx-brush/renderer/dom/shared.d.ts +14 -0
- package/dist/_pkgs/affine-gfx-brush/renderer/dom/shared.js +54 -0
- package/dist/_pkgs/affine-gfx-brush/renderer/index.d.ts +1 -0
- package/dist/_pkgs/affine-gfx-brush/renderer/index.js +4 -0
- package/dist/_pkgs/affine-gfx-brush/toolbar/components/pen/pen-tool-button.js +1 -1
- package/dist/_pkgs/affine-gfx-brush/view.d.ts +14 -0
- package/dist/_pkgs/affine-gfx-brush/view.js +29 -3
- package/dist/_pkgs/affine-gfx-connector/connector-manager.js +39 -16
- package/dist/_pkgs/affine-gfx-connector/connector-tool.d.ts +26 -1
- package/dist/_pkgs/affine-gfx-connector/connector-tool.js +12 -3
- package/dist/_pkgs/affine-gfx-connector/connector-watcher.js +1 -4
- package/dist/_pkgs/affine-gfx-connector/direction/direction-reveal.d.ts +123 -0
- package/dist/_pkgs/affine-gfx-connector/direction/direction-reveal.js +282 -0
- package/dist/_pkgs/affine-gfx-connector/direction/direction-widget.d.ts +65 -0
- package/dist/_pkgs/affine-gfx-connector/direction/direction-widget.js +395 -0
- package/dist/_pkgs/affine-gfx-connector/direction/index.d.ts +4 -0
- package/dist/_pkgs/affine-gfx-connector/direction/index.js +4 -0
- package/dist/_pkgs/affine-gfx-connector/direction/invert-direction.d.ts +72 -0
- package/dist/_pkgs/affine-gfx-connector/direction/invert-direction.js +185 -0
- package/dist/_pkgs/affine-gfx-connector/direction/typed-edge.d.ts +69 -0
- package/dist/_pkgs/affine-gfx-connector/direction/typed-edge.js +66 -0
- package/dist/_pkgs/affine-gfx-connector/effects.d.ts +2 -0
- package/dist/_pkgs/affine-gfx-connector/effects.js +2 -0
- package/dist/_pkgs/affine-gfx-connector/element-renderer/connector-dom/index.js +78 -41
- package/dist/_pkgs/affine-gfx-connector/element-renderer/index.js +1 -1
- package/dist/_pkgs/affine-gfx-connector/element-renderer/utils.js +1 -1
- package/dist/_pkgs/affine-gfx-connector/index.d.ts +1 -0
- package/dist/_pkgs/affine-gfx-connector/index.js +1 -0
- package/dist/_pkgs/affine-gfx-connector/toolbar/config.d.ts +50 -0
- package/dist/_pkgs/affine-gfx-connector/toolbar/config.js +68 -2
- package/dist/_pkgs/affine-gfx-connector/view.js +16 -0
- package/dist/_pkgs/affine-gfx-group/command/group-api.js +150 -62
- package/dist/_pkgs/affine-gfx-group/text/edgeless-group-title-editor.js +4 -1
- package/dist/_pkgs/affine-gfx-mindmap/adapter/markdown/index.js +1 -1
- package/dist/_pkgs/affine-gfx-mindmap/adapter/utils.js +1 -1
- package/dist/_pkgs/affine-gfx-mindmap/templates/index.js +583 -4
- package/dist/_pkgs/affine-gfx-mindmap/toolbar/mindmap-menu.js +23 -23
- package/dist/_pkgs/affine-gfx-mindmap/toolbar/mindmap-tool-button.js +5 -1
- package/dist/_pkgs/affine-gfx-mindmap/view/utils.js +1 -1
- package/dist/_pkgs/affine-gfx-note/overlay/overlay.js +1 -1
- package/dist/_pkgs/affine-gfx-note/toolbar/note-senior-button.js +1 -1
- package/dist/_pkgs/affine-gfx-pointer/tools/pan-tool.d.ts +16 -0
- package/dist/_pkgs/affine-gfx-pointer/tools/pan-tool.js +102 -32
- package/dist/_pkgs/affine-gfx-shape/commands.d.ts +2 -0
- package/dist/_pkgs/affine-gfx-shape/commands.js +33 -0
- package/dist/_pkgs/affine-gfx-shape/consts.js +1 -1
- package/dist/_pkgs/affine-gfx-shape/draggable/shape-draggable.js +1 -1
- package/dist/_pkgs/affine-gfx-shape/element-renderer/shape/polygon.js +17 -9
- package/dist/_pkgs/affine-gfx-shape/element-renderer/shape/utils.js +8 -3
- package/dist/_pkgs/affine-gfx-shape/element-renderer/shape-dom/index.js +48 -19
- package/dist/_pkgs/affine-gfx-shape/element-view.js +19 -12
- package/dist/_pkgs/affine-gfx-shape/index.d.ts +1 -1
- package/dist/_pkgs/affine-gfx-shape/index.js +1 -1
- package/dist/_pkgs/affine-gfx-shape/overlay/polygon-drawing-overlay.js +1 -1
- package/dist/_pkgs/affine-gfx-shape/overlay/polygon-vertex-editing-overlay.js +12 -7
- package/dist/_pkgs/affine-gfx-shape/overlay/shape-overlay.js +1 -1
- package/dist/_pkgs/affine-gfx-shape/polygon-tool.js +4 -2
- package/dist/_pkgs/affine-gfx-shape/shape-tool.js +1 -1
- package/dist/_pkgs/affine-gfx-shape/text/edgeless-shape-text-editor.d.ts +26 -0
- package/dist/_pkgs/affine-gfx-shape/text/edgeless-shape-text-editor.js +124 -15
- package/dist/_pkgs/affine-gfx-shape/view.js +3 -3
- package/dist/_pkgs/affine-gfx-template/builtin/other.js +66 -17
- package/dist/_pkgs/affine-gfx-template/toolbar/overlay-scrollbar.js +1 -1
- package/dist/_pkgs/affine-gfx-template/toolbar/template-panel.js +1 -1
- package/dist/_pkgs/affine-gfx-template/toolbar/template-tool-button.d.ts +2 -0
- package/dist/_pkgs/affine-gfx-template/toolbar/template-tool-button.js +18 -1
- package/dist/_pkgs/affine-gfx-text/edgeless-text-editor.js +9 -5
- package/dist/_pkgs/affine-gfx-text/toolbar/actions.js +1 -1
- package/dist/_pkgs/affine-inline-latex/command.js +46 -26
- package/dist/_pkgs/affine-inline-latex/latex-node/latex-node.d.ts +10 -0
- package/dist/_pkgs/affine-inline-latex/latex-node/latex-node.js +23 -0
- package/dist/_pkgs/affine-inline-link/command.js +1 -1
- package/dist/_pkgs/affine-inline-link/link-node/affine-link.js +4 -1
- package/dist/_pkgs/affine-inline-preset/adapters/html/html-inline.d.ts +3 -0
- package/dist/_pkgs/affine-inline-preset/adapters/html/html-inline.js +29 -1
- package/dist/_pkgs/affine-inline-preset/command/format-block.js +1 -1
- package/dist/_pkgs/affine-inline-preset/command/format-native.js +2 -2
- package/dist/_pkgs/affine-inline-preset/command/format-text.js +1 -1
- package/dist/_pkgs/affine-inline-preset/inline-spec.js +1 -1
- package/dist/_pkgs/affine-inline-reference/reference-node/reference-node.js +1 -1
- package/dist/_pkgs/affine-model/blocks/code/code-model.d.ts +1 -0
- package/dist/_pkgs/affine-model/blocks/code/code-model.js +1 -0
- package/dist/_pkgs/affine-model/elements/bpmn/node.d.ts +40 -7
- package/dist/_pkgs/affine-model/elements/bpmn/node.js +4 -2
- package/dist/_pkgs/affine-model/elements/bpmn/pool.d.ts +74 -17
- package/dist/_pkgs/affine-model/elements/bpmn/pool.js +55 -26
- package/dist/_pkgs/affine-model/elements/c4/board.d.ts +88 -0
- package/dist/_pkgs/affine-model/elements/c4/board.js +128 -0
- package/dist/_pkgs/affine-model/elements/c4/boundary.d.ts +63 -0
- package/dist/_pkgs/affine-model/elements/c4/boundary.js +134 -0
- package/dist/_pkgs/affine-model/elements/c4/index.d.ts +3 -0
- package/dist/_pkgs/affine-model/elements/c4/index.js +3 -0
- package/dist/_pkgs/affine-model/elements/c4/node.d.ts +97 -0
- package/dist/_pkgs/affine-model/elements/c4/node.js +130 -0
- package/dist/_pkgs/affine-model/elements/connector/connector.js +25 -1
- package/dist/_pkgs/affine-model/elements/context-map/context-map.d.ts +27 -0
- package/dist/_pkgs/affine-model/elements/context-map/context-map.js +94 -0
- package/dist/_pkgs/affine-model/elements/context-map/index.d.ts +1 -0
- package/dist/_pkgs/affine-model/elements/context-map/index.js +1 -0
- package/dist/_pkgs/affine-model/elements/core-domain/core-domain.d.ts +34 -17
- package/dist/_pkgs/affine-model/elements/core-domain/core-domain.js +28 -26
- package/dist/_pkgs/affine-model/elements/edgy/board.d.ts +32 -0
- package/dist/_pkgs/affine-model/elements/edgy/board.js +112 -0
- package/dist/_pkgs/affine-model/elements/edgy/facets.d.ts +12 -0
- package/dist/_pkgs/affine-model/elements/edgy/facets.js +25 -1
- package/dist/_pkgs/affine-model/elements/edgy/index.d.ts +1 -0
- package/dist/_pkgs/affine-model/elements/edgy/index.js +1 -0
- package/dist/_pkgs/affine-model/elements/event-storming/event-storming.d.ts +36 -0
- package/dist/_pkgs/affine-model/elements/event-storming/event-storming.js +103 -0
- package/dist/_pkgs/affine-model/elements/event-storming/index.d.ts +1 -0
- package/dist/_pkgs/affine-model/elements/event-storming/index.js +1 -0
- package/dist/_pkgs/affine-model/elements/framework-background/background.d.ts +42 -0
- package/dist/_pkgs/affine-model/elements/framework-background/background.js +42 -0
- package/dist/_pkgs/affine-model/elements/framework-background/index.d.ts +1 -0
- package/dist/_pkgs/affine-model/elements/framework-background/index.js +1 -0
- package/dist/_pkgs/affine-model/elements/index.d.ts +14 -1
- package/dist/_pkgs/affine-model/elements/index.js +4 -0
- package/dist/_pkgs/affine-model/elements/mindmap/mindmap.js +8 -3
- package/dist/_pkgs/affine-model/elements/mindmap/style.d.ts +10 -0
- package/dist/_pkgs/affine-model/elements/mindmap/style.js +8 -0
- package/dist/_pkgs/affine-model/elements/shape/api/polygon.js +2 -8
- package/dist/_pkgs/affine-model/elements/wardley/wardley.d.ts +21 -29
- package/dist/_pkgs/affine-model/elements/wardley/wardley.js +41 -48
- package/dist/_pkgs/affine-shared/adapters/html/block-adapter.js +1 -1
- package/dist/_pkgs/affine-shared/adapters/markdown/block-adapter.js +1 -1
- package/dist/_pkgs/affine-shared/adapters/markdown/delta-converter.d.ts +6 -1
- package/dist/_pkgs/affine-shared/adapters/markdown/delta-converter.js +161 -3
- package/dist/_pkgs/affine-shared/adapters/markdown/markdown.js +5 -1
- package/dist/_pkgs/affine-shared/adapters/notion-html/block-adapter.js +1 -1
- package/dist/_pkgs/affine-shared/adapters/notion-html/delta-converter.js +1 -1
- package/dist/_pkgs/affine-shared/adapters/plain-text/block-adapter.js +1 -1
- package/dist/_pkgs/affine-shared/adapters/plain-text/delta-converter.js +1 -1
- package/dist/_pkgs/affine-shared/adapters/types/delta-converter.d.ts +1 -0
- package/dist/_pkgs/affine-shared/adapters/utils/color.d.ts +24 -0
- package/dist/_pkgs/affine-shared/adapters/utils/color.js +283 -0
- package/dist/_pkgs/affine-shared/adapters/utils/index.d.ts +1 -0
- package/dist/_pkgs/affine-shared/adapters/utils/index.js +1 -0
- package/dist/_pkgs/affine-shared/commands/block-crud/get-selected-blocks.js +10 -2
- package/dist/_pkgs/affine-shared/commands/model-crud/draft-selected-models.js +1 -1
- package/dist/_pkgs/affine-shared/commands/selection/focus-block-end.js +1 -1
- package/dist/_pkgs/affine-shared/commands/selection/focus-block-start.js +1 -1
- package/dist/_pkgs/affine-shared/consts/index.d.ts +10 -0
- package/dist/_pkgs/affine-shared/consts/index.js +10 -0
- package/dist/_pkgs/affine-shared/services/artefact-catalogue-service.d.ts +55 -0
- package/dist/_pkgs/affine-shared/services/artefact-catalogue-service.js +35 -0
- package/dist/_pkgs/affine-shared/services/audit-service.d.ts +311 -0
- package/dist/_pkgs/affine-shared/services/audit-service.js +228 -0
- package/dist/_pkgs/affine-shared/services/command-usage-service.d.ts +31 -0
- package/dist/_pkgs/affine-shared/services/command-usage-service.js +109 -0
- package/dist/_pkgs/affine-shared/services/comment-service/block-comment-manager.js +1 -1
- package/dist/_pkgs/affine-shared/services/doc-display-meta-service.js +1 -1
- package/dist/_pkgs/affine-shared/services/edit-props-store.d.ts +7 -0
- package/dist/_pkgs/affine-shared/services/edit-props-store.js +11 -0
- package/dist/_pkgs/affine-shared/services/embed-iframe/embed-iframe-config.js +1 -1
- package/dist/_pkgs/affine-shared/services/font-loader/font-loader-service.d.ts +26 -1
- package/dist/_pkgs/affine-shared/services/font-loader/font-loader-service.js +124 -7
- package/dist/_pkgs/affine-shared/services/index.d.ts +7 -0
- package/dist/_pkgs/affine-shared/services/index.js +7 -0
- package/dist/_pkgs/affine-shared/services/pivot-materiality-publisher.d.ts +129 -0
- package/dist/_pkgs/affine-shared/services/pivot-materiality-publisher.js +312 -0
- package/dist/_pkgs/affine-shared/services/pivot-properties-service.d.ts +217 -0
- package/dist/_pkgs/affine-shared/services/pivot-properties-service.js +114 -0
- package/dist/_pkgs/affine-shared/services/telemetry-service/code-block.d.ts +1 -1
- package/dist/_pkgs/affine-shared/services/telemetry-service/lifecycle.d.ts +255 -1
- package/dist/_pkgs/affine-shared/services/telemetry-service/telemetry-service.d.ts +2 -2
- package/dist/_pkgs/affine-shared/services/telemetry-service/types.d.ts +6 -1
- package/dist/_pkgs/affine-shared/services/toolbar-service/action.d.ts +10 -0
- package/dist/_pkgs/affine-shared/services/toolbar-service/index.d.ts +1 -0
- package/dist/_pkgs/affine-shared/services/toolbar-service/index.js +1 -0
- package/dist/_pkgs/affine-shared/services/toolbar-service/layout.d.ts +134 -0
- package/dist/_pkgs/affine-shared/services/toolbar-service/layout.js +146 -0
- package/dist/_pkgs/affine-shared/services/toolbar-service/registry.d.ts +44 -0
- package/dist/_pkgs/affine-shared/services/toolbar-service/registry.js +161 -3
- package/dist/_pkgs/affine-shared/services/translation-service/index.d.ts +68 -0
- package/dist/_pkgs/affine-shared/services/translation-service/index.js +39 -0
- package/dist/_pkgs/affine-shared/services/universe-tag-defs-service.d.ts +155 -0
- package/dist/_pkgs/affine-shared/services/universe-tag-defs-service.js +256 -0
- package/dist/_pkgs/affine-shared/test-utils/affine-template.js +1 -1
- package/dist/_pkgs/affine-shared/utils/dom/point-to-range.d.ts +4 -0
- package/dist/_pkgs/affine-shared/utils/dom/point-to-range.js +58 -2
- package/dist/_pkgs/affine-shared/utils/dom/viewport.d.ts +60 -0
- package/dist/_pkgs/affine-shared/utils/dom/viewport.js +58 -0
- package/dist/_pkgs/affine-shared/utils/edgeless.js +1 -1
- package/dist/_pkgs/affine-shared/utils/file/filesys.d.ts +34 -0
- package/dist/_pkgs/affine-shared/utils/file/filesys.js +48 -7
- package/dist/_pkgs/affine-shared/utils/print-to-pdf.d.ts +21 -0
- package/dist/_pkgs/affine-shared/utils/print-to-pdf.js +166 -32
- package/dist/_pkgs/affine-shared/utils/zod-schema.d.ts +7 -0
- package/dist/_pkgs/affine-shared/utils/zod-schema.js +25 -1
- package/dist/_pkgs/affine-widget-drag-handle/utils.js +1 -1
- package/dist/_pkgs/affine-widget-drag-handle/watchers/edgeless-watcher.d.ts +19 -10
- package/dist/_pkgs/affine-widget-drag-handle/watchers/edgeless-watcher.js +122 -23
- package/dist/_pkgs/affine-widget-drag-handle/watchers/pointer-event-watcher.d.ts +2 -0
- package/dist/_pkgs/affine-widget-drag-handle/watchers/pointer-event-watcher.js +25 -4
- package/dist/_pkgs/affine-widget-edgeless-auto-connect/index.js +1 -1
- package/dist/_pkgs/affine-widget-edgeless-dragging-area/edgeless-dragging-area-rect.js +1 -1
- package/dist/_pkgs/affine-widget-edgeless-selected-rect/auto-complete-panel.js +10 -5
- package/dist/_pkgs/affine-widget-edgeless-selected-rect/edgeless-auto-complete.d.ts +15 -1
- package/dist/_pkgs/affine-widget-edgeless-selected-rect/edgeless-auto-complete.js +37 -32
- package/dist/_pkgs/affine-widget-edgeless-selected-rect/edgeless-element-link.js +5 -4
- package/dist/_pkgs/affine-widget-edgeless-selected-rect/edgeless-selected-rect.js +19 -9
- package/dist/_pkgs/affine-widget-edgeless-selected-rect/utils.d.ts +16 -2
- package/dist/_pkgs/affine-widget-edgeless-selected-rect/utils.js +19 -2
- package/dist/_pkgs/affine-widget-edgeless-toolbar/catalogue/artefact-catalogue-default.d.ts +14 -0
- package/dist/_pkgs/affine-widget-edgeless-toolbar/catalogue/artefact-catalogue-default.js +40 -0
- package/dist/_pkgs/affine-widget-edgeless-toolbar/catalogue/artefact-catalogue-widget.d.ts +158 -0
- package/dist/_pkgs/affine-widget-edgeless-toolbar/catalogue/artefact-catalogue-widget.js +572 -0
- package/dist/_pkgs/affine-widget-edgeless-toolbar/catalogue/catalogue-groups.d.ts +46 -0
- package/dist/_pkgs/affine-widget-edgeless-toolbar/catalogue/catalogue-groups.js +66 -0
- package/dist/_pkgs/affine-widget-edgeless-toolbar/catalogue/chord-format.d.ts +13 -0
- package/dist/_pkgs/affine-widget-edgeless-toolbar/catalogue/chord-format.js +50 -0
- package/dist/_pkgs/affine-widget-edgeless-toolbar/edgeless-toolbar.d.ts +6 -0
- package/dist/_pkgs/affine-widget-edgeless-toolbar/edgeless-toolbar.js +15 -5
- package/dist/_pkgs/affine-widget-edgeless-toolbar/effects.d.ts +2 -0
- package/dist/_pkgs/affine-widget-edgeless-toolbar/effects.js +2 -0
- package/dist/_pkgs/affine-widget-edgeless-toolbar/extension/index.d.ts +7 -0
- package/dist/_pkgs/affine-widget-edgeless-toolbar/index.d.ts +5 -0
- package/dist/_pkgs/affine-widget-edgeless-toolbar/index.js +5 -0
- package/dist/_pkgs/affine-widget-edgeless-toolbar/menu/command-menu.d.ts +57 -0
- package/dist/_pkgs/affine-widget-edgeless-toolbar/menu/command-menu.js +140 -0
- package/dist/_pkgs/affine-widget-edgeless-toolbar/view.js +9 -0
- package/dist/_pkgs/affine-widget-frame-title/edgeless-frame-title-editor.js +4 -1
- package/dist/_pkgs/affine-widget-keyboard-toolbar/icons.js +98 -98
- package/dist/_pkgs/affine-widget-keyboard-toolbar/keyboard-tool-panel.js +1 -1
- package/dist/_pkgs/affine-widget-linked-doc/import-doc/import-doc.js +1 -1
- package/dist/_pkgs/affine-widget-linked-doc/linked-doc-popover.js +2 -15
- package/dist/_pkgs/affine-widget-linked-doc/transformers/markdown.d.ts +10 -1
- package/dist/_pkgs/affine-widget-linked-doc/transformers/markdown.js +133 -6
- package/dist/_pkgs/affine-widget-linked-doc/transformers/utils.d.ts +10 -0
- package/dist/_pkgs/affine-widget-linked-doc/transformers/utils.js +120 -3
- package/dist/_pkgs/affine-widget-linked-doc/utils.d.ts +12 -0
- package/dist/_pkgs/affine-widget-linked-doc/utils.js +33 -0
- package/dist/_pkgs/affine-widget-page-dragging-area/index.js +1 -1
- package/dist/_pkgs/affine-widget-remote-selection/doc/doc-remote-selection.js +1 -1
- package/dist/_pkgs/affine-widget-remote-selection/edgeless/index.js +6 -4
- package/dist/_pkgs/affine-widget-slash-menu/slash-menu-popover.js +8 -4
- package/dist/_pkgs/affine-widget-slash-menu/utils.d.ts +9 -0
- package/dist/_pkgs/affine-widget-slash-menu/utils.js +24 -0
- package/dist/_pkgs/affine-widget-toolbar/toolbar.d.ts +6 -0
- package/dist/_pkgs/affine-widget-toolbar/toolbar.js +40 -8
- package/dist/_pkgs/affine-widget-toolbar/utils.d.ts +146 -3
- package/dist/_pkgs/affine-widget-toolbar/utils.js +744 -58
- package/dist/_pkgs/data-view/core/common/property-menu.js +3 -16
- package/dist/_pkgs/data-view/core/component/tags/multi-tag-select.d.ts +4 -0
- package/dist/_pkgs/data-view/core/component/tags/multi-tag-select.js +28 -1
- package/dist/_pkgs/data-view/core/data-view.d.ts +3 -1
- package/dist/_pkgs/data-view/core/data-view.js +25 -3
- package/dist/_pkgs/data-view/core/detail/field.js +2 -2
- package/dist/_pkgs/data-view/core/detail/selection.d.ts +4 -2
- package/dist/_pkgs/data-view/core/detail/selection.js +23 -7
- package/dist/_pkgs/data-view/core/effect.js +2 -0
- package/dist/_pkgs/data-view/core/filter/eval.js +36 -23
- package/dist/_pkgs/data-view/core/filter/filter-fn/matcher.d.ts +7 -0
- package/dist/_pkgs/data-view/core/filter/filter-fn/matcher.js +12 -0
- package/dist/_pkgs/data-view/core/group-by/compare-date-keys.d.ts +11 -0
- package/dist/_pkgs/data-view/core/group-by/compare-date-keys.js +55 -0
- package/dist/_pkgs/data-view/core/group-by/define.d.ts +6 -0
- package/dist/_pkgs/data-view/core/group-by/define.js +114 -0
- package/dist/_pkgs/data-view/core/group-by/matcher.d.ts +7 -0
- package/dist/_pkgs/data-view/core/group-by/matcher.js +13 -0
- package/dist/_pkgs/data-view/core/group-by/renderer/boolean-group.js +11 -11
- package/dist/_pkgs/data-view/core/group-by/renderer/date-group.d.ts +9 -0
- package/dist/_pkgs/data-view/core/group-by/renderer/date-group.js +97 -0
- package/dist/_pkgs/data-view/core/group-by/setting.js +86 -7
- package/dist/_pkgs/data-view/core/group-by/trait.d.ts +34 -0
- package/dist/_pkgs/data-view/core/group-by/trait.js +106 -10
- package/dist/_pkgs/data-view/core/utils/menu-title.js +17 -17
- package/dist/_pkgs/data-view/property-presets/multi-select/cell-renderer.js +3 -1
- package/dist/_pkgs/data-view/property-presets/number/define.js +2 -1
- package/dist/_pkgs/data-view/property-presets/select/cell-renderer.js +3 -1
- package/dist/_pkgs/data-view/view-presets/calendar/calendar-view-manager.d.ts +70 -0
- package/dist/_pkgs/data-view/view-presets/calendar/calendar-view-manager.js +449 -0
- package/dist/_pkgs/data-view/view-presets/calendar/define.d.ts +10 -0
- package/dist/_pkgs/data-view/view-presets/calendar/define.js +27 -0
- package/dist/_pkgs/data-view/view-presets/calendar/effect.d.ts +1 -0
- package/dist/_pkgs/data-view/view-presets/calendar/effect.js +4 -0
- package/dist/_pkgs/data-view/view-presets/calendar/index.d.ts +6 -0
- package/dist/_pkgs/data-view/view-presets/calendar/index.js +6 -0
- package/dist/_pkgs/data-view/view-presets/calendar/layout.d.ts +37 -0
- package/dist/_pkgs/data-view/view-presets/calendar/layout.js +138 -0
- package/dist/_pkgs/data-view/view-presets/calendar/pc/actions.d.ts +7 -0
- package/dist/_pkgs/data-view/view-presets/calendar/pc/actions.js +64 -0
- package/dist/_pkgs/data-view/view-presets/calendar/pc/dnd.d.ts +32 -0
- package/dist/_pkgs/data-view/view-presets/calendar/pc/dnd.js +159 -0
- package/dist/_pkgs/data-view/view-presets/calendar/pc/effect.d.ts +1 -0
- package/dist/_pkgs/data-view/view-presets/calendar/pc/effect.js +7 -0
- package/dist/_pkgs/data-view/view-presets/calendar/pc/hit-test.d.ts +1 -0
- package/dist/_pkgs/data-view/view-presets/calendar/pc/hit-test.js +28 -0
- package/dist/_pkgs/data-view/view-presets/calendar/pc/styles.d.ts +1 -0
- package/dist/_pkgs/data-view/view-presets/calendar/pc/styles.js +707 -0
- package/dist/_pkgs/data-view/view-presets/calendar/pc/view.d.ts +89 -0
- package/dist/_pkgs/data-view/view-presets/calendar/pc/view.js +849 -0
- package/dist/_pkgs/data-view/view-presets/calendar/renderer.d.ts +2 -0
- package/dist/_pkgs/data-view/view-presets/calendar/renderer.js +8 -0
- package/dist/_pkgs/data-view/view-presets/calendar/source.d.ts +8 -0
- package/dist/_pkgs/data-view/view-presets/calendar/source.js +3 -0
- package/dist/_pkgs/data-view/view-presets/calendar/types.d.ts +79 -0
- package/dist/_pkgs/data-view/view-presets/calendar/types.js +1 -0
- package/dist/_pkgs/data-view/view-presets/convert.js +28 -0
- package/dist/_pkgs/data-view/view-presets/effect.js +2 -0
- package/dist/_pkgs/data-view/view-presets/index.d.ts +2 -0
- package/dist/_pkgs/data-view/view-presets/index.js +3 -0
- package/dist/_pkgs/data-view/view-presets/kanban/kanban-view-manager.js +3 -1
- package/dist/_pkgs/data-view/view-presets/kanban/mobile/cell.js +2 -2
- package/dist/_pkgs/data-view/view-presets/table/collapsed-state.d.ts +18 -0
- package/dist/_pkgs/data-view/view-presets/table/collapsed-state.js +36 -0
- package/dist/_pkgs/data-view/view-presets/table/mobile/cell.js +2 -2
- package/dist/_pkgs/data-view/view-presets/table/mobile/group.d.ts +11 -0
- package/dist/_pkgs/data-view/view-presets/table/mobile/group.js +89 -4
- package/dist/_pkgs/data-view/view-presets/table/pc/cell.d.ts +3 -0
- package/dist/_pkgs/data-view/view-presets/table/pc/cell.js +11 -2
- package/dist/_pkgs/data-view/view-presets/table/pc/controller/hotkeys.d.ts +1 -0
- package/dist/_pkgs/data-view/view-presets/table/pc/controller/hotkeys.js +39 -33
- package/dist/_pkgs/data-view/view-presets/table/pc/group.d.ts +10 -0
- package/dist/_pkgs/data-view/view-presets/table/pc/group.js +86 -5
- package/dist/_pkgs/data-view/view-presets/table/pc-virtual/controller/hotkeys.d.ts +1 -0
- package/dist/_pkgs/data-view/view-presets/table/pc-virtual/controller/hotkeys.js +39 -33
- package/dist/_pkgs/data-view/view-presets/table/pc-virtual/group/top/group-title.js +18 -18
- package/dist/_pkgs/data-view/view-presets/table/pc-virtual/row/cell.d.ts +3 -0
- package/dist/_pkgs/data-view/view-presets/table/pc-virtual/row/cell.js +8 -0
- package/dist/_pkgs/data-view/view-presets/table/table-view-manager.js +3 -1
- package/dist/_pkgs/data-view/view-presets/table/utils.d.ts +3 -0
- package/dist/_pkgs/data-view/view-presets/table/utils.js +16 -1
- package/dist/_pkgs/data-view/widget-presets/tools/presets/view-options/view-options.js +3 -1
- package/dist/_pkgs/global/gfx/curve.js +4 -3
- package/dist/_pkgs/std/clipboard/clipboard.js +13 -3
- package/dist/_pkgs/std/clipboard/utils.d.ts +5 -0
- package/dist/_pkgs/std/clipboard/utils.js +10 -0
- package/dist/_pkgs/std/event/dispatcher.js +27 -1
- package/dist/_pkgs/std/event/keymap.js +16 -6
- package/dist/_pkgs/std/extension/command-registry.d.ts +475 -0
- package/dist/_pkgs/std/extension/command-registry.js +431 -0
- package/dist/_pkgs/std/extension/dnd/index.d.ts +1 -1
- package/dist/_pkgs/std/extension/index.d.ts +2 -0
- package/dist/_pkgs/std/extension/index.js +2 -0
- package/dist/_pkgs/std/extension/shortcut.js +2 -1
- package/dist/_pkgs/std/extension/translation-manifest.d.ts +49 -0
- package/dist/_pkgs/std/extension/translation-manifest.js +71 -0
- package/dist/_pkgs/std/gfx/grid.js +1 -1
- package/dist/_pkgs/std/gfx/index.d.ts +7 -3
- package/dist/_pkgs/std/gfx/index.js +6 -2
- package/dist/_pkgs/std/gfx/interactivity/gfx-view-event-handler.js +6 -1
- package/dist/_pkgs/std/gfx/interactivity/manager.d.ts +8 -0
- package/dist/_pkgs/std/gfx/interactivity/manager.js +18 -0
- package/dist/_pkgs/std/gfx/layer.d.ts +1 -1
- package/dist/_pkgs/std/gfx/layer.js +1 -2
- package/dist/_pkgs/std/gfx/model/surface/decorators/field.js +9 -0
- package/dist/_pkgs/std/gfx/model/surface/decorators/index.d.ts +2 -2
- package/dist/_pkgs/std/gfx/model/surface/decorators/index.js +2 -2
- package/dist/_pkgs/std/gfx/model/surface/decorators/local.d.ts +14 -0
- package/dist/_pkgs/std/gfx/model/surface/decorators/local.js +22 -0
- package/dist/_pkgs/std/gfx/model/surface/decorators/observer.d.ts +2 -0
- package/dist/_pkgs/std/gfx/model/surface/decorators/observer.js +40 -1
- package/dist/_pkgs/std/gfx/model/surface/element-model.d.ts +442 -0
- package/dist/_pkgs/std/gfx/model/surface/element-model.js +510 -25
- package/dist/_pkgs/std/gfx/model/surface/pivot.d.ts +48 -0
- package/dist/_pkgs/std/gfx/model/surface/pivot.js +34 -0
- package/dist/_pkgs/std/gfx/model/surface/role.d.ts +153 -0
- package/dist/_pkgs/std/gfx/model/surface/role.js +117 -0
- package/dist/_pkgs/std/gfx/model/surface/surface-model.d.ts +70 -0
- package/dist/_pkgs/std/gfx/model/surface/surface-model.js +305 -17
- package/dist/_pkgs/std/gfx/model/surface/tags.d.ts +77 -0
- package/dist/_pkgs/std/gfx/model/surface/tags.js +246 -0
- package/dist/_pkgs/std/gfx/perf.d.ts +10 -0
- package/dist/_pkgs/std/gfx/perf.js +30 -0
- package/dist/_pkgs/std/gfx/selection.js +1 -1
- package/dist/_pkgs/std/gfx/tool/tool-controller.d.ts +13 -0
- package/dist/_pkgs/std/gfx/tool/tool-controller.js +26 -0
- package/dist/_pkgs/std/gfx/viewport.d.ts +12 -0
- package/dist/_pkgs/std/gfx/viewport.js +20 -2
- package/dist/_pkgs/std/inline/extensions/inline-manager.js +1 -1
- package/dist/_pkgs/std/inline/extensions/markdown-matcher.js +1 -1
- package/dist/_pkgs/std/inline/services/event.d.ts +2 -0
- package/dist/_pkgs/std/inline/services/event.js +96 -21
- package/dist/_pkgs/std/utils/layer.js +2 -6
- package/dist/_pkgs/std/utils/tree.d.ts +14 -0
- package/dist/_pkgs/std/utils/tree.js +59 -8
- package/dist/_pkgs/std/view/element/gfx-block-component.js +23 -13
- package/dist/_pkgs/store/extension/workspace/workspace-meta.d.ts +10 -0
- package/dist/_pkgs/store/model/block/flat-sync-controller.js +2 -12
- package/dist/_pkgs/store/model/store/crud.js +10 -4
- package/dist/_pkgs/store/reactive/flat-native-y/index.d.ts +1 -1
- package/dist/_pkgs/store/reactive/flat-native-y/index.js +24 -2
- package/dist/commands.d.ts +58 -0
- package/dist/commands.js +66 -0
- package/dist/extensions/command-telemetry.d.ts +21 -0
- package/dist/extensions/command-telemetry.js +89 -0
- package/dist/extensions/command-usage.d.ts +23 -0
- package/dist/extensions/command-usage.js +37 -0
- package/dist/extensions/store.d.ts +9 -4
- package/dist/extensions/store.js +27 -24
- package/dist/extensions/view.d.ts +9 -4
- package/dist/extensions/view.js +35 -8
- package/dist/flags.d.ts +98 -21
- package/dist/flags.js +103 -22
- package/dist/frameworks.d.ts +45 -0
- package/dist/frameworks.js +186 -0
- package/dist/schemas.d.ts +8 -5
- package/dist/schemas.js +28 -32
- package/dist/shortcuts.d.ts +16 -16
- package/dist/shortcuts.js +8 -36
- package/dist/translations.d.ts +56 -0
- package/dist/translations.js +200 -0
- package/package.json +16 -4
- package/dist/_pkgs/affine-block-root/keyboard/shortcuts.d.ts +0 -8
- package/dist/_pkgs/affine-block-root/keyboard/shortcuts.js +0 -48
- package/dist/_pkgs/affine-gfx-shape/shortcuts.d.ts +0 -6
- package/dist/_pkgs/affine-gfx-shape/shortcuts.js +0 -28
- package/dist/_pkgs/data-view/core/utils/cache.d.ts +0 -5
- package/dist/_pkgs/data-view/core/utils/cache.js +0 -28
|
@@ -39,7 +39,7 @@ import { mountShapeTextEditor, SHAPE_OVERLAY_HEIGHT, SHAPE_OVERLAY_WIDTH, ShapeC
|
|
|
39
39
|
import { insertEdgelessTextCommand, mountTextElementEditor, } from '../affine-gfx-text/index.js';
|
|
40
40
|
import { DEFAULT_NOTE_WIDTH, DefaultTheme, FontFamily, FontStyle, FontWeight, getShapeName, GroupElementModel, NoteBlockModel, ShapeStyle, TextElementModel, } from '../affine-model/index.js';
|
|
41
41
|
import { EditPropsStore, FeatureFlagService, ThemeProvider, } from '../affine-shared/services/index.js';
|
|
42
|
-
import { captureEventTarget, matchModels, } from '../affine-shared/utils/index.js';
|
|
42
|
+
import { captureEventTarget, matchModels, overlayScale, overlayViewportSize, toOverlayCoord, } from '../affine-shared/utils/index.js';
|
|
43
43
|
import { Bound, clamp, normalizeDegAngle, serializeXYWH, toDegree, Vec, } from '../global/gfx/index.js';
|
|
44
44
|
import { WithDisposable } from '../global/lit/index.js';
|
|
45
45
|
import { FrameIcon, PageIcon } from '@blocksuite/icons/lit';
|
|
@@ -369,11 +369,16 @@ let EdgelessAutoCompletePanel = (() => {
|
|
|
369
369
|
}
|
|
370
370
|
_getPanelPosition() {
|
|
371
371
|
const { viewport } = this.gfx;
|
|
372
|
-
|
|
373
|
-
|
|
372
|
+
// The panel is appended to the edgeless container, so its `left`/`top`
|
|
373
|
+
// live in that container's space — already scaled by the host, the way a
|
|
374
|
+
// gfx block's placement is. Both the panel's own size and the edges it is
|
|
375
|
+
// kept away from have to be stated there too, or the clamp fires against
|
|
376
|
+
// screen pixels the panel is not measured in.
|
|
377
|
+
const scale = overlayScale(viewport);
|
|
378
|
+
const result = this._getTargetXYWH(PANEL_WIDTH / scale, PANEL_HEIGHT / scale);
|
|
374
379
|
const pos = result ? result.xywh.slice(0, 2) : this.position;
|
|
375
|
-
const coord = viewport
|
|
376
|
-
const
|
|
380
|
+
const coord = toOverlayCoord(viewport, pos[0], pos[1]);
|
|
381
|
+
const [width, height] = overlayViewportSize(viewport);
|
|
377
382
|
coord[0] = clamp(coord[0], 20, width - 20 - PANEL_WIDTH);
|
|
378
383
|
coord[1] = clamp(coord[1], 20, height - 20 - PANEL_HEIGHT);
|
|
379
384
|
return coord;
|
|
@@ -12,6 +12,12 @@ export declare class EdgelessAutoComplete extends EdgelessAutoComplete_base {
|
|
|
12
12
|
private readonly _onPointerDown;
|
|
13
13
|
private _pathGenerator;
|
|
14
14
|
private _timer;
|
|
15
|
+
/**
|
|
16
|
+
* Whether `this.current` is a thing the auto-complete knows how to clone: a
|
|
17
|
+
* shape (subclasses included) or a note block. Deliberately says nothing
|
|
18
|
+
* about the selection — the drag-out path consults it *after* clearing the
|
|
19
|
+
* selection to open the shape picker.
|
|
20
|
+
*/
|
|
15
21
|
get canShowAutoComplete(): boolean;
|
|
16
22
|
get connectionOverlay(): ConnectionOverlay;
|
|
17
23
|
get crud(): import("../affine-block-surface/index.js").EdgelessCRUDExtension;
|
|
@@ -30,10 +36,18 @@ export declare class EdgelessAutoComplete extends EdgelessAutoComplete_base {
|
|
|
30
36
|
private _showNextShape;
|
|
31
37
|
connectedCallback(): void;
|
|
32
38
|
firstUpdated(): void;
|
|
39
|
+
/**
|
|
40
|
+
* The single predicate the arrows are rendered on. It must stay stricter
|
|
41
|
+
* than, or equal to, what the click handlers can actually do: an arrow the
|
|
42
|
+
* click cannot honour is a crash waiting to happen (see
|
|
43
|
+
* `createEdgelessElement`). Hence the identity check — `current` is a
|
|
44
|
+
* property set by the selected-rect on the previous render, so it can lag
|
|
45
|
+
* behind the selection by a frame, and it is `current`, not the selection,
|
|
46
|
+
* that the click acts on.
|
|
47
|
+
*/
|
|
33
48
|
private _canAutoComplete;
|
|
34
49
|
removeOverlay(): void;
|
|
35
50
|
render(): import("lit-html").TemplateResult<1> | typeof nothing;
|
|
36
|
-
private accessor _isHover;
|
|
37
51
|
private accessor _isMoving;
|
|
38
52
|
accessor current: ShapeElementModel | NoteBlockModel;
|
|
39
53
|
accessor edgeless: BlockComponent;
|
|
@@ -37,7 +37,7 @@ import { ConnectorPathGenerator, } from '../affine-gfx-connector/index.js';
|
|
|
37
37
|
import { mountShapeTextEditor } from '../affine-gfx-shape/index.js';
|
|
38
38
|
import { DEFAULT_NOTE_HEIGHT, DefaultTheme, LayoutType, MindmapElementModel, ShapeElementModel, shapeMethods, } from '../affine-model/index.js';
|
|
39
39
|
import { ToolbarRegistryIdentifier } from '../affine-shared/services/index.js';
|
|
40
|
-
import { handleNativeRangeAtPoint } from '../affine-shared/utils/index.js';
|
|
40
|
+
import { handleNativeRangeAtPoint, toClientCoord, } from '../affine-shared/utils/index.js';
|
|
41
41
|
import { DisposableGroup } from '../global/disposable/index.js';
|
|
42
42
|
import { Vec } from '../global/gfx/index.js';
|
|
43
43
|
import { WithDisposable } from '../global/lit/index.js';
|
|
@@ -77,9 +77,6 @@ class AutoCompleteOverlay extends Overlay {
|
|
|
77
77
|
}
|
|
78
78
|
let EdgelessAutoComplete = (() => {
|
|
79
79
|
let _classSuper = WithDisposable(LitElement);
|
|
80
|
-
let __isHover_decorators;
|
|
81
|
-
let __isHover_initializers = [];
|
|
82
|
-
let __isHover_extraInitializers = [];
|
|
83
80
|
let __isMoving_decorators;
|
|
84
81
|
let __isMoving_initializers = [];
|
|
85
82
|
let __isMoving_extraInitializers = [];
|
|
@@ -98,7 +95,6 @@ let EdgelessAutoComplete = (() => {
|
|
|
98
95
|
return class EdgelessAutoComplete extends _classSuper {
|
|
99
96
|
static {
|
|
100
97
|
const _metadata = typeof Symbol === "function" && Symbol.metadata ? Object.create(_classSuper[Symbol.metadata] ?? null) : void 0;
|
|
101
|
-
__isHover_decorators = [state()];
|
|
102
98
|
__isMoving_decorators = [state()];
|
|
103
99
|
_current_decorators = [property({ attribute: false })];
|
|
104
100
|
_edgeless_decorators = [property({ attribute: false })];
|
|
@@ -106,7 +102,6 @@ let EdgelessAutoComplete = (() => {
|
|
|
106
102
|
_std_decorators = [consume({
|
|
107
103
|
context: stdContext,
|
|
108
104
|
})];
|
|
109
|
-
__esDecorate(this, null, __isHover_decorators, { kind: "accessor", name: "_isHover", static: false, private: false, access: { has: obj => "_isHover" in obj, get: obj => obj._isHover, set: (obj, value) => { obj._isHover = value; } }, metadata: _metadata }, __isHover_initializers, __isHover_extraInitializers);
|
|
110
105
|
__esDecorate(this, null, __isMoving_decorators, { kind: "accessor", name: "_isMoving", static: false, private: false, access: { has: obj => "_isMoving" in obj, get: obj => obj._isMoving, set: (obj, value) => { obj._isMoving = value; } }, metadata: _metadata }, __isMoving_initializers, __isMoving_extraInitializers);
|
|
111
106
|
__esDecorate(this, null, _current_decorators, { kind: "accessor", name: "current", static: false, private: false, access: { has: obj => "current" in obj, get: obj => obj.current, set: (obj, value) => { obj.current = value; } }, metadata: _metadata }, _current_initializers, _current_extraInitializers);
|
|
112
107
|
__esDecorate(this, null, _edgeless_decorators, { kind: "accessor", name: "edgeless", static: false, private: false, access: { has: obj => "edgeless" in obj, get: obj => obj.edgeless, set: (obj, value) => { obj.edgeless = value; } }, metadata: _metadata }, _edgeless_initializers, _edgeless_extraInitializers);
|
|
@@ -195,6 +190,12 @@ let EdgelessAutoComplete = (() => {
|
|
|
195
190
|
get _surface() {
|
|
196
191
|
return getSurfaceBlock(this.std.store);
|
|
197
192
|
}
|
|
193
|
+
/**
|
|
194
|
+
* Whether `this.current` is a thing the auto-complete knows how to clone: a
|
|
195
|
+
* shape (subclasses included) or a note block. Deliberately says nothing
|
|
196
|
+
* about the selection — the drag-out path consults it *after* clearing the
|
|
197
|
+
* selection to open the shape picker.
|
|
198
|
+
*/
|
|
198
199
|
get canShowAutoComplete() {
|
|
199
200
|
const { current } = this;
|
|
200
201
|
return isShape(current) || isNoteBlock(current);
|
|
@@ -283,11 +284,18 @@ let EdgelessAutoComplete = (() => {
|
|
|
283
284
|
_createAutoCompletePanel(e, connector) {
|
|
284
285
|
if (!this.canShowAutoComplete)
|
|
285
286
|
return;
|
|
286
|
-
|
|
287
|
+
// `clientX`/`clientY` are window coordinates: read them as such, or the
|
|
288
|
+
// panel opens at the viewport's own offset away from the pointer.
|
|
289
|
+
const position = this.gfx.viewport.toModelCoordFromClientCoord([
|
|
290
|
+
e.clientX,
|
|
291
|
+
e.clientY,
|
|
292
|
+
]);
|
|
287
293
|
const autoCompletePanel = new EdgelessAutoCompletePanel(position, this.edgeless, this.current, connector);
|
|
288
294
|
this.edgeless.append(autoCompletePanel);
|
|
289
295
|
}
|
|
290
296
|
_generateElementOnClick(type) {
|
|
297
|
+
if (!this.canShowAutoComplete)
|
|
298
|
+
return;
|
|
291
299
|
const { store } = this.edgeless;
|
|
292
300
|
const bound = this._computeNextBound(type);
|
|
293
301
|
const id = createEdgelessElement(this.edgeless, this.current, bound);
|
|
@@ -309,7 +317,11 @@ let EdgelessAutoComplete = (() => {
|
|
|
309
317
|
if (!model) {
|
|
310
318
|
return;
|
|
311
319
|
}
|
|
312
|
-
|
|
320
|
+
// `handleNativeRangeAtPoint` hands the point to
|
|
321
|
+
// `document.caretRangeFromPoint`, which speaks client coordinates: the
|
|
322
|
+
// viewport's own offset in the window has to be there, or the caret is
|
|
323
|
+
// placed by that offset away from the note that was just created.
|
|
324
|
+
const [x, y] = toClientCoord(this.gfx.viewport, bound.center[0], bound.y + DEFAULT_NOTE_HEIGHT / 2);
|
|
313
325
|
requestAnimationFrame(() => {
|
|
314
326
|
handleNativeRangeAtPoint(x, y);
|
|
315
327
|
});
|
|
@@ -524,7 +536,7 @@ let EdgelessAutoComplete = (() => {
|
|
|
524
536
|
this._initOverlay();
|
|
525
537
|
}
|
|
526
538
|
firstUpdated() {
|
|
527
|
-
const { _disposables,
|
|
539
|
+
const { _disposables, gfx } = this;
|
|
528
540
|
_disposables.add(this.gfx.selection.slots.updated.subscribe(() => {
|
|
529
541
|
this._autoCompleteOverlay.linePoints = [];
|
|
530
542
|
this._autoCompleteOverlay.renderShape = null;
|
|
@@ -533,16 +545,6 @@ let EdgelessAutoComplete = (() => {
|
|
|
533
545
|
this.requestUpdate();
|
|
534
546
|
}));
|
|
535
547
|
_disposables.add(() => this.removeOverlay());
|
|
536
|
-
_disposables.add(edgeless.host.event.add('pointerMove', ctx => {
|
|
537
|
-
const evt = ctx.get('pointerState');
|
|
538
|
-
const [x, y] = gfx.viewport.toModelCoord(evt.x, evt.y);
|
|
539
|
-
const elm = gfx.getElementByPoint(x, y);
|
|
540
|
-
if (!elm) {
|
|
541
|
-
this._isHover = false;
|
|
542
|
-
return;
|
|
543
|
-
}
|
|
544
|
-
this._isHover = elm === this.current ? true : false;
|
|
545
|
-
}));
|
|
546
548
|
this.edgeless.handleEvent('dragStart', () => {
|
|
547
549
|
this._isMoving = true;
|
|
548
550
|
});
|
|
@@ -550,11 +552,20 @@ let EdgelessAutoComplete = (() => {
|
|
|
550
552
|
this._isMoving = false;
|
|
551
553
|
});
|
|
552
554
|
}
|
|
555
|
+
/**
|
|
556
|
+
* The single predicate the arrows are rendered on. It must stay stricter
|
|
557
|
+
* than, or equal to, what the click handlers can actually do: an arrow the
|
|
558
|
+
* click cannot honour is a crash waiting to happen (see
|
|
559
|
+
* `createEdgelessElement`). Hence the identity check — `current` is a
|
|
560
|
+
* property set by the selected-rect on the previous render, so it can lag
|
|
561
|
+
* behind the selection by a frame, and it is `current`, not the selection,
|
|
562
|
+
* that the click acts on.
|
|
563
|
+
*/
|
|
553
564
|
_canAutoComplete() {
|
|
554
|
-
const
|
|
555
|
-
return (
|
|
556
|
-
|
|
557
|
-
|
|
565
|
+
const selected = this.gfx.selection.selectedElements;
|
|
566
|
+
return (selected.length === 1 &&
|
|
567
|
+
selected[0] === this.current &&
|
|
568
|
+
this.canShowAutoComplete);
|
|
558
569
|
}
|
|
559
570
|
removeOverlay() {
|
|
560
571
|
this._timer && clearTimeout(this._timer);
|
|
@@ -564,13 +575,11 @@ let EdgelessAutoComplete = (() => {
|
|
|
564
575
|
surface.renderer.removeOverlay(this._autoCompleteOverlay);
|
|
565
576
|
}
|
|
566
577
|
render() {
|
|
567
|
-
|
|
568
|
-
const isMindMap = this.current.group instanceof MindmapElementModel;
|
|
569
|
-
if (this._isMoving ||
|
|
570
|
-
(this._isHover && !isShape && !this._canAutoComplete())) {
|
|
578
|
+
if (this._isMoving || !this._canAutoComplete()) {
|
|
571
579
|
this.removeOverlay();
|
|
572
580
|
return nothing;
|
|
573
581
|
}
|
|
582
|
+
const isMindMap = this.current.group instanceof MindmapElementModel;
|
|
574
583
|
const { selectedRect } = this;
|
|
575
584
|
return html `<div
|
|
576
585
|
class="edgeless-auto-complete-container"
|
|
@@ -585,9 +594,6 @@ let EdgelessAutoComplete = (() => {
|
|
|
585
594
|
${isMindMap ? this._renderMindMapButtons() : this._renderArrow()}
|
|
586
595
|
</div>`;
|
|
587
596
|
}
|
|
588
|
-
#_isHover_accessor_storage;
|
|
589
|
-
get _isHover() { return this.#_isHover_accessor_storage; }
|
|
590
|
-
set _isHover(value) { this.#_isHover_accessor_storage = value; }
|
|
591
597
|
#_isMoving_accessor_storage;
|
|
592
598
|
get _isMoving() { return this.#_isMoving_accessor_storage; }
|
|
593
599
|
set _isMoving(value) { this.#_isMoving_accessor_storage = value; }
|
|
@@ -650,8 +656,7 @@ let EdgelessAutoComplete = (() => {
|
|
|
650
656
|
});
|
|
651
657
|
};
|
|
652
658
|
this._timer = null;
|
|
653
|
-
this.#
|
|
654
|
-
this.#_isMoving_accessor_storage = (__runInitializers(this, __isHover_extraInitializers), __runInitializers(this, __isMoving_initializers, false));
|
|
659
|
+
this.#_isMoving_accessor_storage = __runInitializers(this, __isMoving_initializers, false);
|
|
655
660
|
this.#current_accessor_storage = (__runInitializers(this, __isMoving_extraInitializers), __runInitializers(this, _current_initializers, void 0));
|
|
656
661
|
this.#edgeless_accessor_storage = (__runInitializers(this, _current_extraInitializers), __runInitializers(this, _edgeless_initializers, void 0));
|
|
657
662
|
this.#selectedRect_accessor_storage = (__runInitializers(this, _edgeless_extraInitializers), __runInitializers(this, _selectedRect_initializers, void 0));
|
|
@@ -33,7 +33,7 @@ var __runInitializers = (this && this.__runInitializers) || function (thisArg, i
|
|
|
33
33
|
return useValue ? value : void 0;
|
|
34
34
|
};
|
|
35
35
|
import { RefNodeSlotsProvider } from '../affine-inline-reference/index.js';
|
|
36
|
-
import { requestThrottledConnectedFrame } from '../affine-shared/utils/index.js';
|
|
36
|
+
import { overlayScale, requestThrottledConnectedFrame, toOverlayCoord, } from '../affine-shared/utils/index.js';
|
|
37
37
|
import { WidgetComponent } from '../std/index.js';
|
|
38
38
|
import { GfxControllerIdentifier, GfxPrimitiveElementModel, } from '../std/gfx/index.js';
|
|
39
39
|
import { OpenInNewIcon, RightSidebarIcon } from '@blocksuite/icons/lit';
|
|
@@ -72,12 +72,13 @@ let EdgelessElementLinkWidget = (() => {
|
|
|
72
72
|
}
|
|
73
73
|
const bound = el.elementBound;
|
|
74
74
|
const { viewport } = this.gfx;
|
|
75
|
-
const [left, top] = viewport
|
|
75
|
+
const [left, top] = toOverlayCoord(viewport, bound.x, bound.y);
|
|
76
|
+
const scale = overlayScale(viewport);
|
|
76
77
|
this._rect = {
|
|
77
78
|
left,
|
|
78
79
|
top,
|
|
79
|
-
width: bound.w *
|
|
80
|
-
height: bound.h *
|
|
80
|
+
width: bound.w * scale,
|
|
81
|
+
height: bound.h * scale,
|
|
81
82
|
};
|
|
82
83
|
}, this));
|
|
83
84
|
this._open = (e) => {
|
|
@@ -36,7 +36,7 @@ import {} from '../affine-block-frame/index.js';
|
|
|
36
36
|
import { EdgelessLegacySlotIdentifier, OverlayIdentifier, } from '../affine-block-surface/index.js';
|
|
37
37
|
import { ConnectorElementModel, } from '../affine-model/index.js';
|
|
38
38
|
import { unsafeCSSVarV2 } from '../affine-shared/theme/index.js';
|
|
39
|
-
import { getSelectedRect, requestThrottledConnectedFrame, stopPropagation, } from '../affine-shared/utils/index.js';
|
|
39
|
+
import { getSelectedRect, overlayScale, requestThrottledConnectedFrame, stopPropagation, toOverlayCoord, } from '../affine-shared/utils/index.js';
|
|
40
40
|
import { deserializeXYWH } from '../global/gfx/index.js';
|
|
41
41
|
import { WidgetComponent } from '../std/index.js';
|
|
42
42
|
import { GfxControllerIdentifier, InteractivityIdentifier, } from '../std/gfx/index.js';
|
|
@@ -523,13 +523,14 @@ let EdgelessSelectedRectWidget = (() => {
|
|
|
523
523
|
borderStyle: 'solid',
|
|
524
524
|
});
|
|
525
525
|
this._updateSelectedRect = (__runInitializers(this, __selectedRect_extraInitializers), requestThrottledConnectedFrame(() => {
|
|
526
|
-
const {
|
|
526
|
+
const { selection, gfx } = this;
|
|
527
527
|
const elements = selection.selectedElements;
|
|
528
528
|
// in surface
|
|
529
529
|
const rect = getSelectedRect(elements);
|
|
530
|
-
// in viewport
|
|
531
|
-
const [left, top] = gfx.viewport
|
|
532
|
-
const
|
|
530
|
+
// in viewport, inside the container the host may have scaled
|
|
531
|
+
const [left, top] = toOverlayCoord(gfx.viewport, rect.left, rect.top);
|
|
532
|
+
const scale = overlayScale(gfx.viewport);
|
|
533
|
+
const [width, height] = [rect.width * scale, rect.height * scale];
|
|
533
534
|
let rotate = 0;
|
|
534
535
|
if (elements.length === 1 && elements[0].rotate) {
|
|
535
536
|
rotate = elements[0].rotate;
|
|
@@ -571,7 +572,15 @@ let EdgelessSelectedRectWidget = (() => {
|
|
|
571
572
|
}
|
|
572
573
|
_disposables.add(this.store.slots.blockUpdated.subscribe(this._updateOnElementChange));
|
|
573
574
|
_disposables.add(selection.slots.updated.subscribe(this._updateOnSelectionChange));
|
|
574
|
-
_disposables.add(
|
|
575
|
+
_disposables.add(
|
|
576
|
+
// `_updateHandles` already refuses on readonly, but it only ran on
|
|
577
|
+
// selection change: a board switched to readonly while something was
|
|
578
|
+
// selected kept its 8 resize handles — and dragging one of them wrote
|
|
579
|
+
// `xywh`. Recompute on the flip, in both directions.
|
|
580
|
+
this._slots.readonlyUpdated.subscribe(() => {
|
|
581
|
+
this._updateHandles();
|
|
582
|
+
this.requestUpdate();
|
|
583
|
+
}));
|
|
575
584
|
_disposables.add(this._slots.elementResizeEnd.subscribe(() => (this._isResizing = false)));
|
|
576
585
|
if (this._interaction) {
|
|
577
586
|
_disposables.add(this._interaction.activeInteraction$.subscribe(val => {
|
|
@@ -686,15 +695,16 @@ let EdgelessSelectedRectWidget = (() => {
|
|
|
686
695
|
!elements.some(e => e instanceof ConnectorElementModel)) {
|
|
687
696
|
handles.push(repeat(elements, element => element.id, element => {
|
|
688
697
|
const [modelX, modelY, w, h] = deserializeXYWH(element.xywh);
|
|
689
|
-
const [x, y] = gfx.viewport
|
|
698
|
+
const [x, y] = toOverlayCoord(gfx.viewport, modelX, modelY);
|
|
699
|
+
const scale = overlayScale(gfx.viewport);
|
|
690
700
|
const { left, top, borderWidth } = this._selectedRect;
|
|
691
701
|
const style = {
|
|
692
702
|
position: 'absolute',
|
|
693
703
|
boxSizing: 'border-box',
|
|
694
704
|
left: `${x - left - borderWidth}px`,
|
|
695
705
|
top: `${y - top - borderWidth}px`,
|
|
696
|
-
width: `${w *
|
|
697
|
-
height: `${h *
|
|
706
|
+
width: `${w * scale}px`,
|
|
707
|
+
height: `${h * scale}px`,
|
|
698
708
|
transform: `rotate(${element.rotate}deg)`,
|
|
699
709
|
border: `1px solid var(--affine-primary-color)`,
|
|
700
710
|
};
|
|
@@ -2,7 +2,7 @@ import { type Options, Overlay, type RoughCanvas } from '../affine-block-surface
|
|
|
2
2
|
import { type NoteBlockModel, ShapeElementModel, type ShapeName, type ShapeStyle } from '../affine-model/index.js';
|
|
3
3
|
import { Bound, type XYWH } from '../global/gfx/index.js';
|
|
4
4
|
import type { BlockComponent } from '../std/index.js';
|
|
5
|
-
import type { CursorType, GfxController, ResizeHandle, StandardCursor } from '../std/gfx/index.js';
|
|
5
|
+
import type { CursorType, GfxController, GfxModel, ResizeHandle, StandardCursor } from '../std/gfx/index.js';
|
|
6
6
|
export declare enum Direction {
|
|
7
7
|
Right = 0,
|
|
8
8
|
Bottom = 1,
|
|
@@ -49,7 +49,21 @@ export declare function getPosition(type: Direction): {
|
|
|
49
49
|
};
|
|
50
50
|
export declare function isShape(element: unknown): element is ShapeElementModel;
|
|
51
51
|
export declare function capitalizeFirstLetter(str: string): string;
|
|
52
|
-
|
|
52
|
+
/**
|
|
53
|
+
* Clone `current` one bound further along, so an auto-complete arrow can drop a
|
|
54
|
+
* sibling of what is selected.
|
|
55
|
+
*
|
|
56
|
+
* Only two kinds of thing can be cloned this way: a shape (any
|
|
57
|
+
* `ShapeElementModel`, subclasses included — a wardley node, an EDGY node, a
|
|
58
|
+
* BPMN node) and a note block. Everything else on the canvas — a group, a free
|
|
59
|
+
* text label, a connector, a framework background — has no `props` bag at all,
|
|
60
|
+
* and reading one blindly is what used to throw
|
|
61
|
+
* `Cannot read properties of undefined (reading 'background')` the moment an
|
|
62
|
+
* arrow was offered on a selected wardley component (which selects the *group*
|
|
63
|
+
* wrapping node + label, not the node). We return `null` instead: the caller
|
|
64
|
+
* already treats a falsy id as "nothing to complete".
|
|
65
|
+
*/
|
|
66
|
+
export declare function createEdgelessElement(edgeless: BlockComponent, current: GfxModel, bound: Bound): string | null;
|
|
53
67
|
export declare function createShapeElement(edgeless: BlockComponent, current: ShapeElementModel | NoteBlockModel, targetType: TARGET_SHAPE_TYPE): string | null;
|
|
54
68
|
export declare function generateCursorUrl(angle: number | undefined, handle: ResizeHandle, fallback?: StandardCursor): CursorType;
|
|
55
69
|
export declare function getRotatedResizeCursor(option: {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { EdgelessCRUDIdentifier, Overlay, } from '../affine-block-surface/index.js';
|
|
1
|
+
import { EdgelessCRUDIdentifier, isNoteBlock, Overlay, } from '../affine-block-surface/index.js';
|
|
2
2
|
import { ShapeFactory } from '../affine-gfx-shape/index.js';
|
|
3
3
|
import { getShapeRadius, getShapeType, GroupElementModel, ShapeElementModel, } from '../affine-model/index.js';
|
|
4
4
|
import { BlockSuiteError, ErrorCode } from '../global/exceptions/index.js';
|
|
@@ -203,6 +203,20 @@ export function isShape(element) {
|
|
|
203
203
|
export function capitalizeFirstLetter(str) {
|
|
204
204
|
return str.charAt(0).toUpperCase() + str.slice(1);
|
|
205
205
|
}
|
|
206
|
+
/**
|
|
207
|
+
* Clone `current` one bound further along, so an auto-complete arrow can drop a
|
|
208
|
+
* sibling of what is selected.
|
|
209
|
+
*
|
|
210
|
+
* Only two kinds of thing can be cloned this way: a shape (any
|
|
211
|
+
* `ShapeElementModel`, subclasses included — a wardley node, an EDGY node, a
|
|
212
|
+
* BPMN node) and a note block. Everything else on the canvas — a group, a free
|
|
213
|
+
* text label, a connector, a framework background — has no `props` bag at all,
|
|
214
|
+
* and reading one blindly is what used to throw
|
|
215
|
+
* `Cannot read properties of undefined (reading 'background')` the moment an
|
|
216
|
+
* arrow was offered on a selected wardley component (which selects the *group*
|
|
217
|
+
* wrapping node + label, not the node). We return `null` instead: the caller
|
|
218
|
+
* already treats a falsy id as "nothing to complete".
|
|
219
|
+
*/
|
|
206
220
|
export function createEdgelessElement(edgeless, current, bound) {
|
|
207
221
|
const crud = edgeless.std.get(EdgelessCRUDIdentifier);
|
|
208
222
|
let id;
|
|
@@ -217,7 +231,7 @@ export function createEdgelessElement(edgeless, current, bound) {
|
|
|
217
231
|
return null;
|
|
218
232
|
element = crud.getElementById(id);
|
|
219
233
|
}
|
|
220
|
-
else {
|
|
234
|
+
else if (isNoteBlock(current)) {
|
|
221
235
|
const { store } = edgeless;
|
|
222
236
|
id = store.addBlock('affine:note', {
|
|
223
237
|
background: current.props.background,
|
|
@@ -236,6 +250,9 @@ export function createEdgelessElement(edgeless, current, bound) {
|
|
|
236
250
|
store.addBlock('affine:paragraph', {}, note.id);
|
|
237
251
|
element = note;
|
|
238
252
|
}
|
|
253
|
+
else {
|
|
254
|
+
return null;
|
|
255
|
+
}
|
|
239
256
|
if (!element) {
|
|
240
257
|
throw new BlockSuiteError(ErrorCode.GfxBlockElementError, 'Element is not found after creation');
|
|
241
258
|
}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { ExtensionType } from '../../store/index.js';
|
|
2
|
+
/**
|
|
3
|
+
* The DEFAULT `ArtefactCatalogueProvider`: the library's own left sidepanel.
|
|
4
|
+
*
|
|
5
|
+
* Registered next to the widget itself (`EdgelessToolbarViewExtension`), and
|
|
6
|
+
* unconditionally — a catalogue is core chrome, not a framework's tooling. ADR
|
|
7
|
+
* 0009's gating is carried by the frameworks: a framework whose flag is off
|
|
8
|
+
* shows no senior button, so its owner is never passed to `open`, and the panel
|
|
9
|
+
* simply never opens for it.
|
|
10
|
+
*
|
|
11
|
+
* `di.addImpl`, so a host's `ArtefactCatalogueExtension(service)` — which uses
|
|
12
|
+
* `di.override` — wins whatever the registration order.
|
|
13
|
+
*/
|
|
14
|
+
export declare const artefactCatalogueDefaultExtension: ExtensionType;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { ArtefactCatalogueProvider, } from '../../affine-shared/services/index.js';
|
|
2
|
+
import { StdIdentifier } from '../../std/index.js';
|
|
3
|
+
import { EDGELESS_ARTEFACT_CATALOGUE_WIDGET, } from './artefact-catalogue-widget.js';
|
|
4
|
+
/**
|
|
5
|
+
* The widget, found on the editor host — or `null` before it has mounted, and
|
|
6
|
+
* on a page-mode editor where it is not registered at all.
|
|
7
|
+
*
|
|
8
|
+
* A DOM lookup rather than a reference held at registration time, because the
|
|
9
|
+
* widget is created and destroyed by lit as the root block renders: the same
|
|
10
|
+
* lookup `EditorAnchoredPanel` makes for the toolbar it measures against. A
|
|
11
|
+
* `null` here is not an error — it is a catalogue nobody can open yet, and the
|
|
12
|
+
* `open` below is then a no-op rather than a throw in a menu click handler.
|
|
13
|
+
*/
|
|
14
|
+
function catalogueWidget(std) {
|
|
15
|
+
return (std.host.querySelector(EDGELESS_ARTEFACT_CATALOGUE_WIDGET) ?? null);
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* The DEFAULT `ArtefactCatalogueProvider`: the library's own left sidepanel.
|
|
19
|
+
*
|
|
20
|
+
* Registered next to the widget itself (`EdgelessToolbarViewExtension`), and
|
|
21
|
+
* unconditionally — a catalogue is core chrome, not a framework's tooling. ADR
|
|
22
|
+
* 0009's gating is carried by the frameworks: a framework whose flag is off
|
|
23
|
+
* shows no senior button, so its owner is never passed to `open`, and the panel
|
|
24
|
+
* simply never opens for it.
|
|
25
|
+
*
|
|
26
|
+
* `di.addImpl`, so a host's `ArtefactCatalogueExtension(service)` — which uses
|
|
27
|
+
* `di.override` — wins whatever the registration order.
|
|
28
|
+
*/
|
|
29
|
+
export const artefactCatalogueDefaultExtension = {
|
|
30
|
+
setup: di => {
|
|
31
|
+
di.addImpl(ArtefactCatalogueProvider, provider => {
|
|
32
|
+
const std = provider.get(StdIdentifier);
|
|
33
|
+
const service = {
|
|
34
|
+
open: owner => catalogueWidget(std)?.openFor(owner),
|
|
35
|
+
close: () => catalogueWidget(std)?.closePanel(),
|
|
36
|
+
};
|
|
37
|
+
return service;
|
|
38
|
+
});
|
|
39
|
+
},
|
|
40
|
+
};
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
import type { RootBlockModel } from '../../affine-model/index.js';
|
|
2
|
+
import { type CommandOwner, WidgetComponent } from '../../std/index.js';
|
|
3
|
+
import { nothing } from 'lit';
|
|
4
|
+
export declare const EDGELESS_ARTEFACT_CATALOGUE_WIDGET = "edgeless-artefact-catalogue-widget";
|
|
5
|
+
/**
|
|
6
|
+
* The **artefact catalogue** sidepanel (PF6).
|
|
7
|
+
*
|
|
8
|
+
* A framework's senior sub-menu is a row of icons, and a row of icons stops
|
|
9
|
+
* working somewhere around fourteen. The BPMN pack is the first framework to
|
|
10
|
+
* pass that line, so the sub-menu shows the thirteen the ranking put first and
|
|
11
|
+
* hands the rest to this panel: everything the owner declares on the
|
|
12
|
+
* `'catalogue'` surface, grouped by the categories the framework itself
|
|
13
|
+
* declared, with the label and the chord spelled out instead of guessed from a
|
|
14
|
+
* glyph.
|
|
15
|
+
*
|
|
16
|
+
* ## Left, full height, inside the editor
|
|
17
|
+
*
|
|
18
|
+
* Not a popover, not a modal. It is a column down the left edge of the editor
|
|
19
|
+
* host — the side no toolbar occupies — the canvas stays live to its right, and
|
|
20
|
+
* a click on the canvas puts it away. Twenty artefacts want a list you scroll,
|
|
21
|
+
* and a list you scroll wants height; a floating box would have had to choose
|
|
22
|
+
* between covering the board and showing four rows at a time.
|
|
23
|
+
*
|
|
24
|
+
* ## Not an `EditorAnchoredPanel`
|
|
25
|
+
*
|
|
26
|
+
* The shared base (ADR 0011) exists for panels pinned ABOVE the senior button
|
|
27
|
+
* bar and measured against it: its host is bottom-left and zero-sized, and
|
|
28
|
+
* `anchorBox()` returns a `bottom` and a width read off the bar. None of that
|
|
29
|
+
* is expressible for a full-height column, so the geometry is this file's own —
|
|
30
|
+
* but the WISDOM is not reinvented. The layer constant is imported from there
|
|
31
|
+
* rather than copied, and the host is zero-WIDTH for the same reason its host is
|
|
32
|
+
* zero-sized (`.widgets-container > * { pointer-events: auto }` is an outer-tree
|
|
33
|
+
* rule that beats `:host { pointer-events: none }`, so a host with a real box
|
|
34
|
+
* would swallow canvas clicks down the whole left side of the board). The
|
|
35
|
+
* click-away, the Escape-on-`std.host` scope and the disconnect cleanup are the
|
|
36
|
+
* same contracts, replicated in about thirty lines.
|
|
37
|
+
*
|
|
38
|
+
* ## What closing does, and does not
|
|
39
|
+
*
|
|
40
|
+
* X, Escape and click-away all close, on the FIRST gesture, and none of them
|
|
41
|
+
* touches the active senior tool: the panel is a way of reaching a command, not
|
|
42
|
+
* a mode. Invoking a row closes it too — the PO's default is one tap and back
|
|
43
|
+
* to the canvas.
|
|
44
|
+
*
|
|
45
|
+
* ## Who opens it
|
|
46
|
+
*
|
|
47
|
+
* `ArtefactCatalogueProvider`. This widget registers itself as the DEFAULT
|
|
48
|
+
* implementation ({@link artefactCatalogueDefaultExtension}); a host with its
|
|
49
|
+
* own sidebar registers `ArtefactCatalogueExtension(service)`, whose
|
|
50
|
+
* `di.override` wins, and this panel is then never asked to open.
|
|
51
|
+
*/
|
|
52
|
+
export declare class EdgelessArtefactCatalogueWidget extends WidgetComponent<RootBlockModel> {
|
|
53
|
+
static styles: import("lit").CSSResult;
|
|
54
|
+
/** Which framework's catalogue is on screen, or `null` when it is away. */
|
|
55
|
+
private accessor _owner;
|
|
56
|
+
/** The owner the body was last scrolled to the top for. */
|
|
57
|
+
private _scrolledFor;
|
|
58
|
+
get catalogueOpen(): boolean;
|
|
59
|
+
/**
|
|
60
|
+
* Show `owner`'s catalogue. Called through `ArtefactCatalogueProvider`, never
|
|
61
|
+
* from another widget's DOM — the sub-menu that opens it lives in a different
|
|
62
|
+
* tree, and the seam is what keeps a host's own sidebar substitutable.
|
|
63
|
+
*/
|
|
64
|
+
openFor(owner: CommandOwner): void;
|
|
65
|
+
/**
|
|
66
|
+
* Put the panel away. Deliberately writes NOTHING but its own state: the
|
|
67
|
+
* senior tool the user armed before opening the catalogue is still armed
|
|
68
|
+
* after, whichever gesture closed it.
|
|
69
|
+
*/
|
|
70
|
+
readonly closePanel: () => void;
|
|
71
|
+
/** Keep a gesture inside the panel from reaching the canvas behind it. */
|
|
72
|
+
private readonly _swallow;
|
|
73
|
+
private readonly _onDocumentPointerDown;
|
|
74
|
+
/**
|
|
75
|
+
* Escape is listened for on the EDITOR HOST, not on `document`: a host
|
|
76
|
+
* application keeps its own global Escape, and with the catalogue open the
|
|
77
|
+
* key dismisses the catalogue rather than clearing the canvas selection
|
|
78
|
+
* behind it. Same scope and same reasoning as `EditorAnchoredPanel`.
|
|
79
|
+
*/
|
|
80
|
+
private readonly _onHostKeydown;
|
|
81
|
+
/**
|
|
82
|
+
* A wheel OVER THE PANEL scrolls the panel, never the board.
|
|
83
|
+
*
|
|
84
|
+
* Same bug and same fix as the violation bubble (PR #103, PO 02/08):
|
|
85
|
+
* `EdgelessRootBlock` takes `wheel` off the event dispatcher on the editor
|
|
86
|
+
* host and `preventDefault()`s unconditionally before panning — so a wheel
|
|
87
|
+
* over the catalogue's overflowing list panned the canvas instead of
|
|
88
|
+
* scrolling the twenty artefacts under the pointer (PO recette, 27/08/2026).
|
|
89
|
+
* One CAPTURE-phase listener on the host stops the event before the
|
|
90
|
+
* dispatcher sees it; no `preventDefault`, because the default action IS the
|
|
91
|
+
* panel scrolling.
|
|
92
|
+
*
|
|
93
|
+
* Narrower than the bubble's freeze, deliberately: the bubble owns the wheel
|
|
94
|
+
* everywhere while open (a reading gesture); the catalogue only claims the
|
|
95
|
+
* wheel over its own box — `composedPath` gate — and the canvas to its right
|
|
96
|
+
* keeps panning, because furnishing a diagram means looking around it.
|
|
97
|
+
*/
|
|
98
|
+
private readonly _onHostWheel;
|
|
99
|
+
/**
|
|
100
|
+
* Idempotent, and called from both `firstUpdated` and a later
|
|
101
|
+
* `connectedCallback`: `WithDisposable` throws the group away on disconnect
|
|
102
|
+
* while lit runs `firstUpdated` exactly once.
|
|
103
|
+
*/
|
|
104
|
+
private _wire;
|
|
105
|
+
connectedCallback(): void;
|
|
106
|
+
firstUpdated(): void;
|
|
107
|
+
/**
|
|
108
|
+
* On open: the panel takes the focus and the list starts at the top.
|
|
109
|
+
*
|
|
110
|
+
* The focus is what makes the panel reachable from a keyboard and audible to
|
|
111
|
+
* a screen reader — it carries the dialog's label, so the framework's name is
|
|
112
|
+
* read before the first artefact. `preventScroll` because the host is a
|
|
113
|
+
* zero-width box at the editor's origin and the browser would otherwise
|
|
114
|
+
* scroll the editor to "reveal" it.
|
|
115
|
+
*
|
|
116
|
+
* The scroll reset matters on the second open: a user who scrolled to the
|
|
117
|
+
* bottom of BPMN's twenty artefacts, closed, and opened the panel again for
|
|
118
|
+
* another framework would otherwise land mid-list with no idea what is above.
|
|
119
|
+
*/
|
|
120
|
+
updated(): void;
|
|
121
|
+
/**
|
|
122
|
+
* The commands this panel draws: the owner's `'catalogue'` surface, minus the
|
|
123
|
+
* ones whose preconditions do not hold.
|
|
124
|
+
*
|
|
125
|
+
* Unavailable commands are DROPPED, not greyed out. A disabled row in a list
|
|
126
|
+
* of twenty is noise a reader has to step over on every pass, and the panel
|
|
127
|
+
* has no room to say why it is disabled; a command that comes back when the
|
|
128
|
+
* selection changes simply reappears.
|
|
129
|
+
*/
|
|
130
|
+
private _commands;
|
|
131
|
+
/**
|
|
132
|
+
* The chord this command answers to on this platform, as the user would type
|
|
133
|
+
* it — or `null` for the many commands that ship keyless (and stay bindable).
|
|
134
|
+
*
|
|
135
|
+
* The host's override table is consulted, so a rebound command shows what it
|
|
136
|
+
* is actually bound to rather than what it shipped with, and a `'disabled'`
|
|
137
|
+
* entry shows nothing at all.
|
|
138
|
+
*/
|
|
139
|
+
private _chord;
|
|
140
|
+
/**
|
|
141
|
+
* Run the command. The panel STAYS OPEN.
|
|
142
|
+
*
|
|
143
|
+
* `runCommand` is the one bottleneck (ADR 0008): the telemetry and the usage
|
|
144
|
+
* measure are emitted there, and `surface: 'catalogue'` is what makes this
|
|
145
|
+
* panel distinguishable from the sub-menu in the numbers.
|
|
146
|
+
*
|
|
147
|
+
* Staying open is the PO's call (recette, 27/08/2026), reversing the first
|
|
148
|
+
* default: a catalogue is where a user furnishes a diagram, and furnishing is
|
|
149
|
+
* several artefacts in a row — closing after each one turned that into
|
|
150
|
+
* open-click-reopen. The exits are unchanged and all one gesture: ×, Escape,
|
|
151
|
+
* or a click on the canvas.
|
|
152
|
+
*/
|
|
153
|
+
private _invoke;
|
|
154
|
+
private _groupLabel;
|
|
155
|
+
private _renderEntry;
|
|
156
|
+
render(): import("lit-html").TemplateResult<1> | typeof nothing;
|
|
157
|
+
}
|
|
158
|
+
export declare const edgelessArtefactCatalogueWidget: import("../../store/index.js").ExtensionType;
|