diff --git a/.browserslistrc b/.browserslistrc
deleted file mode 100644
index 267d8d34..00000000
--- a/.browserslistrc
+++ /dev/null
@@ -1,5 +0,0 @@
-> 1%
-last 5 versions
-Firefox ESR
-iOS >= 12
-android >= 4
diff --git a/.eslintignore b/.eslintignore
deleted file mode 100644
index 2519ea7a..00000000
--- a/.eslintignore
+++ /dev/null
@@ -1 +0,0 @@
-src/styles/css/main.min.css.js
diff --git a/.eslintrc.js b/.eslintrc.js
deleted file mode 100644
index f6befe0b..00000000
--- a/.eslintrc.js
+++ /dev/null
@@ -1,48 +0,0 @@
-module.exports = {
- parser: "@babel/eslint-parser",
- extends: ["eslint:recommended", "plugin:import/recommended", "prettier"],
- env: {
- browser: true,
- node: true,
- es6: true,
- },
- plugins: ["import"],
- settings: {
- "import/resolver": {
- node: true,
- },
- },
- reportUnusedDisableDirectives: true,
- rules: {
- // Turns on errors for missing imports which is great
- "import/no-unresolved": "error",
-
- // TODO Fix later
- "sort-imports": "off",
- "sort-keys": "off",
- "no-warning-comments": "off",
- "prefer-arrow-callback": "off",
- "func-names": "off",
- "no-magic-numbers": "off",
- "id-length": "off",
- "no-empty-function": "off",
- "no-shadow": "off",
- "max-lines": "off",
- "max-statements": "off",
- "max-lines-per-function": "off",
- "no-undefined": "off",
- "one-var": "off",
- "no-inline-comments": "off",
- "line-comment-position": "off",
- "capitalized-comments": "off",
- "func-style": "off",
- "prefer-destructuring": "off",
- "init-declarations": "off",
- "no-invalid-this": "off",
- "no-multi-assign": "off",
- "max-params": "off",
- "no-plusplus": "off",
- "no-ternary": "off",
- complexity: "off",
- },
-};
diff --git a/.github/release.yml b/.github/release.yml
new file mode 100644
index 00000000..7e644284
--- /dev/null
+++ b/.github/release.yml
@@ -0,0 +1,26 @@
+# .github/release.yml
+
+changelog:
+ exclude:
+ authors:
+ # Ignore the release PR created by github-actions
+ - github-actions
+ categories:
+ - title: Breaking Changes 🍭
+ labels:
+ - "release: breaking change"
+ - title: New Features 🎉
+ labels:
+ - "release: feature"
+ - title: Performance 🚀
+ labels:
+ - "release: performance"
+ - title: Bug Fixes 🐞
+ labels:
+ - "release: bug fix"
+ - title: Document 📖
+ labels:
+ - "release: document"
+ - title: Other Changes
+ labels:
+ - "*"
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
new file mode 100644
index 00000000..7911d603
--- /dev/null
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,49 @@
+name: Test Runner for videomail-client (CI)
+
+on:
+ - push
+ - pull_request
+
+jobs:
+ build-test-lint-check:
+ name: Build, Test, Prettier, Lint and Check
+ runs-on: ubuntu-latest
+
+ steps:
+ - name: Checkout code
+ uses: actions/checkout@v4
+ with:
+ fetch-depth: 0
+
+ - name: Install Node.js via nvm
+ shell: bash --login {0}
+ run: |
+ nvm install --no-progress
+ echo "$(dirname $(nvm which node))" >> $GITHUB_PATH
+
+ - name: Install npm dependencies
+ run: npm ci
+
+ - name: Build assets
+ run: npm run build-prod
+
+ - name: Run prettier
+ run: npm run prettier
+
+ # TODO Restore later
+ # - name: Run linter
+ # run: npm run lint
+
+ - name: Audit (detect vulnerabilities)
+ run: npm run audit
+
+ # TODO Restore later
+ # - name: Run tests
+ # uses: coactions/setup-xvfb@v1
+ # with:
+ # run: npm run test
+
+ - name: Run Chromatic
+ uses: chromaui/action@latest
+ with:
+ projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN }}
diff --git a/.github/workflows/push.yml b/.github/workflows/push.yml
deleted file mode 100644
index 7af50814..00000000
--- a/.github/workflows/push.yml
+++ /dev/null
@@ -1,42 +0,0 @@
-name: Test Runner for videomail-client
-
-on:
- push:
- branches:
- - dev
-
- pull_request:
- branches:
- - dev
-
-jobs:
- build-test-lint-check:
- name: Build, Test, Prettier, Lint and Check
- runs-on: ubuntu-latest
-
- steps:
- - name: Checkout code
- uses: actions/checkout@v4
-
- - name: Install Node.js via nvm
- shell: bash --login {0}
- run: |
- nvm install --no-progress
- echo "$(dirname $(nvm which node))" >> $GITHUB_PATH
-
- - name: Install npm dependencies
- run: npm ci
-
- - name: Build assets
- run: npm run build
-
- - name: Run tests
- uses: coactions/setup-xvfb@v1
- with:
- run: npm run test
-
- - name: Run prettier
- run: npm run prettier
-
- - name: Run linter
- run: npm run lint
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
new file mode 100644
index 00000000..e7e40d0a
--- /dev/null
+++ b/.github/workflows/release.yml
@@ -0,0 +1,39 @@
+name: Release to npm
+
+# on:
+# release:
+# types: [published]
+
+on:
+ - push
+ - pull_request
+
+jobs:
+ publish:
+ runs-on: ubuntu-latest
+
+ permissions:
+ contents: read
+ id-token: write
+
+ steps:
+ - name: 🛒 Checkout code
+ uses: actions/checkout@v4
+
+ - name: 🪛 Install Node.js via nvm
+ shell: bash --login {0}
+ run: |
+ nvm install --no-progress
+ echo "$(dirname $(nvm which node))" >> $GITHUB_PATH
+
+ - name: 📦 Install npm dependencies
+ run: npm ci
+
+ - name: 🔨 Build
+ run: npm run build-prod
+
+ - name: 📦 Publish to NPM
+ uses: JS-DevTools/npm-publish@v3
+ with:
+ token: ${{ secrets.VC_NPM_TOKEN_GITHUB }}
+ access: public
diff --git a/.gitignore b/.gitignore
index 1bc5919f..b72a08df 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,3 +3,4 @@ npm-debug.log
.DS_Store
*.code-workspace
storybook-static
+dist
diff --git a/.npmignore b/.npmignore
index d1369dc9..c1efbcb6 100644
--- a/.npmignore
+++ b/.npmignore
@@ -1,13 +1,15 @@
-env
-test
+.github
+.storybook
+.vscode
+etc
+node_modules
src
-.eslintignore
-.eslintrc.js
+test
+.gitignore
.nvmrc
-.prettierignore
-.travis.yml
audit-ci.json
-babel.config.js
-gulpfile.js
-package-lock.json
-prettier.config.js
\ No newline at end of file
+chromatic.config.json
+eslint.config.mjs
+prettier.config.cjs
+tsconfig.json
+package-lock.json
\ No newline at end of file
diff --git a/.prettierignore b/.prettierignore
deleted file mode 100644
index 2519ea7a..00000000
--- a/.prettierignore
+++ /dev/null
@@ -1 +0,0 @@
-src/styles/css/main.min.css.js
diff --git a/.vscode/settings.json b/.vscode/settings.json
index 5e07ed7d..1236d0b6 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -14,31 +14,38 @@
"animitter",
"autobuffer",
"bytediff",
+ "camelcase",
+ "chpt",
"classlist",
"crossorigin",
- "cssnano",
"deepmerge",
"derequire",
"filesize",
"getusermedia",
- "gulpfile",
"hyperscript",
"keymirror",
"KHTML",
"Mbit",
+ "mofo",
"MSIE",
"packagejson",
+ "Pivac",
"playsinline",
"plusplus",
"preend",
"rsbuild",
"rubberband",
+ "Sadler",
"Seeflow's",
"styl",
+ "Tarr",
"Teleporting",
+ "tseslint",
"videomail",
"videomails",
"websockets",
- "xvfb"
+ "wohooo",
+ "xvfb",
+ "Zack"
]
}
diff --git a/README.md b/README.md
index 270f66f3..ae120544 100644
--- a/README.md
+++ b/README.md
@@ -13,9 +13,10 @@
Record videos in contact forms!
-Finally you can encode any webcam recordings from modern browsers and mobiles into MP4 + WebM within seconds. This without the need for Flash, Java nor any other plugins / addons. Just JavaScript written in ES6.
+Finally you can encode any webcam recordings from modern browsers and mobiles into MP4 + WebM within seconds.
+This without the need for Flash, Java nor any other plugins / addons. Just JavaScript written in ES6.
-- Prototype (examples)
+- Storybook (examples)
- Demo / Fully working version
- Options
- API
@@ -23,58 +24,20 @@ Finally you can encode any webcam recordings from modern browsers and mobiles in
- What gets stored on the videomail server?
- Whitelist
- Backward compatibility
-- Super fast global CDN
- Addons
- Notes
-
+
-## Prototype (examples)
+## Storybook (examples)
-To run the prototype full of examples in your browser, just do:
+To check out some examples in your browser, just do:
1. `npm install`
-2. `npm run watch` to ignite a static server and
-3. open `https://localhost:8443` in your browser
-
-Best is to study `/prototype/contact_form.html` which demonstrates how easy it is to integrate the videomail client into your own contact form.
-
-Beware that all _must run over HTTPs_. Google Chrome and soon other browsers won't allow the use of `getUserMedia()` on insecure origins.
-
-If you haven't installed the local CA in your system trust store yet, you will have to run those commands only once before starting the prototype:
-
-1. Install mkcert, see https://github.com/FiloSottile/mkcert#installation
-2. Run command `mkcert -install`
+2. `npm run storybook`
That's it. Easy as apple pie.
-## Dead simple example (just record and replay)
-
-```html
-
-
-
-
-
-
-
-```
-
-The included JS file `/prototype/js/videomail-client.js` is already browserified and lies in the `js` folder.
-
-If you remove `disableSubmit`, then you will see a submit button to post the video and make it persistent. This requires a bit more code, see prototype directory.
-
## Demo
@@ -85,19 +48,20 @@ A mirror of latest videomail-client can be seen on [videomail-client.netlify.com
Check out the full version with all its features on [videomail.io](https://videomail.io) itself. Aim is to turn this into a stable product in the near future with some external assistance.
-On that site I just include `require('videomail-client')` in the app logic.
+On that site I just include `import VideomailClient from "videomail-client"` in the app logic.
-Another live example would be https://seeflow.co.nz/contact/ or https://www.deaf.org.nz/contact/. There are plenty if you just ask us. And way more will follow, we are rolling ...
+Another live example would be https://seeflow.co.nz/contact or https://www.deaf.org.nz/contact
+There are plenty if you just ask us. And way more will follow, we are rolling ...
## Options
-There are many options you can pass onto the VideomailClient constructor. Check out the annotated source code at [src/options.js](https://github.com/binarykitchen/videomail-client/blob/master/src/options.js)
+There are many options you can pass onto the VideomailClient constructor. Check out the annotated source code at [src/options.ts](https://github.com/binarykitchen/videomail-client/blob/master/src/options.ts)
In most cases, these defaults are good enough. But `siteName` should be changed when you deploy your own site, see Whitelist .
-Looking at the examples in the `/prototype` folder should give you some ideas how to use these options.
+Looking at the examples in the `/src/stories` folder should give you some ideas how to use these options.
@@ -123,8 +87,8 @@ Looking at the examples in the `/prototype` folder should give you some ideas ho
The constructor accepts a JSON with optional options . Example:
-```js
-var videomailClient = new VideomailClient({ siteName: "my site name" });
+```ts
+const videomailClient = new VideomailClient({ siteName: "my site name" });
```
@@ -133,7 +97,7 @@ var videomailClient = new VideomailClient({ siteName: "my site name" });
The VideomailClient class is inherited from EventEmitter and emits lots of useful events for your app. Here an example:
-```js
+```ts
videomailClient.on("FORM_READY", function () {
// form is ready for recording
});
@@ -141,20 +105,12 @@ videomailClient.on("FORM_READY", function () {
videomailClient.on("SUBMITTED", function (videomail, response) {
// continue with your own app logic in your javascript code if you want to process
// something else further after form submission.
- //
- // check out /prototype/contact_form.html on how to integrate into your contact form
- // that videomail object has plenty of useful information,
- // i.E. the url or even the average fps it was recorded with.
- // for more info on videomail meta data, see chapter "What is stored on the server?" below
- //
- // but if you want all that videomail meta data to be submitted in the form already,
- // enable the `submitWithVideomail` option.
});
```
#### Supported events:
-Check them out at [src/events.js](https://github.com/binarykitchen/videomail-client/blob/master/src/events.js)
+Check them out at [src/events.js](https://github.com/binarykitchen/videomail-client/blob/master/src/events.ts)
They should be self-explanatory. If not, ask for better documentation. Then, some of these events may come with parameters.
@@ -172,7 +128,7 @@ Automatically fills the DOM with a form for video recording. By default the HTML
### videomailClient.replay(videomail[, parentElementId])
-Manually adds a video container for the given videomail inside the parent element. This is mostly called after a successful submission. See `/prototype/direct_submit.html` or `/prototype/contact_form.html` for some inspiration.
+Manually adds a video container for the given videomail inside the parent element. See stories for some inspiration.
If the `parentElement` is an ID (string), then it will be resolved into a DOM element internally. If no parent element is given, then a replay container within the containerId is automatically generated.
@@ -184,8 +140,6 @@ Also note that, when the parent element already contains a video container like
then this will be used instead of adding a new dom element.
-Furthermore the `replay()` method also detects whether the parent element has placeholders to fill with form data. To understand this better, check out how the subject in the `/prototype/direct_submit.html` example is being displayed upon replay.
-
### videomailClient.startOver()
@@ -211,11 +165,7 @@ An utility function which returns true if the current browser is capable of webc
### videomailClient.unload()
-Manually unloads the webcam and all other internal event listeners. Can be used in conjunction with single page apps, for example with AngularJS' destroy event:
-
-```js
-$scope.$on("$destroy", videomailClient.unload.bind(videomailClient));
-```
+Manually unloads the webcam and all other internal event listeners.
@@ -240,7 +190,6 @@ Returns true when a video is currently being recorded.
### videomailClient.submit()
For advanced use only: especially when the submit button is covered with other HTML layers and the videomail client fails to process the click event.
-
Calling this function will manually trigger a submission of the recorded videomail. But only when everything else is valid. Nothing will happen when invalid.
@@ -253,7 +202,8 @@ For advanced use only: returns you a collection of log lines that show what code
## What gets stored on the videomail server?
-Here is an example JSON showing what videomail meta data exists, gets stored on the server and you can grab yourself for further use. It's emitted in the SUBMITTED event under the videomail object:
+Here is an example JSON showing what videomail meta data exists, gets stored on the server and you can grab yourself for further use.
+It's emitted in the SUBMITTED event under the videomail object:
```json
{
@@ -299,7 +249,7 @@ By default the videomail-client interrupts the form submission with `e.preventDe
If this doesn't seem to work on your side, then this is mostly because the form and the submit button couldn't be found and the submission event is fired too late. To fix this, you'll need to correct the selectors under options. Here are the important ones regarding forms:
-```json
+```js
selectors: {
"formId": null,
"submitButtonId": null,
@@ -309,8 +259,6 @@ selectors: {
When these are null (defaults), the videomail-client tries to detect these automatically. But it can happen that detection fails because the form is somewhere else under the DOM or the submit button does not have the `type=submit` etc.
-Here is a [working example](https://github.com/binarykitchen/videomail-client/blob/develop/prototype/contact_form.html#L55).
-
### Include videomail meta data in Form Submissions
If you want to include videomail meta data in the form submission to your own server, enable the `submitWithVideomail` option.
@@ -343,22 +291,6 @@ Source: [http://caniuse.com/#search=getUserMedia](http://caniuse.com/#search=get
PS: On Safari and iPhones/iPads you can play the videomails fine without any issues. Repeating: there is just no recording functionality for them yet until Apple made a move.
-
-
-## Super fast global CDN
-
-You can grab the already browserified videomail-client JS file through GitHub's rawgit server which is proxied by [MaxCDN's](http://www.maxcdn.com/) super fast global CDN:
-
-```
-https://cdn.rawgit.com/binarykitchen/videomail-client//prototype/js/videomail-client.js
-```
-
-For example for version x.y.z, use this in your production site:
-https://cdn.rawgit.com/binarykitchen/videomail-client/x.y.z/prototype/js/videomail-client.min.js
-
-If for whatever reason that GitHub CDN doesn't meet your standard, here's another CDN to try:
-https://cdnjs.com/libraries/videomail-client
-
## Addons
@@ -377,16 +309,6 @@ It's an extension of the popular form builder called Ninja Forms. When the video
Too hard to maintain. Just do `git log` or look here
https://github.com/binarykitchen/videomail-client/commits/master
-## Regenerate certificates
-
-Should be already included, but if they have expired, can regenerate with this bash command:
-
-```bash
-$ mkcert --cert-file ./env/dev/cert.pem --key-file ./env/dev/key.pem local.videomail-client.io localhost 127.0.0.1
-```
-
-This will require the native mkcert program you can get from https://github.com/FiloSottile/mkcert
-
### Noise
Here some noise about Videomail in the wild:
@@ -418,8 +340,6 @@ They all deserve lots of beer and love. That order is irrelevant.
I admit, code isn't top notch and needs lots of rewrites. Believe me or not, I already rewrote about three times in the last four years. Good example that software hardly can be perfect. And since I am already honest here, I think stability and bug fixes come first before perfection otherwise you'll loose users. Reality you know.
-Anyway, on the next rewrite I'd probably pick [React](https://facebook.github.io/react/) or better [re-frame](https://github.com/Day8/re-frame) because the videomail-client depends heavily on application states.
-
### Final philosophy
This planet is completely sold. And talk is overrated. That's why my primary goal is not to turn this into a commercial product, yet to promote a cool but underestimated language: Sign Language.
diff --git a/audit-ci.json b/audit-ci.json
index e6eed9c5..ff89c9c7 100644
--- a/audit-ci.json
+++ b/audit-ci.json
@@ -1,13 +1,5 @@
{
"high": true,
"package-manager": "npm",
- "allowlist": [
- "GHSA-xvch-5gv4-984h",
- "GHSA-7p7h-4mm5-852v",
- "GHSA-p6mc-m468-83gw",
- "GHSA-grv7-fg5c-xmjg",
- "GHSA-35jh-r3h4-6jhm",
- "GHSA-3h5v-q93c-6h6q",
- "GHSA-9wv6-86v2-598j"
- ]
+ "allowlist": ["GHSA-3h5v-q93c-6h6q"]
}
diff --git a/babel.config.js b/babel.config.js
deleted file mode 100644
index 8c795270..00000000
--- a/babel.config.js
+++ /dev/null
@@ -1,38 +0,0 @@
-const getPresetOptions = (isTest = false, isProduction = false) => {
- if (isTest) return { targets: { node: 'current' } } // for speed
-
- return {
- // undefined means parse .browserlistrc by default
- targets: !isProduction ? 'last 2 versions' : undefined
- }
-}
-
-const getBabelConfig = (api) => {
- const isDev = api.env('development')
- const isTest = api.env('test')
- const isProduction = api.env('production')
-
- api.cache.using(() => isDev || isTest)
-
- const presets = [['@babel/preset-env', getPresetOptions(isTest, isProduction)]]
-
- const plugins = [
- // Polyfills the runtime needed for async/await, generators, and friends
- // https://babeljs.io/docs/en/babel-plugin-transform-runtime
- !isTest && [
- '@babel/plugin-transform-runtime',
- {
- corejs: false,
- regenerator: true
- }
- ]
- ].filter(Boolean)
-
- return {
- presets: presets,
- plugins: plugins,
- compact: isProduction
- }
-}
-
-module.exports = getBabelConfig
diff --git a/eslint.config.mjs b/eslint.config.mjs
new file mode 100644
index 00000000..3d108b84
--- /dev/null
+++ b/eslint.config.mjs
@@ -0,0 +1,150 @@
+// @ts-check
+
+import eslint from "@eslint/js";
+import * as depend from "eslint-plugin-depend";
+import eslintPluginImportX from "eslint-plugin-import-x";
+import pluginPromise from "eslint-plugin-promise";
+import * as regexpPlugin from "eslint-plugin-regexp";
+import pluginSecurity from "eslint-plugin-security";
+import globals from "globals";
+import tseslint from "typescript-eslint";
+// TODO Enable once this is merged https://github.com/storybookjs/eslint-plugin-storybook/pull/156
+// import storybook from "eslint-plugin-storybook";
+
+// Good reference: https://github.com/dustinspecker/awesome-eslint#readme
+
+export default tseslint.config(
+ eslint.configs.all,
+ ...tseslint.configs.strictTypeChecked,
+ ...tseslint.configs.stylisticTypeChecked,
+ // ...storybook.configs["flat/recommended"],
+ eslintPluginImportX.flatConfigs.recommended,
+ eslintPluginImportX.flatConfigs.typescript,
+ pluginSecurity.configs.recommended,
+ regexpPlugin.configs["flat/all"],
+ pluginPromise.configs["flat/recommended"],
+ depend.configs["flat/recommended"],
+ {
+ ignores: [".github", ".vscode", "**/node_modules/", ".git", "test"],
+ name: "Ignore files",
+ },
+ {
+ files: ["**/*.{js,mjs,cjs,ts,tsx}"],
+ languageOptions: {
+ globals: {
+ ...globals.node,
+ },
+ parser: tseslint.parser,
+ parserOptions: {
+ ecmaFeatures: {
+ impliedStrict: true,
+ },
+ ecmaVersion: 2022,
+ projectService: true,
+ tsconfigRootDir: import.meta.dirname,
+ },
+ },
+ linterOptions: {
+ reportUnusedDisableDirectives: "error",
+ },
+ name: "All",
+ // TODO Consider removing some of these OFF-rules over time
+ rules: {
+ "@typescript-eslint/no-dynamic-delete": "off",
+ "@typescript-eslint/no-empty-function": "off",
+
+ "@typescript-eslint/no-explicit-any": "off",
+
+ // See https://github.com/orgs/react-hook-form/discussions/8622#discussioncomment-4060570
+ "@typescript-eslint/no-misused-promises": [
+ 2,
+ {
+ checksVoidReturn: {
+ attributes: false,
+ },
+ },
+ ],
+
+ "@typescript-eslint/no-unsafe-argument": "off",
+ "@typescript-eslint/no-unsafe-assignment": "off",
+ "@typescript-eslint/no-unsafe-call": "off",
+ "@typescript-eslint/no-unsafe-member-access": "off",
+ "@typescript-eslint/no-unsafe-return": "off",
+ // Prepend "_" in the names of unused function arguments to silence
+ // our linter for some useful parameters we want to still display
+ "@typescript-eslint/no-unused-vars": [
+ "error",
+ {
+ args: "all",
+ argsIgnorePattern: "^_",
+ caughtErrors: "all",
+ caughtErrorsIgnorePattern: "^_",
+ destructuredArrayIgnorePattern: "^_",
+ ignoreRestSiblings: true,
+ varsIgnorePattern: "^_",
+ },
+ ],
+ "@typescript-eslint/restrict-template-expressions": "off",
+ camelcase: "off",
+ "capitalized-comments": "off",
+ "class-methods-use-this": "off",
+ complexity: "off",
+ "consistent-return": "off",
+ "default-param-last": "off",
+ "depend/ban-dependencies": [
+ "error",
+ {
+ allowed: ["lodash"],
+ },
+ ],
+ "func-names": "off",
+ "func-style": "off",
+ "guard-for-in": "off",
+ "id-length": "off",
+ "import-x/no-named-as-default-member": "off",
+ "init-declarations": "off",
+ "max-depth": "off",
+ "max-lines": "off",
+ "max-lines-per-function": "off",
+ "max-params": "off",
+ "max-statements": "off",
+ "no-alert": "off",
+ "no-console": "off",
+ "no-debugger": "warn",
+ "no-duplicate-imports": "off",
+ "no-empty-function": "off",
+ "no-inline-comments": "off",
+ "no-lonely-if": "off",
+ "no-magic-numbers": "off",
+ "no-multi-assign": "off",
+ "no-negated-condition": "off",
+ "no-nested-ternary": "off",
+ "no-plusplus": "off",
+ "no-shadow": "off",
+ "no-ternary": "off",
+ "no-undefined": "off",
+
+ "no-use-before-define": "off",
+ "no-void": "off",
+ "no-warning-comments": "off",
+ "one-var": "off",
+ "prefer-arrow-callback": "off",
+ "prefer-destructuring": "off",
+ "prefer-named-capture-group": "off",
+ "promise/always-return": "off",
+ "promise/no-callback-in-promise": "off",
+ "promise/no-promise-in-callback": "off",
+
+ "regexp/no-super-linear-move": "off",
+ "regexp/prefer-named-capture-group": "off",
+ "regexp/require-unicode-sets-regexp": "off",
+ "regexp/no-super-linear-backtracking": "off",
+ "security/detect-non-literal-fs-filename": "off",
+ "security/detect-object-injection": "off",
+
+ "security/detect-unsafe-regex": "off",
+ "sort-imports": "off",
+ "sort-keys": "off",
+ },
+ },
+);
diff --git a/etc/release.sh b/etc/release.sh
deleted file mode 100755
index 2743148d..00000000
--- a/etc/release.sh
+++ /dev/null
@@ -1,96 +0,0 @@
-#!/bin/bash
-set -eo pipefail
-
-GREEN='\033[0;32m'
-NC='\033[0m' # No Color
-
-info() {
- printf "${GREEN}$@${NC}"
-}
-
-export GIT_MERGE_AUTOEDIT=no
-
-die() {
- unset GIT_MERGE_AUTOEDIT
- echo >&2 "☠ ☠ ☠ ☠ ☠ ☠ ☠ $@ ☠ ☠ ☠ ☠ ☠ ☠ ☠"
- exit 1
-}
-
-info "Checking for vulnerabilities...\n"
-
-# thanks to set -e it will exit here if audit fails
-npm run audit
-
-# todo: figure out an elegant solution to avoid duplicate code
-# when having three bash scripts for patches, features and releases
-# maybe with command line args?
-# when done, rename this file
-
-for i in "$@"; do
- case $i in
- -i=* | --importance=*)
- IMPORTANCE="${i#*=}"
- shift # past argument=value
- ;;
- *)
- # unknown option
- ;;
- esac
-done
-
-if [[ -z ${IMPORTANCE:-} ]]; then
- die "Aborting the bump! Argument --importance is missing"
-fi
-
-# ensures all is commited
-if [[ $(git status --porcelain) ]]; then
- die "Aborting the bump! You have uncommitted changes"
-fi
-
-# Ensures master is up to date
-git checkout master
-git pull
-git checkout dev
-
-info "Figuring next version for importance ${IMPORTANCE}...\n"
-read VERSION <<<$(gulp bumpVersion --importance=$IMPORTANCE | awk '/to/ {print $5}')
-info "It's version ${VERSION}\n"
-
-git checkout master
-git push
-git checkout dev
-git push
-
-# Start a new release
-git flow release start $VERSION
-
-# This will increment version in package.json
-gulp bumpVersion --write --version=$VERSION
-
-# Ensure dependencies are okay
-npm install
-
-# Rebuild all assets
-gulp build --minify
-
-git add -A
-git commit -m "Final commit of version $VERSION" --no-edit
-
-info "Publishing to npm ...\n"
-npm publish
-
-# Complete the release. This will also tag it.
-git flow release finish $VERSION -p -m "Completing release of $VERSION"
-
-git checkout master
-git push --follow-tags
-
-# Prepare the dev branch for the new cycle
-git checkout dev
-
-# Strange bug, have to bump it again
-gulp bumpVersion --write --version=$VERSION
-
-unset GIT_MERGE_AUTOEDIT
-
-info "\nAll good. Ready for the next cycle!\n"
diff --git a/gulpfile.js b/gulpfile.js
deleted file mode 100644
index f8d7e67e..00000000
--- a/gulpfile.js
+++ /dev/null
@@ -1,234 +0,0 @@
-/*
- * todo write this in ES6 once i have figured out how to
- * transpile it with babelify itself
- */
-
-const path = require("path");
-const fs = require("fs");
-const gulp = require("gulp");
-const plugins = require("gulp-load-plugins")();
-const nib = require("nib");
-const browserify = require("browserify");
-const source = require("vinyl-source-stream");
-const buffer = require("vinyl-buffer");
-const Router = require("router");
-const bodyParser = require("body-parser");
-const send = require("connect-send-json");
-const del = require("del");
-const minimist = require("minimist");
-const watchify = require("watchify");
-const babelify = require("babelify");
-const tapeRun = require("tape-run");
-const glob = require("glob");
-const log = require("fancy-log");
-const autoprefixer = require("autoprefixer");
-const cssnano = require("cssnano");
-
-const defaultOptions = {
- minify: true,
- importance: null,
- write: false,
- version: null,
-};
-
-const options = minimist(process.argv.slice(2), { default: defaultOptions });
-
-log.info("Options:", options);
-
-function cleanJs(cb) {
- del.sync(["prototype/js/*.js", "prototype/js/*.js.map"]);
- cb();
-}
-
-function stylus() {
- const postCssPlugins = [autoprefixer(), cssnano()];
-
- return (
- gulp
- .src("src/styles/styl/main.styl")
- .pipe(plugins.plumber()) // with the plumber the gulp task won't crash on errors
- .pipe(
- plugins.stylus({
- use: [nib()],
- errors: true,
- }),
- )
- /*
- * always minify otherwise it gets broken with line-breaks
- * when surrounded with `'s when injected
- * todo: fix this, so that it also works when not minified, this
- * for faster builds during development
- */
- .pipe(plugins.postcss(postCssPlugins))
- .pipe(plugins.rename({ suffix: ".min", extname: ".css.js" }))
- .pipe(plugins.injectString.wrap("module.exports='", "'"))
- // todo: location is bad, should be in a temp folder or so
- .pipe(gulp.dest("src/styles/css"))
- .pipe(plugins.connect.reload())
- );
-}
-
-const cache = {};
-const packageCache = {};
-
-function bundle(done, watching) {
- const entry = path.join(__dirname, "src/index.js");
- const bundler = browserify({
- entries: [entry],
- cache,
- standalone: "VideomailClient",
- packageCache,
- plugin: watching ? [watchify] : null,
- debug: !options.minify, // enables inline source maps
- })
- .on("update", () => {
- pump();
- log("Re-bundling ...");
- })
- .on("log", log)
- .require(entry, { expose: "videomail-client" })
- .transform(babelify);
-
- function pump() {
- return bundler
- .bundle()
- .on("error", function (err) {
- console.error(err.toString());
- this.emit("end");
- })
- .on("end", done)
- .pipe(source("./src/")) // gives streaming vinyl file object
- .pipe(buffer()) // required because the next steps do not support streams
- .pipe(plugins.concat("videomail-client.js"))
- .pipe(plugins.derequire())
- .pipe(gulp.dest("prototype/js"))
- .pipe(plugins.plumber())
- .pipe(plugins.if(options.minify, plugins.rename({ suffix: ".min" })))
- .pipe(plugins.if(options.minify, plugins.sourcemaps.init()))
- .pipe(plugins.if(options.minify, plugins.bytediff.start()))
- .pipe(plugins.if(options.minify, plugins.terser()))
- .pipe(plugins.if(options.minify, plugins.bytediff.stop()))
- .pipe(plugins.if(options.minify, plugins.sourcemaps.write("/")))
- .pipe(plugins.if(options.minify, gulp.dest("prototype/js")))
- .pipe(plugins.connect.reload());
- }
-
- return pump();
-}
-
-function bundleWithWatchify(done) {
- bundle(done, true);
-}
-
-function middleware() {
- const router = new Router();
-
- router.use(bodyParser.json());
- router.use(send.json());
-
- // does not work, see bug https://github.com/AveVlad/gulp-connect/issues/170
- router.post("/contact", function (req, res) {
- log.info("Videomail data received (with meta data):", req.body);
-
- /*
- * At this stage, a backend could store the videomail_key in req.body
- * into a database for replay functionality
- */
-
- // Just an example to see that the backend can do anything with the data
- res.json({
- status: `Inserted on ${new Date().toISOString()}`,
- });
- });
-
- return [router];
-}
-
-const connectOptions = {
- root: ["prototype"],
- port: 8080,
- debug: true,
- livereload: false, // disabled since it's broken unfortunately, see https://github.com/intesso/connect-livereload/issues/79
- middleware,
-};
-
-function connectHttps(done) {
- const SSL_CERTS_PATH = path.join(__dirname, "etc", "ssl-certs");
-
- plugins.connect.server({
- ...connectOptions,
- port: 8443,
- https: {
- key: fs.readFileSync(path.join(SSL_CERTS_PATH, "localhost.key")),
- cert: fs.readFileSync(path.join(SSL_CERTS_PATH, "localhost.crt")),
- },
- });
-
- done();
-}
-
-function reload(done) {
- plugins.connect.reload();
- done();
-}
-
-function watch(done) {
- gulp.watch(["src/styles/styl/**/*.styl"], stylus);
- gulp.watch(["prototype/*.html"], reload);
-
- done();
-}
-
-exports.test = function (done) {
- const testFiles = glob.sync("test/**/*.test.js");
- const bundler = browserify({
- entries: testFiles,
- }).transform(babelify);
-
- bundler
- .bundle()
- .on("error", function (err) {
- console.error(err.toString());
- this.emit("end");
- done();
- })
- .pipe(tapeRun({ sandbox: false }))
- .on("results", function () {
- done();
- })
- .pipe(process.stdout);
-};
-
-/*
- * get inspired by
- * https://www.npmjs.com/package/gulp-tag-version and
- * https://github.com/nicksrandall/gulp-release-tasks/blob/master/tasks/release.js
- */
-exports.bumpVersion = function () {
- const bumpOptions = {};
-
- if (options.version) {
- bumpOptions.version = options.version;
- } else if (options.importance) {
- bumpOptions.type = options.importance;
- }
-
- console.log({ bumpOptions });
-
- return gulp
- .src(["./package.json"])
- .pipe(plugins.bump(bumpOptions))
- .pipe(plugins.if(options.write, gulp.dest("./")))
- .on("error", log.error);
-};
-
-const build = gulp.series(gulp.parallel(gulp.series(stylus, cleanJs, bundle)));
-
-exports.watch = gulp.series(
- gulp.parallel(gulp.series(stylus, cleanJs, bundleWithWatchify)),
- connectHttps,
- watch,
-);
-
-exports.build = build;
-exports.default = build;
diff --git a/package-lock.json b/package-lock.json
index 67508d89..3d00afc1 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,15 +1,14 @@
{
"name": "videomail-client",
- "version": "9.5.11",
+ "version": "9.5.10",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "videomail-client",
- "version": "9.5.11",
+ "version": "9.5.10",
"license": "CC0-1.0",
"dependencies": {
- "@babel/core": "7.25.2",
"add-eventlistener-with-options": "1.25.5",
"animitter": "3.0.0",
"audio-sample": "4.1.0",
@@ -28,7 +27,6 @@
"humanize-duration": "3.32.1",
"hyperscript": "2.0.2",
"inherits": "2.0.4",
- "insert-css": "2.0.0",
"is-power-of-two": "1.0.0",
"keymirror": "0.1.1",
"safe-json-stringify": "1.2.0",
@@ -37,56 +35,40 @@
"websocket-stream": "5.5.2"
},
"devDependencies": {
- "@babel/eslint-parser": "7.25.1",
- "@babel/plugin-transform-runtime": "7.25.4",
- "@babel/preset-env": "7.25.4",
+ "@chromatic-com/storybook": "2.0.2",
+ "@eslint/js": "9.12.0",
+ "@rsbuild/core": "1.0.10",
+ "@rsbuild/plugin-node-polyfill": "1.0.4",
+ "@rsbuild/plugin-stylus": "1.0.2",
+ "@storybook/addon-a11y": "8.3.5",
+ "@storybook/addon-console": "3.0.0",
+ "@storybook/addon-essentials": "8.3.5",
+ "@storybook/addon-interactions": "8.3.5",
+ "@storybook/addon-links": "8.3.5",
+ "@storybook/manager-api": "8.3.5",
+ "@storybook/theming": "8.3.5",
"@tsconfig/node22": "22.0.0",
"@tsconfig/strictest": "2.0.5",
+ "@types/node": "22.7.5",
"audit-ci": "7.1.0",
- "autoprefixer": "10.4.20",
- "babelify": "10.0.0",
- "body-parser": "1.20.3",
- "browserify": "17.0.0",
- "connect-send-json": "1.0.0",
- "cssnano": "6.0.5",
- "del": "6.1.1",
- "eslint": "8.57.0",
+ "chromatic": "11.12.0",
+ "cross-env": "7.0.3",
+ "eslint": "9.12.0",
"eslint-config-prettier": "9.1.0",
- "eslint-plugin-import": "2.30.0",
+ "eslint-plugin-depend": "0.11.0",
+ "eslint-plugin-import-x": "4.3.1",
"eslint-plugin-node": "11.1.0",
- "eslint-plugin-promise": "6.2.0",
- "fancy-log": "2.0.0",
- "glob": "10.4.2",
- "gulp": "4.0.2",
- "gulp-bump": "3.2.0",
- "gulp-bytediff": "1.0.0",
- "gulp-concat": "2.6.1",
- "gulp-connect": "5.7.0",
- "gulp-derequire": "3.0.0",
- "gulp-if": "3.0.0",
- "gulp-inject-string": "1.1.2",
- "gulp-load-plugins": "2.0.8",
- "gulp-plumber": "1.2.1",
- "gulp-postcss": "10.0.0",
- "gulp-rename": "2.0.0",
- "gulp-sourcemaps": "3.0.0",
- "gulp-stylus": "3.0.1",
- "gulp-terser": "2.1.0",
- "minimist": "1.2.8",
- "nib": "1.2.0",
- "postcss": "8.4.47",
+ "eslint-plugin-promise": "7.1.0",
+ "eslint-plugin-regexp": "2.6.0",
+ "eslint-plugin-security": "3.0.1",
"prettier": "3.3.3",
"prettier-plugin-curly": "0.2.2",
"prettier-plugin-packagejson": "2.5.2",
"prettier-plugin-sh": "0.14.0",
- "router": "1.3.8",
- "tape": "5.9.0",
- "tape-catch": "1.0.6",
- "tape-run": "11.0.0",
+ "storybook": "8.3.5",
+ "storybook-html-rsbuild": "0.1.1",
"typescript": "5.6.2",
- "vinyl-buffer": "1.0.1",
- "vinyl-source-stream": "2.0.0",
- "watchify": "4.0.0"
+ "typescript-eslint": "8.8.1"
},
"engines": {
"node": "^22.8.0",
@@ -100,23 +82,11 @@
"dev": true,
"license": "MIT"
},
- "node_modules/@ampproject/remapping": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.3.0.tgz",
- "integrity": "sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==",
- "license": "Apache-2.0",
- "dependencies": {
- "@jridgewell/gen-mapping": "^0.3.5",
- "@jridgewell/trace-mapping": "^0.3.24"
- },
- "engines": {
- "node": ">=6.0.0"
- }
- },
"node_modules/@babel/code-frame": {
"version": "7.24.7",
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz",
"integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==",
+ "dev": true,
"license": "MIT",
"dependencies": {
"@babel/highlight": "^7.24.7",
@@ -126,2401 +96,2534 @@
"node": ">=6.9.0"
}
},
- "node_modules/@babel/compat-data": {
- "version": "7.25.4",
- "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.4.tgz",
- "integrity": "sha512-+LGRog6RAsCJrrrg/IO6LGmpphNe5DiK30dGjCoxxeGv49B10/3XYGxPsAwrDlMFcFEvdAUavDT8r9k/hSyQqQ==",
+ "node_modules/@babel/generator": {
+ "version": "7.25.6",
+ "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.6.tgz",
+ "integrity": "sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw==",
+ "dev": true,
"license": "MIT",
+ "dependencies": {
+ "@babel/types": "^7.25.6",
+ "@jridgewell/gen-mapping": "^0.3.5",
+ "@jridgewell/trace-mapping": "^0.3.25",
+ "jsesc": "^2.5.1"
+ },
"engines": {
"node": ">=6.9.0"
}
},
- "node_modules/@babel/core": {
- "version": "7.25.2",
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.2.tgz",
- "integrity": "sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==",
+ "node_modules/@babel/helper-string-parser": {
+ "version": "7.24.8",
+ "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz",
+ "integrity": "sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==",
+ "dev": true,
"license": "MIT",
- "dependencies": {
- "@ampproject/remapping": "^2.2.0",
- "@babel/code-frame": "^7.24.7",
- "@babel/generator": "^7.25.0",
- "@babel/helper-compilation-targets": "^7.25.2",
- "@babel/helper-module-transforms": "^7.25.2",
- "@babel/helpers": "^7.25.0",
- "@babel/parser": "^7.25.0",
- "@babel/template": "^7.25.0",
- "@babel/traverse": "^7.25.2",
- "@babel/types": "^7.25.2",
- "convert-source-map": "^2.0.0",
- "debug": "^4.1.0",
- "gensync": "^1.0.0-beta.2",
- "json5": "^2.2.3",
- "semver": "^6.3.1"
- },
"engines": {
"node": ">=6.9.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/babel"
}
},
- "node_modules/@babel/eslint-parser": {
- "version": "7.25.1",
- "resolved": "https://registry.npmjs.org/@babel/eslint-parser/-/eslint-parser-7.25.1.tgz",
- "integrity": "sha512-Y956ghgTT4j7rKesabkh5WeqgSFZVFwaPR0IWFm7KFHFmmJ4afbG49SmfW4S+GyRPx0Dy5jxEWA5t0rpxfElWg==",
+ "node_modules/@babel/helper-validator-identifier": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz",
+ "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "@nicolo-ribaudo/eslint-scope-5-internals": "5.1.1-v1",
- "eslint-visitor-keys": "^2.1.0",
- "semver": "^6.3.1"
- },
"engines": {
- "node": "^10.13.0 || ^12.13.0 || >=14.0.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.11.0",
- "eslint": "^7.5.0 || ^8.0.0 || ^9.0.0"
+ "node": ">=6.9.0"
}
},
- "node_modules/@babel/generator": {
- "version": "7.25.6",
- "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.6.tgz",
- "integrity": "sha512-VPC82gr1seXOpkjAAKoLhP50vx4vGNlF4msF64dSFq1P8RfB+QAuJWGHPXXPc8QyfVWwwB/TNNU4+ayZmHNbZw==",
+ "node_modules/@babel/highlight": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz",
+ "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==",
+ "dev": true,
"license": "MIT",
"dependencies": {
- "@babel/types": "^7.25.6",
- "@jridgewell/gen-mapping": "^0.3.5",
- "@jridgewell/trace-mapping": "^0.3.25",
- "jsesc": "^2.5.1"
+ "@babel/helper-validator-identifier": "^7.24.7",
+ "chalk": "^2.4.2",
+ "js-tokens": "^4.0.0",
+ "picocolors": "^1.0.0"
},
"engines": {
"node": ">=6.9.0"
}
},
- "node_modules/@babel/helper-annotate-as-pure": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.24.7.tgz",
- "integrity": "sha512-BaDeOonYvhdKw+JoMVkAixAAJzG2jVPIwWoKBPdYuY9b452e2rPuI9QPYh3KpofZ3pW2akOmwZLOiOsHMiqRAg==",
+ "node_modules/@babel/parser": {
+ "version": "7.25.6",
+ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.6.tgz",
+ "integrity": "sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/types": "^7.24.7"
+ "@babel/types": "^7.25.6"
+ },
+ "bin": {
+ "parser": "bin/babel-parser.js"
},
"engines": {
- "node": ">=6.9.0"
+ "node": ">=6.0.0"
}
},
- "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.24.7.tgz",
- "integrity": "sha512-xZeCVVdwb4MsDBkkyZ64tReWYrLRHlMN72vP7Bdm3OUOuyFZExhsHUUnuWnm2/XOlAJzR0LfPpB56WXZn0X/lA==",
+ "node_modules/@babel/runtime": {
+ "version": "7.25.6",
+ "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.6.tgz",
+ "integrity": "sha512-VBj9MYyDb9tuLq7yzqjgzt6Q+IBQLrGZfdjOekyEirZPHxXWoTSGUTMrpsfi58Up73d13NfYLv8HT9vmznjzhQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/traverse": "^7.24.7",
- "@babel/types": "^7.24.7"
+ "regenerator-runtime": "^0.14.0"
},
"engines": {
"node": ">=6.9.0"
}
},
- "node_modules/@babel/helper-compilation-targets": {
- "version": "7.25.2",
- "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.2.tgz",
- "integrity": "sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==",
+ "node_modules/@babel/template": {
+ "version": "7.25.0",
+ "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.0.tgz",
+ "integrity": "sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==",
+ "dev": true,
"license": "MIT",
"dependencies": {
- "@babel/compat-data": "^7.25.2",
- "@babel/helper-validator-option": "^7.24.8",
- "browserslist": "^4.23.1",
- "lru-cache": "^5.1.1",
- "semver": "^6.3.1"
+ "@babel/code-frame": "^7.24.7",
+ "@babel/parser": "^7.25.0",
+ "@babel/types": "^7.25.0"
},
"engines": {
"node": ">=6.9.0"
}
},
- "node_modules/@babel/helper-create-class-features-plugin": {
- "version": "7.25.4",
- "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.25.4.tgz",
- "integrity": "sha512-ro/bFs3/84MDgDmMwbcHgDa8/E6J3QKNTk4xJJnVeFtGE+tL0K26E3pNxhYz2b67fJpt7Aphw5XcploKXuCvCQ==",
+ "node_modules/@babel/traverse": {
+ "version": "7.25.6",
+ "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.6.tgz",
+ "integrity": "sha512-9Vrcx5ZW6UwK5tvqsj0nGpp/XzqthkT0dqIc9g1AdtygFToNtTF67XzYS//dm+SAK9cp3B9R4ZO/46p63SCjlQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-annotate-as-pure": "^7.24.7",
- "@babel/helper-member-expression-to-functions": "^7.24.8",
- "@babel/helper-optimise-call-expression": "^7.24.7",
- "@babel/helper-replace-supers": "^7.25.0",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7",
- "@babel/traverse": "^7.25.4",
- "semver": "^6.3.1"
+ "@babel/code-frame": "^7.24.7",
+ "@babel/generator": "^7.25.6",
+ "@babel/parser": "^7.25.6",
+ "@babel/template": "^7.25.0",
+ "@babel/types": "^7.25.6",
+ "debug": "^4.3.1",
+ "globals": "^11.1.0"
},
"engines": {
"node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
}
},
- "node_modules/@babel/helper-create-regexp-features-plugin": {
- "version": "7.25.2",
- "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.25.2.tgz",
- "integrity": "sha512-+wqVGP+DFmqwFD3EH6TMTfUNeqDehV3E/dl+Sd54eaXqm17tEUNbEIn4sVivVowbvUpOtIGxdo3GoXyDH9N/9g==",
+ "node_modules/@babel/types": {
+ "version": "7.25.6",
+ "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.6.tgz",
+ "integrity": "sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-annotate-as-pure": "^7.24.7",
- "regexpu-core": "^5.3.1",
- "semver": "^6.3.1"
+ "@babel/helper-string-parser": "^7.24.8",
+ "@babel/helper-validator-identifier": "^7.24.7",
+ "to-fast-properties": "^2.0.0"
},
"engines": {
"node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
}
},
- "node_modules/@babel/helper-define-polyfill-provider": {
- "version": "0.6.2",
- "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.2.tgz",
- "integrity": "sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ==",
+ "node_modules/@chromatic-com/storybook": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/@chromatic-com/storybook/-/storybook-2.0.2.tgz",
+ "integrity": "sha512-7bPIliISedeIpnVKbzktysFYW5n56bN91kxuOj1XXKixmjbUHRUMvcXd4K2liN6MiR5ZqJtmtcPsZ6CebbGlEA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-compilation-targets": "^7.22.6",
- "@babel/helper-plugin-utils": "^7.22.5",
- "debug": "^4.1.1",
- "lodash.debounce": "^4.0.8",
- "resolve": "^1.14.2"
+ "chromatic": "^11.4.0",
+ "filesize": "^10.0.12",
+ "jsonfile": "^6.1.0",
+ "react-confetti": "^6.1.0",
+ "strip-ansi": "^7.1.0"
},
- "peerDependencies": {
- "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0"
+ "engines": {
+ "node": ">=16.0.0",
+ "yarn": ">=1.22.18"
}
},
- "node_modules/@babel/helper-member-expression-to-functions": {
- "version": "7.24.8",
- "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.8.tgz",
- "integrity": "sha512-LABppdt+Lp/RlBxqrh4qgf1oEH/WxdzQNDJIu5gC/W1GyvPVrOBiItmmM8wan2fm4oYqFuFfkXmlGpLQhPY8CA==",
+ "node_modules/@chromatic-com/storybook/node_modules/ansi-regex": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz",
+ "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "@babel/traverse": "^7.24.8",
- "@babel/types": "^7.24.8"
- },
"engines": {
- "node": ">=6.9.0"
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-regex?sponsor=1"
}
},
- "node_modules/@babel/helper-module-imports": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz",
- "integrity": "sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==",
+ "node_modules/@chromatic-com/storybook/node_modules/jsonfile": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
+ "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
+ "dev": true,
"license": "MIT",
"dependencies": {
- "@babel/traverse": "^7.24.7",
- "@babel/types": "^7.24.7"
+ "universalify": "^2.0.0"
},
- "engines": {
- "node": ">=6.9.0"
+ "optionalDependencies": {
+ "graceful-fs": "^4.1.6"
}
},
- "node_modules/@babel/helper-module-transforms": {
- "version": "7.25.2",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.25.2.tgz",
- "integrity": "sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==",
+ "node_modules/@chromatic-com/storybook/node_modules/strip-ansi": {
+ "version": "7.1.0",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz",
+ "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==",
+ "dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-module-imports": "^7.24.7",
- "@babel/helper-simple-access": "^7.24.7",
- "@babel/helper-validator-identifier": "^7.24.7",
- "@babel/traverse": "^7.25.2"
+ "ansi-regex": "^6.0.1"
},
"engines": {
- "node": ">=6.9.0"
+ "node": ">=12"
},
- "peerDependencies": {
- "@babel/core": "^7.0.0"
+ "funding": {
+ "url": "https://github.com/chalk/strip-ansi?sponsor=1"
}
},
- "node_modules/@babel/helper-optimise-call-expression": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.24.7.tgz",
- "integrity": "sha512-jKiTsW2xmWwxT1ixIdfXUZp+P5yURx2suzLZr5Hi64rURpDYdMW0pv+Uf17EYk2Rd428Lx4tLsnjGJzYKDM/6A==",
+ "node_modules/@chromatic-com/storybook/node_modules/universalify": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
+ "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "@babel/types": "^7.24.7"
- },
"engines": {
- "node": ">=6.9.0"
+ "node": ">= 10.0.0"
}
},
- "node_modules/@babel/helper-plugin-utils": {
- "version": "7.24.8",
- "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.8.tgz",
- "integrity": "sha512-FFWx5142D8h2Mgr/iPVGH5G7w6jDn4jUSpZTyDnQO0Yn7Ks2Kuz6Pci8H6MPCoUJegd/UZQ3tAvfLCxQSnWWwg==",
+ "node_modules/@esbuild/linux-x64": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.23.1.tgz",
+ "integrity": "sha512-EV6+ovTsEXCPAp58g2dD68LxoP/wK5pRvgy0J/HxPGB009omFPv3Yet0HiaqvrIrgPTBuC6wCH1LTOY91EO5hQ==",
+ "cpu": [
+ "x64"
+ ],
"dev": true,
"license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ],
"engines": {
- "node": ">=6.9.0"
+ "node": ">=18"
}
},
- "node_modules/@babel/helper-remap-async-to-generator": {
- "version": "7.25.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.25.0.tgz",
- "integrity": "sha512-NhavI2eWEIz/H9dbrG0TuOicDhNexze43i5z7lEqwYm0WEZVTwnPpA0EafUTP7+6/W79HWIP2cTe3Z5NiSTVpw==",
+ "node_modules/@eslint-community/eslint-utils": {
+ "version": "4.4.0",
+ "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz",
+ "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-annotate-as-pure": "^7.24.7",
- "@babel/helper-wrap-function": "^7.25.0",
- "@babel/traverse": "^7.25.0"
+ "eslint-visitor-keys": "^3.3.0"
},
"engines": {
- "node": ">=6.9.0"
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
},
"peerDependencies": {
- "@babel/core": "^7.0.0"
+ "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0"
}
},
- "node_modules/@babel/helper-replace-supers": {
- "version": "7.25.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.25.0.tgz",
- "integrity": "sha512-q688zIvQVYtZu+i2PsdIu/uWGRpfxzr5WESsfpShfZECkO+d2o+WROWezCi/Q6kJ0tfPa5+pUGUlfx2HhrA3Bg==",
+ "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": {
+ "version": "3.4.3",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
+ "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-member-expression-to-functions": "^7.24.8",
- "@babel/helper-optimise-call-expression": "^7.24.7",
- "@babel/traverse": "^7.25.0"
- },
+ "license": "Apache-2.0",
"engines": {
- "node": ">=6.9.0"
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
},
- "peerDependencies": {
- "@babel/core": "^7.0.0"
+ "funding": {
+ "url": "https://opencollective.com/eslint"
}
},
- "node_modules/@babel/helper-simple-access": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.7.tgz",
- "integrity": "sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==",
+ "node_modules/@eslint-community/regexpp": {
+ "version": "4.11.1",
+ "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.1.tgz",
+ "integrity": "sha512-m4DVN9ZqskZoLU5GlWZadwDnYo3vAEydiUayB9widCl9ffWx2IvPnp6n3on5rJmziJSw9Bv+Z3ChDVdMwXCY8Q==",
+ "dev": true,
"license": "MIT",
+ "engines": {
+ "node": "^12.0.0 || ^14.0.0 || >=16.0.0"
+ }
+ },
+ "node_modules/@eslint/config-array": {
+ "version": "0.18.0",
+ "resolved": "https://registry.npmjs.org/@eslint/config-array/-/config-array-0.18.0.tgz",
+ "integrity": "sha512-fTxvnS1sRMu3+JjXwJG0j/i4RT9u4qJ+lqS/yCGap4lH4zZGzQ7tu+xZqQmcMZq5OBZDL4QRxQzRjkWcGt8IVw==",
+ "dev": true,
+ "license": "Apache-2.0",
"dependencies": {
- "@babel/traverse": "^7.24.7",
- "@babel/types": "^7.24.7"
+ "@eslint/object-schema": "^2.1.4",
+ "debug": "^4.3.1",
+ "minimatch": "^3.1.2"
},
"engines": {
- "node": ">=6.9.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
}
},
- "node_modules/@babel/helper-skip-transparent-expression-wrappers": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.24.7.tgz",
- "integrity": "sha512-IO+DLT3LQUElMbpzlatRASEyQtfhSE0+m465v++3jyyXeBTBUjtVZg28/gHeV5mrTJqvEKhKroBGAvhW+qPHiQ==",
+ "node_modules/@eslint/core": {
+ "version": "0.6.0",
+ "resolved": "https://registry.npmjs.org/@eslint/core/-/core-0.6.0.tgz",
+ "integrity": "sha512-8I2Q8ykA4J0x0o7cg67FPVnehcqWTBehu/lmY+bolPFHGjh49YzGBMXTvpqVgEbBdvNCSxj6iFgiIyHzf03lzg==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ }
+ },
+ "node_modules/@eslint/eslintrc": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-3.1.0.tgz",
+ "integrity": "sha512-4Bfj15dVJdoy3RfZmmo86RK1Fwzn6SstsvK9JS+BaVKqC6QQQQyXekNaC+g+LKNgkQ+2VhGAzm6hO40AhMR3zQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/traverse": "^7.24.7",
- "@babel/types": "^7.24.7"
+ "ajv": "^6.12.4",
+ "debug": "^4.3.2",
+ "espree": "^10.0.1",
+ "globals": "^14.0.0",
+ "ignore": "^5.2.0",
+ "import-fresh": "^3.2.1",
+ "js-yaml": "^4.1.0",
+ "minimatch": "^3.1.2",
+ "strip-json-comments": "^3.1.1"
},
"engines": {
- "node": ">=6.9.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/eslint"
}
},
- "node_modules/@babel/helper-string-parser": {
- "version": "7.24.8",
- "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz",
- "integrity": "sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==",
+ "node_modules/@eslint/eslintrc/node_modules/globals": {
+ "version": "14.0.0",
+ "resolved": "https://registry.npmjs.org/globals/-/globals-14.0.0.tgz",
+ "integrity": "sha512-oahGvuMGQlPw/ivIYBjVSrWAfWLBeku5tpPE2fOPLi+WHffIWbuh2tCjhyQhTBPMf5E9jDEH4FOmTYgYwbKwtQ==",
+ "dev": true,
"license": "MIT",
"engines": {
- "node": ">=6.9.0"
+ "node": ">=18"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/@babel/helper-validator-identifier": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz",
- "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==",
+ "node_modules/@eslint/js": {
+ "version": "9.12.0",
+ "resolved": "https://registry.npmjs.org/@eslint/js/-/js-9.12.0.tgz",
+ "integrity": "sha512-eohesHH8WFRUprDNyEREgqP6beG6htMeUYeCpkEgBCieCMme5r9zFWjzAJp//9S+Kub4rqE+jXe9Cp1a7IYIIA==",
+ "dev": true,
"license": "MIT",
"engines": {
- "node": ">=6.9.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
}
},
- "node_modules/@babel/helper-validator-option": {
- "version": "7.24.8",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.8.tgz",
- "integrity": "sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==",
- "license": "MIT",
+ "node_modules/@eslint/object-schema": {
+ "version": "2.1.4",
+ "resolved": "https://registry.npmjs.org/@eslint/object-schema/-/object-schema-2.1.4.tgz",
+ "integrity": "sha512-BsWiH1yFGjXXS2yvrf5LyuoSIIbPrGUWob917o+BTKuZ7qJdxX8aJLRxs1fS9n6r7vESrq1OUqb68dANcFXuQQ==",
+ "dev": true,
+ "license": "Apache-2.0",
"engines": {
- "node": ">=6.9.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
}
},
- "node_modules/@babel/helper-wrap-function": {
- "version": "7.25.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.25.0.tgz",
- "integrity": "sha512-s6Q1ebqutSiZnEjaofc/UKDyC4SbzV5n5SrA2Gq8UawLycr3i04f1dX4OzoQVnexm6aOCh37SQNYlJ/8Ku+PMQ==",
+ "node_modules/@eslint/plugin-kit": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/@eslint/plugin-kit/-/plugin-kit-0.2.0.tgz",
+ "integrity": "sha512-vH9PiIMMwvhCx31Af3HiGzsVNULDbyVkHXwlemn/B0TFj/00ho3y55efXrUZTfQipxoHC5u4xq6zblww1zm1Ig==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
"dependencies": {
- "@babel/template": "^7.25.0",
- "@babel/traverse": "^7.25.0",
- "@babel/types": "^7.25.0"
+ "levn": "^0.4.1"
},
"engines": {
- "node": ">=6.9.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
}
},
- "node_modules/@babel/helpers": {
- "version": "7.25.6",
- "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.6.tgz",
- "integrity": "sha512-Xg0tn4HcfTijTwfDwYlvVCl43V6h4KyVVX2aEm4qdO/PC6L2YvzLHFdmxhoeSA3eslcE6+ZVXHgWwopXYLNq4Q==",
- "license": "MIT",
+ "node_modules/@humanfs/core": {
+ "version": "0.19.0",
+ "resolved": "https://registry.npmjs.org/@humanfs/core/-/core-0.19.0.tgz",
+ "integrity": "sha512-2cbWIHbZVEweE853g8jymffCA+NCMiuqeECeBBLm8dg2oFdjuGJhgN4UAbI+6v0CKbbhvtXA4qV8YR5Ji86nmw==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=18.18.0"
+ }
+ },
+ "node_modules/@humanfs/node": {
+ "version": "0.16.5",
+ "resolved": "https://registry.npmjs.org/@humanfs/node/-/node-0.16.5.tgz",
+ "integrity": "sha512-KSPA4umqSG4LHYRodq31VDwKAvaTF4xmVlzM8Aeh4PlU1JQ3IG0wiA8C25d3RQ9nJyM3mBHyI53K06VVL/oFFg==",
+ "dev": true,
+ "license": "Apache-2.0",
"dependencies": {
- "@babel/template": "^7.25.0",
- "@babel/types": "^7.25.6"
+ "@humanfs/core": "^0.19.0",
+ "@humanwhocodes/retry": "^0.3.0"
},
"engines": {
- "node": ">=6.9.0"
+ "node": ">=18.18.0"
}
},
- "node_modules/@babel/highlight": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz",
- "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==",
- "license": "MIT",
- "dependencies": {
- "@babel/helper-validator-identifier": "^7.24.7",
- "chalk": "^2.4.2",
- "js-tokens": "^4.0.0",
- "picocolors": "^1.0.0"
+ "node_modules/@humanwhocodes/module-importer": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz",
+ "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=12.22"
},
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/nzakas"
+ }
+ },
+ "node_modules/@humanwhocodes/retry": {
+ "version": "0.3.1",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/retry/-/retry-0.3.1.tgz",
+ "integrity": "sha512-JBxkERygn7Bv/GbN5Rv8Ul6LVknS+5Bp6RgDC/O8gEBU/yeH5Ui5C/OlWrTb6qct7LjjfT6Re2NxB0ln0yYybA==",
+ "dev": true,
+ "license": "Apache-2.0",
"engines": {
- "node": ">=6.9.0"
+ "node": ">=18.18"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/nzakas"
}
},
- "node_modules/@babel/parser": {
- "version": "7.25.6",
- "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.6.tgz",
- "integrity": "sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==",
+ "node_modules/@jridgewell/gen-mapping": {
+ "version": "0.3.5",
+ "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
+ "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
+ "dev": true,
"license": "MIT",
"dependencies": {
- "@babel/types": "^7.25.6"
- },
- "bin": {
- "parser": "bin/babel-parser.js"
+ "@jridgewell/set-array": "^1.2.1",
+ "@jridgewell/sourcemap-codec": "^1.4.10",
+ "@jridgewell/trace-mapping": "^0.3.24"
},
"engines": {
"node": ">=6.0.0"
}
},
- "node_modules/@babel/plugin-bugfix-firefox-class-in-computed-class-key": {
- "version": "7.25.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.25.3.tgz",
- "integrity": "sha512-wUrcsxZg6rqBXG05HG1FPYgsP6EvwF4WpBbxIpWIIYnH8wG0gzx3yZY3dtEHas4sTAOGkbTsc9EGPxwff8lRoA==",
+ "node_modules/@jridgewell/resolve-uri": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
+ "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.24.8",
- "@babel/traverse": "^7.25.3"
- },
"engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
+ "node": ">=6.0.0"
}
},
- "node_modules/@babel/plugin-bugfix-safari-class-field-initializer-scope": {
- "version": "7.25.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-class-field-initializer-scope/-/plugin-bugfix-safari-class-field-initializer-scope-7.25.0.tgz",
- "integrity": "sha512-Bm4bH2qsX880b/3ziJ8KD711LT7z4u8CFudmjqle65AZj/HNUFhEf90dqYv6O86buWvSBmeQDjv0Tn2aF/bIBA==",
+ "node_modules/@jridgewell/set-array": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
+ "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.24.8"
- },
"engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
+ "node": ">=6.0.0"
}
},
- "node_modules/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": {
- "version": "7.25.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.25.0.tgz",
- "integrity": "sha512-lXwdNZtTmeVOOFtwM/WDe7yg1PL8sYhRk/XH0FzbR2HDQ0xC+EnQ/JHeoMYSavtU115tnUk0q9CDyq8si+LMAA==",
+ "node_modules/@jridgewell/source-map": {
+ "version": "0.3.6",
+ "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz",
+ "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.8"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
+ "@jridgewell/gen-mapping": "^0.3.5",
+ "@jridgewell/trace-mapping": "^0.3.25"
}
},
- "node_modules/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.24.7.tgz",
- "integrity": "sha512-+izXIbke1T33mY4MSNnrqhPXDz01WYhEf3yF5NbnUtkiNnm+XBZJl3kNfoK6NKmYlz/D07+l2GWVK/QfDkNCuQ==",
+ "node_modules/@jridgewell/sourcemap-codec": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz",
+ "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@jridgewell/trace-mapping": {
+ "version": "0.3.25",
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
+ "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7",
- "@babel/plugin-transform-optional-chaining": "^7.24.7"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.13.0"
+ "@jridgewell/resolve-uri": "^3.1.0",
+ "@jridgewell/sourcemap-codec": "^1.4.14"
}
},
- "node_modules/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": {
- "version": "7.25.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.25.0.tgz",
- "integrity": "sha512-tggFrk1AIShG/RUQbEwt2Tr/E+ObkfwrPjR6BjbRvsx24+PSjK8zrq0GWPNCjo8qpRx4DuJzlcvWJqlm+0h3kw==",
+ "node_modules/@mdx-js/react": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@mdx-js/react/-/react-3.0.1.tgz",
+ "integrity": "sha512-9ZrPIU4MGf6et1m1ov3zKf+q9+deetI51zprKB1D/z3NOb+rUxxtEl3mCjW5wTGh6VhRdwPueh1oRzi6ezkA8A==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.8",
- "@babel/traverse": "^7.25.0"
+ "@types/mdx": "^2.0.0"
},
- "engines": {
- "node": ">=6.9.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/unified"
},
"peerDependencies": {
- "@babel/core": "^7.0.0"
+ "@types/react": ">=16",
+ "react": ">=16"
}
},
- "node_modules/@babel/plugin-proposal-private-property-in-object": {
- "version": "7.21.0-placeholder-for-preset-env.2",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz",
- "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==",
+ "node_modules/@module-federation/runtime": {
+ "version": "0.5.1",
+ "resolved": "https://registry.npmjs.org/@module-federation/runtime/-/runtime-0.5.1.tgz",
+ "integrity": "sha512-xgiMUWwGLWDrvZc9JibuEbXIbhXg6z2oUkemogSvQ4LKvrl/n0kbqP1Blk669mXzyWbqtSp6PpvNdwaE1aN5xQ==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "dependencies": {
+ "@module-federation/sdk": "0.5.1"
}
},
- "node_modules/@babel/plugin-syntax-async-generators": {
- "version": "7.8.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz",
- "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==",
+ "node_modules/@module-federation/runtime-tools": {
+ "version": "0.5.1",
+ "resolved": "https://registry.npmjs.org/@module-federation/runtime-tools/-/runtime-tools-0.5.1.tgz",
+ "integrity": "sha512-nfBedkoZ3/SWyO0hnmaxuz0R0iGPSikHZOAZ0N/dVSQaIzlffUo35B5nlC2wgWIc0JdMZfkwkjZRrnuuDIJbzg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "@module-federation/runtime": "0.5.1",
+ "@module-federation/webpack-bundler-runtime": "0.5.1"
}
},
- "node_modules/@babel/plugin-syntax-class-properties": {
- "version": "7.12.13",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz",
- "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==",
+ "node_modules/@module-federation/sdk": {
+ "version": "0.5.1",
+ "resolved": "https://registry.npmjs.org/@module-federation/sdk/-/sdk-0.5.1.tgz",
+ "integrity": "sha512-exvchtjNURJJkpqjQ3/opdbfeT2wPKvrbnGnyRkrwW5o3FH1LaST1tkiNviT6OXTexGaVc2DahbdniQHVtQ7pA==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@module-federation/webpack-bundler-runtime": {
+ "version": "0.5.1",
+ "resolved": "https://registry.npmjs.org/@module-federation/webpack-bundler-runtime/-/webpack-bundler-runtime-0.5.1.tgz",
+ "integrity": "sha512-mMhRFH0k2VjwHt3Jol9JkUsmI/4XlrAoBG3E0o7HoyoPYv1UFOWyqAflfANcUPgbYpvqmyLzDcO+3IT36LXnrA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.12.13"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "@module-federation/runtime": "0.5.1",
+ "@module-federation/sdk": "0.5.1"
}
},
- "node_modules/@babel/plugin-syntax-class-static-block": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz",
- "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==",
+ "node_modules/@nodelib/fs.scandir": {
+ "version": "2.1.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
+ "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
+ "@nodelib/fs.stat": "2.0.5",
+ "run-parallel": "^1.1.9"
},
"engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "node": ">= 8"
}
},
- "node_modules/@babel/plugin-syntax-dynamic-import": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz",
- "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==",
+ "node_modules/@nodelib/fs.stat": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
+ "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "engines": {
+ "node": ">= 8"
}
},
- "node_modules/@babel/plugin-syntax-export-namespace-from": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz",
- "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==",
+ "node_modules/@nodelib/fs.walk": {
+ "version": "1.2.8",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
+ "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.8.3"
+ "@nodelib/fs.scandir": "2.1.5",
+ "fastq": "^1.6.0"
},
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "engines": {
+ "node": ">= 8"
}
},
- "node_modules/@babel/plugin-syntax-import-assertions": {
- "version": "7.25.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.25.6.tgz",
- "integrity": "sha512-aABl0jHw9bZ2karQ/uUD6XP4u0SG22SJrOHFoL6XB1R7dTovOP4TzTlsxOYC5yQ1pdscVK2JTUnF6QL3ARoAiQ==",
+ "node_modules/@pkgr/core": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz",
+ "integrity": "sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.24.8"
- },
"engines": {
- "node": ">=6.9.0"
+ "node": "^12.20.0 || ^14.18.0 || >=16.0.0"
},
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "funding": {
+ "url": "https://opencollective.com/unts"
}
},
- "node_modules/@babel/plugin-syntax-import-attributes": {
- "version": "7.25.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.25.6.tgz",
- "integrity": "sha512-sXaDXaJN9SNLymBdlWFA+bjzBhFD617ZaFiY13dGt7TVslVvVgA6fkZOP7Ki3IGElC45lwHdOTrCtKZGVAWeLQ==",
+ "node_modules/@rollup/pluginutils": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.2.tgz",
+ "integrity": "sha512-/FIdS3PyZ39bjZlwqFnWqCOVnW7o963LtKMwQOD0NhQqw22gSr2YY1afu3FxRip4ZCZNsD5jq6Aaz6QV3D/Njw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.8"
+ "@types/estree": "^1.0.0",
+ "estree-walker": "^2.0.2",
+ "picomatch": "^2.3.1"
},
"engines": {
- "node": ">=6.9.0"
+ "node": ">=14.0.0"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0"
+ },
+ "peerDependenciesMeta": {
+ "rollup": {
+ "optional": true
+ }
}
},
- "node_modules/@babel/plugin-syntax-import-meta": {
- "version": "7.10.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz",
- "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==",
+ "node_modules/@rsbuild/core": {
+ "version": "1.0.10",
+ "resolved": "https://registry.npmjs.org/@rsbuild/core/-/core-1.0.10.tgz",
+ "integrity": "sha512-617N8YzDeH5vymeeOyCqK0toO9yt7s2yey49OIvW9jZqBo0IvgbkFNQf34LDLsxVzy+cpf1nGrcYWjPKhVuGfQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.10.4"
+ "@rspack/core": "~1.0.8",
+ "@rspack/lite-tapable": "~1.0.1",
+ "@swc/helpers": "^0.5.13",
+ "core-js": "~3.38.1"
},
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "bin": {
+ "rsbuild": "bin/rsbuild.js"
+ },
+ "engines": {
+ "node": ">=16.7.0"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.3"
}
},
- "node_modules/@babel/plugin-syntax-json-strings": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz",
- "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==",
+ "node_modules/@rsbuild/plugin-node-polyfill": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/@rsbuild/plugin-node-polyfill/-/plugin-node-polyfill-1.0.4.tgz",
+ "integrity": "sha512-WuYnMmbRpRPGsHn1maLLa4aHY4qSlEI5wbVhf4vcYlz4Zi+F+RgM/cerFZ0zSgNW/7zEHRORoSWFEyOUff8RvQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
+ "assert": "^2.1.0",
+ "browserify-zlib": "^0.2.0",
+ "buffer": "^5.7.1",
+ "console-browserify": "^1.2.0",
+ "constants-browserify": "^1.0.0",
+ "crypto-browserify": "^3.12.0",
+ "domain-browser": "^5.7.0",
+ "events": "^3.3.0",
+ "https-browserify": "^1.0.0",
+ "os-browserify": "^0.3.0",
+ "path-browserify": "^1.0.1",
+ "process": "^0.11.10",
+ "punycode": "^2.3.1",
+ "querystring-es3": "^0.2.1",
+ "readable-stream": "^4.5.2",
+ "stream-browserify": "^3.0.0",
+ "stream-http": "^3.2.0",
+ "string_decoder": "^1.3.0",
+ "timers-browserify": "^2.0.12",
+ "tty-browserify": "^0.0.1",
+ "url": "^0.11.3",
+ "util": "^0.12.5",
+ "vm-browserify": "^1.1.2"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "@rsbuild/core": "1.x || ^1.0.1-beta.0"
+ },
+ "peerDependenciesMeta": {
+ "@rsbuild/core": {
+ "optional": true
+ }
}
},
- "node_modules/@babel/plugin-syntax-logical-assignment-operators": {
- "version": "7.10.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz",
- "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==",
+ "node_modules/@rsbuild/plugin-node-polyfill/node_modules/assert": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/assert/-/assert-2.1.0.tgz",
+ "integrity": "sha512-eLHpSK/Y4nhMJ07gDaAzoX/XAKS8PSaojml3M0DM4JpV1LAi5JOJ/p6H/XWrl8L+DzVEvVCW1z3vWAaB9oTsQw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.10.4"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "call-bind": "^1.0.2",
+ "is-nan": "^1.3.2",
+ "object-is": "^1.1.5",
+ "object.assign": "^4.1.4",
+ "util": "^0.12.5"
}
},
- "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz",
- "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==",
+ "node_modules/@rsbuild/plugin-node-polyfill/node_modules/buffer": {
+ "version": "5.7.1",
+ "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz",
+ "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==",
"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"
+ }
+ ],
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "base64-js": "^1.3.1",
+ "ieee754": "^1.1.13"
}
},
- "node_modules/@babel/plugin-syntax-numeric-separator": {
- "version": "7.10.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz",
- "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==",
+ "node_modules/@rsbuild/plugin-node-polyfill/node_modules/domain-browser": {
+ "version": "5.7.0",
+ "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-5.7.0.tgz",
+ "integrity": "sha512-edTFu0M/7wO1pXY6GDxVNVW086uqwWYIHP98txhcPyV995X21JIH2DtYp33sQJOupYoXKe9RwTw2Ya2vWaquTQ==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.10.4"
+ "license": "Artistic-2.0",
+ "engines": {
+ "node": ">=4"
},
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "funding": {
+ "url": "https://bevry.me/fund"
}
},
- "node_modules/@babel/plugin-syntax-object-rest-spread": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz",
- "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==",
+ "node_modules/@rsbuild/plugin-node-polyfill/node_modules/punycode": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz",
+ "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "engines": {
+ "node": ">=6"
}
},
- "node_modules/@babel/plugin-syntax-optional-catch-binding": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz",
- "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==",
+ "node_modules/@rsbuild/plugin-node-polyfill/node_modules/readable-stream": {
+ "version": "4.5.2",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz",
+ "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
+ "abort-controller": "^3.0.0",
+ "buffer": "^6.0.3",
+ "events": "^3.3.0",
+ "process": "^0.11.10",
+ "string_decoder": "^1.3.0"
},
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "engines": {
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
}
},
- "node_modules/@babel/plugin-syntax-optional-chaining": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz",
- "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==",
+ "node_modules/@rsbuild/plugin-node-polyfill/node_modules/readable-stream/node_modules/buffer": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz",
+ "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==",
"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"
+ }
+ ],
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.8.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "base64-js": "^1.3.1",
+ "ieee754": "^1.2.1"
}
},
- "node_modules/@babel/plugin-syntax-private-property-in-object": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz",
- "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==",
+ "node_modules/@rsbuild/plugin-node-polyfill/node_modules/timers-browserify": {
+ "version": "2.0.12",
+ "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-2.0.12.tgz",
+ "integrity": "sha512-9phl76Cqm6FhSX9Xe1ZUAMLtm1BLkKj2Qd5ApyWkXzsMRaA7dgr81kf4wJmQf/hAvg8EEyJxDo3du/0KlhPiKQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
+ "setimmediate": "^1.0.4"
},
"engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "node": ">=0.6.0"
}
},
- "node_modules/@babel/plugin-syntax-top-level-await": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz",
- "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==",
+ "node_modules/@rsbuild/plugin-stylus": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@rsbuild/plugin-stylus/-/plugin-stylus-1.0.2.tgz",
+ "integrity": "sha512-UN5XZbKSsKH6WbWJlKBxeHypUoXduCGQ42J5CVamdVKrNewwLLAvxuv1/IOe97H1OCEbihLv2tt9lFh9SnaTJA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
+ "deepmerge": "^4.3.1",
+ "reduce-configs": "^1.0.0",
+ "stylus": "0.63.0",
+ "stylus-loader": "8.1.0"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "@rsbuild/core": "1.x || ^1.0.1-rc.0"
}
},
- "node_modules/@babel/plugin-syntax-unicode-sets-regex": {
- "version": "7.18.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz",
- "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==",
+ "node_modules/@rsbuild/plugin-type-check": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/@rsbuild/plugin-type-check/-/plugin-type-check-1.0.1.tgz",
+ "integrity": "sha512-BahXAJNq4kWtL2dINUlrOL9UCN1t8c/qf5RW8JXx2HSSasfKPJGJ1BVfieMcIaFa/t8/QdafcwoxY1WKPTlSMg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.18.6",
- "@babel/helper-plugin-utils": "^7.18.6"
- },
- "engines": {
- "node": ">=6.9.0"
+ "deepmerge": "^4.3.1",
+ "fork-ts-checker-webpack-plugin": "9.0.2",
+ "json5": "^2.2.3",
+ "reduce-configs": "^1.0.0",
+ "webpack": "^5.94.0"
},
"peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/plugin-transform-arrow-functions": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.24.7.tgz",
- "integrity": "sha512-Dt9LQs6iEY++gXUwY03DNFat5C2NbO48jj+j/bSAz6b3HgPs39qcPiYt77fDObIcFwj3/C2ICX9YMwGflUoSHQ==",
+ "@rsbuild/core": "1.x || ^1.0.1-beta.0"
+ },
+ "peerDependenciesMeta": {
+ "@rsbuild/core": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@rspack/binding": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/@rspack/binding/-/binding-1.0.8.tgz",
+ "integrity": "sha512-abRirbrjobcllLAamyeiWxT6Rb0wELUnITynQdqRbSweWm2lvnhm9YBv4BcOjvJBzhJtvRJo5JBtbKXjDTarug==",
+ "dev": true,
+ "license": "MIT",
+ "optionalDependencies": {
+ "@rspack/binding-darwin-arm64": "1.0.8",
+ "@rspack/binding-darwin-x64": "1.0.8",
+ "@rspack/binding-linux-arm64-gnu": "1.0.8",
+ "@rspack/binding-linux-arm64-musl": "1.0.8",
+ "@rspack/binding-linux-x64-gnu": "1.0.8",
+ "@rspack/binding-linux-x64-musl": "1.0.8",
+ "@rspack/binding-win32-arm64-msvc": "1.0.8",
+ "@rspack/binding-win32-ia32-msvc": "1.0.8",
+ "@rspack/binding-win32-x64-msvc": "1.0.8"
+ }
+ },
+ "node_modules/@rspack/binding-linux-x64-gnu": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/@rspack/binding-linux-x64-gnu/-/binding-linux-x64-gnu-1.0.8.tgz",
+ "integrity": "sha512-lfqUuKCoyRN/gGeokhX/oNYqB6OpbtgQb57b0QuD8IaiH2a1ee0TtEVvRbyQNEDwht6lW4RTNg0RfMYu52LgXg==",
+ "cpu": [
+ "x64"
+ ],
+ "dev": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "linux"
+ ]
+ },
+ "node_modules/@rspack/core": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/@rspack/core/-/core-1.0.8.tgz",
+ "integrity": "sha512-pbXwXYb4WQwb0l35P5v3l/NpDJXy1WiVE4IcQ/6LxZYU5NyZuqtsK0trR88xIVRZb9qU0JUeCdQq7Xa6Q+c3Xw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7"
+ "@module-federation/runtime-tools": "0.5.1",
+ "@rspack/binding": "1.0.8",
+ "@rspack/lite-tapable": "1.0.1",
+ "caniuse-lite": "^1.0.30001616"
},
"engines": {
- "node": ">=6.9.0"
+ "node": ">=16.0.0"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "@swc/helpers": ">=0.5.1"
+ },
+ "peerDependenciesMeta": {
+ "@swc/helpers": {
+ "optional": true
+ }
}
},
- "node_modules/@babel/plugin-transform-async-generator-functions": {
- "version": "7.25.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.25.4.tgz",
- "integrity": "sha512-jz8cV2XDDTqjKPwVPJBIjORVEmSGYhdRa8e5k5+vN+uwcjSrSxUaebBRa4ko1jqNF2uxyg8G6XYk30Jv285xzg==",
+ "node_modules/@rspack/lite-tapable": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/@rspack/lite-tapable/-/lite-tapable-1.0.1.tgz",
+ "integrity": "sha512-VynGOEsVw2s8TAlLf/uESfrgfrq2+rcXB1muPJYBWbsm1Oa6r5qVQhjA5ggM6z/coYPrsVMgovl3Ff7Q7OCp1w==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.24.8",
- "@babel/helper-remap-async-to-generator": "^7.25.0",
- "@babel/plugin-syntax-async-generators": "^7.8.4",
- "@babel/traverse": "^7.25.4"
- },
"engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "node": ">=16.0.0"
}
},
- "node_modules/@babel/plugin-transform-async-to-generator": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.24.7.tgz",
- "integrity": "sha512-SQY01PcJfmQ+4Ash7NE+rpbLFbmqA2GPIgqzxfFTL4t1FKRq4zTms/7htKpoCUI9OcFYgzqfmCdH53s6/jn5fA==",
+ "node_modules/@storybook/addon-a11y": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-a11y/-/addon-a11y-8.3.5.tgz",
+ "integrity": "sha512-/19UO8IXbyfcYK5K8ejSYF+hC+EK79c0bBPHMNeYSFOHSqQM3KoMo+TLIcLsuhuRClmlM+4Zs+VSIYDwc+d3ig==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-module-imports": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/helper-remap-async-to-generator": "^7.24.7"
+ "@storybook/addon-highlight": "8.3.5",
+ "axe-core": "^4.2.0"
},
- "engines": {
- "node": ">=6.9.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "storybook": "^8.3.5"
}
},
- "node_modules/@babel/plugin-transform-block-scoped-functions": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.24.7.tgz",
- "integrity": "sha512-yO7RAz6EsVQDaBH18IDJcMB1HnrUn2FJ/Jslc/WtPPWcjhpUJXU/rjbwmluzp7v/ZzWcEhTMXELnnsz8djWDwQ==",
+ "node_modules/@storybook/addon-actions": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-actions/-/addon-actions-8.3.5.tgz",
+ "integrity": "sha512-t8D5oo+4XfD+F8091wLa2y/CDd/W2lExCeol5Vm1tp5saO+u6f2/d7iykLhTowWV84Uohi3D073uFeyTAlGebg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7"
+ "@storybook/global": "^5.0.0",
+ "@types/uuid": "^9.0.1",
+ "dequal": "^2.0.2",
+ "polished": "^4.2.2",
+ "uuid": "^9.0.0"
},
- "engines": {
- "node": ">=6.9.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "storybook": "^8.3.5"
}
},
- "node_modules/@babel/plugin-transform-block-scoping": {
- "version": "7.25.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.25.0.tgz",
- "integrity": "sha512-yBQjYoOjXlFv9nlXb3f1casSHOZkWr29NX+zChVanLg5Nc157CrbEX9D7hxxtTpuFy7Q0YzmmWfJxzvps4kXrQ==",
+ "node_modules/@storybook/addon-backgrounds": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-backgrounds/-/addon-backgrounds-8.3.5.tgz",
+ "integrity": "sha512-IQGjDujuw8+iSqKREdkL8I5E/5CAHZbfOWd4A75PQK2D6qZ0fu/xRwTOQOH4jP6xn/abvfACOdL6A0d5bU90ag==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.8"
+ "@storybook/global": "^5.0.0",
+ "memoizerific": "^1.11.3",
+ "ts-dedent": "^2.0.0"
},
- "engines": {
- "node": ">=6.9.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "storybook": "^8.3.5"
}
},
- "node_modules/@babel/plugin-transform-class-properties": {
- "version": "7.25.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.25.4.tgz",
- "integrity": "sha512-nZeZHyCWPfjkdU5pA/uHiTaDAFUEqkpzf1YoQT2NeSynCGYq9rxfyI3XpQbfx/a0hSnFH6TGlEXvae5Vi7GD8g==",
+ "node_modules/@storybook/addon-console": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-console/-/addon-console-3.0.0.tgz",
+ "integrity": "sha512-2pD2c9KNWuPIWlprqmWoZYrNQnG2qoDg7fAAXXNK6YDc5x/ZpK0cfOyfz/Gpdeje4QUmttZKAVjH0nOZDuxfvw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-create-class-features-plugin": "^7.25.4",
- "@babel/helper-plugin-utils": "^7.24.8"
- },
- "engines": {
- "node": ">=6.9.0"
+ "@storybook/global": "^5.0.0"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "@storybook/addon-actions": "*",
+ "react": "*"
}
},
- "node_modules/@babel/plugin-transform-class-static-block": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.24.7.tgz",
- "integrity": "sha512-HMXK3WbBPpZQufbMG4B46A90PkuuhN9vBCb5T8+VAHqvAqvcLi+2cKoukcpmUYkszLhScU3l1iudhrks3DggRQ==",
+ "node_modules/@storybook/addon-controls": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-controls/-/addon-controls-8.3.5.tgz",
+ "integrity": "sha512-2eCVobUUvY1Rq7sp1U8Mx8t44VXwvi0E+hqyrsqOx5TTSC/FUQ+hNAX6GSYUcFIyQQ1ORpKNlUjAAdjxBv1ZHQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-create-class-features-plugin": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/plugin-syntax-class-static-block": "^7.14.5"
+ "@storybook/global": "^5.0.0",
+ "dequal": "^2.0.2",
+ "lodash": "^4.17.21",
+ "ts-dedent": "^2.0.0"
},
- "engines": {
- "node": ">=6.9.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@babel/core": "^7.12.0"
+ "storybook": "^8.3.5"
}
},
- "node_modules/@babel/plugin-transform-classes": {
- "version": "7.25.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.25.4.tgz",
- "integrity": "sha512-oexUfaQle2pF/b6E0dwsxQtAol9TLSO88kQvym6HHBWFliV2lGdrPieX+WgMRLSJDVzdYywk7jXbLPuO2KLTLg==",
+ "node_modules/@storybook/addon-docs": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-docs/-/addon-docs-8.3.5.tgz",
+ "integrity": "sha512-MOVfo1bY8kXTzbvmWnx3UuSO4WNykFz7Edvb3mxltNyuW7UDRZGuIuSe32ddT/EtLJfurrC9Ja3yBy4KBUGnMA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-annotate-as-pure": "^7.24.7",
- "@babel/helper-compilation-targets": "^7.25.2",
- "@babel/helper-plugin-utils": "^7.24.8",
- "@babel/helper-replace-supers": "^7.25.0",
- "@babel/traverse": "^7.25.4",
- "globals": "^11.1.0"
+ "@mdx-js/react": "^3.0.0",
+ "@storybook/blocks": "8.3.5",
+ "@storybook/csf-plugin": "8.3.5",
+ "@storybook/global": "^5.0.0",
+ "@storybook/react-dom-shim": "8.3.5",
+ "@types/react": "^16.8.0 || ^17.0.0 || ^18.0.0",
+ "fs-extra": "^11.1.0",
+ "react": "^16.8.0 || ^17.0.0 || ^18.0.0",
+ "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0",
+ "rehype-external-links": "^3.0.0",
+ "rehype-slug": "^6.0.0",
+ "ts-dedent": "^2.0.0"
},
- "engines": {
- "node": ">=6.9.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "storybook": "^8.3.5"
}
},
- "node_modules/@babel/plugin-transform-computed-properties": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.24.7.tgz",
- "integrity": "sha512-25cS7v+707Gu6Ds2oY6tCkUwsJ9YIDbggd9+cu9jzzDgiNq7hR/8dkzxWfKWnTic26vsI3EsCXNd4iEB6e8esQ==",
+ "node_modules/@storybook/addon-docs/node_modules/fs-extra": {
+ "version": "11.2.0",
+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz",
+ "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/template": "^7.24.7"
+ "graceful-fs": "^4.2.0",
+ "jsonfile": "^6.0.1",
+ "universalify": "^2.0.0"
},
"engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "node": ">=14.14"
}
},
- "node_modules/@babel/plugin-transform-destructuring": {
- "version": "7.24.8",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.8.tgz",
- "integrity": "sha512-36e87mfY8TnRxc7yc6M9g9gOB7rKgSahqkIKwLpz4Ppk2+zC2Cy1is0uwtuSG6AE4zlTOUa+7JGz9jCJGLqQFQ==",
+ "node_modules/@storybook/addon-docs/node_modules/jsonfile": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
+ "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.8"
- },
- "engines": {
- "node": ">=6.9.0"
+ "universalify": "^2.0.0"
},
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "optionalDependencies": {
+ "graceful-fs": "^4.1.6"
}
},
- "node_modules/@babel/plugin-transform-dotall-regex": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.24.7.tgz",
- "integrity": "sha512-ZOA3W+1RRTSWvyqcMJDLqbchh7U4NRGqwRfFSVbOLS/ePIP4vHB5e8T8eXcuqyN1QkgKyj5wuW0lcS85v4CrSw==",
+ "node_modules/@storybook/addon-docs/node_modules/universalify": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
+ "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7"
- },
"engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "node": ">= 10.0.0"
}
},
- "node_modules/@babel/plugin-transform-duplicate-keys": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.24.7.tgz",
- "integrity": "sha512-JdYfXyCRihAe46jUIliuL2/s0x0wObgwwiGxw/UbgJBr20gQBThrokO4nYKgWkD7uBaqM7+9x5TU7NkExZJyzw==",
+ "node_modules/@storybook/addon-essentials": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-essentials/-/addon-essentials-8.3.5.tgz",
+ "integrity": "sha512-hXTtPuN4/IsXjUrkMPAuz1qKAl8DovdXpjQgjQs7jSAVx3kc4BZaGqJ3gaVenKtO8uDchmA92BoQygpkc8eWhw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7"
+ "@storybook/addon-actions": "8.3.5",
+ "@storybook/addon-backgrounds": "8.3.5",
+ "@storybook/addon-controls": "8.3.5",
+ "@storybook/addon-docs": "8.3.5",
+ "@storybook/addon-highlight": "8.3.5",
+ "@storybook/addon-measure": "8.3.5",
+ "@storybook/addon-outline": "8.3.5",
+ "@storybook/addon-toolbars": "8.3.5",
+ "@storybook/addon-viewport": "8.3.5",
+ "ts-dedent": "^2.0.0"
},
- "engines": {
- "node": ">=6.9.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "storybook": "^8.3.5"
}
},
- "node_modules/@babel/plugin-transform-duplicate-named-capturing-groups-regex": {
- "version": "7.25.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-named-capturing-groups-regex/-/plugin-transform-duplicate-named-capturing-groups-regex-7.25.0.tgz",
- "integrity": "sha512-YLpb4LlYSc3sCUa35un84poXoraOiQucUTTu8X1j18JV+gNa8E0nyUf/CjZ171IRGr4jEguF+vzJU66QZhn29g==",
+ "node_modules/@storybook/addon-highlight": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-highlight/-/addon-highlight-8.3.5.tgz",
+ "integrity": "sha512-ku0epul9aReCR3Gv/emwYnsqg3vgux5OmYMjoDcJC7s+LyfweSzLV/f5t9gSHazikJElh5TehtVkWbC4QfbGSw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.25.0",
- "@babel/helper-plugin-utils": "^7.24.8"
+ "@storybook/global": "^5.0.0"
},
- "engines": {
- "node": ">=6.9.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@babel/core": "^7.0.0"
+ "storybook": "^8.3.5"
}
},
- "node_modules/@babel/plugin-transform-dynamic-import": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.24.7.tgz",
- "integrity": "sha512-sc3X26PhZQDb3JhORmakcbvkeInvxz+A8oda99lj7J60QRuPZvNAk9wQlTBS1ZynelDrDmTU4pw1tyc5d5ZMUg==",
+ "node_modules/@storybook/addon-interactions": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-interactions/-/addon-interactions-8.3.5.tgz",
+ "integrity": "sha512-GtTy/A+mG7vDOahQr2avT4dpWtCRiFDSYcWyuQOZm10y8VDDw157HQM+FuhxjV9Owrrohy9F24oBUwRG8H3b5A==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/plugin-syntax-dynamic-import": "^7.8.3"
+ "@storybook/global": "^5.0.0",
+ "@storybook/instrumenter": "8.3.5",
+ "@storybook/test": "8.3.5",
+ "polished": "^4.2.2",
+ "ts-dedent": "^2.2.0"
},
- "engines": {
- "node": ">=6.9.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "storybook": "^8.3.5"
}
},
- "node_modules/@babel/plugin-transform-exponentiation-operator": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.24.7.tgz",
- "integrity": "sha512-Rqe/vSc9OYgDajNIK35u7ot+KeCoetqQYFXM4Epf7M7ez3lWlOjrDjrwMei6caCVhfdw+mIKD4cgdGNy5JQotQ==",
+ "node_modules/@storybook/addon-links": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-links/-/addon-links-8.3.5.tgz",
+ "integrity": "sha512-giRCpn6cfJMYPnVJkojoQDO5ae6098fgY9YgAhwaJej/9dufNcioFdbiyfK1vyzbG6TGeTmJ9ncWCXgWRtzxPQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-builder-binary-assignment-operator-visitor": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7"
+ "@storybook/csf": "^0.1.11",
+ "@storybook/global": "^5.0.0",
+ "ts-dedent": "^2.0.0"
},
- "engines": {
- "node": ">=6.9.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta",
+ "storybook": "^8.3.5"
+ },
+ "peerDependenciesMeta": {
+ "react": {
+ "optional": true
+ }
}
},
- "node_modules/@babel/plugin-transform-export-namespace-from": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.24.7.tgz",
- "integrity": "sha512-v0K9uNYsPL3oXZ/7F9NNIbAj2jv1whUEtyA6aujhekLs56R++JDQuzRcP2/z4WX5Vg/c5lE9uWZA0/iUoFhLTA==",
+ "node_modules/@storybook/addon-measure": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-measure/-/addon-measure-8.3.5.tgz",
+ "integrity": "sha512-6GVehgbHhFIFS69xSfRV+12VK0cnuIAtZdp1J3eUCc2ATrcigqVjTM6wzZz6kBuX6O3dcusr7Wg46KtNliqLqg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/plugin-syntax-export-namespace-from": "^7.8.3"
+ "@storybook/global": "^5.0.0",
+ "tiny-invariant": "^1.3.1"
},
- "engines": {
- "node": ">=6.9.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "storybook": "^8.3.5"
}
},
- "node_modules/@babel/plugin-transform-for-of": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.24.7.tgz",
- "integrity": "sha512-wo9ogrDG1ITTTBsy46oGiN1dS9A7MROBTcYsfS8DtsImMkHk9JXJ3EWQM6X2SUw4x80uGPlwj0o00Uoc6nEE3g==",
+ "node_modules/@storybook/addon-outline": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-outline/-/addon-outline-8.3.5.tgz",
+ "integrity": "sha512-dwmK6GzjEnQP9Yo0VnBUQtJkXZlXdfjWyskZ/IlUVc+IFdeeCtIiMyA92oMfHo8eXt0k1g21ZqMaIn7ZltOuHw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7"
+ "@storybook/global": "^5.0.0",
+ "ts-dedent": "^2.0.0"
},
- "engines": {
- "node": ">=6.9.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "storybook": "^8.3.5"
}
},
- "node_modules/@babel/plugin-transform-function-name": {
- "version": "7.25.1",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.25.1.tgz",
- "integrity": "sha512-TVVJVdW9RKMNgJJlLtHsKDTydjZAbwIsn6ySBPQaEAUU5+gVvlJt/9nRmqVbsV/IBanRjzWoaAQKLoamWVOUuA==",
+ "node_modules/@storybook/addon-toolbars": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-toolbars/-/addon-toolbars-8.3.5.tgz",
+ "integrity": "sha512-Ml2gc9q8WbteDvmuAZGgBxt5SqWMXzuTkMjlsA8EB53hlkN1w9esX4s8YtBeNqC3HKoUzcdq8uexSBqU8fDbSA==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "@babel/helper-compilation-targets": "^7.24.8",
- "@babel/helper-plugin-utils": "^7.24.8",
- "@babel/traverse": "^7.25.1"
- },
- "engines": {
- "node": ">=6.9.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "storybook": "^8.3.5"
}
},
- "node_modules/@babel/plugin-transform-json-strings": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.24.7.tgz",
- "integrity": "sha512-2yFnBGDvRuxAaE/f0vfBKvtnvvqU8tGpMHqMNpTN2oWMKIR3NqFkjaAgGwawhqK/pIN2T3XdjGPdaG0vDhOBGw==",
+ "node_modules/@storybook/addon-viewport": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/addon-viewport/-/addon-viewport-8.3.5.tgz",
+ "integrity": "sha512-FSWydoPiVWFXEittG7O1YgvuaqoU9Vb+qoq9XfP/hvQHHMDcMZvC40JaV8AnJeTXaM7ngIjcn9XDEfGbFfOzXw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/plugin-syntax-json-strings": "^7.8.3"
+ "memoizerific": "^1.11.3"
},
- "engines": {
- "node": ">=6.9.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "storybook": "^8.3.5"
}
},
- "node_modules/@babel/plugin-transform-literals": {
- "version": "7.25.2",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.25.2.tgz",
- "integrity": "sha512-HQI+HcTbm9ur3Z2DkO+jgESMAMcYLuN/A7NRw9juzxAezN9AvqvUTnpKP/9kkYANz6u7dFlAyOu44ejuGySlfw==",
+ "node_modules/@storybook/blocks": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/blocks/-/blocks-8.3.5.tgz",
+ "integrity": "sha512-8cHTdTywolTHlgwN8I7YH7saWAIjGzV617AwjhJ95AKlC0VtpO1gAFcAgCqr4DU9eMc+LZuvbnaU/RSvA5eCCQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.8"
+ "@storybook/csf": "^0.1.11",
+ "@storybook/global": "^5.0.0",
+ "@storybook/icons": "^1.2.10",
+ "@types/lodash": "^4.14.167",
+ "color-convert": "^2.0.1",
+ "dequal": "^2.0.2",
+ "lodash": "^4.17.21",
+ "markdown-to-jsx": "^7.4.5",
+ "memoizerific": "^1.11.3",
+ "polished": "^4.2.2",
+ "react-colorful": "^5.1.2",
+ "telejson": "^7.2.0",
+ "ts-dedent": "^2.0.0",
+ "util-deprecate": "^1.0.2"
},
- "engines": {
- "node": ">=6.9.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta",
+ "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta",
+ "storybook": "^8.3.5"
+ },
+ "peerDependenciesMeta": {
+ "react": {
+ "optional": true
+ },
+ "react-dom": {
+ "optional": true
+ }
}
},
- "node_modules/@babel/plugin-transform-logical-assignment-operators": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.24.7.tgz",
- "integrity": "sha512-4D2tpwlQ1odXmTEIFWy9ELJcZHqrStlzK/dAOWYyxX3zT0iXQB6banjgeOJQXzEc4S0E0a5A+hahxPaEFYftsw==",
+ "node_modules/@storybook/blocks/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,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4"
+ "color-name": "~1.1.4"
},
"engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "node": ">=7.0.0"
}
},
- "node_modules/@babel/plugin-transform-member-expression-literals": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.24.7.tgz",
- "integrity": "sha512-T/hRC1uqrzXMKLQ6UCwMT85S3EvqaBXDGf0FaMf4446Qx9vKwlghvee0+uuZcDUCZU5RuNi4781UQ7R308zzBw==",
+ "node_modules/@storybook/blocks/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,
+ "license": "MIT"
+ },
+ "node_modules/@storybook/components": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/components/-/components-8.3.5.tgz",
+ "integrity": "sha512-Rq28YogakD3FO4F8KwAtGpo1g3t4V/gfCLqTQ8B6oQUFoxLqegkWk/DlwCzvoJndXuQJfdSyM6+r1JcA4Nql5A==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7"
- },
- "engines": {
- "node": ">=6.9.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "storybook": "^8.3.5"
}
},
- "node_modules/@babel/plugin-transform-modules-amd": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.24.7.tgz",
- "integrity": "sha512-9+pB1qxV3vs/8Hdmz/CulFB8w2tuu6EB94JZFsjdqxQokwGa9Unap7Bo2gGBGIvPmDIVvQrom7r5m/TCDMURhg==",
+ "node_modules/@storybook/core": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/core/-/core-8.3.5.tgz",
+ "integrity": "sha512-GOGfTvdioNa/n+Huwg4u/dsyYyBcM+gEcdxi3B7i5x4yJ3I912KoVshumQAOF2myKSRdI8h8aGWdx7nnjd0+5Q==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-module-transforms": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7"
- },
- "engines": {
- "node": ">=6.9.0"
+ "@storybook/csf": "^0.1.11",
+ "@types/express": "^4.17.21",
+ "better-opn": "^3.0.2",
+ "browser-assert": "^1.2.1",
+ "esbuild": "^0.18.0 || ^0.19.0 || ^0.20.0 || ^0.21.0 || ^0.22.0 || ^0.23.0",
+ "esbuild-register": "^3.5.0",
+ "express": "^4.19.2",
+ "jsdoc-type-pratt-parser": "^4.0.0",
+ "process": "^0.11.10",
+ "recast": "^0.23.5",
+ "semver": "^7.6.2",
+ "util": "^0.12.5",
+ "ws": "^8.2.3"
},
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
}
},
- "node_modules/@babel/plugin-transform-modules-commonjs": {
- "version": "7.24.8",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.8.tgz",
- "integrity": "sha512-WHsk9H8XxRs3JXKWFiqtQebdh9b/pTk4EgueygFzYlTKAg0Ud985mSevdNjdXdFBATSKVJGQXP1tv6aGbssLKA==",
+ "node_modules/@storybook/core-webpack": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/core-webpack/-/core-webpack-8.3.5.tgz",
+ "integrity": "sha512-mN8BHNc6lSGUf/nKgDr6XoTt1cX+Tap9RnKMUiROCDzfVlJPeJBrG4qrTOok7AwObzeDl9DNFyun6+pVgXJe7A==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-module-transforms": "^7.24.8",
- "@babel/helper-plugin-utils": "^7.24.8",
- "@babel/helper-simple-access": "^7.24.7"
+ "@types/node": "^22.0.0",
+ "ts-dedent": "^2.0.0"
},
- "engines": {
- "node": ">=6.9.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "storybook": "^8.3.5"
}
},
- "node_modules/@babel/plugin-transform-modules-systemjs": {
- "version": "7.25.0",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.25.0.tgz",
- "integrity": "sha512-YPJfjQPDXxyQWg/0+jHKj1llnY5f/R6a0p/vP4lPymxLu7Lvl4k2WMitqi08yxwQcCVUUdG9LCUj4TNEgAp3Jw==",
+ "node_modules/@storybook/core/node_modules/semver": {
+ "version": "7.6.3",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
+ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-module-transforms": "^7.25.0",
- "@babel/helper-plugin-utils": "^7.24.8",
- "@babel/helper-validator-identifier": "^7.24.7",
- "@babel/traverse": "^7.25.0"
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
},
"engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "node": ">=10"
}
},
- "node_modules/@babel/plugin-transform-modules-umd": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.24.7.tgz",
- "integrity": "sha512-3aytQvqJ/h9z4g8AsKPLvD4Zqi2qT+L3j7XoFFu1XBlZWEl2/1kWnhmAbxpLgPrHSY0M6UA02jyTiwUVtiKR6A==",
+ "node_modules/@storybook/core/node_modules/ws": {
+ "version": "8.18.0",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.0.tgz",
+ "integrity": "sha512-8VbfWfHLbbwu3+N6OKsOMpBdT4kXPDDB9cJk2bJ6mh9ucxdlnNvH1e+roYkKmN9Nxw2yjz7VzeO9oOz2zJ04Pw==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "@babel/helper-module-transforms": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7"
- },
"engines": {
- "node": ">=6.9.0"
+ "node": ">=10.0.0"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "bufferutil": "^4.0.1",
+ "utf-8-validate": ">=5.0.2"
+ },
+ "peerDependenciesMeta": {
+ "bufferutil": {
+ "optional": true
+ },
+ "utf-8-validate": {
+ "optional": true
+ }
}
},
- "node_modules/@babel/plugin-transform-named-capturing-groups-regex": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.24.7.tgz",
- "integrity": "sha512-/jr7h/EWeJtk1U/uz2jlsCioHkZk1JJZVcc8oQsJ1dUlaJD83f4/6Zeh2aHt9BIFokHIsSeDfhUmju0+1GPd6g==",
+ "node_modules/@storybook/csf": {
+ "version": "0.1.11",
+ "resolved": "https://registry.npmjs.org/@storybook/csf/-/csf-0.1.11.tgz",
+ "integrity": "sha512-dHYFQH3mA+EtnCkHXzicbLgsvzYjcDJ1JWsogbItZogkPHgSJM/Wr71uMkcvw8v9mmCyP4NpXJuu6bPoVsOnzg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
+ "type-fest": "^2.19.0"
}
},
- "node_modules/@babel/plugin-transform-new-target": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.24.7.tgz",
- "integrity": "sha512-RNKwfRIXg4Ls/8mMTza5oPF5RkOW8Wy/WgMAp1/F1yZ8mMbtwXW+HDoJiOsagWrAhI5f57Vncrmr9XeT4CVapA==",
+ "node_modules/@storybook/csf-plugin": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/csf-plugin/-/csf-plugin-8.3.5.tgz",
+ "integrity": "sha512-ODVqNXwJt90hG7QW8I9w/XUyOGlr0l7XltmIJgXwB/2cYDvaGu3JV5Ybg7O0fxPV8uXk7JlRuUD8ZYv5Low6pA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7"
+ "unplugin": "^1.3.1"
},
- "engines": {
- "node": ">=6.9.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "storybook": "^8.3.5"
}
},
- "node_modules/@babel/plugin-transform-nullish-coalescing-operator": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.24.7.tgz",
- "integrity": "sha512-Ts7xQVk1OEocqzm8rHMXHlxvsfZ0cEF2yomUqpKENHWMF4zKk175Y4q8H5knJes6PgYad50uuRmt3UJuhBw8pQ==",
+ "node_modules/@storybook/csf/node_modules/type-fest": {
+ "version": "2.19.0",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-2.19.0.tgz",
+ "integrity": "sha512-RAH822pAdBgcNMAfWnCBU3CFZcfZ/i1eZjwFU/dsLKumyuuP3niueg2UAukXYF0E2AAoc82ZSSf9J0WQBinzHA==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3"
- },
+ "license": "(MIT OR CC0-1.0)",
"engines": {
- "node": ">=6.9.0"
+ "node": ">=12.20"
},
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/@babel/plugin-transform-numeric-separator": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.24.7.tgz",
- "integrity": "sha512-e6q1TiVUzvH9KRvicuxdBTUj4AdKSRwzIyFFnfnezpCfP2/7Qmbb8qbU2j7GODbl4JMkblitCQjKYUaX/qkkwA==",
+ "node_modules/@storybook/global": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/@storybook/global/-/global-5.0.0.tgz",
+ "integrity": "sha512-FcOqPAXACP0I3oJ/ws6/rrPT9WGhu915Cg8D02a9YxLo0DE9zI+a9A5gRGvmQ09fiWPukqI8ZAEoQEdWUKMQdQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@storybook/html": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/html/-/html-8.3.5.tgz",
+ "integrity": "sha512-lcSL6dhQUL2kEILGZcSnyM5o3zbwAZ6PVFylku7t0UKGwXfSRt9w8JmlSsmB3v8cannexeETDxjNa5nd1frNqA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/plugin-syntax-numeric-separator": "^7.10.4"
+ "@storybook/components": "^8.3.5",
+ "@storybook/global": "^5.0.0",
+ "@storybook/manager-api": "^8.3.5",
+ "@storybook/preview-api": "^8.3.5",
+ "@storybook/theming": "^8.3.5",
+ "ts-dedent": "^2.0.0"
},
"engines": {
- "node": ">=6.9.0"
+ "node": ">=18.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "storybook": "^8.3.5"
}
},
- "node_modules/@babel/plugin-transform-object-rest-spread": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.7.tgz",
- "integrity": "sha512-4QrHAr0aXQCEFni2q4DqKLD31n2DL+RxcwnNjDFkSG0eNQ/xCavnRkfCUjsyqGC2OviNJvZOF/mQqZBw7i2C5Q==",
+ "node_modules/@storybook/icons": {
+ "version": "1.2.12",
+ "resolved": "https://registry.npmjs.org/@storybook/icons/-/icons-1.2.12.tgz",
+ "integrity": "sha512-UxgyK5W3/UV4VrI3dl6ajGfHM4aOqMAkFLWe2KibeQudLf6NJpDrDMSHwZj+3iKC4jFU7dkKbbtH2h/al4sW3Q==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "@babel/helper-compilation-targets": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
- "@babel/plugin-transform-parameters": "^7.24.7"
- },
"engines": {
- "node": ">=6.9.0"
+ "node": ">=14.0.0"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "react": "^16.8.0 || ^17.0.0 || ^18.0.0",
+ "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0"
}
},
- "node_modules/@babel/plugin-transform-object-super": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.24.7.tgz",
- "integrity": "sha512-A/vVLwN6lBrMFmMDmPPz0jnE6ZGx7Jq7d6sT/Ev4H65RER6pZ+kczlf1DthF5N0qaPHBsI7UXiE8Zy66nmAovg==",
+ "node_modules/@storybook/instrumenter": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/instrumenter/-/instrumenter-8.3.5.tgz",
+ "integrity": "sha512-NLDXai5y2t1ITgHVK9chyL0rMFZbICCOGcnTbyWhkLbiEWZKPJ8FuB8+g+Ba6zwtCve1A1Cnb4O2LOWy7TgWQw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/helper-replace-supers": "^7.24.7"
+ "@storybook/global": "^5.0.0",
+ "@vitest/utils": "^2.0.5",
+ "util": "^0.12.4"
},
- "engines": {
- "node": ">=6.9.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "storybook": "^8.3.5"
}
},
- "node_modules/@babel/plugin-transform-optional-catch-binding": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.24.7.tgz",
- "integrity": "sha512-uLEndKqP5BfBbC/5jTwPxLh9kqPWWgzN/f8w6UwAIirAEqiIVJWWY312X72Eub09g5KF9+Zn7+hT7sDxmhRuKA==",
+ "node_modules/@storybook/manager-api": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/manager-api/-/manager-api-8.3.5.tgz",
+ "integrity": "sha512-fEQoKKi7h7pzh2z9RfuzatJxubrsfL/CB99fNXQ0wshMSY/7O4ckd18pK4fzG9ErnCtLAO9qsim4N/4eQC+/8Q==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/plugin-syntax-optional-catch-binding": "^7.8.3"
- },
- "engines": {
- "node": ">=6.9.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "storybook": "^8.3.5"
}
},
- "node_modules/@babel/plugin-transform-optional-chaining": {
- "version": "7.24.8",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.8.tgz",
- "integrity": "sha512-5cTOLSMs9eypEy8JUVvIKOu6NgvbJMnpG62VpIHrTmROdQ+L5mDAaI40g25k5vXti55JWNX5jCkq3HZxXBQANw==",
+ "node_modules/@storybook/preview-api": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/preview-api/-/preview-api-8.3.5.tgz",
+ "integrity": "sha512-VPqpudE8pmjTLvdNJoW/2//nqElDgUOmIn3QxbbCmdZTHDg5tFtxuqwdlNfArF0TxvTSBDIulXt/Q6K56TAfTg==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.24.8",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7",
- "@babel/plugin-syntax-optional-chaining": "^7.8.3"
- },
- "engines": {
- "node": ">=6.9.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "storybook": "^8.3.5"
}
},
- "node_modules/@babel/plugin-transform-parameters": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.7.tgz",
- "integrity": "sha512-yGWW5Rr+sQOhK0Ot8hjDJuxU3XLRQGflvT4lhlSY0DFvdb3TwKaY26CJzHtYllU0vT9j58hc37ndFPsqT1SrzA==",
+ "node_modules/@storybook/react-dom-shim": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/react-dom-shim/-/react-dom-shim-8.3.5.tgz",
+ "integrity": "sha512-Hf0UitJ/K0C7ajooooUK/PxOR4ihUWqsC7iCV1Gqth8U37dTeLMbaEO4PBwu0VQ+Ufg0N8BJLWfg7o6G4hrODw==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7"
- },
- "engines": {
- "node": ">=6.9.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "react": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta",
+ "react-dom": "^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0-beta",
+ "storybook": "^8.3.5"
}
},
- "node_modules/@babel/plugin-transform-private-methods": {
- "version": "7.25.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.25.4.tgz",
- "integrity": "sha512-ao8BG7E2b/URaUQGqN3Tlsg+M3KlHY6rJ1O1gXAEUnZoyNQnvKyH87Kfg+FoxSeyWUB8ISZZsC91C44ZuBFytw==",
+ "node_modules/@storybook/test": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/test/-/test-8.3.5.tgz",
+ "integrity": "sha512-1BXWsUGWk9FiKKelZZ55FDJdeoL8uRBHbjTYBRM2xJLhdNSvGzI4Tb3bkmxPpGn72Ua6AyldhlTxr2BpUFKOHA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-create-class-features-plugin": "^7.25.4",
- "@babel/helper-plugin-utils": "^7.24.8"
+ "@storybook/csf": "^0.1.11",
+ "@storybook/global": "^5.0.0",
+ "@storybook/instrumenter": "8.3.5",
+ "@testing-library/dom": "10.4.0",
+ "@testing-library/jest-dom": "6.5.0",
+ "@testing-library/user-event": "14.5.2",
+ "@vitest/expect": "2.0.5",
+ "@vitest/spy": "2.0.5",
+ "util": "^0.12.4"
},
- "engines": {
- "node": ">=6.9.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "storybook": "^8.3.5"
}
},
- "node_modules/@babel/plugin-transform-private-property-in-object": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.24.7.tgz",
- "integrity": "sha512-9z76mxwnwFxMyxZWEgdgECQglF2Q7cFLm0kMf8pGwt+GSJsY0cONKj/UuO4bOH0w/uAel3ekS4ra5CEAyJRmDA==",
+ "node_modules/@storybook/theming": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/@storybook/theming/-/theming-8.3.5.tgz",
+ "integrity": "sha512-9HmDDyC691oqfg4RziIM9ElsS2HITaxmH7n/yeUPtuirkPdAQzqOzhvH/Sa0qOhifzs8VjR+Gd/a/ZQ+S38r7w==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "@babel/helper-annotate-as-pure": "^7.24.7",
- "@babel/helper-create-class-features-plugin": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/plugin-syntax-private-property-in-object": "^7.14.5"
- },
- "engines": {
- "node": ">=6.9.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "storybook": "^8.3.5"
}
},
- "node_modules/@babel/plugin-transform-property-literals": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.24.7.tgz",
- "integrity": "sha512-EMi4MLQSHfd2nrCqQEWxFdha2gBCqU4ZcCng4WBGZ5CJL4bBRW0ptdqqDdeirGZcpALazVVNJqRmsO8/+oNCBA==",
+ "node_modules/@swc/helpers": {
+ "version": "0.5.13",
+ "resolved": "https://registry.npmjs.org/@swc/helpers/-/helpers-0.5.13.tgz",
+ "integrity": "sha512-UoKGxQ3r5kYI9dALKJapMmuK+1zWM/H17Z1+iwnNmzcJRnfFuevZs375TA5rW31pu4BS4NoSy1fRsexDXfWn5w==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "tslib": "^2.4.0"
+ }
+ },
+ "node_modules/@testing-library/dom": {
+ "version": "10.4.0",
+ "resolved": "https://registry.npmjs.org/@testing-library/dom/-/dom-10.4.0.tgz",
+ "integrity": "sha512-pemlzrSESWbdAloYml3bAJMEfNh1Z7EduzqPKprCH5S341frlpYnUEW0H72dLxa6IsYr+mPno20GiSm+h9dEdQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7"
+ "@babel/code-frame": "^7.10.4",
+ "@babel/runtime": "^7.12.5",
+ "@types/aria-query": "^5.0.1",
+ "aria-query": "5.3.0",
+ "chalk": "^4.1.0",
+ "dom-accessibility-api": "^0.5.9",
+ "lz-string": "^1.5.0",
+ "pretty-format": "^27.0.2"
},
"engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "node": ">=18"
}
},
- "node_modules/@babel/plugin-transform-regenerator": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.24.7.tgz",
- "integrity": "sha512-lq3fvXPdimDrlg6LWBoqj+r/DEWgONuwjuOuQCSYgRroXDH/IdM1C0IZf59fL5cHLpjEH/O6opIRBbqv7ELnuA==",
+ "node_modules/@testing-library/dom/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,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "regenerator-transform": "^0.15.2"
+ "color-convert": "^2.0.1"
},
"engines": {
- "node": ">=6.9.0"
+ "node": ">=8"
},
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
- "node_modules/@babel/plugin-transform-reserved-words": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.24.7.tgz",
- "integrity": "sha512-0DUq0pHcPKbjFZCfTss/pGkYMfy3vFWydkUBd9r0GHpIyfs2eCDENvqadMycRS9wZCXR41wucAfJHJmwA0UmoQ==",
+ "node_modules/@testing-library/dom/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7"
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
},
"engines": {
- "node": ">=6.9.0"
+ "node": ">=10"
},
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
}
},
- "node_modules/@babel/plugin-transform-runtime": {
- "version": "7.25.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.25.4.tgz",
- "integrity": "sha512-8hsyG+KUYGY0coX6KUCDancA0Vw225KJ2HJO0yCNr1vq5r+lJTleDaJf0K7iOhjw4SWhu03TMBzYTJ9krmzULQ==",
+ "node_modules/@testing-library/dom/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,
"license": "MIT",
"dependencies": {
- "@babel/helper-module-imports": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.8",
- "babel-plugin-polyfill-corejs2": "^0.4.10",
- "babel-plugin-polyfill-corejs3": "^0.10.6",
- "babel-plugin-polyfill-regenerator": "^0.6.1",
- "semver": "^6.3.1"
+ "color-name": "~1.1.4"
},
"engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "node": ">=7.0.0"
}
},
- "node_modules/@babel/plugin-transform-shorthand-properties": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.24.7.tgz",
- "integrity": "sha512-KsDsevZMDsigzbA09+vacnLpmPH4aWjcZjXdyFKGzpplxhbeB4wYtury3vglQkg6KM/xEPKt73eCjPPf1PgXBA==",
+ "node_modules/@testing-library/dom/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,
+ "license": "MIT"
+ },
+ "node_modules/@testing-library/dom/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7"
- },
"engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "node": ">=8"
}
},
- "node_modules/@babel/plugin-transform-spread": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.24.7.tgz",
- "integrity": "sha512-x96oO0I09dgMDxJaANcRyD4ellXFLLiWhuwDxKZX5g2rWP1bTPkBSwCYv96VDXVT1bD9aPj8tppr5ITIh8hBng==",
+ "node_modules/@testing-library/dom/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,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7"
+ "has-flag": "^4.0.0"
},
"engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "node": ">=8"
}
},
- "node_modules/@babel/plugin-transform-sticky-regex": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.24.7.tgz",
- "integrity": "sha512-kHPSIJc9v24zEml5geKg9Mjx5ULpfncj0wRpYtxbvKyTtHCYDkVE3aHQ03FrpEo4gEe2vrJJS1Y9CJTaThA52g==",
+ "node_modules/@testing-library/jest-dom": {
+ "version": "6.5.0",
+ "resolved": "https://registry.npmjs.org/@testing-library/jest-dom/-/jest-dom-6.5.0.tgz",
+ "integrity": "sha512-xGGHpBXYSHUUr6XsKBfs85TWlYKpTc37cSBBVrXcib2MkHLboWlkClhWF37JKlDb9KEq3dHs+f2xR7XJEWGBxA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7"
+ "@adobe/css-tools": "^4.4.0",
+ "aria-query": "^5.0.0",
+ "chalk": "^3.0.0",
+ "css.escape": "^1.5.1",
+ "dom-accessibility-api": "^0.6.3",
+ "lodash": "^4.17.21",
+ "redent": "^3.0.0"
},
"engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "node": ">=14",
+ "npm": ">=6",
+ "yarn": ">=1"
}
},
- "node_modules/@babel/plugin-transform-template-literals": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.24.7.tgz",
- "integrity": "sha512-AfDTQmClklHCOLxtGoP7HkeMw56k1/bTQjwsfhL6pppo/M4TOBSq+jjBUBLmV/4oeFg4GWMavIl44ZeCtmmZTw==",
+ "node_modules/@testing-library/jest-dom/node_modules/@adobe/css-tools": {
+ "version": "4.4.0",
+ "resolved": "https://registry.npmjs.org/@adobe/css-tools/-/css-tools-4.4.0.tgz",
+ "integrity": "sha512-Ff9+ksdQQB3rMncgqDK78uLznstjyfIf2Arnh22pW8kBpLs6rpKDwgnZT46hin5Hl1WzazzK64DOrhSwYpS7bQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@testing-library/jest-dom/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,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7"
+ "color-convert": "^2.0.1"
},
"engines": {
- "node": ">=6.9.0"
+ "node": ">=8"
},
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
- "node_modules/@babel/plugin-transform-typeof-symbol": {
- "version": "7.24.8",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.8.tgz",
- "integrity": "sha512-adNTUpDCVnmAE58VEqKlAA6ZBlNkMnWD0ZcW76lyNFN3MJniyGFZfNwERVk8Ap56MCnXztmDr19T4mPTztcuaw==",
+ "node_modules/@testing-library/jest-dom/node_modules/chalk": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+ "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.8"
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
},
"engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "node": ">=8"
}
},
- "node_modules/@babel/plugin-transform-unicode-escapes": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.24.7.tgz",
- "integrity": "sha512-U3ap1gm5+4edc2Q/P+9VrBNhGkfnf+8ZqppY71Bo/pzZmXhhLdqgaUl6cuB07O1+AQJtCLfaOmswiNbSQ9ivhw==",
+ "node_modules/@testing-library/jest-dom/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,
"license": "MIT",
"dependencies": {
- "@babel/helper-plugin-utils": "^7.24.7"
+ "color-name": "~1.1.4"
},
"engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "node": ">=7.0.0"
}
},
- "node_modules/@babel/plugin-transform-unicode-property-regex": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.24.7.tgz",
- "integrity": "sha512-uH2O4OV5M9FZYQrwc7NdVmMxQJOCCzFeYudlZSzUAHRFeOujQefa92E74TQDVskNHCzOXoigEuoyzHDhaEaK5w==",
+ "node_modules/@testing-library/jest-dom/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,
+ "license": "MIT"
+ },
+ "node_modules/@testing-library/jest-dom/node_modules/dom-accessibility-api": {
+ "version": "0.6.3",
+ "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.6.3.tgz",
+ "integrity": "sha512-7ZgogeTnjuHbo+ct10G9Ffp0mif17idi0IyWNVA/wcwcm7NPOD/WEHVP3n7n3MhXqxoIYm8d6MuZohYWIZ4T3w==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@testing-library/jest-dom/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7"
- },
"engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "node": ">=8"
}
},
- "node_modules/@babel/plugin-transform-unicode-regex": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.24.7.tgz",
- "integrity": "sha512-hlQ96MBZSAXUq7ltkjtu3FJCCSMx/j629ns3hA3pXnBXjanNP0LHi+JpPeA81zaWgVK1VGH95Xuy7u0RyQ8kMg==",
+ "node_modules/@testing-library/jest-dom/node_modules/redent": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz",
+ "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7"
+ "indent-string": "^4.0.0",
+ "strip-indent": "^3.0.0"
},
"engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "node": ">=8"
}
},
- "node_modules/@babel/plugin-transform-unicode-sets-regex": {
- "version": "7.25.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.25.4.tgz",
- "integrity": "sha512-qesBxiWkgN1Q+31xUE9RcMk79eOXXDCv6tfyGMRSs4RGlioSg2WVyQAm07k726cSE56pa+Kb0y9epX2qaXzTvA==",
+ "node_modules/@testing-library/jest-dom/node_modules/strip-indent": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz",
+ "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-create-regexp-features-plugin": "^7.25.2",
- "@babel/helper-plugin-utils": "^7.24.8"
+ "min-indent": "^1.0.0"
},
"engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0"
- }
- },
- "node_modules/@babel/preset-env": {
- "version": "7.25.4",
- "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.25.4.tgz",
- "integrity": "sha512-W9Gyo+KmcxjGahtt3t9fb14vFRWvPpu5pT6GBlovAK6BTBcxgjfVMSQCfJl4oi35ODrxP6xx2Wr8LNST57Mraw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@babel/compat-data": "^7.25.4",
- "@babel/helper-compilation-targets": "^7.25.2",
- "@babel/helper-plugin-utils": "^7.24.8",
- "@babel/helper-validator-option": "^7.24.8",
- "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.25.3",
- "@babel/plugin-bugfix-safari-class-field-initializer-scope": "^7.25.0",
- "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.25.0",
- "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.24.7",
- "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.25.0",
- "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2",
- "@babel/plugin-syntax-async-generators": "^7.8.4",
- "@babel/plugin-syntax-class-properties": "^7.12.13",
- "@babel/plugin-syntax-class-static-block": "^7.14.5",
- "@babel/plugin-syntax-dynamic-import": "^7.8.3",
- "@babel/plugin-syntax-export-namespace-from": "^7.8.3",
- "@babel/plugin-syntax-import-assertions": "^7.24.7",
- "@babel/plugin-syntax-import-attributes": "^7.24.7",
- "@babel/plugin-syntax-import-meta": "^7.10.4",
- "@babel/plugin-syntax-json-strings": "^7.8.3",
- "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4",
- "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3",
- "@babel/plugin-syntax-numeric-separator": "^7.10.4",
- "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
- "@babel/plugin-syntax-optional-catch-binding": "^7.8.3",
- "@babel/plugin-syntax-optional-chaining": "^7.8.3",
- "@babel/plugin-syntax-private-property-in-object": "^7.14.5",
- "@babel/plugin-syntax-top-level-await": "^7.14.5",
- "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6",
- "@babel/plugin-transform-arrow-functions": "^7.24.7",
- "@babel/plugin-transform-async-generator-functions": "^7.25.4",
- "@babel/plugin-transform-async-to-generator": "^7.24.7",
- "@babel/plugin-transform-block-scoped-functions": "^7.24.7",
- "@babel/plugin-transform-block-scoping": "^7.25.0",
- "@babel/plugin-transform-class-properties": "^7.25.4",
- "@babel/plugin-transform-class-static-block": "^7.24.7",
- "@babel/plugin-transform-classes": "^7.25.4",
- "@babel/plugin-transform-computed-properties": "^7.24.7",
- "@babel/plugin-transform-destructuring": "^7.24.8",
- "@babel/plugin-transform-dotall-regex": "^7.24.7",
- "@babel/plugin-transform-duplicate-keys": "^7.24.7",
- "@babel/plugin-transform-duplicate-named-capturing-groups-regex": "^7.25.0",
- "@babel/plugin-transform-dynamic-import": "^7.24.7",
- "@babel/plugin-transform-exponentiation-operator": "^7.24.7",
- "@babel/plugin-transform-export-namespace-from": "^7.24.7",
- "@babel/plugin-transform-for-of": "^7.24.7",
- "@babel/plugin-transform-function-name": "^7.25.1",
- "@babel/plugin-transform-json-strings": "^7.24.7",
- "@babel/plugin-transform-literals": "^7.25.2",
- "@babel/plugin-transform-logical-assignment-operators": "^7.24.7",
- "@babel/plugin-transform-member-expression-literals": "^7.24.7",
- "@babel/plugin-transform-modules-amd": "^7.24.7",
- "@babel/plugin-transform-modules-commonjs": "^7.24.8",
- "@babel/plugin-transform-modules-systemjs": "^7.25.0",
- "@babel/plugin-transform-modules-umd": "^7.24.7",
- "@babel/plugin-transform-named-capturing-groups-regex": "^7.24.7",
- "@babel/plugin-transform-new-target": "^7.24.7",
- "@babel/plugin-transform-nullish-coalescing-operator": "^7.24.7",
- "@babel/plugin-transform-numeric-separator": "^7.24.7",
- "@babel/plugin-transform-object-rest-spread": "^7.24.7",
- "@babel/plugin-transform-object-super": "^7.24.7",
- "@babel/plugin-transform-optional-catch-binding": "^7.24.7",
- "@babel/plugin-transform-optional-chaining": "^7.24.8",
- "@babel/plugin-transform-parameters": "^7.24.7",
- "@babel/plugin-transform-private-methods": "^7.25.4",
- "@babel/plugin-transform-private-property-in-object": "^7.24.7",
- "@babel/plugin-transform-property-literals": "^7.24.7",
- "@babel/plugin-transform-regenerator": "^7.24.7",
- "@babel/plugin-transform-reserved-words": "^7.24.7",
- "@babel/plugin-transform-shorthand-properties": "^7.24.7",
- "@babel/plugin-transform-spread": "^7.24.7",
- "@babel/plugin-transform-sticky-regex": "^7.24.7",
- "@babel/plugin-transform-template-literals": "^7.24.7",
- "@babel/plugin-transform-typeof-symbol": "^7.24.8",
- "@babel/plugin-transform-unicode-escapes": "^7.24.7",
- "@babel/plugin-transform-unicode-property-regex": "^7.24.7",
- "@babel/plugin-transform-unicode-regex": "^7.24.7",
- "@babel/plugin-transform-unicode-sets-regex": "^7.25.4",
- "@babel/preset-modules": "0.1.6-no-external-plugins",
- "babel-plugin-polyfill-corejs2": "^0.4.10",
- "babel-plugin-polyfill-corejs3": "^0.10.6",
- "babel-plugin-polyfill-regenerator": "^0.6.1",
- "core-js-compat": "^3.37.1",
- "semver": "^6.3.1"
+ "node": ">=8"
+ }
+ },
+ "node_modules/@testing-library/jest-dom/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,
+ "license": "MIT",
+ "dependencies": {
+ "has-flag": "^4.0.0"
},
"engines": {
- "node": ">=6.9.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.0.0-0"
+ "node": ">=8"
}
},
- "node_modules/@babel/preset-modules": {
- "version": "0.1.6-no-external-plugins",
- "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz",
- "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==",
+ "node_modules/@testing-library/user-event": {
+ "version": "14.5.2",
+ "resolved": "https://registry.npmjs.org/@testing-library/user-event/-/user-event-14.5.2.tgz",
+ "integrity": "sha512-YAh82Wh4TIrxYLmfGcixwD18oIjyC1pFQC2Y01F2lzV2HTMiYrI0nze0FD0ocB//CKS/7jIUgae+adPqxK5yCQ==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "@babel/helper-plugin-utils": "^7.0.0",
- "@babel/types": "^7.4.4",
- "esutils": "^2.0.2"
+ "engines": {
+ "node": ">=12",
+ "npm": ">=6"
},
"peerDependencies": {
- "@babel/core": "^7.0.0-0 || ^8.0.0-0 <8.0.0"
+ "@testing-library/dom": ">=7.21.4"
}
},
- "node_modules/@babel/regjsgen": {
- "version": "0.8.0",
- "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz",
- "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==",
+ "node_modules/@tsconfig/node22": {
+ "version": "22.0.0",
+ "resolved": "https://registry.npmjs.org/@tsconfig/node22/-/node22-22.0.0.tgz",
+ "integrity": "sha512-twLQ77zevtxobBOD4ToAtVmuYrpeYUh3qh+TEp+08IWhpsrIflVHqQ1F1CiPxQGL7doCdBIOOCF+1Tm833faNg==",
"dev": true,
"license": "MIT"
},
- "node_modules/@babel/runtime": {
- "version": "7.25.6",
- "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.25.6.tgz",
- "integrity": "sha512-VBj9MYyDb9tuLq7yzqjgzt6Q+IBQLrGZfdjOekyEirZPHxXWoTSGUTMrpsfi58Up73d13NfYLv8HT9vmznjzhQ==",
+ "node_modules/@tsconfig/strictest": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/@tsconfig/strictest/-/strictest-2.0.5.tgz",
+ "integrity": "sha512-ec4tjL2Rr0pkZ5hww65c+EEPYwxOi4Ryv+0MtjeaSQRJyq322Q27eOQiFbuNgw2hpL4hB1/W/HBGk3VKS43osg==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "regenerator-runtime": "^0.14.0"
- },
- "engines": {
- "node": ">=6.9.0"
- }
+ "license": "MIT"
},
- "node_modules/@babel/template": {
- "version": "7.25.0",
- "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.0.tgz",
- "integrity": "sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==",
+ "node_modules/@types/aria-query": {
+ "version": "5.0.4",
+ "resolved": "https://registry.npmjs.org/@types/aria-query/-/aria-query-5.0.4.tgz",
+ "integrity": "sha512-rfT93uj5s0PRL7EzccGMs3brplhcrghnDoV26NqKhCAS1hVo+WdNsPvE/yb6ilfr5hi2MEk6d5EWJTKdxg8jVw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@types/body-parser": {
+ "version": "1.19.5",
+ "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz",
+ "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==",
+ "dev": true,
"license": "MIT",
"dependencies": {
- "@babel/code-frame": "^7.24.7",
- "@babel/parser": "^7.25.0",
- "@babel/types": "^7.25.0"
- },
- "engines": {
- "node": ">=6.9.0"
+ "@types/connect": "*",
+ "@types/node": "*"
}
},
- "node_modules/@babel/traverse": {
- "version": "7.25.6",
- "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.6.tgz",
- "integrity": "sha512-9Vrcx5ZW6UwK5tvqsj0nGpp/XzqthkT0dqIc9g1AdtygFToNtTF67XzYS//dm+SAK9cp3B9R4ZO/46p63SCjlQ==",
+ "node_modules/@types/connect": {
+ "version": "3.4.38",
+ "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz",
+ "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==",
+ "dev": true,
"license": "MIT",
"dependencies": {
- "@babel/code-frame": "^7.24.7",
- "@babel/generator": "^7.25.6",
- "@babel/parser": "^7.25.6",
- "@babel/template": "^7.25.0",
- "@babel/types": "^7.25.6",
- "debug": "^4.3.1",
- "globals": "^11.1.0"
- },
- "engines": {
- "node": ">=6.9.0"
+ "@types/node": "*"
}
},
- "node_modules/@babel/types": {
- "version": "7.25.6",
- "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.6.tgz",
- "integrity": "sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==",
+ "node_modules/@types/estree": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz",
+ "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@types/express": {
+ "version": "4.17.21",
+ "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz",
+ "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==",
+ "dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-string-parser": "^7.24.8",
- "@babel/helper-validator-identifier": "^7.24.7",
- "to-fast-properties": "^2.0.0"
- },
- "engines": {
- "node": ">=6.9.0"
+ "@types/body-parser": "*",
+ "@types/express-serve-static-core": "^4.17.33",
+ "@types/qs": "*",
+ "@types/serve-static": "*"
}
},
- "node_modules/@electron/get": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/@electron/get/-/get-2.0.3.tgz",
- "integrity": "sha512-Qkzpg2s9GnVV2I2BjRksUi43U5e6+zaQMcjoJy0C+C5oxaKl+fmckGDQFtRpZpZV0NQekuZZ+tGz7EA9TVnQtQ==",
+ "node_modules/@types/express-serve-static-core": {
+ "version": "4.19.6",
+ "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.19.6.tgz",
+ "integrity": "sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==",
"dev": true,
"license": "MIT",
"dependencies": {
- "debug": "^4.1.1",
- "env-paths": "^2.2.0",
- "fs-extra": "^8.1.0",
- "got": "^11.8.5",
- "progress": "^2.0.3",
- "semver": "^6.2.0",
- "sumchecker": "^3.0.1"
- },
- "engines": {
- "node": ">=12"
- },
- "optionalDependencies": {
- "global-agent": "^3.0.0"
+ "@types/node": "*",
+ "@types/qs": "*",
+ "@types/range-parser": "*",
+ "@types/send": "*"
}
},
- "node_modules/@eslint-community/eslint-utils": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz",
- "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==",
+ "node_modules/@types/hast": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz",
+ "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "eslint-visitor-keys": "^3.3.0"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "peerDependencies": {
- "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0"
+ "@types/unist": "*"
}
},
- "node_modules/@eslint-community/eslint-utils/node_modules/eslint-visitor-keys": {
- "version": "3.4.3",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
- "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
+ "node_modules/@types/html-minifier-terser": {
+ "version": "7.0.2",
+ "resolved": "https://registry.npmjs.org/@types/html-minifier-terser/-/html-minifier-terser-7.0.2.tgz",
+ "integrity": "sha512-mm2HqV22l8lFQh4r2oSsOEVea+m0qqxEmwpc9kC1p/XzmjLWrReR9D/GRs8Pex2NX/imyEH9c5IU/7tMBQCHOA==",
"dev": true,
- "license": "Apache-2.0",
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
+ "license": "MIT"
+ },
+ "node_modules/@types/http-errors": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz",
+ "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@types/json-schema": {
+ "version": "7.0.15",
+ "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz",
+ "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@types/lodash": {
+ "version": "4.17.10",
+ "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.17.10.tgz",
+ "integrity": "sha512-YpS0zzoduEhuOWjAotS6A5AVCva7X4lVlYLF0FYHAY9sdraBfnatttHItlWeZdGhuEkf+OzMNg2ZYAx8t+52uQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@types/mdx": {
+ "version": "2.0.13",
+ "resolved": "https://registry.npmjs.org/@types/mdx/-/mdx-2.0.13.tgz",
+ "integrity": "sha512-+OWZQfAYyio6YkJb3HLxDrvnx6SWWDbC0zVPfBRzUk0/nqoDyf6dNxQi3eArPe8rJ473nobTMQ/8Zk+LxJ+Yuw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@types/mime": {
+ "version": "1.3.5",
+ "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz",
+ "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@types/node": {
+ "version": "22.7.5",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-22.7.5.tgz",
+ "integrity": "sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "undici-types": "~6.19.2"
}
},
- "node_modules/@eslint-community/regexpp": {
- "version": "4.11.1",
- "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.11.1.tgz",
- "integrity": "sha512-m4DVN9ZqskZoLU5GlWZadwDnYo3vAEydiUayB9widCl9ffWx2IvPnp6n3on5rJmziJSw9Bv+Z3ChDVdMwXCY8Q==",
+ "node_modules/@types/prop-types": {
+ "version": "15.7.13",
+ "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.13.tgz",
+ "integrity": "sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@types/qs": {
+ "version": "6.9.16",
+ "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.16.tgz",
+ "integrity": "sha512-7i+zxXdPD0T4cKDuxCUXJ4wHcsJLwENa6Z3dCu8cfCK743OGy5Nu1RmAGqDPsoTDINVEcdXKRvR/zre+P2Ku1A==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@types/range-parser": {
+ "version": "1.2.7",
+ "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz",
+ "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@types/react": {
+ "version": "18.3.11",
+ "resolved": "https://registry.npmjs.org/@types/react/-/react-18.3.11.tgz",
+ "integrity": "sha512-r6QZ069rFTjrEYgFdOck1gK7FLVsgJE7tTz0pQBczlBNUhBNk0MQH4UbnFSwjpQLMkLzgqvBBa+qGpLje16eTQ==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": "^12.0.0 || ^14.0.0 || >=16.0.0"
+ "dependencies": {
+ "@types/prop-types": "*",
+ "csstype": "^3.0.2"
}
},
- "node_modules/@eslint/eslintrc": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz",
- "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==",
+ "node_modules/@types/send": {
+ "version": "0.17.4",
+ "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz",
+ "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "ajv": "^6.12.4",
- "debug": "^4.3.2",
- "espree": "^9.6.0",
- "globals": "^13.19.0",
- "ignore": "^5.2.0",
- "import-fresh": "^3.2.1",
- "js-yaml": "^4.1.0",
- "minimatch": "^3.1.2",
- "strip-json-comments": "^3.1.1"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
+ "@types/mime": "^1",
+ "@types/node": "*"
}
},
- "node_modules/@eslint/eslintrc/node_modules/globals": {
- "version": "13.24.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz",
- "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==",
+ "node_modules/@types/serve-static": {
+ "version": "1.15.7",
+ "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.7.tgz",
+ "integrity": "sha512-W8Ym+h8nhuRwaKPaDw34QUkwsGi6Rc4yYqvKFo5rm2FUEhCFbzVWrxXUxuKK8TASjWsysJY0nsmNCGhCOIsrOw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/http-errors": "*",
+ "@types/node": "*",
+ "@types/send": "*"
+ }
+ },
+ "node_modules/@types/unist": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz",
+ "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@types/uuid": {
+ "version": "9.0.8",
+ "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-9.0.8.tgz",
+ "integrity": "sha512-jg+97EGIcY9AGHJJRaaPVgetKDsrTgbRjQ5Msgjh/DQKEFl0DtyRr/VCOyD1T2R1MNeWPK/u7JoGhlDZnKBAfA==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@typescript-eslint/eslint-plugin": {
+ "version": "8.8.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.8.1.tgz",
+ "integrity": "sha512-xfvdgA8AP/vxHgtgU310+WBnLB4uJQ9XdyP17RebG26rLtDrQJV3ZYrcopX91GrHmMoH8bdSwMRh2a//TiJ1jQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "type-fest": "^0.20.2"
+ "@eslint-community/regexpp": "^4.10.0",
+ "@typescript-eslint/scope-manager": "8.8.1",
+ "@typescript-eslint/type-utils": "8.8.1",
+ "@typescript-eslint/utils": "8.8.1",
+ "@typescript-eslint/visitor-keys": "8.8.1",
+ "graphemer": "^1.4.0",
+ "ignore": "^5.3.1",
+ "natural-compare": "^1.4.0",
+ "ts-api-utils": "^1.3.0"
},
"engines": {
- "node": ">=8"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},
"funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependencies": {
+ "@typescript-eslint/parser": "^8.0.0 || ^8.0.0-alpha.0",
+ "eslint": "^8.57.0 || ^9.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
}
},
- "node_modules/@eslint/eslintrc/node_modules/type-fest": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
- "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
+ "node_modules/@typescript-eslint/parser": {
+ "version": "8.8.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.8.1.tgz",
+ "integrity": "sha512-hQUVn2Lij2NAxVFEdvIGxT9gP1tq2yM83m+by3whWFsWC+1y8pxxxHUFE1UqDu2VsGi2i6RLcv4QvouM84U+ow==",
"dev": true,
- "license": "(MIT OR CC0-1.0)",
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "@typescript-eslint/scope-manager": "8.8.1",
+ "@typescript-eslint/types": "8.8.1",
+ "@typescript-eslint/typescript-estree": "8.8.1",
+ "@typescript-eslint/visitor-keys": "8.8.1",
+ "debug": "^4.3.4"
+ },
"engines": {
- "node": ">=10"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},
"funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependencies": {
+ "eslint": "^8.57.0 || ^9.0.0"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
}
},
- "node_modules/@eslint/js": {
- "version": "8.57.0",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz",
- "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==",
+ "node_modules/@typescript-eslint/scope-manager": {
+ "version": "8.8.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.8.1.tgz",
+ "integrity": "sha512-X4JdU+66Mazev/J0gfXlcC/dV6JI37h+93W9BRYXrSn0hrE64IoWgVkO9MSJgEzoWkxONgaQpICWg8vAN74wlA==",
"dev": true,
"license": "MIT",
+ "dependencies": {
+ "@typescript-eslint/types": "8.8.1",
+ "@typescript-eslint/visitor-keys": "8.8.1"
+ },
"engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
}
},
- "node_modules/@gulp-sourcemaps/identity-map": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/@gulp-sourcemaps/identity-map/-/identity-map-2.0.1.tgz",
- "integrity": "sha512-Tb+nSISZku+eQ4X1lAkevcQa+jknn/OVUgZ3XCxEKIsLsqYuPoJwJOPQeaOk75X3WPftb29GWY1eqE7GLsXb1Q==",
+ "node_modules/@typescript-eslint/type-utils": {
+ "version": "8.8.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.8.1.tgz",
+ "integrity": "sha512-qSVnpcbLP8CALORf0za+vjLYj1Wp8HSoiI8zYU5tHxRVj30702Z1Yw4cLwfNKhTPWp5+P+k1pjmD5Zd1nhxiZA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "acorn": "^6.4.1",
- "normalize-path": "^3.0.0",
- "postcss": "^7.0.16",
- "source-map": "^0.6.0",
- "through2": "^3.0.1"
+ "@typescript-eslint/typescript-estree": "8.8.1",
+ "@typescript-eslint/utils": "8.8.1",
+ "debug": "^4.3.4",
+ "ts-api-utils": "^1.3.0"
},
"engines": {
- "node": ">= 0.10"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
}
},
- "node_modules/@gulp-sourcemaps/identity-map/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/@typescript-eslint/types": {
+ "version": "8.8.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.8.1.tgz",
+ "integrity": "sha512-WCcTP4SDXzMd23N27u66zTKMuEevH4uzU8C9jf0RO4E04yVHgQgW+r+TeVTNnO1KIfrL8ebgVVYYMMO3+jC55Q==",
"dev": true,
"license": "MIT",
- "bin": {
- "acorn": "bin/acorn"
- },
"engines": {
- "node": ">=0.4.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
}
},
- "node_modules/@gulp-sourcemaps/identity-map/node_modules/picocolors": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
- "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/@gulp-sourcemaps/identity-map/node_modules/postcss": {
- "version": "7.0.39",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
- "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
+ "node_modules/@typescript-eslint/typescript-estree": {
+ "version": "8.8.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.8.1.tgz",
+ "integrity": "sha512-A5d1R9p+X+1js4JogdNilDuuq+EHZdsH9MjTVxXOdVFfTJXunKJR/v+fNNyO4TnoOn5HqobzfRlc70NC6HTcdg==",
"dev": true,
- "license": "MIT",
+ "license": "BSD-2-Clause",
"dependencies": {
- "picocolors": "^0.2.1",
- "source-map": "^0.6.1"
+ "@typescript-eslint/types": "8.8.1",
+ "@typescript-eslint/visitor-keys": "8.8.1",
+ "debug": "^4.3.4",
+ "fast-glob": "^3.3.2",
+ "is-glob": "^4.0.3",
+ "minimatch": "^9.0.4",
+ "semver": "^7.6.0",
+ "ts-api-utils": "^1.3.0"
},
"engines": {
- "node": ">=6.0.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},
"funding": {
"type": "opencollective",
- "url": "https://opencollective.com/postcss/"
+ "url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
}
},
- "node_modules/@gulp-sourcemaps/identity-map/node_modules/source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "node_modules/@typescript-eslint/typescript-estree/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
"dev": true,
- "license": "BSD-3-Clause",
- "engines": {
- "node": ">=0.10.0"
+ "license": "MIT",
+ "dependencies": {
+ "balanced-match": "^1.0.0"
}
},
- "node_modules/@gulp-sourcemaps/identity-map/node_modules/through2": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz",
- "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==",
+ "node_modules/@typescript-eslint/typescript-estree/node_modules/minimatch": {
+ "version": "9.0.5",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
+ "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
"dev": true,
- "license": "MIT",
+ "license": "ISC",
"dependencies": {
- "inherits": "^2.0.4",
- "readable-stream": "2 || 3"
+ "brace-expansion": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=16 || 14 >=14.17"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
}
},
- "node_modules/@gulp-sourcemaps/map-sources": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/@gulp-sourcemaps/map-sources/-/map-sources-1.0.0.tgz",
- "integrity": "sha512-o/EatdaGt8+x2qpb0vFLC/2Gug/xYPRXb6a+ET1wGYKozKN3krDWC/zZFZAtrzxJHuDL12mwdfEFKcKMNvc55A==",
+ "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": {
+ "version": "7.6.3",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
+ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "normalize-path": "^2.0.1",
- "through2": "^2.0.3"
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
},
"engines": {
- "node": ">= 0.10"
+ "node": ">=10"
}
},
- "node_modules/@gulp-sourcemaps/map-sources/node_modules/normalize-path": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
- "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==",
+ "node_modules/@typescript-eslint/utils": {
+ "version": "8.8.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.8.1.tgz",
+ "integrity": "sha512-/QkNJDbV0bdL7H7d0/y0qBbV2HTtf0TIyjSDTvvmQEzeVx8jEImEbLuOA4EsvE8gIgqMitns0ifb5uQhMj8d9w==",
"dev": true,
"license": "MIT",
"dependencies": {
- "remove-trailing-separator": "^1.0.1"
+ "@eslint-community/eslint-utils": "^4.4.0",
+ "@typescript-eslint/scope-manager": "8.8.1",
+ "@typescript-eslint/types": "8.8.1",
+ "@typescript-eslint/typescript-estree": "8.8.1"
},
"engines": {
- "node": ">=0.10.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependencies": {
+ "eslint": "^8.57.0 || ^9.0.0"
}
},
- "node_modules/@humanwhocodes/config-array": {
- "version": "0.11.14",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz",
- "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==",
- "deprecated": "Use @eslint/config-array instead",
+ "node_modules/@typescript-eslint/visitor-keys": {
+ "version": "8.8.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.8.1.tgz",
+ "integrity": "sha512-0/TdC3aeRAsW7MDvYRwEc1Uwm0TIBfzjPFgg60UU2Haj5qsCs9cc3zNgY71edqE3LbWfF/WoZQd3lJoDXFQpag==",
"dev": true,
- "license": "Apache-2.0",
+ "license": "MIT",
"dependencies": {
- "@humanwhocodes/object-schema": "^2.0.2",
- "debug": "^4.3.1",
- "minimatch": "^3.0.5"
+ "@typescript-eslint/types": "8.8.1",
+ "eslint-visitor-keys": "^3.4.3"
},
"engines": {
- "node": ">=10.10.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
}
},
- "node_modules/@humanwhocodes/module-importer": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz",
- "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==",
+ "node_modules/@typescript-eslint/visitor-keys/node_modules/eslint-visitor-keys": {
+ "version": "3.4.3",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
+ "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
"dev": true,
"license": "Apache-2.0",
"engines": {
- "node": ">=12.22"
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
},
"funding": {
- "type": "github",
- "url": "https://github.com/sponsors/nzakas"
+ "url": "https://opencollective.com/eslint"
}
},
- "node_modules/@humanwhocodes/object-schema": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz",
- "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==",
- "deprecated": "Use @eslint/object-schema instead",
+ "node_modules/@ungap/structured-clone": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz",
+ "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==",
"dev": true,
- "license": "BSD-3-Clause"
+ "license": "ISC"
},
- "node_modules/@isaacs/cliui": {
- "version": "8.0.2",
- "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz",
- "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==",
+ "node_modules/@vitest/expect": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/@vitest/expect/-/expect-2.0.5.tgz",
+ "integrity": "sha512-yHZtwuP7JZivj65Gxoi8upUN2OzHTi3zVfjwdpu2WrvCZPLwsJ2Ey5ILIPccoW23dd/zQBlJ4/dhi7DWNyXCpA==",
"dev": true,
- "license": "ISC",
+ "license": "MIT",
"dependencies": {
- "string-width": "^5.1.2",
- "string-width-cjs": "npm:string-width@^4.2.0",
- "strip-ansi": "^7.0.1",
- "strip-ansi-cjs": "npm:strip-ansi@^6.0.1",
- "wrap-ansi": "^8.1.0",
- "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0"
+ "@vitest/spy": "2.0.5",
+ "@vitest/utils": "2.0.5",
+ "chai": "^5.1.1",
+ "tinyrainbow": "^1.2.0"
},
- "engines": {
- "node": ">=12"
+ "funding": {
+ "url": "https://opencollective.com/vitest"
}
},
- "node_modules/@isaacs/cliui/node_modules/ansi-regex": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz",
- "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==",
+ "node_modules/@vitest/expect/node_modules/@vitest/pretty-format": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.0.5.tgz",
+ "integrity": "sha512-h8k+1oWHfwTkyTkb9egzwNMfJAEx4veaPSnMeKbVSjp4euqGSbQlm5+6VHwTr7u4FJslVVsUG5nopCaAYdOmSQ==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": ">=12"
+ "dependencies": {
+ "tinyrainbow": "^1.2.0"
},
"funding": {
- "url": "https://github.com/chalk/ansi-regex?sponsor=1"
+ "url": "https://opencollective.com/vitest"
}
},
- "node_modules/@isaacs/cliui/node_modules/strip-ansi": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz",
- "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==",
+ "node_modules/@vitest/expect/node_modules/@vitest/utils": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.0.5.tgz",
+ "integrity": "sha512-d8HKbqIcya+GR67mkZbrzhS5kKhtp8dQLcmRZLGTscGVg7yImT82cIrhtn2L8+VujWcy6KZweApgNmPsTAO/UQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "ansi-regex": "^6.0.1"
- },
- "engines": {
- "node": ">=12"
+ "@vitest/pretty-format": "2.0.5",
+ "estree-walker": "^3.0.3",
+ "loupe": "^3.1.1",
+ "tinyrainbow": "^1.2.0"
},
"funding": {
- "url": "https://github.com/chalk/strip-ansi?sponsor=1"
+ "url": "https://opencollective.com/vitest"
}
},
- "node_modules/@jridgewell/gen-mapping": {
- "version": "0.3.5",
- "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
- "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
+ "node_modules/@vitest/expect/node_modules/estree-walker": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-3.0.3.tgz",
+ "integrity": "sha512-7RUKfXgSMMkzt6ZuXmqapOurLGPPfgj6l9uRZ7lRGolvk0y2yocc35LdcxKC5PQZdn2DMqioAQ2NoWcrTKmm6g==",
+ "dev": true,
"license": "MIT",
"dependencies": {
- "@jridgewell/set-array": "^1.2.1",
- "@jridgewell/sourcemap-codec": "^1.4.10",
- "@jridgewell/trace-mapping": "^0.3.24"
- },
- "engines": {
- "node": ">=6.0.0"
+ "@types/estree": "^1.0.0"
}
},
- "node_modules/@jridgewell/resolve-uri": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
- "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
+ "node_modules/@vitest/pretty-format": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-2.1.2.tgz",
+ "integrity": "sha512-FIoglbHrSUlOJPDGIrh2bjX1sNars5HbxlcsFKCtKzu4+5lpsRhOCVcuzp0fEhAGHkPZRIXVNzPcpSlkoZ3LuA==",
+ "dev": true,
"license": "MIT",
- "engines": {
- "node": ">=6.0.0"
+ "dependencies": {
+ "tinyrainbow": "^1.2.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/vitest"
}
},
- "node_modules/@jridgewell/set-array": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
- "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
- "license": "MIT",
- "engines": {
- "node": ">=6.0.0"
- }
- },
- "node_modules/@jridgewell/source-map": {
- "version": "0.3.6",
- "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz",
- "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@jridgewell/gen-mapping": "^0.3.5",
- "@jridgewell/trace-mapping": "^0.3.25"
- }
- },
- "node_modules/@jridgewell/sourcemap-codec": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz",
- "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==",
- "license": "MIT"
- },
- "node_modules/@jridgewell/trace-mapping": {
- "version": "0.3.25",
- "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
- "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
- "license": "MIT",
- "dependencies": {
- "@jridgewell/resolve-uri": "^3.1.0",
- "@jridgewell/sourcemap-codec": "^1.4.14"
- }
- },
- "node_modules/@juliangruber/tap-finished": {
- "version": "0.0.2",
- "resolved": "https://registry.npmjs.org/@juliangruber/tap-finished/-/tap-finished-0.0.2.tgz",
- "integrity": "sha512-Q7XSxMiTHPYoIpQJDH8FM1UJh9KFyKi52ETVtbZ2GU/Gbj2NqkJGADUNjeqUbPwqziO6sb+iTfY0cZr9m2O4lQ==",
- "dev": true,
+ "node_modules/@vitest/spy": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/@vitest/spy/-/spy-2.0.5.tgz",
+ "integrity": "sha512-c/jdthAhvJdpfVuaexSrnawxZz6pywlTPe84LUB2m/4t3rl2fTo9NFGBG4oWgaD+FTgDDV8hJ/nibT7IfH3JfA==",
+ "dev": true,
"license": "MIT",
"dependencies": {
- "once": "^1.3.3",
- "tap-parser": "~0.2.0",
- "through": "~2.3.4"
- }
- },
- "node_modules/@ljharb/resumer": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/@ljharb/resumer/-/resumer-0.1.3.tgz",
- "integrity": "sha512-d+tsDgfkj9X5QTriqM4lKesCkMMJC3IrbPKHvayP00ELx2axdXvDfWkqjxrLXIzGcQzmj7VAUT1wopqARTvafw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@ljharb/through": "^2.3.13",
- "call-bind": "^1.0.7"
+ "tinyspy": "^3.0.0"
},
- "engines": {
- "node": ">= 0.4"
+ "funding": {
+ "url": "https://opencollective.com/vitest"
}
},
- "node_modules/@ljharb/through": {
- "version": "2.3.13",
- "resolved": "https://registry.npmjs.org/@ljharb/through/-/through-2.3.13.tgz",
- "integrity": "sha512-/gKJun8NNiWGZJkGzI/Ragc53cOdcLNdzjLaIa+GEjguQs0ulsurx8WN0jijdK9yPqDvziX995sMRLyLt1uZMQ==",
+ "node_modules/@vitest/utils": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@vitest/utils/-/utils-2.1.2.tgz",
+ "integrity": "sha512-zMO2KdYy6mx56btx9JvAqAZ6EyS3g49krMPPrgOp1yxGZiA93HumGk+bZ5jIZtOg5/VBYl5eBmGRQHqq4FG6uQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "call-bind": "^1.0.7"
+ "@vitest/pretty-format": "2.1.2",
+ "loupe": "^3.1.1",
+ "tinyrainbow": "^1.2.0"
},
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/@nicolo-ribaudo/eslint-scope-5-internals": {
- "version": "5.1.1-v1",
- "resolved": "https://registry.npmjs.org/@nicolo-ribaudo/eslint-scope-5-internals/-/eslint-scope-5-internals-5.1.1-v1.tgz",
- "integrity": "sha512-54/JRvkLIzzDWshCWfuhadfrfZVPiElY8Fcgmg1HroEly/EDSszzhBAsarCux+D/kOslTRquNzuyGSmUSTTHGg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "eslint-scope": "5.1.1"
+ "funding": {
+ "url": "https://opencollective.com/vitest"
}
},
- "node_modules/@nodelib/fs.scandir": {
- "version": "2.1.5",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
- "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
+ "node_modules/@webassemblyjs/ast": {
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz",
+ "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@nodelib/fs.stat": "2.0.5",
- "run-parallel": "^1.1.9"
- },
- "engines": {
- "node": ">= 8"
+ "@webassemblyjs/helper-numbers": "1.11.6",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.6"
}
},
- "node_modules/@nodelib/fs.stat": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
- "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
+ "node_modules/@webassemblyjs/floating-point-hex-parser": {
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz",
+ "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==",
"dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 8"
- }
+ "license": "MIT"
},
- "node_modules/@nodelib/fs.walk": {
- "version": "1.2.8",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
- "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
+ "node_modules/@webassemblyjs/helper-api-error": {
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz",
+ "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "@nodelib/fs.scandir": "2.1.5",
- "fastq": "^1.6.0"
- },
- "engines": {
- "node": ">= 8"
- }
+ "license": "MIT"
},
- "node_modules/@pkgjs/parseargs": {
- "version": "0.11.0",
- "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz",
- "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==",
+ "node_modules/@webassemblyjs/helper-buffer": {
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz",
+ "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==",
"dev": true,
- "license": "MIT",
- "optional": true,
- "engines": {
- "node": ">=14"
- }
+ "license": "MIT"
},
- "node_modules/@pkgr/core": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.1.1.tgz",
- "integrity": "sha512-cq8o4cWH0ibXh9VGi5P20Tu9XF/0fFXl9EUinr9QfTM7a7p0oTA4iJRCQWppXR1Pg8dSM0UCItCkPwsk9qWWYA==",
+ "node_modules/@webassemblyjs/helper-numbers": {
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz",
+ "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": "^12.20.0 || ^14.18.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/unts"
+ "dependencies": {
+ "@webassemblyjs/floating-point-hex-parser": "1.11.6",
+ "@webassemblyjs/helper-api-error": "1.11.6",
+ "@xtuc/long": "4.2.2"
}
},
- "node_modules/@rtsao/scc": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@rtsao/scc/-/scc-1.1.0.tgz",
- "integrity": "sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==",
+ "node_modules/@webassemblyjs/helper-wasm-bytecode": {
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz",
+ "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==",
"dev": true,
"license": "MIT"
},
- "node_modules/@sindresorhus/is": {
- "version": "4.6.0",
- "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-4.6.0.tgz",
- "integrity": "sha512-t09vSN3MdfsyCHoFcTRCH/iUtG7OJ0CsjzB8cjAmKc/va/kIgeDI/TxsigdncE/4be734m0cvIYwNaV4i2XqAw==",
+ "node_modules/@webassemblyjs/helper-wasm-section": {
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz",
+ "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sindresorhus/is?sponsor=1"
+ "dependencies": {
+ "@webassemblyjs/ast": "1.12.1",
+ "@webassemblyjs/helper-buffer": "1.12.1",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
+ "@webassemblyjs/wasm-gen": "1.12.1"
}
},
- "node_modules/@szmarczak/http-timer": {
- "version": "4.0.6",
- "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz",
- "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==",
+ "node_modules/@webassemblyjs/ieee754": {
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz",
+ "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "defer-to-connect": "^2.0.0"
- },
- "engines": {
- "node": ">=10"
+ "@xtuc/ieee754": "^1.2.0"
}
},
- "node_modules/@trysound/sax": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz",
- "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==",
+ "node_modules/@webassemblyjs/leb128": {
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz",
+ "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==",
"dev": true,
- "license": "ISC",
- "engines": {
- "node": ">=10.13.0"
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@xtuc/long": "4.2.2"
}
},
- "node_modules/@tsconfig/node22": {
- "version": "22.0.0",
- "resolved": "https://registry.npmjs.org/@tsconfig/node22/-/node22-22.0.0.tgz",
- "integrity": "sha512-twLQ77zevtxobBOD4ToAtVmuYrpeYUh3qh+TEp+08IWhpsrIflVHqQ1F1CiPxQGL7doCdBIOOCF+1Tm833faNg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@tsconfig/strictest": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/@tsconfig/strictest/-/strictest-2.0.5.tgz",
- "integrity": "sha512-ec4tjL2Rr0pkZ5hww65c+EEPYwxOi4Ryv+0MtjeaSQRJyq322Q27eOQiFbuNgw2hpL4hB1/W/HBGk3VKS43osg==",
+ "node_modules/@webassemblyjs/utf8": {
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz",
+ "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==",
"dev": true,
"license": "MIT"
},
- "node_modules/@types/cacheable-request": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.3.tgz",
- "integrity": "sha512-IQ3EbTzGxIigb1I3qPZc1rWJnH0BmSKv5QYTalEwweFvyBDLSAe24zP0le/hyi7ecGfZVlIVAg4BZqb8WBwKqw==",
+ "node_modules/@webassemblyjs/wasm-edit": {
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz",
+ "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@types/http-cache-semantics": "*",
- "@types/keyv": "^3.1.4",
- "@types/node": "*",
- "@types/responselike": "^1.0.0"
+ "@webassemblyjs/ast": "1.12.1",
+ "@webassemblyjs/helper-buffer": "1.12.1",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
+ "@webassemblyjs/helper-wasm-section": "1.12.1",
+ "@webassemblyjs/wasm-gen": "1.12.1",
+ "@webassemblyjs/wasm-opt": "1.12.1",
+ "@webassemblyjs/wasm-parser": "1.12.1",
+ "@webassemblyjs/wast-printer": "1.12.1"
}
},
- "node_modules/@types/http-cache-semantics": {
- "version": "4.0.4",
- "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.4.tgz",
- "integrity": "sha512-1m0bIFVc7eJWyve9S0RnuRgcQqF/Xd5QsUZAZeQFr1Q3/p9JWoQQEqmVy+DPTNpGXwhgIetAoYF8JSc33q29QA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@types/json5": {
- "version": "0.0.29",
- "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz",
- "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/@types/keyv": {
- "version": "3.1.4",
- "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.4.tgz",
- "integrity": "sha512-BQ5aZNSCpj7D6K2ksrRCTmKRLEpnPvWDiLPfoGyhZ++8YtiK9d/3DBKPJgry359X/P1PfruyYwvnvwFjuEiEIg==",
+ "node_modules/@webassemblyjs/wasm-gen": {
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz",
+ "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@types/node": "*"
+ "@webassemblyjs/ast": "1.12.1",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
+ "@webassemblyjs/ieee754": "1.11.6",
+ "@webassemblyjs/leb128": "1.11.6",
+ "@webassemblyjs/utf8": "1.11.6"
}
},
- "node_modules/@types/node": {
- "version": "18.19.50",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.50.tgz",
- "integrity": "sha512-xonK+NRrMBRtkL1hVCc3G+uXtjh1Al4opBLjqVmipe5ZAaBYWW6cNAiBVZ1BvmkBhep698rP3UM3aRAdSALuhg==",
+ "node_modules/@webassemblyjs/wasm-opt": {
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz",
+ "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "undici-types": "~5.26.4"
+ "@webassemblyjs/ast": "1.12.1",
+ "@webassemblyjs/helper-buffer": "1.12.1",
+ "@webassemblyjs/wasm-gen": "1.12.1",
+ "@webassemblyjs/wasm-parser": "1.12.1"
}
},
- "node_modules/@types/responselike": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.3.tgz",
- "integrity": "sha512-H/+L+UkTV33uf49PH5pCAUBVPNj2nDBXTN+qS1dOwyyg24l3CcicicCA7ca+HMvJBZcFgl5r8e+RR6elsb4Lyw==",
+ "node_modules/@webassemblyjs/wasm-parser": {
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz",
+ "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@types/node": "*"
+ "@webassemblyjs/ast": "1.12.1",
+ "@webassemblyjs/helper-api-error": "1.11.6",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
+ "@webassemblyjs/ieee754": "1.11.6",
+ "@webassemblyjs/leb128": "1.11.6",
+ "@webassemblyjs/utf8": "1.11.6"
}
},
- "node_modules/@types/yauzl": {
- "version": "2.10.3",
- "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.3.tgz",
- "integrity": "sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==",
+ "node_modules/@webassemblyjs/wast-printer": {
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz",
+ "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==",
"dev": true,
"license": "MIT",
- "optional": true,
"dependencies": {
- "@types/node": "*"
+ "@webassemblyjs/ast": "1.12.1",
+ "@xtuc/long": "4.2.2"
}
},
- "node_modules/@ungap/structured-clone": {
+ "node_modules/@xtuc/ieee754": {
"version": "1.2.0",
- "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz",
- "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==",
+ "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz",
+ "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==",
"dev": true,
- "license": "ISC"
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/@xtuc/long": {
+ "version": "4.2.2",
+ "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz",
+ "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==",
+ "dev": true,
+ "license": "Apache-2.0"
},
- "node_modules/@xmldom/xmldom": {
- "version": "0.8.10",
- "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.10.tgz",
- "integrity": "sha512-2WALfTl4xo2SkGCYRt6rDTFfk9R1czmBvUQy12gK2KuRKIpWEhcbbzy8EZXtz/jkRqHX8bFEc6FC1HjX4TUWYw==",
+ "node_modules/abort-controller": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz",
+ "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==",
"dev": true,
"license": "MIT",
+ "dependencies": {
+ "event-target-shim": "^5.0.0"
+ },
"engines": {
- "node": ">=10.0.0"
+ "node": ">=6.5"
}
},
"node_modules/accepts": {
@@ -2537,67 +2640,6 @@
"node": ">= 0.6"
}
},
- "node_modules/accord": {
- "version": "0.30.0",
- "resolved": "https://registry.npmjs.org/accord/-/accord-0.30.0.tgz",
- "integrity": "sha512-Nc8UJpmxtyn/KO53yFUZ5CvQ9F/DTUk6A4g55jhD6oRDQJA/3LIqRAyo0LD2YKGG2a0WtpIq5mNv8SZF1INGig==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "convert-source-map": "^1.5.0",
- "glob": "^7.0.5",
- "indx": "^0.2.3",
- "lodash.clone": "^4.3.2",
- "lodash.defaults": "^4.0.1",
- "lodash.flatten": "^4.2.0",
- "lodash.merge": "^4.4.0",
- "lodash.partialright": "^4.1.4",
- "lodash.pick": "^4.2.1",
- "lodash.uniq": "^4.3.0",
- "resolve": "^1.5.0",
- "semver": "^5.3.0",
- "when": "^3.7.8"
- }
- },
- "node_modules/accord/node_modules/convert-source-map": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz",
- "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/accord/node_modules/glob": {
- "version": "7.2.3",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
- "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
- "deprecated": "Glob versions prior to v9 are no longer supported",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.1.1",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- },
- "engines": {
- "node": "*"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/accord/node_modules/semver": {
- "version": "5.7.2",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
- "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
- "dev": true,
- "license": "ISC",
- "bin": {
- "semver": "bin/semver"
- }
- },
"node_modules/acorn": {
"version": "8.12.1",
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz",
@@ -2611,6 +2653,16 @@
"node": ">=0.4.0"
}
},
+ "node_modules/acorn-import-attributes": {
+ "version": "1.9.5",
+ "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz",
+ "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==",
+ "dev": true,
+ "license": "MIT",
+ "peerDependencies": {
+ "acorn": "^8"
+ }
+ },
"node_modules/acorn-jsx": {
"version": "5.3.2",
"resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
@@ -2621,61 +2673,12 @@
"acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
}
},
- "node_modules/acorn-node": {
- "version": "1.8.2",
- "resolved": "https://registry.npmjs.org/acorn-node/-/acorn-node-1.8.2.tgz",
- "integrity": "sha512-8mt+fslDufLYntIoPAaIMUe/lrbrehIiwmR3t2k9LljIzoigEPF27eLk2hy8zSGzmR/ogr7zbRKINMo1u0yh5A==",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "acorn": "^7.0.0",
- "acorn-walk": "^7.0.0",
- "xtend": "^4.0.2"
- }
- },
- "node_modules/acorn-node/node_modules/acorn": {
- "version": "7.4.1",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz",
- "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "acorn": "bin/acorn"
- },
- "engines": {
- "node": ">=0.4.0"
- }
- },
- "node_modules/acorn-walk": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz",
- "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.4.0"
- }
- },
"node_modules/add-eventlistener-with-options": {
"version": "1.25.5",
"resolved": "https://registry.npmjs.org/add-eventlistener-with-options/-/add-eventlistener-with-options-1.25.5.tgz",
"integrity": "sha512-L8X5FekCYy0dVc6obZvIK4QaGdWyA1x6LH8e3BYAfxItX4FOJ13L8FlxBWOricGSnH/sfVY4zpJMp8ZxC9UMzA==",
"license": "ISC"
},
- "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,
- "license": "MIT",
- "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",
@@ -2693,6 +2696,16 @@
"url": "https://github.com/sponsors/epoberezkin"
}
},
+ "node_modules/ajv-keywords": {
+ "version": "3.5.2",
+ "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz",
+ "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==",
+ "dev": true,
+ "license": "MIT",
+ "peerDependencies": {
+ "ajv": "^6.9.1"
+ }
+ },
"node_modules/animitter": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/animitter/-/animitter-3.0.0.tgz",
@@ -2703,489 +2716,460 @@
"raf": "^3.1.0"
}
},
- "node_modules/ansi-colors": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-1.1.0.tgz",
- "integrity": "sha512-SFKX67auSNoVR38N3L+nvsPjOE0bybKTYbkf5tRvushrAPQ9V75huw0ZxBkKVeRU9kqH3d6HA4xTckbwZ4ixmA==",
+ "node_modules/ansi-regex": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "ansi-wrap": "^0.1.0"
- },
"engines": {
- "node": ">=0.10.0"
+ "node": ">=8"
}
},
- "node_modules/ansi-cyan": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/ansi-cyan/-/ansi-cyan-0.1.1.tgz",
- "integrity": "sha512-eCjan3AVo/SxZ0/MyIYRtkpxIu/H3xZN7URr1vXVrISxeyz8fUFz0FJziamK4sS8I+t35y4rHg1b2PklyBe/7A==",
+ "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,
"license": "MIT",
"dependencies": {
- "ansi-wrap": "0.1.0"
+ "color-convert": "^1.9.0"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">=4"
}
},
- "node_modules/ansi-gray": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz",
- "integrity": "sha512-HrgGIZUl8h2EHuZaU9hTR/cU5nhKxpVE1V6kdGsQ8e4zirElJ5fvtfc8N7Q1oq1aatO275i8pUFUCpNWCAnVWw==",
+ "node_modules/argparse": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
+ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-wrap": "0.1.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
+ "license": "Python-2.0"
},
- "node_modules/ansi-red": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/ansi-red/-/ansi-red-0.1.1.tgz",
- "integrity": "sha512-ewaIr5y+9CUTGFwZfpECUbFlGcC0GCw1oqR9RI6h1gQCd9Aj2GxSckCnPsVJnmfMZbwFYE+leZGASgkWl06Jow==",
+ "node_modules/aria-query": {
+ "version": "5.3.0",
+ "resolved": "https://registry.npmjs.org/aria-query/-/aria-query-5.3.0.tgz",
+ "integrity": "sha512-b0P0sZPKtyu8HkeRAfCq0IfURZK+SuwMjY1UXGBU27wpAiTwQAIlq56IbIO+ytk/JjS1fMR14ee5WBBfKi5J6A==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
"dependencies": {
- "ansi-wrap": "0.1.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/ansi-regex": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
- "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
+ "dequal": "^2.0.3"
}
},
- "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==",
- "license": "MIT",
- "dependencies": {
- "color-convert": "^1.9.0"
- },
- "engines": {
- "node": ">=4"
- }
+ "node_modules/asap": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
+ "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==",
+ "license": "MIT"
},
- "node_modules/ansi-wrap": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz",
- "integrity": "sha512-ZyznvL8k/FZeQHr2T6LzcJ/+vBApDnMNZvfVFy3At0knswWd6rJ3/0Hhmpu8oqa6C92npmozs890sX9Dl6q+Qw==",
+ "node_modules/asn1.js": {
+ "version": "4.10.1",
+ "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz",
+ "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/anymatch": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz",
- "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==",
- "dev": true,
- "license": "ISC",
"dependencies": {
- "micromatch": "^3.1.4",
- "normalize-path": "^2.1.1"
+ "bn.js": "^4.0.0",
+ "inherits": "^2.0.1",
+ "minimalistic-assert": "^1.0.0"
}
},
- "node_modules/anymatch/node_modules/define-property": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz",
- "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==",
+ "node_modules/asn1.js/node_modules/bn.js": {
+ "version": "4.12.0",
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
+ "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "is-descriptor": "^1.0.2",
- "isobject": "^3.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
+ "license": "MIT"
},
- "node_modules/anymatch/node_modules/extend-shallow": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
- "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==",
+ "node_modules/assertion-error": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-2.0.1.tgz",
+ "integrity": "sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "assign-symbols": "^1.0.0",
- "is-extendable": "^1.0.1"
- },
"engines": {
- "node": ">=0.10.0"
+ "node": ">=12"
}
},
- "node_modules/anymatch/node_modules/is-descriptor": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz",
- "integrity": "sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw==",
+ "node_modules/ast-types": {
+ "version": "0.16.1",
+ "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.16.1.tgz",
+ "integrity": "sha512-6t10qk83GOG8p0vKmaCr8eiilZwO171AvbROMtvvNiwrTly62t+7XkA8RdIIVbpMhCASAsxgAzdRSwh6nw/5Dg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "is-accessor-descriptor": "^1.0.1",
- "is-data-descriptor": "^1.0.1"
+ "tslib": "^2.0.1"
},
"engines": {
- "node": ">= 0.4"
+ "node": ">=4"
}
},
- "node_modules/anymatch/node_modules/is-extendable": {
+ "node_modules/async-limiter": {
"version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
- "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
- "dev": true,
+ "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz",
+ "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==",
+ "license": "MIT"
+ },
+ "node_modules/asynckit": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
+ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==",
+ "license": "MIT"
+ },
+ "node_modules/audio-sample": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/audio-sample/-/audio-sample-4.1.0.tgz",
+ "integrity": "sha512-7cWMCj7v7uH5l7m5ArN7Ycy6G4mYCYNr4ALU7baJf/frNYbn35CdVPdiAFSBmU84g39KDWbJFHcPIcFP/IdDVQ==",
"license": "MIT",
"dependencies": {
- "is-plain-object": "^2.0.4"
+ "typedarray-to-buffer": "4.0.0"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">=20.12.2",
+ "npm": ">=10.5.0"
}
},
- "node_modules/anymatch/node_modules/is-plain-object": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
- "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
+ "node_modules/audit-ci": {
+ "version": "7.1.0",
+ "resolved": "https://registry.npmjs.org/audit-ci/-/audit-ci-7.1.0.tgz",
+ "integrity": "sha512-PjjEejlST57S/aDbeWLic0glJ8CNl/ekY3kfGFPMrPkmuaYaDKcMH0F9x9yS9Vp6URhuefSCubl/G0Y2r6oP0g==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
"dependencies": {
- "isobject": "^3.0.1"
+ "cross-spawn": "^7.0.3",
+ "escape-string-regexp": "^4.0.0",
+ "event-stream": "4.0.1",
+ "jju": "^1.4.0",
+ "jsonstream-next": "^3.0.0",
+ "readline-transform": "1.0.0",
+ "semver": "^7.0.0",
+ "tslib": "^2.0.0",
+ "yargs": "^17.0.0"
+ },
+ "bin": {
+ "audit-ci": "dist/bin.js"
},
"engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/anymatch/node_modules/kind-of": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
- "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
+ "node": ">=16"
}
},
- "node_modules/anymatch/node_modules/micromatch": {
- "version": "3.1.10",
- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz",
- "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==",
+ "node_modules/audit-ci/node_modules/semver": {
+ "version": "7.6.3",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
+ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "arr-diff": "^4.0.0",
- "array-unique": "^0.3.2",
- "braces": "^2.3.1",
- "define-property": "^2.0.2",
- "extend-shallow": "^3.0.2",
- "extglob": "^2.0.4",
- "fragment-cache": "^0.2.1",
- "kind-of": "^6.0.2",
- "nanomatch": "^1.2.9",
- "object.pick": "^1.3.0",
- "regex-not": "^1.0.0",
- "snapdragon": "^0.8.1",
- "to-regex": "^3.0.2"
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">=10"
}
},
- "node_modules/anymatch/node_modules/normalize-path": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
- "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==",
+ "node_modules/available-typed-arrays": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz",
+ "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "remove-trailing-separator": "^1.0.1"
+ "possible-typed-array-names": "^1.0.0"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/append-buffer": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/append-buffer/-/append-buffer-1.0.2.tgz",
- "integrity": "sha512-WLbYiXzD3y/ATLZFufV/rZvWdZOs+Z/+5v1rBZ463Jn398pa6kcde27cvozYnBoxXblGZTFfoPpsaEw0orU5BA==",
+ "node_modules/axe-core": {
+ "version": "4.10.0",
+ "resolved": "https://registry.npmjs.org/axe-core/-/axe-core-4.10.0.tgz",
+ "integrity": "sha512-Mr2ZakwQ7XUAjp7pAwQWRhhK8mQQ6JAaNWSjmjxil0R8BPioMtQsTLOolGYkji1rcL++3dCqZA3zWqpT+9Ew6g==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "buffer-equal": "^1.0.0"
- },
+ "license": "MPL-2.0",
"engines": {
- "node": ">=0.10.0"
+ "node": ">=4"
}
},
- "node_modules/archy": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz",
- "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==",
+ "node_modules/balanced-match": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
+ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
"dev": true,
"license": "MIT"
},
- "node_modules/argparse": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
- "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
- "dev": true,
- "license": "Python-2.0"
- },
- "node_modules/arr-diff": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz",
- "integrity": "sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==",
+ "node_modules/base64-js": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
+ "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==",
"dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "MIT"
},
- "node_modules/arr-filter": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/arr-filter/-/arr-filter-1.1.2.tgz",
- "integrity": "sha512-A2BETWCqhsecSvCkWAeVBFLH6sXEUGASuzkpjL3GR1SlL/PWL6M3J8EAAld2Uubmh39tvkJTqC9LeLHCUKmFXA==",
+ "node_modules/better-opn": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/better-opn/-/better-opn-3.0.2.tgz",
+ "integrity": "sha512-aVNobHnJqLiUelTaHat9DZ1qM2w0C0Eym4LPI/3JxOnSokGVdsl1T1kN7TFvsEAD8G47A6VKQ0TVHqbBnYMJlQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "make-iterator": "^1.0.0"
+ "open": "^8.0.4"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">=12.0.0"
}
},
- "node_modules/arr-flatten": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/arr-flatten/-/arr-flatten-1.1.0.tgz",
- "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==",
+ "node_modules/bn.js": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz",
+ "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==",
"dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
+ "license": "MIT"
},
- "node_modules/arr-map": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/arr-map/-/arr-map-2.0.2.tgz",
- "integrity": "sha512-tVqVTHt+Q5Xb09qRkbu+DidW1yYzz5izWS2Xm2yFm7qJnmUfz4HPzNxbHkdRJbz2lrqI7S+z17xNYdFcBBO8Hw==",
+ "node_modules/body-parser": {
+ "version": "1.20.3",
+ "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz",
+ "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==",
"dev": true,
"license": "MIT",
"dependencies": {
- "make-iterator": "^1.0.0"
+ "bytes": "3.1.2",
+ "content-type": "~1.0.5",
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "destroy": "1.2.0",
+ "http-errors": "2.0.0",
+ "iconv-lite": "0.4.24",
+ "on-finished": "2.4.1",
+ "qs": "6.13.0",
+ "raw-body": "2.5.2",
+ "type-is": "~1.6.18",
+ "unpipe": "1.0.0"
},
"engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/arr-union": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz",
- "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.8",
+ "npm": "1.2.8000 || >= 1.4.16"
}
},
- "node_modules/array-buffer-byte-length": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz",
- "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==",
+ "node_modules/body-parser/node_modules/debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "call-bind": "^1.0.5",
- "is-array-buffer": "^3.0.4"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
+ "ms": "2.0.0"
}
},
- "node_modules/array-differ": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-1.0.0.tgz",
- "integrity": "sha512-LeZY+DZDRnvP7eMuQ6LHfCzUGxAAIViUBliK24P3hWXL6y4SortgR6Nim6xrkfSLlmH0+k+9NYNwVC2s53ZrYQ==",
+ "node_modules/body-parser/node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
"dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
+ "license": "MIT"
},
- "node_modules/array-each": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/array-each/-/array-each-1.0.1.tgz",
- "integrity": "sha512-zHjL5SZa68hkKHBFBK6DJCTtr9sfTCPCaph/L7tMSLcTFgy+zX7E+6q5UArbtOtMBCtxdICpfTCspRse+ywyXA==",
+ "node_modules/brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": ">=0.10.0"
+ "dependencies": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
}
},
- "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": "sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/array-flatten": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-3.0.0.tgz",
- "integrity": "sha512-zPMVc3ZYlGLNk4mpK1NzP2wg0ml9t7fUgDsayR5Y5rSzxQilzR9FGu/EH2jQOcKSAeAfWeylyW8juy3OkWRvNA==",
+ "node_modules/brorand": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz",
+ "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==",
"dev": true,
"license": "MIT"
},
- "node_modules/array-includes": {
- "version": "3.1.8",
- "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.8.tgz",
- "integrity": "sha512-itaWrbYbqpGXkGhZPGUulwnhVf5Hpy1xiCFsGqyIGglbBxmG5vSjxQen3/WGOjPpNEv1RtBLKxbmVXm8HpJStQ==",
+ "node_modules/browser-assert": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/browser-assert/-/browser-assert-1.2.1.tgz",
+ "integrity": "sha512-nfulgvOR6S4gt9UKCeGJOuSGBPGiFT6oQ/2UBnvTY/5aQ1PnksW72fhZkM30DzoRRv2WpwZf1vHHEr3mtuXIWQ==",
+ "dev": true
+ },
+ "node_modules/browser-split": {
+ "version": "0.0.0",
+ "resolved": "https://registry.npmjs.org/browser-split/-/browser-split-0.0.0.tgz",
+ "integrity": "sha512-CNXO3AXAS1H/kOGQkPjucm1161/XoF3aVkMfujqwk85XN/D/MkQMvoB81lXyX/2rerZS+hPAYYRR3mAW05awjQ==",
+ "license": "MIT"
+ },
+ "node_modules/browserify-aes": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
+ "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "call-bind": "^1.0.7",
- "define-properties": "^1.2.1",
- "es-abstract": "^1.23.2",
- "es-object-atoms": "^1.0.0",
- "get-intrinsic": "^1.2.4",
- "is-string": "^1.0.7"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
+ "buffer-xor": "^1.0.3",
+ "cipher-base": "^1.0.0",
+ "create-hash": "^1.1.0",
+ "evp_bytestokey": "^1.0.3",
+ "inherits": "^2.0.1",
+ "safe-buffer": "^5.0.1"
}
},
- "node_modules/array-initial": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/array-initial/-/array-initial-1.1.0.tgz",
- "integrity": "sha512-BC4Yl89vneCYfpLrs5JU2aAu9/a+xWbeKhvISg9PT7eWFB9UlRvI+rKEtk6mgxWr3dSkk9gQ8hCrdqt06NXPdw==",
+ "node_modules/browserify-cipher": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz",
+ "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==",
"dev": true,
"license": "MIT",
"dependencies": {
- "array-slice": "^1.0.0",
- "is-number": "^4.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
+ "browserify-aes": "^1.0.4",
+ "browserify-des": "^1.0.0",
+ "evp_bytestokey": "^1.0.0"
}
},
- "node_modules/array-initial/node_modules/is-number": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz",
- "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==",
+ "node_modules/browserify-des": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz",
+ "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": ">=0.10.0"
+ "dependencies": {
+ "cipher-base": "^1.0.1",
+ "des.js": "^1.0.0",
+ "inherits": "^2.0.1",
+ "safe-buffer": "^5.1.2"
}
},
- "node_modules/array-last": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/array-last/-/array-last-1.3.0.tgz",
- "integrity": "sha512-eOCut5rXlI6aCOS7Z7kCplKRKyiFQ6dHFBem4PwlwKeNFk2/XxTrhRh5T9PyaEWGy/NHTZWbY+nsZlNFJu9rYg==",
+ "node_modules/browserify-rsa": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz",
+ "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==",
"dev": true,
"license": "MIT",
"dependencies": {
- "is-number": "^4.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
+ "bn.js": "^5.0.0",
+ "randombytes": "^2.0.1"
}
},
- "node_modules/array-last/node_modules/is-number": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz",
- "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==",
+ "node_modules/browserify-sign": {
+ "version": "4.2.3",
+ "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.3.tgz",
+ "integrity": "sha512-JWCZW6SKhfhjJxO8Tyiiy+XYB7cqd2S5/+WeYHsKdNKFlCBhKbblba1A/HN/90YwtxKc8tCErjffZl++UNmGiw==",
"dev": true,
- "license": "MIT",
+ "license": "ISC",
+ "dependencies": {
+ "bn.js": "^5.2.1",
+ "browserify-rsa": "^4.1.0",
+ "create-hash": "^1.2.0",
+ "create-hmac": "^1.1.7",
+ "elliptic": "^6.5.5",
+ "hash-base": "~3.0",
+ "inherits": "^2.0.4",
+ "parse-asn1": "^5.1.7",
+ "readable-stream": "^2.3.8",
+ "safe-buffer": "^5.2.1"
+ },
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.12"
}
},
- "node_modules/array-slice": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-1.1.0.tgz",
- "integrity": "sha512-B1qMD3RBP7O8o0H2KbrXDyB0IccejMF15+87Lvlor12ONPRHP6gTjXMNkt/d3ZuOGbAe66hFmaCfECI24Ufp6w==",
+ "node_modules/browserify-zlib": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz",
+ "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": ">=0.10.0"
+ "dependencies": {
+ "pako": "~1.0.5"
}
},
- "node_modules/array-sort": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/array-sort/-/array-sort-1.0.0.tgz",
- "integrity": "sha512-ihLeJkonmdiAsD7vpgN3CRcx2J2S0TiYW+IS/5zHBI7mKUq3ySvBdzzBfD236ubDBQFiiyG3SWCPc+msQ9KoYg==",
+ "node_modules/browserslist": {
+ "version": "4.23.3",
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.3.tgz",
+ "integrity": "sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==",
"dev": true,
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/browserslist"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
+ }
+ ],
"license": "MIT",
"dependencies": {
- "default-compare": "^1.0.0",
- "get-value": "^2.0.6",
- "kind-of": "^5.0.2"
+ "caniuse-lite": "^1.0.30001646",
+ "electron-to-chromium": "^1.5.4",
+ "node-releases": "^2.0.18",
+ "update-browserslist-db": "^1.1.0"
+ },
+ "bin": {
+ "browserslist": "cli.js"
},
"engines": {
- "node": ">=0.10.0"
+ "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
}
},
- "node_modules/array-union": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz",
- "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==",
+ "node_modules/buffer-from": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
+ "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==",
"dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
+ "license": "MIT"
},
- "node_modules/array-uniq": {
+ "node_modules/buffer-xor": {
"version": "1.0.3",
- "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz",
- "integrity": "sha512-MNha4BWQ6JbwhFhj03YK552f7cb3AzoE8SzeljgChvL1dl3IcvggXVz1DilzySZkCja+CXuZbdW7yATchWn8/Q==",
+ "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz",
+ "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==",
"dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
+ "license": "MIT"
+ },
+ "node_modules/builtin-status-codes": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz",
+ "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==",
+ "dev": true,
+ "license": "MIT"
},
- "node_modules/array-unique": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz",
- "integrity": "sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==",
+ "node_modules/bytes": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz",
+ "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.8"
}
},
- "node_modules/array.prototype.every": {
- "version": "1.1.6",
- "resolved": "https://registry.npmjs.org/array.prototype.every/-/array.prototype.every-1.1.6.tgz",
- "integrity": "sha512-gNEqZD97w6bfQRNmHkFv7rNnGM+VWyHZT+h/rf9C+22owcXuENr66Lfo0phItpU5KoXW6Owb34q2+8MnSIZ57w==",
- "dev": true,
+ "node_modules/call-bind": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz",
+ "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==",
"license": "MIT",
"dependencies": {
- "call-bind": "^1.0.7",
- "define-properties": "^1.2.1",
- "es-abstract": "^1.23.0",
- "es-object-atoms": "^1.0.0",
- "is-string": "^1.0.7"
+ "es-define-property": "^1.0.0",
+ "es-errors": "^1.3.0",
+ "function-bind": "^1.1.2",
+ "get-intrinsic": "^1.2.4",
+ "set-function-length": "^1.2.1"
},
"engines": {
"node": ">= 0.4"
@@ -3194,11977 +3178,2418 @@
"url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/array.prototype.findlastindex": {
- "version": "1.2.5",
- "resolved": "https://registry.npmjs.org/array.prototype.findlastindex/-/array.prototype.findlastindex-1.2.5.tgz",
- "integrity": "sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==",
+ "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,
"license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.7",
- "define-properties": "^1.2.1",
- "es-abstract": "^1.23.2",
- "es-errors": "^1.3.0",
- "es-object-atoms": "^1.0.0",
- "es-shim-unscopables": "^1.0.2"
- },
"engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
+ "node": ">=6"
}
},
- "node_modules/array.prototype.flat": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz",
- "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==",
+ "node_modules/camel-case": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-4.1.2.tgz",
+ "integrity": "sha512-gxGWBrTT1JuMx6R+o5PTXMmUnhnVzLQ9SNutD4YqKtI6ap897t3tKECYla6gCWEkplXnlNybEkZg9GEGxKFCgw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "es-shim-unscopables": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
+ "pascal-case": "^3.1.2",
+ "tslib": "^2.0.3"
}
},
- "node_modules/array.prototype.flatmap": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz",
- "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==",
+ "node_modules/caniuse-lite": {
+ "version": "1.0.30001663",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001663.tgz",
+ "integrity": "sha512-o9C3X27GLKbLeTYZ6HBOLU1tsAcBZsLis28wrVzddShCS16RujjHp9GDHKZqrB3meE0YjhawvMFsGb/igqiPzA==",
"dev": true,
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
+ }
+ ],
+ "license": "CC-BY-4.0"
+ },
+ "node_modules/canvas-to-buffer": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/canvas-to-buffer/-/canvas-to-buffer-4.1.0.tgz",
+ "integrity": "sha512-kN+EulChYR+D+m5JjFowKJniavPJtsCXjBPZ/9iQQNK19J7d8mV23GBwjnvt6S29j7+Dm74wJPXs1fHF/gtmww==",
"license": "MIT",
"dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "es-shim-unscopables": "^1.0.0"
+ "typedarray-to-buffer": "4.0.0"
},
"engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
+ "node": ">=20.12.2",
+ "npm": ">=10.5.0"
}
},
- "node_modules/arraybuffer.prototype.slice": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz",
- "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==",
+ "node_modules/case-sensitive-paths-webpack-plugin": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/case-sensitive-paths-webpack-plugin/-/case-sensitive-paths-webpack-plugin-2.4.0.tgz",
+ "integrity": "sha512-roIFONhcxog0JSSWbvVAh3OocukmSgpqOH6YpMkCvav/ySIV3JKg4Dc8vYtQjYi/UxpNE36r/9v+VqTQqgkYmw==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "array-buffer-byte-length": "^1.0.1",
- "call-bind": "^1.0.5",
- "define-properties": "^1.2.1",
- "es-abstract": "^1.22.3",
- "es-errors": "^1.2.1",
- "get-intrinsic": "^1.2.3",
- "is-array-buffer": "^3.0.4",
- "is-shared-array-buffer": "^1.0.2"
- },
"engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
+ "node": ">=4"
}
},
- "node_modules/asap": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/asap/-/asap-2.0.6.tgz",
- "integrity": "sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA==",
- "license": "MIT"
- },
- "node_modules/asn1.js": {
- "version": "4.10.1",
- "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz",
- "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==",
+ "node_modules/chai": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/chai/-/chai-5.1.1.tgz",
+ "integrity": "sha512-pT1ZgP8rPNqUgieVaEY+ryQr6Q4HXNg8Ei9UnLUrjN4IA7dvQC5JB+/kxVcPNDHyBcc/26CXPkbNzq3qwrOEKA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "bn.js": "^4.0.0",
- "inherits": "^2.0.1",
- "minimalistic-assert": "^1.0.0"
- }
- },
- "node_modules/asn1.js/node_modules/bn.js": {
- "version": "4.12.0",
- "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
- "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
- "dev": true,
- "license": "MIT"
+ "assertion-error": "^2.0.1",
+ "check-error": "^2.1.1",
+ "deep-eql": "^5.0.1",
+ "loupe": "^3.1.0",
+ "pathval": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=12"
+ }
},
- "node_modules/assert": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.1.tgz",
- "integrity": "sha512-zzw1uCAgLbsKwBfFc8CX78DDg+xZeBksSO3vwVIDDN5i94eOrPsSSyiVhmsSABFDM/OcpE2aagCat9dnWQLG1A==",
+ "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,
"license": "MIT",
"dependencies": {
- "object.assign": "^4.1.4",
- "util": "^0.10.4"
+ "ansi-styles": "^3.2.1",
+ "escape-string-regexp": "^1.0.5",
+ "supports-color": "^5.3.0"
+ },
+ "engines": {
+ "node": ">=4"
}
},
- "node_modules/assert/node_modules/inherits": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
- "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/assert/node_modules/util": {
- "version": "0.10.4",
- "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz",
- "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==",
+ "node_modules/chalk/node_modules/escape-string-regexp": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
+ "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "inherits": "2.0.3"
+ "engines": {
+ "node": ">=0.8.0"
}
},
- "node_modules/assign-symbols": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz",
- "integrity": "sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==",
+ "node_modules/check-error": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/check-error/-/check-error-2.1.1.tgz",
+ "integrity": "sha512-OAlb+T7V4Op9OwdkjmguYRqncdlx5JiofwOAUkmTF+jNdHwzTaTs4sRAGpzLF3oOz5xAyDGrPgeIDFQmDOTiJw==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 16"
}
},
- "node_modules/async-done": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/async-done/-/async-done-1.3.2.tgz",
- "integrity": "sha512-uYkTP8dw2og1tu1nmza1n1CMW0qb8gWWlwqMmLb7MhBVs4BXrFziT6HXUd+/RlRA/i4H9AkofYloUbs1fwMqlw==",
+ "node_modules/chromatic": {
+ "version": "11.12.0",
+ "resolved": "https://registry.npmjs.org/chromatic/-/chromatic-11.12.0.tgz",
+ "integrity": "sha512-7nHjFrGoRcGVNSGUmVdAGfWDN97z74D4Q5da48IAt4CcougEffVr+WWmJYqJ/WUa7by0/Ny5iYyX3FMz40juxw==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "end-of-stream": "^1.1.0",
- "once": "^1.3.2",
- "process-nextick-args": "^2.0.0",
- "stream-exhaust": "^1.0.1"
+ "bin": {
+ "chroma": "dist/bin.js",
+ "chromatic": "dist/bin.js",
+ "chromatic-cli": "dist/bin.js"
},
- "engines": {
- "node": ">= 0.10"
+ "peerDependencies": {
+ "@chromatic-com/cypress": "^0.*.* || ^1.0.0",
+ "@chromatic-com/playwright": "^0.*.* || ^1.0.0"
+ },
+ "peerDependenciesMeta": {
+ "@chromatic-com/cypress": {
+ "optional": true
+ },
+ "@chromatic-com/playwright": {
+ "optional": true
+ }
}
},
- "node_modules/async-each": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.6.tgz",
- "integrity": "sha512-c646jH1avxr+aVpndVMeAfYw7wAa6idufrlN3LPA4PmKS0QEGp6PIC9nwz0WQkkvBGAMEki3pFdtxaF39J9vvg==",
+ "node_modules/chrome-trace-event": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.4.tgz",
+ "integrity": "sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==",
"dev": true,
- "funding": [
- {
- "type": "individual",
- "url": "https://paulmillr.com/funding/"
- }
- ],
- "license": "MIT"
- },
- "node_modules/async-limiter": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz",
- "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==",
- "license": "MIT"
+ "license": "MIT",
+ "engines": {
+ "node": ">=6.0"
+ }
},
- "node_modules/async-settle": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/async-settle/-/async-settle-1.0.0.tgz",
- "integrity": "sha512-VPXfB4Vk49z1LHHodrEQ6Xf7W4gg1w0dAPROHngx7qgDjqmIQ+fXmwgGXTW/ITLai0YLSvWepJOP9EVpMnEAcw==",
+ "node_modules/cipher-base": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz",
+ "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==",
"dev": true,
"license": "MIT",
"dependencies": {
- "async-done": "^1.2.2"
- },
- "engines": {
- "node": ">= 0.10"
+ "inherits": "^2.0.1",
+ "safe-buffer": "^5.0.1"
}
},
- "node_modules/asynckit": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
- "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==",
+ "node_modules/cjs-module-lexer": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-1.4.1.tgz",
+ "integrity": "sha512-cuSVIHi9/9E/+821Qjdvngor+xpnlwnuwIyZOaLmHBVdXL+gP+I6QQB9VkO7RI77YIcTV+S1W9AreJ5eN63JBA==",
+ "dev": true,
"license": "MIT"
},
- "node_modules/atob": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/atob/-/atob-2.1.2.tgz",
- "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==",
- "dev": true,
- "license": "(MIT OR Apache-2.0)",
- "bin": {
- "atob": "bin/atob.js"
- },
- "engines": {
- "node": ">= 4.5.0"
+ "node_modules/class-list": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/class-list/-/class-list-0.1.1.tgz",
+ "integrity": "sha512-zqR0uW+VsLtyQhixBhkdQ+z6B8+Y8HTh28kdSVjJ4zTTKM7Xz2asAQSya9VI6m/34F6N6Ktm0mrchKB+E5a8Xw==",
+ "dependencies": {
+ "indexof": "0.0.1"
}
},
- "node_modules/audio-sample": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/audio-sample/-/audio-sample-4.1.0.tgz",
- "integrity": "sha512-7cWMCj7v7uH5l7m5ArN7Ycy6G4mYCYNr4ALU7baJf/frNYbn35CdVPdiAFSBmU84g39KDWbJFHcPIcFP/IdDVQ==",
+ "node_modules/clean-css": {
+ "version": "5.3.3",
+ "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-5.3.3.tgz",
+ "integrity": "sha512-D5J+kHaVb/wKSFcyyV75uCn8fiY4sV38XJoe4CUyGQ+mOU/fMVYUdH1hJC+CJQ5uY3EnW27SbJYS4X8BiLrAFg==",
+ "dev": true,
"license": "MIT",
"dependencies": {
- "typedarray-to-buffer": "4.0.0"
+ "source-map": "~0.6.0"
},
"engines": {
- "node": ">=20.12.2",
- "npm": ">=10.5.0"
+ "node": ">= 10.0"
}
},
- "node_modules/audit-ci": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/audit-ci/-/audit-ci-7.1.0.tgz",
- "integrity": "sha512-PjjEejlST57S/aDbeWLic0glJ8CNl/ekY3kfGFPMrPkmuaYaDKcMH0F9x9yS9Vp6URhuefSCubl/G0Y2r6oP0g==",
+ "node_modules/clean-css/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "cross-spawn": "^7.0.3",
- "escape-string-regexp": "^4.0.0",
- "event-stream": "4.0.1",
- "jju": "^1.4.0",
- "jsonstream-next": "^3.0.0",
- "readline-transform": "1.0.0",
- "semver": "^7.0.0",
- "tslib": "^2.0.0",
- "yargs": "^17.0.0"
- },
- "bin": {
- "audit-ci": "dist/bin.js"
- },
+ "license": "BSD-3-Clause",
"engines": {
- "node": ">=16"
+ "node": ">=0.10.0"
}
},
- "node_modules/audit-ci/node_modules/semver": {
- "version": "7.6.3",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
- "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
+ "node_modules/cliui": {
+ "version": "8.0.1",
+ "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz",
+ "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
"dev": true,
"license": "ISC",
- "bin": {
- "semver": "bin/semver.js"
+ "dependencies": {
+ "string-width": "^4.2.0",
+ "strip-ansi": "^6.0.1",
+ "wrap-ansi": "^7.0.0"
},
"engines": {
- "node": ">=10"
+ "node": ">=12"
}
},
- "node_modules/autoprefixer": {
- "version": "10.4.20",
- "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.20.tgz",
- "integrity": "sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==",
+ "node_modules/cliui/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,
- "funding": [
- {
- "type": "opencollective",
- "url": "https://opencollective.com/postcss/"
- },
- {
- "type": "tidelift",
- "url": "https://tidelift.com/funding/github/npm/autoprefixer"
- },
- {
- "type": "github",
- "url": "https://github.com/sponsors/ai"
- }
- ],
"license": "MIT",
"dependencies": {
- "browserslist": "^4.23.3",
- "caniuse-lite": "^1.0.30001646",
- "fraction.js": "^4.3.7",
- "normalize-range": "^0.1.2",
- "picocolors": "^1.0.1",
- "postcss-value-parser": "^4.2.0"
- },
- "bin": {
- "autoprefixer": "bin/autoprefixer"
+ "color-convert": "^2.0.1"
},
"engines": {
- "node": "^10 || ^12 || >=14"
+ "node": ">=8"
},
- "peerDependencies": {
- "postcss": "^8.1.0"
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
- "node_modules/available-typed-arrays": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz",
- "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==",
+ "node_modules/cliui/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,
"license": "MIT",
"dependencies": {
- "possible-typed-array-names": "^1.0.0"
+ "color-name": "~1.1.4"
},
"engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
+ "node": ">=7.0.0"
}
},
- "node_modules/babel-plugin-polyfill-corejs2": {
- "version": "0.4.11",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.11.tgz",
- "integrity": "sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==",
+ "node_modules/cliui/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,
- "license": "MIT",
- "dependencies": {
- "@babel/compat-data": "^7.22.6",
- "@babel/helper-define-polyfill-provider": "^0.6.2",
- "semver": "^6.3.1"
- },
- "peerDependencies": {
- "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0"
- }
+ "license": "MIT"
},
- "node_modules/babel-plugin-polyfill-corejs3": {
- "version": "0.10.6",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.6.tgz",
- "integrity": "sha512-b37+KR2i/khY5sKmWNVQAnitvquQbNdWy6lJdsr0kmquCKEEUgMKK4SboVM3HtfnZilfjr4MMQ7vY58FVWDtIA==",
+ "node_modules/cliui/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,
- "license": "MIT",
- "dependencies": {
- "@babel/helper-define-polyfill-provider": "^0.6.2",
- "core-js-compat": "^3.38.0"
- },
- "peerDependencies": {
- "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0"
- }
+ "license": "MIT"
},
- "node_modules/babel-plugin-polyfill-regenerator": {
- "version": "0.6.2",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.2.tgz",
- "integrity": "sha512-2R25rQZWP63nGwaAswvDazbPXfrM3HwVoBXK6HcqeKrSrL/JqcC/rDcf95l4r7LXLyxDXc8uQDa064GubtCABg==",
+ "node_modules/cliui/node_modules/string-width": {
+ "version": "4.2.3",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
+ "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/helper-define-polyfill-provider": "^0.6.2"
+ "emoji-regex": "^8.0.0",
+ "is-fullwidth-code-point": "^3.0.0",
+ "strip-ansi": "^6.0.1"
},
- "peerDependencies": {
- "@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0"
+ "engines": {
+ "node": ">=8"
}
},
- "node_modules/babelify": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/babelify/-/babelify-10.0.0.tgz",
- "integrity": "sha512-X40FaxyH7t3X+JFAKvb1H9wooWKLRCi8pg3m8poqtdZaIng+bjzp9RvKQCvRjF9isHiPkXspbbXT/zwXLtwgwg==",
+ "node_modules/cliui/node_modules/wrap-ansi": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
+ "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
"dev": true,
"license": "MIT",
+ "dependencies": {
+ "ansi-styles": "^4.0.0",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^6.0.0"
+ },
"engines": {
- "node": ">=6.9.0"
+ "node": ">=10"
},
- "peerDependencies": {
- "@babel/core": "^7.0.0"
+ "funding": {
+ "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
}
},
- "node_modules/bach": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/bach/-/bach-1.2.0.tgz",
- "integrity": "sha512-bZOOfCb3gXBXbTFXq3OZtGR88LwGeJvzu6szttaIzymOTS4ZttBNOWSv7aLZja2EMycKtRYV0Oa8SNKH/zkxvg==",
+ "node_modules/color-convert": {
+ "version": "1.9.3",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
+ "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "arr-filter": "^1.1.1",
- "arr-flatten": "^1.0.1",
- "arr-map": "^2.0.0",
- "array-each": "^1.0.0",
- "array-initial": "^1.0.0",
- "array-last": "^1.1.1",
- "async-done": "^1.2.2",
- "async-settle": "^1.0.0",
- "now-and-later": "^2.0.0"
- },
- "engines": {
- "node": ">= 0.10"
+ "color-name": "1.1.3"
}
},
- "node_modules/balanced-match": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
- "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
+ "node_modules/color-name": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
+ "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==",
"dev": true,
"license": "MIT"
},
- "node_modules/base": {
- "version": "0.11.2",
- "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz",
- "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==",
- "dev": true,
+ "node_modules/combined-stream": {
+ "version": "1.0.8",
+ "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
+ "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
"license": "MIT",
"dependencies": {
- "cache-base": "^1.0.1",
- "class-utils": "^0.3.5",
- "component-emitter": "^1.2.1",
- "define-property": "^1.0.0",
- "isobject": "^3.0.1",
- "mixin-deep": "^1.2.0",
- "pascalcase": "^0.1.1"
+ "delayed-stream": "~1.0.0"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.8"
}
},
- "node_modules/base/node_modules/define-property": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
- "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==",
+ "node_modules/comment-parser": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/comment-parser/-/comment-parser-1.4.1.tgz",
+ "integrity": "sha512-buhp5kePrmda3vhc5B9t7pUQXAb2Tnd0qgpkIhPhkHXxJpiPJ11H0ZEU0oBpJ2QztSbzG/ZxMj/CHsYJqRHmyg==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "is-descriptor": "^1.0.0"
- },
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 12.0.0"
}
},
- "node_modules/base/node_modules/is-descriptor": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz",
- "integrity": "sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw==",
- "dev": true,
+ "node_modules/component-emitter": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.1.tgz",
+ "integrity": "sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ==",
"license": "MIT",
- "dependencies": {
- "is-accessor-descriptor": "^1.0.1",
- "is-data-descriptor": "^1.0.1"
- },
- "engines": {
- "node": ">= 0.4"
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/base64-js": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz",
- "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==",
+ "node_modules/concat-map": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
+ "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
"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"
- }
- ],
"license": "MIT"
},
- "node_modules/batch": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz",
- "integrity": "sha512-x+VAiMRL6UPkx+kudNvxTl6hB2XNNCG2r+7wixVfIYwu/2HKRXimwQyaumLjMveWvT2Hkd/cAJw+QBMfJ/EKVw==",
+ "node_modules/console-browserify": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz",
+ "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==",
+ "dev": true
+ },
+ "node_modules/constants-browserify": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz",
+ "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==",
"dev": true,
"license": "MIT"
},
- "node_modules/beeper": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/beeper/-/beeper-1.1.1.tgz",
- "integrity": "sha512-3vqtKL1N45I5dV0RdssXZG7X6pCqQrWPNOlBPZPrd+QkE2HEhR57Z04m0KtpbsZH73j+a3F8UD1TQnn+ExTvIA==",
+ "node_modules/contains": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/contains/-/contains-0.1.1.tgz",
+ "integrity": "sha512-gYfqkG4HpF+/uC1oBvm56WPjG6oRyViz06kQyWlprPp0dYQbMhuijwFffsm1WQW8H2aS9rM6WvK1sPvGPAyTYg=="
+ },
+ "node_modules/content-type": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz",
+ "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.6"
}
},
- "node_modules/binary-extensions": {
- "version": "1.13.1",
- "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz",
- "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==",
+ "node_modules/cookie": {
+ "version": "0.6.0",
+ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz",
+ "integrity": "sha512-U71cyTamuh1CRNCfpGY6to28lxvNwPG4Guz/EVjgf3Jmzv0vlDp1atT9eS5dDjMYHucpHbWns6Lwf3BKz6svdw==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.6"
}
},
- "node_modules/bindings": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz",
- "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==",
+ "node_modules/cookie-signature": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
+ "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ==",
"dev": true,
- "license": "MIT",
- "optional": true,
- "dependencies": {
- "file-uri-to-path": "1.0.0"
- }
+ "license": "MIT"
},
- "node_modules/bl": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/bl/-/bl-1.2.3.tgz",
- "integrity": "sha512-pvcNpa0UU69UT341rO6AYy4FVAIkUHuZXRIWbq+zHnsVcRzDDjIAhGuuYoi0d//cwIwtt4pkpKycWEfjdV+vww==",
- "dev": true,
+ "node_modules/cookiejar": {
+ "version": "2.1.4",
+ "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.4.tgz",
+ "integrity": "sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw==",
+ "license": "MIT"
+ },
+ "node_modules/core-js": {
+ "version": "3.38.1",
+ "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.38.1.tgz",
+ "integrity": "sha512-OP35aUorbU3Zvlx7pjsFdu1rGNnD4pgw/CWoYzRY3t2EzoVT7shKHY1dlAy3f41cGIO7ZDPQimhGFTlEYkG/Hw==",
+ "hasInstallScript": true,
"license": "MIT",
- "dependencies": {
- "readable-stream": "^2.3.5",
- "safe-buffer": "^5.1.1"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/core-js"
}
},
- "node_modules/bn.js": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.1.tgz",
- "integrity": "sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ==",
- "dev": true,
+ "node_modules/core-util-is": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
+ "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==",
"license": "MIT"
},
- "node_modules/body": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/body/-/body-5.1.0.tgz",
- "integrity": "sha512-chUsBxGRtuElD6fmw1gHLpvnKdVLK302peeFa9ZqAEk8TyzZ3fygLyUEDDPTJvL9+Bor0dIwn6ePOsRM2y0zQQ==",
+ "node_modules/cosmiconfig": {
+ "version": "8.3.6",
+ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz",
+ "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==",
"dev": true,
+ "license": "MIT",
"dependencies": {
- "continuable-cache": "^0.3.1",
- "error": "^7.0.0",
- "raw-body": "~1.1.0",
- "safe-json-parse": "~1.0.1"
+ "import-fresh": "^3.3.0",
+ "js-yaml": "^4.1.0",
+ "parse-json": "^5.2.0",
+ "path-type": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/d-fischer"
+ },
+ "peerDependencies": {
+ "typescript": ">=4.9.5"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
}
},
- "node_modules/body-parser": {
- "version": "1.20.3",
- "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz",
- "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==",
+ "node_modules/cosmiconfig/node_modules/parse-json": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz",
+ "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "bytes": "3.1.2",
- "content-type": "~1.0.5",
- "debug": "2.6.9",
- "depd": "2.0.0",
- "destroy": "1.2.0",
- "http-errors": "2.0.0",
- "iconv-lite": "0.4.24",
- "on-finished": "2.4.1",
- "qs": "6.13.0",
- "raw-body": "2.5.2",
- "type-is": "~1.6.18",
- "unpipe": "1.0.0"
+ "@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"
},
"engines": {
- "node": ">= 0.8",
- "npm": "1.2.8000 || >= 1.4.16"
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/body-parser/node_modules/debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "node_modules/create-ecdh": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz",
+ "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==",
"dev": true,
"license": "MIT",
"dependencies": {
- "ms": "2.0.0"
+ "bn.js": "^4.1.0",
+ "elliptic": "^6.5.3"
}
},
- "node_modules/body-parser/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "node_modules/create-ecdh/node_modules/bn.js": {
+ "version": "4.12.0",
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
+ "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
"dev": true,
"license": "MIT"
},
- "node_modules/body/node_modules/bytes": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/bytes/-/bytes-1.0.0.tgz",
- "integrity": "sha512-/x68VkHLeTl3/Ll8IvxdwzhrT+IyKc52e/oyHhA2RwqPqswSnjVbSddfPRwAsJtbilMAPSRWwAlpxdYsSWOTKQ==",
- "dev": true
+ "node_modules/create-error": {
+ "version": "0.3.1",
+ "resolved": "https://registry.npmjs.org/create-error/-/create-error-0.3.1.tgz",
+ "integrity": "sha512-n/Q4aSCtYuuDneEW5Q+nd0IIZwbwmX/oF6wKcDUhXGJNwhmp2WHEoWKz7X+/H7rBtjimInW7f0ceouxU0SmuzQ==",
+ "license": "MIT"
},
- "node_modules/body/node_modules/raw-body": {
- "version": "1.1.7",
- "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-1.1.7.tgz",
- "integrity": "sha512-WmJJU2e9Y6M5UzTOkHaM7xJGAPQD8PNzx3bAd2+uhZAim6wDk6dAZxPVYLF67XhbR4hmKGh33Lpmh4XWrCH5Mg==",
+ "node_modules/create-hash": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
+ "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "bytes": "1",
- "string_decoder": "0.10"
- },
- "engines": {
- "node": ">= 0.8.0"
+ "cipher-base": "^1.0.1",
+ "inherits": "^2.0.1",
+ "md5.js": "^1.3.4",
+ "ripemd160": "^2.0.1",
+ "sha.js": "^2.4.0"
}
},
- "node_modules/body/node_modules/string_decoder": {
- "version": "0.10.31",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
- "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/boolbase": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
- "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/boolean": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/boolean/-/boolean-3.2.0.tgz",
- "integrity": "sha512-d0II/GO9uf9lfUHH2BQsjxzRJZBdsjgsBiW4BvhWk/3qoKwQFjIDVN19PfX8F2D/r9PCMTtLWjYVCFrpeYUzsw==",
- "dev": true,
- "license": "MIT",
- "optional": true
- },
- "node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "node_modules/create-hmac": {
+ "version": "1.1.7",
+ "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
+ "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
+ "cipher-base": "^1.0.3",
+ "create-hash": "^1.1.0",
+ "inherits": "^2.0.1",
+ "ripemd160": "^2.0.0",
+ "safe-buffer": "^5.0.1",
+ "sha.js": "^2.4.8"
}
},
- "node_modules/braces": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz",
- "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==",
+ "node_modules/cross-env": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.3.tgz",
+ "integrity": "sha512-+/HKd6EgcQCJGh2PSjZuUitQBQynKor4wrFbRg4DtAgS1aWO+gU52xpH7M9ScGgXSYmAVS9bIJ8EzuaGw0oNAw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "arr-flatten": "^1.1.0",
- "array-unique": "^0.3.2",
- "extend-shallow": "^2.0.1",
- "fill-range": "^4.0.0",
- "isobject": "^3.0.1",
- "repeat-element": "^1.1.2",
- "snapdragon": "^0.8.1",
- "snapdragon-node": "^2.0.1",
- "split-string": "^3.0.2",
- "to-regex": "^3.0.1"
+ "cross-spawn": "^7.0.1"
+ },
+ "bin": {
+ "cross-env": "src/bin/cross-env.js",
+ "cross-env-shell": "src/bin/cross-env-shell.js"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">=10.14",
+ "npm": ">=6",
+ "yarn": ">=1"
}
},
- "node_modules/brorand": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz",
- "integrity": "sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/browser-launcher": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/browser-launcher/-/browser-launcher-3.0.1.tgz",
- "integrity": "sha512-yvaKVCJrTahuQ8oNAa+Bg+8OFaV4YuqxRyD4NN731WfTrPsx1cBueRrnQE4B7p20pZtOx6l/o7WZYbrc1kOkRw==",
+ "node_modules/cross-spawn": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
+ "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
"dev": true,
"license": "MIT",
"dependencies": {
- "headless": "^1.2.0",
- "minimist": "^1.2.0",
- "mkdirp": "^1.0.4",
- "plist": "^3.0.1",
- "xtend": "^4.0.2"
+ "path-key": "^3.1.0",
+ "shebang-command": "^2.0.0",
+ "which": "^2.0.1"
},
- "bin": {
- "browser-launcher": "bin/cmd.js"
+ "engines": {
+ "node": ">= 8"
}
},
- "node_modules/browser-pack": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/browser-pack/-/browser-pack-6.1.0.tgz",
- "integrity": "sha512-erYug8XoqzU3IfcU8fUgyHqyOXqIE4tUTTQ+7mqUjQlvnXkOO6OlT9c/ZoJVHYoAaqGxr09CN53G7XIsO4KtWA==",
+ "node_modules/crypto-browserify": {
+ "version": "3.12.0",
+ "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz",
+ "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "combine-source-map": "~0.8.0",
- "defined": "^1.0.0",
- "JSONStream": "^1.0.3",
- "safe-buffer": "^5.1.1",
- "through2": "^2.0.0",
- "umd": "^3.0.0"
+ "browserify-cipher": "^1.0.0",
+ "browserify-sign": "^4.0.0",
+ "create-ecdh": "^4.0.0",
+ "create-hash": "^1.1.0",
+ "create-hmac": "^1.1.0",
+ "diffie-hellman": "^5.0.0",
+ "inherits": "^2.0.1",
+ "pbkdf2": "^3.0.3",
+ "public-encrypt": "^4.0.0",
+ "randombytes": "^2.0.0",
+ "randomfill": "^1.0.3"
},
- "bin": {
- "browser-pack": "bin/cmd.js"
+ "engines": {
+ "node": "*"
}
},
- "node_modules/browser-resolve": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/browser-resolve/-/browser-resolve-2.0.0.tgz",
- "integrity": "sha512-7sWsQlYL2rGLy2IWm8WL8DCTJvYLc/qlOnsakDac87SOoCd16WLsaAMdCiAqsTNHIe+SXfaqyxyo6THoWqs8WQ==",
+ "node_modules/css.escape": {
+ "version": "1.5.1",
+ "resolved": "https://registry.npmjs.org/css.escape/-/css.escape-1.5.1.tgz",
+ "integrity": "sha512-YUifsXXuknHlUsmlgyY0PKzgPOr7/FjCePfHNt0jxm83wHZi44VDMQ7/fGNkjY3/jV1MC+1CmZbaHzugyeRtpg==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "resolve": "^1.17.0"
- }
+ "license": "MIT"
},
- "node_modules/browser-run": {
- "version": "12.0.0",
- "resolved": "https://registry.npmjs.org/browser-run/-/browser-run-12.0.0.tgz",
- "integrity": "sha512-yzkrApFtKOHxShyh0WksbO1ZOZzyLiQAiDS1vI8rGM+hIXjDUPgR3R1ZeSzwxgpwE+1D7f0fTiyrko4Knv3qiw==",
+ "node_modules/csstype": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz",
+ "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==",
"dev": true,
+ "license": "MIT"
+ },
+ "node_modules/debug": {
+ "version": "4.3.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
+ "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
"license": "MIT",
"dependencies": {
- "browser-launcher": "^3.0.1",
- "duplexer": "^0.1.1",
- "ecstatic": "^4.1.2",
- "electron-stream": "^11.0.0",
- "enstore": "^1.0.1",
- "html-inject-script": "^2.0.0",
- "server-destroy": "^1.0.1",
- "source-map-support": "^0.4.0",
- "through": "^2.3.8",
- "xhr-write-stream": "^0.1.2",
- "xtend": "^4.0.1",
- "yargs": "^16.2.0"
- },
- "bin": {
- "browser-run": "bin/bin.js"
- },
- "engines": {
- "node": ">=14"
- }
- },
- "node_modules/browser-run/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,
- "license": "MIT",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/browser-run/node_modules/cliui": {
- "version": "7.0.4",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz",
- "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.0",
- "wrap-ansi": "^7.0.0"
- }
- },
- "node_modules/browser-run/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,
- "license": "MIT",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/browser-run/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,
- "license": "MIT"
- },
- "node_modules/browser-run/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,
- "license": "MIT"
- },
- "node_modules/browser-run/node_modules/string-width": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
- "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "emoji-regex": "^8.0.0",
- "is-fullwidth-code-point": "^3.0.0",
- "strip-ansi": "^6.0.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/browser-run/node_modules/wrap-ansi": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
- "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
- }
- },
- "node_modules/browser-run/node_modules/yargs": {
- "version": "16.2.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
- "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "cliui": "^7.0.2",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
- "require-directory": "^2.1.1",
- "string-width": "^4.2.0",
- "y18n": "^5.0.5",
- "yargs-parser": "^20.2.2"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/browser-run/node_modules/yargs-parser": {
- "version": "20.2.9",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz",
- "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==",
- "dev": true,
- "license": "ISC",
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/browser-split": {
- "version": "0.0.0",
- "resolved": "https://registry.npmjs.org/browser-split/-/browser-split-0.0.0.tgz",
- "integrity": "sha512-CNXO3AXAS1H/kOGQkPjucm1161/XoF3aVkMfujqwk85XN/D/MkQMvoB81lXyX/2rerZS+hPAYYRR3mAW05awjQ==",
- "license": "MIT"
- },
- "node_modules/browserify": {
- "version": "17.0.0",
- "resolved": "https://registry.npmjs.org/browserify/-/browserify-17.0.0.tgz",
- "integrity": "sha512-SaHqzhku9v/j6XsQMRxPyBrSP3gnwmE27gLJYZgMT2GeK3J0+0toN+MnuNYDfHwVGQfLiMZ7KSNSIXHemy905w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "assert": "^1.4.0",
- "browser-pack": "^6.0.1",
- "browser-resolve": "^2.0.0",
- "browserify-zlib": "~0.2.0",
- "buffer": "~5.2.1",
- "cached-path-relative": "^1.0.0",
- "concat-stream": "^1.6.0",
- "console-browserify": "^1.1.0",
- "constants-browserify": "~1.0.0",
- "crypto-browserify": "^3.0.0",
- "defined": "^1.0.0",
- "deps-sort": "^2.0.1",
- "domain-browser": "^1.2.0",
- "duplexer2": "~0.1.2",
- "events": "^3.0.0",
- "glob": "^7.1.0",
- "has": "^1.0.0",
- "htmlescape": "^1.1.0",
- "https-browserify": "^1.0.0",
- "inherits": "~2.0.1",
- "insert-module-globals": "^7.2.1",
- "JSONStream": "^1.0.3",
- "labeled-stream-splicer": "^2.0.0",
- "mkdirp-classic": "^0.5.2",
- "module-deps": "^6.2.3",
- "os-browserify": "~0.3.0",
- "parents": "^1.0.1",
- "path-browserify": "^1.0.0",
- "process": "~0.11.0",
- "punycode": "^1.3.2",
- "querystring-es3": "~0.2.0",
- "read-only-stream": "^2.0.0",
- "readable-stream": "^2.0.2",
- "resolve": "^1.1.4",
- "shasum-object": "^1.0.0",
- "shell-quote": "^1.6.1",
- "stream-browserify": "^3.0.0",
- "stream-http": "^3.0.0",
- "string_decoder": "^1.1.1",
- "subarg": "^1.0.0",
- "syntax-error": "^1.1.1",
- "through2": "^2.0.0",
- "timers-browserify": "^1.0.1",
- "tty-browserify": "0.0.1",
- "url": "~0.11.0",
- "util": "~0.12.0",
- "vm-browserify": "^1.0.0",
- "xtend": "^4.0.0"
- },
- "bin": {
- "browserify": "bin/cmd.js"
- },
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/browserify-aes": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/browserify-aes/-/browserify-aes-1.2.0.tgz",
- "integrity": "sha512-+7CHXqGuspUn/Sl5aO7Ea0xWGAtETPXNSAjHo48JfLdPWcMng33Xe4znFvQweqc/uzk5zSOI3H52CYnjCfb5hA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "buffer-xor": "^1.0.3",
- "cipher-base": "^1.0.0",
- "create-hash": "^1.1.0",
- "evp_bytestokey": "^1.0.3",
- "inherits": "^2.0.1",
- "safe-buffer": "^5.0.1"
- }
- },
- "node_modules/browserify-cipher": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/browserify-cipher/-/browserify-cipher-1.0.1.tgz",
- "integrity": "sha512-sPhkz0ARKbf4rRQt2hTpAHqn47X3llLkUGn+xEJzLjwY8LRs2p0v7ljvI5EyoRO/mexrNunNECisZs+gw2zz1w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "browserify-aes": "^1.0.4",
- "browserify-des": "^1.0.0",
- "evp_bytestokey": "^1.0.0"
- }
- },
- "node_modules/browserify-des": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/browserify-des/-/browserify-des-1.0.2.tgz",
- "integrity": "sha512-BioO1xf3hFwz4kc6iBhI3ieDFompMhrMlnDFC4/0/vd5MokpuAc3R+LYbwTA9A5Yc9pq9UYPqffKpW2ObuwX5A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "cipher-base": "^1.0.1",
- "des.js": "^1.0.0",
- "inherits": "^2.0.1",
- "safe-buffer": "^5.1.2"
- }
- },
- "node_modules/browserify-rsa": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.1.0.tgz",
- "integrity": "sha512-AdEER0Hkspgno2aR97SAf6vi0y0k8NuOpGnVH3O99rcA5Q6sh8QxcngtHuJ6uXwnfAXNM4Gn1Gb7/MV1+Ymbog==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "bn.js": "^5.0.0",
- "randombytes": "^2.0.1"
- }
- },
- "node_modules/browserify-sign": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.3.tgz",
- "integrity": "sha512-JWCZW6SKhfhjJxO8Tyiiy+XYB7cqd2S5/+WeYHsKdNKFlCBhKbblba1A/HN/90YwtxKc8tCErjffZl++UNmGiw==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "bn.js": "^5.2.1",
- "browserify-rsa": "^4.1.0",
- "create-hash": "^1.2.0",
- "create-hmac": "^1.1.7",
- "elliptic": "^6.5.5",
- "hash-base": "~3.0",
- "inherits": "^2.0.4",
- "parse-asn1": "^5.1.7",
- "readable-stream": "^2.3.8",
- "safe-buffer": "^5.2.1"
- },
- "engines": {
- "node": ">= 0.12"
- }
- },
- "node_modules/browserify-zlib": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/browserify-zlib/-/browserify-zlib-0.2.0.tgz",
- "integrity": "sha512-Z942RysHXmJrhqk88FmKBVq/v5tqmSkDz7p54G/MGyjMnCFFnC79XWNbg+Vta8W6Wb2qtSZTSxIGkJrRpCFEiA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "pako": "~1.0.5"
- }
- },
- "node_modules/browserify/node_modules/glob": {
- "version": "7.2.3",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
- "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
- "deprecated": "Glob versions prior to v9 are no longer supported",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.1.1",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- },
- "engines": {
- "node": "*"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/browserslist": {
- "version": "4.23.3",
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.3.tgz",
- "integrity": "sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==",
- "funding": [
- {
- "type": "opencollective",
- "url": "https://opencollective.com/browserslist"
- },
- {
- "type": "tidelift",
- "url": "https://tidelift.com/funding/github/npm/browserslist"
- },
- {
- "type": "github",
- "url": "https://github.com/sponsors/ai"
- }
- ],
- "license": "MIT",
- "dependencies": {
- "caniuse-lite": "^1.0.30001646",
- "electron-to-chromium": "^1.5.4",
- "node-releases": "^2.0.18",
- "update-browserslist-db": "^1.1.0"
- },
- "bin": {
- "browserslist": "cli.js"
- },
- "engines": {
- "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7"
- }
- },
- "node_modules/buffer": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.2.1.tgz",
- "integrity": "sha512-c+Ko0loDaFfuPWiL02ls9Xd3GO3cPVmUobQ6t3rXNUk304u6hGq+8N/kFi+QEIKhzK3uwolVhLzszmfLmMLnqg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "base64-js": "^1.0.2",
- "ieee754": "^1.1.4"
- }
- },
- "node_modules/buffer-crc32": {
- "version": "0.2.13",
- "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
- "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "*"
- }
- },
- "node_modules/buffer-equal": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-1.0.1.tgz",
- "integrity": "sha512-QoV3ptgEaQpvVwbXdSO39iqPQTCxSF7A5U99AxbHYqUdCizL/lH2Z0A2y6nbZucxMEOtNyZfG2s6gsVugGpKkg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/buffer-from": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
- "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/buffer-xor": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz",
- "integrity": "sha512-571s0T7nZWK6vB67HI5dyUF7wXiNcfaPPPTl6zYCNApANjIvYJTg7hlud/+cJpdAhS7dVzqMLmfhfHR3rAcOjQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/bufferstreams": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/bufferstreams/-/bufferstreams-3.0.0.tgz",
- "integrity": "sha512-Qg0ggJUWJq90vtg4lDsGN9CDWvzBMQxhiEkSOD/sJfYt6BLect3eV1/S6K7SCSKJ34n60rf6U5eUPmQENVE4UA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "readable-stream": "^3.4.0"
- },
- "engines": {
- "node": ">=8.12.0"
- }
- },
- "node_modules/bufferstreams/node_modules/readable-stream": {
- "version": "3.6.2",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
- "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.3",
- "string_decoder": "^1.1.1",
- "util-deprecate": "^1.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/builtin-status-codes": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz",
- "integrity": "sha512-HpGFw18DgFWlncDfjTa2rcQ4W88O1mC8e8yZ2AvQY5KDaktSTwo+KRf6nHK6FRI5FyRyb/5T6+TSxfP7QyGsmQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/bump-regex": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/bump-regex/-/bump-regex-4.1.0.tgz",
- "integrity": "sha512-75Kr/Iw6lqnOKF/7YpE0WyOMBaaSpdrXTquIxR0qbTgZxwJos6563zNSn+w/LPJUoL4DXq20QX9AQy4+UJbyhw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "semver": "^5.1.0"
- },
- "engines": {
- "node": ">= 4.0.0"
- }
- },
- "node_modules/bump-regex/node_modules/semver": {
- "version": "5.7.2",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
- "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
- "dev": true,
- "license": "ISC",
- "bin": {
- "semver": "bin/semver"
- }
- },
- "node_modules/bytes": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz",
- "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/cache-base": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/cache-base/-/cache-base-1.0.1.tgz",
- "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "collection-visit": "^1.0.0",
- "component-emitter": "^1.2.1",
- "get-value": "^2.0.6",
- "has-value": "^1.0.0",
- "isobject": "^3.0.1",
- "set-value": "^2.0.0",
- "to-object-path": "^0.3.0",
- "union-value": "^1.0.0",
- "unset-value": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/cacheable-lookup": {
- "version": "5.0.4",
- "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-5.0.4.tgz",
- "integrity": "sha512-2/kNscPhpcxrOigMZzbiWF7dz8ilhb/nIHU3EyZiXWXpeq/au8qJ8VhdftMkty3n7Gj6HIGalQG8oiBNB3AJgA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=10.6.0"
- }
- },
- "node_modules/cacheable-request": {
- "version": "7.0.4",
- "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.4.tgz",
- "integrity": "sha512-v+p6ongsrp0yTGbJXjgxPow2+DL93DASP4kXCDKb8/bwRtt9OEF3whggkkDkGNzgcWy2XaF4a8nZglC7uElscg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "clone-response": "^1.0.2",
- "get-stream": "^5.1.0",
- "http-cache-semantics": "^4.0.0",
- "keyv": "^4.0.0",
- "lowercase-keys": "^2.0.0",
- "normalize-url": "^6.0.1",
- "responselike": "^2.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/cached-path-relative": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/cached-path-relative/-/cached-path-relative-1.1.0.tgz",
- "integrity": "sha512-WF0LihfemtesFcJgO7xfOoOcnWzY/QHR4qeDqV44jPU3HTI54+LnfXK3SA27AVVGCdZFgjjFFaqUA9Jx7dMJZA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/call-bind": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.7.tgz",
- "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==",
- "license": "MIT",
- "dependencies": {
- "es-define-property": "^1.0.0",
- "es-errors": "^1.3.0",
- "function-bind": "^1.1.2",
- "get-intrinsic": "^1.2.4",
- "set-function-length": "^1.2.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "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,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "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,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/camelcase-keys": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
- "integrity": "sha512-bA/Z/DERHKqoEOrp+qeGKw1QlvEQkGZSc0XaY6VnTxZr+Kv1G5zFwttpjv8qxZ/sBPT4nthwZaAcsAZTJlSKXQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "camelcase": "^2.0.0",
- "map-obj": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/camelcase-keys/node_modules/camelcase": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
- "integrity": "sha512-DLIsRzJVBQu72meAKPkWQOLcujdXT32hwdfnkI1frSiSRMK1MofjKHf+MEx0SB6fjEFXL8fBDv1dKymBlOp4Qw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/caniuse-api": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-3.0.0.tgz",
- "integrity": "sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "browserslist": "^4.0.0",
- "caniuse-lite": "^1.0.0",
- "lodash.memoize": "^4.1.2",
- "lodash.uniq": "^4.5.0"
- }
- },
- "node_modules/caniuse-api/node_modules/lodash.memoize": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz",
- "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/caniuse-lite": {
- "version": "1.0.30001663",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001663.tgz",
- "integrity": "sha512-o9C3X27GLKbLeTYZ6HBOLU1tsAcBZsLis28wrVzddShCS16RujjHp9GDHKZqrB3meE0YjhawvMFsGb/igqiPzA==",
- "funding": [
- {
- "type": "opencollective",
- "url": "https://opencollective.com/browserslist"
- },
- {
- "type": "tidelift",
- "url": "https://tidelift.com/funding/github/npm/caniuse-lite"
- },
- {
- "type": "github",
- "url": "https://github.com/sponsors/ai"
- }
- ],
- "license": "CC-BY-4.0"
- },
- "node_modules/canvas-to-buffer": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/canvas-to-buffer/-/canvas-to-buffer-4.1.0.tgz",
- "integrity": "sha512-kN+EulChYR+D+m5JjFowKJniavPJtsCXjBPZ/9iQQNK19J7d8mV23GBwjnvt6S29j7+Dm74wJPXs1fHF/gtmww==",
- "license": "MIT",
- "dependencies": {
- "typedarray-to-buffer": "4.0.0"
- },
- "engines": {
- "node": ">=20.12.2",
- "npm": ">=10.5.0"
- }
- },
- "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==",
- "license": "MIT",
- "dependencies": {
- "ansi-styles": "^3.2.1",
- "escape-string-regexp": "^1.0.5",
- "supports-color": "^5.3.0"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/chalk/node_modules/escape-string-regexp": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
- "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
- "license": "MIT",
- "engines": {
- "node": ">=0.8.0"
- }
- },
- "node_modules/charset": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/charset/-/charset-1.0.1.tgz",
- "integrity": "sha512-6dVyOOYjpfFcL1Y4qChrAoQLRHvj2ziyhcm0QJlhOcAhykL/k1kTUPbeo+87MNRTRdk2OIIsIXbuF3x2wi5EXg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=4.0.0"
- }
- },
- "node_modules/chokidar": {
- "version": "2.1.8",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz",
- "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "anymatch": "^2.0.0",
- "async-each": "^1.0.1",
- "braces": "^2.3.2",
- "glob-parent": "^3.1.0",
- "inherits": "^2.0.3",
- "is-binary-path": "^1.0.0",
- "is-glob": "^4.0.0",
- "normalize-path": "^3.0.0",
- "path-is-absolute": "^1.0.0",
- "readdirp": "^2.2.1",
- "upath": "^1.1.1"
- },
- "optionalDependencies": {
- "fsevents": "^1.2.7"
- }
- },
- "node_modules/chokidar/node_modules/glob-parent": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
- "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "is-glob": "^3.1.0",
- "path-dirname": "^1.0.0"
- }
- },
- "node_modules/chokidar/node_modules/glob-parent/node_modules/is-glob": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
- "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-extglob": "^2.1.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/cipher-base": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/cipher-base/-/cipher-base-1.0.4.tgz",
- "integrity": "sha512-Kkht5ye6ZGmwv40uUDZztayT2ThLQGfnj/T71N/XzeZeo3nf8foyW7zGTsPYkEya3m5f3cAypH+qe7YOrM1U2Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.1",
- "safe-buffer": "^5.0.1"
- }
- },
- "node_modules/class-list": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/class-list/-/class-list-0.1.1.tgz",
- "integrity": "sha512-zqR0uW+VsLtyQhixBhkdQ+z6B8+Y8HTh28kdSVjJ4zTTKM7Xz2asAQSya9VI6m/34F6N6Ktm0mrchKB+E5a8Xw==",
- "dependencies": {
- "indexof": "0.0.1"
- }
- },
- "node_modules/class-utils": {
- "version": "0.3.6",
- "resolved": "https://registry.npmjs.org/class-utils/-/class-utils-0.3.6.tgz",
- "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "arr-union": "^3.1.0",
- "define-property": "^0.2.5",
- "isobject": "^3.0.0",
- "static-extend": "^0.1.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "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,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/cliui": {
- "version": "8.0.1",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz",
- "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.1",
- "wrap-ansi": "^7.0.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/cliui/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,
- "license": "MIT",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/cliui/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,
- "license": "MIT",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/cliui/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,
- "license": "MIT"
- },
- "node_modules/cliui/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,
- "license": "MIT"
- },
- "node_modules/cliui/node_modules/string-width": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
- "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "emoji-regex": "^8.0.0",
- "is-fullwidth-code-point": "^3.0.0",
- "strip-ansi": "^6.0.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/cliui/node_modules/wrap-ansi": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
- "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
- }
- },
- "node_modules/clone": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz",
- "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.8"
- }
- },
- "node_modules/clone-buffer": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/clone-buffer/-/clone-buffer-1.0.0.tgz",
- "integrity": "sha512-KLLTJWrvwIP+OPfMn0x2PheDEP20RPUcGXj/ERegTgdmPEZylALQldygiqrPPu8P45uNuPs7ckmReLY6v/iA5g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/clone-response": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.3.tgz",
- "integrity": "sha512-ROoL94jJH2dUVML2Y/5PEDNaSHgeOdSDicUyS7izcF63G6sTc/FTjLub4b8Il9S8S0beOfYt0TaA5qvFK+w0wA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "mimic-response": "^1.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/clone-stats": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-1.0.0.tgz",
- "integrity": "sha512-au6ydSpg6nsrigcZ4m8Bc9hxjeW+GJ8xh5G3BJCMt4WXe1H10UNaVOamqQTmrx1kjVuxAHIQSNU6hY4Nsn9/ag==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/cloneable-readable": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/cloneable-readable/-/cloneable-readable-1.1.3.tgz",
- "integrity": "sha512-2EF8zTQOxYq70Y4XKtorQupqF0m49MBz2/yf5Bj+MHjvpG3Hy7sImifnqD6UA+TKYxeSV+u6qqQPawN5UvnpKQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.1",
- "process-nextick-args": "^2.0.0",
- "readable-stream": "^2.3.5"
- }
- },
- "node_modules/code-point-at": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
- "integrity": "sha512-RpAVKQA5T63xEj6/giIbUEtZwJ4UFIc3ZtvEkiaUERylqe8xb5IvqcgOurZLahv93CLKfxcw5YI+DZcUBRyLXA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/collection-map": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/collection-map/-/collection-map-1.0.0.tgz",
- "integrity": "sha512-5D2XXSpkOnleOI21TG7p3T0bGAsZ/XknZpKBmGYyluO8pw4zA3K8ZlrBIbC4FXg3m6z/RNFiUFfT2sQK01+UHA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "arr-map": "^2.0.2",
- "for-own": "^1.0.0",
- "make-iterator": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/collection-visit": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz",
- "integrity": "sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "map-visit": "^1.0.0",
- "object-visit": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/color-convert": {
- "version": "1.9.3",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
- "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
- "license": "MIT",
- "dependencies": {
- "color-name": "1.1.3"
- }
- },
- "node_modules/color-name": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
- "integrity": "sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==",
- "license": "MIT"
- },
- "node_modules/color-support": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz",
- "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==",
- "dev": true,
- "license": "ISC",
- "bin": {
- "color-support": "bin.js"
- }
- },
- "node_modules/colord": {
- "version": "2.9.3",
- "resolved": "https://registry.npmjs.org/colord/-/colord-2.9.3.tgz",
- "integrity": "sha512-jeC1axXpnb0/2nn/Y1LPuLdgXBLH7aDcHu4KEKfqw3CUhX7ZpfBSlPKyqXE6btIgEzfWtrX3/tyBCaCvXvMkOw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/combine-source-map": {
- "version": "0.8.0",
- "resolved": "https://registry.npmjs.org/combine-source-map/-/combine-source-map-0.8.0.tgz",
- "integrity": "sha512-UlxQ9Vw0b/Bt/KYwCFqdEwsQ1eL8d1gibiFb7lxQJFdvTgc2hIZi6ugsg+kyhzhPV+QEpUiEIwInIAIrgoEkrg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "convert-source-map": "~1.1.0",
- "inline-source-map": "~0.6.0",
- "lodash.memoize": "~3.0.3",
- "source-map": "~0.5.3"
- }
- },
- "node_modules/combine-source-map/node_modules/convert-source-map": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.1.3.tgz",
- "integrity": "sha512-Y8L5rp6jo+g9VEPgvqNfEopjTR4OTYct8lXlS8iVQdmnjDvbdbzYe9rjtFCB9egC86JoNCU61WRY+ScjkZpnIg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/combined-stream": {
- "version": "1.0.8",
- "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
- "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
- "license": "MIT",
- "dependencies": {
- "delayed-stream": "~1.0.0"
- },
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/commander": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz",
- "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 10"
- }
- },
- "node_modules/component-emitter": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.1.tgz",
- "integrity": "sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ==",
- "license": "MIT",
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/concat-map": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
- "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/concat-stream": {
- "version": "1.6.2",
- "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
- "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
- "dev": true,
- "engines": [
- "node >= 0.8"
- ],
- "license": "MIT",
- "dependencies": {
- "buffer-from": "^1.0.0",
- "inherits": "^2.0.3",
- "readable-stream": "^2.2.2",
- "typedarray": "^0.0.6"
- }
- },
- "node_modules/concat-with-sourcemaps": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/concat-with-sourcemaps/-/concat-with-sourcemaps-1.1.0.tgz",
- "integrity": "sha512-4gEjHJFT9e+2W/77h/DS5SGUgwDaOwprX8L/gl5+3ixnzkVJJsZWDSelmN3Oilw3LNDZjZV0yqH1hLG3k6nghg==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "source-map": "^0.6.1"
- }
- },
- "node_modules/concat-with-sourcemaps/node_modules/source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true,
- "license": "BSD-3-Clause",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/connect": {
- "version": "3.7.0",
- "resolved": "https://registry.npmjs.org/connect/-/connect-3.7.0.tgz",
- "integrity": "sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "debug": "2.6.9",
- "finalhandler": "1.1.2",
- "parseurl": "~1.3.3",
- "utils-merge": "1.0.1"
- },
- "engines": {
- "node": ">= 0.10.0"
- }
- },
- "node_modules/connect-livereload": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/connect-livereload/-/connect-livereload-0.6.1.tgz",
- "integrity": "sha512-3R0kMOdL7CjJpU66fzAkCe6HNtd3AavCS4m+uW4KtJjrdGPT0SQEZieAYd+cm+lJoBznNQ4lqipYWkhBMgk00g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "*"
- }
- },
- "node_modules/connect-send-json": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/connect-send-json/-/connect-send-json-1.0.0.tgz",
- "integrity": "sha512-D07r8kLuEsex59cOTQ6t94TconIf0pP3Y6MOdbg4itHA3rJ/sMHsIch09r4zedIz+b+URjOPxB6hs81fok0VQA==",
- "dev": true,
- "license": "Apache2"
- },
- "node_modules/connect/node_modules/debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ms": "2.0.0"
- }
- },
- "node_modules/connect/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/console-browserify": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/console-browserify/-/console-browserify-1.2.0.tgz",
- "integrity": "sha512-ZMkYO/LkF17QvCPqM0gxw8yUzigAOZOSWSHg91FH6orS7vcEj5dVZTidN2fQ14yBSdg97RqhSNwLUXInd52OTA==",
- "dev": true
- },
- "node_modules/constants-browserify": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz",
- "integrity": "sha512-xFxOwqIzR/e1k1gLiWEophSCMqXcwVHIH7akf7b/vxcUeGunlj3hvZaaqxwHsTgn+IndtkQJgSztIDWeumWJDQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/contains": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/contains/-/contains-0.1.1.tgz",
- "integrity": "sha512-gYfqkG4HpF+/uC1oBvm56WPjG6oRyViz06kQyWlprPp0dYQbMhuijwFffsm1WQW8H2aS9rM6WvK1sPvGPAyTYg=="
- },
- "node_modules/content-disposition": {
- "version": "0.5.2",
- "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.2.tgz",
- "integrity": "sha512-kRGRZw3bLlFISDBgwTSA1TMBFN6J6GWDeubmDE3AF+3+yXL8hTWv8r5rkLbqYXY4RjPk/EzHnClI3zQf1cFmHA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/content-type": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz",
- "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/continuable-cache": {
- "version": "0.3.1",
- "resolved": "https://registry.npmjs.org/continuable-cache/-/continuable-cache-0.3.1.tgz",
- "integrity": "sha512-TF30kpKhTH8AGCG3dut0rdd/19B7Z+qCnrMoBLpyQu/2drZdNrrpcjPEoJeSVsQM+8KmWG5O56oPDjSSUsuTyA==",
- "dev": true
- },
- "node_modules/convert-source-map": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
- "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
- "license": "MIT"
- },
- "node_modules/cookiejar": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.4.tgz",
- "integrity": "sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw==",
- "license": "MIT"
- },
- "node_modules/copy-descriptor": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz",
- "integrity": "sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/copy-props": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/copy-props/-/copy-props-2.0.5.tgz",
- "integrity": "sha512-XBlx8HSqrT0ObQwmSzM7WE5k8FxTV75h1DX1Z3n6NhQ/UYYAvInWYmG06vFt7hQZArE2fuO62aihiWIVQwh1sw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "each-props": "^1.3.2",
- "is-plain-object": "^5.0.0"
- }
- },
- "node_modules/core-js": {
- "version": "3.38.1",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.38.1.tgz",
- "integrity": "sha512-OP35aUorbU3Zvlx7pjsFdu1rGNnD4pgw/CWoYzRY3t2EzoVT7shKHY1dlAy3f41cGIO7ZDPQimhGFTlEYkG/Hw==",
- "hasInstallScript": true,
- "license": "MIT",
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/core-js"
- }
- },
- "node_modules/core-js-compat": {
- "version": "3.38.1",
- "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.38.1.tgz",
- "integrity": "sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "browserslist": "^4.23.3"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/core-js"
- }
- },
- "node_modules/core-util-is": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
- "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==",
- "license": "MIT"
- },
- "node_modules/create-ecdh": {
- "version": "4.0.4",
- "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.4.tgz",
- "integrity": "sha512-mf+TCx8wWc9VpuxfP2ht0iSISLZnt0JgWlrOKZiNqyUZWnjIaCIVNQArMHnCZKfEYRg6IM7A+NeJoN8gf/Ws0A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "bn.js": "^4.1.0",
- "elliptic": "^6.5.3"
- }
- },
- "node_modules/create-ecdh/node_modules/bn.js": {
- "version": "4.12.0",
- "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
- "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/create-error": {
- "version": "0.3.1",
- "resolved": "https://registry.npmjs.org/create-error/-/create-error-0.3.1.tgz",
- "integrity": "sha512-n/Q4aSCtYuuDneEW5Q+nd0IIZwbwmX/oF6wKcDUhXGJNwhmp2WHEoWKz7X+/H7rBtjimInW7f0ceouxU0SmuzQ==",
- "license": "MIT"
- },
- "node_modules/create-hash": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/create-hash/-/create-hash-1.2.0.tgz",
- "integrity": "sha512-z00bCGNHDG8mHAkP7CtT1qVu+bFQUPjYq/4Iv3C3kWjTFV10zIjfSoeqXo9Asws8gwSHDGj/hl2u4OGIjapeCg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "cipher-base": "^1.0.1",
- "inherits": "^2.0.1",
- "md5.js": "^1.3.4",
- "ripemd160": "^2.0.1",
- "sha.js": "^2.4.0"
- }
- },
- "node_modules/create-hmac": {
- "version": "1.1.7",
- "resolved": "https://registry.npmjs.org/create-hmac/-/create-hmac-1.1.7.tgz",
- "integrity": "sha512-MJG9liiZ+ogc4TzUwuvbER1JRdgvUFSB5+VR/g5h82fGaIRWMWddtKBHi7/sVhfjQZ6SehlyhvQYrcYkaUIpLg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "cipher-base": "^1.0.3",
- "create-hash": "^1.1.0",
- "inherits": "^2.0.1",
- "ripemd160": "^2.0.0",
- "safe-buffer": "^5.0.1",
- "sha.js": "^2.4.8"
- }
- },
- "node_modules/cross-spawn": {
- "version": "7.0.3",
- "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz",
- "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "path-key": "^3.1.0",
- "shebang-command": "^2.0.0",
- "which": "^2.0.1"
- },
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/crypto-browserify": {
- "version": "3.12.0",
- "resolved": "https://registry.npmjs.org/crypto-browserify/-/crypto-browserify-3.12.0.tgz",
- "integrity": "sha512-fz4spIh+znjO2VjL+IdhEpRJ3YN6sMzITSBijk6FK2UvTqruSQW+/cCZTSNsMiZNvUeq0CqurF+dAbyiGOY6Wg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "browserify-cipher": "^1.0.0",
- "browserify-sign": "^4.0.0",
- "create-ecdh": "^4.0.0",
- "create-hash": "^1.1.0",
- "create-hmac": "^1.1.0",
- "diffie-hellman": "^5.0.0",
- "inherits": "^2.0.1",
- "pbkdf2": "^3.0.3",
- "public-encrypt": "^4.0.0",
- "randombytes": "^2.0.0",
- "randomfill": "^1.0.3"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/crypto-random-string": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-1.0.0.tgz",
- "integrity": "sha512-GsVpkFPlycH7/fRR7Dhcmnoii54gV1nz7y4CWyeFS14N+JVBBhY+r8amRHE4BwSYal7BPTDp8isvAlCxyFt3Hg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/css": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/css/-/css-3.0.0.tgz",
- "integrity": "sha512-DG9pFfwOrzc+hawpmqX/dHYHJG+Bsdb0klhyi1sDneOgGOXy9wQIC8hzyVp1e4NRYDBdxcylvywPkkXCHAzTyQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.4",
- "source-map": "^0.6.1",
- "source-map-resolve": "^0.6.0"
- }
- },
- "node_modules/css-declaration-sorter": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-7.2.0.tgz",
- "integrity": "sha512-h70rUM+3PNFuaBDTLe8wF/cdWu+dOZmb7pJt8Z2sedYbAcQVQV/tEchueg3GWxwqS0cxtbxmaHEdkNACqcvsow==",
- "dev": true,
- "license": "ISC",
- "engines": {
- "node": "^14 || ^16 || >=18"
- },
- "peerDependencies": {
- "postcss": "^8.0.9"
- }
- },
- "node_modules/css-select": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz",
- "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "boolbase": "^1.0.0",
- "css-what": "^6.1.0",
- "domhandler": "^5.0.2",
- "domutils": "^3.0.1",
- "nth-check": "^2.0.1"
- },
- "funding": {
- "url": "https://github.com/sponsors/fb55"
- }
- },
- "node_modules/css-tree": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.3.1.tgz",
- "integrity": "sha512-6Fv1DV/TYw//QF5IzQdqsNDjx/wc8TrMBZsqjL9eW01tWb7R7k/mq+/VXfJCl7SoD5emsJop9cOByJZfs8hYIw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "mdn-data": "2.0.30",
- "source-map-js": "^1.0.1"
- },
- "engines": {
- "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0"
- }
- },
- "node_modules/css-what": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz",
- "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==",
- "dev": true,
- "license": "BSD-2-Clause",
- "engines": {
- "node": ">= 6"
- },
- "funding": {
- "url": "https://github.com/sponsors/fb55"
- }
- },
- "node_modules/css/node_modules/source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true,
- "license": "BSD-3-Clause",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/cssauron": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/cssauron/-/cssauron-1.4.0.tgz",
- "integrity": "sha512-Ht70DcFBh+/ekjVrYS2PlDMdSQEl3OFNmjK6lcn49HptBgilXf/Zwg4uFh9Xn0pX3Q8YOkSjIFOfK2osvdqpBw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "through": "X.X.X"
- }
- },
- "node_modules/cssesc": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz",
- "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "cssesc": "bin/cssesc"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/cssnano": {
- "version": "6.0.5",
- "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-6.0.5.tgz",
- "integrity": "sha512-tpTp/ukgrElwu3ESFY4IvWnGn8eTt8cJhC2aAbtA3lvUlxp6t6UPv8YCLjNnEGiFreT1O0LiOM1U3QyTBVFl2A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "cssnano-preset-default": "^6.0.5",
- "lilconfig": "^3.1.1"
- },
- "engines": {
- "node": "^14 || ^16 || >=18.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/cssnano"
- },
- "peerDependencies": {
- "postcss": "^8.4.31"
- }
- },
- "node_modules/cssnano-preset-default": {
- "version": "6.1.2",
- "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-6.1.2.tgz",
- "integrity": "sha512-1C0C+eNaeN8OcHQa193aRgYexyJtU8XwbdieEjClw+J9d94E41LwT6ivKH0WT+fYwYWB0Zp3I3IZ7tI/BbUbrg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "browserslist": "^4.23.0",
- "css-declaration-sorter": "^7.2.0",
- "cssnano-utils": "^4.0.2",
- "postcss-calc": "^9.0.1",
- "postcss-colormin": "^6.1.0",
- "postcss-convert-values": "^6.1.0",
- "postcss-discard-comments": "^6.0.2",
- "postcss-discard-duplicates": "^6.0.3",
- "postcss-discard-empty": "^6.0.3",
- "postcss-discard-overridden": "^6.0.2",
- "postcss-merge-longhand": "^6.0.5",
- "postcss-merge-rules": "^6.1.1",
- "postcss-minify-font-values": "^6.1.0",
- "postcss-minify-gradients": "^6.0.3",
- "postcss-minify-params": "^6.1.0",
- "postcss-minify-selectors": "^6.0.4",
- "postcss-normalize-charset": "^6.0.2",
- "postcss-normalize-display-values": "^6.0.2",
- "postcss-normalize-positions": "^6.0.2",
- "postcss-normalize-repeat-style": "^6.0.2",
- "postcss-normalize-string": "^6.0.2",
- "postcss-normalize-timing-functions": "^6.0.2",
- "postcss-normalize-unicode": "^6.1.0",
- "postcss-normalize-url": "^6.0.2",
- "postcss-normalize-whitespace": "^6.0.2",
- "postcss-ordered-values": "^6.0.2",
- "postcss-reduce-initial": "^6.1.0",
- "postcss-reduce-transforms": "^6.0.2",
- "postcss-svgo": "^6.0.3",
- "postcss-unique-selectors": "^6.0.4"
- },
- "engines": {
- "node": "^14 || ^16 || >=18.0"
- },
- "peerDependencies": {
- "postcss": "^8.4.31"
- }
- },
- "node_modules/cssnano-utils": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/cssnano-utils/-/cssnano-utils-4.0.2.tgz",
- "integrity": "sha512-ZR1jHg+wZ8o4c3zqf1SIUSTIvm/9mU343FMR6Obe/unskbvpGhZOo1J6d/r8D1pzkRQYuwbcH3hToOuoA2G7oQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "^14 || ^16 || >=18.0"
- },
- "peerDependencies": {
- "postcss": "^8.4.31"
- }
- },
- "node_modules/csso": {
- "version": "5.0.5",
- "resolved": "https://registry.npmjs.org/csso/-/csso-5.0.5.tgz",
- "integrity": "sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "css-tree": "~2.2.0"
- },
- "engines": {
- "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0",
- "npm": ">=7.0.0"
- }
- },
- "node_modules/csso/node_modules/css-tree": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-2.2.1.tgz",
- "integrity": "sha512-OA0mILzGc1kCOCSJerOeqDxDQ4HOh+G8NbOJFOTgOCzpw7fCBubk0fEyxp8AgOL/jvLgYA/uV0cMbe43ElF1JA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "mdn-data": "2.0.28",
- "source-map-js": "^1.0.1"
- },
- "engines": {
- "node": "^10 || ^12.20.0 || ^14.13.0 || >=15.0.0",
- "npm": ">=7.0.0"
- }
- },
- "node_modules/csso/node_modules/mdn-data": {
- "version": "2.0.28",
- "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.28.tgz",
- "integrity": "sha512-aylIc7Z9y4yzHYAJNuESG3hfhC+0Ibp/MAMiaOZgNv4pmEdFyfZhhhny4MNiAfWdBQ1RQ2mfDWmM1x8SvGyp8g==",
- "dev": true,
- "license": "CC0-1.0"
- },
- "node_modules/currently-unhandled": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz",
- "integrity": "sha512-/fITjgjGU50vjQ4FH6eUoYu+iUoUKIXws2hL15JJpIR+BbTxaXQsMuuyjtNh2WqsSBS5nsaZHFsFecyw5CCAng==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "array-find-index": "^1.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/d": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/d/-/d-1.0.2.tgz",
- "integrity": "sha512-MOqHvMWF9/9MX6nza0KgvFH4HpMU0EF5uUDXqX/BtxtU8NfB0QzRtJ8Oe/6SuS4kbhyzVJwjd97EA4PKrzJ8bw==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "es5-ext": "^0.10.64",
- "type": "^2.7.2"
- },
- "engines": {
- "node": ">=0.12"
- }
- },
- "node_modules/dash-ast": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/dash-ast/-/dash-ast-1.0.0.tgz",
- "integrity": "sha512-Vy4dx7gquTeMcQR/hDkYLGUnwVil6vk4FOOct+djUnHOUWt+zJPJAaRIXaAFkPXtJjvlY7o3rfRu0/3hpnwoUA==",
- "dev": true,
- "license": "Apache-2.0"
- },
- "node_modules/data-view-buffer": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.1.tgz",
- "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.6",
- "es-errors": "^1.3.0",
- "is-data-view": "^1.0.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/data-view-byte-length": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz",
- "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.7",
- "es-errors": "^1.3.0",
- "is-data-view": "^1.0.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/data-view-byte-offset": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz",
- "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.6",
- "es-errors": "^1.3.0",
- "is-data-view": "^1.0.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/dateformat": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-2.2.0.tgz",
- "integrity": "sha512-GODcnWq3YGoTnygPfi02ygEiRxqUxpJwuRHjdhJYuxpcZmDq4rjBiXYmbCCzStxo176ixfLT6i4NPwQooRySnw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "*"
- }
- },
- "node_modules/debug": {
- "version": "4.3.7",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
- "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
- "license": "MIT",
- "dependencies": {
- "ms": "^2.1.3"
- },
- "engines": {
- "node": ">=6.0"
- },
- "peerDependenciesMeta": {
- "supports-color": {
- "optional": true
- }
- }
- },
- "node_modules/debug-fabulous": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/debug-fabulous/-/debug-fabulous-1.1.0.tgz",
- "integrity": "sha512-GZqvGIgKNlUnHUPQhepnUZFIMoi3dgZKQBzKDeL2g7oJF9SNAji/AAu36dusFUas0O+pae74lNeoIPHqXWDkLg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "debug": "3.X",
- "memoizee": "0.4.X",
- "object-assign": "4.X"
- }
- },
- "node_modules/debug-fabulous/node_modules/debug": {
- "version": "3.2.7",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
- "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ms": "^2.1.1"
- }
- },
- "node_modules/decamelize": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
- "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/decode-uri-component": {
- "version": "0.2.2",
- "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.2.tgz",
- "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10"
- }
- },
- "node_modules/decompress-response": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz",
- "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "mimic-response": "^3.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/decompress-response/node_modules/mimic-response": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz",
- "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/deep-equal": {
- "version": "2.2.3",
- "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.3.tgz",
- "integrity": "sha512-ZIwpnevOurS8bpT4192sqAowWM76JDKSHYzMLty3BZGSswgq6pBaH3DhCSW5xVAZICZyKdOBPjwww5wfgT/6PA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "array-buffer-byte-length": "^1.0.0",
- "call-bind": "^1.0.5",
- "es-get-iterator": "^1.1.3",
- "get-intrinsic": "^1.2.2",
- "is-arguments": "^1.1.1",
- "is-array-buffer": "^3.0.2",
- "is-date-object": "^1.0.5",
- "is-regex": "^1.1.4",
- "is-shared-array-buffer": "^1.0.2",
- "isarray": "^2.0.5",
- "object-is": "^1.1.5",
- "object-keys": "^1.1.1",
- "object.assign": "^4.1.4",
- "regexp.prototype.flags": "^1.5.1",
- "side-channel": "^1.0.4",
- "which-boxed-primitive": "^1.0.2",
- "which-collection": "^1.0.1",
- "which-typed-array": "^1.1.13"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/deep-equal/node_modules/isarray": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz",
- "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/deep-is": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
- "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/deepmerge": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz",
- "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==",
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/default-compare": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/default-compare/-/default-compare-1.0.0.tgz",
- "integrity": "sha512-QWfXlM0EkAbqOCbD/6HjdwT19j7WCkMyiRhWilc4H9/5h/RzTF9gv5LYh1+CmDV5d1rki6KAWLtQale0xt20eQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "kind-of": "^5.0.2"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/default-resolution": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/default-resolution/-/default-resolution-2.0.0.tgz",
- "integrity": "sha512-2xaP6GiwVwOEbXCGoJ4ufgC76m8cj805jrghScewJC2ZDsb9U0b4BIrba+xt/Uytyd0HvQ6+WymSRTfnYj59GQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/defer-to-connect": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz",
- "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/define-data-property": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz",
- "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==",
- "license": "MIT",
- "dependencies": {
- "es-define-property": "^1.0.0",
- "es-errors": "^1.3.0",
- "gopd": "^1.0.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/define-properties": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz",
- "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "define-data-property": "^1.0.1",
- "has-property-descriptors": "^1.0.0",
- "object-keys": "^1.1.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/define-property": {
- "version": "0.2.5",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
- "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-descriptor": "^0.1.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/defined": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz",
- "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==",
- "license": "MIT",
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/del": {
- "version": "6.1.1",
- "resolved": "https://registry.npmjs.org/del/-/del-6.1.1.tgz",
- "integrity": "sha512-ua8BhapfP0JUJKC/zV9yHHDW/rDoDxP4Zhn3AkA6/xT6gY7jYXJiaeyBZznYVujhZZET+UgcbZiQ7sN3WqcImg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "globby": "^11.0.1",
- "graceful-fs": "^4.2.4",
- "is-glob": "^4.0.1",
- "is-path-cwd": "^2.2.0",
- "is-path-inside": "^3.0.2",
- "p-map": "^4.0.0",
- "rimraf": "^3.0.2",
- "slash": "^3.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/delayed-stream": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
- "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
- "license": "MIT",
- "engines": {
- "node": ">=0.4.0"
- }
- },
- "node_modules/depd": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
- "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/deps-sort": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/deps-sort/-/deps-sort-2.0.1.tgz",
- "integrity": "sha512-1orqXQr5po+3KI6kQb9A4jnXT1PBwggGl2d7Sq2xsnOeI9GPcE/tGcF9UiSZtZBM7MukY4cAh7MemS6tZYipfw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "JSONStream": "^1.0.3",
- "shasum-object": "^1.0.0",
- "subarg": "^1.0.0",
- "through2": "^2.0.0"
- },
- "bin": {
- "deps-sort": "bin/cmd.js"
- }
- },
- "node_modules/derequire": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/derequire/-/derequire-2.1.1.tgz",
- "integrity": "sha512-5hGVgKAEGhSGZM02abtkwDzqEOXun1dP9Ocw0yh7Pz7j70k4SNk7WURm93YyHbs2PcieRyX8m4ta1glGakw84Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "acorn": "^7.1.1",
- "concat-stream": "^1.4.6",
- "escope": "^3.6.0",
- "through2": "^2.0.0",
- "yargs": "^15.3.1"
- },
- "bin": {
- "derequire": "bin/cmd.js"
- }
- },
- "node_modules/derequire/node_modules/acorn": {
- "version": "7.4.1",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz",
- "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "acorn": "bin/acorn"
- },
- "engines": {
- "node": ">=0.4.0"
- }
- },
- "node_modules/derequire/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,
- "license": "MIT",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/derequire/node_modules/cliui": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz",
- "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.0",
- "wrap-ansi": "^6.2.0"
- }
- },
- "node_modules/derequire/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,
- "license": "MIT",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/derequire/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,
- "license": "MIT"
- },
- "node_modules/derequire/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,
- "license": "MIT"
- },
- "node_modules/derequire/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,
- "license": "MIT",
- "dependencies": {
- "locate-path": "^5.0.0",
- "path-exists": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/derequire/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,
- "license": "MIT",
- "dependencies": {
- "p-locate": "^4.1.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/derequire/node_modules/p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "p-try": "^2.0.0"
- },
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/derequire/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,
- "license": "MIT",
- "dependencies": {
- "p-limit": "^2.2.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/derequire/node_modules/string-width": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
- "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "emoji-regex": "^8.0.0",
- "is-fullwidth-code-point": "^3.0.0",
- "strip-ansi": "^6.0.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/derequire/node_modules/wrap-ansi": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
- "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/derequire/node_modules/y18n": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
- "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/derequire/node_modules/yargs": {
- "version": "15.4.1",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz",
- "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "cliui": "^6.0.0",
- "decamelize": "^1.2.0",
- "find-up": "^4.1.0",
- "get-caller-file": "^2.0.1",
- "require-directory": "^2.1.1",
- "require-main-filename": "^2.0.0",
- "set-blocking": "^2.0.0",
- "string-width": "^4.2.0",
- "which-module": "^2.0.0",
- "y18n": "^4.0.0",
- "yargs-parser": "^18.1.2"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/derequire/node_modules/yargs-parser": {
- "version": "18.1.3",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz",
- "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "camelcase": "^5.0.0",
- "decamelize": "^1.2.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/des.js": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.1.0.tgz",
- "integrity": "sha512-r17GxjhUCjSRy8aiJpr8/UadFIzMzJGexI3Nmz4ADi9LYSFx4gTBp80+NaX/YsXWWLhpZ7v/v/ubEc/bCNfKwg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.1",
- "minimalistic-assert": "^1.0.0"
- }
- },
- "node_modules/despot": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/despot/-/despot-2.1.0.tgz",
- "integrity": "sha512-WJdrXz3XEnLAu90op5QfCcNRzbz/rLCdh8KBtH+BEOIGMx38I2a7OJcAeqtzb6ZinV7k55mZ+midKMXivly6pQ==",
- "license": "ISC",
- "dependencies": {
- "global": "4.4.0",
- "inherits": "2.0.4"
- },
- "engines": {
- "node": ">=20.12.2",
- "npm": ">=10.5.0"
- }
- },
- "node_modules/destroy": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz",
- "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.8",
- "npm": "1.2.8000 || >= 1.4.16"
- }
- },
- "node_modules/detect-file": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz",
- "integrity": "sha512-DtCOLG98P007x7wiiOmfI0fi3eIKyWiLTGJ2MDnVi/E04lWGbf+JzrRHMm0rgIIZJGtHpKpbVgLWHrv8xXpc3Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/detect-indent": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-7.0.1.tgz",
- "integrity": "sha512-Mc7QhQ8s+cLrnUfU/Ji94vG/r8M26m8f++vyres4ZoojaRDpZ1eSIh/EpzLNwlWuvzSZ3UbDFspjFvTDXe6e/g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12.20"
- }
- },
- "node_modules/detect-newline": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-2.1.0.tgz",
- "integrity": "sha512-CwffZFvlJffUg9zZA0uqrjQayUTC8ob94pnr5sFwaVv3IOmkfUHcWH+jXaQK3askE51Cqe8/9Ql/0uXNwqZ8Zg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/detect-node": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.1.0.tgz",
- "integrity": "sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==",
- "dev": true,
- "license": "MIT",
- "optional": true
- },
- "node_modules/detective": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/detective/-/detective-5.2.1.tgz",
- "integrity": "sha512-v9XE1zRnz1wRtgurGu0Bs8uHKFSTdteYZNbIPFVhUZ39L/S79ppMpdmVOZAnoz1jfEFodc48n6MX483Xo3t1yw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "acorn-node": "^1.8.2",
- "defined": "^1.0.0",
- "minimist": "^1.2.6"
- },
- "bin": {
- "detective": "bin/detective.js"
- },
- "engines": {
- "node": ">=0.8.0"
- }
- },
- "node_modules/dezalgo": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz",
- "integrity": "sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==",
- "license": "ISC",
- "dependencies": {
- "asap": "^2.0.0",
- "wrappy": "1"
- }
- },
- "node_modules/diffie-hellman": {
- "version": "5.0.3",
- "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
- "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "bn.js": "^4.1.0",
- "miller-rabin": "^4.0.0",
- "randombytes": "^2.0.0"
- }
- },
- "node_modules/diffie-hellman/node_modules/bn.js": {
- "version": "4.12.0",
- "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
- "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/dir-glob": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
- "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "path-type": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/doctrine": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
- "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "esutils": "^2.0.2"
- },
- "engines": {
- "node": ">=6.0.0"
- }
- },
- "node_modules/document-visibility": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/document-visibility/-/document-visibility-1.0.1.tgz",
- "integrity": "sha512-aopFQn2zoi3opV+2mYpyheNLpy7elkxqmCdgK99cbmsyeweaFts89s8nq64kIOKJ00i7VwuoBdj5bh7j9LJgkw==",
- "license": "MIT",
- "dependencies": {
- "geval": "~2.1.1",
- "global": "~4.3.0"
- }
- },
- "node_modules/document-visibility/node_modules/global": {
- "version": "4.3.2",
- "resolved": "https://registry.npmjs.org/global/-/global-4.3.2.tgz",
- "integrity": "sha512-/4AybdwIDU4HkCUbJkZdWpe4P6vuw/CUtu+0I1YlLIPe7OlUO7KNJ+q/rO70CW2/NW6Jc6I62++Hzsf5Alu6rQ==",
- "license": "MIT",
- "dependencies": {
- "min-document": "^2.19.0",
- "process": "~0.5.1"
- }
- },
- "node_modules/document-visibility/node_modules/process": {
- "version": "0.5.2",
- "resolved": "https://registry.npmjs.org/process/-/process-0.5.2.tgz",
- "integrity": "sha512-oNpcutj+nYX2FjdEW7PGltWhXulAnFlM0My/k48L90hARCOJtvBbQXc/6itV2jDvU5xAAtonP+r6wmQgCcbAUA==",
- "engines": {
- "node": ">= 0.6.0"
- }
- },
- "node_modules/dom-serializer": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz",
- "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "domelementtype": "^2.3.0",
- "domhandler": "^5.0.2",
- "entities": "^4.2.0"
- },
- "funding": {
- "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1"
- }
- },
- "node_modules/dom-walk": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz",
- "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w=="
- },
- "node_modules/domain-browser": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/domain-browser/-/domain-browser-1.2.0.tgz",
- "integrity": "sha512-jnjyiM6eRyZl2H+W8Q/zLMA481hzi0eszAaBUzIVnmYVDBbnLxVNnfu1HgEBvCbL+71FrxMl3E6lpKH7Ge3OXA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.4",
- "npm": ">=1.2"
- }
- },
- "node_modules/domelementtype": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz",
- "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==",
- "dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/fb55"
- }
- ],
- "license": "BSD-2-Clause"
- },
- "node_modules/domhandler": {
- "version": "5.0.3",
- "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz",
- "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "domelementtype": "^2.3.0"
- },
- "engines": {
- "node": ">= 4"
- },
- "funding": {
- "url": "https://github.com/fb55/domhandler?sponsor=1"
- }
- },
- "node_modules/domutils": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz",
- "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "dom-serializer": "^2.0.0",
- "domelementtype": "^2.3.0",
- "domhandler": "^5.0.3"
- },
- "funding": {
- "url": "https://github.com/fb55/domutils?sponsor=1"
- }
- },
- "node_modules/dotignore": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/dotignore/-/dotignore-0.1.2.tgz",
- "integrity": "sha512-UGGGWfSauusaVJC+8fgV+NVvBXkCTmVv7sk6nojDZZvuOUNGUy0Zk4UpHQD6EDjS0jpBwcACvH4eofvyzBcRDw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "minimatch": "^3.0.4"
- },
- "bin": {
- "ignored": "bin/ignored"
- }
- },
- "node_modules/duplexer": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz",
- "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/duplexer2": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.1.4.tgz",
- "integrity": "sha512-asLFVfWWtJ90ZyOUHMqk7/S2w2guQKxUI2itj3d92ADHhxUSbCMGi1f1cBcJ7xM1To+pE/Khbwo1yuNbMEPKeA==",
- "dev": true,
- "license": "BSD-3-Clause",
- "dependencies": {
- "readable-stream": "^2.0.2"
- }
- },
- "node_modules/duplexify": {
- "version": "4.1.3",
- "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-4.1.3.tgz",
- "integrity": "sha512-M3BmBhwJRZsSx38lZyhE53Csddgzl5R7xGJNk7CVddZD6CcmwMCH8J+7AprIrQKH7TonKxaCjcv27Qmf+sQ+oA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "end-of-stream": "^1.4.1",
- "inherits": "^2.0.3",
- "readable-stream": "^3.1.1",
- "stream-shift": "^1.0.2"
- }
- },
- "node_modules/duplexify/node_modules/readable-stream": {
- "version": "3.6.2",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
- "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.3",
- "string_decoder": "^1.1.1",
- "util-deprecate": "^1.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/each-props": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/each-props/-/each-props-1.3.2.tgz",
- "integrity": "sha512-vV0Hem3zAGkJAyU7JSjixeU66rwdynTAa1vofCrSA5fEln+m67Az9CcnkVD776/fsN/UjIWmBDoNRS6t6G9RfA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-plain-object": "^2.0.1",
- "object.defaults": "^1.1.0"
- }
- },
- "node_modules/each-props/node_modules/is-plain-object": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
- "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "isobject": "^3.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/eastasianwidth": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz",
- "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/ecstatic": {
- "version": "4.1.4",
- "resolved": "https://registry.npmjs.org/ecstatic/-/ecstatic-4.1.4.tgz",
- "integrity": "sha512-8E4ZLK4uRuB9pwywGpy/B9vcz4gCp6IY7u4cMbeCINr/fjb1v+0wf0Ae2XlfSnG8xZYnE4uaJBjFkYI0bqcIdw==",
- "deprecated": "This package is unmaintained and deprecated. See the GH Issue 259.",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "charset": "^1.0.1",
- "he": "^1.1.1",
- "mime": "^2.4.1",
- "minimist": "^1.1.0",
- "on-finished": "^2.3.0",
- "url-join": "^4.0.0"
- },
- "bin": {
- "ecstatic": "lib/bin.js"
- }
- },
- "node_modules/ecstatic/node_modules/mime": {
- "version": "2.6.0",
- "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz",
- "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "mime": "cli.js"
- },
- "engines": {
- "node": ">=4.0.0"
- }
- },
- "node_modules/ee-first": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
- "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/electron": {
- "version": "26.6.10",
- "resolved": "https://registry.npmjs.org/electron/-/electron-26.6.10.tgz",
- "integrity": "sha512-pV2SD0RXzAiNRb/2yZrsVmVkBOMrf+DVsPulIgRjlL0+My9BL5spFuhHVMQO9yHl9tFpWtuRpQv0ofM/i9P8xg==",
- "dev": true,
- "hasInstallScript": true,
- "license": "MIT",
- "dependencies": {
- "@electron/get": "^2.0.0",
- "@types/node": "^18.11.18",
- "extract-zip": "^2.0.1"
- },
- "bin": {
- "electron": "cli.js"
- },
- "engines": {
- "node": ">= 12.20.55"
- }
- },
- "node_modules/electron-stream": {
- "version": "11.0.2",
- "resolved": "https://registry.npmjs.org/electron-stream/-/electron-stream-11.0.2.tgz",
- "integrity": "sha512-FasPOjeMGERgS2sMOPjBw2UJEhbauwi65l6YTcZHtMZTIHMKVBtOoTVmDCbSmvC54T8qKcd41wwLBm62q5f8Hw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "debug": "^4.1.0",
- "electron": "^26.2.0",
- "json-stringify-safe": "^5.0.1",
- "serve-handler": "^6.1.5",
- "stream-read": "^1.1.2",
- "tempy": "0.1.0"
- },
- "bin": {
- "electron-stream": "bin/bin.js"
- },
- "engines": {
- "node": ">=16"
- }
- },
- "node_modules/electron-to-chromium": {
- "version": "1.5.27",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.27.tgz",
- "integrity": "sha512-o37j1vZqCoEgBuWWXLHQgTN/KDKe7zwpiY5CPeq2RvUqOyJw9xnrULzZAEVQ5p4h+zjMk7hgtOoPdnLxr7m/jw==",
- "license": "ISC"
- },
- "node_modules/elliptic": {
- "version": "6.5.7",
- "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.7.tgz",
- "integrity": "sha512-ESVCtTwiA+XhY3wyh24QqRGBoP3rEdDUl3EDUUo9tft074fi19IrdpH7hLCMMP3CIj7jb3W96rn8lt/BqIlt5Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "bn.js": "^4.11.9",
- "brorand": "^1.1.0",
- "hash.js": "^1.0.0",
- "hmac-drbg": "^1.0.1",
- "inherits": "^2.0.4",
- "minimalistic-assert": "^1.0.1",
- "minimalistic-crypto-utils": "^1.0.1"
- }
- },
- "node_modules/elliptic/node_modules/bn.js": {
- "version": "4.12.0",
- "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
- "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/emoji-regex": {
- "version": "9.2.2",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
- "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/encodeurl": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
- "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/end-of-stream": {
- "version": "1.4.4",
- "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
- "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
- "license": "MIT",
- "dependencies": {
- "once": "^1.4.0"
- }
- },
- "node_modules/enstore": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/enstore/-/enstore-1.0.1.tgz",
- "integrity": "sha512-qBY73Jkl/W/5QMjmBG4yq+IDpzGmfYtakOF+Ml/XdUWfpkbME0QZbTCp8XqAyTJ8eVdC06XS8B/15b9k0+EnCQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "monotonic-timestamp": "0.0.8"
- }
- },
- "node_modules/ent": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/ent/-/ent-2.2.1.tgz",
- "integrity": "sha512-QHuXVeZx9d+tIQAz/XztU0ZwZf2Agg9CcXcgE1rurqvdBeDBrpSwjl8/6XUqMg7tw2Y7uAdKb2sRv+bSEFqQ5A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "punycode": "^1.4.1"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/entities": {
- "version": "4.5.0",
- "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz",
- "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==",
- "dev": true,
- "license": "BSD-2-Clause",
- "engines": {
- "node": ">=0.12"
- },
- "funding": {
- "url": "https://github.com/fb55/entities?sponsor=1"
- }
- },
- "node_modules/env-paths": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz",
- "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/error": {
- "version": "7.2.1",
- "resolved": "https://registry.npmjs.org/error/-/error-7.2.1.tgz",
- "integrity": "sha512-fo9HBvWnx3NGUKMvMwB/CBCMMrfEJgbDTVDEkPygA3Bdd3lM1OyCd+rbQ8BwnpF6GdVeOLDNmyL4N5Bg80ZvdA==",
- "dev": true,
- "dependencies": {
- "string-template": "~0.2.1"
- }
- },
- "node_modules/error-ex": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
- "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-arrayish": "^0.2.1"
- }
- },
- "node_modules/es-abstract": {
- "version": "1.23.3",
- "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.23.3.tgz",
- "integrity": "sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "array-buffer-byte-length": "^1.0.1",
- "arraybuffer.prototype.slice": "^1.0.3",
- "available-typed-arrays": "^1.0.7",
- "call-bind": "^1.0.7",
- "data-view-buffer": "^1.0.1",
- "data-view-byte-length": "^1.0.1",
- "data-view-byte-offset": "^1.0.0",
- "es-define-property": "^1.0.0",
- "es-errors": "^1.3.0",
- "es-object-atoms": "^1.0.0",
- "es-set-tostringtag": "^2.0.3",
- "es-to-primitive": "^1.2.1",
- "function.prototype.name": "^1.1.6",
- "get-intrinsic": "^1.2.4",
- "get-symbol-description": "^1.0.2",
- "globalthis": "^1.0.3",
- "gopd": "^1.0.1",
- "has-property-descriptors": "^1.0.2",
- "has-proto": "^1.0.3",
- "has-symbols": "^1.0.3",
- "hasown": "^2.0.2",
- "internal-slot": "^1.0.7",
- "is-array-buffer": "^3.0.4",
- "is-callable": "^1.2.7",
- "is-data-view": "^1.0.1",
- "is-negative-zero": "^2.0.3",
- "is-regex": "^1.1.4",
- "is-shared-array-buffer": "^1.0.3",
- "is-string": "^1.0.7",
- "is-typed-array": "^1.1.13",
- "is-weakref": "^1.0.2",
- "object-inspect": "^1.13.1",
- "object-keys": "^1.1.1",
- "object.assign": "^4.1.5",
- "regexp.prototype.flags": "^1.5.2",
- "safe-array-concat": "^1.1.2",
- "safe-regex-test": "^1.0.3",
- "string.prototype.trim": "^1.2.9",
- "string.prototype.trimend": "^1.0.8",
- "string.prototype.trimstart": "^1.0.8",
- "typed-array-buffer": "^1.0.2",
- "typed-array-byte-length": "^1.0.1",
- "typed-array-byte-offset": "^1.0.2",
- "typed-array-length": "^1.0.6",
- "unbox-primitive": "^1.0.2",
- "which-typed-array": "^1.1.15"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/es-define-property": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz",
- "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==",
- "license": "MIT",
- "dependencies": {
- "get-intrinsic": "^1.2.4"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/es-errors": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
- "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/es-get-iterator": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz",
- "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.2",
- "get-intrinsic": "^1.1.3",
- "has-symbols": "^1.0.3",
- "is-arguments": "^1.1.1",
- "is-map": "^2.0.2",
- "is-set": "^2.0.2",
- "is-string": "^1.0.7",
- "isarray": "^2.0.5",
- "stop-iteration-iterator": "^1.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/es-get-iterator/node_modules/isarray": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz",
- "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/es-object-atoms": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.0.0.tgz",
- "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "es-errors": "^1.3.0"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/es-set-tostringtag": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz",
- "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "get-intrinsic": "^1.2.4",
- "has-tostringtag": "^1.0.2",
- "hasown": "^2.0.1"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/es-shim-unscopables": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz",
- "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "hasown": "^2.0.0"
- }
- },
- "node_modules/es-to-primitive": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz",
- "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-callable": "^1.1.4",
- "is-date-object": "^1.0.1",
- "is-symbol": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/es5-ext": {
- "version": "0.10.64",
- "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.64.tgz",
- "integrity": "sha512-p2snDhiLaXe6dahss1LddxqEm+SkuDvV8dnIQG0MWjyHpcMNfXKPE+/Cc0y+PhxJX3A4xGNeFCj5oc0BUh6deg==",
- "dev": true,
- "hasInstallScript": true,
- "license": "ISC",
- "dependencies": {
- "es6-iterator": "^2.0.3",
- "es6-symbol": "^3.1.3",
- "esniff": "^2.0.1",
- "next-tick": "^1.1.0"
- },
- "engines": {
- "node": ">=0.10"
- }
- },
- "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,
- "license": "MIT",
- "optional": true
- },
- "node_modules/es6-iterator": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz",
- "integrity": "sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "d": "1",
- "es5-ext": "^0.10.35",
- "es6-symbol": "^3.1.1"
- }
- },
- "node_modules/es6-map": {
- "version": "0.1.5",
- "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz",
- "integrity": "sha512-mz3UqCh0uPCIqsw1SSAkB/p0rOzF/M0V++vyN7JqlPtSW/VsYgQBvVvqMLmfBuyMzTpLnNqi6JmcSizs4jy19A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "d": "1",
- "es5-ext": "~0.10.14",
- "es6-iterator": "~2.0.1",
- "es6-set": "~0.1.5",
- "es6-symbol": "~3.1.1",
- "event-emitter": "~0.3.5"
- }
- },
- "node_modules/es6-set": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.6.tgz",
- "integrity": "sha512-TE3LgGLDIBX332jq3ypv6bcOpkLO0AslAQo7p2VqX/1N46YNsvIWgvjojjSEnWEGWMhr1qUbYeTSir5J6mFHOw==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "d": "^1.0.1",
- "es5-ext": "^0.10.62",
- "es6-iterator": "~2.0.3",
- "es6-symbol": "^3.1.3",
- "event-emitter": "^0.3.5",
- "type": "^2.7.2"
- },
- "engines": {
- "node": ">=0.12"
- }
- },
- "node_modules/es6-symbol": {
- "version": "3.1.4",
- "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.4.tgz",
- "integrity": "sha512-U9bFFjX8tFiATgtkJ1zg25+KviIXpgRvRHS8sau3GfhVzThRQrOeksPeT0BWW2MNZs1OEWJ1DPXOQMn0KKRkvg==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "d": "^1.0.2",
- "ext": "^1.7.0"
- },
- "engines": {
- "node": ">=0.12"
- }
- },
- "node_modules/es6-weak-map": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.3.tgz",
- "integrity": "sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "d": "1",
- "es5-ext": "^0.10.46",
- "es6-iterator": "^2.0.3",
- "es6-symbol": "^3.1.1"
- }
- },
- "node_modules/escalade": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz",
- "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==",
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/escape-html": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
- "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/escape-string-regexp": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/escope": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz",
- "integrity": "sha512-75IUQsusDdalQEW/G/2esa87J7raqdJF+Ca0/Xm5C3Q58Nr4yVYjZGp/P1+2xiEVgXRrA39dpRb8LcshajbqDQ==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "es6-map": "^0.1.3",
- "es6-weak-map": "^2.0.1",
- "esrecurse": "^4.1.0",
- "estraverse": "^4.1.1"
- },
- "engines": {
- "node": ">=0.4.0"
- }
- },
- "node_modules/eslint": {
- "version": "8.57.0",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.57.0.tgz",
- "integrity": "sha512-dZ6+mexnaTIbSBZWgou51U6OmzIhYM2VcNdtiTtI7qPNZm35Akpr0f6vtw3w1Kmn5PYo+tZVfh13WrhpS6oLqQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@eslint-community/eslint-utils": "^4.2.0",
- "@eslint-community/regexpp": "^4.6.1",
- "@eslint/eslintrc": "^2.1.4",
- "@eslint/js": "8.57.0",
- "@humanwhocodes/config-array": "^0.11.14",
- "@humanwhocodes/module-importer": "^1.0.1",
- "@nodelib/fs.walk": "^1.2.8",
- "@ungap/structured-clone": "^1.2.0",
- "ajv": "^6.12.4",
- "chalk": "^4.0.0",
- "cross-spawn": "^7.0.2",
- "debug": "^4.3.2",
- "doctrine": "^3.0.0",
- "escape-string-regexp": "^4.0.0",
- "eslint-scope": "^7.2.2",
- "eslint-visitor-keys": "^3.4.3",
- "espree": "^9.6.1",
- "esquery": "^1.4.2",
- "esutils": "^2.0.2",
- "fast-deep-equal": "^3.1.3",
- "file-entry-cache": "^6.0.1",
- "find-up": "^5.0.0",
- "glob-parent": "^6.0.2",
- "globals": "^13.19.0",
- "graphemer": "^1.4.0",
- "ignore": "^5.2.0",
- "imurmurhash": "^0.1.4",
- "is-glob": "^4.0.0",
- "is-path-inside": "^3.0.3",
- "js-yaml": "^4.1.0",
- "json-stable-stringify-without-jsonify": "^1.0.1",
- "levn": "^0.4.1",
- "lodash.merge": "^4.6.2",
- "minimatch": "^3.1.2",
- "natural-compare": "^1.4.0",
- "optionator": "^0.9.3",
- "strip-ansi": "^6.0.1",
- "text-table": "^0.2.0"
- },
- "bin": {
- "eslint": "bin/eslint.js"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
- "node_modules/eslint-config-prettier": {
- "version": "9.1.0",
- "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz",
- "integrity": "sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "eslint-config-prettier": "bin/cli.js"
- },
- "peerDependencies": {
- "eslint": ">=7.0.0"
- }
- },
- "node_modules/eslint-import-resolver-node": {
- "version": "0.3.9",
- "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz",
- "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "debug": "^3.2.7",
- "is-core-module": "^2.13.0",
- "resolve": "^1.22.4"
- }
- },
- "node_modules/eslint-import-resolver-node/node_modules/debug": {
- "version": "3.2.7",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
- "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ms": "^2.1.1"
- }
- },
- "node_modules/eslint-module-utils": {
- "version": "2.11.0",
- "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.11.0.tgz",
- "integrity": "sha512-gbBE5Hitek/oG6MUVj6sFuzEjA/ClzNflVrLovHi/JgLdC7fiN5gLAY1WIPW1a0V5I999MnsrvVrCOGmmVqDBQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "debug": "^3.2.7"
- },
- "engines": {
- "node": ">=4"
- },
- "peerDependenciesMeta": {
- "eslint": {
- "optional": true
- }
- }
- },
- "node_modules/eslint-module-utils/node_modules/debug": {
- "version": "3.2.7",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
- "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ms": "^2.1.1"
- }
- },
- "node_modules/eslint-plugin-es": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz",
- "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "eslint-utils": "^2.0.0",
- "regexpp": "^3.0.0"
- },
- "engines": {
- "node": ">=8.10.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/mysticatea"
- },
- "peerDependencies": {
- "eslint": ">=4.19.1"
- }
- },
- "node_modules/eslint-plugin-import": {
- "version": "2.30.0",
- "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.30.0.tgz",
- "integrity": "sha512-/mHNE9jINJfiD2EKkg1BKyPyUk4zdnT54YgbOgfjSakWT5oyX/qQLVNTkehyfpcMxZXMy1zyonZ2v7hZTX43Yw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@rtsao/scc": "^1.1.0",
- "array-includes": "^3.1.8",
- "array.prototype.findlastindex": "^1.2.5",
- "array.prototype.flat": "^1.3.2",
- "array.prototype.flatmap": "^1.3.2",
- "debug": "^3.2.7",
- "doctrine": "^2.1.0",
- "eslint-import-resolver-node": "^0.3.9",
- "eslint-module-utils": "^2.9.0",
- "hasown": "^2.0.2",
- "is-core-module": "^2.15.1",
- "is-glob": "^4.0.3",
- "minimatch": "^3.1.2",
- "object.fromentries": "^2.0.8",
- "object.groupby": "^1.0.3",
- "object.values": "^1.2.0",
- "semver": "^6.3.1",
- "tsconfig-paths": "^3.15.0"
- },
- "engines": {
- "node": ">=4"
- },
- "peerDependencies": {
- "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 || ^8"
- }
- },
- "node_modules/eslint-plugin-import/node_modules/debug": {
- "version": "3.2.7",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
- "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ms": "^2.1.1"
- }
- },
- "node_modules/eslint-plugin-import/node_modules/doctrine": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz",
- "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "esutils": "^2.0.2"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/eslint-plugin-node": {
- "version": "11.1.0",
- "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz",
- "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "eslint-plugin-es": "^3.0.0",
- "eslint-utils": "^2.0.0",
- "ignore": "^5.1.1",
- "minimatch": "^3.0.4",
- "resolve": "^1.10.1",
- "semver": "^6.1.0"
- },
- "engines": {
- "node": ">=8.10.0"
- },
- "peerDependencies": {
- "eslint": ">=5.16.0"
- }
- },
- "node_modules/eslint-plugin-promise": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-6.2.0.tgz",
- "integrity": "sha512-QmAqwizauvnKOlifxyDj2ObfULpHQawlg/zQdgEixur9vl0CvZGv/LCJV2rtj3210QCoeGBzVMfMXqGAOr/4fA==",
- "dev": true,
- "license": "ISC",
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- },
- "peerDependencies": {
- "eslint": "^7.0.0 || ^8.0.0 || ^9.0.0"
- }
- },
- "node_modules/eslint-scope": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
- "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "esrecurse": "^4.3.0",
- "estraverse": "^4.1.1"
- },
- "engines": {
- "node": ">=8.0.0"
- }
- },
- "node_modules/eslint-utils": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz",
- "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "eslint-visitor-keys": "^1.1.0"
- },
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/mysticatea"
- }
- },
- "node_modules/eslint-utils/node_modules/eslint-visitor-keys": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz",
- "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==",
- "dev": true,
- "license": "Apache-2.0",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/eslint-visitor-keys": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz",
- "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==",
- "dev": true,
- "license": "Apache-2.0",
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/eslint/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,
- "license": "MIT",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/eslint/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "license": "MIT",
- "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/eslint/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,
- "license": "MIT",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/eslint/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,
- "license": "MIT"
- },
- "node_modules/eslint/node_modules/eslint-scope": {
- "version": "7.2.2",
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz",
- "integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "esrecurse": "^4.3.0",
- "estraverse": "^5.2.0"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
- "node_modules/eslint/node_modules/eslint-visitor-keys": {
- "version": "3.4.3",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
- "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
- "dev": true,
- "license": "Apache-2.0",
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
- "node_modules/eslint/node_modules/estraverse": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
- "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
- "dev": true,
- "license": "BSD-2-Clause",
- "engines": {
- "node": ">=4.0"
- }
- },
- "node_modules/eslint/node_modules/globals": {
- "version": "13.24.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz",
- "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "type-fest": "^0.20.2"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/eslint/node_modules/has-flag": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
- "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/eslint/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,
- "license": "MIT",
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/eslint/node_modules/type-fest": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
- "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
- "dev": true,
- "license": "(MIT OR CC0-1.0)",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/esniff": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/esniff/-/esniff-2.0.1.tgz",
- "integrity": "sha512-kTUIGKQ/mDPFoJ0oVfcmyJn4iBDRptjNVIzwIFR7tqWXdVI9xfA2RMwY/gbSpJG3lkdWNEjLap/NqVHZiJsdfg==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "d": "^1.0.1",
- "es5-ext": "^0.10.62",
- "event-emitter": "^0.3.5",
- "type": "^2.7.2"
- },
- "engines": {
- "node": ">=0.10"
- }
- },
- "node_modules/espree": {
- "version": "9.6.1",
- "resolved": "https://registry.npmjs.org/espree/-/espree-9.6.1.tgz",
- "integrity": "sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "acorn": "^8.9.0",
- "acorn-jsx": "^5.3.2",
- "eslint-visitor-keys": "^3.4.1"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
- "node_modules/espree/node_modules/eslint-visitor-keys": {
- "version": "3.4.3",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
- "integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
- "dev": true,
- "license": "Apache-2.0",
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
- "node_modules/esquery": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz",
- "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==",
- "dev": true,
- "license": "BSD-3-Clause",
- "dependencies": {
- "estraverse": "^5.1.0"
- },
- "engines": {
- "node": ">=0.10"
- }
- },
- "node_modules/esquery/node_modules/estraverse": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
- "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
- "dev": true,
- "license": "BSD-2-Clause",
- "engines": {
- "node": ">=4.0"
- }
- },
- "node_modules/esrecurse": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
- "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "estraverse": "^5.2.0"
- },
- "engines": {
- "node": ">=4.0"
- }
- },
- "node_modules/esrecurse/node_modules/estraverse": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
- "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
- "dev": true,
- "license": "BSD-2-Clause",
- "engines": {
- "node": ">=4.0"
- }
- },
- "node_modules/estraverse": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
- "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
- "dev": true,
- "license": "BSD-2-Clause",
- "engines": {
- "node": ">=4.0"
- }
- },
- "node_modules/esutils": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
- "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
- "dev": true,
- "license": "BSD-2-Clause",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/etag": {
- "version": "1.8.1",
- "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
- "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/event-emitter": {
- "version": "0.3.5",
- "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz",
- "integrity": "sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "d": "1",
- "es5-ext": "~0.10.14"
- }
- },
- "node_modules/event-stream": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/event-stream/-/event-stream-4.0.1.tgz",
- "integrity": "sha512-qACXdu/9VHPBzcyhdOWR5/IahhGMf0roTeZJfzz077GwylcDd90yOHLouhmv7GJ5XzPi6ekaQWd8AvPP2nOvpA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "duplexer": "^0.1.1",
- "from": "^0.1.7",
- "map-stream": "0.0.7",
- "pause-stream": "^0.0.11",
- "split": "^1.0.1",
- "stream-combiner": "^0.2.2",
- "through": "^2.3.8"
- }
- },
- "node_modules/events": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.8.x"
- }
- },
- "node_modules/evp_bytestokey": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz",
- "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "md5.js": "^1.3.4",
- "safe-buffer": "^5.1.1"
- }
- },
- "node_modules/expand-brackets": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz",
- "integrity": "sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "debug": "^2.3.3",
- "define-property": "^0.2.5",
- "extend-shallow": "^2.0.1",
- "posix-character-classes": "^0.1.0",
- "regex-not": "^1.0.0",
- "snapdragon": "^0.8.1",
- "to-regex": "^3.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/expand-brackets/node_modules/debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ms": "2.0.0"
- }
- },
- "node_modules/expand-brackets/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/expand-tilde": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz",
- "integrity": "sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "homedir-polyfill": "^1.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/ext": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/ext/-/ext-1.7.0.tgz",
- "integrity": "sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "type": "^2.7.2"
- }
- },
- "node_modules/extend": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
- "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-extendable": "^0.1.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/extglob": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz",
- "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "array-unique": "^0.3.2",
- "define-property": "^1.0.0",
- "expand-brackets": "^2.1.4",
- "extend-shallow": "^2.0.1",
- "fragment-cache": "^0.2.1",
- "regex-not": "^1.0.0",
- "snapdragon": "^0.8.1",
- "to-regex": "^3.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/extglob/node_modules/define-property": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
- "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-descriptor": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/extglob/node_modules/is-descriptor": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz",
- "integrity": "sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-accessor-descriptor": "^1.0.1",
- "is-data-descriptor": "^1.0.1"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/extract-zip": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-2.0.1.tgz",
- "integrity": "sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "debug": "^4.1.1",
- "get-stream": "^5.1.0",
- "yauzl": "^2.10.0"
- },
- "bin": {
- "extract-zip": "cli.js"
- },
- "engines": {
- "node": ">= 10.17.0"
- },
- "optionalDependencies": {
- "@types/yauzl": "^2.9.1"
- }
- },
- "node_modules/fancy-log": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-2.0.0.tgz",
- "integrity": "sha512-9CzxZbACXMUXW13tS0tI8XsGGmxWzO2DmYrGuBJOJ8k8q2K7hwfJA5qHjuPPe8wtsco33YR9wc+Rlr5wYFvhSA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "color-support": "^1.1.3"
- },
- "engines": {
- "node": ">=10.13.0"
- }
- },
- "node_modules/fast-deep-equal": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
- "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/fast-glob": {
- "version": "3.3.2",
- "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz",
- "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@nodelib/fs.stat": "^2.0.2",
- "@nodelib/fs.walk": "^1.2.3",
- "glob-parent": "^5.1.2",
- "merge2": "^1.3.0",
- "micromatch": "^4.0.4"
- },
- "engines": {
- "node": ">=8.6.0"
- }
- },
- "node_modules/fast-glob/node_modules/glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "is-glob": "^4.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/fast-json-stable-stringify": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
- "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/fast-levenshtein": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
- "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/fast-safe-stringify": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz",
- "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==",
- "license": "MIT"
- },
- "node_modules/fast-url-parser": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/fast-url-parser/-/fast-url-parser-1.1.3.tgz",
- "integrity": "sha512-5jOCVXADYNuRkKFzNJ0dCCewsZiYo0dz8QNYljkOpFC6r2U4OBmKtvm/Tsuh4w1YYdDqDb31a8TVhBJ2OJKdqQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "punycode": "^1.3.2"
- }
- },
- "node_modules/fastq": {
- "version": "1.17.1",
- "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz",
- "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "reusify": "^1.0.4"
- }
- },
- "node_modules/faye-websocket": {
- "version": "0.10.0",
- "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.10.0.tgz",
- "integrity": "sha512-Xhj93RXbMSq8urNCUq4p9l0P6hnySJ/7YNRhYNug0bLOuii7pKO7xQFb5mx9xZXWCar88pLPb805PvUkwrLZpQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "websocket-driver": ">=0.5.1"
- },
- "engines": {
- "node": ">=0.4.0"
- }
- },
- "node_modules/fd-slicer": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz",
- "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "pend": "~1.2.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",
- "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "flat-cache": "^3.0.4"
- },
- "engines": {
- "node": "^10.12.0 || >=12.0.0"
- }
- },
- "node_modules/file-uri-to-path": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz",
- "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==",
- "dev": true,
- "license": "MIT",
- "optional": true
- },
- "node_modules/filesize": {
- "version": "10.1.6",
- "resolved": "https://registry.npmjs.org/filesize/-/filesize-10.1.6.tgz",
- "integrity": "sha512-sJslQKU2uM33qH5nqewAwVB2QgR6w1aMNsYUp3aN5rMRyXEwJGmZvaWzeJFNTOXWlHQyBFCWrdj3fV/fsTOX8w==",
- "license": "BSD-3-Clause",
- "engines": {
- "node": ">= 10.4.0"
- }
- },
- "node_modules/fill-range": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz",
- "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "extend-shallow": "^2.0.1",
- "is-number": "^3.0.0",
- "repeat-string": "^1.6.1",
- "to-regex-range": "^2.1.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/finalhandler": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz",
- "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "debug": "2.6.9",
- "encodeurl": "~1.0.2",
- "escape-html": "~1.0.3",
- "on-finished": "~2.3.0",
- "parseurl": "~1.3.3",
- "statuses": "~1.5.0",
- "unpipe": "~1.0.0"
- },
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/finalhandler/node_modules/debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ms": "2.0.0"
- }
- },
- "node_modules/finalhandler/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/finalhandler/node_modules/on-finished": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz",
- "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ee-first": "1.1.1"
- },
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/find-up": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
- "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "locate-path": "^6.0.0",
- "path-exists": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/findup-sync": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-5.0.0.tgz",
- "integrity": "sha512-MzwXju70AuyflbgeOhzvQWAvvQdo1XL0A9bVvlXsYcFEBM87WR4OakL4OfZq+QRmr+duJubio+UtNQCPsVESzQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "detect-file": "^1.0.0",
- "is-glob": "^4.0.3",
- "micromatch": "^4.0.4",
- "resolve-dir": "^1.0.1"
- },
- "engines": {
- "node": ">= 10.13.0"
- }
- },
- "node_modules/fined": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/fined/-/fined-1.2.0.tgz",
- "integrity": "sha512-ZYDqPLGxDkDhDZBjZBb+oD1+j0rA4E0pXY50eplAAOPg2N/gUBSSk5IM1/QhPfyVo19lJ+CvXpqfvk+b2p/8Ng==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "expand-tilde": "^2.0.2",
- "is-plain-object": "^2.0.3",
- "object.defaults": "^1.1.0",
- "object.pick": "^1.2.0",
- "parse-filepath": "^1.0.1"
- },
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/fined/node_modules/is-plain-object": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
- "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "isobject": "^3.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/flagged-respawn": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/flagged-respawn/-/flagged-respawn-1.0.1.tgz",
- "integrity": "sha512-lNaHNVymajmk0OJMBn8fVUAU1BtDeKIqKoVhk4xAALB57aALg6b4W0MfJ/cUE0g9YBXy5XhSlPIpYIJ7HaY/3Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/flat-cache": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.2.0.tgz",
- "integrity": "sha512-CYcENa+FtcUKLmhhqyctpclsq7QF38pKjZHsGNiSQF5r4FtoKDWabFDl3hzaEQMvT1LHEysw5twgLvpYYb4vbw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "flatted": "^3.2.9",
- "keyv": "^4.5.3",
- "rimraf": "^3.0.2"
- },
- "engines": {
- "node": "^10.12.0 || >=12.0.0"
- }
- },
- "node_modules/flatted": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz",
- "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/flush-write-stream": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz",
- "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.3",
- "readable-stream": "^2.3.6"
- }
- },
- "node_modules/for-each": {
- "version": "0.3.3",
- "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz",
- "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-callable": "^1.1.3"
- }
- },
- "node_modules/for-in": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
- "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/for-own": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/for-own/-/for-own-1.0.0.tgz",
- "integrity": "sha512-0OABksIGrxKK8K4kynWkQ7y1zounQxP+CWnyclVwj81KW3vlLlGUx57DKGcP/LH216GzqnstnPocF16Nxs0Ycg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "for-in": "^1.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/foreground-child": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz",
- "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "cross-spawn": "^7.0.0",
- "signal-exit": "^4.0.1"
- },
- "engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/fork-stream": {
- "version": "0.0.4",
- "resolved": "https://registry.npmjs.org/fork-stream/-/fork-stream-0.0.4.tgz",
- "integrity": "sha512-Pqq5NnT78ehvUnAk/We/Jr22vSvanRlFTpAmQ88xBY/M1TlHe+P0ILuEyXS595ysdGfaj22634LBkGMA2GTcpA==",
- "dev": true,
- "license": "BSD"
- },
- "node_modules/form-data": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
- "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
- "license": "MIT",
- "dependencies": {
- "asynckit": "^0.4.0",
- "combined-stream": "^1.0.8",
- "mime-types": "^2.1.12"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/format-util": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/format-util/-/format-util-1.0.5.tgz",
- "integrity": "sha512-varLbTj0e0yVyRpqQhuWV+8hlePAgaoFRhNFj50BNjEIrw1/DphHSObtqwskVCPWNgzwPoQrZAbfa/SBiicNeg==",
- "license": "MIT"
- },
- "node_modules/formidable": {
- "version": "3.5.1",
- "resolved": "https://registry.npmjs.org/formidable/-/formidable-3.5.1.tgz",
- "integrity": "sha512-WJWKelbRHN41m5dumb0/k8TeAx7Id/y3a+Z7QfhxP/htI9Js5zYaEDtG8uMgG0vM0lOlqnmjE99/kfpOYi/0Og==",
- "license": "MIT",
- "dependencies": {
- "dezalgo": "^1.0.4",
- "hexoid": "^1.0.0",
- "once": "^1.4.0"
- },
- "funding": {
- "url": "https://ko-fi.com/tunnckoCore/commissions"
- }
- },
- "node_modules/fraction.js": {
- "version": "4.3.7",
- "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz",
- "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "*"
- },
- "funding": {
- "type": "patreon",
- "url": "https://github.com/sponsors/rawify"
- }
- },
- "node_modules/fragment-cache": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz",
- "integrity": "sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "map-cache": "^0.2.2"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/fresh": {
- "version": "0.5.2",
- "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
- "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/from": {
- "version": "0.1.7",
- "resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz",
- "integrity": "sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/fs-extra": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz",
- "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "graceful-fs": "^4.2.0",
- "jsonfile": "^4.0.0",
- "universalify": "^0.1.0"
- },
- "engines": {
- "node": ">=6 <7 || >=8"
- }
- },
- "node_modules/fs-mkdirp-stream": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/fs-mkdirp-stream/-/fs-mkdirp-stream-1.0.0.tgz",
- "integrity": "sha512-+vSd9frUnapVC2RZYfL3FCB2p3g4TBhaUmrsWlSudsGdnxIuUvBB2QM1VZeBtc49QFwrp+wQLrDs3+xxDgI5gQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "graceful-fs": "^4.1.11",
- "through2": "^2.0.3"
- },
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/fs.realpath": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
- "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/fsevents": {
- "version": "1.2.13",
- "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz",
- "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==",
- "deprecated": "Upgrade to fsevents v2 to mitigate potential security issues",
- "dev": true,
- "hasInstallScript": true,
- "license": "MIT",
- "optional": true,
- "os": [
- "darwin"
- ],
- "dependencies": {
- "bindings": "^1.5.0",
- "nan": "^2.12.1"
- },
- "engines": {
- "node": ">= 4.0"
- }
- },
- "node_modules/function-bind": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
- "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
- "license": "MIT",
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/function.prototype.name": {
- "version": "1.1.6",
- "resolved": "https://registry.npmjs.org/function.prototype.name/-/function.prototype.name-1.1.6.tgz",
- "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "functions-have-names": "^1.2.3"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/functions-have-names": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/functions-have-names/-/functions-have-names-1.2.3.tgz",
- "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==",
- "dev": true,
- "license": "MIT",
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "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==",
- "license": "MIT",
- "engines": {
- "node": ">=6.9.0"
- }
- },
- "node_modules/get-assigned-identifiers": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/get-assigned-identifiers/-/get-assigned-identifiers-1.2.0.tgz",
- "integrity": "sha512-mBBwmeGTrxEMO4pMaaf/uUEFHnYtwr8FTe8Y/mer4rcV/bye0qGm6pw1bGZFGStxC5O76c5ZAVBGnqHmOaJpdQ==",
- "dev": true,
- "license": "Apache-2.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",
- "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
- "dev": true,
- "license": "ISC",
- "engines": {
- "node": "6.* || 8.* || >= 10.*"
- }
- },
- "node_modules/get-form-data": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/get-form-data/-/get-form-data-3.0.0.tgz",
- "integrity": "sha512-1d53Kn08wlPuLu31/boF1tW2WRYKw3xAWae3mqcjqpDjoqVBtXolbQnudbbEFyFWL7+2SLGRAFdotxNY06V7MA==",
- "license": "MIT"
- },
- "node_modules/get-intrinsic": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz",
- "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==",
- "license": "MIT",
- "dependencies": {
- "es-errors": "^1.3.0",
- "function-bind": "^1.1.2",
- "has-proto": "^1.0.1",
- "has-symbols": "^1.0.3",
- "hasown": "^2.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/get-package-type": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz",
- "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8.0.0"
- }
- },
- "node_modules/get-stdin": {
- "version": "9.0.0",
- "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz",
- "integrity": "sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/get-stream": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
- "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "pump": "^3.0.0"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/get-symbol-description": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.2.tgz",
- "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.5",
- "es-errors": "^1.3.0",
- "get-intrinsic": "^1.2.4"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/get-value": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz",
- "integrity": "sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/geval": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/geval/-/geval-2.1.1.tgz",
- "integrity": "sha512-Ohvqjdkjo5FKYazd8uEgqTugx6yeNA3v66NHy2s9DwNWYVSAQYvY2GwgHCEwVLzlh4WdV4kpP/eyk5ypXNFabQ=="
- },
- "node_modules/git-hooks-list": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/git-hooks-list/-/git-hooks-list-3.1.0.tgz",
- "integrity": "sha512-LF8VeHeR7v+wAbXqfgRlTSX/1BJR9Q1vEMR8JAz1cEg6GX07+zyj3sAdDvYjj/xnlIfVuGgj4qBei1K3hKH+PA==",
- "dev": true,
- "license": "MIT",
- "funding": {
- "url": "https://github.com/fisker/git-hooks-list?sponsor=1"
- }
- },
- "node_modules/glob": {
- "version": "10.4.2",
- "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.2.tgz",
- "integrity": "sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "foreground-child": "^3.1.0",
- "jackspeak": "^3.1.2",
- "minimatch": "^9.0.4",
- "minipass": "^7.1.2",
- "package-json-from-dist": "^1.0.0",
- "path-scurry": "^1.11.1"
- },
- "bin": {
- "glob": "dist/esm/bin.mjs"
- },
- "engines": {
- "node": ">=16 || 14 >=14.18"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/glob-parent": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
- "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "is-glob": "^4.0.3"
- },
- "engines": {
- "node": ">=10.13.0"
- }
- },
- "node_modules/glob-stream": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/glob-stream/-/glob-stream-6.1.0.tgz",
- "integrity": "sha512-uMbLGAP3S2aDOHUDfdoYcdIePUCfysbAd0IAoWVZbeGU/oNQ8asHVSshLDJUPWxfzj8zsCG7/XeHPHTtow0nsw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "extend": "^3.0.0",
- "glob": "^7.1.1",
- "glob-parent": "^3.1.0",
- "is-negated-glob": "^1.0.0",
- "ordered-read-streams": "^1.0.0",
- "pumpify": "^1.3.5",
- "readable-stream": "^2.1.5",
- "remove-trailing-separator": "^1.0.1",
- "to-absolute-glob": "^2.0.0",
- "unique-stream": "^2.0.2"
- },
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/glob-stream/node_modules/glob": {
- "version": "7.2.3",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
- "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
- "deprecated": "Glob versions prior to v9 are no longer supported",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.1.1",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- },
- "engines": {
- "node": "*"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/glob-stream/node_modules/glob-parent": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
- "integrity": "sha512-E8Ak/2+dZY6fnzlR7+ueWvhsH1SjHr4jjss4YS/h4py44jY9MhK/VFdaZJAWDz6BbL21KeteKxFSFpq8OS5gVA==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "is-glob": "^3.1.0",
- "path-dirname": "^1.0.0"
- }
- },
- "node_modules/glob-stream/node_modules/is-glob": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
- "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-extglob": "^2.1.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/glob-watcher": {
- "version": "5.0.5",
- "resolved": "https://registry.npmjs.org/glob-watcher/-/glob-watcher-5.0.5.tgz",
- "integrity": "sha512-zOZgGGEHPklZNjZQaZ9f41i7F2YwE+tS5ZHrDhbBCk3stwahn5vQxnFmBJZHoYdusR6R1bLSXeGUy/BhctwKzw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "anymatch": "^2.0.0",
- "async-done": "^1.2.0",
- "chokidar": "^2.0.0",
- "is-negated-glob": "^1.0.0",
- "just-debounce": "^1.0.0",
- "normalize-path": "^3.0.0",
- "object.defaults": "^1.1.0"
- },
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/glob/node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "balanced-match": "^1.0.0"
- }
- },
- "node_modules/glob/node_modules/minimatch": {
- "version": "9.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
- "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=16 || 14 >=14.17"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/global": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz",
- "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==",
- "license": "MIT",
- "dependencies": {
- "min-document": "^2.19.0",
- "process": "^0.11.10"
- }
- },
- "node_modules/global-agent": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/global-agent/-/global-agent-3.0.0.tgz",
- "integrity": "sha512-PT6XReJ+D07JvGoxQMkT6qji/jVNfX/h364XHZOWeRzy64sSFr+xJ5OX7LI3b4MPQzdL4H8Y8M0xzPpsVMwA8Q==",
- "dev": true,
- "license": "BSD-3-Clause",
- "optional": true,
- "dependencies": {
- "boolean": "^3.0.1",
- "es6-error": "^4.1.1",
- "matcher": "^3.0.0",
- "roarr": "^2.15.3",
- "semver": "^7.3.2",
- "serialize-error": "^7.0.1"
- },
- "engines": {
- "node": ">=10.0"
- }
- },
- "node_modules/global-agent/node_modules/semver": {
- "version": "7.6.3",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
- "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
- "dev": true,
- "license": "ISC",
- "optional": true,
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/global-modules": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz",
- "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "global-prefix": "^1.0.1",
- "is-windows": "^1.0.1",
- "resolve-dir": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/global-prefix": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz",
- "integrity": "sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "expand-tilde": "^2.0.2",
- "homedir-polyfill": "^1.0.1",
- "ini": "^1.3.4",
- "is-windows": "^1.0.1",
- "which": "^1.2.14"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/global-prefix/node_modules/which": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
- "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "isexe": "^2.0.0"
- },
- "bin": {
- "which": "bin/which"
- }
- },
- "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==",
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/globalthis": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.4.tgz",
- "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "define-properties": "^1.2.1",
- "gopd": "^1.0.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/globby": {
- "version": "11.1.0",
- "resolved": "https://registry.npmjs.org/globby/-/globby-11.1.0.tgz",
- "integrity": "sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "array-union": "^2.1.0",
- "dir-glob": "^3.0.1",
- "fast-glob": "^3.2.9",
- "ignore": "^5.2.0",
- "merge2": "^1.4.1",
- "slash": "^3.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/glogg": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/glogg/-/glogg-1.0.2.tgz",
- "integrity": "sha512-5mwUoSuBk44Y4EshyiqcH95ZntbDdTQqA3QYSrxmzj28Ai0vXBGMH1ApSANH14j2sIRtqCEyg6PfsuP7ElOEDA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "sparkles": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/gopd": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz",
- "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==",
- "license": "MIT",
- "dependencies": {
- "get-intrinsic": "^1.1.3"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/got": {
- "version": "11.8.6",
- "resolved": "https://registry.npmjs.org/got/-/got-11.8.6.tgz",
- "integrity": "sha512-6tfZ91bOr7bOXnK7PRDCGBLa1H4U080YHNaAQ2KsMGlLEzRbk44nsZF2E1IeRc3vtJHPVbKCYgdFbaGO2ljd8g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@sindresorhus/is": "^4.0.0",
- "@szmarczak/http-timer": "^4.0.5",
- "@types/cacheable-request": "^6.0.1",
- "@types/responselike": "^1.0.0",
- "cacheable-lookup": "^5.0.3",
- "cacheable-request": "^7.0.2",
- "decompress-response": "^6.0.0",
- "http2-wrapper": "^1.0.0-beta.5.2",
- "lowercase-keys": "^2.0.0",
- "p-cancelable": "^2.0.0",
- "responselike": "^2.0.0"
- },
- "engines": {
- "node": ">=10.19.0"
- },
- "funding": {
- "url": "https://github.com/sindresorhus/got?sponsor=1"
- }
- },
- "node_modules/graceful-fs": {
- "version": "4.2.11",
- "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
- "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/graphemer": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz",
- "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/gulp": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/gulp/-/gulp-4.0.2.tgz",
- "integrity": "sha512-dvEs27SCZt2ibF29xYgmnwwCYZxdxhQ/+LFWlbAW8y7jt68L/65402Lz3+CKy0Ov4rOs+NERmDq7YlZaDqUIfA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "glob-watcher": "^5.0.3",
- "gulp-cli": "^2.2.0",
- "undertaker": "^1.2.1",
- "vinyl-fs": "^3.0.0"
- },
- "bin": {
- "gulp": "bin/gulp.js"
- },
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/gulp-bump": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/gulp-bump/-/gulp-bump-3.2.0.tgz",
- "integrity": "sha512-j3Yvi0QQZEN1HsXArQCBMdX5jedQZ1Cul3W1VZrvKal/Z4Slb6Z7UQLQyPaLm0heNdJKCjpKHgkYSR8VhfPlTA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "bump-regex": "^4.1.0",
- "plugin-error": "^1.0.1",
- "plugin-log": "^0.1.0",
- "semver": "^5.3.0",
- "through2": "^2.0.1"
- },
- "engines": {
- "node": ">= 0.9.0"
- }
- },
- "node_modules/gulp-bump/node_modules/semver": {
- "version": "5.7.2",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
- "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
- "dev": true,
- "license": "ISC",
- "bin": {
- "semver": "bin/semver"
- }
- },
- "node_modules/gulp-bytediff": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/gulp-bytediff/-/gulp-bytediff-1.0.0.tgz",
- "integrity": "sha512-saPF0djwiigU3YOePwhSTEmi+wYmeJKA6j4z5Ek0goNb49KG+o4zPQ+tIXiSkCUdUqxI1KhMCwwHNPTK2+MPgg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "filesize": "~3.1.3",
- "gulp-util": "~3.0.6",
- "map-stream": "~0.0.6"
- }
- },
- "node_modules/gulp-bytediff/node_modules/filesize": {
- "version": "3.1.6",
- "resolved": "https://registry.npmjs.org/filesize/-/filesize-3.1.6.tgz",
- "integrity": "sha512-oI+vBYtHX12CRYLZSJJ6/JWPXsD2uu4dAr4pQJXQdp0Hc5HxBOcHV5IYYY15P+ylwbw9+rn5B00ug+SEmhVCRA==",
- "dev": true,
- "license": "BSD-3-Clause",
- "engines": {
- "node": ">= 0.4.0"
- }
- },
- "node_modules/gulp-cli": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/gulp-cli/-/gulp-cli-2.3.0.tgz",
- "integrity": "sha512-zzGBl5fHo0EKSXsHzjspp3y5CONegCm8ErO5Qh0UzFzk2y4tMvzLWhoDokADbarfZRL2pGpRp7yt6gfJX4ph7A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-colors": "^1.0.1",
- "archy": "^1.0.0",
- "array-sort": "^1.0.0",
- "color-support": "^1.1.3",
- "concat-stream": "^1.6.0",
- "copy-props": "^2.0.1",
- "fancy-log": "^1.3.2",
- "gulplog": "^1.0.0",
- "interpret": "^1.4.0",
- "isobject": "^3.0.1",
- "liftoff": "^3.1.0",
- "matchdep": "^2.0.0",
- "mute-stdout": "^1.0.0",
- "pretty-hrtime": "^1.0.0",
- "replace-homedir": "^1.0.0",
- "semver-greatest-satisfied-range": "^1.1.0",
- "v8flags": "^3.2.0",
- "yargs": "^7.1.0"
- },
- "bin": {
- "gulp": "bin/gulp.js"
- },
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/gulp-cli/node_modules/ansi-regex": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
- "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gulp-cli/node_modules/camelcase": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-3.0.0.tgz",
- "integrity": "sha512-4nhGqUkc4BqbBBB4Q6zLuD7lzzrHYrjKGeYaEji/3tFR5VdJu9v+LilhGIVe8wxEJPPOeWo7eg8dwY13TZ1BNg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gulp-cli/node_modules/cliui": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-3.2.0.tgz",
- "integrity": "sha512-0yayqDxWQbqk3ojkYqUKqaAQ6AfNKeKWRNA8kR0WXzAsdHpP4BIaOmMAG87JGuO6qcobyW4GjxHd9PmhEd+T9w==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "string-width": "^1.0.1",
- "strip-ansi": "^3.0.1",
- "wrap-ansi": "^2.0.0"
- }
- },
- "node_modules/gulp-cli/node_modules/fancy-log": {
- "version": "1.3.3",
- "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz",
- "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-gray": "^0.1.1",
- "color-support": "^1.1.3",
- "parse-node-version": "^1.0.0",
- "time-stamp": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/gulp-cli/node_modules/get-caller-file": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-1.0.3.tgz",
- "integrity": "sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/gulp-cli/node_modules/is-fullwidth-code-point": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
- "integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "number-is-nan": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gulp-cli/node_modules/require-main-filename": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-1.0.1.tgz",
- "integrity": "sha512-IqSUtOVP4ksd1C/ej5zeEh/BIP2ajqpn8c5x+q99gvcIG/Qf0cud5raVnE/Dwd0ua9TXYDoDc0RE5hBSdz22Ug==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/gulp-cli/node_modules/string-width": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
- "integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "code-point-at": "^1.0.0",
- "is-fullwidth-code-point": "^1.0.0",
- "strip-ansi": "^3.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gulp-cli/node_modules/strip-ansi": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
- "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-regex": "^2.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gulp-cli/node_modules/which-module": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/which-module/-/which-module-1.0.0.tgz",
- "integrity": "sha512-F6+WgncZi/mJDrammbTuHe1q0R5hOXv/mBaiNA2TCNT/LTHusX0V+CJnj9XT8ki5ln2UZyyddDgHfCzyrOH7MQ==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/gulp-cli/node_modules/wrap-ansi": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz",
- "integrity": "sha512-vAaEaDM946gbNpH5pLVNR+vX2ht6n0Bt3GXwVB1AuAqZosOvHNF3P7wDnh8KLkSqgUh0uh77le7Owgoz+Z9XBw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "string-width": "^1.0.1",
- "strip-ansi": "^3.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gulp-cli/node_modules/y18n": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-3.2.2.tgz",
- "integrity": "sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/gulp-cli/node_modules/yargs": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-7.1.2.tgz",
- "integrity": "sha512-ZEjj/dQYQy0Zx0lgLMLR8QuaqTihnxirir7EwUHp1Axq4e3+k8jXU5K0VLbNvedv1f4EWtBonDIZm0NUr+jCcA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "camelcase": "^3.0.0",
- "cliui": "^3.2.0",
- "decamelize": "^1.1.1",
- "get-caller-file": "^1.0.1",
- "os-locale": "^1.4.0",
- "read-pkg-up": "^1.0.1",
- "require-directory": "^2.1.1",
- "require-main-filename": "^1.0.1",
- "set-blocking": "^2.0.0",
- "string-width": "^1.0.2",
- "which-module": "^1.0.0",
- "y18n": "^3.2.1",
- "yargs-parser": "^5.0.1"
- }
- },
- "node_modules/gulp-cli/node_modules/yargs-parser": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-5.0.1.tgz",
- "integrity": "sha512-wpav5XYiddjXxirPoCTUPbqM0PXvJ9hiBMvuJgInvo4/lAOTZzUprArw17q2O1P2+GHhbBr18/iQwjL5Z9BqfA==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "camelcase": "^3.0.0",
- "object.assign": "^4.1.0"
- }
- },
- "node_modules/gulp-concat": {
- "version": "2.6.1",
- "resolved": "https://registry.npmjs.org/gulp-concat/-/gulp-concat-2.6.1.tgz",
- "integrity": "sha512-a2scActrQrDBpBbR3WUZGyGS1JEPLg5PZJdIa7/Bi3GuKAmPYDK6SFhy/NZq5R8KsKKFvtfR0fakbUCcKGCCjg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "concat-with-sourcemaps": "^1.0.0",
- "through2": "^2.0.0",
- "vinyl": "^2.0.0"
- },
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/gulp-connect": {
- "version": "5.7.0",
- "resolved": "https://registry.npmjs.org/gulp-connect/-/gulp-connect-5.7.0.tgz",
- "integrity": "sha512-8tRcC6wgXMLakpPw9M7GRJIhxkYdgZsXwn7n56BA2bQYGLR9NOPhMzx7js+qYDy6vhNkbApGKURjAw1FjY4pNA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-colors": "^2.0.5",
- "connect": "^3.6.6",
- "connect-livereload": "^0.6.0",
- "fancy-log": "^1.3.2",
- "map-stream": "^0.0.7",
- "send": "^0.16.2",
- "serve-index": "^1.9.1",
- "serve-static": "^1.13.2",
- "tiny-lr": "^1.1.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gulp-connect/node_modules/ansi-colors": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-2.0.5.tgz",
- "integrity": "sha512-yAdfUZ+c2wetVNIFsNRn44THW+Lty6S5TwMpUfLA/UaGhiXbBv/F8E60/1hMLd0cnF/CDoWH8vzVaI5bAcHCjw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/gulp-connect/node_modules/fancy-log": {
- "version": "1.3.3",
- "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz",
- "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-gray": "^0.1.1",
- "color-support": "^1.1.3",
- "parse-node-version": "^1.0.0",
- "time-stamp": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/gulp-derequire": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/gulp-derequire/-/gulp-derequire-3.0.0.tgz",
- "integrity": "sha512-JBUj1UdjvAjwY6yU0BNTuHdjM5Yv7bACLoadrtaSnjG1l/XpUVLkt0n7upMtXvflRAbwt9F+sLuNHp26NzpMpg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "bufferstreams": "^3.0.0",
- "derequire": "^2.0.0",
- "plugin-error": "^1.0.0",
- "through2": "^3.0.0"
- }
- },
- "node_modules/gulp-derequire/node_modules/through2": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz",
- "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.4",
- "readable-stream": "2 || 3"
- }
- },
- "node_modules/gulp-if": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/gulp-if/-/gulp-if-3.0.0.tgz",
- "integrity": "sha512-fCUEngzNiEZEK2YuPm+sdMpO6ukb8+/qzbGfJBXyNOXz85bCG7yBI+pPSl+N90d7gnLvMsarthsAImx0qy7BAw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "gulp-match": "^1.1.0",
- "ternary-stream": "^3.0.0",
- "through2": "^3.0.1"
- }
- },
- "node_modules/gulp-if/node_modules/through2": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz",
- "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.4",
- "readable-stream": "2 || 3"
- }
- },
- "node_modules/gulp-inject-string": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/gulp-inject-string/-/gulp-inject-string-1.1.2.tgz",
- "integrity": "sha512-+jhEyG+cEqvMdJgxD+7WkO/hDXz7AQl5aP9Rp+f23QaUDi5xme2YNvUjxCTlEySUapn27Pskcq9o8MsBBdvt4g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "event-stream": "3.3.4",
- "plugin-error": "^1.0.1"
- }
- },
- "node_modules/gulp-inject-string/node_modules/event-stream": {
- "version": "3.3.4",
- "resolved": "https://registry.npmjs.org/event-stream/-/event-stream-3.3.4.tgz",
- "integrity": "sha512-QHpkERcGsR0T7Qm3HNJSyXKEEj8AHNxkY3PK8TS2KJvQ7NiSHe3DDpwVKKtoYprL/AreyzFBeIkBIWChAqn60g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "duplexer": "~0.1.1",
- "from": "~0",
- "map-stream": "~0.1.0",
- "pause-stream": "0.0.11",
- "split": "0.3",
- "stream-combiner": "~0.0.4",
- "through": "~2.3.1"
- }
- },
- "node_modules/gulp-inject-string/node_modules/map-stream": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.1.0.tgz",
- "integrity": "sha512-CkYQrPYZfWnu/DAmVCpTSX/xHpKZ80eKh2lAkyA6AJTef6bW+6JpbQZN5rofum7da+SyN1bi5ctTm+lTfcCW3g==",
- "dev": true
- },
- "node_modules/gulp-inject-string/node_modules/split": {
- "version": "0.3.3",
- "resolved": "https://registry.npmjs.org/split/-/split-0.3.3.tgz",
- "integrity": "sha512-wD2AeVmxXRBoX44wAycgjVpMhvbwdI2aZjCkvfNcH1YqHQvJVa1duWc73OyVGJUc05fhFaTZeQ/PYsrmyH0JVA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "through": "2"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/gulp-inject-string/node_modules/stream-combiner": {
- "version": "0.0.4",
- "resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.0.4.tgz",
- "integrity": "sha512-rT00SPnTVyRsaSz5zgSPma/aHSOic5U1prhYdRy5HS2kTZviFpmDgzilbtsJsxiroqACmayynDN/9VzIbX5DOw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "duplexer": "~0.1.1"
- }
- },
- "node_modules/gulp-load-plugins": {
- "version": "2.0.8",
- "resolved": "https://registry.npmjs.org/gulp-load-plugins/-/gulp-load-plugins-2.0.8.tgz",
- "integrity": "sha512-BS0aRx67WnWPt8stEDvwt+biD2gQ1NwDMgxuUhX5+AQSujqlcSecbdL+U6g0zu2S3YjOuY+eGmnXjT2J3hRMIg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "array-unique": "^0.3.2",
- "fancy-log": "^2.0.0",
- "findup-sync": "^5.0.0",
- "gulplog": "^2.0.0",
- "has-gulplog": "^1.0.0",
- "micromatch": "^4.0.2",
- "resolve": "^1.17.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/gulp-load-plugins/node_modules/glogg": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/glogg/-/glogg-2.2.0.tgz",
- "integrity": "sha512-eWv1ds/zAlz+M1ioHsyKJomfY7jbDDPpwSkv14KQj89bycx1nvK5/2Cj/T9g7kzJcX5Bc7Yv22FjfBZS/jl94A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "sparkles": "^2.1.0"
- },
- "engines": {
- "node": ">= 10.13.0"
- }
- },
- "node_modules/gulp-load-plugins/node_modules/gulplog": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/gulplog/-/gulplog-2.2.0.tgz",
- "integrity": "sha512-V2FaKiOhpR3DRXZuYdRLn/qiY0yI5XmqbTKrYbdemJ+xOh2d2MOweI/XFgMzd/9+1twdvMwllnZbWZNJ+BOm4A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "glogg": "^2.2.0"
- },
- "engines": {
- "node": ">= 10.13.0"
- }
- },
- "node_modules/gulp-load-plugins/node_modules/sparkles": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-2.1.0.tgz",
- "integrity": "sha512-r7iW1bDw8R/cFifrD3JnQJX0K1jqT0kprL48BiBpLZLJPmAm34zsVBsK5lc7HirZYZqMW65dOXZgbAGt/I6frg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 10.13.0"
- }
- },
- "node_modules/gulp-match": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/gulp-match/-/gulp-match-1.1.0.tgz",
- "integrity": "sha512-DlyVxa1Gj24DitY2OjEsS+X6tDpretuxD6wTfhXE/Rw2hweqc1f6D/XtsJmoiCwLWfXgR87W9ozEityPCVzGtQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "minimatch": "^3.0.3"
- }
- },
- "node_modules/gulp-plumber": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/gulp-plumber/-/gulp-plumber-1.2.1.tgz",
- "integrity": "sha512-mctAi9msEAG7XzW5ytDVZ9PxWMzzi1pS2rBH7lA095DhMa6KEXjm+St0GOCc567pJKJ/oCvosVAZEpAey0q2eQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "chalk": "^1.1.3",
- "fancy-log": "^1.3.2",
- "plugin-error": "^0.1.2",
- "through2": "^2.0.3"
- },
- "engines": {
- "node": ">=0.10",
- "npm": ">=1.2.10"
- }
- },
- "node_modules/gulp-plumber/node_modules/ansi-regex": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
- "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gulp-plumber/node_modules/ansi-styles": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
- "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gulp-plumber/node_modules/arr-diff": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-1.1.0.tgz",
- "integrity": "sha512-OQwDZUqYaQwyyhDJHThmzId8daf4/RFNLaeh3AevmSeZ5Y7ug4Ga/yKc6l6kTZOBW781rCj103ZuTh8GAsB3+Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "arr-flatten": "^1.0.1",
- "array-slice": "^0.2.3"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gulp-plumber/node_modules/arr-union": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-2.1.0.tgz",
- "integrity": "sha512-t5db90jq+qdgk8aFnxEkjqta0B/GHrM1pxzuuZz2zWsOXc5nKu3t+76s/PQBA8FTcM/ipspIH9jWG4OxCBc2eA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gulp-plumber/node_modules/array-slice": {
- "version": "0.2.3",
- "resolved": "https://registry.npmjs.org/array-slice/-/array-slice-0.2.3.tgz",
- "integrity": "sha512-rlVfZW/1Ph2SNySXwR9QYkChp8EkOEiTMO5Vwx60usw04i4nWemkm9RXmQqgkQFaLHsqLuADvjp6IfgL9l2M8Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gulp-plumber/node_modules/chalk": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
- "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-styles": "^2.2.1",
- "escape-string-regexp": "^1.0.2",
- "has-ansi": "^2.0.0",
- "strip-ansi": "^3.0.0",
- "supports-color": "^2.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gulp-plumber/node_modules/escape-string-regexp": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
- "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.8.0"
- }
- },
- "node_modules/gulp-plumber/node_modules/extend-shallow": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-1.1.4.tgz",
- "integrity": "sha512-L7AGmkO6jhDkEBBGWlLtftA80Xq8DipnrRPr0pyi7GQLXkaq9JYA4xF4z6qnadIC6euiTDKco0cGSU9muw+WTw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "kind-of": "^1.1.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gulp-plumber/node_modules/fancy-log": {
- "version": "1.3.3",
- "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz",
- "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-gray": "^0.1.1",
- "color-support": "^1.1.3",
- "parse-node-version": "^1.0.0",
- "time-stamp": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/gulp-plumber/node_modules/kind-of": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-1.1.0.tgz",
- "integrity": "sha512-aUH6ElPnMGon2/YkxRIigV32MOpTVcoXQ1Oo8aYn40s+sJ3j+0gFZsT8HKDcxNy7Fi9zuquWtGaGAahOdv5p/g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gulp-plumber/node_modules/plugin-error": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-0.1.2.tgz",
- "integrity": "sha512-WzZHcm4+GO34sjFMxQMqZbsz3xiNEgonCskQ9v+IroMmYgk/tas8dG+Hr2D6IbRPybZ12oWpzE/w3cGJ6FJzOw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-cyan": "^0.1.1",
- "ansi-red": "^0.1.1",
- "arr-diff": "^1.0.1",
- "arr-union": "^2.0.1",
- "extend-shallow": "^1.1.2"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gulp-plumber/node_modules/strip-ansi": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
- "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-regex": "^2.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gulp-plumber/node_modules/supports-color": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
- "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.8.0"
- }
- },
- "node_modules/gulp-postcss": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/gulp-postcss/-/gulp-postcss-10.0.0.tgz",
- "integrity": "sha512-z1RF2RJEX/BvFsKN11PXai8lRmihZTiHnlJf7Zu8uHaA/Q7Om4IeN8z1NtMAW5OiLwUY02H0DIFl9tHl0CNSgA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "fancy-log": "^2.0.0",
- "plugin-error": "^2.0.1",
- "postcss-load-config": "^5.0.0",
- "vinyl-sourcemaps-apply": "^0.2.1"
- },
- "engines": {
- "node": ">=18"
- },
- "peerDependencies": {
- "postcss": "^8.0.0"
- }
- },
- "node_modules/gulp-postcss/node_modules/plugin-error": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-2.0.1.tgz",
- "integrity": "sha512-zMakqvIDyY40xHOvzXka0kUvf40nYIuwRE8dWhti2WtjQZ31xAgBZBhxsK7vK3QbRXS1Xms/LO7B5cuAsfB2Gg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-colors": "^1.0.1"
- },
- "engines": {
- "node": ">=10.13.0"
- }
- },
- "node_modules/gulp-rename": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/gulp-rename/-/gulp-rename-2.0.0.tgz",
- "integrity": "sha512-97Vba4KBzbYmR5VBs9mWmK+HwIf5mj+/zioxfZhOKeXtx5ZjBk57KFlePf5nxq9QsTtFl0ejnHE3zTC9MHXqyQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/gulp-sourcemaps": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/gulp-sourcemaps/-/gulp-sourcemaps-3.0.0.tgz",
- "integrity": "sha512-RqvUckJkuYqy4VaIH60RMal4ZtG0IbQ6PXMNkNsshEGJ9cldUPRb/YCgboYae+CLAs1HQNb4ADTKCx65HInquQ==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "@gulp-sourcemaps/identity-map": "^2.0.1",
- "@gulp-sourcemaps/map-sources": "^1.0.0",
- "acorn": "^6.4.1",
- "convert-source-map": "^1.0.0",
- "css": "^3.0.0",
- "debug-fabulous": "^1.0.0",
- "detect-newline": "^2.0.0",
- "graceful-fs": "^4.0.0",
- "source-map": "^0.6.0",
- "strip-bom-string": "^1.0.0",
- "through2": "^2.0.0"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/gulp-sourcemaps/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==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "acorn": "bin/acorn"
- },
- "engines": {
- "node": ">=0.4.0"
- }
- },
- "node_modules/gulp-sourcemaps/node_modules/convert-source-map": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz",
- "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/gulp-sourcemaps/node_modules/source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true,
- "license": "BSD-3-Clause",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gulp-stylus": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/gulp-stylus/-/gulp-stylus-3.0.1.tgz",
- "integrity": "sha512-sHX61bEX1xNnpN7CKnvxsQUXtXI5nSs/tRKqG1OqGPVA/XaHKJ9n2iZc7Nf1EYxnkkR4qIT+4IuDh3AayxhqFQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "accord": "^0.30.0",
- "lodash.assign": "^4.2.0",
- "plugin-error": "^2.0.1",
- "replace-ext": "2.0.0",
- "stylus": "^0.59.0",
- "through2": "^4.0.2",
- "vinyl-sourcemaps-apply": "^0.2.1"
- },
- "engines": {
- "node": ">= 4.2.0"
- }
- },
- "node_modules/gulp-stylus/node_modules/glob": {
- "version": "7.2.3",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
- "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
- "deprecated": "Glob versions prior to v9 are no longer supported",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.1.1",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- },
- "engines": {
- "node": "*"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/gulp-stylus/node_modules/plugin-error": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-2.0.1.tgz",
- "integrity": "sha512-zMakqvIDyY40xHOvzXka0kUvf40nYIuwRE8dWhti2WtjQZ31xAgBZBhxsK7vK3QbRXS1Xms/LO7B5cuAsfB2Gg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-colors": "^1.0.1"
- },
- "engines": {
- "node": ">=10.13.0"
- }
- },
- "node_modules/gulp-stylus/node_modules/readable-stream": {
- "version": "3.6.2",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
- "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.3",
- "string_decoder": "^1.1.1",
- "util-deprecate": "^1.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/gulp-stylus/node_modules/sax": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz",
- "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/gulp-stylus/node_modules/source-map": {
- "version": "0.7.4",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
- "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
- "dev": true,
- "license": "BSD-3-Clause",
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/gulp-stylus/node_modules/stylus": {
- "version": "0.59.0",
- "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.59.0.tgz",
- "integrity": "sha512-lQ9w/XIOH5ZHVNuNbWW8D822r+/wBSO/d6XvtyHLF7LW4KaCIDeVbvn5DF8fGCJAUCwVhVi/h6J0NUcnylUEjg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "@adobe/css-tools": "^4.0.1",
- "debug": "^4.3.2",
- "glob": "^7.1.6",
- "sax": "~1.2.4",
- "source-map": "^0.7.3"
- },
- "bin": {
- "stylus": "bin/stylus"
- },
- "engines": {
- "node": "*"
- },
- "funding": {
- "url": "https://opencollective.com/stylus"
- }
- },
- "node_modules/gulp-stylus/node_modules/through2": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz",
- "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "readable-stream": "3"
- }
- },
- "node_modules/gulp-terser": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/gulp-terser/-/gulp-terser-2.1.0.tgz",
- "integrity": "sha512-lQ3+JUdHDVISAlUIUSZ/G9Dz/rBQHxOiYDQ70IVWFQeh4b33TC1MCIU+K18w07PS3rq/CVc34aQO4SUbdaNMPQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "plugin-error": "^1.0.1",
- "terser": "^5.9.0",
- "through2": "^4.0.2",
- "vinyl-sourcemaps-apply": "^0.2.1"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/gulp-terser/node_modules/readable-stream": {
- "version": "3.6.2",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
- "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.3",
- "string_decoder": "^1.1.1",
- "util-deprecate": "^1.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/gulp-terser/node_modules/through2": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz",
- "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "readable-stream": "3"
- }
- },
- "node_modules/gulp-util": {
- "version": "3.0.8",
- "resolved": "https://registry.npmjs.org/gulp-util/-/gulp-util-3.0.8.tgz",
- "integrity": "sha512-q5oWPc12lwSFS9h/4VIjG+1NuNDlJ48ywV2JKItY4Ycc/n1fXJeYPVQsfu5ZrhQi7FGSDBalwUCLar/GyHXKGw==",
- "deprecated": "gulp-util is deprecated - replace it, following the guidelines at https://medium.com/gulpjs/gulp-util-ca3b1f9f9ac5",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "array-differ": "^1.0.0",
- "array-uniq": "^1.0.2",
- "beeper": "^1.0.0",
- "chalk": "^1.0.0",
- "dateformat": "^2.0.0",
- "fancy-log": "^1.1.0",
- "gulplog": "^1.0.0",
- "has-gulplog": "^0.1.0",
- "lodash._reescape": "^3.0.0",
- "lodash._reevaluate": "^3.0.0",
- "lodash._reinterpolate": "^3.0.0",
- "lodash.template": "^3.0.0",
- "minimist": "^1.1.0",
- "multipipe": "^0.1.2",
- "object-assign": "^3.0.0",
- "replace-ext": "0.0.1",
- "through2": "^2.0.0",
- "vinyl": "^0.5.0"
- },
- "engines": {
- "node": ">=0.10"
- }
- },
- "node_modules/gulp-util/node_modules/ansi-regex": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
- "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gulp-util/node_modules/ansi-styles": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
- "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gulp-util/node_modules/chalk": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
- "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-styles": "^2.2.1",
- "escape-string-regexp": "^1.0.2",
- "has-ansi": "^2.0.0",
- "strip-ansi": "^3.0.0",
- "supports-color": "^2.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gulp-util/node_modules/clone": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz",
- "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.8"
- }
- },
- "node_modules/gulp-util/node_modules/clone-stats": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/clone-stats/-/clone-stats-0.0.1.tgz",
- "integrity": "sha512-dhUqc57gSMCo6TX85FLfe51eC/s+Im2MLkAgJwfaRRexR2tA4dd3eLEW4L6efzHc2iNorrRRXITifnDLlRrhaA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/gulp-util/node_modules/escape-string-regexp": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
- "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.8.0"
- }
- },
- "node_modules/gulp-util/node_modules/fancy-log": {
- "version": "1.3.3",
- "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.3.tgz",
- "integrity": "sha512-k9oEhlyc0FrVh25qYuSELjr8oxsCoc4/LEZfg2iJJrfEk/tZL9bCoJE47gqAvI2m/AUjluCS4+3I0eTx8n3AEw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-gray": "^0.1.1",
- "color-support": "^1.1.3",
- "parse-node-version": "^1.0.0",
- "time-stamp": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/gulp-util/node_modules/has-gulplog": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/has-gulplog/-/has-gulplog-0.1.0.tgz",
- "integrity": "sha512-+F4GzLjwHNNDEAJW2DC1xXfEoPkRDmUdJ7CBYw4MpqtDwOnqdImJl7GWlpqx+Wko6//J8uKTnIe4wZSv7yCqmw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "sparkles": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/gulp-util/node_modules/object-assign": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz",
- "integrity": "sha512-jHP15vXVGeVh1HuaA2wY6lxk+whK/x4KBG88VXeRma7CCun7iGD5qPc4eYykQ9sdQvg8jkwFKsSxHln2ybW3xQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gulp-util/node_modules/replace-ext": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz",
- "integrity": "sha512-AFBWBy9EVRTa/LhEcG8QDP3FvpwZqmvN2QFDuJswFeaVhWnZMp8q3E6Zd90SR04PlIwfGdyVjNyLPyen/ek5CQ==",
- "dev": true,
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/gulp-util/node_modules/strip-ansi": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
- "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-regex": "^2.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/gulp-util/node_modules/supports-color": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
- "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.8.0"
- }
- },
- "node_modules/gulp-util/node_modules/vinyl": {
- "version": "0.5.3",
- "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.5.3.tgz",
- "integrity": "sha512-P5zdf3WB9uzr7IFoVQ2wZTmUwHL8cMZWJGzLBNCHNZ3NB6HTMsYABtt7z8tAGIINLXyAob9B9a1yzVGMFOYKEA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "clone": "^1.0.0",
- "clone-stats": "^0.0.1",
- "replace-ext": "0.0.1"
- },
- "engines": {
- "node": ">= 0.9"
- }
- },
- "node_modules/gulplog": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz",
- "integrity": "sha512-hm6N8nrm3Y08jXie48jsC55eCZz9mnb4OirAStEk2deqeyhXU3C1otDVh+ccttMuc1sBi6RX6ZJ720hs9RCvgw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "glogg": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/has": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/has/-/has-1.0.4.tgz",
- "integrity": "sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4.0"
- }
- },
- "node_modules/has-ansi": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
- "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-regex": "^2.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/has-ansi/node_modules/ansi-regex": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
- "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/has-bigints": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz",
- "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==",
- "dev": true,
- "license": "MIT",
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/has-dynamic-import": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/has-dynamic-import/-/has-dynamic-import-2.1.0.tgz",
- "integrity": "sha512-su0anMkNEnJKZ/rB99jn3y6lV/J8Ro96hBJ28YAeVzj5rWxH+YL/AdCyiYYA1HDLV9YhmvqpWSJJj2KLo1MX6g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.5",
- "get-intrinsic": "^1.2.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/has-flag": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
- "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/has-gulplog": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/has-gulplog/-/has-gulplog-1.0.0.tgz",
- "integrity": "sha512-3bRkTBls3EdDU9Aw9VyMjSeIfPTGZO9C/eDEr7wdnu9fP0I2Mli8eQlo+oN57Oog8rpByXFZeNXNs+pQwJF6ow==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "sparkles": "^2.0.0"
- },
- "engines": {
- "node": ">=10.13.0"
- }
- },
- "node_modules/has-gulplog/node_modules/sparkles": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-2.1.0.tgz",
- "integrity": "sha512-r7iW1bDw8R/cFifrD3JnQJX0K1jqT0kprL48BiBpLZLJPmAm34zsVBsK5lc7HirZYZqMW65dOXZgbAGt/I6frg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 10.13.0"
- }
- },
- "node_modules/has-property-descriptors": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz",
- "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==",
- "license": "MIT",
- "dependencies": {
- "es-define-property": "^1.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/has-proto": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz",
- "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==",
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/has-symbols": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz",
- "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==",
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/has-tostringtag": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz",
- "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "has-symbols": "^1.0.3"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/has-value": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz",
- "integrity": "sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "get-value": "^2.0.6",
- "has-values": "^1.0.0",
- "isobject": "^3.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/has-values": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz",
- "integrity": "sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-number": "^3.0.0",
- "kind-of": "^4.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/has-values/node_modules/kind-of": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz",
- "integrity": "sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-buffer": "^1.1.5"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/hash-base": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz",
- "integrity": "sha512-EeeoJKjTyt868liAlVmcv2ZsUfGHlE3Q+BICOXcZiwN3osr5Q/zFGYmTJpoIzuaSTAwndFy+GqhEwlU4L3j4Ow==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.1",
- "safe-buffer": "^5.0.1"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/hash.js": {
- "version": "1.1.7",
- "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz",
- "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.3",
- "minimalistic-assert": "^1.0.1"
- }
- },
- "node_modules/hasown": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz",
- "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==",
- "license": "MIT",
- "dependencies": {
- "function-bind": "^1.1.2"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/he": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz",
- "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "he": "bin/he"
- }
- },
- "node_modules/headless": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/headless/-/headless-1.2.0.tgz",
- "integrity": "sha512-KY721osnVJ/hU8w2Gpsu1znT16mjWsIVl3qpJUvKj3U3xfPq1N6hHIDRGRyahYYPZbTBbVtOPuBVCW7Mi83bCg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.6"
- }
- },
- "node_modules/hexoid": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/hexoid/-/hexoid-1.0.0.tgz",
- "integrity": "sha512-QFLV0taWQOZtvIRIAdBChesmogZrtuXvVWsFHZTk2SU+anspqZ2vMnoLg7IE1+Uk16N19APic1BuF8bC8c2m5g==",
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/hidden": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/hidden/-/hidden-1.1.1.tgz",
- "integrity": "sha512-DwMtR449+bQdcZq6+w1VYElponUyrT4jiwWjcg3DKzoPTgft+IMQZ95qmQIAnpoSGFT6iXn7TohlBR+OWBShSQ=="
- },
- "node_modules/hmac-drbg": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
- "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "hash.js": "^1.0.3",
- "minimalistic-assert": "^1.0.0",
- "minimalistic-crypto-utils": "^1.0.1"
- }
- },
- "node_modules/homedir-polyfill": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz",
- "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "parse-passwd": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "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,
- "license": "ISC"
- },
- "node_modules/html-element": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/html-element/-/html-element-2.3.1.tgz",
- "integrity": "sha512-xnFt2ZkbFcjc+JoAtg3Hl89VeEZDjododu4VCPkRvFmBTHHA9U1Nt6hLUWfW2O+6Sl/rT1hHK/PivleX3PdBJQ==",
- "license": "MIT",
- "dependencies": {
- "class-list": "~0.1.1"
- },
- "engines": {
- "node": ">=4.2"
- }
- },
- "node_modules/html-inject-script": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/html-inject-script/-/html-inject-script-2.0.0.tgz",
- "integrity": "sha512-CWZir+cmhKM2qhbsLytSZnFg6e2K/E+/869HfuzPhI+KD85FFn3Ml4LARS06rbhLYV7RZga23iKliNp9akqKUg==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "hyperstream": "^1.2.2",
- "minimist": "^1.2.0"
- },
- "bin": {
- "htmlinjectscript": "cli.js"
- }
- },
- "node_modules/html-select": {
- "version": "2.3.24",
- "resolved": "https://registry.npmjs.org/html-select/-/html-select-2.3.24.tgz",
- "integrity": "sha512-kQ+YZoVQ8Aux6bUqMVc0iufcZOv03+xYZ4J5v2beT5wkNrW/e2roZ8pnU4LunVOVBGFkbodFKR0TvuMkTdyrJQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "cssauron": "^1.1.0",
- "duplexer2": "~0.0.2",
- "inherits": "^2.0.1",
- "minimist": "~0.0.8",
- "readable-stream": "^1.0.27-1",
- "split": "~0.3.0",
- "stream-splicer": "^1.2.0",
- "through2": "^1.0.0"
- },
- "bin": {
- "html-select": "bin/cmd.js"
- }
- },
- "node_modules/html-select/node_modules/duplexer2": {
- "version": "0.0.2",
- "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz",
- "integrity": "sha512-+AWBwjGadtksxjOQSFDhPNQbed7icNXApT4+2BNpsXzcCBiInq2H9XW0O8sfHFaPmnQRs7cg/P0fAr2IWQSW0g==",
- "dev": true,
- "license": "BSD",
- "dependencies": {
- "readable-stream": "~1.1.9"
- }
- },
- "node_modules/html-select/node_modules/isarray": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
- "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/html-select/node_modules/minimist": {
- "version": "0.0.10",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz",
- "integrity": "sha512-iotkTvxc+TwOm5Ieim8VnSNvCDjCK9S8G3scJ50ZthspSxa7jx50jkhYduuAtAjvfDUwSgOwf8+If99AlOEhyw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/html-select/node_modules/readable-stream": {
- "version": "1.1.14",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
- "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.1",
- "isarray": "0.0.1",
- "string_decoder": "~0.10.x"
- }
- },
- "node_modules/html-select/node_modules/split": {
- "version": "0.3.3",
- "resolved": "https://registry.npmjs.org/split/-/split-0.3.3.tgz",
- "integrity": "sha512-wD2AeVmxXRBoX44wAycgjVpMhvbwdI2aZjCkvfNcH1YqHQvJVa1duWc73OyVGJUc05fhFaTZeQ/PYsrmyH0JVA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "through": "2"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/html-select/node_modules/stream-splicer": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/stream-splicer/-/stream-splicer-1.3.2.tgz",
- "integrity": "sha512-nmUMEbdm/sZYqe9dZs7mqJvTYpunsDbIWI5FiBCMc/hMVd6vwzy+ITmo7C3gcLYqrn+uQ1w+EJwooWvJ997JAA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "indexof": "0.0.1",
- "inherits": "^2.0.1",
- "isarray": "~0.0.1",
- "readable-stream": "^1.1.13-1",
- "readable-wrap": "^1.0.0",
- "through2": "^1.0.0"
- }
- },
- "node_modules/html-select/node_modules/string_decoder": {
- "version": "0.10.31",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
- "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/html-select/node_modules/through2": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/through2/-/through2-1.1.1.tgz",
- "integrity": "sha512-zEbpaeSMHxczpTzO1KkMHjBC1enTA68ojeaZGG4toqdASpb9t4xUZaYFBq2/9OHo5nTGFVSYd4c910OR+6wxbQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "readable-stream": ">=1.1.13-1 <1.2.0-0",
- "xtend": ">=4.0.0 <4.1.0-0"
- }
- },
- "node_modules/html-tokenize": {
- "version": "1.2.5",
- "resolved": "https://registry.npmjs.org/html-tokenize/-/html-tokenize-1.2.5.tgz",
- "integrity": "sha512-7sCme3w9Hiv/kfL6sO6ePTGAV5fY6P7WDZyOs0zfXXU8vsS1ps1CQfGe0J1yuAdcCnOJ9h66RLYX/e9Cife8yw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "~2.0.1",
- "minimist": "~0.0.8",
- "readable-stream": "~1.0.27-1",
- "through2": "~0.4.1"
- },
- "bin": {
- "html-tokenize": "bin/cmd.js"
- }
- },
- "node_modules/html-tokenize/node_modules/isarray": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
- "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/html-tokenize/node_modules/minimist": {
- "version": "0.0.10",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.10.tgz",
- "integrity": "sha512-iotkTvxc+TwOm5Ieim8VnSNvCDjCK9S8G3scJ50ZthspSxa7jx50jkhYduuAtAjvfDUwSgOwf8+If99AlOEhyw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/html-tokenize/node_modules/object-keys": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-0.4.0.tgz",
- "integrity": "sha512-ncrLw+X55z7bkl5PnUvHwFK9FcGuFYo9gtjws2XtSzL+aZ8tm830P60WJ0dSmFVaSalWieW5MD7kEdnXda9yJw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/html-tokenize/node_modules/readable-stream": {
- "version": "1.0.34",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz",
- "integrity": "sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.1",
- "isarray": "0.0.1",
- "string_decoder": "~0.10.x"
- }
- },
- "node_modules/html-tokenize/node_modules/string_decoder": {
- "version": "0.10.31",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
- "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/html-tokenize/node_modules/through2": {
- "version": "0.4.2",
- "resolved": "https://registry.npmjs.org/through2/-/through2-0.4.2.tgz",
- "integrity": "sha512-45Llu+EwHKtAZYTPPVn3XZHBgakWMN3rokhEv5hu596XP+cNgplMg+Gj+1nmAvj+L0K7+N49zBKx5rah5u0QIQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "readable-stream": "~1.0.17",
- "xtend": "~2.1.1"
- }
- },
- "node_modules/html-tokenize/node_modules/xtend": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/xtend/-/xtend-2.1.2.tgz",
- "integrity": "sha512-vMNKzr2rHP9Dp/e1NQFnLQlwlhp9L/LfvnsVdHxN1f+uggyVI3i08uD14GPvCToPkdsRfyPqIyYGmIk58V98ZQ==",
- "dev": true,
- "dependencies": {
- "object-keys": "~0.4.0"
- },
- "engines": {
- "node": ">=0.4"
- }
- },
- "node_modules/htmlescape": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/htmlescape/-/htmlescape-1.1.1.tgz",
- "integrity": "sha512-eVcrzgbR4tim7c7soKQKtxa/kQM4TzjnlU83rcZ9bHU6t31ehfV7SktN6McWgwPWg+JYMA/O3qpGxBvFq1z2Jg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10"
- }
- },
- "node_modules/http-cache-semantics": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz",
- "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==",
- "dev": true,
- "license": "BSD-2-Clause"
- },
- "node_modules/http-errors": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz",
- "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "depd": "2.0.0",
- "inherits": "2.0.4",
- "setprototypeof": "1.2.0",
- "statuses": "2.0.1",
- "toidentifier": "1.0.1"
- },
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/http-errors/node_modules/statuses": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz",
- "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/http-parser-js": {
- "version": "0.5.8",
- "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.8.tgz",
- "integrity": "sha512-SGeBX54F94Wgu5RH3X5jsDtf4eHyRogWX1XGT3b4HuW3tQPM4AaBzoUji/4AAJNXCEOWZ5O0DgZmJw1947gD5Q==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/http2-wrapper": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/http2-wrapper/-/http2-wrapper-1.0.3.tgz",
- "integrity": "sha512-V+23sDMr12Wnz7iTcDeJr3O6AIxlnvT/bmaAAAP/Xda35C90p9599p0F1eHR/N1KILWSoWVAiOMFjBBXaXSMxg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "quick-lru": "^5.1.1",
- "resolve-alpn": "^1.0.0"
- },
- "engines": {
- "node": ">=10.19.0"
- }
- },
- "node_modules/https-browserify": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz",
- "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/humanize-duration": {
- "version": "3.32.1",
- "resolved": "https://registry.npmjs.org/humanize-duration/-/humanize-duration-3.32.1.tgz",
- "integrity": "sha512-inh5wue5XdfObhu/IGEMiA1nUXigSGcaKNemcbLRKa7jXYGDZXr3LoT9pTIzq2hPEbld7w/qv9h+ikWGz8fL1g==",
- "license": "Unlicense"
- },
- "node_modules/hyperscript": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/hyperscript/-/hyperscript-2.0.2.tgz",
- "integrity": "sha512-uggBAYfHFC5WyZQXlJ61BNZbPmJbschcvfYNhYdZWCp+0J8KYb5Du8nQuk8Ru+ThoCNb01B0tPtnTRqnrFBkVg==",
- "license": "MIT",
- "dependencies": {
- "browser-split": "0.0.0",
- "class-list": "~0.1.0",
- "html-element": "^2.0.0"
- }
- },
- "node_modules/hyperstream": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/hyperstream/-/hyperstream-1.2.2.tgz",
- "integrity": "sha512-A4cGAv/WXwwlSR7gjDV/s2LDJedQ+9v0cvdMd/JGCuDtAqnFXbxFa0M4AG7x84ZnAUTzHnW4At18fb1ai6bdHw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "concat-stream": "^1.0.0",
- "ent": "^2.0.0",
- "stream-combiner2": "~1.0.1",
- "through2": "~0.5.1",
- "trumpet": "^1.6.4",
- "utf8-stream": "~0.0.0"
- }
- },
- "node_modules/hyperstream/node_modules/duplexer2": {
- "version": "0.0.2",
- "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz",
- "integrity": "sha512-+AWBwjGadtksxjOQSFDhPNQbed7icNXApT4+2BNpsXzcCBiInq2H9XW0O8sfHFaPmnQRs7cg/P0fAr2IWQSW0g==",
- "dev": true,
- "license": "BSD",
- "dependencies": {
- "readable-stream": "~1.1.9"
- }
- },
- "node_modules/hyperstream/node_modules/isarray": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
- "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/hyperstream/node_modules/readable-stream": {
- "version": "1.1.14",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
- "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.1",
- "isarray": "0.0.1",
- "string_decoder": "~0.10.x"
- }
- },
- "node_modules/hyperstream/node_modules/stream-combiner2": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.0.2.tgz",
- "integrity": "sha512-7DO1SfBVnyIyo9ytUjSyVojT5bp1ZY6h3pj7HUs6PwcRSd/r8mBOHbRwYC7nbHRakKzMKyNp5HWJRv4GgVherA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "duplexer2": "~0.0.2",
- "through2": "~0.5.1"
- }
- },
- "node_modules/hyperstream/node_modules/string_decoder": {
- "version": "0.10.31",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
- "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/hyperstream/node_modules/through2": {
- "version": "0.5.1",
- "resolved": "https://registry.npmjs.org/through2/-/through2-0.5.1.tgz",
- "integrity": "sha512-zexCrAOTbjkBCXGyozn7hhS3aEaqdrc59mAD2E3dKYzV1vFuEGQ1hEDJN2oQMQFwy4he2zyLqPZV+AlfS8ZWJA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "readable-stream": "~1.0.17",
- "xtend": "~3.0.0"
- }
- },
- "node_modules/hyperstream/node_modules/through2/node_modules/readable-stream": {
- "version": "1.0.34",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz",
- "integrity": "sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.1",
- "isarray": "0.0.1",
- "string_decoder": "~0.10.x"
- }
- },
- "node_modules/hyperstream/node_modules/xtend": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/xtend/-/xtend-3.0.0.tgz",
- "integrity": "sha512-sp/sT9OALMjRW1fKDlPeuSZlDQpkqReA0pyJukniWbTGoEKefHxhGJynE3PNhUMlcM8qWIjPwecwCw4LArS5Eg==",
- "dev": true,
- "engines": {
- "node": ">=0.4"
- }
- },
- "node_modules/iconv-lite": {
- "version": "0.4.24",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
- "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "safer-buffer": ">= 2.1.2 < 3"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/ieee754": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
- "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==",
- "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"
- }
- ],
- "license": "BSD-3-Clause"
- },
- "node_modules/ignore": {
- "version": "5.3.2",
- "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz",
- "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 4"
- }
- },
- "node_modules/import-fresh": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
- "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "parent-module": "^1.0.0",
- "resolve-from": "^4.0.0"
- },
- "engines": {
- "node": ">=6"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/imurmurhash": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
- "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.8.19"
- }
- },
- "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==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/indexof": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz",
- "integrity": "sha512-i0G7hLJ1z0DE8dsqJa2rycj9dBmNKgXBvotXtZYXakU9oivfB9Uj2ZBC27qqef2U58/ZLwalxa1X/RDCdkHtVg=="
- },
- "node_modules/indx": {
- "version": "0.2.3",
- "resolved": "https://registry.npmjs.org/indx/-/indx-0.2.3.tgz",
- "integrity": "sha512-SEM+Px+Ghr3fZ+i9BNvUIZJ4UhojFuf+sT7x3cl2/ElL7NXne1A/m29VYzWTTypdOgDnWfoKNewIuPA6y+NMyQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/inflight": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
- "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
- "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "once": "^1.3.0",
- "wrappy": "1"
- }
- },
- "node_modules/inherits": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
- "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
- "license": "ISC"
- },
- "node_modules/ini": {
- "version": "1.3.8",
- "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz",
- "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/inline-source-map": {
- "version": "0.6.3",
- "resolved": "https://registry.npmjs.org/inline-source-map/-/inline-source-map-0.6.3.tgz",
- "integrity": "sha512-1aVsPEsJWMJq/pdMU61CDlm1URcW702MTB4w9/zUjMus6H/Py8o7g68Pr9D4I6QluWGt/KdmswuRhaA05xVR1w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "source-map": "~0.5.3"
- }
- },
- "node_modules/insert-css": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/insert-css/-/insert-css-2.0.0.tgz",
- "integrity": "sha512-xGq5ISgcUP5cvGkS2MMFLtPDBtrtQPSFfC6gA6U8wHKqfjTIMZLZNxOItQnoSjdOzlXOLU/yD32RKC4SvjNbtA==",
- "license": "MIT"
- },
- "node_modules/insert-module-globals": {
- "version": "7.2.1",
- "resolved": "https://registry.npmjs.org/insert-module-globals/-/insert-module-globals-7.2.1.tgz",
- "integrity": "sha512-ufS5Qq9RZN+Bu899eA9QCAYThY+gGW7oRkmb0vC93Vlyu/CFGcH0OYPEjVkDXA5FEbTt1+VWzdoOD3Ny9N+8tg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "acorn-node": "^1.5.2",
- "combine-source-map": "^0.8.0",
- "concat-stream": "^1.6.1",
- "is-buffer": "^1.1.0",
- "JSONStream": "^1.0.3",
- "path-is-absolute": "^1.0.1",
- "process": "~0.11.0",
- "through2": "^2.0.0",
- "undeclared-identifiers": "^1.1.2",
- "xtend": "^4.0.0"
- },
- "bin": {
- "insert-module-globals": "bin/cmd.js"
- }
- },
- "node_modules/internal-slot": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.7.tgz",
- "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "es-errors": "^1.3.0",
- "hasown": "^2.0.0",
- "side-channel": "^1.0.4"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/interpret": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz",
- "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/invert-kv": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/invert-kv/-/invert-kv-1.0.0.tgz",
- "integrity": "sha512-xgs2NH9AE66ucSq4cNG1nhSFghr5l6tdL15Pk+jl46bmmBapgoaY/AacXyaDznAqmGL99TiLSQgO/XazFSKYeQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-absolute": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-absolute/-/is-absolute-1.0.0.tgz",
- "integrity": "sha512-dOWoqflvcydARa360Gvv18DZ/gRuHKi2NU/wU5X1ZFzdYfH29nkiNZsF3mp4OJ3H4yo9Mx8A/uAGNzpzPN3yBA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-relative": "^1.0.0",
- "is-windows": "^1.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-accessor-descriptor": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.1.tgz",
- "integrity": "sha512-YBUanLI8Yoihw923YeFUS5fs0fF2f5TSFTNiYAAzhhDscDa3lEqYuz1pDOEP5KvX94I9ey3vsqjJcLVFVU+3QA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "hasown": "^2.0.0"
- },
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/is-arguments": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz",
- "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.2",
- "has-tostringtag": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-array-buffer": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.4.tgz",
- "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.2",
- "get-intrinsic": "^1.2.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-arrayish": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
- "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/is-bigint": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz",
- "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "has-bigints": "^1.0.1"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-binary-path": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz",
- "integrity": "sha512-9fRVlXc0uCxEDj1nQzaWONSpbTfx0FmJfzHF7pwlI8DkWGoHBBea4Pg5Ky0ojwwxQmnSifgbKkI06Qv0Ljgj+Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "binary-extensions": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-boolean-object": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/is-boolean-object/-/is-boolean-object-1.1.2.tgz",
- "integrity": "sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.2",
- "has-tostringtag": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-buffer": {
- "version": "1.1.6",
- "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-1.1.6.tgz",
- "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/is-callable": {
- "version": "1.2.7",
- "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz",
- "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-core-module": {
- "version": "2.15.1",
- "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz",
- "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "hasown": "^2.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-data-descriptor": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.1.tgz",
- "integrity": "sha512-bc4NlCDiCr28U4aEsQ3Qs2491gVq4V8G7MQyws968ImqjKuYtTJXrl7Vq7jsN7Ly/C3xj5KWFrY7sHNeDkAzXw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "hasown": "^2.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/is-data-view": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-data-view/-/is-data-view-1.0.1.tgz",
- "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-typed-array": "^1.1.13"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-date-object": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz",
- "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "has-tostringtag": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-descriptor": {
- "version": "0.1.7",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.7.tgz",
- "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-accessor-descriptor": "^1.0.1",
- "is-data-descriptor": "^1.0.1"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/is-extendable": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
- "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-extglob": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
- "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-finite": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz",
- "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "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,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/is-generator-function": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz",
- "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "has-tostringtag": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-glob": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
- "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-extglob": "^2.1.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-map": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.3.tgz",
- "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-negated-glob": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-negated-glob/-/is-negated-glob-1.0.0.tgz",
- "integrity": "sha512-czXVVn/QEmgvej1f50BZ648vUI+em0xqMq2Sn+QncCLN4zj1UAxlT+kw/6ggQTOaZPd1HqKQGEqbpQVtJucWug==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-negative-zero": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.3.tgz",
- "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-number": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
- "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "kind-of": "^3.0.2"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-number-object": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.7.tgz",
- "integrity": "sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "has-tostringtag": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-number/node_modules/kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-buffer": "^1.1.5"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-path-cwd": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-2.2.0.tgz",
- "integrity": "sha512-w942bTcih8fdJPJmQHFzkS76NEP8Kzzvmw92cXsazb8intwLqPibPPdXf4ANdKV3rYMuuQYGIWtvz9JilB3NFQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/is-path-inside": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz",
- "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/is-plain-obj": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz",
- "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/is-plain-object": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz",
- "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-power-of-two": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-power-of-two/-/is-power-of-two-1.0.0.tgz",
- "integrity": "sha512-Ug8fOlUr/SbF0FyyZFrqONN0WmyjsypPcOQT31zyj/fTupw0Bt37+M+vuScD9iV/Zkebd0B8iDBJ+r5rXyXX2A==",
- "license": "MIT"
- },
- "node_modules/is-promise": {
- "version": "2.2.2",
- "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.2.2.tgz",
- "integrity": "sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/is-regex": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.4.tgz",
- "integrity": "sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.2",
- "has-tostringtag": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-relative": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-relative/-/is-relative-1.0.0.tgz",
- "integrity": "sha512-Kw/ReK0iqwKeu0MITLFuj0jbPAmEiOsIwyIXvvbfa6QfmN9pkD1M+8pdk7Rl/dTKbH34/XBFMbgD4iMJhLQbGA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-unc-path": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-set": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.3.tgz",
- "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-shared-array-buffer": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz",
- "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.7"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-string": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz",
- "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "has-tostringtag": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-symbol": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.4.tgz",
- "integrity": "sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "has-symbols": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-typed-array": {
- "version": "1.1.13",
- "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz",
- "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "which-typed-array": "^1.1.14"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-unc-path": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-unc-path/-/is-unc-path-1.0.0.tgz",
- "integrity": "sha512-mrGpVd0fs7WWLfVsStvgF6iEJnbjDFZh9/emhRDcGWTduTfNHd9CHeUwH3gYIjdbwo4On6hunkztwOaAw0yllQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "unc-path-regex": "^0.1.2"
- },
- "engines": {
- "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": "sha512-rMYPYvCzsXywIsldgLaSoPlw5PfoB/ssr7hY4pLfcodrA5M/eArza1a9VmTiNIBNMjOGr1Ow9mTyU2o69U6U9Q==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/is-valid-glob": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-valid-glob/-/is-valid-glob-1.0.0.tgz",
- "integrity": "sha512-AhiROmoEFDSsjx8hW+5sGwgKVIORcXnrlAx/R0ZSeaPw70Vw0CqkGBBhHGL58Uox2eXnU1AnvXJl1XlyedO5bA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/is-weakmap": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.2.tgz",
- "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-weakref": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz",
- "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.2"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-weakset": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.3.tgz",
- "integrity": "sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.7",
- "get-intrinsic": "^1.2.4"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/is-windows": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz",
- "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==",
- "license": "MIT"
- },
- "node_modules/isexe": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
- "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/isobject": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
- "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/jackspeak": {
- "version": "3.4.3",
- "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz",
- "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==",
- "dev": true,
- "license": "BlueOak-1.0.0",
- "dependencies": {
- "@isaacs/cliui": "^8.0.2"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- },
- "optionalDependencies": {
- "@pkgjs/parseargs": "^0.11.0"
- }
- },
- "node_modules/jju": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/jju/-/jju-1.4.0.tgz",
- "integrity": "sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/js-tokens": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
- "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
- "license": "MIT"
- },
- "node_modules/js-yaml": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
- "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "argparse": "^2.0.1"
- },
- "bin": {
- "js-yaml": "bin/js-yaml.js"
- }
- },
- "node_modules/jsesc": {
- "version": "2.5.2",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
- "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
- "license": "MIT",
- "bin": {
- "jsesc": "bin/jsesc"
- },
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/json-buffer": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz",
- "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/json-schema-traverse": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
- "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/json-stable-stringify-without-jsonify": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
- "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/json-stringify-safe": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
- "integrity": "sha512-ZClg6AaYvamvYEE82d3Iyd3vSSIjQ+odgjaTzRuO3s7toCdFKczob2i0zCh7JE8kWn17yvAWhUVxvqGwUalsRA==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/json5": {
- "version": "2.2.3",
- "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
- "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
- "license": "MIT",
- "bin": {
- "json5": "lib/cli.js"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/jsonfile": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
- "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==",
- "dev": true,
- "license": "MIT",
- "optionalDependencies": {
- "graceful-fs": "^4.1.6"
- }
- },
- "node_modules/jsonparse": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz",
- "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==",
- "dev": true,
- "engines": [
- "node >= 0.2.0"
- ],
- "license": "MIT"
- },
- "node_modules/JSONStream": {
- "version": "1.3.5",
- "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz",
- "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==",
- "dev": true,
- "license": "(MIT OR Apache-2.0)",
- "dependencies": {
- "jsonparse": "^1.2.0",
- "through": ">=2.2.7 <3"
- },
- "bin": {
- "JSONStream": "bin.js"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/jsonstream-next": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/jsonstream-next/-/jsonstream-next-3.0.0.tgz",
- "integrity": "sha512-aAi6oPhdt7BKyQn1SrIIGZBt0ukKuOUE1qV6kJ3GgioSOYzsRc8z9Hfr1BVmacA/jLe9nARfmgMGgn68BqIAgg==",
- "dev": true,
- "license": "(MIT OR Apache-2.0)",
- "dependencies": {
- "jsonparse": "^1.2.0",
- "through2": "^4.0.2"
- },
- "bin": {
- "jsonstream-next": "bin.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/jsonstream-next/node_modules/readable-stream": {
- "version": "3.6.2",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
- "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.3",
- "string_decoder": "^1.1.1",
- "util-deprecate": "^1.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/jsonstream-next/node_modules/through2": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz",
- "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "readable-stream": "3"
- }
- },
- "node_modules/just-debounce": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/just-debounce/-/just-debounce-1.1.0.tgz",
- "integrity": "sha512-qpcRocdkUmf+UTNBYx5w6dexX5J31AKK1OmPwH630a83DdVVUIngk55RSAiIGpQyoH0dlr872VHfPjnQnK1qDQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/keymirror": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/keymirror/-/keymirror-0.1.1.tgz",
- "integrity": "sha512-vIkZAFWoDijgQT/Nvl2AHCMmnegN2ehgTPYuyy2hWQkQSntI0S7ESYqdLkoSe1HyEBFHHkCgSIvVdSEiWwKvCg=="
- },
- "node_modules/keyv": {
- "version": "4.5.4",
- "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz",
- "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "json-buffer": "3.0.1"
- }
- },
- "node_modules/kind-of": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-5.1.0.tgz",
- "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/labeled-stream-splicer": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/labeled-stream-splicer/-/labeled-stream-splicer-2.0.2.tgz",
- "integrity": "sha512-Ca4LSXFFZUjPScRaqOcFxneA0VpKZr4MMYCljyQr4LIewTLb3Y0IUTIsnBBsVubIeEfxeSZpSjSsRM8APEQaAw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "inherits": "^2.0.1",
- "stream-splicer": "^2.0.0"
- }
- },
- "node_modules/last-run": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/last-run/-/last-run-1.1.1.tgz",
- "integrity": "sha512-U/VxvpX4N/rFvPzr3qG5EtLKEnNI0emvIQB3/ecEwv+8GHaUKbIB8vxv1Oai5FAF0d0r7LXHhLLe5K/yChm5GQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "default-resolution": "^2.0.0",
- "es6-weak-map": "^2.0.1"
- },
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/lazystream": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/lazystream/-/lazystream-1.0.1.tgz",
- "integrity": "sha512-b94GiNHQNy6JNTrt5w6zNyffMrNkXZb3KTkCZJb2V1xaEGCk093vkZ2jk3tpaeP33/OiXC+WvK9AxUebnf5nbw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "readable-stream": "^2.0.5"
- },
- "engines": {
- "node": ">= 0.6.3"
- }
- },
- "node_modules/lcid": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/lcid/-/lcid-1.0.0.tgz",
- "integrity": "sha512-YiGkH6EnGrDGqLMITnGjXtGmNtjoXw9SVUzcaos8RBi7Ps0VBylkq+vOcY9QE5poLasPCR849ucFUkl0UzUyOw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "invert-kv": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/lead": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/lead/-/lead-1.0.0.tgz",
- "integrity": "sha512-IpSVCk9AYvLHo5ctcIXxOBpMWUe+4TKN3VPWAKUbJikkmsGp0VrSM8IttVc32D6J4WUsiPE6aEFRNmIoF/gdow==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "flush-write-stream": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/levn": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
- "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "prelude-ls": "^1.2.1",
- "type-check": "~0.4.0"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/liftoff": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/liftoff/-/liftoff-3.1.0.tgz",
- "integrity": "sha512-DlIPlJUkCV0Ips2zf2pJP0unEoT1kwYhiiPUGF3s/jtxTCjziNLoiVVh+jqWOWeFi6mmwQ5fNxvAUyPad4Dfog==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "extend": "^3.0.0",
- "findup-sync": "^3.0.0",
- "fined": "^1.0.1",
- "flagged-respawn": "^1.0.0",
- "is-plain-object": "^2.0.4",
- "object.map": "^1.0.0",
- "rechoir": "^0.6.2",
- "resolve": "^1.1.7"
- },
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/liftoff/node_modules/define-property": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz",
- "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-descriptor": "^1.0.2",
- "isobject": "^3.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/liftoff/node_modules/extend-shallow": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
- "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "assign-symbols": "^1.0.0",
- "is-extendable": "^1.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/liftoff/node_modules/findup-sync": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-3.0.0.tgz",
- "integrity": "sha512-YbffarhcicEhOrm4CtrwdKBdCuz576RLdhJDsIfvNtxUuhdRet1qZcsMjqbePtAseKdAnDyM/IyXbu7PRPRLYg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "detect-file": "^1.0.0",
- "is-glob": "^4.0.0",
- "micromatch": "^3.0.4",
- "resolve-dir": "^1.0.1"
- },
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/liftoff/node_modules/is-descriptor": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz",
- "integrity": "sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-accessor-descriptor": "^1.0.1",
- "is-data-descriptor": "^1.0.1"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/liftoff/node_modules/is-extendable": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
- "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-plain-object": "^2.0.4"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/liftoff/node_modules/is-plain-object": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
- "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "isobject": "^3.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/liftoff/node_modules/kind-of": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
- "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/liftoff/node_modules/micromatch": {
- "version": "3.1.10",
- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz",
- "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "arr-diff": "^4.0.0",
- "array-unique": "^0.3.2",
- "braces": "^2.3.1",
- "define-property": "^2.0.2",
- "extend-shallow": "^3.0.2",
- "extglob": "^2.0.4",
- "fragment-cache": "^0.2.1",
- "kind-of": "^6.0.2",
- "nanomatch": "^1.2.9",
- "object.pick": "^1.3.0",
- "regex-not": "^1.0.0",
- "snapdragon": "^0.8.1",
- "to-regex": "^3.0.2"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/lilconfig": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.2.tgz",
- "integrity": "sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/sponsors/antonk52"
- }
- },
- "node_modules/livereload-js": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/livereload-js/-/livereload-js-2.4.0.tgz",
- "integrity": "sha512-XPQH8Z2GDP/Hwz2PCDrh2mth4yFejwA1OZ/81Ti3LgKyhDcEjsSsqFWZojHG0va/duGd+WyosY7eXLDoOyqcPw==",
- "dev": true,
- "license": "MIT"
- },
- "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": "sha512-cy7ZdNRXdablkXYNI049pthVeXFurRyb9+hA/dZzerZ0pGTx42z+y+ssxBaVV2l70t1muq5IdKhn4UtcoGUY9A==",
- "dev": true,
- "license": "MIT",
- "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/load-json-file/node_modules/strip-bom": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz",
- "integrity": "sha512-kwrX1y7czp1E69n2ajbG65mIo9dqvJ+8aBQXOGVxqwvNbsXdFM6Lq37dLAY3mknUwru8CfcCbfOLL/gMo+fi3g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-utf8": "^0.2.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/locate-path": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
- "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "p-locate": "^5.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/lodash._basecopy": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz",
- "integrity": "sha512-rFR6Vpm4HeCK1WPGvjZSJ+7yik8d8PVUdCJx5rT2pogG4Ve/2ZS7kfmO5l5T2o5V2mqlNIfSF5MZlr1+xOoYQQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash._basetostring": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz",
- "integrity": "sha512-mTzAr1aNAv/i7W43vOR/uD/aJ4ngbtsRaCubp2BfZhlGU/eORUjg/7F6X0orNMdv33JOrdgGybtvMN/po3EWrA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash._basevalues": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz",
- "integrity": "sha512-H94wl5P13uEqlCg7OcNNhMQ8KvWSIyqXzOPusRgHC9DK3o54P6P3xtbXlVbRABG4q5gSmp7EDdJ0MSuW9HX6Mg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash._getnative": {
- "version": "3.9.1",
- "resolved": "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz",
- "integrity": "sha512-RrL9VxMEPyDMHOd9uFbvMe8X55X16/cGM5IgOKgRElQZutpX89iS6vwl64duTV1/16w5JY7tuFNXqoekmh1EmA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash._isiterateecall": {
- "version": "3.0.9",
- "resolved": "https://registry.npmjs.org/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz",
- "integrity": "sha512-De+ZbrMu6eThFti/CSzhRvTKMgQToLxbij58LMfM8JnYDNSOjkjTCIaa8ixglOeGh2nyPlakbt5bJWJ7gvpYlQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash._reescape": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/lodash._reescape/-/lodash._reescape-3.0.0.tgz",
- "integrity": "sha512-Sjlavm5y+FUVIF3vF3B75GyXrzsfYV8Dlv3L4mEpuB9leg8N6yf/7rU06iLPx9fY0Mv3khVp9p7Dx0mGV6V5OQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash._reevaluate": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz",
- "integrity": "sha512-OrPwdDc65iJiBeUe5n/LIjd7Viy99bKwDdk7Z5ljfZg0uFRFlfQaCy9tZ4YMAag9WAZmlVpe1iZrkIMMSMHD3w==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash._reinterpolate": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz",
- "integrity": "sha512-xYHt68QRoYGjeeM/XOE1uJtvXQAgvszfBhjV4yvsQH0u2i9I6cI6c6/eG4Hh3UAOVn0y/xAXwmTzEay49Q//HA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash._root": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/lodash._root/-/lodash._root-3.0.1.tgz",
- "integrity": "sha512-O0pWuFSK6x4EXhM1dhZ8gchNtG7JMqBtrHdoUFUWXD7dJnNSUze1GuyQr5sOs0aCvgGeI3o/OJW8f4ca7FDxmQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.assign": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/lodash.assign/-/lodash.assign-4.2.0.tgz",
- "integrity": "sha512-hFuH8TY+Yji7Eja3mGiuAxBqLagejScbG8GbG0j6o9vzn0YL14My+ktnqtZgFTosKymC9/44wP6s7xyuLfnClw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.clone": {
- "version": "4.5.0",
- "resolved": "https://registry.npmjs.org/lodash.clone/-/lodash.clone-4.5.0.tgz",
- "integrity": "sha512-GhrVeweiTD6uTmmn5hV/lzgCQhccwReIVRLHp7LT4SopOjqEZ5BbX8b5WWEtAKasjmy8hR7ZPwsYlxRCku5odg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.debounce": {
- "version": "4.0.8",
- "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz",
- "integrity": "sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.defaults": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz",
- "integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.escape": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/lodash.escape/-/lodash.escape-3.2.0.tgz",
- "integrity": "sha512-n1PZMXgaaDWZDSvuNZ/8XOcYO2hOKDqZel5adtR30VKQAtoWs/5AOeFA0vPV8moiPzlqe7F4cP2tzpFewQyelQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "lodash._root": "^3.0.0"
- }
- },
- "node_modules/lodash.flatten": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz",
- "integrity": "sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.isarguments": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz",
- "integrity": "sha512-chi4NHZlZqZD18a0imDHnZPrDeBbTtVN7GXMwuGdRH9qotxAjYs3aVLKc7zNOG9eddR5Ksd8rvFEBc9SsggPpg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.isarray": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz",
- "integrity": "sha512-JwObCrNJuT0Nnbuecmqr5DgtuBppuCvGD9lxjFpAzwnVtdGoDQ1zig+5W8k5/6Gcn0gZ3936HDAlGd28i7sOGQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.keys": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz",
- "integrity": "sha512-CuBsapFjcubOGMn3VD+24HOAPxM79tH+V6ivJL3CHYjtrawauDJHUk//Yew9Hvc6e9rbCrURGk8z6PC+8WJBfQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "lodash._getnative": "^3.0.0",
- "lodash.isarguments": "^3.0.0",
- "lodash.isarray": "^3.0.0"
- }
- },
- "node_modules/lodash.memoize": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-3.0.4.tgz",
- "integrity": "sha512-eDn9kqrAmVUC1wmZvlQ6Uhde44n+tXpqPrN8olQJbttgh0oKclk+SF54P47VEGE9CEiMeRwAP8BaM7UHvBkz2A==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.merge": {
- "version": "4.6.2",
- "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
- "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.partialright": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/lodash.partialright/-/lodash.partialright-4.2.1.tgz",
- "integrity": "sha512-yebmPMQZH7i4El6SdJTW9rn8irWl8VTcsmiWqm/I4sY8/ZjbSo0Z512HL6soeAu3mh5rhx5uIIo6kYJOQXbCxw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.pick": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz",
- "integrity": "sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.restparam": {
- "version": "3.6.1",
- "resolved": "https://registry.npmjs.org/lodash.restparam/-/lodash.restparam-3.6.1.tgz",
- "integrity": "sha512-L4/arjjuq4noiUJpt3yS6KIKDtJwNe2fIYgMqyYYKoeIfV1iEqvPwhCx23o+R9dzouGihDAPN1dTIRWa7zk8tw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/lodash.template": {
- "version": "3.6.2",
- "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-3.6.2.tgz",
- "integrity": "sha512-0B4Y53I0OgHUJkt+7RmlDFWKjVAI/YUpWNiL9GQz5ORDr4ttgfQGo+phBWKFLJbBdtOwgMuUkdOHOnPg45jKmQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "lodash._basecopy": "^3.0.0",
- "lodash._basetostring": "^3.0.0",
- "lodash._basevalues": "^3.0.0",
- "lodash._isiterateecall": "^3.0.0",
- "lodash._reinterpolate": "^3.0.0",
- "lodash.escape": "^3.0.0",
- "lodash.keys": "^3.0.0",
- "lodash.restparam": "^3.0.0",
- "lodash.templatesettings": "^3.0.0"
- }
- },
- "node_modules/lodash.templatesettings": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz",
- "integrity": "sha512-TcrlEr31tDYnWkHFWDCV3dHYroKEXpJZ2YJYvJdhN+y4AkWMDZ5I4I8XDtUKqSAyG81N7w+I1mFEJtcED+tGqQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "lodash._reinterpolate": "^3.0.0",
- "lodash.escape": "^3.0.0"
- }
- },
- "node_modules/lodash.uniq": {
- "version": "4.5.0",
- "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz",
- "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/loud-rejection": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz",
- "integrity": "sha512-RPNliZOFkqFumDhvYqOaNY4Uz9oJM2K9tC6JWsJJsNdhuONW4LQHRBpb0qf4pJApVffI5N39SwzWZJuEhfd7eQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "currently-unhandled": "^0.4.1",
- "signal-exit": "^3.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/loud-rejection/node_modules/signal-exit": {
- "version": "3.0.7",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz",
- "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/lowercase-keys": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz",
- "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/lru-cache": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz",
- "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==",
- "license": "ISC",
- "dependencies": {
- "yallist": "^3.0.2"
- }
- },
- "node_modules/lru-queue": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/lru-queue/-/lru-queue-0.1.0.tgz",
- "integrity": "sha512-BpdYkt9EvGl8OfWHDQPISVpcl5xZthb+XPsbELj5AQXxIC8IriDZIQYjBJPEm5rS420sjZ0TLEzRcq5KdBhYrQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "es5-ext": "~0.10.2"
- }
- },
- "node_modules/make-iterator": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/make-iterator/-/make-iterator-1.0.1.tgz",
- "integrity": "sha512-pxiuXh0iVEq7VM7KMIhs5gxsfxCux2URptUQaXo4iZZJxBAzTPOLE2BumO5dbfVYq/hBJFBR/a1mFDmOx5AGmw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "kind-of": "^6.0.2"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/make-iterator/node_modules/kind-of": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
- "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/map-cache": {
- "version": "0.2.2",
- "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
- "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "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": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/map-stream": {
- "version": "0.0.7",
- "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.0.7.tgz",
- "integrity": "sha512-C0X0KQmGm3N2ftbTGBhSyuydQ+vV1LC3f3zPvT3RXHXNZrvfPZcoXp/N5DOa8vedX/rTMm2CjTtivFg2STJMRQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/map-visit": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz",
- "integrity": "sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "object-visit": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/matchdep": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/matchdep/-/matchdep-2.0.0.tgz",
- "integrity": "sha512-LFgVbaHIHMqCRuCZyfCtUOq9/Lnzhi7Z0KFUE2fhD54+JN2jLh3hC02RLkqauJ3U4soU6H1J3tfj/Byk7GoEjA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "findup-sync": "^2.0.0",
- "micromatch": "^3.0.4",
- "resolve": "^1.4.0",
- "stack-trace": "0.0.10"
- },
- "engines": {
- "node": ">= 0.10.0"
- }
- },
- "node_modules/matchdep/node_modules/define-property": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz",
- "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-descriptor": "^1.0.2",
- "isobject": "^3.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/matchdep/node_modules/extend-shallow": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
- "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "assign-symbols": "^1.0.0",
- "is-extendable": "^1.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/matchdep/node_modules/findup-sync": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz",
- "integrity": "sha512-vs+3unmJT45eczmcAZ6zMJtxN3l/QXeccaXQx5cu/MeJMhewVfoWZqibRkOxPnmoR59+Zy5hjabfQc6JLSah4g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "detect-file": "^1.0.0",
- "is-glob": "^3.1.0",
- "micromatch": "^3.0.4",
- "resolve-dir": "^1.0.1"
- },
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/matchdep/node_modules/is-descriptor": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz",
- "integrity": "sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-accessor-descriptor": "^1.0.1",
- "is-data-descriptor": "^1.0.1"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/matchdep/node_modules/is-extendable": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
- "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-plain-object": "^2.0.4"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/matchdep/node_modules/is-glob": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
- "integrity": "sha512-UFpDDrPgM6qpnFNI+rh/p3bUaq9hKLZN8bMUWzxmcnZVS3omf4IPK+BrewlnWjO1WmUsMYuSjKh4UJuV4+Lqmw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-extglob": "^2.1.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/matchdep/node_modules/is-plain-object": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
- "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "isobject": "^3.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/matchdep/node_modules/kind-of": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
- "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/matchdep/node_modules/micromatch": {
- "version": "3.1.10",
- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz",
- "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "arr-diff": "^4.0.0",
- "array-unique": "^0.3.2",
- "braces": "^2.3.1",
- "define-property": "^2.0.2",
- "extend-shallow": "^3.0.2",
- "extglob": "^2.0.4",
- "fragment-cache": "^0.2.1",
- "kind-of": "^6.0.2",
- "nanomatch": "^1.2.9",
- "object.pick": "^1.3.0",
- "regex-not": "^1.0.0",
- "snapdragon": "^0.8.1",
- "to-regex": "^3.0.2"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/matcher": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/matcher/-/matcher-3.0.0.tgz",
- "integrity": "sha512-OkeDaAZ/bQCxeFAozM55PKcKU0yJMPGifLwV4Qgjitu+5MoAfSQN4lsLJeXZ1b8w0x+/Emda6MZgXS1jvsapng==",
- "dev": true,
- "license": "MIT",
- "optional": true,
- "dependencies": {
- "escape-string-regexp": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/md5.js": {
- "version": "1.3.5",
- "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz",
- "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "hash-base": "^3.0.0",
- "inherits": "^2.0.1",
- "safe-buffer": "^5.1.2"
- }
- },
- "node_modules/mdn-data": {
- "version": "2.0.30",
- "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.30.tgz",
- "integrity": "sha512-GaqWWShW4kv/G9IEucWScBx9G1/vsFZZJUO+tD26M8J8z3Kw5RDQjaoZe03YAClgeS/SWPOcb4nkFBTEi5DUEA==",
- "dev": true,
- "license": "CC0-1.0"
- },
- "node_modules/media-typer": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
- "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/memoizee": {
- "version": "0.4.17",
- "resolved": "https://registry.npmjs.org/memoizee/-/memoizee-0.4.17.tgz",
- "integrity": "sha512-DGqD7Hjpi/1or4F/aYAspXKNm5Yili0QDAFAY4QYvpqpgiY6+1jOfqpmByzjxbWd/T9mChbCArXAbDAsTm5oXA==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "d": "^1.0.2",
- "es5-ext": "^0.10.64",
- "es6-weak-map": "^2.0.3",
- "event-emitter": "^0.3.5",
- "is-promise": "^2.2.2",
- "lru-queue": "^0.1.0",
- "next-tick": "^1.1.0",
- "timers-ext": "^0.1.7"
- },
- "engines": {
- "node": ">=0.12"
- }
- },
- "node_modules/meow": {
- "version": "3.7.0",
- "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
- "integrity": "sha512-TNdwZs0skRlpPpCUK25StC4VH+tP5GgeY1HQOOGP+lQ2xtdkN2VtT/5tiX9k3IWpkBPV9b3LsAWXn4GGi/PrSA==",
- "dev": true,
- "license": "MIT",
- "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/merge-stream": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
- "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/merge2": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
- "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 8"
- }
- },
- "node_modules/methods": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
- "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==",
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/micromatch": {
- "version": "4.0.8",
- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz",
- "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "braces": "^3.0.3",
- "picomatch": "^2.3.1"
- },
- "engines": {
- "node": ">=8.6"
- }
- },
- "node_modules/micromatch/node_modules/braces": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
- "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "fill-range": "^7.1.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/micromatch/node_modules/fill-range": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
- "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "to-regex-range": "^5.0.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/micromatch/node_modules/is-number": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
- "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.12.0"
- }
- },
- "node_modules/micromatch/node_modules/to-regex-range": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
- "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-number": "^7.0.0"
- },
- "engines": {
- "node": ">=8.0"
- }
- },
- "node_modules/miller-rabin": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz",
- "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "bn.js": "^4.0.0",
- "brorand": "^1.0.1"
- },
- "bin": {
- "miller-rabin": "bin/miller-rabin"
- }
- },
- "node_modules/miller-rabin/node_modules/bn.js": {
- "version": "4.12.0",
- "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
- "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/mime": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/mime/-/mime-1.4.1.tgz",
- "integrity": "sha512-KI1+qOZu5DcW6wayYHSzR/tXKCDC5Om4s1z2QJjDULzLcmf3DvzS7oluY4HCTrc+9FiKmWUgeNLg7W3uIQvxtQ==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "mime": "cli.js"
- }
- },
- "node_modules/mime-db": {
- "version": "1.52.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
- "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/mime-types": {
- "version": "2.1.35",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
- "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
- "license": "MIT",
- "dependencies": {
- "mime-db": "1.52.0"
- },
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/mimic-response": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz",
- "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/min-document": {
- "version": "2.19.0",
- "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz",
- "integrity": "sha512-9Wy1B3m3f66bPPmU5hdA4DR4PB2OfDU/+GS3yAB7IQozE3tqXaVv2zOjgla7MEGSRv95+ILmOuvhLkOK6wJtCQ==",
- "dependencies": {
- "dom-walk": "^0.1.0"
- }
- },
- "node_modules/minimalistic-assert": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz",
- "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/minimalistic-crypto-utils": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz",
- "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "license": "ISC",
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/minimist": {
- "version": "1.2.8",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz",
- "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==",
- "dev": true,
- "license": "MIT",
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/minipass": {
- "version": "7.1.2",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
- "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
- "dev": true,
- "license": "ISC",
- "engines": {
- "node": ">=16 || 14 >=14.17"
- }
- },
- "node_modules/mixin-deep": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz",
- "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "for-in": "^1.0.2",
- "is-extendable": "^1.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/mixin-deep/node_modules/is-extendable": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
- "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-plain-object": "^2.0.4"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/mixin-deep/node_modules/is-plain-object": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
- "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "isobject": "^3.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/mkdirp": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
- "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
- "dev": true,
- "license": "MIT",
- "bin": {
- "mkdirp": "bin/cmd.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/mkdirp-classic": {
- "version": "0.5.3",
- "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz",
- "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/mock-property": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/mock-property/-/mock-property-1.1.0.tgz",
- "integrity": "sha512-1/JjbLoGwv87xVsutkX0XJc0M0W4kb40cZl/K41xtTViBOD9JuFPKfyMNTrLJ/ivYAd0aPqu/vduamXO0emTFQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "define-data-property": "^1.1.4",
- "functions-have-names": "^1.2.3",
- "gopd": "^1.0.1",
- "has-property-descriptors": "^1.0.2",
- "hasown": "^2.0.2",
- "isarray": "^2.0.5",
- "object-inspect": "^1.13.2"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/mock-property/node_modules/isarray": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz",
- "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/module-deps": {
- "version": "6.2.3",
- "resolved": "https://registry.npmjs.org/module-deps/-/module-deps-6.2.3.tgz",
- "integrity": "sha512-fg7OZaQBcL4/L+AK5f4iVqf9OMbCclXfy/znXRxTVhJSeW5AIlS9AwheYwDaXM3lVW7OBeaeUEY3gbaC6cLlSA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "browser-resolve": "^2.0.0",
- "cached-path-relative": "^1.0.2",
- "concat-stream": "~1.6.0",
- "defined": "^1.0.0",
- "detective": "^5.2.0",
- "duplexer2": "^0.1.2",
- "inherits": "^2.0.1",
- "JSONStream": "^1.0.3",
- "parents": "^1.0.0",
- "readable-stream": "^2.0.2",
- "resolve": "^1.4.0",
- "stream-combiner2": "^1.1.1",
- "subarg": "^1.0.0",
- "through2": "^2.0.0",
- "xtend": "^4.0.0"
- },
- "bin": {
- "module-deps": "bin/cmd.js"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/monotonic-timestamp": {
- "version": "0.0.8",
- "resolved": "https://registry.npmjs.org/monotonic-timestamp/-/monotonic-timestamp-0.0.8.tgz",
- "integrity": "sha512-3fQw+dAni/JJ4rkvMY7EZOz+tM+yuhrY3tKLJk74YOp/DQR0Ip+9yiKzZrC40uQ+Kin86s5TOjmL6UmxljOAfA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/ms": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
- "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
- "license": "MIT"
- },
- "node_modules/multipipe": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/multipipe/-/multipipe-0.1.2.tgz",
- "integrity": "sha512-7ZxrUybYv9NonoXgwoOqtStIu18D1c3eFZj27hqgf5kBrBF8Q+tE8V0MW8dKM5QLkQPh1JhhbKgHLY9kifov4Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "duplexer2": "0.0.2"
- }
- },
- "node_modules/multipipe/node_modules/duplexer2": {
- "version": "0.0.2",
- "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz",
- "integrity": "sha512-+AWBwjGadtksxjOQSFDhPNQbed7icNXApT4+2BNpsXzcCBiInq2H9XW0O8sfHFaPmnQRs7cg/P0fAr2IWQSW0g==",
- "dev": true,
- "license": "BSD",
- "dependencies": {
- "readable-stream": "~1.1.9"
- }
- },
- "node_modules/multipipe/node_modules/isarray": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
- "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/multipipe/node_modules/readable-stream": {
- "version": "1.1.14",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
- "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.1",
- "isarray": "0.0.1",
- "string_decoder": "~0.10.x"
- }
- },
- "node_modules/multipipe/node_modules/string_decoder": {
- "version": "0.10.31",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
- "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/mute-stdout": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/mute-stdout/-/mute-stdout-1.0.1.tgz",
- "integrity": "sha512-kDcwXR4PS7caBpuRYYBUz9iVixUk3anO3f5OYFiIPwK/20vCzKCHyKoulbiDY1S53zD2bxUpxN/IJ+TnXjfvxg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/mvdan-sh": {
- "version": "0.10.1",
- "resolved": "https://registry.npmjs.org/mvdan-sh/-/mvdan-sh-0.10.1.tgz",
- "integrity": "sha512-kMbrH0EObaKmK3nVRKUIIya1dpASHIEusM13S4V1ViHFuxuNxCo+arxoa6j/dbV22YBGjl7UKJm9QQKJ2Crzhg==",
- "dev": true,
- "license": "BSD-3-Clause"
- },
- "node_modules/nan": {
- "version": "2.20.0",
- "resolved": "https://registry.npmjs.org/nan/-/nan-2.20.0.tgz",
- "integrity": "sha512-bk3gXBZDGILuuo/6sKtr0DQmSThYHLtNCdSdXk9YkxD/jK6X2vmCyyXBBxyqZ4XcnzTyYEAThfX3DCEnLf6igw==",
- "dev": true,
- "license": "MIT",
- "optional": true
- },
- "node_modules/nanoid": {
- "version": "3.3.7",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz",
- "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==",
- "dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/ai"
- }
- ],
- "license": "MIT",
- "bin": {
- "nanoid": "bin/nanoid.cjs"
- },
- "engines": {
- "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
- }
- },
- "node_modules/nanomatch": {
- "version": "1.2.13",
- "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz",
- "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "arr-diff": "^4.0.0",
- "array-unique": "^0.3.2",
- "define-property": "^2.0.2",
- "extend-shallow": "^3.0.2",
- "fragment-cache": "^0.2.1",
- "is-windows": "^1.0.2",
- "kind-of": "^6.0.2",
- "object.pick": "^1.3.0",
- "regex-not": "^1.0.0",
- "snapdragon": "^0.8.1",
- "to-regex": "^3.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/nanomatch/node_modules/define-property": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz",
- "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-descriptor": "^1.0.2",
- "isobject": "^3.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/nanomatch/node_modules/extend-shallow": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
- "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "assign-symbols": "^1.0.0",
- "is-extendable": "^1.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/nanomatch/node_modules/is-descriptor": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz",
- "integrity": "sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-accessor-descriptor": "^1.0.1",
- "is-data-descriptor": "^1.0.1"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/nanomatch/node_modules/is-extendable": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
- "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-plain-object": "^2.0.4"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/nanomatch/node_modules/is-plain-object": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
- "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "isobject": "^3.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/nanomatch/node_modules/kind-of": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
- "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/natural-compare": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
- "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/negotiator": {
- "version": "0.6.3",
- "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
- "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
- },
- "node_modules/next-tick": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.1.0.tgz",
- "integrity": "sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/nib": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/nib/-/nib-1.2.0.tgz",
- "integrity": "sha512-7HgrnMl/3yOmWykueO8/D0q+0iWwe7Z+CK2Eaq/xQV8w1hK80WN1oReRQkfkrztbAAnp/nTHkUSl5EcVkor6JQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": "*"
- },
- "peerDependencies": {
- "stylus": "*"
- }
- },
- "node_modules/node-releases": {
- "version": "2.0.18",
- "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz",
- "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==",
- "license": "MIT"
- },
- "node_modules/normalize-package-data": {
- "version": "2.5.0",
- "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
- "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "hosted-git-info": "^2.1.4",
- "resolve": "^1.10.0",
- "semver": "2 || 3 || 4 || 5",
- "validate-npm-package-license": "^3.0.1"
- }
- },
- "node_modules/normalize-package-data/node_modules/semver": {
- "version": "5.7.2",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
- "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
- "dev": true,
- "license": "ISC",
- "bin": {
- "semver": "bin/semver"
- }
- },
- "node_modules/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,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/normalize-range": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz",
- "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/normalize-url": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz",
- "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/now-and-later": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/now-and-later/-/now-and-later-2.0.1.tgz",
- "integrity": "sha512-KGvQ0cB70AQfg107Xvs/Fbu+dGmZoTRJp2TaPwcwQm3/7PteUyN2BCgk8KBMPGBUXZdVwyWS8fDCGFygBm19UQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "once": "^1.3.2"
- },
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/nth-check": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz",
- "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "boolbase": "^1.0.0"
- },
- "funding": {
- "url": "https://github.com/fb55/nth-check?sponsor=1"
- }
- },
- "node_modules/number-is-nan": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
- "integrity": "sha512-4jbtZXNAsfZbAHiiqjLPBiCl16dES1zI4Hpzzxw61Tk+loF+sBDBKx1ICKKKwIqQ7M0mFn1TmkN7euSncWgHiQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/object-assign": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
- "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/object-copy": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz",
- "integrity": "sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "copy-descriptor": "^0.1.0",
- "define-property": "^0.2.5",
- "kind-of": "^3.0.3"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/object-copy/node_modules/kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-buffer": "^1.1.5"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/object-inspect": {
- "version": "1.13.2",
- "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.2.tgz",
- "integrity": "sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==",
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/object-is": {
- "version": "1.1.6",
- "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.6.tgz",
- "integrity": "sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.7",
- "define-properties": "^1.2.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/object-keys": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
- "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/object-visit": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz",
- "integrity": "sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "isobject": "^3.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/object.assign": {
- "version": "4.1.5",
- "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz",
- "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.5",
- "define-properties": "^1.2.1",
- "has-symbols": "^1.0.3",
- "object-keys": "^1.1.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/object.defaults": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/object.defaults/-/object.defaults-1.1.0.tgz",
- "integrity": "sha512-c/K0mw/F11k4dEUBMW8naXUuBuhxRCfG7W+yFy8EcijU/rSmazOUd1XAEEe6bC0OuXY4HUKjTJv7xbxIMqdxrA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "array-each": "^1.0.1",
- "array-slice": "^1.0.0",
- "for-own": "^1.0.0",
- "isobject": "^3.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/object.fromentries": {
- "version": "2.0.8",
- "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.8.tgz",
- "integrity": "sha512-k6E21FzySsSK5a21KRADBd/NGneRegFO5pLHfdQLpRDETUNJueLXs3WCzyQ3tFRDYgbq3KHGXfTbi2bs8WQ6rQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.7",
- "define-properties": "^1.2.1",
- "es-abstract": "^1.23.2",
- "es-object-atoms": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/object.groupby": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/object.groupby/-/object.groupby-1.0.3.tgz",
- "integrity": "sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.7",
- "define-properties": "^1.2.1",
- "es-abstract": "^1.23.2"
- },
- "engines": {
- "node": ">= 0.4"
- }
- },
- "node_modules/object.map": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/object.map/-/object.map-1.0.1.tgz",
- "integrity": "sha512-3+mAJu2PLfnSVGHwIWubpOFLscJANBKuB/6A4CxBstc4aqwQY0FWcsppuy4jU5GSB95yES5JHSI+33AWuS4k6w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "for-own": "^1.0.0",
- "make-iterator": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/object.pick": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz",
- "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "isobject": "^3.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/object.reduce": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/object.reduce/-/object.reduce-1.0.1.tgz",
- "integrity": "sha512-naLhxxpUESbNkRqc35oQ2scZSJueHGQNUfMW/0U37IgN6tE2dgDWg3whf+NEliy3F/QysrO48XKUz/nGPe+AQw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "for-own": "^1.0.0",
- "make-iterator": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/object.values": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.2.0.tgz",
- "integrity": "sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.7",
- "define-properties": "^1.2.1",
- "es-object-atoms": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/on-finished": {
- "version": "2.4.1",
- "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz",
- "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ee-first": "1.1.1"
+ "ms": "^2.1.3"
},
"engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/once": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
- "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
- "license": "ISC",
- "dependencies": {
- "wrappy": "1"
- }
- },
- "node_modules/optionator": {
- "version": "0.9.4",
- "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz",
- "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "deep-is": "^0.1.3",
- "fast-levenshtein": "^2.0.6",
- "levn": "^0.4.1",
- "prelude-ls": "^1.2.1",
- "type-check": "^0.4.0",
- "word-wrap": "^1.2.5"
+ "node": ">=6.0"
},
- "engines": {
- "node": ">= 0.8.0"
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
}
},
- "node_modules/ordered-emitter": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/ordered-emitter/-/ordered-emitter-0.1.1.tgz",
- "integrity": "sha512-0IVH1dx0jn7yXAsGb9gXN/YeGgN0vInK8UjCG4r0p+WhkUpf63jvjQt2XNGLmcrkUfnLBb6CIvnXsY4Jh4Ytkw==",
- "dev": true,
- "license": "MIT/X11"
- },
- "node_modules/ordered-read-streams": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/ordered-read-streams/-/ordered-read-streams-1.0.1.tgz",
- "integrity": "sha512-Z87aSjx3r5c0ZB7bcJqIgIRX5bxR7A4aSzvIbaxd0oTkWBCOoKfuGHiKj60CHVUgg1Phm5yMZzBdt8XqRs73Mw==",
+ "node_modules/deep-eql": {
+ "version": "5.0.2",
+ "resolved": "https://registry.npmjs.org/deep-eql/-/deep-eql-5.0.2.tgz",
+ "integrity": "sha512-h5k/5U50IJJFpzfL6nO9jaaumfjO/f2NjK/oYB2Djzm4p9L+3T9qWpZqZ2hAbLPuuYq9wrU08WQyBTL5GbPk5Q==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "readable-stream": "^2.0.1"
+ "engines": {
+ "node": ">=6"
}
},
- "node_modules/os-browserify": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz",
- "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==",
+ "node_modules/deep-is": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
+ "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==",
"dev": true,
"license": "MIT"
},
- "node_modules/os-locale": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/os-locale/-/os-locale-1.4.0.tgz",
- "integrity": "sha512-PRT7ZORmwu2MEFt4/fv3Q+mEfN4zetKxufQrkShY2oGvUms9r8otu5HfdyIFHkYXjO7laNsoVGmM2MANfuTA8g==",
- "dev": true,
+ "node_modules/deepmerge": {
+ "version": "4.3.1",
+ "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz",
+ "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==",
"license": "MIT",
- "dependencies": {
- "lcid": "^1.0.0"
- },
"engines": {
"node": ">=0.10.0"
}
},
- "node_modules/outpipe": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/outpipe/-/outpipe-1.1.1.tgz",
- "integrity": "sha512-BnNY/RwnDrkmQdUa9U+OfN/Y7AWmKuUPCCd+hbRclZnnANvYpO72zp/a6Q4n829hPbdqEac31XCcsvlEvb+rtA==",
- "dev": true,
+ "node_modules/define-data-property": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.4.tgz",
+ "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==",
"license": "MIT",
"dependencies": {
- "shell-quote": "^1.4.2"
+ "es-define-property": "^1.0.0",
+ "es-errors": "^1.3.0",
+ "gopd": "^1.0.1"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/p-cancelable": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz",
- "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==",
+ "node_modules/define-lazy-prop": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz",
+ "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">=8"
}
},
- "node_modules/p-limit": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
- "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
+ "node_modules/define-properties": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.1.tgz",
+ "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "yocto-queue": "^0.1.0"
+ "define-data-property": "^1.0.1",
+ "has-property-descriptors": "^1.0.0",
+ "object-keys": "^1.1.1"
},
"engines": {
- "node": ">=10"
+ "node": ">= 0.4"
},
"funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/p-locate": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
- "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
- "dev": true,
+ "node_modules/defined": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.1.tgz",
+ "integrity": "sha512-hsBd2qSVCRE+5PmNdHt1uzyrFu5d3RwmFDKzyNZMFq/EwDNJF7Ee5+D5oEKF0hU6LhtoUF1macFvOe4AskQC1Q==",
"license": "MIT",
- "dependencies": {
- "p-limit": "^3.0.2"
- },
- "engines": {
- "node": ">=10"
- },
"funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/p-map": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz",
- "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==",
- "dev": true,
+ "node_modules/delayed-stream": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
+ "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==",
"license": "MIT",
- "dependencies": {
- "aggregate-error": "^3.0.0"
- },
"engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "node": ">=0.4.0"
}
},
- "node_modules/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==",
+ "node_modules/depd": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
+ "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=6"
+ "node": ">= 0.8"
}
},
- "node_modules/package-json-from-dist": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz",
- "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==",
- "dev": true,
- "license": "BlueOak-1.0.0"
- },
- "node_modules/pako": {
- "version": "1.0.11",
- "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz",
- "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==",
- "dev": true,
- "license": "(MIT AND Zlib)"
- },
- "node_modules/parent-module": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
- "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
+ "node_modules/dequal": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz",
+ "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "callsites": "^3.0.0"
- },
"engines": {
"node": ">=6"
}
},
- "node_modules/parents": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/parents/-/parents-1.0.1.tgz",
- "integrity": "sha512-mXKF3xkoUt5td2DoxpLmtOmZvko9VfFpwRwkKDHSNvgmpLAeBo18YDhcPbBzJq+QLCHMbGOfzia2cX4U+0v9Mg==",
+ "node_modules/des.js": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.1.0.tgz",
+ "integrity": "sha512-r17GxjhUCjSRy8aiJpr8/UadFIzMzJGexI3Nmz4ADi9LYSFx4gTBp80+NaX/YsXWWLhpZ7v/v/ubEc/bCNfKwg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "path-platform": "~0.11.15"
+ "inherits": "^2.0.1",
+ "minimalistic-assert": "^1.0.0"
}
},
- "node_modules/parse-asn1": {
- "version": "5.1.7",
- "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.7.tgz",
- "integrity": "sha512-CTM5kuWR3sx9IFamcl5ErfPl6ea/N8IYwiJ+vpeB2g+1iknv7zBl5uPwbMbRVznRVbrNY6lGuDoE5b30grmbqg==",
- "dev": true,
+ "node_modules/despot": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/despot/-/despot-2.1.0.tgz",
+ "integrity": "sha512-WJdrXz3XEnLAu90op5QfCcNRzbz/rLCdh8KBtH+BEOIGMx38I2a7OJcAeqtzb6ZinV7k55mZ+midKMXivly6pQ==",
"license": "ISC",
"dependencies": {
- "asn1.js": "^4.10.1",
- "browserify-aes": "^1.2.0",
- "evp_bytestokey": "^1.0.3",
- "hash-base": "~3.0",
- "pbkdf2": "^3.1.2",
- "safe-buffer": "^5.2.1"
- },
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/parse-filepath": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/parse-filepath/-/parse-filepath-1.0.2.tgz",
- "integrity": "sha512-FwdRXKCohSVeXqwtYonZTXtbGJKrn+HNyWDYVcp5yuJlesTwNH4rsmRZ+GrKAPJ5bLpRxESMeS+Rl0VCHRvB2Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-absolute": "^1.0.0",
- "map-cache": "^0.2.0",
- "path-root": "^0.1.1"
- },
- "engines": {
- "node": ">=0.8"
- }
- },
- "node_modules/parse-json": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-2.2.0.tgz",
- "integrity": "sha512-QR/GGaKCkhwk1ePQNYDRKYZ3mwU9ypsKhB0XyFnLQdomyEqk3e8wpW3V5Jp88zbxK4n5ST1nqo+g9juTpownhQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "error-ex": "^1.2.0"
+ "global": "4.4.0",
+ "inherits": "2.0.4"
},
"engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/parse-node-version": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz",
- "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/parse-passwd": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz",
- "integrity": "sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/parseurl": {
- "version": "1.3.3",
- "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
- "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.8"
+ "node": ">=20.12.2",
+ "npm": ">=10.5.0"
}
},
- "node_modules/pascalcase": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz",
- "integrity": "sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==",
+ "node_modules/destroy": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz",
+ "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.8",
+ "npm": "1.2.8000 || >= 1.4.16"
}
},
- "node_modules/path-browserify": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz",
- "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/path-dirname": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz",
- "integrity": "sha512-ALzNPpyNq9AqXMBjeymIjFDAkAFH06mHJH/cSBHAgU0s4vfpBn6b2nf8tiRLvagKD8RbTpq2FKTBg7cl9l3c7Q==",
- "dev": true,
- "license": "MIT"
- },
- "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==",
+ "node_modules/detect-indent": {
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-7.0.1.tgz",
+ "integrity": "sha512-Mc7QhQ8s+cLrnUfU/Ji94vG/r8M26m8f++vyres4ZoojaRDpZ1eSIh/EpzLNwlWuvzSZ3UbDFspjFvTDXe6e/g==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=8"
+ "node": ">=12.20"
}
},
- "node_modules/path-is-absolute": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
- "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
+ "node_modules/dezalgo": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/dezalgo/-/dezalgo-1.0.4.tgz",
+ "integrity": "sha512-rXSP0bf+5n0Qonsb+SVVfNfIsimO4HEtmnIpPHY8Q1UCzKlQrDMfdobr8nJOOsRgWCyMRqeSBQzmWUMq7zvVig==",
+ "license": "ISC",
+ "dependencies": {
+ "asap": "^2.0.0",
+ "wrappy": "1"
}
},
- "node_modules/path-is-inside": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz",
- "integrity": "sha512-DUWJr3+ULp4zXmol/SZkFf3JGsS9/SIv+Y3Rt93/UjPpDpklB5f1er4O3POIbUuUJ3FXgqte2Q7SrU6zAqwk8w==",
- "dev": true,
- "license": "(WTFPL OR MIT)"
- },
- "node_modules/path-key": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
- "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
+ "node_modules/diffie-hellman": {
+ "version": "5.0.3",
+ "resolved": "https://registry.npmjs.org/diffie-hellman/-/diffie-hellman-5.0.3.tgz",
+ "integrity": "sha512-kqag/Nl+f3GwyK25fhUMYj81BUOrZ9IuJsjIcDE5icNM9FJHAVm3VcUDxdLPoQtTuUylWm6ZIknYJwwaPxsUzg==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": ">=8"
+ "dependencies": {
+ "bn.js": "^4.1.0",
+ "miller-rabin": "^4.0.0",
+ "randombytes": "^2.0.0"
}
},
- "node_modules/path-parse": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz",
- "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==",
+ "node_modules/diffie-hellman/node_modules/bn.js": {
+ "version": "4.12.0",
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
+ "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
"dev": true,
"license": "MIT"
},
- "node_modules/path-platform": {
- "version": "0.11.15",
- "resolved": "https://registry.npmjs.org/path-platform/-/path-platform-0.11.15.tgz",
- "integrity": "sha512-Y30dB6rab1A/nfEKsZxmr01nUotHX0c/ZiIAsCTatEe1CmS5Pm5He7fZ195bPT7RdquoaL8lLxFCMQi/bS7IJg==",
+ "node_modules/dir-glob": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz",
+ "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==",
"dev": true,
"license": "MIT",
+ "dependencies": {
+ "path-type": "^4.0.0"
+ },
"engines": {
- "node": ">= 0.8.0"
+ "node": ">=8"
}
},
- "node_modules/path-root": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/path-root/-/path-root-0.1.1.tgz",
- "integrity": "sha512-QLcPegTHF11axjfojBIoDygmS2E3Lf+8+jI6wOVmNVenrKSo3mFdSGiIgdSHenczw3wPtlVMQaFVwGmM7BJdtg==",
+ "node_modules/doctrine": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
+ "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
"dependencies": {
- "path-root-regex": "^0.1.0"
+ "esutils": "^2.0.2"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">=6.0.0"
}
},
- "node_modules/path-root-regex": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/path-root-regex/-/path-root-regex-0.1.2.tgz",
- "integrity": "sha512-4GlJ6rZDhQZFE0DPVKh0e9jmZ5egZfxTkp7bcRDuPlJXbAwhxcl2dINPUAsjLdejqaLsCeg8axcLjIbvBjN4pQ==",
- "dev": true,
+ "node_modules/document-visibility": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/document-visibility/-/document-visibility-1.0.1.tgz",
+ "integrity": "sha512-aopFQn2zoi3opV+2mYpyheNLpy7elkxqmCdgK99cbmsyeweaFts89s8nq64kIOKJ00i7VwuoBdj5bh7j9LJgkw==",
"license": "MIT",
- "engines": {
- "node": ">=0.10.0"
+ "dependencies": {
+ "geval": "~2.1.1",
+ "global": "~4.3.0"
}
},
- "node_modules/path-scurry": {
- "version": "1.11.1",
- "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz",
- "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==",
- "dev": true,
- "license": "BlueOak-1.0.0",
+ "node_modules/document-visibility/node_modules/global": {
+ "version": "4.3.2",
+ "resolved": "https://registry.npmjs.org/global/-/global-4.3.2.tgz",
+ "integrity": "sha512-/4AybdwIDU4HkCUbJkZdWpe4P6vuw/CUtu+0I1YlLIPe7OlUO7KNJ+q/rO70CW2/NW6Jc6I62++Hzsf5Alu6rQ==",
+ "license": "MIT",
"dependencies": {
- "lru-cache": "^10.2.0",
- "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0"
- },
- "engines": {
- "node": ">=16 || 14 >=14.18"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
+ "min-document": "^2.19.0",
+ "process": "~0.5.1"
}
},
- "node_modules/path-scurry/node_modules/lru-cache": {
- "version": "10.4.3",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz",
- "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/path-to-regexp": {
- "version": "0.1.7",
- "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
- "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==",
- "dev": true,
- "license": "MIT"
- },
- "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==",
- "dev": true,
- "license": "MIT",
+ "node_modules/document-visibility/node_modules/process": {
+ "version": "0.5.2",
+ "resolved": "https://registry.npmjs.org/process/-/process-0.5.2.tgz",
+ "integrity": "sha512-oNpcutj+nYX2FjdEW7PGltWhXulAnFlM0My/k48L90hARCOJtvBbQXc/6itV2jDvU5xAAtonP+r6wmQgCcbAUA==",
"engines": {
- "node": ">=8"
+ "node": ">= 0.6.0"
}
},
- "node_modules/pause-stream": {
- "version": "0.0.11",
- "resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz",
- "integrity": "sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==",
+ "node_modules/dom-accessibility-api": {
+ "version": "0.5.16",
+ "resolved": "https://registry.npmjs.org/dom-accessibility-api/-/dom-accessibility-api-0.5.16.tgz",
+ "integrity": "sha512-X7BJ2yElsnOJ30pZF4uIIDfBEVgF4XEBxL9Bxhy6dnrm5hkzqmsWHGTiHqRiITNhMyFLyAiWndIJP7Z1NTteDg==",
"dev": true,
- "license": [
- "MIT",
- "Apache2"
- ],
- "dependencies": {
- "through": "~2.3"
- }
+ "license": "MIT"
},
- "node_modules/pbkdf2": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz",
- "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==",
+ "node_modules/dom-walk": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz",
+ "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w=="
+ },
+ "node_modules/dot-case": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/dot-case/-/dot-case-3.0.4.tgz",
+ "integrity": "sha512-Kv5nKlh6yRrdrGvxeJ2e5y2eRUpkUosIW4A2AS38zwSz27zu7ufDwQPi5Jhs3XAlGNetl3bmnGhQsMtkKJnj3w==",
"dev": true,
"license": "MIT",
"dependencies": {
- "create-hash": "^1.1.2",
- "create-hmac": "^1.1.4",
- "ripemd160": "^2.0.1",
- "safe-buffer": "^5.0.1",
- "sha.js": "^2.4.8"
- },
- "engines": {
- "node": ">=0.12"
+ "no-case": "^3.0.4",
+ "tslib": "^2.0.3"
}
},
- "node_modules/pend": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
- "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==",
+ "node_modules/duplexer": {
+ "version": "0.1.2",
+ "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz",
+ "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==",
"dev": true,
"license": "MIT"
},
- "node_modules/performance-now": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
- "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==",
+ "node_modules/ee-first": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
+ "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==",
+ "dev": true,
"license": "MIT"
},
- "node_modules/picocolors": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz",
- "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==",
+ "node_modules/electron-to-chromium": {
+ "version": "1.5.27",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.27.tgz",
+ "integrity": "sha512-o37j1vZqCoEgBuWWXLHQgTN/KDKe7zwpiY5CPeq2RvUqOyJw9xnrULzZAEVQ5p4h+zjMk7hgtOoPdnLxr7m/jw==",
+ "dev": true,
"license": "ISC"
},
- "node_modules/picomatch": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
- "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
+ "node_modules/elliptic": {
+ "version": "6.5.7",
+ "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.7.tgz",
+ "integrity": "sha512-ESVCtTwiA+XhY3wyh24QqRGBoP3rEdDUl3EDUUo9tft074fi19IrdpH7hLCMMP3CIj7jb3W96rn8lt/BqIlt5Q==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": ">=8.6"
- },
- "funding": {
- "url": "https://github.com/sponsors/jonschlinkert"
+ "dependencies": {
+ "bn.js": "^4.11.9",
+ "brorand": "^1.1.0",
+ "hash.js": "^1.0.0",
+ "hmac-drbg": "^1.0.1",
+ "inherits": "^2.0.4",
+ "minimalistic-assert": "^1.0.1",
+ "minimalistic-crypto-utils": "^1.0.1"
}
},
- "node_modules/pify": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
- "integrity": "sha512-udgsAY+fTnvv7kI7aaxbqwWNb0AHiB0qBO89PZKPkoTmGOgdbrHDKD+0B2X4uTfJ/FT1R09r9gTsjUjNJotuog==",
+ "node_modules/elliptic/node_modules/bn.js": {
+ "version": "4.12.0",
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
+ "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
"dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=0.10.0"
- }
+ "license": "MIT"
},
- "node_modules/pinkie": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz",
- "integrity": "sha512-MnUuEycAemtSaeFSjXKW/aroV7akBbY+Sv+RkyqFjgAe73F+MR0TBWKBRDkmfWq/HiFmdavfZ1G7h4SPZXaCSg==",
- "dev": true,
+ "node_modules/end-of-stream": {
+ "version": "1.4.4",
+ "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
+ "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
"license": "MIT",
- "engines": {
- "node": ">=0.10.0"
+ "dependencies": {
+ "once": "^1.4.0"
}
},
- "node_modules/pinkie-promise": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz",
- "integrity": "sha512-0Gni6D4UcLTbv9c57DfxDGdr41XfgUjqWZu492f0cIGr16zDU06BWP/RAEvOuo7CQ0CNjHaLlM59YJJFm3NWlw==",
+ "node_modules/enhanced-resolve": {
+ "version": "5.17.1",
+ "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz",
+ "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "pinkie": "^2.0.0"
+ "graceful-fs": "^4.2.4",
+ "tapable": "^2.2.0"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">=10.13.0"
}
},
- "node_modules/plist": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/plist/-/plist-3.1.0.tgz",
- "integrity": "sha512-uysumyrvkUX0rX/dEVqt8gC3sTBzd4zoWfLeS29nb53imdaXVvLINYXTI2GNqzaMuvacNx4uJQ8+b3zXR0pkgQ==",
+ "node_modules/entities": {
+ "version": "4.5.0",
+ "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz",
+ "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "@xmldom/xmldom": "^0.8.8",
- "base64-js": "^1.5.1",
- "xmlbuilder": "^15.1.1"
- },
+ "license": "BSD-2-Clause",
"engines": {
- "node": ">=10.4.0"
+ "node": ">=0.12"
+ },
+ "funding": {
+ "url": "https://github.com/fb55/entities?sponsor=1"
}
},
- "node_modules/plugin-error": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/plugin-error/-/plugin-error-1.0.1.tgz",
- "integrity": "sha512-L1zP0dk7vGweZME2i+EeakvUNqSrdiI3F91TwEoYiGrAfUXmVv6fJIq4g82PAXxNsWOp0J7ZqQy/3Szz0ajTxA==",
+ "node_modules/error-ex": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz",
+ "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==",
"dev": true,
"license": "MIT",
"dependencies": {
- "ansi-colors": "^1.0.1",
- "arr-diff": "^4.0.0",
- "arr-union": "^3.1.0",
- "extend-shallow": "^3.0.2"
- },
- "engines": {
- "node": ">= 0.10"
+ "is-arrayish": "^0.2.1"
}
},
- "node_modules/plugin-error/node_modules/extend-shallow": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
- "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==",
- "dev": true,
+ "node_modules/es-define-property": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.0.tgz",
+ "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==",
"license": "MIT",
"dependencies": {
- "assign-symbols": "^1.0.0",
- "is-extendable": "^1.0.1"
+ "get-intrinsic": "^1.2.4"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.4"
}
},
- "node_modules/plugin-error/node_modules/is-extendable": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
- "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
- "dev": true,
+ "node_modules/es-errors": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
+ "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
"license": "MIT",
- "dependencies": {
- "is-plain-object": "^2.0.4"
- },
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.4"
}
},
- "node_modules/plugin-error/node_modules/is-plain-object": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
- "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
+ "node_modules/es-module-lexer": {
+ "version": "1.5.4",
+ "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.5.4.tgz",
+ "integrity": "sha512-MVNK56NiMrOwitFB7cqDwq0CQutbw+0BvLshJSse0MUNU+y1FC3bUS/AQg7oUng+/wKrrki7JfmwtVHkVfPLlw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/esbuild": {
+ "version": "0.23.1",
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.23.1.tgz",
+ "integrity": "sha512-VVNz/9Sa0bs5SELtn3f7qhJCDPCF5oMEl5cO9/SSinpE9hbPVvxbd572HH5AKiP7WD8INO53GgfDDhRjkylHEg==",
"dev": true,
+ "hasInstallScript": true,
"license": "MIT",
- "dependencies": {
- "isobject": "^3.0.1"
+ "bin": {
+ "esbuild": "bin/esbuild"
},
"engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/plugin-log": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/plugin-log/-/plugin-log-0.1.0.tgz",
- "integrity": "sha512-TzmfWRMEFAnrZbI4GfyXv9Gp5E71eby3gmvnP6LEfmYbVC8FPN2RBRhwxg4sjIg+fy8AJ3mczhLXvk0pzHPeMg==",
- "deprecated": "Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.",
+ "node": ">=18"
+ },
+ "optionalDependencies": {
+ "@esbuild/aix-ppc64": "0.23.1",
+ "@esbuild/android-arm": "0.23.1",
+ "@esbuild/android-arm64": "0.23.1",
+ "@esbuild/android-x64": "0.23.1",
+ "@esbuild/darwin-arm64": "0.23.1",
+ "@esbuild/darwin-x64": "0.23.1",
+ "@esbuild/freebsd-arm64": "0.23.1",
+ "@esbuild/freebsd-x64": "0.23.1",
+ "@esbuild/linux-arm": "0.23.1",
+ "@esbuild/linux-arm64": "0.23.1",
+ "@esbuild/linux-ia32": "0.23.1",
+ "@esbuild/linux-loong64": "0.23.1",
+ "@esbuild/linux-mips64el": "0.23.1",
+ "@esbuild/linux-ppc64": "0.23.1",
+ "@esbuild/linux-riscv64": "0.23.1",
+ "@esbuild/linux-s390x": "0.23.1",
+ "@esbuild/linux-x64": "0.23.1",
+ "@esbuild/netbsd-x64": "0.23.1",
+ "@esbuild/openbsd-arm64": "0.23.1",
+ "@esbuild/openbsd-x64": "0.23.1",
+ "@esbuild/sunos-x64": "0.23.1",
+ "@esbuild/win32-arm64": "0.23.1",
+ "@esbuild/win32-ia32": "0.23.1",
+ "@esbuild/win32-x64": "0.23.1"
+ }
+ },
+ "node_modules/esbuild-register": {
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/esbuild-register/-/esbuild-register-3.6.0.tgz",
+ "integrity": "sha512-H2/S7Pm8a9CL1uhp9OvjwrBh5Pvx0H8qVOxNu8Wed9Y7qv56MPtq+GGM8RJpq6glYJn9Wspr8uw7l55uyinNeg==",
"dev": true,
+ "license": "MIT",
"dependencies": {
- "chalk": "^1.1.1",
- "dateformat": "^1.0.11"
+ "debug": "^4.3.4"
},
- "engines": {
- "node": ">= 0.9.0"
+ "peerDependencies": {
+ "esbuild": ">=0.12 <1"
}
},
- "node_modules/plugin-log/node_modules/ansi-regex": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
- "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==",
+ "node_modules/escalade": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz",
+ "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=0.10.0"
+ "node": ">=6"
}
},
- "node_modules/plugin-log/node_modules/ansi-styles": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
- "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==",
+ "node_modules/escape-html": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
+ "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/escape-string-regexp": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
+ "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=0.10.0"
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/plugin-log/node_modules/chalk": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
- "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==",
+ "node_modules/eslint": {
+ "version": "9.12.0",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-9.12.0.tgz",
+ "integrity": "sha512-UVIOlTEWxwIopRL1wgSQYdnVDcEvs2wyaO6DGo5mXqe3r16IoCNWkR29iHhyaP4cICWjbgbmFUGAhh0GJRuGZw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "ansi-styles": "^2.2.1",
- "escape-string-regexp": "^1.0.2",
- "has-ansi": "^2.0.0",
- "strip-ansi": "^3.0.0",
- "supports-color": "^2.0.0"
+ "@eslint-community/eslint-utils": "^4.2.0",
+ "@eslint-community/regexpp": "^4.11.0",
+ "@eslint/config-array": "^0.18.0",
+ "@eslint/core": "^0.6.0",
+ "@eslint/eslintrc": "^3.1.0",
+ "@eslint/js": "9.12.0",
+ "@eslint/plugin-kit": "^0.2.0",
+ "@humanfs/node": "^0.16.5",
+ "@humanwhocodes/module-importer": "^1.0.1",
+ "@humanwhocodes/retry": "^0.3.1",
+ "@types/estree": "^1.0.6",
+ "@types/json-schema": "^7.0.15",
+ "ajv": "^6.12.4",
+ "chalk": "^4.0.0",
+ "cross-spawn": "^7.0.2",
+ "debug": "^4.3.2",
+ "escape-string-regexp": "^4.0.0",
+ "eslint-scope": "^8.1.0",
+ "eslint-visitor-keys": "^4.1.0",
+ "espree": "^10.2.0",
+ "esquery": "^1.5.0",
+ "esutils": "^2.0.2",
+ "fast-deep-equal": "^3.1.3",
+ "file-entry-cache": "^8.0.0",
+ "find-up": "^5.0.0",
+ "glob-parent": "^6.0.2",
+ "ignore": "^5.2.0",
+ "imurmurhash": "^0.1.4",
+ "is-glob": "^4.0.0",
+ "json-stable-stringify-without-jsonify": "^1.0.1",
+ "lodash.merge": "^4.6.2",
+ "minimatch": "^3.1.2",
+ "natural-compare": "^1.4.0",
+ "optionator": "^0.9.3",
+ "text-table": "^0.2.0"
+ },
+ "bin": {
+ "eslint": "bin/eslint.js"
},
"engines": {
- "node": ">=0.10.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "url": "https://eslint.org/donate"
+ },
+ "peerDependencies": {
+ "jiti": "*"
+ },
+ "peerDependenciesMeta": {
+ "jiti": {
+ "optional": true
+ }
}
},
- "node_modules/plugin-log/node_modules/dateformat": {
- "version": "1.0.12",
- "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-1.0.12.tgz",
- "integrity": "sha512-5sFRfAAmbHdIts+eKjR9kYJoF0ViCMVX9yqLu5A7S/v+nd077KgCITOMiirmyCBiZpKLDXbBOkYm6tu7rX/TKg==",
+ "node_modules/eslint-config-prettier": {
+ "version": "9.1.0",
+ "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.1.0.tgz",
+ "integrity": "sha512-NSWl5BFQWEPi1j4TjVNItzYV7dZXZ+wP6I6ZhrBGpChQhZRUaElihE9uRRkcbRnNb76UMKDF3r+WTmNcGPKsqw==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "get-stdin": "^4.0.1",
- "meow": "^3.3.0"
- },
"bin": {
- "dateformat": "bin/cli.js"
+ "eslint-config-prettier": "bin/cli.js"
},
- "engines": {
- "node": "*"
+ "peerDependencies": {
+ "eslint": ">=7.0.0"
}
},
- "node_modules/plugin-log/node_modules/escape-string-regexp": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
- "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==",
+ "node_modules/eslint-import-resolver-node": {
+ "version": "0.3.9",
+ "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.9.tgz",
+ "integrity": "sha512-WFj2isz22JahUv+B788TlO3N6zL3nNJGU8CcZbPZvVEkBPaJdCV4vy5wyghty5ROFbCRnm132v8BScu5/1BQ8g==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": ">=0.8.0"
+ "dependencies": {
+ "debug": "^3.2.7",
+ "is-core-module": "^2.13.0",
+ "resolve": "^1.22.4"
}
},
- "node_modules/plugin-log/node_modules/get-stdin": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
- "integrity": "sha512-F5aQMywwJ2n85s4hJPTT9RPxGmubonuB10MNYo17/xph174n2MIR33HRguhzVag10O/npM7SPk73LMZNP+FaWw==",
+ "node_modules/eslint-import-resolver-node/node_modules/debug": {
+ "version": "3.2.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
+ "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": ">=0.10.0"
+ "dependencies": {
+ "ms": "^2.1.1"
}
},
- "node_modules/plugin-log/node_modules/strip-ansi": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
- "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==",
+ "node_modules/eslint-plugin-depend": {
+ "version": "0.11.0",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-depend/-/eslint-plugin-depend-0.11.0.tgz",
+ "integrity": "sha512-IwF06BrcdYoELuFd18sdVHhvDfF23xbr8pG/ONqrwB4gXjJ7281mEDEmACKWyvMY63afph8+2aOLbeuvr9mbdg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "ansi-regex": "^2.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
+ "fd-package-json": "^1.2.0",
+ "module-replacements": "^2.1.0",
+ "semver": "^7.6.3"
}
},
- "node_modules/plugin-log/node_modules/supports-color": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
- "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==",
+ "node_modules/eslint-plugin-depend/node_modules/semver": {
+ "version": "7.6.3",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
+ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
"dev": true,
- "license": "MIT",
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
+ },
"engines": {
- "node": ">=0.8.0"
+ "node": ">=10"
}
},
- "node_modules/posix-character-classes": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz",
- "integrity": "sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==",
+ "node_modules/eslint-plugin-es": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-es/-/eslint-plugin-es-3.0.1.tgz",
+ "integrity": "sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==",
"dev": true,
"license": "MIT",
+ "dependencies": {
+ "eslint-utils": "^2.0.0",
+ "regexpp": "^3.0.0"
+ },
"engines": {
- "node": ">=0.10.0"
+ "node": ">=8.10.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/mysticatea"
+ },
+ "peerDependencies": {
+ "eslint": ">=4.19.1"
}
},
- "node_modules/possible-typed-array-names": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz",
- "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==",
+ "node_modules/eslint-plugin-import-x": {
+ "version": "4.3.1",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-import-x/-/eslint-plugin-import-x-4.3.1.tgz",
+ "integrity": "sha512-5TriWkXulDl486XnYYRgsL+VQoS/7mhN/2ci02iLCuL7gdhbiWxnsuL/NTcaKY9fpMgsMFjWZBtIGW7pb+RX0g==",
"dev": true,
"license": "MIT",
+ "dependencies": {
+ "@typescript-eslint/utils": "^8.1.0",
+ "debug": "^4.3.4",
+ "doctrine": "^3.0.0",
+ "eslint-import-resolver-node": "^0.3.9",
+ "get-tsconfig": "^4.7.3",
+ "is-glob": "^4.0.3",
+ "minimatch": "^9.0.3",
+ "semver": "^7.6.3",
+ "stable-hash": "^0.0.4",
+ "tslib": "^2.6.3"
+ },
"engines": {
- "node": ">= 0.4"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "peerDependencies": {
+ "eslint": "^8.57.0 || ^9.0.0"
}
},
- "node_modules/postcss": {
- "version": "8.4.47",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz",
- "integrity": "sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==",
+ "node_modules/eslint-plugin-import-x/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
"dev": true,
- "funding": [
- {
- "type": "opencollective",
- "url": "https://opencollective.com/postcss/"
- },
- {
- "type": "tidelift",
- "url": "https://tidelift.com/funding/github/npm/postcss"
- },
- {
- "type": "github",
- "url": "https://github.com/sponsors/ai"
- }
- ],
"license": "MIT",
"dependencies": {
- "nanoid": "^3.3.7",
- "picocolors": "^1.1.0",
- "source-map-js": "^1.2.1"
- },
- "engines": {
- "node": "^10 || ^12 || >=14"
+ "balanced-match": "^1.0.0"
}
},
- "node_modules/postcss-calc": {
- "version": "9.0.1",
- "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-9.0.1.tgz",
- "integrity": "sha512-TipgjGyzP5QzEhsOZUaIkeO5mKeMFpebWzRogWG/ysonUlnHcq5aJe0jOjpfzUU8PeSaBQnrE8ehR0QA5vs8PQ==",
+ "node_modules/eslint-plugin-import-x/node_modules/minimatch": {
+ "version": "9.0.5",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
+ "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
"dev": true,
- "license": "MIT",
+ "license": "ISC",
"dependencies": {
- "postcss-selector-parser": "^6.0.11",
- "postcss-value-parser": "^4.2.0"
+ "brace-expansion": "^2.0.1"
},
"engines": {
- "node": "^14 || ^16 || >=18.0"
+ "node": ">=16 || 14 >=14.17"
},
- "peerDependencies": {
- "postcss": "^8.2.2"
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
}
},
- "node_modules/postcss-colormin": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-6.1.0.tgz",
- "integrity": "sha512-x9yX7DOxeMAR+BgGVnNSAxmAj98NX/YxEMNFP+SDCEeNLb2r3i6Hh1ksMsnW8Ub5SLCpbescQqn9YEbE9554Sw==",
+ "node_modules/eslint-plugin-import-x/node_modules/semver": {
+ "version": "7.6.3",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
+ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "browserslist": "^4.23.0",
- "caniuse-api": "^3.0.0",
- "colord": "^2.9.3",
- "postcss-value-parser": "^4.2.0"
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
},
"engines": {
- "node": "^14 || ^16 || >=18.0"
- },
- "peerDependencies": {
- "postcss": "^8.4.31"
+ "node": ">=10"
}
},
- "node_modules/postcss-convert-values": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-6.1.0.tgz",
- "integrity": "sha512-zx8IwP/ts9WvUM6NkVSkiU902QZL1bwPhaVaLynPtCsOTqp+ZKbNi+s6XJg3rfqpKGA/oc7Oxk5t8pOQJcwl/w==",
+ "node_modules/eslint-plugin-node": {
+ "version": "11.1.0",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-node/-/eslint-plugin-node-11.1.0.tgz",
+ "integrity": "sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==",
"dev": true,
"license": "MIT",
"dependencies": {
- "browserslist": "^4.23.0",
- "postcss-value-parser": "^4.2.0"
+ "eslint-plugin-es": "^3.0.0",
+ "eslint-utils": "^2.0.0",
+ "ignore": "^5.1.1",
+ "minimatch": "^3.0.4",
+ "resolve": "^1.10.1",
+ "semver": "^6.1.0"
},
"engines": {
- "node": "^14 || ^16 || >=18.0"
+ "node": ">=8.10.0"
},
"peerDependencies": {
- "postcss": "^8.4.31"
+ "eslint": ">=5.16.0"
}
},
- "node_modules/postcss-discard-comments": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-6.0.2.tgz",
- "integrity": "sha512-65w/uIqhSBBfQmYnG92FO1mWZjJ4GL5b8atm5Yw2UgrwD7HiNiSSNwJor1eCFGzUgYnN/iIknhNRVqjrrpuglw==",
+ "node_modules/eslint-plugin-promise": {
+ "version": "7.1.0",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-promise/-/eslint-plugin-promise-7.1.0.tgz",
+ "integrity": "sha512-8trNmPxdAy3W620WKDpaS65NlM5yAumod6XeC4LOb+jxlkG4IVcp68c6dXY2ev+uT4U1PtG57YDV6EGAXN0GbQ==",
"dev": true,
- "license": "MIT",
+ "license": "ISC",
"engines": {
- "node": "^14 || ^16 || >=18.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/eslint"
},
"peerDependencies": {
- "postcss": "^8.4.31"
+ "eslint": "^7.0.0 || ^8.0.0 || ^9.0.0"
}
},
- "node_modules/postcss-discard-duplicates": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-6.0.3.tgz",
- "integrity": "sha512-+JA0DCvc5XvFAxwx6f/e68gQu/7Z9ud584VLmcgto28eB8FqSFZwtrLwB5Kcp70eIoWP/HXqz4wpo8rD8gpsTw==",
+ "node_modules/eslint-plugin-regexp": {
+ "version": "2.6.0",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-regexp/-/eslint-plugin-regexp-2.6.0.tgz",
+ "integrity": "sha512-FCL851+kislsTEQEMioAlpDuK5+E5vs0hi1bF8cFlPlHcEjeRhuAzEsGikXRreE+0j4WhW2uO54MqTjXtYOi3A==",
"dev": true,
"license": "MIT",
+ "dependencies": {
+ "@eslint-community/eslint-utils": "^4.2.0",
+ "@eslint-community/regexpp": "^4.9.1",
+ "comment-parser": "^1.4.0",
+ "jsdoc-type-pratt-parser": "^4.0.0",
+ "refa": "^0.12.1",
+ "regexp-ast-analysis": "^0.7.1",
+ "scslre": "^0.3.0"
+ },
"engines": {
- "node": "^14 || ^16 || >=18.0"
+ "node": "^18 || >=20"
},
"peerDependencies": {
- "postcss": "^8.4.31"
+ "eslint": ">=8.44.0"
}
},
- "node_modules/postcss-discard-empty": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-6.0.3.tgz",
- "integrity": "sha512-znyno9cHKQsK6PtxL5D19Fj9uwSzC2mB74cpT66fhgOadEUPyXFkbgwm5tvc3bt3NAy8ltE5MrghxovZRVnOjQ==",
+ "node_modules/eslint-plugin-security": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-security/-/eslint-plugin-security-3.0.1.tgz",
+ "integrity": "sha512-XjVGBhtDZJfyuhIxnQ/WMm385RbX3DBu7H1J7HNNhmB2tnGxMeqVSnYv79oAj992ayvIBZghsymwkYFS6cGH4Q==",
"dev": true,
- "license": "MIT",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "safe-regex": "^2.1.1"
+ },
"engines": {
- "node": "^14 || ^16 || >=18.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},
- "peerDependencies": {
- "postcss": "^8.4.31"
+ "funding": {
+ "url": "https://opencollective.com/eslint"
}
},
- "node_modules/postcss-discard-overridden": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-6.0.2.tgz",
- "integrity": "sha512-j87xzI4LUggC5zND7KdjsI25APtyMuynXZSujByMaav2roV6OZX+8AaCUcZSWqckZpjAjRyFDdpqybgjFO0HJQ==",
+ "node_modules/eslint-plugin-security/node_modules/safe-regex": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-2.1.1.tgz",
+ "integrity": "sha512-rx+x8AMzKb5Q5lQ95Zoi6ZbJqwCLkqi3XuJXp5P3rT8OEc6sZCJG5AE5dU3lsgRr/F4Bs31jSlVN+j5KrsGu9A==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": "^14 || ^16 || >=18.0"
+ "dependencies": {
+ "regexp-tree": "~0.1.1"
+ }
+ },
+ "node_modules/eslint-scope": {
+ "version": "5.1.1",
+ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
+ "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "esrecurse": "^4.3.0",
+ "estraverse": "^4.1.1"
},
- "peerDependencies": {
- "postcss": "^8.4.31"
+ "engines": {
+ "node": ">=8.0.0"
}
},
- "node_modules/postcss-load-config": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-5.1.0.tgz",
- "integrity": "sha512-G5AJ+IX0aD0dygOE0yFZQ/huFFMSNneyfp0e3/bT05a8OfPC5FUoZRPfGijUdGOJNMewJiwzcHJXFafFzeKFVA==",
+ "node_modules/eslint-utils": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz",
+ "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==",
"dev": true,
- "funding": [
- {
- "type": "opencollective",
- "url": "https://opencollective.com/postcss/"
- },
- {
- "type": "github",
- "url": "https://github.com/sponsors/ai"
- }
- ],
"license": "MIT",
"dependencies": {
- "lilconfig": "^3.1.1",
- "yaml": "^2.4.2"
+ "eslint-visitor-keys": "^1.1.0"
},
"engines": {
- "node": ">= 18"
- },
- "peerDependencies": {
- "jiti": ">=1.21.0",
- "postcss": ">=8.0.9",
- "tsx": "^4.8.1"
+ "node": ">=6"
},
- "peerDependenciesMeta": {
- "jiti": {
- "optional": true
- },
- "postcss": {
- "optional": true
- },
- "tsx": {
- "optional": true
- }
+ "funding": {
+ "url": "https://github.com/sponsors/mysticatea"
+ }
+ },
+ "node_modules/eslint-utils/node_modules/eslint-visitor-keys": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz",
+ "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=4"
}
},
- "node_modules/postcss-merge-longhand": {
- "version": "6.0.5",
- "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-6.0.5.tgz",
- "integrity": "sha512-5LOiordeTfi64QhICp07nzzuTDjNSO8g5Ksdibt44d+uvIIAE1oZdRn8y/W5ZtYgRH/lnLDlvi9F8btZcVzu3w==",
+ "node_modules/eslint/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,
"license": "MIT",
"dependencies": {
- "postcss-value-parser": "^4.2.0",
- "stylehacks": "^6.1.1"
+ "color-convert": "^2.0.1"
},
"engines": {
- "node": "^14 || ^16 || >=18.0"
+ "node": ">=8"
},
- "peerDependencies": {
- "postcss": "^8.4.31"
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
- "node_modules/postcss-merge-rules": {
- "version": "6.1.1",
- "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-6.1.1.tgz",
- "integrity": "sha512-KOdWF0gju31AQPZiD+2Ar9Qjowz1LTChSjFFbS+e2sFgc4uHOp3ZvVX4sNeTlk0w2O31ecFGgrFzhO0RSWbWwQ==",
+ "node_modules/eslint/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "browserslist": "^4.23.0",
- "caniuse-api": "^3.0.0",
- "cssnano-utils": "^4.0.2",
- "postcss-selector-parser": "^6.0.16"
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
},
"engines": {
- "node": "^14 || ^16 || >=18.0"
+ "node": ">=10"
},
- "peerDependencies": {
- "postcss": "^8.4.31"
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
}
},
- "node_modules/postcss-minify-font-values": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-6.1.0.tgz",
- "integrity": "sha512-gklfI/n+9rTh8nYaSJXlCo3nOKqMNkxuGpTn/Qm0gstL3ywTr9/WRKznE+oy6fvfolH6dF+QM4nCo8yPLdvGJg==",
+ "node_modules/eslint/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,
"license": "MIT",
"dependencies": {
- "postcss-value-parser": "^4.2.0"
+ "color-name": "~1.1.4"
},
"engines": {
- "node": "^14 || ^16 || >=18.0"
- },
- "peerDependencies": {
- "postcss": "^8.4.31"
+ "node": ">=7.0.0"
}
},
- "node_modules/postcss-minify-gradients": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-6.0.3.tgz",
- "integrity": "sha512-4KXAHrYlzF0Rr7uc4VrfwDJ2ajrtNEpNEuLxFgwkhFZ56/7gaE4Nr49nLsQDZyUe+ds+kEhf+YAUolJiYXF8+Q==",
+ "node_modules/eslint/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,
- "license": "MIT",
+ "license": "MIT"
+ },
+ "node_modules/eslint/node_modules/eslint-scope": {
+ "version": "8.1.0",
+ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-8.1.0.tgz",
+ "integrity": "sha512-14dSvlhaVhKKsa9Fx1l8A17s7ah7Ef7wCakJ10LYk6+GYmP9yDti2oq2SEwcyndt6knfcZyhyxwY3i9yL78EQw==",
+ "dev": true,
+ "license": "BSD-2-Clause",
"dependencies": {
- "colord": "^2.9.3",
- "cssnano-utils": "^4.0.2",
- "postcss-value-parser": "^4.2.0"
+ "esrecurse": "^4.3.0",
+ "estraverse": "^5.2.0"
},
"engines": {
- "node": "^14 || ^16 || >=18.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},
- "peerDependencies": {
- "postcss": "^8.4.31"
+ "funding": {
+ "url": "https://opencollective.com/eslint"
}
},
- "node_modules/postcss-minify-params": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-6.1.0.tgz",
- "integrity": "sha512-bmSKnDtyyE8ujHQK0RQJDIKhQ20Jq1LYiez54WiaOoBtcSuflfK3Nm596LvbtlFcpipMjgClQGyGr7GAs+H1uA==",
+ "node_modules/eslint/node_modules/eslint-visitor-keys": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.1.0.tgz",
+ "integrity": "sha512-Q7lok0mqMUSf5a/AdAZkA5a/gHcO6snwQClVNNvFKCAVlxXucdU8pKydU5ZVZjBx5xr37vGbFFWtLQYreLzrZg==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "browserslist": "^4.23.0",
- "cssnano-utils": "^4.0.2",
- "postcss-value-parser": "^4.2.0"
- },
+ "license": "Apache-2.0",
"engines": {
- "node": "^14 || ^16 || >=18.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},
- "peerDependencies": {
- "postcss": "^8.4.31"
+ "funding": {
+ "url": "https://opencollective.com/eslint"
}
},
- "node_modules/postcss-minify-selectors": {
- "version": "6.0.4",
- "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-6.0.4.tgz",
- "integrity": "sha512-L8dZSwNLgK7pjTto9PzWRoMbnLq5vsZSTu8+j1P/2GB8qdtGQfn+K1uSvFgYvgh83cbyxT5m43ZZhUMTJDSClQ==",
+ "node_modules/eslint/node_modules/estraverse": {
+ "version": "5.3.0",
+ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
+ "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "postcss-selector-parser": "^6.0.16"
- },
+ "license": "BSD-2-Clause",
"engines": {
- "node": "^14 || ^16 || >=18.0"
- },
- "peerDependencies": {
- "postcss": "^8.4.31"
+ "node": ">=4.0"
}
},
- "node_modules/postcss-normalize-charset": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-6.0.2.tgz",
- "integrity": "sha512-a8N9czmdnrjPHa3DeFlwqst5eaL5W8jYu3EBbTTkI5FHkfMhFZh1EGbku6jhHhIzTA6tquI2P42NtZ59M/H/kQ==",
+ "node_modules/eslint/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
"dev": true,
"license": "MIT",
"engines": {
- "node": "^14 || ^16 || >=18.0"
- },
- "peerDependencies": {
- "postcss": "^8.4.31"
+ "node": ">=8"
}
},
- "node_modules/postcss-normalize-display-values": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-6.0.2.tgz",
- "integrity": "sha512-8H04Mxsb82ON/aAkPeq8kcBbAtI5Q2a64X/mnRRfPXBq7XeogoQvReqxEfc0B4WPq1KimjezNC8flUtC3Qz6jg==",
+ "node_modules/eslint/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,
"license": "MIT",
"dependencies": {
- "postcss-value-parser": "^4.2.0"
+ "has-flag": "^4.0.0"
},
"engines": {
- "node": "^14 || ^16 || >=18.0"
- },
- "peerDependencies": {
- "postcss": "^8.4.31"
+ "node": ">=8"
}
},
- "node_modules/postcss-normalize-positions": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-6.0.2.tgz",
- "integrity": "sha512-/JFzI441OAB9O7VnLA+RtSNZvQ0NCFZDOtp6QPFo1iIyawyXg0YI3CYM9HBy1WvwCRHnPep/BvI1+dGPKoXx/Q==",
+ "node_modules/espree": {
+ "version": "10.2.0",
+ "resolved": "https://registry.npmjs.org/espree/-/espree-10.2.0.tgz",
+ "integrity": "sha512-upbkBJbckcCNBDBDXEbuhjbP68n+scUd3k/U2EkyM9nw+I/jPiL4cLF/Al06CF96wRltFda16sxDFrxsI1v0/g==",
"dev": true,
- "license": "MIT",
+ "license": "BSD-2-Clause",
"dependencies": {
- "postcss-value-parser": "^4.2.0"
+ "acorn": "^8.12.0",
+ "acorn-jsx": "^5.3.2",
+ "eslint-visitor-keys": "^4.1.0"
},
"engines": {
- "node": "^14 || ^16 || >=18.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},
- "peerDependencies": {
- "postcss": "^8.4.31"
+ "funding": {
+ "url": "https://opencollective.com/eslint"
}
},
- "node_modules/postcss-normalize-repeat-style": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-6.0.2.tgz",
- "integrity": "sha512-YdCgsfHkJ2jEXwR4RR3Tm/iOxSfdRt7jplS6XRh9Js9PyCR/aka/FCb6TuHT2U8gQubbm/mPmF6L7FY9d79VwQ==",
+ "node_modules/espree/node_modules/eslint-visitor-keys": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-4.1.0.tgz",
+ "integrity": "sha512-Q7lok0mqMUSf5a/AdAZkA5a/gHcO6snwQClVNNvFKCAVlxXucdU8pKydU5ZVZjBx5xr37vGbFFWtLQYreLzrZg==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "postcss-value-parser": "^4.2.0"
- },
+ "license": "Apache-2.0",
"engines": {
- "node": "^14 || ^16 || >=18.0"
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
},
- "peerDependencies": {
- "postcss": "^8.4.31"
+ "funding": {
+ "url": "https://opencollective.com/eslint"
}
},
- "node_modules/postcss-normalize-string": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-6.0.2.tgz",
- "integrity": "sha512-vQZIivlxlfqqMp4L9PZsFE4YUkWniziKjQWUtsxUiVsSSPelQydwS8Wwcuw0+83ZjPWNTl02oxlIvXsmmG+CiQ==",
+ "node_modules/esprima": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
+ "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "postcss-value-parser": "^4.2.0"
+ "license": "BSD-2-Clause",
+ "bin": {
+ "esparse": "bin/esparse.js",
+ "esvalidate": "bin/esvalidate.js"
},
"engines": {
- "node": "^14 || ^16 || >=18.0"
- },
- "peerDependencies": {
- "postcss": "^8.4.31"
+ "node": ">=4"
}
},
- "node_modules/postcss-normalize-timing-functions": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-6.0.2.tgz",
- "integrity": "sha512-a+YrtMox4TBtId/AEwbA03VcJgtyW4dGBizPl7e88cTFULYsprgHWTbfyjSLyHeBcK/Q9JhXkt2ZXiwaVHoMzA==",
+ "node_modules/esquery": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.6.0.tgz",
+ "integrity": "sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==",
"dev": true,
- "license": "MIT",
+ "license": "BSD-3-Clause",
"dependencies": {
- "postcss-value-parser": "^4.2.0"
+ "estraverse": "^5.1.0"
},
"engines": {
- "node": "^14 || ^16 || >=18.0"
- },
- "peerDependencies": {
- "postcss": "^8.4.31"
+ "node": ">=0.10"
}
},
- "node_modules/postcss-normalize-unicode": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-6.1.0.tgz",
- "integrity": "sha512-QVC5TQHsVj33otj8/JD869Ndr5Xcc/+fwRh4HAsFsAeygQQXm+0PySrKbr/8tkDKzW+EVT3QkqZMfFrGiossDg==",
+ "node_modules/esquery/node_modules/estraverse": {
+ "version": "5.3.0",
+ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
+ "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "browserslist": "^4.23.0",
- "postcss-value-parser": "^4.2.0"
- },
+ "license": "BSD-2-Clause",
"engines": {
- "node": "^14 || ^16 || >=18.0"
- },
- "peerDependencies": {
- "postcss": "^8.4.31"
+ "node": ">=4.0"
}
},
- "node_modules/postcss-normalize-url": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-6.0.2.tgz",
- "integrity": "sha512-kVNcWhCeKAzZ8B4pv/DnrU1wNh458zBNp8dh4y5hhxih5RZQ12QWMuQrDgPRw3LRl8mN9vOVfHl7uhvHYMoXsQ==",
+ "node_modules/esrecurse": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
+ "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==",
"dev": true,
- "license": "MIT",
+ "license": "BSD-2-Clause",
"dependencies": {
- "postcss-value-parser": "^4.2.0"
+ "estraverse": "^5.2.0"
},
"engines": {
- "node": "^14 || ^16 || >=18.0"
- },
- "peerDependencies": {
- "postcss": "^8.4.31"
+ "node": ">=4.0"
}
},
- "node_modules/postcss-normalize-whitespace": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-6.0.2.tgz",
- "integrity": "sha512-sXZ2Nj1icbJOKmdjXVT9pnyHQKiSAyuNQHSgRCUgThn2388Y9cGVDR+E9J9iAYbSbLHI+UUwLVl1Wzco/zgv0Q==",
+ "node_modules/esrecurse/node_modules/estraverse": {
+ "version": "5.3.0",
+ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
+ "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "engines": {
+ "node": ">=4.0"
+ }
+ },
+ "node_modules/estraverse": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
+ "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "engines": {
+ "node": ">=4.0"
+ }
+ },
+ "node_modules/estree-walker": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz",
+ "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/esutils": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
+ "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/etag": {
+ "version": "1.8.1",
+ "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
+ "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "postcss-value-parser": "^4.2.0"
- },
"engines": {
- "node": "^14 || ^16 || >=18.0"
- },
- "peerDependencies": {
- "postcss": "^8.4.31"
+ "node": ">= 0.6"
}
},
- "node_modules/postcss-ordered-values": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-6.0.2.tgz",
- "integrity": "sha512-VRZSOB+JU32RsEAQrO94QPkClGPKJEL/Z9PCBImXMhIeK5KAYo6slP/hBYlLgrCjFxyqvn5VC81tycFEDBLG1Q==",
+ "node_modules/event-stream": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/event-stream/-/event-stream-4.0.1.tgz",
+ "integrity": "sha512-qACXdu/9VHPBzcyhdOWR5/IahhGMf0roTeZJfzz077GwylcDd90yOHLouhmv7GJ5XzPi6ekaQWd8AvPP2nOvpA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "cssnano-utils": "^4.0.2",
- "postcss-value-parser": "^4.2.0"
- },
+ "duplexer": "^0.1.1",
+ "from": "^0.1.7",
+ "map-stream": "0.0.7",
+ "pause-stream": "^0.0.11",
+ "split": "^1.0.1",
+ "stream-combiner": "^0.2.2",
+ "through": "^2.3.8"
+ }
+ },
+ "node_modules/event-target-shim": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz",
+ "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==",
+ "dev": true,
+ "license": "MIT",
"engines": {
- "node": "^14 || ^16 || >=18.0"
- },
- "peerDependencies": {
- "postcss": "^8.4.31"
+ "node": ">=6"
}
},
- "node_modules/postcss-reduce-initial": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-6.1.0.tgz",
- "integrity": "sha512-RarLgBK/CrL1qZags04oKbVbrrVK2wcxhvta3GCxrZO4zveibqbRPmm2VI8sSgCXwoUHEliRSbOfpR0b/VIoiw==",
+ "node_modules/events": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
+ "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "browserslist": "^4.23.0",
- "caniuse-api": "^3.0.0"
- },
"engines": {
- "node": "^14 || ^16 || >=18.0"
- },
- "peerDependencies": {
- "postcss": "^8.4.31"
+ "node": ">=0.8.x"
}
},
- "node_modules/postcss-reduce-transforms": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-6.0.2.tgz",
- "integrity": "sha512-sB+Ya++3Xj1WaT9+5LOOdirAxP7dJZms3GRcYheSPi1PiTMigsxHAdkrbItHxwYHr4kt1zL7mmcHstgMYT+aiA==",
+ "node_modules/evp_bytestokey": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/evp_bytestokey/-/evp_bytestokey-1.0.3.tgz",
+ "integrity": "sha512-/f2Go4TognH/KvCISP7OUsHn85hT9nUkxxA9BEWxFn+Oj9o8ZNLm/40hdlgSLyuOimsrTKLUMEorQexp/aPQeA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "postcss-value-parser": "^4.2.0"
- },
- "engines": {
- "node": "^14 || ^16 || >=18.0"
- },
- "peerDependencies": {
- "postcss": "^8.4.31"
+ "md5.js": "^1.3.4",
+ "safe-buffer": "^5.1.1"
}
},
- "node_modules/postcss-selector-parser": {
- "version": "6.1.2",
- "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.1.2.tgz",
- "integrity": "sha512-Q8qQfPiZ+THO/3ZrOrO0cJJKfpYCagtMUkXbnEfmgUjwXg6z/WBeOyS9APBBPCTSiDV+s4SwQGu8yFsiMRIudg==",
+ "node_modules/express": {
+ "version": "4.21.0",
+ "resolved": "https://registry.npmjs.org/express/-/express-4.21.0.tgz",
+ "integrity": "sha512-VqcNGcj/Id5ZT1LZ/cfihi3ttTn+NJmkli2eZADigjq29qTlWi/hAQ43t/VLPq8+UX06FCEx3ByOYet6ZFblng==",
"dev": true,
"license": "MIT",
"dependencies": {
- "cssesc": "^3.0.0",
- "util-deprecate": "^1.0.2"
+ "accepts": "~1.3.8",
+ "array-flatten": "1.1.1",
+ "body-parser": "1.20.3",
+ "content-disposition": "0.5.4",
+ "content-type": "~1.0.4",
+ "cookie": "0.6.0",
+ "cookie-signature": "1.0.6",
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "encodeurl": "~2.0.0",
+ "escape-html": "~1.0.3",
+ "etag": "~1.8.1",
+ "finalhandler": "1.3.1",
+ "fresh": "0.5.2",
+ "http-errors": "2.0.0",
+ "merge-descriptors": "1.0.3",
+ "methods": "~1.1.2",
+ "on-finished": "2.4.1",
+ "parseurl": "~1.3.3",
+ "path-to-regexp": "0.1.10",
+ "proxy-addr": "~2.0.7",
+ "qs": "6.13.0",
+ "range-parser": "~1.2.1",
+ "safe-buffer": "5.2.1",
+ "send": "0.19.0",
+ "serve-static": "1.16.2",
+ "setprototypeof": "1.2.0",
+ "statuses": "2.0.1",
+ "type-is": "~1.6.18",
+ "utils-merge": "1.0.1",
+ "vary": "~1.1.2"
},
"engines": {
- "node": ">=4"
+ "node": ">= 0.10.0"
}
},
- "node_modules/postcss-svgo": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-6.0.3.tgz",
- "integrity": "sha512-dlrahRmxP22bX6iKEjOM+c8/1p+81asjKT+V5lrgOH944ryx/OHpclnIbGsKVd3uWOXFLYJwCVf0eEkJGvO96g==",
+ "node_modules/express/node_modules/array-flatten": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
+ "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/express/node_modules/content-disposition": {
+ "version": "0.5.4",
+ "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz",
+ "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "postcss-value-parser": "^4.2.0",
- "svgo": "^3.2.0"
+ "safe-buffer": "5.2.1"
},
"engines": {
- "node": "^14 || ^16 || >= 18"
- },
- "peerDependencies": {
- "postcss": "^8.4.31"
+ "node": ">= 0.6"
}
},
- "node_modules/postcss-unique-selectors": {
- "version": "6.0.4",
- "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-6.0.4.tgz",
- "integrity": "sha512-K38OCaIrO8+PzpArzkLKB42dSARtC2tmG6PvD4b1o1Q2E9Os8jzfWFfSy/rixsHwohtsDdFtAWGjFVFUdwYaMg==",
+ "node_modules/express/node_modules/debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "postcss-selector-parser": "^6.0.16"
- },
- "engines": {
- "node": "^14 || ^16 || >=18.0"
- },
- "peerDependencies": {
- "postcss": "^8.4.31"
+ "ms": "2.0.0"
}
},
- "node_modules/postcss-value-parser": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz",
- "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==",
+ "node_modules/express/node_modules/debug/node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
"dev": true,
"license": "MIT"
},
- "node_modules/prelude-ls": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
- "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
+ "node_modules/express/node_modules/encodeurl": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz",
+ "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">= 0.8.0"
+ "node": ">= 0.8"
}
},
- "node_modules/prettier": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz",
- "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==",
+ "node_modules/express/node_modules/finalhandler": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz",
+ "integrity": "sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ==",
"dev": true,
"license": "MIT",
- "bin": {
- "prettier": "bin/prettier.cjs"
+ "dependencies": {
+ "debug": "2.6.9",
+ "encodeurl": "~2.0.0",
+ "escape-html": "~1.0.3",
+ "on-finished": "2.4.1",
+ "parseurl": "~1.3.3",
+ "statuses": "2.0.1",
+ "unpipe": "~1.0.0"
},
"engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/prettier/prettier?sponsor=1"
+ "node": ">= 0.8"
}
},
- "node_modules/prettier-plugin-curly": {
- "version": "0.2.2",
- "resolved": "https://registry.npmjs.org/prettier-plugin-curly/-/prettier-plugin-curly-0.2.2.tgz",
- "integrity": "sha512-2Rm/NLSeVv7xhQop3+P0Yt6GcbRGrFCb7Dl7y7NH6md4ZgcAcIiKgmAJtB+iWhgw1iwV7aDYSWslAQHpxu9isQ==",
+ "node_modules/express/node_modules/mime": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
+ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "@babel/generator": "^7.23.6",
- "@babel/parser": "^7.22.5",
- "@babel/traverse": "^7.22.5"
+ "bin": {
+ "mime": "cli.js"
},
"engines": {
- "node": ">=18"
- },
- "peerDependencies": {
- "prettier": "^2 || ^3"
+ "node": ">=4"
}
},
- "node_modules/prettier-plugin-packagejson": {
- "version": "2.5.2",
- "resolved": "https://registry.npmjs.org/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.5.2.tgz",
- "integrity": "sha512-w+TmoLv2pIa+siplW1cCj2ujEXQQS6z7wmWLOiLQK/2QVl7Wy6xh/ZUpqQw8tbKMXDodmSW4GONxlA33xpdNOg==",
+ "node_modules/express/node_modules/path-to-regexp": {
+ "version": "0.1.10",
+ "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz",
+ "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "sort-package-json": "2.10.1",
- "synckit": "0.9.1"
- },
- "peerDependencies": {
- "prettier": ">= 1.16.0"
- },
- "peerDependenciesMeta": {
- "prettier": {
- "optional": true
- }
- }
+ "license": "MIT"
},
- "node_modules/prettier-plugin-sh": {
- "version": "0.14.0",
- "resolved": "https://registry.npmjs.org/prettier-plugin-sh/-/prettier-plugin-sh-0.14.0.tgz",
- "integrity": "sha512-hfXulj5+zEl/ulrO5kMuuTPKmXvOg0bnLHY1hKFNN/N+/903iZbNp8NyZBTsgI8dtkSgFfAEIQq0IQTyP1ZVFQ==",
+ "node_modules/express/node_modules/send": {
+ "version": "0.19.0",
+ "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz",
+ "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "mvdan-sh": "^0.10.1",
- "sh-syntax": "^0.4.1"
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "destroy": "1.2.0",
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "etag": "~1.8.1",
+ "fresh": "0.5.2",
+ "http-errors": "2.0.0",
+ "mime": "1.6.0",
+ "ms": "2.1.3",
+ "on-finished": "2.4.1",
+ "range-parser": "~1.2.1",
+ "statuses": "2.0.1"
},
"engines": {
- "node": ">=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/unts"
- },
- "peerDependencies": {
- "prettier": "^3.0.3"
+ "node": ">= 0.8.0"
}
},
- "node_modules/pretty-hrtime": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/pretty-hrtime/-/pretty-hrtime-1.0.3.tgz",
- "integrity": "sha512-66hKPCr+72mlfiSjlEB1+45IjXSqvVAIy6mocupoww4tBFE9R9IhwwUGoI4G++Tc9Aq+2rxOt0RFU6gPcrte0A==",
+ "node_modules/express/node_modules/send/node_modules/encodeurl": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
+ "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
"dev": true,
"license": "MIT",
"engines": {
"node": ">= 0.8"
}
},
- "node_modules/process": {
- "version": "0.11.10",
- "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz",
- "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==",
- "license": "MIT",
- "engines": {
- "node": ">= 0.6.0"
- }
- },
- "node_modules/process-nextick-args": {
+ "node_modules/express/node_modules/statuses": {
"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==",
- "license": "MIT"
- },
- "node_modules/progress": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
- "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
+ "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz",
+ "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=0.4.0"
- }
- },
- "node_modules/public-encrypt": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz",
- "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "bn.js": "^4.1.0",
- "browserify-rsa": "^4.0.0",
- "create-hash": "^1.1.0",
- "parse-asn1": "^5.0.0",
- "randombytes": "^2.0.1",
- "safe-buffer": "^5.1.2"
+ "node": ">= 0.8"
}
},
- "node_modules/public-encrypt/node_modules/bn.js": {
- "version": "4.12.0",
- "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
- "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
+ "node_modules/fast-deep-equal": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz",
+ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==",
"dev": true,
"license": "MIT"
},
- "node_modules/pump": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.2.tgz",
- "integrity": "sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "end-of-stream": "^1.1.0",
- "once": "^1.3.1"
- }
- },
- "node_modules/pumpify": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz",
- "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "duplexify": "^3.6.0",
- "inherits": "^2.0.3",
- "pump": "^2.0.0"
- }
- },
- "node_modules/pumpify/node_modules/duplexify": {
- "version": "3.7.1",
- "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz",
- "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "end-of-stream": "^1.0.0",
- "inherits": "^2.0.1",
- "readable-stream": "^2.0.0",
- "stream-shift": "^1.0.0"
- }
- },
- "node_modules/pumpify/node_modules/pump": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz",
- "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==",
+ "node_modules/fast-glob": {
+ "version": "3.3.2",
+ "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz",
+ "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==",
"dev": true,
"license": "MIT",
"dependencies": {
- "end-of-stream": "^1.1.0",
- "once": "^1.3.1"
+ "@nodelib/fs.stat": "^2.0.2",
+ "@nodelib/fs.walk": "^1.2.3",
+ "glob-parent": "^5.1.2",
+ "merge2": "^1.3.0",
+ "micromatch": "^4.0.4"
+ },
+ "engines": {
+ "node": ">=8.6.0"
}
},
- "node_modules/punycode": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
- "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==",
+ "node_modules/fast-glob/node_modules/glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
"dev": true,
- "license": "MIT"
- },
- "node_modules/qs": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz",
- "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==",
- "license": "BSD-3-Clause",
+ "license": "ISC",
"dependencies": {
- "side-channel": "^1.0.6"
+ "is-glob": "^4.0.1"
},
"engines": {
- "node": ">=0.6"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
+ "node": ">= 6"
}
},
- "node_modules/querystring-es3": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz",
- "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==",
+ "node_modules/fast-json-stable-stringify": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz",
+ "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==",
"dev": true,
- "engines": {
- "node": ">=0.4.x"
- }
+ "license": "MIT"
},
- "node_modules/queue-microtask": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
- "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
+ "node_modules/fast-levenshtein": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
+ "integrity": "sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw==",
"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"
- }
- ],
"license": "MIT"
},
- "node_modules/quick-lru": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-5.1.1.tgz",
- "integrity": "sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==",
+ "node_modules/fast-safe-stringify": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz",
+ "integrity": "sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==",
+ "license": "MIT"
+ },
+ "node_modules/fastq": {
+ "version": "1.17.1",
+ "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz",
+ "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==",
"dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/raf": {
- "version": "3.4.1",
- "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz",
- "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==",
- "license": "MIT",
+ "license": "ISC",
"dependencies": {
- "performance-now": "^2.1.0"
+ "reusify": "^1.0.4"
}
},
- "node_modules/randombytes": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
- "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
+ "node_modules/fd-package-json": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/fd-package-json/-/fd-package-json-1.2.0.tgz",
+ "integrity": "sha512-45LSPmWf+gC5tdCQMNH4s9Sr00bIkiD9aN7dc5hqkrEw1geRYyDQS1v1oMHAW3ysfxfndqGsrDREHHjNNbKUfA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "safe-buffer": "^5.1.0"
+ "walk-up-path": "^3.0.1"
}
},
- "node_modules/randomfill": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz",
- "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==",
+ "node_modules/file-entry-cache": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-8.0.0.tgz",
+ "integrity": "sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "randombytes": "^2.0.5",
- "safe-buffer": "^5.1.0"
+ "flat-cache": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=16.0.0"
}
},
- "node_modules/range-parser": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz",
- "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==",
- "dev": true,
- "license": "MIT",
+ "node_modules/filesize": {
+ "version": "10.1.6",
+ "resolved": "https://registry.npmjs.org/filesize/-/filesize-10.1.6.tgz",
+ "integrity": "sha512-sJslQKU2uM33qH5nqewAwVB2QgR6w1aMNsYUp3aN5rMRyXEwJGmZvaWzeJFNTOXWlHQyBFCWrdj3fV/fsTOX8w==",
+ "license": "BSD-3-Clause",
"engines": {
- "node": ">= 0.6"
+ "node": ">= 10.4.0"
}
},
- "node_modules/raw-body": {
- "version": "2.5.2",
- "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz",
- "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==",
+ "node_modules/find-up": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz",
+ "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==",
"dev": true,
"license": "MIT",
"dependencies": {
- "bytes": "3.1.2",
- "http-errors": "2.0.0",
- "iconv-lite": "0.4.24",
- "unpipe": "1.0.0"
+ "locate-path": "^6.0.0",
+ "path-exists": "^4.0.0"
},
"engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/read-only-stream": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/read-only-stream/-/read-only-stream-2.0.0.tgz",
- "integrity": "sha512-3ALe0bjBVZtkdWKIcThYpQCLbBMd/+Tbh2CDSrAIDO3UsZ4Xs+tnyjv2MjCOMMgBG+AsUOeuP1cgtY1INISc8w==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "readable-stream": "^2.0.2"
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/read-pkg": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-1.1.0.tgz",
- "integrity": "sha512-7BGwRHqt4s/uVbuyoeejRn4YmFnYZiFl4AuaeXHlgZf3sONF0SOGlxs2Pw8g6hCKupo08RafIO5YXFNOKTfwsQ==",
+ "node_modules/flat-cache": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-4.0.1.tgz",
+ "integrity": "sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "load-json-file": "^1.0.0",
- "normalize-package-data": "^2.3.2",
- "path-type": "^1.0.0"
+ "flatted": "^3.2.9",
+ "keyv": "^4.5.4"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">=16"
}
},
- "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": "sha512-WD9MTlNtI55IwYUS27iHh9tK3YoIVhxis8yKhLpTqWtml739uXc9NWTpxoHkfZf3+DkCCsXox94/VWZniuZm6A==",
+ "node_modules/flatted": {
+ "version": "3.3.1",
+ "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.3.1.tgz",
+ "integrity": "sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/for-each": {
+ "version": "0.3.3",
+ "resolved": "https://registry.npmjs.org/for-each/-/for-each-0.3.3.tgz",
+ "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "find-up": "^1.0.0",
- "read-pkg": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
+ "is-callable": "^1.1.3"
}
},
- "node_modules/read-pkg-up/node_modules/find-up": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
- "integrity": "sha512-jvElSjyuo4EMQGoTwo1uJU5pQMwTW5lS1x05zzfJuTIyLR3zwO27LYrxNg+dlvKpGOuGy/MzBdXh80g0ve5+HA==",
+ "node_modules/fork-ts-checker-webpack-plugin": {
+ "version": "9.0.2",
+ "resolved": "https://registry.npmjs.org/fork-ts-checker-webpack-plugin/-/fork-ts-checker-webpack-plugin-9.0.2.tgz",
+ "integrity": "sha512-Uochze2R8peoN1XqlSi/rGUkDQpRogtLFocP9+PGu68zk1BDAKXfdeCdyVZpgTk8V8WFVQXdEz426VKjXLO1Gg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "path-exists": "^2.0.0",
- "pinkie-promise": "^2.0.0"
+ "@babel/code-frame": "^7.16.7",
+ "chalk": "^4.1.2",
+ "chokidar": "^3.5.3",
+ "cosmiconfig": "^8.2.0",
+ "deepmerge": "^4.2.2",
+ "fs-extra": "^10.0.0",
+ "memfs": "^3.4.1",
+ "minimatch": "^3.0.4",
+ "node-abort-controller": "^3.0.1",
+ "schema-utils": "^3.1.1",
+ "semver": "^7.3.5",
+ "tapable": "^2.2.1"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">=12.13.0",
+ "yarn": ">=1.0.0"
+ },
+ "peerDependencies": {
+ "typescript": ">3.6.0",
+ "webpack": "^5.11.0"
}
},
- "node_modules/read-pkg-up/node_modules/path-exists": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz",
- "integrity": "sha512-yTltuKuhtNeFJKa1PiRzfLAU5182q1y4Eb4XCJ3PBqyzEDkAZRzBrKKBct682ls9reBVHf9udYLN5Nd+K1B9BQ==",
+ "node_modules/fork-ts-checker-webpack-plugin/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,
"license": "MIT",
"dependencies": {
- "pinkie-promise": "^2.0.0"
+ "color-convert": "^2.0.1"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
- "node_modules/read-pkg/node_modules/path-type": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-1.1.0.tgz",
- "integrity": "sha512-S4eENJz1pkiQn9Znv33Q+deTOKmbl+jj1Fl+qiP/vYezj+S8x+J3Uo0ISrx/QoEvIlOaDWJhPaRd1flJ9HXZqg==",
+ "node_modules/fork-ts-checker-webpack-plugin/node_modules/anymatch": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
+ "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
"dev": true,
- "license": "MIT",
+ "license": "ISC",
"dependencies": {
- "graceful-fs": "^4.1.2",
- "pify": "^2.0.0",
- "pinkie-promise": "^2.0.0"
+ "normalize-path": "^3.0.0",
+ "picomatch": "^2.0.4"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 8"
}
},
- "node_modules/readable-stream": {
- "version": "2.3.8",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
- "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
+ "node_modules/fork-ts-checker-webpack-plugin/node_modules/binary-extensions": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz",
+ "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==",
+ "dev": true,
"license": "MIT",
- "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"
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/readable-stream/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==",
- "license": "MIT"
- },
- "node_modules/readable-stream/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==",
+ "node_modules/fork-ts-checker-webpack-plugin/node_modules/braces": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
+ "dev": true,
"license": "MIT",
"dependencies": {
- "safe-buffer": "~5.1.0"
+ "fill-range": "^7.1.1"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "node_modules/readable-wrap": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/readable-wrap/-/readable-wrap-1.0.0.tgz",
- "integrity": "sha512-/8n0Mr10S+HGKFygQ42Z40JIXwafPH3A72pwmlNClThgsImV5LJJiCue5Je1asxwY082sYxq/+kTxH6nTn0w3g==",
+ "node_modules/fork-ts-checker-webpack-plugin/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "readable-stream": "^1.1.13-1"
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
}
},
- "node_modules/readable-wrap/node_modules/isarray": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
- "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/readable-wrap/node_modules/readable-stream": {
- "version": "1.1.14",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
- "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==",
+ "node_modules/fork-ts-checker-webpack-plugin/node_modules/chokidar": {
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
+ "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.1",
- "isarray": "0.0.1",
- "string_decoder": "~0.10.x"
+ "anymatch": "~3.1.2",
+ "braces": "~3.0.2",
+ "glob-parent": "~5.1.2",
+ "is-binary-path": "~2.1.0",
+ "is-glob": "~4.0.1",
+ "normalize-path": "~3.0.0",
+ "readdirp": "~3.6.0"
+ },
+ "engines": {
+ "node": ">= 8.10.0"
+ },
+ "funding": {
+ "url": "https://paulmillr.com/funding/"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.3.2"
}
},
- "node_modules/readable-wrap/node_modules/string_decoder": {
- "version": "0.10.31",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
- "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/readdirp": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz",
- "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==",
+ "node_modules/fork-ts-checker-webpack-plugin/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,
"license": "MIT",
"dependencies": {
- "graceful-fs": "^4.1.11",
- "micromatch": "^3.1.10",
- "readable-stream": "^2.0.2"
+ "color-name": "~1.1.4"
},
"engines": {
- "node": ">=0.10"
+ "node": ">=7.0.0"
}
},
- "node_modules/readdirp/node_modules/define-property": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz",
- "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==",
+ "node_modules/fork-ts-checker-webpack-plugin/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,
+ "license": "MIT"
+ },
+ "node_modules/fork-ts-checker-webpack-plugin/node_modules/fill-range": {
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "is-descriptor": "^1.0.2",
- "isobject": "^3.0.1"
+ "to-regex-range": "^5.0.1"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">=8"
}
},
- "node_modules/readdirp/node_modules/extend-shallow": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
- "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==",
+ "node_modules/fork-ts-checker-webpack-plugin/node_modules/fs-extra": {
+ "version": "10.1.0",
+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-10.1.0.tgz",
+ "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "assign-symbols": "^1.0.0",
- "is-extendable": "^1.0.1"
+ "graceful-fs": "^4.2.0",
+ "jsonfile": "^6.0.1",
+ "universalify": "^2.0.0"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">=12"
}
},
- "node_modules/readdirp/node_modules/is-descriptor": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz",
- "integrity": "sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw==",
+ "node_modules/fork-ts-checker-webpack-plugin/node_modules/glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
"dev": true,
- "license": "MIT",
+ "license": "ISC",
"dependencies": {
- "is-accessor-descriptor": "^1.0.1",
- "is-data-descriptor": "^1.0.1"
+ "is-glob": "^4.0.1"
},
"engines": {
- "node": ">= 0.4"
+ "node": ">= 6"
}
},
- "node_modules/readdirp/node_modules/is-extendable": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
- "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
+ "node_modules/fork-ts-checker-webpack-plugin/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "is-plain-object": "^2.0.4"
- },
"engines": {
- "node": ">=0.10.0"
+ "node": ">=8"
}
},
- "node_modules/readdirp/node_modules/is-plain-object": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
- "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
+ "node_modules/fork-ts-checker-webpack-plugin/node_modules/is-binary-path": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
+ "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "isobject": "^3.0.1"
+ "binary-extensions": "^2.0.0"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">=8"
}
},
- "node_modules/readdirp/node_modules/kind-of": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz",
- "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
+ "node_modules/fork-ts-checker-webpack-plugin/node_modules/is-number": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
+ "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=0.10.0"
+ "node": ">=0.12.0"
}
},
- "node_modules/readdirp/node_modules/micromatch": {
- "version": "3.1.10",
- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz",
- "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==",
+ "node_modules/fork-ts-checker-webpack-plugin/node_modules/jsonfile": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
+ "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "arr-diff": "^4.0.0",
- "array-unique": "^0.3.2",
- "braces": "^2.3.1",
- "define-property": "^2.0.2",
- "extend-shallow": "^3.0.2",
- "extglob": "^2.0.4",
- "fragment-cache": "^0.2.1",
- "kind-of": "^6.0.2",
- "nanomatch": "^1.2.9",
- "object.pick": "^1.3.0",
- "regex-not": "^1.0.0",
- "snapdragon": "^0.8.1",
- "to-regex": "^3.0.2"
+ "universalify": "^2.0.0"
},
- "engines": {
- "node": ">=0.10.0"
+ "optionalDependencies": {
+ "graceful-fs": "^4.1.6"
}
},
- "node_modules/readline-transform": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/readline-transform/-/readline-transform-1.0.0.tgz",
- "integrity": "sha512-7KA6+N9IGat52d83dvxnApAWN+MtVb1MiVuMR/cf1O4kYsJG+g/Aav0AHcHKsb6StinayfPLne0+fMX2sOzAKg==",
+ "node_modules/fork-ts-checker-webpack-plugin/node_modules/readdirp": {
+ "version": "3.6.0",
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
+ "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
"dev": true,
"license": "MIT",
+ "dependencies": {
+ "picomatch": "^2.2.1"
+ },
"engines": {
- "node": ">=6"
+ "node": ">=8.10.0"
}
},
- "node_modules/rechoir": {
- "version": "0.6.2",
- "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz",
- "integrity": "sha512-HFM8rkZ+i3zrV+4LQjwQ0W+ez98pApMGM3HUrN04j3CqzPOzl9nmP15Y8YXNm8QHGv/eacOVEjqhmWpkRV0NAw==",
+ "node_modules/fork-ts-checker-webpack-plugin/node_modules/semver": {
+ "version": "7.6.3",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
+ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
"dev": true,
- "dependencies": {
- "resolve": "^1.1.6"
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
},
"engines": {
- "node": ">= 0.10"
+ "node": ">=10"
}
},
- "node_modules/redent": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz",
- "integrity": "sha512-qtW5hKzGQZqKoh6JNSD+4lfitfPKGz42e6QwiRmPM5mmKtR0N41AbJRYu0xJi7nhOJ4WDgRkKvAk6tw4WIwR4g==",
+ "node_modules/fork-ts-checker-webpack-plugin/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,
"license": "MIT",
"dependencies": {
- "indent-string": "^2.1.0",
- "strip-indent": "^1.0.1"
+ "has-flag": "^4.0.0"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">=8"
}
},
- "node_modules/redent/node_modules/indent-string": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz",
- "integrity": "sha512-aqwDFWSgSgfRaEwao5lg5KEcVd/2a+D1rvoG7NdilmYz0NwRk6StWpWdz/Hpk34MKPpx7s8XxUqimfcQK6gGlg==",
+ "node_modules/fork-ts-checker-webpack-plugin/node_modules/to-regex-range": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
+ "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "repeating": "^2.0.0"
+ "is-number": "^7.0.0"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">=8.0"
}
},
- "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==",
+ "node_modules/fork-ts-checker-webpack-plugin/node_modules/universalify": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
+ "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
"dev": true,
- "license": "MIT"
+ "license": "MIT",
+ "engines": {
+ "node": ">= 10.0.0"
+ }
},
- "node_modules/regenerate-unicode-properties": {
- "version": "10.2.0",
- "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-10.2.0.tgz",
- "integrity": "sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==",
- "dev": true,
+ "node_modules/form-data": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz",
+ "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==",
"license": "MIT",
"dependencies": {
- "regenerate": "^1.4.2"
+ "asynckit": "^0.4.0",
+ "combined-stream": "^1.0.8",
+ "mime-types": "^2.1.12"
},
"engines": {
- "node": ">=4"
+ "node": ">= 6"
}
},
- "node_modules/regenerator-runtime": {
- "version": "0.14.1",
- "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz",
- "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==",
- "dev": true,
+ "node_modules/format-util": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/format-util/-/format-util-1.0.5.tgz",
+ "integrity": "sha512-varLbTj0e0yVyRpqQhuWV+8hlePAgaoFRhNFj50BNjEIrw1/DphHSObtqwskVCPWNgzwPoQrZAbfa/SBiicNeg==",
"license": "MIT"
},
- "node_modules/regenerator-transform": {
- "version": "0.15.2",
- "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz",
- "integrity": "sha512-hfMp2BoF0qOk3uc5V20ALGDS2ddjQaLrdl7xrGXvAIow7qeWRM2VA2HuCHkUKk9slq3VwEwLNK3DFBqDfPGYtg==",
- "dev": true,
+ "node_modules/formidable": {
+ "version": "3.5.1",
+ "resolved": "https://registry.npmjs.org/formidable/-/formidable-3.5.1.tgz",
+ "integrity": "sha512-WJWKelbRHN41m5dumb0/k8TeAx7Id/y3a+Z7QfhxP/htI9Js5zYaEDtG8uMgG0vM0lOlqnmjE99/kfpOYi/0Og==",
"license": "MIT",
"dependencies": {
- "@babel/runtime": "^7.8.4"
+ "dezalgo": "^1.0.4",
+ "hexoid": "^1.0.0",
+ "once": "^1.4.0"
+ },
+ "funding": {
+ "url": "https://ko-fi.com/tunnckoCore/commissions"
}
},
- "node_modules/regex-not": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz",
- "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==",
+ "node_modules/forwarded": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz",
+ "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "extend-shallow": "^3.0.2",
- "safe-regex": "^1.1.0"
- },
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.6"
}
},
- "node_modules/regex-not/node_modules/extend-shallow": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
- "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==",
+ "node_modules/fresh": {
+ "version": "0.5.2",
+ "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
+ "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "assign-symbols": "^1.0.0",
- "is-extendable": "^1.0.1"
- },
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.6"
}
},
- "node_modules/regex-not/node_modules/is-extendable": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
- "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
+ "node_modules/from": {
+ "version": "0.1.7",
+ "resolved": "https://registry.npmjs.org/from/-/from-0.1.7.tgz",
+ "integrity": "sha512-twe20eF1OxVxp/ML/kq2p1uc6KvFK/+vs8WjEbeKmV2He22MKm7YF2ANIt+EOqhJ5L3K/SuuPhk0hWQDjOM23g==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/fs-monkey": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.6.tgz",
+ "integrity": "sha512-b1FMfwetIKymC0eioW7mTywihSQE4oLzQn1dB6rZB5fx/3NpNEdAWeCSMB+60/AeT0TCXsxzAlcYVEFCTAksWg==",
+ "dev": true,
+ "license": "Unlicense"
+ },
+ "node_modules/fs.realpath": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
+ "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==",
"dev": true,
+ "license": "ISC"
+ },
+ "node_modules/function-bind": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
+ "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
"license": "MIT",
- "dependencies": {
- "is-plain-object": "^2.0.4"
- },
- "engines": {
- "node": ">=0.10.0"
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/regex-not/node_modules/is-plain-object": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
- "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
+ "node_modules/get-caller-file": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
+ "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "isobject": "^3.0.1"
- },
+ "license": "ISC",
"engines": {
- "node": ">=0.10.0"
+ "node": "6.* || 8.* || >= 10.*"
}
},
- "node_modules/regexp.prototype.flags": {
- "version": "1.5.2",
- "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.2.tgz",
- "integrity": "sha512-NcDiDkTLuPR+++OCKB0nWafEmhg/Da8aUPLPMQbK+bxKKCm1/S5he+AqYa4PlMCVBalb4/yxIRub6qkEx5yJbw==",
- "dev": true,
+ "node_modules/get-form-data": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/get-form-data/-/get-form-data-3.0.0.tgz",
+ "integrity": "sha512-1d53Kn08wlPuLu31/boF1tW2WRYKw3xAWae3mqcjqpDjoqVBtXolbQnudbbEFyFWL7+2SLGRAFdotxNY06V7MA==",
+ "license": "MIT"
+ },
+ "node_modules/get-intrinsic": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.4.tgz",
+ "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==",
"license": "MIT",
"dependencies": {
- "call-bind": "^1.0.6",
- "define-properties": "^1.2.1",
"es-errors": "^1.3.0",
- "set-function-name": "^2.0.1"
+ "function-bind": "^1.1.2",
+ "has-proto": "^1.0.1",
+ "has-symbols": "^1.0.3",
+ "hasown": "^2.0.0"
},
"engines": {
"node": ">= 0.4"
@@ -15173,383 +5598,399 @@
"url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/regexpp": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz",
- "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==",
+ "node_modules/get-stdin": {
+ "version": "9.0.0",
+ "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-9.0.0.tgz",
+ "integrity": "sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=8"
+ "node": ">=12"
},
"funding": {
- "url": "https://github.com/sponsors/mysticatea"
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/regexpu-core": {
- "version": "5.3.2",
- "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-5.3.2.tgz",
- "integrity": "sha512-RAM5FlZz+Lhmo7db9L298p2vHP5ZywrVXmVXpmAD9GuL5MPH6t9ROw1iA/wfHkQ76Qe7AaPF0nGuim96/IrQMQ==",
+ "node_modules/get-tsconfig": {
+ "version": "4.8.1",
+ "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.8.1.tgz",
+ "integrity": "sha512-k9PN+cFBmaLWtVz29SkUoqU5O0slLuHJXt/2P+tMVFT+phsSGXGkp9t3rQIqdz0e+06EHNGs3oM6ZX1s2zHxRg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@babel/regjsgen": "^0.8.0",
- "regenerate": "^1.4.2",
- "regenerate-unicode-properties": "^10.1.0",
- "regjsparser": "^0.9.1",
- "unicode-match-property-ecmascript": "^2.0.0",
- "unicode-match-property-value-ecmascript": "^2.1.0"
+ "resolve-pkg-maps": "^1.0.0"
},
- "engines": {
- "node": ">=4"
+ "funding": {
+ "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1"
}
},
- "node_modules/regjsparser": {
- "version": "0.9.1",
- "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz",
- "integrity": "sha512-dQUtn90WanSNl+7mQKcXAgZxvUe7Z0SqXlgzv0za4LwiUhyzBC58yQO3liFoUgu8GiJVInAhJjkj1N0EtQ5nkQ==",
- "dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "jsesc": "~0.5.0"
- },
- "bin": {
- "regjsparser": "bin/parser"
- }
+ "node_modules/geval": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/geval/-/geval-2.1.1.tgz",
+ "integrity": "sha512-Ohvqjdkjo5FKYazd8uEgqTugx6yeNA3v66NHy2s9DwNWYVSAQYvY2GwgHCEwVLzlh4WdV4kpP/eyk5ypXNFabQ=="
},
- "node_modules/regjsparser/node_modules/jsesc": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
- "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==",
+ "node_modules/git-hooks-list": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/git-hooks-list/-/git-hooks-list-3.1.0.tgz",
+ "integrity": "sha512-LF8VeHeR7v+wAbXqfgRlTSX/1BJR9Q1vEMR8JAz1cEg6GX07+zyj3sAdDvYjj/xnlIfVuGgj4qBei1K3hKH+PA==",
"dev": true,
- "bin": {
- "jsesc": "bin/jsesc"
+ "license": "MIT",
+ "funding": {
+ "url": "https://github.com/fisker/git-hooks-list?sponsor=1"
}
},
- "node_modules/remove-bom-buffer": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/remove-bom-buffer/-/remove-bom-buffer-3.0.0.tgz",
- "integrity": "sha512-8v2rWhaakv18qcvNeli2mZ/TMTL2nEyAKRvzo1WtnZBl15SHyEhrCu2/xKlJyUFKHiHgfXIyuY6g2dObJJycXQ==",
+ "node_modules/github-slugger": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/github-slugger/-/github-slugger-2.0.0.tgz",
+ "integrity": "sha512-IaOQ9puYtjrkq7Y0Ygl9KDZnrf/aiUJYUpVf89y8kyaxbRG7Y1SrX/jaumrv81vc61+kiMempujsM3Yw7w5qcw==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "is-buffer": "^1.1.5",
- "is-utf8": "^0.2.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
+ "license": "ISC"
},
- "node_modules/remove-bom-stream": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/remove-bom-stream/-/remove-bom-stream-1.2.0.tgz",
- "integrity": "sha512-wigO8/O08XHb8YPzpDDT+QmRANfW6vLqxfaXm1YXhnFf3AkSLyjfG3GEFg4McZkmgL7KvCj5u2KczkvSP6NfHA==",
+ "node_modules/glob-parent": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-6.0.2.tgz",
+ "integrity": "sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A==",
"dev": true,
- "license": "MIT",
+ "license": "ISC",
"dependencies": {
- "remove-bom-buffer": "^3.0.0",
- "safe-buffer": "^5.1.0",
- "through2": "^2.0.3"
+ "is-glob": "^4.0.3"
},
"engines": {
- "node": ">= 0.10"
+ "node": ">=10.13.0"
}
},
- "node_modules/remove-trailing-separator": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz",
- "integrity": "sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw==",
+ "node_modules/glob-to-regexp": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz",
+ "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==",
"dev": true,
- "license": "ISC"
+ "license": "BSD-2-Clause"
},
- "node_modules/repeat-element": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/repeat-element/-/repeat-element-1.1.4.tgz",
- "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==",
- "dev": true,
+ "node_modules/global": {
+ "version": "4.4.0",
+ "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz",
+ "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==",
"license": "MIT",
- "engines": {
- "node": ">=0.10.0"
+ "dependencies": {
+ "min-document": "^2.19.0",
+ "process": "^0.11.10"
}
},
- "node_modules/repeat-string": {
- "version": "1.6.1",
- "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
- "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==",
+ "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,
"license": "MIT",
"engines": {
- "node": ">=0.10"
+ "node": ">=4"
}
},
- "node_modules/repeating": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz",
- "integrity": "sha512-ZqtSMuVybkISo2OWvqvm7iHSWngvdaW3IpsT9/uP8v4gMi591LY6h35wdOfvQdWCKFWZWm2Y1Opp4kV7vQKT6A==",
- "dev": true,
+ "node_modules/gopd": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz",
+ "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==",
"license": "MIT",
"dependencies": {
- "is-finite": "^1.0.0"
+ "get-intrinsic": "^1.1.3"
},
- "engines": {
- "node": ">=0.10.0"
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/replace-ext": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-2.0.0.tgz",
- "integrity": "sha512-UszKE5KVK6JvyD92nzMn9cDapSk6w/CaFZ96CnmDMUqH9oowfxF/ZjRITD25H4DnOQClLA4/j7jLGXXLVKxAug==",
+ "node_modules/graceful-fs": {
+ "version": "4.2.11",
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz",
+ "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/graphemer": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz",
+ "integrity": "sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/has-flag": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
+ "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">= 10"
+ "node": ">=4"
}
},
- "node_modules/replace-homedir": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/replace-homedir/-/replace-homedir-1.0.0.tgz",
- "integrity": "sha512-CHPV/GAglbIB1tnQgaiysb8H2yCy8WQ7lcEwQ/eT+kLj0QHV8LnJW0zpqpE7RSkrMSRoa+EBoag86clf7WAgSg==",
- "dev": true,
+ "node_modules/has-property-descriptors": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz",
+ "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==",
"license": "MIT",
"dependencies": {
- "homedir-polyfill": "^1.0.1",
- "is-absolute": "^1.0.0",
- "remove-trailing-separator": "^1.1.0"
+ "es-define-property": "^1.0.0"
},
- "engines": {
- "node": ">= 0.10"
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/require-directory": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
- "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==",
- "dev": true,
+ "node_modules/has-proto": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.3.tgz",
+ "integrity": "sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==",
"license": "MIT",
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/require-main-filename": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
- "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==",
- "dev": true,
- "license": "ISC"
+ "node_modules/has-symbols": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz",
+ "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==",
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "node_modules/resolve": {
- "version": "1.22.8",
- "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz",
- "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==",
+ "node_modules/has-tostringtag": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.2.tgz",
+ "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "is-core-module": "^2.13.0",
- "path-parse": "^1.0.7",
- "supports-preserve-symlinks-flag": "^1.0.0"
+ "has-symbols": "^1.0.3"
},
- "bin": {
- "resolve": "bin/resolve"
+ "engines": {
+ "node": ">= 0.4"
},
"funding": {
"url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/resolve-alpn": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/resolve-alpn/-/resolve-alpn-1.2.1.tgz",
- "integrity": "sha512-0a1F4l73/ZFZOakJnQ3FvkJ2+gSTQWz/r2KE5OdDY0TxPm5h4GkqkWWfM47T7HsbnOtcJVEF4epCVy6u7Q3K+g==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/resolve-dir": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz",
- "integrity": "sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg==",
+ "node_modules/hash-base": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.0.4.tgz",
+ "integrity": "sha512-EeeoJKjTyt868liAlVmcv2ZsUfGHlE3Q+BICOXcZiwN3osr5Q/zFGYmTJpoIzuaSTAwndFy+GqhEwlU4L3j4Ow==",
"dev": true,
"license": "MIT",
"dependencies": {
- "expand-tilde": "^2.0.0",
- "global-modules": "^1.0.0"
+ "inherits": "^2.0.1",
+ "safe-buffer": "^5.0.1"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">=4"
}
},
- "node_modules/resolve-from": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
- "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
+ "node_modules/hash.js": {
+ "version": "1.1.7",
+ "resolved": "https://registry.npmjs.org/hash.js/-/hash.js-1.1.7.tgz",
+ "integrity": "sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": ">=4"
+ "dependencies": {
+ "inherits": "^2.0.3",
+ "minimalistic-assert": "^1.0.1"
}
},
- "node_modules/resolve-options": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/resolve-options/-/resolve-options-1.1.0.tgz",
- "integrity": "sha512-NYDgziiroVeDC29xq7bp/CacZERYsA9bXYd1ZmcJlF3BcrZv5pTb4NG7SjdyKDnXZ84aC4vo2u6sNKIA1LCu/A==",
- "dev": true,
+ "node_modules/hasown": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz",
+ "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==",
"license": "MIT",
"dependencies": {
- "value-or-function": "^3.0.0"
+ "function-bind": "^1.1.2"
},
"engines": {
- "node": ">= 0.10"
+ "node": ">= 0.4"
}
},
- "node_modules/resolve-url": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz",
- "integrity": "sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==",
- "deprecated": "https://github.com/lydell/resolve-url#deprecated",
+ "node_modules/hast-util-heading-rank": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/hast-util-heading-rank/-/hast-util-heading-rank-3.0.0.tgz",
+ "integrity": "sha512-EJKb8oMUXVHcWZTDepnr+WNbfnXKFNf9duMesmr4S8SXTJBJ9M4Yok08pu9vxdJwdlGRhVumk9mEhkEvKGifwA==",
"dev": true,
- "license": "MIT"
+ "license": "MIT",
+ "dependencies": {
+ "@types/hast": "^3.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/unified"
+ }
},
- "node_modules/responselike": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.1.tgz",
- "integrity": "sha512-4gl03wn3hj1HP3yzgdI7d3lCkF95F21Pz4BPGvKHinyQzALR5CapwC8yIi0Rh58DEMQ/SguC03wFj2k0M/mHhw==",
+ "node_modules/hast-util-is-element": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/hast-util-is-element/-/hast-util-is-element-3.0.0.tgz",
+ "integrity": "sha512-Val9mnv2IWpLbNPqc/pUem+a7Ipj2aHacCwgNfTiK0vJKl0LF+4Ba4+v1oPHFpf3bLYmreq0/l3Gud9S5OH42g==",
"dev": true,
"license": "MIT",
"dependencies": {
- "lowercase-keys": "^2.0.0"
+ "@types/hast": "^3.0.0"
},
"funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "type": "opencollective",
+ "url": "https://opencollective.com/unified"
}
},
- "node_modules/ret": {
- "version": "0.1.15",
- "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz",
- "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==",
+ "node_modules/hast-util-to-string": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/hast-util-to-string/-/hast-util-to-string-3.0.1.tgz",
+ "integrity": "sha512-XelQVTDWvqcl3axRfI0xSeoVKzyIFPwsAGSLIsKdJKQMXDYJS4WYrBNF/8J7RdhIcFI2BOHgAifggsvsxp/3+A==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": ">=0.12"
+ "dependencies": {
+ "@types/hast": "^3.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/unified"
}
},
- "node_modules/reusify": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
- "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
- "dev": true,
+ "node_modules/hexoid": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/hexoid/-/hexoid-1.0.0.tgz",
+ "integrity": "sha512-QFLV0taWQOZtvIRIAdBChesmogZrtuXvVWsFHZTk2SU+anspqZ2vMnoLg7IE1+Uk16N19APic1BuF8bC8c2m5g==",
"license": "MIT",
"engines": {
- "iojs": ">=1.0.0",
- "node": ">=0.10.0"
+ "node": ">=8"
}
},
- "node_modules/rimraf": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
- "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
- "deprecated": "Rimraf versions prior to v4 are no longer supported",
+ "node_modules/hidden": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/hidden/-/hidden-1.1.1.tgz",
+ "integrity": "sha512-DwMtR449+bQdcZq6+w1VYElponUyrT4jiwWjcg3DKzoPTgft+IMQZ95qmQIAnpoSGFT6iXn7TohlBR+OWBShSQ=="
+ },
+ "node_modules/hmac-drbg": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
+ "integrity": "sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg==",
"dev": true,
- "license": "ISC",
+ "license": "MIT",
"dependencies": {
- "glob": "^7.1.3"
- },
- "bin": {
- "rimraf": "bin.js"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
+ "hash.js": "^1.0.3",
+ "minimalistic-assert": "^1.0.0",
+ "minimalistic-crypto-utils": "^1.0.1"
}
},
- "node_modules/rimraf/node_modules/glob": {
- "version": "7.2.3",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
- "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
- "deprecated": "Glob versions prior to v9 are no longer supported",
- "dev": true,
- "license": "ISC",
+ "node_modules/html-element": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/html-element/-/html-element-2.3.1.tgz",
+ "integrity": "sha512-xnFt2ZkbFcjc+JoAtg3Hl89VeEZDjododu4VCPkRvFmBTHHA9U1Nt6hLUWfW2O+6Sl/rT1hHK/PivleX3PdBJQ==",
+ "license": "MIT",
"dependencies": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.1.1",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
+ "class-list": "~0.1.1"
},
"engines": {
- "node": "*"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
+ "node": ">=4.2"
}
},
- "node_modules/ripemd160": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz",
- "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==",
+ "node_modules/html-minifier-terser": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/html-minifier-terser/-/html-minifier-terser-7.2.0.tgz",
+ "integrity": "sha512-tXgn3QfqPIpGl9o+K5tpcj3/MN4SfLtsx2GWwBC3SSd0tXQGyF3gsSqad8loJgKZGM3ZxbYDd5yhiBIdWpmvLA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "hash-base": "^3.0.0",
- "inherits": "^2.0.1"
+ "camel-case": "^4.1.2",
+ "clean-css": "~5.3.2",
+ "commander": "^10.0.0",
+ "entities": "^4.4.0",
+ "param-case": "^3.0.4",
+ "relateurl": "^0.2.7",
+ "terser": "^5.15.1"
+ },
+ "bin": {
+ "html-minifier-terser": "cli.js"
+ },
+ "engines": {
+ "node": "^14.13.1 || >=16.0.0"
}
},
- "node_modules/roarr": {
- "version": "2.15.4",
- "resolved": "https://registry.npmjs.org/roarr/-/roarr-2.15.4.tgz",
- "integrity": "sha512-CHhPh+UNHD2GTXNYhPWLnU8ONHdI+5DI+4EYIAOaiD63rHeYlZvyh8P+in5999TTSFgUYuKUAjzRI4mdh/p+2A==",
+ "node_modules/html-minifier-terser/node_modules/commander": {
+ "version": "10.0.1",
+ "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz",
+ "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==",
"dev": true,
- "license": "BSD-3-Clause",
- "optional": true,
- "dependencies": {
- "boolean": "^3.0.1",
- "detect-node": "^2.0.4",
- "globalthis": "^1.0.1",
- "json-stringify-safe": "^5.0.1",
- "semver-compare": "^1.0.0",
- "sprintf-js": "^1.1.2"
- },
+ "license": "MIT",
"engines": {
- "node": ">=8.0"
+ "node": ">=14"
}
},
- "node_modules/router": {
- "version": "1.3.8",
- "resolved": "https://registry.npmjs.org/router/-/router-1.3.8.tgz",
- "integrity": "sha512-461UFH44NtSfIlS83PUg2N7OZo86BC/kB3dY77gJdsODsBhhw7+2uE0tzTINxrY9CahCUVk1VhpWCA5i1yoIEg==",
+ "node_modules/http-errors": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz",
+ "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "array-flatten": "3.0.0",
- "debug": "2.6.9",
- "methods": "~1.1.2",
- "parseurl": "~1.3.3",
- "path-to-regexp": "0.1.7",
+ "depd": "2.0.0",
+ "inherits": "2.0.4",
"setprototypeof": "1.2.0",
- "utils-merge": "1.0.1"
+ "statuses": "2.0.1",
+ "toidentifier": "1.0.1"
},
"engines": {
"node": ">= 0.8"
}
},
- "node_modules/router/node_modules/debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "node_modules/http-errors/node_modules/statuses": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz",
+ "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "ms": "2.0.0"
+ "engines": {
+ "node": ">= 0.8"
}
},
- "node_modules/router/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "node_modules/https-browserify": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz",
+ "integrity": "sha512-J+FkSdyD+0mA0N+81tMotaRMfSL9SGi+xpD3T6YApKsc3bGSXJlfXri3VyFOeYkfLRQisDk1W+jIFFKBeUBbBg==",
"dev": true,
"license": "MIT"
},
- "node_modules/run-parallel": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
- "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
+ "node_modules/humanize-duration": {
+ "version": "3.32.1",
+ "resolved": "https://registry.npmjs.org/humanize-duration/-/humanize-duration-3.32.1.tgz",
+ "integrity": "sha512-inh5wue5XdfObhu/IGEMiA1nUXigSGcaKNemcbLRKa7jXYGDZXr3LoT9pTIzq2hPEbld7w/qv9h+ikWGz8fL1g==",
+ "license": "Unlicense"
+ },
+ "node_modules/hyperscript": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/hyperscript/-/hyperscript-2.0.2.tgz",
+ "integrity": "sha512-uggBAYfHFC5WyZQXlJ61BNZbPmJbschcvfYNhYdZWCp+0J8KYb5Du8nQuk8Ru+ThoCNb01B0tPtnTRqnrFBkVg==",
+ "license": "MIT",
+ "dependencies": {
+ "browser-split": "0.0.0",
+ "class-list": "~0.1.0",
+ "html-element": "^2.0.0"
+ }
+ },
+ "node_modules/iconv-lite": {
+ "version": "0.4.24",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
+ "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "safer-buffer": ">= 2.1.2 < 3"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/ieee754": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
+ "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==",
"dev": true,
"funding": [
{
@@ -15565,89 +6006,110 @@
"url": "https://feross.org/support"
}
],
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/ignore": {
+ "version": "5.3.2",
+ "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.2.tgz",
+ "integrity": "sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==",
+ "dev": true,
"license": "MIT",
- "dependencies": {
- "queue-microtask": "^1.2.2"
+ "engines": {
+ "node": ">= 4"
}
},
- "node_modules/safe-array-concat": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/safe-array-concat/-/safe-array-concat-1.1.2.tgz",
- "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==",
+ "node_modules/import-fresh": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz",
+ "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "call-bind": "^1.0.7",
- "get-intrinsic": "^1.2.4",
- "has-symbols": "^1.0.3",
- "isarray": "^2.0.5"
+ "parent-module": "^1.0.0",
+ "resolve-from": "^4.0.0"
},
"engines": {
- "node": ">=0.4"
+ "node": ">=6"
},
"funding": {
- "url": "https://github.com/sponsors/ljharb"
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/safe-array-concat/node_modules/isarray": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz",
- "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==",
+ "node_modules/imurmurhash": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
+ "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==",
"dev": true,
- "license": "MIT"
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.8.19"
+ }
},
- "node_modules/safe-buffer": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
- "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ],
- "license": "MIT"
+ "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==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=8"
+ }
},
- "node_modules/safe-json-parse": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/safe-json-parse/-/safe-json-parse-1.0.1.tgz",
- "integrity": "sha512-o0JmTu17WGUaUOHa1l0FPGXKBfijbxK6qoHzlkihsDXxzBHvJcA7zgviKR92Xs841rX9pK16unfphLq0/KqX7A==",
- "dev": true
+ "node_modules/indexof": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/indexof/-/indexof-0.0.1.tgz",
+ "integrity": "sha512-i0G7hLJ1z0DE8dsqJa2rycj9dBmNKgXBvotXtZYXakU9oivfB9Uj2ZBC27qqef2U58/ZLwalxa1X/RDCdkHtVg=="
},
- "node_modules/safe-json-stringify": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/safe-json-stringify/-/safe-json-stringify-1.2.0.tgz",
- "integrity": "sha512-gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg==",
- "license": "MIT"
+ "node_modules/inflight": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
+ "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==",
+ "deprecated": "This module is not supported, and leaks memory. Do not use it. Check out lru-cache if you want a good and tested way to coalesce async requests by a key value, which is much more comprehensive and powerful.",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "once": "^1.3.0",
+ "wrappy": "1"
+ }
},
- "node_modules/safe-regex": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
- "integrity": "sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==",
+ "node_modules/inherits": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
+ "license": "ISC"
+ },
+ "node_modules/ipaddr.js": {
+ "version": "1.9.1",
+ "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz",
+ "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "ret": "~0.1.10"
+ "engines": {
+ "node": ">= 0.10"
}
},
- "node_modules/safe-regex-test": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.3.tgz",
- "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==",
+ "node_modules/is-absolute-url": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-4.0.1.tgz",
+ "integrity": "sha512-/51/TKE88Lmm7Gc4/8btclNXWS+g50wXhYJq8HWIBAGUBnoAdRu1aXeh364t/O7wXDAcTJDP8PNuNKWUDWie+A==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/is-arguments": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.1.tgz",
+ "integrity": "sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "call-bind": "^1.0.6",
- "es-errors": "^1.3.0",
- "is-regex": "^1.1.4"
+ "call-bind": "^1.0.2",
+ "has-tostringtag": "^1.0.0"
},
"engines": {
"node": ">= 0.4"
@@ -15656,3286 +6118,3311 @@
"url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/safer-buffer": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
- "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
+ "node_modules/is-arrayish": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
+ "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==",
"dev": true,
"license": "MIT"
},
- "node_modules/sax": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz",
- "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==",
- "dev": true,
- "license": "ISC",
- "peer": true
- },
- "node_modules/semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "license": "ISC",
- "bin": {
- "semver": "bin/semver.js"
- }
- },
- "node_modules/semver-compare": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/semver-compare/-/semver-compare-1.0.0.tgz",
- "integrity": "sha512-YM3/ITh2MJ5MtzaM429anh+x2jiLVjqILF4m4oyQB18W7Ggea7BfqdH/wGMK7dDiMghv/6WG7znWMwUDzJiXow==",
+ "node_modules/is-callable": {
+ "version": "1.2.7",
+ "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.7.tgz",
+ "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==",
"dev": true,
"license": "MIT",
- "optional": true
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "node_modules/semver-greatest-satisfied-range": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/semver-greatest-satisfied-range/-/semver-greatest-satisfied-range-1.1.0.tgz",
- "integrity": "sha512-Ny/iyOzSSa8M5ML46IAx3iXc6tfOsYU2R4AXi2UpHk60Zrgyq6eqPj/xiOfS0rRl/iiQ/rdJkVjw/5cdUyCntQ==",
+ "node_modules/is-core-module": {
+ "version": "2.15.1",
+ "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz",
+ "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "sver-compat": "^1.5.0"
+ "hasown": "^2.0.2"
},
"engines": {
- "node": ">= 0.10"
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/send": {
- "version": "0.16.2",
- "resolved": "https://registry.npmjs.org/send/-/send-0.16.2.tgz",
- "integrity": "sha512-E64YFPUssFHEFBvpbbjr44NCLtI1AohxQ8ZSiJjQLskAdKuriYEP6VyGEsRDH8ScozGpkaX1BGvhanqCwkcEZw==",
+ "node_modules/is-docker": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz",
+ "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "debug": "2.6.9",
- "depd": "~1.1.2",
- "destroy": "~1.0.4",
- "encodeurl": "~1.0.2",
- "escape-html": "~1.0.3",
- "etag": "~1.8.1",
- "fresh": "0.5.2",
- "http-errors": "~1.6.2",
- "mime": "1.4.1",
- "ms": "2.0.0",
- "on-finished": "~2.3.0",
- "range-parser": "~1.2.0",
- "statuses": "~1.4.0"
+ "bin": {
+ "is-docker": "cli.js"
},
"engines": {
- "node": ">= 0.8.0"
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/send/node_modules/debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "node_modules/is-extglob": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
+ "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "ms": "2.0.0"
+ "engines": {
+ "node": ">=0.10.0"
}
},
- "node_modules/send/node_modules/depd": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
- "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==",
+ "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,
"license": "MIT",
"engines": {
- "node": ">= 0.6"
+ "node": ">=8"
}
},
- "node_modules/send/node_modules/destroy": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz",
- "integrity": "sha512-3NdhDuEXnfun/z7x9GOElY49LoqVHoGScmOKwmxhsS8N5Y+Z8KyPPDnaSzqWgYt/ji4mqwfTS34Htrk0zPIXVg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/send/node_modules/http-errors": {
- "version": "1.6.3",
- "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
- "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==",
+ "node_modules/is-generator-function": {
+ "version": "1.0.10",
+ "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz",
+ "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==",
"dev": true,
"license": "MIT",
"dependencies": {
- "depd": "~1.1.2",
- "inherits": "2.0.3",
- "setprototypeof": "1.1.0",
- "statuses": ">= 1.4.0 < 2"
+ "has-tostringtag": "^1.0.0"
},
"engines": {
- "node": ">= 0.6"
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/send/node_modules/inherits": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
- "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/send/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/send/node_modules/on-finished": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz",
- "integrity": "sha512-ikqdkGAAyf/X/gPhXGvfgAytDZtDbr+bkNUJ0N9h5MI/dmdgCs3l6hoHrcUv41sRKew3jIwrp4qQDXiK99Utww==",
+ "node_modules/is-glob": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz",
+ "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "ee-first": "1.1.1"
+ "is-extglob": "^2.1.1"
},
"engines": {
- "node": ">= 0.8"
+ "node": ">=0.10.0"
}
},
- "node_modules/send/node_modules/setprototypeof": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz",
- "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==",
+ "node_modules/is-nan": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/is-nan/-/is-nan-1.3.2.tgz",
+ "integrity": "sha512-E+zBKpQ2t6MEo1VsonYmluk9NxGrbzpeeLC2xIViuO2EjU2xsXsBPwTr3Ykv9l08UYEVEdWeRZNouaZqF6RN0w==",
"dev": true,
- "license": "ISC"
+ "license": "MIT",
+ "dependencies": {
+ "call-bind": "^1.0.0",
+ "define-properties": "^1.1.3"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
},
- "node_modules/send/node_modules/statuses": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.4.0.tgz",
- "integrity": "sha512-zhSCtt8v2NDrRlPQpCNtw/heZLtfUDqxBM1udqikb/Hbk52LK4nQSwr10u77iopCW5LsyHpuXS0GnEc48mLeew==",
+ "node_modules/is-plain-obj": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz",
+ "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">= 0.6"
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/serialize-error": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/serialize-error/-/serialize-error-7.0.1.tgz",
- "integrity": "sha512-8I8TjW5KMOKsZQTvoxjuSIa7foAwPWGOts+6o7sgjz41/qMD9VQHEDxi6PBvK2l0MXUmqZyNpUK+T2tQaaElvw==",
+ "node_modules/is-power-of-two": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-power-of-two/-/is-power-of-two-1.0.0.tgz",
+ "integrity": "sha512-Ug8fOlUr/SbF0FyyZFrqONN0WmyjsypPcOQT31zyj/fTupw0Bt37+M+vuScD9iV/Zkebd0B8iDBJ+r5rXyXX2A==",
+ "license": "MIT"
+ },
+ "node_modules/is-typed-array": {
+ "version": "1.1.13",
+ "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.13.tgz",
+ "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==",
"dev": true,
"license": "MIT",
- "optional": true,
"dependencies": {
- "type-fest": "^0.13.1"
+ "which-typed-array": "^1.1.14"
},
"engines": {
- "node": ">=10"
+ "node": ">= 0.4"
},
"funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/serve-handler": {
- "version": "6.1.5",
- "resolved": "https://registry.npmjs.org/serve-handler/-/serve-handler-6.1.5.tgz",
- "integrity": "sha512-ijPFle6Hwe8zfmBxJdE+5fta53fdIY0lHISJvuikXB3VYFafRjMRpOffSPvCYsbKyBA7pvy9oYr/BT1O3EArlg==",
+ "node_modules/is-wsl": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz",
+ "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==",
"dev": true,
"license": "MIT",
"dependencies": {
- "bytes": "3.0.0",
- "content-disposition": "0.5.2",
- "fast-url-parser": "1.1.3",
- "mime-types": "2.1.18",
- "minimatch": "3.1.2",
- "path-is-inside": "1.0.2",
- "path-to-regexp": "2.2.1",
- "range-parser": "1.2.0"
+ "is-docker": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "node_modules/serve-handler/node_modules/bytes": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz",
- "integrity": "sha512-pMhOfFDPiv9t5jjIXkHosWmkSyQbvsgEVNkz0ERHbuLh2T/7j4Mqqpz523Fe8MVY89KC6Sh/QfS2sM+SjgFDcw==",
+ "node_modules/isarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
+ "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==",
+ "license": "MIT"
+ },
+ "node_modules/isexe": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
+ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/jest-worker": {
+ "version": "27.5.1",
+ "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.5.1.tgz",
+ "integrity": "sha512-7vuh85V5cdDofPyxn58nrPjBktZo0u9x1g8WtjQol+jZDaE+fhN+cIvTj11GndBnMnyfrUOG1sZQxCdjKh+DKg==",
"dev": true,
"license": "MIT",
+ "dependencies": {
+ "@types/node": "*",
+ "merge-stream": "^2.0.0",
+ "supports-color": "^8.0.0"
+ },
"engines": {
- "node": ">= 0.8"
+ "node": ">= 10.13.0"
}
},
- "node_modules/serve-handler/node_modules/mime-db": {
- "version": "1.33.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.33.0.tgz",
- "integrity": "sha512-BHJ/EKruNIqJf/QahvxwQZXKygOQ256myeN/Ew+THcAa5q+PjyTTMMeNQC4DZw5AwfvelsUrA6B67NKMqXDbzQ==",
+ "node_modules/jest-worker/node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">= 0.6"
+ "node": ">=8"
}
},
- "node_modules/serve-handler/node_modules/mime-types": {
- "version": "2.1.18",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.18.tgz",
- "integrity": "sha512-lc/aahn+t4/SWV/qcmumYjymLsWfN3ELhpmVuUFjgsORruuZPVSwAQryq+HHGvO/SI2KVX26bx+En+zhM8g8hQ==",
+ "node_modules/jest-worker/node_modules/supports-color": {
+ "version": "8.1.1",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz",
+ "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==",
"dev": true,
"license": "MIT",
"dependencies": {
- "mime-db": "~1.33.0"
+ "has-flag": "^4.0.0"
},
"engines": {
- "node": ">= 0.6"
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/supports-color?sponsor=1"
}
},
- "node_modules/serve-handler/node_modules/path-to-regexp": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-2.2.1.tgz",
- "integrity": "sha512-gu9bD6Ta5bwGrrU8muHzVOBFFREpp2iRkVfhBJahwJ6p6Xw20SjT0MxLnwkjOibQmGSYhiUnf2FLe7k+jcFmGQ==",
+ "node_modules/jju": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/jju/-/jju-1.4.0.tgz",
+ "integrity": "sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==",
"dev": true,
"license": "MIT"
},
- "node_modules/serve-handler/node_modules/range-parser": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.0.tgz",
- "integrity": "sha512-kA5WQoNVo4t9lNx2kQNFCxKeBl5IbbSNBl1M/tLkw9WCn+hxNBAW5Qh8gdhs63CJnhjJ2zQWFoqPJP2sK1AV5A==",
+ "node_modules/js-tokens": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz",
+ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==",
"dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
- }
+ "license": "MIT"
},
- "node_modules/serve-index": {
- "version": "1.9.1",
- "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz",
- "integrity": "sha512-pXHfKNP4qujrtteMrSBb0rc8HJ9Ms/GrXwcUtUtD5s4ewDJI8bT3Cz2zTVRMKtri49pLx2e0Ya8ziP5Ya2pZZw==",
+ "node_modules/js-yaml": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz",
+ "integrity": "sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "accepts": "~1.3.4",
- "batch": "0.6.1",
- "debug": "2.6.9",
- "escape-html": "~1.0.3",
- "http-errors": "~1.6.2",
- "mime-types": "~2.1.17",
- "parseurl": "~1.3.2"
+ "argparse": "^2.0.1"
},
- "engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/serve-index/node_modules/debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ms": "2.0.0"
+ "bin": {
+ "js-yaml": "bin/js-yaml.js"
}
},
- "node_modules/serve-index/node_modules/depd": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
- "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==",
+ "node_modules/jsdoc-type-pratt-parser": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/jsdoc-type-pratt-parser/-/jsdoc-type-pratt-parser-4.1.0.tgz",
+ "integrity": "sha512-Hicd6JK5Njt2QB6XYFS7ok9e37O8AYk3jTcppG4YVQnYjOemymvTcmc7OWsmq/Qqj5TdRFO5/x/tIPmBeRtGHg==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">= 0.6"
+ "node": ">=12.0.0"
}
},
- "node_modules/serve-index/node_modules/http-errors": {
- "version": "1.6.3",
- "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
- "integrity": "sha512-lks+lVC8dgGyh97jxvxeYTWQFvh4uw4yC12gVl63Cg30sjPX4wuGcdkICVXDAESr6OJGjqGA8Iz5mkeN6zlD7A==",
+ "node_modules/jsesc": {
+ "version": "2.5.2",
+ "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
+ "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "depd": "~1.1.2",
- "inherits": "2.0.3",
- "setprototypeof": "1.1.0",
- "statuses": ">= 1.4.0 < 2"
+ "bin": {
+ "jsesc": "bin/jsesc"
},
"engines": {
- "node": ">= 0.6"
+ "node": ">=4"
}
},
- "node_modules/serve-index/node_modules/inherits": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
- "integrity": "sha512-x00IRNXNy63jwGkJmzPigoySHbaqpNuzKbBOmzK+g2OdZpQ9w+sxCN+VSB3ja7IAge2OP2qpfxTjeNcyjmW1uw==",
+ "node_modules/json-buffer": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz",
+ "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==",
"dev": true,
- "license": "ISC"
+ "license": "MIT"
},
- "node_modules/serve-index/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "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,
"license": "MIT"
},
- "node_modules/serve-index/node_modules/setprototypeof": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz",
- "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==",
+ "node_modules/json-schema-traverse": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz",
+ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==",
"dev": true,
- "license": "ISC"
+ "license": "MIT"
},
- "node_modules/serve-static": {
- "version": "1.16.2",
- "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz",
- "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==",
+ "node_modules/json-stable-stringify-without-jsonify": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz",
+ "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "encodeurl": "~2.0.0",
- "escape-html": "~1.0.3",
- "parseurl": "~1.3.3",
- "send": "0.19.0"
- },
- "engines": {
- "node": ">= 0.8.0"
- }
+ "license": "MIT"
},
- "node_modules/serve-static/node_modules/debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "node_modules/json5": {
+ "version": "2.2.3",
+ "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz",
+ "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "ms": "2.0.0"
+ "bin": {
+ "json5": "lib/cli.js"
+ },
+ "engines": {
+ "node": ">=6"
}
},
- "node_modules/serve-static/node_modules/debug/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "node_modules/jsonparse": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz",
+ "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==",
"dev": true,
+ "engines": [
+ "node >= 0.2.0"
+ ],
"license": "MIT"
},
- "node_modules/serve-static/node_modules/encodeurl": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz",
- "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/serve-static/node_modules/mime": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
- "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==",
+ "node_modules/jsonstream-next": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/jsonstream-next/-/jsonstream-next-3.0.0.tgz",
+ "integrity": "sha512-aAi6oPhdt7BKyQn1SrIIGZBt0ukKuOUE1qV6kJ3GgioSOYzsRc8z9Hfr1BVmacA/jLe9nARfmgMGgn68BqIAgg==",
"dev": true,
- "license": "MIT",
+ "license": "(MIT OR Apache-2.0)",
+ "dependencies": {
+ "jsonparse": "^1.2.0",
+ "through2": "^4.0.2"
+ },
"bin": {
- "mime": "cli.js"
+ "jsonstream-next": "bin.js"
},
"engines": {
- "node": ">=4"
+ "node": ">=10"
}
},
- "node_modules/serve-static/node_modules/send": {
- "version": "0.19.0",
- "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz",
- "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==",
+ "node_modules/jsonstream-next/node_modules/readable-stream": {
+ "version": "3.6.2",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
+ "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "debug": "2.6.9",
- "depd": "2.0.0",
- "destroy": "1.2.0",
- "encodeurl": "~1.0.2",
- "escape-html": "~1.0.3",
- "etag": "~1.8.1",
- "fresh": "0.5.2",
- "http-errors": "2.0.0",
- "mime": "1.6.0",
- "ms": "2.1.3",
- "on-finished": "2.4.1",
- "range-parser": "~1.2.1",
- "statuses": "2.0.1"
+ "inherits": "^2.0.3",
+ "string_decoder": "^1.1.1",
+ "util-deprecate": "^1.0.1"
},
"engines": {
- "node": ">= 0.8.0"
- }
- },
- "node_modules/serve-static/node_modules/send/node_modules/encodeurl": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
- "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.8"
- }
- },
- "node_modules/serve-static/node_modules/statuses": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz",
- "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.8"
+ "node": ">= 6"
}
},
- "node_modules/server-destroy": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/server-destroy/-/server-destroy-1.0.1.tgz",
- "integrity": "sha512-rb+9B5YBIEzYcD6x2VKidaa+cqYBJQKnU4oe4E3ANwRRN56yk/ua1YCJT1n21NTS8w6CcOclAKNP3PhdCXKYtQ==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/set-blocking": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
- "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==",
+ "node_modules/jsonstream-next/node_modules/through2": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz",
+ "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==",
"dev": true,
- "license": "ISC"
- },
- "node_modules/set-function-length": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz",
- "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==",
"license": "MIT",
"dependencies": {
- "define-data-property": "^1.1.4",
- "es-errors": "^1.3.0",
- "function-bind": "^1.1.2",
- "get-intrinsic": "^1.2.4",
- "gopd": "^1.0.1",
- "has-property-descriptors": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
+ "readable-stream": "3"
}
},
- "node_modules/set-function-name": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/set-function-name/-/set-function-name-2.0.2.tgz",
- "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==",
+ "node_modules/keymirror": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/keymirror/-/keymirror-0.1.1.tgz",
+ "integrity": "sha512-vIkZAFWoDijgQT/Nvl2AHCMmnegN2ehgTPYuyy2hWQkQSntI0S7ESYqdLkoSe1HyEBFHHkCgSIvVdSEiWwKvCg=="
+ },
+ "node_modules/keyv": {
+ "version": "4.5.4",
+ "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.5.4.tgz",
+ "integrity": "sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "define-data-property": "^1.1.4",
- "es-errors": "^1.3.0",
- "functions-have-names": "^1.2.3",
- "has-property-descriptors": "^1.0.2"
- },
- "engines": {
- "node": ">= 0.4"
+ "json-buffer": "3.0.1"
}
},
- "node_modules/set-value": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/set-value/-/set-value-2.0.1.tgz",
- "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==",
+ "node_modules/levn": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz",
+ "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "extend-shallow": "^2.0.1",
- "is-extendable": "^0.1.1",
- "is-plain-object": "^2.0.3",
- "split-string": "^3.0.1"
+ "prelude-ls": "^1.2.1",
+ "type-check": "~0.4.0"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.8.0"
}
},
- "node_modules/set-value/node_modules/is-plain-object": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
- "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
+ "node_modules/lines-and-columns": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz",
+ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/loader-runner": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.3.0.tgz",
+ "integrity": "sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "isobject": "^3.0.1"
- },
"engines": {
- "node": ">=0.10.0"
+ "node": ">=6.11.5"
}
},
- "node_modules/setprototypeof": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz",
- "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/sh-syntax": {
- "version": "0.4.2",
- "resolved": "https://registry.npmjs.org/sh-syntax/-/sh-syntax-0.4.2.tgz",
- "integrity": "sha512-/l2UZ5fhGZLVZa16XQM9/Vq/hezGGbdHeVEA01uWjOL1+7Ek/gt6FquW0iKKws4a9AYPYvlz6RyVvjh3JxOteg==",
+ "node_modules/locate-path": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz",
+ "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "tslib": "^2.6.2"
+ "p-locate": "^5.0.0"
},
"engines": {
- "node": ">=16.0.0"
+ "node": ">=10"
},
"funding": {
- "url": "https://opencollective.com/unts"
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/sha.js": {
- "version": "2.4.11",
- "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
- "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
+ "node_modules/lodash": {
+ "version": "4.17.21",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
+ "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
"dev": true,
- "license": "(MIT AND BSD-3-Clause)",
- "dependencies": {
- "inherits": "^2.0.1",
- "safe-buffer": "^5.0.1"
- },
- "bin": {
- "sha.js": "bin.js"
- }
+ "license": "MIT"
},
- "node_modules/shasum-object": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/shasum-object/-/shasum-object-1.0.0.tgz",
- "integrity": "sha512-Iqo5rp/3xVi6M4YheapzZhhGPVs0yZwHj7wvwQ1B9z8H6zk+FEnI7y3Teq7qwnekfEhu8WmG2z0z4iWZaxLWVg==",
+ "node_modules/lodash.merge": {
+ "version": "4.6.2",
+ "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
+ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
"dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "fast-safe-stringify": "^2.0.7"
- }
+ "license": "MIT"
},
- "node_modules/shebang-command": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
- "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
+ "node_modules/loose-envify": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz",
+ "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==",
"dev": true,
"license": "MIT",
"dependencies": {
- "shebang-regex": "^3.0.0"
+ "js-tokens": "^3.0.0 || ^4.0.0"
},
- "engines": {
- "node": ">=8"
+ "bin": {
+ "loose-envify": "cli.js"
}
},
- "node_modules/shebang-regex": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
- "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
+ "node_modules/loupe": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/loupe/-/loupe-3.1.2.tgz",
+ "integrity": "sha512-23I4pFZHmAemUnz8WZXbYRSKYj801VDaNv9ETuMh7IrMc7VuVVSo+Z9iLE3ni30+U48iDWfi30d3twAXBYmnCg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/lower-case": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-2.0.2.tgz",
+ "integrity": "sha512-7fm3l3NAF9WfN6W3JOmf5drwpVqX78JtoGJ3A6W0a6ZnldM41w2fV5D490psKFTpMds8TJse/eHLFFsNHHjHgg==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": ">=8"
+ "dependencies": {
+ "tslib": "^2.0.3"
}
},
- "node_modules/shell-quote": {
- "version": "1.8.1",
- "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.8.1.tgz",
- "integrity": "sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==",
+ "node_modules/lz-string": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/lz-string/-/lz-string-1.5.0.tgz",
+ "integrity": "sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ==",
"dev": true,
"license": "MIT",
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
+ "bin": {
+ "lz-string": "bin/bin.js"
}
},
- "node_modules/side-channel": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz",
- "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==",
+ "node_modules/magic-string": {
+ "version": "0.30.11",
+ "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.11.tgz",
+ "integrity": "sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==",
+ "dev": true,
"license": "MIT",
"dependencies": {
- "call-bind": "^1.0.7",
- "es-errors": "^1.3.0",
- "get-intrinsic": "^1.2.4",
- "object-inspect": "^1.13.1"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
+ "@jridgewell/sourcemap-codec": "^1.5.0"
}
},
- "node_modules/signal-exit": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
- "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==",
+ "node_modules/map-or-similar": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/map-or-similar/-/map-or-similar-1.5.0.tgz",
+ "integrity": "sha512-0aF7ZmVon1igznGI4VS30yugpduQW3y3GkcgGJOp7d8x8QrizhigUxjI/m2UojsXXto+jLAH3KSz+xOJTiORjg==",
"dev": true,
- "license": "ISC",
- "engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
+ "license": "MIT"
},
- "node_modules/simple-concat": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz",
- "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==",
+ "node_modules/map-stream": {
+ "version": "0.0.7",
+ "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.0.7.tgz",
+ "integrity": "sha512-C0X0KQmGm3N2ftbTGBhSyuydQ+vV1LC3f3zPvT3RXHXNZrvfPZcoXp/N5DOa8vedX/rTMm2CjTtivFg2STJMRQ==",
"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"
- }
- ],
"license": "MIT"
},
- "node_modules/slash": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz",
- "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==",
+ "node_modules/markdown-to-jsx": {
+ "version": "7.5.0",
+ "resolved": "https://registry.npmjs.org/markdown-to-jsx/-/markdown-to-jsx-7.5.0.tgz",
+ "integrity": "sha512-RrBNcMHiFPcz/iqIj0n3wclzHXjwS7mzjBNWecKKVhNTIxQepIix6Il/wZCn2Cg5Y1ow2Qi84+eJrryFRWBEWw==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=8"
+ "node": ">= 10"
+ },
+ "peerDependencies": {
+ "react": ">= 0.14.0"
}
},
- "node_modules/snapdragon": {
- "version": "0.8.2",
- "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz",
- "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==",
+ "node_modules/md5.js": {
+ "version": "1.3.5",
+ "resolved": "https://registry.npmjs.org/md5.js/-/md5.js-1.3.5.tgz",
+ "integrity": "sha512-xitP+WxNPcTTOgnTJcrhM0xvdPepipPSf3I8EIpGKeFLjt3PlJLIDG3u8EX53ZIubkb+5U2+3rELYpEhHhzdkg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "base": "^0.11.1",
- "debug": "^2.2.0",
- "define-property": "^0.2.5",
- "extend-shallow": "^2.0.1",
- "map-cache": "^0.2.2",
- "source-map": "^0.5.6",
- "source-map-resolve": "^0.5.0",
- "use": "^3.1.0"
- },
- "engines": {
- "node": ">=0.10.0"
+ "hash-base": "^3.0.0",
+ "inherits": "^2.0.1",
+ "safe-buffer": "^5.1.2"
}
},
- "node_modules/snapdragon-node": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/snapdragon-node/-/snapdragon-node-2.1.1.tgz",
- "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==",
+ "node_modules/media-typer": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
+ "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==",
"dev": true,
"license": "MIT",
+ "engines": {
+ "node": ">= 0.6"
+ }
+ },
+ "node_modules/memfs": {
+ "version": "3.5.3",
+ "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.5.3.tgz",
+ "integrity": "sha512-UERzLsxzllchadvbPs5aolHh65ISpKpM+ccLbOJ8/vvpBKmAWf+la7dXFy7Mr0ySHbdHrFv5kGFCUHHe6GFEmw==",
+ "dev": true,
+ "license": "Unlicense",
"dependencies": {
- "define-property": "^1.0.0",
- "isobject": "^3.0.0",
- "snapdragon-util": "^3.0.1"
+ "fs-monkey": "^1.0.4"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 4.0.0"
}
},
- "node_modules/snapdragon-node/node_modules/define-property": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
- "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==",
+ "node_modules/memoizerific": {
+ "version": "1.11.3",
+ "resolved": "https://registry.npmjs.org/memoizerific/-/memoizerific-1.11.3.tgz",
+ "integrity": "sha512-/EuHYwAPdLtXwAwSZkh/Gutery6pD2KYd44oQLhAvQp/50mpyduZh8Q7PYHXTCJ+wuXxt7oij2LXyIJOOYFPog==",
"dev": true,
"license": "MIT",
"dependencies": {
- "is-descriptor": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
+ "map-or-similar": "^1.5.0"
}
},
- "node_modules/snapdragon-node/node_modules/is-descriptor": {
+ "node_modules/merge-descriptors": {
"version": "1.0.3",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz",
- "integrity": "sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw==",
+ "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz",
+ "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "is-accessor-descriptor": "^1.0.1",
- "is-data-descriptor": "^1.0.1"
- },
- "engines": {
- "node": ">= 0.4"
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/snapdragon-util": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz",
- "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==",
+ "node_modules/merge-stream": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz",
+ "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/merge2": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
+ "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "kind-of": "^3.2.0"
- },
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 8"
}
},
- "node_modules/snapdragon-util/node_modules/kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
- "dev": true,
+ "node_modules/methods": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
+ "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w==",
"license": "MIT",
- "dependencies": {
- "is-buffer": "^1.1.5"
- },
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.6"
}
},
- "node_modules/snapdragon/node_modules/debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "node_modules/micromatch": {
+ "version": "4.0.8",
+ "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz",
+ "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "ms": "2.0.0"
+ "braces": "^3.0.3",
+ "picomatch": "^2.3.1"
+ },
+ "engines": {
+ "node": ">=8.6"
}
},
- "node_modules/snapdragon/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/snapdragon/node_modules/source-map-resolve": {
- "version": "0.5.3",
- "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.5.3.tgz",
- "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==",
- "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated",
+ "node_modules/micromatch/node_modules/braces": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "atob": "^2.1.2",
- "decode-uri-component": "^0.2.0",
- "resolve-url": "^0.2.1",
- "source-map-url": "^0.4.0",
- "urix": "^0.1.0"
+ "fill-range": "^7.1.1"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "node_modules/sort-object-keys": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/sort-object-keys/-/sort-object-keys-1.1.3.tgz",
- "integrity": "sha512-855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/sort-package-json": {
- "version": "2.10.1",
- "resolved": "https://registry.npmjs.org/sort-package-json/-/sort-package-json-2.10.1.tgz",
- "integrity": "sha512-d76wfhgUuGypKqY72Unm5LFnMpACbdxXsLPcL27pOsSrmVqH3PztFp1uq+Z22suk15h7vXmTesuh2aEjdCqb5w==",
+ "node_modules/micromatch/node_modules/fill-range": {
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "detect-indent": "^7.0.1",
- "detect-newline": "^4.0.0",
- "get-stdin": "^9.0.0",
- "git-hooks-list": "^3.0.0",
- "globby": "^13.1.2",
- "is-plain-obj": "^4.1.0",
- "semver": "^7.6.0",
- "sort-object-keys": "^1.1.3"
+ "to-regex-range": "^5.0.1"
},
- "bin": {
- "sort-package-json": "cli.js"
+ "engines": {
+ "node": ">=8"
}
},
- "node_modules/sort-package-json/node_modules/detect-newline": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-4.0.1.tgz",
- "integrity": "sha512-qE3Veg1YXzGHQhlA6jzebZN2qVf6NX+A7m7qlhCGG30dJixrAQhYOsJjsnBjJkCSmuOPpCk30145fr8FV0bzog==",
+ "node_modules/micromatch/node_modules/is-number": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
+ "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
"dev": true,
"license": "MIT",
"engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "node": ">=0.12.0"
}
},
- "node_modules/sort-package-json/node_modules/globby": {
- "version": "13.2.2",
- "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz",
- "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==",
+ "node_modules/micromatch/node_modules/to-regex-range": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
+ "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "dir-glob": "^3.0.1",
- "fast-glob": "^3.3.0",
- "ignore": "^5.2.4",
- "merge2": "^1.4.1",
- "slash": "^4.0.0"
+ "is-number": "^7.0.0"
},
"engines": {
- "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "node": ">=8.0"
}
},
- "node_modules/sort-package-json/node_modules/semver": {
- "version": "7.6.3",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
- "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
+ "node_modules/miller-rabin": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/miller-rabin/-/miller-rabin-4.0.1.tgz",
+ "integrity": "sha512-115fLhvZVqWwHPbClyntxEVfVDfl9DLLTuJvq3g2O/Oxi8AiNouAHvDSzHS0viUJc+V5vm3eq91Xwqn9dp4jRA==",
"dev": true,
- "license": "ISC",
- "bin": {
- "semver": "bin/semver.js"
+ "license": "MIT",
+ "dependencies": {
+ "bn.js": "^4.0.0",
+ "brorand": "^1.0.1"
},
- "engines": {
- "node": ">=10"
+ "bin": {
+ "miller-rabin": "bin/miller-rabin"
}
},
- "node_modules/sort-package-json/node_modules/slash": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz",
- "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==",
+ "node_modules/miller-rabin/node_modules/bn.js": {
+ "version": "4.12.0",
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
+ "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
"dev": true,
+ "license": "MIT"
+ },
+ "node_modules/mime-db": {
+ "version": "1.52.0",
+ "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
+ "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==",
"license": "MIT",
"engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "node": ">= 0.6"
}
},
- "node_modules/source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==",
- "dev": true,
- "license": "BSD-3-Clause",
+ "node_modules/mime-types": {
+ "version": "2.1.35",
+ "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
+ "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
+ "license": "MIT",
+ "dependencies": {
+ "mime-db": "1.52.0"
+ },
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.6"
}
},
- "node_modules/source-map-js": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz",
- "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==",
- "dev": true,
- "license": "BSD-3-Clause",
- "engines": {
- "node": ">=0.10.0"
+ "node_modules/min-document": {
+ "version": "2.19.0",
+ "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz",
+ "integrity": "sha512-9Wy1B3m3f66bPPmU5hdA4DR4PB2OfDU/+GS3yAB7IQozE3tqXaVv2zOjgla7MEGSRv95+ILmOuvhLkOK6wJtCQ==",
+ "dependencies": {
+ "dom-walk": "^0.1.0"
}
},
- "node_modules/source-map-resolve": {
- "version": "0.6.0",
- "resolved": "https://registry.npmjs.org/source-map-resolve/-/source-map-resolve-0.6.0.tgz",
- "integrity": "sha512-KXBr9d/fO/bWo97NXsPIAW1bFSBOuCnjbNTBMO7N59hsv5i9yzRDfcYwwt0l04+VqnKC+EwzvJZIP/qkuMgR/w==",
- "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated",
+ "node_modules/min-indent": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz",
+ "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "atob": "^2.1.2",
- "decode-uri-component": "^0.2.0"
+ "engines": {
+ "node": ">=4"
}
},
- "node_modules/source-map-support": {
- "version": "0.4.18",
- "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz",
- "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==",
+ "node_modules/minimalistic-assert": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz",
+ "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "source-map": "^0.5.6"
- }
+ "license": "ISC"
},
- "node_modules/source-map-url": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/source-map-url/-/source-map-url-0.4.1.tgz",
- "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==",
- "deprecated": "See https://github.com/lydell/source-map-url#deprecated",
+ "node_modules/minimalistic-crypto-utils": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz",
+ "integrity": "sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg==",
"dev": true,
"license": "MIT"
},
- "node_modules/sparkles": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.1.tgz",
- "integrity": "sha512-dSO0DDYUahUt/0/pD/Is3VIm5TGJjludZ0HVymmhYF6eNA53PVLhnUk0znSYbH8IYBuJdCE+1luR22jNLMaQdw==",
+ "node_modules/minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
"dev": true,
- "license": "MIT",
+ "license": "ISC",
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
"engines": {
- "node": ">= 0.10"
+ "node": "*"
}
},
- "node_modules/spdx-correct": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz",
- "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==",
+ "node_modules/minimist": {
+ "version": "1.2.8",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz",
+ "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==",
"dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "spdx-expression-parse": "^3.0.0",
- "spdx-license-ids": "^3.0.0"
+ "license": "MIT",
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/spdx-exceptions": {
+ "node_modules/module-replacements": {
"version": "2.5.0",
- "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.5.0.tgz",
- "integrity": "sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==",
+ "resolved": "https://registry.npmjs.org/module-replacements/-/module-replacements-2.5.0.tgz",
+ "integrity": "sha512-m00JBwLSr7sur96PeAfAwNcyQk5MEm/GzZtZSRM+UjdzjNcgzPrWsWpsCpaRP+Fq+ROykt1TCr4GSR/ajcB83w==",
"dev": true,
- "license": "CC-BY-3.0"
+ "license": "MIT"
},
- "node_modules/spdx-expression-parse": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz",
- "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==",
+ "node_modules/ms": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
+ "license": "MIT"
+ },
+ "node_modules/mvdan-sh": {
+ "version": "0.10.1",
+ "resolved": "https://registry.npmjs.org/mvdan-sh/-/mvdan-sh-0.10.1.tgz",
+ "integrity": "sha512-kMbrH0EObaKmK3nVRKUIIya1dpASHIEusM13S4V1ViHFuxuNxCo+arxoa6j/dbV22YBGjl7UKJm9QQKJ2Crzhg==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "spdx-exceptions": "^2.1.0",
- "spdx-license-ids": "^3.0.0"
- }
+ "license": "BSD-3-Clause"
},
- "node_modules/spdx-license-ids": {
- "version": "3.0.20",
- "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.20.tgz",
- "integrity": "sha512-jg25NiDV/1fLtSgEgyvVyDunvaNHbuwF9lfNV17gSmPFAlYzdfNBlLtLzXTevwkPj7DhGbmN9VnmJIgLnhvaBw==",
+ "node_modules/natural-compare": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
+ "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==",
"dev": true,
- "license": "CC0-1.0"
+ "license": "MIT"
},
- "node_modules/split": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz",
- "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==",
+ "node_modules/negotiator": {
+ "version": "0.6.3",
+ "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
+ "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "through": "2"
- },
"engines": {
- "node": "*"
+ "node": ">= 0.6"
}
},
- "node_modules/split-string": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/split-string/-/split-string-3.1.0.tgz",
- "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==",
+ "node_modules/neo-async": {
+ "version": "2.6.2",
+ "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz",
+ "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/no-case": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/no-case/-/no-case-3.0.4.tgz",
+ "integrity": "sha512-fgAN3jGAh+RoxUGZHTSOLJIqUc2wmoBwGR4tbpNAKmmovFoWq0OdRkb0VkldReO2a2iBT/OEulG9XSUc10r3zg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "extend-shallow": "^3.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
+ "lower-case": "^2.0.2",
+ "tslib": "^2.0.3"
}
},
- "node_modules/split-string/node_modules/extend-shallow": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
- "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==",
+ "node_modules/node-abort-controller": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/node-abort-controller/-/node-abort-controller-3.1.1.tgz",
+ "integrity": "sha512-AGK2yQKIjRuqnc6VkX2Xj5d+QW8xZ87pa1UK6yA6ouUyuxfHuMP6umE5QK7UmTeOAymo+Zx1Fxiuw9rVx8taHQ==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/node-releases": {
+ "version": "2.0.18",
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz",
+ "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/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,
"license": "MIT",
- "dependencies": {
- "assign-symbols": "^1.0.0",
- "is-extendable": "^1.0.1"
- },
"engines": {
"node": ">=0.10.0"
}
},
- "node_modules/split-string/node_modules/is-extendable": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
- "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
- "dev": true,
+ "node_modules/object-inspect": {
+ "version": "1.13.2",
+ "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.2.tgz",
+ "integrity": "sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==",
"license": "MIT",
- "dependencies": {
- "is-plain-object": "^2.0.4"
- },
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/split-string/node_modules/is-plain-object": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
- "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
+ "node_modules/object-is": {
+ "version": "1.1.6",
+ "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.6.tgz",
+ "integrity": "sha512-F8cZ+KfGlSGi09lJT7/Nd6KJZ9ygtvYC0/UYYLI9nmQKLMnydpB9yvbv9K1uSkEu7FU9vYPmVwLg328tX+ot3Q==",
"dev": true,
"license": "MIT",
"dependencies": {
- "isobject": "^3.0.1"
+ "call-bind": "^1.0.7",
+ "define-properties": "^1.2.1"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/sprintf-js": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.3.tgz",
- "integrity": "sha512-Oo+0REFV59/rz3gfJNKQiBlwfHaSESl1pcGyABQsnnIfWOFt6JNj5gCog2U6MLZ//IGYD+nA8nI+mTShREReaA==",
- "dev": true,
- "license": "BSD-3-Clause",
- "optional": true
- },
- "node_modules/stack-trace": {
- "version": "0.0.10",
- "resolved": "https://registry.npmjs.org/stack-trace/-/stack-trace-0.0.10.tgz",
- "integrity": "sha512-KGzahc7puUKkzyMt+IqAep+TVNbKP+k2Lmwhub39m1AsTSkaDutx56aDCo+HLDzf/D26BIHTJWNiTG1KAJiQCg==",
+ "node_modules/object-keys": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz",
+ "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==",
"dev": true,
"license": "MIT",
"engines": {
- "node": "*"
+ "node": ">= 0.4"
}
},
- "node_modules/static-extend": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz",
- "integrity": "sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==",
+ "node_modules/object.assign": {
+ "version": "4.1.5",
+ "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.5.tgz",
+ "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "define-property": "^0.2.5",
- "object-copy": "^0.1.0"
+ "call-bind": "^1.0.5",
+ "define-properties": "^1.2.1",
+ "has-symbols": "^1.0.3",
+ "object-keys": "^1.1.1"
},
"engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/statuses": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
- "integrity": "sha512-OpZ3zP+jT1PI7I8nemJX4AKmAX070ZkYPVWV/AaKTJl+tXCTGyVdC1a4SL8RUQYEwk/f34ZX8UTykN68FwrqAA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">= 0.6"
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/stop-iteration-iterator": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz",
- "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==",
+ "node_modules/on-finished": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz",
+ "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "internal-slot": "^1.0.4"
+ "ee-first": "1.1.1"
},
"engines": {
- "node": ">= 0.4"
+ "node": ">= 0.8"
}
},
- "node_modules/stream-browserify": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz",
- "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==",
- "dev": true,
- "license": "MIT",
+ "node_modules/once": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
+ "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==",
+ "license": "ISC",
"dependencies": {
- "inherits": "~2.0.4",
- "readable-stream": "^3.5.0"
+ "wrappy": "1"
}
},
- "node_modules/stream-browserify/node_modules/readable-stream": {
- "version": "3.6.2",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
- "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
+ "node_modules/open": {
+ "version": "8.4.2",
+ "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz",
+ "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "inherits": "^2.0.3",
- "string_decoder": "^1.1.1",
- "util-deprecate": "^1.0.1"
+ "define-lazy-prop": "^2.0.0",
+ "is-docker": "^2.1.1",
+ "is-wsl": "^2.2.0"
},
"engines": {
- "node": ">= 6"
- }
- },
- "node_modules/stream-combiner": {
- "version": "0.2.2",
- "resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.2.2.tgz",
- "integrity": "sha512-6yHMqgLYDzQDcAkL+tjJDC5nSNuNIx0vZtRZeiPh7Saef7VHX9H5Ijn9l2VIol2zaNYlYEX6KyuT/237A58qEQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "duplexer": "~0.1.1",
- "through": "~2.3.4"
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/stream-combiner2": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/stream-combiner2/-/stream-combiner2-1.1.1.tgz",
- "integrity": "sha512-3PnJbYgS56AeWgtKF5jtJRT6uFJe56Z0Hc5Ngg/6sI6rIt8iiMBTa9cvdyFfpMQjaVHr8dusbNeFGIIonxOvKw==",
+ "node_modules/optionator": {
+ "version": "0.9.4",
+ "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.4.tgz",
+ "integrity": "sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==",
"dev": true,
"license": "MIT",
"dependencies": {
- "duplexer2": "~0.1.0",
- "readable-stream": "^2.0.2"
+ "deep-is": "^0.1.3",
+ "fast-levenshtein": "^2.0.6",
+ "levn": "^0.4.1",
+ "prelude-ls": "^1.2.1",
+ "type-check": "^0.4.0",
+ "word-wrap": "^1.2.5"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
}
},
- "node_modules/stream-exhaust": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/stream-exhaust/-/stream-exhaust-1.0.2.tgz",
- "integrity": "sha512-b/qaq/GlBK5xaq1yrK9/zFcyRSTNxmcZwFLGSTG0mXgZl/4Z6GgiyYOXOvY7N3eEvFRAG1bkDRz5EPGSvPYQlw==",
+ "node_modules/os-browserify": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz",
+ "integrity": "sha512-gjcpUc3clBf9+210TRaDWbf+rZZZEshZ+DlXMRCeAjp0xhTrnQsKHypIy1J3d5hKdUzj69t708EHtU8P6bUn0A==",
"dev": true,
"license": "MIT"
},
- "node_modules/stream-http": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz",
- "integrity": "sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==",
+ "node_modules/p-limit": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz",
+ "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "builtin-status-codes": "^3.0.0",
- "inherits": "^2.0.4",
- "readable-stream": "^3.6.0",
- "xtend": "^4.0.2"
+ "yocto-queue": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/stream-http/node_modules/readable-stream": {
- "version": "3.6.2",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
- "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
+ "node_modules/p-locate": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz",
+ "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "inherits": "^2.0.3",
- "string_decoder": "^1.1.1",
- "util-deprecate": "^1.0.1"
+ "p-limit": "^3.0.2"
},
"engines": {
- "node": ">= 6"
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/stream-read": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/stream-read/-/stream-read-1.1.2.tgz",
- "integrity": "sha512-YFn8e0y1XQW9nD1BPD1zCHbrUGTWdrCWoKc9W+6M9lMNBHWTdEJl676WowDpfIAo8EXU+kzWSIwhhbl/B9rm1w==",
+ "node_modules/pako": {
+ "version": "1.0.11",
+ "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz",
+ "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==",
+ "dev": true,
+ "license": "(MIT AND Zlib)"
+ },
+ "node_modules/param-case": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/param-case/-/param-case-3.0.4.tgz",
+ "integrity": "sha512-RXlj7zCYokReqWpOPH9oYivUzLYZ5vAPIfEmCTNViosC78F8F0H9y7T7gG2M39ymgutxF5gcFEsyZQSph9Bp3A==",
"dev": true,
"license": "MIT",
"dependencies": {
- "dezalgo": "^1.0.1"
+ "dot-case": "^3.0.4",
+ "tslib": "^2.0.3"
}
},
- "node_modules/stream-shift": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.3.tgz",
- "integrity": "sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==",
- "license": "MIT"
- },
- "node_modules/stream-splicer": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/stream-splicer/-/stream-splicer-2.0.1.tgz",
- "integrity": "sha512-Xizh4/NPuYSyAXyT7g8IvdJ9HJpxIGL9PjyhtywCZvvP0OPIdqyrr4dMikeuvY8xahpdKEBlBTySe583totajg==",
+ "node_modules/parent-module": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz",
+ "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==",
"dev": true,
"license": "MIT",
"dependencies": {
- "inherits": "^2.0.1",
- "readable-stream": "^2.0.2"
+ "callsites": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6"
}
},
- "node_modules/string_decoder": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
- "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
+ "node_modules/parse-asn1": {
+ "version": "5.1.7",
+ "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.7.tgz",
+ "integrity": "sha512-CTM5kuWR3sx9IFamcl5ErfPl6ea/N8IYwiJ+vpeB2g+1iknv7zBl5uPwbMbRVznRVbrNY6lGuDoE5b30grmbqg==",
"dev": true,
- "license": "MIT",
+ "license": "ISC",
"dependencies": {
- "safe-buffer": "~5.2.0"
+ "asn1.js": "^4.10.1",
+ "browserify-aes": "^1.2.0",
+ "evp_bytestokey": "^1.0.3",
+ "hash-base": "~3.0",
+ "pbkdf2": "^3.1.2",
+ "safe-buffer": "^5.2.1"
+ },
+ "engines": {
+ "node": ">= 0.10"
}
},
- "node_modules/string-template": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/string-template/-/string-template-0.2.1.tgz",
- "integrity": "sha512-Yptehjogou2xm4UJbxJ4CxgZx12HBfeystp0y3x7s4Dj32ltVVG1Gg8YhKjHZkHicuKpZX/ffilA8505VbUbpw==",
- "dev": true
- },
- "node_modules/string-width": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz",
- "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==",
+ "node_modules/parseurl": {
+ "version": "1.3.3",
+ "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
+ "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "eastasianwidth": "^0.2.0",
- "emoji-regex": "^9.2.2",
- "strip-ansi": "^7.0.1"
- },
"engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "node": ">= 0.8"
}
},
- "node_modules/string-width-cjs": {
- "name": "string-width",
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
- "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
+ "node_modules/pascal-case": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/pascal-case/-/pascal-case-3.1.2.tgz",
+ "integrity": "sha512-uWlGT3YSnK9x3BQJaOdcZwrnV6hPpd8jFH1/ucpiLRPh/2zCVJKS19E4GvYHvaCcACn3foXZ0cLB9Wrx1KGe5g==",
"dev": true,
"license": "MIT",
"dependencies": {
- "emoji-regex": "^8.0.0",
- "is-fullwidth-code-point": "^3.0.0",
- "strip-ansi": "^6.0.1"
- },
- "engines": {
- "node": ">=8"
+ "no-case": "^3.0.4",
+ "tslib": "^2.0.3"
}
},
- "node_modules/string-width-cjs/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==",
+ "node_modules/path-browserify": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz",
+ "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==",
"dev": true,
"license": "MIT"
},
- "node_modules/string-width/node_modules/ansi-regex": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz",
- "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==",
+ "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,
"license": "MIT",
"engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-regex?sponsor=1"
+ "node": ">=8"
}
},
- "node_modules/string-width/node_modules/strip-ansi": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz",
- "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==",
+ "node_modules/path-is-absolute": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
+ "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "ansi-regex": "^6.0.1"
- },
"engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/chalk/strip-ansi?sponsor=1"
+ "node": ">=0.10.0"
}
},
- "node_modules/string.prototype.trim": {
- "version": "1.2.9",
- "resolved": "https://registry.npmjs.org/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz",
- "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==",
+ "node_modules/path-key": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz",
+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.7",
- "define-properties": "^1.2.1",
- "es-abstract": "^1.23.0",
- "es-object-atoms": "^1.0.0"
- },
"engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
+ "node": ">=8"
}
},
- "node_modules/string.prototype.trimend": {
- "version": "1.0.8",
- "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz",
- "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==",
+ "node_modules/path-parse": {
+ "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,
+ "license": "MIT"
+ },
+ "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==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.7",
- "define-properties": "^1.2.1",
- "es-object-atoms": "^1.0.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
+ "engines": {
+ "node": ">=8"
}
},
- "node_modules/string.prototype.trimstart": {
- "version": "1.0.8",
- "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz",
- "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==",
+ "node_modules/pathval": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/pathval/-/pathval-2.0.0.tgz",
+ "integrity": "sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.7",
- "define-properties": "^1.2.1",
- "es-object-atoms": "^1.0.0"
- },
"engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
+ "node": ">= 14.16"
}
},
- "node_modules/strip-ansi": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
- "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
+ "node_modules/pause-stream": {
+ "version": "0.0.11",
+ "resolved": "https://registry.npmjs.org/pause-stream/-/pause-stream-0.0.11.tgz",
+ "integrity": "sha512-e3FBlXLmN/D1S+zHzanP4E/4Z60oFAa3O051qt1pxa7DEJWKAyil6upYVXCWadEnuoqa4Pkc9oUx9zsxYeRv8A==",
"dev": true,
- "license": "MIT",
+ "license": [
+ "MIT",
+ "Apache2"
+ ],
"dependencies": {
- "ansi-regex": "^5.0.1"
- },
- "engines": {
- "node": ">=8"
+ "through": "~2.3"
}
},
- "node_modules/strip-ansi-cjs": {
- "name": "strip-ansi",
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
- "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
+ "node_modules/pbkdf2": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz",
+ "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "ansi-regex": "^5.0.1"
+ "create-hash": "^1.1.2",
+ "create-hmac": "^1.1.4",
+ "ripemd160": "^2.0.1",
+ "safe-buffer": "^5.0.1",
+ "sha.js": "^2.4.8"
},
"engines": {
- "node": ">=8"
+ "node": ">=0.12"
}
},
- "node_modules/strip-bom": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
- "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==",
+ "node_modules/performance-now": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
+ "integrity": "sha512-7EAHlyLHI56VEIdK57uwHdHKIaAGbnXPiw0yWbarQZOKaKpvUIgW0jWRVLiatnM+XXlSwsanIBH/hzGMJulMow==",
+ "license": "MIT"
+ },
+ "node_modules/picocolors": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz",
+ "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/picomatch": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
+ "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=4"
+ "node": ">=8.6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/jonschlinkert"
}
},
- "node_modules/strip-bom-string": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz",
- "integrity": "sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==",
+ "node_modules/polished": {
+ "version": "4.3.1",
+ "resolved": "https://registry.npmjs.org/polished/-/polished-4.3.1.tgz",
+ "integrity": "sha512-OBatVyC/N7SCW/FaDHrSd+vn0o5cS855TOmYi4OkdWUMSJCET/xip//ch8xGUvtr3i44X9LVyWwQlRMTN3pwSA==",
"dev": true,
"license": "MIT",
+ "dependencies": {
+ "@babel/runtime": "^7.17.8"
+ },
"engines": {
- "node": ">=0.10.0"
+ "node": ">=10"
}
},
- "node_modules/strip-indent": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz",
- "integrity": "sha512-I5iQq6aFMM62fBEAIB/hXzwJD6EEZ0xEGCX2t7oXqaKPIRgt4WruAQ285BISgdkP+HLGWyeGmNJcpIwFeRYRUA==",
+ "node_modules/possible-typed-array-names": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz",
+ "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "get-stdin": "^4.0.1"
- },
- "bin": {
- "strip-indent": "cli.js"
- },
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.4"
}
},
- "node_modules/strip-indent/node_modules/get-stdin": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
- "integrity": "sha512-F5aQMywwJ2n85s4hJPTT9RPxGmubonuB10MNYo17/xph174n2MIR33HRguhzVag10O/npM7SPk73LMZNP+FaWw==",
+ "node_modules/prelude-ls": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
+ "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.8.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",
- "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
+ "node_modules/prettier": {
+ "version": "3.3.3",
+ "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz",
+ "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==",
"dev": true,
"license": "MIT",
+ "bin": {
+ "prettier": "bin/prettier.cjs"
+ },
"engines": {
- "node": ">=8"
+ "node": ">=14"
},
"funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "url": "https://github.com/prettier/prettier?sponsor=1"
}
},
- "node_modules/stylehacks": {
- "version": "6.1.1",
- "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-6.1.1.tgz",
- "integrity": "sha512-gSTTEQ670cJNoaeIp9KX6lZmm8LJ3jPB5yJmX8Zq/wQxOsAFXV3qjWzHas3YYk1qesuVIyYWWUpZ0vSE/dTSGg==",
+ "node_modules/prettier-plugin-curly": {
+ "version": "0.2.2",
+ "resolved": "https://registry.npmjs.org/prettier-plugin-curly/-/prettier-plugin-curly-0.2.2.tgz",
+ "integrity": "sha512-2Rm/NLSeVv7xhQop3+P0Yt6GcbRGrFCb7Dl7y7NH6md4ZgcAcIiKgmAJtB+iWhgw1iwV7aDYSWslAQHpxu9isQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "browserslist": "^4.23.0",
- "postcss-selector-parser": "^6.0.16"
+ "@babel/generator": "^7.23.6",
+ "@babel/parser": "^7.22.5",
+ "@babel/traverse": "^7.22.5"
},
"engines": {
- "node": "^14 || ^16 || >=18.0"
+ "node": ">=18"
},
"peerDependencies": {
- "postcss": "^8.4.31"
+ "prettier": "^2 || ^3"
}
},
- "node_modules/stylus": {
- "version": "0.63.0",
- "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.63.0.tgz",
- "integrity": "sha512-OMlgrTCPzE/ibtRMoeLVhOY0RcNuNWh0rhAVqeKnk/QwcuUKQbnqhZ1kg2vzD8VU/6h3FoPTq4RJPHgLBvX6Bw==",
+ "node_modules/prettier-plugin-packagejson": {
+ "version": "2.5.2",
+ "resolved": "https://registry.npmjs.org/prettier-plugin-packagejson/-/prettier-plugin-packagejson-2.5.2.tgz",
+ "integrity": "sha512-w+TmoLv2pIa+siplW1cCj2ujEXQQS6z7wmWLOiLQK/2QVl7Wy6xh/ZUpqQw8tbKMXDodmSW4GONxlA33xpdNOg==",
"dev": true,
"license": "MIT",
- "peer": true,
"dependencies": {
- "@adobe/css-tools": "~4.3.3",
- "debug": "^4.3.2",
- "glob": "^7.1.6",
- "sax": "~1.3.0",
- "source-map": "^0.7.3"
- },
- "bin": {
- "stylus": "bin/stylus"
+ "sort-package-json": "2.10.1",
+ "synckit": "0.9.1"
},
- "engines": {
- "node": "*"
+ "peerDependencies": {
+ "prettier": ">= 1.16.0"
},
- "funding": {
- "url": "https://opencollective.com/stylus"
+ "peerDependenciesMeta": {
+ "prettier": {
+ "optional": true
+ }
}
},
- "node_modules/stylus/node_modules/glob": {
- "version": "7.2.3",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
- "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
- "deprecated": "Glob versions prior to v9 are no longer supported",
+ "node_modules/prettier-plugin-sh": {
+ "version": "0.14.0",
+ "resolved": "https://registry.npmjs.org/prettier-plugin-sh/-/prettier-plugin-sh-0.14.0.tgz",
+ "integrity": "sha512-hfXulj5+zEl/ulrO5kMuuTPKmXvOg0bnLHY1hKFNN/N+/903iZbNp8NyZBTsgI8dtkSgFfAEIQq0IQTyP1ZVFQ==",
"dev": true,
- "license": "ISC",
- "peer": true,
+ "license": "MIT",
"dependencies": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.1.1",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
+ "mvdan-sh": "^0.10.1",
+ "sh-syntax": "^0.4.1"
},
"engines": {
- "node": "*"
+ "node": ">=16.0.0"
},
"funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/stylus/node_modules/source-map": {
- "version": "0.7.4",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
- "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
- "dev": true,
- "license": "BSD-3-Clause",
- "peer": true,
- "engines": {
- "node": ">= 8"
+ "url": "https://opencollective.com/unts"
+ },
+ "peerDependencies": {
+ "prettier": "^3.0.3"
}
},
- "node_modules/subarg": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/subarg/-/subarg-1.0.0.tgz",
- "integrity": "sha512-RIrIdRY0X1xojthNcVtgT9sjpOGagEUKpZdgBUi054OEPFo282yg+zE+t1Rj3+RqKq2xStL7uUHhY+AjbC4BXg==",
+ "node_modules/pretty-format": {
+ "version": "27.5.1",
+ "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz",
+ "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "minimist": "^1.1.0"
- }
- },
- "node_modules/sumchecker": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/sumchecker/-/sumchecker-3.0.1.tgz",
- "integrity": "sha512-MvjXzkz/BOfyVDkG0oFOtBxHX2u3gKbMHIF/dXblZsgD3BWOFLmHovIpZY7BykJdAjcqRCBi1WYBNdEC9yI7vg==",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "debug": "^4.1.0"
+ "ansi-regex": "^5.0.1",
+ "ansi-styles": "^5.0.0",
+ "react-is": "^17.0.1"
},
"engines": {
- "node": ">= 8.0"
+ "node": "^10.13.0 || ^12.13.0 || ^14.15.0 || >=15.0.0"
}
},
- "node_modules/superagent": {
- "version": "10.1.0",
- "resolved": "https://registry.npmjs.org/superagent/-/superagent-10.1.0.tgz",
- "integrity": "sha512-JMmik7PbnXGlq7g528Gi6apHbVbTz2vrE3du6fuG4kIPSb2PnLoSOPvfjKn8aQYuJcBWAKW6ZG90qPPsE5jZxQ==",
+ "node_modules/pretty-format/node_modules/ansi-styles": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz",
+ "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==",
+ "dev": true,
"license": "MIT",
- "dependencies": {
- "component-emitter": "^1.3.0",
- "cookiejar": "^2.1.4",
- "debug": "^4.3.4",
- "fast-safe-stringify": "^2.1.1",
- "form-data": "^4.0.0",
- "formidable": "^3.5.1",
- "methods": "^1.1.2",
- "mime": "2.6.0",
- "qs": "^6.11.0"
- },
"engines": {
- "node": ">=14.18.0"
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
- "node_modules/superagent/node_modules/mime": {
- "version": "2.6.0",
- "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz",
- "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==",
+ "node_modules/process": {
+ "version": "0.11.10",
+ "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz",
+ "integrity": "sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A==",
"license": "MIT",
- "bin": {
- "mime": "cli.js"
- },
"engines": {
- "node": ">=4.0.0"
+ "node": ">= 0.6.0"
}
},
- "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==",
+ "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==",
+ "license": "MIT"
+ },
+ "node_modules/proxy-addr": {
+ "version": "2.0.7",
+ "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz",
+ "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==",
+ "dev": true,
"license": "MIT",
"dependencies": {
- "has-flag": "^3.0.0"
+ "forwarded": "0.2.0",
+ "ipaddr.js": "1.9.1"
},
"engines": {
- "node": ">=4"
+ "node": ">= 0.10"
}
},
- "node_modules/supports-preserve-symlinks-flag": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
- "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
+ "node_modules/public-encrypt": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz",
+ "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
+ "dependencies": {
+ "bn.js": "^4.1.0",
+ "browserify-rsa": "^4.0.0",
+ "create-hash": "^1.1.0",
+ "parse-asn1": "^5.0.0",
+ "randombytes": "^2.0.1",
+ "safe-buffer": "^5.1.2"
}
},
- "node_modules/sver-compat": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/sver-compat/-/sver-compat-1.5.0.tgz",
- "integrity": "sha512-aFTHfmjwizMNlNE6dsGmoAM4lHjL0CyiobWaFiXWSlD7cIxshW422Nb8KbXCmR6z+0ZEPY+daXJrDyh/vuwTyg==",
+ "node_modules/public-encrypt/node_modules/bn.js": {
+ "version": "4.12.0",
+ "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz",
+ "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "es6-iterator": "^2.0.1",
- "es6-symbol": "^3.1.1"
- }
+ "license": "MIT"
},
- "node_modules/svgo": {
- "version": "3.3.2",
- "resolved": "https://registry.npmjs.org/svgo/-/svgo-3.3.2.tgz",
- "integrity": "sha512-OoohrmuUlBs8B8o6MB2Aevn+pRIH9zDALSR+6hhqVfa6fRwG/Qw9VUMSMW9VNg2CFc/MTIfabtdOVl9ODIJjpw==",
+ "node_modules/punycode": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
+ "integrity": "sha512-jmYNElW7yvO7TV33CjSmvSiE2yco3bV2czu/OzDKdMNVZQWfxCblURLhf+47syQRBntjfLdd/H0egrzIG+oaFQ==",
"dev": true,
- "license": "MIT",
+ "license": "MIT"
+ },
+ "node_modules/qs": {
+ "version": "6.13.0",
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz",
+ "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==",
+ "license": "BSD-3-Clause",
"dependencies": {
- "@trysound/sax": "0.2.0",
- "commander": "^7.2.0",
- "css-select": "^5.1.0",
- "css-tree": "^2.3.1",
- "css-what": "^6.1.0",
- "csso": "^5.0.5",
- "picocolors": "^1.0.0"
- },
- "bin": {
- "svgo": "bin/svgo"
+ "side-channel": "^1.0.6"
},
"engines": {
- "node": ">=14.0.0"
+ "node": ">=0.6"
},
"funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/svgo"
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/synckit": {
- "version": "0.9.1",
- "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.1.tgz",
- "integrity": "sha512-7gr8p9TQP6RAHusBOSLs46F4564ZrjV8xFmw5zCmgmhGUcw2hxsShhJ6CEiHQMgPDwAQ1fWHPM0ypc4RMAig4A==",
+ "node_modules/querystring-es3": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz",
+ "integrity": "sha512-773xhDQnZBMFobEiztv8LIl70ch5MSF/jUQVlhwFyBILqq96anmoctVIYz+ZRp0qbCKATTn6ev02M3r7Ga5vqA==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "@pkgr/core": "^0.1.0",
- "tslib": "^2.6.2"
- },
"engines": {
- "node": "^14.18.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/unts"
+ "node": ">=0.4.x"
}
},
- "node_modules/syntax-error": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/syntax-error/-/syntax-error-1.4.0.tgz",
- "integrity": "sha512-YPPlu67mdnHGTup2A8ff7BC2Pjq0e0Yp/IyTFN03zWO0RcK07uLcbi7C2KpGR2FvWbaB0+bfE27a+sBKebSo7w==",
+ "node_modules/queue-microtask": {
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz",
+ "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
"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"
+ }
+ ],
+ "license": "MIT"
+ },
+ "node_modules/raf": {
+ "version": "3.4.1",
+ "resolved": "https://registry.npmjs.org/raf/-/raf-3.4.1.tgz",
+ "integrity": "sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==",
"license": "MIT",
"dependencies": {
- "acorn-node": "^1.2.0"
+ "performance-now": "^2.1.0"
}
},
- "node_modules/tap-parser": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/tap-parser/-/tap-parser-0.2.1.tgz",
- "integrity": "sha512-OPa/tko+q8netVBw0d9iaQPRfnvrVdc+LZByThibCMXTq4T8hoTY9Zjv9Cuqudn4Ql2IhzZFdJrfCOlCFpUeYw==",
+ "node_modules/randombytes": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
+ "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "split": "~0.1.2"
+ "safe-buffer": "^5.1.0"
}
},
- "node_modules/tap-parser/node_modules/split": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/split/-/split-0.1.2.tgz",
- "integrity": "sha512-KovAcDCS2xGeulhU2zVUUglt9/M6yIZVtKqsT0uOaA0UuEyUrxQoC5EhVt5doxVyodJ6trD3Q79fbIiD6bqb4g==",
+ "node_modules/randomfill": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/randomfill/-/randomfill-1.0.4.tgz",
+ "integrity": "sha512-87lcbR8+MhcWcUiQ+9e+Rwx8MyR2P7qnt15ynUlbm3TU/fjbgz4GsvfSUDTemtCCtVCqb4ZcEFlyPNTh9bBTLw==",
"dev": true,
+ "license": "MIT",
"dependencies": {
- "through": "1"
- },
- "engines": {
- "node": "*"
+ "randombytes": "^2.0.5",
+ "safe-buffer": "^5.1.0"
}
},
- "node_modules/tap-parser/node_modules/through": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/through/-/through-1.1.2.tgz",
- "integrity": "sha512-YG7jdC/XCqsooOdR2LJpeuQ5WnuYnHohUMJq4xMN09rbr81rli6JfZbGa07dWJg24qb8h6mGC+0G74eak9hrnw==",
+ "node_modules/range-parser": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz",
+ "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==",
"dev": true,
- "license": "MIT"
+ "license": "MIT",
+ "engines": {
+ "node": ">= 0.6"
+ }
},
- "node_modules/tape": {
- "version": "5.9.0",
- "resolved": "https://registry.npmjs.org/tape/-/tape-5.9.0.tgz",
- "integrity": "sha512-czbGgxSVwRlbB3Ly/aqQrNwrDAzKHDW/kVXegp4hSFmR2c8qqm3hCgZbUy1+3QAQFGhPDG7J56UsV1uNilBFCA==",
+ "node_modules/raw-body": {
+ "version": "2.5.2",
+ "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz",
+ "integrity": "sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@ljharb/resumer": "^0.1.3",
- "@ljharb/through": "^2.3.13",
- "array.prototype.every": "^1.1.6",
- "call-bind": "^1.0.7",
- "deep-equal": "^2.2.3",
- "defined": "^1.0.1",
- "dotignore": "^0.1.2",
- "for-each": "^0.3.3",
- "get-package-type": "^0.1.0",
- "glob": "^7.2.3",
- "has-dynamic-import": "^2.1.0",
- "hasown": "^2.0.2",
- "inherits": "^2.0.4",
- "is-regex": "^1.1.4",
- "minimist": "^1.2.8",
- "mock-property": "^1.1.0",
- "object-inspect": "^1.13.2",
- "object-is": "^1.1.6",
- "object-keys": "^1.1.1",
- "object.assign": "^4.1.5",
- "resolve": "^2.0.0-next.5",
- "string.prototype.trim": "^1.2.9"
- },
- "bin": {
- "tape": "bin/tape"
+ "bytes": "3.1.2",
+ "http-errors": "2.0.0",
+ "iconv-lite": "0.4.24",
+ "unpipe": "1.0.0"
},
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
+ "engines": {
+ "node": ">= 0.8"
}
},
- "node_modules/tape-catch": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/tape-catch/-/tape-catch-1.0.6.tgz",
- "integrity": "sha512-YnnfczmfAlVu+iAPiGfpMx+qNs6crYM3qPLJ0b9mKaiN0Sc0vOiBNr0yQ9WZqybngJvdlh7MzdutFwGrqYxlsA==",
+ "node_modules/react": {
+ "version": "18.3.1",
+ "resolved": "https://registry.npmjs.org/react/-/react-18.3.1.tgz",
+ "integrity": "sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "global": "~4.3.0"
+ "loose-envify": "^1.1.0"
},
- "peerDependencies": {
- "tape": "*"
+ "engines": {
+ "node": ">=0.10.0"
}
},
- "node_modules/tape-catch/node_modules/global": {
- "version": "4.3.2",
- "resolved": "https://registry.npmjs.org/global/-/global-4.3.2.tgz",
- "integrity": "sha512-/4AybdwIDU4HkCUbJkZdWpe4P6vuw/CUtu+0I1YlLIPe7OlUO7KNJ+q/rO70CW2/NW6Jc6I62++Hzsf5Alu6rQ==",
+ "node_modules/react-colorful": {
+ "version": "5.6.1",
+ "resolved": "https://registry.npmjs.org/react-colorful/-/react-colorful-5.6.1.tgz",
+ "integrity": "sha512-1exovf0uGTGyq5mXQT0zgQ80uvj2PCwvF8zY1RN9/vbJVSjSo3fsB/4L3ObbF7u70NduSiK4xu4Y6q1MHoUGEw==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "min-document": "^2.19.0",
- "process": "~0.5.1"
+ "peerDependencies": {
+ "react": ">=16.8.0",
+ "react-dom": ">=16.8.0"
}
},
- "node_modules/tape-catch/node_modules/process": {
- "version": "0.5.2",
- "resolved": "https://registry.npmjs.org/process/-/process-0.5.2.tgz",
- "integrity": "sha512-oNpcutj+nYX2FjdEW7PGltWhXulAnFlM0My/k48L90hARCOJtvBbQXc/6itV2jDvU5xAAtonP+r6wmQgCcbAUA==",
+ "node_modules/react-confetti": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/react-confetti/-/react-confetti-6.1.0.tgz",
+ "integrity": "sha512-7Ypx4vz0+g8ECVxr88W9zhcQpbeujJAVqL14ZnXJ3I23mOI9/oBVTQ3dkJhUmB0D6XOtCZEM6N0Gm9PMngkORw==",
"dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "tween-functions": "^1.2.0"
+ },
"engines": {
- "node": ">= 0.6.0"
+ "node": ">=10.18"
+ },
+ "peerDependencies": {
+ "react": "^16.3.0 || ^17.0.1 || ^18.0.0"
}
},
- "node_modules/tape-run": {
- "version": "11.0.0",
- "resolved": "https://registry.npmjs.org/tape-run/-/tape-run-11.0.0.tgz",
- "integrity": "sha512-/dJZicliuqH47SRdxtYiWNxuBU0NuzP2LhtZSSpS4LGBf9zs8u7H8ze7kCY4j5Zi5pxZbVJiRW2Az60rKxBwlg==",
+ "node_modules/react-dom": {
+ "version": "18.3.1",
+ "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.3.1.tgz",
+ "integrity": "sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "@juliangruber/tap-finished": "0.0.2",
- "browser-run": "^12.0.0",
- "through": "^2.3.8",
- "throughout": "0.0.0",
- "yargs": "^17.4.1"
- },
- "bin": {
- "tape-run": "bin/run.js"
+ "loose-envify": "^1.1.0",
+ "scheduler": "^0.23.2"
},
- "engines": {
- "node": ">=14"
+ "peerDependencies": {
+ "react": "^18.3.1"
}
},
- "node_modules/tape/node_modules/glob": {
- "version": "7.2.3",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
- "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
- "deprecated": "Glob versions prior to v9 are no longer supported",
+ "node_modules/react-is": {
+ "version": "17.0.2",
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz",
+ "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==",
"dev": true,
- "license": "ISC",
+ "license": "MIT"
+ },
+ "node_modules/readable-stream": {
+ "version": "2.3.8",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
+ "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
+ "license": "MIT",
"dependencies": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.1.1",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- },
- "engines": {
- "node": "*"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
+ "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/tape/node_modules/resolve": {
- "version": "2.0.0-next.5",
- "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz",
- "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==",
- "dev": true,
+ "node_modules/readable-stream/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==",
+ "license": "MIT"
+ },
+ "node_modules/readable-stream/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==",
"license": "MIT",
"dependencies": {
- "is-core-module": "^2.13.0",
- "path-parse": "^1.0.7",
- "supports-preserve-symlinks-flag": "^1.0.0"
- },
- "bin": {
- "resolve": "bin/resolve"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
+ "safe-buffer": "~5.1.0"
}
},
- "node_modules/temp-dir": {
+ "node_modules/readline-transform": {
"version": "1.0.0",
- "resolved": "https://registry.npmjs.org/temp-dir/-/temp-dir-1.0.0.tgz",
- "integrity": "sha512-xZFXEGbG7SNC3itwBzI3RYjq/cEhBkx2hJuKGIUOcEULmkQExXiHat2z/qkISYsuR+IKumhEfKKbV5qXmhICFQ==",
+ "resolved": "https://registry.npmjs.org/readline-transform/-/readline-transform-1.0.0.tgz",
+ "integrity": "sha512-7KA6+N9IGat52d83dvxnApAWN+MtVb1MiVuMR/cf1O4kYsJG+g/Aav0AHcHKsb6StinayfPLne0+fMX2sOzAKg==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=4"
+ "node": ">=6"
}
},
- "node_modules/tempy": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/tempy/-/tempy-0.1.0.tgz",
- "integrity": "sha512-WntL0TUA4C4nPEPSt+9Zm5wpHBJuBQwMb0u7izPVxUurPRajjxz+KnPFCvbhZv21a7PuK5NWjkDQe8lw0bKLXg==",
+ "node_modules/recast": {
+ "version": "0.23.9",
+ "resolved": "https://registry.npmjs.org/recast/-/recast-0.23.9.tgz",
+ "integrity": "sha512-Hx/BGIbwj+Des3+xy5uAtAbdCyqK9y9wbBcDFDYanLS9JnMqf7OeF87HQwUimE87OEc72mr6tkKUKMBBL+hF9Q==",
"dev": true,
"license": "MIT",
"dependencies": {
- "pify": "^2.3.0",
- "temp-dir": "^1.0.0",
- "unique-string": "^1.0.0"
+ "ast-types": "^0.16.1",
+ "esprima": "~4.0.0",
+ "source-map": "~0.6.1",
+ "tiny-invariant": "^1.3.3",
+ "tslib": "^2.0.1"
},
"engines": {
- "node": ">=4"
+ "node": ">= 4"
}
},
- "node_modules/ternary-stream": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/ternary-stream/-/ternary-stream-3.0.0.tgz",
- "integrity": "sha512-oIzdi+UL/JdktkT+7KU5tSIQjj8pbShj3OASuvDEhm0NT5lppsm7aXWAmAq4/QMaBIyfuEcNLbAQA+HpaISobQ==",
+ "node_modules/recast/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "duplexify": "^4.1.1",
- "fork-stream": "^0.0.4",
- "merge-stream": "^2.0.0",
- "through2": "^3.0.1"
+ "license": "BSD-3-Clause",
+ "engines": {
+ "node": ">=0.10.0"
}
},
- "node_modules/ternary-stream/node_modules/through2": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/through2/-/through2-3.0.2.tgz",
- "integrity": "sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ==",
+ "node_modules/reduce-configs": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/reduce-configs/-/reduce-configs-1.0.0.tgz",
+ "integrity": "sha512-/JCYSgL/QeXXsq0Lv/7kOZfqvof7vyzHWfyNQPt3c6vc73mU4WRyT8RJ6ZH5Ci08vUOqXwk7jkZy6BycHTDD9w==",
"dev": true,
"license": "MIT",
"dependencies": {
- "inherits": "^2.0.4",
- "readable-stream": "2 || 3"
+ "browserslist": "^4.23.1"
}
},
- "node_modules/terser": {
- "version": "5.33.0",
- "resolved": "https://registry.npmjs.org/terser/-/terser-5.33.0.tgz",
- "integrity": "sha512-JuPVaB7s1gdFKPKTelwUyRq5Sid2A3Gko2S0PncwdBq7kN9Ti9HPWDQ06MPsEDGsZeVESjKEnyGy68quBk1w6g==",
+ "node_modules/refa": {
+ "version": "0.12.1",
+ "resolved": "https://registry.npmjs.org/refa/-/refa-0.12.1.tgz",
+ "integrity": "sha512-J8rn6v4DBb2nnFqkqwy6/NnTYMcgLA+sLr0iIO41qpv0n+ngb7ksag2tMRl0inb1bbO/esUwzW1vbJi7K0sI0g==",
"dev": true,
- "license": "BSD-2-Clause",
+ "license": "MIT",
"dependencies": {
- "@jridgewell/source-map": "^0.3.3",
- "acorn": "^8.8.2",
- "commander": "^2.20.0",
- "source-map-support": "~0.5.20"
- },
- "bin": {
- "terser": "bin/terser"
+ "@eslint-community/regexpp": "^4.8.0"
},
"engines": {
- "node": ">=10"
+ "node": "^12.0.0 || ^14.0.0 || >=16.0.0"
}
},
- "node_modules/terser/node_modules/commander": {
- "version": "2.20.3",
- "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
- "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
+ "node_modules/regenerator-runtime": {
+ "version": "0.14.1",
+ "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz",
+ "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==",
"dev": true,
"license": "MIT"
},
- "node_modules/terser/node_modules/source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
+ "node_modules/regexp-ast-analysis": {
+ "version": "0.7.1",
+ "resolved": "https://registry.npmjs.org/regexp-ast-analysis/-/regexp-ast-analysis-0.7.1.tgz",
+ "integrity": "sha512-sZuz1dYW/ZsfG17WSAG7eS85r5a0dDsvg+7BiiYR5o6lKCAtUrEwdmRmaGF6rwVj3LcmAeYkOWKEPlbPzN3Y3A==",
"dev": true,
- "license": "BSD-3-Clause",
+ "license": "MIT",
+ "dependencies": {
+ "@eslint-community/regexpp": "^4.8.0",
+ "refa": "^0.12.1"
+ },
"engines": {
- "node": ">=0.10.0"
+ "node": "^12.0.0 || ^14.0.0 || >=16.0.0"
}
},
- "node_modules/terser/node_modules/source-map-support": {
- "version": "0.5.21",
- "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz",
- "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==",
+ "node_modules/regexp-tree": {
+ "version": "0.1.27",
+ "resolved": "https://registry.npmjs.org/regexp-tree/-/regexp-tree-0.1.27.tgz",
+ "integrity": "sha512-iETxpjK6YoRWJG5o6hXLwvjYAoW+FEZn9os0PD/b6AP6xQwsa/Y7lCVgIixBbUPMfhu+i2LtdeAqVTgGlQarfA==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "buffer-from": "^1.0.0",
- "source-map": "^0.6.0"
+ "bin": {
+ "regexp-tree": "bin/regexp-tree"
}
},
- "node_modules/text-table": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
- "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/through": {
- "version": "2.3.8",
- "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
- "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/through2": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
- "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==",
+ "node_modules/regexpp": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz",
+ "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "readable-stream": "~2.3.6",
- "xtend": "~4.0.1"
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/mysticatea"
}
},
- "node_modules/through2-filter": {
+ "node_modules/rehype-external-links": {
"version": "3.0.0",
- "resolved": "https://registry.npmjs.org/through2-filter/-/through2-filter-3.0.0.tgz",
- "integrity": "sha512-jaRjI2WxN3W1V8/FMZ9HKIBXixtiqs3SQSX4/YGIiP3gL6djW48VoZq9tDqeCWs3MT8YY5wb/zli8VW8snY1CA==",
+ "resolved": "https://registry.npmjs.org/rehype-external-links/-/rehype-external-links-3.0.0.tgz",
+ "integrity": "sha512-yp+e5N9V3C6bwBeAC4n796kc86M4gJCdlVhiMTxIrJG5UHDMh+PJANf9heqORJbt1nrCbDwIlAZKjANIaVBbvw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "through2": "~2.0.0",
- "xtend": "~4.0.0"
+ "@types/hast": "^3.0.0",
+ "@ungap/structured-clone": "^1.0.0",
+ "hast-util-is-element": "^3.0.0",
+ "is-absolute-url": "^4.0.0",
+ "space-separated-tokens": "^2.0.0",
+ "unist-util-visit": "^5.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/unified"
}
},
- "node_modules/throughout": {
- "version": "0.0.0",
- "resolved": "https://registry.npmjs.org/throughout/-/throughout-0.0.0.tgz",
- "integrity": "sha512-WOr85Dpe0ordFnWwbtUmv/vfENqNFKlOou9UaRzbtAJcnh2GqBQZyclBUij/yRLRc96CxTIbhmLaIchHAmUpJg==",
+ "node_modules/rehype-slug": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/rehype-slug/-/rehype-slug-6.0.0.tgz",
+ "integrity": "sha512-lWyvf/jwu+oS5+hL5eClVd3hNdmwM1kAC0BUvEGD19pajQMIzcNUd/k9GsfQ+FfECvX+JE+e9/btsKH0EjJT6A==",
"dev": true,
"license": "MIT",
"dependencies": {
- "duplexer": "~0.0.2",
- "through": "~2.3.4"
+ "@types/hast": "^3.0.0",
+ "github-slugger": "^2.0.0",
+ "hast-util-heading-rank": "^3.0.0",
+ "hast-util-to-string": "^3.0.0",
+ "unist-util-visit": "^5.0.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/unified"
}
},
- "node_modules/throughout/node_modules/duplexer": {
- "version": "0.0.4",
- "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.0.4.tgz",
- "integrity": "sha512-nO0WWuIDTde3CWK/8IPpG50dyhUilgpsqzYSIP+w20Yh+4iDgb/2Gs75QItcp0Hmx/JtxtTXBalj+LSTD1VemA==",
- "dev": true
- },
- "node_modules/time-stamp": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz",
- "integrity": "sha512-gLCeArryy2yNTRzTGKbZbloctj64jkZ57hj5zdraXue6aFgd6PmvVtEyiUU+hvU0v7q08oVv8r8ev0tRo6bvgw==",
+ "node_modules/relateurl": {
+ "version": "0.2.7",
+ "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz",
+ "integrity": "sha512-G08Dxvm4iDN3MLM0EsP62EDV9IuhXPR6blNz6Utcp7zyV3tr4HVNINt6MpaRWbxoOHT3Q7YN2P+jaHX8vUbgog==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.10"
}
},
- "node_modules/timers-browserify": {
- "version": "1.4.2",
- "resolved": "https://registry.npmjs.org/timers-browserify/-/timers-browserify-1.4.2.tgz",
- "integrity": "sha512-PIxwAupJZiYU4JmVZYwXp9FKsHMXb5h0ZEFyuXTAn8WLHOlcij+FEcbrvDsom1o5dr1YggEtFbECvGCW2sT53Q==",
+ "node_modules/require-directory": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
+ "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==",
"dev": true,
- "dependencies": {
- "process": "~0.11.0"
- },
+ "license": "MIT",
"engines": {
- "node": ">=0.6.0"
+ "node": ">=0.10.0"
}
},
- "node_modules/timers-ext": {
- "version": "0.1.8",
- "resolved": "https://registry.npmjs.org/timers-ext/-/timers-ext-0.1.8.tgz",
- "integrity": "sha512-wFH7+SEAcKfJpfLPkrgMPvvwnEtj8W4IurvEyrKsDleXnKLCDw71w8jltvfLa8Rm4qQxxT4jmDBYbJG/z7qoww==",
+ "node_modules/resolve": {
+ "version": "1.22.8",
+ "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz",
+ "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==",
"dev": true,
- "license": "ISC",
+ "license": "MIT",
"dependencies": {
- "es5-ext": "^0.10.64",
- "next-tick": "^1.1.0"
+ "is-core-module": "^2.13.0",
+ "path-parse": "^1.0.7",
+ "supports-preserve-symlinks-flag": "^1.0.0"
},
- "engines": {
- "node": ">=0.12"
+ "bin": {
+ "resolve": "bin/resolve"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/tiny-lr": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/tiny-lr/-/tiny-lr-1.1.1.tgz",
- "integrity": "sha512-44yhA3tsaRoMOjQQ+5v5mVdqef+kH6Qze9jTpqtVufgYjYt08zyZAwNwwVBj3i1rJMnR52IxOW0LK0vBzgAkuA==",
+ "node_modules/resolve-from": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz",
+ "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "body": "^5.1.0",
- "debug": "^3.1.0",
- "faye-websocket": "~0.10.0",
- "livereload-js": "^2.3.0",
- "object-assign": "^4.1.0",
- "qs": "^6.4.0"
+ "engines": {
+ "node": ">=4"
}
},
- "node_modules/tiny-lr/node_modules/debug": {
- "version": "3.2.7",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
- "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
+ "node_modules/resolve-pkg-maps": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz",
+ "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "ms": "^2.1.1"
+ "funding": {
+ "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1"
}
},
- "node_modules/to-absolute-glob": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-2.0.2.tgz",
- "integrity": "sha512-rtwLUQEwT8ZeKQbyFJyomBRYXyE16U5VKuy0ftxLMK/PZb2fkOsg5r9kHdauuVDbsNdIBoC/HCthpidamQFXYA==",
+ "node_modules/reusify": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz",
+ "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "is-absolute": "^1.0.0",
- "is-negated-glob": "^1.0.0"
- },
"engines": {
+ "iojs": ">=1.0.0",
"node": ">=0.10.0"
}
},
- "node_modules/to-fast-properties": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
- "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==",
+ "node_modules/ripemd160": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz",
+ "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==",
+ "dev": true,
"license": "MIT",
- "engines": {
- "node": ">=4"
+ "dependencies": {
+ "hash-base": "^3.0.0",
+ "inherits": "^2.0.1"
}
},
- "node_modules/to-object-path": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz",
- "integrity": "sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==",
+ "node_modules/rsbuild-plugin-html-minifier-terser": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/rsbuild-plugin-html-minifier-terser/-/rsbuild-plugin-html-minifier-terser-1.1.1.tgz",
+ "integrity": "sha512-rbDLv+XmGeSQo9JWKSwBst3Qwx1opLqtQCnQ3t9Z0F0ZTxKOC1S/ypPv5tSn/S3GMHct5Yb76mMgh6p80hjOAQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "kind-of": "^3.0.2"
+ "@types/html-minifier-terser": "^7.0.2",
+ "html-minifier-terser": "^7.2.0"
},
- "engines": {
- "node": ">=0.10.0"
+ "peerDependencies": {
+ "@rsbuild/core": "1.x || ^1.0.1-beta.0"
+ },
+ "peerDependenciesMeta": {
+ "@rsbuild/core": {
+ "optional": true
+ }
}
},
- "node_modules/to-object-path/node_modules/kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==",
+ "node_modules/run-parallel": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
+ "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==",
"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"
+ }
+ ],
"license": "MIT",
"dependencies": {
- "is-buffer": "^1.1.5"
- },
- "engines": {
- "node": ">=0.10.0"
+ "queue-microtask": "^1.2.2"
}
},
- "node_modules/to-regex": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz",
- "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==",
+ "node_modules/safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "MIT"
+ },
+ "node_modules/safe-json-stringify": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/safe-json-stringify/-/safe-json-stringify-1.2.0.tgz",
+ "integrity": "sha512-gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg==",
+ "license": "MIT"
+ },
+ "node_modules/safer-buffer": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/sax": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz",
+ "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/scheduler": {
+ "version": "0.23.2",
+ "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.23.2.tgz",
+ "integrity": "sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "define-property": "^2.0.2",
- "extend-shallow": "^3.0.2",
- "regex-not": "^1.0.2",
- "safe-regex": "^1.1.0"
- },
- "engines": {
- "node": ">=0.10.0"
+ "loose-envify": "^1.1.0"
}
},
- "node_modules/to-regex-range": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz",
- "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==",
+ "node_modules/schema-utils": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
+ "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "is-number": "^3.0.0",
- "repeat-string": "^1.6.1"
+ "@types/json-schema": "^7.0.8",
+ "ajv": "^6.12.5",
+ "ajv-keywords": "^3.5.2"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 10.13.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/webpack"
}
},
- "node_modules/to-regex/node_modules/define-property": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz",
- "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==",
+ "node_modules/scslre": {
+ "version": "0.3.0",
+ "resolved": "https://registry.npmjs.org/scslre/-/scslre-0.3.0.tgz",
+ "integrity": "sha512-3A6sD0WYP7+QrjbfNA2FN3FsOaGGFoekCVgTyypy53gPxhbkCIjtO6YWgdrfM+n/8sI8JeXZOIxsHjMTNxQ4nQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "is-descriptor": "^1.0.2",
- "isobject": "^3.0.1"
+ "@eslint-community/regexpp": "^4.8.0",
+ "refa": "^0.12.0",
+ "regexp-ast-analysis": "^0.7.0"
},
"engines": {
- "node": ">=0.10.0"
+ "node": "^14.0.0 || >=16.0.0"
}
},
- "node_modules/to-regex/node_modules/extend-shallow": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
- "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==",
+ "node_modules/semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
"dev": true,
- "license": "MIT",
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
+ }
+ },
+ "node_modules/serialize-javascript": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz",
+ "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==",
+ "dev": true,
+ "license": "BSD-3-Clause",
"dependencies": {
- "assign-symbols": "^1.0.0",
- "is-extendable": "^1.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
+ "randombytes": "^2.1.0"
}
},
- "node_modules/to-regex/node_modules/is-descriptor": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.3.tgz",
- "integrity": "sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw==",
+ "node_modules/serve-static": {
+ "version": "1.16.2",
+ "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz",
+ "integrity": "sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "is-accessor-descriptor": "^1.0.1",
- "is-data-descriptor": "^1.0.1"
+ "encodeurl": "~2.0.0",
+ "escape-html": "~1.0.3",
+ "parseurl": "~1.3.3",
+ "send": "0.19.0"
},
"engines": {
- "node": ">= 0.4"
+ "node": ">= 0.8.0"
}
},
- "node_modules/to-regex/node_modules/is-extendable": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-1.0.1.tgz",
- "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==",
+ "node_modules/serve-static/node_modules/debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "is-plain-object": "^2.0.4"
- },
+ "ms": "2.0.0"
+ }
+ },
+ "node_modules/serve-static/node_modules/debug/node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/serve-static/node_modules/encodeurl": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz",
+ "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==",
+ "dev": true,
+ "license": "MIT",
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.8"
}
},
- "node_modules/to-regex/node_modules/is-plain-object": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz",
- "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==",
+ "node_modules/serve-static/node_modules/mime": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
+ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "isobject": "^3.0.1"
+ "bin": {
+ "mime": "cli.js"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">=4"
}
},
- "node_modules/to-through": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/to-through/-/to-through-2.0.0.tgz",
- "integrity": "sha512-+QIz37Ly7acM4EMdw2PRN389OneM5+d844tirkGp4dPKzI5OE72V9OsbFp+CIYJDahZ41ZV05hNtcPAQUAm9/Q==",
+ "node_modules/serve-static/node_modules/send": {
+ "version": "0.19.0",
+ "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz",
+ "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "through2": "^2.0.3"
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "destroy": "1.2.0",
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "etag": "~1.8.1",
+ "fresh": "0.5.2",
+ "http-errors": "2.0.0",
+ "mime": "1.6.0",
+ "ms": "2.1.3",
+ "on-finished": "2.4.1",
+ "range-parser": "~1.2.1",
+ "statuses": "2.0.1"
},
"engines": {
- "node": ">= 0.10"
+ "node": ">= 0.8.0"
}
},
- "node_modules/toidentifier": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz",
- "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==",
+ "node_modules/serve-static/node_modules/send/node_modules/encodeurl": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
+ "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=0.6"
+ "node": ">= 0.8"
}
},
- "node_modules/trim-newlines": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz",
- "integrity": "sha512-Nm4cF79FhSTzrLKGDMi3I4utBtFv8qKy4sq1enftf2gMdpqI8oVQTAfySkTz5r49giVzDj88SVZXP4CeYQwjaw==",
+ "node_modules/serve-static/node_modules/statuses": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz",
+ "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.8"
}
},
- "node_modules/trumpet": {
- "version": "1.7.2",
- "resolved": "https://registry.npmjs.org/trumpet/-/trumpet-1.7.2.tgz",
- "integrity": "sha512-hqVDLz5yp+vhRGjAvbomuo4+pjzQIbXe9JE/HPm9s4iEuf2Ew5jzgwQf+2HLpqFXZpRD8VgKPOYM8wyKmqIklg==",
- "dev": true,
+ "node_modules/set-function-length": {
+ "version": "1.2.2",
+ "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.2.tgz",
+ "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==",
"license": "MIT",
"dependencies": {
- "duplexer2": "~0.0.2",
- "html-select": "^2.3.5",
- "html-tokenize": "^1.1.1",
- "inherits": "^2.0.0",
- "readable-stream": "^1.0.27-1",
- "through2": "^1.0.0"
+ "define-data-property": "^1.1.4",
+ "es-errors": "^1.3.0",
+ "function-bind": "^1.1.2",
+ "get-intrinsic": "^1.2.4",
+ "gopd": "^1.0.1",
+ "has-property-descriptors": "^1.0.2"
+ },
+ "engines": {
+ "node": ">= 0.4"
}
},
- "node_modules/trumpet/node_modules/duplexer2": {
- "version": "0.0.2",
- "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz",
- "integrity": "sha512-+AWBwjGadtksxjOQSFDhPNQbed7icNXApT4+2BNpsXzcCBiInq2H9XW0O8sfHFaPmnQRs7cg/P0fAr2IWQSW0g==",
+ "node_modules/setimmediate": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz",
+ "integrity": "sha512-MATJdZp8sLqDl/68LfQmbP8zKPLQNV6BIZoIgrscFDQ+RsvK/BxeDQOgyxKKoh0y/8h3BqVFnCqQ/gd+reiIXA==",
"dev": true,
- "license": "BSD",
- "dependencies": {
- "readable-stream": "~1.1.9"
- }
+ "license": "MIT"
},
- "node_modules/trumpet/node_modules/isarray": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
- "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==",
+ "node_modules/setprototypeof": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz",
+ "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==",
"dev": true,
- "license": "MIT"
+ "license": "ISC"
},
- "node_modules/trumpet/node_modules/readable-stream": {
- "version": "1.1.14",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz",
- "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==",
+ "node_modules/sh-syntax": {
+ "version": "0.4.2",
+ "resolved": "https://registry.npmjs.org/sh-syntax/-/sh-syntax-0.4.2.tgz",
+ "integrity": "sha512-/l2UZ5fhGZLVZa16XQM9/Vq/hezGGbdHeVEA01uWjOL1+7Ek/gt6FquW0iKKws4a9AYPYvlz6RyVvjh3JxOteg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.1",
- "isarray": "0.0.1",
- "string_decoder": "~0.10.x"
+ "tslib": "^2.6.2"
+ },
+ "engines": {
+ "node": ">=16.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/unts"
}
},
- "node_modules/trumpet/node_modules/string_decoder": {
- "version": "0.10.31",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
- "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==",
+ "node_modules/sha.js": {
+ "version": "2.4.11",
+ "resolved": "https://registry.npmjs.org/sha.js/-/sha.js-2.4.11.tgz",
+ "integrity": "sha512-QMEp5B7cftE7APOjk5Y6xgrbWu+WkLVQwk8JNjZ8nKRciZaByEW6MubieAiToS7+dwvrjGhH8jRXz3MVd0AYqQ==",
"dev": true,
- "license": "MIT"
+ "license": "(MIT AND BSD-3-Clause)",
+ "dependencies": {
+ "inherits": "^2.0.1",
+ "safe-buffer": "^5.0.1"
+ },
+ "bin": {
+ "sha.js": "bin.js"
+ }
},
- "node_modules/trumpet/node_modules/through2": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/through2/-/through2-1.1.1.tgz",
- "integrity": "sha512-zEbpaeSMHxczpTzO1KkMHjBC1enTA68ojeaZGG4toqdASpb9t4xUZaYFBq2/9OHo5nTGFVSYd4c910OR+6wxbQ==",
+ "node_modules/shebang-command": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz",
+ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "readable-stream": ">=1.1.13-1 <1.2.0-0",
- "xtend": ">=4.0.0 <4.1.0-0"
+ "shebang-regex": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
}
},
- "node_modules/tsconfig-paths": {
- "version": "3.15.0",
- "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz",
- "integrity": "sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==",
+ "node_modules/shebang-regex": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz",
+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "@types/json5": "^0.0.29",
- "json5": "^1.0.2",
- "minimist": "^1.2.6",
- "strip-bom": "^3.0.0"
+ "engines": {
+ "node": ">=8"
}
},
- "node_modules/tsconfig-paths/node_modules/json5": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.2.tgz",
- "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==",
- "dev": true,
+ "node_modules/side-channel": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz",
+ "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==",
"license": "MIT",
"dependencies": {
- "minimist": "^1.2.0"
+ "call-bind": "^1.0.7",
+ "es-errors": "^1.3.0",
+ "get-intrinsic": "^1.2.4",
+ "object-inspect": "^1.13.1"
},
- "bin": {
- "json5": "lib/cli.js"
+ "engines": {
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/tslib": {
- "version": "2.7.0",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz",
- "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==",
- "dev": true,
- "license": "0BSD"
- },
- "node_modules/tty-browserify": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz",
- "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==",
+ "node_modules/sort-object-keys": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/sort-object-keys/-/sort-object-keys-1.1.3.tgz",
+ "integrity": "sha512-855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg==",
"dev": true,
"license": "MIT"
},
- "node_modules/type": {
- "version": "2.7.3",
- "resolved": "https://registry.npmjs.org/type/-/type-2.7.3.tgz",
- "integrity": "sha512-8j+1QmAbPvLZow5Qpi6NCaN8FB60p/6x8/vfNqOk/hC+HuvFZhL4+WfekuhQLiqFZXOgQdrs3B+XxEmCc6b3FQ==",
- "dev": true,
- "license": "ISC"
- },
- "node_modules/type-check": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
- "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
+ "node_modules/sort-package-json": {
+ "version": "2.10.1",
+ "resolved": "https://registry.npmjs.org/sort-package-json/-/sort-package-json-2.10.1.tgz",
+ "integrity": "sha512-d76wfhgUuGypKqY72Unm5LFnMpACbdxXsLPcL27pOsSrmVqH3PztFp1uq+Z22suk15h7vXmTesuh2aEjdCqb5w==",
"dev": true,
"license": "MIT",
"dependencies": {
- "prelude-ls": "^1.2.1"
+ "detect-indent": "^7.0.1",
+ "detect-newline": "^4.0.0",
+ "get-stdin": "^9.0.0",
+ "git-hooks-list": "^3.0.0",
+ "globby": "^13.1.2",
+ "is-plain-obj": "^4.1.0",
+ "semver": "^7.6.0",
+ "sort-object-keys": "^1.1.3"
},
- "engines": {
- "node": ">= 0.8.0"
+ "bin": {
+ "sort-package-json": "cli.js"
}
},
- "node_modules/type-fest": {
- "version": "0.13.1",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz",
- "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==",
+ "node_modules/sort-package-json/node_modules/detect-newline": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-4.0.1.tgz",
+ "integrity": "sha512-qE3Veg1YXzGHQhlA6jzebZN2qVf6NX+A7m7qlhCGG30dJixrAQhYOsJjsnBjJkCSmuOPpCk30145fr8FV0bzog==",
"dev": true,
- "license": "(MIT OR CC0-1.0)",
- "optional": true,
+ "license": "MIT",
"engines": {
- "node": ">=10"
+ "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/type-is": {
- "version": "1.6.18",
- "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz",
- "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==",
+ "node_modules/sort-package-json/node_modules/globby": {
+ "version": "13.2.2",
+ "resolved": "https://registry.npmjs.org/globby/-/globby-13.2.2.tgz",
+ "integrity": "sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==",
"dev": true,
"license": "MIT",
"dependencies": {
- "media-typer": "0.3.0",
- "mime-types": "~2.1.24"
+ "dir-glob": "^3.0.1",
+ "fast-glob": "^3.3.0",
+ "ignore": "^5.2.4",
+ "merge2": "^1.4.1",
+ "slash": "^4.0.0"
},
"engines": {
- "node": ">= 0.6"
+ "node": "^12.20.0 || ^14.13.1 || >=16.0.0"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/typed-array-buffer": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz",
- "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==",
+ "node_modules/sort-package-json/node_modules/semver": {
+ "version": "7.6.3",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
+ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.7",
- "es-errors": "^1.3.0",
- "is-typed-array": "^1.1.13"
+ "license": "ISC",
+ "bin": {
+ "semver": "bin/semver.js"
},
"engines": {
- "node": ">= 0.4"
+ "node": ">=10"
}
},
- "node_modules/typed-array-byte-length": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz",
- "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==",
+ "node_modules/sort-package-json/node_modules/slash": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/slash/-/slash-4.0.0.tgz",
+ "integrity": "sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "call-bind": "^1.0.7",
- "for-each": "^0.3.3",
- "gopd": "^1.0.1",
- "has-proto": "^1.0.3",
- "is-typed-array": "^1.1.13"
- },
"engines": {
- "node": ">= 0.4"
+ "node": ">=12"
},
"funding": {
- "url": "https://github.com/sponsors/ljharb"
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/typed-array-byte-offset": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/typed-array-byte-offset/-/typed-array-byte-offset-1.0.2.tgz",
- "integrity": "sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==",
+ "node_modules/space-separated-tokens": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz",
+ "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "available-typed-arrays": "^1.0.7",
- "call-bind": "^1.0.7",
- "for-each": "^0.3.3",
- "gopd": "^1.0.1",
- "has-proto": "^1.0.3",
- "is-typed-array": "^1.1.13"
- },
- "engines": {
- "node": ">= 0.4"
- },
"funding": {
- "url": "https://github.com/sponsors/ljharb"
+ "type": "github",
+ "url": "https://github.com/sponsors/wooorm"
}
},
- "node_modules/typed-array-length": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.6.tgz",
- "integrity": "sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==",
+ "node_modules/split": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/split/-/split-1.0.1.tgz",
+ "integrity": "sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg==",
"dev": true,
"license": "MIT",
"dependencies": {
- "call-bind": "^1.0.7",
- "for-each": "^0.3.3",
- "gopd": "^1.0.1",
- "has-proto": "^1.0.3",
- "is-typed-array": "^1.1.13",
- "possible-typed-array-names": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/typedarray": {
- "version": "0.0.6",
- "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
- "integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/typedarray-to-buffer": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-4.0.0.tgz",
- "integrity": "sha512-6dOYeZfS3O9RtRD1caom0sMxgK59b27+IwoNy8RDPsmslSGOyU+mpTamlaIW7aNKi90ZQZ9DFaZL3YRoiSCULQ==",
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ],
- "license": "MIT"
- },
- "node_modules/typescript": {
- "version": "5.6.2",
- "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.2.tgz",
- "integrity": "sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==",
- "dev": true,
- "license": "Apache-2.0",
- "bin": {
- "tsc": "bin/tsc",
- "tsserver": "bin/tsserver"
+ "through": "2"
},
"engines": {
- "node": ">=14.17"
+ "node": "*"
}
},
- "node_modules/ua-parser-js": {
- "version": "1.0.39",
- "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.39.tgz",
- "integrity": "sha512-k24RCVWlEcjkdOxYmVJgeD/0a1TiSpqLg+ZalVGV9lsnr4yqu0w7tX/x2xX6G4zpkgQnRf89lxuZ1wsbjXM8lw==",
- "funding": [
- {
- "type": "opencollective",
- "url": "https://opencollective.com/ua-parser-js"
- },
- {
- "type": "paypal",
- "url": "https://paypal.me/faisalman"
- },
- {
- "type": "github",
- "url": "https://github.com/sponsors/faisalman"
- }
- ],
+ "node_modules/stable-hash": {
+ "version": "0.0.4",
+ "resolved": "https://registry.npmjs.org/stable-hash/-/stable-hash-0.0.4.tgz",
+ "integrity": "sha512-LjdcbuBeLcdETCrPn9i8AYAZ1eCtu4ECAWtP7UleOiZ9LzVxRzzUZEoZ8zB24nhkQnDWyET0I+3sWokSDS3E7g==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/storybook": {
+ "version": "8.3.5",
+ "resolved": "https://registry.npmjs.org/storybook/-/storybook-8.3.5.tgz",
+ "integrity": "sha512-hYQVtP2l+3kO8oKDn4fjXXQYxgTRsj/LaV6lUMJH0zt+OhVmDXKJLxmdUP4ieTm0T8wEbSYosFavgPcQZlxRfw==",
+ "dev": true,
"license": "MIT",
+ "dependencies": {
+ "@storybook/core": "8.3.5"
+ },
"bin": {
- "ua-parser-js": "script/cli.js"
+ "getstorybook": "bin/index.cjs",
+ "sb": "bin/index.cjs",
+ "storybook": "bin/index.cjs"
},
- "engines": {
- "node": "*"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/storybook"
}
},
- "node_modules/ultron": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz",
- "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==",
- "license": "MIT"
+ "node_modules/storybook-builder-rsbuild": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/storybook-builder-rsbuild/-/storybook-builder-rsbuild-0.1.1.tgz",
+ "integrity": "sha512-M1LUSWVa/LJyLEPgT/stU91Wqaov1LC4T9T6QuTER/IrtvnI2ENfUqu7fdW/CuBNhKJ08oz6aBr6KBRYxwwtMA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@rsbuild/plugin-type-check": "^1.0.1",
+ "@storybook/addon-docs": "^8.2.1",
+ "@storybook/core-webpack": "^8.2.1",
+ "browser-assert": "^1.2.1",
+ "case-sensitive-paths-webpack-plugin": "^2.4.0",
+ "cjs-module-lexer": "^1.4.1",
+ "constants-browserify": "^1.0.0",
+ "es-module-lexer": "^1.5.4",
+ "express": "^4.21.0",
+ "fs-extra": "^11.2.0",
+ "magic-string": "^0.30.11",
+ "path-browserify": "^1.0.1",
+ "process": "^0.11.10",
+ "rsbuild-plugin-html-minifier-terser": "^1.1.1",
+ "ts-dedent": "^2.2.0",
+ "url": "^0.11.4",
+ "util": "^0.12.5",
+ "util-deprecate": "^1.0.2"
+ },
+ "peerDependencies": {
+ "@rsbuild/core": "^1.0.1",
+ "storybook": "^8.2.1"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
+ }
},
- "node_modules/umd": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/umd/-/umd-3.0.3.tgz",
- "integrity": "sha512-4IcGSufhFshvLNcMCV80UnQVlZ5pMOC8mvNPForqwA4+lzYQuetTESLDQkeLmihq8bRcnpbQa48Wb8Lh16/xow==",
+ "node_modules/storybook-builder-rsbuild/node_modules/fs-extra": {
+ "version": "11.2.0",
+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz",
+ "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==",
"dev": true,
"license": "MIT",
- "bin": {
- "umd": "bin/cli.js"
+ "dependencies": {
+ "graceful-fs": "^4.2.0",
+ "jsonfile": "^6.0.1",
+ "universalify": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=14.14"
}
},
- "node_modules/unbox-primitive": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.2.tgz",
- "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==",
+ "node_modules/storybook-builder-rsbuild/node_modules/jsonfile": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz",
+ "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==",
"dev": true,
"license": "MIT",
"dependencies": {
- "call-bind": "^1.0.2",
- "has-bigints": "^1.0.2",
- "has-symbols": "^1.0.3",
- "which-boxed-primitive": "^1.0.2"
+ "universalify": "^2.0.0"
},
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
+ "optionalDependencies": {
+ "graceful-fs": "^4.1.6"
}
},
- "node_modules/unc-path-regex": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/unc-path-regex/-/unc-path-regex-0.1.2.tgz",
- "integrity": "sha512-eXL4nmJT7oCpkZsHZUOJo8hcX3GbsiDOa0Qu9F646fi8dT3XuSVopVqAcEiVzSKKH7UoDti23wNX3qGFxcW5Qg==",
+ "node_modules/storybook-builder-rsbuild/node_modules/universalify": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz",
+ "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 10.0.0"
}
},
- "node_modules/undeclared-identifiers": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/undeclared-identifiers/-/undeclared-identifiers-1.1.3.tgz",
- "integrity": "sha512-pJOW4nxjlmfwKApE4zvxLScM/njmwj/DiUBv7EabwE4O8kRUy+HIwxQtZLBPll/jx1LJyBcqNfB3/cpv9EZwOw==",
+ "node_modules/storybook-html-rsbuild": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/storybook-html-rsbuild/-/storybook-html-rsbuild-0.1.1.tgz",
+ "integrity": "sha512-iSw+GJCt93jXE4iHqkIuSm5vYV6jZs/Dyt/+Zw/W+NLySBE4PCSEqHKeTEPTxYCHeqlbkpe0KC+OLWUsGZLbmA==",
"dev": true,
- "license": "Apache-2.0",
+ "license": "MIT",
"dependencies": {
- "acorn-node": "^1.3.0",
- "dash-ast": "^1.0.0",
- "get-assigned-identifiers": "^1.2.0",
- "simple-concat": "^1.0.0",
- "xtend": "^4.0.1"
+ "@rollup/pluginutils": "^5.1.2",
+ "@storybook/html": "^8.2.1",
+ "@types/node": "^18.0.0",
+ "find-up": "^5.0.0",
+ "magic-string": "^0.30.11",
+ "resolve": "^1.22.8",
+ "storybook-builder-rsbuild": "0.1.1",
+ "tsconfig-paths": "^4.2.0"
},
- "bin": {
- "undeclared-identifiers": "bin.js"
+ "engines": {
+ "node": ">=18.0.0"
+ },
+ "peerDependencies": {
+ "@rsbuild/core": "^1.0.1",
+ "storybook": "^8.2.1",
+ "typescript": ">= 4.2.x"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
}
},
- "node_modules/undertaker": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/undertaker/-/undertaker-1.3.0.tgz",
- "integrity": "sha512-/RXwi5m/Mu3H6IHQGww3GNt1PNXlbeCuclF2QYR14L/2CHPz3DFZkvB5hZ0N/QUkiXWCACML2jXViIQEQc2MLg==",
+ "node_modules/storybook-html-rsbuild/node_modules/@types/node": {
+ "version": "18.19.54",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.54.tgz",
+ "integrity": "sha512-+BRgt0G5gYjTvdLac9sIeE0iZcJxi4Jc4PV5EUzqi+88jmQLr+fRZdv2tCTV7IHKSGxM6SaLoOXQWWUiLUItMw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "arr-flatten": "^1.0.1",
- "arr-map": "^2.0.0",
- "bach": "^1.0.0",
- "collection-map": "^1.0.0",
- "es6-weak-map": "^2.0.1",
- "fast-levenshtein": "^1.0.0",
- "last-run": "^1.1.0",
- "object.defaults": "^1.0.0",
- "object.reduce": "^1.0.0",
- "undertaker-registry": "^1.0.0"
- },
- "engines": {
- "node": ">= 0.10"
+ "undici-types": "~5.26.4"
}
},
- "node_modules/undertaker-registry": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/undertaker-registry/-/undertaker-registry-1.0.1.tgz",
- "integrity": "sha512-UR1khWeAjugW3548EfQmL9Z7pGMlBgXteQpr1IZeZBtnkCJQJIJ1Scj0mb9wQaPvUZ9Q17XqW6TIaPchJkyfqw==",
+ "node_modules/storybook-html-rsbuild/node_modules/tsconfig-paths": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-4.2.0.tgz",
+ "integrity": "sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==",
"dev": true,
"license": "MIT",
+ "dependencies": {
+ "json5": "^2.2.2",
+ "minimist": "^1.2.6",
+ "strip-bom": "^3.0.0"
+ },
"engines": {
- "node": ">= 0.10"
+ "node": ">=6"
}
},
- "node_modules/undertaker/node_modules/fast-levenshtein": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-1.1.4.tgz",
- "integrity": "sha512-Ia0sQNrMPXXkqVFt6w6M1n1oKo3NfKs+mvaV811Jwir7vAk9a6PVV9VPYf6X3BU97QiLEmuW3uXH9u87zDFfdw==",
- "dev": true,
- "license": "MIT"
- },
- "node_modules/undici-types": {
+ "node_modules/storybook-html-rsbuild/node_modules/undici-types": {
"version": "5.26.5",
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz",
"integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==",
"dev": true,
"license": "MIT"
},
- "node_modules/unicode-canonical-property-names-ecmascript": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.1.tgz",
- "integrity": "sha512-dA8WbNeb2a6oQzAQ55YlT5vQAWGV9WXOsi3SskE3bcCdM0P4SDd+24zS/OCacdRq5BkdsRj9q3Pg6YyQoxIGqg==",
+ "node_modules/stream-browserify": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-3.0.0.tgz",
+ "integrity": "sha512-H73RAHsVBapbim0tU2JwwOiXUj+fikfiaoYAKHF3VJfA0pe2BCzkhAHBlLG6REzE+2WNZcxOXjK7lkso+9euLA==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": ">=4"
+ "dependencies": {
+ "inherits": "~2.0.4",
+ "readable-stream": "^3.5.0"
}
},
- "node_modules/unicode-match-property-ecmascript": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/unicode-match-property-ecmascript/-/unicode-match-property-ecmascript-2.0.0.tgz",
- "integrity": "sha512-5kaZCrbp5mmbz5ulBkDkbY0SsPOjKqVS35VpL9ulMPfSl0J0Xsm+9Evphv9CoIZFwre7aJoa94AY6seMKGVN5Q==",
+ "node_modules/stream-browserify/node_modules/readable-stream": {
+ "version": "3.6.2",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
+ "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "unicode-canonical-property-names-ecmascript": "^2.0.0",
- "unicode-property-aliases-ecmascript": "^2.0.0"
+ "inherits": "^2.0.3",
+ "string_decoder": "^1.1.1",
+ "util-deprecate": "^1.0.1"
},
"engines": {
- "node": ">=4"
+ "node": ">= 6"
}
},
- "node_modules/unicode-match-property-value-ecmascript": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.2.0.tgz",
- "integrity": "sha512-4IehN3V/+kkr5YeSSDDQG8QLqO26XpL2XP3GQtqwlT/QYSECAwFztxVHjlbh0+gjJ3XmNLS0zDsbgs9jWKExLg==",
+ "node_modules/stream-combiner": {
+ "version": "0.2.2",
+ "resolved": "https://registry.npmjs.org/stream-combiner/-/stream-combiner-0.2.2.tgz",
+ "integrity": "sha512-6yHMqgLYDzQDcAkL+tjJDC5nSNuNIx0vZtRZeiPh7Saef7VHX9H5Ijn9l2VIol2zaNYlYEX6KyuT/237A58qEQ==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": ">=4"
+ "dependencies": {
+ "duplexer": "~0.1.1",
+ "through": "~2.3.4"
}
},
- "node_modules/unicode-property-aliases-ecmascript": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.1.0.tgz",
- "integrity": "sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==",
+ "node_modules/stream-http": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-3.2.0.tgz",
+ "integrity": "sha512-Oq1bLqisTyK3TSCXpPbT4sdeYNdmyZJv1LxpEm2vu1ZhK89kSE5YXwZc3cWk0MagGaKriBh9mCFbVGtO+vY29A==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": ">=4"
+ "dependencies": {
+ "builtin-status-codes": "^3.0.0",
+ "inherits": "^2.0.4",
+ "readable-stream": "^3.6.0",
+ "xtend": "^4.0.2"
}
},
- "node_modules/union-value": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/union-value/-/union-value-1.0.1.tgz",
- "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==",
+ "node_modules/stream-http/node_modules/readable-stream": {
+ "version": "3.6.2",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
+ "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "arr-union": "^3.1.0",
- "get-value": "^2.0.6",
- "is-extendable": "^0.1.1",
- "set-value": "^2.0.1"
+ "inherits": "^2.0.3",
+ "string_decoder": "^1.1.1",
+ "util-deprecate": "^1.0.1"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 6"
}
},
- "node_modules/unique-stream": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/unique-stream/-/unique-stream-2.3.1.tgz",
- "integrity": "sha512-2nY4TnBE70yoxHkDli7DMazpWiP7xMdCYqU2nBRO0UB+ZpEkGsSija7MvmvnZFUeC+mrgiUfcHSr3LmRFIg4+A==",
+ "node_modules/stream-shift": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.3.tgz",
+ "integrity": "sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==",
+ "license": "MIT"
+ },
+ "node_modules/string_decoder": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
+ "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "json-stable-stringify-without-jsonify": "^1.0.1",
- "through2-filter": "^3.0.0"
+ "safe-buffer": "~5.2.0"
}
},
- "node_modules/unique-string": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-1.0.0.tgz",
- "integrity": "sha512-ODgiYu03y5g76A1I9Gt0/chLCzQjvzDy7DsZGsLOE/1MrF6wriEskSncj1+/C58Xk/kPZDppSctDybCwOSaGAg==",
+ "node_modules/strip-ansi": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
"dev": true,
"license": "MIT",
"dependencies": {
- "crypto-random-string": "^1.0.0"
+ "ansi-regex": "^5.0.1"
},
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/strip-bom": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
+ "integrity": "sha512-vavAMRXOgBVNF6nyEEmL3DBK19iRpDcoIwW+swQ+CbGiu7lju6t+JklA1MHweoWtadgt4ISVUsXLyDq34ddcwA==",
+ "dev": true,
+ "license": "MIT",
"engines": {
"node": ">=4"
}
},
- "node_modules/universalify": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
- "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
+ "node_modules/strip-json-comments": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz",
+ "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">= 4.0.0"
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/unpipe": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
- "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==",
+ "node_modules/stylus": {
+ "version": "0.63.0",
+ "resolved": "https://registry.npmjs.org/stylus/-/stylus-0.63.0.tgz",
+ "integrity": "sha512-OMlgrTCPzE/ibtRMoeLVhOY0RcNuNWh0rhAVqeKnk/QwcuUKQbnqhZ1kg2vzD8VU/6h3FoPTq4RJPHgLBvX6Bw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@adobe/css-tools": "~4.3.3",
+ "debug": "^4.3.2",
+ "glob": "^7.1.6",
+ "sax": "~1.3.0",
+ "source-map": "^0.7.3"
+ },
+ "bin": {
+ "stylus": "bin/stylus"
+ },
+ "engines": {
+ "node": "*"
+ },
+ "funding": {
+ "url": "https://opencollective.com/stylus"
+ }
+ },
+ "node_modules/stylus-loader": {
+ "version": "8.1.0",
+ "resolved": "https://registry.npmjs.org/stylus-loader/-/stylus-loader-8.1.0.tgz",
+ "integrity": "sha512-+Xcn5fd0azjzSXxclT31wVviXlXbBfcBamFgAQimN2qug9ZQf0OmRlK+/MJwLs1V8DJWhTFGuFwmOTkfV4KnYQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "fast-glob": "^3.3.2",
+ "normalize-path": "^3.0.0"
+ },
+ "engines": {
+ "node": ">= 18.12.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/webpack"
+ },
+ "peerDependencies": {
+ "@rspack/core": "0.x || 1.x",
+ "stylus": ">=0.52.4",
+ "webpack": "^5.0.0"
+ },
+ "peerDependenciesMeta": {
+ "@rspack/core": {
+ "optional": true
+ },
+ "webpack": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/stylus/node_modules/glob": {
+ "version": "7.2.3",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
+ "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
+ "deprecated": "Glob versions prior to v9 are no longer supported",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.1.1",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ },
+ "engines": {
+ "node": "*"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/stylus/node_modules/source-map": {
+ "version": "0.7.4",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
+ "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
"dev": true,
- "license": "MIT",
+ "license": "BSD-3-Clause",
"engines": {
- "node": ">= 0.8"
+ "node": ">= 8"
}
},
- "node_modules/unset-value": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz",
- "integrity": "sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==",
- "dev": true,
+ "node_modules/superagent": {
+ "version": "10.1.0",
+ "resolved": "https://registry.npmjs.org/superagent/-/superagent-10.1.0.tgz",
+ "integrity": "sha512-JMmik7PbnXGlq7g528Gi6apHbVbTz2vrE3du6fuG4kIPSb2PnLoSOPvfjKn8aQYuJcBWAKW6ZG90qPPsE5jZxQ==",
"license": "MIT",
"dependencies": {
- "has-value": "^0.3.1",
- "isobject": "^3.0.0"
+ "component-emitter": "^1.3.0",
+ "cookiejar": "^2.1.4",
+ "debug": "^4.3.4",
+ "fast-safe-stringify": "^2.1.1",
+ "form-data": "^4.0.0",
+ "formidable": "^3.5.1",
+ "methods": "^1.1.2",
+ "mime": "2.6.0",
+ "qs": "^6.11.0"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">=14.18.0"
}
},
- "node_modules/unset-value/node_modules/has-value": {
- "version": "0.3.1",
- "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz",
- "integrity": "sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==",
- "dev": true,
+ "node_modules/superagent/node_modules/mime": {
+ "version": "2.6.0",
+ "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz",
+ "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==",
"license": "MIT",
- "dependencies": {
- "get-value": "^2.0.3",
- "has-values": "^0.1.4",
- "isobject": "^2.0.0"
+ "bin": {
+ "mime": "cli.js"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">=4.0.0"
}
},
- "node_modules/unset-value/node_modules/has-value/node_modules/isobject": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
- "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==",
+ "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,
"license": "MIT",
"dependencies": {
- "isarray": "1.0.0"
+ "has-flag": "^3.0.0"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">=4"
}
},
- "node_modules/unset-value/node_modules/has-values": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz",
- "integrity": "sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==",
+ "node_modules/supports-preserve-symlinks-flag": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz",
+ "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=0.10.0"
+ "node": ">= 0.4"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
}
},
- "node_modules/upath": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz",
- "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==",
+ "node_modules/synckit": {
+ "version": "0.9.1",
+ "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.9.1.tgz",
+ "integrity": "sha512-7gr8p9TQP6RAHusBOSLs46F4564ZrjV8xFmw5zCmgmhGUcw2hxsShhJ6CEiHQMgPDwAQ1fWHPM0ypc4RMAig4A==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": ">=4",
- "yarn": "*"
- }
- },
- "node_modules/update-browserslist-db": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz",
- "integrity": "sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==",
- "funding": [
- {
- "type": "opencollective",
- "url": "https://opencollective.com/browserslist"
- },
- {
- "type": "tidelift",
- "url": "https://tidelift.com/funding/github/npm/browserslist"
- },
- {
- "type": "github",
- "url": "https://github.com/sponsors/ai"
- }
- ],
- "license": "MIT",
"dependencies": {
- "escalade": "^3.1.2",
- "picocolors": "^1.0.1"
+ "@pkgr/core": "^0.1.0",
+ "tslib": "^2.6.2"
},
- "bin": {
- "update-browserslist-db": "cli.js"
+ "engines": {
+ "node": "^14.18.0 || >=16.0.0"
},
- "peerDependencies": {
- "browserslist": ">= 4.21.0"
+ "funding": {
+ "url": "https://opencollective.com/unts"
}
},
- "node_modules/uri-js": {
- "version": "4.4.1",
- "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
- "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
+ "node_modules/tapable": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
+ "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
"dev": true,
- "license": "BSD-2-Clause",
- "dependencies": {
- "punycode": "^2.1.0"
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
}
},
- "node_modules/uri-js/node_modules/punycode": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz",
- "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==",
+ "node_modules/telejson": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/telejson/-/telejson-7.2.0.tgz",
+ "integrity": "sha512-1QTEcJkJEhc8OnStBx/ILRu5J2p0GjvWsBx56bmZRqnrkdBMUe+nX92jxV+p3dB4CP6PZCdJMQJwCggkNBMzkQ==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": ">=6"
+ "dependencies": {
+ "memoizerific": "^1.11.3"
}
},
- "node_modules/urix": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz",
- "integrity": "sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==",
- "deprecated": "Please see https://github.com/lydell/urix#deprecated",
+ "node_modules/terser": {
+ "version": "5.33.0",
+ "resolved": "https://registry.npmjs.org/terser/-/terser-5.33.0.tgz",
+ "integrity": "sha512-JuPVaB7s1gdFKPKTelwUyRq5Sid2A3Gko2S0PncwdBq7kN9Ti9HPWDQ06MPsEDGsZeVESjKEnyGy68quBk1w6g==",
"dev": true,
- "license": "MIT"
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "@jridgewell/source-map": "^0.3.3",
+ "acorn": "^8.8.2",
+ "commander": "^2.20.0",
+ "source-map-support": "~0.5.20"
+ },
+ "bin": {
+ "terser": "bin/terser"
+ },
+ "engines": {
+ "node": ">=10"
+ }
},
- "node_modules/url": {
- "version": "0.11.4",
- "resolved": "https://registry.npmjs.org/url/-/url-0.11.4.tgz",
- "integrity": "sha512-oCwdVC7mTuWiPyjLUz/COz5TLk6wgp0RCsN+wHZ2Ekneac9w8uuV0njcbbie2ME+Vs+d6duwmYuR3HgQXs1fOg==",
+ "node_modules/terser-webpack-plugin": {
+ "version": "5.3.10",
+ "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.3.10.tgz",
+ "integrity": "sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==",
"dev": true,
"license": "MIT",
"dependencies": {
- "punycode": "^1.4.1",
- "qs": "^6.12.3"
+ "@jridgewell/trace-mapping": "^0.3.20",
+ "jest-worker": "^27.4.5",
+ "schema-utils": "^3.1.1",
+ "serialize-javascript": "^6.0.1",
+ "terser": "^5.26.0"
},
"engines": {
- "node": ">= 0.4"
+ "node": ">= 10.13.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/webpack"
+ },
+ "peerDependencies": {
+ "webpack": "^5.1.0"
+ },
+ "peerDependenciesMeta": {
+ "@swc/core": {
+ "optional": true
+ },
+ "esbuild": {
+ "optional": true
+ },
+ "uglify-js": {
+ "optional": true
+ }
}
},
- "node_modules/url-join": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/url-join/-/url-join-4.0.1.tgz",
- "integrity": "sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA==",
+ "node_modules/terser/node_modules/commander": {
+ "version": "2.20.3",
+ "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
+ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==",
"dev": true,
"license": "MIT"
},
- "node_modules/use": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz",
- "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==",
+ "node_modules/terser/node_modules/source-map": {
+ "version": "0.6.1",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
+ "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
"dev": true,
- "license": "MIT",
+ "license": "BSD-3-Clause",
"engines": {
"node": ">=0.10.0"
}
},
- "node_modules/utf8-stream": {
- "version": "0.0.0",
- "resolved": "https://registry.npmjs.org/utf8-stream/-/utf8-stream-0.0.0.tgz",
- "integrity": "sha512-X92xJPYQcFbRH4IaCH7zUEc8JLgGlIum7JFvo3AVTCaxMrJKEMrpoEkmE3P2NV0nALyM/rDHqIW628jt+BCO+w==",
+ "node_modules/terser/node_modules/source-map-support": {
+ "version": "0.5.21",
+ "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.21.tgz",
+ "integrity": "sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w==",
"dev": true,
"license": "MIT",
"dependencies": {
- "readable-stream": "~1.0.2"
+ "buffer-from": "^1.0.0",
+ "source-map": "^0.6.0"
}
},
- "node_modules/utf8-stream/node_modules/isarray": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz",
- "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==",
+ "node_modules/text-table": {
+ "version": "0.2.0",
+ "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
+ "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
"dev": true,
"license": "MIT"
},
- "node_modules/utf8-stream/node_modules/readable-stream": {
- "version": "1.0.34",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.0.34.tgz",
- "integrity": "sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg==",
+ "node_modules/through": {
+ "version": "2.3.8",
+ "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
+ "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.1",
- "isarray": "0.0.1",
- "string_decoder": "~0.10.x"
- }
+ "license": "MIT"
},
- "node_modules/utf8-stream/node_modules/string_decoder": {
- "version": "0.10.31",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz",
- "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==",
+ "node_modules/tiny-invariant": {
+ "version": "1.3.3",
+ "resolved": "https://registry.npmjs.org/tiny-invariant/-/tiny-invariant-1.3.3.tgz",
+ "integrity": "sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==",
"dev": true,
"license": "MIT"
},
- "node_modules/util": {
- "version": "0.12.5",
- "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz",
- "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==",
+ "node_modules/tinyrainbow": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/tinyrainbow/-/tinyrainbow-1.2.0.tgz",
+ "integrity": "sha512-weEDEq7Z5eTHPDh4xjX789+fHfF+P8boiFB+0vbWzpbnbsEr/GRaohi/uMKxg8RZMXnl1ItAi/IUHWMsjDV7kQ==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "inherits": "^2.0.3",
- "is-arguments": "^1.0.4",
- "is-generator-function": "^1.0.7",
- "is-typed-array": "^1.1.3",
- "which-typed-array": "^1.1.2"
+ "engines": {
+ "node": ">=14.0.0"
}
},
- "node_modules/util-deprecate": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
- "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
- "license": "MIT"
- },
- "node_modules/utils-merge": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
- "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==",
+ "node_modules/tinyspy": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/tinyspy/-/tinyspy-3.0.2.tgz",
+ "integrity": "sha512-n1cw8k1k0x4pgA2+9XrOkFydTerNcJ1zWCO5Nn9scWHTD+5tp8dghT2x1uduQePZTZgd3Tupf+x9BxJjeJi77Q==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">= 0.4.0"
+ "node": ">=14.0.0"
}
},
- "node_modules/v8flags": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/v8flags/-/v8flags-3.2.0.tgz",
- "integrity": "sha512-mH8etigqMfiGWdeXpaaqGfs6BndypxusHHcv2qSHyZkGEznCd/qAXCWWRzeowtL54147cktFOC4P5y+kl8d8Jg==",
+ "node_modules/to-fast-properties": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
+ "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "homedir-polyfill": "^1.0.1"
- },
"engines": {
- "node": ">= 0.10"
+ "node": ">=4"
}
},
- "node_modules/validate-npm-package-license": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
- "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
+ "node_modules/toidentifier": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz",
+ "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==",
"dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "spdx-correct": "^3.0.0",
- "spdx-expression-parse": "^3.0.0"
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.6"
}
},
- "node_modules/value-or-function": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/value-or-function/-/value-or-function-3.0.0.tgz",
- "integrity": "sha512-jdBB2FrWvQC/pnPtIqcLsMaQgjhdb6B7tk1MMyTKapox+tQZbdRP4uLxu/JY0t7fbfDCUMnuelzEYv5GsxHhdg==",
+ "node_modules/ts-api-utils": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/ts-api-utils/-/ts-api-utils-1.3.0.tgz",
+ "integrity": "sha512-UQMIo7pb8WRomKR1/+MFVLTroIvDVtMX3K6OUir8ynLyzB8Jeriont2bTAtmNPa1ekAgN7YPDyf6V+ygrdU+eQ==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">= 0.10"
+ "node": ">=16"
+ },
+ "peerDependencies": {
+ "typescript": ">=4.2.0"
}
},
- "node_modules/vinyl": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-2.2.1.tgz",
- "integrity": "sha512-LII3bXRFBZLlezoG5FfZVcXflZgWP/4dCwKtxd5ky9+LOtM4CS3bIRQsmR1KMnMW07jpE8fqR2lcxPZ+8sJIcw==",
+ "node_modules/ts-dedent": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/ts-dedent/-/ts-dedent-2.2.0.tgz",
+ "integrity": "sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "clone": "^2.1.1",
- "clone-buffer": "^1.0.0",
- "clone-stats": "^1.0.0",
- "cloneable-readable": "^1.0.0",
- "remove-trailing-separator": "^1.0.1",
- "replace-ext": "^1.0.0"
- },
"engines": {
- "node": ">= 0.10"
+ "node": ">=6.10"
}
},
- "node_modules/vinyl-buffer": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/vinyl-buffer/-/vinyl-buffer-1.0.1.tgz",
- "integrity": "sha512-LRBE2/g3C1hSHL2k/FynSZcVTRhEw8sb08oKGt/0hukZXwrh2m8nfy+r5yLhGEk7eFFuclhyIuPct/Bxlxk6rg==",
+ "node_modules/tslib": {
+ "version": "2.7.0",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.7.0.tgz",
+ "integrity": "sha512-gLXCKdN1/j47AiHiOkJN69hJmcbGTHI0ImLmbYLHykhgeN0jVGola9yVjFgzCUklsZQMW55o+dW7IXv3RCXDzA==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "bl": "^1.2.1",
- "through2": "^2.0.3"
- }
+ "license": "0BSD"
+ },
+ "node_modules/tty-browserify": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.1.tgz",
+ "integrity": "sha512-C3TaO7K81YvjCgQH9Q1S3R3P3BtN3RIM8n+OvX4il1K1zgE8ZhI0op7kClgkxtutIE8hQrcrHBXvIheqKUUCxw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/tween-functions": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/tween-functions/-/tween-functions-1.2.0.tgz",
+ "integrity": "sha512-PZBtLYcCLtEcjL14Fzb1gSxPBeL7nWvGhO5ZFPGqziCcr8uvHp0NDmdjBchp6KHL+tExcg0m3NISmKxhU394dA==",
+ "dev": true,
+ "license": "BSD"
},
- "node_modules/vinyl-fs": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-3.0.3.tgz",
- "integrity": "sha512-vIu34EkyNyJxmP0jscNzWBSygh7VWhqun6RmqVfXePrOwi9lhvRs//dOaGOTRUQr4tx7/zd26Tk5WeSVZitgng==",
+ "node_modules/type-check": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
+ "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==",
"dev": true,
"license": "MIT",
"dependencies": {
- "fs-mkdirp-stream": "^1.0.0",
- "glob-stream": "^6.1.0",
- "graceful-fs": "^4.0.0",
- "is-valid-glob": "^1.0.0",
- "lazystream": "^1.0.0",
- "lead": "^1.0.0",
- "object.assign": "^4.0.4",
- "pumpify": "^1.3.5",
- "readable-stream": "^2.3.3",
- "remove-bom-buffer": "^3.0.0",
- "remove-bom-stream": "^1.2.0",
- "resolve-options": "^1.1.0",
- "through2": "^2.0.0",
- "to-through": "^2.0.0",
- "value-or-function": "^3.0.0",
- "vinyl": "^2.0.0",
- "vinyl-sourcemap": "^1.1.0"
+ "prelude-ls": "^1.2.1"
},
"engines": {
- "node": ">= 0.10"
- }
- },
- "node_modules/vinyl-source-stream": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/vinyl-source-stream/-/vinyl-source-stream-2.0.0.tgz",
- "integrity": "sha512-Y5f1wRGajOfYukhv8biIGA7iZiY8UOIc3zJ6zcUNIbRG1BVuXzBsfSfe7MUJTttVkuy64k/pGQtJdd/aIt+hbw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "through2": "^2.0.3",
- "vinyl": "^2.1.0"
+ "node": ">= 0.8.0"
}
},
- "node_modules/vinyl-sourcemap": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/vinyl-sourcemap/-/vinyl-sourcemap-1.1.0.tgz",
- "integrity": "sha512-NiibMgt6VJGJmyw7vtzhctDcfKch4e4n9TBeoWlirb7FMg9/1Ov9k+A5ZRAtywBpRPiyECvQRQllYM8dECegVA==",
+ "node_modules/type-is": {
+ "version": "1.6.18",
+ "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz",
+ "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==",
"dev": true,
"license": "MIT",
"dependencies": {
- "append-buffer": "^1.0.2",
- "convert-source-map": "^1.5.0",
- "graceful-fs": "^4.1.6",
- "normalize-path": "^2.1.1",
- "now-and-later": "^2.0.0",
- "remove-bom-buffer": "^3.0.0",
- "vinyl": "^2.0.0"
+ "media-typer": "0.3.0",
+ "mime-types": "~2.1.24"
},
"engines": {
- "node": ">= 0.10"
+ "node": ">= 0.6"
}
},
- "node_modules/vinyl-sourcemap/node_modules/convert-source-map": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.9.0.tgz",
- "integrity": "sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A==",
- "dev": true,
+ "node_modules/typedarray-to-buffer": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-4.0.0.tgz",
+ "integrity": "sha512-6dOYeZfS3O9RtRD1caom0sMxgK59b27+IwoNy8RDPsmslSGOyU+mpTamlaIW7aNKi90ZQZ9DFaZL3YRoiSCULQ==",
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
"license": "MIT"
},
- "node_modules/vinyl-sourcemap/node_modules/normalize-path": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
- "integrity": "sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w==",
+ "node_modules/typescript": {
+ "version": "5.6.2",
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.6.2.tgz",
+ "integrity": "sha512-NW8ByodCSNCwZeghjN3o+JX5OFH0Ojg6sadjEKY4huZ52TqbJTJnDo5+Tw98lSy63NZvi4n+ez5m2u5d4PkZyw==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "remove-trailing-separator": "^1.0.1"
+ "license": "Apache-2.0",
+ "bin": {
+ "tsc": "bin/tsc",
+ "tsserver": "bin/tsserver"
},
"engines": {
- "node": ">=0.10.0"
+ "node": ">=14.17"
}
},
- "node_modules/vinyl-sourcemaps-apply": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/vinyl-sourcemaps-apply/-/vinyl-sourcemaps-apply-0.2.1.tgz",
- "integrity": "sha512-+oDh3KYZBoZC8hfocrbrxbLUeaYtQK7J5WU5Br9VqWqmCll3tFJqKp97GC9GmMsVIL0qnx2DgEDVxdo5EZ5sSw==",
+ "node_modules/typescript-eslint": {
+ "version": "8.8.1",
+ "resolved": "https://registry.npmjs.org/typescript-eslint/-/typescript-eslint-8.8.1.tgz",
+ "integrity": "sha512-R0dsXFt6t4SAFjUSKFjMh4pXDtq04SsFKCVGDP3ZOzNP7itF0jBcZYU4fMsZr4y7O7V7Nc751dDeESbe4PbQMQ==",
"dev": true,
- "license": "ISC",
+ "license": "MIT",
"dependencies": {
- "source-map": "^0.5.1"
+ "@typescript-eslint/eslint-plugin": "8.8.1",
+ "@typescript-eslint/parser": "8.8.1",
+ "@typescript-eslint/utils": "8.8.1"
+ },
+ "engines": {
+ "node": "^18.18.0 || ^20.9.0 || >=21.1.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/typescript-eslint"
+ },
+ "peerDependenciesMeta": {
+ "typescript": {
+ "optional": true
+ }
}
},
- "node_modules/vinyl/node_modules/replace-ext": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-1.0.1.tgz",
- "integrity": "sha512-yD5BHCe7quCgBph4rMQ+0KkIRKwWCrHDOX1p1Gp6HwjPM5kVoCdKGNhN7ydqqsX6lJEnQDKZ/tFMiEdQ1dvPEw==",
- "dev": true,
+ "node_modules/ua-parser-js": {
+ "version": "1.0.39",
+ "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.39.tgz",
+ "integrity": "sha512-k24RCVWlEcjkdOxYmVJgeD/0a1TiSpqLg+ZalVGV9lsnr4yqu0w7tX/x2xX6G4zpkgQnRf89lxuZ1wsbjXM8lw==",
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/ua-parser-js"
+ },
+ {
+ "type": "paypal",
+ "url": "https://paypal.me/faisalman"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/faisalman"
+ }
+ ],
"license": "MIT",
+ "bin": {
+ "ua-parser-js": "script/cli.js"
+ },
"engines": {
- "node": ">= 0.10"
+ "node": "*"
}
},
- "node_modules/vm-browserify": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz",
- "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==",
+ "node_modules/ultron": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz",
+ "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==",
+ "license": "MIT"
+ },
+ "node_modules/undici-types": {
+ "version": "6.19.8",
+ "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz",
+ "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==",
"dev": true,
"license": "MIT"
},
- "node_modules/watchify": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/watchify/-/watchify-4.0.0.tgz",
- "integrity": "sha512-2Z04dxwoOeNxa11qzWumBTgSAohTC0+ScuY7XMenPnH+W2lhTcpEOJP4g2EIG/SWeLadPk47x++Yh+8BqPM/lA==",
+ "node_modules/unist-util-is": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz",
+ "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "anymatch": "^3.1.0",
- "browserify": "^17.0.0",
- "chokidar": "^3.4.0",
- "defined": "^1.0.0",
- "outpipe": "^1.1.0",
- "through2": "^4.0.2",
- "xtend": "^4.0.2"
- },
- "bin": {
- "watchify": "bin/cmd.js"
+ "@types/unist": "^3.0.0"
},
- "engines": {
- "node": ">= 8.10.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/unified"
}
},
- "node_modules/watchify/node_modules/anymatch": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
- "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
+ "node_modules/unist-util-visit": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz",
+ "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==",
"dev": true,
- "license": "ISC",
+ "license": "MIT",
"dependencies": {
- "normalize-path": "^3.0.0",
- "picomatch": "^2.0.4"
+ "@types/unist": "^3.0.0",
+ "unist-util-is": "^6.0.0",
+ "unist-util-visit-parents": "^6.0.0"
},
- "engines": {
- "node": ">= 8"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/unified"
}
},
- "node_modules/watchify/node_modules/binary-extensions": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz",
- "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==",
+ "node_modules/unist-util-visit-parents": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz",
+ "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==",
"dev": true,
"license": "MIT",
- "engines": {
- "node": ">=8"
+ "dependencies": {
+ "@types/unist": "^3.0.0",
+ "unist-util-is": "^6.0.0"
},
"funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "type": "opencollective",
+ "url": "https://opencollective.com/unified"
}
},
- "node_modules/watchify/node_modules/braces": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
- "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
+ "node_modules/unpipe": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
+ "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "fill-range": "^7.1.1"
- },
"engines": {
- "node": ">=8"
+ "node": ">= 0.8"
}
},
- "node_modules/watchify/node_modules/chokidar": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz",
- "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==",
+ "node_modules/unplugin": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/unplugin/-/unplugin-1.14.1.tgz",
+ "integrity": "sha512-lBlHbfSFPToDYp9pjXlUEFVxYLaue9f9T1HC+4OHlmj+HnMDdz9oZY+erXfoCe/5V/7gKUSY2jpXPb9S7f0f/w==",
"dev": true,
"license": "MIT",
"dependencies": {
- "anymatch": "~3.1.2",
- "braces": "~3.0.2",
- "glob-parent": "~5.1.2",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.6.0"
+ "acorn": "^8.12.1",
+ "webpack-virtual-modules": "^0.6.2"
},
"engines": {
- "node": ">= 8.10.0"
+ "node": ">=14.0.0"
},
- "funding": {
- "url": "https://paulmillr.com/funding/"
+ "peerDependencies": {
+ "webpack-sources": "^3"
},
- "optionalDependencies": {
- "fsevents": "~2.3.2"
+ "peerDependenciesMeta": {
+ "webpack-sources": {
+ "optional": true
+ }
}
},
- "node_modules/watchify/node_modules/fill-range": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
- "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
+ "node_modules/update-browserslist-db": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz",
+ "integrity": "sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==",
"dev": true,
+ "funding": [
+ {
+ "type": "opencollective",
+ "url": "https://opencollective.com/browserslist"
+ },
+ {
+ "type": "tidelift",
+ "url": "https://tidelift.com/funding/github/npm/browserslist"
+ },
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/ai"
+ }
+ ],
"license": "MIT",
"dependencies": {
- "to-regex-range": "^5.0.1"
+ "escalade": "^3.1.2",
+ "picocolors": "^1.0.1"
},
- "engines": {
- "node": ">=8"
+ "bin": {
+ "update-browserslist-db": "cli.js"
+ },
+ "peerDependencies": {
+ "browserslist": ">= 4.21.0"
}
},
- "node_modules/watchify/node_modules/fsevents": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz",
- "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==",
+ "node_modules/uri-js": {
+ "version": "4.4.1",
+ "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
+ "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
+ "dev": true,
+ "license": "BSD-2-Clause",
+ "dependencies": {
+ "punycode": "^2.1.0"
+ }
+ },
+ "node_modules/uri-js/node_modules/punycode": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz",
+ "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==",
"dev": true,
- "hasInstallScript": true,
"license": "MIT",
- "optional": true,
- "os": [
- "darwin"
- ],
"engines": {
- "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
+ "node": ">=6"
}
},
- "node_modules/watchify/node_modules/glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "node_modules/url": {
+ "version": "0.11.4",
+ "resolved": "https://registry.npmjs.org/url/-/url-0.11.4.tgz",
+ "integrity": "sha512-oCwdVC7mTuWiPyjLUz/COz5TLk6wgp0RCsN+wHZ2Ekneac9w8uuV0njcbbie2ME+Vs+d6duwmYuR3HgQXs1fOg==",
"dev": true,
- "license": "ISC",
+ "license": "MIT",
"dependencies": {
- "is-glob": "^4.0.1"
+ "punycode": "^1.4.1",
+ "qs": "^6.12.3"
},
"engines": {
- "node": ">= 6"
+ "node": ">= 0.4"
}
},
- "node_modules/watchify/node_modules/is-binary-path": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz",
- "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==",
+ "node_modules/util": {
+ "version": "0.12.5",
+ "resolved": "https://registry.npmjs.org/util/-/util-0.12.5.tgz",
+ "integrity": "sha512-kZf/K6hEIrWHI6XqOFUiiMa+79wE/D8Q+NCNAWclkyg3b4d2k7s0QGepNjiABc+aR3N1PAyHL7p6UcLY6LmrnA==",
"dev": true,
"license": "MIT",
"dependencies": {
- "binary-extensions": "^2.0.0"
- },
- "engines": {
- "node": ">=8"
+ "inherits": "^2.0.3",
+ "is-arguments": "^1.0.4",
+ "is-generator-function": "^1.0.7",
+ "is-typed-array": "^1.1.3",
+ "which-typed-array": "^1.1.2"
}
},
- "node_modules/watchify/node_modules/is-number": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz",
- "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==",
+ "node_modules/util-deprecate": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
+ "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
+ "license": "MIT"
+ },
+ "node_modules/utils-merge": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
+ "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==",
"dev": true,
"license": "MIT",
"engines": {
- "node": ">=0.12.0"
+ "node": ">= 0.4.0"
}
},
- "node_modules/watchify/node_modules/readable-stream": {
- "version": "3.6.2",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
- "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
+ "node_modules/uuid": {
+ "version": "9.0.1",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz",
+ "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==",
"dev": true,
+ "funding": [
+ "https://github.com/sponsors/broofa",
+ "https://github.com/sponsors/ctavan"
+ ],
"license": "MIT",
- "dependencies": {
- "inherits": "^2.0.3",
- "string_decoder": "^1.1.1",
- "util-deprecate": "^1.0.1"
- },
- "engines": {
- "node": ">= 6"
+ "bin": {
+ "uuid": "dist/bin/uuid"
}
},
- "node_modules/watchify/node_modules/readdirp": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
- "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
+ "node_modules/vary": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
+ "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==",
"dev": true,
"license": "MIT",
- "dependencies": {
- "picomatch": "^2.2.1"
- },
"engines": {
- "node": ">=8.10.0"
+ "node": ">= 0.8"
}
},
- "node_modules/watchify/node_modules/through2": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz",
- "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==",
+ "node_modules/vm-browserify": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/vm-browserify/-/vm-browserify-1.1.2.tgz",
+ "integrity": "sha512-2ham8XPWTONajOR0ohOKOHXkm3+gaBmGut3SRuu75xLd/RRaY6vqgh8NBYYk7+RW3u5AtzPQZG8F10LHkl0lAQ==",
"dev": true,
- "license": "MIT",
- "dependencies": {
- "readable-stream": "3"
- }
+ "license": "MIT"
},
- "node_modules/watchify/node_modules/to-regex-range": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz",
- "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==",
+ "node_modules/walk-up-path": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/walk-up-path/-/walk-up-path-3.0.1.tgz",
+ "integrity": "sha512-9YlCL/ynK3CTlrSRrDxZvUauLzAswPCrsaCgilqFevUYpeEW0/3ScEjaa3kbW/T0ghhkEr7mv+fpjqn1Y1YuTA==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "node_modules/watchpack": {
+ "version": "2.4.2",
+ "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.4.2.tgz",
+ "integrity": "sha512-TnbFSbcOCcDgjZ4piURLCbJ3nJhznVh9kw6F6iokjiFPl8ONxe9A6nMDVXDiNbrSfLILs6vB07F7wLBrwPYzJw==",
"dev": true,
"license": "MIT",
"dependencies": {
- "is-number": "^7.0.0"
+ "glob-to-regexp": "^0.4.1",
+ "graceful-fs": "^4.1.2"
},
"engines": {
- "node": ">=8.0"
+ "node": ">=10.13.0"
}
},
- "node_modules/websocket-driver": {
- "version": "0.7.4",
- "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz",
- "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==",
- "dev": true,
- "license": "Apache-2.0",
- "dependencies": {
- "http-parser-js": ">=0.5.1",
- "safe-buffer": ">=5.1.0",
- "websocket-extensions": ">=0.1.1"
+ "node_modules/webpack": {
+ "version": "5.95.0",
+ "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.95.0.tgz",
+ "integrity": "sha512-2t3XstrKULz41MNMBF+cJ97TyHdyQ8HCt//pqErqDvNjU9YQBnZxIHa11VXsi7F3mb5/aO2tuDxdeTPdU7xu9Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@types/estree": "^1.0.5",
+ "@webassemblyjs/ast": "^1.12.1",
+ "@webassemblyjs/wasm-edit": "^1.12.1",
+ "@webassemblyjs/wasm-parser": "^1.12.1",
+ "acorn": "^8.7.1",
+ "acorn-import-attributes": "^1.9.5",
+ "browserslist": "^4.21.10",
+ "chrome-trace-event": "^1.0.2",
+ "enhanced-resolve": "^5.17.1",
+ "es-module-lexer": "^1.2.1",
+ "eslint-scope": "5.1.1",
+ "events": "^3.2.0",
+ "glob-to-regexp": "^0.4.1",
+ "graceful-fs": "^4.2.11",
+ "json-parse-even-better-errors": "^2.3.1",
+ "loader-runner": "^4.2.0",
+ "mime-types": "^2.1.27",
+ "neo-async": "^2.6.2",
+ "schema-utils": "^3.2.0",
+ "tapable": "^2.1.1",
+ "terser-webpack-plugin": "^5.3.10",
+ "watchpack": "^2.4.1",
+ "webpack-sources": "^3.2.3"
+ },
+ "bin": {
+ "webpack": "bin/webpack.js"
},
"engines": {
- "node": ">=0.8.0"
+ "node": ">=10.13.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/webpack"
+ },
+ "peerDependenciesMeta": {
+ "webpack-cli": {
+ "optional": true
+ }
}
},
- "node_modules/websocket-extensions": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz",
- "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==",
+ "node_modules/webpack-sources": {
+ "version": "3.2.3",
+ "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-3.2.3.tgz",
+ "integrity": "sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==",
"dev": true,
- "license": "Apache-2.0",
+ "license": "MIT",
"engines": {
- "node": ">=0.8.0"
+ "node": ">=10.13.0"
}
},
+ "node_modules/webpack-virtual-modules": {
+ "version": "0.6.2",
+ "resolved": "https://registry.npmjs.org/webpack-virtual-modules/-/webpack-virtual-modules-0.6.2.tgz",
+ "integrity": "sha512-66/V2i5hQanC51vBQKPH4aI8NMAcBW59FVBs+rC7eGHupMyfn34q7rZIE+ETlJ+XTevqfUhVVBgSUNSW2flEUQ==",
+ "dev": true,
+ "license": "MIT"
+ },
"node_modules/websocket-stream": {
"version": "5.5.2",
"resolved": "https://registry.npmjs.org/websocket-stream/-/websocket-stream-5.5.2.tgz",
@@ -18962,13 +9449,6 @@
"stream-shift": "^1.0.0"
}
},
- "node_modules/when": {
- "version": "3.7.8",
- "resolved": "https://registry.npmjs.org/when/-/when-3.7.8.tgz",
- "integrity": "sha512-5cZ7mecD3eYcMiCH4wtRPA5iFJZ50BJYDfckI5RRpQiktMiYTcn0ccLTZOvcbBume+1304fQztxeNzNS9Gvrnw==",
- "dev": true,
- "license": "MIT"
- },
"node_modules/which": {
"version": "2.0.2",
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
@@ -18985,49 +9465,6 @@
"node": ">= 8"
}
},
- "node_modules/which-boxed-primitive": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz",
- "integrity": "sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-bigint": "^1.0.1",
- "is-boolean-object": "^1.1.0",
- "is-number-object": "^1.0.4",
- "is-string": "^1.0.5",
- "is-symbol": "^1.0.3"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/which-collection": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.2.tgz",
- "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "is-map": "^2.0.3",
- "is-set": "^2.0.3",
- "is-weakmap": "^2.0.2",
- "is-weakset": "^2.0.3"
- },
- "engines": {
- "node": ">= 0.4"
- },
- "funding": {
- "url": "https://github.com/sponsors/ljharb"
- }
- },
- "node_modules/which-module": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz",
- "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==",
- "dev": true,
- "license": "ISC"
- },
"node_modules/which-typed-array": {
"version": "1.1.15",
"resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.15.tgz",
@@ -19058,143 +9495,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/wrap-ansi": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz",
- "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-styles": "^6.1.0",
- "string-width": "^5.0.1",
- "strip-ansi": "^7.0.1"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
- }
- },
- "node_modules/wrap-ansi-cjs": {
- "name": "wrap-ansi",
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
- "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
- }
- },
- "node_modules/wrap-ansi-cjs/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,
- "license": "MIT",
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/wrap-ansi-cjs/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,
- "license": "MIT",
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/wrap-ansi-cjs/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,
- "license": "MIT"
- },
- "node_modules/wrap-ansi-cjs/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,
- "license": "MIT"
- },
- "node_modules/wrap-ansi-cjs/node_modules/string-width": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
- "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "emoji-regex": "^8.0.0",
- "is-fullwidth-code-point": "^3.0.0",
- "strip-ansi": "^6.0.1"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/wrap-ansi/node_modules/ansi-regex": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.1.0.tgz",
- "integrity": "sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-regex?sponsor=1"
- }
- },
- "node_modules/wrap-ansi/node_modules/ansi-styles": {
- "version": "6.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz",
- "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/wrap-ansi/node_modules/strip-ansi": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz",
- "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "ansi-regex": "^6.0.1"
- },
- "engines": {
- "node": ">=12"
- },
- "funding": {
- "url": "https://github.com/chalk/strip-ansi?sponsor=1"
- }
- },
"node_modules/wrappy": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
@@ -19218,36 +9518,6 @@
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
"license": "MIT"
},
- "node_modules/xhr-write-stream": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/xhr-write-stream/-/xhr-write-stream-0.1.2.tgz",
- "integrity": "sha512-KLYqF/tkuGjHovIX5GjPPas+Ij1xxnIJG3v4Z73hQhKErm5rOqZSLV0lYxigPueDCOogf9jbey5WXrkPtr8gLQ==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "concat-stream": "~0.1.0",
- "ordered-emitter": "~0.1.0"
- }
- },
- "node_modules/xhr-write-stream/node_modules/concat-stream": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-0.1.1.tgz",
- "integrity": "sha512-1CHCCGbRAxvBHGGxNvED9ph+M90ZjquE0QhJHkr4aIf9+u85zIvcwRk/sF2HW4rZflt9Q97DFIJh5E4rM5eDwA==",
- "dev": true,
- "engines": [
- "node >= 0.8.0"
- ]
- },
- "node_modules/xmlbuilder": {
- "version": "15.1.1",
- "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz",
- "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==",
- "dev": true,
- "license": "MIT",
- "engines": {
- "node": ">=8.0"
- }
- },
"node_modules/xtend": {
"version": "4.0.2",
"resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
@@ -19267,25 +9537,6 @@
"node": ">=10"
}
},
- "node_modules/yallist": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz",
- "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==",
- "license": "ISC"
- },
- "node_modules/yaml": {
- "version": "2.5.1",
- "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.5.1.tgz",
- "integrity": "sha512-bLQOjaX/ADgQ20isPJRvF0iRUHIxVhYvr53Of7wGcWlO2jvtUlH5m87DsmulFVxRpNLOnI4tB6p/oh8D7kpn9Q==",
- "dev": true,
- "license": "ISC",
- "bin": {
- "yaml": "bin.mjs"
- },
- "engines": {
- "node": ">= 14"
- }
- },
"node_modules/yargs": {
"version": "17.7.2",
"resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz",
@@ -19337,17 +9588,6 @@
"node": ">=8"
}
},
- "node_modules/yauzl": {
- "version": "2.10.0",
- "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz",
- "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==",
- "dev": true,
- "license": "MIT",
- "dependencies": {
- "buffer-crc32": "~0.2.3",
- "fd-slicer": "~1.1.0"
- }
- },
"node_modules/yocto-queue": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz",
diff --git a/package.json b/package.json
index e57fef8d..a4557d71 100644
--- a/package.json
+++ b/package.json
@@ -24,23 +24,23 @@
"email": "michael.heuberger@binarykitchen.com"
}
],
- "main": "prototype/js/videomail-client.js",
+ "type": "module",
+ "main": "./dist/static/js/index.js",
+ "module": "./src/index.ts",
+ "source": "./src/index.ts",
"scripts": {
"audit": "npx audit-ci --config audit-ci.json",
- "build": "gulp build",
- "lint": "eslint --color ./src ./test ./gulpfile.js",
- "lint:fix": "npm --silent run lint -- --fix",
- "major": "./etc/release.sh --importance=major",
- "minor": "./etc/release.sh --importance=minor",
- "patch": "./etc/release.sh --importance=patch",
- "prettier": "prettier --check ./src ./test ./prototype/*.html gulpfile.js",
- "prettier:fix": "prettier --write ./src ./test ./prototype/*.html gulpfile.js",
- "test": "gulp test",
- "watch": "NODE_NO_HTTP2=1 gulp watch"
+ "build-prod": "cross-env NODE_ENV=production rsbuild build -c ./etc/rsbuild/config.ts",
+ "build-storybook": "storybook build",
+ "chromatic": "npx chromatic --project-token=chpt_742ead9ab882938 --build-script-name build:storybook",
+ "lint": "eslint --color .",
+ "lint-fix": "eslint --color --fix .",
+ "prettier": "prettier --check ./etc ./src ./.storybook",
+ "prettier-fix": "prettier --write ./etc ./src ./.storybook",
+ "storybook": "cross-env BROWSER=chromium storybook dev -p 8443 --https --ssl-cert ./etc/ssl-certs/localhost.crt --ssl-key ./etc/ssl-certs/localhost.key"
},
"prettier": "./prettier.config.cjs",
"dependencies": {
- "@babel/core": "7.25.2",
"add-eventlistener-with-options": "1.25.5",
"animitter": "3.0.0",
"audio-sample": "4.1.0",
@@ -59,7 +59,6 @@
"humanize-duration": "3.32.1",
"hyperscript": "2.0.2",
"inherits": "2.0.4",
- "insert-css": "2.0.0",
"is-power-of-two": "1.0.0",
"keymirror": "0.1.1",
"safe-json-stringify": "1.2.0",
@@ -68,56 +67,40 @@
"websocket-stream": "5.5.2"
},
"devDependencies": {
- "@babel/eslint-parser": "7.25.1",
- "@babel/plugin-transform-runtime": "7.25.4",
- "@babel/preset-env": "7.25.4",
+ "@chromatic-com/storybook": "2.0.2",
+ "@eslint/js": "9.12.0",
+ "@rsbuild/core": "1.0.10",
+ "@rsbuild/plugin-node-polyfill": "1.0.4",
+ "@rsbuild/plugin-stylus": "1.0.2",
+ "@storybook/addon-a11y": "8.3.5",
+ "@storybook/addon-console": "3.0.0",
+ "@storybook/addon-essentials": "8.3.5",
+ "@storybook/addon-interactions": "8.3.5",
+ "@storybook/addon-links": "8.3.5",
+ "@storybook/manager-api": "8.3.5",
+ "@storybook/theming": "8.3.5",
"@tsconfig/node22": "22.0.0",
"@tsconfig/strictest": "2.0.5",
+ "@types/node": "22.7.5",
"audit-ci": "7.1.0",
- "autoprefixer": "10.4.20",
- "babelify": "10.0.0",
- "body-parser": "1.20.3",
- "browserify": "17.0.0",
- "connect-send-json": "1.0.0",
- "cssnano": "6.0.5",
- "del": "6.1.1",
- "eslint": "8.57.0",
+ "chromatic": "11.12.0",
+ "cross-env": "7.0.3",
+ "eslint": "9.12.0",
"eslint-config-prettier": "9.1.0",
- "eslint-plugin-import": "2.30.0",
+ "eslint-plugin-depend": "0.11.0",
+ "eslint-plugin-import-x": "4.3.1",
"eslint-plugin-node": "11.1.0",
- "eslint-plugin-promise": "6.2.0",
- "fancy-log": "2.0.0",
- "glob": "10.4.2",
- "gulp": "4.0.2",
- "gulp-bump": "3.2.0",
- "gulp-bytediff": "1.0.0",
- "gulp-concat": "2.6.1",
- "gulp-connect": "5.7.0",
- "gulp-derequire": "3.0.0",
- "gulp-if": "3.0.0",
- "gulp-inject-string": "1.1.2",
- "gulp-load-plugins": "2.0.8",
- "gulp-plumber": "1.2.1",
- "gulp-postcss": "10.0.0",
- "gulp-rename": "2.0.0",
- "gulp-sourcemaps": "3.0.0",
- "gulp-stylus": "3.0.1",
- "gulp-terser": "2.1.0",
- "minimist": "1.2.8",
- "nib": "1.2.0",
- "postcss": "8.4.47",
+ "eslint-plugin-promise": "7.1.0",
+ "eslint-plugin-regexp": "2.6.0",
+ "eslint-plugin-security": "3.0.1",
"prettier": "3.3.3",
"prettier-plugin-curly": "0.2.2",
"prettier-plugin-packagejson": "2.5.2",
"prettier-plugin-sh": "0.14.0",
- "router": "1.3.8",
- "tape": "5.9.0",
- "tape-catch": "1.0.6",
- "tape-run": "11.0.0",
+ "storybook": "8.3.5",
+ "storybook-html-rsbuild": "0.1.1",
"typescript": "5.6.2",
- "vinyl-buffer": "1.0.1",
- "vinyl-source-stream": "2.0.0",
- "watchify": "4.0.0"
+ "typescript-eslint": "8.8.1"
},
"engines": {
"node": "^22.8.0",
diff --git a/prototype/bad_browser.html b/prototype/bad_browser.html
deleted file mode 100644
index 602c4bd5..00000000
--- a/prototype/bad_browser.html
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
- videomail-client examples
-
-
-
- How it looks on a bad browser
-
-
-
-
-
diff --git a/prototype/bad_ios.html b/prototype/bad_ios.html
deleted file mode 100644
index 56a8b0b8..00000000
--- a/prototype/bad_ios.html
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
- videomail-client examples
-
-
-
- How it looks on an unsupported iPhone
-
-
-
-
-
diff --git a/prototype/entertain.html b/prototype/entertain.html
deleted file mode 100644
index 9cb66c88..00000000
--- a/prototype/entertain.html
+++ /dev/null
@@ -1,69 +0,0 @@
-
-
-
- videomail-client examples
-
-
-
-
-
- Entertain user while waiting and disable pause/resume buttons
-
-
-
-
-
diff --git a/prototype/error_handling.html b/prototype/error_handling.html
deleted file mode 100644
index cb6ada55..00000000
--- a/prototype/error_handling.html
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-
- videomail-client examples
-
-
-
- Attempt to get a snapshot of a non-existing videomail
- This is how error responses are processed:
-
-
-
-
-
-
diff --git a/prototype/experimental_audio.html b/prototype/experimental_audio.html
deleted file mode 100644
index 6eaaa4c1..00000000
--- a/prototype/experimental_audio.html
+++ /dev/null
@@ -1,41 +0,0 @@
-
-
-
- videomail-client examples
-
-
-
-
- BETA! With audio (experimental), custom button text and without auto-pause + no
- countdown
-
-
-
-
-
-
diff --git a/prototype/facing_mode_button.html b/prototype/facing_mode_button.html
deleted file mode 100644
index 1801981c..00000000
--- a/prototype/facing_mode_button.html
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
- videomail-client examples
-
-
-
- With a facing mode button to switch camera for mobiles
- Only seen when you are on mobile.
-
-
-
-
-
diff --git a/prototype/high_quality.html b/prototype/high_quality.html
deleted file mode 100644
index a72cd81c..00000000
--- a/prototype/high_quality.html
+++ /dev/null
@@ -1,37 +0,0 @@
-
-
-
- videomail-client examples
-
-
-
-
- High quality: High FPS, near HD quality, short duration and without auto-pause
-
-
- This example shows that your browser cannot meet the FPS requirements due to
- performance issues and will use a lower one instead.
-
-
-
-
-
-
diff --git a/prototype/index.html b/prototype/index.html
deleted file mode 100644
index 04ef5bd8..00000000
--- a/prototype/index.html
+++ /dev/null
@@ -1,511 +0,0 @@
-
-
-
-
-
- listing directory /
-
-
-
-
-
-
-
-
diff --git a/prototype/invalid_site_name.html b/prototype/invalid_site_name.html
deleted file mode 100644
index 00efd429..00000000
--- a/prototype/invalid_site_name.html
+++ /dev/null
@@ -1,33 +0,0 @@
-
-
-
- videomail-client examples
-
-
-
- With an invalid site name, you don't get whitelisted
-
- By default the site name is "videomail-client-demo" which works on localhost only.
- To run the videomail client on your site, you'll have to register it
- here to obtain a valid site name.
-
-
-
-
-
-
diff --git a/prototype/js/videomail-client.js b/prototype/js/videomail-client.js
deleted file mode 100644
index a11ca026..00000000
--- a/prototype/js/videomail-client.js
+++ /dev/null
@@ -1,23160 +0,0 @@
-(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.VideomailClient = f()}})(function(){var define,module,exports;return (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i r.length) && (a = r.length);
- for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
- return n;
-}
-module.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
-},{}],2:[function(_dereq_,module,exports){
-var arrayLikeToArray = _dereq_("./arrayLikeToArray.js");
-function _arrayWithoutHoles(r) {
- if (Array.isArray(r)) return arrayLikeToArray(r);
-}
-module.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports["default"] = module.exports;
-},{"./arrayLikeToArray.js":1}],3:[function(_dereq_,module,exports){
-var toPropertyKey = _dereq_("./toPropertyKey.js");
-function _defineProperty(e, r, t) {
- return (r = toPropertyKey(r)) in e ? Object.defineProperty(e, r, {
- value: t,
- enumerable: !0,
- configurable: !0,
- writable: !0
- }) : e[r] = t, e;
-}
-module.exports = _defineProperty, module.exports.__esModule = true, module.exports["default"] = module.exports;
-},{"./toPropertyKey.js":9}],4:[function(_dereq_,module,exports){
-function _interopRequireDefault(e) {
- return e && e.__esModule ? e : {
- "default": e
- };
-}
-module.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports["default"] = module.exports;
-},{}],5:[function(_dereq_,module,exports){
-function _iterableToArray(r) {
- if ("undefined" != typeof Symbol && null != r[Symbol.iterator] || null != r["@@iterator"]) return Array.from(r);
-}
-module.exports = _iterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
-},{}],6:[function(_dereq_,module,exports){
-function _nonIterableSpread() {
- throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
-}
-module.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports["default"] = module.exports;
-},{}],7:[function(_dereq_,module,exports){
-var arrayWithoutHoles = _dereq_("./arrayWithoutHoles.js");
-var iterableToArray = _dereq_("./iterableToArray.js");
-var unsupportedIterableToArray = _dereq_("./unsupportedIterableToArray.js");
-var nonIterableSpread = _dereq_("./nonIterableSpread.js");
-function _toConsumableArray(r) {
- return arrayWithoutHoles(r) || iterableToArray(r) || unsupportedIterableToArray(r) || nonIterableSpread();
-}
-module.exports = _toConsumableArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
-},{"./arrayWithoutHoles.js":2,"./iterableToArray.js":5,"./nonIterableSpread.js":6,"./unsupportedIterableToArray.js":11}],8:[function(_dereq_,module,exports){
-var _typeof = _dereq_("./typeof.js")["default"];
-function toPrimitive(t, r) {
- if ("object" != _typeof(t) || !t) return t;
- var e = t[Symbol.toPrimitive];
- if (void 0 !== e) {
- var i = e.call(t, r || "default");
- if ("object" != _typeof(i)) return i;
- throw new TypeError("@@toPrimitive must return a primitive value.");
- }
- return ("string" === r ? String : Number)(t);
-}
-module.exports = toPrimitive, module.exports.__esModule = true, module.exports["default"] = module.exports;
-},{"./typeof.js":10}],9:[function(_dereq_,module,exports){
-var _typeof = _dereq_("./typeof.js")["default"];
-var toPrimitive = _dereq_("./toPrimitive.js");
-function toPropertyKey(t) {
- var i = toPrimitive(t, "string");
- return "symbol" == _typeof(i) ? i : i + "";
-}
-module.exports = toPropertyKey, module.exports.__esModule = true, module.exports["default"] = module.exports;
-},{"./toPrimitive.js":8,"./typeof.js":10}],10:[function(_dereq_,module,exports){
-function _typeof(o) {
- "@babel/helpers - typeof";
-
- return module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
- return typeof o;
- } : function (o) {
- return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
- }, module.exports.__esModule = true, module.exports["default"] = module.exports, _typeof(o);
-}
-module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports;
-},{}],11:[function(_dereq_,module,exports){
-var arrayLikeToArray = _dereq_("./arrayLikeToArray.js");
-function _unsupportedIterableToArray(r, a) {
- if (r) {
- if ("string" == typeof r) return arrayLikeToArray(r, a);
- var t = {}.toString.call(r).slice(8, -1);
- return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? arrayLikeToArray(r, a) : void 0;
- }
-}
-module.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports;
-},{"./arrayLikeToArray.js":1}],12:[function(_dereq_,module,exports){
-(function webpackUniversalModuleDefinition(root, factory) {
- if(typeof exports === 'object' && typeof module === 'object')
- module.exports = factory();
- else if(typeof define === 'function' && define.amd)
- define([], factory);
- else if(typeof exports === 'object')
- exports["add-eventlistener-with-options"] = factory();
- else
- root["add-eventlistener-with-options"] = factory();
-})(this, function() {
-return /******/ (function(modules) { // webpackBootstrap
-/******/ // The module cache
-/******/ var installedModules = {};
-
-/******/ // The require function
-/******/ function __webpack_require__(moduleId) {
-
-/******/ // Check if module is in cache
-/******/ if(installedModules[moduleId])
-/******/ return installedModules[moduleId].exports;
-
-/******/ // Create a new module (and put it into the cache)
-/******/ var module = installedModules[moduleId] = {
-/******/ exports: {},
-/******/ id: moduleId,
-/******/ loaded: false
-/******/ };
-
-/******/ // Execute the module function
-/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
-
-/******/ // Flag the module as loaded
-/******/ module.loaded = true;
-
-/******/ // Return the exports of the module
-/******/ return module.exports;
-/******/ }
-
-
-/******/ // expose the modules object (__webpack_modules__)
-/******/ __webpack_require__.m = modules;
-
-/******/ // expose the module cache
-/******/ __webpack_require__.c = installedModules;
-
-/******/ // __webpack_public_path__
-/******/ __webpack_require__.p = "";
-
-/******/ // Load entry module and return exports
-/******/ return __webpack_require__(0);
-/******/ })
-/************************************************************************/
-/******/ ([
-/* 0 */
-/***/ function(module, exports, __webpack_require__) {
-
- 'use strict';
-
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.default = addEventListenerWithOptions;
-
- var _checkSupport = __webpack_require__(1);
-
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
-
- /**
- * Add event listener with additional options
- * @param {EventTarget} target - The EventTarget element
- * @param {string} name - The name of the event
- * @param {function} listener - The event listener callback
- * @param {object} options - The options explicitly passed from caller
- * @param {string} optionName - The additioanl option to add to the event listener
- */
- function addEventListenerWithOptions(target, name, listener, options) {
- var optionName = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 'passive';
-
- if (target.addEventListener !== undefined) {
- var listenerOptions = _checkSupport.SupportMap[optionName] ? Object.assign({}, options, _defineProperty({}, optionName, true)) : options;
- target.addEventListener(name, listener, listenerOptions);
- }
- }
-
-/***/ },
-/* 1 */
-/***/ function(module, exports, __webpack_require__) {
-
- "use strict";
-
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.SupportMap = undefined;
-
- var _OptionsMap;
-
- var _constants = __webpack_require__(2);
-
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
-
- var OptionsMap = (_OptionsMap = {}, _defineProperty(_OptionsMap, _constants.PASSIVE, false), _defineProperty(_OptionsMap, _constants.CAPTURE, false), _defineProperty(_OptionsMap, _constants.ONCE, false), _OptionsMap);
-
- var getOptionsMap = function getOptionsMap() {
- Object.keys(OptionsMap).forEach(function (k, i) {
- OptionsMap[k] = checkSupportForProperty(k);
- });
-
- return OptionsMap;
- };
-
- function checkSupportForProperty(property) {
- if (!!OptionsMap[property]) {
- return OptionsMap[property];
- }
-
- try {
- var opts = Object.defineProperty({}, property, {
- get: function get() {
- OptionsMap[property] = true;
- }
- });
- window.addEventListener("test", null, opts);
- window.removeListener("test", null);
- } catch (e) {}
-
- return OptionsMap[property];
- }
-
- var SupportMap = exports.SupportMap = getOptionsMap();
-
-/***/ },
-/* 2 */
-/***/ function(module, exports) {
-
- 'use strict';
-
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- var PASSIVE = exports.PASSIVE = 'passive';
- var CAPTURE = exports.CAPTURE = 'capture';
- var ONCE = exports.ONCE = 'once';
-
-/***/ }
-/******/ ])
-});
-;
-},{}],13:[function(_dereq_,module,exports){
-var EventEmitter = _dereq_('events').EventEmitter,
- inherits = _dereq_('inherits'),
- raf = _dereq_('raf'),
- methods;
-
-
-//the same as off window unless polyfilled or in node
-var defaultRAFObject = {
- requestAnimationFrame: raf,
- cancelAnimationFrame: raf.cancel
-};
-
-function returnTrue(){ return true; }
-
-//manage FPS if < 60, else return true;
-function makeThrottle(fps){
- var delay = 1000/fps;
- var lastTime = Date.now();
-
-
- if( fps<=0 || fps === Infinity ){
- return returnTrue;
- }
-
- //if an fps throttle has been set then we'll assume
- //it natively runs at 60fps,
- var half = Math.ceil(1000 / 60) / 2;
-
- return function(){
- //if a custom fps is requested
- var now = Date.now();
- //is this frame within 8.5ms of the target?
- //if so then next frame is gonna be too late
- if(now - lastTime < delay - half){
- return false;
- }
- lastTime = now;
- return true;
- };
-}
-
-
-/**
- * Animitter provides event-based loops for the browser and node,
- * using `requestAnimationFrame`
- * @param {Object} [opts]
- * @param {Number} [opts.fps=Infinity] the framerate requested, defaults to as fast as it can (60fps on window)
- * @param {Number} [opts.delay=0] milliseconds delay between invoking `start` and initializing the loop
- * @param {Object} [opts.requestAnimationFrameObject=global] the object on which to find `requestAnimationFrame` and `cancelAnimationFrame` methods
- * @param {Boolean} [opts.fixedDelta=false] if true, timestamps will pretend to be executed at fixed intervals always
- * @constructor
- */
-function Animitter( opts ){
- opts = opts || {};
-
- this.__delay = opts.delay || 0;
-
- /** @expose */
- this.fixedDelta = !!opts.fixedDelta;
-
- /** @expose */
- this.frameCount = 0;
- /** @expose */
- this.deltaTime = 0;
- /** @expose */
- this.elapsedTime = 0;
-
- /** @private */
- this.__running = false;
- /** @private */
- this.__completed = false;
-
- this.setFPS(opts.fps || Infinity);
- this.setRequestAnimationFrameObject(opts.requestAnimationFrameObject || defaultRAFObject);
-}
-
-inherits(Animitter, EventEmitter);
-
-function onStart(scope){
- var now = Date.now();
- var rAFID;
- //dont let a second animation start on the same object
- //use *.on('update',fn)* instead
- if(scope.__running){
- return scope;
- }
-
- exports.running += 1;
- scope.__running = true;
- scope.__lastTime = now;
- scope.deltaTime = 0;
-
- //emit **start** once at the beginning
- scope.emit('start', scope.deltaTime, 0, scope.frameCount);
-
- var lastRAFObject = scope.requestAnimationFrameObject;
-
- var drawFrame = function(){
- if(lastRAFObject !== scope.requestAnimationFrameObject){
- //if the requestAnimationFrameObject switched in-between,
- //then re-request with the new one to ensure proper update execution context
- //i.e. VRDisplay#submitFrame() may only be requested through VRDisplay#requestAnimationFrame(drawFrame)
- lastRAFObject = scope.requestAnimationFrameObject;
- scope.requestAnimationFrameObject.requestAnimationFrame(drawFrame);
- return;
- }
- if(scope.__isReadyForUpdate()){
- scope.update();
- }
- if(scope.__running){
- rAFID = scope.requestAnimationFrameObject.requestAnimationFrame(drawFrame);
- } else {
- scope.requestAnimationFrameObject.cancelAnimationFrame(rAFID);
- }
- };
-
- scope.requestAnimationFrameObject.requestAnimationFrame(drawFrame);
-
- return scope;
-}
-
-methods = {
- //EventEmitter Aliases
- off : EventEmitter.prototype.removeListener,
- trigger : EventEmitter.prototype.emit,
-
- /**
- * stops the animation and marks it as completed
- * @emit Animitter#complete
- * @returns {Animitter}
- */
- complete: function(){
- this.stop();
- this.__completed = true;
- this.emit('complete', this.frameCount, this.deltaTime);
- return this;
- },
-
- /**
- * stops the animation and removes all listeners
- * @emit Animitter#stop
- * @returns {Animitter}
- */
- dispose: function(){
- this.stop();
- this.removeAllListeners();
- return this;
- },
-
- /**
- * get milliseconds between the last 2 updates
- *
- * @return {Number}
- */
- getDeltaTime: function(){
- return this.deltaTime;
- },
-
- /**
- * get the total milliseconds that the animation has ran.
- * This is the cumlative value of the deltaTime between frames
- *
- * @return {Number}
- */
- getElapsedTime: function(){
- return this.elapsedTime;
- },
-
- /**
- * get the instances frames per second as calculated by the last delta
- *
- * @return {Number}
- */
- getFPS: function(){
- return this.deltaTime > 0 ? 1000 / this.deltaTime : 0;
- if(this.deltaTime){
- return 1000 / this.deltaTime;
- }
- },
-
- /**
- * get the explicit FPS limit set via `Animitter#setFPS(fps)` or
- * via the initial `options.fps` property
- *
- * @returns {Number} either as set or Infinity
- */
- getFPSLimit: function(){
- return this.__fps;
- },
-
- /**
- * get the number of frames that have occurred
- *
- * @return {Number}
- */
- getFrameCount: function(){
- return this.frameCount;
- },
-
-
- /**
- * get the object providing `requestAnimationFrame`
- * and `cancelAnimationFrame` methods
- * @return {Object}
- */
- getRequestAnimationFrameObject: function(){
- return this.requestAnimationFrameObject;
- },
-
- /**
- * is the animation loop active
- *
- * @return {boolean}
- */
- isRunning: function(){
- return this.__running;
- },
-
- /**
- * is the animation marked as completed
- *
- * @return {boolean}
- */
- isCompleted: function(){
- return this.__completed;
- },
-
- /**
- * reset the animation loop, marks as incomplete,
- * leaves listeners intact
- *
- * @emit Animitter#reset
- * @return {Animitter}
- */
- reset: function(){
- this.stop();
- this.__completed = false;
- this.__lastTime = 0;
- this.deltaTime = 0;
- this.elapsedTime = 0;
- this.frameCount = 0;
-
- this.emit('reset', 0, 0, this.frameCount);
- return this;
- },
-
- /**
- * set the framerate for the animation loop
- *
- * @param {Number} fps
- * @return {Animitter}
- */
- setFPS: function(fps){
- this.__fps = fps;
- this.__isReadyForUpdate = makeThrottle(fps);
- return this;
- },
-
- /**
- * set the object that will provide `requestAnimationFrame`
- * and `cancelAnimationFrame` methods to this instance
- * @param {Object} object
- * @return {Animitter}
- */
- setRequestAnimationFrameObject: function(object){
- if(typeof object.requestAnimationFrame !== 'function' || typeof object.cancelAnimationFrame !== 'function'){
- throw new Error("Invalid object provide to `setRequestAnimationFrameObject`");
- }
- this.requestAnimationFrameObject = object;
- return this;
- },
-
- /**
- * start an animation loop
- * @emit Animitter#start
- * @return {Animitter}
- */
- start: function(){
- var self = this;
- if(this.__delay){
- setTimeout(function(){
- onStart(self);
- }, this.__delay);
- } else {
- onStart(this);
- }
- return this;
- },
-
- /**
- * stops the animation loop, does not mark as completed
- *
- * @emit Animitter#stop
- * @return {Animitter}
- */
- stop: function(){
- if( this.__running ){
- this.__running = false;
- exports.running -= 1;
- this.emit('stop', this.deltaTime, this.elapsedTime, this.frameCount);
- }
- return this;
- },
-
- /**
- * update the animation loop once
- *
- * @emit Animitter#update
- * @return {Animitter}
- */
- update: function(){
- this.frameCount++;
- /** @private */
- var now = Date.now();
- this.__lastTime = this.__lastTime || now;
- this.deltaTime = (this.fixedDelta || exports.globalFixedDelta) ? 1000/Math.min(60, this.__fps) : now - this.__lastTime;
- this.elapsedTime += this.deltaTime;
- this.__lastTime = now;
-
- this.emit('update', this.deltaTime, this.elapsedTime, this.frameCount);
- return this;
- }
-};
-
-
-
-for(var method in methods){
- Animitter.prototype[method] = methods[method];
-}
-
-
-/**
- * create an animitter instance,
- * @param {Object} [options]
- * @param {Function} fn( deltaTime:Number, elapsedTime:Number, frameCount:Number )
- * @returns {Animitter}
- */
-function createAnimitter(options, fn){
-
- if( arguments.length === 1 && typeof options === 'function'){
- fn = options;
- options = {};
- }
-
- var _instance = new Animitter( options );
-
- if( fn ){
- _instance.on('update', fn);
- }
-
- return _instance;
-}
-
-module.exports = exports = createAnimitter;
-
-/**
- * create an animitter instance,
- * where the scope is bound in all functions
- * @param {Object} [options]
- * @param {Function} fn( deltaTime:Number, elapsedTime:Number, frameCount:Number )
- * @returns {Animitter}
- */
-exports.bound = function(options, fn){
-
- var loop = createAnimitter(options, fn),
- functionKeys = functions(Animitter.prototype),
- hasBind = !!Function.prototype.bind,
- fnKey;
-
- for(var i=0; i 0) {
- throw new Error('Invalid string. Length must be a multiple of 4')
- }
-
- // Trim off extra bytes after placeholder bytes are found
- // See: https://github.com/beatgammit/base64-js/issues/42
- var validLen = b64.indexOf('=')
- if (validLen === -1) validLen = len
-
- var placeHoldersLen = validLen === len
- ? 0
- : 4 - (validLen % 4)
-
- return [validLen, placeHoldersLen]
-}
-
-// base64 is 4/3 + up to two characters of the original data
-function byteLength (b64) {
- var lens = getLens(b64)
- var validLen = lens[0]
- var placeHoldersLen = lens[1]
- return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen
-}
-
-function _byteLength (b64, validLen, placeHoldersLen) {
- return ((validLen + placeHoldersLen) * 3 / 4) - placeHoldersLen
-}
-
-function toByteArray (b64) {
- var tmp
- var lens = getLens(b64)
- var validLen = lens[0]
- var placeHoldersLen = lens[1]
-
- var arr = new Arr(_byteLength(b64, validLen, placeHoldersLen))
-
- var curByte = 0
-
- // if there are placeholders, only get up to the last complete 4 chars
- var len = placeHoldersLen > 0
- ? validLen - 4
- : validLen
-
- var i
- for (i = 0; i < len; i += 4) {
- tmp =
- (revLookup[b64.charCodeAt(i)] << 18) |
- (revLookup[b64.charCodeAt(i + 1)] << 12) |
- (revLookup[b64.charCodeAt(i + 2)] << 6) |
- revLookup[b64.charCodeAt(i + 3)]
- arr[curByte++] = (tmp >> 16) & 0xFF
- arr[curByte++] = (tmp >> 8) & 0xFF
- arr[curByte++] = tmp & 0xFF
- }
-
- if (placeHoldersLen === 2) {
- tmp =
- (revLookup[b64.charCodeAt(i)] << 2) |
- (revLookup[b64.charCodeAt(i + 1)] >> 4)
- arr[curByte++] = tmp & 0xFF
- }
-
- if (placeHoldersLen === 1) {
- tmp =
- (revLookup[b64.charCodeAt(i)] << 10) |
- (revLookup[b64.charCodeAt(i + 1)] << 4) |
- (revLookup[b64.charCodeAt(i + 2)] >> 2)
- arr[curByte++] = (tmp >> 8) & 0xFF
- arr[curByte++] = tmp & 0xFF
- }
-
- return arr
-}
-
-function tripletToBase64 (num) {
- return lookup[num >> 18 & 0x3F] +
- lookup[num >> 12 & 0x3F] +
- lookup[num >> 6 & 0x3F] +
- lookup[num & 0x3F]
-}
-
-function encodeChunk (uint8, start, end) {
- var tmp
- var output = []
- for (var i = start; i < end; i += 3) {
- tmp =
- ((uint8[i] << 16) & 0xFF0000) +
- ((uint8[i + 1] << 8) & 0xFF00) +
- (uint8[i + 2] & 0xFF)
- output.push(tripletToBase64(tmp))
- }
- return output.join('')
-}
-
-function fromByteArray (uint8) {
- var tmp
- var len = uint8.length
- var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes
- var parts = []
- var maxChunkLength = 16383 // must be multiple of 3
-
- // go through the array every three bytes, we'll deal with trailing stuff later
- for (var i = 0, len2 = len - extraBytes; i < len2; i += maxChunkLength) {
- parts.push(encodeChunk(uint8, i, (i + maxChunkLength) > len2 ? len2 : (i + maxChunkLength)))
- }
-
- // pad the end with zeros, but make sure to not forget the extra bytes
- if (extraBytes === 1) {
- tmp = uint8[len - 1]
- parts.push(
- lookup[tmp >> 2] +
- lookup[(tmp << 4) & 0x3F] +
- '=='
- )
- } else if (extraBytes === 2) {
- tmp = (uint8[len - 2] << 8) + uint8[len - 1]
- parts.push(
- lookup[tmp >> 10] +
- lookup[(tmp >> 4) & 0x3F] +
- lookup[(tmp << 2) & 0x3F] +
- '='
- )
- }
-
- return parts.join('')
-}
-
-},{}],16:[function(_dereq_,module,exports){
-
-},{}],17:[function(_dereq_,module,exports){
-/*!
- * Cross-Browser Split 1.1.1
- * Copyright 2007-2012 Steven Levithan
- * Available under the MIT License
- * ECMAScript compliant, uniform cross-browser split method
- */
-
-/**
- * Splits a string into an array of strings using a regex or string separator. Matches of the
- * separator are not included in the result array. However, if `separator` is a regex that contains
- * capturing groups, backreferences are spliced into the result each time `separator` is matched.
- * Fixes browser bugs compared to the native `String.prototype.split` and can be used reliably
- * cross-browser.
- * @param {String} str String to split.
- * @param {RegExp|String} separator Regex or string to use for separating the string.
- * @param {Number} [limit] Maximum number of items to include in the result array.
- * @returns {Array} Array of substrings.
- * @example
- *
- * // Basic use
- * split('a b c d', ' ');
- * // -> ['a', 'b', 'c', 'd']
- *
- * // With limit
- * split('a b c d', ' ', 2);
- * // -> ['a', 'b']
- *
- * // Backreferences in result array
- * split('..word1 word2..', /([a-z]+)(\d+)/i);
- * // -> ['..', 'word', '1', ' ', 'word', '2', '..']
- */
-module.exports = (function split(undef) {
-
- var nativeSplit = String.prototype.split,
- compliantExecNpcg = /()??/.exec("")[1] === undef,
- // NPCG: nonparticipating capturing group
- self;
-
- self = function(str, separator, limit) {
- // If `separator` is not a regex, use `nativeSplit`
- if (Object.prototype.toString.call(separator) !== "[object RegExp]") {
- return nativeSplit.call(str, separator, limit);
- }
- var output = [],
- flags = (separator.ignoreCase ? "i" : "") + (separator.multiline ? "m" : "") + (separator.extended ? "x" : "") + // Proposed for ES6
- (separator.sticky ? "y" : ""),
- // Firefox 3+
- lastLastIndex = 0,
- // Make `global` and avoid `lastIndex` issues by working with a copy
- separator = new RegExp(separator.source, flags + "g"),
- separator2, match, lastIndex, lastLength;
- str += ""; // Type-convert
- if (!compliantExecNpcg) {
- // Doesn't need flags gy, but they don't hurt
- separator2 = new RegExp("^" + separator.source + "$(?!\\s)", flags);
- }
- /* Values for `limit`, per the spec:
- * If undefined: 4294967295 // Math.pow(2, 32) - 1
- * If 0, Infinity, or NaN: 0
- * If positive number: limit = Math.floor(limit); if (limit > 4294967295) limit -= 4294967296;
- * If negative number: 4294967296 - Math.floor(Math.abs(limit))
- * If other: Type-convert, then use the above rules
- */
- limit = limit === undef ? -1 >>> 0 : // Math.pow(2, 32) - 1
- limit >>> 0; // ToUint32(limit)
- while (match = separator.exec(str)) {
- // `separator.lastIndex` is not reliable cross-browser
- lastIndex = match.index + match[0].length;
- if (lastIndex > lastLastIndex) {
- output.push(str.slice(lastLastIndex, match.index));
- // Fix browsers whose `exec` methods don't consistently return `undefined` for
- // nonparticipating capturing groups
- if (!compliantExecNpcg && match.length > 1) {
- match[0].replace(separator2, function() {
- for (var i = 1; i < arguments.length - 2; i++) {
- if (arguments[i] === undef) {
- match[i] = undef;
- }
- }
- });
- }
- if (match.length > 1 && match.index < str.length) {
- Array.prototype.push.apply(output, match.slice(1));
- }
- lastLength = match[0].length;
- lastLastIndex = lastIndex;
- if (output.length >= limit) {
- break;
- }
- }
- if (separator.lastIndex === match.index) {
- separator.lastIndex++; // Avoid an infinite loop
- }
- }
- if (lastLastIndex === str.length) {
- if (lastLength || !separator.test("")) {
- output.push("");
- }
- } else {
- output.push(str.slice(lastLastIndex));
- }
- return output.length > limit ? output.slice(0, limit) : output;
- };
-
- return self;
-})();
-
-},{}],18:[function(_dereq_,module,exports){
-(function (Buffer){(function (){
-/*!
- * The buffer module from node.js, for the browser.
- *
- * @author Feross Aboukhadijeh
- * @license MIT
- */
-/* eslint-disable no-proto */
-
-'use strict'
-
-var base64 = _dereq_('base64-js')
-var ieee754 = _dereq_('ieee754')
-
-exports.Buffer = Buffer
-exports.SlowBuffer = SlowBuffer
-exports.INSPECT_MAX_BYTES = 50
-
-var K_MAX_LENGTH = 0x7fffffff
-exports.kMaxLength = K_MAX_LENGTH
-
-/**
- * If `Buffer.TYPED_ARRAY_SUPPORT`:
- * === true Use Uint8Array implementation (fastest)
- * === false Print warning and recommend using `buffer` v4.x which has an Object
- * implementation (most compatible, even IE6)
- *
- * Browsers that support typed arrays are IE 10+, Firefox 4+, Chrome 7+, Safari 5.1+,
- * Opera 11.6+, iOS 4.2+.
- *
- * We report that the browser does not support typed arrays if the are not subclassable
- * using __proto__. Firefox 4-29 lacks support for adding new properties to `Uint8Array`
- * (See: https://bugzilla.mozilla.org/show_bug.cgi?id=695438). IE 10 lacks support
- * for __proto__ and has a buggy typed array implementation.
- */
-Buffer.TYPED_ARRAY_SUPPORT = typedArraySupport()
-
-if (!Buffer.TYPED_ARRAY_SUPPORT && typeof console !== 'undefined' &&
- typeof console.error === 'function') {
- console.error(
- 'This browser lacks typed array (Uint8Array) support which is required by ' +
- '`buffer` v5.x. Use `buffer` v4.x if you require old browser support.'
- )
-}
-
-function typedArraySupport () {
- // Can typed array instances can be augmented?
- try {
- var arr = new Uint8Array(1)
- arr.__proto__ = { __proto__: Uint8Array.prototype, foo: function () { return 42 } }
- return arr.foo() === 42
- } catch (e) {
- return false
- }
-}
-
-Object.defineProperty(Buffer.prototype, 'parent', {
- enumerable: true,
- get: function () {
- if (!Buffer.isBuffer(this)) return undefined
- return this.buffer
- }
-})
-
-Object.defineProperty(Buffer.prototype, 'offset', {
- enumerable: true,
- get: function () {
- if (!Buffer.isBuffer(this)) return undefined
- return this.byteOffset
- }
-})
-
-function createBuffer (length) {
- if (length > K_MAX_LENGTH) {
- throw new RangeError('The value "' + length + '" is invalid for option "size"')
- }
- // Return an augmented `Uint8Array` instance
- var buf = new Uint8Array(length)
- buf.__proto__ = Buffer.prototype
- return buf
-}
-
-/**
- * The Buffer constructor returns instances of `Uint8Array` that have their
- * prototype changed to `Buffer.prototype`. Furthermore, `Buffer` is a subclass of
- * `Uint8Array`, so the returned instances will have all the node `Buffer` methods
- * and the `Uint8Array` methods. Square bracket notation works as expected -- it
- * returns a single octet.
- *
- * The `Uint8Array` prototype remains unmodified.
- */
-
-function Buffer (arg, encodingOrOffset, length) {
- // Common case.
- if (typeof arg === 'number') {
- if (typeof encodingOrOffset === 'string') {
- throw new TypeError(
- 'The "string" argument must be of type string. Received type number'
- )
- }
- return allocUnsafe(arg)
- }
- return from(arg, encodingOrOffset, length)
-}
-
-// Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97
-if (typeof Symbol !== 'undefined' && Symbol.species != null &&
- Buffer[Symbol.species] === Buffer) {
- Object.defineProperty(Buffer, Symbol.species, {
- value: null,
- configurable: true,
- enumerable: false,
- writable: false
- })
-}
-
-Buffer.poolSize = 8192 // not used by this implementation
-
-function from (value, encodingOrOffset, length) {
- if (typeof value === 'string') {
- return fromString(value, encodingOrOffset)
- }
-
- if (ArrayBuffer.isView(value)) {
- return fromArrayLike(value)
- }
-
- if (value == null) {
- throw TypeError(
- 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +
- 'or Array-like Object. Received type ' + (typeof value)
- )
- }
-
- if (isInstance(value, ArrayBuffer) ||
- (value && isInstance(value.buffer, ArrayBuffer))) {
- return fromArrayBuffer(value, encodingOrOffset, length)
- }
-
- if (typeof value === 'number') {
- throw new TypeError(
- 'The "value" argument must not be of type number. Received type number'
- )
- }
-
- var valueOf = value.valueOf && value.valueOf()
- if (valueOf != null && valueOf !== value) {
- return Buffer.from(valueOf, encodingOrOffset, length)
- }
-
- var b = fromObject(value)
- if (b) return b
-
- if (typeof Symbol !== 'undefined' && Symbol.toPrimitive != null &&
- typeof value[Symbol.toPrimitive] === 'function') {
- return Buffer.from(
- value[Symbol.toPrimitive]('string'), encodingOrOffset, length
- )
- }
-
- throw new TypeError(
- 'The first argument must be one of type string, Buffer, ArrayBuffer, Array, ' +
- 'or Array-like Object. Received type ' + (typeof value)
- )
-}
-
-/**
- * Functionally equivalent to Buffer(arg, encoding) but throws a TypeError
- * if value is a number.
- * Buffer.from(str[, encoding])
- * Buffer.from(array)
- * Buffer.from(buffer)
- * Buffer.from(arrayBuffer[, byteOffset[, length]])
- **/
-Buffer.from = function (value, encodingOrOffset, length) {
- return from(value, encodingOrOffset, length)
-}
-
-// Note: Change prototype *after* Buffer.from is defined to workaround Chrome bug:
-// https://github.com/feross/buffer/pull/148
-Buffer.prototype.__proto__ = Uint8Array.prototype
-Buffer.__proto__ = Uint8Array
-
-function assertSize (size) {
- if (typeof size !== 'number') {
- throw new TypeError('"size" argument must be of type number')
- } else if (size < 0) {
- throw new RangeError('The value "' + size + '" is invalid for option "size"')
- }
-}
-
-function alloc (size, fill, encoding) {
- assertSize(size)
- if (size <= 0) {
- return createBuffer(size)
- }
- if (fill !== undefined) {
- // Only pay attention to encoding if it's a string. This
- // prevents accidentally sending in a number that would
- // be interpretted as a start offset.
- return typeof encoding === 'string'
- ? createBuffer(size).fill(fill, encoding)
- : createBuffer(size).fill(fill)
- }
- return createBuffer(size)
-}
-
-/**
- * Creates a new filled Buffer instance.
- * alloc(size[, fill[, encoding]])
- **/
-Buffer.alloc = function (size, fill, encoding) {
- return alloc(size, fill, encoding)
-}
-
-function allocUnsafe (size) {
- assertSize(size)
- return createBuffer(size < 0 ? 0 : checked(size) | 0)
-}
-
-/**
- * Equivalent to Buffer(num), by default creates a non-zero-filled Buffer instance.
- * */
-Buffer.allocUnsafe = function (size) {
- return allocUnsafe(size)
-}
-/**
- * Equivalent to SlowBuffer(num), by default creates a non-zero-filled Buffer instance.
- */
-Buffer.allocUnsafeSlow = function (size) {
- return allocUnsafe(size)
-}
-
-function fromString (string, encoding) {
- if (typeof encoding !== 'string' || encoding === '') {
- encoding = 'utf8'
- }
-
- if (!Buffer.isEncoding(encoding)) {
- throw new TypeError('Unknown encoding: ' + encoding)
- }
-
- var length = byteLength(string, encoding) | 0
- var buf = createBuffer(length)
-
- var actual = buf.write(string, encoding)
-
- if (actual !== length) {
- // Writing a hex string, for example, that contains invalid characters will
- // cause everything after the first invalid character to be ignored. (e.g.
- // 'abxxcd' will be treated as 'ab')
- buf = buf.slice(0, actual)
- }
-
- return buf
-}
-
-function fromArrayLike (array) {
- var length = array.length < 0 ? 0 : checked(array.length) | 0
- var buf = createBuffer(length)
- for (var i = 0; i < length; i += 1) {
- buf[i] = array[i] & 255
- }
- return buf
-}
-
-function fromArrayBuffer (array, byteOffset, length) {
- if (byteOffset < 0 || array.byteLength < byteOffset) {
- throw new RangeError('"offset" is outside of buffer bounds')
- }
-
- if (array.byteLength < byteOffset + (length || 0)) {
- throw new RangeError('"length" is outside of buffer bounds')
- }
-
- var buf
- if (byteOffset === undefined && length === undefined) {
- buf = new Uint8Array(array)
- } else if (length === undefined) {
- buf = new Uint8Array(array, byteOffset)
- } else {
- buf = new Uint8Array(array, byteOffset, length)
- }
-
- // Return an augmented `Uint8Array` instance
- buf.__proto__ = Buffer.prototype
- return buf
-}
-
-function fromObject (obj) {
- if (Buffer.isBuffer(obj)) {
- var len = checked(obj.length) | 0
- var buf = createBuffer(len)
-
- if (buf.length === 0) {
- return buf
- }
-
- obj.copy(buf, 0, 0, len)
- return buf
- }
-
- if (obj.length !== undefined) {
- if (typeof obj.length !== 'number' || numberIsNaN(obj.length)) {
- return createBuffer(0)
- }
- return fromArrayLike(obj)
- }
-
- if (obj.type === 'Buffer' && Array.isArray(obj.data)) {
- return fromArrayLike(obj.data)
- }
-}
-
-function checked (length) {
- // Note: cannot use `length < K_MAX_LENGTH` here because that fails when
- // length is NaN (which is otherwise coerced to zero.)
- if (length >= K_MAX_LENGTH) {
- throw new RangeError('Attempt to allocate Buffer larger than maximum ' +
- 'size: 0x' + K_MAX_LENGTH.toString(16) + ' bytes')
- }
- return length | 0
-}
-
-function SlowBuffer (length) {
- if (+length != length) { // eslint-disable-line eqeqeq
- length = 0
- }
- return Buffer.alloc(+length)
-}
-
-Buffer.isBuffer = function isBuffer (b) {
- return b != null && b._isBuffer === true &&
- b !== Buffer.prototype // so Buffer.isBuffer(Buffer.prototype) will be false
-}
-
-Buffer.compare = function compare (a, b) {
- if (isInstance(a, Uint8Array)) a = Buffer.from(a, a.offset, a.byteLength)
- if (isInstance(b, Uint8Array)) b = Buffer.from(b, b.offset, b.byteLength)
- if (!Buffer.isBuffer(a) || !Buffer.isBuffer(b)) {
- throw new TypeError(
- 'The "buf1", "buf2" arguments must be one of type Buffer or Uint8Array'
- )
- }
-
- if (a === b) return 0
-
- var x = a.length
- var y = b.length
-
- for (var i = 0, len = Math.min(x, y); i < len; ++i) {
- if (a[i] !== b[i]) {
- x = a[i]
- y = b[i]
- break
- }
- }
-
- if (x < y) return -1
- if (y < x) return 1
- return 0
-}
-
-Buffer.isEncoding = function isEncoding (encoding) {
- switch (String(encoding).toLowerCase()) {
- case 'hex':
- case 'utf8':
- case 'utf-8':
- case 'ascii':
- case 'latin1':
- case 'binary':
- case 'base64':
- case 'ucs2':
- case 'ucs-2':
- case 'utf16le':
- case 'utf-16le':
- return true
- default:
- return false
- }
-}
-
-Buffer.concat = function concat (list, length) {
- if (!Array.isArray(list)) {
- throw new TypeError('"list" argument must be an Array of Buffers')
- }
-
- if (list.length === 0) {
- return Buffer.alloc(0)
- }
-
- var i
- if (length === undefined) {
- length = 0
- for (i = 0; i < list.length; ++i) {
- length += list[i].length
- }
- }
-
- var buffer = Buffer.allocUnsafe(length)
- var pos = 0
- for (i = 0; i < list.length; ++i) {
- var buf = list[i]
- if (isInstance(buf, Uint8Array)) {
- buf = Buffer.from(buf)
- }
- if (!Buffer.isBuffer(buf)) {
- throw new TypeError('"list" argument must be an Array of Buffers')
- }
- buf.copy(buffer, pos)
- pos += buf.length
- }
- return buffer
-}
-
-function byteLength (string, encoding) {
- if (Buffer.isBuffer(string)) {
- return string.length
- }
- if (ArrayBuffer.isView(string) || isInstance(string, ArrayBuffer)) {
- return string.byteLength
- }
- if (typeof string !== 'string') {
- throw new TypeError(
- 'The "string" argument must be one of type string, Buffer, or ArrayBuffer. ' +
- 'Received type ' + typeof string
- )
- }
-
- var len = string.length
- var mustMatch = (arguments.length > 2 && arguments[2] === true)
- if (!mustMatch && len === 0) return 0
-
- // Use a for loop to avoid recursion
- var loweredCase = false
- for (;;) {
- switch (encoding) {
- case 'ascii':
- case 'latin1':
- case 'binary':
- return len
- case 'utf8':
- case 'utf-8':
- return utf8ToBytes(string).length
- case 'ucs2':
- case 'ucs-2':
- case 'utf16le':
- case 'utf-16le':
- return len * 2
- case 'hex':
- return len >>> 1
- case 'base64':
- return base64ToBytes(string).length
- default:
- if (loweredCase) {
- return mustMatch ? -1 : utf8ToBytes(string).length // assume utf8
- }
- encoding = ('' + encoding).toLowerCase()
- loweredCase = true
- }
- }
-}
-Buffer.byteLength = byteLength
-
-function slowToString (encoding, start, end) {
- var loweredCase = false
-
- // No need to verify that "this.length <= MAX_UINT32" since it's a read-only
- // property of a typed array.
-
- // This behaves neither like String nor Uint8Array in that we set start/end
- // to their upper/lower bounds if the value passed is out of range.
- // undefined is handled specially as per ECMA-262 6th Edition,
- // Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.
- if (start === undefined || start < 0) {
- start = 0
- }
- // Return early if start > this.length. Done here to prevent potential uint32
- // coercion fail below.
- if (start > this.length) {
- return ''
- }
-
- if (end === undefined || end > this.length) {
- end = this.length
- }
-
- if (end <= 0) {
- return ''
- }
-
- // Force coersion to uint32. This will also coerce falsey/NaN values to 0.
- end >>>= 0
- start >>>= 0
-
- if (end <= start) {
- return ''
- }
-
- if (!encoding) encoding = 'utf8'
-
- while (true) {
- switch (encoding) {
- case 'hex':
- return hexSlice(this, start, end)
-
- case 'utf8':
- case 'utf-8':
- return utf8Slice(this, start, end)
-
- case 'ascii':
- return asciiSlice(this, start, end)
-
- case 'latin1':
- case 'binary':
- return latin1Slice(this, start, end)
-
- case 'base64':
- return base64Slice(this, start, end)
-
- case 'ucs2':
- case 'ucs-2':
- case 'utf16le':
- case 'utf-16le':
- return utf16leSlice(this, start, end)
-
- default:
- if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)
- encoding = (encoding + '').toLowerCase()
- loweredCase = true
- }
- }
-}
-
-// This property is used by `Buffer.isBuffer` (and the `is-buffer` npm package)
-// to detect a Buffer instance. It's not possible to use `instanceof Buffer`
-// reliably in a browserify context because there could be multiple different
-// copies of the 'buffer' package in use. This method works even for Buffer
-// instances that were created from another copy of the `buffer` package.
-// See: https://github.com/feross/buffer/issues/154
-Buffer.prototype._isBuffer = true
-
-function swap (b, n, m) {
- var i = b[n]
- b[n] = b[m]
- b[m] = i
-}
-
-Buffer.prototype.swap16 = function swap16 () {
- var len = this.length
- if (len % 2 !== 0) {
- throw new RangeError('Buffer size must be a multiple of 16-bits')
- }
- for (var i = 0; i < len; i += 2) {
- swap(this, i, i + 1)
- }
- return this
-}
-
-Buffer.prototype.swap32 = function swap32 () {
- var len = this.length
- if (len % 4 !== 0) {
- throw new RangeError('Buffer size must be a multiple of 32-bits')
- }
- for (var i = 0; i < len; i += 4) {
- swap(this, i, i + 3)
- swap(this, i + 1, i + 2)
- }
- return this
-}
-
-Buffer.prototype.swap64 = function swap64 () {
- var len = this.length
- if (len % 8 !== 0) {
- throw new RangeError('Buffer size must be a multiple of 64-bits')
- }
- for (var i = 0; i < len; i += 8) {
- swap(this, i, i + 7)
- swap(this, i + 1, i + 6)
- swap(this, i + 2, i + 5)
- swap(this, i + 3, i + 4)
- }
- return this
-}
-
-Buffer.prototype.toString = function toString () {
- var length = this.length
- if (length === 0) return ''
- if (arguments.length === 0) return utf8Slice(this, 0, length)
- return slowToString.apply(this, arguments)
-}
-
-Buffer.prototype.toLocaleString = Buffer.prototype.toString
-
-Buffer.prototype.equals = function equals (b) {
- if (!Buffer.isBuffer(b)) throw new TypeError('Argument must be a Buffer')
- if (this === b) return true
- return Buffer.compare(this, b) === 0
-}
-
-Buffer.prototype.inspect = function inspect () {
- var str = ''
- var max = exports.INSPECT_MAX_BYTES
- str = this.toString('hex', 0, max).replace(/(.{2})/g, '$1 ').trim()
- if (this.length > max) str += ' ... '
- return ''
-}
-
-Buffer.prototype.compare = function compare (target, start, end, thisStart, thisEnd) {
- if (isInstance(target, Uint8Array)) {
- target = Buffer.from(target, target.offset, target.byteLength)
- }
- if (!Buffer.isBuffer(target)) {
- throw new TypeError(
- 'The "target" argument must be one of type Buffer or Uint8Array. ' +
- 'Received type ' + (typeof target)
- )
- }
-
- if (start === undefined) {
- start = 0
- }
- if (end === undefined) {
- end = target ? target.length : 0
- }
- if (thisStart === undefined) {
- thisStart = 0
- }
- if (thisEnd === undefined) {
- thisEnd = this.length
- }
-
- if (start < 0 || end > target.length || thisStart < 0 || thisEnd > this.length) {
- throw new RangeError('out of range index')
- }
-
- if (thisStart >= thisEnd && start >= end) {
- return 0
- }
- if (thisStart >= thisEnd) {
- return -1
- }
- if (start >= end) {
- return 1
- }
-
- start >>>= 0
- end >>>= 0
- thisStart >>>= 0
- thisEnd >>>= 0
-
- if (this === target) return 0
-
- var x = thisEnd - thisStart
- var y = end - start
- var len = Math.min(x, y)
-
- var thisCopy = this.slice(thisStart, thisEnd)
- var targetCopy = target.slice(start, end)
-
- for (var i = 0; i < len; ++i) {
- if (thisCopy[i] !== targetCopy[i]) {
- x = thisCopy[i]
- y = targetCopy[i]
- break
- }
- }
-
- if (x < y) return -1
- if (y < x) return 1
- return 0
-}
-
-// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,
-// OR the last index of `val` in `buffer` at offset <= `byteOffset`.
-//
-// Arguments:
-// - buffer - a Buffer to search
-// - val - a string, Buffer, or number
-// - byteOffset - an index into `buffer`; will be clamped to an int32
-// - encoding - an optional encoding, relevant is val is a string
-// - dir - true for indexOf, false for lastIndexOf
-function bidirectionalIndexOf (buffer, val, byteOffset, encoding, dir) {
- // Empty buffer means no match
- if (buffer.length === 0) return -1
-
- // Normalize byteOffset
- if (typeof byteOffset === 'string') {
- encoding = byteOffset
- byteOffset = 0
- } else if (byteOffset > 0x7fffffff) {
- byteOffset = 0x7fffffff
- } else if (byteOffset < -0x80000000) {
- byteOffset = -0x80000000
- }
- byteOffset = +byteOffset // Coerce to Number.
- if (numberIsNaN(byteOffset)) {
- // byteOffset: it it's undefined, null, NaN, "foo", etc, search whole buffer
- byteOffset = dir ? 0 : (buffer.length - 1)
- }
-
- // Normalize byteOffset: negative offsets start from the end of the buffer
- if (byteOffset < 0) byteOffset = buffer.length + byteOffset
- if (byteOffset >= buffer.length) {
- if (dir) return -1
- else byteOffset = buffer.length - 1
- } else if (byteOffset < 0) {
- if (dir) byteOffset = 0
- else return -1
- }
-
- // Normalize val
- if (typeof val === 'string') {
- val = Buffer.from(val, encoding)
- }
-
- // Finally, search either indexOf (if dir is true) or lastIndexOf
- if (Buffer.isBuffer(val)) {
- // Special case: looking for empty string/buffer always fails
- if (val.length === 0) {
- return -1
- }
- return arrayIndexOf(buffer, val, byteOffset, encoding, dir)
- } else if (typeof val === 'number') {
- val = val & 0xFF // Search for a byte value [0-255]
- if (typeof Uint8Array.prototype.indexOf === 'function') {
- if (dir) {
- return Uint8Array.prototype.indexOf.call(buffer, val, byteOffset)
- } else {
- return Uint8Array.prototype.lastIndexOf.call(buffer, val, byteOffset)
- }
- }
- return arrayIndexOf(buffer, [ val ], byteOffset, encoding, dir)
- }
-
- throw new TypeError('val must be string, number or Buffer')
-}
-
-function arrayIndexOf (arr, val, byteOffset, encoding, dir) {
- var indexSize = 1
- var arrLength = arr.length
- var valLength = val.length
-
- if (encoding !== undefined) {
- encoding = String(encoding).toLowerCase()
- if (encoding === 'ucs2' || encoding === 'ucs-2' ||
- encoding === 'utf16le' || encoding === 'utf-16le') {
- if (arr.length < 2 || val.length < 2) {
- return -1
- }
- indexSize = 2
- arrLength /= 2
- valLength /= 2
- byteOffset /= 2
- }
- }
-
- function read (buf, i) {
- if (indexSize === 1) {
- return buf[i]
- } else {
- return buf.readUInt16BE(i * indexSize)
- }
- }
-
- var i
- if (dir) {
- var foundIndex = -1
- for (i = byteOffset; i < arrLength; i++) {
- if (read(arr, i) === read(val, foundIndex === -1 ? 0 : i - foundIndex)) {
- if (foundIndex === -1) foundIndex = i
- if (i - foundIndex + 1 === valLength) return foundIndex * indexSize
- } else {
- if (foundIndex !== -1) i -= i - foundIndex
- foundIndex = -1
- }
- }
- } else {
- if (byteOffset + valLength > arrLength) byteOffset = arrLength - valLength
- for (i = byteOffset; i >= 0; i--) {
- var found = true
- for (var j = 0; j < valLength; j++) {
- if (read(arr, i + j) !== read(val, j)) {
- found = false
- break
- }
- }
- if (found) return i
- }
- }
-
- return -1
-}
-
-Buffer.prototype.includes = function includes (val, byteOffset, encoding) {
- return this.indexOf(val, byteOffset, encoding) !== -1
-}
-
-Buffer.prototype.indexOf = function indexOf (val, byteOffset, encoding) {
- return bidirectionalIndexOf(this, val, byteOffset, encoding, true)
-}
-
-Buffer.prototype.lastIndexOf = function lastIndexOf (val, byteOffset, encoding) {
- return bidirectionalIndexOf(this, val, byteOffset, encoding, false)
-}
-
-function hexWrite (buf, string, offset, length) {
- offset = Number(offset) || 0
- var remaining = buf.length - offset
- if (!length) {
- length = remaining
- } else {
- length = Number(length)
- if (length > remaining) {
- length = remaining
- }
- }
-
- var strLen = string.length
-
- if (length > strLen / 2) {
- length = strLen / 2
- }
- for (var i = 0; i < length; ++i) {
- var parsed = parseInt(string.substr(i * 2, 2), 16)
- if (numberIsNaN(parsed)) return i
- buf[offset + i] = parsed
- }
- return i
-}
-
-function utf8Write (buf, string, offset, length) {
- return blitBuffer(utf8ToBytes(string, buf.length - offset), buf, offset, length)
-}
-
-function asciiWrite (buf, string, offset, length) {
- return blitBuffer(asciiToBytes(string), buf, offset, length)
-}
-
-function latin1Write (buf, string, offset, length) {
- return asciiWrite(buf, string, offset, length)
-}
-
-function base64Write (buf, string, offset, length) {
- return blitBuffer(base64ToBytes(string), buf, offset, length)
-}
-
-function ucs2Write (buf, string, offset, length) {
- return blitBuffer(utf16leToBytes(string, buf.length - offset), buf, offset, length)
-}
-
-Buffer.prototype.write = function write (string, offset, length, encoding) {
- // Buffer#write(string)
- if (offset === undefined) {
- encoding = 'utf8'
- length = this.length
- offset = 0
- // Buffer#write(string, encoding)
- } else if (length === undefined && typeof offset === 'string') {
- encoding = offset
- length = this.length
- offset = 0
- // Buffer#write(string, offset[, length][, encoding])
- } else if (isFinite(offset)) {
- offset = offset >>> 0
- if (isFinite(length)) {
- length = length >>> 0
- if (encoding === undefined) encoding = 'utf8'
- } else {
- encoding = length
- length = undefined
- }
- } else {
- throw new Error(
- 'Buffer.write(string, encoding, offset[, length]) is no longer supported'
- )
- }
-
- var remaining = this.length - offset
- if (length === undefined || length > remaining) length = remaining
-
- if ((string.length > 0 && (length < 0 || offset < 0)) || offset > this.length) {
- throw new RangeError('Attempt to write outside buffer bounds')
- }
-
- if (!encoding) encoding = 'utf8'
-
- var loweredCase = false
- for (;;) {
- switch (encoding) {
- case 'hex':
- return hexWrite(this, string, offset, length)
-
- case 'utf8':
- case 'utf-8':
- return utf8Write(this, string, offset, length)
-
- case 'ascii':
- return asciiWrite(this, string, offset, length)
-
- case 'latin1':
- case 'binary':
- return latin1Write(this, string, offset, length)
-
- case 'base64':
- // Warning: maxLength not taken into account in base64Write
- return base64Write(this, string, offset, length)
-
- case 'ucs2':
- case 'ucs-2':
- case 'utf16le':
- case 'utf-16le':
- return ucs2Write(this, string, offset, length)
-
- default:
- if (loweredCase) throw new TypeError('Unknown encoding: ' + encoding)
- encoding = ('' + encoding).toLowerCase()
- loweredCase = true
- }
- }
-}
-
-Buffer.prototype.toJSON = function toJSON () {
- return {
- type: 'Buffer',
- data: Array.prototype.slice.call(this._arr || this, 0)
- }
-}
-
-function base64Slice (buf, start, end) {
- if (start === 0 && end === buf.length) {
- return base64.fromByteArray(buf)
- } else {
- return base64.fromByteArray(buf.slice(start, end))
- }
-}
-
-function utf8Slice (buf, start, end) {
- end = Math.min(buf.length, end)
- var res = []
-
- var i = start
- while (i < end) {
- var firstByte = buf[i]
- var codePoint = null
- var bytesPerSequence = (firstByte > 0xEF) ? 4
- : (firstByte > 0xDF) ? 3
- : (firstByte > 0xBF) ? 2
- : 1
-
- if (i + bytesPerSequence <= end) {
- var secondByte, thirdByte, fourthByte, tempCodePoint
-
- switch (bytesPerSequence) {
- case 1:
- if (firstByte < 0x80) {
- codePoint = firstByte
- }
- break
- case 2:
- secondByte = buf[i + 1]
- if ((secondByte & 0xC0) === 0x80) {
- tempCodePoint = (firstByte & 0x1F) << 0x6 | (secondByte & 0x3F)
- if (tempCodePoint > 0x7F) {
- codePoint = tempCodePoint
- }
- }
- break
- case 3:
- secondByte = buf[i + 1]
- thirdByte = buf[i + 2]
- if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80) {
- tempCodePoint = (firstByte & 0xF) << 0xC | (secondByte & 0x3F) << 0x6 | (thirdByte & 0x3F)
- if (tempCodePoint > 0x7FF && (tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF)) {
- codePoint = tempCodePoint
- }
- }
- break
- case 4:
- secondByte = buf[i + 1]
- thirdByte = buf[i + 2]
- fourthByte = buf[i + 3]
- if ((secondByte & 0xC0) === 0x80 && (thirdByte & 0xC0) === 0x80 && (fourthByte & 0xC0) === 0x80) {
- tempCodePoint = (firstByte & 0xF) << 0x12 | (secondByte & 0x3F) << 0xC | (thirdByte & 0x3F) << 0x6 | (fourthByte & 0x3F)
- if (tempCodePoint > 0xFFFF && tempCodePoint < 0x110000) {
- codePoint = tempCodePoint
- }
- }
- }
- }
-
- if (codePoint === null) {
- // we did not generate a valid codePoint so insert a
- // replacement char (U+FFFD) and advance only 1 byte
- codePoint = 0xFFFD
- bytesPerSequence = 1
- } else if (codePoint > 0xFFFF) {
- // encode to utf16 (surrogate pair dance)
- codePoint -= 0x10000
- res.push(codePoint >>> 10 & 0x3FF | 0xD800)
- codePoint = 0xDC00 | codePoint & 0x3FF
- }
-
- res.push(codePoint)
- i += bytesPerSequence
- }
-
- return decodeCodePointsArray(res)
-}
-
-// Based on http://stackoverflow.com/a/22747272/680742, the browser with
-// the lowest limit is Chrome, with 0x10000 args.
-// We go 1 magnitude less, for safety
-var MAX_ARGUMENTS_LENGTH = 0x1000
-
-function decodeCodePointsArray (codePoints) {
- var len = codePoints.length
- if (len <= MAX_ARGUMENTS_LENGTH) {
- return String.fromCharCode.apply(String, codePoints) // avoid extra slice()
- }
-
- // Decode in chunks to avoid "call stack size exceeded".
- var res = ''
- var i = 0
- while (i < len) {
- res += String.fromCharCode.apply(
- String,
- codePoints.slice(i, i += MAX_ARGUMENTS_LENGTH)
- )
- }
- return res
-}
-
-function asciiSlice (buf, start, end) {
- var ret = ''
- end = Math.min(buf.length, end)
-
- for (var i = start; i < end; ++i) {
- ret += String.fromCharCode(buf[i] & 0x7F)
- }
- return ret
-}
-
-function latin1Slice (buf, start, end) {
- var ret = ''
- end = Math.min(buf.length, end)
-
- for (var i = start; i < end; ++i) {
- ret += String.fromCharCode(buf[i])
- }
- return ret
-}
-
-function hexSlice (buf, start, end) {
- var len = buf.length
-
- if (!start || start < 0) start = 0
- if (!end || end < 0 || end > len) end = len
-
- var out = ''
- for (var i = start; i < end; ++i) {
- out += toHex(buf[i])
- }
- return out
-}
-
-function utf16leSlice (buf, start, end) {
- var bytes = buf.slice(start, end)
- var res = ''
- for (var i = 0; i < bytes.length; i += 2) {
- res += String.fromCharCode(bytes[i] + (bytes[i + 1] * 256))
- }
- return res
-}
-
-Buffer.prototype.slice = function slice (start, end) {
- var len = this.length
- start = ~~start
- end = end === undefined ? len : ~~end
-
- if (start < 0) {
- start += len
- if (start < 0) start = 0
- } else if (start > len) {
- start = len
- }
-
- if (end < 0) {
- end += len
- if (end < 0) end = 0
- } else if (end > len) {
- end = len
- }
-
- if (end < start) end = start
-
- var newBuf = this.subarray(start, end)
- // Return an augmented `Uint8Array` instance
- newBuf.__proto__ = Buffer.prototype
- return newBuf
-}
-
-/*
- * Need to make sure that buffer isn't trying to write out of bounds.
- */
-function checkOffset (offset, ext, length) {
- if ((offset % 1) !== 0 || offset < 0) throw new RangeError('offset is not uint')
- if (offset + ext > length) throw new RangeError('Trying to access beyond buffer length')
-}
-
-Buffer.prototype.readUIntLE = function readUIntLE (offset, byteLength, noAssert) {
- offset = offset >>> 0
- byteLength = byteLength >>> 0
- if (!noAssert) checkOffset(offset, byteLength, this.length)
-
- var val = this[offset]
- var mul = 1
- var i = 0
- while (++i < byteLength && (mul *= 0x100)) {
- val += this[offset + i] * mul
- }
-
- return val
-}
-
-Buffer.prototype.readUIntBE = function readUIntBE (offset, byteLength, noAssert) {
- offset = offset >>> 0
- byteLength = byteLength >>> 0
- if (!noAssert) {
- checkOffset(offset, byteLength, this.length)
- }
-
- var val = this[offset + --byteLength]
- var mul = 1
- while (byteLength > 0 && (mul *= 0x100)) {
- val += this[offset + --byteLength] * mul
- }
-
- return val
-}
-
-Buffer.prototype.readUInt8 = function readUInt8 (offset, noAssert) {
- offset = offset >>> 0
- if (!noAssert) checkOffset(offset, 1, this.length)
- return this[offset]
-}
-
-Buffer.prototype.readUInt16LE = function readUInt16LE (offset, noAssert) {
- offset = offset >>> 0
- if (!noAssert) checkOffset(offset, 2, this.length)
- return this[offset] | (this[offset + 1] << 8)
-}
-
-Buffer.prototype.readUInt16BE = function readUInt16BE (offset, noAssert) {
- offset = offset >>> 0
- if (!noAssert) checkOffset(offset, 2, this.length)
- return (this[offset] << 8) | this[offset + 1]
-}
-
-Buffer.prototype.readUInt32LE = function readUInt32LE (offset, noAssert) {
- offset = offset >>> 0
- if (!noAssert) checkOffset(offset, 4, this.length)
-
- return ((this[offset]) |
- (this[offset + 1] << 8) |
- (this[offset + 2] << 16)) +
- (this[offset + 3] * 0x1000000)
-}
-
-Buffer.prototype.readUInt32BE = function readUInt32BE (offset, noAssert) {
- offset = offset >>> 0
- if (!noAssert) checkOffset(offset, 4, this.length)
-
- return (this[offset] * 0x1000000) +
- ((this[offset + 1] << 16) |
- (this[offset + 2] << 8) |
- this[offset + 3])
-}
-
-Buffer.prototype.readIntLE = function readIntLE (offset, byteLength, noAssert) {
- offset = offset >>> 0
- byteLength = byteLength >>> 0
- if (!noAssert) checkOffset(offset, byteLength, this.length)
-
- var val = this[offset]
- var mul = 1
- var i = 0
- while (++i < byteLength && (mul *= 0x100)) {
- val += this[offset + i] * mul
- }
- mul *= 0x80
-
- if (val >= mul) val -= Math.pow(2, 8 * byteLength)
-
- return val
-}
-
-Buffer.prototype.readIntBE = function readIntBE (offset, byteLength, noAssert) {
- offset = offset >>> 0
- byteLength = byteLength >>> 0
- if (!noAssert) checkOffset(offset, byteLength, this.length)
-
- var i = byteLength
- var mul = 1
- var val = this[offset + --i]
- while (i > 0 && (mul *= 0x100)) {
- val += this[offset + --i] * mul
- }
- mul *= 0x80
-
- if (val >= mul) val -= Math.pow(2, 8 * byteLength)
-
- return val
-}
-
-Buffer.prototype.readInt8 = function readInt8 (offset, noAssert) {
- offset = offset >>> 0
- if (!noAssert) checkOffset(offset, 1, this.length)
- if (!(this[offset] & 0x80)) return (this[offset])
- return ((0xff - this[offset] + 1) * -1)
-}
-
-Buffer.prototype.readInt16LE = function readInt16LE (offset, noAssert) {
- offset = offset >>> 0
- if (!noAssert) checkOffset(offset, 2, this.length)
- var val = this[offset] | (this[offset + 1] << 8)
- return (val & 0x8000) ? val | 0xFFFF0000 : val
-}
-
-Buffer.prototype.readInt16BE = function readInt16BE (offset, noAssert) {
- offset = offset >>> 0
- if (!noAssert) checkOffset(offset, 2, this.length)
- var val = this[offset + 1] | (this[offset] << 8)
- return (val & 0x8000) ? val | 0xFFFF0000 : val
-}
-
-Buffer.prototype.readInt32LE = function readInt32LE (offset, noAssert) {
- offset = offset >>> 0
- if (!noAssert) checkOffset(offset, 4, this.length)
-
- return (this[offset]) |
- (this[offset + 1] << 8) |
- (this[offset + 2] << 16) |
- (this[offset + 3] << 24)
-}
-
-Buffer.prototype.readInt32BE = function readInt32BE (offset, noAssert) {
- offset = offset >>> 0
- if (!noAssert) checkOffset(offset, 4, this.length)
-
- return (this[offset] << 24) |
- (this[offset + 1] << 16) |
- (this[offset + 2] << 8) |
- (this[offset + 3])
-}
-
-Buffer.prototype.readFloatLE = function readFloatLE (offset, noAssert) {
- offset = offset >>> 0
- if (!noAssert) checkOffset(offset, 4, this.length)
- return ieee754.read(this, offset, true, 23, 4)
-}
-
-Buffer.prototype.readFloatBE = function readFloatBE (offset, noAssert) {
- offset = offset >>> 0
- if (!noAssert) checkOffset(offset, 4, this.length)
- return ieee754.read(this, offset, false, 23, 4)
-}
-
-Buffer.prototype.readDoubleLE = function readDoubleLE (offset, noAssert) {
- offset = offset >>> 0
- if (!noAssert) checkOffset(offset, 8, this.length)
- return ieee754.read(this, offset, true, 52, 8)
-}
-
-Buffer.prototype.readDoubleBE = function readDoubleBE (offset, noAssert) {
- offset = offset >>> 0
- if (!noAssert) checkOffset(offset, 8, this.length)
- return ieee754.read(this, offset, false, 52, 8)
-}
-
-function checkInt (buf, value, offset, ext, max, min) {
- if (!Buffer.isBuffer(buf)) throw new TypeError('"buffer" argument must be a Buffer instance')
- if (value > max || value < min) throw new RangeError('"value" argument is out of bounds')
- if (offset + ext > buf.length) throw new RangeError('Index out of range')
-}
-
-Buffer.prototype.writeUIntLE = function writeUIntLE (value, offset, byteLength, noAssert) {
- value = +value
- offset = offset >>> 0
- byteLength = byteLength >>> 0
- if (!noAssert) {
- var maxBytes = Math.pow(2, 8 * byteLength) - 1
- checkInt(this, value, offset, byteLength, maxBytes, 0)
- }
-
- var mul = 1
- var i = 0
- this[offset] = value & 0xFF
- while (++i < byteLength && (mul *= 0x100)) {
- this[offset + i] = (value / mul) & 0xFF
- }
-
- return offset + byteLength
-}
-
-Buffer.prototype.writeUIntBE = function writeUIntBE (value, offset, byteLength, noAssert) {
- value = +value
- offset = offset >>> 0
- byteLength = byteLength >>> 0
- if (!noAssert) {
- var maxBytes = Math.pow(2, 8 * byteLength) - 1
- checkInt(this, value, offset, byteLength, maxBytes, 0)
- }
-
- var i = byteLength - 1
- var mul = 1
- this[offset + i] = value & 0xFF
- while (--i >= 0 && (mul *= 0x100)) {
- this[offset + i] = (value / mul) & 0xFF
- }
-
- return offset + byteLength
-}
-
-Buffer.prototype.writeUInt8 = function writeUInt8 (value, offset, noAssert) {
- value = +value
- offset = offset >>> 0
- if (!noAssert) checkInt(this, value, offset, 1, 0xff, 0)
- this[offset] = (value & 0xff)
- return offset + 1
-}
-
-Buffer.prototype.writeUInt16LE = function writeUInt16LE (value, offset, noAssert) {
- value = +value
- offset = offset >>> 0
- if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)
- this[offset] = (value & 0xff)
- this[offset + 1] = (value >>> 8)
- return offset + 2
-}
-
-Buffer.prototype.writeUInt16BE = function writeUInt16BE (value, offset, noAssert) {
- value = +value
- offset = offset >>> 0
- if (!noAssert) checkInt(this, value, offset, 2, 0xffff, 0)
- this[offset] = (value >>> 8)
- this[offset + 1] = (value & 0xff)
- return offset + 2
-}
-
-Buffer.prototype.writeUInt32LE = function writeUInt32LE (value, offset, noAssert) {
- value = +value
- offset = offset >>> 0
- if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)
- this[offset + 3] = (value >>> 24)
- this[offset + 2] = (value >>> 16)
- this[offset + 1] = (value >>> 8)
- this[offset] = (value & 0xff)
- return offset + 4
-}
-
-Buffer.prototype.writeUInt32BE = function writeUInt32BE (value, offset, noAssert) {
- value = +value
- offset = offset >>> 0
- if (!noAssert) checkInt(this, value, offset, 4, 0xffffffff, 0)
- this[offset] = (value >>> 24)
- this[offset + 1] = (value >>> 16)
- this[offset + 2] = (value >>> 8)
- this[offset + 3] = (value & 0xff)
- return offset + 4
-}
-
-Buffer.prototype.writeIntLE = function writeIntLE (value, offset, byteLength, noAssert) {
- value = +value
- offset = offset >>> 0
- if (!noAssert) {
- var limit = Math.pow(2, (8 * byteLength) - 1)
-
- checkInt(this, value, offset, byteLength, limit - 1, -limit)
- }
-
- var i = 0
- var mul = 1
- var sub = 0
- this[offset] = value & 0xFF
- while (++i < byteLength && (mul *= 0x100)) {
- if (value < 0 && sub === 0 && this[offset + i - 1] !== 0) {
- sub = 1
- }
- this[offset + i] = ((value / mul) >> 0) - sub & 0xFF
- }
-
- return offset + byteLength
-}
-
-Buffer.prototype.writeIntBE = function writeIntBE (value, offset, byteLength, noAssert) {
- value = +value
- offset = offset >>> 0
- if (!noAssert) {
- var limit = Math.pow(2, (8 * byteLength) - 1)
-
- checkInt(this, value, offset, byteLength, limit - 1, -limit)
- }
-
- var i = byteLength - 1
- var mul = 1
- var sub = 0
- this[offset + i] = value & 0xFF
- while (--i >= 0 && (mul *= 0x100)) {
- if (value < 0 && sub === 0 && this[offset + i + 1] !== 0) {
- sub = 1
- }
- this[offset + i] = ((value / mul) >> 0) - sub & 0xFF
- }
-
- return offset + byteLength
-}
-
-Buffer.prototype.writeInt8 = function writeInt8 (value, offset, noAssert) {
- value = +value
- offset = offset >>> 0
- if (!noAssert) checkInt(this, value, offset, 1, 0x7f, -0x80)
- if (value < 0) value = 0xff + value + 1
- this[offset] = (value & 0xff)
- return offset + 1
-}
-
-Buffer.prototype.writeInt16LE = function writeInt16LE (value, offset, noAssert) {
- value = +value
- offset = offset >>> 0
- if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)
- this[offset] = (value & 0xff)
- this[offset + 1] = (value >>> 8)
- return offset + 2
-}
-
-Buffer.prototype.writeInt16BE = function writeInt16BE (value, offset, noAssert) {
- value = +value
- offset = offset >>> 0
- if (!noAssert) checkInt(this, value, offset, 2, 0x7fff, -0x8000)
- this[offset] = (value >>> 8)
- this[offset + 1] = (value & 0xff)
- return offset + 2
-}
-
-Buffer.prototype.writeInt32LE = function writeInt32LE (value, offset, noAssert) {
- value = +value
- offset = offset >>> 0
- if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)
- this[offset] = (value & 0xff)
- this[offset + 1] = (value >>> 8)
- this[offset + 2] = (value >>> 16)
- this[offset + 3] = (value >>> 24)
- return offset + 4
-}
-
-Buffer.prototype.writeInt32BE = function writeInt32BE (value, offset, noAssert) {
- value = +value
- offset = offset >>> 0
- if (!noAssert) checkInt(this, value, offset, 4, 0x7fffffff, -0x80000000)
- if (value < 0) value = 0xffffffff + value + 1
- this[offset] = (value >>> 24)
- this[offset + 1] = (value >>> 16)
- this[offset + 2] = (value >>> 8)
- this[offset + 3] = (value & 0xff)
- return offset + 4
-}
-
-function checkIEEE754 (buf, value, offset, ext, max, min) {
- if (offset + ext > buf.length) throw new RangeError('Index out of range')
- if (offset < 0) throw new RangeError('Index out of range')
-}
-
-function writeFloat (buf, value, offset, littleEndian, noAssert) {
- value = +value
- offset = offset >>> 0
- if (!noAssert) {
- checkIEEE754(buf, value, offset, 4, 3.4028234663852886e+38, -3.4028234663852886e+38)
- }
- ieee754.write(buf, value, offset, littleEndian, 23, 4)
- return offset + 4
-}
-
-Buffer.prototype.writeFloatLE = function writeFloatLE (value, offset, noAssert) {
- return writeFloat(this, value, offset, true, noAssert)
-}
-
-Buffer.prototype.writeFloatBE = function writeFloatBE (value, offset, noAssert) {
- return writeFloat(this, value, offset, false, noAssert)
-}
-
-function writeDouble (buf, value, offset, littleEndian, noAssert) {
- value = +value
- offset = offset >>> 0
- if (!noAssert) {
- checkIEEE754(buf, value, offset, 8, 1.7976931348623157E+308, -1.7976931348623157E+308)
- }
- ieee754.write(buf, value, offset, littleEndian, 52, 8)
- return offset + 8
-}
-
-Buffer.prototype.writeDoubleLE = function writeDoubleLE (value, offset, noAssert) {
- return writeDouble(this, value, offset, true, noAssert)
-}
-
-Buffer.prototype.writeDoubleBE = function writeDoubleBE (value, offset, noAssert) {
- return writeDouble(this, value, offset, false, noAssert)
-}
-
-// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)
-Buffer.prototype.copy = function copy (target, targetStart, start, end) {
- if (!Buffer.isBuffer(target)) throw new TypeError('argument should be a Buffer')
- if (!start) start = 0
- if (!end && end !== 0) end = this.length
- if (targetStart >= target.length) targetStart = target.length
- if (!targetStart) targetStart = 0
- if (end > 0 && end < start) end = start
-
- // Copy 0 bytes; we're done
- if (end === start) return 0
- if (target.length === 0 || this.length === 0) return 0
-
- // Fatal error conditions
- if (targetStart < 0) {
- throw new RangeError('targetStart out of bounds')
- }
- if (start < 0 || start >= this.length) throw new RangeError('Index out of range')
- if (end < 0) throw new RangeError('sourceEnd out of bounds')
-
- // Are we oob?
- if (end > this.length) end = this.length
- if (target.length - targetStart < end - start) {
- end = target.length - targetStart + start
- }
-
- var len = end - start
-
- if (this === target && typeof Uint8Array.prototype.copyWithin === 'function') {
- // Use built-in when available, missing from IE11
- this.copyWithin(targetStart, start, end)
- } else if (this === target && start < targetStart && targetStart < end) {
- // descending copy from end
- for (var i = len - 1; i >= 0; --i) {
- target[i + targetStart] = this[i + start]
- }
- } else {
- Uint8Array.prototype.set.call(
- target,
- this.subarray(start, end),
- targetStart
- )
- }
-
- return len
-}
-
-// Usage:
-// buffer.fill(number[, offset[, end]])
-// buffer.fill(buffer[, offset[, end]])
-// buffer.fill(string[, offset[, end]][, encoding])
-Buffer.prototype.fill = function fill (val, start, end, encoding) {
- // Handle string cases:
- if (typeof val === 'string') {
- if (typeof start === 'string') {
- encoding = start
- start = 0
- end = this.length
- } else if (typeof end === 'string') {
- encoding = end
- end = this.length
- }
- if (encoding !== undefined && typeof encoding !== 'string') {
- throw new TypeError('encoding must be a string')
- }
- if (typeof encoding === 'string' && !Buffer.isEncoding(encoding)) {
- throw new TypeError('Unknown encoding: ' + encoding)
- }
- if (val.length === 1) {
- var code = val.charCodeAt(0)
- if ((encoding === 'utf8' && code < 128) ||
- encoding === 'latin1') {
- // Fast path: If `val` fits into a single byte, use that numeric value.
- val = code
- }
- }
- } else if (typeof val === 'number') {
- val = val & 255
- }
-
- // Invalid ranges are not set to a default, so can range check early.
- if (start < 0 || this.length < start || this.length < end) {
- throw new RangeError('Out of range index')
- }
-
- if (end <= start) {
- return this
- }
-
- start = start >>> 0
- end = end === undefined ? this.length : end >>> 0
-
- if (!val) val = 0
-
- var i
- if (typeof val === 'number') {
- for (i = start; i < end; ++i) {
- this[i] = val
- }
- } else {
- var bytes = Buffer.isBuffer(val)
- ? val
- : Buffer.from(val, encoding)
- var len = bytes.length
- if (len === 0) {
- throw new TypeError('The value "' + val +
- '" is invalid for argument "value"')
- }
- for (i = 0; i < end - start; ++i) {
- this[i + start] = bytes[i % len]
- }
- }
-
- return this
-}
-
-// HELPER FUNCTIONS
-// ================
-
-var INVALID_BASE64_RE = /[^+/0-9A-Za-z-_]/g
-
-function base64clean (str) {
- // Node takes equal signs as end of the Base64 encoding
- str = str.split('=')[0]
- // Node strips out invalid characters like \n and \t from the string, base64-js does not
- str = str.trim().replace(INVALID_BASE64_RE, '')
- // Node converts strings with length < 2 to ''
- if (str.length < 2) return ''
- // Node allows for non-padded base64 strings (missing trailing ===), base64-js does not
- while (str.length % 4 !== 0) {
- str = str + '='
- }
- return str
-}
-
-function toHex (n) {
- if (n < 16) return '0' + n.toString(16)
- return n.toString(16)
-}
-
-function utf8ToBytes (string, units) {
- units = units || Infinity
- var codePoint
- var length = string.length
- var leadSurrogate = null
- var bytes = []
-
- for (var i = 0; i < length; ++i) {
- codePoint = string.charCodeAt(i)
-
- // is surrogate component
- if (codePoint > 0xD7FF && codePoint < 0xE000) {
- // last char was a lead
- if (!leadSurrogate) {
- // no lead yet
- if (codePoint > 0xDBFF) {
- // unexpected trail
- if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)
- continue
- } else if (i + 1 === length) {
- // unpaired lead
- if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)
- continue
- }
-
- // valid lead
- leadSurrogate = codePoint
-
- continue
- }
-
- // 2 leads in a row
- if (codePoint < 0xDC00) {
- if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)
- leadSurrogate = codePoint
- continue
- }
-
- // valid surrogate pair
- codePoint = (leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00) + 0x10000
- } else if (leadSurrogate) {
- // valid bmp char, but last char was a lead
- if ((units -= 3) > -1) bytes.push(0xEF, 0xBF, 0xBD)
- }
-
- leadSurrogate = null
-
- // encode utf8
- if (codePoint < 0x80) {
- if ((units -= 1) < 0) break
- bytes.push(codePoint)
- } else if (codePoint < 0x800) {
- if ((units -= 2) < 0) break
- bytes.push(
- codePoint >> 0x6 | 0xC0,
- codePoint & 0x3F | 0x80
- )
- } else if (codePoint < 0x10000) {
- if ((units -= 3) < 0) break
- bytes.push(
- codePoint >> 0xC | 0xE0,
- codePoint >> 0x6 & 0x3F | 0x80,
- codePoint & 0x3F | 0x80
- )
- } else if (codePoint < 0x110000) {
- if ((units -= 4) < 0) break
- bytes.push(
- codePoint >> 0x12 | 0xF0,
- codePoint >> 0xC & 0x3F | 0x80,
- codePoint >> 0x6 & 0x3F | 0x80,
- codePoint & 0x3F | 0x80
- )
- } else {
- throw new Error('Invalid code point')
- }
- }
-
- return bytes
-}
-
-function asciiToBytes (str) {
- var byteArray = []
- for (var i = 0; i < str.length; ++i) {
- // Node's code seems to be doing this and not & 0x7F..
- byteArray.push(str.charCodeAt(i) & 0xFF)
- }
- return byteArray
-}
-
-function utf16leToBytes (str, units) {
- var c, hi, lo
- var byteArray = []
- for (var i = 0; i < str.length; ++i) {
- if ((units -= 2) < 0) break
-
- c = str.charCodeAt(i)
- hi = c >> 8
- lo = c % 256
- byteArray.push(lo)
- byteArray.push(hi)
- }
-
- return byteArray
-}
-
-function base64ToBytes (str) {
- return base64.toByteArray(base64clean(str))
-}
-
-function blitBuffer (src, dst, offset, length) {
- for (var i = 0; i < length; ++i) {
- if ((i + offset >= dst.length) || (i >= src.length)) break
- dst[i + offset] = src[i]
- }
- return i
-}
-
-// ArrayBuffer or Uint8Array objects from other contexts (i.e. iframes) do not pass
-// the `instanceof` check but they should be treated as of that type.
-// See: https://github.com/feross/buffer/issues/166
-function isInstance (obj, type) {
- return obj instanceof type ||
- (obj != null && obj.constructor != null && obj.constructor.name != null &&
- obj.constructor.name === type.name)
-}
-function numberIsNaN (obj) {
- // For IE11 support
- return obj !== obj // eslint-disable-line no-self-compare
-}
-
-}).call(this)}).call(this,_dereq_("buffer").Buffer)
-},{"base64-js":15,"buffer":18,"ieee754":63}],19:[function(_dereq_,module,exports){
-'use strict';
-
-var GetIntrinsic = _dereq_('get-intrinsic');
-
-var callBind = _dereq_('./');
-
-var $indexOf = callBind(GetIntrinsic('String.prototype.indexOf'));
-
-module.exports = function callBoundIntrinsic(name, allowMissing) {
- var intrinsic = GetIntrinsic(name, !!allowMissing);
- if (typeof intrinsic === 'function' && $indexOf(name, '.prototype.') > -1) {
- return callBind(intrinsic);
- }
- return intrinsic;
-};
-
-},{"./":20,"get-intrinsic":50}],20:[function(_dereq_,module,exports){
-'use strict';
-
-var bind = _dereq_('function-bind');
-var GetIntrinsic = _dereq_('get-intrinsic');
-var setFunctionLength = _dereq_('set-function-length');
-
-var $TypeError = _dereq_('es-errors/type');
-var $apply = GetIntrinsic('%Function.prototype.apply%');
-var $call = GetIntrinsic('%Function.prototype.call%');
-var $reflectApply = GetIntrinsic('%Reflect.apply%', true) || bind.call($call, $apply);
-
-var $defineProperty = _dereq_('es-define-property');
-var $max = GetIntrinsic('%Math.max%');
-
-module.exports = function callBind(originalFunction) {
- if (typeof originalFunction !== 'function') {
- throw new $TypeError('a function is required');
- }
- var func = $reflectApply(bind, $call, arguments);
- return setFunctionLength(
- func,
- 1 + $max(0, originalFunction.length - (arguments.length - 1)),
- true
- );
-};
-
-var applyBind = function applyBind() {
- return $reflectApply(bind, $apply, arguments);
-};
-
-if ($defineProperty) {
- $defineProperty(module.exports, 'apply', { value: applyBind });
-} else {
- module.exports.apply = applyBind;
-}
-
-},{"es-define-property":35,"es-errors/type":41,"function-bind":48,"get-intrinsic":50,"set-function-length":94}],21:[function(_dereq_,module,exports){
-function t(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}var e,i=/*#__PURE__*/t(_dereq_("typedarray-to-buffer")),r="undefined"!=typeof document&&"function"==typeof document.createElement,n=r?["webp","jpeg"]:["png"],o=/*#__PURE__*/function(){function t(t,e,i){if(void 0===e&&(e=n),void 0===i&&(i=.5),this.quality=void 0,this.types=void 0,this.canvas=void 0,e.length>2)throw new Error("Too many image types are specified!");this.canvas=t,this.quality=i,this.types=e}var o=t.prototype;return o.composeMimeType=function(t){var e;return this.types[t]&&(e="image/"+this.types[t]),e},o.isMatch=function(t,e){return t.match(e)},o.getTestCanvas=function(){var t;return r?(t=document.createElement("canvas")).width=t.height=1:t=this.canvas,t},o.canvasSupportsMimeType=function(t){try{var e=this.getTestCanvas(),i=e.toDataURL&&e.toDataURL(t);return this.isMatch(i,t)}catch(t){return!1}},o.figureMimeType=function(){var t=this.composeMimeType(0);return t&&this.canvasSupportsMimeType(t)||(this.types[1]?(t=this.composeMimeType(1))&&!this.canvasSupportsMimeType(t)&&(t=void 0):t=void 0),t},o.uriToBuffer=function(e){var n,o=e.split(",")[1];if(!o)throw new Error("Empty uri string given!");if(!(n=r?window.atob(o):null==t.atob?void 0:t.atob(o)))throw new Error("Byte are empty, something within atob went wrong.");for(var a=new Uint8Array(n.length),s=0,u=n.length;s -1) {
- return
- }
- list.push(token)
- setTokens(list)
- }
-
- function remove(token) {
- var list = getTokens()
- , index = indexof(list, token)
-
- if (index === -1) {
- return
- }
-
- list.splice(index, 1)
- setTokens(list)
- }
-
- function contains(token) {
- return indexof(getTokens(), token) > -1
- }
-
- function toggle(token) {
- if (contains(token)) {
- remove(token)
- return false
- } else {
- add(token)
- return true
- }
- }
-
- function $toString() {
- return elem.className
- }
-
- function item(index) {
- var tokens = getTokens()
- return tokens[index] || null
- }
-
- function getTokens() {
- var className = elem.className
-
- return filter(className.split(" "), isTruthy)
- }
-
- function setTokens(list) {
- var length = list.length
-
- elem.className = list.join(" ")
- classList.length = length
-
- for (var i = 0; i < list.length; i++) {
- classList[i] = list[i]
- }
-
- delete list[length]
- }
-}
-
-function filter (arr, fn) {
- var ret = []
- for (var i = 0; i < arr.length; i++) {
- if (fn(arr[i])) ret.push(arr[i])
- }
- return ret
-}
-
-function isTruthy(value) {
- return !!value
-}
-
-},{"indexof":64}],23:[function(_dereq_,module,exports){
-
-/**
- * Expose `Emitter`.
- */
-
-if (typeof module !== 'undefined') {
- module.exports = Emitter;
-}
-
-/**
- * Initialize a new `Emitter`.
- *
- * @api public
- */
-
-function Emitter(obj) {
- if (obj) return mixin(obj);
-};
-
-/**
- * Mixin the emitter properties.
- *
- * @param {Object} obj
- * @return {Object}
- * @api private
- */
-
-function mixin(obj) {
- for (var key in Emitter.prototype) {
- obj[key] = Emitter.prototype[key];
- }
- return obj;
-}
-
-/**
- * Listen on the given `event` with `fn`.
- *
- * @param {String} event
- * @param {Function} fn
- * @return {Emitter}
- * @api public
- */
-
-Emitter.prototype.on =
-Emitter.prototype.addEventListener = function(event, fn){
- this._callbacks = this._callbacks || {};
- (this._callbacks['$' + event] = this._callbacks['$' + event] || [])
- .push(fn);
- return this;
-};
-
-/**
- * Adds an `event` listener that will be invoked a single
- * time then automatically removed.
- *
- * @param {String} event
- * @param {Function} fn
- * @return {Emitter}
- * @api public
- */
-
-Emitter.prototype.once = function(event, fn){
- function on() {
- this.off(event, on);
- fn.apply(this, arguments);
- }
-
- on.fn = fn;
- this.on(event, on);
- return this;
-};
-
-/**
- * Remove the given callback for `event` or all
- * registered callbacks.
- *
- * @param {String} event
- * @param {Function} fn
- * @return {Emitter}
- * @api public
- */
-
-Emitter.prototype.off =
-Emitter.prototype.removeListener =
-Emitter.prototype.removeAllListeners =
-Emitter.prototype.removeEventListener = function(event, fn){
- this._callbacks = this._callbacks || {};
-
- // all
- if (0 == arguments.length) {
- this._callbacks = {};
- return this;
- }
-
- // specific event
- var callbacks = this._callbacks['$' + event];
- if (!callbacks) return this;
-
- // remove all handlers
- if (1 == arguments.length) {
- delete this._callbacks['$' + event];
- return this;
- }
-
- // remove specific handler
- var cb;
- for (var i = 0; i < callbacks.length; i++) {
- cb = callbacks[i];
- if (cb === fn || cb.fn === fn) {
- callbacks.splice(i, 1);
- break;
- }
- }
-
- // Remove event specific arrays for event types that no
- // one is subscribed for to avoid memory leak.
- if (callbacks.length === 0) {
- delete this._callbacks['$' + event];
- }
-
- return this;
-};
-
-/**
- * Emit `event` with the given args.
- *
- * @param {String} event
- * @param {Mixed} ...
- * @return {Emitter}
- */
-
-Emitter.prototype.emit = function(event){
- this._callbacks = this._callbacks || {};
-
- var args = new Array(arguments.length - 1)
- , callbacks = this._callbacks['$' + event];
-
- for (var i = 1; i < arguments.length; i++) {
- args[i - 1] = arguments[i];
- }
-
- if (callbacks) {
- callbacks = callbacks.slice(0);
- for (var i = 0, len = callbacks.length; i < len; ++i) {
- callbacks[i].apply(this, args);
- }
- }
-
- return this;
-};
-
-/**
- * Return array of callbacks for `event`.
- *
- * @param {String} event
- * @return {Array}
- * @api public
- */
-
-Emitter.prototype.listeners = function(event){
- this._callbacks = this._callbacks || {};
- return this._callbacks['$' + event] || [];
-};
-
-/**
- * Check if this emitter has `event` handlers.
- *
- * @param {String} event
- * @return {Boolean}
- * @api public
- */
-
-Emitter.prototype.hasListeners = function(event){
- return !! this.listeners(event).length;
-};
-
-},{}],24:[function(_dereq_,module,exports){
-var DOCUMENT_POSITION_CONTAINED_BY = 16
-
-module.exports = contains
-
-function contains(container, elem) {
- if (container.contains) {
- return container.contains(elem)
- }
-
- var comparison = container.compareDocumentPosition(elem)
-
- return comparison === 0 || comparison & DOCUMENT_POSITION_CONTAINED_BY
-}
-
-},{}],25:[function(_dereq_,module,exports){
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-// NOTE: These type checking functions intentionally don't use `instanceof`
-// because it is fragile and can be easily faked with `Object.create()`.
-
-function isArray(arg) {
- if (Array.isArray) {
- return Array.isArray(arg);
- }
- return objectToString(arg) === '[object Array]';
-}
-exports.isArray = isArray;
-
-function isBoolean(arg) {
- return typeof arg === 'boolean';
-}
-exports.isBoolean = isBoolean;
-
-function isNull(arg) {
- return arg === null;
-}
-exports.isNull = isNull;
-
-function isNullOrUndefined(arg) {
- return arg == null;
-}
-exports.isNullOrUndefined = isNullOrUndefined;
-
-function isNumber(arg) {
- return typeof arg === 'number';
-}
-exports.isNumber = isNumber;
-
-function isString(arg) {
- return typeof arg === 'string';
-}
-exports.isString = isString;
-
-function isSymbol(arg) {
- return typeof arg === 'symbol';
-}
-exports.isSymbol = isSymbol;
-
-function isUndefined(arg) {
- return arg === void 0;
-}
-exports.isUndefined = isUndefined;
-
-function isRegExp(re) {
- return objectToString(re) === '[object RegExp]';
-}
-exports.isRegExp = isRegExp;
-
-function isObject(arg) {
- return typeof arg === 'object' && arg !== null;
-}
-exports.isObject = isObject;
-
-function isDate(d) {
- return objectToString(d) === '[object Date]';
-}
-exports.isDate = isDate;
-
-function isError(e) {
- return (objectToString(e) === '[object Error]' || e instanceof Error);
-}
-exports.isError = isError;
-
-function isFunction(arg) {
- return typeof arg === 'function';
-}
-exports.isFunction = isFunction;
-
-function isPrimitive(arg) {
- return arg === null ||
- typeof arg === 'boolean' ||
- typeof arg === 'number' ||
- typeof arg === 'string' ||
- typeof arg === 'symbol' || // ES6 symbol
- typeof arg === 'undefined';
-}
-exports.isPrimitive = isPrimitive;
-
-exports.isBuffer = _dereq_('buffer').Buffer.isBuffer;
-
-function objectToString(o) {
- return Object.prototype.toString.call(o);
-}
-
-},{"buffer":18}],26:[function(_dereq_,module,exports){
-// create-error.js 0.3.1
-// (c) 2013 Tim Griesser
-// This source may be freely distributed under the MIT license.
-(function(factory) {
-
-"use strict";
-
-// A simple utility for subclassing the "Error"
-// object in multiple environments, while maintaining
-// relevant stack traces, messages, and prototypes.
-factory(function() {
-
-var toString = Object.prototype.toString;
-
-// Creates an new error type with a "name",
-// and any additional properties that should be set
-// on the error instance.
-return function() {
- var args = new Array(arguments.length);
- for (var i = 0; i < args.length; ++i) {
- args[i] = arguments[i];
- }
- var name = getName(args);
- var target = getTarget(args);
- var properties = getProps(args);
- function ErrorCtor(message, obj) {
- attachProps(this, properties);
- attachProps(this, obj);
- this.message = (message || this.message);
- if (message instanceof Error) {
- this.message = message.message;
- this.stack = message.stack;
- } else if (Error.captureStackTrace) {
- Error.captureStackTrace(this, this.constructor);
- }
- }
- function Err() { this.constructor = ErrorCtor; }
- Err.prototype = target['prototype'];
- ErrorCtor.prototype = new Err();
- ErrorCtor.prototype.name = ('' + name) || 'CustomError';
- return ErrorCtor;
-};
-
-// Just a few helpers to clean up the function above
-// https://github.com/petkaantonov/bluebird/wiki/Optimization-killers
-function getName(args) {
- if (args.length === 0) return '';
- return isError(args[0]) ? (args[1] || '') : args[0];
-}
-function getTarget(args) {
- if (args.length === 0) return Error;
- return isError(args[0]) ? args[0] : Error;
-}
-function getProps(args) {
- if (args.length === 0) return null;
- return isError(args[0]) ? args[2] : args[1];
-}
-function inheritedKeys(obj) {
- var ret = [];
- for (var key in obj) {
- ret.push(key);
- }
- return ret;
-}
-
-// Right now we're just assuming that a function in the first argument is an error.
-function isError(obj) {
- return (typeof obj === "function");
-}
-
-// We don't need the full underscore check here, since it should either be
-// an object-literal, or nothing at all.
-function isObject(obj) {
- return (obj && typeof obj === "object" && toString.call(obj) === "[object Object]");
-}
-
-// Used to attach attributes to the error object in the constructor.
-function attachProps(context, target) {
- if (isObject(target)) {
- var keys = inheritedKeys(target);
- for (var i = 0, l = keys.length; i < l; ++i) {
- context[keys[i]] = clone(target[keys[i]]);
- }
- }
-}
-
-// Don't need the full-out "clone" mechanism here, since if you're
-// trying to set things other than empty arrays/objects on your
-// sub-classed `Error` object, you're probably doing it wrong.
-function clone(target) {
- if (target == null || typeof target !== "object") return target;
- var cloned = target.constructor ? target.constructor() : Object.create(null);
- for (var attr in target) {
- if (target.hasOwnProperty(attr)) {
- cloned[attr] = target[attr];
- }
- }
- return cloned;
-}
-
-});
-
-// Boilerplate UMD definition block...
-})(function(createErrorLib) {
- if (typeof define === "function" && define.amd) {
- define(createErrorLib);
- } else if (typeof exports === 'object') {
- module.exports = createErrorLib();
- } else {
- var root = this;
- var lastcreateError = root.createError;
- var createError = root.createError = createErrorLib();
- createError.noConflict = function() {
- root.createError = lastcreateError;
- return createError;
- };
- }
-});
-
-},{}],27:[function(_dereq_,module,exports){
-'use strict';
-
-var isMergeableObject = function isMergeableObject(value) {
- return isNonNullObject(value)
- && !isSpecial(value)
-};
-
-function isNonNullObject(value) {
- return !!value && typeof value === 'object'
-}
-
-function isSpecial(value) {
- var stringValue = Object.prototype.toString.call(value);
-
- return stringValue === '[object RegExp]'
- || stringValue === '[object Date]'
- || isReactElement(value)
-}
-
-// see https://github.com/facebook/react/blob/b5ac963fb791d1298e7f396236383bc955f916c1/src/isomorphic/classic/element/ReactElement.js#L21-L25
-var canUseSymbol = typeof Symbol === 'function' && Symbol.for;
-var REACT_ELEMENT_TYPE = canUseSymbol ? Symbol.for('react.element') : 0xeac7;
-
-function isReactElement(value) {
- return value.$$typeof === REACT_ELEMENT_TYPE
-}
-
-function emptyTarget(val) {
- return Array.isArray(val) ? [] : {}
-}
-
-function cloneUnlessOtherwiseSpecified(value, options) {
- return (options.clone !== false && options.isMergeableObject(value))
- ? deepmerge(emptyTarget(value), value, options)
- : value
-}
-
-function defaultArrayMerge(target, source, options) {
- return target.concat(source).map(function(element) {
- return cloneUnlessOtherwiseSpecified(element, options)
- })
-}
-
-function getMergeFunction(key, options) {
- if (!options.customMerge) {
- return deepmerge
- }
- var customMerge = options.customMerge(key);
- return typeof customMerge === 'function' ? customMerge : deepmerge
-}
-
-function getEnumerableOwnPropertySymbols(target) {
- return Object.getOwnPropertySymbols
- ? Object.getOwnPropertySymbols(target).filter(function(symbol) {
- return Object.propertyIsEnumerable.call(target, symbol)
- })
- : []
-}
-
-function getKeys(target) {
- return Object.keys(target).concat(getEnumerableOwnPropertySymbols(target))
-}
-
-function propertyIsOnObject(object, property) {
- try {
- return property in object
- } catch(_) {
- return false
- }
-}
-
-// Protects from prototype poisoning and unexpected merging up the prototype chain.
-function propertyIsUnsafe(target, key) {
- return propertyIsOnObject(target, key) // Properties are safe to merge if they don't exist in the target yet,
- && !(Object.hasOwnProperty.call(target, key) // unsafe if they exist up the prototype chain,
- && Object.propertyIsEnumerable.call(target, key)) // and also unsafe if they're nonenumerable.
-}
-
-function mergeObject(target, source, options) {
- var destination = {};
- if (options.isMergeableObject(target)) {
- getKeys(target).forEach(function(key) {
- destination[key] = cloneUnlessOtherwiseSpecified(target[key], options);
- });
- }
- getKeys(source).forEach(function(key) {
- if (propertyIsUnsafe(target, key)) {
- return
- }
-
- if (propertyIsOnObject(target, key) && options.isMergeableObject(source[key])) {
- destination[key] = getMergeFunction(key, options)(target[key], source[key], options);
- } else {
- destination[key] = cloneUnlessOtherwiseSpecified(source[key], options);
- }
- });
- return destination
-}
-
-function deepmerge(target, source, options) {
- options = options || {};
- options.arrayMerge = options.arrayMerge || defaultArrayMerge;
- options.isMergeableObject = options.isMergeableObject || isMergeableObject;
- // cloneUnlessOtherwiseSpecified is added to `options` so that custom arrayMerge()
- // implementations can use it. The caller may not replace it.
- options.cloneUnlessOtherwiseSpecified = cloneUnlessOtherwiseSpecified;
-
- var sourceIsArray = Array.isArray(source);
- var targetIsArray = Array.isArray(target);
- var sourceAndTargetTypesMatch = sourceIsArray === targetIsArray;
-
- if (!sourceAndTargetTypesMatch) {
- return cloneUnlessOtherwiseSpecified(source, options)
- } else if (sourceIsArray) {
- return options.arrayMerge(target, source, options)
- } else {
- return mergeObject(target, source, options)
- }
-}
-
-deepmerge.all = function deepmergeAll(array, options) {
- if (!Array.isArray(array)) {
- throw new Error('first argument should be an array')
- }
-
- return array.reduce(function(prev, next) {
- return deepmerge(prev, next, options)
- }, {})
-};
-
-var deepmerge_1 = deepmerge;
-
-module.exports = deepmerge_1;
-
-},{}],28:[function(_dereq_,module,exports){
-'use strict';
-
-var $defineProperty = _dereq_('es-define-property');
-
-var $SyntaxError = _dereq_('es-errors/syntax');
-var $TypeError = _dereq_('es-errors/type');
-
-var gopd = _dereq_('gopd');
-
-/** @type {import('.')} */
-module.exports = function defineDataProperty(
- obj,
- property,
- value
-) {
- if (!obj || (typeof obj !== 'object' && typeof obj !== 'function')) {
- throw new $TypeError('`obj` must be an object or a function`');
- }
- if (typeof property !== 'string' && typeof property !== 'symbol') {
- throw new $TypeError('`property` must be a string or a symbol`');
- }
- if (arguments.length > 3 && typeof arguments[3] !== 'boolean' && arguments[3] !== null) {
- throw new $TypeError('`nonEnumerable`, if provided, must be a boolean or null');
- }
- if (arguments.length > 4 && typeof arguments[4] !== 'boolean' && arguments[4] !== null) {
- throw new $TypeError('`nonWritable`, if provided, must be a boolean or null');
- }
- if (arguments.length > 5 && typeof arguments[5] !== 'boolean' && arguments[5] !== null) {
- throw new $TypeError('`nonConfigurable`, if provided, must be a boolean or null');
- }
- if (arguments.length > 6 && typeof arguments[6] !== 'boolean') {
- throw new $TypeError('`loose`, if provided, must be a boolean');
- }
-
- var nonEnumerable = arguments.length > 3 ? arguments[3] : null;
- var nonWritable = arguments.length > 4 ? arguments[4] : null;
- var nonConfigurable = arguments.length > 5 ? arguments[5] : null;
- var loose = arguments.length > 6 ? arguments[6] : false;
-
- /* @type {false | TypedPropertyDescriptor} */
- var desc = !!gopd && gopd(obj, property);
-
- if ($defineProperty) {
- $defineProperty(obj, property, {
- configurable: nonConfigurable === null && desc ? desc.configurable : !nonConfigurable,
- enumerable: nonEnumerable === null && desc ? desc.enumerable : !nonEnumerable,
- value: value,
- writable: nonWritable === null && desc ? desc.writable : !nonWritable
- });
- } else if (loose || (!nonEnumerable && !nonWritable && !nonConfigurable)) {
- // must fall back to [[Set]], and was not explicitly asked to make non-enumerable, non-writable, or non-configurable
- obj[property] = value; // eslint-disable-line no-param-reassign
- } else {
- throw new $SyntaxError('This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.');
- }
-};
-
-},{"es-define-property":35,"es-errors/syntax":40,"es-errors/type":41,"gopd":54}],29:[function(_dereq_,module,exports){
-'use strict';
-
-module.exports = function defined() {
- for (var i = 0; i < arguments.length; i++) {
- if (typeof arguments[i] !== 'undefined') {
- return arguments[i];
- }
- }
-};
-
-},{}],30:[function(_dereq_,module,exports){
-var inherits = _dereq_("inherits");
-var global = _dereq_("global");
-var EventEmitter = _dereq_("events");
-
-var makeDespot = function () {
- var Despot = function () {
- if (global._singletonDespotInstance) {
- return global._singletonDespotInstance;
- }
-
- global._singletonDespotInstance = this;
- EventEmitter.call(this);
- };
-
- inherits(Despot, EventEmitter);
-
- return new Despot();
-};
-
-module.exports = makeDespot();
-
-},{"events":43,"global":53,"inherits":65}],31:[function(_dereq_,module,exports){
-'use strict'
-
-var document = _dereq_('global/document')
-var Event = _dereq_('geval')
-var Keys = _dereq_('./keys')
-
-module.exports = Visibility
-
-function Visibility () {
- var keys = Keys(document)
- if (!keys) return noopShim()
-
- return {
- visible: visible,
- onChange: Event(listen)
- }
-
- function visible () {
- return !document[keys.hidden]
- }
-
- function listen (broadcast) {
- document.addEventListener(keys.event, function onVisibilityChange () {
- broadcast(visible())
- })
- }
-}
-
-function noopShim () {
- return {
- visible: function () {
- return true
- },
- onChange: noop
- }
-}
-
-function noop () {}
-
-},{"./keys":32,"geval":52,"global/document":33}],32:[function(_dereq_,module,exports){
-'use strict'
-
-module.exports = keys
-
-function keys (document) {
- var prefix = detectPrefix(document)
- if (prefix == null) return
- return {
- hidden: lowercaseFirst(prefix + 'Hidden'),
- event: prefix + 'visibilitychange'
- }
-}
-
-function detectPrefix (document) {
- if (document.hidden != null) return ''
- if (document.mozHidden != null) return 'moz'
- if (document.msHidden != null) return 'ms'
- if (document.webkitHidden != null) return 'webkit'
-}
-
-function lowercaseFirst (string) {
- return string.substring(0, 1).toLowerCase() + string.substring(1)
-}
-
-},{}],33:[function(_dereq_,module,exports){
-(function (global){(function (){
-var topLevel = typeof global !== 'undefined' ? global :
- typeof window !== 'undefined' ? window : {}
-var minDoc = _dereq_('min-document');
-
-var doccy;
-
-if (typeof document !== 'undefined') {
- doccy = document;
-} else {
- doccy = topLevel['__GLOBAL_DOCUMENT_CACHE@4'];
-
- if (!doccy) {
- doccy = topLevel['__GLOBAL_DOCUMENT_CACHE@4'] = minDoc;
- }
-}
-
-module.exports = doccy;
-
-}).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
-},{"min-document":16}],34:[function(_dereq_,module,exports){
-(function (process){(function (){
-var once = _dereq_('once');
-
-var noop = function() {};
-
-var isRequest = function(stream) {
- return stream.setHeader && typeof stream.abort === 'function';
-};
-
-var isChildProcess = function(stream) {
- return stream.stdio && Array.isArray(stream.stdio) && stream.stdio.length === 3
-};
-
-var eos = function(stream, opts, callback) {
- if (typeof opts === 'function') return eos(stream, null, opts);
- if (!opts) opts = {};
-
- callback = once(callback || noop);
-
- var ws = stream._writableState;
- var rs = stream._readableState;
- var readable = opts.readable || (opts.readable !== false && stream.readable);
- var writable = opts.writable || (opts.writable !== false && stream.writable);
- var cancelled = false;
-
- var onlegacyfinish = function() {
- if (!stream.writable) onfinish();
- };
-
- var onfinish = function() {
- writable = false;
- if (!readable) callback.call(stream);
- };
-
- var onend = function() {
- readable = false;
- if (!writable) callback.call(stream);
- };
-
- var onexit = function(exitCode) {
- callback.call(stream, exitCode ? new Error('exited with error code: ' + exitCode) : null);
- };
-
- var onerror = function(err) {
- callback.call(stream, err);
- };
-
- var onclose = function() {
- process.nextTick(onclosenexttick);
- };
-
- var onclosenexttick = function() {
- if (cancelled) return;
- if (readable && !(rs && (rs.ended && !rs.destroyed))) return callback.call(stream, new Error('premature close'));
- if (writable && !(ws && (ws.ended && !ws.destroyed))) return callback.call(stream, new Error('premature close'));
- };
-
- var onrequest = function() {
- stream.req.on('finish', onfinish);
- };
-
- if (isRequest(stream)) {
- stream.on('complete', onfinish);
- stream.on('abort', onclose);
- if (stream.req) onrequest();
- else stream.on('request', onrequest);
- } else if (writable && !ws) { // legacy streams
- stream.on('end', onlegacyfinish);
- stream.on('close', onlegacyfinish);
- }
-
- if (isChildProcess(stream)) stream.on('exit', onexit);
-
- stream.on('end', onend);
- stream.on('finish', onfinish);
- if (opts.error !== false) stream.on('error', onerror);
- stream.on('close', onclose);
-
- return function() {
- cancelled = true;
- stream.removeListener('complete', onfinish);
- stream.removeListener('abort', onclose);
- stream.removeListener('request', onrequest);
- if (stream.req) stream.req.removeListener('finish', onfinish);
- stream.removeListener('end', onlegacyfinish);
- stream.removeListener('close', onlegacyfinish);
- stream.removeListener('finish', onfinish);
- stream.removeListener('exit', onexit);
- stream.removeListener('end', onend);
- stream.removeListener('error', onerror);
- stream.removeListener('close', onclose);
- };
-};
-
-module.exports = eos;
-
-}).call(this)}).call(this,_dereq_('_process'))
-},{"_process":74,"once":71}],35:[function(_dereq_,module,exports){
-'use strict';
-
-var GetIntrinsic = _dereq_('get-intrinsic');
-
-/** @type {import('.')} */
-var $defineProperty = GetIntrinsic('%Object.defineProperty%', true) || false;
-if ($defineProperty) {
- try {
- $defineProperty({}, 'a', { value: 1 });
- } catch (e) {
- // IE 8 has a broken defineProperty
- $defineProperty = false;
- }
-}
-
-module.exports = $defineProperty;
-
-},{"get-intrinsic":50}],36:[function(_dereq_,module,exports){
-'use strict';
-
-/** @type {import('./eval')} */
-module.exports = EvalError;
-
-},{}],37:[function(_dereq_,module,exports){
-'use strict';
-
-/** @type {import('.')} */
-module.exports = Error;
-
-},{}],38:[function(_dereq_,module,exports){
-'use strict';
-
-/** @type {import('./range')} */
-module.exports = RangeError;
-
-},{}],39:[function(_dereq_,module,exports){
-'use strict';
-
-/** @type {import('./ref')} */
-module.exports = ReferenceError;
-
-},{}],40:[function(_dereq_,module,exports){
-'use strict';
-
-/** @type {import('./syntax')} */
-module.exports = SyntaxError;
-
-},{}],41:[function(_dereq_,module,exports){
-'use strict';
-
-/** @type {import('./type')} */
-module.exports = TypeError;
-
-},{}],42:[function(_dereq_,module,exports){
-'use strict';
-
-/** @type {import('./uri')} */
-module.exports = URIError;
-
-},{}],43:[function(_dereq_,module,exports){
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-'use strict';
-
-var R = typeof Reflect === 'object' ? Reflect : null
-var ReflectApply = R && typeof R.apply === 'function'
- ? R.apply
- : function ReflectApply(target, receiver, args) {
- return Function.prototype.apply.call(target, receiver, args);
- }
-
-var ReflectOwnKeys
-if (R && typeof R.ownKeys === 'function') {
- ReflectOwnKeys = R.ownKeys
-} else if (Object.getOwnPropertySymbols) {
- ReflectOwnKeys = function ReflectOwnKeys(target) {
- return Object.getOwnPropertyNames(target)
- .concat(Object.getOwnPropertySymbols(target));
- };
-} else {
- ReflectOwnKeys = function ReflectOwnKeys(target) {
- return Object.getOwnPropertyNames(target);
- };
-}
-
-function ProcessEmitWarning(warning) {
- if (console && console.warn) console.warn(warning);
-}
-
-var NumberIsNaN = Number.isNaN || function NumberIsNaN(value) {
- return value !== value;
-}
-
-function EventEmitter() {
- EventEmitter.init.call(this);
-}
-module.exports = EventEmitter;
-module.exports.once = once;
-
-// Backwards-compat with node 0.10.x
-EventEmitter.EventEmitter = EventEmitter;
-
-EventEmitter.prototype._events = undefined;
-EventEmitter.prototype._eventsCount = 0;
-EventEmitter.prototype._maxListeners = undefined;
-
-// By default EventEmitters will print a warning if more than 10 listeners are
-// added to it. This is a useful default which helps finding memory leaks.
-var defaultMaxListeners = 10;
-
-function checkListener(listener) {
- if (typeof listener !== 'function') {
- throw new TypeError('The "listener" argument must be of type Function. Received type ' + typeof listener);
- }
-}
-
-Object.defineProperty(EventEmitter, 'defaultMaxListeners', {
- enumerable: true,
- get: function() {
- return defaultMaxListeners;
- },
- set: function(arg) {
- if (typeof arg !== 'number' || arg < 0 || NumberIsNaN(arg)) {
- throw new RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received ' + arg + '.');
- }
- defaultMaxListeners = arg;
- }
-});
-
-EventEmitter.init = function() {
-
- if (this._events === undefined ||
- this._events === Object.getPrototypeOf(this)._events) {
- this._events = Object.create(null);
- this._eventsCount = 0;
- }
-
- this._maxListeners = this._maxListeners || undefined;
-};
-
-// Obviously not all Emitters should be limited to 10. This function allows
-// that to be increased. Set to zero for unlimited.
-EventEmitter.prototype.setMaxListeners = function setMaxListeners(n) {
- if (typeof n !== 'number' || n < 0 || NumberIsNaN(n)) {
- throw new RangeError('The value of "n" is out of range. It must be a non-negative number. Received ' + n + '.');
- }
- this._maxListeners = n;
- return this;
-};
-
-function _getMaxListeners(that) {
- if (that._maxListeners === undefined)
- return EventEmitter.defaultMaxListeners;
- return that._maxListeners;
-}
-
-EventEmitter.prototype.getMaxListeners = function getMaxListeners() {
- return _getMaxListeners(this);
-};
-
-EventEmitter.prototype.emit = function emit(type) {
- var args = [];
- for (var i = 1; i < arguments.length; i++) args.push(arguments[i]);
- var doError = (type === 'error');
-
- var events = this._events;
- if (events !== undefined)
- doError = (doError && events.error === undefined);
- else if (!doError)
- return false;
-
- // If there is no 'error' event listener then throw.
- if (doError) {
- var er;
- if (args.length > 0)
- er = args[0];
- if (er instanceof Error) {
- // Note: The comments on the `throw` lines are intentional, they show
- // up in Node's output if this results in an unhandled exception.
- throw er; // Unhandled 'error' event
- }
- // At least give some kind of context to the user
- var err = new Error('Unhandled error.' + (er ? ' (' + er.message + ')' : ''));
- err.context = er;
- throw err; // Unhandled 'error' event
- }
-
- var handler = events[type];
-
- if (handler === undefined)
- return false;
-
- if (typeof handler === 'function') {
- ReflectApply(handler, this, args);
- } else {
- var len = handler.length;
- var listeners = arrayClone(handler, len);
- for (var i = 0; i < len; ++i)
- ReflectApply(listeners[i], this, args);
- }
-
- return true;
-};
-
-function _addListener(target, type, listener, prepend) {
- var m;
- var events;
- var existing;
-
- checkListener(listener);
-
- events = target._events;
- if (events === undefined) {
- events = target._events = Object.create(null);
- target._eventsCount = 0;
- } else {
- // To avoid recursion in the case that type === "newListener"! Before
- // adding it to the listeners, first emit "newListener".
- if (events.newListener !== undefined) {
- target.emit('newListener', type,
- listener.listener ? listener.listener : listener);
-
- // Re-assign `events` because a newListener handler could have caused the
- // this._events to be assigned to a new object
- events = target._events;
- }
- existing = events[type];
- }
-
- if (existing === undefined) {
- // Optimize the case of one listener. Don't need the extra array object.
- existing = events[type] = listener;
- ++target._eventsCount;
- } else {
- if (typeof existing === 'function') {
- // Adding the second element, need to change to array.
- existing = events[type] =
- prepend ? [listener, existing] : [existing, listener];
- // If we've already got an array, just append.
- } else if (prepend) {
- existing.unshift(listener);
- } else {
- existing.push(listener);
- }
-
- // Check for listener leak
- m = _getMaxListeners(target);
- if (m > 0 && existing.length > m && !existing.warned) {
- existing.warned = true;
- // No error code for this since it is a Warning
- // eslint-disable-next-line no-restricted-syntax
- var w = new Error('Possible EventEmitter memory leak detected. ' +
- existing.length + ' ' + String(type) + ' listeners ' +
- 'added. Use emitter.setMaxListeners() to ' +
- 'increase limit');
- w.name = 'MaxListenersExceededWarning';
- w.emitter = target;
- w.type = type;
- w.count = existing.length;
- ProcessEmitWarning(w);
- }
- }
-
- return target;
-}
-
-EventEmitter.prototype.addListener = function addListener(type, listener) {
- return _addListener(this, type, listener, false);
-};
-
-EventEmitter.prototype.on = EventEmitter.prototype.addListener;
-
-EventEmitter.prototype.prependListener =
- function prependListener(type, listener) {
- return _addListener(this, type, listener, true);
- };
-
-function onceWrapper() {
- if (!this.fired) {
- this.target.removeListener(this.type, this.wrapFn);
- this.fired = true;
- if (arguments.length === 0)
- return this.listener.call(this.target);
- return this.listener.apply(this.target, arguments);
- }
-}
-
-function _onceWrap(target, type, listener) {
- var state = { fired: false, wrapFn: undefined, target: target, type: type, listener: listener };
- var wrapped = onceWrapper.bind(state);
- wrapped.listener = listener;
- state.wrapFn = wrapped;
- return wrapped;
-}
-
-EventEmitter.prototype.once = function once(type, listener) {
- checkListener(listener);
- this.on(type, _onceWrap(this, type, listener));
- return this;
-};
-
-EventEmitter.prototype.prependOnceListener =
- function prependOnceListener(type, listener) {
- checkListener(listener);
- this.prependListener(type, _onceWrap(this, type, listener));
- return this;
- };
-
-// Emits a 'removeListener' event if and only if the listener was removed.
-EventEmitter.prototype.removeListener =
- function removeListener(type, listener) {
- var list, events, position, i, originalListener;
-
- checkListener(listener);
-
- events = this._events;
- if (events === undefined)
- return this;
-
- list = events[type];
- if (list === undefined)
- return this;
-
- if (list === listener || list.listener === listener) {
- if (--this._eventsCount === 0)
- this._events = Object.create(null);
- else {
- delete events[type];
- if (events.removeListener)
- this.emit('removeListener', type, list.listener || listener);
- }
- } else if (typeof list !== 'function') {
- position = -1;
-
- for (i = list.length - 1; i >= 0; i--) {
- if (list[i] === listener || list[i].listener === listener) {
- originalListener = list[i].listener;
- position = i;
- break;
- }
- }
-
- if (position < 0)
- return this;
-
- if (position === 0)
- list.shift();
- else {
- spliceOne(list, position);
- }
-
- if (list.length === 1)
- events[type] = list[0];
-
- if (events.removeListener !== undefined)
- this.emit('removeListener', type, originalListener || listener);
- }
-
- return this;
- };
-
-EventEmitter.prototype.off = EventEmitter.prototype.removeListener;
-
-EventEmitter.prototype.removeAllListeners =
- function removeAllListeners(type) {
- var listeners, events, i;
-
- events = this._events;
- if (events === undefined)
- return this;
-
- // not listening for removeListener, no need to emit
- if (events.removeListener === undefined) {
- if (arguments.length === 0) {
- this._events = Object.create(null);
- this._eventsCount = 0;
- } else if (events[type] !== undefined) {
- if (--this._eventsCount === 0)
- this._events = Object.create(null);
- else
- delete events[type];
- }
- return this;
- }
-
- // emit removeListener for all listeners on all events
- if (arguments.length === 0) {
- var keys = Object.keys(events);
- var key;
- for (i = 0; i < keys.length; ++i) {
- key = keys[i];
- if (key === 'removeListener') continue;
- this.removeAllListeners(key);
- }
- this.removeAllListeners('removeListener');
- this._events = Object.create(null);
- this._eventsCount = 0;
- return this;
- }
-
- listeners = events[type];
-
- if (typeof listeners === 'function') {
- this.removeListener(type, listeners);
- } else if (listeners !== undefined) {
- // LIFO order
- for (i = listeners.length - 1; i >= 0; i--) {
- this.removeListener(type, listeners[i]);
- }
- }
-
- return this;
- };
-
-function _listeners(target, type, unwrap) {
- var events = target._events;
-
- if (events === undefined)
- return [];
-
- var evlistener = events[type];
- if (evlistener === undefined)
- return [];
-
- if (typeof evlistener === 'function')
- return unwrap ? [evlistener.listener || evlistener] : [evlistener];
-
- return unwrap ?
- unwrapListeners(evlistener) : arrayClone(evlistener, evlistener.length);
-}
-
-EventEmitter.prototype.listeners = function listeners(type) {
- return _listeners(this, type, true);
-};
-
-EventEmitter.prototype.rawListeners = function rawListeners(type) {
- return _listeners(this, type, false);
-};
-
-EventEmitter.listenerCount = function(emitter, type) {
- if (typeof emitter.listenerCount === 'function') {
- return emitter.listenerCount(type);
- } else {
- return listenerCount.call(emitter, type);
- }
-};
-
-EventEmitter.prototype.listenerCount = listenerCount;
-function listenerCount(type) {
- var events = this._events;
-
- if (events !== undefined) {
- var evlistener = events[type];
-
- if (typeof evlistener === 'function') {
- return 1;
- } else if (evlistener !== undefined) {
- return evlistener.length;
- }
- }
-
- return 0;
-}
-
-EventEmitter.prototype.eventNames = function eventNames() {
- return this._eventsCount > 0 ? ReflectOwnKeys(this._events) : [];
-};
-
-function arrayClone(arr, n) {
- var copy = new Array(n);
- for (var i = 0; i < n; ++i)
- copy[i] = arr[i];
- return copy;
-}
-
-function spliceOne(list, index) {
- for (; index + 1 < list.length; index++)
- list[index] = list[index + 1];
- list.pop();
-}
-
-function unwrapListeners(arr) {
- var ret = new Array(arr.length);
- for (var i = 0; i < ret.length; ++i) {
- ret[i] = arr[i].listener || arr[i];
- }
- return ret;
-}
-
-function once(emitter, name) {
- return new Promise(function (resolve, reject) {
- function errorListener(err) {
- emitter.removeListener(name, resolver);
- reject(err);
- }
-
- function resolver() {
- if (typeof emitter.removeListener === 'function') {
- emitter.removeListener('error', errorListener);
- }
- resolve([].slice.call(arguments));
- };
-
- eventTargetAgnosticAddListener(emitter, name, resolver, { once: true });
- if (name !== 'error') {
- addErrorHandlerIfEventEmitter(emitter, errorListener, { once: true });
- }
- });
-}
-
-function addErrorHandlerIfEventEmitter(emitter, handler, flags) {
- if (typeof emitter.on === 'function') {
- eventTargetAgnosticAddListener(emitter, 'error', handler, flags);
- }
-}
-
-function eventTargetAgnosticAddListener(emitter, name, listener, flags) {
- if (typeof emitter.on === 'function') {
- if (flags.once) {
- emitter.once(name, listener);
- } else {
- emitter.on(name, listener);
- }
- } else if (typeof emitter.addEventListener === 'function') {
- // EventTarget does not have `error` event semantics like Node
- // EventEmitters, we do not listen for `error` events here.
- emitter.addEventListener(name, function wrapListener(arg) {
- // IE does not have builtin `{ once: true }` support so we
- // have to do it manually.
- if (flags.once) {
- emitter.removeEventListener(name, wrapListener);
- }
- listener(arg);
- });
- } else {
- throw new TypeError('The "emitter" argument must be of type EventEmitter. Received type ' + typeof emitter);
- }
-}
-
-},{}],44:[function(_dereq_,module,exports){
-module.exports = stringify
-stringify.default = stringify
-stringify.stable = deterministicStringify
-stringify.stableStringify = deterministicStringify
-
-var LIMIT_REPLACE_NODE = '[...]'
-var CIRCULAR_REPLACE_NODE = '[Circular]'
-
-var arr = []
-var replacerStack = []
-
-function defaultOptions () {
- return {
- depthLimit: Number.MAX_SAFE_INTEGER,
- edgesLimit: Number.MAX_SAFE_INTEGER
- }
-}
-
-// Regular stringify
-function stringify (obj, replacer, spacer, options) {
- if (typeof options === 'undefined') {
- options = defaultOptions()
- }
-
- decirc(obj, '', 0, [], undefined, 0, options)
- var res
- try {
- if (replacerStack.length === 0) {
- res = JSON.stringify(obj, replacer, spacer)
- } else {
- res = JSON.stringify(obj, replaceGetterValues(replacer), spacer)
- }
- } catch (_) {
- return JSON.stringify('[unable to serialize, circular reference is too complex to analyze]')
- } finally {
- while (arr.length !== 0) {
- var part = arr.pop()
- if (part.length === 4) {
- Object.defineProperty(part[0], part[1], part[3])
- } else {
- part[0][part[1]] = part[2]
- }
- }
- }
- return res
-}
-
-function setReplace (replace, val, k, parent) {
- var propertyDescriptor = Object.getOwnPropertyDescriptor(parent, k)
- if (propertyDescriptor.get !== undefined) {
- if (propertyDescriptor.configurable) {
- Object.defineProperty(parent, k, { value: replace })
- arr.push([parent, k, val, propertyDescriptor])
- } else {
- replacerStack.push([val, k, replace])
- }
- } else {
- parent[k] = replace
- arr.push([parent, k, val])
- }
-}
-
-function decirc (val, k, edgeIndex, stack, parent, depth, options) {
- depth += 1
- var i
- if (typeof val === 'object' && val !== null) {
- for (i = 0; i < stack.length; i++) {
- if (stack[i] === val) {
- setReplace(CIRCULAR_REPLACE_NODE, val, k, parent)
- return
- }
- }
-
- if (
- typeof options.depthLimit !== 'undefined' &&
- depth > options.depthLimit
- ) {
- setReplace(LIMIT_REPLACE_NODE, val, k, parent)
- return
- }
-
- if (
- typeof options.edgesLimit !== 'undefined' &&
- edgeIndex + 1 > options.edgesLimit
- ) {
- setReplace(LIMIT_REPLACE_NODE, val, k, parent)
- return
- }
-
- stack.push(val)
- // Optimize for Arrays. Big arrays could kill the performance otherwise!
- if (Array.isArray(val)) {
- for (i = 0; i < val.length; i++) {
- decirc(val[i], i, i, stack, val, depth, options)
- }
- } else {
- var keys = Object.keys(val)
- for (i = 0; i < keys.length; i++) {
- var key = keys[i]
- decirc(val[key], key, i, stack, val, depth, options)
- }
- }
- stack.pop()
- }
-}
-
-// Stable-stringify
-function compareFunction (a, b) {
- if (a < b) {
- return -1
- }
- if (a > b) {
- return 1
- }
- return 0
-}
-
-function deterministicStringify (obj, replacer, spacer, options) {
- if (typeof options === 'undefined') {
- options = defaultOptions()
- }
-
- var tmp = deterministicDecirc(obj, '', 0, [], undefined, 0, options) || obj
- var res
- try {
- if (replacerStack.length === 0) {
- res = JSON.stringify(tmp, replacer, spacer)
- } else {
- res = JSON.stringify(tmp, replaceGetterValues(replacer), spacer)
- }
- } catch (_) {
- return JSON.stringify('[unable to serialize, circular reference is too complex to analyze]')
- } finally {
- // Ensure that we restore the object as it was.
- while (arr.length !== 0) {
- var part = arr.pop()
- if (part.length === 4) {
- Object.defineProperty(part[0], part[1], part[3])
- } else {
- part[0][part[1]] = part[2]
- }
- }
- }
- return res
-}
-
-function deterministicDecirc (val, k, edgeIndex, stack, parent, depth, options) {
- depth += 1
- var i
- if (typeof val === 'object' && val !== null) {
- for (i = 0; i < stack.length; i++) {
- if (stack[i] === val) {
- setReplace(CIRCULAR_REPLACE_NODE, val, k, parent)
- return
- }
- }
- try {
- if (typeof val.toJSON === 'function') {
- return
- }
- } catch (_) {
- return
- }
-
- if (
- typeof options.depthLimit !== 'undefined' &&
- depth > options.depthLimit
- ) {
- setReplace(LIMIT_REPLACE_NODE, val, k, parent)
- return
- }
-
- if (
- typeof options.edgesLimit !== 'undefined' &&
- edgeIndex + 1 > options.edgesLimit
- ) {
- setReplace(LIMIT_REPLACE_NODE, val, k, parent)
- return
- }
-
- stack.push(val)
- // Optimize for Arrays. Big arrays could kill the performance otherwise!
- if (Array.isArray(val)) {
- for (i = 0; i < val.length; i++) {
- deterministicDecirc(val[i], i, i, stack, val, depth, options)
- }
- } else {
- // Create a temporary object in the required way
- var tmp = {}
- var keys = Object.keys(val).sort(compareFunction)
- for (i = 0; i < keys.length; i++) {
- var key = keys[i]
- deterministicDecirc(val[key], key, i, stack, val, depth, options)
- tmp[key] = val[key]
- }
- if (typeof parent !== 'undefined') {
- arr.push([parent, k, val])
- parent[k] = tmp
- } else {
- return tmp
- }
- }
- stack.pop()
- }
-}
-
-// wraps replacer function to handle values we couldn't replace
-// and mark them as replaced value
-function replaceGetterValues (replacer) {
- replacer =
- typeof replacer !== 'undefined'
- ? replacer
- : function (k, v) {
- return v
- }
- return function (key, val) {
- if (replacerStack.length > 0) {
- for (var i = 0; i < replacerStack.length; i++) {
- var part = replacerStack[i]
- if (part[1] === key && part[0] === val) {
- val = part[2]
- replacerStack.splice(i, 1)
- break
- }
- }
- }
- return replacer.call(this, key, val)
- }
-}
-
-},{}],45:[function(_dereq_,module,exports){
-/**
- * filesize
- *
- * @copyright 2024 Jason Mulligan
- * @license BSD-3-Clause
- * @version 10.1.6
- */
-'use strict';
-
-const ARRAY = "array";
-const BIT = "bit";
-const BITS = "bits";
-const BYTE = "byte";
-const BYTES = "bytes";
-const EMPTY = "";
-const EXPONENT = "exponent";
-const FUNCTION = "function";
-const IEC = "iec";
-const INVALID_NUMBER = "Invalid number";
-const INVALID_ROUND = "Invalid rounding method";
-const JEDEC = "jedec";
-const OBJECT = "object";
-const PERIOD = ".";
-const ROUND = "round";
-const S = "s";
-const SI = "si";
-const SI_KBIT = "kbit";
-const SI_KBYTE = "kB";
-const SPACE = " ";
-const STRING = "string";
-const ZERO = "0";
-const STRINGS = {
- symbol: {
- iec: {
- bits: ["bit", "Kibit", "Mibit", "Gibit", "Tibit", "Pibit", "Eibit", "Zibit", "Yibit"],
- bytes: ["B", "KiB", "MiB", "GiB", "TiB", "PiB", "EiB", "ZiB", "YiB"]
- },
- jedec: {
- bits: ["bit", "Kbit", "Mbit", "Gbit", "Tbit", "Pbit", "Ebit", "Zbit", "Ybit"],
- bytes: ["B", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"]
- }
- },
- fullform: {
- iec: ["", "kibi", "mebi", "gibi", "tebi", "pebi", "exbi", "zebi", "yobi"],
- jedec: ["", "kilo", "mega", "giga", "tera", "peta", "exa", "zetta", "yotta"]
- }
-};
-
-function filesize (arg, {
- bits = false,
- pad = false,
- base = -1,
- round = 2,
- locale = EMPTY,
- localeOptions = {},
- separator = EMPTY,
- spacer = SPACE,
- symbols = {},
- standard = EMPTY,
- output = STRING,
- fullform = false,
- fullforms = [],
- exponent = -1,
- roundingMethod = ROUND,
- precision = 0
-} = {}) {
- let e = exponent,
- num = Number(arg),
- result = [],
- val = 0,
- u = EMPTY;
-
- // Sync base & standard
- if (standard === SI) {
- base = 10;
- standard = JEDEC;
- } else if (standard === IEC || standard === JEDEC) {
- base = 2;
- } else if (base === 2) {
- standard = IEC;
- } else {
- base = 10;
- standard = JEDEC;
- }
-
- const ceil = base === 10 ? 1000 : 1024,
- full = fullform === true,
- neg = num < 0,
- roundingFunc = Math[roundingMethod];
-
- if (typeof arg !== "bigint" && isNaN(arg)) {
- throw new TypeError(INVALID_NUMBER);
- }
-
- if (typeof roundingFunc !== FUNCTION) {
- throw new TypeError(INVALID_ROUND);
- }
-
- // Flipping a negative number to determine the size
- if (neg) {
- num = -num;
- }
-
- // Determining the exponent
- if (e === -1 || isNaN(e)) {
- e = Math.floor(Math.log(num) / Math.log(ceil));
-
- if (e < 0) {
- e = 0;
- }
- }
-
- // Exceeding supported length, time to reduce & multiply
- if (e > 8) {
- if (precision > 0) {
- precision += 8 - e;
- }
-
- e = 8;
- }
-
- if (output === EXPONENT) {
- return e;
- }
-
- // Zero is now a special case because bytes divide by 1
- if (num === 0) {
- result[0] = 0;
- u = result[1] = STRINGS.symbol[standard][bits ? BITS : BYTES][e];
- } else {
- val = num / (base === 2 ? Math.pow(2, e * 10) : Math.pow(1000, e));
-
- if (bits) {
- val = val * 8;
-
- if (val >= ceil && e < 8) {
- val = val / ceil;
- e++;
- }
- }
-
- const p = Math.pow(10, e > 0 ? round : 0);
- result[0] = roundingFunc(val * p) / p;
-
- if (result[0] === ceil && e < 8 && exponent === -1) {
- result[0] = 1;
- e++;
- }
-
- u = result[1] = base === 10 && e === 1 ? bits ? SI_KBIT : SI_KBYTE : STRINGS.symbol[standard][bits ? BITS : BYTES][e];
- }
-
- // Decorating a 'diff'
- if (neg) {
- result[0] = -result[0];
- }
-
- // Setting optional precision
- if (precision > 0) {
- result[0] = result[0].toPrecision(precision);
- }
-
- // Applying custom symbol
- result[1] = symbols[result[1]] || result[1];
-
- if (locale === true) {
- result[0] = result[0].toLocaleString();
- } else if (locale.length > 0) {
- result[0] = result[0].toLocaleString(locale, localeOptions);
- } else if (separator.length > 0) {
- result[0] = result[0].toString().replace(PERIOD, separator);
- }
-
- if (pad && round > 0) {
- const i = result[0].toString(),
- x = separator || ((i.match(/(\D)/g) || []).pop() || PERIOD),
- tmp = i.toString().split(x),
- s = tmp[1] || EMPTY,
- l = s.length,
- n = round - l;
-
- result[0] = `${tmp[0]}${x}${s.padEnd(l + n, ZERO)}`;
- }
-
- if (full) {
- result[1] = fullforms[e] ? fullforms[e] : STRINGS.fullform[standard][e] + (bits ? BIT : BYTE) + (result[0] === 1 ? EMPTY : S);
- }
-
- // Returning Array, Object, or String (default)
- return output === ARRAY ? result : output === OBJECT ? {
- value: result[0],
- symbol: result[1],
- exponent: e,
- unit: u
- } : result.join(spacer);
-}
-
-// Partial application for functional programming
-function partial ({
- bits = false,
- pad = false,
- base = -1,
- round = 2,
- locale = EMPTY,
- localeOptions = {},
- separator = EMPTY,
- spacer = SPACE,
- symbols = {},
- standard = EMPTY,
- output = STRING,
- fullform = false,
- fullforms = [],
- exponent = -1,
- roundingMethod = ROUND,
- precision = 0
-} = {}) {
- return arg => filesize(arg, {
- bits,
- pad,
- base,
- round,
- locale,
- localeOptions,
- separator,
- spacer,
- symbols,
- standard,
- output,
- fullform,
- fullforms,
- exponent,
- roundingMethod,
- precision
- });
-}
-
-exports.filesize = filesize;
-exports.partial = partial;
-
-},{}],46:[function(_dereq_,module,exports){
-function format(fmt) {
- var re = /(%?)(%([jds]))/g
- , args = Array.prototype.slice.call(arguments, 1);
- if(args.length) {
- fmt = fmt.replace(re, function(match, escaped, ptn, flag) {
- var arg = args.shift();
- switch(flag) {
- case 's':
- arg = '' + arg;
- break;
- case 'd':
- arg = Number(arg);
- break;
- case 'j':
- arg = JSON.stringify(arg);
- break;
- }
- if(!escaped) {
- return arg;
- }
- args.unshift(arg);
- return match;
- })
- }
-
- // arguments remain after formatting
- if(args.length) {
- fmt += ' ' + args.join(' ');
- }
-
- // update escaped %% values
- fmt = fmt.replace(/%{2,2}/g, '%');
-
- return '' + fmt;
-}
-
-module.exports = format;
-
-},{}],47:[function(_dereq_,module,exports){
-'use strict';
-
-/* eslint no-invalid-this: 1 */
-
-var ERROR_MESSAGE = 'Function.prototype.bind called on incompatible ';
-var toStr = Object.prototype.toString;
-var max = Math.max;
-var funcType = '[object Function]';
-
-var concatty = function concatty(a, b) {
- var arr = [];
-
- for (var i = 0; i < a.length; i += 1) {
- arr[i] = a[i];
- }
- for (var j = 0; j < b.length; j += 1) {
- arr[j + a.length] = b[j];
- }
-
- return arr;
-};
-
-var slicy = function slicy(arrLike, offset) {
- var arr = [];
- for (var i = offset || 0, j = 0; i < arrLike.length; i += 1, j += 1) {
- arr[j] = arrLike[i];
- }
- return arr;
-};
-
-var joiny = function (arr, joiner) {
- var str = '';
- for (var i = 0; i < arr.length; i += 1) {
- str += arr[i];
- if (i + 1 < arr.length) {
- str += joiner;
- }
- }
- return str;
-};
-
-module.exports = function bind(that) {
- var target = this;
- if (typeof target !== 'function' || toStr.apply(target) !== funcType) {
- throw new TypeError(ERROR_MESSAGE + target);
- }
- var args = slicy(arguments, 1);
-
- var bound;
- var binder = function () {
- if (this instanceof bound) {
- var result = target.apply(
- this,
- concatty(args, arguments)
- );
- if (Object(result) === result) {
- return result;
- }
- return this;
- }
- return target.apply(
- that,
- concatty(args, arguments)
- );
-
- };
-
- var boundLength = max(0, target.length - args.length);
- var boundArgs = [];
- for (var i = 0; i < boundLength; i++) {
- boundArgs[i] = '$' + i;
- }
-
- bound = Function('binder', 'return function (' + joiny(boundArgs, ',') + '){ return binder.apply(this,arguments); }')(binder);
-
- if (target.prototype) {
- var Empty = function Empty() {};
- Empty.prototype = target.prototype;
- bound.prototype = new Empty();
- Empty.prototype = null;
- }
-
- return bound;
-};
-
-},{}],48:[function(_dereq_,module,exports){
-'use strict';
-
-var implementation = _dereq_('./implementation');
-
-module.exports = Function.prototype.bind || implementation;
-
-},{"./implementation":47}],49:[function(_dereq_,module,exports){
-"use strict";
-
-exports.__esModule = true;
-exports["default"] = getFormData;
-exports.getFieldData = getFieldData;
-
-function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
-
-var NODE_LIST_CLASSES = {
- '[object HTMLCollection]': true,
- '[object NodeList]': true,
- '[object RadioNodeList]': true
-}; // .type values for elements which can appear in .elements and should be ignored
-
-var IGNORED_ELEMENT_TYPES = {
- 'button': true,
- 'fieldset': true,
- 'reset': true,
- 'submit': true
-};
-var CHECKED_INPUT_TYPES = {
- 'checkbox': true,
- 'radio': true
-};
-var TRIM_RE = /^\s+|\s+$/g;
-var slice = Array.prototype.slice;
-var toString = Object.prototype.toString;
-/**
- * @param {HTMLFormElement} form
- * @param {Object} [options]
- * @return {Object.} an object containing
- * submittable value(s) held in the form's .elements collection, with
- * properties named as per element names or ids.
- */
-
-function getFormData(form, options) {
- if (!form) {
- throw new Error("A form is required by getFormData, was given form=" + form);
- }
-
- options = _extends({
- includeDisabled: false,
- trim: false
- }, options);
- var data = {};
- var elementName;
- var elementNames = [];
- var elementNameLookup = {}; // Get unique submittable element names for the form
-
- for (var i = 0, l = form.elements.length; i < l; i++) {
- var element = form.elements[i];
-
- if (IGNORED_ELEMENT_TYPES[element.type] || element.disabled && !options.includeDisabled) {
- continue;
- }
-
- elementName = element.name || element.id;
-
- if (elementName && !elementNameLookup[elementName]) {
- elementNames.push(elementName);
- elementNameLookup[elementName] = true;
- }
- } // Extract element data name-by-name for consistent handling of special cases
- // around elements which contain multiple inputs.
-
-
- for (var _i = 0, _l = elementNames.length; _i < _l; _i++) {
- elementName = elementNames[_i];
- var value = getFieldData(form, elementName, options);
-
- if (value != null) {
- data[elementName] = value;
- }
- }
-
- return data;
-}
-/**
- * @param {HTMLFormElement} form
- * @param {string} fieldName
- * @param {Object} [options]
- * @return {?(boolean|string|string[]|File|File[])} submittable value(s) in the
- * form for a named element from its .elements collection, or null if there
- * was no element with that name, or the element had no submittable value(s).
- */
-
-
-function getFieldData(form, fieldName, options) {
- if (!form) {
- throw new Error("A form is required by getFieldData, was given form=" + form);
- }
-
- if (!fieldName && toString.call(fieldName) !== '[object String]') {
- throw new Error("A field name is required by getFieldData, was given fieldName=" + fieldName);
- }
-
- options = _extends({
- includeDisabled: false,
- trim: false
- }, options);
- var element = form.elements[fieldName];
-
- if (!element || element.disabled && !options.includeDisabled) {
- return null;
- }
-
- if (!NODE_LIST_CLASSES[toString.call(element)]) {
- return getFormElementValue(element, options.trim);
- } // Deal with multiple form controls which have the same name
-
-
- var data = [];
- var allRadios = true;
-
- for (var i = 0, l = element.length; i < l; i++) {
- if (element[i].disabled && !options.includeDisabled) {
- continue;
- }
-
- if (allRadios && element[i].type !== 'radio') {
- allRadios = false;
- }
-
- var value = getFormElementValue(element[i], options.trim);
-
- if (value != null) {
- data = data.concat(value);
- }
- } // Special case for an element with multiple same-named inputs which were all
- // radio buttons: if there was a selected value, only return the value.
-
-
- if (allRadios && data.length === 1) {
- return data[0];
- }
-
- return data.length > 0 ? data : null;
-}
-/**
- * @param {HTMLElement} element a form element.
- * @param {boolean} [trim] should values for text entry inputs be trimmed?
- * @return {?(boolean|string|string[]|File|File[])} the element's submittable
- * value(s), or null if it had none.
- */
-
-
-function getFormElementValue(element, trim) {
- var value = null;
- var type = element.type;
-
- if (type === 'select-one') {
- if (element.options.length) {
- value = element.options[element.selectedIndex].value;
- }
-
- return value;
- }
-
- if (type === 'select-multiple') {
- value = [];
-
- for (var i = 0, l = element.options.length; i < l; i++) {
- if (element.options[i].selected) {
- value.push(element.options[i].value);
- }
- }
-
- if (value.length === 0) {
- value = null;
- }
-
- return value;
- } // If a file input doesn't have a files attribute, fall through to using its
- // value attribute.
-
-
- if (type === 'file' && 'files' in element) {
- if (element.multiple) {
- value = slice.call(element.files);
-
- if (value.length === 0) {
- value = null;
- }
- } else {
- // Should be null if not present, according to the spec
- value = element.files[0];
- }
-
- return value;
- }
-
- if (!CHECKED_INPUT_TYPES[type]) {
- value = trim ? element.value.replace(TRIM_RE, '') : element.value;
- } else if (element.checked) {
- if (type === 'checkbox' && !element.hasAttribute('value')) {
- value = true;
- } else {
- value = element.value;
- }
- }
-
- return value;
-} // For UMD build access to getFieldData
-
-
-getFormData.getFieldData = getFieldData;
-},{}],50:[function(_dereq_,module,exports){
-'use strict';
-
-var undefined;
-
-var $Error = _dereq_('es-errors');
-var $EvalError = _dereq_('es-errors/eval');
-var $RangeError = _dereq_('es-errors/range');
-var $ReferenceError = _dereq_('es-errors/ref');
-var $SyntaxError = _dereq_('es-errors/syntax');
-var $TypeError = _dereq_('es-errors/type');
-var $URIError = _dereq_('es-errors/uri');
-
-var $Function = Function;
-
-// eslint-disable-next-line consistent-return
-var getEvalledConstructor = function (expressionSyntax) {
- try {
- return $Function('"use strict"; return (' + expressionSyntax + ').constructor;')();
- } catch (e) {}
-};
-
-var $gOPD = Object.getOwnPropertyDescriptor;
-if ($gOPD) {
- try {
- $gOPD({}, '');
- } catch (e) {
- $gOPD = null; // this is IE 8, which has a broken gOPD
- }
-}
-
-var throwTypeError = function () {
- throw new $TypeError();
-};
-var ThrowTypeError = $gOPD
- ? (function () {
- try {
- // eslint-disable-next-line no-unused-expressions, no-caller, no-restricted-properties
- arguments.callee; // IE 8 does not throw here
- return throwTypeError;
- } catch (calleeThrows) {
- try {
- // IE 8 throws on Object.getOwnPropertyDescriptor(arguments, '')
- return $gOPD(arguments, 'callee').get;
- } catch (gOPDthrows) {
- return throwTypeError;
- }
- }
- }())
- : throwTypeError;
-
-var hasSymbols = _dereq_('has-symbols')();
-var hasProto = _dereq_('has-proto')();
-
-var getProto = Object.getPrototypeOf || (
- hasProto
- ? function (x) { return x.__proto__; } // eslint-disable-line no-proto
- : null
-);
-
-var needsEval = {};
-
-var TypedArray = typeof Uint8Array === 'undefined' || !getProto ? undefined : getProto(Uint8Array);
-
-var INTRINSICS = {
- __proto__: null,
- '%AggregateError%': typeof AggregateError === 'undefined' ? undefined : AggregateError,
- '%Array%': Array,
- '%ArrayBuffer%': typeof ArrayBuffer === 'undefined' ? undefined : ArrayBuffer,
- '%ArrayIteratorPrototype%': hasSymbols && getProto ? getProto([][Symbol.iterator]()) : undefined,
- '%AsyncFromSyncIteratorPrototype%': undefined,
- '%AsyncFunction%': needsEval,
- '%AsyncGenerator%': needsEval,
- '%AsyncGeneratorFunction%': needsEval,
- '%AsyncIteratorPrototype%': needsEval,
- '%Atomics%': typeof Atomics === 'undefined' ? undefined : Atomics,
- '%BigInt%': typeof BigInt === 'undefined' ? undefined : BigInt,
- '%BigInt64Array%': typeof BigInt64Array === 'undefined' ? undefined : BigInt64Array,
- '%BigUint64Array%': typeof BigUint64Array === 'undefined' ? undefined : BigUint64Array,
- '%Boolean%': Boolean,
- '%DataView%': typeof DataView === 'undefined' ? undefined : DataView,
- '%Date%': Date,
- '%decodeURI%': decodeURI,
- '%decodeURIComponent%': decodeURIComponent,
- '%encodeURI%': encodeURI,
- '%encodeURIComponent%': encodeURIComponent,
- '%Error%': $Error,
- '%eval%': eval, // eslint-disable-line no-eval
- '%EvalError%': $EvalError,
- '%Float32Array%': typeof Float32Array === 'undefined' ? undefined : Float32Array,
- '%Float64Array%': typeof Float64Array === 'undefined' ? undefined : Float64Array,
- '%FinalizationRegistry%': typeof FinalizationRegistry === 'undefined' ? undefined : FinalizationRegistry,
- '%Function%': $Function,
- '%GeneratorFunction%': needsEval,
- '%Int8Array%': typeof Int8Array === 'undefined' ? undefined : Int8Array,
- '%Int16Array%': typeof Int16Array === 'undefined' ? undefined : Int16Array,
- '%Int32Array%': typeof Int32Array === 'undefined' ? undefined : Int32Array,
- '%isFinite%': isFinite,
- '%isNaN%': isNaN,
- '%IteratorPrototype%': hasSymbols && getProto ? getProto(getProto([][Symbol.iterator]())) : undefined,
- '%JSON%': typeof JSON === 'object' ? JSON : undefined,
- '%Map%': typeof Map === 'undefined' ? undefined : Map,
- '%MapIteratorPrototype%': typeof Map === 'undefined' || !hasSymbols || !getProto ? undefined : getProto(new Map()[Symbol.iterator]()),
- '%Math%': Math,
- '%Number%': Number,
- '%Object%': Object,
- '%parseFloat%': parseFloat,
- '%parseInt%': parseInt,
- '%Promise%': typeof Promise === 'undefined' ? undefined : Promise,
- '%Proxy%': typeof Proxy === 'undefined' ? undefined : Proxy,
- '%RangeError%': $RangeError,
- '%ReferenceError%': $ReferenceError,
- '%Reflect%': typeof Reflect === 'undefined' ? undefined : Reflect,
- '%RegExp%': RegExp,
- '%Set%': typeof Set === 'undefined' ? undefined : Set,
- '%SetIteratorPrototype%': typeof Set === 'undefined' || !hasSymbols || !getProto ? undefined : getProto(new Set()[Symbol.iterator]()),
- '%SharedArrayBuffer%': typeof SharedArrayBuffer === 'undefined' ? undefined : SharedArrayBuffer,
- '%String%': String,
- '%StringIteratorPrototype%': hasSymbols && getProto ? getProto(''[Symbol.iterator]()) : undefined,
- '%Symbol%': hasSymbols ? Symbol : undefined,
- '%SyntaxError%': $SyntaxError,
- '%ThrowTypeError%': ThrowTypeError,
- '%TypedArray%': TypedArray,
- '%TypeError%': $TypeError,
- '%Uint8Array%': typeof Uint8Array === 'undefined' ? undefined : Uint8Array,
- '%Uint8ClampedArray%': typeof Uint8ClampedArray === 'undefined' ? undefined : Uint8ClampedArray,
- '%Uint16Array%': typeof Uint16Array === 'undefined' ? undefined : Uint16Array,
- '%Uint32Array%': typeof Uint32Array === 'undefined' ? undefined : Uint32Array,
- '%URIError%': $URIError,
- '%WeakMap%': typeof WeakMap === 'undefined' ? undefined : WeakMap,
- '%WeakRef%': typeof WeakRef === 'undefined' ? undefined : WeakRef,
- '%WeakSet%': typeof WeakSet === 'undefined' ? undefined : WeakSet
-};
-
-if (getProto) {
- try {
- null.error; // eslint-disable-line no-unused-expressions
- } catch (e) {
- // https://github.com/tc39/proposal-shadowrealm/pull/384#issuecomment-1364264229
- var errorProto = getProto(getProto(e));
- INTRINSICS['%Error.prototype%'] = errorProto;
- }
-}
-
-var doEval = function doEval(name) {
- var value;
- if (name === '%AsyncFunction%') {
- value = getEvalledConstructor('async function () {}');
- } else if (name === '%GeneratorFunction%') {
- value = getEvalledConstructor('function* () {}');
- } else if (name === '%AsyncGeneratorFunction%') {
- value = getEvalledConstructor('async function* () {}');
- } else if (name === '%AsyncGenerator%') {
- var fn = doEval('%AsyncGeneratorFunction%');
- if (fn) {
- value = fn.prototype;
- }
- } else if (name === '%AsyncIteratorPrototype%') {
- var gen = doEval('%AsyncGenerator%');
- if (gen && getProto) {
- value = getProto(gen.prototype);
- }
- }
-
- INTRINSICS[name] = value;
-
- return value;
-};
-
-var LEGACY_ALIASES = {
- __proto__: null,
- '%ArrayBufferPrototype%': ['ArrayBuffer', 'prototype'],
- '%ArrayPrototype%': ['Array', 'prototype'],
- '%ArrayProto_entries%': ['Array', 'prototype', 'entries'],
- '%ArrayProto_forEach%': ['Array', 'prototype', 'forEach'],
- '%ArrayProto_keys%': ['Array', 'prototype', 'keys'],
- '%ArrayProto_values%': ['Array', 'prototype', 'values'],
- '%AsyncFunctionPrototype%': ['AsyncFunction', 'prototype'],
- '%AsyncGenerator%': ['AsyncGeneratorFunction', 'prototype'],
- '%AsyncGeneratorPrototype%': ['AsyncGeneratorFunction', 'prototype', 'prototype'],
- '%BooleanPrototype%': ['Boolean', 'prototype'],
- '%DataViewPrototype%': ['DataView', 'prototype'],
- '%DatePrototype%': ['Date', 'prototype'],
- '%ErrorPrototype%': ['Error', 'prototype'],
- '%EvalErrorPrototype%': ['EvalError', 'prototype'],
- '%Float32ArrayPrototype%': ['Float32Array', 'prototype'],
- '%Float64ArrayPrototype%': ['Float64Array', 'prototype'],
- '%FunctionPrototype%': ['Function', 'prototype'],
- '%Generator%': ['GeneratorFunction', 'prototype'],
- '%GeneratorPrototype%': ['GeneratorFunction', 'prototype', 'prototype'],
- '%Int8ArrayPrototype%': ['Int8Array', 'prototype'],
- '%Int16ArrayPrototype%': ['Int16Array', 'prototype'],
- '%Int32ArrayPrototype%': ['Int32Array', 'prototype'],
- '%JSONParse%': ['JSON', 'parse'],
- '%JSONStringify%': ['JSON', 'stringify'],
- '%MapPrototype%': ['Map', 'prototype'],
- '%NumberPrototype%': ['Number', 'prototype'],
- '%ObjectPrototype%': ['Object', 'prototype'],
- '%ObjProto_toString%': ['Object', 'prototype', 'toString'],
- '%ObjProto_valueOf%': ['Object', 'prototype', 'valueOf'],
- '%PromisePrototype%': ['Promise', 'prototype'],
- '%PromiseProto_then%': ['Promise', 'prototype', 'then'],
- '%Promise_all%': ['Promise', 'all'],
- '%Promise_reject%': ['Promise', 'reject'],
- '%Promise_resolve%': ['Promise', 'resolve'],
- '%RangeErrorPrototype%': ['RangeError', 'prototype'],
- '%ReferenceErrorPrototype%': ['ReferenceError', 'prototype'],
- '%RegExpPrototype%': ['RegExp', 'prototype'],
- '%SetPrototype%': ['Set', 'prototype'],
- '%SharedArrayBufferPrototype%': ['SharedArrayBuffer', 'prototype'],
- '%StringPrototype%': ['String', 'prototype'],
- '%SymbolPrototype%': ['Symbol', 'prototype'],
- '%SyntaxErrorPrototype%': ['SyntaxError', 'prototype'],
- '%TypedArrayPrototype%': ['TypedArray', 'prototype'],
- '%TypeErrorPrototype%': ['TypeError', 'prototype'],
- '%Uint8ArrayPrototype%': ['Uint8Array', 'prototype'],
- '%Uint8ClampedArrayPrototype%': ['Uint8ClampedArray', 'prototype'],
- '%Uint16ArrayPrototype%': ['Uint16Array', 'prototype'],
- '%Uint32ArrayPrototype%': ['Uint32Array', 'prototype'],
- '%URIErrorPrototype%': ['URIError', 'prototype'],
- '%WeakMapPrototype%': ['WeakMap', 'prototype'],
- '%WeakSetPrototype%': ['WeakSet', 'prototype']
-};
-
-var bind = _dereq_('function-bind');
-var hasOwn = _dereq_('hasown');
-var $concat = bind.call(Function.call, Array.prototype.concat);
-var $spliceApply = bind.call(Function.apply, Array.prototype.splice);
-var $replace = bind.call(Function.call, String.prototype.replace);
-var $strSlice = bind.call(Function.call, String.prototype.slice);
-var $exec = bind.call(Function.call, RegExp.prototype.exec);
-
-/* adapted from https://github.com/lodash/lodash/blob/4.17.15/dist/lodash.js#L6735-L6744 */
-var rePropName = /[^%.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|%$))/g;
-var reEscapeChar = /\\(\\)?/g; /** Used to match backslashes in property paths. */
-var stringToPath = function stringToPath(string) {
- var first = $strSlice(string, 0, 1);
- var last = $strSlice(string, -1);
- if (first === '%' && last !== '%') {
- throw new $SyntaxError('invalid intrinsic syntax, expected closing `%`');
- } else if (last === '%' && first !== '%') {
- throw new $SyntaxError('invalid intrinsic syntax, expected opening `%`');
- }
- var result = [];
- $replace(string, rePropName, function (match, number, quote, subString) {
- result[result.length] = quote ? $replace(subString, reEscapeChar, '$1') : number || match;
- });
- return result;
-};
-/* end adaptation */
-
-var getBaseIntrinsic = function getBaseIntrinsic(name, allowMissing) {
- var intrinsicName = name;
- var alias;
- if (hasOwn(LEGACY_ALIASES, intrinsicName)) {
- alias = LEGACY_ALIASES[intrinsicName];
- intrinsicName = '%' + alias[0] + '%';
- }
-
- if (hasOwn(INTRINSICS, intrinsicName)) {
- var value = INTRINSICS[intrinsicName];
- if (value === needsEval) {
- value = doEval(intrinsicName);
- }
- if (typeof value === 'undefined' && !allowMissing) {
- throw new $TypeError('intrinsic ' + name + ' exists, but is not available. Please file an issue!');
- }
-
- return {
- alias: alias,
- name: intrinsicName,
- value: value
- };
- }
-
- throw new $SyntaxError('intrinsic ' + name + ' does not exist!');
-};
-
-module.exports = function GetIntrinsic(name, allowMissing) {
- if (typeof name !== 'string' || name.length === 0) {
- throw new $TypeError('intrinsic name must be a non-empty string');
- }
- if (arguments.length > 1 && typeof allowMissing !== 'boolean') {
- throw new $TypeError('"allowMissing" argument must be a boolean');
- }
-
- if ($exec(/^%?[^%]*%?$/, name) === null) {
- throw new $SyntaxError('`%` may not be present anywhere but at the beginning and end of the intrinsic name');
- }
- var parts = stringToPath(name);
- var intrinsicBaseName = parts.length > 0 ? parts[0] : '';
-
- var intrinsic = getBaseIntrinsic('%' + intrinsicBaseName + '%', allowMissing);
- var intrinsicRealName = intrinsic.name;
- var value = intrinsic.value;
- var skipFurtherCaching = false;
-
- var alias = intrinsic.alias;
- if (alias) {
- intrinsicBaseName = alias[0];
- $spliceApply(parts, $concat([0, 1], alias));
- }
-
- for (var i = 1, isOwn = true; i < parts.length; i += 1) {
- var part = parts[i];
- var first = $strSlice(part, 0, 1);
- var last = $strSlice(part, -1);
- if (
- (
- (first === '"' || first === "'" || first === '`')
- || (last === '"' || last === "'" || last === '`')
- )
- && first !== last
- ) {
- throw new $SyntaxError('property names with quotes must have matching quotes');
- }
- if (part === 'constructor' || !isOwn) {
- skipFurtherCaching = true;
- }
-
- intrinsicBaseName += '.' + part;
- intrinsicRealName = '%' + intrinsicBaseName + '%';
-
- if (hasOwn(INTRINSICS, intrinsicRealName)) {
- value = INTRINSICS[intrinsicRealName];
- } else if (value != null) {
- if (!(part in value)) {
- if (!allowMissing) {
- throw new $TypeError('base intrinsic for ' + name + ' exists, but the property is not available.');
- }
- return void undefined;
- }
- if ($gOPD && (i + 1) >= parts.length) {
- var desc = $gOPD(value, part);
- isOwn = !!desc;
-
- // By convention, when a data property is converted to an accessor
- // property to emulate a data property that does not suffer from
- // the override mistake, that accessor's getter is marked with
- // an `originalValue` property. Here, when we detect this, we
- // uphold the illusion by pretending to see that original data
- // property, i.e., returning the value rather than the getter
- // itself.
- if (isOwn && 'get' in desc && !('originalValue' in desc.get)) {
- value = desc.get;
- } else {
- value = value[part];
- }
- } else {
- isOwn = hasOwn(value, part);
- value = value[part];
- }
-
- if (isOwn && !skipFurtherCaching) {
- INTRINSICS[intrinsicRealName] = value;
- }
- }
- }
- return value;
-};
-
-},{"es-errors":37,"es-errors/eval":36,"es-errors/range":38,"es-errors/ref":39,"es-errors/syntax":40,"es-errors/type":41,"es-errors/uri":42,"function-bind":48,"has-proto":56,"has-symbols":57,"hasown":59}],51:[function(_dereq_,module,exports){
-module.exports = Event
-
-function Event() {
- var listeners = []
-
- return { broadcast: broadcast, listen: event }
-
- function broadcast(value) {
- for (var i = 0; i < listeners.length; i++) {
- listeners[i](value)
- }
- }
-
- function event(listener) {
- listeners.push(listener)
-
- return removeListener
-
- function removeListener() {
- var index = listeners.indexOf(listener)
- if (index !== -1) {
- listeners.splice(index, 1)
- }
- }
- }
-}
-
-},{}],52:[function(_dereq_,module,exports){
-var Event = _dereq_('./event.js')
-
-module.exports = Source
-
-function Source(broadcaster) {
- var tuple = Event()
-
- broadcaster(tuple.broadcast)
-
- return tuple.listen
-}
-
-},{"./event.js":51}],53:[function(_dereq_,module,exports){
-(function (global){(function (){
-var win;
-
-if (typeof window !== "undefined") {
- win = window;
-} else if (typeof global !== "undefined") {
- win = global;
-} else if (typeof self !== "undefined"){
- win = self;
-} else {
- win = {};
-}
-
-module.exports = win;
-
-}).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
-},{}],54:[function(_dereq_,module,exports){
-'use strict';
-
-var GetIntrinsic = _dereq_('get-intrinsic');
-
-var $gOPD = GetIntrinsic('%Object.getOwnPropertyDescriptor%', true);
-
-if ($gOPD) {
- try {
- $gOPD([], 'length');
- } catch (e) {
- // IE 8 has a broken gOPD
- $gOPD = null;
- }
-}
-
-module.exports = $gOPD;
-
-},{"get-intrinsic":50}],55:[function(_dereq_,module,exports){
-'use strict';
-
-var $defineProperty = _dereq_('es-define-property');
-
-var hasPropertyDescriptors = function hasPropertyDescriptors() {
- return !!$defineProperty;
-};
-
-hasPropertyDescriptors.hasArrayLengthDefineBug = function hasArrayLengthDefineBug() {
- // node v0.6 has a bug where array lengths can be Set but not Defined
- if (!$defineProperty) {
- return null;
- }
- try {
- return $defineProperty([], 'length', { value: 1 }).length !== 1;
- } catch (e) {
- // In Firefox 4-22, defining length on an array throws an exception.
- return true;
- }
-};
-
-module.exports = hasPropertyDescriptors;
-
-},{"es-define-property":35}],56:[function(_dereq_,module,exports){
-'use strict';
-
-var test = {
- __proto__: null,
- foo: {}
-};
-
-var $Object = Object;
-
-/** @type {import('.')} */
-module.exports = function hasProto() {
- // @ts-expect-error: TS errors on an inherited property for some reason
- return { __proto__: test }.foo === test.foo
- && !(test instanceof $Object);
-};
-
-},{}],57:[function(_dereq_,module,exports){
-'use strict';
-
-var origSymbol = typeof Symbol !== 'undefined' && Symbol;
-var hasSymbolSham = _dereq_('./shams');
-
-module.exports = function hasNativeSymbols() {
- if (typeof origSymbol !== 'function') { return false; }
- if (typeof Symbol !== 'function') { return false; }
- if (typeof origSymbol('foo') !== 'symbol') { return false; }
- if (typeof Symbol('bar') !== 'symbol') { return false; }
-
- return hasSymbolSham();
-};
-
-},{"./shams":58}],58:[function(_dereq_,module,exports){
-'use strict';
-
-/* eslint complexity: [2, 18], max-statements: [2, 33] */
-module.exports = function hasSymbols() {
- if (typeof Symbol !== 'function' || typeof Object.getOwnPropertySymbols !== 'function') { return false; }
- if (typeof Symbol.iterator === 'symbol') { return true; }
-
- var obj = {};
- var sym = Symbol('test');
- var symObj = Object(sym);
- if (typeof sym === 'string') { return false; }
-
- if (Object.prototype.toString.call(sym) !== '[object Symbol]') { return false; }
- if (Object.prototype.toString.call(symObj) !== '[object Symbol]') { return false; }
-
- // temp disabled per https://github.com/ljharb/object.assign/issues/17
- // if (sym instanceof Symbol) { return false; }
- // temp disabled per https://github.com/WebReflection/get-own-property-symbols/issues/4
- // if (!(symObj instanceof Symbol)) { return false; }
-
- // if (typeof Symbol.prototype.toString !== 'function') { return false; }
- // if (String(sym) !== Symbol.prototype.toString.call(sym)) { return false; }
-
- var symVal = 42;
- obj[sym] = symVal;
- for (sym in obj) { return false; } // eslint-disable-line no-restricted-syntax, no-unreachable-loop
- if (typeof Object.keys === 'function' && Object.keys(obj).length !== 0) { return false; }
-
- if (typeof Object.getOwnPropertyNames === 'function' && Object.getOwnPropertyNames(obj).length !== 0) { return false; }
-
- var syms = Object.getOwnPropertySymbols(obj);
- if (syms.length !== 1 || syms[0] !== sym) { return false; }
-
- if (!Object.prototype.propertyIsEnumerable.call(obj, sym)) { return false; }
-
- if (typeof Object.getOwnPropertyDescriptor === 'function') {
- var descriptor = Object.getOwnPropertyDescriptor(obj, sym);
- if (descriptor.value !== symVal || descriptor.enumerable !== true) { return false; }
- }
-
- return true;
-};
-
-},{}],59:[function(_dereq_,module,exports){
-'use strict';
-
-var call = Function.prototype.call;
-var $hasOwn = Object.prototype.hasOwnProperty;
-var bind = _dereq_('function-bind');
-
-/** @type {import('.')} */
-module.exports = bind.call(call, $hasOwn);
-
-},{"function-bind":48}],60:[function(_dereq_,module,exports){
-module.exports = shim
-
-function shim (element, value) {
- if (value === undefined) {
- return element.style.display === 'none'
- }
-
- element.style.display = value ? 'none' : ''
-}
-
-},{}],61:[function(_dereq_,module,exports){
-// HumanizeDuration.js - https://git.io/j0HgmQ
-
-// @ts-check
-
-/**
- * @typedef {string | ((unitCount: number) => string)} Unit
- */
-
-/**
- * @typedef {("y" | "mo" | "w" | "d" | "h" | "m" | "s" | "ms")} UnitName
- */
-
-/**
- * @typedef {Object} UnitMeasures
- * @prop {number} y
- * @prop {number} mo
- * @prop {number} w
- * @prop {number} d
- * @prop {number} h
- * @prop {number} m
- * @prop {number} s
- * @prop {number} ms
- */
-
-/**
- * @internal
- * @typedef {[string, string, string, string, string, string, string, string, string, string]} DigitReplacements
- */
-
-/**
- * @typedef {Object} Language
- * @prop {Unit} y
- * @prop {Unit} mo
- * @prop {Unit} w
- * @prop {Unit} d
- * @prop {Unit} h
- * @prop {Unit} m
- * @prop {Unit} s
- * @prop {Unit} ms
- * @prop {string} [decimal]
- * @prop {string} [delimiter]
- * @prop {DigitReplacements} [_digitReplacements]
- * @prop {boolean} [_numberFirst]
- * @prop {boolean} [_hideCountIf2]
- */
-
-/**
- * @typedef {Object} Options
- * @prop {string} [language]
- * @prop {Record} [languages]
- * @prop {string[]} [fallbacks]
- * @prop {string} [delimiter]
- * @prop {string} [spacer]
- * @prop {boolean} [round]
- * @prop {number} [largest]
- * @prop {UnitName[]} [units]
- * @prop {string} [decimal]
- * @prop {string} [conjunction]
- * @prop {number} [maxDecimalPoints]
- * @prop {UnitMeasures} [unitMeasures]
- * @prop {boolean} [serialComma]
- * @prop {DigitReplacements} [digitReplacements]
- */
-
-/**
- * @internal
- * @typedef {Required} NormalizedOptions
- */
-
-(function () {
- // Fallback for `Object.assign` if relevant.
- var assign =
- Object.assign ||
- /** @param {...any} destination */
- function (destination) {
- var source;
- for (var i = 1; i < arguments.length; i++) {
- source = arguments[i];
- for (var prop in source) {
- if (has(source, prop)) {
- destination[prop] = source[prop];
- }
- }
- }
- return destination;
- };
-
- // Fallback for `Array.isArray` if relevant.
- var isArray =
- Array.isArray ||
- function (arg) {
- return Object.prototype.toString.call(arg) === "[object Array]";
- };
-
- // This has to be defined separately because of a bug: we want to alias
- // `gr` and `el` for backwards-compatiblity. In a breaking change, we can
- // remove `gr` entirely.
- // See https://github.com/EvanHahn/HumanizeDuration.js/issues/143 for more.
- var GREEK = language(
- function (c) {
- return c === 1 ? "χρόνος" : "χρόνια";
- },
- function (c) {
- return c === 1 ? "μήνας" : "μήνες";
- },
- function (c) {
- return c === 1 ? "εβδομάδα" : "εβδομάδες";
- },
- function (c) {
- return c === 1 ? "μέρα" : "μέρες";
- },
- function (c) {
- return c === 1 ? "ώρα" : "ώρες";
- },
- function (c) {
- return c === 1 ? "λεπτό" : "λεπτά";
- },
- function (c) {
- return c === 1 ? "δευτερόλεπτο" : "δευτερόλεπτα";
- },
- function (c) {
- return (c === 1 ? "χιλιοστό" : "χιλιοστά") + " του δευτερολέπτου";
- },
- ","
- );
-
- /**
- * @internal
- * @type {Record}
- */
- var LANGUAGES = {
- af: language(
- "jaar",
- function (c) {
- return "maand" + (c === 1 ? "" : "e");
- },
- function (c) {
- return c === 1 ? "week" : "weke";
- },
- function (c) {
- return c === 1 ? "dag" : "dae";
- },
- function (c) {
- return c === 1 ? "uur" : "ure";
- },
- function (c) {
- return c === 1 ? "minuut" : "minute";
- },
- function (c) {
- return "sekonde" + (c === 1 ? "" : "s");
- },
- function (c) {
- return "millisekonde" + (c === 1 ? "" : "s");
- },
- ","
- ),
- am: language("ዓመት", "ወር", "ሳምንት", "ቀን", "ሰዓት", "ደቂቃ", "ሰከንድ", "ሚሊሰከንድ"),
- ar: assign(
- language(
- function (c) {
- return ["سنة", "سنتان", "سنوات"][getArabicForm(c)];
- },
- function (c) {
- return ["شهر", "شهران", "أشهر"][getArabicForm(c)];
- },
- function (c) {
- return ["أسبوع", "أسبوعين", "أسابيع"][getArabicForm(c)];
- },
- function (c) {
- return ["يوم", "يومين", "أيام"][getArabicForm(c)];
- },
- function (c) {
- return ["ساعة", "ساعتين", "ساعات"][getArabicForm(c)];
- },
- function (c) {
- return ["دقيقة", "دقيقتان", "دقائق"][getArabicForm(c)];
- },
- function (c) {
- return ["ثانية", "ثانيتان", "ثواني"][getArabicForm(c)];
- },
- function (c) {
- return ["جزء من الثانية", "جزآن من الثانية", "أجزاء من الثانية"][
- getArabicForm(c)
- ];
- },
- ","
- ),
- {
- delimiter: " ﻭ ",
- _hideCountIf2: true,
- _digitReplacements: ["۰", "١", "٢", "٣", "٤", "٥", "٦", "٧", "٨", "٩"]
- }
- ),
- bg: language(
- function (c) {
- return ["години", "година", "години"][getSlavicForm(c)];
- },
- function (c) {
- return ["месеца", "месец", "месеца"][getSlavicForm(c)];
- },
- function (c) {
- return ["седмици", "седмица", "седмици"][getSlavicForm(c)];
- },
- function (c) {
- return ["дни", "ден", "дни"][getSlavicForm(c)];
- },
- function (c) {
- return ["часа", "час", "часа"][getSlavicForm(c)];
- },
- function (c) {
- return ["минути", "минута", "минути"][getSlavicForm(c)];
- },
- function (c) {
- return ["секунди", "секунда", "секунди"][getSlavicForm(c)];
- },
- function (c) {
- return ["милисекунди", "милисекунда", "милисекунди"][getSlavicForm(c)];
- },
- ","
- ),
- bn: language(
- "বছর",
- "মাস",
- "সপ্তাহ",
- "দিন",
- "ঘন্টা",
- "মিনিট",
- "সেকেন্ড",
- "মিলিসেকেন্ড"
- ),
- ca: language(
- function (c) {
- return "any" + (c === 1 ? "" : "s");
- },
- function (c) {
- return "mes" + (c === 1 ? "" : "os");
- },
- function (c) {
- return "setman" + (c === 1 ? "a" : "es");
- },
- function (c) {
- return "di" + (c === 1 ? "a" : "es");
- },
- function (c) {
- return "hor" + (c === 1 ? "a" : "es");
- },
- function (c) {
- return "minut" + (c === 1 ? "" : "s");
- },
- function (c) {
- return "segon" + (c === 1 ? "" : "s");
- },
- function (c) {
- return "milisegon" + (c === 1 ? "" : "s");
- },
- ","
- ),
- ckb: language(
- "ساڵ",
- "مانگ",
- "هەفتە",
- "ڕۆژ",
- "کاژێر",
- "خولەک",
- "چرکە",
- "میلی چرکە",
- "."
- ),
- cs: language(
- function (c) {
- return ["rok", "roku", "roky", "let"][getCzechOrSlovakForm(c)];
- },
- function (c) {
- return ["měsíc", "měsíce", "měsíce", "měsíců"][getCzechOrSlovakForm(c)];
- },
- function (c) {
- return ["týden", "týdne", "týdny", "týdnů"][getCzechOrSlovakForm(c)];
- },
- function (c) {
- return ["den", "dne", "dny", "dní"][getCzechOrSlovakForm(c)];
- },
- function (c) {
- return ["hodina", "hodiny", "hodiny", "hodin"][getCzechOrSlovakForm(c)];
- },
- function (c) {
- return ["minuta", "minuty", "minuty", "minut"][getCzechOrSlovakForm(c)];
- },
- function (c) {
- return ["sekunda", "sekundy", "sekundy", "sekund"][
- getCzechOrSlovakForm(c)
- ];
- },
- function (c) {
- return ["milisekunda", "milisekundy", "milisekundy", "milisekund"][
- getCzechOrSlovakForm(c)
- ];
- },
- ","
- ),
- cy: language(
- "flwyddyn",
- "mis",
- "wythnos",
- "diwrnod",
- "awr",
- "munud",
- "eiliad",
- "milieiliad"
- ),
- da: language(
- "år",
- function (c) {
- return "måned" + (c === 1 ? "" : "er");
- },
- function (c) {
- return "uge" + (c === 1 ? "" : "r");
- },
- function (c) {
- return "dag" + (c === 1 ? "" : "e");
- },
- function (c) {
- return "time" + (c === 1 ? "" : "r");
- },
- function (c) {
- return "minut" + (c === 1 ? "" : "ter");
- },
- function (c) {
- return "sekund" + (c === 1 ? "" : "er");
- },
- function (c) {
- return "millisekund" + (c === 1 ? "" : "er");
- },
- ","
- ),
- de: language(
- function (c) {
- return "Jahr" + (c === 1 ? "" : "e");
- },
- function (c) {
- return "Monat" + (c === 1 ? "" : "e");
- },
- function (c) {
- return "Woche" + (c === 1 ? "" : "n");
- },
- function (c) {
- return "Tag" + (c === 1 ? "" : "e");
- },
- function (c) {
- return "Stunde" + (c === 1 ? "" : "n");
- },
- function (c) {
- return "Minute" + (c === 1 ? "" : "n");
- },
- function (c) {
- return "Sekunde" + (c === 1 ? "" : "n");
- },
- function (c) {
- return "Millisekunde" + (c === 1 ? "" : "n");
- },
- ","
- ),
- el: GREEK,
- en: language(
- function (c) {
- return "year" + (c === 1 ? "" : "s");
- },
- function (c) {
- return "month" + (c === 1 ? "" : "s");
- },
- function (c) {
- return "week" + (c === 1 ? "" : "s");
- },
- function (c) {
- return "day" + (c === 1 ? "" : "s");
- },
- function (c) {
- return "hour" + (c === 1 ? "" : "s");
- },
- function (c) {
- return "minute" + (c === 1 ? "" : "s");
- },
- function (c) {
- return "second" + (c === 1 ? "" : "s");
- },
- function (c) {
- return "millisecond" + (c === 1 ? "" : "s");
- }
- ),
- eo: language(
- function (c) {
- return "jaro" + (c === 1 ? "" : "j");
- },
- function (c) {
- return "monato" + (c === 1 ? "" : "j");
- },
- function (c) {
- return "semajno" + (c === 1 ? "" : "j");
- },
- function (c) {
- return "tago" + (c === 1 ? "" : "j");
- },
- function (c) {
- return "horo" + (c === 1 ? "" : "j");
- },
- function (c) {
- return "minuto" + (c === 1 ? "" : "j");
- },
- function (c) {
- return "sekundo" + (c === 1 ? "" : "j");
- },
- function (c) {
- return "milisekundo" + (c === 1 ? "" : "j");
- },
- ","
- ),
- es: language(
- function (c) {
- return "año" + (c === 1 ? "" : "s");
- },
- function (c) {
- return "mes" + (c === 1 ? "" : "es");
- },
- function (c) {
- return "semana" + (c === 1 ? "" : "s");
- },
- function (c) {
- return "día" + (c === 1 ? "" : "s");
- },
- function (c) {
- return "hora" + (c === 1 ? "" : "s");
- },
- function (c) {
- return "minuto" + (c === 1 ? "" : "s");
- },
- function (c) {
- return "segundo" + (c === 1 ? "" : "s");
- },
- function (c) {
- return "milisegundo" + (c === 1 ? "" : "s");
- },
- ","
- ),
- et: language(
- function (c) {
- return "aasta" + (c === 1 ? "" : "t");
- },
- function (c) {
- return "kuu" + (c === 1 ? "" : "d");
- },
- function (c) {
- return "nädal" + (c === 1 ? "" : "at");
- },
- function (c) {
- return "päev" + (c === 1 ? "" : "a");
- },
- function (c) {
- return "tund" + (c === 1 ? "" : "i");
- },
- function (c) {
- return "minut" + (c === 1 ? "" : "it");
- },
- function (c) {
- return "sekund" + (c === 1 ? "" : "it");
- },
- function (c) {
- return "millisekund" + (c === 1 ? "" : "it");
- },
- ","
- ),
- eu: language(
- "urte",
- "hilabete",
- "aste",
- "egun",
- "ordu",
- "minutu",
- "segundo",
- "milisegundo",
- ","
- ),
- fa: language(
- "سال",
- "ماه",
- "هفته",
- "روز",
- "ساعت",
- "دقیقه",
- "ثانیه",
- "میلی ثانیه"
- ),
- fi: language(
- function (c) {
- return c === 1 ? "vuosi" : "vuotta";
- },
- function (c) {
- return c === 1 ? "kuukausi" : "kuukautta";
- },
- function (c) {
- return "viikko" + (c === 1 ? "" : "a");
- },
- function (c) {
- return "päivä" + (c === 1 ? "" : "ä");
- },
- function (c) {
- return "tunti" + (c === 1 ? "" : "a");
- },
- function (c) {
- return "minuutti" + (c === 1 ? "" : "a");
- },
- function (c) {
- return "sekunti" + (c === 1 ? "" : "a");
- },
- function (c) {
- return "millisekunti" + (c === 1 ? "" : "a");
- },
- ","
- ),
- fo: language(
- "ár",
- function (c) {
- return c === 1 ? "mánaður" : "mánaðir";
- },
- function (c) {
- return c === 1 ? "vika" : "vikur";
- },
- function (c) {
- return c === 1 ? "dagur" : "dagar";
- },
- function (c) {
- return c === 1 ? "tími" : "tímar";
- },
- function (c) {
- return c === 1 ? "minuttur" : "minuttir";
- },
- "sekund",
- "millisekund",
- ","
- ),
- fr: language(
- function (c) {
- return "an" + (c >= 2 ? "s" : "");
- },
- "mois",
- function (c) {
- return "semaine" + (c >= 2 ? "s" : "");
- },
- function (c) {
- return "jour" + (c >= 2 ? "s" : "");
- },
- function (c) {
- return "heure" + (c >= 2 ? "s" : "");
- },
- function (c) {
- return "minute" + (c >= 2 ? "s" : "");
- },
- function (c) {
- return "seconde" + (c >= 2 ? "s" : "");
- },
- function (c) {
- return "milliseconde" + (c >= 2 ? "s" : "");
- },
- ","
- ),
- gr: GREEK,
- he: language(
- function (c) {
- return c === 1 ? "שנה" : "שנים";
- },
- function (c) {
- return c === 1 ? "חודש" : "חודשים";
- },
- function (c) {
- return c === 1 ? "שבוע" : "שבועות";
- },
- function (c) {
- return c === 1 ? "יום" : "ימים";
- },
- function (c) {
- return c === 1 ? "שעה" : "שעות";
- },
- function (c) {
- return c === 1 ? "דקה" : "דקות";
- },
- function (c) {
- return c === 1 ? "שניה" : "שניות";
- },
- function (c) {
- return c === 1 ? "מילישנייה" : "מילישניות";
- }
- ),
- hr: language(
- function (c) {
- if (c % 10 === 2 || c % 10 === 3 || c % 10 === 4) {
- return "godine";
- }
- return "godina";
- },
- function (c) {
- if (c === 1) {
- return "mjesec";
- } else if (c === 2 || c === 3 || c === 4) {
- return "mjeseca";
- }
- return "mjeseci";
- },
- function (c) {
- if (c % 10 === 1 && c !== 11) {
- return "tjedan";
- }
- return "tjedna";
- },
- function (c) {
- return c === 1 ? "dan" : "dana";
- },
- function (c) {
- if (c === 1) {
- return "sat";
- } else if (c === 2 || c === 3 || c === 4) {
- return "sata";
- }
- return "sati";
- },
- function (c) {
- var mod10 = c % 10;
- if ((mod10 === 2 || mod10 === 3 || mod10 === 4) && (c < 10 || c > 14)) {
- return "minute";
- }
- return "minuta";
- },
- function (c) {
- var mod10 = c % 10;
- if (mod10 === 5 || (Math.floor(c) === c && c >= 10 && c <= 19)) {
- return "sekundi";
- } else if (mod10 === 1) {
- return "sekunda";
- } else if (mod10 === 2 || mod10 === 3 || mod10 === 4) {
- return "sekunde";
- }
- return "sekundi";
- },
- function (c) {
- if (c === 1) {
- return "milisekunda";
- } else if (c % 10 === 2 || c % 10 === 3 || c % 10 === 4) {
- return "milisekunde";
- }
- return "milisekundi";
- },
- ","
- ),
- hi: language(
- "साल",
- function (c) {
- return c === 1 ? "महीना" : "महीने";
- },
- function (c) {
- return c === 1 ? "हफ़्ता" : "हफ्ते";
- },
- "दिन",
- function (c) {
- return c === 1 ? "घंटा" : "घंटे";
- },
- "मिनट",
- "सेकंड",
- "मिलीसेकंड"
- ),
- hu: language(
- "év",
- "hónap",
- "hét",
- "nap",
- "óra",
- "perc",
- "másodperc",
- "ezredmásodperc",
- ","
- ),
- id: language(
- "tahun",
- "bulan",
- "minggu",
- "hari",
- "jam",
- "menit",
- "detik",
- "milidetik"
- ),
- is: language(
- "ár",
- function (c) {
- return "mánuð" + (c === 1 ? "ur" : "ir");
- },
- function (c) {
- return "vik" + (c === 1 ? "a" : "ur");
- },
- function (c) {
- return "dag" + (c === 1 ? "ur" : "ar");
- },
- function (c) {
- return "klukkutím" + (c === 1 ? "i" : "ar");
- },
- function (c) {
- return "mínút" + (c === 1 ? "a" : "ur");
- },
- function (c) {
- return "sekúnd" + (c === 1 ? "a" : "ur");
- },
- function (c) {
- return "millisekúnd" + (c === 1 ? "a" : "ur");
- }
- ),
- it: language(
- function (c) {
- return "ann" + (c === 1 ? "o" : "i");
- },
- function (c) {
- return "mes" + (c === 1 ? "e" : "i");
- },
- function (c) {
- return "settiman" + (c === 1 ? "a" : "e");
- },
- function (c) {
- return "giorn" + (c === 1 ? "o" : "i");
- },
- function (c) {
- return "or" + (c === 1 ? "a" : "e");
- },
- function (c) {
- return "minut" + (c === 1 ? "o" : "i");
- },
- function (c) {
- return "second" + (c === 1 ? "o" : "i");
- },
- function (c) {
- return "millisecond" + (c === 1 ? "o" : "i");
- },
- ","
- ),
- ja: language("年", "ヶ月", "週", "日", "時間", "分", "秒", "ミリ秒"),
- km: language(
- "ឆ្នាំ",
- "ខែ",
- "សប្តាហ៍",
- "ថ្ងៃ",
- "ម៉ោង",
- "នាទី",
- "វិនាទី",
- "មិល្លីវិនាទី"
- ),
- kn: language(
- function (c) {
- return c === 1 ? "ವರ್ಷ" : "ವರ್ಷಗಳು";
- },
- function (c) {
- return c === 1 ? "ತಿಂಗಳು" : "ತಿಂಗಳುಗಳು";
- },
- function (c) {
- return c === 1 ? "ವಾರ" : "ವಾರಗಳು";
- },
- function (c) {
- return c === 1 ? "ದಿನ" : "ದಿನಗಳು";
- },
- function (c) {
- return c === 1 ? "ಗಂಟೆ" : "ಗಂಟೆಗಳು";
- },
- function (c) {
- return c === 1 ? "ನಿಮಿಷ" : "ನಿಮಿಷಗಳು";
- },
- function (c) {
- return c === 1 ? "ಸೆಕೆಂಡ್" : "ಸೆಕೆಂಡುಗಳು";
- },
- function (c) {
- return c === 1 ? "ಮಿಲಿಸೆಕೆಂಡ್" : "ಮಿಲಿಸೆಕೆಂಡುಗಳು";
- }
- ),
- ko: language("년", "개월", "주일", "일", "시간", "분", "초", "밀리 초"),
- ku: language(
- "sal",
- "meh",
- "hefte",
- "roj",
- "seet",
- "deqe",
- "saniye",
- "mîlîçirk",
- ","
- ),
- lo: language(
- "ປີ",
- "ເດືອນ",
- "ອາທິດ",
- "ມື້",
- "ຊົ່ວໂມງ",
- "ນາທີ",
- "ວິນາທີ",
- "ມິນລິວິນາທີ",
- ","
- ),
- lt: language(
- function (c) {
- return c % 10 === 0 || (c % 100 >= 10 && c % 100 <= 20)
- ? "metų"
- : "metai";
- },
- function (c) {
- return ["mėnuo", "mėnesiai", "mėnesių"][getLithuanianForm(c)];
- },
- function (c) {
- return ["savaitė", "savaitės", "savaičių"][getLithuanianForm(c)];
- },
- function (c) {
- return ["diena", "dienos", "dienų"][getLithuanianForm(c)];
- },
- function (c) {
- return ["valanda", "valandos", "valandų"][getLithuanianForm(c)];
- },
- function (c) {
- return ["minutė", "minutės", "minučių"][getLithuanianForm(c)];
- },
- function (c) {
- return ["sekundė", "sekundės", "sekundžių"][getLithuanianForm(c)];
- },
- function (c) {
- return ["milisekundė", "milisekundės", "milisekundžių"][
- getLithuanianForm(c)
- ];
- },
- ","
- ),
- lv: language(
- function (c) {
- return getLatvianForm(c) ? "gads" : "gadi";
- },
- function (c) {
- return getLatvianForm(c) ? "mēnesis" : "mēneši";
- },
- function (c) {
- return getLatvianForm(c) ? "nedēļa" : "nedēļas";
- },
- function (c) {
- return getLatvianForm(c) ? "diena" : "dienas";
- },
- function (c) {
- return getLatvianForm(c) ? "stunda" : "stundas";
- },
- function (c) {
- return getLatvianForm(c) ? "minūte" : "minūtes";
- },
- function (c) {
- return getLatvianForm(c) ? "sekunde" : "sekundes";
- },
- function (c) {
- return getLatvianForm(c) ? "milisekunde" : "milisekundes";
- },
- ","
- ),
- mk: language(
- function (c) {
- return c === 1 ? "година" : "години";
- },
- function (c) {
- return c === 1 ? "месец" : "месеци";
- },
- function (c) {
- return c === 1 ? "недела" : "недели";
- },
- function (c) {
- return c === 1 ? "ден" : "дена";
- },
- function (c) {
- return c === 1 ? "час" : "часа";
- },
- function (c) {
- return c === 1 ? "минута" : "минути";
- },
- function (c) {
- return c === 1 ? "секунда" : "секунди";
- },
- function (c) {
- return c === 1 ? "милисекунда" : "милисекунди";
- },
- ","
- ),
- mn: language(
- "жил",
- "сар",
- "долоо хоног",
- "өдөр",
- "цаг",
- "минут",
- "секунд",
- "миллисекунд"
- ),
- mr: language(
- function (c) {
- return c === 1 ? "वर्ष" : "वर्षे";
- },
- function (c) {
- return c === 1 ? "महिना" : "महिने";
- },
- function (c) {
- return c === 1 ? "आठवडा" : "आठवडे";
- },
- "दिवस",
- "तास",
- function (c) {
- return c === 1 ? "मिनिट" : "मिनिटे";
- },
- "सेकंद",
- "मिलिसेकंद"
- ),
- ms: language(
- "tahun",
- "bulan",
- "minggu",
- "hari",
- "jam",
- "minit",
- "saat",
- "milisaat"
- ),
- nl: language(
- "jaar",
- function (c) {
- return c === 1 ? "maand" : "maanden";
- },
- function (c) {
- return c === 1 ? "week" : "weken";
- },
- function (c) {
- return c === 1 ? "dag" : "dagen";
- },
- "uur",
- function (c) {
- return c === 1 ? "minuut" : "minuten";
- },
- function (c) {
- return c === 1 ? "seconde" : "seconden";
- },
- function (c) {
- return c === 1 ? "milliseconde" : "milliseconden";
- },
- ","
- ),
- no: language(
- "år",
- function (c) {
- return "måned" + (c === 1 ? "" : "er");
- },
- function (c) {
- return "uke" + (c === 1 ? "" : "r");
- },
- function (c) {
- return "dag" + (c === 1 ? "" : "er");
- },
- function (c) {
- return "time" + (c === 1 ? "" : "r");
- },
- function (c) {
- return "minutt" + (c === 1 ? "" : "er");
- },
- function (c) {
- return "sekund" + (c === 1 ? "" : "er");
- },
- function (c) {
- return "millisekund" + (c === 1 ? "" : "er");
- },
- ","
- ),
- pl: language(
- function (c) {
- return ["rok", "roku", "lata", "lat"][getPolishForm(c)];
- },
- function (c) {
- return ["miesiąc", "miesiąca", "miesiące", "miesięcy"][
- getPolishForm(c)
- ];
- },
- function (c) {
- return ["tydzień", "tygodnia", "tygodnie", "tygodni"][getPolishForm(c)];
- },
- function (c) {
- return ["dzień", "dnia", "dni", "dni"][getPolishForm(c)];
- },
- function (c) {
- return ["godzina", "godziny", "godziny", "godzin"][getPolishForm(c)];
- },
- function (c) {
- return ["minuta", "minuty", "minuty", "minut"][getPolishForm(c)];
- },
- function (c) {
- return ["sekunda", "sekundy", "sekundy", "sekund"][getPolishForm(c)];
- },
- function (c) {
- return ["milisekunda", "milisekundy", "milisekundy", "milisekund"][
- getPolishForm(c)
- ];
- },
- ","
- ),
- pt: language(
- function (c) {
- return "ano" + (c === 1 ? "" : "s");
- },
- function (c) {
- return c === 1 ? "mês" : "meses";
- },
- function (c) {
- return "semana" + (c === 1 ? "" : "s");
- },
- function (c) {
- return "dia" + (c === 1 ? "" : "s");
- },
- function (c) {
- return "hora" + (c === 1 ? "" : "s");
- },
- function (c) {
- return "minuto" + (c === 1 ? "" : "s");
- },
- function (c) {
- return "segundo" + (c === 1 ? "" : "s");
- },
- function (c) {
- return "milissegundo" + (c === 1 ? "" : "s");
- },
- ","
- ),
- ro: language(
- function (c) {
- return c === 1 ? "an" : "ani";
- },
- function (c) {
- return c === 1 ? "lună" : "luni";
- },
- function (c) {
- return c === 1 ? "săptămână" : "săptămâni";
- },
- function (c) {
- return c === 1 ? "zi" : "zile";
- },
- function (c) {
- return c === 1 ? "oră" : "ore";
- },
- function (c) {
- return c === 1 ? "minut" : "minute";
- },
- function (c) {
- return c === 1 ? "secundă" : "secunde";
- },
- function (c) {
- return c === 1 ? "milisecundă" : "milisecunde";
- },
- ","
- ),
- ru: language(
- function (c) {
- return ["лет", "год", "года"][getSlavicForm(c)];
- },
- function (c) {
- return ["месяцев", "месяц", "месяца"][getSlavicForm(c)];
- },
- function (c) {
- return ["недель", "неделя", "недели"][getSlavicForm(c)];
- },
- function (c) {
- return ["дней", "день", "дня"][getSlavicForm(c)];
- },
- function (c) {
- return ["часов", "час", "часа"][getSlavicForm(c)];
- },
- function (c) {
- return ["минут", "минута", "минуты"][getSlavicForm(c)];
- },
- function (c) {
- return ["секунд", "секунда", "секунды"][getSlavicForm(c)];
- },
- function (c) {
- return ["миллисекунд", "миллисекунда", "миллисекунды"][
- getSlavicForm(c)
- ];
- },
- ","
- ),
- sq: language(
- function (c) {
- return c === 1 ? "vit" : "vjet";
- },
- "muaj",
- "javë",
- "ditë",
- "orë",
- function (c) {
- return "minut" + (c === 1 ? "ë" : "a");
- },
- function (c) {
- return "sekond" + (c === 1 ? "ë" : "a");
- },
- function (c) {
- return "milisekond" + (c === 1 ? "ë" : "a");
- },
- ","
- ),
- sr: language(
- function (c) {
- return ["години", "година", "године"][getSlavicForm(c)];
- },
- function (c) {
- return ["месеци", "месец", "месеца"][getSlavicForm(c)];
- },
- function (c) {
- return ["недељи", "недеља", "недеље"][getSlavicForm(c)];
- },
- function (c) {
- return ["дани", "дан", "дана"][getSlavicForm(c)];
- },
- function (c) {
- return ["сати", "сат", "сата"][getSlavicForm(c)];
- },
- function (c) {
- return ["минута", "минут", "минута"][getSlavicForm(c)];
- },
- function (c) {
- return ["секунди", "секунда", "секунде"][getSlavicForm(c)];
- },
- function (c) {
- return ["милисекунди", "милисекунда", "милисекунде"][getSlavicForm(c)];
- },
- ","
- ),
- ta: language(
- function (c) {
- return c === 1 ? "வருடம்" : "ஆண்டுகள்";
- },
- function (c) {
- return c === 1 ? "மாதம்" : "மாதங்கள்";
- },
- function (c) {
- return c === 1 ? "வாரம்" : "வாரங்கள்";
- },
- function (c) {
- return c === 1 ? "நாள்" : "நாட்கள்";
- },
- function (c) {
- return c === 1 ? "மணி" : "மணிநேரம்";
- },
- function (c) {
- return "நிமிட" + (c === 1 ? "ம்" : "ங்கள்");
- },
- function (c) {
- return "வினாடி" + (c === 1 ? "" : "கள்");
- },
- function (c) {
- return "மில்லி விநாடி" + (c === 1 ? "" : "கள்");
- }
- ),
- te: language(
- function (c) {
- return "సంవత్స" + (c === 1 ? "రం" : "రాల");
- },
- function (c) {
- return "నెల" + (c === 1 ? "" : "ల");
- },
- function (c) {
- return c === 1 ? "వారం" : "వారాలు";
- },
- function (c) {
- return "రోజు" + (c === 1 ? "" : "లు");
- },
- function (c) {
- return "గంట" + (c === 1 ? "" : "లు");
- },
- function (c) {
- return c === 1 ? "నిమిషం" : "నిమిషాలు";
- },
- function (c) {
- return c === 1 ? "సెకను" : "సెకన్లు";
- },
- function (c) {
- return c === 1 ? "మిల్లీసెకన్" : "మిల్లీసెకన్లు";
- }
- ),
- uk: language(
- function (c) {
- return ["років", "рік", "роки"][getSlavicForm(c)];
- },
- function (c) {
- return ["місяців", "місяць", "місяці"][getSlavicForm(c)];
- },
- function (c) {
- return ["тижнів", "тиждень", "тижні"][getSlavicForm(c)];
- },
- function (c) {
- return ["днів", "день", "дні"][getSlavicForm(c)];
- },
- function (c) {
- return ["годин", "година", "години"][getSlavicForm(c)];
- },
- function (c) {
- return ["хвилин", "хвилина", "хвилини"][getSlavicForm(c)];
- },
- function (c) {
- return ["секунд", "секунда", "секунди"][getSlavicForm(c)];
- },
- function (c) {
- return ["мілісекунд", "мілісекунда", "мілісекунди"][getSlavicForm(c)];
- },
- ","
- ),
- ur: language(
- "سال",
- function (c) {
- return c === 1 ? "مہینہ" : "مہینے";
- },
- function (c) {
- return c === 1 ? "ہفتہ" : "ہفتے";
- },
- "دن",
- function (c) {
- return c === 1 ? "گھنٹہ" : "گھنٹے";
- },
- "منٹ",
- "سیکنڈ",
- "ملی سیکنڈ"
- ),
- sk: language(
- function (c) {
- return ["rok", "roky", "roky", "rokov"][getCzechOrSlovakForm(c)];
- },
- function (c) {
- return ["mesiac", "mesiace", "mesiace", "mesiacov"][
- getCzechOrSlovakForm(c)
- ];
- },
- function (c) {
- return ["týždeň", "týždne", "týždne", "týždňov"][
- getCzechOrSlovakForm(c)
- ];
- },
- function (c) {
- return ["deň", "dni", "dni", "dní"][getCzechOrSlovakForm(c)];
- },
- function (c) {
- return ["hodina", "hodiny", "hodiny", "hodín"][getCzechOrSlovakForm(c)];
- },
- function (c) {
- return ["minúta", "minúty", "minúty", "minút"][getCzechOrSlovakForm(c)];
- },
- function (c) {
- return ["sekunda", "sekundy", "sekundy", "sekúnd"][
- getCzechOrSlovakForm(c)
- ];
- },
- function (c) {
- return ["milisekunda", "milisekundy", "milisekundy", "milisekúnd"][
- getCzechOrSlovakForm(c)
- ];
- },
- ","
- ),
- sl: language(
- function (c) {
- if (c % 10 === 1) {
- return "leto";
- } else if (c % 100 === 2) {
- return "leti";
- } else if (
- c % 100 === 3 ||
- c % 100 === 4 ||
- (Math.floor(c) !== c && c % 100 <= 5)
- ) {
- return "leta";
- } else {
- return "let";
- }
- },
- function (c) {
- if (c % 10 === 1) {
- return "mesec";
- } else if (c % 100 === 2 || (Math.floor(c) !== c && c % 100 <= 5)) {
- return "meseca";
- } else if (c % 10 === 3 || c % 10 === 4) {
- return "mesece";
- } else {
- return "mesecev";
- }
- },
- function (c) {
- if (c % 10 === 1) {
- return "teden";
- } else if (c % 10 === 2 || (Math.floor(c) !== c && c % 100 <= 4)) {
- return "tedna";
- } else if (c % 10 === 3 || c % 10 === 4) {
- return "tedne";
- } else {
- return "tednov";
- }
- },
- function (c) {
- return c % 100 === 1 ? "dan" : "dni";
- },
- function (c) {
- if (c % 10 === 1) {
- return "ura";
- } else if (c % 100 === 2) {
- return "uri";
- } else if (c % 10 === 3 || c % 10 === 4 || Math.floor(c) !== c) {
- return "ure";
- } else {
- return "ur";
- }
- },
- function (c) {
- if (c % 10 === 1) {
- return "minuta";
- } else if (c % 10 === 2) {
- return "minuti";
- } else if (
- c % 10 === 3 ||
- c % 10 === 4 ||
- (Math.floor(c) !== c && c % 100 <= 4)
- ) {
- return "minute";
- } else {
- return "minut";
- }
- },
- function (c) {
- if (c % 10 === 1) {
- return "sekunda";
- } else if (c % 100 === 2) {
- return "sekundi";
- } else if (c % 100 === 3 || c % 100 === 4 || Math.floor(c) !== c) {
- return "sekunde";
- } else {
- return "sekund";
- }
- },
- function (c) {
- if (c % 10 === 1) {
- return "milisekunda";
- } else if (c % 100 === 2) {
- return "milisekundi";
- } else if (c % 100 === 3 || c % 100 === 4 || Math.floor(c) !== c) {
- return "milisekunde";
- } else {
- return "milisekund";
- }
- },
- ","
- ),
- sv: language(
- "år",
- function (c) {
- return "månad" + (c === 1 ? "" : "er");
- },
- function (c) {
- return "veck" + (c === 1 ? "a" : "or");
- },
- function (c) {
- return "dag" + (c === 1 ? "" : "ar");
- },
- function (c) {
- return "timm" + (c === 1 ? "e" : "ar");
- },
- function (c) {
- return "minut" + (c === 1 ? "" : "er");
- },
- function (c) {
- return "sekund" + (c === 1 ? "" : "er");
- },
- function (c) {
- return "millisekund" + (c === 1 ? "" : "er");
- },
- ","
- ),
- sw: assign(
- language(
- function (c) {
- return c === 1 ? "mwaka" : "miaka";
- },
- function (c) {
- return c === 1 ? "mwezi" : "miezi";
- },
- "wiki",
- function (c) {
- return c === 1 ? "siku" : "masiku";
- },
- function (c) {
- return c === 1 ? "saa" : "masaa";
- },
- "dakika",
- "sekunde",
- "milisekunde"
- ),
- { _numberFirst: true }
- ),
- tr: language(
- "yıl",
- "ay",
- "hafta",
- "gün",
- "saat",
- "dakika",
- "saniye",
- "milisaniye",
- ","
- ),
- th: language(
- "ปี",
- "เดือน",
- "สัปดาห์",
- "วัน",
- "ชั่วโมง",
- "นาที",
- "วินาที",
- "มิลลิวินาที"
- ),
- uz: language(
- "yil",
- "oy",
- "hafta",
- "kun",
- "soat",
- "minut",
- "sekund",
- "millisekund"
- ),
- uz_CYR: language(
- "йил",
- "ой",
- "ҳафта",
- "кун",
- "соат",
- "минут",
- "секунд",
- "миллисекунд"
- ),
- vi: language(
- "năm",
- "tháng",
- "tuần",
- "ngày",
- "giờ",
- "phút",
- "giây",
- "mili giây",
- ","
- ),
- zh_CN: language("年", "个月", "周", "天", "小时", "分钟", "秒", "毫秒"),
- zh_TW: language("年", "個月", "周", "天", "小時", "分鐘", "秒", "毫秒")
- };
-
- /**
- * Helper function for creating language definitions.
- *
- * @internal
- * @param {Unit} y
- * @param {Unit} mo
- * @param {Unit} w
- * @param {Unit} d
- * @param {Unit} h
- * @param {Unit} m
- * @param {Unit} s
- * @param {Unit} ms
- * @param {string} [decimal]
- * @returns {Language}
- */
- function language(y, mo, w, d, h, m, s, ms, decimal) {
- /** @type {Language} */
- var result = { y: y, mo: mo, w: w, d: d, h: h, m: m, s: s, ms: ms };
- if (typeof decimal !== "undefined") {
- result.decimal = decimal;
- }
- return result;
- }
-
- /**
- * Helper function for Arabic.
- *
- * @internal
- * @param {number} c
- * @returns {0 | 1 | 2}
- */
- function getArabicForm(c) {
- if (c === 2) {
- return 1;
- }
- if (c > 2 && c < 11) {
- return 2;
- }
- return 0;
- }
-
- /**
- * Helper function for Polish.
- *
- * @internal
- * @param {number} c
- * @returns {0 | 1 | 2 | 3}
- */
- function getPolishForm(c) {
- if (c === 1) {
- return 0;
- }
- if (Math.floor(c) !== c) {
- return 1;
- }
- if (c % 10 >= 2 && c % 10 <= 4 && !(c % 100 > 10 && c % 100 < 20)) {
- return 2;
- }
- return 3;
- }
-
- /**
- * Helper function for Slavic languages.
- *
- * @internal
- * @param {number} c
- * @returns {0 | 1 | 2 | 3}
- */
- function getSlavicForm(c) {
- if (Math.floor(c) !== c) {
- return 2;
- }
- if (
- (c % 100 >= 5 && c % 100 <= 20) ||
- (c % 10 >= 5 && c % 10 <= 9) ||
- c % 10 === 0
- ) {
- return 0;
- }
- if (c % 10 === 1) {
- return 1;
- }
- if (c > 1) {
- return 2;
- }
- return 0;
- }
-
- /**
- * Helper function for Czech or Slovak.
- *
- * @internal
- * @param {number} c
- * @returns {0 | 1 | 2 | 3}
- */
- function getCzechOrSlovakForm(c) {
- if (c === 1) {
- return 0;
- }
- if (Math.floor(c) !== c) {
- return 1;
- }
- if (c % 10 >= 2 && c % 10 <= 4 && c % 100 < 10) {
- return 2;
- }
- return 3;
- }
-
- /**
- * Helper function for Lithuanian.
- *
- * @internal
- * @param {number} c
- * @returns {0 | 1 | 2}
- */
- function getLithuanianForm(c) {
- if (c === 1 || (c % 10 === 1 && c % 100 > 20)) {
- return 0;
- }
- if (
- Math.floor(c) !== c ||
- (c % 10 >= 2 && c % 100 > 20) ||
- (c % 10 >= 2 && c % 100 < 10)
- ) {
- return 1;
- }
- return 2;
- }
-
- /**
- * Helper function for Latvian.
- *
- * @internal
- * @param {number} c
- * @returns {boolean}
- */
- function getLatvianForm(c) {
- return c % 10 === 1 && c % 100 !== 11;
- }
-
- /**
- * @internal
- * @template T
- * @param {T} obj
- * @param {keyof T} key
- * @returns {boolean}
- */
- function has(obj, key) {
- return Object.prototype.hasOwnProperty.call(obj, key);
- }
-
- /**
- * @internal
- * @param {Pick, "language" | "fallbacks" | "languages">} options
- * @throws {Error} Throws an error if language is not found.
- * @returns {Language}
- */
- function getLanguage(options) {
- var possibleLanguages = [options.language];
-
- if (has(options, "fallbacks")) {
- if (isArray(options.fallbacks) && options.fallbacks.length) {
- possibleLanguages = possibleLanguages.concat(options.fallbacks);
- } else {
- throw new Error("fallbacks must be an array with at least one element");
- }
- }
-
- for (var i = 0; i < possibleLanguages.length; i++) {
- var languageToTry = possibleLanguages[i];
- if (has(options.languages, languageToTry)) {
- return options.languages[languageToTry];
- }
- if (has(LANGUAGES, languageToTry)) {
- return LANGUAGES[languageToTry];
- }
- }
-
- throw new Error("No language found.");
- }
-
- /**
- * @internal
- * @param {Piece} piece
- * @param {Language} language
- * @param {Pick, "decimal" | "spacer" | "maxDecimalPoints" | "digitReplacements">} options
- */
- function renderPiece(piece, language, options) {
- var unitName = piece.unitName;
- var unitCount = piece.unitCount;
-
- var spacer = options.spacer;
- var maxDecimalPoints = options.maxDecimalPoints;
-
- /** @type {string} */
- var decimal;
- if (has(options, "decimal")) {
- decimal = options.decimal;
- } else if (has(language, "decimal")) {
- decimal = language.decimal;
- } else {
- decimal = ".";
- }
-
- /** @type {undefined | DigitReplacements} */
- var digitReplacements;
- if ("digitReplacements" in options) {
- digitReplacements = options.digitReplacements;
- } else if ("_digitReplacements" in language) {
- digitReplacements = language._digitReplacements;
- }
-
- /** @type {string} */
- var formattedCount;
- var normalizedUnitCount =
- maxDecimalPoints === void 0
- ? unitCount
- : Math.floor(unitCount * Math.pow(10, maxDecimalPoints)) /
- Math.pow(10, maxDecimalPoints);
- var countStr = normalizedUnitCount.toString();
-
- if (language._hideCountIf2 && unitCount === 2) {
- formattedCount = "";
- spacer = "";
- } else {
- if (digitReplacements) {
- formattedCount = "";
- for (var i = 0; i < countStr.length; i++) {
- var char = countStr[i];
- if (char === ".") {
- formattedCount += decimal;
- } else {
- // @ts-ignore because `char` should always be 0-9 at this point.
- formattedCount += digitReplacements[char];
- }
- }
- } else {
- formattedCount = countStr.replace(".", decimal);
- }
- }
-
- var languageWord = language[unitName];
- var word;
- if (typeof languageWord === "function") {
- word = languageWord(unitCount);
- } else {
- word = languageWord;
- }
-
- if (language._numberFirst) {
- return word + spacer + formattedCount;
- }
- return formattedCount + spacer + word;
- }
-
- /**
- * @internal
- * @typedef {Object} Piece
- * @prop {UnitName} unitName
- * @prop {number} unitCount
- */
-
- /**
- * @internal
- * @param {number} ms
- * @param {Pick, "units" | "unitMeasures" | "largest" | "round">} options
- * @returns {Piece[]}
- */
- function getPieces(ms, options) {
- /** @type {UnitName} */
- var unitName;
-
- /** @type {number} */
- var i;
-
- /** @type {number} */
- var unitCount;
-
- /** @type {number} */
- var msRemaining;
-
- var units = options.units;
- var unitMeasures = options.unitMeasures;
- var largest = "largest" in options ? options.largest : Infinity;
-
- if (!units.length) return [];
-
- // Get the counts for each unit. Doesn't round or truncate anything.
- // For example, might create an object like `{ y: 7, m: 6, w: 0, d: 5, h: 23.99 }`.
- /** @type {Partial>} */
- var unitCounts = {};
- msRemaining = ms;
- for (i = 0; i < units.length; i++) {
- unitName = units[i];
- var unitMs = unitMeasures[unitName];
-
- var isLast = i === units.length - 1;
- unitCount = isLast
- ? msRemaining / unitMs
- : Math.floor(msRemaining / unitMs);
- unitCounts[unitName] = unitCount;
-
- msRemaining -= unitCount * unitMs;
- }
-
- if (options.round) {
- // Update counts based on the `largest` option.
- // For example, if `largest === 2` and `unitCount` is `{ y: 7, m: 6, w: 0, d: 5, h: 23.99 }`,
- // updates to something like `{ y: 7, m: 6.2 }`.
- var unitsRemainingBeforeRound = largest;
- for (i = 0; i < units.length; i++) {
- unitName = units[i];
- unitCount = unitCounts[unitName];
-
- if (unitCount === 0) continue;
-
- unitsRemainingBeforeRound--;
-
- // "Take" the rest of the units into this one.
- if (unitsRemainingBeforeRound === 0) {
- for (var j = i + 1; j < units.length; j++) {
- var smallerUnitName = units[j];
- var smallerUnitCount = unitCounts[smallerUnitName];
- unitCounts[unitName] +=
- (smallerUnitCount * unitMeasures[smallerUnitName]) /
- unitMeasures[unitName];
- unitCounts[smallerUnitName] = 0;
- }
- break;
- }
- }
-
- // Round the last piece (which should be the only non-integer).
- //
- // This can be a little tricky if the last piece "bubbles up" to a larger
- // unit. For example, "3 days, 23.99 hours" should be rounded to "4 days".
- // It can also require multiple passes. For example, "6 days, 23.99 hours"
- // should become "1 week".
- for (i = units.length - 1; i >= 0; i--) {
- unitName = units[i];
- unitCount = unitCounts[unitName];
-
- if (unitCount === 0) continue;
-
- var rounded = Math.round(unitCount);
- unitCounts[unitName] = rounded;
-
- if (i === 0) break;
-
- var previousUnitName = units[i - 1];
- var previousUnitMs = unitMeasures[previousUnitName];
- var amountOfPreviousUnit = Math.floor(
- (rounded * unitMeasures[unitName]) / previousUnitMs
- );
- if (amountOfPreviousUnit) {
- unitCounts[previousUnitName] += amountOfPreviousUnit;
- unitCounts[unitName] = 0;
- } else {
- break;
- }
- }
- }
-
- /** @type {Piece[]} */
- var result = [];
- for (i = 0; i < units.length && result.length < largest; i++) {
- unitName = units[i];
- unitCount = unitCounts[unitName];
- if (unitCount) {
- result.push({ unitName: unitName, unitCount: unitCount });
- }
- }
- return result;
- }
-
- /**
- * @internal
- * @param {Piece[]} pieces
- * @param {Pick, "units" | "language" | "languages" | "fallbacks" | "delimiter" | "spacer" | "decimal" | "conjunction" | "maxDecimalPoints" | "serialComma" | "digitReplacements">} options
- * @returns {string}
- */
- function formatPieces(pieces, options) {
- var language = getLanguage(options);
-
- if (!pieces.length) {
- var units = options.units;
- var smallestUnitName = units[units.length - 1];
- return renderPiece(
- { unitName: smallestUnitName, unitCount: 0 },
- language,
- options
- );
- }
-
- var conjunction = options.conjunction;
- var serialComma = options.serialComma;
-
- var delimiter;
- if (has(options, "delimiter")) {
- delimiter = options.delimiter;
- } else if (has(language, "delimiter")) {
- delimiter = language.delimiter;
- } else {
- delimiter = ", ";
- }
-
- /** @type {string[]} */
- var renderedPieces = [];
- for (var i = 0; i < pieces.length; i++) {
- renderedPieces.push(renderPiece(pieces[i], language, options));
- }
-
- if (!conjunction || pieces.length === 1) {
- return renderedPieces.join(delimiter);
- }
-
- if (pieces.length === 2) {
- return renderedPieces.join(conjunction);
- }
-
- return (
- renderedPieces.slice(0, -1).join(delimiter) +
- (serialComma ? "," : "") +
- conjunction +
- renderedPieces.slice(-1)
- );
- }
-
- /**
- * Create a humanizer, which lets you change the default options.
- *
- * @param {Options} [passedOptions]
- */
- function humanizer(passedOptions) {
- /**
- * @param {number} ms
- * @param {Options} [humanizerOptions]
- * @returns {string}
- */
- var result = function humanizer(ms, humanizerOptions) {
- // Make sure we have a positive number.
- //
- // Has the nice side-effect of converting things to numbers. For example,
- // converts `"123"` and `Number(123)` to `123`.
- ms = Math.abs(ms);
-
- var options = assign({}, result, humanizerOptions || {});
-
- var pieces = getPieces(ms, options);
-
- return formatPieces(pieces, options);
- };
-
- return assign(
- result,
- {
- language: "en",
- spacer: " ",
- conjunction: "",
- serialComma: true,
- units: ["y", "mo", "w", "d", "h", "m", "s"],
- languages: {},
- round: false,
- unitMeasures: {
- y: 31557600000,
- mo: 2629800000,
- w: 604800000,
- d: 86400000,
- h: 3600000,
- m: 60000,
- s: 1000,
- ms: 1
- }
- },
- passedOptions
- );
- }
-
- /**
- * Humanize a duration.
- *
- * This is a wrapper around the default humanizer.
- */
- var humanizeDuration = assign(humanizer({}), {
- getSupportedLanguages: function getSupportedLanguages() {
- var result = [];
- for (var language in LANGUAGES) {
- if (has(LANGUAGES, language) && language !== "gr") {
- result.push(language);
- }
- }
- return result;
- },
- humanizer: humanizer
- });
-
- // @ts-ignore
- if (typeof define === "function" && define.amd) {
- // @ts-ignore
- define(function () {
- return humanizeDuration;
- });
- } else if (typeof module !== "undefined" && module.exports) {
- module.exports = humanizeDuration;
- } else {
- this.humanizeDuration = humanizeDuration;
- }
-})();
-
-},{}],62:[function(_dereq_,module,exports){
-var split = _dereq_('browser-split')
-var ClassList = _dereq_('class-list')
-
-var w = typeof window === 'undefined' ? _dereq_('html-element') : window
-var document = w.document
-var Text = w.Text
-
-function context () {
-
- var cleanupFuncs = []
-
- function h() {
- var args = [].slice.call(arguments), e = null
- function item (l) {
- var r
- function parseClass (string) {
- // Our minimal parser doesn’t understand escaping CSS special
- // characters like `#`. Don’t use them. More reading:
- // https://mathiasbynens.be/notes/css-escapes .
-
- var m = split(string, /([\.#]?[^\s#.]+)/)
- if(/^\.|#/.test(m[1]))
- e = document.createElement('div')
- forEach(m, function (v) {
- var s = v.substring(1,v.length)
- if(!v) return
- if(!e)
- e = document.createElement(v)
- else if (v[0] === '.')
- ClassList(e).add(s)
- else if (v[0] === '#')
- e.setAttribute('id', s)
- })
- }
-
- if(l == null)
- ;
- else if('string' === typeof l) {
- if(!e)
- parseClass(l)
- else
- e.appendChild(r = document.createTextNode(l))
- }
- else if('number' === typeof l
- || 'boolean' === typeof l
- || l instanceof Date
- || l instanceof RegExp ) {
- e.appendChild(r = document.createTextNode(l.toString()))
- }
- //there might be a better way to handle this...
- else if (isArray(l))
- forEach(l, item)
- else if(isNode(l))
- e.appendChild(r = l)
- else if(l instanceof Text)
- e.appendChild(r = l)
- else if ('object' === typeof l) {
- for (var k in l) {
- if('function' === typeof l[k]) {
- if(/^on\w+/.test(k)) {
- (function (k, l) { // capture k, l in the closure
- if (e.addEventListener){
- e.addEventListener(k.substring(2), l[k], false)
- cleanupFuncs.push(function(){
- e.removeEventListener(k.substring(2), l[k], false)
- })
- }else{
- e.attachEvent(k, l[k])
- cleanupFuncs.push(function(){
- e.detachEvent(k, l[k])
- })
- }
- })(k, l)
- } else {
- // observable
- e[k] = l[k]()
- cleanupFuncs.push(l[k](function (v) {
- e[k] = v
- }))
- }
- }
- else if(k === 'style') {
- if('string' === typeof l[k]) {
- e.style.cssText = l[k]
- }else{
- for (var s in l[k]) (function(s, v) {
- if('function' === typeof v) {
- // observable
- e.style.setProperty(s, v())
- cleanupFuncs.push(v(function (val) {
- e.style.setProperty(s, val)
- }))
- } else
- var match = l[k][s].match(/(.*)\W+!important\W*$/);
- if (match) {
- e.style.setProperty(s, match[1], 'important')
- } else {
- e.style.setProperty(s, l[k][s])
- }
- })(s, l[k][s])
- }
- } else if(k === 'attrs') {
- for (var v in l[k]) {
- e.setAttribute(v, l[k][v])
- }
- }
- else if (k.substr(0, 5) === "data-") {
- e.setAttribute(k, l[k])
- } else {
- e[k] = l[k]
- }
- }
- } else if ('function' === typeof l) {
- //assume it's an observable!
- var v = l()
- e.appendChild(r = isNode(v) ? v : document.createTextNode(v))
-
- cleanupFuncs.push(l(function (v) {
- if(isNode(v) && r.parentElement)
- r.parentElement.replaceChild(v, r), r = v
- else
- r.textContent = v
- }))
- }
-
- return r
- }
- while(args.length)
- item(args.shift())
-
- return e
- }
-
- h.cleanup = function () {
- for (var i = 0; i < cleanupFuncs.length; i++){
- cleanupFuncs[i]()
- }
- cleanupFuncs.length = 0
- }
-
- return h
-}
-
-var h = module.exports = context()
-h.context = context
-
-function isNode (el) {
- return el && el.nodeName && el.nodeType
-}
-
-function forEach (arr, fn) {
- if (arr.forEach) return arr.forEach(fn)
- for (var i = 0; i < arr.length; i++) fn(arr[i], i)
-}
-
-function isArray (arr) {
- return Object.prototype.toString.call(arr) == '[object Array]'
-}
-
-
-
-},{"browser-split":17,"class-list":22,"html-element":16}],63:[function(_dereq_,module,exports){
-/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh */
-exports.read = function (buffer, offset, isLE, mLen, nBytes) {
- var e, m
- var eLen = (nBytes * 8) - mLen - 1
- var eMax = (1 << eLen) - 1
- var eBias = eMax >> 1
- var nBits = -7
- var i = isLE ? (nBytes - 1) : 0
- var d = isLE ? -1 : 1
- var s = buffer[offset + i]
-
- i += d
-
- e = s & ((1 << (-nBits)) - 1)
- s >>= (-nBits)
- nBits += eLen
- for (; nBits > 0; e = (e * 256) + buffer[offset + i], i += d, nBits -= 8) {}
-
- m = e & ((1 << (-nBits)) - 1)
- e >>= (-nBits)
- nBits += mLen
- for (; nBits > 0; m = (m * 256) + buffer[offset + i], i += d, nBits -= 8) {}
-
- if (e === 0) {
- e = 1 - eBias
- } else if (e === eMax) {
- return m ? NaN : ((s ? -1 : 1) * Infinity)
- } else {
- m = m + Math.pow(2, mLen)
- e = e - eBias
- }
- return (s ? -1 : 1) * m * Math.pow(2, e - mLen)
-}
-
-exports.write = function (buffer, value, offset, isLE, mLen, nBytes) {
- var e, m, c
- var eLen = (nBytes * 8) - mLen - 1
- var eMax = (1 << eLen) - 1
- var eBias = eMax >> 1
- var rt = (mLen === 23 ? Math.pow(2, -24) - Math.pow(2, -77) : 0)
- var i = isLE ? 0 : (nBytes - 1)
- var d = isLE ? 1 : -1
- var s = value < 0 || (value === 0 && 1 / value < 0) ? 1 : 0
-
- value = Math.abs(value)
-
- if (isNaN(value) || value === Infinity) {
- m = isNaN(value) ? 1 : 0
- e = eMax
- } else {
- e = Math.floor(Math.log(value) / Math.LN2)
- if (value * (c = Math.pow(2, -e)) < 1) {
- e--
- c *= 2
- }
- if (e + eBias >= 1) {
- value += rt / c
- } else {
- value += rt * Math.pow(2, 1 - eBias)
- }
- if (value * c >= 2) {
- e++
- c /= 2
- }
-
- if (e + eBias >= eMax) {
- m = 0
- e = eMax
- } else if (e + eBias >= 1) {
- m = ((value * c) - 1) * Math.pow(2, mLen)
- e = e + eBias
- } else {
- m = value * Math.pow(2, eBias - 1) * Math.pow(2, mLen)
- e = 0
- }
- }
-
- for (; mLen >= 8; buffer[offset + i] = m & 0xff, i += d, m /= 256, mLen -= 8) {}
-
- e = (e << mLen) | m
- eLen += mLen
- for (; eLen > 0; buffer[offset + i] = e & 0xff, i += d, e /= 256, eLen -= 8) {}
-
- buffer[offset + i - d] |= s * 128
-}
-
-},{}],64:[function(_dereq_,module,exports){
-
-var indexOf = [].indexOf;
-
-module.exports = function(arr, obj){
- if (indexOf) return arr.indexOf(obj);
- for (var i = 0; i < arr.length; ++i) {
- if (arr[i] === obj) return i;
- }
- return -1;
-};
-},{}],65:[function(_dereq_,module,exports){
-if (typeof Object.create === 'function') {
- // implementation from standard node.js 'util' module
- module.exports = function inherits(ctor, superCtor) {
- if (superCtor) {
- ctor.super_ = superCtor
- ctor.prototype = Object.create(superCtor.prototype, {
- constructor: {
- value: ctor,
- enumerable: false,
- writable: true,
- configurable: true
- }
- })
- }
- };
-} else {
- // old school shim for old browsers
- module.exports = function inherits(ctor, superCtor) {
- if (superCtor) {
- ctor.super_ = superCtor
- var TempCtor = function () {}
- TempCtor.prototype = superCtor.prototype
- ctor.prototype = new TempCtor()
- ctor.prototype.constructor = ctor
- }
- }
-}
-
-},{}],66:[function(_dereq_,module,exports){
-var containers = []; // will store container HTMLElement references
-var styleElements = []; // will store {prepend: HTMLElement, append: HTMLElement}
-
-var usage = 'insert-css: You need to provide a CSS string. Usage: insertCss(cssString[, options]).';
-
-function insertCss(css, options) {
- options = options || {};
-
- if (css === undefined) {
- throw new Error(usage);
- }
-
- var position = options.prepend === true ? 'prepend' : 'append';
- var container = options.container !== undefined ? options.container : document.querySelector('head');
- var containerId = containers.indexOf(container);
-
- // first time we see this container, create the necessary entries
- if (containerId === -1) {
- containerId = containers.push(container) - 1;
- styleElements[containerId] = {};
- }
-
- // try to get the correponding container + position styleElement, create it otherwise
- var styleElement;
-
- if (styleElements[containerId] !== undefined && styleElements[containerId][position] !== undefined) {
- styleElement = styleElements[containerId][position];
- } else {
- styleElement = styleElements[containerId][position] = createStyleElement();
-
- if (position === 'prepend') {
- container.insertBefore(styleElement, container.childNodes[0]);
- } else {
- container.appendChild(styleElement);
- }
- }
-
- // strip potential UTF-8 BOM if css was read from a file
- if (css.charCodeAt(0) === 0xFEFF) { css = css.substr(1, css.length); }
-
- // actually add the stylesheet
- if (styleElement.styleSheet) {
- styleElement.styleSheet.cssText += css
- } else {
- styleElement.textContent += css;
- }
-
- return styleElement;
-};
-
-function createStyleElement() {
- var styleElement = document.createElement('style');
- styleElement.setAttribute('type', 'text/css');
- return styleElement;
-}
-
-module.exports = insertCss;
-module.exports.insertCss = insertCss;
-
-},{}],67:[function(_dereq_,module,exports){
-module.exports = isPowerOfTwo
-
-function isPowerOfTwo(n) {
- return n !== 0 && (n & (n - 1)) === 0
-}
-},{}],68:[function(_dereq_,module,exports){
-var toString = {}.toString;
-
-module.exports = Array.isArray || function (arr) {
- return toString.call(arr) == '[object Array]';
-};
-
-},{}],69:[function(_dereq_,module,exports){
-/**
- * Copyright 2013-2014 Facebook, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
-
-"use strict";
-
-/**
- * Constructs an enumeration with keys equal to their value.
- *
- * For example:
- *
- * var COLORS = keyMirror({blue: null, red: null});
- * var myColor = COLORS.blue;
- * var isColorValid = !!COLORS[myColor];
- *
- * The last line could not be performed if the values of the generated enum were
- * not equal to their keys.
- *
- * Input: {key1: val1, key2: val2}
- * Output: {key1: key1, key2: key2}
- *
- * @param {object} obj
- * @return {object}
- */
-var keyMirror = function(obj) {
- var ret = {};
- var key;
- if (!(obj instanceof Object && !Array.isArray(obj))) {
- throw new Error('keyMirror(...): Argument must be an object.');
- }
- for (key in obj) {
- if (!obj.hasOwnProperty(key)) {
- continue;
- }
- ret[key] = key;
- }
- return ret;
-};
-
-module.exports = keyMirror;
-
-},{}],70:[function(_dereq_,module,exports){
-(function (global){(function (){
-var hasMap = typeof Map === 'function' && Map.prototype;
-var mapSizeDescriptor = Object.getOwnPropertyDescriptor && hasMap ? Object.getOwnPropertyDescriptor(Map.prototype, 'size') : null;
-var mapSize = hasMap && mapSizeDescriptor && typeof mapSizeDescriptor.get === 'function' ? mapSizeDescriptor.get : null;
-var mapForEach = hasMap && Map.prototype.forEach;
-var hasSet = typeof Set === 'function' && Set.prototype;
-var setSizeDescriptor = Object.getOwnPropertyDescriptor && hasSet ? Object.getOwnPropertyDescriptor(Set.prototype, 'size') : null;
-var setSize = hasSet && setSizeDescriptor && typeof setSizeDescriptor.get === 'function' ? setSizeDescriptor.get : null;
-var setForEach = hasSet && Set.prototype.forEach;
-var hasWeakMap = typeof WeakMap === 'function' && WeakMap.prototype;
-var weakMapHas = hasWeakMap ? WeakMap.prototype.has : null;
-var hasWeakSet = typeof WeakSet === 'function' && WeakSet.prototype;
-var weakSetHas = hasWeakSet ? WeakSet.prototype.has : null;
-var hasWeakRef = typeof WeakRef === 'function' && WeakRef.prototype;
-var weakRefDeref = hasWeakRef ? WeakRef.prototype.deref : null;
-var booleanValueOf = Boolean.prototype.valueOf;
-var objectToString = Object.prototype.toString;
-var functionToString = Function.prototype.toString;
-var $match = String.prototype.match;
-var $slice = String.prototype.slice;
-var $replace = String.prototype.replace;
-var $toUpperCase = String.prototype.toUpperCase;
-var $toLowerCase = String.prototype.toLowerCase;
-var $test = RegExp.prototype.test;
-var $concat = Array.prototype.concat;
-var $join = Array.prototype.join;
-var $arrSlice = Array.prototype.slice;
-var $floor = Math.floor;
-var bigIntValueOf = typeof BigInt === 'function' ? BigInt.prototype.valueOf : null;
-var gOPS = Object.getOwnPropertySymbols;
-var symToString = typeof Symbol === 'function' && typeof Symbol.iterator === 'symbol' ? Symbol.prototype.toString : null;
-var hasShammedSymbols = typeof Symbol === 'function' && typeof Symbol.iterator === 'object';
-// ie, `has-tostringtag/shams
-var toStringTag = typeof Symbol === 'function' && Symbol.toStringTag && (typeof Symbol.toStringTag === hasShammedSymbols ? 'object' : 'symbol')
- ? Symbol.toStringTag
- : null;
-var isEnumerable = Object.prototype.propertyIsEnumerable;
-
-var gPO = (typeof Reflect === 'function' ? Reflect.getPrototypeOf : Object.getPrototypeOf) || (
- [].__proto__ === Array.prototype // eslint-disable-line no-proto
- ? function (O) {
- return O.__proto__; // eslint-disable-line no-proto
- }
- : null
-);
-
-function addNumericSeparator(num, str) {
- if (
- num === Infinity
- || num === -Infinity
- || num !== num
- || (num && num > -1000 && num < 1000)
- || $test.call(/e/, str)
- ) {
- return str;
- }
- var sepRegex = /[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;
- if (typeof num === 'number') {
- var int = num < 0 ? -$floor(-num) : $floor(num); // trunc(num)
- if (int !== num) {
- var intStr = String(int);
- var dec = $slice.call(str, intStr.length + 1);
- return $replace.call(intStr, sepRegex, '$&_') + '.' + $replace.call($replace.call(dec, /([0-9]{3})/g, '$&_'), /_$/, '');
- }
- }
- return $replace.call(str, sepRegex, '$&_');
-}
-
-var utilInspect = _dereq_('./util.inspect');
-var inspectCustom = utilInspect.custom;
-var inspectSymbol = isSymbol(inspectCustom) ? inspectCustom : null;
-
-module.exports = function inspect_(obj, options, depth, seen) {
- var opts = options || {};
-
- if (has(opts, 'quoteStyle') && (opts.quoteStyle !== 'single' && opts.quoteStyle !== 'double')) {
- throw new TypeError('option "quoteStyle" must be "single" or "double"');
- }
- if (
- has(opts, 'maxStringLength') && (typeof opts.maxStringLength === 'number'
- ? opts.maxStringLength < 0 && opts.maxStringLength !== Infinity
- : opts.maxStringLength !== null
- )
- ) {
- throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');
- }
- var customInspect = has(opts, 'customInspect') ? opts.customInspect : true;
- if (typeof customInspect !== 'boolean' && customInspect !== 'symbol') {
- throw new TypeError('option "customInspect", if provided, must be `true`, `false`, or `\'symbol\'`');
- }
-
- if (
- has(opts, 'indent')
- && opts.indent !== null
- && opts.indent !== '\t'
- && !(parseInt(opts.indent, 10) === opts.indent && opts.indent > 0)
- ) {
- throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');
- }
- if (has(opts, 'numericSeparator') && typeof opts.numericSeparator !== 'boolean') {
- throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');
- }
- var numericSeparator = opts.numericSeparator;
-
- if (typeof obj === 'undefined') {
- return 'undefined';
- }
- if (obj === null) {
- return 'null';
- }
- if (typeof obj === 'boolean') {
- return obj ? 'true' : 'false';
- }
-
- if (typeof obj === 'string') {
- return inspectString(obj, opts);
- }
- if (typeof obj === 'number') {
- if (obj === 0) {
- return Infinity / obj > 0 ? '0' : '-0';
- }
- var str = String(obj);
- return numericSeparator ? addNumericSeparator(obj, str) : str;
- }
- if (typeof obj === 'bigint') {
- var bigIntStr = String(obj) + 'n';
- return numericSeparator ? addNumericSeparator(obj, bigIntStr) : bigIntStr;
- }
-
- var maxDepth = typeof opts.depth === 'undefined' ? 5 : opts.depth;
- if (typeof depth === 'undefined') { depth = 0; }
- if (depth >= maxDepth && maxDepth > 0 && typeof obj === 'object') {
- return isArray(obj) ? '[Array]' : '[Object]';
- }
-
- var indent = getIndent(opts, depth);
-
- if (typeof seen === 'undefined') {
- seen = [];
- } else if (indexOf(seen, obj) >= 0) {
- return '[Circular]';
- }
-
- function inspect(value, from, noIndent) {
- if (from) {
- seen = $arrSlice.call(seen);
- seen.push(from);
- }
- if (noIndent) {
- var newOpts = {
- depth: opts.depth
- };
- if (has(opts, 'quoteStyle')) {
- newOpts.quoteStyle = opts.quoteStyle;
- }
- return inspect_(value, newOpts, depth + 1, seen);
- }
- return inspect_(value, opts, depth + 1, seen);
- }
-
- if (typeof obj === 'function' && !isRegExp(obj)) { // in older engines, regexes are callable
- var name = nameOf(obj);
- var keys = arrObjKeys(obj, inspect);
- return '[Function' + (name ? ': ' + name : ' (anonymous)') + ']' + (keys.length > 0 ? ' { ' + $join.call(keys, ', ') + ' }' : '');
- }
- if (isSymbol(obj)) {
- var symString = hasShammedSymbols ? $replace.call(String(obj), /^(Symbol\(.*\))_[^)]*$/, '$1') : symToString.call(obj);
- return typeof obj === 'object' && !hasShammedSymbols ? markBoxed(symString) : symString;
- }
- if (isElement(obj)) {
- var s = '<' + $toLowerCase.call(String(obj.nodeName));
- var attrs = obj.attributes || [];
- for (var i = 0; i < attrs.length; i++) {
- s += ' ' + attrs[i].name + '=' + wrapQuotes(quote(attrs[i].value), 'double', opts);
- }
- s += '>';
- if (obj.childNodes && obj.childNodes.length) { s += '...'; }
- s += '' + $toLowerCase.call(String(obj.nodeName)) + '>';
- return s;
- }
- if (isArray(obj)) {
- if (obj.length === 0) { return '[]'; }
- var xs = arrObjKeys(obj, inspect);
- if (indent && !singleLineValues(xs)) {
- return '[' + indentedJoin(xs, indent) + ']';
- }
- return '[ ' + $join.call(xs, ', ') + ' ]';
- }
- if (isError(obj)) {
- var parts = arrObjKeys(obj, inspect);
- if (!('cause' in Error.prototype) && 'cause' in obj && !isEnumerable.call(obj, 'cause')) {
- return '{ [' + String(obj) + '] ' + $join.call($concat.call('[cause]: ' + inspect(obj.cause), parts), ', ') + ' }';
- }
- if (parts.length === 0) { return '[' + String(obj) + ']'; }
- return '{ [' + String(obj) + '] ' + $join.call(parts, ', ') + ' }';
- }
- if (typeof obj === 'object' && customInspect) {
- if (inspectSymbol && typeof obj[inspectSymbol] === 'function' && utilInspect) {
- return utilInspect(obj, { depth: maxDepth - depth });
- } else if (customInspect !== 'symbol' && typeof obj.inspect === 'function') {
- return obj.inspect();
- }
- }
- if (isMap(obj)) {
- var mapParts = [];
- if (mapForEach) {
- mapForEach.call(obj, function (value, key) {
- mapParts.push(inspect(key, obj, true) + ' => ' + inspect(value, obj));
- });
- }
- return collectionOf('Map', mapSize.call(obj), mapParts, indent);
- }
- if (isSet(obj)) {
- var setParts = [];
- if (setForEach) {
- setForEach.call(obj, function (value) {
- setParts.push(inspect(value, obj));
- });
- }
- return collectionOf('Set', setSize.call(obj), setParts, indent);
- }
- if (isWeakMap(obj)) {
- return weakCollectionOf('WeakMap');
- }
- if (isWeakSet(obj)) {
- return weakCollectionOf('WeakSet');
- }
- if (isWeakRef(obj)) {
- return weakCollectionOf('WeakRef');
- }
- if (isNumber(obj)) {
- return markBoxed(inspect(Number(obj)));
- }
- if (isBigInt(obj)) {
- return markBoxed(inspect(bigIntValueOf.call(obj)));
- }
- if (isBoolean(obj)) {
- return markBoxed(booleanValueOf.call(obj));
- }
- if (isString(obj)) {
- return markBoxed(inspect(String(obj)));
- }
- // note: in IE 8, sometimes `global !== window` but both are the prototypes of each other
- /* eslint-env browser */
- if (typeof window !== 'undefined' && obj === window) {
- return '{ [object Window] }';
- }
- if (
- (typeof globalThis !== 'undefined' && obj === globalThis)
- || (typeof global !== 'undefined' && obj === global)
- ) {
- return '{ [object globalThis] }';
- }
- if (!isDate(obj) && !isRegExp(obj)) {
- var ys = arrObjKeys(obj, inspect);
- var isPlainObject = gPO ? gPO(obj) === Object.prototype : obj instanceof Object || obj.constructor === Object;
- var protoTag = obj instanceof Object ? '' : 'null prototype';
- var stringTag = !isPlainObject && toStringTag && Object(obj) === obj && toStringTag in obj ? $slice.call(toStr(obj), 8, -1) : protoTag ? 'Object' : '';
- var constructorTag = isPlainObject || typeof obj.constructor !== 'function' ? '' : obj.constructor.name ? obj.constructor.name + ' ' : '';
- var tag = constructorTag + (stringTag || protoTag ? '[' + $join.call($concat.call([], stringTag || [], protoTag || []), ': ') + '] ' : '');
- if (ys.length === 0) { return tag + '{}'; }
- if (indent) {
- return tag + '{' + indentedJoin(ys, indent) + '}';
- }
- return tag + '{ ' + $join.call(ys, ', ') + ' }';
- }
- return String(obj);
-};
-
-function wrapQuotes(s, defaultStyle, opts) {
- var quoteChar = (opts.quoteStyle || defaultStyle) === 'double' ? '"' : "'";
- return quoteChar + s + quoteChar;
-}
-
-function quote(s) {
- return $replace.call(String(s), /"/g, '"');
-}
-
-function isArray(obj) { return toStr(obj) === '[object Array]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }
-function isDate(obj) { return toStr(obj) === '[object Date]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }
-function isRegExp(obj) { return toStr(obj) === '[object RegExp]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }
-function isError(obj) { return toStr(obj) === '[object Error]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }
-function isString(obj) { return toStr(obj) === '[object String]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }
-function isNumber(obj) { return toStr(obj) === '[object Number]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }
-function isBoolean(obj) { return toStr(obj) === '[object Boolean]' && (!toStringTag || !(typeof obj === 'object' && toStringTag in obj)); }
-
-// Symbol and BigInt do have Symbol.toStringTag by spec, so that can't be used to eliminate false positives
-function isSymbol(obj) {
- if (hasShammedSymbols) {
- return obj && typeof obj === 'object' && obj instanceof Symbol;
- }
- if (typeof obj === 'symbol') {
- return true;
- }
- if (!obj || typeof obj !== 'object' || !symToString) {
- return false;
- }
- try {
- symToString.call(obj);
- return true;
- } catch (e) {}
- return false;
-}
-
-function isBigInt(obj) {
- if (!obj || typeof obj !== 'object' || !bigIntValueOf) {
- return false;
- }
- try {
- bigIntValueOf.call(obj);
- return true;
- } catch (e) {}
- return false;
-}
-
-var hasOwn = Object.prototype.hasOwnProperty || function (key) { return key in this; };
-function has(obj, key) {
- return hasOwn.call(obj, key);
-}
-
-function toStr(obj) {
- return objectToString.call(obj);
-}
-
-function nameOf(f) {
- if (f.name) { return f.name; }
- var m = $match.call(functionToString.call(f), /^function\s*([\w$]+)/);
- if (m) { return m[1]; }
- return null;
-}
-
-function indexOf(xs, x) {
- if (xs.indexOf) { return xs.indexOf(x); }
- for (var i = 0, l = xs.length; i < l; i++) {
- if (xs[i] === x) { return i; }
- }
- return -1;
-}
-
-function isMap(x) {
- if (!mapSize || !x || typeof x !== 'object') {
- return false;
- }
- try {
- mapSize.call(x);
- try {
- setSize.call(x);
- } catch (s) {
- return true;
- }
- return x instanceof Map; // core-js workaround, pre-v2.5.0
- } catch (e) {}
- return false;
-}
-
-function isWeakMap(x) {
- if (!weakMapHas || !x || typeof x !== 'object') {
- return false;
- }
- try {
- weakMapHas.call(x, weakMapHas);
- try {
- weakSetHas.call(x, weakSetHas);
- } catch (s) {
- return true;
- }
- return x instanceof WeakMap; // core-js workaround, pre-v2.5.0
- } catch (e) {}
- return false;
-}
-
-function isWeakRef(x) {
- if (!weakRefDeref || !x || typeof x !== 'object') {
- return false;
- }
- try {
- weakRefDeref.call(x);
- return true;
- } catch (e) {}
- return false;
-}
-
-function isSet(x) {
- if (!setSize || !x || typeof x !== 'object') {
- return false;
- }
- try {
- setSize.call(x);
- try {
- mapSize.call(x);
- } catch (m) {
- return true;
- }
- return x instanceof Set; // core-js workaround, pre-v2.5.0
- } catch (e) {}
- return false;
-}
-
-function isWeakSet(x) {
- if (!weakSetHas || !x || typeof x !== 'object') {
- return false;
- }
- try {
- weakSetHas.call(x, weakSetHas);
- try {
- weakMapHas.call(x, weakMapHas);
- } catch (s) {
- return true;
- }
- return x instanceof WeakSet; // core-js workaround, pre-v2.5.0
- } catch (e) {}
- return false;
-}
-
-function isElement(x) {
- if (!x || typeof x !== 'object') { return false; }
- if (typeof HTMLElement !== 'undefined' && x instanceof HTMLElement) {
- return true;
- }
- return typeof x.nodeName === 'string' && typeof x.getAttribute === 'function';
-}
-
-function inspectString(str, opts) {
- if (str.length > opts.maxStringLength) {
- var remaining = str.length - opts.maxStringLength;
- var trailer = '... ' + remaining + ' more character' + (remaining > 1 ? 's' : '');
- return inspectString($slice.call(str, 0, opts.maxStringLength), opts) + trailer;
- }
- // eslint-disable-next-line no-control-regex
- var s = $replace.call($replace.call(str, /(['\\])/g, '\\$1'), /[\x00-\x1f]/g, lowbyte);
- return wrapQuotes(s, 'single', opts);
-}
-
-function lowbyte(c) {
- var n = c.charCodeAt(0);
- var x = {
- 8: 'b',
- 9: 't',
- 10: 'n',
- 12: 'f',
- 13: 'r'
- }[n];
- if (x) { return '\\' + x; }
- return '\\x' + (n < 0x10 ? '0' : '') + $toUpperCase.call(n.toString(16));
-}
-
-function markBoxed(str) {
- return 'Object(' + str + ')';
-}
-
-function weakCollectionOf(type) {
- return type + ' { ? }';
-}
-
-function collectionOf(type, size, entries, indent) {
- var joinedEntries = indent ? indentedJoin(entries, indent) : $join.call(entries, ', ');
- return type + ' (' + size + ') {' + joinedEntries + '}';
-}
-
-function singleLineValues(xs) {
- for (var i = 0; i < xs.length; i++) {
- if (indexOf(xs[i], '\n') >= 0) {
- return false;
- }
- }
- return true;
-}
-
-function getIndent(opts, depth) {
- var baseIndent;
- if (opts.indent === '\t') {
- baseIndent = '\t';
- } else if (typeof opts.indent === 'number' && opts.indent > 0) {
- baseIndent = $join.call(Array(opts.indent + 1), ' ');
- } else {
- return null;
- }
- return {
- base: baseIndent,
- prev: $join.call(Array(depth + 1), baseIndent)
- };
-}
-
-function indentedJoin(xs, indent) {
- if (xs.length === 0) { return ''; }
- var lineJoiner = '\n' + indent.prev + indent.base;
- return lineJoiner + $join.call(xs, ',' + lineJoiner) + '\n' + indent.prev;
-}
-
-function arrObjKeys(obj, inspect) {
- var isArr = isArray(obj);
- var xs = [];
- if (isArr) {
- xs.length = obj.length;
- for (var i = 0; i < obj.length; i++) {
- xs[i] = has(obj, i) ? inspect(obj[i], obj) : '';
- }
- }
- var syms = typeof gOPS === 'function' ? gOPS(obj) : [];
- var symMap;
- if (hasShammedSymbols) {
- symMap = {};
- for (var k = 0; k < syms.length; k++) {
- symMap['$' + syms[k]] = syms[k];
- }
- }
-
- for (var key in obj) { // eslint-disable-line no-restricted-syntax
- if (!has(obj, key)) { continue; } // eslint-disable-line no-restricted-syntax, no-continue
- if (isArr && String(Number(key)) === key && key < obj.length) { continue; } // eslint-disable-line no-restricted-syntax, no-continue
- if (hasShammedSymbols && symMap['$' + key] instanceof Symbol) {
- // this is to prevent shammed Symbols, which are stored as strings, from being included in the string key section
- continue; // eslint-disable-line no-restricted-syntax, no-continue
- } else if ($test.call(/[^\w$]/, key)) {
- xs.push(inspect(key, obj) + ': ' + inspect(obj[key], obj));
- } else {
- xs.push(key + ': ' + inspect(obj[key], obj));
- }
- }
- if (typeof gOPS === 'function') {
- for (var j = 0; j < syms.length; j++) {
- if (isEnumerable.call(obj, syms[j])) {
- xs.push('[' + inspect(syms[j]) + ']: ' + inspect(obj[syms[j]], obj));
- }
- }
- }
- return xs;
-}
-
-}).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
-},{"./util.inspect":16}],71:[function(_dereq_,module,exports){
-var wrappy = _dereq_('wrappy')
-module.exports = wrappy(once)
-module.exports.strict = wrappy(onceStrict)
-
-once.proto = once(function () {
- Object.defineProperty(Function.prototype, 'once', {
- value: function () {
- return once(this)
- },
- configurable: true
- })
-
- Object.defineProperty(Function.prototype, 'onceStrict', {
- value: function () {
- return onceStrict(this)
- },
- configurable: true
- })
-})
-
-function once (fn) {
- var f = function () {
- if (f.called) return f.value
- f.called = true
- return f.value = fn.apply(this, arguments)
- }
- f.called = false
- return f
-}
-
-function onceStrict (fn) {
- var f = function () {
- if (f.called)
- throw new Error(f.onceError)
- f.called = true
- return f.value = fn.apply(this, arguments)
- }
- var name = fn.name || 'Function wrapped with `once`'
- f.onceError = name + " shouldn't be called more than once"
- f.called = false
- return f
-}
-
-},{"wrappy":109}],72:[function(_dereq_,module,exports){
-(function (process){(function (){
-// Generated by CoffeeScript 1.12.2
-(function() {
- var getNanoSeconds, hrtime, loadTime, moduleLoadTime, nodeLoadTime, upTime;
-
- if ((typeof performance !== "undefined" && performance !== null) && performance.now) {
- module.exports = function() {
- return performance.now();
- };
- } else if ((typeof process !== "undefined" && process !== null) && process.hrtime) {
- module.exports = function() {
- return (getNanoSeconds() - nodeLoadTime) / 1e6;
- };
- hrtime = process.hrtime;
- getNanoSeconds = function() {
- var hr;
- hr = hrtime();
- return hr[0] * 1e9 + hr[1];
- };
- moduleLoadTime = getNanoSeconds();
- upTime = process.uptime() * 1e9;
- nodeLoadTime = moduleLoadTime - upTime;
- } else if (Date.now) {
- module.exports = function() {
- return Date.now() - loadTime;
- };
- loadTime = Date.now();
- } else {
- module.exports = function() {
- return new Date().getTime() - loadTime;
- };
- loadTime = new Date().getTime();
- }
-
-}).call(this);
-
-
-
-}).call(this)}).call(this,_dereq_('_process'))
-},{"_process":74}],73:[function(_dereq_,module,exports){
-(function (process){(function (){
-'use strict';
-
-if (typeof process === 'undefined' ||
- !process.version ||
- process.version.indexOf('v0.') === 0 ||
- process.version.indexOf('v1.') === 0 && process.version.indexOf('v1.8.') !== 0) {
- module.exports = { nextTick: nextTick };
-} else {
- module.exports = process
-}
-
-function nextTick(fn, arg1, arg2, arg3) {
- if (typeof fn !== 'function') {
- throw new TypeError('"callback" argument must be a function');
- }
- var len = arguments.length;
- var args, i;
- switch (len) {
- case 0:
- case 1:
- return process.nextTick(fn);
- case 2:
- return process.nextTick(function afterTickOne() {
- fn.call(null, arg1);
- });
- case 3:
- return process.nextTick(function afterTickTwo() {
- fn.call(null, arg1, arg2);
- });
- case 4:
- return process.nextTick(function afterTickThree() {
- fn.call(null, arg1, arg2, arg3);
- });
- default:
- args = new Array(len - 1);
- i = 0;
- while (i < args.length) {
- args[i++] = arguments[i];
- }
- return process.nextTick(function afterTick() {
- fn.apply(null, args);
- });
- }
-}
-
-
-}).call(this)}).call(this,_dereq_('_process'))
-},{"_process":74}],74:[function(_dereq_,module,exports){
-// shim for using process in browser
-var process = module.exports = {};
-
-// cached from whatever global is present so that test runners that stub it
-// don't break things. But we need to wrap it in a try catch in case it is
-// wrapped in strict mode code which doesn't define any globals. It's inside a
-// function because try/catches deoptimize in certain engines.
-
-var cachedSetTimeout;
-var cachedClearTimeout;
-
-function defaultSetTimout() {
- throw new Error('setTimeout has not been defined');
-}
-function defaultClearTimeout () {
- throw new Error('clearTimeout has not been defined');
-}
-(function () {
- try {
- if (typeof setTimeout === 'function') {
- cachedSetTimeout = setTimeout;
- } else {
- cachedSetTimeout = defaultSetTimout;
- }
- } catch (e) {
- cachedSetTimeout = defaultSetTimout;
- }
- try {
- if (typeof clearTimeout === 'function') {
- cachedClearTimeout = clearTimeout;
- } else {
- cachedClearTimeout = defaultClearTimeout;
- }
- } catch (e) {
- cachedClearTimeout = defaultClearTimeout;
- }
-} ())
-function runTimeout(fun) {
- if (cachedSetTimeout === setTimeout) {
- //normal enviroments in sane situations
- return setTimeout(fun, 0);
- }
- // if setTimeout wasn't available but was latter defined
- if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {
- cachedSetTimeout = setTimeout;
- return setTimeout(fun, 0);
- }
- try {
- // when when somebody has screwed with setTimeout but no I.E. maddness
- return cachedSetTimeout(fun, 0);
- } catch(e){
- try {
- // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
- return cachedSetTimeout.call(null, fun, 0);
- } catch(e){
- // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error
- return cachedSetTimeout.call(this, fun, 0);
- }
- }
-
-
-}
-function runClearTimeout(marker) {
- if (cachedClearTimeout === clearTimeout) {
- //normal enviroments in sane situations
- return clearTimeout(marker);
- }
- // if clearTimeout wasn't available but was latter defined
- if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {
- cachedClearTimeout = clearTimeout;
- return clearTimeout(marker);
- }
- try {
- // when when somebody has screwed with setTimeout but no I.E. maddness
- return cachedClearTimeout(marker);
- } catch (e){
- try {
- // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
- return cachedClearTimeout.call(null, marker);
- } catch (e){
- // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.
- // Some versions of I.E. have different rules for clearTimeout vs setTimeout
- return cachedClearTimeout.call(this, marker);
- }
- }
-
-
-
-}
-var queue = [];
-var draining = false;
-var currentQueue;
-var queueIndex = -1;
-
-function cleanUpNextTick() {
- if (!draining || !currentQueue) {
- return;
- }
- draining = false;
- if (currentQueue.length) {
- queue = currentQueue.concat(queue);
- } else {
- queueIndex = -1;
- }
- if (queue.length) {
- drainQueue();
- }
-}
-
-function drainQueue() {
- if (draining) {
- return;
- }
- var timeout = runTimeout(cleanUpNextTick);
- draining = true;
-
- var len = queue.length;
- while(len) {
- currentQueue = queue;
- queue = [];
- while (++queueIndex < len) {
- if (currentQueue) {
- currentQueue[queueIndex].run();
- }
- }
- queueIndex = -1;
- len = queue.length;
- }
- currentQueue = null;
- draining = false;
- runClearTimeout(timeout);
-}
-
-process.nextTick = function (fun) {
- var args = new Array(arguments.length - 1);
- if (arguments.length > 1) {
- for (var i = 1; i < arguments.length; i++) {
- args[i - 1] = arguments[i];
- }
- }
- queue.push(new Item(fun, args));
- if (queue.length === 1 && !draining) {
- runTimeout(drainQueue);
- }
-};
-
-// v8 likes predictible objects
-function Item(fun, array) {
- this.fun = fun;
- this.array = array;
-}
-Item.prototype.run = function () {
- this.fun.apply(null, this.array);
-};
-process.title = 'browser';
-process.browser = true;
-process.env = {};
-process.argv = [];
-process.version = ''; // empty string to avoid regexp issues
-process.versions = {};
-
-function noop() {}
-
-process.on = noop;
-process.addListener = noop;
-process.once = noop;
-process.off = noop;
-process.removeListener = noop;
-process.removeAllListeners = noop;
-process.emit = noop;
-process.prependListener = noop;
-process.prependOnceListener = noop;
-
-process.listeners = function (name) { return [] }
-
-process.binding = function (name) {
- throw new Error('process.binding is not supported');
-};
-
-process.cwd = function () { return '/' };
-process.chdir = function (dir) {
- throw new Error('process.chdir is not supported');
-};
-process.umask = function() { return 0; };
-
-},{}],75:[function(_dereq_,module,exports){
-'use strict';
-
-var replace = String.prototype.replace;
-var percentTwenties = /%20/g;
-
-var Format = {
- RFC1738: 'RFC1738',
- RFC3986: 'RFC3986'
-};
-
-module.exports = {
- 'default': Format.RFC3986,
- formatters: {
- RFC1738: function (value) {
- return replace.call(value, percentTwenties, '+');
- },
- RFC3986: function (value) {
- return String(value);
- }
- },
- RFC1738: Format.RFC1738,
- RFC3986: Format.RFC3986
-};
-
-},{}],76:[function(_dereq_,module,exports){
-'use strict';
-
-var stringify = _dereq_('./stringify');
-var parse = _dereq_('./parse');
-var formats = _dereq_('./formats');
-
-module.exports = {
- formats: formats,
- parse: parse,
- stringify: stringify
-};
-
-},{"./formats":75,"./parse":77,"./stringify":78}],77:[function(_dereq_,module,exports){
-'use strict';
-
-var utils = _dereq_('./utils');
-
-var has = Object.prototype.hasOwnProperty;
-var isArray = Array.isArray;
-
-var defaults = {
- allowDots: false,
- allowEmptyArrays: false,
- allowPrototypes: false,
- allowSparse: false,
- arrayLimit: 20,
- charset: 'utf-8',
- charsetSentinel: false,
- comma: false,
- decodeDotInKeys: false,
- decoder: utils.decode,
- delimiter: '&',
- depth: 5,
- duplicates: 'combine',
- ignoreQueryPrefix: false,
- interpretNumericEntities: false,
- parameterLimit: 1000,
- parseArrays: true,
- plainObjects: false,
- strictDepth: false,
- strictNullHandling: false
-};
-
-var interpretNumericEntities = function (str) {
- return str.replace(/(\d+);/g, function ($0, numberStr) {
- return String.fromCharCode(parseInt(numberStr, 10));
- });
-};
-
-var parseArrayValue = function (val, options) {
- if (val && typeof val === 'string' && options.comma && val.indexOf(',') > -1) {
- return val.split(',');
- }
-
- return val;
-};
-
-// This is what browsers will submit when the ✓ character occurs in an
-// application/x-www-form-urlencoded body and the encoding of the page containing
-// the form is iso-8859-1, or when the submitted form has an accept-charset
-// attribute of iso-8859-1. Presumably also with other charsets that do not contain
-// the ✓ character, such as us-ascii.
-var isoSentinel = 'utf8=%26%2310003%3B'; // encodeURIComponent('✓')
-
-// These are the percent-encoded utf-8 octets representing a checkmark, indicating that the request actually is utf-8 encoded.
-var charsetSentinel = 'utf8=%E2%9C%93'; // encodeURIComponent('✓')
-
-var parseValues = function parseQueryStringValues(str, options) {
- var obj = { __proto__: null };
-
- var cleanStr = options.ignoreQueryPrefix ? str.replace(/^\?/, '') : str;
- cleanStr = cleanStr.replace(/%5B/gi, '[').replace(/%5D/gi, ']');
- var limit = options.parameterLimit === Infinity ? undefined : options.parameterLimit;
- var parts = cleanStr.split(options.delimiter, limit);
- var skipIndex = -1; // Keep track of where the utf8 sentinel was found
- var i;
-
- var charset = options.charset;
- if (options.charsetSentinel) {
- for (i = 0; i < parts.length; ++i) {
- if (parts[i].indexOf('utf8=') === 0) {
- if (parts[i] === charsetSentinel) {
- charset = 'utf-8';
- } else if (parts[i] === isoSentinel) {
- charset = 'iso-8859-1';
- }
- skipIndex = i;
- i = parts.length; // The eslint settings do not allow break;
- }
- }
- }
-
- for (i = 0; i < parts.length; ++i) {
- if (i === skipIndex) {
- continue;
- }
- var part = parts[i];
-
- var bracketEqualsPos = part.indexOf(']=');
- var pos = bracketEqualsPos === -1 ? part.indexOf('=') : bracketEqualsPos + 1;
-
- var key, val;
- if (pos === -1) {
- key = options.decoder(part, defaults.decoder, charset, 'key');
- val = options.strictNullHandling ? null : '';
- } else {
- key = options.decoder(part.slice(0, pos), defaults.decoder, charset, 'key');
- val = utils.maybeMap(
- parseArrayValue(part.slice(pos + 1), options),
- function (encodedVal) {
- return options.decoder(encodedVal, defaults.decoder, charset, 'value');
- }
- );
- }
-
- if (val && options.interpretNumericEntities && charset === 'iso-8859-1') {
- val = interpretNumericEntities(val);
- }
-
- if (part.indexOf('[]=') > -1) {
- val = isArray(val) ? [val] : val;
- }
-
- var existing = has.call(obj, key);
- if (existing && options.duplicates === 'combine') {
- obj[key] = utils.combine(obj[key], val);
- } else if (!existing || options.duplicates === 'last') {
- obj[key] = val;
- }
- }
-
- return obj;
-};
-
-var parseObject = function (chain, val, options, valuesParsed) {
- var leaf = valuesParsed ? val : parseArrayValue(val, options);
-
- for (var i = chain.length - 1; i >= 0; --i) {
- var obj;
- var root = chain[i];
-
- if (root === '[]' && options.parseArrays) {
- obj = options.allowEmptyArrays && (leaf === '' || (options.strictNullHandling && leaf === null))
- ? []
- : [].concat(leaf);
- } else {
- obj = options.plainObjects ? Object.create(null) : {};
- var cleanRoot = root.charAt(0) === '[' && root.charAt(root.length - 1) === ']' ? root.slice(1, -1) : root;
- var decodedRoot = options.decodeDotInKeys ? cleanRoot.replace(/%2E/g, '.') : cleanRoot;
- var index = parseInt(decodedRoot, 10);
- if (!options.parseArrays && decodedRoot === '') {
- obj = { 0: leaf };
- } else if (
- !isNaN(index)
- && root !== decodedRoot
- && String(index) === decodedRoot
- && index >= 0
- && (options.parseArrays && index <= options.arrayLimit)
- ) {
- obj = [];
- obj[index] = leaf;
- } else if (decodedRoot !== '__proto__') {
- obj[decodedRoot] = leaf;
- }
- }
-
- leaf = obj;
- }
-
- return leaf;
-};
-
-var parseKeys = function parseQueryStringKeys(givenKey, val, options, valuesParsed) {
- if (!givenKey) {
- return;
- }
-
- // Transform dot notation to bracket notation
- var key = options.allowDots ? givenKey.replace(/\.([^.[]+)/g, '[$1]') : givenKey;
-
- // The regex chunks
-
- var brackets = /(\[[^[\]]*])/;
- var child = /(\[[^[\]]*])/g;
-
- // Get the parent
-
- var segment = options.depth > 0 && brackets.exec(key);
- var parent = segment ? key.slice(0, segment.index) : key;
-
- // Stash the parent if it exists
-
- var keys = [];
- if (parent) {
- // If we aren't using plain objects, optionally prefix keys that would overwrite object prototype properties
- if (!options.plainObjects && has.call(Object.prototype, parent)) {
- if (!options.allowPrototypes) {
- return;
- }
- }
-
- keys.push(parent);
- }
-
- // Loop through children appending to the array until we hit depth
-
- var i = 0;
- while (options.depth > 0 && (segment = child.exec(key)) !== null && i < options.depth) {
- i += 1;
- if (!options.plainObjects && has.call(Object.prototype, segment[1].slice(1, -1))) {
- if (!options.allowPrototypes) {
- return;
- }
- }
- keys.push(segment[1]);
- }
-
- // If there's a remainder, check strictDepth option for throw, else just add whatever is left
-
- if (segment) {
- if (options.strictDepth === true) {
- throw new RangeError('Input depth exceeded depth option of ' + options.depth + ' and strictDepth is true');
- }
- keys.push('[' + key.slice(segment.index) + ']');
- }
-
- return parseObject(keys, val, options, valuesParsed);
-};
-
-var normalizeParseOptions = function normalizeParseOptions(opts) {
- if (!opts) {
- return defaults;
- }
-
- if (typeof opts.allowEmptyArrays !== 'undefined' && typeof opts.allowEmptyArrays !== 'boolean') {
- throw new TypeError('`allowEmptyArrays` option can only be `true` or `false`, when provided');
- }
-
- if (typeof opts.decodeDotInKeys !== 'undefined' && typeof opts.decodeDotInKeys !== 'boolean') {
- throw new TypeError('`decodeDotInKeys` option can only be `true` or `false`, when provided');
- }
-
- if (opts.decoder !== null && typeof opts.decoder !== 'undefined' && typeof opts.decoder !== 'function') {
- throw new TypeError('Decoder has to be a function.');
- }
-
- if (typeof opts.charset !== 'undefined' && opts.charset !== 'utf-8' && opts.charset !== 'iso-8859-1') {
- throw new TypeError('The charset option must be either utf-8, iso-8859-1, or undefined');
- }
- var charset = typeof opts.charset === 'undefined' ? defaults.charset : opts.charset;
-
- var duplicates = typeof opts.duplicates === 'undefined' ? defaults.duplicates : opts.duplicates;
-
- if (duplicates !== 'combine' && duplicates !== 'first' && duplicates !== 'last') {
- throw new TypeError('The duplicates option must be either combine, first, or last');
- }
-
- var allowDots = typeof opts.allowDots === 'undefined' ? opts.decodeDotInKeys === true ? true : defaults.allowDots : !!opts.allowDots;
-
- return {
- allowDots: allowDots,
- allowEmptyArrays: typeof opts.allowEmptyArrays === 'boolean' ? !!opts.allowEmptyArrays : defaults.allowEmptyArrays,
- allowPrototypes: typeof opts.allowPrototypes === 'boolean' ? opts.allowPrototypes : defaults.allowPrototypes,
- allowSparse: typeof opts.allowSparse === 'boolean' ? opts.allowSparse : defaults.allowSparse,
- arrayLimit: typeof opts.arrayLimit === 'number' ? opts.arrayLimit : defaults.arrayLimit,
- charset: charset,
- charsetSentinel: typeof opts.charsetSentinel === 'boolean' ? opts.charsetSentinel : defaults.charsetSentinel,
- comma: typeof opts.comma === 'boolean' ? opts.comma : defaults.comma,
- decodeDotInKeys: typeof opts.decodeDotInKeys === 'boolean' ? opts.decodeDotInKeys : defaults.decodeDotInKeys,
- decoder: typeof opts.decoder === 'function' ? opts.decoder : defaults.decoder,
- delimiter: typeof opts.delimiter === 'string' || utils.isRegExp(opts.delimiter) ? opts.delimiter : defaults.delimiter,
- // eslint-disable-next-line no-implicit-coercion, no-extra-parens
- depth: (typeof opts.depth === 'number' || opts.depth === false) ? +opts.depth : defaults.depth,
- duplicates: duplicates,
- ignoreQueryPrefix: opts.ignoreQueryPrefix === true,
- interpretNumericEntities: typeof opts.interpretNumericEntities === 'boolean' ? opts.interpretNumericEntities : defaults.interpretNumericEntities,
- parameterLimit: typeof opts.parameterLimit === 'number' ? opts.parameterLimit : defaults.parameterLimit,
- parseArrays: opts.parseArrays !== false,
- plainObjects: typeof opts.plainObjects === 'boolean' ? opts.plainObjects : defaults.plainObjects,
- strictDepth: typeof opts.strictDepth === 'boolean' ? !!opts.strictDepth : defaults.strictDepth,
- strictNullHandling: typeof opts.strictNullHandling === 'boolean' ? opts.strictNullHandling : defaults.strictNullHandling
- };
-};
-
-module.exports = function (str, opts) {
- var options = normalizeParseOptions(opts);
-
- if (str === '' || str === null || typeof str === 'undefined') {
- return options.plainObjects ? Object.create(null) : {};
- }
-
- var tempObj = typeof str === 'string' ? parseValues(str, options) : str;
- var obj = options.plainObjects ? Object.create(null) : {};
-
- // Iterate over the keys and setup the new object
-
- var keys = Object.keys(tempObj);
- for (var i = 0; i < keys.length; ++i) {
- var key = keys[i];
- var newObj = parseKeys(key, tempObj[key], options, typeof str === 'string');
- obj = utils.merge(obj, newObj, options);
- }
-
- if (options.allowSparse === true) {
- return obj;
- }
-
- return utils.compact(obj);
-};
-
-},{"./utils":79}],78:[function(_dereq_,module,exports){
-'use strict';
-
-var getSideChannel = _dereq_('side-channel');
-var utils = _dereq_('./utils');
-var formats = _dereq_('./formats');
-var has = Object.prototype.hasOwnProperty;
-
-var arrayPrefixGenerators = {
- brackets: function brackets(prefix) {
- return prefix + '[]';
- },
- comma: 'comma',
- indices: function indices(prefix, key) {
- return prefix + '[' + key + ']';
- },
- repeat: function repeat(prefix) {
- return prefix;
- }
-};
-
-var isArray = Array.isArray;
-var push = Array.prototype.push;
-var pushToArray = function (arr, valueOrArray) {
- push.apply(arr, isArray(valueOrArray) ? valueOrArray : [valueOrArray]);
-};
-
-var toISO = Date.prototype.toISOString;
-
-var defaultFormat = formats['default'];
-var defaults = {
- addQueryPrefix: false,
- allowDots: false,
- allowEmptyArrays: false,
- arrayFormat: 'indices',
- charset: 'utf-8',
- charsetSentinel: false,
- delimiter: '&',
- encode: true,
- encodeDotInKeys: false,
- encoder: utils.encode,
- encodeValuesOnly: false,
- format: defaultFormat,
- formatter: formats.formatters[defaultFormat],
- // deprecated
- indices: false,
- serializeDate: function serializeDate(date) {
- return toISO.call(date);
- },
- skipNulls: false,
- strictNullHandling: false
-};
-
-var isNonNullishPrimitive = function isNonNullishPrimitive(v) {
- return typeof v === 'string'
- || typeof v === 'number'
- || typeof v === 'boolean'
- || typeof v === 'symbol'
- || typeof v === 'bigint';
-};
-
-var sentinel = {};
-
-var stringify = function stringify(
- object,
- prefix,
- generateArrayPrefix,
- commaRoundTrip,
- allowEmptyArrays,
- strictNullHandling,
- skipNulls,
- encodeDotInKeys,
- encoder,
- filter,
- sort,
- allowDots,
- serializeDate,
- format,
- formatter,
- encodeValuesOnly,
- charset,
- sideChannel
-) {
- var obj = object;
-
- var tmpSc = sideChannel;
- var step = 0;
- var findFlag = false;
- while ((tmpSc = tmpSc.get(sentinel)) !== void undefined && !findFlag) {
- // Where object last appeared in the ref tree
- var pos = tmpSc.get(object);
- step += 1;
- if (typeof pos !== 'undefined') {
- if (pos === step) {
- throw new RangeError('Cyclic object value');
- } else {
- findFlag = true; // Break while
- }
- }
- if (typeof tmpSc.get(sentinel) === 'undefined') {
- step = 0;
- }
- }
-
- if (typeof filter === 'function') {
- obj = filter(prefix, obj);
- } else if (obj instanceof Date) {
- obj = serializeDate(obj);
- } else if (generateArrayPrefix === 'comma' && isArray(obj)) {
- obj = utils.maybeMap(obj, function (value) {
- if (value instanceof Date) {
- return serializeDate(value);
- }
- return value;
- });
- }
-
- if (obj === null) {
- if (strictNullHandling) {
- return encoder && !encodeValuesOnly ? encoder(prefix, defaults.encoder, charset, 'key', format) : prefix;
- }
-
- obj = '';
- }
-
- if (isNonNullishPrimitive(obj) || utils.isBuffer(obj)) {
- if (encoder) {
- var keyValue = encodeValuesOnly ? prefix : encoder(prefix, defaults.encoder, charset, 'key', format);
- return [formatter(keyValue) + '=' + formatter(encoder(obj, defaults.encoder, charset, 'value', format))];
- }
- return [formatter(prefix) + '=' + formatter(String(obj))];
- }
-
- var values = [];
-
- if (typeof obj === 'undefined') {
- return values;
- }
-
- var objKeys;
- if (generateArrayPrefix === 'comma' && isArray(obj)) {
- // we need to join elements in
- if (encodeValuesOnly && encoder) {
- obj = utils.maybeMap(obj, encoder);
- }
- objKeys = [{ value: obj.length > 0 ? obj.join(',') || null : void undefined }];
- } else if (isArray(filter)) {
- objKeys = filter;
- } else {
- var keys = Object.keys(obj);
- objKeys = sort ? keys.sort(sort) : keys;
- }
-
- var encodedPrefix = encodeDotInKeys ? prefix.replace(/\./g, '%2E') : prefix;
-
- var adjustedPrefix = commaRoundTrip && isArray(obj) && obj.length === 1 ? encodedPrefix + '[]' : encodedPrefix;
-
- if (allowEmptyArrays && isArray(obj) && obj.length === 0) {
- return adjustedPrefix + '[]';
- }
-
- for (var j = 0; j < objKeys.length; ++j) {
- var key = objKeys[j];
- var value = typeof key === 'object' && typeof key.value !== 'undefined' ? key.value : obj[key];
-
- if (skipNulls && value === null) {
- continue;
- }
-
- var encodedKey = allowDots && encodeDotInKeys ? key.replace(/\./g, '%2E') : key;
- var keyPrefix = isArray(obj)
- ? typeof generateArrayPrefix === 'function' ? generateArrayPrefix(adjustedPrefix, encodedKey) : adjustedPrefix
- : adjustedPrefix + (allowDots ? '.' + encodedKey : '[' + encodedKey + ']');
-
- sideChannel.set(object, step);
- var valueSideChannel = getSideChannel();
- valueSideChannel.set(sentinel, sideChannel);
- pushToArray(values, stringify(
- value,
- keyPrefix,
- generateArrayPrefix,
- commaRoundTrip,
- allowEmptyArrays,
- strictNullHandling,
- skipNulls,
- encodeDotInKeys,
- generateArrayPrefix === 'comma' && encodeValuesOnly && isArray(obj) ? null : encoder,
- filter,
- sort,
- allowDots,
- serializeDate,
- format,
- formatter,
- encodeValuesOnly,
- charset,
- valueSideChannel
- ));
- }
-
- return values;
-};
-
-var normalizeStringifyOptions = function normalizeStringifyOptions(opts) {
- if (!opts) {
- return defaults;
- }
-
- if (typeof opts.allowEmptyArrays !== 'undefined' && typeof opts.allowEmptyArrays !== 'boolean') {
- throw new TypeError('`allowEmptyArrays` option can only be `true` or `false`, when provided');
- }
-
- if (typeof opts.encodeDotInKeys !== 'undefined' && typeof opts.encodeDotInKeys !== 'boolean') {
- throw new TypeError('`encodeDotInKeys` option can only be `true` or `false`, when provided');
- }
-
- if (opts.encoder !== null && typeof opts.encoder !== 'undefined' && typeof opts.encoder !== 'function') {
- throw new TypeError('Encoder has to be a function.');
- }
-
- var charset = opts.charset || defaults.charset;
- if (typeof opts.charset !== 'undefined' && opts.charset !== 'utf-8' && opts.charset !== 'iso-8859-1') {
- throw new TypeError('The charset option must be either utf-8, iso-8859-1, or undefined');
- }
-
- var format = formats['default'];
- if (typeof opts.format !== 'undefined') {
- if (!has.call(formats.formatters, opts.format)) {
- throw new TypeError('Unknown format option provided.');
- }
- format = opts.format;
- }
- var formatter = formats.formatters[format];
-
- var filter = defaults.filter;
- if (typeof opts.filter === 'function' || isArray(opts.filter)) {
- filter = opts.filter;
- }
-
- var arrayFormat;
- if (opts.arrayFormat in arrayPrefixGenerators) {
- arrayFormat = opts.arrayFormat;
- } else if ('indices' in opts) {
- arrayFormat = opts.indices ? 'indices' : 'repeat';
- } else {
- arrayFormat = defaults.arrayFormat;
- }
-
- if ('commaRoundTrip' in opts && typeof opts.commaRoundTrip !== 'boolean') {
- throw new TypeError('`commaRoundTrip` must be a boolean, or absent');
- }
-
- var allowDots = typeof opts.allowDots === 'undefined' ? opts.encodeDotInKeys === true ? true : defaults.allowDots : !!opts.allowDots;
-
- return {
- addQueryPrefix: typeof opts.addQueryPrefix === 'boolean' ? opts.addQueryPrefix : defaults.addQueryPrefix,
- allowDots: allowDots,
- allowEmptyArrays: typeof opts.allowEmptyArrays === 'boolean' ? !!opts.allowEmptyArrays : defaults.allowEmptyArrays,
- arrayFormat: arrayFormat,
- charset: charset,
- charsetSentinel: typeof opts.charsetSentinel === 'boolean' ? opts.charsetSentinel : defaults.charsetSentinel,
- commaRoundTrip: opts.commaRoundTrip,
- delimiter: typeof opts.delimiter === 'undefined' ? defaults.delimiter : opts.delimiter,
- encode: typeof opts.encode === 'boolean' ? opts.encode : defaults.encode,
- encodeDotInKeys: typeof opts.encodeDotInKeys === 'boolean' ? opts.encodeDotInKeys : defaults.encodeDotInKeys,
- encoder: typeof opts.encoder === 'function' ? opts.encoder : defaults.encoder,
- encodeValuesOnly: typeof opts.encodeValuesOnly === 'boolean' ? opts.encodeValuesOnly : defaults.encodeValuesOnly,
- filter: filter,
- format: format,
- formatter: formatter,
- serializeDate: typeof opts.serializeDate === 'function' ? opts.serializeDate : defaults.serializeDate,
- skipNulls: typeof opts.skipNulls === 'boolean' ? opts.skipNulls : defaults.skipNulls,
- sort: typeof opts.sort === 'function' ? opts.sort : null,
- strictNullHandling: typeof opts.strictNullHandling === 'boolean' ? opts.strictNullHandling : defaults.strictNullHandling
- };
-};
-
-module.exports = function (object, opts) {
- var obj = object;
- var options = normalizeStringifyOptions(opts);
-
- var objKeys;
- var filter;
-
- if (typeof options.filter === 'function') {
- filter = options.filter;
- obj = filter('', obj);
- } else if (isArray(options.filter)) {
- filter = options.filter;
- objKeys = filter;
- }
-
- var keys = [];
-
- if (typeof obj !== 'object' || obj === null) {
- return '';
- }
-
- var generateArrayPrefix = arrayPrefixGenerators[options.arrayFormat];
- var commaRoundTrip = generateArrayPrefix === 'comma' && options.commaRoundTrip;
-
- if (!objKeys) {
- objKeys = Object.keys(obj);
- }
-
- if (options.sort) {
- objKeys.sort(options.sort);
- }
-
- var sideChannel = getSideChannel();
- for (var i = 0; i < objKeys.length; ++i) {
- var key = objKeys[i];
-
- if (options.skipNulls && obj[key] === null) {
- continue;
- }
- pushToArray(keys, stringify(
- obj[key],
- key,
- generateArrayPrefix,
- commaRoundTrip,
- options.allowEmptyArrays,
- options.strictNullHandling,
- options.skipNulls,
- options.encodeDotInKeys,
- options.encode ? options.encoder : null,
- options.filter,
- options.sort,
- options.allowDots,
- options.serializeDate,
- options.format,
- options.formatter,
- options.encodeValuesOnly,
- options.charset,
- sideChannel
- ));
- }
-
- var joined = keys.join(options.delimiter);
- var prefix = options.addQueryPrefix === true ? '?' : '';
-
- if (options.charsetSentinel) {
- if (options.charset === 'iso-8859-1') {
- // encodeURIComponent('✓'), the "numeric entity" representation of a checkmark
- prefix += 'utf8=%26%2310003%3B&';
- } else {
- // encodeURIComponent('✓')
- prefix += 'utf8=%E2%9C%93&';
- }
- }
-
- return joined.length > 0 ? prefix + joined : '';
-};
-
-},{"./formats":75,"./utils":79,"side-channel":95}],79:[function(_dereq_,module,exports){
-'use strict';
-
-var formats = _dereq_('./formats');
-
-var has = Object.prototype.hasOwnProperty;
-var isArray = Array.isArray;
-
-var hexTable = (function () {
- var array = [];
- for (var i = 0; i < 256; ++i) {
- array.push('%' + ((i < 16 ? '0' : '') + i.toString(16)).toUpperCase());
- }
-
- return array;
-}());
-
-var compactQueue = function compactQueue(queue) {
- while (queue.length > 1) {
- var item = queue.pop();
- var obj = item.obj[item.prop];
-
- if (isArray(obj)) {
- var compacted = [];
-
- for (var j = 0; j < obj.length; ++j) {
- if (typeof obj[j] !== 'undefined') {
- compacted.push(obj[j]);
- }
- }
-
- item.obj[item.prop] = compacted;
- }
- }
-};
-
-var arrayToObject = function arrayToObject(source, options) {
- var obj = options && options.plainObjects ? Object.create(null) : {};
- for (var i = 0; i < source.length; ++i) {
- if (typeof source[i] !== 'undefined') {
- obj[i] = source[i];
- }
- }
-
- return obj;
-};
-
-var merge = function merge(target, source, options) {
- /* eslint no-param-reassign: 0 */
- if (!source) {
- return target;
- }
-
- if (typeof source !== 'object') {
- if (isArray(target)) {
- target.push(source);
- } else if (target && typeof target === 'object') {
- if ((options && (options.plainObjects || options.allowPrototypes)) || !has.call(Object.prototype, source)) {
- target[source] = true;
- }
- } else {
- return [target, source];
- }
-
- return target;
- }
-
- if (!target || typeof target !== 'object') {
- return [target].concat(source);
- }
-
- var mergeTarget = target;
- if (isArray(target) && !isArray(source)) {
- mergeTarget = arrayToObject(target, options);
- }
-
- if (isArray(target) && isArray(source)) {
- source.forEach(function (item, i) {
- if (has.call(target, i)) {
- var targetItem = target[i];
- if (targetItem && typeof targetItem === 'object' && item && typeof item === 'object') {
- target[i] = merge(targetItem, item, options);
- } else {
- target.push(item);
- }
- } else {
- target[i] = item;
- }
- });
- return target;
- }
-
- return Object.keys(source).reduce(function (acc, key) {
- var value = source[key];
-
- if (has.call(acc, key)) {
- acc[key] = merge(acc[key], value, options);
- } else {
- acc[key] = value;
- }
- return acc;
- }, mergeTarget);
-};
-
-var assign = function assignSingleSource(target, source) {
- return Object.keys(source).reduce(function (acc, key) {
- acc[key] = source[key];
- return acc;
- }, target);
-};
-
-var decode = function (str, decoder, charset) {
- var strWithoutPlus = str.replace(/\+/g, ' ');
- if (charset === 'iso-8859-1') {
- // unescape never throws, no try...catch needed:
- return strWithoutPlus.replace(/%[0-9a-f]{2}/gi, unescape);
- }
- // utf-8
- try {
- return decodeURIComponent(strWithoutPlus);
- } catch (e) {
- return strWithoutPlus;
- }
-};
-
-var limit = 1024;
-
-/* eslint operator-linebreak: [2, "before"] */
-
-var encode = function encode(str, defaultEncoder, charset, kind, format) {
- // This code was originally written by Brian White (mscdex) for the io.js core querystring library.
- // It has been adapted here for stricter adherence to RFC 3986
- if (str.length === 0) {
- return str;
- }
-
- var string = str;
- if (typeof str === 'symbol') {
- string = Symbol.prototype.toString.call(str);
- } else if (typeof str !== 'string') {
- string = String(str);
- }
-
- if (charset === 'iso-8859-1') {
- return escape(string).replace(/%u[0-9a-f]{4}/gi, function ($0) {
- return '%26%23' + parseInt($0.slice(2), 16) + '%3B';
- });
- }
-
- var out = '';
- for (var j = 0; j < string.length; j += limit) {
- var segment = string.length >= limit ? string.slice(j, j + limit) : string;
- var arr = [];
-
- for (var i = 0; i < segment.length; ++i) {
- var c = segment.charCodeAt(i);
- if (
- c === 0x2D // -
- || c === 0x2E // .
- || c === 0x5F // _
- || c === 0x7E // ~
- || (c >= 0x30 && c <= 0x39) // 0-9
- || (c >= 0x41 && c <= 0x5A) // a-z
- || (c >= 0x61 && c <= 0x7A) // A-Z
- || (format === formats.RFC1738 && (c === 0x28 || c === 0x29)) // ( )
- ) {
- arr[arr.length] = segment.charAt(i);
- continue;
- }
-
- if (c < 0x80) {
- arr[arr.length] = hexTable[c];
- continue;
- }
-
- if (c < 0x800) {
- arr[arr.length] = hexTable[0xC0 | (c >> 6)]
- + hexTable[0x80 | (c & 0x3F)];
- continue;
- }
-
- if (c < 0xD800 || c >= 0xE000) {
- arr[arr.length] = hexTable[0xE0 | (c >> 12)]
- + hexTable[0x80 | ((c >> 6) & 0x3F)]
- + hexTable[0x80 | (c & 0x3F)];
- continue;
- }
-
- i += 1;
- c = 0x10000 + (((c & 0x3FF) << 10) | (segment.charCodeAt(i) & 0x3FF));
-
- arr[arr.length] = hexTable[0xF0 | (c >> 18)]
- + hexTable[0x80 | ((c >> 12) & 0x3F)]
- + hexTable[0x80 | ((c >> 6) & 0x3F)]
- + hexTable[0x80 | (c & 0x3F)];
- }
-
- out += arr.join('');
- }
-
- return out;
-};
-
-var compact = function compact(value) {
- var queue = [{ obj: { o: value }, prop: 'o' }];
- var refs = [];
-
- for (var i = 0; i < queue.length; ++i) {
- var item = queue[i];
- var obj = item.obj[item.prop];
-
- var keys = Object.keys(obj);
- for (var j = 0; j < keys.length; ++j) {
- var key = keys[j];
- var val = obj[key];
- if (typeof val === 'object' && val !== null && refs.indexOf(val) === -1) {
- queue.push({ obj: obj, prop: key });
- refs.push(val);
- }
- }
- }
-
- compactQueue(queue);
-
- return value;
-};
-
-var isRegExp = function isRegExp(obj) {
- return Object.prototype.toString.call(obj) === '[object RegExp]';
-};
-
-var isBuffer = function isBuffer(obj) {
- if (!obj || typeof obj !== 'object') {
- return false;
- }
-
- return !!(obj.constructor && obj.constructor.isBuffer && obj.constructor.isBuffer(obj));
-};
-
-var combine = function combine(a, b) {
- return [].concat(a, b);
-};
-
-var maybeMap = function maybeMap(val, fn) {
- if (isArray(val)) {
- var mapped = [];
- for (var i = 0; i < val.length; i += 1) {
- mapped.push(fn(val[i]));
- }
- return mapped;
- }
- return fn(val);
-};
-
-module.exports = {
- arrayToObject: arrayToObject,
- assign: assign,
- combine: combine,
- compact: compact,
- decode: decode,
- encode: encode,
- isBuffer: isBuffer,
- isRegExp: isRegExp,
- maybeMap: maybeMap,
- merge: merge
-};
-
-},{"./formats":75}],80:[function(_dereq_,module,exports){
-(function (global){(function (){
-var now = _dereq_('performance-now')
- , root = typeof window === 'undefined' ? global : window
- , vendors = ['moz', 'webkit']
- , suffix = 'AnimationFrame'
- , raf = root['request' + suffix]
- , caf = root['cancel' + suffix] || root['cancelRequest' + suffix]
-
-for(var i = 0; !raf && i < vendors.length; i++) {
- raf = root[vendors[i] + 'Request' + suffix]
- caf = root[vendors[i] + 'Cancel' + suffix]
- || root[vendors[i] + 'CancelRequest' + suffix]
-}
-
-// Some versions of FF have rAF but not cAF
-if(!raf || !caf) {
- var last = 0
- , id = 0
- , queue = []
- , frameDuration = 1000 / 60
-
- raf = function(callback) {
- if(queue.length === 0) {
- var _now = now()
- , next = Math.max(0, frameDuration - (_now - last))
- last = next + _now
- setTimeout(function() {
- var cp = queue.slice(0)
- // Clear queue here to prevent
- // callbacks from appending listeners
- // to the current frame's queue
- queue.length = 0
- for(var i = 0; i < cp.length; i++) {
- if(!cp[i].cancelled) {
- try{
- cp[i].callback(last)
- } catch(e) {
- setTimeout(function() { throw e }, 0)
- }
- }
- }
- }, Math.round(next))
- }
- queue.push({
- handle: ++id,
- callback: callback,
- cancelled: false
- })
- return id
- }
-
- caf = function(handle) {
- for(var i = 0; i < queue.length; i++) {
- if(queue[i].handle === handle) {
- queue[i].cancelled = true
- }
- }
- }
-}
-
-module.exports = function(fn) {
- // Wrap in a new function to prevent
- // `cancel` potentially being assigned
- // to the native rAF function
- return raf.call(root, fn)
-}
-module.exports.cancel = function() {
- caf.apply(root, arguments)
-}
-module.exports.polyfill = function(object) {
- if (!object) {
- object = root;
- }
- object.requestAnimationFrame = raf
- object.cancelAnimationFrame = caf
-}
-
-}).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
-},{"performance-now":72}],81:[function(_dereq_,module,exports){
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-// a duplex stream is just a stream that is both readable and writable.
-// Since JS doesn't have multiple prototypal inheritance, this class
-// prototypally inherits from Readable, and then parasitically from
-// Writable.
-
-'use strict';
-
-/**/
-
-var pna = _dereq_('process-nextick-args');
-/* */
-
-/**/
-var objectKeys = Object.keys || function (obj) {
- var keys = [];
- for (var key in obj) {
- keys.push(key);
- }return keys;
-};
-/* */
-
-module.exports = Duplex;
-
-/**/
-var util = Object.create(_dereq_('core-util-is'));
-util.inherits = _dereq_('inherits');
-/* */
-
-var Readable = _dereq_('./_stream_readable');
-var Writable = _dereq_('./_stream_writable');
-
-util.inherits(Duplex, Readable);
-
-{
- // avoid scope creep, the keys array can then be collected
- var keys = objectKeys(Writable.prototype);
- for (var v = 0; v < keys.length; v++) {
- var method = keys[v];
- if (!Duplex.prototype[method]) Duplex.prototype[method] = Writable.prototype[method];
- }
-}
-
-function Duplex(options) {
- if (!(this instanceof Duplex)) return new Duplex(options);
-
- Readable.call(this, options);
- Writable.call(this, options);
-
- if (options && options.readable === false) this.readable = false;
-
- if (options && options.writable === false) this.writable = false;
-
- this.allowHalfOpen = true;
- if (options && options.allowHalfOpen === false) this.allowHalfOpen = false;
-
- this.once('end', onend);
-}
-
-Object.defineProperty(Duplex.prototype, 'writableHighWaterMark', {
- // making it explicit this property is not enumerable
- // because otherwise some prototype manipulation in
- // userland will fail
- enumerable: false,
- get: function () {
- return this._writableState.highWaterMark;
- }
-});
-
-// the no-half-open enforcer
-function onend() {
- // if we allow half-open state, or if the writable side ended,
- // then we're ok.
- if (this.allowHalfOpen || this._writableState.ended) return;
-
- // no more data can be written.
- // But allow more writes to happen in this tick.
- pna.nextTick(onEndNT, this);
-}
-
-function onEndNT(self) {
- self.end();
-}
-
-Object.defineProperty(Duplex.prototype, 'destroyed', {
- get: function () {
- if (this._readableState === undefined || this._writableState === undefined) {
- return false;
- }
- return this._readableState.destroyed && this._writableState.destroyed;
- },
- set: function (value) {
- // we ignore the value if the stream
- // has not been initialized yet
- if (this._readableState === undefined || this._writableState === undefined) {
- return;
- }
-
- // backward compatibility, the user is explicitly
- // managing destroyed
- this._readableState.destroyed = value;
- this._writableState.destroyed = value;
- }
-});
-
-Duplex.prototype._destroy = function (err, cb) {
- this.push(null);
- this.end();
-
- pna.nextTick(cb, err);
-};
-},{"./_stream_readable":83,"./_stream_writable":85,"core-util-is":25,"inherits":65,"process-nextick-args":73}],82:[function(_dereq_,module,exports){
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-// a passthrough stream.
-// basically just the most minimal sort of Transform stream.
-// Every written chunk gets output as-is.
-
-'use strict';
-
-module.exports = PassThrough;
-
-var Transform = _dereq_('./_stream_transform');
-
-/**/
-var util = Object.create(_dereq_('core-util-is'));
-util.inherits = _dereq_('inherits');
-/* */
-
-util.inherits(PassThrough, Transform);
-
-function PassThrough(options) {
- if (!(this instanceof PassThrough)) return new PassThrough(options);
-
- Transform.call(this, options);
-}
-
-PassThrough.prototype._transform = function (chunk, encoding, cb) {
- cb(null, chunk);
-};
-},{"./_stream_transform":84,"core-util-is":25,"inherits":65}],83:[function(_dereq_,module,exports){
-(function (process,global){(function (){
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-'use strict';
-
-/**/
-
-var pna = _dereq_('process-nextick-args');
-/* */
-
-module.exports = Readable;
-
-/**/
-var isArray = _dereq_('isarray');
-/* */
-
-/**/
-var Duplex;
-/* */
-
-Readable.ReadableState = ReadableState;
-
-/**/
-var EE = _dereq_('events').EventEmitter;
-
-var EElistenerCount = function (emitter, type) {
- return emitter.listeners(type).length;
-};
-/* */
-
-/**/
-var Stream = _dereq_('./internal/streams/stream');
-/* */
-
-/**/
-
-var Buffer = _dereq_('safe-buffer').Buffer;
-var OurUint8Array = (typeof global !== 'undefined' ? global : typeof window !== 'undefined' ? window : typeof self !== 'undefined' ? self : {}).Uint8Array || function () {};
-function _uint8ArrayToBuffer(chunk) {
- return Buffer.from(chunk);
-}
-function _isUint8Array(obj) {
- return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;
-}
-
-/* */
-
-/**/
-var util = Object.create(_dereq_('core-util-is'));
-util.inherits = _dereq_('inherits');
-/* */
-
-/**/
-var debugUtil = _dereq_('util');
-var debug = void 0;
-if (debugUtil && debugUtil.debuglog) {
- debug = debugUtil.debuglog('stream');
-} else {
- debug = function () {};
-}
-/* */
-
-var BufferList = _dereq_('./internal/streams/BufferList');
-var destroyImpl = _dereq_('./internal/streams/destroy');
-var StringDecoder;
-
-util.inherits(Readable, Stream);
-
-var kProxyEvents = ['error', 'close', 'destroy', 'pause', 'resume'];
-
-function prependListener(emitter, event, fn) {
- // Sadly this is not cacheable as some libraries bundle their own
- // event emitter implementation with them.
- if (typeof emitter.prependListener === 'function') return emitter.prependListener(event, fn);
-
- // This is a hack to make sure that our error handler is attached before any
- // userland ones. NEVER DO THIS. This is here only because this code needs
- // to continue to work with older versions of Node.js that do not include
- // the prependListener() method. The goal is to eventually remove this hack.
- if (!emitter._events || !emitter._events[event]) emitter.on(event, fn);else if (isArray(emitter._events[event])) emitter._events[event].unshift(fn);else emitter._events[event] = [fn, emitter._events[event]];
-}
-
-function ReadableState(options, stream) {
- Duplex = Duplex || _dereq_('./_stream_duplex');
-
- options = options || {};
-
- // Duplex streams are both readable and writable, but share
- // the same options object.
- // However, some cases require setting options to different
- // values for the readable and the writable sides of the duplex stream.
- // These options can be provided separately as readableXXX and writableXXX.
- var isDuplex = stream instanceof Duplex;
-
- // object stream flag. Used to make read(n) ignore n and to
- // make all the buffer merging and length checks go away
- this.objectMode = !!options.objectMode;
-
- if (isDuplex) this.objectMode = this.objectMode || !!options.readableObjectMode;
-
- // the point at which it stops calling _read() to fill the buffer
- // Note: 0 is a valid value, means "don't call _read preemptively ever"
- var hwm = options.highWaterMark;
- var readableHwm = options.readableHighWaterMark;
- var defaultHwm = this.objectMode ? 16 : 16 * 1024;
-
- if (hwm || hwm === 0) this.highWaterMark = hwm;else if (isDuplex && (readableHwm || readableHwm === 0)) this.highWaterMark = readableHwm;else this.highWaterMark = defaultHwm;
-
- // cast to ints.
- this.highWaterMark = Math.floor(this.highWaterMark);
-
- // A linked list is used to store data chunks instead of an array because the
- // linked list can remove elements from the beginning faster than
- // array.shift()
- this.buffer = new BufferList();
- this.length = 0;
- this.pipes = null;
- this.pipesCount = 0;
- this.flowing = null;
- this.ended = false;
- this.endEmitted = false;
- this.reading = false;
-
- // a flag to be able to tell if the event 'readable'/'data' is emitted
- // immediately, or on a later tick. We set this to true at first, because
- // any actions that shouldn't happen until "later" should generally also
- // not happen before the first read call.
- this.sync = true;
-
- // whenever we return null, then we set a flag to say
- // that we're awaiting a 'readable' event emission.
- this.needReadable = false;
- this.emittedReadable = false;
- this.readableListening = false;
- this.resumeScheduled = false;
-
- // has it been destroyed
- this.destroyed = false;
-
- // Crypto is kind of old and crusty. Historically, its default string
- // encoding is 'binary' so we have to make this configurable.
- // Everything else in the universe uses 'utf8', though.
- this.defaultEncoding = options.defaultEncoding || 'utf8';
-
- // the number of writers that are awaiting a drain event in .pipe()s
- this.awaitDrain = 0;
-
- // if true, a maybeReadMore has been scheduled
- this.readingMore = false;
-
- this.decoder = null;
- this.encoding = null;
- if (options.encoding) {
- if (!StringDecoder) StringDecoder = _dereq_('string_decoder/').StringDecoder;
- this.decoder = new StringDecoder(options.encoding);
- this.encoding = options.encoding;
- }
-}
-
-function Readable(options) {
- Duplex = Duplex || _dereq_('./_stream_duplex');
-
- if (!(this instanceof Readable)) return new Readable(options);
-
- this._readableState = new ReadableState(options, this);
-
- // legacy
- this.readable = true;
-
- if (options) {
- if (typeof options.read === 'function') this._read = options.read;
-
- if (typeof options.destroy === 'function') this._destroy = options.destroy;
- }
-
- Stream.call(this);
-}
-
-Object.defineProperty(Readable.prototype, 'destroyed', {
- get: function () {
- if (this._readableState === undefined) {
- return false;
- }
- return this._readableState.destroyed;
- },
- set: function (value) {
- // we ignore the value if the stream
- // has not been initialized yet
- if (!this._readableState) {
- return;
- }
-
- // backward compatibility, the user is explicitly
- // managing destroyed
- this._readableState.destroyed = value;
- }
-});
-
-Readable.prototype.destroy = destroyImpl.destroy;
-Readable.prototype._undestroy = destroyImpl.undestroy;
-Readable.prototype._destroy = function (err, cb) {
- this.push(null);
- cb(err);
-};
-
-// Manually shove something into the read() buffer.
-// This returns true if the highWaterMark has not been hit yet,
-// similar to how Writable.write() returns true if you should
-// write() some more.
-Readable.prototype.push = function (chunk, encoding) {
- var state = this._readableState;
- var skipChunkCheck;
-
- if (!state.objectMode) {
- if (typeof chunk === 'string') {
- encoding = encoding || state.defaultEncoding;
- if (encoding !== state.encoding) {
- chunk = Buffer.from(chunk, encoding);
- encoding = '';
- }
- skipChunkCheck = true;
- }
- } else {
- skipChunkCheck = true;
- }
-
- return readableAddChunk(this, chunk, encoding, false, skipChunkCheck);
-};
-
-// Unshift should *always* be something directly out of read()
-Readable.prototype.unshift = function (chunk) {
- return readableAddChunk(this, chunk, null, true, false);
-};
-
-function readableAddChunk(stream, chunk, encoding, addToFront, skipChunkCheck) {
- var state = stream._readableState;
- if (chunk === null) {
- state.reading = false;
- onEofChunk(stream, state);
- } else {
- var er;
- if (!skipChunkCheck) er = chunkInvalid(state, chunk);
- if (er) {
- stream.emit('error', er);
- } else if (state.objectMode || chunk && chunk.length > 0) {
- if (typeof chunk !== 'string' && !state.objectMode && Object.getPrototypeOf(chunk) !== Buffer.prototype) {
- chunk = _uint8ArrayToBuffer(chunk);
- }
-
- if (addToFront) {
- if (state.endEmitted) stream.emit('error', new Error('stream.unshift() after end event'));else addChunk(stream, state, chunk, true);
- } else if (state.ended) {
- stream.emit('error', new Error('stream.push() after EOF'));
- } else {
- state.reading = false;
- if (state.decoder && !encoding) {
- chunk = state.decoder.write(chunk);
- if (state.objectMode || chunk.length !== 0) addChunk(stream, state, chunk, false);else maybeReadMore(stream, state);
- } else {
- addChunk(stream, state, chunk, false);
- }
- }
- } else if (!addToFront) {
- state.reading = false;
- }
- }
-
- return needMoreData(state);
-}
-
-function addChunk(stream, state, chunk, addToFront) {
- if (state.flowing && state.length === 0 && !state.sync) {
- stream.emit('data', chunk);
- stream.read(0);
- } else {
- // update the buffer info.
- state.length += state.objectMode ? 1 : chunk.length;
- if (addToFront) state.buffer.unshift(chunk);else state.buffer.push(chunk);
-
- if (state.needReadable) emitReadable(stream);
- }
- maybeReadMore(stream, state);
-}
-
-function chunkInvalid(state, chunk) {
- var er;
- if (!_isUint8Array(chunk) && typeof chunk !== 'string' && chunk !== undefined && !state.objectMode) {
- er = new TypeError('Invalid non-string/buffer chunk');
- }
- return er;
-}
-
-// if it's past the high water mark, we can push in some more.
-// Also, if we have no data yet, we can stand some
-// more bytes. This is to work around cases where hwm=0,
-// such as the repl. Also, if the push() triggered a
-// readable event, and the user called read(largeNumber) such that
-// needReadable was set, then we ought to push more, so that another
-// 'readable' event will be triggered.
-function needMoreData(state) {
- return !state.ended && (state.needReadable || state.length < state.highWaterMark || state.length === 0);
-}
-
-Readable.prototype.isPaused = function () {
- return this._readableState.flowing === false;
-};
-
-// backwards compatibility.
-Readable.prototype.setEncoding = function (enc) {
- if (!StringDecoder) StringDecoder = _dereq_('string_decoder/').StringDecoder;
- this._readableState.decoder = new StringDecoder(enc);
- this._readableState.encoding = enc;
- return this;
-};
-
-// Don't raise the hwm > 8MB
-var MAX_HWM = 0x800000;
-function computeNewHighWaterMark(n) {
- if (n >= MAX_HWM) {
- n = MAX_HWM;
- } else {
- // Get the next highest power of 2 to prevent increasing hwm excessively in
- // tiny amounts
- n--;
- n |= n >>> 1;
- n |= n >>> 2;
- n |= n >>> 4;
- n |= n >>> 8;
- n |= n >>> 16;
- n++;
- }
- return n;
-}
-
-// This function is designed to be inlinable, so please take care when making
-// changes to the function body.
-function howMuchToRead(n, state) {
- if (n <= 0 || state.length === 0 && state.ended) return 0;
- if (state.objectMode) return 1;
- if (n !== n) {
- // Only flow one buffer at a time
- if (state.flowing && state.length) return state.buffer.head.data.length;else return state.length;
- }
- // If we're asking for more than the current hwm, then raise the hwm.
- if (n > state.highWaterMark) state.highWaterMark = computeNewHighWaterMark(n);
- if (n <= state.length) return n;
- // Don't have enough
- if (!state.ended) {
- state.needReadable = true;
- return 0;
- }
- return state.length;
-}
-
-// you can override either this method, or the async _read(n) below.
-Readable.prototype.read = function (n) {
- debug('read', n);
- n = parseInt(n, 10);
- var state = this._readableState;
- var nOrig = n;
-
- if (n !== 0) state.emittedReadable = false;
-
- // if we're doing read(0) to trigger a readable event, but we
- // already have a bunch of data in the buffer, then just trigger
- // the 'readable' event and move on.
- if (n === 0 && state.needReadable && (state.length >= state.highWaterMark || state.ended)) {
- debug('read: emitReadable', state.length, state.ended);
- if (state.length === 0 && state.ended) endReadable(this);else emitReadable(this);
- return null;
- }
-
- n = howMuchToRead(n, state);
-
- // if we've ended, and we're now clear, then finish it up.
- if (n === 0 && state.ended) {
- if (state.length === 0) endReadable(this);
- return null;
- }
-
- // All the actual chunk generation logic needs to be
- // *below* the call to _read. The reason is that in certain
- // synthetic stream cases, such as passthrough streams, _read
- // may be a completely synchronous operation which may change
- // the state of the read buffer, providing enough data when
- // before there was *not* enough.
- //
- // So, the steps are:
- // 1. Figure out what the state of things will be after we do
- // a read from the buffer.
- //
- // 2. If that resulting state will trigger a _read, then call _read.
- // Note that this may be asynchronous, or synchronous. Yes, it is
- // deeply ugly to write APIs this way, but that still doesn't mean
- // that the Readable class should behave improperly, as streams are
- // designed to be sync/async agnostic.
- // Take note if the _read call is sync or async (ie, if the read call
- // has returned yet), so that we know whether or not it's safe to emit
- // 'readable' etc.
- //
- // 3. Actually pull the requested chunks out of the buffer and return.
-
- // if we need a readable event, then we need to do some reading.
- var doRead = state.needReadable;
- debug('need readable', doRead);
-
- // if we currently have less than the highWaterMark, then also read some
- if (state.length === 0 || state.length - n < state.highWaterMark) {
- doRead = true;
- debug('length less than watermark', doRead);
- }
-
- // however, if we've ended, then there's no point, and if we're already
- // reading, then it's unnecessary.
- if (state.ended || state.reading) {
- doRead = false;
- debug('reading or ended', doRead);
- } else if (doRead) {
- debug('do read');
- state.reading = true;
- state.sync = true;
- // if the length is currently zero, then we *need* a readable event.
- if (state.length === 0) state.needReadable = true;
- // call internal read method
- this._read(state.highWaterMark);
- state.sync = false;
- // If _read pushed data synchronously, then `reading` will be false,
- // and we need to re-evaluate how much data we can return to the user.
- if (!state.reading) n = howMuchToRead(nOrig, state);
- }
-
- var ret;
- if (n > 0) ret = fromList(n, state);else ret = null;
-
- if (ret === null) {
- state.needReadable = true;
- n = 0;
- } else {
- state.length -= n;
- }
-
- if (state.length === 0) {
- // If we have nothing in the buffer, then we want to know
- // as soon as we *do* get something into the buffer.
- if (!state.ended) state.needReadable = true;
-
- // If we tried to read() past the EOF, then emit end on the next tick.
- if (nOrig !== n && state.ended) endReadable(this);
- }
-
- if (ret !== null) this.emit('data', ret);
-
- return ret;
-};
-
-function onEofChunk(stream, state) {
- if (state.ended) return;
- if (state.decoder) {
- var chunk = state.decoder.end();
- if (chunk && chunk.length) {
- state.buffer.push(chunk);
- state.length += state.objectMode ? 1 : chunk.length;
- }
- }
- state.ended = true;
-
- // emit 'readable' now to make sure it gets picked up.
- emitReadable(stream);
-}
-
-// Don't emit readable right away in sync mode, because this can trigger
-// another read() call => stack overflow. This way, it might trigger
-// a nextTick recursion warning, but that's not so bad.
-function emitReadable(stream) {
- var state = stream._readableState;
- state.needReadable = false;
- if (!state.emittedReadable) {
- debug('emitReadable', state.flowing);
- state.emittedReadable = true;
- if (state.sync) pna.nextTick(emitReadable_, stream);else emitReadable_(stream);
- }
-}
-
-function emitReadable_(stream) {
- debug('emit readable');
- stream.emit('readable');
- flow(stream);
-}
-
-// at this point, the user has presumably seen the 'readable' event,
-// and called read() to consume some data. that may have triggered
-// in turn another _read(n) call, in which case reading = true if
-// it's in progress.
-// However, if we're not ended, or reading, and the length < hwm,
-// then go ahead and try to read some more preemptively.
-function maybeReadMore(stream, state) {
- if (!state.readingMore) {
- state.readingMore = true;
- pna.nextTick(maybeReadMore_, stream, state);
- }
-}
-
-function maybeReadMore_(stream, state) {
- var len = state.length;
- while (!state.reading && !state.flowing && !state.ended && state.length < state.highWaterMark) {
- debug('maybeReadMore read 0');
- stream.read(0);
- if (len === state.length)
- // didn't get any data, stop spinning.
- break;else len = state.length;
- }
- state.readingMore = false;
-}
-
-// abstract method. to be overridden in specific implementation classes.
-// call cb(er, data) where data is <= n in length.
-// for virtual (non-string, non-buffer) streams, "length" is somewhat
-// arbitrary, and perhaps not very meaningful.
-Readable.prototype._read = function (n) {
- this.emit('error', new Error('_read() is not implemented'));
-};
-
-Readable.prototype.pipe = function (dest, pipeOpts) {
- var src = this;
- var state = this._readableState;
-
- switch (state.pipesCount) {
- case 0:
- state.pipes = dest;
- break;
- case 1:
- state.pipes = [state.pipes, dest];
- break;
- default:
- state.pipes.push(dest);
- break;
- }
- state.pipesCount += 1;
- debug('pipe count=%d opts=%j', state.pipesCount, pipeOpts);
-
- var doEnd = (!pipeOpts || pipeOpts.end !== false) && dest !== process.stdout && dest !== process.stderr;
-
- var endFn = doEnd ? onend : unpipe;
- if (state.endEmitted) pna.nextTick(endFn);else src.once('end', endFn);
-
- dest.on('unpipe', onunpipe);
- function onunpipe(readable, unpipeInfo) {
- debug('onunpipe');
- if (readable === src) {
- if (unpipeInfo && unpipeInfo.hasUnpiped === false) {
- unpipeInfo.hasUnpiped = true;
- cleanup();
- }
- }
- }
-
- function onend() {
- debug('onend');
- dest.end();
- }
-
- // when the dest drains, it reduces the awaitDrain counter
- // on the source. This would be more elegant with a .once()
- // handler in flow(), but adding and removing repeatedly is
- // too slow.
- var ondrain = pipeOnDrain(src);
- dest.on('drain', ondrain);
-
- var cleanedUp = false;
- function cleanup() {
- debug('cleanup');
- // cleanup event handlers once the pipe is broken
- dest.removeListener('close', onclose);
- dest.removeListener('finish', onfinish);
- dest.removeListener('drain', ondrain);
- dest.removeListener('error', onerror);
- dest.removeListener('unpipe', onunpipe);
- src.removeListener('end', onend);
- src.removeListener('end', unpipe);
- src.removeListener('data', ondata);
-
- cleanedUp = true;
-
- // if the reader is waiting for a drain event from this
- // specific writer, then it would cause it to never start
- // flowing again.
- // So, if this is awaiting a drain, then we just call it now.
- // If we don't know, then assume that we are waiting for one.
- if (state.awaitDrain && (!dest._writableState || dest._writableState.needDrain)) ondrain();
- }
-
- // If the user pushes more data while we're writing to dest then we'll end up
- // in ondata again. However, we only want to increase awaitDrain once because
- // dest will only emit one 'drain' event for the multiple writes.
- // => Introduce a guard on increasing awaitDrain.
- var increasedAwaitDrain = false;
- src.on('data', ondata);
- function ondata(chunk) {
- debug('ondata');
- increasedAwaitDrain = false;
- var ret = dest.write(chunk);
- if (false === ret && !increasedAwaitDrain) {
- // If the user unpiped during `dest.write()`, it is possible
- // to get stuck in a permanently paused state if that write
- // also returned false.
- // => Check whether `dest` is still a piping destination.
- if ((state.pipesCount === 1 && state.pipes === dest || state.pipesCount > 1 && indexOf(state.pipes, dest) !== -1) && !cleanedUp) {
- debug('false write response, pause', state.awaitDrain);
- state.awaitDrain++;
- increasedAwaitDrain = true;
- }
- src.pause();
- }
- }
-
- // if the dest has an error, then stop piping into it.
- // however, don't suppress the throwing behavior for this.
- function onerror(er) {
- debug('onerror', er);
- unpipe();
- dest.removeListener('error', onerror);
- if (EElistenerCount(dest, 'error') === 0) dest.emit('error', er);
- }
-
- // Make sure our error handler is attached before userland ones.
- prependListener(dest, 'error', onerror);
-
- // Both close and finish should trigger unpipe, but only once.
- function onclose() {
- dest.removeListener('finish', onfinish);
- unpipe();
- }
- dest.once('close', onclose);
- function onfinish() {
- debug('onfinish');
- dest.removeListener('close', onclose);
- unpipe();
- }
- dest.once('finish', onfinish);
-
- function unpipe() {
- debug('unpipe');
- src.unpipe(dest);
- }
-
- // tell the dest that it's being piped to
- dest.emit('pipe', src);
-
- // start the flow if it hasn't been started already.
- if (!state.flowing) {
- debug('pipe resume');
- src.resume();
- }
-
- return dest;
-};
-
-function pipeOnDrain(src) {
- return function () {
- var state = src._readableState;
- debug('pipeOnDrain', state.awaitDrain);
- if (state.awaitDrain) state.awaitDrain--;
- if (state.awaitDrain === 0 && EElistenerCount(src, 'data')) {
- state.flowing = true;
- flow(src);
- }
- };
-}
-
-Readable.prototype.unpipe = function (dest) {
- var state = this._readableState;
- var unpipeInfo = { hasUnpiped: false };
-
- // if we're not piping anywhere, then do nothing.
- if (state.pipesCount === 0) return this;
-
- // just one destination. most common case.
- if (state.pipesCount === 1) {
- // passed in one, but it's not the right one.
- if (dest && dest !== state.pipes) return this;
-
- if (!dest) dest = state.pipes;
-
- // got a match.
- state.pipes = null;
- state.pipesCount = 0;
- state.flowing = false;
- if (dest) dest.emit('unpipe', this, unpipeInfo);
- return this;
- }
-
- // slow case. multiple pipe destinations.
-
- if (!dest) {
- // remove all.
- var dests = state.pipes;
- var len = state.pipesCount;
- state.pipes = null;
- state.pipesCount = 0;
- state.flowing = false;
-
- for (var i = 0; i < len; i++) {
- dests[i].emit('unpipe', this, { hasUnpiped: false });
- }return this;
- }
-
- // try to find the right one.
- var index = indexOf(state.pipes, dest);
- if (index === -1) return this;
-
- state.pipes.splice(index, 1);
- state.pipesCount -= 1;
- if (state.pipesCount === 1) state.pipes = state.pipes[0];
-
- dest.emit('unpipe', this, unpipeInfo);
-
- return this;
-};
-
-// set up data events if they are asked for
-// Ensure readable listeners eventually get something
-Readable.prototype.on = function (ev, fn) {
- var res = Stream.prototype.on.call(this, ev, fn);
-
- if (ev === 'data') {
- // Start flowing on next tick if stream isn't explicitly paused
- if (this._readableState.flowing !== false) this.resume();
- } else if (ev === 'readable') {
- var state = this._readableState;
- if (!state.endEmitted && !state.readableListening) {
- state.readableListening = state.needReadable = true;
- state.emittedReadable = false;
- if (!state.reading) {
- pna.nextTick(nReadingNextTick, this);
- } else if (state.length) {
- emitReadable(this);
- }
- }
- }
-
- return res;
-};
-Readable.prototype.addListener = Readable.prototype.on;
-
-function nReadingNextTick(self) {
- debug('readable nexttick read 0');
- self.read(0);
-}
-
-// pause() and resume() are remnants of the legacy readable stream API
-// If the user uses them, then switch into old mode.
-Readable.prototype.resume = function () {
- var state = this._readableState;
- if (!state.flowing) {
- debug('resume');
- state.flowing = true;
- resume(this, state);
- }
- return this;
-};
-
-function resume(stream, state) {
- if (!state.resumeScheduled) {
- state.resumeScheduled = true;
- pna.nextTick(resume_, stream, state);
- }
-}
-
-function resume_(stream, state) {
- if (!state.reading) {
- debug('resume read 0');
- stream.read(0);
- }
-
- state.resumeScheduled = false;
- state.awaitDrain = 0;
- stream.emit('resume');
- flow(stream);
- if (state.flowing && !state.reading) stream.read(0);
-}
-
-Readable.prototype.pause = function () {
- debug('call pause flowing=%j', this._readableState.flowing);
- if (false !== this._readableState.flowing) {
- debug('pause');
- this._readableState.flowing = false;
- this.emit('pause');
- }
- return this;
-};
-
-function flow(stream) {
- var state = stream._readableState;
- debug('flow', state.flowing);
- while (state.flowing && stream.read() !== null) {}
-}
-
-// wrap an old-style stream as the async data source.
-// This is *not* part of the readable stream interface.
-// It is an ugly unfortunate mess of history.
-Readable.prototype.wrap = function (stream) {
- var _this = this;
-
- var state = this._readableState;
- var paused = false;
-
- stream.on('end', function () {
- debug('wrapped end');
- if (state.decoder && !state.ended) {
- var chunk = state.decoder.end();
- if (chunk && chunk.length) _this.push(chunk);
- }
-
- _this.push(null);
- });
-
- stream.on('data', function (chunk) {
- debug('wrapped data');
- if (state.decoder) chunk = state.decoder.write(chunk);
-
- // don't skip over falsy values in objectMode
- if (state.objectMode && (chunk === null || chunk === undefined)) return;else if (!state.objectMode && (!chunk || !chunk.length)) return;
-
- var ret = _this.push(chunk);
- if (!ret) {
- paused = true;
- stream.pause();
- }
- });
-
- // proxy all the other methods.
- // important when wrapping filters and duplexes.
- for (var i in stream) {
- if (this[i] === undefined && typeof stream[i] === 'function') {
- this[i] = function (method) {
- return function () {
- return stream[method].apply(stream, arguments);
- };
- }(i);
- }
- }
-
- // proxy certain important events.
- for (var n = 0; n < kProxyEvents.length; n++) {
- stream.on(kProxyEvents[n], this.emit.bind(this, kProxyEvents[n]));
- }
-
- // when we try to consume some more bytes, simply unpause the
- // underlying stream.
- this._read = function (n) {
- debug('wrapped _read', n);
- if (paused) {
- paused = false;
- stream.resume();
- }
- };
-
- return this;
-};
-
-Object.defineProperty(Readable.prototype, 'readableHighWaterMark', {
- // making it explicit this property is not enumerable
- // because otherwise some prototype manipulation in
- // userland will fail
- enumerable: false,
- get: function () {
- return this._readableState.highWaterMark;
- }
-});
-
-// exposed for testing purposes only.
-Readable._fromList = fromList;
-
-// Pluck off n bytes from an array of buffers.
-// Length is the combined lengths of all the buffers in the list.
-// This function is designed to be inlinable, so please take care when making
-// changes to the function body.
-function fromList(n, state) {
- // nothing buffered
- if (state.length === 0) return null;
-
- var ret;
- if (state.objectMode) ret = state.buffer.shift();else if (!n || n >= state.length) {
- // read it all, truncate the list
- if (state.decoder) ret = state.buffer.join('');else if (state.buffer.length === 1) ret = state.buffer.head.data;else ret = state.buffer.concat(state.length);
- state.buffer.clear();
- } else {
- // read part of list
- ret = fromListPartial(n, state.buffer, state.decoder);
- }
-
- return ret;
-}
-
-// Extracts only enough buffered data to satisfy the amount requested.
-// This function is designed to be inlinable, so please take care when making
-// changes to the function body.
-function fromListPartial(n, list, hasStrings) {
- var ret;
- if (n < list.head.data.length) {
- // slice is the same for buffers and strings
- ret = list.head.data.slice(0, n);
- list.head.data = list.head.data.slice(n);
- } else if (n === list.head.data.length) {
- // first chunk is a perfect match
- ret = list.shift();
- } else {
- // result spans more than one buffer
- ret = hasStrings ? copyFromBufferString(n, list) : copyFromBuffer(n, list);
- }
- return ret;
-}
-
-// Copies a specified amount of characters from the list of buffered data
-// chunks.
-// This function is designed to be inlinable, so please take care when making
-// changes to the function body.
-function copyFromBufferString(n, list) {
- var p = list.head;
- var c = 1;
- var ret = p.data;
- n -= ret.length;
- while (p = p.next) {
- var str = p.data;
- var nb = n > str.length ? str.length : n;
- if (nb === str.length) ret += str;else ret += str.slice(0, n);
- n -= nb;
- if (n === 0) {
- if (nb === str.length) {
- ++c;
- if (p.next) list.head = p.next;else list.head = list.tail = null;
- } else {
- list.head = p;
- p.data = str.slice(nb);
- }
- break;
- }
- ++c;
- }
- list.length -= c;
- return ret;
-}
-
-// Copies a specified amount of bytes from the list of buffered data chunks.
-// This function is designed to be inlinable, so please take care when making
-// changes to the function body.
-function copyFromBuffer(n, list) {
- var ret = Buffer.allocUnsafe(n);
- var p = list.head;
- var c = 1;
- p.data.copy(ret);
- n -= p.data.length;
- while (p = p.next) {
- var buf = p.data;
- var nb = n > buf.length ? buf.length : n;
- buf.copy(ret, ret.length - n, 0, nb);
- n -= nb;
- if (n === 0) {
- if (nb === buf.length) {
- ++c;
- if (p.next) list.head = p.next;else list.head = list.tail = null;
- } else {
- list.head = p;
- p.data = buf.slice(nb);
- }
- break;
- }
- ++c;
- }
- list.length -= c;
- return ret;
-}
-
-function endReadable(stream) {
- var state = stream._readableState;
-
- // If we get here before consuming all the bytes, then that is a
- // bug in node. Should never happen.
- if (state.length > 0) throw new Error('"endReadable()" called on non-empty stream');
-
- if (!state.endEmitted) {
- state.ended = true;
- pna.nextTick(endReadableNT, state, stream);
- }
-}
-
-function endReadableNT(state, stream) {
- // Check that we didn't get one last unshift.
- if (!state.endEmitted && state.length === 0) {
- state.endEmitted = true;
- stream.readable = false;
- stream.emit('end');
- }
-}
-
-function indexOf(xs, x) {
- for (var i = 0, l = xs.length; i < l; i++) {
- if (xs[i] === x) return i;
- }
- return -1;
-}
-}).call(this)}).call(this,_dereq_('_process'),typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
-},{"./_stream_duplex":81,"./internal/streams/BufferList":86,"./internal/streams/destroy":87,"./internal/streams/stream":88,"_process":74,"core-util-is":25,"events":43,"inherits":65,"isarray":68,"process-nextick-args":73,"safe-buffer":89,"string_decoder/":90,"util":16}],84:[function(_dereq_,module,exports){
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-// a transform stream is a readable/writable stream where you do
-// something with the data. Sometimes it's called a "filter",
-// but that's not a great name for it, since that implies a thing where
-// some bits pass through, and others are simply ignored. (That would
-// be a valid example of a transform, of course.)
-//
-// While the output is causally related to the input, it's not a
-// necessarily symmetric or synchronous transformation. For example,
-// a zlib stream might take multiple plain-text writes(), and then
-// emit a single compressed chunk some time in the future.
-//
-// Here's how this works:
-//
-// The Transform stream has all the aspects of the readable and writable
-// stream classes. When you write(chunk), that calls _write(chunk,cb)
-// internally, and returns false if there's a lot of pending writes
-// buffered up. When you call read(), that calls _read(n) until
-// there's enough pending readable data buffered up.
-//
-// In a transform stream, the written data is placed in a buffer. When
-// _read(n) is called, it transforms the queued up data, calling the
-// buffered _write cb's as it consumes chunks. If consuming a single
-// written chunk would result in multiple output chunks, then the first
-// outputted bit calls the readcb, and subsequent chunks just go into
-// the read buffer, and will cause it to emit 'readable' if necessary.
-//
-// This way, back-pressure is actually determined by the reading side,
-// since _read has to be called to start processing a new chunk. However,
-// a pathological inflate type of transform can cause excessive buffering
-// here. For example, imagine a stream where every byte of input is
-// interpreted as an integer from 0-255, and then results in that many
-// bytes of output. Writing the 4 bytes {ff,ff,ff,ff} would result in
-// 1kb of data being output. In this case, you could write a very small
-// amount of input, and end up with a very large amount of output. In
-// such a pathological inflating mechanism, there'd be no way to tell
-// the system to stop doing the transform. A single 4MB write could
-// cause the system to run out of memory.
-//
-// However, even in such a pathological case, only a single written chunk
-// would be consumed, and then the rest would wait (un-transformed) until
-// the results of the previous transformed chunk were consumed.
-
-'use strict';
-
-module.exports = Transform;
-
-var Duplex = _dereq_('./_stream_duplex');
-
-/**/
-var util = Object.create(_dereq_('core-util-is'));
-util.inherits = _dereq_('inherits');
-/* */
-
-util.inherits(Transform, Duplex);
-
-function afterTransform(er, data) {
- var ts = this._transformState;
- ts.transforming = false;
-
- var cb = ts.writecb;
-
- if (!cb) {
- return this.emit('error', new Error('write callback called multiple times'));
- }
-
- ts.writechunk = null;
- ts.writecb = null;
-
- if (data != null) // single equals check for both `null` and `undefined`
- this.push(data);
-
- cb(er);
-
- var rs = this._readableState;
- rs.reading = false;
- if (rs.needReadable || rs.length < rs.highWaterMark) {
- this._read(rs.highWaterMark);
- }
-}
-
-function Transform(options) {
- if (!(this instanceof Transform)) return new Transform(options);
-
- Duplex.call(this, options);
-
- this._transformState = {
- afterTransform: afterTransform.bind(this),
- needTransform: false,
- transforming: false,
- writecb: null,
- writechunk: null,
- writeencoding: null
- };
-
- // start out asking for a readable event once data is transformed.
- this._readableState.needReadable = true;
-
- // we have implemented the _read method, and done the other things
- // that Readable wants before the first _read call, so unset the
- // sync guard flag.
- this._readableState.sync = false;
-
- if (options) {
- if (typeof options.transform === 'function') this._transform = options.transform;
-
- if (typeof options.flush === 'function') this._flush = options.flush;
- }
-
- // When the writable side finishes, then flush out anything remaining.
- this.on('prefinish', prefinish);
-}
-
-function prefinish() {
- var _this = this;
-
- if (typeof this._flush === 'function') {
- this._flush(function (er, data) {
- done(_this, er, data);
- });
- } else {
- done(this, null, null);
- }
-}
-
-Transform.prototype.push = function (chunk, encoding) {
- this._transformState.needTransform = false;
- return Duplex.prototype.push.call(this, chunk, encoding);
-};
-
-// This is the part where you do stuff!
-// override this function in implementation classes.
-// 'chunk' is an input chunk.
-//
-// Call `push(newChunk)` to pass along transformed output
-// to the readable side. You may call 'push' zero or more times.
-//
-// Call `cb(err)` when you are done with this chunk. If you pass
-// an error, then that'll put the hurt on the whole operation. If you
-// never call cb(), then you'll never get another chunk.
-Transform.prototype._transform = function (chunk, encoding, cb) {
- throw new Error('_transform() is not implemented');
-};
-
-Transform.prototype._write = function (chunk, encoding, cb) {
- var ts = this._transformState;
- ts.writecb = cb;
- ts.writechunk = chunk;
- ts.writeencoding = encoding;
- if (!ts.transforming) {
- var rs = this._readableState;
- if (ts.needTransform || rs.needReadable || rs.length < rs.highWaterMark) this._read(rs.highWaterMark);
- }
-};
-
-// Doesn't matter what the args are here.
-// _transform does all the work.
-// That we got here means that the readable side wants more data.
-Transform.prototype._read = function (n) {
- var ts = this._transformState;
-
- if (ts.writechunk !== null && ts.writecb && !ts.transforming) {
- ts.transforming = true;
- this._transform(ts.writechunk, ts.writeencoding, ts.afterTransform);
- } else {
- // mark that we need a transform, so that any data that comes in
- // will get processed, now that we've asked for it.
- ts.needTransform = true;
- }
-};
-
-Transform.prototype._destroy = function (err, cb) {
- var _this2 = this;
-
- Duplex.prototype._destroy.call(this, err, function (err2) {
- cb(err2);
- _this2.emit('close');
- });
-};
-
-function done(stream, er, data) {
- if (er) return stream.emit('error', er);
-
- if (data != null) // single equals check for both `null` and `undefined`
- stream.push(data);
-
- // if there's nothing in the write buffer, then that means
- // that nothing more will ever be provided
- if (stream._writableState.length) throw new Error('Calling transform done when ws.length != 0');
-
- if (stream._transformState.transforming) throw new Error('Calling transform done when still transforming');
-
- return stream.push(null);
-}
-},{"./_stream_duplex":81,"core-util-is":25,"inherits":65}],85:[function(_dereq_,module,exports){
-(function (process,global,setImmediate){(function (){
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-// A bit simpler than readable streams.
-// Implement an async ._write(chunk, encoding, cb), and it'll handle all
-// the drain event emission and buffering.
-
-'use strict';
-
-/**/
-
-var pna = _dereq_('process-nextick-args');
-/* */
-
-module.exports = Writable;
-
-/* */
-function WriteReq(chunk, encoding, cb) {
- this.chunk = chunk;
- this.encoding = encoding;
- this.callback = cb;
- this.next = null;
-}
-
-// It seems a linked list but it is not
-// there will be only 2 of these for each stream
-function CorkedRequest(state) {
- var _this = this;
-
- this.next = null;
- this.entry = null;
- this.finish = function () {
- onCorkedFinish(_this, state);
- };
-}
-/* */
-
-/**/
-var asyncWrite = !process.browser && ['v0.10', 'v0.9.'].indexOf(process.version.slice(0, 5)) > -1 ? setImmediate : pna.nextTick;
-/* */
-
-/**/
-var Duplex;
-/* */
-
-Writable.WritableState = WritableState;
-
-/**/
-var util = Object.create(_dereq_('core-util-is'));
-util.inherits = _dereq_('inherits');
-/* */
-
-/**/
-var internalUtil = {
- deprecate: _dereq_('util-deprecate')
-};
-/* */
-
-/**/
-var Stream = _dereq_('./internal/streams/stream');
-/* */
-
-/**/
-
-var Buffer = _dereq_('safe-buffer').Buffer;
-var OurUint8Array = (typeof global !== 'undefined' ? global : typeof window !== 'undefined' ? window : typeof self !== 'undefined' ? self : {}).Uint8Array || function () {};
-function _uint8ArrayToBuffer(chunk) {
- return Buffer.from(chunk);
-}
-function _isUint8Array(obj) {
- return Buffer.isBuffer(obj) || obj instanceof OurUint8Array;
-}
-
-/* */
-
-var destroyImpl = _dereq_('./internal/streams/destroy');
-
-util.inherits(Writable, Stream);
-
-function nop() {}
-
-function WritableState(options, stream) {
- Duplex = Duplex || _dereq_('./_stream_duplex');
-
- options = options || {};
-
- // Duplex streams are both readable and writable, but share
- // the same options object.
- // However, some cases require setting options to different
- // values for the readable and the writable sides of the duplex stream.
- // These options can be provided separately as readableXXX and writableXXX.
- var isDuplex = stream instanceof Duplex;
-
- // object stream flag to indicate whether or not this stream
- // contains buffers or objects.
- this.objectMode = !!options.objectMode;
-
- if (isDuplex) this.objectMode = this.objectMode || !!options.writableObjectMode;
-
- // the point at which write() starts returning false
- // Note: 0 is a valid value, means that we always return false if
- // the entire buffer is not flushed immediately on write()
- var hwm = options.highWaterMark;
- var writableHwm = options.writableHighWaterMark;
- var defaultHwm = this.objectMode ? 16 : 16 * 1024;
-
- if (hwm || hwm === 0) this.highWaterMark = hwm;else if (isDuplex && (writableHwm || writableHwm === 0)) this.highWaterMark = writableHwm;else this.highWaterMark = defaultHwm;
-
- // cast to ints.
- this.highWaterMark = Math.floor(this.highWaterMark);
-
- // if _final has been called
- this.finalCalled = false;
-
- // drain event flag.
- this.needDrain = false;
- // at the start of calling end()
- this.ending = false;
- // when end() has been called, and returned
- this.ended = false;
- // when 'finish' is emitted
- this.finished = false;
-
- // has it been destroyed
- this.destroyed = false;
-
- // should we decode strings into buffers before passing to _write?
- // this is here so that some node-core streams can optimize string
- // handling at a lower level.
- var noDecode = options.decodeStrings === false;
- this.decodeStrings = !noDecode;
-
- // Crypto is kind of old and crusty. Historically, its default string
- // encoding is 'binary' so we have to make this configurable.
- // Everything else in the universe uses 'utf8', though.
- this.defaultEncoding = options.defaultEncoding || 'utf8';
-
- // not an actual buffer we keep track of, but a measurement
- // of how much we're waiting to get pushed to some underlying
- // socket or file.
- this.length = 0;
-
- // a flag to see when we're in the middle of a write.
- this.writing = false;
-
- // when true all writes will be buffered until .uncork() call
- this.corked = 0;
-
- // a flag to be able to tell if the onwrite cb is called immediately,
- // or on a later tick. We set this to true at first, because any
- // actions that shouldn't happen until "later" should generally also
- // not happen before the first write call.
- this.sync = true;
-
- // a flag to know if we're processing previously buffered items, which
- // may call the _write() callback in the same tick, so that we don't
- // end up in an overlapped onwrite situation.
- this.bufferProcessing = false;
-
- // the callback that's passed to _write(chunk,cb)
- this.onwrite = function (er) {
- onwrite(stream, er);
- };
-
- // the callback that the user supplies to write(chunk,encoding,cb)
- this.writecb = null;
-
- // the amount that is being written when _write is called.
- this.writelen = 0;
-
- this.bufferedRequest = null;
- this.lastBufferedRequest = null;
-
- // number of pending user-supplied write callbacks
- // this must be 0 before 'finish' can be emitted
- this.pendingcb = 0;
-
- // emit prefinish if the only thing we're waiting for is _write cbs
- // This is relevant for synchronous Transform streams
- this.prefinished = false;
-
- // True if the error was already emitted and should not be thrown again
- this.errorEmitted = false;
-
- // count buffered requests
- this.bufferedRequestCount = 0;
-
- // allocate the first CorkedRequest, there is always
- // one allocated and free to use, and we maintain at most two
- this.corkedRequestsFree = new CorkedRequest(this);
-}
-
-WritableState.prototype.getBuffer = function getBuffer() {
- var current = this.bufferedRequest;
- var out = [];
- while (current) {
- out.push(current);
- current = current.next;
- }
- return out;
-};
-
-(function () {
- try {
- Object.defineProperty(WritableState.prototype, 'buffer', {
- get: internalUtil.deprecate(function () {
- return this.getBuffer();
- }, '_writableState.buffer is deprecated. Use _writableState.getBuffer ' + 'instead.', 'DEP0003')
- });
- } catch (_) {}
-})();
-
-// Test _writableState for inheritance to account for Duplex streams,
-// whose prototype chain only points to Readable.
-var realHasInstance;
-if (typeof Symbol === 'function' && Symbol.hasInstance && typeof Function.prototype[Symbol.hasInstance] === 'function') {
- realHasInstance = Function.prototype[Symbol.hasInstance];
- Object.defineProperty(Writable, Symbol.hasInstance, {
- value: function (object) {
- if (realHasInstance.call(this, object)) return true;
- if (this !== Writable) return false;
-
- return object && object._writableState instanceof WritableState;
- }
- });
-} else {
- realHasInstance = function (object) {
- return object instanceof this;
- };
-}
-
-function Writable(options) {
- Duplex = Duplex || _dereq_('./_stream_duplex');
-
- // Writable ctor is applied to Duplexes, too.
- // `realHasInstance` is necessary because using plain `instanceof`
- // would return false, as no `_writableState` property is attached.
-
- // Trying to use the custom `instanceof` for Writable here will also break the
- // Node.js LazyTransform implementation, which has a non-trivial getter for
- // `_writableState` that would lead to infinite recursion.
- if (!realHasInstance.call(Writable, this) && !(this instanceof Duplex)) {
- return new Writable(options);
- }
-
- this._writableState = new WritableState(options, this);
-
- // legacy.
- this.writable = true;
-
- if (options) {
- if (typeof options.write === 'function') this._write = options.write;
-
- if (typeof options.writev === 'function') this._writev = options.writev;
-
- if (typeof options.destroy === 'function') this._destroy = options.destroy;
-
- if (typeof options.final === 'function') this._final = options.final;
- }
-
- Stream.call(this);
-}
-
-// Otherwise people can pipe Writable streams, which is just wrong.
-Writable.prototype.pipe = function () {
- this.emit('error', new Error('Cannot pipe, not readable'));
-};
-
-function writeAfterEnd(stream, cb) {
- var er = new Error('write after end');
- // TODO: defer error events consistently everywhere, not just the cb
- stream.emit('error', er);
- pna.nextTick(cb, er);
-}
-
-// Checks that a user-supplied chunk is valid, especially for the particular
-// mode the stream is in. Currently this means that `null` is never accepted
-// and undefined/non-string values are only allowed in object mode.
-function validChunk(stream, state, chunk, cb) {
- var valid = true;
- var er = false;
-
- if (chunk === null) {
- er = new TypeError('May not write null values to stream');
- } else if (typeof chunk !== 'string' && chunk !== undefined && !state.objectMode) {
- er = new TypeError('Invalid non-string/buffer chunk');
- }
- if (er) {
- stream.emit('error', er);
- pna.nextTick(cb, er);
- valid = false;
- }
- return valid;
-}
-
-Writable.prototype.write = function (chunk, encoding, cb) {
- var state = this._writableState;
- var ret = false;
- var isBuf = !state.objectMode && _isUint8Array(chunk);
-
- if (isBuf && !Buffer.isBuffer(chunk)) {
- chunk = _uint8ArrayToBuffer(chunk);
- }
-
- if (typeof encoding === 'function') {
- cb = encoding;
- encoding = null;
- }
-
- if (isBuf) encoding = 'buffer';else if (!encoding) encoding = state.defaultEncoding;
-
- if (typeof cb !== 'function') cb = nop;
-
- if (state.ended) writeAfterEnd(this, cb);else if (isBuf || validChunk(this, state, chunk, cb)) {
- state.pendingcb++;
- ret = writeOrBuffer(this, state, isBuf, chunk, encoding, cb);
- }
-
- return ret;
-};
-
-Writable.prototype.cork = function () {
- var state = this._writableState;
-
- state.corked++;
-};
-
-Writable.prototype.uncork = function () {
- var state = this._writableState;
-
- if (state.corked) {
- state.corked--;
-
- if (!state.writing && !state.corked && !state.bufferProcessing && state.bufferedRequest) clearBuffer(this, state);
- }
-};
-
-Writable.prototype.setDefaultEncoding = function setDefaultEncoding(encoding) {
- // node::ParseEncoding() requires lower case.
- if (typeof encoding === 'string') encoding = encoding.toLowerCase();
- if (!(['hex', 'utf8', 'utf-8', 'ascii', 'binary', 'base64', 'ucs2', 'ucs-2', 'utf16le', 'utf-16le', 'raw'].indexOf((encoding + '').toLowerCase()) > -1)) throw new TypeError('Unknown encoding: ' + encoding);
- this._writableState.defaultEncoding = encoding;
- return this;
-};
-
-function decodeChunk(state, chunk, encoding) {
- if (!state.objectMode && state.decodeStrings !== false && typeof chunk === 'string') {
- chunk = Buffer.from(chunk, encoding);
- }
- return chunk;
-}
-
-Object.defineProperty(Writable.prototype, 'writableHighWaterMark', {
- // making it explicit this property is not enumerable
- // because otherwise some prototype manipulation in
- // userland will fail
- enumerable: false,
- get: function () {
- return this._writableState.highWaterMark;
- }
-});
-
-// if we're already writing something, then just put this
-// in the queue, and wait our turn. Otherwise, call _write
-// If we return false, then we need a drain event, so set that flag.
-function writeOrBuffer(stream, state, isBuf, chunk, encoding, cb) {
- if (!isBuf) {
- var newChunk = decodeChunk(state, chunk, encoding);
- if (chunk !== newChunk) {
- isBuf = true;
- encoding = 'buffer';
- chunk = newChunk;
- }
- }
- var len = state.objectMode ? 1 : chunk.length;
-
- state.length += len;
-
- var ret = state.length < state.highWaterMark;
- // we must ensure that previous needDrain will not be reset to false.
- if (!ret) state.needDrain = true;
-
- if (state.writing || state.corked) {
- var last = state.lastBufferedRequest;
- state.lastBufferedRequest = {
- chunk: chunk,
- encoding: encoding,
- isBuf: isBuf,
- callback: cb,
- next: null
- };
- if (last) {
- last.next = state.lastBufferedRequest;
- } else {
- state.bufferedRequest = state.lastBufferedRequest;
- }
- state.bufferedRequestCount += 1;
- } else {
- doWrite(stream, state, false, len, chunk, encoding, cb);
- }
-
- return ret;
-}
-
-function doWrite(stream, state, writev, len, chunk, encoding, cb) {
- state.writelen = len;
- state.writecb = cb;
- state.writing = true;
- state.sync = true;
- if (writev) stream._writev(chunk, state.onwrite);else stream._write(chunk, encoding, state.onwrite);
- state.sync = false;
-}
-
-function onwriteError(stream, state, sync, er, cb) {
- --state.pendingcb;
-
- if (sync) {
- // defer the callback if we are being called synchronously
- // to avoid piling up things on the stack
- pna.nextTick(cb, er);
- // this can emit finish, and it will always happen
- // after error
- pna.nextTick(finishMaybe, stream, state);
- stream._writableState.errorEmitted = true;
- stream.emit('error', er);
- } else {
- // the caller expect this to happen before if
- // it is async
- cb(er);
- stream._writableState.errorEmitted = true;
- stream.emit('error', er);
- // this can emit finish, but finish must
- // always follow error
- finishMaybe(stream, state);
- }
-}
-
-function onwriteStateUpdate(state) {
- state.writing = false;
- state.writecb = null;
- state.length -= state.writelen;
- state.writelen = 0;
-}
-
-function onwrite(stream, er) {
- var state = stream._writableState;
- var sync = state.sync;
- var cb = state.writecb;
-
- onwriteStateUpdate(state);
-
- if (er) onwriteError(stream, state, sync, er, cb);else {
- // Check if we're actually ready to finish, but don't emit yet
- var finished = needFinish(state);
-
- if (!finished && !state.corked && !state.bufferProcessing && state.bufferedRequest) {
- clearBuffer(stream, state);
- }
-
- if (sync) {
- /**/
- asyncWrite(afterWrite, stream, state, finished, cb);
- /* */
- } else {
- afterWrite(stream, state, finished, cb);
- }
- }
-}
-
-function afterWrite(stream, state, finished, cb) {
- if (!finished) onwriteDrain(stream, state);
- state.pendingcb--;
- cb();
- finishMaybe(stream, state);
-}
-
-// Must force callback to be called on nextTick, so that we don't
-// emit 'drain' before the write() consumer gets the 'false' return
-// value, and has a chance to attach a 'drain' listener.
-function onwriteDrain(stream, state) {
- if (state.length === 0 && state.needDrain) {
- state.needDrain = false;
- stream.emit('drain');
- }
-}
-
-// if there's something in the buffer waiting, then process it
-function clearBuffer(stream, state) {
- state.bufferProcessing = true;
- var entry = state.bufferedRequest;
-
- if (stream._writev && entry && entry.next) {
- // Fast case, write everything using _writev()
- var l = state.bufferedRequestCount;
- var buffer = new Array(l);
- var holder = state.corkedRequestsFree;
- holder.entry = entry;
-
- var count = 0;
- var allBuffers = true;
- while (entry) {
- buffer[count] = entry;
- if (!entry.isBuf) allBuffers = false;
- entry = entry.next;
- count += 1;
- }
- buffer.allBuffers = allBuffers;
-
- doWrite(stream, state, true, state.length, buffer, '', holder.finish);
-
- // doWrite is almost always async, defer these to save a bit of time
- // as the hot path ends with doWrite
- state.pendingcb++;
- state.lastBufferedRequest = null;
- if (holder.next) {
- state.corkedRequestsFree = holder.next;
- holder.next = null;
- } else {
- state.corkedRequestsFree = new CorkedRequest(state);
- }
- state.bufferedRequestCount = 0;
- } else {
- // Slow case, write chunks one-by-one
- while (entry) {
- var chunk = entry.chunk;
- var encoding = entry.encoding;
- var cb = entry.callback;
- var len = state.objectMode ? 1 : chunk.length;
-
- doWrite(stream, state, false, len, chunk, encoding, cb);
- entry = entry.next;
- state.bufferedRequestCount--;
- // if we didn't call the onwrite immediately, then
- // it means that we need to wait until it does.
- // also, that means that the chunk and cb are currently
- // being processed, so move the buffer counter past them.
- if (state.writing) {
- break;
- }
- }
-
- if (entry === null) state.lastBufferedRequest = null;
- }
-
- state.bufferedRequest = entry;
- state.bufferProcessing = false;
-}
-
-Writable.prototype._write = function (chunk, encoding, cb) {
- cb(new Error('_write() is not implemented'));
-};
-
-Writable.prototype._writev = null;
-
-Writable.prototype.end = function (chunk, encoding, cb) {
- var state = this._writableState;
-
- if (typeof chunk === 'function') {
- cb = chunk;
- chunk = null;
- encoding = null;
- } else if (typeof encoding === 'function') {
- cb = encoding;
- encoding = null;
- }
-
- if (chunk !== null && chunk !== undefined) this.write(chunk, encoding);
-
- // .end() fully uncorks
- if (state.corked) {
- state.corked = 1;
- this.uncork();
- }
-
- // ignore unnecessary end() calls.
- if (!state.ending) endWritable(this, state, cb);
-};
-
-function needFinish(state) {
- return state.ending && state.length === 0 && state.bufferedRequest === null && !state.finished && !state.writing;
-}
-function callFinal(stream, state) {
- stream._final(function (err) {
- state.pendingcb--;
- if (err) {
- stream.emit('error', err);
- }
- state.prefinished = true;
- stream.emit('prefinish');
- finishMaybe(stream, state);
- });
-}
-function prefinish(stream, state) {
- if (!state.prefinished && !state.finalCalled) {
- if (typeof stream._final === 'function') {
- state.pendingcb++;
- state.finalCalled = true;
- pna.nextTick(callFinal, stream, state);
- } else {
- state.prefinished = true;
- stream.emit('prefinish');
- }
- }
-}
-
-function finishMaybe(stream, state) {
- var need = needFinish(state);
- if (need) {
- prefinish(stream, state);
- if (state.pendingcb === 0) {
- state.finished = true;
- stream.emit('finish');
- }
- }
- return need;
-}
-
-function endWritable(stream, state, cb) {
- state.ending = true;
- finishMaybe(stream, state);
- if (cb) {
- if (state.finished) pna.nextTick(cb);else stream.once('finish', cb);
- }
- state.ended = true;
- stream.writable = false;
-}
-
-function onCorkedFinish(corkReq, state, err) {
- var entry = corkReq.entry;
- corkReq.entry = null;
- while (entry) {
- var cb = entry.callback;
- state.pendingcb--;
- cb(err);
- entry = entry.next;
- }
-
- // reuse the free corkReq.
- state.corkedRequestsFree.next = corkReq;
-}
-
-Object.defineProperty(Writable.prototype, 'destroyed', {
- get: function () {
- if (this._writableState === undefined) {
- return false;
- }
- return this._writableState.destroyed;
- },
- set: function (value) {
- // we ignore the value if the stream
- // has not been initialized yet
- if (!this._writableState) {
- return;
- }
-
- // backward compatibility, the user is explicitly
- // managing destroyed
- this._writableState.destroyed = value;
- }
-});
-
-Writable.prototype.destroy = destroyImpl.destroy;
-Writable.prototype._undestroy = destroyImpl.undestroy;
-Writable.prototype._destroy = function (err, cb) {
- this.end();
- cb(err);
-};
-}).call(this)}).call(this,_dereq_('_process'),typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {},_dereq_("timers").setImmediate)
-},{"./_stream_duplex":81,"./internal/streams/destroy":87,"./internal/streams/stream":88,"_process":74,"core-util-is":25,"inherits":65,"process-nextick-args":73,"safe-buffer":89,"timers":102,"util-deprecate":105}],86:[function(_dereq_,module,exports){
-'use strict';
-
-function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-
-var Buffer = _dereq_('safe-buffer').Buffer;
-var util = _dereq_('util');
-
-function copyBuffer(src, target, offset) {
- src.copy(target, offset);
-}
-
-module.exports = function () {
- function BufferList() {
- _classCallCheck(this, BufferList);
-
- this.head = null;
- this.tail = null;
- this.length = 0;
- }
-
- BufferList.prototype.push = function push(v) {
- var entry = { data: v, next: null };
- if (this.length > 0) this.tail.next = entry;else this.head = entry;
- this.tail = entry;
- ++this.length;
- };
-
- BufferList.prototype.unshift = function unshift(v) {
- var entry = { data: v, next: this.head };
- if (this.length === 0) this.tail = entry;
- this.head = entry;
- ++this.length;
- };
-
- BufferList.prototype.shift = function shift() {
- if (this.length === 0) return;
- var ret = this.head.data;
- if (this.length === 1) this.head = this.tail = null;else this.head = this.head.next;
- --this.length;
- return ret;
- };
-
- BufferList.prototype.clear = function clear() {
- this.head = this.tail = null;
- this.length = 0;
- };
-
- BufferList.prototype.join = function join(s) {
- if (this.length === 0) return '';
- var p = this.head;
- var ret = '' + p.data;
- while (p = p.next) {
- ret += s + p.data;
- }return ret;
- };
-
- BufferList.prototype.concat = function concat(n) {
- if (this.length === 0) return Buffer.alloc(0);
- var ret = Buffer.allocUnsafe(n >>> 0);
- var p = this.head;
- var i = 0;
- while (p) {
- copyBuffer(p.data, ret, i);
- i += p.data.length;
- p = p.next;
- }
- return ret;
- };
-
- return BufferList;
-}();
-
-if (util && util.inspect && util.inspect.custom) {
- module.exports.prototype[util.inspect.custom] = function () {
- var obj = util.inspect({ length: this.length });
- return this.constructor.name + ' ' + obj;
- };
-}
-},{"safe-buffer":89,"util":16}],87:[function(_dereq_,module,exports){
-'use strict';
-
-/**/
-
-var pna = _dereq_('process-nextick-args');
-/* */
-
-// undocumented cb() API, needed for core, not for public API
-function destroy(err, cb) {
- var _this = this;
-
- var readableDestroyed = this._readableState && this._readableState.destroyed;
- var writableDestroyed = this._writableState && this._writableState.destroyed;
-
- if (readableDestroyed || writableDestroyed) {
- if (cb) {
- cb(err);
- } else if (err) {
- if (!this._writableState) {
- pna.nextTick(emitErrorNT, this, err);
- } else if (!this._writableState.errorEmitted) {
- this._writableState.errorEmitted = true;
- pna.nextTick(emitErrorNT, this, err);
- }
- }
-
- return this;
- }
-
- // we set destroyed to true before firing error callbacks in order
- // to make it re-entrance safe in case destroy() is called within callbacks
-
- if (this._readableState) {
- this._readableState.destroyed = true;
- }
-
- // if this is a duplex stream mark the writable part as destroyed as well
- if (this._writableState) {
- this._writableState.destroyed = true;
- }
-
- this._destroy(err || null, function (err) {
- if (!cb && err) {
- if (!_this._writableState) {
- pna.nextTick(emitErrorNT, _this, err);
- } else if (!_this._writableState.errorEmitted) {
- _this._writableState.errorEmitted = true;
- pna.nextTick(emitErrorNT, _this, err);
- }
- } else if (cb) {
- cb(err);
- }
- });
-
- return this;
-}
-
-function undestroy() {
- if (this._readableState) {
- this._readableState.destroyed = false;
- this._readableState.reading = false;
- this._readableState.ended = false;
- this._readableState.endEmitted = false;
- }
-
- if (this._writableState) {
- this._writableState.destroyed = false;
- this._writableState.ended = false;
- this._writableState.ending = false;
- this._writableState.finalCalled = false;
- this._writableState.prefinished = false;
- this._writableState.finished = false;
- this._writableState.errorEmitted = false;
- }
-}
-
-function emitErrorNT(self, err) {
- self.emit('error', err);
-}
-
-module.exports = {
- destroy: destroy,
- undestroy: undestroy
-};
-},{"process-nextick-args":73}],88:[function(_dereq_,module,exports){
-module.exports = _dereq_('events').EventEmitter;
-
-},{"events":43}],89:[function(_dereq_,module,exports){
-/* eslint-disable node/no-deprecated-api */
-var buffer = _dereq_('buffer')
-var Buffer = buffer.Buffer
-
-// alternative to using Object.keys for old browsers
-function copyProps (src, dst) {
- for (var key in src) {
- dst[key] = src[key]
- }
-}
-if (Buffer.from && Buffer.alloc && Buffer.allocUnsafe && Buffer.allocUnsafeSlow) {
- module.exports = buffer
-} else {
- // Copy properties from require('buffer')
- copyProps(buffer, exports)
- exports.Buffer = SafeBuffer
-}
-
-function SafeBuffer (arg, encodingOrOffset, length) {
- return Buffer(arg, encodingOrOffset, length)
-}
-
-// Copy static methods from Buffer
-copyProps(Buffer, SafeBuffer)
-
-SafeBuffer.from = function (arg, encodingOrOffset, length) {
- if (typeof arg === 'number') {
- throw new TypeError('Argument must not be a number')
- }
- return Buffer(arg, encodingOrOffset, length)
-}
-
-SafeBuffer.alloc = function (size, fill, encoding) {
- if (typeof size !== 'number') {
- throw new TypeError('Argument must be a number')
- }
- var buf = Buffer(size)
- if (fill !== undefined) {
- if (typeof encoding === 'string') {
- buf.fill(fill, encoding)
- } else {
- buf.fill(fill)
- }
- } else {
- buf.fill(0)
- }
- return buf
-}
-
-SafeBuffer.allocUnsafe = function (size) {
- if (typeof size !== 'number') {
- throw new TypeError('Argument must be a number')
- }
- return Buffer(size)
-}
-
-SafeBuffer.allocUnsafeSlow = function (size) {
- if (typeof size !== 'number') {
- throw new TypeError('Argument must be a number')
- }
- return buffer.SlowBuffer(size)
-}
-
-},{"buffer":18}],90:[function(_dereq_,module,exports){
-// Copyright Joyent, Inc. and other Node contributors.
-//
-// Permission is hereby granted, free of charge, to any person obtaining a
-// copy of this software and associated documentation files (the
-// "Software"), to deal in the Software without restriction, including
-// without limitation the rights to use, copy, modify, merge, publish,
-// distribute, sublicense, and/or sell copies of the Software, and to permit
-// persons to whom the Software is furnished to do so, subject to the
-// following conditions:
-//
-// The above copyright notice and this permission notice shall be included
-// in all copies or substantial portions of the Software.
-//
-// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-// MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN
-// NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
-// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
-// OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
-// USE OR OTHER DEALINGS IN THE SOFTWARE.
-
-'use strict';
-
-/**/
-
-var Buffer = _dereq_('safe-buffer').Buffer;
-/* */
-
-var isEncoding = Buffer.isEncoding || function (encoding) {
- encoding = '' + encoding;
- switch (encoding && encoding.toLowerCase()) {
- case 'hex':case 'utf8':case 'utf-8':case 'ascii':case 'binary':case 'base64':case 'ucs2':case 'ucs-2':case 'utf16le':case 'utf-16le':case 'raw':
- return true;
- default:
- return false;
- }
-};
-
-function _normalizeEncoding(enc) {
- if (!enc) return 'utf8';
- var retried;
- while (true) {
- switch (enc) {
- case 'utf8':
- case 'utf-8':
- return 'utf8';
- case 'ucs2':
- case 'ucs-2':
- case 'utf16le':
- case 'utf-16le':
- return 'utf16le';
- case 'latin1':
- case 'binary':
- return 'latin1';
- case 'base64':
- case 'ascii':
- case 'hex':
- return enc;
- default:
- if (retried) return; // undefined
- enc = ('' + enc).toLowerCase();
- retried = true;
- }
- }
-};
-
-// Do not cache `Buffer.isEncoding` when checking encoding names as some
-// modules monkey-patch it to support additional encodings
-function normalizeEncoding(enc) {
- var nenc = _normalizeEncoding(enc);
- if (typeof nenc !== 'string' && (Buffer.isEncoding === isEncoding || !isEncoding(enc))) throw new Error('Unknown encoding: ' + enc);
- return nenc || enc;
-}
-
-// StringDecoder provides an interface for efficiently splitting a series of
-// buffers into a series of JS strings without breaking apart multi-byte
-// characters.
-exports.StringDecoder = StringDecoder;
-function StringDecoder(encoding) {
- this.encoding = normalizeEncoding(encoding);
- var nb;
- switch (this.encoding) {
- case 'utf16le':
- this.text = utf16Text;
- this.end = utf16End;
- nb = 4;
- break;
- case 'utf8':
- this.fillLast = utf8FillLast;
- nb = 4;
- break;
- case 'base64':
- this.text = base64Text;
- this.end = base64End;
- nb = 3;
- break;
- default:
- this.write = simpleWrite;
- this.end = simpleEnd;
- return;
- }
- this.lastNeed = 0;
- this.lastTotal = 0;
- this.lastChar = Buffer.allocUnsafe(nb);
-}
-
-StringDecoder.prototype.write = function (buf) {
- if (buf.length === 0) return '';
- var r;
- var i;
- if (this.lastNeed) {
- r = this.fillLast(buf);
- if (r === undefined) return '';
- i = this.lastNeed;
- this.lastNeed = 0;
- } else {
- i = 0;
- }
- if (i < buf.length) return r ? r + this.text(buf, i) : this.text(buf, i);
- return r || '';
-};
-
-StringDecoder.prototype.end = utf8End;
-
-// Returns only complete characters in a Buffer
-StringDecoder.prototype.text = utf8Text;
-
-// Attempts to complete a partial non-UTF-8 character using bytes from a Buffer
-StringDecoder.prototype.fillLast = function (buf) {
- if (this.lastNeed <= buf.length) {
- buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, this.lastNeed);
- return this.lastChar.toString(this.encoding, 0, this.lastTotal);
- }
- buf.copy(this.lastChar, this.lastTotal - this.lastNeed, 0, buf.length);
- this.lastNeed -= buf.length;
-};
-
-// Checks the type of a UTF-8 byte, whether it's ASCII, a leading byte, or a
-// continuation byte. If an invalid byte is detected, -2 is returned.
-function utf8CheckByte(byte) {
- if (byte <= 0x7F) return 0;else if (byte >> 5 === 0x06) return 2;else if (byte >> 4 === 0x0E) return 3;else if (byte >> 3 === 0x1E) return 4;
- return byte >> 6 === 0x02 ? -1 : -2;
-}
-
-// Checks at most 3 bytes at the end of a Buffer in order to detect an
-// incomplete multi-byte UTF-8 character. The total number of bytes (2, 3, or 4)
-// needed to complete the UTF-8 character (if applicable) are returned.
-function utf8CheckIncomplete(self, buf, i) {
- var j = buf.length - 1;
- if (j < i) return 0;
- var nb = utf8CheckByte(buf[j]);
- if (nb >= 0) {
- if (nb > 0) self.lastNeed = nb - 1;
- return nb;
- }
- if (--j < i || nb === -2) return 0;
- nb = utf8CheckByte(buf[j]);
- if (nb >= 0) {
- if (nb > 0) self.lastNeed = nb - 2;
- return nb;
- }
- if (--j < i || nb === -2) return 0;
- nb = utf8CheckByte(buf[j]);
- if (nb >= 0) {
- if (nb > 0) {
- if (nb === 2) nb = 0;else self.lastNeed = nb - 3;
- }
- return nb;
- }
- return 0;
-}
-
-// Validates as many continuation bytes for a multi-byte UTF-8 character as
-// needed or are available. If we see a non-continuation byte where we expect
-// one, we "replace" the validated continuation bytes we've seen so far with
-// a single UTF-8 replacement character ('\ufffd'), to match v8's UTF-8 decoding
-// behavior. The continuation byte check is included three times in the case
-// where all of the continuation bytes for a character exist in the same buffer.
-// It is also done this way as a slight performance increase instead of using a
-// loop.
-function utf8CheckExtraBytes(self, buf, p) {
- if ((buf[0] & 0xC0) !== 0x80) {
- self.lastNeed = 0;
- return '\ufffd';
- }
- if (self.lastNeed > 1 && buf.length > 1) {
- if ((buf[1] & 0xC0) !== 0x80) {
- self.lastNeed = 1;
- return '\ufffd';
- }
- if (self.lastNeed > 2 && buf.length > 2) {
- if ((buf[2] & 0xC0) !== 0x80) {
- self.lastNeed = 2;
- return '\ufffd';
- }
- }
- }
-}
-
-// Attempts to complete a multi-byte UTF-8 character using bytes from a Buffer.
-function utf8FillLast(buf) {
- var p = this.lastTotal - this.lastNeed;
- var r = utf8CheckExtraBytes(this, buf, p);
- if (r !== undefined) return r;
- if (this.lastNeed <= buf.length) {
- buf.copy(this.lastChar, p, 0, this.lastNeed);
- return this.lastChar.toString(this.encoding, 0, this.lastTotal);
- }
- buf.copy(this.lastChar, p, 0, buf.length);
- this.lastNeed -= buf.length;
-}
-
-// Returns all complete UTF-8 characters in a Buffer. If the Buffer ended on a
-// partial character, the character's bytes are buffered until the required
-// number of bytes are available.
-function utf8Text(buf, i) {
- var total = utf8CheckIncomplete(this, buf, i);
- if (!this.lastNeed) return buf.toString('utf8', i);
- this.lastTotal = total;
- var end = buf.length - (total - this.lastNeed);
- buf.copy(this.lastChar, 0, end);
- return buf.toString('utf8', i, end);
-}
-
-// For UTF-8, a replacement character is added when ending on a partial
-// character.
-function utf8End(buf) {
- var r = buf && buf.length ? this.write(buf) : '';
- if (this.lastNeed) return r + '\ufffd';
- return r;
-}
-
-// UTF-16LE typically needs two bytes per character, but even if we have an even
-// number of bytes available, we need to check if we end on a leading/high
-// surrogate. In that case, we need to wait for the next two bytes in order to
-// decode the last character properly.
-function utf16Text(buf, i) {
- if ((buf.length - i) % 2 === 0) {
- var r = buf.toString('utf16le', i);
- if (r) {
- var c = r.charCodeAt(r.length - 1);
- if (c >= 0xD800 && c <= 0xDBFF) {
- this.lastNeed = 2;
- this.lastTotal = 4;
- this.lastChar[0] = buf[buf.length - 2];
- this.lastChar[1] = buf[buf.length - 1];
- return r.slice(0, -1);
- }
- }
- return r;
- }
- this.lastNeed = 1;
- this.lastTotal = 2;
- this.lastChar[0] = buf[buf.length - 1];
- return buf.toString('utf16le', i, buf.length - 1);
-}
-
-// For UTF-16LE we do not explicitly append special replacement characters if we
-// end on a partial character, we simply let v8 handle that.
-function utf16End(buf) {
- var r = buf && buf.length ? this.write(buf) : '';
- if (this.lastNeed) {
- var end = this.lastTotal - this.lastNeed;
- return r + this.lastChar.toString('utf16le', 0, end);
- }
- return r;
-}
-
-function base64Text(buf, i) {
- var n = (buf.length - i) % 3;
- if (n === 0) return buf.toString('base64', i);
- this.lastNeed = 3 - n;
- this.lastTotal = 3;
- if (n === 1) {
- this.lastChar[0] = buf[buf.length - 1];
- } else {
- this.lastChar[0] = buf[buf.length - 2];
- this.lastChar[1] = buf[buf.length - 1];
- }
- return buf.toString('base64', i, buf.length - n);
-}
-
-function base64End(buf) {
- var r = buf && buf.length ? this.write(buf) : '';
- if (this.lastNeed) return r + this.lastChar.toString('base64', 0, 3 - this.lastNeed);
- return r;
-}
-
-// Pass bytes on through for single-byte encodings (e.g. ascii, latin1, hex)
-function simpleWrite(buf) {
- return buf.toString(this.encoding);
-}
-
-function simpleEnd(buf) {
- return buf && buf.length ? this.write(buf) : '';
-}
-},{"safe-buffer":89}],91:[function(_dereq_,module,exports){
-exports = module.exports = _dereq_('./lib/_stream_readable.js');
-exports.Stream = exports;
-exports.Readable = exports;
-exports.Writable = _dereq_('./lib/_stream_writable.js');
-exports.Duplex = _dereq_('./lib/_stream_duplex.js');
-exports.Transform = _dereq_('./lib/_stream_transform.js');
-exports.PassThrough = _dereq_('./lib/_stream_passthrough.js');
-
-},{"./lib/_stream_duplex.js":81,"./lib/_stream_passthrough.js":82,"./lib/_stream_readable.js":83,"./lib/_stream_transform.js":84,"./lib/_stream_writable.js":85}],92:[function(_dereq_,module,exports){
-/*! safe-buffer. MIT License. Feross Aboukhadijeh */
-/* eslint-disable node/no-deprecated-api */
-var buffer = _dereq_('buffer')
-var Buffer = buffer.Buffer
-
-// alternative to using Object.keys for old browsers
-function copyProps (src, dst) {
- for (var key in src) {
- dst[key] = src[key]
- }
-}
-if (Buffer.from && Buffer.alloc && Buffer.allocUnsafe && Buffer.allocUnsafeSlow) {
- module.exports = buffer
-} else {
- // Copy properties from require('buffer')
- copyProps(buffer, exports)
- exports.Buffer = SafeBuffer
-}
-
-function SafeBuffer (arg, encodingOrOffset, length) {
- return Buffer(arg, encodingOrOffset, length)
-}
-
-SafeBuffer.prototype = Object.create(Buffer.prototype)
-
-// Copy static methods from Buffer
-copyProps(Buffer, SafeBuffer)
-
-SafeBuffer.from = function (arg, encodingOrOffset, length) {
- if (typeof arg === 'number') {
- throw new TypeError('Argument must not be a number')
- }
- return Buffer(arg, encodingOrOffset, length)
-}
-
-SafeBuffer.alloc = function (size, fill, encoding) {
- if (typeof size !== 'number') {
- throw new TypeError('Argument must be a number')
- }
- var buf = Buffer(size)
- if (fill !== undefined) {
- if (typeof encoding === 'string') {
- buf.fill(fill, encoding)
- } else {
- buf.fill(fill)
- }
- } else {
- buf.fill(0)
- }
- return buf
-}
-
-SafeBuffer.allocUnsafe = function (size) {
- if (typeof size !== 'number') {
- throw new TypeError('Argument must be a number')
- }
- return Buffer(size)
-}
-
-SafeBuffer.allocUnsafeSlow = function (size) {
- if (typeof size !== 'number') {
- throw new TypeError('Argument must be a number')
- }
- return buffer.SlowBuffer(size)
-}
-
-},{"buffer":18}],93:[function(_dereq_,module,exports){
-var hasProp = Object.prototype.hasOwnProperty;
-
-function throwsMessage(err) {
- return '[Throws: ' + (err ? err.message : '?') + ']';
-}
-
-function safeGetValueFromPropertyOnObject(obj, property) {
- if (hasProp.call(obj, property)) {
- try {
- return obj[property];
- }
- catch (err) {
- return throwsMessage(err);
- }
- }
-
- return obj[property];
-}
-
-function ensureProperties(obj) {
- var seen = [ ]; // store references to objects we have seen before
-
- function visit(obj) {
- if (obj === null || typeof obj !== 'object') {
- return obj;
- }
-
- if (seen.indexOf(obj) !== -1) {
- return '[Circular]';
- }
- seen.push(obj);
-
- if (typeof obj.toJSON === 'function') {
- try {
- var fResult = visit(obj.toJSON());
- seen.pop();
- return fResult;
- } catch(err) {
- return throwsMessage(err);
- }
- }
-
- if (Array.isArray(obj)) {
- var aResult = obj.map(visit);
- seen.pop();
- return aResult;
- }
-
- var result = Object.keys(obj).reduce(function(result, prop) {
- // prevent faulty defined getter properties
- result[prop] = visit(safeGetValueFromPropertyOnObject(obj, prop));
- return result;
- }, {});
- seen.pop();
- return result;
- };
-
- return visit(obj);
-}
-
-module.exports = function(data, replacer, space) {
- return JSON.stringify(ensureProperties(data), replacer, space);
-}
-
-module.exports.ensureProperties = ensureProperties;
-
-},{}],94:[function(_dereq_,module,exports){
-'use strict';
-
-var GetIntrinsic = _dereq_('get-intrinsic');
-var define = _dereq_('define-data-property');
-var hasDescriptors = _dereq_('has-property-descriptors')();
-var gOPD = _dereq_('gopd');
-
-var $TypeError = _dereq_('es-errors/type');
-var $floor = GetIntrinsic('%Math.floor%');
-
-/** @type {import('.')} */
-module.exports = function setFunctionLength(fn, length) {
- if (typeof fn !== 'function') {
- throw new $TypeError('`fn` is not a function');
- }
- if (typeof length !== 'number' || length < 0 || length > 0xFFFFFFFF || $floor(length) !== length) {
- throw new $TypeError('`length` must be a positive 32-bit integer');
- }
-
- var loose = arguments.length > 2 && !!arguments[2];
-
- var functionLengthIsConfigurable = true;
- var functionLengthIsWritable = true;
- if ('length' in fn && gOPD) {
- var desc = gOPD(fn, 'length');
- if (desc && !desc.configurable) {
- functionLengthIsConfigurable = false;
- }
- if (desc && !desc.writable) {
- functionLengthIsWritable = false;
- }
- }
-
- if (functionLengthIsConfigurable || functionLengthIsWritable || !loose) {
- if (hasDescriptors) {
- define(/** @type {Parameters[0]} */ (fn), 'length', length, true, true);
- } else {
- define(/** @type {Parameters[0]} */ (fn), 'length', length);
- }
- }
- return fn;
-};
-
-},{"define-data-property":28,"es-errors/type":41,"get-intrinsic":50,"gopd":54,"has-property-descriptors":55}],95:[function(_dereq_,module,exports){
-'use strict';
-
-var GetIntrinsic = _dereq_('get-intrinsic');
-var callBound = _dereq_('call-bind/callBound');
-var inspect = _dereq_('object-inspect');
-
-var $TypeError = _dereq_('es-errors/type');
-var $WeakMap = GetIntrinsic('%WeakMap%', true);
-var $Map = GetIntrinsic('%Map%', true);
-
-var $weakMapGet = callBound('WeakMap.prototype.get', true);
-var $weakMapSet = callBound('WeakMap.prototype.set', true);
-var $weakMapHas = callBound('WeakMap.prototype.has', true);
-var $mapGet = callBound('Map.prototype.get', true);
-var $mapSet = callBound('Map.prototype.set', true);
-var $mapHas = callBound('Map.prototype.has', true);
-
-/*
-* This function traverses the list returning the node corresponding to the given key.
-*
-* That node is also moved to the head of the list, so that if it's accessed again we don't need to traverse the whole list. By doing so, all the recently used nodes can be accessed relatively quickly.
-*/
-/** @type {import('.').listGetNode} */
-var listGetNode = function (list, key) { // eslint-disable-line consistent-return
- /** @type {typeof list | NonNullable<(typeof list)['next']>} */
- var prev = list;
- /** @type {(typeof list)['next']} */
- var curr;
- for (; (curr = prev.next) !== null; prev = curr) {
- if (curr.key === key) {
- prev.next = curr.next;
- // eslint-disable-next-line no-extra-parens
- curr.next = /** @type {NonNullable} */ (list.next);
- list.next = curr; // eslint-disable-line no-param-reassign
- return curr;
- }
- }
-};
-
-/** @type {import('.').listGet} */
-var listGet = function (objects, key) {
- var node = listGetNode(objects, key);
- return node && node.value;
-};
-/** @type {import('.').listSet} */
-var listSet = function (objects, key, value) {
- var node = listGetNode(objects, key);
- if (node) {
- node.value = value;
- } else {
- // Prepend the new node to the beginning of the list
- objects.next = /** @type {import('.').ListNode} */ ({ // eslint-disable-line no-param-reassign, no-extra-parens
- key: key,
- next: objects.next,
- value: value
- });
- }
-};
-/** @type {import('.').listHas} */
-var listHas = function (objects, key) {
- return !!listGetNode(objects, key);
-};
-
-/** @type {import('.')} */
-module.exports = function getSideChannel() {
- /** @type {WeakMap} */ var $wm;
- /** @type {Map} */ var $m;
- /** @type {import('.').RootNode} */ var $o;
-
- /** @type {import('.').Channel} */
- var channel = {
- assert: function (key) {
- if (!channel.has(key)) {
- throw new $TypeError('Side channel does not contain ' + inspect(key));
- }
- },
- get: function (key) { // eslint-disable-line consistent-return
- if ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {
- if ($wm) {
- return $weakMapGet($wm, key);
- }
- } else if ($Map) {
- if ($m) {
- return $mapGet($m, key);
- }
- } else {
- if ($o) { // eslint-disable-line no-lonely-if
- return listGet($o, key);
- }
- }
- },
- has: function (key) {
- if ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {
- if ($wm) {
- return $weakMapHas($wm, key);
- }
- } else if ($Map) {
- if ($m) {
- return $mapHas($m, key);
- }
- } else {
- if ($o) { // eslint-disable-line no-lonely-if
- return listHas($o, key);
- }
- }
- return false;
- },
- set: function (key, value) {
- if ($WeakMap && key && (typeof key === 'object' || typeof key === 'function')) {
- if (!$wm) {
- $wm = new $WeakMap();
- }
- $weakMapSet($wm, key, value);
- } else if ($Map) {
- if (!$m) {
- $m = new $Map();
- }
- $mapSet($m, key, value);
- } else {
- if (!$o) {
- // Initialize the linked list as an empty node, so that we don't have to special-case handling of the first node: we can always refer to it as (previous node).next, instead of something like (list).head
- $o = { key: {}, next: null };
- }
- listSet($o, key, value);
- }
- }
- };
- return channel;
-};
-
-},{"call-bind/callBound":19,"es-errors/type":41,"get-intrinsic":50,"object-inspect":70}],96:[function(_dereq_,module,exports){
-module.exports = shift
-
-function shift (stream) {
- var rs = stream._readableState
- if (!rs) return null
- return (rs.objectMode || typeof stream._duplexState === 'number') ? stream.read() : stream.read(getStateLength(rs))
-}
-
-function getStateLength (state) {
- if (state.buffer.length) {
- var idx = state.bufferIndex || 0
- // Since node 6.3.0 state.buffer is a BufferList not an array
- if (state.buffer.head) {
- return state.buffer.head.data.length
- } else if (state.buffer.length - idx > 0 && state.buffer[idx]) {
- return state.buffer[idx].length
- }
- }
-
- return state.length
-}
-
-},{}],97:[function(_dereq_,module,exports){
-"use strict";
-
-const defaults = ['use', 'on', 'once', 'set', 'query', 'type', 'accept', 'auth', 'withCredentials', 'sortQuery', 'retry', 'ok', 'redirects', 'timeout', 'buffer', 'serialize', 'parse', 'ca', 'key', 'pfx', 'cert', 'disableTLSCerts'];
-class Agent {
- constructor() {
- this._defaults = [];
- }
- _setDefaults(request) {
- for (const def of this._defaults) {
- request[def.fn](...def.args);
- }
- }
-}
-for (const fn of defaults) {
- // Default setting for all requests from this agent
- Agent.prototype[fn] = function () {
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
- args[_key] = arguments[_key];
- }
- this._defaults.push({
- fn,
- args
- });
- return this;
- };
-}
-module.exports = Agent;
-
-},{}],98:[function(_dereq_,module,exports){
-"use strict";
-
-/**
- * Root reference for iframes.
- */
-
-let root;
-if (typeof window !== 'undefined') {
- // Browser window
- root = window;
-} else if (typeof self === 'undefined') {
- // Other environments
- console.warn('Using browser-only version of superagent in non-browser environment');
- root = void 0;
-} else {
- // Web Worker
- root = self;
-}
-const Emitter = _dereq_('component-emitter');
-const safeStringify = _dereq_('fast-safe-stringify');
-const qs = _dereq_('qs');
-const RequestBase = _dereq_('./request-base');
-const {
- isObject,
- mixin,
- hasOwn
-} = _dereq_('./utils');
-const ResponseBase = _dereq_('./response-base');
-const Agent = _dereq_('./agent-base');
-
-/**
- * Noop.
- */
-
-function noop() {}
-
-/**
- * Expose `request`.
- */
-
-module.exports = function (method, url) {
- // callback
- if (typeof url === 'function') {
- return new exports.Request('GET', method).end(url);
- }
-
- // url first
- if (arguments.length === 1) {
- return new exports.Request('GET', method);
- }
- return new exports.Request(method, url);
-};
-exports = module.exports;
-const request = exports;
-exports.Request = Request;
-
-/**
- * Determine XHR.
- */
-
-request.getXHR = () => {
- if (root.XMLHttpRequest) {
- return new root.XMLHttpRequest();
- }
- throw new Error('Browser-only version of superagent could not find XHR');
-};
-
-/**
- * Removes leading and trailing whitespace, added to support IE.
- *
- * @param {String} s
- * @return {String}
- * @api private
- */
-
-const trim = ''.trim ? s => s.trim() : s => s.replace(/(^\s*|\s*$)/g, '');
-
-/**
- * Serialize the given `obj`.
- *
- * @param {Object} obj
- * @return {String}
- * @api private
- */
-
-function serialize(object) {
- if (!isObject(object)) return object;
- const pairs = [];
- for (const key in object) {
- if (hasOwn(object, key)) pushEncodedKeyValuePair(pairs, key, object[key]);
- }
- return pairs.join('&');
-}
-
-/**
- * Helps 'serialize' with serializing arrays.
- * Mutates the pairs array.
- *
- * @param {Array} pairs
- * @param {String} key
- * @param {Mixed} val
- */
-
-function pushEncodedKeyValuePair(pairs, key, value) {
- if (value === undefined) return;
- if (value === null) {
- pairs.push(encodeURI(key));
- return;
- }
- if (Array.isArray(value)) {
- for (const v of value) {
- pushEncodedKeyValuePair(pairs, key, v);
- }
- } else if (isObject(value)) {
- for (const subkey in value) {
- if (hasOwn(value, subkey)) pushEncodedKeyValuePair(pairs, `${key}[${subkey}]`, value[subkey]);
- }
- } else {
- pairs.push(encodeURI(key) + '=' + encodeURIComponent(value));
- }
-}
-
-/**
- * Expose serialization method.
- */
-
-request.serializeObject = serialize;
-
-/**
- * Parse the given x-www-form-urlencoded `str`.
- *
- * @param {String} str
- * @return {Object}
- * @api private
- */
-
-function parseString(string_) {
- const object = {};
- const pairs = string_.split('&');
- let pair;
- let pos;
- for (let i = 0, length_ = pairs.length; i < length_; ++i) {
- pair = pairs[i];
- pos = pair.indexOf('=');
- if (pos === -1) {
- object[decodeURIComponent(pair)] = '';
- } else {
- object[decodeURIComponent(pair.slice(0, pos))] = decodeURIComponent(pair.slice(pos + 1));
- }
- }
- return object;
-}
-
-/**
- * Expose parser.
- */
-
-request.parseString = parseString;
-
-/**
- * Default MIME type map.
- *
- * superagent.types.xml = 'application/xml';
- *
- */
-
-request.types = {
- html: 'text/html',
- json: 'application/json',
- xml: 'text/xml',
- urlencoded: 'application/x-www-form-urlencoded',
- form: 'application/x-www-form-urlencoded',
- 'form-data': 'application/x-www-form-urlencoded'
-};
-
-/**
- * Default serialization map.
- *
- * superagent.serialize['application/xml'] = function(obj){
- * return 'generated xml here';
- * };
- *
- */
-
-request.serialize = {
- 'application/x-www-form-urlencoded': obj => {
- return qs.stringify(obj, {
- indices: false,
- strictNullHandling: true
- });
- },
- 'application/json': safeStringify
-};
-
-/**
- * Default parsers.
- *
- * superagent.parse['application/xml'] = function(str){
- * return { object parsed from str };
- * };
- *
- */
-
-request.parse = {
- 'application/x-www-form-urlencoded': parseString,
- 'application/json': JSON.parse
-};
-
-/**
- * Parse the given header `str` into
- * an object containing the mapped fields.
- *
- * @param {String} str
- * @return {Object}
- * @api private
- */
-
-function parseHeader(string_) {
- const lines = string_.split(/\r?\n/);
- const fields = {};
- let index;
- let line;
- let field;
- let value;
- for (let i = 0, length_ = lines.length; i < length_; ++i) {
- line = lines[i];
- index = line.indexOf(':');
- if (index === -1) {
- // could be empty line, just skip it
- continue;
- }
- field = line.slice(0, index).toLowerCase();
- value = trim(line.slice(index + 1));
- fields[field] = value;
- }
- return fields;
-}
-
-/**
- * Check if `mime` is json or has +json structured syntax suffix.
- *
- * @param {String} mime
- * @return {Boolean}
- * @api private
- */
-
-function isJSON(mime) {
- // should match /json or +json
- // but not /json-seq
- return /[/+]json($|[^-\w])/i.test(mime);
-}
-
-/**
- * Initialize a new `Response` with the given `xhr`.
- *
- * - set flags (.ok, .error, etc)
- * - parse header
- *
- * Examples:
- *
- * Aliasing `superagent` as `request` is nice:
- *
- * request = superagent;
- *
- * We can use the promise-like API, or pass callbacks:
- *
- * request.get('/').end(function(res){});
- * request.get('/', function(res){});
- *
- * Sending data can be chained:
- *
- * request
- * .post('/user')
- * .send({ name: 'tj' })
- * .end(function(res){});
- *
- * Or passed to `.send()`:
- *
- * request
- * .post('/user')
- * .send({ name: 'tj' }, function(res){});
- *
- * Or passed to `.post()`:
- *
- * request
- * .post('/user', { name: 'tj' })
- * .end(function(res){});
- *
- * Or further reduced to a single call for simple cases:
- *
- * request
- * .post('/user', { name: 'tj' }, function(res){});
- *
- * @param {XMLHTTPRequest} xhr
- * @param {Object} options
- * @api private
- */
-
-function Response(request_) {
- this.req = request_;
- this.xhr = this.req.xhr;
- // responseText is accessible only if responseType is '' or 'text' and on older browsers
- this.text = this.req.method !== 'HEAD' && (this.xhr.responseType === '' || this.xhr.responseType === 'text') || typeof this.xhr.responseType === 'undefined' ? this.xhr.responseText : null;
- this.statusText = this.req.xhr.statusText;
- let {
- status
- } = this.xhr;
- // handle IE9 bug: http://stackoverflow.com/questions/10046972/msie-returns-status-code-of-1223-for-ajax-request
- if (status === 1223) {
- status = 204;
- }
- this._setStatusProperties(status);
- this.headers = parseHeader(this.xhr.getAllResponseHeaders());
- this.header = this.headers;
- // getAllResponseHeaders sometimes falsely returns "" for CORS requests, but
- // getResponseHeader still works. so we get content-type even if getting
- // other headers fails.
- this.header['content-type'] = this.xhr.getResponseHeader('content-type');
- this._setHeaderProperties(this.header);
- if (this.text === null && request_._responseType) {
- this.body = this.xhr.response;
- } else {
- this.body = this.req.method === 'HEAD' ? null : this._parseBody(this.text ? this.text : this.xhr.response);
- }
-}
-mixin(Response.prototype, ResponseBase.prototype);
-
-/**
- * Parse the given body `str`.
- *
- * Used for auto-parsing of bodies. Parsers
- * are defined on the `superagent.parse` object.
- *
- * @param {String} str
- * @return {Mixed}
- * @api private
- */
-
-Response.prototype._parseBody = function (string_) {
- let parse = request.parse[this.type];
- if (this.req._parser) {
- return this.req._parser(this, string_);
- }
- if (!parse && isJSON(this.type)) {
- parse = request.parse['application/json'];
- }
- return parse && string_ && (string_.length > 0 || string_ instanceof Object) ? parse(string_) : null;
-};
-
-/**
- * Return an `Error` representative of this response.
- *
- * @return {Error}
- * @api public
- */
-
-Response.prototype.toError = function () {
- const {
- req
- } = this;
- const {
- method
- } = req;
- const {
- url
- } = req;
- const message = `cannot ${method} ${url} (${this.status})`;
- const error = new Error(message);
- error.status = this.status;
- error.method = method;
- error.url = url;
- return error;
-};
-
-/**
- * Expose `Response`.
- */
-
-request.Response = Response;
-
-/**
- * Initialize a new `Request` with the given `method` and `url`.
- *
- * @param {String} method
- * @param {String} url
- * @api public
- */
-
-function Request(method, url) {
- const self = this;
- this._query = this._query || [];
- this.method = method;
- this.url = url;
- this.header = {}; // preserves header name case
- this._header = {}; // coerces header names to lowercase
- this.on('end', () => {
- let error = null;
- let res = null;
- try {
- res = new Response(self);
- } catch (err) {
- error = new Error('Parser is unable to parse the response');
- error.parse = true;
- error.original = err;
- // issue #675: return the raw response if the response parsing fails
- if (self.xhr) {
- // ie9 doesn't have 'response' property
- error.rawResponse = typeof self.xhr.responseType === 'undefined' ? self.xhr.responseText : self.xhr.response;
- // issue #876: return the http status code if the response parsing fails
- error.status = self.xhr.status ? self.xhr.status : null;
- error.statusCode = error.status; // backwards-compat only
- } else {
- error.rawResponse = null;
- error.status = null;
- }
- return self.callback(error);
- }
- self.emit('response', res);
- let new_error;
- try {
- if (!self._isResponseOK(res)) {
- new_error = new Error(res.statusText || res.text || 'Unsuccessful HTTP response');
- }
- } catch (err) {
- new_error = err; // ok() callback can throw
- }
-
- // #1000 don't catch errors from the callback to avoid double calling it
- if (new_error) {
- new_error.original = error;
- new_error.response = res;
- new_error.status = new_error.status || res.status;
- self.callback(new_error, res);
- } else {
- self.callback(null, res);
- }
- });
-}
-
-/**
- * Mixin `Emitter` and `RequestBase`.
- */
-
-// eslint-disable-next-line new-cap
-Emitter(Request.prototype);
-mixin(Request.prototype, RequestBase.prototype);
-
-/**
- * Set Content-Type to `type`, mapping values from `request.types`.
- *
- * Examples:
- *
- * superagent.types.xml = 'application/xml';
- *
- * request.post('/')
- * .type('xml')
- * .send(xmlstring)
- * .end(callback);
- *
- * request.post('/')
- * .type('application/xml')
- * .send(xmlstring)
- * .end(callback);
- *
- * @param {String} type
- * @return {Request} for chaining
- * @api public
- */
-
-Request.prototype.type = function (type) {
- this.set('Content-Type', request.types[type] || type);
- return this;
-};
-
-/**
- * Set Accept to `type`, mapping values from `request.types`.
- *
- * Examples:
- *
- * superagent.types.json = 'application/json';
- *
- * request.get('/agent')
- * .accept('json')
- * .end(callback);
- *
- * request.get('/agent')
- * .accept('application/json')
- * .end(callback);
- *
- * @param {String} accept
- * @return {Request} for chaining
- * @api public
- */
-
-Request.prototype.accept = function (type) {
- this.set('Accept', request.types[type] || type);
- return this;
-};
-
-/**
- * Set Authorization field value with `user` and `pass`.
- *
- * @param {String} user
- * @param {String} [pass] optional in case of using 'bearer' as type
- * @param {Object} options with 'type' property 'auto', 'basic' or 'bearer' (default 'basic')
- * @return {Request} for chaining
- * @api public
- */
-
-Request.prototype.auth = function (user, pass, options) {
- if (arguments.length === 1) pass = '';
- if (typeof pass === 'object' && pass !== null) {
- // pass is optional and can be replaced with options
- options = pass;
- pass = '';
- }
- if (!options) {
- options = {
- type: typeof btoa === 'function' ? 'basic' : 'auto'
- };
- }
- const encoder = options.encoder ? options.encoder : string => {
- if (typeof btoa === 'function') {
- return btoa(string);
- }
- throw new Error('Cannot use basic auth, btoa is not a function');
- };
- return this._auth(user, pass, options, encoder);
-};
-
-/**
- * Add query-string `val`.
- *
- * Examples:
- *
- * request.get('/shoes')
- * .query('size=10')
- * .query({ color: 'blue' })
- *
- * @param {Object|String} val
- * @return {Request} for chaining
- * @api public
- */
-
-Request.prototype.query = function (value) {
- if (typeof value !== 'string') value = serialize(value);
- if (value) this._query.push(value);
- return this;
-};
-
-/**
- * Queue the given `file` as an attachment to the specified `field`,
- * with optional `options` (or filename).
- *
- * ``` js
- * request.post('/upload')
- * .attach('content', new Blob(['hey! '], { type: "text/html"}))
- * .end(callback);
- * ```
- *
- * @param {String} field
- * @param {Blob|File} file
- * @param {String|Object} options
- * @return {Request} for chaining
- * @api public
- */
-
-Request.prototype.attach = function (field, file, options) {
- if (file) {
- if (this._data) {
- throw new Error("superagent can't mix .send() and .attach()");
- }
- this._getFormData().append(field, file, options || file.name);
- }
- return this;
-};
-Request.prototype._getFormData = function () {
- if (!this._formData) {
- this._formData = new root.FormData();
- }
- return this._formData;
-};
-
-/**
- * Invoke the callback with `err` and `res`
- * and handle arity check.
- *
- * @param {Error} err
- * @param {Response} res
- * @api private
- */
-
-Request.prototype.callback = function (error, res) {
- if (this._shouldRetry(error, res)) {
- return this._retry();
- }
- const fn = this._callback;
- this.clearTimeout();
- if (error) {
- if (this._maxRetries) error.retries = this._retries - 1;
- this.emit('error', error);
- }
- fn(error, res);
-};
-
-/**
- * Invoke callback with x-domain error.
- *
- * @api private
- */
-
-Request.prototype.crossDomainError = function () {
- const error = new Error('Request has been terminated\nPossible causes: the network is offline, Origin is not allowed by Access-Control-Allow-Origin, the page is being unloaded, etc.');
- error.crossDomain = true;
- error.status = this.status;
- error.method = this.method;
- error.url = this.url;
- this.callback(error);
-};
-
-// This only warns, because the request is still likely to work
-Request.prototype.agent = function () {
- console.warn('This is not supported in browser version of superagent');
- return this;
-};
-Request.prototype.ca = Request.prototype.agent;
-Request.prototype.buffer = Request.prototype.ca;
-
-// This throws, because it can't send/receive data as expected
-Request.prototype.write = () => {
- throw new Error('Streaming is not supported in browser version of superagent');
-};
-Request.prototype.pipe = Request.prototype.write;
-
-/**
- * Check if `obj` is a host object,
- * we don't want to serialize these :)
- *
- * @param {Object} obj host object
- * @return {Boolean} is a host object
- * @api private
- */
-Request.prototype._isHost = function (object) {
- // Native objects stringify to [object File], [object Blob], [object FormData], etc.
- return object && typeof object === 'object' && !Array.isArray(object) && Object.prototype.toString.call(object) !== '[object Object]';
-};
-
-/**
- * Initiate request, invoking callback `fn(res)`
- * with an instanceof `Response`.
- *
- * @param {Function} fn
- * @return {Request} for chaining
- * @api public
- */
-
-Request.prototype.end = function (fn) {
- if (this._endCalled) {
- console.warn('Warning: .end() was called twice. This is not supported in superagent');
- }
- this._endCalled = true;
-
- // store callback
- this._callback = fn || noop;
-
- // querystring
- this._finalizeQueryString();
- this._end();
-};
-Request.prototype._setUploadTimeout = function () {
- const self = this;
-
- // upload timeout it's wokrs only if deadline timeout is off
- if (this._uploadTimeout && !this._uploadTimeoutTimer) {
- this._uploadTimeoutTimer = setTimeout(() => {
- self._timeoutError('Upload timeout of ', self._uploadTimeout, 'ETIMEDOUT');
- }, this._uploadTimeout);
- }
-};
-
-// eslint-disable-next-line complexity
-Request.prototype._end = function () {
- if (this._aborted) return this.callback(new Error('The request has been aborted even before .end() was called'));
- const self = this;
- this.xhr = request.getXHR();
- const {
- xhr
- } = this;
- let data = this._formData || this._data;
- this._setTimeouts();
-
- // state change
- xhr.addEventListener('readystatechange', () => {
- const {
- readyState
- } = xhr;
- if (readyState >= 2 && self._responseTimeoutTimer) {
- clearTimeout(self._responseTimeoutTimer);
- }
- if (readyState !== 4) {
- return;
- }
-
- // In IE9, reads to any property (e.g. status) off of an aborted XHR will
- // result in the error "Could not complete the operation due to error c00c023f"
- let status;
- try {
- status = xhr.status;
- } catch (err) {
- status = 0;
- }
- if (!status) {
- if (self.timedout || self._aborted) return;
- return self.crossDomainError();
- }
- self.emit('end');
- });
-
- // progress
- const handleProgress = (direction, e) => {
- if (e.total > 0) {
- e.percent = e.loaded / e.total * 100;
- if (e.percent === 100) {
- clearTimeout(self._uploadTimeoutTimer);
- }
- }
- e.direction = direction;
- self.emit('progress', e);
- };
- if (this.hasListeners('progress')) {
- try {
- xhr.addEventListener('progress', handleProgress.bind(null, 'download'));
- if (xhr.upload) {
- xhr.upload.addEventListener('progress', handleProgress.bind(null, 'upload'));
- }
- } catch (err) {
- // Accessing xhr.upload fails in IE from a web worker, so just pretend it doesn't exist.
- // Reported here:
- // https://connect.microsoft.com/IE/feedback/details/837245/xmlhttprequest-upload-throws-invalid-argument-when-used-from-web-worker-context
- }
- }
- if (xhr.upload) {
- this._setUploadTimeout();
- }
-
- // initiate request
- try {
- if (this.username && this.password) {
- xhr.open(this.method, this.url, true, this.username, this.password);
- } else {
- xhr.open(this.method, this.url, true);
- }
- } catch (err) {
- // see #1149
- return this.callback(err);
- }
-
- // CORS
- if (this._withCredentials) xhr.withCredentials = true;
-
- // body
- if (!this._formData && this.method !== 'GET' && this.method !== 'HEAD' && typeof data !== 'string' && !this._isHost(data)) {
- // serialize stuff
- const contentType = this._header['content-type'];
- let serialize = this._serializer || request.serialize[contentType ? contentType.split(';')[0] : ''];
- if (!serialize && isJSON(contentType)) {
- serialize = request.serialize['application/json'];
- }
- if (serialize) data = serialize(data);
- }
-
- // set header fields
- for (const field in this.header) {
- if (this.header[field] === null) continue;
- if (hasOwn(this.header, field)) xhr.setRequestHeader(field, this.header[field]);
- }
- if (this._responseType) {
- xhr.responseType = this._responseType;
- }
-
- // send stuff
- this.emit('request', this);
-
- // IE11 xhr.send(undefined) sends 'undefined' string as POST payload (instead of nothing)
- // We need null here if data is undefined
- xhr.send(typeof data === 'undefined' ? null : data);
-};
-request.agent = () => new Agent();
-for (const method of ['GET', 'POST', 'OPTIONS', 'PATCH', 'PUT', 'DELETE']) {
- Agent.prototype[method.toLowerCase()] = function (url, fn) {
- const request_ = new request.Request(method, url);
- this._setDefaults(request_);
- if (fn) {
- request_.end(fn);
- }
- return request_;
- };
-}
-Agent.prototype.del = Agent.prototype.delete;
-
-/**
- * GET `url` with optional callback `fn(res)`.
- *
- * @param {String} url
- * @param {Mixed|Function} [data] or fn
- * @param {Function} [fn]
- * @return {Request}
- * @api public
- */
-
-request.get = (url, data, fn) => {
- const request_ = request('GET', url);
- if (typeof data === 'function') {
- fn = data;
- data = null;
- }
- if (data) request_.query(data);
- if (fn) request_.end(fn);
- return request_;
-};
-
-/**
- * HEAD `url` with optional callback `fn(res)`.
- *
- * @param {String} url
- * @param {Mixed|Function} [data] or fn
- * @param {Function} [fn]
- * @return {Request}
- * @api public
- */
-
-request.head = (url, data, fn) => {
- const request_ = request('HEAD', url);
- if (typeof data === 'function') {
- fn = data;
- data = null;
- }
- if (data) request_.query(data);
- if (fn) request_.end(fn);
- return request_;
-};
-
-/**
- * OPTIONS query to `url` with optional callback `fn(res)`.
- *
- * @param {String} url
- * @param {Mixed|Function} [data] or fn
- * @param {Function} [fn]
- * @return {Request}
- * @api public
- */
-
-request.options = (url, data, fn) => {
- const request_ = request('OPTIONS', url);
- if (typeof data === 'function') {
- fn = data;
- data = null;
- }
- if (data) request_.send(data);
- if (fn) request_.end(fn);
- return request_;
-};
-
-/**
- * DELETE `url` with optional `data` and callback `fn(res)`.
- *
- * @param {String} url
- * @param {Mixed} [data]
- * @param {Function} [fn]
- * @return {Request}
- * @api public
- */
-
-function del(url, data, fn) {
- const request_ = request('DELETE', url);
- if (typeof data === 'function') {
- fn = data;
- data = null;
- }
- if (data) request_.send(data);
- if (fn) request_.end(fn);
- return request_;
-}
-request.del = del;
-request.delete = del;
-
-/**
- * PATCH `url` with optional `data` and callback `fn(res)`.
- *
- * @param {String} url
- * @param {Mixed} [data]
- * @param {Function} [fn]
- * @return {Request}
- * @api public
- */
-
-request.patch = (url, data, fn) => {
- const request_ = request('PATCH', url);
- if (typeof data === 'function') {
- fn = data;
- data = null;
- }
- if (data) request_.send(data);
- if (fn) request_.end(fn);
- return request_;
-};
-
-/**
- * POST `url` with optional `data` and callback `fn(res)`.
- *
- * @param {String} url
- * @param {Mixed} [data]
- * @param {Function} [fn]
- * @return {Request}
- * @api public
- */
-
-request.post = (url, data, fn) => {
- const request_ = request('POST', url);
- if (typeof data === 'function') {
- fn = data;
- data = null;
- }
- if (data) request_.send(data);
- if (fn) request_.end(fn);
- return request_;
-};
-
-/**
- * PUT `url` with optional `data` and callback `fn(res)`.
- *
- * @param {String} url
- * @param {Mixed|Function} [data] or fn
- * @param {Function} [fn]
- * @return {Request}
- * @api public
- */
-
-request.put = (url, data, fn) => {
- const request_ = request('PUT', url);
- if (typeof data === 'function') {
- fn = data;
- data = null;
- }
- if (data) request_.send(data);
- if (fn) request_.end(fn);
- return request_;
-};
-
-},{"./agent-base":97,"./request-base":99,"./response-base":100,"./utils":101,"component-emitter":23,"fast-safe-stringify":44,"qs":76}],99:[function(_dereq_,module,exports){
-"use strict";
-
-/**
- * Module of mixed-in functions shared between node and client code
- */
-const {
- isObject,
- hasOwn
-} = _dereq_('./utils');
-
-/**
- * Expose `RequestBase`.
- */
-
-module.exports = RequestBase;
-
-/**
- * Initialize a new `RequestBase`.
- *
- * @api public
- */
-
-function RequestBase() {}
-
-/**
- * Clear previous timeout.
- *
- * @return {Request} for chaining
- * @api public
- */
-
-RequestBase.prototype.clearTimeout = function () {
- clearTimeout(this._timer);
- clearTimeout(this._responseTimeoutTimer);
- clearTimeout(this._uploadTimeoutTimer);
- delete this._timer;
- delete this._responseTimeoutTimer;
- delete this._uploadTimeoutTimer;
- return this;
-};
-
-/**
- * Override default response body parser
- *
- * This function will be called to convert incoming data into request.body
- *
- * @param {Function}
- * @api public
- */
-
-RequestBase.prototype.parse = function (fn) {
- this._parser = fn;
- return this;
-};
-
-/**
- * Set format of binary response body.
- * In browser valid formats are 'blob' and 'arraybuffer',
- * which return Blob and ArrayBuffer, respectively.
- *
- * In Node all values result in Buffer.
- *
- * Examples:
- *
- * req.get('/')
- * .responseType('blob')
- * .end(callback);
- *
- * @param {String} val
- * @return {Request} for chaining
- * @api public
- */
-
-RequestBase.prototype.responseType = function (value) {
- this._responseType = value;
- return this;
-};
-
-/**
- * Override default request body serializer
- *
- * This function will be called to convert data set via .send or .attach into payload to send
- *
- * @param {Function}
- * @api public
- */
-
-RequestBase.prototype.serialize = function (fn) {
- this._serializer = fn;
- return this;
-};
-
-/**
- * Set timeouts.
- *
- * - response timeout is time between sending request and receiving the first byte of the response. Includes DNS and connection time.
- * - deadline is the time from start of the request to receiving response body in full. If the deadline is too short large files may not load at all on slow connections.
- * - upload is the time since last bit of data was sent or received. This timeout works only if deadline timeout is off
- *
- * Value of 0 or false means no timeout.
- *
- * @param {Number|Object} ms or {response, deadline}
- * @return {Request} for chaining
- * @api public
- */
-
-RequestBase.prototype.timeout = function (options) {
- if (!options || typeof options !== 'object') {
- this._timeout = options;
- this._responseTimeout = 0;
- this._uploadTimeout = 0;
- return this;
- }
- for (const option in options) {
- if (hasOwn(options, option)) {
- switch (option) {
- case 'deadline':
- this._timeout = options.deadline;
- break;
- case 'response':
- this._responseTimeout = options.response;
- break;
- case 'upload':
- this._uploadTimeout = options.upload;
- break;
- default:
- console.warn('Unknown timeout option', option);
- }
- }
- }
- return this;
-};
-
-/**
- * Set number of retry attempts on error.
- *
- * Failed requests will be retried 'count' times if timeout or err.code >= 500.
- *
- * @param {Number} count
- * @param {Function} [fn]
- * @return {Request} for chaining
- * @api public
- */
-
-RequestBase.prototype.retry = function (count, fn) {
- // Default to 1 if no count passed or true
- if (arguments.length === 0 || count === true) count = 1;
- if (count <= 0) count = 0;
- this._maxRetries = count;
- this._retries = 0;
- this._retryCallback = fn;
- return this;
-};
-
-//
-// NOTE: we do not include ESOCKETTIMEDOUT because that is from `request` package
-//
-//
-// NOTE: we do not include EADDRINFO because it was removed from libuv in 2014
-//
-//
-//
-//
-// TODO: expose these as configurable defaults
-//
-const ERROR_CODES = new Set(['ETIMEDOUT', 'ECONNRESET', 'EADDRINUSE', 'ECONNREFUSED', 'EPIPE', 'ENOTFOUND', 'ENETUNREACH', 'EAI_AGAIN']);
-const STATUS_CODES = new Set([408, 413, 429, 500, 502, 503, 504, 521, 522, 524]);
-
-// TODO: we would need to make this easily configurable before adding it in (e.g. some might want to add POST)
-// const METHODS = new Set(['GET', 'PUT', 'HEAD', 'DELETE', 'OPTIONS', 'TRACE']);
-
-/**
- * Determine if a request should be retried.
- * (Inspired by https://github.com/sindresorhus/got#retry)
- *
- * @param {Error} err an error
- * @param {Response} [res] response
- * @returns {Boolean} if segment should be retried
- */
-RequestBase.prototype._shouldRetry = function (error, res) {
- if (!this._maxRetries || this._retries++ >= this._maxRetries) {
- return false;
- }
- if (this._retryCallback) {
- try {
- const override = this._retryCallback(error, res);
- if (override === true) return true;
- if (override === false) return false;
- // undefined falls back to defaults
- } catch (err) {
- console.error(err);
- }
- }
-
- // TODO: we would need to make this easily configurable before adding it in (e.g. some might want to add POST)
- /*
- if (
- this.req &&
- this.req.method &&
- !METHODS.has(this.req.method.toUpperCase())
- )
- return false;
- */
- if (res && res.status && STATUS_CODES.has(res.status)) return true;
- if (error) {
- if (error.code && ERROR_CODES.has(error.code)) return true;
- // Superagent timeout
- if (error.timeout && error.code === 'ECONNABORTED') return true;
- if (error.crossDomain) return true;
- }
- return false;
-};
-
-/**
- * Retry request
- *
- * @return {Request} for chaining
- * @api private
- */
-
-RequestBase.prototype._retry = function () {
- this.clearTimeout();
-
- // node
- if (this.req) {
- this.req = null;
- this.req = this.request();
- }
- this._aborted = false;
- this.timedout = false;
- this.timedoutError = null;
- return this._end();
-};
-
-/**
- * Promise support
- *
- * @param {Function} resolve
- * @param {Function} [reject]
- * @return {Request}
- */
-
-RequestBase.prototype.then = function (resolve, reject) {
- if (!this._fullfilledPromise) {
- const self = this;
- if (this._endCalled) {
- console.warn('Warning: superagent request was sent twice, because both .end() and .then() were called. Never call .end() if you use promises');
- }
- this._fullfilledPromise = new Promise((resolve, reject) => {
- self.on('abort', () => {
- if (this._maxRetries && this._maxRetries > this._retries) {
- return;
- }
- if (this.timedout && this.timedoutError) {
- reject(this.timedoutError);
- return;
- }
- const error = new Error('Aborted');
- error.code = 'ABORTED';
- error.status = this.status;
- error.method = this.method;
- error.url = this.url;
- reject(error);
- });
- self.end((error, res) => {
- if (error) reject(error);else resolve(res);
- });
- });
- }
- return this._fullfilledPromise.then(resolve, reject);
-};
-RequestBase.prototype.catch = function (callback) {
- return this.then(undefined, callback);
-};
-
-/**
- * Allow for extension
- */
-
-RequestBase.prototype.use = function (fn) {
- fn(this);
- return this;
-};
-RequestBase.prototype.ok = function (callback) {
- if (typeof callback !== 'function') throw new Error('Callback required');
- this._okCallback = callback;
- return this;
-};
-RequestBase.prototype._isResponseOK = function (res) {
- if (!res) {
- return false;
- }
- if (this._okCallback) {
- return this._okCallback(res);
- }
- return res.status >= 200 && res.status < 300;
-};
-
-/**
- * Get request header `field`.
- * Case-insensitive.
- *
- * @param {String} field
- * @return {String}
- * @api public
- */
-
-RequestBase.prototype.get = function (field) {
- return this._header[field.toLowerCase()];
-};
-
-/**
- * Get case-insensitive header `field` value.
- * This is a deprecated internal API. Use `.get(field)` instead.
- *
- * (getHeader is no longer used internally by the superagent code base)
- *
- * @param {String} field
- * @return {String}
- * @api private
- * @deprecated
- */
-
-RequestBase.prototype.getHeader = RequestBase.prototype.get;
-
-/**
- * Set header `field` to `val`, or multiple fields with one object.
- * Case-insensitive.
- *
- * Examples:
- *
- * req.get('/')
- * .set('Accept', 'application/json')
- * .set('X-API-Key', 'foobar')
- * .end(callback);
- *
- * req.get('/')
- * .set({ Accept: 'application/json', 'X-API-Key': 'foobar' })
- * .end(callback);
- *
- * @param {String|Object} field
- * @param {String} val
- * @return {Request} for chaining
- * @api public
- */
-
-RequestBase.prototype.set = function (field, value) {
- if (isObject(field)) {
- for (const key in field) {
- if (hasOwn(field, key)) this.set(key, field[key]);
- }
- return this;
- }
- this._header[field.toLowerCase()] = value;
- this.header[field] = value;
- return this;
-};
-
-/**
- * Remove header `field`.
- * Case-insensitive.
- *
- * Example:
- *
- * req.get('/')
- * .unset('User-Agent')
- * .end(callback);
- *
- * @param {String} field field name
- */
-RequestBase.prototype.unset = function (field) {
- delete this._header[field.toLowerCase()];
- delete this.header[field];
- return this;
-};
-
-/**
- * Write the field `name` and `val`, or multiple fields with one object
- * for "multipart/form-data" request bodies.
- *
- * ``` js
- * request.post('/upload')
- * .field('foo', 'bar')
- * .end(callback);
- *
- * request.post('/upload')
- * .field({ foo: 'bar', baz: 'qux' })
- * .end(callback);
- * ```
- *
- * @param {String|Object} name name of field
- * @param {String|Blob|File|Buffer|fs.ReadStream} val value of field
- * @param {String} options extra options, e.g. 'blob'
- * @return {Request} for chaining
- * @api public
- */
-RequestBase.prototype.field = function (name, value, options) {
- // name should be either a string or an object.
- if (name === null || undefined === name) {
- throw new Error('.field(name, val) name can not be empty');
- }
- if (this._data) {
- throw new Error(".field() can't be used if .send() is used. Please use only .send() or only .field() & .attach()");
- }
- if (isObject(name)) {
- for (const key in name) {
- if (hasOwn(name, key)) this.field(key, name[key]);
- }
- return this;
- }
- if (Array.isArray(value)) {
- for (const i in value) {
- if (hasOwn(value, i)) this.field(name, value[i]);
- }
- return this;
- }
-
- // val should be defined now
- if (value === null || undefined === value) {
- throw new Error('.field(name, val) val can not be empty');
- }
- if (typeof value === 'boolean') {
- value = String(value);
- }
-
- // fix https://github.com/ladjs/superagent/issues/1680
- if (options) this._getFormData().append(name, value, options);else this._getFormData().append(name, value);
- return this;
-};
-
-/**
- * Abort the request, and clear potential timeout.
- *
- * @return {Request} request
- * @api public
- */
-RequestBase.prototype.abort = function () {
- if (this._aborted) {
- return this;
- }
- this._aborted = true;
- if (this.xhr) this.xhr.abort(); // browser
- if (this.req) {
- this.req.abort(); // node
- }
- this.clearTimeout();
- this.emit('abort');
- return this;
-};
-RequestBase.prototype._auth = function (user, pass, options, base64Encoder) {
- switch (options.type) {
- case 'basic':
- this.set('Authorization', `Basic ${base64Encoder(`${user}:${pass}`)}`);
- break;
- case 'auto':
- this.username = user;
- this.password = pass;
- break;
- case 'bearer':
- // usage would be .auth(accessToken, { type: 'bearer' })
- this.set('Authorization', `Bearer ${user}`);
- break;
- default:
- break;
- }
- return this;
-};
-
-/**
- * Enable transmission of cookies with x-domain requests.
- *
- * Note that for this to work the origin must not be
- * using "Access-Control-Allow-Origin" with a wildcard,
- * and also must set "Access-Control-Allow-Credentials"
- * to "true".
- * @param {Boolean} [on=true] - Set 'withCredentials' state
- * @return {Request} for chaining
- * @api public
- */
-
-RequestBase.prototype.withCredentials = function (on) {
- // This is browser-only functionality. Node side is no-op.
- if (on === undefined) on = true;
- this._withCredentials = on;
- return this;
-};
-
-/**
- * Set the max redirects to `n`. Does nothing in browser XHR implementation.
- *
- * @param {Number} n
- * @return {Request} for chaining
- * @api public
- */
-
-RequestBase.prototype.redirects = function (n) {
- this._maxRedirects = n;
- return this;
-};
-
-/**
- * Maximum size of buffered response body, in bytes. Counts uncompressed size.
- * Default 200MB.
- *
- * @param {Number} n number of bytes
- * @return {Request} for chaining
- */
-RequestBase.prototype.maxResponseSize = function (n) {
- if (typeof n !== 'number') {
- throw new TypeError('Invalid argument');
- }
- this._maxResponseSize = n;
- return this;
-};
-
-/**
- * Convert to a plain javascript object (not JSON string) of scalar properties.
- * Note as this method is designed to return a useful non-this value,
- * it cannot be chained.
- *
- * @return {Object} describing method, url, and data of this request
- * @api public
- */
-
-RequestBase.prototype.toJSON = function () {
- return {
- method: this.method,
- url: this.url,
- data: this._data,
- headers: this._header
- };
-};
-
-/**
- * Send `data` as the request body, defaulting the `.type()` to "json" when
- * an object is given.
- *
- * Examples:
- *
- * // manual json
- * request.post('/user')
- * .type('json')
- * .send('{"name":"tj"}')
- * .end(callback)
- *
- * // auto json
- * request.post('/user')
- * .send({ name: 'tj' })
- * .end(callback)
- *
- * // manual x-www-form-urlencoded
- * request.post('/user')
- * .type('form')
- * .send('name=tj')
- * .end(callback)
- *
- * // auto x-www-form-urlencoded
- * request.post('/user')
- * .type('form')
- * .send({ name: 'tj' })
- * .end(callback)
- *
- * // defaults to x-www-form-urlencoded
- * request.post('/user')
- * .send('name=tobi')
- * .send('species=ferret')
- * .end(callback)
- *
- * @param {String|Object} data
- * @return {Request} for chaining
- * @api public
- */
-
-// eslint-disable-next-line complexity
-RequestBase.prototype.send = function (data) {
- const isObject_ = isObject(data);
- let type = this._header['content-type'];
- if (this._formData) {
- throw new Error(".send() can't be used if .attach() or .field() is used. Please use only .send() or only .field() & .attach()");
- }
- if (isObject_ && !this._data) {
- if (Array.isArray(data)) {
- this._data = [];
- } else if (!this._isHost(data)) {
- this._data = {};
- }
- } else if (data && this._data && this._isHost(this._data)) {
- throw new Error("Can't merge these send calls");
- }
-
- // merge
- if (isObject_ && isObject(this._data)) {
- for (const key in data) {
- if (typeof data[key] == 'bigint' && !data[key].toJSON) throw new Error('Cannot serialize BigInt value to json');
- if (hasOwn(data, key)) this._data[key] = data[key];
- }
- } else if (typeof data === 'bigint') throw new Error("Cannot send value of type BigInt");else if (typeof data === 'string') {
- // default to x-www-form-urlencoded
- if (!type) this.type('form');
- type = this._header['content-type'];
- if (type) type = type.toLowerCase().trim();
- if (type === 'application/x-www-form-urlencoded') {
- this._data = this._data ? `${this._data}&${data}` : data;
- } else {
- this._data = (this._data || '') + data;
- }
- } else {
- this._data = data;
- }
- if (!isObject_ || this._isHost(data)) {
- return this;
- }
-
- // default to json
- if (!type) this.type('json');
- return this;
-};
-
-/**
- * Sort `querystring` by the sort function
- *
- *
- * Examples:
- *
- * // default order
- * request.get('/user')
- * .query('name=Nick')
- * .query('search=Manny')
- * .sortQuery()
- * .end(callback)
- *
- * // customized sort function
- * request.get('/user')
- * .query('name=Nick')
- * .query('search=Manny')
- * .sortQuery(function(a, b){
- * return a.length - b.length;
- * })
- * .end(callback)
- *
- *
- * @param {Function} sort
- * @return {Request} for chaining
- * @api public
- */
-
-RequestBase.prototype.sortQuery = function (sort) {
- // _sort default to true but otherwise can be a function or boolean
- this._sort = typeof sort === 'undefined' ? true : sort;
- return this;
-};
-
-/**
- * Compose querystring to append to req.url
- *
- * @api private
- */
-RequestBase.prototype._finalizeQueryString = function () {
- const query = this._query.join('&');
- if (query) {
- this.url += (this.url.includes('?') ? '&' : '?') + query;
- }
- this._query.length = 0; // Makes the call idempotent
-
- if (this._sort) {
- const index = this.url.indexOf('?');
- if (index >= 0) {
- const queryArray = this.url.slice(index + 1).split('&');
- if (typeof this._sort === 'function') {
- queryArray.sort(this._sort);
- } else {
- queryArray.sort();
- }
- this.url = this.url.slice(0, index) + '?' + queryArray.join('&');
- }
- }
-};
-
-// For backwards compat only
-RequestBase.prototype._appendQueryString = () => {
- console.warn('Unsupported');
-};
-
-/**
- * Invoke callback with timeout error.
- *
- * @api private
- */
-
-RequestBase.prototype._timeoutError = function (reason, timeout, errno) {
- if (this._aborted) {
- return;
- }
- const error = new Error(`${reason + timeout}ms exceeded`);
- error.timeout = timeout;
- error.code = 'ECONNABORTED';
- error.errno = errno;
- this.timedout = true;
- this.timedoutError = error;
- this.abort();
- this.callback(error);
-};
-RequestBase.prototype._setTimeouts = function () {
- const self = this;
-
- // deadline
- if (this._timeout && !this._timer) {
- this._timer = setTimeout(() => {
- self._timeoutError('Timeout of ', self._timeout, 'ETIME');
- }, this._timeout);
- }
-
- // response timeout
- if (this._responseTimeout && !this._responseTimeoutTimer) {
- this._responseTimeoutTimer = setTimeout(() => {
- self._timeoutError('Response timeout of ', self._responseTimeout, 'ETIMEDOUT');
- }, this._responseTimeout);
- }
-};
-
-},{"./utils":101}],100:[function(_dereq_,module,exports){
-"use strict";
-
-/**
- * Module dependencies.
- */
-
-const utils = _dereq_('./utils');
-
-/**
- * Expose `ResponseBase`.
- */
-
-module.exports = ResponseBase;
-
-/**
- * Initialize a new `ResponseBase`.
- *
- * @api public
- */
-
-function ResponseBase() {}
-
-/**
- * Get case-insensitive `field` value.
- *
- * @param {String} field
- * @return {String}
- * @api public
- */
-
-ResponseBase.prototype.get = function (field) {
- return this.header[field.toLowerCase()];
-};
-
-/**
- * Set header related properties:
- *
- * - `.type` the content type without params
- *
- * A response of "Content-Type: text/plain; charset=utf-8"
- * will provide you with a `.type` of "text/plain".
- *
- * @param {Object} header
- * @api private
- */
-
-ResponseBase.prototype._setHeaderProperties = function (header) {
- // TODO: moar!
- // TODO: make this a util
-
- // content-type
- const ct = header['content-type'] || '';
- this.type = utils.type(ct);
-
- // params
- const parameters = utils.params(ct);
- for (const key in parameters) {
- if (Object.prototype.hasOwnProperty.call(parameters, key)) this[key] = parameters[key];
- }
- this.links = {};
-
- // links
- try {
- if (header.link) {
- this.links = utils.parseLinks(header.link);
- }
- } catch (err) {
- // ignore
- }
-};
-
-/**
- * Set flags such as `.ok` based on `status`.
- *
- * For example a 2xx response will give you a `.ok` of __true__
- * whereas 5xx will be __false__ and `.error` will be __true__. The
- * `.clientError` and `.serverError` are also available to be more
- * specific, and `.statusType` is the class of error ranging from 1..5
- * sometimes useful for mapping respond colors etc.
- *
- * "sugar" properties are also defined for common cases. Currently providing:
- *
- * - .noContent
- * - .badRequest
- * - .unauthorized
- * - .notAcceptable
- * - .notFound
- *
- * @param {Number} status
- * @api private
- */
-
-ResponseBase.prototype._setStatusProperties = function (status) {
- const type = Math.trunc(status / 100);
-
- // status / class
- this.statusCode = status;
- this.status = this.statusCode;
- this.statusType = type;
-
- // basics
- this.info = type === 1;
- this.ok = type === 2;
- this.redirect = type === 3;
- this.clientError = type === 4;
- this.serverError = type === 5;
- this.error = type === 4 || type === 5 ? this.toError() : false;
-
- // sugar
- this.created = status === 201;
- this.accepted = status === 202;
- this.noContent = status === 204;
- this.badRequest = status === 400;
- this.unauthorized = status === 401;
- this.notAcceptable = status === 406;
- this.forbidden = status === 403;
- this.notFound = status === 404;
- this.unprocessableEntity = status === 422;
-};
-
-},{"./utils":101}],101:[function(_dereq_,module,exports){
-"use strict";
-
-/**
- * Return the mime type for the given `str`.
- *
- * @param {String} str
- * @return {String}
- * @api private
- */
-
-exports.type = string_ => string_.split(/ *; */).shift();
-
-/**
- * Return header field parameters.
- *
- * @param {String} str
- * @return {Object}
- * @api private
- */
-
-exports.params = value => {
- const object = {};
- for (const string_ of value.split(/ *; */)) {
- const parts = string_.split(/ *= */);
- const key = parts.shift();
- const value = parts.shift();
- if (key && value) object[key] = value;
- }
- return object;
-};
-
-/**
- * Parse Link header fields.
- *
- * @param {String} str
- * @return {Object}
- * @api private
- */
-
-exports.parseLinks = value => {
- const object = {};
- for (const string_ of value.split(/ *, */)) {
- const parts = string_.split(/ *; */);
- const url = parts[0].slice(1, -1);
- const rel = parts[1].split(/ *= */)[1].slice(1, -1);
- object[rel] = url;
- }
- return object;
-};
-
-/**
- * Strip content related fields from `header`.
- *
- * @param {Object} header
- * @return {Object} header
- * @api private
- */
-
-exports.cleanHeader = (header, changesOrigin) => {
- delete header['content-type'];
- delete header['content-length'];
- delete header['transfer-encoding'];
- delete header.host;
- // secuirty
- if (changesOrigin) {
- delete header.authorization;
- delete header.cookie;
- }
- return header;
-};
-
-/**
- * Check if `obj` is an object.
- *
- * @param {Object} object
- * @return {Boolean}
- * @api private
- */
-exports.isObject = object => {
- return object !== null && typeof object === 'object';
-};
-
-/**
- * Object.hasOwn fallback/polyfill.
- *
- * @type {(object: object, property: string) => boolean} object
- * @api private
- */
-exports.hasOwn = Object.hasOwn || function (object, property) {
- if (object == null) {
- throw new TypeError('Cannot convert undefined or null to object');
- }
- return Object.prototype.hasOwnProperty.call(new Object(object), property);
-};
-exports.mixin = (target, source) => {
- for (const key in source) {
- if (exports.hasOwn(source, key)) {
- target[key] = source[key];
- }
- }
-};
-
-/**
- * Check if the response is compressed using Gzip or Deflate.
- * @param {Object} res
- * @return {Boolean}
- */
-
-exports.isGzipOrDeflateEncoding = res => {
- return new RegExp(/^\s*(?:deflate|gzip)\s*$/).test(res.headers['content-encoding']);
-};
-
-/**
- * Check if the response is compressed using Brotli.
- * @param {Object} res
- * @return {Boolean}
- */
-
-exports.isBrotliEncoding = res => {
- return new RegExp(/^\s*(?:br)\s*$/).test(res.headers['content-encoding']);
-};
-
-},{}],102:[function(_dereq_,module,exports){
-(function (setImmediate,clearImmediate){(function (){
-var nextTick = _dereq_('process/browser.js').nextTick;
-var apply = Function.prototype.apply;
-var slice = Array.prototype.slice;
-var immediateIds = {};
-var nextImmediateId = 0;
-
-// DOM APIs, for completeness
-
-exports.setTimeout = function() {
- return new Timeout(apply.call(setTimeout, window, arguments), clearTimeout);
-};
-exports.setInterval = function() {
- return new Timeout(apply.call(setInterval, window, arguments), clearInterval);
-};
-exports.clearTimeout =
-exports.clearInterval = function(timeout) { timeout.close(); };
-
-function Timeout(id, clearFn) {
- this._id = id;
- this._clearFn = clearFn;
-}
-Timeout.prototype.unref = Timeout.prototype.ref = function() {};
-Timeout.prototype.close = function() {
- this._clearFn.call(window, this._id);
-};
-
-// Does not start the time, just sets up the members needed.
-exports.enroll = function(item, msecs) {
- clearTimeout(item._idleTimeoutId);
- item._idleTimeout = msecs;
-};
-
-exports.unenroll = function(item) {
- clearTimeout(item._idleTimeoutId);
- item._idleTimeout = -1;
-};
-
-exports._unrefActive = exports.active = function(item) {
- clearTimeout(item._idleTimeoutId);
-
- var msecs = item._idleTimeout;
- if (msecs >= 0) {
- item._idleTimeoutId = setTimeout(function onTimeout() {
- if (item._onTimeout)
- item._onTimeout();
- }, msecs);
- }
-};
-
-// That's not how node.js implements it but the exposed api is the same.
-exports.setImmediate = typeof setImmediate === "function" ? setImmediate : function(fn) {
- var id = nextImmediateId++;
- var args = arguments.length < 2 ? false : slice.call(arguments, 1);
-
- immediateIds[id] = true;
-
- nextTick(function onNextTick() {
- if (immediateIds[id]) {
- // fn.call() is faster so we optimize for the common use-case
- // @see http://jsperf.com/call-apply-segu
- if (args) {
- fn.apply(null, args);
- } else {
- fn.call(null);
- }
- // Prevent ids from leaking
- exports.clearImmediate(id);
- }
- });
-
- return id;
-};
-
-exports.clearImmediate = typeof clearImmediate === "function" ? clearImmediate : function(id) {
- delete immediateIds[id];
-};
-}).call(this)}).call(this,_dereq_("timers").setImmediate,_dereq_("timers").clearImmediate)
-},{"process/browser.js":74,"timers":102}],103:[function(_dereq_,module,exports){
-(function (Buffer){(function (){
-/*! typedarray-to-buffer. MIT License. Feross Aboukhadijeh */
-/**
- * Convert a typed array to a Buffer without a copy
- *
- * Author: Feross Aboukhadijeh
- * License: MIT
- *
- * `npm install typedarray-to-buffer`
- */
-
-module.exports = function typedarrayToBuffer (arr) {
- return ArrayBuffer.isView(arr)
- // To avoid a copy, use the typed array's underlying ArrayBuffer to back
- // new Buffer, respecting the "view", i.e. byteOffset and byteLength
- ? Buffer.from(arr.buffer, arr.byteOffset, arr.byteLength)
- // Pass through all other types to `Buffer.from`
- : Buffer.from(arr)
-}
-
-}).call(this)}).call(this,_dereq_("buffer").Buffer)
-},{"buffer":18}],104:[function(_dereq_,module,exports){
-/////////////////////////////////////////////////////////////////////////////////
-/* UAParser.js v1.0.39
- Copyright © 2012-2021 Faisal Salman
- MIT License *//*
- Detect Browser, Engine, OS, CPU, and Device type/model from User-Agent data.
- Supports browser & node.js environment.
- Demo : https://faisalman.github.io/ua-parser-js
- Source : https://github.com/faisalman/ua-parser-js */
-/////////////////////////////////////////////////////////////////////////////////
-
-(function (window, undefined) {
-
- 'use strict';
-
- //////////////
- // Constants
- /////////////
-
-
- var LIBVERSION = '1.0.39',
- EMPTY = '',
- UNKNOWN = '?',
- FUNC_TYPE = 'function',
- UNDEF_TYPE = 'undefined',
- OBJ_TYPE = 'object',
- STR_TYPE = 'string',
- MAJOR = 'major',
- MODEL = 'model',
- NAME = 'name',
- TYPE = 'type',
- VENDOR = 'vendor',
- VERSION = 'version',
- ARCHITECTURE= 'architecture',
- CONSOLE = 'console',
- MOBILE = 'mobile',
- TABLET = 'tablet',
- SMARTTV = 'smarttv',
- WEARABLE = 'wearable',
- EMBEDDED = 'embedded',
- UA_MAX_LENGTH = 500;
-
- var AMAZON = 'Amazon',
- APPLE = 'Apple',
- ASUS = 'ASUS',
- BLACKBERRY = 'BlackBerry',
- BROWSER = 'Browser',
- CHROME = 'Chrome',
- EDGE = 'Edge',
- FIREFOX = 'Firefox',
- GOOGLE = 'Google',
- HUAWEI = 'Huawei',
- LG = 'LG',
- MICROSOFT = 'Microsoft',
- MOTOROLA = 'Motorola',
- OPERA = 'Opera',
- SAMSUNG = 'Samsung',
- SHARP = 'Sharp',
- SONY = 'Sony',
- XIAOMI = 'Xiaomi',
- ZEBRA = 'Zebra',
- FACEBOOK = 'Facebook',
- CHROMIUM_OS = 'Chromium OS',
- MAC_OS = 'Mac OS',
- SUFFIX_BROWSER = ' Browser';
-
- ///////////
- // Helper
- //////////
-
- var extend = function (regexes, extensions) {
- var mergedRegexes = {};
- for (var i in regexes) {
- if (extensions[i] && extensions[i].length % 2 === 0) {
- mergedRegexes[i] = extensions[i].concat(regexes[i]);
- } else {
- mergedRegexes[i] = regexes[i];
- }
- }
- return mergedRegexes;
- },
- enumerize = function (arr) {
- var enums = {};
- for (var i=0; i 0) {
- if (q.length === 2) {
- if (typeof q[1] == FUNC_TYPE) {
- // assign modified match
- this[q[0]] = q[1].call(this, match);
- } else {
- // assign given value, ignore regex match
- this[q[0]] = q[1];
- }
- } else if (q.length === 3) {
- // check whether function or regex
- if (typeof q[1] === FUNC_TYPE && !(q[1].exec && q[1].test)) {
- // call function (usually string mapper)
- this[q[0]] = match ? q[1].call(this, match, q[2]) : undefined;
- } else {
- // sanitize match using given regex
- this[q[0]] = match ? match.replace(q[1], q[2]) : undefined;
- }
- } else if (q.length === 4) {
- this[q[0]] = match ? q[3].call(this, match.replace(q[1], q[2])) : undefined;
- }
- } else {
- this[q] = match ? match : undefined;
- }
- }
- }
- }
- i += 2;
- }
- },
-
- strMapper = function (str, map) {
-
- for (var i in map) {
- // check if current value is array
- if (typeof map[i] === OBJ_TYPE && map[i].length > 0) {
- for (var j = 0; j < map[i].length; j++) {
- if (has(map[i][j], str)) {
- return (i === UNKNOWN) ? undefined : i;
- }
- }
- } else if (has(map[i], str)) {
- return (i === UNKNOWN) ? undefined : i;
- }
- }
- return map.hasOwnProperty('*') ? map['*'] : str;
- };
-
- ///////////////
- // String map
- //////////////
-
- // Safari < 3.0
- var oldSafariMap = {
- '1.0' : '/8',
- '1.2' : '/1',
- '1.3' : '/3',
- '2.0' : '/412',
- '2.0.2' : '/416',
- '2.0.3' : '/417',
- '2.0.4' : '/419',
- '?' : '/'
- },
- windowsVersionMap = {
- 'ME' : '4.90',
- 'NT 3.11' : 'NT3.51',
- 'NT 4.0' : 'NT4.0',
- '2000' : 'NT 5.0',
- 'XP' : ['NT 5.1', 'NT 5.2'],
- 'Vista' : 'NT 6.0',
- '7' : 'NT 6.1',
- '8' : 'NT 6.2',
- '8.1' : 'NT 6.3',
- '10' : ['NT 6.4', 'NT 10.0'],
- 'RT' : 'ARM'
- };
-
- //////////////
- // Regex map
- /////////////
-
- var regexes = {
-
- browser : [[
-
- /\b(?:crmo|crios)\/([\w\.]+)/i // Chrome for Android/iOS
- ], [VERSION, [NAME, 'Chrome']], [
- /edg(?:e|ios|a)?\/([\w\.]+)/i // Microsoft Edge
- ], [VERSION, [NAME, 'Edge']], [
-
- // Presto based
- /(opera mini)\/([-\w\.]+)/i, // Opera Mini
- /(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i, // Opera Mobi/Tablet
- /(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i // Opera
- ], [NAME, VERSION], [
- /opios[\/ ]+([\w\.]+)/i // Opera mini on iphone >= 8.0
- ], [VERSION, [NAME, OPERA+' Mini']], [
- /\bop(?:rg)?x\/([\w\.]+)/i // Opera GX
- ], [VERSION, [NAME, OPERA+' GX']], [
- /\bopr\/([\w\.]+)/i // Opera Webkit
- ], [VERSION, [NAME, OPERA]], [
-
- // Mixed
- /\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i // Baidu
- ], [VERSION, [NAME, 'Baidu']], [
- /(kindle)\/([\w\.]+)/i, // Kindle
- /(lunascape|maxthon|netfront|jasmine|blazer|sleipnir)[\/ ]?([\w\.]*)/i,
- // Lunascape/Maxthon/Netfront/Jasmine/Blazer/Sleipnir
- // Trident based
- /(avant|iemobile|slim)\s?(?:browser)?[\/ ]?([\w\.]*)/i, // Avant/IEMobile/SlimBrowser
- /(?:ms|\()(ie) ([\w\.]+)/i, // Internet Explorer
-
- // Webkit/KHTML based // Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron/Iridium/PhantomJS/Bowser/QupZilla/Falkon
- /(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|duckduckgo|klar|helio)\/([-\w\.]+)/i,
- // Rekonq/Puffin/Brave/Whale/QQBrowserLite/QQ//Vivaldi/DuckDuckGo/Klar/Helio
- /(heytap|ovi)browser\/([\d\.]+)/i, // HeyTap/Ovi
- /(weibo)__([\d\.]+)/i // Weibo
- ], [NAME, VERSION], [
- /quark(?:pc)?\/([-\w\.]+)/i // Quark
- ], [VERSION, [NAME, 'Quark']], [
- /\bddg\/([\w\.]+)/i // DuckDuckGo
- ], [VERSION, [NAME, 'DuckDuckGo']], [
- /(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i // UCBrowser
- ], [VERSION, [NAME, 'UC'+BROWSER]], [
- /microm.+\bqbcore\/([\w\.]+)/i, // WeChat Desktop for Windows Built-in Browser
- /\bqbcore\/([\w\.]+).+microm/i,
- /micromessenger\/([\w\.]+)/i // WeChat
- ], [VERSION, [NAME, 'WeChat']], [
- /konqueror\/([\w\.]+)/i // Konqueror
- ], [VERSION, [NAME, 'Konqueror']], [
- /trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i // IE11
- ], [VERSION, [NAME, 'IE']], [
- /ya(?:search)?browser\/([\w\.]+)/i // Yandex
- ], [VERSION, [NAME, 'Yandex']], [
- /slbrowser\/([\w\.]+)/i // Smart Lenovo Browser
- ], [VERSION, [NAME, 'Smart Lenovo '+BROWSER]], [
- /(avast|avg)\/([\w\.]+)/i // Avast/AVG Secure Browser
- ], [[NAME, /(.+)/, '$1 Secure '+BROWSER], VERSION], [
- /\bfocus\/([\w\.]+)/i // Firefox Focus
- ], [VERSION, [NAME, FIREFOX+' Focus']], [
- /\bopt\/([\w\.]+)/i // Opera Touch
- ], [VERSION, [NAME, OPERA+' Touch']], [
- /coc_coc\w+\/([\w\.]+)/i // Coc Coc Browser
- ], [VERSION, [NAME, 'Coc Coc']], [
- /dolfin\/([\w\.]+)/i // Dolphin
- ], [VERSION, [NAME, 'Dolphin']], [
- /coast\/([\w\.]+)/i // Opera Coast
- ], [VERSION, [NAME, OPERA+' Coast']], [
- /miuibrowser\/([\w\.]+)/i // MIUI Browser
- ], [VERSION, [NAME, 'MIUI '+BROWSER]], [
- /fxios\/([-\w\.]+)/i // Firefox for iOS
- ], [VERSION, [NAME, FIREFOX]], [
- /\bqihu|(qi?ho?o?|360)browser/i // 360
- ], [[NAME, '360' + SUFFIX_BROWSER]], [
- /\b(qq)\/([\w\.]+)/i // QQ
- ], [[NAME, /(.+)/, '$1Browser'], VERSION], [
- /(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i
- ], [[NAME, /(.+)/, '$1' + SUFFIX_BROWSER], VERSION], [ // Oculus/Sailfish/HuaweiBrowser/VivoBrowser/PicoBrowser
- /samsungbrowser\/([\w\.]+)/i // Samsung Internet
- ], [VERSION, [NAME, SAMSUNG + ' Internet']], [
- /(comodo_dragon)\/([\w\.]+)/i // Comodo Dragon
- ], [[NAME, /_/g, ' '], VERSION], [
- /metasr[\/ ]?([\d\.]+)/i // Sogou Explorer
- ], [VERSION, [NAME, 'Sogou Explorer']], [
- /(sogou)mo\w+\/([\d\.]+)/i // Sogou Mobile
- ], [[NAME, 'Sogou Mobile'], VERSION], [
- /(electron)\/([\w\.]+) safari/i, // Electron-based App
- /(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i, // Tesla
- /m?(qqbrowser|2345Explorer)[\/ ]?([\w\.]+)/i // QQBrowser/2345 Browser
- ], [NAME, VERSION], [
- /(lbbrowser|rekonq)/i, // LieBao Browser/Rekonq
- /\[(linkedin)app\]/i // LinkedIn App for iOS & Android
- ], [NAME], [
-
- // WebView
- /((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i // Facebook App for iOS & Android
- ], [[NAME, FACEBOOK], VERSION], [
- /(Klarna)\/([\w\.]+)/i, // Klarna Shopping Browser for iOS & Android
- /(kakao(?:talk|story))[\/ ]([\w\.]+)/i, // Kakao App
- /(naver)\(.*?(\d+\.[\w\.]+).*\)/i, // Naver InApp
- /safari (line)\/([\w\.]+)/i, // Line App for iOS
- /\b(line)\/([\w\.]+)\/iab/i, // Line App for Android
- /(alipay)client\/([\w\.]+)/i, // Alipay
- /(twitter)(?:and| f.+e\/([\w\.]+))/i, // Twitter
- /(chromium|instagram|snapchat)[\/ ]([-\w\.]+)/i // Chromium/Instagram/Snapchat
- ], [NAME, VERSION], [
- /\bgsa\/([\w\.]+) .*safari\//i // Google Search Appliance on iOS
- ], [VERSION, [NAME, 'GSA']], [
- /musical_ly(?:.+app_?version\/|_)([\w\.]+)/i // TikTok
- ], [VERSION, [NAME, 'TikTok']], [
-
- /headlesschrome(?:\/([\w\.]+)| )/i // Chrome Headless
- ], [VERSION, [NAME, CHROME+' Headless']], [
-
- / wv\).+(chrome)\/([\w\.]+)/i // Chrome WebView
- ], [[NAME, CHROME+' WebView'], VERSION], [
-
- /droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i // Android Browser
- ], [VERSION, [NAME, 'Android '+BROWSER]], [
-
- /(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i // Chrome/OmniWeb/Arora/Tizen/Nokia
- ], [NAME, VERSION], [
-
- /version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i // Mobile Safari
- ], [VERSION, [NAME, 'Mobile Safari']], [
- /version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i // Safari & Safari Mobile
- ], [VERSION, NAME], [
- /webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i // Safari < 3.0
- ], [NAME, [VERSION, strMapper, oldSafariMap]], [
-
- /(webkit|khtml)\/([\w\.]+)/i
- ], [NAME, VERSION], [
-
- // Gecko based
- /(navigator|netscape\d?)\/([-\w\.]+)/i // Netscape
- ], [[NAME, 'Netscape'], VERSION], [
- /(wolvic)\/([\w\.]+)/i // Wolvic
- ], [NAME, VERSION], [
- /mobile vr; rv:([\w\.]+)\).+firefox/i // Firefox Reality
- ], [VERSION, [NAME, FIREFOX+' Reality']], [
- /ekiohf.+(flow)\/([\w\.]+)/i, // Flow
- /(swiftfox)/i, // Swiftfox
- /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror)[\/ ]?([\w\.\+]+)/i,
- // IceDragon/Iceweasel/Camino/Chimera/Fennec/Maemo/Minimo/Conkeror
- /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,
- // Firefox/SeaMonkey/K-Meleon/IceCat/IceApe/Firebird/Phoenix
- /(firefox)\/([\w\.]+)/i, // Other Firefox-based
- /(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i, // Mozilla
-
- // Other
- /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,
- // Polaris/Lynx/Dillo/iCab/Doris/Amaya/w3m/NetSurf/Obigo/Mosaic/Go/ICE/UP.Browser
- /(links) \(([\w\.]+)/i // Links
- ], [NAME, [VERSION, /_/g, '.']], [
-
- /(cobalt)\/([\w\.]+)/i // Cobalt
- ], [NAME, [VERSION, /master.|lts./, ""]]
- ],
-
- cpu : [[
-
- /(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\)]/i // AMD64 (x64)
- ], [[ARCHITECTURE, 'amd64']], [
-
- /(ia32(?=;))/i // IA32 (quicktime)
- ], [[ARCHITECTURE, lowerize]], [
-
- /((?:i[346]|x)86)[;\)]/i // IA32 (x86)
- ], [[ARCHITECTURE, 'ia32']], [
-
- /\b(aarch64|arm(v?8e?l?|_?64))\b/i // ARM64
- ], [[ARCHITECTURE, 'arm64']], [
-
- /\b(arm(?:v[67])?ht?n?[fl]p?)\b/i // ARMHF
- ], [[ARCHITECTURE, 'armhf']], [
-
- // PocketPC mistakenly identified as PowerPC
- /windows (ce|mobile); ppc;/i
- ], [[ARCHITECTURE, 'arm']], [
-
- /((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i // PowerPC
- ], [[ARCHITECTURE, /ower/, EMPTY, lowerize]], [
-
- /(sun4\w)[;\)]/i // SPARC
- ], [[ARCHITECTURE, 'sparc']], [
-
- /((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i
- // IA64, 68K, ARM/64, AVR/32, IRIX/64, MIPS/64, SPARC/64, PA-RISC
- ], [[ARCHITECTURE, lowerize]]
- ],
-
- device : [[
-
- //////////////////////////
- // MOBILES & TABLETS
- /////////////////////////
-
- // Samsung
- /\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i
- ], [MODEL, [VENDOR, SAMSUNG], [TYPE, TABLET]], [
- /\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,
- /samsung[- ]((?!sm-[lr])[-\w]+)/i,
- /sec-(sgh\w+)/i
- ], [MODEL, [VENDOR, SAMSUNG], [TYPE, MOBILE]], [
-
- // Apple
- /(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i // iPod/iPhone
- ], [MODEL, [VENDOR, APPLE], [TYPE, MOBILE]], [
- /\((ipad);[-\w\),; ]+apple/i, // iPad
- /applecoremedia\/[\w\.]+ \((ipad)/i,
- /\b(ipad)\d\d?,\d\d?[;\]].+ios/i
- ], [MODEL, [VENDOR, APPLE], [TYPE, TABLET]], [
- /(macintosh);/i
- ], [MODEL, [VENDOR, APPLE]], [
-
- // Sharp
- /\b(sh-?[altvz]?\d\d[a-ekm]?)/i
- ], [MODEL, [VENDOR, SHARP], [TYPE, MOBILE]], [
-
- // Huawei
- /\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i
- ], [MODEL, [VENDOR, HUAWEI], [TYPE, TABLET]], [
- /(?:huawei|honor)([-\w ]+)[;\)]/i,
- /\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i
- ], [MODEL, [VENDOR, HUAWEI], [TYPE, MOBILE]], [
-
- // Xiaomi
- /\b(poco[\w ]+|m2\d{3}j\d\d[a-z]{2})(?: bui|\))/i, // Xiaomi POCO
- /\b; (\w+) build\/hm\1/i, // Xiaomi Hongmi 'numeric' models
- /\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i, // Xiaomi Hongmi
- /\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i, // Xiaomi Redmi
- /oid[^\)]+; (m?[12][0-389][01]\w{3,6}[c-y])( bui|; wv|\))/i, // Xiaomi Redmi 'numeric' models
- /\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite|pro)?)(?: bui|\))/i // Xiaomi Mi
- ], [[MODEL, /_/g, ' '], [VENDOR, XIAOMI], [TYPE, MOBILE]], [
- /oid[^\)]+; (2\d{4}(283|rpbf)[cgl])( bui|\))/i, // Redmi Pad
- /\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i // Mi Pad tablets
- ],[[MODEL, /_/g, ' '], [VENDOR, XIAOMI], [TYPE, TABLET]], [
-
- // OPPO
- /; (\w+) bui.+ oppo/i,
- /\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i
- ], [MODEL, [VENDOR, 'OPPO'], [TYPE, MOBILE]], [
- /\b(opd2\d{3}a?) bui/i
- ], [MODEL, [VENDOR, 'OPPO'], [TYPE, TABLET]], [
-
- // Vivo
- /vivo (\w+)(?: bui|\))/i,
- /\b(v[12]\d{3}\w?[at])(?: bui|;)/i
- ], [MODEL, [VENDOR, 'Vivo'], [TYPE, MOBILE]], [
-
- // Realme
- /\b(rmx[1-3]\d{3})(?: bui|;|\))/i
- ], [MODEL, [VENDOR, 'Realme'], [TYPE, MOBILE]], [
-
- // Motorola
- /\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,
- /\bmot(?:orola)?[- ](\w*)/i,
- /((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i
- ], [MODEL, [VENDOR, MOTOROLA], [TYPE, MOBILE]], [
- /\b(mz60\d|xoom[2 ]{0,2}) build\//i
- ], [MODEL, [VENDOR, MOTOROLA], [TYPE, TABLET]], [
-
- // LG
- /((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i
- ], [MODEL, [VENDOR, LG], [TYPE, TABLET]], [
- /(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,
- /\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i,
- /\blg-?([\d\w]+) bui/i
- ], [MODEL, [VENDOR, LG], [TYPE, MOBILE]], [
-
- // Lenovo
- /(ideatab[-\w ]+)/i,
- /lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i
- ], [MODEL, [VENDOR, 'Lenovo'], [TYPE, TABLET]], [
-
- // Nokia
- /(?:maemo|nokia).*(n900|lumia \d+)/i,
- /nokia[-_ ]?([-\w\.]*)/i
- ], [[MODEL, /_/g, ' '], [VENDOR, 'Nokia'], [TYPE, MOBILE]], [
-
- // Google
- /(pixel c)\b/i // Google Pixel C
- ], [MODEL, [VENDOR, GOOGLE], [TYPE, TABLET]], [
- /droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i // Google Pixel
- ], [MODEL, [VENDOR, GOOGLE], [TYPE, MOBILE]], [
-
- // Sony
- /droid.+ (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i
- ], [MODEL, [VENDOR, SONY], [TYPE, MOBILE]], [
- /sony tablet [ps]/i,
- /\b(?:sony)?sgp\w+(?: bui|\))/i
- ], [[MODEL, 'Xperia Tablet'], [VENDOR, SONY], [TYPE, TABLET]], [
-
- // OnePlus
- / (kb2005|in20[12]5|be20[12][59])\b/i,
- /(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i
- ], [MODEL, [VENDOR, 'OnePlus'], [TYPE, MOBILE]], [
-
- // Amazon
- /(alexa)webm/i,
- /(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i, // Kindle Fire without Silk / Echo Show
- /(kf[a-z]+)( bui|\)).+silk\//i // Kindle Fire HD
- ], [MODEL, [VENDOR, AMAZON], [TYPE, TABLET]], [
- /((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i // Fire Phone
- ], [[MODEL, /(.+)/g, 'Fire Phone $1'], [VENDOR, AMAZON], [TYPE, MOBILE]], [
-
- // BlackBerry
- /(playbook);[-\w\),; ]+(rim)/i // BlackBerry PlayBook
- ], [MODEL, VENDOR, [TYPE, TABLET]], [
- /\b((?:bb[a-f]|st[hv])100-\d)/i,
- /\(bb10; (\w+)/i // BlackBerry 10
- ], [MODEL, [VENDOR, BLACKBERRY], [TYPE, MOBILE]], [
-
- // Asus
- /(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i
- ], [MODEL, [VENDOR, ASUS], [TYPE, TABLET]], [
- / (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i
- ], [MODEL, [VENDOR, ASUS], [TYPE, MOBILE]], [
-
- // HTC
- /(nexus 9)/i // HTC Nexus 9
- ], [MODEL, [VENDOR, 'HTC'], [TYPE, TABLET]], [
- /(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i, // HTC
-
- // ZTE
- /(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,
- /(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i // Alcatel/GeeksPhone/Nexian/Panasonic/Sony
- ], [VENDOR, [MODEL, /_/g, ' '], [TYPE, MOBILE]], [
-
- // TCL
- /droid [\w\.]+; ((?:8[14]9[16]|9(?:0(?:48|60|8[01])|1(?:3[27]|66)|2(?:6[69]|9[56])|466))[gqswx])\w*(\)| bui)/i
- ], [MODEL, [VENDOR, 'TCL'], [TYPE, TABLET]], [
-
- // itel
- /(itel) ((\w+))/i
- ], [[VENDOR, lowerize], MODEL, [TYPE, strMapper, { 'tablet' : ['p10001l', 'w7001'], '*' : 'mobile' }]], [
-
- // Acer
- /droid.+; ([ab][1-7]-?[0178a]\d\d?)/i
- ], [MODEL, [VENDOR, 'Acer'], [TYPE, TABLET]], [
-
- // Meizu
- /droid.+; (m[1-5] note) bui/i,
- /\bmz-([-\w]{2,})/i
- ], [MODEL, [VENDOR, 'Meizu'], [TYPE, MOBILE]], [
-
- // Ulefone
- /; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i
- ], [MODEL, [VENDOR, 'Ulefone'], [TYPE, MOBILE]], [
-
- // Nothing
- /droid.+; (a(?:015|06[35]|142p?))/i
- ], [MODEL, [VENDOR, 'Nothing'], [TYPE, MOBILE]], [
-
- // MIXED
- /(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron|infinix|tecno)[-_ ]?([-\w]*)/i,
- // BlackBerry/BenQ/Palm/Sony-Ericsson/Acer/Asus/Dell/Meizu/Motorola/Polytron
- /(hp) ([\w ]+\w)/i, // HP iPAQ
- /(asus)-?(\w+)/i, // Asus
- /(microsoft); (lumia[\w ]+)/i, // Microsoft Lumia
- /(lenovo)[-_ ]?([-\w]+)/i, // Lenovo
- /(jolla)/i, // Jolla
- /(oppo) ?([\w ]+) bui/i // OPPO
- ], [VENDOR, MODEL, [TYPE, MOBILE]], [
-
- /(kobo)\s(ereader|touch)/i, // Kobo
- /(archos) (gamepad2?)/i, // Archos
- /(hp).+(touchpad(?!.+tablet)|tablet)/i, // HP TouchPad
- /(kindle)\/([\w\.]+)/i, // Kindle
- /(nook)[\w ]+build\/(\w+)/i, // Nook
- /(dell) (strea[kpr\d ]*[\dko])/i, // Dell Streak
- /(le[- ]+pan)[- ]+(\w{1,9}) bui/i, // Le Pan Tablets
- /(trinity)[- ]*(t\d{3}) bui/i, // Trinity Tablets
- /(gigaset)[- ]+(q\w{1,9}) bui/i, // Gigaset Tablets
- /(vodafone) ([\w ]+)(?:\)| bui)/i // Vodafone
- ], [VENDOR, MODEL, [TYPE, TABLET]], [
-
- /(surface duo)/i // Surface Duo
- ], [MODEL, [VENDOR, MICROSOFT], [TYPE, TABLET]], [
- /droid [\d\.]+; (fp\du?)(?: b|\))/i // Fairphone
- ], [MODEL, [VENDOR, 'Fairphone'], [TYPE, MOBILE]], [
- /(u304aa)/i // AT&T
- ], [MODEL, [VENDOR, 'AT&T'], [TYPE, MOBILE]], [
- /\bsie-(\w*)/i // Siemens
- ], [MODEL, [VENDOR, 'Siemens'], [TYPE, MOBILE]], [
- /\b(rct\w+) b/i // RCA Tablets
- ], [MODEL, [VENDOR, 'RCA'], [TYPE, TABLET]], [
- /\b(venue[\d ]{2,7}) b/i // Dell Venue Tablets
- ], [MODEL, [VENDOR, 'Dell'], [TYPE, TABLET]], [
- /\b(q(?:mv|ta)\w+) b/i // Verizon Tablet
- ], [MODEL, [VENDOR, 'Verizon'], [TYPE, TABLET]], [
- /\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i // Barnes & Noble Tablet
- ], [MODEL, [VENDOR, 'Barnes & Noble'], [TYPE, TABLET]], [
- /\b(tm\d{3}\w+) b/i
- ], [MODEL, [VENDOR, 'NuVision'], [TYPE, TABLET]], [
- /\b(k88) b/i // ZTE K Series Tablet
- ], [MODEL, [VENDOR, 'ZTE'], [TYPE, TABLET]], [
- /\b(nx\d{3}j) b/i // ZTE Nubia
- ], [MODEL, [VENDOR, 'ZTE'], [TYPE, MOBILE]], [
- /\b(gen\d{3}) b.+49h/i // Swiss GEN Mobile
- ], [MODEL, [VENDOR, 'Swiss'], [TYPE, MOBILE]], [
- /\b(zur\d{3}) b/i // Swiss ZUR Tablet
- ], [MODEL, [VENDOR, 'Swiss'], [TYPE, TABLET]], [
- /\b((zeki)?tb.*\b) b/i // Zeki Tablets
- ], [MODEL, [VENDOR, 'Zeki'], [TYPE, TABLET]], [
- /\b([yr]\d{2}) b/i,
- /\b(dragon[- ]+touch |dt)(\w{5}) b/i // Dragon Touch Tablet
- ], [[VENDOR, 'Dragon Touch'], MODEL, [TYPE, TABLET]], [
- /\b(ns-?\w{0,9}) b/i // Insignia Tablets
- ], [MODEL, [VENDOR, 'Insignia'], [TYPE, TABLET]], [
- /\b((nxa|next)-?\w{0,9}) b/i // NextBook Tablets
- ], [MODEL, [VENDOR, 'NextBook'], [TYPE, TABLET]], [
- /\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i // Voice Xtreme Phones
- ], [[VENDOR, 'Voice'], MODEL, [TYPE, MOBILE]], [
- /\b(lvtel\-)?(v1[12]) b/i // LvTel Phones
- ], [[VENDOR, 'LvTel'], MODEL, [TYPE, MOBILE]], [
- /\b(ph-1) /i // Essential PH-1
- ], [MODEL, [VENDOR, 'Essential'], [TYPE, MOBILE]], [
- /\b(v(100md|700na|7011|917g).*\b) b/i // Envizen Tablets
- ], [MODEL, [VENDOR, 'Envizen'], [TYPE, TABLET]], [
- /\b(trio[-\w\. ]+) b/i // MachSpeed Tablets
- ], [MODEL, [VENDOR, 'MachSpeed'], [TYPE, TABLET]], [
- /\btu_(1491) b/i // Rotor Tablets
- ], [MODEL, [VENDOR, 'Rotor'], [TYPE, TABLET]], [
- /(shield[\w ]+) b/i // Nvidia Shield Tablets
- ], [MODEL, [VENDOR, 'Nvidia'], [TYPE, TABLET]], [
- /(sprint) (\w+)/i // Sprint Phones
- ], [VENDOR, MODEL, [TYPE, MOBILE]], [
- /(kin\.[onetw]{3})/i // Microsoft Kin
- ], [[MODEL, /\./g, ' '], [VENDOR, MICROSOFT], [TYPE, MOBILE]], [
- /droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i // Zebra
- ], [MODEL, [VENDOR, ZEBRA], [TYPE, TABLET]], [
- /droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i
- ], [MODEL, [VENDOR, ZEBRA], [TYPE, MOBILE]], [
-
- ///////////////////
- // SMARTTVS
- ///////////////////
-
- /smart-tv.+(samsung)/i // Samsung
- ], [VENDOR, [TYPE, SMARTTV]], [
- /hbbtv.+maple;(\d+)/i
- ], [[MODEL, /^/, 'SmartTV'], [VENDOR, SAMSUNG], [TYPE, SMARTTV]], [
- /(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i // LG SmartTV
- ], [[VENDOR, LG], [TYPE, SMARTTV]], [
- /(apple) ?tv/i // Apple TV
- ], [VENDOR, [MODEL, APPLE+' TV'], [TYPE, SMARTTV]], [
- /crkey/i // Google Chromecast
- ], [[MODEL, CHROME+'cast'], [VENDOR, GOOGLE], [TYPE, SMARTTV]], [
- /droid.+aft(\w+)( bui|\))/i // Fire TV
- ], [MODEL, [VENDOR, AMAZON], [TYPE, SMARTTV]], [
- /\(dtv[\);].+(aquos)/i,
- /(aquos-tv[\w ]+)\)/i // Sharp
- ], [MODEL, [VENDOR, SHARP], [TYPE, SMARTTV]],[
- /(bravia[\w ]+)( bui|\))/i // Sony
- ], [MODEL, [VENDOR, SONY], [TYPE, SMARTTV]], [
- /(mitv-\w{5}) bui/i // Xiaomi
- ], [MODEL, [VENDOR, XIAOMI], [TYPE, SMARTTV]], [
- /Hbbtv.*(technisat) (.*);/i // TechniSAT
- ], [VENDOR, MODEL, [TYPE, SMARTTV]], [
- /\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i, // Roku
- /hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i // HbbTV devices
- ], [[VENDOR, trim], [MODEL, trim], [TYPE, SMARTTV]], [
- /\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i // SmartTV from Unidentified Vendors
- ], [[TYPE, SMARTTV]], [
-
- ///////////////////
- // CONSOLES
- ///////////////////
-
- /(ouya)/i, // Ouya
- /(nintendo) ([wids3utch]+)/i // Nintendo
- ], [VENDOR, MODEL, [TYPE, CONSOLE]], [
- /droid.+; (shield) bui/i // Nvidia
- ], [MODEL, [VENDOR, 'Nvidia'], [TYPE, CONSOLE]], [
- /(playstation [345portablevi]+)/i // Playstation
- ], [MODEL, [VENDOR, SONY], [TYPE, CONSOLE]], [
- /\b(xbox(?: one)?(?!; xbox))[\); ]/i // Microsoft Xbox
- ], [MODEL, [VENDOR, MICROSOFT], [TYPE, CONSOLE]], [
-
- ///////////////////
- // WEARABLES
- ///////////////////
-
- /\b(sm-[lr]\d\d[05][fnuw]?s?)\b/i // Samsung Galaxy Watch
- ], [MODEL, [VENDOR, SAMSUNG], [TYPE, WEARABLE]], [
- /((pebble))app/i // Pebble
- ], [VENDOR, MODEL, [TYPE, WEARABLE]], [
- /(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i // Apple Watch
- ], [MODEL, [VENDOR, APPLE], [TYPE, WEARABLE]], [
- /droid.+; (glass) \d/i // Google Glass
- ], [MODEL, [VENDOR, GOOGLE], [TYPE, WEARABLE]], [
- /droid.+; (wt63?0{2,3})\)/i
- ], [MODEL, [VENDOR, ZEBRA], [TYPE, WEARABLE]], [
- /(quest( \d| pro)?)/i // Oculus Quest
- ], [MODEL, [VENDOR, FACEBOOK], [TYPE, WEARABLE]], [
-
- ///////////////////
- // EMBEDDED
- ///////////////////
-
- /(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i // Tesla
- ], [VENDOR, [TYPE, EMBEDDED]], [
- /(aeobc)\b/i // Echo Dot
- ], [MODEL, [VENDOR, AMAZON], [TYPE, EMBEDDED]], [
-
- ////////////////////
- // MIXED (GENERIC)
- ///////////////////
-
- /droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew).+? mobile safari/i // Android Phones from Unidentified Vendors
- ], [MODEL, [TYPE, MOBILE]], [
- /droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i // Android Tablets from Unidentified Vendors
- ], [MODEL, [TYPE, TABLET]], [
- /\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i // Unidentifiable Tablet
- ], [[TYPE, TABLET]], [
- /(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i // Unidentifiable Mobile
- ], [[TYPE, MOBILE]], [
- /(android[-\w\. ]{0,9});.+buil/i // Generic Android Device
- ], [MODEL, [VENDOR, 'Generic']]
- ],
-
- engine : [[
-
- /windows.+ edge\/([\w\.]+)/i // EdgeHTML
- ], [VERSION, [NAME, EDGE+'HTML']], [
-
- /webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i // Blink
- ], [VERSION, [NAME, 'Blink']], [
-
- /(presto)\/([\w\.]+)/i, // Presto
- /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i, // WebKit/Trident/NetFront/NetSurf/Amaya/Lynx/w3m/Goanna
- /ekioh(flow)\/([\w\.]+)/i, // Flow
- /(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i, // KHTML/Tasman/Links
- /(icab)[\/ ]([23]\.[\d\.]+)/i, // iCab
- /\b(libweb)/i
- ], [NAME, VERSION], [
-
- /rv\:([\w\.]{1,9})\b.+(gecko)/i // Gecko
- ], [VERSION, NAME]
- ],
-
- os : [[
-
- // Windows
- /microsoft (windows) (vista|xp)/i // Windows (iTunes)
- ], [NAME, VERSION], [
- /(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i // Windows Phone
- ], [NAME, [VERSION, strMapper, windowsVersionMap]], [
- /windows nt 6\.2; (arm)/i, // Windows RT
- /windows[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i,
- /(?:win(?=3|9|n)|win 9x )([nt\d\.]+)/i
- ], [[VERSION, strMapper, windowsVersionMap], [NAME, 'Windows']], [
-
- // iOS/macOS
- /ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i, // iOS
- /(?:ios;fbsv\/|iphone.+ios[\/ ])([\d\.]+)/i,
- /cfnetwork\/.+darwin/i
- ], [[VERSION, /_/g, '.'], [NAME, 'iOS']], [
- /(mac os x) ?([\w\. ]*)/i,
- /(macintosh|mac_powerpc\b)(?!.+haiku)/i // Mac OS
- ], [[NAME, MAC_OS], [VERSION, /_/g, '.']], [
-
- // Mobile OSes
- /droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i // Android-x86/HarmonyOS
- ], [VERSION, NAME], [ // Android/WebOS/QNX/Bada/RIM/Maemo/MeeGo/Sailfish OS
- /(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\/ ]?([\w\.]*)/i,
- /(blackberry)\w*\/([\w\.]*)/i, // Blackberry
- /(tizen|kaios)[\/ ]([\w\.]+)/i, // Tizen/KaiOS
- /\((series40);/i // Series 40
- ], [NAME, VERSION], [
- /\(bb(10);/i // BlackBerry 10
- ], [VERSION, [NAME, BLACKBERRY]], [
- /(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i // Symbian
- ], [VERSION, [NAME, 'Symbian']], [
- /mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i // Firefox OS
- ], [VERSION, [NAME, FIREFOX+' OS']], [
- /web0s;.+rt(tv)/i,
- /\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i // WebOS
- ], [VERSION, [NAME, 'webOS']], [
- /watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i // watchOS
- ], [VERSION, [NAME, 'watchOS']], [
-
- // Google Chromecast
- /crkey\/([\d\.]+)/i // Google Chromecast
- ], [VERSION, [NAME, CHROME+'cast']], [
- /(cros) [\w]+(?:\)| ([\w\.]+)\b)/i // Chromium OS
- ], [[NAME, CHROMIUM_OS], VERSION],[
-
- // Smart TVs
- /panasonic;(viera)/i, // Panasonic Viera
- /(netrange)mmh/i, // Netrange
- /(nettv)\/(\d+\.[\w\.]+)/i, // NetTV
-
- // Console
- /(nintendo|playstation) ([wids345portablevuch]+)/i, // Nintendo/Playstation
- /(xbox); +xbox ([^\);]+)/i, // Microsoft Xbox (360, One, X, S, Series X, Series S)
-
- // Other
- /\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i, // Joli/Palm
- /(mint)[\/\(\) ]?(\w*)/i, // Mint
- /(mageia|vectorlinux)[; ]/i, // Mageia/VectorLinux
- /([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,
- // Ubuntu/Debian/SUSE/Gentoo/Arch/Slackware/Fedora/Mandriva/CentOS/PCLinuxOS/RedHat/Zenwalk/Linpus/Raspbian/Plan9/Minix/RISCOS/Contiki/Deepin/Manjaro/elementary/Sabayon/Linspire
- /(hurd|linux) ?([\w\.]*)/i, // Hurd/Linux
- /(gnu) ?([\w\.]*)/i, // GNU
- /\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i, // FreeBSD/NetBSD/OpenBSD/PC-BSD/GhostBSD/DragonFly
- /(haiku) (\w+)/i // Haiku
- ], [NAME, VERSION], [
- /(sunos) ?([\w\.\d]*)/i // Solaris
- ], [[NAME, 'Solaris'], VERSION], [
- /((?:open)?solaris)[-\/ ]?([\w\.]*)/i, // Solaris
- /(aix) ((\d)(?=\.|\)| )[\w\.])*/i, // AIX
- /\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i, // BeOS/OS2/AmigaOS/MorphOS/OpenVMS/Fuchsia/HP-UX/SerenityOS
- /(unix) ?([\w\.]*)/i // UNIX
- ], [NAME, VERSION]
- ]
- };
-
- /////////////////
- // Constructor
- ////////////////
-
- var UAParser = function (ua, extensions) {
-
- if (typeof ua === OBJ_TYPE) {
- extensions = ua;
- ua = undefined;
- }
-
- if (!(this instanceof UAParser)) {
- return new UAParser(ua, extensions).getResult();
- }
-
- var _navigator = (typeof window !== UNDEF_TYPE && window.navigator) ? window.navigator : undefined;
- var _ua = ua || ((_navigator && _navigator.userAgent) ? _navigator.userAgent : EMPTY);
- var _uach = (_navigator && _navigator.userAgentData) ? _navigator.userAgentData : undefined;
- var _rgxmap = extensions ? extend(regexes, extensions) : regexes;
- var _isSelfNav = _navigator && _navigator.userAgent == _ua;
-
- this.getBrowser = function () {
- var _browser = {};
- _browser[NAME] = undefined;
- _browser[VERSION] = undefined;
- rgxMapper.call(_browser, _ua, _rgxmap.browser);
- _browser[MAJOR] = majorize(_browser[VERSION]);
- // Brave-specific detection
- if (_isSelfNav && _navigator && _navigator.brave && typeof _navigator.brave.isBrave == FUNC_TYPE) {
- _browser[NAME] = 'Brave';
- }
- return _browser;
- };
- this.getCPU = function () {
- var _cpu = {};
- _cpu[ARCHITECTURE] = undefined;
- rgxMapper.call(_cpu, _ua, _rgxmap.cpu);
- return _cpu;
- };
- this.getDevice = function () {
- var _device = {};
- _device[VENDOR] = undefined;
- _device[MODEL] = undefined;
- _device[TYPE] = undefined;
- rgxMapper.call(_device, _ua, _rgxmap.device);
- if (_isSelfNav && !_device[TYPE] && _uach && _uach.mobile) {
- _device[TYPE] = MOBILE;
- }
- // iPadOS-specific detection: identified as Mac, but has some iOS-only properties
- if (_isSelfNav && _device[MODEL] == 'Macintosh' && _navigator && typeof _navigator.standalone !== UNDEF_TYPE && _navigator.maxTouchPoints && _navigator.maxTouchPoints > 2) {
- _device[MODEL] = 'iPad';
- _device[TYPE] = TABLET;
- }
- return _device;
- };
- this.getEngine = function () {
- var _engine = {};
- _engine[NAME] = undefined;
- _engine[VERSION] = undefined;
- rgxMapper.call(_engine, _ua, _rgxmap.engine);
- return _engine;
- };
- this.getOS = function () {
- var _os = {};
- _os[NAME] = undefined;
- _os[VERSION] = undefined;
- rgxMapper.call(_os, _ua, _rgxmap.os);
- if (_isSelfNav && !_os[NAME] && _uach && _uach.platform && _uach.platform != 'Unknown') {
- _os[NAME] = _uach.platform
- .replace(/chrome os/i, CHROMIUM_OS)
- .replace(/macos/i, MAC_OS); // backward compatibility
- }
- return _os;
- };
- this.getResult = function () {
- return {
- ua : this.getUA(),
- browser : this.getBrowser(),
- engine : this.getEngine(),
- os : this.getOS(),
- device : this.getDevice(),
- cpu : this.getCPU()
- };
- };
- this.getUA = function () {
- return _ua;
- };
- this.setUA = function (ua) {
- _ua = (typeof ua === STR_TYPE && ua.length > UA_MAX_LENGTH) ? trim(ua, UA_MAX_LENGTH) : ua;
- return this;
- };
- this.setUA(_ua);
- return this;
- };
-
- UAParser.VERSION = LIBVERSION;
- UAParser.BROWSER = enumerize([NAME, VERSION, MAJOR]);
- UAParser.CPU = enumerize([ARCHITECTURE]);
- UAParser.DEVICE = enumerize([MODEL, VENDOR, TYPE, CONSOLE, MOBILE, SMARTTV, TABLET, WEARABLE, EMBEDDED]);
- UAParser.ENGINE = UAParser.OS = enumerize([NAME, VERSION]);
-
- ///////////
- // Export
- //////////
-
- // check js environment
- if (typeof(exports) !== UNDEF_TYPE) {
- // nodejs env
- if (typeof module !== UNDEF_TYPE && module.exports) {
- exports = module.exports = UAParser;
- }
- exports.UAParser = UAParser;
- } else {
- // requirejs env (optional)
- if (typeof(define) === FUNC_TYPE && define.amd) {
- define(function () {
- return UAParser;
- });
- } else if (typeof window !== UNDEF_TYPE) {
- // browser env
- window.UAParser = UAParser;
- }
- }
-
- // jQuery/Zepto specific (optional)
- // Note:
- // In AMD env the global scope should be kept clean, but jQuery is an exception.
- // jQuery always exports to global scope, unless jQuery.noConflict(true) is used,
- // and we should catch that.
- var $ = typeof window !== UNDEF_TYPE && (window.jQuery || window.Zepto);
- if ($ && !$.ua) {
- var parser = new UAParser();
- $.ua = parser.getResult();
- $.ua.get = function () {
- return parser.getUA();
- };
- $.ua.set = function (ua) {
- parser.setUA(ua);
- var result = parser.getResult();
- for (var prop in result) {
- $.ua[prop] = result[prop];
- }
- };
- }
-
-})(typeof window === 'object' ? window : this);
-
-},{}],105:[function(_dereq_,module,exports){
-(function (global){(function (){
-
-/**
- * Module exports.
- */
-
-module.exports = deprecate;
-
-/**
- * Mark that a method should not be used.
- * Returns a modified function which warns once by default.
- *
- * If `localStorage.noDeprecation = true` is set, then it is a no-op.
- *
- * If `localStorage.throwDeprecation = true` is set, then deprecated functions
- * will throw an Error when invoked.
- *
- * If `localStorage.traceDeprecation = true` is set, then deprecated functions
- * will invoke `console.trace()` instead of `console.error()`.
- *
- * @param {Function} fn - the function to deprecate
- * @param {String} msg - the string to print to the console when `fn` is invoked
- * @returns {Function} a new "deprecated" version of `fn`
- * @api public
- */
-
-function deprecate (fn, msg) {
- if (config('noDeprecation')) {
- return fn;
- }
-
- var warned = false;
- function deprecated() {
- if (!warned) {
- if (config('throwDeprecation')) {
- throw new Error(msg);
- } else if (config('traceDeprecation')) {
- console.trace(msg);
- } else {
- console.warn(msg);
- }
- warned = true;
- }
- return fn.apply(this, arguments);
- }
-
- return deprecated;
-}
-
-/**
- * Checks `localStorage` for boolean values for the given `name`.
- *
- * @param {String} name
- * @returns {Boolean}
- * @api private
- */
-
-function config (name) {
- // accessing global.localStorage can trigger a DOMException in sandboxed iframes
- try {
- if (!global.localStorage) return false;
- } catch (_) {
- return false;
- }
- var val = global.localStorage[name];
- if (null == val) return false;
- return String(val).toLowerCase() === 'true';
-}
-
-}).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
-},{}],106:[function(_dereq_,module,exports){
-(function (process,Buffer){(function (){
-var stream = _dereq_('readable-stream')
-var eos = _dereq_('end-of-stream')
-var inherits = _dereq_('inherits')
-var shift = _dereq_('stream-shift')
-
-var SIGNAL_FLUSH = (Buffer.from && Buffer.from !== Uint8Array.from)
- ? Buffer.from([0])
- : new Buffer([0])
-
-var onuncork = function(self, fn) {
- if (self._corked) self.once('uncork', fn)
- else fn()
-}
-
-var autoDestroy = function (self, err) {
- if (self._autoDestroy) self.destroy(err)
-}
-
-var destroyer = function(self, end) {
- return function(err) {
- if (err) autoDestroy(self, err.message === 'premature close' ? null : err)
- else if (end && !self._ended) self.end()
- }
-}
-
-var end = function(ws, fn) {
- if (!ws) return fn()
- if (ws._writableState && ws._writableState.finished) return fn()
- if (ws._writableState) return ws.end(fn)
- ws.end()
- fn()
-}
-
-var toStreams2 = function(rs) {
- return new (stream.Readable)({objectMode:true, highWaterMark:16}).wrap(rs)
-}
-
-var Duplexify = function(writable, readable, opts) {
- if (!(this instanceof Duplexify)) return new Duplexify(writable, readable, opts)
- stream.Duplex.call(this, opts)
-
- this._writable = null
- this._readable = null
- this._readable2 = null
-
- this._autoDestroy = !opts || opts.autoDestroy !== false
- this._forwardDestroy = !opts || opts.destroy !== false
- this._forwardEnd = !opts || opts.end !== false
- this._corked = 1 // start corked
- this._ondrain = null
- this._drained = false
- this._forwarding = false
- this._unwrite = null
- this._unread = null
- this._ended = false
-
- this.destroyed = false
-
- if (writable) this.setWritable(writable)
- if (readable) this.setReadable(readable)
-}
-
-inherits(Duplexify, stream.Duplex)
-
-Duplexify.obj = function(writable, readable, opts) {
- if (!opts) opts = {}
- opts.objectMode = true
- opts.highWaterMark = 16
- return new Duplexify(writable, readable, opts)
-}
-
-Duplexify.prototype.cork = function() {
- if (++this._corked === 1) this.emit('cork')
-}
-
-Duplexify.prototype.uncork = function() {
- if (this._corked && --this._corked === 0) this.emit('uncork')
-}
-
-Duplexify.prototype.setWritable = function(writable) {
- if (this._unwrite) this._unwrite()
-
- if (this.destroyed) {
- if (writable && writable.destroy) writable.destroy()
- return
- }
-
- if (writable === null || writable === false) {
- this.end()
- return
- }
-
- var self = this
- var unend = eos(writable, {writable:true, readable:false}, destroyer(this, this._forwardEnd))
-
- var ondrain = function() {
- var ondrain = self._ondrain
- self._ondrain = null
- if (ondrain) ondrain()
- }
-
- var clear = function() {
- self._writable.removeListener('drain', ondrain)
- unend()
- }
-
- if (this._unwrite) process.nextTick(ondrain) // force a drain on stream reset to avoid livelocks
-
- this._writable = writable
- this._writable.on('drain', ondrain)
- this._unwrite = clear
-
- this.uncork() // always uncork setWritable
-}
-
-Duplexify.prototype.setReadable = function(readable) {
- if (this._unread) this._unread()
-
- if (this.destroyed) {
- if (readable && readable.destroy) readable.destroy()
- return
- }
-
- if (readable === null || readable === false) {
- this.push(null)
- this.resume()
- return
- }
-
- var self = this
- var unend = eos(readable, {writable:false, readable:true}, destroyer(this))
-
- var onreadable = function() {
- self._forward()
- }
-
- var onend = function() {
- self.push(null)
- }
-
- var clear = function() {
- self._readable2.removeListener('readable', onreadable)
- self._readable2.removeListener('end', onend)
- unend()
- }
-
- this._drained = true
- this._readable = readable
- this._readable2 = readable._readableState ? readable : toStreams2(readable)
- this._readable2.on('readable', onreadable)
- this._readable2.on('end', onend)
- this._unread = clear
-
- this._forward()
-}
-
-Duplexify.prototype._read = function() {
- this._drained = true
- this._forward()
-}
-
-Duplexify.prototype._forward = function() {
- if (this._forwarding || !this._readable2 || !this._drained) return
- this._forwarding = true
-
- var data
-
- while (this._drained && (data = shift(this._readable2)) !== null) {
- if (this.destroyed) continue
- this._drained = this.push(data)
- }
-
- this._forwarding = false
-}
-
-Duplexify.prototype.destroy = function(err) {
- if (this.destroyed) return
- this.destroyed = true
-
- var self = this
- process.nextTick(function() {
- self._destroy(err)
- })
-}
-
-Duplexify.prototype._destroy = function(err) {
- if (err) {
- var ondrain = this._ondrain
- this._ondrain = null
- if (ondrain) ondrain(err)
- else this.emit('error', err)
- }
-
- if (this._forwardDestroy) {
- if (this._readable && this._readable.destroy) this._readable.destroy()
- if (this._writable && this._writable.destroy) this._writable.destroy()
- }
-
- this.emit('close')
-}
-
-Duplexify.prototype._write = function(data, enc, cb) {
- if (this.destroyed) return cb()
- if (this._corked) return onuncork(this, this._write.bind(this, data, enc, cb))
- if (data === SIGNAL_FLUSH) return this._finish(cb)
- if (!this._writable) return cb()
-
- if (this._writable.write(data) === false) this._ondrain = cb
- else cb()
-}
-
-Duplexify.prototype._finish = function(cb) {
- var self = this
- this.emit('preend')
- onuncork(this, function() {
- end(self._forwardEnd && self._writable, function() {
- // haxx to not emit prefinish twice
- if (self._writableState.prefinished === false) self._writableState.prefinished = true
- self.emit('prefinish')
- onuncork(self, cb)
- })
- })
-}
-
-Duplexify.prototype.end = function(data, enc, cb) {
- if (typeof data === 'function') return this.end(null, null, data)
- if (typeof enc === 'function') return this.end(data, null, enc)
- this._ended = true
- if (data) this.write(data)
- if (!this._writableState.ending) this.write(SIGNAL_FLUSH)
- return stream.Writable.prototype.end.call(this, cb)
-}
-
-module.exports = Duplexify
-
-}).call(this)}).call(this,_dereq_('_process'),_dereq_("buffer").Buffer)
-},{"_process":74,"buffer":18,"end-of-stream":34,"inherits":65,"readable-stream":91,"stream-shift":96}],107:[function(_dereq_,module,exports){
-(function (process,global){(function (){
-'use strict'
-
-var Transform = _dereq_('readable-stream').Transform
-var duplexify = _dereq_('duplexify')
-var WS = _dereq_('ws')
-var Buffer = _dereq_('safe-buffer').Buffer
-
-module.exports = WebSocketStream
-
-function buildProxy (options, socketWrite, socketEnd) {
- var proxy = new Transform({
- objectMode: options.objectMode
- })
-
- proxy._write = socketWrite
- proxy._flush = socketEnd
-
- return proxy
-}
-
-function WebSocketStream(target, protocols, options) {
- var stream, socket
-
- var isBrowser = process.title === 'browser'
- var isNative = !!global.WebSocket
- var socketWrite = isBrowser ? socketWriteBrowser : socketWriteNode
-
- if (protocols && !Array.isArray(protocols) && 'object' === typeof protocols) {
- // accept the "options" Object as the 2nd argument
- options = protocols
- protocols = null
-
- if (typeof options.protocol === 'string' || Array.isArray(options.protocol)) {
- protocols = options.protocol;
- }
- }
-
- if (!options) options = {}
-
- if (options.objectMode === undefined) {
- options.objectMode = !(options.binary === true || options.binary === undefined)
- }
-
- var proxy = buildProxy(options, socketWrite, socketEnd)
-
- if (!options.objectMode) {
- proxy._writev = writev
- }
-
- // browser only: sets the maximum socket buffer size before throttling
- var bufferSize = options.browserBufferSize || 1024 * 512
-
- // browser only: how long to wait when throttling
- var bufferTimeout = options.browserBufferTimeout || 1000
-
- // use existing WebSocket object that was passed in
- if (typeof target === 'object') {
- socket = target
- // otherwise make a new one
- } else {
- // special constructor treatment for native websockets in browsers, see
- // https://github.com/maxogden/websocket-stream/issues/82
- if (isNative && isBrowser) {
- socket = new WS(target, protocols)
- } else {
- socket = new WS(target, protocols, options)
- }
-
- socket.binaryType = 'arraybuffer'
- }
-
- // according to https://github.com/baygeldin/ws-streamify/issues/1
- // Nodejs WebSocketServer cause memory leak
- // Handlers like onerror, onclose, onmessage and onopen are accessible via setter/getter
- // And setter first of all fires removeAllListeners, that doesnt make inner array of clients on WebSocketServer cleared ever
- var eventListenerSupport = ('undefined' === typeof socket.addEventListener)
-
- // was already open when passed in
- if (socket.readyState === socket.OPEN) {
- stream = proxy
- } else {
- stream = stream = duplexify(undefined, undefined, options)
- if (!options.objectMode) {
- stream._writev = writev
- }
-
- if (eventListenerSupport) {
- socket.addEventListener('open', onopen)
- } else {
- socket.onopen = onopen
- }
- }
-
- stream.socket = socket
-
- if (eventListenerSupport) {
- socket.addEventListener('close', onclose)
- socket.addEventListener('error', onerror)
- socket.addEventListener('message', onmessage)
- } else {
- socket.onclose = onclose
- socket.onerror = onerror
- socket.onmessage = onmessage
- }
-
- proxy.on('close', destroy)
-
- var coerceToBuffer = !options.objectMode
-
- function socketWriteNode(chunk, enc, next) {
- // avoid errors, this never happens unless
- // destroy() is called
- if (socket.readyState !== socket.OPEN) {
- next()
- return
- }
-
- if (coerceToBuffer && typeof chunk === 'string') {
- chunk = Buffer.from(chunk, 'utf8')
- }
- socket.send(chunk, next)
- }
-
- function socketWriteBrowser(chunk, enc, next) {
- if (socket.bufferedAmount > bufferSize) {
- setTimeout(socketWriteBrowser, bufferTimeout, chunk, enc, next)
- return
- }
-
- if (coerceToBuffer && typeof chunk === 'string') {
- chunk = Buffer.from(chunk, 'utf8')
- }
-
- try {
- socket.send(chunk)
- } catch(err) {
- return next(err)
- }
-
- next()
- }
-
- function socketEnd(done) {
- socket.close()
- done()
- }
-
- function onopen() {
- stream.setReadable(proxy)
- stream.setWritable(proxy)
- stream.emit('connect')
- }
-
- function onclose() {
- stream.end()
- stream.destroy()
- }
-
- function onerror(err) {
- stream.destroy(err)
- }
-
- function onmessage(event) {
- var data = event.data
- if (data instanceof ArrayBuffer) data = Buffer.from(data)
- else data = Buffer.from(data, 'utf8')
- proxy.push(data)
- }
-
- function destroy() {
- socket.close()
- }
-
- // this is to be enabled only if objectMode is false
- function writev (chunks, cb) {
- var buffers = new Array(chunks.length)
- for (var i = 0; i < chunks.length; i++) {
- if (typeof chunks[i].chunk === 'string') {
- buffers[i] = Buffer.from(chunks[i], 'utf8')
- } else {
- buffers[i] = chunks[i].chunk
- }
- }
-
- this._write(Buffer.concat(buffers), 'binary', cb)
- }
-
- return stream
-}
-
-}).call(this)}).call(this,_dereq_('_process'),typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
-},{"_process":74,"duplexify":106,"readable-stream":91,"safe-buffer":92,"ws":108}],108:[function(_dereq_,module,exports){
-
-var ws = null
-
-if (typeof WebSocket !== 'undefined') {
- ws = WebSocket
-} else if (typeof MozWebSocket !== 'undefined') {
- ws = MozWebSocket
-} else if (typeof window !== 'undefined') {
- ws = window.WebSocket || window.MozWebSocket
-}
-
-module.exports = ws
-
-},{}],109:[function(_dereq_,module,exports){
-// Returns a wrapper function that returns a wrapped callback
-// The wrapper function should do some stuff, and return a
-// presumably different callback function.
-// This makes sure that own properties are retained, so that
-// decorations and such are not lost along the way.
-module.exports = wrappy
-function wrappy (fn, cb) {
- if (fn && cb) return wrappy(fn)(cb)
-
- if (typeof fn !== 'function')
- throw new TypeError('need wrapper function')
-
- Object.keys(fn).forEach(function (k) {
- wrapper[k] = fn[k]
- })
-
- return wrapper
-
- function wrapper() {
- var args = new Array(arguments.length)
- for (var i = 0; i < args.length; i++) {
- args[i] = arguments[i]
- }
- var ret = fn.apply(this, args)
- var cb = args[args.length-1]
- if (typeof ret === 'function' && ret !== cb) {
- Object.keys(cb).forEach(function (k) {
- ret[k] = cb[k]
- })
- }
- return ret
- }
-}
-
-},{}],110:[function(_dereq_,module,exports){
-module.exports={
- "name": "videomail-client",
- "version": "9.5.11",
- "description": "A wicked npm package to record videos directly in the browser, wohooo!",
- "keywords": [
- "webcam",
- "video",
- "videomail",
- "encoder",
- "getusermedia",
- "audio",
- "recorder"
- ],
- "homepage": "https://videomail.io",
- "repository": {
- "type": "git",
- "url": "git+https://github.com/binarykitchen/videomail-client.git"
- },
- "license": "CC0-1.0",
- "author": "Michael Heuberger ",
- "contributors": [
- {
- "name": "Michael Heuberger",
- "email": "michael.heuberger@binarykitchen.com"
- }
- ],
- "main": "prototype/js/videomail-client.js",
- "scripts": {
- "audit": "npx audit-ci --config audit-ci.json",
- "build": "gulp build",
- "lint": "eslint --color ./src ./test ./gulpfile.js",
- "lint:fix": "npm --silent run lint -- --fix",
- "major": "./etc/release.sh --importance=major",
- "minor": "./etc/release.sh --importance=minor",
- "patch": "./etc/release.sh --importance=patch",
- "prettier": "prettier --check ./src ./test ./prototype/*.html gulpfile.js",
- "prettier:fix": "prettier --write ./src ./test ./prototype/*.html gulpfile.js",
- "test": "gulp test",
- "watch": "NODE_NO_HTTP2=1 gulp watch"
- },
- "prettier": "./prettier.config.cjs",
- "dependencies": {
- "@babel/core": "7.25.2",
- "add-eventlistener-with-options": "1.25.5",
- "animitter": "3.0.0",
- "audio-sample": "4.1.0",
- "canvas-to-buffer": "4.1.0",
- "contains": "0.1.1",
- "core-js": "3.38.1",
- "create-error": "0.3.1",
- "deepmerge": "4.3.1",
- "defined": "1.0.1",
- "despot": "2.1.0",
- "document-visibility": "1.0.1",
- "filesize": "10.1.6",
- "format-util": "1.0.5",
- "get-form-data": "3.0.0",
- "hidden": "1.1.1",
- "humanize-duration": "3.32.1",
- "hyperscript": "2.0.2",
- "inherits": "2.0.4",
- "insert-css": "2.0.0",
- "is-power-of-two": "1.0.0",
- "keymirror": "0.1.1",
- "safe-json-stringify": "1.2.0",
- "superagent": "10.1.0",
- "ua-parser-js": "1.0.39",
- "websocket-stream": "5.5.2"
- },
- "devDependencies": {
- "@babel/eslint-parser": "7.25.1",
- "@babel/plugin-transform-runtime": "7.25.4",
- "@babel/preset-env": "7.25.4",
- "@tsconfig/node22": "22.0.0",
- "@tsconfig/strictest": "2.0.5",
- "audit-ci": "7.1.0",
- "autoprefixer": "10.4.20",
- "babelify": "10.0.0",
- "body-parser": "1.20.3",
- "browserify": "17.0.0",
- "connect-send-json": "1.0.0",
- "cssnano": "6.0.5",
- "del": "6.1.1",
- "eslint": "8.57.0",
- "eslint-config-prettier": "9.1.0",
- "eslint-plugin-import": "2.30.0",
- "eslint-plugin-node": "11.1.0",
- "eslint-plugin-promise": "6.2.0",
- "fancy-log": "2.0.0",
- "glob": "10.4.2",
- "gulp": "4.0.2",
- "gulp-bump": "3.2.0",
- "gulp-bytediff": "1.0.0",
- "gulp-concat": "2.6.1",
- "gulp-connect": "5.7.0",
- "gulp-derequire": "3.0.0",
- "gulp-if": "3.0.0",
- "gulp-inject-string": "1.1.2",
- "gulp-load-plugins": "2.0.8",
- "gulp-plumber": "1.2.1",
- "gulp-postcss": "10.0.0",
- "gulp-rename": "2.0.0",
- "gulp-sourcemaps": "3.0.0",
- "gulp-stylus": "3.0.1",
- "gulp-terser": "2.1.0",
- "minimist": "1.2.8",
- "nib": "1.2.0",
- "postcss": "8.4.47",
- "prettier": "3.3.3",
- "prettier-plugin-curly": "0.2.2",
- "prettier-plugin-packagejson": "2.5.2",
- "prettier-plugin-sh": "0.14.0",
- "router": "1.3.8",
- "tape": "5.9.0",
- "tape-catch": "1.0.6",
- "tape-run": "11.0.0",
- "typescript": "5.6.2",
- "vinyl-buffer": "1.0.1",
- "vinyl-source-stream": "2.0.0",
- "watchify": "4.0.0"
- },
- "engines": {
- "node": "^22.8.0",
- "npm": "^10.8.2"
- },
- "readmeFilename": "README.md"
-}
-
-},{}],111:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-var _inherits = _interopRequireDefault(_dereq_("inherits"));
-var _constants = _interopRequireDefault(_dereq_("./constants"));
-var _events = _interopRequireDefault(_dereq_("./events"));
-var _resource = _interopRequireDefault(_dereq_("./resource"));
-var _browser = _interopRequireDefault(_dereq_("./util/browser"));
-var _adjustOptions = _interopRequireDefault(_dereq_("./util/adjustOptions"));
-var _eventEmitter = _interopRequireDefault(_dereq_("./util/eventEmitter"));
-var _container = _interopRequireDefault(_dereq_("./wrappers/container"));
-var browser;
-function getBrowser(localOptions) {
- if (!browser) {
- browser = new _browser.default(localOptions);
- }
- return browser;
-}
-var VideomailClient = function VideomailClient(options) {
- var localOptions = (0, _adjustOptions.default)(options);
- var container = new _container.default(localOptions);
- var debug = localOptions.debug;
- this.events = _events.default;
- _eventEmitter.default.call(this, localOptions, "VideomailClient");
- this.build = function () {
- var building = false;
-
- /*
- * it can happen that it gets called twice, i.E. when an error is thrown
- * in the middle of the build() fn
- */
- if (!building && !container.isBuilt()) {
- debug("Client: build()");
- building = true;
- container.build();
- building = false;
- }
- };
- this.show = function () {
- if (!container.isBuilt()) {
- this.build();
- }
- return container.show();
- };
-
- /*
- * Automatically adds a element inside the given parentElement and
- * loads it with the videomail
- */
- this.replay = function (videomail, replayParentElementId) {
- if (container.isBuilt()) {
- // Auto unload
- this.unload();
- }
- container.build({
- playerOnly: true,
- replayParentElementId: replayParentElementId
- });
- if (videomail) {
- videomail = container.addPlayerDimensions(videomail);
- }
- container.buildForm();
- container.loadForm(videomail);
-
- // Wait until ready to avoid HTTP 416 errors (request range unavailable)
- this.once(_events.default.REPLAY_SHOWN, function () {
- container.showReplayOnly();
- });
- var replay = container.getReplay();
- replay.setVideomail(videomail, true);
- return replay.getElement();
- };
- this.startOver = function (params) {
- var replay = container.getReplay();
- if (replay) {
- replay.hide();
- replay.reset();
- }
- container.startOver(params);
- };
- this.unload = function (e) {
- this.removeAllListeners();
- container.unload(e);
- };
- this.hide = function () {
- container.hide();
- };
- this.getByAlias = function (alias, cb) {
- var resource = new _resource.default(localOptions);
- resource.getByAlias(alias, function (err, videomail) {
- if (err) {
- cb(err);
- } else {
- cb(null, container.addPlayerDimensions(videomail));
- }
- });
- };
-
- // Shim, backward compat
- this.get = this.getByAlias;
- this.getByKey = function (key, cb) {
- var resource = new _resource.default(localOptions);
- resource.getByKey(key, function (err, videomail) {
- if (err) {
- cb(err);
- } else {
- cb(null, container.addPlayerDimensions(videomail));
- }
- });
- };
- this.canRecord = function () {
- return getBrowser(localOptions).canRecord();
- };
-
- // Returns true when a video has been recorded but is not submitted yet
- this.isDirty = function () {
- return container.isDirty();
- };
- this.isBuilt = function () {
- return container.isBuilt();
- };
- this.isRecording = function () {
- return container.isRecording();
- };
- this.submit = function () {
- container.submit();
- };
- this.getLogLines = function () {
- if (localOptions.logger && localOptions.logger.getLines) {
- return localOptions.logger.getLines();
- }
- };
-};
-(0, _inherits.default)(VideomailClient, _eventEmitter.default);
-Object.keys(_constants.default.public).forEach(function (name) {
- VideomailClient[name] = _constants.default.public[name];
-});
-
-// just another convenient thing
-VideomailClient.Events = _events.default;
-var _default = exports.default = VideomailClient;
-
-},{"./constants":112,"./events":113,"./resource":115,"./util/adjustOptions":118,"./util/browser":120,"./util/eventEmitter":122,"./wrappers/container":128,"@babel/runtime/helpers/interopRequireDefault":4,"inherits":65}],112:[function(_dereq_,module,exports){
-"use strict";
-
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-// constants (changing these only break down functionality, so be careful)
-var _default = exports.default = {
- SITE_NAME_LABEL: "x-videomail-site-name",
- VERSION_LABEL: "videomailClientVersion",
- public: {
- ENC_TYPE_APP_JSON: "application/json",
- ENC_TYPE_FORM: "application/x-www-form-urlencoded"
- }
-};
-
-},{}],113:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-var _keymirror = _interopRequireDefault(_dereq_("keymirror"));
-var _default = exports.default = (0, _keymirror.default)({
- BUILT: null,
- // all dom elements are ready, are in the DOM
- FORM_READY: null,
- // form is ready, available in the DOM
- LOADING_USER_MEDIA: null,
- // asking for webcam access
- USER_MEDIA_READY: null,
- // user media (= webcam) is ready, loaded
- CONNECTING: null,
- // socket is connecting to server
- CONNECTED: null,
- // socket is connected to server
- DISCONNECTED: null,
- // socket to server is disconnected
- COUNTDOWN: null,
- // countdown for recording has started
- RECORDING: null,
- // webcam is recording
- STOPPING: null,
- // recording is being stopped (= preview)
- STOPPED: null,
- // recording has stopped
- PROGRESS: null,
- // start sending
- BEGIN_AUDIO_ENCODING: null,
- // encoding video
- BEGIN_VIDEO_ENCODING: null,
- // encoding video
- RESETTING: null,
- // resetting everything to go back to initial state
- PAUSED: null,
- // recording is being paused
- RESUMING: null,
- // recording is resumed
- PREVIEW: null,
- // video preview is set
- PREVIEW_SHOWN: null,
- // video preview is shown
- REPLAY_SHOWN: null,
- // submitted video is shown
- INVALID: null,
- // form is invalid
- VALIDATING: null,
- // form is being validated
- VALID: null,
- // form is valid
- SUBMITTING: null,
- // form is being submitted
- SUBMITTED: null,
- // form has been successfully submitted
- ERROR: null,
- // an error occurred
- BLOCKING: null,
- // something serious, most likely an error, is shown and blocks
- SENDING_FIRST_FRAME: null,
- // emitted before the first frame is being computed
- FIRST_FRAME_SENT: null,
- // emitted once when fist frame has been sent to server
- HIDE: null,
- // emitted when hidden
- NOTIFYING: null,
- // notifies user about something (not blocking)
- ENABLING_AUDIO: null,
- // about to enable audio
- DISABLING_AUDIO: null,
- // about to disable audio
- LOADED_META_DATA: null,
- // raised when webcam knows its dimensions
- EVENT_EMITTED: null,
- // for debugging only, is emitted when an event is emitted lol,
- GOING_BACK: null,
- // switch from replaying back to recording
- STARTING_OVER: null,
- // starting all over again back to its initial state
- ASKING_WEBCAM_PERMISSION: null,
- // when about to ask for webcam permissions
- VISIBLE: null,
- // document just became visible
- INVISIBLE: null,
- // document just became INvisible
- SWITCH_FACING_MODE: null,
- // to switch camera on mobiles between front and back
- SERVER_READY: null,
- // Gets emitted when the ready command is sent through sockets from the server for recording
- UNLOADING: null
-});
-
-},{"@babel/runtime/helpers/interopRequireDefault":4,"keymirror":69}],114:[function(_dereq_,module,exports){
-(function (process){(function (){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-var _package = _dereq_("../package.json");
-var _addOptionsFunctions = _interopRequireDefault(_dereq_("./util/addOptionsFunctions"));
-var PRODUCTION = process.env.NODE_ENV === "production";
-var options = {
- logger: null,
- // define logging instance. leave null for default, console.
- logStackSize: 30,
- // limits the stack size of log outputs to collect
- verbose: !PRODUCTION,
- // set true to log more info
- baseUrl: "https://videomail.io",
- // leave as it, permanent API url to post videos
- socketUrl: "wss://videomail.io",
- // leave as it, permanent websocket url to send frames
- siteName: "videomail-client-demo",
- // Required for API, use https://videomail.io/whitelist
- insertCss: true,
- // inserts predefined CSS, see examples
- enablePause: true,
- // enable pause/resume button
- enableAutoPause: true,
- // automatically pauses when window becomes inactive
- enableSpace: true,
- // hitting space can pause recording
- submitWithVideomail: false,
- // when enabled, all videomail metadata is submitted
- // under the `videomail` key inside the form data body.
- disableSubmit: false,
- // set this to true if you do not want to submit videos,
- // but just want to record and replay these temporarily
- enableAutoValidation: true,
- // automatically validates all form inputs if any exist and
- enableAutoUnload: true,
- // automatically unloads VC when navigating away
- /*
- * does not /enable disable submit button after recording
- * when something else seems invalid.
- */
- enableAutoSubmission: true,
- // automatically submits the form where the videomail-client
- /*
- * appears upon press of submit button. disable it when
- * you want a framework to deal with the form submission itself.
- */
-
- enctype: "application/json",
- // enctype for the form submission. currently implemented are:
- // 'application/json' and 'application/x-www-form-urlencoded'
-
- // default CSS selectors you can alter, see examples
- selectors: {
- containerId: "videomail",
- containerClass: "videomail",
- replayClass: "replay",
- userMediaClass: "userMedia",
- visualsClass: "visuals",
- buttonClass: null,
- // can also be used as a default class for all buttons
- buttonsClass: "buttons",
- recordButtonClass: "record",
- pauseButtonClass: "pause",
- resumeButtonClass: "resume",
- previewButtonClass: "preview",
- recordAgainButtonClass: "recordAgain",
- submitButtonClass: "submit",
- subjectInputName: "subject",
- // the form input name for subject
- fromInputName: "from",
- // the form input name for the from email
- toInputName: "to",
- // the form input name for the to email
- ccInputName: "cc",
- // the form input name for the cc email
- bccInputName: "bcc",
- // the form input name for the bcc email
- bodyInputName: "body",
- // the form input name for the message (body)
- sendCopyInputName: "sendCopy",
- // the form checkbox name for sending myself a copy
-
- keyInputName: "videomail_key",
- parentKeyInputName: "videomail_parent_key",
- formId: null,
- // automatically detects form if any
- submitButtonId: null,
- // semi-automatically detects submit button in the form
- // but if that does not work, try using the
- submitButtonSelector: null // submitButtonSelector
- },
- audio: {
- enabled: false,
- // set to true for experimental audio recording
- switch: false,
- // enables a switcher for audio recording (on/off)
- volume: 0.2,
- // must be between 0 .. 1 but 0.20 is recommended to avoid
- // distorting at the higher volume peaks
- bufferSize: "auto" // decides how often the audio is being sampled,
- /*
- * can be 'auto' or an integer being a power of two like 512 or 2048
- * the higher the less traffic, but harder to adjust with rubberband
- * to match with the video length on server side during encoding
- */
- },
- video: {
- fps: 15,
- // depends on your connection
- limitSeconds: 30,
- // recording automatically stops after that limit
- countdown: 3,
- // set it to 0 or false to disable it
-
- /*
- * it is recommended to set one dimension only and leave the other one to auto
- * because each webcam has a different aspect ratio
- */
-
- width: "auto",
- // or use an integer for exact pixels
- height: "auto",
- // or use an integer for exact pixels
- facingMode: "user",
- // can be 'user', 'environment', 'left' or 'right'. useful for mobiles.
- facingModeButton: false,
- stretch: false // Set to true if you want the video to take the full width of the parent container
- },
- image: {
- quality: 0.42,
- types: ["webp", "jpeg"] // recommended settings to make most of all browsers
- },
- // alter these text for internationalization
- text: {
- pausedHeader: "Paused",
- pausedHint: null,
- sending: "Teleporting",
- encoding: "Encoding",
- limitReached: "Limit reached",
- audioOff: "Audio off",
- audioOn: "Audio on",
- buttons: {
- record: "Record video",
- recordAgain: "Record again",
- resume: "Resume",
- pause: "Pause",
- preview: "Preview"
- }
- },
- notifier: {
- entertain: false,
- // when true, user is entertained while waiting, see examples
- entertainClass: "bg",
- entertainLimit: 6,
- entertainInterval: 9000
- },
- timeouts: {
- userMedia: 20e3,
- // in milliseconds, increase if you want user give more time to enable webcam
- connection: 1e4,
- // in seconds, increase if api is slow
- pingInterval: 30e3 // in milliseconds, keeps web stream (connection) alive when pausing
- },
- loadUserMediaOnRecord: false,
- // when true, user media is loaded only when record button is pressed
-
- callbacks: {
- /*
- * a custom callback to tweak form data before posting to server
- * this is for advanced use only and shouldn't be used if possible
- */
- adjustFormDataBeforePosting: null
- },
- defaults: {
- from: null,
- // define default FROM email address
- to: null,
- // define default TO email address
- cc: null,
- // define default CC email address
- bcc: null,
- // define default BCC email address
- subject: null,
- // define default subject line
- body: null // define default body content
- },
- // show errors inside the container?
- displayErrors: true,
- // true = all form inputs get disabled and disappear when browser can't record
- adjustFormOnBrowserError: false,
- /*
- * when true, any errors will be sent to the videomail server for analysis
- * ps: can be a function too returning a boolean
- */
- reportErrors: false,
- // just for testing purposes to simulate browser agent handling
- fakeUaString: null,
- version: _package.version
-};
-
-// Add some helper functions to options
-var optionsWithFunctions = (0, _addOptionsFunctions.default)(options);
-var _default = exports.default = optionsWithFunctions;
-
-}).call(this)}).call(this,_dereq_('_process'))
-},{"../package.json":110,"./util/addOptionsFunctions":117,"@babel/runtime/helpers/interopRequireDefault":4,"_process":74}],115:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = _default;
-var _superagent = _interopRequireDefault(_dereq_("superagent"));
-var _constants = _interopRequireDefault(_dereq_("./constants"));
-var timezoneId = Intl.DateTimeFormat().resolvedOptions().timeZone;
-function _default(options) {
- function applyDefaultValue(videomail, name) {
- if (options.defaults[name] && !videomail[name]) {
- videomail[name] = options.defaults[name];
- }
- return videomail;
- }
- function applyDefaultValues(videomail) {
- if (options.defaults) {
- videomail = applyDefaultValue(videomail, "from");
- videomail = applyDefaultValue(videomail, "to");
- videomail = applyDefaultValue(videomail, "cc");
- videomail = applyDefaultValue(videomail, "bcc");
- videomail = applyDefaultValue(videomail, "subject");
- videomail = applyDefaultValue(videomail, "body");
- }
- return videomail;
- }
- function setProperty(packedError, property, value) {
- Object.defineProperty(packedError, property, {
- value: value,
- enumerable: true,
- configurable: true,
- writable: true
- });
- }
- function packError(err, res) {
- if (res && res.body && res.body.error) {
- var originalError = res.body.error;
- var packedError = new Error();
- setProperty(packedError, "name", originalError.name);
- setProperty(packedError, "type", originalError.type);
- setProperty(packedError, "message", originalError.message || res.statusText);
- setProperty(packedError, "cause", originalError.cause);
- setProperty(packedError, "status", originalError.status);
- setProperty(packedError, "code", originalError.code);
- setProperty(packedError, "errno", originalError.errno);
- setProperty(packedError, "details", originalError.details);
- setProperty(packedError, "stack", originalError.stack);
- return packedError;
- }
- return err;
- }
- function fetch(identifierName, identifierValue, cb) {
- var url = "".concat(options.baseUrl, "/videomail/").concat(identifierName, "/").concat(identifierValue, "/snapshot");
- var request = (0, _superagent.default)("get", url);
- request.type("json").set("Accept", "application/json").set("Timezone-Id", timezoneId).set(_constants.default.SITE_NAME_LABEL, options.siteName).timeout(options.timeouts.connection).end(function (err, res) {
- if (err) {
- var prettyError = packError(err, res);
- cb(prettyError);
- } else {
- var videomail = res.body ? res.body : null;
- cb(null, videomail);
- }
- });
- }
- function write(method, videomail, identifier, cb) {
- if (!cb) {
- cb = identifier;
- identifier = null;
- }
- var queryParams = {};
- var url = "".concat(options.baseUrl, "/videomail/");
- if (identifier) {
- url += identifier;
- }
- var request = (0, _superagent.default)(method, url);
- queryParams[_constants.default.SITE_NAME_LABEL] = options.siteName;
- request.query(queryParams).set("Timezone-Id", timezoneId).send(videomail).timeout(options.timeout).end(function (err, res) {
- if (err) {
- var prettyError = packError(err, res);
- cb(prettyError);
- } else {
- var returnedVideomail = res.body && res.body.videomail ? res.body.videomail : null;
- cb(null, returnedVideomail, res.body);
- }
- });
- }
- this.getByAlias = function (alias, cb) {
- fetch("alias", alias, cb);
- };
- this.getByKey = function (key, cb) {
- fetch("key", key, cb);
- };
- this.reportError = function (err, cb) {
- var queryParams = {};
- var url = "".concat(options.baseUrl, "/client-error/");
- var request = (0, _superagent.default)("post", url);
- queryParams[_constants.default.SITE_NAME_LABEL] = options.siteName;
- request.query(queryParams).send(err).timeout(options.timeout).end(function (err, res) {
- if (err) {
- var prettyError = packError(err, res);
- cb && cb(prettyError);
- } else {
- cb && cb();
- }
- });
- };
- this.post = function (videomail, cb) {
- videomail = applyDefaultValues(videomail);
-
- /*
- * always good to know the version of the client
- * the videomail was submitted with
- */
- videomail[_constants.default.VERSION_LABEL] = options.version;
- if (options.callbacks.adjustFormDataBeforePosting) {
- options.callbacks.adjustFormDataBeforePosting(videomail, function (err, adjustedVideomail) {
- if (err) {
- cb(err);
- } else {
- write("post", adjustedVideomail, cb);
- }
- });
- } else {
- write("post", videomail, cb);
- }
- };
- this.put = function (videomail, cb) {
- write("put", videomail, videomail.key, cb);
- };
- this.form = function (formData, url, cb) {
- var formType;
- switch (options.enctype) {
- case _constants.default.public.ENC_TYPE_APP_JSON:
- formType = "json";
- break;
- case _constants.default.public.ENC_TYPE_FORM:
- formType = "form";
- break;
- default:
- // keep all callbacks async
- setTimeout(function () {
- cb(new Error("Invalid enctype given: ".concat(options.enctype)));
- }, 0);
- }
- if (formType) {
- _superagent.default.post(url).type(formType).set("Timezone-Id", timezoneId).send(formData).timeout(options.timeout).end(function (err, res) {
- if (err) {
- var prettyError = packError(err, res);
- cb(prettyError);
- } else {
- cb(null, res);
- }
- });
- }
- };
-}
-
-},{"./constants":112,"@babel/runtime/helpers/interopRequireDefault":4,"superagent":98}],116:[function(_dereq_,module,exports){
-"use strict";
-
-module.exports = '@-webkit-keyframes blink{0%{opacity:.9}35%{opacity:.9}50%{opacity:.1}85%{opacity:.1}to{opacity:.9}}@keyframes blink{0%{opacity:.9}35%{opacity:.9}50%{opacity:.1}85%{opacity:.1}to{opacity:.9}}.videomail .visuals{position:relative}.videomail .visuals video.replay{height:100%;width:100%}.videomail .countdown,.videomail .pausedHeader,.videomail .pausedHint,.videomail .recordNote,.videomail .recordTimer{height:auto;margin:0}.videomail .countdown,.videomail .facingMode,.videomail .paused,.videomail .recordNote,.videomail .recordTimer,.videomail noscript{position:absolute;z-index:100}.videomail .countdown,.videomail .pausedHeader,.videomail .pausedHint,.videomail .recordNote,.videomail .recordTimer,.videomail noscript{font-weight:700}.videomail .countdown,.videomail .paused,.videomail noscript{top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);width:100%}.videomail .countdown,.videomail .pausedHeader,.videomail .pausedHint{letter-spacing:4px;text-align:center;text-shadow:-2px 0 #fff,0 2px #fff,2px 0 #fff,0 -2px #fff}.videomail .countdown,.videomail .pausedHeader{font-size:460%;opacity:.9}.videomail .pausedHint{font-size:150%}.videomail .facingMode{background:rgba(30,30,30,.5);border:none;bottom:.6em;color:hsla(0,0%,96%,.9);font-family:monospace;font-size:1.2em;outline:none;padding:.1em .3em;right:.7em;-webkit-transition:all .2s ease;transition:all .2s ease;z-index:10}.videomail .facingMode:hover{background:rgba(50,50,50,.7);cursor:pointer}.videomail .recordNote,.videomail .recordTimer{background:hsla(0,0%,4%,.8);color:#00d814;font-family:monospace;opacity:.9;padding:.3em .4em;right:.7em;-webkit-transition:all 1s ease;transition:all 1s ease}.videomail .recordNote.near,.videomail .recordTimer.near{color:#eb9369}.videomail .recordNote.nigh,.videomail .recordTimer.nigh{color:#ea4b2a}.videomail .recordTimer{top:.7em}.videomail .recordNote{top:3.6em}.videomail .recordNote:before{-webkit-animation:blink 1s infinite;animation:blink 1s infinite;content:"REC"}.videomail .notifier{-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;overflow:hidden}.videomail .radioGroup{display:block}.videomail video{margin-bottom:0}.videomail video.userMedia{background-color:rgba(50,50,50,.1)}';
-
-},{}],117:[function(_dereq_,module,exports){
-"use strict";
-
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-function addOptionsFunctions(options) {
- var audioEnabled = options.audio && options.audio.enabled;
- options.hasDefinedWidth = function () {
- return this.video.width && this.video.width !== "auto";
- };
- options.hasDefinedHeight = function () {
- return this.video.height && this.video.height !== "auto";
- };
- options.hasDefinedDimension = function () {
- return this.hasDefinedWidth() || this.hasDefinedHeight();
- };
- options.hasDefinedDimensions = function () {
- return this.hasDefinedWidth() && this.hasDefinedHeight();
- };
- options.getRatio = function () {
- var ratio = 1; // just a default one when no computations are possible
-
- // todo fix this, it's not really an option
- var hasVideoDimensions = this.videoHeight && this.videoWidth;
- if (this.hasDefinedDimensions()) {
- if (hasVideoDimensions) {
- // figure out first which one to pick
- if (this.videoHeight < this.video.height || this.videoWidth < this.video.width) {
- ratio = this.videoHeight / this.videoWidth;
- } else {
- ratio = this.video.height / this.video.width;
- }
- } else {
- ratio = this.video.height / this.video.width;
- }
- } else if (hasVideoDimensions) {
- ratio = this.videoHeight / this.videoWidth;
- }
- return ratio;
- };
- options.isAudioEnabled = function () {
- return audioEnabled;
- };
- options.setAudioEnabled = function (enabled) {
- audioEnabled = enabled;
- };
- options.isAutoPauseEnabled = function () {
- return this.enableAutoPause && this.enablePause;
- };
- return options;
-}
-var _default = exports.default = addOptionsFunctions;
-
-},{}],118:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-var _deepmerge = _interopRequireDefault(_dereq_("deepmerge"));
-var _collectLogger = _interopRequireDefault(_dereq_("./collectLogger"));
-var _options = _interopRequireDefault(_dereq_("./../options"));
-var _addOptionsFunctions = _interopRequireDefault(_dereq_("./addOptionsFunctions"));
-function adjustOptions() {
- var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- var localOptions = (0, _deepmerge.default)(_options.default, options, {
- arrayMerge: function arrayMerge(_destination, source) {
- return source;
- }
- });
- var collectLogger = new _collectLogger.default(localOptions);
- localOptions.logger = collectLogger;
- localOptions.debug = localOptions.logger.debug;
- var localOptionsWithFunctions = (0, _addOptionsFunctions.default)(localOptions);
- return localOptionsWithFunctions;
-}
-var _default = exports.default = adjustOptions;
-
-},{"./../options":114,"./addOptionsFunctions":117,"./collectLogger":121,"@babel/runtime/helpers/interopRequireDefault":4,"deepmerge":27}],119:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = _default;
-var _audioSample = _interopRequireDefault(_dereq_("audio-sample"));
-var _isPowerOfTwo = _interopRequireDefault(_dereq_("is-power-of-two"));
-var _browser = _interopRequireDefault(_dereq_("./browser"));
-var _videomailError = _interopRequireDefault(_dereq_("./videomailError"));
-var CHANNELS = 1;
-
-/*
- * for inspiration see
- * https://github.com/saebekassebil/microphone-stream
- */
-
-// todo code needs rewrite
-
-function _default(userMedia, options) {
- var scriptProcessor;
- var audioInput;
- var vcAudioContext;
- var browser = new _browser.default(options);
- function getAudioContextClass() {
- return window.AudioContext || window.webkitAudioContext;
- }
- function hasAudioContext() {
- return Boolean(getAudioContextClass()) && Boolean(getAudioContext());
- }
- function getAudioContext() {
- // instantiate only once
- if (!vcAudioContext) {
- var AudioContext = getAudioContextClass();
- vcAudioContext = new AudioContext();
- }
- return vcAudioContext;
- }
- function onAudioProcess(e, cb) {
- if (!userMedia.isRecording() || userMedia.isPaused()) {
- return;
- }
-
- /*
- * Returns a Float32Array containing the PCM data associated with the channel,
- * defined by the channel parameter (with 0 representing the first channel)
- */
- var float32Array = e.inputBuffer.getChannelData(0);
- cb(new _audioSample.default(float32Array));
- }
- this.init = function (localMediaStream) {
- options.debug("AudioRecorder: init()");
-
- // creates an audio node from the microphone incoming stream
- var volume = getAudioContext().createGain();
- try {
- audioInput = getAudioContext().createMediaStreamSource(localMediaStream);
- } catch (exc) {
- throw _videomailError.default.create("Webcam has no audio", exc.toString(), options);
- }
- var bufferSize = options.audio.bufferSize;
-
- // see https://github.com/binarykitchen/videomail-client/issues/184
- if (bufferSize === "auto") {
- if (browser.isFirefox()) {
- bufferSize = 512;
- } else {
- bufferSize = 2048;
- }
- }
- if (!(0, _isPowerOfTwo.default)(bufferSize)) {
- throw _videomailError.default.create("Audio buffer size must be a power of two.", options);
- }
- if (!options.audio.volume || options.audio.volume > 1) {
- throw _videomailError.default.create("Audio volume must be between zero and one.", options);
- }
- volume.gain.value = options.audio.volume;
-
- /*
- * Create a ScriptProcessorNode with the given bufferSize and
- * a single input and output channel
- */
- scriptProcessor = getAudioContext().createScriptProcessor(bufferSize, CHANNELS, CHANNELS);
-
- // connect stream to our scriptProcessor
- audioInput.connect(scriptProcessor);
-
- // connect our scriptProcessor to the previous destination
- scriptProcessor.connect(getAudioContext().destination);
-
- // connect volume
- audioInput.connect(volume);
- volume.connect(scriptProcessor);
- };
- this.record = function (cb) {
- options.debug("AudioRecorder: record()");
- scriptProcessor.onaudioprocess = function (e) {
- onAudioProcess(e, cb);
- };
- };
- this.stop = function () {
- options.debug("AudioRecorder: stop()");
- if (scriptProcessor) {
- scriptProcessor.onaudioprocess = undefined;
- }
- if (audioInput) {
- audioInput.disconnect();
- }
-
- // https://developer.mozilla.org/en-US/docs/Web/API/AudioContext/close
- if (hasAudioContext()) {
- if (getAudioContext().close) {
- getAudioContext().close().then(function () {
- options.debug("AudioRecorder: audio context is closed");
- vcAudioContext = null;
- }).catch(function (err) {
- throw _videomailError.default.create(err, options);
- });
- } else {
- vcAudioContext = null;
- }
- }
- };
- this.getSampleRate = function () {
- if (hasAudioContext()) {
- return getAudioContext().sampleRate;
- }
- return -1;
- };
-}
-
-},{"./browser":120,"./videomailError":126,"@babel/runtime/helpers/interopRequireDefault":4,"audio-sample":14,"is-power-of-two":67}],120:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-var _typeof2 = _interopRequireDefault(_dereq_("@babel/runtime/helpers/typeof"));
-var _defined = _interopRequireDefault(_dereq_("defined"));
-var _uaParserJs = _interopRequireDefault(_dereq_("ua-parser-js"));
-var _videomailError = _interopRequireDefault(_dereq_("./videomailError"));
-var FALLBACK_VIDEO_TYPE = "mp4";
-var Browser = function Browser(options) {
- options || (options = {});
- var firefoxDownload = "http://www.mozilla.org/firefox/update/";
- var edgeDownload = "https://www.microsoft.com/en-us/download/details.aspx?id=48126";
- var chromeDownload = "http://www.google.com/chrome/";
- var chromiumDownload = "http://www.chromium.org/getting-involved/download-chromium";
- var ua = (0, _defined.default)(options.fakeUaString, typeof window !== "undefined" && window.navigator && window.navigator.userAgent, "");
- var uaParser = new _uaParserJs.default(ua).getResult();
- var isIOS = uaParser.os.name === "iOS";
- var browserVersion = parseFloat(uaParser.browser.version);
- var isChrome = uaParser.browser.name === "Chrome";
- var isBrave = uaParser.browser.name === "Brave";
- var isChromium = uaParser.browser.name === "Chromium";
- var firefox = uaParser.browser.name === "Firefox";
- var osVersion = parseFloat(uaParser.os.version);
- var isWindows = uaParser.os.name === "Windows";
- var isEdge = uaParser.browser.name === "Edge" || isWindows && osVersion >= 10;
- var isSafari = /Safari/.test(uaParser.browser.name);
- var isOpera = /Opera/.test(uaParser.browser.name);
- var isAndroid = /Android/.test(uaParser.os.name);
- var chromeBased = isChrome || isChromium;
- var isFacebook = uaParser.browser.name === "Facebook"; // Facebook App for iOS & Android
-
- var isMobile = isIOS || isAndroid;
- var isOkSafari = isSafari && browserVersion >= 11;
- var isOkIOS = isIOS && osVersion >= 11;
- var isBadIOS = isIOS && osVersion < 11;
- // unfortunately need to be able to fake https because tape-run can't run on https
- var isHTTPS = options.fakeHttps || window.location.protocol === "https:";
- var okBrowser = chromeBased || firefox || isAndroid || isOpera || isEdge || isOkSafari || isOkIOS || isBrave;
- var self = this;
- var videoType;
- function getRecommendation() {
- var warning;
- if (firefox) {
- if (isIOS) {
- warning = "Firefox on iOS is not ready for cameras yet. Hopefully in near future ...";
- } else {
- warning = "Probably you need to ") + "upgrade Firefox to fix this.";
- }
- } else if (isChrome) {
- if (isIOS) {
- warning = "Use Safari instead. Apple doesn't give Chrome access to iPhone cameras (booo).";
- } else {
- warning = "Probably you need to ") + "upgrade Chrome to fix this.";
- }
- } else if (isChromium) {
- warning = "Probably you need to ") + "upgrade Chromium to fix this.";
- } else if (isOkSafari) {
- warning = "Probably you need to shut down Safari and restart it, this for correct webcam access.";
- } else if (isSafari) {
- warning = "Safari below version 11 has no webcam support. Better upgrade Safari or pick" + " Chrome ,") + " Firefox or Android.");
- }
- return warning;
- }
- function getUserMediaWarning() {
- var warning;
- if (isBadIOS) {
- warning = "On iPads or iPhones below iOS v11 this camera feature is missing. " + "For now, we recommend you to upgrade iOS or to use an Android device.";
- } else {
- warning = getRecommendation();
- }
- if (!warning) {
- if (self.isChromeBased() || self.isFirefox() || isSafari) {
- warning = "For the webcam feature, your browser needs an upgrade.";
- } else if (isFacebook) {
- warning = "Hence we recommend you to use a real browser like " + "Chrome , ") + "Firefox or ") + "Edge .");
- } else {
- warning = "Hence we recommend you to use either " + "Chrome , ") + "Firefox , ") + "Edge or Android.");
- }
- }
- return warning;
- }
- this.canRecord = function () {
- var hasNavigator = typeof navigator !== "undefined";
- var canRecord = false;
- if (hasNavigator && navigator.mediaDevices && navigator.mediaDevices.getUserMedia) {
- canRecord = true;
- } else {
- var getUserMediaType = hasNavigator && (0, _typeof2.default)(navigator.getUserMedia_);
- canRecord = getUserMediaType === "function";
- }
- return canRecord;
- };
- this.checkRecordingCapabilities = function () {
- var err;
- if (!isHTTPS) {
- err = _videomailError.default.create("Sorry, your page is insecure", "Please switch to HTTPS to ensure all is encrypted.", options, {
- classList: [_videomailError.default.BROWSER_PROBLEM]
- });
- } else if (!okBrowser || !this.canRecord()) {
- var classList = [];
- if (isBadIOS) {
- classList.push(_videomailError.default.IOS_PROBLEM);
- } else {
- classList.push(_videomailError.default.BROWSER_PROBLEM);
- }
- var message;
-
- // good to be able to distinguish between two reasons why and what sort of camera it is
- if (!okBrowser) {
- if (isMobile) {
- message = "Sorry, your browser is unable to use your mobile camera";
- } else {
- message = "Sorry, your browser is unable to use webcams";
- }
- } else if (isMobile) {
- if (isFacebook) {
- message = "Sorry, the Facebook app cannot record from your mobile camera";
- } else {
- message = "Sorry, your browser cannot record from your mobile camera";
- }
- } else {
- message = "Sorry, your browser cannot record from webcams";
- }
- if (isBadIOS) {
- /*
- * on older iPhones length of JSON is limited and breaking
- * so just don't report and ignore
- */
- options.reportErrors = false;
- }
- err = _videomailError.default.create(message, getUserMediaWarning(), options, {
- classList: classList
- });
- }
- return err;
- };
- this.checkBufferTypes = function () {
- var err;
- if (typeof window === "undefined" || typeof window.atob === "undefined") {
- err = _videomailError.default.create("atob is not supported", options);
- } else if (typeof window.ArrayBuffer === "undefined") {
- err = _videomailError.default.create("ArrayBuffers are not supported", options);
- } else if (typeof window.Uint8Array === "undefined") {
- err = _videomailError.default.create("Uint8Arrays are not supported", options);
- }
- return err;
- };
- function canPlayType(video, type) {
- var canPlayType;
- if (video && video.canPlayType) {
- canPlayType = video.canPlayType("video/".concat(type));
- }
-
- // definitely cannot be played here
- if (canPlayType === "") {
- return false;
- }
- return canPlayType;
- }
- this.getVideoType = function (video) {
- if (!videoType && video) {
- if (canPlayType(video, "mp4")) {
- videoType = "mp4";
- } else if (canPlayType(video, "webm")) {
- videoType = "webm";
- }
- }
- if (videoType !== "webm" && videoType !== "mp4") {
- // we only support these two. anything else defaults to the fallback.
- videoType = FALLBACK_VIDEO_TYPE;
- }
- if (!videoType || videoType === "") {
- // just as a fallback
- videoType = FALLBACK_VIDEO_TYPE;
- }
- return videoType;
- };
- this.getNoAccessIssue = function () {
- var message = "Unable to access webcam";
- var explanation;
- if (this.isChromeBased()) {
- explanation = "Click on the allow button to grant access to your webcam";
- } else if (this.isFirefox()) {
- explanation = "Please grant Firefox access to your webcam";
- } else {
- explanation = "Your system does not let your browser access your webcam";
- }
- return _videomailError.default.create(message, explanation, options);
- };
- this.isChromeBased = function () {
- return chromeBased;
- };
- this.isFirefox = function () {
- return firefox;
- };
- this.isEdge = function () {
- return isEdge;
- };
- this.isAndroid = function () {
- return isAndroid;
- };
- this.isMobile = function () {
- return uaParser.device.type === "mobile";
- };
- this.isOkSafari = function () {
- return isOkSafari;
- };
- this.isIOS = function () {
- return isIOS;
- };
- this.getUsefulData = function () {
- return {
- browser: uaParser.browser,
- cpu: uaParser.cpu.architecture ? uaParser.cpu : undefined,
- device: uaParser.device.type ? uaParser.device : undefined,
- engine: uaParser.engine,
- os: uaParser.os.name && uaParser.os.version ? uaParser.os : undefined
- };
- };
-};
-var _default = exports.default = Browser;
-
-},{"./videomailError":126,"@babel/runtime/helpers/interopRequireDefault":4,"@babel/runtime/helpers/typeof":10,"defined":29,"ua-parser-js":104}],121:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = _default;
-var _toConsumableArray2 = _interopRequireDefault(_dereq_("@babel/runtime/helpers/toConsumableArray"));
-var _formatUtil = _interopRequireDefault(_dereq_("format-util"));
-var _browser = _interopRequireDefault(_dereq_("./browser"));
-function _default() {
- var localOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- var browser = new _browser.default(localOptions);
- var logger = localOptions.logger || console;
- var stack = [];
- function lifo(level, parameters) {
- var line = _formatUtil.default.apply(void 0, (0, _toConsumableArray2.default)(parameters));
- if (stack.length > localOptions.logStackSize) {
- stack.pop();
- }
- stack.push("[".concat(level, "] ").concat(line));
- return line;
- }
-
- /*
- * workaround: since we cannot overwrite console.log without having the correct file and line number
- * we'll use groupCollapsed() and trace() instead to get these.
- */
- this.debug = function () {
- var args = [].slice.call(arguments, 0);
- var output = lifo("debug", args);
- if (localOptions.verbose) {
- if (browser.isFirefox()) {
- logger.debug(output);
- } else if (logger.groupCollapsed) {
- logger.groupCollapsed(output);
- logger.trace("Trace");
- logger.groupEnd();
- } else if (logger.debug) {
- logger.debug(output);
- } else {
- // last resort if everything else fails for any weird reasons
- console.log(output);
- }
- }
- };
- this.error = function () {
- var args = [].slice.call(arguments, 0);
- logger.error(lifo("error", args));
- };
- this.warn = function () {
- var args = [].slice.call(arguments, 0);
- logger.warn(lifo("warn", args));
- };
- this.getLines = function () {
- return stack;
- };
-}
-
-},{"./browser":120,"@babel/runtime/helpers/interopRequireDefault":4,"@babel/runtime/helpers/toConsumableArray":7,"format-util":46}],122:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = _default;
-var _despot = _interopRequireDefault(_dereq_("despot"));
-var _safeJsonStringify = _interopRequireDefault(_dereq_("safe-json-stringify"));
-var _events = _interopRequireDefault(_dereq_("./../events"));
-var _videomailError = _interopRequireDefault(_dereq_("./videomailError"));
-// TODO: MAKE EVENT EMITTING IN DESPOT NOT GLOBAL BUT BY CONTAINER ID INSTEAD
-
-function _default(options, name) {
- this.emit = function (event) {
- var args = Array.prototype.slice.call(arguments, 0);
- if (!event) {
- throw _videomailError.default.create("You cannot emit without an event.", options);
- }
-
- // Automatically convert errors to videomail errors
- if (event === _events.default.ERROR) {
- var err = args[1];
- err = _videomailError.default.create(err, options);
- args[1] = err;
- }
- if (options.debug) {
- if (event !== "removeListener" && event !== "newListener") {
- var moreArguments;
- if (args[1]) {
- moreArguments = args.slice(1);
- }
- if (moreArguments) {
- options.debug("".concat(name, " emits ").concat(event, " with ").concat((0, _safeJsonStringify.default)(moreArguments)));
- } else {
- options.debug("".concat(name, " emits ").concat(event));
- }
- }
- }
- var result = _despot.default.emit.apply(_despot.default, args);
-
- /*
- * Todo: have this emitted through a configuration because it is pretty noisy
- * if (event !== Events.EVENT_EMITTED)
- * this.emit(Events.EVENT_EMITTED, event)
- */
-
- return result;
- };
- this.on = function (eventName, cb) {
- return _despot.default.on(eventName, cb);
- };
- this.once = function (eventName, cb) {
- return _despot.default.once(eventName, cb);
- };
- this.listeners = function (eventName) {
- return _despot.default.listeners(eventName);
- };
- this.removeListener = function (eventName, cb) {
- return _despot.default.removeListener(eventName, cb);
- };
- this.removeAllListeners = function () {
- _despot.default.removeAllListeners();
- };
-}
-
-},{"./../events":113,"./videomailError":126,"@babel/runtime/helpers/interopRequireDefault":4,"despot":30,"safe-json-stringify":93}],123:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-var _filesize2 = _dereq_("filesize");
-var _humanizeDuration = _interopRequireDefault(_dereq_("humanize-duration"));
-// todo get rid of this class and use those imports directly
-var _default = exports.default = {
- filesize: function filesize(bytes, round) {
- return (0, _filesize2.filesize)(bytes, {
- round: round
- });
- },
- toTime: function toTime(t) {
- return (0, _humanizeDuration.default)(t);
- }
-};
-
-},{"@babel/runtime/helpers/interopRequireDefault":4,"filesize":45,"humanize-duration":61}],124:[function(_dereq_,module,exports){
-"use strict";
-
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-/*
- * taken from
- * https://bbc.github.io/tal/jsdoc/events_mediaevent.js.html
- */
-var _default = exports.default = [
-/*
- * The user agent begins looking for media data, as part of
- * the resource selection algorithm.
- */
-"loadstart",
-/*
- * The user agent is intentionally not currently fetching media data,
- * but does not have the entire media resource downloaded. networkState equals NETWORK_IDLE
- */
-"suspend",
-/*
- * Playback has begun. Fired after the play() method has returned,
- * or when the autoplay attribute has caused playback to begin.
- * paused is newly false.
- * 'play', commented out since it has special treatment
- */
-
-/*
- * The user agent has just determined the duration and dimensions of the
- * media resource and the timed tracks are ready.
- * readyState is newly equal to HAVE_METADATA or greater for the first time.
- * 'loadedmetadata', commented out since it has special treatment
- */
-
-// The user agent is fetching media data.
-"progress",
-/*
- * The user agent is intentionally not currently fetching media data,
- * but does not have the entire media resource downloaded.
- * 'suspend', // commented out, we are already listening to it in code
- */
-
-/*
- * Event The user agent stops fetching the media data before it is completely downloaded,
- * but not due to an error. error is an object with the code MEDIA_ERR_ABORTED.
- */
-"abort",
-/*
- * A media element whose networkState was previously not in the NETWORK_EMPTY
- * state has just switched to that state (either because of a fatal error
- * during load that's about to be reported, or because the load() method was
- * invoked while the resource selection algorithm was already running).
- */
-"emptied",
-/*
- * The user agent is trying to fetch media data, but data is
- * unexpectedly not forthcoming
- */
-"stalled",
-/*
- * Playback has been paused. Fired after the pause() method has returned.
- * paused is newly true.
- */
-"pause",
-/*
- * The user agent can render the media data at the current playback position
- * for the first time.
- * readyState newly increased to HAVE_CURRENT_DATA or greater for the first time.
- */
-"loadeddata",
-/*
- * Playback has stopped because the next frame is not available, but the user
- * agent expects that frame to become available in due course.
- * readyState is newly equal to or less than HAVE_CURRENT_DATA,
- * and paused is false. Either seeking is true, or the current playback
- * position is not contained in any of the ranges in buffered.
- * It is possible for playback to stop for two other reasons without
- * paused being false, but those two reasons do not fire this event:
- * maybe playback ended, or playback stopped due to errors.
- */
-"waiting",
-/*
- * Playback has started. readyState is newly equal to or greater than
- * HAVE_FUTURE_DATA, paused is false, seeking is false,
- * or the current playback position is contained in one of the ranges in buffered.
- */
-"playing",
-/*
- * The user agent can resume playback of the media data,
- * but estimates that if playback were to be started now, the media resource
- * could not be rendered at the current playback rate up to its end without
- * having to stop for further buffering of content.
- * readyState newly increased to HAVE_FUTURE_DATA or greater.
- */
-"canplay",
-/*
- * The user agent estimates that if playback were to be started now,
- * the media resource could be rendered at the current playback rate
- * all the way to its end without having to stop for further buffering.
- * readyState is newly equal to HAVE_ENOUGH_DATA.
- */
-"canplaythrough",
-/*
- * The seeking IDL attribute changed to true and the seek operation is
- * taking long enough that the user agent has time to fire the event.
- */
-"seeking",
-// The seeking IDL attribute changed to false.
-"seeked",
-/*
- * Playback has stopped because the end of the media resource was reached.
- * currentTime equals the end of the media resource; ended is true.
- */
-"ended",
-/*
- * Either the defaultPlaybackRate or the playbackRate attribute
- * has just been updated.
- */
-"ratechange",
-// The duration attribute has just been updated.
-"durationchange",
-/*
- * Either the volume attribute or the muted attribute has changed.
- * Fired after the relevant attribute's setter has returned.
- */
-"volumechange"
-
-// commented out, happen too often
-
-/*
- * The current playback position changed as part of normal playback or in
- * an especially interesting way, for example discontinuously.
- * 'timeupdate'
- */];
-
-},{}],125:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = _default;
-var _typeof2 = _interopRequireDefault(_dereq_("@babel/runtime/helpers/typeof"));
-var _safeJsonStringify = _interopRequireDefault(_dereq_("safe-json-stringify"));
-var DASH = "- ";
-var SEPARATOR = " ".concat(DASH);
-function arrayToString(array) {
- if (array && array.length > 0) {
- var lines = [];
- array.forEach(function (element) {
- if (element) {
- lines.push((0, _safeJsonStringify.default)(element));
- }
- });
- return DASH + lines.join(SEPARATOR);
- }
-}
-function objectToString(object, options) {
- var propertyNames = Object.getOwnPropertyNames(object);
- var excludes = options && options.excludes || [];
- var lines = [];
- var sLines;
-
- // always ignore these
- excludes.push("stack");
- if (propertyNames && propertyNames.length > 0) {
- var exclude = false;
- propertyNames.forEach(function (name) {
- if (excludes) {
- exclude = excludes.indexOf(name) >= 0;
- }
- if (!exclude && object[name]) {
- /*
- * this to cover this problem:
- * https://github.com/binarykitchen/videomail-client/issues/157
- */
- lines.push((0, _safeJsonStringify.default)(object[name]));
- }
- });
- }
- if (lines.length === 1) {
- sLines = lines.join();
- } else if (lines.length > 1) {
- sLines = DASH + lines.join(SEPARATOR);
- }
- return sLines;
-}
-function _default(anything, options) {
- if (anything === null) {
- return "null";
- } else if (typeof anything === "undefined") {
- return "undefined";
- } else if (typeof anything === "string") {
- return anything;
- } else if (Array.isArray(anything)) {
- return arrayToString(anything);
- } else if ((0, _typeof2.default)(anything) === "object") {
- return objectToString(anything, options);
- }
- return anything.toString();
-}
-
-},{"@babel/runtime/helpers/interopRequireDefault":4,"@babel/runtime/helpers/typeof":10,"safe-json-stringify":93}],126:[function(_dereq_,module,exports){
-(function (global){(function (){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-var _typeof2 = _interopRequireDefault(_dereq_("@babel/runtime/helpers/typeof"));
-var _resource = _interopRequireDefault(_dereq_("./../resource"));
-var _createError = _interopRequireDefault(_dereq_("create-error"));
-var _safeJsonStringify = _interopRequireDefault(_dereq_("safe-json-stringify"));
-var _pretty = _interopRequireDefault(_dereq_("./pretty"));
-// https://github.com/tgriesser/create-error
-
-var VIDEOMAIL_ERR_NAME = "Videomail Error";
-var VideomailError = (0, _createError.default)(Error, VIDEOMAIL_ERR_NAME, {
- title: undefined,
- message: undefined,
- explanation: undefined,
- logLines: undefined,
- siteName: undefined,
- cookie: undefined,
- location: undefined,
- err: undefined,
- promise: undefined,
- cause: undefined,
- reason: undefined,
- browser: undefined,
- cpu: undefined,
- device: undefined,
- engine: undefined,
- os: undefined,
- screen: undefined,
- orientation: undefined
-});
-
-// shim pretty to exclude stack always
-var pretty = function pretty(anything) {
- return (0, _pretty.default)(anything, {
- excludes: ["stack"]
- });
-};
-
-// static and public attribute of this class
-VideomailError.PERMISSION_DENIED = "PERMISSION_DENIED";
-VideomailError.NOT_ALLOWED_ERROR = "NotAllowedError";
-VideomailError.NOT_CONNECTED = "Not connected";
-VideomailError.DOM_EXCEPTION = "DOMException";
-VideomailError.STARTING_FAILED = "Starting video failed";
-VideomailError.MEDIA_DEVICE_NOT_SUPPORTED = "MediaDeviceNotSupported";
-VideomailError.BROWSER_PROBLEM = "browser-problem";
-VideomailError.WEBCAM_PROBLEM = "webcam-problem";
-VideomailError.IOS_PROBLEM = "ios-problem";
-VideomailError.OVERCONSTRAINED = "OverconstrainedError";
-VideomailError.NOT_FOUND_ERROR = "NotFoundError";
-VideomailError.NOT_READABLE_ERROR = "NotReadableError";
-VideomailError.SECURITY_ERROR = "SecurityError";
-VideomailError.TRACK_START_ERROR = "TrackStartError";
-VideomailError.INVALID_STATE_ERROR = "InvalidStateError";
-
-// static function to convert an error into a videomail error
-VideomailError.create = function (err, explanation, options, parameters) {
- var _err$constructor;
- if (err && err.name === VIDEOMAIL_ERR_NAME) {
- return err;
- }
- if (!options && explanation) {
- options = explanation;
- explanation = undefined;
- }
- options || (options = {});
- parameters || (parameters = {});
- var audioEnabled = options && options.isAudioEnabled && options.isAudioEnabled();
- var classList = parameters.classList || [];
-
- /*
- * Require Browser here, not at the top of the file to avoid
- * recursion. Because the Browser class is requiring this file as well.
- */
- var Browser = _dereq_("./browser").default;
- var browser = new Browser(options);
- var errType;
- var message;
-
- // whole code is ugly because all browsers behave so differently :(
-
- if ((0, _typeof2.default)(err) === "object") {
- if (err.name === VideomailError.TRACK_START_ERROR) {
- errType = VideomailError.TRACK_START_ERROR;
- } else if (err.name === VideomailError.SECURITY_ERROR) {
- errType = VideomailError.SECURITY_ERROR;
- } else if (err.code === 8 && err.name === VideomailError.NotFoundError) {
- errType = VideomailError.NotFoundError;
- } else if (err.code === 35 || err.name === VideomailError.NOT_ALLOWED_ERROR) {
- // https://github.com/binarykitchen/videomail.io/issues/411
- errType = VideomailError.NOT_ALLOWED_ERROR;
- } else if (err.code === 1 && err.PERMISSION_DENIED === 1) {
- errType = VideomailError.PERMISSION_DENIED;
- } else if (err.constructor && err.constructor.name === VideomailError.DOM_EXCEPTION) {
- if (err.name === VideomailError.NOT_READABLE_ERROR) {
- errType = VideomailError.NOT_READABLE_ERROR;
- } else {
- errType = VideomailError.DOM_EXCEPTION;
- }
- } else if (err.constructor && err.constructor.name === VideomailError.OVERCONSTRAINED) {
- errType = VideomailError.OVERCONSTRAINED;
- } else if (err.explanation === VideomailError.STARTING_FAILED) {
- errType = err.explanation;
- } else if (err.name) {
- errType = err.name;
- } else if (err.type === "error" && err.target.bufferedAmount === 0) {
- errType = VideomailError.NOT_CONNECTED;
- }
- } else if (err === VideomailError.NOT_CONNECTED) {
- errType = VideomailError.NOT_CONNECTED;
- } else {
- errType = err;
- }
- switch (errType) {
- case VideomailError.SECURITY_ERROR:
- message = "The operation was insecure";
- explanation = "Probably you have disallowed Cookies for this page?";
- classList.push(VideomailError.BROWSER_PROBLEM);
- break;
- case VideomailError.OVERCONSTRAINED:
- message = "Invalid webcam constraints";
- if (err.constraint) {
- if (err.constraint === "width") {
- explanation = "Your webcam does not meet the width requirement.";
- } else {
- explanation = "Unmet constraint: ".concat(err.constraint);
- }
- } else {
- explanation = err.toString();
- }
- break;
- case "MediaDeviceFailedDueToShutdown":
- message = "Webcam is shutting down";
- explanation = "This happens your webcam is already switching off and not giving you permission to use it.";
- break;
- case "SourceUnavailableError":
- message = "Source of your webcam cannot be accessed";
- explanation = "Probably it is locked from another process or has a hardware error.";
- if (err.explanation) {
- err.explanation += " Details: ".concat(err.explanation);
- }
- break;
- case VideomailError.NOT_FOUND_ERROR:
- case "NO_DEVICES_FOUND":
- if (audioEnabled) {
- message = "No webcam nor microphone found";
- explanation = "Your browser cannot find a webcam with microphone attached to your machine.";
- } else {
- message = "No webcam found";
- explanation = "Your browser cannot find a webcam attached to your machine.";
- }
- classList.push(VideomailError.WEBCAM_PROBLEM);
- break;
- case "PermissionDismissedError":
- message = "Ooops, you didn't give me any permissions?";
- explanation = "Looks like you skipped the webcam permission dialogue. " + "Please grant access next time the dialogue appears.";
- classList.push(VideomailError.WEBCAM_PROBLEM);
- break;
- case VideomailError.NOT_ALLOWED_ERROR:
- case VideomailError.PERMISSION_DENIED:
- case "PermissionDeniedError":
- message = "Permission denied";
- explanation = "Cannot access your webcam. This can have two reasons: " + "a) you blocked access to webcam; or " + "b) your webcam is already in use.";
- classList.push(VideomailError.WEBCAM_PROBLEM);
- break;
- case "HARDWARE_UNAVAILABLE":
- message = "Webcam is unavailable";
- explanation = "Maybe it is already busy in another window?";
- if (browser.isChromeBased() || browser.isFirefox()) {
- explanation += " Or you have to allow access above?";
- }
- classList.push(VideomailError.WEBCAM_PROBLEM);
- break;
- case VideomailError.NOT_CONNECTED:
- message = "Unable to connect";
- explanation = "Either the videomail server or your connection is down. " + "Trying to reconnect every few seconds …";
- break;
- case "NO_VIDEO_FEED":
- message = "No video feed found!";
- explanation = "Your webcam is already used in another browser.";
- classList.push(VideomailError.WEBCAM_PROBLEM);
- break;
- case VideomailError.STARTING_FAILED:
- message = "Starting video failed";
- explanation = "Most likely this happens when the webcam is already active in another browser";
- classList.push(VideomailError.WEBCAM_PROBLEM);
- break;
- case "DevicesNotFoundError":
- message = "No available webcam could be found";
- explanation = "Looks like you do not have any webcam attached to your machine; or " + "the one you plugged in is already used.";
- classList.push(VideomailError.WEBCAM_PROBLEM);
- break;
- case VideomailError.NOT_READABLE_ERROR:
- case VideomailError.TRACK_START_ERROR:
- message = "No access to webcam";
- explanation = "A hardware error occurred which prevented access to your webcam";
- classList.push(VideomailError.WEBCAM_PROBLEM);
- break;
- case VideomailError.INVALID_STATE_ERROR:
- message = "Invalid state";
- explanation = "Video recording stream from your webcam already has finished";
- classList.push(VideomailError.WEBCAM_PROBLEM);
- break;
- case VideomailError.DOM_EXCEPTION:
- switch (err.code) {
- case 8:
- message = "Requested webcam not found";
- explanation = "A webcam is needed but could not be found";
- classList.push(VideomailError.WEBCAM_PROBLEM);
- break;
- case 9:
- {
- var newUrl = "https:".concat(window.location.href.substring(window.location.protocol.length));
- message = "Security upgrade needed";
- explanation = "Click here to switch to HTTPs which is more safe ") + " and enables encrypted videomail transfers.";
- classList.push(VideomailError.BROWSER_PROBLEM);
- break;
- }
- case 11:
- message = "Invalid State";
- explanation = "The object is in an invalid, unusable state";
- classList.push(VideomailError.BROWSER_PROBLEM);
- break;
- default:
- message = "DOM Exception";
- explanation = pretty(err);
- classList.push(VideomailError.BROWSER_PROBLEM);
- break;
- }
- break;
-
- /*
- * Chrome has a weird problem where if you try to do a getUserMedia request too early, it
- * can return a MediaDeviceNotSupported error (even though nothing is wrong and permission
- * has been granted). Look at userMediaErrorCallback() in recorder, there we do not
- * emit those kind of errors further and just retry.
- *
- * but for whatever reasons, if it happens to reach this code, then investigate this further.
- */
- case VideomailError.MEDIA_DEVICE_NOT_SUPPORTED:
- message = "Media device not supported";
- explanation = pretty(err);
- break;
- default:
- {
- var originalExplanation = explanation;
- if (explanation && (0, _typeof2.default)(explanation) === "object") {
- explanation = pretty(explanation);
- }
-
- /*
- * it can be that explanation itself is an error object
- * error objects can be prettified to undefined sometimes
- */
- if (!explanation && originalExplanation) {
- if (originalExplanation.explanation) {
- explanation = originalExplanation.explanation;
- } else {
- // tried toString before but nah
- explanation = "Inspected: ".concat((0, _safeJsonStringify.default)(originalExplanation));
- }
- }
- if (err) {
- if (typeof err === "string") {
- message = err;
- } else {
- if (err.message) {
- message = pretty(err.message) + " (pretty)";
- }
- if (err.explanation) {
- if (!explanation) {
- explanation = pretty(err.explanation);
- } else {
- explanation += "; ".concat(pretty(err.explanation));
- }
- }
- if (err.details) {
- var details = pretty(err.details);
- if (!explanation) {
- explanation = details;
- } else if (details) {
- explanation += "; ".concat(details);
- }
- }
- }
- }
-
- // for weird, undefined cases
- if (!message) {
- if (errType) {
- message = errType + " (weird)";
- }
- if (!explanation && err) {
- explanation = pretty(err, {
- excludes: ["stack"]
- });
- }
-
- // avoid dupes
- if (pretty(message) === explanation) {
- explanation = undefined;
- }
- }
- break;
- }
- }
- var logLines = null;
- if (options.logger && options.logger.getLines) {
- logLines = options.logger.getLines();
- }
-
- // be super robust
- var debug = options && options.debug || console.log;
- debug("VideomailError: create()", message, explanation || "(no explanation set)");
- var usefulClientData = browser.getUsefulData();
- var cookies = global.document.cookie.split("; ");
- var errData = {
- title: "videomail-client error",
- message: message,
- explanation: explanation,
- logLines: logLines,
- siteName: options.siteName,
- browser: usefulClientData.browser,
- cpu: usefulClientData.cpu,
- device: usefulClientData.device,
- engine: usefulClientData.engine,
- os: usefulClientData.os,
- location: window.location.href,
- cookie: cookies.length > 0 ? cookies.join(",\n") : undefined,
- screen: [screen.width, screen.height, screen.colorDepth].join("×"),
- orientation: typeof screen.orientation === "string" ? screen.orientation : screen.orientation.type.toString(),
- // Consider removing later once sorted
- errNo: err === null || err === void 0 ? void 0 : err.errno,
- errCode: err === null || err === void 0 ? void 0 : err.code,
- errName: err === null || err === void 0 ? void 0 : err.name,
- errType: err === null || err === void 0 ? void 0 : err.type,
- errConstraint: err === null || err === void 0 ? void 0 : err.constraint,
- errConstructorName: err === null || err === void 0 || (_err$constructor = err.constructor) === null || _err$constructor === void 0 ? void 0 : _err$constructor.name
- };
- var videomailError = new VideomailError(err instanceof Error ? err : message, errData);
- var resource;
- var reportErrors = false;
- if (options.reportErrors) {
- if (typeof options.reportErrors === "function") {
- reportErrors = options.reportErrors(videomailError);
- } else {
- reportErrors = options.reportErrors;
- }
- }
- if (reportErrors) {
- resource = new _resource.default(options);
- }
- if (resource) {
- resource.reportError(videomailError, function (err2) {
- if (err2) {
- console.error("Unable to report error", err2);
- }
- });
- }
- function hasClass(name) {
- return classList.indexOf(name) >= 0;
- }
- function isBrowserProblem() {
- return hasClass(VideomailError.BROWSER_PROBLEM) || parameters.browserProblem;
- }
-
- // add some public functions
-
- // this one is useful so that the notifier can have different css classes
- videomailError.getClassList = function () {
- return classList;
- };
- videomailError.removeDimensions = function () {
- return hasClass(VideomailError.IOS_PROBLEM) || browser.isMobile();
- };
- videomailError.hideButtons = function () {
- return isBrowserProblem() || hasClass(VideomailError.IOS_PROBLEM);
- };
- videomailError.hideForm = function () {
- return hasClass(VideomailError.IOS_PROBLEM);
- };
- return videomailError;
-};
-var _default = exports.default = VideomailError;
-
-}).call(this)}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
-},{"./../resource":115,"./browser":120,"./pretty":125,"@babel/runtime/helpers/interopRequireDefault":4,"@babel/runtime/helpers/typeof":10,"create-error":26,"safe-json-stringify":93}],127:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-var _contains = _interopRequireDefault(_dereq_("contains"));
-var _hidden = _interopRequireDefault(_dereq_("hidden"));
-var _hyperscript = _interopRequireDefault(_dereq_("hyperscript"));
-var _inherits = _interopRequireDefault(_dereq_("inherits"));
-var _events = _interopRequireDefault(_dereq_("../events"));
-var _eventEmitter = _interopRequireDefault(_dereq_("../util/eventEmitter"));
-var Buttons = function Buttons(container, options) {
- _eventEmitter.default.call(this, options, "Buttons");
- var self = this;
- var debug = options.debug;
- var buttonsElement;
- var recordButton;
- var pauseButton;
- var resumeButton;
- var previewButton;
- var recordAgainButton;
- var submitButton;
- var audioOnRadioPair;
- var audioOffRadioPair;
- var built;
- function hide(elements) {
- if (elements && !Array.isArray(elements)) {
- elements = [elements];
- }
- elements && elements.forEach(function (element) {
- (0, _hidden.default)(element, true);
- });
- }
- function show(elements) {
- if (elements && !Array.isArray(elements)) {
- elements = [elements];
- }
- elements && elements.forEach(function (element) {
- (0, _hidden.default)(element, false);
- });
- }
- function isShown(elements) {
- var isShown = elements && true;
- if (elements && !Array.isArray(elements)) {
- elements = [elements];
- }
- elements && elements.forEach(function (element) {
- isShown && (isShown = element && !(0, _hidden.default)(element));
- });
- return isShown;
- }
- function disable(elements) {
- if (elements && !Array.isArray(elements)) {
- elements = [elements];
- }
- elements && elements.forEach(function (element) {
- // https://github.com/binarykitchen/videomail-client/issues/148
- if (element) {
- if (element.tagName === "INPUT" || element.tagName === "BUTTON") {
- element.disabled = true;
- } else {
- element.classList.add("disabled");
- }
- }
- });
- }
- function enable(elements) {
- if (elements && !Array.isArray(elements)) {
- elements = [elements];
- }
- elements && elements.forEach(function (element) {
- // https://github.com/binarykitchen/videomail-client/issues/148
- if (element) {
- if (element.tagName === "INPUT" || element.tagName === "BUTTON") {
- element.disabled = false;
- } else {
- element.classList.remove("disabled");
- }
- }
- });
- }
- function adjustButton(buttonElement, show, type, disabled) {
- if (disabled) {
- disable(buttonElement);
- }
- if (type) {
- buttonElement.type = type;
- } else if (!buttonElement.type) {
- buttonElement.type = "button";
- }
- !show && hide(buttonElement);
- return buttonElement;
- }
- function replaceClickHandler(element, clickHandler) {
- var wrappedClickHandler = function wrappedClickHandler(e) {
- e && e.preventDefault();
- try {
- clickHandler({
- event: e
- });
- } catch (exc) {
- self.emit(_events.default.ERROR, exc);
- }
- };
- element.onclick = wrappedClickHandler;
- }
- function makeRadioButtonPair(options) {
- var radioButtonElement;
- var radioButtonGroup;
- if (options.id) {
- radioButtonElement = document.getElementById(options.id);
- }
- if (!radioButtonElement) {
- radioButtonElement = (0, _hyperscript.default)("input#".concat(options.id), {
- type: "radio",
- name: options.name,
- value: options.value,
- checked: options.checked
- });
- radioButtonGroup = (0, _hyperscript.default)("span.radioGroup", radioButtonElement, (0, _hyperscript.default)("label", {
- htmlFor: options.id
- }, options.label));
-
- // double check that submit button is already in the buttonsElement container as a child?
- if (submitButton && (0, _contains.default)(buttonsElement, submitButton)) {
- buttonsElement.insertBefore(radioButtonGroup, submitButton);
- } else {
- buttonsElement.appendChild(radioButtonGroup);
- }
- }
- if (options.changeHandler) {
- radioButtonElement.onchange = options.changeHandler;
- }
- disable(radioButtonElement);
- return radioButtonElement;
- }
- function makeButton(buttonClass, text, clickHandler, show, id, type, selector) {
- var disabled = arguments.length > 7 && arguments[7] !== undefined ? arguments[7] : true;
- var buttonElement;
- if (id) {
- buttonElement = document.getElementById(id);
- } else if (selector) {
- buttonElement = document.querySelector(selector);
- } else {
- buttonElement = buttonsElement.querySelector(".".concat(buttonClass));
- }
- if (!buttonElement) {
- if (options.selectors.buttonClass) {
- buttonClass += ".".concat(options.selectors.buttonClass);
- }
- buttonElement = (0, _hyperscript.default)("button.".concat(buttonClass));
- buttonElement = adjustButton(buttonElement, show, type, disabled);
- buttonElement.innerHTML = text;
-
- // double check that submit button is already in the buttonsElement container
- if (submitButton && (0, _contains.default)(buttonsElement, submitButton)) {
- buttonsElement.insertBefore(buttonElement, submitButton);
- } else {
- buttonsElement.appendChild(buttonElement);
- }
- } else {
- buttonElement = adjustButton(buttonElement, show, type, disabled);
- }
- if (clickHandler) {
- replaceClickHandler(buttonElement, clickHandler);
- }
- return buttonElement;
- }
- function buildButtons() {
- if (!options.disableSubmit) {
- if (!submitButton) {
- submitButton = makeButton(options.selectors.submitButtonClass, "Submit", null, true, options.selectors.submitButtonId, "submit", options.selectors.submitButtonSelector, options.enableAutoValidation);
- } else {
- disable(submitButton);
- }
-
- /*
- * no need to listen to the submit event when it's already listened
- * within the form element class
- */
- if (!container.hasForm() && submitButton) {
- replaceClickHandler(submitButton, submit);
- }
- }
- recordButton = makeButton(options.selectors.recordButtonClass, options.text.buttons.record, record, false);
- if (options.enablePause) {
- pauseButton = makeButton(options.selectors.pauseButtonClass, options.text.buttons.pause, container.pause, false);
- }
- if (options.enablePause) {
- resumeButton = makeButton(options.selectors.resumeButtonClass, options.text.buttons.resume, container.resume, false);
- }
-
- /*
- * show stop only when pause is enabled - looks better that way otherwise button
- * move left and right between record and stop (preview)
- */
- previewButton = makeButton(options.selectors.previewButtonClass, options.text.buttons.preview, container.stop, false);
- recordAgainButton = makeButton(options.selectors.recordAgainButtonClass, options.text.buttons.recordAgain, recordAgain, false);
- if (options.audio && options.audio.switch) {
- audioOffRadioPair = makeRadioButtonPair({
- id: "audioOffOption",
- name: "audio",
- value: "off",
- label: options.text.audioOff,
- checked: !options.isAudioEnabled(),
- changeHandler: function changeHandler() {
- container.disableAudio();
- }
- });
- audioOnRadioPair = makeRadioButtonPair({
- id: "audioOnOption",
- name: "audio",
- value: "on",
- label: options.text.audioOn,
- checked: options.isAudioEnabled(),
- changeHandler: function changeHandler() {
- container.enableAudio();
- }
- });
- }
- }
- function onFormReady(params) {
- // no need to show record button when doing a record again
- if (!isShown(recordAgainButton)) {
- if (!params.paused) {
- show(recordButton);
- }
- }
- if (!params.paused) {
- disable(previewButton);
- hide(previewButton);
- }
- if (!options.enableAutoValidation) {
- enable(submitButton);
- }
- }
- function onGoingBack() {
- hide(recordAgainButton);
- show(recordButton);
- show(submitButton);
- }
- function onReplayShown() {
- self.hide();
- }
- function onUserMediaReady(params) {
- onFormReady(params);
- if (isShown(recordButton) && !params.recordWhenReady) {
- enable(recordButton);
- } else if (isShown(recordAgainButton) && !params.recordWhenReady) {
- enable(recordAgainButton);
- }
- if (options.enableAutoValidation) {
- disable(submitButton);
- }
- if (!params.recordWhenReady) {
- if (isShown(audioOnRadioPair)) {
- enable(audioOnRadioPair);
- }
- if (isShown(audioOffRadioPair)) {
- enable(audioOffRadioPair);
- }
- }
- }
- function onResetting() {
- disable(submitButton);
- self.reset();
- }
- function onPreview() {
- hide(recordButton);
- hide(previewButton);
- disable(audioOnRadioPair);
- disable(audioOffRadioPair);
- show(recordAgainButton);
- enable(recordAgainButton);
- if (!options.enableAutoValidation) {
- enable(submitButton);
- }
- }
- this.enableSubmit = function () {
- enable(submitButton);
- };
- this.adjustButtonsForPause = function () {
- if (!self.isCountingDown()) {
- pauseButton && hide(pauseButton);
- show(resumeButton);
- enable(resumeButton);
- hide(recordButton);
- show(previewButton);
- enable(previewButton);
- }
- };
- function onFirstFrameSent() {
- hide(recordButton);
- hide(recordAgainButton);
- if (pauseButton) {
- show(pauseButton);
- enable(pauseButton);
- }
- enable(previewButton);
- show(previewButton);
- }
- function onRecording(framesCount) {
- /*
- * it is possible to hide while recording, hence
- * check framesCount first (coming from recorder)
- */
- if (framesCount > 1) {
- onFirstFrameSent();
- } else {
- disable(audioOffRadioPair);
- disable(audioOnRadioPair);
- disable(recordAgainButton);
- disable(recordButton);
- }
- }
- function onResuming() {
- hide(resumeButton);
- hide(recordButton);
- if (pauseButton) {
- enable(pauseButton);
- show(pauseButton);
- }
- }
- function onStopping() {
- disable(previewButton);
- disable(recordButton);
- hide(pauseButton);
- hide(resumeButton);
- }
- function onCountdown() {
- disable(recordButton);
- disable(audioOffRadioPair);
- disable(audioOnRadioPair);
- }
- function onSubmitting() {
- debug("Buttons: onSubmitting()");
- disable(submitButton);
- disable(recordAgainButton);
- }
- function onSubmitted() {
- disable(previewButton);
- disable(recordAgainButton);
- disable(recordButton);
- disable(submitButton);
- }
- function onInvalid() {
- if (options.enableAutoValidation) {
- disable(submitButton);
- }
- }
- function onValid() {
- if (options.enableAutoValidation) {
- enable(submitButton);
- }
- }
- function onHidden() {
- hide(recordButton);
- hide(previewButton);
- hide(recordAgainButton);
- hide(resumeButton);
- hide(audioOnRadioPair);
- hide(audioOffRadioPair);
- }
- function onEnablingAudio() {
- debug("Buttons: onEnablingAudio()");
- disable(recordButton);
- disable(audioOnRadioPair);
- disable(audioOffRadioPair);
- }
- function onDisablingAudio() {
- debug("Buttons: onDisablingAudio()");
- disable(recordButton);
- disable(audioOnRadioPair);
- disable(audioOffRadioPair);
- }
- function recordAgain() {
- disable(recordAgainButton);
- container.beginWaiting();
- container.recordAgain();
- }
- function onStartingOver() {
- show(submitButton);
- }
- function submit() {
- container.submit();
- }
- function record(params) {
- disable(recordButton);
- container.record(params);
- }
- function initEvents() {
- debug("Buttons: initEvents()");
- self.on(_events.default.USER_MEDIA_READY, function (params) {
- if (!params.switchingFacingMode) {
- onUserMediaReady(params);
- }
- }).on(_events.default.PREVIEW, function () {
- onPreview();
- }).on(_events.default.PAUSED, function () {
- self.adjustButtonsForPause();
- }).on(_events.default.RECORDING, function (framesCount) {
- onRecording(framesCount);
- }).on(_events.default.FIRST_FRAME_SENT, function () {
- onFirstFrameSent();
- }).on(_events.default.RESUMING, function () {
- onResuming();
- }).on(_events.default.STOPPING, function () {
- onStopping();
- }).on(_events.default.COUNTDOWN, function () {
- onCountdown();
- }).on(_events.default.SUBMITTING, function () {
- onSubmitting();
- }).on(_events.default.RESETTING, function () {
- onResetting();
- }).on(_events.default.INVALID, function () {
- onInvalid();
- }).on(_events.default.VALID, function () {
- onValid();
- }).on(_events.default.SUBMITTED, function () {
- onSubmitted();
- }).on(_events.default.HIDE, function () {
- onHidden();
- }).on(_events.default.FORM_READY, function (params) {
- onFormReady(params);
- }).on(_events.default.REPLAY_SHOWN, function () {
- onReplayShown();
- }).on(_events.default.GOING_BACK, function () {
- onGoingBack();
- }).on(_events.default.ENABLING_AUDIO, function () {
- onEnablingAudio();
- }).on(_events.default.DISABLING_AUDIO, function () {
- onDisablingAudio();
- }).on(_events.default.STARTING_OVER, function () {
- onStartingOver();
- }).on(_events.default.CONNECTED, function () {
- if (options.loadUserMediaOnRecord) {
- if (isShown(recordButton)) {
- enable(recordButton);
- }
- }
- }).on(_events.default.DISCONNECTED, function () {
- disable(recordButton);
- disable(audioOnRadioPair);
- disable(audioOffRadioPair);
- }).on(_events.default.ERROR, function (err) {
- /*
- * since https://github.com/binarykitchen/videomail-client/issues/60
- * we hide areas to make it easier for the user
- */
- if (err.hideButtons && err.hideButtons() && options.adjustFormOnBrowserError) {
- self.hide();
- }
- });
- }
- this.reset = function () {
- options.debug("Buttons: reset()");
- disable(pauseButton);
- disable(resumeButton);
- disable(recordButton);
- disable(previewButton);
- disable(recordAgainButton);
- disable(audioOnRadioPair);
- disable(audioOffRadioPair);
- };
- this.isRecordAgainButtonEnabled = function () {
- return !recordAgainButton.disabled;
- };
- this.isReady = function () {
- if (!recordButton) {
- // No recordButton? Ok, must be in playerOnly mode. So, not ready for recording
- return false;
- }
- return this.isRecordButtonEnabled();
- };
- this.isRecordButtonEnabled = function () {
- return !recordButton.disabled;
- };
- this.setSubmitButton = function (newSubmitButton) {
- submitButton = newSubmitButton;
- };
- this.getSubmitButton = function () {
- return submitButton;
- };
- this.build = function () {
- buttonsElement = container.querySelector(".".concat(options.selectors.buttonsClass));
- if (!buttonsElement) {
- buttonsElement = (0, _hyperscript.default)("div.".concat(options.selectors.buttonsClass));
- container.appendChild(buttonsElement);
- }
- buildButtons();
- !built && initEvents();
- built = true;
- };
- this.unload = function () {
- if (built) {
- // Disables all buttons
- self.reset();
- debug("Buttons: unload()");
- self.removeAllListeners();
- self.hide();
- built = false;
- }
- };
- this.hide = function (params) {
- hide(buttonsElement);
- if (params && params.deep) {
- hide(recordButton);
- hide(pauseButton);
- hide(resumeButton);
- hide(previewButton);
- hide(recordAgainButton);
- hide(submitButton);
- hide(audioOnRadioPair);
- hide(audioOffRadioPair);
- }
- };
- this.show = function () {
- show(buttonsElement);
- };
- this.isCountingDown = function () {
- return container.isCountingDown();
- };
-};
-(0, _inherits.default)(Buttons, _eventEmitter.default);
-var _default = exports.default = Buttons;
-
-},{"../events":113,"../util/eventEmitter":122,"@babel/runtime/helpers/interopRequireDefault":4,"contains":24,"hidden":60,"hyperscript":62,"inherits":65}],128:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-var _defineProperty2 = _interopRequireDefault(_dereq_("@babel/runtime/helpers/defineProperty"));
-var _documentVisibility = _interopRequireDefault(_dereq_("document-visibility"));
-var _hidden = _interopRequireDefault(_dereq_("hidden"));
-var _insertCss = _interopRequireDefault(_dereq_("insert-css"));
-var _safeJsonStringify = _interopRequireDefault(_dereq_("safe-json-stringify"));
-var _inherits = _interopRequireDefault(_dereq_("inherits"));
-var _mainMinCss = _interopRequireDefault(_dereq_("../styles/css/main.min.css.js"));
-var _events = _interopRequireDefault(_dereq_("../events"));
-var _resource = _interopRequireDefault(_dereq_("../resource"));
-var _eventEmitter = _interopRequireDefault(_dereq_("../util/eventEmitter"));
-var _videomailError = _interopRequireDefault(_dereq_("../util/videomailError"));
-var _buttons = _interopRequireDefault(_dereq_("./buttons"));
-var _dimension = _interopRequireDefault(_dereq_("./dimension"));
-var _form = _interopRequireDefault(_dereq_("./form"));
-var _optionsWrapper = _interopRequireDefault(_dereq_("./optionsWrapper"));
-var _visuals = _interopRequireDefault(_dereq_("./visuals"));
-var Container = function Container(options) {
- _eventEmitter.default.call(this, options, "Container");
- var self = this;
- var visibility = (0, _documentVisibility.default)();
- var visuals = new _visuals.default(this, options);
- var buttons = new _buttons.default(this, options);
- var resource = new _resource.default(options);
- var htmlElement = document.querySelector("html");
- var debug = options.debug;
- var hasError = false;
- var submitted = false;
- var lastValidation = false;
- var containerElement;
- var built;
- var form;
- validateOptions();
-
- // since https://github.com/binarykitchen/videomail-client/issues/87
- function findParentFormElement() {
- if (!containerElement) {
- // Must be in player only mode
- return;
- }
- return containerElement.closest("form");
- }
- function getFormElement() {
- var formElement;
- if (containerElement && containerElement.tagName === "FORM") {
- formElement = containerElement;
- } else if (options.selectors.formId) {
- formElement = document.getElementById(options.selectors.formId);
- } else {
- formElement = findParentFormElement();
- }
- return formElement;
- }
- this.buildForm = function () {
- if (form) {
- return; // already built
- }
- var formElement = getFormElement();
- if (formElement) {
- form = new _form.default(self, formElement, options);
- var submitButton = form.findSubmitButton();
- if (submitButton) {
- buttons.setSubmitButton(submitButton);
- }
- form.build();
- }
- };
- function buildChildren() {
- var playerOnly = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
- var replayParentElement = arguments.length > 1 ? arguments[1] : undefined;
- debug("Container: buildChildren (playerOnly = ".concat(playerOnly).concat(replayParentElement ? ", replayParentElement=\"".concat(replayParentElement.id, "\"") : "", ")"));
- if (containerElement) {
- containerElement.classList.add(options.selectors.containerClass);
- }
- if (!playerOnly) {
- buttons.build();
- }
- visuals.build(playerOnly, replayParentElement);
- }
- function processError(err) {
- hasError = true;
- if (err.stack) {
- options.logger.error(err.stack);
- } else {
- options.logger.error(err.message);
- }
- if (options.displayErrors) {
- visuals.error(err);
- } else {
- visuals.reset();
- }
- }
- function initEvents() {
- var playerOnly = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
- debug("Container: initEvents (playerOnly = ".concat(playerOnly, ")"));
- if (options.enableAutoUnload) {
- window.addEventListener("beforeunload", function (e) {
- self.unload(e);
- }, {
- once: true
- });
- }
- if (!playerOnly) {
- visibility.onChange(function (visible) {
- // built? see https://github.com/binarykitchen/videomail.io/issues/326
- if (built) {
- if (visible) {
- if (options.isAutoPauseEnabled() && self.isCountingDown()) {
- self.resume();
- }
- self.emit(_events.default.VISIBLE);
- } else {
- if (options.isAutoPauseEnabled() && (self.isCountingDown() || self.isRecording())) {
- self.pause("document invisible");
- }
- self.emit(_events.default.INVISIBLE);
- }
- }
- });
- }
- if (options.enableSpace) {
- if (!playerOnly) {
- window.addEventListener("keypress", function (e) {
- var _e$target;
- var tagName = (_e$target = e.target) === null || _e$target === void 0 ? void 0 : _e$target.tagName;
- var isEditable = e.target.isContentEditable || e.target.contentEditable === "true" || e.target.contentEditable === true;
-
- // beware of rich text editors, hence the isEditable check (wordpress plugin issue)
- if (!isEditable && tagName !== "INPUT" && tagName !== "TEXTAREA") {
- var code = e.code;
- if (code === 32) {
- e.preventDefault();
- if (options.enablePause) {
- visuals.pauseOrResume();
- } else {
- visuals.recordOrStop();
- }
- }
- }
- });
- }
- }
-
- /*
- * better to keep the one and only error listeners
- * at one spot, here, because unload() will do a removeAllListeners()
- */
- self.on(_events.default.ERROR, function (err) {
- processError(err);
- self.endWaiting();
- if (err.removeDimensions && err.removeDimensions()) {
- removeDimensions();
- }
- });
- if (!playerOnly) {
- self.on(_events.default.LOADED_META_DATA, function () {
- correctDimensions();
- });
- }
- }
- function validateOptions() {
- if (options.hasDefinedWidth() && options.video.width % 2 !== 0) {
- throw _videomailError.default.create("Width must be divisible by two.", options);
- }
- if (options.hasDefinedHeight() && options.video.height % 2 !== 0) {
- throw _videomailError.default.create("Height must be divisible by two.", options);
- }
- }
-
- /*
- * This will just set the width but not the height because
- * it can be a form with more inputs elements
- */
- function correctDimensions() {
- if (options.video.stretch) {
- removeDimensions();
- } else if (containerElement) {
- var width = visuals.getRecorderWidth(true);
- if (width < 1) {
- throw _videomailError.default.create("Recorder width cannot be less than 1!", options);
- } else {
- containerElement.style.width = "".concat(width, "px");
- }
- }
- }
- function removeDimensions() {
- if (!containerElement) {
- return;
- }
- containerElement.style.width = "auto";
- }
- function unloadChildren(e) {
- visuals.unload(e);
- buttons.unload();
- if (form) {
- form.unload();
- form = undefined;
- }
- self.endWaiting();
- }
- function hideMySelf() {
- (0, _hidden.default)(containerElement, true);
- }
- function submitVideomail(formData, method, cb) {
- var videomailFormData = form.transformFormData(formData);
- if (isPost(method)) {
- videomailFormData.recordingStats = visuals.getRecordingStats();
- videomailFormData.width = visuals.getRecorderWidth(true);
- videomailFormData.height = visuals.getRecorderHeight(true);
- if (navigator.connection) {
- videomailFormData.connection = {
- downlink: "".concat(navigator.connection.downlink, " Mbit/s"),
- effectiveType: navigator.connection.effectiveType,
- rtt: navigator.connection.rtt,
- type: navigator.connection.type
- };
- }
- resource.post(videomailFormData, cb);
- } else if (isPut(method)) {
- resource.put(videomailFormData, cb);
- }
- }
- function submitForm(formData, videomailResponse, url, cb) {
- /*
- * for now, accept POSTs only which have an URL unlike null and
- * treat all other submissions as direct submissions
- */
-
- if (!url || url === "") {
- url = options.baseUrl;
- }
-
- // can be missing when no videomail was recorded and is not required
- if (videomailResponse) {
- /*
- * this in case if user wants all videomail metadata to be posted
- * altogether with the remaining form
- */
- if (options.submitWithVideomail) {
- formData.videomail = videomailResponse.videomail;
- }
- }
- resource.form(formData, url, cb);
- }
- function finalizeSubmissions(err, method, videomail, response, formResponse) {
- self.endWaiting();
- if (err) {
- self.emit(_events.default.ERROR, err);
- } else {
- submitted = true;
-
- // merge two json response bodies to fake as if it were only one request
- if (response && formResponse && formResponse.body) {
- Object.keys(formResponse.body).forEach(function (key) {
- response[key] = formResponse.body[key];
- });
- }
- self.emit(_events.default.SUBMITTED, videomail, response || formResponse);
- if (formResponse && formResponse.type === "text/html" && formResponse.text) {
- // server replied with HTML contents - display these
- document.body.innerHTML = formResponse.text;
-
- /*
- * todo: figure out how to fire dom's onload event again
- * todo: or how to run all the scripts over again
- */
- }
- }
- }
- this.addPlayerDimensions = function (videomail) {
- try {
- if (!videomail) {
- throw new Error("Videomail data is missing for attaching player dimensions");
- }
- var replay = self.getReplay();
- var replayParentElement = replay.getParentElement();
- videomail.playerHeight = self.calculateHeight({
- responsive: true,
- videoWidth: videomail.width,
- ratio: videomail.height / videomail.width
- }, replayParentElement);
- videomail.playerWidth = self.calculateWidth({
- responsive: true,
- videoHeight: videomail.playerHeight,
- ratio: videomail.height / videomail.width
- });
- return videomail;
- } catch (exc) {
- self.emit(_events.default.ERROR, exc);
- }
- };
- this.limitWidth = function (width) {
- return _dimension.default.limitWidth(containerElement, width, options);
- };
- this.limitHeight = function (height) {
- return _dimension.default.limitHeight(height, options);
- };
- this.calculateWidth = function (fnOptions) {
- return _dimension.default.calculateWidth(_optionsWrapper.default.merge(options, fnOptions));
- };
- this.calculateHeight = function (fnOptions, element) {
- if (!element) {
- if (containerElement) {
- element = containerElement;
- } else {
- // better than nothing
- element = document.body;
- }
- }
- return _dimension.default.calculateHeight(element, _optionsWrapper.default.merge(options, fnOptions));
- };
- function areVisualsHidden() {
- return visuals.isHidden();
- }
- this.hasElement = function () {
- return Boolean(containerElement);
- };
- function prependDefaultCss() {
- (0, _insertCss.default)(_mainMinCss.default, {
- prepend: true
- });
- }
- this.build = function () {
- var buildOptions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {
- playerOnly: false,
- replayParentElementId: undefined,
- replayParentElement: undefined
- };
- debug("Container: build (".concat((0, _safeJsonStringify.default)(buildOptions), ")"));
- try {
- options.insertCss && prependDefaultCss();
- var containerId = options.selectors.containerId;
- if (containerId) {
- // Note, it can be undefined when e.g. just replaying a videomail or for storybooks
- containerElement = document.getElementById(options.selectors.containerId);
- } else {
- containerElement = document.createElement("div");
- }
- var replayParentElement;
- if (buildOptions.replayParentElement) {
- replayParentElement = buildOptions.replayParentElement;
- } else if (buildOptions.replayParentElementId) {
- replayParentElement = document.getElementById(buildOptions.replayParentElementId);
- }
-
- // Check if the replayParentElement could act as the container element perhaps?
- if (!containerElement && replayParentElement) {
- var _replayParentElement;
- if ((_replayParentElement = replayParentElement) !== null && _replayParentElement !== void 0 && _replayParentElement.classList.contains(options.selectors.containerClass)) {
- containerElement = replayParentElement;
- }
- }
- !built && initEvents(buildOptions.playerOnly);
- if (!buildOptions.playerOnly) {
- correctDimensions();
- }
-
- // Building form also applies for when `playerOnly` because of
- // correcting mode on Videomail. This function will skip if there is no form. Easy.
- self.buildForm();
- buildChildren(buildOptions.playerOnly, buildOptions.playerOnly ? replayParentElement || containerElement : undefined);
- if (!hasError) {
- debug("Container: built.");
- built = true;
- self.emit(_events.default.BUILT);
- } else {
- debug("Container: building failed due to an error.");
- }
- } catch (exc) {
- self.emit(_events.default.ERROR, exc);
- }
- return containerElement;
- };
- this.getSubmitButton = function () {
- return buttons.getSubmitButton();
- };
- this.querySelector = function (selector) {
- if (!containerElement) {
- // Must be in player only mode
- return;
- }
- return containerElement.querySelector(selector);
- };
- this.beginWaiting = function () {
- htmlElement.classList && htmlElement.classList.add("wait");
- };
- this.endWaiting = function () {
- htmlElement.classList && htmlElement.classList.remove("wait");
- };
- this.appendChild = function (child) {
- if (!containerElement || containerElement === child) {
- // Must be in player only mode
- return;
- }
- containerElement.appendChild(child);
- };
- this.insertBefore = function (child, reference) {
- if (!containerElement) {
- // Must be in player only mode
- return;
- }
- containerElement.insertBefore(child, reference);
- };
- this.unload = function (e) {
- try {
- if (!built) {
- return;
- }
- debug("Container: unload(".concat(e ? (0, _safeJsonStringify.default)(e) : "", ")"));
- self.emit(_events.default.UNLOADING);
- unloadChildren(e);
- self.removeAllListeners();
- self.hide();
- built = submitted = false;
- } catch (exc) {
- self.emit(_events.default.ERROR, exc);
- }
- };
- this.show = function () {
- if (!containerElement) {
- throw new Error("No container element exists.");
- }
- (0, _hidden.default)(containerElement, false);
- visuals.show();
- if (!hasError) {
- var paused = self.isPaused();
- if (paused) {
- buttons.adjustButtonsForPause();
- }
-
- /*
- * since https://github.com/binarykitchen/videomail-client/issues/60
- * we hide areas to make it easier for the user
- */
- buttons.show();
- if (self.isReplayShown()) {
- self.emit(_events.default.PREVIEW);
- } else {
- self.emit(_events.default.FORM_READY, {
- paused: paused
- });
- }
- }
- return containerElement;
- };
- this.hide = function () {
- debug("Container: hide()");
- hasError = false;
- self.isRecording() && self.pause();
- visuals.hide();
- if (submitted) {
- buttons.hide();
- hideMySelf();
- }
- };
- this.startOver = function (params) {
- try {
- debug("Container: startOver(".concat(params ? (0, _safeJsonStringify.default)(params) : "", ")"));
- submitted = false;
-
- // Rebuild all again and initialise events again
- self.build();
- self.emit(_events.default.STARTING_OVER);
- visuals.back(params, function () {
- self.enableForm();
- if (params && params.keepHidden) {
- /*
- * just enable form, do nothing else.
- * see example contact_form.html when you submit without videomail
- * and go back
- */
- } else {
- self.show(params);
- }
- });
- } catch (exc) {
- self.emit(_events.default.ERROR, exc);
- }
- };
- this.showReplayOnly = function () {
- hasError = false;
- self.isRecording() && self.pause();
- visuals.showReplayOnly();
- submitted && buttons.hide();
- };
- this.isNotifying = function () {
- return visuals.isNotifying();
- };
- this.isPaused = function () {
- return visuals.isPaused();
- };
- this.pause = function (params) {
- visuals.pause(params);
- };
-
- // this code needs a good rewrite :(
- this.validate = function (event, force) {
- var runValidation = true;
- var valid = true;
- if (!options.enableAutoValidation) {
- runValidation = false;
- lastValidation = true; // needed so that it can be submitted anyway, see submit()
- } else if (force) {
- runValidation = force;
- } else if (self.isNotifying()) {
- runValidation = false;
- } else if (visuals.isConnected()) {
- runValidation = visuals.isUserMediaLoaded() || visuals.isReplayShown();
- } else if (visuals.isConnecting()) {
- runValidation = false;
- }
- if (runValidation) {
- var _event$target;
- var targetName = event === null || event === void 0 || (_event$target = event.target) === null || _event$target === void 0 ? void 0 : _event$target.name;
- if (targetName) {
- self.emit(_events.default.VALIDATING, {
- targetName: targetName
- });
- } else {
- self.emit(_events.default.VALIDATING, event);
- }
- var visualsValid = visuals.validate() && buttons.isRecordAgainButtonEnabled();
- var whyInvalid;
- var invalidData;
- if (form) {
- var invalidInput = form.getInvalidElement();
- if (invalidInput) {
- valid = false;
- whyInvalid = "Input \"".concat(invalidInput.name, "\" seems wrong \uD83E\uDD14");
- invalidData = (0, _defineProperty2.default)({}, invalidInput.name, invalidInput.value);
- } else if (!areVisualsHidden() && !visualsValid) {
- // TODO Improve this check to have this based on `key`
- if (buttonsAreReady() || self.isRecording() || self.isPaused() || self.isCountingDown()) {
- valid = false;
- whyInvalid = "Don't forget to record a video 😉";
- invalidData = {
- key: undefined
- };
- }
- }
- if (valid) {
- var _recipients$to, _recipients$cc, _recipients$bcc;
- /*
- * If CC and/or BCC exist, validate one more time to ensure at least
- * one recipient is given
- */
- var recipients = form.getRecipients();
- var toIsConfigured = "to" in recipients;
- var ccIsConfigured = "cc" in recipients;
- var bccIsConfigured = "bcc" in recipients;
- var hasTo = ((_recipients$to = recipients.to) === null || _recipients$to === void 0 ? void 0 : _recipients$to.length) > 0;
- var hasCc = ((_recipients$cc = recipients.cc) === null || _recipients$cc === void 0 ? void 0 : _recipients$cc.length) > 0;
- var hasBcc = ((_recipients$bcc = recipients.bcc) === null || _recipients$bcc === void 0 ? void 0 : _recipients$bcc.length) > 0;
- if (toIsConfigured) {
- if (!hasTo) {
- if (ccIsConfigured && bccIsConfigured) {
- if (!hasCc && !hasBcc) {
- valid = false;
- }
- } else if (ccIsConfigured) {
- if (!hasCc) {
- valid = false;
- }
- } else if (bccIsConfigured) {
- if (!hasBcc) {
- valid = false;
- }
- } else {
- valid = false;
- }
- }
- } else if (ccIsConfigured) {
- if (!hasCc) {
- if (bccIsConfigured && !hasBcc) {
- valid = false;
- }
- }
- } else if (bccIsConfigured) {
- // Skip as it's hidden
- } else {
- // Form has no input fields for recipients, so don't validate
- // recipients at all
- }
- if (!valid) {
- whyInvalid = "At least one recipient is required";
- }
- }
- } else {
- valid = visualsValid;
- }
- if (valid) {
- self.emit(_events.default.VALID);
- } else if (invalidData) {
- self.emit(_events.default.INVALID, whyInvalid, invalidData);
- } else {
- self.emit(_events.default.INVALID, whyInvalid);
- }
- lastValidation = valid;
- }
- return valid;
- };
- this.disableForm = function (buttonsToo) {
- form && form.disable(buttonsToo);
- };
- this.enableForm = function (buttonsToo) {
- form && form.enable(buttonsToo);
- };
- this.hasForm = function () {
- return Boolean(form);
- };
- function buttonsAreReady() {
- return buttons.isReady();
- }
-
- // when method is undefined, treat it as a post
- function isPost(method) {
- if (!method) {
- return true;
- }
- return method.toUpperCase() === "POST";
- }
- function isPut(method) {
- if (!method) {
- return false;
- }
- return method.toUpperCase() === "PUT";
- }
- this.submitAll = function (formData, method, url) {
- var output = [method, url].filter(Boolean).join(": ");
- debug("Container: submitAll(".concat(output, ")"));
- var hasVideomailKey = Boolean(formData[options.selectors.keyInputName]);
- function startSubmission() {
- self.beginWaiting();
- self.disableForm(true);
- self.emit(_events.default.SUBMITTING);
- }
-
- // a closure so that we can access method
- var submitVideomailCallback = function submitVideomailCallback(err1, videomail, videomailResponse) {
- if (err1) {
- finalizeSubmissions(err1, method, videomail, videomailResponse);
- } else {
- finalizeSubmissions(null, method, videomail, videomailResponse);
- }
- };
-
- /*
- * !hasVideomailKey makes it possible to submit form when videomail itself
- * is not optional.
- */
- if (!hasVideomailKey) {
- if (options.enableAutoSubmission) {
- startSubmission();
- submitForm(formData, null, url, function (err2, formResponse) {
- finalizeSubmissions(err2, method, null, null, formResponse);
- });
- }
- /*
- * ... and when the enableAutoSubmission option is false,
- * then that can mean, leave it to the framework to process with the form
- * validation/handling/submission itself. for example the ninja form
- * will want to highlight which one input are wrong.
- */
- } else {
- startSubmission();
- submitVideomail(formData, method, submitVideomailCallback);
- }
- };
- this.isBuilt = function () {
- return built;
- };
- this.isReplayShown = function () {
- return visuals.isReplayShown();
- };
- this.isDirty = function () {
- var isDirty = false;
- if (form) {
- if (visuals.isRecorderUnloaded()) {
- isDirty = false;
- } else if (submitted) {
- isDirty = false;
- } else if (self.isReplayShown() || self.isPaused()) {
- isDirty = true;
- }
- }
- return isDirty;
- };
- this.getReplay = function () {
- return visuals.getReplay();
- };
- this.isOutsideElementOf = function (element) {
- return element.parentNode !== containerElement && element !== containerElement;
- };
- this.hideForm = function (params) {
- // form check needed, see https://github.com/binarykitchen/videomail-client/issues/127
- form && form.hide();
- buttons && buttons.hide(params);
- };
-
- // Only used for replays
- this.loadForm = function (videomail) {
- if (form) {
- form.loadVideomail(videomail);
- self.validate();
- }
- };
- this.enableAudio = function () {
- options.setAudioEnabled(true);
- self.emit(_events.default.ENABLING_AUDIO);
- };
- this.disableAudio = function () {
- options.setAudioEnabled(false);
- self.emit(_events.default.DISABLING_AUDIO);
- };
- this.submit = function () {
- debug("Container: submit()");
- lastValidation && form && form.doTheSubmit();
- };
- this.isCountingDown = visuals.isCountingDown.bind(visuals);
- this.isRecording = visuals.isRecording.bind(visuals);
- this.record = visuals.record.bind(visuals);
- this.resume = visuals.resume.bind(visuals);
- this.stop = visuals.stop.bind(visuals);
- this.recordAgain = visuals.recordAgain.bind(visuals);
-};
-(0, _inherits.default)(Container, _eventEmitter.default);
-var _default = exports.default = Container;
-
-},{"../events":113,"../resource":115,"../styles/css/main.min.css.js":116,"../util/eventEmitter":122,"../util/videomailError":126,"./buttons":127,"./dimension":129,"./form":130,"./optionsWrapper":131,"./visuals":132,"@babel/runtime/helpers/defineProperty":3,"@babel/runtime/helpers/interopRequireDefault":4,"document-visibility":31,"hidden":60,"inherits":65,"insert-css":66,"safe-json-stringify":93}],129:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-var _videomailError = _interopRequireDefault(_dereq_("./../util/videomailError"));
-function getOuterWidth(element) {
- var outerWidth = 0;
- var rect = element.getBoundingClientRect();
- if (rect) {
- outerWidth = rect.right - rect.left;
- }
- if (outerWidth < 1) {
- // last effort, can happen when replaying only
- rect = document.body.getBoundingClientRect();
- outerWidth = rect.right - rect.left;
- }
- return outerWidth;
-}
-function figureMinHeight(height, options) {
- if (options.hasDefinedHeight()) {
- if (!height) {
- height = options.video.height;
- } else {
- height = Math.min(options.video.height, height);
- }
- }
- if (Number.isInteger(height) && height < 1) {
- throw _videomailError.default.create("Got a video height less than 1 (".concat(height, ") while figuring out the minimum!"), options);
- }
-
- // just return it, can be "auto"
- return height;
-}
-var _default = exports.default = {
- limitWidth: function limitWidth(element, width, options) {
- if (!element) {
- return width;
- }
- var limitedWidth;
- var outerWidth = getOuterWidth(element);
- if (width) {
- // only when that element has a defined width, apply this logic
- limitedWidth = outerWidth > 0 && outerWidth < width ? outerWidth : width;
- } else {
- // else apply the outer width when the element has no defined width yet
- limitedWidth = outerWidth;
- }
- if (Number.isInteger(limitedWidth) && limitedWidth < 1) {
- throw _videomailError.default.create("Limited width cannot be less than 1!", options);
- } else {
- return limitedWidth;
- }
- },
- /*
- * this is difficult to compute and is not entirely correct.
- * but good enough for now to ensure some stability.
- */
- limitHeight: function limitHeight(height, options) {
- if (Number.isInteger(height) && height < 1) {
- throw _videomailError.default.create("Passed limit-height argument cannot be less than 1!", options);
- } else {
- var limitedHeight = Math.min(height,
- // document.body.scrollHeight,
- document.documentElement.clientHeight);
- if (limitedHeight < 1) {
- throw _videomailError.default.create("Limited height cannot be less than 1!", options);
- } else {
- return limitedHeight;
- }
- }
- },
- calculateWidth: function calculateWidth(options) {
- var height = options.videoHeight || null;
- var ratio = options.ratio || options.getRatio();
- height = figureMinHeight(height, options);
- if (options.responsive) {
- height = this.limitHeight(height, options);
- }
- if (Number.isInteger(height) && height < 1) {
- throw _videomailError.default.create("Height cannot be smaller than 1 when calculating width.", options);
- } else {
- var calculatedWidth = parseInt(height / ratio);
- if (calculatedWidth < 1) {
- throw _videomailError.default.create("Calculated width cannot be smaller than 1!", options);
- } else {
- return calculatedWidth;
- }
- }
- },
- calculateHeight: function calculateHeight(element, options) {
- var width = options.videoWidth || null;
- var height;
- var ratio = options.ratio || options.getRatio();
- if (options.hasDefinedWidth()) {
- width = options.video.width;
- }
- if (Number.isInteger(width) && width < 1) {
- throw _videomailError.default.create("Unable to calculate height when width is less than 1.", options);
- } else if (options.responsive) {
- width = this.limitWidth(element, width, options);
- }
- if (width) {
- height = parseInt(width * ratio);
- }
- if (Number.isInteger(height) && height < 1) {
- throw _videomailError.default.create("Just calculated a height less than 1 which is wrong.", options);
- } else {
- return figureMinHeight(height, options);
- }
- }
-};
-
-},{"./../util/videomailError":126,"@babel/runtime/helpers/interopRequireDefault":4}],130:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-var _getFormData = _interopRequireDefault(_dereq_("get-form-data"));
-var _hidden = _interopRequireDefault(_dereq_("hidden"));
-var _hyperscript = _interopRequireDefault(_dereq_("hyperscript"));
-var _inherits = _interopRequireDefault(_dereq_("inherits"));
-var _safeJsonStringify = _interopRequireDefault(_dereq_("safe-json-stringify"));
-var _events = _interopRequireDefault(_dereq_("../events"));
-var _eventEmitter = _interopRequireDefault(_dereq_("../util/eventEmitter"));
-var _videomailError = _interopRequireDefault(_dereq_("../util/videomailError"));
-// fixes https://github.com/binarykitchen/videomail-client/issues/71
-function trimEmail(email) {
- return email.replace(/(^[,\s]+)|([,\s]+$)/g, "");
-}
-var Form = function Form(container, formElement, options) {
- _eventEmitter.default.call(this, options, "Form");
- var debug = options.debug;
- var self = this;
- var FORM_FIELDS = {
- subject: options.selectors.subjectInputName,
- from: options.selectors.fromInputName,
- to: options.selectors.toInputName,
- cc: options.selectors.ccInputName,
- bcc: options.selectors.bccInputName,
- body: options.selectors.bodyInputName,
- key: options.selectors.keyInputName,
- parentKey: options.selectors.parentKeyInputName,
- sendCopy: options.selectors.sendCopyInputName
- };
- var keyInput;
- function getData() {
- return (0, _getFormData.default)(formElement, {
- includeDisabled: true
- });
- }
- this.transformFormData = function (formData) {
- var transformedFormData = {};
- Object.keys(FORM_FIELDS).forEach(function (key) {
- var formFieldValue = FORM_FIELDS[key];
- if (formFieldValue in formData) {
- var value = formData[formFieldValue];
- if (value === undefined) {
- // skip
- } else {
- transformedFormData[key] = value;
- }
- }
- });
- if (transformedFormData.from) {
- transformedFormData.from = trimEmail(transformedFormData.from);
- }
- if (transformedFormData.to) {
- transformedFormData.to = trimEmail(transformedFormData.to);
- }
- if (transformedFormData.cc) {
- transformedFormData.cc = trimEmail(transformedFormData.cc);
- }
- if (transformedFormData.bcc) {
- transformedFormData.bcc = trimEmail(transformedFormData.bcc);
- }
- return transformedFormData;
- };
- this.getRecipients = function () {
- var videomailFormData = this.transformFormData(getData());
- var recipients = {};
- if ("to" in videomailFormData) {
- recipients.to = videomailFormData.to;
- }
- if ("cc" in videomailFormData) {
- recipients.cc = videomailFormData.cc;
- }
- if ("bcc" in videomailFormData) {
- recipients.bcc = videomailFormData.bcc;
- }
- return recipients;
- };
- this.loadVideomail = function (videomail) {
- debug("Form: loadVideomail()");
- var limit = formElement.elements.length;
- var input;
- var name;
- for (var i = 0; i < limit; i++) {
- input = formElement.elements[i];
- name = input.name;
- if (videomail[name]) {
- input.value = videomail[name];
- }
- if (name === options.selectors.subjectInputName || name === options.selectors.bodyInputName) {
- input.disabled = true;
- }
- }
- formElement.setAttribute("method", "put");
- };
- function isNotButton(element) {
- return element.tagName !== "BUTTON" && element.type !== "submit";
- }
- function setDisabled(disabled, buttonsToo) {
- var limit = formElement.elements.length;
- for (var i = 0; i < limit; i++) {
- if (buttonsToo || !buttonsToo && isNotButton(formElement.elements[i])) {
- formElement.elements[i].disabled = disabled;
- }
- }
- }
- function hideAll() {
- var limit = formElement.elements.length;
- for (var i = 0; i < limit; i++) {
- (0, _hidden.default)(formElement.elements[i], true);
- }
- (0, _hidden.default)(formElement, true);
- }
- function isRegisteredFormField(formElement) {
- var formElementName = formElement.name;
- var registeredFormFieldNames = Object.values(FORM_FIELDS);
- var isRegistered = registeredFormFieldNames.includes(formElementName);
- return isRegistered;
- }
- function getRegisteredFormElements() {
- var elements = formElement.querySelectorAll("input, textarea, select");
- var registeredElements = [];
- for (var i = 0; i < elements.length; i++) {
- var element = elements[i];
- if (isRegisteredFormField(element)) {
- registeredElements.push(element);
- }
- }
- return registeredElements;
- }
- this.disable = function (buttonsToo) {
- setDisabled(true, buttonsToo);
- };
- this.enable = function (buttonsToo) {
- setDisabled(false, buttonsToo);
- };
- this.build = function () {
- debug("Form: build()");
- keyInput = formElement.querySelector("input[name=\"".concat(options.selectors.keyInputName, "\"]"));
- if (!keyInput) {
- keyInput = (0, _hyperscript.default)("input", {
- name: options.selectors.keyInputName,
- type: "hidden"
- });
- formElement.appendChild(keyInput);
- }
- if (options.enableAutoValidation) {
- var inputElements = getRegisteredFormElements();
- for (var i = 0, len = inputElements.length; i < len; i++) {
- var inputElement = inputElements[i];
- var type = inputElement.type;
- if (type === "radio" || type === "select") {
- inputElement.addEventListener("change", container.validate);
- } else {
- inputElement.addEventListener("input", container.validate);
- }
- }
- }
- this.on(_events.default.PREVIEW, function (videomailKey) {
- /*
- * beware that preview doesn't always come with a key, i.E.
- * container.show() can emit PREVIEW without a key when a replay already exists
- * (can happen when showing - hiding - showing videomail over again)
- */
-
- // only emit error if key is missing AND the input has no key (value) yet
- if (!videomailKey && !keyInput.value) {
- self.emit(_events.default.ERROR, _videomailError.default.create("Videomail key for preview is missing!", options));
- } else if (videomailKey) {
- keyInput.value = videomailKey;
- // Important so that any other JS framework can detect changes
- keyInput.dispatchEvent(new Event("input", {
- bubbles: true
- }));
- }
- /*
- * else leave as it and use existing keyInput.value
- */
- });
- this.on(_events.default.STARTING_OVER, function () {
- resetForm();
- });
- this.on(_events.default.INVALID, function () {
- formElement.classList.add("invalid");
- });
- this.on(_events.default.VALID, function () {
- formElement.classList.remove("invalid");
- });
- this.on(_events.default.ERROR, function (err) {
- /*
- * since https://github.com/binarykitchen/videomail-client/issues/60
- * we hide areas to make it easier for the user to process an error
- * (= less distractions)
- */
- if (err.hideForm && err.hideForm() && options.adjustFormOnBrowserError) {
- hideAll();
- } else if (err.hideButtons && err.hideButtons() && options.adjustFormOnBrowserError) {
- hideSubmitButton();
- }
- });
- this.on(_events.default.BUILT, function () {
- startListeningToSubmitEvents();
- });
- };
- function removeAllInputListeners() {
- var inputElements = getRegisteredFormElements();
- for (var i = 0, len = inputElements.length; i < len; i++) {
- var inputElement = inputElements[i];
- var type = inputElement.type;
- if (type === "radio" || type === "select") {
- inputElement.removeEventListener("change", container.validate);
- } else {
- inputElement.removeEventListener("input", container.validate);
- }
- }
- }
- function hideSubmitButton() {
- var submitButton = self.findSubmitButton();
- (0, _hidden.default)(submitButton, true);
- }
- this.unload = function () {
- debug("Form: unload()");
- removeAllInputListeners();
- this.removeAllListeners();
- stopListeningToSubmitEvents();
- resetForm();
- };
- function resetForm() {
- // It can be set to put before when e.g. correcting, so revert to default
- formElement.setAttribute("method", "");
-
- // This resets all except hidden inputs
- formElement.reset();
- var inputElements = getRegisteredFormElements();
- for (var i = 0, len = inputElements.length; i < len; i++) {
- var inputElement = inputElements[i];
- var type = inputElement.type.toLowerCase();
- if (type === "hidden") {
- inputElement.value = "";
- }
- }
- }
- function startListeningToSubmitEvents() {
- var submitButton = container.getSubmitButton();
- submitButton.onclick = self.doTheSubmit.bind(self);
- }
- function stopListeningToSubmitEvents() {
- var submitButton = container.getSubmitButton();
- submitButton.onclick = null;
- }
- this.doTheSubmit = function (e) {
- if (e) {
- debug("Form: doTheSubmit(".concat((0, _safeJsonStringify.default)(e), ")"));
- e.preventDefault();
- } else {
- debug("Form: doTheSubmit()");
- }
-
- /*
- * only submit when there is a container,
- * otherwise do nothing and leave as it
- */
- if (container.hasElement()) {
- container.submitAll(getData(), formElement.getAttribute("method"), formElement.getAttribute("action"));
- }
- return false; // important to stop submission
- };
- this.getInvalidElement = function () {
- var inputElements = getRegisteredFormElements();
- var i = 0;
- for (var len = inputElements.length; i < len; i++) {
- if (!inputElements[i].validity.valid) {
- return inputElements[i];
- }
- }
- return null;
- };
- this.findSubmitButton = function () {
- return formElement.querySelector("[type='submit']");
- };
- this.hide = function () {
- formElement && (0, _hidden.default)(formElement, true);
- };
- this.show = function () {
- formElement && (0, _hidden.default)(formElement, false);
- };
-};
-(0, _inherits.default)(Form, _eventEmitter.default);
-var _default = exports.default = Form;
-
-},{"../events":113,"../util/eventEmitter":122,"../util/videomailError":126,"@babel/runtime/helpers/interopRequireDefault":4,"get-form-data":49,"hidden":60,"hyperscript":62,"inherits":65,"safe-json-stringify":93}],131:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-var _deepmerge = _interopRequireDefault(_dereq_("deepmerge"));
-// enhances options with useful functions we can reuse everywhere
-var _default = exports.default = {
- /*
- * not very elegant but works! and if you here are reading this, and
- * start to doubt, rest assured, it's solid and run thousand times over
- * and over again each day. and other large sites out there have their own
- * tech debts. hope i have shattered your illusion on perfection?
- */
- merge: function merge(defaultOptions, newOptions) {
- var options = (0, _deepmerge.default)(defaultOptions, newOptions, {
- arrayMerge: function arrayMerge(_destination, source) {
- return source;
- }
- });
- return options;
- }
-};
-
-},{"@babel/runtime/helpers/interopRequireDefault":4,"deepmerge":27}],132:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-var _hidden = _interopRequireDefault(_dereq_("hidden"));
-var _hyperscript = _interopRequireDefault(_dereq_("hyperscript"));
-var _inherits = _interopRequireDefault(_dereq_("inherits"));
-var _safeJsonStringify = _interopRequireDefault(_dereq_("safe-json-stringify"));
-var _events = _interopRequireDefault(_dereq_("../events"));
-var _eventEmitter = _interopRequireDefault(_dereq_("../util/eventEmitter"));
-var _recorderInsides = _interopRequireDefault(_dereq_("./visuals/inside/recorderInsides"));
-var _notifier = _interopRequireDefault(_dereq_("./visuals/notifier"));
-var _recorder = _interopRequireDefault(_dereq_("./visuals/recorder"));
-var _replay = _interopRequireDefault(_dereq_("./visuals/replay"));
-var Visuals = function Visuals(container, options) {
- _eventEmitter.default.call(this, options, "Visuals");
- var self = this;
-
- // can be overwritten with setter fn
- var replay = new _replay.default(this, options);
- var recorder = new _recorder.default(this, replay, options);
- var recorderInsides = new _recorderInsides.default(this, options);
- var notifier = new _notifier.default(this, options);
- var debug = options.debug;
- var visualsElement;
- var built;
- function buildNoScriptTag() {
- var noScriptElement = container.querySelector("noscript");
- if (noScriptElement) {
- noScriptElement = (0, _hyperscript.default)("noscript");
- noScriptElement.innerHTML = "Please enable Javascript";
- visualsElement.appendChild(noScriptElement);
- }
- }
- function buildChildren() {
- var playerOnly = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
- var replayParentElement = arguments.length > 1 ? arguments[1] : undefined;
- debug("Visuals: buildChildren (playerOnly = ".concat(playerOnly).concat(replayParentElement ? ", replayParentElement=\"".concat(replayParentElement.id, "\"") : "", ")"));
- buildNoScriptTag();
- if (!playerOnly) {
- notifier.build();
- recorderInsides.build();
- }
- replay.build(replayParentElement);
- }
- function initEvents() {
- var playerOnly = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
- if (!playerOnly) {
- debug("Visuals: initEvents (playerOnly = ".concat(playerOnly, ")"));
- self.on(_events.default.USER_MEDIA_READY, function () {
- built = true;
- self.endWaiting();
- container.enableForm(false);
- }).on(_events.default.PREVIEW, function () {
- self.endWaiting();
- }).on(_events.default.BLOCKING, function (blockingOptions) {
- if (!blockingOptions.hideForm && !options.adjustFormOnBrowserError) {
- /*
- * do nothing, user still can enter form inputs
- * can be useful when you are on i.E. Seeflow's contact page and
- * still want to tick off the webcam option
- */
- } else {
- container.disableForm(true);
- }
- }).on(_events.default.PREVIEW_SHOWN, function () {
- container.validate(undefined, true);
- }).on(_events.default.LOADED_META_DATA, function () {
- correctDimensions();
- }).on(_events.default.ERROR, function (err) {
- if (err.removeDimensions && err.removeDimensions()) {
- removeDimensions();
- }
- });
- }
- }
- function correctDimensions() {
- if (options.video.stretch) {
- removeDimensions();
- } else if (visualsElement && recorder) {
- visualsElement.style.width = "".concat(self.getRecorderWidth(true), "px");
- visualsElement.style.height = "".concat(self.getRecorderHeight(true), "px");
- }
- }
- function removeDimensions() {
- if (!visualsElement) {
- return;
- }
- visualsElement.style.width = "auto";
- visualsElement.style.height = "auto";
- }
- this.getRatio = function () {
- if (visualsElement.clientWidth) {
- // special case for safari, see getRatio() in recorder
- return visualsElement.clientHeight / visualsElement.clientWidth;
- }
- return 0;
- };
- function isRecordable() {
- return !self.isNotifying() && !replay.isShown() && !self.isCountingDown();
- }
- this.isCountingDown = function () {
- return recorderInsides.isCountingDown();
- };
- this.build = function () {
- var playerOnly = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
- var replayParentElement = arguments.length > 1 ? arguments[1] : undefined;
- debug("Visuals: build (playerOnly=".concat(playerOnly, ")"));
- if (container) {
- if (replayParentElement) {
- visualsElement = replayParentElement.querySelector(".".concat(options.selectors.visualsClass));
- } else {
- visualsElement = container.querySelector(".".concat(options.selectors.visualsClass));
- }
- if (!visualsElement) {
- if (playerOnly && replayParentElement) {
- visualsElement = replayParentElement;
- } else {
- visualsElement = (0, _hyperscript.default)("div.".concat(options.selectors.visualsClass));
- }
- var buttonsElement = container.querySelector(".".concat(options.selectors.buttonsClass));
-
- /*
- * Make sure it's placed before the buttons, but only if it's a child
- * element of the container = inside the container
- */
- if (buttonsElement && !container.isOutsideElementOf(buttonsElement)) {
- container.insertBefore(visualsElement, buttonsElement);
- } else {
- container.appendChild(visualsElement);
- }
- }
-
- /*
- * Do not hide visuals element so that apps can give it a predefined
- * width or height through css but hide all children
- */
- visualsElement.classList.add("visuals");
- }
- correctDimensions();
- !built && initEvents(playerOnly);
- buildChildren(playerOnly, visualsElement || replayParentElement);
- built = true;
- };
- this.querySelector = function (selector) {
- return visualsElement && visualsElement.querySelector(selector);
- };
- this.appendChild = function (child) {
- visualsElement && visualsElement.appendChild(child);
- };
- this.removeChild = function (child) {
- visualsElement.removeChild(child);
- };
- this.reset = function () {
- this.endWaiting();
- recorder.reset();
- };
- this.beginWaiting = function () {
- container.beginWaiting();
- };
- this.endWaiting = function () {
- container.endWaiting();
- };
- this.stop = function (params) {
- recorder.stop(params);
- recorderInsides.hidePause();
- };
- this.back = function (params, cb) {
- if (!cb && params) {
- cb = params;
- params = {};
- }
- debug("Visuals: back(".concat(params ? (0, _safeJsonStringify.default)(params) : "", ")"));
- replay.hide();
- notifier.hide();
- if (params && params.keepHidden) {
- recorder.hide();
- cb && cb();
- } else {
- recorder.back(cb);
- }
- };
- this.recordAgain = function () {
- this.back(function () {
- if (options.loadUserMediaOnRecord) {
- self.once(_events.default.SERVER_READY, function () {
- self.record();
- });
- } else {
- self.once(_events.default.USER_MEDIA_READY, function () {
- self.record();
- });
- }
- });
- };
- this.unload = function (e) {
- try {
- if (!built) {
- return;
- }
- debug("Visuals: unload(".concat(e ? (0, _safeJsonStringify.default)(e) : "", ")"));
- self.removeAllListeners();
- recorder.unload(e);
- recorderInsides.unload(e);
- replay.unload();
- if (e instanceof Error) {
- // Don't hide when e is an error so that the error can be still
- // displayed under visuals > notifier
- } else {
- this.hide();
- }
- built = false;
- } catch (exc) {
- this.emit(_events.default.ERROR, exc);
- }
- };
- this.isNotifying = function () {
- return notifier.isVisible();
- };
- this.isReplayShown = function () {
- return replay.isShown();
- };
- this.pause = function (params) {
- recorder.pause(params);
- recorderInsides.showPause();
- };
- this.resume = function () {
- if (recorderInsides.isCountingDown()) {
- recorderInsides.resumeCountdown();
- } else {
- recorder.resume();
- }
- recorderInsides.hidePause();
- };
- this.pauseOrResume = function () {
- if (isRecordable.call(this)) {
- if (this.isRecording()) {
- this.pause();
- } else if (recorder.isPaused()) {
- this.resume();
- } else if (recorder.isReady()) {
- this.record();
- }
- }
- };
- this.recordOrStop = function () {
- if (isRecordable()) {
- if (this.isRecording()) {
- this.stop();
- } else if (recorder.isReady()) {
- this.record();
- }
- }
- };
- this.record = function () {
- if (options.video.countdown) {
- this.emit(_events.default.COUNTDOWN);
- recorderInsides.startCountdown(recorder.record.bind(recorder));
- } else {
- recorder.record();
- }
- };
- this.getRecorder = function () {
- return recorder;
- };
- this.getReplay = function () {
- return replay;
- };
- this.validate = function () {
- return recorder.validate() && this.isReplayShown();
- };
- this.getRecordingStats = function () {
- return recorder.getRecordingStats();
- };
- this.getAudioSampleRate = function () {
- return recorder.getAudioSampleRate();
- };
- this.isPaused = function () {
- return recorder.isPaused();
- };
- this.error = function (err) {
- notifier.error(err);
- };
- this.hide = function () {
- if (visualsElement) {
- (0, _hidden.default)(visualsElement, true);
- this.emit(_events.default.HIDE);
- }
- };
- this.isHidden = function () {
- if (!built) {
- return true;
- } else if (visualsElement) {
- return (0, _hidden.default)(visualsElement);
- }
- };
- this.showVisuals = function () {
- (0, _hidden.default)(visualsElement, false);
- };
- this.show = function () {
- var playerOnly = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
- if (!playerOnly && !this.isReplayShown()) {
- recorder.build();
- }
- this.showVisuals();
- };
- this.showReplayOnly = function () {
- this.show(true);
- recorder.hide();
- notifier.hide();
- };
- this.isRecorderUnloaded = function () {
- return recorder.isUnloaded();
- };
- this.isConnecting = function () {
- return recorder.isConnecting();
- };
- this.getRecorderWidth = function (responsive) {
- return recorder.getRecorderWidth(responsive);
- };
- this.getRecorderHeight = function (responsive, useBoundingClientRect) {
- return recorder.getRecorderHeight(responsive, useBoundingClientRect);
- };
- this.limitWidth = function (width) {
- return container.limitWidth(width, options);
- };
- this.limitHeight = function (height) {
- return container.limitHeight(height);
- };
- this.calculateWidth = function (options) {
- return container.calculateWidth(options);
- };
- this.calculateHeight = function (options) {
- return container.calculateHeight(options);
- };
- this.getReplay = function () {
- return replay;
- };
- this.getBoundingClientRect = function () {
- // fixes https://github.com/binarykitchen/videomail-client/issues/126
- return visualsElement && visualsElement.getBoundingClientRect();
- };
- this.checkTimer = function (intervalSum) {
- recorderInsides.checkTimer(intervalSum);
- };
- this.isNotifierBuilt = function () {
- return notifier && notifier.isBuilt();
- };
- this.isReplayShown = replay.isShown.bind(replay);
- this.hideReplay = replay.hide.bind(replay);
- this.hideRecorder = recorder.hide.bind(recorder);
- this.isRecording = recorder.isRecording.bind(recorder);
- this.isUserMediaLoaded = recorder.isUserMediaLoaded.bind(recorder);
- this.isConnected = recorder.isConnected.bind(recorder);
-};
-(0, _inherits.default)(Visuals, _eventEmitter.default);
-var _default = exports.default = Visuals;
-
-},{"../events":113,"../util/eventEmitter":122,"./visuals/inside/recorderInsides":138,"./visuals/notifier":139,"./visuals/recorder":140,"./visuals/replay":141,"@babel/runtime/helpers/interopRequireDefault":4,"hidden":60,"hyperscript":62,"inherits":65,"safe-json-stringify":93}],133:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = _default;
-var _hidden = _interopRequireDefault(_dereq_("hidden"));
-var _hyperscript = _interopRequireDefault(_dereq_("hyperscript"));
-function _default(visuals, options) {
- var self = this;
- var countdownElement;
- var intervalId;
- var countdown;
- var paused;
- function fire(cb) {
- self.unload();
- self.hide();
-
- // keep all callbacks async
- setTimeout(function () {
- cb();
- }, 0);
- }
- function countBackward(cb) {
- if (!paused) {
- options.debug("Countdown", countdown);
- countdown--;
- if (countdown < 1) {
- fire(cb);
- } else {
- countdownElement.innerHTML = countdown;
- }
- }
- }
- this.start = function (cb) {
- countdownElement.innerHTML = countdown = options.video.countdown;
- this.show();
- intervalId = setInterval(countBackward.bind(this, cb), 950);
- };
- this.pause = function () {
- paused = true;
- };
- this.resume = function () {
- paused = false;
- };
- this.build = function () {
- countdownElement = visuals.querySelector(".countdown");
- if (!countdownElement) {
- countdownElement = (0, _hyperscript.default)("p.countdown");
- this.hide();
- visuals.appendChild(countdownElement);
- } else {
- this.hide();
- }
- };
- this.show = function () {
- (0, _hidden.default)(countdownElement, false);
- };
- this.isCountingDown = function () {
- return Boolean(intervalId);
- };
- this.unload = function () {
- clearInterval(intervalId);
- paused = false;
- intervalId = null;
- };
- this.hide = function () {
- (0, _hidden.default)(countdownElement, true);
- this.unload();
- };
-}
-
-},{"@babel/runtime/helpers/interopRequireDefault":4,"hidden":60,"hyperscript":62}],134:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = _default;
-var _hidden = _interopRequireDefault(_dereq_("hidden"));
-var _hyperscript = _interopRequireDefault(_dereq_("hyperscript"));
-var _events = _interopRequireDefault(_dereq_("./../../../../events"));
-var _eventEmitter = _interopRequireDefault(_dereq_("./../../../../util/eventEmitter"));
-function _default(visuals, options) {
- _eventEmitter.default.call(this, options, "Facing Mode");
- var self = this;
- var facingModeElement;
- function initEvents() {
- self.on(_events.default.ERROR, function () {
- self.hide();
- });
- }
- this.build = function () {
- facingModeElement = visuals.querySelector(".facingMode");
- if (!facingModeElement) {
- facingModeElement = (0, _hyperscript.default)("button.facingMode");
- facingModeElement.innerHTML = "⤾";
- facingModeElement.onclick = function (e) {
- e && e.preventDefault();
- try {
- self.emit(_events.default.SWITCH_FACING_MODE);
- } catch (exc) {
- self.emit(_events.default.ERROR, exc);
- }
- };
- this.hide();
- visuals.appendChild(facingModeElement);
- } else {
- this.hide();
- }
- initEvents();
- };
- this.hide = function () {
- (0, _hidden.default)(facingModeElement, true);
- };
- this.show = function () {
- (0, _hidden.default)(facingModeElement, false);
- };
-}
-
-},{"./../../../../events":113,"./../../../../util/eventEmitter":122,"@babel/runtime/helpers/interopRequireDefault":4,"hidden":60,"hyperscript":62}],135:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = _default;
-var _hidden = _interopRequireDefault(_dereq_("hidden"));
-var _hyperscript = _interopRequireDefault(_dereq_("hyperscript"));
-var _videomailError = _interopRequireDefault(_dereq_("./../../../../util/videomailError"));
-function _default(visuals, options) {
- if (!options.text.pausedHeader) {
- throw _videomailError.default.create("Paused header cannot be empty", options);
- }
- var pausedBlockElement;
- var pausedHeaderElement;
- var pausedHintElement;
- function hasPausedHint() {
- return options.text.pausedHint;
- }
- this.build = function () {
- pausedBlockElement = visuals.querySelector(".paused");
- pausedHeaderElement = visuals.querySelector(".pausedHeader");
- if (!pausedHeaderElement) {
- pausedBlockElement = (0, _hyperscript.default)("div.paused");
- pausedHeaderElement = (0, _hyperscript.default)("p.pausedHeader");
- this.hide();
- pausedHeaderElement.innerHTML = options.text.pausedHeader;
- pausedBlockElement.appendChild(pausedHeaderElement);
- if (hasPausedHint()) {
- pausedHintElement = visuals.querySelector(".pausedHint");
- pausedHintElement = (0, _hyperscript.default)("p.pausedHint");
- pausedHintElement.innerHTML = options.text.pausedHint;
- pausedBlockElement.appendChild(pausedHintElement);
- }
- visuals.appendChild(pausedBlockElement);
- } else {
- this.hide();
- pausedHeaderElement.innerHTML = options.text.pausedHeader;
- if (hasPausedHint()) {
- pausedHintElement.innerHTML = options.text.pausedHint;
- }
- }
- };
- this.hide = function () {
- (0, _hidden.default)(pausedBlockElement, true);
- };
- this.show = function () {
- (0, _hidden.default)(pausedBlockElement, false);
- };
-}
-
-},{"./../../../../util/videomailError":126,"@babel/runtime/helpers/interopRequireDefault":4,"hidden":60,"hyperscript":62}],136:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = _default;
-var _hidden = _interopRequireDefault(_dereq_("hidden"));
-var _hyperscript = _interopRequireDefault(_dereq_("hyperscript"));
-function _default(visuals) {
- var recordNoteElement;
- this.build = function () {
- recordNoteElement = visuals.querySelector(".recordNote");
- if (!recordNoteElement) {
- recordNoteElement = (0, _hyperscript.default)("p.recordNote");
- this.hide();
- visuals.appendChild(recordNoteElement);
- } else {
- this.hide();
- }
- };
- this.stop = function () {
- this.hide();
- recordNoteElement.classList.remove("near");
- recordNoteElement.classList.remove("nigh");
- };
- this.setNear = function () {
- recordNoteElement.classList.add("near");
- };
- this.setNigh = function () {
- recordNoteElement.classList.add("nigh");
- };
- this.hide = function () {
- (0, _hidden.default)(recordNoteElement, true);
- };
- this.show = function () {
- (0, _hidden.default)(recordNoteElement, false);
- };
-}
-
-},{"@babel/runtime/helpers/interopRequireDefault":4,"hidden":60,"hyperscript":62}],137:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = _default;
-var _hidden = _interopRequireDefault(_dereq_("hidden"));
-var _hyperscript = _interopRequireDefault(_dereq_("hyperscript"));
-function _default(visuals, recordNote, options) {
- var recordTimerElement;
- var nearComputed = false;
- var endNighComputed = false;
- var started;
- var countdown;
- function pad(n) {
- return n < 10 ? "0".concat(n) : n;
- }
- function thresholdReached(secs, threshold) {
- return secs >= options.video.limitSeconds * threshold;
- }
- function isNear(secs) {
- if (!nearComputed && thresholdReached(secs, 0.6)) {
- nearComputed = true;
- return true;
- }
- return false;
- }
- function endIsNigh(secs) {
- if (!endNighComputed && thresholdReached(secs, 0.8)) {
- endNighComputed = true;
- return true;
- }
- return false;
- }
- function setNear() {
- recordTimerElement.classList.add("near");
- }
- function setNigh() {
- recordTimerElement.classList.add("nigh");
- }
- this.check = function (opts) {
- var newCountdown = getStartSeconds() - Math.floor(opts.intervalSum / 1e3);
-
- // performance optimisation (another reason we need react here!)
- if (newCountdown !== countdown) {
- countdown = newCountdown;
- update();
- countdown < 1 && visuals.stop(true);
- }
- };
- function update() {
- var mins = parseInt(countdown / 60, 10);
- var secs = countdown - mins * 60;
- if (!nearComputed || !endNighComputed) {
- var remainingSeconds = options.video.limitSeconds - countdown;
- if (isNear(remainingSeconds)) {
- recordNote.setNear();
- setNear();
- options.debug("End is near, ".concat(countdown, " seconds to go"));
- } else if (endIsNigh(remainingSeconds)) {
- recordNote.setNigh();
- setNigh();
- options.debug("End is nigh, ".concat(countdown, " seconds to go"));
- }
- }
- recordTimerElement.innerHTML = "".concat(mins, ":").concat(pad(secs));
- }
- function hide() {
- (0, _hidden.default)(recordTimerElement, true);
- }
- function show() {
- recordTimerElement.classList.remove("near");
- recordTimerElement.classList.remove("nigh");
- (0, _hidden.default)(recordTimerElement, false);
- }
- function getSecondsRecorded() {
- return getStartSeconds() - countdown;
- }
- function getStartSeconds() {
- return options.video.limitSeconds;
- }
- this.start = function () {
- countdown = getStartSeconds();
- nearComputed = endNighComputed = false;
- started = true;
- update();
- show();
- };
- this.pause = function () {
- recordNote.hide();
- };
- this.resume = function () {
- recordNote.show();
- };
- function isStopped() {
- return countdown === null;
- }
- this.stop = function () {
- if (!isStopped() && started) {
- options.debug("Stopping record timer. Was recording for about ~".concat(getSecondsRecorded(), " seconds."));
- hide();
- recordNote.stop();
- countdown = null;
- started = false;
- }
- };
- this.build = function () {
- recordTimerElement = visuals.querySelector(".recordTimer");
- if (!recordTimerElement) {
- recordTimerElement = (0, _hyperscript.default)("p.recordTimer");
- hide();
- visuals.appendChild(recordTimerElement);
- } else {
- hide();
- }
- };
-}
-
-},{"@babel/runtime/helpers/interopRequireDefault":4,"hidden":60,"hyperscript":62}],138:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-var _inherits = _interopRequireDefault(_dereq_("inherits"));
-var _events = _interopRequireDefault(_dereq_("./../../../events"));
-var _browser = _interopRequireDefault(_dereq_("./../../../util/browser"));
-var _eventEmitter = _interopRequireDefault(_dereq_("./../../../util/eventEmitter"));
-var _countdown = _interopRequireDefault(_dereq_("./recorder/countdown"));
-var _facingMode = _interopRequireDefault(_dereq_("./recorder/facingMode"));
-var _pausedNote = _interopRequireDefault(_dereq_("./recorder/pausedNote"));
-var _recordNote = _interopRequireDefault(_dereq_("./recorder/recordNote"));
-var _recordTimer = _interopRequireDefault(_dereq_("./recorder/recordTimer"));
-var RecorderInsides = function RecorderInsides(visuals, options) {
- _eventEmitter.default.call(this, options, "RecorderInsides");
- var self = this;
- var debug = options.debug;
- var recordNote = new _recordNote.default(visuals);
- var recordTimer = new _recordTimer.default(visuals, recordNote, options);
- var browser = new _browser.default(options);
- var countdown;
- var pausedNote;
- var built;
- var facingMode;
- if (options.video.countdown) {
- countdown = new _countdown.default(visuals, options);
- }
- if (options.video.facingModeButton && browser.isMobile()) {
- facingMode = new _facingMode.default(visuals, options);
- }
- if (options.enablePause) {
- pausedNote = new _pausedNote.default(visuals, options);
- }
- function startRecording() {
- recordTimer.start();
- }
- function resumeRecording() {
- recordTimer.resume();
- }
- function stopRecording() {
- recordTimer.stop();
- }
- function pauseRecording() {
- if (self.isCountingDown()) {
- countdown.pause();
- } else {
- recordTimer.pause();
- }
- }
- function onResetting() {
- self.hidePause();
- self.hideCountdown();
- recordTimer.stop();
- facingMode && facingMode.hide();
- }
- function initEvents() {
- debug("RecorderInsides: initEvents()");
- self.on(_events.default.USER_MEDIA_READY, function () {
- facingMode && facingMode.show();
- }).on(_events.default.RECORDING, function () {
- startRecording();
- }).on(_events.default.RESUMING, function () {
- resumeRecording();
- }).on(_events.default.STOPPING, function () {
- stopRecording();
- }).on(_events.default.PAUSED, function () {
- pauseRecording();
- }).on(_events.default.ERROR, onResetting).on(_events.default.RESETTING, onResetting).on(_events.default.HIDE, function () {
- self.hideCountdown();
- });
- }
- this.build = function () {
- debug("RecorderInsides: build()");
- countdown && countdown.build();
- pausedNote && pausedNote.build();
- facingMode && facingMode.build();
- recordNote.build();
- recordTimer.build();
- !built && initEvents();
- built = true;
- };
- this.unload = function () {
- countdown && countdown.unload();
- built = false;
- };
- this.showPause = function () {
- pausedNote && pausedNote.show();
- };
- this.hidePause = function () {
- pausedNote && pausedNote.hide();
- };
- this.hideCountdown = function () {
- countdown && countdown.hide();
- };
- this.startCountdown = function (cb) {
- countdown && countdown.start(cb);
- };
- this.resumeCountdown = function () {
- countdown && countdown.resume();
- };
- this.isCountingDown = function () {
- return countdown && countdown.isCountingDown();
- };
- this.checkTimer = function (intervalSum) {
- recordTimer.check(intervalSum);
- };
-};
-(0, _inherits.default)(RecorderInsides, _eventEmitter.default);
-var _default = exports.default = RecorderInsides;
-
-},{"./../../../events":113,"./../../../util/browser":120,"./../../../util/eventEmitter":122,"./recorder/countdown":133,"./recorder/facingMode":134,"./recorder/pausedNote":135,"./recorder/recordNote":136,"./recorder/recordTimer":137,"@babel/runtime/helpers/interopRequireDefault":4,"inherits":65}],139:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-var _hidden = _interopRequireDefault(_dereq_("hidden"));
-var _hyperscript = _interopRequireDefault(_dereq_("hyperscript"));
-var _inherits = _interopRequireDefault(_dereq_("inherits"));
-var _events = _interopRequireDefault(_dereq_("../../events"));
-var _eventEmitter = _interopRequireDefault(_dereq_("../../util/eventEmitter"));
-var NOTIFIER_MESSAGE_ID = "notifierMessage";
-var Notifier = function Notifier(visuals, options) {
- _eventEmitter.default.call(this, options, "Notifier");
- var self = this;
- var debug = options && options.debug;
- var notifyElement;
- var messageElement = document.getElementById(NOTIFIER_MESSAGE_ID);
- var explanationElement;
- var entertainTimeoutId;
- var entertaining;
- var built;
- function onStopping(limitReached) {
- var lead = "";
- visuals.beginWaiting();
- if (limitReached) {
- debug("Limit reached");
- lead += "".concat(options.text.limitReached, ". ");
- }
- lead += "".concat(options.text.sending, " \u2026");
- self.notify(lead, null, {
- stillWait: true,
- entertain: options.notifier.entertain
- });
- }
- function onConnecting() {
- self.notify("Connecting …");
- }
- function onLoadingUserMedia() {
- self.notify("Loading webcam …");
- }
- function onProgress(frameProgress, sampleProgress) {
- var overallProgress;
- if (options.isAudioEnabled()) {
- overallProgress = "Video: ".concat(frameProgress);
- if (sampleProgress) {
- overallProgress += ", Audio: ".concat(sampleProgress);
- }
- } else {
- overallProgress = frameProgress;
- }
- setExplanation(overallProgress);
- }
- function onBeginVideoEncoding() {
- visuals.beginWaiting();
- var lead = "".concat(options.text.encoding, " \u2026");
- self.notify(lead, null, {
- stillWait: true,
- entertain: options.notifier.entertain
- });
- hideExplanation();
- }
- function initEvents() {
- debug("Notifier: initEvents()");
- self.on(_events.default.CONNECTING, function () {
- onConnecting();
- }).on(_events.default.LOADING_USER_MEDIA, function () {
- onLoadingUserMedia();
- }).on(_events.default.USER_MEDIA_READY, function () {
- // Ensure notifier has correct dimensions, especially when stretched
- correctNotifierDimensions();
- self.hide();
- }).on(_events.default.LOADED_META_DATA, function () {}).on(_events.default.PREVIEW, function () {
- self.hide();
- }).on(_events.default.STOPPING, function (limitReached) {
- onStopping(limitReached);
- }).on(_events.default.PROGRESS, function (frameProgress, sampleProgress) {
- onProgress(frameProgress, sampleProgress);
- }).on(_events.default.BEGIN_VIDEO_ENCODING, function () {
- onBeginVideoEncoding();
- }).on(_events.default.UNLOADING, function () {
- self.notify("Unloading …");
- }).on(_events.default.DISCONNECTED, function () {
- self.notify("Disconnected");
- }).on(_events.default.CONNECTED, function () {
- self.notify("Connected");
- if (options.loadUserMediaOnRecord) {
- self.hide();
- }
- });
- }
- function correctNotifierDimensions() {
- if (options.video.stretch) {
- notifyElement.style.width = "auto";
- notifyElement.style.height = "".concat(visuals.getRecorderHeight(true, true), "px");
- } else {
- notifyElement.style.width = "".concat(visuals.getRecorderWidth(true), "px");
- notifyElement.style.height = "".concat(visuals.getRecorderHeight(true), "px");
- }
- }
- function show() {
- notifyElement && (0, _hidden.default)(notifyElement, false);
- }
- function runEntertainment() {
- if (options.notifier.entertain) {
- if (!entertaining) {
- var randomBackgroundClass = Math.floor(Math.random() * options.notifier.entertainLimit + 1);
- notifyElement.className = "notifier entertain ".concat(options.notifier.entertainClass).concat(randomBackgroundClass);
- entertainTimeoutId = setTimeout(runEntertainment, options.notifier.entertainInterval);
- entertaining = true;
- }
- } else {
- cancelEntertainment();
- }
- }
- function cancelEntertainment() {
- if (notifyElement) {
- notifyElement.classList.remove("entertain");
- }
- clearTimeout(entertainTimeoutId);
- entertainTimeoutId = null;
- entertaining = false;
- }
- this.error = function (err) {
- var message = err.message ? err.message.toString() : err.toString();
- var explanation = err.explanation ? err.explanation.toString() : null;
- if (!message) {
- options.debug("Weird empty error message generated for error", err);
- }
- self.notify(message, explanation, {
- blocking: true,
- problem: true,
- hideForm: err.hideForm && err.hideForm(),
- classList: err.getClassList && err.getClassList(),
- removeDimensions: err.removeDimensions && err.removeDimensions()
- });
- };
-
- // Special treatment to deal with race conditions
- function getMessageElement() {
- if (messageElement) {
- return messageElement;
- }
- messageElement = document.getElementById(NOTIFIER_MESSAGE_ID);
- return messageElement;
- }
- function setMessage(message, messageOptions) {
- options.debug("Notifier: setMessage(".concat(message, ")"));
- if (!getMessageElement()) {
- messageElement = (0, _hyperscript.default)("h2", {
- id: NOTIFIER_MESSAGE_ID
- });
- if (notifyElement) {
- if (explanationElement) {
- // For rare cases, shouldn't happen to set an explanation without a message
- notifyElement.insertBefore(messageElement, explanationElement);
- } else {
- notifyElement.appendChild(messageElement);
- }
- } else {
- options.logger.warn("Unable to show message ".concat(message, " because notifyElement is empty"));
- }
- }
- if (message.length > 0) {
- var problem = messageOptions.problem ? messageOptions.problem : false;
- messageElement.innerHTML = (problem ? "☹ " : "") + message;
- } else {
- options.logger.warn("Not going to update notifierMessage element because message is empty");
- }
- (0, _hidden.default)(messageElement, false);
- }
- function setExplanation(explanation) {
- options.debug("Notifier: setExplanation(".concat(explanation, ")"));
- if (!explanationElement) {
- explanationElement = (0, _hyperscript.default)("p", {
- className: "explanation"
- });
- if (notifyElement) {
- notifyElement.appendChild(explanationElement);
- } else {
- options.logger.warn("Unable to show explanation because notifyElement is empty:", explanation);
- }
- }
- explanationElement.innerHTML = explanation;
- (0, _hidden.default)(explanationElement, false);
- }
- this.build = function () {
- options.debug("Notifier: build()");
- notifyElement = visuals.querySelector(".notifier");
- if (!notifyElement) {
- notifyElement = (0, _hyperscript.default)(".notifier"); // defaults to div
-
- this.hide();
- visuals.appendChild(notifyElement);
- } else {
- this.hide();
- }
- !built && initEvents();
- built = true;
- };
- function hideMessage() {
- if (getMessageElement()) {
- (0, _hidden.default)(messageElement, true);
- }
- }
- function hideExplanation() {
- if (explanationElement) {
- (0, _hidden.default)(explanationElement, true);
- }
- }
- this.hide = function () {
- cancelEntertainment();
- if (notifyElement) {
- (0, _hidden.default)(notifyElement, true);
- notifyElement.classList.remove("blocking");
- }
- hideMessage();
- hideExplanation();
- };
- this.isVisible = function () {
- if (!built) {
- return false;
- }
- return notifyElement && !(0, _hidden.default)(notifyElement);
- };
- this.isBuilt = function () {
- return built;
- };
- this.notify = function (message, explanation) {
- var notifyOptions = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
- var params = [message, explanation].filter(Boolean);
- options.debug("Notifier: notify(".concat(params.join(", "), ")"));
- var stillWait = notifyOptions.stillWait ? notifyOptions.stillWait : false;
- var entertain = notifyOptions.entertain ? notifyOptions.entertain : false;
- var blocking = notifyOptions.blocking ? notifyOptions.blocking : false;
- var hideForm = notifyOptions.hideForm ? notifyOptions.hideForm : false;
- var classList = notifyOptions.classList ? notifyOptions.classList : false;
- var removeDimensions = notifyOptions.removeDimensions ? notifyOptions.removeDimensions : false;
- if (notifyElement) {
- // reset
- if (!entertain) {
- notifyElement.className = "notifier";
- }
- if (classList) {
- classList.forEach(function (className) {
- notifyElement.classList.add(className);
- });
- }
- if (removeDimensions) {
- notifyElement.style.width = "auto";
- notifyElement.style.height = "auto";
- }
- }
- if (blocking) {
- notifyElement && notifyElement.classList.add("blocking");
- this.emit(_events.default.BLOCKING, {
- hideForm: hideForm
- });
- } else {
- this.emit(_events.default.NOTIFYING);
- }
- visuals.hideReplay();
- visuals.hideRecorder();
- setMessage(message, notifyOptions);
- if (explanation && explanation.length > 0) {
- setExplanation(explanation);
- }
- if (entertain) {
- runEntertainment();
- } else {
- cancelEntertainment();
- }
-
- /*
- * just as a safety in case if an error is thrown in the middle of the build process
- * and visuals aren't built/shown yet.
- */
- visuals.showVisuals();
- show();
- !stillWait && visuals.endWaiting();
- };
-};
-(0, _inherits.default)(Notifier, _eventEmitter.default);
-var _default = exports.default = Notifier;
-
-},{"../../events":113,"../../util/eventEmitter":122,"@babel/runtime/helpers/interopRequireDefault":4,"hidden":60,"hyperscript":62,"inherits":65}],140:[function(_dereq_,module,exports){
-(function (Buffer){(function (){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-var _animitter = _interopRequireDefault(_dereq_("animitter"));
-var _canvasToBuffer = _interopRequireDefault(_dereq_("canvas-to-buffer"));
-var _deepmerge = _interopRequireDefault(_dereq_("deepmerge"));
-var _hidden = _interopRequireDefault(_dereq_("hidden"));
-var _hyperscript = _interopRequireDefault(_dereq_("hyperscript"));
-var _inherits = _interopRequireDefault(_dereq_("inherits"));
-var _safeJsonStringify = _interopRequireDefault(_dereq_("safe-json-stringify"));
-var _websocketStream = _interopRequireDefault(_dereq_("websocket-stream"));
-var _constants = _interopRequireDefault(_dereq_("../../constants"));
-var _events = _interopRequireDefault(_dereq_("../../events"));
-var _browser = _interopRequireDefault(_dereq_("../../util/browser"));
-var _eventEmitter = _interopRequireDefault(_dereq_("../../util/eventEmitter"));
-var _humanize = _interopRequireDefault(_dereq_("../../util/humanize"));
-var _pretty = _interopRequireDefault(_dereq_("../../util/pretty"));
-var _videomailError = _interopRequireDefault(_dereq_("../../util/videomailError"));
-var _userMedia = _interopRequireDefault(_dereq_("./userMedia"));
-// credits http://1lineart.kulaone.com/#/
-var PIPE_SYMBOL = "°º¤ø,¸¸,ø¤º°`°º¤ø,¸,ø¤°º¤ø,¸¸,ø¤º°`°º¤ø,¸ ";
-var Recorder = function Recorder(visuals, replay) {
- var defaultOptions = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
- _eventEmitter.default.call(this, defaultOptions, "Recorder");
- var browser = new _browser.default(defaultOptions);
- var options = (0, _deepmerge.default)(defaultOptions, {
- image: {
- // automatically lower quality when on mobile
- quality: browser.isMobile() ? defaultOptions.image.quality - 0.05 : defaultOptions.image.quality
- }
- });
-
- // validate some options this class needs
- if (!options.video || !options.video.fps) {
- throw _videomailError.default.create("FPS must be defined", options);
- }
- var self = this;
- var debug = options.debug;
- var loop = null;
- var originalAnimationFrameObject;
- var samplesCount = 0;
- var framesCount = 0;
- var facingMode = options.video.facingMode; // default is 'user'
-
- var recordingStats = {};
- var confirmedFrameNumber = 0;
- var confirmedSampleNumber = 0;
- var recorderElement;
- var userMedia;
- var userMediaTimeout;
- var retryTimeout;
- var bytesSum;
- var frameProgress;
- var sampleProgress;
- var canvas;
- var ctx;
- var userMediaLoaded;
- var userMediaLoading;
- var submitting;
- var unloaded;
- var stopTime;
- var stream;
- var connecting;
- var connected;
- var blocking;
- var built;
- var key;
- var waitingTime;
- var pingInterval;
- var frame;
- var recordingBufferLength;
- var recordingBuffer;
- function writeStream(buffer, opts) {
- if (stream) {
- if (stream.destroyed) {
- // prevents https://github.com/binarykitchen/videomail.io/issues/393
- stopPings();
- self.emit(_events.default.ERROR, _videomailError.default.create("Already disconnected", "Sorry, connection to the server has been destroyed. Please reload.", options));
- } else {
- var onFlushedCallback = opts && opts.onFlushedCallback;
- try {
- stream.write(buffer, function () {
- if (!onFlushedCallback) {
- return;
- }
- try {
- onFlushedCallback(opts);
- } catch (exc) {
- self.emit(_events.default.ERROR, _videomailError.default.create("Failed to write stream buffer", "stream.write() failed because of ".concat((0, _pretty.default)(exc)), options));
- }
- });
- } catch (exc) {
- self.emit(_events.default.ERROR, _videomailError.default.create("Failed writing to server", "stream.write() failed because of ".concat((0, _pretty.default)(exc)), options));
- }
- }
- }
- }
- function sendPings() {
- pingInterval = window.setInterval(function () {
- debug("Recorder: pinging...");
- writeStream(Buffer.from(""));
- }, options.timeouts.pingInterval);
- }
- function stopPings() {
- clearInterval(pingInterval);
- }
- function onAudioSample(audioSample) {
- samplesCount++;
- var audioBuffer = audioSample.toBuffer();
-
- /*
- * if (options.verbose) {
- * debug(
- * 'Sample #' + samplesCount + ' (' + audioBuffer.length + ' bytes):'
- * )
- * }
- */
-
- writeStream(audioBuffer);
- }
- function show() {
- recorderElement && (0, _hidden.default)(recorderElement, false);
- }
- function onUserMediaReady() {
- var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- try {
- debug("Recorder: onUserMediaReady()", (0, _safeJsonStringify.default)(params));
- var switchingFacingMode = params.switchingFacingMode;
- userMediaLoading = blocking = unloaded = submitting = false;
- userMediaLoaded = true;
- if (!switchingFacingMode) {
- loop = createLoop();
- }
- show();
- if (params.recordWhenReady) {
- self.record();
- }
- self.emit(_events.default.USER_MEDIA_READY, {
- switchingFacingMode: params.switchingFacingMode,
- paused: self.isPaused(),
- recordWhenReady: params.recordWhenReady
- });
- } catch (exc) {
- self.emit(_events.default.ERROR, exc);
- }
- }
- function clearRetryTimeout() {
- if (!retryTimeout) {
- return;
- }
- debug("Recorder: clearRetryTimeout()");
- clearTimeout(retryTimeout);
- retryTimeout = null;
- }
- function calculateFrameProgress() {
- return "".concat((confirmedFrameNumber / (framesCount || 1) * 100).toFixed(2), "%");
- }
- function calculateSampleProgress() {
- return "".concat((confirmedSampleNumber / (samplesCount || 1) * 100).toFixed(2), "%");
- }
- function updateOverallProgress() {
- /*
- * when progresses aren't initialized,
- * then do a first calculation to avoid `infinite` or `null` displays
- */
-
- if (!frameProgress) {
- frameProgress = calculateFrameProgress();
- }
- if (!sampleProgress) {
- sampleProgress = calculateSampleProgress();
- }
- self.emit(_events.default.PROGRESS, frameProgress, sampleProgress);
- }
- function updateFrameProgress(args) {
- confirmedFrameNumber = args.frame ? args.frame : confirmedFrameNumber;
- frameProgress = calculateFrameProgress();
- updateOverallProgress();
- }
- function updateSampleProgress(args) {
- confirmedSampleNumber = args.sample ? args.sample : confirmedSampleNumber;
- sampleProgress = calculateSampleProgress();
- updateOverallProgress();
- }
- function preview(args) {
- confirmedFrameNumber = confirmedSampleNumber = samplesCount = framesCount = 0;
- sampleProgress = frameProgress = null;
- key = args.key;
-
- /*
- * We are not serving MP4 videos anymore due to licensing but are keeping code
- * for compatibility and documentation
- */
- if (args.mp4) {
- replay.setMp4Source("".concat(args.mp4 + _constants.default.SITE_NAME_LABEL, "/").concat(options.siteName, "/videomail.mp4"), true);
- }
- if (args.webm) {
- replay.setWebMSource("".concat(args.webm + _constants.default.SITE_NAME_LABEL, "/").concat(options.siteName, "/videomail.webm"), true);
- }
- self.hide();
- var width = self.getRecorderWidth(true);
- var height = self.getRecorderHeight(true);
- self.emit(_events.default.PREVIEW, key, width, height);
-
- // keep it for recording stats
- waitingTime = Date.now() - stopTime;
- recordingStats.waitingTime = waitingTime;
- if (options.debug) {
- debug("While recording, %s have been transferred and waiting time was %s", _humanize.default.filesize(bytesSum, 2), _humanize.default.toTime(waitingTime));
- }
- }
- function initSocket(cb) {
- if (!connected) {
- connecting = true;
- debug("Recorder: initializing web socket to %s", options.socketUrl);
- self.emit(_events.default.CONNECTING);
-
- // https://github.com/maxogden/websocket-stream#binary-sockets
-
- /*
- * we use query parameters here because we cannot set custom headers in web sockets,
- * see https://github.com/websockets/ws/issues/467
- */
-
- var url2Connect = "".concat(options.socketUrl, "?").concat(encodeURIComponent(_constants.default.SITE_NAME_LABEL), "=").concat(encodeURIComponent(options.siteName));
- try {
- /*
- * websocket options cannot be set on client side, only on server, see
- * https://github.com/maxogden/websocket-stream/issues/116#issuecomment-296421077
- */
- stream = (0, _websocketStream.default)(url2Connect, {
- perMessageDeflate: false,
- // see https://github.com/maxogden/websocket-stream/issues/117#issuecomment-298826011
- objectMode: true
- });
- } catch (exc) {
- connecting = connected = false;
- var err;
- if (typeof _websocketStream.default === "undefined") {
- err = _videomailError.default.create("There is no websocket", "Cause: ".concat((0, _pretty.default)(exc)), options);
- } else {
- err = _videomailError.default.create("Failed to connect to server", "Please upgrade your browser. Your current version does not seem to support websockets.", options, {
- browserProblem: true
- });
- }
- self.emit(_events.default.ERROR, err);
- }
- if (stream) {
- // useful for debugging streams
-
- /*
- * if (!stream.originalEmit) {
- * stream.originalEmit = stream.emit
- * }
- */
-
- /*
- * stream.emit = function (type) {
- * if (stream) {
- * debug(PIPE_SYMBOL + 'Debugging stream event:', type)
- * var args = Array.prototype.slice.call(arguments, 0)
- * return stream.originalEmit.apply(stream, args)
- * }
- * }
- */
-
- stream.on("close", function (err) {
- debug("".concat(PIPE_SYMBOL, "Stream has closed"));
- connecting = connected = false;
- if (err) {
- self.emit(_events.default.ERROR, err || "Unhandled websocket error");
- } else if (userMediaLoaded) {
- initSocket();
- }
- });
- stream.on("connect", function () {
- debug("".concat(PIPE_SYMBOL, "Stream *connect* event emitted"));
- var isClosing = this.socket.readyState === WebSocket.CLOSING;
- if (!connected && !isClosing && !unloaded) {
- connected = true;
- connecting = unloaded = false;
- self.emit(_events.default.CONNECTED);
- cb && cb();
- }
- });
- stream.on("data", function (data) {
- debug("".concat(PIPE_SYMBOL, "Stream *data* event emitted"));
- var command;
- try {
- command = JSON.parse(data.toString());
- } catch (exc) {
- debug("Failed to parse command:", exc);
- self.emit(_events.default.ERROR, _videomailError.default.create("Invalid server command", // toString() since https://github.com/binarykitchen/videomail.io/issues/288
- "Contact us asap. Bad command was ".concat(data.toString(), ". "), options));
- } finally {
- executeCommand.call(self, command);
- }
- });
- stream.on("error", function (err) {
- debug("".concat(PIPE_SYMBOL, "Stream *error* event emitted: ").concat((0, _safeJsonStringify.default)(err)));
-
- // OLD CODE, COMMENTED OUT TEMPORARILY FOR INVESTIGATIONS
- // IT SHOULD RECONNECT INSTEAD OF CLOSING THE CONNECTION
-
- // connecting = connected = false;
-
- // let videomailError;
-
- // if (browser.isIOS()) {
- // /*
- // * setting custom text since that err object isn't really an error
- // * on iPhones when locked, and unlocked, this err is actually
- // * an event object with stuff we can't use at all (an external bug)
- // */
- // videomailError = VideomailError.create(
- // err,
- // `iPhones cannot maintain a live connection for too long. Original error message is: ${err.toString()}`,
- // options,
- // );
-
- // /*
- // * Changed to the above temporarily for better investigations
- // * videomailError = VideomailError.create(
- // * 'Sorry, connection has timed out',
- // * 'iPhones cannot maintain a live connection for too long,
- // * options
- // * )
- // */
- // } else {
- // // or else it could be a poor wifi connection...
- // videomailError = VideomailError.create(
- // "Data exchange interrupted",
- // "Please check your network connection and reload",
- // options,
- // );
- // }
-
- // self.emit(Events.ERROR, videomailError);
- });
-
- // just experimental
-
- stream.on("drain", function () {
- debug("".concat(PIPE_SYMBOL, "Stream *drain* event emitted (should not happen!)"));
- });
- stream.on("preend", function () {
- debug("".concat(PIPE_SYMBOL, "Stream *preend* event emitted"));
- });
- stream.on("end", function () {
- debug("".concat(PIPE_SYMBOL, "Stream *end* event emitted"));
- });
- stream.on("drain", function () {
- debug("".concat(PIPE_SYMBOL, "Stream *drain* event emitted"));
- });
- stream.on("pipe", function () {
- debug("".concat(PIPE_SYMBOL, "Stream *pipe* event emitted"));
- });
- stream.on("unpipe", function () {
- debug("".concat(PIPE_SYMBOL, "Stream *unpipe* event emitted"));
- });
- stream.on("resume", function () {
- debug("".concat(PIPE_SYMBOL, "Stream *resume* event emitted"));
- });
- stream.on("uncork", function () {
- debug("".concat(PIPE_SYMBOL, "Stream *uncork* event emitted"));
- });
- stream.on("readable", function () {
- debug("".concat(PIPE_SYMBOL, "Stream *preend* event emitted"));
- });
- stream.on("prefinish", function () {
- debug("".concat(PIPE_SYMBOL, "Stream *preend* event emitted"));
- });
- stream.on("finish", function () {
- debug("".concat(PIPE_SYMBOL, "Stream *preend* event emitted"));
- });
- }
- }
- }
- function showUserMedia() {
- /*
- * use connected flag to prevent this from happening
- * https://github.com/binarykitchen/videomail.io/issues/323
- */
- return connected && (isNotifying() || !isHidden() || blocking);
- }
- function userMediaErrorCallback(err) {
- userMediaLoading = false;
- clearUserMediaTimeout();
- debug("Recorder: userMediaErrorCallback(), name: ".concat(err.name, ", message: ").concat(err.message, " and Webcam characteristics: ").concat((0, _safeJsonStringify.default)(userMedia.getCharacteristics())));
- var errorListeners = self.listeners(_events.default.ERROR);
- if (errorListeners && errorListeners.length) {
- if (err.name !== _videomailError.default.MEDIA_DEVICE_NOT_SUPPORTED) {
- self.emit(_events.default.ERROR, _videomailError.default.create(err, options));
- } else {
- // do not emit but retry since MEDIA_DEVICE_NOT_SUPPORTED can be a race condition
- debug("Recorder: ignore user media error", err);
- }
-
- // retry after a while
- retryTimeout = setTimeout(initSocket, options.timeouts.userMedia);
- } else if (unloaded) {
- /*
- * This can happen when a container is unloaded but some user media related callbacks
- * are still in process. In that case ignore error.
- */
- debug("Recorder: already unloaded. Not going to throw error", err);
- } else {
- debug("Recorder: no error listeners attached but throwing error", err);
-
- // weird situation, throw it instead of emitting since there are no error listeners
- throw _videomailError.default.create(err, "Unable to process this error since there are no error listeners anymore.", options);
- }
- }
- function getUserMediaCallback(localStream, params) {
- debug("Recorder: getUserMediaCallback()", (0, _safeJsonStringify.default)(params));
- if (showUserMedia()) {
- try {
- clearUserMediaTimeout();
- userMedia.init(localStream, function () {
- onUserMediaReady(params);
- }, onAudioSample.bind(self), function (err) {
- self.emit(_events.default.ERROR, err);
- }, params);
- } catch (exc) {
- self.emit(_events.default.ERROR, exc);
- }
- }
- }
- function loadGenuineUserMedia(params) {
- if (!navigator) {
- throw new Error("Navigator is missing!");
- }
- debug("Recorder: loadGenuineUserMedia()");
- self.emit(_events.default.ASKING_WEBCAM_PERMISSION);
-
- // https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getUserMedia
- if (navigator.mediaDevices && navigator.mediaDevices.getUserMedia) {
- // prefer the front camera (if one is available) over the rear one
- var constraints = {
- video: {
- facingMode: facingMode,
- frameRate: {
- ideal: options.video.fps
- }
- },
- audio: options.isAudioEnabled()
- };
- if (browser.isOkSafari()) {
- /*
- * do not use those width/height constraints yet,
- * current safari would throw an error
- * todo in https://github.com/binarykitchen/videomail-client/issues/142
- */
- } else {
- if (options.hasDefinedWidth()) {
- constraints.video.width = {
- ideal: options.video.width
- };
- } else {
- /*
- * otherwise try to apply the same width as the element is having
- * but there is no 100% guarantee that this will happen. not
- * all webcam drivers behave the same way
- */
- constraints.video.width = {
- ideal: self.limitWidth()
- };
- }
- if (options.hasDefinedHeight()) {
- constraints.video.height = {
- ideal: options.video.height
- };
- }
- }
- debug("Recorder: navigator.mediaDevices.getUserMedia()", (0, _safeJsonStringify.default)(constraints));
- if (navigator.mediaDevices.getSupportedConstraints) {
- debug("Recorder: navigator.mediaDevices.getSupportedConstraints()", (0, _safeJsonStringify.default)(navigator.mediaDevices.getSupportedConstraints()));
- }
- var genuineUserMediaRequest = navigator.mediaDevices.getUserMedia(constraints);
- if (genuineUserMediaRequest) {
- genuineUserMediaRequest.then(function (localStream) {
- getUserMediaCallback(localStream, params);
- }).catch(userMediaErrorCallback);
- } else {
- /*
- * this to trap errors like these
- * Cannot read property 'then' of undefined
- */
-
- // todo retry with navigator.getUserMedia_() maybe?
- throw _videomailError.default.create("Sorry, your browser is unable to use cameras.", "Try a different browser with better user media functionalities.", options);
- }
- } else {
- debug("Recorder: navigator.getUserMedia()");
- navigator.getUserMedia_({
- video: true,
- audio: options.isAudioEnabled()
- }, getUserMediaCallback, userMediaErrorCallback);
- }
- }
- function loadUserMedia() {
- var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- if (userMediaLoaded) {
- debug("Recorder: skipping loadUserMedia() because it is already loaded");
- onUserMediaReady(params);
- return false;
- } else if (userMediaLoading) {
- debug("Recorder: skipping loadUserMedia() because it is already asking for permission");
- return false;
- }
- debug("Recorder: loadUserMedia(".concat((0, _safeJsonStringify.default)(params), ")"));
- self.emit(_events.default.LOADING_USER_MEDIA);
- try {
- userMediaTimeout = setTimeout(function () {
- if (!self.isReady()) {
- self.emit(_events.default.ERROR, browser.getNoAccessIssue());
- }
- }, options.timeouts.userMedia);
- userMediaLoading = true;
- loadGenuineUserMedia(params);
- } catch (exc) {
- debug("Recorder: failed to load genuine user media");
- userMediaLoading = false;
- var errorListeners = self.listeners(_events.default.ERROR);
- if (errorListeners.length) {
- self.emit(_events.default.ERROR, exc);
- } else {
- debug("Recorder: no error listeners attached but throwing exception", exc);
- throw exc; // throw it further
- }
- }
- }
- function executeCommand(command) {
- if (unloaded) {
- // Skip
- return;
- }
- try {
- if (command.args) {
- debug("Server commanded: ".concat(command.command, " with ").concat((0, _safeJsonStringify.default)(command.args)));
- } else {
- debug("Server commanded: ".concat(command.command));
- }
- switch (command.command) {
- case "ready":
- this.emit(_events.default.SERVER_READY);
- if (!userMediaTimeout) {
- if (options.loadUserMediaOnRecord) {
- // Still show it but have it blank
- show();
- } else {
- loadUserMedia();
- }
- }
- break;
- case "preview":
- preview(command.args);
- break;
- case "error":
- this.emit(_events.default.ERROR, _videomailError.default.create("Oh no, server error!", command.args.err.toString() || "(No message given)", options));
- break;
- case "confirmFrame":
- updateFrameProgress(command.args);
- break;
- case "confirmSample":
- updateSampleProgress(command.args);
- break;
- case "beginAudioEncoding":
- this.emit(_events.default.BEGIN_AUDIO_ENCODING);
- break;
- case "beginVideoEncoding":
- this.emit(_events.default.BEGIN_VIDEO_ENCODING);
- break;
- default:
- this.emit(_events.default.ERROR, "Unknown server command: ".concat(command.command));
- break;
- }
- } catch (exc) {
- self.emit(_events.default.ERROR, exc);
- }
- }
- function isNotifying() {
- return visuals.isNotifying();
- }
- function isHidden() {
- return !recorderElement || (0, _hidden.default)(recorderElement);
- }
- function writeCommand(command, args, cb) {
- if (!cb && args && args.constructor === Function) {
- cb = args;
- args = null;
- }
- if (!connected) {
- debug("Reconnecting for the command", command, "…");
- initSocket(function () {
- writeCommand(command, args);
- cb && cb();
- });
- } else if (stream) {
- if (args) {
- debug("$ ".concat(command, " with ").concat((0, _safeJsonStringify.default)(args)));
- } else {
- debug("$ ".concat(command));
- }
- var commandObj = {
- command: command,
- args: args
- };
-
- /*
- * todo commented out because for some reasons server does
- * not accept such a long array of many log lines. to examine later.
- *
- * add some useful debug info to examine weird stuff like this one
- * UnprocessableError: Unable to encode a video with FPS near zero.
- * todo consider removing this later or have it for debug=1 only?
- *
- * if (options.logger && options.logger.getLines) {
- * commandObj.logLines = options.logger.getLines()
- * }
- */
-
- writeStream(Buffer.from((0, _safeJsonStringify.default)(commandObj)));
- if (cb) {
- // keep all callbacks async
- setTimeout(function () {
- cb();
- }, 0);
- }
- }
- }
- function cancelAnimationFrame() {
- loop && loop.dispose();
- }
- function getIntervalSum() {
- return loop.getElapsedTime();
- }
- function getAvgInterval() {
- return getIntervalSum() / framesCount;
- }
- function getAvgFps() {
- var intervalSum = getIntervalSum();
- if (intervalSum === 0) {
- return undefined;
- }
- return framesCount / getIntervalSum() * 1000;
- }
- this.getRecordingStats = function () {
- return recordingStats;
- };
- this.getAudioSampleRate = function () {
- return userMedia.getAudioSampleRate();
- };
- this.stop = function (params) {
- debug("stop(".concat((0, _safeJsonStringify.default)(params), ")"));
- var limitReached = params.limitReached;
- this.emit(_events.default.STOPPING, limitReached);
- loop.complete();
- var self = this;
-
- /*
- * needed to give dom enough time to prepare the replay element
- * to show up upon the STOPPING event so that we can evaluate
- * the right video type
- */
- setTimeout(function () {
- stopTime = Date.now();
- recordingStats = {
- /*
- * do not use loop.getFPS() as this will only return the fps from the last delta,
- * not the average. see https://github.com/hapticdata/animitter/issues/3
- */
- avgFps: getAvgFps(),
- wantedFps: options.video.fps,
- avgInterval: getAvgInterval(),
- wantedInterval: 1e3 / options.video.fps,
- intervalSum: getIntervalSum(),
- framesCount: framesCount,
- videoType: replay.getVideoType()
- };
- if (options.isAudioEnabled()) {
- recordingStats.samplesCount = samplesCount;
- recordingStats.sampleRate = userMedia.getAudioSampleRate();
- }
- writeCommand("stop", recordingStats, function () {
- self.emit(_events.default.STOPPED, {
- recordingStats: recordingStats
- });
- });
-
- // beware, resetting will set framesCount to zero, so leave this here
- self.reset();
- }, 60);
- };
- this.back = function (cb) {
- this.emit(_events.default.GOING_BACK);
- unloaded = false;
- show();
- writeCommand("back", cb);
- };
- function reInitializeAudio() {
- debug("Recorder: reInitializeAudio()");
- clearUserMediaTimeout();
-
- // important to free memory
- userMedia && userMedia.stop();
- userMediaLoaded = key = canvas = ctx = null;
- loadUserMedia();
- }
- this.unload = function (e) {
- if (unloaded || !built) {
- return; // already unloaded
- }
- var cause;
- if (e) {
- cause = e.name || e.statusText || e.toString();
- }
- debug("Recorder: unload()".concat(cause ? ", cause: ".concat(cause) : ""));
- this.reset();
- clearUserMediaTimeout();
- if (userMedia) {
- // prevents https://github.com/binarykitchen/videomail-client/issues/114
- userMedia.unloadRemainingEventListeners();
- }
- if (submitting) {
- // server will disconnect socket automatically after submitting
- } else if (stream) {
- /*
- * force to disconnect socket right now to clean temp files on server
- * event listeners will do the rest
- */
- debug("Recorder: ending stream ...");
- stream.destroy();
- stream = undefined;
- }
- unloaded = true;
- built = connecting = connected = false;
- };
- this.reset = function () {
- // no need to reset when already unloaded
- if (!unloaded) {
- debug("Recorder: reset()");
- this.emit(_events.default.RESETTING);
- cancelAnimationFrame();
-
- // important to free memory
- userMedia && userMedia.stop();
- replay.reset();
- userMediaLoaded = key = canvas = ctx = recordingBuffer = recordingBufferLength = null;
- }
- };
- function clearUserMediaTimeout() {
- if (userMediaTimeout) {
- debug("Recorder: clearUserMediaTimeout()");
- userMediaTimeout && clearTimeout(userMediaTimeout);
- userMediaTimeout = null;
- }
- }
- this.validate = function () {
- return connected && canvas === null;
- };
- this.isReady = function () {
- return userMedia.isReady();
- };
- this.pause = function (params) {
- var e = params && params.event;
- if (e instanceof window.Event) {
- params.eventType = e.type;
- }
- if (params) {
- debug("pause() at frame ".concat(framesCount, " with ").concat((0, _safeJsonStringify.default)(params)));
- } else {
- debug("pause() at frame ".concat(framesCount));
- }
- userMedia.pause();
- loop.stop();
- this.emit(_events.default.PAUSED);
- sendPings();
- };
- this.isPaused = function () {
- return userMedia && userMedia.isPaused();
- };
- this.resume = function () {
- debug("Recorder: resume() with frame ".concat(framesCount));
- stopPings();
- this.emit(_events.default.RESUMING);
- userMedia.resume();
- loop.start();
- };
- function onFlushed(opts) {
- var frameNumber = opts && opts.frameNumber;
- if (frameNumber === 1) {
- self.emit(_events.default.FIRST_FRAME_SENT);
- }
- }
- function draw(deltaTime, elapsedTime) {
- try {
- // ctx and stream might become null while unloading
- if (!self.isPaused() && stream && ctx) {
- if (framesCount === 0) {
- self.emit(_events.default.SENDING_FIRST_FRAME);
- }
- framesCount++;
- ctx.drawImage(userMedia.getRawVisuals(), 0, 0, canvas.width, canvas.height);
- recordingBuffer = frame.toBuffer();
- recordingBufferLength = recordingBuffer.length;
- if (recordingBufferLength < 1) {
- throw _videomailError.default.create("Failed to extract webcam data.", options);
- }
- bytesSum += recordingBufferLength;
- var frameControlBuffer = Buffer.from((0, _safeJsonStringify.default)({
- frameNumber: framesCount
- }));
- var frameBuffer = Buffer.concat([recordingBuffer, frameControlBuffer]);
- writeStream(frameBuffer, {
- frameNumber: framesCount,
- onFlushedCallback: onFlushed
- });
-
- /*
- * if (options.verbose) {
- * debug(
- * 'Frame #' + framesCount + ' (' + recordingBufferLength + ' bytes):',
- * ' delta=' + deltaTime + 'ms, ' +
- * ' elapsed=' + elapsedTime + 'ms'
- * )
- * }
- */
-
- visuals.checkTimer({
- intervalSum: elapsedTime
- });
- }
- } catch (exc) {
- self.emit(_events.default.ERROR, exc);
- }
- }
- function createLoop() {
- var newLoop = (0, _animitter.default)({
- fps: options.video.fps
- }, draw);
-
- // remember it first
- originalAnimationFrameObject = newLoop.getRequestAnimationFrameObject();
- return newLoop;
- }
- this.record = function () {
- if (unloaded) {
- return false;
- }
-
- // reconnect when needed
- if (!connected) {
- debug("Recorder: reconnecting before recording ...");
- initSocket(function () {
- self.once(_events.default.USER_MEDIA_READY, self.record);
- });
- return false;
- }
- if (!userMediaLoaded) {
- if (options.loadUserMediaOnRecord) {
- loadUserMedia({
- recordWhenReady: true
- });
- } else {
- self.emit(_events.default.ERROR, _videomailError.default.create("Load and enable your camera first", options));
- }
- return false; // do nothing further
- }
- try {
- canvas = userMedia.createCanvas();
- } catch (exc) {
- self.emit(_events.default.ERROR, _videomailError.default.create(exc, options));
- return false;
- }
- ctx = canvas.getContext("2d");
- if (!canvas.width) {
- self.emit(_events.default.ERROR, _videomailError.default.create("Canvas has an invalid width.", options));
- return false;
- }
- if (!canvas.height) {
- self.emit(_events.default.ERROR, _videomailError.default.create("Canvas has an invalid height.", options));
- return false;
- }
- bytesSum = 0;
- frame = new _canvasToBuffer.default(canvas, options.image.types, options.image.quality);
- debug("Recorder: record()");
- userMedia.record();
- self.emit(_events.default.RECORDING, framesCount);
-
- // see https://github.com/hapticdata/animitter/issues/3
- loop.on("update", function (_deltaTime, elapsedTime) {
- var avgFPS = undefined;
- if (elapsedTime !== 0) {
- // x1000 because of milliseconds
- avgFPS = Math.round(framesCount / elapsedTime * 1000);
- } else {
- avgFPS = undefined;
- }
- debug("Recorder: avgFps = ".concat(avgFPS, ", framesCount = ").concat(framesCount));
- });
- loop.start();
- };
- function setAnimationFrameObject(newObj) {
- /*
- * must stop and then start to make it become effective, see
- * https://github.com/hapticdata/animitter/issues/5#issuecomment-292019168
- */
- if (loop) {
- var isRecording = self.isRecording();
- loop.stop();
- loop.setRequestAnimationFrameObject(newObj);
- if (isRecording) {
- loop.start();
- }
- }
- }
- function restoreAnimationFrameObject() {
- debug("Recorder: restoreAnimationFrameObject()");
- setAnimationFrameObject(originalAnimationFrameObject);
- }
- function loopWithTimeouts() {
- debug("Recorder: loopWithTimeouts()");
- var wantedInterval = 1e3 / options.video.fps;
- var processingTime = 0;
- var start;
- function raf(fn) {
- return setTimeout(function () {
- start = Date.now();
- fn();
- processingTime = Date.now() - start;
- },
- /*
- * reducing wanted interval by respecting the time it takes to
- * compute internally since this is not multi-threaded like
- * requestAnimationFrame
- */
- wantedInterval - processingTime);
- }
- function cancel(id) {
- clearTimeout(id);
- }
- setAnimationFrameObject({
- requestAnimationFrame: raf,
- cancelAnimationFrame: cancel
- });
- }
- function buildElement() {
- recorderElement = (0, _hyperscript.default)("video.".concat(options.selectors.userMediaClass));
- visuals.appendChild(recorderElement);
- }
- function correctDimensions() {
- if (options.hasDefinedWidth()) {
- recorderElement.width = self.getRecorderWidth(true);
- }
- if (options.hasDefinedHeight()) {
- recorderElement.height = self.getRecorderHeight(true);
- }
- }
- function switchFacingMode() {
- if (!browser.isMobile()) {
- return false;
- }
- if (facingMode === "user") {
- facingMode = "environment";
- } else if (facingMode === "environment") {
- facingMode = "user";
- } else {
- debug("Recorder: unsupported facing mode", facingMode);
- }
- loadGenuineUserMedia({
- switchingFacingMode: true
- });
- }
- function initEvents() {
- debug("Recorder: initEvents()");
- self.on(_events.default.SUBMITTING, function () {
- submitting = true;
- }).on(_events.default.SUBMITTED, function () {
- submitting = false;
- }).on(_events.default.BLOCKING, function () {
- blocking = true;
- clearUserMediaTimeout();
- }).on(_events.default.HIDE, function () {
- self.hide();
- }).on(_events.default.LOADED_META_DATA, function () {
- correctDimensions();
- }).on(_events.default.DISABLING_AUDIO, function () {
- reInitializeAudio();
- }).on(_events.default.ENABLING_AUDIO, function () {
- reInitializeAudio();
- }).on(_events.default.INVISIBLE, function () {
- loopWithTimeouts();
- }).on(_events.default.VISIBLE, function () {
- restoreAnimationFrameObject();
- }).on(_events.default.SWITCH_FACING_MODE, function () {
- switchFacingMode();
- });
- }
- this.build = function () {
- var err = browser.checkRecordingCapabilities();
- if (!err) {
- err = browser.checkBufferTypes();
- }
- if (err) {
- this.emit(_events.default.ERROR, err);
- } else {
- recorderElement = visuals.querySelector("video.".concat(options.selectors.userMediaClass));
- if (!recorderElement) {
- buildElement();
- }
- correctDimensions();
-
- /*
- * prevent audio feedback, see
- * https://github.com/binarykitchen/videomail-client/issues/35
- */
- recorderElement.muted = true;
-
- // for iphones, see https://github.com/webrtc/samples/issues/929
- recorderElement.setAttribute("playsinline", true);
- recorderElement.setAttribute("webkit-playsinline", "webkit-playsinline");
-
- /*
- * add these here, not in CSS because users can configure custom
- * class names
- */
- recorderElement.style.transform = "rotateY(180deg)";
- recorderElement.style["-webkit-transform"] = "rotateY(180deg)";
- recorderElement.style["-moz-transform"] = "rotateY(180deg)";
- if (options.video.stretch) {
- recorderElement.style.width = "100%";
- }
- if (!userMedia) {
- userMedia = new _userMedia.default(this, options);
- }
- show();
- if (!built) {
- initEvents();
- if (!connected) {
- initSocket();
- } else if (!options.loadUserMediaOnRecord) {
- loadUserMedia();
- }
- } else if (options.loadUserMediaOnRecord) {
- loadUserMedia();
- }
- built = true;
- }
- };
- this.isPaused = function () {
- return userMedia && userMedia.isPaused() && !loop.isRunning();
- };
- this.isRecording = function () {
- /*
- * checking for stream.destroyed needed since
- * https://github.com/binarykitchen/videomail.io/issues/296
- */
- return loop && loop.isRunning() && !this.isPaused() && !isNotifying() && stream && !stream.destroyed;
- };
- this.hide = function () {
- if (!isHidden()) {
- recorderElement && (0, _hidden.default)(recorderElement, true);
- clearUserMediaTimeout();
- clearRetryTimeout();
- }
- };
- this.isUnloaded = function () {
- return unloaded;
- };
-
- /*
- * these two return the true dimensions of the webcam area.
- * needed because on mobiles they might be different.
- */
-
- this.getRecorderWidth = function (responsive) {
- if (userMedia && userMedia.hasVideoWidth()) {
- return userMedia.getRawWidth(responsive);
- } else if (responsive && options.hasDefinedWidth()) {
- return this.limitWidth(options.video.width);
- }
- };
- this.getRecorderHeight = function (responsive, useBoundingClientRect) {
- if (recorderElement && useBoundingClientRect) {
- return recorderElement.getBoundingClientRect().height;
- } else if (userMedia) {
- return userMedia.getRawHeight(responsive);
- } else if (responsive && options.hasDefinedHeight()) {
- return this.calculateHeight(responsive);
- }
- };
- function getRatio() {
- var ratio;
- if (userMedia) {
- var userMediaVideoWidth = userMedia.getVideoWidth();
-
- // avoid division by zero
- if (userMediaVideoWidth < 1) {
- // use as a last resort fallback computation (needed for safari 11)
- ratio = visuals.getRatio();
- } else {
- ratio = userMedia.getVideoHeight() / userMediaVideoWidth;
- }
- } else {
- ratio = options.getRatio();
- }
- return ratio;
- }
- this.calculateWidth = function (responsive) {
- var videoHeight;
- if (userMedia) {
- videoHeight = userMedia.getVideoHeight();
- } else if (recorderElement) {
- videoHeight = recorderElement.videoHeight || recorderElement.height;
- }
- return visuals.calculateWidth({
- responsive: responsive,
- ratio: getRatio(),
- videoHeight: videoHeight
- });
- };
- this.calculateHeight = function (responsive) {
- var videoWidth;
- if (userMedia) {
- videoWidth = userMedia.getVideoWidth();
- } else if (recorderElement) {
- videoWidth = recorderElement.videoWidth || recorderElement.width;
- }
- return visuals.calculateHeight({
- responsive: responsive,
- ratio: getRatio(),
- videoWidth: videoWidth
- });
- };
- this.getRawVisualUserMedia = function () {
- return recorderElement;
- };
- this.isConnected = function () {
- return connected;
- };
- this.isConnecting = function () {
- return connecting;
- };
- this.limitWidth = function (width) {
- return visuals.limitWidth(width);
- };
- this.limitHeight = function (height) {
- return visuals.limitHeight(height);
- };
- this.isUserMediaLoaded = function () {
- return userMediaLoaded;
- };
-};
-(0, _inherits.default)(Recorder, _eventEmitter.default);
-var _default = exports.default = Recorder;
-
-}).call(this)}).call(this,_dereq_("buffer").Buffer)
-},{"../../constants":112,"../../events":113,"../../util/browser":120,"../../util/eventEmitter":122,"../../util/humanize":123,"../../util/pretty":125,"../../util/videomailError":126,"./userMedia":142,"@babel/runtime/helpers/interopRequireDefault":4,"animitter":13,"buffer":18,"canvas-to-buffer":21,"deepmerge":27,"hidden":60,"hyperscript":62,"inherits":65,"safe-json-stringify":93,"websocket-stream":107}],141:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-var _addEventlistenerWithOptions = _interopRequireDefault(_dereq_("add-eventlistener-with-options"));
-var _hidden = _interopRequireDefault(_dereq_("hidden"));
-var _hyperscript = _interopRequireDefault(_dereq_("hyperscript"));
-var _inherits = _interopRequireDefault(_dereq_("inherits"));
-var _events = _interopRequireDefault(_dereq_("../../events"));
-var _browser = _interopRequireDefault(_dereq_("../../util/browser"));
-var _eventEmitter = _interopRequireDefault(_dereq_("../../util/eventEmitter"));
-var Replay = function Replay(parentElement, options) {
- _eventEmitter.default.call(this, options, "Replay");
- var self = this;
- var browser = new _browser.default(options);
- var debug = options.debug;
- var built;
- var replayElement;
- var videomail;
- function buildElement() {
- var replayParentElement = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : parentElement;
- if (typeof replayParentElement === "string") {
- replayParentElement = document.getElementById(replayParentElement);
- if (!replayParentElement) {
- throw new Error("No replay parent element container with ID ".concat(replayParentElement, " found."));
- }
- }
- var videoSelector = "video.".concat(options.selectors.replayClass);
- replayElement = replayParentElement.querySelector(videoSelector);
-
- // If none exists, create one then
- if (!replayElement) {
- replayElement = (0, _hyperscript.default)(videoSelector);
- replayParentElement.appendChild(replayElement);
- }
- }
-
- // Questionable, does not make sense
- function isStandalone() {
- return parentElement.constructor.name === "HTMLDivElement";
- }
- function copyAttributes(newVideomail) {
- var attributeContainer;
- Object.keys(newVideomail).forEach(function (attribute) {
- attributeContainer = replayElement.parentNode.querySelector(".".concat(attribute));
- if (attributeContainer) {
- var empty = !attributeContainer.innerHTML || attributeContainer.innerHTML.length < 1;
-
- // Do not overwrite when already set before, e
- // e.g. with a React component adding links to the body
- if (empty) {
- attributeContainer.innerHTML = newVideomail[attribute];
- }
- }
- });
- }
- function correctDimensions(options) {
- var height, width;
- if (videomail && videomail.playerWidth) {
- width = videomail.playerWidth;
- } else if (parentElement.calculateWidth) {
- width = parentElement.calculateWidth(options);
- }
- if (videomail && videomail.playerHeight) {
- height = videomail.playerHeight;
- } else if (parentElement.calculateHeight) {
- height = parentElement.calculateHeight(options);
- }
- if (width > 0) {
- replayElement.style.width = "".concat(width, "px");
- } else {
- replayElement.style.width = "auto";
- }
- if (height > 0) {
- replayElement.style.height = "".concat(height, "px");
- } else {
- replayElement.style.height = "auto";
- }
- }
- this.setVideomail = function (newVideomail) {
- var playerOnly = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
- videomail = newVideomail;
- if (videomail) {
- if (videomail.mp4) {
- this.setMp4Source(videomail.mp4);
- }
- if (videomail.webm) {
- this.setWebMSource(videomail.webm);
- }
- if (videomail.vtt) {
- setTrackSource(videomail.vtt);
- }
- if (videomail.poster) {
- replayElement.setAttribute("poster", videomail.poster);
- }
- copyAttributes(videomail);
- }
- var width = videomail && videomail.width;
- var height = videomail && videomail.height;
- var hasAudio = videomail && videomail.recordingStats && videomail.recordingStats.sampleRate > 0;
- this.show(width, height, hasAudio, playerOnly);
- };
- this.show = function (recorderWidth, recorderHeight, hasAudio) {
- var playerOnly = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
- if (!replayElement) {
- return;
- }
- if (self.isShown()) {
- // Skip, already shown
- return;
- }
- debug("Replay: show(playerOnly=".concat(playerOnly, ")"));
- if (videomail) {
- correctDimensions({
- responsive: true,
- // beware that recorderWidth and recorderHeight can be null sometimes
- videoWidth: recorderWidth || replayElement.videoWidth,
- videoHeight: recorderHeight || replayElement.videoHeight
- });
- }
- (0, _hidden.default)(replayElement, false);
- if (playerOnly) {
- (0, _hidden.default)(replayElement.parentNode, false);
- } else if (parentElement) {
- // parent element can be any object, be careful!
- if (parentElement.style) {
- (0, _hidden.default)(parentElement, false);
- } else if (parentElement.show) {
- parentElement.show();
- }
- }
- if (hasAudio) {
- /*
- * https://github.com/binarykitchen/videomail-client/issues/115
- * do not set mute to false as this will mess up. just do not mention this attribute at all
- */
- replayElement.setAttribute("volume", 1);
- } else if (!options.isAudioEnabled()) {
- replayElement.setAttribute("muted", true);
- }
-
- // this forces to actually fetch the videos from the server
- replayElement.load();
- if (!videomail) {
- replayElement.addEventListener("canplaythrough", function () {
- self.emit(_events.default.PREVIEW_SHOWN);
- }, {
- once: true
- });
- } else {
- replayElement.addEventListener("canplaythrough", function () {
- self.emit(_events.default.REPLAY_SHOWN);
- }, {
- once: true
- });
- }
- };
- this.build = function (replayParentElement) {
- debug("Replay: build (".concat(replayParentElement ? "replayParentElement=\"".concat(replayParentElement.id, "\"") : "", ")"));
- replayElement = parentElement.querySelector("video.".concat(options.selectors.replayClass));
- if (!replayElement) {
- buildElement(replayParentElement);
- }
- this.hide();
- replayElement.setAttribute("autoplay", true);
- replayElement.setAttribute("autostart", true);
- replayElement.setAttribute("autobuffer", true);
- replayElement.setAttribute("playsinline", true);
- replayElement.setAttribute("webkit-playsinline", "webkit-playsinline");
- replayElement.setAttribute("controls", "controls");
- replayElement.setAttribute("preload", "auto");
- if (!built) {
- if (!isStandalone()) {
- this.on(_events.default.PREVIEW, function (_key, recorderWidth, recorderHeight) {
- self.show(recorderWidth, recorderHeight);
- });
- }
-
- /*
- * makes use of passive option automatically for better performance
- * https://www.npmjs.com/package/add-eventlistener-with-options
- */
- (0, _addEventlistenerWithOptions.default)(replayElement, "touchstart", function (e) {
- try {
- e && e.preventDefault();
- } catch (exc) {
- /*
- * ignore errors like
- * Unable to preventDefault inside passive event listener invocation.
- */
- }
- if (this.paused) {
- play();
- } else {
- pause();
- }
- });
- replayElement.onclick = function (e) {
- e && e.preventDefault();
- if (this.paused) {
- play();
- } else {
- pause();
- }
- };
- }
- built = true;
- debug("Replay: built.");
- };
- this.unload = function () {
- debug("Replay: unload()");
- self.removeAllListeners();
- replayElement.remove();
- replayElement = undefined;
- videomail = undefined;
- built = false;
- };
- this.getVideoSource = function (type) {
- if (!replayElement) {
- return;
- }
- var sources = replayElement.getElementsByTagName("source");
- var l = sources && sources.length;
- var videoType = "video/".concat(type);
- var source;
- if (l) {
- var i;
- for (i = 0; i < l && !source; i++) {
- if (sources[i].getAttribute("type") === videoType) {
- source = sources[i];
- }
- }
- }
- return source;
- };
- function setTrackSource(src) {
- if (!replayElement) {
- return;
- }
- var tracks = replayElement.getElementsByTagName("track");
- var firstTrack = tracks && tracks[0];
- if (firstTrack) {
- if (src) {
- firstTrack.setAttribute("src", src);
- } else {
- // Remove when no captions available
- replayElement.removeChild(firstTrack);
- }
- } else {
- // Insert one then
- var track = (0, _hyperscript.default)("track", {
- src: src,
- // It's captions, not subtitles. Because for subtitles you must define the language, see
- // https://developer.mozilla.org/en-US/docs/Web/HTML/Element/track
- kind: "captions",
- default: true
- });
- replayElement.appendChild(track);
-
- // Because the local videomail server for development uses a different port, see
- // https://developer.mozilla.org/en-US/docs/Web/HTML/Element/track
- replayElement.setAttribute("crossorigin", "anonymous");
- }
- }
- function setVideoSource(type, src, bustCache) {
- var source = self.getVideoSource(type);
- if (src && bustCache) {
- src += "?".concat(Date.now());
- }
- if (!source) {
- if (src) {
- var fps = options.video.fps;
-
- // Ensure it's greater than the frame duration itself
- var t = 2 * (1 / fps);
- source = (0, _hyperscript.default)("source", {
- /*
- * Ensures HTML video thumbnail turns up on iOS, see
- * https://muffinman.io/blog/hack-for-ios-safari-to-display-html-video-thumbnail/
- */
- src: "".concat(src, "#t=").concat(t),
- type: "video/".concat(type)
- });
- replayElement.appendChild(source);
- }
- } else if (src) {
- source.setAttribute("src", src);
- } else {
- replayElement.removeChild(source);
- }
- }
- this.setMp4Source = function (src, bustCache) {
- setVideoSource("mp4", src, bustCache);
- };
- this.setWebMSource = function (src, bustCache) {
- setVideoSource("webm", src, bustCache);
- };
- this.getVideoType = function () {
- return browser.getVideoType(replayElement);
- };
- function pause(cb) {
- /*
- * avoids race condition, inspired by
- * http://stackoverflow.com/questions/36803176/how-to-prevent-the-play-request-was-interrupted-by-a-call-to-pause-error
- */
- setTimeout(function () {
- try {
- if (replayElement) {
- replayElement.pause();
- }
- } catch (exc) {
- // just ignore, see https://github.com/binarykitchen/videomail.io/issues/386
- options.logger.warn(exc);
- }
- cb && cb();
- }, 15);
- }
- function play() {
- if (replayElement && replayElement.play) {
- var p;
- try {
- p = replayElement.play();
- } catch (exc) {
- /*
- * this in the hope to catch InvalidStateError, see
- * https://github.com/binarykitchen/videomail-client/issues/149
- */
- options.logger.warn("Caught replay exception:", exc);
- }
- if (p && typeof Promise !== "undefined" && p instanceof Promise) {
- p.catch(function (reason) {
- options.logger.warn("Caught pending replay promise exception: %s", reason);
- });
- }
- }
- }
- this.reset = function (cb) {
- // pause video to make sure it won't consume any memory
- pause(function () {
- if (replayElement) {
- self.setMp4Source(null);
- self.setWebMSource(null);
- }
- videomail = undefined;
- cb && cb();
- });
- };
- this.hide = function () {
- if (isStandalone()) {
- (0, _hidden.default)(parentElement, true);
- } else if (replayElement) {
- (0, _hidden.default)(replayElement, true);
- (0, _hidden.default)(replayElement.parentNode, true);
- }
- };
- this.isShown = function () {
- if (!replayElement) {
- return false;
- }
- if (!parentElement) {
- return false;
- }
- return !(0, _hidden.default)(replayElement) && !parentElement.isHidden();
- };
- this.getParentElement = function () {
- return parentElement;
- };
- this.getElement = function () {
- return replayElement;
- };
-};
-(0, _inherits.default)(Replay, _eventEmitter.default);
-var _default = exports.default = Replay;
-
-},{"../../events":113,"../../util/browser":120,"../../util/eventEmitter":122,"@babel/runtime/helpers/interopRequireDefault":4,"add-eventlistener-with-options":12,"hidden":60,"hyperscript":62,"inherits":65}],142:[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = _default;
-var _hyperscript = _interopRequireDefault(_dereq_("hyperscript"));
-var _safeJsonStringify = _interopRequireDefault(_dereq_("safe-json-stringify"));
-var _events = _interopRequireDefault(_dereq_("./../../events"));
-var _audioRecorder = _interopRequireDefault(_dereq_("./../../util/audioRecorder"));
-var _browser = _interopRequireDefault(_dereq_("./../../util/browser"));
-var _eventEmitter = _interopRequireDefault(_dereq_("./../../util/eventEmitter"));
-var _mediaEvents = _interopRequireDefault(_dereq_("./../../util/mediaEvents"));
-var _pretty = _interopRequireDefault(_dereq_("./../../util/pretty"));
-var _videomailError = _interopRequireDefault(_dereq_("./../../util/videomailError"));
-var EVENT_ASCII = "|—O—|";
-function _default(recorder, options) {
- _eventEmitter.default.call(this, options, "UserMedia");
- var rawVisualUserMedia = recorder && recorder.getRawVisualUserMedia();
- var browser = new _browser.default(options);
- var self = this;
- var paused = false;
- var record = false;
- var audioRecorder;
- var currentVisualStream;
- function attachMediaStream(stream) {
- currentVisualStream = stream;
- if (typeof rawVisualUserMedia.srcObject !== "undefined") {
- rawVisualUserMedia.srcObject = stream;
- } else if (typeof rawVisualUserMedia.src !== "undefined") {
- var URL = window.URL || window.webkitURL;
- rawVisualUserMedia.src = URL.createObjectURL(stream) || stream;
- } else {
- throw _videomailError.default.create("Error attaching stream to element.", "Contact the developer about this", options);
- }
- }
- function setVisualStream(localMediaStream) {
- if (localMediaStream) {
- attachMediaStream(localMediaStream);
- } else {
- rawVisualUserMedia.removeAttribute("srcObject");
- rawVisualUserMedia.removeAttribute("src");
- currentVisualStream = null;
- }
- }
- function getVisualStream() {
- if (rawVisualUserMedia.mozSrcObject) {
- return rawVisualUserMedia.mozSrcObject;
- } else if (rawVisualUserMedia.srcObject) {
- return rawVisualUserMedia.srcObject;
- }
- return currentVisualStream;
- }
- function hasEnded() {
- if (rawVisualUserMedia.ended) {
- return rawVisualUserMedia.ended;
- }
- var visualStream = getVisualStream();
- return visualStream && visualStream.ended;
- }
- function hasInvalidDimensions() {
- if (rawVisualUserMedia.videoWidth && rawVisualUserMedia.videoWidth < 3 || rawVisualUserMedia.height && rawVisualUserMedia.height < 3) {
- return true;
- }
- }
- function getTracks(localMediaStream) {
- var tracks;
- if (localMediaStream && localMediaStream.getTracks) {
- tracks = localMediaStream.getTracks();
- }
- return tracks;
- }
- function getVideoTracks(localMediaStream) {
- var videoTracks;
- if (localMediaStream && localMediaStream.getVideoTracks) {
- videoTracks = localMediaStream.getVideoTracks();
- }
- return videoTracks;
- }
- function getFirstVideoTrack(localMediaStream) {
- var videoTracks = getVideoTracks(localMediaStream);
- var videoTrack;
- if (videoTracks && videoTracks[0]) {
- videoTrack = videoTracks[0];
- }
- return videoTrack;
- }
- function logEvent(event, params) {
- options.debug("UserMedia: ...", EVENT_ASCII, "event", event, (0, _safeJsonStringify.default)(params));
- }
- function isPromise(anything) {
- return anything && typeof Promise !== "undefined" && anything instanceof Promise;
- }
- function outputEvent(e) {
- logEvent(e.type, {
- readyState: rawVisualUserMedia.readyState
- });
-
- // remove myself
- rawVisualUserMedia.removeEventListener && rawVisualUserMedia.removeEventListener(e.type, outputEvent);
- }
- this.unloadRemainingEventListeners = function () {
- options.debug("UserMedia: unloadRemainingEventListeners()");
- _mediaEvents.default.forEach(function (eventName) {
- rawVisualUserMedia.removeEventListener(eventName, outputEvent);
- });
- };
- this.init = function (localMediaStream, videoCallback, audioCallback, endedEarlyCallback) {
- var params = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {};
- this.stop(localMediaStream, {
- aboutToInitialize: true,
- switchingFacingMode: params.switchingFacingMode
- });
- var onPlayReached = false;
- var onLoadedMetaDataReached = false;
- var playingPromiseReached = false;
- if (options && options.isAudioEnabled()) {
- audioRecorder || (audioRecorder = new _audioRecorder.default(this, options));
- }
- function audioRecord() {
- self.removeListener(_events.default.SENDING_FIRST_FRAME, audioRecord);
- audioRecorder && audioRecorder.record(audioCallback);
- }
- function unloadAllEventListeners() {
- options.debug("UserMedia: unloadAllEventListeners()");
- self.unloadRemainingEventListeners();
- self.removeListener(_events.default.SENDING_FIRST_FRAME, audioRecord);
- rawVisualUserMedia.removeEventListener && rawVisualUserMedia.removeEventListener("play", onPlay);
- rawVisualUserMedia.removeEventListener && rawVisualUserMedia.removeEventListener("loadedmetadata", onLoadedMetaData);
- }
- function play() {
- // Resets the media element and restarts the media resource. Any pending events are discarded.
- try {
- rawVisualUserMedia.load();
-
- /*
- * fixes https://github.com/binarykitchen/videomail.io/issues/401
- * see https://github.com/MicrosoftEdge/Demos/blob/master/photocapture/scripts/demo.js#L27
- */
- if (rawVisualUserMedia.paused) {
- options.debug("UserMedia: play()", "media.readyState=".concat(rawVisualUserMedia.readyState), "media.paused=".concat(rawVisualUserMedia.paused), "media.ended=".concat(rawVisualUserMedia.ended), "media.played=".concat((0, _pretty.default)(rawVisualUserMedia.played)));
- var p;
- try {
- p = rawVisualUserMedia.play();
- } catch (exc) {
- /*
- * this in the hope to catch InvalidStateError, see
- * https://github.com/binarykitchen/videomail-client/issues/149
- */
- options.logger.warn("Caught raw usermedia play exception:", exc);
- }
-
- /*
- * using the promise here just experimental for now
- * and this to catch any weird errors early if possible
- */
- if (isPromise(p)) {
- p.then(function () {
- if (!playingPromiseReached) {
- options.debug("UserMedia: play promise successful. Playing now.");
- playingPromiseReached = true;
- }
- }).catch(function (reason) {
- /*
- * promise can be interrupted, i.E. when switching tabs
- * and promise can get resumed when switching back to tab, hence
- * do not treat this like an error
- */
- options.logger.warn("Caught pending usermedia promise exception: %s", reason.toString());
- });
- }
- }
- } catch (exc) {
- unloadAllEventListeners();
- endedEarlyCallback(exc);
- }
- }
- function fireCallbacks() {
- var readyState = rawVisualUserMedia.readyState;
-
- // ready state, see https://developer.mozilla.org/en-US/docs/Web/API/HTMLMediaElement/readyState
- options.debug("UserMedia: fireCallbacks(" + "readyState=".concat(readyState, ", ") + "onPlayReached=".concat(onPlayReached, ", ") + "onLoadedMetaDataReached=".concat(onLoadedMetaDataReached, ")"));
- if (onPlayReached && onLoadedMetaDataReached) {
- videoCallback();
- if (audioRecorder && audioCallback) {
- try {
- audioRecorder.init(localMediaStream);
- self.on(_events.default.SENDING_FIRST_FRAME, audioRecord);
- } catch (exc) {
- unloadAllEventListeners();
- endedEarlyCallback(exc);
- }
- }
- }
- }
- function onPlay() {
- try {
- logEvent("play", {
- readyState: rawVisualUserMedia.readyState,
- audio: options.isAudioEnabled(),
- width: rawVisualUserMedia.width,
- height: rawVisualUserMedia.height,
- videoWidth: rawVisualUserMedia.videoWidth,
- videoHeight: rawVisualUserMedia.videoHeight
- });
- rawVisualUserMedia.removeEventListener && rawVisualUserMedia.removeEventListener("play", onPlay);
- if (hasEnded() || hasInvalidDimensions()) {
- endedEarlyCallback(_videomailError.default.create("Already busy", "Probably another browser window is using your webcam?", options));
- } else {
- onPlayReached = true;
- fireCallbacks();
- }
- } catch (exc) {
- unloadAllEventListeners();
- endedEarlyCallback(exc);
- }
- }
-
- // player modifications to perform that must wait until `loadedmetadata` has been triggered
- function onLoadedMetaData() {
- logEvent("loadedmetadata", {
- readyState: rawVisualUserMedia.readyState,
- paused: rawVisualUserMedia.paused,
- width: rawVisualUserMedia.width,
- height: rawVisualUserMedia.height,
- videoWidth: rawVisualUserMedia.videoWidth,
- videoHeight: rawVisualUserMedia.videoHeight
- });
- rawVisualUserMedia.removeEventListener && rawVisualUserMedia.removeEventListener("loadedmetadata", onLoadedMetaData);
- if (!hasEnded() && !hasInvalidDimensions()) {
- self.emit(_events.default.LOADED_META_DATA);
-
- /*
- * for android devices, we cannot call play() unless meta data has been loaded!
- * todo consider removing that if it's not the case anymore (for better performance)
- */
- if (browser.isAndroid()) {
- play();
- }
- onLoadedMetaDataReached = true;
- fireCallbacks();
- }
- }
- try {
- var videoTrack = getFirstVideoTrack(localMediaStream);
- if (!videoTrack) {
- options.debug("UserMedia: detected (but no video tracks exist");
- } else if (!videoTrack.enabled) {
- throw _videomailError.default.create("Webcam is disabled", "The video track seems to be disabled. Enable it in your system.", options);
- } else {
- var description;
- if (videoTrack.label && videoTrack.label.length > 0) {
- description = videoTrack.label;
- }
- description += " with enabled=".concat(videoTrack.enabled);
- description += ", muted=".concat(videoTrack.muted);
- description += ", remote=".concat(videoTrack.remote);
- description += ", readyState=".concat(videoTrack.readyState);
- description += ", error=".concat(videoTrack.error);
- options.debug("UserMedia: ".concat(videoTrack.kind, " detected."), description || "");
- }
-
- // very useful i think, so leave this and just use options.debug()
- var heavyDebugging = true;
- if (heavyDebugging) {
- _mediaEvents.default.forEach(function (eventName) {
- rawVisualUserMedia.addEventListener(eventName, outputEvent, false);
- });
- }
- rawVisualUserMedia.addEventListener("loadedmetadata", onLoadedMetaData);
- rawVisualUserMedia.addEventListener("play", onPlay);
-
- /*
- * experimental, not sure if this is ever needed/called? since 2 apr 2017
- * An error occurs while fetching the media data.
- * Error can be an object with the code MEDIA_ERR_NETWORK or higher.
- * networkState equals either NETWORK_EMPTY or NETWORK_IDLE, depending on when the download was aborted.
- */
- rawVisualUserMedia.addEventListener("error", function (err) {
- options.logger.warn("Caught video element error event: %s", (0, _pretty.default)(err));
- });
- setVisualStream(localMediaStream);
- play();
- } catch (exc) {
- self.emit(_events.default.ERROR, exc);
- }
- };
- this.isReady = function () {
- return Boolean(rawVisualUserMedia.src);
- };
- this.stop = function (visualStream) {
- var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
- try {
- // do not stop "too much" when going to initialize anyway
- var aboutToInitialize = params.aboutToInitialize;
- var switchingFacingMode = params.switchingFacingMode;
- if (!aboutToInitialize) {
- if (!visualStream) {
- visualStream = getVisualStream();
- }
- var tracks = getTracks(visualStream);
- var newStopApiFound = false;
- if (tracks) {
- tracks.forEach(function (track) {
- if (track.stop) {
- newStopApiFound = true;
- track.stop();
- }
- });
- }
-
- // will probably become obsolete in one year (after june 2017)
- !newStopApiFound && visualStream && visualStream.stop && visualStream.stop();
- setVisualStream(null);
- audioRecorder && audioRecorder.stop();
- audioRecorder = null;
- }
-
- /*
- * don't have to reset these states when just switching camera
- * while still recording or pausing
- */
- if (!switchingFacingMode) {
- paused = record = false;
- }
- } catch (exc) {
- self.emit(_events.default.ERROR, exc);
- }
- };
- this.createCanvas = function () {
- return (0, _hyperscript.default)("canvas", {
- width: this.getRawWidth(true),
- height: this.getRawHeight(true)
- });
- };
- this.getVideoHeight = function () {
- return rawVisualUserMedia.videoHeight;
- };
- this.getVideoWidth = function () {
- return rawVisualUserMedia.videoWidth;
- };
- this.hasVideoWidth = function () {
- return this.getVideoWidth() > 0;
- };
- this.getRawWidth = function (responsive) {
- var rawWidth = this.getVideoWidth();
- var widthDefined = options.hasDefinedWidth();
- if (widthDefined || options.hasDefinedHeight()) {
- if (!responsive && widthDefined) {
- rawWidth = options.video.width;
- } else {
- rawWidth = recorder.calculateWidth(responsive);
- }
- }
- if (responsive) {
- rawWidth = recorder.limitWidth(rawWidth);
- }
- return rawWidth;
- };
- this.getRawHeight = function (responsive) {
- var rawHeight;
- if (options.hasDefinedDimension()) {
- rawHeight = recorder.calculateHeight(responsive);
- if (rawHeight < 1) {
- throw _videomailError.default.create("Bad dimensions", "Calculated raw height cannot be less than 1!", options);
- }
- } else {
- rawHeight = this.getVideoHeight();
- if (rawHeight < 1) {
- throw _videomailError.default.create("Bad dimensions", "Raw video height from DOM element cannot be less than 1!", options);
- }
- }
- if (responsive) {
- rawHeight = recorder.limitHeight(rawHeight);
- }
- return rawHeight;
- };
- this.getRawVisuals = function () {
- return rawVisualUserMedia;
- };
- this.pause = function () {
- paused = true;
- };
- this.isPaused = function () {
- return paused;
- };
- this.resume = function () {
- paused = false;
- };
- this.record = function () {
- record = true;
- };
- this.isRecording = function () {
- return record;
- };
- this.getAudioSampleRate = function () {
- if (audioRecorder) {
- return audioRecorder.getSampleRate();
- }
- return -1;
- };
- this.getCharacteristics = function () {
- return {
- audioSampleRate: this.getAudioSampleRate(),
- muted: rawVisualUserMedia && rawVisualUserMedia.muted,
- width: rawVisualUserMedia && rawVisualUserMedia.width,
- height: rawVisualUserMedia && rawVisualUserMedia.height,
- videoWidth: rawVisualUserMedia && rawVisualUserMedia.videoWidth,
- videoHeight: rawVisualUserMedia && rawVisualUserMedia.videoHeight
- };
- };
-}
-
-},{"./../../events":113,"./../../util/audioRecorder":119,"./../../util/browser":120,"./../../util/eventEmitter":122,"./../../util/mediaEvents":124,"./../../util/pretty":125,"./../../util/videomailError":126,"@babel/runtime/helpers/interopRequireDefault":4,"hyperscript":62,"safe-json-stringify":93}],"videomail-client":[function(_dereq_,module,exports){
-"use strict";
-
-var _interopRequireDefault = _dereq_("@babel/runtime/helpers/interopRequireDefault");
-Object.defineProperty(exports, "__esModule", {
- value: true
-});
-exports.default = void 0;
-var _client = _interopRequireDefault(_dereq_("./client"));
-var _default = exports.default = _client.default;
-
-},{"./client":111,"@babel/runtime/helpers/interopRequireDefault":4}]},{},["videomail-client"])("videomail-client")
-});
diff --git a/prototype/js/videomail-client.min.js b/prototype/js/videomail-client.min.js
deleted file mode 100644
index 30cf8af3..00000000
--- a/prototype/js/videomail-client.min.js
+++ /dev/null
@@ -1,30 +0,0 @@
-!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).VideomailClient=e()}}((function(){return function e(t,n,r){function i(a,s){if(!n[a]){if(!t[a]){var u="function"==typeof require&&require;if(!s&&u)return u(a,!0);if(o)return o(a,!0);var l=new Error("Cannot find module '"+a+"'");throw l.code="MODULE_NOT_FOUND",l}var c=n[a]={exports:{}};t[a][0].call(c.exports,(function(e){return i(t[a][1][e]||e)}),c,c.exports,e,t,n,r)}return n[a].exports}for(var o="function"==typeof require&&require,a=0;ae.length)&&(t=e.length);for(var n=0,r=Array(t);n4&&void 0!==arguments[4]?arguments[4]:"passive";if(void 0!==e.addEventListener){var l=r.SupportMap[u]?Object.assign({},i,(s=!0,(a=u)in(o={})?Object.defineProperty(o,a,{value:s,enumerable:!0,configurable:!0,writable:!0}):o[a]=s,o)):i;e.addEventListener(t,n,l)}};var r=n(1)},function(e,t,n){"use strict";var r;Object.defineProperty(t,"__esModule",{value:!0}),t.SupportMap=void 0;var i=n(2);function o(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var a=(o(r={},i.PASSIVE,!1),o(r,i.CAPTURE,!1),o(r,i.ONCE,!1),r);t.SupportMap=(Object.keys(a).forEach((function(e,t){a[e]=function(e){if(a[e])return a[e];try{var t=Object.defineProperty({},e,{get:function(){a[e]=!0}});window.addEventListener("test",null,t),window.removeListener("test",null)}catch(e){}return a[e]}(e)})),a)},function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PASSIVE="passive",t.CAPTURE="capture",t.ONCE="once"}])},"object"==typeof n&&"object"==typeof t?t.exports=i():"object"==typeof n?n["add-eventlistener-with-options"]=i():r["add-eventlistener-with-options"]=i()},{}],13:[function(e,t,n){var r,i=e("events").EventEmitter,o=e("inherits"),a=e("raf"),s={requestAnimationFrame:a,cancelAnimationFrame:a.cancel};function u(){return!0}function l(e){e=e||{},this.__delay=e.delay||0,this.fixedDelta=!!e.fixedDelta,this.frameCount=0,this.deltaTime=0,this.elapsedTime=0,this.__running=!1,this.__completed=!1,this.setFPS(e.fps||1/0),this.setRequestAnimationFrameObject(e.requestAnimationFrameObject||s)}function c(e){var t,r=Date.now();if(e.__running)return e;n.running+=1,e.__running=!0,e.__lastTime=r,e.deltaTime=0,e.emit("start",e.deltaTime,0,e.frameCount);var i=e.requestAnimationFrameObject,o=function(){if(i!==e.requestAnimationFrameObject)return i=e.requestAnimationFrameObject,void e.requestAnimationFrameObject.requestAnimationFrame(o);e.__isReadyForUpdate()&&e.update(),e.__running?t=e.requestAnimationFrameObject.requestAnimationFrame(o):e.requestAnimationFrameObject.cancelAnimationFrame(t)};return e.requestAnimationFrameObject.requestAnimationFrame(o),e}for(var f in o(l,i),r={off:i.prototype.removeListener,trigger:i.prototype.emit,complete:function(){return this.stop(),this.__completed=!0,this.emit("complete",this.frameCount,this.deltaTime),this},dispose:function(){return this.stop(),this.removeAllListeners(),this},getDeltaTime:function(){return this.deltaTime},getElapsedTime:function(){return this.elapsedTime},getFPS:function(){return this.deltaTime>0?1e3/this.deltaTime:0},getFPSLimit:function(){return this.__fps},getFrameCount:function(){return this.frameCount},getRequestAnimationFrameObject:function(){return this.requestAnimationFrameObject},isRunning:function(){return this.__running},isCompleted:function(){return this.__completed},reset:function(){return this.stop(),this.__completed=!1,this.__lastTime=0,this.deltaTime=0,this.elapsedTime=0,this.frameCount=0,this.emit("reset",0,0,this.frameCount),this},setFPS:function(e){return this.__fps=e,this.__isReadyForUpdate=function(e){var t=1e3/e,n=Date.now();if(e<=0||e===1/0)return u;var r=Math.ceil(1e3/60)/2;return function(){var e=Date.now();return!(e-n0?a-4:a;for(n=0;n>16&255,l[c++]=t>>8&255,l[c++]=255&t;2===s&&(t=i[e.charCodeAt(n)]<<2|i[e.charCodeAt(n+1)]>>4,l[c++]=255&t);1===s&&(t=i[e.charCodeAt(n)]<<10|i[e.charCodeAt(n+1)]<<4|i[e.charCodeAt(n+2)]>>2,l[c++]=t>>8&255,l[c++]=255&t);return l},n.fromByteArray=function(e){for(var t,n=e.length,i=n%3,o=[],a=16383,s=0,u=n-i;su?u:s+a));1===i?(t=e[n-1],o.push(r[t>>2]+r[t<<4&63]+"==")):2===i&&(t=(e[n-2]<<8)+e[n-1],o.push(r[t>>10]+r[t>>4&63]+r[t<<2&63]+"="));return o.join("")};for(var r=[],i=[],o="undefined"!=typeof Uint8Array?Uint8Array:Array,a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0;s<64;++s)r[s]=a[s],i[a.charCodeAt(s)]=s;function u(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var n=e.indexOf("=");return-1===n&&(n=t),[n,n===t?0:4-n%4]}function l(e,t,n){for(var i,o,a=[],s=t;s>18&63]+r[o>>12&63]+r[o>>6&63]+r[63&o]);return a.join("")}i["-".charCodeAt(0)]=62,i["_".charCodeAt(0)]=63},{}],16:[function(e,t,n){},{}],17:[function(e,t,n){
-/*!
- * Cross-Browser Split 1.1.1
- * Copyright 2007-2012 Steven Levithan
- * Available under the MIT License
- * ECMAScript compliant, uniform cross-browser split method
- */
-t.exports=function(e){var t,n=String.prototype.split,r=/()??/.exec("")[1]===e;return t=function(t,i,o){if("[object RegExp]"!==Object.prototype.toString.call(i))return n.call(t,i,o);var a,s,u,l,c=[],f=(i.ignoreCase?"i":"")+(i.multiline?"m":"")+(i.extended?"x":"")+(i.sticky?"y":""),d=0;i=new RegExp(i.source,f+"g");for(t+="",r||(a=new RegExp("^"+i.source+"$(?!\\s)",f)),o=o===e?-1>>>0:o>>>0;(s=i.exec(t))&&!((u=s.index+s[0].length)>d&&(c.push(t.slice(d,s.index)),!r&&s.length>1&&s[0].replace(a,(function(){for(var t=1;t1&&s.index=o));)i.lastIndex===s.index&&i.lastIndex++;return d===t.length?!l&&i.test("")||c.push(""):c.push(t.slice(d)),c.length>o?c.slice(0,o):c},t}()},{}],18:[function(e,t,n){(function(t){(function(){
-/*!
- * The buffer module from node.js, for the browser.
- *
- * @author Feross Aboukhadijeh
- * @license MIT
- */
-"use strict";var t=e("base64-js"),r=e("ieee754");n.Buffer=a,n.SlowBuffer=function(e){+e!=e&&(e=0);return a.alloc(+e)},n.INSPECT_MAX_BYTES=50;var i=2147483647;function o(e){if(e>i)throw new RangeError('The value "'+e+'" is invalid for option "size"');var t=new Uint8Array(e);return t.__proto__=a.prototype,t}function a(e,t,n){if("number"==typeof e){if("string"==typeof t)throw new TypeError('The "string" argument must be of type string. Received type number');return l(e)}return s(e,t,n)}function s(e,t,n){if("string"==typeof e)return function(e,t){"string"==typeof t&&""!==t||(t="utf8");if(!a.isEncoding(t))throw new TypeError("Unknown encoding: "+t);var n=0|d(e,t),r=o(n),i=r.write(e,t);i!==n&&(r=r.slice(0,i));return r}(e,t);if(ArrayBuffer.isView(e))return c(e);if(null==e)throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof e);if(F(e,ArrayBuffer)||e&&F(e.buffer,ArrayBuffer))return function(e,t,n){if(t<0||e.byteLength=i)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+i.toString(16)+" bytes");return 0|e}function d(e,t){if(a.isBuffer(e))return e.length;if(ArrayBuffer.isView(e)||F(e,ArrayBuffer))return e.byteLength;if("string"!=typeof e)throw new TypeError('The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type '+typeof e);var n=e.length,r=arguments.length>2&&!0===arguments[2];if(!r&&0===n)return 0;for(var i=!1;;)switch(t){case"ascii":case"latin1":case"binary":return n;case"utf8":case"utf-8":return L(e).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*n;case"hex":return n>>>1;case"base64":return B(e).length;default:if(i)return r?-1:L(e).length;t=(""+t).toLowerCase(),i=!0}}function h(e,t,n){var r=!1;if((void 0===t||t<0)&&(t=0),t>this.length)return"";if((void 0===n||n>this.length)&&(n=this.length),n<=0)return"";if((n>>>=0)<=(t>>>=0))return"";for(e||(e="utf8");;)switch(e){case"hex":return x(this,t,n);case"utf8":case"utf-8":return S(this,t,n);case"ascii":return O(this,t,n);case"latin1":case"binary":return k(this,t,n);case"base64":return R(this,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return T(this,t,n);default:if(r)throw new TypeError("Unknown encoding: "+e);e=(e+"").toLowerCase(),r=!0}}function p(e,t,n){var r=e[t];e[t]=e[n],e[n]=r}function m(e,t,n,r,i){if(0===e.length)return-1;if("string"==typeof n?(r=n,n=0):n>2147483647?n=2147483647:n<-2147483648&&(n=-2147483648),W(n=+n)&&(n=i?0:e.length-1),n<0&&(n=e.length+n),n>=e.length){if(i)return-1;n=e.length-1}else if(n<0){if(!i)return-1;n=0}if("string"==typeof t&&(t=a.from(t,r)),a.isBuffer(t))return 0===t.length?-1:y(e,t,n,r,i);if("number"==typeof t)return t&=255,"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(e,t,n):Uint8Array.prototype.lastIndexOf.call(e,t,n):y(e,[t],n,r,i);throw new TypeError("val must be string, number or Buffer")}function y(e,t,n,r,i){var o,a=1,s=e.length,u=t.length;if(void 0!==r&&("ucs2"===(r=String(r).toLowerCase())||"ucs-2"===r||"utf16le"===r||"utf-16le"===r)){if(e.length<2||t.length<2)return-1;a=2,s/=2,u/=2,n/=2}function l(e,t){return 1===a?e[t]:e.readUInt16BE(t*a)}if(i){var c=-1;for(o=n;os&&(n=s-u),o=n;o>=0;o--){for(var f=!0,d=0;di&&(r=i):r=i;var o=t.length;r>o/2&&(r=o/2);for(var a=0;a>8,i=n%256,o.push(i),o.push(r);return o}(t,e.length-n),e,n,r)}function R(e,n,r){return 0===n&&r===e.length?t.fromByteArray(e):t.fromByteArray(e.slice(n,r))}function S(e,t,n){n=Math.min(e.length,n);for(var r=[],i=t;i239?4:l>223?3:l>191?2:1;if(i+f<=n)switch(f){case 1:l<128&&(c=l);break;case 2:128==(192&(o=e[i+1]))&&(u=(31&l)<<6|63&o)>127&&(c=u);break;case 3:o=e[i+1],a=e[i+2],128==(192&o)&&128==(192&a)&&(u=(15&l)<<12|(63&o)<<6|63&a)>2047&&(u<55296||u>57343)&&(c=u);break;case 4:o=e[i+1],a=e[i+2],s=e[i+3],128==(192&o)&&128==(192&a)&&128==(192&s)&&(u=(15&l)<<18|(63&o)<<12|(63&a)<<6|63&s)>65535&&u<1114112&&(c=u)}null===c?(c=65533,f=1):c>65535&&(c-=65536,r.push(c>>>10&1023|55296),c=56320|1023&c),r.push(c),i+=f}return function(e){var t=e.length;if(t<=A)return String.fromCharCode.apply(String,e);var n="",r=0;for(;rt&&(e+=" ... "),""},a.prototype.compare=function(e,t,n,r,i){if(F(e,Uint8Array)&&(e=a.from(e,e.offset,e.byteLength)),!a.isBuffer(e))throw new TypeError('The "target" argument must be one of type Buffer or Uint8Array. Received type '+typeof e);if(void 0===t&&(t=0),void 0===n&&(n=e?e.length:0),void 0===r&&(r=0),void 0===i&&(i=this.length),t<0||n>e.length||r<0||i>this.length)throw new RangeError("out of range index");if(r>=i&&t>=n)return 0;if(r>=i)return-1;if(t>=n)return 1;if(this===e)return 0;for(var o=(i>>>=0)-(r>>>=0),s=(n>>>=0)-(t>>>=0),u=Math.min(o,s),l=this.slice(r,i),c=e.slice(t,n),f=0;f>>=0,isFinite(n)?(n>>>=0,void 0===r&&(r="utf8")):(r=n,n=void 0)}var i=this.length-t;if((void 0===n||n>i)&&(n=i),e.length>0&&(n<0||t<0)||t>this.length)throw new RangeError("Attempt to write outside buffer bounds");r||(r="utf8");for(var o=!1;;)switch(r){case"hex":return b(this,e,t,n);case"utf8":case"utf-8":return g(this,e,t,n);case"ascii":return v(this,e,t,n);case"latin1":case"binary":return w(this,e,t,n);case"base64":return E(this,e,t,n);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return _(this,e,t,n);default:if(o)throw new TypeError("Unknown encoding: "+r);r=(""+r).toLowerCase(),o=!0}},a.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var A=4096;function O(e,t,n){var r="";n=Math.min(e.length,n);for(var i=t;ir)&&(n=r);for(var i="",o=t;on)throw new RangeError("Trying to access beyond buffer length")}function D(e,t,n,r,i,o){if(!a.isBuffer(e))throw new TypeError('"buffer" argument must be a Buffer instance');if(t>i||te.length)throw new RangeError("Index out of range")}function N(e,t,n,r,i,o){if(n+r>e.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("Index out of range")}function M(e,t,n,i,o){return t=+t,n>>>=0,o||N(e,0,n,4),r.write(e,t,n,i,23,4),n+4}function C(e,t,n,i,o){return t=+t,n>>>=0,o||N(e,0,n,8),r.write(e,t,n,i,52,8),n+8}a.prototype.slice=function(e,t){var n=this.length;(e=~~e)<0?(e+=n)<0&&(e=0):e>n&&(e=n),(t=void 0===t?n:~~t)<0?(t+=n)<0&&(t=0):t>n&&(t=n),t>>=0,t>>>=0,n||j(e,t,this.length);for(var r=this[e],i=1,o=0;++o>>=0,t>>>=0,n||j(e,t,this.length);for(var r=this[e+--t],i=1;t>0&&(i*=256);)r+=this[e+--t]*i;return r},a.prototype.readUInt8=function(e,t){return e>>>=0,t||j(e,1,this.length),this[e]},a.prototype.readUInt16LE=function(e,t){return e>>>=0,t||j(e,2,this.length),this[e]|this[e+1]<<8},a.prototype.readUInt16BE=function(e,t){return e>>>=0,t||j(e,2,this.length),this[e]<<8|this[e+1]},a.prototype.readUInt32LE=function(e,t){return e>>>=0,t||j(e,4,this.length),(this[e]|this[e+1]<<8|this[e+2]<<16)+16777216*this[e+3]},a.prototype.readUInt32BE=function(e,t){return e>>>=0,t||j(e,4,this.length),16777216*this[e]+(this[e+1]<<16|this[e+2]<<8|this[e+3])},a.prototype.readIntLE=function(e,t,n){e>>>=0,t>>>=0,n||j(e,t,this.length);for(var r=this[e],i=1,o=0;++o=(i*=128)&&(r-=Math.pow(2,8*t)),r},a.prototype.readIntBE=function(e,t,n){e>>>=0,t>>>=0,n||j(e,t,this.length);for(var r=t,i=1,o=this[e+--r];r>0&&(i*=256);)o+=this[e+--r]*i;return o>=(i*=128)&&(o-=Math.pow(2,8*t)),o},a.prototype.readInt8=function(e,t){return e>>>=0,t||j(e,1,this.length),128&this[e]?-1*(255-this[e]+1):this[e]},a.prototype.readInt16LE=function(e,t){e>>>=0,t||j(e,2,this.length);var n=this[e]|this[e+1]<<8;return 32768&n?4294901760|n:n},a.prototype.readInt16BE=function(e,t){e>>>=0,t||j(e,2,this.length);var n=this[e+1]|this[e]<<8;return 32768&n?4294901760|n:n},a.prototype.readInt32LE=function(e,t){return e>>>=0,t||j(e,4,this.length),this[e]|this[e+1]<<8|this[e+2]<<16|this[e+3]<<24},a.prototype.readInt32BE=function(e,t){return e>>>=0,t||j(e,4,this.length),this[e]<<24|this[e+1]<<16|this[e+2]<<8|this[e+3]},a.prototype.readFloatLE=function(e,t){return e>>>=0,t||j(e,4,this.length),r.read(this,e,!0,23,4)},a.prototype.readFloatBE=function(e,t){return e>>>=0,t||j(e,4,this.length),r.read(this,e,!1,23,4)},a.prototype.readDoubleLE=function(e,t){return e>>>=0,t||j(e,8,this.length),r.read(this,e,!0,52,8)},a.prototype.readDoubleBE=function(e,t){return e>>>=0,t||j(e,8,this.length),r.read(this,e,!1,52,8)},a.prototype.writeUIntLE=function(e,t,n,r){(e=+e,t>>>=0,n>>>=0,r)||D(this,e,t,n,Math.pow(2,8*n)-1,0);var i=1,o=0;for(this[t]=255&e;++o>>=0,n>>>=0,r)||D(this,e,t,n,Math.pow(2,8*n)-1,0);var i=n-1,o=1;for(this[t+i]=255&e;--i>=0&&(o*=256);)this[t+i]=e/o&255;return t+n},a.prototype.writeUInt8=function(e,t,n){return e=+e,t>>>=0,n||D(this,e,t,1,255,0),this[t]=255&e,t+1},a.prototype.writeUInt16LE=function(e,t,n){return e=+e,t>>>=0,n||D(this,e,t,2,65535,0),this[t]=255&e,this[t+1]=e>>>8,t+2},a.prototype.writeUInt16BE=function(e,t,n){return e=+e,t>>>=0,n||D(this,e,t,2,65535,0),this[t]=e>>>8,this[t+1]=255&e,t+2},a.prototype.writeUInt32LE=function(e,t,n){return e=+e,t>>>=0,n||D(this,e,t,4,4294967295,0),this[t+3]=e>>>24,this[t+2]=e>>>16,this[t+1]=e>>>8,this[t]=255&e,t+4},a.prototype.writeUInt32BE=function(e,t,n){return e=+e,t>>>=0,n||D(this,e,t,4,4294967295,0),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},a.prototype.writeIntLE=function(e,t,n,r){if(e=+e,t>>>=0,!r){var i=Math.pow(2,8*n-1);D(this,e,t,n,i-1,-i)}var o=0,a=1,s=0;for(this[t]=255&e;++o>>=0,!r){var i=Math.pow(2,8*n-1);D(this,e,t,n,i-1,-i)}var o=n-1,a=1,s=0;for(this[t+o]=255&e;--o>=0&&(a*=256);)e<0&&0===s&&0!==this[t+o+1]&&(s=1),this[t+o]=(e/a|0)-s&255;return t+n},a.prototype.writeInt8=function(e,t,n){return e=+e,t>>>=0,n||D(this,e,t,1,127,-128),e<0&&(e=255+e+1),this[t]=255&e,t+1},a.prototype.writeInt16LE=function(e,t,n){return e=+e,t>>>=0,n||D(this,e,t,2,32767,-32768),this[t]=255&e,this[t+1]=e>>>8,t+2},a.prototype.writeInt16BE=function(e,t,n){return e=+e,t>>>=0,n||D(this,e,t,2,32767,-32768),this[t]=e>>>8,this[t+1]=255&e,t+2},a.prototype.writeInt32LE=function(e,t,n){return e=+e,t>>>=0,n||D(this,e,t,4,2147483647,-2147483648),this[t]=255&e,this[t+1]=e>>>8,this[t+2]=e>>>16,this[t+3]=e>>>24,t+4},a.prototype.writeInt32BE=function(e,t,n){return e=+e,t>>>=0,n||D(this,e,t,4,2147483647,-2147483648),e<0&&(e=4294967295+e+1),this[t]=e>>>24,this[t+1]=e>>>16,this[t+2]=e>>>8,this[t+3]=255&e,t+4},a.prototype.writeFloatLE=function(e,t,n){return M(this,e,t,!0,n)},a.prototype.writeFloatBE=function(e,t,n){return M(this,e,t,!1,n)},a.prototype.writeDoubleLE=function(e,t,n){return C(this,e,t,!0,n)},a.prototype.writeDoubleBE=function(e,t,n){return C(this,e,t,!1,n)},a.prototype.copy=function(e,t,n,r){if(!a.isBuffer(e))throw new TypeError("argument should be a Buffer");if(n||(n=0),r||0===r||(r=this.length),t>=e.length&&(t=e.length),t||(t=0),r>0&&r=this.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("sourceEnd out of bounds");r>this.length&&(r=this.length),e.length-t=0;--o)e[o+t]=this[o+n];else Uint8Array.prototype.set.call(e,this.subarray(n,r),t);return i},a.prototype.fill=function(e,t,n,r){if("string"==typeof e){if("string"==typeof t?(r=t,t=0,n=this.length):"string"==typeof n&&(r=n,n=this.length),void 0!==r&&"string"!=typeof r)throw new TypeError("encoding must be a string");if("string"==typeof r&&!a.isEncoding(r))throw new TypeError("Unknown encoding: "+r);if(1===e.length){var i=e.charCodeAt(0);("utf8"===r&&i<128||"latin1"===r)&&(e=i)}}else"number"==typeof e&&(e&=255);if(t<0||this.length>>=0,n=void 0===n?this.length:n>>>0,e||(e=0),"number"==typeof e)for(o=t;o55295&&n<57344){if(!i){if(n>56319){(t-=3)>-1&&o.push(239,191,189);continue}if(a+1===r){(t-=3)>-1&&o.push(239,191,189);continue}i=n;continue}if(n<56320){(t-=3)>-1&&o.push(239,191,189),i=n;continue}n=65536+(i-55296<<10|n-56320)}else i&&(t-=3)>-1&&o.push(239,191,189);if(i=null,n<128){if((t-=1)<0)break;o.push(n)}else if(n<2048){if((t-=2)<0)break;o.push(n>>6|192,63&n|128)}else if(n<65536){if((t-=3)<0)break;o.push(n>>12|224,n>>6&63|128,63&n|128)}else{if(!(n<1114112))throw new Error("Invalid code point");if((t-=4)<0)break;o.push(n>>18|240,n>>12&63|128,n>>6&63|128,63&n|128)}}return o}function B(e){return t.toByteArray(function(e){if((e=(e=e.split("=")[0]).trim().replace(I,"")).length<2)return"";for(;e.length%4!=0;)e+="=";return e}(e))}function U(e,t,n,r){for(var i=0;i=t.length||i>=e.length);++i)t[i+n]=e[i];return i}function F(e,t){return e instanceof t||null!=e&&null!=e.constructor&&null!=e.constructor.name&&e.constructor.name===t.name}function W(e){return e!=e}}).call(this)}).call(this,e("buffer").Buffer)},{"base64-js":15,buffer:18,ieee754:63}],19:[function(e,t,n){"use strict";var r=e("get-intrinsic"),i=e("./"),o=i(r("String.prototype.indexOf"));t.exports=function(e,t){var n=r(e,!!t);return"function"==typeof n&&o(e,".prototype.")>-1?i(n):n}},{"./":20,"get-intrinsic":50}],20:[function(e,t,n){"use strict";var r=e("function-bind"),i=e("get-intrinsic"),o=e("set-function-length"),a=e("es-errors/type"),s=i("%Function.prototype.apply%"),u=i("%Function.prototype.call%"),l=i("%Reflect.apply%",!0)||r.call(u,s),c=e("es-define-property"),f=i("%Math.max%");t.exports=function(e){if("function"!=typeof e)throw new a("a function is required");var t=l(r,u,arguments);return o(t,1+f(0,e.length-(arguments.length-1)),!0)};var d=function(){return l(r,s,arguments)};c?c(t.exports,"apply",{value:d}):t.exports.apply=d},{"es-define-property":35,"es-errors/type":41,"function-bind":48,"get-intrinsic":50,"set-function-length":94}],21:[function(e,t,n){function r(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var i,o=r(e("typedarray-to-buffer")),a="undefined"!=typeof document&&"function"==typeof document.createElement,s=a?["webp","jpeg"]:["png"],u=function(){function e(e,t,n){if(void 0===t&&(t=s),void 0===n&&(n=.5),this.quality=void 0,this.types=void 0,this.canvas=void 0,t.length>2)throw new Error("Too many image types are specified!");this.canvas=e,this.quality=n,this.types=t}var t=e.prototype;return t.composeMimeType=function(e){var t;return this.types[e]&&(t="image/"+this.types[e]),t},t.isMatch=function(e,t){return e.match(t)},t.getTestCanvas=function(){var e;return a?(e=document.createElement("canvas")).width=e.height=1:e=this.canvas,e},t.canvasSupportsMimeType=function(e){try{var t=this.getTestCanvas(),n=t.toDataURL&&t.toDataURL(e);return this.isMatch(n,e)}catch(e){return!1}},t.figureMimeType=function(){var e=this.composeMimeType(0);return e&&this.canvasSupportsMimeType(e)||(this.types[1]?(e=this.composeMimeType(1))&&!this.canvasSupportsMimeType(e)&&(e=void 0):e=void 0),e},t.uriToBuffer=function(t){var n,r=t.split(",")[1];if(!r)throw new Error("Empty uri string given!");if(!(n=a?window.atob(r):null==e.atob?void 0:e.atob(r)))throw new Error("Byte are empty, something within atob went wrong.");for(var i=new Uint8Array(n.length),s=0,u=n.length;s-1||(t.push(e),l(t))}function a(e){var t=u(),n=r(t,e);-1!==n&&(t.splice(n,1),l(t))}function s(e){return r(u(),e)>-1}function u(){return function(e,t){for(var n=[],r=0;r3&&"boolean"!=typeof arguments[3]&&null!==arguments[3])throw new o("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&"boolean"!=typeof arguments[4]&&null!==arguments[4])throw new o("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&"boolean"!=typeof arguments[5]&&null!==arguments[5])throw new o("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&"boolean"!=typeof arguments[6])throw new o("`loose`, if provided, must be a boolean");var s=arguments.length>3?arguments[3]:null,u=arguments.length>4?arguments[4]:null,l=arguments.length>5?arguments[5]:null,c=arguments.length>6&&arguments[6],f=!!a&&a(e,t);if(r)r(e,t,{configurable:null===l&&f?f.configurable:!l,enumerable:null===s&&f?f.enumerable:!s,value:n,writable:null===u&&f?f.writable:!u});else{if(!c&&(s||u||l))throw new i("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.");e[t]=n}}},{"es-define-property":35,"es-errors/syntax":40,"es-errors/type":41,gopd:54}],29:[function(e,t,n){"use strict";t.exports=function(){for(var e=0;e0&&a.length>i&&!a.warned){a.warned=!0;var u=new Error("Possible EventEmitter memory leak detected. "+a.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");u.name="MaxListenersExceededWarning",u.emitter=e,u.type=t,u.count=a.length,s=u,console&&console.warn&&console.warn(s)}return e}function d(){if(!this.fired)return this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0===arguments.length?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function h(e,t,n){var r={fired:!1,wrapFn:void 0,target:e,type:t,listener:n},i=d.bind(r);return i.listener=n,r.wrapFn=i,i}function p(e,t,n){var r=e._events;if(void 0===r)return[];var i=r[t];return void 0===i?[]:"function"==typeof i?n?[i.listener||i]:[i]:n?function(e){for(var t=new Array(e.length),n=0;n0&&(a=t[0]),a instanceof Error)throw a;var s=new Error("Unhandled error."+(a?" ("+a.message+")":""));throw s.context=a,s}var u=i[e];if(void 0===u)return!1;if("function"==typeof u)o(u,this,t);else{var l=u.length,c=y(u,l);for(n=0;n=0;o--)if(n[o]===t||n[o].listener===t){a=n[o].listener,i=o;break}if(i<0)return this;0===i?n.shift():function(e,t){for(;t+1=0;r--)this.removeListener(e,t[r]);return this},s.prototype.listeners=function(e){return p(this,e,!0)},s.prototype.rawListeners=function(e){return p(this,e,!1)},s.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):m.call(e,t)},s.prototype.listenerCount=m,s.prototype.eventNames=function(){return this._eventsCount>0?r(this._events):[]}},{}],44:[function(e,t,n){t.exports=u,u.default=u,u.stable=d,u.stableStringify=d;var r="[...]",i="[Circular]",o=[],a=[];function s(){return{depthLimit:Number.MAX_SAFE_INTEGER,edgesLimit:Number.MAX_SAFE_INTEGER}}function u(e,t,n,r){var i;void 0===r&&(r=s()),c(e,"",0,[],void 0,0,r);try{i=0===a.length?JSON.stringify(e,t,n):JSON.stringify(e,p(t),n)}catch(e){return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]")}finally{for(;0!==o.length;){var u=o.pop();4===u.length?Object.defineProperty(u[0],u[1],u[3]):u[0][u[1]]=u[2]}}return i}function l(e,t,n,r){var i=Object.getOwnPropertyDescriptor(r,n);void 0!==i.get?i.configurable?(Object.defineProperty(r,n,{value:e}),o.push([r,n,t,i])):a.push([t,n,e]):(r[n]=e,o.push([r,n,t]))}function c(e,t,n,o,a,s,u){var f;if(s+=1,"object"==typeof e&&null!==e){for(f=0;fu.depthLimit)return void l(r,e,t,a);if(void 0!==u.edgesLimit&&n+1>u.edgesLimit)return void l(r,e,t,a);if(o.push(e),Array.isArray(e))for(f=0;ft?1:0}function d(e,t,n,r){void 0===r&&(r=s());var i,u=h(e,"",0,[],void 0,0,r)||e;try{i=0===a.length?JSON.stringify(u,t,n):JSON.stringify(u,p(t),n)}catch(e){return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]")}finally{for(;0!==o.length;){var l=o.pop();4===l.length?Object.defineProperty(l[0],l[1],l[3]):l[0][l[1]]=l[2]}}return i}function h(e,t,n,a,s,u,c){var d;if(u+=1,"object"==typeof e&&null!==e){for(d=0;dc.depthLimit)return void l(r,e,t,s);if(void 0!==c.edgesLimit&&n+1>c.edgesLimit)return void l(r,e,t,s);if(a.push(e),Array.isArray(e))for(d=0;d0)for(var r=0;r
- * @license BSD-3-Clause
- * @version 10.1.6
- */
-"use strict";const r="bits",i="bytes",o="",a="jedec",s="round",u="string",l={symbol:{iec:{bits:["bit","Kibit","Mibit","Gibit","Tibit","Pibit","Eibit","Zibit","Yibit"],bytes:["B","KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"]},jedec:{bits:["bit","Kbit","Mbit","Gbit","Tbit","Pbit","Ebit","Zbit","Ybit"],bytes:["B","KB","MB","GB","TB","PB","EB","ZB","YB"]}},fullform:{iec:["","kibi","mebi","gibi","tebi","pebi","exbi","zebi","yobi"],jedec:["","kilo","mega","giga","tera","peta","exa","zetta","yotta"]}};function c(e,{bits:t=!1,pad:n=!1,base:c=-1,round:f=2,locale:d="",localeOptions:h={},separator:p="",spacer:m=" ",symbols:y={},standard:b="",output:g=u,fullform:v=!1,fullforms:w=[],exponent:E=-1,roundingMethod:_=s,precision:R=0}={}){let S=E,A=Number(e),O=[],k=0,x=o;"si"===b?(c=10,b=a):"iec"===b||b===a?c=2:2===c?b="iec":(c=10,b=a);const T=10===c?1e3:1024,j=!0===v,D=A<0,N=Math[_];if("bigint"!=typeof e&&isNaN(e))throw new TypeError("Invalid number");if("function"!=typeof N)throw new TypeError("Invalid rounding method");if(D&&(A=-A),(-1===S||isNaN(S))&&(S=Math.floor(Math.log(A)/Math.log(T)),S<0&&(S=0)),S>8&&(R>0&&(R+=8-S),S=8),"exponent"===g)return S;if(0===A)O[0]=0,x=O[1]=l.symbol[b][t?r:i][S];else{k=A/(2===c?Math.pow(2,10*S):Math.pow(1e3,S)),t&&(k*=8,k>=T&&S<8&&(k/=T,S++));const e=Math.pow(10,S>0?f:0);O[0]=N(k*e)/e,O[0]===T&&S<8&&-1===E&&(O[0]=1,S++),x=O[1]=10===c&&1===S?t?"kbit":"kB":l.symbol[b][t?r:i][S]}if(D&&(O[0]=-O[0]),R>0&&(O[0]=O[0].toPrecision(R)),O[1]=y[O[1]]||O[1],!0===d?O[0]=O[0].toLocaleString():d.length>0?O[0]=O[0].toLocaleString(d,h):p.length>0&&(O[0]=O[0].toString().replace(".",p)),n&&f>0){const e=O[0].toString(),t=p||(e.match(/(\D)/g)||[]).pop()||".",n=e.toString().split(t),r=n[1]||o,i=r.length,a=f-i;O[0]=`${n[0]}${t}${r.padEnd(i+a,"0")}`}return j&&(O[1]=w[S]?w[S]:l.fullform[b][S]+(t?"bit":"byte")+(1===O[0]?o:"s")),"array"===g?O:"object"===g?{value:O[0],symbol:O[1],exponent:S,unit:x}:O.join(m)}n.filesize=c,n.partial=function({bits:e=!1,pad:t=!1,base:n=-1,round:r=2,locale:i="",localeOptions:o={},separator:a="",spacer:l=" ",symbols:f={},standard:d="",output:h=u,fullform:p=!1,fullforms:m=[],exponent:y=-1,roundingMethod:b=s,precision:g=0}={}){return s=>c(s,{bits:e,pad:t,base:n,round:r,locale:i,localeOptions:o,separator:a,spacer:l,symbols:f,standard:d,output:h,fullform:p,fullforms:m,exponent:y,roundingMethod:b,precision:g})}},{}],46:[function(e,t,n){t.exports=function(e){var t=Array.prototype.slice.call(arguments,1);return t.length&&(e=e.replace(/(%?)(%([jds]))/g,(function(e,n,r,i){var o=t.shift();switch(i){case"s":o=""+o;break;case"d":o=Number(o);break;case"j":o=JSON.stringify(o)}return n?(t.unshift(o),e):o}))),t.length&&(e+=" "+t.join(" ")),""+(e=e.replace(/%{2,2}/g,"%"))}},{}],47:[function(e,t,n){"use strict";var r=Object.prototype.toString,i=Math.max,o=function(e,t){for(var n=[],r=0;r0?a:null}function d(e,t){var n=null,r=e.type;if("select-one"===r)return e.options.length&&(n=e.options[e.selectedIndex].value),n;if("select-multiple"===r){n=[];for(var i=0,o=e.options.length;i1&&"boolean"!=typeof t)throw new l('"allowMissing" argument must be a boolean');if(null===D(/^%?[^%]*%?$/,e))throw new u("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var n=function(e){var t=j(e,0,1),n=j(e,-1);if("%"===t&&"%"!==n)throw new u("invalid intrinsic syntax, expected closing `%`");if("%"===n&&"%"!==t)throw new u("invalid intrinsic syntax, expected opening `%`");var r=[];return T(e,N,(function(e,t,n,i){r[r.length]=n?T(i,M,"$1"):t||e})),r}(e),r=n.length>0?n[0]:"",i=C("%"+r+"%",t),o=i.name,a=i.value,s=!1,c=i.alias;c&&(r=c[0],x(n,k([0,1],c)));for(var f=1,d=!0;f=n.length){var b=h(a,p);a=(d=!!b)&&"get"in b&&!("originalValue"in b.get)?b.get:a[p]}else d=O(a,p),a=a[p];d&&!s&&(E[o]=a)}}return a}},{"es-errors":37,"es-errors/eval":36,"es-errors/range":38,"es-errors/ref":39,"es-errors/syntax":40,"es-errors/type":41,"es-errors/uri":42,"function-bind":48,"has-proto":56,"has-symbols":57,hasown:59}],51:[function(e,t,n){t.exports=function(){var e=[];return{broadcast:function(t){for(var n=0;n=2?"s":"")}),"mois",(function(e){return"semaine"+(e>=2?"s":"")}),(function(e){return"jour"+(e>=2?"s":"")}),(function(e){return"heure"+(e>=2?"s":"")}),(function(e){return"minute"+(e>=2?"s":"")}),(function(e){return"seconde"+(e>=2?"s":"")}),(function(e){return"milliseconde"+(e>=2?"s":"")}),","),gr:r,he:o((function(e){return 1===e?"שנה":"שנים"}),(function(e){return 1===e?"חודש":"חודשים"}),(function(e){return 1===e?"שבוע":"שבועות"}),(function(e){return 1===e?"יום":"ימים"}),(function(e){return 1===e?"שעה":"שעות"}),(function(e){return 1===e?"דקה":"דקות"}),(function(e){return 1===e?"שניה":"שניות"}),(function(e){return 1===e?"מילישנייה":"מילישניות"})),hr:o((function(e){return e%10==2||e%10==3||e%10==4?"godine":"godina"}),(function(e){return 1===e?"mjesec":2===e||3===e||4===e?"mjeseca":"mjeseci"}),(function(e){return e%10==1&&11!==e?"tjedan":"tjedna"}),(function(e){return 1===e?"dan":"dana"}),(function(e){return 1===e?"sat":2===e||3===e||4===e?"sata":"sati"}),(function(e){var t=e%10;return 2!==t&&3!==t&&4!==t||!(e<10||e>14)?"minuta":"minute"}),(function(e){var t=e%10;return 5===t||Math.floor(e)===e&&e>=10&&e<=19?"sekundi":1===t?"sekunda":2===t||3===t||4===t?"sekunde":"sekundi"}),(function(e){return 1===e?"milisekunda":e%10==2||e%10==3||e%10==4?"milisekunde":"milisekundi"}),","),hi:o("साल",(function(e){return 1===e?"महीना":"महीने"}),(function(e){return 1===e?"हफ़्ता":"हफ्ते"}),"दिन",(function(e){return 1===e?"घंटा":"घंटे"}),"मिनट","सेकंड","मिलीसेकंड"),hu:o("év","hónap","hét","nap","óra","perc","másodperc","ezredmásodperc",","),id:o("tahun","bulan","minggu","hari","jam","menit","detik","milidetik"),is:o("ár",(function(e){return"mánuð"+(1===e?"ur":"ir")}),(function(e){return"vik"+(1===e?"a":"ur")}),(function(e){return"dag"+(1===e?"ur":"ar")}),(function(e){return"klukkutím"+(1===e?"i":"ar")}),(function(e){return"mínút"+(1===e?"a":"ur")}),(function(e){return"sekúnd"+(1===e?"a":"ur")}),(function(e){return"millisekúnd"+(1===e?"a":"ur")})),it:o((function(e){return"ann"+(1===e?"o":"i")}),(function(e){return"mes"+(1===e?"e":"i")}),(function(e){return"settiman"+(1===e?"a":"e")}),(function(e){return"giorn"+(1===e?"o":"i")}),(function(e){return"or"+(1===e?"a":"e")}),(function(e){return"minut"+(1===e?"o":"i")}),(function(e){return"second"+(1===e?"o":"i")}),(function(e){return"millisecond"+(1===e?"o":"i")}),","),ja:o("年","ヶ月","週","日","時間","分","秒","ミリ秒"),km:o("ឆ្នាំ","ខែ","សប្តាហ៍","ថ្ងៃ","ម៉ោង","នាទី","វិនាទី","មិល្លីវិនាទី"),kn:o((function(e){return 1===e?"ವರ್ಷ":"ವರ್ಷಗಳು"}),(function(e){return 1===e?"ತಿಂಗಳು":"ತಿಂಗಳುಗಳು"}),(function(e){return 1===e?"ವಾರ":"ವಾರಗಳು"}),(function(e){return 1===e?"ದಿನ":"ದಿನಗಳು"}),(function(e){return 1===e?"ಗಂಟೆ":"ಗಂಟೆಗಳು"}),(function(e){return 1===e?"ನಿಮಿಷ":"ನಿಮಿಷಗಳು"}),(function(e){return 1===e?"ಸೆಕೆಂಡ್":"ಸೆಕೆಂಡುಗಳು"}),(function(e){return 1===e?"ಮಿಲಿಸೆಕೆಂಡ್":"ಮಿಲಿಸೆಕೆಂಡುಗಳು"})),ko:o("년","개월","주일","일","시간","분","초","밀리 초"),ku:o("sal","meh","hefte","roj","seet","deqe","saniye","mîlîçirk",","),lo:o("ປີ","ເດືອນ","ອາທິດ","ມື້","ຊົ່ວໂມງ","ນາທີ","ວິນາທີ","ມິນລິວິນາທີ",","),lt:o((function(e){return e%10==0||e%100>=10&&e%100<=20?"metų":"metai"}),(function(e){return["mėnuo","mėnesiai","mėnesių"][c(e)]}),(function(e){return["savaitė","savaitės","savaičių"][c(e)]}),(function(e){return["diena","dienos","dienų"][c(e)]}),(function(e){return["valanda","valandos","valandų"][c(e)]}),(function(e){return["minutė","minutės","minučių"][c(e)]}),(function(e){return["sekundė","sekundės","sekundžių"][c(e)]}),(function(e){return["milisekundė","milisekundės","milisekundžių"][c(e)]}),","),lv:o((function(e){return f(e)?"gads":"gadi"}),(function(e){return f(e)?"mēnesis":"mēneši"}),(function(e){return f(e)?"nedēļa":"nedēļas"}),(function(e){return f(e)?"diena":"dienas"}),(function(e){return f(e)?"stunda":"stundas"}),(function(e){return f(e)?"minūte":"minūtes"}),(function(e){return f(e)?"sekunde":"sekundes"}),(function(e){return f(e)?"milisekunde":"milisekundes"}),","),mk:o((function(e){return 1===e?"година":"години"}),(function(e){return 1===e?"месец":"месеци"}),(function(e){return 1===e?"недела":"недели"}),(function(e){return 1===e?"ден":"дена"}),(function(e){return 1===e?"час":"часа"}),(function(e){return 1===e?"минута":"минути"}),(function(e){return 1===e?"секунда":"секунди"}),(function(e){return 1===e?"милисекунда":"милисекунди"}),","),mn:o("жил","сар","долоо хоног","өдөр","цаг","минут","секунд","миллисекунд"),mr:o((function(e){return 1===e?"वर्ष":"वर्षे"}),(function(e){return 1===e?"महिना":"महिने"}),(function(e){return 1===e?"आठवडा":"आठवडे"}),"दिवस","तास",(function(e){return 1===e?"मिनिट":"मिनिटे"}),"सेकंद","मिलिसेकंद"),ms:o("tahun","bulan","minggu","hari","jam","minit","saat","milisaat"),nl:o("jaar",(function(e){return 1===e?"maand":"maanden"}),(function(e){return 1===e?"week":"weken"}),(function(e){return 1===e?"dag":"dagen"}),"uur",(function(e){return 1===e?"minuut":"minuten"}),(function(e){return 1===e?"seconde":"seconden"}),(function(e){return 1===e?"milliseconde":"milliseconden"}),","),no:o("år",(function(e){return"måned"+(1===e?"":"er")}),(function(e){return"uke"+(1===e?"":"r")}),(function(e){return"dag"+(1===e?"":"er")}),(function(e){return"time"+(1===e?"":"r")}),(function(e){return"minutt"+(1===e?"":"er")}),(function(e){return"sekund"+(1===e?"":"er")}),(function(e){return"millisekund"+(1===e?"":"er")}),","),pl:o((function(e){return["rok","roku","lata","lat"][s(e)]}),(function(e){return["miesiąc","miesiąca","miesiące","miesięcy"][s(e)]}),(function(e){return["tydzień","tygodnia","tygodnie","tygodni"][s(e)]}),(function(e){return["dzień","dnia","dni","dni"][s(e)]}),(function(e){return["godzina","godziny","godziny","godzin"][s(e)]}),(function(e){return["minuta","minuty","minuty","minut"][s(e)]}),(function(e){return["sekunda","sekundy","sekundy","sekund"][s(e)]}),(function(e){return["milisekunda","milisekundy","milisekundy","milisekund"][s(e)]}),","),pt:o((function(e){return"ano"+(1===e?"":"s")}),(function(e){return 1===e?"mês":"meses"}),(function(e){return"semana"+(1===e?"":"s")}),(function(e){return"dia"+(1===e?"":"s")}),(function(e){return"hora"+(1===e?"":"s")}),(function(e){return"minuto"+(1===e?"":"s")}),(function(e){return"segundo"+(1===e?"":"s")}),(function(e){return"milissegundo"+(1===e?"":"s")}),","),ro:o((function(e){return 1===e?"an":"ani"}),(function(e){return 1===e?"lună":"luni"}),(function(e){return 1===e?"săptămână":"săptămâni"}),(function(e){return 1===e?"zi":"zile"}),(function(e){return 1===e?"oră":"ore"}),(function(e){return 1===e?"minut":"minute"}),(function(e){return 1===e?"secundă":"secunde"}),(function(e){return 1===e?"milisecundă":"milisecunde"}),","),ru:o((function(e){return["лет","год","года"][u(e)]}),(function(e){return["месяцев","месяц","месяца"][u(e)]}),(function(e){return["недель","неделя","недели"][u(e)]}),(function(e){return["дней","день","дня"][u(e)]}),(function(e){return["часов","час","часа"][u(e)]}),(function(e){return["минут","минута","минуты"][u(e)]}),(function(e){return["секунд","секунда","секунды"][u(e)]}),(function(e){return["миллисекунд","миллисекунда","миллисекунды"][u(e)]}),","),sq:o((function(e){return 1===e?"vit":"vjet"}),"muaj","javë","ditë","orë",(function(e){return"minut"+(1===e?"ë":"a")}),(function(e){return"sekond"+(1===e?"ë":"a")}),(function(e){return"milisekond"+(1===e?"ë":"a")}),","),sr:o((function(e){return["години","година","године"][u(e)]}),(function(e){return["месеци","месец","месеца"][u(e)]}),(function(e){return["недељи","недеља","недеље"][u(e)]}),(function(e){return["дани","дан","дана"][u(e)]}),(function(e){return["сати","сат","сата"][u(e)]}),(function(e){return["минута","минут","минута"][u(e)]}),(function(e){return["секунди","секунда","секунде"][u(e)]}),(function(e){return["милисекунди","милисекунда","милисекунде"][u(e)]}),","),ta:o((function(e){return 1===e?"வருடம்":"ஆண்டுகள்"}),(function(e){return 1===e?"மாதம்":"மாதங்கள்"}),(function(e){return 1===e?"வாரம்":"வாரங்கள்"}),(function(e){return 1===e?"நாள்":"நாட்கள்"}),(function(e){return 1===e?"மணி":"மணிநேரம்"}),(function(e){return"நிமிட"+(1===e?"ம்":"ங்கள்")}),(function(e){return"வினாடி"+(1===e?"":"கள்")}),(function(e){return"மில்லி விநாடி"+(1===e?"":"கள்")})),te:o((function(e){return"సంవత్స"+(1===e?"రం":"రాల")}),(function(e){return"నెల"+(1===e?"":"ల")}),(function(e){return 1===e?"వారం":"వారాలు"}),(function(e){return"రోజు"+(1===e?"":"లు")}),(function(e){return"గంట"+(1===e?"":"లు")}),(function(e){return 1===e?"నిమిషం":"నిమిషాలు"}),(function(e){return 1===e?"సెకను":"సెకన్లు"}),(function(e){return 1===e?"మిల్లీసెకన్":"మిల్లీసెకన్లు"})),uk:o((function(e){return["років","рік","роки"][u(e)]}),(function(e){return["місяців","місяць","місяці"][u(e)]}),(function(e){return["тижнів","тиждень","тижні"][u(e)]}),(function(e){return["днів","день","дні"][u(e)]}),(function(e){return["годин","година","години"][u(e)]}),(function(e){return["хвилин","хвилина","хвилини"][u(e)]}),(function(e){return["секунд","секунда","секунди"][u(e)]}),(function(e){return["мілісекунд","мілісекунда","мілісекунди"][u(e)]}),","),ur:o("سال",(function(e){return 1===e?"مہینہ":"مہینے"}),(function(e){return 1===e?"ہفتہ":"ہفتے"}),"دن",(function(e){return 1===e?"گھنٹہ":"گھنٹے"}),"منٹ","سیکنڈ","ملی سیکنڈ"),sk:o((function(e){return["rok","roky","roky","rokov"][l(e)]}),(function(e){return["mesiac","mesiace","mesiace","mesiacov"][l(e)]}),(function(e){return["týždeň","týždne","týždne","týždňov"][l(e)]}),(function(e){return["deň","dni","dni","dní"][l(e)]}),(function(e){return["hodina","hodiny","hodiny","hodín"][l(e)]}),(function(e){return["minúta","minúty","minúty","minút"][l(e)]}),(function(e){return["sekunda","sekundy","sekundy","sekúnd"][l(e)]}),(function(e){return["milisekunda","milisekundy","milisekundy","milisekúnd"][l(e)]}),","),sl:o((function(e){return e%10==1?"leto":e%100==2?"leti":e%100==3||e%100==4||Math.floor(e)!==e&&e%100<=5?"leta":"let"}),(function(e){return e%10==1?"mesec":e%100==2||Math.floor(e)!==e&&e%100<=5?"meseca":e%10==3||e%10==4?"mesece":"mesecev"}),(function(e){return e%10==1?"teden":e%10==2||Math.floor(e)!==e&&e%100<=4?"tedna":e%10==3||e%10==4?"tedne":"tednov"}),(function(e){return e%100==1?"dan":"dni"}),(function(e){return e%10==1?"ura":e%100==2?"uri":e%10==3||e%10==4||Math.floor(e)!==e?"ure":"ur"}),(function(e){return e%10==1?"minuta":e%10==2?"minuti":e%10==3||e%10==4||Math.floor(e)!==e&&e%100<=4?"minute":"minut"}),(function(e){return e%10==1?"sekunda":e%100==2?"sekundi":e%100==3||e%100==4||Math.floor(e)!==e?"sekunde":"sekund"}),(function(e){return e%10==1?"milisekunda":e%100==2?"milisekundi":e%100==3||e%100==4||Math.floor(e)!==e?"milisekunde":"milisekund"}),","),sv:o("år",(function(e){return"månad"+(1===e?"":"er")}),(function(e){return"veck"+(1===e?"a":"or")}),(function(e){return"dag"+(1===e?"":"ar")}),(function(e){return"timm"+(1===e?"e":"ar")}),(function(e){return"minut"+(1===e?"":"er")}),(function(e){return"sekund"+(1===e?"":"er")}),(function(e){return"millisekund"+(1===e?"":"er")}),","),sw:e(o((function(e){return 1===e?"mwaka":"miaka"}),(function(e){return 1===e?"mwezi":"miezi"}),"wiki",(function(e){return 1===e?"siku":"masiku"}),(function(e){return 1===e?"saa":"masaa"}),"dakika","sekunde","milisekunde"),{_numberFirst:!0}),tr:o("yıl","ay","hafta","gün","saat","dakika","saniye","milisaniye",","),th:o("ปี","เดือน","สัปดาห์","วัน","ชั่วโมง","นาที","วินาที","มิลลิวินาที"),uz:o("yil","oy","hafta","kun","soat","minut","sekund","millisekund"),uz_CYR:o("йил","ой","ҳафта","кун","соат","минут","секунд","миллисекунд"),vi:o("năm","tháng","tuần","ngày","giờ","phút","giây","mili giây",","),zh_CN:o("年","个月","周","天","小时","分钟","秒","毫秒"),zh_TW:o("年","個月","周","天","小時","分鐘","秒","毫秒")};function o(e,t,n,r,i,o,a,s,u){var l={y:e,mo:t,w:n,d:r,h:i,m:o,s:a,ms:s};return void 0!==u&&(l.decimal=u),l}function a(e){return 2===e?1:e>2&&e<11?2:0}function s(e){return 1===e?0:Math.floor(e)!==e?1:e%10>=2&&e%10<=4&&!(e%100>10&&e%100<20)?2:3}function u(e){return Math.floor(e)!==e?2:e%100>=5&&e%100<=20||e%10>=5&&e%10<=9||e%10==0?0:e%10==1?1:e>1?2:0}function l(e){return 1===e?0:Math.floor(e)!==e?1:e%10>=2&&e%10<=4&&e%100<10?2:3}function c(e){return 1===e||e%10==1&&e%100>20?0:Math.floor(e)!==e||e%10>=2&&e%100>20||e%10>=2&&e%100<10?1:2}function f(e){return e%10==1&&e%100!=11}function d(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function h(e,t,n){var r,i,o,a=e.unitName,s=e.unitCount,u=n.spacer,l=n.maxDecimalPoints;r=d(n,"decimal")?n.decimal:d(t,"decimal")?t.decimal:".","digitReplacements"in n?i=n.digitReplacements:"_digitReplacements"in t&&(i=t._digitReplacements);var c=(void 0===l?s:Math.floor(s*Math.pow(10,l))/Math.pow(10,l)).toString();if(t._hideCountIf2&&2===s)o="",u="";else if(i){o="";for(var f=0;f=0;r--)if(0!==(i=l[n=a[r]])){var m=Math.round(i);if(l[n]=m,0===r)break;var y=a[r-1],b=s[y],g=Math.floor(m*s[n]/b);if(!g)break;l[y]+=g,l[n]=0}}var v=[];for(r=0;r */
-n.read=function(e,t,n,r,i){var o,a,s=8*i-r-1,u=(1<>1,c=-7,f=n?i-1:0,d=n?-1:1,h=e[t+f];for(f+=d,o=h&(1<<-c)-1,h>>=-c,c+=s;c>0;o=256*o+e[t+f],f+=d,c-=8);for(a=o&(1<<-c)-1,o>>=-c,c+=r;c>0;a=256*a+e[t+f],f+=d,c-=8);if(0===o)o=1-l;else{if(o===u)return a?NaN:1/0*(h?-1:1);a+=Math.pow(2,r),o-=l}return(h?-1:1)*a*Math.pow(2,o-r)},n.write=function(e,t,n,r,i,o){var a,s,u,l=8*o-i-1,c=(1<>1,d=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,h=r?0:o-1,p=r?1:-1,m=t<0||0===t&&1/t<0?1:0;for(t=Math.abs(t),isNaN(t)||t===1/0?(s=isNaN(t)?1:0,a=c):(a=Math.floor(Math.log(t)/Math.LN2),t*(u=Math.pow(2,-a))<1&&(a--,u*=2),(t+=a+f>=1?d/u:d*Math.pow(2,1-f))*u>=2&&(a++,u/=2),a+f>=c?(s=0,a=c):a+f>=1?(s=(t*u-1)*Math.pow(2,i),a+=f):(s=t*Math.pow(2,f-1)*Math.pow(2,i),a=0));i>=8;e[n+h]=255&s,h+=p,s/=256,i-=8);for(a=a<0;e[n+h]=255&a,h+=p,a/=256,l-=8);e[n+h-p]|=128*m}},{}],64:[function(e,t,n){var r=[].indexOf;t.exports=function(e,t){if(r)return e.indexOf(t);for(var n=0;n-1e3&&e<1e3||_.call(/e/,t))return t;var n=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if("number"==typeof e){var r=e<0?-O(-e):O(e);if(r!==e){var i=String(r),o=g.call(t,i.length+1);return v.call(i,n,"$&_")+"."+v.call(v.call(o,/([0-9]{3})/g,"$&_"),/_$/,"")}}return v.call(t,n,"$&_")}var I=e("./util.inspect"),P=I.custom,L=q(P)?P:null;function B(e,t,n){var r="double"===(n.quoteStyle||t)?'"':"'";return r+e+r}function U(e){return v.call(String(e),/"/g,""")}function F(e){return!("[object Array]"!==z(e)||D&&"object"==typeof e&&D in e)}function W(e){return!("[object RegExp]"!==z(e)||D&&"object"==typeof e&&D in e)}function q(e){if(j)return e&&"object"==typeof e&&e instanceof Symbol;if("symbol"==typeof e)return!0;if(!e||"object"!=typeof e||!T)return!1;try{return T.call(e),!0}catch(e){}return!1}t.exports=function e(t,r,i,s){var u=r||{};if(V(u,"quoteStyle")&&"single"!==u.quoteStyle&&"double"!==u.quoteStyle)throw new TypeError('option "quoteStyle" must be "single" or "double"');if(V(u,"maxStringLength")&&("number"==typeof u.maxStringLength?u.maxStringLength<0&&u.maxStringLength!==1/0:null!==u.maxStringLength))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var m=!V(u,"customInspect")||u.customInspect;if("boolean"!=typeof m&&"symbol"!==m)throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(V(u,"indent")&&null!==u.indent&&"\t"!==u.indent&&!(parseInt(u.indent,10)===u.indent&&u.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(V(u,"numericSeparator")&&"boolean"!=typeof u.numericSeparator)throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var w=u.numericSeparator;if(void 0===t)return"undefined";if(null===t)return"null";if("boolean"==typeof t)return t?"true":"false";if("string"==typeof t)return $(t,u);if("number"==typeof t){if(0===t)return 1/0/t>0?"0":"-0";var _=String(t);return w?C(t,_):_}if("bigint"==typeof t){var O=String(t)+"n";return w?C(t,O):O}var x=void 0===u.depth?5:u.depth;if(void 0===i&&(i=0),i>=x&&x>0&&"object"==typeof t)return F(t)?"[Array]":"[Object]";var P=function(e,t){var n;if("\t"===e.indent)n="\t";else{if(!("number"==typeof e.indent&&e.indent>0))return null;n=S.call(Array(e.indent+1)," ")}return{base:n,prev:S.call(Array(t+1),n)}}(u,i);if(void 0===s)s=[];else if(G(s,t)>=0)return"[Circular]";function H(t,n,r){if(n&&(s=A.call(s)).push(n),r){var o={depth:u.depth};return V(u,"quoteStyle")&&(o.quoteStyle=u.quoteStyle),e(t,o,i+1,s)}return e(t,u,i+1,s)}if("function"==typeof t&&!W(t)){var Y=function(e){if(e.name)return e.name;var t=b.call(y.call(e),/^function\s*([\w$]+)/);if(t)return t[1];return null}(t),ee=Z(t,H);return"[Function"+(Y?": "+Y:" (anonymous)")+"]"+(ee.length>0?" { "+S.call(ee,", ")+" }":"")}if(q(t)){var te=j?v.call(String(t),/^(Symbol\(.*\))_[^)]*$/,"$1"):T.call(t);return"object"!=typeof t||j?te:K(te)}if(function(e){if(!e||"object"!=typeof e)return!1;if("undefined"!=typeof HTMLElement&&e instanceof HTMLElement)return!0;return"string"==typeof e.nodeName&&"function"==typeof e.getAttribute}(t)){for(var ne="<"+E.call(String(t.nodeName)),re=t.attributes||[],ie=0;ie",t.childNodes&&t.childNodes.length&&(ne+="..."),ne+=""+E.call(String(t.nodeName))+">"}if(F(t)){if(0===t.length)return"[]";var oe=Z(t,H);return P&&!function(e){for(var t=0;t=0)return!1;return!0}(oe)?"["+Q(oe,P)+"]":"[ "+S.call(oe,", ")+" ]"}if(function(e){return!("[object Error]"!==z(e)||D&&"object"==typeof e&&D in e)}(t)){var ae=Z(t,H);return"cause"in Error.prototype||!("cause"in t)||N.call(t,"cause")?0===ae.length?"["+String(t)+"]":"{ ["+String(t)+"] "+S.call(ae,", ")+" }":"{ ["+String(t)+"] "+S.call(R.call("[cause]: "+H(t.cause),ae),", ")+" }"}if("object"==typeof t&&m){if(L&&"function"==typeof t[L]&&I)return I(t,{depth:x-i});if("symbol"!==m&&"function"==typeof t.inspect)return t.inspect()}if(function(e){if(!o||!e||"object"!=typeof e)return!1;try{o.call(e);try{l.call(e)}catch(e){return!0}return e instanceof Map}catch(e){}return!1}(t)){var se=[];return a&&a.call(t,(function(e,n){se.push(H(n,t,!0)+" => "+H(e,t))})),X("Map",o.call(t),se,P)}if(function(e){if(!l||!e||"object"!=typeof e)return!1;try{l.call(e);try{o.call(e)}catch(e){return!0}return e instanceof Set}catch(e){}return!1}(t)){var ue=[];return c&&c.call(t,(function(e){ue.push(H(e,t))})),X("Set",l.call(t),ue,P)}if(function(e){if(!f||!e||"object"!=typeof e)return!1;try{f.call(e,f);try{d.call(e,d)}catch(e){return!0}return e instanceof WeakMap}catch(e){}return!1}(t))return J("WeakMap");if(function(e){if(!d||!e||"object"!=typeof e)return!1;try{d.call(e,d);try{f.call(e,f)}catch(e){return!0}return e instanceof WeakSet}catch(e){}return!1}(t))return J("WeakSet");if(function(e){if(!h||!e||"object"!=typeof e)return!1;try{return h.call(e),!0}catch(e){}return!1}(t))return J("WeakRef");if(function(e){return!("[object Number]"!==z(e)||D&&"object"==typeof e&&D in e)}(t))return K(H(Number(t)));if(function(e){if(!e||"object"!=typeof e||!k)return!1;try{return k.call(e),!0}catch(e){}return!1}(t))return K(H(k.call(t)));if(function(e){return!("[object Boolean]"!==z(e)||D&&"object"==typeof e&&D in e)}(t))return K(p.call(t));if(function(e){return!("[object String]"!==z(e)||D&&"object"==typeof e&&D in e)}(t))return K(H(String(t)));if("undefined"!=typeof window&&t===window)return"{ [object Window] }";if("undefined"!=typeof globalThis&&t===globalThis||void 0!==n&&t===n)return"{ [object globalThis] }";if(!function(e){return!("[object Date]"!==z(e)||D&&"object"==typeof e&&D in e)}(t)&&!W(t)){var le=Z(t,H),ce=M?M(t)===Object.prototype:t instanceof Object||t.constructor===Object,fe=t instanceof Object?"":"null prototype",de=!ce&&D&&Object(t)===t&&D in t?g.call(z(t),8,-1):fe?"Object":"",he=(ce||"function"!=typeof t.constructor?"":t.constructor.name?t.constructor.name+" ":"")+(de||fe?"["+S.call(R.call([],de||[],fe||[]),": ")+"] ":"");return 0===le.length?he+"{}":P?he+"{"+Q(le,P)+"}":he+"{ "+S.call(le,", ")+" }"}return String(t)};var H=Object.prototype.hasOwnProperty||function(e){return e in this};function V(e,t){return H.call(e,t)}function z(e){return m.call(e)}function G(e,t){if(e.indexOf)return e.indexOf(t);for(var n=0,r=e.length;nt.maxStringLength){var n=e.length-t.maxStringLength,r="... "+n+" more character"+(n>1?"s":"");return $(g.call(e,0,t.maxStringLength),t)+r}return B(v.call(v.call(e,/(['\\])/g,"\\$1"),/[\x00-\x1f]/g,Y),"single",t)}function Y(e){var t=e.charCodeAt(0),n={8:"b",9:"t",10:"n",12:"f",13:"r"}[t];return n?"\\"+n:"\\x"+(t<16?"0":"")+w.call(t.toString(16))}function K(e){return"Object("+e+")"}function J(e){return e+" { ? }"}function X(e,t,n,r){return e+" ("+t+") {"+(r?Q(n,r):S.call(n,", "))+"}"}function Q(e,t){if(0===e.length)return"";var n="\n"+t.prev+t.base;return n+S.call(e,","+n)+"\n"+t.prev}function Z(e,t){var n=F(e),r=[];if(n){r.length=e.length;for(var i=0;i1)for(var n=1;n-1?e.split(","):e},l=function(e,t,n,r){if(e){var o=n.allowDots?e.replace(/\.([^.[]+)/g,"[$1]"):e,a=/(\[[^[\]]*])/g,s=n.depth>0&&/(\[[^[\]]*])/.exec(o),l=s?o.slice(0,s.index):o,c=[];if(l){if(!n.plainObjects&&i.call(Object.prototype,l)&&!n.allowPrototypes)return;c.push(l)}for(var f=0;n.depth>0&&null!==(s=a.exec(o))&&f=0;--o){var a,s=e[o];if("[]"===s&&n.parseArrays)a=n.allowEmptyArrays&&(""===i||n.strictNullHandling&&null===i)?[]:[].concat(i);else{a=n.plainObjects?Object.create(null):{};var l="["===s.charAt(0)&&"]"===s.charAt(s.length-1)?s.slice(1,-1):s,c=n.decodeDotInKeys?l.replace(/%2E/g,"."):l,f=parseInt(c,10);n.parseArrays||""!==c?!isNaN(f)&&s!==c&&String(f)===c&&f>=0&&n.parseArrays&&f<=n.arrayLimit?(a=[])[f]=i:"__proto__"!==c&&(a[c]=i):a={0:i}}i=a}return i}(c,t,n,r)}};t.exports=function(e,t){var n=function(e){if(!e)return a;if(void 0!==e.allowEmptyArrays&&"boolean"!=typeof e.allowEmptyArrays)throw new TypeError("`allowEmptyArrays` option can only be `true` or `false`, when provided");if(void 0!==e.decodeDotInKeys&&"boolean"!=typeof e.decodeDotInKeys)throw new TypeError("`decodeDotInKeys` option can only be `true` or `false`, when provided");if(null!==e.decoder&&void 0!==e.decoder&&"function"!=typeof e.decoder)throw new TypeError("Decoder has to be a function.");if(void 0!==e.charset&&"utf-8"!==e.charset&&"iso-8859-1"!==e.charset)throw new TypeError("The charset option must be either utf-8, iso-8859-1, or undefined");var t=void 0===e.charset?a.charset:e.charset,n=void 0===e.duplicates?a.duplicates:e.duplicates;if("combine"!==n&&"first"!==n&&"last"!==n)throw new TypeError("The duplicates option must be either combine, first, or last");return{allowDots:void 0===e.allowDots?!0===e.decodeDotInKeys||a.allowDots:!!e.allowDots,allowEmptyArrays:"boolean"==typeof e.allowEmptyArrays?!!e.allowEmptyArrays:a.allowEmptyArrays,allowPrototypes:"boolean"==typeof e.allowPrototypes?e.allowPrototypes:a.allowPrototypes,allowSparse:"boolean"==typeof e.allowSparse?e.allowSparse:a.allowSparse,arrayLimit:"number"==typeof e.arrayLimit?e.arrayLimit:a.arrayLimit,charset:t,charsetSentinel:"boolean"==typeof e.charsetSentinel?e.charsetSentinel:a.charsetSentinel,comma:"boolean"==typeof e.comma?e.comma:a.comma,decodeDotInKeys:"boolean"==typeof e.decodeDotInKeys?e.decodeDotInKeys:a.decodeDotInKeys,decoder:"function"==typeof e.decoder?e.decoder:a.decoder,delimiter:"string"==typeof e.delimiter||r.isRegExp(e.delimiter)?e.delimiter:a.delimiter,depth:"number"==typeof e.depth||!1===e.depth?+e.depth:a.depth,duplicates:n,ignoreQueryPrefix:!0===e.ignoreQueryPrefix,interpretNumericEntities:"boolean"==typeof e.interpretNumericEntities?e.interpretNumericEntities:a.interpretNumericEntities,parameterLimit:"number"==typeof e.parameterLimit?e.parameterLimit:a.parameterLimit,parseArrays:!1!==e.parseArrays,plainObjects:"boolean"==typeof e.plainObjects?e.plainObjects:a.plainObjects,strictDepth:"boolean"==typeof e.strictDepth?!!e.strictDepth:a.strictDepth,strictNullHandling:"boolean"==typeof e.strictNullHandling?e.strictNullHandling:a.strictNullHandling}}(t);if(""===e||null==e)return n.plainObjects?Object.create(null):{};for(var c="string"==typeof e?function(e,t){var n={__proto__:null},l=t.ignoreQueryPrefix?e.replace(/^\?/,""):e;l=l.replace(/%5B/gi,"[").replace(/%5D/gi,"]");var c,f=t.parameterLimit===1/0?void 0:t.parameterLimit,d=l.split(t.delimiter,f),h=-1,p=t.charset;if(t.charsetSentinel)for(c=0;c-1&&(y=o(y)?[y]:y);var w=i.call(n,m);w&&"combine"===t.duplicates?n[m]=r.combine(n[m],y):w&&"last"!==t.duplicates||(n[m]=y)}return n}(e,n):e,f=n.plainObjects?Object.create(null):{},d=Object.keys(c),h=0;h0?O.join(",")||null:void 0}];else if(u(y))D=y;else{var M=Object.keys(O);D=b?M.sort(b):M}var C=d?n.replace(/\./g,"%2E"):n,I=a&&u(O)&&1===O.length?C+"[]":C;if(s&&u(O)&&0===O.length)return I+"[]";for(var P=0;P0?w+v:""}},{"./formats":75,"./utils":79,"side-channel":95}],79:[function(e,t,n){"use strict";var r=e("./formats"),i=Object.prototype.hasOwnProperty,o=Array.isArray,a=function(){for(var e=[],t=0;t<256;++t)e.push("%"+((t<16?"0":"")+t.toString(16)).toUpperCase());return e}(),s=function(e,t){for(var n=t&&t.plainObjects?Object.create(null):{},r=0;r1;){var t=e.pop(),n=t.obj[t.prop];if(o(n)){for(var r=[],i=0;i=u?s.slice(c,c+u):s,d=[],h=0;h=48&&p<=57||p>=65&&p<=90||p>=97&&p<=122||o===r.RFC1738&&(40===p||41===p)?d[d.length]=f.charAt(h):p<128?d[d.length]=a[p]:p<2048?d[d.length]=a[192|p>>6]+a[128|63&p]:p<55296||p>=57344?d[d.length]=a[224|p>>12]+a[128|p>>6&63]+a[128|63&p]:(h+=1,p=65536+((1023&p)<<10|1023&f.charCodeAt(h)),d[d.length]=a[240|p>>18]+a[128|p>>12&63]+a[128|p>>6&63]+a[128|63&p])}l+=d.join("")}return l},isBuffer:function(e){return!(!e||"object"!=typeof e)&&!!(e.constructor&&e.constructor.isBuffer&&e.constructor.isBuffer(e))},isRegExp:function(e){return"[object RegExp]"===Object.prototype.toString.call(e)},maybeMap:function(e,t){if(o(e)){for(var n=[],r=0;r0?("string"==typeof t||a.objectMode||Object.getPrototypeOf(t)===l.prototype||(t=function(e){return l.from(e)}(t)),r?a.endEmitted?e.emit("error",new Error("stream.unshift() after end event")):E(e,a,t,!0):a.ended?e.emit("error",new Error("stream.push() after EOF")):(a.reading=!1,a.decoder&&!n?(t=a.decoder.write(t),a.objectMode||0!==t.length?E(e,a,t,!1):O(e,a)):E(e,a,t,!1))):r||(a.reading=!1));return function(e){return!e.ended&&(e.needReadable||e.lengtht.highWaterMark&&(t.highWaterMark=function(e){return e>=_?e=_:(e--,e|=e>>>1,e|=e>>>2,e|=e>>>4,e|=e>>>8,e|=e>>>16,e++),e}(e)),e<=t.length?e:t.ended?t.length:(t.needReadable=!0,0))}function S(e){var t=e._readableState;t.needReadable=!1,t.emittedReadable||(h("emitReadable",t.flowing),t.emittedReadable=!0,t.sync?i.nextTick(A,e):A(e))}function A(e){h("emit readable"),e.emit("readable"),j(e)}function O(e,t){t.readingMore||(t.readingMore=!0,i.nextTick(k,e,t))}function k(e,t){for(var n=t.length;!t.reading&&!t.flowing&&!t.ended&&t.length=t.length?(n=t.decoder?t.buffer.join(""):1===t.buffer.length?t.buffer.head.data:t.buffer.concat(t.length),t.buffer.clear()):n=function(e,t,n){var r;eo.length?o.length:e;if(a===o.length?i+=o:i+=o.slice(0,e),0===(e-=a)){a===o.length?(++r,n.next?t.head=n.next:t.head=t.tail=null):(t.head=n,n.data=o.slice(a));break}++r}return t.length-=r,i}(e,t):function(e,t){var n=l.allocUnsafe(e),r=t.head,i=1;r.data.copy(n),e-=r.data.length;for(;r=r.next;){var o=r.data,a=e>o.length?o.length:e;if(o.copy(n,n.length-e,0,a),0===(e-=a)){a===o.length?(++i,r.next?t.head=r.next:t.head=t.tail=null):(t.head=r,r.data=o.slice(a));break}++i}return t.length-=i,n}(e,t);return r}(e,t.buffer,t.decoder),n);var n}function N(e){var t=e._readableState;if(t.length>0)throw new Error('"endReadable()" called on non-empty stream');t.endEmitted||(t.ended=!0,i.nextTick(M,t,e))}function M(e,t){e.endEmitted||0!==e.length||(e.endEmitted=!0,t.readable=!1,t.emit("end"))}function C(e,t){for(var n=0,r=e.length;n=t.highWaterMark||t.ended))return h("read: emitReadable",t.length,t.ended),0===t.length&&t.ended?N(this):S(this),null;if(0===(e=R(e,t))&&t.ended)return 0===t.length&&N(this),null;var r,i=t.needReadable;return h("need readable",i),(0===t.length||t.length-e0?D(e,t):null)?(t.needReadable=!0,e=0):t.length-=e,0===t.length&&(t.ended||(t.needReadable=!0),n!==e&&t.ended&&N(this)),null!==r&&this.emit("data",r),r},v.prototype._read=function(e){this.emit("error",new Error("_read() is not implemented"))},v.prototype.pipe=function(e,t){var r=this,o=this._readableState;switch(o.pipesCount){case 0:o.pipes=e;break;case 1:o.pipes=[o.pipes,e];break;default:o.pipes.push(e)}o.pipesCount+=1,h("pipe count=%d opts=%j",o.pipesCount,t);var u=(!t||!1!==t.end)&&e!==n.stdout&&e!==n.stderr?c:v;function l(t,n){h("onunpipe"),t===r&&n&&!1===n.hasUnpiped&&(n.hasUnpiped=!0,h("cleanup"),e.removeListener("close",b),e.removeListener("finish",g),e.removeListener("drain",f),e.removeListener("error",y),e.removeListener("unpipe",l),r.removeListener("end",c),r.removeListener("end",v),r.removeListener("data",m),d=!0,!o.awaitDrain||e._writableState&&!e._writableState.needDrain||f())}function c(){h("onend"),e.end()}o.endEmitted?i.nextTick(u):r.once("end",u),e.on("unpipe",l);var f=function(e){return function(){var t=e._readableState;h("pipeOnDrain",t.awaitDrain),t.awaitDrain&&t.awaitDrain--,0===t.awaitDrain&&s(e,"data")&&(t.flowing=!0,j(e))}}(r);e.on("drain",f);var d=!1;var p=!1;function m(t){h("ondata"),p=!1,!1!==e.write(t)||p||((1===o.pipesCount&&o.pipes===e||o.pipesCount>1&&-1!==C(o.pipes,e))&&!d&&(h("false write response, pause",o.awaitDrain),o.awaitDrain++,p=!0),r.pause())}function y(t){h("onerror",t),v(),e.removeListener("error",y),0===s(e,"error")&&e.emit("error",t)}function b(){e.removeListener("finish",g),v()}function g(){h("onfinish"),e.removeListener("close",b),v()}function v(){h("unpipe"),r.unpipe(e)}return r.on("data",m),function(e,t,n){if("function"==typeof e.prependListener)return e.prependListener(t,n);e._events&&e._events[t]?a(e._events[t])?e._events[t].unshift(n):e._events[t]=[n,e._events[t]]:e.on(t,n)}(e,"error",y),e.once("close",b),e.once("finish",g),e.emit("pipe",r),o.flowing||(h("pipe resume"),r.resume()),e},v.prototype.unpipe=function(e){var t=this._readableState,n={hasUnpiped:!1};if(0===t.pipesCount)return this;if(1===t.pipesCount)return e&&e!==t.pipes||(e||(e=t.pipes),t.pipes=null,t.pipesCount=0,t.flowing=!1,e&&e.emit("unpipe",this,n)),this;if(!e){var r=t.pipes,i=t.pipesCount;t.pipes=null,t.pipesCount=0,t.flowing=!1;for(var o=0;o-1?i:o.nextTick;g.WritableState=b;var l=Object.create(e("core-util-is"));l.inherits=e("inherits");var c={deprecate:e("util-deprecate")},f=e("./internal/streams/stream"),d=e("safe-buffer").Buffer,h=(void 0!==r?r:"undefined"!=typeof window?window:"undefined"!=typeof self?self:{}).Uint8Array||function(){};var p,m=e("./internal/streams/destroy");function y(){}function b(t,n){s=s||e("./_stream_duplex"),t=t||{};var r=n instanceof s;this.objectMode=!!t.objectMode,r&&(this.objectMode=this.objectMode||!!t.writableObjectMode);var i=t.highWaterMark,l=t.writableHighWaterMark,c=this.objectMode?16:16384;this.highWaterMark=i||0===i?i:r&&(l||0===l)?l:c,this.highWaterMark=Math.floor(this.highWaterMark),this.finalCalled=!1,this.needDrain=!1,this.ending=!1,this.ended=!1,this.finished=!1,this.destroyed=!1;var f=!1===t.decodeStrings;this.decodeStrings=!f,this.defaultEncoding=t.defaultEncoding||"utf8",this.length=0,this.writing=!1,this.corked=0,this.sync=!0,this.bufferProcessing=!1,this.onwrite=function(e){!function(e,t){var n=e._writableState,r=n.sync,i=n.writecb;if(function(e){e.writing=!1,e.writecb=null,e.length-=e.writelen,e.writelen=0}(n),t)!function(e,t,n,r,i){--t.pendingcb,n?(o.nextTick(i,r),o.nextTick(S,e,t),e._writableState.errorEmitted=!0,e.emit("error",r)):(i(r),e._writableState.errorEmitted=!0,e.emit("error",r),S(e,t))}(e,n,r,t,i);else{var a=_(n);a||n.corked||n.bufferProcessing||!n.bufferedRequest||E(e,n),r?u(w,e,n,a,i):w(e,n,a,i)}}(n,e)},this.writecb=null,this.writelen=0,this.bufferedRequest=null,this.lastBufferedRequest=null,this.pendingcb=0,this.prefinished=!1,this.errorEmitted=!1,this.bufferedRequestCount=0,this.corkedRequestsFree=new a(this)}function g(t){if(s=s||e("./_stream_duplex"),!(p.call(g,this)||this instanceof s))return new g(t);this._writableState=new b(t,this),this.writable=!0,t&&("function"==typeof t.write&&(this._write=t.write),"function"==typeof t.writev&&(this._writev=t.writev),"function"==typeof t.destroy&&(this._destroy=t.destroy),"function"==typeof t.final&&(this._final=t.final)),f.call(this)}function v(e,t,n,r,i,o,a){t.writelen=r,t.writecb=a,t.writing=!0,t.sync=!0,n?e._writev(i,t.onwrite):e._write(i,o,t.onwrite),t.sync=!1}function w(e,t,n,r){n||function(e,t){0===t.length&&t.needDrain&&(t.needDrain=!1,e.emit("drain"))}(e,t),t.pendingcb--,r(),S(e,t)}function E(e,t){t.bufferProcessing=!0;var n=t.bufferedRequest;if(e._writev&&n&&n.next){var r=t.bufferedRequestCount,i=new Array(r),o=t.corkedRequestsFree;o.entry=n;for(var s=0,u=!0;n;)i[s]=n,n.isBuf||(u=!1),n=n.next,s+=1;i.allBuffers=u,v(e,t,!0,t.length,i,"",o.finish),t.pendingcb++,t.lastBufferedRequest=null,o.next?(t.corkedRequestsFree=o.next,o.next=null):t.corkedRequestsFree=new a(t),t.bufferedRequestCount=0}else{for(;n;){var l=n.chunk,c=n.encoding,f=n.callback;if(v(e,t,!1,t.objectMode?1:l.length,l,c,f),n=n.next,t.bufferedRequestCount--,t.writing)break}null===n&&(t.lastBufferedRequest=null)}t.bufferedRequest=n,t.bufferProcessing=!1}function _(e){return e.ending&&0===e.length&&null===e.bufferedRequest&&!e.finished&&!e.writing}function R(e,t){e._final((function(n){t.pendingcb--,n&&e.emit("error",n),t.prefinished=!0,e.emit("prefinish"),S(e,t)}))}function S(e,t){var n=_(t);return n&&(!function(e,t){t.prefinished||t.finalCalled||("function"==typeof e._final?(t.pendingcb++,t.finalCalled=!0,o.nextTick(R,e,t)):(t.prefinished=!0,e.emit("prefinish")))}(e,t),0===t.pendingcb&&(t.finished=!0,e.emit("finish"))),n}l.inherits(g,f),b.prototype.getBuffer=function(){for(var e=this.bufferedRequest,t=[];e;)t.push(e),e=e.next;return t},function(){try{Object.defineProperty(b.prototype,"buffer",{get:c.deprecate((function(){return this.getBuffer()}),"_writableState.buffer is deprecated. Use _writableState.getBuffer instead.","DEP0003")})}catch(e){}}(),"function"==typeof Symbol&&Symbol.hasInstance&&"function"==typeof Function.prototype[Symbol.hasInstance]?(p=Function.prototype[Symbol.hasInstance],Object.defineProperty(g,Symbol.hasInstance,{value:function(e){return!!p.call(this,e)||this===g&&(e&&e._writableState instanceof b)}})):p=function(e){return e instanceof this},g.prototype.pipe=function(){this.emit("error",new Error("Cannot pipe, not readable"))},g.prototype.write=function(e,t,n){var r,i=this._writableState,a=!1,s=!i.objectMode&&(r=e,d.isBuffer(r)||r instanceof h);return s&&!d.isBuffer(e)&&(e=function(e){return d.from(e)}(e)),"function"==typeof t&&(n=t,t=null),s?t="buffer":t||(t=i.defaultEncoding),"function"!=typeof n&&(n=y),i.ended?function(e,t){var n=new Error("write after end");e.emit("error",n),o.nextTick(t,n)}(this,n):(s||function(e,t,n,r){var i=!0,a=!1;return null===n?a=new TypeError("May not write null values to stream"):"string"==typeof n||void 0===n||t.objectMode||(a=new TypeError("Invalid non-string/buffer chunk")),a&&(e.emit("error",a),o.nextTick(r,a),i=!1),i}(this,i,e,n))&&(i.pendingcb++,a=function(e,t,n,r,i,o){if(!n){var a=function(e,t,n){e.objectMode||!1===e.decodeStrings||"string"!=typeof t||(t=d.from(t,n));return t}(t,r,i);r!==a&&(n=!0,i="buffer",r=a)}var s=t.objectMode?1:r.length;t.length+=s;var u=t.length-1))throw new TypeError("Unknown encoding: "+e);return this._writableState.defaultEncoding=e,this},Object.defineProperty(g.prototype,"writableHighWaterMark",{enumerable:!1,get:function(){return this._writableState.highWaterMark}}),g.prototype._write=function(e,t,n){n(new Error("_write() is not implemented"))},g.prototype._writev=null,g.prototype.end=function(e,t,n){var r=this._writableState;"function"==typeof e?(n=e,e=null,t=null):"function"==typeof t&&(n=t,t=null),null!=e&&this.write(e,t),r.corked&&(r.corked=1,this.uncork()),r.ending||function(e,t,n){t.ending=!0,S(e,t),n&&(t.finished?o.nextTick(n):e.once("finish",n));t.ended=!0,e.writable=!1}(this,r,n)},Object.defineProperty(g.prototype,"destroyed",{get:function(){return void 0!==this._writableState&&this._writableState.destroyed},set:function(e){this._writableState&&(this._writableState.destroyed=e)}}),g.prototype.destroy=m.destroy,g.prototype._undestroy=m.undestroy,g.prototype._destroy=function(e,t){this.end(),t(e)}}).call(this)}).call(this,e("_process"),"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{},e("timers").setImmediate)},{"./_stream_duplex":81,"./internal/streams/destroy":87,"./internal/streams/stream":88,_process:74,"core-util-is":25,inherits:65,"process-nextick-args":73,"safe-buffer":89,timers:102,"util-deprecate":105}],86:[function(e,t,n){"use strict";var r=e("safe-buffer").Buffer,i=e("util");t.exports=function(){function e(){!function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),this.head=null,this.tail=null,this.length=0}return e.prototype.push=function(e){var t={data:e,next:null};this.length>0?this.tail.next=t:this.head=t,this.tail=t,++this.length},e.prototype.unshift=function(e){var t={data:e,next:this.head};0===this.length&&(this.tail=t),this.head=t,++this.length},e.prototype.shift=function(){if(0!==this.length){var e=this.head.data;return 1===this.length?this.head=this.tail=null:this.head=this.head.next,--this.length,e}},e.prototype.clear=function(){this.head=this.tail=null,this.length=0},e.prototype.join=function(e){if(0===this.length)return"";for(var t=this.head,n=""+t.data;t=t.next;)n+=e+t.data;return n},e.prototype.concat=function(e){if(0===this.length)return r.alloc(0);for(var t,n,i,o=r.allocUnsafe(e>>>0),a=this.head,s=0;a;)t=a.data,n=o,i=s,t.copy(n,i),s+=a.data.length,a=a.next;return o},e}(),i&&i.inspect&&i.inspect.custom&&(t.exports.prototype[i.inspect.custom]=function(){var e=i.inspect({length:this.length});return this.constructor.name+" "+e})},{"safe-buffer":89,util:16}],87:[function(e,t,n){"use strict";var r=e("process-nextick-args");function i(e,t){e.emit("error",t)}t.exports={destroy:function(e,t){var n=this,o=this._readableState&&this._readableState.destroyed,a=this._writableState&&this._writableState.destroyed;return o||a?(t?t(e):e&&(this._writableState?this._writableState.errorEmitted||(this._writableState.errorEmitted=!0,r.nextTick(i,this,e)):r.nextTick(i,this,e)),this):(this._readableState&&(this._readableState.destroyed=!0),this._writableState&&(this._writableState.destroyed=!0),this._destroy(e||null,(function(e){!t&&e?n._writableState?n._writableState.errorEmitted||(n._writableState.errorEmitted=!0,r.nextTick(i,n,e)):r.nextTick(i,n,e):t&&t(e)})),this)},undestroy:function(){this._readableState&&(this._readableState.destroyed=!1,this._readableState.reading=!1,this._readableState.ended=!1,this._readableState.endEmitted=!1),this._writableState&&(this._writableState.destroyed=!1,this._writableState.ended=!1,this._writableState.ending=!1,this._writableState.finalCalled=!1,this._writableState.prefinished=!1,this._writableState.finished=!1,this._writableState.errorEmitted=!1)}}},{"process-nextick-args":73}],88:[function(e,t,n){t.exports=e("events").EventEmitter},{events:43}],89:[function(e,t,n){var r=e("buffer"),i=r.Buffer;function o(e,t){for(var n in e)t[n]=e[n]}function a(e,t,n){return i(e,t,n)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?t.exports=r:(o(r,n),n.Buffer=a),o(i,a),a.from=function(e,t,n){if("number"==typeof e)throw new TypeError("Argument must not be a number");return i(e,t,n)},a.alloc=function(e,t,n){if("number"!=typeof e)throw new TypeError("Argument must be a number");var r=i(e);return void 0!==t?"string"==typeof n?r.fill(t,n):r.fill(t):r.fill(0),r},a.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return i(e)},a.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return r.SlowBuffer(e)}},{buffer:18}],90:[function(e,t,n){"use strict";var r=e("safe-buffer").Buffer,i=r.isEncoding||function(e){switch((e=""+e)&&e.toLowerCase()){case"hex":case"utf8":case"utf-8":case"ascii":case"binary":case"base64":case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":case"raw":return!0;default:return!1}};function o(e){var t;switch(this.encoding=function(e){var t=function(e){if(!e)return"utf8";for(var t;;)switch(e){case"utf8":case"utf-8":return"utf8";case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return"utf16le";case"latin1":case"binary":return"latin1";case"base64":case"ascii":case"hex":return e;default:if(t)return;e=(""+e).toLowerCase(),t=!0}}(e);if("string"!=typeof t&&(r.isEncoding===i||!i(e)))throw new Error("Unknown encoding: "+e);return t||e}(e),this.encoding){case"utf16le":this.text=u,this.end=l,t=4;break;case"utf8":this.fillLast=s,t=4;break;case"base64":this.text=c,this.end=f,t=3;break;default:return this.write=d,void(this.end=h)}this.lastNeed=0,this.lastTotal=0,this.lastChar=r.allocUnsafe(t)}function a(e){return e<=127?0:e>>5==6?2:e>>4==14?3:e>>3==30?4:e>>6==2?-1:-2}function s(e){var t=this.lastTotal-this.lastNeed,n=function(e,t){if(128!=(192&t[0]))return e.lastNeed=0,"�";if(e.lastNeed>1&&t.length>1){if(128!=(192&t[1]))return e.lastNeed=1,"�";if(e.lastNeed>2&&t.length>2&&128!=(192&t[2]))return e.lastNeed=2,"�"}}(this,e);return void 0!==n?n:this.lastNeed<=e.length?(e.copy(this.lastChar,t,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal)):(e.copy(this.lastChar,t,0,e.length),void(this.lastNeed-=e.length))}function u(e,t){if((e.length-t)%2==0){var n=e.toString("utf16le",t);if(n){var r=n.charCodeAt(n.length-1);if(r>=55296&&r<=56319)return this.lastNeed=2,this.lastTotal=4,this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1],n.slice(0,-1)}return n}return this.lastNeed=1,this.lastTotal=2,this.lastChar[0]=e[e.length-1],e.toString("utf16le",t,e.length-1)}function l(e){var t=e&&e.length?this.write(e):"";if(this.lastNeed){var n=this.lastTotal-this.lastNeed;return t+this.lastChar.toString("utf16le",0,n)}return t}function c(e,t){var n=(e.length-t)%3;return 0===n?e.toString("base64",t):(this.lastNeed=3-n,this.lastTotal=3,1===n?this.lastChar[0]=e[e.length-1]:(this.lastChar[0]=e[e.length-2],this.lastChar[1]=e[e.length-1]),e.toString("base64",t,e.length-n))}function f(e){var t=e&&e.length?this.write(e):"";return this.lastNeed?t+this.lastChar.toString("base64",0,3-this.lastNeed):t}function d(e){return e.toString(this.encoding)}function h(e){return e&&e.length?this.write(e):""}n.StringDecoder=o,o.prototype.write=function(e){if(0===e.length)return"";var t,n;if(this.lastNeed){if(void 0===(t=this.fillLast(e)))return"";n=this.lastNeed,this.lastNeed=0}else n=0;return n=0)return i>0&&(e.lastNeed=i-1),i;if(--r=0)return i>0&&(e.lastNeed=i-2),i;if(--r=0)return i>0&&(2===i?i=0:e.lastNeed=i-3),i;return 0}(this,e,t);if(!this.lastNeed)return e.toString("utf8",t);this.lastTotal=n;var r=e.length-(n-this.lastNeed);return e.copy(this.lastChar,0,r),e.toString("utf8",t,r)},o.prototype.fillLast=function(e){if(this.lastNeed<=e.length)return e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,this.lastNeed),this.lastChar.toString(this.encoding,0,this.lastTotal);e.copy(this.lastChar,this.lastTotal-this.lastNeed,0,e.length),this.lastNeed-=e.length}},{"safe-buffer":89}],91:[function(e,t,n){(n=t.exports=e("./lib/_stream_readable.js")).Stream=n,n.Readable=n,n.Writable=e("./lib/_stream_writable.js"),n.Duplex=e("./lib/_stream_duplex.js"),n.Transform=e("./lib/_stream_transform.js"),n.PassThrough=e("./lib/_stream_passthrough.js")},{"./lib/_stream_duplex.js":81,"./lib/_stream_passthrough.js":82,"./lib/_stream_readable.js":83,"./lib/_stream_transform.js":84,"./lib/_stream_writable.js":85}],92:[function(e,t,n){
-/*! safe-buffer. MIT License. Feross Aboukhadijeh */
-var r=e("buffer"),i=r.Buffer;function o(e,t){for(var n in e)t[n]=e[n]}function a(e,t,n){return i(e,t,n)}i.from&&i.alloc&&i.allocUnsafe&&i.allocUnsafeSlow?t.exports=r:(o(r,n),n.Buffer=a),a.prototype=Object.create(i.prototype),o(i,a),a.from=function(e,t,n){if("number"==typeof e)throw new TypeError("Argument must not be a number");return i(e,t,n)},a.alloc=function(e,t,n){if("number"!=typeof e)throw new TypeError("Argument must be a number");var r=i(e);return void 0!==t?"string"==typeof n?r.fill(t,n):r.fill(t):r.fill(0),r},a.allocUnsafe=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return i(e)},a.allocUnsafeSlow=function(e){if("number"!=typeof e)throw new TypeError("Argument must be a number");return r.SlowBuffer(e)}},{buffer:18}],93:[function(e,t,n){var r=Object.prototype.hasOwnProperty;function i(e){return"[Throws: "+(e?e.message:"?")+"]"}function o(e){var t=[];return function e(n){if(null===n||"object"!=typeof n)return n;if(-1!==t.indexOf(n))return"[Circular]";if(t.push(n),"function"==typeof n.toJSON)try{var o=e(n.toJSON());return t.pop(),o}catch(e){return i(e)}if(Array.isArray(n)){var a=n.map(e);return t.pop(),a}var s=Object.keys(n).reduce((function(t,o){return t[o]=e(function(e,t){if(r.call(e,t))try{return e[t]}catch(e){return i(e)}return e[t]}(n,o)),t}),{});return t.pop(),s}(e)}t.exports=function(e,t,n){return JSON.stringify(o(e),t,n)},t.exports.ensureProperties=o},{}],94:[function(e,t,n){"use strict";var r=e("get-intrinsic"),i=e("define-data-property"),o=e("has-property-descriptors")(),a=e("gopd"),s=e("es-errors/type"),u=r("%Math.floor%");t.exports=function(e,t){if("function"!=typeof e)throw new s("`fn` is not a function");if("number"!=typeof t||t<0||t>4294967295||u(t)!==t)throw new s("`length` must be a positive 32-bit integer");var n=arguments.length>2&&!!arguments[2],r=!0,l=!0;if("length"in e&&a){var c=a(e,"length");c&&!c.configurable&&(r=!1),c&&!c.writable&&(l=!1)}return(r||l||!n)&&(o?i(e,"length",t,!0,!0):i(e,"length",t)),e}},{"define-data-property":28,"es-errors/type":41,"get-intrinsic":50,gopd:54,"has-property-descriptors":55}],95:[function(e,t,n){"use strict";var r=e("get-intrinsic"),i=e("call-bind/callBound"),o=e("object-inspect"),a=e("es-errors/type"),s=r("%WeakMap%",!0),u=r("%Map%",!0),l=i("WeakMap.prototype.get",!0),c=i("WeakMap.prototype.set",!0),f=i("WeakMap.prototype.has",!0),d=i("Map.prototype.get",!0),h=i("Map.prototype.set",!0),p=i("Map.prototype.has",!0),m=function(e,t){for(var n,r=e;null!==(n=r.next);r=n)if(n.key===t)return r.next=n.next,n.next=e.next,e.next=n,n};t.exports=function(){var e,t,n,r={assert:function(e){if(!r.has(e))throw new a("Side channel does not contain "+o(e))},get:function(r){if(s&&r&&("object"==typeof r||"function"==typeof r)){if(e)return l(e,r)}else if(u){if(t)return d(t,r)}else if(n)return function(e,t){var n=m(e,t);return n&&n.value}(n,r)},has:function(r){if(s&&r&&("object"==typeof r||"function"==typeof r)){if(e)return f(e,r)}else if(u){if(t)return p(t,r)}else if(n)return function(e,t){return!!m(e,t)}(n,r);return!1},set:function(r,i){s&&r&&("object"==typeof r||"function"==typeof r)?(e||(e=new s),c(e,r,i)):u?(t||(t=new u),h(t,r,i)):(n||(n={key:{},next:null}),function(e,t,n){var r=m(e,t);r?r.value=n:e.next={key:t,next:e.next,value:n}}(n,r,i))}};return r}},{"call-bind/callBound":19,"es-errors/type":41,"get-intrinsic":50,"object-inspect":70}],96:[function(e,t,n){t.exports=function(e){var t=e._readableState;return t?t.objectMode||"number"==typeof e._duplexState?e.read():e.read(function(e){if(e.buffer.length){var t=e.bufferIndex||0;if(e.buffer.head)return e.buffer.head.data.length;if(e.buffer.length-t>0&&e.buffer[t])return e.buffer[t].length}return e.length}(t)):null}},{}],97:[function(e,t,n){"use strict";const r=["use","on","once","set","query","type","accept","auth","withCredentials","sortQuery","retry","ok","redirects","timeout","buffer","serialize","parse","ca","key","pfx","cert","disableTLSCerts"];class i{constructor(){this._defaults=[]}_setDefaults(e){for(const t of this._defaults)e[t.fn](...t.args)}}for(const e of r)i.prototype[e]=function(){for(var t=arguments.length,n=new Array(t),r=0;r{if(r.XMLHttpRequest)return new r.XMLHttpRequest;throw new Error("Browser-only version of superagent could not find XHR")};const m="".trim?e=>e.trim():e=>e.replace(/(^\s*|\s*$)/g,"");function y(e){if(!u(e))return e;const t=[];for(const n in e)c(e,n)&&b(t,n,e[n]);return t.join("&")}function b(e,t,n){if(void 0!==n)if(null!==n)if(Array.isArray(n))for(const r of n)b(e,t,r);else if(u(n))for(const r in n)c(n,r)&&b(e,`${t}[${r}]`,n[r]);else e.push(encodeURI(t)+"="+encodeURIComponent(n));else e.push(encodeURI(t))}function g(e){const t={},n=e.split("&");let r,i;for(let e=0,o=n.length;e{let e,t=null,r=null;try{r=new w(n)}catch(e){return t=new Error("Parser is unable to parse the response"),t.parse=!0,t.original=e,n.xhr?(t.rawResponse=void 0===n.xhr.responseType?n.xhr.responseText:n.xhr.response,t.status=n.xhr.status?n.xhr.status:null,t.statusCode=t.status):(t.rawResponse=null,t.status=null),n.callback(t)}n.emit("response",r);try{n._isResponseOK(r)||(e=new Error(r.statusText||r.text||"Unsuccessful HTTP response"))}catch(t){e=t}e?(e.original=t,e.response=r,e.status=e.status||r.status,n.callback(e,r)):n.callback(null,r)}))}p.serializeObject=y,p.parseString=g,p.types={html:"text/html",json:"application/json",xml:"text/xml",urlencoded:"application/x-www-form-urlencoded",form:"application/x-www-form-urlencoded","form-data":"application/x-www-form-urlencoded"},p.serialize={"application/x-www-form-urlencoded":e=>a.stringify(e,{indices:!1,strictNullHandling:!0}),"application/json":o},p.parse={"application/x-www-form-urlencoded":g,"application/json":JSON.parse},l(w.prototype,f.prototype),w.prototype._parseBody=function(e){let t=p.parse[this.type];return this.req._parser?this.req._parser(this,e):(!t&&v(this.type)&&(t=p.parse["application/json"]),t&&e&&(e.length>0||e instanceof Object)?t(e):null)},w.prototype.toError=function(){const{req:e}=this,{method:t}=e,{url:n}=e,r=`cannot ${t} ${n} (${this.status})`,i=new Error(r);return i.status=this.status,i.method=t,i.url=n,i},p.Response=w,i(E.prototype),l(E.prototype,s.prototype),E.prototype.type=function(e){return this.set("Content-Type",p.types[e]||e),this},E.prototype.accept=function(e){return this.set("Accept",p.types[e]||e),this},E.prototype.auth=function(e,t,n){1===arguments.length&&(t=""),"object"==typeof t&&null!==t&&(n=t,t=""),n||(n={type:"function"==typeof btoa?"basic":"auto"});const r=n.encoder?n.encoder:e=>{if("function"==typeof btoa)return btoa(e);throw new Error("Cannot use basic auth, btoa is not a function")};return this._auth(e,t,n,r)},E.prototype.query=function(e){return"string"!=typeof e&&(e=y(e)),e&&this._query.push(e),this},E.prototype.attach=function(e,t,n){if(t){if(this._data)throw new Error("superagent can't mix .send() and .attach()");this._getFormData().append(e,t,n||t.name)}return this},E.prototype._getFormData=function(){return this._formData||(this._formData=new r.FormData),this._formData},E.prototype.callback=function(e,t){if(this._shouldRetry(e,t))return this._retry();const n=this._callback;this.clearTimeout(),e&&(this._maxRetries&&(e.retries=this._retries-1),this.emit("error",e)),n(e,t)},E.prototype.crossDomainError=function(){const e=new Error("Request has been terminated\nPossible causes: the network is offline, Origin is not allowed by Access-Control-Allow-Origin, the page is being unloaded, etc.");e.crossDomain=!0,e.status=this.status,e.method=this.method,e.url=this.url,this.callback(e)},E.prototype.agent=function(){return console.warn("This is not supported in browser version of superagent"),this},E.prototype.ca=E.prototype.agent,E.prototype.buffer=E.prototype.ca,E.prototype.write=()=>{throw new Error("Streaming is not supported in browser version of superagent")},E.prototype.pipe=E.prototype.write,E.prototype._isHost=function(e){return e&&"object"==typeof e&&!Array.isArray(e)&&"[object Object]"!==Object.prototype.toString.call(e)},E.prototype.end=function(e){this._endCalled&&console.warn("Warning: .end() was called twice. This is not supported in superagent"),this._endCalled=!0,this._callback=e||h,this._finalizeQueryString(),this._end()},E.prototype._setUploadTimeout=function(){const e=this;this._uploadTimeout&&!this._uploadTimeoutTimer&&(this._uploadTimeoutTimer=setTimeout((()=>{e._timeoutError("Upload timeout of ",e._uploadTimeout,"ETIMEDOUT")}),this._uploadTimeout))},E.prototype._end=function(){if(this._aborted)return this.callback(new Error("The request has been aborted even before .end() was called"));const e=this;this.xhr=p.getXHR();const{xhr:t}=this;let n=this._formData||this._data;this._setTimeouts(),t.addEventListener("readystatechange",(()=>{const{readyState:n}=t;if(n>=2&&e._responseTimeoutTimer&&clearTimeout(e._responseTimeoutTimer),4!==n)return;let r;try{r=t.status}catch(e){r=0}if(!r){if(e.timedout||e._aborted)return;return e.crossDomainError()}e.emit("end")}));const r=(t,n)=>{n.total>0&&(n.percent=n.loaded/n.total*100,100===n.percent&&clearTimeout(e._uploadTimeoutTimer)),n.direction=t,e.emit("progress",n)};if(this.hasListeners("progress"))try{t.addEventListener("progress",r.bind(null,"download")),t.upload&&t.upload.addEventListener("progress",r.bind(null,"upload"))}catch(e){}t.upload&&this._setUploadTimeout();try{this.username&&this.password?t.open(this.method,this.url,!0,this.username,this.password):t.open(this.method,this.url,!0)}catch(e){return this.callback(e)}if(this._withCredentials&&(t.withCredentials=!0),!this._formData&&"GET"!==this.method&&"HEAD"!==this.method&&"string"!=typeof n&&!this._isHost(n)){const e=this._header["content-type"];let t=this._serializer||p.serialize[e?e.split(";")[0]:""];!t&&v(e)&&(t=p.serialize["application/json"]),t&&(n=t(n))}for(const e in this.header)null!==this.header[e]&&c(this.header,e)&&t.setRequestHeader(e,this.header[e]);this._responseType&&(t.responseType=this._responseType),this.emit("request",this),t.send(void 0===n?null:n)},p.agent=()=>new d;for(const e of["GET","POST","OPTIONS","PATCH","PUT","DELETE"])d.prototype[e.toLowerCase()]=function(t,n){const r=new p.Request(e,t);return this._setDefaults(r),n&&r.end(n),r};function _(e,t,n){const r=p("DELETE",e);return"function"==typeof t&&(n=t,t=null),t&&r.send(t),n&&r.end(n),r}d.prototype.del=d.prototype.delete,p.get=(e,t,n)=>{const r=p("GET",e);return"function"==typeof t&&(n=t,t=null),t&&r.query(t),n&&r.end(n),r},p.head=(e,t,n)=>{const r=p("HEAD",e);return"function"==typeof t&&(n=t,t=null),t&&r.query(t),n&&r.end(n),r},p.options=(e,t,n)=>{const r=p("OPTIONS",e);return"function"==typeof t&&(n=t,t=null),t&&r.send(t),n&&r.end(n),r},p.del=_,p.delete=_,p.patch=(e,t,n)=>{const r=p("PATCH",e);return"function"==typeof t&&(n=t,t=null),t&&r.send(t),n&&r.end(n),r},p.post=(e,t,n)=>{const r=p("POST",e);return"function"==typeof t&&(n=t,t=null),t&&r.send(t),n&&r.end(n),r},p.put=(e,t,n)=>{const r=p("PUT",e);return"function"==typeof t&&(n=t,t=null),t&&r.send(t),n&&r.end(n),r}},{"./agent-base":97,"./request-base":99,"./response-base":100,"./utils":101,"component-emitter":23,"fast-safe-stringify":44,qs:76}],99:[function(e,t,n){"use strict";const{isObject:r,hasOwn:i}=e("./utils");function o(){}t.exports=o,o.prototype.clearTimeout=function(){return clearTimeout(this._timer),clearTimeout(this._responseTimeoutTimer),clearTimeout(this._uploadTimeoutTimer),delete this._timer,delete this._responseTimeoutTimer,delete this._uploadTimeoutTimer,this},o.prototype.parse=function(e){return this._parser=e,this},o.prototype.responseType=function(e){return this._responseType=e,this},o.prototype.serialize=function(e){return this._serializer=e,this},o.prototype.timeout=function(e){if(!e||"object"!=typeof e)return this._timeout=e,this._responseTimeout=0,this._uploadTimeout=0,this;for(const t in e)if(i(e,t))switch(t){case"deadline":this._timeout=e.deadline;break;case"response":this._responseTimeout=e.response;break;case"upload":this._uploadTimeout=e.upload;break;default:console.warn("Unknown timeout option",t)}return this},o.prototype.retry=function(e,t){return 0!==arguments.length&&!0!==e||(e=1),e<=0&&(e=0),this._maxRetries=e,this._retries=0,this._retryCallback=t,this};const a=new Set(["ETIMEDOUT","ECONNRESET","EADDRINUSE","ECONNREFUSED","EPIPE","ENOTFOUND","ENETUNREACH","EAI_AGAIN"]),s=new Set([408,413,429,500,502,503,504,521,522,524]);o.prototype._shouldRetry=function(e,t){if(!this._maxRetries||this._retries++>=this._maxRetries)return!1;if(this._retryCallback)try{const n=this._retryCallback(e,t);if(!0===n)return!0;if(!1===n)return!1}catch(e){console.error(e)}if(t&&t.status&&s.has(t.status))return!0;if(e){if(e.code&&a.has(e.code))return!0;if(e.timeout&&"ECONNABORTED"===e.code)return!0;if(e.crossDomain)return!0}return!1},o.prototype._retry=function(){return this.clearTimeout(),this.req&&(this.req=null,this.req=this.request()),this._aborted=!1,this.timedout=!1,this.timedoutError=null,this._end()},o.prototype.then=function(e,t){if(!this._fullfilledPromise){const e=this;this._endCalled&&console.warn("Warning: superagent request was sent twice, because both .end() and .then() were called. Never call .end() if you use promises"),this._fullfilledPromise=new Promise(((t,n)=>{e.on("abort",(()=>{if(this._maxRetries&&this._maxRetries>this._retries)return;if(this.timedout&&this.timedoutError)return void n(this.timedoutError);const e=new Error("Aborted");e.code="ABORTED",e.status=this.status,e.method=this.method,e.url=this.url,n(e)})),e.end(((e,r)=>{e?n(e):t(r)}))}))}return this._fullfilledPromise.then(e,t)},o.prototype.catch=function(e){return this.then(void 0,e)},o.prototype.use=function(e){return e(this),this},o.prototype.ok=function(e){if("function"!=typeof e)throw new Error("Callback required");return this._okCallback=e,this},o.prototype._isResponseOK=function(e){return!!e&&(this._okCallback?this._okCallback(e):e.status>=200&&e.status<300)},o.prototype.get=function(e){return this._header[e.toLowerCase()]},o.prototype.getHeader=o.prototype.get,o.prototype.set=function(e,t){if(r(e)){for(const t in e)i(e,t)&&this.set(t,e[t]);return this}return this._header[e.toLowerCase()]=t,this.header[e]=t,this},o.prototype.unset=function(e){return delete this._header[e.toLowerCase()],delete this.header[e],this},o.prototype.field=function(e,t,n){if(null==e)throw new Error(".field(name, val) name can not be empty");if(this._data)throw new Error(".field() can't be used if .send() is used. Please use only .send() or only .field() & .attach()");if(r(e)){for(const t in e)i(e,t)&&this.field(t,e[t]);return this}if(Array.isArray(t)){for(const n in t)i(t,n)&&this.field(e,t[n]);return this}if(null==t)throw new Error(".field(name, val) val can not be empty");return"boolean"==typeof t&&(t=String(t)),n?this._getFormData().append(e,t,n):this._getFormData().append(e,t),this},o.prototype.abort=function(){return this._aborted||(this._aborted=!0,this.xhr&&this.xhr.abort(),this.req&&this.req.abort(),this.clearTimeout(),this.emit("abort")),this},o.prototype._auth=function(e,t,n,r){switch(n.type){case"basic":this.set("Authorization",`Basic ${r(`${e}:${t}`)}`);break;case"auto":this.username=e,this.password=t;break;case"bearer":this.set("Authorization",`Bearer ${e}`)}return this},o.prototype.withCredentials=function(e){return void 0===e&&(e=!0),this._withCredentials=e,this},o.prototype.redirects=function(e){return this._maxRedirects=e,this},o.prototype.maxResponseSize=function(e){if("number"!=typeof e)throw new TypeError("Invalid argument");return this._maxResponseSize=e,this},o.prototype.toJSON=function(){return{method:this.method,url:this.url,data:this._data,headers:this._header}},o.prototype.send=function(e){const t=r(e);let n=this._header["content-type"];if(this._formData)throw new Error(".send() can't be used if .attach() or .field() is used. Please use only .send() or only .field() & .attach()");if(t&&!this._data)Array.isArray(e)?this._data=[]:this._isHost(e)||(this._data={});else if(e&&this._data&&this._isHost(this._data))throw new Error("Can't merge these send calls");if(t&&r(this._data))for(const t in e){if("bigint"==typeof e[t]&&!e[t].toJSON)throw new Error("Cannot serialize BigInt value to json");i(e,t)&&(this._data[t]=e[t])}else{if("bigint"==typeof e)throw new Error("Cannot send value of type BigInt");"string"==typeof e?(n||this.type("form"),n=this._header["content-type"],n&&(n=n.toLowerCase().trim()),this._data="application/x-www-form-urlencoded"===n?this._data?`${this._data}&${e}`:e:(this._data||"")+e):this._data=e}return!t||this._isHost(e)||n||this.type("json"),this},o.prototype.sortQuery=function(e){return this._sort=void 0===e||e,this},o.prototype._finalizeQueryString=function(){const e=this._query.join("&");if(e&&(this.url+=(this.url.includes("?")?"&":"?")+e),this._query.length=0,this._sort){const e=this.url.indexOf("?");if(e>=0){const t=this.url.slice(e+1).split("&");"function"==typeof this._sort?t.sort(this._sort):t.sort(),this.url=this.url.slice(0,e)+"?"+t.join("&")}}},o.prototype._appendQueryString=()=>{console.warn("Unsupported")},o.prototype._timeoutError=function(e,t,n){if(this._aborted)return;const r=new Error(`${e+t}ms exceeded`);r.timeout=t,r.code="ECONNABORTED",r.errno=n,this.timedout=!0,this.timedoutError=r,this.abort(),this.callback(r)},o.prototype._setTimeouts=function(){const e=this;this._timeout&&!this._timer&&(this._timer=setTimeout((()=>{e._timeoutError("Timeout of ",e._timeout,"ETIME")}),this._timeout)),this._responseTimeout&&!this._responseTimeoutTimer&&(this._responseTimeoutTimer=setTimeout((()=>{e._timeoutError("Response timeout of ",e._responseTimeout,"ETIMEDOUT")}),this._responseTimeout))}},{"./utils":101}],100:[function(e,t,n){"use strict";const r=e("./utils");function i(){}t.exports=i,i.prototype.get=function(e){return this.header[e.toLowerCase()]},i.prototype._setHeaderProperties=function(e){const t=e["content-type"]||"";this.type=r.type(t);const n=r.params(t);for(const e in n)Object.prototype.hasOwnProperty.call(n,e)&&(this[e]=n[e]);this.links={};try{e.link&&(this.links=r.parseLinks(e.link))}catch(e){}},i.prototype._setStatusProperties=function(e){const t=Math.trunc(e/100);this.statusCode=e,this.status=this.statusCode,this.statusType=t,this.info=1===t,this.ok=2===t,this.redirect=3===t,this.clientError=4===t,this.serverError=5===t,this.error=(4===t||5===t)&&this.toError(),this.created=201===e,this.accepted=202===e,this.noContent=204===e,this.badRequest=400===e,this.unauthorized=401===e,this.notAcceptable=406===e,this.forbidden=403===e,this.notFound=404===e,this.unprocessableEntity=422===e}},{"./utils":101}],101:[function(e,t,n){"use strict";n.type=e=>e.split(/ *; */).shift(),n.params=e=>{const t={};for(const n of e.split(/ *; */)){const e=n.split(/ *= */),r=e.shift(),i=e.shift();r&&i&&(t[r]=i)}return t},n.parseLinks=e=>{const t={};for(const n of e.split(/ *, */)){const e=n.split(/ *; */),r=e[0].slice(1,-1);t[e[1].split(/ *= */)[1].slice(1,-1)]=r}return t},n.cleanHeader=(e,t)=>(delete e["content-type"],delete e["content-length"],delete e["transfer-encoding"],delete e.host,t&&(delete e.authorization,delete e.cookie),e),n.isObject=e=>null!==e&&"object"==typeof e,n.hasOwn=Object.hasOwn||function(e,t){if(null==e)throw new TypeError("Cannot convert undefined or null to object");return Object.prototype.hasOwnProperty.call(new Object(e),t)},n.mixin=(e,t)=>{for(const r in t)n.hasOwn(t,r)&&(e[r]=t[r])},n.isGzipOrDeflateEncoding=e=>new RegExp(/^\s*(?:deflate|gzip)\s*$/).test(e.headers["content-encoding"]),n.isBrotliEncoding=e=>new RegExp(/^\s*(?:br)\s*$/).test(e.headers["content-encoding"])},{}],102:[function(e,t,n){(function(t,r){(function(){var i=e("process/browser.js").nextTick,o=Function.prototype.apply,a=Array.prototype.slice,s={},u=0;function l(e,t){this._id=e,this._clearFn=t}n.setTimeout=function(){return new l(o.call(setTimeout,window,arguments),clearTimeout)},n.setInterval=function(){return new l(o.call(setInterval,window,arguments),clearInterval)},n.clearTimeout=n.clearInterval=function(e){e.close()},l.prototype.unref=l.prototype.ref=function(){},l.prototype.close=function(){this._clearFn.call(window,this._id)},n.enroll=function(e,t){clearTimeout(e._idleTimeoutId),e._idleTimeout=t},n.unenroll=function(e){clearTimeout(e._idleTimeoutId),e._idleTimeout=-1},n._unrefActive=n.active=function(e){clearTimeout(e._idleTimeoutId);var t=e._idleTimeout;t>=0&&(e._idleTimeoutId=setTimeout((function(){e._onTimeout&&e._onTimeout()}),t))},n.setImmediate="function"==typeof t?t:function(e){var t=u++,r=!(arguments.length<2)&&a.call(arguments,1);return s[t]=!0,i((function(){s[t]&&(r?e.apply(null,r):e.call(null),n.clearImmediate(t))})),t},n.clearImmediate="function"==typeof r?r:function(e){delete s[e]}}).call(this)}).call(this,e("timers").setImmediate,e("timers").clearImmediate)},{"process/browser.js":74,timers:102}],103:[function(e,t,n){(function(e){(function(){
-/*! typedarray-to-buffer. MIT License. Feross Aboukhadijeh */
-t.exports=function(t){return ArrayBuffer.isView(t)?e.from(t.buffer,t.byteOffset,t.byteLength):e.from(t)}}).call(this)}).call(this,e("buffer").Buffer)},{buffer:18}],104:[function(e,t,n){!function(e,r){"use strict";var i="function",o="undefined",a="object",s="string",u="major",l="model",c="name",f="type",d="vendor",h="version",p="architecture",m="console",y="mobile",b="tablet",g="smarttv",v="wearable",w="embedded",E="Amazon",_="Apple",R="ASUS",S="BlackBerry",A="Browser",O="Chrome",k="Firefox",x="Google",T="Huawei",j="LG",D="Microsoft",N="Motorola",M="Opera",C="Samsung",I="Sharp",P="Sony",L="Xiaomi",B="Zebra",U="Facebook",F="Chromium OS",W="Mac OS",q=" Browser",H=function(e){for(var t={},n=0;n0?2===u.length?typeof u[1]==i?this[u[0]]=u[1].call(this,c):this[u[0]]=u[1]:3===u.length?typeof u[1]!==i||u[1].exec&&u[1].test?this[u[0]]=c?c.replace(u[1],u[2]):r:this[u[0]]=c?u[1].call(this,c,u[2]):r:4===u.length&&(this[u[0]]=c?u[3].call(this,c.replace(u[1],u[2])):r):this[u]=c||r;f+=2}},Y=function(e,t){for(var n in t)if(typeof t[n]===a&&t[n].length>0){for(var i=0;i2&&(e[l]="iPad",e[f]=b),e},this.getEngine=function(){var e={};return e[c]=r,e[h]=r,$.call(e,g,w.engine),e},this.getOS=function(){var e={};return e[c]=r,e[h]=r,$.call(e,g,w.os),E&&!e[c]&&v&&v.platform&&"Unknown"!=v.platform&&(e[c]=v.platform.replace(/chrome os/i,F).replace(/macos/i,W)),e},this.getResult=function(){return{ua:this.getUA(),browser:this.getBrowser(),engine:this.getEngine(),os:this.getOS(),device:this.getDevice(),cpu:this.getCPU()}},this.getUA=function(){return g},this.setUA=function(e){return g=typeof e===s&&e.length>500?G(e,500):e,this},this.setUA(g),this};X.VERSION="1.0.39",X.BROWSER=H([c,h,u]),X.CPU=H([p]),X.DEVICE=H([l,d,f,m,y,g,b,v,w]),X.ENGINE=X.OS=H([c,h]),typeof n!==o?(typeof t!==o&&t.exports&&(n=t.exports=X),n.UAParser=X):typeof e!==o&&(e.UAParser=X);var Q=typeof e!==o&&(e.jQuery||e.Zepto);if(Q&&!Q.ua){var Z=new X;Q.ua=Z.getResult(),Q.ua.get=function(){return Z.getUA()},Q.ua.set=function(e){Z.setUA(e);var t=Z.getResult();for(var n in t)Q.ua[n]=t[n]}}}("object"==typeof window?window:this)},{}],105:[function(e,t,n){(function(e){(function(){function n(t){try{if(!e.localStorage)return!1}catch(e){return!1}var n=e.localStorage[t];return null!=n&&"true"===String(n).toLowerCase()}t.exports=function(e,t){if(n("noDeprecation"))return e;var r=!1;return function(){if(!r){if(n("throwDeprecation"))throw new Error(t);n("traceDeprecation")?console.trace(t):console.warn(t),r=!0}return e.apply(this,arguments)}}}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],106:[function(e,t,n){(function(n,r){(function(){var i=e("readable-stream"),o=e("end-of-stream"),a=e("inherits"),s=e("stream-shift"),u=r.from&&r.from!==Uint8Array.from?r.from([0]):new r([0]),l=function(e,t){e._corked?e.once("uncork",t):t()},c=function(e,t){return function(n){n?function(e,t){e._autoDestroy&&e.destroy(t)}(e,"premature close"===n.message?null:n):t&&!e._ended&&e.end()}},f=function(e,t,n){if(!(this instanceof f))return new f(e,t,n);i.Duplex.call(this,n),this._writable=null,this._readable=null,this._readable2=null,this._autoDestroy=!n||!1!==n.autoDestroy,this._forwardDestroy=!n||!1!==n.destroy,this._forwardEnd=!n||!1!==n.end,this._corked=1,this._ondrain=null,this._drained=!1,this._forwarding=!1,this._unwrite=null,this._unread=null,this._ended=!1,this.destroyed=!1,e&&this.setWritable(e),t&&this.setReadable(t)};a(f,i.Duplex),f.obj=function(e,t,n){return n||(n={}),n.objectMode=!0,n.highWaterMark=16,new f(e,t,n)},f.prototype.cork=function(){1==++this._corked&&this.emit("cork")},f.prototype.uncork=function(){this._corked&&0==--this._corked&&this.emit("uncork")},f.prototype.setWritable=function(e){if(this._unwrite&&this._unwrite(),this.destroyed)e&&e.destroy&&e.destroy();else if(null!==e&&!1!==e){var t=this,r=o(e,{writable:!0,readable:!1},c(this,this._forwardEnd)),i=function(){var e=t._ondrain;t._ondrain=null,e&&e()};this._unwrite&&n.nextTick(i),this._writable=e,this._writable.on("drain",i),this._unwrite=function(){t._writable.removeListener("drain",i),r()},this.uncork()}else this.end()},f.prototype.setReadable=function(e){if(this._unread&&this._unread(),this.destroyed)e&&e.destroy&&e.destroy();else{if(null===e||!1===e)return this.push(null),void this.resume();var t,n=this,r=o(e,{writable:!1,readable:!0},c(this)),a=function(){n._forward()},s=function(){n.push(null)};this._drained=!0,this._readable=e,this._readable2=e._readableState?e:(t=e,new i.Readable({objectMode:!0,highWaterMark:16}).wrap(t)),this._readable2.on("readable",a),this._readable2.on("end",s),this._unread=function(){n._readable2.removeListener("readable",a),n._readable2.removeListener("end",s),r()},this._forward()}},f.prototype._read=function(){this._drained=!0,this._forward()},f.prototype._forward=function(){if(!this._forwarding&&this._readable2&&this._drained){var e;for(this._forwarding=!0;this._drained&&null!==(e=s(this._readable2));)this.destroyed||(this._drained=this.push(e));this._forwarding=!1}},f.prototype.destroy=function(e){if(!this.destroyed){this.destroyed=!0;var t=this;n.nextTick((function(){t._destroy(e)}))}},f.prototype._destroy=function(e){if(e){var t=this._ondrain;this._ondrain=null,t?t(e):this.emit("error",e)}this._forwardDestroy&&(this._readable&&this._readable.destroy&&this._readable.destroy(),this._writable&&this._writable.destroy&&this._writable.destroy()),this.emit("close")},f.prototype._write=function(e,t,n){return this.destroyed?n():this._corked?l(this,this._write.bind(this,e,t,n)):e===u?this._finish(n):this._writable?void(!1===this._writable.write(e)?this._ondrain=n:n()):n()},f.prototype._finish=function(e){var t=this;this.emit("preend"),l(this,(function(){var n,r;n=t._forwardEnd&&t._writable,r=function(){!1===t._writableState.prefinished&&(t._writableState.prefinished=!0),t.emit("prefinish"),l(t,e)},n?n._writableState&&n._writableState.finished?r():n._writableState?n.end(r):(n.end(),r()):r()}))},f.prototype.end=function(e,t,n){return"function"==typeof e?this.end(null,null,e):"function"==typeof t?this.end(e,null,t):(this._ended=!0,e&&this.write(e),this._writableState.ending||this.write(u),i.Writable.prototype.end.call(this,n))},t.exports=f}).call(this)}).call(this,e("_process"),e("buffer").Buffer)},{_process:74,buffer:18,"end-of-stream":34,inherits:65,"readable-stream":91,"stream-shift":96}],107:[function(e,t,n){(function(n,r){(function(){"use strict";var i=e("readable-stream").Transform,o=e("duplexify"),a=e("ws"),s=e("safe-buffer").Buffer;t.exports=function(e,t,u){var l,c,f="browser"===n.title,d=!!r.WebSocket,h=f?function e(t,n,r){if(c.bufferedAmount>m)return void setTimeout(e,y,t,n,r);g&&"string"==typeof t&&(t=s.from(t,"utf8"));try{c.send(t)}catch(e){return r(e)}r()}:function(e,t,n){if(c.readyState!==c.OPEN)return void n();g&&"string"==typeof e&&(e=s.from(e,"utf8"));c.send(e,n)};t&&!Array.isArray(t)&&"object"==typeof t&&(u=t,t=null,("string"==typeof u.protocol||Array.isArray(u.protocol))&&(t=u.protocol));u||(u={});void 0===u.objectMode&&(u.objectMode=!(!0===u.binary||void 0===u.binary));var p=function(e,t,n){var r=new i({objectMode:e.objectMode});return r._write=t,r._flush=n,r}(u,h,(function(e){c.close(),e()}));u.objectMode||(p._writev=R);var m=u.browserBufferSize||524288,y=u.browserBufferTimeout||1e3;"object"==typeof e?c=e:(c=d&&f?new a(e,t):new a(e,t,u)).binaryType="arraybuffer";var b=void 0===c.addEventListener;c.readyState===c.OPEN?l=p:(l=l=o(void 0,void 0,u),u.objectMode||(l._writev=R),b?c.addEventListener("open",v):c.onopen=v);l.socket=c,b?(c.addEventListener("close",w),c.addEventListener("error",E),c.addEventListener("message",_)):(c.onclose=w,c.onerror=E,c.onmessage=_);p.on("close",(function(){c.close()}));var g=!u.objectMode;function v(){l.setReadable(p),l.setWritable(p),l.emit("connect")}function w(){l.end(),l.destroy()}function E(e){l.destroy(e)}function _(e){var t=e.data;t=t instanceof ArrayBuffer?s.from(t):s.from(t,"utf8"),p.push(t)}function R(e,t){for(var n=new Array(e.length),r=0;r",contributors:[{name:"Michael Heuberger",email:"michael.heuberger@binarykitchen.com"}],main:"prototype/js/videomail-client.js",scripts:{audit:"npx audit-ci --config audit-ci.json",build:"gulp build",lint:"eslint --color ./src ./test ./gulpfile.js","lint:fix":"npm --silent run lint -- --fix",major:"./etc/release.sh --importance=major",minor:"./etc/release.sh --importance=minor",patch:"./etc/release.sh --importance=patch",prettier:"prettier --check ./src ./test ./prototype/*.html gulpfile.js","prettier:fix":"prettier --write ./src ./test ./prototype/*.html gulpfile.js",test:"gulp test",watch:"NODE_NO_HTTP2=1 gulp watch"},prettier:"./prettier.config.cjs",dependencies:{"@babel/core":"7.25.2","add-eventlistener-with-options":"1.25.5",animitter:"3.0.0","audio-sample":"4.1.0","canvas-to-buffer":"4.1.0",contains:"0.1.1","core-js":"3.38.1","create-error":"0.3.1",deepmerge:"4.3.1",defined:"1.0.1",despot:"2.1.0","document-visibility":"1.0.1",filesize:"10.1.6","format-util":"1.0.5","get-form-data":"3.0.0",hidden:"1.1.1","humanize-duration":"3.32.1",hyperscript:"2.0.2",inherits:"2.0.4","insert-css":"2.0.0","is-power-of-two":"1.0.0",keymirror:"0.1.1","safe-json-stringify":"1.2.0",superagent:"10.1.0","ua-parser-js":"1.0.39","websocket-stream":"5.5.2"},devDependencies:{"@babel/eslint-parser":"7.25.1","@babel/plugin-transform-runtime":"7.25.4","@babel/preset-env":"7.25.4","@tsconfig/node22":"22.0.0","@tsconfig/strictest":"2.0.5","audit-ci":"7.1.0",autoprefixer:"10.4.20",babelify:"10.0.0","body-parser":"1.20.3",browserify:"17.0.0","connect-send-json":"1.0.0",cssnano:"6.0.5",del:"6.1.1",eslint:"8.57.0","eslint-config-prettier":"9.1.0","eslint-plugin-import":"2.30.0","eslint-plugin-node":"11.1.0","eslint-plugin-promise":"6.2.0","fancy-log":"2.0.0",glob:"10.4.2",gulp:"4.0.2","gulp-bump":"3.2.0","gulp-bytediff":"1.0.0","gulp-concat":"2.6.1","gulp-connect":"5.7.0","gulp-derequire":"3.0.0","gulp-if":"3.0.0","gulp-inject-string":"1.1.2","gulp-load-plugins":"2.0.8","gulp-plumber":"1.2.1","gulp-postcss":"10.0.0","gulp-rename":"2.0.0","gulp-sourcemaps":"3.0.0","gulp-stylus":"3.0.1","gulp-terser":"2.1.0",minimist:"1.2.8",nib:"1.2.0",postcss:"8.4.47",prettier:"3.3.3","prettier-plugin-curly":"0.2.2","prettier-plugin-packagejson":"2.5.2","prettier-plugin-sh":"0.14.0",router:"1.3.8",tape:"5.9.0","tape-catch":"1.0.6","tape-run":"11.0.0",typescript:"5.6.2","vinyl-buffer":"1.0.1","vinyl-source-stream":"2.0.0",watchify:"4.0.0"},engines:{node:"^22.8.0",npm:"^10.8.2"},readmeFilename:"README.md"}},{}],111:[function(e,t,n){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i,o=r(e("inherits")),a=r(e("./constants")),s=r(e("./events")),u=r(e("./resource")),l=r(e("./util/browser")),c=r(e("./util/adjustOptions")),f=r(e("./util/eventEmitter")),d=r(e("./wrappers/container"));var h=function(e){var t=(0,c.default)(e),n=new d.default(t),r=t.debug;this.events=s.default,f.default.call(this,t,"VideomailClient"),this.build=function(){var e=!1;e||n.isBuilt()||(r("Client: build()"),e=!0,n.build(),e=!1)},this.show=function(){return n.isBuilt()||this.build(),n.show()},this.replay=function(e,t){n.isBuilt()&&this.unload(),n.build({playerOnly:!0,replayParentElementId:t}),e&&(e=n.addPlayerDimensions(e)),n.buildForm(),n.loadForm(e),this.once(s.default.REPLAY_SHOWN,(function(){n.showReplayOnly()}));var r=n.getReplay();return r.setVideomail(e,!0),r.getElement()},this.startOver=function(e){var t=n.getReplay();t&&(t.hide(),t.reset()),n.startOver(e)},this.unload=function(e){this.removeAllListeners(),n.unload(e)},this.hide=function(){n.hide()},this.getByAlias=function(e,r){new u.default(t).getByAlias(e,(function(e,t){e?r(e):r(null,n.addPlayerDimensions(t))}))},this.get=this.getByAlias,this.getByKey=function(e,r){new u.default(t).getByKey(e,(function(e,t){e?r(e):r(null,n.addPlayerDimensions(t))}))},this.canRecord=function(){return function(e){return i||(i=new l.default(e)),i}(t).canRecord()},this.isDirty=function(){return n.isDirty()},this.isBuilt=function(){return n.isBuilt()},this.isRecording=function(){return n.isRecording()},this.submit=function(){n.submit()},this.getLogLines=function(){if(t.logger&&t.logger.getLines)return t.logger.getLines()}};(0,o.default)(h,f.default),Object.keys(a.default.public).forEach((function(e){h[e]=a.default.public[e]})),h.Events=s.default;n.default=h},{"./constants":112,"./events":113,"./resource":115,"./util/adjustOptions":118,"./util/browser":120,"./util/eventEmitter":122,"./wrappers/container":128,"@babel/runtime/helpers/interopRequireDefault":4,inherits:65}],112:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;n.default={SITE_NAME_LABEL:"x-videomail-site-name",VERSION_LABEL:"videomailClientVersion",public:{ENC_TYPE_APP_JSON:"application/json",ENC_TYPE_FORM:"application/x-www-form-urlencoded"}}},{}],113:[function(e,t,n){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i=r(e("keymirror"));n.default=(0,i.default)({BUILT:null,FORM_READY:null,LOADING_USER_MEDIA:null,USER_MEDIA_READY:null,CONNECTING:null,CONNECTED:null,DISCONNECTED:null,COUNTDOWN:null,RECORDING:null,STOPPING:null,STOPPED:null,PROGRESS:null,BEGIN_AUDIO_ENCODING:null,BEGIN_VIDEO_ENCODING:null,RESETTING:null,PAUSED:null,RESUMING:null,PREVIEW:null,PREVIEW_SHOWN:null,REPLAY_SHOWN:null,INVALID:null,VALIDATING:null,VALID:null,SUBMITTING:null,SUBMITTED:null,ERROR:null,BLOCKING:null,SENDING_FIRST_FRAME:null,FIRST_FRAME_SENT:null,HIDE:null,NOTIFYING:null,ENABLING_AUDIO:null,DISABLING_AUDIO:null,LOADED_META_DATA:null,EVENT_EMITTED:null,GOING_BACK:null,STARTING_OVER:null,ASKING_WEBCAM_PERMISSION:null,VISIBLE:null,INVISIBLE:null,SWITCH_FACING_MODE:null,SERVER_READY:null,UNLOADING:null})},{"@babel/runtime/helpers/interopRequireDefault":4,keymirror:69}],114:[function(e,t,n){(function(t){(function(){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i=e("../package.json"),o=r(e("./util/addOptionsFunctions")),a={logger:null,logStackSize:30,verbose:!("production"===t.env.NODE_ENV),baseUrl:"https://videomail.io",socketUrl:"wss://videomail.io",siteName:"videomail-client-demo",insertCss:!0,enablePause:!0,enableAutoPause:!0,enableSpace:!0,submitWithVideomail:!1,disableSubmit:!1,enableAutoValidation:!0,enableAutoUnload:!0,enableAutoSubmission:!0,enctype:"application/json",selectors:{containerId:"videomail",containerClass:"videomail",replayClass:"replay",userMediaClass:"userMedia",visualsClass:"visuals",buttonClass:null,buttonsClass:"buttons",recordButtonClass:"record",pauseButtonClass:"pause",resumeButtonClass:"resume",previewButtonClass:"preview",recordAgainButtonClass:"recordAgain",submitButtonClass:"submit",subjectInputName:"subject",fromInputName:"from",toInputName:"to",ccInputName:"cc",bccInputName:"bcc",bodyInputName:"body",sendCopyInputName:"sendCopy",keyInputName:"videomail_key",parentKeyInputName:"videomail_parent_key",formId:null,submitButtonId:null,submitButtonSelector:null},audio:{enabled:!1,switch:!1,volume:.2,bufferSize:"auto"},video:{fps:15,limitSeconds:30,countdown:3,width:"auto",height:"auto",facingMode:"user",facingModeButton:!1,stretch:!1},image:{quality:.42,types:["webp","jpeg"]},text:{pausedHeader:"Paused",pausedHint:null,sending:"Teleporting",encoding:"Encoding",limitReached:"Limit reached",audioOff:"Audio off",audioOn:"Audio on",buttons:{record:"Record video",recordAgain:"Record again",resume:"Resume",pause:"Pause",preview:"Preview"}},notifier:{entertain:!1,entertainClass:"bg",entertainLimit:6,entertainInterval:9e3},timeouts:{userMedia:2e4,connection:1e4,pingInterval:3e4},loadUserMediaOnRecord:!1,callbacks:{adjustFormDataBeforePosting:null},defaults:{from:null,to:null,cc:null,bcc:null,subject:null,body:null},displayErrors:!0,adjustFormOnBrowserError:!1,reportErrors:!1,fakeUaString:null,version:i.version},s=(0,o.default)(a);n.default=s}).call(this)}).call(this,e("_process"))},{"../package.json":110,"./util/addOptionsFunctions":117,"@babel/runtime/helpers/interopRequireDefault":4,_process:74}],115:[function(e,t,n){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=function(e){function t(t,n){return e.defaults[n]&&!t[n]&&(t[n]=e.defaults[n]),t}function n(e,t,n){Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0})}function r(e,t){if(t&&t.body&&t.body.error){var r=t.body.error,i=new Error;return n(i,"name",r.name),n(i,"type",r.type),n(i,"message",r.message||t.statusText),n(i,"cause",r.cause),n(i,"status",r.status),n(i,"code",r.code),n(i,"errno",r.errno),n(i,"details",r.details),n(i,"stack",r.stack),i}return e}function s(t,n,s){var u="".concat(e.baseUrl,"/videomail/").concat(t,"/").concat(n,"/snapshot");(0,i.default)("get",u).type("json").set("Accept","application/json").set("Timezone-Id",a).set(o.default.SITE_NAME_LABEL,e.siteName).timeout(e.timeouts.connection).end((function(e,t){if(e){var n=r(e,t);s(n)}else{var i=t.body?t.body:null;s(null,i)}}))}function u(t,n,s,u){u||(u=s,s=null);var l={},c="".concat(e.baseUrl,"/videomail/");s&&(c+=s);var f=(0,i.default)(t,c);l[o.default.SITE_NAME_LABEL]=e.siteName,f.query(l).set("Timezone-Id",a).send(n).timeout(e.timeout).end((function(e,t){if(e){var n=r(e,t);u(n)}else{var i=t.body&&t.body.videomail?t.body.videomail:null;u(null,i,t.body)}}))}this.getByAlias=function(e,t){s("alias",e,t)},this.getByKey=function(e,t){s("key",e,t)},this.reportError=function(t,n){var a={},s="".concat(e.baseUrl,"/client-error/"),u=(0,i.default)("post",s);a[o.default.SITE_NAME_LABEL]=e.siteName,u.query(a).send(t).timeout(e.timeout).end((function(e,t){if(e){var i=r(e,t);n&&n(i)}else n&&n()}))},this.post=function(n,r){(n=function(n){return e.defaults&&(n=t(n,"from"),n=t(n,"to"),n=t(n,"cc"),n=t(n,"bcc"),n=t(n,"subject"),n=t(n,"body")),n}(n))[o.default.VERSION_LABEL]=e.version,e.callbacks.adjustFormDataBeforePosting?e.callbacks.adjustFormDataBeforePosting(n,(function(e,t){e?r(e):u("post",t,r)})):u("post",n,r)},this.put=function(e,t){u("put",e,e.key,t)},this.form=function(t,n,s){var u;switch(e.enctype){case o.default.public.ENC_TYPE_APP_JSON:u="json";break;case o.default.public.ENC_TYPE_FORM:u="form";break;default:setTimeout((function(){s(new Error("Invalid enctype given: ".concat(e.enctype)))}),0)}u&&i.default.post(n).type(u).set("Timezone-Id",a).send(t).timeout(e.timeout).end((function(e,t){if(e){var n=r(e,t);s(n)}else s(null,t)}))}};var i=r(e("superagent")),o=r(e("./constants")),a=Intl.DateTimeFormat().resolvedOptions().timeZone},{"./constants":112,"@babel/runtime/helpers/interopRequireDefault":4,superagent:98}],116:[function(e,t,n){"use strict";t.exports='@-webkit-keyframes blink{0%{opacity:.9}35%{opacity:.9}50%{opacity:.1}85%{opacity:.1}to{opacity:.9}}@keyframes blink{0%{opacity:.9}35%{opacity:.9}50%{opacity:.1}85%{opacity:.1}to{opacity:.9}}.videomail .visuals{position:relative}.videomail .visuals video.replay{height:100%;width:100%}.videomail .countdown,.videomail .pausedHeader,.videomail .pausedHint,.videomail .recordNote,.videomail .recordTimer{height:auto;margin:0}.videomail .countdown,.videomail .facingMode,.videomail .paused,.videomail .recordNote,.videomail .recordTimer,.videomail noscript{position:absolute;z-index:100}.videomail .countdown,.videomail .pausedHeader,.videomail .pausedHint,.videomail .recordNote,.videomail .recordTimer,.videomail noscript{font-weight:700}.videomail .countdown,.videomail .paused,.videomail noscript{top:50%;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);width:100%}.videomail .countdown,.videomail .pausedHeader,.videomail .pausedHint{letter-spacing:4px;text-align:center;text-shadow:-2px 0 #fff,0 2px #fff,2px 0 #fff,0 -2px #fff}.videomail .countdown,.videomail .pausedHeader{font-size:460%;opacity:.9}.videomail .pausedHint{font-size:150%}.videomail .facingMode{background:rgba(30,30,30,.5);border:none;bottom:.6em;color:hsla(0,0%,96%,.9);font-family:monospace;font-size:1.2em;outline:none;padding:.1em .3em;right:.7em;-webkit-transition:all .2s ease;transition:all .2s ease;z-index:10}.videomail .facingMode:hover{background:rgba(50,50,50,.7);cursor:pointer}.videomail .recordNote,.videomail .recordTimer{background:hsla(0,0%,4%,.8);color:#00d814;font-family:monospace;opacity:.9;padding:.3em .4em;right:.7em;-webkit-transition:all 1s ease;transition:all 1s ease}.videomail .recordNote.near,.videomail .recordTimer.near{color:#eb9369}.videomail .recordNote.nigh,.videomail .recordTimer.nigh{color:#ea4b2a}.videomail .recordTimer{top:.7em}.videomail .recordNote{top:3.6em}.videomail .recordNote:before{-webkit-animation:blink 1s infinite;animation:blink 1s infinite;content:"REC"}.videomail .notifier{-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;overflow:hidden}.videomail .radioGroup{display:block}.videomail video{margin-bottom:0}.videomail video.userMedia{background-color:rgba(50,50,50,.1)}'},{}],117:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;n.default=function(e){var t=e.audio&&e.audio.enabled;return e.hasDefinedWidth=function(){return this.video.width&&"auto"!==this.video.width},e.hasDefinedHeight=function(){return this.video.height&&"auto"!==this.video.height},e.hasDefinedDimension=function(){return this.hasDefinedWidth()||this.hasDefinedHeight()},e.hasDefinedDimensions=function(){return this.hasDefinedWidth()&&this.hasDefinedHeight()},e.getRatio=function(){var e=1,t=this.videoHeight&&this.videoWidth;return this.hasDefinedDimensions()?e=t&&(this.videoHeight0&&void 0!==arguments[0]?arguments[0]:{},t=(0,i.default)(a.default,e,{arrayMerge:function(e,t){return t}}),n=new o.default(t);return t.logger=n,t.debug=t.logger.debug,(0,s.default)(t)}},{"./../options":114,"./addOptionsFunctions":117,"./collectLogger":121,"@babel/runtime/helpers/interopRequireDefault":4,deepmerge:27}],119:[function(e,t,n){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=function(e,t){var n,r,l,c=new a.default(t);function f(){return window.AudioContext||window.webkitAudioContext}function d(){return Boolean(f())&&Boolean(h())}function h(){if(!l){var e=f();l=new e}return l}this.init=function(e){t.debug("AudioRecorder: init()");var i=h().createGain();try{r=h().createMediaStreamSource(e)}catch(e){throw s.default.create("Webcam has no audio",e.toString(),t)}var a=t.audio.bufferSize;if("auto"===a&&(a=c.isFirefox()?512:2048),!(0,o.default)(a))throw s.default.create("Audio buffer size must be a power of two.",t);if(!t.audio.volume||t.audio.volume>1)throw s.default.create("Audio volume must be between zero and one.",t);i.gain.value=t.audio.volume,n=h().createScriptProcessor(a,u,u),r.connect(n),n.connect(h().destination),r.connect(i),i.connect(n)},this.record=function(r){t.debug("AudioRecorder: record()"),n.onaudioprocess=function(t){!function(t,n){if(e.isRecording()&&!e.isPaused()){var r=t.inputBuffer.getChannelData(0);n(new i.default(r))}}(t,r)}},this.stop=function(){t.debug("AudioRecorder: stop()"),n&&(n.onaudioprocess=void 0),r&&r.disconnect(),d()&&(h().close?h().close().then((function(){t.debug("AudioRecorder: audio context is closed"),l=null})).catch((function(e){throw s.default.create(e,t)})):l=null)},this.getSampleRate=function(){return d()?h().sampleRate:-1}};var i=r(e("audio-sample")),o=r(e("is-power-of-two")),a=r(e("./browser")),s=r(e("./videomailError")),u=1},{"./browser":120,"./videomailError":126,"@babel/runtime/helpers/interopRequireDefault":4,"audio-sample":14,"is-power-of-two":67}],120:[function(e,t,n){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i=r(e("@babel/runtime/helpers/typeof")),o=r(e("defined")),a=r(e("ua-parser-js")),s=r(e("./videomailError"));n.default=function(e){e||(e={});var t,n="http://www.mozilla.org/firefox/update/",r="https://www.microsoft.com/en-us/download/details.aspx?id=48126",u="http://www.google.com/chrome/",l=(0,o.default)(e.fakeUaString,"undefined"!=typeof window&&window.navigator&&window.navigator.userAgent,""),c=new a.default(l).getResult(),f="iOS"===c.os.name,d=parseFloat(c.browser.version),h="Chrome"===c.browser.name,p="Brave"===c.browser.name,m="Chromium"===c.browser.name,y="Firefox"===c.browser.name,b=parseFloat(c.os.version),g="Windows"===c.os.name,v="Edge"===c.browser.name||g&&b>=10,w=/Safari/.test(c.browser.name),E=/Opera/.test(c.browser.name),_=/Android/.test(c.os.name),R=h||m,S="Facebook"===c.browser.name,A=f||_,O=w&&d>=11,k=f&&b>=11,x=f&&b<11,T=e.fakeHttps||"https:"===window.location.protocol,j=R||y||_||E||v||O||k||p,D=this;function N(){var e;return(e=x?"On iPads or iPhones below iOS v11 this camera feature is missing. For now, we recommend you to upgrade iOS or to use an Android device.":function(){var e;return y?e=f?"Firefox on iOS is not ready for cameras yet. Hopefully in near future ...":'Probably you need to ')+"upgrade Firefox to fix this.":h?e=f?"Use Safari instead. Apple doesn't give Chrome access to iPhone cameras (booo).":'Probably you need to ')+"upgrade Chrome to fix this.":m?e='Probably you need to ')+"upgrade Chromium to fix this.":O?e="Probably you need to shut down Safari and restart it, this for correct webcam access.":w&&(e="Safari below version 11 has no webcam support. Better upgrade Safari or pick"+' Chrome ,')+' Firefox or Android.')),e}())||(e=D.isChromeBased()||D.isFirefox()||w?"For the webcam feature, your browser needs an upgrade.":S?"Hence we recommend you to use a real browser like "+'Chrome , ')+'Firefox or ')+'Edge .'):"Hence we recommend you to use either "+'Chrome , ')+'Firefox , ')+'Edge or Android.')),e}function M(e,t){var n;return e&&e.canPlayType&&(n=e.canPlayType("video/".concat(t))),""!==n&&n}this.canRecord=function(){var e="undefined"!=typeof navigator,t=!1;e&&navigator.mediaDevices&&navigator.mediaDevices.getUserMedia?t=!0:t="function"===(e&&(0,i.default)(navigator.getUserMedia_));return t},this.checkRecordingCapabilities=function(){var t;if(T){if(!j||!this.canRecord()){var n,r=[];x?r.push(s.default.IOS_PROBLEM):r.push(s.default.BROWSER_PROBLEM),n=j?A?S?"Sorry, the Facebook app cannot record from your mobile camera":"Sorry, your browser cannot record from your mobile camera":"Sorry, your browser cannot record from webcams":A?"Sorry, your browser is unable to use your mobile camera":"Sorry, your browser is unable to use webcams",x&&(e.reportErrors=!1),t=s.default.create(n,N(),e,{classList:r})}}else t=s.default.create("Sorry, your page is insecure","Please switch to HTTPS to ensure all is encrypted.",e,{classList:[s.default.BROWSER_PROBLEM]});return t},this.checkBufferTypes=function(){var t;return"undefined"==typeof window||void 0===window.atob?t=s.default.create("atob is not supported",e):void 0===window.ArrayBuffer?t=s.default.create("ArrayBuffers are not supported",e):void 0===window.Uint8Array&&(t=s.default.create("Uint8Arrays are not supported",e)),t},this.getVideoType=function(e){return!t&&e&&(M(e,"mp4")?t="mp4":M(e,"webm")&&(t="webm")),"webm"!==t&&"mp4"!==t&&(t="mp4"),t&&""!==t||(t="mp4"),t},this.getNoAccessIssue=function(){var t;return t=this.isChromeBased()?"Click on the allow button to grant access to your webcam":this.isFirefox()?"Please grant Firefox access to your webcam":"Your system does not let your browser access your webcam",s.default.create("Unable to access webcam",t,e)},this.isChromeBased=function(){return R},this.isFirefox=function(){return y},this.isEdge=function(){return v},this.isAndroid=function(){return _},this.isMobile=function(){return"mobile"===c.device.type},this.isOkSafari=function(){return O},this.isIOS=function(){return f},this.getUsefulData=function(){return{browser:c.browser,cpu:c.cpu.architecture?c.cpu:void 0,device:c.device.type?c.device:void 0,engine:c.engine,os:c.os.name&&c.os.version?c.os:void 0}}}},{"./videomailError":126,"@babel/runtime/helpers/interopRequireDefault":4,"@babel/runtime/helpers/typeof":10,defined:29,"ua-parser-js":104}],121:[function(e,t,n){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=new a.default(e),n=e.logger||console,r=[];function s(t,n){var a=o.default.apply(void 0,(0,i.default)(n));return r.length>e.logStackSize&&r.pop(),r.push("[".concat(t,"] ").concat(a)),a}this.debug=function(){var r=s("debug",[].slice.call(arguments,0));e.verbose&&(t.isFirefox()?n.debug(r):n.groupCollapsed?(n.groupCollapsed(r),n.trace("Trace"),n.groupEnd()):n.debug?n.debug(r):console.log(r))},this.error=function(){var e=[].slice.call(arguments,0);n.error(s("error",e))},this.warn=function(){var e=[].slice.call(arguments,0);n.warn(s("warn",e))},this.getLines=function(){return r}};var i=r(e("@babel/runtime/helpers/toConsumableArray")),o=r(e("format-util")),a=r(e("./browser"))},{"./browser":120,"@babel/runtime/helpers/interopRequireDefault":4,"@babel/runtime/helpers/toConsumableArray":7,"format-util":46}],122:[function(e,t,n){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=function(e,t){this.emit=function(n){var r,u=Array.prototype.slice.call(arguments,0);if(!n)throw s.default.create("You cannot emit without an event.",e);if(n===a.default.ERROR){var l=u[1];l=s.default.create(l,e),u[1]=l}e.debug&&("removeListener"!==n&&"newListener"!==n&&(u[1]&&(r=u.slice(1)),r?e.debug("".concat(t," emits ").concat(n," with ").concat((0,o.default)(r))):e.debug("".concat(t," emits ").concat(n))));return i.default.emit.apply(i.default,u)},this.on=function(e,t){return i.default.on(e,t)},this.once=function(e,t){return i.default.once(e,t)},this.listeners=function(e){return i.default.listeners(e)},this.removeListener=function(e,t){return i.default.removeListener(e,t)},this.removeAllListeners=function(){i.default.removeAllListeners()}};var i=r(e("despot")),o=r(e("safe-json-stringify")),a=r(e("./../events")),s=r(e("./videomailError"))},{"./../events":113,"./videomailError":126,"@babel/runtime/helpers/interopRequireDefault":4,despot:30,"safe-json-stringify":93}],123:[function(e,t,n){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i=e("filesize"),o=r(e("humanize-duration"));n.default={filesize:function(e,t){return(0,i.filesize)(e,{round:t})},toTime:function(e){return(0,o.default)(e)}}},{"@babel/runtime/helpers/interopRequireDefault":4,filesize:45,"humanize-duration":61}],124:[function(e,t,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;n.default=["loadstart","suspend","progress","abort","emptied","stalled","pause","loadeddata","waiting","playing","canplay","canplaythrough","seeking","seeked","ended","ratechange","durationchange","volumechange"]},{}],125:[function(e,t,n){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=function(e,t){if(null===e)return"null";if(void 0===e)return"undefined";if("string"==typeof e)return e;if(Array.isArray(e))return function(e){if(e&&e.length>0){var t=[];return e.forEach((function(e){e&&t.push((0,o.default)(e))})),a+t.join(s)}}(e);if("object"===(0,i.default)(e))return function(e,t){var n,r=Object.getOwnPropertyNames(e),i=t&&t.excludes||[],u=[];if(i.push("stack"),r&&r.length>0){var l=!1;r.forEach((function(t){i&&(l=i.indexOf(t)>=0),!l&&e[t]&&u.push((0,o.default)(e[t]))}))}1===u.length?n=u.join():u.length>1&&(n=a+u.join(s));return n}(e,t);return e.toString()};var i=r(e("@babel/runtime/helpers/typeof")),o=r(e("safe-json-stringify")),a="- ",s=" ".concat(a)},{"@babel/runtime/helpers/interopRequireDefault":4,"@babel/runtime/helpers/typeof":10,"safe-json-stringify":93}],126:[function(e,t,n){(function(t){(function(){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i=r(e("@babel/runtime/helpers/typeof")),o=r(e("./../resource")),a=r(e("create-error")),s=r(e("safe-json-stringify")),u=r(e("./pretty")),l="Videomail Error",c=(0,a.default)(Error,l,{title:void 0,message:void 0,explanation:void 0,logLines:void 0,siteName:void 0,cookie:void 0,location:void 0,err:void 0,promise:void 0,cause:void 0,reason:void 0,browser:void 0,cpu:void 0,device:void 0,engine:void 0,os:void 0,screen:void 0,orientation:void 0}),f=function(e){return(0,u.default)(e,{excludes:["stack"]})};c.PERMISSION_DENIED="PERMISSION_DENIED",c.NOT_ALLOWED_ERROR="NotAllowedError",c.NOT_CONNECTED="Not connected",c.DOM_EXCEPTION="DOMException",c.STARTING_FAILED="Starting video failed",c.MEDIA_DEVICE_NOT_SUPPORTED="MediaDeviceNotSupported",c.BROWSER_PROBLEM="browser-problem",c.WEBCAM_PROBLEM="webcam-problem",c.IOS_PROBLEM="ios-problem",c.OVERCONSTRAINED="OverconstrainedError",c.NOT_FOUND_ERROR="NotFoundError",c.NOT_READABLE_ERROR="NotReadableError",c.SECURITY_ERROR="SecurityError",c.TRACK_START_ERROR="TrackStartError",c.INVALID_STATE_ERROR="InvalidStateError",c.create=function(n,r,a,u){var d;if(n&&n.name===l)return n;!a&&r&&(a=r,r=void 0),a||(a={}),u||(u={});var h,p,m=a&&a.isAudioEnabled&&a.isAudioEnabled(),y=u.classList||[],b=new(0,e("./browser").default)(a);switch("object"===(0,i.default)(n)?n.name===c.TRACK_START_ERROR?h=c.TRACK_START_ERROR:n.name===c.SECURITY_ERROR?h=c.SECURITY_ERROR:8===n.code&&n.name===c.NotFoundError?h=c.NotFoundError:35===n.code||n.name===c.NOT_ALLOWED_ERROR?h=c.NOT_ALLOWED_ERROR:1===n.code&&1===n.PERMISSION_DENIED?h=c.PERMISSION_DENIED:n.constructor&&n.constructor.name===c.DOM_EXCEPTION?h=n.name===c.NOT_READABLE_ERROR?c.NOT_READABLE_ERROR:c.DOM_EXCEPTION:n.constructor&&n.constructor.name===c.OVERCONSTRAINED?h=c.OVERCONSTRAINED:n.explanation===c.STARTING_FAILED?h=n.explanation:n.name?h=n.name:"error"===n.type&&0===n.target.bufferedAmount&&(h=c.NOT_CONNECTED):h=n===c.NOT_CONNECTED?c.NOT_CONNECTED:n,h){case c.SECURITY_ERROR:p="The operation was insecure",r="Probably you have disallowed Cookies for this page?",y.push(c.BROWSER_PROBLEM);break;case c.OVERCONSTRAINED:p="Invalid webcam constraints",r=n.constraint?"width"===n.constraint?"Your webcam does not meet the width requirement.":"Unmet constraint: ".concat(n.constraint):n.toString();break;case"MediaDeviceFailedDueToShutdown":p="Webcam is shutting down",r="This happens your webcam is already switching off and not giving you permission to use it.";break;case"SourceUnavailableError":p="Source of your webcam cannot be accessed",r="Probably it is locked from another process or has a hardware error.",n.explanation&&(n.explanation+=" Details: ".concat(n.explanation));break;case c.NOT_FOUND_ERROR:case"NO_DEVICES_FOUND":m?(p="No webcam nor microphone found",r="Your browser cannot find a webcam with microphone attached to your machine."):(p="No webcam found",r="Your browser cannot find a webcam attached to your machine."),y.push(c.WEBCAM_PROBLEM);break;case"PermissionDismissedError":p="Ooops, you didn't give me any permissions?",r="Looks like you skipped the webcam permission dialogue. Please grant access next time the dialogue appears.",y.push(c.WEBCAM_PROBLEM);break;case c.NOT_ALLOWED_ERROR:case c.PERMISSION_DENIED:case"PermissionDeniedError":p="Permission denied",r="Cannot access your webcam. This can have two reasons: a) you blocked access to webcam; or b) your webcam is already in use.",y.push(c.WEBCAM_PROBLEM);break;case"HARDWARE_UNAVAILABLE":p="Webcam is unavailable",r="Maybe it is already busy in another window?",(b.isChromeBased()||b.isFirefox())&&(r+=" Or you have to allow access above?"),y.push(c.WEBCAM_PROBLEM);break;case c.NOT_CONNECTED:p="Unable to connect",r="Either the videomail server or your connection is down. Trying to reconnect every few seconds …";break;case"NO_VIDEO_FEED":p="No video feed found!",r="Your webcam is already used in another browser.",y.push(c.WEBCAM_PROBLEM);break;case c.STARTING_FAILED:p="Starting video failed",r="Most likely this happens when the webcam is already active in another browser",y.push(c.WEBCAM_PROBLEM);break;case"DevicesNotFoundError":p="No available webcam could be found",r="Looks like you do not have any webcam attached to your machine; or the one you plugged in is already used.",y.push(c.WEBCAM_PROBLEM);break;case c.NOT_READABLE_ERROR:case c.TRACK_START_ERROR:p="No access to webcam",r="A hardware error occurred which prevented access to your webcam",y.push(c.WEBCAM_PROBLEM);break;case c.INVALID_STATE_ERROR:p="Invalid state",r="Video recording stream from your webcam already has finished",y.push(c.WEBCAM_PROBLEM);break;case c.DOM_EXCEPTION:switch(n.code){case 8:p="Requested webcam not found",r="A webcam is needed but could not be found",y.push(c.WEBCAM_PROBLEM);break;case 9:var g="https:".concat(window.location.href.substring(window.location.protocol.length));p="Security upgrade needed",r='Click here to switch to HTTPs which is more safe ')+" and enables encrypted videomail transfers.",y.push(c.BROWSER_PROBLEM);break;case 11:p="Invalid State",r="The object is in an invalid, unusable state",y.push(c.BROWSER_PROBLEM);break;default:p="DOM Exception",r=f(n),y.push(c.BROWSER_PROBLEM)}break;case c.MEDIA_DEVICE_NOT_SUPPORTED:p="Media device not supported",r=f(n);break;default:var v=r;if(r&&"object"===(0,i.default)(r)&&(r=f(r)),!r&&v&&(r=v.explanation?v.explanation:"Inspected: ".concat((0,s.default)(v))),n)if("string"==typeof n)p=n;else if(n.message&&(p=f(n.message)+" (pretty)"),n.explanation&&(r?r+="; ".concat(f(n.explanation)):r=f(n.explanation)),n.details){var w=f(n.details);r?w&&(r+="; ".concat(w)):r=w}p||(h&&(p=h+" (weird)"),!r&&n&&(r=f(n)),f(p)===r&&(r=void 0))}var E=null;a.logger&&a.logger.getLines&&(E=a.logger.getLines()),(a&&a.debug||console.log)("VideomailError: create()",p,r||"(no explanation set)");var _,R=b.getUsefulData(),S=t.document.cookie.split("; "),A={title:"videomail-client error",message:p,explanation:r,logLines:E,siteName:a.siteName,browser:R.browser,cpu:R.cpu,device:R.device,engine:R.engine,os:R.os,location:window.location.href,cookie:S.length>0?S.join(",\n"):void 0,screen:[screen.width,screen.height,screen.colorDepth].join("×"),orientation:"string"==typeof screen.orientation?screen.orientation:screen.orientation.type.toString(),errNo:null==n?void 0:n.errno,errCode:null==n?void 0:n.code,errName:null==n?void 0:n.name,errType:null==n?void 0:n.type,errConstraint:null==n?void 0:n.constraint,errConstructorName:null==n||null===(d=n.constructor)||void 0===d?void 0:d.name},O=new c(n instanceof Error?n:p,A),k=!1;function x(e){return y.indexOf(e)>=0}return a.reportErrors&&(k="function"==typeof a.reportErrors?a.reportErrors(O):a.reportErrors),k&&(_=new o.default(a)),_&&_.reportError(O,(function(e){e&&console.error("Unable to report error",e)})),O.getClassList=function(){return y},O.removeDimensions=function(){return x(c.IOS_PROBLEM)||b.isMobile()},O.hideButtons=function(){return x(c.BROWSER_PROBLEM)||u.browserProblem||x(c.IOS_PROBLEM)},O.hideForm=function(){return x(c.IOS_PROBLEM)},O};n.default=c}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./../resource":115,"./browser":120,"./pretty":125,"@babel/runtime/helpers/interopRequireDefault":4,"@babel/runtime/helpers/typeof":10,"create-error":26,"safe-json-stringify":93}],127:[function(e,t,n){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i=r(e("contains")),o=r(e("hidden")),a=r(e("hyperscript")),s=r(e("inherits")),u=r(e("../events")),l=r(e("../util/eventEmitter")),c=function(e,t){l.default.call(this,t,"Buttons");var n,r,s,c,f,d,h,p,m,y,b=this,g=t.debug;function v(e){e&&!Array.isArray(e)&&(e=[e]),e&&e.forEach((function(e){(0,o.default)(e,!0)}))}function w(e){e&&!Array.isArray(e)&&(e=[e]),e&&e.forEach((function(e){(0,o.default)(e,!1)}))}function E(e){var t=e&&!0;return e&&!Array.isArray(e)&&(e=[e]),e&&e.forEach((function(e){t&&(t=e&&!(0,o.default)(e))})),t}function _(e){e&&!Array.isArray(e)&&(e=[e]),e&&e.forEach((function(e){e&&("INPUT"===e.tagName||"BUTTON"===e.tagName?e.disabled=!0:e.classList.add("disabled"))}))}function R(e){e&&!Array.isArray(e)&&(e=[e]),e&&e.forEach((function(e){e&&("INPUT"===e.tagName||"BUTTON"===e.tagName?e.disabled=!1:e.classList.remove("disabled"))}))}function S(e,t,n,r){return r&&_(e),n?e.type=n:e.type||(e.type="button"),!t&&v(e),e}function A(e,t){e.onclick=function(e){e&&e.preventDefault();try{t({event:e})}catch(e){b.emit(u.default.ERROR,e)}}}function O(e){var t,r;return e.id&&(t=document.getElementById(e.id)),t||(t=(0,a.default)("input#".concat(e.id),{type:"radio",name:e.name,value:e.value,checked:e.checked}),r=(0,a.default)("span.radioGroup",t,(0,a.default)("label",{htmlFor:e.id},e.label)),h&&(0,i.default)(n,h)?n.insertBefore(r,h):n.appendChild(r)),e.changeHandler&&(t.onchange=e.changeHandler),_(t),t}function k(e,r,o,s,u,l,c){var f,d=!(arguments.length>7&&void 0!==arguments[7])||arguments[7];return(f=u?document.getElementById(u):c?document.querySelector(c):n.querySelector(".".concat(e)))?f=S(f,s,l,d):(t.selectors.buttonClass&&(e+=".".concat(t.selectors.buttonClass)),(f=S(f=(0,a.default)("button.".concat(e)),s,l,d)).innerHTML=r,h&&(0,i.default)(n,h)?n.insertBefore(f,h):n.appendChild(f)),o&&A(f,o),f}function x(e){E(d)||e.paused||w(r),e.paused||(_(f),v(f)),t.enableAutoValidation||R(h)}function T(){v(r),v(d),s&&(w(s),R(s)),R(f),w(f)}function j(){_(d),e.beginWaiting(),e.recordAgain()}function D(){e.submit()}function N(t){_(r),e.record(t)}function M(){g("Buttons: initEvents()"),b.on(u.default.USER_MEDIA_READY,(function(e){e.switchingFacingMode||function(e){x(e),E(r)&&!e.recordWhenReady?R(r):E(d)&&!e.recordWhenReady&&R(d),t.enableAutoValidation&&_(h),e.recordWhenReady||(E(p)&&R(p),E(m)&&R(m))}(e)})).on(u.default.PREVIEW,(function(){v(r),v(f),_(p),_(m),w(d),R(d),t.enableAutoValidation||R(h)})).on(u.default.PAUSED,(function(){b.adjustButtonsForPause()})).on(u.default.RECORDING,(function(e){!function(e){e>1?T():(_(m),_(p),_(d),_(r))}(e)})).on(u.default.FIRST_FRAME_SENT,(function(){T()})).on(u.default.RESUMING,(function(){v(c),v(r),s&&(R(s),w(s))})).on(u.default.STOPPING,(function(){_(f),_(r),v(s),v(c)})).on(u.default.COUNTDOWN,(function(){_(r),_(m),_(p)})).on(u.default.SUBMITTING,(function(){g("Buttons: onSubmitting()"),_(h),_(d)})).on(u.default.RESETTING,(function(){_(h),b.reset()})).on(u.default.INVALID,(function(){t.enableAutoValidation&&_(h)})).on(u.default.VALID,(function(){t.enableAutoValidation&&R(h)})).on(u.default.SUBMITTED,(function(){_(f),_(d),_(r),_(h)})).on(u.default.HIDE,(function(){v(r),v(f),v(d),v(c),v(p),v(m)})).on(u.default.FORM_READY,(function(e){x(e)})).on(u.default.REPLAY_SHOWN,(function(){b.hide()})).on(u.default.GOING_BACK,(function(){v(d),w(r),w(h)})).on(u.default.ENABLING_AUDIO,(function(){g("Buttons: onEnablingAudio()"),_(r),_(p),_(m)})).on(u.default.DISABLING_AUDIO,(function(){g("Buttons: onDisablingAudio()"),_(r),_(p),_(m)})).on(u.default.STARTING_OVER,(function(){w(h)})).on(u.default.CONNECTED,(function(){t.loadUserMediaOnRecord&&E(r)&&R(r)})).on(u.default.DISCONNECTED,(function(){_(r),_(p),_(m)})).on(u.default.ERROR,(function(e){e.hideButtons&&e.hideButtons()&&t.adjustFormOnBrowserError&&b.hide()}))}this.enableSubmit=function(){R(h)},this.adjustButtonsForPause=function(){b.isCountingDown()||(s&&v(s),w(c),R(c),v(r),w(f),R(f))},this.reset=function(){t.debug("Buttons: reset()"),_(s),_(c),_(r),_(f),_(d),_(p),_(m)},this.isRecordAgainButtonEnabled=function(){return!d.disabled},this.isReady=function(){return!!r&&this.isRecordButtonEnabled()},this.isRecordButtonEnabled=function(){return!r.disabled},this.setSubmitButton=function(e){h=e},this.getSubmitButton=function(){return h},this.build=function(){(n=e.querySelector(".".concat(t.selectors.buttonsClass)))||(n=(0,a.default)("div.".concat(t.selectors.buttonsClass)),e.appendChild(n)),t.disableSubmit||(h?_(h):h=k(t.selectors.submitButtonClass,"Submit",null,!0,t.selectors.submitButtonId,"submit",t.selectors.submitButtonSelector,t.enableAutoValidation),!e.hasForm()&&h&&A(h,D)),r=k(t.selectors.recordButtonClass,t.text.buttons.record,N,!1),t.enablePause&&(s=k(t.selectors.pauseButtonClass,t.text.buttons.pause,e.pause,!1)),t.enablePause&&(c=k(t.selectors.resumeButtonClass,t.text.buttons.resume,e.resume,!1)),f=k(t.selectors.previewButtonClass,t.text.buttons.preview,e.stop,!1),d=k(t.selectors.recordAgainButtonClass,t.text.buttons.recordAgain,j,!1),t.audio&&t.audio.switch&&(m=O({id:"audioOffOption",name:"audio",value:"off",label:t.text.audioOff,checked:!t.isAudioEnabled(),changeHandler:function(){e.disableAudio()}}),p=O({id:"audioOnOption",name:"audio",value:"on",label:t.text.audioOn,checked:t.isAudioEnabled(),changeHandler:function(){e.enableAudio()}})),!y&&M(),y=!0},this.unload=function(){y&&(b.reset(),g("Buttons: unload()"),b.removeAllListeners(),b.hide(),y=!1)},this.hide=function(e){v(n),e&&e.deep&&(v(r),v(s),v(c),v(f),v(d),v(h),v(p),v(m))},this.show=function(){w(n)},this.isCountingDown=function(){return e.isCountingDown()}};(0,s.default)(c,l.default);n.default=c},{"../events":113,"../util/eventEmitter":122,"@babel/runtime/helpers/interopRequireDefault":4,contains:24,hidden:60,hyperscript:62,inherits:65}],128:[function(e,t,n){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i=r(e("@babel/runtime/helpers/defineProperty")),o=r(e("document-visibility")),a=r(e("hidden")),s=r(e("insert-css")),u=r(e("safe-json-stringify")),l=r(e("inherits")),c=r(e("../styles/css/main.min.css.js")),f=r(e("../events")),d=r(e("../resource")),h=r(e("../util/eventEmitter")),p=r(e("../util/videomailError")),m=r(e("./buttons")),y=r(e("./dimension")),b=r(e("./form")),g=r(e("./optionsWrapper")),v=r(e("./visuals")),w=function(e){h.default.call(this,e,"Container");var t,n,r,l=this,w=(0,o.default)(),E=new v.default(this,e),_=new m.default(this,e),R=new d.default(e),S=document.querySelector("html"),A=e.debug,O=!1,k=!1,x=!1;function T(){return t&&"FORM"===t.tagName?t:e.selectors.formId?document.getElementById(e.selectors.formId):function(){if(t)return t.closest("form")}()}function j(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];A("Container: initEvents (playerOnly = ".concat(t,")")),e.enableAutoUnload&&window.addEventListener("beforeunload",(function(e){l.unload(e)}),{once:!0}),t||w.onChange((function(t){n&&(t?(e.isAutoPauseEnabled()&&l.isCountingDown()&&l.resume(),l.emit(f.default.VISIBLE)):(e.isAutoPauseEnabled()&&(l.isCountingDown()||l.isRecording())&&l.pause("document invisible"),l.emit(f.default.INVISIBLE)))})),e.enableSpace&&(t||window.addEventListener("keypress",(function(t){var n,r=null===(n=t.target)||void 0===n?void 0:n.tagName;t.target.isContentEditable||"true"===t.target.contentEditable||!0===t.target.contentEditable||"INPUT"===r||"TEXTAREA"===r||32===t.code&&(t.preventDefault(),e.enablePause?E.pauseOrResume():E.recordOrStop())}))),l.on(f.default.ERROR,(function(t){!function(t){O=!0,t.stack?e.logger.error(t.stack):e.logger.error(t.message),e.displayErrors?E.error(t):E.reset()}(t),l.endWaiting(),t.removeDimensions&&t.removeDimensions()&&N()})),t||l.on(f.default.LOADED_META_DATA,(function(){D()}))}function D(){if(e.video.stretch)N();else if(t){var n=E.getRecorderWidth(!0);if(n<1)throw p.default.create("Recorder width cannot be less than 1!",e);t.style.width="".concat(n,"px")}}function N(){t&&(t.style.width="auto")}function M(e,t,n,r,i){l.endWaiting(),e?l.emit(f.default.ERROR,e):(k=!0,r&&i&&i.body&&Object.keys(i.body).forEach((function(e){r[e]=i.body[e]})),l.emit(f.default.SUBMITTED,n,r||i),i&&"text/html"===i.type&&i.text&&(document.body.innerHTML=i.text))}!function(){if(e.hasDefinedWidth()&&e.video.width%2!=0)throw p.default.create("Width must be divisible by two.",e);if(e.hasDefinedHeight()&&e.video.height%2!=0)throw p.default.create("Height must be divisible by two.",e)}(),this.buildForm=function(){if(!r){var t=T();if(t){var n=(r=new b.default(l,t,e)).findSubmitButton();n&&_.setSubmitButton(n),r.build()}}},this.addPlayerDimensions=function(e){try{if(!e)throw new Error("Videomail data is missing for attaching player dimensions");var t=l.getReplay().getParentElement();return e.playerHeight=l.calculateHeight({responsive:!0,videoWidth:e.width,ratio:e.height/e.width},t),e.playerWidth=l.calculateWidth({responsive:!0,videoHeight:e.playerHeight,ratio:e.height/e.width}),e}catch(e){l.emit(f.default.ERROR,e)}},this.limitWidth=function(n){return y.default.limitWidth(t,n,e)},this.limitHeight=function(t){return y.default.limitHeight(t,e)},this.calculateWidth=function(t){return y.default.calculateWidth(g.default.merge(e,t))},this.calculateHeight=function(n,r){return r||(r=t||document.body),y.default.calculateHeight(r,g.default.merge(e,n))},this.hasElement=function(){return Boolean(t)},this.build=function(){var r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{playerOnly:!1,replayParentElementId:void 0,replayParentElement:void 0};A("Container: build (".concat((0,u.default)(r),")"));try{e.insertCss&&(0,s.default)(c.default,{prepend:!0});var i,o,a=e.selectors.containerId;if(t=a?document.getElementById(e.selectors.containerId):document.createElement("div"),r.replayParentElement?i=r.replayParentElement:r.replayParentElementId&&(i=document.getElementById(r.replayParentElementId)),!t&&i)null!==(o=i)&&void 0!==o&&o.classList.contains(e.selectors.containerClass)&&(t=i);!n&&j(r.playerOnly),r.playerOnly||D(),l.buildForm(),function(){var n=arguments.length>0&&void 0!==arguments[0]&&arguments[0],r=arguments.length>1?arguments[1]:void 0;A("Container: buildChildren (playerOnly = ".concat(n).concat(r?', replayParentElement="'.concat(r.id,'"'):"",")")),t&&t.classList.add(e.selectors.containerClass),n||_.build(),E.build(n,r)}(r.playerOnly,r.playerOnly?i||t:void 0),O?A("Container: building failed due to an error."):(A("Container: built."),n=!0,l.emit(f.default.BUILT))}catch(e){l.emit(f.default.ERROR,e)}return t},this.getSubmitButton=function(){return _.getSubmitButton()},this.querySelector=function(e){if(t)return t.querySelector(e)},this.beginWaiting=function(){S.classList&&S.classList.add("wait")},this.endWaiting=function(){S.classList&&S.classList.remove("wait")},this.appendChild=function(e){t&&t!==e&&t.appendChild(e)},this.insertBefore=function(e,n){t&&t.insertBefore(e,n)},this.unload=function(e){try{if(!n)return;A("Container: unload(".concat(e?(0,u.default)(e):"",")")),l.emit(f.default.UNLOADING),function(e){E.unload(e),_.unload(),r&&(r.unload(),r=void 0),l.endWaiting()}(e),l.removeAllListeners(),l.hide(),n=k=!1}catch(e){l.emit(f.default.ERROR,e)}},this.show=function(){if(!t)throw new Error("No container element exists.");if((0,a.default)(t,!1),E.show(),!O){var e=l.isPaused();e&&_.adjustButtonsForPause(),_.show(),l.isReplayShown()?l.emit(f.default.PREVIEW):l.emit(f.default.FORM_READY,{paused:e})}return t},this.hide=function(){A("Container: hide()"),O=!1,l.isRecording()&&l.pause(),E.hide(),k&&(_.hide(),(0,a.default)(t,!0))},this.startOver=function(e){try{A("Container: startOver(".concat(e?(0,u.default)(e):"",")")),k=!1,l.build(),l.emit(f.default.STARTING_OVER),E.back(e,(function(){l.enableForm(),e&&e.keepHidden||l.show(e)}))}catch(e){l.emit(f.default.ERROR,e)}},this.showReplayOnly=function(){O=!1,l.isRecording()&&l.pause(),E.showReplayOnly(),k&&_.hide()},this.isNotifying=function(){return E.isNotifying()},this.isPaused=function(){return E.isPaused()},this.pause=function(e){E.pause(e)},this.validate=function(t,n){var o=!0,a=!0;if(e.enableAutoValidation?n?o=n:l.isNotifying()?o=!1:E.isConnected()?o=E.isUserMediaLoaded()||E.isReplayShown():E.isConnecting()&&(o=!1):(o=!1,x=!0),o){var s,u=null==t||null===(s=t.target)||void 0===s?void 0:s.name;u?l.emit(f.default.VALIDATING,{targetName:u}):l.emit(f.default.VALIDATING,t);var c,d,h=E.validate()&&_.isRecordAgainButtonEnabled();if(r){var p=r.getInvalidElement();if(p?(a=!1,c='Input "'.concat(p.name,'" seems wrong 🤔'),d=(0,i.default)({},p.name,p.value)):E.isHidden()||h||(_.isReady()||l.isRecording()||l.isPaused()||l.isCountingDown())&&(a=!1,c="Don't forget to record a video 😉",d={key:void 0}),a){var m,y,b,g=r.getRecipients(),v="to"in g,w="cc"in g,R="bcc"in g,S=(null===(m=g.to)||void 0===m?void 0:m.length)>0,A=(null===(y=g.cc)||void 0===y?void 0:y.length)>0,O=(null===(b=g.bcc)||void 0===b?void 0:b.length)>0;v?S||(w&&R?A||O||(a=!1):w?A||(a=!1):R&&O||(a=!1)):w&&(A||R&&!O&&(a=!1)),a||(c="At least one recipient is required")}}else a=h;a?l.emit(f.default.VALID):d?l.emit(f.default.INVALID,c,d):l.emit(f.default.INVALID,c),x=a}return a},this.disableForm=function(e){r&&r.disable(e)},this.enableForm=function(e){r&&r.enable(e)},this.hasForm=function(){return Boolean(r)},this.submitAll=function(t,n,i){var o=[n,i].filter(Boolean).join(": ");function a(){l.beginWaiting(),l.disableForm(!0),l.emit(f.default.SUBMITTING)}A("Container: submitAll(".concat(o,")"));Boolean(t[e.selectors.keyInputName])?(a(),function(e,t,n){var i=r.transformFormData(e);!function(e){return!e||"POST"===e.toUpperCase()}(t)?function(e){return!!e&&"PUT"===e.toUpperCase()}(t)&&R.put(i,n):(i.recordingStats=E.getRecordingStats(),i.width=E.getRecorderWidth(!0),i.height=E.getRecorderHeight(!0),navigator.connection&&(i.connection={downlink:"".concat(navigator.connection.downlink," Mbit/s"),effectiveType:navigator.connection.effectiveType,rtt:navigator.connection.rtt,type:navigator.connection.type}),R.post(i,n))}(t,n,(function(e,t,n){M(e||null,0,t,n)}))):e.enableAutoSubmission&&(a(),function(t,n,r,i){r&&""!==r||(r=e.baseUrl),n&&e.submitWithVideomail&&(t.videomail=n.videomail),R.form(t,r,i)}(t,null,i,(function(e,t){M(e,0,null,null,t)})))},this.isBuilt=function(){return n},this.isReplayShown=function(){return E.isReplayShown()},this.isDirty=function(){var e=!1;return r&&(E.isRecorderUnloaded()||k?e=!1:(l.isReplayShown()||l.isPaused())&&(e=!0)),e},this.getReplay=function(){return E.getReplay()},this.isOutsideElementOf=function(e){return e.parentNode!==t&&e!==t},this.hideForm=function(e){r&&r.hide(),_&&_.hide(e)},this.loadForm=function(e){r&&(r.loadVideomail(e),l.validate())},this.enableAudio=function(){e.setAudioEnabled(!0),l.emit(f.default.ENABLING_AUDIO)},this.disableAudio=function(){e.setAudioEnabled(!1),l.emit(f.default.DISABLING_AUDIO)},this.submit=function(){A("Container: submit()"),x&&r&&r.doTheSubmit()},this.isCountingDown=E.isCountingDown.bind(E),this.isRecording=E.isRecording.bind(E),this.record=E.record.bind(E),this.resume=E.resume.bind(E),this.stop=E.stop.bind(E),this.recordAgain=E.recordAgain.bind(E)};(0,l.default)(w,h.default);n.default=w},{"../events":113,"../resource":115,"../styles/css/main.min.css.js":116,"../util/eventEmitter":122,"../util/videomailError":126,"./buttons":127,"./dimension":129,"./form":130,"./optionsWrapper":131,"./visuals":132,"@babel/runtime/helpers/defineProperty":3,"@babel/runtime/helpers/interopRequireDefault":4,"document-visibility":31,hidden:60,inherits:65,"insert-css":66,"safe-json-stringify":93}],129:[function(e,t,n){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i=r(e("./../util/videomailError"));function o(e,t){if(t.hasDefinedHeight()&&(e=e?Math.min(t.video.height,e):t.video.height),Number.isInteger(e)&&e<1)throw i.default.create("Got a video height less than 1 (".concat(e,") while figuring out the minimum!"),t);return e}n.default={limitWidth:function(e,t,n){if(!e)return t;var r,o=function(e){var t=0,n=e.getBoundingClientRect();return n&&(t=n.right-n.left),t<1&&(t=(n=document.body.getBoundingClientRect()).right-n.left),t}(e);if(r=t?o>0&&o0&&void 0!==arguments[0]&&arguments[0],i=arguments.length>1?arguments[1]:void 0;g("Visuals: buildChildren (playerOnly = ".concat(r).concat(i?', replayParentElement="'.concat(i.id,'"'):"",")")),(t=e.querySelector("noscript"))&&((t=(0,o.default)("noscript")).innerHTML="Please enable Javascript",n.appendChild(t)),r||(b.build(),y.build()),p.build(i)}function w(){t.video.stretch?E():n&&m&&(n.style.width="".concat(a.getRecorderWidth(!0),"px"),n.style.height="".concat(a.getRecorderHeight(!0),"px"))}function E(){n&&(n.style.width="auto",n.style.height="auto")}function _(){return!a.isNotifying()&&!p.isShown()&&!a.isCountingDown()}this.getRatio=function(){return n.clientWidth?n.clientHeight/n.clientWidth:0},this.isCountingDown=function(){return y.isCountingDown()},this.build=function(){var i=arguments.length>0&&void 0!==arguments[0]&&arguments[0],s=arguments.length>1?arguments[1]:void 0;if(g("Visuals: build (playerOnly=".concat(i,")")),e){if(!(n=s?s.querySelector(".".concat(t.selectors.visualsClass)):e.querySelector(".".concat(t.selectors.visualsClass)))){n=i&&s?s:(0,o.default)("div.".concat(t.selectors.visualsClass));var l=e.querySelector(".".concat(t.selectors.buttonsClass));l&&!e.isOutsideElementOf(l)?e.insertBefore(n,l):e.appendChild(n)}n.classList.add("visuals")}w(),!r&&function(){var n=arguments.length>0&&void 0!==arguments[0]&&arguments[0];n||(g("Visuals: initEvents (playerOnly = ".concat(n,")")),a.on(u.default.USER_MEDIA_READY,(function(){r=!0,a.endWaiting(),e.enableForm(!1)})).on(u.default.PREVIEW,(function(){a.endWaiting()})).on(u.default.BLOCKING,(function(n){(n.hideForm||t.adjustFormOnBrowserError)&&e.disableForm(!0)})).on(u.default.PREVIEW_SHOWN,(function(){e.validate(void 0,!0)})).on(u.default.LOADED_META_DATA,(function(){w()})).on(u.default.ERROR,(function(e){e.removeDimensions&&e.removeDimensions()&&E()})))}(i),v(i,n||s),r=!0},this.querySelector=function(e){return n&&n.querySelector(e)},this.appendChild=function(e){n&&n.appendChild(e)},this.removeChild=function(e){n.removeChild(e)},this.reset=function(){this.endWaiting(),m.reset()},this.beginWaiting=function(){e.beginWaiting()},this.endWaiting=function(){e.endWaiting()},this.stop=function(e){m.stop(e),y.hidePause()},this.back=function(e,t){!t&&e&&(t=e,e={}),g("Visuals: back(".concat(e?(0,s.default)(e):"",")")),p.hide(),b.hide(),e&&e.keepHidden?(m.hide(),t&&t()):m.back(t)},this.recordAgain=function(){this.back((function(){t.loadUserMediaOnRecord?a.once(u.default.SERVER_READY,(function(){a.record()})):a.once(u.default.USER_MEDIA_READY,(function(){a.record()}))}))},this.unload=function(e){try{if(!r)return;g("Visuals: unload(".concat(e?(0,s.default)(e):"",")")),a.removeAllListeners(),m.unload(e),y.unload(e),p.unload(),e instanceof Error||this.hide(),r=!1}catch(e){this.emit(u.default.ERROR,e)}},this.isNotifying=function(){return b.isVisible()},this.isReplayShown=function(){return p.isShown()},this.pause=function(e){m.pause(e),y.showPause()},this.resume=function(){y.isCountingDown()?y.resumeCountdown():m.resume(),y.hidePause()},this.pauseOrResume=function(){_.call(this)&&(this.isRecording()?this.pause():m.isPaused()?this.resume():m.isReady()&&this.record())},this.recordOrStop=function(){_()&&(this.isRecording()?this.stop():m.isReady()&&this.record())},this.record=function(){t.video.countdown?(this.emit(u.default.COUNTDOWN),y.startCountdown(m.record.bind(m))):m.record()},this.getRecorder=function(){return m},this.getReplay=function(){return p},this.validate=function(){return m.validate()&&this.isReplayShown()},this.getRecordingStats=function(){return m.getRecordingStats()},this.getAudioSampleRate=function(){return m.getAudioSampleRate()},this.isPaused=function(){return m.isPaused()},this.error=function(e){b.error(e)},this.hide=function(){n&&((0,i.default)(n,!0),this.emit(u.default.HIDE))},this.isHidden=function(){return!r||(n?(0,i.default)(n):void 0)},this.showVisuals=function(){(0,i.default)(n,!1)},this.show=function(){arguments.length>0&&void 0!==arguments[0]&&arguments[0]||this.isReplayShown()||m.build(),this.showVisuals()},this.showReplayOnly=function(){this.show(!0),m.hide(),b.hide()},this.isRecorderUnloaded=function(){return m.isUnloaded()},this.isConnecting=function(){return m.isConnecting()},this.getRecorderWidth=function(e){return m.getRecorderWidth(e)},this.getRecorderHeight=function(e,t){return m.getRecorderHeight(e,t)},this.limitWidth=function(n){return e.limitWidth(n,t)},this.limitHeight=function(t){return e.limitHeight(t)},this.calculateWidth=function(t){return e.calculateWidth(t)},this.calculateHeight=function(t){return e.calculateHeight(t)},this.getReplay=function(){return p},this.getBoundingClientRect=function(){return n&&n.getBoundingClientRect()},this.checkTimer=function(e){y.checkTimer(e)},this.isNotifierBuilt=function(){return b&&b.isBuilt()},this.isReplayShown=p.isShown.bind(p),this.hideReplay=p.hide.bind(p),this.hideRecorder=m.hide.bind(m),this.isRecording=m.isRecording.bind(m),this.isUserMediaLoaded=m.isUserMediaLoaded.bind(m),this.isConnected=m.isConnected.bind(m)};(0,a.default)(p,l.default);n.default=p},{"../events":113,"../util/eventEmitter":122,"./visuals/inside/recorderInsides":138,"./visuals/notifier":139,"./visuals/recorder":140,"./visuals/replay":141,"@babel/runtime/helpers/interopRequireDefault":4,hidden:60,hyperscript:62,inherits:65,"safe-json-stringify":93}],133:[function(e,t,n){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=function(e,t){var n,r,a,s,u=this;function l(e){s||(t.debug("Countdown",a),--a<1?function(e){u.unload(),u.hide(),setTimeout((function(){e()}),0)}(e):n.innerHTML=a)}this.start=function(e){n.innerHTML=a=t.video.countdown,this.show(),r=setInterval(l.bind(this,e),950)},this.pause=function(){s=!0},this.resume=function(){s=!1},this.build=function(){(n=e.querySelector(".countdown"))?this.hide():(n=(0,o.default)("p.countdown"),this.hide(),e.appendChild(n))},this.show=function(){(0,i.default)(n,!1)},this.isCountingDown=function(){return Boolean(r)},this.unload=function(){clearInterval(r),s=!1,r=null},this.hide=function(){(0,i.default)(n,!0),this.unload()}};var i=r(e("hidden")),o=r(e("hyperscript"))},{"@babel/runtime/helpers/interopRequireDefault":4,hidden:60,hyperscript:62}],134:[function(e,t,n){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=function(e,t){s.default.call(this,t,"Facing Mode");var n,r=this;this.build=function(){(n=e.querySelector(".facingMode"))?this.hide():((n=(0,o.default)("button.facingMode")).innerHTML="⤾",n.onclick=function(e){e&&e.preventDefault();try{r.emit(a.default.SWITCH_FACING_MODE)}catch(e){r.emit(a.default.ERROR,e)}},this.hide(),e.appendChild(n)),r.on(a.default.ERROR,(function(){r.hide()}))},this.hide=function(){(0,i.default)(n,!0)},this.show=function(){(0,i.default)(n,!1)}};var i=r(e("hidden")),o=r(e("hyperscript")),a=r(e("./../../../../events")),s=r(e("./../../../../util/eventEmitter"))},{"./../../../../events":113,"./../../../../util/eventEmitter":122,"@babel/runtime/helpers/interopRequireDefault":4,hidden:60,hyperscript:62}],135:[function(e,t,n){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=function(e,t){if(!t.text.pausedHeader)throw a.default.create("Paused header cannot be empty",t);var n,r,s;function u(){return t.text.pausedHint}this.build=function(){n=e.querySelector(".paused"),(r=e.querySelector(".pausedHeader"))?(this.hide(),r.innerHTML=t.text.pausedHeader,u()&&(s.innerHTML=t.text.pausedHint)):(n=(0,o.default)("div.paused"),r=(0,o.default)("p.pausedHeader"),this.hide(),r.innerHTML=t.text.pausedHeader,n.appendChild(r),u()&&(s=e.querySelector(".pausedHint"),(s=(0,o.default)("p.pausedHint")).innerHTML=t.text.pausedHint,n.appendChild(s)),e.appendChild(n))},this.hide=function(){(0,i.default)(n,!0)},this.show=function(){(0,i.default)(n,!1)}};var i=r(e("hidden")),o=r(e("hyperscript")),a=r(e("./../../../../util/videomailError"))},{"./../../../../util/videomailError":126,"@babel/runtime/helpers/interopRequireDefault":4,hidden:60,hyperscript:62}],136:[function(e,t,n){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=function(e){var t;this.build=function(){(t=e.querySelector(".recordNote"))?this.hide():(t=(0,o.default)("p.recordNote"),this.hide(),e.appendChild(t))},this.stop=function(){this.hide(),t.classList.remove("near"),t.classList.remove("nigh")},this.setNear=function(){t.classList.add("near")},this.setNigh=function(){t.classList.add("nigh")},this.hide=function(){(0,i.default)(t,!0)},this.show=function(){(0,i.default)(t,!1)}};var i=r(e("hidden")),o=r(e("hyperscript"))},{"@babel/runtime/helpers/interopRequireDefault":4,hidden:60,hyperscript:62}],137:[function(e,t,n){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=function(e,t,n){var r,a,s,u=!1,l=!1;function c(e,t){return e>=n.video.limitSeconds*t}function f(){var e,i=parseInt(s/60,10),o=s-60*i;if(!u||!l){var a=n.video.limitSeconds-s;!function(e){return!(u||!c(e,.6)||(u=!0,0))}(a)?function(e){return!(l||!c(e,.8)||(l=!0,0))}(a)&&(t.setNigh(),r.classList.add("nigh"),n.debug("End is nigh, ".concat(s," seconds to go"))):(t.setNear(),r.classList.add("near"),n.debug("End is near, ".concat(s," seconds to go")))}r.innerHTML="".concat(i,":").concat((e=o)<10?"0".concat(e):e)}function d(){(0,i.default)(r,!0)}function h(){return n.video.limitSeconds}this.check=function(t){var n=h()-Math.floor(t.intervalSum/1e3);n!==s&&(s=n,f(),s<1&&e.stop(!0))},this.start=function(){s=h(),u=l=!1,a=!0,f(),r.classList.remove("near"),r.classList.remove("nigh"),(0,i.default)(r,!1)},this.pause=function(){t.hide()},this.resume=function(){t.show()},this.stop=function(){null!==s&&a&&(n.debug("Stopping record timer. Was recording for about ~".concat(h()-s," seconds.")),d(),t.stop(),s=null,a=!1)},this.build=function(){(r=e.querySelector(".recordTimer"))?d():(r=(0,o.default)("p.recordTimer"),d(),e.appendChild(r))}};var i=r(e("hidden")),o=r(e("hyperscript"))},{"@babel/runtime/helpers/interopRequireDefault":4,hidden:60,hyperscript:62}],138:[function(e,t,n){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i=r(e("inherits")),o=r(e("./../../../events")),a=r(e("./../../../util/browser")),s=r(e("./../../../util/eventEmitter")),u=r(e("./recorder/countdown")),l=r(e("./recorder/facingMode")),c=r(e("./recorder/pausedNote")),f=r(e("./recorder/recordNote")),d=r(e("./recorder/recordTimer")),h=function(e,t){s.default.call(this,t,"RecorderInsides");var n,r,i,h,p=this,m=t.debug,y=new f.default(e),b=new d.default(e,y,t),g=new a.default(t);function v(){p.hidePause(),p.hideCountdown(),b.stop(),h&&h.hide()}function w(){m("RecorderInsides: initEvents()"),p.on(o.default.USER_MEDIA_READY,(function(){h&&h.show()})).on(o.default.RECORDING,(function(){b.start()})).on(o.default.RESUMING,(function(){b.resume()})).on(o.default.STOPPING,(function(){b.stop()})).on(o.default.PAUSED,(function(){p.isCountingDown()?n.pause():b.pause()})).on(o.default.ERROR,v).on(o.default.RESETTING,v).on(o.default.HIDE,(function(){p.hideCountdown()}))}t.video.countdown&&(n=new u.default(e,t)),t.video.facingModeButton&&g.isMobile()&&(h=new l.default(e,t)),t.enablePause&&(r=new c.default(e,t)),this.build=function(){m("RecorderInsides: build()"),n&&n.build(),r&&r.build(),h&&h.build(),y.build(),b.build(),!i&&w(),i=!0},this.unload=function(){n&&n.unload(),i=!1},this.showPause=function(){r&&r.show()},this.hidePause=function(){r&&r.hide()},this.hideCountdown=function(){n&&n.hide()},this.startCountdown=function(e){n&&n.start(e)},this.resumeCountdown=function(){n&&n.resume()},this.isCountingDown=function(){return n&&n.isCountingDown()},this.checkTimer=function(e){b.check(e)}};(0,i.default)(h,s.default);n.default=h},{"./../../../events":113,"./../../../util/browser":120,"./../../../util/eventEmitter":122,"./recorder/countdown":133,"./recorder/facingMode":134,"./recorder/pausedNote":135,"./recorder/recordNote":136,"./recorder/recordTimer":137,"@babel/runtime/helpers/interopRequireDefault":4,inherits:65}],139:[function(e,t,n){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i=r(e("hidden")),o=r(e("hyperscript")),a=r(e("inherits")),s=r(e("../../events")),u=r(e("../../util/eventEmitter")),l="notifierMessage",c=function(e,t){u.default.call(this,t,"Notifier");var n,r,a,c,f,d=this,h=t&&t.debug,p=document.getElementById(l);function m(){h("Notifier: initEvents()"),d.on(s.default.CONNECTING,(function(){d.notify("Connecting …")})).on(s.default.LOADING_USER_MEDIA,(function(){d.notify("Loading webcam …")})).on(s.default.USER_MEDIA_READY,(function(){t.video.stretch?(n.style.width="auto",n.style.height="".concat(e.getRecorderHeight(!0,!0),"px")):(n.style.width="".concat(e.getRecorderWidth(!0),"px"),n.style.height="".concat(e.getRecorderHeight(!0),"px")),d.hide()})).on(s.default.LOADED_META_DATA,(function(){})).on(s.default.PREVIEW,(function(){d.hide()})).on(s.default.STOPPING,(function(n){!function(n){var r="";e.beginWaiting(),n&&(h("Limit reached"),r+="".concat(t.text.limitReached,". ")),r+="".concat(t.text.sending," …"),d.notify(r,null,{stillWait:!0,entertain:t.notifier.entertain})}(n)})).on(s.default.PROGRESS,(function(e,n){!function(e,n){var r;t.isAudioEnabled()?(r="Video: ".concat(e),n&&(r+=", Audio: ".concat(n))):r=e,v(r)}(e,n)})).on(s.default.BEGIN_VIDEO_ENCODING,(function(){!function(){e.beginWaiting();var n="".concat(t.text.encoding," …");d.notify(n,null,{stillWait:!0,entertain:t.notifier.entertain}),w()}()})).on(s.default.UNLOADING,(function(){d.notify("Unloading …")})).on(s.default.DISCONNECTED,(function(){d.notify("Disconnected")})).on(s.default.CONNECTED,(function(){d.notify("Connected"),t.loadUserMediaOnRecord&&d.hide()}))}function y(){if(t.notifier.entertain){if(!c){var e=Math.floor(Math.random()*t.notifier.entertainLimit+1);n.className="notifier entertain ".concat(t.notifier.entertainClass).concat(e),a=setTimeout(y,t.notifier.entertainInterval),c=!0}}else b()}function b(){n&&n.classList.remove("entertain"),clearTimeout(a),a=null,c=!1}function g(){return p||(p=document.getElementById(l))}function v(e){t.debug("Notifier: setExplanation(".concat(e,")")),r||(r=(0,o.default)("p",{className:"explanation"}),n?n.appendChild(r):t.logger.warn("Unable to show explanation because notifyElement is empty:",e)),r.innerHTML=e,(0,i.default)(r,!1)}function w(){r&&(0,i.default)(r,!0)}this.error=function(e){var n=e.message?e.message.toString():e.toString(),r=e.explanation?e.explanation.toString():null;n||t.debug("Weird empty error message generated for error",e),d.notify(n,r,{blocking:!0,problem:!0,hideForm:e.hideForm&&e.hideForm(),classList:e.getClassList&&e.getClassList(),removeDimensions:e.removeDimensions&&e.removeDimensions()})},this.build=function(){t.debug("Notifier: build()"),(n=e.querySelector(".notifier"))?this.hide():(n=(0,o.default)(".notifier"),this.hide(),e.appendChild(n)),!f&&m(),f=!0},this.hide=function(){b(),n&&((0,i.default)(n,!0),n.classList.remove("blocking")),g()&&(0,i.default)(p,!0),w()},this.isVisible=function(){return!!f&&(n&&!(0,i.default)(n))},this.isBuilt=function(){return f},this.notify=function(a,u){var c=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},f=[a,u].filter(Boolean);t.debug("Notifier: notify(".concat(f.join(", "),")"));var d=!!c.stillWait&&c.stillWait,h=!!c.entertain&&c.entertain,m=!!c.blocking&&c.blocking,w=!!c.hideForm&&c.hideForm,E=!!c.classList&&c.classList,_=!!c.removeDimensions&&c.removeDimensions;n&&(h||(n.className="notifier"),E&&E.forEach((function(e){n.classList.add(e)})),_&&(n.style.width="auto",n.style.height="auto")),m?(n&&n.classList.add("blocking"),this.emit(s.default.BLOCKING,{hideForm:w})):this.emit(s.default.NOTIFYING),e.hideReplay(),e.hideRecorder(),function(e,a){if(t.debug("Notifier: setMessage(".concat(e,")")),g()||(p=(0,o.default)("h2",{id:l}),n?r?n.insertBefore(p,r):n.appendChild(p):t.logger.warn("Unable to show message ".concat(e," because notifyElement is empty"))),e.length>0){var s=!!a.problem&&a.problem;p.innerHTML=(s?"☹ ":"")+e}else t.logger.warn("Not going to update notifierMessage element because message is empty");(0,i.default)(p,!1)}(a,c),u&&u.length>0&&v(u),h?y():b(),e.showVisuals(),n&&(0,i.default)(n,!1),!d&&e.endWaiting()}};(0,a.default)(c,u.default);n.default=c},{"../../events":113,"../../util/eventEmitter":122,"@babel/runtime/helpers/interopRequireDefault":4,hidden:60,hyperscript:62,inherits:65}],140:[function(e,t,n){(function(t){(function(){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i=r(e("animitter")),o=r(e("canvas-to-buffer")),a=r(e("deepmerge")),s=r(e("hidden")),u=r(e("hyperscript")),l=r(e("inherits")),c=r(e("safe-json-stringify")),f=r(e("websocket-stream")),d=r(e("../../constants")),h=r(e("../../events")),p=r(e("../../util/browser")),m=r(e("../../util/eventEmitter")),y=r(e("../../util/humanize")),b=r(e("../../util/pretty")),g=r(e("../../util/videomailError")),v=r(e("./userMedia")),w="°º¤ø,¸¸,ø¤º°`°º¤ø,¸,ø¤°º¤ø,¸¸,ø¤º°`°º¤ø,¸ ",E=function(e,n){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};m.default.call(this,r,"Recorder");var l=new p.default(r),E=(0,a.default)(r,{image:{quality:l.isMobile()?r.image.quality-.05:r.image.quality}});if(!E.video||!E.video.fps)throw g.default.create("FPS must be defined",E);var _,R,S,A,O,k,x,T,j,D,N,M,C,I,P,L,B,U,F,W,q,H,V,z,G,$,Y=this,K=E.debug,J=null,X=0,Q=0,Z=E.video.facingMode,ee={},te=0,ne=0;function re(e,t){if(L)if(L.destroyed)ie(),Y.emit(h.default.ERROR,g.default.create("Already disconnected","Sorry, connection to the server has been destroyed. Please reload.",E));else{var n=t&&t.onFlushedCallback;try{L.write(e,(function(){if(n)try{n(t)}catch(e){Y.emit(h.default.ERROR,g.default.create("Failed to write stream buffer","stream.write() failed because of ".concat((0,b.default)(e)),E))}}))}catch(e){Y.emit(h.default.ERROR,g.default.create("Failed writing to server","stream.write() failed because of ".concat((0,b.default)(e)),E))}}}function ie(){clearInterval(V)}function oe(e){X++,re(e.toBuffer())}function ae(){R&&(0,s.default)(R,!1)}function se(){var e,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};try{K("Recorder: onUserMediaReady()",(0,c.default)(t));var n=t.switchingFacingMode;M=F=I=C=!1,N=!0,n||(e=(0,i.default)({fps:E.video.fps},Ae),_=e.getRequestAnimationFrameObject(),J=e),ae(),t.recordWhenReady&&Y.record(),Y.emit(h.default.USER_MEDIA_READY,{switchingFacingMode:t.switchingFacingMode,paused:Y.isPaused(),recordWhenReady:t.recordWhenReady})}catch(e){Y.emit(h.default.ERROR,e)}}function ue(){return"".concat((te/(Q||1)*100).toFixed(2),"%")}function le(){return"".concat((ne/(X||1)*100).toFixed(2),"%")}function ce(){x||(x=ue()),T||(T=le()),Y.emit(h.default.PROGRESS,x,T)}function fe(e){if(!U){B=!0,K("Recorder: initializing web socket to %s",E.socketUrl),Y.emit(h.default.CONNECTING);var t="".concat(E.socketUrl,"?").concat(encodeURIComponent(d.default.SITE_NAME_LABEL),"=").concat(encodeURIComponent(E.siteName));try{L=(0,f.default)(t,{perMessageDeflate:!1,objectMode:!0})}catch(e){var n;B=U=!1,n=void 0===f.default?g.default.create("There is no websocket","Cause: ".concat((0,b.default)(e)),E):g.default.create("Failed to connect to server","Please upgrade your browser. Your current version does not seem to support websockets.",E,{browserProblem:!0}),Y.emit(h.default.ERROR,n)}L&&(L.on("close",(function(e){K("".concat(w,"Stream has closed")),B=U=!1,e?Y.emit(h.default.ERROR,e||"Unhandled websocket error"):N&&fe()})),L.on("connect",(function(){K("".concat(w,"Stream *connect* event emitted"));var t=this.socket.readyState===WebSocket.CLOSING;U||t||I||(U=!0,B=I=!1,Y.emit(h.default.CONNECTED),e&&e())})),L.on("data",(function(e){var t;K("".concat(w,"Stream *data* event emitted"));try{t=JSON.parse(e.toString())}catch(t){K("Failed to parse command:",t),Y.emit(h.default.ERROR,g.default.create("Invalid server command","Contact us asap. Bad command was ".concat(e.toString(),". "),E))}finally{ye.call(Y,t)}})),L.on("error",(function(e){K("".concat(w,"Stream *error* event emitted: ").concat((0,c.default)(e)))})),L.on("drain",(function(){K("".concat(w,"Stream *drain* event emitted (should not happen!)"))})),L.on("preend",(function(){K("".concat(w,"Stream *preend* event emitted"))})),L.on("end",(function(){K("".concat(w,"Stream *end* event emitted"))})),L.on("drain",(function(){K("".concat(w,"Stream *drain* event emitted"))})),L.on("pipe",(function(){K("".concat(w,"Stream *pipe* event emitted"))})),L.on("unpipe",(function(){K("".concat(w,"Stream *unpipe* event emitted"))})),L.on("resume",(function(){K("".concat(w,"Stream *resume* event emitted"))})),L.on("uncork",(function(){K("".concat(w,"Stream *uncork* event emitted"))})),L.on("readable",(function(){K("".concat(w,"Stream *preend* event emitted"))})),L.on("prefinish",(function(){K("".concat(w,"Stream *preend* event emitted"))})),L.on("finish",(function(){K("".concat(w,"Stream *preend* event emitted"))})))}}function de(e){M=!1,Re(),K("Recorder: userMediaErrorCallback(), name: ".concat(e.name,", message: ").concat(e.message," and Webcam characteristics: ").concat((0,c.default)(S.getCharacteristics())));var t=Y.listeners(h.default.ERROR);if(t&&t.length)e.name!==g.default.MEDIA_DEVICE_NOT_SUPPORTED?Y.emit(h.default.ERROR,g.default.create(e,E)):K("Recorder: ignore user media error",e),O=setTimeout(fe,E.timeouts.userMedia);else{if(!I)throw K("Recorder: no error listeners attached but throwing error",e),g.default.create(e,"Unable to process this error since there are no error listeners anymore.",E);K("Recorder: already unloaded. Not going to throw error",e)}}function he(e,t){if(K("Recorder: getUserMediaCallback()",(0,c.default)(t)),U&&(be()||!ge()||F))try{Re(),S.init(e,(function(){se(t)}),oe.bind(Y),(function(e){Y.emit(h.default.ERROR,e)}),t)}catch(e){Y.emit(h.default.ERROR,e)}}function pe(e){if(!navigator)throw new Error("Navigator is missing!");if(K("Recorder: loadGenuineUserMedia()"),Y.emit(h.default.ASKING_WEBCAM_PERMISSION),navigator.mediaDevices&&navigator.mediaDevices.getUserMedia){var t={video:{facingMode:Z,frameRate:{ideal:E.video.fps}},audio:E.isAudioEnabled()};l.isOkSafari()||(E.hasDefinedWidth()?t.video.width={ideal:E.video.width}:t.video.width={ideal:Y.limitWidth()},E.hasDefinedHeight()&&(t.video.height={ideal:E.video.height})),K("Recorder: navigator.mediaDevices.getUserMedia()",(0,c.default)(t)),navigator.mediaDevices.getSupportedConstraints&&K("Recorder: navigator.mediaDevices.getSupportedConstraints()",(0,c.default)(navigator.mediaDevices.getSupportedConstraints()));var n=navigator.mediaDevices.getUserMedia(t);if(!n)throw g.default.create("Sorry, your browser is unable to use cameras.","Try a different browser with better user media functionalities.",E);n.then((function(t){he(t,e)})).catch(de)}else K("Recorder: navigator.getUserMedia()"),navigator.getUserMedia_({video:!0,audio:E.isAudioEnabled()},he,de)}function me(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};if(N)return K("Recorder: skipping loadUserMedia() because it is already loaded"),se(e),!1;if(M)return K("Recorder: skipping loadUserMedia() because it is already asking for permission"),!1;K("Recorder: loadUserMedia(".concat((0,c.default)(e),")")),Y.emit(h.default.LOADING_USER_MEDIA);try{A=setTimeout((function(){Y.isReady()||Y.emit(h.default.ERROR,l.getNoAccessIssue())}),E.timeouts.userMedia),M=!0,pe(e)}catch(e){if(K("Recorder: failed to load genuine user media"),M=!1,!Y.listeners(h.default.ERROR).length)throw K("Recorder: no error listeners attached but throwing exception",e),e;Y.emit(h.default.ERROR,e)}}function ye(e){var t;if(!I)try{switch(e.args?K("Server commanded: ".concat(e.command," with ").concat((0,c.default)(e.args))):K("Server commanded: ".concat(e.command)),e.command){case"ready":this.emit(h.default.SERVER_READY),A||(E.loadUserMediaOnRecord?ae():me());break;case"preview":!function(e){te=ne=X=Q=0,T=x=null,q=e.key,e.mp4&&n.setMp4Source("".concat(e.mp4+d.default.SITE_NAME_LABEL,"/").concat(E.siteName,"/videomail.mp4"),!0),e.webm&&n.setWebMSource("".concat(e.webm+d.default.SITE_NAME_LABEL,"/").concat(E.siteName,"/videomail.webm"),!0),Y.hide();var t=Y.getRecorderWidth(!0),r=Y.getRecorderHeight(!0);Y.emit(h.default.PREVIEW,q,t,r),H=Date.now()-P,ee.waitingTime=H,E.debug&&K("While recording, %s have been transferred and waiting time was %s",y.default.filesize(k,2),y.default.toTime(H))}(e.args);break;case"error":this.emit(h.default.ERROR,g.default.create("Oh no, server error!",e.args.err.toString()||"(No message given)",E));break;case"confirmFrame":t=e.args,te=t.frame?t.frame:te,x=ue(),ce();break;case"confirmSample":!function(e){ne=e.sample?e.sample:ne,T=le(),ce()}(e.args);break;case"beginAudioEncoding":this.emit(h.default.BEGIN_AUDIO_ENCODING);break;case"beginVideoEncoding":this.emit(h.default.BEGIN_VIDEO_ENCODING);break;default:this.emit(h.default.ERROR,"Unknown server command: ".concat(e.command))}}catch(e){Y.emit(h.default.ERROR,e)}}function be(){return e.isNotifying()}function ge(){return!R||(0,s.default)(R)}function ve(e,n,r){if(!r&&n&&n.constructor===Function&&(r=n,n=null),U){if(L){K(n?"$ ".concat(e," with ").concat((0,c.default)(n)):"$ ".concat(e));var i={command:e,args:n};re(t.from((0,c.default)(i))),r&&setTimeout((function(){r()}),0)}}else K("Reconnecting for the command",e,"…"),fe((function(){ve(e,n),r&&r()}))}function we(){return J.getElapsedTime()}function Ee(){if(0!==we())return Q/we()*1e3}function _e(){K("Recorder: reInitializeAudio()"),Re(),S&&S.stop(),N=q=j=D=null,me()}function Re(){A&&(K("Recorder: clearUserMediaTimeout()"),A&&clearTimeout(A),A=null)}function Se(e){1===(e&&e.frameNumber)&&Y.emit(h.default.FIRST_FRAME_SENT)}function Ae(n,r){try{if(!Y.isPaused()&&L&&D){if(0===Q&&Y.emit(h.default.SENDING_FIRST_FRAME),Q++,D.drawImage(S.getRawVisuals(),0,0,j.width,j.height),$=z.toBuffer(),(G=$.length)<1)throw g.default.create("Failed to extract webcam data.",E);k+=G;var i=t.from((0,c.default)({frameNumber:Q}));re(t.concat([$,i]),{frameNumber:Q,onFlushedCallback:Se}),e.checkTimer({intervalSum:r})}}catch(e){Y.emit(h.default.ERROR,e)}}function Oe(e){if(J){var t=Y.isRecording();J.stop(),J.setRequestAnimationFrameObject(e),t&&J.start()}}function ke(){E.hasDefinedWidth()&&(R.width=Y.getRecorderWidth(!0)),E.hasDefinedHeight()&&(R.height=Y.getRecorderHeight(!0))}function xe(){K("Recorder: initEvents()"),Y.on(h.default.SUBMITTING,(function(){C=!0})).on(h.default.SUBMITTED,(function(){C=!1})).on(h.default.BLOCKING,(function(){F=!0,Re()})).on(h.default.HIDE,(function(){Y.hide()})).on(h.default.LOADED_META_DATA,(function(){ke()})).on(h.default.DISABLING_AUDIO,(function(){_e()})).on(h.default.ENABLING_AUDIO,(function(){_e()})).on(h.default.INVISIBLE,(function(){!function(){K("Recorder: loopWithTimeouts()");var e,t=1e3/E.video.fps,n=0;Oe({requestAnimationFrame:function(r){return setTimeout((function(){e=Date.now(),r(),n=Date.now()-e}),t-n)},cancelAnimationFrame:function(e){clearTimeout(e)}})}()})).on(h.default.VISIBLE,(function(){K("Recorder: restoreAnimationFrameObject()"),Oe(_)})).on(h.default.SWITCH_FACING_MODE,(function(){!function(){if(!l.isMobile())return!1;"user"===Z?Z="environment":"environment"===Z?Z="user":K("Recorder: unsupported facing mode",Z),pe({switchingFacingMode:!0})}()}))}function Te(){var t;if(S){var n=S.getVideoWidth();t=n<1?e.getRatio():S.getVideoHeight()/n}else t=E.getRatio();return t}this.getRecordingStats=function(){return ee},this.getAudioSampleRate=function(){return S.getAudioSampleRate()},this.stop=function(e){K("stop(".concat((0,c.default)(e),")"));var t=e.limitReached;this.emit(h.default.STOPPING,t),J.complete();var r=this;setTimeout((function(){P=Date.now(),ee={avgFps:Ee(),wantedFps:E.video.fps,avgInterval:we()/Q,wantedInterval:1e3/E.video.fps,intervalSum:we(),framesCount:Q,videoType:n.getVideoType()},E.isAudioEnabled()&&(ee.samplesCount=X,ee.sampleRate=S.getAudioSampleRate()),ve("stop",ee,(function(){r.emit(h.default.STOPPED,{recordingStats:ee})})),r.reset()}),60)},this.back=function(e){this.emit(h.default.GOING_BACK),I=!1,ae(),ve("back",e)},this.unload=function(e){var t;!I&&W&&(e&&(t=e.name||e.statusText||e.toString()),K("Recorder: unload()".concat(t?", cause: ".concat(t):"")),this.reset(),Re(),S&&S.unloadRemainingEventListeners(),C||L&&(K("Recorder: ending stream ..."),L.destroy(),L=void 0),I=!0,W=B=U=!1)},this.reset=function(){I||(K("Recorder: reset()"),this.emit(h.default.RESETTING),J&&J.dispose(),S&&S.stop(),n.reset(),N=q=j=D=$=G=null)},this.validate=function(){return U&&null===j},this.isReady=function(){return S.isReady()},this.pause=function(e){var n=e&&e.event;n instanceof window.Event&&(e.eventType=n.type),K(e?"pause() at frame ".concat(Q," with ").concat((0,c.default)(e)):"pause() at frame ".concat(Q)),S.pause(),J.stop(),this.emit(h.default.PAUSED),V=window.setInterval((function(){K("Recorder: pinging..."),re(t.from(""))}),E.timeouts.pingInterval)},this.isPaused=function(){return S&&S.isPaused()},this.resume=function(){K("Recorder: resume() with frame ".concat(Q)),ie(),this.emit(h.default.RESUMING),S.resume(),J.start()},this.record=function(){if(I)return!1;if(!U)return K("Recorder: reconnecting before recording ..."),fe((function(){Y.once(h.default.USER_MEDIA_READY,Y.record)})),!1;if(!N)return E.loadUserMediaOnRecord?me({recordWhenReady:!0}):Y.emit(h.default.ERROR,g.default.create("Load and enable your camera first",E)),!1;try{j=S.createCanvas()}catch(e){return Y.emit(h.default.ERROR,g.default.create(e,E)),!1}return D=j.getContext("2d"),j.width?j.height?(k=0,z=new o.default(j,E.image.types,E.image.quality),K("Recorder: record()"),S.record(),Y.emit(h.default.RECORDING,Q),J.on("update",(function(e,t){var n=void 0;n=0!==t?Math.round(Q/t*1e3):void 0,K("Recorder: avgFps = ".concat(n,", framesCount = ").concat(Q))})),void J.start()):(Y.emit(h.default.ERROR,g.default.create("Canvas has an invalid height.",E)),!1):(Y.emit(h.default.ERROR,g.default.create("Canvas has an invalid width.",E)),!1)},this.build=function(){var t=l.checkRecordingCapabilities();t||(t=l.checkBufferTypes()),t?this.emit(h.default.ERROR,t):((R=e.querySelector("video.".concat(E.selectors.userMediaClass)))||(R=(0,u.default)("video.".concat(E.selectors.userMediaClass)),e.appendChild(R)),ke(),R.muted=!0,R.setAttribute("playsinline",!0),R.setAttribute("webkit-playsinline","webkit-playsinline"),R.style.transform="rotateY(180deg)",R.style["-webkit-transform"]="rotateY(180deg)",R.style["-moz-transform"]="rotateY(180deg)",E.video.stretch&&(R.style.width="100%"),S||(S=new v.default(this,E)),ae(),W?E.loadUserMediaOnRecord&&me():(xe(),U?E.loadUserMediaOnRecord||me():fe()),W=!0)},this.isPaused=function(){return S&&S.isPaused()&&!J.isRunning()},this.isRecording=function(){return J&&J.isRunning()&&!this.isPaused()&&!be()&&L&&!L.destroyed},this.hide=function(){ge()||(R&&(0,s.default)(R,!0),Re(),O&&(K("Recorder: clearRetryTimeout()"),clearTimeout(O),O=null))},this.isUnloaded=function(){return I},this.getRecorderWidth=function(e){return S&&S.hasVideoWidth()?S.getRawWidth(e):e&&E.hasDefinedWidth()?this.limitWidth(E.video.width):void 0},this.getRecorderHeight=function(e,t){return R&&t?R.getBoundingClientRect().height:S?S.getRawHeight(e):e&&E.hasDefinedHeight()?this.calculateHeight(e):void 0},this.calculateWidth=function(t){var n;return S?n=S.getVideoHeight():R&&(n=R.videoHeight||R.height),e.calculateWidth({responsive:t,ratio:Te(),videoHeight:n})},this.calculateHeight=function(t){var n;return S?n=S.getVideoWidth():R&&(n=R.videoWidth||R.width),e.calculateHeight({responsive:t,ratio:Te(),videoWidth:n})},this.getRawVisualUserMedia=function(){return R},this.isConnected=function(){return U},this.isConnecting=function(){return B},this.limitWidth=function(t){return e.limitWidth(t)},this.limitHeight=function(t){return e.limitHeight(t)},this.isUserMediaLoaded=function(){return N}};(0,l.default)(E,m.default);n.default=E}).call(this)}).call(this,e("buffer").Buffer)},{"../../constants":112,"../../events":113,"../../util/browser":120,"../../util/eventEmitter":122,"../../util/humanize":123,"../../util/pretty":125,"../../util/videomailError":126,"./userMedia":142,"@babel/runtime/helpers/interopRequireDefault":4,animitter:13,buffer:18,"canvas-to-buffer":21,deepmerge:27,hidden:60,hyperscript:62,inherits:65,"safe-json-stringify":93,"websocket-stream":107}],141:[function(e,t,n){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i=r(e("add-eventlistener-with-options")),o=r(e("hidden")),a=r(e("hyperscript")),s=r(e("inherits")),u=r(e("../../events")),l=r(e("../../util/browser")),c=r(e("../../util/eventEmitter")),f=function(e,t){c.default.call(this,t,"Replay");var n,r,s,f=this,d=new l.default(t),h=t.debug;function p(){return"HTMLDivElement"===e.constructor.name}function m(e,n,i){var o=f.getVideoSource(e);if(n&&i&&(n+="?".concat(Date.now())),o)n?o.setAttribute("src",n):r.removeChild(o);else if(n){var s=1/t.video.fps*2;o=(0,a.default)("source",{src:"".concat(n,"#t=").concat(s),type:"video/".concat(e)}),r.appendChild(o)}}function y(e){setTimeout((function(){try{r&&r.pause()}catch(e){t.logger.warn(e)}e&&e()}),15)}function b(){if(r&&r.play){var e;try{e=r.play()}catch(e){t.logger.warn("Caught replay exception:",e)}e&&"undefined"!=typeof Promise&&e instanceof Promise&&e.catch((function(e){t.logger.warn("Caught pending replay promise exception: %s",e)}))}}this.setVideomail=function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];(s=e)&&(s.mp4&&this.setMp4Source(s.mp4),s.webm&&this.setWebMSource(s.webm),s.vtt&&function(e){if(!r)return;var t=r.getElementsByTagName("track"),n=t&&t[0];if(n)e?n.setAttribute("src",e):r.removeChild(n);else{var i=(0,a.default)("track",{src:e,kind:"captions",default:!0});r.appendChild(i),r.setAttribute("crossorigin","anonymous")}}(s.vtt),s.poster&&r.setAttribute("poster",s.poster),function(e){var t;Object.keys(e).forEach((function(n){(t=r.parentNode.querySelector(".".concat(n)))&&(!t.innerHTML||t.innerHTML.length<1)&&(t.innerHTML=e[n])}))}(s));var n=s&&s.width,i=s&&s.height,o=s&&s.recordingStats&&s.recordingStats.sampleRate>0;this.show(n,i,o,t)},this.show=function(n,i,a){var l=arguments.length>3&&void 0!==arguments[3]&&arguments[3];r&&(f.isShown()||(h("Replay: show(playerOnly=".concat(l,")")),s&&function(t){var n,i;s&&s.playerWidth?i=s.playerWidth:e.calculateWidth&&(i=e.calculateWidth(t)),s&&s.playerHeight?n=s.playerHeight:e.calculateHeight&&(n=e.calculateHeight(t)),r.style.width=i>0?"".concat(i,"px"):"auto",r.style.height=n>0?"".concat(n,"px"):"auto"}({responsive:!0,videoWidth:n||r.videoWidth,videoHeight:i||r.videoHeight}),(0,o.default)(r,!1),l?(0,o.default)(r.parentNode,!1):e&&(e.style?(0,o.default)(e,!1):e.show&&e.show()),a?r.setAttribute("volume",1):t.isAudioEnabled()||r.setAttribute("muted",!0),r.load(),s?r.addEventListener("canplaythrough",(function(){f.emit(u.default.REPLAY_SHOWN)}),{once:!0}):r.addEventListener("canplaythrough",(function(){f.emit(u.default.PREVIEW_SHOWN)}),{once:!0})))},this.build=function(o){h("Replay: build (".concat(o?'replayParentElement="'.concat(o.id,'"'):"",")")),(r=e.querySelector("video.".concat(t.selectors.replayClass)))||function(){var n=arguments.length>0&&void 0!==arguments[0]?arguments[0]:e;if("string"==typeof n&&!(n=document.getElementById(n)))throw new Error("No replay parent element container with ID ".concat(n," found."));var i="video.".concat(t.selectors.replayClass);(r=n.querySelector(i))||(r=(0,a.default)(i),n.appendChild(r))}(o),this.hide(),r.setAttribute("autoplay",!0),r.setAttribute("autostart",!0),r.setAttribute("autobuffer",!0),r.setAttribute("playsinline",!0),r.setAttribute("webkit-playsinline","webkit-playsinline"),r.setAttribute("controls","controls"),r.setAttribute("preload","auto"),n||(p()||this.on(u.default.PREVIEW,(function(e,t,n){f.show(t,n)})),(0,i.default)(r,"touchstart",(function(e){try{e&&e.preventDefault()}catch(e){}this.paused?b():y()})),r.onclick=function(e){e&&e.preventDefault(),this.paused?b():y()}),n=!0,h("Replay: built.")},this.unload=function(){h("Replay: unload()"),f.removeAllListeners(),r.remove(),r=void 0,s=void 0,n=!1},this.getVideoSource=function(e){if(r){var t,n,i=r.getElementsByTagName("source"),o=i&&i.length,a="video/".concat(e);if(o)for(n=0;n4&&void 0!==arguments[4]?arguments[4]:{};this.stop(e,{aboutToInitialize:!0,switchingFacingMode:u.switchingFacingMode});var l=!1,h=!1,b=!1;function g(){y.removeListener(a.default.SENDING_FIRST_FRAME,g),n&&n.record(i)}function w(){t.debug("UserMedia: unloadAllEventListeners()"),y.unloadRemainingEventListeners(),y.removeListener(a.default.SENDING_FIRST_FRAME,g),p.removeEventListener&&p.removeEventListener("play",k),p.removeEventListener&&p.removeEventListener("loadedmetadata",x)}function A(){try{if(p.load(),p.paused){var e;t.debug("UserMedia: play()","media.readyState=".concat(p.readyState),"media.paused=".concat(p.paused),"media.ended=".concat(p.ended),"media.played=".concat((0,f.default)(p.played)));try{e=p.play()}catch(e){t.logger.warn("Caught raw usermedia play exception:",e)}(n=e)&&"undefined"!=typeof Promise&&n instanceof Promise&&e.then((function(){b||(t.debug("UserMedia: play promise successful. Playing now."),b=!0)})).catch((function(e){t.logger.warn("Caught pending usermedia promise exception: %s",e.toString())}))}}catch(e){w(),o(e)}var n}function O(){var s=p.readyState;if(t.debug("UserMedia: fireCallbacks("+"readyState=".concat(s,", ")+"onPlayReached=".concat(l,", ")+"onLoadedMetaDataReached=".concat(h,")")),l&&h&&(r(),n&&i))try{n.init(e),y.on(a.default.SENDING_FIRST_FRAME,g)}catch(e){w(),o(e)}}function k(){try{R("play",{readyState:p.readyState,audio:t.isAudioEnabled(),width:p.width,height:p.height,videoWidth:p.videoWidth,videoHeight:p.videoHeight}),p.removeEventListener&&p.removeEventListener("play",k),E()||_()?o(d.default.create("Already busy","Probably another browser window is using your webcam?",t)):(l=!0,O())}catch(e){w(),o(e)}}function x(){R("loadedmetadata",{readyState:p.readyState,paused:p.paused,width:p.width,height:p.height,videoWidth:p.videoWidth,videoHeight:p.videoHeight}),p.removeEventListener&&p.removeEventListener("loadedmetadata",x),E()||_()||(y.emit(a.default.LOADED_META_DATA),m.isAndroid()&&A(),h=!0,O())}t&&t.isAudioEnabled()&&(n||(n=new s.default(this,t)));try{var T=function(e){var t,n=function(e){var t;return e&&e.getVideoTracks&&(t=e.getVideoTracks()),t}(e);return n&&n[0]&&(t=n[0]),t}(e);if(T){if(!T.enabled)throw d.default.create("Webcam is disabled","The video track seems to be disabled. Enable it in your system.",t);var j;T.label&&T.label.length>0&&(j=T.label),j+=" with enabled=".concat(T.enabled),j+=", muted=".concat(T.muted),j+=", remote=".concat(T.remote),j+=", readyState=".concat(T.readyState),j+=", error=".concat(T.error),t.debug("UserMedia: ".concat(T.kind," detected."),j||"")}else t.debug("UserMedia: detected (but no video tracks exist");c.default.forEach((function(e){p.addEventListener(e,S,!1)})),p.addEventListener("loadedmetadata",x),p.addEventListener("play",k),p.addEventListener("error",(function(e){t.logger.warn("Caught video element error event: %s",(0,f.default)(e))})),v(e),A()}catch(e){y.emit(a.default.ERROR,e)}},this.isReady=function(){return Boolean(p.src)},this.stop=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};try{var r=t.aboutToInitialize,i=t.switchingFacingMode;if(!r){e||(e=w());var o=function(e){var t;return e&&e.getTracks&&(t=e.getTracks()),t}(e),s=!1;o&&o.forEach((function(e){e.stop&&(s=!0,e.stop())})),!s&&e&&e.stop&&e.stop(),v(null),n&&n.stop(),n=null}i||(b=g=!1)}catch(e){y.emit(a.default.ERROR,e)}},this.createCanvas=function(){return(0,i.default)("canvas",{width:this.getRawWidth(!0),height:this.getRawHeight(!0)})},this.getVideoHeight=function(){return p.videoHeight},this.getVideoWidth=function(){return p.videoWidth},this.hasVideoWidth=function(){return this.getVideoWidth()>0},this.getRawWidth=function(n){var r=this.getVideoWidth(),i=t.hasDefinedWidth();return(i||t.hasDefinedHeight())&&(r=!n&&i?t.video.width:e.calculateWidth(n)),n&&(r=e.limitWidth(r)),r},this.getRawHeight=function(n){var r;if(t.hasDefinedDimension()){if((r=e.calculateHeight(n))<1)throw d.default.create("Bad dimensions","Calculated raw height cannot be less than 1!",t)}else if((r=this.getVideoHeight())<1)throw d.default.create("Bad dimensions","Raw video height from DOM element cannot be less than 1!",t);return n&&(r=e.limitHeight(r)),r},this.getRawVisuals=function(){return p},this.pause=function(){b=!0},this.isPaused=function(){return b},this.resume=function(){b=!1},this.record=function(){g=!0},this.isRecording=function(){return g},this.getAudioSampleRate=function(){return n?n.getSampleRate():-1},this.getCharacteristics=function(){return{audioSampleRate:this.getAudioSampleRate(),muted:p&&p.muted,width:p&&p.width,height:p&&p.height,videoWidth:p&&p.videoWidth,videoHeight:p&&p.videoHeight}}};var i=r(e("hyperscript")),o=r(e("safe-json-stringify")),a=r(e("./../../events")),s=r(e("./../../util/audioRecorder")),u=r(e("./../../util/browser")),l=r(e("./../../util/eventEmitter")),c=r(e("./../../util/mediaEvents")),f=r(e("./../../util/pretty")),d=r(e("./../../util/videomailError")),h="|—O—|"},{"./../../events":113,"./../../util/audioRecorder":119,"./../../util/browser":120,"./../../util/eventEmitter":122,"./../../util/mediaEvents":124,"./../../util/pretty":125,"./../../util/videomailError":126,"@babel/runtime/helpers/interopRequireDefault":4,hyperscript:62,"safe-json-stringify":93}],"videomail-client":[function(e,t,n){"use strict";var r=e("@babel/runtime/helpers/interopRequireDefault");Object.defineProperty(n,"__esModule",{value:!0}),n.default=void 0;var i=r(e("./client"));n.default=i.default},{"./client":111,"@babel/runtime/helpers/interopRequireDefault":4}]},{},["videomail-client"])("videomail-client")}));
-//# sourceMappingURL=videomail-client.min.js.map
diff --git a/prototype/js/videomail-client.min.js.map b/prototype/js/videomail-client.min.js.map
deleted file mode 100644
index dcb08ab7..00000000
--- a/prototype/js/videomail-client.min.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"file":"videomail-client.min.js","names":["f","exports","module","define","amd","window","global","self","this","VideomailClient","r","e","n","t","o","i","c","require","u","a","Error","code","p","call","length","_dereq_","Array","__esModule","arrayLikeToArray","isArray","toPropertyKey","Object","defineProperty","value","enumerable","configurable","writable","default","Symbol","iterator","from","TypeError","arrayWithoutHoles","iterableToArray","unsupportedIterableToArray","nonIterableSpread","_typeof","toPrimitive","String","Number","constructor","prototype","toString","slice","name","test","root","factory","modules","installedModules","__webpack_require__","moduleId","id","loaded","m","target","listener","options","obj","key","optionName","arguments","undefined","addEventListener","listenerOptions","_checkSupport","SupportMap","assign","_OptionsMap","_constants","_defineProperty","OptionsMap","PASSIVE","CAPTURE","ONCE","keys","forEach","k","property","opts","get","removeListener","checkSupportForProperty","methods","EventEmitter","inherits","raf","defaultRAFObject","requestAnimationFrame","cancelAnimationFrame","cancel","returnTrue","Animitter","__delay","delay","fixedDelta","frameCount","deltaTime","elapsedTime","__running","__completed","setFPS","fps","Infinity","setRequestAnimationFrameObject","requestAnimationFrameObject","onStart","scope","rAFID","now","Date","running","__lastTime","emit","lastRAFObject","drawFrame","__isReadyForUpdate","update","method","off","trigger","complete","stop","dispose","removeAllListeners","getDeltaTime","getElapsedTime","getFPS","getFPSLimit","__fps","getFrameCount","getRequestAnimationFrameObject","isRunning","isCompleted","reset","lastTime","half","Math","ceil","makeThrottle","object","start","setTimeout","globalFixedDelta","min","createAnimitter","fn","_instance","on","bind","apply","bound","fnKey","loop","functionKeys","arr","push","functions","hasBind","Function","getTime","events","float32Array","toBuffer","Int16Array","byteLength","b64","lens","getLens","validLen","placeHoldersLen","toByteArray","tmp","Arr","_byteLength","curByte","len","revLookup","charCodeAt","fromByteArray","uint8","extraBytes","parts","maxChunkLength","len2","encodeChunk","lookup","join","Uint8Array","indexOf","end","num","output","undef","nativeSplit","split","compliantExecNpcg","exec","str","separator","limit","separator2","match","lastIndex","lastLength","flags","ignoreCase","multiline","extended","sticky","lastLastIndex","RegExp","source","index","replace","Buffer","base64","ieee754","SlowBuffer","alloc","INSPECT_MAX_BYTES","K_MAX_LENGTH","createBuffer","RangeError","buf","__proto__","arg","encodingOrOffset","allocUnsafe","string","encoding","isEncoding","actual","write","fromString","ArrayBuffer","isView","fromArrayLike","isInstance","buffer","array","byteOffset","fromArrayBuffer","valueOf","b","isBuffer","checked","copy","numberIsNaN","type","data","fromObject","assertSize","size","mustMatch","loweredCase","utf8ToBytes","base64ToBytes","toLowerCase","slowToString","hexSlice","utf8Slice","asciiSlice","latin1Slice","base64Slice","utf16leSlice","swap","bidirectionalIndexOf","val","dir","arrayIndexOf","lastIndexOf","indexSize","arrLength","valLength","read","readUInt16BE","foundIndex","found","j","hexWrite","offset","remaining","strLen","parsed","parseInt","substr","utf8Write","blitBuffer","asciiWrite","byteArray","asciiToBytes","latin1Write","base64Write","ucs2Write","units","hi","lo","utf16leToBytes","res","secondByte","thirdByte","fourthByte","tempCodePoint","firstByte","codePoint","bytesPerSequence","codePoints","MAX_ARGUMENTS_LENGTH","fromCharCode","decodeCodePointsArray","kMaxLength","TYPED_ARRAY_SUPPORT","foo","typedArraySupport","console","error","species","poolSize","fill","allocUnsafeSlow","_isBuffer","compare","x","y","concat","list","pos","swap16","swap32","swap64","toLocaleString","equals","inspect","max","trim","thisStart","thisEnd","thisCopy","targetCopy","includes","isFinite","toJSON","_arr","ret","out","toHex","bytes","checkOffset","ext","checkInt","checkIEEE754","writeFloat","littleEndian","noAssert","writeDouble","newBuf","subarray","readUIntLE","mul","readUIntBE","readUInt8","readUInt16LE","readUInt32LE","readUInt32BE","readIntLE","pow","readIntBE","readInt8","readInt16LE","readInt16BE","readInt32LE","readInt32BE","readFloatLE","readFloatBE","readDoubleLE","readDoubleBE","writeUIntLE","writeUIntBE","writeUInt8","writeUInt16LE","writeUInt16BE","writeUInt32LE","writeUInt32BE","writeIntLE","sub","writeIntBE","writeInt8","writeInt16LE","writeInt16BE","writeInt32LE","writeInt32BE","writeFloatLE","writeFloatBE","writeDoubleLE","writeDoubleBE","targetStart","copyWithin","set","INVALID_BASE64_RE","leadSurrogate","base64clean","src","dst","GetIntrinsic","callBind","$indexOf","allowMissing","intrinsic","setFunctionLength","$TypeError","$apply","$call","$reflectApply","$defineProperty","$max","originalFunction","func","applyBind","document","createElement","quality","types","canvas","composeMimeType","isMatch","getTestCanvas","width","height","canvasSupportsMimeType","toDataURL","figureMimeType","uriToBuffer","atob","s","getMimeType","indexof","isTruthy","elem","cl","classList","add","remove","contains","toggle","token","className","item","getTokens","setTokens","splice","filter","Emitter","mixin","event","_callbacks","once","removeEventListener","cb","callbacks","args","listeners","hasListeners","container","comparison","compareDocumentPosition","objectToString","isBoolean","isNull","isNullOrUndefined","isNumber","isString","isSymbol","isUndefined","isRegExp","re","isObject","isDate","d","isError","isFunction","isPrimitive","createErrorLib","lastcreateError","createError","noConflict","getName","getTarget","properties","getProps","ErrorCtor","message","attachProps","stack","captureStackTrace","Err","context","inheritedKeys","l","clone","cloned","create","attr","hasOwnProperty","isMergeableObject","isNonNullObject","stringValue","$$typeof","REACT_ELEMENT_TYPE","isReactElement","isSpecial","for","cloneUnlessOtherwiseSpecified","deepmerge","defaultArrayMerge","map","element","getKeys","getOwnPropertySymbols","symbol","propertyIsEnumerable","getEnumerableOwnPropertySymbols","propertyIsOnObject","_","mergeObject","destination","propertyIsUnsafe","customMerge","getMergeFunction","arrayMerge","sourceIsArray","all","reduce","prev","next","deepmerge_1","$SyntaxError","gopd","nonEnumerable","nonWritable","nonConfigurable","loose","desc","Despot","_singletonDespotInstance","Event","Keys","noop","visible","onChange","broadcast","noopShim","hidden","geval","prefix","mozHidden","msHidden","webkitHidden","detectPrefix","substring","doccy","topLevel","minDoc","process","eos","stream","callback","ws","_writableState","rs","_readableState","readable","cancelled","onlegacyfinish","onfinish","onend","onexit","exitCode","onerror","err","onclose","nextTick","onclosenexttick","ended","destroyed","onrequest","req","setHeader","abort","isRequest","stdio","isChildProcess","_process","EvalError","ReferenceError","SyntaxError","URIError","ReflectOwnKeys","R","Reflect","ReflectApply","receiver","ownKeys","getOwnPropertyNames","NumberIsNaN","isNaN","init","emitter","Promise","resolve","reject","errorListener","resolver","eventTargetAgnosticAddListener","handler","addErrorHandlerIfEventEmitter","_events","_eventsCount","_maxListeners","defaultMaxListeners","checkListener","_getMaxListeners","that","_addListener","prepend","existing","warning","newListener","unshift","warned","w","count","warn","onceWrapper","fired","wrapFn","_onceWrap","state","wrapped","_listeners","unwrap","evlistener","unwrapListeners","arrayClone","listenerCount","wrapListener","getPrototypeOf","setMaxListeners","getMaxListeners","doError","er","addListener","prependListener","prependOnceListener","position","originalListener","shift","pop","spliceOne","rawListeners","eventNames","stringify","stable","deterministicStringify","stableStringify","LIMIT_REPLACE_NODE","CIRCULAR_REPLACE_NODE","replacerStack","defaultOptions","depthLimit","MAX_SAFE_INTEGER","edgesLimit","replacer","spacer","decirc","JSON","replaceGetterValues","part","setReplace","parent","propertyDescriptor","getOwnPropertyDescriptor","edgeIndex","depth","compareFunction","deterministicDecirc","sort","v","BITS","BYTES","EMPTY","JEDEC","ROUND","STRING","STRINGS","iec","bits","jedec","fullform","filesize","pad","base","round","locale","localeOptions","symbols","standard","fullforms","exponent","roundingMethod","precision","result","full","neg","roundingFunc","floor","log","toPrecision","padEnd","unit","partial","fmt","escaped","ptn","flag","toStr","concatty","arrLike","slicy","boundLength","boundArgs","joiner","joiny","Empty","implementation","_extends","getFormData","getFieldData","NODE_LIST_CLASSES","IGNORED_ELEMENT_TYPES","button","fieldset","submit","CHECKED_INPUT_TYPES","checkbox","radio","TRIM_RE","form","includeDisabled","elementName","elementNames","elementNameLookup","elements","disabled","_i","_l","fieldName","getFormElementValue","allRadios","selectedIndex","selected","multiple","files","hasAttribute","$Error","$EvalError","$RangeError","$ReferenceError","$URIError","$Function","getEvalledConstructor","expressionSyntax","$gOPD","throwTypeError","ThrowTypeError","calleeThrows","gOPDthrows","hasSymbols","hasProto","getProto","needsEval","TypedArray","INTRINSICS","AggregateError","Atomics","BigInt","BigInt64Array","BigUint64Array","Boolean","DataView","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","eval","Float32Array","Float64Array","FinalizationRegistry","Int8Array","Int32Array","Map","parseFloat","Proxy","Set","SharedArrayBuffer","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","WeakRef","WeakSet","errorProto","doEval","gen","LEGACY_ALIASES","hasOwn","$concat","$spliceApply","$replace","$strSlice","$exec","rePropName","reEscapeChar","getBaseIntrinsic","alias","intrinsicName","first","last","number","quote","subString","stringToPath","intrinsicBaseName","intrinsicRealName","skipFurtherCaching","isOwn","hasown","listen","broadcaster","tuple","win","hasPropertyDescriptors","hasArrayLengthDefineBug","$Object","origSymbol","hasSymbolSham","sym","symObj","syms","descriptor","$hasOwn","style","display","prop","has","GREEK","language","LANGUAGES","af","am","ar","getArabicForm","delimiter","_hideCountIf2","_digitReplacements","bg","getSlavicForm","bn","ca","ckb","cs","getCzechOrSlovakForm","cy","da","de","el","en","eo","es","et","eu","fa","fi","fo","fr","gr","he","hr","mod10","hu","is","it","ja","km","kn","ko","ku","lt","getLithuanianForm","lv","getLatvianForm","mk","mn","mr","ms","nl","no","pl","getPolishForm","pt","ro","ru","sq","sr","ta","te","uk","ur","sk","sl","sv","sw","_numberFirst","tr","th","uz","uz_CYR","vi","zh_CN","zh_TW","mo","h","decimal","renderPiece","piece","digitReplacements","formattedCount","unitName","unitCount","maxDecimalPoints","countStr","char","word","languageWord","formatPieces","pieces","possibleLanguages","fallbacks","languageToTry","languages","getLanguage","conjunction","serialComma","renderedPieces","humanizer","passedOptions","humanizerOptions","abs","msRemaining","unitMeasures","largest","unitCounts","unitMs","unitsRemainingBeforeRound","smallerUnitName","smallerUnitCount","rounded","previousUnitName","previousUnitMs","amountOfPreviousUnit","getPieces","humanizeDuration","getSupportedLanguages","ClassList","Text","cleanupFuncs","appendChild","createTextNode","setAttribute","isNode","attachEvent","detachEvent","cssText","setProperty","parentElement","replaceChild","textContent","cleanup","nodeName","nodeType","isLE","mLen","nBytes","eLen","eMax","eBias","nBits","NaN","rt","LN2","ctor","superCtor","super_","TempCtor","containers","styleElements","insertCss","css","styleElement","querySelector","containerId","createStyleElement","insertBefore","childNodes","styleSheet","hasMap","mapSizeDescriptor","mapSize","mapForEach","hasSet","setSizeDescriptor","setSize","setForEach","weakMapHas","weakSetHas","weakRefDeref","deref","booleanValueOf","functionToString","$match","$slice","$toUpperCase","toUpperCase","$toLowerCase","$test","$join","$arrSlice","$floor","bigIntValueOf","gOPS","symToString","hasShammedSymbols","toStringTag","isEnumerable","gPO","O","addNumericSeparator","sepRegex","int","intStr","dec","utilInspect","inspectCustom","custom","inspectSymbol","wrapQuotes","defaultStyle","quoteChar","quoteStyle","inspect_","seen","maxStringLength","customInspect","indent","numericSeparator","inspectString","bigIntStr","maxDepth","baseIndent","getIndent","noIndent","newOpts","nameOf","arrObjKeys","symString","markBoxed","HTMLElement","getAttribute","isElement","attrs","attributes","xs","singleLineValues","indentedJoin","cause","isMap","mapParts","collectionOf","isSet","setParts","isWeakMap","weakCollectionOf","isWeakSet","isWeakRef","isBigInt","globalThis","ys","isPlainObject","protoTag","stringTag","tag","trailer","lowbyte","entries","lineJoiner","isArr","symMap","wrappy","called","onceStrict","onceError","strict","proto","getNanoSeconds","hrtime","loadTime","moduleLoadTime","nodeLoadTime","upTime","performance","uptime","version","arg1","arg2","arg3","cachedSetTimeout","cachedClearTimeout","defaultSetTimout","defaultClearTimeout","runTimeout","fun","clearTimeout","currentQueue","queue","draining","queueIndex","cleanUpNextTick","drainQueue","timeout","run","marker","runClearTimeout","Item","title","browser","env","argv","versions","binding","cwd","chdir","umask","percentTwenties","Format","formatters","RFC1738","RFC3986","parse","formats","utils","defaults","allowDots","allowEmptyArrays","allowPrototypes","allowSparse","arrayLimit","charset","charsetSentinel","comma","decodeDotInKeys","decoder","decode","duplicates","ignoreQueryPrefix","interpretNumericEntities","parameterLimit","parseArrays","plainObjects","strictDepth","strictNullHandling","$0","numberStr","parseArrayValue","parseKeys","givenKey","valuesParsed","child","segment","chain","leaf","cleanRoot","charAt","decodedRoot","parseObject","normalizeParseOptions","tempObj","cleanStr","skipIndex","bracketEqualsPos","maybeMap","encodedVal","combine","parseValues","newObj","merge","compact","getSideChannel","arrayPrefixGenerators","brackets","indices","repeat","pushToArray","valueOrArray","toISO","toISOString","defaultFormat","addQueryPrefix","arrayFormat","encode","encodeDotInKeys","encoder","encodeValuesOnly","format","formatter","serializeDate","date","skipNulls","sentinel","generateArrayPrefix","commaRoundTrip","sideChannel","tmpSc","step","findFlag","objKeys","values","encodedPrefix","adjustedPrefix","encodedKey","keyPrefix","valueSideChannel","normalizeStringifyOptions","joined","hexTable","arrayToObject","acc","refs","compacted","compactQueue","strWithoutPlus","unescape","defaultEncoder","kind","escape","mapped","mergeTarget","targetItem","vendors","suffix","caf","frameDuration","_now","cp","handle","polyfill","pna","objectKeys","Duplex","util","Readable","Writable","allowHalfOpen","onEndNT","highWaterMark","_destroy","PassThrough","Transform","_transform","chunk","ReadableState","EElistenerCount","Stream","OurUint8Array","debugUtil","debug","debuglog","StringDecoder","BufferList","destroyImpl","kProxyEvents","isDuplex","objectMode","readableObjectMode","hwm","readableHwm","readableHighWaterMark","defaultHwm","pipes","pipesCount","flowing","endEmitted","reading","sync","needReadable","emittedReadable","readableListening","resumeScheduled","defaultEncoding","awaitDrain","readingMore","_read","destroy","readableAddChunk","addToFront","skipChunkCheck","emitReadable","onEofChunk","chunkInvalid","_uint8ArrayToBuffer","addChunk","maybeReadMore","needMoreData","_undestroy","undestroy","isPaused","setEncoding","enc","MAX_HWM","howMuchToRead","head","computeNewHighWaterMark","emitReadable_","flow","maybeReadMore_","nReadingNextTick","resume_","fromList","clear","hasStrings","nb","tail","copyFromBufferString","copyFromBuffer","fromListPartial","endReadable","endReadableNT","nOrig","doRead","pipe","dest","pipeOpts","endFn","stdout","stderr","unpipe","onunpipe","unpipeInfo","hasUnpiped","ondrain","ondata","cleanedUp","needDrain","pipeOnDrain","increasedAwaitDrain","pause","resume","dests","ev","wrap","_this","paused","_fromList","isarray","afterTransform","ts","_transformState","transforming","writecb","writechunk","needTransform","writeencoding","transform","flush","_flush","prefinish","done","_write","_this2","err2","setImmediate","CorkedRequest","entry","finish","corkReq","pendingcb","corkedRequestsFree","onCorkedFinish","asyncWrite","WritableState","internalUtil","deprecate","realHasInstance","nop","writableObjectMode","writableHwm","writableHighWaterMark","finalCalled","ending","finished","noDecode","decodeStrings","writing","corked","bufferProcessing","onwrite","writelen","onwriteStateUpdate","finishMaybe","errorEmitted","onwriteError","needFinish","bufferedRequest","clearBuffer","afterWrite","lastBufferedRequest","prefinished","bufferedRequestCount","writev","_writev","final","_final","doWrite","onwriteDrain","holder","allBuffers","isBuf","callFinal","need","getBuffer","current","hasInstance","writeAfterEnd","valid","validChunk","newChunk","decodeChunk","writeOrBuffer","cork","uncork","setDefaultEncoding","endWritable","timers","instance","Constructor","_classCallCheck","emitErrorNT","readableDestroyed","writableDestroyed","copyProps","SafeBuffer","nenc","retried","_normalizeEncoding","normalizeEncoding","text","utf16Text","utf16End","fillLast","utf8FillLast","base64Text","base64End","simpleWrite","simpleEnd","lastNeed","lastTotal","lastChar","utf8CheckByte","byte","utf8CheckExtraBytes","total","utf8CheckIncomplete","hasProp","throwsMessage","ensureProperties","visit","fResult","aResult","safeGetValueFromPropertyOnObject","space","hasDescriptors","gOPD","functionLengthIsConfigurable","functionLengthIsWritable","callBound","$WeakMap","$Map","$weakMapGet","$weakMapSet","$weakMapHas","$mapGet","$mapSet","$mapHas","listGetNode","curr","$wm","$m","$o","channel","assert","objects","node","listGet","listHas","listSet","_duplexState","idx","bufferIndex","getStateLength","Agent","_defaults","_setDefaults","request","def","_len","_key","safeStringify","qs","RequestBase","ResponseBase","url","Request","getXHR","XMLHttpRequest","serialize","pairs","pushEncodedKeyValuePair","subkey","parseString","string_","pair","length_","isJSON","mime","Response","request_","xhr","responseType","responseText","statusText","status","_setStatusProperties","headers","lines","fields","line","field","parseHeader","getAllResponseHeaders","header","getResponseHeader","_setHeaderProperties","_responseType","body","response","_parseBody","_query","_header","new_error","original","rawResponse","statusCode","_isResponseOK","serializeObject","html","json","xml","urlencoded","_parser","toError","accept","auth","user","pass","btoa","_auth","query","attach","file","_data","_getFormData","append","_formData","FormData","_shouldRetry","_retry","_callback","_maxRetries","retries","_retries","crossDomainError","crossDomain","agent","_isHost","_endCalled","_finalizeQueryString","_end","_setUploadTimeout","_uploadTimeout","_uploadTimeoutTimer","_timeoutError","_aborted","_setTimeouts","readyState","_responseTimeoutTimer","timedout","handleProgress","direction","percent","upload","username","password","open","_withCredentials","withCredentials","contentType","_serializer","setRequestHeader","send","del","delete","patch","post","put","_timer","_timeout","_responseTimeout","option","deadline","retry","_retryCallback","ERROR_CODES","STATUS_CODES","override","timedoutError","then","_fullfilledPromise","catch","use","ok","_okCallback","getHeader","unset","base64Encoder","redirects","_maxRedirects","maxResponseSize","_maxResponseSize","isObject_","sortQuery","_sort","queryArray","_appendQueryString","reason","errno","ct","parameters","params","links","link","parseLinks","trunc","statusType","info","redirect","clientError","serverError","created","accepted","noContent","badRequest","unauthorized","notAcceptable","forbidden","notFound","unprocessableEntity","cleanHeader","changesOrigin","host","authorization","cookie","isGzipOrDeflateEncoding","isBrotliEncoding","clearImmediate","immediateIds","nextImmediateId","Timeout","clearFn","_id","_clearFn","setInterval","clearInterval","close","unref","ref","enroll","msecs","_idleTimeoutId","_idleTimeout","unenroll","_unrefActive","active","_onTimeout","FUNC_TYPE","UNDEF_TYPE","OBJ_TYPE","STR_TYPE","MAJOR","MODEL","NAME","TYPE","VENDOR","VERSION","ARCHITECTURE","CONSOLE","MOBILE","TABLET","SMARTTV","WEARABLE","EMBEDDED","AMAZON","APPLE","ASUS","BLACKBERRY","BROWSER","CHROME","FIREFOX","GOOGLE","HUAWEI","LG","MICROSOFT","MOTOROLA","OPERA","SAMSUNG","SHARP","SONY","XIAOMI","ZEBRA","FACEBOOK","CHROMIUM_OS","MAC_OS","SUFFIX_BROWSER","enumerize","enums","str1","str2","lowerize","rgxMapper","ua","arrays","q","matches","regex","props","strMapper","windowsVersionMap","ME","XP","Vista","RT","regexes","cpu","device","tablet","engine","EDGE","os","UAParser","extensions","getResult","_navigator","navigator","_ua","userAgent","_uach","userAgentData","_rgxmap","mergedRegexes","extend","_isSelfNav","getBrowser","_browser","brave","isBrave","getCPU","_cpu","getDevice","_device","mobile","standalone","maxTouchPoints","getEngine","_engine","getOS","_os","platform","getUA","setUA","CPU","DEVICE","ENGINE","OS","$","jQuery","Zepto","parser","config","localStorage","msg","trace","SIGNAL_FLUSH","onuncork","_corked","destroyer","_autoDestroy","autoDestroy","_ended","Duplexify","_writable","_readable","_readable2","_forwardDestroy","_forwardEnd","_ondrain","_drained","_forwarding","_unwrite","_unread","setWritable","setReadable","unend","onreadable","_forward","_finish","duplexify","WS","protocols","socket","isBrowser","isNative","WebSocket","socketWrite","socketWriteBrowser","bufferedAmount","bufferSize","bufferTimeout","coerceToBuffer","OPEN","protocol","binary","proxy","socketEnd","buildProxy","browserBufferSize","browserBufferTimeout","binaryType","eventListenerSupport","onopen","onmessage","chunks","buffers","MozWebSocket","wrapper","description","keywords","homepage","repository","license","author","contributors","email","main","scripts","audit","build","lint","major","minor","prettier","watch","dependencies","animitter","defined","despot","hyperscript","keymirror","superagent","devDependencies","autoprefixer","babelify","browserify","cssnano","eslint","glob","gulp","minimist","nib","postcss","router","tape","typescript","watchify","engines","npm","readmeFilename","_interopRequireDefault","_inherits","_resource","_adjustOptions","_eventEmitter","_container","localOptions","building","isBuilt","show","replay","videomail","replayParentElementId","unload","playerOnly","addPlayerDimensions","buildForm","loadForm","REPLAY_SHOWN","showReplayOnly","getReplay","setVideomail","getElement","startOver","hide","getByAlias","getByKey","canRecord","isDirty","isRecording","getLogLines","logger","getLines","public","Events","SITE_NAME_LABEL","VERSION_LABEL","ENC_TYPE_APP_JSON","ENC_TYPE_FORM","_keymirror","BUILT","FORM_READY","LOADING_USER_MEDIA","USER_MEDIA_READY","CONNECTING","CONNECTED","DISCONNECTED","COUNTDOWN","RECORDING","STOPPING","STOPPED","PROGRESS","BEGIN_AUDIO_ENCODING","BEGIN_VIDEO_ENCODING","RESETTING","PAUSED","RESUMING","PREVIEW","PREVIEW_SHOWN","INVALID","VALIDATING","VALID","SUBMITTING","SUBMITTED","ERROR","BLOCKING","SENDING_FIRST_FRAME","FIRST_FRAME_SENT","HIDE","NOTIFYING","ENABLING_AUDIO","DISABLING_AUDIO","LOADED_META_DATA","EVENT_EMITTED","GOING_BACK","STARTING_OVER","ASKING_WEBCAM_PERMISSION","VISIBLE","INVISIBLE","SWITCH_FACING_MODE","SERVER_READY","UNLOADING","_package","_addOptionsFunctions","logStackSize","verbose","NODE_ENV","baseUrl","socketUrl","siteName","enablePause","enableAutoPause","enableSpace","submitWithVideomail","disableSubmit","enableAutoValidation","enableAutoUnload","enableAutoSubmission","enctype","selectors","containerClass","replayClass","userMediaClass","visualsClass","buttonClass","buttonsClass","recordButtonClass","pauseButtonClass","resumeButtonClass","previewButtonClass","recordAgainButtonClass","submitButtonClass","subjectInputName","fromInputName","toInputName","ccInputName","bccInputName","bodyInputName","sendCopyInputName","keyInputName","parentKeyInputName","formId","submitButtonId","submitButtonSelector","audio","enabled","switch","volume","video","limitSeconds","countdown","facingMode","facingModeButton","stretch","image","pausedHeader","pausedHint","sending","limitReached","audioOff","audioOn","buttons","record","recordAgain","preview","notifier","entertain","entertainClass","entertainLimit","entertainInterval","timeouts","userMedia","connection","pingInterval","loadUserMediaOnRecord","adjustFormDataBeforePosting","to","cc","bcc","subject","displayErrors","adjustFormOnBrowserError","reportErrors","fakeUaString","optionsWithFunctions","applyDefaultValue","packedError","packError","originalError","details","fetch","identifierName","identifierValue","_superagent","timezoneId","prettyError","identifier","queryParams","returnedVideomail","reportError","applyDefaultValues","adjustedVideomail","formData","formType","Intl","DateTimeFormat","resolvedOptions","timeZone","audioEnabled","hasDefinedWidth","hasDefinedHeight","hasDefinedDimension","hasDefinedDimensions","getRatio","ratio","hasVideoDimensions","videoHeight","videoWidth","isAudioEnabled","setAudioEnabled","isAutoPauseEnabled","_deepmerge","_collectLogger","_options","_destination","collectLogger","scriptProcessor","audioInput","vcAudioContext","getAudioContextClass","AudioContext","webkitAudioContext","hasAudioContext","getAudioContext","localMediaStream","createGain","createMediaStreamSource","exc","_videomailError","isFirefox","_isPowerOfTwo","gain","createScriptProcessor","CHANNELS","connect","onaudioprocess","inputBuffer","getChannelData","_audioSample","onAudioProcess","disconnect","getSampleRate","sampleRate","_typeof2","_defined","_uaParserJs","videoType","firefoxDownload","edgeDownload","chromeDownload","uaParser","isIOS","browserVersion","isChrome","isChromium","firefox","osVersion","isWindows","isEdge","isSafari","isOpera","isAndroid","chromeBased","isFacebook","isMobile","isOkSafari","isOkIOS","isBadIOS","isHTTPS","fakeHttps","location","okBrowser","getUserMediaWarning","getRecommendation","isChromeBased","canPlayType","hasNavigator","mediaDevices","getUserMedia","getUserMedia_","checkRecordingCapabilities","IOS_PROBLEM","BROWSER_PROBLEM","checkBufferTypes","getVideoType","getNoAccessIssue","explanation","getUsefulData","architecture","lifo","level","_formatUtil","_toConsumableArray2","groupCollapsed","groupEnd","moreArguments","_safeJsonStringify","_despot","eventName","_filesize2","_humanizeDuration","toTime","anything","DASH","SEPARATOR","arrayToString","sLines","propertyNames","excludes","exclude","_createError","_pretty","VIDEOMAIL_ERR_NAME","VideomailError","logLines","promise","screen","orientation","pretty","PERMISSION_DENIED","NOT_ALLOWED_ERROR","NOT_CONNECTED","DOM_EXCEPTION","STARTING_FAILED","MEDIA_DEVICE_NOT_SUPPORTED","WEBCAM_PROBLEM","OVERCONSTRAINED","NOT_FOUND_ERROR","NOT_READABLE_ERROR","SECURITY_ERROR","TRACK_START_ERROR","INVALID_STATE_ERROR","_err$constructor","errType","Browser","NotFoundError","constraint","newUrl","href","originalExplanation","resource","usefulClientData","cookies","errData","colorDepth","errNo","errCode","errName","errConstraint","errConstructorName","videomailError","hasClass","getClassList","removeDimensions","hideButtons","browserProblem","hideForm","_contains","_hidden","_hyperscript","Buttons","buttonsElement","recordButton","pauseButton","resumeButton","previewButton","recordAgainButton","submitButton","audioOnRadioPair","audioOffRadioPair","built","isShown","disable","tagName","enable","adjustButton","buttonElement","replaceClickHandler","clickHandler","onclick","preventDefault","makeRadioButtonPair","radioButtonElement","radioButtonGroup","getElementById","htmlFor","label","changeHandler","onchange","makeButton","selector","innerHTML","onFormReady","onFirstFrameSent","beginWaiting","initEvents","switchingFacingMode","recordWhenReady","onUserMediaReady","adjustButtonsForPause","framesCount","onRecording","enableSubmit","isCountingDown","isRecordAgainButtonEnabled","isReady","isRecordButtonEnabled","setSubmitButton","newSubmitButton","getSubmitButton","hasForm","disableAudio","enableAudio","deep","_defineProperty2","_documentVisibility","_insertCss","_mainMinCss","_buttons","_dimension","_form","_optionsWrapper","_visuals","Container","containerElement","visibility","visuals","htmlElement","hasError","submitted","lastValidation","getFormElement","closest","findParentFormElement","_e$target","isContentEditable","contentEditable","pauseOrResume","recordOrStop","processError","endWaiting","correctDimensions","getRecorderWidth","finalizeSubmissions","formResponse","validateOptions","formElement","findSubmitButton","replayParentElement","getParentElement","playerHeight","calculateHeight","responsive","playerWidth","calculateWidth","limitWidth","limitHeight","fnOptions","hasElement","buildOptions","_replayParentElement","buildChildren","reference","unloadChildren","isReplayShown","back","enableForm","keepHidden","isNotifying","validate","force","runValidation","isConnected","isUserMediaLoaded","isConnecting","_event$target","targetName","whyInvalid","invalidData","visualsValid","invalidInput","getInvalidElement","isHidden","_recipients$to","_recipients$cc","_recipients$bcc","recipients","getRecipients","toIsConfigured","ccIsConfigured","bccIsConfigured","hasTo","hasCc","hasBcc","disableForm","buttonsToo","submitAll","startSubmission","videomailFormData","transformFormData","isPost","isPut","recordingStats","getRecordingStats","getRecorderHeight","downlink","effectiveType","rtt","submitVideomail","err1","videomailResponse","submitForm","isRecorderUnloaded","isOutsideElementOf","parentNode","loadVideomail","doTheSubmit","figureMinHeight","isInteger","limitedWidth","outerWidth","rect","getBoundingClientRect","right","left","getOuterWidth","limitedHeight","documentElement","clientHeight","calculatedWidth","trimEmail","Form","keyInput","FORM_FIELDS","parentKey","sendCopy","getData","setDisabled","isRegisteredFormField","formElementName","getRegisteredFormElements","querySelectorAll","registeredElements","resetForm","inputElements","inputElement","transformedFormData","formFieldValue","input","videomailKey","dispatchEvent","bubbles","hideAll","removeAllInputListeners","validity","newOptions","_recorderInsides","_notifier","_recorder","_replay","Visuals","visualsElement","recorder","recorderInsides","noScriptElement","isRecordable","clientWidth","blockingOptions","removeChild","hidePause","isVisible","showPause","resumeCountdown","startCountdown","getRecorder","getAudioSampleRate","showVisuals","isUnloaded","useBoundingClientRect","checkTimer","intervalSum","isNotifierBuilt","hideReplay","hideRecorder","countdownElement","intervalId","countBackward","fire","facingModeElement","pausedBlockElement","pausedHeaderElement","pausedHintElement","hasPausedHint","recordNoteElement","setNear","setNigh","recordNote","recordTimerElement","started","nearComputed","endNighComputed","thresholdReached","secs","threshold","mins","remainingSeconds","isNear","endIsNigh","getStartSeconds","check","newCountdown","_countdown","_facingMode","_pausedNote","_recordNote","_recordTimer","RecorderInsides","pausedNote","recordTimer","onResetting","hideCountdown","NOTIFIER_MESSAGE_ID","Notifier","notifyElement","explanationElement","entertainTimeoutId","entertaining","messageElement","notify","lead","stillWait","onStopping","frameProgress","sampleProgress","overallProgress","setExplanation","onProgress","hideExplanation","onBeginVideoEncoding","runEntertainment","randomBackgroundClass","random","cancelEntertainment","getMessageElement","blocking","problem","notifyOptions","messageOptions","setMessage","_animitter","_canvasToBuffer","_websocketStream","_humanize","_userMedia","PIPE_SYMBOL","Recorder","originalAnimationFrameObject","recorderElement","userMediaTimeout","retryTimeout","bytesSum","ctx","userMediaLoaded","userMediaLoading","submitting","unloaded","stopTime","connecting","connected","waitingTime","frame","recordingBufferLength","recordingBuffer","samplesCount","confirmedFrameNumber","confirmedSampleNumber","writeStream","stopPings","onFlushedCallback","onAudioSample","audioSample","newLoop","draw","calculateFrameProgress","toFixed","calculateSampleProgress","updateOverallProgress","initSocket","url2Connect","perMessageDeflate","isClosing","CLOSING","command","executeCommand","userMediaErrorCallback","clearUserMediaTimeout","getCharacteristics","errorListeners","getUserMediaCallback","localStream","loadGenuineUserMedia","constraints","frameRate","ideal","getSupportedConstraints","genuineUserMediaRequest","loadUserMedia","mp4","setMp4Source","webm","setWebMSource","sample","updateSampleProgress","writeCommand","commandObj","getIntervalSum","getAvgFps","reInitializeAudio","onFlushed","frameNumber","drawImage","getRawVisuals","frameControlBuffer","setAnimationFrameObject","wantedInterval","processingTime","loopWithTimeouts","switchFacingMode","userMediaVideoWidth","getVideoWidth","getVideoHeight","avgFps","wantedFps","avgInterval","unloadRemainingEventListeners","eventType","createCanvas","getContext","_deltaTime","avgFPS","muted","hasVideoWidth","getRawWidth","getRawHeight","getRawVisualUserMedia","_addEventlistenerWithOptions","Replay","replayElement","isStandalone","setVideoSource","bustCache","getVideoSource","play","newVideomail","vtt","tracks","getElementsByTagName","firstTrack","track","setTrackSource","poster","attributeContainer","attribute","copyAttributes","hasAudio","recorderWidth","recorderHeight","load","videoSelector","buildElement","sources","audioRecorder","currentVisualStream","rawVisualUserMedia","setVisualStream","srcObject","URL","webkitURL","createObjectURL","attachMediaStream","removeAttribute","getVisualStream","mozSrcObject","hasEnded","visualStream","hasInvalidDimensions","logEvent","EVENT_ASCII","outputEvent","_mediaEvents","videoCallback","audioCallback","endedEarlyCallback","aboutToInitialize","onPlayReached","onLoadedMetaDataReached","playingPromiseReached","audioRecord","unloadAllEventListeners","onPlay","onLoadedMetaData","played","fireCallbacks","_audioRecorder","videoTrack","videoTracks","getVideoTracks","getFirstVideoTrack","remote","getTracks","newStopApiFound","rawWidth","widthDefined","rawHeight","audioSampleRate","_client"],"sources":["videomail-client.min.js"],"mappings":"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","ignoreList":[],"sourcesContent":[]}
\ No newline at end of file
diff --git a/prototype/player_only.html b/prototype/player_only.html
deleted file mode 100644
index 428afd69..00000000
--- a/prototype/player_only.html
+++ /dev/null
@@ -1,134 +0,0 @@
-
-
-
- videomail-client examples
-
-
-
- A form to play an existing videomail, nothing else
-
-
-
-
-
diff --git a/prototype/player_only_with_form.html b/prototype/player_only_with_form.html
deleted file mode 100644
index b0727bae..00000000
--- a/prototype/player_only_with_form.html
+++ /dev/null
@@ -1,166 +0,0 @@
-
-
-
- videomail-client examples
-
-
-
-
- A form to play an existing videomail, with a form
-
-
-
-
-
-
diff --git a/prototype/predefined.html b/prototype/predefined.html
deleted file mode 100644
index c189d049..00000000
--- a/prototype/predefined.html
+++ /dev/null
@@ -1,53 +0,0 @@
-
-
-
- videomail-client examples
-
-
-
- Accept existing HTML, start recording asap and allow 10 min recording wohooo
-
-
-
Please enable Javascript
-
-
-
-
-
-
-
-
-
- ◉ Record
- ║ Pause
- ◉ Resume
- ► Preview
- ◀ Record again
-
-
-
-
-
-
diff --git a/prototype/simple.html b/prototype/simple.html
deleted file mode 100644
index 52f4a265..00000000
--- a/prototype/simple.html
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
- videomail-client examples
-
-
-
- Dead simple with most defaults
-
-
-
-
-
diff --git a/prototype/simple_jpegs.html b/prototype/simple_jpegs.html
deleted file mode 100644
index 8360a6d8..00000000
--- a/prototype/simple_jpegs.html
+++ /dev/null
@@ -1,30 +0,0 @@
-
-
-
- videomail-client examples
-
-
-
- Dead simple too but based on jpeg image frames only
-
-
-
-
-
diff --git a/prototype/user_media_on_record.html b/prototype/user_media_on_record.html
deleted file mode 100644
index 85696bd8..00000000
--- a/prototype/user_media_on_record.html
+++ /dev/null
@@ -1,32 +0,0 @@
-
-
-
- videomail-client examples
-
-
-
- Only when clicking on record button, ask for webcam access
-
- With the option loadUserMediaOnRecord, the user won't be asked for webcam access on
- page load but later, only when the record button is being pressed.
-
-
-
-
-
-
diff --git a/src/client.js b/src/client.ts
similarity index 95%
rename from src/client.js
rename to src/client.ts
index cdc1b2ac..149021c5 100644
--- a/src/client.js
+++ b/src/client.ts
@@ -2,21 +2,13 @@ import inherits from "inherits";
import Constants from "./constants";
import Events from "./events";
+
import Resource from "./resource";
-import Browser from "./util/browser";
-import adjustOptions from "./util/adjustOptions";
+
import EventEmitter from "./util/eventEmitter";
import Container from "./wrappers/container";
-
-let browser;
-
-function getBrowser(localOptions) {
- if (!browser) {
- browser = new Browser(localOptions);
- }
-
- return browser;
-}
+import adjustOptions from "./util/adjustOptions";
+import getBrowser from "./util/getBrowser";
const VideomailClient = function (options) {
const localOptions = adjustOptions(options);
diff --git a/src/constants.js b/src/constants.ts
similarity index 100%
rename from src/constants.js
rename to src/constants.ts
diff --git a/src/events.js b/src/events.ts
similarity index 100%
rename from src/events.js
rename to src/events.ts
diff --git a/src/index.js b/src/index.js
deleted file mode 100644
index c1ae0291..00000000
--- a/src/index.js
+++ /dev/null
@@ -1,3 +0,0 @@
-import Client from "./client";
-
-export default Client;
diff --git a/src/index.ts b/src/index.ts
new file mode 100644
index 00000000..9c4dfc6b
--- /dev/null
+++ b/src/index.ts
@@ -0,0 +1,13 @@
+import Client from "./client";
+
+/*
+ TODO REALIzE THIS NEED MORE WORK AND CAREFUL MIGRATIONS
+ TODO RECONSIDER REBASING WITH DEV STEP BY STEP, TOO MUCH RISK. FIRST WITH DIRECTORY RENAMES ONLY
+ TODO BECAUSE MOST PROBLEMS COME FROM THE EVENT EMITTER, REFACTOR THIS
+ TODO REBASE MORE
+ TODO RESUME MIGRATING TO TS
+ TODO REBASE MORE
+ TODO CONSIDER MIGRATING REMAINING LEGACY STORIES
+*/
+
+export default Client;
diff --git a/src/options.js b/src/options.ts
similarity index 86%
rename from src/options.js
rename to src/options.ts
index ee50f9b0..05606102 100644
--- a/src/options.js
+++ b/src/options.ts
@@ -1,16 +1,19 @@
import { version } from "../package.json";
+
+import { VideomailClientOptions } from "./types/options";
+
import addOptionsFunctions from "./util/addOptionsFunctions";
+import isProductionMode from "./util/isProductionMode";
-const PRODUCTION = process.env.NODE_ENV === "production";
+const PRODUCTION = isProductionMode();
-const options = {
+const options: VideomailClientOptions = {
logger: null, // define logging instance. leave null for default, console.
logStackSize: 30, // limits the stack size of log outputs to collect
verbose: !PRODUCTION, // set true to log more info
baseUrl: "https://videomail.io", // leave as it, permanent API url to post videos
socketUrl: "wss://videomail.io", // leave as it, permanent websocket url to send frames
siteName: "videomail-client-demo", // Required for API, use https://videomail.io/whitelist
- insertCss: true, // inserts predefined CSS, see examples
enablePause: true, // enable pause/resume button
enableAutoPause: true, // automatically pauses when window becomes inactive
enableSpace: true, // hitting space can pause recording
@@ -35,12 +38,12 @@ const options = {
// default CSS selectors you can alter, see examples
selectors: {
- containerId: "videomail",
+ containerId: undefined,
containerClass: "videomail",
replayClass: "replay",
userMediaClass: "userMedia",
visualsClass: "visuals",
- buttonClass: null, // can also be used as a default class for all buttons
+ buttonClass: undefined, // can also be used as a default class for all buttons
buttonsClass: "buttons",
recordButtonClass: "record",
@@ -61,10 +64,10 @@ const options = {
keyInputName: "videomail_key",
parentKeyInputName: "videomail_parent_key",
- formId: null, // automatically detects form if any
- submitButtonId: null, // semi-automatically detects submit button in the form
+ formId: undefined, // automatically detects form if any
+ submitButtonId: undefined, // semi-automatically detects submit button in the form
// but if that does not work, try using the
- submitButtonSelector: null, // submitButtonSelector
+ submitButtonSelector: undefined, // submitButtonSelector
},
audio: {
@@ -106,7 +109,7 @@ const options = {
// alter these text for internationalization
text: {
pausedHeader: "Paused",
- pausedHint: null,
+ pausedHint: undefined,
sending: "Teleporting",
encoding: "Encoding",
limitReached: "Limit reached",
@@ -141,16 +144,16 @@ const options = {
* a custom callback to tweak form data before posting to server
* this is for advanced use only and shouldn't be used if possible
*/
- adjustFormDataBeforePosting: null,
+ adjustFormDataBeforePosting: undefined,
},
defaults: {
- from: null, // define default FROM email address
- to: null, // define default TO email address
- cc: null, // define default CC email address
- bcc: null, // define default BCC email address
- subject: null, // define default subject line
- body: null, // define default body content
+ from: undefined, // define default FROM email address
+ to: undefined, // define default TO email address
+ cc: undefined, // define default CC email address
+ bcc: undefined, // define default BCC email address
+ subject: undefined, // define default subject line
+ body: undefined, // define default body content
},
// show errors inside the container?
@@ -166,7 +169,7 @@ const options = {
reportErrors: false,
// just for testing purposes to simulate browser agent handling
- fakeUaString: null,
+ fakeUaString: undefined,
version,
};
diff --git a/src/resource.js b/src/resource.ts
similarity index 100%
rename from src/resource.js
rename to src/resource.ts
diff --git a/src/stories/Error.stories.ts b/src/stories/Error.stories.ts
new file mode 100644
index 00000000..60bd8d87
--- /dev/null
+++ b/src/stories/Error.stories.ts
@@ -0,0 +1,65 @@
+import type { Meta, StoryObj } from "@storybook/html";
+
+import VideomailClient from "./../index";
+import { VideomailClientOptions } from "../types/options";
+import { DeepPartial } from "../types/DeepPartial";
+
+const meta: Meta> = {
+ title: "Error Handling",
+ argTypes: {
+ fakeUaString: { control: "text" },
+ },
+ args: {
+ verbose: true,
+ adjustFormOnBrowserError: true,
+ },
+};
+
+type Story = StoryObj>;
+
+// How it looks on a bad browser
+export const BadBrowser: Story = {
+ name: "Bad Browser",
+ args: {
+ fakeUaString: "Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.0; Trident/4.0)",
+ },
+ render: (args) => {
+ const videomailClient = new VideomailClient(args);
+ return videomailClient.show();
+ },
+};
+
+// How it looks on an unsupported iPhone
+export const BadIOS: Story = {
+ name: "Bad iOS",
+ args: {
+ fakeUaString:
+ "Mozilla/5.0 (iPhone; CPU iPhone OS 6_0 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Version/6.0 Mobile/10A5376e Safari/8536.25",
+ video: {
+ // Just to test that this height will get removed so that the whole error message will be shown
+ height: 100,
+ },
+ },
+ render: (args) => {
+ const videomailClient = new VideomailClient(args);
+ return videomailClient.show();
+ },
+};
+
+// With an invalid site name, you don't get whitelisted
+//
+// By default the site name is "videomail-client-demo" which works on localhost only
+// To run the videomail client on your site, you'll have to register it at
+// https://www.videomail.io/whitelist to obtain a valid site name
+export const InvalidSiteName: Story = {
+ name: "Invalid Site Name",
+ args: {
+ siteName: "invalid-site-name",
+ },
+ render: (args) => {
+ const videomailClient = new VideomailClient(args);
+ return videomailClient.show();
+ },
+};
+
+export default meta;
diff --git a/src/stories/Form.stories.ts b/src/stories/Form.stories.ts
new file mode 100644
index 00000000..97091500
--- /dev/null
+++ b/src/stories/Form.stories.ts
@@ -0,0 +1,80 @@
+import type { Meta, StoryObj } from "@storybook/html";
+
+import VideomailClient from "../index";
+import { VideomailClientOptions } from "../types/options";
+import { DeepPartial } from "../types/DeepPartial";
+
+import "./static/css/entertain.css";
+
+// TODO Migrate more from Legacy
+
+const meta: Meta> = {
+ title: "Form",
+ args: {
+ verbose: true,
+ },
+};
+
+type Story = StoryObj>;
+
+// Wrap into a form, validation, have a direct submit form and display the record
+//
+// Direct submit forms means, it sends data right away to the videomail.io server.
+// But if you prefer to submit to your own server, look at the other Form examples
+export const DirectSubmission: Story = {
+ name: "Direct Submission",
+ args: {
+ enablePause: false,
+ video: {
+ width: 240,
+ countdown: false,
+ },
+ selectors: {
+ containerId: "videomail",
+ },
+ },
+ render: () => {
+ return `
+
+
+
+
+
+
+ Start over
+ `;
+ },
+ play: ({ args }) => {
+ const videomailClient = new VideomailClient(args);
+
+ const onSubmitted = function (videomail) {
+ videomailClient.replay(videomail, "viewVideo");
+
+ const startOverButton = document.getElementById("startOver");
+
+ if (startOverButton) {
+ startOverButton.onclick = function () {
+ videomailClient.startOver();
+ };
+ }
+ };
+
+ // @ts-ignore Fix later
+ videomailClient.on(
+ videomailClient.events.SUBMITTED,
+ onSubmitted.bind(videomailClient),
+ );
+
+ videomailClient.show();
+ },
+};
+
+export default meta;
diff --git a/src/stories/Player.stories.ts b/src/stories/Player.stories.ts
new file mode 100644
index 00000000..1fff173d
--- /dev/null
+++ b/src/stories/Player.stories.ts
@@ -0,0 +1,81 @@
+import type { Meta, StoryObj } from "@storybook/html";
+
+import VideomailClient from "../index";
+import { VideomailClientOptions } from "../types/options";
+import { DeepPartial } from "../types/DeepPartial";
+import videomailExample from "./static/json/videomail";
+
+const meta: Meta> = {
+ title: "Player",
+ args: {
+ disableSubmit: true,
+ verbose: true,
+ },
+};
+
+type Story = StoryObj>;
+
+// Play an existing videomail, nothing else
+export const PlayVideomail: Story = {
+ name: "Play videomail",
+ render: (args) => {
+ const videomailClient = new VideomailClient(args);
+ return videomailClient.replay(videomailExample);
+ },
+};
+
+// A form to play an existing videomail, with a form
+export const PlayVideomailWithForm: Story = {
+ name: "Play videomail with form",
+ args: {
+ selectors: {
+ formId: "email",
+ keyInputName: "key",
+ },
+ },
+ render: () => {
+ return `
+
+
+
+
+
+
+
+
+
+
+ `;
+ },
+ play: ({ args }) => {
+ const videomailClient = new VideomailClient(args);
+
+ // just a copy paste of json of the videomail
+ // you normally would get from a xhr get request
+ videomailClient.replay(videomailExample, "videomail");
+ },
+};
+
+export default meta;
diff --git a/src/stories/Record.stories.ts b/src/stories/Record.stories.ts
new file mode 100644
index 00000000..ef9591aa
--- /dev/null
+++ b/src/stories/Record.stories.ts
@@ -0,0 +1,221 @@
+import type { Meta, StoryObj } from "@storybook/html";
+
+import VideomailClient from "../index";
+import { VideomailClientOptions } from "../types/options";
+import { DeepPartial } from "../types/DeepPartial";
+
+import "./static/css/entertain.css";
+
+const meta: Meta> = {
+ title: "Record",
+ args: {
+ disableSubmit: true,
+ verbose: true,
+ },
+};
+
+type Story = StoryObj>;
+
+// Dead simple with most defaults
+export const DeadSimple: Story = {
+ name: "Dead simple",
+ args: {
+ video: {
+ width: 320,
+ },
+ },
+ render: (args) => {
+ const videomailClient = new VideomailClient(args);
+ return videomailClient.show();
+ },
+};
+
+// Dead simple too but based on jpeg image frames only
+export const SimpleJpegs: Story = {
+ name: "Using JPEG image frames",
+ args: {
+ enablePause: true,
+ enableAutoPause: true,
+ image: {
+ types: ["jpeg"],
+ },
+ video: {
+ countdown: 0,
+ width: 320,
+ limitSeconds: 20,
+ },
+ },
+ render: (args) => {
+ const videomailClient = new VideomailClient(args);
+ return videomailClient.show();
+ },
+};
+
+// With audio, custom button text and without auto-pause + no countdown
+export const Audio: Story = {
+ name: "With audio switcher",
+ args: {
+ enableAutoPause: false,
+ audio: {
+ enabled: false,
+ switch: true,
+ },
+ image: {
+ quality: 0.4,
+ },
+ video: {
+ limitSeconds: 15,
+ countdown: false,
+ width: 320,
+ },
+ text: {
+ buttons: {
+ preview: "Stop",
+ },
+ },
+ },
+ render: (args) => {
+ const videomailClient = new VideomailClient(args);
+ return videomailClient.show();
+ },
+};
+
+// High quality: High FPS, near HD quality, short duration and without auto-pause
+//
+// This example shows that your browser cannot meet the FPS requirements due to
+// performance issues and will use a lower one instead.
+export const HighQuality: Story = {
+ name: "High Quality (40 fps)",
+ args: {
+ enableAutoPause: false,
+ video: {
+ countdown: false,
+ fps: 40,
+ limitSeconds: 60,
+ width: 1024,
+ },
+ image: {
+ quality: 0.95,
+ },
+ },
+ render: (args) => {
+ const videomailClient = new VideomailClient(args);
+ return videomailClient.show();
+ },
+};
+
+// Only when clicking on record button, ask for webcam access
+//
+// With the option loadUserMediaOnRecord, the user won't be asked for webcam access on
+// page load but later, only when the record button is being pressed.
+export const AskOnRecord: Story = {
+ name: "Ask upon recording",
+ args: {
+ audio: {
+ enabled: true,
+ },
+ video: {
+ width: 320,
+ countdown: false,
+ },
+ loadUserMediaOnRecord: true,
+ },
+ render: (args) => {
+ const videomailClient = new VideomailClient(args);
+ return videomailClient.show();
+ },
+};
+
+// With a facing mode button to switch camera for mobiles
+// Only seen when you are on mobile.
+export const FacingMode: Story = {
+ name: "Facing mode for mobiles",
+ args: {
+ audio: {
+ enabled: true,
+ },
+ video: {
+ width: 320,
+ facingModeButton: true,
+ },
+ },
+ render: (args) => {
+ const videomailClient = new VideomailClient(args);
+ return videomailClient.show();
+ },
+};
+
+// Entertain user while waiting and disable pause/resume buttons
+export const Entertain: Story = {
+ name: "Entertain while encoding",
+ args: {
+ enablePause: false,
+ video: {
+ fps: 30,
+ limitSeconds: 60,
+ countdown: false,
+ width: 720,
+ },
+ image: {
+ quality: 0.9,
+ },
+ notifier: {
+ entertain: true,
+ entertainClass: "bg",
+ entertainLimit: 4,
+ entertainInterval: 2e3,
+ },
+ },
+ render: (args) => {
+ const videomailClient = new VideomailClient(args);
+ return videomailClient.show();
+ },
+};
+
+// Accept existing HTML, start recording asap and allow 10 min recording wohooo
+export const Inject: Story = {
+ name: "Inject to existing HTML code",
+ args: {
+ enableAutoPause: true,
+ selectors: {
+ containerId: "videomail2",
+ userMediaClass: "webcam",
+ visualsClass: "da_window",
+ buttonsClass: "all_my_buttons",
+ },
+ video: {
+ countdown: 3,
+ width: 640,
+ limitSeconds: 600,
+ },
+ },
+ render: () => {
+ return `
+
+
Please enable Javascript
+
+
+
+
+
+
+
+
+
+
+
+ ◉ Record
+ ║ Pause
+ ◉ Resume
+ ► Preview
+ ◀ Record again
+
+
`;
+ },
+ play: ({ args }) => {
+ const videomailClient = new VideomailClient(args);
+ videomailClient.show();
+ },
+};
+
+export default meta;
diff --git a/prototype/contact_form.html b/src/stories/legacy/contact_form.html
similarity index 98%
rename from prototype/contact_form.html
rename to src/stories/legacy/contact_form.html
index f7fc3046..4685aedd 100644
--- a/prototype/contact_form.html
+++ b/src/stories/legacy/contact_form.html
@@ -65,7 +65,7 @@
Start over
-
+
+
+
+
+
+
+