Skip to content

Commit dcdaf4c

Browse files
committedJul 11, 2023
Update @types/mdast, mdast utilities
1 parent 85900da commit dcdaf4c

File tree

4 files changed

+30
-20
lines changed

4 files changed

+30
-20
lines changed
 

‎index.d.ts

+8
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,14 @@ export interface MdxjsEsmHast extends HastLiteral {
5656

5757
// Add nodes to mdast content.
5858
declare module 'mdast' {
59+
// eslint-disable-next-line @typescript-eslint/consistent-type-definitions
60+
interface RootContentMap {
61+
/**
62+
* MDX ESM.
63+
*/
64+
mdxjsEsm: MdxjsEsm
65+
}
66+
5967
// eslint-disable-next-line @typescript-eslint/consistent-type-definitions
6068
interface FrontmatterContentMap {
6169
/**

‎lib/index.js

+4-1
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,10 @@ function enterMdxjsEsm(token) {
4646
*/
4747
function exitMdxjsEsm(token) {
4848
const value = this.resume()
49-
const node = /** @type {MdxjsEsm} */ (this.exit(token))
49+
const node = /** @type {MdxjsEsm} */ (this.stack[this.stack.length - 1])
50+
51+
this.exit(token)
52+
5053
const estree = token.estree
5154

5255
node.value = value

‎package.json

+7-7
Original file line numberDiff line numberDiff line change
@@ -40,22 +40,22 @@
4040
],
4141
"dependencies": {
4242
"@types/estree-jsx": "^1.0.0",
43-
"@types/hast": "^2.0.0",
44-
"@types/mdast": "^3.0.0",
45-
"mdast-util-from-markdown": "^1.0.0",
46-
"mdast-util-to-markdown": "^1.0.0"
43+
"@types/hast": "^3.0.0",
44+
"@types/mdast": "^4.0.0",
45+
"mdast-util-from-markdown": "^2.0.0",
46+
"mdast-util-to-markdown": "^2.0.0"
4747
},
4848
"devDependencies": {
4949
"@types/node": "^20.0.0",
5050
"acorn": "^8.0.0",
51-
"c8": "^7.0.0",
52-
"micromark-extension-mdxjs-esm": "^1.0.0",
51+
"c8": "^8.0.0",
52+
"micromark-extension-mdxjs-esm": "^2.0.0",
5353
"prettier": "^2.0.0",
5454
"remark-cli": "^11.0.0",
5555
"remark-preset-wooorm": "^9.0.0",
5656
"type-coverage": "^2.0.0",
5757
"typescript": "^5.0.0",
58-
"unist-util-remove-position": "^4.0.0",
58+
"unist-util-remove-position": "^5.0.0",
5959
"xo": "^0.54.0"
6060
},
6161
"scripts": {

‎test.js

+11-12
Original file line numberDiff line numberDiff line change
@@ -59,19 +59,18 @@ test('mdxjsEsmFromMarkdown', () => {
5959
'should support ESM'
6060
)
6161

62+
let tree = fromMarkdown('import a from "b"\nexport var c = ""\n\nd', {
63+
extensions: [mdxjsEsm({acorn, addResult: true})],
64+
mdastExtensions: [mdxjsEsmFromMarkdown]
65+
})
66+
67+
removePosition(tree, {force: true})
68+
69+
// Cheap clone to remove non-JSON values.
70+
tree = JSON.parse(JSON.stringify(tree))
71+
6272
assert.deepEqual(
63-
// Cheap clone to remove non-JSON values.
64-
JSON.parse(
65-
JSON.stringify(
66-
removePosition(
67-
fromMarkdown('import a from "b"\nexport var c = ""\n\nd', {
68-
extensions: [mdxjsEsm({acorn, addResult: true})],
69-
mdastExtensions: [mdxjsEsmFromMarkdown]
70-
}),
71-
true
72-
)
73-
)
74-
),
73+
tree,
7574
{
7675
type: 'root',
7776
children: [

0 commit comments

Comments
 (0)
Please sign in to comment.