@dxos/react-ui-editor 0.4.8-main.beadd4b → 0.4.8-main.c1580f6

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 (32) hide show
  1. package/dist/lib/browser/index.mjs +129 -61
  2. package/dist/lib/browser/index.mjs.map +3 -3
  3. package/dist/lib/browser/meta.json +1 -1
  4. package/dist/types/src/components/Toolbar/Toolbar.d.ts +1 -1
  5. package/dist/types/src/components/Toolbar/Toolbar.d.ts.map +1 -1
  6. package/dist/types/src/components/Toolbar/Toolbar.stories.d.ts +1 -1
  7. package/dist/types/src/components/Toolbar/Toolbar.stories.d.ts.map +1 -1
  8. package/dist/types/src/extensions/comments.d.ts.map +1 -1
  9. package/dist/types/src/extensions/factories.d.ts +3 -0
  10. package/dist/types/src/extensions/factories.d.ts.map +1 -1
  11. package/dist/types/src/extensions/markdown/bundle.d.ts.map +1 -1
  12. package/dist/types/src/extensions/markdown/formatting.d.ts +3 -3
  13. package/dist/types/src/extensions/markdown/formatting.d.ts.map +1 -1
  14. package/dist/types/src/extensions/modes.d.ts +1 -1
  15. package/dist/types/src/extensions/modes.d.ts.map +1 -1
  16. package/dist/types/src/hooks/useDocAccessor.d.ts +4 -2
  17. package/dist/types/src/hooks/useDocAccessor.d.ts.map +1 -1
  18. package/dist/types/src/hooks/useTextEditor.d.ts.map +1 -1
  19. package/dist/types/src/themes/default.d.ts.map +1 -1
  20. package/package.json +25 -24
  21. package/src/components/TextEditor/TextEditor.tsx +2 -2
  22. package/src/components/Toolbar/Toolbar.stories.tsx +23 -25
  23. package/src/components/Toolbar/Toolbar.tsx +18 -6
  24. package/src/extensions/automerge/automerge.ts +4 -4
  25. package/src/extensions/comments.ts +2 -2
  26. package/src/extensions/factories.ts +30 -7
  27. package/src/extensions/markdown/bundle.ts +8 -11
  28. package/src/extensions/markdown/formatting.ts +15 -11
  29. package/src/extensions/modes.ts +8 -1
  30. package/src/hooks/useDocAccessor.ts +8 -2
  31. package/src/hooks/useTextEditor.ts +3 -0
  32. package/src/themes/default.ts +24 -8
@@ -24,7 +24,7 @@ var translations_default = [
24
24
  ];
25
25
 
26
26
  // packages/ui/react-ui-editor/src/index.ts
27
- import { keymap as keymap10 } from "@codemirror/view";
27
+ import { keymap as keymap11 } from "@codemirror/view";
28
28
  import { tags as tags2 } from "@lezer/highlight";
29
29
  import { TextKind } from "@dxos/protocols/proto/dxos/echo/model/text";
30
30
  import { Doc, YText, YXmlFragment } from "@dxos/text-model";
@@ -475,13 +475,13 @@ var automerge = (accessor) => {
475
475
  ViewPlugin.fromClass(class {
476
476
  constructor(_view) {
477
477
  this._view = _view;
478
- accessor.handle.addListener("change", this._handleChange.bind(this));
478
+ this._handleChange = () => {
479
+ syncer.reconcile(this._view, false);
480
+ };
481
+ accessor.handle.addListener("change", this._handleChange);
479
482
  }
480
483
  destroy() {
481
- accessor.handle.removeListener("change", this._handleChange.bind(this));
482
- }
483
- _handleChange() {
484
- syncer.reconcile(this._view, false);
484
+ accessor.handle.removeListener("change", this._handleChange);
485
485
  }
486
486
  }),
487
487
  // Reconcile local updates.
@@ -1832,14 +1832,14 @@ var focusComment = (view, id, center = true) => {
1832
1832
  });
1833
1833
  }
1834
1834
  };
1835
- var useComments = (view, id, comments2 = []) => {
1835
+ var useComments = (view, id, comments2) => {
1836
1836
  useEffect(() => {
1837
1837
  if (view) {
1838
1838
  if (id === view.state.facet(documentId)) {
1839
1839
  view.dispatch({
1840
1840
  effects: setComments.of({
1841
1841
  id,
1842
- comments: comments2
1842
+ comments: comments2 ?? []
1843
1843
  })
1844
1844
  });
1845
1845
  }
@@ -1952,11 +1952,12 @@ var dnd = () => {
1952
1952
  };
1953
1953
 
1954
1954
  // packages/ui/react-ui-editor/src/extensions/factories.ts
1955
- import { closeBrackets } from "@codemirror/autocomplete";
1956
- import { history } from "@codemirror/commands";
1955
+ import { closeBrackets, closeBracketsKeymap } from "@codemirror/autocomplete";
1956
+ import { history, historyKeymap, indentWithTab, standardKeymap } from "@codemirror/commands";
1957
1957
  import { bracketMatching } from "@codemirror/language";
1958
+ import { searchKeymap } from "@codemirror/search";
1958
1959
  import { EditorState } from "@codemirror/state";
1959
- import { EditorView as EditorView10, crosshairCursor, drawSelection, dropCursor, highlightActiveLine, lineNumbers, placeholder, scrollPastEnd } from "@codemirror/view";
1960
+ import { EditorView as EditorView10, crosshairCursor, drawSelection, dropCursor, highlightActiveLine, highlightSpecialChars, keymap as keymap5, lineNumbers, placeholder, scrollPastEnd } from "@codemirror/view";
1960
1961
  import defaultsDeep2 from "lodash.defaultsdeep";
1961
1962
  import { generateName } from "@dxos/display-name";
1962
1963
  import { log as log7 } from "@dxos/log";
@@ -2164,41 +2165,59 @@ var defaultTheme = {
2164
2165
  * </div>
2165
2166
  * </div
2166
2167
  */
2167
- ".cm-panels": {
2168
- border: `1px solid ${get3(tokens, "extend.colors.neutral.200")}`
2169
- },
2168
+ ".cm-panels": {},
2170
2169
  ".cm-panel": {
2171
- background: get3(tokens, "extend.colors.neutral.50"),
2172
2170
  fontFamily: get3(tokens, "fontFamily.body", []).join(",")
2173
2171
  },
2172
+ ".cm-panel input[type=checkbox]": {
2173
+ marginRight: "0.4rem !important"
2174
+ },
2175
+ "&light .cm-panel": {
2176
+ background: get3(tokens, "extend.colors.neutral.50")
2177
+ },
2178
+ "&dark .cm-panel": {
2179
+ background: get3(tokens, "extend.colors.neutral.850")
2180
+ },
2174
2181
  ".cm-button": {
2175
2182
  margin: "4px",
2176
2183
  fontFamily: get3(tokens, "fontFamily.body", []).join(","),
2177
- background: get3(tokens, "extend.colors.neutral.100"),
2178
2184
  backgroundImage: "none",
2179
2185
  border: "none",
2186
+ "&:active": {
2187
+ backgroundImage: "none"
2188
+ }
2189
+ },
2190
+ "&light .cm-button": {
2191
+ background: get3(tokens, "extend.colors.neutral.100"),
2180
2192
  "&:hover": {
2181
2193
  background: get3(tokens, "extend.colors.neutral.200")
2182
2194
  },
2183
2195
  "&:active": {
2184
- background: get3(tokens, "extend.colors.neutral.300"),
2185
- backgroundImage: "none"
2196
+ background: get3(tokens, "extend.colors.neutral.300")
2186
2197
  }
2187
2198
  },
2188
- ".cm-panel input[type=checkbox]": {
2189
- marginRight: "0.4rem !important"
2199
+ "&dark .cm-button": {
2200
+ background: get3(tokens, "extend.colors.neutral.800"),
2201
+ "&:hover": {
2202
+ background: get3(tokens, "extend.colors.neutral.700")
2203
+ },
2204
+ "&:active": {
2205
+ background: get3(tokens, "extend.colors.neutral.600")
2206
+ }
2190
2207
  }
2191
2208
  };
2192
2209
 
2193
2210
  // packages/ui/react-ui-editor/src/extensions/factories.ts
2194
2211
  var __dxlog_file9 = "/home/runner/work/dxos/dxos/packages/ui/react-ui-editor/src/extensions/factories.ts";
2195
2212
  var defaults = {
2213
+ allowMultipleSelections: true,
2196
2214
  bracketMatching: true,
2197
2215
  closeBrackets: true,
2198
2216
  drawSelection: true,
2199
2217
  editable: true,
2200
2218
  history: true,
2201
- lineWrapping: true
2219
+ lineWrapping: true,
2220
+ search: true
2202
2221
  };
2203
2222
  var createBasicExtensions = (_props) => {
2204
2223
  const props = defaultsDeep2({}, _props, defaults);
@@ -2207,7 +2226,7 @@ var createBasicExtensions = (_props) => {
2207
2226
  EditorView10.exceptionSink.of((err) => {
2208
2227
  log7.catch(err, void 0, {
2209
2228
  F: __dxlog_file9,
2210
- L: 78,
2229
+ L: 83,
2211
2230
  S: void 0,
2212
2231
  C: (f, a) => f(...a)
2213
2232
  });
@@ -2219,6 +2238,7 @@ var createBasicExtensions = (_props) => {
2219
2238
  props.dropCursor && dropCursor(),
2220
2239
  props.drawSelection && drawSelection(),
2221
2240
  props.highlightActiveLine && highlightActiveLine(),
2241
+ highlightSpecialChars(),
2222
2242
  props.history && history(),
2223
2243
  props.lineNumbers && lineNumbers(),
2224
2244
  props.lineWrapping && EditorView10.lineWrapping,
@@ -2228,7 +2248,20 @@ var createBasicExtensions = (_props) => {
2228
2248
  EditorView10.editable.of(false)
2229
2249
  ],
2230
2250
  props.scrollPastEnd && scrollPastEnd(),
2231
- props.tabSize && EditorState.tabSize.of(props.tabSize)
2251
+ props.tabSize && EditorState.tabSize.of(props.tabSize),
2252
+ // https://codemirror.net/docs/ref/#view.KeyBinding
2253
+ keymap5.of([
2254
+ // https://codemirror.net/docs/ref/#commands.standardKeymap
2255
+ ...standardKeymap,
2256
+ // https://codemirror.net/docs/ref/#commands.indentWithTab
2257
+ props.indentWithTab && indentWithTab,
2258
+ // https://codemirror.net/docs/ref/#autocomplete.closeBracketsKeymap
2259
+ ...props.closeBrackets ? closeBracketsKeymap : [],
2260
+ // https://codemirror.net/docs/ref/#commands.historyKeymap
2261
+ ...props.history ? historyKeymap : [],
2262
+ // https://codemirror.net/docs/ref/#search.searchKeymap
2263
+ ...props.search ? searchKeymap : []
2264
+ ].filter(isNotFalsy2))
2232
2265
  ].filter(isNotFalsy2);
2233
2266
  };
2234
2267
  var defaultSlots = {
@@ -2287,14 +2320,14 @@ var listener = ({ onFocus, onChange }) => {
2287
2320
  };
2288
2321
 
2289
2322
  // packages/ui/react-ui-editor/src/extensions/markdown/bundle.ts
2290
- import { closeBracketsKeymap } from "@codemirror/autocomplete";
2291
- import { historyKeymap, indentWithTab, standardKeymap } from "@codemirror/commands";
2323
+ import { completionKeymap as completionKeymap2 } from "@codemirror/autocomplete";
2324
+ import { defaultKeymap, indentWithTab as indentWithTab2 } from "@codemirror/commands";
2292
2325
  import { markdownLanguage as markdownLanguage3, markdown } from "@codemirror/lang-markdown";
2293
2326
  import { defaultHighlightStyle, syntaxHighlighting } from "@codemirror/language";
2294
2327
  import { languages } from "@codemirror/language-data";
2295
- import { searchKeymap } from "@codemirror/search";
2328
+ import { lintKeymap } from "@codemirror/lint";
2296
2329
  import { oneDarkHighlightStyle } from "@codemirror/theme-one-dark";
2297
- import { keymap as keymap5 } from "@codemirror/view";
2330
+ import { keymap as keymap6 } from "@codemirror/view";
2298
2331
 
2299
2332
  // packages/ui/react-ui-editor/src/extensions/markdown/highlight.ts
2300
2333
  import { markdownLanguage as markdownLanguage2 } from "@codemirror/lang-markdown";
@@ -2509,17 +2542,13 @@ var createMarkdownExtensions = ({ themeMode } = {}) => {
2509
2542
  themeMode === "dark" ? syntaxHighlighting(oneDarkHighlightStyle) : syntaxHighlighting(defaultHighlightStyle),
2510
2543
  // Custom styles.
2511
2544
  syntaxHighlighting(markdownHighlightStyle()),
2512
- keymap5.of([
2545
+ keymap6.of([
2513
2546
  // https://codemirror.net/docs/ref/#commands.indentWithTab
2514
- indentWithTab,
2515
- // https://codemirror.net/docs/ref/#autocomplete.closeBracketsKeymap
2516
- ...closeBracketsKeymap,
2517
- // https://codemirror.net/docs/ref/#commands.historyKeymap
2518
- ...historyKeymap,
2519
- // https://codemirror.net/docs/ref/#search.searchKeymap
2520
- ...searchKeymap,
2521
- // https://codemirror.net/docs/ref/#commands.standardKeymap
2522
- ...standardKeymap
2547
+ indentWithTab2,
2548
+ // https://codemirror.net/docs/ref/#commands.defaultKeymap
2549
+ ...defaultKeymap,
2550
+ ...completionKeymap2,
2551
+ ...lintKeymap
2523
2552
  ])
2524
2553
  ];
2525
2554
  };
@@ -2796,9 +2825,9 @@ var formattingStyles = EditorView12.baseTheme({
2796
2825
  import { snippet } from "@codemirror/autocomplete";
2797
2826
  import { syntaxTree as syntaxTree2 } from "@codemirror/language";
2798
2827
  import { EditorSelection } from "@codemirror/state";
2799
- import { EditorView as EditorView13, keymap as keymap6 } from "@codemirror/view";
2800
- import { useState, useMemo } from "react";
2801
- var compareFormatting = (a, b) => a.blockType === b.blockType && a.strong === b.strong && a.emphasis === b.emphasis && a.strikethrough === b.strikethrough && a.code === b.code && a.link === b.link && a.listStyle === b.listStyle && a.blockQuote === b.blockQuote;
2828
+ import { EditorView as EditorView13, keymap as keymap7 } from "@codemirror/view";
2829
+ import { useMemo, useState } from "react";
2830
+ var formattingEquals = (a, b) => a.blockType === b.blockType && a.strong === b.strong && a.emphasis === b.emphasis && a.strikethrough === b.strikethrough && a.code === b.code && a.link === b.link && a.listStyle === b.listStyle && a.blockQuote === b.blockQuote;
2802
2831
  var Inline;
2803
2832
  (function(Inline2) {
2804
2833
  Inline2[Inline2["Strong"] = 0] = "Strong";
@@ -3668,7 +3697,7 @@ var toggleCodeblock = (target) => {
3668
3697
  };
3669
3698
  var formattingKeymap = (options = {}) => {
3670
3699
  return [
3671
- keymap6.of([
3700
+ keymap7.of([
3672
3701
  {
3673
3702
  key: "meta-b",
3674
3703
  run: toggleStrong
@@ -3865,15 +3894,20 @@ var getFormatting = (state2) => {
3865
3894
  };
3866
3895
  };
3867
3896
  var useFormattingState = () => {
3868
- const [state2, setState] = useState(null);
3897
+ const [state2, setState] = useState();
3869
3898
  const observer = useMemo(() => EditorView13.updateListener.of((update2) => {
3870
3899
  if (update2.docChanged || update2.selectionSet) {
3871
- const newState = getFormatting(update2.state);
3872
- if (!state2 || !compareFormatting(state2, newState)) {
3873
- setState(newState);
3874
- }
3900
+ setState((prevState) => {
3901
+ const newState = getFormatting(update2.state);
3902
+ if (!prevState || !formattingEquals(prevState, newState)) {
3903
+ return newState;
3904
+ }
3905
+ return prevState;
3906
+ });
3875
3907
  }
3876
- }), []);
3908
+ }), [
3909
+ setState
3910
+ ]);
3877
3911
  return [
3878
3912
  state2,
3879
3913
  observer
@@ -4137,21 +4171,30 @@ var mention = ({ onSearch }) => {
4137
4171
 
4138
4172
  // packages/ui/react-ui-editor/src/extensions/modes.ts
4139
4173
  import { Facet as Facet6 } from "@codemirror/state";
4140
- import { keymap as keymap7 } from "@codemirror/view";
4174
+ import { keymap as keymap8 } from "@codemirror/view";
4141
4175
  import { vim } from "@replit/codemirror-vim";
4176
+ import { vscodeKeymap } from "@replit/codemirror-vscode-keymap";
4142
4177
  var focusEvent = "focus.container";
4143
4178
  var editorMode = Facet6.define({
4144
4179
  combine: (modes) => modes[0] ?? {}
4145
4180
  });
4146
4181
  var EditorModes = {
4147
4182
  default: [],
4183
+ vscode: [
4184
+ // https://github.com/replit/codemirror-vscode-keymap
4185
+ editorMode.of({
4186
+ type: "vscode"
4187
+ }),
4188
+ keymap8.of(vscodeKeymap)
4189
+ ],
4148
4190
  vim: [
4191
+ // https://github.com/replit/codemirror-vim
4149
4192
  vim(),
4150
4193
  editorMode.of({
4151
4194
  type: "vim",
4152
4195
  noTabster: true
4153
4196
  }),
4154
- keymap7.of([
4197
+ keymap8.of([
4155
4198
  {
4156
4199
  key: "Alt-Escape",
4157
4200
  run: (view) => {
@@ -4167,7 +4210,7 @@ var EditorModes = {
4167
4210
 
4168
4211
  // packages/ui/react-ui-editor/src/extensions/state.ts
4169
4212
  import { Transaction as Transaction2 } from "@codemirror/state";
4170
- import { EditorView as EditorView16, keymap as keymap8 } from "@codemirror/view";
4213
+ import { EditorView as EditorView16, keymap as keymap9 } from "@codemirror/view";
4171
4214
  import { debounce as debounce2 } from "@dxos/async";
4172
4215
  import { invariant as invariant4 } from "@dxos/invariant";
4173
4216
  import { isNotFalsy as isNotFalsy3 } from "@dxos/util";
@@ -4231,7 +4274,7 @@ var state = ({ getState, setState } = {}) => {
4231
4274
  }
4232
4275
  }
4233
4276
  }),
4234
- getState && keymap8.of([
4277
+ getState && keymap9.of([
4235
4278
  {
4236
4279
  key: "ctrl-r",
4237
4280
  run: (view) => {
@@ -4253,7 +4296,7 @@ var state = ({ getState, setState } = {}) => {
4253
4296
  };
4254
4297
 
4255
4298
  // packages/ui/react-ui-editor/src/extensions/typewriter.ts
4256
- import { keymap as keymap9 } from "@codemirror/view";
4299
+ import { keymap as keymap10 } from "@codemirror/view";
4257
4300
  var defaultItems = [
4258
4301
  "hello world!",
4259
4302
  "this is a test.",
@@ -4263,7 +4306,7 @@ var typewriter = ({ delay = 75, items = defaultItems } = {}) => {
4263
4306
  let t;
4264
4307
  let idx = 0;
4265
4308
  return [
4266
- keymap9.of([
4309
+ keymap10.of([
4267
4310
  {
4268
4311
  // Reset.
4269
4312
  key: "alt-meta-'",
@@ -4333,7 +4376,7 @@ var TextEditor = /* @__PURE__ */ forwardRef(({ id, doc, selection, extensions, c
4333
4376
  autoFocus
4334
4377
  ]);
4335
4378
  useEffect2(() => {
4336
- log9("updating", {
4379
+ log9("create", {
4337
4380
  id,
4338
4381
  instanceId
4339
4382
  }, {
@@ -4393,8 +4436,16 @@ var TextEditor = /* @__PURE__ */ forwardRef(({ id, doc, selection, extensions, c
4393
4436
  }
4394
4437
  setView(view2);
4395
4438
  return () => {
4439
+ log9("destroy", {
4440
+ id,
4441
+ instanceId
4442
+ }, {
4443
+ F: __dxlog_file12,
4444
+ L: 150,
4445
+ S: void 0,
4446
+ C: (f, a) => f(...a)
4447
+ });
4396
4448
  view2?.destroy();
4397
- setView(null);
4398
4449
  };
4399
4450
  }, [
4400
4451
  doc,
@@ -4424,7 +4475,7 @@ var TextEditor = /* @__PURE__ */ forwardRef(({ id, doc, selection, extensions, c
4424
4475
  });
4425
4476
 
4426
4477
  // packages/ui/react-ui-editor/src/components/Toolbar/Toolbar.tsx
4427
- import { ChatText, Code, CodeBlock, Image, Link, ListBullets, ListChecks, ListNumbers, Paragraph, TextStrikethrough, Table as Table2, TextB, TextHOne, TextHTwo, TextHThree, TextHFour, TextHFive, TextHSix, TextItalic, Quotes } from "@phosphor-icons/react";
4478
+ import { ChatText, Code, CodeBlock, Image, Link, ListBullets, ListChecks, ListNumbers, Paragraph, Quotes, TextStrikethrough, Table as Table2, TextB, TextHOne, TextHTwo, TextHThree, TextHFour, TextHFive, TextHSix, TextItalic } from "@phosphor-icons/react";
4428
4479
  import { createContext } from "@radix-ui/react-context";
4429
4480
  import React2, { useEffect as useEffect3, useRef as useRef2, useState as useState3 } from "react";
4430
4481
  import { useDropzone } from "react-dropzone";
@@ -4724,13 +4775,14 @@ var MarkdownCustom = ({ onUpload } = {}) => {
4724
4775
  var MarkdownActions = () => {
4725
4776
  const { onAction } = useToolbarContext("MarkdownStyles");
4726
4777
  const { t } = useTranslation(translationKey);
4727
- return /* @__PURE__ */ React2.createElement(ToolbarButton, {
4778
+ return /* @__PURE__ */ React2.createElement(React2.Fragment, null, /* @__PURE__ */ React2.createElement(ToolbarButton, {
4728
4779
  value: "comment",
4729
4780
  Icon: ChatText,
4781
+ "data-testid": "editor.toolbar.comment",
4730
4782
  onClick: () => onAction?.({
4731
4783
  type: "comment"
4732
4784
  })
4733
- }, t("comment label"));
4785
+ }, t("comment label")));
4734
4786
  };
4735
4787
  var Toolbar = {
4736
4788
  Root: ToolbarRoot,
@@ -4823,6 +4875,14 @@ var useTextEditor = (cb = () => ({}), deps = []) => {
4823
4875
  useEffect4(() => {
4824
4876
  let view2;
4825
4877
  if (parentRef.current) {
4878
+ log10("create", {
4879
+ id
4880
+ }, {
4881
+ F: __dxlog_file13,
4882
+ L: 36,
4883
+ S: void 0,
4884
+ C: (f, a) => f(...a)
4885
+ });
4826
4886
  const state2 = EditorState3.create({
4827
4887
  doc,
4828
4888
  selection,
@@ -4832,7 +4892,7 @@ var useTextEditor = (cb = () => ({}), deps = []) => {
4832
4892
  EditorView18.exceptionSink.of((err) => {
4833
4893
  log10.catch(err, void 0, {
4834
4894
  F: __dxlog_file13,
4835
- L: 44,
4895
+ L: 46,
4836
4896
  S: void 0,
4837
4897
  C: (f, a) => f(...a)
4838
4898
  });
@@ -4859,6 +4919,14 @@ var useTextEditor = (cb = () => ({}), deps = []) => {
4859
4919
  setView(view2);
4860
4920
  }
4861
4921
  return () => {
4922
+ log10("destroy", {
4923
+ id
4924
+ }, {
4925
+ F: __dxlog_file13,
4926
+ L: 74,
4927
+ S: void 0,
4928
+ C: (f, a) => f(...a)
4929
+ });
4862
4930
  view2?.destroy();
4863
4931
  };
4864
4932
  }, deps);
@@ -4921,7 +4989,6 @@ export {
4921
4989
  callbackWrapper,
4922
4990
  command,
4923
4991
  comments,
4924
- compareFormatting,
4925
4992
  createBasicExtensions,
4926
4993
  createComment,
4927
4994
  createDataExtensions,
@@ -4939,13 +5006,14 @@ export {
4939
5006
  editorWithToolbarLayout,
4940
5007
  focusComment,
4941
5008
  focusEvent,
5009
+ formattingEquals,
4942
5010
  formattingKeymap,
4943
5011
  getFormatting,
4944
5012
  getToken,
4945
5013
  image,
4946
5014
  imageUpload,
4947
5015
  insertTable,
4948
- keymap10 as keymap,
5016
+ keymap11 as keymap,
4949
5017
  linkTooltip,
4950
5018
  listener,
4951
5019
  localStorageStateStoreAdapter,