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.
@@ -1,5 +1,6 @@
1
1
  import type { RootContent } from 'mdast';
2
- export { default as remarkMdxJsxNormalize } from './remark-mdx-jsx-normalize.js';
2
+ import { remarkMdxJsxNormalize } from './remark-mdx-jsx-normalize.js';
3
+ export { remarkMdxJsxNormalize };
3
4
  export type ConvertTagName = (args: {
4
5
  tagName: string;
5
6
  }) => string;
@@ -13,11 +14,12 @@ export type ConvertAttributeValue = (args: {
13
14
  }) => string;
14
15
  export interface ParseHtmlToMdxAstOptions {
15
16
  html: string;
17
+ parentType?: string;
16
18
  onError?: (error: unknown, text: string) => void;
17
19
  convertTagName?: ConvertTagName;
18
20
  textToMdast?: TextToMdast;
19
21
  convertAttributeValue?: ConvertAttributeValue;
20
22
  }
21
- export declare function htmlToMdxAst(options: ParseHtmlToMdxAstOptions): RootContent | RootContent[];
23
+ export declare function htmlToMdxAst(options: ParseHtmlToMdxAstOptions): RootContent[];
22
24
  export declare function parseHtmlToMdxAst(options: ParseHtmlToMdxAstOptions): RootContent[];
23
25
  //# sourceMappingURL=html-to-mdx-ast.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"html-to-mdx-ast.d.ts","sourceRoot":"","sources":["../../src/html/html-to-mdx-ast.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAQ,WAAW,EAAqB,MAAM,OAAO,CAAA;AAWjE,OAAO,EAAE,OAAO,IAAI,qBAAqB,EAAE,MAAM,+BAA+B,CAAA;AAGhF,MAAM,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,KAAK,MAAM,CAAA;AAGlE,MAAM,MAAM,WAAW,GAAG,CAAC,IAAI,EAAE;IAC7B,IAAI,EAAE,MAAM,CAAA;CACf,KAAK,WAAW,GAAG,WAAW,EAAE,CAAA;AAGjC,MAAM,MAAM,qBAAqB,GAAG,CAAC,IAAI,EAAE;IACvC,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;CAClB,KAAK,MAAM,CAAA;AAGZ,MAAM,WAAW,wBAAwB;IACrC,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAChD,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,qBAAqB,CAAC,EAAE,qBAAqB,CAAA;CAChD;AAwND,wBAAgB,YAAY,CACxB,OAAO,EAAE,wBAAwB,GAClC,WAAW,GAAG,WAAW,EAAE,CA0C7B;AAGD,wBAAgB,iBAAiB,CAC7B,OAAO,EAAE,wBAAwB,GAClC,WAAW,EAAE,CAGf"}
1
+ {"version":3,"file":"html-to-mdx-ast.d.ts","sourceRoot":"","sources":["../../src/html/html-to-mdx-ast.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAQ,WAAW,EAAqB,MAAM,OAAO,CAAA;AAUjE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAA;AAGrE,OAAO,EAAE,qBAAqB,EAAE,CAAA;AAGhC,MAAM,MAAM,cAAc,GAAG,CAAC,IAAI,EAAE;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,KAAK,MAAM,CAAA;AAGlE,MAAM,MAAM,WAAW,GAAG,CAAC,IAAI,EAAE;IAC7B,IAAI,EAAE,MAAM,CAAA;CACf,KAAK,WAAW,GAAG,WAAW,EAAE,CAAA;AAGjC,MAAM,MAAM,qBAAqB,GAAG,CAAC,IAAI,EAAE;IACvC,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,OAAO,EAAE,MAAM,CAAA;CAClB,KAAK,MAAM,CAAA;AAGZ,MAAM,WAAW,wBAAwB;IACrC,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IAChD,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B,WAAW,CAAC,EAAE,WAAW,CAAA;IACzB,qBAAqB,CAAC,EAAE,qBAAqB,CAAA;CAChD;AAkQD,wBAAgB,YAAY,CAAC,OAAO,EAAE,wBAAwB,GAAG,WAAW,EAAE,CAsE7E;AAID,wBAAgB,iBAAiB,CAC7B,OAAO,EAAE,wBAAwB,GAClC,WAAW,EAAE,CAEf"}
@@ -1,7 +1,9 @@
1
+ import { unified } from 'unified';
1
2
  import { convertAttributeNameToJSX } from './convert-attributes.js';
2
3
  import { parseHTML } from './domparser.js';
4
+ import { remarkMdxJsxNormalize } from './remark-mdx-jsx-normalize.js';
3
5
  // Re-export the normalize plugin
4
- export { default as remarkMdxJsxNormalize } from './remark-mdx-jsx-normalize.js';
6
+ export { remarkMdxJsxNormalize };
5
7
  // Type guard functions for DOM nodes
6
8
  function isCommentNode(node) {
7
9
  return node.nodeType === 8; // Node.COMMENT_NODE
@@ -20,6 +22,28 @@ function defaultConvertTagName({ tagName }) {
20
22
  function defaultConvertAttributeValue({ value, }) {
21
23
  return value;
22
24
  }
25
+ // Remove common indentation from multi-line text while preserving relative indentation
26
+ function deindent(text) {
27
+ const lines = text.split('\n');
28
+ // Find minimum indentation (excluding empty lines)
29
+ let minIndent = Infinity;
30
+ for (const line of lines) {
31
+ if (line.trim()) {
32
+ const match = line.match(/^(\s*)/);
33
+ if (match) {
34
+ minIndent = Math.min(minIndent, match[1].length);
35
+ }
36
+ }
37
+ }
38
+ // If no indentation found, return as is
39
+ if (minIndent === 0 || minIndent === Infinity) {
40
+ return text;
41
+ }
42
+ // Remove common indentation from each line, preserving relative indentation
43
+ return lines
44
+ .map(line => line.slice(minIndent))
45
+ .join('\n');
46
+ }
23
47
  // Convert HTML attribute to MDX JSX attribute
24
48
  function convertAttribute(attr, tagName, options) {
25
49
  let jsxName = convertAttributeNameToJSX(attr.name);
@@ -96,24 +120,42 @@ function convertAttribute(attr, tagName, options) {
96
120
  value: value,
97
121
  };
98
122
  }
99
- // Convert DOM node to MDX AST nodes
123
+ // Convert DOM node to MDX AST nodes - always returns an array
100
124
  function htmlNodeToMdxAst(node, options) {
101
125
  if (isCommentNode(node)) {
102
126
  // Convert comments to MDX JSX expression with comment
103
- // For now, return as HTML node
104
- // return {
127
+ // For now, return empty array
128
+ // return [{
105
129
  // type: 'html',
106
130
  // value: `<!-- ${node.data} -->`
107
- // } as Html
131
+ // }] as Html[]
108
132
  return [];
109
133
  }
110
134
  if (isTextNode(node)) {
111
- const textValue = node.textContent || '';
135
+ let textValue = node.textContent || '';
136
+ // Skip whitespace-only nodes between elements
137
+ if (!textValue.trim()) {
138
+ const prevSibling = node.previousSibling;
139
+ const nextSibling = node.nextSibling;
140
+ // If between elements and contains newlines, it's likely formatting
141
+ if (textValue.includes('\n') &&
142
+ ((prevSibling && isElementNode(prevSibling)) ||
143
+ (nextSibling && isElementNode(nextSibling)))) {
144
+ return [];
145
+ }
146
+ // Otherwise preserve the whitespace (could be intentional space)
147
+ }
148
+ // Always deindent text content
149
+ textValue = deindent(textValue).trim();
150
+ // Skip empty text after processing
151
+ if (!textValue) {
152
+ return [];
153
+ }
112
154
  // If we have a textToMdast converter, use it
113
155
  if (options?.textToMdast) {
114
156
  try {
115
157
  const result = options.textToMdast({ text: textValue });
116
- return result;
158
+ return Array.isArray(result) ? result : [result];
117
159
  }
118
160
  catch (error) {
119
161
  // Call onError callback if provided, otherwise log
@@ -125,17 +167,21 @@ function htmlNodeToMdxAst(node, options) {
125
167
  console.error('Text content:', textValue);
126
168
  }
127
169
  // Fallback to simple text node
128
- return {
129
- type: 'text',
130
- value: textValue,
131
- };
170
+ return [
171
+ {
172
+ type: 'text',
173
+ value: textValue,
174
+ },
175
+ ];
132
176
  }
133
177
  }
134
178
  // Default: return simple text node
135
- return {
136
- type: 'text',
137
- value: textValue,
138
- };
179
+ return [
180
+ {
181
+ type: 'text',
182
+ value: textValue,
183
+ },
184
+ ];
139
185
  }
140
186
  if (!isElementNode(node)) {
141
187
  return [];
@@ -148,13 +194,7 @@ function htmlNodeToMdxAst(node, options) {
148
194
  // Process children but skip the element wrapper
149
195
  const children = [];
150
196
  for (const child of Array.from(node.childNodes)) {
151
- const result = htmlNodeToMdxAst(child, options);
152
- if (Array.isArray(result)) {
153
- children.push(...result);
154
- }
155
- else {
156
- children.push(result);
157
- }
197
+ children.push(...htmlNodeToMdxAst(child, options));
158
198
  }
159
199
  return children;
160
200
  }
@@ -166,13 +206,7 @@ function htmlNodeToMdxAst(node, options) {
166
206
  // Process children
167
207
  const children = [];
168
208
  for (const child of Array.from(node.childNodes)) {
169
- const result = htmlNodeToMdxAst(child, options);
170
- if (Array.isArray(result)) {
171
- children.push(...result);
172
- }
173
- else {
174
- children.push(result);
175
- }
209
+ children.push(...htmlNodeToMdxAst(child, options));
176
210
  }
177
211
  // Always create MdxJsxTextElement initially
178
212
  // The conversion to MdxJsxFlowElement will be handled by a separate plugin
@@ -182,9 +216,9 @@ function htmlNodeToMdxAst(node, options) {
182
216
  attributes,
183
217
  children: children,
184
218
  };
185
- return element;
219
+ return [element];
186
220
  }
187
- // Main function to parse HTML and return MDX AST
221
+ // Main function to parse HTML and return MDX AST - always returns an array
188
222
  export function htmlToMdxAst(options) {
189
223
  // Parse HTML with linkedom
190
224
  const { document } = parseHTML(options.html.trim());
@@ -200,28 +234,54 @@ export function htmlToMdxAst(options) {
200
234
  const childNodes = Array.from(document.childNodes).filter((node) => node.nodeType === 1 || // Element nodes
201
235
  node.nodeType === 3 || // Text nodes
202
236
  node.nodeType === 8);
203
- if (childNodes.length === 0) {
204
- return [];
205
- }
206
- if (childNodes.length === 1) {
207
- return htmlNodeToMdxAst(childNodes[0], options);
208
- }
209
- // Multiple nodes - return as array
210
- const results = [];
237
+ let results = [];
211
238
  for (const node of childNodes) {
212
- const result = htmlNodeToMdxAst(node, options);
213
- if (Array.isArray(result)) {
214
- results.push(...result);
239
+ results.push(...htmlNodeToMdxAst(node, options));
240
+ }
241
+ // Apply the normalize plugin if we have a parentType
242
+ if (options.parentType && results.length > 0) {
243
+ // Create a temporary AST node with the same parent type
244
+ const parentType = options.parentType;
245
+ const tempRoot = {
246
+ type: 'root',
247
+ children: results,
248
+ };
249
+ // If we have a specific parent type, wrap the content in that parent
250
+ // to provide proper context for the normalize plugin
251
+ let astToProcess;
252
+ if (parentType !== 'root') {
253
+ // Create a parent node of the specified type with our content as children
254
+ const parentNode = {
255
+ type: parentType,
256
+ children: tempRoot.children,
257
+ };
258
+ astToProcess = {
259
+ type: 'root',
260
+ children: [parentNode],
261
+ };
262
+ }
263
+ else {
264
+ astToProcess = tempRoot;
265
+ }
266
+ // Create a simple processor and run the normalize plugin
267
+ const processor = unified().use(remarkMdxJsxNormalize);
268
+ processor.runSync(astToProcess);
269
+ // Extract the result back
270
+ if (parentType !== 'root') {
271
+ // Get the children from the parent node we created
272
+ const processedParent = astToProcess.children[0];
273
+ results = processedParent.children;
215
274
  }
216
275
  else {
217
- results.push(result);
276
+ // Get children directly from root
277
+ results = astToProcess.children;
218
278
  }
219
279
  }
220
280
  return results;
221
281
  }
222
282
  // Export a wrapper that always returns an array for consistency
283
+ // Note: htmlToMdxAst now already returns an array, so this is just an alias
223
284
  export function parseHtmlToMdxAst(options) {
224
- const result = htmlToMdxAst(options);
225
- return Array.isArray(result) ? result : [result];
285
+ return htmlToMdxAst(options);
226
286
  }
227
287
  //# sourceMappingURL=html-to-mdx-ast.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"html-to-mdx-ast.js","sourceRoot":"","sources":["../../src/html/html-to-mdx-ast.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"html-to-mdx-ast.js","sourceRoot":"","sources":["../../src/html/html-to-mdx-ast.ts"],"names":[],"mappings":"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"}