defuddle 0.14.0 → 0.15.0
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/constants.d.ts +0 -2
- package/dist/constants.js +39 -10
- package/dist/constants.js.map +1 -1
- package/dist/defuddle.d.ts +1 -20
- package/dist/defuddle.js +151 -807
- package/dist/defuddle.js.map +1 -1
- package/dist/elements/code.js +76 -11
- package/dist/elements/code.js.map +1 -1
- package/dist/elements/footnotes.js +420 -45
- package/dist/elements/footnotes.js.map +1 -1
- package/dist/elements/headings.js +5 -0
- package/dist/elements/headings.js.map +1 -1
- package/dist/elements/math.base.d.ts +1 -0
- package/dist/elements/math.base.js +4 -1
- package/dist/elements/math.base.js.map +1 -1
- package/dist/elements/math.core.d.ts +1 -0
- package/dist/elements/math.d.ts +1 -1
- package/dist/elements/math.full.d.ts +1 -0
- package/dist/elements/math.full.js +90 -0
- package/dist/elements/math.full.js.map +1 -0
- package/dist/elements/math.js +3 -3
- package/dist/extractor-registry.js +20 -0
- package/dist/extractor-registry.js.map +1 -1
- package/dist/extractors/bbcode-data.d.ts +10 -0
- package/dist/extractors/bbcode-data.js +59 -0
- package/dist/extractors/bbcode-data.js.map +1 -0
- package/dist/extractors/c2-wiki.d.ts +15 -0
- package/dist/extractors/c2-wiki.js +143 -0
- package/dist/extractors/c2-wiki.js.map +1 -0
- package/dist/extractors/reddit.d.ts +1 -0
- package/dist/extractors/reddit.js +14 -14
- package/dist/extractors/reddit.js.map +1 -1
- package/dist/extractors/substack.d.ts +17 -0
- package/dist/extractors/substack.js +188 -0
- package/dist/extractors/substack.js.map +1 -0
- package/dist/extractors/x-article.d.ts +1 -0
- package/dist/extractors/x-article.js +27 -2
- package/dist/extractors/x-article.js.map +1 -1
- package/dist/extractors/x-oembed.js +1 -1
- package/dist/extractors/x-oembed.js.map +1 -1
- package/dist/extractors/youtube.d.ts +9 -2
- package/dist/extractors/youtube.js +161 -29
- package/dist/extractors/youtube.js.map +1 -1
- package/dist/fetch.js +183 -14
- package/dist/fetch.js.map +1 -1
- package/dist/index.full.js +1 -1
- package/dist/index.js +1 -1
- package/dist/markdown.js +27 -2
- package/dist/markdown.js.map +1 -1
- package/dist/metadata.d.ts +4 -3
- package/dist/metadata.js +195 -41
- package/dist/metadata.js.map +1 -1
- package/dist/node.d.ts +1 -1
- package/dist/node.js +3 -6
- package/dist/node.js.map +1 -1
- package/dist/removals/content-patterns.d.ts +2 -0
- package/dist/removals/content-patterns.js +835 -0
- package/dist/removals/content-patterns.js.map +1 -0
- package/dist/removals/hidden.d.ts +2 -0
- package/dist/removals/hidden.js +78 -0
- package/dist/removals/hidden.js.map +1 -0
- package/dist/removals/metadata-block.d.ts +8 -0
- package/dist/removals/metadata-block.js +40 -0
- package/dist/removals/metadata-block.js.map +1 -0
- package/dist/{scoring.d.ts → removals/scoring.d.ts} +1 -1
- package/dist/{scoring.js → removals/scoring.js} +7 -9
- package/dist/removals/scoring.js.map +1 -0
- package/dist/removals/selectors.d.ts +2 -0
- package/dist/removals/selectors.js +118 -0
- package/dist/removals/selectors.js.map +1 -0
- package/dist/removals/small-images.d.ts +3 -0
- package/dist/removals/small-images.js +116 -0
- package/dist/removals/small-images.js.map +1 -0
- package/dist/standardize.d.ts +2 -1
- package/dist/standardize.js +106 -62
- package/dist/standardize.js.map +1 -1
- package/dist/types/extractors.d.ts +1 -0
- package/dist/types.d.ts +5 -0
- package/dist/utils/bbcode.d.ts +6 -0
- package/dist/utils/bbcode.js +57 -0
- package/dist/utils/bbcode.js.map +1 -0
- package/dist/utils.js +1 -1
- package/dist/utils.js.map +1 -1
- package/package.json +1 -1
- package/dist/elements/math.core.js +0 -52
- package/dist/elements/math.core.js.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/scoring.js.map +0 -1
package/dist/standardize.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.standardizeContent = standardizeContent;
|
|
4
|
+
exports.removeOrphanedDividers = removeOrphanedDividers;
|
|
4
5
|
const constants_1 = require("./constants");
|
|
5
6
|
const math_1 = require("./elements/math");
|
|
6
7
|
const code_1 = require("./elements/code");
|
|
@@ -108,58 +109,71 @@ const ELEMENT_STANDARDIZATION_RULES = [
|
|
|
108
109
|
}
|
|
109
110
|
}
|
|
110
111
|
];
|
|
111
|
-
function standardizeContent(element, metadata, doc, debug = false) {
|
|
112
|
+
function standardizeContent(element, metadata, doc, debug = false, subProfile) {
|
|
112
113
|
_debug = debug;
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
114
|
+
const step = subProfile
|
|
115
|
+
? (name, fn) => {
|
|
116
|
+
const t = performance.now();
|
|
117
|
+
const r = fn();
|
|
118
|
+
subProfile[name] = (subProfile[name] ?? 0) + Math.round(performance.now() - t);
|
|
119
|
+
return r;
|
|
120
|
+
}
|
|
121
|
+
: (_, fn) => fn();
|
|
122
|
+
step('standardizeSpaces', () => standardizeSpaces(element));
|
|
123
|
+
step('removeHtmlComments', () => removeHtmlComments(element));
|
|
124
|
+
step('standardizeHeadings', () => standardizeHeadings(element, metadata.title, doc));
|
|
125
|
+
step('wrapPreformattedCode', () => wrapPreformattedCode(element, doc));
|
|
126
|
+
step('standardizeElements', () => standardizeElements(element, doc, subProfile));
|
|
123
127
|
if (!debug) {
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
128
|
+
step('flattenWrapperElements[1]', () => flattenWrapperElements(element, doc));
|
|
129
|
+
step('stripUnwantedAttributes', () => stripUnwantedAttributes(element, debug));
|
|
130
|
+
step('unwrapBareSpans', () => unwrapBareSpans(element));
|
|
131
|
+
step('unwrapSpecialLinks', () => {
|
|
132
|
+
// Unwrap links inside inline code — markdown can't render links in backtick code
|
|
133
|
+
Array.from(element.querySelectorAll('code a')).forEach(unwrapElement);
|
|
134
|
+
// Unwrap javascript: links — keep text, remove the link
|
|
135
|
+
Array.from(element.querySelectorAll('a[href^="javascript:"]')).forEach(unwrapElement);
|
|
136
|
+
// Restructure links that wrap block content containing a heading (e.g. article cards).
|
|
137
|
+
// <a href="/x"><h2>Title</h2><p>desc</p></a>
|
|
138
|
+
// → <h2><a href="/x">Title</a></h2><p>desc</p>
|
|
139
|
+
// This produces valid HTML that any markdown converter handles correctly.
|
|
140
|
+
Array.from(element.querySelectorAll('a')).forEach(link => {
|
|
141
|
+
const href = link.getAttribute('href');
|
|
142
|
+
if (!href || href.startsWith('#'))
|
|
143
|
+
return;
|
|
144
|
+
const heading = Array.from(link.children).find(c => /^H[1-6]$/.test(c.nodeName));
|
|
145
|
+
if (!heading)
|
|
146
|
+
return;
|
|
147
|
+
// Move the href into the heading by wrapping its children in a new <a>
|
|
148
|
+
const innerLink = doc.createElement('a');
|
|
149
|
+
innerLink.setAttribute('href', href);
|
|
150
|
+
while (heading.firstChild)
|
|
151
|
+
innerLink.appendChild(heading.firstChild);
|
|
152
|
+
heading.appendChild(innerLink);
|
|
153
|
+
// Unwrap the outer <a>, leaving the heading and siblings in place
|
|
138
154
|
unwrapElement(link);
|
|
139
|
-
}
|
|
155
|
+
});
|
|
156
|
+
// Unwrap anchor links that wrap headings (e.g. clickable section headers)
|
|
157
|
+
Array.from(element.querySelectorAll('a[href^="#"]')).forEach(link => {
|
|
158
|
+
if (link.querySelector('h1, h2, h3, h4, h5, h6')) {
|
|
159
|
+
unwrapElement(link);
|
|
160
|
+
}
|
|
161
|
+
});
|
|
140
162
|
});
|
|
141
|
-
|
|
142
|
-
(
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
removeOrphanedDividers(element);
|
|
151
|
-
// Final pass of div flattening after cleanup operations
|
|
152
|
-
flattenWrapperElements(element, doc);
|
|
153
|
-
// Standardize consecutive br elements
|
|
154
|
-
stripExtraBrElements(element);
|
|
155
|
-
// Clean up empty lines
|
|
156
|
-
removeEmptyLines(element, doc);
|
|
163
|
+
step('removeHeadingAnchors', () => (0, headings_1.removeHeadingAnchors)(element));
|
|
164
|
+
step('removeObsoleteElements', () => element.querySelectorAll('object, embed, applet').forEach(el => el.remove()));
|
|
165
|
+
step('removeEmptyElements', () => removeEmptyElements(element));
|
|
166
|
+
step('removeTrailingHeadings', () => removeTrailingHeadings(element));
|
|
167
|
+
step('removeOrphanedDividers[1]', () => removeOrphanedDividers(element));
|
|
168
|
+
step('flattenWrapperElements[2]', () => flattenWrapperElements(element, doc));
|
|
169
|
+
step('removeOrphanedDividers[2]', () => removeOrphanedDividers(element));
|
|
170
|
+
step('stripExtraBrElements', () => stripExtraBrElements(element));
|
|
171
|
+
step('removeEmptyLines', () => removeEmptyLines(element, doc));
|
|
157
172
|
}
|
|
158
173
|
else {
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
stripExtraBrElements(element);
|
|
174
|
+
step('stripUnwantedAttributes', () => stripUnwantedAttributes(element, debug));
|
|
175
|
+
step('removeTrailingHeadings', () => removeTrailingHeadings(element));
|
|
176
|
+
step('stripExtraBrElements', () => stripExtraBrElements(element));
|
|
163
177
|
(0, utils_1.logDebug)(_debug, 'Debug mode: Skipping div flattening to preserve structure');
|
|
164
178
|
}
|
|
165
179
|
}
|
|
@@ -441,6 +455,9 @@ function removeEmptyElements(element) {
|
|
|
441
455
|
const childNodes = el.childNodes;
|
|
442
456
|
for (let i = 0; i < childNodes.length; i++) {
|
|
443
457
|
const node = childNodes[i];
|
|
458
|
+
// <br> elements are non-content spacers — treat them as empty
|
|
459
|
+
if ((0, utils_1.isElement)(node) && node.tagName.toLowerCase() === 'br')
|
|
460
|
+
continue;
|
|
444
461
|
if (!(0, utils_1.isTextNode)(node))
|
|
445
462
|
return false;
|
|
446
463
|
const nodeText = node.textContent || '';
|
|
@@ -650,28 +667,51 @@ function removeEmptyLines(element, doc) {
|
|
|
650
667
|
processingTime: `${(endTime - startTime).toFixed(2)}ms`
|
|
651
668
|
});
|
|
652
669
|
}
|
|
653
|
-
function standardizeElements(element, doc) {
|
|
670
|
+
function standardizeElements(element, doc, subProfile) {
|
|
654
671
|
let processedCount = 0;
|
|
672
|
+
const stepSE = subProfile
|
|
673
|
+
? (name, fn) => {
|
|
674
|
+
const t = performance.now();
|
|
675
|
+
const r = fn();
|
|
676
|
+
subProfile['se:' + name] = (subProfile['se:' + name] ?? 0) + Math.round(performance.now() - t);
|
|
677
|
+
return r;
|
|
678
|
+
}
|
|
679
|
+
: (_, fn) => fn();
|
|
655
680
|
// Convert elements based on standardization rules
|
|
656
681
|
ELEMENT_STANDARDIZATION_RULES.forEach(rule => {
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
|
|
663
|
-
|
|
664
|
-
return;
|
|
665
|
-
}
|
|
666
|
-
elements.forEach(el => {
|
|
667
|
-
if (rule.transform) {
|
|
668
|
-
// If there's a transform function, use it to create the new element
|
|
669
|
-
const transformed = rule.transform(el, doc);
|
|
670
|
-
el.replaceWith(transformed);
|
|
671
|
-
processedCount++;
|
|
682
|
+
const selectorKey = rule.selector.substring(0, 30);
|
|
683
|
+
stepSE(selectorKey, () => {
|
|
684
|
+
if (rule.fastCheck && !element.querySelector(rule.fastCheck))
|
|
685
|
+
return;
|
|
686
|
+
let elements;
|
|
687
|
+
try {
|
|
688
|
+
elements = element.querySelectorAll(rule.selector);
|
|
672
689
|
}
|
|
690
|
+
catch (e) {
|
|
691
|
+
// Some selectors use :has() which isn't supported by jsdom/nwsapi.
|
|
692
|
+
// Skip the rule gracefully in those environments.
|
|
693
|
+
return;
|
|
694
|
+
}
|
|
695
|
+
elements.forEach(el => {
|
|
696
|
+
if (rule.transform) {
|
|
697
|
+
// If there's a transform function, use it to create the new element
|
|
698
|
+
const transformed = rule.transform(el, doc);
|
|
699
|
+
el.replaceWith(transformed);
|
|
700
|
+
processedCount++;
|
|
701
|
+
}
|
|
702
|
+
});
|
|
673
703
|
});
|
|
674
704
|
});
|
|
705
|
+
// Fix invalid <code><pre> nesting left by sites that wrap <pre> in an outer <code>
|
|
706
|
+
// as a highlight container. After codeBlockRules transforms the inner <pre>, the outer
|
|
707
|
+
// <code> still wraps it, producing <code><pre><code>...</code></pre></code> instead of
|
|
708
|
+
// the standard <pre><code>...</code></pre>.
|
|
709
|
+
Array.from(element.querySelectorAll('code > pre')).forEach(pre => {
|
|
710
|
+
const outerCode = pre.parentElement;
|
|
711
|
+
if (!outerCode || outerCode.tagName !== 'CODE')
|
|
712
|
+
return;
|
|
713
|
+
outerCode.replaceWith(pre);
|
|
714
|
+
});
|
|
675
715
|
// arXiv LaTeXML: Convert equation tables to <math> elements before attribute stripping
|
|
676
716
|
const equationTables = Array.from(element.querySelectorAll('table.ltx_equation, table.ltx_eqn_table, table.ltx_equationgroup'));
|
|
677
717
|
equationTables.forEach(table => {
|
|
@@ -750,6 +790,10 @@ function standardizeElements(element, doc) {
|
|
|
750
790
|
table.replaceWith(fragment);
|
|
751
791
|
processedCount++;
|
|
752
792
|
});
|
|
793
|
+
// Add controls to video elements that don't have them
|
|
794
|
+
element.querySelectorAll('video:not([controls])').forEach(el => {
|
|
795
|
+
el.setAttribute('controls', '');
|
|
796
|
+
});
|
|
753
797
|
// Convert lite-youtube elements
|
|
754
798
|
const liteYoutubeElements = element.querySelectorAll('lite-youtube');
|
|
755
799
|
liteYoutubeElements.forEach(el => {
|
package/dist/standardize.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"standardize.js","sourceRoot":"","sources":["../src/standardize.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"standardize.js","sourceRoot":"","sources":["../src/standardize.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
CHANGED
|
@@ -33,6 +33,7 @@ export interface DefuddleResponse extends DefuddleMetadata {
|
|
|
33
33
|
extractorType?: string;
|
|
34
34
|
metaTags?: MetaTagItem[];
|
|
35
35
|
debug?: DebugInfo;
|
|
36
|
+
profile?: Record<string, number>;
|
|
36
37
|
variables?: {
|
|
37
38
|
[key: string]: string;
|
|
38
39
|
};
|
|
@@ -121,6 +122,10 @@ export interface DefuddleOptions {
|
|
|
121
122
|
* - false: exclude all replies
|
|
122
123
|
*/
|
|
123
124
|
includeReplies?: boolean | 'extractors';
|
|
125
|
+
/**
|
|
126
|
+
* Enable per-step profiling. Timings are returned in result.profile.
|
|
127
|
+
*/
|
|
128
|
+
profile?: boolean;
|
|
124
129
|
}
|
|
125
130
|
export interface ExtractorVariables {
|
|
126
131
|
[key: string]: string;
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.bbcodeToHtml = bbcodeToHtml;
|
|
4
|
+
const dom_1 = require("./dom");
|
|
5
|
+
/**
|
|
6
|
+
* Converts Steam/forum-style BBCode to HTML.
|
|
7
|
+
* Core tags are standard across phpBB, vBulletin, MyBB, SMF, XenForo, and Steam.
|
|
8
|
+
* Steam-specific tags (e.g. [previewyoutube]) are included.
|
|
9
|
+
*/
|
|
10
|
+
function bbcodeToHtml(bbcode) {
|
|
11
|
+
let html = bbcode;
|
|
12
|
+
// Headings
|
|
13
|
+
html = html.replace(/\[h1\]([\s\S]*?)\[\/h1\]/gi, '<h1>$1</h1>');
|
|
14
|
+
html = html.replace(/\[h2\]([\s\S]*?)\[\/h2\]/gi, '<h2>$1</h2>');
|
|
15
|
+
html = html.replace(/\[h3\]([\s\S]*?)\[\/h3\]/gi, '<h3>$1</h3>');
|
|
16
|
+
// Inline formatting
|
|
17
|
+
html = html.replace(/\[b\]([\s\S]*?)\[\/b\]/gi, '<strong>$1</strong>');
|
|
18
|
+
html = html.replace(/\[i\]([\s\S]*?)\[\/i\]/gi, '<em>$1</em>');
|
|
19
|
+
html = html.replace(/\[u\]([\s\S]*?)\[\/u\]/gi, '<u>$1</u>');
|
|
20
|
+
html = html.replace(/\[s\]([\s\S]*?)\[\/s\]/gi, '<s>$1</s>');
|
|
21
|
+
// Links: [url=...] or [url="..."]
|
|
22
|
+
html = html.replace(/\[url=["']?([^"'\]]+)["']?\]([\s\S]*?)\[\/url\]/gi, (_, href, text) => {
|
|
23
|
+
if ((0, dom_1.isDangerousUrl)(href))
|
|
24
|
+
return text;
|
|
25
|
+
return `<a href="${href}">${text}</a>`;
|
|
26
|
+
});
|
|
27
|
+
// Images
|
|
28
|
+
html = html.replace(/\[img\]([\s\S]*?)\[\/img\]/gi, '<img src="$1">');
|
|
29
|
+
// Steam: YouTube preview [previewyoutube="videoId;full"][/previewyoutube]
|
|
30
|
+
html = html.replace(/\[previewyoutube=["']?([^;'"]+)[^"'\]]*["']?\]\[\/previewyoutube\]/gi, '<img src="https://www.youtube.com/watch?v=$1">');
|
|
31
|
+
// Lists
|
|
32
|
+
html = html.replace(/\[list\]([\s\S]*?)\[\/list\]/gi, (_, inner) => {
|
|
33
|
+
const items = inner.replace(/\[\*\]([\s\S]*?)(?=\[\*\]|\[\/list\]|$)/gi, '<li>$1</li>');
|
|
34
|
+
return `<ul>${items}</ul>`;
|
|
35
|
+
});
|
|
36
|
+
html = html.replace(/\[olist\]([\s\S]*?)\[\/olist\]/gi, (_, inner) => {
|
|
37
|
+
const items = inner.replace(/\[\*\]([\s\S]*?)(?=\[\*\]|\[\/olist\]|$)/gi, '<li>$1</li>');
|
|
38
|
+
return `<ol>${items}</ol>`;
|
|
39
|
+
});
|
|
40
|
+
// Blockquote
|
|
41
|
+
html = html.replace(/\[quote(?:=[^\]]+)?\]([\s\S]*?)\[\/quote\]/gi, '<blockquote>$1</blockquote>');
|
|
42
|
+
// Code
|
|
43
|
+
html = html.replace(/\[code\]([\s\S]*?)\[\/code\]/gi, '<pre><code>$1</code></pre>');
|
|
44
|
+
// Spoiler
|
|
45
|
+
html = html.replace(/\[spoiler\]([\s\S]*?)\[\/spoiler\]/gi, '<details><summary>Spoiler</summary>$1</details>');
|
|
46
|
+
// Paragraphs: [p]...[/p]
|
|
47
|
+
html = html.replace(/\[p\]([\s\S]*?)\[\/p\]/gi, (_, inner) => {
|
|
48
|
+
const withBreaks = inner.replace(/\n/g, '<br>');
|
|
49
|
+
return `<p>${withBreaks}</p>`;
|
|
50
|
+
});
|
|
51
|
+
// Any remaining newlines as line breaks (content outside [p] tags)
|
|
52
|
+
html = html.replace(/\n/g, '<br>');
|
|
53
|
+
// Strip any remaining unrecognized BBCode tags
|
|
54
|
+
html = html.replace(/\[[^\]]+\]/g, '');
|
|
55
|
+
return html;
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=bbcode.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bbcode.js","sourceRoot":"","sources":["../../src/utils/bbcode.ts"],"names":[],"mappings":";;AAOA,oCA0DC;AAjED,+BAAuC;AAEvC;;;;GAIG;AACH,SAAgB,YAAY,CAAC,MAAc;IAC1C,IAAI,IAAI,GAAG,MAAM,CAAC;IAElB,WAAW;IACX,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,4BAA4B,EAAE,aAAa,CAAC,CAAC;IACjE,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,4BAA4B,EAAE,aAAa,CAAC,CAAC;IACjE,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,4BAA4B,EAAE,aAAa,CAAC,CAAC;IAEjE,oBAAoB;IACpB,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,0BAA0B,EAAE,qBAAqB,CAAC,CAAC;IACvE,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,0BAA0B,EAAE,aAAa,CAAC,CAAC;IAC/D,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,0BAA0B,EAAE,WAAW,CAAC,CAAC;IAC7D,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,0BAA0B,EAAE,WAAW,CAAC,CAAC;IAE7D,kCAAkC;IAClC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,mDAAmD,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;QAC1F,IAAI,IAAA,oBAAc,EAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QACtC,OAAO,YAAY,IAAI,KAAK,IAAI,MAAM,CAAC;IACxC,CAAC,CAAC,CAAC;IAEH,SAAS;IACT,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,8BAA8B,EAAE,gBAAgB,CAAC,CAAC;IAEtE,0EAA0E;IAC1E,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,sEAAsE,EAAE,gDAAgD,CAAC,CAAC;IAE9I,QAAQ;IACR,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,gCAAgC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;QAClE,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,2CAA2C,EAAE,aAAa,CAAC,CAAC;QACxF,OAAO,OAAO,KAAK,OAAO,CAAC;IAC5B,CAAC,CAAC,CAAC;IACH,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,kCAAkC,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;QACpE,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,4CAA4C,EAAE,aAAa,CAAC,CAAC;QACzF,OAAO,OAAO,KAAK,OAAO,CAAC;IAC5B,CAAC,CAAC,CAAC;IAEH,aAAa;IACb,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,8CAA8C,EAAE,6BAA6B,CAAC,CAAC;IAEnG,OAAO;IACP,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,gCAAgC,EAAE,4BAA4B,CAAC,CAAC;IAEpF,UAAU;IACV,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,sCAAsC,EAAE,iDAAiD,CAAC,CAAC;IAE/G,yBAAyB;IACzB,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,0BAA0B,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE;QAC5D,MAAM,UAAU,GAAG,KAAK,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAChD,OAAO,MAAM,UAAU,MAAM,CAAC;IAC/B,CAAC,CAAC,CAAC;IAEH,mEAAmE;IACnE,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;IAEnC,+CAA+C;IAC/C,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC;IAEvC,OAAO,IAAI,CAAC;AACb,CAAC"}
|
package/dist/utils.js
CHANGED
package/dist/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":";;AAeA,8BAEC;AAED,gCAEC;AAED,sCAEC;AAED,4CAIC;AAED,8BAiBC;AAED,kCAEC;AAED,4BAIC;AAOD,gCA+BC;AAlGD,MAAM,SAAS,GAAG;IACjB,YAAY,EAAE,CAAC;IACf,cAAc,EAAE,CAAC;IACjB,SAAS,EAAE,CAAC;IACZ,kBAAkB,EAAE,CAAC;IACrB,qBAAqB,EAAE,CAAC;IACxB,WAAW,EAAE,CAAC;IACd,2BAA2B,EAAE,CAAC;IAC9B,YAAY,EAAE,CAAC;IACf,aAAa,EAAE,CAAC;IAChB,kBAAkB,EAAE,EAAE;IACtB,sBAAsB,EAAE,EAAE;IAC1B,aAAa,EAAE,EAAE;CACjB,CAAC;AAEF,SAAgB,SAAS,CAAC,IAAU;IACnC,OAAO,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,YAAY,CAAC;AACjD,CAAC;AAED,SAAgB,UAAU,CAAC,IAAU;IACpC,OAAO,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,SAAS,CAAC;AAC9C,CAAC;AAED,SAAgB,aAAa,CAAC,IAAU;IACvC,OAAO,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,YAAY,CAAC;AACjD,CAAC;AAED,SAAgB,gBAAgB,CAAC,OAAgB;IAChD,MAAM,GAAG,GAAG,SAAS,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAC7C,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,52 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.mathRules = exports.createCleanMathEl = void 0;
|
|
4
|
-
const math_base_1 = require("./math.base");
|
|
5
|
-
const dom_1 = require("../utils/dom");
|
|
6
|
-
const createCleanMathEl = (doc, mathData, latex, isBlock) => {
|
|
7
|
-
const cleanMathEl = doc.createElement('math');
|
|
8
|
-
cleanMathEl.setAttribute('xmlns', 'http://www.w3.org/1998/Math/MathML');
|
|
9
|
-
cleanMathEl.setAttribute('display', isBlock ? 'block' : 'inline');
|
|
10
|
-
cleanMathEl.setAttribute('data-latex', latex || '');
|
|
11
|
-
// First try to use existing MathML content
|
|
12
|
-
if (mathData?.mathml) {
|
|
13
|
-
const fragment = (0, dom_1.parseHTML)(doc, mathData.mathml);
|
|
14
|
-
const mathContent = fragment.querySelector('math');
|
|
15
|
-
if (mathContent) {
|
|
16
|
-
(0, dom_1.transferContent)(mathContent, cleanMathEl);
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
// If no MathML content but we have LaTeX, store it as text content
|
|
20
|
-
else if (latex) {
|
|
21
|
-
cleanMathEl.textContent = latex;
|
|
22
|
-
}
|
|
23
|
-
return cleanMathEl;
|
|
24
|
-
};
|
|
25
|
-
exports.createCleanMathEl = createCleanMathEl;
|
|
26
|
-
function hasHTMLElementProps(el) {
|
|
27
|
-
return 'classList' in el && 'getAttribute' in el && 'querySelector' in el;
|
|
28
|
-
}
|
|
29
|
-
// Find math elements
|
|
30
|
-
exports.mathRules = [
|
|
31
|
-
{
|
|
32
|
-
selector: math_base_1.mathSelectors,
|
|
33
|
-
element: 'math',
|
|
34
|
-
transform: (el, doc) => {
|
|
35
|
-
if (!hasHTMLElementProps(el))
|
|
36
|
-
return el;
|
|
37
|
-
const mathData = (0, math_base_1.getMathMLFromElement)(el);
|
|
38
|
-
const latex = (0, math_base_1.getBasicLatexFromElement)(el);
|
|
39
|
-
const isBlock = (0, math_base_1.isBlockDisplay)(el);
|
|
40
|
-
const cleanMathEl = (0, exports.createCleanMathEl)(doc, mathData, latex, isBlock);
|
|
41
|
-
// Clean up any associated math scripts after we've extracted their content.
|
|
42
|
-
// Skip when el itself is a math script — it will be replaced by the
|
|
43
|
-
// caller, and removing siblings here would destroy unprocessed scripts.
|
|
44
|
-
if (el.parentElement && !el.matches('script[type^="math/"]')) {
|
|
45
|
-
const mathElements = el.parentElement.querySelectorAll('script[type^="math/"], .MathJax_Preview, script[type="text/javascript"][src*="mathjax"], script[type="text/javascript"][src*="katex"]');
|
|
46
|
-
mathElements.forEach(el => el.remove());
|
|
47
|
-
}
|
|
48
|
-
return cleanMathEl;
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
];
|
|
52
|
-
//# sourceMappingURL=math.core.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"math.core.js","sourceRoot":"","sources":["../../src/elements/math.core.ts"],"names":[],"mappings":";;;AAAA,2CAMqB;AACrB,sCAA0D;AAEnD,MAAM,iBAAiB,GAAG,CAAC,GAAa,EAAE,QAAyB,EAAE,KAAoB,EAAE,OAAgB,EAAW,EAAE;IAC9H,MAAM,WAAW,GAAG,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;IAE9C,WAAW,CAAC,YAAY,CAAC,OAAO,EAAE,oCAAoC,CAAC,CAAC;IACxE,WAAW,CAAC,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAClE,WAAW,CAAC,YAAY,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE,CAAC,CAAC;IAEpD,2CAA2C;IAC3C,IAAI,QAAQ,EAAE,MAAM,EAAE,CAAC;QACtB,MAAM,QAAQ,GAAG,IAAA,eAAS,EAAC,GAAG,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;QACjD,MAAM,WAAW,GAAG,QAAQ,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;QACnD,IAAI,WAAW,EAAE,CAAC;YACjB,IAAA,qBAAe,EAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QAC3C,CAAC;IACF,CAAC;IACD,mEAAmE;SAC9D,IAAI,KAAK,EAAE,CAAC;QAChB,WAAW,CAAC,WAAW,GAAG,KAAK,CAAC;IACjC,CAAC;IAED,OAAO,WAAW,CAAC;AACpB,CAAC,CAAC;AArBW,QAAA,iBAAiB,qBAqB5B;AAEF,SAAS,mBAAmB,CAAC,EAAW;IACvC,OAAO,WAAW,IAAI,EAAE,IAAI,cAAc,IAAI,EAAE,IAAI,eAAe,IAAI,EAAE,CAAC;AAC3E,CAAC;AAED,qBAAqB;AACR,QAAA,SAAS,GAAG;IACxB;QACC,QAAQ,EAAE,yBAAa;QACvB,OAAO,EAAE,MAAM;QACf,SAAS,EAAE,CAAC,EAAW,EAAE,GAAa,EAAW,EAAE;YAClD,IAAI,CAAC,mBAAmB,CAAC,EAAE,CAAC;gBAAE,OAAO,EAAE,CAAC;YAExC,MAAM,QAAQ,GAAG,IAAA,gCAAoB,EAAC,EAAE,CAAC,CAAC;YAC1C,MAAM,KAAK,GAAG,IAAA,oCAAmB,EAAC,EAAE,CAAC,CAAC;YACtC,MAAM,OAAO,GAAG,IAAA,0BAAc,EAAC,EAAE,CAAC,CAAC;YACnC,MAAM,WAAW,GAAG,IAAA,yBAAiB,EAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;YAErE,4EAA4E;YAC5E,oEAAoE;YACpE,wEAAwE;YACxE,IAAI,EAAE,CAAC,aAAa,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,EAAE,CAAC;gBAC9D,MAAM,YAAY,GAAG,EAAE,CAAC,aAAa,CAAC,gBAAgB,CACrD,uIAAuI,CACvI,CAAC;gBACF,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;YACzC,CAAC;YAED,OAAO,WAAW,CAAC;QACpB,CAAC;KACD;CACD,CAAC"}
|
package/dist/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;AAAA,yCAAsC;AAGtC,6BAA6B;AAC7B,kBAAe,mBAAQ,CAAC"}
|