diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 4b254f31..814af201 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -21,14 +21,14 @@ jobs:
- name: Lint JavaScript
run: npm run lint
- - name: Test TypeScript declaration files
- run: npm run lint:dts
+ - name: Type check
+ run: npm run lint:tsc
- name: Run server test
run: npm run test:server
- name: Run module tests
- run: npm run test:module
+ run: npm run test:esm
- name: Run server test
run: npm run test:server
diff --git a/.gitignore b/.gitignore
index 03a8182c..fe69713d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,5 +1,6 @@
# Build directory
-dist
+dist/
+lib/
# Logs
logs
@@ -13,16 +14,16 @@ pids
*.pid.lock
# Directory for instrumented libs generated by jscoverage/JSCover
-lib-cov
+lib-cov/
# Coverage directory used by tools like istanbul
-coverage
+coverage/
# nyc test coverage
-.nyc_output
+.nyc_output/
# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
-.grunt
+.grunt/
# node-waf configuration
.lock-wscript
@@ -31,11 +32,11 @@ coverage
build/Release
# Dependency directories
-node_modules
-jspm_packages
+node_modules/
+jspm_packages/
# Optional npm cache directory
-.npm
+.npm/
# Optional eslint cache
.eslintcache
diff --git a/.prettierrc.json b/.prettierrc.json
index 074301bf..544138be 100644
--- a/.prettierrc.json
+++ b/.prettierrc.json
@@ -1,5 +1,3 @@
{
- "arrowParens": "avoid",
- "trailingComma": "none",
"singleQuote": true
}
diff --git a/README.md b/README.md
index 661a8599..e53bae45 100644
--- a/README.md
+++ b/README.md
@@ -19,7 +19,8 @@ The parser converts an HTML string to a JavaScript object that describes the DOM
#### Example
```js
-const parse = require('html-dom-parser');
+import parse from 'html-dom-parser';
+
parse('
Hello, World!
');
```
@@ -83,16 +84,16 @@ yarn add html-dom-parser
## Usage
-Import the module with ES Modules:
+Import with ES Modules:
```js
import parse from 'html-dom-parser';
```
-Or require the module with CommonJS:
+Require with CommonJS:
```js
-const parse = require('html-dom-parser');
+const parse = require('html-dom-parser').default;
```
Parse empty string:
@@ -179,24 +180,24 @@ Because the server parser is a wrapper of [htmlparser2](https://github.com/fb55/
* should be combined into a single object like so:
*/
const options = {
- /**
- * Options for the domhandler class.
- * https://github.com/fb55/domhandler/blob/master/src/index.ts#L16
- */
- withStartIndices: false,
- withEndIndices: false,
- xmlMode: false,
- /**
- * Options for the htmlparser2 class.
- * https://github.com/fb55/htmlparser2/blob/master/src/Parser.ts#L104
- */
- xmlMode: false, // Will overwrite what is used for the domhandler, otherwise inherited.
- decodeEntities: true,
- lowerCaseTags: true, // !xmlMode by default
- lowerCaseAttributeNames: true, // !xmlMode by default
- recognizeCDATA: false, // xmlMode by default
- recognizeSelfClosing: false, // xmlMode by default
- Tokenizer: Tokenizer
+ /**
+ * Options for the domhandler class.
+ * https://github.com/fb55/domhandler/blob/master/src/index.ts#L16
+ */
+ withStartIndices: false,
+ withEndIndices: false,
+ xmlMode: false,
+ /**
+ * Options for the htmlparser2 class.
+ * https://github.com/fb55/htmlparser2/blob/master/src/Parser.ts#L104
+ */
+ xmlMode: false, // Will overwrite what is used for the domhandler, otherwise inherited.
+ decodeEntities: true,
+ lowerCaseTags: true, // !xmlMode by default
+ lowerCaseAttributeNames: true, // !xmlMode by default
+ recognizeCDATA: false, // xmlMode by default
+ recognizeSelfClosing: false, // xmlMode by default
+ Tokenizer: Tokenizer,
};
```
@@ -204,35 +205,16 @@ If you are parsing HTML with SVG code you can set `lowerCaseTags` to `true` with
> **Note**: If you are parsing code client-side (in-browser), you can not control the parsing options. Client-side parsing automatically handles returning some HTML tags in camel-case, such as specific SVG elements, but returns all other tags lowercased according to the HTML standard.
-## Testing
-
-Run server and client tests:
-
-```sh
-npm test
-```
-
-Generate HTML coverage report for server tests:
-
-```sh
-npx nyc report --reporter=html
-```
-
-Lint files:
+## Migration
-```sh
-npm run lint
-npm run lint:fix
-```
+### v5
-Test TypeScript declaration file for style and correctness:
+Migrated to TypeScript. CommonJS imports require the `.default` key:
-```sh
-npm run lint:dts
+```js
+const parse = require('html-dom-parser').default;
```
-## Migration
-
### v4
Upgraded [htmlparser2](https://github.com/fb55/htmlparser2) to v9.
diff --git a/esm/client/html-to-dom.mjs b/esm/client/html-to-dom.mjs
new file mode 100644
index 00000000..4cfac7b0
--- /dev/null
+++ b/esm/client/html-to-dom.mjs
@@ -0,0 +1,3 @@
+import ClientParser from '../../lib/client/html-to-dom.js';
+
+export default ClientParser.default;
diff --git a/esm/index.mjs b/esm/index.mjs
new file mode 100644
index 00000000..6ded8530
--- /dev/null
+++ b/esm/index.mjs
@@ -0,0 +1,3 @@
+import HTMLDOMParser from '../lib/index.js';
+
+export default HTMLDOMParser.default;
diff --git a/esm/server/html-to-dom.mjs b/esm/server/html-to-dom.mjs
new file mode 100644
index 00000000..3e1bfc81
--- /dev/null
+++ b/esm/server/html-to-dom.mjs
@@ -0,0 +1,3 @@
+import ServerParser from '../../lib/server/html-to-dom.js';
+
+export default ServerParser.default;
diff --git a/index.d.ts b/index.d.ts
deleted file mode 100644
index f3a51e85..00000000
--- a/index.d.ts
+++ /dev/null
@@ -1,3 +0,0 @@
-// TypeScript Version: 5.2
-
-export { default } from './lib/server/html-to-dom';
diff --git a/index.mjs b/index.mjs
deleted file mode 100644
index fdb5257b..00000000
--- a/index.mjs
+++ /dev/null
@@ -1,3 +0,0 @@
-import HTMLDOMParser from './index.js';
-
-export default HTMLDOMParser;
diff --git a/karma.conf.js b/karma.conf.js
index 0f8730f3..99881f90 100644
--- a/karma.conf.js
+++ b/karma.conf.js
@@ -1,6 +1,7 @@
-// Karma configuration
-// https://karma-runner.github.io/5.2/config/configuration-file.html
-module.exports = config => {
+/**
+ * @see https://karma-runner.github.io/6.4/config/configuration-file.html
+ */
+module.exports = (config) => {
config.set({
// base path that will be used to resolve all patterns (eg. files, exclude)
basePath: '',
@@ -16,7 +17,7 @@ module.exports = config => {
'lib/server/utilities.js',
'test/cases/html.js',
'test/client/*.js',
- 'test/helpers/*.js'
+ 'test/helpers/*.js',
],
// list of files / patterns to exclude
@@ -27,7 +28,7 @@ module.exports = config => {
preprocessors: {
'dist/*.js': ['commonjs'],
'lib/**/*.js': ['commonjs'],
- 'test/**/*.js': ['commonjs']
+ 'test/**/*.js': ['commonjs'],
},
// test results reporter to use
@@ -74,14 +75,14 @@ module.exports = config => {
client: {
mocha: {
// change Karma's `debug.html` to the Mocha web reporter
- reporter: 'html'
- }
+ reporter: 'html',
+ },
},
// Mocha reporter options
// https://www.npmjs.com/package/karma-mocha-reporter
mochaReporter: {
- showDiff: true
- }
+ showDiff: true,
+ },
});
};
diff --git a/lib/client/constants.d.ts b/lib/client/constants.d.ts
index 2a52b60c..dd0aa62d 100644
--- a/lib/client/constants.d.ts
+++ b/lib/client/constants.d.ts
@@ -1,6 +1,8 @@
/**
- * SVG elements, unlike HTML elements, are case-sensitive.
+ * SVG elements are case-sensitive.
*
- * {@link https://developer.mozilla.org/docs/Web/SVG/Element#SVG_elements_A_to_Z}
+ * @see https://developer.mozilla.org/docs/Web/SVG/Element#svg_elements_a_to_z
*/
-export const CASE_SENSITIVE_TAG_NAMES: string[];
+export declare const CASE_SENSITIVE_TAG_NAMES: readonly ["animateMotion", "animateTransform", "clipPath", "feBlend", "feColorMatrix", "feComponentTransfer", "feComposite", "feConvolveMatrix", "feDiffuseLighting", "feDisplacementMap", "feDropShadow", "feFlood", "feFuncA", "feFuncB", "feFuncG", "feFuncR", "feGaussianBlur", "feImage", "feMerge", "feMergeNode", "feMorphology", "feOffset", "fePointLight", "feSpecularLighting", "feSpotLight", "feTile", "feTurbulence", "foreignObject", "linearGradient", "radialGradient", "textPath"];
+export declare const CASE_SENSITIVE_TAG_NAMES_MAP: Record;
+//# sourceMappingURL=constants.d.ts.map
\ No newline at end of file
diff --git a/lib/client/constants.js b/lib/client/constants.js
index ec07de4b..a2bf77ef 100644
--- a/lib/client/constants.js
+++ b/lib/client/constants.js
@@ -1,38 +1,46 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+exports.CASE_SENSITIVE_TAG_NAMES_MAP = exports.CASE_SENSITIVE_TAG_NAMES = void 0;
/**
* SVG elements are case-sensitive.
*
- * @see {@link https://developer.mozilla.org/docs/Web/SVG/Element#svg_elements_a_to_z}
+ * @see https://developer.mozilla.org/docs/Web/SVG/Element#svg_elements_a_to_z
*/
exports.CASE_SENSITIVE_TAG_NAMES = [
- 'animateMotion',
- 'animateTransform',
- 'clipPath',
- 'feBlend',
- 'feColorMatrix',
- 'feComponentTransfer',
- 'feComposite',
- 'feConvolveMatrix',
- 'feDiffuseLighting',
- 'feDisplacementMap',
- 'feDropShadow',
- 'feFlood',
- 'feFuncA',
- 'feFuncB',
- 'feFuncG',
- 'feFuncR',
- 'feGaussianBlur',
- 'feImage',
- 'feMerge',
- 'feMergeNode',
- 'feMorphology',
- 'feOffset',
- 'fePointLight',
- 'feSpecularLighting',
- 'feSpotLight',
- 'feTile',
- 'feTurbulence',
- 'foreignObject',
- 'linearGradient',
- 'radialGradient',
- 'textPath'
+ 'animateMotion',
+ 'animateTransform',
+ 'clipPath',
+ 'feBlend',
+ 'feColorMatrix',
+ 'feComponentTransfer',
+ 'feComposite',
+ 'feConvolveMatrix',
+ 'feDiffuseLighting',
+ 'feDisplacementMap',
+ 'feDropShadow',
+ 'feFlood',
+ 'feFuncA',
+ 'feFuncB',
+ 'feFuncG',
+ 'feFuncR',
+ 'feGaussianBlur',
+ 'feImage',
+ 'feMerge',
+ 'feMergeNode',
+ 'feMorphology',
+ 'feOffset',
+ 'fePointLight',
+ 'feSpecularLighting',
+ 'feSpotLight',
+ 'feTile',
+ 'feTurbulence',
+ 'foreignObject',
+ 'linearGradient',
+ 'radialGradient',
+ 'textPath',
];
+exports.CASE_SENSITIVE_TAG_NAMES_MAP = exports.CASE_SENSITIVE_TAG_NAMES.reduce(function (accumulator, tagName) {
+ accumulator[tagName.toLowerCase()] = tagName;
+ return accumulator;
+}, {});
+//# sourceMappingURL=constants.js.map
\ No newline at end of file
diff --git a/lib/client/domparser.d.ts b/lib/client/domparser.d.ts
index 6ca32fdc..c603c585 100644
--- a/lib/client/domparser.d.ts
+++ b/lib/client/domparser.d.ts
@@ -2,6 +2,7 @@
* Parses HTML string to DOM nodes.
*
* @param html - HTML markup.
- * @returns - NodeList.
+ * @returns - DOM nodes.
*/
export default function domparser(html: string): NodeList;
+//# sourceMappingURL=domparser.d.ts.map
\ No newline at end of file
diff --git a/lib/client/domparser.js b/lib/client/domparser.js
index 178b1dd3..ffc14afc 100644
--- a/lib/client/domparser.js
+++ b/lib/client/domparser.js
@@ -1,3 +1,5 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
// constants
var HTML = 'html';
var HEAD = 'head';
@@ -6,158 +8,128 @@ var FIRST_TAG_REGEX = /<([a-zA-Z]+[0-9]?)/; // e.g.,
// match-all-characters in case of newlines (DOTALL)
var HEAD_TAG_REGEX = //i;
var BODY_TAG_REGEX = //i;
-
// falls back to `parseFromString` if `createHTMLDocument` cannot be used
-var parseFromDocument = function () {
- throw new Error(
- 'This browser does not support `document.implementation.createHTMLDocument`'
- );
+// eslint-disable-next-line no-unused-vars
+var parseFromDocument = function (html, tagName) {
+ throw new Error('This browser does not support `document.implementation.createHTMLDocument`');
};
-
-var parseFromString = function () {
- throw new Error(
- 'This browser does not support `DOMParser.prototype.parseFromString`'
- );
+// eslint-disable-next-line no-unused-vars
+var parseFromString = function (html, tagName) {
+ throw new Error('This browser does not support `DOMParser.prototype.parseFromString`');
};
-
var DOMParser = typeof window === 'object' && window.DOMParser;
-
/**
* DOMParser (performance: slow).
*
* @see https://developer.mozilla.org/docs/Web/API/DOMParser#Parsing_an_SVG_or_HTML_document
*/
if (typeof DOMParser === 'function') {
- var domParser = new DOMParser();
- var mimeType = 'text/html';
-
- /**
- * Creates an HTML document using `DOMParser.parseFromString`.
- *
- * @param {string} html - The HTML string.
- * @param {string} [tagName] - The element to render the HTML (with 'body' as fallback).
- * @return {HTMLDocument}
- */
- parseFromString = function (html, tagName) {
- if (tagName) {
- html = '<' + tagName + '>' + html + '' + tagName + '>';
- }
-
- return domParser.parseFromString(html, mimeType);
- };
-
- parseFromDocument = parseFromString;
+ var domParser_1 = new DOMParser();
+ var mimeType_1 = 'text/html';
+ /**
+ * Creates an HTML document using `DOMParser.parseFromString`.
+ *
+ * @param html - The HTML string.
+ * @param tagName - The element to render the HTML (with 'body' as fallback).
+ * @returns - Document.
+ */
+ parseFromString = function (html, tagName) {
+ if (tagName) {
+ html = "<".concat(tagName, ">").concat(html, "").concat(tagName, ">");
+ }
+ return domParser_1.parseFromString(html, mimeType_1);
+ };
+ parseFromDocument = parseFromString;
}
-
/**
* DOMImplementation (performance: fair).
*
* @see https://developer.mozilla.org/docs/Web/API/DOMImplementation/createHTMLDocument
*/
if (typeof document === 'object' && document.implementation) {
- var doc = document.implementation.createHTMLDocument();
-
- /**
- * Use HTML document created by `document.implementation.createHTMLDocument`.
- *
- * @param {string} html - The HTML string.
- * @param {string} [tagName] - The element to render the HTML (with 'body' as fallback).
- * @return {HTMLDocument}
- */
- parseFromDocument = function (html, tagName) {
- if (tagName) {
- var element = doc.documentElement.querySelector(tagName);
- element.innerHTML = html;
- return doc;
- }
-
- doc.documentElement.innerHTML = html;
- return doc;
- };
+ var htmlDocument_1 = document.implementation.createHTMLDocument();
+ /**
+ * Use HTML document created by `document.implementation.createHTMLDocument`.
+ *
+ * @param html - The HTML string.
+ * @param tagName - The element to render the HTML (with 'body' as fallback).
+ * @returns - Document
+ */
+ parseFromDocument = function (html, tagName) {
+ if (tagName) {
+ var element = htmlDocument_1.documentElement.querySelector(tagName);
+ if (element) {
+ element.innerHTML = html;
+ }
+ return htmlDocument_1;
+ }
+ htmlDocument_1.documentElement.innerHTML = html;
+ return htmlDocument_1;
+ };
}
-
/**
* Template (performance: fast).
*
* @see https://developer.mozilla.org/docs/Web/HTML/Element/template
*/
-var template =
- typeof document === 'object' ? document.createElement('template') : {};
-
+var template = typeof document === 'object' && document.createElement('template');
+// eslint-disable-next-line no-unused-vars
var parseFromTemplate;
-
-if (template.content) {
- /**
- * Uses a template element (content fragment) to parse HTML.
- *
- * @param {string} html - The HTML string.
- * @return {NodeList}
- */
- parseFromTemplate = function (html) {
- template.innerHTML = html;
- return template.content.childNodes;
- };
+if (template && template.content) {
+ /**
+ * Uses a template element (content fragment) to parse HTML.
+ *
+ * @param html - HTML string.
+ * @returns - Nodes.
+ */
+ parseFromTemplate = function (html) {
+ template.innerHTML = html;
+ return template.content.childNodes;
+ };
}
-
/**
* Parses HTML string to DOM nodes.
*
- * @param {string} html - HTML markup.
- * @return {NodeList}
+ * @param html - HTML markup.
+ * @returns - DOM nodes.
*/
function domparser(html) {
- var firstTagName;
- var match = html.match(FIRST_TAG_REGEX);
-
- if (match && match[1]) {
- firstTagName = match[1].toLowerCase();
- }
-
- var doc;
- var element;
- var elements;
-
- switch (firstTagName) {
- case HTML:
- doc = parseFromString(html);
-
- // the created document may come with filler head/body elements,
- // so make sure to remove them if they don't actually exist
- if (!HEAD_TAG_REGEX.test(html)) {
- element = doc.querySelector(HEAD);
- if (element) {
- element.parentNode.removeChild(element);
+ var _a, _b;
+ var match = html.match(FIRST_TAG_REGEX);
+ var firstTagName = match && match[1] ? match[1].toLowerCase() : '';
+ switch (firstTagName) {
+ case HTML: {
+ var doc = parseFromString(html);
+ // the created document may come with filler head/body elements,
+ // so make sure to remove them if they don't actually exist
+ if (!HEAD_TAG_REGEX.test(html)) {
+ var element = doc.querySelector(HEAD);
+ (_a = element === null || element === void 0 ? void 0 : element.parentNode) === null || _a === void 0 ? void 0 : _a.removeChild(element);
+ }
+ if (!BODY_TAG_REGEX.test(html)) {
+ var element = doc.querySelector(BODY);
+ (_b = element === null || element === void 0 ? void 0 : element.parentNode) === null || _b === void 0 ? void 0 : _b.removeChild(element);
+ }
+ return doc.querySelectorAll(HTML);
+ }
+ case HEAD:
+ case BODY: {
+ var elements = parseFromDocument(html).querySelectorAll(firstTagName);
+ // if there's a sibling element, then return both elements
+ if (BODY_TAG_REGEX.test(html) && HEAD_TAG_REGEX.test(html)) {
+ return elements[0].parentNode.childNodes;
+ }
+ return elements;
}
- }
-
- if (!BODY_TAG_REGEX.test(html)) {
- element = doc.querySelector(BODY);
- if (element) {
- element.parentNode.removeChild(element);
+ // low-level tag or text
+ default: {
+ if (parseFromTemplate) {
+ return parseFromTemplate(html);
+ }
+ var element = parseFromDocument(html, BODY).querySelector(BODY);
+ return element.childNodes;
}
- }
-
- return doc.querySelectorAll(HTML);
-
- case HEAD:
- case BODY:
- doc = parseFromDocument(html);
- elements = doc.querySelectorAll(firstTagName);
-
- // if there's a sibling element, then return both elements
- if (BODY_TAG_REGEX.test(html) && HEAD_TAG_REGEX.test(html)) {
- return elements[0].parentNode.childNodes;
- }
- return elements;
-
- // low-level tag or text
- default:
- if (parseFromTemplate) {
- return parseFromTemplate(html);
- }
- element = parseFromDocument(html, BODY).querySelector(BODY);
- return element.childNodes;
- }
+ }
}
-
-module.exports = domparser;
+exports.default = domparser;
+//# sourceMappingURL=domparser.js.map
\ No newline at end of file
diff --git a/lib/client/html-to-dom.d.ts b/lib/client/html-to-dom.d.ts
index 416de783..8f094200 100644
--- a/lib/client/html-to-dom.d.ts
+++ b/lib/client/html-to-dom.d.ts
@@ -1,9 +1,8 @@
-import { DataNode, Element } from 'domhandler';
-
/**
* Parses HTML string to DOM nodes in browser.
*
* @param html - HTML markup.
* @returns - DOM elements.
*/
-export default function HTMLDOMParser(html: string): Array;
+export default function HTMLDOMParser(html: string): (import("domhandler").Element | import("domhandler").Text | import("domhandler").Comment | import("domhandler").ProcessingInstruction)[];
+//# sourceMappingURL=html-to-dom.d.ts.map
\ No newline at end of file
diff --git a/lib/client/html-to-dom.js b/lib/client/html-to-dom.js
index 7db803da..a44efede 100644
--- a/lib/client/html-to-dom.js
+++ b/lib/client/html-to-dom.js
@@ -1,34 +1,28 @@
-var domparser = require('./domparser');
-var utilities = require('./utilities');
-
-var formatDOM = utilities.formatDOM;
-
+"use strict";
+var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+var domparser_1 = __importDefault(require("./domparser"));
+var utilities_1 = require("./utilities");
var DIRECTIVE_REGEX = /<(![a-zA-Z\s]+)>/; // e.g.,
-
/**
* Parses HTML string to DOM nodes in browser.
*
- * @param {string} html - HTML markup.
- * @return {DomElement[]} - DOM elements.
+ * @param html - HTML markup.
+ * @returns - DOM elements.
*/
function HTMLDOMParser(html) {
- if (typeof html !== 'string') {
- throw new TypeError('First argument must be a string');
- }
-
- if (html === '') {
- return [];
- }
-
- // match directive
- var match = html.match(DIRECTIVE_REGEX);
- var directive;
-
- if (match && match[1]) {
- directive = match[1];
- }
-
- return formatDOM(domparser(html), null, directive);
+ if (typeof html !== 'string') {
+ throw new TypeError('First argument must be a string');
+ }
+ if (html === '') {
+ return [];
+ }
+ // match directive
+ var match = html.match(DIRECTIVE_REGEX);
+ var directive = match ? match[1] : undefined;
+ return (0, utilities_1.formatDOM)((0, domparser_1.default)(html), null, directive);
}
-
-module.exports = HTMLDOMParser;
+exports.default = HTMLDOMParser;
+//# sourceMappingURL=html-to-dom.js.map
\ No newline at end of file
diff --git a/lib/client/html-to-dom.mjs b/lib/client/html-to-dom.mjs
deleted file mode 100644
index ec39bb0a..00000000
--- a/lib/client/html-to-dom.mjs
+++ /dev/null
@@ -1,32 +0,0 @@
-import domparser from './domparser.js';
-import utilities from './utilities.js';
-
-var formatDOM = utilities.formatDOM;
-
-var DIRECTIVE_REGEX = /<(![a-zA-Z\s]+)>/; // e.g.,
-
-/**
- * Parses HTML string to DOM nodes in browser.
- *
- * @param {string} html - HTML markup.
- * @return {DomElement[]} - DOM elements.
- */
-export default function HTMLDOMParser(html) {
- if (typeof html !== 'string') {
- throw new TypeError('First argument must be a string');
- }
-
- if (html === '') {
- return [];
- }
-
- // match directive
- var match = html.match(DIRECTIVE_REGEX);
- var directive;
-
- if (match && match[1]) {
- directive = match[1];
- }
-
- return formatDOM(domparser(html), null, directive);
-}
diff --git a/lib/client/utilities.d.ts b/lib/client/utilities.d.ts
index ad996b74..a5ff3c41 100644
--- a/lib/client/utilities.d.ts
+++ b/lib/client/utilities.d.ts
@@ -1,25 +1,18 @@
import { Comment, Element, ProcessingInstruction, Text } from 'domhandler';
-
/**
* Formats DOM attributes to a hash map.
*
* @param attributes - List of attributes.
* @returns - Map of attribute name to value.
*/
-export function formatAttributes(
- attributes: NamedNodeMap
-): Record;
-
+export declare function formatAttributes(attributes: NamedNodeMap): Record;
/**
* Transforms DOM nodes to `domhandler` nodes.
*
- * @param nodes - DOM nodes.
- * @param parent - Parent node.
- * @param directive - Directive.
- * @return - Nodes.
+ * @param nodes - DOM nodes.
+ * @param parent - Parent node.
+ * @param directive - Directive.
+ * @returns - Nodes.
*/
-export function formatDOM(
- nodes: NodeList,
- parent?: Element | null,
- directive?: string
-): Array;
+export declare function formatDOM(nodes: NodeList, parent?: Element | null, directive?: string): (Comment | Element | ProcessingInstruction | Text)[];
+//# sourceMappingURL=utilities.d.ts.map
\ No newline at end of file
diff --git a/lib/client/utilities.js b/lib/client/utilities.js
index d96990f9..fc478729 100644
--- a/lib/client/utilities.js
+++ b/lib/client/utilities.js
@@ -1,136 +1,109 @@
-var domhandler = require('domhandler');
-var constants = require('./constants');
-
-var CASE_SENSITIVE_TAG_NAMES = constants.CASE_SENSITIVE_TAG_NAMES;
-
-var Comment = domhandler.Comment;
-var Element = domhandler.Element;
-var ProcessingInstruction = domhandler.ProcessingInstruction;
-var Text = domhandler.Text;
-
-var caseSensitiveTagNamesMap = {};
-var tagName;
-
-for (var i = 0, len = CASE_SENSITIVE_TAG_NAMES.length; i < len; i++) {
- tagName = CASE_SENSITIVE_TAG_NAMES[i];
- caseSensitiveTagNamesMap[tagName.toLowerCase()] = tagName;
-}
-
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+exports.formatDOM = exports.formatAttributes = void 0;
+var domhandler_1 = require("domhandler");
+var constants_1 = require("./constants");
/**
* Gets case-sensitive tag name.
*
- * @param {string} tagName - Tag name in lowercase.
- * @returns {string|undefined} - Case-sensitive tag name.
+ * @param tagName - Tag name in lowercase.
+ * @returns - Case-sensitive tag name.
*/
function getCaseSensitiveTagName(tagName) {
- return caseSensitiveTagNamesMap[tagName];
+ return constants_1.CASE_SENSITIVE_TAG_NAMES_MAP[tagName];
}
-
/**
* Formats DOM attributes to a hash map.
*
- * @param {NamedNodeMap} attributes - List of attributes.
- * @returns {object} - Map of attribute name to value.
+ * @param attributes - List of attributes.
+ * @returns - Map of attribute name to value.
*/
function formatAttributes(attributes) {
- var result = {};
- var attribute;
- // `NamedNodeMap` is array-like
- for (var i = 0, len = attributes.length; i < len; i++) {
- attribute = attributes[i];
- result[attribute.name] = attribute.value;
- }
- return result;
+ var map = {};
+ var index = 0;
+ var attributesLength = attributes.length;
+ // `NamedNodeMap` is array-like
+ for (; index < attributesLength; index++) {
+ var attribute = attributes[index];
+ map[attribute.name] = attribute.value;
+ }
+ return map;
}
-
+exports.formatAttributes = formatAttributes;
/**
* Corrects the tag name if it is case-sensitive (SVG).
* Otherwise, returns the lowercase tag name (HTML).
*
- * @param {string} tagName - Lowercase tag name.
- * @returns {string} - Formatted tag name.
+ * @param tagName - Lowercase tag name.
+ * @returns - Formatted tag name.
*/
function formatTagName(tagName) {
- tagName = tagName.toLowerCase();
- var caseSensitiveTagName = getCaseSensitiveTagName(tagName);
- if (caseSensitiveTagName) {
- return caseSensitiveTagName;
- }
- return tagName;
+ tagName = tagName.toLowerCase();
+ var caseSensitiveTagName = getCaseSensitiveTagName(tagName);
+ if (caseSensitiveTagName) {
+ return caseSensitiveTagName;
+ }
+ return tagName;
}
-
/**
* Transforms DOM nodes to `domhandler` nodes.
*
- * @param {NodeList} nodes - DOM nodes.
- * @param {Element|null} [parent=null] - Parent node.
- * @param {string} [directive] - Directive.
- * @returns {Array}
+ * @param nodes - DOM nodes.
+ * @param parent - Parent node.
+ * @param directive - Directive.
+ * @returns - Nodes.
*/
function formatDOM(nodes, parent, directive) {
- parent = parent || null;
- var result = [];
- var tagName;
-
- for (var index = 0, len = nodes.length; index < len; index++) {
- var node = nodes[index];
+ if (parent === void 0) { parent = null; }
+ var result = [];
var current;
-
- // set the node data given the type
- switch (node.nodeType) {
- case 1:
- tagName = formatTagName(node.nodeName);
- // script, style, or tag
- current = new Element(tagName, formatAttributes(node.attributes));
- current.children = formatDOM(
- // template children are on content
- tagName === 'template' ? node.content.childNodes : node.childNodes,
- current
- );
- break;
-
- case 3:
- current = new Text(node.nodeValue);
- break;
-
- case 8:
- current = new Comment(node.nodeValue);
- break;
-
- default:
- continue;
- }
-
- // set previous node next
- var prev = result[index - 1] || null;
- if (prev) {
- prev.next = current;
+ var index = 0;
+ var nodesLength = nodes.length;
+ for (; index < nodesLength; index++) {
+ var node = nodes[index];
+ // set the node data given the type
+ switch (node.nodeType) {
+ case 1: {
+ var tagName = formatTagName(node.nodeName);
+ // script, style, or tag
+ current = new domhandler_1.Element(tagName, formatAttributes(node.attributes));
+ current.children = formatDOM(
+ // template children are on content
+ tagName === 'template'
+ ? node.content.childNodes
+ : node.childNodes, current);
+ break;
+ }
+ case 3:
+ current = new domhandler_1.Text(node.nodeValue);
+ break;
+ case 8:
+ current = new domhandler_1.Comment(node.nodeValue);
+ break;
+ default:
+ continue;
+ }
+ // set previous node next
+ var prev = result[index - 1] || null;
+ if (prev) {
+ prev.next = current;
+ }
+ // set properties for current node
+ current.parent = parent;
+ current.prev = prev;
+ current.next = null;
+ result.push(current);
}
-
- // set properties for current node
- current.parent = parent;
- current.prev = prev;
- current.next = null;
-
- result.push(current);
- }
-
- if (directive) {
- current = new ProcessingInstruction(
- directive.substring(0, directive.indexOf(' ')).toLowerCase(),
- directive
- );
- current.next = result[0] || null;
- current.parent = parent;
- result.unshift(current);
-
- if (result[1]) {
- result[1].prev = result[0];
+ if (directive) {
+ current = new domhandler_1.ProcessingInstruction(directive.substring(0, directive.indexOf(' ')).toLowerCase(), directive);
+ current.next = result[0] || null;
+ current.parent = parent;
+ result.unshift(current);
+ if (result[1]) {
+ result[1].prev = result[0];
+ }
}
- }
-
- return result;
+ return result;
}
-
-exports.formatAttributes = formatAttributes;
exports.formatDOM = formatDOM;
+//# sourceMappingURL=utilities.js.map
\ No newline at end of file
diff --git a/lib/server/html-to-dom.d.ts b/lib/server/html-to-dom.d.ts
index 2c7a457d..ca4627ce 100644
--- a/lib/server/html-to-dom.d.ts
+++ b/lib/server/html-to-dom.d.ts
@@ -1,24 +1,15 @@
-import {
- Comment,
- DomHandlerOptions,
- Element,
- ProcessingInstruction,
- Text
-} from 'domhandler';
-
+import type { DomHandlerOptions } from 'domhandler';
/**
* Parses HTML string to DOM nodes in Node.js.
*
* This is the same method as `require('htmlparser2').parseDOM`
*
- * @see https://github.com/fb55/htmlparser2/blob/v9.0.0/src/index.ts#L34-L46
+ * @see https://github.com/fb55/htmlparser2/blob/v9.0.0/src/index.ts#L44-L46
* @see https://github.com/fb55/domhandler/tree/v5.0.3#readme
*
* @param html - HTML markup.
* @param options - Parser options.
* @returns - DOM nodes.
*/
-export default function HTMLDOMParser(
- html: string,
- options?: DomHandlerOptions
-): Array;
+export default function HTMLDOMParser(html: string, options?: DomHandlerOptions): (import("domhandler").Element | import("domhandler").Text | import("domhandler").Comment | import("domhandler").ProcessingInstruction)[];
+//# sourceMappingURL=html-to-dom.d.ts.map
\ No newline at end of file
diff --git a/lib/server/html-to-dom.js b/lib/server/html-to-dom.js
index bcc52756..a5558efb 100644
--- a/lib/server/html-to-dom.js
+++ b/lib/server/html-to-dom.js
@@ -1,30 +1,30 @@
-var Parser = require('htmlparser2').Parser;
-var DomHandler = require('domhandler').DomHandler;
-
-var unsetRootParent = require('./utilities').unsetRootParent;
-
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+var htmlparser2_1 = require("htmlparser2");
+var domhandler_1 = require("domhandler");
+var utilities_1 = require("./utilities");
/**
* Parses HTML string to DOM nodes in Node.js.
*
* This is the same method as `require('htmlparser2').parseDOM`
- * https://github.com/fb55/htmlparser2/blob/v6.0.0/src/index.ts#L29-L41
*
- * @param {string} html - HTML markup.
- * @param {DomHandlerOptions} [options] - Parser options (https://github.com/fb55/domhandler/tree/v4.0.0#readme).
- * @return {Array} - DOM nodes.
+ * @see https://github.com/fb55/htmlparser2/blob/v9.0.0/src/index.ts#L44-L46
+ * @see https://github.com/fb55/domhandler/tree/v5.0.3#readme
+ *
+ * @param html - HTML markup.
+ * @param options - Parser options.
+ * @returns - DOM nodes.
*/
function HTMLDOMParser(html, options) {
- if (typeof html !== 'string') {
- throw new TypeError('First argument must be a string.');
- }
-
- if (html === '') {
- return [];
- }
-
- var handler = new DomHandler(undefined, options);
- new Parser(handler, options).end(html);
- return unsetRootParent(handler.dom);
+ if (typeof html !== 'string') {
+ throw new TypeError('First argument must be a string.');
+ }
+ if (html === '') {
+ return [];
+ }
+ var handler = new domhandler_1.DomHandler(undefined, options);
+ new htmlparser2_1.Parser(handler, options).end(html);
+ return (0, utilities_1.unsetRootParent)(handler.dom);
}
-
-module.exports = HTMLDOMParser;
+exports.default = HTMLDOMParser;
+//# sourceMappingURL=html-to-dom.js.map
\ No newline at end of file
diff --git a/lib/server/utilities.d.ts b/lib/server/utilities.d.ts
index 357eaac9..5872f752 100644
--- a/lib/server/utilities.d.ts
+++ b/lib/server/utilities.d.ts
@@ -1,9 +1,11 @@
-type Nodes = (Comment | Element | ProcessingInstruction | Text)[];
-
+import type { ChildNode, Comment, Element, ProcessingInstruction, Text } from 'domhandler';
+type Node = Element | Text | Comment | ProcessingInstruction;
/**
* Sets root parent to null.
*
* @param nodes - Nodes.
* @returns - Nodes.
*/
-export function unsetRootParent(nodes: Nodes): Nodes;
+export declare function unsetRootParent(nodes: ChildNode[]): Node[];
+export {};
+//# sourceMappingURL=utilities.d.ts.map
\ No newline at end of file
diff --git a/lib/server/utilities.js b/lib/server/utilities.js
index cf8e6eac..725828e4 100644
--- a/lib/server/utilities.js
+++ b/lib/server/utilities.js
@@ -1,17 +1,20 @@
+"use strict";
+Object.defineProperty(exports, "__esModule", { value: true });
+exports.unsetRootParent = void 0;
/**
* Sets root parent to null.
*
- * @param {Array} nodes
- * @return {Array}
+ * @param nodes - Nodes.
+ * @returns - Nodes.
*/
function unsetRootParent(nodes) {
- for (var index = 0, len = nodes.length; index < len; index++) {
- var node = nodes[index];
- node.parent = null;
- }
- return nodes;
+ var index = 0;
+ var nodesLength = nodes.length;
+ for (; index < nodesLength; index++) {
+ var node = nodes[index];
+ node.parent = null;
+ }
+ return nodes;
}
-
-module.exports = {
- unsetRootParent: unsetRootParent
-};
+exports.unsetRootParent = unsetRootParent;
+//# sourceMappingURL=utilities.js.map
\ No newline at end of file
diff --git a/package-lock.json b/package-lock.json
index f2bda8c3..349a6c00 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -16,10 +16,11 @@
"devDependencies": {
"@commitlint/cli": "17.8.0",
"@commitlint/config-conventional": "17.8.0",
- "@definitelytyped/dtslint": "0.0.182",
+ "@rollup/plugin-alias": "5.0.1",
"@rollup/plugin-commonjs": "25.0.7",
"@rollup/plugin-node-resolve": "15.2.3",
"@rollup/plugin-terser": "0.4.4",
+ "@rollup/plugin-typescript": "11.1.5",
"@size-limit/preset-big-lib": "9.0.0",
"@types/estree": "1.0.2",
"@typescript-eslint/parser": "5.62.0",
@@ -711,466 +712,6 @@
"@jridgewell/sourcemap-codec": "^1.4.10"
}
},
- "node_modules/@definitelytyped/dts-critic": {
- "version": "0.0.178",
- "resolved": "https://registry.npmjs.org/@definitelytyped/dts-critic/-/dts-critic-0.0.178.tgz",
- "integrity": "sha512-1JiY6giD2qLYxDPSWPbZiICzmTX+cHBNMXf09SeY6CJX0kZPcAkX+Uhc64HSqlhutECRWy7SdQCp/NP3xVOt4Q==",
- "dev": true,
- "dependencies": {
- "@definitelytyped/header-parser": "^0.0.178",
- "command-exists": "^1.2.8",
- "rimraf": "^3.0.2",
- "semver": "^7.5.2",
- "tmp": "^0.2.1",
- "yargs": "^15.3.1"
- },
- "engines": {
- "node": ">=10.17.0"
- },
- "peerDependencies": {
- "typescript": "*"
- }
- },
- "node_modules/@definitelytyped/dts-critic/node_modules/cliui": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz",
- "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
- "dev": true,
- "dependencies": {
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.0",
- "wrap-ansi": "^6.2.0"
- }
- },
- "node_modules/@definitelytyped/dts-critic/node_modules/emoji-regex": {
- "version": "8.0.0",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
- "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
- "dev": true
- },
- "node_modules/@definitelytyped/dts-critic/node_modules/find-up": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
- "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
- "dev": true,
- "dependencies": {
- "locate-path": "^5.0.0",
- "path-exists": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@definitelytyped/dts-critic/node_modules/get-caller-file": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
- "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
- "dev": true,
- "engines": {
- "node": "6.* || 8.* || >= 10.*"
- }
- },
- "node_modules/@definitelytyped/dts-critic/node_modules/is-fullwidth-code-point": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
- "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@definitelytyped/dts-critic/node_modules/locate-path": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
- "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
- "dev": true,
- "dependencies": {
- "p-locate": "^4.1.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@definitelytyped/dts-critic/node_modules/p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "dev": true,
- "dependencies": {
- "p-try": "^2.0.0"
- },
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/@definitelytyped/dts-critic/node_modules/p-locate": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
- "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
- "dev": true,
- "dependencies": {
- "p-limit": "^2.2.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@definitelytyped/dts-critic/node_modules/string-width": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
- "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
- "dev": true,
- "dependencies": {
- "emoji-regex": "^8.0.0",
- "is-fullwidth-code-point": "^3.0.0",
- "strip-ansi": "^6.0.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@definitelytyped/dts-critic/node_modules/wrap-ansi": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
- "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
- "dev": true,
- "dependencies": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@definitelytyped/dts-critic/node_modules/y18n": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
- "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==",
- "dev": true
- },
- "node_modules/@definitelytyped/dts-critic/node_modules/yargs": {
- "version": "15.4.1",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz",
- "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==",
- "dev": true,
- "dependencies": {
- "cliui": "^6.0.0",
- "decamelize": "^1.2.0",
- "find-up": "^4.1.0",
- "get-caller-file": "^2.0.1",
- "require-directory": "^2.1.1",
- "require-main-filename": "^2.0.0",
- "set-blocking": "^2.0.0",
- "string-width": "^4.2.0",
- "which-module": "^2.0.0",
- "y18n": "^4.0.0",
- "yargs-parser": "^18.1.2"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@definitelytyped/dts-critic/node_modules/yargs-parser": {
- "version": "18.1.3",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz",
- "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
- "dev": true,
- "dependencies": {
- "camelcase": "^5.0.0",
- "decamelize": "^1.2.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/@definitelytyped/dtslint": {
- "version": "0.0.182",
- "resolved": "https://registry.npmjs.org/@definitelytyped/dtslint/-/dtslint-0.0.182.tgz",
- "integrity": "sha512-88t3yXrqXQbw+KmAY7D+PHJnC2BTzEZPxy7UvtksqrDL1RWLUxXKuG33/+0w36T3qDsdQTiqNBdLbAI+uzxsEA==",
- "dev": true,
- "dependencies": {
- "@definitelytyped/dts-critic": "0.0.178",
- "@definitelytyped/header-parser": "0.0.178",
- "@definitelytyped/typescript-versions": "0.0.178",
- "@definitelytyped/utils": "0.0.178",
- "@typescript-eslint/eslint-plugin": "^5.55.0",
- "@typescript-eslint/parser": "^5.55.0",
- "@typescript-eslint/types": "^5.56.0",
- "@typescript-eslint/typescript-estree": "^5.55.0",
- "@typescript-eslint/utils": "^5.55.0",
- "eslint": "^8.17.0",
- "fs-extra": "^6.0.1",
- "json-stable-stringify": "^1.0.1",
- "strip-json-comments": "^2.0.1",
- "tslint": "5.14.0",
- "yargs": "^15.1.0"
- },
- "bin": {
- "dtslint": "dist/index.js"
- },
- "engines": {
- "node": ">=10.0.0"
- },
- "peerDependencies": {
- "typescript": ">= 3.0.0-dev || >= 3.1.0-dev || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.7.0-dev || >= 3.8.0-dev || >= 3.9.0-dev || >= 4.0.0-dev || >=5.0.0-dev"
- }
- },
- "node_modules/@definitelytyped/dtslint/node_modules/cliui": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz",
- "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
- "dev": true,
- "dependencies": {
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.0",
- "wrap-ansi": "^6.2.0"
- }
- },
- "node_modules/@definitelytyped/dtslint/node_modules/emoji-regex": {
- "version": "8.0.0",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
- "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
- "dev": true
- },
- "node_modules/@definitelytyped/dtslint/node_modules/find-up": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
- "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
- "dev": true,
- "dependencies": {
- "locate-path": "^5.0.0",
- "path-exists": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@definitelytyped/dtslint/node_modules/fs-extra": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-6.0.1.tgz",
- "integrity": "sha512-GnyIkKhhzXZUWFCaJzvyDLEEgDkPfb4/TPvJCJVuS8MWZgoSsErf++QpiAlDnKFcqhRlm+tIOcencCjyJE6ZCA==",
- "dev": true,
- "dependencies": {
- "graceful-fs": "^4.1.2",
- "jsonfile": "^4.0.0",
- "universalify": "^0.1.0"
- }
- },
- "node_modules/@definitelytyped/dtslint/node_modules/get-caller-file": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
- "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
- "dev": true,
- "engines": {
- "node": "6.* || 8.* || >= 10.*"
- }
- },
- "node_modules/@definitelytyped/dtslint/node_modules/is-fullwidth-code-point": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
- "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@definitelytyped/dtslint/node_modules/jsonfile": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
- "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==",
- "dev": true,
- "optionalDependencies": {
- "graceful-fs": "^4.1.6"
- }
- },
- "node_modules/@definitelytyped/dtslint/node_modules/locate-path": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
- "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
- "dev": true,
- "dependencies": {
- "p-locate": "^4.1.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@definitelytyped/dtslint/node_modules/p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "dev": true,
- "dependencies": {
- "p-try": "^2.0.0"
- },
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/@definitelytyped/dtslint/node_modules/p-locate": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
- "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
- "dev": true,
- "dependencies": {
- "p-limit": "^2.2.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@definitelytyped/dtslint/node_modules/string-width": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
- "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
- "dev": true,
- "dependencies": {
- "emoji-regex": "^8.0.0",
- "is-fullwidth-code-point": "^3.0.0",
- "strip-ansi": "^6.0.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@definitelytyped/dtslint/node_modules/universalify": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
- "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
- "dev": true,
- "engines": {
- "node": ">= 4.0.0"
- }
- },
- "node_modules/@definitelytyped/dtslint/node_modules/wrap-ansi": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
- "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
- "dev": true,
- "dependencies": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@definitelytyped/dtslint/node_modules/y18n": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
- "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==",
- "dev": true
- },
- "node_modules/@definitelytyped/dtslint/node_modules/yargs": {
- "version": "15.4.1",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz",
- "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==",
- "dev": true,
- "dependencies": {
- "cliui": "^6.0.0",
- "decamelize": "^1.2.0",
- "find-up": "^4.1.0",
- "get-caller-file": "^2.0.1",
- "require-directory": "^2.1.1",
- "require-main-filename": "^2.0.0",
- "set-blocking": "^2.0.0",
- "string-width": "^4.2.0",
- "which-module": "^2.0.0",
- "y18n": "^4.0.0",
- "yargs-parser": "^18.1.2"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@definitelytyped/dtslint/node_modules/yargs-parser": {
- "version": "18.1.3",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz",
- "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
- "dev": true,
- "dependencies": {
- "camelcase": "^5.0.0",
- "decamelize": "^1.2.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/@definitelytyped/header-parser": {
- "version": "0.0.178",
- "resolved": "https://registry.npmjs.org/@definitelytyped/header-parser/-/header-parser-0.0.178.tgz",
- "integrity": "sha512-16FFuaWW2Hq+a0Abyt+9gvPAT0w/ezy4eph3RbtLSqxH3T/UHDla1jgnp1DMvfNeBWaIqHxcr+Vrr7BPquw7mw==",
- "dev": true,
- "dependencies": {
- "@definitelytyped/typescript-versions": "^0.0.178",
- "@types/parsimmon": "^1.10.1",
- "parsimmon": "^1.13.0"
- }
- },
- "node_modules/@definitelytyped/typescript-versions": {
- "version": "0.0.178",
- "resolved": "https://registry.npmjs.org/@definitelytyped/typescript-versions/-/typescript-versions-0.0.178.tgz",
- "integrity": "sha512-pPXy3z5gE4xnVgqIRApFcQ6M6kqtRK1gnqyGx/I0Yo1CH8RAsRvumCDB/KiZmQDpCHiy//E9dOIUFdquvC5t7g==",
- "dev": true
- },
- "node_modules/@definitelytyped/utils": {
- "version": "0.0.178",
- "resolved": "https://registry.npmjs.org/@definitelytyped/utils/-/utils-0.0.178.tgz",
- "integrity": "sha512-nYg3E51XpTodS0/5w5r1wM/DhPYhyqa9BP8ili4XgB5s9j4v4mDPX9Jwjns2q24derBvyhdUpzshKDh43aqwZw==",
- "dev": true,
- "dependencies": {
- "@definitelytyped/typescript-versions": "^0.0.178",
- "@qiwi/npm-registry-client": "^8.9.1",
- "@types/node": "^14.14.35",
- "charm": "^1.0.2",
- "fs-extra": "^8.1.0",
- "fstream": "^1.0.12",
- "tar": "^6.1.11",
- "tar-stream": "^2.1.4"
- }
- },
- "node_modules/@definitelytyped/utils/node_modules/@types/node": {
- "version": "14.18.48",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@definitelytyped/utils/node_modules/fs-extra": {
- "version": "8.1.0",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "graceful-fs": "^4.2.0",
- "jsonfile": "^4.0.0",
- "universalify": "^0.1.0"
- },
- "engines": {
- "node": ">=6 <7 || >=8"
- }
- },
- "node_modules/@definitelytyped/utils/node_modules/jsonfile": {
- "version": "4.0.0",
- "dev": true,
- "license": "MIT",
- "optionalDependencies": {
- "graceful-fs": "^4.1.6"
- }
- },
- "node_modules/@definitelytyped/utils/node_modules/universalify": {
- "version": "0.1.2",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 4.0.0"
- }
- },
"node_modules/@eslint-community/eslint-utils": {
"version": "4.4.0",
"dev": true,
@@ -1492,25 +1033,36 @@
"url": "https://opencollective.com/unts"
}
},
- "node_modules/@qiwi/npm-registry-client": {
- "version": "8.9.1",
+ "node_modules/@rollup/plugin-alias": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/@rollup/plugin-alias/-/plugin-alias-5.0.1.tgz",
+ "integrity": "sha512-JObvbWdOHoMy9W7SU0lvGhDtWq9PllP5mjpAy+TUslZG/WzOId9u80Hsqq1vCUn9pFJ0cxpdcnAv+QzU2zFH3Q==",
+ "dev": true,
+ "dependencies": {
+ "slash": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ },
+ "peerDependencies": {
+ "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0"
+ },
+ "peerDependenciesMeta": {
+ "rollup": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@rollup/plugin-alias/node_modules/slash": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz",
+ "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==",
"dev": true,
- "license": "ISC",
- "dependencies": {
- "concat-stream": "^2.0.0",
- "graceful-fs": "^4.2.4",
- "normalize-package-data": "~1.0.1 || ^2.0.0 || ^3.0.0",
- "npm-package-arg": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^8.0.0",
- "once": "^1.4.0",
- "request": "^2.88.2",
- "retry": "^0.12.0",
- "safe-buffer": "^5.2.1",
- "semver": "2 >=2.2.1 || 3.x || 4 || 5 || 7",
- "slide": "^1.1.6",
- "ssri": "^8.0.0"
+ "engines": {
+ "node": ">=12"
},
- "optionalDependencies": {
- "npmlog": "2 || ^3.1.0 || ^4.0.0"
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/@rollup/plugin-commonjs": {
@@ -1594,6 +1146,32 @@
"randombytes": "^2.1.0"
}
},
+ "node_modules/@rollup/plugin-typescript": {
+ "version": "11.1.5",
+ "resolved": "https://registry.npmjs.org/@rollup/plugin-typescript/-/plugin-typescript-11.1.5.tgz",
+ "integrity": "sha512-rnMHrGBB0IUEv69Q8/JGRD/n4/n6b3nfpufUu26axhUcboUzv/twfZU8fIBbTOphRAe0v8EyxzeDpKXqGHfyDA==",
+ "dev": true,
+ "dependencies": {
+ "@rollup/pluginutils": "^5.0.1",
+ "resolve": "^1.22.1"
+ },
+ "engines": {
+ "node": ">=14.0.0"
+ },
+ "peerDependencies": {
+ "rollup": "^2.14.0||^3.0.0||^4.0.0",
+ "tslib": "*",
+ "typescript": ">=3.7.0"
+ },
+ "peerDependenciesMeta": {
+ "rollup": {
+ "optional": true
+ },
+ "tslib": {
+ "optional": true
+ }
+ }
+ },
"node_modules/@rollup/pluginutils": {
"version": "5.0.5",
"resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.0.5.tgz",
@@ -1975,22 +1553,11 @@
"dev": true,
"license": "MIT"
},
- "node_modules/@types/parsimmon": {
- "version": "1.10.6",
- "dev": true,
- "license": "MIT"
- },
"node_modules/@types/resolve": {
"version": "1.20.2",
"dev": true,
"license": "MIT"
},
- "node_modules/@types/semver": {
- "version": "7.5.3",
- "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.3.tgz",
- "integrity": "sha512-OxepLK9EuNEIPxWNME+C6WwbRAOOI2o2BaQEGzz5Lu2e4Z5eDnEo+/aVEDMIXywoJitJ7xWd641wrGLZdtwRyw==",
- "dev": true
- },
"node_modules/@types/yauzl": {
"version": "2.10.0",
"resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz",
@@ -2001,61 +1568,6 @@
"@types/node": "*"
}
},
- "node_modules/@typescript-eslint/eslint-plugin": {
- "version": "5.62.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz",
- "integrity": "sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==",
- "dev": true,
- "dependencies": {
- "@eslint-community/regexpp": "^4.4.0",
- "@typescript-eslint/scope-manager": "5.62.0",
- "@typescript-eslint/type-utils": "5.62.0",
- "@typescript-eslint/utils": "5.62.0",
- "debug": "^4.3.4",
- "graphemer": "^1.4.0",
- "ignore": "^5.2.0",
- "natural-compare-lite": "^1.4.0",
- "semver": "^7.3.7",
- "tsutils": "^3.21.0"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- },
- "peerDependencies": {
- "@typescript-eslint/parser": "^5.0.0",
- "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
- }
- },
- "node_modules/@typescript-eslint/eslint-plugin/node_modules/tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true
- },
- "node_modules/@typescript-eslint/eslint-plugin/node_modules/tsutils": {
- "version": "3.21.0",
- "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz",
- "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==",
- "dev": true,
- "dependencies": {
- "tslib": "^1.8.1"
- },
- "engines": {
- "node": ">= 6"
- },
- "peerDependencies": {
- "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta"
- }
- },
"node_modules/@typescript-eslint/parser": {
"version": "5.62.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz",
@@ -2100,54 +1612,6 @@
"url": "https://opencollective.com/typescript-eslint"
}
},
- "node_modules/@typescript-eslint/type-utils": {
- "version": "5.62.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz",
- "integrity": "sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==",
- "dev": true,
- "dependencies": {
- "@typescript-eslint/typescript-estree": "5.62.0",
- "@typescript-eslint/utils": "5.62.0",
- "debug": "^4.3.4",
- "tsutils": "^3.21.0"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- },
- "peerDependencies": {
- "eslint": "*"
- },
- "peerDependenciesMeta": {
- "typescript": {
- "optional": true
- }
- }
- },
- "node_modules/@typescript-eslint/type-utils/node_modules/tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true
- },
- "node_modules/@typescript-eslint/type-utils/node_modules/tsutils": {
- "version": "3.21.0",
- "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz",
- "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==",
- "dev": true,
- "dependencies": {
- "tslib": "^1.8.1"
- },
- "engines": {
- "node": ">= 6"
- },
- "peerDependencies": {
- "typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta"
- }
- },
"node_modules/@typescript-eslint/types": {
"version": "5.62.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz",
@@ -2209,54 +1673,6 @@
"typescript": ">=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta"
}
},
- "node_modules/@typescript-eslint/utils": {
- "version": "5.62.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz",
- "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==",
- "dev": true,
- "dependencies": {
- "@eslint-community/eslint-utils": "^4.2.0",
- "@types/json-schema": "^7.0.9",
- "@types/semver": "^7.3.12",
- "@typescript-eslint/scope-manager": "5.62.0",
- "@typescript-eslint/types": "5.62.0",
- "@typescript-eslint/typescript-estree": "5.62.0",
- "eslint-scope": "^5.1.1",
- "semver": "^7.3.7"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/typescript-eslint"
- },
- "peerDependencies": {
- "eslint": "^6.0.0 || ^7.0.0 || ^8.0.0"
- }
- },
- "node_modules/@typescript-eslint/utils/node_modules/eslint-scope": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
- "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
- "dev": true,
- "dependencies": {
- "esrecurse": "^4.3.0",
- "estraverse": "^4.1.1"
- },
- "engines": {
- "node": ">=8.0.0"
- }
- },
- "node_modules/@typescript-eslint/utils/node_modules/estraverse": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
- "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
- "dev": true,
- "engines": {
- "node": ">=4.0"
- }
- },
"node_modules/@typescript-eslint/visitor-keys": {
"version": "5.62.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz",
@@ -2627,63 +2043,11 @@
"node": ">=8"
}
},
- "node_modules/aproba": {
- "version": "1.2.0",
- "dev": true,
- "license": "ISC",
- "optional": true
- },
"node_modules/archy": {
"version": "1.0.0",
"dev": true,
"license": "MIT"
},
- "node_modules/are-we-there-yet": {
- "version": "1.1.7",
- "dev": true,
- "license": "ISC",
- "optional": true,
- "dependencies": {
- "delegates": "^1.0.0",
- "readable-stream": "^2.0.6"
- }
- },
- "node_modules/are-we-there-yet/node_modules/isarray": {
- "version": "1.0.0",
- "dev": true,
- "license": "MIT",
- "optional": true
- },
- "node_modules/are-we-there-yet/node_modules/readable-stream": {
- "version": "2.3.8",
- "dev": true,
- "license": "MIT",
- "optional": true,
- "dependencies": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.3",
- "isarray": "~1.0.0",
- "process-nextick-args": "~2.0.0",
- "safe-buffer": "~5.1.1",
- "string_decoder": "~1.1.1",
- "util-deprecate": "~1.0.1"
- }
- },
- "node_modules/are-we-there-yet/node_modules/safe-buffer": {
- "version": "5.1.2",
- "dev": true,
- "license": "MIT",
- "optional": true
- },
- "node_modules/are-we-there-yet/node_modules/string_decoder": {
- "version": "1.1.1",
- "dev": true,
- "license": "MIT",
- "optional": true,
- "dependencies": {
- "safe-buffer": "~5.1.0"
- }
- },
"node_modules/arg": {
"version": "4.1.3",
"resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz",
@@ -2746,119 +2110,46 @@
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=0.8"
- }
- },
- "node_modules/assertion-error": {
- "version": "1.1.0",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "*"
- }
- },
- "node_modules/asynckit": {
- "version": "0.4.0",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/available-typed-arrays": {
- "version": "1.0.5",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/aws-sign2": {
- "version": "0.7.0",
- "dev": true,
- "license": "Apache-2.0",
- "engines": {
- "node": "*"
- }
- },
- "node_modules/aws4": {
- "version": "1.12.0",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/babel-code-frame": {
- "version": "6.26.0",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "chalk": "^1.1.3",
- "esutils": "^2.0.2",
- "js-tokens": "^3.0.2"
- }
- },
- "node_modules/babel-code-frame/node_modules/ansi-regex": {
- "version": "2.1.1",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/babel-code-frame/node_modules/ansi-styles": {
- "version": "2.2.1",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/babel-code-frame/node_modules/chalk": {
- "version": "1.1.3",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-styles": "^2.2.1",
- "escape-string-regexp": "^1.0.2",
- "has-ansi": "^2.0.0",
- "strip-ansi": "^3.0.0",
- "supports-color": "^2.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
+ "node": ">=0.8"
}
},
- "node_modules/babel-code-frame/node_modules/escape-string-regexp": {
- "version": "1.0.5",
+ "node_modules/assertion-error": {
+ "version": "1.1.0",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=0.8.0"
+ "node": "*"
}
},
- "node_modules/babel-code-frame/node_modules/js-tokens": {
- "version": "3.0.2",
+ "node_modules/asynckit": {
+ "version": "0.4.0",
"dev": true,
"license": "MIT"
},
- "node_modules/babel-code-frame/node_modules/strip-ansi": {
- "version": "3.0.1",
+ "node_modules/available-typed-arrays": {
+ "version": "1.0.5",
"dev": true,
"license": "MIT",
- "dependencies": {
- "ansi-regex": "^2.0.0"
- },
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/babel-code-frame/node_modules/supports-color": {
- "version": "2.0.0",
+ "node_modules/aws-sign2": {
+ "version": "0.7.0",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
"engines": {
- "node": ">=0.8.0"
+ "node": "*"
}
},
+ "node_modules/aws4": {
+ "version": "1.12.0",
+ "dev": true,
+ "license": "MIT"
+ },
"node_modules/balanced-match": {
"version": "1.0.2",
"dev": true,
@@ -3078,11 +2369,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/builtins": {
- "version": "1.0.3",
- "dev": true,
- "license": "MIT"
- },
"node_modules/bundle-name": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-3.0.0.tgz",
@@ -3238,14 +2524,6 @@
"url": "https://github.com/chalk/chalk?sponsor=1"
}
},
- "node_modules/charm": {
- "version": "1.0.2",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.1"
- }
- },
"node_modules/check-error": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz",
@@ -3295,14 +2573,6 @@
"node": ">= 6"
}
},
- "node_modules/chownr": {
- "version": "2.0.0",
- "dev": true,
- "license": "ISC",
- "engines": {
- "node": ">=10"
- }
- },
"node_modules/chrome-trace-event": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz",
@@ -3401,15 +2671,6 @@
"node": ">=8"
}
},
- "node_modules/code-point-at": {
- "version": "1.1.0",
- "dev": true,
- "license": "MIT",
- "optional": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/color-convert": {
"version": "2.0.1",
"dev": true,
@@ -3443,11 +2704,6 @@
"node": ">= 0.8"
}
},
- "node_modules/command-exists": {
- "version": "1.2.9",
- "dev": true,
- "license": "MIT"
- },
"node_modules/commander": {
"version": "9.5.0",
"resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz",
@@ -3476,20 +2732,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/concat-stream": {
- "version": "2.0.0",
- "dev": true,
- "engines": [
- "node >= 6.0"
- ],
- "license": "MIT",
- "dependencies": {
- "buffer-from": "^1.0.0",
- "inherits": "^2.0.3",
- "readable-stream": "^3.0.2",
- "typedarray": "^0.0.6"
- }
- },
"node_modules/connect": {
"version": "3.7.0",
"dev": true,
@@ -3517,12 +2759,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/console-control-strings": {
- "version": "1.1.0",
- "dev": true,
- "license": "ISC",
- "optional": true
- },
"node_modules/content-type": {
"version": "1.0.5",
"dev": true,
@@ -3981,12 +3217,6 @@
"node": ">=0.4.0"
}
},
- "node_modules/delegates": {
- "version": "1.0.0",
- "dev": true,
- "license": "MIT",
- "optional": true
- },
"node_modules/depd": {
"version": "2.0.0",
"dev": true,
@@ -5027,17 +4257,6 @@
"node": ">=14.14"
}
},
- "node_modules/fs-minipass": {
- "version": "2.1.0",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "minipass": "^3.0.0"
- },
- "engines": {
- "node": ">= 8"
- }
- },
"node_modules/fs.realpath": {
"version": "1.0.0",
"dev": true,
@@ -5055,50 +4274,6 @@
"node": "^8.16.0 || ^10.6.0 || >=11.0.0"
}
},
- "node_modules/fstream": {
- "version": "1.0.12",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "graceful-fs": "^4.1.2",
- "inherits": "~2.0.0",
- "mkdirp": ">=0.5 0",
- "rimraf": "2"
- },
- "engines": {
- "node": ">=0.6"
- }
- },
- "node_modules/fstream/node_modules/glob": {
- "version": "7.2.3",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.1.1",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- },
- "engines": {
- "node": "*"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/fstream/node_modules/rimraf": {
- "version": "2.7.1",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "glob": "^7.1.3"
- },
- "bin": {
- "rimraf": "bin.js"
- }
- },
"node_modules/function-bind": {
"version": "1.1.1",
"dev": true,
@@ -5129,69 +4304,6 @@
"url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/gauge": {
- "version": "2.7.4",
- "dev": true,
- "license": "ISC",
- "optional": true,
- "dependencies": {
- "aproba": "^1.0.3",
- "console-control-strings": "^1.0.0",
- "has-unicode": "^2.0.0",
- "object-assign": "^4.1.0",
- "signal-exit": "^3.0.0",
- "string-width": "^1.0.1",
- "strip-ansi": "^3.0.1",
- "wide-align": "^1.1.0"
- }
- },
- "node_modules/gauge/node_modules/ansi-regex": {
- "version": "2.1.1",
- "dev": true,
- "license": "MIT",
- "optional": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gauge/node_modules/is-fullwidth-code-point": {
- "version": "1.0.0",
- "dev": true,
- "license": "MIT",
- "optional": true,
- "dependencies": {
- "number-is-nan": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gauge/node_modules/string-width": {
- "version": "1.0.2",
- "dev": true,
- "license": "MIT",
- "optional": true,
- "dependencies": {
- "code-point-at": "^1.0.0",
- "is-fullwidth-code-point": "^1.0.0",
- "strip-ansi": "^3.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gauge/node_modules/strip-ansi": {
- "version": "3.0.1",
- "dev": true,
- "license": "MIT",
- "optional": true,
- "dependencies": {
- "ansi-regex": "^2.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/gensync": {
"version": "1.0.0-beta.2",
"dev": true,
@@ -5482,25 +4594,6 @@
"node": ">= 0.4.0"
}
},
- "node_modules/has-ansi": {
- "version": "2.0.0",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-regex": "^2.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/has-ansi/node_modules/ansi-regex": {
- "version": "2.1.1",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/has-bigints": {
"version": "1.0.2",
"dev": true,
@@ -5564,12 +4657,6 @@
"url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/has-unicode": {
- "version": "2.0.1",
- "dev": true,
- "license": "ISC",
- "optional": true
- },
"node_modules/hasha": {
"version": "5.2.2",
"dev": true,
@@ -6480,17 +5567,6 @@
"integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
"dev": true
},
- "node_modules/json-stable-stringify": {
- "version": "1.0.2",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "jsonify": "^0.0.1"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
"node_modules/json-stable-stringify-without-jsonify": {
"version": "1.0.1",
"dev": true,
@@ -6523,14 +5599,6 @@
"graceful-fs": "^4.1.6"
}
},
- "node_modules/jsonify": {
- "version": "0.0.1",
- "dev": true,
- "license": "Public Domain",
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
"node_modules/jsonparse": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz",
@@ -7634,29 +6702,6 @@
"node": ">= 6"
}
},
- "node_modules/minipass": {
- "version": "3.3.6",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/minizlib": {
- "version": "2.1.2",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "minipass": "^3.0.0",
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">= 8"
- }
- },
"node_modules/mkdirp": {
"version": "0.5.6",
"dev": true,
@@ -7946,12 +6991,6 @@
"dev": true,
"license": "MIT"
},
- "node_modules/natural-compare-lite": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz",
- "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==",
- "dev": true
- },
"node_modules/negotiator": {
"version": "0.6.3",
"dev": true,
@@ -8067,19 +7106,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/npm-package-arg": {
- "version": "8.1.5",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "hosted-git-info": "^4.0.1",
- "semver": "^7.3.4",
- "validate-npm-package-name": "^3.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
"node_modules/npm-run-all": {
"version": "4.1.5",
"dev": true,
@@ -8245,32 +7271,11 @@
"resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
"integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==",
"dev": true,
- "dependencies": {
- "path-key": "^3.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/npmlog": {
- "version": "4.1.2",
- "dev": true,
- "license": "ISC",
- "optional": true,
- "dependencies": {
- "are-we-there-yet": "~1.1.2",
- "console-control-strings": "~1.1.0",
- "gauge": "~2.7.3",
- "set-blocking": "~2.0.0"
- }
- },
- "node_modules/number-is-nan": {
- "version": "1.0.1",
- "dev": true,
- "license": "MIT",
- "optional": true,
+ "dependencies": {
+ "path-key": "^3.0.0"
+ },
"engines": {
- "node": ">=0.10.0"
+ "node": ">=8"
}
},
"node_modules/nwmatcher": {
@@ -8706,11 +7711,6 @@
"node": ">= 0.8"
}
},
- "node_modules/parsimmon": {
- "version": "1.18.1",
- "dev": true,
- "license": "MIT"
- },
"node_modules/path-exists": {
"version": "4.0.0",
"dev": true,
@@ -8915,12 +7915,6 @@
"node": ">=6.0.0"
}
},
- "node_modules/process-nextick-args": {
- "version": "2.0.1",
- "dev": true,
- "license": "MIT",
- "optional": true
- },
"node_modules/process-on-spawn": {
"version": "1.0.0",
"dev": true,
@@ -9439,14 +8433,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/retry": {
- "version": "0.12.0",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 4"
- }
- },
"node_modules/reusify": {
"version": "1.0.4",
"dev": true,
@@ -9810,14 +8796,6 @@
"url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
- "node_modules/slide": {
- "version": "1.1.6",
- "dev": true,
- "license": "ISC",
- "engines": {
- "node": "*"
- }
- },
"node_modules/smob": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/smob/-/smob-1.4.1.tgz",
@@ -9978,17 +8956,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/ssri": {
- "version": "8.0.1",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "minipass": "^3.1.1"
- },
- "engines": {
- "node": ">= 8"
- }
- },
"node_modules/statuses": {
"version": "1.5.0",
"dev": true,
@@ -10196,14 +9163,6 @@
"node": ">=8"
}
},
- "node_modules/strip-json-comments": {
- "version": "2.0.1",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/supports-color": {
"version": "7.2.0",
"dev": true,
@@ -10256,22 +9215,6 @@
"node": ">=6"
}
},
- "node_modules/tar": {
- "version": "6.1.15",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "chownr": "^2.0.0",
- "fs-minipass": "^2.0.0",
- "minipass": "^5.0.0",
- "minizlib": "^2.1.1",
- "mkdirp": "^1.0.3",
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
"node_modules/tar-fs": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz",
@@ -10305,25 +9248,6 @@
"node": ">=6"
}
},
- "node_modules/tar/node_modules/minipass": {
- "version": "5.0.0",
- "dev": true,
- "license": "ISC",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/tar/node_modules/mkdirp": {
- "version": "1.0.4",
- "dev": true,
- "license": "MIT",
- "bin": {
- "mkdirp": "bin/cmd.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
"node_modules/terser": {
"version": "5.17.6",
"dev": true,
@@ -10610,188 +9534,6 @@
"integrity": "sha512-7At1WUettjcSRHXCyYtTselblcHl9PJFFVKiCAy/bY97+BPZXSQ2wbq0P9s8tK2G7dFQfNnlJnPAiArVBVBsfA==",
"dev": true
},
- "node_modules/tslint": {
- "version": "5.14.0",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "babel-code-frame": "^6.22.0",
- "builtin-modules": "^1.1.1",
- "chalk": "^2.3.0",
- "commander": "^2.12.1",
- "diff": "^3.2.0",
- "glob": "^7.1.1",
- "js-yaml": "^3.7.0",
- "minimatch": "^3.0.4",
- "mkdirp": "^0.5.1",
- "resolve": "^1.3.2",
- "semver": "^5.3.0",
- "tslib": "^1.8.0",
- "tsutils": "^2.29.0"
- },
- "bin": {
- "tslint": "bin/tslint"
- },
- "engines": {
- "node": ">=4.8.0"
- },
- "peerDependencies": {
- "typescript": ">=2.1.0 || >=2.1.0-dev || >=2.2.0-dev || >=2.3.0-dev || >=2.4.0-dev || >=2.5.0-dev || >=2.6.0-dev || >=2.7.0-dev || >=2.8.0-dev || >=2.9.0-dev || >=3.0.0-dev || >= 3.1.0-dev || >= 3.2.0-dev"
- }
- },
- "node_modules/tslint/node_modules/ansi-styles": {
- "version": "3.2.1",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "color-convert": "^1.9.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/tslint/node_modules/argparse": {
- "version": "1.0.10",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "sprintf-js": "~1.0.2"
- }
- },
- "node_modules/tslint/node_modules/builtin-modules": {
- "version": "1.1.1",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/tslint/node_modules/chalk": {
- "version": "2.4.2",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-styles": "^3.2.1",
- "escape-string-regexp": "^1.0.5",
- "supports-color": "^5.3.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/tslint/node_modules/color-convert": {
- "version": "1.9.3",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "color-name": "1.1.3"
- }
- },
- "node_modules/tslint/node_modules/color-name": {
- "version": "1.1.3",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/tslint/node_modules/commander": {
- "version": "2.20.3",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/tslint/node_modules/diff": {
- "version": "3.5.0",
- "dev": true,
- "license": "BSD-3-Clause",
- "engines": {
- "node": ">=0.3.1"
- }
- },
- "node_modules/tslint/node_modules/escape-string-regexp": {
- "version": "1.0.5",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.8.0"
- }
- },
- "node_modules/tslint/node_modules/glob": {
- "version": "7.2.3",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.1.1",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- },
- "engines": {
- "node": "*"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/tslint/node_modules/has-flag": {
- "version": "3.0.0",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/tslint/node_modules/js-yaml": {
- "version": "3.14.1",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "argparse": "^1.0.7",
- "esprima": "^4.0.0"
- },
- "bin": {
- "js-yaml": "bin/js-yaml.js"
- }
- },
- "node_modules/tslint/node_modules/semver": {
- "version": "5.7.1",
- "dev": true,
- "license": "ISC",
- "bin": {
- "semver": "bin/semver"
- }
- },
- "node_modules/tslint/node_modules/supports-color": {
- "version": "5.5.0",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "has-flag": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/tslint/node_modules/tslib": {
- "version": "1.14.1",
- "dev": true,
- "license": "0BSD"
- },
- "node_modules/tsutils": {
- "version": "2.29.0",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "tslib": "^1.8.1"
- },
- "peerDependencies": {
- "typescript": ">=2.1.0 || >=2.1.0-dev || >=2.2.0-dev || >=2.3.0-dev || >=2.4.0-dev || >=2.5.0-dev || >=2.6.0-dev || >=2.7.0-dev || >=2.8.0-dev || >=2.9.0-dev || >= 3.0.0-dev || >= 3.1.0-dev"
- }
- },
- "node_modules/tsutils/node_modules/tslib": {
- "version": "1.14.1",
- "dev": true,
- "license": "0BSD"
- },
"node_modules/tunnel-agent": {
"version": "0.6.0",
"dev": true,
@@ -10865,11 +9607,6 @@
"url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/typedarray": {
- "version": "0.0.6",
- "dev": true,
- "license": "MIT"
- },
"node_modules/typedarray-to-buffer": {
"version": "3.1.5",
"dev": true,
@@ -11047,14 +9784,6 @@
"spdx-expression-parse": "^3.0.0"
}
},
- "node_modules/validate-npm-package-name": {
- "version": "3.0.0",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "builtins": "^1.0.3"
- }
- },
"node_modules/vary": {
"version": "1.1.2",
"dev": true,
@@ -11238,46 +9967,8 @@
"engines": {
"node": ">= 0.4"
},
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/wide-align": {
- "version": "1.1.5",
- "dev": true,
- "license": "ISC",
- "optional": true,
- "dependencies": {
- "string-width": "^1.0.2 || 2 || 3 || 4"
- }
- },
- "node_modules/wide-align/node_modules/emoji-regex": {
- "version": "8.0.0",
- "dev": true,
- "license": "MIT",
- "optional": true
- },
- "node_modules/wide-align/node_modules/is-fullwidth-code-point": {
- "version": "3.0.0",
- "dev": true,
- "license": "MIT",
- "optional": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/wide-align/node_modules/string-width": {
- "version": "4.2.3",
- "dev": true,
- "license": "MIT",
- "optional": true,
- "dependencies": {
- "emoji-regex": "^8.0.0",
- "is-fullwidth-code-point": "^3.0.0",
- "strip-ansi": "^6.0.1"
- },
- "engines": {
- "node": ">=8"
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/word-wrap": {
@@ -11992,396 +10683,24 @@
"chalk": "^4.1.0"
}
},
- "@cspotcode/source-map-support": {
- "version": "0.8.1",
- "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz",
- "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==",
- "dev": true,
- "requires": {
- "@jridgewell/trace-mapping": "0.3.9"
- },
- "dependencies": {
- "@jridgewell/trace-mapping": {
- "version": "0.3.9",
- "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz",
- "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==",
- "dev": true,
- "requires": {
- "@jridgewell/resolve-uri": "^3.0.3",
- "@jridgewell/sourcemap-codec": "^1.4.10"
- }
- }
- }
- },
- "@definitelytyped/dts-critic": {
- "version": "0.0.178",
- "resolved": "https://registry.npmjs.org/@definitelytyped/dts-critic/-/dts-critic-0.0.178.tgz",
- "integrity": "sha512-1JiY6giD2qLYxDPSWPbZiICzmTX+cHBNMXf09SeY6CJX0kZPcAkX+Uhc64HSqlhutECRWy7SdQCp/NP3xVOt4Q==",
- "dev": true,
- "requires": {
- "@definitelytyped/header-parser": "^0.0.178",
- "command-exists": "^1.2.8",
- "rimraf": "^3.0.2",
- "semver": "^7.5.2",
- "tmp": "^0.2.1",
- "yargs": "^15.3.1"
- },
- "dependencies": {
- "cliui": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz",
- "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
- "dev": true,
- "requires": {
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.0",
- "wrap-ansi": "^6.2.0"
- }
- },
- "emoji-regex": {
- "version": "8.0.0",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
- "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
- "dev": true
- },
- "find-up": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
- "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
- "dev": true,
- "requires": {
- "locate-path": "^5.0.0",
- "path-exists": "^4.0.0"
- }
- },
- "get-caller-file": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
- "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
- "dev": true
- },
- "is-fullwidth-code-point": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
- "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
- "dev": true
- },
- "locate-path": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
- "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
- "dev": true,
- "requires": {
- "p-locate": "^4.1.0"
- }
- },
- "p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "dev": true,
- "requires": {
- "p-try": "^2.0.0"
- }
- },
- "p-locate": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
- "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
- "dev": true,
- "requires": {
- "p-limit": "^2.2.0"
- }
- },
- "string-width": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
- "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
- "dev": true,
- "requires": {
- "emoji-regex": "^8.0.0",
- "is-fullwidth-code-point": "^3.0.0",
- "strip-ansi": "^6.0.1"
- }
- },
- "wrap-ansi": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
- "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- }
- },
- "y18n": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
- "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==",
- "dev": true
- },
- "yargs": {
- "version": "15.4.1",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz",
- "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==",
- "dev": true,
- "requires": {
- "cliui": "^6.0.0",
- "decamelize": "^1.2.0",
- "find-up": "^4.1.0",
- "get-caller-file": "^2.0.1",
- "require-directory": "^2.1.1",
- "require-main-filename": "^2.0.0",
- "set-blocking": "^2.0.0",
- "string-width": "^4.2.0",
- "which-module": "^2.0.0",
- "y18n": "^4.0.0",
- "yargs-parser": "^18.1.2"
- }
- },
- "yargs-parser": {
- "version": "18.1.3",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz",
- "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
- "dev": true,
- "requires": {
- "camelcase": "^5.0.0",
- "decamelize": "^1.2.0"
- }
- }
- }
- },
- "@definitelytyped/dtslint": {
- "version": "0.0.182",
- "resolved": "https://registry.npmjs.org/@definitelytyped/dtslint/-/dtslint-0.0.182.tgz",
- "integrity": "sha512-88t3yXrqXQbw+KmAY7D+PHJnC2BTzEZPxy7UvtksqrDL1RWLUxXKuG33/+0w36T3qDsdQTiqNBdLbAI+uzxsEA==",
- "dev": true,
- "requires": {
- "@definitelytyped/dts-critic": "0.0.178",
- "@definitelytyped/header-parser": "0.0.178",
- "@definitelytyped/typescript-versions": "0.0.178",
- "@definitelytyped/utils": "0.0.178",
- "@typescript-eslint/eslint-plugin": "^5.55.0",
- "@typescript-eslint/parser": "^5.55.0",
- "@typescript-eslint/types": "^5.56.0",
- "@typescript-eslint/typescript-estree": "^5.55.0",
- "@typescript-eslint/utils": "^5.55.0",
- "eslint": "^8.17.0",
- "fs-extra": "^6.0.1",
- "json-stable-stringify": "^1.0.1",
- "strip-json-comments": "^2.0.1",
- "tslint": "5.14.0",
- "yargs": "^15.1.0"
- },
- "dependencies": {
- "cliui": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz",
- "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
- "dev": true,
- "requires": {
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.0",
- "wrap-ansi": "^6.2.0"
- }
- },
- "emoji-regex": {
- "version": "8.0.0",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
- "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
- "dev": true
- },
- "find-up": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
- "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
- "dev": true,
- "requires": {
- "locate-path": "^5.0.0",
- "path-exists": "^4.0.0"
- }
- },
- "fs-extra": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-6.0.1.tgz",
- "integrity": "sha512-GnyIkKhhzXZUWFCaJzvyDLEEgDkPfb4/TPvJCJVuS8MWZgoSsErf++QpiAlDnKFcqhRlm+tIOcencCjyJE6ZCA==",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.1.2",
- "jsonfile": "^4.0.0",
- "universalify": "^0.1.0"
- }
- },
- "get-caller-file": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
- "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
- "dev": true
- },
- "is-fullwidth-code-point": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
- "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
- "dev": true
- },
- "jsonfile": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
- "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.1.6"
- }
- },
- "locate-path": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
- "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
- "dev": true,
- "requires": {
- "p-locate": "^4.1.0"
- }
- },
- "p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "dev": true,
- "requires": {
- "p-try": "^2.0.0"
- }
- },
- "p-locate": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
- "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
- "dev": true,
- "requires": {
- "p-limit": "^2.2.0"
- }
- },
- "string-width": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
- "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
- "dev": true,
- "requires": {
- "emoji-regex": "^8.0.0",
- "is-fullwidth-code-point": "^3.0.0",
- "strip-ansi": "^6.0.1"
- }
- },
- "universalify": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
- "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
- "dev": true
- },
- "wrap-ansi": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
- "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- }
- },
- "y18n": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
- "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==",
- "dev": true
- },
- "yargs": {
- "version": "15.4.1",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz",
- "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==",
- "dev": true,
- "requires": {
- "cliui": "^6.0.0",
- "decamelize": "^1.2.0",
- "find-up": "^4.1.0",
- "get-caller-file": "^2.0.1",
- "require-directory": "^2.1.1",
- "require-main-filename": "^2.0.0",
- "set-blocking": "^2.0.0",
- "string-width": "^4.2.0",
- "which-module": "^2.0.0",
- "y18n": "^4.0.0",
- "yargs-parser": "^18.1.2"
- }
- },
- "yargs-parser": {
- "version": "18.1.3",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz",
- "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
- "dev": true,
- "requires": {
- "camelcase": "^5.0.0",
- "decamelize": "^1.2.0"
- }
- }
- }
- },
- "@definitelytyped/header-parser": {
- "version": "0.0.178",
- "resolved": "https://registry.npmjs.org/@definitelytyped/header-parser/-/header-parser-0.0.178.tgz",
- "integrity": "sha512-16FFuaWW2Hq+a0Abyt+9gvPAT0w/ezy4eph3RbtLSqxH3T/UHDla1jgnp1DMvfNeBWaIqHxcr+Vrr7BPquw7mw==",
- "dev": true,
- "requires": {
- "@definitelytyped/typescript-versions": "^0.0.178",
- "@types/parsimmon": "^1.10.1",
- "parsimmon": "^1.13.0"
- }
- },
- "@definitelytyped/typescript-versions": {
- "version": "0.0.178",
- "resolved": "https://registry.npmjs.org/@definitelytyped/typescript-versions/-/typescript-versions-0.0.178.tgz",
- "integrity": "sha512-pPXy3z5gE4xnVgqIRApFcQ6M6kqtRK1gnqyGx/I0Yo1CH8RAsRvumCDB/KiZmQDpCHiy//E9dOIUFdquvC5t7g==",
- "dev": true
- },
- "@definitelytyped/utils": {
- "version": "0.0.178",
- "resolved": "https://registry.npmjs.org/@definitelytyped/utils/-/utils-0.0.178.tgz",
- "integrity": "sha512-nYg3E51XpTodS0/5w5r1wM/DhPYhyqa9BP8ili4XgB5s9j4v4mDPX9Jwjns2q24derBvyhdUpzshKDh43aqwZw==",
+ "@cspotcode/source-map-support": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz",
+ "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==",
"dev": true,
"requires": {
- "@definitelytyped/typescript-versions": "^0.0.178",
- "@qiwi/npm-registry-client": "^8.9.1",
- "@types/node": "^14.14.35",
- "charm": "^1.0.2",
- "fs-extra": "^8.1.0",
- "fstream": "^1.0.12",
- "tar": "^6.1.11",
- "tar-stream": "^2.1.4"
+ "@jridgewell/trace-mapping": "0.3.9"
},
"dependencies": {
- "@types/node": {
- "version": "14.18.48",
- "dev": true
- },
- "fs-extra": {
- "version": "8.1.0",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.2.0",
- "jsonfile": "^4.0.0",
- "universalify": "^0.1.0"
- }
- },
- "jsonfile": {
- "version": "4.0.0",
+ "@jridgewell/trace-mapping": {
+ "version": "0.3.9",
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz",
+ "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==",
"dev": true,
"requires": {
- "graceful-fs": "^4.1.6"
+ "@jridgewell/resolve-uri": "^3.0.3",
+ "@jridgewell/sourcemap-codec": "^1.4.10"
}
- },
- "universalify": {
- "version": "0.1.2",
- "dev": true
}
}
},
@@ -12606,22 +10925,21 @@
"tslib": "^2.6.0"
}
},
- "@qiwi/npm-registry-client": {
- "version": "8.9.1",
+ "@rollup/plugin-alias": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/@rollup/plugin-alias/-/plugin-alias-5.0.1.tgz",
+ "integrity": "sha512-JObvbWdOHoMy9W7SU0lvGhDtWq9PllP5mjpAy+TUslZG/WzOId9u80Hsqq1vCUn9pFJ0cxpdcnAv+QzU2zFH3Q==",
"dev": true,
"requires": {
- "concat-stream": "^2.0.0",
- "graceful-fs": "^4.2.4",
- "normalize-package-data": "~1.0.1 || ^2.0.0 || ^3.0.0",
- "npm-package-arg": "^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^8.0.0",
- "npmlog": "2 || ^3.1.0 || ^4.0.0",
- "once": "^1.4.0",
- "request": "^2.88.2",
- "retry": "^0.12.0",
- "safe-buffer": "^5.2.1",
- "semver": "2 >=2.2.1 || 3.x || 4 || 5 || 7",
- "slide": "^1.1.6",
- "ssri": "^8.0.0"
+ "slash": "^4.0.0"
+ },
+ "dependencies": {
+ "slash": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz",
+ "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==",
+ "dev": true
+ }
}
},
"@rollup/plugin-commonjs": {
@@ -12674,6 +10992,16 @@
}
}
},
+ "@rollup/plugin-typescript": {
+ "version": "11.1.5",
+ "resolved": "https://registry.npmjs.org/@rollup/plugin-typescript/-/plugin-typescript-11.1.5.tgz",
+ "integrity": "sha512-rnMHrGBB0IUEv69Q8/JGRD/n4/n6b3nfpufUu26axhUcboUzv/twfZU8fIBbTOphRAe0v8EyxzeDpKXqGHfyDA==",
+ "dev": true,
+ "requires": {
+ "@rollup/pluginutils": "^5.0.1",
+ "resolve": "^1.22.1"
+ }
+ },
"@rollup/pluginutils": {
"version": "5.0.5",
"resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.0.5.tgz",
@@ -12943,20 +11271,10 @@
"version": "2.4.1",
"dev": true
},
- "@types/parsimmon": {
- "version": "1.10.6",
- "dev": true
- },
"@types/resolve": {
"version": "1.20.2",
"dev": true
},
- "@types/semver": {
- "version": "7.5.3",
- "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.3.tgz",
- "integrity": "sha512-OxepLK9EuNEIPxWNME+C6WwbRAOOI2o2BaQEGzz5Lu2e4Z5eDnEo+/aVEDMIXywoJitJ7xWd641wrGLZdtwRyw==",
- "dev": true
- },
"@types/yauzl": {
"version": "2.10.0",
"resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.0.tgz",
@@ -12967,41 +11285,6 @@
"@types/node": "*"
}
},
- "@typescript-eslint/eslint-plugin": {
- "version": "5.62.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.62.0.tgz",
- "integrity": "sha512-TiZzBSJja/LbhNPvk6yc0JrX9XqhQ0hdh6M2svYfsHGejaKFIAGd9MQ+ERIMzLGlN/kZoYIgdxFV0PuljTKXag==",
- "dev": true,
- "requires": {
- "@eslint-community/regexpp": "^4.4.0",
- "@typescript-eslint/scope-manager": "5.62.0",
- "@typescript-eslint/type-utils": "5.62.0",
- "@typescript-eslint/utils": "5.62.0",
- "debug": "^4.3.4",
- "graphemer": "^1.4.0",
- "ignore": "^5.2.0",
- "natural-compare-lite": "^1.4.0",
- "semver": "^7.3.7",
- "tsutils": "^3.21.0"
- },
- "dependencies": {
- "tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true
- },
- "tsutils": {
- "version": "3.21.0",
- "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz",
- "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==",
- "dev": true,
- "requires": {
- "tslib": "^1.8.1"
- }
- }
- }
- },
"@typescript-eslint/parser": {
"version": "5.62.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.62.0.tgz",
@@ -13024,35 +11307,6 @@
"@typescript-eslint/visitor-keys": "5.62.0"
}
},
- "@typescript-eslint/type-utils": {
- "version": "5.62.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.62.0.tgz",
- "integrity": "sha512-xsSQreu+VnfbqQpW5vnCJdq1Z3Q0U31qiWmRhr98ONQmcp/yhiPJFPq8MXiJVLiksmOKSjIldZzkebzHuCGzew==",
- "dev": true,
- "requires": {
- "@typescript-eslint/typescript-estree": "5.62.0",
- "@typescript-eslint/utils": "5.62.0",
- "debug": "^4.3.4",
- "tsutils": "^3.21.0"
- },
- "dependencies": {
- "tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true
- },
- "tsutils": {
- "version": "3.21.0",
- "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz",
- "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==",
- "dev": true,
- "requires": {
- "tslib": "^1.8.1"
- }
- }
- }
- },
"@typescript-eslint/types": {
"version": "5.62.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.62.0.tgz",
@@ -13091,40 +11345,6 @@
}
}
},
- "@typescript-eslint/utils": {
- "version": "5.62.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.62.0.tgz",
- "integrity": "sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==",
- "dev": true,
- "requires": {
- "@eslint-community/eslint-utils": "^4.2.0",
- "@types/json-schema": "^7.0.9",
- "@types/semver": "^7.3.12",
- "@typescript-eslint/scope-manager": "5.62.0",
- "@typescript-eslint/types": "5.62.0",
- "@typescript-eslint/typescript-estree": "5.62.0",
- "eslint-scope": "^5.1.1",
- "semver": "^7.3.7"
- },
- "dependencies": {
- "eslint-scope": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
- "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
- "dev": true,
- "requires": {
- "esrecurse": "^4.3.0",
- "estraverse": "^4.1.1"
- }
- },
- "estraverse": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
- "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
- "dev": true
- }
- }
- },
"@typescript-eslint/visitor-keys": {
"version": "5.62.0",
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.62.0.tgz",
@@ -13420,58 +11640,10 @@
"default-require-extensions": "^3.0.0"
}
},
- "aproba": {
- "version": "1.2.0",
- "dev": true,
- "optional": true
- },
"archy": {
"version": "1.0.0",
"dev": true
},
- "are-we-there-yet": {
- "version": "1.1.7",
- "dev": true,
- "optional": true,
- "requires": {
- "delegates": "^1.0.0",
- "readable-stream": "^2.0.6"
- },
- "dependencies": {
- "isarray": {
- "version": "1.0.0",
- "dev": true,
- "optional": true
- },
- "readable-stream": {
- "version": "2.3.8",
- "dev": true,
- "optional": true,
- "requires": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.3",
- "isarray": "~1.0.0",
- "process-nextick-args": "~2.0.0",
- "safe-buffer": "~5.1.1",
- "string_decoder": "~1.1.1",
- "util-deprecate": "~1.0.1"
- }
- },
- "safe-buffer": {
- "version": "5.1.2",
- "dev": true,
- "optional": true
- },
- "string_decoder": {
- "version": "1.1.1",
- "dev": true,
- "optional": true,
- "requires": {
- "safe-buffer": "~5.1.0"
- }
- }
- }
- },
"arg": {
"version": "4.1.3",
"resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz",
@@ -13537,55 +11709,6 @@
"version": "1.12.0",
"dev": true
},
- "babel-code-frame": {
- "version": "6.26.0",
- "dev": true,
- "requires": {
- "chalk": "^1.1.3",
- "esutils": "^2.0.2",
- "js-tokens": "^3.0.2"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "2.1.1",
- "dev": true
- },
- "ansi-styles": {
- "version": "2.2.1",
- "dev": true
- },
- "chalk": {
- "version": "1.1.3",
- "dev": true,
- "requires": {
- "ansi-styles": "^2.2.1",
- "escape-string-regexp": "^1.0.2",
- "has-ansi": "^2.0.0",
- "strip-ansi": "^3.0.0",
- "supports-color": "^2.0.0"
- }
- },
- "escape-string-regexp": {
- "version": "1.0.5",
- "dev": true
- },
- "js-tokens": {
- "version": "3.0.2",
- "dev": true
- },
- "strip-ansi": {
- "version": "3.0.1",
- "dev": true,
- "requires": {
- "ansi-regex": "^2.0.0"
- }
- },
- "supports-color": {
- "version": "2.0.0",
- "dev": true
- }
- }
- },
"balanced-match": {
"version": "1.0.2",
"dev": true
@@ -13715,10 +11838,6 @@
"version": "3.3.0",
"dev": true
},
- "builtins": {
- "version": "1.0.3",
- "dev": true
- },
"bundle-name": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/bundle-name/-/bundle-name-3.0.0.tgz",
@@ -13810,13 +11929,6 @@
"supports-color": "^7.1.0"
}
},
- "charm": {
- "version": "1.0.2",
- "dev": true,
- "requires": {
- "inherits": "^2.0.1"
- }
- },
"check-error": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/check-error/-/check-error-1.0.3.tgz",
@@ -13849,10 +11961,6 @@
}
}
},
- "chownr": {
- "version": "2.0.0",
- "dev": true
- },
"chrome-trace-event": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz",
@@ -13917,11 +12025,6 @@
}
}
},
- "code-point-at": {
- "version": "1.1.0",
- "dev": true,
- "optional": true
- },
"color-convert": {
"version": "2.0.1",
"dev": true,
@@ -13946,10 +12049,6 @@
"delayed-stream": "~1.0.0"
}
},
- "command-exists": {
- "version": "1.2.9",
- "dev": true
- },
"commander": {
"version": "9.5.0",
"resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz",
@@ -13972,16 +12071,6 @@
"version": "0.0.1",
"dev": true
},
- "concat-stream": {
- "version": "2.0.0",
- "dev": true,
- "requires": {
- "buffer-from": "^1.0.0",
- "inherits": "^2.0.3",
- "readable-stream": "^3.0.2",
- "typedarray": "^0.0.6"
- }
- },
"connect": {
"version": "3.7.0",
"dev": true,
@@ -14005,11 +12094,6 @@
}
}
},
- "console-control-strings": {
- "version": "1.1.0",
- "dev": true,
- "optional": true
- },
"content-type": {
"version": "1.0.5",
"dev": true
@@ -14291,11 +12375,6 @@
"version": "1.0.0",
"dev": true
},
- "delegates": {
- "version": "1.0.0",
- "dev": true,
- "optional": true
- },
"depd": {
"version": "2.0.0",
"dev": true
@@ -14980,52 +13059,14 @@
"universalify": "^2.0.0"
}
},
- "fs-minipass": {
- "version": "2.1.0",
- "dev": true,
- "requires": {
- "minipass": "^3.0.0"
- }
- },
"fs.realpath": {
"version": "1.0.0",
"dev": true
},
"fsevents": {
- "version": "2.3.2",
- "dev": true,
- "optional": true
- },
- "fstream": {
- "version": "1.0.12",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.1.2",
- "inherits": "~2.0.0",
- "mkdirp": ">=0.5 0",
- "rimraf": "2"
- },
- "dependencies": {
- "glob": {
- "version": "7.2.3",
- "dev": true,
- "requires": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.1.1",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- }
- },
- "rimraf": {
- "version": "2.7.1",
- "dev": true,
- "requires": {
- "glob": "^7.1.3"
- }
- }
- }
+ "version": "2.3.2",
+ "dev": true,
+ "optional": true
},
"function-bind": {
"version": "1.1.1",
@@ -15045,54 +13086,6 @@
"version": "1.2.3",
"dev": true
},
- "gauge": {
- "version": "2.7.4",
- "dev": true,
- "optional": true,
- "requires": {
- "aproba": "^1.0.3",
- "console-control-strings": "^1.0.0",
- "has-unicode": "^2.0.0",
- "object-assign": "^4.1.0",
- "signal-exit": "^3.0.0",
- "string-width": "^1.0.1",
- "strip-ansi": "^3.0.1",
- "wide-align": "^1.1.0"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "2.1.1",
- "dev": true,
- "optional": true
- },
- "is-fullwidth-code-point": {
- "version": "1.0.0",
- "dev": true,
- "optional": true,
- "requires": {
- "number-is-nan": "^1.0.0"
- }
- },
- "string-width": {
- "version": "1.0.2",
- "dev": true,
- "optional": true,
- "requires": {
- "code-point-at": "^1.0.0",
- "is-fullwidth-code-point": "^1.0.0",
- "strip-ansi": "^3.0.0"
- }
- },
- "strip-ansi": {
- "version": "3.0.1",
- "dev": true,
- "optional": true,
- "requires": {
- "ansi-regex": "^2.0.0"
- }
- }
- }
- },
"gensync": {
"version": "1.0.0-beta.2",
"dev": true
@@ -15282,19 +13275,6 @@
"function-bind": "^1.1.1"
}
},
- "has-ansi": {
- "version": "2.0.0",
- "dev": true,
- "requires": {
- "ansi-regex": "^2.0.0"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "2.1.1",
- "dev": true
- }
- }
- },
"has-bigints": {
"version": "1.0.2",
"dev": true
@@ -15325,11 +13305,6 @@
"has-symbols": "^1.0.2"
}
},
- "has-unicode": {
- "version": "2.0.1",
- "dev": true,
- "optional": true
- },
"hasha": {
"version": "5.2.2",
"dev": true,
@@ -15890,13 +13865,6 @@
"integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
"dev": true
},
- "json-stable-stringify": {
- "version": "1.0.2",
- "dev": true,
- "requires": {
- "jsonify": "^0.0.1"
- }
- },
"json-stable-stringify-without-jsonify": {
"version": "1.0.1",
"dev": true
@@ -15917,10 +13885,6 @@
"universalify": "^2.0.0"
}
},
- "jsonify": {
- "version": "0.0.1",
- "dev": true
- },
"jsonparse": {
"version": "1.3.1",
"resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz",
@@ -16662,21 +14626,6 @@
"kind-of": "^6.0.3"
}
},
- "minipass": {
- "version": "3.3.6",
- "dev": true,
- "requires": {
- "yallist": "^4.0.0"
- }
- },
- "minizlib": {
- "version": "2.1.2",
- "dev": true,
- "requires": {
- "minipass": "^3.0.0",
- "yallist": "^4.0.0"
- }
- },
"mkdirp": {
"version": "0.5.6",
"dev": true,
@@ -16868,12 +14817,6 @@
"version": "1.4.0",
"dev": true
},
- "natural-compare-lite": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz",
- "integrity": "sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g==",
- "dev": true
- },
"negotiator": {
"version": "0.6.3",
"dev": true
@@ -16961,15 +14904,6 @@
"version": "3.0.0",
"dev": true
},
- "npm-package-arg": {
- "version": "8.1.5",
- "dev": true,
- "requires": {
- "hosted-git-info": "^4.0.1",
- "semver": "^7.3.4",
- "validate-npm-package-name": "^3.0.0"
- }
- },
"npm-run-all": {
"version": "4.1.5",
"dev": true,
@@ -17079,22 +15013,6 @@
"path-key": "^3.0.0"
}
},
- "npmlog": {
- "version": "4.1.2",
- "dev": true,
- "optional": true,
- "requires": {
- "are-we-there-yet": "~1.1.2",
- "console-control-strings": "~1.1.0",
- "gauge": "~2.7.3",
- "set-blocking": "~2.0.0"
- }
- },
- "number-is-nan": {
- "version": "1.0.1",
- "dev": true,
- "optional": true
- },
"nwmatcher": {
"version": "1.4.4",
"dev": true
@@ -17383,10 +15301,6 @@
"version": "1.3.3",
"dev": true
},
- "parsimmon": {
- "version": "1.18.1",
- "dev": true
- },
"path-exists": {
"version": "4.0.0",
"dev": true
@@ -17505,11 +15419,6 @@
"fast-diff": "^1.1.2"
}
},
- "process-nextick-args": {
- "version": "2.0.1",
- "dev": true,
- "optional": true
- },
"process-on-spawn": {
"version": "1.0.0",
"dev": true,
@@ -17855,10 +15764,6 @@
"signal-exit": "^3.0.2"
}
},
- "retry": {
- "version": "0.12.0",
- "dev": true
- },
"reusify": {
"version": "1.0.4",
"dev": true
@@ -18092,10 +15997,6 @@
}
}
},
- "slide": {
- "version": "1.1.6",
- "dev": true
- },
"smob": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/smob/-/smob-1.4.1.tgz",
@@ -18210,13 +16111,6 @@
"tweetnacl": "~0.14.0"
}
},
- "ssri": {
- "version": "8.0.1",
- "dev": true,
- "requires": {
- "minipass": "^3.1.1"
- }
- },
"statuses": {
"version": "1.5.0",
"dev": true
@@ -18351,10 +16245,6 @@
"min-indent": "^1.0.0"
}
},
- "strip-json-comments": {
- "version": "2.0.1",
- "dev": true
- },
"supports-color": {
"version": "7.2.0",
"dev": true,
@@ -18386,28 +16276,6 @@
"integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
"dev": true
},
- "tar": {
- "version": "6.1.15",
- "dev": true,
- "requires": {
- "chownr": "^2.0.0",
- "fs-minipass": "^2.0.0",
- "minipass": "^5.0.0",
- "minizlib": "^2.1.1",
- "mkdirp": "^1.0.3",
- "yallist": "^4.0.0"
- },
- "dependencies": {
- "minipass": {
- "version": "5.0.0",
- "dev": true
- },
- "mkdirp": {
- "version": "1.0.4",
- "dev": true
- }
- }
- },
"tar-fs": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz",
@@ -18622,129 +16490,6 @@
"integrity": "sha512-7At1WUettjcSRHXCyYtTselblcHl9PJFFVKiCAy/bY97+BPZXSQ2wbq0P9s8tK2G7dFQfNnlJnPAiArVBVBsfA==",
"dev": true
},
- "tslint": {
- "version": "5.14.0",
- "dev": true,
- "requires": {
- "babel-code-frame": "^6.22.0",
- "builtin-modules": "^1.1.1",
- "chalk": "^2.3.0",
- "commander": "^2.12.1",
- "diff": "^3.2.0",
- "glob": "^7.1.1",
- "js-yaml": "^3.7.0",
- "minimatch": "^3.0.4",
- "mkdirp": "^0.5.1",
- "resolve": "^1.3.2",
- "semver": "^5.3.0",
- "tslib": "^1.8.0",
- "tsutils": "^2.29.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "3.2.1",
- "dev": true,
- "requires": {
- "color-convert": "^1.9.0"
- }
- },
- "argparse": {
- "version": "1.0.10",
- "dev": true,
- "requires": {
- "sprintf-js": "~1.0.2"
- }
- },
- "builtin-modules": {
- "version": "1.1.1",
- "dev": true
- },
- "chalk": {
- "version": "2.4.2",
- "dev": true,
- "requires": {
- "ansi-styles": "^3.2.1",
- "escape-string-regexp": "^1.0.5",
- "supports-color": "^5.3.0"
- }
- },
- "color-convert": {
- "version": "1.9.3",
- "dev": true,
- "requires": {
- "color-name": "1.1.3"
- }
- },
- "color-name": {
- "version": "1.1.3",
- "dev": true
- },
- "commander": {
- "version": "2.20.3",
- "dev": true
- },
- "diff": {
- "version": "3.5.0",
- "dev": true
- },
- "escape-string-regexp": {
- "version": "1.0.5",
- "dev": true
- },
- "glob": {
- "version": "7.2.3",
- "dev": true,
- "requires": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.1.1",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- }
- },
- "has-flag": {
- "version": "3.0.0",
- "dev": true
- },
- "js-yaml": {
- "version": "3.14.1",
- "dev": true,
- "requires": {
- "argparse": "^1.0.7",
- "esprima": "^4.0.0"
- }
- },
- "semver": {
- "version": "5.7.1",
- "dev": true
- },
- "supports-color": {
- "version": "5.5.0",
- "dev": true,
- "requires": {
- "has-flag": "^3.0.0"
- }
- },
- "tslib": {
- "version": "1.14.1",
- "dev": true
- }
- }
- },
- "tsutils": {
- "version": "2.29.0",
- "dev": true,
- "requires": {
- "tslib": "^1.8.1"
- },
- "dependencies": {
- "tslib": {
- "version": "1.14.1",
- "dev": true
- }
- }
- },
"tunnel-agent": {
"version": "0.6.0",
"dev": true,
@@ -18792,10 +16537,6 @@
"is-typed-array": "^1.1.9"
}
},
- "typedarray": {
- "version": "0.0.6",
- "dev": true
- },
"typedarray-to-buffer": {
"version": "3.1.5",
"dev": true,
@@ -18896,13 +16637,6 @@
"spdx-expression-parse": "^3.0.0"
}
},
- "validate-npm-package-name": {
- "version": "3.0.0",
- "dev": true,
- "requires": {
- "builtins": "^1.0.3"
- }
- },
"vary": {
"version": "1.1.2",
"dev": true
@@ -19032,36 +16766,6 @@
"is-typed-array": "^1.1.10"
}
},
- "wide-align": {
- "version": "1.1.5",
- "dev": true,
- "optional": true,
- "requires": {
- "string-width": "^1.0.2 || 2 || 3 || 4"
- },
- "dependencies": {
- "emoji-regex": {
- "version": "8.0.0",
- "dev": true,
- "optional": true
- },
- "is-fullwidth-code-point": {
- "version": "3.0.0",
- "dev": true,
- "optional": true
- },
- "string-width": {
- "version": "4.2.3",
- "dev": true,
- "optional": true,
- "requires": {
- "emoji-regex": "^8.0.0",
- "is-fullwidth-code-point": "^3.0.0",
- "strip-ansi": "^6.0.1"
- }
- }
- }
- },
"word-wrap": {
"version": "1.2.4",
"resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.4.tgz",
diff --git a/package.json b/package.json
index d2dcf812..e3b0a14d 100644
--- a/package.json
+++ b/package.json
@@ -3,28 +3,40 @@
"version": "4.0.1",
"description": "HTML to DOM parser.",
"author": "Mark ",
- "main": "index.js",
- "module": "index.mjs",
+ "main": "lib/index.js",
+ "module": "esm/index.mjs",
"exports": {
- "import": "./index.mjs",
- "require": "./index.js"
+ ".": {
+ "import": "./esm/index.mjs",
+ "require": "./lib/index.js"
+ },
+ "./lib/client/*": {
+ "import": "./esm/client/*.mjs",
+ "require": "./lib/client/*.js"
+ },
+ "./lib/server/*": {
+ "import": "./esm/server/*.mjs",
+ "require": "./lib/server/*.js"
+ }
},
"scripts": {
- "build": "rollup --config --failAfterWarnings",
- "clean": "rm -rf dist",
+ "build": "run-p build:*",
+ "build:cjs": "tsc",
+ "build:umd": "rollup --config --failAfterWarnings",
+ "clean": "rm -rf .nyc_output coverage dist lib",
"lint": "eslint . --ignore-path .gitignore",
- "lint:dts": "dtslint .",
"lint:fix": "npm run lint -- --fix",
+ "lint:tsc": "tsc --noEmit",
"postinstall": "husky install",
"postpublish": "pinst --enable",
- "prepublishOnly": "pinst --disable && run-s lint lint:dts test:server clean build",
+ "prepublishOnly": "pinst --disable && run-s lint lint:tsc test:server clean build",
"size-limit": "size-limit",
"test": "run-s test:server test:client",
"test:client": "npm run test:client:watch -- --single-run",
"test:client:build": "NODE_ENV=test npm run build",
"test:client:watch": "npm run test:client:build && karma start",
- "test:module": "node --test test/module",
- "test:server": "nyc mocha test/server"
+ "test:esm": "npm run build:cjs && node --test test/esm",
+ "test:server": "nyc mocha -r ts-node/register test/server --ignore esm"
},
"repository": {
"type": "git",
@@ -48,10 +60,11 @@
"devDependencies": {
"@commitlint/cli": "17.8.0",
"@commitlint/config-conventional": "17.8.0",
- "@definitelytyped/dtslint": "0.0.182",
+ "@rollup/plugin-alias": "5.0.1",
"@rollup/plugin-commonjs": "25.0.7",
"@rollup/plugin-node-resolve": "15.2.3",
"@rollup/plugin-terser": "0.4.4",
+ "@rollup/plugin-typescript": "11.1.5",
"@size-limit/preset-big-lib": "9.0.0",
"@types/estree": "1.0.2",
"@typescript-eslint/parser": "5.62.0",
@@ -81,17 +94,15 @@
},
"files": [
"/dist",
- "/index.d.ts",
- "/index.js",
- "/index.mjs",
+ "/esm",
"/lib"
],
"browser": {
- "./index.js": "./lib/client/html-to-dom.js",
- "./index.mjs": "./lib/client/html-to-dom.mjs"
+ "./lib/index.js": "./lib/client/html-to-dom.js",
+ "./esm/index.mjs": "./esm/client/html-to-dom.mjs"
},
"react-native": {
- "./index.js": "./lib/server/html-to-dom.js"
+ "./lib/index.js": "./lib/server/html-to-dom.js"
},
"license": "MIT"
}
diff --git a/rollup.config.mjs b/rollup.config.mjs
index 36007a4c..b3c8117a 100644
--- a/rollup.config.mjs
+++ b/rollup.config.mjs
@@ -1,16 +1,39 @@
+import alias from '@rollup/plugin-alias';
import commonjs from '@rollup/plugin-commonjs';
import resolve from '@rollup/plugin-node-resolve';
import terser from '@rollup/plugin-terser';
+import typescript from '@rollup/plugin-typescript';
const getConfig = (minify = false) => ({
- input: 'index.js',
+ input: 'src/index.ts',
+
output: {
file: `dist/html-dom-parser${minify ? '.min' : ''}.js`,
format: 'umd',
name: 'HTMLDOMParser',
- sourcemap: true
+ sourcemap: true,
},
- plugins: [commonjs(), resolve({ browser: true }), minify && terser()]
+
+ plugins: [
+ alias({
+ entries: [
+ {
+ find: './server/html-to-dom',
+ replacement: './client/html-to-dom',
+ },
+ ],
+ }),
+
+ typescript({
+ declaration: false,
+ declarationMap: false,
+ module: 'esnext',
+ }),
+
+ commonjs(),
+ resolve({ browser: true }),
+ minify && terser(),
+ ],
});
const configs = [getConfig(), getConfig(true)];
@@ -22,9 +45,9 @@ if (process.env.NODE_ENV === 'test') {
file: 'dist/htmlparser2.js',
format: 'umd',
name: 'htmlparser2',
- sourcemap: true
+ sourcemap: true,
},
- plugins: [commonjs(), resolve({ browser: true })]
+ plugins: [commonjs(), resolve({ browser: true })],
});
}
diff --git a/src/client/constants.ts b/src/client/constants.ts
new file mode 100644
index 00000000..b073d45b
--- /dev/null
+++ b/src/client/constants.ts
@@ -0,0 +1,46 @@
+/**
+ * SVG elements are case-sensitive.
+ *
+ * @see https://developer.mozilla.org/docs/Web/SVG/Element#svg_elements_a_to_z
+ */
+export const CASE_SENSITIVE_TAG_NAMES = [
+ 'animateMotion',
+ 'animateTransform',
+ 'clipPath',
+ 'feBlend',
+ 'feColorMatrix',
+ 'feComponentTransfer',
+ 'feComposite',
+ 'feConvolveMatrix',
+ 'feDiffuseLighting',
+ 'feDisplacementMap',
+ 'feDropShadow',
+ 'feFlood',
+ 'feFuncA',
+ 'feFuncB',
+ 'feFuncG',
+ 'feFuncR',
+ 'feGaussianBlur',
+ 'feImage',
+ 'feMerge',
+ 'feMergeNode',
+ 'feMorphology',
+ 'feOffset',
+ 'fePointLight',
+ 'feSpecularLighting',
+ 'feSpotLight',
+ 'feTile',
+ 'feTurbulence',
+ 'foreignObject',
+ 'linearGradient',
+ 'radialGradient',
+ 'textPath',
+] as const;
+
+export const CASE_SENSITIVE_TAG_NAMES_MAP = CASE_SENSITIVE_TAG_NAMES.reduce(
+ (accumulator, tagName) => {
+ accumulator[tagName.toLowerCase()] = tagName;
+ return accumulator;
+ },
+ {} as Record,
+);
diff --git a/src/client/domparser.ts b/src/client/domparser.ts
new file mode 100644
index 00000000..df49b652
--- /dev/null
+++ b/src/client/domparser.ts
@@ -0,0 +1,160 @@
+// constants
+const HTML = 'html';
+const HEAD = 'head';
+const BODY = 'body';
+const FIRST_TAG_REGEX = /<([a-zA-Z]+[0-9]?)/; // e.g.,
+
+// match-all-characters in case of newlines (DOTALL)
+const HEAD_TAG_REGEX = //i;
+const BODY_TAG_REGEX = //i;
+
+// falls back to `parseFromString` if `createHTMLDocument` cannot be used
+// eslint-disable-next-line no-unused-vars
+let parseFromDocument = (html: string, tagName?: string): Document => {
+ throw new Error(
+ 'This browser does not support `document.implementation.createHTMLDocument`',
+ );
+};
+
+// eslint-disable-next-line no-unused-vars
+let parseFromString = (html: string, tagName?: string): Document => {
+ throw new Error(
+ 'This browser does not support `DOMParser.prototype.parseFromString`',
+ );
+};
+
+let DOMParser = typeof window === 'object' && window.DOMParser;
+
+/**
+ * DOMParser (performance: slow).
+ *
+ * @see https://developer.mozilla.org/docs/Web/API/DOMParser#Parsing_an_SVG_or_HTML_document
+ */
+if (typeof DOMParser === 'function') {
+ const domParser = new DOMParser();
+ const mimeType = 'text/html';
+
+ /**
+ * Creates an HTML document using `DOMParser.parseFromString`.
+ *
+ * @param html - The HTML string.
+ * @param tagName - The element to render the HTML (with 'body' as fallback).
+ * @returns - Document.
+ */
+ parseFromString = (html: string, tagName?: string): Document => {
+ if (tagName) {
+ html = `<${tagName}>${html}${tagName}>`;
+ }
+
+ return domParser.parseFromString(html, mimeType);
+ };
+
+ parseFromDocument = parseFromString;
+}
+
+/**
+ * DOMImplementation (performance: fair).
+ *
+ * @see https://developer.mozilla.org/docs/Web/API/DOMImplementation/createHTMLDocument
+ */
+if (typeof document === 'object' && document.implementation) {
+ const htmlDocument = document.implementation.createHTMLDocument();
+
+ /**
+ * Use HTML document created by `document.implementation.createHTMLDocument`.
+ *
+ * @param html - The HTML string.
+ * @param tagName - The element to render the HTML (with 'body' as fallback).
+ * @returns - Document
+ */
+ parseFromDocument = function (html: string, tagName?: string): Document {
+ if (tagName) {
+ const element = htmlDocument.documentElement.querySelector(tagName);
+
+ if (element) {
+ element.innerHTML = html;
+ }
+
+ return htmlDocument;
+ }
+
+ htmlDocument.documentElement.innerHTML = html;
+ return htmlDocument;
+ };
+}
+
+/**
+ * Template (performance: fast).
+ *
+ * @see https://developer.mozilla.org/docs/Web/HTML/Element/template
+ */
+const template =
+ typeof document === 'object' && document.createElement('template');
+
+// eslint-disable-next-line no-unused-vars
+let parseFromTemplate: (html: string) => NodeList;
+
+if (template && template.content) {
+ /**
+ * Uses a template element (content fragment) to parse HTML.
+ *
+ * @param html - HTML string.
+ * @returns - Nodes.
+ */
+ parseFromTemplate = (html: string): NodeList => {
+ template.innerHTML = html;
+ return template.content.childNodes;
+ };
+}
+
+/**
+ * Parses HTML string to DOM nodes.
+ *
+ * @param html - HTML markup.
+ * @returns - DOM nodes.
+ */
+export default function domparser(html: string): NodeList {
+ const match = html.match(FIRST_TAG_REGEX);
+ const firstTagName = match && match[1] ? match[1].toLowerCase() : '';
+
+ switch (firstTagName) {
+ case HTML: {
+ const doc = parseFromString(html);
+
+ // the created document may come with filler head/body elements,
+ // so make sure to remove them if they don't actually exist
+ if (!HEAD_TAG_REGEX.test(html)) {
+ const element = doc.querySelector(HEAD);
+ element?.parentNode?.removeChild(element);
+ }
+
+ if (!BODY_TAG_REGEX.test(html)) {
+ const element = doc.querySelector(BODY);
+ element?.parentNode?.removeChild(element);
+ }
+
+ return doc.querySelectorAll(HTML);
+ }
+
+ case HEAD:
+ case BODY: {
+ const elements = parseFromDocument(html).querySelectorAll(firstTagName);
+
+ // if there's a sibling element, then return both elements
+ if (BODY_TAG_REGEX.test(html) && HEAD_TAG_REGEX.test(html)) {
+ return elements[0].parentNode!.childNodes;
+ }
+
+ return elements;
+ }
+
+ // low-level tag or text
+ default: {
+ if (parseFromTemplate) {
+ return parseFromTemplate(html);
+ }
+ const element = parseFromDocument(html, BODY).querySelector(BODY);
+ return element!.childNodes;
+ }
+ }
+}
diff --git a/src/client/html-to-dom.ts b/src/client/html-to-dom.ts
new file mode 100644
index 00000000..c2db1ee3
--- /dev/null
+++ b/src/client/html-to-dom.ts
@@ -0,0 +1,26 @@
+import domparser from './domparser';
+import { formatDOM } from './utilities';
+
+const DIRECTIVE_REGEX = /<(![a-zA-Z\s]+)>/; // e.g.,
+
+/**
+ * Parses HTML string to DOM nodes in browser.
+ *
+ * @param html - HTML markup.
+ * @returns - DOM elements.
+ */
+export default function HTMLDOMParser(html: string) {
+ if (typeof html !== 'string') {
+ throw new TypeError('First argument must be a string');
+ }
+
+ if (html === '') {
+ return [];
+ }
+
+ // match directive
+ const match = html.match(DIRECTIVE_REGEX);
+ const directive = match ? match[1] : undefined;
+
+ return formatDOM(domparser(html), null, directive);
+}
diff --git a/src/client/utilities.ts b/src/client/utilities.ts
new file mode 100644
index 00000000..5441ab9f
--- /dev/null
+++ b/src/client/utilities.ts
@@ -0,0 +1,136 @@
+import { Comment, Element, ProcessingInstruction, Text } from 'domhandler';
+import { CASE_SENSITIVE_TAG_NAMES_MAP } from './constants';
+
+/**
+ * Gets case-sensitive tag name.
+ *
+ * @param tagName - Tag name in lowercase.
+ * @returns - Case-sensitive tag name.
+ */
+function getCaseSensitiveTagName(tagName: string): string | undefined {
+ return CASE_SENSITIVE_TAG_NAMES_MAP[tagName];
+}
+
+/**
+ * Formats DOM attributes to a hash map.
+ *
+ * @param attributes - List of attributes.
+ * @returns - Map of attribute name to value.
+ */
+export function formatAttributes(attributes: NamedNodeMap) {
+ const map: Record = {};
+ let index = 0;
+ const attributesLength = attributes.length;
+
+ // `NamedNodeMap` is array-like
+ for (; index < attributesLength; index++) {
+ const attribute = attributes[index];
+ map[attribute.name] = attribute.value;
+ }
+
+ return map;
+}
+
+/**
+ * Corrects the tag name if it is case-sensitive (SVG).
+ * Otherwise, returns the lowercase tag name (HTML).
+ *
+ * @param tagName - Lowercase tag name.
+ * @returns - Formatted tag name.
+ */
+function formatTagName(tagName: string): string {
+ tagName = tagName.toLowerCase();
+ const caseSensitiveTagName = getCaseSensitiveTagName(tagName);
+
+ if (caseSensitiveTagName) {
+ return caseSensitiveTagName;
+ }
+
+ return tagName;
+}
+
+/**
+ * Transforms DOM nodes to `domhandler` nodes.
+ *
+ * @param nodes - DOM nodes.
+ * @param parent - Parent node.
+ * @param directive - Directive.
+ * @returns - Nodes.
+ */
+export function formatDOM(
+ nodes: NodeList,
+ parent: Element | null = null,
+ directive?: string,
+): (Comment | Element | ProcessingInstruction | Text)[] {
+ const result = [];
+ let current;
+ let index = 0;
+ const nodesLength = nodes.length;
+
+ for (; index < nodesLength; index++) {
+ const node = nodes[index];
+
+ // set the node data given the type
+ switch (node.nodeType) {
+ case 1: {
+ const tagName = formatTagName(node.nodeName);
+
+ // script, style, or tag
+ current = new Element(
+ tagName,
+ formatAttributes((node as HTMLElement).attributes),
+ );
+
+ current.children = formatDOM(
+ // template children are on content
+ tagName === 'template'
+ ? (node as HTMLTemplateElement).content.childNodes
+ : node.childNodes,
+ current,
+ );
+
+ break;
+ }
+
+ case 3:
+ current = new Text(node.nodeValue!);
+ break;
+
+ case 8:
+ current = new Comment(node.nodeValue!);
+ break;
+
+ default:
+ continue;
+ }
+
+ // set previous node next
+ const prev = result[index - 1] || null;
+ if (prev) {
+ prev.next = current;
+ }
+
+ // set properties for current node
+ current.parent = parent;
+ current.prev = prev;
+ current.next = null;
+
+ result.push(current);
+ }
+
+ if (directive) {
+ current = new ProcessingInstruction(
+ directive.substring(0, directive.indexOf(' ')).toLowerCase(),
+ directive,
+ );
+ current.next = result[0] || null;
+ current.parent = parent;
+ result.unshift(current);
+
+ if (result[1]) {
+ result[1].prev = result[0];
+ }
+ }
+
+ return result;
+}
diff --git a/index.js b/src/index.ts
similarity index 59%
rename from index.js
rename to src/index.ts
index c861c831..0c627267 100644
--- a/index.js
+++ b/src/index.ts
@@ -4,7 +4,4 @@
*
* @see {@link https://github.com/substack/node-browserify#browser-field}
*/
-var HTMLDOMParser = require('./lib/server/html-to-dom');
-
-module.exports = HTMLDOMParser;
-module.exports.default = HTMLDOMParser;
+export { default } from './server/html-to-dom';
diff --git a/src/server/html-to-dom.ts b/src/server/html-to-dom.ts
new file mode 100644
index 00000000..31db1e3b
--- /dev/null
+++ b/src/server/html-to-dom.ts
@@ -0,0 +1,34 @@
+import { Parser } from 'htmlparser2';
+import { DomHandler } from 'domhandler';
+import type { DomHandlerOptions } from 'domhandler';
+
+import { unsetRootParent } from './utilities';
+
+/**
+ * Parses HTML string to DOM nodes in Node.js.
+ *
+ * This is the same method as `require('htmlparser2').parseDOM`
+ *
+ * @see https://github.com/fb55/htmlparser2/blob/v9.0.0/src/index.ts#L44-L46
+ * @see https://github.com/fb55/domhandler/tree/v5.0.3#readme
+ *
+ * @param html - HTML markup.
+ * @param options - Parser options.
+ * @returns - DOM nodes.
+ */
+export default function HTMLDOMParser(
+ html: string,
+ options?: DomHandlerOptions
+) {
+ if (typeof html !== 'string') {
+ throw new TypeError('First argument must be a string.');
+ }
+
+ if (html === '') {
+ return [];
+ }
+
+ const handler = new DomHandler(undefined, options);
+ new Parser(handler, options).end(html);
+ return unsetRootParent(handler.dom);
+}
diff --git a/src/server/utilities.ts b/src/server/utilities.ts
new file mode 100644
index 00000000..8b667a5d
--- /dev/null
+++ b/src/server/utilities.ts
@@ -0,0 +1,27 @@
+import type {
+ ChildNode,
+ Comment,
+ Element,
+ ProcessingInstruction,
+ Text
+} from 'domhandler';
+
+type Node = Element | Text | Comment | ProcessingInstruction;
+
+/**
+ * Sets root parent to null.
+ *
+ * @param nodes - Nodes.
+ * @returns - Nodes.
+ */
+export function unsetRootParent(nodes: ChildNode[]): Node[] {
+ let index = 0;
+ const nodesLength = nodes.length;
+
+ for (; index < nodesLength; index++) {
+ const node = nodes[index];
+ node.parent = null;
+ }
+
+ return nodes as Node[];
+}
diff --git a/test/cases/html.js b/test/cases/html.js
index c23e358d..d747d5ad 100644
--- a/test/cases/html.js
+++ b/test/cases/html.js
@@ -2,223 +2,223 @@ module.exports = [
// html tags
{
name: 'empty html',
- data: ''
+ data: '',
},
{
name: 'html with attribute',
- data: ''
+ data: '',
},
{
name: 'html with empty head and body',
- data: ''
+ data: '',
},
{
name: 'html with empty head',
- data: ''
+ data: '',
},
{
name: 'html with empty body',
- data: ''
+ data: '',
},
{
name: 'unclosed html and head tags',
- data: ''
+ data: '',
},
{
name: 'unclosed html and body tags',
- data: ''
+ data: '',
},
{
name: 'unclosed html, head, and body tags',
- data: ''
+ data: '',
},
// head and body tags
{
name: 'unclosed head',
- data: ''
+ data: '',
},
{
name: 'empty head',
- data: ''
+ data: '',
},
{
name: 'head with title',
- data: 'Text'
+ data: 'Text',
},
{
name: 'empty head and body',
- data: ''
+ data: '',
},
{
name: 'unclosed head and body',
- data: ''
+ data: '',
},
{
name: 'unclosed title',
- data: ''
+ data: '',
},
{
name: 'empty title',
- data: ''
+ data: '',
},
{
name: 'title with text',
- data: 'text'
+ data: 'text',
},
{
name: 'title with text as tags',
- data: 'text'
+ data: 'text',
},
{
name: 'unclosed body',
- data: ''
+ data: '',
},
{
name: 'empty body',
- data: ''
+ data: '',
},
{
name: 'capitalized body',
- data: ''
+ data: '',
},
{
name: 'body with paragraph',
- data: 'text
'
+ data: 'text
',
},
{
name: 'head and body with newline',
- data: 'text'
+ data: 'text',
},
{
name: 'head and body with whitespace and newlines',
- data: 'hellotext'
+ data: 'hellotext',
},
{
name: 'body with whitespace and newline',
- data: 'text'
+ data: 'text',
},
// common tags
{
name: 'empty div',
- data: ''
+ data: '',
},
{
name: 'empty paragraph',
- data: ''
+ data: '',
},
{
name: 'paragraph with text',
- data: 'text
'
+ data: 'text
',
},
{
name: 'meta with attribute',
- data: ''
+ data: '',
},
{
name: 'meta with closing tag',
- data: ''
+ data: '',
},
{
name: 'textarea with value',
- data: ''
+ data: '',
},
{
name: 'multiple spans',
- data: '12'
+ data: '12',
},
// void (self-closing) tags
{
name: 'void',
- data: '
'
+ data: '
',
},
{
name: 'self-closing void',
- data: '
'
+ data: '
',
},
{
name: 'input with attributes',
- data: ''
+ data: '',
},
{
name: 'image',
- data: '
'
+ data: '
',
},
{
name: 'multiple void',
- data: '
'
+ data: '
',
},
// tag attributes
{
name: 'h1 with id attribute',
- data: ''
+ data: '',
},
{
name: 'h2 with class attribute',
- data: ''
+ data: '',
},
{
name: 'em with style attribute',
- data: ''
+ data: '',
},
{
name: 'data attribute',
- data: ''
+ data: '',
},
{
name: 'event attribute',
- data: ''
+ data: '',
},
{
name: 'span with multiple attributes',
- data: ''
+ data: '',
},
{
name: 'hr with multiple attributes',
- data: '
'
+ data: '
',
},
// adjacent tags
{
name: 'sibling',
- data: 'brothersister'
+ data: 'brothersister',
},
// nested tags
{
name: 'nested definition list',
- data: '- foo
- barbaz
'
+ data: '- foo
- barbaz
',
},
{
name: 'nested unordered list',
- data: ''
+ data: '',
},
// script tag
{
name: 'empty script',
- data: ''
+ data: '',
},
{
name: 'script',
- data: ''
+ data: '',
},
{
name: 'script with json',
- data: ''
+ data: '',
},
// noscript tag
{
name: 'empty noscript',
- data: ''
+ data: '',
},
{
name: 'noscript with text',
- data: ''
+ data: '',
},
{
name: 'noscript with p',
@@ -228,114 +228,114 @@ module.exports = [
// template renders noscript children as text instead of nodes
var isJSDOM = typeof window === 'object' && window.name === 'nodejs';
return isJSDOM;
- }
+ },
},
// template tag
{
name: 'empty template',
- data: ''
+ data: '',
},
{
name: 'template with content',
- data: 'Test
'
+ data: 'Test
',
},
// style tag
{
name: 'empty style',
- data: ''
+ data: '',
},
{
name: 'style',
- data: ''
+ data: '',
},
// html5 tags
{
name: 'audio',
- data: '