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/README.md +29 -4
- package/dist/browser/index.iife.js +17 -32
- package/dist/browser/index.js +17 -32
- package/dist/index.cjs +107 -81
- package/dist/index.d.cts +24 -7
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.mts +24 -7
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +108 -57
- package/dist/index.mjs.map +1 -1
- package/package.json +2 -7
package/dist/index.cjs
CHANGED
|
@@ -1,35 +1,13 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
|
-
|
|
3
|
-
|
|
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
|
|
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
|
|
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
|
|
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
|
-
*
|
|
410
|
-
*
|
|
411
|
-
*
|
|
412
|
-
*
|
|
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
|
package/dist/index.d.cts.map
CHANGED
|
@@ -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
|
-
*
|
|
410
|
-
*
|
|
411
|
-
*
|
|
412
|
-
*
|
|
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
|
package/dist/index.d.mts.map
CHANGED
|
@@ -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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"}
|