pd-markdown 1.1.0 → 2.0.1

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.
Files changed (71) hide show
  1. package/README.md +52 -170
  2. package/package.json +12 -11
  3. package/packages/parser/README.md +120 -0
  4. package/packages/utils/README.md +130 -0
  5. package/packages/web/README.md +110 -0
  6. package/packages/parser/dist/index.cjs +0 -191
  7. package/packages/parser/dist/index.cjs.map +0 -1
  8. package/packages/parser/dist/index.d.ts +0 -4
  9. package/packages/parser/dist/index.d.ts.map +0 -1
  10. package/packages/parser/dist/index.mjs +0 -185
  11. package/packages/parser/dist/index.mjs.map +0 -1
  12. package/packages/parser/dist/plugins/index.d.ts +0 -4
  13. package/packages/parser/dist/plugins/index.d.ts.map +0 -1
  14. package/packages/parser/dist/plugins/transform/heading.d.ts +0 -6
  15. package/packages/parser/dist/plugins/transform/heading.d.ts.map +0 -1
  16. package/packages/parser/dist/plugins/transform/list.d.ts +0 -14
  17. package/packages/parser/dist/plugins/transform/list.d.ts.map +0 -1
  18. package/packages/parser/dist/plugins/transform/table.d.ts +0 -27
  19. package/packages/parser/dist/plugins/transform/table.d.ts.map +0 -1
  20. package/packages/parser/dist/processor.d.ts +0 -22
  21. package/packages/parser/dist/processor.d.ts.map +0 -1
  22. package/packages/parser/dist/types/index.d.ts +0 -55
  23. package/packages/parser/dist/types/index.d.ts.map +0 -1
  24. package/packages/utils/dist/ast/query.d.ts +0 -36
  25. package/packages/utils/dist/ast/query.d.ts.map +0 -1
  26. package/packages/utils/dist/ast/traverse.d.ts +0 -22
  27. package/packages/utils/dist/ast/traverse.d.ts.map +0 -1
  28. package/packages/utils/dist/index.cjs +0 -358
  29. package/packages/utils/dist/index.cjs.map +0 -1
  30. package/packages/utils/dist/index.d.ts +0 -7
  31. package/packages/utils/dist/index.d.ts.map +0 -1
  32. package/packages/utils/dist/index.mjs +0 -343
  33. package/packages/utils/dist/index.mjs.map +0 -1
  34. package/packages/utils/dist/string/sanitize.d.ts +0 -22
  35. package/packages/utils/dist/string/sanitize.d.ts.map +0 -1
  36. package/packages/utils/dist/string/slugify.d.ts +0 -16
  37. package/packages/utils/dist/string/slugify.d.ts.map +0 -1
  38. package/packages/utils/dist/types/index.d.ts +0 -49
  39. package/packages/utils/dist/types/index.d.ts.map +0 -1
  40. package/packages/web/dist/components/MarkdownRenderer.d.ts +0 -27
  41. package/packages/web/dist/components/MarkdownRenderer.d.ts.map +0 -1
  42. package/packages/web/dist/components/NodeRenderer.d.ts +0 -10
  43. package/packages/web/dist/components/NodeRenderer.d.ts.map +0 -1
  44. package/packages/web/dist/components/context.d.ts +0 -17
  45. package/packages/web/dist/components/context.d.ts.map +0 -1
  46. package/packages/web/dist/components/defaults/Blockquote.d.ts +0 -8
  47. package/packages/web/dist/components/defaults/Blockquote.d.ts.map +0 -1
  48. package/packages/web/dist/components/defaults/Code.d.ts +0 -13
  49. package/packages/web/dist/components/defaults/Code.d.ts.map +0 -1
  50. package/packages/web/dist/components/defaults/Heading.d.ts +0 -8
  51. package/packages/web/dist/components/defaults/Heading.d.ts.map +0 -1
  52. package/packages/web/dist/components/defaults/Image.d.ts +0 -7
  53. package/packages/web/dist/components/defaults/Image.d.ts.map +0 -1
  54. package/packages/web/dist/components/defaults/Link.d.ts +0 -8
  55. package/packages/web/dist/components/defaults/Link.d.ts.map +0 -1
  56. package/packages/web/dist/components/defaults/List.d.ts +0 -13
  57. package/packages/web/dist/components/defaults/List.d.ts.map +0 -1
  58. package/packages/web/dist/components/defaults/Paragraph.d.ts +0 -8
  59. package/packages/web/dist/components/defaults/Paragraph.d.ts.map +0 -1
  60. package/packages/web/dist/components/defaults/Table.d.ts +0 -19
  61. package/packages/web/dist/components/defaults/Table.d.ts.map +0 -1
  62. package/packages/web/dist/components/defaults/index.d.ts +0 -34
  63. package/packages/web/dist/components/defaults/index.d.ts.map +0 -1
  64. package/packages/web/dist/hooks/useMarkdown.d.ts +0 -11
  65. package/packages/web/dist/hooks/useMarkdown.d.ts.map +0 -1
  66. package/packages/web/dist/index.cjs +0 -306
  67. package/packages/web/dist/index.cjs.map +0 -1
  68. package/packages/web/dist/index.d.ts +0 -6
  69. package/packages/web/dist/index.d.ts.map +0 -1
  70. package/packages/web/dist/index.mjs +0 -287
  71. package/packages/web/dist/index.mjs.map +0 -1
@@ -1,358 +0,0 @@
1
- 'use strict';
2
-
3
- /**
4
- * Type guard to check if node is a parent node
5
- */
6
- function isParent(node) {
7
- return 'children' in node && Array.isArray(node.children);
8
- }
9
- /**
10
- * Type guard to check if node is a literal node
11
- */
12
- function isLiteral(node) {
13
- return 'value' in node && typeof node.value === 'string';
14
- }
15
- /**
16
- * Type guard to check if node has specific type
17
- */
18
- function isNodeType(node, type) {
19
- return node.type === type;
20
- }
21
-
22
- /**
23
- * Traverse AST in depth-first order
24
- *
25
- * @param node - Root node to start traversal
26
- * @param visitor - Visitor function called for each node
27
- * Return `false` to skip children of current node
28
- * Return `true` or `undefined` to continue
29
- */
30
- function traverseAst(node, visitor) {
31
- function visit(current, index, parent) {
32
- const result = visitor(current, index, parent);
33
- // Skip children if visitor returns false
34
- if (result === false) {
35
- return;
36
- }
37
- if (isParent(current)) {
38
- const children = current.children;
39
- for (let i = 0; i < children.length; i++) {
40
- visit(children[i], i, current);
41
- }
42
- }
43
- }
44
- visit(node, undefined, undefined);
45
- }
46
- /**
47
- * Traverse AST with enter and leave callbacks
48
- *
49
- * @param node - Root node to start traversal
50
- * @param callbacks - Object with optional enter and leave functions
51
- */
52
- function traverseAstWithCallbacks(node, callbacks) {
53
- const { enter, leave } = callbacks;
54
- function visit(current, index, parent) {
55
- const shouldSkipChildren = enter?.(current, index, parent) === false;
56
- if (!shouldSkipChildren && isParent(current)) {
57
- const children = current.children;
58
- for (let i = 0; i < children.length; i++) {
59
- visit(children[i], i, current);
60
- }
61
- }
62
- leave?.(current, index, parent);
63
- }
64
- visit(node, undefined, undefined);
65
- }
66
-
67
- /**
68
- * Find all nodes of a specific type in the AST
69
- *
70
- * @param node - Root node to search from
71
- * @param type - Node type to find
72
- * @returns Array of matching nodes
73
- */
74
- function findNodes(node, type) {
75
- const results = [];
76
- function visit(current) {
77
- if (current.type === type) {
78
- results.push(current);
79
- }
80
- if (isParent(current)) {
81
- for (const child of current.children) {
82
- visit(child);
83
- }
84
- }
85
- }
86
- visit(node);
87
- return results;
88
- }
89
- /**
90
- * Find the first node of a specific type in the AST
91
- *
92
- * @param node - Root node to search from
93
- * @param type - Node type to find
94
- * @returns The first matching node or undefined
95
- */
96
- function findNode(node, type) {
97
- let result;
98
- function visit(current) {
99
- if (current.type === type) {
100
- result = current;
101
- return true; // Found, stop searching
102
- }
103
- if (isParent(current)) {
104
- for (const child of current.children) {
105
- if (visit(child)) {
106
- return true;
107
- }
108
- }
109
- }
110
- return false;
111
- }
112
- visit(node);
113
- return result;
114
- }
115
- /**
116
- * Find all nodes matching a predicate
117
- *
118
- * @param node - Root node to search from
119
- * @param predicate - Function to test each node
120
- * @returns Array of matching nodes
121
- */
122
- function findNodesBy(node, predicate) {
123
- const results = [];
124
- function visit(current) {
125
- if (predicate(current)) {
126
- results.push(current);
127
- }
128
- if (isParent(current)) {
129
- for (const child of current.children) {
130
- visit(child);
131
- }
132
- }
133
- }
134
- visit(node);
135
- return results;
136
- }
137
- /**
138
- * Get the parent of a node in the AST
139
- * Note: This requires traversing from root, use sparingly
140
- *
141
- * @param root - Root node of the AST
142
- * @param target - Node to find parent of
143
- * @returns Parent node or undefined if not found or is root
144
- */
145
- function findParent(root, target) {
146
- let result;
147
- function visit(current, parent) {
148
- if (current === target) {
149
- result = parent;
150
- return true;
151
- }
152
- if (isParent(current)) {
153
- for (const child of current.children) {
154
- if (visit(child, current)) {
155
- return true;
156
- }
157
- }
158
- }
159
- return false;
160
- }
161
- visit(root, undefined);
162
- return result;
163
- }
164
-
165
- /**
166
- * Convert text to URL-safe slug
167
- *
168
- * @param text - Text to slugify
169
- * @returns URL-safe slug
170
- */
171
- function slugify(text) {
172
- return (text
173
- // Convert to lowercase
174
- .toLowerCase()
175
- // Replace Chinese characters with pinyin-like representation (keep as-is for simplicity)
176
- // Replace spaces and special chars with hyphens
177
- .replace(/[\s_]+/g, '-')
178
- // Remove characters that aren't alphanumeric, hyphens, or common CJK
179
- .replace(/[^\w\u4e00-\u9fff\u3040-\u309f\u30a0-\u30ff-]/g, '')
180
- // Replace multiple consecutive hyphens with single hyphen
181
- .replace(/-+/g, '-')
182
- // Remove leading/trailing hyphens
183
- .replace(/^-+|-+$/g, ''));
184
- }
185
- /**
186
- * Generate unique slug with counter suffix for duplicates
187
- *
188
- * @param text - Text to slugify
189
- * @param existingSlugs - Set of existing slugs to check against
190
- * @returns Unique slug
191
- */
192
- function uniqueSlugify(text, existingSlugs) {
193
- const baseSlug = slugify(text);
194
- let slug = baseSlug;
195
- let counter = 1;
196
- while (existingSlugs.has(slug)) {
197
- slug = `${baseSlug}-${counter}`;
198
- counter++;
199
- }
200
- existingSlugs.add(slug);
201
- return slug;
202
- }
203
-
204
- /**
205
- * HTML entities that need escaping
206
- */
207
- const HTML_ESCAPE_MAP = {
208
- '&': '&amp;',
209
- '<': '&lt;',
210
- '>': '&gt;',
211
- '"': '&quot;',
212
- "'": '&#39;',
213
- };
214
- /**
215
- * Escape HTML special characters
216
- *
217
- * @param text - Text to escape
218
- * @returns Escaped text safe for HTML insertion
219
- */
220
- function escapeHtml(text) {
221
- return text.replace(/[&<>"']/g, (char) => HTML_ESCAPE_MAP[char] || char);
222
- }
223
- /**
224
- * Allowed HTML tags for sanitization
225
- */
226
- const ALLOWED_TAGS = new Set([
227
- 'a',
228
- 'abbr',
229
- 'b',
230
- 'blockquote',
231
- 'br',
232
- 'code',
233
- 'dd',
234
- 'del',
235
- 'div',
236
- 'dl',
237
- 'dt',
238
- 'em',
239
- 'h1',
240
- 'h2',
241
- 'h3',
242
- 'h4',
243
- 'h5',
244
- 'h6',
245
- 'hr',
246
- 'i',
247
- 'img',
248
- 'ins',
249
- 'kbd',
250
- 'li',
251
- 'ol',
252
- 'p',
253
- 'pre',
254
- 'q',
255
- 's',
256
- 'samp',
257
- 'small',
258
- 'span',
259
- 'strong',
260
- 'sub',
261
- 'sup',
262
- 'table',
263
- 'tbody',
264
- 'td',
265
- 'tfoot',
266
- 'th',
267
- 'thead',
268
- 'tr',
269
- 'u',
270
- 'ul',
271
- ]);
272
- /**
273
- * Allowed attributes for sanitization
274
- */
275
- const ALLOWED_ATTRS = new Set([
276
- 'href',
277
- 'src',
278
- 'alt',
279
- 'title',
280
- 'class',
281
- 'id',
282
- 'name',
283
- 'target',
284
- 'rel',
285
- 'width',
286
- 'height',
287
- 'align',
288
- 'colspan',
289
- 'rowspan',
290
- ]);
291
- /**
292
- * Sanitize HTML string by removing dangerous content
293
- *
294
- * @param html - HTML string to sanitize
295
- * @returns Sanitized HTML string
296
- */
297
- function sanitizeHtml(html) {
298
- let result = html;
299
- // Remove script tags first
300
- result = result.replace(/<script\b[^<]*(?:(?!<\/script>)<[^<]*)*<\/script>/gi, '');
301
- // Remove event handlers
302
- result = result.replace(/\s+on\w+\s*=\s*(?:"[^"]*"|'[^']*'|[^\s>]*)/gi, '');
303
- // Remove disallowed tags (keep content) and sanitize attributes
304
- result = result.replace(/<\/?(\w+)([^>]*)>/g, (match, tagName, attrs) => {
305
- const tag = tagName.toLowerCase();
306
- if (!ALLOWED_TAGS.has(tag)) {
307
- return '';
308
- }
309
- // For closing tags, just return them
310
- if (match.startsWith('</')) {
311
- return `</${tag}>`;
312
- }
313
- // Sanitize attributes
314
- const sanitizedAttrs = [];
315
- const attrRegex = /\s+([\w-]+)\s*=\s*(?:"([^"]*)"|'([^']*)'|(\S+))/g;
316
- let attrMatch;
317
- while ((attrMatch = attrRegex.exec(attrs)) !== null) {
318
- const [, attrName, v1, v2, v3] = attrMatch;
319
- const attr = attrName.toLowerCase();
320
- if (ALLOWED_ATTRS.has(attr)) {
321
- let value = v1 ?? v2 ?? v3 ?? '';
322
- // Check for dangerous URLs in href/src
323
- if ((attr === 'href' || attr === 'src') && /^\s*javascript\s*:/i.test(value)) {
324
- value = '';
325
- }
326
- sanitizedAttrs.push(`${attr}="${value}"`);
327
- }
328
- }
329
- const attrStr = sanitizedAttrs.length > 0 ? ' ' + sanitizedAttrs.join(' ') : '';
330
- return `<${tag}${attrStr}>`;
331
- });
332
- return result;
333
- }
334
- /**
335
- * Strip all HTML tags from a string
336
- *
337
- * @param html - HTML string to strip
338
- * @returns Plain text without HTML tags
339
- */
340
- function stripHtml(html) {
341
- return html.replace(/<[^>]*>/g, '');
342
- }
343
-
344
- exports.escapeHtml = escapeHtml;
345
- exports.findNode = findNode;
346
- exports.findNodes = findNodes;
347
- exports.findNodesBy = findNodesBy;
348
- exports.findParent = findParent;
349
- exports.isLiteral = isLiteral;
350
- exports.isNodeType = isNodeType;
351
- exports.isParent = isParent;
352
- exports.sanitizeHtml = sanitizeHtml;
353
- exports.slugify = slugify;
354
- exports.stripHtml = stripHtml;
355
- exports.traverseAst = traverseAst;
356
- exports.traverseAstWithCallbacks = traverseAstWithCallbacks;
357
- exports.uniqueSlugify = uniqueSlugify;
358
- //# sourceMappingURL=index.cjs.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.cjs","sources":["../src/types/index.ts","../src/ast/traverse.ts","../src/ast/query.ts","../src/string/slugify.ts","../src/string/sanitize.ts"],"sourcesContent":[null,null,null,null,null],"names":[],"mappings":"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"}
@@ -1,7 +0,0 @@
1
- export type { MdNode, MdRoot, Parent, Literal, Visitor, PluginOptions, Position, Location, } from './types';
2
- export { isParent, isLiteral, isNodeType } from './types';
3
- export { traverseAst, traverseAstWithCallbacks } from './ast/traverse';
4
- export { findNodes, findNode, findNodesBy, findParent } from './ast/query';
5
- export { slugify, uniqueSlugify } from './string/slugify';
6
- export { escapeHtml, sanitizeHtml, stripHtml } from './string/sanitize';
7
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EACV,MAAM,EACN,MAAM,EACN,MAAM,EACN,OAAO,EACP,OAAO,EACP,aAAa,EACb,QAAQ,EACR,QAAQ,GACT,MAAM,SAAS,CAAA;AAChB,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAGzD,OAAO,EAAE,WAAW,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAA;AACtE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,aAAa,CAAA;AAG1E,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAA;AACzD,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAA"}