@llui/markdown-editor 0.4.0 → 0.5.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.
@@ -62,10 +62,12 @@
62
62
  // bottom of this file), so the registry orders it ahead of LINK in EITHER
63
63
  // plugin order. `test/composition.test.ts` pins both orders. To get the
64
64
  // CommonMark reading of `[[a|b]](c)` instead, omit `wikilinkPlugin()`.
65
- import { $applyNodeReplacement, $getNearestNodeFromDOMNode, $getSelection, $isRangeSelection, CLICK_COMMAND, COMMAND_PRIORITY_LOW, KEY_ENTER_COMMAND, TextNode, } from 'lexical';
65
+ import { $applyNodeReplacement, $createTextNode, $getNearestNodeFromDOMNode, $getSelection, $isRangeSelection, $isTextNode, CLICK_COMMAND, COMMAND_PRIORITY_HIGH, COMMAND_PRIORITY_LOW, KEY_ARROW_DOWN_COMMAND, KEY_ARROW_UP_COMMAND, KEY_ENTER_COMMAND, KEY_ESCAPE_COMMAND, TextNode, } from 'lexical';
66
66
  import { mergeRegister } from '@lexical/utils';
67
+ import { div, each, text } from '@llui/dom';
67
68
  import { setTransformerPrecedence } from '../transformers/registry.js';
68
69
  import { definePluginUI } from './ui.js';
70
+ import { OVERLAY_Z, overlayRoot } from './overlay.js';
69
71
  const PLUGIN = 'wikilink';
70
72
  // ── Parsing ──────────────────────────────────────────────────────────────────
71
73
  /**
@@ -362,6 +364,42 @@ const WIKILINK_TRANSFORMER = {
362
364
  // documented ordering requirement a consumer can get wrong. The CommonMark
363
365
  // reading of `[[a|b]](c)` is still reachable — omit `wikilinkPlugin()`.
364
366
  setTransformerPrecedence(WIKILINK_TRANSFORMER, -10);
367
+ const MAX_RESULTS = 8;
368
+ /** Debounce before firing the host's (possibly async) `search` for a query. */
369
+ const SEARCH_DEBOUNCE_MS = 120;
370
+ function toRows(items, index) {
371
+ return items.map((c, i) => ({
372
+ target: c.target,
373
+ title: c.title ?? c.target,
374
+ snippet: c.snippet ?? '',
375
+ preview: c.preview ?? '',
376
+ active: i === index,
377
+ }));
378
+ }
379
+ /** The `[[` query immediately before a collapsed caret, or `null` when the caret
380
+ * is not inside an open `[[…` (no `[[`, or a `]`/`[`/newline already closed it). */
381
+ function $readWikiQuery() {
382
+ const selection = $getSelection();
383
+ if (!$isRangeSelection(selection) || !selection.isCollapsed())
384
+ return null;
385
+ const node = selection.anchor.getNode();
386
+ if (!$isTextNode(node))
387
+ return null;
388
+ const before = node.getTextContent().slice(0, selection.anchor.offset);
389
+ const match = before.match(/\[\[([^[\]\n|]*)$/);
390
+ return match ? (match[1] ?? '') : null;
391
+ }
392
+ /** Viewport point just below the caret, for anchoring the panel. */
393
+ function caretXY() {
394
+ if (typeof window === 'undefined')
395
+ return { x: 0, y: 0 };
396
+ const sel = window.getSelection();
397
+ if (sel && sel.rangeCount > 0) {
398
+ const rect = sel.getRangeAt(0).getBoundingClientRect();
399
+ return { x: rect.left, y: rect.bottom + 4 };
400
+ }
401
+ return { x: 0, y: 0 };
402
+ }
365
403
  /** Resolve the wikilink a click landed on, if any. Must run in an editor scope. */
366
404
  function $wikiLinkFromEvent(event) {
367
405
  const target = event.target;
@@ -401,10 +439,10 @@ export function wikilinkPlugin(opts = {}) {
401
439
  const placeholderTarget = opts.placeholderTarget ?? 'Page';
402
440
  const item = {
403
441
  id: PLUGIN,
404
- label: 'Wiki link',
442
+ label: 'Document link',
405
443
  icon: 'wikilink',
406
444
  group: 'inline',
407
- keywords: ['wiki', 'wikilink', 'backlink', 'reference', '[['],
445
+ keywords: ['document', 'doc', 'link', 'wiki', 'wikilink', 'backlink', 'reference', '[['],
408
446
  run: (editor) => editor.update(() => {
409
447
  const selection = $getSelection();
410
448
  if (!$isRangeSelection(selection))
@@ -428,12 +466,13 @@ export function wikilinkPlugin(opts = {}) {
428
466
  transformers: [WIKILINK_TRANSFORMER],
429
467
  items: [item],
430
468
  register: (editor, ctx) => {
469
+ const emit = (msg) => ctx.emit({ type: 'plugin', name: PLUGIN, msg });
431
470
  const activate = (node) => {
432
471
  const { target, alias } = node.getLink();
433
- ctx.emit({ type: 'plugin', name: PLUGIN, msg: { type: 'activate', target, alias } });
472
+ emit({ type: 'activate', target, alias });
434
473
  return true;
435
474
  };
436
- return mergeRegister(editor.registerCommand(CLICK_COMMAND, (event) => {
475
+ const navigation = mergeRegister(editor.registerCommand(CLICK_COMMAND, (event) => {
437
476
  const node = $wikiLinkFromEvent(event);
438
477
  if (!node)
439
478
  return false;
@@ -453,14 +492,200 @@ export function wikilinkPlugin(opts = {}) {
453
492
  event.preventDefault();
454
493
  return activate(node);
455
494
  }, COMMAND_PRIORITY_LOW));
495
+ // Document-search typeahead is opt-in: with no `search` seam the panel never
496
+ // opens and `[[target]]` still works by typing the closing `]]`.
497
+ const search = opts.search;
498
+ if (search === undefined)
499
+ return navigation;
500
+ let seq = 0;
501
+ let timer = null;
502
+ const clearTimer = () => {
503
+ if (timer !== null) {
504
+ clearTimeout(timer);
505
+ timer = null;
506
+ }
507
+ };
508
+ const activeQuery = () => editor.getEditorState().read(() => $readWikiQuery());
509
+ const isActive = () => activeQuery() !== null;
510
+ const refresh = () => {
511
+ const query = activeQuery();
512
+ if (query === null) {
513
+ clearTimer();
514
+ emit({ type: 'searchHide' });
515
+ return;
516
+ }
517
+ clearTimer();
518
+ const mine = ++seq;
519
+ timer = setTimeout(() => {
520
+ void Promise.resolve(search(query))
521
+ .then((results) => {
522
+ // Drop a superseded response (a later keystroke won) or one whose
523
+ // query the caret has since left/changed.
524
+ if (mine !== seq || activeQuery() !== query)
525
+ return;
526
+ const { x, y } = caretXY();
527
+ emit({ type: 'searchShow', query, items: results.slice(0, MAX_RESULTS), x, y });
528
+ })
529
+ .catch(() => {
530
+ /* a failed search simply shows nothing */
531
+ });
532
+ }, SEARCH_DEBOUNCE_MS);
533
+ };
534
+ const nav = (delta, e) => {
535
+ if (!isActive())
536
+ return false;
537
+ e?.preventDefault();
538
+ emit({ type: 'searchMove', delta });
539
+ return true;
540
+ };
541
+ return mergeRegister(navigation, editor.registerUpdateListener(() => refresh()), editor.registerCommand(KEY_ARROW_DOWN_COMMAND, (e) => nav(1, e), COMMAND_PRIORITY_HIGH), editor.registerCommand(KEY_ARROW_UP_COMMAND, (e) => nav(-1, e), COMMAND_PRIORITY_HIGH), editor.registerCommand(KEY_ENTER_COMMAND, (e) => {
542
+ if (!isActive())
543
+ return false;
544
+ e?.preventDefault();
545
+ emit({ type: 'searchChoose' });
546
+ return true;
547
+ }, COMMAND_PRIORITY_HIGH), editor.registerCommand(KEY_ESCAPE_COMMAND, () => {
548
+ if (!isActive())
549
+ return false;
550
+ emit({ type: 'searchHide' });
551
+ return true;
552
+ }, COMMAND_PRIORITY_HIGH), clearTimer);
456
553
  },
457
554
  ui: definePluginUI({
458
- init: () => ({ last: null }),
459
- update: (_state, msg) => {
460
- const link = { target: msg.target, alias: msg.alias };
461
- return [{ last: link }, [{ type: 'navigate', link }]];
555
+ init: () => ({
556
+ last: null,
557
+ searchOpen: false,
558
+ searchQuery: '',
559
+ searchItems: [],
560
+ searchIndex: 0,
561
+ searchX: 0,
562
+ searchY: 0,
563
+ }),
564
+ update: (state, msg) => {
565
+ switch (msg.type) {
566
+ case 'activate': {
567
+ const link = { target: msg.target, alias: msg.alias };
568
+ return [{ ...state, last: link }, [{ type: 'navigate', link }]];
569
+ }
570
+ case 'searchShow':
571
+ return {
572
+ ...state,
573
+ searchOpen: msg.items.length > 0,
574
+ searchQuery: msg.query,
575
+ searchItems: toRows(msg.items, 0),
576
+ searchIndex: 0,
577
+ searchX: msg.x,
578
+ searchY: msg.y,
579
+ };
580
+ case 'searchHide':
581
+ return state.searchOpen ? { ...state, searchOpen: false } : state;
582
+ case 'searchMove': {
583
+ if (!state.searchOpen || state.searchItems.length === 0)
584
+ return state;
585
+ const i = (state.searchIndex + msg.delta + state.searchItems.length) % state.searchItems.length;
586
+ return {
587
+ ...state,
588
+ searchIndex: i,
589
+ searchItems: state.searchItems.map((r, idx) => ({ ...r, active: idx === i })),
590
+ };
591
+ }
592
+ case 'searchHover': {
593
+ if (msg.index < 0 || msg.index >= state.searchItems.length)
594
+ return state;
595
+ return {
596
+ ...state,
597
+ searchIndex: msg.index,
598
+ searchItems: state.searchItems.map((r, idx) => ({ ...r, active: idx === msg.index })),
599
+ };
600
+ }
601
+ case 'searchChoose': {
602
+ const row = state.searchItems[state.searchIndex];
603
+ if (!state.searchOpen || !row)
604
+ return { ...state, searchOpen: false };
605
+ return [
606
+ { ...state, searchOpen: false },
607
+ [{ type: 'insert', target: row.target, query: state.searchQuery }],
608
+ ];
609
+ }
610
+ case 'searchClick': {
611
+ const row = state.searchItems[msg.index];
612
+ if (!row)
613
+ return state;
614
+ return [
615
+ { ...state, searchOpen: false },
616
+ [{ type: 'insert', target: row.target, query: state.searchQuery }],
617
+ ];
618
+ }
619
+ }
620
+ },
621
+ onEffect: (effect, ctx) => {
622
+ if (effect.type === 'navigate') {
623
+ opts.onNavigate?.(effect.link);
624
+ return;
625
+ }
626
+ // insert: replace the typed `[[query` with a wikilink node + a space.
627
+ const editor = ctx.editor();
628
+ if (!editor)
629
+ return;
630
+ editor.update(() => {
631
+ const selection = $getSelection();
632
+ if (!$isRangeSelection(selection) || !selection.isCollapsed())
633
+ return;
634
+ const node = selection.anchor.getNode();
635
+ if (!$isTextNode(node))
636
+ return;
637
+ const offset = selection.anchor.offset;
638
+ // Remove the `[[` (2 chars) plus the query text.
639
+ const start = offset - effect.query.length - 2;
640
+ if (start < 0)
641
+ return;
642
+ node.spliceText(start, effect.query.length + 2, '', true);
643
+ const sel = $getSelection();
644
+ if (!$isRangeSelection(sel))
645
+ return;
646
+ sel.insertNodes([$createWikiLinkNode(effect.target, null), $createTextNode(' ')]);
647
+ });
462
648
  },
463
- onEffect: (effect) => opts.onNavigate?.(effect.link),
649
+ view: ({ state, send }) => overlayRoot({
650
+ open: state.at('searchOpen'),
651
+ x: state.at('searchX'),
652
+ y: state.at('searchY'),
653
+ zIndex: OVERLAY_Z.typeahead,
654
+ attrs: { 'data-scope': 'md-wikilink', 'data-part': 'panel-root' },
655
+ children: () => [
656
+ div({ 'data-scope': 'md-wikilink', 'data-part': 'panel' }, [
657
+ div({ 'data-scope': 'md-wikilink', 'data-part': 'results', role: 'listbox' }, [
658
+ each(state.at('searchItems'), {
659
+ key: (r) => r.target,
660
+ render: (item, index) => [
661
+ div({
662
+ 'data-scope': 'md-wikilink',
663
+ 'data-part': 'result',
664
+ role: 'option',
665
+ 'data-active': item.map((r) => (r.active ? '' : undefined)),
666
+ onMouseDown: (e) => {
667
+ e.preventDefault();
668
+ send({ type: 'searchClick', index: index.peek() });
669
+ },
670
+ onMouseEnter: () => send({ type: 'searchHover', index: index.peek() }),
671
+ }, [
672
+ div({ 'data-scope': 'md-wikilink', 'data-part': 'result-title' }, [
673
+ text(item.map((r) => r.title)),
674
+ ]),
675
+ div({ 'data-scope': 'md-wikilink', 'data-part': 'result-snippet' }, [
676
+ text(item.map((r) => r.snippet)),
677
+ ]),
678
+ ]),
679
+ ],
680
+ }),
681
+ ]),
682
+ // The reference pane: the active candidate's content preview.
683
+ div({ 'data-scope': 'md-wikilink', 'data-part': 'preview' }, [
684
+ text(state.map((s) => s.searchItems[s.searchIndex]?.preview ?? '')),
685
+ ]),
686
+ ]),
687
+ ],
688
+ }),
464
689
  }),
465
690
  };
466
691
  }
@@ -1 +1 @@
1
- {"version":3,"file":"wikilink.js","sourceRoot":"","sources":["../../src/plugins/wikilink.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"wikilink.js","sourceRoot":"","sources":["../../src/plugins/wikilink.ts"],"names":[],"mappings":"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"}
@@ -61,3 +61,58 @@
61
61
  background-color 120ms ease;
62
62
  }
63
63
  }
64
+
65
+ /* Block-actions menu (grip click / right-click). Positioned inline by the plugin;
66
+ * appearance only here. */
67
+ [data-scope='md-block-drag'][data-part='menu'] {
68
+ min-width: 160px;
69
+ padding: 4px;
70
+ border: 1px solid var(--md-border, rgba(127, 127, 127, 0.2));
71
+ border-radius: var(--md-radius, 8px);
72
+ background: var(--md-surface, #fff);
73
+ color: var(--md-text, #1f2328);
74
+ box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
75
+ font-size: 13px;
76
+ display: flex;
77
+ flex-direction: column;
78
+ gap: 1px;
79
+ }
80
+
81
+ [data-scope='md-block-drag'][data-part='menu-label'] {
82
+ padding: 4px 8px 2px;
83
+ font-size: 11px;
84
+ font-weight: 600;
85
+ text-transform: uppercase;
86
+ letter-spacing: 0.04em;
87
+ color: var(--md-muted, #9aa0a6);
88
+ }
89
+
90
+ [data-scope='md-block-drag'][data-part='menu-item'] {
91
+ display: flex;
92
+ align-items: center;
93
+ width: 100%;
94
+ padding: 5px 8px;
95
+ border: 0;
96
+ border-radius: 5px;
97
+ background: transparent;
98
+ color: inherit;
99
+ font: inherit;
100
+ text-align: left;
101
+ cursor: pointer;
102
+ }
103
+
104
+ [data-scope='md-block-drag'][data-part='menu-item']:hover,
105
+ [data-scope='md-block-drag'][data-part='menu-item']:focus-visible {
106
+ background: var(--md-hover, rgba(127, 127, 127, 0.14));
107
+ outline: none;
108
+ }
109
+
110
+ [data-scope='md-block-drag'][data-part='menu-item']:focus-visible {
111
+ box-shadow: inset 0 0 0 2px var(--md-accent, #3b82f6);
112
+ }
113
+
114
+ [data-scope='md-block-drag'][data-part='menu-sep'] {
115
+ height: 1px;
116
+ margin: 4px 0;
117
+ background: var(--md-border, rgba(127, 127, 127, 0.2));
118
+ }
@@ -485,6 +485,54 @@
485
485
  background: var(--md-primary-soft);
486
486
  }
487
487
 
488
+ /* ── Document-link (wikilink) search + reference panel ────────────────── */
489
+ [data-scope='md-wikilink'][data-part='panel'] {
490
+ display: flex;
491
+ min-width: 22rem;
492
+ max-width: 34rem;
493
+ background: var(--md-surface);
494
+ border: 1px solid var(--md-border);
495
+ border-radius: 8px;
496
+ box-shadow: 0 12px 32px rgba(0, 0, 0, 0.5);
497
+ overflow: hidden;
498
+ }
499
+ [data-scope='md-wikilink'][data-part='results'] {
500
+ flex: 0 0 14rem;
501
+ max-height: 18rem;
502
+ overflow: auto;
503
+ padding: 0.25rem;
504
+ border-right: 1px solid var(--md-border);
505
+ }
506
+ [data-scope='md-wikilink'][data-part='result'] {
507
+ padding: 0.4rem 0.6rem;
508
+ border-radius: 5px;
509
+ cursor: pointer;
510
+ }
511
+ [data-scope='md-wikilink'][data-part='result'][data-active] {
512
+ background: var(--md-primary-soft);
513
+ }
514
+ [data-scope='md-wikilink'][data-part='result-title'] {
515
+ font-size: 0.88rem;
516
+ color: var(--md-text);
517
+ }
518
+ [data-scope='md-wikilink'][data-part='result-snippet'] {
519
+ font-size: 0.78rem;
520
+ color: var(--md-muted);
521
+ white-space: nowrap;
522
+ overflow: hidden;
523
+ text-overflow: ellipsis;
524
+ }
525
+ [data-scope='md-wikilink'][data-part='preview'] {
526
+ flex: 1 1 auto;
527
+ max-height: 18rem;
528
+ overflow: auto;
529
+ padding: 0.6rem 0.75rem;
530
+ font-size: 0.82rem;
531
+ line-height: 1.5;
532
+ color: var(--md-text-soft, var(--md-muted));
533
+ white-space: pre-wrap;
534
+ }
535
+
488
536
  /* ── Context menu ─────────────────────────────────────────────────────── */
489
537
  [data-scope='md-context'][data-part='backdrop'] {
490
538
  position: fixed;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@llui/markdown-editor",
3
- "version": "0.4.0",
3
+ "version": "0.5.0",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -46,10 +46,10 @@
46
46
  "@lexical/selection": "^0.48.0",
47
47
  "@lexical/utils": "^0.48.0",
48
48
  "@lexical/code-core": "^0.48.0",
49
- "@llui/dom": "^0.12.0",
50
49
  "@llui/lexical": "^0.4.0",
51
- "@llui/markdown": "^0.12.0",
52
- "@llui/components": "^0.13.0"
50
+ "@llui/components": "^0.13.0",
51
+ "@llui/dom": "^0.12.0",
52
+ "@llui/markdown": "^0.12.0"
53
53
  },
54
54
  "devDependencies": {
55
55
  "lexical": "^0.48.0",
@@ -65,9 +65,9 @@
65
65
  "vitest": "^4.1.2",
66
66
  "@lexical/code-core": "^0.48.0",
67
67
  "@llui/dom": "0.12.0",
68
- "@llui/components": "0.13.0",
68
+ "@llui/lexical": "0.4.0",
69
69
  "@llui/markdown": "0.12.0",
70
- "@llui/lexical": "0.4.0"
70
+ "@llui/components": "0.13.0"
71
71
  },
72
72
  "sideEffects": [
73
73
  "./dist/styles/editor.css",