@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
|
@@ -0,0 +1,283 @@
|
|
|
1
|
+
import { cssVarV2, darkThemeV2, lightThemeV2 } from '@toeverything/theme/v2';
|
|
2
|
+
/**
|
|
3
|
+
* A colour is treated as a shade of grey below this chroma, and is then only
|
|
4
|
+
* ever mapped onto the grey highlight — never onto a hue.
|
|
5
|
+
*/
|
|
6
|
+
const ACHROMATIC_CHROMA_THRESHOLD = 0.02;
|
|
7
|
+
/**
|
|
8
|
+
* Greys this dark or this light are the reader's own text and background
|
|
9
|
+
* colours: leaving them unmapped is what keeps a pasted document legible in
|
|
10
|
+
* both themes.
|
|
11
|
+
*/
|
|
12
|
+
const DEFAULT_TEXT_LIGHTNESS_MIN = 0.4;
|
|
13
|
+
const DEFAULT_TEXT_LIGHTNESS_MAX = 0.9;
|
|
14
|
+
const MAX_COLOR_DISTANCE = 0.18;
|
|
15
|
+
const MAX_CHROMA_DISTANCE = 0.12;
|
|
16
|
+
const MAX_HUE_DISTANCE = 45;
|
|
17
|
+
const supportedTextColorNames = [
|
|
18
|
+
'red',
|
|
19
|
+
'orange',
|
|
20
|
+
'yellow',
|
|
21
|
+
'green',
|
|
22
|
+
'teal',
|
|
23
|
+
'blue',
|
|
24
|
+
'purple',
|
|
25
|
+
'grey',
|
|
26
|
+
];
|
|
27
|
+
/**
|
|
28
|
+
* The basic CSS colour keywords. Anything outside this set parses as `null`,
|
|
29
|
+
* which means "leave the text alone" — the conservative outcome.
|
|
30
|
+
*/
|
|
31
|
+
const NAMED_COLORS = {
|
|
32
|
+
aqua: '#00ffff',
|
|
33
|
+
black: '#000000',
|
|
34
|
+
blue: '#0000ff',
|
|
35
|
+
cyan: '#00ffff',
|
|
36
|
+
fuchsia: '#ff00ff',
|
|
37
|
+
gray: '#808080',
|
|
38
|
+
green: '#008000',
|
|
39
|
+
grey: '#808080',
|
|
40
|
+
lime: '#00ff00',
|
|
41
|
+
magenta: '#ff00ff',
|
|
42
|
+
maroon: '#800000',
|
|
43
|
+
navy: '#000080',
|
|
44
|
+
olive: '#808000',
|
|
45
|
+
orange: '#ffa500',
|
|
46
|
+
purple: '#800080',
|
|
47
|
+
red: '#ff0000',
|
|
48
|
+
silver: '#c0c0c0',
|
|
49
|
+
teal: '#008080',
|
|
50
|
+
transparent: '#00000000',
|
|
51
|
+
white: '#ffffff',
|
|
52
|
+
yellow: '#ffff00',
|
|
53
|
+
};
|
|
54
|
+
const clamp = (value, min, max) => Math.min(max, Math.max(min, value));
|
|
55
|
+
const parseHex = (value) => {
|
|
56
|
+
const hex = value.slice(1);
|
|
57
|
+
if (!/^[0-9a-f]+$/i.test(hex))
|
|
58
|
+
return null;
|
|
59
|
+
const expand = (part) => part.length === 1
|
|
60
|
+
? Number.parseInt(part + part, 16)
|
|
61
|
+
: Number.parseInt(part, 16);
|
|
62
|
+
const size = hex.length === 3 || hex.length === 4 ? 1 : 2;
|
|
63
|
+
if (hex.length !== size * 3 && hex.length !== size * 4)
|
|
64
|
+
return null;
|
|
65
|
+
return {
|
|
66
|
+
r: expand(hex.slice(0, size)),
|
|
67
|
+
g: expand(hex.slice(size, size * 2)),
|
|
68
|
+
b: expand(hex.slice(size * 2, size * 3)),
|
|
69
|
+
alpha: hex.length === size * 4 ? expand(hex.slice(size * 3, size * 4)) / 255 : 1,
|
|
70
|
+
};
|
|
71
|
+
};
|
|
72
|
+
/** A colour channel: `0-255`, or a percentage of 255. */
|
|
73
|
+
const parseChannel = (token) => {
|
|
74
|
+
const trimmed = token.trim();
|
|
75
|
+
if (!trimmed)
|
|
76
|
+
return null;
|
|
77
|
+
const isPercentage = trimmed.endsWith('%');
|
|
78
|
+
const value = Number.parseFloat(isPercentage ? trimmed.slice(0, -1) : trimmed);
|
|
79
|
+
if (Number.isNaN(value))
|
|
80
|
+
return null;
|
|
81
|
+
return clamp(Math.round(isPercentage ? (value / 100) * 255 : value), 0, 255);
|
|
82
|
+
};
|
|
83
|
+
/** An alpha value: `0-1`, or a percentage. */
|
|
84
|
+
const parseAlpha = (token) => {
|
|
85
|
+
if (token === null)
|
|
86
|
+
return 1;
|
|
87
|
+
const trimmed = token.trim();
|
|
88
|
+
if (!trimmed)
|
|
89
|
+
return null;
|
|
90
|
+
const isPercentage = trimmed.endsWith('%');
|
|
91
|
+
const value = Number.parseFloat(isPercentage ? trimmed.slice(0, -1) : trimmed);
|
|
92
|
+
if (Number.isNaN(value))
|
|
93
|
+
return null;
|
|
94
|
+
return clamp(isPercentage ? value / 100 : value, 0, 1);
|
|
95
|
+
};
|
|
96
|
+
/**
|
|
97
|
+
* Split the body of a colour function into its arguments and its alpha,
|
|
98
|
+
* accepting both the legacy comma syntax (`rgb(1, 2, 3, 0.5)`) and the modern
|
|
99
|
+
* space syntax (`rgb(1 2 3 / 50%)`).
|
|
100
|
+
*/
|
|
101
|
+
const splitFunctionArgs = (body) => {
|
|
102
|
+
const [main, alphaPart] = body.split('/');
|
|
103
|
+
const args = main.split(/[\s,]+/).filter(Boolean);
|
|
104
|
+
let alpha = alphaPart?.trim() ? alphaPart.trim() : null;
|
|
105
|
+
if (alpha === null && args.length === 4) {
|
|
106
|
+
alpha = args.pop() ?? null;
|
|
107
|
+
}
|
|
108
|
+
return { args, alpha };
|
|
109
|
+
};
|
|
110
|
+
const parseHue = (token) => {
|
|
111
|
+
const trimmed = token.trim().toLowerCase();
|
|
112
|
+
const value = Number.parseFloat(trimmed);
|
|
113
|
+
if (Number.isNaN(value))
|
|
114
|
+
return null;
|
|
115
|
+
if (trimmed.endsWith('turn'))
|
|
116
|
+
return value * 360;
|
|
117
|
+
if (trimmed.endsWith('rad'))
|
|
118
|
+
return (value * 180) / Math.PI;
|
|
119
|
+
if (trimmed.endsWith('grad'))
|
|
120
|
+
return value * 0.9;
|
|
121
|
+
return value;
|
|
122
|
+
};
|
|
123
|
+
const hslToRgb = (h, s, l) => {
|
|
124
|
+
const hue = ((h % 360) + 360) % 360;
|
|
125
|
+
const c = (1 - Math.abs(2 * l - 1)) * s;
|
|
126
|
+
const x = c * (1 - Math.abs(((hue / 60) % 2) - 1));
|
|
127
|
+
const m = l - c / 2;
|
|
128
|
+
const [r, g, b] = [
|
|
129
|
+
[c, x, 0],
|
|
130
|
+
[x, c, 0],
|
|
131
|
+
[0, c, x],
|
|
132
|
+
[0, x, c],
|
|
133
|
+
[x, 0, c],
|
|
134
|
+
[c, 0, x],
|
|
135
|
+
][Math.floor(hue / 60) % 6];
|
|
136
|
+
return {
|
|
137
|
+
r: Math.round((r + m) * 255),
|
|
138
|
+
g: Math.round((g + m) * 255),
|
|
139
|
+
b: Math.round((b + m) * 255),
|
|
140
|
+
};
|
|
141
|
+
};
|
|
142
|
+
/**
|
|
143
|
+
* Parse the subset of CSS colour syntax that turns up in pasted HTML: hex,
|
|
144
|
+
* `rgb()`/`rgba()`, `hsl()`/`hsla()` and the basic colour keywords. Anything
|
|
145
|
+
* else — `color-mix()`, a custom property, an unknown keyword — is `null`.
|
|
146
|
+
*/
|
|
147
|
+
export const parseCssColor = (value) => {
|
|
148
|
+
const trimmed = value.trim().toLowerCase();
|
|
149
|
+
if (!trimmed)
|
|
150
|
+
return null;
|
|
151
|
+
const named = NAMED_COLORS[trimmed];
|
|
152
|
+
if (named)
|
|
153
|
+
return parseHex(named);
|
|
154
|
+
if (trimmed.startsWith('#'))
|
|
155
|
+
return parseHex(trimmed);
|
|
156
|
+
const fn = trimmed.match(/^(rgba?|hsla?)\(([^)]*)\)$/);
|
|
157
|
+
if (!fn)
|
|
158
|
+
return null;
|
|
159
|
+
const { args, alpha: rawAlpha } = splitFunctionArgs(fn[2]);
|
|
160
|
+
if (args.length !== 3)
|
|
161
|
+
return null;
|
|
162
|
+
const alpha = parseAlpha(rawAlpha);
|
|
163
|
+
if (alpha === null)
|
|
164
|
+
return null;
|
|
165
|
+
if (fn[1].startsWith('rgb')) {
|
|
166
|
+
const [r, g, b] = args.map(parseChannel);
|
|
167
|
+
if (r === null || g === null || b === null)
|
|
168
|
+
return null;
|
|
169
|
+
return { r, g, b, alpha };
|
|
170
|
+
}
|
|
171
|
+
const hue = parseHue(args[0]);
|
|
172
|
+
const saturation = parseAlpha(args[1]);
|
|
173
|
+
const lightness = parseAlpha(args[2]);
|
|
174
|
+
if (hue === null || saturation === null || lightness === null)
|
|
175
|
+
return null;
|
|
176
|
+
return { ...hslToRgb(hue, saturation, lightness), alpha };
|
|
177
|
+
};
|
|
178
|
+
const srgbToLinear = (channel) => {
|
|
179
|
+
const value = channel / 255;
|
|
180
|
+
return value <= 0.04045
|
|
181
|
+
? value / 12.92
|
|
182
|
+
: Math.pow((value + 0.055) / 1.055, 2.4);
|
|
183
|
+
};
|
|
184
|
+
/**
|
|
185
|
+
* Oklab is perceptually uniform, so "near enough to count as the same colour"
|
|
186
|
+
* is a plain distance here, which it is not in sRGB.
|
|
187
|
+
*/
|
|
188
|
+
const rgbToOklab = ({ r, g, b }) => {
|
|
189
|
+
const red = srgbToLinear(r);
|
|
190
|
+
const green = srgbToLinear(g);
|
|
191
|
+
const blue = srgbToLinear(b);
|
|
192
|
+
const l = Math.cbrt(0.4122214708 * red + 0.5363325363 * green + 0.0514459929 * blue);
|
|
193
|
+
const m = Math.cbrt(0.2119034982 * red + 0.6806995451 * green + 0.1073969566 * blue);
|
|
194
|
+
const s = Math.cbrt(0.0883024619 * red + 0.2817188376 * green + 0.6299787005 * blue);
|
|
195
|
+
const result = {
|
|
196
|
+
l: 0.2104542553 * l + 0.793617785 * m - 0.0040720468 * s,
|
|
197
|
+
a: 1.9779984951 * l - 2.428592205 * m + 0.4505937099 * s,
|
|
198
|
+
b: 0.0259040371 * l + 0.7827717662 * m - 0.808675766 * s,
|
|
199
|
+
};
|
|
200
|
+
return {
|
|
201
|
+
...result,
|
|
202
|
+
chroma: Math.hypot(result.a, result.b),
|
|
203
|
+
hue: (Math.atan2(result.b, result.a) * 180) / Math.PI,
|
|
204
|
+
};
|
|
205
|
+
};
|
|
206
|
+
const supportedTextColors = supportedTextColorNames.map(name => ({
|
|
207
|
+
name,
|
|
208
|
+
cssVar: cssVarV2(`text/highlight/fg/${name}`),
|
|
209
|
+
// Both themes are candidates: a document is pasted in one theme and read in
|
|
210
|
+
// the other, so whichever reference is nearer decides the highlight.
|
|
211
|
+
references: [
|
|
212
|
+
lightThemeV2[`text/highlight/fg/${name}`],
|
|
213
|
+
darkThemeV2[`text/highlight/fg/${name}`],
|
|
214
|
+
].flatMap(color => {
|
|
215
|
+
const parsed = parseCssColor(color);
|
|
216
|
+
return parsed ? [rgbToOklab(parsed)] : [];
|
|
217
|
+
}),
|
|
218
|
+
}));
|
|
219
|
+
const colorDistance = (a, b) => Math.hypot(a.l - b.l, a.a - b.a, a.b - b.b);
|
|
220
|
+
const hueDistance = (a, b) => {
|
|
221
|
+
const distance = Math.abs(a - b) % 360;
|
|
222
|
+
return Math.min(distance, 360 - distance);
|
|
223
|
+
};
|
|
224
|
+
/**
|
|
225
|
+
* Map a CSS colour onto the nearest supported text highlight, or `null` when
|
|
226
|
+
* nothing is near enough. `null` is the good outcome for the reader: text with
|
|
227
|
+
* no colour follows the theme, whereas a wrong colour can leave it unreadable
|
|
228
|
+
* in one of the two themes.
|
|
229
|
+
*/
|
|
230
|
+
export const resolveNearestSupportedColor = (color) => {
|
|
231
|
+
const parsed = parseCssColor(color);
|
|
232
|
+
// A translucent colour was picked to sit on the source background, not ours.
|
|
233
|
+
if (!parsed || parsed.alpha < 1) {
|
|
234
|
+
return null;
|
|
235
|
+
}
|
|
236
|
+
const target = rgbToOklab(parsed);
|
|
237
|
+
const achromatic = target.chroma < ACHROMATIC_CHROMA_THRESHOLD;
|
|
238
|
+
if (achromatic &&
|
|
239
|
+
(target.l < DEFAULT_TEXT_LIGHTNESS_MIN ||
|
|
240
|
+
target.l > DEFAULT_TEXT_LIGHTNESS_MAX)) {
|
|
241
|
+
return null;
|
|
242
|
+
}
|
|
243
|
+
let nearest;
|
|
244
|
+
for (const supported of supportedTextColors) {
|
|
245
|
+
// A grey never becomes a hue, and a hue never becomes the grey.
|
|
246
|
+
if (achromatic !== (supported.name === 'grey')) {
|
|
247
|
+
continue;
|
|
248
|
+
}
|
|
249
|
+
for (const reference of supported.references) {
|
|
250
|
+
const distance = colorDistance(target, reference);
|
|
251
|
+
if (distance > MAX_COLOR_DISTANCE ||
|
|
252
|
+
(!achromatic &&
|
|
253
|
+
(Math.abs(target.chroma - reference.chroma) > MAX_CHROMA_DISTANCE ||
|
|
254
|
+
hueDistance(target.hue, reference.hue) > MAX_HUE_DISTANCE))) {
|
|
255
|
+
continue;
|
|
256
|
+
}
|
|
257
|
+
if (!nearest || distance < nearest.distance) {
|
|
258
|
+
nearest = { cssVar: supported.cssVar, distance };
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
}
|
|
262
|
+
return nearest?.cssVar ?? null;
|
|
263
|
+
};
|
|
264
|
+
/**
|
|
265
|
+
* Read the `color` declaration out of an inline `style` attribute, leaving
|
|
266
|
+
* `background-color` and friends alone.
|
|
267
|
+
*/
|
|
268
|
+
export const extractColorFromStyle = (style) => {
|
|
269
|
+
if (typeof style !== 'string') {
|
|
270
|
+
return null;
|
|
271
|
+
}
|
|
272
|
+
for (const declaration of style.split(';')) {
|
|
273
|
+
const colon = declaration.indexOf(':');
|
|
274
|
+
if (colon === -1)
|
|
275
|
+
continue;
|
|
276
|
+
// Split on the first colon only: `rgb(0 0 0 / 50%)` has none, but a
|
|
277
|
+
// `url()` or a future colour syntax may.
|
|
278
|
+
if (declaration.slice(0, colon).trim().toLowerCase() === 'color') {
|
|
279
|
+
return declaration.slice(colon + 1).trim();
|
|
280
|
+
}
|
|
281
|
+
}
|
|
282
|
+
return null;
|
|
283
|
+
};
|
|
@@ -86,9 +86,17 @@ export const getSelectedBlocksCommand = (ctx, next) => {
|
|
|
86
86
|
if (ctx.filter) {
|
|
87
87
|
dirtyResult = dirtyResult.filter(ctx.filter);
|
|
88
88
|
}
|
|
89
|
-
//
|
|
89
|
+
// Remove duplicate elements. A `Set` and not `indexOf`: selecting a whole
|
|
90
|
+
// document hands this command every block at once, and a scan per block is
|
|
91
|
+
// quadratic in the size of the document.
|
|
92
|
+
const seen = new Set();
|
|
90
93
|
const result = dirtyResult
|
|
91
|
-
.filter(
|
|
94
|
+
.filter(el => {
|
|
95
|
+
if (seen.has(el))
|
|
96
|
+
return false;
|
|
97
|
+
seen.add(el);
|
|
98
|
+
return true;
|
|
99
|
+
})
|
|
92
100
|
// sort by document position
|
|
93
101
|
.sort((a, b) => {
|
|
94
102
|
if (a === b) {
|
|
@@ -4,6 +4,16 @@ export declare const EDGELESS_BLOCK_CHILD_PADDING = 24;
|
|
|
4
4
|
export declare const EDGELESS_BLOCK_CHILD_BORDER_WIDTH = 2;
|
|
5
5
|
export declare const PAGE_HEADER_HEIGHT = 53;
|
|
6
6
|
export declare const EMBED_CARD_MIN_WIDTH = 450;
|
|
7
|
+
/**
|
|
8
|
+
* The smallest a thing you TAP may be, in CSS pixels.
|
|
9
|
+
*
|
|
10
|
+
* 44 is the figure both platform guidelines settle on (WCAG 2.2's target-size
|
|
11
|
+
* criterion asks for 24, which is a floor for a mouse, not a finger). Labre's
|
|
12
|
+
* boards are worked on a tablet in a workshop as often as on a laptop, so any
|
|
13
|
+
* list a user picks from — the artefact catalogue's rows are the first — sizes
|
|
14
|
+
* its rows from here rather than from whatever looked right in a screenshot.
|
|
15
|
+
*/
|
|
16
|
+
export declare const TOUCH_TARGET_MIN_PX = 44;
|
|
7
17
|
export declare const EMBED_CARD_WIDTH: Record<EmbedCardStyle, number>;
|
|
8
18
|
export declare const EMBED_CARD_HEIGHT: Record<EmbedCardStyle, number>;
|
|
9
19
|
export declare const EMBED_BLOCK_FLAVOUR_LIST: readonly ["affine:embed-github", "affine:embed-youtube", "affine:embed-figma", "affine:embed-linked-doc", "affine:embed-synced-doc", "affine:embed-html", "affine:embed-loom"];
|
|
@@ -6,6 +6,16 @@ export const EDGELESS_BLOCK_CHILD_BORDER_WIDTH = 2;
|
|
|
6
6
|
// In AFFiNE, to avoid the option element to be covered by the header, we need to reserve the space for the header
|
|
7
7
|
export const PAGE_HEADER_HEIGHT = 53;
|
|
8
8
|
export const EMBED_CARD_MIN_WIDTH = 450;
|
|
9
|
+
/**
|
|
10
|
+
* The smallest a thing you TAP may be, in CSS pixels.
|
|
11
|
+
*
|
|
12
|
+
* 44 is the figure both platform guidelines settle on (WCAG 2.2's target-size
|
|
13
|
+
* criterion asks for 24, which is a floor for a mouse, not a finger). Labre's
|
|
14
|
+
* boards are worked on a tablet in a workshop as often as on a laptop, so any
|
|
15
|
+
* list a user picks from — the artefact catalogue's rows are the first — sizes
|
|
16
|
+
* its rows from here rather than from whatever looked right in a screenshot.
|
|
17
|
+
*/
|
|
18
|
+
export const TOUCH_TARGET_MIN_PX = 44;
|
|
9
19
|
export const EMBED_CARD_WIDTH = {
|
|
10
20
|
horizontal: 752,
|
|
11
21
|
horizontalThin: 752,
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import type { CommandOwner } from '../../std/index.js';
|
|
2
|
+
import type { ExtensionType } from '../../store/index.js';
|
|
3
|
+
/**
|
|
4
|
+
* Consumer 2 of `docs/adr/0008`: the "more artefacts" sidepanel, which shows an
|
|
5
|
+
* owner's WHOLE `'catalogue'` surface by sub-category once its senior sub-menu
|
|
6
|
+
* has stopped being able to.
|
|
7
|
+
*
|
|
8
|
+
* The seam had to exist before either end of it, because the senior menu is
|
|
9
|
+
* what opens it — `selectSeniorMenuCommands` reports an overflow, the menu
|
|
10
|
+
* grows a trailing button, and that button needs somewhere to send the click.
|
|
11
|
+
* The library now ships the panel that answers by default
|
|
12
|
+
* (`edgeless-artefact-catalogue-widget`, registered next to the toolbar
|
|
13
|
+
* widget), and the menu still renders the button only when this provider
|
|
14
|
+
* answers — so an assembly that overrode the provider away shows no control
|
|
15
|
+
* that opens nothing.
|
|
16
|
+
*
|
|
17
|
+
* The contract is two verbs on purpose. Everything the panel needs to draw
|
|
18
|
+
* itself is already enumerable from the command registry
|
|
19
|
+
* (`getCommandsForSurface(std, owner, 'catalogue')`), so the seam carries the
|
|
20
|
+
* OWNER and nothing else — no list of entries, no open state, no rendering.
|
|
21
|
+
* That is what lets the two implementations be genuinely different things: the
|
|
22
|
+
* library's own left sidepanel, and a host's existing right-hand sidebar.
|
|
23
|
+
*/
|
|
24
|
+
export interface ArtefactCatalogueService {
|
|
25
|
+
/** Show the catalogue, scoped to one framework's artefacts. */
|
|
26
|
+
open(owner: CommandOwner): void;
|
|
27
|
+
/** Put it away. Never touches the active senior tool. */
|
|
28
|
+
close(): void;
|
|
29
|
+
}
|
|
30
|
+
export declare const ArtefactCatalogueProvider: import("../../global/di/types.js").ServiceIdentifier<ArtefactCatalogueService> & (<U extends ArtefactCatalogueService = ArtefactCatalogueService>(variant: import("../../global/di/types.js").ServiceVariant) => import("../../global/di/types.js").ServiceIdentifier<U>);
|
|
31
|
+
/**
|
|
32
|
+
* Host override seam: replace the library's sidepanel with the host's own —
|
|
33
|
+
* or switch the catalogue off entirely.
|
|
34
|
+
*
|
|
35
|
+
* **Replace** — a host that already owns a sidebar (a right-hand inspector, a
|
|
36
|
+
* docked panel, a mobile sheet) registers this extension, its implementation
|
|
37
|
+
* answers {@link ArtefactCatalogueProvider}, and the library's widget is then
|
|
38
|
+
* never asked to open: the sub-menu's "More artefacts…" entry resolves ONE
|
|
39
|
+
* service, and `di.override` decides which. The host's own UI draws itself
|
|
40
|
+
* from the registry (`getCommandsForSurface(std, owner, 'catalogue')`,
|
|
41
|
+
* `getCommandIcon`) and creates through the one bottleneck
|
|
42
|
+
* (`runCommand(std, command, { surface: 'catalogue', … })`), so telemetry and
|
|
43
|
+
* the usage measure keep flowing wherever the pixels live.
|
|
44
|
+
*
|
|
45
|
+
* **Disable** — pass `null`. The provider then answers nothing, and every
|
|
46
|
+
* consumer reads that the honest way: the sub-menu's "More artefacts…" button
|
|
47
|
+
* is not rendered (a control that opens nothing is a lie), and the library's
|
|
48
|
+
* panel never opens. This is a cold-assembly switch, like the framework flags:
|
|
49
|
+
* decided when the editor is put together, not toggled mid-session.
|
|
50
|
+
*
|
|
51
|
+
* Mirrors `CommandUsageExtension` / `KeymapOverrideExtension`: `di.override`,
|
|
52
|
+
* so a host registering after the library's own extensions always wins,
|
|
53
|
+
* whatever the registration order turns out to be.
|
|
54
|
+
*/
|
|
55
|
+
export declare function ArtefactCatalogueExtension(service: ArtefactCatalogueService | null): ExtensionType;
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { createIdentifier } from '../../global/di/index.js';
|
|
2
|
+
export const ArtefactCatalogueProvider = createIdentifier('AffineArtefactCatalogue');
|
|
3
|
+
/**
|
|
4
|
+
* Host override seam: replace the library's sidepanel with the host's own —
|
|
5
|
+
* or switch the catalogue off entirely.
|
|
6
|
+
*
|
|
7
|
+
* **Replace** — a host that already owns a sidebar (a right-hand inspector, a
|
|
8
|
+
* docked panel, a mobile sheet) registers this extension, its implementation
|
|
9
|
+
* answers {@link ArtefactCatalogueProvider}, and the library's widget is then
|
|
10
|
+
* never asked to open: the sub-menu's "More artefacts…" entry resolves ONE
|
|
11
|
+
* service, and `di.override` decides which. The host's own UI draws itself
|
|
12
|
+
* from the registry (`getCommandsForSurface(std, owner, 'catalogue')`,
|
|
13
|
+
* `getCommandIcon`) and creates through the one bottleneck
|
|
14
|
+
* (`runCommand(std, command, { surface: 'catalogue', … })`), so telemetry and
|
|
15
|
+
* the usage measure keep flowing wherever the pixels live.
|
|
16
|
+
*
|
|
17
|
+
* **Disable** — pass `null`. The provider then answers nothing, and every
|
|
18
|
+
* consumer reads that the honest way: the sub-menu's "More artefacts…" button
|
|
19
|
+
* is not rendered (a control that opens nothing is a lie), and the library's
|
|
20
|
+
* panel never opens. This is a cold-assembly switch, like the framework flags:
|
|
21
|
+
* decided when the editor is put together, not toggled mid-session.
|
|
22
|
+
*
|
|
23
|
+
* Mirrors `CommandUsageExtension` / `KeymapOverrideExtension`: `di.override`,
|
|
24
|
+
* so a host registering after the library's own extensions always wins,
|
|
25
|
+
* whatever the registration order turns out to be.
|
|
26
|
+
*/
|
|
27
|
+
export function ArtefactCatalogueExtension(service) {
|
|
28
|
+
return {
|
|
29
|
+
setup: di => {
|
|
30
|
+
// `null` rides through the factory on purpose: `getOptional` then
|
|
31
|
+
// reports the catalogue as absent, which is the whole disable story.
|
|
32
|
+
di.override(ArtefactCatalogueProvider, () => service);
|
|
33
|
+
},
|
|
34
|
+
};
|
|
35
|
+
}
|