1
1
/**
2
2
* @typedef {import('mdast').Literal } Literal
3
- * @typedef { import('mdast-util-from-markdown').Extension } FromMarkdownExtension
3
+ *
4
4
* @typedef {import('mdast-util-from-markdown').CompileContext } CompileContext
5
+ * @typedef {import('mdast-util-from-markdown').Extension } FromMarkdownExtension
5
6
* @typedef {import('mdast-util-from-markdown').Handle } FromMarkdownHandle
6
7
* @typedef {import('mdast-util-to-markdown').Options } ToMarkdownExtension
7
8
*
8
- * @typedef {import('micromark-extension-frontmatter').Options } Options
9
- * @typedef {import('micromark-extension-frontmatter').Matter } Matter
10
9
* @typedef {import('micromark-extension-frontmatter').Info } Info
10
+ * @typedef {import('micromark-extension-frontmatter').Matter } Matter
11
+ * @typedef {import('micromark-extension-frontmatter').Options } Options
11
12
*/
12
13
14
+ import { ok as assert } from 'devlop'
13
15
import { toMatters } from 'micromark-extension-frontmatter'
14
16
15
17
/**
16
18
* Create an extension for `mdast-util-from-markdown`.
17
19
*
18
20
* @param {Options | null | undefined } [options]
19
- * Configuration.
21
+ * Configuration (optional) .
20
22
* @returns {FromMarkdownExtension }
21
23
* Extension for `mdast-util-from-markdown`.
22
24
*/
@@ -62,7 +64,8 @@ function opener(matter) {
62
64
*/
63
65
function close ( token ) {
64
66
const data = this . resume ( )
65
- const node = /** @type {Literal } */ ( this . stack [ this . stack . length - 1 ] )
67
+ const node = this . stack [ this . stack . length - 1 ]
68
+ assert ( 'value' in node )
66
69
this . exit ( token )
67
70
// Remove the initial and final eol.
68
71
node . value = data . replace ( / ^ ( \r ? \n | \r ) | ( \r ? \n | \r ) $ / g, '' )
@@ -81,7 +84,7 @@ function value(token) {
81
84
* Create an extension for `mdast-util-to-markdown`.
82
85
*
83
86
* @param {Options | null | undefined } [options]
84
- * Configuration.
87
+ * Configuration (optional) .
85
88
* @returns {ToMarkdownExtension }
86
89
* Extension for `mdast-util-to-markdown`.
87
90
*/
@@ -140,7 +143,7 @@ function handler(matter) {
140
143
*
141
144
* @param {Matter } matter
142
145
* Structure.
143
- * @param {'open ' | 'close ' } prop
146
+ * @param {'close ' | 'open ' } prop
144
147
* Field to get.
145
148
* @returns {string }
146
149
* Fence.
@@ -158,7 +161,7 @@ function fence(matter, prop) {
158
161
*
159
162
* @param {Info | string } schema
160
163
* Info object or value.
161
- * @param {'open ' | 'close ' } prop
164
+ * @param {'close ' | 'open ' } prop
162
165
* Field to get.
163
166
* @returns {string }
164
167
* Thing to use for the opening or closing.
0 commit comments