diff --git a/.eslintrc.js b/.eslintrc.js
deleted file mode 100644
index e8f2fca0..00000000
--- a/.eslintrc.js
+++ /dev/null
@@ -1,25 +0,0 @@
-module.exports = {
- env: {
- browser: true,
- commonjs: true,
- es6: true,
- node: true
- },
- parserOptions: {
- ecmaVersion: 2018,
- sourceType: 'module'
- },
- plugins: ['import'],
- rules: {
- 'constructor-super': 1,
- 'import/no-anonymous-default-export': 1,
- 'import/no-unused-modules': 1,
- 'no-const-assign': 1,
- 'no-this-before-super': 1,
- 'no-undef': 2,
- 'no-unreachable': 0,
- 'no-unused-expressions': 0,
- 'no-unused-vars': [1, { args: 'none' }],
- 'valid-typeof': 1
- }
-};
diff --git a/.eslintrc.json b/.eslintrc.json
new file mode 100644
index 00000000..dc678107
--- /dev/null
+++ b/.eslintrc.json
@@ -0,0 +1,24 @@
+{
+ "env": {
+ "browser": true,
+ "es2021": true,
+ "node": true
+ },
+ "extends": ["eslint:recommended", "plugin:import/recommended"],
+ "parserOptions": {
+ "ecmaVersion": 12,
+ "sourceType": "module"
+ },
+ "plugins": ["import"],
+ "rules": {
+ "constructor-super": 1,
+ "import/no-anonymous-default-export": 1,
+ "import/no-unused-modules": 1,
+ "no-const-assign": 1,
+ "no-mixed-spaces-and-tabs": 0,
+ "no-this-before-super": 1,
+ "no-undef": 2,
+ "no-unused-vars": [1, { "args": "none" }],
+ "valid-typeof": 1
+ }
+}
diff --git a/.git-hooks/pre-commit b/.git-hooks/pre-commit
new file mode 100755
index 00000000..e29abb23
--- /dev/null
+++ b/.git-hooks/pre-commit
@@ -0,0 +1,2 @@
+#!/bin/sh
+npx pretty-quick --staged
diff --git a/.prettierignore b/.prettierignore
new file mode 100644
index 00000000..2e1fa2d5
--- /dev/null
+++ b/.prettierignore
@@ -0,0 +1 @@
+*.md
\ No newline at end of file
diff --git a/build.js b/build.js
new file mode 100644
index 00000000..fa277e53
--- /dev/null
+++ b/build.js
@@ -0,0 +1,84 @@
+import { build } from 'esbuild';
+
+// Bundled CJS
+build({
+ entryPoints: ['./src/index.js'],
+ logLevel: 'info',
+ bundle: true,
+ format: 'cjs',
+ outfile: 'bundled/culori.cjs'
+});
+
+// Bundled CJS, minified
+build({
+ entryPoints: ['./src/index.js'],
+ logLevel: 'info',
+ bundle: true,
+ minify: true,
+ format: 'cjs',
+ outfile: 'bundled/culori.min.cjs'
+});
+
+// Bundled ESM
+build({
+ entryPoints: ['./src/index.js'],
+ logLevel: 'info',
+ bundle: true,
+ format: 'esm',
+ outfile: 'bundled/culori.mjs'
+});
+
+// Bundled ESM, minified
+build({
+ entryPoints: ['./src/index.js'],
+ logLevel: 'info',
+ bundle: true,
+ minify: true,
+ format: 'esm',
+ outfile: 'bundled/culori.min.mjs'
+});
+
+// Bundled IIFE
+build({
+ entryPoints: ['./src/index.js'],
+ logLevel: 'info',
+ bundle: true,
+ format: 'iife',
+ globalName: 'culori',
+ outfile: 'bundled/culori.js'
+});
+
+// Bundled IIFE, minified
+build({
+ entryPoints: ['./src/index.js'],
+ logLevel: 'info',
+ bundle: true,
+ minify: true,
+ format: 'iife',
+ globalName: 'culori',
+ outfile: 'bundled/culori.min.js'
+});
+
+// Bundled UMD
+// Adapted from: https://github.com/umdjs/umd/blob/master/templates/returnExports.js
+build({
+ entryPoints: ['./src/index.js'],
+ logLevel: 'info',
+ bundle: true,
+ format: 'iife',
+ globalName: 'culori',
+ banner: {
+ js: `(function(root, factory) {
+ if (typeof define === 'function' && define.amd) {
+ define([], factory);
+ } else if (typeof module === 'object' && module.exports) {
+ module.exports = factory();
+ } else {
+ root.culori = factory();
+ }
+ }
+ (typeof self !== 'undefined' ? self : this, function() {`
+ },
+ footer: { js: `return culori; }));` },
+ outfile: 'bundled/culori.umd.js'
+});
diff --git a/docs/_includes/layouts/default.html b/docs/_includes/layouts/default.html
index 0f857611..1f2ee106 100644
--- a/docs/_includes/layouts/default.html
+++ b/docs/_includes/layouts/default.html
@@ -21,7 +21,7 @@
{{ title }}
{% include 'partials/footer.html' %}
-
+
```
-## Add it via the `
@@ -46,3 +48,26 @@ To import Culori as a `
```
+
+## Use it online
+
+### In your browser's console
+
+The library is added to every page of this website, so you can try the API in your browser's console as you read through the examples.
+
+### Runkit
+
+You can also use Culori in the Runkit npm playground ([npm.runkit.com/culori](https://npm.runkit.com/culori)) to test the API without installing anything.
+
+### Observable
+
+If you prefer to see the results visually, [Observable](https://beta.observablehq.com) is a great place to tinker with the library.
+
+Add this cell and you're good to go:
+
+```js
+culori = import('culori@{{pkg.version}}');
+```
+
+It's often useful to pin the library to a specific version, to make sure your old notebooks don't break if the API changes in a new major version of the library.
+
diff --git a/docs/guides/guides.json b/docs/guides/guides.json
new file mode 100644
index 00000000..7a518dca
--- /dev/null
+++ b/docs/guides/guides.json
@@ -0,0 +1,3 @@
+{
+ "layout": "layouts/default"
+}
diff --git a/docs/guides/index.md b/docs/guides/index.md
new file mode 100644
index 00000000..548a5235
--- /dev/null
+++ b/docs/guides/index.md
@@ -0,0 +1,7 @@
+---
+title: 'Guides'
+menu-order: 4
+---
+
+- [Migration guide](./migration)
+- [Optimize bundle size with tree-shaking](./tree-shaking)
diff --git a/docs/guides/migration.md b/docs/guides/migration.md
new file mode 100644
index 00000000..3790e54b
--- /dev/null
+++ b/docs/guides/migration.md
@@ -0,0 +1,57 @@
+---
+title: 'Migration guide'
+---
+
+## Migrating from version 0.x to 1.0
+
+### Using the library
+
+Starting with version 1.0, Culori will be published to npm as an ES Module (ESM) package, with `type: module` and a set of `exports` in its `package.json` file.
+
+If you're using Node.js 10, you should be able to continue using Culori as before.
+
+If you're on Node.js 12 or later, and you've switched to native ES modules (by adding `type: module` to your `package.json`), you need to use `import`:
+
+```js
+import * as culori from 'culori';
+```
+
+If you're on Node.js 12 or later, and you're still using CommonJS modules, there's a separate export that can be used with `require()` calls:
+
+```js
+const culori = require('culori/require');
+```
+
+### Removed methods
+
+The `clamp(method)` function has been removed. Use `clampRgb()` and `clampChroma()` instead.
+
+The `formatter(method)` function has been removed. Use `formatHex()`, `formatRgb()` etc. instead.
+
+The following undocumented interpolation functions have been removed (note the `interpolate` prefix):
+
+- `interpolateLinear()`
+- `interpolateCosine()`
+- `interpolateSplineBasis()`
+- `interpolateSplineNatural()`
+- `interpolateSplineMonotone()`
+
+The `differenceDino99()` color difference function has been removed. Use `differenceEuclidean('dlab')` instead.
+
+The methods `deficiencyProt`, `deficiencyDeuter`, and `deficiencyTrit` have been removed. Use `filterDeficiencyProt`, `filterDeficiencyDeuter`, and `filterDeficiencyTrit` instead.
+
+### Renamed methods
+
+The following methods have been renamed:
+
+- `defineMode()` → `useMode()`;
+- `getModeDefinition()` → `getMode()`.
+
+### Color space definitions
+
+A few properties on the [color space definition object](/api#color-space-def) have been changed for better clarity.
+
+- `input` → `fromMode`
+- `output` → `toMode`
+- `parsers` → `parse`
+- `serialize` as string now only includes the color profile identifier, without the `color(` prefix, eg. from `serialize: "color(--hsv "` to `serialize: "--hsv"`.
diff --git a/docs/guides/tree-shaking.md b/docs/guides/tree-shaking.md
new file mode 100644
index 00000000..99f543e7
--- /dev/null
+++ b/docs/guides/tree-shaking.md
@@ -0,0 +1,66 @@
+---
+title: 'Optimize bundle size with tree-shaking'
+---
+
+The default `culori` import comes with the full set of color spaces and functions to let you prototype quickly and with fewer errors.
+
+However, the way color spaces are initialized prevents the library from being tree-shaken, so when you use a bundler such as Webpack or Parcel, the entire Culori library is bundled regardless of what you're actually using.
+
+To optimize the bundle size, you can opt into the tree-shakeable version by importing from `culori/fn` instead of `culori`:
+
+```js
+import { …, …, … } from 'culori/fn';
+```
+
+It works like the default import, with one key difference: __none of the color spaces are pre-registered into the library__. In fact, if you'd try to `parse()` a valid CSS color without having registered any color space, you'd get back `undefined`:
+
+```js
+import { parse } from 'culori/fn';
+
+parse('tomato');
+// ⇒ undefined
+```
+
+Instead, you need to import the definitions of the color spaces you want to support and register them manually with the `useMode()` method.
+
+Since none of the color spaces are pre-registered the shortcuts to `converter(mode)`, such as `culori.rgb` or `culori.hsl`, are also missing. They are, however, helpfully returned by `useMode()`:
+
+```js
+import { useMode, modeRgb } from 'culori/fn';
+
+const rgb = useMode(modeRgb);
+
+console.log(rgb('tomato'));
+// ⇒ Object { mode: "rgb", r: 1, g: 0.38823529411764707, b: 0.2784313725490196 }
+```
+
+To recreate a subset of Culori that only deals with valid CSS colors, you would use this:
+
+```js
+import {
+ useMode,
+ modeA98,
+ modeHsl,
+ modeHwb,
+ modeLab,
+ modeLch,
+ modeP3,
+ modeProphoto,
+ modeRec2020,
+ modeRgb,
+ modeXyz
+} from 'culori/fn';
+
+const a98 = useMode(modeA98);
+const hsl = useMode(modeHsl);
+const hwb = useMode(modeHwb);
+const lab = useMode(modeLab);
+const lch = useMode(modeLch);
+const p3 = useMode(modeP3);
+const prophoto = useMode(modeProphoto);
+const rec2020 = useMode(modeRec2020);
+const rgb = useMode(modeRgb);
+const xyz = useMode(modeXyz);
+```
+
+> __Note:__ It's essential to register all the color spaces available in CSS with `useMode()` to make each color space's parsers available to functions such as `parse()` and `converter()`.
\ No newline at end of file
diff --git a/docs/index.md b/docs/index.md
index 9df7cac7..54e8c871 100644
--- a/docs/index.md
+++ b/docs/index.md
@@ -4,26 +4,31 @@ layout: layouts/default
menu-order: 0
---
-Culori is a color library for JavaScript that supports most color spaces and formats defined in the [CSS Colors Level 4][css4-colors] spec ([named colors][css4-named-colors], [hex colors](hex-colors) with 3 to 8 digits, [RGB](rgb-colors), [HSL](hsl-colors), [HWB](hwb-colors), [Lab and LCh](lab-colors)), plus [additional color spaces](./color-spaces).
+[css4-colors]: https://drafts.csswg.org/css-color/
+[css4-named-colors]: https://drafts.csswg.org/css-color/#named-colors
+[din99o]: https://de.wikipedia.org/wiki/DIN99-Farbraum
+[hex-colors]: https://drafts.csswg.org/css-color/#hex-notation
+[rgb-colors]: https://drafts.csswg.org/css-color/#rgb-functions
+[hsl-colors]: https://drafts.csswg.org/css-color/#the-hsl-notation
+[hwb-colors]: https://drafts.csswg.org/css-color/#the-hwb-notation
+[lab-colors]: https://drafts.csswg.org/css-color/#lab-colors
+
+Culori is a color library for JavaScript that supports most color spaces and formats defined in the [CSS Colors Level 4][css4-colors] specification ([named colors][css4-named-colors], [hex colors][hex-colors] with 3 to 8 digits, [RGB][rgb-colors], [HSL][hsl-colors], [HWB][hwb-colors], [Lab and LCh][lab-colors]), plus [additional color spaces](./color-spaces).
It handles [color differences](https://en.wikipedia.org/wiki/Color_difference), interpolation, gradients, blend modes [and more](./api).
+```bash
+npm install culori
+```
+
Get started
-## Another JS color library?
+## What sets Culori apart?
-Mike Bostock's [d3-color](https://github.com/d3/d3-color), and Gregor Aisch's [chroma.js](https://github.com/gka/chroma.js) are two excellent, robust libraries that provide most of what you need for working with colors on the web. The [Resources](./resources) section for even more libraries you can try.
+__A function-oriented API.__ Colors are represented as plain JavaScript objects you pass through a series of [functions](./api), which makes it super easy to extend.
-Culori does a few things differently:
+__Accurate alpha.__ On the `alpha` channel, the library doesn't equate an `undefined` value with an opaque color, but rather with a color for which we don't care about the opacity. This gives you the opportunity to interpret `undefined` as you see fit. The hex string #ff0000 _should_ probably be rendered as fully opaque red, but for running functions on colors it's useful to discern #ff0000 from #ff0000ff — the former has an implicit alpha of 1, while for the latter it's explicit.
-- The API is function-oriented rather than [fluent](https://en.wikipedia.org/wiki/Fluent_interface). Colors are represented as plain JavaScript objects you pass through a series of [functions](./api).
-- On the `alpha` channel, the library doesn't equate an `undefined` value with an opaque color, but rather with a color for which we don't care about the opacity. This gives you the opportunity to interpret `undefined` as you see fit. The hex string #ff0000 _should_ probably be rendered as fully opaque red, but for running functions on colors it's useful to discern #ff0000 from #ff0000ff — the former has an implicit alpha of 1, while for the latter it's explicit.
+__Comprehensive functionality.__ Build advanced color tools with Culori's rich collection of color spaces and functions.
-[css4-colors]: https://drafts.csswg.org/css-color/
-[css4-named-colors]: https://drafts.csswg.org/css-color/#named-colors
-[din99o]: https://de.wikipedia.org/wiki/DIN99-Farbraum
-[hex-colors]: https://drafts.csswg.org/css-color/#hex-notation
-[rgb-colors]: https://drafts.csswg.org/css-color/#rgb-functions
-[hsl-colors]: https://drafts.csswg.org/css-color/#the-hsl-notation
-[hwb-colors]: https://drafts.csswg.org/css-color/#the-hwb-notation
-[lab-colors]: https://drafts.csswg.org/css-color/#lab-colors
+__Tree-shakeable version available.__ When you're ready to optimize for bundle size, switch to [a tree-shakeable version of the library](./guides/tree-shaking).
diff --git a/docs/resources.md b/docs/resources.md
index 7bf7e214..b56ce5c7 100644
--- a/docs/resources.md
+++ b/docs/resources.md
@@ -1,7 +1,7 @@
---
layout: layouts/default
title: Resources
-menu-order: 4
+menu-order: 5
---
## Culori extras
@@ -16,7 +16,7 @@ These projects add more functionality to Culori, but they're separate as to keep
- [Moqups](https://moqups.com) — all our color-manipulation functions are handled by Culori.
-_Does your product/project use Culori? Create a PR and add yourself to this list!_
+Does your product/project use Culori? Create a PR and add yourself to this list.
## Similar projects
diff --git a/.eleventy.js b/eleventy.config.cjs
similarity index 83%
rename from .eleventy.js
rename to eleventy.config.cjs
index d49670cc..883bf443 100644
--- a/.eleventy.js
+++ b/eleventy.config.cjs
@@ -1,3 +1,5 @@
+const highlight = require('@11ty/eleventy-plugin-syntaxhighlight');
+
module.exports = function (env) {
env.addPassthroughCopy('docs/img');
env.addPassthroughCopy('docs/css');
@@ -14,7 +16,7 @@ module.exports = function (env) {
return 0;
});
});
- env.addPlugin(require('@11ty/eleventy-plugin-syntaxhighlight'));
+ env.addPlugin(highlight);
return {
pathPrefix: '/',
dir: {
diff --git a/package-lock.json b/package-lock.json
index 4ae675fd..8acc1bf1 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,29 +1,27 @@
{
"name": "culori",
- "version": "0.20.1",
+ "version": "1.0.0-alpha.14",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "culori",
- "version": "0.20.1",
+ "version": "1.0.0-alpha.14",
"license": "MIT",
"devDependencies": {
"@11ty/eleventy": "^0.12.1",
"@11ty/eleventy-plugin-syntaxhighlight": "^3.1.2",
- "@rollup/plugin-buble": "^0.21.3",
+ "esbuild": "^0.13.3",
"eslint": "^7.32.0",
"eslint-plugin-import": "^2.24.2",
- "esm": "^3.2.25",
"gh-pages": "^3.2.3",
- "husky": "^4.2.5",
- "nyc": "^15.1.0",
"prettier": "^2.4.1",
"pretty-quick": "^3.1.1",
- "rollup": "^2.56.3",
- "rollup-plugin-terser": "^7.0.2",
- "tap-spec": "^5.0.0",
+ "tap-spec": "^2.2.2",
"tape": "^5.3.1"
+ },
+ "engines": {
+ "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
}
},
"node_modules/@11ty/dependency-tree": {
@@ -99,12 +97,6 @@
"@11ty/eleventy": ">=0.5.4"
}
},
- "node_modules/@11ty/eleventy/node_modules/lodash": {
- "version": "4.17.21",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
- "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
- "dev": true
- },
"node_modules/@babel/code-frame": {
"version": "7.12.11",
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz",
@@ -114,197 +106,12 @@
"@babel/highlight": "^7.10.4"
}
},
- "node_modules/@babel/core": {
- "version": "7.12.10",
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.10.tgz",
- "integrity": "sha512-eTAlQKq65zHfkHZV0sIVODCPGVgoo1HdBlbSLi9CqOzuZanMv2ihzY+4paiKr1mH+XmYESMAmJ/dpZ68eN6d8w==",
- "dev": true,
- "dependencies": {
- "@babel/code-frame": "^7.10.4",
- "@babel/generator": "^7.12.10",
- "@babel/helper-module-transforms": "^7.12.1",
- "@babel/helpers": "^7.12.5",
- "@babel/parser": "^7.12.10",
- "@babel/template": "^7.12.7",
- "@babel/traverse": "^7.12.10",
- "@babel/types": "^7.12.10",
- "convert-source-map": "^1.7.0",
- "debug": "^4.1.0",
- "gensync": "^1.0.0-beta.1",
- "json5": "^2.1.2",
- "lodash": "^4.17.19",
- "semver": "^5.4.1",
- "source-map": "^0.5.0"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/babel"
- }
- },
- "node_modules/@babel/core/node_modules/semver": {
- "version": "5.7.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
- "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
- "dev": true,
- "bin": {
- "semver": "bin/semver"
- }
- },
- "node_modules/@babel/core/node_modules/source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/@babel/generator": {
- "version": "7.12.11",
- "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.11.tgz",
- "integrity": "sha512-Ggg6WPOJtSi8yYQvLVjG8F/TlpWDlKx0OpS4Kt+xMQPs5OaGYWy+v1A+1TvxI6sAMGZpKWWoAQ1DaeQbImlItA==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.12.11",
- "jsesc": "^2.5.1",
- "source-map": "^0.5.0"
- }
- },
- "node_modules/@babel/generator/node_modules/jsesc": {
- "version": "2.5.2",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
- "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
- "dev": true,
- "bin": {
- "jsesc": "bin/jsesc"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/@babel/generator/node_modules/source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/@babel/helper-function-name": {
- "version": "7.12.11",
- "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.11.tgz",
- "integrity": "sha512-AtQKjtYNolKNi6nNNVLQ27CP6D9oFR6bq/HPYSizlzbp7uC1M59XJe8L+0uXjbIaZaUJF99ruHqVGiKXU/7ybA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-get-function-arity": "^7.12.10",
- "@babel/template": "^7.12.7",
- "@babel/types": "^7.12.11"
- }
- },
- "node_modules/@babel/helper-get-function-arity": {
- "version": "7.12.10",
- "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.10.tgz",
- "integrity": "sha512-mm0n5BPjR06wh9mPQaDdXWDoll/j5UpCAPl1x8fS71GHm7HA6Ua2V4ylG1Ju8lvcTOietbPNNPaSilKj+pj+Ag==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.12.10"
- }
- },
- "node_modules/@babel/helper-member-expression-to-functions": {
- "version": "7.12.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.7.tgz",
- "integrity": "sha512-DCsuPyeWxeHgh1Dus7APn7iza42i/qXqiFPWyBDdOFtvS581JQePsc1F/nD+fHrcswhLlRc2UpYS1NwERxZhHw==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.12.7"
- }
- },
- "node_modules/@babel/helper-module-imports": {
- "version": "7.12.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.12.5.tgz",
- "integrity": "sha512-SR713Ogqg6++uexFRORf/+nPXMmWIn80TALu0uaFb+iQIUoR7bOC7zBWyzBs5b3tBBJXuyD0cRu1F15GyzjOWA==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.12.5"
- }
- },
- "node_modules/@babel/helper-module-transforms": {
- "version": "7.12.1",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.12.1.tgz",
- "integrity": "sha512-QQzehgFAZ2bbISiCpmVGfiGux8YVFXQ0abBic2Envhej22DVXV9nCFaS5hIQbkyo1AdGb+gNME2TSh3hYJVV/w==",
- "dev": true,
- "dependencies": {
- "@babel/helper-module-imports": "^7.12.1",
- "@babel/helper-replace-supers": "^7.12.1",
- "@babel/helper-simple-access": "^7.12.1",
- "@babel/helper-split-export-declaration": "^7.11.0",
- "@babel/helper-validator-identifier": "^7.10.4",
- "@babel/template": "^7.10.4",
- "@babel/traverse": "^7.12.1",
- "@babel/types": "^7.12.1",
- "lodash": "^4.17.19"
- }
- },
- "node_modules/@babel/helper-optimise-call-expression": {
- "version": "7.12.10",
- "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.10.tgz",
- "integrity": "sha512-4tpbU0SrSTjjt65UMWSrUOPZTsgvPgGG4S8QSTNHacKzpS51IVWGDj0yCwyeZND/i+LSN2g/O63jEXEWm49sYQ==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.12.10"
- }
- },
- "node_modules/@babel/helper-replace-supers": {
- "version": "7.12.11",
- "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.11.tgz",
- "integrity": "sha512-q+w1cqmhL7R0FNzth/PLLp2N+scXEK/L2AHbXUyydxp828F4FEa5WcVoqui9vFRiHDQErj9Zof8azP32uGVTRA==",
- "dev": true,
- "dependencies": {
- "@babel/helper-member-expression-to-functions": "^7.12.7",
- "@babel/helper-optimise-call-expression": "^7.12.10",
- "@babel/traverse": "^7.12.10",
- "@babel/types": "^7.12.11"
- }
- },
- "node_modules/@babel/helper-simple-access": {
- "version": "7.12.1",
- "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.12.1.tgz",
- "integrity": "sha512-OxBp7pMrjVewSSC8fXDFrHrBcJATOOFssZwv16F3/6Xtc138GHybBfPbm9kfiqQHKhYQrlamWILwlDCeyMFEaA==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.12.1"
- }
- },
- "node_modules/@babel/helper-split-export-declaration": {
- "version": "7.12.11",
- "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.11.tgz",
- "integrity": "sha512-LsIVN8j48gHgwzfocYUSkO/hjYAOJqlpJEc7tGXcIm4cubjVUf8LGW6eWRyxEu7gA25q02p0rQUWoCI33HNS5g==",
- "dev": true,
- "dependencies": {
- "@babel/types": "^7.12.11"
- }
- },
"node_modules/@babel/helper-validator-identifier": {
"version": "7.12.11",
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz",
"integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==",
"dev": true
},
- "node_modules/@babel/helpers": {
- "version": "7.12.5",
- "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.12.5.tgz",
- "integrity": "sha512-lgKGMQlKqA8meJqKsW6rUnc4MdUk35Ln0ATDqdM1a/UpARODdI4j5Y5lVfUScnSNkJcdCRAaWkspykNoFg9sJA==",
- "dev": true,
- "dependencies": {
- "@babel/template": "^7.10.4",
- "@babel/traverse": "^7.12.5",
- "@babel/types": "^7.12.5"
- }
- },
"node_modules/@babel/highlight": {
"version": "7.10.4",
"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz",
@@ -375,43 +182,6 @@
"node": ">=6.0.0"
}
},
- "node_modules/@babel/template": {
- "version": "7.12.7",
- "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.7.tgz",
- "integrity": "sha512-GkDzmHS6GV7ZeXfJZ0tLRBhZcMcY0/Lnb+eEbXDBfCAcZCjrZKe6p3J4we/D24O9Y8enxWAg1cWwof59yLh2ow==",
- "dev": true,
- "dependencies": {
- "@babel/code-frame": "^7.10.4",
- "@babel/parser": "^7.12.7",
- "@babel/types": "^7.12.7"
- }
- },
- "node_modules/@babel/traverse": {
- "version": "7.12.12",
- "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.12.tgz",
- "integrity": "sha512-s88i0X0lPy45RrLM8b9mz8RPH5FqO9G9p7ti59cToE44xFm1Q+Pjh5Gq4SXBbtb88X7Uy7pexeqRIQDDMNkL0w==",
- "dev": true,
- "dependencies": {
- "@babel/code-frame": "^7.12.11",
- "@babel/generator": "^7.12.11",
- "@babel/helper-function-name": "^7.12.11",
- "@babel/helper-split-export-declaration": "^7.12.11",
- "@babel/parser": "^7.12.11",
- "@babel/types": "^7.12.12",
- "debug": "^4.1.0",
- "globals": "^11.1.0",
- "lodash": "^4.17.19"
- }
- },
- "node_modules/@babel/traverse/node_modules/globals": {
- "version": "11.12.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
- "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
"node_modules/@babel/types": {
"version": "7.12.12",
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.12.tgz",
@@ -472,86 +242,6 @@
"integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==",
"dev": true
},
- "node_modules/@istanbuljs/load-nyc-config": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz",
- "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==",
- "dev": true,
- "dependencies": {
- "camelcase": "^5.3.1",
- "find-up": "^4.1.0",
- "get-package-type": "^0.1.0",
- "js-yaml": "^3.13.1",
- "resolve-from": "^5.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/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/@istanbuljs/load-nyc-config/node_modules/path-exists": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
- "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@istanbuljs/load-nyc-config/node_modules/resolve-from": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
- "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/@istanbuljs/schema": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz",
- "integrity": "sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/@nodelib/fs.scandir": {
"version": "2.1.4",
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.4.tgz",
@@ -587,55 +277,6 @@
"node": ">= 8"
}
},
- "node_modules/@rollup/plugin-buble": {
- "version": "0.21.3",
- "resolved": "https://registry.npmjs.org/@rollup/plugin-buble/-/plugin-buble-0.21.3.tgz",
- "integrity": "sha512-Iv8cCuFPnMdqV4pcyU+OrfjOfagPArRQ1PyQjx5KgHk3dARedI+8PNTLSMpJts0lQJr8yF2pAU4GxpxCBJ9HYw==",
- "dev": true,
- "dependencies": {
- "@rollup/pluginutils": "^3.0.8",
- "@types/buble": "^0.19.2",
- "buble": "^0.20.0"
- },
- "engines": {
- "node": ">= 8.0.0"
- },
- "peerDependencies": {
- "rollup": "^1.20.0||^2.0.0"
- }
- },
- "node_modules/@rollup/pluginutils": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz",
- "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==",
- "dev": true,
- "dependencies": {
- "@types/estree": "0.0.39",
- "estree-walker": "^1.0.1",
- "picomatch": "^2.2.2"
- },
- "engines": {
- "node": ">= 8.0.0"
- },
- "peerDependencies": {
- "rollup": "^1.20.0||^2.0.0"
- }
- },
- "node_modules/@types/buble": {
- "version": "0.19.2",
- "resolved": "https://registry.npmjs.org/@types/buble/-/buble-0.19.2.tgz",
- "integrity": "sha512-uUD8zIfXMKThmFkahTXDGI3CthFH1kMg2dOm3KLi4GlC5cbARA64bEcUMbbWdWdE73eoc/iBB9PiTMqH0dNS2Q==",
- "dev": true,
- "dependencies": {
- "magic-string": "^0.25.0"
- }
- },
- "node_modules/@types/estree": {
- "version": "0.0.39",
- "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz",
- "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==",
- "dev": true
- },
"node_modules/@types/json5": {
"version": "0.0.29",
"resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz",
@@ -648,18 +289,6 @@
"integrity": "sha512-1z8k4wzFnNjVK/tlxvrWuK5WMt6mydWWP7+zvH5eFep4oj+UkrfiJTRtjCeBXNpwaA/FYqqtb4/QS4ianFpIRA==",
"dev": true
},
- "node_modules/@types/node": {
- "version": "15.3.0",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-15.3.0.tgz",
- "integrity": "sha512-8/bnjSZD86ZfpBsDlCIkNXIvm+h6wi9g7IqL+kmFkQ+Wvu3JrasgLElfiPgoo8V8vVfnEi0QVS12gbl94h9YsQ==",
- "dev": true
- },
- "node_modules/@types/parse-json": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz",
- "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==",
- "dev": true
- },
"node_modules/@ungap/event-target": {
"version": "0.2.3",
"resolved": "https://registry.npmjs.org/@ungap/event-target/-/event-target-0.2.3.tgz",
@@ -703,15 +332,6 @@
"node": ">=0.4.0"
}
},
- "node_modules/acorn-dynamic-import": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-4.0.0.tgz",
- "integrity": "sha512-d3OEjQV4ROpoflsnUA8HozoIR504TFxNivYEUi6uwz0IYhBkTDXGuWlNdMtybRt3nqVx/L6XqMt0FxkXuWKZhw==",
- "dev": true,
- "peerDependencies": {
- "acorn": "^6.0.0"
- }
- },
"node_modules/acorn-jsx": {
"version": "5.3.1",
"resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz",
@@ -727,19 +347,6 @@
"integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=",
"dev": true
},
- "node_modules/aggregate-error": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz",
- "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==",
- "dev": true,
- "dependencies": {
- "clean-stack": "^2.0.0",
- "indent-string": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/ajv": {
"version": "6.12.6",
"resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
@@ -796,24 +403,6 @@
"node": ">= 8"
}
},
- "node_modules/append-transform": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-2.0.0.tgz",
- "integrity": "sha512-7yeyCEurROLQJFv5Xj4lEGTy0borxepjFv1g22oAdqFu//SrAlDl1O1Nxx15SH1RoliUml6p8dwJW9jvZughhg==",
- "dev": true,
- "dependencies": {
- "default-require-extensions": "^3.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/archy": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz",
- "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=",
- "dev": true
- },
"node_modules/argparse": {
"version": "1.0.10",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
@@ -838,6 +427,15 @@
"integrity": "sha1-uveeYubvTCpMC4MSMtr/7CUfnYM=",
"dev": true
},
+ "node_modules/array-find-index": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz",
+ "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/array-includes": {
"version": "3.1.3",
"resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz",
@@ -1154,148 +752,66 @@
"integrity": "sha1-YbU5PxH1JVntEgaTEANDtu2wTdU=",
"dev": true
},
- "node_modules/buble": {
- "version": "0.20.0",
- "resolved": "https://registry.npmjs.org/buble/-/buble-0.20.0.tgz",
- "integrity": "sha512-/1gnaMQE8xvd5qsNBl+iTuyjJ9XxeaVxAMF86dQ4EyxFJOZtsgOS8Ra+7WHgZTam5IFDtt4BguN0sH0tVTKrOw==",
+ "node_modules/bytes": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz",
+ "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/call-bind": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
+ "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
"dev": true,
"dependencies": {
- "acorn": "^6.4.1",
- "acorn-dynamic-import": "^4.0.0",
- "acorn-jsx": "^5.2.0",
- "chalk": "^2.4.2",
- "magic-string": "^0.25.7",
- "minimist": "^1.2.5",
- "regexpu-core": "4.5.4"
+ "function-bind": "^1.1.1",
+ "get-intrinsic": "^1.0.2"
},
- "bin": {
- "buble": "bin/buble"
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/buble/node_modules/acorn": {
- "version": "6.4.2",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz",
- "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==",
+ "node_modules/callsites": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
+ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
"dev": true,
- "bin": {
- "acorn": "bin/acorn"
- },
"engines": {
- "node": ">=0.4.0"
+ "node": ">=6"
}
},
- "node_modules/buble/node_modules/ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
- "dev": true,
- "dependencies": {
- "color-convert": "^1.9.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/buble/node_modules/chalk": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
- "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
- "dev": true,
- "dependencies": {
- "ansi-styles": "^3.2.1",
- "escape-string-regexp": "^1.0.5",
- "supports-color": "^5.3.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/buble/node_modules/has-flag": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
- "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/buble/node_modules/supports-color": {
- "version": "5.5.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
- "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
- "dev": true,
- "dependencies": {
- "has-flag": "^3.0.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/buffer-from": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
- "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==",
- "dev": true
- },
- "node_modules/buffer-shims": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/buffer-shims/-/buffer-shims-1.0.0.tgz",
- "integrity": "sha1-mXjOMXOIxkmth5MCjDR37wRKi1E=",
- "dev": true
- },
- "node_modules/bytes": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz",
- "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==",
- "dev": true,
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/caching-transform": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-4.0.0.tgz",
- "integrity": "sha512-kpqOvwXnjjN44D89K5ccQC+RUrsy7jB/XLlRrx0D7/2HNcTPqzsb6XgYoErwko6QsV184CA2YgS1fxDiiDZMWA==",
+ "node_modules/camelcase": {
+ "version": "5.3.1",
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
+ "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
"dev": true,
- "dependencies": {
- "hasha": "^5.0.0",
- "make-dir": "^3.0.0",
- "package-hash": "^4.0.0",
- "write-file-atomic": "^3.0.0"
- },
"engines": {
- "node": ">=8"
+ "node": ">=6"
}
},
- "node_modules/call-bind": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
- "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
+ "node_modules/camelcase-keys": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
+ "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
"dev": true,
"dependencies": {
- "function-bind": "^1.1.1",
- "get-intrinsic": "^1.0.2"
+ "camelcase": "^2.0.0",
+ "map-obj": "^1.0.0"
},
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/callsites": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
- "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
- "dev": true,
"engines": {
- "node": ">=6"
+ "node": ">=0.10.0"
}
},
- "node_modules/camelcase": {
- "version": "5.3.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
- "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
+ "node_modules/camelcase-keys/node_modules/camelcase": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
+ "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=",
"dev": true,
"engines": {
- "node": ">=6"
+ "node": ">=0.10.0"
}
},
"node_modules/chalk": {
@@ -1389,21 +905,6 @@
"fsevents": "~2.3.1"
}
},
- "node_modules/ci-info": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz",
- "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==",
- "dev": true
- },
- "node_modules/clean-stack": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz",
- "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
"node_modules/cliui": {
"version": "7.0.4",
"resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
@@ -1463,12 +964,6 @@
"integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=",
"dev": true
},
- "node_modules/compare-versions": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.6.0.tgz",
- "integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==",
- "dev": true
- },
"node_modules/component-bind": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz",
@@ -1572,15 +1067,6 @@
"@babel/types": "^7.6.1"
}
},
- "node_modules/convert-source-map": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz",
- "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==",
- "dev": true,
- "dependencies": {
- "safe-buffer": "~5.1.1"
- }
- },
"node_modules/cookie": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz",
@@ -1591,27 +1077,11 @@
}
},
"node_modules/core-util-is": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
- "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
+ "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==",
"dev": true
},
- "node_modules/cosmiconfig": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.0.tgz",
- "integrity": "sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA==",
- "dev": true,
- "dependencies": {
- "@types/parse-json": "^4.0.0",
- "import-fresh": "^3.2.1",
- "parse-json": "^5.0.0",
- "path-type": "^4.0.0",
- "yaml": "^1.10.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
"node_modules/cross-spawn": {
"version": "7.0.3",
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
@@ -1660,6 +1130,18 @@
"integrity": "sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==",
"dev": true
},
+ "node_modules/currently-unhandled": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz",
+ "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=",
+ "dev": true,
+ "dependencies": {
+ "array-find-index": "^1.0.1"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/date-time": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/date-time/-/date-time-0.1.1.tgz",
@@ -1739,18 +1221,6 @@
"integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
"dev": true
},
- "node_modules/default-require-extensions": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-3.0.0.tgz",
- "integrity": "sha512-ek6DpXq/SCpvjhpFsLFRVtIxJCRw6fUR42lYMVZuUMK7n8eMz4Uh5clckdBjEpLhn/gEBZo7hDJnJcwdKLKQjg==",
- "dev": true,
- "dependencies": {
- "strip-bom": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/define-properties": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz",
@@ -2205,11 +1675,241 @@
"url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/es6-error": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz",
- "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==",
- "dev": true
+ "node_modules/esbuild": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.13.3.tgz",
+ "integrity": "sha512-98xovMLKnyhv3gcReUuAEi5Ig1rK6SIgvsJuBIcfwzqGSEHsV8UJjMlmkhHoHMf9XZybMpE9Zax8AA8f7i2hlQ==",
+ "dev": true,
+ "hasInstallScript": true,
+ "bin": {
+ "esbuild": "bin/esbuild"
+ },
+ "optionalDependencies": {
+ "esbuild-android-arm64": "0.13.3",
+ "esbuild-darwin-64": "0.13.3",
+ "esbuild-darwin-arm64": "0.13.3",
+ "esbuild-freebsd-64": "0.13.3",
+ "esbuild-freebsd-arm64": "0.13.3",
+ "esbuild-linux-32": "0.13.3",
+ "esbuild-linux-64": "0.13.3",
+ "esbuild-linux-arm": "0.13.3",
+ "esbuild-linux-arm64": "0.13.3",
+ "esbuild-linux-mips64le": "0.13.3",
+ "esbuild-linux-ppc64le": "0.13.3",
+ "esbuild-openbsd-64": "0.13.3",
+ "esbuild-sunos-64": "0.13.3",
+ "esbuild-windows-32": "0.13.3",
+ "esbuild-windows-64": "0.13.3",
+ "esbuild-windows-arm64": "0.13.3"
+ }
+ },
+ "node_modules/esbuild-android-arm64": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.13.3.tgz",
+ "integrity": "sha512-jc9E8vGTHkzb0Vwl74H8liANV9BWsqtzLHaKvcsRgf1M+aVCBSF0gUheduAKfDsbDMT0judeMLhwBP34EUesTA==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "android"
+ ]
+ },
+ "node_modules/esbuild-darwin-64": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.13.3.tgz",
+ "integrity": "sha512-8bG3Zq+ZNuLlIJebOO2+weI7P2LVf33sOzaUfHj8MuJ+1Ixe4KtQxfYp7qhFnP6xP2ToJaYHxGUfLeiUCEz9hw==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ]
+ },
+ "node_modules/esbuild-darwin-arm64": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.13.3.tgz",
+ "integrity": "sha512-5E81eImYtTgh8pY7Gq4WQHhWkR/LvYadUXmuYeZBiP+3ADZJZcG60UFceZrjqNPaFOWKr/xmh4aNocwagEubcA==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "darwin"
+ ]
+ },
+ "node_modules/esbuild-freebsd-64": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.13.3.tgz",
+ "integrity": "sha512-ou+f91KkTGexi8HvF/BdtsITL6plbciQfZGys7QX6/QEwyE96PmL5KnU6ZQwoU7E99Ts6Sc9bUDq8HXJubKtBA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "freebsd"
+ ]
+ },
+ "node_modules/esbuild-freebsd-arm64": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.13.3.tgz",
+ "integrity": "sha512-F1zV7nySjHswJuvIgjkiG5liZ63MeazDGXGKViTCeegjZ71sAhOChcaGhKcu6vq9+vqZxlfEi1fmXlx6Pc3coQ==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "freebsd"
+ ]
+ },
+ "node_modules/esbuild-linux-32": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.13.3.tgz",
+ "integrity": "sha512-mHHc2v6uLrHH4zaaq5RB/5IWzgimEJ1HGldzf1qtGI513KZWfH0HRRQ8p1di4notJgBn7tDzWQ1f34ZHy69viQ==",
+ "cpu": [
+ "ia32"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/esbuild-linux-64": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.13.3.tgz",
+ "integrity": "sha512-FJ1De2O89mrOuqtaEXu41qIYJU6R41F+OA6vheNwcAQcX8fu0aiA13FJeLABq29BYJuTVgRj3cyC8q+tz19/dQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/esbuild-linux-arm": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.13.3.tgz",
+ "integrity": "sha512-9BJNRtLwBh3OP22cln9g3AJdbAQUcjRHqA4BScx9k4RZpGqPokFr548zpeplxWhcwrIjT8qPebwH9CrRVy8Bsw==",
+ "cpu": [
+ "arm"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/esbuild-linux-arm64": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.13.3.tgz",
+ "integrity": "sha512-Cauhr45KSo+wRUojs+1qfycQqQCAXTOvsWvkZ6xmEMAXLAm+f8RQGDQeP8CAf8Yeelnegcn6UNdvzdzLHhWDFg==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/esbuild-linux-mips64le": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.13.3.tgz",
+ "integrity": "sha512-YVzJUGCncuuLm2boYyVeuMFsak4ZAhdiBwi0xNDZCC8sy+tS6Boe2mzcrD2uubv5JKAUOrpN186S1DtU4WgBgw==",
+ "cpu": [
+ "mips64el"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/esbuild-linux-ppc64le": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.13.3.tgz",
+ "integrity": "sha512-GU6CqqKtJEoyxC2QWHiJtmuOz9wc/jMv8ZloK2WwiGY5yMvAmM3PI103Dj7xcjebNTHBqITTUw/aigY1wx5A3w==",
+ "cpu": [
+ "ppc64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/esbuild-openbsd-64": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.13.3.tgz",
+ "integrity": "sha512-HVpkgpn4BQt4BPDAjTOpeMub6mzNWw6Y3gaLQJrpbO24pws6ZwYkY24OI3/Uo3LDCbH6856MM81JxECt92OWjA==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "openbsd"
+ ]
+ },
+ "node_modules/esbuild-sunos-64": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.13.3.tgz",
+ "integrity": "sha512-XncBVOtnEfUbPV4CaiFBxh38ychnBfwCxuTm9iAqcHzIwkmeNRN5qMzDyfE1jyfJje+Bbt6AvIfz6SdYt8/UEQ==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "sunos"
+ ]
+ },
+ "node_modules/esbuild-windows-32": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.13.3.tgz",
+ "integrity": "sha512-ZlgDz7d1nk8wQACi+z8IDzNZVUlN9iprAme+1YSTsfFDlkyI8jeaGWPk9EQFNY7rJzsLVYm6eZ2mhPioc7uT5A==",
+ "cpu": [
+ "ia32"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
+ ]
+ },
+ "node_modules/esbuild-windows-64": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.13.3.tgz",
+ "integrity": "sha512-YX7KvRez3TR+GudlQm9tND/ssj2FsF9vb8ZWzAoZOLxpPzE3y+3SFJNrfDzzQKPzJ0Pnh9KBP4gsaMwJjKHDhw==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
+ ]
+ },
+ "node_modules/esbuild-windows-arm64": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.13.3.tgz",
+ "integrity": "sha512-nP7H0Y2a6OJd3Qi1Q8sehhyP4x4JoXK4S5y6FzH2vgaJgiyEurzFxjUufGdMaw+RxtxiwD/uRndUgwaZ2JD8lg==",
+ "cpu": [
+ "arm64"
+ ],
+ "dev": true,
+ "optional": true,
+ "os": [
+ "win32"
+ ]
},
"node_modules/escalade": {
"version": "3.1.1",
@@ -2486,15 +2186,6 @@
"node": ">=8"
}
},
- "node_modules/esm": {
- "version": "3.2.25",
- "resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz",
- "integrity": "sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
"node_modules/espree": {
"version": "7.3.1",
"resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz",
@@ -2582,12 +2273,6 @@
"node": ">=4.0"
}
},
- "node_modules/estree-walker": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz",
- "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==",
- "dev": true
- },
"node_modules/esutils": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
@@ -2691,19 +2376,6 @@
"reusify": "^1.0.4"
}
},
- "node_modules/figures": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz",
- "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=",
- "dev": true,
- "dependencies": {
- "escape-string-regexp": "^1.0.5",
- "object-assign": "^4.1.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/file-entry-cache": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
@@ -2810,18 +2482,6 @@
"node": ">=4"
}
},
- "node_modules/find-versions": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-3.2.0.tgz",
- "integrity": "sha512-P8WRou2S+oe222TOCHitLy8zj+SIsVJh52VP4lvXkaFVnOFFdoWv1H1Jjvel1aI6NCFOAaeAVm8qrI0odiLcww==",
- "dev": true,
- "dependencies": {
- "semver-regex": "^2.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
"node_modules/flat-cache": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
@@ -2891,19 +2551,6 @@
"integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=",
"dev": true
},
- "node_modules/foreground-child": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz",
- "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==",
- "dev": true,
- "dependencies": {
- "cross-spawn": "^7.0.0",
- "signal-exit": "^3.0.2"
- },
- "engines": {
- "node": ">=8.0.0"
- }
- },
"node_modules/fresh": {
"version": "0.5.2",
"resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
@@ -2913,26 +2560,6 @@
"node": ">= 0.6"
}
},
- "node_modules/fromentries": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz",
- "integrity": "sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg==",
- "dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ]
- },
"node_modules/fs-extra": {
"version": "8.1.0",
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz",
@@ -2988,15 +2615,6 @@
"integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
"dev": true
},
- "node_modules/gensync": {
- "version": "1.0.0-beta.2",
- "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
- "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
- "dev": true,
- "engines": {
- "node": ">=6.9.0"
- }
- },
"node_modules/get-caller-file": {
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
@@ -3029,6 +2647,15 @@
"node": ">=8.0.0"
}
},
+ "node_modules/get-stdin": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
+ "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/get-stream": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
@@ -3353,34 +2980,12 @@
"url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/hasha": {
- "version": "5.2.2",
- "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz",
- "integrity": "sha512-Hrp5vIK/xr5SkeN2onO32H0MgNZ0f17HRNH39WfL0SYUNOTZ5Lz1TJ8Pajo/87dYGEFlLMm7mIc/k/s6Bvz9HQ==",
- "dev": true,
- "dependencies": {
- "is-stream": "^2.0.0",
- "type-fest": "^0.8.0"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/hosted-git-info": {
"version": "2.8.9",
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
"integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==",
"dev": true
},
- "node_modules/html-escaper": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz",
- "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==",
- "dev": true
- },
"node_modules/htmlparser2": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz",
@@ -3448,106 +3053,6 @@
"node": ">=8.12.0"
}
},
- "node_modules/husky": {
- "version": "4.3.6",
- "resolved": "https://registry.npmjs.org/husky/-/husky-4.3.6.tgz",
- "integrity": "sha512-o6UjVI8xtlWRL5395iWq9LKDyp/9TE7XMOTvIpEVzW638UcGxTmV5cfel6fsk/jbZSTlvfGVJf2svFtybcIZag==",
- "dev": true,
- "hasInstallScript": true,
- "dependencies": {
- "chalk": "^4.0.0",
- "ci-info": "^2.0.0",
- "compare-versions": "^3.6.0",
- "cosmiconfig": "^7.0.0",
- "find-versions": "^3.2.0",
- "opencollective-postinstall": "^2.0.2",
- "pkg-dir": "^4.2.0",
- "please-upgrade-node": "^3.2.0",
- "slash": "^3.0.0",
- "which-pm-runs": "^1.0.0"
- },
- "bin": {
- "husky-run": "bin/run.js",
- "husky-upgrade": "lib/upgrader/bin.js"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/husky"
- }
- },
- "node_modules/husky/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/husky/node_modules/chalk": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
- "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
- "dev": true,
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "node_modules/husky/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/husky/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "node_modules/husky/node_modules/slash": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
- "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/husky/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/iconv-lite": {
"version": "0.4.24",
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
@@ -3604,12 +3109,15 @@
}
},
"node_modules/indent-string": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz",
- "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==",
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz",
+ "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=",
"dev": true,
+ "dependencies": {
+ "repeating": "^2.0.0"
+ },
"engines": {
- "node": ">=8"
+ "node": ">=0.10.0"
}
},
"node_modules/indexof": {
@@ -3995,12 +3503,6 @@
"url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/is-typedarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
- "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=",
- "dev": true
- },
"node_modules/is-unc-path": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz",
@@ -4013,6 +3515,12 @@
"node": ">=0.10.0"
}
},
+ "node_modules/is-utf8": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz",
+ "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=",
+ "dev": true
+ },
"node_modules/is-weakmap": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz",
@@ -4070,169 +3578,12 @@
"integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
"dev": true
},
- "node_modules/istanbul-lib-coverage": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz",
- "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/istanbul-lib-hook": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-3.0.0.tgz",
- "integrity": "sha512-Pt/uge1Q9s+5VAZ+pCo16TYMWPBIl+oaNIjgLQxcX0itS6ueeaA+pEfThZpH8WxhFgCiEb8sAJY6MdUKgiIWaQ==",
- "dev": true,
- "dependencies": {
- "append-transform": "^2.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/istanbul-lib-instrument": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz",
- "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==",
- "dev": true,
- "dependencies": {
- "@babel/core": "^7.7.5",
- "@istanbuljs/schema": "^0.1.2",
- "istanbul-lib-coverage": "^3.0.0",
- "semver": "^6.3.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/istanbul-lib-instrument/node_modules/semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
- "dev": true,
- "bin": {
- "semver": "bin/semver.js"
- }
- },
- "node_modules/istanbul-lib-processinfo": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/istanbul-lib-processinfo/-/istanbul-lib-processinfo-2.0.2.tgz",
- "integrity": "sha512-kOwpa7z9hme+IBPZMzQ5vdQj8srYgAtaRqeI48NGmAQ+/5yKiHLV0QbYqQpxsdEF0+w14SoB8YbnHKcXE2KnYw==",
- "dev": true,
- "dependencies": {
- "archy": "^1.0.0",
- "cross-spawn": "^7.0.0",
- "istanbul-lib-coverage": "^3.0.0-alpha.1",
- "make-dir": "^3.0.0",
- "p-map": "^3.0.0",
- "rimraf": "^3.0.0",
- "uuid": "^3.3.3"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/istanbul-lib-processinfo/node_modules/rimraf": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
- "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
- "dev": true,
- "dependencies": {
- "glob": "^7.1.3"
- },
- "bin": {
- "rimraf": "bin.js"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/istanbul-lib-report": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz",
- "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==",
- "dev": true,
- "dependencies": {
- "istanbul-lib-coverage": "^3.0.0",
- "make-dir": "^3.0.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/istanbul-lib-report/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/istanbul-lib-source-maps": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz",
- "integrity": "sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==",
- "dev": true,
- "dependencies": {
- "debug": "^4.1.1",
- "istanbul-lib-coverage": "^3.0.0",
- "source-map": "^0.6.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/istanbul-reports": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz",
- "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==",
- "dev": true,
- "dependencies": {
- "html-escaper": "^2.0.0",
- "istanbul-lib-report": "^3.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/javascript-stringify": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/javascript-stringify/-/javascript-stringify-2.1.0.tgz",
"integrity": "sha512-JVAfqNPTvNq3sB/VHQJAFxN/sPgKnsKrCwyRt15zwNCdrMMJDdcEOdubuy+DuJYYdm0ox1J4uzEuYKkN+9yhVg==",
"dev": true
},
- "node_modules/jest-worker": {
- "version": "26.6.2",
- "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz",
- "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==",
- "dev": true,
- "dependencies": {
- "@types/node": "*",
- "merge-stream": "^2.0.0",
- "supports-color": "^7.0.0"
- },
- "engines": {
- "node": ">= 10.13.0"
- }
- },
- "node_modules/jest-worker/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/js-beautify": {
"version": "1.13.13",
"resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.13.13.tgz",
@@ -4279,27 +3630,12 @@
"js-yaml": "bin/js-yaml.js"
}
},
- "node_modules/jsesc": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
- "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=",
- "dev": true,
- "bin": {
- "jsesc": "bin/jsesc"
- }
- },
"node_modules/json-parse-better-errors": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
"integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==",
"dev": true
},
- "node_modules/json-parse-even-better-errors": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
- "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
- "dev": true
- },
"node_modules/json-schema-traverse": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
@@ -4312,21 +3648,6 @@
"integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=",
"dev": true
},
- "node_modules/json5": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz",
- "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==",
- "dev": true,
- "dependencies": {
- "minimist": "^1.2.5"
- },
- "bin": {
- "json5": "lib/cli.js"
- },
- "engines": {
- "node": ">=6"
- }
- },
"node_modules/jsonfile": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-3.0.1.tgz",
@@ -4383,12 +3704,6 @@
"integrity": "sha512-FWWMIEOxz3GwUI4Ts/IvgVy6LPvoMPgjMdQ185nN6psJyBJ4yOpzqm695/h5umdLJg2vW3GR5iG11MAkR2AzJA==",
"dev": true
},
- "node_modules/lines-and-columns": {
- "version": "1.1.6",
- "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz",
- "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=",
- "dev": true
- },
"node_modules/linkedom": {
"version": "0.11.1",
"resolved": "https://registry.npmjs.org/linkedom/-/linkedom-0.11.1.tgz",
@@ -4543,12 +3858,6 @@
"integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=",
"dev": true
},
- "node_modules/lodash.flattendeep": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz",
- "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=",
- "dev": true
- },
"node_modules/lodash.isfinite": {
"version": "3.3.2",
"resolved": "https://registry.npmjs.org/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz",
@@ -4567,6 +3876,19 @@
"integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=",
"dev": true
},
+ "node_modules/loud-rejection": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz",
+ "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=",
+ "dev": true,
+ "dependencies": {
+ "currently-unhandled": "^0.4.1",
+ "signal-exit": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/lru-cache": {
"version": "4.1.5",
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz",
@@ -4586,15 +3908,6 @@
"node": "*"
}
},
- "node_modules/magic-string": {
- "version": "0.25.7",
- "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz",
- "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==",
- "dev": true,
- "dependencies": {
- "sourcemap-codec": "^1.4.4"
- }
- },
"node_modules/make-dir": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
@@ -4628,6 +3941,15 @@
"node": ">=0.10.0"
}
},
+ "node_modules/map-obj": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
+ "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/markdown-it": {
"version": "10.0.0",
"resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-10.0.0.tgz",
@@ -4695,6 +4017,95 @@
"integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=",
"dev": true
},
+ "node_modules/meow": {
+ "version": "3.7.0",
+ "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
+ "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=",
+ "dev": true,
+ "dependencies": {
+ "camelcase-keys": "^2.0.0",
+ "decamelize": "^1.1.2",
+ "loud-rejection": "^1.0.0",
+ "map-obj": "^1.0.1",
+ "minimist": "^1.1.3",
+ "normalize-package-data": "^2.3.4",
+ "object-assign": "^4.0.1",
+ "read-pkg-up": "^1.0.1",
+ "redent": "^1.0.0",
+ "trim-newlines": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/meow/node_modules/find-up": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
+ "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=",
+ "dev": true,
+ "dependencies": {
+ "path-exists": "^2.0.0",
+ "pinkie-promise": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/meow/node_modules/load-json-file": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz",
+ "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=",
+ "dev": true,
+ "dependencies": {
+ "graceful-fs": "^4.1.2",
+ "parse-json": "^2.2.0",
+ "pify": "^2.0.0",
+ "pinkie-promise": "^2.0.0",
+ "strip-bom": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/meow/node_modules/path-exists": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz",
+ "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=",
+ "dev": true,
+ "dependencies": {
+ "pinkie-promise": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/meow/node_modules/read-pkg": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz",
+ "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=",
+ "dev": true,
+ "dependencies": {
+ "load-json-file": "^1.0.0",
+ "normalize-package-data": "^2.3.2",
+ "path-type": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/meow/node_modules/read-pkg-up": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz",
+ "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=",
+ "dev": true,
+ "dependencies": {
+ "find-up": "^1.0.0",
+ "read-pkg": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/merge-stream": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
@@ -4880,18 +4291,6 @@
"integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==",
"dev": true
},
- "node_modules/node-preload": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz",
- "integrity": "sha512-RM5oyBy45cLEoHqCeh+MNuFAxO0vTFBLskvQbOKnEE7YTTSN4tbN8QWDIPQ6L+WvKsB/qLEGpYe2ZZ9d4W9OIQ==",
- "dev": true,
- "dependencies": {
- "process-on-spawn": "^1.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/nopt": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz",
@@ -4963,147 +4362,36 @@
},
"node_modules/nunjucks": {
"version": "3.2.3",
- "resolved": "https://registry.npmjs.org/nunjucks/-/nunjucks-3.2.3.tgz",
- "integrity": "sha512-psb6xjLj47+fE76JdZwskvwG4MYsQKXUtMsPh6U0YMvmyjRtKRFcxnlXGWglNybtNTNVmGdp94K62/+NjF5FDQ==",
- "dev": true,
- "dependencies": {
- "a-sync-waterfall": "^1.0.0",
- "asap": "^2.0.3",
- "commander": "^5.1.0"
- },
- "bin": {
- "nunjucks-precompile": "bin/precompile"
- },
- "engines": {
- "node": ">= 6.9.0"
- },
- "peerDependencies": {
- "chokidar": "^3.3.0"
- },
- "peerDependenciesMeta": {
- "chokidar": {
- "optional": true
- }
- }
- },
- "node_modules/nunjucks/node_modules/commander": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz",
- "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==",
- "dev": true,
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/nyc": {
- "version": "15.1.0",
- "resolved": "https://registry.npmjs.org/nyc/-/nyc-15.1.0.tgz",
- "integrity": "sha512-jMW04n9SxKdKi1ZMGhvUTHBN0EICCRkHemEoE5jm6mTYcqcdas0ATzgUgejlQUHMvpnOZqGB5Xxsv9KxJW1j8A==",
- "dev": true,
- "dependencies": {
- "@istanbuljs/load-nyc-config": "^1.0.0",
- "@istanbuljs/schema": "^0.1.2",
- "caching-transform": "^4.0.0",
- "convert-source-map": "^1.7.0",
- "decamelize": "^1.2.0",
- "find-cache-dir": "^3.2.0",
- "find-up": "^4.1.0",
- "foreground-child": "^2.0.0",
- "get-package-type": "^0.1.0",
- "glob": "^7.1.6",
- "istanbul-lib-coverage": "^3.0.0",
- "istanbul-lib-hook": "^3.0.0",
- "istanbul-lib-instrument": "^4.0.0",
- "istanbul-lib-processinfo": "^2.0.2",
- "istanbul-lib-report": "^3.0.0",
- "istanbul-lib-source-maps": "^4.0.0",
- "istanbul-reports": "^3.0.2",
- "make-dir": "^3.0.0",
- "node-preload": "^0.2.1",
- "p-map": "^3.0.0",
- "process-on-spawn": "^1.0.0",
- "resolve-from": "^5.0.0",
- "rimraf": "^3.0.0",
- "signal-exit": "^3.0.2",
- "spawn-wrap": "^2.0.0",
- "test-exclude": "^6.0.0",
- "yargs": "^15.0.2"
- },
- "bin": {
- "nyc": "bin/nyc.js"
- },
- "engines": {
- "node": ">=8.9"
- }
- },
- "node_modules/nyc/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/nyc/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/nyc/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/nyc/node_modules/path-exists": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
- "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/nyc/node_modules/resolve-from": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
- "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/nyc/node_modules/rimraf": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
- "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
+ "resolved": "https://registry.npmjs.org/nunjucks/-/nunjucks-3.2.3.tgz",
+ "integrity": "sha512-psb6xjLj47+fE76JdZwskvwG4MYsQKXUtMsPh6U0YMvmyjRtKRFcxnlXGWglNybtNTNVmGdp94K62/+NjF5FDQ==",
"dev": true,
"dependencies": {
- "glob": "^7.1.3"
+ "a-sync-waterfall": "^1.0.0",
+ "asap": "^2.0.3",
+ "commander": "^5.1.0"
},
"bin": {
- "rimraf": "bin.js"
+ "nunjucks-precompile": "bin/precompile"
},
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
+ "engines": {
+ "node": ">= 6.9.0"
+ },
+ "peerDependencies": {
+ "chokidar": "^3.3.0"
+ },
+ "peerDependenciesMeta": {
+ "chokidar": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/nunjucks/node_modules/commander": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz",
+ "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==",
+ "dev": true,
+ "engines": {
+ "node": ">= 6"
}
},
"node_modules/object-assign": {
@@ -5250,15 +4538,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/opencollective-postinstall": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz",
- "integrity": "sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q==",
- "dev": true,
- "bin": {
- "opencollective-postinstall": "index.js"
- }
- },
"node_modules/openurl": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/openurl/-/openurl-1.1.1.tgz",
@@ -5342,18 +4621,6 @@
"node": ">=4"
}
},
- "node_modules/p-map": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz",
- "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==",
- "dev": true,
- "dependencies": {
- "aggregate-error": "^3.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/p-try": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
@@ -5363,21 +4630,6 @@
"node": ">=6"
}
},
- "node_modules/package-hash": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-4.0.0.tgz",
- "integrity": "sha512-whdkPIooSu/bASggZ96BWVvZTRMOFxnyUG5PnTSGKoJE2gd5mbVNmR2Nj20QFzxYYgAXpoqC+AiXzl+UMRh7zQ==",
- "dev": true,
- "dependencies": {
- "graceful-fs": "^4.1.15",
- "hasha": "^5.0.0",
- "lodash.flattendeep": "^4.4.0",
- "release-zalgo": "^1.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/parent-module": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
@@ -5405,21 +4657,15 @@
}
},
"node_modules/parse-json": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.1.0.tgz",
- "integrity": "sha512-+mi/lmVVNKFNVyLXV31ERiy2CY5E1/F6QtJFEzoChPRwwngMNXRDQ9GJ5WdE2Z2P4AujsOi0/+2qHID68KwfIQ==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz",
+ "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=",
"dev": true,
"dependencies": {
- "@babel/code-frame": "^7.0.0",
- "error-ex": "^1.3.1",
- "json-parse-even-better-errors": "^2.3.0",
- "lines-and-columns": "^1.1.6"
+ "error-ex": "^1.2.0"
},
"engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "node": ">=0.10.0"
}
},
"node_modules/parse-ms": {
@@ -5486,9 +4732,9 @@
}
},
"node_modules/path-parse": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz",
- "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==",
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
+ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
"dev": true
},
"node_modules/path-root": {
@@ -5513,12 +4759,17 @@
}
},
"node_modules/path-type": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
- "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz",
+ "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=",
"dev": true,
+ "dependencies": {
+ "graceful-fs": "^4.1.2",
+ "pify": "^2.0.0",
+ "pinkie-promise": "^2.0.0"
+ },
"engines": {
- "node": ">=8"
+ "node": ">=0.10.0"
}
},
"node_modules/picomatch": {
@@ -5857,24 +5108,6 @@
"integrity": "sha512-mNPsedLuk90RVJioIky8ANZEwYm5w9LcvCXrxHlwf4fNVSn8jEipMybMkWUyyF0JhnC+C4VcOVSBuHRKs1L5Ow==",
"dev": true
},
- "node_modules/process-nextick-args": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz",
- "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=",
- "dev": true
- },
- "node_modules/process-on-spawn": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/process-on-spawn/-/process-on-spawn-1.0.0.tgz",
- "integrity": "sha512-1WsPDsUSMmZH5LeMLegqkPDrsGgsWwk1Exipy2hvB0o/F0ASzbpIctSCcZIK1ykJvtTJULEH+20WOFjMvGnCTg==",
- "dev": true,
- "dependencies": {
- "fromentries": "^1.2.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/progress": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
@@ -6083,15 +5316,6 @@
}
]
},
- "node_modules/randombytes": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
- "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
- "dev": true,
- "dependencies": {
- "safe-buffer": "^5.1.0"
- }
- },
"node_modules/range-parser": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz",
@@ -6116,12 +5340,6 @@
"node": ">= 0.8"
}
},
- "node_modules/re-emitter": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/re-emitter/-/re-emitter-1.1.3.tgz",
- "integrity": "sha1-+p4xn/3u6zWycpbvDz03TawvUqc=",
- "dev": true
- },
"node_modules/read-pkg": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz",
@@ -6171,24 +5389,21 @@
}
},
"node_modules/readable-stream": {
- "version": "2.2.9",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.9.tgz",
- "integrity": "sha1-z3jsb0ptHrQ9JkiMrJfwQudLf8g=",
+ "version": "1.1.14",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
+ "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
"dev": true,
"dependencies": {
- "buffer-shims": "~1.0.0",
"core-util-is": "~1.0.0",
"inherits": "~2.0.1",
- "isarray": "~1.0.0",
- "process-nextick-args": "~1.0.6",
- "string_decoder": "~1.0.0",
- "util-deprecate": "~1.0.1"
+ "isarray": "0.0.1",
+ "string_decoder": "~0.10.x"
}
},
"node_modules/readable-stream/node_modules/isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
+ "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",
"dev": true
},
"node_modules/readdirp": {
@@ -6233,22 +5448,17 @@
"mkdirp": "bin/cmd.js"
}
},
- "node_modules/regenerate": {
- "version": "1.4.2",
- "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz",
- "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==",
- "dev": true
- },
- "node_modules/regenerate-unicode-properties": {
- "version": "8.2.0",
- "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz",
- "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==",
+ "node_modules/redent": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz",
+ "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=",
"dev": true,
"dependencies": {
- "regenerate": "^1.4.0"
+ "indent-string": "^2.1.0",
+ "strip-indent": "^1.0.1"
},
"engines": {
- "node": ">=4"
+ "node": ">=0.10.0"
}
},
"node_modules/regexp.prototype.flags": {
@@ -6279,60 +5489,16 @@
"url": "https://github.com/sponsors/mysticatea"
}
},
- "node_modules/regexpu-core": {
- "version": "4.5.4",
- "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.5.4.tgz",
- "integrity": "sha512-BtizvGtFQKGPUcTy56o3nk1bGRp4SZOTYrDtGNlqCQufptV5IkkLN6Emw+yunAJjzf+C9FQFtvq7IoA3+oMYHQ==",
- "dev": true,
- "dependencies": {
- "regenerate": "^1.4.0",
- "regenerate-unicode-properties": "^8.0.2",
- "regjsgen": "^0.5.0",
- "regjsparser": "^0.6.0",
- "unicode-match-property-ecmascript": "^1.0.4",
- "unicode-match-property-value-ecmascript": "^1.1.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/regjsgen": {
- "version": "0.5.2",
- "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz",
- "integrity": "sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==",
- "dev": true
- },
- "node_modules/regjsparser": {
- "version": "0.6.4",
- "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.4.tgz",
- "integrity": "sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw==",
- "dev": true,
- "dependencies": {
- "jsesc": "~0.5.0"
- },
- "bin": {
- "regjsparser": "bin/parser"
- }
- },
- "node_modules/release-zalgo": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz",
- "integrity": "sha1-CXALflB0Mpc5Mw5TXFqQ+2eFFzA=",
+ "node_modules/repeating": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz",
+ "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=",
"dev": true,
"dependencies": {
- "es6-error": "^4.0.1"
+ "is-finite": "^1.0.0"
},
"engines": {
- "node": ">=4"
- }
- },
- "node_modules/repeat-string": {
- "version": "1.6.1",
- "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
- "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=",
- "dev": true,
- "engines": {
- "node": ">=0.10"
+ "node": ">=0.10.0"
}
},
"node_modules/require-directory": {
@@ -6440,36 +5606,6 @@
"rimraf": "bin.js"
}
},
- "node_modules/rollup": {
- "version": "2.56.3",
- "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.56.3.tgz",
- "integrity": "sha512-Au92NuznFklgQCUcV96iXlxUbHuB1vQMaH76DHl5M11TotjOHwqk9CwcrT78+Tnv4FN9uTBxq6p4EJoYkpyekg==",
- "dev": true,
- "bin": {
- "rollup": "dist/bin/rollup"
- },
- "engines": {
- "node": ">=10.0.0"
- },
- "optionalDependencies": {
- "fsevents": "~2.3.2"
- }
- },
- "node_modules/rollup-plugin-terser": {
- "version": "7.0.2",
- "resolved": "https://registry.npmjs.org/rollup-plugin-terser/-/rollup-plugin-terser-7.0.2.tgz",
- "integrity": "sha512-w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ==",
- "dev": true,
- "dependencies": {
- "@babel/code-frame": "^7.10.4",
- "jest-worker": "^26.2.1",
- "serialize-javascript": "^4.0.0",
- "terser": "^5.0.0"
- },
- "peerDependencies": {
- "rollup": "^2.0.0"
- }
- },
"node_modules/run-parallel": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
@@ -6511,12 +5647,6 @@
"npm": ">=2.0.0"
}
},
- "node_modules/safe-buffer": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
- "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
- "dev": true
- },
"node_modules/safer-buffer": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
@@ -6557,15 +5687,6 @@
"integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=",
"dev": true
},
- "node_modules/semver-regex": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-2.0.0.tgz",
- "integrity": "sha512-mUdIBBvdn0PLOeP3TEkMH7HHeUP3GjsXCwKarjv/kGmUFOYg1VqEemKhoQpWMu6X2I8kHeuVdGibLGkVK+/5Qw==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
"node_modules/semver/node_modules/lru-cache": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
@@ -6653,15 +5774,6 @@
"node": ">= 0.6"
}
},
- "node_modules/serialize-javascript": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz",
- "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==",
- "dev": true,
- "dependencies": {
- "randombytes": "^2.1.0"
- }
- },
"node_modules/serve-index": {
"version": "1.9.1",
"resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz",
@@ -6983,54 +6095,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/source-map-support": {
- "version": "0.5.19",
- "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz",
- "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==",
- "dev": true,
- "dependencies": {
- "buffer-from": "^1.0.0",
- "source-map": "^0.6.0"
- }
- },
- "node_modules/sourcemap-codec": {
- "version": "1.4.8",
- "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
- "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==",
- "dev": true
- },
- "node_modules/spawn-wrap": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-2.0.0.tgz",
- "integrity": "sha512-EeajNjfN9zMnULLwhZZQU3GWBoFNkbngTUPfaawT4RkMiviTxcX0qfhVbGey39mfctfDHkWtuecgQ8NJcyQWHg==",
- "dev": true,
- "dependencies": {
- "foreground-child": "^2.0.0",
- "is-windows": "^1.0.2",
- "make-dir": "^3.0.0",
- "rimraf": "^3.0.0",
- "signal-exit": "^3.0.2",
- "which": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/spawn-wrap/node_modules/rimraf": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
- "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
- "dev": true,
- "dependencies": {
- "glob": "^7.1.3"
- },
- "bin": {
- "rimraf": "bin.js"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
"node_modules/spdx-correct": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz",
@@ -7063,18 +6127,6 @@
"integrity": "sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==",
"dev": true
},
- "node_modules/split": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/split/-/split-1.0.0.tgz",
- "integrity": "sha1-xDlc5oOrzSVLwo/h2rtuXCfc/64=",
- "dev": true,
- "dependencies": {
- "through": "2"
- },
- "engines": {
- "node": "*"
- }
- },
"node_modules/sprintf-js": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
@@ -7107,13 +6159,10 @@
}
},
"node_modules/string_decoder": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
- "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
- "dev": true,
- "dependencies": {
- "safe-buffer": "~5.1.0"
- }
+ "version": "0.10.31",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
+ "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",
+ "dev": true
},
"node_modules/string-width": {
"version": "4.2.2",
@@ -7206,12 +6255,15 @@
}
},
"node_modules/strip-bom": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz",
- "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==",
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
+ "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
"dev": true,
+ "dependencies": {
+ "is-utf8": "^0.2.0"
+ },
"engines": {
- "node": ">=8"
+ "node": ">=0.10.0"
}
},
"node_modules/strip-bom-string": {
@@ -7232,6 +6284,21 @@
"node": ">=6"
}
},
+ "node_modules/strip-indent": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz",
+ "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=",
+ "dev": true,
+ "dependencies": {
+ "get-stdin": "^4.0.1"
+ },
+ "bin": {
+ "strip-indent": "cli.js"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/strip-json-comments": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
@@ -7334,35 +6401,37 @@
"node": ">=8"
}
},
- "node_modules/tap-out": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/tap-out/-/tap-out-2.1.0.tgz",
- "integrity": "sha512-LJE+TBoVbOWhwdz4+FQk40nmbIuxJLqaGvj3WauQw3NYYU5TdjoV3C0x/yq37YAvVyi+oeBXmWnxWSjJ7IEyUw==",
+ "node_modules/tap-parser": {
+ "version": "0.7.0",
+ "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-0.7.0.tgz",
+ "integrity": "sha1-coph1kaApbSNXb2dvQpNSPXDW8s=",
"dev": true,
"dependencies": {
- "re-emitter": "1.1.3",
- "readable-stream": "2.2.9",
- "split": "1.0.0",
- "trim": "0.0.1"
+ "inherits": "~2.0.1",
+ "minimist": "^0.2.0",
+ "readable-stream": "~1.1.11"
},
"bin": {
- "tap-out": "bin/cmd.js"
+ "tap-parser": "bin/cmd.js"
}
},
+ "node_modules/tap-parser/node_modules/minimist": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.2.1.tgz",
+ "integrity": "sha512-GY8fANSrTMfBVfInqJAY41QkOM+upUTytK1jZ0c8+3HdHrJxBJ3rF5i9moClXTE8uUSnUo8cAsCoxDXvSY4DHg==",
+ "dev": true
+ },
"node_modules/tap-spec": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/tap-spec/-/tap-spec-5.0.0.tgz",
- "integrity": "sha512-zMDVJiE5I6Y4XGjlueGXJIX2YIkbDN44broZlnypT38Hj/czfOXrszHNNJBF/DXR8n+x6gbfSx68x04kIEHdrw==",
+ "version": "2.2.2",
+ "resolved": "https://registry.npmjs.org/tap-spec/-/tap-spec-2.2.2.tgz",
+ "integrity": "sha1-FK2zmgX5ZMgR73B1lzINO7K7K9o=",
"dev": true,
"dependencies": {
"chalk": "^1.0.0",
"duplexer": "^0.1.1",
- "figures": "^1.4.0",
- "lodash": "^4.17.10",
- "pretty-ms": "^2.1.0",
- "repeat-string": "^1.5.2",
- "tap-out": "^2.1.0",
- "through2": "^2.0.0"
+ "pretty-ms": "^1.0.0",
+ "tap-parser": "^0.7.0",
+ "through2": "^0.6.3"
},
"bin": {
"tap-spec": "bin/cmd.js",
@@ -7395,15 +6464,20 @@
}
},
"node_modules/tap-spec/node_modules/pretty-ms": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-2.1.0.tgz",
- "integrity": "sha1-QlfCVt8/sLRR1q/6qwIYhBJpgdw=",
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-1.4.0.tgz",
+ "integrity": "sha1-aQ1VY3lXwMU/gIaoEK23R4Jamg8=",
"dev": true,
"dependencies": {
+ "get-stdin": "^4.0.1",
"is-finite": "^1.0.1",
+ "meow": "^3.3.0",
"parse-ms": "^1.0.0",
"plur": "^1.0.0"
},
+ "bin": {
+ "pretty-ms": "cli.js"
+ },
"engines": {
"node": ">=0.10.0"
}
@@ -7451,46 +6525,6 @@
"url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/terser": {
- "version": "5.7.0",
- "resolved": "https://registry.npmjs.org/terser/-/terser-5.7.0.tgz",
- "integrity": "sha512-HP5/9hp2UaZt5fYkuhNBR8YyRcT8juw8+uFbAme53iN9hblvKnLUTKkmwJG6ocWpIKf8UK4DoeWG4ty0J6S6/g==",
- "dev": true,
- "dependencies": {
- "commander": "^2.20.0",
- "source-map": "~0.7.2",
- "source-map-support": "~0.5.19"
- },
- "bin": {
- "terser": "bin/terser"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/terser/node_modules/source-map": {
- "version": "0.7.3",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz",
- "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==",
- "dev": true,
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/test-exclude": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz",
- "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==",
- "dev": true,
- "dependencies": {
- "@istanbuljs/schema": "^0.1.2",
- "glob": "^7.1.4",
- "minimatch": "^3.0.4"
- },
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/text-table": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
@@ -7530,49 +6564,31 @@
"dev": true
},
"node_modules/through2": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
- "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==",
+ "version": "0.6.5",
+ "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz",
+ "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=",
"dev": true,
"dependencies": {
- "readable-stream": "~2.3.6",
- "xtend": "~4.0.1"
+ "readable-stream": ">=1.0.33-1 <1.1.0-0",
+ "xtend": ">=4.0.0 <4.1.0-0"
}
},
"node_modules/through2/node_modules/isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
- "dev": true
- },
- "node_modules/through2/node_modules/process-nextick-args": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
- "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==",
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
+ "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",
"dev": true
},
"node_modules/through2/node_modules/readable-stream": {
- "version": "2.3.7",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
- "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==",
- "dev": 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/through2/node_modules/string_decoder": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
- "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
+ "version": "1.0.34",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz",
+ "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=",
"dev": true,
"dependencies": {
- "safe-buffer": "~5.1.0"
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.1",
+ "isarray": "0.0.1",
+ "string_decoder": "~0.10.x"
}
},
"node_modules/time-require": {
@@ -7658,11 +6674,14 @@
"integrity": "sha1-zCAOqyYT9BZtJ/+a/HylbUnfbrQ=",
"dev": true
},
- "node_modules/trim": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz",
- "integrity": "sha1-WFhUf2spB1fulczMZm+1AITEYN0=",
- "dev": true
+ "node_modules/trim-newlines": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz",
+ "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
},
"node_modules/trim-repeated": {
"version": "1.0.0",
@@ -7721,24 +6740,6 @@
"node": ">= 0.8.0"
}
},
- "node_modules/type-fest": {
- "version": "0.8.1",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
- "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/typedarray-to-buffer": {
- "version": "3.1.5",
- "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz",
- "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==",
- "dev": true,
- "dependencies": {
- "is-typedarray": "^1.0.0"
- }
- },
"node_modules/ua-parser-js": {
"version": "0.7.28",
"resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.28.tgz",
@@ -7807,46 +6808,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/unicode-canonical-property-names-ecmascript": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz",
- "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/unicode-match-property-ecmascript": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz",
- "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==",
- "dev": true,
- "dependencies": {
- "unicode-canonical-property-names-ecmascript": "^1.0.4",
- "unicode-property-aliases-ecmascript": "^1.0.4"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/unicode-match-property-value-ecmascript": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz",
- "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/unicode-property-aliases-ecmascript": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz",
- "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
"node_modules/universalify": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
@@ -7874,12 +6835,6 @@
"punycode": "^2.1.0"
}
},
- "node_modules/util-deprecate": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
- "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
- "dev": true
- },
"node_modules/utils-merge": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
@@ -7889,16 +6844,6 @@
"node": ">= 0.4.0"
}
},
- "node_modules/uuid": {
- "version": "3.4.0",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz",
- "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==",
- "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.",
- "dev": true,
- "bin": {
- "uuid": "bin/uuid"
- }
- },
"node_modules/v8-compile-cache": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz",
@@ -7982,12 +6927,6 @@
"integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=",
"dev": true
},
- "node_modules/which-pm-runs": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.0.0.tgz",
- "integrity": "sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs=",
- "dev": true
- },
"node_modules/which-typed-array": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.4.tgz",
@@ -8116,18 +7055,6 @@
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
"dev": true
},
- "node_modules/write-file-atomic": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz",
- "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==",
- "dev": true,
- "dependencies": {
- "imurmurhash": "^0.1.4",
- "is-typedarray": "^1.0.0",
- "signal-exit": "^3.0.2",
- "typedarray-to-buffer": "^3.1.5"
- }
- },
"node_modules/ws": {
"version": "7.4.6",
"resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz",
@@ -8179,15 +7106,6 @@
"integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=",
"dev": true
},
- "node_modules/yaml": {
- "version": "1.10.0",
- "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz",
- "integrity": "sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg==",
- "dev": true,
- "engines": {
- "node": ">= 6"
- }
- },
"node_modules/yargs": {
"version": "15.4.1",
"resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz",
@@ -8272,12 +7190,6 @@
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
"dev": true
},
- "node_modules/yargs/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/yargs/node_modules/find-up": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
@@ -8291,15 +7203,6 @@
"node": ">=8"
}
},
- "node_modules/yargs/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/yargs/node_modules/locate-path": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
@@ -8333,20 +7236,6 @@
"node": ">=8"
}
},
- "node_modules/yargs/node_modules/string-width": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz",
- "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==",
- "dev": true,
- "dependencies": {
- "emoji-regex": "^8.0.0",
- "is-fullwidth-code-point": "^3.0.0",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/yargs/node_modules/strip-ansi": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
@@ -8438,14 +7327,6 @@
"slugify": "^1.4.7",
"time-require": "^0.1.2",
"valid-url": "^1.0.9"
- },
- "dependencies": {
- "lodash": {
- "version": "4.17.21",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
- "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
- "dev": true
- }
}
},
"@11ty/eleventy-plugin-syntaxhighlight": {
@@ -8467,179 +7348,12 @@
"@babel/highlight": "^7.10.4"
}
},
- "@babel/core": {
- "version": "7.12.10",
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.10.tgz",
- "integrity": "sha512-eTAlQKq65zHfkHZV0sIVODCPGVgoo1HdBlbSLi9CqOzuZanMv2ihzY+4paiKr1mH+XmYESMAmJ/dpZ68eN6d8w==",
- "dev": true,
- "requires": {
- "@babel/code-frame": "^7.10.4",
- "@babel/generator": "^7.12.10",
- "@babel/helper-module-transforms": "^7.12.1",
- "@babel/helpers": "^7.12.5",
- "@babel/parser": "^7.12.10",
- "@babel/template": "^7.12.7",
- "@babel/traverse": "^7.12.10",
- "@babel/types": "^7.12.10",
- "convert-source-map": "^1.7.0",
- "debug": "^4.1.0",
- "gensync": "^1.0.0-beta.1",
- "json5": "^2.1.2",
- "lodash": "^4.17.19",
- "semver": "^5.4.1",
- "source-map": "^0.5.0"
- },
- "dependencies": {
- "semver": {
- "version": "5.7.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
- "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
- "dev": true
- },
- "source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
- "dev": true
- }
- }
- },
- "@babel/generator": {
- "version": "7.12.11",
- "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.11.tgz",
- "integrity": "sha512-Ggg6WPOJtSi8yYQvLVjG8F/TlpWDlKx0OpS4Kt+xMQPs5OaGYWy+v1A+1TvxI6sAMGZpKWWoAQ1DaeQbImlItA==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.12.11",
- "jsesc": "^2.5.1",
- "source-map": "^0.5.0"
- },
- "dependencies": {
- "jsesc": {
- "version": "2.5.2",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
- "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
- "dev": true
- },
- "source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
- "dev": true
- }
- }
- },
- "@babel/helper-function-name": {
- "version": "7.12.11",
- "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.11.tgz",
- "integrity": "sha512-AtQKjtYNolKNi6nNNVLQ27CP6D9oFR6bq/HPYSizlzbp7uC1M59XJe8L+0uXjbIaZaUJF99ruHqVGiKXU/7ybA==",
- "dev": true,
- "requires": {
- "@babel/helper-get-function-arity": "^7.12.10",
- "@babel/template": "^7.12.7",
- "@babel/types": "^7.12.11"
- }
- },
- "@babel/helper-get-function-arity": {
- "version": "7.12.10",
- "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.10.tgz",
- "integrity": "sha512-mm0n5BPjR06wh9mPQaDdXWDoll/j5UpCAPl1x8fS71GHm7HA6Ua2V4ylG1Ju8lvcTOietbPNNPaSilKj+pj+Ag==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.12.10"
- }
- },
- "@babel/helper-member-expression-to-functions": {
- "version": "7.12.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.7.tgz",
- "integrity": "sha512-DCsuPyeWxeHgh1Dus7APn7iza42i/qXqiFPWyBDdOFtvS581JQePsc1F/nD+fHrcswhLlRc2UpYS1NwERxZhHw==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.12.7"
- }
- },
- "@babel/helper-module-imports": {
- "version": "7.12.5",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.12.5.tgz",
- "integrity": "sha512-SR713Ogqg6++uexFRORf/+nPXMmWIn80TALu0uaFb+iQIUoR7bOC7zBWyzBs5b3tBBJXuyD0cRu1F15GyzjOWA==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.12.5"
- }
- },
- "@babel/helper-module-transforms": {
- "version": "7.12.1",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.12.1.tgz",
- "integrity": "sha512-QQzehgFAZ2bbISiCpmVGfiGux8YVFXQ0abBic2Envhej22DVXV9nCFaS5hIQbkyo1AdGb+gNME2TSh3hYJVV/w==",
- "dev": true,
- "requires": {
- "@babel/helper-module-imports": "^7.12.1",
- "@babel/helper-replace-supers": "^7.12.1",
- "@babel/helper-simple-access": "^7.12.1",
- "@babel/helper-split-export-declaration": "^7.11.0",
- "@babel/helper-validator-identifier": "^7.10.4",
- "@babel/template": "^7.10.4",
- "@babel/traverse": "^7.12.1",
- "@babel/types": "^7.12.1",
- "lodash": "^4.17.19"
- }
- },
- "@babel/helper-optimise-call-expression": {
- "version": "7.12.10",
- "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.10.tgz",
- "integrity": "sha512-4tpbU0SrSTjjt65UMWSrUOPZTsgvPgGG4S8QSTNHacKzpS51IVWGDj0yCwyeZND/i+LSN2g/O63jEXEWm49sYQ==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.12.10"
- }
- },
- "@babel/helper-replace-supers": {
- "version": "7.12.11",
- "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.11.tgz",
- "integrity": "sha512-q+w1cqmhL7R0FNzth/PLLp2N+scXEK/L2AHbXUyydxp828F4FEa5WcVoqui9vFRiHDQErj9Zof8azP32uGVTRA==",
- "dev": true,
- "requires": {
- "@babel/helper-member-expression-to-functions": "^7.12.7",
- "@babel/helper-optimise-call-expression": "^7.12.10",
- "@babel/traverse": "^7.12.10",
- "@babel/types": "^7.12.11"
- }
- },
- "@babel/helper-simple-access": {
- "version": "7.12.1",
- "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.12.1.tgz",
- "integrity": "sha512-OxBp7pMrjVewSSC8fXDFrHrBcJATOOFssZwv16F3/6Xtc138GHybBfPbm9kfiqQHKhYQrlamWILwlDCeyMFEaA==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.12.1"
- }
- },
- "@babel/helper-split-export-declaration": {
- "version": "7.12.11",
- "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.11.tgz",
- "integrity": "sha512-LsIVN8j48gHgwzfocYUSkO/hjYAOJqlpJEc7tGXcIm4cubjVUf8LGW6eWRyxEu7gA25q02p0rQUWoCI33HNS5g==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.12.11"
- }
- },
"@babel/helper-validator-identifier": {
"version": "7.12.11",
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz",
"integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==",
"dev": true
},
- "@babel/helpers": {
- "version": "7.12.5",
- "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.12.5.tgz",
- "integrity": "sha512-lgKGMQlKqA8meJqKsW6rUnc4MdUk35Ln0ATDqdM1a/UpARODdI4j5Y5lVfUScnSNkJcdCRAaWkspykNoFg9sJA==",
- "dev": true,
- "requires": {
- "@babel/template": "^7.10.4",
- "@babel/traverse": "^7.12.5",
- "@babel/types": "^7.12.5"
- }
- },
"@babel/highlight": {
"version": "7.10.4",
"resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.10.4.tgz",
@@ -8694,42 +7408,6 @@
"integrity": "sha512-N3UxG+uuF4CMYoNj8AhnbAcJF0PiuJ9KHuy1lQmkYsxTer/MAH9UBNHsBoAX/4s6NvlDD047No8mYVGGzLL4hg==",
"dev": true
},
- "@babel/template": {
- "version": "7.12.7",
- "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.7.tgz",
- "integrity": "sha512-GkDzmHS6GV7ZeXfJZ0tLRBhZcMcY0/Lnb+eEbXDBfCAcZCjrZKe6p3J4we/D24O9Y8enxWAg1cWwof59yLh2ow==",
- "dev": true,
- "requires": {
- "@babel/code-frame": "^7.10.4",
- "@babel/parser": "^7.12.7",
- "@babel/types": "^7.12.7"
- }
- },
- "@babel/traverse": {
- "version": "7.12.12",
- "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.12.tgz",
- "integrity": "sha512-s88i0X0lPy45RrLM8b9mz8RPH5FqO9G9p7ti59cToE44xFm1Q+Pjh5Gq4SXBbtb88X7Uy7pexeqRIQDDMNkL0w==",
- "dev": true,
- "requires": {
- "@babel/code-frame": "^7.12.11",
- "@babel/generator": "^7.12.11",
- "@babel/helper-function-name": "^7.12.11",
- "@babel/helper-split-export-declaration": "^7.12.11",
- "@babel/parser": "^7.12.11",
- "@babel/types": "^7.12.12",
- "debug": "^4.1.0",
- "globals": "^11.1.0",
- "lodash": "^4.17.19"
- },
- "dependencies": {
- "globals": {
- "version": "11.12.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-11.12.0.tgz",
- "integrity": "sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==",
- "dev": true
- }
- }
- },
"@babel/types": {
"version": "7.12.12",
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.12.tgz",
@@ -8783,67 +7461,6 @@
"integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==",
"dev": true
},
- "@istanbuljs/load-nyc-config": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz",
- "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==",
- "dev": true,
- "requires": {
- "camelcase": "^5.3.1",
- "find-up": "^4.1.0",
- "get-package-type": "^0.1.0",
- "js-yaml": "^3.13.1",
- "resolve-from": "^5.0.0"
- },
- "dependencies": {
- "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"
- }
- },
- "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-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"
- }
- },
- "path-exists": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
- "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
- "dev": true
- },
- "resolve-from": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
- "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
- "dev": true
- }
- }
- },
- "@istanbuljs/schema": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.2.tgz",
- "integrity": "sha512-tsAQNx32a8CoFhjhijUIhI4kccIAgmGhy8LZMZgGfmXcpMbPRUqn5LWmgRttILi6yeGmBJd2xsPkFMs0PzgPCw==",
- "dev": true
- },
"@nodelib/fs.scandir": {
"version": "2.1.4",
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.4.tgz",
@@ -8870,43 +7487,6 @@
"fastq": "^1.6.0"
}
},
- "@rollup/plugin-buble": {
- "version": "0.21.3",
- "resolved": "https://registry.npmjs.org/@rollup/plugin-buble/-/plugin-buble-0.21.3.tgz",
- "integrity": "sha512-Iv8cCuFPnMdqV4pcyU+OrfjOfagPArRQ1PyQjx5KgHk3dARedI+8PNTLSMpJts0lQJr8yF2pAU4GxpxCBJ9HYw==",
- "dev": true,
- "requires": {
- "@rollup/pluginutils": "^3.0.8",
- "@types/buble": "^0.19.2",
- "buble": "^0.20.0"
- }
- },
- "@rollup/pluginutils": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-3.1.0.tgz",
- "integrity": "sha512-GksZ6pr6TpIjHm8h9lSQ8pi8BE9VeubNT0OMJ3B5uZJ8pz73NPiqOtCog/x2/QzM1ENChPKxMDhiQuRHsqc+lg==",
- "dev": true,
- "requires": {
- "@types/estree": "0.0.39",
- "estree-walker": "^1.0.1",
- "picomatch": "^2.2.2"
- }
- },
- "@types/buble": {
- "version": "0.19.2",
- "resolved": "https://registry.npmjs.org/@types/buble/-/buble-0.19.2.tgz",
- "integrity": "sha512-uUD8zIfXMKThmFkahTXDGI3CthFH1kMg2dOm3KLi4GlC5cbARA64bEcUMbbWdWdE73eoc/iBB9PiTMqH0dNS2Q==",
- "dev": true,
- "requires": {
- "magic-string": "^0.25.0"
- }
- },
- "@types/estree": {
- "version": "0.0.39",
- "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.39.tgz",
- "integrity": "sha512-EYNwp3bU+98cpU4lAWYYL7Zz+2gryWH1qbdDTidVd6hkiR6weksdbMadyXKXNPEkQFhXM+hVO9ZygomHXp+AIw==",
- "dev": true
- },
"@types/json5": {
"version": "0.0.29",
"resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz",
@@ -8919,18 +7499,6 @@
"integrity": "sha512-1z8k4wzFnNjVK/tlxvrWuK5WMt6mydWWP7+zvH5eFep4oj+UkrfiJTRtjCeBXNpwaA/FYqqtb4/QS4ianFpIRA==",
"dev": true
},
- "@types/node": {
- "version": "15.3.0",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-15.3.0.tgz",
- "integrity": "sha512-8/bnjSZD86ZfpBsDlCIkNXIvm+h6wi9g7IqL+kmFkQ+Wvu3JrasgLElfiPgoo8V8vVfnEi0QVS12gbl94h9YsQ==",
- "dev": true
- },
- "@types/parse-json": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.0.tgz",
- "integrity": "sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==",
- "dev": true
- },
"@ungap/event-target": {
"version": "0.2.3",
"resolved": "https://registry.npmjs.org/@ungap/event-target/-/event-target-0.2.3.tgz",
@@ -8965,13 +7533,6 @@
"integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==",
"dev": true
},
- "acorn-dynamic-import": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/acorn-dynamic-import/-/acorn-dynamic-import-4.0.0.tgz",
- "integrity": "sha512-d3OEjQV4ROpoflsnUA8HozoIR504TFxNivYEUi6uwz0IYhBkTDXGuWlNdMtybRt3nqVx/L6XqMt0FxkXuWKZhw==",
- "dev": true,
- "requires": {}
- },
"acorn-jsx": {
"version": "5.3.1",
"resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz",
@@ -8982,18 +7543,8 @@
"after": {
"version": "0.8.2",
"resolved": "https://registry.npmjs.org/after/-/after-0.8.2.tgz",
- "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=",
- "dev": true
- },
- "aggregate-error": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz",
- "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==",
- "dev": true,
- "requires": {
- "clean-stack": "^2.0.0",
- "indent-string": "^4.0.0"
- }
+ "integrity": "sha1-/ts5T58OAqqXaOcCvaI7UF+ufh8=",
+ "dev": true
},
"ajv": {
"version": "6.12.6",
@@ -9035,21 +7586,6 @@
"picomatch": "^2.0.4"
}
},
- "append-transform": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-2.0.0.tgz",
- "integrity": "sha512-7yeyCEurROLQJFv5Xj4lEGTy0borxepjFv1g22oAdqFu//SrAlDl1O1Nxx15SH1RoliUml6p8dwJW9jvZughhg==",
- "dev": true,
- "requires": {
- "default-require-extensions": "^3.0.0"
- }
- },
- "archy": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz",
- "integrity": "sha1-+cjBN1fMHde8N5rHeyxipcKGjEA=",
- "dev": true
- },
"argparse": {
"version": "1.0.10",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
@@ -9071,6 +7607,12 @@
"integrity": "sha1-uveeYubvTCpMC4MSMtr/7CUfnYM=",
"dev": true
},
+ "array-find-index": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz",
+ "integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=",
+ "dev": true
+ },
"array-includes": {
"version": "3.1.3",
"resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.3.tgz",
@@ -9332,94 +7874,12 @@
"integrity": "sha1-YbU5PxH1JVntEgaTEANDtu2wTdU=",
"dev": true
},
- "buble": {
- "version": "0.20.0",
- "resolved": "https://registry.npmjs.org/buble/-/buble-0.20.0.tgz",
- "integrity": "sha512-/1gnaMQE8xvd5qsNBl+iTuyjJ9XxeaVxAMF86dQ4EyxFJOZtsgOS8Ra+7WHgZTam5IFDtt4BguN0sH0tVTKrOw==",
- "dev": true,
- "requires": {
- "acorn": "^6.4.1",
- "acorn-dynamic-import": "^4.0.0",
- "acorn-jsx": "^5.2.0",
- "chalk": "^2.4.2",
- "magic-string": "^0.25.7",
- "minimist": "^1.2.5",
- "regexpu-core": "4.5.4"
- },
- "dependencies": {
- "acorn": {
- "version": "6.4.2",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz",
- "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==",
- "dev": true
- },
- "ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
- "dev": true,
- "requires": {
- "color-convert": "^1.9.0"
- }
- },
- "chalk": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
- "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
- "dev": true,
- "requires": {
- "ansi-styles": "^3.2.1",
- "escape-string-regexp": "^1.0.5",
- "supports-color": "^5.3.0"
- }
- },
- "has-flag": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
- "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
- "dev": true
- },
- "supports-color": {
- "version": "5.5.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
- "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
- "dev": true,
- "requires": {
- "has-flag": "^3.0.0"
- }
- }
- }
- },
- "buffer-from": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
- "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==",
- "dev": true
- },
- "buffer-shims": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/buffer-shims/-/buffer-shims-1.0.0.tgz",
- "integrity": "sha1-mXjOMXOIxkmth5MCjDR37wRKi1E=",
- "dev": true
- },
"bytes": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz",
"integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==",
"dev": true
},
- "caching-transform": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/caching-transform/-/caching-transform-4.0.0.tgz",
- "integrity": "sha512-kpqOvwXnjjN44D89K5ccQC+RUrsy7jB/XLlRrx0D7/2HNcTPqzsb6XgYoErwko6QsV184CA2YgS1fxDiiDZMWA==",
- "dev": true,
- "requires": {
- "hasha": "^5.0.0",
- "make-dir": "^3.0.0",
- "package-hash": "^4.0.0",
- "write-file-atomic": "^3.0.0"
- }
- },
"call-bind": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
@@ -9442,6 +7902,24 @@
"integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
"dev": true
},
+ "camelcase-keys": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
+ "integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
+ "dev": true,
+ "requires": {
+ "camelcase": "^2.0.0",
+ "map-obj": "^1.0.0"
+ },
+ "dependencies": {
+ "camelcase": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
+ "integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=",
+ "dev": true
+ }
+ }
+ },
"chalk": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz",
@@ -9512,18 +7990,6 @@
"readdirp": "~3.5.0"
}
},
- "ci-info": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz",
- "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==",
- "dev": true
- },
- "clean-stack": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz",
- "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==",
- "dev": true
- },
"cliui": {
"version": "7.0.4",
"resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
@@ -9579,12 +8045,6 @@
"integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=",
"dev": true
},
- "compare-versions": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/compare-versions/-/compare-versions-3.6.0.tgz",
- "integrity": "sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==",
- "dev": true
- },
"component-bind": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/component-bind/-/component-bind-1.0.0.tgz",
@@ -9680,15 +8140,6 @@
"@babel/types": "^7.6.1"
}
},
- "convert-source-map": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz",
- "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==",
- "dev": true,
- "requires": {
- "safe-buffer": "~5.1.1"
- }
- },
"cookie": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz",
@@ -9696,24 +8147,11 @@
"dev": true
},
"core-util-is": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
- "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
+ "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==",
"dev": true
},
- "cosmiconfig": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-7.0.0.tgz",
- "integrity": "sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA==",
- "dev": true,
- "requires": {
- "@types/parse-json": "^4.0.0",
- "import-fresh": "^3.2.1",
- "parse-json": "^5.0.0",
- "path-type": "^4.0.0",
- "yaml": "^1.10.0"
- }
- },
"cross-spawn": {
"version": "7.0.3",
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
@@ -9750,6 +8188,15 @@
"integrity": "sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw==",
"dev": true
},
+ "currently-unhandled": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz",
+ "integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=",
+ "dev": true,
+ "requires": {
+ "array-find-index": "^1.0.1"
+ }
+ },
"date-time": {
"version": "0.1.1",
"resolved": "https://registry.npmjs.org/date-time/-/date-time-0.1.1.tgz",
@@ -9816,15 +8263,6 @@
"integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
"dev": true
},
- "default-require-extensions": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/default-require-extensions/-/default-require-extensions-3.0.0.tgz",
- "integrity": "sha512-ek6DpXq/SCpvjhpFsLFRVtIxJCRw6fUR42lYMVZuUMK7n8eMz4Uh5clckdBjEpLhn/gEBZo7hDJnJcwdKLKQjg==",
- "dev": true,
- "requires": {
- "strip-bom": "^4.0.0"
- }
- },
"define-properties": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz",
@@ -10201,11 +8639,141 @@
"is-symbol": "^1.0.2"
}
},
- "es6-error": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/es6-error/-/es6-error-4.1.1.tgz",
- "integrity": "sha512-Um/+FxMr9CISWh0bi5Zv0iOD+4cFh5qLeks1qhAopKVAJw3drgKbKySikp7wGhDL0HPeaja0P5ULZrxLkniUVg==",
- "dev": true
+ "esbuild": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.13.3.tgz",
+ "integrity": "sha512-98xovMLKnyhv3gcReUuAEi5Ig1rK6SIgvsJuBIcfwzqGSEHsV8UJjMlmkhHoHMf9XZybMpE9Zax8AA8f7i2hlQ==",
+ "dev": true,
+ "requires": {
+ "esbuild-android-arm64": "0.13.3",
+ "esbuild-darwin-64": "0.13.3",
+ "esbuild-darwin-arm64": "0.13.3",
+ "esbuild-freebsd-64": "0.13.3",
+ "esbuild-freebsd-arm64": "0.13.3",
+ "esbuild-linux-32": "0.13.3",
+ "esbuild-linux-64": "0.13.3",
+ "esbuild-linux-arm": "0.13.3",
+ "esbuild-linux-arm64": "0.13.3",
+ "esbuild-linux-mips64le": "0.13.3",
+ "esbuild-linux-ppc64le": "0.13.3",
+ "esbuild-openbsd-64": "0.13.3",
+ "esbuild-sunos-64": "0.13.3",
+ "esbuild-windows-32": "0.13.3",
+ "esbuild-windows-64": "0.13.3",
+ "esbuild-windows-arm64": "0.13.3"
+ }
+ },
+ "esbuild-android-arm64": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-android-arm64/-/esbuild-android-arm64-0.13.3.tgz",
+ "integrity": "sha512-jc9E8vGTHkzb0Vwl74H8liANV9BWsqtzLHaKvcsRgf1M+aVCBSF0gUheduAKfDsbDMT0judeMLhwBP34EUesTA==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-darwin-64": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-darwin-64/-/esbuild-darwin-64-0.13.3.tgz",
+ "integrity": "sha512-8bG3Zq+ZNuLlIJebOO2+weI7P2LVf33sOzaUfHj8MuJ+1Ixe4KtQxfYp7qhFnP6xP2ToJaYHxGUfLeiUCEz9hw==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-darwin-arm64": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-darwin-arm64/-/esbuild-darwin-arm64-0.13.3.tgz",
+ "integrity": "sha512-5E81eImYtTgh8pY7Gq4WQHhWkR/LvYadUXmuYeZBiP+3ADZJZcG60UFceZrjqNPaFOWKr/xmh4aNocwagEubcA==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-freebsd-64": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-freebsd-64/-/esbuild-freebsd-64-0.13.3.tgz",
+ "integrity": "sha512-ou+f91KkTGexi8HvF/BdtsITL6plbciQfZGys7QX6/QEwyE96PmL5KnU6ZQwoU7E99Ts6Sc9bUDq8HXJubKtBA==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-freebsd-arm64": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-freebsd-arm64/-/esbuild-freebsd-arm64-0.13.3.tgz",
+ "integrity": "sha512-F1zV7nySjHswJuvIgjkiG5liZ63MeazDGXGKViTCeegjZ71sAhOChcaGhKcu6vq9+vqZxlfEi1fmXlx6Pc3coQ==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-linux-32": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-32/-/esbuild-linux-32-0.13.3.tgz",
+ "integrity": "sha512-mHHc2v6uLrHH4zaaq5RB/5IWzgimEJ1HGldzf1qtGI513KZWfH0HRRQ8p1di4notJgBn7tDzWQ1f34ZHy69viQ==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-linux-64": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-64/-/esbuild-linux-64-0.13.3.tgz",
+ "integrity": "sha512-FJ1De2O89mrOuqtaEXu41qIYJU6R41F+OA6vheNwcAQcX8fu0aiA13FJeLABq29BYJuTVgRj3cyC8q+tz19/dQ==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-linux-arm": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-arm/-/esbuild-linux-arm-0.13.3.tgz",
+ "integrity": "sha512-9BJNRtLwBh3OP22cln9g3AJdbAQUcjRHqA4BScx9k4RZpGqPokFr548zpeplxWhcwrIjT8qPebwH9CrRVy8Bsw==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-linux-arm64": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-arm64/-/esbuild-linux-arm64-0.13.3.tgz",
+ "integrity": "sha512-Cauhr45KSo+wRUojs+1qfycQqQCAXTOvsWvkZ6xmEMAXLAm+f8RQGDQeP8CAf8Yeelnegcn6UNdvzdzLHhWDFg==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-linux-mips64le": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-mips64le/-/esbuild-linux-mips64le-0.13.3.tgz",
+ "integrity": "sha512-YVzJUGCncuuLm2boYyVeuMFsak4ZAhdiBwi0xNDZCC8sy+tS6Boe2mzcrD2uubv5JKAUOrpN186S1DtU4WgBgw==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-linux-ppc64le": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-linux-ppc64le/-/esbuild-linux-ppc64le-0.13.3.tgz",
+ "integrity": "sha512-GU6CqqKtJEoyxC2QWHiJtmuOz9wc/jMv8ZloK2WwiGY5yMvAmM3PI103Dj7xcjebNTHBqITTUw/aigY1wx5A3w==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-openbsd-64": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-openbsd-64/-/esbuild-openbsd-64-0.13.3.tgz",
+ "integrity": "sha512-HVpkgpn4BQt4BPDAjTOpeMub6mzNWw6Y3gaLQJrpbO24pws6ZwYkY24OI3/Uo3LDCbH6856MM81JxECt92OWjA==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-sunos-64": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-sunos-64/-/esbuild-sunos-64-0.13.3.tgz",
+ "integrity": "sha512-XncBVOtnEfUbPV4CaiFBxh38ychnBfwCxuTm9iAqcHzIwkmeNRN5qMzDyfE1jyfJje+Bbt6AvIfz6SdYt8/UEQ==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-windows-32": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-windows-32/-/esbuild-windows-32-0.13.3.tgz",
+ "integrity": "sha512-ZlgDz7d1nk8wQACi+z8IDzNZVUlN9iprAme+1YSTsfFDlkyI8jeaGWPk9EQFNY7rJzsLVYm6eZ2mhPioc7uT5A==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-windows-64": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-windows-64/-/esbuild-windows-64-0.13.3.tgz",
+ "integrity": "sha512-YX7KvRez3TR+GudlQm9tND/ssj2FsF9vb8ZWzAoZOLxpPzE3y+3SFJNrfDzzQKPzJ0Pnh9KBP4gsaMwJjKHDhw==",
+ "dev": true,
+ "optional": true
+ },
+ "esbuild-windows-arm64": {
+ "version": "0.13.3",
+ "resolved": "https://registry.npmjs.org/esbuild-windows-arm64/-/esbuild-windows-arm64-0.13.3.tgz",
+ "integrity": "sha512-nP7H0Y2a6OJd3Qi1Q8sehhyP4x4JoXK4S5y6FzH2vgaJgiyEurzFxjUufGdMaw+RxtxiwD/uRndUgwaZ2JD8lg==",
+ "dev": true,
+ "optional": true
},
"escalade": {
"version": "3.1.1",
@@ -10435,12 +9003,6 @@
"integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==",
"dev": true
},
- "esm": {
- "version": "3.2.25",
- "resolved": "https://registry.npmjs.org/esm/-/esm-3.2.25.tgz",
- "integrity": "sha512-U1suiZ2oDVWv4zPO56S0NcR5QriEahGtdN2OR6FiOG4WJvcjBVFB0qI4+eKoWFH483PKGuLuu6V8Z4T5g63UVA==",
- "dev": true
- },
"espree": {
"version": "7.3.1",
"resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz",
@@ -10506,12 +9068,6 @@
"integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
"dev": true
},
- "estree-walker": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-1.0.1.tgz",
- "integrity": "sha512-1fMXF3YP4pZZVozF8j/ZLfvnR8NSIljt56UhbZ5PeeDmmGHpgpdwQt7ITlGvYaQukCvuBRMLEiKiYC+oeIg4cg==",
- "dev": true
- },
"esutils": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
@@ -10597,16 +9153,6 @@
"reusify": "^1.0.4"
}
},
- "figures": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz",
- "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=",
- "dev": true,
- "requires": {
- "escape-string-regexp": "^1.0.5",
- "object-assign": "^4.1.0"
- }
- },
"file-entry-cache": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz",
@@ -10688,15 +9234,6 @@
"locate-path": "^2.0.0"
}
},
- "find-versions": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/find-versions/-/find-versions-3.2.0.tgz",
- "integrity": "sha512-P8WRou2S+oe222TOCHitLy8zj+SIsVJh52VP4lvXkaFVnOFFdoWv1H1Jjvel1aI6NCFOAaeAVm8qrI0odiLcww==",
- "dev": true,
- "requires": {
- "semver-regex": "^2.0.0"
- }
- },
"flat-cache": {
"version": "3.0.4",
"resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz",
@@ -10745,28 +9282,12 @@
"integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=",
"dev": true
},
- "foreground-child": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-2.0.0.tgz",
- "integrity": "sha512-dCIq9FpEcyQyXKCkyzmlPTFNgrCzPudOe+mhvJU5zAtlBnGVy2yKxtfsxK2tQBThwq225jcvBjpw1Gr40uzZCA==",
- "dev": true,
- "requires": {
- "cross-spawn": "^7.0.0",
- "signal-exit": "^3.0.2"
- }
- },
"fresh": {
"version": "0.5.2",
"resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
"integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=",
"dev": true
},
- "fromentries": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/fromentries/-/fromentries-1.3.2.tgz",
- "integrity": "sha512-cHEpEQHUg0f8XdtZCc2ZAhrHzKzT0MrFUTcvx+hfxYu7rGMDc5SKoXFh+n4YigxsHXRzc6OrCshdR1bWH6HHyg==",
- "dev": true
- },
"fs-extra": {
"version": "8.1.0",
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz",
@@ -10814,12 +9335,6 @@
"integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
"dev": true
},
- "gensync": {
- "version": "1.0.0-beta.2",
- "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
- "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
- "dev": true
- },
"get-caller-file": {
"version": "2.0.5",
"resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
@@ -10843,6 +9358,12 @@
"integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==",
"dev": true
},
+ "get-stdin": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
+ "integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
+ "dev": true
+ },
"get-stream": {
"version": "5.2.0",
"resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
@@ -11083,28 +9604,12 @@
"has-symbols": "^1.0.2"
}
},
- "hasha": {
- "version": "5.2.2",
- "resolved": "https://registry.npmjs.org/hasha/-/hasha-5.2.2.tgz",
- "integrity": "sha512-Hrp5vIK/xr5SkeN2onO32H0MgNZ0f17HRNH39WfL0SYUNOTZ5Lz1TJ8Pajo/87dYGEFlLMm7mIc/k/s6Bvz9HQ==",
- "dev": true,
- "requires": {
- "is-stream": "^2.0.0",
- "type-fest": "^0.8.0"
- }
- },
"hosted-git-info": {
"version": "2.8.9",
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
"integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==",
"dev": true
},
- "html-escaper": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz",
- "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==",
- "dev": true
- },
"htmlparser2": {
"version": "6.1.0",
"resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz",
@@ -11146,84 +9651,15 @@
"requires": {
"eventemitter3": "^4.0.0",
"follow-redirects": "^1.0.0",
- "requires-port": "^1.0.0"
- }
- },
- "human-signals": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz",
- "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==",
- "dev": true
- },
- "husky": {
- "version": "4.3.6",
- "resolved": "https://registry.npmjs.org/husky/-/husky-4.3.6.tgz",
- "integrity": "sha512-o6UjVI8xtlWRL5395iWq9LKDyp/9TE7XMOTvIpEVzW638UcGxTmV5cfel6fsk/jbZSTlvfGVJf2svFtybcIZag==",
- "dev": true,
- "requires": {
- "chalk": "^4.0.0",
- "ci-info": "^2.0.0",
- "compare-versions": "^3.6.0",
- "cosmiconfig": "^7.0.0",
- "find-versions": "^3.2.0",
- "opencollective-postinstall": "^2.0.2",
- "pkg-dir": "^4.2.0",
- "please-upgrade-node": "^3.2.0",
- "slash": "^3.0.0",
- "which-pm-runs": "^1.0.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
- "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "slash": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
- "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "requires-port": "^1.0.0"
}
},
+ "human-signals": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz",
+ "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==",
+ "dev": true
+ },
"iconv-lite": {
"version": "0.4.24",
"resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
@@ -11262,10 +9698,13 @@
"dev": true
},
"indent-string": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz",
- "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==",
- "dev": true
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz",
+ "integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=",
+ "dev": true,
+ "requires": {
+ "repeating": "^2.0.0"
+ }
},
"indexof": {
"version": "0.0.1",
@@ -11536,12 +9975,6 @@
"has-symbols": "^1.0.1"
}
},
- "is-typedarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
- "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=",
- "dev": true
- },
"is-unc-path": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz",
@@ -11551,6 +9984,12 @@
"unc-path-regex": "^0.1.2"
}
},
+ "is-utf8": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/is-utf8/-/is-utf8-0.2.1.tgz",
+ "integrity": "sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI=",
+ "dev": true
+ },
"is-weakmap": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz",
@@ -11593,138 +10032,12 @@
"integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
"dev": true
},
- "istanbul-lib-coverage": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.0.0.tgz",
- "integrity": "sha512-UiUIqxMgRDET6eR+o5HbfRYP1l0hqkWOs7vNxC/mggutCMUIhWMm8gAHb8tHlyfD3/l6rlgNA5cKdDzEAf6hEg==",
- "dev": true
- },
- "istanbul-lib-hook": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/istanbul-lib-hook/-/istanbul-lib-hook-3.0.0.tgz",
- "integrity": "sha512-Pt/uge1Q9s+5VAZ+pCo16TYMWPBIl+oaNIjgLQxcX0itS6ueeaA+pEfThZpH8WxhFgCiEb8sAJY6MdUKgiIWaQ==",
- "dev": true,
- "requires": {
- "append-transform": "^2.0.0"
- }
- },
- "istanbul-lib-instrument": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz",
- "integrity": "sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ==",
- "dev": true,
- "requires": {
- "@babel/core": "^7.7.5",
- "@istanbuljs/schema": "^0.1.2",
- "istanbul-lib-coverage": "^3.0.0",
- "semver": "^6.3.0"
- },
- "dependencies": {
- "semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
- "dev": true
- }
- }
- },
- "istanbul-lib-processinfo": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/istanbul-lib-processinfo/-/istanbul-lib-processinfo-2.0.2.tgz",
- "integrity": "sha512-kOwpa7z9hme+IBPZMzQ5vdQj8srYgAtaRqeI48NGmAQ+/5yKiHLV0QbYqQpxsdEF0+w14SoB8YbnHKcXE2KnYw==",
- "dev": true,
- "requires": {
- "archy": "^1.0.0",
- "cross-spawn": "^7.0.0",
- "istanbul-lib-coverage": "^3.0.0-alpha.1",
- "make-dir": "^3.0.0",
- "p-map": "^3.0.0",
- "rimraf": "^3.0.0",
- "uuid": "^3.3.3"
- },
- "dependencies": {
- "rimraf": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
- "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
- "dev": true,
- "requires": {
- "glob": "^7.1.3"
- }
- }
- }
- },
- "istanbul-lib-report": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz",
- "integrity": "sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw==",
- "dev": true,
- "requires": {
- "istanbul-lib-coverage": "^3.0.0",
- "make-dir": "^3.0.0",
- "supports-color": "^7.1.0"
- },
- "dependencies": {
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "istanbul-lib-source-maps": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.0.tgz",
- "integrity": "sha512-c16LpFRkR8vQXyHZ5nLpY35JZtzj1PQY1iZmesUbf1FZHbIupcWfjgOXBY9YHkLEQ6puz1u4Dgj6qmU/DisrZg==",
- "dev": true,
- "requires": {
- "debug": "^4.1.1",
- "istanbul-lib-coverage": "^3.0.0",
- "source-map": "^0.6.1"
- }
- },
- "istanbul-reports": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.0.2.tgz",
- "integrity": "sha512-9tZvz7AiR3PEDNGiV9vIouQ/EAcqMXFmkcA1CDFTwOB98OZVDL0PH9glHotf5Ugp6GCOTypfzGWI/OqjWNCRUw==",
- "dev": true,
- "requires": {
- "html-escaper": "^2.0.0",
- "istanbul-lib-report": "^3.0.0"
- }
- },
"javascript-stringify": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/javascript-stringify/-/javascript-stringify-2.1.0.tgz",
"integrity": "sha512-JVAfqNPTvNq3sB/VHQJAFxN/sPgKnsKrCwyRt15zwNCdrMMJDdcEOdubuy+DuJYYdm0ox1J4uzEuYKkN+9yhVg==",
"dev": true
},
- "jest-worker": {
- "version": "26.6.2",
- "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-26.6.2.tgz",
- "integrity": "sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==",
- "dev": true,
- "requires": {
- "@types/node": "*",
- "merge-stream": "^2.0.0",
- "supports-color": "^7.0.0"
- },
- "dependencies": {
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
"js-beautify": {
"version": "1.13.13",
"resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.13.13.tgz",
@@ -11760,24 +10073,12 @@
"esprima": "^4.0.0"
}
},
- "jsesc": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
- "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=",
- "dev": true
- },
"json-parse-better-errors": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
"integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==",
"dev": true
},
- "json-parse-even-better-errors": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
- "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
- "dev": true
- },
"json-schema-traverse": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
@@ -11790,15 +10091,6 @@
"integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=",
"dev": true
},
- "json5": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/json5/-/json5-2.1.3.tgz",
- "integrity": "sha512-KXPvOm8K9IJKFM0bmdn8QXh7udDh1g/giieX0NLCaMnb4hEiVFqnop2ImTXCc5e0/oHz3LTqmHGtExn5hfMkOA==",
- "dev": true,
- "requires": {
- "minimist": "^1.2.5"
- }
- },
"jsonfile": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-3.0.1.tgz",
@@ -11846,12 +10138,6 @@
"integrity": "sha512-FWWMIEOxz3GwUI4Ts/IvgVy6LPvoMPgjMdQ185nN6psJyBJ4yOpzqm695/h5umdLJg2vW3GR5iG11MAkR2AzJA==",
"dev": true
},
- "lines-and-columns": {
- "version": "1.1.6",
- "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.1.6.tgz",
- "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=",
- "dev": true
- },
"linkedom": {
"version": "0.11.1",
"resolved": "https://registry.npmjs.org/linkedom/-/linkedom-0.11.1.tgz",
@@ -11982,12 +10268,6 @@
"integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=",
"dev": true
},
- "lodash.flattendeep": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz",
- "integrity": "sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI=",
- "dev": true
- },
"lodash.isfinite": {
"version": "3.3.2",
"resolved": "https://registry.npmjs.org/lodash.isfinite/-/lodash.isfinite-3.3.2.tgz",
@@ -12006,6 +10286,16 @@
"integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=",
"dev": true
},
+ "loud-rejection": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz",
+ "integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=",
+ "dev": true,
+ "requires": {
+ "currently-unhandled": "^0.4.1",
+ "signal-exit": "^3.0.0"
+ }
+ },
"lru-cache": {
"version": "4.1.5",
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz",
@@ -12022,15 +10312,6 @@
"integrity": "sha512-VKsFsPggTA0DvnxtJdiExAucKdAnwbCCNlMM5ENvHlxubqWd0xhZcdb4XgZ7QFNhaRhilXCFxHuoObP5BNA4PA==",
"dev": true
},
- "magic-string": {
- "version": "0.25.7",
- "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.25.7.tgz",
- "integrity": "sha512-4CrMT5DOHTDk4HYDlzmwu4FVCcIYI8gauveasrdCu2IKIFOJ3f0v/8MDGJCDL9oD2ppz/Av1b0Nj345H9M+XIA==",
- "dev": true,
- "requires": {
- "sourcemap-codec": "^1.4.4"
- }
- },
"make-dir": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
@@ -12054,6 +10335,12 @@
"integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=",
"dev": true
},
+ "map-obj": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
+ "integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=",
+ "dev": true
+ },
"markdown-it": {
"version": "10.0.0",
"resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-10.0.0.tgz",
@@ -12108,6 +10395,79 @@
"integrity": "sha1-/oWy7HWlkDfyrf7BAP1sYBdhFS4=",
"dev": true
},
+ "meow": {
+ "version": "3.7.0",
+ "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
+ "integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=",
+ "dev": true,
+ "requires": {
+ "camelcase-keys": "^2.0.0",
+ "decamelize": "^1.1.2",
+ "loud-rejection": "^1.0.0",
+ "map-obj": "^1.0.1",
+ "minimist": "^1.1.3",
+ "normalize-package-data": "^2.3.4",
+ "object-assign": "^4.0.1",
+ "read-pkg-up": "^1.0.1",
+ "redent": "^1.0.0",
+ "trim-newlines": "^1.0.0"
+ },
+ "dependencies": {
+ "find-up": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
+ "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=",
+ "dev": true,
+ "requires": {
+ "path-exists": "^2.0.0",
+ "pinkie-promise": "^2.0.0"
+ }
+ },
+ "load-json-file": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz",
+ "integrity": "sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA=",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.2",
+ "parse-json": "^2.2.0",
+ "pify": "^2.0.0",
+ "pinkie-promise": "^2.0.0",
+ "strip-bom": "^2.0.0"
+ }
+ },
+ "path-exists": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz",
+ "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=",
+ "dev": true,
+ "requires": {
+ "pinkie-promise": "^2.0.0"
+ }
+ },
+ "read-pkg": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz",
+ "integrity": "sha1-9f+qXs0pyzHAR0vKfXVra7KePyg=",
+ "dev": true,
+ "requires": {
+ "load-json-file": "^1.0.0",
+ "normalize-package-data": "^2.3.2",
+ "path-type": "^1.0.0"
+ }
+ },
+ "read-pkg-up": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-1.0.1.tgz",
+ "integrity": "sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI=",
+ "dev": true,
+ "requires": {
+ "find-up": "^1.0.0",
+ "read-pkg": "^1.0.0"
+ }
+ }
+ }
+ },
"merge-stream": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
@@ -12247,15 +10607,6 @@
"integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==",
"dev": true
},
- "node-preload": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/node-preload/-/node-preload-0.2.1.tgz",
- "integrity": "sha512-RM5oyBy45cLEoHqCeh+MNuFAxO0vTFBLskvQbOKnEE7YTTSN4tbN8QWDIPQ6L+WvKsB/qLEGpYe2ZZ9d4W9OIQ==",
- "dev": true,
- "requires": {
- "process-on-spawn": "^1.0.0"
- }
- },
"nopt": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz",
@@ -12286,131 +10637,45 @@
}
},
"normalize-path": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
- "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
- "dev": true
- },
- "npm-run-path": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
- "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==",
- "dev": true,
- "requires": {
- "path-key": "^3.0.0"
- }
- },
- "nth-check": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.0.tgz",
- "integrity": "sha512-i4sc/Kj8htBrAiH1viZ0TgU8Y5XqCaV/FziYK6TBczxmeKm3AEFWqqF3195yKudrarqy7Zu80Ra5dobFjn9X/Q==",
- "dev": true,
- "requires": {
- "boolbase": "^1.0.0"
- }
- },
- "nunjucks": {
- "version": "3.2.3",
- "resolved": "https://registry.npmjs.org/nunjucks/-/nunjucks-3.2.3.tgz",
- "integrity": "sha512-psb6xjLj47+fE76JdZwskvwG4MYsQKXUtMsPh6U0YMvmyjRtKRFcxnlXGWglNybtNTNVmGdp94K62/+NjF5FDQ==",
- "dev": true,
- "requires": {
- "a-sync-waterfall": "^1.0.0",
- "asap": "^2.0.3",
- "commander": "^5.1.0"
- },
- "dependencies": {
- "commander": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz",
- "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==",
- "dev": true
- }
- }
- },
- "nyc": {
- "version": "15.1.0",
- "resolved": "https://registry.npmjs.org/nyc/-/nyc-15.1.0.tgz",
- "integrity": "sha512-jMW04n9SxKdKi1ZMGhvUTHBN0EICCRkHemEoE5jm6mTYcqcdas0ATzgUgejlQUHMvpnOZqGB5Xxsv9KxJW1j8A==",
- "dev": true,
- "requires": {
- "@istanbuljs/load-nyc-config": "^1.0.0",
- "@istanbuljs/schema": "^0.1.2",
- "caching-transform": "^4.0.0",
- "convert-source-map": "^1.7.0",
- "decamelize": "^1.2.0",
- "find-cache-dir": "^3.2.0",
- "find-up": "^4.1.0",
- "foreground-child": "^2.0.0",
- "get-package-type": "^0.1.0",
- "glob": "^7.1.6",
- "istanbul-lib-coverage": "^3.0.0",
- "istanbul-lib-hook": "^3.0.0",
- "istanbul-lib-instrument": "^4.0.0",
- "istanbul-lib-processinfo": "^2.0.2",
- "istanbul-lib-report": "^3.0.0",
- "istanbul-lib-source-maps": "^4.0.0",
- "istanbul-reports": "^3.0.2",
- "make-dir": "^3.0.0",
- "node-preload": "^0.2.1",
- "p-map": "^3.0.0",
- "process-on-spawn": "^1.0.0",
- "resolve-from": "^5.0.0",
- "rimraf": "^3.0.0",
- "signal-exit": "^3.0.2",
- "spawn-wrap": "^2.0.0",
- "test-exclude": "^6.0.0",
- "yargs": "^15.0.2"
- },
- "dependencies": {
- "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"
- }
- },
- "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-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"
- }
- },
- "path-exists": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
- "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
- "dev": true
- },
- "resolve-from": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
- "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz",
+ "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==",
+ "dev": true
+ },
+ "npm-run-path": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
+ "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==",
+ "dev": true,
+ "requires": {
+ "path-key": "^3.0.0"
+ }
+ },
+ "nth-check": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.0.tgz",
+ "integrity": "sha512-i4sc/Kj8htBrAiH1viZ0TgU8Y5XqCaV/FziYK6TBczxmeKm3AEFWqqF3195yKudrarqy7Zu80Ra5dobFjn9X/Q==",
+ "dev": true,
+ "requires": {
+ "boolbase": "^1.0.0"
+ }
+ },
+ "nunjucks": {
+ "version": "3.2.3",
+ "resolved": "https://registry.npmjs.org/nunjucks/-/nunjucks-3.2.3.tgz",
+ "integrity": "sha512-psb6xjLj47+fE76JdZwskvwG4MYsQKXUtMsPh6U0YMvmyjRtKRFcxnlXGWglNybtNTNVmGdp94K62/+NjF5FDQ==",
+ "dev": true,
+ "requires": {
+ "a-sync-waterfall": "^1.0.0",
+ "asap": "^2.0.3",
+ "commander": "^5.1.0"
+ },
+ "dependencies": {
+ "commander": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/commander/-/commander-5.1.0.tgz",
+ "integrity": "sha512-P0CysNDQ7rtVw4QIQtm+MRxV66vKFSvlsQvGYXZWR3qFU0jlMKHZZZgw8e+8DSah4UDKMqnknRDQz+xuQXQ/Zg==",
"dev": true
- },
- "rimraf": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
- "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
- "dev": true,
- "requires": {
- "glob": "^7.1.3"
- }
}
}
},
@@ -12518,12 +10783,6 @@
"mimic-fn": "^2.1.0"
}
},
- "opencollective-postinstall": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz",
- "integrity": "sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q==",
- "dev": true
- },
"openurl": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/openurl/-/openurl-1.1.1.tgz",
@@ -12588,33 +10847,12 @@
}
}
},
- "p-map": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/p-map/-/p-map-3.0.0.tgz",
- "integrity": "sha512-d3qXVTF/s+W+CdJ5A29wywV2n8CQQYahlgz2bFiA+4eVNJbHJodPZ+/gXwPGh0bOqA+j8S+6+ckmvLGPk1QpxQ==",
- "dev": true,
- "requires": {
- "aggregate-error": "^3.0.0"
- }
- },
"p-try": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
"integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
"dev": true
},
- "package-hash": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/package-hash/-/package-hash-4.0.0.tgz",
- "integrity": "sha512-whdkPIooSu/bASggZ96BWVvZTRMOFxnyUG5PnTSGKoJE2gd5mbVNmR2Nj20QFzxYYgAXpoqC+AiXzl+UMRh7zQ==",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.1.15",
- "hasha": "^5.0.0",
- "lodash.flattendeep": "^4.4.0",
- "release-zalgo": "^1.0.0"
- }
- },
"parent-module": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
@@ -12636,15 +10874,12 @@
}
},
"parse-json": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.1.0.tgz",
- "integrity": "sha512-+mi/lmVVNKFNVyLXV31ERiy2CY5E1/F6QtJFEzoChPRwwngMNXRDQ9GJ5WdE2Z2P4AujsOi0/+2qHID68KwfIQ==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz",
+ "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=",
"dev": true,
"requires": {
- "@babel/code-frame": "^7.0.0",
- "error-ex": "^1.3.1",
- "json-parse-even-better-errors": "^2.3.0",
- "lines-and-columns": "^1.1.6"
+ "error-ex": "^1.2.0"
}
},
"parse-ms": {
@@ -12696,9 +10931,9 @@
"dev": true
},
"path-parse": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz",
- "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==",
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
+ "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
"dev": true
},
"path-root": {
@@ -12717,10 +10952,15 @@
"dev": true
},
"path-type": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
- "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==",
- "dev": true
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz",
+ "integrity": "sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE=",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.1.2",
+ "pify": "^2.0.0",
+ "pinkie-promise": "^2.0.0"
+ }
},
"picomatch": {
"version": "2.2.2",
@@ -12965,21 +11205,6 @@
"integrity": "sha512-mNPsedLuk90RVJioIky8ANZEwYm5w9LcvCXrxHlwf4fNVSn8jEipMybMkWUyyF0JhnC+C4VcOVSBuHRKs1L5Ow==",
"dev": true
},
- "process-nextick-args": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz",
- "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=",
- "dev": true
- },
- "process-on-spawn": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/process-on-spawn/-/process-on-spawn-1.0.0.tgz",
- "integrity": "sha512-1WsPDsUSMmZH5LeMLegqkPDrsGgsWwk1Exipy2hvB0o/F0ASzbpIctSCcZIK1ykJvtTJULEH+20WOFjMvGnCTg==",
- "dev": true,
- "requires": {
- "fromentries": "^1.2.0"
- }
- },
"progress": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
@@ -13165,15 +11390,6 @@
"integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
"dev": true
},
- "randombytes": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
- "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
- "dev": true,
- "requires": {
- "safe-buffer": "^5.1.0"
- }
- },
"range-parser": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz",
@@ -13192,12 +11408,6 @@
"unpipe": "1.0.0"
}
},
- "re-emitter": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/re-emitter/-/re-emitter-1.1.3.tgz",
- "integrity": "sha1-+p4xn/3u6zWycpbvDz03TawvUqc=",
- "dev": true
- },
"read-pkg": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz",
@@ -13237,24 +11447,21 @@
}
},
"readable-stream": {
- "version": "2.2.9",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.2.9.tgz",
- "integrity": "sha1-z3jsb0ptHrQ9JkiMrJfwQudLf8g=",
+ "version": "1.1.14",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
+ "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=",
"dev": true,
"requires": {
- "buffer-shims": "~1.0.0",
"core-util-is": "~1.0.0",
"inherits": "~2.0.1",
- "isarray": "~1.0.0",
- "process-nextick-args": "~1.0.6",
- "string_decoder": "~1.0.0",
- "util-deprecate": "~1.0.1"
+ "isarray": "0.0.1",
+ "string_decoder": "~0.10.x"
},
"dependencies": {
"isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
+ "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",
"dev": true
}
}
@@ -13297,19 +11504,14 @@
}
}
},
- "regenerate": {
- "version": "1.4.2",
- "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz",
- "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==",
- "dev": true
- },
- "regenerate-unicode-properties": {
- "version": "8.2.0",
- "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz",
- "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==",
+ "redent": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz",
+ "integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=",
"dev": true,
"requires": {
- "regenerate": "^1.4.0"
+ "indent-string": "^2.1.0",
+ "strip-indent": "^1.0.1"
}
},
"regexp.prototype.flags": {
@@ -13328,50 +11530,15 @@
"integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==",
"dev": true
},
- "regexpu-core": {
- "version": "4.5.4",
- "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.5.4.tgz",
- "integrity": "sha512-BtizvGtFQKGPUcTy56o3nk1bGRp4SZOTYrDtGNlqCQufptV5IkkLN6Emw+yunAJjzf+C9FQFtvq7IoA3+oMYHQ==",
- "dev": true,
- "requires": {
- "regenerate": "^1.4.0",
- "regenerate-unicode-properties": "^8.0.2",
- "regjsgen": "^0.5.0",
- "regjsparser": "^0.6.0",
- "unicode-match-property-ecmascript": "^1.0.4",
- "unicode-match-property-value-ecmascript": "^1.1.0"
- }
- },
- "regjsgen": {
- "version": "0.5.2",
- "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz",
- "integrity": "sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==",
- "dev": true
- },
- "regjsparser": {
- "version": "0.6.4",
- "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.4.tgz",
- "integrity": "sha512-64O87/dPDgfk8/RQqC4gkZoGyyWFIEUTTh80CU6CWuK5vkCGyekIx+oKcEIYtP/RAxSQltCZHCNu/mdd7fqlJw==",
- "dev": true,
- "requires": {
- "jsesc": "~0.5.0"
- }
- },
- "release-zalgo": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/release-zalgo/-/release-zalgo-1.0.0.tgz",
- "integrity": "sha1-CXALflB0Mpc5Mw5TXFqQ+2eFFzA=",
+ "repeating": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz",
+ "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=",
"dev": true,
"requires": {
- "es6-error": "^4.0.1"
+ "is-finite": "^1.0.0"
}
},
- "repeat-string": {
- "version": "1.6.1",
- "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
- "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=",
- "dev": true
- },
"require-directory": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
@@ -13457,27 +11624,6 @@
"glob": "^7.1.3"
}
},
- "rollup": {
- "version": "2.56.3",
- "resolved": "https://registry.npmjs.org/rollup/-/rollup-2.56.3.tgz",
- "integrity": "sha512-Au92NuznFklgQCUcV96iXlxUbHuB1vQMaH76DHl5M11TotjOHwqk9CwcrT78+Tnv4FN9uTBxq6p4EJoYkpyekg==",
- "dev": true,
- "requires": {
- "fsevents": "~2.3.2"
- }
- },
- "rollup-plugin-terser": {
- "version": "7.0.2",
- "resolved": "https://registry.npmjs.org/rollup-plugin-terser/-/rollup-plugin-terser-7.0.2.tgz",
- "integrity": "sha512-w3iIaU4OxcF52UUXiZNsNeuXIMDvFrr+ZXK6bFZ0Q60qyVfq4uLptoS4bbq3paG3x216eQllFZX7zt6TIImguQ==",
- "dev": true,
- "requires": {
- "@babel/code-frame": "^7.10.4",
- "jest-worker": "^26.2.1",
- "serialize-javascript": "^4.0.0",
- "terser": "^5.0.0"
- }
- },
"run-parallel": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
@@ -13502,12 +11648,6 @@
"symbol-observable": "1.0.1"
}
},
- "safe-buffer": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
- "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
- "dev": true
- },
"safer-buffer": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
@@ -13556,12 +11696,6 @@
"integrity": "sha1-De4hahyUGrN+nvsXiPavxf9VN/w=",
"dev": true
},
- "semver-regex": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/semver-regex/-/semver-regex-2.0.0.tgz",
- "integrity": "sha512-mUdIBBvdn0PLOeP3TEkMH7HHeUP3GjsXCwKarjv/kGmUFOYg1VqEemKhoQpWMu6X2I8kHeuVdGibLGkVK+/5Qw==",
- "dev": true
- },
"send": {
"version": "0.16.2",
"resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz",
@@ -13624,15 +11758,6 @@
}
}
},
- "serialize-javascript": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz",
- "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==",
- "dev": true,
- "requires": {
- "randombytes": "^2.1.0"
- }
- },
"serve-index": {
"version": "1.9.1",
"resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz",
@@ -13918,47 +12043,6 @@
"integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true
},
- "source-map-support": {
- "version": "0.5.19",
- "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz",
- "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==",
- "dev": true,
- "requires": {
- "buffer-from": "^1.0.0",
- "source-map": "^0.6.0"
- }
- },
- "sourcemap-codec": {
- "version": "1.4.8",
- "resolved": "https://registry.npmjs.org/sourcemap-codec/-/sourcemap-codec-1.4.8.tgz",
- "integrity": "sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==",
- "dev": true
- },
- "spawn-wrap": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/spawn-wrap/-/spawn-wrap-2.0.0.tgz",
- "integrity": "sha512-EeajNjfN9zMnULLwhZZQU3GWBoFNkbngTUPfaawT4RkMiviTxcX0qfhVbGey39mfctfDHkWtuecgQ8NJcyQWHg==",
- "dev": true,
- "requires": {
- "foreground-child": "^2.0.0",
- "is-windows": "^1.0.2",
- "make-dir": "^3.0.0",
- "rimraf": "^3.0.0",
- "signal-exit": "^3.0.2",
- "which": "^2.0.1"
- },
- "dependencies": {
- "rimraf": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
- "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
- "dev": true,
- "requires": {
- "glob": "^7.1.3"
- }
- }
- }
- },
"spdx-correct": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz",
@@ -13991,15 +12075,6 @@
"integrity": "sha512-Ki212dKK4ogX+xDo4CtOZBVIwhsKBEfsEEcwmJfLQzirgc2jIWdzg40Unxz/HzEUqM1WFzVlQSMF9kZZ2HboLQ==",
"dev": true
},
- "split": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/split/-/split-1.0.0.tgz",
- "integrity": "sha1-xDlc5oOrzSVLwo/h2rtuXCfc/64=",
- "dev": true,
- "requires": {
- "through": "2"
- }
- },
"sprintf-js": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
@@ -14023,13 +12098,10 @@
}
},
"string_decoder": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.0.3.tgz",
- "integrity": "sha512-4AH6Z5fzNNBcH+6XDMfA/BTt87skxqJlO0lAh3Dker5zThcAxG6mKz+iGu308UKoPPQ8Dcqx/4JhujzltRa+hQ==",
- "dev": true,
- "requires": {
- "safe-buffer": "~5.1.0"
- }
+ "version": "0.10.31",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
+ "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=",
+ "dev": true
},
"string-width": {
"version": "4.2.2",
@@ -14100,10 +12172,13 @@
}
},
"strip-bom": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz",
- "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==",
- "dev": true
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
+ "integrity": "sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4=",
+ "dev": true,
+ "requires": {
+ "is-utf8": "^0.2.0"
+ }
},
"strip-bom-string": {
"version": "1.0.0",
@@ -14117,6 +12192,15 @@
"integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==",
"dev": true
},
+ "strip-indent": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz",
+ "integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=",
+ "dev": true,
+ "requires": {
+ "get-stdin": "^4.0.1"
+ }
+ },
"strip-json-comments": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
@@ -14193,32 +12277,36 @@
}
}
},
- "tap-out": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/tap-out/-/tap-out-2.1.0.tgz",
- "integrity": "sha512-LJE+TBoVbOWhwdz4+FQk40nmbIuxJLqaGvj3WauQw3NYYU5TdjoV3C0x/yq37YAvVyi+oeBXmWnxWSjJ7IEyUw==",
+ "tap-parser": {
+ "version": "0.7.0",
+ "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-0.7.0.tgz",
+ "integrity": "sha1-coph1kaApbSNXb2dvQpNSPXDW8s=",
"dev": true,
"requires": {
- "re-emitter": "1.1.3",
- "readable-stream": "2.2.9",
- "split": "1.0.0",
- "trim": "0.0.1"
+ "inherits": "~2.0.1",
+ "minimist": "^0.2.0",
+ "readable-stream": "~1.1.11"
+ },
+ "dependencies": {
+ "minimist": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.2.1.tgz",
+ "integrity": "sha512-GY8fANSrTMfBVfInqJAY41QkOM+upUTytK1jZ0c8+3HdHrJxBJ3rF5i9moClXTE8uUSnUo8cAsCoxDXvSY4DHg==",
+ "dev": true
+ }
}
},
"tap-spec": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/tap-spec/-/tap-spec-5.0.0.tgz",
- "integrity": "sha512-zMDVJiE5I6Y4XGjlueGXJIX2YIkbDN44broZlnypT38Hj/czfOXrszHNNJBF/DXR8n+x6gbfSx68x04kIEHdrw==",
+ "version": "2.2.2",
+ "resolved": "https://registry.npmjs.org/tap-spec/-/tap-spec-2.2.2.tgz",
+ "integrity": "sha1-FK2zmgX5ZMgR73B1lzINO7K7K9o=",
"dev": true,
"requires": {
"chalk": "^1.0.0",
"duplexer": "^0.1.1",
- "figures": "^1.4.0",
- "lodash": "^4.17.10",
- "pretty-ms": "^2.1.0",
- "repeat-string": "^1.5.2",
- "tap-out": "^2.1.0",
- "through2": "^2.0.0"
+ "pretty-ms": "^1.0.0",
+ "tap-parser": "^0.7.0",
+ "through2": "^0.6.3"
},
"dependencies": {
"chalk": {
@@ -14241,12 +12329,14 @@
"dev": true
},
"pretty-ms": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-2.1.0.tgz",
- "integrity": "sha1-QlfCVt8/sLRR1q/6qwIYhBJpgdw=",
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-1.4.0.tgz",
+ "integrity": "sha1-aQ1VY3lXwMU/gIaoEK23R4Jamg8=",
"dev": true,
"requires": {
+ "get-stdin": "^4.0.1",
"is-finite": "^1.0.1",
+ "meow": "^3.3.0",
"parse-ms": "^1.0.0",
"plur": "^1.0.0"
}
@@ -14292,36 +12382,6 @@
}
}
},
- "terser": {
- "version": "5.7.0",
- "resolved": "https://registry.npmjs.org/terser/-/terser-5.7.0.tgz",
- "integrity": "sha512-HP5/9hp2UaZt5fYkuhNBR8YyRcT8juw8+uFbAme53iN9hblvKnLUTKkmwJG6ocWpIKf8UK4DoeWG4ty0J6S6/g==",
- "dev": true,
- "requires": {
- "commander": "^2.20.0",
- "source-map": "~0.7.2",
- "source-map-support": "~0.5.19"
- },
- "dependencies": {
- "source-map": {
- "version": "0.7.3",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz",
- "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==",
- "dev": true
- }
- }
- },
- "test-exclude": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz",
- "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==",
- "dev": true,
- "requires": {
- "@istanbuljs/schema": "^0.1.2",
- "glob": "^7.1.4",
- "minimatch": "^3.0.4"
- }
- },
"text-table": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
@@ -14360,49 +12420,31 @@
"dev": true
},
"through2": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
- "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==",
+ "version": "0.6.5",
+ "resolved": "https://registry.npmjs.org/through2/-/through2-0.6.5.tgz",
+ "integrity": "sha1-QaucZ7KdVyCQcUEOHXp6lozTrUg=",
"dev": true,
"requires": {
- "readable-stream": "~2.3.6",
- "xtend": "~4.0.1"
+ "readable-stream": ">=1.0.33-1 <1.1.0-0",
+ "xtend": ">=4.0.0 <4.1.0-0"
},
"dependencies": {
"isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
- "dev": true
- },
- "process-nextick-args": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
- "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==",
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
+ "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=",
"dev": true
},
"readable-stream": {
- "version": "2.3.7",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
- "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==",
+ "version": "1.0.34",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz",
+ "integrity": "sha1-Elgg40vIQtLyqq+v5MKRbuMsFXw=",
"dev": 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"
- }
- },
- "string_decoder": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
- "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
- "dev": true,
- "requires": {
- "safe-buffer": "~5.1.0"
+ "inherits": "~2.0.1",
+ "isarray": "0.0.1",
+ "string_decoder": "~0.10.x"
}
}
}
@@ -14471,10 +12513,10 @@
"integrity": "sha1-zCAOqyYT9BZtJ/+a/HylbUnfbrQ=",
"dev": true
},
- "trim": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/trim/-/trim-0.0.1.tgz",
- "integrity": "sha1-WFhUf2spB1fulczMZm+1AITEYN0=",
+ "trim-newlines": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz",
+ "integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=",
"dev": true
},
"trim-repeated": {
@@ -14524,21 +12566,6 @@
"prelude-ls": "^1.2.1"
}
},
- "type-fest": {
- "version": "0.8.1",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
- "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
- "dev": true
- },
- "typedarray-to-buffer": {
- "version": "3.1.5",
- "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz",
- "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==",
- "dev": true,
- "requires": {
- "is-typedarray": "^1.0.0"
- }
- },
"ua-parser-js": {
"version": "0.7.28",
"resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-0.7.28.tgz",
@@ -14582,34 +12609,6 @@
"integrity": "sha1-5z3T17DXxe2G+6xrCufYxqadUPo=",
"dev": true
},
- "unicode-canonical-property-names-ecmascript": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-1.0.4.tgz",
- "integrity": "sha512-jDrNnXWHd4oHiTZnx/ZG7gtUTVp+gCcTTKr8L0HjlwphROEW3+Him+IpvC+xcJEFegapiMZyZe02CyuOnRmbnQ==",
- "dev": true
- },
- "unicode-match-property-ecmascript": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-1.0.4.tgz",
- "integrity": "sha512-L4Qoh15vTfntsn4P1zqnHulG0LdXgjSO035fEpdtp6YxXhMT51Q6vgM5lYdG/5X3MjS+k/Y9Xw4SFCY9IkR0rg==",
- "dev": true,
- "requires": {
- "unicode-canonical-property-names-ecmascript": "^1.0.4",
- "unicode-property-aliases-ecmascript": "^1.0.4"
- }
- },
- "unicode-match-property-value-ecmascript": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz",
- "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==",
- "dev": true
- },
- "unicode-property-aliases-ecmascript": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz",
- "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==",
- "dev": true
- },
"universalify": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
@@ -14631,24 +12630,12 @@
"punycode": "^2.1.0"
}
},
- "util-deprecate": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
- "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
- "dev": true
- },
"utils-merge": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
"integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=",
"dev": true
},
- "uuid": {
- "version": "3.4.0",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz",
- "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==",
- "dev": true
- },
"v8-compile-cache": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz",
@@ -14717,12 +12704,6 @@
"integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=",
"dev": true
},
- "which-pm-runs": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/which-pm-runs/-/which-pm-runs-1.0.0.tgz",
- "integrity": "sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs=",
- "dev": true
- },
"which-typed-array": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.4.tgz",
@@ -14820,18 +12801,6 @@
"integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
"dev": true
},
- "write-file-atomic": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz",
- "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==",
- "dev": true,
- "requires": {
- "imurmurhash": "^0.1.4",
- "is-typedarray": "^1.0.0",
- "signal-exit": "^3.0.2",
- "typedarray-to-buffer": "^3.1.5"
- }
- },
"ws": {
"version": "7.4.6",
"resolved": "https://registry.npmjs.org/ws/-/ws-7.4.6.tgz",
@@ -14863,12 +12832,6 @@
"integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=",
"dev": true
},
- "yaml": {
- "version": "1.10.0",
- "resolved": "https://registry.npmjs.org/yaml/-/yaml-1.10.0.tgz",
- "integrity": "sha512-yr2icI4glYaNG+KWONODapy2/jDdMSDnrONSjblABjD9B4Z5LgiircSt8m8sRZFNi08kG9Sm0uSHtEmP3zaEGg==",
- "dev": true
- },
"yargs": {
"version": "15.4.1",
"resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz",
@@ -14929,12 +12892,6 @@
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
"dev": true
},
- "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",
@@ -14945,12 +12902,6 @@
"path-exists": "^4.0.0"
}
},
- "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",
@@ -14975,17 +12926,6 @@
"integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
"dev": true
},
- "string-width": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz",
- "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==",
- "dev": true,
- "requires": {
- "emoji-regex": "^8.0.0",
- "is-fullwidth-code-point": "^3.0.0",
- "strip-ansi": "^6.0.0"
- }
- },
"strip-ansi": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
diff --git a/package.json b/package.json
index 5e0df034..2bddb6a1 100644
--- a/package.json
+++ b/package.json
@@ -1,9 +1,17 @@
{
"name": "culori",
- "version": "0.20.1",
- "main": "build/culori.umd.js",
- "browser": "build/culori.umd.js",
- "module": "build/culori.js",
+ "version": "1.0.0-alpha.14",
+ "type": "module",
+ "main": "./bundled/culori.cjs",
+ "module": "./bundled/culori.min.mjs",
+ "browser": "./bundled/culori.min.js",
+ "jsdelivr": "./bundled/culori.umd.js",
+ "exports": {
+ "./require": "./bundled/culori.cjs",
+ ".": "./src/index.js",
+ "./css": "./src/index-css.js",
+ "./fn": "./src/index-fn.js"
+ },
"repository": "git@github.com:Evercoder/culori.git",
"author": "Dan Burzo ",
"description": "A general-purpose color library for JavaScript",
@@ -30,43 +38,32 @@
],
"license": "MIT",
"files": [
- "build"
+ "bundled",
+ "src"
],
"devDependencies": {
"@11ty/eleventy": "^0.12.1",
"@11ty/eleventy-plugin-syntaxhighlight": "^3.1.2",
- "@rollup/plugin-buble": "^0.21.3",
+ "esbuild": "^0.13.3",
"eslint": "^7.32.0",
"eslint-plugin-import": "^2.24.2",
- "esm": "^3.2.25",
"gh-pages": "^3.2.3",
- "husky": "^4.2.5",
- "nyc": "^15.1.0",
"prettier": "^2.4.1",
"pretty-quick": "^3.1.1",
- "rollup": "^2.56.3",
- "rollup-plugin-terser": "^7.0.2",
- "tap-spec": "^5.0.0",
+ "tap-spec": "^2.2.2",
"tape": "^5.3.1"
},
"scripts": {
- "start": "rollup -cw",
- "build": "rollup -c",
- "test": "tape -r esm 'test/*.js' | tap-spec",
+ "prepare": "git config core.hooksPath .git-hooks",
+ "test": "tape 'test/*.js' | tap-spec",
+ "build": "node build.js",
"benchmark": "node benchmark/index.js",
"prepublishOnly": "npm run lint && npm run build && npm run test",
- "coverage:report": "nyc report --reporter=lcov",
- "coverage:test": "nyc --produce-source-map tape -r esm 'test/*.js' | tap-spec",
- "docs:start": "eleventy --serve",
- "docs:build": "rm -rf www && eleventy",
+ "docs:start": "eleventy --config=eleventy.config.cjs --serve",
+ "docs:build": "rm -rf www && eleventy --config=eleventy.config.cjs",
"docs:deploy": "npm run docs:build && gh-pages -d www --dotfiles",
"lint": "eslint '{src,test}/**/*.js'"
},
- "husky": {
- "hooks": {
- "pre-commit": "pretty-quick --staged"
- }
- },
"prettier": {
"bracketSpacing": true,
"semi": true,
@@ -77,5 +74,8 @@
"arrowParens": "avoid",
"printWidth": 80
},
- "sideEffects": false
+ "sideEffects": false,
+ "engines": {
+ "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
+ }
}
diff --git a/rollup.config.js b/rollup.config.js
deleted file mode 100644
index bd032a5c..00000000
--- a/rollup.config.js
+++ /dev/null
@@ -1,26 +0,0 @@
-import buble from '@rollup/plugin-buble';
-import { terser } from 'rollup-plugin-terser';
-import pkg from './package.json';
-
-export default [
- // UMD, minified
- {
- input: 'src/index.js',
- output: {
- file: pkg.main,
- format: 'umd',
- name: 'culori'
- },
- plugins: [buble({ objectAssign: 'Object.assign' }), terser()]
- },
-
- // ES6 modules
- {
- input: 'src/index.js',
- output: {
- file: pkg.module,
- format: 'es'
- },
- plugins: [buble({ objectAssign: 'Object.assign' })]
- }
-];
diff --git a/src/a98/definition.js b/src/a98/definition.js
index 7b3f121b..6c35d078 100644
--- a/src/a98/definition.js
+++ b/src/a98/definition.js
@@ -8,15 +8,15 @@ import convertXyz65ToRgb from '../xyz65/convertXyz65ToRgb.js';
const definition = {
...rgb,
mode: 'a98',
- parsers: ['a98-rgb'],
- serialize: 'color(a98-rgb ',
+ parse: ['a98-rgb'],
+ serialize: 'a98-rgb',
- input: {
+ fromMode: {
rgb: color => convertXyz65ToA98(convertRgbToXyz65(color)),
xyz65: convertXyz65ToA98
},
- output: {
+ toMode: {
rgb: color => convertXyz65ToRgb(convertA98ToXyz65(color)),
xyz65: convertA98ToXyz65
}
diff --git a/src/average.js b/src/average.js
index 1546d09c..6fb6e673 100644
--- a/src/average.js
+++ b/src/average.js
@@ -1,5 +1,5 @@
import converter from './converter.js';
-import { getModeDefinition } from './modes.js';
+import { getMode } from './modes.js';
const averageAngle = val => {
// See: https://en.wikipedia.org/wiki/Mean_of_circular_quantities
@@ -25,7 +25,7 @@ const averageNumber = val => {
const isfn = o => typeof o === 'function';
function average(colors, mode = 'rgb', overrides) {
- let def = getModeDefinition(mode);
+ let def = getMode(mode);
let cc = colors.map(converter(mode));
return def.channels.reduce(
(res, ch) => {
diff --git a/src/blend.js b/src/blend.js
index 9947f451..451b35d9 100644
--- a/src/blend.js
+++ b/src/blend.js
@@ -9,7 +9,7 @@
*/
import converter from './converter.js';
-import { getModeDefinition } from './modes.js';
+import { getMode } from './modes.js';
const BLENDS = {
normal: (b, s) => s,
@@ -40,7 +40,7 @@ const blend = (colors, type = 'normal', mode = 'rgb') => {
let conv = converter(mode);
// get mode channels
- let channels = getModeDefinition(mode).channels;
+ let channels = getMode(mode).channels;
// convert all colors to the mode
// and assume undefined alphas are 1
diff --git a/src/clamp.js b/src/clamp.js
index ffa3ee2b..26febfc9 100644
--- a/src/clamp.js
+++ b/src/clamp.js
@@ -1,7 +1,7 @@
import converter from './converter.js';
import displayable from './displayable.js';
import prepare from './_prepare.js';
-import { getModeDefinition } from './modes.js';
+import { getMode } from './modes.js';
let rgb = converter('rgb');
@@ -13,7 +13,7 @@ const fixup_rgb = color => {
return c;
};
-const clampRgb = color => {
+export const clampRgb = color => {
color = prepare(color);
// if the color is undefined or displayable, return it directly
@@ -25,7 +25,7 @@ const clampRgb = color => {
return conv(fixup_rgb(color));
};
-const clampChroma = (color, mode = 'lch') => {
+export const clampChroma = (color, mode = 'lch') => {
color = prepare(color);
// if the color is undefined or displayable, return it directly
@@ -50,7 +50,7 @@ const clampChroma = (color, mode = 'lch') => {
// Find the displayable chroma through the bisection method.
let start = 0;
let end = color.c;
- let range = getModeDefinition(mode).ranges.c;
+ let range = getMode(mode).ranges.c;
let resolution = (range[1] - range[0]) / Math.pow(2, 13);
let _last_good_c;
@@ -68,15 +68,3 @@ const clampChroma = (color, mode = 'lch') => {
displayable(clamped) ? clamped : { ...clamped, c: _last_good_c }
);
};
-
-// Deprecated / no longer documented
-const clamp = (method = 'rgb') => {
- switch (method) {
- case 'rgb':
- return clampRgb;
- case 'lch':
- return clampChroma;
- }
-};
-
-export { clampRgb, clampChroma, clamp };
diff --git a/src/cubehelix/definition.js b/src/cubehelix/definition.js
index ab70adbb..81be15d1 100644
--- a/src/cubehelix/definition.js
+++ b/src/cubehelix/definition.js
@@ -42,8 +42,8 @@ import { averageAngle } from '../average.js';
const definition = {
mode: 'cubehelix',
channels: ['h', 's', 'l', 'alpha'],
- parsers: ['--cubehelix'],
- serialize: 'color(--cubehelix ',
+ parse: ['--cubehelix'],
+ serialize: '--cubehelix',
ranges: {
h: [0, 360],
@@ -51,11 +51,11 @@ const definition = {
l: [0, 1]
},
- input: {
+ fromMode: {
rgb: convertRgbToCubehelix
},
- output: {
+ toMode: {
rgb: convertCubehelixToRgb
},
diff --git a/src/deficiency.js b/src/deficiency.js
index c7e2c596..657c7e26 100644
--- a/src/deficiency.js
+++ b/src/deficiency.js
@@ -182,8 +182,9 @@ const deficiency = (lut, t) => {
};
};
-const deficiencyProt = (severity = 1) => deficiency(PROT, severity);
-const deficiencyDeuter = (severity = 1) => deficiency(DEUTER, severity);
-const deficiencyTrit = (severity = 1) => deficiency(TRIT, severity);
-
-export { deficiencyProt, deficiencyDeuter, deficiencyTrit };
+export const filterDeficiencyProt = (severity = 1) =>
+ deficiency(PROT, severity);
+export const filterDeficiencyDeuter = (severity = 1) =>
+ deficiency(DEUTER, severity);
+export const filterDeficiencyTrit = (severity = 1) =>
+ deficiency(TRIT, severity);
diff --git a/src/difference.js b/src/difference.js
index 0a01ca9f..198288fb 100644
--- a/src/difference.js
+++ b/src/difference.js
@@ -1,4 +1,4 @@
-import { getModeDefinition } from './modes.js';
+import { getMode } from './modes.js';
import converter from './converter.js';
import normalizeHue from './util/normalizeHue.js';
@@ -36,7 +36,7 @@ const differenceHueChroma = (std, smp) => {
};
const differenceEuclidean = (mode = 'rgb', weights = [1, 1, 1, 0]) => {
- let def = getModeDefinition(mode);
+ let def = getMode(mode);
let channels = def.channels;
let diffs = def.difference;
let conv = converter(mode);
@@ -278,8 +278,6 @@ const differenceHyab = () => {
};
};
-const differenceDin99o = () => differenceEuclidean('dlab');
-
/*
"Measuring perceived color difference using YIQ NTSC
transmission color space in mobile applications"
@@ -304,6 +302,5 @@ export {
differenceCiede2000,
differenceCmc,
differenceHyab,
- differenceDin99o,
differenceKotsarenkoRamos
};
diff --git a/src/dlab/definition.js b/src/dlab/definition.js
index c7cb5aa1..b225f1bd 100644
--- a/src/dlab/definition.js
+++ b/src/dlab/definition.js
@@ -8,15 +8,15 @@ import { fixupAlpha } from '../fixup/alpha.js';
const definition = {
mode: 'dlab',
- parsers: ['--din99o-lab'],
- serialize: 'color(--din99o-lab ',
+ parse: ['--din99o-lab'],
+ serialize: '--din99o-lab',
- output: {
+ toMode: {
lab65: convertDlabToLab65,
rgb: c => convertLab65ToRgb(convertDlabToLab65(c))
},
- input: {
+ fromMode: {
lab65: convertLab65ToDlab,
rgb: c => convertLab65ToDlab(convertRgbToLab65(c))
},
diff --git a/src/dlch/definition.js b/src/dlch/definition.js
index ca75408d..01c47bdb 100644
--- a/src/dlch/definition.js
+++ b/src/dlch/definition.js
@@ -14,16 +14,16 @@ import { averageAngle } from '../average.js';
const definition = {
mode: 'dlch',
- parsers: ['--din99o-lch'],
- serialize: 'color(--din99o-lch ',
+ parse: ['--din99o-lch'],
+ serialize: '--din99o-lch',
- output: {
+ toMode: {
lab65: convertDlchToLab65,
dlab: convertDlchToDlab,
rgb: c => convertLab65ToRgb(convertDlchToLab65(c))
},
- input: {
+ fromMode: {
lab65: convertLab65ToDlch,
dlab: convertDlabToDlch,
rgb: c => convertLab65ToDlch(convertRgbToLab65(c))
diff --git a/src/filter.js b/src/filter.js
index 0a884a18..8b3c09c5 100644
--- a/src/filter.js
+++ b/src/filter.js
@@ -2,7 +2,7 @@ import { mapper, mapTransferLinear } from './map.js';
import converter from './converter.js';
import prepare from './_prepare.js';
import lerp from './util/lerp.js';
-import { getModeDefinition } from './modes.js';
+import { getMode } from './modes.js';
const minzero = v => Math.max(v, 0);
const clamp = v => Math.max(Math.min(v, 1), 0);
@@ -99,7 +99,7 @@ const matrixHueRotate = degrees => {
const matrix = (values, mode, preserve_mode = false) => {
let conv = converter(mode);
- let channels = getModeDefinition(mode).channels;
+ let channels = getMode(mode).channels;
return color => {
let c = conv(color);
if (!c) {
diff --git a/src/formatter.js b/src/formatter.js
index 42bfc970..a8000a7b 100644
--- a/src/formatter.js
+++ b/src/formatter.js
@@ -1,7 +1,7 @@
import converter from './converter.js';
import round from './round.js';
import prepare from './_prepare.js';
-import { getModeDefinition } from './modes.js';
+import { getMode } from './modes.js';
let rgb = converter('rgb');
let hsl = converter('hsl');
@@ -10,7 +10,7 @@ let twoDecimals = round(2);
const clamp = value => Math.max(0, Math.min(1, value));
const fixup = value => Math.round(clamp(value) * 255);
-const formatHex = c => {
+export const formatHex = c => {
let color = rgb(c);
if (color === undefined) {
@@ -24,7 +24,7 @@ const formatHex = c => {
return '#' + ((1 << 24) | (r << 16) | (g << 8) | b).toString(16).slice(1);
};
-const formatHex8 = c => {
+export const formatHex8 = c => {
let color = rgb(c);
if (color === undefined) {
@@ -36,7 +36,7 @@ const formatHex8 = c => {
return formatHex(color) + ((1 << 8) | a).toString(16).slice(1);
};
-const formatRgb = c => {
+export const formatRgb = c => {
let color = rgb(c);
if (color === undefined) {
@@ -56,7 +56,7 @@ const formatRgb = c => {
}
};
-const formatHsl = c => {
+export const formatHsl = c => {
let color = hsl(c);
if (color === undefined) {
@@ -76,14 +76,14 @@ const formatHsl = c => {
}
};
-const formatCss = c => {
+export const formatCss = c => {
const color = prepare(c);
if (!color) {
return undefined;
}
- const def = getModeDefinition(color.mode);
+ const def = getMode(color.mode);
if (!def.serialize || typeof def.serialize === 'string') {
- let res = def.serialize || `color(--${color.mode} `;
+ let res = `color(${def.serialize || `--${color.mode}`} `;
def.channels.forEach((ch, i) => {
if (ch !== 'alpha') {
res += (i ? ' ' : '') + (color[ch] || 0);
@@ -99,16 +99,3 @@ const formatCss = c => {
}
return undefined;
};
-
-// Deprecated / no longer documented
-const formatter = (format = 'rgb') => {
- switch (format) {
- case 'rgb':
- return formatRgb;
- case 'hex':
- return formatHex;
- }
- return undefined;
-};
-
-export { formatHex, formatHex8, formatRgb, formatHsl, formatCss, formatter };
diff --git a/src/hsi/definition.js b/src/hsi/definition.js
index 2fc85030..d94a9641 100644
--- a/src/hsi/definition.js
+++ b/src/hsi/definition.js
@@ -9,14 +9,14 @@ import { averageAngle } from '../average.js';
const definition = {
mode: 'hsi',
- output: {
+ toMode: {
rgb: convertHsiToRgb
},
- parsers: ['--hsi'],
- serialize: 'color(--hsi ',
+ parse: ['--hsi'],
+ serialize: '--hsi',
- input: {
+ fromMode: {
rgb: convertRgbToHsi
},
diff --git a/src/hsl/definition.js b/src/hsl/definition.js
index 93d9bb32..57063a6f 100644
--- a/src/hsl/definition.js
+++ b/src/hsl/definition.js
@@ -10,11 +10,11 @@ import { averageAngle } from '../average.js';
const definition = {
mode: 'hsl',
- output: {
+ toMode: {
rgb: convertHslToRgb
},
- input: {
+ fromMode: {
rgb: convertRgbToHsl
},
@@ -24,7 +24,7 @@ const definition = {
h: [0, 360]
},
- parsers: [parseHsl],
+ parse: [parseHsl],
serialize: c =>
`hsl(${c.h || 0} ${c.s * 100}% ${c.l * 100}%${
c.alpha < 1 ? ` / ${c.alpha}` : ''
diff --git a/src/hsv/definition.js b/src/hsv/definition.js
index 7f6e8835..c9ebbe21 100644
--- a/src/hsv/definition.js
+++ b/src/hsv/definition.js
@@ -9,14 +9,14 @@ import { averageAngle } from '../average.js';
const definition = {
mode: 'hsv',
- output: {
+ toMode: {
rgb: convertHsvToRgb
},
- parsers: ['--hsv'],
- serialize: 'color(--hsv ',
+ parse: ['--hsv'],
+ serialize: '--hsv',
- input: {
+ fromMode: {
rgb: convertRgbToHsv
},
diff --git a/src/hwb/definition.js b/src/hwb/definition.js
index c6ab6f9d..5ea58c5f 100644
--- a/src/hwb/definition.js
+++ b/src/hwb/definition.js
@@ -10,11 +10,11 @@ import { averageAngle } from '../average.js';
const definition = {
mode: 'hwb',
- output: {
+ toMode: {
rgb: convertHwbToRgb
},
- input: {
+ fromMode: {
rgb: convertRgbToHwb
},
@@ -24,7 +24,7 @@ const definition = {
h: [0, 360]
},
- parsers: [parseHwb],
+ parse: [parseHwb],
serialize: c =>
`hwb(${c.h || 0} ${c.w * 100}% ${c.b * 100}%${
c.alpha < 1 ? ` / ${c.alpha}` : ''
diff --git a/src/index-css.js b/src/index-css.js
new file mode 100644
index 00000000..e2529a05
--- /dev/null
+++ b/src/index-css.js
@@ -0,0 +1,160 @@
+// Color space definitions
+import modeA98 from './a98/definition.js';
+import modeHsl from './hsl/definition.js';
+import modeHsv from './hsv/definition.js';
+import modeHwb from './hwb/definition.js';
+import modeLab from './lab/definition.js';
+import modeLab65 from './lab65/definition.js';
+import modeLch from './lch/definition.js';
+import modeLch65 from './lch65/definition.js';
+import modeLrgb from './lrgb/definition.js';
+import modeP3 from './p3/definition.js';
+import modeProphoto from './prophoto/definition.js';
+import modeRec2020 from './rec2020/definition.js';
+import modeRgb from './rgb/definition.js';
+import modeXyz from './xyz/definition.js';
+import modeXyz65 from './xyz65/definition.js';
+import { useMode } from './modes.js';
+
+export { default as converter } from './converter.js';
+
+export {
+ formatHex,
+ formatHex8,
+ formatRgb,
+ formatHsl,
+ formatCss
+} from './formatter.js';
+
+export { default as colorsNamed } from './colors/named.js';
+export { default as blend } from './blend.js';
+export { default as random } from './random.js';
+
+export {
+ fixupHueShorter,
+ fixupHueLonger,
+ fixupHueIncreasing,
+ fixupHueDecreasing
+} from './fixup/hue.js';
+
+export { fixupAlpha } from './fixup/alpha.js';
+
+export {
+ mapper,
+ mapAlphaMultiply,
+ mapAlphaDivide,
+ mapTransferLinear,
+ mapTransferGamma
+} from './map.js';
+
+export { average, averageAngle, averageNumber } from './average.js';
+
+export { default as round } from './round.js';
+export {
+ interpolate,
+ interpolateWith,
+ interpolateWithPremultipliedAlpha
+} from './interpolate/interpolate.js';
+
+export { interpolatorLinear } from './interpolate/linear.js';
+
+export { interpolatorPiecewise } from './interpolate/piecewise.js';
+
+export {
+ interpolatorSplineBasis,
+ interpolatorSplineBasisClosed
+} from './interpolate/splineBasis.js';
+
+export {
+ interpolatorSplineNatural,
+ interpolatorSplineNaturalClosed
+} from './interpolate/splineNatural.js';
+
+export {
+ interpolatorSplineMonotone,
+ interpolatorSplineMonotone2,
+ interpolatorSplineMonotoneClosed
+} from './interpolate/splineMonotone.js';
+
+export { default as lerp } from './interpolate/lerp.js';
+export { default as samples } from './samples.js';
+export { default as displayable } from './displayable.js';
+export { clampRgb, clampChroma } from './clamp.js';
+export { default as nearest } from './nearest.js';
+export { useMode, getMode } from './modes.js';
+export { default as parse } from './parse.js';
+
+export {
+ differenceEuclidean,
+ differenceCie76,
+ differenceCie94,
+ differenceCiede2000,
+ differenceCmc,
+ differenceHyab,
+ differenceHueSaturation,
+ differenceHueChroma,
+ differenceHueNaive,
+ differenceKotsarenkoRamos
+} from './difference.js';
+
+export {
+ filterBrightness,
+ filterContrast,
+ filterSepia,
+ filterInvert,
+ filterSaturate,
+ filterGrayscale,
+ filterHueRotate
+} from './filter.js';
+
+export {
+ filterDeficiencyProt,
+ filterDeficiencyDeuter,
+ filterDeficiencyTrit
+} from './deficiency.js';
+
+// Easings
+export { default as easingMidpoint } from './easing/midpoint.js';
+export { default as easingSmoothstep } from './easing/smoothstep.js';
+export { default as easingSmootherstep } from './easing/smootherstep.js';
+export { default as easingInOutSine } from './easing/inOutSine.js';
+export { default as easingGamma } from './easing/gamma.js';
+
+export {
+ luminance as wcagLuminance,
+ contrast as wcagContrast
+} from './wcag.js';
+
+export {
+ modeA98,
+ modeHsl,
+ modeHsv,
+ modeHwb,
+ modeLab,
+ modeLch,
+ modeLrgb,
+ modeP3,
+ modeProphoto,
+ modeRec2020,
+ modeRgb,
+ modeXyz,
+ modeLab65,
+ modeLch65,
+ modeXyz65
+};
+
+export const a98 = useMode(modeA98);
+export const hsl = useMode(modeHsl);
+export const hsv = useMode(modeHsv);
+export const hwb = useMode(modeHwb);
+export const lab = useMode(modeLab);
+export const lab65 = useMode(modeLab65);
+export const lch = useMode(modeLch);
+export const lch65 = useMode(modeLch65);
+export const lrgb = useMode(modeLrgb);
+export const p3 = useMode(modeP3);
+export const prophoto = useMode(modeProphoto);
+export const rec2020 = useMode(modeRec2020);
+export const rgb = useMode(modeRgb);
+export const xyz = useMode(modeXyz);
+export const xyz65 = useMode(modeXyz65);
diff --git a/src/index-fn.js b/src/index-fn.js
new file mode 100644
index 00000000..d69d9412
--- /dev/null
+++ b/src/index-fn.js
@@ -0,0 +1,136 @@
+// Color space definitions
+export { default as modeA98 } from './a98/definition.js';
+export { default as modeCubehelix } from './cubehelix/definition.js';
+export { default as modeDlab } from './dlab/definition.js';
+export { default as modeDlch } from './dlch/definition.js';
+export { default as modeHsi } from './hsi/definition.js';
+export { default as modeHsl } from './hsl/definition.js';
+export { default as modeHsv } from './hsv/definition.js';
+export { default as modeHwb } from './hwb/definition.js';
+export { default as modeJab } from './jab/definition.js';
+export { default as modeJch } from './jch/definition.js';
+export { default as modeLab } from './lab/definition.js';
+export { default as modeLab65 } from './lab65/definition.js';
+export { default as modeLch } from './lch/definition.js';
+export { default as modeLch65 } from './lch65/definition.js';
+export { default as modeLchuv } from './lchuv/definition.js';
+export { default as modeLrgb } from './lrgb/definition.js';
+export { default as modeLuv } from './luv/definition.js';
+export { default as modeOklab } from './oklab/definition.js';
+export { default as modeOklch } from './oklch/definition.js';
+export { default as modeP3 } from './p3/definition.js';
+export { default as modeProphoto } from './prophoto/definition.js';
+export { default as modeRec2020 } from './rec2020/definition.js';
+export { default as modeRgb } from './rgb/definition.js';
+export { default as modeXyz } from './xyz/definition.js';
+export { default as modeXyz65 } from './xyz65/definition.js';
+export { default as modeYiq } from './yiq/definition.js';
+
+export { default as converter } from './converter.js';
+
+export {
+ formatHex,
+ formatHex8,
+ formatRgb,
+ formatHsl,
+ formatCss
+} from './formatter.js';
+
+export { default as colorsNamed } from './colors/named.js';
+export { default as blend } from './blend.js';
+export { default as random } from './random.js';
+
+export {
+ fixupHueShorter,
+ fixupHueLonger,
+ fixupHueIncreasing,
+ fixupHueDecreasing
+} from './fixup/hue.js';
+
+export { fixupAlpha } from './fixup/alpha.js';
+
+export {
+ mapper,
+ mapAlphaMultiply,
+ mapAlphaDivide,
+ mapTransferLinear,
+ mapTransferGamma
+} from './map.js';
+
+export { average, averageAngle, averageNumber } from './average.js';
+
+export { default as round } from './round.js';
+export {
+ interpolate,
+ interpolateWith,
+ interpolateWithPremultipliedAlpha
+} from './interpolate/interpolate.js';
+
+export { interpolatorLinear } from './interpolate/linear.js';
+
+export { interpolatorPiecewise } from './interpolate/piecewise.js';
+
+export {
+ interpolatorSplineBasis,
+ interpolatorSplineBasisClosed
+} from './interpolate/splineBasis.js';
+
+export {
+ interpolatorSplineNatural,
+ interpolatorSplineNaturalClosed
+} from './interpolate/splineNatural.js';
+
+export {
+ interpolatorSplineMonotone,
+ interpolatorSplineMonotone2,
+ interpolatorSplineMonotoneClosed
+} from './interpolate/splineMonotone.js';
+
+export { default as lerp } from './interpolate/lerp.js';
+export { default as samples } from './samples.js';
+export { default as displayable } from './displayable.js';
+export { clampRgb, clampChroma } from './clamp.js';
+export { default as nearest } from './nearest.js';
+export { useMode, getMode } from './modes.js';
+export { default as parse } from './parse.js';
+
+export {
+ differenceEuclidean,
+ differenceCie76,
+ differenceCie94,
+ differenceCiede2000,
+ differenceCmc,
+ differenceHyab,
+ differenceHueSaturation,
+ differenceHueChroma,
+ differenceHueNaive,
+ differenceKotsarenkoRamos
+} from './difference.js';
+
+export {
+ filterBrightness,
+ filterContrast,
+ filterSepia,
+ filterInvert,
+ filterSaturate,
+ filterGrayscale,
+ filterHueRotate
+} from './filter.js';
+
+export {
+ filterDeficiencyProt,
+ filterDeficiencyDeuter,
+ filterDeficiencyTrit
+} from './deficiency.js';
+
+// Easings
+export { default as easingMidpoint } from './easing/midpoint.js';
+export { default as easingSmoothstep } from './easing/smoothstep.js';
+export { default as easingSmootherstep } from './easing/smootherstep.js';
+export { default as easingInOutSine } from './easing/inOutSine.js';
+export { default as easingGamma } from './easing/gamma.js';
+
+export {
+ luminance as wcagLuminance,
+ contrast as wcagContrast
+} from './wcag.js';
diff --git a/src/index.js b/src/index.js
index 19e53195..d2935f0f 100644
--- a/src/index.js
+++ b/src/index.js
@@ -1,126 +1,65 @@
-import rgbDef from './rgb/definition.js';
-import lrgbDef from './lrgb/definition.js';
-import a98Def from './a98/definition.js';
-import p3Def from './p3/definition.js';
-import prophotoDef from './prophoto/definition.js';
-import rec2020Def from './rec2020/definition.js';
-import hslDef from './hsl/definition.js';
-import hsvDef from './hsv/definition.js';
-import hsiDef from './hsi/definition.js';
-import hwbDef from './hwb/definition.js';
-import jabDef from './jab/definition.js';
-import jchDef from './jch/definition.js';
-import labDef from './lab/definition.js';
-import lab65Def from './lab65/definition.js';
-import lchDef from './lch/definition.js';
-import lch65Def from './lch65/definition.js';
-import luvDef from './luv/definition.js';
-import lchuvDef from './lchuv/definition.js';
-import cubehelixDef from './cubehelix/definition.js';
-import dlabDef from './dlab/definition.js';
-import dlchDef from './dlch/definition.js';
-import xyzDef from './xyz/definition.js';
-import xyz65Def from './xyz65/definition.js';
-import yiqDef from './yiq/definition.js';
-import oklabDef from './oklab/definition.js';
-import oklchDef from './oklch/definition.js';
-
-import { defineMode } from './modes.js';
-import converter from './converter.js';
-
-defineMode(a98Def);
-defineMode(cubehelixDef);
-defineMode(dlabDef);
-defineMode(dlchDef);
-defineMode(hsiDef);
-defineMode(hslDef);
-defineMode(hsvDef);
-defineMode(hwbDef);
-defineMode(jabDef);
-defineMode(jchDef);
-defineMode(labDef);
-defineMode(lab65Def);
-defineMode(lchDef);
-defineMode(lch65Def);
-defineMode(lchuvDef);
-defineMode(lrgbDef);
-defineMode(luvDef);
-defineMode(p3Def);
-defineMode(prophotoDef);
-defineMode(rec2020Def);
-defineMode(rgbDef);
-defineMode(xyz65Def);
-defineMode(xyzDef);
-defineMode(yiqDef);
-defineMode(oklabDef);
-defineMode(oklchDef);
-
-let a98 = converter('a98');
-let cubehelix = converter('cubehelix');
-let dlab = converter('dlab');
-let dlch = converter('dlch');
-let hsi = converter('hsi');
-let hsl = converter('hsl');
-let hsv = converter('hsv');
-let hwb = converter('hwb');
-let jab = converter('jab');
-let jch = converter('jch');
-let lab = converter('lab');
-let lab65 = converter('lab65');
-let lch = converter('lch');
-let lch65 = converter('lch65');
-let lchuv = converter('lchuv');
-let lrgb = converter('lrgb');
-let luv = converter('luv');
-let p3 = converter('p3');
-let prophoto = converter('prophoto');
-let rec2020 = converter('rec2020');
-let rgb = converter('rgb');
-let xyz = converter('xyz');
-let xyz65 = converter('xyz65');
-let yiq = converter('yiq');
-let oklab = converter('oklab');
-let oklch = converter('oklch');
+// Color space definitions
+import modeA98 from './a98/definition.js';
+import modeCubehelix from './cubehelix/definition.js';
+import modeDlab from './dlab/definition.js';
+import modeDlch from './dlch/definition.js';
+import modeHsi from './hsi/definition.js';
+import modeHsl from './hsl/definition.js';
+import modeHsv from './hsv/definition.js';
+import modeHwb from './hwb/definition.js';
+import modeJab from './jab/definition.js';
+import modeJch from './jch/definition.js';
+import modeLab from './lab/definition.js';
+import modeLab65 from './lab65/definition.js';
+import modeLch from './lch/definition.js';
+import modeLch65 from './lch65/definition.js';
+import modeLchuv from './lchuv/definition.js';
+import modeLrgb from './lrgb/definition.js';
+import modeLuv from './luv/definition.js';
+import modeOklab from './oklab/definition.js';
+import modeOklch from './oklch/definition.js';
+import modeP3 from './p3/definition.js';
+import modeProphoto from './prophoto/definition.js';
+import modeRec2020 from './rec2020/definition.js';
+import modeRgb from './rgb/definition.js';
+import modeXyz from './xyz/definition.js';
+import modeXyz65 from './xyz65/definition.js';
+import modeYiq from './yiq/definition.js';
+import { useMode } from './modes.js';
+
+export { default as converter } from './converter.js';
export {
- a98,
- converter,
- cubehelix,
- defineMode,
- dlab,
- dlch,
- hsi,
- hsl,
- hsv,
- hwb,
- jab,
- jch,
- lab,
- lab65,
- lch,
- lch65,
- lchuv,
- lrgb,
- luv,
- p3,
- prophoto,
- rec2020,
- rgb,
- xyz,
- xyz65,
- yiq,
- oklab,
- oklch
-};
-
-export {
- formatter,
formatHex,
formatHex8,
formatRgb,
formatHsl,
formatCss
} from './formatter.js';
+
+export { default as colorsNamed } from './colors/named.js';
+export { default as blend } from './blend.js';
+export { default as random } from './random.js';
+
+export {
+ fixupHueShorter,
+ fixupHueLonger,
+ fixupHueIncreasing,
+ fixupHueDecreasing
+} from './fixup/hue.js';
+
+export { fixupAlpha } from './fixup/alpha.js';
+
+export {
+ mapper,
+ mapAlphaMultiply,
+ mapAlphaDivide,
+ mapTransferLinear,
+ mapTransferGamma
+} from './map.js';
+
+export { average, averageAngle, averageNumber } from './average.js';
+
export { default as round } from './round.js';
export {
interpolate,
@@ -128,30 +67,21 @@ export {
interpolateWithPremultipliedAlpha
} from './interpolate/interpolate.js';
-export {
- interpolateLinear, // @deprecated
- interpolatorLinear
-} from './interpolate/linear.js';
+export { interpolatorLinear } from './interpolate/linear.js';
export { interpolatorPiecewise } from './interpolate/piecewise.js';
-// @deprecated
-export { default as interpolateCosine } from './interpolate/cosine.js';
-
export {
- interpolateSplineBasis, // @deprecated
interpolatorSplineBasis,
interpolatorSplineBasisClosed
} from './interpolate/splineBasis.js';
export {
- interpolateSplineNatural, // @deprecated
interpolatorSplineNatural,
interpolatorSplineNaturalClosed
} from './interpolate/splineNatural.js';
export {
- interpolateSplineMonotone, // @deprecated
interpolatorSplineMonotone,
interpolatorSplineMonotone2,
interpolatorSplineMonotoneClosed
@@ -160,10 +90,11 @@ export {
export { default as lerp } from './interpolate/lerp.js';
export { default as samples } from './samples.js';
export { default as displayable } from './displayable.js';
-export { clamp, clampRgb, clampChroma } from './clamp.js';
+export { clampRgb, clampChroma } from './clamp.js';
export { default as nearest } from './nearest.js';
-export { getModeDefinition } from './modes.js';
+export { useMode, getMode } from './modes.js';
export { default as parse } from './parse.js';
+
export {
differenceEuclidean,
differenceCie76,
@@ -171,15 +102,27 @@ export {
differenceCiede2000,
differenceCmc,
differenceHyab,
- differenceDin99o,
- differenceKotsarenkoRamos,
differenceHueSaturation,
differenceHueChroma,
- differenceHueNaive
+ differenceHueNaive,
+ differenceKotsarenkoRamos
} from './difference.js';
-export { default as colorsNamed } from './colors/named.js';
-export { default as blend } from './blend.js';
-export { default as random } from './random.js';
+
+export {
+ filterBrightness,
+ filterContrast,
+ filterSepia,
+ filterInvert,
+ filterSaturate,
+ filterGrayscale,
+ filterHueRotate
+} from './filter.js';
+
+export {
+ filterDeficiencyProt,
+ filterDeficiencyDeuter,
+ filterDeficiencyTrit
+} from './deficiency.js';
// Easings
export { default as easingMidpoint } from './easing/midpoint.js';
@@ -194,44 +137,57 @@ export {
} from './wcag.js';
export {
- deficiencyProt as filterDeficiencyProt,
- deficiencyDeuter as filterDeficiencyDeuter,
- deficiencyTrit as filterDeficiencyTrit,
- // @deprecated
- deficiencyProt,
- deficiencyDeuter,
- deficiencyTrit
-} from './deficiency.js';
-
-export {
- fixupHueShorter as interpolateHue, // @deprecated
- fixupHueShorter,
- fixupHueLonger,
- fixupHueIncreasing,
- fixupHueDecreasing
-} from './fixup/hue.js';
-
-export {
- fixupAlpha,
- fixupAlpha as interpolateAlpha // @deprecated
-} from './fixup/alpha.js';
-
-export {
- mapper,
- mapAlphaMultiply,
- mapAlphaDivide,
- mapTransferLinear,
- mapTransferGamma
-} from './map.js';
-
-export {
- filterBrightness,
- filterContrast,
- filterSepia,
- filterInvert,
- filterSaturate,
- filterGrayscale,
- filterHueRotate
-} from './filter.js';
+ modeA98,
+ modeCubehelix,
+ modeDlab,
+ modeDlch,
+ modeHsi,
+ modeHsl,
+ modeHsv,
+ modeHwb,
+ modeJab,
+ modeJch,
+ modeLab,
+ modeLab65,
+ modeLch,
+ modeLch65,
+ modeLchuv,
+ modeLrgb,
+ modeLuv,
+ modeOklab,
+ modeOklch,
+ modeP3,
+ modeProphoto,
+ modeRec2020,
+ modeRgb,
+ modeXyz,
+ modeXyz65,
+ modeYiq
+};
-export { average, averageAngle, averageNumber } from './average.js';
+export const a98 = useMode(modeA98);
+export const cubehelix = useMode(modeCubehelix);
+export const dlab = useMode(modeDlab);
+export const dlch = useMode(modeDlch);
+export const hsi = useMode(modeHsi);
+export const hsl = useMode(modeHsl);
+export const hsv = useMode(modeHsv);
+export const hwb = useMode(modeHwb);
+export const jab = useMode(modeJab);
+export const jch = useMode(modeJch);
+export const lab = useMode(modeLab);
+export const lab65 = useMode(modeLab65);
+export const lch = useMode(modeLch);
+export const lch65 = useMode(modeLch65);
+export const lchuv = useMode(modeLchuv);
+export const lrgb = useMode(modeLrgb);
+export const luv = useMode(modeLuv);
+export const oklab = useMode(modeOklab);
+export const oklch = useMode(modeOklch);
+export const p3 = useMode(modeP3);
+export const prophoto = useMode(modeProphoto);
+export const rec2020 = useMode(modeRec2020);
+export const rgb = useMode(modeRgb);
+export const xyz = useMode(modeXyz);
+export const xyz65 = useMode(modeXyz65);
+export const yiq = useMode(modeYiq);
diff --git a/src/interpolate/interpolate.js b/src/interpolate/interpolate.js
index d46df887..51b8c150 100644
--- a/src/interpolate/interpolate.js
+++ b/src/interpolate/interpolate.js
@@ -1,5 +1,5 @@
import converter from '../converter.js';
-import { getModeDefinition } from '../modes.js';
+import { getMode } from '../modes.js';
import normalizePositions from '../util/normalizePositions.js';
import easingMidpoint from '../easing/midpoint.js';
import { mapper, mapAlphaMultiply, mapAlphaDivide } from '../map.js';
@@ -9,7 +9,7 @@ const isobj = o => o && typeof o === 'object';
const isnum = o => typeof o === 'number';
const interpolate_fn = (colors, mode = 'rgb', overrides, premap) => {
- let def = getModeDefinition(mode);
+ let def = getMode(mode);
let conv = converter(mode);
let conv_colors = [];
diff --git a/src/interpolate/linear.js b/src/interpolate/linear.js
index d5a04982..47d6f5fc 100644
--- a/src/interpolate/linear.js
+++ b/src/interpolate/linear.js
@@ -1,18 +1,4 @@
import lerp from './lerp.js';
-import gamma from '../easing/gamma.js';
import { interpolatorPiecewise } from './piecewise.js';
-const interpolatorLinear = interpolatorPiecewise(lerp);
-
-const interpolateLinear =
- (fixup, γ = 1) =>
- arr => {
- let ease = gamma(γ);
- return t => interpolatorLinear((fixup || (v => v))(arr))(ease(t));
- };
-
-export {
- interpolatorLinear,
- // legacy
- interpolateLinear
-};
+export const interpolatorLinear = interpolatorPiecewise(lerp);
diff --git a/src/interpolate/splineBasis.js b/src/interpolate/splineBasis.js
index 8b831f4d..fc887c8b 100644
--- a/src/interpolate/splineBasis.js
+++ b/src/interpolate/splineBasis.js
@@ -1,5 +1,3 @@
-import gamma from '../easing/gamma.js';
-
/*
Basis spline
------------
@@ -35,7 +33,7 @@ const bspline = (Vim2, Vim1, Vi, Vip1, t) => {
);
};
-const interpolatorSplineBasis = arr => t => {
+export const interpolatorSplineBasis = arr => t => {
let classes = arr.length - 1;
let i = t >= 1 ? classes - 1 : Math.max(0, Math.floor(t * classes));
return bspline(
@@ -47,7 +45,7 @@ const interpolatorSplineBasis = arr => t => {
);
};
-const interpolatorSplineBasisClosed = arr => t => {
+export const interpolatorSplineBasisClosed = arr => t => {
const classes = arr.length - 1;
const i = Math.floor(t * classes);
return bspline(
@@ -58,24 +56,3 @@ const interpolatorSplineBasisClosed = arr => t => {
(t - i / classes) * classes
);
};
-
-const interpolateSplineBasis =
- (fixup, type = 'default', γ = 1) =>
- arr => {
- let ease = gamma(γ);
- if (type === 'default') {
- return t =>
- interpolatorSplineBasis((fixup || (v => v))(arr))(ease(t));
- } else if (type === 'closed') {
- return t =>
- interpolatorSplineBasisClosed((fixup || (v => v))(arr))(
- ease(t)
- );
- }
- };
-
-export {
- interpolateSplineBasis,
- interpolatorSplineBasis,
- interpolatorSplineBasisClosed
-};
diff --git a/src/interpolate/splineMonotone.js b/src/interpolate/splineMonotone.js
index 32340f98..4704b210 100644
--- a/src/interpolate/splineMonotone.js
+++ b/src/interpolate/splineMonotone.js
@@ -1,4 +1,3 @@
-import gamma from '../easing/gamma.js';
import { interpolatorLinear } from './linear.js';
/*
@@ -65,7 +64,7 @@ const interpolator = (arr, yp, s) => {
A monotone spline which uses one-sided finite differences
at the boundaries.
*/
-const interpolatorSplineMonotone = arr => {
+export const interpolatorSplineMonotone = arr => {
if (arr.length < 3) {
return interpolatorLinear(arr);
}
@@ -85,7 +84,7 @@ const interpolatorSplineMonotone = arr => {
linear interpolation.
*/
-const interpolatorSplineMonotone2 = arr => {
+export const interpolatorSplineMonotone2 = arr => {
if (arr.length < 3) {
return interpolatorLinear(arr);
}
@@ -112,7 +111,7 @@ const interpolatorSplineMonotone2 = arr => {
...and so on.
*/
-const interpolatorSplineMonotoneClosed = arr => {
+export const interpolatorSplineMonotoneClosed = arr => {
let n = arr.length - 1;
let [s, p, yp] = mono(arr);
// boundary conditions
@@ -127,25 +126,3 @@ const interpolatorSplineMonotoneClosed = arr => {
min(abs(s[n - 1]), abs(s_n), 0.5 * abs(p[n]));
return interpolator(arr, yp, s);
};
-
-const interpolateSplineMonotone =
- (fixup, type = 'default', γ = 1) =>
- arr => {
- let ease = gamma(γ);
- if (type === 'closed') {
- return t =>
- interpolatorSplineMonotoneClosed((fixup || (v => v))(arr))(
- ease(t)
- );
- } else if (type === 'default') {
- return t =>
- interpolatorSplineMonotone((fixup || (v => v))(arr))(ease(t));
- }
- };
-
-export {
- interpolateSplineMonotone,
- interpolatorSplineMonotone,
- interpolatorSplineMonotone2,
- interpolatorSplineMonotoneClosed
-};
diff --git a/src/interpolate/splineNatural.js b/src/interpolate/splineNatural.js
index e400aa77..17a3f934 100644
--- a/src/interpolate/splineNatural.js
+++ b/src/interpolate/splineNatural.js
@@ -2,7 +2,6 @@ import {
interpolatorSplineBasisClosed,
interpolatorSplineBasis
} from './splineBasis.js';
-import gamma from '../easing/gamma.js';
const solve = v => {
let i;
@@ -32,27 +31,7 @@ const solve = v => {
return sol;
};
-const interpolatorSplineNatural = arr => interpolatorSplineBasis(solve(arr));
-const interpolatorSplineNaturalClosed = arr =>
+export const interpolatorSplineNatural = arr =>
+ interpolatorSplineBasis(solve(arr));
+export const interpolatorSplineNaturalClosed = arr =>
interpolatorSplineBasisClosed(solve(arr));
-
-const interpolateSplineNatural =
- (fixup, type = 'default', γ = 1) =>
- arr => {
- let ease = gamma(γ);
- if (type === 'default') {
- return t =>
- interpolatorSplineNatural((fixup || (v => v))(arr))(ease(t));
- } else if (type === 'closed') {
- return t =>
- interpolatorSplineNaturalClosed((fixup || (v => v))(arr))(
- ease(t)
- );
- }
- };
-
-export {
- interpolateSplineNatural,
- interpolatorSplineNatural,
- interpolatorSplineNaturalClosed
-};
diff --git a/src/jab/definition.js b/src/jab/definition.js
index 5d2470de..26945c92 100644
--- a/src/jab/definition.js
+++ b/src/jab/definition.js
@@ -23,15 +23,15 @@ const definition = {
mode: 'jab',
channels: ['j', 'a', 'b', 'alpha'],
- parsers: ['--jzazbz'],
- serialize: 'color(--jzazbz ',
+ parse: ['--jzazbz'],
+ serialize: '--jzazbz',
- input: {
+ fromMode: {
rgb: convertRgbToJab,
xyz65: convertXyz65ToJab
},
- output: {
+ toMode: {
rgb: convertJabToRgb,
xyz65: convertJabToXyz65
},
diff --git a/src/jch/definition.js b/src/jch/definition.js
index 1acfe341..dbf1c3da 100644
--- a/src/jch/definition.js
+++ b/src/jch/definition.js
@@ -12,15 +12,15 @@ import { averageAngle } from '../average.js';
const definition = {
mode: 'jch',
- parsers: ['--jzczhz'],
- serialize: 'color(--jzczhz ',
+ parse: ['--jzczhz'],
+ serialize: '--jzczhz',
- output: {
+ toMode: {
jab: convertJchToJab,
rgb: c => convertJabToRgb(convertJchToJab(c))
},
- input: {
+ fromMode: {
rgb: c => convertJabToJch(convertRgbToJab(c)),
jab: convertJabToJch
},
diff --git a/src/lab/definition.js b/src/lab/definition.js
index f442fdbc..10141974 100644
--- a/src/lab/definition.js
+++ b/src/lab/definition.js
@@ -9,12 +9,12 @@ import { fixupAlpha } from '../fixup/alpha.js';
const definition = {
mode: 'lab',
- output: {
+ toMode: {
xyz: convertLabToXyz,
rgb: convertLabToRgb
},
- input: {
+ fromMode: {
xyz: convertXyzToLab,
rgb: convertRgbToLab
},
@@ -27,7 +27,7 @@ const definition = {
b: [-112.029, 93.388]
},
- parsers: [parseLab],
+ parse: [parseLab],
serialize: c =>
`lab(${c.l}% ${c.a} ${c.b}${c.alpha < 1 ? ` / ${c.alpha}` : ''})`,
diff --git a/src/lab65/definition.js b/src/lab65/definition.js
index 14c68882..c8f3397b 100644
--- a/src/lab65/definition.js
+++ b/src/lab65/definition.js
@@ -8,15 +8,15 @@ const definition = {
...lab,
mode: 'lab65',
- parsers: ['--lab-d65'],
- serialize: 'color(--lab-d65 ',
+ parse: ['--lab-d65'],
+ serialize: '--lab-d65',
- output: {
+ toMode: {
xyz65: convertLab65ToXyz65,
rgb: convertLab65ToRgb
},
- input: {
+ fromMode: {
xyz65: convertXyz65ToLab65,
rgb: convertRgbToLab65
},
diff --git a/src/lch/definition.js b/src/lch/definition.js
index 468fb28a..f782bdbb 100644
--- a/src/lch/definition.js
+++ b/src/lch/definition.js
@@ -12,12 +12,12 @@ import { averageAngle } from '../average.js';
const definition = {
mode: 'lch',
- output: {
+ toMode: {
lab: convertLchToLab,
rgb: c => convertLabToRgb(convertLchToLab(c))
},
- input: {
+ fromMode: {
rgb: c => convertLabToLch(convertRgbToLab(c)),
lab: convertLabToLch
},
@@ -30,7 +30,7 @@ const definition = {
h: [0, 360]
},
- parsers: [parseLch],
+ parse: [parseLch],
serialize: c =>
`lch(${c.l}% ${c.c} ${c.h || 0}${c.alpha < 1 ? ` / ${c.alpha}` : ''})`,
diff --git a/src/lch65/definition.js b/src/lch65/definition.js
index e9e65a0e..e16b1922 100644
--- a/src/lch65/definition.js
+++ b/src/lch65/definition.js
@@ -8,15 +8,15 @@ const definition = {
...lch,
mode: 'lch65',
- parsers: ['--lch-d65'],
- serialize: 'color(--lch-d65 ',
+ parse: ['--lch-d65'],
+ serialize: '--lch-d65',
- output: {
+ toMode: {
lab65: c => convertLchToLab(c, 'lab65'),
rgb: c => convertLab65ToRgb(convertLchToLab(c, 'lab65'))
},
- input: {
+ fromMode: {
rgb: c => convertLabToLch(convertRgbToLab65(c), 'lch65'),
lab65: c => convertLabToLch(c, 'lch65')
},
diff --git a/src/lchuv/definition.js b/src/lchuv/definition.js
index 35c5ce22..36f34f48 100644
--- a/src/lchuv/definition.js
+++ b/src/lchuv/definition.js
@@ -20,20 +20,20 @@ import { averageAngle } from '../average.js';
const definition = {
mode: 'lchuv',
- output: {
+ toMode: {
luv: convertLchuvToLuv,
rgb: convertLchuvToRgb
},
- input: {
+ fromMode: {
rgb: convertRgbToLchuv,
luv: convertLuvToLchuv
},
channels: ['l', 'c', 'h', 'alpha'],
- parsers: ['--lchuv'],
- serialize: 'color(--lchuv ',
+ parse: ['--lchuv'],
+ serialize: '--lchuv',
ranges: {
l: [0, 100],
diff --git a/src/lrgb/definition.js b/src/lrgb/definition.js
index d00f9655..405134bd 100644
--- a/src/lrgb/definition.js
+++ b/src/lrgb/definition.js
@@ -6,16 +6,16 @@ const definition = {
...rgb,
mode: 'lrgb',
- output: {
+ toMode: {
rgb: convertLrgbToRgb
},
- input: {
+ fromMode: {
rgb: convertRgbToLrgb
},
- parsers: ['--srgb-linear'],
- serialize: 'color(--srgb-linear '
+ parse: ['--srgb-linear'],
+ serialize: '--srgb-linear'
};
export default definition;
diff --git a/src/luv/definition.js b/src/luv/definition.js
index 1c285d3e..d668c9b1 100644
--- a/src/luv/definition.js
+++ b/src/luv/definition.js
@@ -17,20 +17,20 @@ import { fixupAlpha } from '../fixup/alpha.js';
const definition = {
mode: 'luv',
- output: {
+ toMode: {
xyz: convertLuvToXyz,
rgb: convertLuvToRgb
},
- input: {
+ fromMode: {
xyz: convertXyzToLuv,
rgb: convertRgbToLuv
},
channels: ['l', 'u', 'v', 'alpha'],
- parsers: ['--luv'],
- serialize: 'color(--luv ',
+ parse: ['--luv'],
+ serialize: '--luv',
ranges: {
l: [0, 100],
diff --git a/src/map.js b/src/map.js
index fd035edd..0b8da4e0 100644
--- a/src/map.js
+++ b/src/map.js
@@ -1,13 +1,13 @@
import converter from './converter.js';
import prepare from './_prepare.js';
-import { getModeDefinition } from './modes.js';
+import { getMode } from './modes.js';
const mapper = (fn, mode = 'rgb', preserve_mode = false) => {
- let channels = mode ? getModeDefinition(mode).channels : null;
+ let channels = mode ? getMode(mode).channels : null;
let conv = mode ? converter(mode) : prepare;
return color => {
let conv_color = conv(color);
- let res = (channels || getModeDefinition(color.mode).channels).reduce(
+ let res = (channels || getMode(color.mode).channels).reduce(
(res, ch) => {
let v = fn(conv_color[ch], ch, conv_color, mode);
if (v !== undefined && !isNaN(v)) {
diff --git a/src/modes.js b/src/modes.js
index 5caa38fd..95088cd0 100644
--- a/src/modes.js
+++ b/src/modes.js
@@ -1,3 +1,5 @@
+import converter from './converter.js';
+
const converters = {};
const modes = {};
@@ -6,16 +8,17 @@ const colorProfiles = {};
const identity = v => v;
-const defineMode = definition => {
- converters[definition.mode] = Object.assign(
- converters[definition.mode] || {},
- definition.output
- );
- Object.keys(definition.input || {}).forEach(k => {
+const useMode = definition => {
+ converters[definition.mode] = {
+ ...converters[definition.mode],
+ ...definition.toMode
+ };
+
+ Object.keys(definition.fromMode || {}).forEach(k => {
if (!converters[k]) {
converters[k] = {};
}
- converters[k][definition.mode] = definition.input[k];
+ converters[k][definition.mode] = definition.fromMode[k];
});
// Color space channel ranges
@@ -49,15 +52,17 @@ const defineMode = definition => {
});
modes[definition.mode] = definition;
- (definition.parsers || []).forEach(parser => {
+ (definition.parse || []).forEach(parser => {
if (typeof parser === 'function') {
parsers.push(parser);
} else if (typeof parser === 'string') {
colorProfiles[parser] = definition.mode;
}
});
+
+ return converter(definition.mode);
};
-const getModeDefinition = mode => modes[mode];
+const getMode = mode => modes[mode];
-export { defineMode, getModeDefinition, converters, parsers, colorProfiles };
+export { useMode, getMode, converters, parsers, colorProfiles };
diff --git a/src/oklab/definition.js b/src/oklab/definition.js
index 178a2bdf..8abd739f 100644
--- a/src/oklab/definition.js
+++ b/src/oklab/definition.js
@@ -14,12 +14,12 @@ const definition = {
...lab,
mode: 'oklab',
- output: {
+ toMode: {
lrgb: convertOklabToLrgb,
rgb: convertOklabToRgb
},
- input: {
+ fromMode: {
lrgb: convertLrgbToOklab,
rgb: convertRgbToOklab
},
@@ -30,8 +30,8 @@ const definition = {
b: [-0.311, 0.198]
},
- parsers: ['--oklab'],
- serialize: 'color(--oklab '
+ parse: ['--oklab'],
+ serialize: '--oklab'
};
export default definition;
diff --git a/src/oklch/definition.js b/src/oklch/definition.js
index 3a0045a8..418302b1 100644
--- a/src/oklch/definition.js
+++ b/src/oklch/definition.js
@@ -8,18 +8,18 @@ const definition = {
...lch,
mode: 'oklch',
- output: {
+ toMode: {
oklab: c => convertLchToLab(c, 'oklab'),
rgb: c => convertOklabToRgb(convertLchToLab(c, 'oklab'))
},
- input: {
+ fromMode: {
rgb: c => convertLabToLch(convertRgbToOklab(c), 'oklch'),
oklab: c => convertLabToLch(c, 'oklch')
},
- parsers: ['--oklch'],
- serialize: 'color(--oklch ',
+ parse: ['--oklch'],
+ serialize: '--oklch',
ranges: {
l: [0, 0.999],
diff --git a/src/p3/definition.js b/src/p3/definition.js
index b04e061d..6b7e3c7a 100644
--- a/src/p3/definition.js
+++ b/src/p3/definition.js
@@ -7,15 +7,15 @@ import convertXyz65ToRgb from '../xyz65/convertXyz65ToRgb.js';
const definition = {
...rgb,
mode: 'p3',
- parsers: ['display-p3'],
- serialize: 'color(display-p3 ',
+ parse: ['display-p3'],
+ serialize: 'display-p3',
- input: {
+ fromMode: {
rgb: color => convertXyz65ToP3(convertRgbToXyz65(color)),
xyz65: convertXyz65ToP3
},
- output: {
+ toMode: {
rgb: color => convertXyz65ToRgb(convertP3ToXyz65(color)),
xyz65: convertP3ToXyz65
}
diff --git a/src/parse.js b/src/parse.js
index a9cd5cc0..14a304a3 100644
--- a/src/parse.js
+++ b/src/parse.js
@@ -1,4 +1,4 @@
-import { parsers, colorProfiles, getModeDefinition } from './modes.js';
+import { parsers, colorProfiles, getMode } from './modes.js';
import { profiled } from './util/regex.js';
const parseColorSyntax = color => {
@@ -12,7 +12,7 @@ const parseColorSyntax = color => {
}
const res = { mode };
let i = 2;
- getModeDefinition(mode).channels.forEach(ch => {
+ getMode(mode).channels.forEach(ch => {
if (m[i] !== undefined || m[i + 1] !== undefined) {
res[ch] = m[i] !== undefined ? m[i] / 100 : +m[i + 1];
}
diff --git a/src/prophoto/definition.js b/src/prophoto/definition.js
index 82b41c5c..1ddb365d 100644
--- a/src/prophoto/definition.js
+++ b/src/prophoto/definition.js
@@ -16,15 +16,15 @@ import convertRgbToXyz from '../xyz/convertRgbToXyz.js';
const definition = {
...rgb,
mode: 'prophoto',
- parsers: ['prophoto-rgb'],
- serialize: 'color(prophoto-rgb ',
+ parse: ['prophoto-rgb'],
+ serialize: 'prophoto-rgb',
- input: {
+ fromMode: {
xyz: convertXyzToProphoto,
rgb: color => convertXyzToProphoto(convertRgbToXyz(color))
},
- output: {
+ toMode: {
xyz: convertProphotoToXyz,
rgb: color => convertXyzToRgb(convertProphotoToXyz(color))
}
diff --git a/src/random.js b/src/random.js
index 75cf0c01..212997cc 100644
--- a/src/random.js
+++ b/src/random.js
@@ -1,4 +1,4 @@
-import { getModeDefinition } from './modes.js';
+import { getMode } from './modes.js';
/*
Generate a random number between `min` and `max`
@@ -19,7 +19,7 @@ const to_intervals = constraints =>
Generate a random color.
*/
const random = (mode = 'rgb', constraints = {}) => {
- let def = getModeDefinition(mode);
+ let def = getMode(mode);
let limits = to_intervals(constraints);
return def.channels.reduce(
(res, ch) => {
diff --git a/src/rec2020/definition.js b/src/rec2020/definition.js
index c422f035..60a4e346 100644
--- a/src/rec2020/definition.js
+++ b/src/rec2020/definition.js
@@ -10,18 +10,18 @@ const definition = {
...rgb,
mode: 'rec2020',
- input: {
+ fromMode: {
xyz: convertXyz65ToRec2020,
rgb: color => convertXyz65ToRec2020(convertRgbToXyz65(color))
},
- output: {
+ toMode: {
xyz: convertRec2020ToXyz65,
rgb: color => convertXyz65ToRgb(convertRec2020ToXyz65(color))
},
- parsers: ['rec2020'],
- serialize: 'color(rec2020 '
+ parse: ['rec2020'],
+ serialize: 'rec2020'
};
export default definition;
diff --git a/src/rgb/definition.js b/src/rgb/definition.js
index bb1e7150..57e124fe 100644
--- a/src/rgb/definition.js
+++ b/src/rgb/definition.js
@@ -12,8 +12,8 @@ import { fixupAlpha } from '../fixup/alpha.js';
const definition = {
mode: 'rgb',
channels: ['r', 'g', 'b', 'alpha'],
- parsers: [parseHex, parseRgb, parseNamed, parseTransparent, 'srgb'],
- serialize: 'color(srgb ',
+ parse: [parseHex, parseRgb, parseNamed, parseTransparent, 'srgb'],
+ serialize: 'srgb',
interpolate: {
r: interpolatorLinear,
diff --git a/src/rgb/parseHex.js b/src/rgb/parseHex.js
index 3605d6d0..ff587717 100644
--- a/src/rgb/parseHex.js
+++ b/src/rgb/parseHex.js
@@ -3,6 +3,7 @@ import { hex } from '../util/regex.js';
const parseHex = color => {
let match;
+ // eslint-disable-next-line no-cond-assign
return (match = color.match(hex))
? parseNumber(parseInt(match[1], 16), match[1].length)
: undefined;
diff --git a/src/util/regex.js b/src/util/regex.js
index bfa66cad..5a0b243f 100644
--- a/src/util/regex.js
+++ b/src/util/regex.js
@@ -6,7 +6,7 @@
to be interpolated in the color regexes.
*/
-const num = (/([+-]?\d*\.?\d+(?:[eE][+-]?\d+)?)/ + '').replace(/^\/|\/$/g, ''); //
+const num = '([+-]?\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)'; //
const per = `${num}%`; //
const num_per = `(?:${num}%|${num})`; // and
const hue = `(?:${num}(deg|grad|rad|turn)|${num})`; // hue
diff --git a/src/xyz/definition.js b/src/xyz/definition.js
index 89821d64..de2b84b5 100644
--- a/src/xyz/definition.js
+++ b/src/xyz/definition.js
@@ -12,15 +12,15 @@ import { fixupAlpha } from '../fixup/alpha.js';
const definition = {
mode: 'xyz',
- parsers: ['xyz', '--xyz-d50'],
- serialize: 'color(--xyz-d50 ',
+ parse: ['xyz', '--xyz-d50'],
+ serialize: '--xyz-d50',
- output: {
+ toMode: {
rgb: convertXyzToRgb,
lab: convertXyzToLab
},
- input: {
+ fromMode: {
rgb: convertRgbToXyz,
lab: convertLabToXyz
},
diff --git a/src/xyz65/definition.js b/src/xyz65/definition.js
index 9e5845a5..b662a720 100644
--- a/src/xyz65/definition.js
+++ b/src/xyz65/definition.js
@@ -14,14 +14,13 @@ import { fixupAlpha } from '../fixup/alpha.js';
const definition = {
mode: 'xyz65',
- serialize: 'color(--xyz-d65 ',
- output: {
+ toMode: {
rgb: convertXyz65ToRgb,
xyz: convertXyz65ToXyz
},
- input: {
+ fromMode: {
rgb: convertRgbToXyz65,
xyz: convertXyzToXyz65
},
@@ -34,7 +33,8 @@ const definition = {
channels: ['x', 'y', 'z', 'alpha'],
- parsers: ['--xyz-d65'],
+ parse: ['--xyz-d65'],
+ serialize: '--xyz-d65',
interpolate: {
x: interpolatorLinear,
diff --git a/src/yiq/definition.js b/src/yiq/definition.js
index 531bd2d6..15ce657b 100644
--- a/src/yiq/definition.js
+++ b/src/yiq/definition.js
@@ -26,18 +26,18 @@ import { fixupAlpha } from '../fixup/alpha.js';
const definition = {
mode: 'yiq',
- output: {
+ toMode: {
rgb: convertYiqToRgb
},
- input: {
+ fromMode: {
rgb: convertRgbToYiq
},
channels: ['y', 'i', 'q', 'alpha'],
- parsers: ['--yiq'],
- serialize: 'color(--yiq ',
+ parse: ['--yiq'],
+ serialize: '--yiq',
ranges: {
i: [-0.595, 0.595],
diff --git a/test/api.test.js b/test/api.test.js
new file mode 100644
index 00000000..b64277ae
--- /dev/null
+++ b/test/api.test.js
@@ -0,0 +1,351 @@
+/*
+ Keep an eye on the API surface of the various bundles
+ */
+import tape from 'tape';
+
+import * as full from '../src/index.js';
+import * as css from '../src/index-css.js';
+import * as fn from '../src/index-fn.js';
+
+const API_FULL = [
+ 'a98',
+ 'average',
+ 'averageAngle',
+ 'averageNumber',
+ 'blend',
+ 'clampChroma',
+ 'clampRgb',
+ 'colorsNamed',
+ 'converter',
+ 'cubehelix',
+ 'differenceCie76',
+ 'differenceCie94',
+ 'differenceCiede2000',
+ 'differenceCmc',
+ 'differenceEuclidean',
+ 'differenceHueChroma',
+ 'differenceHueNaive',
+ 'differenceHueSaturation',
+ 'differenceHyab',
+ 'differenceKotsarenkoRamos',
+ 'displayable',
+ 'dlab',
+ 'dlch',
+ 'easingGamma',
+ 'easingInOutSine',
+ 'easingMidpoint',
+ 'easingSmootherstep',
+ 'easingSmoothstep',
+ 'filterBrightness',
+ 'filterContrast',
+ 'filterDeficiencyDeuter',
+ 'filterDeficiencyProt',
+ 'filterDeficiencyTrit',
+ 'filterGrayscale',
+ 'filterHueRotate',
+ 'filterInvert',
+ 'filterSaturate',
+ 'filterSepia',
+ 'fixupAlpha',
+ 'fixupHueDecreasing',
+ 'fixupHueIncreasing',
+ 'fixupHueLonger',
+ 'fixupHueShorter',
+ 'formatCss',
+ 'formatHex',
+ 'formatHex8',
+ 'formatHsl',
+ 'formatRgb',
+ 'getMode',
+ 'hsi',
+ 'hsl',
+ 'hsv',
+ 'hwb',
+ 'interpolate',
+ 'interpolateWith',
+ 'interpolateWithPremultipliedAlpha',
+ 'interpolatorLinear',
+ 'interpolatorPiecewise',
+ 'interpolatorSplineBasis',
+ 'interpolatorSplineBasisClosed',
+ 'interpolatorSplineMonotone',
+ 'interpolatorSplineMonotone2',
+ 'interpolatorSplineMonotoneClosed',
+ 'interpolatorSplineNatural',
+ 'interpolatorSplineNaturalClosed',
+ 'jab',
+ 'jch',
+ 'lab',
+ 'lab65',
+ 'lch',
+ 'lch65',
+ 'lchuv',
+ 'lerp',
+ 'lrgb',
+ 'luv',
+ 'mapAlphaDivide',
+ 'mapAlphaMultiply',
+ 'mapTransferGamma',
+ 'mapTransferLinear',
+ 'mapper',
+ 'modeA98',
+ 'modeCubehelix',
+ 'modeDlab',
+ 'modeDlch',
+ 'modeHsi',
+ 'modeHsl',
+ 'modeHsv',
+ 'modeHwb',
+ 'modeJab',
+ 'modeJch',
+ 'modeLab',
+ 'modeLab65',
+ 'modeLch',
+ 'modeLch65',
+ 'modeLchuv',
+ 'modeLrgb',
+ 'modeLuv',
+ 'modeOklab',
+ 'modeOklch',
+ 'modeP3',
+ 'modeProphoto',
+ 'modeRec2020',
+ 'modeRgb',
+ 'modeXyz',
+ 'modeXyz65',
+ 'modeYiq',
+ 'nearest',
+ 'oklab',
+ 'oklch',
+ 'p3',
+ 'parse',
+ 'prophoto',
+ 'random',
+ 'rec2020',
+ 'rgb',
+ 'round',
+ 'samples',
+ 'useMode',
+ 'wcagContrast',
+ 'wcagLuminance',
+ 'xyz',
+ 'xyz65',
+ 'yiq'
+];
+const API_CSS = [
+ 'a98',
+ 'average',
+ 'averageAngle',
+ 'averageNumber',
+ 'blend',
+ 'clampChroma',
+ 'clampRgb',
+ 'colorsNamed',
+ 'converter',
+ 'differenceCie76',
+ 'differenceCie94',
+ 'differenceCiede2000',
+ 'differenceCmc',
+ 'differenceEuclidean',
+ 'differenceHueChroma',
+ 'differenceHueNaive',
+ 'differenceHueSaturation',
+ 'differenceHyab',
+ 'differenceKotsarenkoRamos',
+ 'displayable',
+ 'easingGamma',
+ 'easingInOutSine',
+ 'easingMidpoint',
+ 'easingSmootherstep',
+ 'easingSmoothstep',
+ 'filterBrightness',
+ 'filterContrast',
+ 'filterDeficiencyDeuter',
+ 'filterDeficiencyProt',
+ 'filterDeficiencyTrit',
+ 'filterGrayscale',
+ 'filterHueRotate',
+ 'filterInvert',
+ 'filterSaturate',
+ 'filterSepia',
+ 'fixupAlpha',
+ 'fixupHueDecreasing',
+ 'fixupHueIncreasing',
+ 'fixupHueLonger',
+ 'fixupHueShorter',
+ 'formatCss',
+ 'formatHex',
+ 'formatHex8',
+ 'formatHsl',
+ 'formatRgb',
+ 'getMode',
+ 'hsl',
+ 'hsv',
+ 'hwb',
+ 'interpolate',
+ 'interpolateWith',
+ 'interpolateWithPremultipliedAlpha',
+ 'interpolatorLinear',
+ 'interpolatorPiecewise',
+ 'interpolatorSplineBasis',
+ 'interpolatorSplineBasisClosed',
+ 'interpolatorSplineMonotone',
+ 'interpolatorSplineMonotone2',
+ 'interpolatorSplineMonotoneClosed',
+ 'interpolatorSplineNatural',
+ 'interpolatorSplineNaturalClosed',
+ 'lab',
+ 'lab65',
+ 'lch',
+ 'lch65',
+ 'lerp',
+ 'lrgb',
+ 'mapAlphaDivide',
+ 'mapAlphaMultiply',
+ 'mapTransferGamma',
+ 'mapTransferLinear',
+ 'mapper',
+ 'modeA98',
+ 'modeHsl',
+ 'modeHsv',
+ 'modeHwb',
+ 'modeLab',
+ 'modeLab65',
+ 'modeLch',
+ 'modeLch65',
+ 'modeLrgb',
+ 'modeP3',
+ 'modeProphoto',
+ 'modeRec2020',
+ 'modeRgb',
+ 'modeXyz',
+ 'modeXyz65',
+ 'nearest',
+ 'p3',
+ 'parse',
+ 'prophoto',
+ 'random',
+ 'rec2020',
+ 'rgb',
+ 'round',
+ 'samples',
+ 'useMode',
+ 'wcagContrast',
+ 'wcagLuminance',
+ 'xyz',
+ 'xyz65'
+];
+const API_FN = [
+ 'average',
+ 'averageAngle',
+ 'averageNumber',
+ 'blend',
+ 'clampChroma',
+ 'clampRgb',
+ 'colorsNamed',
+ 'converter',
+ 'differenceCie76',
+ 'differenceCie94',
+ 'differenceCiede2000',
+ 'differenceCmc',
+ 'differenceEuclidean',
+ 'differenceHueChroma',
+ 'differenceHueNaive',
+ 'differenceHueSaturation',
+ 'differenceHyab',
+ 'differenceKotsarenkoRamos',
+ 'displayable',
+ 'easingGamma',
+ 'easingInOutSine',
+ 'easingMidpoint',
+ 'easingSmootherstep',
+ 'easingSmoothstep',
+ 'filterBrightness',
+ 'filterContrast',
+ 'filterDeficiencyDeuter',
+ 'filterDeficiencyProt',
+ 'filterDeficiencyTrit',
+ 'filterGrayscale',
+ 'filterHueRotate',
+ 'filterInvert',
+ 'filterSaturate',
+ 'filterSepia',
+ 'fixupAlpha',
+ 'fixupHueDecreasing',
+ 'fixupHueIncreasing',
+ 'fixupHueLonger',
+ 'fixupHueShorter',
+ 'formatCss',
+ 'formatHex',
+ 'formatHex8',
+ 'formatHsl',
+ 'formatRgb',
+ 'getMode',
+ 'interpolate',
+ 'interpolateWith',
+ 'interpolateWithPremultipliedAlpha',
+ 'interpolatorLinear',
+ 'interpolatorPiecewise',
+ 'interpolatorSplineBasis',
+ 'interpolatorSplineBasisClosed',
+ 'interpolatorSplineMonotone',
+ 'interpolatorSplineMonotone2',
+ 'interpolatorSplineMonotoneClosed',
+ 'interpolatorSplineNatural',
+ 'interpolatorSplineNaturalClosed',
+ 'lerp',
+ 'mapAlphaDivide',
+ 'mapAlphaMultiply',
+ 'mapTransferGamma',
+ 'mapTransferLinear',
+ 'mapper',
+ 'modeA98',
+ 'modeCubehelix',
+ 'modeDlab',
+ 'modeDlch',
+ 'modeHsi',
+ 'modeHsl',
+ 'modeHsv',
+ 'modeHwb',
+ 'modeJab',
+ 'modeJch',
+ 'modeLab',
+ 'modeLab65',
+ 'modeLch',
+ 'modeLch65',
+ 'modeLchuv',
+ 'modeLrgb',
+ 'modeLuv',
+ 'modeOklab',
+ 'modeOklch',
+ 'modeP3',
+ 'modeProphoto',
+ 'modeRec2020',
+ 'modeRgb',
+ 'modeXyz',
+ 'modeXyz65',
+ 'modeYiq',
+ 'nearest',
+ 'parse',
+ 'random',
+ 'round',
+ 'samples',
+ 'useMode',
+ 'wcagContrast',
+ 'wcagLuminance'
+];
+
+tape('culori', t => {
+ t.deepEqual(Object.keys(full).sort(), API_FULL);
+ t.end();
+});
+
+tape('culori/css', t => {
+ t.deepEqual(Object.keys(css).sort(), API_CSS);
+ t.end();
+});
+
+tape('culori/fn', t => {
+ t.deepEqual(Object.keys(fn).sort(), API_FN);
+ t.end();
+});
diff --git a/test/hsl.test.js b/test/hsl.test.js
index fea9eb9c..bb913200 100644
--- a/test/hsl.test.js
+++ b/test/hsl.test.js
@@ -108,7 +108,7 @@ tape('hsl() parses hsl / hsla CSS strings', function (test) {
test.deepEqual(
hsl('hsl(0, 100%, 50%)'),
- { h: 0, s: 1, l: 0.5, h: 0, mode: 'hsl' },
+ { h: 0, s: 1, l: 0.5, mode: 'hsl' },
'red'
);
diff --git a/test/interpolate-legacy.test.js b/test/interpolate-legacy.test.js
deleted file mode 100644
index 1397cc18..00000000
--- a/test/interpolate-legacy.test.js
+++ /dev/null
@@ -1,20 +0,0 @@
-/*
- Interpolation: legacy API
- */
-
-import tape from 'tape';
-import {
- interpolate,
- interpolateLinear,
- interpolateHue,
- formatHex
-} from '../src/index.js';
-
-tape('custom interpolators', t => {
- let interpolator = interpolate(['red', 'green'], 'hsv', {
- h: interpolateLinear(interpolateHue)
- });
-
- t.deepEqual(formatHex(interpolator(0.5)), '#c0c000');
- t.end();
-});
diff --git a/test/interpolate.test.js b/test/interpolate.test.js
index 4b015652..46fa3ab9 100644
--- a/test/interpolate.test.js
+++ b/test/interpolate.test.js
@@ -243,10 +243,9 @@ tape('Easing fn returning outside [0,1], issue #140', t => {
// From: https://github.com/mattdesl/eases/blob/master/back-in-out.js
function backInOut(t) {
var s = 1.70158 * 1.525;
- return (t *=
- 2 < 1
- ? 0.5 * (t * t * ((s + 1) * t - s))
- : 0.5 * ((t -= 2) * t * ((s + 1) * t + s) + 2));
+ return (t *= 2) < 1
+ ? 0.5 * (t * t * ((s + 1) * t - s))
+ : 0.5 * ((t -= 2) * t * ((s + 1) * t + s) + 2);
}
const it = interpolate([backInOut, '#ff0000', '#cc8833', '#3344cc']);
t.equal(isNaN(it(0.05).r), false);
diff --git a/tools/ranges.js b/tools/ranges.js
index 89b9b422..44281a4e 100644
--- a/tools/ranges.js
+++ b/tools/ranges.js
@@ -1,4 +1,4 @@
-let culori = require('..');
+let culori = require('../src/index.js');
/*
Find the channel value ranges (minimum & maximum)
@@ -7,7 +7,7 @@ let culori = require('..');
*/
let ranges = (mode, step = 0.01) => {
let conv = culori.converter(mode);
- let chs = culori.getModeDefinition(mode).channels;
+ let chs = culori.getMode(mode).channels;
let res = chs.reduce(
(acc, ch) => ((acc[ch] = [Infinity, -Infinity]), acc),
{}