@voithos-labs/aragonite 0.10.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +661 -0
- package/README.md +365 -0
- package/THIRD-PARTY-NOTICES.md +102 -0
- package/dist/a11y-strings.d.ts +46 -0
- package/dist/a11y-strings.js +62 -0
- package/dist/action-contracts.d.ts +301 -0
- package/dist/action-contracts.js +5 -0
- package/dist/active-editor.d.ts +16 -0
- package/dist/active-editor.js +67 -0
- package/dist/ambient/ambient-cursor.d.ts +41 -0
- package/dist/ambient/ambient-cursor.js +120 -0
- package/dist/ambient/ambient-dom.d.ts +9 -0
- package/dist/ambient/ambient-dom.js +102 -0
- package/dist/assert.d.ts +6 -0
- package/dist/assert.js +17 -0
- package/dist/block-component.d.ts +274 -0
- package/dist/block-component.js +43 -0
- package/dist/block-id.d.ts +14 -0
- package/dist/block-id.js +34 -0
- package/dist/bounded-memo.d.ts +14 -0
- package/dist/bounded-memo.js +32 -0
- package/dist/components/BlockDragHandle.svelte +66 -0
- package/dist/components/BlockDragHandle.svelte.d.ts +18 -0
- package/dist/components/BlockHost.svelte +328 -0
- package/dist/components/BlockHost.svelte.d.ts +15 -0
- package/dist/components/BlockList.svelte +114 -0
- package/dist/components/BlockList.svelte.d.ts +16 -0
- package/dist/components/DecorationOverlay.svelte +156 -0
- package/dist/components/DecorationOverlay.svelte.d.ts +14 -0
- package/dist/components/Editor.svelte +1849 -0
- package/dist/components/Editor.svelte.d.ts +49 -0
- package/dist/components/GapCaret.svelte +226 -0
- package/dist/components/GapCaret.svelte.d.ts +9 -0
- package/dist/components/SearchBar.svelte +243 -0
- package/dist/components/SearchBar.svelte.d.ts +7 -0
- package/dist/components/SelectionOverlay.svelte +171 -0
- package/dist/components/SelectionOverlay.svelte.d.ts +14 -0
- package/dist/components/block-content-selector.d.ts +12 -0
- package/dist/components/block-content-selector.js +12 -0
- package/dist/components/blocks/BlockquoteBlock.svelte +32 -0
- package/dist/components/blocks/BlockquoteBlock.svelte.d.ts +11 -0
- package/dist/components/blocks/ThematicBreakBlock.svelte +156 -0
- package/dist/components/blocks/ThematicBreakBlock.svelte.d.ts +17 -0
- package/dist/components/blocks/code/CodeBlock.svelte +726 -0
- package/dist/components/blocks/code/CodeBlock.svelte.d.ts +23 -0
- package/dist/components/blocks/code/CodeLanguageChip.svelte +127 -0
- package/dist/components/blocks/code/CodeLanguageChip.svelte.d.ts +14 -0
- package/dist/components/blocks/code/code-beforeinput.d.ts +30 -0
- package/dist/components/blocks/code/code-beforeinput.js +40 -0
- package/dist/components/blocks/code/code-bootstrap.d.ts +8 -0
- package/dist/components/blocks/code/code-bootstrap.js +54 -0
- package/dist/components/blocks/code/code-editing.d.ts +28 -0
- package/dist/components/blocks/code/code-editing.js +79 -0
- package/dist/components/blocks/code/code-enter.d.ts +22 -0
- package/dist/components/blocks/code/code-enter.js +19 -0
- package/dist/components/blocks/code/code-fence-boundary.d.ts +77 -0
- package/dist/components/blocks/code/code-fence-boundary.js +169 -0
- package/dist/components/blocks/code/code-fence-exit.d.ts +24 -0
- package/dist/components/blocks/code/code-fence-exit.js +36 -0
- package/dist/components/blocks/code/code-indent.d.ts +14 -0
- package/dist/components/blocks/code/code-indent.js +87 -0
- package/dist/components/blocks/code/code-languages.d.ts +15 -0
- package/dist/components/blocks/code/code-languages.js +30 -0
- package/dist/components/blocks/code/code-paste-surface.d.ts +6 -0
- package/dist/components/blocks/code/code-paste-surface.js +29 -0
- package/dist/components/blocks/code/code-paste.d.ts +24 -0
- package/dist/components/blocks/code/code-paste.js +21 -0
- package/dist/components/blocks/code/code-renderer.d.ts +18 -0
- package/dist/components/blocks/code/code-renderer.js +249 -0
- package/dist/components/blocks/directive/DirectiveContainerBlock.svelte +51 -0
- package/dist/components/blocks/directive/DirectiveContainerBlock.svelte.d.ts +11 -0
- package/dist/components/blocks/directive/activate-directives.d.ts +7 -0
- package/dist/components/blocks/directive/activate-directives.js +23 -0
- package/dist/components/blocks/editable-leaf.d.ts +126 -0
- package/dist/components/blocks/editable-leaf.js +410 -0
- package/dist/components/blocks/editable-surface.d.ts +209 -0
- package/dist/components/blocks/editable-surface.js +331 -0
- package/dist/components/blocks/list/ListBlock.svelte +162 -0
- package/dist/components/blocks/list/ListBlock.svelte.d.ts +11 -0
- package/dist/components/blocks/list/ListItemBlock.svelte +324 -0
- package/dist/components/blocks/list/ListItemBlock.svelte.d.ts +14 -0
- package/dist/components/blocks/list/task-checkbox.d.ts +3 -0
- package/dist/components/blocks/list/task-checkbox.js +33 -0
- package/dist/components/blocks/plain-text-backend.d.ts +21 -0
- package/dist/components/blocks/plain-text-backend.js +47 -0
- package/dist/components/blocks/surface-wiring.svelte.d.ts +18 -0
- package/dist/components/blocks/surface-wiring.svelte.js +68 -0
- package/dist/components/blocks/table/TableActionMenu.svelte +267 -0
- package/dist/components/blocks/table/TableActionMenu.svelte.d.ts +15 -0
- package/dist/components/blocks/table/TableBlock.svelte +765 -0
- package/dist/components/blocks/table/TableBlock.svelte.d.ts +30 -0
- package/dist/components/blocks/table/TableCellBlock.svelte +1075 -0
- package/dist/components/blocks/table/TableCellBlock.svelte.d.ts +30 -0
- package/dist/components/blocks/table/TableGrip.svelte +91 -0
- package/dist/components/blocks/table/TableGrip.svelte.d.ts +8 -0
- package/dist/components/blocks/table/TableRowBlock.svelte +233 -0
- package/dist/components/blocks/table/TableRowBlock.svelte.d.ts +34 -0
- package/dist/components/blocks/table/cell-clipboard.d.ts +23 -0
- package/dist/components/blocks/table/cell-clipboard.js +34 -0
- package/dist/components/blocks/table/cell-keydown-plan.d.ts +37 -0
- package/dist/components/blocks/table/cell-keydown-plan.js +66 -0
- package/dist/components/blocks/table/cell-pointer.d.ts +58 -0
- package/dist/components/blocks/table/cell-pointer.js +153 -0
- package/dist/components/blocks/table/cell-render.d.ts +51 -0
- package/dist/components/blocks/table/cell-render.js +98 -0
- package/dist/components/blocks/table/cell-table-commands.d.ts +12 -0
- package/dist/components/blocks/table/cell-table-commands.js +21 -0
- package/dist/components/blocks/table/cell-x-mapping.d.ts +6 -0
- package/dist/components/blocks/table/cell-x-mapping.js +16 -0
- package/dist/components/blocks/table/selected-cells.d.ts +19 -0
- package/dist/components/blocks/table/selected-cells.js +35 -0
- package/dist/components/blocks/table/table-caret-at-point.d.ts +8 -0
- package/dist/components/blocks/table/table-caret-at-point.js +35 -0
- package/dist/components/blocks/table/table-cell-paste.d.ts +16 -0
- package/dist/components/blocks/table/table-cell-paste.js +75 -0
- package/dist/components/blocks/table/table-drag-hit-test.d.ts +5 -0
- package/dist/components/blocks/table/table-drag-hit-test.js +20 -0
- package/dist/components/blocks/table/table-drop-target.d.ts +1 -0
- package/dist/components/blocks/table/table-drop-target.js +16 -0
- package/dist/components/blocks/table/table-menu-model.d.ts +52 -0
- package/dist/components/blocks/table/table-menu-model.js +78 -0
- package/dist/components/blocks/table/table-navigation.d.ts +8 -0
- package/dist/components/blocks/table/table-navigation.js +22 -0
- package/dist/components/blocks/table/table-reorder-drag.d.ts +78 -0
- package/dist/components/blocks/table/table-reorder-drag.js +97 -0
- package/dist/components/blocks/text/TextEditableBlock.svelte +1012 -0
- package/dist/components/blocks/text/TextEditableBlock.svelte.d.ts +33 -0
- package/dist/components/blocks/text/click-snap-guard.d.ts +8 -0
- package/dist/components/blocks/text/click-snap-guard.js +19 -0
- package/dist/components/blocks/text/composition-seat.d.ts +50 -0
- package/dist/components/blocks/text/composition-seat.js +65 -0
- package/dist/components/blocks/text/construct-edge-delete.d.ts +47 -0
- package/dist/components/blocks/text/construct-edge-delete.js +164 -0
- package/dist/components/blocks/text/construct-reveal.d.ts +39 -0
- package/dist/components/blocks/text/construct-reveal.js +164 -0
- package/dist/components/blocks/text/edge-policy-dispatch.d.ts +91 -0
- package/dist/components/blocks/text/edge-policy-dispatch.js +457 -0
- package/dist/components/blocks/text/edge-seat.d.ts +42 -0
- package/dist/components/blocks/text/edge-seat.js +197 -0
- package/dist/components/blocks/text/hidden-suffix.d.ts +10 -0
- package/dist/components/blocks/text/hidden-suffix.js +15 -0
- package/dist/components/blocks/text/link-at-point.d.ts +33 -0
- package/dist/components/blocks/text/link-at-point.js +47 -0
- package/dist/components/blocks/text/link-source-bytes.d.ts +37 -0
- package/dist/components/blocks/text/link-source-bytes.js +161 -0
- package/dist/components/blocks/text/live-join-seam.d.ts +15 -0
- package/dist/components/blocks/text/live-join-seam.js +327 -0
- package/dist/components/blocks/text/live-selection-edit.d.ts +68 -0
- package/dist/components/blocks/text/live-selection-edit.js +120 -0
- package/dist/components/blocks/text/live-split-rebalance.d.ts +56 -0
- package/dist/components/blocks/text/live-split-rebalance.js +239 -0
- package/dist/components/blocks/text/marker-completion.d.ts +18 -0
- package/dist/components/blocks/text/marker-completion.js +29 -0
- package/dist/components/blocks/text/pending-mark-insert.d.ts +37 -0
- package/dist/components/blocks/text/pending-mark-insert.js +188 -0
- package/dist/components/blocks/text/screen-diff.d.ts +20 -0
- package/dist/components/blocks/text/screen-diff.js +39 -0
- package/dist/components/blocks/text/text-clipboard.d.ts +70 -0
- package/dist/components/blocks/text/text-clipboard.js +131 -0
- package/dist/components/blocks/text/text-keydown.d.ts +39 -0
- package/dist/components/blocks/text/text-keydown.js +80 -0
- package/dist/components/blocks/text/text-render.d.ts +67 -0
- package/dist/components/blocks/text/text-render.js +215 -0
- package/dist/components/blocks/text/widget-adjacency.d.ts +30 -0
- package/dist/components/blocks/text/widget-adjacency.js +68 -0
- package/dist/components/blocks/text/widget-interaction.d.ts +90 -0
- package/dist/components/blocks/text/widget-interaction.js +591 -0
- package/dist/components/blocks/widget-portal.d.ts +54 -0
- package/dist/components/blocks/widget-portal.js +136 -0
- package/dist/components/built-in-blocks.d.ts +7 -0
- package/dist/components/built-in-blocks.js +77 -0
- package/dist/components/editor-root-clipboard.d.ts +29 -0
- package/dist/components/editor-root-clipboard.js +105 -0
- package/dist/components/editor-root-keydown.d.ts +47 -0
- package/dist/components/editor-root-keydown.js +88 -0
- package/dist/components/editor-root-listeners.d.ts +44 -0
- package/dist/components/editor-root-listeners.js +112 -0
- package/dist/components/image/ImageOverlayHost.svelte +115 -0
- package/dist/components/image/ImageOverlayHost.svelte.d.ts +20 -0
- package/dist/components/image/ImageProperties.svelte +153 -0
- package/dist/components/image/ImageProperties.svelte.d.ts +14 -0
- package/dist/components/image/ImageResizeHandles.svelte +188 -0
- package/dist/components/image/ImageResizeHandles.svelte.d.ts +10 -0
- package/dist/components/image/image-edit-commit.d.ts +38 -0
- package/dist/components/image/image-edit-commit.js +159 -0
- package/dist/components/image/image-resize.d.ts +11 -0
- package/dist/components/image/image-resize.js +38 -0
- package/dist/components/image/image-source-bytes.d.ts +15 -0
- package/dist/components/image/image-source-bytes.js +73 -0
- package/dist/components/image/image-widget-editing.d.ts +7 -0
- package/dist/components/image/image-widget-editing.js +41 -0
- package/dist/components/image/widget-dom.d.ts +11 -0
- package/dist/components/image/widget-dom.js +110 -0
- package/dist/components/image/widget-selection-state.svelte.d.ts +18 -0
- package/dist/components/image/widget-selection-state.svelte.js +26 -0
- package/dist/components/link-card/LinkCard.svelte +190 -0
- package/dist/components/link-card/LinkCard.svelte.d.ts +18 -0
- package/dist/components/link-card/LinkCardHost.svelte +181 -0
- package/dist/components/link-card/LinkCardHost.svelte.d.ts +25 -0
- package/dist/components/link-card/link-card-commit.d.ts +50 -0
- package/dist/components/link-card/link-card-commit.js +134 -0
- package/dist/components/link-card/link-card-entry.d.ts +39 -0
- package/dist/components/link-card/link-card-entry.js +51 -0
- package/dist/components/link-card/link-card-state.svelte.d.ts +44 -0
- package/dist/components/link-card/link-card-state.svelte.js +46 -0
- package/dist/components/lrd-map-gate.d.ts +18 -0
- package/dist/components/lrd-map-gate.js +22 -0
- package/dist/components/paste-image-arm.d.ts +29 -0
- package/dist/components/paste-image-arm.js +61 -0
- package/dist/components/portal.d.ts +11 -0
- package/dist/components/portal.js +29 -0
- package/dist/core/directive/activate.d.ts +8 -0
- package/dist/core/directive/activate.js +25 -0
- package/dist/core/directive/container-opener.d.ts +7 -0
- package/dist/core/directive/container-opener.js +162 -0
- package/dist/core/directive/grammar.d.ts +50 -0
- package/dist/core/directive/grammar.js +88 -0
- package/dist/core/directive/kinds.d.ts +31 -0
- package/dist/core/directive/kinds.js +137 -0
- package/dist/core/directive/registry.d.ts +39 -0
- package/dist/core/directive/registry.js +49 -0
- package/dist/core/directive/text-recognizer.d.ts +8 -0
- package/dist/core/directive/text-recognizer.js +87 -0
- package/dist/core/escapable.d.ts +6 -0
- package/dist/core/escapable.js +6 -0
- package/dist/core/inline/backticks.d.ts +16 -0
- package/dist/core/inline/backticks.js +62 -0
- package/dist/core/inline/character-refs.d.ts +7 -0
- package/dist/core/inline/character-refs.js +70 -0
- package/dist/core/inline/destination-bytes.d.ts +7 -0
- package/dist/core/inline/destination-bytes.js +14 -0
- package/dist/core/inline/entity-widget.d.ts +11 -0
- package/dist/core/inline/entity-widget.js +21 -0
- package/dist/core/inline/format-toggle.d.ts +50 -0
- package/dist/core/inline/format-toggle.js +533 -0
- package/dist/core/inline/html-entities.d.ts +8 -0
- package/dist/core/inline/html-entities.js +2134 -0
- package/dist/core/inline/html-tag-grammar.d.ts +16 -0
- package/dist/core/inline/html-tag-grammar.js +58 -0
- package/dist/core/inline/image-dimensions.d.ts +6 -0
- package/dist/core/inline/image-dimensions.js +42 -0
- package/dist/core/inline/index.d.ts +42 -0
- package/dist/core/inline/index.js +77 -0
- package/dist/core/inline/inline-cache.d.ts +20 -0
- package/dist/core/inline/inline-cache.js +28 -0
- package/dist/core/inline/inline-widgets.d.ts +124 -0
- package/dist/core/inline/inline-widgets.js +131 -0
- package/dist/core/inline/link-reference-resolver.d.ts +21 -0
- package/dist/core/inline/link-reference-resolver.js +46 -0
- package/dist/core/inline/raw-html-widget.d.ts +10 -0
- package/dist/core/inline/raw-html-widget.js +22 -0
- package/dist/core/inline/scan/autolinks.d.ts +23 -0
- package/dist/core/inline/scan/autolinks.js +354 -0
- package/dist/core/inline/scan/brackets.d.ts +11 -0
- package/dist/core/inline/scan/brackets.js +284 -0
- package/dist/core/inline/scan/code-spans.d.ts +7 -0
- package/dist/core/inline/scan/code-spans.js +27 -0
- package/dist/core/inline/scan/emphasis.d.ts +10 -0
- package/dist/core/inline/scan/emphasis.js +276 -0
- package/dist/core/inline/scan/index.d.ts +7 -0
- package/dist/core/inline/scan/index.js +176 -0
- package/dist/core/inline/scan/plugin-syntax.d.ts +62 -0
- package/dist/core/inline/scan/plugin-syntax.js +150 -0
- package/dist/core/inline/scan/scan-state.d.ts +47 -0
- package/dist/core/inline/scan/scan-state.js +48 -0
- package/dist/core/inline/scan/simple-nodes.d.ts +14 -0
- package/dist/core/inline/scan/simple-nodes.js +53 -0
- package/dist/core/inline/scan/url.d.ts +12 -0
- package/dist/core/inline/scan/url.js +82 -0
- package/dist/core/inline/transparency.d.ts +8 -0
- package/dist/core/inline/transparency.js +39 -0
- package/dist/core/inline/visibility.d.ts +81 -0
- package/dist/core/inline/visibility.js +144 -0
- package/dist/core/inline/walk.d.ts +14 -0
- package/dist/core/inline/walk.js +29 -0
- package/dist/core/inline-render.d.ts +48 -0
- package/dist/core/inline-render.js +322 -0
- package/dist/core/lines.d.ts +44 -0
- package/dist/core/lines.js +91 -0
- package/dist/core/node-views.d.ts +22 -0
- package/dist/core/node-views.js +8 -0
- package/dist/core/nodes.d.ts +297 -0
- package/dist/core/nodes.js +83 -0
- package/dist/core/parser.d.ts +68 -0
- package/dist/core/parser.js +189 -0
- package/dist/core/parsers/blockquote.d.ts +17 -0
- package/dist/core/parsers/blockquote.js +69 -0
- package/dist/core/parsers/built-in-openers.d.ts +8 -0
- package/dist/core/parsers/built-in-openers.js +124 -0
- package/dist/core/parsers/fence-syntax.d.ts +24 -0
- package/dist/core/parsers/fence-syntax.js +44 -0
- package/dist/core/parsers/fenced-code.d.ts +7 -0
- package/dist/core/parsers/fenced-code.js +29 -0
- package/dist/core/parsers/heading.d.ts +3 -0
- package/dist/core/parsers/heading.js +6 -0
- package/dist/core/parsers/html-block.d.ts +17 -0
- package/dist/core/parsers/html-block.js +94 -0
- package/dist/core/parsers/indented-code.d.ts +4 -0
- package/dist/core/parsers/indented-code.js +41 -0
- package/dist/core/parsers/link-reference.d.ts +7 -0
- package/dist/core/parsers/link-reference.js +152 -0
- package/dist/core/parsers/list.d.ts +19 -0
- package/dist/core/parsers/list.js +133 -0
- package/dist/core/parsers/paragraph.d.ts +10 -0
- package/dist/core/parsers/paragraph.js +42 -0
- package/dist/core/parsers/table-completion.d.ts +13 -0
- package/dist/core/parsers/table-completion.js +48 -0
- package/dist/core/parsers/table.d.ts +18 -0
- package/dist/core/parsers/table.js +110 -0
- package/dist/core/parsers/thematic-break.d.ts +1 -0
- package/dist/core/parsers/thematic-break.js +19 -0
- package/dist/core/serializer.d.ts +15 -0
- package/dist/core/serializer.js +11 -0
- package/dist/core/terminator-escalation.d.ts +8 -0
- package/dist/core/terminator-escalation.js +18 -0
- package/dist/core/url-policy.d.ts +14 -0
- package/dist/core/url-policy.js +44 -0
- package/dist/cursor/content-offsets.d.ts +29 -0
- package/dist/cursor/content-offsets.js +151 -0
- package/dist/cursor/coordinate-spaces.d.ts +65 -0
- package/dist/cursor/coordinate-spaces.js +66 -0
- package/dist/cursor/dom-walk.d.ts +18 -0
- package/dist/cursor/dom-walk.js +31 -0
- package/dist/cursor/edge-affinity.d.ts +44 -0
- package/dist/cursor/edge-affinity.js +60 -0
- package/dist/cursor/focused-caret.d.ts +10 -0
- package/dist/cursor/focused-caret.js +24 -0
- package/dist/cursor/height-model.d.ts +24 -0
- package/dist/cursor/height-model.js +72 -0
- package/dist/cursor/height-oracle.d.ts +24 -0
- package/dist/cursor/height-oracle.js +94 -0
- package/dist/cursor/overlay-rects.d.ts +8 -0
- package/dist/cursor/overlay-rects.js +19 -0
- package/dist/cursor/overlay-remeasure.d.ts +17 -0
- package/dist/cursor/overlay-remeasure.js +31 -0
- package/dist/cursor/pending-marks.d.ts +24 -0
- package/dist/cursor/pending-marks.js +36 -0
- package/dist/cursor/point-offset.d.ts +21 -0
- package/dist/cursor/point-offset.js +48 -0
- package/dist/cursor/reveal-anchor.d.ts +30 -0
- package/dist/cursor/reveal-anchor.js +31 -0
- package/dist/cursor/reveal-source.d.ts +35 -0
- package/dist/cursor/reveal-source.js +51 -0
- package/dist/cursor/scroll-ancestors.d.ts +28 -0
- package/dist/cursor/scroll-ancestors.js +89 -0
- package/dist/cursor/scrollport.d.ts +20 -0
- package/dist/cursor/scrollport.js +41 -0
- package/dist/cursor/sticky-column.d.ts +35 -0
- package/dist/cursor/sticky-column.js +64 -0
- package/dist/cursor/sticky-measure.d.ts +16 -0
- package/dist/cursor/sticky-measure.js +97 -0
- package/dist/cursor/typography-estimates.d.ts +21 -0
- package/dist/cursor/typography-estimates.js +21 -0
- package/dist/cursor/visual-lines.d.ts +25 -0
- package/dist/cursor/visual-lines.js +125 -0
- package/dist/cursor/widget-offset.d.ts +132 -0
- package/dist/cursor/widget-offset.js +543 -0
- package/dist/debug/diagnostics-report.d.ts +17 -0
- package/dist/debug/diagnostics-report.js +25 -0
- package/dist/debug/dump-tree.d.ts +6 -0
- package/dist/debug/dump-tree.js +114 -0
- package/dist/debug/inspect.d.ts +19 -0
- package/dist/debug/inspect.js +116 -0
- package/dist/debug/interaction-trace.d.ts +39 -0
- package/dist/debug/interaction-trace.js +105 -0
- package/dist/debug/operations-log.d.ts +14 -0
- package/dist/debug/operations-log.js +30 -0
- package/dist/decorations/buckets.d.ts +40 -0
- package/dist/decorations/buckets.js +87 -0
- package/dist/decorations/decoration-state.svelte.d.ts +20 -0
- package/dist/decorations/decoration-state.svelte.js +195 -0
- package/dist/decorations/island-dom.d.ts +35 -0
- package/dist/decorations/island-dom.js +148 -0
- package/dist/decorations/reserved-attrs.d.ts +12 -0
- package/dist/decorations/reserved-attrs.js +47 -0
- package/dist/decorations/types.d.ts +68 -0
- package/dist/decorations/types.js +5 -0
- package/dist/decorations/widget-dom.d.ts +15 -0
- package/dist/decorations/widget-dom.js +35 -0
- package/dist/dev-warn.d.ts +13 -0
- package/dist/dev-warn.js +28 -0
- package/dist/editor-actions/ancestry-folds.d.ts +32 -0
- package/dist/editor-actions/ancestry-folds.js +106 -0
- package/dist/editor-actions/block-edit-core.d.ts +29 -0
- package/dist/editor-actions/block-edit-core.js +277 -0
- package/dist/editor-actions/block-edit-scope.d.ts +79 -0
- package/dist/editor-actions/block-edit-scope.js +76 -0
- package/dist/editor-actions/block-edit.d.ts +8 -0
- package/dist/editor-actions/block-edit.js +111 -0
- package/dist/editor-actions/commit/history.d.ts +9 -0
- package/dist/editor-actions/commit/history.js +77 -0
- package/dist/editor-actions/commit/text-batch.d.ts +34 -0
- package/dist/editor-actions/commit/text-batch.js +61 -0
- package/dist/editor-actions/commit/undo-controller.d.ts +7 -0
- package/dist/editor-actions/commit/undo-controller.js +570 -0
- package/dist/editor-actions/container-block-component.d.ts +85 -0
- package/dist/editor-actions/container-block-component.js +228 -0
- package/dist/editor-actions/container-edit.d.ts +7 -0
- package/dist/editor-actions/container-edit.js +49 -0
- package/dist/editor-actions/container-exit-overrides.d.ts +16 -0
- package/dist/editor-actions/container-exit-overrides.js +38 -0
- package/dist/editor-actions/deps.d.ts +60 -0
- package/dist/editor-actions/deps.js +1 -0
- package/dist/editor-actions/enter-completion.d.ts +25 -0
- package/dist/editor-actions/enter-completion.js +76 -0
- package/dist/editor-actions/focus/focus-dispatch.d.ts +36 -0
- package/dist/editor-actions/focus/focus-dispatch.js +106 -0
- package/dist/editor-actions/focus/focus-landing.d.ts +7 -0
- package/dist/editor-actions/focus/focus-landing.js +39 -0
- package/dist/editor-actions/focus/focus.d.ts +7 -0
- package/dist/editor-actions/focus/focus.js +74 -0
- package/dist/editor-actions/index.d.ts +15 -0
- package/dist/editor-actions/index.js +19 -0
- package/dist/editor-actions/inline-range-commit.d.ts +20 -0
- package/dist/editor-actions/inline-range-commit.js +63 -0
- package/dist/editor-actions/list-context.d.ts +25 -0
- package/dist/editor-actions/list-context.js +285 -0
- package/dist/editor-actions/list-overrides.d.ts +13 -0
- package/dist/editor-actions/list-overrides.js +26 -0
- package/dist/editor-actions/merge-fallback.d.ts +19 -0
- package/dist/editor-actions/merge-fallback.js +27 -0
- package/dist/editor-actions/nested/nested-actions.d.ts +65 -0
- package/dist/editor-actions/nested/nested-actions.js +59 -0
- package/dist/editor-actions/nested/nested-block-edit.d.ts +10 -0
- package/dist/editor-actions/nested/nested-block-edit.js +181 -0
- package/dist/editor-actions/nested/nested-focus.d.ts +9 -0
- package/dist/editor-actions/nested/nested-focus.js +30 -0
- package/dist/editor-actions/paste-coordinator.d.ts +4 -0
- package/dist/editor-actions/paste-coordinator.js +20 -0
- package/dist/editor-actions/plugin/chrome-leaf.d.ts +25 -0
- package/dist/editor-actions/plugin/chrome-leaf.js +80 -0
- package/dist/editor-actions/plugin/container.d.ts +137 -0
- package/dist/editor-actions/plugin/container.js +351 -0
- package/dist/editor-actions/plugin/directive-container.d.ts +13 -0
- package/dist/editor-actions/plugin/directive-container.js +31 -0
- package/dist/editor-actions/reorder-action.d.ts +17 -0
- package/dist/editor-actions/reorder-action.js +104 -0
- package/dist/editor-actions/reorder-drag.d.ts +34 -0
- package/dist/editor-actions/reorder-drag.js +152 -0
- package/dist/editor-actions/replacement-focus.d.ts +27 -0
- package/dist/editor-actions/replacement-focus.js +60 -0
- package/dist/editor-actions/search-replace.d.ts +6 -0
- package/dist/editor-actions/search-replace.js +145 -0
- package/dist/editor-actions/table-context.d.ts +34 -0
- package/dist/editor-actions/table-context.js +292 -0
- package/dist/editor-actions/unwrap-strategies.d.ts +14 -0
- package/dist/editor-actions/unwrap-strategies.js +131 -0
- package/dist/editor-actions/whole-block-focus-surface.d.ts +51 -0
- package/dist/editor-actions/whole-block-focus-surface.js +171 -0
- package/dist/editor-events.d.ts +89 -0
- package/dist/editor-events.js +96 -0
- package/dist/editor-keys.d.ts +197 -0
- package/dist/editor-keys.js +40 -0
- package/dist/editor-props.d.ts +164 -0
- package/dist/editor-props.js +1 -0
- package/dist/editor-rects.d.ts +58 -0
- package/dist/editor-rects.js +114 -0
- package/dist/env.d.ts +12 -0
- package/dist/env.js +20 -0
- package/dist/index.d.ts +27 -0
- package/dist/index.js +19 -0
- package/dist/invariants/commit-paths.d.ts +10 -0
- package/dist/invariants/commit-paths.js +25 -0
- package/dist/invariants/commit-scope.d.ts +9 -0
- package/dist/invariants/commit-scope.js +16 -0
- package/dist/invariants/context-keys.d.ts +7 -0
- package/dist/invariants/context-keys.js +14 -0
- package/dist/invariants/descriptor.d.ts +10 -0
- package/dist/invariants/descriptor.js +24 -0
- package/dist/invariants/inline-transitions.d.ts +23 -0
- package/dist/invariants/inline-transitions.js +52 -0
- package/dist/invariants/install.d.ts +36 -0
- package/dist/invariants/install.js +66 -0
- package/dist/invariants/landable-caret.d.ts +12 -0
- package/dist/invariants/landable-caret.js +31 -0
- package/dist/invariants/marker-css-parity.d.ts +10 -0
- package/dist/invariants/marker-css-parity.js +87 -0
- package/dist/invariants/node-shape.d.ts +44 -0
- package/dist/invariants/node-shape.js +258 -0
- package/dist/invariants/registry.d.ts +126 -0
- package/dist/invariants/registry.js +349 -0
- package/dist/invariants/render-fidelity.d.ts +8 -0
- package/dist/invariants/render-fidelity.js +33 -0
- package/dist/invariants/selection-endpoints.d.ts +19 -0
- package/dist/invariants/selection-endpoints.js +78 -0
- package/dist/invariants/single-node-sink.d.ts +9 -0
- package/dist/invariants/single-node-sink.js +16 -0
- package/dist/invariants/snapshot-integrity.d.ts +17 -0
- package/dist/invariants/snapshot-integrity.js +24 -0
- package/dist/invariants/split-landing.d.ts +8 -0
- package/dist/invariants/split-landing.js +15 -0
- package/dist/invariants/structural-descriptor.d.ts +21 -0
- package/dist/invariants/structural-descriptor.js +50 -0
- package/dist/perf/instruments.d.ts +49 -0
- package/dist/perf/instruments.js +154 -0
- package/dist/perf/use-mount-gauge.svelte.d.ts +1 -0
- package/dist/perf/use-mount-gauge.svelte.js +15 -0
- package/dist/plugin.d.ts +102 -0
- package/dist/plugin.js +156 -0
- package/dist/plugins/admonitions/AdmonitionBlock.svelte +144 -0
- package/dist/plugins/admonitions/AdmonitionBlock.svelte.d.ts +11 -0
- package/dist/plugins/admonitions/admonition-kind.d.ts +8 -0
- package/dist/plugins/admonitions/admonition-kind.js +97 -0
- package/dist/plugins/admonitions/convert-document.d.ts +11 -0
- package/dist/plugins/admonitions/convert-document.js +39 -0
- package/dist/plugins/admonitions/gh-alert.d.ts +13 -0
- package/dist/plugins/admonitions/gh-alert.js +83 -0
- package/dist/plugins/admonitions/github-alert-kind.d.ts +12 -0
- package/dist/plugins/admonitions/github-alert-kind.js +125 -0
- package/dist/plugins/admonitions/index.d.ts +6 -0
- package/dist/plugins/admonitions/index.js +8 -0
- package/dist/plugins/admonitions/kinds.d.ts +26 -0
- package/dist/plugins/admonitions/kinds.js +18 -0
- package/dist/plugins/admonitions/register.d.ts +7 -0
- package/dist/plugins/admonitions/register.js +12 -0
- package/dist/plugins/details/DetailsBlock.svelte +129 -0
- package/dist/plugins/details/DetailsBlock.svelte.d.ts +11 -0
- package/dist/plugins/details/details-disclosure.svelte.d.ts +17 -0
- package/dist/plugins/details/details-disclosure.svelte.js +24 -0
- package/dist/plugins/details/details-kind.d.ts +25 -0
- package/dist/plugins/details/details-kind.js +237 -0
- package/dist/plugins/details/index.d.ts +2 -0
- package/dist/plugins/details/index.js +2 -0
- package/dist/plugins/details/register.d.ts +6 -0
- package/dist/plugins/details/register.js +15 -0
- package/dist/plugins/emoji/emoji-plugin.d.ts +2 -0
- package/dist/plugins/emoji/emoji-plugin.js +10 -0
- package/dist/plugins/emoji/emoji-recognizer.d.ts +18 -0
- package/dist/plugins/emoji/emoji-recognizer.js +63 -0
- package/dist/plugins/emoji/emoji-table.d.ts +1 -0
- package/dist/plugins/emoji/emoji-table.js +1919 -0
- package/dist/plugins/emoji/index.d.ts +3 -0
- package/dist/plugins/emoji/index.js +4 -0
- package/dist/plugins/footnotes/FootnoteDefinition.svelte +103 -0
- package/dist/plugins/footnotes/FootnoteDefinition.svelte.d.ts +13 -0
- package/dist/plugins/footnotes/FootnoteReference.svelte +50 -0
- package/dist/plugins/footnotes/FootnoteReference.svelte.d.ts +4 -0
- package/dist/plugins/footnotes/constants.d.ts +2 -0
- package/dist/plugins/footnotes/constants.js +4 -0
- package/dist/plugins/footnotes/footnote-definition.d.ts +14 -0
- package/dist/plugins/footnotes/footnote-definition.js +147 -0
- package/dist/plugins/footnotes/footnote-lookup.d.ts +9 -0
- package/dist/plugins/footnotes/footnote-lookup.js +33 -0
- package/dist/plugins/footnotes/footnote-numbering.d.ts +23 -0
- package/dist/plugins/footnotes/footnote-numbering.js +78 -0
- package/dist/plugins/footnotes/footnote-reference.d.ts +7 -0
- package/dist/plugins/footnotes/footnote-reference.js +54 -0
- package/dist/plugins/footnotes/footnotes-plugin.d.ts +7 -0
- package/dist/plugins/footnotes/footnotes-plugin.js +17 -0
- package/dist/plugins/footnotes/index.d.ts +5 -0
- package/dist/plugins/footnotes/index.js +6 -0
- package/dist/plugins/highlight-occurrences/highlight-occurrences-plugin.d.ts +17 -0
- package/dist/plugins/highlight-occurrences/highlight-occurrences-plugin.js +31 -0
- package/dist/plugins/highlight-occurrences/index.d.ts +1 -0
- package/dist/plugins/highlight-occurrences/index.js +1 -0
- package/dist/plugins/highlight-occurrences/occurrence-source.d.ts +26 -0
- package/dist/plugins/highlight-occurrences/occurrence-source.js +54 -0
- package/dist/plugins/highlight-occurrences/occurrences.d.ts +33 -0
- package/dist/plugins/highlight-occurrences/occurrences.js +108 -0
- package/dist/plugins/latex/BlockMath.svelte +119 -0
- package/dist/plugins/latex/BlockMath.svelte.d.ts +21 -0
- package/dist/plugins/latex/MathInline.svelte +28 -0
- package/dist/plugins/latex/MathInline.svelte.d.ts +4 -0
- package/dist/plugins/latex/index.d.ts +3 -0
- package/dist/plugins/latex/index.js +4 -0
- package/dist/plugins/latex/latex-kind.d.ts +17 -0
- package/dist/plugins/latex/latex-kind.js +224 -0
- package/dist/plugins/latex/math-completion.d.ts +10 -0
- package/dist/plugins/latex/math-completion.js +19 -0
- package/dist/plugins/latex/math-renderer.d.ts +26 -0
- package/dist/plugins/latex/math-renderer.js +42 -0
- package/dist/plugins/latex/register.d.ts +10 -0
- package/dist/plugins/latex/register.js +23 -0
- package/dist/plugins/latex/renderer.d.ts +13 -0
- package/dist/plugins/latex/renderer.js +34 -0
- package/dist/plugins/mermaid/MermaidBlock.svelte +572 -0
- package/dist/plugins/mermaid/MermaidBlock.svelte.d.ts +11 -0
- package/dist/plugins/mermaid/index.d.ts +3 -0
- package/dist/plugins/mermaid/index.js +3 -0
- package/dist/plugins/mermaid/mermaid-kind.d.ts +38 -0
- package/dist/plugins/mermaid/mermaid-kind.js +176 -0
- package/dist/plugins/mermaid/mermaid-renderer.d.ts +28 -0
- package/dist/plugins/mermaid/mermaid-renderer.js +35 -0
- package/dist/plugins/mermaid/register.d.ts +10 -0
- package/dist/plugins/mermaid/register.js +20 -0
- package/dist/plugins/mermaid/renderer.d.ts +11 -0
- package/dist/plugins/mermaid/renderer.js +53 -0
- package/dist/plugins/parrot/ParrotBlock.svelte +342 -0
- package/dist/plugins/parrot/ParrotBlock.svelte.d.ts +21 -0
- package/dist/plugins/parrot/index.d.ts +1 -0
- package/dist/plugins/parrot/index.js +2 -0
- package/dist/plugins/parrot/parrot-plugin.d.ts +3 -0
- package/dist/plugins/parrot/parrot-plugin.js +49 -0
- package/dist/plugins/toc/TocBlock.svelte +218 -0
- package/dist/plugins/toc/TocBlock.svelte.d.ts +24 -0
- package/dist/plugins/toc/heading-outline.d.ts +28 -0
- package/dist/plugins/toc/heading-outline.js +65 -0
- package/dist/plugins/toc/index.d.ts +2 -0
- package/dist/plugins/toc/index.js +2 -0
- package/dist/plugins/toc/navigation-queue.d.ts +12 -0
- package/dist/plugins/toc/navigation-queue.js +21 -0
- package/dist/plugins/toc/toc-plugin.d.ts +16 -0
- package/dist/plugins/toc/toc-plugin.js +71 -0
- package/dist/presentation-mode.d.ts +32 -0
- package/dist/presentation-mode.js +50 -0
- package/dist/reactivity/block-list-state.svelte.d.ts +22 -0
- package/dist/reactivity/block-list-state.svelte.js +46 -0
- package/dist/reactivity/block-window.svelte.d.ts +41 -0
- package/dist/reactivity/block-window.svelte.js +93 -0
- package/dist/reactivity/content-version.svelte.d.ts +14 -0
- package/dist/reactivity/content-version.svelte.js +16 -0
- package/dist/reactivity/list-windowing.svelte.d.ts +100 -0
- package/dist/reactivity/list-windowing.svelte.js +402 -0
- package/dist/reactivity/measure-batch.d.ts +15 -0
- package/dist/reactivity/measure-batch.js +18 -0
- package/dist/reactivity/publish-ref.svelte.d.ts +54 -0
- package/dist/reactivity/publish-ref.svelte.js +128 -0
- package/dist/reactivity/scope-geometry.d.ts +18 -0
- package/dist/reactivity/scope-geometry.js +29 -0
- package/dist/reactivity/state-registry.d.ts +10 -0
- package/dist/reactivity/state-registry.js +44 -0
- package/dist/reactivity/use-container-windowing.svelte.d.ts +35 -0
- package/dist/reactivity/use-container-windowing.svelte.js +95 -0
- package/dist/reactivity/window-slice.d.ts +11 -0
- package/dist/reactivity/window-slice.js +9 -0
- package/dist/scan-index.d.ts +11 -0
- package/dist/scan-index.js +27 -0
- package/dist/schema/block-commands.d.ts +105 -0
- package/dist/schema/block-commands.js +179 -0
- package/dist/schema/block-completions.d.ts +33 -0
- package/dist/schema/block-completions.js +49 -0
- package/dist/schema/block-component-registry.d.ts +33 -0
- package/dist/schema/block-component-registry.js +33 -0
- package/dist/schema/block-kind-descriptor.d.ts +281 -0
- package/dist/schema/block-kind-descriptor.js +187 -0
- package/dist/schema/block-openers.d.ts +94 -0
- package/dist/schema/block-openers.js +150 -0
- package/dist/schema/built-in-descriptors.d.ts +8 -0
- package/dist/schema/built-in-descriptors.js +560 -0
- package/dist/schema/child-spans.d.ts +25 -0
- package/dist/schema/child-spans.js +161 -0
- package/dist/schema/closure.d.ts +39 -0
- package/dist/schema/closure.js +55 -0
- package/dist/schema/command-id.d.ts +20 -0
- package/dist/schema/command-id.js +42 -0
- package/dist/schema/commands.d.ts +147 -0
- package/dist/schema/commands.js +294 -0
- package/dist/schema/container-raw.d.ts +21 -0
- package/dist/schema/container-raw.js +43 -0
- package/dist/schema/container-rebuilders.d.ts +32 -0
- package/dist/schema/container-rebuilders.js +95 -0
- package/dist/schema/define-plugin-block.d.ts +15 -0
- package/dist/schema/define-plugin-block.js +18 -0
- package/dist/schema/fenced-code-raw.d.ts +43 -0
- package/dist/schema/fenced-code-raw.js +220 -0
- package/dist/schema/global-commands.d.ts +11 -0
- package/dist/schema/global-commands.js +40 -0
- package/dist/schema/inline-construct-policy.d.ts +131 -0
- package/dist/schema/inline-construct-policy.js +96 -0
- package/dist/schema/keybinding-overrides.d.ts +39 -0
- package/dist/schema/keybinding-overrides.js +43 -0
- package/dist/schema/keybindings.d.ts +36 -0
- package/dist/schema/keybindings.js +75 -0
- package/dist/schema/merge-rules.d.ts +28 -0
- package/dist/schema/merge-rules.js +57 -0
- package/dist/schema/opener-priorities.d.ts +16 -0
- package/dist/schema/opener-priorities.js +16 -0
- package/dist/schema/operations.d.ts +110 -0
- package/dist/schema/operations.js +6 -0
- package/dist/schema/plugin-activation.d.ts +13 -0
- package/dist/schema/plugin-activation.js +18 -0
- package/dist/schema/plugin-editor-context.d.ts +33 -0
- package/dist/schema/plugin-editor-context.js +65 -0
- package/dist/schema/plugin-install.d.ts +58 -0
- package/dist/schema/plugin-install.js +132 -0
- package/dist/schema/plugin-kind.d.ts +21 -0
- package/dist/schema/plugin-kind.js +86 -0
- package/dist/schema/plugin-name.d.ts +1 -0
- package/dist/schema/plugin-name.js +7 -0
- package/dist/schema/register-once.d.ts +9 -0
- package/dist/schema/register-once.js +35 -0
- package/dist/schema/registration-checks.d.ts +32 -0
- package/dist/schema/registration-checks.js +122 -0
- package/dist/schema/registration-pending.d.ts +28 -0
- package/dist/schema/registration-pending.js +48 -0
- package/dist/schema/registry-reset.d.ts +7 -0
- package/dist/schema/registry-reset.js +30 -0
- package/dist/schema/registry-view.d.ts +30 -0
- package/dist/schema/registry-view.js +39 -0
- package/dist/schema/reserved-chords.d.ts +35 -0
- package/dist/schema/reserved-chords.js +313 -0
- package/dist/schema/reserved-chrome.d.ts +23 -0
- package/dist/schema/reserved-chrome.js +33 -0
- package/dist/schema/table-cell-raw.d.ts +14 -0
- package/dist/schema/table-cell-raw.js +30 -0
- package/dist/schema/whole-block-unit.d.ts +8 -0
- package/dist/schema/whole-block-unit.js +12 -0
- package/dist/search/document-scan.d.ts +22 -0
- package/dist/search/document-scan.js +39 -0
- package/dist/search/matcher.d.ts +31 -0
- package/dist/search/matcher.js +70 -0
- package/dist/search/regex-executor.d.ts +41 -0
- package/dist/search/regex-executor.js +165 -0
- package/dist/search/replace.d.ts +15 -0
- package/dist/search/replace.js +29 -0
- package/dist/search/search-state.svelte.d.ts +59 -0
- package/dist/search/search-state.svelte.js +231 -0
- package/dist/selection/autoscroll.d.ts +26 -0
- package/dist/selection/autoscroll.js +91 -0
- package/dist/selection/block-hit-test.d.ts +37 -0
- package/dist/selection/block-hit-test.js +59 -0
- package/dist/selection/caret-doors.d.ts +20 -0
- package/dist/selection/caret-doors.js +44 -0
- package/dist/selection/caret-restore.d.ts +15 -0
- package/dist/selection/caret-restore.js +32 -0
- package/dist/selection/char-endpoint-snap.d.ts +15 -0
- package/dist/selection/char-endpoint-snap.js +39 -0
- package/dist/selection/clipboard-text.d.ts +13 -0
- package/dist/selection/clipboard-text.js +314 -0
- package/dist/selection/cross-block/clipboard.d.ts +14 -0
- package/dist/selection/cross-block/clipboard.js +20 -0
- package/dist/selection/cross-block/dispatch.d.ts +78 -0
- package/dist/selection/cross-block/dispatch.js +57 -0
- package/dist/selection/cross-block/format-range.d.ts +38 -0
- package/dist/selection/cross-block/format-range.js +193 -0
- package/dist/selection/cross-block/format-toggle.d.ts +27 -0
- package/dist/selection/cross-block/format-toggle.js +109 -0
- package/dist/selection/cross-block/keydown.d.ts +11 -0
- package/dist/selection/cross-block/keydown.js +339 -0
- package/dist/selection/cross-block/ops.d.ts +56 -0
- package/dist/selection/cross-block/ops.js +210 -0
- package/dist/selection/cross-block/paste.d.ts +8 -0
- package/dist/selection/cross-block/paste.js +156 -0
- package/dist/selection/cross-block/pointer.d.ts +19 -0
- package/dist/selection/cross-block/pointer.js +80 -0
- package/dist/selection/cross-block/type-replace.d.ts +10 -0
- package/dist/selection/cross-block/type-replace.js +129 -0
- package/dist/selection/dead-space-caret.d.ts +39 -0
- package/dist/selection/dead-space-caret.js +173 -0
- package/dist/selection/drag-pointer.d.ts +22 -0
- package/dist/selection/drag-pointer.js +89 -0
- package/dist/selection/gap-caret.d.ts +47 -0
- package/dist/selection/gap-caret.js +72 -0
- package/dist/selection/keyboard-extend.d.ts +43 -0
- package/dist/selection/keyboard-extend.js +257 -0
- package/dist/selection/native-bridge.d.ts +47 -0
- package/dist/selection/native-bridge.js +204 -0
- package/dist/selection/nearest-block.d.ts +43 -0
- package/dist/selection/nearest-block.js +73 -0
- package/dist/selection/path-lookup.d.ts +32 -0
- package/dist/selection/path-lookup.js +132 -0
- package/dist/selection/path-math.d.ts +35 -0
- package/dist/selection/path-math.js +90 -0
- package/dist/selection/pointer-session.d.ts +43 -0
- package/dist/selection/pointer-session.js +111 -0
- package/dist/selection/primitives.d.ts +75 -0
- package/dist/selection/primitives.js +91 -0
- package/dist/selection/range-delete-ceremony.d.ts +85 -0
- package/dist/selection/range-delete-ceremony.js +197 -0
- package/dist/selection/range-delete-chrome.d.ts +39 -0
- package/dist/selection/range-delete-chrome.js +105 -0
- package/dist/selection/range-delete-table-coverage.d.ts +28 -0
- package/dist/selection/range-delete-table-coverage.js +168 -0
- package/dist/selection/range-delete-table.d.ts +16 -0
- package/dist/selection/range-delete-table.js +347 -0
- package/dist/selection/range-delete.d.ts +33 -0
- package/dist/selection/range-delete.js +121 -0
- package/dist/selection/selection-description.d.ts +7 -0
- package/dist/selection/selection-description.js +18 -0
- package/dist/selection/selection-restore.d.ts +46 -0
- package/dist/selection/selection-restore.js +66 -0
- package/dist/selection/selection-state.svelte.d.ts +72 -0
- package/dist/selection/selection-state.svelte.js +247 -0
- package/dist/selection/shared-keydown.d.ts +61 -0
- package/dist/selection/shared-keydown.js +150 -0
- package/dist/selection/table-endpoint-snap.d.ts +55 -0
- package/dist/selection/table-endpoint-snap.js +143 -0
- package/dist/selection/table-rect-extend.d.ts +23 -0
- package/dist/selection/table-rect-extend.js +46 -0
- package/dist/selection/widget-range-paint.d.ts +12 -0
- package/dist/selection/widget-range-paint.js +44 -0
- package/dist/styles/editor-theme.css +151 -0
- package/dist/styles/editor.css +585 -0
- package/dist/testing/conformance-core.d.ts +45 -0
- package/dist/testing/conformance-core.js +105 -0
- package/dist/testing/container-conformance.d.ts +137 -0
- package/dist/testing/container-conformance.js +533 -0
- package/dist/testing/headless-actions.d.ts +37 -0
- package/dist/testing/headless-actions.js +118 -0
- package/dist/testing/inline-conformance.d.ts +50 -0
- package/dist/testing/inline-conformance.js +442 -0
- package/dist/testing/kind-conformance.d.ts +54 -0
- package/dist/testing/kind-conformance.js +325 -0
- package/dist/testing/mount-dom-stubs.d.ts +8 -0
- package/dist/testing/mount-dom-stubs.js +19 -0
- package/dist/testing/parse-convergence.d.ts +14 -0
- package/dist/testing/parse-convergence.js +81 -0
- package/dist/testing.d.ts +20 -0
- package/dist/testing.js +61 -0
- package/dist/tree-operations/blockquote.d.ts +18 -0
- package/dist/tree-operations/blockquote.js +59 -0
- package/dist/tree-operations/children.d.ts +17 -0
- package/dist/tree-operations/children.js +56 -0
- package/dist/tree-operations/cleanup.d.ts +10 -0
- package/dist/tree-operations/cleanup.js +25 -0
- package/dist/tree-operations/clone.d.ts +5 -0
- package/dist/tree-operations/clone.js +43 -0
- package/dist/tree-operations/container-lift.d.ts +9 -0
- package/dist/tree-operations/container-lift.js +29 -0
- package/dist/tree-operations/index.d.ts +16 -0
- package/dist/tree-operations/index.js +14 -0
- package/dist/tree-operations/list/empty-check.d.ts +7 -0
- package/dist/tree-operations/list/empty-check.js +19 -0
- package/dist/tree-operations/list/exit-replacement.d.ts +13 -0
- package/dist/tree-operations/list/exit-replacement.js +49 -0
- package/dist/tree-operations/list/item-partition.d.ts +13 -0
- package/dist/tree-operations/list/item-partition.js +33 -0
- package/dist/tree-operations/list/list-builders.d.ts +44 -0
- package/dist/tree-operations/list/list-builders.js +129 -0
- package/dist/tree-operations/list/ordered-markers.d.ts +36 -0
- package/dist/tree-operations/list/ordered-markers.js +114 -0
- package/dist/tree-operations/list/reconcile-task.d.ts +12 -0
- package/dist/tree-operations/list/reconcile-task.js +47 -0
- package/dist/tree-operations/list/sublist-separator.d.ts +13 -0
- package/dist/tree-operations/list/sublist-separator.js +34 -0
- package/dist/tree-operations/list/terminator.d.ts +17 -0
- package/dist/tree-operations/list/terminator.js +60 -0
- package/dist/tree-operations/list/unwrap-merge.d.ts +29 -0
- package/dist/tree-operations/list/unwrap-merge.js +202 -0
- package/dist/tree-operations/node-ops.d.ts +296 -0
- package/dist/tree-operations/node-ops.js +1428 -0
- package/dist/tree-operations/parse-block.d.ts +3 -0
- package/dist/tree-operations/parse-block.js +8 -0
- package/dist/tree-operations/paste/apply.d.ts +12 -0
- package/dist/tree-operations/paste/apply.js +75 -0
- package/dist/tree-operations/paste/body-write.d.ts +19 -0
- package/dist/tree-operations/paste/body-write.js +53 -0
- package/dist/tree-operations/paste/container-match.d.ts +32 -0
- package/dist/tree-operations/paste/container-match.js +238 -0
- package/dist/tree-operations/paste/container-paste.d.ts +10 -0
- package/dist/tree-operations/paste/container-paste.js +27 -0
- package/dist/tree-operations/paste/dispatch.d.ts +61 -0
- package/dist/tree-operations/paste/dispatch.js +138 -0
- package/dist/tree-operations/paste/find-enclosing-list.d.ts +8 -0
- package/dist/tree-operations/paste/find-enclosing-list.js +30 -0
- package/dist/tree-operations/paste/focus-target.d.ts +27 -0
- package/dist/tree-operations/paste/focus-target.js +40 -0
- package/dist/tree-operations/paste/hooks.d.ts +17 -0
- package/dist/tree-operations/paste/hooks.js +80 -0
- package/dist/tree-operations/paste/list-absorb.d.ts +29 -0
- package/dist/tree-operations/paste/list-absorb.js +106 -0
- package/dist/tree-operations/paste/list-break-out.d.ts +42 -0
- package/dist/tree-operations/paste/list-break-out.js +136 -0
- package/dist/tree-operations/paste/parent-scope.d.ts +17 -0
- package/dist/tree-operations/paste/parent-scope.js +35 -0
- package/dist/tree-operations/paste/paste-deps.d.ts +20 -0
- package/dist/tree-operations/paste/paste-deps.js +6 -0
- package/dist/tree-operations/paste/paste-replacement.d.ts +8 -0
- package/dist/tree-operations/paste/paste-replacement.js +60 -0
- package/dist/tree-operations/paste/paste-transforms.d.ts +25 -0
- package/dist/tree-operations/paste/paste-transforms.js +72 -0
- package/dist/tree-operations/paste/replace-block-at-parent.d.ts +29 -0
- package/dist/tree-operations/paste/replace-block-at-parent.js +75 -0
- package/dist/tree-operations/paste/strategy.d.ts +9 -0
- package/dist/tree-operations/paste/strategy.js +20 -0
- package/dist/tree-operations/paste/table-slice.d.ts +10 -0
- package/dist/tree-operations/paste/table-slice.js +39 -0
- package/dist/tree-operations/paste-surfaces.d.ts +61 -0
- package/dist/tree-operations/paste-surfaces.js +15 -0
- package/dist/tree-operations/path-mutate.d.ts +12 -0
- package/dist/tree-operations/path-mutate.js +20 -0
- package/dist/tree-operations/reorder-unit.d.ts +17 -0
- package/dist/tree-operations/reorder-unit.js +37 -0
- package/dist/tree-operations/reorder.d.ts +13 -0
- package/dist/tree-operations/reorder.js +57 -0
- package/dist/tree-operations/sharing.d.ts +18 -0
- package/dist/tree-operations/sharing.js +14 -0
- package/dist/tree-operations/splice-many.d.ts +9 -0
- package/dist/tree-operations/splice-many.js +22 -0
- package/dist/tree-operations/structural-change.d.ts +65 -0
- package/dist/tree-operations/structural-change.js +117 -0
- package/dist/tree-operations/sub-table-copy.d.ts +6 -0
- package/dist/tree-operations/sub-table-copy.js +43 -0
- package/dist/tree-operations/table-mutations.d.ts +17 -0
- package/dist/tree-operations/table-mutations.js +101 -0
- package/dist/tree-operations/unshare.d.ts +101 -0
- package/dist/tree-operations/unshare.js +248 -0
- package/dist/undo/manager.d.ts +2 -0
- package/dist/undo/manager.js +50 -0
- package/dist/undo/types.d.ts +44 -0
- package/dist/undo/types.js +7 -0
- package/docs/guide/consumer-guide.md +1098 -0
- package/docs/guide/directives.md +223 -0
- package/docs/guide/plugin-api.md +329 -0
- package/docs/guide/plugin-guide/conspiracy.gif +0 -0
- package/docs/guide/plugin-guide/parrot-frames.md +209 -0
- package/docs/guide/plugin-guide/parrot.gif +0 -0
- package/docs/guide/plugin-guide.md +1693 -0
- package/docs/guide/plugin-testing.md +463 -0
- package/package.json +238 -0
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { DocumentView } from '../core/node-views';
|
|
2
|
+
export interface PerfSnapshot {
|
|
3
|
+
snapshotCount: number;
|
|
4
|
+
snapshotCloneBytes: number;
|
|
5
|
+
rebuildDepths: Record<number, number>;
|
|
6
|
+
/** Container reparses the kind re-derivation gate let through (see rebuildUnsharedChain). */
|
|
7
|
+
containerKindReparses: number;
|
|
8
|
+
parseCount: number;
|
|
9
|
+
parseMsTotal: number;
|
|
10
|
+
parseBlockCount: number;
|
|
11
|
+
inlineComputeCount: number;
|
|
12
|
+
/** Inline-format coverage reads that actually parsed — the pressed-state read's cost. */
|
|
13
|
+
formatCoverageReads: number;
|
|
14
|
+
undoLiveBytes: number;
|
|
15
|
+
undoEntryCount: number;
|
|
16
|
+
blockRenderCount: number;
|
|
17
|
+
blockRenderMsTotal: number;
|
|
18
|
+
keystrokeInPageMs: number[];
|
|
19
|
+
blockRenderPaths: string[];
|
|
20
|
+
mountedBlockCount: number;
|
|
21
|
+
decorationRuns: number;
|
|
22
|
+
islandRebuilds: number;
|
|
23
|
+
islandKeyScans: number;
|
|
24
|
+
}
|
|
25
|
+
export declare function enablePerfInstruments(): void;
|
|
26
|
+
export declare function disablePerfInstruments(): void;
|
|
27
|
+
export declare function resetPerfInstruments(): void;
|
|
28
|
+
export declare function perfEnabled(): boolean;
|
|
29
|
+
export declare function perfSnapshot(): PerfSnapshot;
|
|
30
|
+
export declare function recordSnapshotClone(bytes: number): void;
|
|
31
|
+
export declare function recordRebuildDepth(depth: number): void;
|
|
32
|
+
export declare function recordContainerKindReparse(): void;
|
|
33
|
+
export declare function recordParse(ms: number, blockCount: number): void;
|
|
34
|
+
export declare function recordInlineCompute(): void;
|
|
35
|
+
export declare function recordFormatCoverageRead(): void;
|
|
36
|
+
export declare function setUndoGauge(liveBytes: number, entryCount: number): void;
|
|
37
|
+
export declare function recordBlockRender(ms: number, path?: number[]): void;
|
|
38
|
+
export declare function recordDecorationRun(): void;
|
|
39
|
+
export declare function recordIslandRebuild(): void;
|
|
40
|
+
export declare function recordIslandKeyScan(): void;
|
|
41
|
+
export declare function incMountedBlocks(): void;
|
|
42
|
+
export declare function decMountedBlocks(): void;
|
|
43
|
+
export declare function markKeystrokeStart(): void;
|
|
44
|
+
export declare function markKeystrokeSettle(): void;
|
|
45
|
+
/**
|
|
46
|
+
* Serialized-byte proxy without building the string. Counts UTF-16 code units: exact
|
|
47
|
+
* against `serialize().length`, approximate against on-disk bytes for non-ASCII.
|
|
48
|
+
*/
|
|
49
|
+
export declare function docByteLength(doc: DocumentView): number;
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Dev-mode performance counters for the profiling harness. A leaf module, so the seams that
|
|
3
|
+
* record into it can depend on it from anywhere. Recording stays off until a runtime switch
|
|
4
|
+
* that only arms in dev/Vitest, leaving production one boolean check per record call.
|
|
5
|
+
* Internal — never exported from the editor barrel.
|
|
6
|
+
*/
|
|
7
|
+
import { DEV } from 'esm-env';
|
|
8
|
+
let enabled = false;
|
|
9
|
+
let counters = emptySnapshot();
|
|
10
|
+
let keystrokeStart = null;
|
|
11
|
+
function emptySnapshot() {
|
|
12
|
+
return {
|
|
13
|
+
snapshotCount: 0,
|
|
14
|
+
snapshotCloneBytes: 0,
|
|
15
|
+
rebuildDepths: {},
|
|
16
|
+
containerKindReparses: 0,
|
|
17
|
+
parseCount: 0,
|
|
18
|
+
parseMsTotal: 0,
|
|
19
|
+
parseBlockCount: 0,
|
|
20
|
+
inlineComputeCount: 0,
|
|
21
|
+
formatCoverageReads: 0,
|
|
22
|
+
undoLiveBytes: 0,
|
|
23
|
+
undoEntryCount: 0,
|
|
24
|
+
blockRenderCount: 0,
|
|
25
|
+
blockRenderMsTotal: 0,
|
|
26
|
+
keystrokeInPageMs: [],
|
|
27
|
+
blockRenderPaths: [],
|
|
28
|
+
mountedBlockCount: 0,
|
|
29
|
+
decorationRuns: 0,
|
|
30
|
+
islandRebuilds: 0,
|
|
31
|
+
islandKeyScans: 0
|
|
32
|
+
};
|
|
33
|
+
}
|
|
34
|
+
// ── Switch and readout ──────────────────────────────────────────────────────
|
|
35
|
+
export function enablePerfInstruments() {
|
|
36
|
+
if (DEV || (typeof process !== 'undefined' && process?.env?.VITEST)) {
|
|
37
|
+
enabled = true;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
export function disablePerfInstruments() {
|
|
41
|
+
enabled = false;
|
|
42
|
+
}
|
|
43
|
+
export function resetPerfInstruments() {
|
|
44
|
+
counters = emptySnapshot();
|
|
45
|
+
keystrokeStart = null;
|
|
46
|
+
}
|
|
47
|
+
export function perfEnabled() {
|
|
48
|
+
return enabled;
|
|
49
|
+
}
|
|
50
|
+
export function perfSnapshot() {
|
|
51
|
+
return {
|
|
52
|
+
...counters,
|
|
53
|
+
rebuildDepths: { ...counters.rebuildDepths },
|
|
54
|
+
keystrokeInPageMs: [...counters.keystrokeInPageMs],
|
|
55
|
+
blockRenderPaths: [...counters.blockRenderPaths]
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
// ── Recorders ───────────────────────────────────────────────────────────────
|
|
59
|
+
export function recordSnapshotClone(bytes) {
|
|
60
|
+
if (!enabled)
|
|
61
|
+
return;
|
|
62
|
+
counters.snapshotCount++;
|
|
63
|
+
counters.snapshotCloneBytes += bytes;
|
|
64
|
+
}
|
|
65
|
+
export function recordRebuildDepth(depth) {
|
|
66
|
+
if (!enabled)
|
|
67
|
+
return;
|
|
68
|
+
counters.rebuildDepths[depth] = (counters.rebuildDepths[depth] ?? 0) + 1;
|
|
69
|
+
}
|
|
70
|
+
export function recordContainerKindReparse() {
|
|
71
|
+
if (!enabled)
|
|
72
|
+
return;
|
|
73
|
+
counters.containerKindReparses++;
|
|
74
|
+
}
|
|
75
|
+
export function recordParse(ms, blockCount) {
|
|
76
|
+
if (!enabled)
|
|
77
|
+
return;
|
|
78
|
+
counters.parseCount++;
|
|
79
|
+
counters.parseMsTotal += ms;
|
|
80
|
+
counters.parseBlockCount += blockCount;
|
|
81
|
+
}
|
|
82
|
+
export function recordInlineCompute() {
|
|
83
|
+
if (!enabled)
|
|
84
|
+
return;
|
|
85
|
+
counters.inlineComputeCount++;
|
|
86
|
+
}
|
|
87
|
+
export function recordFormatCoverageRead() {
|
|
88
|
+
if (!enabled)
|
|
89
|
+
return;
|
|
90
|
+
counters.formatCoverageReads++;
|
|
91
|
+
}
|
|
92
|
+
export function setUndoGauge(liveBytes, entryCount) {
|
|
93
|
+
if (!enabled)
|
|
94
|
+
return;
|
|
95
|
+
counters.undoLiveBytes = liveBytes;
|
|
96
|
+
counters.undoEntryCount = entryCount;
|
|
97
|
+
}
|
|
98
|
+
export function recordBlockRender(ms, path) {
|
|
99
|
+
if (!enabled)
|
|
100
|
+
return;
|
|
101
|
+
counters.blockRenderCount++;
|
|
102
|
+
counters.blockRenderMsTotal += ms;
|
|
103
|
+
if (path)
|
|
104
|
+
counters.blockRenderPaths.push(path.join(','));
|
|
105
|
+
}
|
|
106
|
+
// notifyEdit runs every source, so a typing pass records keystrokes × sources — the
|
|
107
|
+
// ceiling that catches a per-block cascade.
|
|
108
|
+
export function recordDecorationRun() {
|
|
109
|
+
if (!enabled)
|
|
110
|
+
return;
|
|
111
|
+
counters.decorationRuns++;
|
|
112
|
+
}
|
|
113
|
+
export function recordIslandRebuild() {
|
|
114
|
+
if (!enabled)
|
|
115
|
+
return;
|
|
116
|
+
counters.islandRebuilds++;
|
|
117
|
+
}
|
|
118
|
+
// One querySelectorAll per destructive/printable keystroke, even when the block holds none.
|
|
119
|
+
export function recordIslandKeyScan() {
|
|
120
|
+
if (!enabled)
|
|
121
|
+
return;
|
|
122
|
+
counters.islandKeyScans++;
|
|
123
|
+
}
|
|
124
|
+
export function incMountedBlocks() {
|
|
125
|
+
if (!enabled)
|
|
126
|
+
return;
|
|
127
|
+
counters.mountedBlockCount++;
|
|
128
|
+
}
|
|
129
|
+
export function decMountedBlocks() {
|
|
130
|
+
if (!enabled)
|
|
131
|
+
return;
|
|
132
|
+
counters.mountedBlockCount--;
|
|
133
|
+
}
|
|
134
|
+
export function markKeystrokeStart() {
|
|
135
|
+
if (!enabled)
|
|
136
|
+
return;
|
|
137
|
+
keystrokeStart = performance.now();
|
|
138
|
+
}
|
|
139
|
+
export function markKeystrokeSettle() {
|
|
140
|
+
if (!enabled || keystrokeStart === null)
|
|
141
|
+
return;
|
|
142
|
+
counters.keystrokeInPageMs.push(performance.now() - keystrokeStart);
|
|
143
|
+
keystrokeStart = null;
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Serialized-byte proxy without building the string. Counts UTF-16 code units: exact
|
|
147
|
+
* against `serialize().length`, approximate against on-disk bytes for non-ASCII.
|
|
148
|
+
*/
|
|
149
|
+
export function docByteLength(doc) {
|
|
150
|
+
let length = doc.prefix.length + doc.suffix.length;
|
|
151
|
+
for (const child of doc.children)
|
|
152
|
+
length += child.leadingTrivia.length + child.raw.length;
|
|
153
|
+
return length;
|
|
154
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function useMountGauge(): void;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Count the calling component in the dev mount gauge. Rows and list items aren't
|
|
3
|
+
* BlockHosts, so without this a windowed giant container would read as ~0 mounted blocks.
|
|
4
|
+
*/
|
|
5
|
+
import { perfEnabled, incMountedBlocks, decMountedBlocks } from './instruments';
|
|
6
|
+
export function useMountGauge() {
|
|
7
|
+
$effect(() => {
|
|
8
|
+
// One decision per mount: the gauge is a net balance, so re-reading the flag at
|
|
9
|
+
// teardown would let an arm/disarm flip unbalance it.
|
|
10
|
+
if (!perfEnabled())
|
|
11
|
+
return;
|
|
12
|
+
incMountedBlocks();
|
|
13
|
+
return decMountedBlocks;
|
|
14
|
+
});
|
|
15
|
+
}
|
package/dist/plugin.d.ts
ADDED
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import type { AnyBlockKind, InlineNode } from './core/nodes';
|
|
2
|
+
import type { NodeView } from './core/node-views';
|
|
3
|
+
import type { ChromeLeafOptions } from './editor-actions/plugin/chrome-leaf';
|
|
4
|
+
export { definePlugin, isPluginInstalled } from './schema/plugin-install';
|
|
5
|
+
export type { EditorPlugin, EditorPluginEntry } from './schema/plugin-install';
|
|
6
|
+
export type { PluginSetupContext, OnEditorCallback, EditorContext } from './schema/plugin-install';
|
|
7
|
+
export type { PresentationMode } from './presentation-mode';
|
|
8
|
+
export { definePluginBlock } from './schema/define-plugin-block';
|
|
9
|
+
export { declarePluginKind, declaredPluginKind } from './schema/plugin-kind';
|
|
10
|
+
export type { PluginBlockKind, AnyBlockKind } from './core/nodes';
|
|
11
|
+
export { declarePluginInlineKind, declaredPluginInlineKind, isInlineKindDeclared } from './schema/plugin-kind';
|
|
12
|
+
export type { PluginInlineKind, InlineNode, ImageFields, ImageSyntaxRewriter } from './core/nodes';
|
|
13
|
+
export { registerInlineSyntax, INLINE_PRIORITIES } from './core/inline/scan/plugin-syntax';
|
|
14
|
+
export type { InlineSyntaxRecognizer, InlineSyntaxOptions } from './core/inline/scan/plugin-syntax';
|
|
15
|
+
export { registerInlineWidgetKind, mintWidgetShell, isWidgetActivationClick } from './core/inline/inline-widgets';
|
|
16
|
+
export type { InlineWidgetDescriptor, InlineWidgetComponentProps, InlineWidgetEditingPolicy, InlineWidgetEditingContext } from './core/inline/inline-widgets';
|
|
17
|
+
export { registerBlockKind, augmentBlockKind } from './schema/block-kind-descriptor';
|
|
18
|
+
export type { BlockKindDescriptor, BlockKindRegistration, BlockKindAugmentation, ContainerDescriptorGroup, MergeRole, UnwrapRole } from './schema/block-kind-descriptor';
|
|
19
|
+
export type { ChildRawChange } from './schema/child-spans';
|
|
20
|
+
export type { ClosureBlock, ClosureColumn, ClosureCell, SimpleLeafClosureCells, ContainerClosureCells } from './schema/closure';
|
|
21
|
+
export { simpleLeafClosure, containerClosure } from './schema/closure';
|
|
22
|
+
export { registerBlockComponent, defineBlockComponent } from './schema/block-component-registry';
|
|
23
|
+
export type { BlockComponentEntry } from './schema/block-component-registry';
|
|
24
|
+
export type { BlockComponent, BlockComponentExports, BlockComponentProps } from './block-component';
|
|
25
|
+
export { registerBlockOpener } from './schema/block-openers';
|
|
26
|
+
export type { BlockOpener, BlockOpenerResult, OpenContext } from './schema/block-openers';
|
|
27
|
+
export { lineStartsOuterBlock } from './schema/block-openers';
|
|
28
|
+
export type { OuterBlockScan } from './schema/block-openers';
|
|
29
|
+
export { OPENER_PRIORITIES } from './schema/opener-priorities';
|
|
30
|
+
export { registerBlockCompleter } from './schema/block-completions';
|
|
31
|
+
export type { BlockCompleter, CompletionResult } from './schema/block-completions';
|
|
32
|
+
export type { CommandId } from './schema/commands';
|
|
33
|
+
export type { KeyBinding } from './schema/keybindings';
|
|
34
|
+
export { registerBlockCommand } from './schema/block-commands';
|
|
35
|
+
export type { BlockCommandContext, BlockCommandHandler } from './schema/block-commands';
|
|
36
|
+
export type { PluginCommandId, AnyCommandId } from './schema/command-id';
|
|
37
|
+
export { registerGlobalCommand } from './schema/global-commands';
|
|
38
|
+
export { parse, type ParseScope } from './core/parser';
|
|
39
|
+
export type { Document } from './core/nodes';
|
|
40
|
+
export { serialize, concatChildren as serializeChildren } from './core/serializer';
|
|
41
|
+
export { trimTrailingLineEnding, normalizeLineEndings } from './core/lines';
|
|
42
|
+
export { splitLines } from './core/lines';
|
|
43
|
+
export type { ParsedLine } from './core/lines';
|
|
44
|
+
export { isBlankLine } from './core/parser';
|
|
45
|
+
export { parseContainerBody } from './core/parser';
|
|
46
|
+
export type { ContainerBodyWrap } from './core/parser';
|
|
47
|
+
export { matchFenceOpen, matchFenceClose, escalatedFenceLength } from './core/parsers/fence-syntax';
|
|
48
|
+
export type { FenceOpen } from './core/parsers/fence-syntax';
|
|
49
|
+
export { htmlBlockTagLineMatcher } from './core/parsers/html-block';
|
|
50
|
+
export { blockquoteExtent } from './core/parsers/blockquote';
|
|
51
|
+
export type { CstNode } from './core/nodes';
|
|
52
|
+
export type { NodeView, DocumentView } from './core/node-views';
|
|
53
|
+
export { setPluginMetadata, getPluginMetadata } from './core/nodes';
|
|
54
|
+
export { getContentRange } from './core/inline';
|
|
55
|
+
export type { ContentRange } from './core/inline';
|
|
56
|
+
export { headingLevel } from './core/nodes';
|
|
57
|
+
export { isProseKind } from './core/inline';
|
|
58
|
+
/**
|
|
59
|
+
* Inline-parse a prose leaf. No link-reference resolver is available to a plugin, so
|
|
60
|
+
* reference links parse as `unresolvedReference`; every other construct fully resolves.
|
|
61
|
+
*/
|
|
62
|
+
export declare function computeInlineContent(node: NodeView): InlineNode[];
|
|
63
|
+
export { isBlockKindDeclared } from './schema/plugin-kind';
|
|
64
|
+
export { isBlockKindRegistered } from './schema/block-kind-descriptor';
|
|
65
|
+
export { isBlockComponentRegistered } from './schema/block-component-registry';
|
|
66
|
+
export { isBlockOpenerRegistered } from './schema/block-openers';
|
|
67
|
+
export { isBlockCompleterRegistered } from './schema/block-completions';
|
|
68
|
+
export { isPasteTransformRegistered } from './tree-operations/paste/paste-transforms';
|
|
69
|
+
export { default as BlockList } from './components/BlockList.svelte';
|
|
70
|
+
export { createContainerBlock } from './editor-actions/plugin/container';
|
|
71
|
+
export type { ContainerBlock, ContainerBlockComponent, ContainerBlockDeps, ContainerBlockListProps } from './editor-actions/plugin/container';
|
|
72
|
+
export type { RefSlots } from './reactivity/publish-ref.svelte';
|
|
73
|
+
export declare function registerChromeLeaf(kind: AnyBlockKind, opts?: ChromeLeafOptions): void;
|
|
74
|
+
export type { ChromeLeafOptions };
|
|
75
|
+
export { chromeChild } from './editor-actions/plugin/chrome-leaf';
|
|
76
|
+
export { isCollapsedContainer } from './schema/reserved-chrome';
|
|
77
|
+
export { createEditableLeaf } from './components/blocks/editable-leaf';
|
|
78
|
+
export type { EditableLeaf, EditableLeafDeps, EditableLeafMode, EditableLeafSurfaceProps, EditableLeafRenderProps } from './components/blocks/editable-leaf';
|
|
79
|
+
export type { StickyColumnDirection } from './block-component';
|
|
80
|
+
export { activateDirectives } from './components/blocks/directive/activate-directives';
|
|
81
|
+
export { registerDirective, isDirectiveRegistered } from './core/directive/registry';
|
|
82
|
+
export type { DirectiveDefinition, ParsedDirective } from './core/directive/registry';
|
|
83
|
+
export { escalatedColonCount, parseDirectiveAttributes, serializeDirective } from './core/directive/grammar';
|
|
84
|
+
export type { DirectiveTier, DirectiveFence, DirectiveAttributes } from './core/directive/grammar';
|
|
85
|
+
export { createDirectiveRebuild } from './editor-actions/plugin/directive-container';
|
|
86
|
+
export { DIRECTIVE_BODY_WRAP } from './core/directive/kinds';
|
|
87
|
+
export { createBoundedMemo } from './bounded-memo';
|
|
88
|
+
export type { BoundedMemoOptions } from './bounded-memo';
|
|
89
|
+
export { createScanIndex } from './scan-index';
|
|
90
|
+
export { registerPasteTransform } from './tree-operations/paste/paste-transforms';
|
|
91
|
+
export type { PasteTransform } from './tree-operations/paste/paste-transforms';
|
|
92
|
+
export type { Decoration, MarkDecoration, WidgetDecoration, ReplaceDecoration, BlockDecoration, DecorationWidgetSpec, ProvideContext, DecorationSource, DecorationSourceHandle, DecorationRegistry } from './decorations/types';
|
|
93
|
+
export type { EditEvent, EditorEventMap, SelectionChangeEvent, EditorError } from './editor-events';
|
|
94
|
+
export type { OperationKind } from './schema/operations';
|
|
95
|
+
export type { EditorRects } from './editor-rects';
|
|
96
|
+
export { caretOffsetAtPoint } from './cursor/point-offset';
|
|
97
|
+
export type { CaretTarget } from './schema/block-kind-descriptor';
|
|
98
|
+
export { CURSOR_END } from './block-component';
|
|
99
|
+
export type { CursorEnd } from './block-component';
|
|
100
|
+
export type { EditorSelection, SelectionPoint } from './selection/primitives';
|
|
101
|
+
export { SELECTION_END } from './block-component';
|
|
102
|
+
export type { SelectionEnd } from './block-component';
|
package/dist/plugin.js
ADDED
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
// The plugin-authoring surface, published at the `@voithos-labs/aragonite/plugin` subpath. Only the
|
|
2
|
+
// authoring API belongs here — not the `<Editor>` embedding barrel (index.ts), no test
|
|
3
|
+
// helpers, no internal dispatch. Sections tagged (pre-freeze) may change until the 1.0
|
|
4
|
+
// freeze.
|
|
5
|
+
import TextEditableBlock from './components/blocks/text/TextEditableBlock.svelte';
|
|
6
|
+
import { registerChromeLeaf as bindChromeLeaf } from './editor-actions/plugin/chrome-leaf';
|
|
7
|
+
import { computeInlineContent as parseLeafInline } from './core/inline';
|
|
8
|
+
// ── Plugin unit (pre-freeze) ─────────────────────────────────────────────────
|
|
9
|
+
// Installation is once per process — the editor's `plugins` prop does it, so a
|
|
10
|
+
// consumer rarely calls installPlugins directly.
|
|
11
|
+
export { definePlugin, isPluginInstalled } from './schema/plugin-install';
|
|
12
|
+
// The single-block shortcut: one kind, one component, one register step.
|
|
13
|
+
export { definePluginBlock } from './schema/define-plugin-block';
|
|
14
|
+
// ── Kind declaration ─────────────────────────────────────────────────────────
|
|
15
|
+
export { declarePluginKind, declaredPluginKind } from './schema/plugin-kind';
|
|
16
|
+
// ── Inline authoring surface (pre-freeze) ────────────────────────────────────
|
|
17
|
+
// Mint an inline kind, hook the scanner on a trigger character, register a live atomic widget.
|
|
18
|
+
export { declarePluginInlineKind, declaredPluginInlineKind, isInlineKindDeclared } from './schema/plugin-kind';
|
|
19
|
+
export { registerInlineSyntax, INLINE_PRIORITIES } from './core/inline/scan/plugin-syntax';
|
|
20
|
+
export { registerInlineWidgetKind, mintWidgetShell, isWidgetActivationClick } from './core/inline/inline-widgets';
|
|
21
|
+
// ── Block-kind descriptor registry ───────────────────────────────────────────
|
|
22
|
+
// BlockKindRegistration is the write-side shape; BlockKindDescriptor is the flat
|
|
23
|
+
// read-side one, still exported as the referent of ContainerDescriptorGroup's fields.
|
|
24
|
+
export { registerBlockKind, augmentBlockKind } from './schema/block-kind-descriptor';
|
|
25
|
+
export { simpleLeafClosure, containerClosure } from './schema/closure';
|
|
26
|
+
// ── Component registry ───────────────────────────────────────────────────────
|
|
27
|
+
export { registerBlockComponent, defineBlockComponent } from './schema/block-component-registry';
|
|
28
|
+
// ── Parser-opener registry ───────────────────────────────────────────────────
|
|
29
|
+
export { registerBlockOpener } from './schema/block-openers';
|
|
30
|
+
// The shared "does this line start a block at the outer level" gate, so a container opener
|
|
31
|
+
// scanning its own extent ends it where cmark-gfm does instead of forking the rule.
|
|
32
|
+
export { lineStartsOuterBlock } from './schema/block-openers';
|
|
33
|
+
// The built-in priority ladder a plugin opener prices against (pre-freeze) — see the
|
|
34
|
+
// plugin guide's opener-priority section for the two placement rules.
|
|
35
|
+
export { OPENER_PRIORITIES } from './schema/opener-priorities';
|
|
36
|
+
// ── Enter-completion registry (pre-freeze) ───────────────────────────────────
|
|
37
|
+
// The opener's sibling for a grammar whose lines must be adjacent, which Enter alone can
|
|
38
|
+
// never type into existence: a completer reads one typed line and answers the lines that
|
|
39
|
+
// complete it, plus where the caret seats inside the mint.
|
|
40
|
+
export { registerBlockCompleter } from './schema/block-completions';
|
|
41
|
+
// ── Command mint (pre-freeze) ────────────────────────────────────────────────
|
|
42
|
+
// A (kind, name) block-command mints a PluginCommandId; AnyCommandId spans built-in and minted.
|
|
43
|
+
export { registerBlockCommand } from './schema/block-commands';
|
|
44
|
+
// A global command is process-wide but runs against the dispatching instance's EditorContext.
|
|
45
|
+
export { registerGlobalCommand } from './schema/global-commands';
|
|
46
|
+
// ── Parse / serialize helpers (pre-freeze) ───────────────────────────────────
|
|
47
|
+
// Re-exported so an opener needn't reach into core/ deep paths the packaged artifact
|
|
48
|
+
// doesn't expose.
|
|
49
|
+
export { parse } from './core/parser';
|
|
50
|
+
export { serialize, concatChildren as serializeChildren } from './core/serializer';
|
|
51
|
+
export { trimTrailingLineEnding, normalizeLineEndings } from './core/lines';
|
|
52
|
+
// The `ParsedLine[]` every line-scoped seam here consumes — without it a `source →
|
|
53
|
+
// source` transform holding nothing but a string could not reach `blockquoteExtent`.
|
|
54
|
+
export { splitLines } from './core/lines';
|
|
55
|
+
// GFM §2.1's blank line (spaces and tabs only). `String.trim()` would admit the whole
|
|
56
|
+
// Unicode whitespace set and split a block on a pasted non-breaking space.
|
|
57
|
+
export { isBlankLine } from './core/parser';
|
|
58
|
+
// A container whose body sits between chrome lines of its own (`:::note` … `:::`,
|
|
59
|
+
// `<summary>` … `</details>`) parses that body here, not with `parse`: the blank line
|
|
60
|
+
// against a chrome line is a separator, and only this seam knows to keep it out of the
|
|
61
|
+
// children. See `design/syntax-tree.md` § blank lines.
|
|
62
|
+
export { parseContainerBody } from './core/parser';
|
|
63
|
+
// ── Fence grammar (pre-freeze) ───────────────────────────────────────────────
|
|
64
|
+
// The built-in CommonMark fence recognizers, so a plugin claiming a fence (```mermaid) never
|
|
65
|
+
// reimplements the rules. The opener match keeps verbatim indent/info bytes, for byte-exact
|
|
66
|
+
// rebuilds; `escalatedFenceLength` is `escalatedColonCount`'s fence twin, owed by any kind that
|
|
67
|
+
// rebuilds its own raw around a body it did not parse.
|
|
68
|
+
export { matchFenceOpen, matchFenceClose, escalatedFenceLength } from './core/parsers/fence-syntax';
|
|
69
|
+
// ── HTML tag-line grammar (pre-freeze) ───────────────────────────────────────
|
|
70
|
+
// CommonMark's type-6 tag-line shape for one tag name. What actually closes such a
|
|
71
|
+
// container is everything the spec passes through raw (indented, upper-cased, trailing
|
|
72
|
+
// space) — looser than any canonical form a rebuild emits.
|
|
73
|
+
export { htmlBlockTagLineMatcher } from './core/parsers/html-block';
|
|
74
|
+
// ── Blockquote grammar (pre-freeze) ──────────────────────────────────────────
|
|
75
|
+
// The built-in blockquote extent scanner, so a plugin claiming a blockquote-shaped
|
|
76
|
+
// construct (`> [!NOTE]`) reuses CommonMark §5.1 lazy continuation instead of forking it.
|
|
77
|
+
export { blockquoteExtent } from './core/parsers/blockquote';
|
|
78
|
+
// Store/read a plugin kind's own metadata shape without casting through `BlockMetadata`.
|
|
79
|
+
export { setPluginMetadata, getPluginMetadata } from './core/nodes';
|
|
80
|
+
// The content span within a block's raw, syntax markers excluded (a heading's `#` prefix).
|
|
81
|
+
export { getContentRange } from './core/inline';
|
|
82
|
+
// A heading's level (ATX or setext), null otherwise: the typed path past the
|
|
83
|
+
// built-in-node narrowing this barrel keeps internal.
|
|
84
|
+
export { headingLevel } from './core/nodes';
|
|
85
|
+
// Pure and uncached — the reactive-safe path a widget's `$derived` reads. `isProseKind`
|
|
86
|
+
// gates the walk so a code block's bytes are never inline-scanned.
|
|
87
|
+
export { isProseKind } from './core/inline';
|
|
88
|
+
/**
|
|
89
|
+
* Inline-parse a prose leaf. No link-reference resolver is available to a plugin, so
|
|
90
|
+
* reference links parse as `unresolvedReference`; every other construct fully resolves.
|
|
91
|
+
*/
|
|
92
|
+
export function computeInlineContent(node) {
|
|
93
|
+
return parseLeafInline(node);
|
|
94
|
+
}
|
|
95
|
+
// ── Idempotent-registration probes ─────────────────────────────────────────────
|
|
96
|
+
// The register-once registries throw on duplicate; a plugin re-registers safely
|
|
97
|
+
// (HMR / re-import) by guarding on these.
|
|
98
|
+
export { isBlockKindDeclared } from './schema/plugin-kind';
|
|
99
|
+
export { isBlockKindRegistered } from './schema/block-kind-descriptor';
|
|
100
|
+
export { isBlockComponentRegistered } from './schema/block-component-registry';
|
|
101
|
+
export { isBlockOpenerRegistered } from './schema/block-openers';
|
|
102
|
+
export { isBlockCompleterRegistered } from './schema/block-completions';
|
|
103
|
+
export { isPasteTransformRegistered } from './tree-operations/paste/paste-transforms';
|
|
104
|
+
// ── Container-authoring surface (pre-freeze) ─────────────────────────────────
|
|
105
|
+
// Lets a plugin build an editable nested container as thinly as the built-in
|
|
106
|
+
// blockquote, without touching any editor context key.
|
|
107
|
+
export { default as BlockList } from './components/BlockList.svelte';
|
|
108
|
+
export { createContainerBlock } from './editor-actions/plugin/container';
|
|
109
|
+
// The one seam allowed to import components/, so editor-actions keeps no upward
|
|
110
|
+
// value edge to the component tree.
|
|
111
|
+
export function registerChromeLeaf(kind, opts) {
|
|
112
|
+
bindChromeLeaf(kind, TextEditableBlock, opts);
|
|
113
|
+
}
|
|
114
|
+
// Mint the reserved child-0 node for a container's chrome leaf: text plus its newline.
|
|
115
|
+
export { chromeChild } from './editor-actions/plugin/chrome-leaf';
|
|
116
|
+
// One definition of collapsed, shared by a component's getter and the model-layer walks.
|
|
117
|
+
export { isCollapsedContainer } from './schema/reserved-chrome';
|
|
118
|
+
// ── Editable-leaf authoring surface (pre-freeze) ─────────────────────────────
|
|
119
|
+
// A text-editing leaf with native caret/IME/undo/selection parity, plain (per-keystroke
|
|
120
|
+
// commits) or render-primary (reveal-to-edit, one commit on blur). The
|
|
121
|
+
// createContainerBlock sibling for leaves.
|
|
122
|
+
export { createEditableLeaf } from './components/blocks/editable-leaf';
|
|
123
|
+
// ── Directive authoring (pre-freeze) ─────────────────────────────────────────
|
|
124
|
+
// `activateDirectives()` claims `:::` — call it once at startup, before the editor
|
|
125
|
+
// parses. The other symbols are inert: importing them does NOT claim the grammar.
|
|
126
|
+
export { activateDirectives } from './components/blocks/directive/activate-directives';
|
|
127
|
+
export { registerDirective, isDirectiveRegistered } from './core/directive/registry';
|
|
128
|
+
// `escalatedColonCount` is the rule `serializeDirective` already applies; exported for
|
|
129
|
+
// emitters that build `:::name` text by concatenation instead of through the CST, where
|
|
130
|
+
// a body line reproducing the fence would otherwise close the container early.
|
|
131
|
+
export { escalatedColonCount, parseDirectiveAttributes, serializeDirective } from './core/directive/grammar';
|
|
132
|
+
// The `rebuildRaw` for a directive container whose child 0 is an editable title.
|
|
133
|
+
export { createDirectiveRebuild } from './editor-actions/plugin/directive-container';
|
|
134
|
+
// The wrap every `:::` body parses with; a directive kind declares it as its `container.bodyWrap`
|
|
135
|
+
// so the editor's separator settle knows the blank line against the fence belongs to the fence.
|
|
136
|
+
export { DIRECTIVE_BODY_WRAP } from './core/directive/kinds';
|
|
137
|
+
// ── Renderer utilities (pre-freeze) ──────────────────────────────────────────
|
|
138
|
+
// A bounded LRU memo for a renderer's per-source work, sync or async (store the
|
|
139
|
+
// promise). See the plugin guide's renderer recipe.
|
|
140
|
+
export { createBoundedMemo } from './bounded-memo';
|
|
141
|
+
// ── Recognizer scan index (pre-freeze) ───────────────────────────────────────
|
|
142
|
+
// The bounded decline for a grammar with no early-stop byte (the guide's inline-kinds
|
|
143
|
+
// section): a per-block position collector becomes a memoized lookup answering the first
|
|
144
|
+
// candidate at or after `from` (-1 when none), one scan per block behind a cap-2 memo.
|
|
145
|
+
export { createScanIndex } from './scan-index';
|
|
146
|
+
// ── Paste transforms (pre-freeze) ────────────────────────────────────────────
|
|
147
|
+
// A pre-parse clipboard rewrite: inspect the raw pasted text, replace it or decline
|
|
148
|
+
// (null). Transforms run in install order at every paste site — never on load or typing.
|
|
149
|
+
export { registerPasteTransform } from './tree-operations/paste/paste-transforms';
|
|
150
|
+
// ── Caret geometry (pre-freeze) ──────────────────────────────────────────────
|
|
151
|
+
// The kit a kind answers `caretTargetAtPoint` with: the landing shape, the probe that turns a
|
|
152
|
+
// point in one of your own elements into an offset (NEAREST, so a press on your chrome still
|
|
153
|
+
// names one), and the sentinel for "wherever this leaf ends".
|
|
154
|
+
export { caretOffsetAtPoint } from './cursor/point-offset';
|
|
155
|
+
export { CURSOR_END } from './block-component';
|
|
156
|
+
export { SELECTION_END } from './block-component';
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
<!--
|
|
2
|
+
One alert box for both admonition kinds: the directive admonition (editable title
|
|
3
|
+
chrome leaf at child 0) and the GitHub alert (no title, a static badge instead).
|
|
4
|
+
createContainerBlock hides all child-list state, so this owns only its chrome;
|
|
5
|
+
node/index/path go in as thunks so each is re-read live, never snapshotted.
|
|
6
|
+
-->
|
|
7
|
+
<script lang="ts">
|
|
8
|
+
import { BlockList, createContainerBlock, getPluginMetadata, type NodeView } from '../../plugin';
|
|
9
|
+
import {
|
|
10
|
+
capitalize,
|
|
11
|
+
coerceAdmonitionName,
|
|
12
|
+
GITHUB_ALERT,
|
|
13
|
+
type AdmonitionMetadata,
|
|
14
|
+
type GithubAlertMetadata
|
|
15
|
+
} from './kinds';
|
|
16
|
+
|
|
17
|
+
let { node, index, myPath = [] }: { node: NodeView; index: number; myPath?: number[] } = $props();
|
|
18
|
+
let boxEl: HTMLElement | undefined = $state();
|
|
19
|
+
|
|
20
|
+
const { blockListProps, containerApi, handleKeydown } = createContainerBlock({
|
|
21
|
+
getNode: () => node,
|
|
22
|
+
getIndex: () => index,
|
|
23
|
+
getPath: () => myPath,
|
|
24
|
+
getBoxEl: () => boxEl
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
const isAlert = $derived(node.kind === GITHUB_ALERT);
|
|
28
|
+
const kind = $derived(
|
|
29
|
+
isAlert
|
|
30
|
+
? coerceAdmonitionName(getPluginMetadata<GithubAlertMetadata>(node)?.alertType?.toLowerCase())
|
|
31
|
+
: coerceAdmonitionName(getPluginMetadata<AdmonitionMetadata>(node)?.name)
|
|
32
|
+
);
|
|
33
|
+
const titleEmpty = $derived(isAlert || (node.children?.[0]?.raw ?? '').trim() === '');
|
|
34
|
+
|
|
35
|
+
export { containerApi };
|
|
36
|
+
</script>
|
|
37
|
+
|
|
38
|
+
<!-- svelte-ignore a11y_no_static_element_interactions -->
|
|
39
|
+
<div
|
|
40
|
+
class="admonition"
|
|
41
|
+
data-kind={kind}
|
|
42
|
+
data-title-empty={titleEmpty}
|
|
43
|
+
data-alert-source={isAlert ? 'github' : 'directive'}
|
|
44
|
+
aria-label={`${capitalize(kind)} ${isAlert ? 'alert' : 'admonition'}`}
|
|
45
|
+
bind:this={boxEl}
|
|
46
|
+
onkeydown={handleKeydown}
|
|
47
|
+
>
|
|
48
|
+
{#if isAlert}
|
|
49
|
+
<!-- Static badge: contenteditable=false keeps the caret in the body, where the
|
|
50
|
+
alert's real content lives. -->
|
|
51
|
+
<div class="admonition-title" contenteditable="false" aria-hidden="true"></div>
|
|
52
|
+
{/if}
|
|
53
|
+
<BlockList {...blockListProps} />
|
|
54
|
+
</div>
|
|
55
|
+
|
|
56
|
+
<style>
|
|
57
|
+
/* A gutter rail, not a card: a document, not a boxed callout. */
|
|
58
|
+
.admonition {
|
|
59
|
+
position: relative;
|
|
60
|
+
margin: 0.8em 0;
|
|
61
|
+
padding: 0.15em 0 0.15em 1em;
|
|
62
|
+
border-left: 3px solid var(--adm-accent);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
/* One block per kind carries the whole axis: accent, icon glyph, untitled label. Fixed hex,
|
|
66
|
+
not theme tokens: GitHub's alert palette is canonically one color per kind, so admonitions
|
|
67
|
+
read identically across host themes. */
|
|
68
|
+
.admonition[data-kind='note'] {
|
|
69
|
+
--adm-accent: #1f6feb;
|
|
70
|
+
--adm-label: 'Note';
|
|
71
|
+
--adm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 1a7 7 0 1 0 0 14A7 7 0 0 0 8 1zm.9 3.3a.9.9 0 1 1-1.8 0 .9.9 0 0 1 1.8 0zM7.1 7h1.8v5.2H7.1z'/%3E%3C/svg%3E");
|
|
72
|
+
}
|
|
73
|
+
.admonition[data-kind='tip'] {
|
|
74
|
+
--adm-accent: #2da44e;
|
|
75
|
+
--adm-label: 'Tip';
|
|
76
|
+
--adm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 1a4.5 4.5 0 0 0-2.7 8.1c.4.3.7.8.7 1.3v.6h4v-.6c0-.5.3-1 .7-1.3A4.5 4.5 0 0 0 8 1zM6 12.5h4v.8H6zm.5 1.7h3l-.6.6a1 1 0 0 1-.7.3h-.4a1 1 0 0 1-.7-.3z'/%3E%3C/svg%3E");
|
|
77
|
+
}
|
|
78
|
+
.admonition[data-kind='important'] {
|
|
79
|
+
--adm-accent: #8250df;
|
|
80
|
+
--adm-label: 'Important';
|
|
81
|
+
--adm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M2.5 2h11a1 1 0 0 1 1 1v7a1 1 0 0 1-1 1H6l-3 2.6V11H2.5a1 1 0 0 1-1-1V3a1 1 0 0 1 1-1zM7.1 4.2h1.8v3.6H7.1zm0 4.4h1.8v1.6H7.1z'/%3E%3C/svg%3E");
|
|
82
|
+
}
|
|
83
|
+
.admonition[data-kind='warning'] {
|
|
84
|
+
--adm-accent: #d29922;
|
|
85
|
+
--adm-label: 'Warning';
|
|
86
|
+
--adm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M8 1.3 15 14H1zM7.1 6h1.8v4H7.1zm0 5h1.8v1.6H7.1z'/%3E%3C/svg%3E");
|
|
87
|
+
}
|
|
88
|
+
.admonition[data-kind='caution'] {
|
|
89
|
+
--adm-accent: #e5534b;
|
|
90
|
+
--adm-label: 'Caution';
|
|
91
|
+
--adm-icon: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M5 1.3h6l4 4v6l-4 4H5l-4-4V5.3zM7.1 4h1.8v5H7.1zm0 6h1.8v1.6H7.1z'/%3E%3C/svg%3E");
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
/* Positioned so the icon and untitled-name pseudo-elements anchor to the row. */
|
|
95
|
+
.admonition :global(.admonition-title) {
|
|
96
|
+
position: relative;
|
|
97
|
+
font-weight: 600;
|
|
98
|
+
color: var(--adm-accent);
|
|
99
|
+
padding-left: 1.7em;
|
|
100
|
+
min-height: 1.4em;
|
|
101
|
+
line-height: 1.4em;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/* The alert badge is static chrome, never a caret target. */
|
|
105
|
+
.admonition[data-alert-source='github'] :global(.admonition-title) {
|
|
106
|
+
user-select: none;
|
|
107
|
+
cursor: default;
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
/* Masked, not colored, so one glyph recolors per kind. */
|
|
111
|
+
.admonition :global(.admonition-title)::before {
|
|
112
|
+
content: '';
|
|
113
|
+
position: absolute;
|
|
114
|
+
left: 0;
|
|
115
|
+
top: 2px;
|
|
116
|
+
width: 1.1em;
|
|
117
|
+
height: 1.4em;
|
|
118
|
+
background-color: var(--adm-accent);
|
|
119
|
+
-webkit-mask: var(--adm-icon) center / 1.1em no-repeat;
|
|
120
|
+
mask: var(--adm-icon) center / 1.1em no-repeat;
|
|
121
|
+
pointer-events: none;
|
|
122
|
+
user-select: none;
|
|
123
|
+
}
|
|
124
|
+
|
|
125
|
+
/* The empty title leaf holds a lone <br>, which pre-wrap paints as a trailing empty
|
|
126
|
+
line; capping to one row keeps the title-to-body gap equal to the titled variants. */
|
|
127
|
+
.admonition[data-title-empty='true'] :global(.admonition-title) {
|
|
128
|
+
height: 1.4em;
|
|
129
|
+
}
|
|
130
|
+
|
|
131
|
+
/* Absolute, not inline: the empty leaf's <br> would wrap generated content onto a
|
|
132
|
+
second row and break titled/untitled geometry parity. */
|
|
133
|
+
.admonition[data-title-empty='true'] :global(.admonition-title)::after {
|
|
134
|
+
content: var(--adm-label);
|
|
135
|
+
position: absolute;
|
|
136
|
+
left: 1.7em;
|
|
137
|
+
top: 2px;
|
|
138
|
+
opacity: 0.72;
|
|
139
|
+
font-weight: 600;
|
|
140
|
+
line-height: 1.4em;
|
|
141
|
+
pointer-events: none;
|
|
142
|
+
user-select: none;
|
|
143
|
+
}
|
|
144
|
+
</style>
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type NodeView } from '../../plugin';
|
|
2
|
+
type $$ComponentProps = {
|
|
3
|
+
node: NodeView;
|
|
4
|
+
index: number;
|
|
5
|
+
myPath?: number[];
|
|
6
|
+
};
|
|
7
|
+
declare const AdmonitionBlock: import("svelte").Component<$$ComponentProps, {
|
|
8
|
+
containerApi: import("../../plugin").ContainerBlockComponent;
|
|
9
|
+
}, "">;
|
|
10
|
+
type AdmonitionBlock = ReturnType<typeof AdmonitionBlock>;
|
|
11
|
+
export default AdmonitionBlock;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export interface AdmonitionsOptions {
|
|
2
|
+
/**
|
|
3
|
+
* Rewrite pasted GitHub-alert blockquotes to `:::name` source before the parse
|
|
4
|
+
* (default false). Off, they stay GitHub bytes and render as `githubAlert`.
|
|
5
|
+
*/
|
|
6
|
+
convertAlertsOnPaste?: boolean;
|
|
7
|
+
}
|
|
8
|
+
export declare function registerAdmonitions(options?: AdmonitionsOptions): void;
|