@mdxeditor/editor 0.19.0 → 0.21.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.
@@ -42,7 +42,7 @@ export declare const frontmatterSystem: SystemSpec<[SystemSpec<[], (r: Realm) =>
42
42
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
43
43
  contentEditableClassName: RealmNode<string>;
44
44
  placeholder: RealmNode<ReactNode>;
45
- autoFocus: RealmNode<boolean>;
45
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
46
46
  readOnly: RealmNode<boolean>;
47
47
  composerChildren: RealmNode<ComponentType<{}>[]>;
48
48
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -64,7 +64,7 @@ export declare const frontmatterSystem: SystemSpec<[SystemSpec<[], (r: Realm) =>
64
64
  convertSelectionToNode: RealmNode<() => ElementNode>;
65
65
  insertDecoratorNode: RealmNode<() => DecoratorNode<unknown>>;
66
66
  onBlur: RealmNode<FocusEvent>;
67
- }>], (r: Realm, [{ rootEditor }]: [{
67
+ }>], (r: Realm, [{ rootEditor, createRootEditorSubscription }]: [{
68
68
  activeEditor: RealmNode<LexicalEditor | null>;
69
69
  inFocus: RealmNode<boolean>;
70
70
  historyState: RealmNode<HistoryState>;
@@ -94,7 +94,7 @@ export declare const frontmatterSystem: SystemSpec<[SystemSpec<[], (r: Realm) =>
94
94
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
95
95
  contentEditableClassName: RealmNode<string>;
96
96
  placeholder: RealmNode<ReactNode>;
97
- autoFocus: RealmNode<boolean>;
97
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
98
98
  readOnly: RealmNode<boolean>;
99
99
  composerChildren: RealmNode<ComponentType<{}>[]>;
100
100
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -118,6 +118,9 @@ export declare const frontmatterSystem: SystemSpec<[SystemSpec<[], (r: Realm) =>
118
118
  onBlur: RealmNode<FocusEvent>;
119
119
  }]) => {
120
120
  insertFrontmatter: RealmNode<true>;
121
+ removeFrontmatter: RealmNode<true>;
122
+ hasFrontmatter: RealmNode<boolean>;
123
+ frontmatterDialogOpen: RealmNode<boolean>;
121
124
  }>;
122
125
  export declare const
123
126
  /** @internal */
@@ -151,7 +154,7 @@ frontmatterPlugin: PluginConstructor<SystemSpec<[SystemSpec<[], (r: Realm) => {
151
154
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
152
155
  contentEditableClassName: RealmNode<string>;
153
156
  placeholder: RealmNode<ReactNode>;
154
- autoFocus: RealmNode<boolean>;
157
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
155
158
  readOnly: RealmNode<boolean>;
156
159
  composerChildren: RealmNode<ComponentType<{}>[]>;
157
160
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -173,7 +176,7 @@ frontmatterPlugin: PluginConstructor<SystemSpec<[SystemSpec<[], (r: Realm) => {
173
176
  convertSelectionToNode: RealmNode<() => ElementNode>;
174
177
  insertDecoratorNode: RealmNode<() => DecoratorNode<unknown>>;
175
178
  onBlur: RealmNode<FocusEvent>;
176
- }>], (r: Realm, [{ rootEditor }]: [{
179
+ }>], (r: Realm, [{ rootEditor, createRootEditorSubscription }]: [{
177
180
  activeEditor: RealmNode<LexicalEditor | null>;
178
181
  inFocus: RealmNode<boolean>;
179
182
  historyState: RealmNode<HistoryState>;
@@ -203,7 +206,7 @@ frontmatterPlugin: PluginConstructor<SystemSpec<[SystemSpec<[], (r: Realm) => {
203
206
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
204
207
  contentEditableClassName: RealmNode<string>;
205
208
  placeholder: RealmNode<ReactNode>;
206
- autoFocus: RealmNode<boolean>;
209
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
207
210
  readOnly: RealmNode<boolean>;
208
211
  composerChildren: RealmNode<ComponentType<{}>[]>;
209
212
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -227,11 +230,17 @@ frontmatterPlugin: PluginConstructor<SystemSpec<[SystemSpec<[], (r: Realm) => {
227
230
  onBlur: RealmNode<FocusEvent>;
228
231
  }]) => {
229
232
  insertFrontmatter: RealmNode<true>;
233
+ removeFrontmatter: RealmNode<true>;
234
+ hasFrontmatter: RealmNode<boolean>;
235
+ frontmatterDialogOpen: RealmNode<boolean>;
230
236
  }>, object>,
231
237
  /** @internal */
232
238
  frontmatterPluginHooks: {
233
239
  useRealmContext: () => TypedRealm<{
234
240
  insertFrontmatter: RealmNode<true>;
241
+ removeFrontmatter: RealmNode<true>;
242
+ hasFrontmatter: RealmNode<boolean>;
243
+ frontmatterDialogOpen: RealmNode<boolean>;
235
244
  } & {
236
245
  activeEditor: RealmNode<LexicalEditor | null>;
237
246
  inFocus: RealmNode<boolean>;
@@ -262,7 +271,7 @@ frontmatterPluginHooks: {
262
271
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
263
272
  contentEditableClassName: RealmNode<string>;
264
273
  placeholder: RealmNode<ReactNode>;
265
- autoFocus: RealmNode<boolean>;
274
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
266
275
  readOnly: RealmNode<boolean>;
267
276
  composerChildren: RealmNode<ComponentType<{}>[]>;
268
277
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -285,8 +294,11 @@ frontmatterPluginHooks: {
285
294
  insertDecoratorNode: RealmNode<() => DecoratorNode<unknown>>;
286
295
  onBlur: RealmNode<FocusEvent>;
287
296
  }>;
288
- useEmitter: <K extends "jsxComponentDescriptors" | "jsxIsAvailable" | "toMarkdownOptions" | "toMarkdownExtensions" | "mdastExtensions" | "syntaxExtensions" | "markdown" | "activeEditor" | "inFocus" | "historyState" | "currentSelection" | "initialRootEditorState" | "rootEditor" | "createRootEditorSubscription" | "createActiveEditorSubscription" | "importVisitors" | "usedLexicalNodes" | "addImportVisitor" | "addLexicalNode" | "addSyntaxExtension" | "addMdastExtension" | "addToMarkdownExtension" | "addExportVisitor" | "exportVisitors" | "initialMarkdown" | "setMarkdown" | "editorRootElementRef" | "contentEditableClassName" | "placeholder" | "autoFocus" | "readOnly" | "composerChildren" | "addComposerChild" | "topAreaChildren" | "addTopAreaChild" | "nestedEditorChildren" | "addNestedEditorChild" | "editorWrappers" | "addEditorWrapper" | "currentFormat" | "editorInFocus" | "applyFormat" | "currentBlockType" | "applyBlockType" | "convertSelectionToNode" | "insertDecoratorNode" | "onBlur" | "insertFrontmatter">(key: K, callback: (value: ValueForKey<{
297
+ useEmitter: <K extends "jsxComponentDescriptors" | "jsxIsAvailable" | "toMarkdownOptions" | "toMarkdownExtensions" | "mdastExtensions" | "syntaxExtensions" | "markdown" | "activeEditor" | "inFocus" | "historyState" | "currentSelection" | "initialRootEditorState" | "rootEditor" | "createRootEditorSubscription" | "createActiveEditorSubscription" | "importVisitors" | "usedLexicalNodes" | "addImportVisitor" | "addLexicalNode" | "addSyntaxExtension" | "addMdastExtension" | "addToMarkdownExtension" | "addExportVisitor" | "exportVisitors" | "initialMarkdown" | "setMarkdown" | "editorRootElementRef" | "contentEditableClassName" | "placeholder" | "autoFocus" | "readOnly" | "composerChildren" | "addComposerChild" | "topAreaChildren" | "addTopAreaChild" | "nestedEditorChildren" | "addNestedEditorChild" | "editorWrappers" | "addEditorWrapper" | "currentFormat" | "editorInFocus" | "applyFormat" | "currentBlockType" | "applyBlockType" | "convertSelectionToNode" | "insertDecoratorNode" | "onBlur" | "insertFrontmatter" | "removeFrontmatter" | "hasFrontmatter" | "frontmatterDialogOpen">(key: K, callback: (value: ValueForKey<{
289
298
  insertFrontmatter: RealmNode<true>;
299
+ removeFrontmatter: RealmNode<true>;
300
+ hasFrontmatter: RealmNode<boolean>;
301
+ frontmatterDialogOpen: RealmNode<boolean>;
290
302
  } & {
291
303
  activeEditor: RealmNode<LexicalEditor | null>;
292
304
  inFocus: RealmNode<boolean>;
@@ -317,7 +329,7 @@ frontmatterPluginHooks: {
317
329
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
318
330
  contentEditableClassName: RealmNode<string>;
319
331
  placeholder: RealmNode<ReactNode>;
320
- autoFocus: RealmNode<boolean>;
332
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
321
333
  readOnly: RealmNode<boolean>;
322
334
  composerChildren: RealmNode<ComponentType<{}>[]>;
323
335
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -342,6 +354,9 @@ frontmatterPluginHooks: {
342
354
  }, K>) => void) => void;
343
355
  useEmitterValues: <K_1 extends SystemKeys<{
344
356
  insertFrontmatter: RealmNode<true>;
357
+ removeFrontmatter: RealmNode<true>;
358
+ hasFrontmatter: RealmNode<boolean>;
359
+ frontmatterDialogOpen: RealmNode<boolean>;
345
360
  } & {
346
361
  activeEditor: RealmNode<LexicalEditor | null>;
347
362
  inFocus: RealmNode<boolean>;
@@ -372,7 +387,7 @@ frontmatterPluginHooks: {
372
387
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
373
388
  contentEditableClassName: RealmNode<string>;
374
389
  placeholder: RealmNode<ReactNode>;
375
- autoFocus: RealmNode<boolean>;
390
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
376
391
  readOnly: RealmNode<boolean>;
377
392
  composerChildren: RealmNode<ComponentType<{}>[]>;
378
393
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -396,6 +411,9 @@ frontmatterPluginHooks: {
396
411
  onBlur: RealmNode<FocusEvent>;
397
412
  }>>(...keys: K_1) => ValuesForKeys<{
398
413
  insertFrontmatter: RealmNode<true>;
414
+ removeFrontmatter: RealmNode<true>;
415
+ hasFrontmatter: RealmNode<boolean>;
416
+ frontmatterDialogOpen: RealmNode<boolean>;
399
417
  } & {
400
418
  activeEditor: RealmNode<LexicalEditor | null>;
401
419
  inFocus: RealmNode<boolean>;
@@ -426,7 +444,7 @@ frontmatterPluginHooks: {
426
444
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
427
445
  contentEditableClassName: RealmNode<string>;
428
446
  placeholder: RealmNode<ReactNode>;
429
- autoFocus: RealmNode<boolean>;
447
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
430
448
  readOnly: RealmNode<boolean>;
431
449
  composerChildren: RealmNode<ComponentType<{}>[]>;
432
450
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -451,6 +469,9 @@ frontmatterPluginHooks: {
451
469
  }, K_1>;
452
470
  usePubKeys: () => (values: SystemDict<{
453
471
  insertFrontmatter: RealmNode<true>;
472
+ removeFrontmatter: RealmNode<true>;
473
+ hasFrontmatter: RealmNode<boolean>;
474
+ frontmatterDialogOpen: RealmNode<boolean>;
454
475
  } & {
455
476
  activeEditor: RealmNode<LexicalEditor | null>;
456
477
  inFocus: RealmNode<boolean>;
@@ -481,7 +502,7 @@ frontmatterPluginHooks: {
481
502
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
482
503
  contentEditableClassName: RealmNode<string>;
483
504
  placeholder: RealmNode<ReactNode>;
484
- autoFocus: RealmNode<boolean>;
505
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
485
506
  readOnly: RealmNode<boolean>;
486
507
  composerChildren: RealmNode<ComponentType<{}>[]>;
487
508
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -504,8 +525,11 @@ frontmatterPluginHooks: {
504
525
  insertDecoratorNode: RealmNode<() => DecoratorNode<unknown>>;
505
526
  onBlur: RealmNode<FocusEvent>;
506
527
  }>) => void;
507
- usePublisher: <K_2 extends "jsxComponentDescriptors" | "jsxIsAvailable" | "toMarkdownOptions" | "toMarkdownExtensions" | "mdastExtensions" | "syntaxExtensions" | "markdown" | "activeEditor" | "inFocus" | "historyState" | "currentSelection" | "initialRootEditorState" | "rootEditor" | "createRootEditorSubscription" | "createActiveEditorSubscription" | "importVisitors" | "usedLexicalNodes" | "addImportVisitor" | "addLexicalNode" | "addSyntaxExtension" | "addMdastExtension" | "addToMarkdownExtension" | "addExportVisitor" | "exportVisitors" | "initialMarkdown" | "setMarkdown" | "editorRootElementRef" | "contentEditableClassName" | "placeholder" | "autoFocus" | "readOnly" | "composerChildren" | "addComposerChild" | "topAreaChildren" | "addTopAreaChild" | "nestedEditorChildren" | "addNestedEditorChild" | "editorWrappers" | "addEditorWrapper" | "currentFormat" | "editorInFocus" | "applyFormat" | "currentBlockType" | "applyBlockType" | "convertSelectionToNode" | "insertDecoratorNode" | "onBlur" | "insertFrontmatter">(key: K_2) => (value: ValueForKey<{
528
+ usePublisher: <K_2 extends "jsxComponentDescriptors" | "jsxIsAvailable" | "toMarkdownOptions" | "toMarkdownExtensions" | "mdastExtensions" | "syntaxExtensions" | "markdown" | "activeEditor" | "inFocus" | "historyState" | "currentSelection" | "initialRootEditorState" | "rootEditor" | "createRootEditorSubscription" | "createActiveEditorSubscription" | "importVisitors" | "usedLexicalNodes" | "addImportVisitor" | "addLexicalNode" | "addSyntaxExtension" | "addMdastExtension" | "addToMarkdownExtension" | "addExportVisitor" | "exportVisitors" | "initialMarkdown" | "setMarkdown" | "editorRootElementRef" | "contentEditableClassName" | "placeholder" | "autoFocus" | "readOnly" | "composerChildren" | "addComposerChild" | "topAreaChildren" | "addTopAreaChild" | "nestedEditorChildren" | "addNestedEditorChild" | "editorWrappers" | "addEditorWrapper" | "currentFormat" | "editorInFocus" | "applyFormat" | "currentBlockType" | "applyBlockType" | "convertSelectionToNode" | "insertDecoratorNode" | "onBlur" | "insertFrontmatter" | "removeFrontmatter" | "hasFrontmatter" | "frontmatterDialogOpen">(key: K_2) => (value: ValueForKey<{
508
529
  insertFrontmatter: RealmNode<true>;
530
+ removeFrontmatter: RealmNode<true>;
531
+ hasFrontmatter: RealmNode<boolean>;
532
+ frontmatterDialogOpen: RealmNode<boolean>;
509
533
  } & {
510
534
  activeEditor: RealmNode<LexicalEditor | null>;
511
535
  inFocus: RealmNode<boolean>;
@@ -536,7 +560,7 @@ frontmatterPluginHooks: {
536
560
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
537
561
  contentEditableClassName: RealmNode<string>;
538
562
  placeholder: RealmNode<ReactNode>;
539
- autoFocus: RealmNode<boolean>;
563
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
540
564
  readOnly: RealmNode<boolean>;
541
565
  composerChildren: RealmNode<ComponentType<{}>[]>;
542
566
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -8,8 +8,11 @@ import { $isFrontmatterNode, $createFrontmatterNode, FrontmatterNode } from "./F
8
8
  import { system } from "../../gurx/realmFactory.js";
9
9
  import { realmPlugin } from "../../gurx/react.js";
10
10
  const frontmatterSystem = system(
11
- (r, [{ rootEditor }]) => {
11
+ (r, [{ rootEditor, createRootEditorSubscription }]) => {
12
12
  const insertFrontmatter = r.node();
13
+ const removeFrontmatter = r.node();
14
+ const frontmatterDialogOpen = r.node(false);
15
+ const hasFrontmatter = r.node(false);
13
16
  r.sub(r.pipe(insertFrontmatter, r.o.withLatestFrom(rootEditor)), ([, theEditor]) => {
14
17
  theEditor == null ? void 0 : theEditor.update(() => {
15
18
  const firstItem = $getRoot().getFirstChild();
@@ -22,9 +25,29 @@ const frontmatterSystem = system(
22
25
  }
23
26
  }
24
27
  });
28
+ r.pub(frontmatterDialogOpen, true);
29
+ });
30
+ r.sub(r.pipe(removeFrontmatter, r.o.withLatestFrom(rootEditor)), ([, theEditor]) => {
31
+ theEditor == null ? void 0 : theEditor.update(() => {
32
+ const firstItem = $getRoot().getFirstChild();
33
+ if ($isFrontmatterNode(firstItem)) {
34
+ firstItem.remove();
35
+ }
36
+ });
37
+ r.pub(frontmatterDialogOpen, false);
38
+ });
39
+ r.pub(createRootEditorSubscription, (rootEditor2) => {
40
+ return rootEditor2.registerUpdateListener(({ editorState }) => {
41
+ editorState.read(() => {
42
+ r.pub(hasFrontmatter, $isFrontmatterNode($getRoot().getFirstChild()));
43
+ });
44
+ });
25
45
  });
26
46
  return {
27
- insertFrontmatter
47
+ insertFrontmatter,
48
+ removeFrontmatter,
49
+ hasFrontmatter,
50
+ frontmatterDialogOpen
28
51
  };
29
52
  },
30
53
  [coreSystem]
@@ -46,7 +46,7 @@ export declare const headingsSystem: SystemSpec<[SystemSpec<[], (r: Realm) => {
46
46
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
47
47
  contentEditableClassName: RealmNode<string>;
48
48
  placeholder: RealmNode<ReactNode>;
49
- autoFocus: RealmNode<boolean>;
49
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
50
50
  readOnly: RealmNode<boolean>;
51
51
  composerChildren: RealmNode<ComponentType<{}>[]>;
52
52
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -98,7 +98,7 @@ export declare const headingsSystem: SystemSpec<[SystemSpec<[], (r: Realm) => {
98
98
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
99
99
  contentEditableClassName: RealmNode<string>;
100
100
  placeholder: RealmNode<ReactNode>;
101
- autoFocus: RealmNode<boolean>;
101
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
102
102
  readOnly: RealmNode<boolean>;
103
103
  composerChildren: RealmNode<ComponentType<{}>[]>;
104
104
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -166,7 +166,7 @@ export declare const headingsPlugin: PluginConstructor<SystemSpec<[SystemSpec<[]
166
166
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
167
167
  contentEditableClassName: RealmNode<string>;
168
168
  placeholder: RealmNode<ReactNode>;
169
- autoFocus: RealmNode<boolean>;
169
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
170
170
  readOnly: RealmNode<boolean>;
171
171
  composerChildren: RealmNode<ComponentType<{}>[]>;
172
172
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -218,7 +218,7 @@ export declare const headingsPlugin: PluginConstructor<SystemSpec<[SystemSpec<[]
218
218
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
219
219
  contentEditableClassName: RealmNode<string>;
220
220
  placeholder: RealmNode<ReactNode>;
221
- autoFocus: RealmNode<boolean>;
221
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
222
222
  readOnly: RealmNode<boolean>;
223
223
  composerChildren: RealmNode<ComponentType<{}>[]>;
224
224
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -275,7 +275,7 @@ export declare const headingsPlugin: PluginConstructor<SystemSpec<[SystemSpec<[]
275
275
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
276
276
  contentEditableClassName: RealmNode<string>;
277
277
  placeholder: RealmNode<ReactNode>;
278
- autoFocus: RealmNode<boolean>;
278
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
279
279
  readOnly: RealmNode<boolean>;
280
280
  composerChildren: RealmNode<ComponentType<{}>[]>;
281
281
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -330,7 +330,7 @@ export declare const headingsPlugin: PluginConstructor<SystemSpec<[SystemSpec<[]
330
330
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
331
331
  contentEditableClassName: RealmNode<string>;
332
332
  placeholder: RealmNode<ReactNode>;
333
- autoFocus: RealmNode<boolean>;
333
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
334
334
  readOnly: RealmNode<boolean>;
335
335
  composerChildren: RealmNode<ComponentType<{}>[]>;
336
336
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -385,7 +385,7 @@ export declare const headingsPlugin: PluginConstructor<SystemSpec<[SystemSpec<[]
385
385
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
386
386
  contentEditableClassName: RealmNode<string>;
387
387
  placeholder: RealmNode<ReactNode>;
388
- autoFocus: RealmNode<boolean>;
388
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
389
389
  readOnly: RealmNode<boolean>;
390
390
  composerChildren: RealmNode<ComponentType<{}>[]>;
391
391
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -439,7 +439,7 @@ export declare const headingsPlugin: PluginConstructor<SystemSpec<[SystemSpec<[]
439
439
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
440
440
  contentEditableClassName: RealmNode<string>;
441
441
  placeholder: RealmNode<ReactNode>;
442
- autoFocus: RealmNode<boolean>;
442
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
443
443
  readOnly: RealmNode<boolean>;
444
444
  composerChildren: RealmNode<ComponentType<{}>[]>;
445
445
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -494,7 +494,7 @@ export declare const headingsPlugin: PluginConstructor<SystemSpec<[SystemSpec<[]
494
494
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
495
495
  contentEditableClassName: RealmNode<string>;
496
496
  placeholder: RealmNode<ReactNode>;
497
- autoFocus: RealmNode<boolean>;
497
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
498
498
  readOnly: RealmNode<boolean>;
499
499
  composerChildren: RealmNode<ComponentType<{}>[]>;
500
500
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -549,7 +549,7 @@ export declare const headingsPlugin: PluginConstructor<SystemSpec<[SystemSpec<[]
549
549
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
550
550
  contentEditableClassName: RealmNode<string>;
551
551
  placeholder: RealmNode<ReactNode>;
552
- autoFocus: RealmNode<boolean>;
552
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
553
553
  readOnly: RealmNode<boolean>;
554
554
  composerChildren: RealmNode<ComponentType<{}>[]>;
555
555
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -45,7 +45,7 @@ export declare const imageSystem: SystemSpec<[SystemSpec<[], (r: Realm) => {
45
45
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
46
46
  contentEditableClassName: RealmNode<string>;
47
47
  placeholder: RealmNode<ReactNode>;
48
- autoFocus: RealmNode<boolean>;
48
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
49
49
  readOnly: RealmNode<boolean>;
50
50
  composerChildren: RealmNode<ComponentType<{}>[]>;
51
51
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -97,7 +97,7 @@ export declare const imageSystem: SystemSpec<[SystemSpec<[], (r: Realm) => {
97
97
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
98
98
  contentEditableClassName: RealmNode<string>;
99
99
  placeholder: RealmNode<ReactNode>;
100
- autoFocus: RealmNode<boolean>;
100
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
101
101
  readOnly: RealmNode<boolean>;
102
102
  composerChildren: RealmNode<ComponentType<{}>[]>;
103
103
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -162,7 +162,7 @@ imagePlugin: PluginConstructor<SystemSpec<[SystemSpec<[], (r: Realm) => {
162
162
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
163
163
  contentEditableClassName: RealmNode<string>;
164
164
  placeholder: RealmNode<ReactNode>;
165
- autoFocus: RealmNode<boolean>;
165
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
166
166
  readOnly: RealmNode<boolean>;
167
167
  composerChildren: RealmNode<ComponentType<{}>[]>;
168
168
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -214,7 +214,7 @@ imagePlugin: PluginConstructor<SystemSpec<[SystemSpec<[], (r: Realm) => {
214
214
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
215
215
  contentEditableClassName: RealmNode<string>;
216
216
  placeholder: RealmNode<ReactNode>;
217
- autoFocus: RealmNode<boolean>;
217
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
218
218
  readOnly: RealmNode<boolean>;
219
219
  composerChildren: RealmNode<ComponentType<{}>[]>;
220
220
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -279,7 +279,7 @@ imagePluginHooks: {
279
279
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
280
280
  contentEditableClassName: RealmNode<string>;
281
281
  placeholder: RealmNode<ReactNode>;
282
- autoFocus: RealmNode<boolean>;
282
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
283
283
  readOnly: RealmNode<boolean>;
284
284
  composerChildren: RealmNode<ComponentType<{}>[]>;
285
285
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -337,7 +337,7 @@ imagePluginHooks: {
337
337
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
338
338
  contentEditableClassName: RealmNode<string>;
339
339
  placeholder: RealmNode<ReactNode>;
340
- autoFocus: RealmNode<boolean>;
340
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
341
341
  readOnly: RealmNode<boolean>;
342
342
  composerChildren: RealmNode<ComponentType<{}>[]>;
343
343
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -395,7 +395,7 @@ imagePluginHooks: {
395
395
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
396
396
  contentEditableClassName: RealmNode<string>;
397
397
  placeholder: RealmNode<ReactNode>;
398
- autoFocus: RealmNode<boolean>;
398
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
399
399
  readOnly: RealmNode<boolean>;
400
400
  composerChildren: RealmNode<ComponentType<{}>[]>;
401
401
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -452,7 +452,7 @@ imagePluginHooks: {
452
452
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
453
453
  contentEditableClassName: RealmNode<string>;
454
454
  placeholder: RealmNode<ReactNode>;
455
- autoFocus: RealmNode<boolean>;
455
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
456
456
  readOnly: RealmNode<boolean>;
457
457
  composerChildren: RealmNode<ComponentType<{}>[]>;
458
458
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -510,7 +510,7 @@ imagePluginHooks: {
510
510
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
511
511
  contentEditableClassName: RealmNode<string>;
512
512
  placeholder: RealmNode<ReactNode>;
513
- autoFocus: RealmNode<boolean>;
513
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
514
514
  readOnly: RealmNode<boolean>;
515
515
  composerChildren: RealmNode<ComponentType<{}>[]>;
516
516
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -568,7 +568,7 @@ imagePluginHooks: {
568
568
  editorRootElementRef: RealmNode<RefObject<HTMLDivElement> | null>;
569
569
  contentEditableClassName: RealmNode<string>;
570
570
  placeholder: RealmNode<ReactNode>;
571
- autoFocus: RealmNode<boolean>;
571
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
572
572
  readOnly: RealmNode<boolean>;
573
573
  composerChildren: RealmNode<ComponentType<{}>[]>;
574
574
  addComposerChild: RealmNode<ComponentType<{}>>;
@@ -109,7 +109,7 @@ export declare const jsxSystem: SystemSpec<[SystemSpec<[], (r: Realm) => {
109
109
  editorRootElementRef: RealmNode<React.RefObject<HTMLDivElement> | null>;
110
110
  contentEditableClassName: RealmNode<string>;
111
111
  placeholder: RealmNode<React.ReactNode>;
112
- autoFocus: RealmNode<boolean>;
112
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
113
113
  readOnly: RealmNode<boolean>;
114
114
  composerChildren: RealmNode<React.ComponentType<{}>[]>;
115
115
  addComposerChild: RealmNode<React.ComponentType<{}>>;
@@ -161,7 +161,7 @@ export declare const jsxSystem: SystemSpec<[SystemSpec<[], (r: Realm) => {
161
161
  editorRootElementRef: RealmNode<React.RefObject<HTMLDivElement> | null>;
162
162
  contentEditableClassName: RealmNode<string>;
163
163
  placeholder: RealmNode<React.ReactNode>;
164
- autoFocus: RealmNode<boolean>;
164
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
165
165
  readOnly: RealmNode<boolean>;
166
166
  composerChildren: RealmNode<React.ComponentType<{}>[]>;
167
167
  addComposerChild: RealmNode<React.ComponentType<{}>>;
@@ -227,7 +227,7 @@ jsxPlugin: PluginConstructor<SystemSpec<[SystemSpec<[], (r: Realm) => {
227
227
  editorRootElementRef: RealmNode<React.RefObject<HTMLDivElement> | null>;
228
228
  contentEditableClassName: RealmNode<string>;
229
229
  placeholder: RealmNode<React.ReactNode>;
230
- autoFocus: RealmNode<boolean>;
230
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
231
231
  readOnly: RealmNode<boolean>;
232
232
  composerChildren: RealmNode<React.ComponentType<{}>[]>;
233
233
  addComposerChild: RealmNode<React.ComponentType<{}>>;
@@ -279,7 +279,7 @@ jsxPlugin: PluginConstructor<SystemSpec<[SystemSpec<[], (r: Realm) => {
279
279
  editorRootElementRef: RealmNode<React.RefObject<HTMLDivElement> | null>;
280
280
  contentEditableClassName: RealmNode<string>;
281
281
  placeholder: RealmNode<React.ReactNode>;
282
- autoFocus: RealmNode<boolean>;
282
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
283
283
  readOnly: RealmNode<boolean>;
284
284
  composerChildren: RealmNode<React.ComponentType<{}>[]>;
285
285
  addComposerChild: RealmNode<React.ComponentType<{}>>;
@@ -338,7 +338,7 @@ jsxPluginHooks: {
338
338
  editorRootElementRef: RealmNode<React.RefObject<HTMLDivElement> | null>;
339
339
  contentEditableClassName: RealmNode<string>;
340
340
  placeholder: RealmNode<React.ReactNode>;
341
- autoFocus: RealmNode<boolean>;
341
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
342
342
  readOnly: RealmNode<boolean>;
343
343
  composerChildren: RealmNode<React.ComponentType<{}>[]>;
344
344
  addComposerChild: RealmNode<React.ComponentType<{}>>;
@@ -393,7 +393,7 @@ jsxPluginHooks: {
393
393
  editorRootElementRef: RealmNode<React.RefObject<HTMLDivElement> | null>;
394
394
  contentEditableClassName: RealmNode<string>;
395
395
  placeholder: RealmNode<React.ReactNode>;
396
- autoFocus: RealmNode<boolean>;
396
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
397
397
  readOnly: RealmNode<boolean>;
398
398
  composerChildren: RealmNode<React.ComponentType<{}>[]>;
399
399
  addComposerChild: RealmNode<React.ComponentType<{}>>;
@@ -448,7 +448,7 @@ jsxPluginHooks: {
448
448
  editorRootElementRef: RealmNode<React.RefObject<HTMLDivElement> | null>;
449
449
  contentEditableClassName: RealmNode<string>;
450
450
  placeholder: RealmNode<React.ReactNode>;
451
- autoFocus: RealmNode<boolean>;
451
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
452
452
  readOnly: RealmNode<boolean>;
453
453
  composerChildren: RealmNode<React.ComponentType<{}>[]>;
454
454
  addComposerChild: RealmNode<React.ComponentType<{}>>;
@@ -502,7 +502,7 @@ jsxPluginHooks: {
502
502
  editorRootElementRef: RealmNode<React.RefObject<HTMLDivElement> | null>;
503
503
  contentEditableClassName: RealmNode<string>;
504
504
  placeholder: RealmNode<React.ReactNode>;
505
- autoFocus: RealmNode<boolean>;
505
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
506
506
  readOnly: RealmNode<boolean>;
507
507
  composerChildren: RealmNode<React.ComponentType<{}>[]>;
508
508
  addComposerChild: RealmNode<React.ComponentType<{}>>;
@@ -557,7 +557,7 @@ jsxPluginHooks: {
557
557
  editorRootElementRef: RealmNode<React.RefObject<HTMLDivElement> | null>;
558
558
  contentEditableClassName: RealmNode<string>;
559
559
  placeholder: RealmNode<React.ReactNode>;
560
- autoFocus: RealmNode<boolean>;
560
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
561
561
  readOnly: RealmNode<boolean>;
562
562
  composerChildren: RealmNode<React.ComponentType<{}>[]>;
563
563
  addComposerChild: RealmNode<React.ComponentType<{}>>;
@@ -612,7 +612,7 @@ jsxPluginHooks: {
612
612
  editorRootElementRef: RealmNode<React.RefObject<HTMLDivElement> | null>;
613
613
  contentEditableClassName: RealmNode<string>;
614
614
  placeholder: RealmNode<React.ReactNode>;
615
- autoFocus: RealmNode<boolean>;
615
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
616
616
  readOnly: RealmNode<boolean>;
617
617
  composerChildren: RealmNode<React.ComponentType<{}>[]>;
618
618
  addComposerChild: RealmNode<React.ComponentType<{}>>;
@@ -59,7 +59,7 @@ export declare const linkPlugin: PluginConstructor<SystemSpec<[SystemSpec<[], (r
59
59
  editorRootElementRef: RealmNode<React.RefObject<HTMLDivElement> | null>;
60
60
  contentEditableClassName: RealmNode<string>;
61
61
  placeholder: RealmNode<React.ReactNode>;
62
- autoFocus: RealmNode<boolean>;
62
+ autoFocus: RealmNode<boolean | "rootStart" | "rootEnd">;
63
63
  readOnly: RealmNode<boolean>;
64
64
  composerChildren: RealmNode<React.ComponentType<{}>[]>;
65
65
  addComposerChild: RealmNode<React.ComponentType<{}>>;
@@ -3,10 +3,11 @@ import { LexicalCommand } from 'lexical';
3
3
  export declare const OPEN_LINK_DIALOG: LexicalCommand<undefined>;
4
4
  interface LinkEditFormProps {
5
5
  initialUrl: string;
6
- onSubmit: (url: string) => void;
6
+ initialTitle: string;
7
+ onSubmit: (link: [string, string]) => void;
7
8
  onCancel: () => void;
8
9
  linkAutocompleteSuggestions: string[];
9
10
  }
10
- export declare function LinkEditForm({ initialUrl, onSubmit, onCancel, linkAutocompleteSuggestions }: LinkEditFormProps): React.JSX.Element;
11
+ export declare function LinkEditForm({ initialUrl, initialTitle, onSubmit, onCancel, linkAutocompleteSuggestions }: LinkEditFormProps): React.JSX.Element;
11
12
  export declare const LinkDialog: React.FC;
12
13
  export {};
@@ -3,7 +3,6 @@ import * as Tooltip from "@radix-ui/react-tooltip";
3
3
  import React__default from "react";
4
4
  import { createCommand } from "lexical";
5
5
  import CheckIcon from "../../icons/check.svg.js";
6
- import CloseIcon from "../../icons/close.svg.js";
7
6
  import CopyIcon from "../../icons/content_copy.svg.js";
8
7
  import EditIcon from "../../icons/edit.svg.js";
9
8
  import LinkOffIcon from "../../icons/link_off.svg.js";
@@ -16,15 +15,16 @@ import { corePluginHooks } from "../core/index.js";
16
15
  import { linkDialogPluginHooks } from "./index.js";
17
16
  createCommand();
18
17
  const MAX_SUGGESTIONS = 20;
19
- function LinkEditForm({ initialUrl, onSubmit, onCancel, linkAutocompleteSuggestions }) {
18
+ function LinkEditForm({ initialUrl, initialTitle, onSubmit, onCancel, linkAutocompleteSuggestions }) {
20
19
  const [items, setItems] = React__default.useState(linkAutocompleteSuggestions.slice(0, MAX_SUGGESTIONS));
21
- const { isOpen, getToggleButtonProps, getMenuProps, getInputProps, highlightedIndex, getItemProps, selectedItem } = useCombobox({
20
+ const [title, setTitle] = React__default.useState(initialTitle);
21
+ const { isOpen, getToggleButtonProps, getMenuProps, getInputProps, highlightedIndex, getItemProps, selectedItem, inputValue } = useCombobox({
22
22
  initialInputValue: initialUrl,
23
- onInputValueChange({ inputValue }) {
24
- inputValue = (inputValue == null ? void 0 : inputValue.toLowerCase()) || "";
23
+ onInputValueChange({ inputValue: inputValue2 }) {
24
+ inputValue2 = (inputValue2 == null ? void 0 : inputValue2.toLowerCase()) || "";
25
25
  const matchingItems = [];
26
26
  for (const url of linkAutocompleteSuggestions) {
27
- if (url.toLowerCase().includes(inputValue)) {
27
+ if (url.toLowerCase().includes(inputValue2)) {
28
28
  matchingItems.push(url);
29
29
  if (matchingItems.length >= MAX_SUGGESTIONS) {
30
30
  break;
@@ -40,7 +40,7 @@ function LinkEditForm({ initialUrl, onSubmit, onCancel, linkAutocompleteSuggesti
40
40
  });
41
41
  const onSubmitEH = (e) => {
42
42
  e.preventDefault();
43
- onSubmit(selectedItem || "");
43
+ onSubmit([inputValue, title]);
44
44
  };
45
45
  const onKeyDownEH = React__default.useCallback(
46
46
  (e) => {
@@ -49,10 +49,10 @@ function LinkEditForm({ initialUrl, onSubmit, onCancel, linkAutocompleteSuggesti
49
49
  (_a = e.target.form) == null ? void 0 : _a.reset();
50
50
  } else if (e.key === "Enter" && (!isOpen || items.length === 0)) {
51
51
  e.preventDefault();
52
- onSubmit(e.target.value);
52
+ onSubmit([e.target.value, title]);
53
53
  }
54
54
  },
55
- [isOpen, items, onSubmit]
55
+ [isOpen, items, onSubmit, title]
56
56
  );
57
57
  const downshiftInputProps = getInputProps();
58
58
  const inputProps = {
@@ -63,7 +63,7 @@ function LinkEditForm({ initialUrl, onSubmit, onCancel, linkAutocompleteSuggesti
63
63
  }
64
64
  };
65
65
  const dropdownIsVisible = isOpen && items.length > 0;
66
- return /* @__PURE__ */ React__default.createElement("form", { onSubmit: onSubmitEH, onReset: onCancel, className: classNames(styles.linkDialogEditForm) }, /* @__PURE__ */ React__default.createElement("div", { className: styles.linkDialogInputContainer }, /* @__PURE__ */ React__default.createElement("div", { "data-visible-dropdown": dropdownIsVisible, className: styles.linkDialogInputWrapper }, /* @__PURE__ */ React__default.createElement("input", { className: styles.linkDialogInput, ...inputProps, autoFocus: true, size: 30, "data-editor-dialog": true }), /* @__PURE__ */ React__default.createElement("button", { "aria-label": "toggle menu", type: "button", ...getToggleButtonProps() }, /* @__PURE__ */ React__default.createElement(DropDownIcon, null))), /* @__PURE__ */ React__default.createElement("div", { className: styles.linkDialogAutocompleteContainer }, /* @__PURE__ */ React__default.createElement("ul", { ...getMenuProps(), "data-visible": dropdownIsVisible }, items.map((item, index) => /* @__PURE__ */ React__default.createElement(
66
+ return /* @__PURE__ */ React__default.createElement("form", { onSubmit: onSubmitEH, onReset: onCancel, className: classNames(styles.linkDialogEditForm) }, /* @__PURE__ */ React__default.createElement("div", null, /* @__PURE__ */ React__default.createElement("label", { htmlFor: "link-url" }, "URL")), /* @__PURE__ */ React__default.createElement("div", { className: styles.linkDialogInputContainer }, /* @__PURE__ */ React__default.createElement("div", { "data-visible-dropdown": dropdownIsVisible, className: styles.linkDialogInputWrapper }, /* @__PURE__ */ React__default.createElement("input", { id: "link-url", className: styles.linkDialogInput, ...inputProps, autoFocus: true, size: 40, "data-editor-dialog": true }), /* @__PURE__ */ React__default.createElement("button", { "aria-label": "toggle menu", type: "button", ...getToggleButtonProps() }, /* @__PURE__ */ React__default.createElement(DropDownIcon, null))), /* @__PURE__ */ React__default.createElement("div", { className: styles.linkDialogAutocompleteContainer }, /* @__PURE__ */ React__default.createElement("ul", { ...getMenuProps(), "data-visible": dropdownIsVisible }, items.map((item, index) => /* @__PURE__ */ React__default.createElement(
67
67
  "li",
68
68
  {
69
69
  "data-selected": selectedItem === item,
@@ -72,7 +72,7 @@ function LinkEditForm({ initialUrl, onSubmit, onCancel, linkAutocompleteSuggesti
72
72
  ...getItemProps({ item, index })
73
73
  },
74
74
  item
75
- ))))), /* @__PURE__ */ React__default.createElement(ActionButton, { type: "submit", title: "Set URL", "aria-label": "Set URL" }, /* @__PURE__ */ React__default.createElement(CheckIcon, null)), /* @__PURE__ */ React__default.createElement(ActionButton, { type: "reset", title: "Cancel change", "aria-label": "Cancel change" }, /* @__PURE__ */ React__default.createElement(CloseIcon, null)));
75
+ ))))), /* @__PURE__ */ React__default.createElement("div", null, /* @__PURE__ */ React__default.createElement("label", { htmlFor: "link-title" }, "Title")), /* @__PURE__ */ React__default.createElement("div", null, /* @__PURE__ */ React__default.createElement("div", { className: styles.linkDialogInputWrapper }, /* @__PURE__ */ React__default.createElement("input", { id: "link-title", className: styles.linkDialogInput, size: 40, value: title, onChange: (e) => setTitle(e.target.value) }))), /* @__PURE__ */ React__default.createElement("div", { style: { display: "flex", justifyContent: "flex-end", gap: "var(--spacing-2)" } }, /* @__PURE__ */ React__default.createElement("button", { type: "reset", title: "Cancel change", "aria-label": "Cancel change", className: classNames(styles.secondaryButton) }, "Cancel"), /* @__PURE__ */ React__default.createElement("button", { type: "submit", title: "Set URL", "aria-label": "Set URL", className: classNames(styles.primaryButton) }, "Save")));
76
76
  }
77
77
  const LinkDialog = () => {
78
78
  const [editorRootElementRef] = corePluginHooks.useEmitterValues("editorRootElementRef");
@@ -103,8 +103,8 @@ const LinkDialog = () => {
103
103
  const [copyUrlTooltipOpen, setCopyUrlTooltipOpen] = React__default.useState(false);
104
104
  const theRect = linkDialogState == null ? void 0 : linkDialogState.rectangle;
105
105
  const onSubmitEH = React__default.useCallback(
106
- (url) => {
107
- updateLinkUrl(url);
106
+ (payload) => {
107
+ updateLinkUrl(payload);
108
108
  applyLinkChanges(true);
109
109
  },
110
110
  [applyLinkChanges, updateLinkUrl]
@@ -134,6 +134,7 @@ const LinkDialog = () => {
134
134
  LinkEditForm,
135
135
  {
136
136
  initialUrl: linkDialogState.url,
137
+ initialTitle: linkDialogState.title,
137
138
  onSubmit: onSubmitEH,
138
139
  onCancel: cancelLinkEdit.bind(null, true),
139
140
  linkAutocompleteSuggestions