html-minifier 5.0.2 → 5.0.4
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/README.md +8 -5
- package/cli.js +89 -32
- package/dist/types/htmlminifier.d.ts.map +1 -1
- package/dist/types/htmlparser.d.ts.map +1 -1
- package/dist/types/lib/attributes.d.ts +19 -1
- package/dist/types/lib/attributes.d.ts.map +1 -1
- package/dist/types/lib/constants.d.ts +6 -1
- package/dist/types/lib/constants.d.ts.map +1 -1
- package/dist/types/lib/elements.d.ts +3 -1
- package/dist/types/lib/elements.d.ts.map +1 -1
- package/dist/types/lib/fragments.d.ts.map +1 -1
- package/dist/types/lib/options.d.ts +1 -0
- package/dist/types/lib/options.d.ts.map +1 -1
- package/dist/types/lib/unused-css.d.ts.map +1 -1
- package/dist/types/lib/utils.d.ts +8 -1
- package/dist/types/lib/utils.d.ts.map +1 -1
- package/dist/types/lib/whitespace.d.ts.map +1 -1
- package/package.json +5 -3
- package/src/htmlminifier.js +220 -69
- package/src/htmlparser.js +333 -53
- package/src/lib/attributes.js +108 -18
- package/src/lib/constants.js +21 -5
- package/src/lib/elements.js +15 -3
- package/src/lib/fragments.js +12 -3
- package/src/lib/options.js +5 -4
- package/src/lib/unused-css.js +85 -68
- package/src/lib/utils.js +19 -0
- package/src/lib/whitespace.js +2 -4
package/README.md
CHANGED
|
@@ -175,12 +175,12 @@ Options can be used in config files (camelCase) or via CLI flags (kebab-case wit
|
|
|
175
175
|
| `quoteCharacter`<br>`--quote-character` | Type of quote to use for attribute values (`'` or `"`) | Auto-detected (uses the quote requiring less escaping; defaults to `"` when equal) |
|
|
176
176
|
| `removeAttributeQuotes`<br>`--remove-attribute-quotes` | [Remove quotes around attributes when possible](https://perfectionkills.com/experimenting-with-html-minifier/#remove_attribute_quotes) | `false` |
|
|
177
177
|
| `removeComments`<br>`--remove-comments` | [Strip HTML comments](https://perfectionkills.com/experimenting-with-html-minifier/#remove_comments) | `false` |
|
|
178
|
-
| `removeDefaultTypeAttributes`<br>`--remove-default-type-attributes` | Remove default `type` attributes from `style`/`link` (e.g., `type="text/css"`) and `script` (e.g., `type="text/javascript"`) elements; other `type` attribute values are left intact | `false` |
|
|
179
|
-
| `removeEmptyAttributes`<br>`--remove-empty-attributes` | [Remove all attributes with whitespace-only values](https://perfectionkills.com/experimenting-with-html-minifier/#remove_empty_or_blank_attributes) | `false` (could be `true`, `Function(attrName, tag)`) |
|
|
178
|
+
| `removeDefaultTypeAttributes`<br>`--remove-default-type-attributes` | Remove default `type` attributes from `style`/`link` (e.g., `type="text/css"`) and `script` (e.g., `type="text/javascript"`) elements; other `type` attribute values are left intact, and `type` stays if a `style` element in the document selects on it (external style sheets can’t be checked) | `false` |
|
|
179
|
+
| `removeEmptyAttributes`<br>`--remove-empty-attributes` | [Remove all attributes with whitespace-only values](https://perfectionkills.com/experimenting-with-html-minifier/#remove_empty_or_blank_attributes), unless a `style` element in the document selects on the attribute (external style sheets can’t be checked) | `false` (could be `true`, `Function(attrName, tag)`) |
|
|
180
180
|
| `removeEmptyElements`<br>`--remove-empty-elements` | [Remove all elements with empty contents](#removing-empty-elements) | `false` |
|
|
181
181
|
| `removeEmptyElementsExcept`<br>`--remove-empty-elements-except` | Array of elements to preserve—use with `removeEmptyElements`; accepts simple tag names (e.g., `["td"]`) or HTML-like markup with attributes (e.g., `["<i class='test'>"]`); supports double quotes, single quotes, and unquoted attribute values | `[]` |
|
|
182
182
|
| `removeOptionalTags`<br>`--remove-optional-tags` | [Remove optional tags](https://perfectionkills.com/experimenting-with-html-minifier/#remove_optional_tags) | `false` |
|
|
183
|
-
| `removeRedundantAttributes`<br>`--remove-redundant-attributes` | [Remove attributes when value matches default](https://meiert.com/blog/optional-html/#toc-attribute-values) or has no effect (as well as `rel` keywords and `meta` elements without effect) | `false` |
|
|
183
|
+
| `removeRedundantAttributes`<br>`--remove-redundant-attributes` | [Remove attributes when value matches default](https://meiert.com/blog/optional-html/#toc-attribute-values) or has no effect (as well as `rel` keywords and `meta` elements without effect), unless a `style` element in the document selects on the attribute (external style sheets can’t be checked) | `false` |
|
|
184
184
|
| `removeTagWhitespace`<br>`--remove-tag-whitespace` | Remove space between attributes whenever possible; **note that this will result in invalid HTML** | `false` |
|
|
185
185
|
| `removeUnusedCSS`<br>`--remove-unused-css` | [Remove CSS from `style` elements](#unused-css-removal) that name an element, class, or ID the document doesn’t reference—use with `minifyCSS`, and `safelist` for names only external scripts use | `false` (could be `true`, `{ safelist, scripts }`) |
|
|
186
186
|
| `selfCloseForeignElements`<br>`--self-close-foreign-elements` | Self-close empty SVG and MathML elements (e.g., `<path d="…"></path>` → `<path d="…"/>`) | `false` |
|
|
@@ -256,6 +256,8 @@ you get the following output (condensed, `\n` represents an actual line break):
|
|
|
256
256
|
|
|
257
257
|
Where the modifiers disagree, the preserving one wins—`conservativeCollapse` and `preserveLineBreaks` do not let `collapseInlineTagWhitespace` remove a space or line break entirely.
|
|
258
258
|
|
|
259
|
+
`collapseWhitespace` goes by the element, not by CSS, so whitespace in an element styled `white-space: pre` collapses unless you protect it with [`canCollapseWhitespace` and `canTrimWhitespace`](#api-only-options).
|
|
260
|
+
|
|
259
261
|
Regardless of these options, whitespace at the start and end of the output goes, and so do lines that a removed comment or tag leaves with nothing but whitespace (blank lines of the source stay). Whitespace stays, however, where it’s kept verbatim (in `pre` or `textarea`, or in `pre`, `textarea`, or `script` content left open at the end), next to custom fragments where their handling keeps it (see `trimCustomFragments`), at either end of partial markup (cf. `partialMarkup`), and where `conservativeCollapse` or `preserveLineBreaks` keep it.
|
|
260
262
|
|
|
261
263
|
Note: `preserveLineBreaks` keeps line breaks, not indentation. HTML Minifier doesn’t format: To keep the source formatting, leave `collapseWhitespace` off (as in the first row of the table above). Line breaks and indentation then stay as written, while other options still apply.
|
|
@@ -292,6 +294,7 @@ These figures were measured in October 2026 with HTML Minifier Next 8.8.1 on 61
|
|
|
292
294
|
|
|
293
295
|
`removeEmptyElements` removes elements without content—no text and no child elements (comments don’t count; whitespace does, unless `collapseWhitespace` removes it). It keeps:
|
|
294
296
|
|
|
297
|
+
* `html`, `head`, and `body` elements with attributes (which browsers wouldn’t recreate), and `frameset` elements,
|
|
295
298
|
* elements with an `id` attribute,
|
|
296
299
|
* elements with a `role`, `tabindex`, or ARIA attribute (e.g., `aria-label` or `aria-hidden`), and `label`, `output`, and `template` elements with a `for` attribute (e.g., a `label` styled as a menu toggle), unless its value is empty,
|
|
297
300
|
* custom elements (e.g., `<my-player></my-player>`), `canvas`, and `textarea` elements,
|
|
@@ -406,7 +409,7 @@ const result = await minify(html, {
|
|
|
406
409
|
**Available engines:**
|
|
407
410
|
|
|
408
411
|
* `terser` (default): The standard JavaScript minifier with excellent compression
|
|
409
|
-
* [`swc`](https://swc.rs/): Rust-based minifier
|
|
412
|
+
* [`swc`](https://swc.rs/): Rust-based minifier around ten times faster than Terser, with output of about the same size (requires separate installation)
|
|
410
413
|
|
|
411
414
|
The engine also decides how work is scheduled: SWC minifies a document’s script bodies as one batch dispatched ahead of the parse, while Terser shares the thread the parse runs on.
|
|
412
415
|
|
|
@@ -695,7 +698,7 @@ By default, HM parses markup into a complete tree structure, then modifies it (r
|
|
|
695
698
|
|
|
696
699
|
_Input markup (e.g., `<p id="">foo`) → Internal representation of markup in a form of tree (e.g., `{ tag: "p", attr: "id", children: ["foo"] }`) → Transformation of internal representation (e.g., removal of `id` attribute) → Output of resulting markup (e.g., `<p>foo</p>`)_
|
|
697
700
|
|
|
698
|
-
For partial HTML fragments (such as template includes, SSI fragments, or closing tags without opening tags), use the `partialMarkup: true` option. This preserves stray end tags and prevents auto-closing of unclosed tags at the end of input. Note that normal HTML auto-closing rules still apply during parsing—for example, a closing parent tag will still auto-close its unclosed child elements. Whitespace at the start and end of a fragment stays, too, as it may separate the fragment from what surrounds it (unless `collapseWhitespace` removes it). `removeRedundantAttributes` keeps `target="_self"` in partial markup, as there may be a `base` element setting another target elsewhere. (Where an external script adds such a `base` element, wrap links whose `target="_self"` needs to stay in `<!-- htmlmin:ignore -->`.)
|
|
701
|
+
For partial HTML fragments (such as template includes, SSI fragments, or closing tags without opening tags), use the `partialMarkup: true` option. This preserves stray end tags and prevents auto-closing of unclosed tags at the end of input. Note that normal HTML auto-closing rules still apply during parsing—for example, a closing parent tag will still auto-close its unclosed child elements, and an end tag browsers ignore because a block element is still open inside its element is removed (use `<!-- htmlmin:ignore -->` to keep such markup as written). Whitespace at the start and end of a fragment stays, too, as it may separate the fragment from what surrounds it (unless `collapseWhitespace` removes it). `removeRedundantAttributes` keeps `target="_self"` in partial markup, as there may be a `base` element setting another target elsewhere. (Where an external script adds such a `base` element, wrap links whose `target="_self"` needs to stay in `<!-- htmlmin:ignore -->`.)
|
|
699
702
|
|
|
700
703
|
Markup with [parse errors](https://html.spec.whatwg.org/multipage/parsing.html#parse-errors) that HM cannot read, like a stray `</>` or an `=` in an unquoted attribute value, makes it abort with the line and column of the error, so that the error can be fixed. With `continueOnParseError`, HM handles such errors the way browsers do instead.
|
|
701
704
|
|
package/cli.js
CHANGED
|
@@ -80,12 +80,15 @@ const MARK_RESET = process.stderr.isTTY ? '\x1b[0m' : '';
|
|
|
80
80
|
const program = new Command();
|
|
81
81
|
program.name(pkg.name);
|
|
82
82
|
|
|
83
|
+
// Only the first line, which says what failed, is marked, leaving the reason below it plain
|
|
84
|
+
const printError = (/** @type {string} */ message) => console.error(message.replace(/^.*/, `${MARK_ERROR}$&${MARK_RESET}`));
|
|
85
|
+
|
|
83
86
|
/**
|
|
84
87
|
* @param {string} message
|
|
85
88
|
* @returns {never}
|
|
86
89
|
*/
|
|
87
90
|
function fatal(message) {
|
|
88
|
-
|
|
91
|
+
printError(message);
|
|
89
92
|
process.exit(1);
|
|
90
93
|
}
|
|
91
94
|
|
|
@@ -93,12 +96,22 @@ function fatal(message) {
|
|
|
93
96
|
/** @param {unknown} err */
|
|
94
97
|
const errorMessage = (err) => err instanceof Error ? err.message : String(err);
|
|
95
98
|
|
|
99
|
+
/**
|
|
100
|
+
* What the CLI tried, with the reason it failed indented below, where there is one
|
|
101
|
+
* @param {string} action
|
|
102
|
+
* @param {unknown} err
|
|
103
|
+
*/
|
|
104
|
+
const describeFailure = (action, err) => {
|
|
105
|
+
const reason = errorMessage(err);
|
|
106
|
+
return reason.trim() ? `${action}:\n${reason.replace(/^/gm, ' ')}` : action;
|
|
107
|
+
};
|
|
108
|
+
|
|
96
109
|
// Handle broken pipe (e.g., when piping to `head`)
|
|
97
110
|
process.stdout.on('error', (/** @type {NodeJS.ErrnoException} */ err) => {
|
|
98
111
|
if (err && err.code === 'EPIPE') {
|
|
99
112
|
process.exit(0);
|
|
100
113
|
}
|
|
101
|
-
fatal('STDOUT error
|
|
114
|
+
fatal(describeFailure('STDOUT error', err));
|
|
102
115
|
});
|
|
103
116
|
|
|
104
117
|
/**
|
|
@@ -229,7 +242,7 @@ function readFile(file) {
|
|
|
229
242
|
try {
|
|
230
243
|
return fs.readFileSync(file, { encoding: 'utf8' });
|
|
231
244
|
} catch (err) {
|
|
232
|
-
fatal('Cannot read ' + file
|
|
245
|
+
fatal(describeFailure('Cannot read ' + file, err));
|
|
233
246
|
}
|
|
234
247
|
}
|
|
235
248
|
|
|
@@ -417,10 +430,11 @@ program.helpOption('-h, --help', 'Display help for command');
|
|
|
417
430
|
programOptions.preset = 'comprehensive';
|
|
418
431
|
|
|
419
432
|
const inputDirResolved = await fs.promises.realpath(cwd).catch(() => cwd);
|
|
420
|
-
const stats = await processDirectory(cwd, cwd, EXTENSIONS_DEFAULT, false, false, undefined, Boolean(process.stderr.isTTY), ['node_modules'], inputDirResolved);
|
|
433
|
+
const { stats, failed } = await processDirectory(cwd, cwd, EXTENSIONS_DEFAULT, false, false, undefined, Boolean(process.stderr.isTTY), ['node_modules'], inputDirResolved);
|
|
421
434
|
reportProcessed(stats.length);
|
|
435
|
+
reportFailed(failed);
|
|
422
436
|
|
|
423
|
-
process.exit(
|
|
437
|
+
process.exit();
|
|
424
438
|
}
|
|
425
439
|
}
|
|
426
440
|
|
|
@@ -552,6 +566,18 @@ program.helpOption('-h, --help', 'Display help for command');
|
|
|
552
566
|
console.error(`${MARK_SUCCESS}Processed ${count.toLocaleString()} file${count === 1 ? '' : 's'}.${MARK_RESET}`);
|
|
553
567
|
}
|
|
554
568
|
|
|
569
|
+
/**
|
|
570
|
+
* Ends a directory run on what failed; each failure was reported as it happened, with
|
|
571
|
+
* its reason, so that this needs only name the files
|
|
572
|
+
* @param {string[]} files
|
|
573
|
+
*/
|
|
574
|
+
function reportFailed(files) {
|
|
575
|
+
if (!files.length) return;
|
|
576
|
+
process.exitCode = 1;
|
|
577
|
+
console.error(`${MARK_ERROR}Could not process ${files.length.toLocaleString()} file${files.length === 1 ? '' : 's'}:${MARK_RESET}`);
|
|
578
|
+
files.forEach(file => console.error(` ${file}`));
|
|
579
|
+
}
|
|
580
|
+
|
|
555
581
|
/**
|
|
556
582
|
* Reports a single-output run and writes its result to `--output` or STDOUT; a dry
|
|
557
583
|
* run reports only
|
|
@@ -581,7 +607,7 @@ program.helpOption('-h, --help', 'Display help for command');
|
|
|
581
607
|
await fs.promises.mkdir(path.dirname(programOptions.output), { recursive: true });
|
|
582
608
|
await writeFileAtomic(programOptions.output, minified);
|
|
583
609
|
} catch (err) {
|
|
584
|
-
fatal('Cannot write ' + programOptions.output
|
|
610
|
+
fatal(describeFailure('Cannot write ' + programOptions.output, err));
|
|
585
611
|
}
|
|
586
612
|
return;
|
|
587
613
|
}
|
|
@@ -697,6 +723,7 @@ program.helpOption('-h, --help', 'Display help for command');
|
|
|
697
723
|
}
|
|
698
724
|
|
|
699
725
|
/**
|
|
726
|
+
* Rejects with a message fit to show as is, leaving it to the run what to do about it
|
|
700
727
|
* @param {string} inputFile
|
|
701
728
|
* @param {string} outputFile
|
|
702
729
|
* @param {boolean} [isDryRun]
|
|
@@ -704,7 +731,7 @@ program.helpOption('-h, --help', 'Display help for command');
|
|
|
704
731
|
*/
|
|
705
732
|
async function processFile(inputFile, outputFile, isDryRun = false, isVerbose = false) {
|
|
706
733
|
const data = await fs.promises.readFile(inputFile, { encoding: 'utf8' }).catch(err => {
|
|
707
|
-
|
|
734
|
+
throw new Error(describeFailure('Cannot read ' + inputFile, err));
|
|
708
735
|
});
|
|
709
736
|
|
|
710
737
|
let minified;
|
|
@@ -716,7 +743,7 @@ program.helpOption('-h, --help', 'Display help for command');
|
|
|
716
743
|
}
|
|
717
744
|
minified = await minify(data, fileOptions);
|
|
718
745
|
} catch (err) {
|
|
719
|
-
|
|
746
|
+
throw new Error(describeFailure('Minification error on ' + inputFile, err), { cause: err });
|
|
720
747
|
}
|
|
721
748
|
|
|
722
749
|
const stats = calculateStats(data, minified);
|
|
@@ -727,7 +754,7 @@ program.helpOption('-h, --help', 'Display help for command');
|
|
|
727
754
|
|
|
728
755
|
if (!isDryRun) {
|
|
729
756
|
await writeFileAtomic(outputFile, minified).catch(err => {
|
|
730
|
-
|
|
757
|
+
throw new Error(describeFailure('Cannot write ' + outputFile, err));
|
|
731
758
|
});
|
|
732
759
|
}
|
|
733
760
|
|
|
@@ -884,45 +911,68 @@ program.helpOption('-h, --help', 'Display help for command');
|
|
|
884
911
|
* @param {boolean} showProgress
|
|
885
912
|
* @param {string[]} ignorePatterns
|
|
886
913
|
* @param {string} baseDir
|
|
914
|
+
* @returns {Promise<{stats: {originalSize: number, minifiedSize: number, saved: number}[], failed: string[]}>}
|
|
887
915
|
*/
|
|
888
916
|
async function processDirectory(inputDir, outputDir, extensions, isDryRun, isVerbose, skipRootAbs, showProgress, ignorePatterns, baseDir) {
|
|
889
917
|
// Collect all files first for bounded parallel processing
|
|
890
918
|
const list = await collectFiles(inputDir, extensions, skipRootAbs, ignorePatterns, baseDir);
|
|
891
919
|
const allStats = new Array(list.length);
|
|
892
|
-
|
|
893
|
-
const prepareOutDir = async (/** @type {string} */ inputFile) => {
|
|
894
|
-
const outFile = path.join(outputDir, path.relative(inputDir, inputFile));
|
|
895
|
-
if (!isDryRun) {
|
|
896
|
-
await fs.promises.mkdir(path.dirname(outFile), { recursive: true }).catch(err => {
|
|
897
|
-
fatal('Cannot create directory ' + path.dirname(outFile) + '\n' + errorMessage(err));
|
|
898
|
-
});
|
|
899
|
-
}
|
|
900
|
-
return outFile;
|
|
901
|
-
};
|
|
920
|
+
const allFailed = new Array(list.length);
|
|
902
921
|
|
|
903
922
|
let done = 0;
|
|
904
923
|
const advanceProgress = () => {
|
|
905
924
|
if (showProgress) updateProgress(++done, list.length);
|
|
906
925
|
};
|
|
907
926
|
|
|
927
|
+
const failFile = (/** @type {string} */ inputFile, /** @type {number} */ idx, /** @type {string} */ message) => {
|
|
928
|
+
if (showProgress) clearProgress();
|
|
929
|
+
printError(message);
|
|
930
|
+
allFailed[idx] = inputFile;
|
|
931
|
+
advanceProgress();
|
|
932
|
+
};
|
|
933
|
+
|
|
934
|
+
// The output path, or `null` for a file that just failed for want of its folder
|
|
935
|
+
const prepareOutDir = async (/** @type {string} */ inputFile, /** @type {number} */ idx) => {
|
|
936
|
+
const outFile = path.join(outputDir, path.relative(inputDir, inputFile));
|
|
937
|
+
if (isDryRun) return outFile;
|
|
938
|
+
try {
|
|
939
|
+
await fs.promises.mkdir(path.dirname(outFile), { recursive: true });
|
|
940
|
+
return outFile;
|
|
941
|
+
} catch (err) {
|
|
942
|
+
failFile(inputFile, idx, describeFailure('Cannot create directory ' + path.dirname(outFile), err));
|
|
943
|
+
return null;
|
|
944
|
+
}
|
|
945
|
+
};
|
|
946
|
+
|
|
908
947
|
const pool = await createPool(list);
|
|
909
948
|
if (pool) {
|
|
910
949
|
try {
|
|
911
950
|
const { orderLargestFirst } = await import('./src/lib/file-pool.js');
|
|
912
951
|
const [fileSizes, tasks] = await Promise.all([
|
|
913
952
|
getFileSizes(list),
|
|
914
|
-
Promise.all(list.map(async (inputFile, idx) => ({ inputFile, outFile: await prepareOutDir(inputFile), idx })))
|
|
953
|
+
Promise.all(list.map(async (inputFile, idx) => ({ inputFile, outFile: await prepareOutDir(inputFile, idx), idx })))
|
|
915
954
|
]);
|
|
916
955
|
// `run()` queues synchronously, so the files reach the pool in exactly this order
|
|
917
956
|
await Promise.all(orderLargestFirst(tasks, fileSizes).map(async ({ inputFile, outFile, idx }) => {
|
|
957
|
+
if (outFile === null) return;
|
|
918
958
|
const sizes = await pool.run({ inputFile, outputFile: outFile, dryRun: isDryRun })
|
|
919
959
|
.catch(err => {
|
|
960
|
+
// Only a pool that lost a worker names no step, which no file is to blame
|
|
961
|
+
// for and which leaves nothing to run the remaining files on
|
|
962
|
+
if (!err?.stage) {
|
|
963
|
+
if (showProgress) clearProgress();
|
|
964
|
+
reportFailed(allFailed.filter(Boolean));
|
|
965
|
+
fatal(describeFailure('Worker thread failure, stopping the run', err));
|
|
966
|
+
}
|
|
920
967
|
// A worker names the step it failed at, so the wording matches what this
|
|
921
968
|
// file would have got had it been minified in this process
|
|
922
|
-
|
|
923
|
-
|
|
924
|
-
|
|
969
|
+
const action = err.stage === 'read' ? 'Cannot read ' + inputFile
|
|
970
|
+
: err.stage === 'write' ? 'Cannot write ' + outFile
|
|
971
|
+
: 'Minification error on ' + inputFile;
|
|
972
|
+
failFile(inputFile, idx, describeFailure(action, err));
|
|
973
|
+
return null;
|
|
925
974
|
});
|
|
975
|
+
if (!sizes) return;
|
|
926
976
|
const stats = calculateSizeStats(sizes.originalSize, sizes.minifiedSize);
|
|
927
977
|
if (isDryRun || isVerbose) {
|
|
928
978
|
reportFileStats(path.relative(process.cwd(), inputFile), stats);
|
|
@@ -935,13 +985,18 @@ program.helpOption('-h, --help', 'Display help for command');
|
|
|
935
985
|
}
|
|
936
986
|
} else {
|
|
937
987
|
await runWithConcurrency(list, CONCURRENCY_IN_PROCESS, async (inputFile, idx) => {
|
|
938
|
-
const outFile = await prepareOutDir(inputFile);
|
|
939
|
-
|
|
940
|
-
|
|
988
|
+
const outFile = await prepareOutDir(inputFile, idx);
|
|
989
|
+
if (outFile === null) return;
|
|
990
|
+
try {
|
|
991
|
+
allStats[idx] = await processFile(inputFile, outFile, isDryRun, isVerbose);
|
|
992
|
+
advanceProgress();
|
|
993
|
+
} catch (err) {
|
|
994
|
+
failFile(inputFile, idx, errorMessage(err));
|
|
995
|
+
}
|
|
941
996
|
});
|
|
942
997
|
}
|
|
943
998
|
if (showProgress) clearProgress();
|
|
944
|
-
return allStats.filter(Boolean);
|
|
999
|
+
return { stats: allStats.filter(Boolean), failed: allFailed.filter(Boolean) };
|
|
945
1000
|
}
|
|
946
1001
|
|
|
947
1002
|
const writeMinify = async () => {
|
|
@@ -957,7 +1012,7 @@ program.helpOption('-h, --help', 'Display help for command');
|
|
|
957
1012
|
const minify = await getMinify();
|
|
958
1013
|
minified = await minify(content, minifierOptions);
|
|
959
1014
|
} catch (err) {
|
|
960
|
-
fatal('Minification error
|
|
1015
|
+
fatal(describeFailure('Minification error', err));
|
|
961
1016
|
}
|
|
962
1017
|
|
|
963
1018
|
await reportAndWrite(program.args.length > 0 ? program.args.join(', ') : 'STDIN', content, minified);
|
|
@@ -1025,13 +1080,13 @@ program.helpOption('-h, --help', 'Display help for command');
|
|
|
1025
1080
|
fatal(`${inputDir} is not a directory—to minify a single file, use \`--input\`/\`--output\`: html-minifier [options] -i ${inputDir} -o <output-file>`);
|
|
1026
1081
|
}
|
|
1027
1082
|
} catch (err) {
|
|
1028
|
-
fatal('Cannot read directory ' + inputDir
|
|
1083
|
+
fatal(describeFailure('Cannot read directory ' + inputDir, err));
|
|
1029
1084
|
}
|
|
1030
1085
|
|
|
1031
1086
|
// Resolve base directory for consistent path comparisons
|
|
1032
1087
|
const inputDirResolved = inputReal || inputDir;
|
|
1033
1088
|
|
|
1034
|
-
const stats = await processDirectory(inputDir, outputDir, extList, Boolean(programOptions.dry), Boolean(isVerbose), skipRootAbs, showProgress, ignorePatterns, inputDirResolved);
|
|
1089
|
+
const { stats, failed } = await processDirectory(inputDir, outputDir, extList, Boolean(programOptions.dry), Boolean(isVerbose), skipRootAbs, showProgress, ignorePatterns, inputDirResolved);
|
|
1035
1090
|
|
|
1036
1091
|
if (showProgress) {
|
|
1037
1092
|
reportProcessed(stats.length);
|
|
@@ -1047,6 +1102,8 @@ program.helpOption('-h, --help', 'Display help for command');
|
|
|
1047
1102
|
if (isVerbose) {
|
|
1048
1103
|
await printCacheStats();
|
|
1049
1104
|
}
|
|
1105
|
+
|
|
1106
|
+
reportFailed(failed);
|
|
1050
1107
|
})();
|
|
1051
1108
|
} else if (filesProvided) { // Minifying one or more files specified on the command line
|
|
1052
1109
|
// Process each file independently, then concatenate outputs
|
|
@@ -1068,13 +1125,13 @@ program.helpOption('-h, --help', 'Display help for command');
|
|
|
1068
1125
|
const outputs = new Array(inputs.length);
|
|
1069
1126
|
|
|
1070
1127
|
await runWithConcurrency(inputs, CONCURRENCY_IN_PROCESS, async (file, idx) => {
|
|
1071
|
-
const data = await fs.promises.readFile(file, 'utf8').catch(err => fatal('Cannot read ' + file
|
|
1128
|
+
const data = await fs.promises.readFile(file, 'utf8').catch(err => fatal(describeFailure('Cannot read ' + file, err)));
|
|
1072
1129
|
const minify = await getMinify();
|
|
1073
1130
|
let out;
|
|
1074
1131
|
try {
|
|
1075
1132
|
out = await minify(data, minifierOptions);
|
|
1076
1133
|
} catch (err) {
|
|
1077
|
-
fatal('Minification error on ' + file
|
|
1134
|
+
fatal(describeFailure('Minification error on ' + file, err));
|
|
1078
1135
|
}
|
|
1079
1136
|
originals[idx] = data;
|
|
1080
1137
|
outputs[idx] = out;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"htmlminifier.d.ts","sourceRoot":"","sources":["../../src/htmlminifier.js"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"htmlminifier.d.ts","sourceRoot":"","sources":["../../src/htmlminifier.js"],"names":[],"mappings":"AAEA,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAuF/D,YAAkB,aAAa,GAI/B;IAAe,IAAI,EAAZ,MAAM,CACb;IAAgB,KAAK,AAArB,CACA,EADO,MAAM,CACb;IAAgB,KAAK,AAArB,CACA,EADO,MAAM,CACb;IAAgB,YAAY,AAA5B,CACA,EADO,MAAM,CACb;IAAgB,UAAU,AAA1B,CACA,EADO,MAAM,CACb;IAAgB,WAAW,AAA3B,CAA4B,EAArB,MAAM,CAAe;CAAA,CAAA;AAI5B,YAAkB,eAAe,GAIjC;;;;;;;IAA2G,qBAAqB,AAAhI,CAMA,EANO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,qBAAqB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,KAAK,OAAO,CAMxG;;;;;;;;;;IAAuE,YAAY,AAAnF,CASA,EATO,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,KAAK,OAAO,CAAC,GAAG,IAAI,CASpE;;;;;;;;;IAA8D,WAAW,AAAzE,CAQA,EARO,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,GAAG,IAAI,CAQ3D;;;;;;;;;IAA4C,YAAY,AAAxD,CAQA,EARO,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,IAAI,CAQzC;;;;;;;IAA0H,iBAAiB,AAA3I,CAMA,EANO,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,EAAE,KAAK,EAAE,aAAa,EAAE,GAAG,SAAS,EAAE,iBAAiB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,KAAK,OAAO,CAMvH;;;;;;;;;;IAAgB,QAAQ,AAAxB,CASA,EATO,MAAM,CASb;;;;;;;;;;IAAgB,OAAO,AAAvB,CASA,EATO,MAAM,CASb;;;;;;;;;;IAAgB,QAAQ,AAAxB,CASA,EATO,MAAM,CASb;;;;;;;;IAAiB,aAAa,AAA9B,CAOC,EAPM,OAAO,CAOb;;;;;;;;;IAAiB,2BAA2B,AAA5C,CAQD,EARQ,OAAO,CAQf;;;;;;;;IAAiB,yBAAyB,AAA1C,CAOA,EAPO,OAAO,CAOd;;;;;;;IAAiB,uBAAuB,AAAxC,CAMA,EANO,OAAO,CAMd;;;;;;;;;;IAAiB,2BAA2B,AAA5C,CASA,EATO,OAAO,CASd;;;;;;;;;;IAAiB,qBAAqB,AAAtC,CASA,EATO,OAAO,CASd;;;;;;;;IAAiB,kBAAkB,AAAnC,CAOA,EAPO,OAAO,CAOd;;;;;;;;IAAiB,oBAAoB,AAArC,CAOA,EAPO,OAAO,CAOd;;;;;;;;IAAiB,qBAAqB,AAAtC,CAOA,EAPO,OAAO,CAOd;;;;;;;IAAiB,oBAAoB,AAArC,CAMA,EANO,OAAO,CAMd;;;;;;;;IAAkB,gBAAgB,AAAlC,CAOA,EAPO,MAAM,EAAE,CAOf;;;;;;IAAgB,kBAAkB,AAAlC,CAKA,EALO,MAAM,CAKb;;;;;;IAA4B,kBAAkB,AAA9C,CAKA,EALO,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAKzB;;;;;;;IAAkB,qBAAqB,AAAvC,CAMA,EANO,MAAM,EAAE,CAMf;;;;;;;;;IAAiB,qBAAqB,AAAtC,CAQA,EARO,OAAO,CAQd;;;;;;;IAAiB,cAAc,AAA/B,CAOA,EAPO,OAAO,CAOd;;;;;;;;IAAkB,oBAAoB,AAAtC,CAOA,EAPO,MAAM,EAAE,CAOf;;;;;;;;;IAAkB,qBAAqB,AAAvC,CAQA,EARO,MAAM,EAAE,CAQf;;;;;;;IAAiB,wBAAwB,AAAzC,CAMA,EANO,OAAO,CAMd;;;;;;;IAA2B,oBAAoB,AAA/C,CAMA,EANO,SAAS,CAAC,MAAM,CAAC,CAMxB;;;;;;;;IAAiB,gBAAgB,AAAjC,CAOA,EAPO,OAAO,CAOd;;;;;;;;IAAoC,GAAG,AAAvC,CAOA,EAPO,CAAC,OAAO,EAAE,OAAO,KAAK,IAAI,CAOjC;;;;;;;;IAAgB,cAAc,AAA9B,CAOA,EAPO,MAAM,CAOb;;;;;;;;IAAgB,aAAa,AAA7B,CAOA,EAPO,MAAM,CAOb;;;;;;;;IAAiB,YAAY,AAA7B,CAOA,EAPO,OAAO,CAOd;;;;;;;;;;IAAwK,SAAS,AAAjL,CASA,EATO,OAAO,GAAG,OAAO,CAAC,OAAO,cAAc,EAAE,gBAAgB,CAAC,OAAO,cAAc,EAAE,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,CASrK;;;;;;;;;;;;IAAqK,QAAQ,AAA7K,CAWA,EAXO,OAAO,GAAG,OAAO,QAAQ,EAAE,aAAa,GAAG;QAAC,MAAM,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAC,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,CAWlK;;;;;;;;IAAiB,UAAU,AAA3B,CAOA,EAPO,OAAO,CAOd;;;;;;;;;;IAA2F,UAAU,AAArG,CASA,EATO,OAAO,GAAG,MAAM,GAAG;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAC,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,CASxF;;;;;;;;;;;IAA0B,SAAS,AAAnC,CAUA,EAVO,OAAO,GAAG,MAAM,CAUvB;;;;;;;IAAiB,wBAAwB,AAAzC,CAMA,EANO,OAAO,CAMd;;;;;;;;;;IAAiB,aAAa,AAA9B,CASA,EATO,OAAO,CASd;;;;;;;;IAAiB,kBAAkB,AAAnC,CAOA,EAPO,OAAO,CAOd;;;;;;;;IAAgB,MAAM,AAAtB,CAOA,EAPO,MAAM,CAOb;;;;;;;IAAiB,yBAAyB,AAA1C,CAMA,EANO,OAAO,CAMd;;;;;;;;;;IAAkB,cAAc,AAAhC,CASA,EATO,MAAM,EAAE,CASf;;;;;;;IAAoB,cAAc,AAAlC,CAMA,EANO,IAAI,GAAG,GAAG,CAMjB;;;;;;;IAAiB,qBAAqB,AAAtC,CAMA,EANO,OAAO,CAMd;;;;;;;;IAAiB,cAAc,AAA/B,CAOC,EAPM,OAAO,CAOb;;;;;;;IAAiB,2BAA2B,AAA5C,CAMD,EANQ,OAAO,CAMf;;;;;;;;;IAAgE,qBAAqB,AAArF,CAQA,EARO,OAAO,GAAG,CAAC,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,CAQ7D;;;;;;;;IAAiB,mBAAmB,AAApC,CAOA,EAPO,OAAO,CAOd;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAAkB,yBAAyB,AAA3C,CA2BA,EA3BO,MAAM,EAAE,CA2Bf;;;;;;;;IAAiB,kBAAkB,AAAnC,CAOA,EAPO,OAAO,CAOd;;;;;;;;;;IAAiB,yBAAyB,AAA1C,CASA,EATO,OAAO,CASd;;;;;;;;;;IAAiB,mBAAmB,AAApC,CASA,EATO,OAAO,CASd;;;;;;;;;;;;;;;IAA0E,eAAe,AAAzF,CAcA,EAdO,OAAO,GAAG;QAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;QAAC,OAAO,CAAC,EAAE,OAAO,CAAA;KAAC,CAcvE;;;;;;;;;IAAiB,wBAAwB,AAAzC,CAQA,EARO,OAAO,CAQd;;;;;;;;;IAAmE,cAAc,AAAjF,CAQA,EARO,OAAO,GAAG,CAAC,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,IAAI,CAAC,CAQhE;;;;;;;;;IAA+C,cAAc,AAA7D,CAQA,EARO,OAAO,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC,CAQ5C;;;;;;;;;IAAiB,mBAAmB,AAApC,CAQA,EARO,OAAO,CAQd;;;;;;;IAAiB,eAAe,AAAhC,CAKF,EALS,OAAO,CAKhB;CAAA,CAAA;AA4EE,YAAkB,UAAU,GAG5B;;;;IAAe,IAAI,EAAZ,MAAM,CACb;;;;IAAe,IAAI,EAAZ,MAAM,CACb;;;;IAAe,IAAI,EAAZ,MAAM,CACb;;;;IAAe,KAAK,EAAb,MAAM,CACf;CAAA,CAAA;AAq2ED;;;;;;;;GAQG;AACH,wBAAgB,aAAa,IAFhB;IAAE,GAAG,EAAE,UAAU,CAAC;IAAC,EAAE,EAAE,UAAU,CAAC;IAAC,GAAG,EAAE,UAAU,CAAA;CAAE,CAQhE;AAuFD;;;;GAIG;AACH,eAAO,MAAM,MAAM,UAJR,MAAM,YACN,eAAe,KACb,OAAO,CAAC,MAAM,CA4E1B,CAAC;AAEF,OAAO,EACL,OAAO,EACP,SAAS,EACT,cAAc,EACf,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"htmlparser.d.ts","sourceRoot":"","sources":["../../src/htmlparser.js"],"names":[],"mappings":"AAmBG,YAgBG,iBAAiB,GAhBV;IACR,KAAK,CAAC,WAAW;IACjB,GAAG,CAAC,WAAW;IACf,KAAK,CAAC,WAAW;IACjB,OAAO,CAAC,WAAW;IACnB,qBAAqB,CAAC,WAAW;IACjC,OAAO,CAAC,WAAW;IACnB,QAAQ,CAAC,WAAW;IACpB,UAAU,CAAC,EAAE,WAAW,SAAS,CAAC;IAClC,oBAAoB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3C,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACpC,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACnC,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACnC,gBAAgB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACvC,kBAAkB,CAAC,EAAE,MAAM,EAAE,EAAE,GAAG,SAAS,CAAC;IAC5C,gBAAgB,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAA;CACxC,CAAmB;
|
|
1
|
+
{"version":3,"file":"htmlparser.d.ts","sourceRoot":"","sources":["../../src/htmlparser.js"],"names":[],"mappings":"AAmBG,YAgBG,iBAAiB,GAhBV;IACR,KAAK,CAAC,WAAW;IACjB,GAAG,CAAC,WAAW;IACf,KAAK,CAAC,WAAW;IACjB,OAAO,CAAC,WAAW;IACnB,qBAAqB,CAAC,WAAW;IACjC,OAAO,CAAC,WAAW;IACnB,QAAQ,CAAC,WAAW;IACpB,UAAU,CAAC,EAAE,WAAW,SAAS,CAAC;IAClC,oBAAoB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC3C,aAAa,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACpC,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACnC,YAAY,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACnC,gBAAgB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACvC,kBAAkB,CAAC,EAAE,MAAM,EAAE,EAAE,GAAG,SAAS,CAAC;IAC5C,gBAAgB,CAAC,EAAE,MAAM,EAAE,GAAG,SAAS,CAAA;CACxC,CAAmB;AA4SvB,qBAAa,UAAU;IAMd,IAAI;IACJ,OAAO;IANd;;;OAGG;IACH,YAAY,IAAI,EAHL,MAGK,EAAE,OAAO,EAFd,iBAEc,EAGxB;IAEK,KAAK,kBA2rCV;CACF"}
|
|
@@ -48,6 +48,24 @@ declare function isMetaWithoutEffect(attrs: HTMLAttribute[], markers: string[]):
|
|
|
48
48
|
* @param {string[]} markers - What custom fragment and `htmlmin:ignore` placeholders hold
|
|
49
49
|
*/
|
|
50
50
|
declare function replaceContentTypePragma(attrs: HTMLAttribute[], markers: string[]): void;
|
|
51
|
+
/**
|
|
52
|
+
* The name to write and to hand to hooks: as in the source for HTML names under
|
|
53
|
+
* `caseSensitive`, as named otherwise (foreign names are named as written anyway)
|
|
54
|
+
* @param {HTMLAttribute} attr
|
|
55
|
+
* @param {string} attrName
|
|
56
|
+
* @param {ProcessedOptions} options
|
|
57
|
+
*/
|
|
58
|
+
declare function nameAttrOut(attr: HTMLAttribute, attrName: string, options: ProcessedOptions): string;
|
|
59
|
+
/**
|
|
60
|
+
* Whether `removeEmptyAttributes` removes the attribute
|
|
61
|
+
* @param {string} tag
|
|
62
|
+
* @param {string} attrName
|
|
63
|
+
* @param {string | undefined} attrValue
|
|
64
|
+
* @param {ProcessedOptions} options
|
|
65
|
+
* @param {string} [tagOut]
|
|
66
|
+
* @param {string} [attrNameOut]
|
|
67
|
+
*/
|
|
68
|
+
declare function removesEmptyAttribute(tag: string, attrName: string, attrValue: string | undefined, options: ProcessedOptions, tagOut?: string, attrNameOut?: string): any;
|
|
51
69
|
/**
|
|
52
70
|
* @param {string} name
|
|
53
71
|
* @param {HTMLAttribute[]} attrs
|
|
@@ -85,5 +103,5 @@ declare function buildAttr(normalized: {
|
|
|
85
103
|
value: string | undefined;
|
|
86
104
|
attr: HTMLAttribute;
|
|
87
105
|
}, tag: string, hasUnarySlash: string | boolean | undefined, options: ProcessedOptions, isLast: boolean, uidAttr: string | undefined, markers: string[]): string;
|
|
88
|
-
export { isIgnoredComment, isExecutableScript, isStyleElement, isMetaWithoutEffect, hasAttrName, normalizeAttr, buildAttr, deduplicateAttributes, replaceContentTypePragma };
|
|
106
|
+
export { isIgnoredComment, isExecutableScript, isStyleElement, isMetaWithoutEffect, hasAttrName, nameAttrOut, removesEmptyAttribute, normalizeAttr, buildAttr, deduplicateAttributes, replaceContentTypePragma };
|
|
89
107
|
//# sourceMappingURL=attributes.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"attributes.d.ts","sourceRoot":"","sources":["../../../src/lib/attributes.js"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"attributes.d.ts","sourceRoot":"","sources":["../../../src/lib/attributes.js"],"names":[],"mappings":"AAAA;;GAEG;AAsCC,OAAQ,KAAA,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AAGjD,YAA0I,aAAa,GAA7I;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,CAE1I;AA8BD;;;GAGG;AACH,iBAAS,gBAAgB,CAAC,IAAI,EAHnB,MAGmB,EAAE,OAAO,EAF5B,gBAE4B,WAOtC;AAuCD;;;;;;;GAOG;AACH,iBAAS,qBAAqB,CAAC,KAAK,EAJzB,aAAa,EAIY,EAAE,aAAa,EAHxC,OAGwC,GAFtC,aAAa,EAAE,CAqB3B;AAoND;;;GAGG;AACH,iBAAS,kBAAkB,CAAC,GAAG,EAHpB,MAGoB,EAAE,KAAK,EAF3B,aAAa,EAEc,WAUrC;AAOD;;;GAGG;AACH,iBAAS,cAAc,CAAC,GAAG,EAHhB,MAGgB,EAAE,KAAK,EAFvB,aAAa,EAEU,WAUjC;AAkLD;;;;;GAKG;AACH,iBAAS,mBAAmB,CAAC,KAAK,EAHvB,aAAa,EAGU,EAAE,OAAO,EAFhC,MAAM,EAE0B,WAkB1C;AA0BD;;;;;GAKG;AACH,iBAAS,wBAAwB,CAAC,KAAK,EAH5B,aAAa,EAGe,EAAE,OAAO,EAFrC,MAAM,EAE+B,QAe/C;AAmDD;;;;;;GAMG;AACH,iBAAS,WAAW,CAAC,IAAI,EAJd,aAIc,EAAE,QAAQ,EAHxB,MAGwB,EAAE,OAAO,EAFjC,gBAEiC,UAE3C;AAED;;;;;;;;GAQG;AACH,iBAAS,qBAAqB,CAAC,GAAG,EAPvB,MAOuB,EAAE,QAAQ,EANjC,MAMiC,EAAE,SAAS,EAL5C,MAAM,GAAG,SAKmC,EAAE,OAAO,EAJrD,gBAIqD,EAAE,MAAM,AAHrE,CACA,EADQ,MAGmE,EAAE,WAAW,AAFxF,CAA6B,EAArB,MAE2F,OAIrG;AAED;;;GAGG;AACH,iBAAS,WAAW,CAAC,IAAI,EAHd,MAGc,EAAE,KAAK,EAFrB,aAAa,EAEQ,WAO/B;AA0UD;;;;;;;;GAQG;AACH,iBAAS,aAAa,CAAC,IAAI,EARhB,aAQgB,EAAE,KAAK,EAPvB,aAAa,EAOU,EAAE,GAAG,EAN5B,MAM4B,EAAE,MAAM,EALpC,MAKoC,EAAE,OAAO,EAJ7C,gBAI6C,EAAE,UAAU,UAAA,EAAE,OAAO,AAF1E,CACF,EADU,MAAM,EAE4D;;;;;;;;cAgB5E;AAqED;;;;;;;;GAQG;AACH,iBAAS,SAAS,CAAC,UAAU,EARlB;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAAC,IAAI,EAAE,aAAa,CAAA;CAQ3C,EAAE,GAAG,EAPvB,MAOuB,EAAE,aAAa,EANtC,MAAM,GAAG,OAAO,GAAG,SAMmB,EAAE,OAAO,EAL/C,gBAK+C,EAAE,MAAM,EAJvD,OAIuD,EAAE,OAAO,EAHhE,MAAM,GAAG,SAGuD,EAAE,OAAO,EAFzE,MAAM,EAEmE,UA0HnF;AAED,OAAO,EAEL,gBAAgB,EAChB,kBAAkB,EAClB,cAAc,EACd,mBAAmB,EACnB,WAAW,EACX,WAAW,EACX,qBAAqB,EAGrB,aAAa,EACb,SAAS,EACT,qBAAqB,EACrB,wBAAwB,EACzB,CAAC"}
|
|
@@ -24,10 +24,14 @@ declare const RE_XML_ESCAPE_ATTR: RegExp;
|
|
|
24
24
|
declare const RE_ESCAPE_LT_RAW_TEXT: Record<string, RegExp>;
|
|
25
25
|
declare const RE_HTML_ENCODING: RegExp;
|
|
26
26
|
declare const RE_DOCTYPE: RegExp;
|
|
27
|
+
declare const RE_DOCTYPE_SEGMENT: RegExp;
|
|
27
28
|
declare const RE_ATTR_WS_CHECK: RegExp;
|
|
28
29
|
declare const RE_ATTR_WS_COLLAPSE: RegExp;
|
|
29
30
|
declare const RE_WS_CHAR: RegExp;
|
|
30
31
|
declare const RE_STYLE_ELEMENT: RegExp;
|
|
32
|
+
declare const RE_STYLE_TAG: RegExp;
|
|
33
|
+
declare const RE_ENDS_COLLAPSIBLE: RegExp;
|
|
34
|
+
declare const RE_ATTR_SELECTOR: RegExp;
|
|
31
35
|
declare const RE_EMPTY_ATTRIBUTE: RegExp;
|
|
32
36
|
declare const inlineElementsToKeepWhitespaceAround: Set<string>;
|
|
33
37
|
declare const inlineElementsToKeepWhitespaceWithin: Set<string>;
|
|
@@ -388,6 +392,7 @@ declare const topLevelElements: Set<string>;
|
|
|
388
392
|
declare const compactElements: Set<string>;
|
|
389
393
|
declare const looseElements: Set<string>;
|
|
390
394
|
declare const trailingElements: Set<string>;
|
|
395
|
+
declare const specialOptionalEndTags: Set<string>;
|
|
391
396
|
declare const htmlElements: Set<string>;
|
|
392
397
|
declare const quirksPublicIds: Set<string>;
|
|
393
398
|
declare const quirksSystemIds: Set<string>;
|
|
@@ -417,5 +422,5 @@ declare const svgoPluginsInline: {
|
|
|
417
422
|
};
|
|
418
423
|
}[];
|
|
419
424
|
declare const namesForeignMixedCase: Map<string, string>;
|
|
420
|
-
export { RE_WS_START, RE_WS_END, RE_WS_ONLY, RE_WS_NBSP_END, RE_ALL_WS_NBSP, RE_NBSP_LEADING_GROUP, RE_NBSP_LEAD_GROUP, RE_NBSP_TRAILING_GROUP, RE_NBSP_TRAILING_STRIP, RE_EVENT_ATTR_DEFAULT, RE_CAN_REMOVE_ATTR_QUOTES, RE_TRAILING_SEMICOLON, RE_AMP_REFERENCE_ATTR, RE_CR, RE_LINE_BREAK_CR, RE_LEGACY_ENTITIES, RE_ESCAPE_LT, RE_BASE_ELEMENT, RE_ESCAPE_LT_RAW_TEXT, RE_XML_ESCAPE_TEXT, RE_XML_ESCAPE_ATTR, RE_HTML_ENCODING, RE_DOCTYPE, RE_ATTR_WS_CHECK, RE_ATTR_WS_COLLAPSE, RE_WS_CHAR, RE_STYLE_ELEMENT, RE_EMPTY_ATTRIBUTE, formattingElements, inlineElementsToKeepWhitespaceAround, inlineElementsToKeepWhitespaceWithin, inlineElementsToKeepWhitespaceBetween, inlineElementsToKeepWhitespaceBetweenEnd, inlineElementsTransparent, inlineElementsTransparentAfter, inlineElementsToKeepWhitespace, processingInstructionTag, formControlElementsEither, toEndTags, generalDefaults, tagDefaults, metaHttpEquivNoEffect, metaNamesNoEffect, targetSelfElements, integrationPointsForeign, tagDefaultsSVG, svgElementsInheritingByReference, namespaceHTML, namespaceSVG, namespaceMathML, namespaceXLink, executableScriptsMimetypes, keepScriptsMimetypes, jsonScriptTypes, isSimpleBoolean, isBooleanValue, collapsibleValues, srcsetElements, MISSING_DEPENDENCY, namesForeignMixedCase, svgoPluginsInline, optionalStartTags, optionalEndTags, headerElements, descriptionElements, pBlockElements, pClosingParents, rubyEndTagOmission, rubyRtcEndTagOmission, optionElements, tableContentElements, tableSectionElements, cellElements, topLevelElements, compactElements, looseElements, trailingElements, htmlElements, quirksPublicIds, quirksSystemIds, quirksPublicIdPrefixes, quirksPublicIdPrefixesNoSystemId, specialContentElements, genericRawTextElements, endlessRawTextElements, escapableRawTextElements, rawTextElements };
|
|
425
|
+
export { RE_WS_START, RE_WS_END, RE_WS_ONLY, RE_WS_NBSP_END, RE_ALL_WS_NBSP, RE_NBSP_LEADING_GROUP, RE_NBSP_LEAD_GROUP, RE_NBSP_TRAILING_GROUP, RE_NBSP_TRAILING_STRIP, RE_EVENT_ATTR_DEFAULT, RE_CAN_REMOVE_ATTR_QUOTES, RE_TRAILING_SEMICOLON, RE_AMP_REFERENCE_ATTR, RE_CR, RE_LINE_BREAK_CR, RE_LEGACY_ENTITIES, RE_ESCAPE_LT, RE_ATTR_SELECTOR, RE_ENDS_COLLAPSIBLE, RE_BASE_ELEMENT, RE_ESCAPE_LT_RAW_TEXT, RE_XML_ESCAPE_TEXT, RE_XML_ESCAPE_ATTR, RE_HTML_ENCODING, RE_DOCTYPE, RE_DOCTYPE_SEGMENT, RE_ATTR_WS_CHECK, RE_ATTR_WS_COLLAPSE, RE_WS_CHAR, RE_STYLE_ELEMENT, RE_STYLE_TAG, RE_EMPTY_ATTRIBUTE, formattingElements, inlineElementsToKeepWhitespaceAround, inlineElementsToKeepWhitespaceWithin, inlineElementsToKeepWhitespaceBetween, inlineElementsToKeepWhitespaceBetweenEnd, inlineElementsTransparent, inlineElementsTransparentAfter, inlineElementsToKeepWhitespace, processingInstructionTag, formControlElementsEither, toEndTags, generalDefaults, tagDefaults, metaHttpEquivNoEffect, metaNamesNoEffect, targetSelfElements, integrationPointsForeign, tagDefaultsSVG, svgElementsInheritingByReference, namespaceHTML, namespaceSVG, namespaceMathML, namespaceXLink, executableScriptsMimetypes, keepScriptsMimetypes, jsonScriptTypes, isSimpleBoolean, isBooleanValue, collapsibleValues, srcsetElements, MISSING_DEPENDENCY, namesForeignMixedCase, svgoPluginsInline, optionalStartTags, optionalEndTags, headerElements, descriptionElements, pBlockElements, pClosingParents, rubyEndTagOmission, rubyRtcEndTagOmission, optionElements, tableContentElements, tableSectionElements, cellElements, topLevelElements, compactElements, looseElements, trailingElements, specialOptionalEndTags, htmlElements, quirksPublicIds, quirksSystemIds, quirksPublicIdPrefixes, quirksPublicIdPrefixesNoSystemId, specialContentElements, genericRawTextElements, endlessRawTextElements, escapableRawTextElements, rawTextElements };
|
|
421
426
|
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.js"],"names":[],"mappings":"AAAA;;GAEG;AAEH,QAAA,MAAM,WAAW,QAAkB,CAAC;AACpC,QAAA,MAAM,SAAS,QAAkB,CAAC;AAClC,QAAA,MAAM,UAAU,QAAmB,CAAC;AACpC,QAAA,MAAM,cAAc,QAAqB,CAAC;AAC1C,QAAA,MAAM,cAAc,QAAsB,CAAC;AAC3C,QAAA,MAAM,qBAAqB,QAAuB,CAAC;AACnD,QAAA,MAAM,kBAAkB,QAAqB,CAAC;AAC9C,QAAA,MAAM,sBAAsB,QAAqB,CAAC;AAClD,QAAA,MAAM,sBAAsB,QAAc,CAAC;AAC3C,QAAA,MAAM,qBAAqB,QAAkB,CAAC;AAC9C,QAAA,MAAM,yBAAyB,QAA0B,CAAC;AAC1D,QAAA,MAAM,qBAAqB,QAAO,CAAC;AAEnC,QAAA,MAAM,KAAK,QAAQ,CAAC;AACpB,QAAA,MAAM,gBAAgB,QAAW,CAAC;AAIlC,QAAA,MAAM,kBAAkB,QAAiG,CAAC;AAG1H,QAAA,MAAM,qBAAqB,QAA8G,CAAC;AAC1I,QAAA,MAAM,YAAY,QAAO,CAAC;AAG1B,QAAA,MAAM,eAAe,QAA4D,CAAC;AAGlF,QAAA,MAAM,kBAAkB,QAAgB,CAAC;AACzC,QAAA,MAAM,kBAAkB,QAAgB,CAAC;AAKzC,QAAA,MAAM,qBAAqB,EAAc,MAAM,CAAC,MAAM,EAAE,MAAM,CAG3D,CAAC;AAGJ,QAAA,MAAM,gBAAgB,QAA4C,CAAC;AAKnE,QAAA,MAAM,UAAU,QAA+K,CAAC;
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/lib/constants.js"],"names":[],"mappings":"AAAA;;GAEG;AAEH,QAAA,MAAM,WAAW,QAAkB,CAAC;AACpC,QAAA,MAAM,SAAS,QAAkB,CAAC;AAClC,QAAA,MAAM,UAAU,QAAmB,CAAC;AACpC,QAAA,MAAM,cAAc,QAAqB,CAAC;AAC1C,QAAA,MAAM,cAAc,QAAsB,CAAC;AAC3C,QAAA,MAAM,qBAAqB,QAAuB,CAAC;AACnD,QAAA,MAAM,kBAAkB,QAAqB,CAAC;AAC9C,QAAA,MAAM,sBAAsB,QAAqB,CAAC;AAClD,QAAA,MAAM,sBAAsB,QAAc,CAAC;AAC3C,QAAA,MAAM,qBAAqB,QAAkB,CAAC;AAC9C,QAAA,MAAM,yBAAyB,QAA0B,CAAC;AAC1D,QAAA,MAAM,qBAAqB,QAAO,CAAC;AAEnC,QAAA,MAAM,KAAK,QAAQ,CAAC;AACpB,QAAA,MAAM,gBAAgB,QAAW,CAAC;AAIlC,QAAA,MAAM,kBAAkB,QAAiG,CAAC;AAG1H,QAAA,MAAM,qBAAqB,QAA8G,CAAC;AAC1I,QAAA,MAAM,YAAY,QAAO,CAAC;AAG1B,QAAA,MAAM,eAAe,QAA4D,CAAC;AAGlF,QAAA,MAAM,kBAAkB,QAAgB,CAAC;AACzC,QAAA,MAAM,kBAAkB,QAAgB,CAAC;AAKzC,QAAA,MAAM,qBAAqB,EAAc,MAAM,CAAC,MAAM,EAAE,MAAM,CAG3D,CAAC;AAGJ,QAAA,MAAM,gBAAgB,QAA4C,CAAC;AAKnE,QAAA,MAAM,UAAU,QAA+K,CAAC;AAEhM,QAAA,MAAM,kBAAkB,QAA0C,CAAC;AACnE,QAAA,MAAM,gBAAgB,QAAgB,CAAC;AACvC,QAAA,MAAM,mBAAmB,QAAkB,CAAC;AAC5C,QAAA,MAAM,UAAU,QAAO,CAAC;AACxB,QAAA,MAAM,gBAAgB,QAAkB,CAAC;AACzC,QAAA,MAAM,YAAY,QAAgB,CAAC;AAEnC,QAAA,MAAM,mBAAmB,QAAuB,CAAC;AAEjD,QAAA,MAAM,gBAAgB,QAA8C,CAAC;AACrE,QAAA,MAAM,kBAAkB,QAE6B,CAAC;AAKtD,QAAA,MAAM,oCAAoC,aAAygB,CAAC;AAGpjB,QAAA,MAAM,oCAAoC,aAAyS,CAAC;AAIpV,QAAA,MAAM,qCAAqC,aAA6D,CAAC;AAGzG,QAAA,MAAM,yBAAyB,aAA2F,CAAC;AAK3H,QAAA,MAAM,wBAAwB,MAAM,CAAC;AAGrC,QAAA,MAAM,8BAA8B,aAAiF,CAAC;AAItH,QAAA,MAAM,kBAAkB,aAA6G,CAAC;AAMtI,sCAAsC;AACtC,QAAA,MAAM,SAAS,UADH,QAAQ,CAAC,MAAM,CAAC,gBAC6C,CAAC;AAI1E,QAAA,MAAM,yBAAyB,aAAuE,CAAC;AAEvG,QAAA,MAAM,wCAAwC,aAAmD,CAAC;AAGlG,QAAA,MAAM,8BAA8B,aAAuF,CAAC;AAG5H,QAAA,MAAM,eAAe;IACnB,WAAW;IACX,aAAa;IACb,OAAO;IACP,mBAAmB;CACpB,CAAC;AAGF,QAAA,MAAM,WAAW;IACf,IAAI;QAAI,KAAK;;IACb,MAAM;QAAI,IAAI;;IACd,GAAG;QAAI,IAAI;;IACX,QAAQ;QAAI,IAAI;;IAChB,IAAI;QACF,YAAY;QACZ,OAAO;QACP,MAAM;;IAER,IAAI;QAAI,GAAG;;IACX,MAAM;QAAI,SAAS;;IACnB,GAAG;QAAI,QAAQ;;IACf,KAAK;QACH,UAAU;QACV,IAAI;;IAEN,IAAI;QAAI,KAAK;;IACb,OAAO;QACL,QAAQ;QACR,SAAS;;IAEX,IAAI;QAAI,KAAK;;IACb,KAAK;QACH,GAAG;QACH,GAAG;;IAGL,EAAE;QACA,KAAK;QACL,IAAI;;IAEN,QAAQ;QAAI,GAAG;;IACf,MAAM;QAAI,KAAK;;IACf,KAAK;QAAI,KAAK;;IACd,EAAE;QACA,OAAO;QACP,OAAO;;IAET,QAAQ;QACN,IAAI;QACJ,IAAI;QACJ,IAAI;;IAEN,EAAE;QACA,OAAO;QACP,OAAO;QACP,KAAK;;IAEP,KAAK;QAAI,IAAI;;CACd,CAAC;AAKF,QAAA,MAAM,wBAAwB;IAC5B,GAAG;IACH,IAAI;CACL,CAAC;AAGF,QAAA,MAAM,qBAAqB,aAAmN,CAAC;AAC/O,QAAA,MAAM,iBAAiB,aAA6F,CAAC;AAGrH,QAAA,MAAM,kBAAkB,aAAiC,CAAC;AAM1D,QAAA,MAAM,cAAc;IAClB,aAAa;QAAI,MAAM;;IACvB,gBAAgB;QAAI,IAAI;;IACxB,MAAM;QAAI,EAAE;QAAO,EAAE;;IACrB,QAAQ;QAAI,aAAa;;IACzB,OAAO;QAAI,EAAE;QAAO,EAAE;;IACtB,OAAO;QAAI,IAAI;;IACf,aAAa;QAAI,IAAI;;IACrB,WAAW;QAAI,EAAE;QAAO,EAAE;QAAO,EAAE;QAAO,EAAE;QAAO,QAAQ;;IAC3D,gBAAgB;QAAI,IAAI;QAAO,QAAQ;QAAe,KAAK;QAAO,aAAa;;IAC/E,iBAAiB;QAAI,eAAe;QAAO,YAAY;;IACvD,iBAAiB;QAAI,KAAK;QAAO,gBAAgB;QAAO,gBAAgB;;IACxE,cAAc;QAAI,OAAO;QAAO,SAAS;;IACzC,YAAY;QAAI,EAAE;QAAO,EAAE;QAAO,YAAY;;IAC9C,OAAO;;;;;;;;IACP,OAAO;;;;;;;;IACP,OAAO;;;;;;;;IACP,OAAO;;;;;;;;IACP,cAAc;QAAI,YAAY;;IAC9B,OAAO;QAAI,mBAAmB;;IAC9B,YAAY;QAAI,QAAQ;QAAW,MAAM;;IACzC,QAAQ;QAAI,EAAE;QAAO,EAAE;;IACvB,YAAY;QAAI,CAAC;QAAO,CAAC;QAAO,CAAC;;IACjC,kBAAkB;QAAI,gBAAgB;QAAO,gBAAgB;QAAO,YAAY;;IAChF,WAAW;QAAI,SAAS;QAAO,SAAS;QAAO,SAAS;QAAO,gBAAgB;QAAO,CAAC;QAAO,CAAC;QAAO,CAAC;;IACvG,YAAY;QAAI,aAAa;QAAO,UAAU;QAAO,IAAI;QAAO,WAAW;QAAc,IAAI;;IAC7F,MAAM;QAAI,WAAW;QAAuB,MAAM;QAAU,cAAc;QAAoB,KAAK;QAAU,CAAC;QAAU,CAAC;;IACzH,aAAa;QAAI,CAAC;QAAO,CAAC;;IAC1B,KAAK;QAAI,mBAAmB;QAAmB,CAAC;QAAO,CAAC;;IACxD,IAAI;QAAI,EAAE;QAAO,EAAE;QAAO,EAAE;QAAO,EAAE;;IACrC,cAAc;QAAI,aAAa;QAAuB,YAAY;QAAS,EAAE;QAAe,EAAE;QAAU,EAAE;QAAe,EAAE;;IAC3H,MAAM;QAAI,YAAY;QAAO,WAAW;QAAiB,WAAW;QAAO,MAAM;QAAO,mBAAmB;QAAmB,IAAI;QAAO,IAAI;;IAC7I,IAAI;QAAI,MAAM;QAAU,gBAAgB;QAAoB,SAAS;QAAuB,KAAK;QAAU,CAAC;QAAU,CAAC;;IACvH,OAAO;QAAI,MAAM;QAAO,mBAAmB;QAAoB,YAAY;QAAuB,mBAAmB;QAAmB,KAAK;QAAO,CAAC;QAAO,CAAC;;IAC7J,cAAc;QAAI,EAAE;QAAS,EAAE;QAAS,EAAE;QAAe,aAAa;QAAuB,CAAC;QAAS,YAAY;;IACnH,IAAI;QAAI,CAAC;QAAO,CAAC;;IACjB,IAAI;QAAI,MAAM;;IACd,GAAG;QAAI,mBAAmB;QAAmB,OAAO;QAAS,CAAC;QAAO,CAAC;;IAEtE,MAAM;QAAI,mBAAmB;;IAE7B,IAAI;QAAI,YAAY;QAAa,CAAC;QAAO,CAAC;;IAC1C,QAAQ;QAAI,YAAY;QAAa,MAAM;QAAW,OAAO;QAAW,WAAW;;IACnF,KAAK;QAAI,YAAY;;IACrB,GAAG;QAAI,CAAC;QAAO,CAAC;;IAChB,IAAI;QAAI,mBAAmB;;CAC5B,CAAC;AAGF,QAAA,MAAM,gCAAgC,aAAqE,CAAC;AAG5G,QAAA,MAAM,aAAa,iCAAiC,CAAC;AACrD,QAAA,MAAM,YAAY,+BAA+B,CAAC;AAClD,QAAA,MAAM,eAAe,uCAAuC,CAAC;AAC7D,QAAA,MAAM,cAAc,iCAAiC,CAAC;AAMtD,QAAA,MAAM,0BAA0B,aAW9B,CAAC;AAEH,QAAA,MAAM,oBAAoB,aAExB,CAAC;AAIH,QAAA,MAAM,eAAe,aAAgjB,CAAC;AAEtkB,QAAA,MAAM,cAAc,aAA6B,CAAC;AAKlD,QAAA,MAAM,iBAAiB,0BAGrB,CAAC;AAEH,QAAA,MAAM,cAAc,aAA6B,CAAC;AAElD,QAAA,MAAM,eAAe,aAUnB,CAAC;AASH,QAAA,MAAM,iBAAiB,aAAyD,CAAC;AAEjF,QAAA,MAAM,eAAe,aAA8K,CAAC;AAEpM,QAAA,MAAM,cAAc,aAA2H,CAAC;AAEhJ,QAAA,MAAM,mBAAmB,aAAwB,CAAC;AAElD,QAAA,MAAM,cAAc,aAA4R,CAAC;AAIjT,QAAA,MAAM,eAAe,aAA6Z,CAAC;AAEnb,QAAA,MAAM,kBAAkB,aAAqC,CAAC;AAE9D,QAAA,MAAM,qBAAqB,aAAyB,CAAC;AAErD,QAAA,MAAM,cAAc,aAAkC,CAAC;AAEvD,QAAA,MAAM,oBAAoB,aAA8B,CAAC;AAEzD,QAAA,MAAM,oBAAoB,aAAuC,CAAC;AAElE,QAAA,MAAM,YAAY,aAAwB,CAAC;AAE3C,QAAA,MAAM,gBAAgB,aAAoC,CAAC;AAE3D,QAAA,MAAM,eAAe,aAA4B,CAAC;AAElD,QAAA,MAAM,aAAa,aAA2C,CAAC;AAE/D,QAAA,MAAM,gBAAgB,aAA2B,CAAC;AAGlD,QAAA,MAAM,sBAAsB,aAAmC,CAAC;AAEhE,QAAA,MAAM,YAAY,aAAgwC,CAAC;AAKnxC,QAAA,MAAM,eAAe,aAAkG,CAAC;AAExH,QAAA,MAAM,eAAe,aAA0E,CAAC;AAEhG,QAAA,MAAM,sBAAsB,UAAuqE,CAAC;AAIpsE,QAAA,MAAM,gCAAgC,UAA+E,CAAC;AAEtH,QAAA,MAAM,sBAAsB,aAA+B,CAAC;AAS5D,QAAA,MAAM,sBAAsB,aAA0C,CAAC;AAKvE,QAAA,MAAM,sBAAsB,aAAyB,CAAC;AAItD,QAAA,MAAM,wBAAwB,aAAiC,CAAC;AAIhE,QAAA,MAAM,eAAe,aAAkE,CAAC;AAIxF,QAAA,MAAM,kBAAkB,0BAA0B,CAAC;AAMnD,QAAA,MAAM,iBAAiB;;;QAGnB,SAAS;YACP,UAAU;YACV,YAAY;YACZ,YAAY;gBAAI,KAAK;;YACrB,gBAAgB;YAChB,iBAAiB;YACjB,yBAAyB;gBAAI,YAAY;;;;GAG7C,CAAC;AAMH,QAAA,MAAM,qBAAqB,qBAqBe,CAAC;AAE3C,OAAO,EAEL,WAAW,EACX,SAAS,EACT,UAAU,EACV,cAAc,EACd,cAAc,EACd,qBAAqB,EACrB,kBAAkB,EAClB,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,EACrB,yBAAyB,EACzB,qBAAqB,EACrB,qBAAqB,EACrB,KAAK,EACL,gBAAgB,EAChB,kBAAkB,EAClB,YAAY,EACZ,gBAAgB,EAChB,mBAAmB,EACnB,eAAe,EACf,qBAAqB,EACrB,kBAAkB,EAClB,kBAAkB,EAClB,gBAAgB,EAChB,UAAU,EACV,kBAAkB,EAClB,gBAAgB,EAChB,mBAAmB,EACnB,UAAU,EACV,gBAAgB,EAChB,YAAY,EACZ,kBAAkB,EAGlB,kBAAkB,EAClB,oCAAoC,EACpC,oCAAoC,EACpC,qCAAqC,EACrC,wCAAwC,EACxC,yBAAyB,EACzB,8BAA8B,EAC9B,8BAA8B,EAC9B,wBAAwB,EACxB,yBAAyB,EACzB,SAAS,EAGT,eAAe,EACf,WAAW,EACX,qBAAqB,EACrB,iBAAiB,EACjB,kBAAkB,EAClB,wBAAwB,EACxB,cAAc,EACd,gCAAgC,EAChC,aAAa,EACb,YAAY,EACZ,eAAe,EACf,cAAc,EAGd,0BAA0B,EAC1B,oBAAoB,EACpB,eAAe,EAGf,eAAe,EACf,cAAc,EACd,iBAAiB,EAGjB,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,iBAAiB,EAGjB,iBAAiB,EACjB,eAAe,EACf,cAAc,EACd,mBAAmB,EACnB,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,qBAAqB,EACrB,cAAc,EACd,oBAAoB,EACpB,oBAAoB,EACpB,YAAY,EACZ,gBAAgB,EAChB,eAAe,EACf,aAAa,EACb,gBAAgB,EAChB,sBAAsB,EACtB,YAAY,EAGZ,eAAe,EACf,eAAe,EACf,sBAAsB,EACtB,gCAAgC,EAGhC,sBAAsB,EACtB,sBAAsB,EACtB,sBAAsB,EACtB,wBAAwB,EACxB,eAAe,EAChB,CAAC"}
|
|
@@ -23,8 +23,10 @@ declare function canRemovePrecedingTag(optionalEndTag: string, tag: string): boo
|
|
|
23
23
|
/**
|
|
24
24
|
* @param {string} tag
|
|
25
25
|
* @param {HTMLAttribute[]} attrs
|
|
26
|
+
* @param {ProcessedOptions} options
|
|
27
|
+
* @param {string} [tagOut] - As hooks get it
|
|
26
28
|
*/
|
|
27
|
-
declare function canRemoveElement(tag: string, attrs: HTMLAttribute[]): boolean;
|
|
29
|
+
declare function canRemoveElement(tag: string, attrs: HTMLAttribute[], options: ProcessedOptions, tagOut?: string): boolean;
|
|
28
30
|
/**
|
|
29
31
|
* @param {string[]} input - Array of element specifications from `removeEmptyElementsExcept` option
|
|
30
32
|
* @param {ProcessedOptions} options - Options object for parsing
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"elements.d.ts","sourceRoot":"","sources":["../../../src/lib/elements.js"],"names":[],"mappings":"AAAA;;GAEG;AAeC,OAAQ,KAAA,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAQ,KAAA,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AADpD,uDAAuD;AACvD,uDAAuD;AAEvD;;;GAGG;AACH,iBAAS,kBAAkB,CAAC,gBAAgB,EAHjC,MAGiC,EAAE,GAAG,EAFtC,MAEsC,WAahD;AAED;;;GAGG;AACH,iBAAS,mBAAmB,CAAC,cAAc,EAHhC,MAGgC,EAAE,GAAG,EAFrC,MAEqC,WAQ/C;AAED;;;GAGG;AACH,iBAAS,qBAAqB,CAAC,cAAc,EAHlC,MAGkC,EAAE,GAAG,EAFvC,MAEuC,WAmCjD;AAED
|
|
1
|
+
{"version":3,"file":"elements.d.ts","sourceRoot":"","sources":["../../../src/lib/elements.js"],"names":[],"mappings":"AAAA;;GAEG;AAeC,OAAQ,KAAA,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAA;AAChD,OAAQ,KAAA,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAA;AADpD,uDAAuD;AACvD,uDAAuD;AAEvD;;;GAGG;AACH,iBAAS,kBAAkB,CAAC,gBAAgB,EAHjC,MAGiC,EAAE,GAAG,EAFtC,MAEsC,WAahD;AAED;;;GAGG;AACH,iBAAS,mBAAmB,CAAC,cAAc,EAHhC,MAGgC,EAAE,GAAG,EAFrC,MAEqC,WAQ/C;AAED;;;GAGG;AACH,iBAAS,qBAAqB,CAAC,cAAc,EAHlC,MAGkC,EAAE,GAAG,EAFvC,MAEuC,WAmCjD;AAED;;;;;GAKG;AACH,iBAAS,gBAAgB,CAAC,GAAG,EALlB,MAKkB,EAAE,KAAK,EAJzB,aAAa,EAIY,EAAE,OAAO,EAHlC,gBAGkC,EAAE,MAAM,AAFlD,CACF,EADU,MAEgD,WAiE1D;AAiDD;;;;GAIG;AACH,iBAAS,8BAA8B,CAAC,KAAK,EAJlC,MAAM,EAI4B,EAAE,OAAO,EAH3C,gBAG2C,GAFzC,KAAK,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,qCAAkC,IAAI,CAAA;CAAC,CAAC,CAc/E;AAED;;;;;GAKG;AACH,iBAAS,0BAA0B,CAAC,GAAG,EAL5B,MAK4B,EAAE,KAAK,EAJnC,aAAa,EAIsB,EAAE,YAAY,EAHjD,KAAK,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,qCAAkC,IAAI,CAAA;CAAC,CAGjB,GAF/C,OAAO,CA8BnB;AAED,OAAO,EAEL,kBAAkB,EAClB,mBAAmB,EACnB,qBAAqB,EAGrB,gBAAgB,EAChB,8BAA8B,EAC9B,0BAA0B,EAC3B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fragments.d.ts","sourceRoot":"","sources":["../../../src/lib/fragments.js"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;
|
|
1
|
+
{"version":3,"file":"fragments.d.ts","sourceRoot":"","sources":["../../../src/lib/fragments.js"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AA4BA,YAA4F,iBAAiB,GAAnG;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;CAAC,CAI1F;AAAA,YAAoE,eAAe,GAAzE;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAC,CAGpE;AAmCD;;;;;GAKG;AACH,iBAAS,mBAAmB,CAAC,OAAO,EAJzB,MAIyB,GAHvB,iBAAiB,GAAG,IAAI,CAwBpC;AAkDD;;;;GAIG;AACH,iBAAS,UAAU,CAAC,OAAO,EAHhB,MAGgB,GAFd,iBAAiB,GAAG,eAAe,CAgB/C;AAED;;;;;;;GAOG;AACH,iBAAS,sBAAsB,CAAC,KAAK,EAN1B,MAM0B,EAAE,SAAS,EALrC,CAAC,iBAAiB,GAAG,eAAe,CAAC,EAKA,EAAE,QAAQ,EAH/C,CAAC,KAAK,EAAE,MAAM,KAAK,MAG4B,GAF7C,MAAM,CA2KlB;AA2OD;;;;;;;;;;GAUG;AACH,iBAAS,kBAAkB,CAAC,MAAM,EANvB,MAMuB,EAAE,MAAM,EAL/B,OAK+B,EAAE,WAAW,EAJ5C,MAI4C,EAAE,IAAI,AAH1D,CACA,EADQ,OAG0D,GAFxD,OAAO,CAenB;AAED,OAAO,EACL,mBAAmB,EACnB,UAAU,EACV,sBAAsB,EACtB,kBAAkB,EACnB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../src/lib/options.js"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,GAAG,EAA2K,MAAM,YAAY,CAAC;AAQtM,OAAQ,KAAA,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAOrE,YAAkH,UAAU,GAAlH;IAAC,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAAC,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CAAC,CAAY;AAO5H,YAA6C,SAAS,GAA5C;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAC,CAAW;AAUtD,YAwBG,gBAAgB,GAxBT,IAAI,CAAC,eAAe,EAAE,QAAQ,GAAG,uBAAuB,GAAG,mBAAmB,GAAG,sBAAsB,GAAG,KAAK,GAAG,WAAW,GAAG,UAAU,GAAG,YAAY,GAAG,WAAW,GAAG,iBAAiB,CAAC,GAAG;IACvM,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC/B,GAAG,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,OAAO,CAAC;IAC/B,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,qBAAqB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,KAAK,OAAO,CAAC;IAC7G,iBAAiB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,KAAK,OAAO,CAAC;IACzG,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3F,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3F,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACvD,SAAS,EAAE,CAAC,CAAC,UAAU,EAAE,MAAM,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC;IACrE,YAAY,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,KAAK,OAAO,CAAC,GAAG,IAAI,CAAC;IAC5E,WAAW,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,GAAG,IAAI,CAAC;IAClE,YAAY,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,IAAI,CAAC;IACjD,eAAe,EAAE;QAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAC,GAAG,IAAI,CAAC;IAC7E,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,aAAa,CAAC,EAAE;QAAC,SAAS,EAAE,OAAO,CAAA;KAAC,CAAC;IACrC,SAAS,CAAC,EAAE;QAAC,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"options.d.ts","sourceRoot":"","sources":["../../../src/lib/options.js"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,GAAG,EAA2K,MAAM,YAAY,CAAC;AAQtM,OAAQ,KAAA,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAOrE,YAAkH,UAAU,GAAlH;IAAC,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAAC,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;CAAC,CAAY;AAO5H,YAA6C,SAAS,GAA5C;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;CAAC,CAAW;AAUtD,YAwBG,gBAAgB,GAxBT,IAAI,CAAC,eAAe,EAAE,QAAQ,GAAG,uBAAuB,GAAG,mBAAmB,GAAG,sBAAsB,GAAG,KAAK,GAAG,WAAW,GAAG,UAAU,GAAG,YAAY,GAAG,WAAW,GAAG,iBAAiB,CAAC,GAAG;IACvM,IAAI,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAC/B,GAAG,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,OAAO,CAAC;IAC/B,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,qBAAqB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,KAAK,OAAO,CAAC;IAC7G,iBAAiB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,KAAK,OAAO,CAAC;IACzG,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3F,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,OAAO,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC3F,UAAU,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACvD,SAAS,EAAE,CAAC,CAAC,UAAU,EAAE,MAAM,KAAK,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,CAAC;IACrE,YAAY,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,KAAK,OAAO,CAAC,GAAG,IAAI,CAAC;IAC5E,WAAW,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,OAAO,KAAK,OAAO,CAAC,GAAG,IAAI,CAAC;IAClE,YAAY,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,IAAI,CAAC;IACjD,eAAe,EAAE;QAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAC,GAAG,IAAI,CAAC;IAC7E,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,aAAa,CAAC,EAAE;QAAC,SAAS,EAAE,OAAO,CAAA;KAAC,CAAC;IACrC,SAAS,CAAC,EAAE;QAAC,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC;QAAC,aAAa,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAC,CAAC;IACxF,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IACtC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,gBAAgB,CAAC,EAAE,KAAK,GAAG,MAAM,CAAA;CAClC,CAAkB;AA+BtB,wCAAwC;AACxC,iBAAS,qBAAqB,CAAC,OAAO,EAD1B,gBAC0B,WAWrC;AA0BD,QAAA,MAAM,eAAe,aAA0H,CAAC;AAyB7I,YAAkB,gBAAgB,GAM3B,gBAAgB,EAAE,CAAC;AAZ7B;;;;;;;;;;;;;GAaG;AACH,QAAA,MAAM,kBAAkB;;;sBAhBV,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC;;;;;;;IAoChC,CAAC;AAqGF;;;;GAIG;AACH,QAAA,MAAM,cAAc,iBAJT,eAAe,kGACf;IAAC,eAAe,WAAW;IAAC,SAAS,WAAW;IAAC,MAAM,WAAW;IAAC,OAAO,WAAW;IAAC,cAAc,EAAE,GAAG,CAAC;IAAC,aAAa,EAAE,GAAG,CAAC;IAAC,cAAc,EAAE,GAAG,CAAA;CAAC,KACjJ,gBAmiBZ,CAAC;AAEF,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,qBAAqB,EACrB,cAAc,EACf,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unused-css.d.ts","sourceRoot":"","sources":["../../../src/lib/unused-css.js"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"unused-css.d.ts","sourceRoot":"","sources":["../../../src/lib/unused-css.js"],"names":[],"mappings":"AAAA;;GAEG;AA6MH;;;;;;;;;;;;;;GAcG;AACH,iBAAS,kBAAkB,CAAC,IAAI,EANrB,MAMqB,EAAE,cAAc,EALrC,OAKqC,EAAE,MAAM,AAJrD,CACA,EADQ,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAIoB,EAAE,QAAQ,AAH/D,CACA,EADQ,GAAG,CAAC,MAAM,CAG6C,GAFrD,GAAG,CAAC,MAAM,CAAC,CAoFvB;AAED;;;;;;GAMG;AACH,iBAAS,iBAAiB,CAAC,GAAG,EALnB,MAKmB,EAAE,IAAI,EAJzB,GAAG,CAAC,MAAM,CAIe,EAAE,QAAQ,EAHnC,KAAK,CAAC,MAAM,GAAG,MAAM,CAGc,GAFjC,MAAM,EAAE,CA4BpB;AA8CD;;;;;;GAMG;AACH,iBAAS,YAAY,CAAC,IAAI,EALf,MAKe,EAAE,cAAc,EAJ/B,OAI+B,EAAE,MAAM,AAH/C,CACA,EADQ,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAGc,GAFrC;IAAC,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAAC,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAAC,eAAe,EAAE,MAAM,CAAA;CAAC,CAsB1F;AAED;;;;;;;;;;;;GAYG;AACH,iBAAS,oBAAoB,CAAC,aAAa,EALhC,MAAM,EAK0B,EAAE,YAAY,EAJ9C,GAAG,CAAC,MAAM,CAIoC,EAAE,QAAQ,EAHxD,KAAK,CAAC,MAAM,GAAG,MAAM,CAGmC,GAFtD,CAAC,QAAQ,EAAE,KAAK,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,MAAM,CAAA;CAAC,CAAC,KAAK,EAAE,GAAG,SAAS,CA4B9E;AAID;;;;;;;;;;GAUG;AACH,iBAAS,yBAAyB,CAAC,MAAM,EAJ9B,OAAO,GAAG;IAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAC,GAAG,SAIrC,EAAE,IAAI,AAH5C,CACA,EADQ,CAAC,OAAO,EAAE,MAAM,KAAK,OAGe,GAFlC;IAAC,QAAQ,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAC,GAAG,IAAI,CAyCvE;AAED,OAAO,EACL,YAAY,EACZ,kBAAkB,EAClB,oBAAoB,EACpB,iBAAiB,EACjB,yBAAyB,EAC1B,CAAC"}
|
|
@@ -44,6 +44,11 @@ declare function uniqueId(value: string): string;
|
|
|
44
44
|
* @returns {string}
|
|
45
45
|
*/
|
|
46
46
|
declare function escapeXML(value: string, attribute?: boolean): string;
|
|
47
|
+
/**
|
|
48
|
+
* Script and style text as browsers read it, for code minifiers
|
|
49
|
+
* @param {string} text
|
|
50
|
+
*/
|
|
51
|
+
declare function replaceNUL(text: string): string;
|
|
47
52
|
/**
|
|
48
53
|
* Read text in foreign content as HTML does: CDATA sections hold text as written,
|
|
49
54
|
* while what surrounds them reads character references
|
|
@@ -106,6 +111,8 @@ export type Repeat = {
|
|
|
106
111
|
* to follow the pattern itself, or `null` where it is none
|
|
107
112
|
*/
|
|
108
113
|
declare function describeQuantifierRisk(pattern: RegExp | string): string | null;
|
|
114
|
+
/** @param {number} code */
|
|
115
|
+
declare function isWhitespaceCode(code: number): boolean;
|
|
109
116
|
/**
|
|
110
117
|
* Find the index of the `>` that closes an opening tag, correctly skipping
|
|
111
118
|
* over quoted attribute values (which may contain `>`).
|
|
@@ -128,5 +135,5 @@ declare function findTagEnd(html: string, pos: number, limit?: number): number;
|
|
|
128
135
|
declare function describeDependencyFailure(label: string, specifier: string, cause: unknown): string;
|
|
129
136
|
/** @param {string} doctype */
|
|
130
137
|
declare function isQuirksDoctype(doctype: string): boolean;
|
|
131
|
-
export { stableStringify, findTagEnd, LRU, MAX_CACHE_ENTRY_SIZE, hashContent, uniqueId, escapeXML, decodeForeignText, identity, isQuirksDoctype, isThenable, lowercase, paramCase, replaceAsync, parseRegExp, embedSource, lostFlag, describeQuantifierRisk, describeDependencyFailure };
|
|
138
|
+
export { stableStringify, findTagEnd, LRU, MAX_CACHE_ENTRY_SIZE, hashContent, uniqueId, escapeXML, replaceNUL, decodeForeignText, identity, isQuirksDoctype, isThenable, isWhitespaceCode, lowercase, paramCase, replaceAsync, parseRegExp, embedSource, lostFlag, describeQuantifierRisk, describeDependencyFailure };
|
|
132
139
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/utils.js"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/lib/utils.js"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"whitespace.d.ts","sourceRoot":"","sources":["../../../src/lib/whitespace.js"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"whitespace.d.ts","sourceRoot":"","sources":["../../../src/lib/whitespace.js"],"names":[],"mappings":"AAAA;;GAEG;AA6BH,0BAA0B;AAC1B,QAAA,MAAM,cAAc,QADR,MAAM,WAQjB,CAAC;AAcF,0BAA0B;AAC1B,iBAAS,eAAe,CAAC,GAAG,EADhB,MACgB,WAO3B;AAGD,0BAA0B;AAC1B,iBAAS,kBAAkB,CAAC,GAAG,EADnB,MACmB,WAE9B;AAUD,0BAA0B;AAC1B,iBAAS,qBAAqB,CAAC,GAAG,EADtB,MACsB,UAOjC;AAwCD;;;GAGG;AACH,iBAAS,qBAAqB,CAAC,GAAG,EAHvB,MAGuB,EAAE,OAAO,EAFhC;IAAC,cAAc,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAAC,kBAAkB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAE/C,UAW1C;AAID;;;;;;;GAOG;AACH,iBAAS,kBAAkB,CAAC,GAAG,EAPpB,MAOoB,EAAE,OAAO,EAN7B;IAAC,kBAAkB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAAC,oBAAoB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAA;CAMxD,EAAE,QAAQ,EALvC,OAKuC,EAAE,SAAS,EAJlD,OAIkD,EAAE,WAAW,AAHvE,CACA,EADQ,OAGuE,EAAE,aAAa,AAF9F,CACF,EADU,OAE8F,UAcxG;AAgHE,YAAkB,UAAU,GAC5B;;;;IAAoB,MAAM,EAAnB,GAAG,CAAC,MAAM,CAAC,CAClB;;;;IAAoB,SAAS,EAAtB,GAAG,CAAC,MAAM,CAAC,CAClB;;;;IAAoB,MAAM,EAAnB,GAAG,CAAC,MAAM,CAAC,CAClB;;;;IAAoB,SAAS,EAAtB,GAAG,CAAC,MAAM,CAAC,CAClB;;;;IAAoB,YAAY,EAAzB,GAAG,CAAC,MAAM,CAAC,CACpB;CAAA,CAAA;AAPD;;;;;;;GAOG;AAEH;;;;;;GAMG;AACH,iBAAS,eAAe,CAAC,MAAM,EAJpB,GAAG,CAAC,MAAM,CAIU,EAAE,MAAM,EAH5B,GAAG,CAAC,MAAM,CAGkB,GAF1B,UAAU,CAWtB;AAGD,QAAA,MAAM,iBAAiB,YAA8F,CAAC;AAkBtH;;;;;;;;;GASG;AACH,iBAAS,uBAAuB,CAAC,GAAG,EATzB,MASyB,EAAE,OAAO,EARlC,MAQkC,EAAE,OAAO,EAP3C,MAO2C,EAAE,SAAS,EANtD,KAAK,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAC,CAMkB,EAAE,SAAS,EALjE,KAAK,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAC,CAK6B,EAAE,OAAO,EAJ1E;IAAC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAAC,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAAC,2BAA2B,CAAC,EAAE,OAAO,CAAA;CAI1B,EAAE,UAAU,EAHtF,UAGsF,EAAE,cAAc,AAF9G,CACF,EADU,OAE6G,UAgEvH;AASD,0BAA0B;AAC1B,iBAAS,qBAAqB,CAAC,GAAG,EADtB,MACsB,WAEjC;AAED,0BAA0B;AAC1B,iBAAS,iBAAiB,CAAC,GAAG,EADlB,MACkB,WAE7B;AAED,OAAO,EACL,eAAe,EACf,iBAAiB,EACjB,kBAAkB,EAClB,cAAc,EACd,qBAAqB,EACrB,qBAAqB,EACrB,kBAAkB,EAClB,uBAAuB,EACvB,qBAAqB,EACrB,iBAAiB,EACjB,eAAe,EAChB,CAAC"}
|