@dxos/ui-editor 0.14.0 → 0.16.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.
Files changed (27) hide show
  1. package/dist/lib/chunk-diff.mjs +14 -3
  2. package/dist/lib/chunk-diff.mjs.map +1 -1
  3. package/dist/lib/headless.mjs +1 -2
  4. package/dist/lib/index.mjs +146 -23
  5. package/dist/lib/index.mjs.map +1 -1
  6. package/dist/types/src/extensions/language/index.d.ts +1 -0
  7. package/dist/types/src/extensions/language/index.d.ts.map +1 -1
  8. package/dist/types/src/extensions/language/markdown/styles.d.ts.map +1 -1
  9. package/dist/types/src/extensions/language/turtle/index.d.ts +2 -0
  10. package/dist/types/src/extensions/language/turtle/index.d.ts.map +1 -0
  11. package/dist/types/src/extensions/language/turtle/turtle.d.ts +45 -0
  12. package/dist/types/src/extensions/language/turtle/turtle.d.ts.map +1 -0
  13. package/dist/types/src/extensions/language/turtle/turtle.test.d.ts +2 -0
  14. package/dist/types/src/extensions/language/turtle/turtle.test.d.ts.map +1 -0
  15. package/dist/types/src/extensions/state/selection.d.ts.map +1 -1
  16. package/dist/types/src/extensions/widgets/widgets.d.ts.map +1 -1
  17. package/dist/types/tsconfig.tsbuildinfo +1 -1
  18. package/package.json +24 -24
  19. package/src/extensions/language/index.ts +1 -0
  20. package/src/extensions/language/markdown/styles.ts +2 -0
  21. package/src/extensions/language/turtle/index.ts +5 -0
  22. package/src/extensions/language/turtle/turtle.test.ts +106 -0
  23. package/src/extensions/language/turtle/turtle.ts +183 -0
  24. package/src/extensions/state/selection.test.ts +70 -2
  25. package/src/extensions/state/selection.ts +19 -4
  26. package/src/extensions/widgets/object-links.test.ts +17 -1
  27. package/src/extensions/widgets/widgets.ts +18 -17
@@ -4,18 +4,18 @@ import { Decoration, EditorView, EditorView as EditorView$1, GutterMarker, Match
4
4
  import { Tag, highlightCode, styleTags, tags, tags as tags$1 } from "@lezer/highlight";
5
5
  import { getHashStyles, getSize, mx, surfaceShadow } from "@dxos/ui-theme";
6
6
  import { hexToHue, isNonNullable, isTruthy, safeParseJson, trim } from "@dxos/util";
7
- import { DeferredTask, Event, addEventListener, combine, debounce, debounceAndThrottle, sleep, throttle } from "@dxos/async";
8
7
  import { log } from "@dxos/log";
9
8
  import { diff } from "@codemirror/merge";
10
9
  import { next } from "@automerge/automerge";
11
10
  import { Doc } from "@dxos/echo-doc";
12
11
  import { fromCursor, toCursor } from "@dxos/echo-client";
12
+ import { DeferredTask, Event, addEventListener, combine, debounce, debounceAndThrottle, sleep, throttle } from "@dxos/async";
13
13
  import { Context } from "@dxos/context";
14
14
  import { invariant } from "@dxos/invariant";
15
15
  import { unpackJson } from "@dxos/protocols/buf";
16
16
  import { autocompletion, closeBrackets, closeBracketsKeymap, completionKeymap, snippet } from "@codemirror/autocomplete";
17
17
  import { defaultKeymap, history, historyKeymap, indentWithTab, standardKeymap } from "@codemirror/commands";
18
- import { HighlightStyle, LanguageDescription, LanguageSupport, StreamLanguage, bracketMatching, codeFolding, ensureSyntaxTree, foldEffect, foldGutter, foldNodeProp, foldedRanges, getIndentUnit, syntaxHighlighting, syntaxTree, syntaxTreeAvailable, unfoldEffect } from "@codemirror/language";
18
+ import { HighlightStyle, LanguageDescription, LanguageSupport, StreamLanguage, bracketMatching, codeFolding, ensureSyntaxTree, foldEffect, foldGutter, foldNodeProp, foldedRanges, getIndentUnit, syntaxHighlighting, syntaxTree, unfoldEffect } from "@codemirror/language";
19
19
  import { searchKeymap } from "@codemirror/search";
20
20
  import { vscodeDarkStyle, vscodeLightStyle } from "@uiw/codemirror-theme-vscode";
21
21
  import defaultsDeep from "lodash.defaultsdeep";
@@ -3251,7 +3251,7 @@ var snippets = ({ delay = 75, items = defaultItems } = {}) => {
3251
3251
  //#endregion
3252
3252
  //#region src/extensions/language/datalog/datalog.ts
3253
3253
  /** Token names emitted by the tokenizer, mapped to standard tags so the editor's highlight style colours them. */
3254
- var tokenTable = {
3254
+ var tokenTable$1 = {
3255
3255
  lineComment: tags$1.lineComment,
3256
3256
  blockComment: tags$1.blockComment,
3257
3257
  string: tags$1.string,
@@ -3277,7 +3277,7 @@ var AGGREGATES = /* @__PURE__ */ new Set([
3277
3277
  "max",
3278
3278
  "sum"
3279
3279
  ]);
3280
- var PUNCTUATION = {
3280
+ var PUNCTUATION$1 = {
3281
3281
  ",": "separator",
3282
3282
  ".": "terminator",
3283
3283
  "(": "paren",
@@ -3293,7 +3293,7 @@ var skipBlockComment = (stream, state) => {
3293
3293
  else stream.pos += 2;
3294
3294
  return "blockComment";
3295
3295
  };
3296
- var token = (stream, state) => {
3296
+ var token$1 = (stream, state) => {
3297
3297
  if (state.comment) return skipBlockComment(stream, state);
3298
3298
  if (stream.eatSpace()) return null;
3299
3299
  if (stream.match("%") || stream.match("//")) {
@@ -3336,7 +3336,7 @@ var token = (stream, state) => {
3336
3336
  }
3337
3337
  const char = stream.next();
3338
3338
  if (char === ".") state.head = true;
3339
- return (char ? PUNCTUATION[char] : void 0) ?? "invalid";
3339
+ return (char ? PUNCTUATION$1[char] : void 0) ?? "invalid";
3340
3340
  };
3341
3341
  /** Datalog in the `@dxos/datalog` dialect (Soufflé-like rules, `not`/`!` negation, `count : { … }` aggregates). */
3342
3342
  var datalogLanguage = StreamLanguage.define({
@@ -3346,8 +3346,8 @@ var datalogLanguage = StreamLanguage.define({
3346
3346
  head: true
3347
3347
  }),
3348
3348
  copyState: (state) => ({ ...state }),
3349
- token,
3350
- tokenTable,
3349
+ token: token$1,
3350
+ tokenTable: tokenTable$1,
3351
3351
  languageData: {
3352
3352
  commentTokens: {
3353
3353
  line: "%",
@@ -5964,7 +5964,7 @@ var createWidgetMap = (setWidgets, debug = false) => {
5964
5964
  }
5965
5965
  };
5966
5966
  };
5967
- /** Ceiling on parsing ahead of the background parser; past it `parseCompletionPlugin` rebuilds. */
5967
+ /** Ceiling on parsing ahead of the background parser; past it `parseProgressPlugin` rebuilds. */
5968
5968
  var PARSE_BUDGET = 50;
5969
5969
  /**
5970
5970
  * Creates widget decorations over `range` by handing each claimed node to the matchers, then the
@@ -6150,20 +6150,21 @@ var scrollJumpMonitor = (() => {
6150
6150
  } });
6151
6151
  })();
6152
6152
  /**
6153
- * Re-decorate once the whole document has parsed. `StateField.create` (and incremental rebuilds) only
6154
- * see the syntax tree parsed so far, so a block past CodeMirror's initial background-parse window is
6155
- * not decorated until some later transaction — previously it appeared only after the first edit. This
6156
- * dispatches a one-shot rebuild when the full tree becomes available (re-armed on each edit).
6153
+ * Re-decorate whenever the syntax tree changes. `StateField.create` (and incremental rebuilds) see
6154
+ * only the tree parsed so far: background parsing extends it later, and a parse that runs out of time
6155
+ * skips ranges outside the viewport and parses them as they scroll in, neither with a document change.
6156
+ * Edits rebuild too: the incremental merge duplicates a widget appended after the last one (see the
6157
+ * `xml-tags` invariant tests), and this rebuild settles it. Rebuilds within one task coalesce.
6157
6158
  */
6158
- var parseCompletionPlugin = ViewPlugin.fromClass(class {
6159
- #rebuiltForLength = -1;
6159
+ var parseProgressPlugin = ViewPlugin.fromClass(class {
6160
+ #pending = false;
6160
6161
  update(update) {
6161
- if (update.docChanged) this.#rebuiltForLength = -1;
6162
- const length = update.state.doc.length;
6163
- if (this.#rebuiltForLength !== length && syntaxTreeAvailable(update.state, length)) {
6164
- this.#rebuiltForLength = length;
6165
- queueMicrotask(() => update.view.dispatch({ effects: widgetRebuildEffect.of(null) }));
6166
- }
6162
+ if (this.#pending || syntaxTree(update.startState) === syntaxTree(update.state)) return;
6163
+ this.#pending = true;
6164
+ queueMicrotask(() => {
6165
+ this.#pending = false;
6166
+ update.view.dispatch({ effects: widgetRebuildEffect.of(null) });
6167
+ });
6167
6168
  }
6168
6169
  });
6169
6170
  /**
@@ -6288,7 +6289,7 @@ var widgetsCore = [
6288
6289
  for (const effect of update.transactions.flatMap((tr) => tr.effects)) if (effect.is(widgetUpdateEffect)) notifier.updated(effect.value.id, widgetStateMap[effect.value.id]);
6289
6290
  }
6290
6291
  }),
6291
- parseCompletionPlugin,
6292
+ parseProgressPlugin,
6292
6293
  navigationEffectPlugin,
6293
6294
  keyHandlers,
6294
6295
  scrollJumpMonitor
@@ -6712,6 +6713,7 @@ var formattingStyles = EditorView$1.theme({
6712
6713
  },
6713
6714
  "& .cm-code-inline": {
6714
6715
  fontFamily: fontMono,
6716
+ fontSize: "0.9em",
6715
6717
  height: "24px",
6716
6718
  alignItems: "center",
6717
6719
  overflow: "hidden",
@@ -7528,6 +7530,127 @@ var markdownSubstitutions = {
7528
7530
  */
7529
7531
  var markdownBindings = { "Alt--": "—" };
7530
7532
  //#endregion
7533
+ //#region src/extensions/language/turtle/turtle.ts
7534
+ /** Token names emitted by the tokenizer, mapped to standard tags so the editor's highlight style colours them. */
7535
+ var tokenTable = {
7536
+ comment: tags$1.lineComment,
7537
+ keyword: tags$1.keyword,
7538
+ iri: tags$1.url,
7539
+ prefix: tags$1.namespace,
7540
+ name: tags$1.propertyName,
7541
+ blank: tags$1.special(tags$1.variableName),
7542
+ string: tags$1.string,
7543
+ language: tags$1.annotation,
7544
+ datatype: tags$1.typeOperator,
7545
+ number: tags$1.number,
7546
+ bool: tags$1.bool,
7547
+ terminator: tags$1.punctuation,
7548
+ separator: tags$1.separator,
7549
+ bracket: tags$1.squareBracket,
7550
+ paren: tags$1.paren,
7551
+ brace: tags$1.brace,
7552
+ invalid: tags$1.invalid
7553
+ };
7554
+ var PUNCTUATION = {
7555
+ ".": "terminator",
7556
+ ";": "separator",
7557
+ ",": "separator",
7558
+ "[": "bracket",
7559
+ "]": "bracket",
7560
+ "(": "paren",
7561
+ ")": "paren",
7562
+ "{": "brace",
7563
+ "}": "brace"
7564
+ };
7565
+ var KEYWORDS = /^(?:PREFIX|BASE|GRAPH)\b/i;
7566
+ var PREFIXED_NAME = /^([A-Za-z][\w.-]*)?:/;
7567
+ var LOCAL_NAME = /^(?:[\w\-%]|\.(?=[\w\-%]))+/;
7568
+ var skipLongString = (stream, state) => {
7569
+ const delimiter = state.long ?? "\"\"\"";
7570
+ if (stream.skipTo(delimiter)) {
7571
+ stream.pos += delimiter.length;
7572
+ state.long = void 0;
7573
+ } else stream.skipToEnd();
7574
+ return "string";
7575
+ };
7576
+ var token = (stream, state) => {
7577
+ if (state.long) return skipLongString(stream, state);
7578
+ if (state.local) {
7579
+ state.local = false;
7580
+ if (stream.match(LOCAL_NAME)) return "name";
7581
+ }
7582
+ if (stream.eatSpace()) return null;
7583
+ if (stream.match("#")) {
7584
+ stream.skipToEnd();
7585
+ return "comment";
7586
+ }
7587
+ const long = stream.match("\"\"\"") ? "\"\"\"" : stream.match("'''") ? "'''" : void 0;
7588
+ if (long) {
7589
+ state.long = long;
7590
+ return skipLongString(stream, state);
7591
+ }
7592
+ const quote = stream.peek();
7593
+ if (quote === "\"" || quote === "'") {
7594
+ stream.next();
7595
+ let escaped = false;
7596
+ let char;
7597
+ while ((char = stream.next()) != null) {
7598
+ if (char === quote && !escaped) return "string";
7599
+ escaped = !escaped && char === "\\";
7600
+ }
7601
+ return "invalid";
7602
+ }
7603
+ if (stream.match(/^<[^<>"{}|^`\\\s]*>/)) return "iri";
7604
+ if (stream.match(/^@(?:prefix|base)\b/)) return "keyword";
7605
+ if (stream.match(/^@[A-Za-z]+(?:-[A-Za-z0-9]+)*/)) return "language";
7606
+ if (stream.match("^^")) return "datatype";
7607
+ if (stream.match(/^_:[\w.-]*\w/)) return "blank";
7608
+ if (stream.match(/^[+-]?(?:\d+\.?\d*(?:[eE][+-]?\d+)?|\.\d+(?:[eE][+-]?\d+)?)/)) return "number";
7609
+ if (stream.match(/^(?:true|false)\b/)) return "bool";
7610
+ if (stream.match(KEYWORDS)) return "keyword";
7611
+ if (stream.match(/^a(?=[\s<[(_"'])/)) return "keyword";
7612
+ if (stream.match(PREFIXED_NAME)) {
7613
+ state.local = true;
7614
+ return "prefix";
7615
+ }
7616
+ if (stream.match(LOCAL_NAME)) return "name";
7617
+ const char = stream.next();
7618
+ return (char ? PUNCTUATION[char] : void 0) ?? "invalid";
7619
+ };
7620
+ /** RDF 1.1 Turtle, and TriG's `{ … }` graph blocks, which Turtle's tokens cover otherwise. */
7621
+ var turtleLanguage = StreamLanguage.define({
7622
+ name: "turtle",
7623
+ startState: () => ({ local: false }),
7624
+ copyState: (state) => ({ ...state }),
7625
+ token,
7626
+ tokenTable,
7627
+ languageData: {
7628
+ commentTokens: { line: "#" },
7629
+ closeBrackets: { brackets: [
7630
+ "(",
7631
+ "[",
7632
+ "{",
7633
+ "\"",
7634
+ "'",
7635
+ "<"
7636
+ ] }
7637
+ }
7638
+ });
7639
+ /** Turtle (and TriG) language support; pair with the theme's syntax highlighting to colour it. */
7640
+ var turtle = () => new LanguageSupport(turtleLanguage);
7641
+ /**
7642
+ * Highlights Turtle or TriG without an editor, one array of spans per line, for read-only snippets where mounting
7643
+ * a CodeMirror view per snippet would cost too much.
7644
+ */
7645
+ var highlightTurtle = (source, highlighter) => {
7646
+ const lines = [[]];
7647
+ highlightCode(source, turtleLanguage.parser.parse(source), highlighter, (text, classes) => lines[lines.length - 1].push({
7648
+ text,
7649
+ classes
7650
+ }), () => lines.push([]));
7651
+ return lines;
7652
+ };
7653
+ //#endregion
7531
7654
  //#region src/extensions/language/xml/extended-markdown.ts
7532
7655
  /**
7533
7656
  * Extended markdown parser with mixed parser for custom rendering of XML tags.
@@ -11976,6 +12099,6 @@ var walkthroughSidebarTheme = EditorView$1.theme({
11976
12099
  }
11977
12100
  });
11978
12101
  //#endregion
11979
- export { AnchorWidget, CONTENT_WIDTH, ChangeBarMarker, Cursor, EditorSelection, EditorSelectionStateSchema, EditorState, EditorView, GUTTER_WIDTH, Inline, InputModeExtensions, List, OBJECT_URL_SCHEMES, PROMPT_ELEMENT, PendingTextStreamer, PlaceholderWidget, RemoteSelectionsDecorator, SpaceAwarenessProvider, StubWidget, Tree, WIDGET_ROOT_ATTRIBUTE, addBlockquote, addBookmark, addCodeblock, addLink, addList, addStyle, annotations, appendPendingText, assistant, autoScroll, autoScrollEffect, autocomplete, automerge, awareness, awarenessProvider, blast, blockDrag, blockSelection, blockSelectionField, blockSelectionHighlight, blocks, bookmarks, busy, busyState, canDragItem, cancelPending, cancelPendingText, changeBarGutter, changeBars, cherryPickHunk, clearAnalysis, clearBookmarks, clientRectsFor, commands, comments, commentsState, commitPending, compactSlots, computeCharHunks, computeDocChanges, computeHunks, computeWordHunks, convertList, convertTreeToJson, crawler, crawlerActiveEffect, crawlerLineEffect, createBasicExtensions, createBlockDrag, createBlockSelection, createBlockSelectionHighlight, createComment, createCrawler, createDataExtensions, createEditorStateTransaction, createMarkdownExtensions, createMermaidExtensions, createThemeExtensions, createTurnSource, createWidget, datalog, datalogLanguage, debugDispatcher, debugNodeLogger, debugTree, decorateMarkdown, decorationSetToArray, defaultExtensions, defaultOptions, defaultStyles, defaultThemeSlots, deleteItem, diffBlockTheme, diffBlocks, diffHighlightStyles, diffHunks, diffView, documentId, documentSlots, dropFile, editorClassNames, editorInputMode, editorPendingTextSink, escapeLinkLabel, escapeRegExpSource, exitEmptyItem, exitItemAnnotation, extendedMarkdown, fader, filterChars, findBlocks, flattenRect, focus, focusField, foldTurns, folding, formattingEquals, formattingKeymap, formattingListener, fullWidth, getActionScope, getDropIndent, getExtent, getFormatting, getItemText, getListItemContent, getRange, getSelectedBlocks, getWidgetState, getXmlInnerText, getXmlTextChild, ghost, groupHunks, grow, hashtag, highlightLines, image, indentItemLess, indentItemMore, initialSync, inlineEdit, insertAtCursor, insertAtLineStart, insertTable, insertTaskAtLine, isBusy, isItemLink, isRangeVisible, isWidgetLink, itemToJSON, join, json, keymap, languageLabel, lineSpacing, linkMatchFacet, linkTooltip, linkWidgets, listItemToString, listener, logChanges, markStale, markdownBindings, markdownBlockOps, markdownHighlightStyle, markdownSubstitutions, markdownTags, markdownTagsExtensions, markerButtons, markerMark, markerText, markerTheme, matchCompletion, matchHosts, matchPattern, matchSchemes, memoryPendingTextSink, mention, mergeRanges, mermaidHighlightStyle, mermaidHighlighting, mermaidLanguageDescription, mobileSlots, modalStateEffect, modalStateField, moveBlocks, moveBlocksSpec, moveItemDown, moveItemUp, navigateNextEffect, navigatePreviousEffect, objectLinks, outliner, outlinerDnd, outlinerTree, overlap, pairMarkupHunks, parseDiff, parseDiffFence, parseFenceInfo, pendingText, pendingTextState, placeholder, pos, posAnalysisField, posDecorations, posPopover, posSpans, posTheme, posTokenAt, processEditorPayload, rebaseHunks, rebaseHunksWith, releaseBlockHeight, removeBlockquote, removeBookmark, removeCodeblock, removeLink, removeList, removeStyle, replaceBlocks, replaceBlocksSpec, replaceItemWithLink, restoreEditorState, revertHunk, scrollCommentIntoView, scrollPastEnd, scrollToLine, scrollbarAutohide, scroller, selectAllItems, selectDown, selectNoneItems, selectUp, selectionState, setAnalysis, setBase, setBlockSelection, setBlockquote, setBusy, setComments, setHeading, setLinkWidgetState, setPendingAnchor, setPendingFinal, setPendingInterim, setSelection, setStyle, singleValueFacet, snippets, spanDiverged, staticCompletion, submit, submitOnModEnter, substitutions, suggestChanges, suggestionKey, suggestions, suggestionsOverlay, syncLinkLabels, tabbable, table, tags, textRange, toggleBlockSelection, toggleBlockquote, toggleCodeblock, toggleEmphasis, toggleInlineCode, toggleList, toggleStrikethrough, toggleStrong, toggleStyle, toggleTask, trackChanges, traverse, treeFacet, turnFolding, typeahead, typewriter, typewriterBypass, typewriterDrainingEffect, unfoldTurns, walkthroughOutline, walkthroughSidebar, walkthroughTheme, widgetContextEffect, widgetHost, widgetId, widgetMatchersFacet, widgetRebuildEffect, widgetResetEffect, widgetUpdateEffect, widgetsCore, wrapWithCatch, xmlBlockDecoration, xmlElementLength, xmlFormatting, xmlTags };
12102
+ export { AnchorWidget, CONTENT_WIDTH, ChangeBarMarker, Cursor, EditorSelection, EditorSelectionStateSchema, EditorState, EditorView, GUTTER_WIDTH, Inline, InputModeExtensions, List, OBJECT_URL_SCHEMES, PROMPT_ELEMENT, PendingTextStreamer, PlaceholderWidget, RemoteSelectionsDecorator, SpaceAwarenessProvider, StubWidget, Tree, WIDGET_ROOT_ATTRIBUTE, addBlockquote, addBookmark, addCodeblock, addLink, addList, addStyle, annotations, appendPendingText, assistant, autoScroll, autoScrollEffect, autocomplete, automerge, awareness, awarenessProvider, blast, blockDrag, blockSelection, blockSelectionField, blockSelectionHighlight, blocks, bookmarks, busy, busyState, canDragItem, cancelPending, cancelPendingText, changeBarGutter, changeBars, cherryPickHunk, clearAnalysis, clearBookmarks, clientRectsFor, commands, comments, commentsState, commitPending, compactSlots, computeCharHunks, computeDocChanges, computeHunks, computeWordHunks, convertList, convertTreeToJson, crawler, crawlerActiveEffect, crawlerLineEffect, createBasicExtensions, createBlockDrag, createBlockSelection, createBlockSelectionHighlight, createComment, createCrawler, createDataExtensions, createEditorStateTransaction, createMarkdownExtensions, createMermaidExtensions, createThemeExtensions, createTurnSource, createWidget, datalog, datalogLanguage, debugDispatcher, debugNodeLogger, debugTree, decorateMarkdown, decorationSetToArray, defaultExtensions, defaultOptions, defaultStyles, defaultThemeSlots, deleteItem, diffBlockTheme, diffBlocks, diffHighlightStyles, diffHunks, diffView, documentId, documentSlots, dropFile, editorClassNames, editorInputMode, editorPendingTextSink, escapeLinkLabel, escapeRegExpSource, exitEmptyItem, exitItemAnnotation, extendedMarkdown, fader, filterChars, findBlocks, flattenRect, focus, focusField, foldTurns, folding, formattingEquals, formattingKeymap, formattingListener, fullWidth, getActionScope, getDropIndent, getExtent, getFormatting, getItemText, getListItemContent, getRange, getSelectedBlocks, getWidgetState, getXmlInnerText, getXmlTextChild, ghost, groupHunks, grow, hashtag, highlightLines, highlightTurtle, image, indentItemLess, indentItemMore, initialSync, inlineEdit, insertAtCursor, insertAtLineStart, insertTable, insertTaskAtLine, isBusy, isItemLink, isRangeVisible, isWidgetLink, itemToJSON, join, json, keymap, languageLabel, lineSpacing, linkMatchFacet, linkTooltip, linkWidgets, listItemToString, listener, logChanges, markStale, markdownBindings, markdownBlockOps, markdownHighlightStyle, markdownSubstitutions, markdownTags, markdownTagsExtensions, markerButtons, markerMark, markerText, markerTheme, matchCompletion, matchHosts, matchPattern, matchSchemes, memoryPendingTextSink, mention, mergeRanges, mermaidHighlightStyle, mermaidHighlighting, mermaidLanguageDescription, mobileSlots, modalStateEffect, modalStateField, moveBlocks, moveBlocksSpec, moveItemDown, moveItemUp, navigateNextEffect, navigatePreviousEffect, objectLinks, outliner, outlinerDnd, outlinerTree, overlap, pairMarkupHunks, parseDiff, parseDiffFence, parseFenceInfo, pendingText, pendingTextState, placeholder, pos, posAnalysisField, posDecorations, posPopover, posSpans, posTheme, posTokenAt, processEditorPayload, rebaseHunks, rebaseHunksWith, releaseBlockHeight, removeBlockquote, removeBookmark, removeCodeblock, removeLink, removeList, removeStyle, replaceBlocks, replaceBlocksSpec, replaceItemWithLink, restoreEditorState, revertHunk, scrollCommentIntoView, scrollPastEnd, scrollToLine, scrollbarAutohide, scroller, selectAllItems, selectDown, selectNoneItems, selectUp, selectionState, setAnalysis, setBase, setBlockSelection, setBlockquote, setBusy, setComments, setHeading, setLinkWidgetState, setPendingAnchor, setPendingFinal, setPendingInterim, setSelection, setStyle, singleValueFacet, snippets, spanDiverged, staticCompletion, submit, submitOnModEnter, substitutions, suggestChanges, suggestionKey, suggestions, suggestionsOverlay, syncLinkLabels, tabbable, table, tags, textRange, toggleBlockSelection, toggleBlockquote, toggleCodeblock, toggleEmphasis, toggleInlineCode, toggleList, toggleStrikethrough, toggleStrong, toggleStyle, toggleTask, trackChanges, traverse, treeFacet, turnFolding, turtle, turtleLanguage, typeahead, typewriter, typewriterBypass, typewriterDrainingEffect, unfoldTurns, walkthroughOutline, walkthroughSidebar, walkthroughTheme, widgetContextEffect, widgetHost, widgetId, widgetMatchersFacet, widgetRebuildEffect, widgetResetEffect, widgetUpdateEffect, widgetsCore, wrapWithCatch, xmlBlockDecoration, xmlElementLength, xmlFormatting, xmlTags };
11980
12103
 
11981
12104
  //# sourceMappingURL=index.mjs.map