safe-mdx 1.3.3 → 1.3.7
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/html/html-to-mdx-ast.d.ts +4 -2
- package/dist/html/html-to-mdx-ast.d.ts.map +1 -1
- package/dist/html/html-to-mdx-ast.js +105 -45
- package/dist/html/html-to-mdx-ast.js.map +1 -1
- package/dist/html/html-to-mdx-ast.test.js +365 -4
- package/dist/html/html-to-mdx-ast.test.js.map +1 -1
- package/dist/html/remark-mdx-jsx-normalize.d.ts +1 -1
- package/dist/html/remark-mdx-jsx-normalize.d.ts.map +1 -1
- package/dist/html/remark-mdx-jsx-normalize.js +92 -15
- package/dist/html/remark-mdx-jsx-normalize.js.map +1 -1
- package/dist/parse.d.ts +2 -2
- package/dist/parse.d.ts.map +1 -1
- package/dist/parse.js +2 -2
- package/dist/parse.js.map +1 -1
- package/dist/safe-mdx.d.ts +1 -1
- package/dist/safe-mdx.d.ts.map +1 -1
- package/dist/safe-mdx.js +8 -12
- package/dist/safe-mdx.js.map +1 -1
- package/package.json +2 -1
- package/src/html/html-to-mdx-ast.test.ts +393 -3
- package/src/html/html-to-mdx-ast.ts +118 -47
- package/src/html/remark-mdx-jsx-normalize.ts +98 -17
- package/src/parse.ts +2 -2
- package/src/safe-mdx.tsx +8 -11
package/dist/safe-mdx.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"safe-mdx.d.ts","sourceRoot":"","sources":["../src/safe-mdx.tsx"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"safe-mdx.d.ts","sourceRoot":"","sources":["../src/safe-mdx.tsx"],"names":[],"mappings":"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"}
|
package/dist/safe-mdx.js
CHANGED
|
@@ -85,7 +85,7 @@ export class MdastToJsx {
|
|
|
85
85
|
}
|
|
86
86
|
mapMdastChildren(node) {
|
|
87
87
|
const res = node.children
|
|
88
|
-
?.flatMap((child) => this.mdastTransformer(child))
|
|
88
|
+
?.flatMap((child) => this.mdastTransformer(child, node.type))
|
|
89
89
|
.filter(Boolean);
|
|
90
90
|
if (Array.isArray(res)) {
|
|
91
91
|
if (!res.length) {
|
|
@@ -161,7 +161,7 @@ export class MdastToJsx {
|
|
|
161
161
|
return this.createElement(Component, this.addLineNumberToProps(attrs, node), this.mapJsxChildren(node));
|
|
162
162
|
}
|
|
163
163
|
default: {
|
|
164
|
-
return this.mdastTransformer(node);
|
|
164
|
+
return this.mdastTransformer(node, 'mdxJsxElement');
|
|
165
165
|
}
|
|
166
166
|
}
|
|
167
167
|
}
|
|
@@ -391,19 +391,19 @@ export class MdastToJsx {
|
|
|
391
391
|
return attrsList;
|
|
392
392
|
}
|
|
393
393
|
run() {
|
|
394
|
-
const res = this.mdastTransformer(this.mdast);
|
|
394
|
+
const res = this.mdastTransformer(this.mdast, 'root');
|
|
395
395
|
if (Array.isArray(res) && res.length === 1) {
|
|
396
396
|
return res[0];
|
|
397
397
|
}
|
|
398
398
|
return res;
|
|
399
399
|
}
|
|
400
|
-
mdastTransformer(node) {
|
|
400
|
+
mdastTransformer(node, parentType) {
|
|
401
401
|
if (!node) {
|
|
402
402
|
return [];
|
|
403
403
|
}
|
|
404
404
|
// Check for custom transformer first, giving it higher priority
|
|
405
405
|
if (this.renderNode) {
|
|
406
|
-
const customResult = this.renderNode(node, this.mdastTransformer.
|
|
406
|
+
const customResult = this.renderNode(node, (n) => this.mdastTransformer(n, node.type));
|
|
407
407
|
if (customResult !== undefined) {
|
|
408
408
|
return customResult;
|
|
409
409
|
}
|
|
@@ -615,9 +615,10 @@ export class MdastToJsx {
|
|
|
615
615
|
if (!text) {
|
|
616
616
|
return [];
|
|
617
617
|
}
|
|
618
|
-
// Parse HTML to MDX AST using the new approach
|
|
618
|
+
// Parse HTML to MDX AST using the new approach - always returns an array
|
|
619
619
|
const mdxAst = htmlToMdxAst({
|
|
620
620
|
html: text,
|
|
621
|
+
parentType: parentType || 'root',
|
|
621
622
|
convertTagName: ({ tagName }) => {
|
|
622
623
|
const lowerTag = tagName.toLowerCase();
|
|
623
624
|
// Only keep valid HTML elements
|
|
@@ -629,12 +630,7 @@ export class MdastToJsx {
|
|
|
629
630
|
}
|
|
630
631
|
});
|
|
631
632
|
// Process the MDX AST nodes
|
|
632
|
-
|
|
633
|
-
return mdxAst.map(child => this.mdastTransformer(child));
|
|
634
|
-
}
|
|
635
|
-
else {
|
|
636
|
-
return this.mdastTransformer(mdxAst);
|
|
637
|
-
}
|
|
633
|
+
return mdxAst.map(child => this.mdastTransformer(child, parentType));
|
|
638
634
|
}
|
|
639
635
|
case 'imageReference': {
|
|
640
636
|
return [];
|
package/dist/safe-mdx.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"safe-mdx.js","sourceRoot":"","sources":["../src/safe-mdx.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"safe-mdx.js","sourceRoot":"","sources":["../src/safe-mdx.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "safe-mdx",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.7",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Render MDX in React without eval",
|
|
6
6
|
"repository": "https://github.com/holocron-hq/safe-mdx",
|
|
@@ -48,6 +48,7 @@
|
|
|
48
48
|
"remark-mdx": "^3.0.0",
|
|
49
49
|
"style-to-object": "^1.0.8",
|
|
50
50
|
"unified": "^11.0.5",
|
|
51
|
+
"unist": "^0.0.1",
|
|
51
52
|
"unist-util-visit": "^5.0.0",
|
|
52
53
|
"unist-util-visit-parents": "^6.0.1"
|
|
53
54
|
},
|
|
@@ -124,7 +124,7 @@ describe('parseHtmlToMdxAst', () => {
|
|
|
124
124
|
"children": [
|
|
125
125
|
{
|
|
126
126
|
"type": "text",
|
|
127
|
-
"value": "Hello
|
|
127
|
+
"value": "Hello",
|
|
128
128
|
},
|
|
129
129
|
{
|
|
130
130
|
"attributes": [],
|
|
@@ -202,7 +202,7 @@ describe('parseHtmlToMdxAst', () => {
|
|
|
202
202
|
[
|
|
203
203
|
{
|
|
204
204
|
"type": "text",
|
|
205
|
-
"value": "Some text
|
|
205
|
+
"value": "Some text",
|
|
206
206
|
},
|
|
207
207
|
{
|
|
208
208
|
"attributes": [],
|
|
@@ -217,7 +217,7 @@ describe('parseHtmlToMdxAst', () => {
|
|
|
217
217
|
},
|
|
218
218
|
{
|
|
219
219
|
"type": "text",
|
|
220
|
-
"value": "
|
|
220
|
+
"value": "more text",
|
|
221
221
|
},
|
|
222
222
|
]
|
|
223
223
|
`)
|
|
@@ -362,4 +362,394 @@ describe('parseHtmlToMdxAst with markdown processor', () => {
|
|
|
362
362
|
}
|
|
363
363
|
`)
|
|
364
364
|
})
|
|
365
|
+
|
|
366
|
+
test('normalize plugin without parentType does not apply', () => {
|
|
367
|
+
// Without parentType, normalization should not happen
|
|
368
|
+
const withoutParent = htmlToMdxAst({
|
|
369
|
+
html: '<span>Text</span>'
|
|
370
|
+
})
|
|
371
|
+
// Without normalization, elements remain as initially created (text elements)
|
|
372
|
+
expect(withoutParent).toHaveLength(1)
|
|
373
|
+
expect(withoutParent[0]).toMatchObject({
|
|
374
|
+
type: 'mdxJsxTextElement',
|
|
375
|
+
name: 'span'
|
|
376
|
+
})
|
|
377
|
+
})
|
|
378
|
+
|
|
379
|
+
test('handles indented HTML without preserving indentation', () => {
|
|
380
|
+
const indentedHtml = `
|
|
381
|
+
<columns>
|
|
382
|
+
<column>
|
|
383
|
+
<page url="https://notion.so/page1">Page 1</page>
|
|
384
|
+
Some text
|
|
385
|
+
</column>
|
|
386
|
+
<column>
|
|
387
|
+
<callout icon="💡" color="yellow_bg">
|
|
388
|
+
Important callout
|
|
389
|
+
</callout>
|
|
390
|
+
</column>
|
|
391
|
+
</columns>`
|
|
392
|
+
|
|
393
|
+
const result = parseHtmlToMdxAst({ html: indentedHtml })
|
|
394
|
+
expect(result).toMatchInlineSnapshot(`
|
|
395
|
+
[
|
|
396
|
+
{
|
|
397
|
+
"attributes": [],
|
|
398
|
+
"children": [
|
|
399
|
+
{
|
|
400
|
+
"attributes": [],
|
|
401
|
+
"children": [
|
|
402
|
+
{
|
|
403
|
+
"attributes": [
|
|
404
|
+
{
|
|
405
|
+
"name": "url",
|
|
406
|
+
"type": "mdxJsxAttribute",
|
|
407
|
+
"value": "https://notion.so/page1",
|
|
408
|
+
},
|
|
409
|
+
],
|
|
410
|
+
"children": [
|
|
411
|
+
{
|
|
412
|
+
"type": "text",
|
|
413
|
+
"value": "Page 1",
|
|
414
|
+
},
|
|
415
|
+
],
|
|
416
|
+
"name": "page",
|
|
417
|
+
"type": "mdxJsxTextElement",
|
|
418
|
+
},
|
|
419
|
+
{
|
|
420
|
+
"type": "text",
|
|
421
|
+
"value": "Some text",
|
|
422
|
+
},
|
|
423
|
+
],
|
|
424
|
+
"name": "column",
|
|
425
|
+
"type": "mdxJsxTextElement",
|
|
426
|
+
},
|
|
427
|
+
{
|
|
428
|
+
"attributes": [],
|
|
429
|
+
"children": [
|
|
430
|
+
{
|
|
431
|
+
"attributes": [
|
|
432
|
+
{
|
|
433
|
+
"name": "icon",
|
|
434
|
+
"type": "mdxJsxAttribute",
|
|
435
|
+
"value": "💡",
|
|
436
|
+
},
|
|
437
|
+
{
|
|
438
|
+
"name": "color",
|
|
439
|
+
"type": "mdxJsxAttribute",
|
|
440
|
+
"value": "yellow_bg",
|
|
441
|
+
},
|
|
442
|
+
],
|
|
443
|
+
"children": [
|
|
444
|
+
{
|
|
445
|
+
"type": "text",
|
|
446
|
+
"value": "Important callout",
|
|
447
|
+
},
|
|
448
|
+
],
|
|
449
|
+
"name": "callout",
|
|
450
|
+
"type": "mdxJsxTextElement",
|
|
451
|
+
},
|
|
452
|
+
],
|
|
453
|
+
"name": "column",
|
|
454
|
+
"type": "mdxJsxTextElement",
|
|
455
|
+
},
|
|
456
|
+
],
|
|
457
|
+
"name": "columns",
|
|
458
|
+
"type": "mdxJsxTextElement",
|
|
459
|
+
},
|
|
460
|
+
]
|
|
461
|
+
`)
|
|
462
|
+
})
|
|
463
|
+
|
|
464
|
+
test('handles indented HTML with textToMdast', () => {
|
|
465
|
+
const indentedHtml = `
|
|
466
|
+
<div>
|
|
467
|
+
**Bold text** and
|
|
468
|
+
some regular text
|
|
469
|
+
</div>`
|
|
470
|
+
|
|
471
|
+
const receivedTexts: string[] = []
|
|
472
|
+
const textToMdast = ({ text }: { text: string }) => {
|
|
473
|
+
receivedTexts.push(text)
|
|
474
|
+
return [{ type: 'text', value: text } as RootContent]
|
|
475
|
+
}
|
|
476
|
+
|
|
477
|
+
const result = parseHtmlToMdxAst({
|
|
478
|
+
html: indentedHtml,
|
|
479
|
+
textToMdast
|
|
480
|
+
})
|
|
481
|
+
|
|
482
|
+
expect(result).toMatchInlineSnapshot(`
|
|
483
|
+
[
|
|
484
|
+
{
|
|
485
|
+
"attributes": [],
|
|
486
|
+
"children": [
|
|
487
|
+
{
|
|
488
|
+
"type": "text",
|
|
489
|
+
"value": "**Bold text** and
|
|
490
|
+
some regular text",
|
|
491
|
+
},
|
|
492
|
+
],
|
|
493
|
+
"name": "div",
|
|
494
|
+
"type": "mdxJsxTextElement",
|
|
495
|
+
},
|
|
496
|
+
]
|
|
497
|
+
`)
|
|
498
|
+
|
|
499
|
+
expect(receivedTexts).toMatchInlineSnapshot(`
|
|
500
|
+
[
|
|
501
|
+
"**Bold text** and
|
|
502
|
+
some regular text",
|
|
503
|
+
]
|
|
504
|
+
`)
|
|
505
|
+
})
|
|
506
|
+
|
|
507
|
+
test('handles multi-line indented text content', () => {
|
|
508
|
+
const htmlWithMultiLineText = `
|
|
509
|
+
<div>
|
|
510
|
+
This is a multi-line string
|
|
511
|
+
that has indentation on each line
|
|
512
|
+
and should be properly de-indented
|
|
513
|
+
|
|
514
|
+
Even with blank lines in between
|
|
515
|
+
it should maintain the structure
|
|
516
|
+
</div>`
|
|
517
|
+
|
|
518
|
+
const receivedTexts: string[] = []
|
|
519
|
+
const textToMdast = ({ text }: { text: string }) => {
|
|
520
|
+
receivedTexts.push(text)
|
|
521
|
+
return [{ type: 'text', value: text } as RootContent]
|
|
522
|
+
}
|
|
523
|
+
|
|
524
|
+
const result = parseHtmlToMdxAst({
|
|
525
|
+
html: htmlWithMultiLineText,
|
|
526
|
+
textToMdast
|
|
527
|
+
})
|
|
528
|
+
|
|
529
|
+
expect(result).toMatchInlineSnapshot(`
|
|
530
|
+
[
|
|
531
|
+
{
|
|
532
|
+
"attributes": [],
|
|
533
|
+
"children": [
|
|
534
|
+
{
|
|
535
|
+
"type": "text",
|
|
536
|
+
"value": "This is a multi-line string
|
|
537
|
+
that has indentation on each line
|
|
538
|
+
and should be properly de-indented
|
|
539
|
+
|
|
540
|
+
Even with blank lines in between
|
|
541
|
+
it should maintain the structure",
|
|
542
|
+
},
|
|
543
|
+
],
|
|
544
|
+
"name": "div",
|
|
545
|
+
"type": "mdxJsxTextElement",
|
|
546
|
+
},
|
|
547
|
+
]
|
|
548
|
+
`)
|
|
549
|
+
|
|
550
|
+
expect(receivedTexts).toMatchInlineSnapshot(`
|
|
551
|
+
[
|
|
552
|
+
"This is a multi-line string
|
|
553
|
+
that has indentation on each line
|
|
554
|
+
and should be properly de-indented
|
|
555
|
+
|
|
556
|
+
Even with blank lines in between
|
|
557
|
+
it should maintain the structure",
|
|
558
|
+
]
|
|
559
|
+
`)
|
|
560
|
+
})
|
|
561
|
+
|
|
562
|
+
test('handles multi-line text with markdown', () => {
|
|
563
|
+
const htmlWithMultiLineText = `
|
|
564
|
+
<article>
|
|
565
|
+
# Heading
|
|
566
|
+
|
|
567
|
+
This is a paragraph with **bold** text
|
|
568
|
+
that spans multiple lines and has
|
|
569
|
+
markdown formatting.
|
|
570
|
+
|
|
571
|
+
- List item 1
|
|
572
|
+
- List item 2
|
|
573
|
+
</article>`
|
|
574
|
+
|
|
575
|
+
const receivedTexts: string[] = []
|
|
576
|
+
const textToMdast = ({ text }: { text: string }) => {
|
|
577
|
+
receivedTexts.push(text)
|
|
578
|
+
return [{ type: 'text', value: text } as RootContent]
|
|
579
|
+
}
|
|
580
|
+
|
|
581
|
+
const result = parseHtmlToMdxAst({
|
|
582
|
+
html: htmlWithMultiLineText,
|
|
583
|
+
textToMdast
|
|
584
|
+
})
|
|
585
|
+
|
|
586
|
+
expect(result).toMatchInlineSnapshot(`
|
|
587
|
+
[
|
|
588
|
+
{
|
|
589
|
+
"attributes": [],
|
|
590
|
+
"children": [
|
|
591
|
+
{
|
|
592
|
+
"type": "text",
|
|
593
|
+
"value": "# Heading
|
|
594
|
+
|
|
595
|
+
This is a paragraph with **bold** text
|
|
596
|
+
that spans multiple lines and has
|
|
597
|
+
markdown formatting.
|
|
598
|
+
|
|
599
|
+
- List item 1
|
|
600
|
+
- List item 2",
|
|
601
|
+
},
|
|
602
|
+
],
|
|
603
|
+
"name": "article",
|
|
604
|
+
"type": "mdxJsxTextElement",
|
|
605
|
+
},
|
|
606
|
+
]
|
|
607
|
+
`)
|
|
608
|
+
|
|
609
|
+
expect(receivedTexts).toMatchInlineSnapshot(`
|
|
610
|
+
[
|
|
611
|
+
"# Heading
|
|
612
|
+
|
|
613
|
+
This is a paragraph with **bold** text
|
|
614
|
+
that spans multiple lines and has
|
|
615
|
+
markdown formatting.
|
|
616
|
+
|
|
617
|
+
- List item 1
|
|
618
|
+
- List item 2",
|
|
619
|
+
]
|
|
620
|
+
`)
|
|
621
|
+
})
|
|
622
|
+
|
|
623
|
+
test('preserves relative indentation when deindenting', () => {
|
|
624
|
+
const htmlWithRelativeIndent = `
|
|
625
|
+
<pre>
|
|
626
|
+
function example() {
|
|
627
|
+
if (true) {
|
|
628
|
+
console.log('nested');
|
|
629
|
+
}
|
|
630
|
+
}
|
|
631
|
+
</pre>`
|
|
632
|
+
|
|
633
|
+
const receivedTexts: string[] = []
|
|
634
|
+
const textToMdast = ({ text }: { text: string }) => {
|
|
635
|
+
receivedTexts.push(text)
|
|
636
|
+
return [{ type: 'text', value: text } as RootContent]
|
|
637
|
+
}
|
|
638
|
+
|
|
639
|
+
const result = parseHtmlToMdxAst({
|
|
640
|
+
html: htmlWithRelativeIndent,
|
|
641
|
+
textToMdast
|
|
642
|
+
})
|
|
643
|
+
|
|
644
|
+
expect(result).toMatchInlineSnapshot(`
|
|
645
|
+
[
|
|
646
|
+
{
|
|
647
|
+
"attributes": [],
|
|
648
|
+
"children": [
|
|
649
|
+
{
|
|
650
|
+
"type": "text",
|
|
651
|
+
"value": "function example() {
|
|
652
|
+
if (true) {
|
|
653
|
+
console.log('nested');
|
|
654
|
+
}
|
|
655
|
+
}",
|
|
656
|
+
},
|
|
657
|
+
],
|
|
658
|
+
"name": "pre",
|
|
659
|
+
"type": "mdxJsxTextElement",
|
|
660
|
+
},
|
|
661
|
+
]
|
|
662
|
+
`)
|
|
663
|
+
|
|
664
|
+
expect(receivedTexts).toMatchInlineSnapshot(`
|
|
665
|
+
[
|
|
666
|
+
"function example() {
|
|
667
|
+
if (true) {
|
|
668
|
+
console.log('nested');
|
|
669
|
+
}
|
|
670
|
+
}",
|
|
671
|
+
]
|
|
672
|
+
`)
|
|
673
|
+
})
|
|
674
|
+
|
|
675
|
+
test('applies normalize plugin with parentType', () => {
|
|
676
|
+
// Test with a block element inside a paragraph (phrasing context)
|
|
677
|
+
const blockInParagraph = htmlToMdxAst({
|
|
678
|
+
html: '<div>Block in paragraph</div>',
|
|
679
|
+
parentType: 'paragraph'
|
|
680
|
+
})
|
|
681
|
+
// Even though div is a block element, it should remain mdxJsxFlowElement
|
|
682
|
+
// because block-level tags have priority
|
|
683
|
+
expect(blockInParagraph).toHaveLength(1)
|
|
684
|
+
expect(blockInParagraph[0]).toMatchObject({
|
|
685
|
+
type: 'mdxJsxFlowElement',
|
|
686
|
+
name: 'div'
|
|
687
|
+
})
|
|
688
|
+
|
|
689
|
+
// Test with inline element in paragraph (should be text element)
|
|
690
|
+
const inlineInParagraph = htmlToMdxAst({
|
|
691
|
+
html: '<span>Inline in paragraph</span>',
|
|
692
|
+
parentType: 'paragraph'
|
|
693
|
+
})
|
|
694
|
+
expect(inlineInParagraph).toHaveLength(1)
|
|
695
|
+
expect(inlineInParagraph[0]).toMatchObject({
|
|
696
|
+
type: 'mdxJsxTextElement',
|
|
697
|
+
name: 'span'
|
|
698
|
+
})
|
|
699
|
+
|
|
700
|
+
// Test with inline element in root (should be flow element)
|
|
701
|
+
const inlineInRoot = htmlToMdxAst({
|
|
702
|
+
html: '<span>Inline in root</span>',
|
|
703
|
+
parentType: 'root'
|
|
704
|
+
})
|
|
705
|
+
expect(inlineInRoot).toHaveLength(1)
|
|
706
|
+
expect(inlineInRoot[0]).toMatchObject({
|
|
707
|
+
type: 'mdxJsxFlowElement',
|
|
708
|
+
name: 'span'
|
|
709
|
+
})
|
|
710
|
+
|
|
711
|
+
// Test with multiple elements
|
|
712
|
+
const multipleElements = htmlToMdxAst({
|
|
713
|
+
html: '<span>First</span><div>Second</div>',
|
|
714
|
+
parentType: 'paragraph'
|
|
715
|
+
})
|
|
716
|
+
expect(multipleElements).toHaveLength(2)
|
|
717
|
+
expect(multipleElements[0]).toMatchObject({
|
|
718
|
+
type: 'mdxJsxTextElement',
|
|
719
|
+
name: 'span'
|
|
720
|
+
})
|
|
721
|
+
expect(multipleElements[1]).toMatchObject({
|
|
722
|
+
type: 'mdxJsxFlowElement', // div is block-level
|
|
723
|
+
name: 'div'
|
|
724
|
+
})
|
|
725
|
+
|
|
726
|
+
// Test with nested elements - the normalize plugin should handle nested context correctly
|
|
727
|
+
const nestedElements = htmlToMdxAst({
|
|
728
|
+
html: '<div><span>Nested span</span><p><em>Emphasis</em></p></div>',
|
|
729
|
+
parentType: 'root'
|
|
730
|
+
})
|
|
731
|
+
|
|
732
|
+
// The plugin normalizes based on the entire tree structure
|
|
733
|
+
expect(nestedElements).toHaveLength(1)
|
|
734
|
+
expect(nestedElements[0]).toMatchObject({
|
|
735
|
+
type: 'mdxJsxFlowElement',
|
|
736
|
+
name: 'div',
|
|
737
|
+
children: expect.arrayContaining([
|
|
738
|
+
expect.objectContaining({
|
|
739
|
+
type: 'mdxJsxFlowElement', // span in div (flow container) becomes flow
|
|
740
|
+
name: 'span'
|
|
741
|
+
}),
|
|
742
|
+
expect.objectContaining({
|
|
743
|
+
type: 'mdxJsxFlowElement',
|
|
744
|
+
name: 'p',
|
|
745
|
+
children: expect.arrayContaining([
|
|
746
|
+
expect.objectContaining({
|
|
747
|
+
type: 'mdxJsxTextElement', // em in paragraph (phrasing container) becomes text
|
|
748
|
+
name: 'em'
|
|
749
|
+
})
|
|
750
|
+
])
|
|
751
|
+
})
|
|
752
|
+
])
|
|
753
|
+
})
|
|
754
|
+
})
|
|
365
755
|
})
|