github-markdown-adf 1.1.0 → 1.3.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.
package/dist/index.cjs CHANGED
@@ -1,35 +1,13 @@
1
1
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
- //#region \0rolldown/runtime.js
3
- var __create = Object.create;
4
- var __defProp = Object.defineProperty;
5
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
- var __getOwnPropNames = Object.getOwnPropertyNames;
7
- var __getProtoOf = Object.getPrototypeOf;
8
- var __hasOwnProp = Object.prototype.hasOwnProperty;
9
- var __copyProps = (to, from, except, desc) => {
10
- if (from && typeof from === "object" || typeof from === "function") for (var keys = __getOwnPropNames(from), i = 0, n = keys.length, key; i < n; i++) {
11
- key = keys[i];
12
- if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
13
- get: ((k) => from[k]).bind(null, key),
14
- enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
15
- });
16
- }
17
- return to;
18
- };
19
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
20
- value: mod,
21
- enumerable: true
22
- }) : target, mod));
23
- //#endregion
24
- let unified = require("unified");
25
- let remark_parse = require("remark-parse");
26
- remark_parse = __toESM(remark_parse);
27
- let remark_gfm = require("remark-gfm");
28
- remark_gfm = __toESM(remark_gfm);
2
+ let mdast_util_from_markdown = require("mdast-util-from-markdown");
3
+ let mdast_util_gfm = require("mdast-util-gfm");
29
4
  //#region src/md-to-adf/parser.ts
30
- const processor = (0, unified.unified)().use(remark_parse.default).use(remark_gfm.default);
5
+ const markdownParseOptions = {
6
+ extensions: [(0, require("micromark-extension-gfm").gfm)()],
7
+ mdastExtensions: [(0, mdast_util_gfm.gfmFromMarkdown)()]
8
+ };
31
9
  function parseMarkdown(markdown) {
32
- return processor.parse(markdown);
10
+ return (0, mdast_util_from_markdown.fromMarkdown)(markdown, markdownParseOptions);
33
11
  }
34
12
  //#endregion
35
13
  //#region src/utils/language.ts
@@ -60,6 +38,7 @@ function normalizeLanguage(lang) {
60
38
  //#region src/md-to-adf/transform/marks.ts
61
39
  const OPEN_HTML_TAG = /^<(ins|sub|sup)>$/i;
62
40
  const CLOSE_HTML_TAG = /^<\/(ins|sub|sup)>$/i;
41
+ const MENTION_PATTERN = /(^|[^A-Za-z0-9_@])@([A-Za-z0-9](?:[A-Za-z0-9._-]*[A-Za-z0-9])?)(?=$|[^A-Za-z0-9._@-])/g;
63
42
  function htmlTagToMark(tag) {
64
43
  const t = tag.toLowerCase();
65
44
  if (t === "ins") return { type: "underline" };
@@ -73,7 +52,7 @@ function htmlTagToMark(tag) {
73
52
  };
74
53
  return null;
75
54
  }
76
- function phrasingToInlineNodes(nodes) {
55
+ function phrasingToInlineNodes(nodes, options) {
77
56
  const markStack = [];
78
57
  const result = [];
79
58
  for (const node of nodes) {
@@ -89,22 +68,22 @@ function phrasingToInlineNodes(nodes) {
89
68
  continue;
90
69
  }
91
70
  }
92
- result.push(...phrasingToInline(node, markStack.slice()));
71
+ result.push(...phrasingToInline(node, markStack.slice(), options));
93
72
  }
94
73
  return result;
95
74
  }
96
- function phrasingToInline(node, inheritedMarks) {
75
+ function phrasingToInline(node, inheritedMarks, options) {
97
76
  switch (node.type) {
98
77
  case "text":
99
78
  if (!node.value) return [];
100
- return [makeText(node.value, inheritedMarks)];
79
+ return textToInlineNodes(node.value, inheritedMarks, options);
101
80
  case "inlineCode": {
102
81
  const marks = [...inheritedMarks.filter((m) => m.type === "link"), { type: "code" }];
103
82
  return [makeText(node.value, marks)];
104
83
  }
105
- case "strong": return node.children.flatMap((c) => phrasingToInline(c, [...inheritedMarks, { type: "strong" }]));
106
- case "emphasis": return node.children.flatMap((c) => phrasingToInline(c, [...inheritedMarks, { type: "em" }]));
107
- case "delete": return node.children.flatMap((c) => phrasingToInline(c, [...inheritedMarks, { type: "strike" }]));
84
+ case "strong": return node.children.flatMap((c) => phrasingToInline(c, [...inheritedMarks, { type: "strong" }], options));
85
+ case "emphasis": return node.children.flatMap((c) => phrasingToInline(c, [...inheritedMarks, { type: "em" }], options));
86
+ case "delete": return node.children.flatMap((c) => phrasingToInline(c, [...inheritedMarks, { type: "strike" }], options));
108
87
  case "link": {
109
88
  const linkMark = {
110
89
  type: "link",
@@ -113,7 +92,7 @@ function phrasingToInline(node, inheritedMarks) {
113
92
  ...node.title ? { title: node.title } : {}
114
93
  }
115
94
  };
116
- return node.children.flatMap((c) => phrasingToInline(c, [...inheritedMarks, linkMark]));
95
+ return node.children.flatMap((c) => phrasingToInline(c, [...inheritedMarks, linkMark], options));
117
96
  }
118
97
  case "image": return [{
119
98
  type: "inlineCard",
@@ -126,6 +105,27 @@ function phrasingToInline(node, inheritedMarks) {
126
105
  default: return [];
127
106
  }
128
107
  }
108
+ function textToInlineNodes(value, marks, options) {
109
+ if (!options?.mentions || marks.length > 0) return [makeText(value, marks)];
110
+ const result = [];
111
+ let lastIndex = 0;
112
+ for (const match of value.matchAll(MENTION_PATTERN)) {
113
+ const matchIndex = match.index ?? 0;
114
+ const prefix = match[1] ?? "";
115
+ const username = match[2];
116
+ if (!username) continue;
117
+ const mentionStart = matchIndex + prefix.length;
118
+ const mentionEnd = matchIndex + match[0].length;
119
+ appendTextNode(result, value.slice(lastIndex, mentionStart), marks);
120
+ const mentionNode = makeMentionNode(username, options.mentions);
121
+ if (mentionNode) result.push(mentionNode);
122
+ else appendTextNode(result, value.slice(mentionStart, mentionEnd), marks);
123
+ lastIndex = mentionEnd;
124
+ }
125
+ if (result.length === 0) return [makeText(value, marks)];
126
+ appendTextNode(result, value.slice(lastIndex), marks);
127
+ return result;
128
+ }
129
129
  function makeText(value, marks) {
130
130
  const node = {
131
131
  type: "text",
@@ -134,6 +134,31 @@ function makeText(value, marks) {
134
134
  if (marks.length > 0) node.marks = marks;
135
135
  return node;
136
136
  }
137
+ function appendTextNode(result, value, marks) {
138
+ if (!value) return;
139
+ const previousNode = result[result.length - 1];
140
+ if (previousNode?.type === "text" && sameMarks(previousNode.marks, marks)) {
141
+ previousNode.text += value;
142
+ return;
143
+ }
144
+ result.push(makeText(value, marks));
145
+ }
146
+ function makeMentionNode(username, mentions) {
147
+ const attrs = typeof mentions === "function" ? mentions(username) : {
148
+ id: username,
149
+ text: `@${username}`
150
+ };
151
+ if (!attrs) return null;
152
+ return {
153
+ type: "mention",
154
+ attrs
155
+ };
156
+ }
157
+ function sameMarks(leftMarks, rightMarks) {
158
+ const normalizedLeft = leftMarks ?? [];
159
+ if (normalizedLeft.length !== rightMarks.length) return false;
160
+ return normalizedLeft.every((mark, index) => JSON.stringify(mark) === JSON.stringify(rightMarks[index]));
161
+ }
137
162
  function parseHtmlInline(html, inheritedMarks) {
138
163
  const stripped = html.replace(/<[^>]+>/g, "");
139
164
  if (stripped) return [makeText(stripped, inheritedMarks)];
@@ -141,17 +166,17 @@ function parseHtmlInline(html, inheritedMarks) {
141
166
  }
142
167
  //#endregion
143
168
  //#region src/md-to-adf/transform/blocks.ts
144
- function transformHeading(node) {
169
+ function transformHeading(node, options) {
145
170
  return {
146
171
  type: "heading",
147
172
  attrs: { level: node.depth },
148
- content: phrasingToInlineNodes(node.children)
173
+ content: phrasingToInlineNodes(node.children, options)
149
174
  };
150
175
  }
151
- function transformParagraph(node) {
176
+ function transformParagraph(node, options) {
152
177
  return {
153
178
  type: "paragraph",
154
- content: phrasingToInlineNodes(node.children)
179
+ content: phrasingToInlineNodes(node.children, options)
155
180
  };
156
181
  }
157
182
  function transformCode(node) {
@@ -175,7 +200,7 @@ const ALERT_TO_PANEL = {
175
200
  WARNING: "warning",
176
201
  CAUTION: "error"
177
202
  };
178
- function buildPanelContent(firstChild, restChildren, transformChildren) {
203
+ function buildPanelContent(firstChild, restChildren, transformChildren, options) {
179
204
  const remainingText = firstChild.children[0].value.replace(ALERT_PATTERN, "").trim();
180
205
  const remainingInlines = firstChild.children.slice(1);
181
206
  const contentNodes = [];
@@ -187,7 +212,7 @@ function buildPanelContent(firstChild, restChildren, transformChildren) {
187
212
  value: remainingText
188
213
  }] : [], ...remainingInlines]
189
214
  };
190
- if (paragraph.children.length > 0) contentNodes.push(transformParagraph(paragraph));
215
+ if (paragraph.children.length > 0) contentNodes.push(transformParagraph(paragraph, options));
191
216
  }
192
217
  contentNodes.push(...transformChildren(restChildren));
193
218
  if (contentNodes.length === 0) contentNodes.push({
@@ -196,7 +221,7 @@ function buildPanelContent(firstChild, restChildren, transformChildren) {
196
221
  });
197
222
  return contentNodes;
198
223
  }
199
- function tryTransformAlert(node, transformChildren) {
224
+ function tryTransformAlert(node, transformChildren, options) {
200
225
  const firstChild = node.children[0];
201
226
  if (firstChild?.type !== "paragraph") return null;
202
227
  const firstText = firstChild.children[0];
@@ -204,15 +229,15 @@ function tryTransformAlert(node, transformChildren) {
204
229
  const match = ALERT_PATTERN.exec(firstText.value);
205
230
  if (!match) return null;
206
231
  const panelType = ALERT_TO_PANEL[(match[1] ?? "NOTE").toUpperCase()] ?? "info";
207
- const content = buildPanelContent(firstChild, node.children.slice(1), transformChildren);
232
+ const content = buildPanelContent(firstChild, node.children.slice(1), transformChildren, options);
208
233
  return {
209
234
  type: "panel",
210
235
  attrs: { panelType },
211
236
  content
212
237
  };
213
238
  }
214
- function transformBlockquote(node, transformChildren) {
215
- const panel = tryTransformAlert(node, transformChildren);
239
+ function transformBlockquote(node, transformChildren, options) {
240
+ const panel = tryTransformAlert(node, transformChildren, options);
216
241
  if (panel) return panel;
217
242
  const content = transformChildren(node.children);
218
243
  return {
@@ -376,33 +401,33 @@ function generateId() {
376
401
  }
377
402
  //#endregion
378
403
  //#region src/md-to-adf/transform/lists.ts
379
- function transformList(node, transformBlock) {
380
- if (node.children.some((item) => item.checked !== null && item.checked !== void 0)) return transformTaskList(node);
381
- if (node.ordered) return transformOrderedList(node, transformBlock);
382
- return transformBulletList(node, transformBlock);
404
+ function transformList(node, transformBlock, options) {
405
+ if (node.children.some((item) => item.checked !== null && item.checked !== void 0)) return transformTaskList(node, options);
406
+ if (node.ordered) return transformOrderedList(node, transformBlock, options);
407
+ return transformBulletList(node, transformBlock, options);
383
408
  }
384
- function transformBulletList(node, transformBlock) {
409
+ function transformBulletList(node, transformBlock, options) {
385
410
  return {
386
411
  type: "bulletList",
387
- content: node.children.map((item) => transformListItem(item, transformBlock))
412
+ content: node.children.map((item) => transformListItem(item, transformBlock, options))
388
413
  };
389
414
  }
390
- function transformOrderedList(node, transformBlock) {
415
+ function transformOrderedList(node, transformBlock, options) {
391
416
  const result = {
392
417
  type: "orderedList",
393
- content: node.children.map((item) => transformListItem(item, transformBlock))
418
+ content: node.children.map((item) => transformListItem(item, transformBlock, options))
394
419
  };
395
420
  if (node.start !== null && node.start !== void 0 && node.start !== 1) result.attrs = { order: node.start };
396
421
  return result;
397
422
  }
398
- function transformListItem(node, transformBlock) {
423
+ function transformListItem(node, transformBlock, options) {
399
424
  const content = [];
400
425
  for (const child of node.children) if (child.type === "paragraph") content.push({
401
426
  type: "paragraph",
402
- content: phrasingToInlineNodes(child.children)
427
+ content: phrasingToInlineNodes(child.children, options)
403
428
  });
404
429
  else if (child.type === "list") {
405
- const nestedList = transformList(child, transformBlock);
430
+ const nestedList = transformList(child, transformBlock, options);
406
431
  if (nestedList.type === "taskList") {
407
432
  const para = {
408
433
  type: "paragraph",
@@ -439,11 +464,11 @@ function transformListItem(node, transformBlock) {
439
464
  content
440
465
  };
441
466
  }
442
- function transformTaskList(node) {
467
+ function transformTaskList(node, options) {
443
468
  const listId = generateId();
444
469
  const items = node.children.map((listItem) => {
445
470
  const state = listItem.checked === true ? "DONE" : "TODO";
446
- const inlineContent = listItem.children.filter((c) => c.type === "paragraph").flatMap((c) => phrasingToInlineNodes(c.children));
471
+ const inlineContent = listItem.children.filter((c) => c.type === "paragraph").flatMap((c) => phrasingToInlineNodes(c.children, options));
447
472
  const taskItem = {
448
473
  type: "taskItem",
449
474
  attrs: {
@@ -462,7 +487,7 @@ function transformTaskList(node) {
462
487
  }
463
488
  //#endregion
464
489
  //#region src/md-to-adf/transform/tables.ts
465
- function transformTable(node) {
490
+ function transformTable(node, options) {
466
491
  const rows = node.children;
467
492
  if (rows.length === 0) return {
468
493
  type: "table",
@@ -473,19 +498,19 @@ function transformTable(node) {
473
498
  const adfRows = [];
474
499
  if (headerRow) adfRows.push({
475
500
  type: "tableRow",
476
- content: headerRow.children.map((cell) => transformTableHeader(cell))
501
+ content: headerRow.children.map((cell) => transformTableHeader(cell, options))
477
502
  });
478
503
  for (const row of bodyRows) adfRows.push({
479
504
  type: "tableRow",
480
- content: row.children.map((cell) => transformTableCell(cell))
505
+ content: row.children.map((cell) => transformTableCell(cell, options))
481
506
  });
482
507
  return {
483
508
  type: "table",
484
509
  content: adfRows
485
510
  };
486
511
  }
487
- function transformTableHeader(cell) {
488
- const inlines = phrasingToInlineNodes(cell.children);
512
+ function transformTableHeader(cell, options) {
513
+ const inlines = phrasingToInlineNodes(cell.children, options);
489
514
  return {
490
515
  type: "tableHeader",
491
516
  attrs: {},
@@ -495,8 +520,8 @@ function transformTableHeader(cell) {
495
520
  }]
496
521
  };
497
522
  }
498
- function transformTableCell(cell) {
499
- const inlines = phrasingToInlineNodes(cell.children);
523
+ function transformTableCell(cell, options) {
524
+ const inlines = phrasingToInlineNodes(cell.children, options);
500
525
  return {
501
526
  type: "tableCell",
502
527
  attrs: {},
@@ -508,42 +533,42 @@ function transformTableCell(cell) {
508
533
  }
509
534
  //#endregion
510
535
  //#region src/md-to-adf/transform/index.ts
511
- function transformRoot(root) {
536
+ function transformRoot(root, options) {
512
537
  return {
513
538
  version: 1,
514
539
  type: "doc",
515
- content: transformNodes(root.children)
540
+ content: transformNodes(root.children, options)
516
541
  };
517
542
  }
518
- function transformNodes(nodes) {
543
+ function transformNodes(nodes, options) {
519
544
  const result = [];
520
545
  const detailsPairs = buildDetailsPairs(nodes);
521
546
  let i = 0;
522
547
  while (i < nodes.length) {
523
- const expand = tryTransformExpand(nodes, i, detailsPairs, transformBlock);
548
+ const expand = tryTransformExpand(nodes, i, detailsPairs, (node) => transformBlock(node, options));
524
549
  if (expand) {
525
550
  result.push(expand.node);
526
551
  i = expand.next;
527
552
  continue;
528
553
  }
529
- const transformed = transformBlock(nodes[i]);
554
+ const transformed = transformBlock(nodes[i], options);
530
555
  if (transformed) result.push(transformed);
531
556
  i++;
532
557
  }
533
558
  return result;
534
559
  }
535
- function transformBlock(node) {
560
+ function transformBlock(node, options) {
536
561
  switch (node.type) {
537
- case "heading": return transformHeading(node);
538
- case "paragraph": return transformParagraph(node);
562
+ case "heading": return transformHeading(node, options);
563
+ case "paragraph": return transformParagraph(node, options);
539
564
  case "code": return transformCode(node);
540
565
  case "thematicBreak": return transformThematicBreak(node);
541
566
  case "blockquote": return transformBlockquote(node, (children) => children.flatMap((c) => {
542
- const r = transformBlock(c);
567
+ const r = transformBlock(c, options);
543
568
  return r ? [r] : [];
544
- }));
545
- case "list": return transformList(node, transformBlock);
546
- case "table": return transformTable(node);
569
+ }), options);
570
+ case "list": return transformList(node, (blockNode) => transformBlock(blockNode, options), options);
571
+ case "table": return transformTable(node, options);
547
572
  case "html": return transformHtmlBlock(node);
548
573
  default: return null;
549
574
  }
@@ -570,8 +595,8 @@ function sanitizeText(text) {
570
595
  }
571
596
  //#endregion
572
597
  //#region src/md-to-adf/index.ts
573
- function mdToAdf(markdown) {
574
- return transformRoot(parseMarkdown(sanitizeText(markdown)));
598
+ function mdToAdf(markdown, options) {
599
+ return transformRoot(parseMarkdown(sanitizeText(markdown)), options);
575
600
  }
576
601
  //#endregion
577
602
  //#region src/utils/escape.ts
@@ -638,6 +663,7 @@ function serializeInline(node, options) {
638
663
  case "hardBreak": return "\\\n";
639
664
  case "mention":
640
665
  if (options?.mentions === false) return node.attrs.text ?? node.attrs.id;
666
+ if (typeof options?.mentions === "function") return options.mentions(node.attrs);
641
667
  return node.attrs.text ?? `@${node.attrs.id}`;
642
668
  case "emoji": return node.attrs.text ?? `:${node.attrs.shortName}:`;
643
669
  case "date": return node.attrs.timestamp;
package/dist/index.d.cts CHANGED
@@ -404,22 +404,39 @@ interface AdfDoc {
404
404
  }
405
405
  //#endregion
406
406
  //#region src/types/options.d.ts
407
+ interface MdToAdfOptions {
408
+ /**
409
+ * Controls how plain `@username` mentions in Markdown are converted.
410
+ *
411
+ * When omitted or `false` (default), mention-like text stays as plain text.
412
+ * When `true`, `@alice` becomes a mention node with
413
+ * `{ id: 'alice', text: '@alice' }`.
414
+ * When set to a function, that transformer receives the username without the
415
+ * `@` prefix and should return mention attrs. Returning `null` or
416
+ * `undefined` leaves the original markdown text unchanged.
417
+ * @default false
418
+ */
419
+ mentions?: boolean | ((username: string) => MentionNode['attrs'] | null | undefined);
420
+ }
407
421
  interface AdfToMdOptions {
408
422
  /**
409
- * Whether to render ADF mention nodes as tagged mentions. When `true`
410
- * (default), a mention renders as the display text if available, otherwise
411
- * as `@{id}`. When `false`, it renders as plain text: the display text if
412
- * available, otherwise just the bare `{id}` without the `@` prefix.
423
+ * Controls how ADF mention nodes are rendered.
424
+ *
425
+ * When `true` (default), a mention renders as the display text if available,
426
+ * otherwise as `@{id}`. When `false`, it renders as plain text: the display
427
+ * text if available, otherwise just the bare `{id}` without the `@` prefix.
428
+ * When set to a function, that transformer receives the mention attributes
429
+ * and its return value is used as-is.
413
430
  * @default true
414
431
  */
415
- mentions?: boolean;
432
+ mentions?: boolean | ((attrs: MentionNode['attrs']) => string);
416
433
  }
417
434
  //#endregion
418
435
  //#region src/md-to-adf/index.d.ts
419
- declare function mdToAdf(markdown: string): AdfDoc;
436
+ declare function mdToAdf(markdown: string, options?: MdToAdfOptions): AdfDoc;
420
437
  //#endregion
421
438
  //#region src/adf-to-md/index.d.ts
422
439
  declare function adfToMd(adf: AdfDoc, options?: AdfToMdOptions): string;
423
440
  //#endregion
424
- export { type AdfDoc, type AdfInlineNode, type AdfMark, type AdfNode, type AdfToMdOptions, type AnnotationMark, type BackgroundColorMark, type BlockCardNode, type BlockquoteNode, type BulletListNode, type CodeBlockNode, type CodeMark, type DateNode, type DecisionItemNode, type DecisionListNode, type EmMark, type EmbedCardNode, type EmojiNode, type ExpandNode, type HardBreakNode, type HeadingNode, type InlineCardNode, type LayoutColumnNode, type LayoutSectionNode, type LinkMark, type ListItemNode, type MediaGroupNode, type MediaNode, type MediaSingleNode, type MentionNode, type NestedExpandNode, type OrderedListNode, type PanelNode, type ParagraphNode, type RuleNode, type StatusNode, type StrikeMark, type StrongMark, type SubsupMark, type TableCellNode, type TableHeaderNode, type TableNode, type TableRowNode, type TaskItemNode, type TaskListNode, type TextColorMark, type TextNode, type UnderlineMark, adfToMd, mdToAdf };
441
+ export { type AdfDoc, type AdfInlineNode, type AdfMark, type AdfNode, type AdfToMdOptions, type AnnotationMark, type BackgroundColorMark, type BlockCardNode, type BlockquoteNode, type BulletListNode, type CodeBlockNode, type CodeMark, type DateNode, type DecisionItemNode, type DecisionListNode, type EmMark, type EmbedCardNode, type EmojiNode, type ExpandNode, type HardBreakNode, type HeadingNode, type InlineCardNode, type LayoutColumnNode, type LayoutSectionNode, type LinkMark, type ListItemNode, type MdToAdfOptions, type MediaGroupNode, type MediaNode, type MediaSingleNode, type MentionNode, type NestedExpandNode, type OrderedListNode, type PanelNode, type ParagraphNode, type RuleNode, type StatusNode, type StrikeMark, type StrongMark, type SubsupMark, type TableCellNode, type TableHeaderNode, type TableNode, type TableRowNode, type TaskItemNode, type TaskListNode, type TextColorMark, type TextNode, type UnderlineMark, adfToMd, mdToAdf };
425
442
  //# sourceMappingURL=index.d.cts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.cts","names":[],"sources":["../src/types/adf.ts","../src/types/options.ts","../src/md-to-adf/index.ts","../src/adf-to-md/index.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.cts","names":[],"sources":["../src/types/adf.ts","../src/types/options.ts","../src/md-to-adf/index.ts","../src/adf-to-md/index.ts"],"mappings":"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"}
package/dist/index.d.mts CHANGED
@@ -404,22 +404,39 @@ interface AdfDoc {
404
404
  }
405
405
  //#endregion
406
406
  //#region src/types/options.d.ts
407
+ interface MdToAdfOptions {
408
+ /**
409
+ * Controls how plain `@username` mentions in Markdown are converted.
410
+ *
411
+ * When omitted or `false` (default), mention-like text stays as plain text.
412
+ * When `true`, `@alice` becomes a mention node with
413
+ * `{ id: 'alice', text: '@alice' }`.
414
+ * When set to a function, that transformer receives the username without the
415
+ * `@` prefix and should return mention attrs. Returning `null` or
416
+ * `undefined` leaves the original markdown text unchanged.
417
+ * @default false
418
+ */
419
+ mentions?: boolean | ((username: string) => MentionNode['attrs'] | null | undefined);
420
+ }
407
421
  interface AdfToMdOptions {
408
422
  /**
409
- * Whether to render ADF mention nodes as tagged mentions. When `true`
410
- * (default), a mention renders as the display text if available, otherwise
411
- * as `@{id}`. When `false`, it renders as plain text: the display text if
412
- * available, otherwise just the bare `{id}` without the `@` prefix.
423
+ * Controls how ADF mention nodes are rendered.
424
+ *
425
+ * When `true` (default), a mention renders as the display text if available,
426
+ * otherwise as `@{id}`. When `false`, it renders as plain text: the display
427
+ * text if available, otherwise just the bare `{id}` without the `@` prefix.
428
+ * When set to a function, that transformer receives the mention attributes
429
+ * and its return value is used as-is.
413
430
  * @default true
414
431
  */
415
- mentions?: boolean;
432
+ mentions?: boolean | ((attrs: MentionNode['attrs']) => string);
416
433
  }
417
434
  //#endregion
418
435
  //#region src/md-to-adf/index.d.ts
419
- declare function mdToAdf(markdown: string): AdfDoc;
436
+ declare function mdToAdf(markdown: string, options?: MdToAdfOptions): AdfDoc;
420
437
  //#endregion
421
438
  //#region src/adf-to-md/index.d.ts
422
439
  declare function adfToMd(adf: AdfDoc, options?: AdfToMdOptions): string;
423
440
  //#endregion
424
- export { type AdfDoc, type AdfInlineNode, type AdfMark, type AdfNode, type AdfToMdOptions, type AnnotationMark, type BackgroundColorMark, type BlockCardNode, type BlockquoteNode, type BulletListNode, type CodeBlockNode, type CodeMark, type DateNode, type DecisionItemNode, type DecisionListNode, type EmMark, type EmbedCardNode, type EmojiNode, type ExpandNode, type HardBreakNode, type HeadingNode, type InlineCardNode, type LayoutColumnNode, type LayoutSectionNode, type LinkMark, type ListItemNode, type MediaGroupNode, type MediaNode, type MediaSingleNode, type MentionNode, type NestedExpandNode, type OrderedListNode, type PanelNode, type ParagraphNode, type RuleNode, type StatusNode, type StrikeMark, type StrongMark, type SubsupMark, type TableCellNode, type TableHeaderNode, type TableNode, type TableRowNode, type TaskItemNode, type TaskListNode, type TextColorMark, type TextNode, type UnderlineMark, adfToMd, mdToAdf };
441
+ export { type AdfDoc, type AdfInlineNode, type AdfMark, type AdfNode, type AdfToMdOptions, type AnnotationMark, type BackgroundColorMark, type BlockCardNode, type BlockquoteNode, type BulletListNode, type CodeBlockNode, type CodeMark, type DateNode, type DecisionItemNode, type DecisionListNode, type EmMark, type EmbedCardNode, type EmojiNode, type ExpandNode, type HardBreakNode, type HeadingNode, type InlineCardNode, type LayoutColumnNode, type LayoutSectionNode, type LinkMark, type ListItemNode, type MdToAdfOptions, type MediaGroupNode, type MediaNode, type MediaSingleNode, type MentionNode, type NestedExpandNode, type OrderedListNode, type PanelNode, type ParagraphNode, type RuleNode, type StatusNode, type StrikeMark, type StrongMark, type SubsupMark, type TableCellNode, type TableHeaderNode, type TableNode, type TableRowNode, type TaskItemNode, type TaskListNode, type TextColorMark, type TextNode, type UnderlineMark, adfToMd, mdToAdf };
425
442
  //# sourceMappingURL=index.d.mts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../src/types/adf.ts","../src/types/options.ts","../src/md-to-adf/index.ts","../src/adf-to-md/index.ts"],"mappings":"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"}
1
+ {"version":3,"file":"index.d.mts","names":[],"sources":["../src/types/adf.ts","../src/types/options.ts","../src/md-to-adf/index.ts","../src/adf-to-md/index.ts"],"mappings":"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"}