diff --git a/client/.eslintignore b/client/.eslintignore
deleted file mode 100644
index 9c88d44..0000000
--- a/client/.eslintignore
+++ /dev/null
@@ -1 +0,0 @@
-src/libs/*.js
\ No newline at end of file
diff --git a/client/.gitignore b/client/.gitignore
deleted file mode 100644
index f188498..0000000
--- a/client/.gitignore
+++ /dev/null
@@ -1,24 +0,0 @@
-.DS_Store
-node_modules
-/dist
-
-/tests/e2e/videos/
-/tests/e2e/screenshots/
-
-# local env files
-.env.local
-.env.*.local
-
-# Log files
-npm-debug.log*
-yarn-debug.log*
-yarn-error.log*
-
-# Editor directories and files
-.idea
-.vscode
-*.suo
-*.ntvs*
-*.njsproj
-*.sln
-*.sw*
diff --git a/client/README.md b/client/README.md
deleted file mode 100644
index 951ecb1..0000000
--- a/client/README.md
+++ /dev/null
@@ -1,36 +0,0 @@
-# sockeye
-
-## Project setup
-```
-npm install
-```
-
-### Compiles and hot-reloads for development
-```
-npm run serve
-```
-
-### Compiles and minifies for production
-```
-npm run build
-```
-
-### Run your tests
-```
-npm run test
-```
-
-### Lints and fixes files
-```
-npm run lint
-```
-
-### Run your end-to-end tests
-```
-npm run test:e2e
-```
-
-### Run your unit tests
-```
-npm run test:unit
-```
diff --git a/client/appdev.bat b/client/appdev.bat
deleted file mode 100644
index eb1cffd..0000000
--- a/client/appdev.bat
+++ /dev/null
@@ -1 +0,0 @@
-npm run serve
\ No newline at end of file
diff --git a/client/audit.txt b/client/audit.txt
deleted file mode 100644
index 63f4116..0000000
--- a/client/audit.txt
+++ /dev/null
@@ -1,947 +0,0 @@
-=== npm audit security report ===
-
-# Run npm install --save-dev babel-jest@24.1.0 to resolve 1 vulnerability
-SEMVER WARNING: Recommended action is a potentially breaking change
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Dependency of babel-jest [dev]
-
- Path babel-jest > babel-plugin-istanbul > test-exclude >
- micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
-
-
- Manual Review
- Some vulnerabilities require your attention to resolve
-
- Visit https://go.npm.me/audit-guide for additional guidance
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > babel-jest >
- babel-plugin-istanbul > test-exclude > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-config >
- babel-jest > babel-plugin-istanbul > test-exclude >
- micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-config >
- jest-environment-jsdom > jest-util > jest-message-util >
- micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-config >
- jest-environment-node > jest-util > jest-message-util >
- micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-config >
- jest-jasmine2 > expect > jest-message-util > micromatch >
- braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-config >
- jest-jasmine2 > jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-config >
- jest-jasmine2 > jest-snapshot > jest-message-util >
- micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-config >
- jest-jasmine2 > jest-util > jest-message-util > micromatch >
- braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-config >
- jest-util > jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-config >
- micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli >
- jest-environment-jsdom > jest-util > jest-message-util >
- micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-haste-map
- > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli >
- jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli >
- jest-resolve-dependencies > jest-snapshot >
- jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-config > babel-jest > babel-plugin-istanbul >
- test-exclude > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-config > jest-environment-jsdom > jest-util >
- jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-config > jest-environment-node > jest-util >
- jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-config > jest-jasmine2 > expect > jest-message-util >
- micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-config > jest-jasmine2 > jest-message-util > micromatch
- > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-config > jest-jasmine2 > jest-snapshot >
- jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-config > jest-jasmine2 > jest-util > jest-message-util
- > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-config > jest-util > jest-message-util > micromatch >
- braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-config > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-haste-map > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-jasmine2 > expect > jest-message-util > micromatch >
- braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-jasmine2 > jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-jasmine2 > jest-snapshot > jest-message-util >
- micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-jasmine2 > jest-util > jest-message-util > micromatch >
- braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-runtime > babel-plugin-istanbul > test-exclude >
- micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-runtime > jest-config > babel-jest >
- babel-plugin-istanbul > test-exclude > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-runtime > jest-config > jest-environment-jsdom >
- jest-util > jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-runtime > jest-config > jest-environment-node >
- jest-util > jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-runtime > jest-config > jest-jasmine2 > expect >
- jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-runtime > jest-config > jest-jasmine2 >
- jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-runtime > jest-config > jest-jasmine2 > jest-snapshot >
- jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-runtime > jest-config > jest-jasmine2 > jest-util >
- jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-runtime > jest-config > jest-util > jest-message-util >
- micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-runtime > jest-config > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-runtime > jest-haste-map > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-runtime > jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-runtime > jest-snapshot > jest-message-util >
- micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-runtime > jest-util > jest-message-util > micromatch >
- braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-runtime > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runner >
- jest-util > jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runtime >
- babel-plugin-istanbul > test-exclude > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runtime >
- jest-config > babel-jest > babel-plugin-istanbul >
- test-exclude > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runtime >
- jest-config > jest-environment-jsdom > jest-util >
- jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runtime >
- jest-config > jest-environment-node > jest-util >
- jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runtime >
- jest-config > jest-jasmine2 > expect > jest-message-util >
- micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runtime >
- jest-config > jest-jasmine2 > jest-message-util > micromatch
- > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runtime >
- jest-config > jest-jasmine2 > jest-snapshot >
- jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runtime >
- jest-config > jest-jasmine2 > jest-util > jest-message-util
- > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runtime >
- jest-config > jest-util > jest-message-util > micromatch >
- braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runtime >
- jest-config > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runtime >
- jest-haste-map > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runtime >
- jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runtime >
- jest-snapshot > jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runtime >
- jest-util > jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-runtime >
- micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-snapshot
- > jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > jest-util >
- jest-message-util > micromatch > braces
-
- More info https://nodesecurity.io/advisories/786
-
-
- Low Regular Expression Denial of Service
-
- Package braces
-
- Patched in >=2.3.1
-
- Dependency of @vue/cli-plugin-unit-jest [dev]
-
- Path @vue/cli-plugin-unit-jest > jest > jest-cli > micromatch >
- braces
-
- More info https://nodesecurity.io/advisories/786
-
-found 64 low severity vulnerabilities in 40594 scanned packages
- 1 vulnerability requires semver-major dependency updates.
- 63 vulnerabilities require manual review. See the full report for details.
diff --git a/client/babel.config.js b/client/babel.config.js
deleted file mode 100644
index c253857..0000000
--- a/client/babel.config.js
+++ /dev/null
@@ -1,10 +0,0 @@
-module.exports = {
- presets: [
- [
- "@vue/cli-plugin-babel/preset",
- {
- useBuiltIns: "entry"
- }
- ]
- ]
-};
diff --git a/client/build/binding.sln b/client/build/binding.sln
deleted file mode 100644
index 900534a..0000000
--- a/client/build/binding.sln
+++ /dev/null
@@ -1,19 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 2015
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "binding", "binding.vcxproj", "{2A7051B2-EC6A-582D-A375-8C69A961C66B}"
-EndProject
-Global
- GlobalSection(SolutionConfigurationPlatforms) = preSolution
- Release|x64 = Release|x64
- Debug|x64 = Debug|x64
- EndGlobalSection
- GlobalSection(ProjectConfigurationPlatforms) = postSolution
- {2A7051B2-EC6A-582D-A375-8C69A961C66B}.Release|x64.ActiveCfg = Release|x64
- {2A7051B2-EC6A-582D-A375-8C69A961C66B}.Release|x64.Build.0 = Release|x64
- {2A7051B2-EC6A-582D-A375-8C69A961C66B}.Debug|x64.ActiveCfg = Debug|x64
- {2A7051B2-EC6A-582D-A375-8C69A961C66B}.Debug|x64.Build.0 = Debug|x64
- EndGlobalSection
- GlobalSection(SolutionProperties) = preSolution
- HideSolutionNode = FALSE
- EndGlobalSection
-EndGlobal
diff --git a/client/build/binding.vcxproj b/client/build/binding.vcxproj
deleted file mode 100644
index 03654c9..0000000
--- a/client/build/binding.vcxproj
+++ /dev/null
@@ -1,148 +0,0 @@
-
-
-
-
- Debug
- x64
-
-
- Release
- x64
-
-
-
- {2A7051B2-EC6A-582D-A375-8C69A961C66B}
- Win32Proj
- binding
- true
- x64
- 10.0.19041.0
-
-
-
- DynamicLibrary
-
-
- v142
-
-
-
-
-
-
-
-
-
- $(ExecutablePath);$(MSBuildProjectDirectory)\..\bin\;$(MSBuildProjectDirectory)\..\bin\
- true
- $(Configuration)\obj\$(ProjectName)\
- false
- true
- $(SolutionDir)$(Configuration)\
- .node
- .node
- .node
- .node
- $(ProjectName)
- $(OutDir)\$(ProjectName).node
-
-
-
- C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\include\node;C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\src;C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\deps\openssl\config;C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\deps\openssl\openssl\include;C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\deps\uv\include;C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\deps\zlib;C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\deps\v8\include;%(AdditionalIncludeDirectories)
- /Zc:__cplusplus %(AdditionalOptions)
- EnableFastChecks
- true
- OldStyle
- 4351;4355;4800;4251;4275;4244;4267;%(DisableSpecificWarnings)
- false
- false
- true
- false
- Disabled
- NotUsing
- NODE_GYP_MODULE_NAME=binding;USING_UV_SHARED=1;USING_V8_SHARED=1;V8_DEPRECATION_WARNINGS=1;V8_DEPRECATION_WARNINGS;V8_IMMINENT_DEPRECATION_WARNINGS;_GLIBCXX_USE_CXX11_ABI=1;WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_HAS_EXCEPTIONS=0;OPENSSL_NO_PINSHARED;OPENSSL_THREADS;BUILDING_NODE_EXTENSION;HOST_BINARY="node.exe";DEBUG;_DEBUG;V8_ENABLE_CHECKS;%(PreprocessorDefinitions)
- MultiThreadedDebug
- true
- true
- false
- Level3
- true
-
-
- /LTCG:INCREMENTAL %(AdditionalOptions)
-
-
- kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;DelayImp.lib;"C:\\Users\\cardj\\AppData\\Local\\node-gyp\\Cache\\16.13.1\\x64\\node.lib"
- /LTCG:INCREMENTAL /ignore:4199 %(AdditionalOptions)
- node.exe;%(DelayLoadDLLs)
- true
- true
- true
- $(OutDir)$(ProjectName).node
- true
- .node
- MachineX64
-
-
- C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\include\node;C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\src;C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\deps\openssl\config;C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\deps\openssl\openssl\include;C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\deps\uv\include;C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\deps\zlib;C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\deps\v8\include;%(AdditionalIncludeDirectories)
- NODE_GYP_MODULE_NAME=binding;USING_UV_SHARED=1;USING_V8_SHARED=1;V8_DEPRECATION_WARNINGS=1;V8_DEPRECATION_WARNINGS;V8_IMMINENT_DEPRECATION_WARNINGS;_GLIBCXX_USE_CXX11_ABI=1;WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_HAS_EXCEPTIONS=0;OPENSSL_NO_PINSHARED;OPENSSL_THREADS;BUILDING_NODE_EXTENSION;HOST_BINARY="node.exe";DEBUG;_DEBUG;V8_ENABLE_CHECKS;%(PreprocessorDefinitions);%(PreprocessorDefinitions)
-
-
-
-
- C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\include\node;C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\src;C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\deps\openssl\config;C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\deps\openssl\openssl\include;C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\deps\uv\include;C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\deps\zlib;C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\deps\v8\include;%(AdditionalIncludeDirectories)
- /Zc:__cplusplus %(AdditionalOptions)
- true
- OldStyle
- 4351;4355;4800;4251;4275;4244;4267;%(DisableSpecificWarnings)
- false
- Speed
- true
- AnySuitable
- true
- true
- true
- Full
- NotUsing
- NODE_GYP_MODULE_NAME=binding;USING_UV_SHARED=1;USING_V8_SHARED=1;V8_DEPRECATION_WARNINGS=1;V8_DEPRECATION_WARNINGS;V8_IMMINENT_DEPRECATION_WARNINGS;_GLIBCXX_USE_CXX11_ABI=1;WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_HAS_EXCEPTIONS=0;OPENSSL_NO_PINSHARED;OPENSSL_THREADS;BUILDING_NODE_EXTENSION;HOST_BINARY="node.exe";%(PreprocessorDefinitions)
- MultiThreaded
- false
- true
- true
- false
- Level3
- true
-
-
- /LTCG:INCREMENTAL %(AdditionalOptions)
-
-
- kernel32.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;odbc32.lib;DelayImp.lib;"C:\\Users\\cardj\\AppData\\Local\\node-gyp\\Cache\\16.13.1\\x64\\node.lib"
- /LTCG:INCREMENTAL /ignore:4199 %(AdditionalOptions)
- node.exe;%(DelayLoadDLLs)
- true
- true
- true
- $(OutDir)$(ProjectName).node
- true
- .node
- MachineX64
-
-
- C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\include\node;C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\src;C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\deps\openssl\config;C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\deps\openssl\openssl\include;C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\deps\uv\include;C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\deps\zlib;C:\Users\cardj\AppData\Local\node-gyp\Cache\16.13.1\deps\v8\include;%(AdditionalIncludeDirectories)
- NODE_GYP_MODULE_NAME=binding;USING_UV_SHARED=1;USING_V8_SHARED=1;V8_DEPRECATION_WARNINGS=1;V8_DEPRECATION_WARNINGS;V8_IMMINENT_DEPRECATION_WARNINGS;_GLIBCXX_USE_CXX11_ABI=1;WIN32;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_DEPRECATE;_HAS_EXCEPTIONS=0;OPENSSL_NO_PINSHARED;OPENSSL_THREADS;BUILDING_NODE_EXTENSION;HOST_BINARY="node.exe";%(PreprocessorDefinitions);%(PreprocessorDefinitions)
-
-
-
-
-
-
-
- $(IntDir)\src\binding.obj
-
-
-
-
-
-
-
diff --git a/client/build/binding.vcxproj.filters b/client/build/binding.vcxproj.filters
deleted file mode 100644
index 4a8b3d9..0000000
--- a/client/build/binding.vcxproj.filters
+++ /dev/null
@@ -1,58 +0,0 @@
-
-
-
-
- {739DB09A-CC57-A953-A6CF-F64FA08E4FA7}
-
-
- {8CDEE807-BC53-E450-C8B8-4DEBB66742D4}
-
-
- {7B735499-E5DD-1C2B-6C26-70023832A1CF}
-
-
- {E9F714C1-DA89-54E2-60CF-39FEB20BF756}
-
-
- {2FED1623-A556-91A0-589D-0214C37A7125}
-
-
- {F852EB63-437C-846A-220F-8D9ED6DAEC1D}
-
-
- {D51E5808-912B-5C70-4BB7-475D1DBFA067}
-
-
- {741E0E76-39B2-B1AB-9FA1-F1A20B16F295}
-
-
- {56DF7A98-063D-FB9D-485C-089023B4C16A}
-
-
- {741E0E76-39B2-B1AB-9FA1-F1A20B16F295}
-
-
- {56DF7A98-063D-FB9D-485C-089023B4C16A}
-
-
- {77348C0E-2034-7791-74D5-63C077DF5A3B}
-
-
- {8CDEE807-BC53-E450-C8B8-4DEBB66742D4}
-
-
- {739DB09A-CC57-A953-A6CF-F64FA08E4FA7}
-
-
-
-
- ..\src
-
-
- C:\Users\cardj\AppData\Roaming\npm\node_modules\npm\node_modules\node-gyp\src
-
-
- ..
-
-
-
diff --git a/client/build/config.gypi b/client/build/config.gypi
deleted file mode 100644
index 41cb2bf..0000000
--- a/client/build/config.gypi
+++ /dev/null
@@ -1,360 +0,0 @@
-# Do not edit. File was generated by node-gyp's "configure" step
-{
- "target_defaults": {
- "cflags": [],
- "default_configuration": "Release",
- "defines": [],
- "include_dirs": [],
- "libraries": [],
- "msbuild_toolset": "v142",
- "msvs_windows_target_platform_version": "10.0.19041.0"
- },
- "variables": {
- "asan": 0,
- "coverage": "false",
- "dcheck_always_on": 0,
- "debug_nghttp2": "false",
- "debug_node": "false",
- "enable_lto": "false",
- "enable_pgo_generate": "false",
- "enable_pgo_use": "false",
- "error_on_warn": "false",
- "force_dynamic_crt": 0,
- "host_arch": "x64",
- "icu_data_in": "..\\..\\deps\\icu-tmp\\icudt69l.dat",
- "icu_endianness": "l",
- "icu_gyp_path": "tools/icu/icu-generic.gyp",
- "icu_path": "deps/icu-small",
- "icu_small": "false",
- "icu_ver_major": "69",
- "is_debug": 0,
- "llvm_version": "0.0",
- "napi_build_version": "8",
- "nasm_version": "2.15",
- "node_byteorder": "little",
- "node_debug_lib": "false",
- "node_enable_d8": "false",
- "node_install_npm": "true",
- "node_library_files": [
- "lib/assert.js",
- "lib/async_hooks.js",
- "lib/buffer.js",
- "lib/child_process.js",
- "lib/cluster.js",
- "lib/console.js",
- "lib/constants.js",
- "lib/crypto.js",
- "lib/dgram.js",
- "lib/diagnostics_channel.js",
- "lib/dns.js",
- "lib/domain.js",
- "lib/events.js",
- "lib/fs.js",
- "lib/http.js",
- "lib/http2.js",
- "lib/https.js",
- "lib/inspector.js",
- "lib/module.js",
- "lib/net.js",
- "lib/os.js",
- "lib/path.js",
- "lib/perf_hooks.js",
- "lib/process.js",
- "lib/punycode.js",
- "lib/querystring.js",
- "lib/readline.js",
- "lib/repl.js",
- "lib/stream.js",
- "lib/string_decoder.js",
- "lib/sys.js",
- "lib/timers.js",
- "lib/tls.js",
- "lib/trace_events.js",
- "lib/tty.js",
- "lib/url.js",
- "lib/util.js",
- "lib/v8.js",
- "lib/vm.js",
- "lib/wasi.js",
- "lib/worker_threads.js",
- "lib/zlib.js",
- "lib/_http_agent.js",
- "lib/_http_client.js",
- "lib/_http_common.js",
- "lib/_http_incoming.js",
- "lib/_http_outgoing.js",
- "lib/_http_server.js",
- "lib/_stream_duplex.js",
- "lib/_stream_passthrough.js",
- "lib/_stream_readable.js",
- "lib/_stream_transform.js",
- "lib/_stream_wrap.js",
- "lib/_stream_writable.js",
- "lib/_tls_common.js",
- "lib/_tls_wrap.js",
- "lib/assert/strict.js",
- "lib/dns/promises.js",
- "lib/fs/promises.js",
- "lib/internal/abort_controller.js",
- "lib/internal/assert.js",
- "lib/internal/async_hooks.js",
- "lib/internal/blob.js",
- "lib/internal/blocklist.js",
- "lib/internal/buffer.js",
- "lib/internal/child_process.js",
- "lib/internal/cli_table.js",
- "lib/internal/constants.js",
- "lib/internal/dgram.js",
- "lib/internal/dtrace.js",
- "lib/internal/encoding.js",
- "lib/internal/errors.js",
- "lib/internal/error_serdes.js",
- "lib/internal/event_target.js",
- "lib/internal/fixed_queue.js",
- "lib/internal/freelist.js",
- "lib/internal/freeze_intrinsics.js",
- "lib/internal/heap_utils.js",
- "lib/internal/histogram.js",
- "lib/internal/http.js",
- "lib/internal/idna.js",
- "lib/internal/inspector_async_hook.js",
- "lib/internal/js_stream_socket.js",
- "lib/internal/linkedlist.js",
- "lib/internal/net.js",
- "lib/internal/options.js",
- "lib/internal/priority_queue.js",
- "lib/internal/querystring.js",
- "lib/internal/repl.js",
- "lib/internal/socketaddress.js",
- "lib/internal/socket_list.js",
- "lib/internal/stream_base_commons.js",
- "lib/internal/timers.js",
- "lib/internal/trace_events_async_hooks.js",
- "lib/internal/tty.js",
- "lib/internal/url.js",
- "lib/internal/util.js",
- "lib/internal/v8_prof_polyfill.js",
- "lib/internal/v8_prof_processor.js",
- "lib/internal/validators.js",
- "lib/internal/watchdog.js",
- "lib/internal/worker.js",
- "lib/internal/assert/assertion_error.js",
- "lib/internal/assert/calltracker.js",
- "lib/internal/bootstrap/environment.js",
- "lib/internal/bootstrap/loaders.js",
- "lib/internal/bootstrap/node.js",
- "lib/internal/bootstrap/pre_execution.js",
- "lib/internal/bootstrap/switches/does_not_own_process_state.js",
- "lib/internal/bootstrap/switches/does_own_process_state.js",
- "lib/internal/bootstrap/switches/is_main_thread.js",
- "lib/internal/bootstrap/switches/is_not_main_thread.js",
- "lib/internal/child_process/serialization.js",
- "lib/internal/cluster/child.js",
- "lib/internal/cluster/primary.js",
- "lib/internal/cluster/round_robin_handle.js",
- "lib/internal/cluster/shared_handle.js",
- "lib/internal/cluster/utils.js",
- "lib/internal/cluster/worker.js",
- "lib/internal/console/constructor.js",
- "lib/internal/console/global.js",
- "lib/internal/crypto/aes.js",
- "lib/internal/crypto/certificate.js",
- "lib/internal/crypto/cipher.js",
- "lib/internal/crypto/diffiehellman.js",
- "lib/internal/crypto/dsa.js",
- "lib/internal/crypto/ec.js",
- "lib/internal/crypto/hash.js",
- "lib/internal/crypto/hashnames.js",
- "lib/internal/crypto/hkdf.js",
- "lib/internal/crypto/keygen.js",
- "lib/internal/crypto/keys.js",
- "lib/internal/crypto/mac.js",
- "lib/internal/crypto/pbkdf2.js",
- "lib/internal/crypto/random.js",
- "lib/internal/crypto/rsa.js",
- "lib/internal/crypto/scrypt.js",
- "lib/internal/crypto/sig.js",
- "lib/internal/crypto/util.js",
- "lib/internal/crypto/webcrypto.js",
- "lib/internal/crypto/x509.js",
- "lib/internal/debugger/inspect.js",
- "lib/internal/debugger/inspect_client.js",
- "lib/internal/debugger/inspect_repl.js",
- "lib/internal/dns/promises.js",
- "lib/internal/dns/utils.js",
- "lib/internal/fs/dir.js",
- "lib/internal/fs/promises.js",
- "lib/internal/fs/read_file_context.js",
- "lib/internal/fs/rimraf.js",
- "lib/internal/fs/streams.js",
- "lib/internal/fs/sync_write_stream.js",
- "lib/internal/fs/utils.js",
- "lib/internal/fs/watchers.js",
- "lib/internal/fs/cp/cp-sync.js",
- "lib/internal/fs/cp/cp.js",
- "lib/internal/http2/compat.js",
- "lib/internal/http2/core.js",
- "lib/internal/http2/util.js",
- "lib/internal/legacy/processbinding.js",
- "lib/internal/main/check_syntax.js",
- "lib/internal/main/eval_stdin.js",
- "lib/internal/main/eval_string.js",
- "lib/internal/main/inspect.js",
- "lib/internal/main/print_help.js",
- "lib/internal/main/prof_process.js",
- "lib/internal/main/repl.js",
- "lib/internal/main/run_main_module.js",
- "lib/internal/main/worker_thread.js",
- "lib/internal/modules/package_json_reader.js",
- "lib/internal/modules/run_main.js",
- "lib/internal/modules/cjs/helpers.js",
- "lib/internal/modules/cjs/loader.js",
- "lib/internal/modules/esm/create_dynamic_module.js",
- "lib/internal/modules/esm/get_format.js",
- "lib/internal/modules/esm/get_source.js",
- "lib/internal/modules/esm/load.js",
- "lib/internal/modules/esm/loader.js",
- "lib/internal/modules/esm/module_job.js",
- "lib/internal/modules/esm/module_map.js",
- "lib/internal/modules/esm/resolve.js",
- "lib/internal/modules/esm/translators.js",
- "lib/internal/perf/event_loop_delay.js",
- "lib/internal/perf/event_loop_utilization.js",
- "lib/internal/perf/nodetiming.js",
- "lib/internal/perf/observe.js",
- "lib/internal/perf/performance.js",
- "lib/internal/perf/performance_entry.js",
- "lib/internal/perf/timerify.js",
- "lib/internal/perf/usertiming.js",
- "lib/internal/perf/utils.js",
- "lib/internal/per_context/domexception.js",
- "lib/internal/per_context/messageport.js",
- "lib/internal/per_context/primordials.js",
- "lib/internal/policy/manifest.js",
- "lib/internal/policy/sri.js",
- "lib/internal/process/esm_loader.js",
- "lib/internal/process/execution.js",
- "lib/internal/process/per_thread.js",
- "lib/internal/process/policy.js",
- "lib/internal/process/promises.js",
- "lib/internal/process/report.js",
- "lib/internal/process/signal.js",
- "lib/internal/process/task_queues.js",
- "lib/internal/process/warning.js",
- "lib/internal/process/worker_thread_only.js",
- "lib/internal/readline/callbacks.js",
- "lib/internal/readline/emitKeypressEvents.js",
- "lib/internal/readline/utils.js",
- "lib/internal/repl/await.js",
- "lib/internal/repl/history.js",
- "lib/internal/repl/utils.js",
- "lib/internal/source_map/prepare_stack_trace.js",
- "lib/internal/source_map/source_map.js",
- "lib/internal/source_map/source_map_cache.js",
- "lib/internal/streams/add-abort-signal.js",
- "lib/internal/streams/buffer_list.js",
- "lib/internal/streams/compose.js",
- "lib/internal/streams/destroy.js",
- "lib/internal/streams/duplex.js",
- "lib/internal/streams/duplexify.js",
- "lib/internal/streams/end-of-stream.js",
- "lib/internal/streams/from.js",
- "lib/internal/streams/lazy_transform.js",
- "lib/internal/streams/legacy.js",
- "lib/internal/streams/passthrough.js",
- "lib/internal/streams/pipeline.js",
- "lib/internal/streams/readable.js",
- "lib/internal/streams/state.js",
- "lib/internal/streams/transform.js",
- "lib/internal/streams/utils.js",
- "lib/internal/streams/writable.js",
- "lib/internal/test/binding.js",
- "lib/internal/test/transfer.js",
- "lib/internal/tls/parse-cert-string.js",
- "lib/internal/tls/secure-context.js",
- "lib/internal/tls/secure-pair.js",
- "lib/internal/util/comparisons.js",
- "lib/internal/util/debuglog.js",
- "lib/internal/util/inspect.js",
- "lib/internal/util/inspector.js",
- "lib/internal/util/iterable_weak_map.js",
- "lib/internal/util/types.js",
- "lib/internal/vm/module.js",
- "lib/internal/webstreams/encoding.js",
- "lib/internal/webstreams/queuingstrategies.js",
- "lib/internal/webstreams/readablestream.js",
- "lib/internal/webstreams/transfer.js",
- "lib/internal/webstreams/transformstream.js",
- "lib/internal/webstreams/util.js",
- "lib/internal/webstreams/writablestream.js",
- "lib/internal/worker/io.js",
- "lib/internal/worker/js_transferable.js",
- "lib/path/posix.js",
- "lib/path/win32.js",
- "lib/stream/consumers.js",
- "lib/stream/promises.js",
- "lib/stream/web.js",
- "lib/timers/promises.js",
- "lib/util/types.js"
- ],
- "node_module_version": 93,
- "node_no_browser_globals": "false",
- "node_prefix": "/usr/local",
- "node_release_urlbase": "https://nodejs.org/download/release/",
- "node_shared": "false",
- "node_shared_brotli": "false",
- "node_shared_cares": "false",
- "node_shared_http_parser": "false",
- "node_shared_libuv": "false",
- "node_shared_nghttp2": "false",
- "node_shared_nghttp3": "false",
- "node_shared_ngtcp2": "false",
- "node_shared_openssl": "false",
- "node_shared_zlib": "false",
- "node_tag": "",
- "node_target_type": "executable",
- "node_use_bundled_v8": "true",
- "node_use_dtrace": "false",
- "node_use_etw": "true",
- "node_use_node_code_cache": "true",
- "node_use_node_snapshot": "true",
- "node_use_openssl": "true",
- "node_use_v8_platform": "true",
- "node_with_ltcg": "true",
- "node_without_node_options": "false",
- "openssl_fips": "",
- "openssl_is_fips": "false",
- "openssl_quic": "true",
- "ossfuzz": "false",
- "shlib_suffix": "so.93",
- "target_arch": "x64",
- "v8_enable_31bit_smis_on_64bit_arch": 0,
- "v8_enable_gdbjit": 0,
- "v8_enable_i18n_support": 1,
- "v8_enable_inspector": 1,
- "v8_enable_lite_mode": 0,
- "v8_enable_object_print": 1,
- "v8_enable_pointer_compression": 0,
- "v8_enable_webassembly": 1,
- "v8_no_strict_aliasing": 1,
- "v8_optimized_debug": 1,
- "v8_promise_internal_field_count": 1,
- "v8_random_seed": 0,
- "v8_trace_maps": 0,
- "v8_use_siphash": 1,
- "want_separate_host_toolset": 0,
- "nodedir": "C:\\Users\\cardj\\AppData\\Local\\node-gyp\\Cache\\16.13.1",
- "standalone_static_library": 1,
- "msbuild_path": "C:\\Program Files (x86)\\Microsoft Visual Studio\\2019\\BuildTools\\MSBuild\\Current\\Bin\\MSBuild.exe",
- "cache": "C:\\Users\\cardj\\AppData\\Local\\npm-cache",
- "globalconfig": "C:\\Users\\cardj\\AppData\\Roaming\\npm\\etc\\npmrc",
- "global_prefix": "C:\\Users\\cardj\\AppData\\Roaming\\npm",
- "init_module": "C:\\Users\\cardj\\.npm-init.js",
- "local_prefix": "C:\\data\\code\\sockeye\\client",
- "metrics_registry": "https://registry.npmjs.org/",
- "node_gyp": "C:\\Users\\cardj\\AppData\\Roaming\\npm\\node_modules\\npm\\node_modules\\node-gyp\\bin\\node-gyp.js",
- "prefix": "C:\\Users\\cardj\\AppData\\Roaming\\npm",
- "userconfig": "C:\\Users\\cardj\\.npmrc",
- "user_agent": "npm/8.3.0 node/v16.13.1 win32 x64 workspaces/false"
- }
-}
diff --git a/client/cypress.json b/client/cypress.json
deleted file mode 100644
index 1e80b2b..0000000
--- a/client/cypress.json
+++ /dev/null
@@ -1,9 +0,0 @@
-{
- "pluginsFile": "tests/e2e/plugins/index.js",
- "baseUrl": "http://localhost:7676",
- "defaultCommandTimeout":10000,
- "env": {
- "adminusername": "john",
- "adminpassword": "abraxis"
- }
-}
\ No newline at end of file
diff --git a/client/devdocs/todo.txt b/client/devdocs/todo.txt
deleted file mode 100644
index c5d3833..0000000
--- a/client/devdocs/todo.txt
+++ /dev/null
@@ -1 +0,0 @@
-test new svn
\ No newline at end of file
diff --git a/client/package-lock.json b/client/package-lock.json
deleted file mode 100644
index 47502b8..0000000
--- a/client/package-lock.json
+++ /dev/null
@@ -1,13748 +0,0 @@
-{
- "name": "sockeye",
- "version": "8.0.28",
- "lockfileVersion": 1,
- "requires": true,
- "dependencies": {
- "@ampproject/remapping": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.1.1.tgz",
- "integrity": "sha512-Aolwjd7HSC2PyY0fDj/wA/EimQT4HfEnFYNp5s9CQlrdhyvWTtvZ5YzrUPu6R6/1jKiUlxu8bUhkdSnKHNAHMA==",
- "dev": true,
- "requires": {
- "@jridgewell/trace-mapping": "^0.3.0"
- }
- },
- "@babel/code-frame": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.16.7.tgz",
- "integrity": "sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg==",
- "dev": true,
- "requires": {
- "@babel/highlight": "^7.16.7"
- }
- },
- "@babel/compat-data": {
- "version": "7.17.10",
- "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.17.10.tgz",
- "integrity": "sha512-GZt/TCsG70Ms19gfZO1tM4CVnXsPgEPBCpJu+Qz3L0LUDsY5nZqFZglIoPC1kIYOtNBZlrnFT+klg12vFGZXrw==",
- "dev": true
- },
- "@babel/core": {
- "version": "7.18.5",
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.18.5.tgz",
- "integrity": "sha512-MGY8vg3DxMnctw0LdvSEojOsumc70g0t18gNyUdAZqB1Rpd1Bqo/svHGvt+UJ6JcGX+DIekGFDxxIWofBxLCnQ==",
- "dev": true,
- "requires": {
- "@ampproject/remapping": "^2.1.0",
- "@babel/code-frame": "^7.16.7",
- "@babel/generator": "^7.18.2",
- "@babel/helper-compilation-targets": "^7.18.2",
- "@babel/helper-module-transforms": "^7.18.0",
- "@babel/helpers": "^7.18.2",
- "@babel/parser": "^7.18.5",
- "@babel/template": "^7.16.7",
- "@babel/traverse": "^7.18.5",
- "@babel/types": "^7.18.4",
- "convert-source-map": "^1.7.0",
- "debug": "^4.1.0",
- "gensync": "^1.0.0-beta.2",
- "json5": "^2.2.1",
- "semver": "^6.3.0"
- }
- },
- "@babel/generator": {
- "version": "7.18.2",
- "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.18.2.tgz",
- "integrity": "sha512-W1lG5vUwFvfMd8HVXqdfbuG7RuaSrTCCD8cl8fP8wOivdbtbIg2Db3IWUcgvfxKbbn6ZBGYRW/Zk1MIwK49mgw==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.18.2",
- "@jridgewell/gen-mapping": "^0.3.0",
- "jsesc": "^2.5.1"
- }
- },
- "@babel/helper-annotate-as-pure": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.7.tgz",
- "integrity": "sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.16.7"
- }
- },
- "@babel/helper-builder-binary-assignment-operator-visitor": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.16.7.tgz",
- "integrity": "sha512-C6FdbRaxYjwVu/geKW4ZeQ0Q31AftgRcdSnZ5/jsH6BzCJbtvXvhpfkbkThYSuutZA7nCXpPR6AD9zd1dprMkA==",
- "dev": true,
- "requires": {
- "@babel/helper-explode-assignable-expression": "^7.16.7",
- "@babel/types": "^7.16.7"
- }
- },
- "@babel/helper-compilation-targets": {
- "version": "7.18.2",
- "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.18.2.tgz",
- "integrity": "sha512-s1jnPotJS9uQnzFtiZVBUxe67CuBa679oWFHpxYYnTpRL/1ffhyX44R9uYiXoa/pLXcY9H2moJta0iaanlk/rQ==",
- "dev": true,
- "requires": {
- "@babel/compat-data": "^7.17.10",
- "@babel/helper-validator-option": "^7.16.7",
- "browserslist": "^4.20.2",
- "semver": "^6.3.0"
- }
- },
- "@babel/helper-create-class-features-plugin": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.16.7.tgz",
- "integrity": "sha512-kIFozAvVfK05DM4EVQYKK+zteWvY85BFdGBRQBytRyY3y+6PX0DkDOn/CZ3lEuczCfrCxEzwt0YtP/87YPTWSw==",
- "dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.16.7",
- "@babel/helper-environment-visitor": "^7.16.7",
- "@babel/helper-function-name": "^7.16.7",
- "@babel/helper-member-expression-to-functions": "^7.16.7",
- "@babel/helper-optimise-call-expression": "^7.16.7",
- "@babel/helper-replace-supers": "^7.16.7",
- "@babel/helper-split-export-declaration": "^7.16.7"
- }
- },
- "@babel/helper-create-regexp-features-plugin": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.16.7.tgz",
- "integrity": "sha512-fk5A6ymfp+O5+p2yCkXAu5Kyj6v0xh0RBeNcAkYUMDvvAAoxvSKXn+Jb37t/yWFiQVDFK1ELpUTD8/aLhCPu+g==",
- "dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.16.7",
- "regexpu-core": "^4.7.1"
- }
- },
- "@babel/helper-define-polyfill-provider": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.3.0.tgz",
- "integrity": "sha512-7hfT8lUljl/tM3h+izTX/pO3W3frz2ok6Pk+gzys8iJqDfZrZy2pXjRTZAvG2YmfHun1X4q8/UZRLatMfqc5Tg==",
- "dev": true,
- "requires": {
- "@babel/helper-compilation-targets": "^7.13.0",
- "@babel/helper-module-imports": "^7.12.13",
- "@babel/helper-plugin-utils": "^7.13.0",
- "@babel/traverse": "^7.13.0",
- "debug": "^4.1.1",
- "lodash.debounce": "^4.0.8",
- "resolve": "^1.14.2",
- "semver": "^6.1.2"
- }
- },
- "@babel/helper-environment-visitor": {
- "version": "7.18.2",
- "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.2.tgz",
- "integrity": "sha512-14GQKWkX9oJzPiQQ7/J36FTXcD4kSp8egKjO9nINlSKiHITRA9q/R74qu8S9xlc/b/yjsJItQUeeh3xnGN0voQ==",
- "dev": true
- },
- "@babel/helper-explode-assignable-expression": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.16.7.tgz",
- "integrity": "sha512-KyUenhWMC8VrxzkGP0Jizjo4/Zx+1nNZhgocs+gLzyZyB8SHidhoq9KK/8Ato4anhwsivfkBLftky7gvzbZMtQ==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.16.7"
- }
- },
- "@babel/helper-function-name": {
- "version": "7.17.9",
- "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.17.9.tgz",
- "integrity": "sha512-7cRisGlVtiVqZ0MW0/yFB4atgpGLWEHUVYnb448hZK4x+vih0YO5UoS11XIYtZYqHd0dIPMdUSv8q5K4LdMnIg==",
- "dev": true,
- "requires": {
- "@babel/template": "^7.16.7",
- "@babel/types": "^7.17.0"
- }
- },
- "@babel/helper-hoist-variables": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz",
- "integrity": "sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.16.7"
- }
- },
- "@babel/helper-member-expression-to-functions": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.16.7.tgz",
- "integrity": "sha512-VtJ/65tYiU/6AbMTDwyoXGPKHgTsfRarivm+YbB5uAzKUyuPjgZSgAFeG87FCigc7KNHu2Pegh1XIT3lXjvz3Q==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.16.7"
- }
- },
- "@babel/helper-module-imports": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz",
- "integrity": "sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.16.7"
- }
- },
- "@babel/helper-module-transforms": {
- "version": "7.18.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.18.0.tgz",
- "integrity": "sha512-kclUYSUBIjlvnzN2++K9f2qzYKFgjmnmjwL4zlmU5f8ZtzgWe8s0rUPSTGy2HmK4P8T52MQsS+HTQAgZd3dMEA==",
- "dev": true,
- "requires": {
- "@babel/helper-environment-visitor": "^7.16.7",
- "@babel/helper-module-imports": "^7.16.7",
- "@babel/helper-simple-access": "^7.17.7",
- "@babel/helper-split-export-declaration": "^7.16.7",
- "@babel/helper-validator-identifier": "^7.16.7",
- "@babel/template": "^7.16.7",
- "@babel/traverse": "^7.18.0",
- "@babel/types": "^7.18.0"
- }
- },
- "@babel/helper-optimise-call-expression": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.7.tgz",
- "integrity": "sha512-EtgBhg7rd/JcnpZFXpBy0ze1YRfdm7BnBX4uKMBd3ixa3RGAE002JZB66FJyNH7g0F38U05pXmA5P8cBh7z+1w==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.16.7"
- }
- },
- "@babel/helper-plugin-utils": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.16.7.tgz",
- "integrity": "sha512-Qg3Nk7ZxpgMrsox6HreY1ZNKdBq7K72tDSliA6dCl5f007jR4ne8iD5UzuNnCJH2xBf2BEEVGr+/OL6Gdp7RxA==",
- "dev": true
- },
- "@babel/helper-remap-async-to-generator": {
- "version": "7.16.8",
- "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.16.8.tgz",
- "integrity": "sha512-fm0gH7Flb8H51LqJHy3HJ3wnE1+qtYR2A99K06ahwrawLdOFsCEWjZOrYricXJHoPSudNKxrMBUPEIPxiIIvBw==",
- "dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.16.7",
- "@babel/helper-wrap-function": "^7.16.8",
- "@babel/types": "^7.16.8"
- }
- },
- "@babel/helper-replace-supers": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.16.7.tgz",
- "integrity": "sha512-y9vsWilTNaVnVh6xiJfABzsNpgDPKev9HnAgz6Gb1p6UUwf9NepdlsV7VXGCftJM+jqD5f7JIEubcpLjZj5dBw==",
- "dev": true,
- "requires": {
- "@babel/helper-environment-visitor": "^7.16.7",
- "@babel/helper-member-expression-to-functions": "^7.16.7",
- "@babel/helper-optimise-call-expression": "^7.16.7",
- "@babel/traverse": "^7.16.7",
- "@babel/types": "^7.16.7"
- }
- },
- "@babel/helper-simple-access": {
- "version": "7.17.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.17.7.tgz",
- "integrity": "sha512-txyMCGroZ96i+Pxr3Je3lzEJjqwaRC9buMUgtomcrLe5Nd0+fk1h0LLA+ixUF5OW7AhHuQ7Es1WcQJZmZsz2XA==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.17.0"
- }
- },
- "@babel/helper-skip-transparent-expression-wrappers": {
- "version": "7.16.0",
- "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.16.0.tgz",
- "integrity": "sha512-+il1gTy0oHwUsBQZyJvukbB4vPMdcYBrFHa0Uc4AizLxbq6BOYC51Rv4tWocX9BLBDLZ4kc6qUFpQ6HRgL+3zw==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.16.0"
- }
- },
- "@babel/helper-split-export-declaration": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz",
- "integrity": "sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.16.7"
- }
- },
- "@babel/helper-validator-identifier": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz",
- "integrity": "sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw==",
- "dev": true
- },
- "@babel/helper-validator-option": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.16.7.tgz",
- "integrity": "sha512-TRtenOuRUVo9oIQGPC5G9DgK4743cdxvtOw0weQNpZXaS16SCBi5MNjZF8vba3ETURjZpTbVn7Vvcf2eAwFozQ==",
- "dev": true
- },
- "@babel/helper-wrap-function": {
- "version": "7.16.8",
- "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.16.8.tgz",
- "integrity": "sha512-8RpyRVIAW1RcDDGTA+GpPAwV22wXCfKOoM9bet6TLkGIFTkRQSkH1nMQ5Yet4MpoXe1ZwHPVtNasc2w0uZMqnw==",
- "dev": true,
- "requires": {
- "@babel/helper-function-name": "^7.16.7",
- "@babel/template": "^7.16.7",
- "@babel/traverse": "^7.16.8",
- "@babel/types": "^7.16.8"
- }
- },
- "@babel/helpers": {
- "version": "7.18.2",
- "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.18.2.tgz",
- "integrity": "sha512-j+d+u5xT5utcQSzrh9p+PaJX94h++KN+ng9b9WEJq7pkUPAd61FGqhjuUEdfknb3E/uDBb7ruwEeKkIxNJPIrg==",
- "dev": true,
- "requires": {
- "@babel/template": "^7.16.7",
- "@babel/traverse": "^7.18.2",
- "@babel/types": "^7.18.2"
- }
- },
- "@babel/highlight": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.16.7.tgz",
- "integrity": "sha512-aKpPMfLvGO3Q97V0qhw/V2SWNWlwfJknuwAunU7wZLSfrM4xTBvg7E5opUVi1kJTBKihE38CPg4nBiqX83PWYw==",
- "dev": true,
- "requires": {
- "@babel/helper-validator-identifier": "^7.16.7",
- "chalk": "^2.0.0",
- "js-tokens": "^4.0.0"
- }
- },
- "@babel/parser": {
- "version": "7.18.5",
- "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.18.5.tgz",
- "integrity": "sha512-YZWVaglMiplo7v8f1oMQ5ZPQr0vn7HPeZXxXWsxXJRjGVrzUFn9OxFQl1sb5wzfootjA/yChhW84BV+383FSOw==",
- "dev": true
- },
- "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": {
- "version": "7.16.7",
- "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.16.7.tgz",
- "integrity": "sha512-anv/DObl7waiGEnC24O9zqL0pSuI9hljihqiDuFHC8d7/bjr/4RLGPWuc8rYOff/QPzbEPSkzG8wGG9aDuhHRg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.16.7.tgz",
- "integrity": "sha512-di8vUHRdf+4aJ7ltXhaDbPoszdkh59AQtJM5soLsuHpQJdFQZOA4uGj0V2u/CZ8bJ/u8ULDL5yq6FO/bCXnKHw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0",
- "@babel/plugin-proposal-optional-chaining": "^7.16.7"
- }
- },
- "@babel/plugin-proposal-async-generator-functions": {
- "version": "7.16.8",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.16.8.tgz",
- "integrity": "sha512-71YHIvMuiuqWJQkebWJtdhQTfd4Q4mF76q2IX37uZPkG9+olBxsX+rH1vkhFto4UeJZ9dPY2s+mDvhDm1u2BGQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7",
- "@babel/helper-remap-async-to-generator": "^7.16.8",
- "@babel/plugin-syntax-async-generators": "^7.8.4"
- }
- },
- "@babel/plugin-proposal-class-properties": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.16.7.tgz",
- "integrity": "sha512-IobU0Xme31ewjYOShSIqd/ZGM/r/cuOz2z0MDbNrhF5FW+ZVgi0f2lyeoj9KFPDOAqsYxmLWZte1WOwlvY9aww==",
- "dev": true,
- "requires": {
- "@babel/helper-create-class-features-plugin": "^7.16.7",
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-proposal-class-static-block": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.16.7.tgz",
- "integrity": "sha512-dgqJJrcZoG/4CkMopzhPJjGxsIe9A8RlkQLnL/Vhhx8AA9ZuaRwGSlscSh42hazc7WSrya/IK7mTeoF0DP9tEw==",
- "dev": true,
- "requires": {
- "@babel/helper-create-class-features-plugin": "^7.16.7",
- "@babel/helper-plugin-utils": "^7.16.7",
- "@babel/plugin-syntax-class-static-block": "^7.14.5"
- }
- },
- "@babel/plugin-proposal-decorators": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-decorators/-/plugin-proposal-decorators-7.16.7.tgz",
- "integrity": "sha512-DoEpnuXK14XV9btI1k8tzNGCutMclpj4yru8aXKoHlVmbO1s+2A+g2+h4JhcjrxkFJqzbymnLG6j/niOf3iFXQ==",
- "dev": true,
- "requires": {
- "@babel/helper-create-class-features-plugin": "^7.16.7",
- "@babel/helper-plugin-utils": "^7.16.7",
- "@babel/plugin-syntax-decorators": "^7.16.7"
- }
- },
- "@babel/plugin-proposal-dynamic-import": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.16.7.tgz",
- "integrity": "sha512-I8SW9Ho3/8DRSdmDdH3gORdyUuYnk1m4cMxUAdu5oy4n3OfN8flDEH+d60iG7dUfi0KkYwSvoalHzzdRzpWHTg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7",
- "@babel/plugin-syntax-dynamic-import": "^7.8.3"
- }
- },
- "@babel/plugin-proposal-export-namespace-from": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.16.7.tgz",
- "integrity": "sha512-ZxdtqDXLRGBL64ocZcs7ovt71L3jhC1RGSyR996svrCi3PYqHNkb3SwPJCs8RIzD86s+WPpt2S73+EHCGO+NUA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7",
- "@babel/plugin-syntax-export-namespace-from": "^7.8.3"
- }
- },
- "@babel/plugin-proposal-json-strings": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.16.7.tgz",
- "integrity": "sha512-lNZ3EEggsGY78JavgbHsK9u5P3pQaW7k4axlgFLYkMd7UBsiNahCITShLjNQschPyjtO6dADrL24757IdhBrsQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7",
- "@babel/plugin-syntax-json-strings": "^7.8.3"
- }
- },
- "@babel/plugin-proposal-logical-assignment-operators": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.16.7.tgz",
- "integrity": "sha512-K3XzyZJGQCr00+EtYtrDjmwX7o7PLK6U9bi1nCwkQioRFVUv6dJoxbQjtWVtP+bCPy82bONBKG8NPyQ4+i6yjg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7",
- "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4"
- }
- },
- "@babel/plugin-proposal-nullish-coalescing-operator": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.16.7.tgz",
- "integrity": "sha512-aUOrYU3EVtjf62jQrCj63pYZ7k6vns2h/DQvHPWGmsJRYzWXZ6/AsfgpiRy6XiuIDADhJzP2Q9MwSMKauBQ+UQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7",
- "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3"
- }
- },
- "@babel/plugin-proposal-numeric-separator": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.16.7.tgz",
- "integrity": "sha512-vQgPMknOIgiuVqbokToyXbkY/OmmjAzr/0lhSIbG/KmnzXPGwW/AdhdKpi+O4X/VkWiWjnkKOBiqJrTaC98VKw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7",
- "@babel/plugin-syntax-numeric-separator": "^7.10.4"
- }
- },
- "@babel/plugin-proposal-object-rest-spread": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.16.7.tgz",
- "integrity": "sha512-3O0Y4+dw94HA86qSg9IHfyPktgR7q3gpNVAeiKQd+8jBKFaU5NQS1Yatgo4wY+UFNuLjvxcSmzcsHqrhgTyBUA==",
- "dev": true,
- "requires": {
- "@babel/compat-data": "^7.16.4",
- "@babel/helper-compilation-targets": "^7.16.7",
- "@babel/helper-plugin-utils": "^7.16.7",
- "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
- "@babel/plugin-transform-parameters": "^7.16.7"
- }
- },
- "@babel/plugin-proposal-optional-catch-binding": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.16.7.tgz",
- "integrity": "sha512-eMOH/L4OvWSZAE1VkHbr1vckLG1WUcHGJSLqqQwl2GaUqG6QjddvrOaTUMNYiv77H5IKPMZ9U9P7EaHwvAShfA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7",
- "@babel/plugin-syntax-optional-catch-binding": "^7.8.3"
- }
- },
- "@babel/plugin-proposal-optional-chaining": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.16.7.tgz",
- "integrity": "sha512-eC3xy+ZrUcBtP7x+sq62Q/HYd674pPTb/77XZMb5wbDPGWIdUbSr4Agr052+zaUPSb+gGRnjxXfKFvx5iMJ+DA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0",
- "@babel/plugin-syntax-optional-chaining": "^7.8.3"
- }
- },
- "@babel/plugin-proposal-private-methods": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.16.7.tgz",
- "integrity": "sha512-7twV3pzhrRxSwHeIvFE6coPgvo+exNDOiGUMg39o2LiLo1Y+4aKpfkcLGcg1UHonzorCt7SNXnoMyCnnIOA8Sw==",
- "dev": true,
- "requires": {
- "@babel/helper-create-class-features-plugin": "^7.16.7",
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-proposal-private-property-in-object": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.16.7.tgz",
- "integrity": "sha512-rMQkjcOFbm+ufe3bTZLyOfsOUOxyvLXZJCTARhJr+8UMSoZmqTe1K1BgkFcrW37rAchWg57yI69ORxiWvUINuQ==",
- "dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.16.7",
- "@babel/helper-create-class-features-plugin": "^7.16.7",
- "@babel/helper-plugin-utils": "^7.16.7",
- "@babel/plugin-syntax-private-property-in-object": "^7.14.5"
- }
- },
- "@babel/plugin-proposal-unicode-property-regex": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.16.7.tgz",
- "integrity": "sha512-QRK0YI/40VLhNVGIjRNAAQkEHws0cswSdFFjpFyt943YmJIU1da9uW63Iu6NFV6CxTZW5eTDCrwZUstBWgp/Rg==",
- "dev": true,
- "requires": {
- "@babel/helper-create-regexp-features-plugin": "^7.16.7",
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@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==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@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==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.12.13"
- }
- },
- "@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==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-syntax-decorators": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-decorators/-/plugin-syntax-decorators-7.16.7.tgz",
- "integrity": "sha512-vQ+PxL+srA7g6Rx6I1e15m55gftknl2X8GCUW1JTlkTaXZLJOS0UcaY0eK9jYT7IYf4awn6qwyghVHLDz1WyMw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@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==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@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==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.3"
- }
- },
- "@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==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@babel/plugin-syntax-jsx": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.16.7.tgz",
- "integrity": "sha512-Esxmk7YjA8QysKeT3VhTXvF6y77f/a91SIs4pWb4H2eWGQkCKFgQaG6hdoEVZtGsrAcb2K5BW66XsOErD4WU3Q==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@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==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.10.4"
- }
- },
- "@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==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@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==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.10.4"
- }
- },
- "@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==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@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==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@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==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@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==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@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==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-transform-arrow-functions": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.16.7.tgz",
- "integrity": "sha512-9ffkFFMbvzTvv+7dTp/66xvZAWASuPD5Tl9LK3Z9vhOmANo6j94rik+5YMBt4CwHVMWLWpMsriIc2zsa3WW3xQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-transform-async-to-generator": {
- "version": "7.16.8",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.16.8.tgz",
- "integrity": "sha512-MtmUmTJQHCnyJVrScNzNlofQJ3dLFuobYn3mwOTKHnSCMtbNsqvF71GQmJfFjdrXSsAA7iysFmYWw4bXZ20hOg==",
- "dev": true,
- "requires": {
- "@babel/helper-module-imports": "^7.16.7",
- "@babel/helper-plugin-utils": "^7.16.7",
- "@babel/helper-remap-async-to-generator": "^7.16.8"
- }
- },
- "@babel/plugin-transform-block-scoped-functions": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.16.7.tgz",
- "integrity": "sha512-JUuzlzmF40Z9cXyytcbZEZKckgrQzChbQJw/5PuEHYeqzCsvebDx0K0jWnIIVcmmDOAVctCgnYs0pMcrYj2zJg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-transform-block-scoping": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.16.7.tgz",
- "integrity": "sha512-ObZev2nxVAYA4bhyusELdo9hb3H+A56bxH3FZMbEImZFiEDYVHXQSJ1hQKFlDnlt8G9bBrCZ5ZpURZUrV4G5qQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-transform-classes": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.16.7.tgz",
- "integrity": "sha512-WY7og38SFAGYRe64BrjKf8OrE6ulEHtr5jEYaZMwox9KebgqPi67Zqz8K53EKk1fFEJgm96r32rkKZ3qA2nCWQ==",
- "dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.16.7",
- "@babel/helper-environment-visitor": "^7.16.7",
- "@babel/helper-function-name": "^7.16.7",
- "@babel/helper-optimise-call-expression": "^7.16.7",
- "@babel/helper-plugin-utils": "^7.16.7",
- "@babel/helper-replace-supers": "^7.16.7",
- "@babel/helper-split-export-declaration": "^7.16.7",
- "globals": "^11.1.0"
- }
- },
- "@babel/plugin-transform-computed-properties": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.16.7.tgz",
- "integrity": "sha512-gN72G9bcmenVILj//sv1zLNaPyYcOzUho2lIJBMh/iakJ9ygCo/hEF9cpGb61SCMEDxbbyBoVQxrt+bWKu5KGw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-transform-destructuring": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.16.7.tgz",
- "integrity": "sha512-VqAwhTHBnu5xBVDCvrvqJbtLUa++qZaWC0Fgr2mqokBlulZARGyIvZDoqbPlPaKImQ9dKAcCzbv+ul//uqu70A==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-transform-dotall-regex": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.16.7.tgz",
- "integrity": "sha512-Lyttaao2SjZF6Pf4vk1dVKv8YypMpomAbygW+mU5cYP3S5cWTfCJjG8xV6CFdzGFlfWK81IjL9viiTvpb6G7gQ==",
- "dev": true,
- "requires": {
- "@babel/helper-create-regexp-features-plugin": "^7.16.7",
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-transform-duplicate-keys": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.16.7.tgz",
- "integrity": "sha512-03DvpbRfvWIXyK0/6QiR1KMTWeT6OcQ7tbhjrXyFS02kjuX/mu5Bvnh5SDSWHxyawit2g5aWhKwI86EE7GUnTw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-transform-exponentiation-operator": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.16.7.tgz",
- "integrity": "sha512-8UYLSlyLgRixQvlYH3J2ekXFHDFLQutdy7FfFAMm3CPZ6q9wHCwnUyiXpQCe3gVVnQlHc5nsuiEVziteRNTXEA==",
- "dev": true,
- "requires": {
- "@babel/helper-builder-binary-assignment-operator-visitor": "^7.16.7",
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-transform-for-of": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.16.7.tgz",
- "integrity": "sha512-/QZm9W92Ptpw7sjI9Nx1mbcsWz33+l8kuMIQnDwgQBG5s3fAfQvkRjQ7NqXhtNcKOnPkdICmUHyCaWW06HCsqg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-transform-function-name": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.16.7.tgz",
- "integrity": "sha512-SU/C68YVwTRxqWj5kgsbKINakGag0KTgq9f2iZEXdStoAbOzLHEBRYzImmA6yFo8YZhJVflvXmIHUO7GWHmxxA==",
- "dev": true,
- "requires": {
- "@babel/helper-compilation-targets": "^7.16.7",
- "@babel/helper-function-name": "^7.16.7",
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-transform-literals": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.16.7.tgz",
- "integrity": "sha512-6tH8RTpTWI0s2sV6uq3e/C9wPo4PTqqZps4uF0kzQ9/xPLFQtipynvmT1g/dOfEJ+0EQsHhkQ/zyRId8J2b8zQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-transform-member-expression-literals": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.16.7.tgz",
- "integrity": "sha512-mBruRMbktKQwbxaJof32LT9KLy2f3gH+27a5XSuXo6h7R3vqltl0PgZ80C8ZMKw98Bf8bqt6BEVi3svOh2PzMw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-transform-modules-amd": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.16.7.tgz",
- "integrity": "sha512-KaaEtgBL7FKYwjJ/teH63oAmE3lP34N3kshz8mm4VMAw7U3PxjVwwUmxEFksbgsNUaO3wId9R2AVQYSEGRa2+g==",
- "dev": true,
- "requires": {
- "@babel/helper-module-transforms": "^7.16.7",
- "@babel/helper-plugin-utils": "^7.16.7",
- "babel-plugin-dynamic-import-node": "^2.3.3"
- }
- },
- "@babel/plugin-transform-modules-commonjs": {
- "version": "7.16.8",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.16.8.tgz",
- "integrity": "sha512-oflKPvsLT2+uKQopesJt3ApiaIS2HW+hzHFcwRNtyDGieAeC/dIHZX8buJQ2J2X1rxGPy4eRcUijm3qcSPjYcA==",
- "dev": true,
- "requires": {
- "@babel/helper-module-transforms": "^7.16.7",
- "@babel/helper-plugin-utils": "^7.16.7",
- "@babel/helper-simple-access": "^7.16.7",
- "babel-plugin-dynamic-import-node": "^2.3.3"
- }
- },
- "@babel/plugin-transform-modules-systemjs": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.16.7.tgz",
- "integrity": "sha512-DuK5E3k+QQmnOqBR9UkusByy5WZWGRxfzV529s9nPra1GE7olmxfqO2FHobEOYSPIjPBTr4p66YDcjQnt8cBmw==",
- "dev": true,
- "requires": {
- "@babel/helper-hoist-variables": "^7.16.7",
- "@babel/helper-module-transforms": "^7.16.7",
- "@babel/helper-plugin-utils": "^7.16.7",
- "@babel/helper-validator-identifier": "^7.16.7",
- "babel-plugin-dynamic-import-node": "^2.3.3"
- }
- },
- "@babel/plugin-transform-modules-umd": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.16.7.tgz",
- "integrity": "sha512-EMh7uolsC8O4xhudF2F6wedbSHm1HHZ0C6aJ7K67zcDNidMzVcxWdGr+htW9n21klm+bOn+Rx4CBsAntZd3rEQ==",
- "dev": true,
- "requires": {
- "@babel/helper-module-transforms": "^7.16.7",
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-transform-named-capturing-groups-regex": {
- "version": "7.16.8",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.16.8.tgz",
- "integrity": "sha512-j3Jw+n5PvpmhRR+mrgIh04puSANCk/T/UA3m3P1MjJkhlK906+ApHhDIqBQDdOgL/r1UYpz4GNclTXxyZrYGSw==",
- "dev": true,
- "requires": {
- "@babel/helper-create-regexp-features-plugin": "^7.16.7"
- }
- },
- "@babel/plugin-transform-new-target": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.16.7.tgz",
- "integrity": "sha512-xiLDzWNMfKoGOpc6t3U+etCE2yRnn3SM09BXqWPIZOBpL2gvVrBWUKnsJx0K/ADi5F5YC5f8APFfWrz25TdlGg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-transform-object-super": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.16.7.tgz",
- "integrity": "sha512-14J1feiQVWaGvRxj2WjyMuXS2jsBkgB3MdSN5HuC2G5nRspa5RK9COcs82Pwy5BuGcjb+fYaUj94mYcOj7rCvw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7",
- "@babel/helper-replace-supers": "^7.16.7"
- }
- },
- "@babel/plugin-transform-parameters": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.16.7.tgz",
- "integrity": "sha512-AT3MufQ7zZEhU2hwOA11axBnExW0Lszu4RL/tAlUJBuNoRak+wehQW8h6KcXOcgjY42fHtDxswuMhMjFEuv/aw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-transform-property-literals": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.16.7.tgz",
- "integrity": "sha512-z4FGr9NMGdoIl1RqavCqGG+ZuYjfZ/hkCIeuH6Do7tXmSm0ls11nYVSJqFEUOSJbDab5wC6lRE/w6YjVcr6Hqw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-transform-regenerator": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.16.7.tgz",
- "integrity": "sha512-mF7jOgGYCkSJagJ6XCujSQg+6xC1M77/03K2oBmVJWoFGNUtnVJO4WHKJk3dnPC8HCcj4xBQP1Egm8DWh3Pb3Q==",
- "dev": true,
- "requires": {
- "regenerator-transform": "^0.14.2"
- }
- },
- "@babel/plugin-transform-reserved-words": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.16.7.tgz",
- "integrity": "sha512-KQzzDnZ9hWQBjwi5lpY5v9shmm6IVG0U9pB18zvMu2i4H90xpT4gmqwPYsn8rObiadYe2M0gmgsiOIF5A/2rtg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-transform-runtime": {
- "version": "7.16.8",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-runtime/-/plugin-transform-runtime-7.16.8.tgz",
- "integrity": "sha512-6Kg2XHPFnIarNweZxmzbgYnnWsXxkx9WQUVk2sksBRL80lBC1RAQV3wQagWxdCHiYHqPN+oenwNIuttlYgIbQQ==",
- "dev": true,
- "requires": {
- "@babel/helper-module-imports": "^7.16.7",
- "@babel/helper-plugin-utils": "^7.16.7",
- "babel-plugin-polyfill-corejs2": "^0.3.0",
- "babel-plugin-polyfill-corejs3": "^0.5.0",
- "babel-plugin-polyfill-regenerator": "^0.3.0",
- "semver": "^6.3.0"
- }
- },
- "@babel/plugin-transform-shorthand-properties": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.16.7.tgz",
- "integrity": "sha512-hah2+FEnoRoATdIb05IOXf+4GzXYTq75TVhIn1PewihbpyrNWUt2JbudKQOETWw6QpLe+AIUpJ5MVLYTQbeeUg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-transform-spread": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.16.7.tgz",
- "integrity": "sha512-+pjJpgAngb53L0iaA5gU/1MLXJIfXcYepLgXB3esVRf4fqmj8f2cxM3/FKaHsZms08hFQJkFccEWuIpm429TXg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.16.0"
- }
- },
- "@babel/plugin-transform-sticky-regex": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.16.7.tgz",
- "integrity": "sha512-NJa0Bd/87QV5NZZzTuZG5BPJjLYadeSZ9fO6oOUoL4iQx+9EEuw/eEM92SrsT19Yc2jgB1u1hsjqDtH02c3Drw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-transform-template-literals": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.16.7.tgz",
- "integrity": "sha512-VwbkDDUeenlIjmfNeDX/V0aWrQH2QiVyJtwymVQSzItFDTpxfyJh3EVaQiS0rIN/CqbLGr0VcGmuwyTdZtdIsA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-transform-typeof-symbol": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.16.7.tgz",
- "integrity": "sha512-p2rOixCKRJzpg9JB4gjnG4gjWkWa89ZoYUnl9snJ1cWIcTH/hvxZqfO+WjG6T8DRBpctEol5jw1O5rA8gkCokQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-transform-unicode-escapes": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.16.7.tgz",
- "integrity": "sha512-TAV5IGahIz3yZ9/Hfv35TV2xEm+kaBDaZQCn2S/hG9/CZ0DktxJv9eKfPc7yYCvOYR4JGx1h8C+jcSOvgaaI/Q==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/plugin-transform-unicode-regex": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.16.7.tgz",
- "integrity": "sha512-oC5tYYKw56HO75KZVLQ+R/Nl3Hro9kf8iG0hXoaHP7tjAyCpvqBiSNe6vGrZni1Z6MggmUOC6A7VP7AVmw225Q==",
- "dev": true,
- "requires": {
- "@babel/helper-create-regexp-features-plugin": "^7.16.7",
- "@babel/helper-plugin-utils": "^7.16.7"
- }
- },
- "@babel/preset-env": {
- "version": "7.16.8",
- "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.16.8.tgz",
- "integrity": "sha512-9rNKgVCdwHb3z1IlbMyft6yIXIeP3xz6vWvGaLHrJThuEIqWfHb0DNBH9VuTgnDfdbUDhkmkvMZS/YMCtP7Elg==",
- "dev": true,
- "requires": {
- "@babel/compat-data": "^7.16.8",
- "@babel/helper-compilation-targets": "^7.16.7",
- "@babel/helper-plugin-utils": "^7.16.7",
- "@babel/helper-validator-option": "^7.16.7",
- "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.16.7",
- "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.16.7",
- "@babel/plugin-proposal-async-generator-functions": "^7.16.8",
- "@babel/plugin-proposal-class-properties": "^7.16.7",
- "@babel/plugin-proposal-class-static-block": "^7.16.7",
- "@babel/plugin-proposal-dynamic-import": "^7.16.7",
- "@babel/plugin-proposal-export-namespace-from": "^7.16.7",
- "@babel/plugin-proposal-json-strings": "^7.16.7",
- "@babel/plugin-proposal-logical-assignment-operators": "^7.16.7",
- "@babel/plugin-proposal-nullish-coalescing-operator": "^7.16.7",
- "@babel/plugin-proposal-numeric-separator": "^7.16.7",
- "@babel/plugin-proposal-object-rest-spread": "^7.16.7",
- "@babel/plugin-proposal-optional-catch-binding": "^7.16.7",
- "@babel/plugin-proposal-optional-chaining": "^7.16.7",
- "@babel/plugin-proposal-private-methods": "^7.16.7",
- "@babel/plugin-proposal-private-property-in-object": "^7.16.7",
- "@babel/plugin-proposal-unicode-property-regex": "^7.16.7",
- "@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-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-transform-arrow-functions": "^7.16.7",
- "@babel/plugin-transform-async-to-generator": "^7.16.8",
- "@babel/plugin-transform-block-scoped-functions": "^7.16.7",
- "@babel/plugin-transform-block-scoping": "^7.16.7",
- "@babel/plugin-transform-classes": "^7.16.7",
- "@babel/plugin-transform-computed-properties": "^7.16.7",
- "@babel/plugin-transform-destructuring": "^7.16.7",
- "@babel/plugin-transform-dotall-regex": "^7.16.7",
- "@babel/plugin-transform-duplicate-keys": "^7.16.7",
- "@babel/plugin-transform-exponentiation-operator": "^7.16.7",
- "@babel/plugin-transform-for-of": "^7.16.7",
- "@babel/plugin-transform-function-name": "^7.16.7",
- "@babel/plugin-transform-literals": "^7.16.7",
- "@babel/plugin-transform-member-expression-literals": "^7.16.7",
- "@babel/plugin-transform-modules-amd": "^7.16.7",
- "@babel/plugin-transform-modules-commonjs": "^7.16.8",
- "@babel/plugin-transform-modules-systemjs": "^7.16.7",
- "@babel/plugin-transform-modules-umd": "^7.16.7",
- "@babel/plugin-transform-named-capturing-groups-regex": "^7.16.8",
- "@babel/plugin-transform-new-target": "^7.16.7",
- "@babel/plugin-transform-object-super": "^7.16.7",
- "@babel/plugin-transform-parameters": "^7.16.7",
- "@babel/plugin-transform-property-literals": "^7.16.7",
- "@babel/plugin-transform-regenerator": "^7.16.7",
- "@babel/plugin-transform-reserved-words": "^7.16.7",
- "@babel/plugin-transform-shorthand-properties": "^7.16.7",
- "@babel/plugin-transform-spread": "^7.16.7",
- "@babel/plugin-transform-sticky-regex": "^7.16.7",
- "@babel/plugin-transform-template-literals": "^7.16.7",
- "@babel/plugin-transform-typeof-symbol": "^7.16.7",
- "@babel/plugin-transform-unicode-escapes": "^7.16.7",
- "@babel/plugin-transform-unicode-regex": "^7.16.7",
- "@babel/preset-modules": "^0.1.5",
- "@babel/types": "^7.16.8",
- "babel-plugin-polyfill-corejs2": "^0.3.0",
- "babel-plugin-polyfill-corejs3": "^0.5.0",
- "babel-plugin-polyfill-regenerator": "^0.3.0",
- "core-js-compat": "^3.20.2",
- "semver": "^6.3.0"
- }
- },
- "@babel/preset-modules": {
- "version": "0.1.5",
- "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.5.tgz",
- "integrity": "sha512-A57th6YRG7oR3cq/yt/Y84MvGgE0eJG2F1JLhKuyG+jFxEgrd/HAMJatiFtmOiZurz+0DkrvbheCLaV5f2JfjA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0",
- "@babel/plugin-proposal-unicode-property-regex": "^7.4.4",
- "@babel/plugin-transform-dotall-regex": "^7.4.4",
- "@babel/types": "^7.4.4",
- "esutils": "^2.0.2"
- }
- },
- "@babel/runtime": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.16.7.tgz",
- "integrity": "sha512-9E9FJowqAsytyOY6LG+1KuueckRL+aQW+mKvXRXnuFGyRAyepJPmEo9vgMfXUA6O9u3IeEdv9MAkppFcaQwogQ==",
- "dev": true,
- "requires": {
- "regenerator-runtime": "^0.13.4"
- }
- },
- "@babel/template": {
- "version": "7.16.7",
- "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.16.7.tgz",
- "integrity": "sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w==",
- "dev": true,
- "requires": {
- "@babel/code-frame": "^7.16.7",
- "@babel/parser": "^7.16.7",
- "@babel/types": "^7.16.7"
- }
- },
- "@babel/traverse": {
- "version": "7.18.5",
- "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.18.5.tgz",
- "integrity": "sha512-aKXj1KT66sBj0vVzk6rEeAO6Z9aiiQ68wfDgge3nHhA/my6xMM/7HGQUNumKZaoa2qUPQ5whJG9aAifsxUKfLA==",
- "dev": true,
- "requires": {
- "@babel/code-frame": "^7.16.7",
- "@babel/generator": "^7.18.2",
- "@babel/helper-environment-visitor": "^7.18.2",
- "@babel/helper-function-name": "^7.17.9",
- "@babel/helper-hoist-variables": "^7.16.7",
- "@babel/helper-split-export-declaration": "^7.16.7",
- "@babel/parser": "^7.18.5",
- "@babel/types": "^7.18.4",
- "debug": "^4.1.0",
- "globals": "^11.1.0"
- }
- },
- "@babel/types": {
- "version": "7.18.4",
- "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.18.4.tgz",
- "integrity": "sha512-ThN1mBcMq5pG/Vm2IcBmPPfyPXbd8S02rS+OBIDENdufvqC7Z/jHPCv9IcP01277aKtDI8g/2XysBN4hA8niiw==",
- "dev": true,
- "requires": {
- "@babel/helper-validator-identifier": "^7.16.7",
- "to-fast-properties": "^2.0.0"
- }
- },
- "@fortawesome/fontawesome-common-types": {
- "version": "0.2.36",
- "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-0.2.36.tgz",
- "integrity": "sha512-a/7BiSgobHAgBWeN7N0w+lAhInrGxksn13uK7231n2m8EDPE3BMCl9NZLTGrj9ZXfCmC6LM0QLqXidIizVQ6yg=="
- },
- "@fortawesome/fontawesome-svg-core": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-svg-core/-/fontawesome-svg-core-1.3.0.tgz",
- "integrity": "sha512-UIL6crBWhjTNQcONt96ExjUnKt1D68foe3xjEensLDclqQ6YagwCRYVQdrp/hW0ALRp/5Fv/VKw+MqTUWYYvPg==",
- "requires": {
- "@fortawesome/fontawesome-common-types": "^0.3.0"
- },
- "dependencies": {
- "@fortawesome/fontawesome-common-types": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/@fortawesome/fontawesome-common-types/-/fontawesome-common-types-0.3.0.tgz",
- "integrity": "sha512-CA3MAZBTxVsF6SkfkHXDerkhcQs0QPofy43eFdbWJJkZiq3SfiaH1msOkac59rQaqto5EqWnASboY1dBuKen5w=="
- }
- }
- },
- "@fortawesome/free-regular-svg-icons": {
- "version": "5.15.4",
- "resolved": "https://registry.npmjs.org/@fortawesome/free-regular-svg-icons/-/free-regular-svg-icons-5.15.4.tgz",
- "integrity": "sha512-9VNNnU3CXHy9XednJ3wzQp6SwNwT3XaM26oS4Rp391GsxVYA+0oDR2J194YCIWf7jNRCYKjUCOduxdceLrx+xw==",
- "requires": {
- "@fortawesome/fontawesome-common-types": "^0.2.36"
- }
- },
- "@fortawesome/free-solid-svg-icons": {
- "version": "5.15.4",
- "resolved": "https://registry.npmjs.org/@fortawesome/free-solid-svg-icons/-/free-solid-svg-icons-5.15.4.tgz",
- "integrity": "sha512-JLmQfz6tdtwxoihXLg6lT78BorrFyCf59SAwBM6qV/0zXyVeDygJVb3fk+j5Qat+Yvcxp1buLTY5iDh1ZSAQ8w==",
- "requires": {
- "@fortawesome/fontawesome-common-types": "^0.2.36"
- }
- },
- "@fortawesome/vue-fontawesome": {
- "version": "2.0.7",
- "resolved": "https://registry.npmjs.org/@fortawesome/vue-fontawesome/-/vue-fontawesome-2.0.7.tgz",
- "integrity": "sha512-D1a5FJQeiCFG5a29Re5uNAUAI8SdkCPZlvf0EyfEy9XBVB7tEsL/tfXO6ToXoEOE8CAzJCwuM/PXSCHusXT5/Q=="
- },
- "@hapi/address": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/@hapi/address/-/address-2.1.4.tgz",
- "integrity": "sha512-QD1PhQk+s31P1ixsX0H0Suoupp3VMXzIVMSwobR3F3MSUO2YCV0B7xqLcUw/Bh8yuvd3LhpyqLQWTNcRmp6IdQ==",
- "dev": true
- },
- "@hapi/bourne": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/@hapi/bourne/-/bourne-1.3.2.tgz",
- "integrity": "sha512-1dVNHT76Uu5N3eJNTYcvxee+jzX4Z9lfciqRRHCU27ihbUcYi+iSc2iml5Ke1LXe1SyJCLA0+14Jh4tXJgOppA==",
- "dev": true
- },
- "@hapi/hoek": {
- "version": "8.5.1",
- "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-8.5.1.tgz",
- "integrity": "sha512-yN7kbciD87WzLGc5539Tn0sApjyiGHAJgKvG9W8C7O+6c7qmoQMfVs0W4bX17eqz6C78QJqqFrtgdK5EWf6Qow==",
- "dev": true
- },
- "@hapi/joi": {
- "version": "15.1.1",
- "resolved": "https://registry.npmjs.org/@hapi/joi/-/joi-15.1.1.tgz",
- "integrity": "sha512-entf8ZMOK8sc+8YfeOlM8pCfg3b5+WZIKBfUaaJT8UsjAAPjartzxIYm3TIbjvA4u+u++KbcXD38k682nVHDAQ==",
- "dev": true,
- "requires": {
- "@hapi/address": "2.x.x",
- "@hapi/bourne": "1.x.x",
- "@hapi/hoek": "8.x.x",
- "@hapi/topo": "3.x.x"
- }
- },
- "@hapi/topo": {
- "version": "3.1.6",
- "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-3.1.6.tgz",
- "integrity": "sha512-tAag0jEcjwH+P2quUfipd7liWCNX2F8NvYjQp2wtInsZxnMlypdw0FtAOLxtvvkO+GSRRbmNi8m/5y42PQJYCQ==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^8.3.0"
- }
- },
- "@intervolga/optimize-cssnano-plugin": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/@intervolga/optimize-cssnano-plugin/-/optimize-cssnano-plugin-1.0.6.tgz",
- "integrity": "sha512-zN69TnSr0viRSU6cEDIcuPcP67QcpQ6uHACg58FiN9PDrU6SLyGW3MR4tiISbYxy1kDWAVPwD+XwQTWE5cigAA==",
- "dev": true,
- "requires": {
- "cssnano": "^4.0.0",
- "cssnano-preset-default": "^4.0.0",
- "postcss": "^7.0.0"
- }
- },
- "@jridgewell/gen-mapping": {
- "version": "0.3.1",
- "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.1.tgz",
- "integrity": "sha512-GcHwniMlA2z+WFPWuY8lp3fsza0I8xPFMWL5+n8LYyP6PSvPrXf4+n8stDHZY2DM0zy9sVkRDy1jDI4XGzYVqg==",
- "dev": true,
- "requires": {
- "@jridgewell/set-array": "^1.0.0",
- "@jridgewell/sourcemap-codec": "^1.4.10",
- "@jridgewell/trace-mapping": "^0.3.9"
- }
- },
- "@jridgewell/resolve-uri": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.5.tgz",
- "integrity": "sha512-VPeQ7+wH0itvQxnG+lIzWgkysKIr3L9sslimFW55rHMdGu/qCQ5z5h9zq4gI8uBtqkpHhsF4Z/OwExufUCThew==",
- "dev": true
- },
- "@jridgewell/set-array": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.1.1.tgz",
- "integrity": "sha512-Ct5MqZkLGEXTVmQYbGtx9SVqD2fqwvdubdps5D3djjAkgkKwT918VNOz65pEHFaYTeWcukmJmH5SwsA9Tn2ObQ==",
- "dev": true
- },
- "@jridgewell/sourcemap-codec": {
- "version": "1.4.11",
- "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.11.tgz",
- "integrity": "sha512-Fg32GrJo61m+VqYSdRSjRXMjQ06j8YIYfcTqndLYVAaHmroZHLJZCydsWBOTDqXS2v+mjxohBWEMfg97GXmYQg==",
- "dev": true
- },
- "@jridgewell/trace-mapping": {
- "version": "0.3.13",
- "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.13.tgz",
- "integrity": "sha512-o1xbKhp9qnIAoHJSWd6KlCZfqslL4valSF81H8ImioOAxluWYWOpWkpyktY2vnt4tbrX9XYaxovq6cgowaJp2w==",
- "dev": true,
- "requires": {
- "@jridgewell/resolve-uri": "^3.0.3",
- "@jridgewell/sourcemap-codec": "^1.4.10"
- }
- },
- "@mrmlnc/readdir-enhanced": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz",
- "integrity": "sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g==",
- "dev": true,
- "requires": {
- "call-me-maybe": "^1.0.1",
- "glob-to-regexp": "^0.3.0"
- }
- },
- "@nodelib/fs.stat": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz",
- "integrity": "sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw==",
- "dev": true
- },
- "@soda/friendly-errors-webpack-plugin": {
- "version": "1.8.1",
- "resolved": "https://registry.npmjs.org/@soda/friendly-errors-webpack-plugin/-/friendly-errors-webpack-plugin-1.8.1.tgz",
- "integrity": "sha512-h2ooWqP8XuFqTXT+NyAFbrArzfQA7R6HTezADrvD9Re8fxMLTPPniLdqVTdDaO0eIoLaAwKT+d6w+5GeTk7Vbg==",
- "dev": true,
- "requires": {
- "chalk": "^3.0.0",
- "error-stack-parser": "^2.0.6",
- "string-width": "^4.2.3",
- "strip-ansi": "^6.0.1"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
- "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "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
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "@soda/get-current-script": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/@soda/get-current-script/-/get-current-script-1.0.2.tgz",
- "integrity": "sha512-T7VNNlYVM1SgQ+VsMYhnDkcGmWhQdL0bDyGm5TlQ3GBXnJscEClUUOKduWTmm2zCnvNLC1hc3JpuXjs/nFOc5w==",
- "dev": true
- },
- "@types/body-parser": {
- "version": "1.19.2",
- "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.2.tgz",
- "integrity": "sha512-ALYone6pm6QmwZoAgeyNksccT9Q4AWZQ6PvfwR37GT6r6FWUPguq6sUmNGSMV2Wr761oQoBxwGGa6DR5o1DC9g==",
- "dev": true,
- "requires": {
- "@types/connect": "*",
- "@types/node": "*"
- }
- },
- "@types/chart.js": {
- "version": "2.9.35",
- "resolved": "https://registry.npmjs.org/@types/chart.js/-/chart.js-2.9.35.tgz",
- "integrity": "sha512-MWx/zZlh4wHBbM4Tm4YsZyYGb1/LkTiFLFwX/FXb0EJCvXX2xWTRHwlJ2RAAEXWxLrOdaAWP8vFtJXny+4CpEw==",
- "requires": {
- "moment": "^2.10.2"
- }
- },
- "@types/connect": {
- "version": "3.4.35",
- "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.35.tgz",
- "integrity": "sha512-cdeYyv4KWoEgpBISTxWvqYsVy444DOqehiF3fM3ne10AmJ62RSyNkUnxMJXHQWRQQX2eR94m5y1IZyDwBjV9FQ==",
- "dev": true,
- "requires": {
- "@types/node": "*"
- }
- },
- "@types/connect-history-api-fallback": {
- "version": "1.3.5",
- "resolved": "https://registry.npmjs.org/@types/connect-history-api-fallback/-/connect-history-api-fallback-1.3.5.tgz",
- "integrity": "sha512-h8QJa8xSb1WD4fpKBDcATDNGXghFj6/3GRWG6dhmRcu0RX1Ubasur2Uvx5aeEwlf0MwblEC2bMzzMQntxnw/Cw==",
- "dev": true,
- "requires": {
- "@types/express-serve-static-core": "*",
- "@types/node": "*"
- }
- },
- "@types/express": {
- "version": "4.17.13",
- "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.13.tgz",
- "integrity": "sha512-6bSZTPaTIACxn48l50SR+axgrqm6qXFIxrdAKaG6PaJk3+zuUr35hBlgT7vOmJcum+OEaIBLtHV/qloEAFITeA==",
- "dev": true,
- "requires": {
- "@types/body-parser": "*",
- "@types/express-serve-static-core": "^4.17.18",
- "@types/qs": "*",
- "@types/serve-static": "*"
- }
- },
- "@types/express-serve-static-core": {
- "version": "4.17.28",
- "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.28.tgz",
- "integrity": "sha512-P1BJAEAW3E2DJUlkgq4tOL3RyMunoWXqbSCygWo5ZIWTjUgN1YnaXWW4VWl/oc8vs/XoYibEGBKP0uZyF4AHig==",
- "dev": true,
- "requires": {
- "@types/node": "*",
- "@types/qs": "*",
- "@types/range-parser": "*"
- }
- },
- "@types/glob": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/@types/glob/-/glob-7.2.0.tgz",
- "integrity": "sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==",
- "dev": true,
- "requires": {
- "@types/minimatch": "*",
- "@types/node": "*"
- }
- },
- "@types/http-proxy": {
- "version": "1.17.8",
- "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.8.tgz",
- "integrity": "sha512-5kPLG5BKpWYkw/LVOGWpiq3nEVqxiN32rTgI53Sk12/xHFQ2rG3ehI9IO+O3W2QoKeyB92dJkoka8SUm6BX1pA==",
- "dev": true,
- "requires": {
- "@types/node": "*"
- }
- },
- "@types/json-schema": {
- "version": "7.0.9",
- "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.9.tgz",
- "integrity": "sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==",
- "dev": true
- },
- "@types/mime": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.2.tgz",
- "integrity": "sha512-YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==",
- "dev": true
- },
- "@types/minimatch": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz",
- "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==",
- "dev": true
- },
- "@types/minimist": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.2.tgz",
- "integrity": "sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==",
- "dev": true
- },
- "@types/node": {
- "version": "17.0.8",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.8.tgz",
- "integrity": "sha512-YofkM6fGv4gDJq78g4j0mMuGMkZVxZDgtU0JRdx6FgiJDG+0fY0GKVolOV8WqVmEhLCXkQRjwDdKyPxJp/uucg==",
- "dev": true
- },
- "@types/normalize-package-data": {
- "version": "2.4.1",
- "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz",
- "integrity": "sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==",
- "dev": true
- },
- "@types/q": {
- "version": "1.5.5",
- "resolved": "https://registry.npmjs.org/@types/q/-/q-1.5.5.tgz",
- "integrity": "sha512-L28j2FcJfSZOnL1WBjDYp2vUHCeIFlyYI/53EwD/rKUBQ7MtUUfbQWiyKJGpcnv4/WgrhWsFKrcPstcAt/J0tQ==",
- "dev": true
- },
- "@types/qs": {
- "version": "6.9.7",
- "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.7.tgz",
- "integrity": "sha512-FGa1F62FT09qcrueBA6qYTrJPVDzah9a+493+o2PCXsesWHIn27G98TsSMs3WPNbZIEj4+VJf6saSFpvD+3Zsw==",
- "dev": true
- },
- "@types/range-parser": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.4.tgz",
- "integrity": "sha512-EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==",
- "dev": true
- },
- "@types/serve-static": {
- "version": "1.13.10",
- "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.13.10.tgz",
- "integrity": "sha512-nCkHGI4w7ZgAdNkrEu0bv+4xNV/XDqW+DydknebMOQwkpDGx8G+HTlj7R7ABI8i8nKxVw0wtKPi1D+lPOkh4YQ==",
- "dev": true,
- "requires": {
- "@types/mime": "^1",
- "@types/node": "*"
- }
- },
- "@types/source-list-map": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/@types/source-list-map/-/source-list-map-0.1.2.tgz",
- "integrity": "sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA==",
- "dev": true
- },
- "@types/tapable": {
- "version": "1.0.8",
- "resolved": "https://registry.npmjs.org/@types/tapable/-/tapable-1.0.8.tgz",
- "integrity": "sha512-ipixuVrh2OdNmauvtT51o3d8z12p6LtFW9in7U79der/kwejjdNchQC5UMn5u/KxNoM7VHHOs/l8KS8uHxhODQ==",
- "dev": true
- },
- "@types/uglify-js": {
- "version": "3.13.1",
- "resolved": "https://registry.npmjs.org/@types/uglify-js/-/uglify-js-3.13.1.tgz",
- "integrity": "sha512-O3MmRAk6ZuAKa9CHgg0Pr0+lUOqoMLpc9AS4R8ano2auvsg7IE8syF3Xh/NPr26TWklxYcqoEEFdzLLs1fV9PQ==",
- "dev": true,
- "requires": {
- "source-map": "^0.6.1"
- },
- "dependencies": {
- "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
- }
- }
- },
- "@types/webpack": {
- "version": "4.41.32",
- "resolved": "https://registry.npmjs.org/@types/webpack/-/webpack-4.41.32.tgz",
- "integrity": "sha512-cb+0ioil/7oz5//7tZUSwbrSAN/NWHrQylz5cW8G0dWTcF/g+/dSdMlKVZspBYuMAN1+WnwHrkxiRrLcwd0Heg==",
- "dev": true,
- "requires": {
- "@types/node": "*",
- "@types/tapable": "^1",
- "@types/uglify-js": "*",
- "@types/webpack-sources": "*",
- "anymatch": "^3.0.0",
- "source-map": "^0.6.0"
- },
- "dependencies": {
- "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
- }
- }
- },
- "@types/webpack-dev-server": {
- "version": "3.11.6",
- "resolved": "https://registry.npmjs.org/@types/webpack-dev-server/-/webpack-dev-server-3.11.6.tgz",
- "integrity": "sha512-XCph0RiiqFGetukCTC3KVnY1jwLcZ84illFRMbyFzCcWl90B/76ew0tSqF46oBhnLC4obNDG7dMO0JfTN0MgMQ==",
- "dev": true,
- "requires": {
- "@types/connect-history-api-fallback": "*",
- "@types/express": "*",
- "@types/serve-static": "*",
- "@types/webpack": "^4",
- "http-proxy-middleware": "^1.0.0"
- }
- },
- "@types/webpack-sources": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@types/webpack-sources/-/webpack-sources-3.2.0.tgz",
- "integrity": "sha512-Ft7YH3lEVRQ6ls8k4Ff1oB4jN6oy/XmU6tQISKdhfh+1mR+viZFphS6WL0IrtDOzvefmJg5a0s7ZQoRXwqTEFg==",
- "dev": true,
- "requires": {
- "@types/node": "*",
- "@types/source-list-map": "*",
- "source-map": "^0.7.3"
- },
- "dependencies": {
- "source-map": {
- "version": "0.7.3",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz",
- "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==",
- "dev": true
- }
- }
- },
- "@vue/babel-helper-vue-jsx-merge-props": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/@vue/babel-helper-vue-jsx-merge-props/-/babel-helper-vue-jsx-merge-props-1.2.1.tgz",
- "integrity": "sha512-QOi5OW45e2R20VygMSNhyQHvpdUwQZqGPc748JLGCYEy+yp8fNFNdbNIGAgZmi9e+2JHPd6i6idRuqivyicIkA==",
- "dev": true
- },
- "@vue/babel-helper-vue-transform-on": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/@vue/babel-helper-vue-transform-on/-/babel-helper-vue-transform-on-1.0.2.tgz",
- "integrity": "sha512-hz4R8tS5jMn8lDq6iD+yWL6XNB699pGIVLk7WSJnn1dbpjaazsjZQkieJoRX6gW5zpYSCFqQ7jUquPNY65tQYA==",
- "dev": true
- },
- "@vue/babel-plugin-jsx": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/@vue/babel-plugin-jsx/-/babel-plugin-jsx-1.1.1.tgz",
- "integrity": "sha512-j2uVfZjnB5+zkcbc/zsOc0fSNGCMMjaEXP52wdwdIfn0qjFfEYpYZBFKFg+HHnQeJCVrjOeO0YxgaL7DMrym9w==",
- "dev": true,
- "requires": {
- "@babel/helper-module-imports": "^7.0.0",
- "@babel/plugin-syntax-jsx": "^7.0.0",
- "@babel/template": "^7.0.0",
- "@babel/traverse": "^7.0.0",
- "@babel/types": "^7.0.0",
- "@vue/babel-helper-vue-transform-on": "^1.0.2",
- "camelcase": "^6.0.0",
- "html-tags": "^3.1.0",
- "svg-tags": "^1.0.0"
- }
- },
- "@vue/babel-plugin-transform-vue-jsx": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/@vue/babel-plugin-transform-vue-jsx/-/babel-plugin-transform-vue-jsx-1.2.1.tgz",
- "integrity": "sha512-HJuqwACYehQwh1fNT8f4kyzqlNMpBuUK4rSiSES5D4QsYncv5fxFsLyrxFPG2ksO7t5WP+Vgix6tt6yKClwPzA==",
- "dev": true,
- "requires": {
- "@babel/helper-module-imports": "^7.0.0",
- "@babel/plugin-syntax-jsx": "^7.2.0",
- "@vue/babel-helper-vue-jsx-merge-props": "^1.2.1",
- "html-tags": "^2.0.0",
- "lodash.kebabcase": "^4.1.1",
- "svg-tags": "^1.0.0"
- },
- "dependencies": {
- "html-tags": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-2.0.0.tgz",
- "integrity": "sha1-ELMKOGCF9Dzt41PMj6fLDe7qZos=",
- "dev": true
- }
- }
- },
- "@vue/babel-preset-app": {
- "version": "4.5.15",
- "resolved": "https://registry.npmjs.org/@vue/babel-preset-app/-/babel-preset-app-4.5.15.tgz",
- "integrity": "sha512-J+YttzvwRfV1BPczf8r3qCevznYk+jh531agVF+5EYlHF4Sgh/cGXTz9qkkiux3LQgvhEGXgmCteg1n38WuuKg==",
- "dev": true,
- "requires": {
- "@babel/core": "^7.11.0",
- "@babel/helper-compilation-targets": "^7.9.6",
- "@babel/helper-module-imports": "^7.8.3",
- "@babel/plugin-proposal-class-properties": "^7.8.3",
- "@babel/plugin-proposal-decorators": "^7.8.3",
- "@babel/plugin-syntax-dynamic-import": "^7.8.3",
- "@babel/plugin-syntax-jsx": "^7.8.3",
- "@babel/plugin-transform-runtime": "^7.11.0",
- "@babel/preset-env": "^7.11.0",
- "@babel/runtime": "^7.11.0",
- "@vue/babel-plugin-jsx": "^1.0.3",
- "@vue/babel-preset-jsx": "^1.2.4",
- "babel-plugin-dynamic-import-node": "^2.3.3",
- "core-js": "^3.6.5",
- "core-js-compat": "^3.6.5",
- "semver": "^6.1.0"
- }
- },
- "@vue/babel-preset-jsx": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/@vue/babel-preset-jsx/-/babel-preset-jsx-1.2.4.tgz",
- "integrity": "sha512-oRVnmN2a77bYDJzeGSt92AuHXbkIxbf/XXSE3klINnh9AXBmVS1DGa1f0d+dDYpLfsAKElMnqKTQfKn7obcL4w==",
- "dev": true,
- "requires": {
- "@vue/babel-helper-vue-jsx-merge-props": "^1.2.1",
- "@vue/babel-plugin-transform-vue-jsx": "^1.2.1",
- "@vue/babel-sugar-composition-api-inject-h": "^1.2.1",
- "@vue/babel-sugar-composition-api-render-instance": "^1.2.4",
- "@vue/babel-sugar-functional-vue": "^1.2.2",
- "@vue/babel-sugar-inject-h": "^1.2.2",
- "@vue/babel-sugar-v-model": "^1.2.3",
- "@vue/babel-sugar-v-on": "^1.2.3"
- }
- },
- "@vue/babel-sugar-composition-api-inject-h": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/@vue/babel-sugar-composition-api-inject-h/-/babel-sugar-composition-api-inject-h-1.2.1.tgz",
- "integrity": "sha512-4B3L5Z2G+7s+9Bwbf+zPIifkFNcKth7fQwekVbnOA3cr3Pq71q71goWr97sk4/yyzH8phfe5ODVzEjX7HU7ItQ==",
- "dev": true,
- "requires": {
- "@babel/plugin-syntax-jsx": "^7.2.0"
- }
- },
- "@vue/babel-sugar-composition-api-render-instance": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/@vue/babel-sugar-composition-api-render-instance/-/babel-sugar-composition-api-render-instance-1.2.4.tgz",
- "integrity": "sha512-joha4PZznQMsxQYXtR3MnTgCASC9u3zt9KfBxIeuI5g2gscpTsSKRDzWQt4aqNIpx6cv8On7/m6zmmovlNsG7Q==",
- "dev": true,
- "requires": {
- "@babel/plugin-syntax-jsx": "^7.2.0"
- }
- },
- "@vue/babel-sugar-functional-vue": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/@vue/babel-sugar-functional-vue/-/babel-sugar-functional-vue-1.2.2.tgz",
- "integrity": "sha512-JvbgGn1bjCLByIAU1VOoepHQ1vFsroSA/QkzdiSs657V79q6OwEWLCQtQnEXD/rLTA8rRit4rMOhFpbjRFm82w==",
- "dev": true,
- "requires": {
- "@babel/plugin-syntax-jsx": "^7.2.0"
- }
- },
- "@vue/babel-sugar-inject-h": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/@vue/babel-sugar-inject-h/-/babel-sugar-inject-h-1.2.2.tgz",
- "integrity": "sha512-y8vTo00oRkzQTgufeotjCLPAvlhnpSkcHFEp60+LJUwygGcd5Chrpn5480AQp/thrxVm8m2ifAk0LyFel9oCnw==",
- "dev": true,
- "requires": {
- "@babel/plugin-syntax-jsx": "^7.2.0"
- }
- },
- "@vue/babel-sugar-v-model": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/@vue/babel-sugar-v-model/-/babel-sugar-v-model-1.2.3.tgz",
- "integrity": "sha512-A2jxx87mySr/ulAsSSyYE8un6SIH0NWHiLaCWpodPCVOlQVODCaSpiR4+IMsmBr73haG+oeCuSvMOM+ttWUqRQ==",
- "dev": true,
- "requires": {
- "@babel/plugin-syntax-jsx": "^7.2.0",
- "@vue/babel-helper-vue-jsx-merge-props": "^1.2.1",
- "@vue/babel-plugin-transform-vue-jsx": "^1.2.1",
- "camelcase": "^5.0.0",
- "html-tags": "^2.0.0",
- "svg-tags": "^1.0.0"
- },
- "dependencies": {
- "camelcase": {
- "version": "5.3.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
- "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
- "dev": true
- },
- "html-tags": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-2.0.0.tgz",
- "integrity": "sha1-ELMKOGCF9Dzt41PMj6fLDe7qZos=",
- "dev": true
- }
- }
- },
- "@vue/babel-sugar-v-on": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/@vue/babel-sugar-v-on/-/babel-sugar-v-on-1.2.3.tgz",
- "integrity": "sha512-kt12VJdz/37D3N3eglBywV8GStKNUhNrsxChXIV+o0MwVXORYuhDTHJRKPgLJRb/EY3vM2aRFQdxJBp9CLikjw==",
- "dev": true,
- "requires": {
- "@babel/plugin-syntax-jsx": "^7.2.0",
- "@vue/babel-plugin-transform-vue-jsx": "^1.2.1",
- "camelcase": "^5.0.0"
- },
- "dependencies": {
- "camelcase": {
- "version": "5.3.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
- "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
- "dev": true
- }
- }
- },
- "@vue/cli-overlay": {
- "version": "4.5.15",
- "resolved": "https://registry.npmjs.org/@vue/cli-overlay/-/cli-overlay-4.5.15.tgz",
- "integrity": "sha512-0zI0kANAVmjFO2LWGUIzdGPMeE3+9k+KeRDXsUqB30YfRF7abjfiiRPq5BU9pOzlJbVdpRkisschBrvdJqDuDg==",
- "dev": true
- },
- "@vue/cli-plugin-babel": {
- "version": "4.5.15",
- "resolved": "https://registry.npmjs.org/@vue/cli-plugin-babel/-/cli-plugin-babel-4.5.15.tgz",
- "integrity": "sha512-hBLrwYfFkHldEe34op/YNgPhpOWI5n5DB2Qt9I/1Epeif4M4iFaayrgjvOR9AVM6WbD3Yx7WCFszYpWrQZpBzQ==",
- "dev": true,
- "requires": {
- "@babel/core": "^7.11.0",
- "@vue/babel-preset-app": "^4.5.15",
- "@vue/cli-shared-utils": "^4.5.15",
- "babel-loader": "^8.1.0",
- "cache-loader": "^4.1.0",
- "thread-loader": "^2.1.3",
- "webpack": "^4.0.0"
- }
- },
- "@vue/cli-plugin-eslint": {
- "version": "4.5.15",
- "resolved": "https://registry.npmjs.org/@vue/cli-plugin-eslint/-/cli-plugin-eslint-4.5.15.tgz",
- "integrity": "sha512-/2Fl6wY/5bz3HD035oSnFRMsKNxDxU396KqBdpCQdwdvqk4mm6JAbXqihpcBRTNPeTO6w+LwGe6FE56PVbJdbg==",
- "dev": true,
- "requires": {
- "@vue/cli-shared-utils": "^4.5.15",
- "eslint-loader": "^2.2.1",
- "globby": "^9.2.0",
- "inquirer": "^7.1.0",
- "webpack": "^4.0.0",
- "yorkie": "^2.0.0"
- }
- },
- "@vue/cli-plugin-pwa": {
- "version": "4.5.15",
- "resolved": "https://registry.npmjs.org/@vue/cli-plugin-pwa/-/cli-plugin-pwa-4.5.15.tgz",
- "integrity": "sha512-yQzsspaIkjeQyN6btF8ATgbJFU023q1HC8uUpmiBa4QE9EyBlR8fSrKFhcJ0EmT6KnU7PMwlnOJ/OqjguFnufA==",
- "dev": true,
- "requires": {
- "@vue/cli-shared-utils": "^4.5.15",
- "webpack": "^4.0.0",
- "workbox-webpack-plugin": "^4.3.1"
- }
- },
- "@vue/cli-plugin-router": {
- "version": "4.5.15",
- "resolved": "https://registry.npmjs.org/@vue/cli-plugin-router/-/cli-plugin-router-4.5.15.tgz",
- "integrity": "sha512-q7Y6kP9b3k55Ca2j59xJ7XPA6x+iSRB+N4ac0ZbcL1TbInVQ4j5wCzyE+uqid40hLy4fUdlpl4X9fHJEwuVxPA==",
- "dev": true,
- "requires": {
- "@vue/cli-shared-utils": "^4.5.15"
- }
- },
- "@vue/cli-plugin-vuex": {
- "version": "4.5.15",
- "resolved": "https://registry.npmjs.org/@vue/cli-plugin-vuex/-/cli-plugin-vuex-4.5.15.tgz",
- "integrity": "sha512-fqap+4HN+w+InDxlA3hZTOGE0tzBTgXhKLoDydhywqgmhQ1D9JA6Feh94ze6tG8DsWX58/ujYUqA8jAz17FJtg==",
- "dev": true
- },
- "@vue/cli-service": {
- "version": "4.5.15",
- "resolved": "https://registry.npmjs.org/@vue/cli-service/-/cli-service-4.5.15.tgz",
- "integrity": "sha512-sFWnLYVCn4zRfu45IcsIE9eXM0YpDV3S11vlM2/DVbIPAGoYo5ySpSof6aHcIvkeGsIsrHFpPHzNvDZ/efs7jA==",
- "dev": true,
- "requires": {
- "@intervolga/optimize-cssnano-plugin": "^1.0.5",
- "@soda/friendly-errors-webpack-plugin": "^1.7.1",
- "@soda/get-current-script": "^1.0.0",
- "@types/minimist": "^1.2.0",
- "@types/webpack": "^4.0.0",
- "@types/webpack-dev-server": "^3.11.0",
- "@vue/cli-overlay": "^4.5.15",
- "@vue/cli-plugin-router": "^4.5.15",
- "@vue/cli-plugin-vuex": "^4.5.15",
- "@vue/cli-shared-utils": "^4.5.15",
- "@vue/component-compiler-utils": "^3.1.2",
- "@vue/preload-webpack-plugin": "^1.1.0",
- "@vue/web-component-wrapper": "^1.2.0",
- "acorn": "^7.4.0",
- "acorn-walk": "^7.1.1",
- "address": "^1.1.2",
- "autoprefixer": "^9.8.6",
- "browserslist": "^4.12.0",
- "cache-loader": "^4.1.0",
- "case-sensitive-paths-webpack-plugin": "^2.3.0",
- "cli-highlight": "^2.1.4",
- "clipboardy": "^2.3.0",
- "cliui": "^6.0.0",
- "copy-webpack-plugin": "^5.1.1",
- "css-loader": "^3.5.3",
- "cssnano": "^4.1.10",
- "debug": "^4.1.1",
- "default-gateway": "^5.0.5",
- "dotenv": "^8.2.0",
- "dotenv-expand": "^5.1.0",
- "file-loader": "^4.2.0",
- "fs-extra": "^7.0.1",
- "globby": "^9.2.0",
- "hash-sum": "^2.0.0",
- "html-webpack-plugin": "^3.2.0",
- "launch-editor-middleware": "^2.2.1",
- "lodash.defaultsdeep": "^4.6.1",
- "lodash.mapvalues": "^4.6.0",
- "lodash.transform": "^4.6.0",
- "mini-css-extract-plugin": "^0.9.0",
- "minimist": "^1.2.5",
- "pnp-webpack-plugin": "^1.6.4",
- "portfinder": "^1.0.26",
- "postcss-loader": "^3.0.0",
- "ssri": "^8.0.1",
- "terser-webpack-plugin": "^1.4.4",
- "thread-loader": "^2.1.3",
- "url-loader": "^2.2.0",
- "vue-loader": "^15.9.2",
- "vue-loader-v16": "npm:vue-loader@^16.1.0",
- "vue-style-loader": "^4.1.2",
- "webpack": "^4.0.0",
- "webpack-bundle-analyzer": "^3.8.0",
- "webpack-chain": "^6.4.0",
- "webpack-dev-server": "^3.11.0",
- "webpack-merge": "^4.2.2"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "optional": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "optional": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "optional": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "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,
- "optional": true
- },
- "loader-utils": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.4.tgz",
- "integrity": "sha512-xXqpXoINfFhgua9xiqD8fPFHgkoq1mmmpE92WlDbm9rNRd/EbRb+Gqf908T2DMfuHjjJlksiK2RbHVOdD/MqSw==",
- "dev": true,
- "optional": true,
- "requires": {
- "big.js": "^5.2.2",
- "emojis-list": "^3.0.0",
- "json5": "^2.1.2"
- }
- },
- "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,
- "optional": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- },
- "vue-loader-v16": {
- "version": "npm:vue-loader@16.8.3",
- "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-16.8.3.tgz",
- "integrity": "sha512-7vKN45IxsKxe5GcVCbc2qFU5aWzyiLrYJyUuMz4BQLKctCj/fmCa0w6fGiiQ2cLFetNcek1ppGJQDCup0c1hpA==",
- "dev": true,
- "optional": true,
- "requires": {
- "chalk": "^4.1.0",
- "hash-sum": "^2.0.0",
- "loader-utils": "^2.0.0"
- }
- }
- }
- },
- "@vue/cli-shared-utils": {
- "version": "4.5.15",
- "resolved": "https://registry.npmjs.org/@vue/cli-shared-utils/-/cli-shared-utils-4.5.15.tgz",
- "integrity": "sha512-SKaej9hHzzjKSOw1NlFmc6BSE0vcqUQMQiv1cxQ2DhVyy4QxZXBmzmiLBUBe+hYZZs1neXW7n//udeN9bCAY+Q==",
- "dev": true,
- "requires": {
- "@hapi/joi": "^15.0.1",
- "chalk": "^2.4.2",
- "execa": "^1.0.0",
- "launch-editor": "^2.2.1",
- "lru-cache": "^5.1.1",
- "node-ipc": "^9.1.1",
- "open": "^6.3.0",
- "ora": "^3.4.0",
- "read-pkg": "^5.1.1",
- "request": "^2.88.2",
- "semver": "^6.1.0",
- "strip-ansi": "^6.0.0"
- }
- },
- "@vue/component-compiler-utils": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/@vue/component-compiler-utils/-/component-compiler-utils-3.3.0.tgz",
- "integrity": "sha512-97sfH2mYNU+2PzGrmK2haqffDpVASuib9/w2/noxiFi31Z54hW+q3izKQXXQZSNhtiUpAI36uSuYepeBe4wpHQ==",
- "dev": true,
- "requires": {
- "consolidate": "^0.15.1",
- "hash-sum": "^1.0.2",
- "lru-cache": "^4.1.2",
- "merge-source-map": "^1.1.0",
- "postcss": "^7.0.36",
- "postcss-selector-parser": "^6.0.2",
- "prettier": "^1.18.2 || ^2.0.0",
- "source-map": "~0.6.1",
- "vue-template-es2015-compiler": "^1.9.0"
- },
- "dependencies": {
- "hash-sum": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-1.0.2.tgz",
- "integrity": "sha1-M7QHd3VMZDJXPBIMw4CLvRDUfwQ=",
- "dev": true
- },
- "lru-cache": {
- "version": "4.1.5",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz",
- "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==",
- "dev": true,
- "requires": {
- "pseudomap": "^1.0.2",
- "yallist": "^2.1.2"
- }
- },
- "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
- },
- "yallist": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
- "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=",
- "dev": true
- }
- }
- },
- "@vue/eslint-config-prettier": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/@vue/eslint-config-prettier/-/eslint-config-prettier-6.0.0.tgz",
- "integrity": "sha512-wFQmv45c3ige5EA+ngijq40YpVcIkAy0Lihupnsnd1Dao5CBbPyfCzqtejFLZX1EwH/kCJdpz3t6s+5wd3+KxQ==",
- "dev": true,
- "requires": {
- "eslint-config-prettier": "^6.0.0"
- }
- },
- "@vue/preload-webpack-plugin": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/@vue/preload-webpack-plugin/-/preload-webpack-plugin-1.1.2.tgz",
- "integrity": "sha512-LIZMuJk38pk9U9Ur4YzHjlIyMuxPlACdBIHH9/nGYVTsaGKOSnSuELiE8vS9wa+dJpIYspYUOqk+L1Q4pgHQHQ==",
- "dev": true
- },
- "@vue/test-utils": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/@vue/test-utils/-/test-utils-1.3.0.tgz",
- "integrity": "sha512-Xk2Xiyj2k5dFb8eYUKkcN9PzqZSppTlx7LaQWBbdA8tqh3jHr/KHX2/YLhNFc/xwDrgeLybqd+4ZCPJSGPIqeA==",
- "dev": true,
- "requires": {
- "dom-event-types": "^1.0.0",
- "lodash": "^4.17.15",
- "pretty": "^2.0.0"
- }
- },
- "@vue/web-component-wrapper": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/@vue/web-component-wrapper/-/web-component-wrapper-1.3.0.tgz",
- "integrity": "sha512-Iu8Tbg3f+emIIMmI2ycSI8QcEuAUgPTgHwesDU1eKMLE4YC/c/sFbGc70QgMq31ijRftV0R7vCm9co6rldCeOA==",
- "dev": true
- },
- "@webassemblyjs/ast": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.9.0.tgz",
- "integrity": "sha512-C6wW5L+b7ogSDVqymbkkvuW9kruN//YisMED04xzeBBqjHa2FYnmvOlS6Xj68xWQRgWvI9cIglsjFowH/RJyEA==",
- "dev": true,
- "requires": {
- "@webassemblyjs/helper-module-context": "1.9.0",
- "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
- "@webassemblyjs/wast-parser": "1.9.0"
- }
- },
- "@webassemblyjs/floating-point-hex-parser": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz",
- "integrity": "sha512-TG5qcFsS8QB4g4MhrxK5TqfdNe7Ey/7YL/xN+36rRjl/BlGE/NcBvJcqsRgCP6Z92mRE+7N50pRIi8SmKUbcQA==",
- "dev": true
- },
- "@webassemblyjs/helper-api-error": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz",
- "integrity": "sha512-NcMLjoFMXpsASZFxJ5h2HZRcEhDkvnNFOAKneP5RbKRzaWJN36NC4jqQHKwStIhGXu5mUWlUUk7ygdtrO8lbmw==",
- "dev": true
- },
- "@webassemblyjs/helper-buffer": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.9.0.tgz",
- "integrity": "sha512-qZol43oqhq6yBPx7YM3m9Bv7WMV9Eevj6kMi6InKOuZxhw+q9hOkvq5e/PpKSiLfyetpaBnogSbNCfBwyB00CA==",
- "dev": true
- },
- "@webassemblyjs/helper-code-frame": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-code-frame/-/helper-code-frame-1.9.0.tgz",
- "integrity": "sha512-ERCYdJBkD9Vu4vtjUYe8LZruWuNIToYq/ME22igL+2vj2dQ2OOujIZr3MEFvfEaqKoVqpsFKAGsRdBSBjrIvZA==",
- "dev": true,
- "requires": {
- "@webassemblyjs/wast-printer": "1.9.0"
- }
- },
- "@webassemblyjs/helper-fsm": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz",
- "integrity": "sha512-OPRowhGbshCb5PxJ8LocpdX9Kl0uB4XsAjl6jH/dWKlk/mzsANvhwbiULsaiqT5GZGT9qinTICdj6PLuM5gslw==",
- "dev": true
- },
- "@webassemblyjs/helper-module-context": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-module-context/-/helper-module-context-1.9.0.tgz",
- "integrity": "sha512-MJCW8iGC08tMk2enck1aPW+BE5Cw8/7ph/VGZxwyvGbJwjktKkDK7vy7gAmMDx88D7mhDTCNKAW5tED+gZ0W8g==",
- "dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.9.0"
- }
- },
- "@webassemblyjs/helper-wasm-bytecode": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz",
- "integrity": "sha512-R7FStIzyNcd7xKxCZH5lE0Bqy+hGTwS3LJjuv1ZVxd9O7eHCedSdrId/hMOd20I+v8wDXEn+bjfKDLzTepoaUw==",
- "dev": true
- },
- "@webassemblyjs/helper-wasm-section": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.9.0.tgz",
- "integrity": "sha512-XnMB8l3ek4tvrKUUku+IVaXNHz2YsJyOOmz+MMkZvh8h1uSJpSen6vYnw3IoQ7WwEuAhL8Efjms1ZWjqh2agvw==",
- "dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.9.0",
- "@webassemblyjs/helper-buffer": "1.9.0",
- "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
- "@webassemblyjs/wasm-gen": "1.9.0"
- }
- },
- "@webassemblyjs/ieee754": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.9.0.tgz",
- "integrity": "sha512-dcX8JuYU/gvymzIHc9DgxTzUUTLexWwt8uCTWP3otys596io0L5aW02Gb1RjYpx2+0Jus1h4ZFqjla7umFniTg==",
- "dev": true,
- "requires": {
- "@xtuc/ieee754": "^1.2.0"
- }
- },
- "@webassemblyjs/leb128": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.9.0.tgz",
- "integrity": "sha512-ENVzM5VwV1ojs9jam6vPys97B/S65YQtv/aanqnU7D8aSoHFX8GyhGg0CMfyKNIHBuAVjy3tlzd5QMMINa7wpw==",
- "dev": true,
- "requires": {
- "@xtuc/long": "4.2.2"
- }
- },
- "@webassemblyjs/utf8": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.9.0.tgz",
- "integrity": "sha512-GZbQlWtopBTP0u7cHrEx+73yZKrQoBMpwkGEIqlacljhXCkVM1kMQge/Mf+csMJAjEdSwhOyLAS0AoR3AG5P8w==",
- "dev": true
- },
- "@webassemblyjs/wasm-edit": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.9.0.tgz",
- "integrity": "sha512-FgHzBm80uwz5M8WKnMTn6j/sVbqilPdQXTWraSjBwFXSYGirpkSWE2R9Qvz9tNiTKQvoKILpCuTjBKzOIm0nxw==",
- "dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.9.0",
- "@webassemblyjs/helper-buffer": "1.9.0",
- "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
- "@webassemblyjs/helper-wasm-section": "1.9.0",
- "@webassemblyjs/wasm-gen": "1.9.0",
- "@webassemblyjs/wasm-opt": "1.9.0",
- "@webassemblyjs/wasm-parser": "1.9.0",
- "@webassemblyjs/wast-printer": "1.9.0"
- }
- },
- "@webassemblyjs/wasm-gen": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.9.0.tgz",
- "integrity": "sha512-cPE3o44YzOOHvlsb4+E9qSqjc9Qf9Na1OO/BHFy4OI91XDE14MjFN4lTMezzaIWdPqHnsTodGGNP+iRSYfGkjA==",
- "dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.9.0",
- "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
- "@webassemblyjs/ieee754": "1.9.0",
- "@webassemblyjs/leb128": "1.9.0",
- "@webassemblyjs/utf8": "1.9.0"
- }
- },
- "@webassemblyjs/wasm-opt": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.9.0.tgz",
- "integrity": "sha512-Qkjgm6Anhm+OMbIL0iokO7meajkzQD71ioelnfPEj6r4eOFuqm4YC3VBPqXjFyyNwowzbMD+hizmprP/Fwkl2A==",
- "dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.9.0",
- "@webassemblyjs/helper-buffer": "1.9.0",
- "@webassemblyjs/wasm-gen": "1.9.0",
- "@webassemblyjs/wasm-parser": "1.9.0"
- }
- },
- "@webassemblyjs/wasm-parser": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.9.0.tgz",
- "integrity": "sha512-9+wkMowR2AmdSWQzsPEjFU7njh8HTO5MqO8vjwEHuM+AMHioNqSBONRdr0NQQ3dVQrzp0s8lTcYqzUdb7YgELA==",
- "dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.9.0",
- "@webassemblyjs/helper-api-error": "1.9.0",
- "@webassemblyjs/helper-wasm-bytecode": "1.9.0",
- "@webassemblyjs/ieee754": "1.9.0",
- "@webassemblyjs/leb128": "1.9.0",
- "@webassemblyjs/utf8": "1.9.0"
- }
- },
- "@webassemblyjs/wast-parser": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-parser/-/wast-parser-1.9.0.tgz",
- "integrity": "sha512-qsqSAP3QQ3LyZjNC/0jBJ/ToSxfYJ8kYyuiGvtn/8MK89VrNEfwj7BPQzJVHi0jGTRK2dGdJ5PRqhtjzoww+bw==",
- "dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.9.0",
- "@webassemblyjs/floating-point-hex-parser": "1.9.0",
- "@webassemblyjs/helper-api-error": "1.9.0",
- "@webassemblyjs/helper-code-frame": "1.9.0",
- "@webassemblyjs/helper-fsm": "1.9.0",
- "@xtuc/long": "4.2.2"
- }
- },
- "@webassemblyjs/wast-printer": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.9.0.tgz",
- "integrity": "sha512-2J0nE95rHXHyQ24cWjMKJ1tqB/ds8z/cyeOZxJhcb+rW+SQASVjuznUSmdz5GpVJTzU8JkhYut0D3siFDD6wsA==",
- "dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.9.0",
- "@webassemblyjs/wast-parser": "1.9.0",
- "@xtuc/long": "4.2.2"
- }
- },
- "@xtuc/ieee754": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz",
- "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==",
- "dev": true
- },
- "@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
- },
- "abbrev": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
- "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==",
- "dev": true
- },
- "accepts": {
- "version": "1.3.7",
- "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz",
- "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==",
- "dev": true,
- "requires": {
- "mime-types": "~2.1.24",
- "negotiator": "0.6.2"
- }
- },
- "acorn": {
- "version": "7.4.1",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz",
- "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==",
- "dev": true
- },
- "acorn-jsx": {
- "version": "5.3.2",
- "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
- "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
- "dev": true
- },
- "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
- },
- "address": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/address/-/address-1.1.2.tgz",
- "integrity": "sha512-aT6camzM4xEA54YVJYSqxz1kv4IHnQZRtThJJHhUMRExaU5spC7jX5ugSwTaTgJliIgs4VhZOk7htClvQ/LmRA==",
- "dev": true
- },
- "ajv": {
- "version": "6.12.6",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
- "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
- "dev": true,
- "requires": {
- "fast-deep-equal": "^3.1.1",
- "fast-json-stable-stringify": "^2.0.0",
- "json-schema-traverse": "^0.4.1",
- "uri-js": "^4.2.2"
- }
- },
- "ajv-errors": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz",
- "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==",
- "dev": true
- },
- "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
- },
- "alphanum-sort": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/alphanum-sort/-/alphanum-sort-1.0.2.tgz",
- "integrity": "sha1-l6ERlkmyEa0zaR2fn0hqjsn74KM=",
- "dev": true
- },
- "ansi-colors": {
- "version": "3.2.4",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz",
- "integrity": "sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==",
- "dev": true
- },
- "ansi-escapes": {
- "version": "4.3.2",
- "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz",
- "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==",
- "dev": true,
- "requires": {
- "type-fest": "^0.21.3"
- }
- },
- "ansi-html-community": {
- "version": "0.0.8",
- "resolved": "https://registry.npmjs.org/ansi-html-community/-/ansi-html-community-0.0.8.tgz",
- "integrity": "sha512-1APHAyr3+PCamwNw3bXCPp4HFLONZt/yIH0sZp0/469KWNTEy+qN5jQ3GVX6DMZ1UXAi34yVwtTeaG/HpBuuzw==",
- "dev": true
- },
- "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
- },
- "ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
- "dev": true,
- "requires": {
- "color-convert": "^1.9.0"
- }
- },
- "any-promise": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz",
- "integrity": "sha1-q8av7tzqUugJzcA3au0845Y10X8=",
- "dev": true
- },
- "anymatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz",
- "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==",
- "dev": true,
- "requires": {
- "normalize-path": "^3.0.0",
- "picomatch": "^2.0.4"
- }
- },
- "aproba": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz",
- "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==",
- "dev": true
- },
- "arch": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/arch/-/arch-2.2.0.tgz",
- "integrity": "sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==",
- "dev": true
- },
- "argparse": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
- "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
- "dev": true,
- "requires": {
- "sprintf-js": "~1.0.2"
- }
- },
- "arr-diff": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/arr-diff/-/arr-diff-4.0.0.tgz",
- "integrity": "sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA=",
- "dev": true
- },
- "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==",
- "dev": true
- },
- "arr-union": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/arr-union/-/arr-union-3.1.0.tgz",
- "integrity": "sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ=",
- "dev": true
- },
- "array-flatten": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
- "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=",
- "dev": true
- },
- "array-union": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz",
- "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=",
- "dev": true,
- "requires": {
- "array-uniq": "^1.0.1"
- }
- },
- "array-uniq": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz",
- "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=",
- "dev": true
- },
- "array-unique": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/array-unique/-/array-unique-0.3.2.tgz",
- "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=",
- "dev": true
- },
- "asn1": {
- "version": "0.2.6",
- "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz",
- "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==",
- "dev": true,
- "requires": {
- "safer-buffer": "~2.1.0"
- }
- },
- "asn1.js": {
- "version": "5.4.1",
- "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz",
- "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==",
- "dev": true,
- "requires": {
- "bn.js": "^4.0.0",
- "inherits": "^2.0.1",
- "minimalistic-assert": "^1.0.0",
- "safer-buffer": "^2.1.0"
- },
- "dependencies": {
- "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
- }
- }
- },
- "assert": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz",
- "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==",
- "dev": true,
- "requires": {
- "object-assign": "^4.1.1",
- "util": "0.10.3"
- },
- "dependencies": {
- "inherits": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.1.tgz",
- "integrity": "sha1-sX0I0ya0Qj5Wjv9xn5GwscvfafE=",
- "dev": true
- },
- "util": {
- "version": "0.10.3",
- "resolved": "https://registry.npmjs.org/util/-/util-0.10.3.tgz",
- "integrity": "sha1-evsa/lCAUkZInj23/g7TeTNqwPk=",
- "dev": true,
- "requires": {
- "inherits": "2.0.1"
- }
- }
- }
- },
- "assert-plus": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
- "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=",
- "dev": true
- },
- "assign-symbols": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz",
- "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=",
- "dev": true
- },
- "astral-regex": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz",
- "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==",
- "dev": true
- },
- "async": {
- "version": "2.6.3",
- "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz",
- "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==",
- "dev": true,
- "requires": {
- "lodash": "^4.17.14"
- }
- },
- "async-each": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/async-each/-/async-each-1.0.3.tgz",
- "integrity": "sha512-z/WhQ5FPySLdvREByI2vZiTWwCnF0moMJ1hK9YQwDTHKh6I7/uSckMetoRGb5UBZPC1z0jlw+n/XCgjeH7y1AQ==",
- "dev": true
- },
- "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==",
- "dev": true
- },
- "asynckit": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
- "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=",
- "dev": true
- },
- "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
- },
- "autoprefixer": {
- "version": "9.8.8",
- "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-9.8.8.tgz",
- "integrity": "sha512-eM9d/swFopRt5gdJ7jrpCwgvEMIayITpojhkkSMRsFHYuH5bkSQ4p/9qTEHtmNudUZh22Tehu7I6CxAW0IXTKA==",
- "dev": true,
- "requires": {
- "browserslist": "^4.12.0",
- "caniuse-lite": "^1.0.30001109",
- "normalize-range": "^0.1.2",
- "num2fraction": "^1.2.2",
- "picocolors": "^0.2.1",
- "postcss": "^7.0.32",
- "postcss-value-parser": "^4.1.0"
- }
- },
- "aws-sign2": {
- "version": "0.7.0",
- "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz",
- "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=",
- "dev": true
- },
- "aws4": {
- "version": "1.11.0",
- "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.11.0.tgz",
- "integrity": "sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA==",
- "dev": true
- },
- "babel-code-frame": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz",
- "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=",
- "dev": true,
- "requires": {
- "chalk": "^1.1.3",
- "esutils": "^2.0.2",
- "js-tokens": "^3.0.2"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
- "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
- "dev": true
- },
- "ansi-styles": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
- "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=",
- "dev": true
- },
- "chalk": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
- "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
- "dev": true,
- "requires": {
- "ansi-styles": "^2.2.1",
- "escape-string-regexp": "^1.0.2",
- "has-ansi": "^2.0.0",
- "strip-ansi": "^3.0.0",
- "supports-color": "^2.0.0"
- }
- },
- "js-tokens": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz",
- "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=",
- "dev": true
- },
- "strip-ansi": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
- "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
- "dev": true,
- "requires": {
- "ansi-regex": "^2.0.0"
- }
- },
- "supports-color": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
- "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=",
- "dev": true
- }
- }
- },
- "babel-core": {
- "version": "6.26.3",
- "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz",
- "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==",
- "dev": true,
- "requires": {
- "babel-code-frame": "^6.26.0",
- "babel-generator": "^6.26.0",
- "babel-helpers": "^6.24.1",
- "babel-messages": "^6.23.0",
- "babel-register": "^6.26.0",
- "babel-runtime": "^6.26.0",
- "babel-template": "^6.26.0",
- "babel-traverse": "^6.26.0",
- "babel-types": "^6.26.0",
- "babylon": "^6.18.0",
- "convert-source-map": "^1.5.1",
- "debug": "^2.6.9",
- "json5": "^0.5.1",
- "lodash": "^4.17.4",
- "minimatch": "^3.0.4",
- "path-is-absolute": "^1.0.1",
- "private": "^0.1.8",
- "slash": "^1.0.0",
- "source-map": "^0.5.7"
- },
- "dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "json5": {
- "version": "0.5.1",
- "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
- "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=",
- "dev": true
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- }
- }
- },
- "babel-eslint": {
- "version": "10.1.0",
- "resolved": "https://registry.npmjs.org/babel-eslint/-/babel-eslint-10.1.0.tgz",
- "integrity": "sha512-ifWaTHQ0ce+448CYop8AdrQiBsGrnC+bMgfyKFdi6EsPLTAWG+QfyDeM6OH+FmWnKvEq5NnBMLvlBUPKQZoDSg==",
- "dev": true,
- "requires": {
- "@babel/code-frame": "^7.0.0",
- "@babel/parser": "^7.7.0",
- "@babel/traverse": "^7.7.0",
- "@babel/types": "^7.7.0",
- "eslint-visitor-keys": "^1.0.0",
- "resolve": "^1.12.0"
- }
- },
- "babel-extract-comments": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/babel-extract-comments/-/babel-extract-comments-1.0.0.tgz",
- "integrity": "sha512-qWWzi4TlddohA91bFwgt6zO/J0X+io7Qp184Fw0m2JYRSTZnJbFR8+07KmzudHCZgOiKRCrjhylwv9Xd8gfhVQ==",
- "dev": true,
- "requires": {
- "babylon": "^6.18.0"
- }
- },
- "babel-generator": {
- "version": "6.26.1",
- "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz",
- "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==",
- "dev": true,
- "requires": {
- "babel-messages": "^6.23.0",
- "babel-runtime": "^6.26.0",
- "babel-types": "^6.26.0",
- "detect-indent": "^4.0.0",
- "jsesc": "^1.3.0",
- "lodash": "^4.17.4",
- "source-map": "^0.5.7",
- "trim-right": "^1.0.1"
- },
- "dependencies": {
- "jsesc": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz",
- "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=",
- "dev": true
- }
- }
- },
- "babel-helpers": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz",
- "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=",
- "dev": true,
- "requires": {
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1"
- }
- },
- "babel-loader": {
- "version": "8.2.3",
- "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.3.tgz",
- "integrity": "sha512-n4Zeta8NC3QAsuyiizu0GkmRcQ6clkV9WFUnUf1iXP//IeSKbWjofW3UHyZVwlOB4y039YQKefawyTn64Zwbuw==",
- "dev": true,
- "requires": {
- "find-cache-dir": "^3.3.1",
- "loader-utils": "^1.4.0",
- "make-dir": "^3.1.0",
- "schema-utils": "^2.6.5"
- }
- },
- "babel-messages": {
- "version": "6.23.0",
- "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz",
- "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=",
- "dev": true,
- "requires": {
- "babel-runtime": "^6.22.0"
- }
- },
- "babel-plugin-dynamic-import-node": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz",
- "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==",
- "dev": true,
- "requires": {
- "object.assign": "^4.1.0"
- }
- },
- "babel-plugin-polyfill-corejs2": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.3.0.tgz",
- "integrity": "sha512-wMDoBJ6uG4u4PNFh72Ty6t3EgfA91puCuAwKIazbQlci+ENb/UU9A3xG5lutjUIiXCIn1CY5L15r9LimiJyrSA==",
- "dev": true,
- "requires": {
- "@babel/compat-data": "^7.13.11",
- "@babel/helper-define-polyfill-provider": "^0.3.0",
- "semver": "^6.1.1"
- }
- },
- "babel-plugin-polyfill-corejs3": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.5.0.tgz",
- "integrity": "sha512-Hcrgnmkf+4JTj73GbK3bBhlVPiLL47owUAnoJIf69Hakl3q+KfodbDXiZWGMM7iqCZTxCG3Z2VRfPNYES4rXqQ==",
- "dev": true,
- "requires": {
- "@babel/helper-define-polyfill-provider": "^0.3.0",
- "core-js-compat": "^3.20.0"
- }
- },
- "babel-plugin-polyfill-regenerator": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.3.0.tgz",
- "integrity": "sha512-dhAPTDLGoMW5/84wkgwiLRwMnio2i1fUe53EuvtKMv0pn2p3S8OCoV1xAzfJPl0KOX7IB89s2ib85vbYiea3jg==",
- "dev": true,
- "requires": {
- "@babel/helper-define-polyfill-provider": "^0.3.0"
- }
- },
- "babel-plugin-syntax-object-rest-spread": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz",
- "integrity": "sha1-/WU28rzhODb/o6VFjEkDpZe7O/U=",
- "dev": true
- },
- "babel-plugin-transform-object-rest-spread": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz",
- "integrity": "sha1-DzZpLVD+9rfi1LOsFHgTepY7ewY=",
- "dev": true,
- "requires": {
- "babel-plugin-syntax-object-rest-spread": "^6.8.0",
- "babel-runtime": "^6.26.0"
- }
- },
- "babel-register": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz",
- "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=",
- "dev": true,
- "requires": {
- "babel-core": "^6.26.0",
- "babel-runtime": "^6.26.0",
- "core-js": "^2.5.0",
- "home-or-tmp": "^2.0.0",
- "lodash": "^4.17.4",
- "mkdirp": "^0.5.1",
- "source-map-support": "^0.4.15"
- },
- "dependencies": {
- "core-js": {
- "version": "2.6.12",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz",
- "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==",
- "dev": true
- }
- }
- },
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=",
- "dev": true,
- "requires": {
- "core-js": "^2.4.0",
- "regenerator-runtime": "^0.11.0"
- },
- "dependencies": {
- "core-js": {
- "version": "2.6.12",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz",
- "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==",
- "dev": true
- },
- "regenerator-runtime": {
- "version": "0.11.1",
- "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz",
- "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==",
- "dev": true
- }
- }
- },
- "babel-template": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz",
- "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=",
- "dev": true,
- "requires": {
- "babel-runtime": "^6.26.0",
- "babel-traverse": "^6.26.0",
- "babel-types": "^6.26.0",
- "babylon": "^6.18.0",
- "lodash": "^4.17.4"
- }
- },
- "babel-traverse": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz",
- "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=",
- "dev": true,
- "requires": {
- "babel-code-frame": "^6.26.0",
- "babel-messages": "^6.23.0",
- "babel-runtime": "^6.26.0",
- "babel-types": "^6.26.0",
- "babylon": "^6.18.0",
- "debug": "^2.6.8",
- "globals": "^9.18.0",
- "invariant": "^2.2.2",
- "lodash": "^4.17.4"
- },
- "dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "globals": {
- "version": "9.18.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz",
- "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==",
- "dev": true
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- }
- }
- },
- "babel-types": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz",
- "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=",
- "dev": true,
- "requires": {
- "babel-runtime": "^6.26.0",
- "esutils": "^2.0.2",
- "lodash": "^4.17.4",
- "to-fast-properties": "^1.0.3"
- },
- "dependencies": {
- "to-fast-properties": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz",
- "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=",
- "dev": true
- }
- }
- },
- "babylon": {
- "version": "6.18.0",
- "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz",
- "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==",
- "dev": true
- },
- "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
- },
- "base": {
- "version": "0.11.2",
- "resolved": "https://registry.npmjs.org/base/-/base-0.11.2.tgz",
- "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==",
- "dev": true,
- "requires": {
- "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"
- },
- "dependencies": {
- "define-property": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
- "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
- "dev": true,
- "requires": {
- "is-descriptor": "^1.0.0"
- }
- }
- }
- },
- "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
- },
- "batch": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz",
- "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=",
- "dev": true
- },
- "bcrypt-pbkdf": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz",
- "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=",
- "dev": true,
- "requires": {
- "tweetnacl": "^0.14.3"
- }
- },
- "bfj": {
- "version": "6.1.2",
- "resolved": "https://registry.npmjs.org/bfj/-/bfj-6.1.2.tgz",
- "integrity": "sha512-BmBJa4Lip6BPRINSZ0BPEIfB1wUY/9rwbwvIHQA1KjX9om29B6id0wnWXq7m3bn5JrUVjeOTnVuhPT1FiHwPGw==",
- "dev": true,
- "requires": {
- "bluebird": "^3.5.5",
- "check-types": "^8.0.3",
- "hoopy": "^0.1.4",
- "tryer": "^1.0.1"
- }
- },
- "big.js": {
- "version": "5.2.2",
- "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz",
- "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ=="
- },
- "binary-extensions": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz",
- "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
- "dev": true
- },
- "bindings": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz",
- "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==",
- "dev": true,
- "optional": true,
- "requires": {
- "file-uri-to-path": "1.0.0"
- }
- },
- "bluebird": {
- "version": "3.7.2",
- "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz",
- "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==",
- "dev": true
- },
- "bn.js": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.2.0.tgz",
- "integrity": "sha512-D7iWRBvnZE8ecXiLj/9wbxH7Tk79fAh8IHaTNq1RWRixsS02W+5qS+iE9yq6RYl0asXx5tw0bLhmT5pIfbSquw==",
- "dev": true
- },
- "body-parser": {
- "version": "1.19.1",
- "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.1.tgz",
- "integrity": "sha512-8ljfQi5eBk8EJfECMrgqNGWPEY5jWP+1IzkzkGdFFEwFQZZyaZ21UqdaHktgiMlH0xLHqIFtE/u2OYE5dOtViA==",
- "dev": true,
- "requires": {
- "bytes": "3.1.1",
- "content-type": "~1.0.4",
- "debug": "2.6.9",
- "depd": "~1.1.2",
- "http-errors": "1.8.1",
- "iconv-lite": "0.4.24",
- "on-finished": "~2.3.0",
- "qs": "6.9.6",
- "raw-body": "2.4.2",
- "type-is": "~1.6.18"
- },
- "dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- },
- "qs": {
- "version": "6.9.6",
- "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.6.tgz",
- "integrity": "sha512-TIRk4aqYLNoJUbd+g2lEdz5kLWIuTMRagAXxl78Q0RiVjAOugHmeKNGdd3cwo/ktpf9aL9epCfFqWDEKysUlLQ==",
- "dev": true
- }
- }
- },
- "bonjour": {
- "version": "3.5.0",
- "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz",
- "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=",
- "dev": true,
- "requires": {
- "array-flatten": "^2.1.0",
- "deep-equal": "^1.0.1",
- "dns-equal": "^1.0.0",
- "dns-txt": "^2.0.2",
- "multicast-dns": "^6.0.1",
- "multicast-dns-service-types": "^1.1.0"
- },
- "dependencies": {
- "array-flatten": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz",
- "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==",
- "dev": true
- }
- }
- },
- "boolbase": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz",
- "integrity": "sha1-aN/1++YMUes3cl6p4+0xDcwed24=",
- "dev": true
- },
- "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,
- "requires": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
- "braces": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz",
- "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==",
- "dev": true,
- "requires": {
- "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"
- },
- "dependencies": {
- "extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
- "dev": true,
- "requires": {
- "is-extendable": "^0.1.0"
- }
- },
- "is-extendable": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
- "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=",
- "dev": true
- }
- }
- },
- "brorand": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz",
- "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=",
- "dev": true
- },
- "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,
- "requires": {
- "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"
- }
- },
- "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,
- "requires": {
- "browserify-aes": "^1.0.4",
- "browserify-des": "^1.0.0",
- "evp_bytestokey": "^1.0.0"
- }
- },
- "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,
- "requires": {
- "cipher-base": "^1.0.1",
- "des.js": "^1.0.0",
- "inherits": "^2.0.1",
- "safe-buffer": "^5.1.2"
- }
- },
- "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,
- "requires": {
- "bn.js": "^5.0.0",
- "randombytes": "^2.0.1"
- }
- },
- "browserify-sign": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/browserify-sign/-/browserify-sign-4.2.1.tgz",
- "integrity": "sha512-/vrA5fguVAKKAVTNJjgSm1tRQDHUU6DbwO9IROu/0WAzC8PKhucDSh18J0RMvVeHAn5puMd+QHC2erPRNf8lmg==",
- "dev": true,
- "requires": {
- "bn.js": "^5.1.1",
- "browserify-rsa": "^4.0.1",
- "create-hash": "^1.2.0",
- "create-hmac": "^1.1.7",
- "elliptic": "^6.5.3",
- "inherits": "^2.0.4",
- "parse-asn1": "^5.1.5",
- "readable-stream": "^3.6.0",
- "safe-buffer": "^5.2.0"
- },
- "dependencies": {
- "readable-stream": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
- "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
- "dev": true,
- "requires": {
- "inherits": "^2.0.3",
- "string_decoder": "^1.1.1",
- "util-deprecate": "^1.0.1"
- }
- },
- "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==",
- "dev": true
- }
- }
- },
- "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,
- "requires": {
- "pako": "~1.0.5"
- }
- },
- "browserslist": {
- "version": "4.20.3",
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.20.3.tgz",
- "integrity": "sha512-NBhymBQl1zM0Y5dQT/O+xiLP9/rzOIQdKM/eMJBAq7yBgaB6krIYLGejrwVYnSHZdqjscB1SPuAjHwxjvN6Wdg==",
- "dev": true,
- "requires": {
- "caniuse-lite": "^1.0.30001332",
- "electron-to-chromium": "^1.4.118",
- "escalade": "^3.1.1",
- "node-releases": "^2.0.3",
- "picocolors": "^1.0.0"
- },
- "dependencies": {
- "picocolors": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
- "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
- "dev": true
- }
- }
- },
- "buffer": {
- "version": "4.9.2",
- "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.2.tgz",
- "integrity": "sha512-xq+q3SRMOxGivLhBNaUdC64hDTQwejJ+H0T/NB1XMtTVEwNTrfFF3gAxiyW0Bu/xWEGhjVKgUcMhCrUy2+uCWg==",
- "dev": true,
- "requires": {
- "base64-js": "^1.0.2",
- "ieee754": "^1.1.4",
- "isarray": "^1.0.0"
- }
- },
- "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
- },
- "buffer-indexof": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/buffer-indexof/-/buffer-indexof-1.1.1.tgz",
- "integrity": "sha512-4/rOEg86jivtPTeOUUT61jJO1Ya1TrR/OkqCSZDyq84WJh3LuuiphBYJN+fm5xufIk4XAFcEwte/8WzC8If/1g==",
- "dev": true
- },
- "buffer-json": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/buffer-json/-/buffer-json-2.0.0.tgz",
- "integrity": "sha512-+jjPFVqyfF1esi9fvfUs3NqM0pH1ziZ36VP4hmA/y/Ssfo/5w5xHKfTw9BwQjoJ1w/oVtpLomqwUHKdefGyuHw==",
- "dev": true
- },
- "buffer-xor": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/buffer-xor/-/buffer-xor-1.0.3.tgz",
- "integrity": "sha1-JuYe0UIvtw3ULm42cp7VHYVf6Nk=",
- "dev": true
- },
- "builtin-status-codes": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/builtin-status-codes/-/builtin-status-codes-3.0.0.tgz",
- "integrity": "sha1-hZgoeOIbmOHGZCXgPQF0eI9Wnug=",
- "dev": true
- },
- "bytes": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.1.tgz",
- "integrity": "sha512-dWe4nWO/ruEOY7HkUJ5gFt1DCFV9zPRoJr8pV0/ASQermOZjtq8jMjOprC0Kd10GLN+l7xaUPvxzJFWtxGu8Fg==",
- "dev": true
- },
- "cacache": {
- "version": "12.0.4",
- "resolved": "https://registry.npmjs.org/cacache/-/cacache-12.0.4.tgz",
- "integrity": "sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ==",
- "dev": true,
- "requires": {
- "bluebird": "^3.5.5",
- "chownr": "^1.1.1",
- "figgy-pudding": "^3.5.1",
- "glob": "^7.1.4",
- "graceful-fs": "^4.1.15",
- "infer-owner": "^1.0.3",
- "lru-cache": "^5.1.1",
- "mississippi": "^3.0.0",
- "mkdirp": "^0.5.1",
- "move-concurrently": "^1.0.1",
- "promise-inflight": "^1.0.1",
- "rimraf": "^2.6.3",
- "ssri": "^6.0.1",
- "unique-filename": "^1.1.1",
- "y18n": "^4.0.0"
- },
- "dependencies": {
- "ssri": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.2.tgz",
- "integrity": "sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q==",
- "dev": true,
- "requires": {
- "figgy-pudding": "^3.5.1"
- }
- }
- }
- },
- "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,
- "requires": {
- "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"
- }
- },
- "cache-loader": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/cache-loader/-/cache-loader-4.1.0.tgz",
- "integrity": "sha512-ftOayxve0PwKzBF/GLsZNC9fJBXl8lkZE3TOsjkboHfVHVkL39iUEs1FO07A33mizmci5Dudt38UZrrYXDtbhw==",
- "dev": true,
- "requires": {
- "buffer-json": "^2.0.0",
- "find-cache-dir": "^3.0.0",
- "loader-utils": "^1.2.3",
- "mkdirp": "^0.5.1",
- "neo-async": "^2.6.1",
- "schema-utils": "^2.0.0"
- }
- },
- "call-bind": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
- "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
- "dev": true,
- "requires": {
- "function-bind": "^1.1.1",
- "get-intrinsic": "^1.0.2"
- }
- },
- "call-me-maybe": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/call-me-maybe/-/call-me-maybe-1.0.1.tgz",
- "integrity": "sha1-JtII6onje1y95gJQoV8DHBak1ms=",
- "dev": true
- },
- "caller-callsite": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/caller-callsite/-/caller-callsite-2.0.0.tgz",
- "integrity": "sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ=",
- "dev": true,
- "requires": {
- "callsites": "^2.0.0"
- }
- },
- "caller-path": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-2.0.0.tgz",
- "integrity": "sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ=",
- "dev": true,
- "requires": {
- "caller-callsite": "^2.0.0"
- }
- },
- "callsite": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/callsite/-/callsite-1.0.0.tgz",
- "integrity": "sha1-KAOY5dZkvXQDi28JBRU+borxvCA=",
- "dev": true
- },
- "callsites": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/callsites/-/callsites-2.0.0.tgz",
- "integrity": "sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA=",
- "dev": true
- },
- "camel-case": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/camel-case/-/camel-case-3.0.0.tgz",
- "integrity": "sha1-yjw2iKTpzzpM2nd9xNy8cTJJz3M=",
- "dev": true,
- "requires": {
- "no-case": "^2.2.0",
- "upper-case": "^1.1.1"
- }
- },
- "camelcase": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
- "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
- "dev": true
- },
- "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,
- "requires": {
- "browserslist": "^4.0.0",
- "caniuse-lite": "^1.0.0",
- "lodash.memoize": "^4.1.2",
- "lodash.uniq": "^4.5.0"
- }
- },
- "caniuse-lite": {
- "version": "1.0.30001339",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001339.tgz",
- "integrity": "sha512-Es8PiVqCe+uXdms0Gu5xP5PF2bxLR7OBp3wUzUnuO7OHzhOfCyg3hdiGWVPVxhiuniOzng+hTc1u3fEQ0TlkSQ==",
- "dev": true
- },
- "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
- },
- "caseless": {
- "version": "0.12.0",
- "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz",
- "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=",
- "dev": true
- },
- "chalk": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
- "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
- "dev": true,
- "requires": {
- "ansi-styles": "^3.2.1",
- "escape-string-regexp": "^1.0.5",
- "supports-color": "^5.3.0"
- }
- },
- "chardet": {
- "version": "0.7.0",
- "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz",
- "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==",
- "dev": true
- },
- "chart.js": {
- "version": "2.9.4",
- "resolved": "https://registry.npmjs.org/chart.js/-/chart.js-2.9.4.tgz",
- "integrity": "sha512-B07aAzxcrikjAPyV+01j7BmOpxtQETxTSlQ26BEYJ+3iUkbNKaOJ/nDbT6JjyqYxseM0ON12COHYdU2cTIjC7A==",
- "requires": {
- "chartjs-color": "^2.1.0",
- "moment": "^2.10.2"
- }
- },
- "chartjs-adapter-luxon": {
- "version": "0.2.2",
- "resolved": "https://registry.npmjs.org/chartjs-adapter-luxon/-/chartjs-adapter-luxon-0.2.2.tgz",
- "integrity": "sha512-LIZnrTj4FewFWnuyqbkdU8JjsZc0KrstFOIcNwDDpnMlVofCOkV9w4WMaa8A9fgpTsFMmqKAroFYa8NN5uCKWQ=="
- },
- "chartjs-color": {
- "version": "2.4.1",
- "resolved": "https://registry.npmjs.org/chartjs-color/-/chartjs-color-2.4.1.tgz",
- "integrity": "sha512-haqOg1+Yebys/Ts/9bLo/BqUcONQOdr/hoEr2LLTRl6C5LXctUdHxsCYfvQVg5JIxITrfCNUDr4ntqmQk9+/0w==",
- "requires": {
- "chartjs-color-string": "^0.6.0",
- "color-convert": "^1.9.3"
- }
- },
- "chartjs-color-string": {
- "version": "0.6.0",
- "resolved": "https://registry.npmjs.org/chartjs-color-string/-/chartjs-color-string-0.6.0.tgz",
- "integrity": "sha512-TIB5OKn1hPJvO7JcteW4WY/63v6KwEdt6udfnDE9iCAZgy+V4SrbSxoIbTw/xkUIapjEI4ExGtD0+6D3KyFd7A==",
- "requires": {
- "color-name": "^1.0.0"
- }
- },
- "check-types": {
- "version": "8.0.3",
- "resolved": "https://registry.npmjs.org/check-types/-/check-types-8.0.3.tgz",
- "integrity": "sha512-YpeKZngUmG65rLudJ4taU7VLkOCTMhNl/u4ctNC56LQS/zJTyNH0Lrtwm1tfTsbLlwvlfsA2d1c8vCf/Kh2KwQ==",
- "dev": true
- },
- "chokidar": {
- "version": "3.5.2",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.2.tgz",
- "integrity": "sha512-ekGhOnNVPgT77r4K/U3GDhu+FQ2S8TnK/s2KbIGXi0SZWuwkZ2QNyfWdZW+TVfn84DpEP7rLeCt2UI6bJ8GwbQ==",
- "dev": true,
- "requires": {
- "anymatch": "~3.1.2",
- "braces": "~3.0.2",
- "fsevents": "~2.3.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"
- },
- "dependencies": {
- "braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
- "dev": true,
- "requires": {
- "fill-range": "^7.0.1"
- }
- },
- "fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
- "dev": true,
- "requires": {
- "to-regex-range": "^5.0.1"
- }
- },
- "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,
- "requires": {
- "is-glob": "^4.0.1"
- }
- },
- "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
- },
- "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,
- "requires": {
- "is-number": "^7.0.0"
- }
- }
- }
- },
- "chownr": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz",
- "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==",
- "dev": true
- },
- "chrome-trace-event": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz",
- "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==",
- "dev": true
- },
- "ci-info": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-1.6.0.tgz",
- "integrity": "sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A==",
- "dev": true
- },
- "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,
- "requires": {
- "inherits": "^2.0.1",
- "safe-buffer": "^5.0.1"
- }
- },
- "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,
- "requires": {
- "arr-union": "^3.1.0",
- "define-property": "^0.2.5",
- "isobject": "^3.0.0",
- "static-extend": "^0.1.1"
- },
- "dependencies": {
- "define-property": {
- "version": "0.2.5",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
- "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
- "dev": true,
- "requires": {
- "is-descriptor": "^0.1.0"
- }
- },
- "is-accessor-descriptor": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
- "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
- "dev": true,
- "requires": {
- "kind-of": "^3.0.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "^1.1.5"
- }
- }
- }
- },
- "is-data-descriptor": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
- "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
- "dev": true,
- "requires": {
- "kind-of": "^3.0.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "^1.1.5"
- }
- }
- }
- },
- "is-descriptor": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
- "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
- "dev": true,
- "requires": {
- "is-accessor-descriptor": "^0.1.6",
- "is-data-descriptor": "^0.1.4",
- "kind-of": "^5.0.0"
- }
- },
- "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
- }
- }
- },
- "clean-css": {
- "version": "4.2.4",
- "resolved": "https://registry.npmjs.org/clean-css/-/clean-css-4.2.4.tgz",
- "integrity": "sha512-EJUDT7nDVFDvaQgAo2G/PJvxmp1o/c6iXLbswsBbUFXi1Nr+AjA2cKmfbKDMjMvzEe75g3P6JkaDDAKk96A85A==",
- "dev": true,
- "requires": {
- "source-map": "~0.6.0"
- },
- "dependencies": {
- "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
- }
- }
- },
- "cli-cursor": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
- "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
- "dev": true,
- "requires": {
- "restore-cursor": "^3.1.0"
- }
- },
- "cli-highlight": {
- "version": "2.1.11",
- "resolved": "https://registry.npmjs.org/cli-highlight/-/cli-highlight-2.1.11.tgz",
- "integrity": "sha512-9KDcoEVwyUXrjcJNvHD0NFc/hiwe/WPVYIleQh2O1N2Zro5gWJZ/K+3DGn8w8P/F6FxOgzyC5bxDyHIgCSPhGg==",
- "dev": true,
- "requires": {
- "chalk": "^4.0.0",
- "highlight.js": "^10.7.1",
- "mz": "^2.4.0",
- "parse5": "^5.1.1",
- "parse5-htmlparser2-tree-adapter": "^6.0.0",
- "yargs": "^16.0.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "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
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "cli-spinners": {
- "version": "2.6.1",
- "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz",
- "integrity": "sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==",
- "dev": true
- },
- "cli-width": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz",
- "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==",
- "dev": true
- },
- "clipboardy": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/clipboardy/-/clipboardy-2.3.0.tgz",
- "integrity": "sha512-mKhiIL2DrQIsuXMgBgnfEHOZOryC7kY7YO//TN6c63wlEm3NG5tz+YgY5rVi29KCmq/QQjKYvM7a19+MDOTHOQ==",
- "dev": true,
- "requires": {
- "arch": "^2.1.1",
- "execa": "^1.0.0",
- "is-wsl": "^2.1.1"
- }
- },
- "cliui": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz",
- "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
- "dev": true,
- "requires": {
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.0",
- "wrap-ansi": "^6.2.0"
- }
- },
- "clone": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz",
- "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=",
- "dev": true
- },
- "clone-deep": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz",
- "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==",
- "dev": true,
- "requires": {
- "is-plain-object": "^2.0.4",
- "kind-of": "^6.0.2",
- "shallow-clone": "^3.0.0"
- }
- },
- "coa": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/coa/-/coa-2.0.2.tgz",
- "integrity": "sha512-q5/jG+YQnSy4nRTV4F7lPepBJZ8qBNJJDBuJdoejDyLXgmL7IEo+Le2JDZudFTFt7mrCqIRaSjws4ygRCTCAXA==",
- "dev": true,
- "requires": {
- "@types/q": "^1.5.1",
- "chalk": "^2.4.1",
- "q": "^1.1.2"
- }
- },
- "collection-visit": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz",
- "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=",
- "dev": true,
- "requires": {
- "map-visit": "^1.0.0",
- "object-visit": "^1.0.0"
- }
- },
- "color": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/color/-/color-3.2.1.tgz",
- "integrity": "sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA==",
- "dev": true,
- "requires": {
- "color-convert": "^1.9.3",
- "color-string": "^1.6.0"
- }
- },
- "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==",
- "requires": {
- "color-name": "1.1.3"
- },
- "dependencies": {
- "color-name": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
- "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU="
- }
- }
- },
- "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=="
- },
- "color-string": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/color-string/-/color-string-1.9.0.tgz",
- "integrity": "sha512-9Mrz2AQLefkH1UvASKj6v6hj/7eWgjnT/cVsR8CumieLoT+g900exWeNogqtweI8dxloXN9BDQTYro1oWu/5CQ==",
- "dev": true,
- "requires": {
- "color-name": "^1.0.0",
- "simple-swizzle": "^0.2.2"
- }
- },
- "combined-stream": {
- "version": "1.0.8",
- "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz",
- "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==",
- "dev": true,
- "requires": {
- "delayed-stream": "~1.0.0"
- }
- },
- "commander": {
- "version": "2.17.1",
- "resolved": "https://registry.npmjs.org/commander/-/commander-2.17.1.tgz",
- "integrity": "sha512-wPMUt6FnH2yzG95SA6mzjQOEKUU3aLaDEmzs1ti+1E9h+CsrZghRlqEM/EJ4KscsQVG8uNN4uVreUeT8+drlgg==",
- "dev": true
- },
- "common-tags": {
- "version": "1.8.2",
- "resolved": "https://registry.npmjs.org/common-tags/-/common-tags-1.8.2.tgz",
- "integrity": "sha512-gk/Z852D2Wtb//0I+kRFNKKE9dIIVirjoqPoA1wJU+XePVXZfGeBpk45+A1rKO4Q43prqWBNY/MiIeRLbPWUaA==",
- "dev": true
- },
- "commondir": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz",
- "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=",
- "dev": true
- },
- "component-emitter": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz",
- "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==",
- "dev": true
- },
- "compressible": {
- "version": "2.0.18",
- "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz",
- "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==",
- "dev": true,
- "requires": {
- "mime-db": ">= 1.43.0 < 2"
- }
- },
- "compression": {
- "version": "1.7.4",
- "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz",
- "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==",
- "dev": true,
- "requires": {
- "accepts": "~1.3.5",
- "bytes": "3.0.0",
- "compressible": "~2.0.16",
- "debug": "2.6.9",
- "on-headers": "~1.0.2",
- "safe-buffer": "5.1.2",
- "vary": "~1.1.2"
- },
- "dependencies": {
- "bytes": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz",
- "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=",
- "dev": true
- },
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- }
- }
- },
- "concat-map": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
- "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
- "dev": true
- },
- "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,
- "requires": {
- "buffer-from": "^1.0.0",
- "inherits": "^2.0.3",
- "readable-stream": "^2.2.2",
- "typedarray": "^0.0.6"
- }
- },
- "condense-newlines": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/condense-newlines/-/condense-newlines-0.2.1.tgz",
- "integrity": "sha1-PemFVTE5R10yUCyDsC9gaE0kxV8=",
- "dev": true,
- "requires": {
- "extend-shallow": "^2.0.1",
- "is-whitespace": "^0.3.0",
- "kind-of": "^3.0.2"
- },
- "dependencies": {
- "extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
- "dev": true,
- "requires": {
- "is-extendable": "^0.1.0"
- }
- },
- "is-extendable": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
- "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=",
- "dev": true
- },
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "^1.1.5"
- }
- }
- }
- },
- "config-chain": {
- "version": "1.1.13",
- "resolved": "https://registry.npmjs.org/config-chain/-/config-chain-1.1.13.tgz",
- "integrity": "sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ==",
- "dev": true,
- "requires": {
- "ini": "^1.3.4",
- "proto-list": "~1.2.1"
- }
- },
- "connect-history-api-fallback": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz",
- "integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==",
- "dev": true
- },
- "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
- },
- "consolidate": {
- "version": "0.15.1",
- "resolved": "https://registry.npmjs.org/consolidate/-/consolidate-0.15.1.tgz",
- "integrity": "sha512-DW46nrsMJgy9kqAbPt5rKaCr7uFtpo4mSUvLHIUbJEjm0vo+aY5QLwBUq3FK4tRnJr/X0Psc0C4jf/h+HtXSMw==",
- "dev": true,
- "requires": {
- "bluebird": "^3.1.1"
- }
- },
- "constants-browserify": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/constants-browserify/-/constants-browserify-1.0.0.tgz",
- "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=",
- "dev": true
- },
- "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,
- "requires": {
- "safe-buffer": "5.2.1"
- },
- "dependencies": {
- "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==",
- "dev": true
- }
- }
- },
- "content-type": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz",
- "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==",
- "dev": true
- },
- "convert-source-map": {
- "version": "1.8.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.8.0.tgz",
- "integrity": "sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA==",
- "dev": true,
- "requires": {
- "safe-buffer": "~5.1.1"
- }
- },
- "cookie": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz",
- "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==",
- "dev": true
- },
- "cookie-signature": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
- "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=",
- "dev": true
- },
- "copy-concurrently": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/copy-concurrently/-/copy-concurrently-1.0.5.tgz",
- "integrity": "sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A==",
- "dev": true,
- "requires": {
- "aproba": "^1.1.1",
- "fs-write-stream-atomic": "^1.0.8",
- "iferr": "^0.1.5",
- "mkdirp": "^0.5.1",
- "rimraf": "^2.5.4",
- "run-queue": "^1.0.0"
- }
- },
- "copy-descriptor": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz",
- "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=",
- "dev": true
- },
- "copy-webpack-plugin": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/copy-webpack-plugin/-/copy-webpack-plugin-5.1.2.tgz",
- "integrity": "sha512-Uh7crJAco3AjBvgAy9Z75CjK8IG+gxaErro71THQ+vv/bl4HaQcpkexAY8KVW/T6D2W2IRr+couF/knIRkZMIQ==",
- "dev": true,
- "requires": {
- "cacache": "^12.0.3",
- "find-cache-dir": "^2.1.0",
- "glob-parent": "^3.1.0",
- "globby": "^7.1.1",
- "is-glob": "^4.0.1",
- "loader-utils": "^1.2.3",
- "minimatch": "^3.0.4",
- "normalize-path": "^3.0.0",
- "p-limit": "^2.2.1",
- "schema-utils": "^1.0.0",
- "serialize-javascript": "^4.0.0",
- "webpack-log": "^2.0.0"
- },
- "dependencies": {
- "find-cache-dir": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz",
- "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==",
- "dev": true,
- "requires": {
- "commondir": "^1.0.1",
- "make-dir": "^2.0.0",
- "pkg-dir": "^3.0.0"
- }
- },
- "find-up": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
- "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
- "dev": true,
- "requires": {
- "locate-path": "^3.0.0"
- }
- },
- "globby": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/globby/-/globby-7.1.1.tgz",
- "integrity": "sha1-+yzP+UAfhgCUXfral0QMypcrhoA=",
- "dev": true,
- "requires": {
- "array-union": "^1.0.1",
- "dir-glob": "^2.0.0",
- "glob": "^7.1.2",
- "ignore": "^3.3.5",
- "pify": "^3.0.0",
- "slash": "^1.0.0"
- },
- "dependencies": {
- "pify": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
- "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=",
- "dev": true
- }
- }
- },
- "ignore": {
- "version": "3.3.10",
- "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz",
- "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==",
- "dev": true
- },
- "locate-path": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
- "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
- "dev": true,
- "requires": {
- "p-locate": "^3.0.0",
- "path-exists": "^3.0.0"
- }
- },
- "make-dir": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz",
- "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==",
- "dev": true,
- "requires": {
- "pify": "^4.0.1",
- "semver": "^5.6.0"
- }
- },
- "p-locate": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
- "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
- "dev": true,
- "requires": {
- "p-limit": "^2.0.0"
- }
- },
- "path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
- "dev": true
- },
- "pkg-dir": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz",
- "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==",
- "dev": true,
- "requires": {
- "find-up": "^3.0.0"
- }
- },
- "schema-utils": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
- "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
- "dev": true,
- "requires": {
- "ajv": "^6.1.0",
- "ajv-errors": "^1.0.0",
- "ajv-keywords": "^3.1.0"
- }
- },
- "semver": {
- "version": "5.7.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
- "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
- "dev": true
- }
- }
- },
- "core-js": {
- "version": "3.23.1",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.23.1.tgz",
- "integrity": "sha512-wfMYHWi1WQjpgZNC9kAlN4ut04TM9fUTdi7CqIoTVM7yaiOUQTklOzfb+oWH3r9edQcT3F887swuVmxrV+CC8w=="
- },
- "core-js-compat": {
- "version": "3.20.2",
- "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.20.2.tgz",
- "integrity": "sha512-qZEzVQ+5Qh6cROaTPFLNS4lkvQ6mBzE3R6A6EEpssj7Zr2egMHgsy4XapdifqJDGC9CBiNv7s+ejI96rLNQFdg==",
- "dev": true,
- "requires": {
- "browserslist": "^4.19.1",
- "semver": "7.0.0"
- },
- "dependencies": {
- "semver": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz",
- "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==",
- "dev": true
- }
- }
- },
- "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==",
- "dev": true
- },
- "cosmiconfig": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-5.2.1.tgz",
- "integrity": "sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA==",
- "dev": true,
- "requires": {
- "import-fresh": "^2.0.0",
- "is-directory": "^0.3.1",
- "js-yaml": "^3.13.1",
- "parse-json": "^4.0.0"
- }
- },
- "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,
- "requires": {
- "bn.js": "^4.1.0",
- "elliptic": "^6.5.3"
- },
- "dependencies": {
- "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
- }
- }
- },
- "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,
- "requires": {
- "cipher-base": "^1.0.1",
- "inherits": "^2.0.1",
- "md5.js": "^1.3.4",
- "ripemd160": "^2.0.1",
- "sha.js": "^2.4.0"
- }
- },
- "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,
- "requires": {
- "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"
- }
- },
- "cross-spawn": {
- "version": "6.0.5",
- "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz",
- "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==",
- "dev": true,
- "requires": {
- "nice-try": "^1.0.4",
- "path-key": "^2.0.1",
- "semver": "^5.5.0",
- "shebang-command": "^1.2.0",
- "which": "^1.2.9"
- },
- "dependencies": {
- "semver": {
- "version": "5.7.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
- "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
- "dev": true
- }
- }
- },
- "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,
- "requires": {
- "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"
- }
- },
- "css-color-names": {
- "version": "0.0.4",
- "resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-0.0.4.tgz",
- "integrity": "sha1-gIrcLnnPhHOAabZGyyDsJ762KeA=",
- "dev": true
- },
- "css-declaration-sorter": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/css-declaration-sorter/-/css-declaration-sorter-4.0.1.tgz",
- "integrity": "sha512-BcxQSKTSEEQUftYpBVnsH4SF05NTuBokb19/sBt6asXGKZ/6VP7PLG1CBCkFDYOnhXhPh0jMhO6xZ71oYHXHBA==",
- "dev": true,
- "requires": {
- "postcss": "^7.0.1",
- "timsort": "^0.3.0"
- }
- },
- "css-loader": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-3.6.0.tgz",
- "integrity": "sha512-M5lSukoWi1If8dhQAUCvj4H8vUt3vOnwbQBH9DdTm/s4Ym2B/3dPMtYZeJmq7Q3S3Pa+I94DcZ7pc9bP14cWIQ==",
- "dev": true,
- "requires": {
- "camelcase": "^5.3.1",
- "cssesc": "^3.0.0",
- "icss-utils": "^4.1.1",
- "loader-utils": "^1.2.3",
- "normalize-path": "^3.0.0",
- "postcss": "^7.0.32",
- "postcss-modules-extract-imports": "^2.0.0",
- "postcss-modules-local-by-default": "^3.0.2",
- "postcss-modules-scope": "^2.2.0",
- "postcss-modules-values": "^3.0.0",
- "postcss-value-parser": "^4.1.0",
- "schema-utils": "^2.7.0",
- "semver": "^6.3.0"
- },
- "dependencies": {
- "camelcase": {
- "version": "5.3.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
- "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
- "dev": true
- }
- }
- },
- "css-select": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.2.1.tgz",
- "integrity": "sha512-/aUslKhzkTNCQUB2qTX84lVmfia9NyjP3WpDGtj/WxhwBzWBYUV3DgUpurHTme8UTPcPlAD1DJ+b0nN/t50zDQ==",
- "dev": true,
- "requires": {
- "boolbase": "^1.0.0",
- "css-what": "^5.1.0",
- "domhandler": "^4.3.0",
- "domutils": "^2.8.0",
- "nth-check": "^2.0.1"
- }
- },
- "css-select-base-adapter": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/css-select-base-adapter/-/css-select-base-adapter-0.1.1.tgz",
- "integrity": "sha512-jQVeeRG70QI08vSTwf1jHxp74JoZsr2XSgETae8/xC8ovSnL2WF87GTLO86Sbwdt2lK4Umg4HnnwMO4YF3Ce7w==",
- "dev": true
- },
- "css-tree": {
- "version": "1.0.0-alpha.37",
- "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.0.0-alpha.37.tgz",
- "integrity": "sha512-DMxWJg0rnz7UgxKT0Q1HU/L9BeJI0M6ksor0OgqOnF+aRCDWg/N2641HmVyU9KVIu0OVVWOb2IpC9A+BJRnejg==",
- "dev": true,
- "requires": {
- "mdn-data": "2.0.4",
- "source-map": "^0.6.1"
- },
- "dependencies": {
- "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
- }
- }
- },
- "css-what": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/css-what/-/css-what-5.1.0.tgz",
- "integrity": "sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw==",
- "dev": true
- },
- "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
- },
- "cssnano": {
- "version": "4.1.11",
- "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-4.1.11.tgz",
- "integrity": "sha512-6gZm2htn7xIPJOHY824ERgj8cNPgPxyCSnkXc4v7YvNW+TdVfzgngHcEhy/8D11kUWRUMbke+tC+AUcUsnMz2g==",
- "dev": true,
- "requires": {
- "cosmiconfig": "^5.0.0",
- "cssnano-preset-default": "^4.0.8",
- "is-resolvable": "^1.0.0",
- "postcss": "^7.0.0"
- }
- },
- "cssnano-preset-default": {
- "version": "4.0.8",
- "resolved": "https://registry.npmjs.org/cssnano-preset-default/-/cssnano-preset-default-4.0.8.tgz",
- "integrity": "sha512-LdAyHuq+VRyeVREFmuxUZR1TXjQm8QQU/ktoo/x7bz+SdOge1YKc5eMN6pRW7YWBmyq59CqYba1dJ5cUukEjLQ==",
- "dev": true,
- "requires": {
- "css-declaration-sorter": "^4.0.1",
- "cssnano-util-raw-cache": "^4.0.1",
- "postcss": "^7.0.0",
- "postcss-calc": "^7.0.1",
- "postcss-colormin": "^4.0.3",
- "postcss-convert-values": "^4.0.1",
- "postcss-discard-comments": "^4.0.2",
- "postcss-discard-duplicates": "^4.0.2",
- "postcss-discard-empty": "^4.0.1",
- "postcss-discard-overridden": "^4.0.1",
- "postcss-merge-longhand": "^4.0.11",
- "postcss-merge-rules": "^4.0.3",
- "postcss-minify-font-values": "^4.0.2",
- "postcss-minify-gradients": "^4.0.2",
- "postcss-minify-params": "^4.0.2",
- "postcss-minify-selectors": "^4.0.2",
- "postcss-normalize-charset": "^4.0.1",
- "postcss-normalize-display-values": "^4.0.2",
- "postcss-normalize-positions": "^4.0.2",
- "postcss-normalize-repeat-style": "^4.0.2",
- "postcss-normalize-string": "^4.0.2",
- "postcss-normalize-timing-functions": "^4.0.2",
- "postcss-normalize-unicode": "^4.0.1",
- "postcss-normalize-url": "^4.0.1",
- "postcss-normalize-whitespace": "^4.0.2",
- "postcss-ordered-values": "^4.1.2",
- "postcss-reduce-initial": "^4.0.3",
- "postcss-reduce-transforms": "^4.0.2",
- "postcss-svgo": "^4.0.3",
- "postcss-unique-selectors": "^4.0.1"
- }
- },
- "cssnano-util-get-arguments": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/cssnano-util-get-arguments/-/cssnano-util-get-arguments-4.0.0.tgz",
- "integrity": "sha1-7ToIKZ8h11dBsg87gfGU7UnMFQ8=",
- "dev": true
- },
- "cssnano-util-get-match": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/cssnano-util-get-match/-/cssnano-util-get-match-4.0.0.tgz",
- "integrity": "sha1-wOTKB/U4a7F+xeUiULT1lhNlFW0=",
- "dev": true
- },
- "cssnano-util-raw-cache": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/cssnano-util-raw-cache/-/cssnano-util-raw-cache-4.0.1.tgz",
- "integrity": "sha512-qLuYtWK2b2Dy55I8ZX3ky1Z16WYsx544Q0UWViebptpwn/xDBmog2TLg4f+DBMg1rJ6JDWtn96WHbOKDWt1WQA==",
- "dev": true,
- "requires": {
- "postcss": "^7.0.0"
- }
- },
- "cssnano-util-same-parent": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/cssnano-util-same-parent/-/cssnano-util-same-parent-4.0.1.tgz",
- "integrity": "sha512-WcKx5OY+KoSIAxBW6UBBRay1U6vkYheCdjyVNDm85zt5K9mHoGOfsOsqIszfAqrQQFIIKgjh2+FDgIj/zsl21Q==",
- "dev": true
- },
- "csso": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/csso/-/csso-4.2.0.tgz",
- "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==",
- "dev": true,
- "requires": {
- "css-tree": "^1.1.2"
- },
- "dependencies": {
- "css-tree": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/css-tree/-/css-tree-1.1.3.tgz",
- "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==",
- "dev": true,
- "requires": {
- "mdn-data": "2.0.14",
- "source-map": "^0.6.1"
- }
- },
- "mdn-data": {
- "version": "2.0.14",
- "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.14.tgz",
- "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==",
- "dev": true
- },
- "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
- }
- }
- },
- "cyclist": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-1.0.1.tgz",
- "integrity": "sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk=",
- "dev": true
- },
- "dashdash": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz",
- "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=",
- "dev": true,
- "requires": {
- "assert-plus": "^1.0.0"
- }
- },
- "de-indent": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz",
- "integrity": "sha1-sgOOhG3DO6pXlhKNCAS0VbjB4h0=",
- "dev": true
- },
- "debug": {
- "version": "4.3.3",
- "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz",
- "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==",
- "dev": true,
- "requires": {
- "ms": "2.1.2"
- }
- },
- "decache": {
- "version": "4.6.1",
- "resolved": "https://registry.npmjs.org/decache/-/decache-4.6.1.tgz",
- "integrity": "sha512-ohApBM8u9ygepJCjgBrEZSSxPjc0T/PJkD+uNyxXPkqudyUpdXpwJYp0VISm2WrPVzASU6DZyIi6BWdyw7uJ2Q==",
- "dev": true,
- "requires": {
- "callsite": "^1.0.0"
- }
- },
- "decamelize": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
- "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
- "dev": true
- },
- "decode-uri-component": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/decode-uri-component/-/decode-uri-component-0.2.0.tgz",
- "integrity": "sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU=",
- "dev": true
- },
- "deep-equal": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz",
- "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==",
- "dev": true,
- "requires": {
- "is-arguments": "^1.0.4",
- "is-date-object": "^1.0.1",
- "is-regex": "^1.0.4",
- "object-is": "^1.0.1",
- "object-keys": "^1.1.1",
- "regexp.prototype.flags": "^1.2.0"
- }
- },
- "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
- },
- "deepmerge": {
- "version": "4.2.2",
- "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.2.2.tgz",
- "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg=="
- },
- "default-gateway": {
- "version": "5.0.5",
- "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-5.0.5.tgz",
- "integrity": "sha512-z2RnruVmj8hVMmAnEJMTIJNijhKCDiGjbLP+BHJFOT7ld3Bo5qcIBpVYDniqhbMIIf+jZDlkP2MkPXiQy/DBLA==",
- "dev": true,
- "requires": {
- "execa": "^3.3.0"
- },
- "dependencies": {
- "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,
- "requires": {
- "path-key": "^3.1.0",
- "shebang-command": "^2.0.0",
- "which": "^2.0.1"
- }
- },
- "execa": {
- "version": "3.4.0",
- "resolved": "https://registry.npmjs.org/execa/-/execa-3.4.0.tgz",
- "integrity": "sha512-r9vdGQk4bmCuK1yKQu1KTwcT2zwfWdbdaXfCtAh+5nU/4fSX+JAb7vZGvI5naJrQlvONrEB20jeruESI69530g==",
- "dev": true,
- "requires": {
- "cross-spawn": "^7.0.0",
- "get-stream": "^5.0.0",
- "human-signals": "^1.1.1",
- "is-stream": "^2.0.0",
- "merge-stream": "^2.0.0",
- "npm-run-path": "^4.0.0",
- "onetime": "^5.1.0",
- "p-finally": "^2.0.0",
- "signal-exit": "^3.0.2",
- "strip-final-newline": "^2.0.0"
- }
- },
- "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,
- "requires": {
- "pump": "^3.0.0"
- }
- },
- "is-stream": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz",
- "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==",
- "dev": true
- },
- "npm-run-path": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz",
- "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==",
- "dev": true,
- "requires": {
- "path-key": "^3.0.0"
- }
- },
- "p-finally": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-2.0.1.tgz",
- "integrity": "sha512-vpm09aKwq6H9phqRQzecoDpD8TmVyGw70qmWlyq5onxY7tqyTTFVvxMykxQSQKILBSFlbXpypIw2T1Ml7+DDtw==",
- "dev": true
- },
- "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
- },
- "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,
- "requires": {
- "shebang-regex": "^3.0.0"
- }
- },
- "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
- },
- "which": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz",
- "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==",
- "dev": true,
- "requires": {
- "isexe": "^2.0.0"
- }
- }
- }
- },
- "defaults": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz",
- "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=",
- "dev": true,
- "requires": {
- "clone": "^1.0.2"
- }
- },
- "define-properties": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz",
- "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==",
- "dev": true,
- "requires": {
- "object-keys": "^1.0.12"
- }
- },
- "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,
- "requires": {
- "is-descriptor": "^1.0.2",
- "isobject": "^3.0.1"
- }
- },
- "del": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz",
- "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==",
- "dev": true,
- "requires": {
- "@types/glob": "^7.1.1",
- "globby": "^6.1.0",
- "is-path-cwd": "^2.0.0",
- "is-path-in-cwd": "^2.0.0",
- "p-map": "^2.0.0",
- "pify": "^4.0.1",
- "rimraf": "^2.6.3"
- },
- "dependencies": {
- "globby": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz",
- "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=",
- "dev": true,
- "requires": {
- "array-union": "^1.0.1",
- "glob": "^7.0.3",
- "object-assign": "^4.0.1",
- "pify": "^2.0.0",
- "pinkie-promise": "^2.0.0"
- },
- "dependencies": {
- "pify": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
- "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
- "dev": true
- }
- }
- }
- }
- },
- "delayed-stream": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz",
- "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=",
- "dev": true
- },
- "depd": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
- "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=",
- "dev": true
- },
- "des.js": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/des.js/-/des.js-1.0.1.tgz",
- "integrity": "sha512-Q0I4pfFrv2VPd34/vfLrFOoRmlYj3OV50i7fskps1jZWK1kApMWWT9G6RRUeYedLcBDIhnSDaUvJMb3AhUlaEA==",
- "dev": true,
- "requires": {
- "inherits": "^2.0.1",
- "minimalistic-assert": "^1.0.0"
- }
- },
- "destroy": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz",
- "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=",
- "dev": true
- },
- "detect-file": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/detect-file/-/detect-file-1.0.0.tgz",
- "integrity": "sha1-8NZtA2cqglyxtzvbP+YjEMjlUrc=",
- "dev": true
- },
- "detect-indent": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz",
- "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=",
- "dev": true,
- "requires": {
- "repeating": "^2.0.0"
- }
- },
- "detect-libc": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz",
- "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=",
- "dev": true
- },
- "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
- },
- "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,
- "requires": {
- "bn.js": "^4.1.0",
- "miller-rabin": "^4.0.0",
- "randombytes": "^2.0.0"
- },
- "dependencies": {
- "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
- }
- }
- },
- "dir-glob": {
- "version": "2.2.2",
- "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-2.2.2.tgz",
- "integrity": "sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw==",
- "dev": true,
- "requires": {
- "path-type": "^3.0.0"
- }
- },
- "dns-equal": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/dns-equal/-/dns-equal-1.0.0.tgz",
- "integrity": "sha1-s55/HabrCnW6nBcySzR1PEfgZU0=",
- "dev": true
- },
- "dns-packet": {
- "version": "1.3.4",
- "resolved": "https://registry.npmjs.org/dns-packet/-/dns-packet-1.3.4.tgz",
- "integrity": "sha512-BQ6F4vycLXBvdrJZ6S3gZewt6rcrks9KBgM9vrhW+knGRqc8uEdT7fuCwloc7nny5xNoMJ17HGH0R/6fpo8ECA==",
- "dev": true,
- "requires": {
- "ip": "^1.1.0",
- "safe-buffer": "^5.0.1"
- }
- },
- "dns-txt": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/dns-txt/-/dns-txt-2.0.2.tgz",
- "integrity": "sha1-uR2Ab10nGI5Ks+fRB9iBocxGQrY=",
- "dev": true,
- "requires": {
- "buffer-indexof": "^1.0.0"
- }
- },
- "doctrine": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
- "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==",
- "dev": true,
- "requires": {
- "esutils": "^2.0.2"
- }
- },
- "dom-converter": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/dom-converter/-/dom-converter-0.2.0.tgz",
- "integrity": "sha512-gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==",
- "dev": true,
- "requires": {
- "utila": "~0.4"
- }
- },
- "dom-event-types": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/dom-event-types/-/dom-event-types-1.0.0.tgz",
- "integrity": "sha512-2G2Vwi2zXTHBGqXHsJ4+ak/iP0N8Ar+G8a7LiD2oup5o4sQWytwqqrZu/O6hIMV0KMID2PL69OhpshLO0n7UJQ==",
- "dev": true
- },
- "dom-serializer": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-1.3.2.tgz",
- "integrity": "sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig==",
- "dev": true,
- "requires": {
- "domelementtype": "^2.0.1",
- "domhandler": "^4.2.0",
- "entities": "^2.0.0"
- }
- },
- "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
- },
- "domelementtype": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.2.0.tgz",
- "integrity": "sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A==",
- "dev": true
- },
- "domhandler": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-4.3.0.tgz",
- "integrity": "sha512-fC0aXNQXqKSFTr2wDNZDhsEYjCiYsDWl3D01kwt25hm1YIPyDGHvvi3rw+PLqHAl/m71MaiF7d5zvBr0p5UB2g==",
- "dev": true,
- "requires": {
- "domelementtype": "^2.2.0"
- }
- },
- "dompurify": {
- "version": "2.3.8",
- "resolved": "https://registry.npmjs.org/dompurify/-/dompurify-2.3.8.tgz",
- "integrity": "sha512-eVhaWoVibIzqdGYjwsBWodIQIaXFSB+cKDf4cfxLMsK0xiud6SE+/WCVx/Xw/UwQsa4cS3T2eITcdtmTg2UKcw=="
- },
- "domutils": {
- "version": "2.8.0",
- "resolved": "https://registry.npmjs.org/domutils/-/domutils-2.8.0.tgz",
- "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==",
- "dev": true,
- "requires": {
- "dom-serializer": "^1.0.1",
- "domelementtype": "^2.2.0",
- "domhandler": "^4.2.0"
- }
- },
- "dot-prop": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz",
- "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==",
- "dev": true,
- "requires": {
- "is-obj": "^2.0.0"
- },
- "dependencies": {
- "is-obj": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz",
- "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==",
- "dev": true
- }
- }
- },
- "dotenv": {
- "version": "8.6.0",
- "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz",
- "integrity": "sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==",
- "dev": true
- },
- "dotenv-expand": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/dotenv-expand/-/dotenv-expand-5.1.0.tgz",
- "integrity": "sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA==",
- "dev": true
- },
- "duplexer": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz",
- "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==",
- "dev": true
- },
- "duplexify": {
- "version": "3.7.1",
- "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz",
- "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==",
- "dev": true,
- "requires": {
- "end-of-stream": "^1.0.0",
- "inherits": "^2.0.1",
- "readable-stream": "^2.0.0",
- "stream-shift": "^1.0.0"
- }
- },
- "easy-stack": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/easy-stack/-/easy-stack-1.0.1.tgz",
- "integrity": "sha512-wK2sCs4feiiJeFXn3zvY0p41mdU5VUgbgs1rNsc/y5ngFUijdWd+iIN8eoyuZHKB8xN6BL4PdWmzqFmxNg6V2w==",
- "dev": true
- },
- "ecc-jsbn": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz",
- "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=",
- "dev": true,
- "requires": {
- "jsbn": "~0.1.0",
- "safer-buffer": "^2.1.0"
- }
- },
- "editorconfig": {
- "version": "0.15.3",
- "resolved": "https://registry.npmjs.org/editorconfig/-/editorconfig-0.15.3.tgz",
- "integrity": "sha512-M9wIMFx96vq0R4F+gRpY3o2exzb8hEj/n9S8unZtHSvYjibBp/iMufSzvmOcV/laG0ZtuTVGtiJggPOSW2r93g==",
- "dev": true,
- "requires": {
- "commander": "^2.19.0",
- "lru-cache": "^4.1.5",
- "semver": "^5.6.0",
- "sigmund": "^1.0.1"
- },
- "dependencies": {
- "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
- },
- "lru-cache": {
- "version": "4.1.5",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz",
- "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==",
- "dev": true,
- "requires": {
- "pseudomap": "^1.0.2",
- "yallist": "^2.1.2"
- }
- },
- "semver": {
- "version": "5.7.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
- "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
- "dev": true
- },
- "yallist": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
- "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=",
- "dev": true
- }
- }
- },
- "ee-first": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
- "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=",
- "dev": true
- },
- "ejs": {
- "version": "2.7.4",
- "resolved": "https://registry.npmjs.org/ejs/-/ejs-2.7.4.tgz",
- "integrity": "sha512-7vmuyh5+kuUyJKePhQfRQBhXV5Ce+RnaeeQArKu1EAMpL3WbgMt5WG6uQZpEVvYSSsxMXRKOewtDk9RaTKXRlA==",
- "dev": true
- },
- "electron-to-chromium": {
- "version": "1.4.137",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.137.tgz",
- "integrity": "sha512-0Rcpald12O11BUogJagX3HsCN3FE83DSqWjgXoHo5a72KUKMSfI39XBgJpgNNxS9fuGzytaFjE06kZkiVFy2qA==",
- "dev": true
- },
- "elliptic": {
- "version": "6.5.4",
- "resolved": "https://registry.npmjs.org/elliptic/-/elliptic-6.5.4.tgz",
- "integrity": "sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ==",
- "dev": true,
- "requires": {
- "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"
- },
- "dependencies": {
- "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
- }
- }
- },
- "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
- },
- "emojis-list": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz",
- "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q=="
- },
- "encodeurl": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
- "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=",
- "dev": true
- },
- "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==",
- "dev": true,
- "requires": {
- "once": "^1.4.0"
- }
- },
- "enhanced-resolve": {
- "version": "4.5.0",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz",
- "integrity": "sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg==",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.1.2",
- "memory-fs": "^0.5.0",
- "tapable": "^1.0.0"
- },
- "dependencies": {
- "memory-fs": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz",
- "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==",
- "dev": true,
- "requires": {
- "errno": "^0.1.3",
- "readable-stream": "^2.0.1"
- }
- }
- }
- },
- "entities": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/entities/-/entities-2.2.0.tgz",
- "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==",
- "dev": true
- },
- "errno": {
- "version": "0.1.8",
- "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz",
- "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==",
- "dev": true,
- "requires": {
- "prr": "~1.0.1"
- }
- },
- "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,
- "requires": {
- "is-arrayish": "^0.2.1"
- }
- },
- "error-stack-parser": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/error-stack-parser/-/error-stack-parser-2.0.6.tgz",
- "integrity": "sha512-d51brTeqC+BHlwF0BhPtcYgF5nlzf9ZZ0ZIUQNZpc9ZB9qw5IJ2diTrBY9jlCJkTLITYPjmiX6OWCwH+fuyNgQ==",
- "dev": true,
- "requires": {
- "stackframe": "^1.1.1"
- }
- },
- "es-abstract": {
- "version": "1.19.1",
- "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.19.1.tgz",
- "integrity": "sha512-2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w==",
- "dev": true,
- "requires": {
- "call-bind": "^1.0.2",
- "es-to-primitive": "^1.2.1",
- "function-bind": "^1.1.1",
- "get-intrinsic": "^1.1.1",
- "get-symbol-description": "^1.0.0",
- "has": "^1.0.3",
- "has-symbols": "^1.0.2",
- "internal-slot": "^1.0.3",
- "is-callable": "^1.2.4",
- "is-negative-zero": "^2.0.1",
- "is-regex": "^1.1.4",
- "is-shared-array-buffer": "^1.0.1",
- "is-string": "^1.0.7",
- "is-weakref": "^1.0.1",
- "object-inspect": "^1.11.0",
- "object-keys": "^1.1.1",
- "object.assign": "^4.1.2",
- "string.prototype.trimend": "^1.0.4",
- "string.prototype.trimstart": "^1.0.4",
- "unbox-primitive": "^1.0.1"
- }
- },
- "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,
- "requires": {
- "is-callable": "^1.1.4",
- "is-date-object": "^1.0.1",
- "is-symbol": "^1.0.2"
- }
- },
- "escalade": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz",
- "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==",
- "dev": true
- },
- "escape-html": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
- "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=",
- "dev": true
- },
- "escape-string-regexp": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
- "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
- "dev": true
- },
- "eslint": {
- "version": "6.8.0",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz",
- "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==",
- "dev": true,
- "requires": {
- "@babel/code-frame": "^7.0.0",
- "ajv": "^6.10.0",
- "chalk": "^2.1.0",
- "cross-spawn": "^6.0.5",
- "debug": "^4.0.1",
- "doctrine": "^3.0.0",
- "eslint-scope": "^5.0.0",
- "eslint-utils": "^1.4.3",
- "eslint-visitor-keys": "^1.1.0",
- "espree": "^6.1.2",
- "esquery": "^1.0.1",
- "esutils": "^2.0.2",
- "file-entry-cache": "^5.0.1",
- "functional-red-black-tree": "^1.0.1",
- "glob-parent": "^5.0.0",
- "globals": "^12.1.0",
- "ignore": "^4.0.6",
- "import-fresh": "^3.0.0",
- "imurmurhash": "^0.1.4",
- "inquirer": "^7.0.0",
- "is-glob": "^4.0.0",
- "js-yaml": "^3.13.1",
- "json-stable-stringify-without-jsonify": "^1.0.1",
- "levn": "^0.3.0",
- "lodash": "^4.17.14",
- "minimatch": "^3.0.4",
- "mkdirp": "^0.5.1",
- "natural-compare": "^1.4.0",
- "optionator": "^0.8.3",
- "progress": "^2.0.0",
- "regexpp": "^2.0.1",
- "semver": "^6.1.2",
- "strip-ansi": "^5.2.0",
- "strip-json-comments": "^3.0.1",
- "table": "^5.2.3",
- "text-table": "^0.2.0",
- "v8-compile-cache": "^2.0.3"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
- "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
- "dev": true
- },
- "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,
- "requires": {
- "is-glob": "^4.0.1"
- }
- },
- "globals": {
- "version": "12.4.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz",
- "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==",
- "dev": true,
- "requires": {
- "type-fest": "^0.8.1"
- }
- },
- "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,
- "requires": {
- "parent-module": "^1.0.0",
- "resolve-from": "^4.0.0"
- }
- },
- "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
- },
- "strip-ansi": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
- "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
- "dev": true,
- "requires": {
- "ansi-regex": "^4.1.0"
- }
- },
- "type-fest": {
- "version": "0.8.1",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz",
- "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==",
- "dev": true
- }
- }
- },
- "eslint-config-prettier": {
- "version": "6.15.0",
- "resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-6.15.0.tgz",
- "integrity": "sha512-a1+kOYLR8wMGustcgAjdydMsQ2A/2ipRPwRKUmfYaSxc9ZPcrku080Ctl6zrZzZNs/U82MjSv+qKREkoq3bJaw==",
- "dev": true,
- "requires": {
- "get-stdin": "^6.0.0"
- }
- },
- "eslint-loader": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/eslint-loader/-/eslint-loader-2.2.1.tgz",
- "integrity": "sha512-RLgV9hoCVsMLvOxCuNjdqOrUqIj9oJg8hF44vzJaYqsAHuY9G2YAeN3joQ9nxP0p5Th9iFSIpKo+SD8KISxXRg==",
- "dev": true,
- "requires": {
- "loader-fs-cache": "^1.0.0",
- "loader-utils": "^1.0.2",
- "object-assign": "^4.0.1",
- "object-hash": "^1.1.4",
- "rimraf": "^2.6.1"
- }
- },
- "eslint-plugin-prettier": {
- "version": "3.4.1",
- "resolved": "https://registry.npmjs.org/eslint-plugin-prettier/-/eslint-plugin-prettier-3.4.1.tgz",
- "integrity": "sha512-htg25EUYUeIhKHXjOinK4BgCcDwtLHjqaxCDsMy5nbnUMkKFvIhMVCp+5GFUXQ4Nr8lBsPqtGAqBenbpFqAA2g==",
- "dev": true,
- "requires": {
- "prettier-linter-helpers": "^1.0.0"
- }
- },
- "eslint-plugin-vue": {
- "version": "6.2.2",
- "resolved": "https://registry.npmjs.org/eslint-plugin-vue/-/eslint-plugin-vue-6.2.2.tgz",
- "integrity": "sha512-Nhc+oVAHm0uz/PkJAWscwIT4ijTrK5fqNqz9QB1D35SbbuMG1uB6Yr5AJpvPSWg+WOw7nYNswerYh0kOk64gqQ==",
- "dev": true,
- "requires": {
- "natural-compare": "^1.4.0",
- "semver": "^5.6.0",
- "vue-eslint-parser": "^7.0.0"
- },
- "dependencies": {
- "semver": {
- "version": "5.7.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
- "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
- "dev": true
- }
- }
- },
- "eslint-scope": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz",
- "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==",
- "dev": true,
- "requires": {
- "esrecurse": "^4.3.0",
- "estraverse": "^4.1.1"
- }
- },
- "eslint-utils": {
- "version": "1.4.3",
- "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz",
- "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==",
- "dev": true,
- "requires": {
- "eslint-visitor-keys": "^1.1.0"
- }
- },
- "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
- },
- "espree": {
- "version": "6.2.1",
- "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz",
- "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==",
- "dev": true,
- "requires": {
- "acorn": "^7.1.1",
- "acorn-jsx": "^5.2.0",
- "eslint-visitor-keys": "^1.1.0"
- }
- },
- "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
- },
- "esquery": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz",
- "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==",
- "dev": true,
- "requires": {
- "estraverse": "^5.1.0"
- },
- "dependencies": {
- "estraverse": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
- "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
- "dev": true
- }
- }
- },
- "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,
- "requires": {
- "estraverse": "^5.2.0"
- },
- "dependencies": {
- "estraverse": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
- "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
- "dev": true
- }
- }
- },
- "estraverse": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz",
- "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==",
- "dev": true
- },
- "esutils": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz",
- "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==",
- "dev": true
- },
- "etag": {
- "version": "1.8.1",
- "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
- "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=",
- "dev": true
- },
- "event-pubsub": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/event-pubsub/-/event-pubsub-4.3.0.tgz",
- "integrity": "sha512-z7IyloorXvKbFx9Bpie2+vMJKKx1fH1EN5yiTfp8CiLOTptSYy1g8H4yDpGlEdshL1PBiFtBHepF2cNsqeEeFQ==",
- "dev": true
- },
- "eventemitter3": {
- "version": "4.0.7",
- "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz",
- "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==",
- "dev": true
- },
- "events": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
- "dev": true
- },
- "eventsource": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/eventsource/-/eventsource-1.1.0.tgz",
- "integrity": "sha512-VSJjT5oCNrFvCS6igjzPAt5hBzQ2qPBFIbJ03zLI9SE0mxwZpMw6BfJrbFHm1a141AavMEB8JHmBhWAd66PfCg==",
- "dev": true,
- "requires": {
- "original": "^1.0.0"
- }
- },
- "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,
- "requires": {
- "md5.js": "^1.3.4",
- "safe-buffer": "^5.1.1"
- }
- },
- "execa": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz",
- "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==",
- "dev": true,
- "requires": {
- "cross-spawn": "^6.0.0",
- "get-stream": "^4.0.0",
- "is-stream": "^1.1.0",
- "npm-run-path": "^2.0.0",
- "p-finally": "^1.0.0",
- "signal-exit": "^3.0.0",
- "strip-eof": "^1.0.0"
- }
- },
- "expand-brackets": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/expand-brackets/-/expand-brackets-2.1.4.tgz",
- "integrity": "sha1-t3c14xXOMPa27/D4OwQVGiJEliI=",
- "dev": true,
- "requires": {
- "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"
- },
- "dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "define-property": {
- "version": "0.2.5",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
- "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
- "dev": true,
- "requires": {
- "is-descriptor": "^0.1.0"
- }
- },
- "extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
- "dev": true,
- "requires": {
- "is-extendable": "^0.1.0"
- }
- },
- "is-accessor-descriptor": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
- "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
- "dev": true,
- "requires": {
- "kind-of": "^3.0.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "^1.1.5"
- }
- }
- }
- },
- "is-data-descriptor": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
- "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
- "dev": true,
- "requires": {
- "kind-of": "^3.0.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "^1.1.5"
- }
- }
- }
- },
- "is-descriptor": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
- "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
- "dev": true,
- "requires": {
- "is-accessor-descriptor": "^0.1.6",
- "is-data-descriptor": "^0.1.4",
- "kind-of": "^5.0.0"
- }
- },
- "is-extendable": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
- "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=",
- "dev": true
- },
- "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
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- }
- }
- },
- "expand-tilde": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/expand-tilde/-/expand-tilde-2.0.2.tgz",
- "integrity": "sha1-l+gBqgUt8CRU3kawK/YhZCzchQI=",
- "dev": true,
- "requires": {
- "homedir-polyfill": "^1.0.1"
- }
- },
- "express": {
- "version": "4.17.2",
- "resolved": "https://registry.npmjs.org/express/-/express-4.17.2.tgz",
- "integrity": "sha512-oxlxJxcQlYwqPWKVJJtvQiwHgosH/LrLSPA+H4UxpyvSS6jC5aH+5MoHFM+KABgTOt0APue4w66Ha8jCUo9QGg==",
- "dev": true,
- "requires": {
- "accepts": "~1.3.7",
- "array-flatten": "1.1.1",
- "body-parser": "1.19.1",
- "content-disposition": "0.5.4",
- "content-type": "~1.0.4",
- "cookie": "0.4.1",
- "cookie-signature": "1.0.6",
- "debug": "2.6.9",
- "depd": "~1.1.2",
- "encodeurl": "~1.0.2",
- "escape-html": "~1.0.3",
- "etag": "~1.8.1",
- "finalhandler": "~1.1.2",
- "fresh": "0.5.2",
- "merge-descriptors": "1.0.1",
- "methods": "~1.1.2",
- "on-finished": "~2.3.0",
- "parseurl": "~1.3.3",
- "path-to-regexp": "0.1.7",
- "proxy-addr": "~2.0.7",
- "qs": "6.9.6",
- "range-parser": "~1.2.1",
- "safe-buffer": "5.2.1",
- "send": "0.17.2",
- "serve-static": "1.14.2",
- "setprototypeof": "1.2.0",
- "statuses": "~1.5.0",
- "type-is": "~1.6.18",
- "utils-merge": "1.0.1",
- "vary": "~1.1.2"
- },
- "dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- },
- "qs": {
- "version": "6.9.6",
- "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.6.tgz",
- "integrity": "sha512-TIRk4aqYLNoJUbd+g2lEdz5kLWIuTMRagAXxl78Q0RiVjAOugHmeKNGdd3cwo/ktpf9aL9epCfFqWDEKysUlLQ==",
- "dev": true
- },
- "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==",
- "dev": true
- }
- }
- },
- "extend": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
- "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==",
- "dev": true
- },
- "extend-shallow": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-3.0.2.tgz",
- "integrity": "sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg=",
- "dev": true,
- "requires": {
- "assign-symbols": "^1.0.0",
- "is-extendable": "^1.0.1"
- }
- },
- "external-editor": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz",
- "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==",
- "dev": true,
- "requires": {
- "chardet": "^0.7.0",
- "iconv-lite": "^0.4.24",
- "tmp": "^0.0.33"
- }
- },
- "extglob": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/extglob/-/extglob-2.0.4.tgz",
- "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==",
- "dev": true,
- "requires": {
- "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"
- },
- "dependencies": {
- "define-property": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
- "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
- "dev": true,
- "requires": {
- "is-descriptor": "^1.0.0"
- }
- },
- "extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
- "dev": true,
- "requires": {
- "is-extendable": "^0.1.0"
- }
- },
- "is-extendable": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
- "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=",
- "dev": true
- }
- }
- },
- "extsprintf": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz",
- "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=",
- "dev": true
- },
- "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
- },
- "fast-diff": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/fast-diff/-/fast-diff-1.2.0.tgz",
- "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==",
- "dev": true
- },
- "fast-glob": {
- "version": "2.2.7",
- "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-2.2.7.tgz",
- "integrity": "sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw==",
- "dev": true,
- "requires": {
- "@mrmlnc/readdir-enhanced": "^2.2.1",
- "@nodelib/fs.stat": "^1.1.2",
- "glob-parent": "^3.1.0",
- "is-glob": "^4.0.0",
- "merge2": "^1.2.3",
- "micromatch": "^3.1.10"
- }
- },
- "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
- },
- "fast-levenshtein": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
- "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
- "dev": true
- },
- "faye-websocket": {
- "version": "0.11.4",
- "resolved": "https://registry.npmjs.org/faye-websocket/-/faye-websocket-0.11.4.tgz",
- "integrity": "sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==",
- "dev": true,
- "requires": {
- "websocket-driver": ">=0.5.1"
- }
- },
- "fibers": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/fibers/-/fibers-4.0.3.tgz",
- "integrity": "sha512-MW5VrDtTOLpKK7lzw4qD7Z9tXaAhdOmOED5RHzg3+HjUk+ibkjVW0Py2ERtdqgTXaerLkVkBy2AEmJiT6RMyzg==",
- "dev": true,
- "requires": {
- "detect-libc": "^1.0.3"
- }
- },
- "figgy-pudding": {
- "version": "3.5.2",
- "resolved": "https://registry.npmjs.org/figgy-pudding/-/figgy-pudding-3.5.2.tgz",
- "integrity": "sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw==",
- "dev": true
- },
- "figures": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz",
- "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==",
- "dev": true,
- "requires": {
- "escape-string-regexp": "^1.0.5"
- }
- },
- "file-entry-cache": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz",
- "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==",
- "dev": true,
- "requires": {
- "flat-cache": "^2.0.1"
- }
- },
- "file-loader": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-4.3.0.tgz",
- "integrity": "sha512-aKrYPYjF1yG3oX0kWRrqrSMfgftm7oJW5M+m4owoldH5C51C0RkIwB++JbRvEW3IU6/ZG5n8UvEcdgwOt2UOWA==",
- "dev": true,
- "requires": {
- "loader-utils": "^1.2.3",
- "schema-utils": "^2.5.0"
- }
- },
- "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,
- "optional": true
- },
- "filesize": {
- "version": "3.6.1",
- "resolved": "https://registry.npmjs.org/filesize/-/filesize-3.6.1.tgz",
- "integrity": "sha512-7KjR1vv6qnicaPMi1iiTcI85CyYwRO/PSFCu6SvqL8jN2Wjt/NIYQTFtFs7fSDCYOstUkEWIQGFUg5YZQfjlcg==",
- "dev": true
- },
- "fill-range": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz",
- "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=",
- "dev": true,
- "requires": {
- "extend-shallow": "^2.0.1",
- "is-number": "^3.0.0",
- "repeat-string": "^1.6.1",
- "to-regex-range": "^2.1.0"
- },
- "dependencies": {
- "extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
- "dev": true,
- "requires": {
- "is-extendable": "^0.1.0"
- }
- },
- "is-extendable": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
- "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=",
- "dev": true
- }
- }
- },
- "finalhandler": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz",
- "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==",
- "dev": true,
- "requires": {
- "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"
- },
- "dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- }
- }
- },
- "find-cache-dir": {
- "version": "3.3.2",
- "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.2.tgz",
- "integrity": "sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig==",
- "dev": true,
- "requires": {
- "commondir": "^1.0.1",
- "make-dir": "^3.0.2",
- "pkg-dir": "^4.1.0"
- }
- },
- "find-up": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
- "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
- "dev": true,
- "requires": {
- "locate-path": "^5.0.0",
- "path-exists": "^4.0.0"
- }
- },
- "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,
- "requires": {
- "detect-file": "^1.0.0",
- "is-glob": "^4.0.0",
- "micromatch": "^3.0.4",
- "resolve-dir": "^1.0.1"
- }
- },
- "flat-cache": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz",
- "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==",
- "dev": true,
- "requires": {
- "flatted": "^2.0.0",
- "rimraf": "2.6.3",
- "write": "1.0.3"
- },
- "dependencies": {
- "rimraf": {
- "version": "2.6.3",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz",
- "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==",
- "dev": true,
- "requires": {
- "glob": "^7.1.3"
- }
- }
- }
- },
- "flatted": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz",
- "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==",
- "dev": true
- },
- "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,
- "requires": {
- "inherits": "^2.0.3",
- "readable-stream": "^2.3.6"
- }
- },
- "follow-redirects": {
- "version": "1.14.7",
- "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.7.tgz",
- "integrity": "sha512-+hbxoLbFMbRKDwohX8GkTataGqO6Jb7jGwpAlwgy2bIz25XtRm7KEzJM76R1WiNT5SwZkX4Y75SwBolkpmE7iQ==",
- "dev": true
- },
- "fontsource-roboto": {
- "version": "3.1.5",
- "resolved": "https://registry.npmjs.org/fontsource-roboto/-/fontsource-roboto-3.1.5.tgz",
- "integrity": "sha512-DXSE7/F/6AsKcRJX4VSi3bGrEx0xiaqieeV2W7UH9JFk6tt1U86NoWwy2iNPoUzGtEyQsasilwhTrMJm7wM+Ew=="
- },
- "for-in": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz",
- "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=",
- "dev": true
- },
- "forever-agent": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz",
- "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=",
- "dev": true
- },
- "form-data": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz",
- "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==",
- "dev": true,
- "requires": {
- "asynckit": "^0.4.0",
- "combined-stream": "^1.0.6",
- "mime-types": "^2.1.12"
- }
- },
- "forwarded": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz",
- "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==",
- "dev": true
- },
- "fragment-cache": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/fragment-cache/-/fragment-cache-0.2.1.tgz",
- "integrity": "sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk=",
- "dev": true,
- "requires": {
- "map-cache": "^0.2.2"
- }
- },
- "fresh": {
- "version": "0.5.2",
- "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
- "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=",
- "dev": true
- },
- "from2": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/from2/-/from2-2.3.0.tgz",
- "integrity": "sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8=",
- "dev": true,
- "requires": {
- "inherits": "^2.0.1",
- "readable-stream": "^2.0.0"
- }
- },
- "fs-extra": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz",
- "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.1.2",
- "jsonfile": "^4.0.0",
- "universalify": "^0.1.0"
- }
- },
- "fs-write-stream-atomic": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz",
- "integrity": "sha1-tH31NJPvkR33VzHnCp3tAYnbQMk=",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.1.2",
- "iferr": "^0.1.5",
- "imurmurhash": "^0.1.4",
- "readable-stream": "1 || 2"
- }
- },
- "fs.realpath": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
- "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
- "dev": true
- },
- "fsevents": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz",
- "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==",
- "dev": true,
- "optional": true
- },
- "function-bind": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
- "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==",
- "dev": true
- },
- "functional-red-black-tree": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
- "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
- "dev": true
- },
- "gensync": {
- "version": "1.0.0-beta.2",
- "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz",
- "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==",
- "dev": true
- },
- "get-caller-file": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
- "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
- "dev": true
- },
- "get-intrinsic": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz",
- "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==",
- "dev": true,
- "requires": {
- "function-bind": "^1.1.1",
- "has": "^1.0.3",
- "has-symbols": "^1.0.1"
- }
- },
- "get-own-enumerable-property-symbols": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz",
- "integrity": "sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==",
- "dev": true
- },
- "get-stdin": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-6.0.0.tgz",
- "integrity": "sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==",
- "dev": true
- },
- "get-stream": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz",
- "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==",
- "dev": true,
- "requires": {
- "pump": "^3.0.0"
- }
- },
- "get-symbol-description": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/get-symbol-description/-/get-symbol-description-1.0.0.tgz",
- "integrity": "sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==",
- "dev": true,
- "requires": {
- "call-bind": "^1.0.2",
- "get-intrinsic": "^1.1.1"
- }
- },
- "get-value": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz",
- "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=",
- "dev": true
- },
- "getpass": {
- "version": "0.1.7",
- "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz",
- "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=",
- "dev": true,
- "requires": {
- "assert-plus": "^1.0.0"
- }
- },
- "github-markdown-css": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/github-markdown-css/-/github-markdown-css-4.0.0.tgz",
- "integrity": "sha512-mH0bcIKv4XAN0mQVokfTdKo2OD5K8WJE9+lbMdM32/q0Ie5tXgVN/2o+zvToRMxSTUuiTRcLg5hzkFfOyBYreg=="
- },
- "glob": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz",
- "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==",
- "dev": true,
- "requires": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- }
- },
- "glob-parent": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz",
- "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=",
- "dev": true,
- "requires": {
- "is-glob": "^3.1.0",
- "path-dirname": "^1.0.0"
- },
- "dependencies": {
- "is-glob": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz",
- "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=",
- "dev": true,
- "requires": {
- "is-extglob": "^2.1.0"
- }
- }
- }
- },
- "glob-to-regexp": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz",
- "integrity": "sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs=",
- "dev": true
- },
- "global-modules": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-2.0.0.tgz",
- "integrity": "sha512-NGbfmJBp9x8IxyJSd1P+otYK8vonoJactOogrVfFRIAEY1ukil8RSKDz2Yo7wh1oihl51l/r6W4epkeKJHqL8A==",
- "dev": true,
- "requires": {
- "global-prefix": "^3.0.0"
- }
- },
- "global-prefix": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-3.0.0.tgz",
- "integrity": "sha512-awConJSVCHVGND6x3tmMaKcQvwXLhjdkmomy2W+Goaui8YPgYgXJZewhg3fWC+DlfqqQuWg8AwqjGTD2nAPVWg==",
- "dev": true,
- "requires": {
- "ini": "^1.3.5",
- "kind-of": "^6.0.2",
- "which": "^1.3.1"
- }
- },
- "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
- },
- "globby": {
- "version": "9.2.0",
- "resolved": "https://registry.npmjs.org/globby/-/globby-9.2.0.tgz",
- "integrity": "sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg==",
- "dev": true,
- "requires": {
- "@types/glob": "^7.1.1",
- "array-union": "^1.0.2",
- "dir-glob": "^2.2.2",
- "fast-glob": "^2.2.6",
- "glob": "^7.1.3",
- "ignore": "^4.0.3",
- "pify": "^4.0.1",
- "slash": "^2.0.0"
- },
- "dependencies": {
- "slash": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz",
- "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==",
- "dev": true
- }
- }
- },
- "graceful-fs": {
- "version": "4.2.9",
- "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.9.tgz",
- "integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==",
- "dev": true
- },
- "gzip-size": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-5.1.1.tgz",
- "integrity": "sha512-FNHi6mmoHvs1mxZAds4PpdCS6QG8B4C1krxJsMutgxl5t3+GlRTzzI3NEkifXx2pVsOvJdOGSmIgDhQ55FwdPA==",
- "dev": true,
- "requires": {
- "duplexer": "^0.1.1",
- "pify": "^4.0.1"
- }
- },
- "handle-thing": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz",
- "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==",
- "dev": true
- },
- "har-schema": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz",
- "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=",
- "dev": true
- },
- "har-validator": {
- "version": "5.1.5",
- "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz",
- "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==",
- "dev": true,
- "requires": {
- "ajv": "^6.12.3",
- "har-schema": "^2.0.0"
- }
- },
- "has": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
- "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
- "dev": true,
- "requires": {
- "function-bind": "^1.1.1"
- }
- },
- "has-ansi": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
- "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=",
- "dev": true,
- "requires": {
- "ansi-regex": "^2.0.0"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
- "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
- "dev": true
- }
- }
- },
- "has-bigints": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.1.tgz",
- "integrity": "sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==",
- "dev": true
- },
- "has-flag": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
- "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
- "dev": true
- },
- "has-symbols": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.2.tgz",
- "integrity": "sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==",
- "dev": true
- },
- "has-tostringtag": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/has-tostringtag/-/has-tostringtag-1.0.0.tgz",
- "integrity": "sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==",
- "dev": true,
- "requires": {
- "has-symbols": "^1.0.2"
- }
- },
- "has-value": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/has-value/-/has-value-1.0.0.tgz",
- "integrity": "sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc=",
- "dev": true,
- "requires": {
- "get-value": "^2.0.6",
- "has-values": "^1.0.0",
- "isobject": "^3.0.0"
- }
- },
- "has-values": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/has-values/-/has-values-1.0.0.tgz",
- "integrity": "sha1-lbC2P+whRmGab+V/51Yo1aOe/k8=",
- "dev": true,
- "requires": {
- "is-number": "^3.0.0",
- "kind-of": "^4.0.0"
- },
- "dependencies": {
- "kind-of": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz",
- "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=",
- "dev": true,
- "requires": {
- "is-buffer": "^1.1.5"
- }
- }
- }
- },
- "hash-base": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/hash-base/-/hash-base-3.1.0.tgz",
- "integrity": "sha512-1nmYp/rhMDiE7AYkDw+lLwlAzz0AntGIe51F3RfFfEqyQ3feY2eI/NcwC6umIQVOASPMsWJLJScWKSSvzL9IVA==",
- "dev": true,
- "requires": {
- "inherits": "^2.0.4",
- "readable-stream": "^3.6.0",
- "safe-buffer": "^5.2.0"
- },
- "dependencies": {
- "readable-stream": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
- "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
- "dev": true,
- "requires": {
- "inherits": "^2.0.3",
- "string_decoder": "^1.1.1",
- "util-deprecate": "^1.0.1"
- }
- },
- "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==",
- "dev": true
- }
- }
- },
- "hash-sum": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-2.0.0.tgz",
- "integrity": "sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==",
- "dev": true
- },
- "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,
- "requires": {
- "inherits": "^2.0.3",
- "minimalistic-assert": "^1.0.1"
- }
- },
- "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
- },
- "hex-color-regex": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/hex-color-regex/-/hex-color-regex-1.1.0.tgz",
- "integrity": "sha512-l9sfDFsuqtOqKDsQdqrMRk0U85RZc0RtOR9yPI7mRVOa4FsR/BVnZ0shmQRM96Ji99kYZP/7hn1cedc1+ApsTQ==",
- "dev": true
- },
- "highlight.js": {
- "version": "10.7.3",
- "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-10.7.3.tgz",
- "integrity": "sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==",
- "dev": true
- },
- "hmac-drbg": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/hmac-drbg/-/hmac-drbg-1.0.1.tgz",
- "integrity": "sha1-0nRXAQJabHdabFRXk+1QL8DGSaE=",
- "dev": true,
- "requires": {
- "hash.js": "^1.0.3",
- "minimalistic-assert": "^1.0.0",
- "minimalistic-crypto-utils": "^1.0.1"
- }
- },
- "home-or-tmp": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz",
- "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=",
- "dev": true,
- "requires": {
- "os-homedir": "^1.0.0",
- "os-tmpdir": "^1.0.1"
- }
- },
- "homedir-polyfill": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz",
- "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==",
- "dev": true,
- "requires": {
- "parse-passwd": "^1.0.0"
- }
- },
- "hoopy": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/hoopy/-/hoopy-0.1.4.tgz",
- "integrity": "sha512-HRcs+2mr52W0K+x8RzcLzuPPmVIKMSv97RGHy0Ea9y/mpcaK+xTrjICA04KAHi4GRzxliNqNJEFYWHghy3rSfQ==",
- "dev": true
- },
- "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
- },
- "hpack.js": {
- "version": "2.1.6",
- "resolved": "https://registry.npmjs.org/hpack.js/-/hpack.js-2.1.6.tgz",
- "integrity": "sha1-h3dMCUnlE/QuhFdbPEVoH63ioLI=",
- "dev": true,
- "requires": {
- "inherits": "^2.0.1",
- "obuf": "^1.0.0",
- "readable-stream": "^2.0.1",
- "wbuf": "^1.1.0"
- }
- },
- "hsl-regex": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/hsl-regex/-/hsl-regex-1.0.0.tgz",
- "integrity": "sha1-1JMwx4ntgZ4nakwNJy3/owsY/m4=",
- "dev": true
- },
- "hsla-regex": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/hsla-regex/-/hsla-regex-1.0.0.tgz",
- "integrity": "sha1-wc56MWjIxmFAM6S194d/OyJfnDg=",
- "dev": true
- },
- "html-entities": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.4.0.tgz",
- "integrity": "sha512-8nxjcBcd8wovbeKx7h3wTji4e6+rhaVuPNpMqwWgnHh+N9ToqsCs6XztWRBPQ+UtzsoMAdKZtUENoVzU/EMtZA==",
- "dev": true
- },
- "html-minifier": {
- "version": "3.5.21",
- "resolved": "https://registry.npmjs.org/html-minifier/-/html-minifier-3.5.21.tgz",
- "integrity": "sha512-LKUKwuJDhxNa3uf/LPR/KVjm/l3rBqtYeCOAekvG8F1vItxMUpueGd94i/asDDr8/1u7InxzFA5EeGjhhG5mMA==",
- "dev": true,
- "requires": {
- "camel-case": "3.0.x",
- "clean-css": "4.2.x",
- "commander": "2.17.x",
- "he": "1.2.x",
- "param-case": "2.1.x",
- "relateurl": "0.2.x",
- "uglify-js": "3.4.x"
- }
- },
- "html-tags": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/html-tags/-/html-tags-3.1.0.tgz",
- "integrity": "sha512-1qYz89hW3lFDEazhjW0yVAV87lw8lVkrJocr72XmBkMKsoSVJCQx3W8BXsC7hO2qAt8BoVjYjtAcZ9perqGnNg==",
- "dev": true
- },
- "html-webpack-plugin": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/html-webpack-plugin/-/html-webpack-plugin-3.2.0.tgz",
- "integrity": "sha1-sBq71yOsqqeze2r0SS69oD2d03s=",
- "dev": true,
- "requires": {
- "html-minifier": "^3.2.3",
- "loader-utils": "^0.2.16",
- "lodash": "^4.17.3",
- "pretty-error": "^2.0.2",
- "tapable": "^1.0.0",
- "toposort": "^1.0.0",
- "util.promisify": "1.0.0"
- },
- "dependencies": {
- "big.js": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/big.js/-/big.js-3.2.0.tgz",
- "integrity": "sha512-+hN/Zh2D08Mx65pZ/4g5bsmNiZUuChDiQfTUQ7qJr4/kuopCr88xZsAXv6mBoZEsUI4OuGHlX59qE94K2mMW8Q==",
- "dev": true
- },
- "emojis-list": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-2.1.0.tgz",
- "integrity": "sha1-TapNnbAPmBmIDHn6RXrlsJof04k=",
- "dev": true
- },
- "json5": {
- "version": "0.5.1",
- "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
- "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=",
- "dev": true
- },
- "loader-utils": {
- "version": "0.2.17",
- "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-0.2.17.tgz",
- "integrity": "sha1-+G5jdNQyBabmxg6RlvF8Apm/s0g=",
- "dev": true,
- "requires": {
- "big.js": "^3.1.3",
- "emojis-list": "^2.0.0",
- "json5": "^0.5.0",
- "object-assign": "^4.0.1"
- }
- }
- }
- },
- "htmlparser2": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-6.1.0.tgz",
- "integrity": "sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A==",
- "dev": true,
- "requires": {
- "domelementtype": "^2.0.1",
- "domhandler": "^4.0.0",
- "domutils": "^2.5.2",
- "entities": "^2.0.0"
- }
- },
- "http-deceiver": {
- "version": "1.2.7",
- "resolved": "https://registry.npmjs.org/http-deceiver/-/http-deceiver-1.2.7.tgz",
- "integrity": "sha1-+nFolEq5pRnTN8sL7HKE3D5yPYc=",
- "dev": true
- },
- "http-errors": {
- "version": "1.8.1",
- "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz",
- "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==",
- "dev": true,
- "requires": {
- "depd": "~1.1.2",
- "inherits": "2.0.4",
- "setprototypeof": "1.2.0",
- "statuses": ">= 1.5.0 < 2",
- "toidentifier": "1.0.1"
- }
- },
- "http-parser-js": {
- "version": "0.5.5",
- "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.5.tgz",
- "integrity": "sha512-x+JVEkO2PoM8qqpbPbOL3cqHPwerep7OwzK7Ay+sMQjKzaKCqWvjoXm5tqMP9tXWWTnTzAjIhXg+J99XYuPhPA==",
- "dev": true
- },
- "http-proxy": {
- "version": "1.18.1",
- "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz",
- "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==",
- "dev": true,
- "requires": {
- "eventemitter3": "^4.0.0",
- "follow-redirects": "^1.0.0",
- "requires-port": "^1.0.0"
- }
- },
- "http-proxy-middleware": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-1.3.1.tgz",
- "integrity": "sha512-13eVVDYS4z79w7f1+NPllJtOQFx/FdUW4btIvVRMaRlUY9VGstAbo5MOhLEuUgZFRHn3x50ufn25zkj/boZnEg==",
- "dev": true,
- "requires": {
- "@types/http-proxy": "^1.17.5",
- "http-proxy": "^1.18.1",
- "is-glob": "^4.0.1",
- "is-plain-obj": "^3.0.0",
- "micromatch": "^4.0.2"
- },
- "dependencies": {
- "braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
- "dev": true,
- "requires": {
- "fill-range": "^7.0.1"
- }
- },
- "fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
- "dev": true,
- "requires": {
- "to-regex-range": "^5.0.1"
- }
- },
- "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
- },
- "micromatch": {
- "version": "4.0.4",
- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz",
- "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==",
- "dev": true,
- "requires": {
- "braces": "^3.0.1",
- "picomatch": "^2.2.3"
- }
- },
- "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,
- "requires": {
- "is-number": "^7.0.0"
- }
- }
- }
- },
- "http-signature": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz",
- "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=",
- "dev": true,
- "requires": {
- "assert-plus": "^1.0.0",
- "jsprim": "^1.2.2",
- "sshpk": "^1.7.0"
- }
- },
- "https-browserify": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/https-browserify/-/https-browserify-1.0.0.tgz",
- "integrity": "sha1-7AbBDgo0wPL68Zn3/X/Hj//QPHM=",
- "dev": true
- },
- "human-signals": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-1.1.1.tgz",
- "integrity": "sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==",
- "dev": true
- },
- "iconv-lite": {
- "version": "0.4.24",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
- "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
- "dev": true,
- "requires": {
- "safer-buffer": ">= 2.1.2 < 3"
- }
- },
- "icss-utils": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-4.1.1.tgz",
- "integrity": "sha512-4aFq7wvWyMHKgxsH8QQtGpvbASCf+eM3wPRLI6R+MgAnTCZ6STYsRvttLvRWK0Nfif5piF394St3HeJDaljGPA==",
- "dev": true,
- "requires": {
- "postcss": "^7.0.14"
- }
- },
- "ieee754": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
- "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==",
- "dev": true
- },
- "iferr": {
- "version": "0.1.5",
- "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz",
- "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=",
- "dev": true
- },
- "ignore": {
- "version": "4.0.6",
- "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz",
- "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==",
- "dev": true
- },
- "immutable": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.0.0.tgz",
- "integrity": "sha512-zIE9hX70qew5qTUjSS7wi1iwj/l7+m54KWU247nhM3v806UdGj1yDndXj+IOYxxtW9zyLI+xqFNZjTuDaLUqFw==",
- "dev": true
- },
- "import-cwd": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/import-cwd/-/import-cwd-2.1.0.tgz",
- "integrity": "sha1-qmzzbnInYShcs3HsZRn1PiQ1sKk=",
- "dev": true,
- "requires": {
- "import-from": "^2.1.0"
- }
- },
- "import-fresh": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-2.0.0.tgz",
- "integrity": "sha1-2BNVwVYS04bGH53dOSLUMEgipUY=",
- "dev": true,
- "requires": {
- "caller-path": "^2.0.0",
- "resolve-from": "^3.0.0"
- }
- },
- "import-from": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/import-from/-/import-from-2.1.0.tgz",
- "integrity": "sha1-M1238qev/VOqpHHUuAId7ja387E=",
- "dev": true,
- "requires": {
- "resolve-from": "^3.0.0"
- }
- },
- "import-local": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/import-local/-/import-local-2.0.0.tgz",
- "integrity": "sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ==",
- "dev": true,
- "requires": {
- "pkg-dir": "^3.0.0",
- "resolve-cwd": "^2.0.0"
- },
- "dependencies": {
- "find-up": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
- "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
- "dev": true,
- "requires": {
- "locate-path": "^3.0.0"
- }
- },
- "locate-path": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
- "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
- "dev": true,
- "requires": {
- "p-locate": "^3.0.0",
- "path-exists": "^3.0.0"
- }
- },
- "p-locate": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
- "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
- "dev": true,
- "requires": {
- "p-limit": "^2.0.0"
- }
- },
- "path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
- "dev": true
- },
- "pkg-dir": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz",
- "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==",
- "dev": true,
- "requires": {
- "find-up": "^3.0.0"
- }
- }
- }
- },
- "imurmurhash": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
- "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
- "dev": true
- },
- "indexes-of": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz",
- "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=",
- "dev": true
- },
- "infer-owner": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz",
- "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==",
- "dev": true
- },
- "inflight": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
- "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
- "dev": true,
- "requires": {
- "once": "^1.3.0",
- "wrappy": "1"
- }
- },
- "inherits": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
- "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
- "dev": true
- },
- "ini": {
- "version": "1.3.8",
- "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz",
- "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==",
- "dev": true
- },
- "inquirer": {
- "version": "7.3.3",
- "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz",
- "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==",
- "dev": true,
- "requires": {
- "ansi-escapes": "^4.2.1",
- "chalk": "^4.1.0",
- "cli-cursor": "^3.1.0",
- "cli-width": "^3.0.0",
- "external-editor": "^3.0.3",
- "figures": "^3.0.0",
- "lodash": "^4.17.19",
- "mute-stream": "0.0.8",
- "run-async": "^2.4.0",
- "rxjs": "^6.6.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0",
- "through": "^2.3.6"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "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
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "internal-ip": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz",
- "integrity": "sha512-S1zBo1D6zcsyuC6PMmY5+55YMILQ9av8lotMx447Bq6SAgo/sDK6y6uUKmuYhW7eacnIhFfsPmCNYdDzsnnDCg==",
- "dev": true,
- "requires": {
- "default-gateway": "^4.2.0",
- "ipaddr.js": "^1.9.0"
- },
- "dependencies": {
- "default-gateway": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-4.2.0.tgz",
- "integrity": "sha512-h6sMrVB1VMWVrW13mSc6ia/DwYYw5MN6+exNu1OaJeFac5aSAvwM7lZ0NVfTABuSkQelr4h5oebg3KB1XPdjgA==",
- "dev": true,
- "requires": {
- "execa": "^1.0.0",
- "ip-regex": "^2.1.0"
- }
- }
- }
- },
- "internal-slot": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz",
- "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==",
- "dev": true,
- "requires": {
- "get-intrinsic": "^1.1.0",
- "has": "^1.0.3",
- "side-channel": "^1.0.4"
- }
- },
- "interpret": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.4.0.tgz",
- "integrity": "sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA==",
- "dev": true
- },
- "invariant": {
- "version": "2.2.4",
- "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz",
- "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==",
- "dev": true,
- "requires": {
- "loose-envify": "^1.0.0"
- }
- },
- "ip": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.5.tgz",
- "integrity": "sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo=",
- "dev": true
- },
- "ip-regex": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz",
- "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=",
- "dev": true
- },
- "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
- },
- "is-absolute-url": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-2.1.0.tgz",
- "integrity": "sha1-UFMN+4T8yap9vnhS6Do3uTufKqY=",
- "dev": true
- },
- "is-accessor-descriptor": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz",
- "integrity": "sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ==",
- "dev": true,
- "requires": {
- "kind-of": "^6.0.0"
- }
- },
- "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,
- "requires": {
- "call-bind": "^1.0.2",
- "has-tostringtag": "^1.0.0"
- }
- },
- "is-arrayish": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz",
- "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=",
- "dev": true
- },
- "is-bigint": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz",
- "integrity": "sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==",
- "dev": true,
- "requires": {
- "has-bigints": "^1.0.1"
- }
- },
- "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,
- "requires": {
- "binary-extensions": "^2.0.0"
- }
- },
- "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,
- "requires": {
- "call-bind": "^1.0.2",
- "has-tostringtag": "^1.0.0"
- }
- },
- "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
- },
- "is-callable": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.4.tgz",
- "integrity": "sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w==",
- "dev": true
- },
- "is-ci": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-1.2.1.tgz",
- "integrity": "sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg==",
- "dev": true,
- "requires": {
- "ci-info": "^1.5.0"
- }
- },
- "is-color-stop": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/is-color-stop/-/is-color-stop-1.1.0.tgz",
- "integrity": "sha1-z/9HGu5N1cnhWFmPvhKWe1za00U=",
- "dev": true,
- "requires": {
- "css-color-names": "^0.0.4",
- "hex-color-regex": "^1.1.0",
- "hsl-regex": "^1.0.0",
- "hsla-regex": "^1.0.0",
- "rgb-regex": "^1.0.1",
- "rgba-regex": "^1.0.0"
- }
- },
- "is-core-module": {
- "version": "2.8.1",
- "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.8.1.tgz",
- "integrity": "sha512-SdNCUs284hr40hFTFP6l0IfZ/RSrMXF3qgoRHd3/79unUTvrFO/JoXwkGm+5J/Oe3E/b5GsnG330uUNgRpu1PA==",
- "dev": true,
- "requires": {
- "has": "^1.0.3"
- }
- },
- "is-data-descriptor": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz",
- "integrity": "sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ==",
- "dev": true,
- "requires": {
- "kind-of": "^6.0.0"
- }
- },
- "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,
- "requires": {
- "has-tostringtag": "^1.0.0"
- }
- },
- "is-descriptor": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-1.0.2.tgz",
- "integrity": "sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg==",
- "dev": true,
- "requires": {
- "is-accessor-descriptor": "^1.0.0",
- "is-data-descriptor": "^1.0.0",
- "kind-of": "^6.0.2"
- }
- },
- "is-directory": {
- "version": "0.3.1",
- "resolved": "https://registry.npmjs.org/is-directory/-/is-directory-0.3.1.tgz",
- "integrity": "sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE=",
- "dev": true
- },
- "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
- },
- "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,
- "requires": {
- "is-plain-object": "^2.0.4"
- }
- },
- "is-extglob": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz",
- "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
- "dev": true
- },
- "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
- },
- "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
- },
- "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,
- "requires": {
- "is-extglob": "^2.1.1"
- }
- },
- "is-negative-zero": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.2.tgz",
- "integrity": "sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==",
- "dev": true
- },
- "is-number": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz",
- "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=",
- "dev": true,
- "requires": {
- "kind-of": "^3.0.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "^1.1.5"
- }
- }
- }
- },
- "is-number-object": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/is-number-object/-/is-number-object-1.0.6.tgz",
- "integrity": "sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g==",
- "dev": true,
- "requires": {
- "has-tostringtag": "^1.0.0"
- }
- },
- "is-obj": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-1.0.1.tgz",
- "integrity": "sha1-PkcprB9f3gJc19g6iW2rn09n2w8=",
- "dev": true
- },
- "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
- },
- "is-path-in-cwd": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-2.1.0.tgz",
- "integrity": "sha512-rNocXHgipO+rvnP6dk3zI20RpOtrAM/kzbB258Uw5BWr3TpXi861yzjo16Dn4hUox07iw5AyeMLHWsujkjzvRQ==",
- "dev": true,
- "requires": {
- "is-path-inside": "^2.1.0"
- }
- },
- "is-path-inside": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-2.1.0.tgz",
- "integrity": "sha512-wiyhTzfDWsvwAW53OBWF5zuvaOGlZ6PwYxAbPVDhpm+gM09xKQGjBq/8uYN12aDvMxnAnq3dxTyoSoRNmg5YFg==",
- "dev": true,
- "requires": {
- "path-is-inside": "^1.0.2"
- }
- },
- "is-plain-obj": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-3.0.0.tgz",
- "integrity": "sha512-gwsOE28k+23GP1B6vFl1oVh/WOzmawBrKwo5Ev6wMKzPkaXaCDIQKzLnvsA42DRlbVTWorkgTKIviAKCWkfUwA==",
- "dev": true
- },
- "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,
- "requires": {
- "isobject": "^3.0.1"
- }
- },
- "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,
- "requires": {
- "call-bind": "^1.0.2",
- "has-tostringtag": "^1.0.0"
- }
- },
- "is-regexp": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-regexp/-/is-regexp-1.0.0.tgz",
- "integrity": "sha1-/S2INUXEa6xaYz57mgnof6LLUGk=",
- "dev": true
- },
- "is-resolvable": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz",
- "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==",
- "dev": true
- },
- "is-shared-array-buffer": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz",
- "integrity": "sha512-IU0NmyknYZN0rChcKhRO1X8LYz5Isj/Fsqh8NJOSf+N/hCOTwy29F32Ik7a+QszE63IdvmwdTPDd6cZ5pg4cwA==",
- "dev": true
- },
- "is-stream": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz",
- "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=",
- "dev": true
- },
- "is-string": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.7.tgz",
- "integrity": "sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==",
- "dev": true,
- "requires": {
- "has-tostringtag": "^1.0.0"
- }
- },
- "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,
- "requires": {
- "has-symbols": "^1.0.2"
- }
- },
- "is-typedarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz",
- "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=",
- "dev": true
- },
- "is-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,
- "requires": {
- "call-bind": "^1.0.2"
- }
- },
- "is-whitespace": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/is-whitespace/-/is-whitespace-0.3.0.tgz",
- "integrity": "sha1-Fjnssb4DauxppUy7QBz77XEUq38=",
- "dev": true
- },
- "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
- },
- "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,
- "requires": {
- "is-docker": "^2.0.0"
- }
- },
- "isarray": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
- "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
- "dev": true
- },
- "isexe": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz",
- "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
- "dev": true
- },
- "isobject": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz",
- "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=",
- "dev": true
- },
- "isstream": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz",
- "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=",
- "dev": true
- },
- "javascript-stringify": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/javascript-stringify/-/javascript-stringify-2.1.0.tgz",
- "integrity": "sha512-JVAfqNPTvNq3sB/VHQJAFxN/sPgKnsKrCwyRt15zwNCdrMMJDdcEOdubuy+DuJYYdm0ox1J4uzEuYKkN+9yhVg==",
- "dev": true
- },
- "js-beautify": {
- "version": "1.14.0",
- "resolved": "https://registry.npmjs.org/js-beautify/-/js-beautify-1.14.0.tgz",
- "integrity": "sha512-yuck9KirNSCAwyNJbqW+BxJqJ0NLJ4PwBUzQQACl5O3qHMBXVkXb/rD0ilh/Lat/tn88zSZ+CAHOlk0DsY7GuQ==",
- "dev": true,
- "requires": {
- "config-chain": "^1.1.12",
- "editorconfig": "^0.15.3",
- "glob": "^7.1.3",
- "nopt": "^5.0.0"
- }
- },
- "js-message": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/js-message/-/js-message-1.0.7.tgz",
- "integrity": "sha512-efJLHhLjIyKRewNS9EGZ4UpI8NguuL6fKkhRxVuMmrGV2xN/0APGdQYwLFky5w9naebSZ0OwAGp0G6/2Cg90rA==",
- "dev": true
- },
- "js-queue": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/js-queue/-/js-queue-2.0.2.tgz",
- "integrity": "sha512-pbKLsbCfi7kriM3s1J4DDCo7jQkI58zPLHi0heXPzPlj0hjUsm+FesPUbE0DSbIVIK503A36aUBoCN7eMFedkA==",
- "dev": true,
- "requires": {
- "easy-stack": "^1.0.1"
- }
- },
- "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
- },
- "js-yaml": {
- "version": "3.14.1",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
- "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
- "dev": true,
- "requires": {
- "argparse": "^1.0.7",
- "esprima": "^4.0.0"
- }
- },
- "jsbn": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz",
- "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=",
- "dev": true
- },
- "jsesc": {
- "version": "2.5.2",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz",
- "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==",
- "dev": true
- },
- "json-parse-better-errors": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz",
- "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==",
- "dev": true
- },
- "json-parse-even-better-errors": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
- "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
- "dev": true
- },
- "json-schema": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz",
- "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==",
- "dev": true
- },
- "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
- },
- "json-stable-stringify": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz",
- "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=",
- "dev": true,
- "requires": {
- "jsonify": "~0.0.0"
- }
- },
- "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": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=",
- "dev": true
- },
- "json-stringify-safe": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz",
- "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=",
- "dev": true
- },
- "json3": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/json3/-/json3-3.3.3.tgz",
- "integrity": "sha512-c7/8mbUsKigAbLkD5B010BK4D9LZm7A1pNItkEwiUZRpIN66exu/e7YQWysGun+TRKaJp8MhemM+VkfWv42aCA==",
- "dev": true
- },
- "json5": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.1.tgz",
- "integrity": "sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA=="
- },
- "jsonfile": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
- "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.1.6"
- }
- },
- "jsonify": {
- "version": "0.0.0",
- "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz",
- "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=",
- "dev": true
- },
- "jsprim": {
- "version": "1.4.2",
- "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz",
- "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==",
- "dev": true,
- "requires": {
- "assert-plus": "1.0.0",
- "extsprintf": "1.3.0",
- "json-schema": "0.4.0",
- "verror": "1.10.0"
- }
- },
- "jwt-decode": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/jwt-decode/-/jwt-decode-3.1.2.tgz",
- "integrity": "sha512-UfpWE/VZn0iP50d8cz9NrZLM9lSWhcJ+0Gt/nm4by88UL+J1SiKN8/5dkjMmbEzwL2CAe+67GsegCbIKtbp75A=="
- },
- "killable": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/killable/-/killable-1.0.1.tgz",
- "integrity": "sha512-LzqtLKlUwirEUyl/nicirVmNiPvYs7l5n8wOPP7fyJVpUPkvCnW/vuiXGpylGUlnPDnB7311rARzAt3Mhswpjg==",
- "dev": true
- },
- "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
- },
- "launch-editor": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/launch-editor/-/launch-editor-2.3.0.tgz",
- "integrity": "sha512-3QrsCXejlWYHjBPFXTyGNhPj4rrQdB+5+r5r3wArpLH201aR+nWUgw/zKKkTmilCfY/sv6u8qo98pNvtg8LUTA==",
- "dev": true,
- "requires": {
- "picocolors": "^1.0.0",
- "shell-quote": "^1.6.1"
- },
- "dependencies": {
- "picocolors": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
- "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
- "dev": true
- }
- }
- },
- "launch-editor-middleware": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/launch-editor-middleware/-/launch-editor-middleware-2.3.0.tgz",
- "integrity": "sha512-GJR64trLdFFwCoL9DMn/d1SZX0OzTDPixu4mcfWTShQ4tIqCHCGvlg9fOEYQXyBlrSMQwylsJfUWncheShfV2w==",
- "dev": true,
- "requires": {
- "launch-editor": "^2.3.0"
- }
- },
- "levn": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
- "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=",
- "dev": true,
- "requires": {
- "prelude-ls": "~1.1.2",
- "type-check": "~0.3.2"
- }
- },
- "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
- },
- "loader-fs-cache": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/loader-fs-cache/-/loader-fs-cache-1.0.3.tgz",
- "integrity": "sha512-ldcgZpjNJj71n+2Mf6yetz+c9bM4xpKtNds4LbqXzU/PTdeAX0g3ytnU1AJMEcTk2Lex4Smpe3Q/eCTsvUBxbA==",
- "dev": true,
- "requires": {
- "find-cache-dir": "^0.1.1",
- "mkdirp": "^0.5.1"
- },
- "dependencies": {
- "find-cache-dir": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-0.1.1.tgz",
- "integrity": "sha1-yN765XyKUqinhPnjHFfHQumToLk=",
- "dev": true,
- "requires": {
- "commondir": "^1.0.1",
- "mkdirp": "^0.5.1",
- "pkg-dir": "^1.0.0"
- }
- },
- "find-up": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-1.1.2.tgz",
- "integrity": "sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8=",
- "dev": true,
- "requires": {
- "path-exists": "^2.0.0",
- "pinkie-promise": "^2.0.0"
- }
- },
- "path-exists": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-2.1.0.tgz",
- "integrity": "sha1-D+tsZPD8UY2adU3V77YscCJ2H0s=",
- "dev": true,
- "requires": {
- "pinkie-promise": "^2.0.0"
- }
- },
- "pkg-dir": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz",
- "integrity": "sha1-ektQio1bstYp1EcFb/TpyTFM89Q=",
- "dev": true,
- "requires": {
- "find-up": "^1.0.0"
- }
- }
- }
- },
- "loader-runner": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-2.4.0.tgz",
- "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==",
- "dev": true
- },
- "loader-utils": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-1.4.0.tgz",
- "integrity": "sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA==",
- "dev": true,
- "requires": {
- "big.js": "^5.2.2",
- "emojis-list": "^3.0.0",
- "json5": "^1.0.1"
- },
- "dependencies": {
- "json5": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz",
- "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==",
- "dev": true,
- "requires": {
- "minimist": "^1.2.0"
- }
- }
- }
- },
- "locate-path": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
- "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
- "dev": true,
- "requires": {
- "p-locate": "^4.1.0"
- }
- },
- "lodash": {
- "version": "4.17.21",
- "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
- "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
- "dev": true
- },
- "lodash._reinterpolate": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz",
- "integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=",
- "dev": true
- },
- "lodash.debounce": {
- "version": "4.0.8",
- "resolved": "https://registry.npmjs.org/lodash.debounce/-/lodash.debounce-4.0.8.tgz",
- "integrity": "sha1-gteb/zCmfEAF/9XiUVMArZyk168=",
- "dev": true
- },
- "lodash.defaultsdeep": {
- "version": "4.6.1",
- "resolved": "https://registry.npmjs.org/lodash.defaultsdeep/-/lodash.defaultsdeep-4.6.1.tgz",
- "integrity": "sha512-3j8wdDzYuWO3lM3Reg03MuQR957t287Rpcxp1njpEa8oDrikb+FwGdW3n+FELh/A6qib6yPit0j/pv9G/yeAqA==",
- "dev": true
- },
- "lodash.kebabcase": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz",
- "integrity": "sha1-hImxyw0p/4gZXM7KRI/21swpXDY=",
- "dev": true
- },
- "lodash.mapvalues": {
- "version": "4.6.0",
- "resolved": "https://registry.npmjs.org/lodash.mapvalues/-/lodash.mapvalues-4.6.0.tgz",
- "integrity": "sha1-G6+lAF3p3W9PJmaMMMo3IwzJaJw=",
- "dev": true
- },
- "lodash.memoize": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz",
- "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=",
- "dev": true
- },
- "lodash.template": {
- "version": "4.5.0",
- "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-4.5.0.tgz",
- "integrity": "sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A==",
- "dev": true,
- "requires": {
- "lodash._reinterpolate": "^3.0.0",
- "lodash.templatesettings": "^4.0.0"
- }
- },
- "lodash.templatesettings": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz",
- "integrity": "sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ==",
- "dev": true,
- "requires": {
- "lodash._reinterpolate": "^3.0.0"
- }
- },
- "lodash.transform": {
- "version": "4.6.0",
- "resolved": "https://registry.npmjs.org/lodash.transform/-/lodash.transform-4.6.0.tgz",
- "integrity": "sha1-EjBkIvYzJK7YSD0/ODMrX2cFR6A=",
- "dev": true
- },
- "lodash.uniq": {
- "version": "4.5.0",
- "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz",
- "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=",
- "dev": true
- },
- "log-symbols": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-2.2.0.tgz",
- "integrity": "sha512-VeIAFslyIerEJLXHziedo2basKbMKtTw3vfn5IzG0XTjhAVEJyNHnL2p7vc+wBDSdQuUpNw3M2u6xb9QsAY5Eg==",
- "dev": true,
- "requires": {
- "chalk": "^2.0.1"
- }
- },
- "loglevel": {
- "version": "1.8.0",
- "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.8.0.tgz",
- "integrity": "sha512-G6A/nJLRgWOuuwdNuA6koovfEV1YpqqAG4pRUlFaz3jj2QNZ8M4vBqnVA+HBTmU/AMNUtlOsMmSpF6NyOjztbA==",
- "dev": true
- },
- "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,
- "requires": {
- "js-tokens": "^3.0.0 || ^4.0.0"
- }
- },
- "lower-case": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/lower-case/-/lower-case-1.1.4.tgz",
- "integrity": "sha1-miyr0bno4K6ZOkv31YdcOcQujqw=",
- "dev": true
- },
- "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==",
- "dev": true,
- "requires": {
- "yallist": "^3.0.2"
- }
- },
- "luxon": {
- "version": "1.28.0",
- "resolved": "https://registry.npmjs.org/luxon/-/luxon-1.28.0.tgz",
- "integrity": "sha512-TfTiyvZhwBYM/7QdAVDh+7dBTBA29v4ik0Ce9zda3Mnf8on1S5KJI8P2jKFZ8+5C0jhmr0KwJEO/Wdpm0VeWJQ=="
- },
- "make-dir": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz",
- "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==",
- "dev": true,
- "requires": {
- "semver": "^6.0.0"
- }
- },
- "map-cache": {
- "version": "0.2.2",
- "resolved": "https://registry.npmjs.org/map-cache/-/map-cache-0.2.2.tgz",
- "integrity": "sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=",
- "dev": true
- },
- "map-visit": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz",
- "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=",
- "dev": true,
- "requires": {
- "object-visit": "^1.0.0"
- }
- },
- "marked": {
- "version": "1.2.9",
- "resolved": "https://registry.npmjs.org/marked/-/marked-1.2.9.tgz",
- "integrity": "sha512-H8lIX2SvyitGX+TRdtS06m1jHMijKN/XjfH6Ooii9fvxMlh8QdqBfBDkGUpMWH2kQNrtixjzYUa3SH8ROTgRRw=="
- },
- "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,
- "requires": {
- "hash-base": "^3.0.0",
- "inherits": "^2.0.1",
- "safe-buffer": "^5.1.2"
- }
- },
- "mdn-data": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz",
- "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA==",
- "dev": true
- },
- "media-typer": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
- "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=",
- "dev": true
- },
- "memory-fs": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.4.1.tgz",
- "integrity": "sha1-OpoguEYlI+RHz7x+i7gO1me/xVI=",
- "dev": true,
- "requires": {
- "errno": "^0.1.3",
- "readable-stream": "^2.0.1"
- }
- },
- "merge-descriptors": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz",
- "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=",
- "dev": true
- },
- "merge-source-map": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/merge-source-map/-/merge-source-map-1.1.0.tgz",
- "integrity": "sha512-Qkcp7P2ygktpMPh2mCQZaf3jhN6D3Z/qVZHSdWvQ+2Ef5HgRAPBO57A77+ENm0CPx2+1Ce/MYKi3ymqdfuqibw==",
- "dev": true,
- "requires": {
- "source-map": "^0.6.1"
- },
- "dependencies": {
- "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
- }
- }
- },
- "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
- },
- "merge2": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz",
- "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==",
- "dev": true
- },
- "methods": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
- "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=",
- "dev": true
- },
- "micromatch": {
- "version": "3.1.10",
- "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz",
- "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==",
- "dev": true,
- "requires": {
- "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"
- }
- },
- "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,
- "requires": {
- "bn.js": "^4.0.0",
- "brorand": "^1.0.1"
- },
- "dependencies": {
- "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
- }
- }
- },
- "mime": {
- "version": "2.6.0",
- "resolved": "https://registry.npmjs.org/mime/-/mime-2.6.0.tgz",
- "integrity": "sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg==",
- "dev": true
- },
- "mime-db": {
- "version": "1.51.0",
- "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.51.0.tgz",
- "integrity": "sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g==",
- "dev": true
- },
- "mime-types": {
- "version": "2.1.34",
- "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.34.tgz",
- "integrity": "sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A==",
- "dev": true,
- "requires": {
- "mime-db": "1.51.0"
- }
- },
- "mimic-fn": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
- "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
- "dev": true
- },
- "mini-css-extract-plugin": {
- "version": "0.9.0",
- "resolved": "https://registry.npmjs.org/mini-css-extract-plugin/-/mini-css-extract-plugin-0.9.0.tgz",
- "integrity": "sha512-lp3GeY7ygcgAmVIcRPBVhIkf8Us7FZjA+ILpal44qLdSu11wmjKQ3d9k15lfD7pO4esu9eUIAW7qiYIBppv40A==",
- "dev": true,
- "requires": {
- "loader-utils": "^1.1.0",
- "normalize-url": "1.9.1",
- "schema-utils": "^1.0.0",
- "webpack-sources": "^1.1.0"
- },
- "dependencies": {
- "schema-utils": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
- "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
- "dev": true,
- "requires": {
- "ajv": "^6.1.0",
- "ajv-errors": "^1.0.0",
- "ajv-keywords": "^3.1.0"
- }
- }
- }
- },
- "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
- },
- "minimalistic-crypto-utils": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz",
- "integrity": "sha1-9sAMHAsIIkblxNmd+4x8CDsrWCo=",
- "dev": true
- },
- "minimatch": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
- "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
- "dev": true,
- "requires": {
- "brace-expansion": "^1.1.7"
- }
- },
- "minimist": {
- "version": "1.2.5",
- "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
- "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
- "dev": true
- },
- "minipass": {
- "version": "3.1.6",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz",
- "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==",
- "dev": true,
- "requires": {
- "yallist": "^4.0.0"
- },
- "dependencies": {
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
- }
- }
- },
- "mississippi": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/mississippi/-/mississippi-3.0.0.tgz",
- "integrity": "sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA==",
- "dev": true,
- "requires": {
- "concat-stream": "^1.5.0",
- "duplexify": "^3.4.2",
- "end-of-stream": "^1.1.0",
- "flush-write-stream": "^1.0.0",
- "from2": "^2.1.0",
- "parallel-transform": "^1.1.0",
- "pump": "^3.0.0",
- "pumpify": "^1.3.3",
- "stream-each": "^1.1.0",
- "through2": "^2.0.0"
- }
- },
- "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,
- "requires": {
- "for-in": "^1.0.2",
- "is-extendable": "^1.0.1"
- }
- },
- "mkdirp": {
- "version": "0.5.5",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
- "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
- "dev": true,
- "requires": {
- "minimist": "^1.2.5"
- }
- },
- "moment": {
- "version": "2.29.1",
- "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.1.tgz",
- "integrity": "sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ=="
- },
- "monaco-editor": {
- "version": "0.30.1",
- "resolved": "https://registry.npmjs.org/monaco-editor/-/monaco-editor-0.30.1.tgz",
- "integrity": "sha512-B/y4+b2O5G2gjuxIFtCE2EkM17R2NM7/3F8x0qcPsqy4V83bitJTIO4TIeZpYlzu/xy6INiY/+84BEm6+7Cmzg=="
- },
- "monaco-editor-webpack-plugin": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/monaco-editor-webpack-plugin/-/monaco-editor-webpack-plugin-6.0.0.tgz",
- "integrity": "sha512-vC886Mzpd2AkSM35XLkfQMjH+Ohz6RISVwhAejDUzZDheJAiz6G34lky1vyO8fZ702v7IrcKmsGwL1rRFnwvUA==",
- "requires": {
- "loader-utils": "^2.0.0"
- },
- "dependencies": {
- "loader-utils": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz",
- "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==",
- "requires": {
- "big.js": "^5.2.2",
- "emojis-list": "^3.0.0",
- "json5": "^2.1.2"
- }
- }
- }
- },
- "move-concurrently": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz",
- "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=",
- "dev": true,
- "requires": {
- "aproba": "^1.1.1",
- "copy-concurrently": "^1.0.0",
- "fs-write-stream-atomic": "^1.0.8",
- "mkdirp": "^0.5.1",
- "rimraf": "^2.5.4",
- "run-queue": "^1.0.3"
- }
- },
- "ms": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
- "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
- "dev": true
- },
- "multicast-dns": {
- "version": "6.2.3",
- "resolved": "https://registry.npmjs.org/multicast-dns/-/multicast-dns-6.2.3.tgz",
- "integrity": "sha512-ji6J5enbMyGRHIAkAOu3WdV8nggqviKCEKtXcOqfphZZtQrmHKycfynJ2V7eVPUA4NhJ6V7Wf4TmGbTwKE9B6g==",
- "dev": true,
- "requires": {
- "dns-packet": "^1.3.1",
- "thunky": "^1.0.2"
- }
- },
- "multicast-dns-service-types": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/multicast-dns-service-types/-/multicast-dns-service-types-1.1.0.tgz",
- "integrity": "sha1-iZ8R2WhuXgXLkbNdXw5jt3PPyQE=",
- "dev": true
- },
- "mute-stream": {
- "version": "0.0.8",
- "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",
- "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==",
- "dev": true
- },
- "mz": {
- "version": "2.7.0",
- "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz",
- "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==",
- "dev": true,
- "requires": {
- "any-promise": "^1.0.0",
- "object-assign": "^4.0.1",
- "thenify-all": "^1.0.0"
- }
- },
- "nan": {
- "version": "2.15.0",
- "resolved": "https://registry.npmjs.org/nan/-/nan-2.15.0.tgz",
- "integrity": "sha512-8ZtvEnA2c5aYCZYd1cvgdnU6cqwixRoYg70xPLWUws5ORTa/lnw+u4amixRS/Ac5U5mQVgp9pnlSUnbNWFaWZQ==",
- "dev": true,
- "optional": true
- },
- "nanomatch": {
- "version": "1.2.13",
- "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz",
- "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==",
- "dev": true,
- "requires": {
- "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"
- }
- },
- "natural-compare": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
- "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
- "dev": true
- },
- "negotiator": {
- "version": "0.6.2",
- "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz",
- "integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==",
- "dev": true
- },
- "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
- },
- "nice-try": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz",
- "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==",
- "dev": true
- },
- "no-case": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/no-case/-/no-case-2.3.2.tgz",
- "integrity": "sha512-rmTZ9kz+f3rCvK2TD1Ue/oZlns7OGoIWP4fc3llxxRXlOkHKoWPPWJOfFYpITabSow43QJbRIoHQXtt10VldyQ==",
- "dev": true,
- "requires": {
- "lower-case": "^1.1.1"
- }
- },
- "node-forge": {
- "version": "0.10.0",
- "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz",
- "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==",
- "dev": true
- },
- "node-ipc": {
- "version": "9.2.1",
- "resolved": "https://registry.npmjs.org/node-ipc/-/node-ipc-9.2.1.tgz",
- "integrity": "sha512-mJzaM6O3xHf9VT8BULvJSbdVbmHUKRNOH7zDDkCrA1/T+CVjq2WVIDfLt0azZRXpgArJtl3rtmEozrbXPZ9GaQ==",
- "dev": true,
- "requires": {
- "event-pubsub": "4.3.0",
- "js-message": "1.0.7",
- "js-queue": "2.0.2"
- }
- },
- "node-libs-browser": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/node-libs-browser/-/node-libs-browser-2.2.1.tgz",
- "integrity": "sha512-h/zcD8H9kaDZ9ALUWwlBUDo6TKF8a7qBSCSEGfjTVIYeqsioSKaAX+BN7NgiMGp6iSIXZ3PxgCu8KS3b71YK5Q==",
- "dev": true,
- "requires": {
- "assert": "^1.1.1",
- "browserify-zlib": "^0.2.0",
- "buffer": "^4.3.0",
- "console-browserify": "^1.1.0",
- "constants-browserify": "^1.0.0",
- "crypto-browserify": "^3.11.0",
- "domain-browser": "^1.1.1",
- "events": "^3.0.0",
- "https-browserify": "^1.0.0",
- "os-browserify": "^0.3.0",
- "path-browserify": "0.0.1",
- "process": "^0.11.10",
- "punycode": "^1.2.4",
- "querystring-es3": "^0.2.0",
- "readable-stream": "^2.3.3",
- "stream-browserify": "^2.0.1",
- "stream-http": "^2.7.2",
- "string_decoder": "^1.0.0",
- "timers-browserify": "^2.0.4",
- "tty-browserify": "0.0.0",
- "url": "^0.11.0",
- "util": "^0.11.0",
- "vm-browserify": "^1.0.1"
- },
- "dependencies": {
- "punycode": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.4.1.tgz",
- "integrity": "sha1-wNWmOycYgArY4esPpSachN1BhF4=",
- "dev": true
- }
- }
- },
- "node-releases": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.4.tgz",
- "integrity": "sha512-gbMzqQtTtDz/00jQzZ21PQzdI9PyLYqUSvD0p3naOhX4odFji0ZxYdnVwPTxmSwkmxhcFImpozceidSG+AgoPQ==",
- "dev": true
- },
- "nopt": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz",
- "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==",
- "dev": true,
- "requires": {
- "abbrev": "1"
- }
- },
- "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,
- "requires": {
- "hosted-git-info": "^2.1.4",
- "resolve": "^1.10.0",
- "semver": "2 || 3 || 4 || 5",
- "validate-npm-package-license": "^3.0.1"
- },
- "dependencies": {
- "semver": {
- "version": "5.7.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
- "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
- "dev": true
- }
- }
- },
- "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
- },
- "normalize-range": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz",
- "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=",
- "dev": true
- },
- "normalize-url": {
- "version": "1.9.1",
- "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-1.9.1.tgz",
- "integrity": "sha1-LMDWazHqIwNkWENuNiDYWVTGbDw=",
- "dev": true,
- "requires": {
- "object-assign": "^4.0.1",
- "prepend-http": "^1.0.0",
- "query-string": "^4.1.0",
- "sort-keys": "^1.0.0"
- }
- },
- "npm-run-path": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-2.0.2.tgz",
- "integrity": "sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8=",
- "dev": true,
- "requires": {
- "path-key": "^2.0.0"
- }
- },
- "nprogress": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/nprogress/-/nprogress-0.2.0.tgz",
- "integrity": "sha1-y480xTIT2JVyP8urkH6UIq28r7E="
- },
- "nth-check": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.0.1.tgz",
- "integrity": "sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w==",
- "dev": true,
- "requires": {
- "boolbase": "^1.0.0"
- }
- },
- "null-loader": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/null-loader/-/null-loader-4.0.1.tgz",
- "integrity": "sha512-pxqVbi4U6N26lq+LmgIbB5XATP0VdZKOG25DhHi8btMmJJefGArFyDg1yc4U3hWCJbMqSrw0qyrz1UQX+qYXqg==",
- "dev": true,
- "requires": {
- "loader-utils": "^2.0.0",
- "schema-utils": "^3.0.0"
- },
- "dependencies": {
- "loader-utils": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz",
- "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==",
- "dev": true,
- "requires": {
- "big.js": "^5.2.2",
- "emojis-list": "^3.0.0",
- "json5": "^2.1.2"
- }
- },
- "schema-utils": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz",
- "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==",
- "dev": true,
- "requires": {
- "@types/json-schema": "^7.0.8",
- "ajv": "^6.12.5",
- "ajv-keywords": "^3.5.2"
- }
- }
- }
- },
- "num2fraction": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz",
- "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=",
- "dev": true
- },
- "oauth-sign": {
- "version": "0.9.0",
- "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz",
- "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==",
- "dev": true
- },
- "object-assign": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
- "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
- "dev": true
- },
- "object-copy": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/object-copy/-/object-copy-0.1.0.tgz",
- "integrity": "sha1-fn2Fi3gb18mRpBupde04EnVOmYw=",
- "dev": true,
- "requires": {
- "copy-descriptor": "^0.1.0",
- "define-property": "^0.2.5",
- "kind-of": "^3.0.3"
- },
- "dependencies": {
- "define-property": {
- "version": "0.2.5",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
- "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
- "dev": true,
- "requires": {
- "is-descriptor": "^0.1.0"
- }
- },
- "is-accessor-descriptor": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
- "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
- "dev": true,
- "requires": {
- "kind-of": "^3.0.2"
- }
- },
- "is-data-descriptor": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
- "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
- "dev": true,
- "requires": {
- "kind-of": "^3.0.2"
- }
- },
- "is-descriptor": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
- "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
- "dev": true,
- "requires": {
- "is-accessor-descriptor": "^0.1.6",
- "is-data-descriptor": "^0.1.4",
- "kind-of": "^5.0.0"
- },
- "dependencies": {
- "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
- }
- }
- },
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "^1.1.5"
- }
- }
- }
- },
- "object-hash": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-1.3.1.tgz",
- "integrity": "sha512-OSuu/pU4ENM9kmREg0BdNrUDIl1heYa4mBZacJc+vVWz4GtAwu7jO8s4AIt2aGRUTqxykpWzI3Oqnsm13tTMDA==",
- "dev": true
- },
- "object-inspect": {
- "version": "1.12.0",
- "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.0.tgz",
- "integrity": "sha512-Ho2z80bVIvJloH+YzRmpZVQe87+qASmBUKZDWgx9cu+KDrX2ZDH/3tMy+gXbZETVGs2M8YdxObOh7XAtim9Y0g==",
- "dev": true
- },
- "object-is": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.5.tgz",
- "integrity": "sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw==",
- "dev": true,
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3"
- }
- },
- "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
- },
- "object-visit": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/object-visit/-/object-visit-1.0.1.tgz",
- "integrity": "sha1-95xEk68MU3e1n+OdOV5BBC3QRbs=",
- "dev": true,
- "requires": {
- "isobject": "^3.0.0"
- }
- },
- "object.assign": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz",
- "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==",
- "dev": true,
- "requires": {
- "call-bind": "^1.0.0",
- "define-properties": "^1.1.3",
- "has-symbols": "^1.0.1",
- "object-keys": "^1.1.1"
- }
- },
- "object.getownpropertydescriptors": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.3.tgz",
- "integrity": "sha512-VdDoCwvJI4QdC6ndjpqFmoL3/+HxffFBbcJzKi5hwLLqqx3mdbedRpfZDdK0SrOSauj8X4GzBvnDZl4vTN7dOw==",
- "dev": true,
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3",
- "es-abstract": "^1.19.1"
- }
- },
- "object.pick": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz",
- "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=",
- "dev": true,
- "requires": {
- "isobject": "^3.0.1"
- }
- },
- "object.values": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.5.tgz",
- "integrity": "sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg==",
- "dev": true,
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3",
- "es-abstract": "^1.19.1"
- }
- },
- "obuf": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz",
- "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==",
- "dev": true
- },
- "on-finished": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz",
- "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=",
- "dev": true,
- "requires": {
- "ee-first": "1.1.1"
- }
- },
- "on-headers": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz",
- "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==",
- "dev": true
- },
- "once": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
- "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
- "dev": true,
- "requires": {
- "wrappy": "1"
- }
- },
- "onetime": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz",
- "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
- "dev": true,
- "requires": {
- "mimic-fn": "^2.1.0"
- }
- },
- "open": {
- "version": "6.4.0",
- "resolved": "https://registry.npmjs.org/open/-/open-6.4.0.tgz",
- "integrity": "sha512-IFenVPgF70fSm1keSd2iDBIDIBZkroLeuffXq+wKTzTJlBpesFWojV9lb8mzOfaAzM1sr7HQHuO0vtV0zYekGg==",
- "dev": true,
- "requires": {
- "is-wsl": "^1.1.0"
- },
- "dependencies": {
- "is-wsl": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz",
- "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=",
- "dev": true
- }
- }
- },
- "opener": {
- "version": "1.5.2",
- "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz",
- "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==",
- "dev": true
- },
- "opn": {
- "version": "5.5.0",
- "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz",
- "integrity": "sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA==",
- "dev": true,
- "requires": {
- "is-wsl": "^1.1.0"
- },
- "dependencies": {
- "is-wsl": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz",
- "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=",
- "dev": true
- }
- }
- },
- "optionator": {
- "version": "0.8.3",
- "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz",
- "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==",
- "dev": true,
- "requires": {
- "deep-is": "~0.1.3",
- "fast-levenshtein": "~2.0.6",
- "levn": "~0.3.0",
- "prelude-ls": "~1.1.2",
- "type-check": "~0.3.2",
- "word-wrap": "~1.2.3"
- }
- },
- "ora": {
- "version": "3.4.0",
- "resolved": "https://registry.npmjs.org/ora/-/ora-3.4.0.tgz",
- "integrity": "sha512-eNwHudNbO1folBP3JsZ19v9azXWtQZjICdr3Q0TDPIaeBQ3mXLrh54wM+er0+hSp+dWKf+Z8KM58CYzEyIYxYg==",
- "dev": true,
- "requires": {
- "chalk": "^2.4.2",
- "cli-cursor": "^2.1.0",
- "cli-spinners": "^2.0.0",
- "log-symbols": "^2.2.0",
- "strip-ansi": "^5.2.0",
- "wcwidth": "^1.0.1"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
- "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
- "dev": true
- },
- "cli-cursor": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz",
- "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=",
- "dev": true,
- "requires": {
- "restore-cursor": "^2.0.0"
- }
- },
- "mimic-fn": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz",
- "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==",
- "dev": true
- },
- "onetime": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz",
- "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=",
- "dev": true,
- "requires": {
- "mimic-fn": "^1.0.0"
- }
- },
- "restore-cursor": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz",
- "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=",
- "dev": true,
- "requires": {
- "onetime": "^2.0.0",
- "signal-exit": "^3.0.2"
- }
- },
- "strip-ansi": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
- "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
- "dev": true,
- "requires": {
- "ansi-regex": "^4.1.0"
- }
- }
- }
- },
- "original": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/original/-/original-1.0.2.tgz",
- "integrity": "sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==",
- "dev": true,
- "requires": {
- "url-parse": "^1.4.3"
- }
- },
- "os-browserify": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/os-browserify/-/os-browserify-0.3.0.tgz",
- "integrity": "sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc=",
- "dev": true
- },
- "os-homedir": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
- "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=",
- "dev": true
- },
- "os-tmpdir": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
- "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
- "dev": true
- },
- "p-finally": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz",
- "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=",
- "dev": true
- },
- "p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "dev": true,
- "requires": {
- "p-try": "^2.0.0"
- }
- },
- "p-locate": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
- "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
- "dev": true,
- "requires": {
- "p-limit": "^2.2.0"
- }
- },
- "p-map": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/p-map/-/p-map-2.1.0.tgz",
- "integrity": "sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw==",
- "dev": true
- },
- "p-retry": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-3.0.1.tgz",
- "integrity": "sha512-XE6G4+YTTkT2a0UWb2kjZe8xNwf8bIbnqpc/IS/idOBVhyves0mK5OJgeocjx7q5pvX/6m23xuzVPYT1uGM73w==",
- "dev": true,
- "requires": {
- "retry": "^0.12.0"
- }
- },
- "p-try": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
- "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
- "dev": true
- },
- "pako": {
- "version": "1.0.11",
- "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz",
- "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==",
- "dev": true
- },
- "papaparse": {
- "version": "5.3.2",
- "resolved": "https://registry.npmjs.org/papaparse/-/papaparse-5.3.2.tgz",
- "integrity": "sha512-6dNZu0Ki+gyV0eBsFKJhYr+MdQYAzFUGlBMNj3GNrmHxmz1lfRa24CjFObPXtjcetlOv5Ad299MhIK0znp3afw=="
- },
- "parallel-transform": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/parallel-transform/-/parallel-transform-1.2.0.tgz",
- "integrity": "sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==",
- "dev": true,
- "requires": {
- "cyclist": "^1.0.1",
- "inherits": "^2.0.3",
- "readable-stream": "^2.1.5"
- }
- },
- "param-case": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz",
- "integrity": "sha1-35T9jPZTHs915r75oIWPvHK+Ikc=",
- "dev": true,
- "requires": {
- "no-case": "^2.2.0"
- }
- },
- "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,
- "requires": {
- "callsites": "^3.0.0"
- },
- "dependencies": {
- "callsites": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz",
- "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==",
- "dev": true
- }
- }
- },
- "parse-asn1": {
- "version": "5.1.6",
- "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.6.tgz",
- "integrity": "sha512-RnZRo1EPU6JBnra2vGHj0yhp6ebyjBZpmUCLHWiFhxlzvBCCpAuZ7elsBp1PVAbQN0/04VD/19rfzlBSwLstMw==",
- "dev": true,
- "requires": {
- "asn1.js": "^5.2.0",
- "browserify-aes": "^1.0.0",
- "evp_bytestokey": "^1.0.0",
- "pbkdf2": "^3.0.3",
- "safe-buffer": "^5.1.1"
- }
- },
- "parse-json": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz",
- "integrity": "sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA=",
- "dev": true,
- "requires": {
- "error-ex": "^1.3.1",
- "json-parse-better-errors": "^1.0.1"
- }
- },
- "parse-passwd": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/parse-passwd/-/parse-passwd-1.0.0.tgz",
- "integrity": "sha1-bVuTSkVpk7I9N/QKOC1vFmao5cY=",
- "dev": true
- },
- "parse5": {
- "version": "5.1.1",
- "resolved": "https://registry.npmjs.org/parse5/-/parse5-5.1.1.tgz",
- "integrity": "sha512-ugq4DFI0Ptb+WWjAdOK16+u/nHfiIrcE+sh8kZMaM0WllQKLI9rOUq6c2b7cwPkXdzfQESqvoqK6ug7U/Yyzug==",
- "dev": true
- },
- "parse5-htmlparser2-tree-adapter": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-6.0.1.tgz",
- "integrity": "sha512-qPuWvbLgvDGilKc5BoicRovlT4MtYT6JfJyBOMDsKoiT+GiuP5qyrPCnR9HcPECIJJmZh5jRndyNThnhhb/vlA==",
- "dev": true,
- "requires": {
- "parse5": "^6.0.1"
- },
- "dependencies": {
- "parse5": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz",
- "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==",
- "dev": true
- }
- }
- },
- "parseurl": {
- "version": "1.3.3",
- "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz",
- "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==",
- "dev": true
- },
- "pascalcase": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/pascalcase/-/pascalcase-0.1.1.tgz",
- "integrity": "sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ=",
- "dev": true
- },
- "path-browserify": {
- "version": "0.0.1",
- "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz",
- "integrity": "sha512-BapA40NHICOS+USX9SN4tyhq+A2RrN/Ws5F0Z5aMHDp98Fl86lX8Oti8B7uN93L4Ifv4fHOEA+pQw87gmMO/lQ==",
- "dev": true
- },
- "path-dirname": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/path-dirname/-/path-dirname-1.0.2.tgz",
- "integrity": "sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA=",
- "dev": true
- },
- "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
- },
- "path-is-absolute": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
- "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
- "dev": true
- },
- "path-is-inside": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz",
- "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=",
- "dev": true
- },
- "path-key": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz",
- "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=",
- "dev": true
- },
- "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
- },
- "path-to-regexp": {
- "version": "0.1.7",
- "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
- "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=",
- "dev": true
- },
- "path-type": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz",
- "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==",
- "dev": true,
- "requires": {
- "pify": "^3.0.0"
- },
- "dependencies": {
- "pify": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
- "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=",
- "dev": true
- }
- }
- },
- "pbkdf2": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz",
- "integrity": "sha512-iuh7L6jA7JEGu2WxDwtQP1ddOpaJNC4KlDEFfdQajSGgGPNi4OyDc2R7QnbY2bR9QjBVGwgvTdNJZoE7RaxUMA==",
- "dev": true,
- "requires": {
- "create-hash": "^1.1.2",
- "create-hmac": "^1.1.4",
- "ripemd160": "^2.0.1",
- "safe-buffer": "^5.0.1",
- "sha.js": "^2.4.8"
- }
- },
- "performance-now": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz",
- "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=",
- "dev": true
- },
- "picocolors": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-0.2.1.tgz",
- "integrity": "sha512-cMlDqaLEqfSaW8Z7N5Jw+lyIW869EzT73/F5lhtY9cLGoVxSXznfgfXMO0Z5K0o0Q2TkTXq+0KFsdnSe3jDViA==",
- "dev": true
- },
- "picomatch": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
- "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
- "dev": true
- },
- "pify": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz",
- "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==",
- "dev": true
- },
- "pinkie": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz",
- "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=",
- "dev": true
- },
- "pinkie-promise": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz",
- "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=",
- "dev": true,
- "requires": {
- "pinkie": "^2.0.0"
- }
- },
- "pkg-dir": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz",
- "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==",
- "dev": true,
- "requires": {
- "find-up": "^4.0.0"
- }
- },
- "pnp-webpack-plugin": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/pnp-webpack-plugin/-/pnp-webpack-plugin-1.7.0.tgz",
- "integrity": "sha512-2Rb3vm+EXble/sMXNSu6eoBx8e79gKqhNq9F5ZWW6ERNCTE/Q0wQNne5541tE5vKjfM8hpNCYL+LGc1YTfI0dg==",
- "dev": true,
- "requires": {
- "ts-pnp": "^1.1.6"
- }
- },
- "portfinder": {
- "version": "1.0.28",
- "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.28.tgz",
- "integrity": "sha512-Se+2isanIcEqf2XMHjyUKskczxbPH7dQnlMjXX6+dybayyHvAf/TCgyMRlzf/B6QDhAEFOGes0pzRo3by4AbMA==",
- "dev": true,
- "requires": {
- "async": "^2.6.2",
- "debug": "^3.1.1",
- "mkdirp": "^0.5.5"
- },
- "dependencies": {
- "debug": {
- "version": "3.2.7",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
- "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
- "dev": true,
- "requires": {
- "ms": "^2.1.1"
- }
- }
- }
- },
- "posix-character-classes": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/posix-character-classes/-/posix-character-classes-0.1.1.tgz",
- "integrity": "sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=",
- "dev": true
- },
- "postcss": {
- "version": "7.0.39",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-7.0.39.tgz",
- "integrity": "sha512-yioayjNbHn6z1/Bywyb2Y4s3yvDAeXGOyxqD+LnVOinq6Mdmd++SW2wUNVzavyyHxd6+DxzWGIuosg6P1Rj8uA==",
- "dev": true,
- "requires": {
- "picocolors": "^0.2.1",
- "source-map": "^0.6.1"
- },
- "dependencies": {
- "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
- }
- }
- },
- "postcss-calc": {
- "version": "7.0.5",
- "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-7.0.5.tgz",
- "integrity": "sha512-1tKHutbGtLtEZF6PT4JSihCHfIVldU72mZ8SdZHIYriIZ9fh9k9aWSppaT8rHsyI3dX+KSR+W+Ix9BMY3AODrg==",
- "dev": true,
- "requires": {
- "postcss": "^7.0.27",
- "postcss-selector-parser": "^6.0.2",
- "postcss-value-parser": "^4.0.2"
- }
- },
- "postcss-colormin": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-4.0.3.tgz",
- "integrity": "sha512-WyQFAdDZpExQh32j0U0feWisZ0dmOtPl44qYmJKkq9xFWY3p+4qnRzCHeNrkeRhwPHz9bQ3mo0/yVkaply0MNw==",
- "dev": true,
- "requires": {
- "browserslist": "^4.0.0",
- "color": "^3.0.0",
- "has": "^1.0.0",
- "postcss": "^7.0.0",
- "postcss-value-parser": "^3.0.0"
- },
- "dependencies": {
- "postcss-value-parser": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
- "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
- "dev": true
- }
- }
- },
- "postcss-convert-values": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-4.0.1.tgz",
- "integrity": "sha512-Kisdo1y77KUC0Jmn0OXU/COOJbzM8cImvw1ZFsBgBgMgb1iL23Zs/LXRe3r+EZqM3vGYKdQ2YJVQ5VkJI+zEJQ==",
- "dev": true,
- "requires": {
- "postcss": "^7.0.0",
- "postcss-value-parser": "^3.0.0"
- },
- "dependencies": {
- "postcss-value-parser": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
- "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
- "dev": true
- }
- }
- },
- "postcss-discard-comments": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-4.0.2.tgz",
- "integrity": "sha512-RJutN259iuRf3IW7GZyLM5Sw4GLTOH8FmsXBnv8Ab/Tc2k4SR4qbV4DNbyyY4+Sjo362SyDmW2DQ7lBSChrpkg==",
- "dev": true,
- "requires": {
- "postcss": "^7.0.0"
- }
- },
- "postcss-discard-duplicates": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-4.0.2.tgz",
- "integrity": "sha512-ZNQfR1gPNAiXZhgENFfEglF93pciw0WxMkJeVmw8eF+JZBbMD7jp6C67GqJAXVZP2BWbOztKfbsdmMp/k8c6oQ==",
- "dev": true,
- "requires": {
- "postcss": "^7.0.0"
- }
- },
- "postcss-discard-empty": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-4.0.1.tgz",
- "integrity": "sha512-B9miTzbznhDjTfjvipfHoqbWKwd0Mj+/fL5s1QOz06wufguil+Xheo4XpOnc4NqKYBCNqqEzgPv2aPBIJLox0w==",
- "dev": true,
- "requires": {
- "postcss": "^7.0.0"
- }
- },
- "postcss-discard-overridden": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-4.0.1.tgz",
- "integrity": "sha512-IYY2bEDD7g1XM1IDEsUT4//iEYCxAmP5oDSFMVU/JVvT7gh+l4fmjciLqGgwjdWpQIdb0Che2VX00QObS5+cTg==",
- "dev": true,
- "requires": {
- "postcss": "^7.0.0"
- }
- },
- "postcss-load-config": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-2.1.2.tgz",
- "integrity": "sha512-/rDeGV6vMUo3mwJZmeHfEDvwnTKKqQ0S7OHUi/kJvvtx3aWtyWG2/0ZWnzCt2keEclwN6Tf0DST2v9kITdOKYw==",
- "dev": true,
- "requires": {
- "cosmiconfig": "^5.0.0",
- "import-cwd": "^2.0.0"
- }
- },
- "postcss-loader": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/postcss-loader/-/postcss-loader-3.0.0.tgz",
- "integrity": "sha512-cLWoDEY5OwHcAjDnkyRQzAXfs2jrKjXpO/HQFcc5b5u/r7aa471wdmChmwfnv7x2u840iat/wi0lQ5nbRgSkUA==",
- "dev": true,
- "requires": {
- "loader-utils": "^1.1.0",
- "postcss": "^7.0.0",
- "postcss-load-config": "^2.0.0",
- "schema-utils": "^1.0.0"
- },
- "dependencies": {
- "schema-utils": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
- "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
- "dev": true,
- "requires": {
- "ajv": "^6.1.0",
- "ajv-errors": "^1.0.0",
- "ajv-keywords": "^3.1.0"
- }
- }
- }
- },
- "postcss-merge-longhand": {
- "version": "4.0.11",
- "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-4.0.11.tgz",
- "integrity": "sha512-alx/zmoeXvJjp7L4mxEMjh8lxVlDFX1gqWHzaaQewwMZiVhLo42TEClKaeHbRf6J7j82ZOdTJ808RtN0ZOZwvw==",
- "dev": true,
- "requires": {
- "css-color-names": "0.0.4",
- "postcss": "^7.0.0",
- "postcss-value-parser": "^3.0.0",
- "stylehacks": "^4.0.0"
- },
- "dependencies": {
- "postcss-value-parser": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
- "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
- "dev": true
- }
- }
- },
- "postcss-merge-rules": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-4.0.3.tgz",
- "integrity": "sha512-U7e3r1SbvYzO0Jr3UT/zKBVgYYyhAz0aitvGIYOYK5CPmkNih+WDSsS5tvPrJ8YMQYlEMvsZIiqmn7HdFUaeEQ==",
- "dev": true,
- "requires": {
- "browserslist": "^4.0.0",
- "caniuse-api": "^3.0.0",
- "cssnano-util-same-parent": "^4.0.0",
- "postcss": "^7.0.0",
- "postcss-selector-parser": "^3.0.0",
- "vendors": "^1.0.0"
- },
- "dependencies": {
- "postcss-selector-parser": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz",
- "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==",
- "dev": true,
- "requires": {
- "dot-prop": "^5.2.0",
- "indexes-of": "^1.0.1",
- "uniq": "^1.0.1"
- }
- }
- }
- },
- "postcss-minify-font-values": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-4.0.2.tgz",
- "integrity": "sha512-j85oO6OnRU9zPf04+PZv1LYIYOprWm6IA6zkXkrJXyRveDEuQggG6tvoy8ir8ZwjLxLuGfNkCZEQG7zan+Hbtg==",
- "dev": true,
- "requires": {
- "postcss": "^7.0.0",
- "postcss-value-parser": "^3.0.0"
- },
- "dependencies": {
- "postcss-value-parser": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
- "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
- "dev": true
- }
- }
- },
- "postcss-minify-gradients": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-4.0.2.tgz",
- "integrity": "sha512-qKPfwlONdcf/AndP1U8SJ/uzIJtowHlMaSioKzebAXSG4iJthlWC9iSWznQcX4f66gIWX44RSA841HTHj3wK+Q==",
- "dev": true,
- "requires": {
- "cssnano-util-get-arguments": "^4.0.0",
- "is-color-stop": "^1.0.0",
- "postcss": "^7.0.0",
- "postcss-value-parser": "^3.0.0"
- },
- "dependencies": {
- "postcss-value-parser": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
- "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
- "dev": true
- }
- }
- },
- "postcss-minify-params": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-4.0.2.tgz",
- "integrity": "sha512-G7eWyzEx0xL4/wiBBJxJOz48zAKV2WG3iZOqVhPet/9geefm/Px5uo1fzlHu+DOjT+m0Mmiz3jkQzVHe6wxAWg==",
- "dev": true,
- "requires": {
- "alphanum-sort": "^1.0.0",
- "browserslist": "^4.0.0",
- "cssnano-util-get-arguments": "^4.0.0",
- "postcss": "^7.0.0",
- "postcss-value-parser": "^3.0.0",
- "uniqs": "^2.0.0"
- },
- "dependencies": {
- "postcss-value-parser": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
- "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
- "dev": true
- }
- }
- },
- "postcss-minify-selectors": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-4.0.2.tgz",
- "integrity": "sha512-D5S1iViljXBj9kflQo4YutWnJmwm8VvIsU1GeXJGiG9j8CIg9zs4voPMdQDUmIxetUOh60VilsNzCiAFTOqu3g==",
- "dev": true,
- "requires": {
- "alphanum-sort": "^1.0.0",
- "has": "^1.0.0",
- "postcss": "^7.0.0",
- "postcss-selector-parser": "^3.0.0"
- },
- "dependencies": {
- "postcss-selector-parser": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz",
- "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==",
- "dev": true,
- "requires": {
- "dot-prop": "^5.2.0",
- "indexes-of": "^1.0.1",
- "uniq": "^1.0.1"
- }
- }
- }
- },
- "postcss-modules-extract-imports": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-2.0.0.tgz",
- "integrity": "sha512-LaYLDNS4SG8Q5WAWqIJgdHPJrDDr/Lv775rMBFUbgjTz6j34lUznACHcdRWroPvXANP2Vj7yNK57vp9eFqzLWQ==",
- "dev": true,
- "requires": {
- "postcss": "^7.0.5"
- }
- },
- "postcss-modules-local-by-default": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-3.0.3.tgz",
- "integrity": "sha512-e3xDq+LotiGesympRlKNgaJ0PCzoUIdpH0dj47iWAui/kyTgh3CiAr1qP54uodmJhl6p9rN6BoNcdEDVJx9RDw==",
- "dev": true,
- "requires": {
- "icss-utils": "^4.1.1",
- "postcss": "^7.0.32",
- "postcss-selector-parser": "^6.0.2",
- "postcss-value-parser": "^4.1.0"
- }
- },
- "postcss-modules-scope": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-2.2.0.tgz",
- "integrity": "sha512-YyEgsTMRpNd+HmyC7H/mh3y+MeFWevy7V1evVhJWewmMbjDHIbZbOXICC2y+m1xI1UVfIT1HMW/O04Hxyu9oXQ==",
- "dev": true,
- "requires": {
- "postcss": "^7.0.6",
- "postcss-selector-parser": "^6.0.0"
- }
- },
- "postcss-modules-values": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-3.0.0.tgz",
- "integrity": "sha512-1//E5jCBrZ9DmRX+zCtmQtRSV6PV42Ix7Bzj9GbwJceduuf7IqP8MgeTXuRDHOWj2m0VzZD5+roFWDuU8RQjcg==",
- "dev": true,
- "requires": {
- "icss-utils": "^4.0.0",
- "postcss": "^7.0.6"
- }
- },
- "postcss-normalize-charset": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-4.0.1.tgz",
- "integrity": "sha512-gMXCrrlWh6G27U0hF3vNvR3w8I1s2wOBILvA87iNXaPvSNo5uZAMYsZG7XjCUf1eVxuPfyL4TJ7++SGZLc9A3g==",
- "dev": true,
- "requires": {
- "postcss": "^7.0.0"
- }
- },
- "postcss-normalize-display-values": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/postcss-normalize-display-values/-/postcss-normalize-display-values-4.0.2.tgz",
- "integrity": "sha512-3F2jcsaMW7+VtRMAqf/3m4cPFhPD3EFRgNs18u+k3lTJJlVe7d0YPO+bnwqo2xg8YiRpDXJI2u8A0wqJxMsQuQ==",
- "dev": true,
- "requires": {
- "cssnano-util-get-match": "^4.0.0",
- "postcss": "^7.0.0",
- "postcss-value-parser": "^3.0.0"
- },
- "dependencies": {
- "postcss-value-parser": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
- "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
- "dev": true
- }
- }
- },
- "postcss-normalize-positions": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/postcss-normalize-positions/-/postcss-normalize-positions-4.0.2.tgz",
- "integrity": "sha512-Dlf3/9AxpxE+NF1fJxYDeggi5WwV35MXGFnnoccP/9qDtFrTArZ0D0R+iKcg5WsUd8nUYMIl8yXDCtcrT8JrdA==",
- "dev": true,
- "requires": {
- "cssnano-util-get-arguments": "^4.0.0",
- "has": "^1.0.0",
- "postcss": "^7.0.0",
- "postcss-value-parser": "^3.0.0"
- },
- "dependencies": {
- "postcss-value-parser": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
- "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
- "dev": true
- }
- }
- },
- "postcss-normalize-repeat-style": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/postcss-normalize-repeat-style/-/postcss-normalize-repeat-style-4.0.2.tgz",
- "integrity": "sha512-qvigdYYMpSuoFs3Is/f5nHdRLJN/ITA7huIoCyqqENJe9PvPmLhNLMu7QTjPdtnVf6OcYYO5SHonx4+fbJE1+Q==",
- "dev": true,
- "requires": {
- "cssnano-util-get-arguments": "^4.0.0",
- "cssnano-util-get-match": "^4.0.0",
- "postcss": "^7.0.0",
- "postcss-value-parser": "^3.0.0"
- },
- "dependencies": {
- "postcss-value-parser": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
- "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
- "dev": true
- }
- }
- },
- "postcss-normalize-string": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/postcss-normalize-string/-/postcss-normalize-string-4.0.2.tgz",
- "integrity": "sha512-RrERod97Dnwqq49WNz8qo66ps0swYZDSb6rM57kN2J+aoyEAJfZ6bMx0sx/F9TIEX0xthPGCmeyiam/jXif0eA==",
- "dev": true,
- "requires": {
- "has": "^1.0.0",
- "postcss": "^7.0.0",
- "postcss-value-parser": "^3.0.0"
- },
- "dependencies": {
- "postcss-value-parser": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
- "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
- "dev": true
- }
- }
- },
- "postcss-normalize-timing-functions": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/postcss-normalize-timing-functions/-/postcss-normalize-timing-functions-4.0.2.tgz",
- "integrity": "sha512-acwJY95edP762e++00Ehq9L4sZCEcOPyaHwoaFOhIwWCDfik6YvqsYNxckee65JHLKzuNSSmAdxwD2Cud1Z54A==",
- "dev": true,
- "requires": {
- "cssnano-util-get-match": "^4.0.0",
- "postcss": "^7.0.0",
- "postcss-value-parser": "^3.0.0"
- },
- "dependencies": {
- "postcss-value-parser": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
- "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
- "dev": true
- }
- }
- },
- "postcss-normalize-unicode": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/postcss-normalize-unicode/-/postcss-normalize-unicode-4.0.1.tgz",
- "integrity": "sha512-od18Uq2wCYn+vZ/qCOeutvHjB5jm57ToxRaMeNuf0nWVHaP9Hua56QyMF6fs/4FSUnVIw0CBPsU0K4LnBPwYwg==",
- "dev": true,
- "requires": {
- "browserslist": "^4.0.0",
- "postcss": "^7.0.0",
- "postcss-value-parser": "^3.0.0"
- },
- "dependencies": {
- "postcss-value-parser": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
- "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
- "dev": true
- }
- }
- },
- "postcss-normalize-url": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-4.0.1.tgz",
- "integrity": "sha512-p5oVaF4+IHwu7VpMan/SSpmpYxcJMtkGppYf0VbdH5B6hN8YNmVyJLuY9FmLQTzY3fag5ESUUHDqM+heid0UVA==",
- "dev": true,
- "requires": {
- "is-absolute-url": "^2.0.0",
- "normalize-url": "^3.0.0",
- "postcss": "^7.0.0",
- "postcss-value-parser": "^3.0.0"
- },
- "dependencies": {
- "normalize-url": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-3.3.0.tgz",
- "integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg==",
- "dev": true
- },
- "postcss-value-parser": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
- "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
- "dev": true
- }
- }
- },
- "postcss-normalize-whitespace": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/postcss-normalize-whitespace/-/postcss-normalize-whitespace-4.0.2.tgz",
- "integrity": "sha512-tO8QIgrsI3p95r8fyqKV+ufKlSHh9hMJqACqbv2XknufqEDhDvbguXGBBqxw9nsQoXWf0qOqppziKJKHMD4GtA==",
- "dev": true,
- "requires": {
- "postcss": "^7.0.0",
- "postcss-value-parser": "^3.0.0"
- },
- "dependencies": {
- "postcss-value-parser": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
- "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
- "dev": true
- }
- }
- },
- "postcss-ordered-values": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-4.1.2.tgz",
- "integrity": "sha512-2fCObh5UanxvSxeXrtLtlwVThBvHn6MQcu4ksNT2tsaV2Fg76R2CV98W7wNSlX+5/pFwEyaDwKLLoEV7uRybAw==",
- "dev": true,
- "requires": {
- "cssnano-util-get-arguments": "^4.0.0",
- "postcss": "^7.0.0",
- "postcss-value-parser": "^3.0.0"
- },
- "dependencies": {
- "postcss-value-parser": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
- "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
- "dev": true
- }
- }
- },
- "postcss-reduce-initial": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-4.0.3.tgz",
- "integrity": "sha512-gKWmR5aUulSjbzOfD9AlJiHCGH6AEVLaM0AV+aSioxUDd16qXP1PCh8d1/BGVvpdWn8k/HiK7n6TjeoXN1F7DA==",
- "dev": true,
- "requires": {
- "browserslist": "^4.0.0",
- "caniuse-api": "^3.0.0",
- "has": "^1.0.0",
- "postcss": "^7.0.0"
- }
- },
- "postcss-reduce-transforms": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-4.0.2.tgz",
- "integrity": "sha512-EEVig1Q2QJ4ELpJXMZR8Vt5DQx8/mo+dGWSR7vWXqcob2gQLyQGsionYcGKATXvQzMPn6DSN1vTN7yFximdIAg==",
- "dev": true,
- "requires": {
- "cssnano-util-get-match": "^4.0.0",
- "has": "^1.0.0",
- "postcss": "^7.0.0",
- "postcss-value-parser": "^3.0.0"
- },
- "dependencies": {
- "postcss-value-parser": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
- "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
- "dev": true
- }
- }
- },
- "postcss-selector-parser": {
- "version": "6.0.8",
- "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.8.tgz",
- "integrity": "sha512-D5PG53d209Z1Uhcc0qAZ5U3t5HagH3cxu+WLZ22jt3gLUpXM4eXXfiO14jiDWST3NNooX/E8wISfOhZ9eIjGTQ==",
- "dev": true,
- "requires": {
- "cssesc": "^3.0.0",
- "util-deprecate": "^1.0.2"
- }
- },
- "postcss-svgo": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-4.0.3.tgz",
- "integrity": "sha512-NoRbrcMWTtUghzuKSoIm6XV+sJdvZ7GZSc3wdBN0W19FTtp2ko8NqLsgoh/m9CzNhU3KLPvQmjIwtaNFkaFTvw==",
- "dev": true,
- "requires": {
- "postcss": "^7.0.0",
- "postcss-value-parser": "^3.0.0",
- "svgo": "^1.0.0"
- },
- "dependencies": {
- "postcss-value-parser": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-3.3.1.tgz",
- "integrity": "sha512-pISE66AbVkp4fDQ7VHBwRNXzAAKJjw4Vw7nWI/+Q3vuly7SNfgYXvm6i5IgFylHGK5sP/xHAbB7N49OS4gWNyQ==",
- "dev": true
- }
- }
- },
- "postcss-unique-selectors": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-4.0.1.tgz",
- "integrity": "sha512-+JanVaryLo9QwZjKrmJgkI4Fn8SBgRO6WXQBJi7KiAVPlmxikB5Jzc4EvXMT2H0/m0RjrVVm9rGNhZddm/8Spg==",
- "dev": true,
- "requires": {
- "alphanum-sort": "^1.0.0",
- "postcss": "^7.0.0",
- "uniqs": "^2.0.0"
- }
- },
- "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==",
- "dev": true
- },
- "prelude-ls": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
- "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=",
- "dev": true
- },
- "prepend-http": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz",
- "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=",
- "dev": true
- },
- "prettier": {
- "version": "1.19.1",
- "resolved": "https://registry.npmjs.org/prettier/-/prettier-1.19.1.tgz",
- "integrity": "sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew==",
- "dev": true
- },
- "prettier-linter-helpers": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz",
- "integrity": "sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w==",
- "dev": true,
- "requires": {
- "fast-diff": "^1.1.2"
- }
- },
- "pretty": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/pretty/-/pretty-2.0.0.tgz",
- "integrity": "sha1-rbx5YLe7/iiaVX3F9zdhmiINBqU=",
- "dev": true,
- "requires": {
- "condense-newlines": "^0.2.1",
- "extend-shallow": "^2.0.1",
- "js-beautify": "^1.6.12"
- },
- "dependencies": {
- "extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
- "dev": true,
- "requires": {
- "is-extendable": "^0.1.0"
- }
- },
- "is-extendable": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
- "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=",
- "dev": true
- }
- }
- },
- "pretty-bytes": {
- "version": "5.6.0",
- "resolved": "https://registry.npmjs.org/pretty-bytes/-/pretty-bytes-5.6.0.tgz",
- "integrity": "sha512-FFw039TmrBqFK8ma/7OL3sDz/VytdtJr044/QUJtH0wK9lb9jLq9tJyIxUwtQJHwar2BqtiA4iCWSwo9JLkzFg==",
- "dev": true
- },
- "pretty-error": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/pretty-error/-/pretty-error-2.1.2.tgz",
- "integrity": "sha512-EY5oDzmsX5wvuynAByrmY0P0hcp+QpnAKbJng2A2MPjVKXCxrDSUkzghVJ4ZGPIv+JC4gX8fPUWscC0RtjsWGw==",
- "dev": true,
- "requires": {
- "lodash": "^4.17.20",
- "renderkid": "^2.0.4"
- }
- },
- "private": {
- "version": "0.1.8",
- "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz",
- "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==",
- "dev": true
- },
- "process": {
- "version": "0.11.10",
- "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz",
- "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=",
- "dev": true
- },
- "process-nextick-args": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
- "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==",
- "dev": true
- },
- "progress": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz",
- "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==",
- "dev": true
- },
- "promise-inflight": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz",
- "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=",
- "dev": true
- },
- "proto-list": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/proto-list/-/proto-list-1.2.4.tgz",
- "integrity": "sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk=",
- "dev": true
- },
- "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,
- "requires": {
- "forwarded": "0.2.0",
- "ipaddr.js": "1.9.1"
- }
- },
- "prr": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz",
- "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=",
- "dev": true
- },
- "pseudomap": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz",
- "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=",
- "dev": true
- },
- "psl": {
- "version": "1.8.0",
- "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz",
- "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==",
- "dev": true
- },
- "public-encrypt": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/public-encrypt/-/public-encrypt-4.0.3.tgz",
- "integrity": "sha512-zVpa8oKZSz5bTMTFClc1fQOnyyEzpl5ozpi1B5YcvBrdohMjH2rfsBtyXcuNuwjsDIXmBYlF2N5FlJYhR29t8Q==",
- "dev": true,
- "requires": {
- "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"
- },
- "dependencies": {
- "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
- }
- }
- },
- "pump": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz",
- "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==",
- "dev": true,
- "requires": {
- "end-of-stream": "^1.1.0",
- "once": "^1.3.1"
- }
- },
- "pumpify": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/pumpify/-/pumpify-1.5.1.tgz",
- "integrity": "sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ==",
- "dev": true,
- "requires": {
- "duplexify": "^3.6.0",
- "inherits": "^2.0.3",
- "pump": "^2.0.0"
- },
- "dependencies": {
- "pump": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/pump/-/pump-2.0.1.tgz",
- "integrity": "sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA==",
- "dev": true,
- "requires": {
- "end-of-stream": "^1.1.0",
- "once": "^1.3.1"
- }
- }
- }
- },
- "punycode": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz",
- "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==",
- "dev": true
- },
- "q": {
- "version": "1.5.1",
- "resolved": "https://registry.npmjs.org/q/-/q-1.5.1.tgz",
- "integrity": "sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc=",
- "dev": true
- },
- "qs": {
- "version": "6.5.3",
- "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz",
- "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==",
- "dev": true
- },
- "query-string": {
- "version": "4.3.4",
- "resolved": "https://registry.npmjs.org/query-string/-/query-string-4.3.4.tgz",
- "integrity": "sha1-u7aTucqRXCMlFbIosaArYJBD2+s=",
- "dev": true,
- "requires": {
- "object-assign": "^4.1.0",
- "strict-uri-encode": "^1.0.0"
- }
- },
- "querystring": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/querystring/-/querystring-0.2.0.tgz",
- "integrity": "sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA=",
- "dev": true
- },
- "querystring-es3": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/querystring-es3/-/querystring-es3-0.2.1.tgz",
- "integrity": "sha1-nsYfeQSYdXB9aUFFlv2Qek1xHnM=",
- "dev": true
- },
- "querystringify": {
- "version": "2.2.0",
- "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz",
- "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==",
- "dev": true
- },
- "randombytes": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz",
- "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==",
- "dev": true,
- "requires": {
- "safe-buffer": "^5.1.0"
- }
- },
- "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,
- "requires": {
- "randombytes": "^2.0.5",
- "safe-buffer": "^5.1.0"
- }
- },
- "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
- },
- "raw-body": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.2.tgz",
- "integrity": "sha512-RPMAFUJP19WIet/99ngh6Iv8fzAbqum4Li7AD6DtGaW2RpMB/11xDoalPiJMTbu6I3hkbMVkATvZrqb9EEqeeQ==",
- "dev": true,
- "requires": {
- "bytes": "3.1.1",
- "http-errors": "1.8.1",
- "iconv-lite": "0.4.24",
- "unpipe": "1.0.0"
- }
- },
- "read-pkg": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz",
- "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==",
- "dev": true,
- "requires": {
- "@types/normalize-package-data": "^2.4.0",
- "normalize-package-data": "^2.5.0",
- "parse-json": "^5.0.0",
- "type-fest": "^0.6.0"
- },
- "dependencies": {
- "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,
- "requires": {
- "@babel/code-frame": "^7.0.0",
- "error-ex": "^1.3.1",
- "json-parse-even-better-errors": "^2.3.0",
- "lines-and-columns": "^1.1.6"
- }
- },
- "type-fest": {
- "version": "0.6.0",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz",
- "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==",
- "dev": true
- }
- }
- },
- "readable-stream": {
- "version": "2.3.7",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
- "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==",
- "dev": true,
- "requires": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.3",
- "isarray": "~1.0.0",
- "process-nextick-args": "~2.0.0",
- "safe-buffer": "~5.1.1",
- "string_decoder": "~1.1.1",
- "util-deprecate": "~1.0.1"
- }
- },
- "readdirp": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz",
- "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==",
- "dev": true,
- "requires": {
- "picomatch": "^2.2.1"
- }
- },
- "rechoir": {
- "version": "0.6.2",
- "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz",
- "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=",
- "dev": true,
- "requires": {
- "resolve": "^1.1.6"
- }
- },
- "regenerate": {
- "version": "1.4.2",
- "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz",
- "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==",
- "dev": true
- },
- "regenerate-unicode-properties": {
- "version": "9.0.0",
- "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-9.0.0.tgz",
- "integrity": "sha512-3E12UeNSPfjrgwjkR81m5J7Aw/T55Tu7nUyZVQYCKEOs+2dkxEY+DpPtZzO4YruuiPb7NkYLVcyJC4+zCbk5pA==",
- "dev": true,
- "requires": {
- "regenerate": "^1.4.2"
- }
- },
- "regenerator-runtime": {
- "version": "0.13.9",
- "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz",
- "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==",
- "dev": true
- },
- "regenerator-transform": {
- "version": "0.14.5",
- "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz",
- "integrity": "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==",
- "dev": true,
- "requires": {
- "@babel/runtime": "^7.8.4"
- }
- },
- "regex-not": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz",
- "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==",
- "dev": true,
- "requires": {
- "extend-shallow": "^3.0.2",
- "safe-regex": "^1.1.0"
- }
- },
- "regexp.prototype.flags": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz",
- "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==",
- "dev": true,
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3"
- }
- },
- "regexpp": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz",
- "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==",
- "dev": true
- },
- "regexpu-core": {
- "version": "4.8.0",
- "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.8.0.tgz",
- "integrity": "sha512-1F6bYsoYiz6is+oz70NWur2Vlh9KWtswuRuzJOfeYUrfPX2o8n74AnUVaOGDbUqVGO9fNHu48/pjJO4sNVwsOg==",
- "dev": true,
- "requires": {
- "regenerate": "^1.4.2",
- "regenerate-unicode-properties": "^9.0.0",
- "regjsgen": "^0.5.2",
- "regjsparser": "^0.7.0",
- "unicode-match-property-ecmascript": "^2.0.0",
- "unicode-match-property-value-ecmascript": "^2.0.0"
- }
- },
- "register-service-worker": {
- "version": "1.7.2",
- "resolved": "https://registry.npmjs.org/register-service-worker/-/register-service-worker-1.7.2.tgz",
- "integrity": "sha512-CiD3ZSanZqcMPRhtfct5K9f7i3OLCcBBWsJjLh1gW9RO/nS94sVzY59iS+fgYBOBqaBpf4EzfqUF3j9IG+xo8A=="
- },
- "regjsgen": {
- "version": "0.5.2",
- "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz",
- "integrity": "sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==",
- "dev": true
- },
- "regjsparser": {
- "version": "0.7.0",
- "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.7.0.tgz",
- "integrity": "sha512-A4pcaORqmNMDVwUjWoTzuhwMGpP+NykpfqAsEgI1FSH/EzC7lrN5TMd+kN8YCovX+jMpu8eaqXgXPCa0g8FQNQ==",
- "dev": true,
- "requires": {
- "jsesc": "~0.5.0"
- },
- "dependencies": {
- "jsesc": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
- "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=",
- "dev": true
- }
- }
- },
- "relateurl": {
- "version": "0.2.7",
- "resolved": "https://registry.npmjs.org/relateurl/-/relateurl-0.2.7.tgz",
- "integrity": "sha1-VNvzd+UUQKypCkzSdGANP/LYiKk=",
- "dev": true
- },
- "remove-trailing-separator": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz",
- "integrity": "sha1-wkvOKig62tW8P1jg1IJJuSN52O8=",
- "dev": true
- },
- "renderkid": {
- "version": "2.0.7",
- "resolved": "https://registry.npmjs.org/renderkid/-/renderkid-2.0.7.tgz",
- "integrity": "sha512-oCcFyxaMrKsKcTY59qnCAtmDVSLfPbrv6A3tVbPdFMMrv5jaK10V6m40cKsoPNhAqN6rmHW9sswW4o3ruSrwUQ==",
- "dev": true,
- "requires": {
- "css-select": "^4.1.3",
- "dom-converter": "^0.2.0",
- "htmlparser2": "^6.1.0",
- "lodash": "^4.17.21",
- "strip-ansi": "^3.0.1"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
- "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
- "dev": true
- },
- "strip-ansi": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
- "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
- "dev": true,
- "requires": {
- "ansi-regex": "^2.0.0"
- }
- }
- }
- },
- "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
- },
- "repeat-string": {
- "version": "1.6.1",
- "resolved": "https://registry.npmjs.org/repeat-string/-/repeat-string-1.6.1.tgz",
- "integrity": "sha1-jcrkcOHIirwtYA//Sndihtp15jc=",
- "dev": true
- },
- "repeating": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz",
- "integrity": "sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo=",
- "dev": true,
- "requires": {
- "is-finite": "^1.0.0"
- }
- },
- "request": {
- "version": "2.88.2",
- "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz",
- "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==",
- "dev": true,
- "requires": {
- "aws-sign2": "~0.7.0",
- "aws4": "^1.8.0",
- "caseless": "~0.12.0",
- "combined-stream": "~1.0.6",
- "extend": "~3.0.2",
- "forever-agent": "~0.6.1",
- "form-data": "~2.3.2",
- "har-validator": "~5.1.3",
- "http-signature": "~1.2.0",
- "is-typedarray": "~1.0.0",
- "isstream": "~0.1.2",
- "json-stringify-safe": "~5.0.1",
- "mime-types": "~2.1.19",
- "oauth-sign": "~0.9.0",
- "performance-now": "^2.1.0",
- "qs": "~6.5.2",
- "safe-buffer": "^5.1.2",
- "tough-cookie": "~2.5.0",
- "tunnel-agent": "^0.6.0",
- "uuid": "^3.3.2"
- }
- },
- "require-directory": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
- "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=",
- "dev": true
- },
- "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
- },
- "requires-port": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/requires-port/-/requires-port-1.0.0.tgz",
- "integrity": "sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8=",
- "dev": true
- },
- "resolve": {
- "version": "1.21.0",
- "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.21.0.tgz",
- "integrity": "sha512-3wCbTpk5WJlyE4mSOtDLhqQmGFi0/TD9VPwmiolnk8U0wRgMEktqCXd3vy5buTO3tljvalNvKrjHEfrd2WpEKA==",
- "dev": true,
- "requires": {
- "is-core-module": "^2.8.0",
- "path-parse": "^1.0.7",
- "supports-preserve-symlinks-flag": "^1.0.0"
- }
- },
- "resolve-cwd": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz",
- "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=",
- "dev": true,
- "requires": {
- "resolve-from": "^3.0.0"
- }
- },
- "resolve-dir": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz",
- "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=",
- "dev": true,
- "requires": {
- "expand-tilde": "^2.0.0",
- "global-modules": "^1.0.0"
- },
- "dependencies": {
- "global-modules": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz",
- "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==",
- "dev": true,
- "requires": {
- "global-prefix": "^1.0.1",
- "is-windows": "^1.0.1",
- "resolve-dir": "^1.0.0"
- }
- },
- "global-prefix": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz",
- "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=",
- "dev": true,
- "requires": {
- "expand-tilde": "^2.0.2",
- "homedir-polyfill": "^1.0.1",
- "ini": "^1.3.4",
- "is-windows": "^1.0.1",
- "which": "^1.2.14"
- }
- }
- }
- },
- "resolve-from": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-3.0.0.tgz",
- "integrity": "sha1-six699nWiBvItuZTM17rywoYh0g=",
- "dev": true
- },
- "resolve-url": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz",
- "integrity": "sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo=",
- "dev": true
- },
- "restore-cursor": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
- "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==",
- "dev": true,
- "requires": {
- "onetime": "^5.1.0",
- "signal-exit": "^3.0.2"
- }
- },
- "ret": {
- "version": "0.1.15",
- "resolved": "https://registry.npmjs.org/ret/-/ret-0.1.15.tgz",
- "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==",
- "dev": true
- },
- "retry": {
- "version": "0.12.0",
- "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz",
- "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=",
- "dev": true
- },
- "rgb-regex": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/rgb-regex/-/rgb-regex-1.0.1.tgz",
- "integrity": "sha1-wODWiC3w4jviVKR16O3UGRX+rrE=",
- "dev": true
- },
- "rgba-regex": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/rgba-regex/-/rgba-regex-1.0.0.tgz",
- "integrity": "sha1-QzdOLiyglosO8VI0YLfXMP8i7rM=",
- "dev": true
- },
- "rimraf": {
- "version": "2.7.1",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz",
- "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==",
- "dev": true,
- "requires": {
- "glob": "^7.1.3"
- }
- },
- "ripemd160": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz",
- "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==",
- "dev": true,
- "requires": {
- "hash-base": "^3.0.0",
- "inherits": "^2.0.1"
- }
- },
- "run-async": {
- "version": "2.4.1",
- "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz",
- "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==",
- "dev": true
- },
- "run-queue": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz",
- "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=",
- "dev": true,
- "requires": {
- "aproba": "^1.1.1"
- }
- },
- "rxjs": {
- "version": "6.6.7",
- "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz",
- "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==",
- "dev": true,
- "requires": {
- "tslib": "^1.9.0"
- }
- },
- "safe-buffer": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
- "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
- "dev": true
- },
- "safe-regex": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/safe-regex/-/safe-regex-1.1.0.tgz",
- "integrity": "sha1-QKNmnzsHfR6UPURinhV91IAjvy4=",
- "dev": true,
- "requires": {
- "ret": "~0.1.10"
- }
- },
- "safer-buffer": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
- "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
- "dev": true
- },
- "sass": {
- "version": "1.52.3",
- "resolved": "https://registry.npmjs.org/sass/-/sass-1.52.3.tgz",
- "integrity": "sha512-LNNPJ9lafx+j1ArtA7GyEJm9eawXN8KlA1+5dF6IZyoONg1Tyo/g+muOsENWJH/2Q1FHbbV4UwliU0cXMa/VIA==",
- "dev": true,
- "requires": {
- "chokidar": ">=3.0.0 <4.0.0",
- "immutable": "^4.0.0",
- "source-map-js": ">=0.6.2 <2.0.0"
- }
- },
- "sass-loader": {
- "version": "8.0.2",
- "resolved": "https://registry.npmjs.org/sass-loader/-/sass-loader-8.0.2.tgz",
- "integrity": "sha512-7o4dbSK8/Ol2KflEmSco4jTjQoV988bM82P9CZdmo9hR3RLnvNc0ufMNdMrB0caq38JQ/FgF4/7RcbcfKzxoFQ==",
- "dev": true,
- "requires": {
- "clone-deep": "^4.0.1",
- "loader-utils": "^1.2.3",
- "neo-async": "^2.6.1",
- "schema-utils": "^2.6.1",
- "semver": "^6.3.0"
- }
- },
- "sax": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz",
- "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==",
- "dev": true
- },
- "schema-utils": {
- "version": "2.7.1",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz",
- "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==",
- "dev": true,
- "requires": {
- "@types/json-schema": "^7.0.5",
- "ajv": "^6.12.4",
- "ajv-keywords": "^3.5.2"
- }
- },
- "select-hose": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/select-hose/-/select-hose-2.0.0.tgz",
- "integrity": "sha1-Yl2GWPhlr0Psliv8N2o3NZpJlMo=",
- "dev": true
- },
- "selfsigned": {
- "version": "1.10.14",
- "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.14.tgz",
- "integrity": "sha512-lkjaiAye+wBZDCBsu5BGi0XiLRxeUlsGod5ZP924CRSEoGuZAw/f7y9RKu28rwTfiHVhdavhB0qH0INV6P1lEA==",
- "dev": true,
- "requires": {
- "node-forge": "^0.10.0"
- }
- },
- "semver": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz",
- "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==",
- "dev": true
- },
- "send": {
- "version": "0.17.2",
- "resolved": "https://registry.npmjs.org/send/-/send-0.17.2.tgz",
- "integrity": "sha512-UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww==",
- "dev": true,
- "requires": {
- "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.8.1",
- "mime": "1.6.0",
- "ms": "2.1.3",
- "on-finished": "~2.3.0",
- "range-parser": "~1.2.1",
- "statuses": "~1.5.0"
- },
- "dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- },
- "dependencies": {
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- }
- }
- },
- "mime": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
- "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==",
- "dev": true
- },
- "ms": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
- "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
- "dev": true
- }
- }
- },
- "serialize-javascript": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-4.0.0.tgz",
- "integrity": "sha512-GaNA54380uFefWghODBWEGisLZFj00nS5ACs6yHa9nLqlLpVLO8ChDGeKRjZnV4Nh4n0Qi7nhYZD/9fCPzEqkw==",
- "dev": true,
- "requires": {
- "randombytes": "^2.1.0"
- }
- },
- "serve-index": {
- "version": "1.9.1",
- "resolved": "https://registry.npmjs.org/serve-index/-/serve-index-1.9.1.tgz",
- "integrity": "sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=",
- "dev": true,
- "requires": {
- "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"
- },
- "dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "http-errors": {
- "version": "1.6.3",
- "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.6.3.tgz",
- "integrity": "sha1-i1VoC7S+KDoLW/TqLjhYC+HZMg0=",
- "dev": true,
- "requires": {
- "depd": "~1.1.2",
- "inherits": "2.0.3",
- "setprototypeof": "1.1.0",
- "statuses": ">= 1.4.0 < 2"
- }
- },
- "inherits": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
- "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
- "dev": true
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- },
- "setprototypeof": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz",
- "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==",
- "dev": true
- }
- }
- },
- "serve-static": {
- "version": "1.14.2",
- "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.2.tgz",
- "integrity": "sha512-+TMNA9AFxUEGuC0z2mevogSnn9MXKb4fa7ngeRMJaaGv8vTwnIEkKi+QGvPt33HSnf8pRS+WGM0EbMtCJLKMBQ==",
- "dev": true,
- "requires": {
- "encodeurl": "~1.0.2",
- "escape-html": "~1.0.3",
- "parseurl": "~1.3.3",
- "send": "0.17.2"
- }
- },
- "set-blocking": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
- "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=",
- "dev": true
- },
- "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==",
- "dev": true,
- "requires": {
- "extend-shallow": "^2.0.1",
- "is-extendable": "^0.1.1",
- "is-plain-object": "^2.0.3",
- "split-string": "^3.0.1"
- },
- "dependencies": {
- "extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
- "dev": true,
- "requires": {
- "is-extendable": "^0.1.0"
- }
- },
- "is-extendable": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
- "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=",
- "dev": true
- }
- }
- },
- "setimmediate": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/setimmediate/-/setimmediate-1.0.5.tgz",
- "integrity": "sha1-KQy7Iy4waULX1+qbg3Mqt4VvgoU=",
- "dev": true
- },
- "setprototypeof": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz",
- "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==",
- "dev": true
- },
- "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,
- "requires": {
- "inherits": "^2.0.1",
- "safe-buffer": "^5.0.1"
- }
- },
- "shallow-clone": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz",
- "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==",
- "dev": true,
- "requires": {
- "kind-of": "^6.0.2"
- }
- },
- "shebang-command": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
- "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=",
- "dev": true,
- "requires": {
- "shebang-regex": "^1.0.0"
- }
- },
- "shebang-regex": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
- "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=",
- "dev": true
- },
- "shell-quote": {
- "version": "1.7.3",
- "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.3.tgz",
- "integrity": "sha512-Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw==",
- "dev": true
- },
- "shelljs": {
- "version": "0.8.5",
- "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.8.5.tgz",
- "integrity": "sha512-TiwcRcrkhHvbrZbnRcFYMLl30Dfov3HKqzp5tO5b4pt6G/SezKcYhmDg15zXVBswHmctSAQKznqNW2LO5tTDow==",
- "dev": true,
- "requires": {
- "glob": "^7.0.0",
- "interpret": "^1.0.0",
- "rechoir": "^0.6.2"
- }
- },
- "shvl": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/shvl/-/shvl-2.0.3.tgz",
- "integrity": "sha512-V7C6S9Hlol6SzOJPnQ7qzOVEWUQImt3BNmmzh40wObhla3XOYMe4gGiYzLrJd5TFa+cI2f9LKIRJTTKZSTbWgw=="
- },
- "side-channel": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
- "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==",
- "dev": true,
- "requires": {
- "call-bind": "^1.0.0",
- "get-intrinsic": "^1.0.2",
- "object-inspect": "^1.9.0"
- }
- },
- "sigmund": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/sigmund/-/sigmund-1.0.1.tgz",
- "integrity": "sha1-P/IfGYytIXX587eBhT/ZTQ0ZtZA=",
- "dev": true
- },
- "signal-exit": {
- "version": "3.0.6",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.6.tgz",
- "integrity": "sha512-sDl4qMFpijcGw22U5w63KmD3cZJfBuFlVNbVMKje2keoKML7X2UzWbc4XrmEbDwg0NXJc3yv4/ox7b+JWb57kQ==",
- "dev": true
- },
- "signature_pad": {
- "version": "3.0.0-beta.4",
- "resolved": "https://registry.npmjs.org/signature_pad/-/signature_pad-3.0.0-beta.4.tgz",
- "integrity": "sha512-cOf2NhVuTiuNqe2X/ycEmizvCDXk0DoemhsEpnkcGnA4kS5iJYTCqZ9As7tFBbsch45Q1EdX61833+6sjJ8rrw=="
- },
- "simple-swizzle": {
- "version": "0.2.2",
- "resolved": "https://registry.npmjs.org/simple-swizzle/-/simple-swizzle-0.2.2.tgz",
- "integrity": "sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo=",
- "dev": true,
- "requires": {
- "is-arrayish": "^0.3.1"
- },
- "dependencies": {
- "is-arrayish": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.3.2.tgz",
- "integrity": "sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==",
- "dev": true
- }
- }
- },
- "slash": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz",
- "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=",
- "dev": true
- },
- "slice-ansi": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz",
- "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==",
- "dev": true,
- "requires": {
- "ansi-styles": "^3.2.0",
- "astral-regex": "^1.0.0",
- "is-fullwidth-code-point": "^2.0.0"
- },
- "dependencies": {
- "is-fullwidth-code-point": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
- "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
- "dev": true
- }
- }
- },
- "snapdragon": {
- "version": "0.8.2",
- "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz",
- "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==",
- "dev": true,
- "requires": {
- "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"
- },
- "dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "define-property": {
- "version": "0.2.5",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
- "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
- "dev": true,
- "requires": {
- "is-descriptor": "^0.1.0"
- }
- },
- "extend-shallow": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz",
- "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=",
- "dev": true,
- "requires": {
- "is-extendable": "^0.1.0"
- }
- },
- "is-accessor-descriptor": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
- "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
- "dev": true,
- "requires": {
- "kind-of": "^3.0.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "^1.1.5"
- }
- }
- }
- },
- "is-data-descriptor": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
- "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
- "dev": true,
- "requires": {
- "kind-of": "^3.0.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "^1.1.5"
- }
- }
- }
- },
- "is-descriptor": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
- "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
- "dev": true,
- "requires": {
- "is-accessor-descriptor": "^0.1.6",
- "is-data-descriptor": "^0.1.4",
- "kind-of": "^5.0.0"
- }
- },
- "is-extendable": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
- "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=",
- "dev": true
- },
- "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
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
- "dev": true
- }
- }
- },
- "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==",
- "dev": true,
- "requires": {
- "define-property": "^1.0.0",
- "isobject": "^3.0.0",
- "snapdragon-util": "^3.0.1"
- },
- "dependencies": {
- "define-property": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz",
- "integrity": "sha1-dp66rz9KY6rTr56NMEybvnm/sOY=",
- "dev": true,
- "requires": {
- "is-descriptor": "^1.0.0"
- }
- }
- }
- },
- "snapdragon-util": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz",
- "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==",
- "dev": true,
- "requires": {
- "kind-of": "^3.2.0"
- },
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "^1.1.5"
- }
- }
- }
- },
- "sockjs": {
- "version": "0.3.24",
- "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.24.tgz",
- "integrity": "sha512-GJgLTZ7vYb/JtPSSZ10hsOYIvEYsjbNU+zPdIHcUaWVNUEPivzxku31865sSSud0Da0W4lEeOPlmw93zLQchuQ==",
- "dev": true,
- "requires": {
- "faye-websocket": "^0.11.3",
- "uuid": "^8.3.2",
- "websocket-driver": "^0.7.4"
- },
- "dependencies": {
- "uuid": {
- "version": "8.3.2",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz",
- "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==",
- "dev": true
- }
- }
- },
- "sockjs-client": {
- "version": "1.5.2",
- "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.5.2.tgz",
- "integrity": "sha512-ZzRxPBISQE7RpzlH4tKJMQbHM9pabHluk0WBaxAQ+wm/UieeBVBou0p4wVnSQGN9QmpAZygQ0cDIypWuqOFmFQ==",
- "dev": true,
- "requires": {
- "debug": "^3.2.6",
- "eventsource": "^1.0.7",
- "faye-websocket": "^0.11.3",
- "inherits": "^2.0.4",
- "json3": "^3.3.3",
- "url-parse": "^1.5.3"
- },
- "dependencies": {
- "debug": {
- "version": "3.2.7",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz",
- "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==",
- "dev": true,
- "requires": {
- "ms": "^2.1.1"
- }
- }
- }
- },
- "sort-keys": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz",
- "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=",
- "dev": true,
- "requires": {
- "is-plain-obj": "^1.0.0"
- },
- "dependencies": {
- "is-plain-obj": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz",
- "integrity": "sha1-caUMhCnfync8kqOQpKA7OfzVHT4=",
- "dev": true
- }
- }
- },
- "source-list-map": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz",
- "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==",
- "dev": true
- },
- "source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=",
- "dev": true
- },
- "source-map-js": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.0.1.tgz",
- "integrity": "sha512-4+TN2b3tqOCd/kaGRJ/sTYA0tR0mdXx26ipdolxcwtJVqEnqNYvlCAt1q3ypy4QMlYus+Zh34RNtYLoq2oQ4IA==",
- "dev": true
- },
- "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==",
- "dev": true,
- "requires": {
- "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"
- }
- },
- "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==",
- "dev": true,
- "requires": {
- "source-map": "^0.5.6"
- }
- },
- "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==",
- "dev": true
- },
- "spdx-correct": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz",
- "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==",
- "dev": true,
- "requires": {
- "spdx-expression-parse": "^3.0.0",
- "spdx-license-ids": "^3.0.0"
- }
- },
- "spdx-exceptions": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz",
- "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==",
- "dev": true
- },
- "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==",
- "dev": true,
- "requires": {
- "spdx-exceptions": "^2.1.0",
- "spdx-license-ids": "^3.0.0"
- }
- },
- "spdx-license-ids": {
- "version": "3.0.11",
- "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.11.tgz",
- "integrity": "sha512-Ctl2BrFiM0X3MANYgj3CkygxhRmr9mi6xhejbdO960nF6EDJApTYpn0BQnDKlnNBULKiCN1n3w9EBkHK8ZWg+g==",
- "dev": true
- },
- "spdy": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz",
- "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==",
- "dev": true,
- "requires": {
- "debug": "^4.1.0",
- "handle-thing": "^2.0.0",
- "http-deceiver": "^1.2.7",
- "select-hose": "^2.0.0",
- "spdy-transport": "^3.0.0"
- }
- },
- "spdy-transport": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/spdy-transport/-/spdy-transport-3.0.0.tgz",
- "integrity": "sha512-hsLVFE5SjA6TCisWeJXFKniGGOpBgMLmerfO2aCyCU5s7nJ/rpAepqmFifv/GCbSbueEeAJJnmSQ2rKC/g8Fcw==",
- "dev": true,
- "requires": {
- "debug": "^4.1.0",
- "detect-node": "^2.0.4",
- "hpack.js": "^2.1.6",
- "obuf": "^1.1.2",
- "readable-stream": "^3.0.6",
- "wbuf": "^1.7.3"
- },
- "dependencies": {
- "readable-stream": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
- "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
- "dev": true,
- "requires": {
- "inherits": "^2.0.3",
- "string_decoder": "^1.1.1",
- "util-deprecate": "^1.0.1"
- }
- }
- }
- },
- "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==",
- "dev": true,
- "requires": {
- "extend-shallow": "^3.0.0"
- }
- },
- "sprintf-js": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
- "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
- "dev": true
- },
- "sshpk": {
- "version": "1.17.0",
- "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.17.0.tgz",
- "integrity": "sha512-/9HIEs1ZXGhSPE8X6Ccm7Nam1z8KcoCqPdI7ecm1N33EzAetWahvQWVqLZtaZQ+IDKX4IyA2o0gBzqIMkAagHQ==",
- "dev": true,
- "requires": {
- "asn1": "~0.2.3",
- "assert-plus": "^1.0.0",
- "bcrypt-pbkdf": "^1.0.0",
- "dashdash": "^1.12.0",
- "ecc-jsbn": "~0.1.1",
- "getpass": "^0.1.1",
- "jsbn": "~0.1.0",
- "safer-buffer": "^2.0.2",
- "tweetnacl": "~0.14.0"
- }
- },
- "ssri": {
- "version": "8.0.1",
- "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz",
- "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==",
- "dev": true,
- "requires": {
- "minipass": "^3.1.1"
- }
- },
- "stable": {
- "version": "0.1.8",
- "resolved": "https://registry.npmjs.org/stable/-/stable-0.1.8.tgz",
- "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==",
- "dev": true
- },
- "stackframe": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/stackframe/-/stackframe-1.2.0.tgz",
- "integrity": "sha512-GrdeshiRmS1YLMYgzF16olf2jJ/IzxXY9lhKOskuVziubpTYcYqyOwYeJKzQkwy7uN0fYSsbsC4RQaXf9LCrYA==",
- "dev": true
- },
- "static-extend": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/static-extend/-/static-extend-0.1.2.tgz",
- "integrity": "sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY=",
- "dev": true,
- "requires": {
- "define-property": "^0.2.5",
- "object-copy": "^0.1.0"
- },
- "dependencies": {
- "define-property": {
- "version": "0.2.5",
- "resolved": "https://registry.npmjs.org/define-property/-/define-property-0.2.5.tgz",
- "integrity": "sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY=",
- "dev": true,
- "requires": {
- "is-descriptor": "^0.1.0"
- }
- },
- "is-accessor-descriptor": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz",
- "integrity": "sha1-qeEss66Nh2cn7u84Q/igiXtcmNY=",
- "dev": true,
- "requires": {
- "kind-of": "^3.0.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "^1.1.5"
- }
- }
- }
- },
- "is-data-descriptor": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz",
- "integrity": "sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y=",
- "dev": true,
- "requires": {
- "kind-of": "^3.0.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "^1.1.5"
- }
- }
- }
- },
- "is-descriptor": {
- "version": "0.1.6",
- "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz",
- "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==",
- "dev": true,
- "requires": {
- "is-accessor-descriptor": "^0.1.6",
- "is-data-descriptor": "^0.1.4",
- "kind-of": "^5.0.0"
- }
- },
- "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
- }
- }
- },
- "statuses": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz",
- "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=",
- "dev": true
- },
- "stream-browserify": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/stream-browserify/-/stream-browserify-2.0.2.tgz",
- "integrity": "sha512-nX6hmklHs/gr2FuxYDltq8fJA1GDlxKQCz8O/IM4atRqBH8OORmBNgfvW5gG10GT/qQ9u0CzIvr2X5Pkt6ntqg==",
- "dev": true,
- "requires": {
- "inherits": "~2.0.1",
- "readable-stream": "^2.0.2"
- }
- },
- "stream-each": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/stream-each/-/stream-each-1.2.3.tgz",
- "integrity": "sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw==",
- "dev": true,
- "requires": {
- "end-of-stream": "^1.1.0",
- "stream-shift": "^1.0.0"
- }
- },
- "stream-http": {
- "version": "2.8.3",
- "resolved": "https://registry.npmjs.org/stream-http/-/stream-http-2.8.3.tgz",
- "integrity": "sha512-+TSkfINHDo4J+ZobQLWiMouQYB+UVYFttRA94FpEzzJ7ZdqcL4uUUQ7WkdkI4DSozGmgBUE/a47L+38PenXhUw==",
- "dev": true,
- "requires": {
- "builtin-status-codes": "^3.0.0",
- "inherits": "^2.0.1",
- "readable-stream": "^2.3.6",
- "to-arraybuffer": "^1.0.0",
- "xtend": "^4.0.0"
- }
- },
- "stream-shift": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz",
- "integrity": "sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ==",
- "dev": true
- },
- "strict-uri-encode": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz",
- "integrity": "sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM=",
- "dev": true
- },
- "string-width": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
- "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
- "dev": true,
- "requires": {
- "emoji-regex": "^8.0.0",
- "is-fullwidth-code-point": "^3.0.0",
- "strip-ansi": "^6.0.1"
- }
- },
- "string.prototype.trimend": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz",
- "integrity": "sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==",
- "dev": true,
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3"
- }
- },
- "string.prototype.trimstart": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz",
- "integrity": "sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==",
- "dev": true,
- "requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.1.3"
- }
- },
- "string_decoder": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
- "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
- "dev": true,
- "requires": {
- "safe-buffer": "~5.1.0"
- }
- },
- "stringify-object": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/stringify-object/-/stringify-object-3.3.0.tgz",
- "integrity": "sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==",
- "dev": true,
- "requires": {
- "get-own-enumerable-property-symbols": "^3.0.0",
- "is-obj": "^1.0.1",
- "is-regexp": "^1.0.0"
- }
- },
- "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,
- "requires": {
- "ansi-regex": "^5.0.1"
- }
- },
- "strip-comments": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/strip-comments/-/strip-comments-1.0.2.tgz",
- "integrity": "sha512-kL97alc47hoyIQSV165tTt9rG5dn4w1dNnBhOQ3bOU1Nc1hel09jnXANaHJ7vzHLd4Ju8kseDGzlev96pghLFw==",
- "dev": true,
- "requires": {
- "babel-extract-comments": "^1.0.0",
- "babel-plugin-transform-object-rest-spread": "^6.26.0"
- }
- },
- "strip-eof": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz",
- "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=",
- "dev": true
- },
- "strip-final-newline": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz",
- "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==",
- "dev": true
- },
- "strip-indent": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-2.0.0.tgz",
- "integrity": "sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g=",
- "dev": true
- },
- "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
- },
- "stylehacks": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/stylehacks/-/stylehacks-4.0.3.tgz",
- "integrity": "sha512-7GlLk9JwlElY4Y6a/rmbH2MhVlTyVmiJd1PfTCqFaIBEGMYNsrO/v3SeGTdhBThLg4Z+NbOk/qFMwCa+J+3p/g==",
- "dev": true,
- "requires": {
- "browserslist": "^4.0.0",
- "postcss": "^7.0.0",
- "postcss-selector-parser": "^3.0.0"
- },
- "dependencies": {
- "postcss-selector-parser": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-3.1.2.tgz",
- "integrity": "sha512-h7fJ/5uWuRVyOtkO45pnt1Ih40CEleeyCHzipqAZO2e5H20g25Y48uYnFUiShvY4rZWNJ/Bib/KVPmanaCtOhA==",
- "dev": true,
- "requires": {
- "dot-prop": "^5.2.0",
- "indexes-of": "^1.0.1",
- "uniq": "^1.0.1"
- }
- }
- }
- },
- "supports-color": {
- "version": "5.5.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
- "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
- "dev": true,
- "requires": {
- "has-flag": "^3.0.0"
- }
- },
- "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
- },
- "svg-tags": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/svg-tags/-/svg-tags-1.0.0.tgz",
- "integrity": "sha1-WPcc7jvVGbWdSyqEO2x95krAR2Q=",
- "dev": true
- },
- "svgo": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/svgo/-/svgo-1.3.2.tgz",
- "integrity": "sha512-yhy/sQYxR5BkC98CY7o31VGsg014AKLEPxdfhora76l36hD9Rdy5NZA/Ocn6yayNPgSamYdtX2rFJdcv07AYVw==",
- "dev": true,
- "requires": {
- "chalk": "^2.4.1",
- "coa": "^2.0.2",
- "css-select": "^2.0.0",
- "css-select-base-adapter": "^0.1.1",
- "css-tree": "1.0.0-alpha.37",
- "csso": "^4.0.2",
- "js-yaml": "^3.13.1",
- "mkdirp": "~0.5.1",
- "object.values": "^1.1.0",
- "sax": "~1.2.4",
- "stable": "^0.1.8",
- "unquote": "~1.1.1",
- "util.promisify": "~1.0.0"
- },
- "dependencies": {
- "css-select": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/css-select/-/css-select-2.1.0.tgz",
- "integrity": "sha512-Dqk7LQKpwLoH3VovzZnkzegqNSuAziQyNZUcrdDM401iY+R5NkGBXGmtO05/yaXQziALuPogeG0b7UAgjnTJTQ==",
- "dev": true,
- "requires": {
- "boolbase": "^1.0.0",
- "css-what": "^3.2.1",
- "domutils": "^1.7.0",
- "nth-check": "^1.0.2"
- }
- },
- "css-what": {
- "version": "3.4.2",
- "resolved": "https://registry.npmjs.org/css-what/-/css-what-3.4.2.tgz",
- "integrity": "sha512-ACUm3L0/jiZTqfzRM3Hi9Q8eZqd6IK37mMWPLz9PJxkLWllYeRf+EHUSHYEtFop2Eqytaq1FizFVh7XfBnXCDQ==",
- "dev": true
- },
- "dom-serializer": {
- "version": "0.2.2",
- "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.2.2.tgz",
- "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==",
- "dev": true,
- "requires": {
- "domelementtype": "^2.0.1",
- "entities": "^2.0.0"
- }
- },
- "domutils": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.7.0.tgz",
- "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==",
- "dev": true,
- "requires": {
- "dom-serializer": "0",
- "domelementtype": "1"
- },
- "dependencies": {
- "domelementtype": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz",
- "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==",
- "dev": true
- }
- }
- },
- "nth-check": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz",
- "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==",
- "dev": true,
- "requires": {
- "boolbase": "~1.0.0"
- }
- }
- }
- },
- "table": {
- "version": "5.4.6",
- "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz",
- "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==",
- "dev": true,
- "requires": {
- "ajv": "^6.10.2",
- "lodash": "^4.17.14",
- "slice-ansi": "^2.1.0",
- "string-width": "^3.0.0"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
- "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
- "dev": true
- },
- "emoji-regex": {
- "version": "7.0.3",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
- "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
- "dev": true
- },
- "is-fullwidth-code-point": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
- "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
- "dev": true
- },
- "string-width": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
- "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
- "dev": true,
- "requires": {
- "emoji-regex": "^7.0.1",
- "is-fullwidth-code-point": "^2.0.0",
- "strip-ansi": "^5.1.0"
- }
- },
- "strip-ansi": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
- "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
- "dev": true,
- "requires": {
- "ansi-regex": "^4.1.0"
- }
- }
- }
- },
- "tapable": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz",
- "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==",
- "dev": true
- },
- "terser": {
- "version": "4.8.0",
- "resolved": "https://registry.npmjs.org/terser/-/terser-4.8.0.tgz",
- "integrity": "sha512-EAPipTNeWsb/3wLPeup1tVPaXfIaU68xMnVdPafIL1TV05OhASArYyIfFvnvJCNrR2NIOvDVNNTFRa+Re2MWyw==",
- "dev": true,
- "requires": {
- "commander": "^2.20.0",
- "source-map": "~0.6.1",
- "source-map-support": "~0.5.12"
- },
- "dependencies": {
- "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
- },
- "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
- },
- "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,
- "requires": {
- "buffer-from": "^1.0.0",
- "source-map": "^0.6.0"
- }
- }
- }
- },
- "terser-webpack-plugin": {
- "version": "1.4.5",
- "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-1.4.5.tgz",
- "integrity": "sha512-04Rfe496lN8EYruwi6oPQkG0vo8C+HT49X687FZnpPF0qMAIHONI6HEXYPKDOE8e5HjXTyKfqRd/agHtH0kOtw==",
- "dev": true,
- "requires": {
- "cacache": "^12.0.2",
- "find-cache-dir": "^2.1.0",
- "is-wsl": "^1.1.0",
- "schema-utils": "^1.0.0",
- "serialize-javascript": "^4.0.0",
- "source-map": "^0.6.1",
- "terser": "^4.1.2",
- "webpack-sources": "^1.4.0",
- "worker-farm": "^1.7.0"
- },
- "dependencies": {
- "find-cache-dir": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-2.1.0.tgz",
- "integrity": "sha512-Tq6PixE0w/VMFfCgbONnkiQIVol/JJL7nRMi20fqzA4NRs9AfeqMGeRdPi3wIhYkxjeBaWh2rxwapn5Tu3IqOQ==",
- "dev": true,
- "requires": {
- "commondir": "^1.0.1",
- "make-dir": "^2.0.0",
- "pkg-dir": "^3.0.0"
- }
- },
- "find-up": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
- "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
- "dev": true,
- "requires": {
- "locate-path": "^3.0.0"
- }
- },
- "is-wsl": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz",
- "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=",
- "dev": true
- },
- "locate-path": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
- "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
- "dev": true,
- "requires": {
- "p-locate": "^3.0.0",
- "path-exists": "^3.0.0"
- }
- },
- "make-dir": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz",
- "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==",
- "dev": true,
- "requires": {
- "pify": "^4.0.1",
- "semver": "^5.6.0"
- }
- },
- "p-locate": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
- "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
- "dev": true,
- "requires": {
- "p-limit": "^2.0.0"
- }
- },
- "path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
- "dev": true
- },
- "pkg-dir": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz",
- "integrity": "sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw==",
- "dev": true,
- "requires": {
- "find-up": "^3.0.0"
- }
- },
- "schema-utils": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
- "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
- "dev": true,
- "requires": {
- "ajv": "^6.1.0",
- "ajv-errors": "^1.0.0",
- "ajv-keywords": "^3.1.0"
- }
- },
- "semver": {
- "version": "5.7.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
- "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
- "dev": true
- },
- "source-map": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
- "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==",
- "dev": true
- }
- }
- },
- "text-table": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
- "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=",
- "dev": true
- },
- "thenify": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz",
- "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==",
- "dev": true,
- "requires": {
- "any-promise": "^1.0.0"
- }
- },
- "thenify-all": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz",
- "integrity": "sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY=",
- "dev": true,
- "requires": {
- "thenify": ">= 3.1.0 < 4"
- }
- },
- "thread-loader": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/thread-loader/-/thread-loader-2.1.3.tgz",
- "integrity": "sha512-wNrVKH2Lcf8ZrWxDF/khdlLlsTMczdcwPA9VEK4c2exlEPynYWxi9op3nPTo5lAnDIkE0rQEB3VBP+4Zncc9Hg==",
- "dev": true,
- "requires": {
- "loader-runner": "^2.3.1",
- "loader-utils": "^1.1.0",
- "neo-async": "^2.6.0"
- }
- },
- "through": {
- "version": "2.3.8",
- "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
- "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
- "dev": true
- },
- "through2": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
- "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==",
- "dev": true,
- "requires": {
- "readable-stream": "~2.3.6",
- "xtend": "~4.0.1"
- }
- },
- "thunky": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz",
- "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==",
- "dev": true
- },
- "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,
- "requires": {
- "setimmediate": "^1.0.4"
- }
- },
- "timsort": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/timsort/-/timsort-0.3.0.tgz",
- "integrity": "sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=",
- "dev": true
- },
- "tmp": {
- "version": "0.0.33",
- "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
- "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
- "dev": true,
- "requires": {
- "os-tmpdir": "~1.0.2"
- }
- },
- "to-arraybuffer": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/to-arraybuffer/-/to-arraybuffer-1.0.1.tgz",
- "integrity": "sha1-fSKbH8xjfkZsoIEYCDanqr/4P0M=",
- "dev": true
- },
- "to-fast-properties": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
- "integrity": "sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=",
- "dev": true
- },
- "to-object-path": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/to-object-path/-/to-object-path-0.3.0.tgz",
- "integrity": "sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68=",
- "dev": true,
- "requires": {
- "kind-of": "^3.0.2"
- },
- "dependencies": {
- "kind-of": {
- "version": "3.2.2",
- "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz",
- "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=",
- "dev": true,
- "requires": {
- "is-buffer": "^1.1.5"
- }
- }
- }
- },
- "to-regex": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/to-regex/-/to-regex-3.0.2.tgz",
- "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==",
- "dev": true,
- "requires": {
- "define-property": "^2.0.2",
- "extend-shallow": "^3.0.2",
- "regex-not": "^1.0.2",
- "safe-regex": "^1.1.0"
- }
- },
- "to-regex-range": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz",
- "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=",
- "dev": true,
- "requires": {
- "is-number": "^3.0.0",
- "repeat-string": "^1.6.1"
- }
- },
- "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
- },
- "toposort": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/toposort/-/toposort-1.0.7.tgz",
- "integrity": "sha1-LmhELZ9k7HILjMieZEOsbKqVACk=",
- "dev": true
- },
- "tough-cookie": {
- "version": "2.5.0",
- "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz",
- "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==",
- "dev": true,
- "requires": {
- "psl": "^1.1.28",
- "punycode": "^2.1.1"
- }
- },
- "trim-right": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz",
- "integrity": "sha1-yy4SAwZ+DI3h9hQJS5/kVwTqYAM=",
- "dev": true
- },
- "tryer": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/tryer/-/tryer-1.0.1.tgz",
- "integrity": "sha512-c3zayb8/kWWpycWYg87P71E1S1ZL6b6IJxfb5fvsUgsf0S2MVGaDhDXXjDMpdCpfWXqptc+4mXwmiy1ypXqRAA==",
- "dev": true
- },
- "ts-pnp": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/ts-pnp/-/ts-pnp-1.2.0.tgz",
- "integrity": "sha512-csd+vJOb/gkzvcCHgTGSChYpy5f1/XKNsmvBGO4JXS+z1v2HobugDz4s1IeFXM3wZB44uczs+eazB5Q/ccdhQw==",
- "dev": true
- },
- "tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true
- },
- "tty-browserify": {
- "version": "0.0.0",
- "resolved": "https://registry.npmjs.org/tty-browserify/-/tty-browserify-0.0.0.tgz",
- "integrity": "sha1-oVe6QC2iTpv5V/mqadUk7tQpAaY=",
- "dev": true
- },
- "tunnel-agent": {
- "version": "0.6.0",
- "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
- "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=",
- "dev": true,
- "requires": {
- "safe-buffer": "^5.0.1"
- }
- },
- "tweetnacl": {
- "version": "0.14.5",
- "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
- "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=",
- "dev": true
- },
- "type-check": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
- "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=",
- "dev": true,
- "requires": {
- "prelude-ls": "~1.1.2"
- }
- },
- "type-fest": {
- "version": "0.21.3",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz",
- "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==",
- "dev": true
- },
- "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,
- "requires": {
- "media-typer": "0.3.0",
- "mime-types": "~2.1.24"
- }
- },
- "typedarray": {
- "version": "0.0.6",
- "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
- "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
- "dev": true
- },
- "uglify-js": {
- "version": "3.4.10",
- "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.4.10.tgz",
- "integrity": "sha512-Y2VsbPVs0FIshJztycsO2SfPk7/KAF/T72qzv9u5EpQ4kB2hQoHlhNQTsNyy6ul7lQtqJN/AoWeS23OzEiEFxw==",
- "dev": true,
- "requires": {
- "commander": "~2.19.0",
- "source-map": "~0.6.1"
- },
- "dependencies": {
- "commander": {
- "version": "2.19.0",
- "resolved": "https://registry.npmjs.org/commander/-/commander-2.19.0.tgz",
- "integrity": "sha512-6tvAOO+D6OENvRAh524Dh9jcfKTYDQAqvqezbCW82xj5X0pSrcpxtvRKHLG0yBY6SD7PSDrJaj+0AiOcKVd1Xg==",
- "dev": true
- },
- "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
- }
- }
- },
- "unbox-primitive": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/unbox-primitive/-/unbox-primitive-1.0.1.tgz",
- "integrity": "sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==",
- "dev": true,
- "requires": {
- "function-bind": "^1.1.1",
- "has-bigints": "^1.0.1",
- "has-symbols": "^1.0.2",
- "which-boxed-primitive": "^1.0.2"
- }
- },
- "unicode-canonical-property-names-ecmascript": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/unicode-canonical-property-names-ecmascript/-/unicode-canonical-property-names-ecmascript-2.0.0.tgz",
- "integrity": "sha512-yY5PpDlfVIU5+y/BSCxAJRBIS1Zc2dDG3Ujq+sR0U+JjUevW2JhocOF+soROYDSaAezOzOKuyyixhD6mBknSmQ==",
- "dev": true
- },
- "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==",
- "dev": true,
- "requires": {
- "unicode-canonical-property-names-ecmascript": "^2.0.0",
- "unicode-property-aliases-ecmascript": "^2.0.0"
- }
- },
- "unicode-match-property-value-ecmascript": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-2.0.0.tgz",
- "integrity": "sha512-7Yhkc0Ye+t4PNYzOGKedDhXbYIBe1XEQYQxOPyhcXNMJ0WCABqqj6ckydd6pWRZTHV4GuCPKdBAUiMc60tsKVw==",
- "dev": true
- },
- "unicode-property-aliases-ecmascript": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-2.0.0.tgz",
- "integrity": "sha512-5Zfuy9q/DFr4tfO7ZPeVXb1aPoeQSdeFMLpYuFebehDAhbuevLs5yxSZmIFN1tP5F9Wl4IpJrYojg85/zgyZHQ==",
- "dev": true
- },
- "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==",
- "dev": true,
- "requires": {
- "arr-union": "^3.1.0",
- "get-value": "^2.0.6",
- "is-extendable": "^0.1.1",
- "set-value": "^2.0.1"
- },
- "dependencies": {
- "is-extendable": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz",
- "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=",
- "dev": true
- }
- }
- },
- "uniq": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz",
- "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=",
- "dev": true
- },
- "uniqs": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/uniqs/-/uniqs-2.0.0.tgz",
- "integrity": "sha1-/+3ks2slKQaW5uFl1KWe25mOawI=",
- "dev": true
- },
- "unique-filename": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz",
- "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==",
- "dev": true,
- "requires": {
- "unique-slug": "^2.0.0"
- }
- },
- "unique-slug": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz",
- "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==",
- "dev": true,
- "requires": {
- "imurmurhash": "^0.1.4"
- }
- },
- "universalify": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
- "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
- "dev": true
- },
- "unpipe": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
- "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=",
- "dev": true
- },
- "unquote": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/unquote/-/unquote-1.1.1.tgz",
- "integrity": "sha1-j97XMk7G6IoP+LkF58CYzcCG1UQ=",
- "dev": true
- },
- "unset-value": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/unset-value/-/unset-value-1.0.0.tgz",
- "integrity": "sha1-g3aHP30jNRef+x5vw6jtDfyKtVk=",
- "dev": true,
- "requires": {
- "has-value": "^0.3.1",
- "isobject": "^3.0.0"
- },
- "dependencies": {
- "has-value": {
- "version": "0.3.1",
- "resolved": "https://registry.npmjs.org/has-value/-/has-value-0.3.1.tgz",
- "integrity": "sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8=",
- "dev": true,
- "requires": {
- "get-value": "^2.0.3",
- "has-values": "^0.1.4",
- "isobject": "^2.0.0"
- },
- "dependencies": {
- "isobject": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/isobject/-/isobject-2.1.0.tgz",
- "integrity": "sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk=",
- "dev": true,
- "requires": {
- "isarray": "1.0.0"
- }
- }
- }
- },
- "has-values": {
- "version": "0.1.4",
- "resolved": "https://registry.npmjs.org/has-values/-/has-values-0.1.4.tgz",
- "integrity": "sha1-bWHeldkd/Km5oCCJrThL/49it3E=",
- "dev": true
- }
- }
- },
- "upath": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/upath/-/upath-1.2.0.tgz",
- "integrity": "sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg==",
- "dev": true
- },
- "upper-case": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/upper-case/-/upper-case-1.1.3.tgz",
- "integrity": "sha1-9rRQHC7EzdJrp4vnIilh3ndiFZg=",
- "dev": true
- },
- "uri-js": {
- "version": "4.4.1",
- "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz",
- "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==",
- "dev": true,
- "requires": {
- "punycode": "^2.1.0"
- }
- },
- "urix": {
- "version": "0.1.0",
- "resolved": "https://registry.npmjs.org/urix/-/urix-0.1.0.tgz",
- "integrity": "sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI=",
- "dev": true
- },
- "url": {
- "version": "0.11.0",
- "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz",
- "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=",
- "dev": true,
- "requires": {
- "punycode": "1.3.2",
- "querystring": "0.2.0"
- },
- "dependencies": {
- "punycode": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz",
- "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=",
- "dev": true
- }
- }
- },
- "url-loader": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-2.3.0.tgz",
- "integrity": "sha512-goSdg8VY+7nPZKUEChZSEtW5gjbS66USIGCeSJ1OVOJ7Yfuh/36YxCwMi5HVEJh6mqUYOoy3NJ0vlOMrWsSHog==",
- "dev": true,
- "requires": {
- "loader-utils": "^1.2.3",
- "mime": "^2.4.4",
- "schema-utils": "^2.5.0"
- }
- },
- "url-parse": {
- "version": "1.5.4",
- "resolved": "https://registry.npmjs.org/url-parse/-/url-parse-1.5.4.tgz",
- "integrity": "sha512-ITeAByWWoqutFClc/lRZnFplgXgEZr3WJ6XngMM/N9DMIm4K8zXPCZ1Jdu0rERwO84w1WC5wkle2ubwTA4NTBg==",
- "dev": true,
- "requires": {
- "querystringify": "^2.1.1",
- "requires-port": "^1.0.0"
- }
- },
- "use": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz",
- "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==",
- "dev": true
- },
- "util": {
- "version": "0.11.1",
- "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz",
- "integrity": "sha512-HShAsny+zS2TZfaXxD9tYj4HQGlBezXZMZuM/S5PKLLoZkShZiGk9o5CzukI1LVHZvjdvZ2Sj1aW/Ndn2NB/HQ==",
- "dev": true,
- "requires": {
- "inherits": "2.0.3"
- },
- "dependencies": {
- "inherits": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
- "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
- "dev": true
- }
- }
- },
- "util-deprecate": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
- "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
- "dev": true
- },
- "util.promisify": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/util.promisify/-/util.promisify-1.0.0.tgz",
- "integrity": "sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==",
- "dev": true,
- "requires": {
- "define-properties": "^1.1.2",
- "object.getownpropertydescriptors": "^2.0.3"
- }
- },
- "utila": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/utila/-/utila-0.4.0.tgz",
- "integrity": "sha1-ihagXURWV6Oupe7MWxKk+lN5dyw=",
- "dev": true
- },
- "utils-merge": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
- "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=",
- "dev": true
- },
- "uuid": {
- "version": "3.4.0",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz",
- "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==",
- "dev": true
- },
- "v8-compile-cache": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz",
- "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==",
- "dev": true
- },
- "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==",
- "dev": true,
- "requires": {
- "spdx-correct": "^3.0.0",
- "spdx-expression-parse": "^3.0.0"
- }
- },
- "vary": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz",
- "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=",
- "dev": true
- },
- "vendors": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/vendors/-/vendors-1.0.4.tgz",
- "integrity": "sha512-/juG65kTL4Cy2su4P8HjtkTxk6VmJDiOPBufWniqQ6wknac6jNiXS9vU+hO3wgusiyqWlzTbVHi0dyJqRONg3w==",
- "dev": true
- },
- "verror": {
- "version": "1.10.0",
- "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz",
- "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=",
- "dev": true,
- "requires": {
- "assert-plus": "^1.0.0",
- "core-util-is": "1.0.2",
- "extsprintf": "^1.2.0"
- },
- "dependencies": {
- "core-util-is": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
- "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
- "dev": true
- }
- }
- },
- "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
- },
- "vue": {
- "version": "2.6.14",
- "resolved": "https://registry.npmjs.org/vue/-/vue-2.6.14.tgz",
- "integrity": "sha512-x2284lgYvjOMj3Za7kqzRcUSxBboHqtgRE2zlos1qWaOye5yUmHn42LB1250NJBLRwEcdrB0JRwyPTEPhfQjiQ=="
- },
- "vue-chartjs": {
- "version": "3.5.1",
- "resolved": "https://registry.npmjs.org/vue-chartjs/-/vue-chartjs-3.5.1.tgz",
- "integrity": "sha512-foocQbJ7FtveICxb4EV5QuVpo6d8CmZFmAopBppDIGKY+esJV8IJgwmEW0RexQhxqXaL/E1xNURsgFFYyKzS/g==",
- "requires": {
- "@types/chart.js": "^2.7.55"
- }
- },
- "vue-cli-plugin-vuetify": {
- "version": "2.5.0",
- "resolved": "https://registry.npmjs.org/vue-cli-plugin-vuetify/-/vue-cli-plugin-vuetify-2.5.0.tgz",
- "integrity": "sha512-wc8/dTJp+C5ik+xi9DdakOT4n14sRPb4Xb+L8ukpsb4r7K6lzgPriLF7JrnIi9cYJwqU29UaT0f7xx5ixDdUdg==",
- "dev": true,
- "requires": {
- "null-loader": "^4.0.1",
- "semver": "^7.1.2",
- "shelljs": "^0.8.3"
- },
- "dependencies": {
- "lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "requires": {
- "yallist": "^4.0.0"
- }
- },
- "semver": {
- "version": "7.3.5",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz",
- "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==",
- "dev": true,
- "requires": {
- "lru-cache": "^6.0.0"
- }
- },
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
- }
- }
- },
- "vue-currency-input": {
- "version": "1.22.3",
- "resolved": "https://registry.npmjs.org/vue-currency-input/-/vue-currency-input-1.22.3.tgz",
- "integrity": "sha512-vrOaaiCSG8Hh7Fw7CYROIymFvVprWKaze3h67sihqJ4QAI9F+YElTQYv0fJwFK1NkKUS8H/MvAL0mwg9qrUfgg=="
- },
- "vue-eslint-parser": {
- "version": "7.11.0",
- "resolved": "https://registry.npmjs.org/vue-eslint-parser/-/vue-eslint-parser-7.11.0.tgz",
- "integrity": "sha512-qh3VhDLeh773wjgNTl7ss0VejY9bMMa0GoDG2fQVyDzRFdiU3L7fw74tWZDHNQXdZqxO3EveQroa9ct39D2nqg==",
- "dev": true,
- "requires": {
- "debug": "^4.1.1",
- "eslint-scope": "^5.1.1",
- "eslint-visitor-keys": "^1.1.0",
- "espree": "^6.2.1",
- "esquery": "^1.4.0",
- "lodash": "^4.17.21",
- "semver": "^6.3.0"
- }
- },
- "vue-hot-reload-api": {
- "version": "2.3.4",
- "resolved": "https://registry.npmjs.org/vue-hot-reload-api/-/vue-hot-reload-api-2.3.4.tgz",
- "integrity": "sha512-BXq3jwIagosjgNVae6tkHzzIk6a8MHFtzAdwhnV5VlvPTFxDCvIttgSiHWjdGoTJvXtmRu5HacExfdarRcFhog==",
- "dev": true
- },
- "vue-loader": {
- "version": "15.9.8",
- "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-15.9.8.tgz",
- "integrity": "sha512-GwSkxPrihfLR69/dSV3+5CdMQ0D+jXg8Ma1S4nQXKJAznYFX14vHdc/NetQc34Dw+rBbIJyP7JOuVb9Fhprvog==",
- "dev": true,
- "requires": {
- "@vue/component-compiler-utils": "^3.1.0",
- "hash-sum": "^1.0.2",
- "loader-utils": "^1.1.0",
- "vue-hot-reload-api": "^2.3.0",
- "vue-style-loader": "^4.1.0"
- },
- "dependencies": {
- "hash-sum": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-1.0.2.tgz",
- "integrity": "sha1-M7QHd3VMZDJXPBIMw4CLvRDUfwQ=",
- "dev": true
- }
- }
- },
- "vue-router": {
- "version": "3.5.4",
- "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-3.5.4.tgz",
- "integrity": "sha512-x+/DLAJZv2mcQ7glH2oV9ze8uPwcI+H+GgTgTmb5I55bCgY3+vXWIsqbYUzbBSZnwFHEJku4eoaH/x98veyymQ=="
- },
- "vue-signature": {
- "version": "2.5.5",
- "resolved": "https://registry.npmjs.org/vue-signature/-/vue-signature-2.5.5.tgz",
- "integrity": "sha512-dZaDyIW+69mZMRogkDwZv/5xyJCWOI/d3yYpfMLLnGJgh32FPohG5eAx/IGTKgAtzqdz+07a70qQiK89vSZVWg==",
- "requires": {
- "signature_pad": "^3.0.0-beta.3",
- "vue": "^2.5.9"
- }
- },
- "vue-style-loader": {
- "version": "4.1.3",
- "resolved": "https://registry.npmjs.org/vue-style-loader/-/vue-style-loader-4.1.3.tgz",
- "integrity": "sha512-sFuh0xfbtpRlKfm39ss/ikqs9AbKCoXZBpHeVZ8Tx650o0k0q/YCM7FRvigtxpACezfq6af+a7JeqVTWvncqDg==",
- "dev": true,
- "requires": {
- "hash-sum": "^1.0.2",
- "loader-utils": "^1.0.2"
- },
- "dependencies": {
- "hash-sum": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-1.0.2.tgz",
- "integrity": "sha1-M7QHd3VMZDJXPBIMw4CLvRDUfwQ=",
- "dev": true
- }
- }
- },
- "vue-template-compiler": {
- "version": "2.6.14",
- "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.6.14.tgz",
- "integrity": "sha512-ODQS1SyMbjKoO1JBJZojSw6FE4qnh9rIpUZn2EUT86FKizx9uH5z6uXiIrm4/Nb/gwxTi/o17ZDEGWAXHvtC7g==",
- "dev": true,
- "requires": {
- "de-indent": "^1.0.2",
- "he": "^1.1.0"
- }
- },
- "vue-template-es2015-compiler": {
- "version": "1.9.1",
- "resolved": "https://registry.npmjs.org/vue-template-es2015-compiler/-/vue-template-es2015-compiler-1.9.1.tgz",
- "integrity": "sha512-4gDntzrifFnCEvyoO8PqyJDmguXgVPxKiIxrBKjIowvL9l+N66196+72XVYR8BBf1Uv1Fgt3bGevJ+sEmxfZzw==",
- "dev": true
- },
- "vuetify": {
- "version": "2.6.6",
- "resolved": "https://registry.npmjs.org/vuetify/-/vuetify-2.6.6.tgz",
- "integrity": "sha512-H4KtxDFmDN8QiTRiGfBySyjMhVaHAJTKB0llGGKZT5jKxtnx9gvEtMWXKtVuRP0NJJP0H6xBPJHNOH7nT18qiQ=="
- },
- "vuetify-loader": {
- "version": "1.7.3",
- "resolved": "https://registry.npmjs.org/vuetify-loader/-/vuetify-loader-1.7.3.tgz",
- "integrity": "sha512-1Kt6Rfvuw3i9BBlxC9WTMnU3WEU7IBWQmDX+fYGAVGpzWCX7oHythUIwPCZGShHSYcPMKSDbXTPP8UvT5RNw8Q==",
- "dev": true,
- "requires": {
- "decache": "^4.6.0",
- "file-loader": "^6.2.0",
- "loader-utils": "^2.0.0"
- },
- "dependencies": {
- "file-loader": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/file-loader/-/file-loader-6.2.0.tgz",
- "integrity": "sha512-qo3glqyTa61Ytg4u73GultjHGjdRyig3tG6lPtyX/jOEJvHif9uB0/OCI2Kif6ctF3caQTW2G5gym21oAsI4pw==",
- "dev": true,
- "requires": {
- "loader-utils": "^2.0.0",
- "schema-utils": "^3.0.0"
- }
- },
- "loader-utils": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz",
- "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==",
- "dev": true,
- "requires": {
- "big.js": "^5.2.2",
- "emojis-list": "^3.0.0",
- "json5": "^2.1.2"
- }
- },
- "schema-utils": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.1.1.tgz",
- "integrity": "sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==",
- "dev": true,
- "requires": {
- "@types/json-schema": "^7.0.8",
- "ajv": "^6.12.5",
- "ajv-keywords": "^3.5.2"
- }
- }
- }
- },
- "vuex": {
- "version": "3.6.2",
- "resolved": "https://registry.npmjs.org/vuex/-/vuex-3.6.2.tgz",
- "integrity": "sha512-ETW44IqCgBpVomy520DT5jf8n0zoCac+sxWnn+hMe/CzaSejb/eVw2YToiXYX+Ex/AuHHia28vWTq4goAexFbw=="
- },
- "vuex-persistedstate": {
- "version": "2.7.1",
- "resolved": "https://registry.npmjs.org/vuex-persistedstate/-/vuex-persistedstate-2.7.1.tgz",
- "integrity": "sha512-Ktvp6Bt6ApYj35MuxTClu+9Lpukcgl3Z/0o4PU12+Z4jU6lyOMzos0k6zGT5xrukAkGM1VV3EYNwz1TnHPhgFA==",
- "requires": {
- "deepmerge": "^4.2.2",
- "shvl": "^2.0.0"
- }
- },
- "watchpack": {
- "version": "1.7.5",
- "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.7.5.tgz",
- "integrity": "sha512-9P3MWk6SrKjHsGkLT2KHXdQ/9SNkyoJbabxnKOoJepsvJjJG8uYTR3yTPxPQvNDI3w4Nz1xnE0TLHK4RIVe/MQ==",
- "dev": true,
- "requires": {
- "chokidar": "^3.4.1",
- "graceful-fs": "^4.1.2",
- "neo-async": "^2.5.0",
- "watchpack-chokidar2": "^2.0.1"
- }
- },
- "watchpack-chokidar2": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/watchpack-chokidar2/-/watchpack-chokidar2-2.0.1.tgz",
- "integrity": "sha512-nCFfBIPKr5Sh61s4LPpy1Wtfi0HE8isJ3d2Yb5/Ppw2P2B/3eVSEBjKfN0fmHJSK14+31KwMKmcrzs2GM4P0Ww==",
- "dev": true,
- "optional": true,
- "requires": {
- "chokidar": "^2.1.8"
- },
- "dependencies": {
- "anymatch": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz",
- "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==",
- "dev": true,
- "optional": true,
- "requires": {
- "micromatch": "^3.1.4",
- "normalize-path": "^2.1.1"
- },
- "dependencies": {
- "normalize-path": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
- "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=",
- "dev": true,
- "optional": true,
- "requires": {
- "remove-trailing-separator": "^1.0.1"
- }
- }
- }
- },
- "binary-extensions": {
- "version": "1.13.1",
- "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz",
- "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==",
- "dev": true,
- "optional": true
- },
- "chokidar": {
- "version": "2.1.8",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz",
- "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==",
- "dev": true,
- "optional": true,
- "requires": {
- "anymatch": "^2.0.0",
- "async-each": "^1.0.1",
- "braces": "^2.3.2",
- "fsevents": "^1.2.7",
- "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"
- }
- },
- "fsevents": {
- "version": "1.2.13",
- "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz",
- "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==",
- "dev": true,
- "optional": true,
- "requires": {
- "bindings": "^1.5.0",
- "nan": "^2.12.1"
- }
- },
- "is-binary-path": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz",
- "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=",
- "dev": true,
- "optional": true,
- "requires": {
- "binary-extensions": "^1.0.0"
- }
- },
- "readdirp": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz",
- "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==",
- "dev": true,
- "optional": true,
- "requires": {
- "graceful-fs": "^4.1.11",
- "micromatch": "^3.1.10",
- "readable-stream": "^2.0.2"
- }
- }
- }
- },
- "wbuf": {
- "version": "1.7.3",
- "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz",
- "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==",
- "dev": true,
- "requires": {
- "minimalistic-assert": "^1.0.0"
- }
- },
- "wcwidth": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz",
- "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=",
- "dev": true,
- "requires": {
- "defaults": "^1.0.3"
- }
- },
- "webpack": {
- "version": "4.46.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.46.0.tgz",
- "integrity": "sha512-6jJuJjg8znb/xRItk7bkT0+Q7AHCYjjFnvKIWQPkNIOyRqoCGvkOs0ipeQzrqz4l5FtN5ZI/ukEHroeX/o1/5Q==",
- "dev": true,
- "requires": {
- "@webassemblyjs/ast": "1.9.0",
- "@webassemblyjs/helper-module-context": "1.9.0",
- "@webassemblyjs/wasm-edit": "1.9.0",
- "@webassemblyjs/wasm-parser": "1.9.0",
- "acorn": "^6.4.1",
- "ajv": "^6.10.2",
- "ajv-keywords": "^3.4.1",
- "chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^4.5.0",
- "eslint-scope": "^4.0.3",
- "json-parse-better-errors": "^1.0.2",
- "loader-runner": "^2.4.0",
- "loader-utils": "^1.2.3",
- "memory-fs": "^0.4.1",
- "micromatch": "^3.1.10",
- "mkdirp": "^0.5.3",
- "neo-async": "^2.6.1",
- "node-libs-browser": "^2.2.1",
- "schema-utils": "^1.0.0",
- "tapable": "^1.1.3",
- "terser-webpack-plugin": "^1.4.3",
- "watchpack": "^1.7.4",
- "webpack-sources": "^1.4.1"
- },
- "dependencies": {
- "acorn": {
- "version": "6.4.2",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-6.4.2.tgz",
- "integrity": "sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ==",
- "dev": true
- },
- "eslint-scope": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-4.0.3.tgz",
- "integrity": "sha512-p7VutNr1O/QrxysMo3E45FjYDTeXBy0iTltPFNSqKAIfjDSXC+4dj+qfyuD8bfAXrW/y6lW3O76VaYNPKfpKrg==",
- "dev": true,
- "requires": {
- "esrecurse": "^4.1.0",
- "estraverse": "^4.1.1"
- }
- },
- "schema-utils": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
- "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
- "dev": true,
- "requires": {
- "ajv": "^6.1.0",
- "ajv-errors": "^1.0.0",
- "ajv-keywords": "^3.1.0"
- }
- }
- }
- },
- "webpack-bundle-analyzer": {
- "version": "3.9.0",
- "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-3.9.0.tgz",
- "integrity": "sha512-Ob8amZfCm3rMB1ScjQVlbYYUEJyEjdEtQ92jqiFUYt5VkEeO2v5UMbv49P/gnmCZm3A6yaFQzCBvpZqN4MUsdA==",
- "dev": true,
- "requires": {
- "acorn": "^7.1.1",
- "acorn-walk": "^7.1.1",
- "bfj": "^6.1.1",
- "chalk": "^2.4.1",
- "commander": "^2.18.0",
- "ejs": "^2.6.1",
- "express": "^4.16.3",
- "filesize": "^3.6.1",
- "gzip-size": "^5.0.0",
- "lodash": "^4.17.19",
- "mkdirp": "^0.5.1",
- "opener": "^1.5.1",
- "ws": "^6.0.0"
- },
- "dependencies": {
- "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
- }
- }
- },
- "webpack-chain": {
- "version": "6.5.1",
- "resolved": "https://registry.npmjs.org/webpack-chain/-/webpack-chain-6.5.1.tgz",
- "integrity": "sha512-7doO/SRtLu8q5WM0s7vPKPWX580qhi0/yBHkOxNkv50f6qB76Zy9o2wRTrrPULqYTvQlVHuvbA8v+G5ayuUDsA==",
- "dev": true,
- "requires": {
- "deepmerge": "^1.5.2",
- "javascript-stringify": "^2.0.1"
- },
- "dependencies": {
- "deepmerge": {
- "version": "1.5.2",
- "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-1.5.2.tgz",
- "integrity": "sha512-95k0GDqvBjZavkuvzx/YqVLv/6YYa17fz6ILMSf7neqQITCPbnfEnQvEgMPNjH4kgobe7+WIL0yJEHku+H3qtQ==",
- "dev": true
- }
- }
- },
- "webpack-cli": {
- "version": "3.3.12",
- "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-3.3.12.tgz",
- "integrity": "sha512-NVWBaz9k839ZH/sinurM+HcDvJOTXwSjYp1ku+5XKeOC03z8v5QitnK/x+lAxGXFyhdayoIf/GOpv85z3/xPag==",
- "dev": true,
- "requires": {
- "chalk": "^2.4.2",
- "cross-spawn": "^6.0.5",
- "enhanced-resolve": "^4.1.1",
- "findup-sync": "^3.0.0",
- "global-modules": "^2.0.0",
- "import-local": "^2.0.0",
- "interpret": "^1.4.0",
- "loader-utils": "^1.4.0",
- "supports-color": "^6.1.0",
- "v8-compile-cache": "^2.1.1",
- "yargs": "^13.3.2"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
- "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
- "dev": true
- },
- "camelcase": {
- "version": "5.3.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
- "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
- "dev": true
- },
- "cliui": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz",
- "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==",
- "dev": true,
- "requires": {
- "string-width": "^3.1.0",
- "strip-ansi": "^5.2.0",
- "wrap-ansi": "^5.1.0"
- }
- },
- "emoji-regex": {
- "version": "7.0.3",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
- "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
- "dev": true
- },
- "find-up": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
- "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
- "dev": true,
- "requires": {
- "locate-path": "^3.0.0"
- }
- },
- "is-fullwidth-code-point": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
- "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
- "dev": true
- },
- "locate-path": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
- "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
- "dev": true,
- "requires": {
- "p-locate": "^3.0.0",
- "path-exists": "^3.0.0"
- }
- },
- "p-locate": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
- "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
- "dev": true,
- "requires": {
- "p-limit": "^2.0.0"
- }
- },
- "path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
- "dev": true
- },
- "string-width": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
- "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
- "dev": true,
- "requires": {
- "emoji-regex": "^7.0.1",
- "is-fullwidth-code-point": "^2.0.0",
- "strip-ansi": "^5.1.0"
- }
- },
- "strip-ansi": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
- "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
- "dev": true,
- "requires": {
- "ansi-regex": "^4.1.0"
- }
- },
- "supports-color": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
- "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
- "dev": true,
- "requires": {
- "has-flag": "^3.0.0"
- }
- },
- "wrap-ansi": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
- "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
- "dev": true,
- "requires": {
- "ansi-styles": "^3.2.0",
- "string-width": "^3.0.0",
- "strip-ansi": "^5.0.0"
- }
- },
- "yargs": {
- "version": "13.3.2",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz",
- "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==",
- "dev": true,
- "requires": {
- "cliui": "^5.0.0",
- "find-up": "^3.0.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": "^3.0.0",
- "which-module": "^2.0.0",
- "y18n": "^4.0.0",
- "yargs-parser": "^13.1.2"
- }
- },
- "yargs-parser": {
- "version": "13.1.2",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz",
- "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==",
- "dev": true,
- "requires": {
- "camelcase": "^5.0.0",
- "decamelize": "^1.2.0"
- }
- }
- }
- },
- "webpack-dev-middleware": {
- "version": "3.7.3",
- "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.7.3.tgz",
- "integrity": "sha512-djelc/zGiz9nZj/U7PTBi2ViorGJXEWo/3ltkPbDyxCXhhEXkW0ce99falaok4TPj+AsxLiXJR0EBOb0zh9fKQ==",
- "dev": true,
- "requires": {
- "memory-fs": "^0.4.1",
- "mime": "^2.4.4",
- "mkdirp": "^0.5.1",
- "range-parser": "^1.2.1",
- "webpack-log": "^2.0.0"
- }
- },
- "webpack-dev-server": {
- "version": "3.11.3",
- "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.11.3.tgz",
- "integrity": "sha512-3x31rjbEQWKMNzacUZRE6wXvUFuGpH7vr0lIEbYpMAG9BOxi0928QU1BBswOAP3kg3H1O4hiS+sq4YyAn6ANnA==",
- "dev": true,
- "requires": {
- "ansi-html-community": "0.0.8",
- "bonjour": "^3.5.0",
- "chokidar": "^2.1.8",
- "compression": "^1.7.4",
- "connect-history-api-fallback": "^1.6.0",
- "debug": "^4.1.1",
- "del": "^4.1.1",
- "express": "^4.17.1",
- "html-entities": "^1.3.1",
- "http-proxy-middleware": "0.19.1",
- "import-local": "^2.0.0",
- "internal-ip": "^4.3.0",
- "ip": "^1.1.5",
- "is-absolute-url": "^3.0.3",
- "killable": "^1.0.1",
- "loglevel": "^1.6.8",
- "opn": "^5.5.0",
- "p-retry": "^3.0.1",
- "portfinder": "^1.0.26",
- "schema-utils": "^1.0.0",
- "selfsigned": "^1.10.8",
- "semver": "^6.3.0",
- "serve-index": "^1.9.1",
- "sockjs": "^0.3.21",
- "sockjs-client": "^1.5.0",
- "spdy": "^4.0.2",
- "strip-ansi": "^3.0.1",
- "supports-color": "^6.1.0",
- "url": "^0.11.0",
- "webpack-dev-middleware": "^3.7.2",
- "webpack-log": "^2.0.0",
- "ws": "^6.2.1",
- "yargs": "^13.3.2"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
- "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
- "dev": true
- },
- "anymatch": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz",
- "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==",
- "dev": true,
- "requires": {
- "micromatch": "^3.1.4",
- "normalize-path": "^2.1.1"
- },
- "dependencies": {
- "normalize-path": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz",
- "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=",
- "dev": true,
- "requires": {
- "remove-trailing-separator": "^1.0.1"
- }
- }
- }
- },
- "binary-extensions": {
- "version": "1.13.1",
- "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz",
- "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==",
- "dev": true
- },
- "camelcase": {
- "version": "5.3.1",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
- "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
- "dev": true
- },
- "chokidar": {
- "version": "2.1.8",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-2.1.8.tgz",
- "integrity": "sha512-ZmZUazfOzf0Nve7duiCKD23PFSCs4JPoYyccjUFF3aQkQadqBhfzhjkwBH2mNOG9cTBwhamM37EIsIkZw3nRgg==",
- "dev": true,
- "requires": {
- "anymatch": "^2.0.0",
- "async-each": "^1.0.1",
- "braces": "^2.3.2",
- "fsevents": "^1.2.7",
- "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"
- }
- },
- "cliui": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz",
- "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==",
- "dev": true,
- "requires": {
- "string-width": "^3.1.0",
- "strip-ansi": "^5.2.0",
- "wrap-ansi": "^5.1.0"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
- "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
- "dev": true
- },
- "strip-ansi": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
- "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
- "dev": true,
- "requires": {
- "ansi-regex": "^4.1.0"
- }
- }
- }
- },
- "emoji-regex": {
- "version": "7.0.3",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
- "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
- "dev": true
- },
- "find-up": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
- "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
- "dev": true,
- "requires": {
- "locate-path": "^3.0.0"
- }
- },
- "fsevents": {
- "version": "1.2.13",
- "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.13.tgz",
- "integrity": "sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==",
- "dev": true,
- "optional": true,
- "requires": {
- "bindings": "^1.5.0",
- "nan": "^2.12.1"
- }
- },
- "http-proxy-middleware": {
- "version": "0.19.1",
- "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-0.19.1.tgz",
- "integrity": "sha512-yHYTgWMQO8VvwNS22eLLloAkvungsKdKTLO8AJlftYIKNfJr3GK3zK0ZCfzDDGUBttdGc8xFy1mCitvNKQtC3Q==",
- "dev": true,
- "requires": {
- "http-proxy": "^1.17.0",
- "is-glob": "^4.0.0",
- "lodash": "^4.17.11",
- "micromatch": "^3.1.10"
- }
- },
- "is-absolute-url": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-3.0.3.tgz",
- "integrity": "sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q==",
- "dev": true
- },
- "is-binary-path": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz",
- "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=",
- "dev": true,
- "requires": {
- "binary-extensions": "^1.0.0"
- }
- },
- "is-fullwidth-code-point": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
- "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
- "dev": true
- },
- "locate-path": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
- "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
- "dev": true,
- "requires": {
- "p-locate": "^3.0.0",
- "path-exists": "^3.0.0"
- }
- },
- "p-locate": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
- "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
- "dev": true,
- "requires": {
- "p-limit": "^2.0.0"
- }
- },
- "path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
- "dev": true
- },
- "readdirp": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz",
- "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.1.11",
- "micromatch": "^3.1.10",
- "readable-stream": "^2.0.2"
- }
- },
- "schema-utils": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-1.0.0.tgz",
- "integrity": "sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g==",
- "dev": true,
- "requires": {
- "ajv": "^6.1.0",
- "ajv-errors": "^1.0.0",
- "ajv-keywords": "^3.1.0"
- }
- },
- "string-width": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
- "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
- "dev": true,
- "requires": {
- "emoji-regex": "^7.0.1",
- "is-fullwidth-code-point": "^2.0.0",
- "strip-ansi": "^5.1.0"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
- "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
- "dev": true
- },
- "strip-ansi": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
- "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
- "dev": true,
- "requires": {
- "ansi-regex": "^4.1.0"
- }
- }
- }
- },
- "strip-ansi": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
- "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
- "dev": true,
- "requires": {
- "ansi-regex": "^2.0.0"
- }
- },
- "supports-color": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.1.0.tgz",
- "integrity": "sha512-qe1jfm1Mg7Nq/NSh6XE24gPXROEVsWHxC1LIx//XNlD9iw7YZQGjZNjYN7xGaEG6iKdA8EtNFW6R0gjnVXp+wQ==",
- "dev": true,
- "requires": {
- "has-flag": "^3.0.0"
- }
- },
- "wrap-ansi": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
- "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
- "dev": true,
- "requires": {
- "ansi-styles": "^3.2.0",
- "string-width": "^3.0.0",
- "strip-ansi": "^5.0.0"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
- "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
- "dev": true
- },
- "strip-ansi": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
- "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
- "dev": true,
- "requires": {
- "ansi-regex": "^4.1.0"
- }
- }
- }
- },
- "yargs": {
- "version": "13.3.2",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz",
- "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==",
- "dev": true,
- "requires": {
- "cliui": "^5.0.0",
- "find-up": "^3.0.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": "^3.0.0",
- "which-module": "^2.0.0",
- "y18n": "^4.0.0",
- "yargs-parser": "^13.1.2"
- }
- },
- "yargs-parser": {
- "version": "13.1.2",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz",
- "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==",
- "dev": true,
- "requires": {
- "camelcase": "^5.0.0",
- "decamelize": "^1.2.0"
- }
- }
- }
- },
- "webpack-log": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/webpack-log/-/webpack-log-2.0.0.tgz",
- "integrity": "sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg==",
- "dev": true,
- "requires": {
- "ansi-colors": "^3.0.0",
- "uuid": "^3.3.2"
- }
- },
- "webpack-merge": {
- "version": "4.2.2",
- "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-4.2.2.tgz",
- "integrity": "sha512-TUE1UGoTX2Cd42j3krGYqObZbOD+xF7u28WB7tfUordytSjbWTIjK/8V0amkBfTYN4/pB/GIDlJZZ657BGG19g==",
- "dev": true,
- "requires": {
- "lodash": "^4.17.15"
- }
- },
- "webpack-sources": {
- "version": "1.4.3",
- "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz",
- "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==",
- "dev": true,
- "requires": {
- "source-list-map": "^2.0.0",
- "source-map": "~0.6.1"
- },
- "dependencies": {
- "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
- }
- }
- },
- "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,
- "requires": {
- "http-parser-js": ">=0.5.1",
- "safe-buffer": ">=5.1.0",
- "websocket-extensions": ">=0.1.1"
- }
- },
- "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==",
- "dev": true
- },
- "which": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
- "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
- "dev": true,
- "requires": {
- "isexe": "^2.0.0"
- }
- },
- "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,
- "requires": {
- "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"
- }
- },
- "which-module": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
- "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=",
- "dev": true
- },
- "word-wrap": {
- "version": "1.2.3",
- "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz",
- "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==",
- "dev": true
- },
- "workbox-background-sync": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/workbox-background-sync/-/workbox-background-sync-4.3.1.tgz",
- "integrity": "sha512-1uFkvU8JXi7L7fCHVBEEnc3asPpiAL33kO495UMcD5+arew9IbKW2rV5lpzhoWcm/qhGB89YfO4PmB/0hQwPRg==",
- "dev": true,
- "requires": {
- "workbox-core": "^4.3.1"
- }
- },
- "workbox-broadcast-update": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/workbox-broadcast-update/-/workbox-broadcast-update-4.3.1.tgz",
- "integrity": "sha512-MTSfgzIljpKLTBPROo4IpKjESD86pPFlZwlvVG32Kb70hW+aob4Jxpblud8EhNb1/L5m43DUM4q7C+W6eQMMbA==",
- "dev": true,
- "requires": {
- "workbox-core": "^4.3.1"
- }
- },
- "workbox-build": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/workbox-build/-/workbox-build-4.3.1.tgz",
- "integrity": "sha512-UHdwrN3FrDvicM3AqJS/J07X0KXj67R8Cg0waq1MKEOqzo89ap6zh6LmaLnRAjpB+bDIz+7OlPye9iii9KBnxw==",
- "dev": true,
- "requires": {
- "@babel/runtime": "^7.3.4",
- "@hapi/joi": "^15.0.0",
- "common-tags": "^1.8.0",
- "fs-extra": "^4.0.2",
- "glob": "^7.1.3",
- "lodash.template": "^4.4.0",
- "pretty-bytes": "^5.1.0",
- "stringify-object": "^3.3.0",
- "strip-comments": "^1.0.2",
- "workbox-background-sync": "^4.3.1",
- "workbox-broadcast-update": "^4.3.1",
- "workbox-cacheable-response": "^4.3.1",
- "workbox-core": "^4.3.1",
- "workbox-expiration": "^4.3.1",
- "workbox-google-analytics": "^4.3.1",
- "workbox-navigation-preload": "^4.3.1",
- "workbox-precaching": "^4.3.1",
- "workbox-range-requests": "^4.3.1",
- "workbox-routing": "^4.3.1",
- "workbox-strategies": "^4.3.1",
- "workbox-streams": "^4.3.1",
- "workbox-sw": "^4.3.1",
- "workbox-window": "^4.3.1"
- },
- "dependencies": {
- "fs-extra": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-4.0.3.tgz",
- "integrity": "sha512-q6rbdDd1o2mAnQreO7YADIxf/Whx4AHBiRf6d+/cVT8h44ss+lHgxf1FemcqDnQt9X3ct4McHr+JMGlYSsK7Cg==",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.1.2",
- "jsonfile": "^4.0.0",
- "universalify": "^0.1.0"
- }
- }
- }
- },
- "workbox-cacheable-response": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/workbox-cacheable-response/-/workbox-cacheable-response-4.3.1.tgz",
- "integrity": "sha512-Rp5qlzm6z8IOvnQNkCdO9qrDgDpoPNguovs0H8C+wswLuPgSzSp9p2afb5maUt9R1uTIwOXrVQMmPfPypv+npw==",
- "dev": true,
- "requires": {
- "workbox-core": "^4.3.1"
- }
- },
- "workbox-core": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/workbox-core/-/workbox-core-4.3.1.tgz",
- "integrity": "sha512-I3C9jlLmMKPxAC1t0ExCq+QoAMd0vAAHULEgRZ7kieCdUd919n53WC0AfvokHNwqRhGn+tIIj7vcb5duCjs2Kg==",
- "dev": true
- },
- "workbox-expiration": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/workbox-expiration/-/workbox-expiration-4.3.1.tgz",
- "integrity": "sha512-vsJLhgQsQouv9m0rpbXubT5jw0jMQdjpkum0uT+d9tTwhXcEZks7qLfQ9dGSaufTD2eimxbUOJfWLbNQpIDMPw==",
- "dev": true,
- "requires": {
- "workbox-core": "^4.3.1"
- }
- },
- "workbox-google-analytics": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/workbox-google-analytics/-/workbox-google-analytics-4.3.1.tgz",
- "integrity": "sha512-xzCjAoKuOb55CBSwQrbyWBKqp35yg1vw9ohIlU2wTy06ZrYfJ8rKochb1MSGlnoBfXGWss3UPzxR5QL5guIFdg==",
- "dev": true,
- "requires": {
- "workbox-background-sync": "^4.3.1",
- "workbox-core": "^4.3.1",
- "workbox-routing": "^4.3.1",
- "workbox-strategies": "^4.3.1"
- }
- },
- "workbox-navigation-preload": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/workbox-navigation-preload/-/workbox-navigation-preload-4.3.1.tgz",
- "integrity": "sha512-K076n3oFHYp16/C+F8CwrRqD25GitA6Rkd6+qAmLmMv1QHPI2jfDwYqrytOfKfYq42bYtW8Pr21ejZX7GvALOw==",
- "dev": true,
- "requires": {
- "workbox-core": "^4.3.1"
- }
- },
- "workbox-precaching": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/workbox-precaching/-/workbox-precaching-4.3.1.tgz",
- "integrity": "sha512-piSg/2csPoIi/vPpp48t1q5JLYjMkmg5gsXBQkh/QYapCdVwwmKlU9mHdmy52KsDGIjVaqEUMFvEzn2LRaigqQ==",
- "dev": true,
- "requires": {
- "workbox-core": "^4.3.1"
- }
- },
- "workbox-range-requests": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/workbox-range-requests/-/workbox-range-requests-4.3.1.tgz",
- "integrity": "sha512-S+HhL9+iTFypJZ/yQSl/x2Bf5pWnbXdd3j57xnb0V60FW1LVn9LRZkPtneODklzYuFZv7qK6riZ5BNyc0R0jZA==",
- "dev": true,
- "requires": {
- "workbox-core": "^4.3.1"
- }
- },
- "workbox-routing": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/workbox-routing/-/workbox-routing-4.3.1.tgz",
- "integrity": "sha512-FkbtrODA4Imsi0p7TW9u9MXuQ5P4pVs1sWHK4dJMMChVROsbEltuE79fBoIk/BCztvOJ7yUpErMKa4z3uQLX+g==",
- "dev": true,
- "requires": {
- "workbox-core": "^4.3.1"
- }
- },
- "workbox-strategies": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/workbox-strategies/-/workbox-strategies-4.3.1.tgz",
- "integrity": "sha512-F/+E57BmVG8dX6dCCopBlkDvvhg/zj6VDs0PigYwSN23L8hseSRwljrceU2WzTvk/+BSYICsWmRq5qHS2UYzhw==",
- "dev": true,
- "requires": {
- "workbox-core": "^4.3.1"
- }
- },
- "workbox-streams": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/workbox-streams/-/workbox-streams-4.3.1.tgz",
- "integrity": "sha512-4Kisis1f/y0ihf4l3u/+ndMkJkIT4/6UOacU3A4BwZSAC9pQ9vSvJpIi/WFGQRH/uPXvuVjF5c2RfIPQFSS2uA==",
- "dev": true,
- "requires": {
- "workbox-core": "^4.3.1"
- }
- },
- "workbox-sw": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/workbox-sw/-/workbox-sw-4.3.1.tgz",
- "integrity": "sha512-0jXdusCL2uC5gM3yYFT6QMBzKfBr2XTk0g5TPAV4y8IZDyVNDyj1a8uSXy3/XrvkVTmQvLN4O5k3JawGReXr9w==",
- "dev": true
- },
- "workbox-webpack-plugin": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/workbox-webpack-plugin/-/workbox-webpack-plugin-4.3.1.tgz",
- "integrity": "sha512-gJ9jd8Mb8wHLbRz9ZvGN57IAmknOipD3W4XNE/Lk/4lqs5Htw4WOQgakQy/o/4CoXQlMCYldaqUg+EJ35l9MEQ==",
- "dev": true,
- "requires": {
- "@babel/runtime": "^7.0.0",
- "json-stable-stringify": "^1.0.1",
- "workbox-build": "^4.3.1"
- }
- },
- "workbox-window": {
- "version": "4.3.1",
- "resolved": "https://registry.npmjs.org/workbox-window/-/workbox-window-4.3.1.tgz",
- "integrity": "sha512-C5gWKh6I58w3GeSc0wp2Ne+rqVw8qwcmZnQGpjiek8A2wpbxSJb1FdCoQVO+jDJs35bFgo/WETgl1fqgsxN0Hg==",
- "dev": true,
- "requires": {
- "workbox-core": "^4.3.1"
- }
- },
- "worker-farm": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/worker-farm/-/worker-farm-1.7.0.tgz",
- "integrity": "sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw==",
- "dev": true,
- "requires": {
- "errno": "~0.1.7"
- }
- },
- "wrap-ansi": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
- "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- }
- }
- },
- "wrappy": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
- "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
- "dev": true
- },
- "write": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz",
- "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==",
- "dev": true,
- "requires": {
- "mkdirp": "^0.5.1"
- }
- },
- "ws": {
- "version": "6.2.2",
- "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.2.tgz",
- "integrity": "sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw==",
- "dev": true,
- "requires": {
- "async-limiter": "~1.0.0"
- }
- },
- "xtend": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz",
- "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==",
- "dev": true
- },
- "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
- },
- "yallist": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz",
- "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==",
- "dev": true
- },
- "yargs": {
- "version": "16.2.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
- "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
- "dev": true,
- "requires": {
- "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"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "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,
- "requires": {
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.0",
- "wrap-ansi": "^7.0.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "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,
- "requires": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- }
- },
- "y18n": {
- "version": "5.0.8",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz",
- "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==",
- "dev": true
- }
- }
- },
- "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
- },
- "yorkie": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/yorkie/-/yorkie-2.0.0.tgz",
- "integrity": "sha512-jcKpkthap6x63MB4TxwCyuIGkV0oYP/YRyuQU5UO0Yz/E/ZAu+653/uov+phdmO54n6BcvFRyyt0RRrWdN2mpw==",
- "dev": true,
- "requires": {
- "execa": "^0.8.0",
- "is-ci": "^1.0.10",
- "normalize-path": "^1.0.0",
- "strip-indent": "^2.0.0"
- },
- "dependencies": {
- "cross-spawn": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz",
- "integrity": "sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk=",
- "dev": true,
- "requires": {
- "lru-cache": "^4.0.1",
- "shebang-command": "^1.2.0",
- "which": "^1.2.9"
- }
- },
- "execa": {
- "version": "0.8.0",
- "resolved": "https://registry.npmjs.org/execa/-/execa-0.8.0.tgz",
- "integrity": "sha1-2NdrvBtVIX7RkP1t1J08d07PyNo=",
- "dev": true,
- "requires": {
- "cross-spawn": "^5.0.1",
- "get-stream": "^3.0.0",
- "is-stream": "^1.1.0",
- "npm-run-path": "^2.0.0",
- "p-finally": "^1.0.0",
- "signal-exit": "^3.0.0",
- "strip-eof": "^1.0.0"
- }
- },
- "get-stream": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-3.0.0.tgz",
- "integrity": "sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ=",
- "dev": true
- },
- "lru-cache": {
- "version": "4.1.5",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz",
- "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==",
- "dev": true,
- "requires": {
- "pseudomap": "^1.0.2",
- "yallist": "^2.1.2"
- }
- },
- "normalize-path": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-1.0.0.tgz",
- "integrity": "sha1-MtDkcvkf80VwHBWoMRAY07CpA3k=",
- "dev": true
- },
- "yallist": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
- "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=",
- "dev": true
- }
- }
- }
- }
-}
diff --git a/client/package.json b/client/package.json
deleted file mode 100644
index 287f04d..0000000
--- a/client/package.json
+++ /dev/null
@@ -1,89 +0,0 @@
-{
- "name": "sockeye",
- "version": "8.0.28",
- "private": true,
- "scripts": {
- "serve": "vue-cli-service serve",
- "build": "vue-cli-service build",
- "lint": "vue-cli-service lint",
- "myLint": "npm run lint"
- },
- "dependencies": {
- "@fortawesome/fontawesome-svg-core": "^1.3.0",
- "@fortawesome/free-regular-svg-icons": "^5.15.4",
- "@fortawesome/free-solid-svg-icons": "^5.15.4",
- "@fortawesome/vue-fontawesome": "^2.0.7",
- "chart.js": "^2.9.4",
- "chartjs-adapter-luxon": "^0.2.2",
- "core-js": "^3.23.1",
- "dompurify": "^2.3.8",
- "fontsource-roboto": "^3.1.5",
- "github-markdown-css": "^4.0.0",
- "jwt-decode": "^3.1.2",
- "luxon": "^1.28.0",
- "marked": "^1.2.9",
- "monaco-editor": "^0.30.1",
- "monaco-editor-webpack-plugin": "^6.0.0",
- "nprogress": "^0.2.0",
- "papaparse": "^5.3.2",
- "register-service-worker": "^1.7.2",
- "vue": "^2.6.14",
- "vue-chartjs": "^3.5.1",
- "vue-currency-input": "1.22.3",
- "vue-router": "^3.5.4",
- "vue-signature": "^2.5.5",
- "vuetify": "^2.6.6",
- "vuex": "^3.6.2",
- "vuex-persistedstate": "^2.7.1"
- },
- "devDependencies": {
- "@babel/core": "^7.18.5",
- "@vue/cli-plugin-babel": "^4.5.15",
- "@vue/cli-plugin-eslint": "^4.5.15",
- "@vue/cli-plugin-pwa": "^4.5.15",
- "@vue/cli-plugin-router": "^4.5.15",
- "@vue/cli-plugin-vuex": "^4.5.15",
- "@vue/cli-service": "^4.5.15",
- "@vue/eslint-config-prettier": "^6.0.0",
- "@vue/test-utils": "^1.3.0",
- "babel-core": "6.26.3",
- "babel-eslint": "^10.1.0",
- "deepmerge": "^4.2.2",
- "eslint": "^6.8.0",
- "eslint-plugin-prettier": "^3.4.1",
- "eslint-plugin-vue": "^6.2.2",
- "fibers": "^4.0.3",
- "prettier": "^1.19.1",
- "sass": "^1.52.3",
- "sass-loader": "^8.0.2",
- "vue-cli-plugin-vuetify": "^2.5.0",
- "vue-template-compiler": "^2.6.14",
- "vuetify-loader": "^1.7.3",
- "webpack": "^4.46.0",
- "webpack-cli": "^3.3.12"
- },
- "eslintConfig": {
- "root": true,
- "env": {
- "node": true
- },
- "extends": [
- "plugin:vue/recommended",
- "eslint:recommended",
- "@vue/prettier"
- ],
- "parserOptions": {
- "parser": "babel-eslint"
- }
- },
- "postcss": {
- "plugins": {
- "autoprefixer": {}
- }
- },
- "browserslist": [
- "> 1%",
- "last 2 versions",
- "not dead"
- ]
-}
diff --git a/client/public/browserconfig.xml b/client/public/browserconfig.xml
deleted file mode 100644
index 2a929bc..0000000
--- a/client/public/browserconfig.xml
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
-
- #ffc40d
-
-
-
diff --git a/client/public/favicon.ico b/client/public/favicon.ico
deleted file mode 100644
index 369e8bf..0000000
Binary files a/client/public/favicon.ico and /dev/null differ
diff --git a/client/public/index.html b/client/public/index.html
deleted file mode 100644
index fcbd6e6..0000000
--- a/client/public/index.html
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
-
-
-
- Sockeye
-
-
-
-
-
-
diff --git a/client/public/manifest.json b/client/public/manifest.json
deleted file mode 100644
index 2311218..0000000
--- a/client/public/manifest.json
+++ /dev/null
@@ -1,8 +0,0 @@
-{
- "name": "Sockeye",
- "short_name": "Sockeye",
- "start_url": "/",
- "theme_color": "#ffffff",
- "background_color": "#ffffff",
- "display": "standalone"
-}
diff --git a/client/public/robots.txt b/client/public/robots.txt
deleted file mode 100644
index eb05362..0000000
--- a/client/public/robots.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-User-agent: *
-Disallow:
diff --git a/client/src/App.vue b/client/src/App.vue
deleted file mode 100644
index 88043dc..0000000
--- a/client/src/App.vue
+++ /dev/null
@@ -1,419 +0,0 @@
-
-
-
-
-
-
-
-
-
- {{ $store.state.userName }}
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t(item.title) }}
-
-
-
-
-
-
-
-
-
-
-
- {{
- $sock.t(subitem.title)
- }}
-
-
-
-
-
- {{ subsub.icon }}
-
-
-
-
-
-
-
-
-
-
-
-
- {{ subitem.icon }}
-
-
- {{
- $sock.t(subitem.title)
- }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{
- item.icon
- }}
-
-
- {{
- $sock.t(item.title)
- }}
-
-
-
-
-
-
-
-
-
-
-
- $sockiSignOut
- {{ $sock.t("Logout") }}
-
-
-
-
-
-
- {{ appBar.icon }}
- {{
- titleDisplay
- }}
-
-
-
-
-
-
-
- {{ newNotificationCount() }}
-
- $sockiBell
-
-
-
-
-
-
-
-
- {{ item.icon }}
-
-
-
-
-
-
-
-
-
- $sockiEllipsisV
-
-
-
-
-
-
- {{ item.header }}
-
-
-
-
- {{ item.icon }}
-
-
-
- {{ item.title }}
- {{ $sock.t(item.title) }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/api/authorizationroles.js b/client/src/api/authorizationroles.js
deleted file mode 100644
index 05e5548..0000000
--- a/client/src/api/authorizationroles.js
+++ /dev/null
@@ -1,184 +0,0 @@
-import bizrolerights from "./biz-role-rights";
-
-export default {
- ROLE_RIGHTS: bizrolerights,
- AUTHORIZATION_ROLES: {
- ///No role set
- NoRole: 0,
- ///BizAdminRestricted
- BizAdminRestricted: 1,
- ///BizAdmin
- BizAdmin: 2,
- ///ServiceRestricted
- ServiceRestricted: 4,
- ///Service
- Service: 8,
- ///InventoryRestricted
- InventoryRestricted: 16,
- ///Inventory
- Inventory: 32,
- ///Accounting
- Accounting: 64, //No restricted role, not sure if there is a need
- ///TechRestricted
- TechRestricted: 128,
- ///Tech
- Tech: 256,
- ///SubContractorRestricted
- SubContractorRestricted: 512,
- ///SubContractor
- SubContractor: 1024,
- ///CustomerRestricted
- CustomerRestricted: 2048,
- ///Customer
- Customer: 4096,
- ///OpsAdminRestricted
- OpsAdminRestricted: 8192,
- ///OpsAdmin
- OpsAdmin: 16384,
- ///Sales
- Sales: 32768,
- ///SalesRestricted
- SalesRestricted: 65536
- },
- //////////////////////////////////////////////////////////
- // Does current logged in user have role?
- // (Can be an array of roles or a single role, if array returns true if any of the array roles are present for this user)
- //
- hasRole(desiredRole) {
- if (!window.$gz.store.state.roles || window.$gz.store.state.roles === 0) {
- return false;
- }
- //array form?
-
- if (Array.isArray(desiredRole)) {
- //it's an array of roles, iterate and if any are present then return true
- for (let i = 0; i < desiredRole.length; i++) {
- if ((window.$gz.store.state.roles & desiredRole[i]) != 0) {
- return true;
- }
- }
- return false;
- } else {
- return (window.$gz.store.state.roles & desiredRole) != 0;
- }
- },
- //////////////////////////////////////////////////////////
- // Does current logged in user have *ANY* role?
- //
- //
- hasAnyRole() {
- if (!window.$gz.store.state.roles || window.$gz.store.state.roles === 0) {
- return false;
- }
- return true;
- },
- ///////////////////////////////////////////////////////////////////////
- // Get a default empty rights object so that it can be present when a
- // form first loads
- //
- defaultRightsObject() {
- return {
- change: false,
- read: false,
- delete: false
- };
- },
- ///////////////////////////////////////////////////////////////////////
- // Get a default FULL rights object for forms that don't really need
- // to check rights but fits into system for forms in place (e.g. change password)
- //
- fullRightsObject() {
- return {
- change: true,
- read: true,
- delete: true
- };
- },
- ///////////////////////////////////////////////////////////////////////
- // Get a read only rights object (customer workorder for example)
- //
- readOnlyRightsObject() {
- return {
- change: false,
- read: true,
- delete: false
- };
- },
- /////////////////////////////////
- // aType is the name of the object type as defined in socktype.js
- //
- getRights(aType) {
- //from bizroles.cs:
- //HOW THIS WORKS / WHATS EXPECTED
- //Change = CREATE, RETRIEVE, UPDATE, DELETE - Full rights
- //
- //ReadFullRecord = You can read *all* the fields of the record, but can't modify it. Change is automatically checked for so only add different roles from change
- //PICKLIST NOTE: this does not control getting a list of names for selection which is role independent because it's required for so much indirectly
- //DELETE = SAME AS CHANGE FOR NOW (There is no specific delete right for now though it's checked for by routes in Authorized.cs in case we want to add it in future as a separate right from create.)
- //NOTE: biz rules can supersede this, this is just for general rights purposes, if an object has restrictive business rules they will take precedence every time.
-
- const ret = this.defaultRightsObject();
-
- //Get the type name from the type enum value
- let typeName = undefined;
- for (const [key, value] of Object.entries(window.$gz.type)) {
- if (value == aType) {
- typeName = key;
- break;
- }
- }
-
- //Get the Sockeye stock REQUIRED role rights for that object
- const objectRoleRights = this.ROLE_RIGHTS[typeName];
- if (!objectRoleRights) {
- throw new Error(
- `authorizationroles::getRights type ${aType} not found in roles collection`
- );
- }
-
- //get the logged in user's role
- const userRole = window.$gz.store.state.roles;
- //calculate the effective rights
- //a non zero result of the bitwise calculation means true and zero means false so using !! to force it into a boolean value
- //(contrary to some style guides that say !! is obscure but I say it saves a lot of typing)
-
- const canChange = !!(userRole & objectRoleRights.Change);
-
- //sometimes rights to read are false if change is true since change trumps read anyway so accordingly:
- let canReadFullRecord = canChange;
- if (!canReadFullRecord) {
- //can't change but might have special rights to full record:
- canReadFullRecord = !!(userRole & objectRoleRights.ReadFullRecord);
- }
-
- ret.change = canChange;
- ret.delete = ret.change; //FOR NOW
- ret.read = canReadFullRecord;
-
- // console.log("authorizationroles::canOpen", {
- // typeName: typeName,
- // userRole: userRole,
- // objectRoleRights: objectRoleRights,
- // retResultIs: ret
- // });
-
- return ret;
- },
- /////////////////////////////////
- // convenience method for forms that deal with multiple object types
- // (i.e. grids, history etc, initialization of main menu etc)
- //
- canOpen(aType) {
- const r = this.getRights(aType);
- //convention is change might be defined but not read so canOpen is true eitehr way
- return r.change == true || r.read == true;
- },
- /////////////////////////////////
- // convenience method for forms that deal with multiple object types
- // (i.e. grids, history etc, initialization of main menu etc)
- //
- canChange(aType) {
- const r = this.getRights(aType);
- return r.change == true;
- }
-};
diff --git a/client/src/api/authutil.js b/client/src/api/authutil.js
deleted file mode 100644
index da3a2e1..0000000
--- a/client/src/api/authutil.js
+++ /dev/null
@@ -1,124 +0,0 @@
-import jwt_decode from "jwt-decode";
-import initialize from "./initialize";
-import notifypoll from "./notifypoll";
-
-export function processLogin(authResponse, loggedInWithKnownPassword) {
- // eslint-disable-next-line no-async-promise-executor
- return new Promise(async function(resolve, reject) {
- try {
- //check there is a response of some kind
- if (!authResponse) {
- window.$gz.store.commit("logItem", "auth::processLogin -> no response");
- return reject();
- }
-
- //is token present?
- if (!authResponse || !authResponse.token) {
- window.$gz.store.commit(
- "logItem",
- "auth::processLogin -> response contains no data"
- );
- return reject();
- }
- const token = jwt_decode(authResponse.token);
-
- if (!token || !token.iss) {
- window.$gz.store.commit(
- "logItem",
- "auth::processLogin -> response token empty"
- );
- return reject();
- }
-
- if (token.iss != "rockfish.ayanova.com") {
- window.$gz.store.commit(
- "logItem",
- "auth::processLogin -> token invalid (iss): " + token.iss
- );
- return reject();
- }
-
- //ensure the store is clean first in case we didn't come here from a clean logout
- window.$gz.store.commit("logout");
- sessionStorage.clear(); //clear all temporary session storage data
-
- //encourage password changing if a purchased license
- if (loggedInWithKnownPassword)
- window.$gz.store.commit("setKnownPassword", true);
-
- //Put app relevant items into vuex store so app can use them
- window.$gz.store.commit("login", {
- apiToken: authResponse.token,
- authenticated: true,
- userId: Number(token.id),
- translationId: authResponse.tid,
- userName: authResponse.name,
- roles: authResponse.roles,
- userType: authResponse.usertype,
- dlt: authResponse.dlt,
- l: authResponse.l,
- tfaEnabled: authResponse.tfa,
- customerRights: authResponse.customerRights
- });
-
- //decided to remove this as it is not an out of the ordinary scenario to log
- // however left this block here in case in future becomes necessary for some common issue
- // //log the login
- // window.$gz.store.commit(
- // "logItem",
- // "auth::processLogin -> User " + token.id + " logged in"
- // );
-
- //Get global settings
- const gsets = await window.$gz.api.get("global-biz-setting/client");
- if (gsets.error) {
- //In a form this would trigger a bunch of validation or error display code but for here and now:
- //convert error to human readable string for display and popup a notification to user
- const msg = window.$gz.api.apiErrorToHumanString(gsets.error);
- window.$gz.eventBus.$emit("notify-error", msg);
- } else {
- //Check if overrides and use them here
- //or else use browser defaults
- window.$gz.store.commit("setGlobalSettings", gsets.data);
- }
- await initialize();
- } catch (err) {
- reject(err);
- }
-
- //start notification polling
- notifypoll.startPolling();
- resolve();
- //-------------------------------------------------
- });
-}
-
-export function processLogout() {
- notifypoll.stopPolling();
- window.$gz.store.commit("logout");
- sessionStorage.clear(); //clear all temporary session storage data
-}
-
-export function isLoggedIn() {
- return (
- !!window.$gz.store.state.apiToken &&
- !isTokenExpired(window.$gz.store.state.apiToken)
- );
-}
-
-function getTokenExpirationDate(encodedToken) {
- const token = jwt_decode(encodedToken);
- if (!token.exp) {
- return null;
- }
-
- const date = new Date(0);
- date.setUTCSeconds(token.exp);
-
- return date;
-}
-
-function isTokenExpired(token) {
- const expirationDate = getTokenExpirationDate(token);
- return expirationDate < new Date();
-}
diff --git a/client/src/api/biz-role-rights.js b/client/src/api/biz-role-rights.js
deleted file mode 100644
index 74c651d..0000000
--- a/client/src/api/biz-role-rights.js
+++ /dev/null
@@ -1,47 +0,0 @@
-/**
- *
- * Auto generated by BizRoles.cs in server project, update here whenever that changes
- *
- *
- */
-export default {
- Customer: { Change: 32842, ReadFullRecord: 65797, Select: 131071 },
- CustomerNote: { Change: 32842, ReadFullRecord: 65797, Select: 131071 },
- CustomerNotifySubscription: {
- Change: 10,
- ReadFullRecord: 65797,
- Select: 131071
- },
- HeadOffice: { Change: 32842, ReadFullRecord: 65797, Select: 131071 },
- Global: { Change: 2, ReadFullRecord: 1, Select: 0 },
- GlobalOps: { Change: 16384, ReadFullRecord: 8192, Select: 0 },
- User: { Change: 2, ReadFullRecord: 1, Select: 131071 },
- UserOptions: { Change: 2, ReadFullRecord: 1, Select: 0 },
- Vendor: { Change: 106, ReadFullRecord: 98565, Select: 131071 },
- ServerState: { Change: 16384, ReadFullRecord: 131071, Select: 0 },
- LogFile: { Change: 0, ReadFullRecord: 24576, Select: 0 },
- Backup: { Change: 16384, ReadFullRecord: 8195, Select: 0 },
- FileAttachment: { Change: 2, ReadFullRecord: 3, Select: 0 },
- ServerJob: { Change: 16384, ReadFullRecord: 8195, Select: 0 },
- OpsNotificationSettings: { Change: 16384, ReadFullRecord: 8195, Select: 0 },
- ServerMetrics: { Change: 16384, ReadFullRecord: 24576, Select: 0 },
- Translation: { Change: 2, ReadFullRecord: 1, Select: 131071 },
- DataListSavedFilter: { Change: 2, ReadFullRecord: 131071, Select: 0 },
- FormUserOptions: { Change: 131071, ReadFullRecord: 131071, Select: 0 },
- FormCustom: { Change: 2, ReadFullRecord: 131071, Select: 0 },
- PickListTemplate: { Change: 2, ReadFullRecord: 131071, Select: 0 },
- BizMetrics: { Change: 2, ReadFullRecord: 98369, Select: 0 },
- Notification: { Change: 131071, ReadFullRecord: 131071, Select: 0 },
- NotifySubscription: { Change: 131071, ReadFullRecord: 131071, Select: 0 },
- Report: { Change: 3, ReadFullRecord: 131071, Select: 131071 },
- Memo: { Change: 124927, ReadFullRecord: 124927, Select: 124927 },
- Reminder: { Change: 124927, ReadFullRecord: 124927, Select: 124927 },
- Review: { Change: 124927, ReadFullRecord: 124927, Select: 124927 },
- Integration: { Change: 49514, ReadFullRecord: 49514, Select: 49514 },
- License: { Change: 32842, ReadFullRecord: 65797, Select: 131071 },
- TrialLicenseRequest: { Change: 32842, ReadFullRecord: 65797, Select: 131071 },
- SubscriptionServer: { Change: 32842, ReadFullRecord: 65797, Select: 131071 },
- Purchase: { Change: 32842, ReadFullRecord: 65797, Select: 131071 },
- Product: { Change: 32842, ReadFullRecord: 65797, Select: 131071 },
- GZCase: { Change: 32842, ReadFullRecord: 65797, Select: 131071 }
-};
diff --git a/client/src/api/dash-registry.js b/client/src/api/dash-registry.js
deleted file mode 100644
index 405de0b..0000000
--- a/client/src/api/dash-registry.js
+++ /dev/null
@@ -1,400 +0,0 @@
-import authorizationroles from "./authorizationroles";
-const role = authorizationroles.AUTHORIZATION_ROLES;
-/*
-
-*/
-export default {
- registry: [
- {
- roles: [
- role.BizAdmin,
- role.BizAdminRestricted,
- role.ServiceRestricted,
- role.Service,
- role.Accounting,
- role.Tech,
- role.TechRestricted
- ],
- title: "DashboardWorkOrderByStatusList",
- icon: "$sockiListAlt",
- type: "GzDashWorkorderByStatusList",
- singleOnly: false,
- settings: {
- customTitle: null,
- timeSpan: "*thisyear*",
- interval: "month",
- wostatus: null,
- wotags: [],
- wotagsany: true,
- woitemtags: [],
- woitemtagsany: true
- }
- },
- {
- roles: [
- role.BizAdmin,
- role.BizAdminRestricted,
- role.ServiceRestricted,
- role.Service,
- role.Accounting
- ],
- title: "DashboardWorkOrderStatusCount",
- icon: "$sockiChartBar",
- type: "GzDashWorkOrderStatusCount",
- scheduleableUserOnly: false,
- singleOnly: false,
- settings: {
- customTitle: null,
- timeSpan: "*thisyear*",
- interval: "month",
- wotags: [],
- wotagsany: true
- }
- },
- {
- roles: [
- role.BizAdmin,
- role.BizAdminRestricted,
- role.ServiceRestricted,
- role.Service,
- role.Accounting
- ],
- title: "DashboardWorkOrderStatusPct",
- icon: "$sockiChartBar",
- type: "GzDashWorkOrderStatusPct",
- scheduleableUserOnly: false,
- singleOnly: false,
- settings: {
- customTitle: null,
- timeSpan: "*thisyear*",
- interval: "month",
- wotags: [],
- wotagsany: true
- }
- },
- {
- roles: [
- role.BizAdmin,
- role.BizAdminRestricted,
- role.ServiceRestricted,
- role.Service,
- role.Accounting
- ],
- title: "DashboardPctWorkOrderCompletedOnTime",
- icon: "$sockiChartBar",
- type: "GzDashPctWorkOrderCompletedOnTimeBar",
- scheduleableUserOnly: false,
- singleOnly: false,
- settings: {
- customTitle: null,
- timeSpan: "*thisyear*",
- interval: "month",
- wotags: [],
- wotagsany: true,
- color: "#00205BFF"
- }
- },
- {
- roles: [
- role.BizAdmin,
- role.BizAdminRestricted,
- role.ServiceRestricted,
- role.Service,
- role.Accounting
- ],
- title: "DashboardCountWorkOrdersCreated",
- icon: "$sockiChartLine",
- type: "GzDashWorkOrderCreatedCountLine",
- scheduleableUserOnly: false,
- singleOnly: false,
- settings: {
- customTitle: null,
- timeSpan: "*thisyear*",
- interval: "day",
- wotags: [],
- wotagsany: true,
- woitemtags: [],
- woitemtagsany: true,
- color: "#00205BFF"
- }
- },
- {
- roles: [
- role.BizAdmin,
- role.BizAdminRestricted,
- role.ServiceRestricted,
- role.Service,
- role.Accounting
- ],
- title: "DashboardCountWorkOrdersCreated",
- icon: "$sockiChartBar",
- type: "GzDashWorkOrderCreatedCountBar",
- scheduleableUserOnly: false,
- singleOnly: false,
- settings: {
- customTitle: null,
- timeSpan: "*thisyear*",
- wotags: [],
- wotagsany: true,
- woitemtags: [],
- woitemtagsany: true,
- interval: "month",
- color: "#00205BFF"
- }
- },
- {
- roles: [
- role.BizAdmin,
- role.BizAdminRestricted,
- role.ServiceRestricted,
- role.Service,
- role.Accounting
- ],
- title: "DashboardOverdueAll",
- icon: "$sockiListAlt",
- type: "GzDashWorkorderOverdueAllList",
- scheduleableUserOnly: false,
- singleOnly: false,
- settings: {
- customTitle: null,
- wotags: [],
- wotagsany: true,
- woitemtags: [],
- woitemtagsany: true
- }
- },
- {
- roles: [role.Tech, role.TechRestricted],
- title: "DashboardOverdue",
- icon: "$sockiListAlt",
- type: "GzDashWorkorderOverduePersonalList",
- scheduleableUserOnly: true,
- singleOnly: true,
- settings: {
- customTitle: null,
- wotags: [],
- wotagsany: true,
- woitemtags: [],
- woitemtagsany: true
- }
- },
- {
- roles: [
- role.BizAdmin,
- role.BizAdminRestricted,
- role.ServiceRestricted,
- role.Service,
- role.Tech,
- role.TechRestricted
- ],
- title: "DashboardOpenCSR",
- icon: "$sockiListAlt",
- type: "GzDashCSROpenList",
- singleOnly: false,
- settings: {
- customTitle: null,
- custtags: [],
- custtagsany: true
- }
- },
- {
- roles: [
- role.BizAdmin,
- role.BizAdminRestricted,
- role.ServiceRestricted,
- role.Service,
- role.Accounting,
- role.Tech,
- role.TechRestricted
- ],
- title: "DashboardNotScheduled",
- icon: "$sockiListAlt",
- type: "GzDashWorkorderUnscheduledOpenList",
- singleOnly: false,
- settings: {
- customTitle: null,
- wostatus: null,
- wotags: [],
- wotagsany: true,
- woitemtags: [],
- woitemtagsany: true
- }
- },
- {
- roles: [
- role.BizAdmin,
- role.BizAdminRestricted,
- role.ServiceRestricted,
- role.Service,
- role.InventoryRestricted,
- role.Inventory,
- role.Accounting,
- role.Tech,
- role.TechRestricted,
- role.OpsAdmin,
- role.OpsAdminRestricted,
- role.Sales,
- role.SalesRestricted
- ],
- title: "ReminderList",
- icon: "$sockiCalendarDay",
- type: "GzDashTodayReminders",
- singleOnly: true,
- settings: {}
- },
- {
- roles: [
- role.BizAdmin,
- role.BizAdminRestricted,
- role.ServiceRestricted,
- role.Service,
- role.InventoryRestricted,
- role.Inventory,
- role.Accounting,
- role.Tech,
- role.TechRestricted,
- role.OpsAdmin,
- role.OpsAdminRestricted,
- role.Sales,
- role.SalesRestricted
- ],
- title: "ReviewList",
- icon: "$sockiCalendarDay",
- type: "GzDashTodayReviews",
- singleOnly: true,
- settings: {}
- },
- {
- roles: [role.Tech, role.TechRestricted],
- title: "DashboardScheduled",
- icon: "$sockiCalendarDay",
- type: "GzDashTodayScheduledWo",
- scheduleableUserOnly: true,
- singleOnly: true,
- settings: {}
- },
- {
- roles: [role.Tech, role.TechRestricted],
- title: "WorkOrderItemLaborServiceRateQuantity",
- icon: "$sockiChartLine",
- type: "GzDashLaborHoursPersonalLine",
- scheduleableUserOnly: true,
- singleOnly: false,
- settings: {
- customTitle: null,
- timeSpan: "*thisyear*",
- interval: "day",
- wotags: [],
- wotagsany: true,
- woitemtags: [],
- woitemtagsany: true,
- color: "#00205BFF"
- }
- },
- {
- roles: [role.Tech, role.TechRestricted],
- title: "WorkOrderItemLaborServiceRateQuantity",
- icon: "$sockiChartBar",
- type: "GzDashLaborHoursPersonalBar",
- scheduleableUserOnly: true,
- singleOnly: false,
- settings: {
- customTitle: null,
- timeSpan: "*thisyear*",
- wotags: [],
- wotagsany: true,
- woitemtags: [],
- woitemtagsany: true,
- interval: "month",
- color: "#00205BFF"
- }
- },
- {
- roles: [
- role.BizAdmin,
- role.BizAdminRestricted,
- role.ServiceRestricted,
- role.Service,
- role.Accounting
- ],
- title: "DashboardServiceRateQuantityAllUsers",
- icon: "$sockiChartLine",
- type: "GzDashLaborHoursEveryoneLine",
- scheduleableUserOnly: false,
- singleOnly: false,
- settings: {
- customTitle: null,
- timeSpan: "*thisyear*",
- interval: "month",
- wotags: [],
- wotagsany: true,
- woitemtags: [],
- woitemtagsany: true,
- techtags: [],
- techtagsany: true,
- userid: null,
- color: "#00205BFF"
- }
- },
- {
- roles: [
- role.BizAdmin,
- role.BizAdminRestricted,
- role.ServiceRestricted,
- role.Service,
- role.Accounting
- ],
- title: "DashboardServiceRateQuantityAllUsers",
- icon: "$sockiChartBar",
- type: "GzDashLaborHoursEveryoneBar",
- scheduleableUserOnly: false,
- singleOnly: false,
- settings: {
- customTitle: null,
- timeSpan: "*thisyear*",
- wotags: [],
- wotagsany: true,
- woitemtags: [],
- woitemtagsany: true,
- techtags: [],
- techtagsany: true,
- userid: null,
- interval: "month",
- color: "#00205BFF"
- }
- }
- ],
- availableItems() {
- const ret = [];
- for (let i = 0; i < this.registry.length; i++) {
- const item = this.registry[i];
-
- if (authorizationroles.hasRole(item.roles)) {
- //if it's only for sched users and not then skip
- if (
- item.scheduleableUserOnly &&
- !window.$gz.store.getters.isScheduleableUser
- ) {
- continue;
- }
- ret.push({
- id: i,
- title: item.title,
- icon: item.icon,
- type: item.type,
- singleOnly: item.singleOnly,
- settings: item.settings
- });
- }
- }
- return ret;
- },
- async cacheTranslationsForAvailableItems() {
- const items = this.availableItems();
-
- //await window.$gz.translation.cacheTranslations(items.map(z => z.title));
- await window.$gz.translation.cacheTranslations([
- ...new Set(items.map(z => z.title))
- ]);
- }
-};
diff --git a/client/src/api/enums.js b/client/src/api/enums.js
deleted file mode 100644
index bd69ba4..0000000
--- a/client/src/api/enums.js
+++ /dev/null
@@ -1,101 +0,0 @@
-export default {
- get(enumKey, enumValue) {
- enumKey = enumKey.toLowerCase();
- if (enumKey != "authorizationroles") {
- if (window.$gz.store.state.enums[enumKey] == undefined) {
- throw new Error(
- "ERROR enums::get -> enumKey " + enumKey + " is missing from store"
- );
- }
-
- const ret = window.$gz.store.state.enums[enumKey][enumValue];
- if (ret == undefined) {
- return "";
- } else {
- return ret;
- }
- } else {
- const ret = [];
- if (enumValue == null || enumValue == 0) {
- return "";
- }
- const availableRoles = this.getSelectionList("AuthorizationRoles");
- for (let i = 0; i < availableRoles.length; i++) {
- const role = availableRoles[i];
- if (enumValue & role.id) {
- ret.push(role.name);
- }
- }
- return ret.join(", ");
- }
- },
- //////////////////////////////////
- //
- // Used by forms to fetch selection list data
- // Sorts alphabetically by default but can be turned off with do not sort
- //
- getSelectionList(enumKey, noSort) {
- enumKey = enumKey.toLowerCase();
- const e = window.$gz.store.state.enums[enumKey];
- if (!e) {
- throw new Error(
- "ERROR enums::getSelectionList -> enumKey " +
- enumKey +
- " is missing from store"
- );
- }
- const ret = [];
-
- //turn it into an array suitable for selection lists
- for (const [key, value] of Object.entries(e)) {
- ret.push({ id: Number(key), name: value });
- }
- //sort by name
- if (!noSort) {
- ret.sort(window.$gz.util.sortByKey("name"));
- }
- return ret;
- },
- ///////////////////////////////////
- //
- // Fetches enum list from server
- // and puts in store. if necessary
- // ACCEPTS an ARRAY or a single STRING KEY
- //
- async fetchEnumList(enumKey) {
- if (!Array.isArray(enumKey)) {
- enumKey = [enumKey];
- }
- for (let i = 0; i < enumKey.length; i++) {
- //check if list
- //if not then fetch it and store it
- const k = enumKey[i].toLowerCase();
-
- //de-lodash
- // if (!window.$gz. _.has(window.$gz.store.state.enums, k)) {
- //enums is an object this is checking if that object has a key with the name in k
- if (!window.$gz.util.has(window.$gz.store.state.enums, k)) {
- const that = this;
-
- const dat = await that.fetchEnumKey(k);
- //massage the data as necessary
- const e = { enumKey: k, items: {} };
- for (let i = 0; i < dat.length; i++) {
- const o = dat[i];
- e.items[o.id] = o.name;
- }
- //stuff the data into the store
- window.$gz.store.commit("setEnum", e);
- }
- }
- },
- async fetchEnumKey(enumKey) {
- const res = await window.$gz.api.get("enum-list/list/" + enumKey);
- //We never expect there to be no data here
- //if (!Object.prototype.hasOwnProperty.call(res, "data")) {
- if (!Object.prototype.hasOwnProperty.call(res, "data")) {
- return Promise.reject(res);
- }
- return res.data;
- }
-};
diff --git a/client/src/api/errorhandler.js b/client/src/api/errorhandler.js
deleted file mode 100644
index 3e0aad9..0000000
--- a/client/src/api/errorhandler.js
+++ /dev/null
@@ -1,230 +0,0 @@
-let lastMessageHash = 0;
-let lastMessageTimeStamp = new Date();
-
-////////////////////////////////////////////////////////
-//
-// translate, Log and optionally display errors
-// return translated message in case caller needs it
-async function dealWithError(msg, vm) {
- //Check if this is the same message again as last time within a short time span to avoid endless looping errors of same message
- //but still allow for user to repeat operation that causes error so they can view it
- const newHash = window.$gz.util.quickHash(msg);
- if (newHash == lastMessageHash) {
- const tsnow = new Date();
- //don't show the same exact message if it was just shown less than 1 second ago
- if (tsnow - lastMessageTimeStamp < 1000) return;
- }
- lastMessageHash = newHash;
- lastMessageTimeStamp = new Date();
-
- //translate as necessary
- msg = await window.$gz.translation.translateStringWithMultipleKeysAsync(msg);
-
- //In some cases the error may not be translatable, if this is not a debug run then it should show without the ?? that translating puts in keys not found
- //so it's not as weird looking to the user
- //vm may be null here so check window gz for dev
- if (!window.$gz.dev && msg.includes("??")) {
- msg = msg.replace("??", "");
- }
- window.$gz.store.commit("logItem", msg);
- if (window.$gz.dev) {
- const errMsg = "DEV MODE errorHandler.js:: Unexpected error: \r\n" + msg;
- // eslint-disable-next-line no-console
- console.error(errMsg);
-
- // eslint-disable-next-line no-debugger
- debugger;
- }
-
- //If a form instance was provided (vue instance)
- //and it can display and error then put the error into it
- if (!vm || vm.formState == undefined) {
- //Special work around to not redundantly display errors when Sockeye job fails
- // and Vue decides to throw it's own error into the mix when we've already displayed appropriate message
- if (msg.includes("Vue error") && msg.includes("Job failed")) {
- return;
- }
-
- //popup if no place to display it elsewise
- window.$gz.eventBus.$emit("notify-error", msg);
- return;
- }
-
- //should be able to display in form...
- if (vm.$sock.dev) {
- //make sure formState.appError is defined on data
- if (!window.$gz.util.has(vm, "formState.appError")) {
- throw new Error(
- "DEV ERROR errorHandler::dealWithError -> formState.appError seems to be missing from form's vue data object"
- );
- }
- }
- vm.formState.appError = msg;
-
- //TODO: What is this doing exactly?
- //it's related to server errors but I'm setting appError above
- //why two error properties?
- window.$gz.form.setErrorBoxErrors(vm);
-}
-
-///////////////////////////////////////////////////////////////////////////////////
-// DECODE ERROR TO TEXT
-// accept an unknown type of error variable
-// and return human readable text
-//
-function decodeError(e, vm) {
- // console.log("decodeError full e object as is: ");
- // console.log(e);
- // console.log("decodeError full e object stringified: ", JSON.stringify(e));
- // console.log("decodeError is typeof:", typeof e);
- // console.log("decodeError e is instanceof Error ", e instanceof Error);
- // console.log(
- // "decodeError e is a string already: ",
- // window.$gz.util.isString(e)
- // );
-
- //already a string?
- if (window.$gz.util.isString(e)) {
- return e; //nothing to do here, already a string
- }
-
- if (e instanceof Error) {
- //an Error object?
- return `Error - Name:${e.name}, Message:${e.message}`;
- }
-
- if (
- e == null ||
- e == "" ||
- (typeof e === "object" && Object.keys(e).length === 0)
- ) {
- return `errorHandler::decodeError - Error is unknown / empty (e:${e})`;
- }
-
- //API error object or error RESPONSE object?
- if (e.error || e.code) {
- let err = null;
- //could be the error RESPONSE or it could be the error object *inside* the error response so sort out here
- if (e.error) {
- //it's the entire resopnse object
- err = e.error;
- } else {
- //it's the inner error object only
- err = e;
- }
- let msg = "";
- if (err.code) {
- msg += err.code;
- msg += " - ";
- if (vm) {
- msg += vm.$sock.t("ErrorAPI" + err.code);
- }
- msg += "\n";
- }
- if (err.target) {
- msg += err.target;
- msg += "\n";
- }
-
- if (err.message && !err.message.startsWith("ErrorAPI")) {
- //errapi already dealt with above no need to repeat it here
- msg += err.message;
- msg += "\n";
- }
-
- if (err.details) {
- err.details.forEach(z => {
- let zerror = null;
- if (z.error) {
- zerror = z.error + " - ";
- }
- msg += `${zerror}${z.message}\n`;
- });
- }
-
- //console.log("errorhandler:decodeError returning message:", msg);
-
- return msg;
- }
-
- //Javascript Fetch API Response object?
- if (e instanceof Response) {
- return `http error: ${e.statusText} - ${e.status} Url: ${e.url}`;
- }
-
- //last resort
- return JSON.stringify(e);
-}
-export default {
- handleGeneralError(message, source, lineno, colno, error) {
- let msg = "General error: \n" + message;
- if (source) {
- msg += "\nsource: " + source;
- }
- if (lineno) {
- msg += "\nlineno: " + lineno;
- }
- if (colno) {
- msg += "\ncolno: " + colno;
- }
- if (error) {
- if (typeof error === "object") {
- error = JSON.stringify(error);
- }
- msg += "\nerror: " + error;
- }
- dealWithError(msg);
- },
- handleVueError(err, vm, info) {
- let msg = "Vue error: \n" + decodeError(err, vm);
- if (err.fileName) {
- msg += "\nfilename: " + err.fileName;
- }
- if (err.lineNumber) {
- msg += "\nlineNumber: " + err.lineNumber;
- }
- if (info) {
- msg += "\ninfo: " + info;
- }
- if (err.stack) {
- msg += "\nSTACK:\n " + err.stack;
- }
- dealWithError(msg, vm);
- },
- handleVueWarning(wmsg, vm, trace) {
- let msg = "Vue warning: \n" + decodeError(wmsg, vm);
- if (trace) {
- msg += "\ntrace: " + trace;
- }
- dealWithError(msg, vm);
- },
- /////////////////////////////////////////////////
- // translate, log and return error
- //
- handleFormError(err, vm) {
- if (window.$gz.dev) {
- console.trace(err);
- }
- //called inside forms when things go unexpectedly wrong
- dealWithError(decodeError(err, vm), vm);
- },
- /////////////////////////////////////////////////
- // decode error into string suitable to display
- //
- errorToString(err, vm) {
- //called inside forms when things go unexpectedly wrong
- return decodeError(err, vm);
- }
-};
-/*
-ERROR CODES USED:
-Client error codes are all in the range of E16 to E999
-Server error codes are all in the range of E1000 to E1999
-API specific (logic) error codes are all in the range of 2000 to 3000
-
-CLIENT ERROR CODES:
-E16 - ErrorUserNotAuthenticated
-E17 - ErrorServerUnresponsive
-E18 - Misc error without a translation key, unexpected throws etc or api error during server call, details in the message / Any error without a translation key defined basically
-
-*/
diff --git a/client/src/api/eventbus.js b/client/src/api/eventbus.js
deleted file mode 100644
index 968c96b..0000000
--- a/client/src/api/eventbus.js
+++ /dev/null
@@ -1,2 +0,0 @@
-import Vue from "vue";
-export default new Vue();
diff --git a/client/src/api/form-custom-template.js b/client/src/api/form-custom-template.js
deleted file mode 100644
index 13525a2..0000000
--- a/client/src/api/form-custom-template.js
+++ /dev/null
@@ -1,83 +0,0 @@
-///Add data key names which make the custom fields control work more easily
-///Since the names can be inferred from the data that comes from the server it saves bandwidth to do it here at the client
-function addDataKeyNames(obj) {
- //iterate the array of objects
- //if it has a "type" property then it's a custom field so add its data key name
-
- for (let i = 0; i < obj.length; i++) {
- if (obj[i].type) {
- obj[i]["dataKey"] = "c" + parseInt(obj[i].fld.replace(/^\D+/g, ""));
- }
- }
-
- //return the whole thing again now translated
- return obj;
-}
-
-export default {
- ////////////////////////////////
- // Cache the form customization data if it's not already present
- // NOTE: FORM KEY **MUST** BE THE AYATYPE NAME WHERE POSSIBLE, IF NO TYPE THEN AN EXCEPTION NEEDS TO BE CODED IN
- //SERVER FormFieldReference.cs -> public static List FormFieldKeys
- //
- async get(formKey, vm, forceRefresh) {
- if (
- forceRefresh ||
- !window.$gz.util.has(window.$gz.store.state.formCustomTemplate, formKey)
- ) {
- //fetch and populate the store
- const res = await window.$gz.api.get("form-custom/" + formKey);
- if (res.error) {
- throw new Error(window.$gz.errorHandler.errorToString(res, vm));
- }
-
- window.$gz.store.commit("setFormCustomTemplateItem", {
- formKey: formKey,
- concurrency: res.data.concurrency,
- value: addDataKeyNames(JSON.parse(res.data.template))
- });
- }
- },
- set(formKey, token, template) {
- window.$gz.store.commit("setFormCustomTemplateItem", {
- formKey: formKey,
- concurrency: token,
- value: addDataKeyNames(JSON.parse(template))
- });
- },
- getFieldTemplateValue(formKey, fieldKey) {
- if (fieldKey === undefined) {
- throw new Error(
- "ERROR form-custom-template::getFieldTemplateValue -> fieldKey not specified for template for form [" +
- formKey +
- "]"
- );
- }
-
- const template = window.$gz.store.state.formCustomTemplate[formKey];
- if (template === undefined) {
- throw new Error(
- "ERROR form-custom-template::getFieldTemplateValue -> Store is missing form template for [" +
- formKey +
- "]"
- );
- }
-
- //Note that not every field being requested will exist so it's valid to return undefined
- //template is an array of objects that contain a key called "fld"
- return template.find(z => z.fld == fieldKey);
- },
- getTemplateConcurrencyToken(formKey) {
- const tok =
- window.$gz.store.state.formCustomTemplate[formKey + "_concurrencyToken"];
- if (tok === undefined) {
- throw new Error(
- "ERROR form-custom-template::getTemplateConcurrencyToken -> Store is missing concurrency token for [" +
- formKey +
- "]"
- );
- }
-
- return tok;
- }
-};
diff --git a/client/src/api/gzapi.js b/client/src/api/gzapi.js
deleted file mode 100644
index 877f05f..0000000
--- a/client/src/api/gzapi.js
+++ /dev/null
@@ -1,672 +0,0 @@
-import router from "../router";
-
-function stringifyPrimitive(v) {
- switch (typeof v) {
- case "string":
- return v;
-
- case "boolean":
- return v ? "true" : "false";
-
- case "number":
- return isFinite(v) ? v : "";
-
- default:
- return "";
- }
-}
-
-////////////////////////////////////////////
-// Try to handle an api error
-// return true if handled or false if not
-//
-function handleError(action, error, route) {
- const errorMessage =
- "API error: " + action + " route =" + route + ", message =" + error.message;
- window.$gz.store.commit("logItem", errorMessage);
-
- //Handle 403 not authorized
- //popup not authorized, log, then go to HOME
- //was going to go back one page, but realized most of the time a not authorized is in
- //reaction to directly entered or opened link, not application logic driving it, so home is safest choice
- //
- if (error.message && error.message.includes("NotAuthorized")) {
- window.$gz.eventBus.$emit(
- "notify-warning",
- window.$gz.translation.get("ErrorUserNotAuthorized")
- );
- router.push(window.$gz.store.state.homePage);
-
- throw new Error("LT:ErrorUserNotAuthorized");
- }
-
- //Handle 401 not authenticated
- if (error.message && error.message.includes("NotAuthenticated")) {
- window.$gz.eventBus.$emit(
- "notify-error",
- window.$gz.translation.get("ErrorUserNotAuthenticated")
- );
-
- router.push("/login");
-
- throw new Error("LT:ErrorUserNotAuthenticated");
- }
-
- //is it a network error?
- //https://medium.com/@vinhlh/how-to-handle-networkerror-when-using-fetch-ff2663220435
- if (error instanceof TypeError) {
- if (
- error.message.includes("Failed to fetch") ||
- error.message.includes("NetworkError") ||
- error.message.includes("Network request failed")
- ) {
- let msg = "";
-
- if (window.$gz.store.state.authenticated) {
- msg = window.$gz.translation.get("ErrorServerUnresponsive");
- } else {
- msg = "Could not connect to Sockeye server ";
- }
-
- msg += window.$gz.api.APIUrl("") + "\r\nError: " + error.message;
-
- window.$gz.eventBus.$emit("notify-error", msg);
- //note: using translation key in square brackets
-
- throw new Error(msg);
- }
- }
-
- //Ideally this should never get called because any issue should be addressed above
- window.$gz.errorHandler.handleFormError(error);
-}
-
-export default {
- status(response) {
- //Handle expected api errors
- if (response.status == 401) {
- throw new Error("LT:ErrorUserNotAuthenticated");
- }
-
- if (response.status == 403) {
- throw new Error("LT:ErrorUserNotAuthorized");
- }
-
- //404 not found is an expected status not worth logging allow to bubble up
- //for client code to deal with
- if (response.status == 404) {
- return Promise.resolve(response);
- }
-
- if (response.status == 405) {
- //Probably a development error
-
- throw new Error("Method Not Allowed (route issue?) " + response.url);
- }
-
- if (response.status >= 200 && response.status < 300) {
- return Promise.resolve(response);
- } else {
- //log unhandled api error
- window.$gz.store.commit(
- "logItem",
- "API error: status=" +
- response.status +
- ", statusText=" +
- response.statusText +
- ", url=" +
- response.url
- );
- //let it float up for dealing with by caller(s)
- return Promise.resolve(response);
- }
- },
- statusEx(response) {
- //Handle expected api errors
- if (response.status == 401) {
- throw new Error("LT:ErrorUserNotAuthenticated");
- }
-
- if (response.status == 403) {
- throw new Error("LT:ErrorUserNotAuthorized");
- }
-
- //404 not found is an expected status not worth logging allow to bubble up
- //for client code to deal with
- if (response.status == 404) {
- return;
- }
-
- if (response.status == 405) {
- //Probably a development error
-
- throw new Error("Method Not Allowed (route issue?) " + response.url);
- }
-
- if (response.status >= 200 && response.status < 300) {
- return;
- } else {
- //log unhandled api error
-
- window.$gz.store.commit(
- "logItem",
- "API error: status=" +
- response.status +
- ", statusText=" +
- response.statusText +
- ", url=" +
- response.url
- );
- }
- },
- async extractBodyEx(response) {
- if (response.status == 204) {
- //no content, nothing to process
- return response;
- }
- const contentType = response.headers.get("content-type");
-
- if (!contentType) {
- return response;
- }
- if (contentType.includes("json")) {
- return await response.json();
- }
- if (contentType.includes("text/plain")) {
- return await response.text();
- }
-
- if (contentType.includes("application/pdf")) {
- return await response.blob();
- }
- return response;
- },
- extractBody(response) {
- if (response.status == 204) {
- //no content, nothing to process
- return response;
- }
- const contentType = response.headers.get("content-type");
- if (!contentType) {
- return response;
- }
- if (contentType.includes("json")) {
- return response.json();
- }
- if (contentType.includes("text/plain")) {
- return response.text();
- }
- return response;
- },
- apiErrorToHumanString(apiError) {
- //empty error object?
- if (!apiError) {
- return "(E18) - apiErrorToHumanString():: Empty API eror, unknown";
- }
- //convert to readable string
- return "(E18) - " + JSON.stringify(apiError);
- },
- patchAuthorizedHeaders() {
- return {
- Accept: "application/json",
- "Content-Type": "application/json-patch+json",
- Authorization: "Bearer " + window.$gz.store.state.apiToken
- };
- },
- postAuthorizedHeaders() {
- return {
- Accept: "application/json",
- "Content-Type": "application/json",
- Authorization: "Bearer " + window.$gz.store.state.apiToken
- //this maybe useful in future like batch ops etc so keeping as a reminder
- //,"X-AY-Import-Mode": true
- };
- },
- postUnAuthorizedHeaders() {
- return {
- Accept: "application/json",
- "Content-Type": "application/json"
- };
- },
- fetchPostNoAuthOptions(data) {
- return {
- method: "post",
- mode: "cors",
- headers: this.postUnAuthorizedHeaders(),
- body: JSON.stringify(data)
- };
- },
- fetchPostOptions(data) {
- return {
- method: "post",
- mode: "cors",
- headers: this.postAuthorizedHeaders(),
- body: JSON.stringify(data)
- };
- },
- fetchPutOptions(data) {
- return {
- method: "put",
- mode: "cors",
- headers: this.postAuthorizedHeaders(),
- body: JSON.stringify(data)
- };
- },
- fetchGetOptions() {
- /* GET WITH AUTH */
- return {
- method: "get",
- mode: "cors",
- headers: this.postAuthorizedHeaders()
- };
- },
- fetchRemoveOptions() {
- /* REMOVE WITH AUTH */
- return {
- method: "delete",
- mode: "cors",
- headers: this.postAuthorizedHeaders()
- };
- },
- APIUrl(apiPath) {
- if (
- window.$gz.dev &&
- window.location.hostname == "localhost" &&
- window.location.port == "8080"
- ) {
- return "http://localhost:7676/api/v8.0/" + apiPath;
- }
-
- return (
- window.location.protocol +
- "//" +
- window.location.host +
- "/api/v8.0/" +
- apiPath
- );
- },
- helpUrl() {
- if (
- window.$gz.dev &&
- window.location.hostname == "localhost" &&
- window.location.port == "8080"
- ) {
- return "http://localhost:7676/docs/";
- }
- return window.location.protocol + "//" + window.location.host + "/docs/";
- },
- helpUrlCustomer() {
- if (
- window.$gz.dev &&
- window.location.hostname == "localhost" &&
- window.location.port == "8080"
- ) {
- return "http://localhost:7676/cust/";
- }
- return window.location.protocol + "//" + window.location.host + "/cust/";
- },
- /////////////////////////////
- // Just the server itself
- // used by profiler etc
- //
- ServerBaseUrl() {
- return this.helpUrl().replace("/docs/", "/");
- },
- /////////////////////////////
- // generic routed download URL
- //
- genericDownloadUrl(route) {
- //http://localhost:7676/api/v8/backup/download/100?t=sssss
- return this.APIUrl(route + "?t=" + window.$gz.store.state.downloadToken);
- },
- /////////////////////////////
- // report file download URL
- //
- reportDownloadUrl(fileName) {
- //http://localhost:7676/api/v8/report/download/filename.pdf?t=sssss
-
- return this.APIUrl(
- "report/download/" +
- fileName +
- "?t=" +
- window.$gz.store.state.downloadToken
- );
- },
- /////////////////////////////
- // backup file download URL
- //
- backupDownloadUrl(fileName) {
- //http://localhost:7676/api/v8/backup/download/100?t=sssss
-
- return this.APIUrl(
- "backup/download/" +
- fileName +
- "?t=" +
- window.$gz.store.state.downloadToken
- );
- },
- /////////////////////////////
- // attachment download URL
- //
- attachmentDownloadUrl(fileId, ctype) {
- //http://localhost:7676/api/v8/attachment/download/100?t=sssss
- //Ctype is optional and is the MIME content type, used to detect image urls at client for drag and drop ops
- //in wiki but ignored by server
-
- let url =
- "attachment/download/" +
- fileId +
- "?t=" +
- window.$gz.store.state.downloadToken;
-
- if (ctype && ctype.includes("image")) {
- url += "&i=1";
- }
-
- return this.APIUrl(url);
- },
- /////////////////////////////
- // logo download URL
- // (size= 'small', 'medium', 'large')
- logoUrl(size) {
- //http://localhost:7676/api/v8/logo/small
- return this.APIUrl("logo/" + size);
- },
- /////////////////////////////
- // REPLACE END OF URL
- // (used to change ID in url)
- replaceAfterLastSlash(theUrl, theReplacement) {
- return theUrl.substr(0, theUrl.lastIndexOf("\\") + 1) + theReplacement;
- },
- /////////////////////////////
- // ENCODE QUERY STRING
- //
- buildQuery(obj, sep, eq, name) {
- sep = sep || "&";
- eq = eq || "=";
- if (obj === null) {
- obj = undefined;
- }
-
- if (typeof obj === "object") {
- return Object.keys(obj)
- .map(function(k) {
- const ks = encodeURIComponent(stringifyPrimitive(k)) + eq;
- if (Array.isArray(obj[k])) {
- return obj[k]
- .map(function(v) {
- return ks + encodeURIComponent(stringifyPrimitive(v));
- })
- .join(sep);
- } else {
- return ks + encodeURIComponent(stringifyPrimitive(obj[k]));
- }
- })
- .filter(Boolean)
- .join(sep);
- }
-
- if (!name) return "";
- return (
- encodeURIComponent(stringifyPrimitive(name)) +
- eq +
- encodeURIComponent(stringifyPrimitive(obj))
- );
- },
- ///////////////////////////////////
- // GET DATA FROM API SERVER
- //
- async get(route) {
- try {
- const that = this;
-
- let r = await fetch(that.APIUrl(route), that.fetchGetOptions());
- that.statusEx(r);
- r = await that.extractBodyEx(r);
- return r;
- } catch (error) {
- //fundamental error, can't proceed with this call
- handleError("GET", error, route);
- }
- },
-
- //////////////////////////////////////
- // Test delay for troubleshooting
- //
- doDelayAsync: () => {
- // eslint-disable-next-line
- return new Promise(resolve => {
- setTimeout(() => resolve("I did something"), 10000);
- });
- },
- ///////////////////////////////////
- // POST / PUT DATA TO API SERVER
- //
- async upsert(route, data, isLogin = false) {
- try {
- const that = this;
- //determine if this is a new or existing record
- let fetchOptions = undefined;
- //put?
- if (data && data.concurrency) {
- fetchOptions = that.fetchPutOptions(data);
- } else {
- //post
- //ensure the route doesn't end in /0 which will happen if it's a new record
- //since the edit forms just send the url here with the ID regardless
- if (route.endsWith("/0")) {
- route = route.slice(0, -2);
- }
- if (isLogin == false) {
- fetchOptions = that.fetchPostOptions(data);
- } else {
- fetchOptions = that.fetchPostNoAuthOptions(data);
- }
- }
-
- let r = await fetch(that.APIUrl(route), fetchOptions);
- that.statusEx(r);
- r = await that.extractBodyEx(r);
- return r;
- } catch (error) {
- if (isLogin == false) {
- handleError("UPSERT", error, route);
- } else {
- //specifically this is for the login page
- console.log("upser error is: ", error);
- throw new Error(window.$gz.errorHandler.errorToString(error));
- }
- }
- },
- ///////////////////////////////////
- // DELETE DATA FROM API SERVER
- //
- async remove(route) {
- const that = this;
- try {
- let r = await fetch(that.APIUrl(route), that.fetchRemoveOptions());
- that.statusEx(r);
- //delete will return a body if there is an error of some kind with the request
- r = await that.extractBodyEx(r);
- return r;
- } catch (error) {
- //fundamental error, can't proceed with this call
- handleError("DELETE", error, route);
- }
- },
- ///////////////////////////////////
- // PUT DATA TO API SERVER
- // (used for puts that can't have a concurrency token like above)
- async put(route, data) {
- try {
- const that = this;
- let r = await fetch(that.APIUrl(route), that.fetchPutOptions(data));
- that.statusEx(r);
- r = await that.extractBodyEx(r);
- return r;
- } catch (error) {
- handleError("PUT", error, route);
- }
- },
- ///////////////////////////////////
- // POST DATA TO API SERVER
- // (used for post only routes not needing upserts)
- async post(route, data) {
- try {
- const that = this;
- let r = await fetch(that.APIUrl(route), that.fetchPostOptions(data));
- that.statusEx(r);
- r = await that.extractBodyEx(r);
- return r;
- } catch (error) {
- handleError("POST", error, route);
- }
- },
- ///////////////////////////////////
- // POST FILE ATTACHMENTS
- // @param {sockId:objectid, sockType:aType, files:[array of files]}
- //
- async uploadAttachment(at) {
- const that = this;
- try {
- var files = at.files;
- var data = new FormData();
- for (var i = 0; i < files.length; i++) {
- data.append(files[i].name, files[i]);
- }
-
- data.append("AttachToAType", at.sockType);
- data.append("AttachToObjectId", at.sockId);
- data.append("Notes", at.notes);
- data.append("FileData", at.fileData);
-
- //-----------------
-
- const fetchOptions = {
- method: "post",
- mode: "cors",
- headers: {
- Authorization: "Bearer " + window.$gz.store.state.apiToken
- },
- body: data
- };
-
- let r = await fetch(that.APIUrl("attachment"), fetchOptions);
- that.statusEx(r);
- r = await that.extractBodyEx(r);
- return r;
- } catch (error) {
- handleError("POSTATTACHMENT", error, "uploadAttachmentRoute");
- }
- },
- //////////////////////////////////////////////
- // POST (UPLOAD) FILE TO ARBITRARY ROUTE
- // for various things that require an upload
- // e.g. translation import etc
- //
- //
- async upload(route, at) {
- const that = this;
- try {
- var files = at.files;
- var data = new FormData();
- for (var i = 0; i < files.length; i++) {
- data.append(files[i].name, files[i]);
- }
- if (at.sockType) {
- data.append("SockType", at.sockType);
- }
- if (at.sockId) {
- data.append("ObjectId", at.sockId);
- }
- if (at.notes) {
- data.append("Notes", at.notes);
- }
- data.append("FileData", at.fileData);
-
- //-----------------
-
- const fetchOptions = {
- method: "post",
- mode: "cors",
- headers: {
- Authorization: "Bearer " + window.$gz.store.state.apiToken
- },
- body: data
- };
-
- let r = await fetch(that.APIUrl(route), fetchOptions);
- that.statusEx(r);
- r = await that.extractBodyEx(r);
- return r;
- } catch (error) {
- handleError("POSTATTACHMENT", error, route);
- }
- },
-
- ///////////////////////////////////
- // POST LOGO
- //
- //
- async uploadLogo(fileData, size) {
- const that = this;
- try {
- const data = new FormData();
- data.append(fileData.name, fileData);
-
- //-----------------
-
- const fetchOptions = {
- method: "post",
- mode: "cors",
- headers: {
- Authorization: "Bearer " + window.$gz.store.state.apiToken
- },
- body: data
- };
-
- let r = await fetch(that.APIUrl("logo/" + size), fetchOptions);
- that.statusEx(r);
- r = await that.extractBodyEx(r);
- return r;
- } catch (error) {
- handleError("uploadLogo", error, "postLogoRoute");
- }
- },
- ///////////////////////////////////
- // REPORT CLIENT META DATA
- //
- //
- reportClientMetaData() {
- const nowUtc = window.$gz.locale.nowUTC8601String();
- return {
- UserName: window.$gz.store.state.userName,
- UserId: window.$gz.store.state.userId,
- Authorization: "Bearer " + window.$gz.store.state.apiToken, //api token for using api methods as current user viewing report
- DownloadToken: window.$gz.store.state.downloadToken,
- TimeZoneName: window.$gz.locale.getResolvedTimeZoneName(),
- LanguageName: window.$gz.locale.getResolvedLanguage(),
- Hour12: window.$gz.locale.getHour12(),
- CurrencyName: window.$gz.locale.getCurrencyName(),
- DefaultLocale: window.$gz.locale.getResolvedLanguage().split("-", 1)[0], //kind of suspect, maybe it can be removed
- PDFDate: window.$gz.locale.utcDateToShortDateLocalized(nowUtc),
- PDFTime: window.$gz.locale.utcDateToShortTimeLocalized(nowUtc)
- };
- },
- ///////////////////////////////////
- // FETCH BIZ OBJECT NAME
- //
- //
- async fetchBizObjectName(sockType, objectId) {
- const res = await this.get(`name/${sockType}/${objectId}`);
- //We never expect there to be no data here
- if (!Object.prototype.hasOwnProperty.call(res, "data")) {
- return Promise.reject(res);
- } else {
- return res.data;
- }
- }
- //---------------
-
- //new functions above here
-};
diff --git a/client/src/api/gzdialog.js b/client/src/api/gzdialog.js
deleted file mode 100644
index 49ebdfa..0000000
--- a/client/src/api/gzdialog.js
+++ /dev/null
@@ -1,188 +0,0 @@
-let VM_LOCAL = null;
-
-//Calculate a reasonable time to show the alert based on the size of the message and some sane bounds
-//https://ux.stackexchange.com/a/85898
-function CalculateDelay(msg) {
- //Min 2 seconds max 8 seconds
- return Math.min(Math.max(msg.length * 50, 3000), 8000);
-}
-
-/////////////////////////////////
-// Dialog, toast, notification
-// utils and handlers
-//
-export default {
- ///////////////////////////////////
- // WIRE UP DIALOG EVENTS
- //
- // called once from app.vue only
- //
- wireUpEventHandlers(vm) {
- //###########################################
- //Notifications: pops up and slowly disappears
- //ACTUAL UI IN gznotify.vue
- //###########################################
-
- ///////////
- //ERROR
- window.$gz.eventBus.$on("notify-error", function handleNotifyWarn(
- msg,
- helpUrl
- ) {
- //log full message
- window.$gz.store.commit("logItem", "notify-error: " + msg);
- //trim really long message as it's likely useless beyond the first few lines (stack trace etc)
- msg = msg.substring(0, 600);
- vm.$root.$gznotify({
- message: msg,
- type: "error",
- timeout: CalculateDelay(msg),
- helpUrl: helpUrl
- });
- });
-
- ///////////
- //WARNING
- window.$gz.eventBus.$on("notify-warning", function handleNotifyWarn(
- msg,
- helpUrl
- ) {
- window.$gz.store.commit("logItem", "notify-warning: " + msg);
- msg = msg.substring(0, 600);
- vm.$root.$gznotify({
- message: msg,
- type: "warning",
- timeout: CalculateDelay(msg),
- helpUrl: helpUrl
- });
- });
-
- ///////////
- //INFO
- window.$gz.eventBus.$on("notify-info", function handleNotifyInfo(
- msg,
- helpUrl
- ) {
- window.$gz.store.commit("logItem", "notify-info: " + msg);
- msg = msg.substring(0, 600);
- vm.$root.$gznotify({
- message: msg,
- type: "info",
- timeout: CalculateDelay(msg),
- helpUrl: helpUrl
- });
- });
-
- ///////////
- //SUCCESS
- window.$gz.eventBus.$on("notify-success", function handleNotifySuccess(
- msg,
- helpUrl
- ) {
- vm.$root.$gznotify({
- message: msg,
- type: "success",
- timeout: CalculateDelay(msg),
- helpUrl: helpUrl
- });
- });
-
- VM_LOCAL = vm;
- },
- //###########################################
- //CONFIRMATION DIALOGS
- //ACTUAL UI IN gzconfirm.vue
- //###########################################
- /////////////////////////////////////
- // Are you sure you want to delete?
- //
- confirmDelete() {
- return VM_LOCAL.$root.$gzconfirm({
- message: window.$gz.translation.get("DeletePrompt"),
- yesButtonText: window.$gz.translation.get("Delete"),
- noButtonText: window.$gz.translation.get("Cancel"),
- type: "warning"
- });
- },
- /////////////////////////////////////
- // Are you sure you want to leave unsaved?
- //
- confirmLeaveUnsaved() {
- return VM_LOCAL.$root.$gzconfirm({
- message: window.$gz.translation.get("AreYouSureUnsavedChanges"),
- yesButtonText: window.$gz.translation.get("Leave"),
- noButtonText: window.$gz.translation.get("Cancel"),
- type: "warning"
- });
- },
- /////////////////////////////////////
- // Display LT message with wait for ok
- //
- displayLTErrorMessage(tKeyText, tKeyTitle = undefined) {
- return VM_LOCAL.$root.$gzconfirm({
- message: tKeyText ? window.$gz.translation.get(tKeyText) : "",
- title: tKeyTitle ? window.$gz.translation.get(tKeyTitle) : "",
- yesButtonText: window.$gz.translation.get("OK"),
- type: "error"
- });
- },
- /////////////////////////////////////
- // Display LT message with wait for ok
- //
- displayLTModalNotificationMessage(
- tKeyText,
- tKeyTitle = undefined,
- ttype = "info",
- tHelpUrl = undefined
- ) {
- return VM_LOCAL.$root.$gzconfirm({
- message: tKeyText ? window.$gz.translation.get(tKeyText) : "",
- title: tKeyTitle ? window.$gz.translation.get(tKeyTitle) : "",
- yesButtonText: window.$gz.translation.get("OK"),
- type: ttype,
- helpUrl: tHelpUrl
- });
- },
- /////////////////////////////////////
- // Custom confirmation
- //
- confirmGeneric(tKey, ttype = "info") {
- return VM_LOCAL.$root.$gzconfirm({
- message: window.$gz.translation.get(tKey),
- yesButtonText: window.$gz.translation.get("OK"),
- noButtonText: window.$gz.translation.get("Cancel"),
- type: ttype
- });
- },
- /////////////////////////////////////
- // Custom confirmation pre-translated
- //
- confirmGenericPreTranslated(msg, ttype = "info") {
- return VM_LOCAL.$root.$gzconfirm({
- message: msg,
- yesButtonText: window.$gz.translation.get("OK"),
- noButtonText: window.$gz.translation.get("Cancel"),
- type: ttype
- });
- },
- /////////////////////////////////////
- // Custom confirmation no translation
- // with all options available
- //
- displayNoTranslationModalNotificationMessage(
- tKeyText,
- tKeyTitle = undefined,
- ttype = "info",
- tHelpUrl = undefined
- ) {
- return VM_LOCAL.$root.$gzconfirm({
- message: tKeyText,
- title: tKeyTitle,
- yesButtonText: window.$gz.translation.get("OK"),
- type: ttype,
- helpUrl: tHelpUrl
- });
- }
-
- //new functions above here
-};
diff --git a/client/src/api/gzform.js b/client/src/api/gzform.js
deleted file mode 100644
index 115c4f7..0000000
--- a/client/src/api/gzform.js
+++ /dev/null
@@ -1,1002 +0,0 @@
-///////////////////////////////
-// gzform
-//
-// provides form services and utilities
-// validation services
-// dirty and change tracking
-// and also general error display in forms
-//probably should be broken up more
-// All translation keys for validation *MUST* be fetched prior to this being used as it assumes all keys are fetched first
-// Add any new keys used to the block in translation.js=>commonKeysEditForm
-import Vue from "vue";
-
-let triggeringChange = false;
-
-function isEmpty(o) {
- if (typeof o == "number" && o == 0) {
- return false;
- }
- return !o;
-}
-
-////////////////////////////////////
-// isInt value??
-//
-//FROM HERE: https://stackoverflow.com/a/14794066/8939
-//fast test if is an integer:
-function isInt(value) {
- let x;
- if (isNaN(value)) {
- return false;
- }
- x = parseFloat(value);
- return (x | 0) === x;
-}
-
-////////////////////////////////////
-// isNumber
-//
-//FROM HERE: https://stackoverflow.com/a/1830632/8939
-function isNumber(n) {
- return !isNaN(parseFloat(n)) && isFinite(n);
-}
-
-////////////////////////////////////
-// Get control from ref
-//
-function getControl(vm, ref) {
- return vm.$refs[ref];
-}
-
-////////////////////////////////////
-// Get value from control
-//
-function getControlValue(ctrl) {
- return ctrl.value;
-}
-
-////////////////////////////////////
-// Get field name from control
-//
-function getControlLabel(ctrl) {
- if (ctrl.label == undefined) {
- return "UNKNOWN CONTROL";
- } else {
- return ctrl.label;
- }
-}
-
-/////////////////////////////////////////
-// Get errors for a particular field
-// from server error collection
-//
-function getErrorsForField(vm, ref) {
- //Note: to debug this on forms just put {{ formState.serverError }}
- //on the form to see what is actually stored there and should be showing
- let ret = [];
- if (ref == "generalerror") {
- ret = vm.formState.serverError.details.filter(
- z => z.target == false || z.target == "generalerror"
- );
- } else {
- ret = vm.formState.serverError.details.filter(function(o) {
- if (!o.target) {
- return false;
- }
- //server error fields are capitalized
- //client field names are generally lower case except for custom fields
- //so we need to normalize them all to lower case to match
- //they will always differ by more than case so this is fine
-
- //NOTE: Indexed child collection error target field names are in this scheme "Items[2].FieldName"
- //where Items is the name of the parent models property that contains the child collection
-
- return o.target.toLowerCase() == ref.toLowerCase();
- });
- }
- return ret;
-}
-
-///////////////////////////////
-// ERROR BOX ERRORS
-// gathers any messages for error box on form which is the generic catch all for non field specific errors from server
-// and application itself locally
-function getErrorBoxErrors(vm, errs) {
- let hasErrors = false;
- let ret = "";
- if (errs.length > 0) {
- hasErrors = true;
- //loop array and append each error to a return string
- for (let i = 0; i < errs.length; i++) {
- ret += errs[i] + "\r\n";
- }
- }
-
- //any application errors?
- if (vm.formState.appError) {
- hasErrors = true;
- // console.log("gzform:geterrorboxerrors ", {
- // appError: vm.formState.appError,
- // ret: ret
- // });
- ret += vm.formState.appError;
- }
-
- if (!hasErrors) {
- return null;
- } else {
- return ret;
- }
-}
-
-export default {
- ///////////////////////////////
- // REQUIRED
- //
- required(vm, ref) {
- if (vm.formState.loading) {
- return true;
- }
-
- const ctrl = getControl(vm, ref);
- if (typeof ctrl == "undefined") {
- return true;
- }
-
- const value = getControlValue(ctrl);
- if (!isEmpty(value)) {
- return true;
- }
-
- // "ErrorRequiredFieldEmpty": "{0} is a required field. Please enter a value for {0}",
- let err = vm.$sock.t("ErrorRequiredFieldEmpty");
- const fieldName = getControlLabel(ctrl);
- err = err.replace("{0}", fieldName);
- //replace only replaces first instance so need to do it twice
- err = err.replace("{0}", fieldName);
-
- this.setFormState({
- vm: vm,
- valid: false
- });
- return err;
- },
-
- ///////////////////////////////
- // MAXLENGTH
- //
- maxLength(vm, ref, max) {
- if (vm.formState.loading) {
- return true;
- }
- const ctrl = getControl(vm, ref);
- if (typeof ctrl == "undefined") {
- return true;
- }
-
- const value = getControlValue(ctrl);
- if (isEmpty(value)) {
- return true;
- }
-
- if (value.length > max) {
- //get the translated rule text
- // "ErrorFieldLengthExceeded": "{0} can not exceed {1} characters.",
- let err = vm.$sock.t("ErrorFieldLengthExceeded");
- const fieldName = getControlLabel(ctrl);
- err = err.replace("{0}", fieldName);
- err = err.replace("{1}", max);
-
- this.setFormState({
- vm: vm,
- valid: false
- });
- return err;
- } else {
- return true;
- }
- },
- ///////////////////////////////
- // MAX 255
- //
- max255(vm, ref) {
- if (vm.formState.loading) {
- return true;
- }
- return this.maxLength(vm, ref, 255);
- },
- ///////////////////////////////
- // DatePrecedence
- // (start date must precede end date, however if both are empty then that's ok)
- //
- datePrecedence(vm, refStart, refEnd) {
- if (vm.formState.loading) {
- return true;
- }
- const ctrlStart = getControl(vm, refStart);
- if (typeof ctrlStart == "undefined") {
- return true;
- }
-
- const ctrlEnd = getControl(vm, refEnd);
- if (typeof ctrlEnd == "undefined") {
- return true;
- }
-
- let valueStart = getControlValue(ctrlStart);
- if (isEmpty(valueStart)) {
- return true;
- }
-
- let valueEnd = getControlValue(ctrlEnd);
- if (isEmpty(valueEnd)) {
- return true;
- }
-
- valueStart = window.$gz.DateTime.fromISO(valueStart);
- valueEnd = window.$gz.DateTime.fromISO(valueEnd);
-
- // if either is not valid.
- //moment.github.io/luxon/docs/manual/validity.html
- if (!valueStart.isValid || !valueEnd.isValid) {
- return true;
- }
-
- if (valueStart > valueEnd) {
- // "ErrorStartDateAfterEndDate": "Start date must be earlier than stop / end date",
- const err = vm.$sock.t("ErrorStartDateAfterEndDate");
-
- this.setFormState({
- vm: vm,
- valid: false
- });
- return err;
- } else {
- return true;
- }
- },
- ///////////////////////////////
- // Confirm password
- // (two fields must match)
- //
- confirmMatch(vm, refFirst, refSecond) {
- if (vm.formState.loading) {
- return true;
- }
- const ctrlFirst = getControl(vm, refFirst);
- if (typeof ctrlFirst == "undefined") {
- return true;
- }
-
- const ctrlSecond = getControl(vm, refSecond);
- if (typeof ctrlSecond == "undefined") {
- return true;
- }
- const valueFirst = getControlValue(ctrlFirst);
- const valueSecond = getControlValue(ctrlSecond);
-
- if (valueFirst != valueSecond) {
- const err = vm.$sock.t("ErrorNoMatch");
-
- this.setFormState({
- vm: vm,
- valid: false
- });
- return err;
- } else {
- return true;
- }
- },
- ///////////////////////////////
- // INTEGER IS VALID
- //
- integerValid(vm, ref) {
- if (vm.formState.loading) {
- return true;
- }
- const ctrl = getControl(vm, ref);
- if (typeof ctrl == "undefined") {
- return true;
- }
- const value = getControlValue(ctrl);
- if (isInt(value)) {
- return true;
- }
- const err = vm.$sock.t("ErrorFieldValueNotInteger");
- this.setFormState({
- vm: vm,
- valid: false
- });
- return err;
- },
- ///////////////////////////////
- // DECIMAL
- // Basically anything that can be a number is valid
- //
- decimalValid(vm, ref) {
- if (vm.formState.loading) {
- return true;
- }
- //TODO: Handle commas and spaces in numbers
- //as per window.$gz.translation rules for numbers
-
- const ctrl = getControl(vm, ref);
- if (typeof ctrl == "undefined") {
- return true;
- }
-
- const value = getControlValue(ctrl);
- if (isEmpty(value)) {
- return true;
- }
-
- if (isNumber(value)) {
- return true;
- }
- const err = vm.$sock.t("ErrorFieldValueNotDecimal");
- this.setFormState({
- vm: vm,
- valid: false
- });
- return err;
- },
- ///////////////////////////////
- // MAX VALUE
- // Maximum numeric value
- // maxValue is lt or eq
- // empty is considered valid for this rule
- //
- maxValueValid(vm, ref, maxValue) {
- if (vm.formState.loading) {
- return true;
- }
-
- const ctrl = getControl(vm, ref);
- if (typeof ctrl == "undefined") {
- return true;
- }
-
- const value = getControlValue(ctrl);
- if (isEmpty(value)) {
- return true;
- }
-
- if (!isNumber(value)) {
- return true;
- }
-
- //Ok, were here with a non empty number of some kind
- if (value <= maxValue) {
- return true;
- }
-
- const err = `${vm.$sock
- .t("ErrorFieldValueNumberGreaterThanMax")
- .replace("{0}", maxValue)} ${maxValue}`;
-
- this.setFormState({
- vm: vm,
- valid: false
- });
- return err;
- },
- ///////////////////////////////
- // MIN VALUE
- // Minimum numeric value
- // minValue is gt or eq
- // empty is considered valid for this rule
- //
- minValueValid(vm, ref, minValue) {
- if (vm.formState.loading) {
- return true;
- }
-
- const ctrl = getControl(vm, ref);
- if (typeof ctrl == "undefined") {
- return true;
- }
-
- const value = getControlValue(ctrl);
- if (isEmpty(value)) {
- return true;
- }
-
- if (!isNumber(value)) {
- return true;
- }
-
- //Ok, were here with a non empty number of some kind
- //actual check
- if (value >= minValue) {
- return true;
- }
-
- const err = `${vm.$sock
- .t("ErrorFieldValueNumberLessThanMin")
- .replace("{0}", minValue)} ${minValue}`;
-
- this.setFormState({
- vm: vm,
- valid: false
- });
- return err;
- },
- ///////////////////////////////
- // EMAIL IS VALID-ish
- //https://tylermcginnis.com/validate-email-address-javascript/
- emailValid(vm, ref) {
- if (vm.formState.loading) {
- return true;
- }
- const ctrl = getControl(vm, ref);
- if (typeof ctrl == "undefined") {
- return true;
- }
-
- const value = getControlValue(ctrl);
- if (isEmpty(value)) {
- return true;
- }
-
- if (/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(value) == true) {
- return true;
- }
-
- const err = vm.$sock.t("ErrorAPI2203"); //"Invalid value"
-
- this.setFormState({
- vm: vm,
- valid: false
- });
- return err;
- },
- ///////////////////////////////
- // USER REQUIRED FIELDS
- // (Fields defined by Sockeye users as required on form that are not stock required already)
- userRequiredFields(vm, ref, formCustomTemplateFieldName) {
- if (vm.formState.loading) {
- return true;
- }
-
- const template =
- window.$gz.store.state.formCustomTemplate[vm.formCustomTemplateKey];
- if (template === undefined) {
- return true;
- }
- //See if control formCustomTemplateFieldName is in server required fields collection
- //this is a collection of both custom field definitions and standard form fields that are required
- //since all names are unique can just filter out the one we need by name which will inherently ignore custom fields by default
- const templateItem = template.find(
- z => z.fld == formCustomTemplateFieldName
- );
-
- //templateItem.required
- if (templateItem === undefined || templateItem.required !== true) {
- return true;
- }
-
- const ctrl = getControl(vm, ref);
- if (typeof ctrl == "undefined") {
- return true;
- }
-
- const value = getControlValue(ctrl);
- if (!isEmpty(value)) {
- return true;
- }
-
- let err = vm.$sock.t("ErrorRequiredFieldEmpty");
- const fieldName = getControlLabel(ctrl);
- err = err.replace("{0}", fieldName);
- //replace only replaces first instance so need to do it twice
- err = err.replace("{0}", fieldName);
-
- this.setFormState({
- vm: vm,
- valid: false
- });
- return err;
- },
- ///////////////////////////////
- // CUSTOMFIELDS
- // For now the only rule is that they can be required or not
- //
- customFieldsCheck(vm, templateItem, subvm, fieldName) {
- if (vm.formState.loading) {
- return true;
- }
-
- if (templateItem.required !== true) {
- return true;
- }
-
- const value = subvm.GetValueForField(templateItem.dataKey);
- if (!isEmpty(value)) {
- return true;
- }
-
- //It's empty and it's required so return error
- let err = vm.$sock.t("ErrorRequiredFieldEmpty");
- err = err.replace("{0}", fieldName);
- //replace only replaces first instance so need to do it twice
- err = err.replace("{0}", fieldName);
-
- this.setFormState({
- vm: vm,
- valid: false
- });
- return err;
- },
- ///////////////////////////////
- // SERVER ERRORS
- // Process and return server errors if any for form and field specified
- // note that this is called in turn by every control on the form so it's only job
- // is to return errors if they exist for *that* field
- // Not to be confused with validation errors through the "rules" property
- // that is separate and any errors returned here are *added* to the validation
- // errors in the UI by Vuetify
- //
- serverErrors(vm, ref) {
- const ret = [];
-
- //check for errors if we have any errors
- if (!window.$gz.util.objectIsEmpty(vm.formState.serverError)) {
- //First let's get the top level error code
- const apiErrorCode = parseInt(vm.formState.serverError.code);
- //Not all server errors mean the form is invalid, exceptions here
- let formValid = false;
-
- /*
- These errors are not the user's fault and no changes to the form are required
- so they may be temporary and user should be able to retry save
- API_CLOSED = 2000,
- API_OPS_ONLY = 2001,
- API_SERVER_ERROR = 2002,
- VALIDATION_REFERENTIAL_INTEGRITY = 2208
- */
- switch (apiErrorCode) {
- case 2000:
- case 2001:
- case 2002:
- case 2208:
- formValid = true; //we came here because the user saved because the form was valid so it's safe to set that the same again
- break;
- default:
- formValid = false;
- }
-
- //GENERAL ERROR
- if (ref == "generalerror") {
- //Add any general errors to ret (specific detail errors for the "generalerror" will be processed later below)
- let err = vm.$sock.t("ErrorAPI" + apiErrorCode.toString());
-
- if (vm.formState.serverError.message) {
- err = err + "\r\n" + vm.formState.serverError.message;
- }
-
- this.setFormState({
- vm: vm,
- valid: formValid
- });
- ret.push(err);
- }
-
- //DETAIL ERRORS
- //{"error":{"code":"2200","details":[{"message":"Exception: Error converting value \"\" to type 'Sockeye.Biz.AUTHORIZATION_ROLES'. Path 'roles', line 1, position 141.","target":"roles","error":"2203"}],"message":"Object did not pass validation"}}
- //Specific field validation errors are in an array in "details" key
- if (!window.$gz.util.objectIsEmpty(vm.formState.serverError.details)) {
- //See if this key is in the details array
- const errorsForField = getErrorsForField(vm, ref);
- if (errorsForField.length > 0) {
- //iterate the errorsForField object and add each to return array of errors
- //de-lodash
- //window.$gz. _.each(errorsForField, function(ve) {
- errorsForField.forEach(function(ve) {
- let fldErr = "";
- const fldErrorCode = parseInt(ve.error);
- fldErr =
- vm.$sock.t("ErrorAPI" + fldErrorCode.toString()) +
- " [" +
- ve.error +
- "]";
- if (ve.message) {
- //NOTE: call sync version here as can't call async code from here
- //so translations must already be pre-fetched to work here
- fldErr +=
- ' - "' +
- window.$gz.translation.translateStringWithMultipleKeys(
- ve.message
- ) +
- '"';
- ret.push(fldErr);
- } else {
- ret.push(fldErr);
- }
- });
-
- this.setFormState({
- vm: vm,
- valid: false
- });
-
- return ret;
- }
- }
- }
-
- //default if no error message to display
- return ret;
- },
- ///////////////////////////////
- // childRowHasError
- // returns true if error exists for row
- // else returns false
- // (actual errors not returned just for row indicator,
- // user opens child edit form to see exact error)
- //
- childRowHasError(vm, path) {
- //Note: this just shows server errors, not local form validation errors
- //it's assumed user will fix in form or when they submit see the error come back
- //Note: this method is easily converted to return actual errors if it ever makes sense to do that but for now I'm ok with row TTM
-
- //No server errors?
- if (window.$gz.util.objectIsEmpty(vm.formState.serverError)) {
- //nothing to process
- return null;
- }
-
- //no detail errors?
- if (window.$gz.util.objectIsEmpty(vm.formState.serverError.details)) {
- //nothing to process
- return null;
- }
-
- path = path.toLowerCase();
- //Might be an error, check if collectionName is in error collection
- //this is what we're dealing with
- // { "code": "2200", "details": [ { "message": "LT:PurchaseOrderReceiptItemQuantityReceivedErrorInvalid", "target": "Items[0].QuantityReceived", "error": "2203" } ], "message": "ErrorAPI2200" }
- //or multilayered like this: target: "Items[3].scheduledUsers[1].EstimatedQuantity"
- //so set "path" accordingly easy peasy, such error, so wow
-
- //filter in items that start with the row collection name and index provided
- return vm.formState.serverError.details.some(function(o) {
- if (!o.target) {
- return false;
- }
- return o.target.toLowerCase().includes(path);
- });
- },
- ///////////////////////////////
- // childRowErrorClass
- // returns class to set on row if error exists for row
- // else returns nothing
- //( called by some forms but notably not the workorder or PO which have this built in)
- //
- childRowErrorClass(vm, collectionName, rowIndex) {
- if (this.childRowHasError(vm, collectionName, rowIndex)) {
- return "font-weight-black font-italic error--text";
- }
- return null;
- },
- ///////////////////////////////
- // ShowMe
- // (returns false if the field has been set to hidden by the user in the formcustomtemplate)
- // NOTE: that in a form this should only be used with non stock-required fields, if they are already required they cannot be hidden
- //
- showMe(vm, formCustomTemplateFieldName) {
- //special check for wiki field
- //if read only then can't add any content and if no content then no reason to show it at all
- if (formCustomTemplateFieldName == "wiki") {
- if (
- vm.formState.readOnly &&
- (vm.obj.wiki == null || vm.obj.wiki.length == 0)
- ) {
- return false;
- }
- }
-
- const template =
- window.$gz.store.state.formCustomTemplate[vm.formCustomTemplateKey];
-
- if (template === undefined) {
- return true;
- }
- //See if control templateFieldName is in server required fields collection
- //this is a collection of both custom field definitions and standard form fields that are required
- //since all names are unique can just filter out the one we need by name which will inherently ignore custom fields by default
-
- const templateItem = template.find(
- z => z.fld.toLowerCase() == formCustomTemplateFieldName.toLowerCase()
- );
-
- if (templateItem === undefined || templateItem.hide !== true) {
- return true;
- }
-
- //Only here if we have a record in the custom template for this particular field and it's set to hide:true
- return false;
- },
-
- ///////////////////////////////
- // ClearformState.serverErrors
- // Clear all server errors and app errors and ensure error box doesn't show
- //
- deleteAllErrorBoxErrors(vm) {
- //clear all keys from server error
- window.$gz.util.removeAllPropertiesFromObject(vm.formState.serverError);
- //clear app errors
- vm.formState.appError = null;
- //clear out actual message box display
- vm.formState.errorBoxMessage = null;
-
- this.setFormState({
- vm: vm,
- valid: true
- });
- },
- ///////////////////////////////
- // setErrorBoxErrors
- // Gather server errors and set the appropriate keys
- //
- setErrorBoxErrors(vm) {
- const errs = this.serverErrors(vm, "generalerror");
- const ret = getErrorBoxErrors(vm, errs);
- vm.formState.errorBoxMessage = ret;
- },
- ///////////////////////////////
- // On fieldValueChanged handler
- // formReference is an optional string name of the form ref property if alternative named form
- // - Clear server errrors for this field
- // - Flag form dirty
- // - check and flag form validity
- //
- //
- fieldValueChanged(vm, ref, formReference) {
- const that = this;
- let formControl = null;
- if (formReference == undefined) {
- formControl = vm.$refs.form;
- } else {
- //NOTE: Due to automatic code formatting some refs may come here with newlines in them resulting in no matches
- formReference = formReference.replace(/\s/g, "");
- formControl = vm.$refs[formReference];
- }
-
- //dev error on form?
- if (formControl == null) {
- if (vm.$sock.dev) {
- //not necessarily an error, can happen during form init
- console.trace(
- `gzform::fieldValueChanged formControl is not found ref:${ref}, formReferences:${formReference} `
- );
- } else {
- return;
- }
- }
-
- //this is currently required to ensure that this method runs after all the broken rule checks have settled
- Vue.nextTick(function() {
- //-------------
- if (triggeringChange || vm.formState.loading) {
- return;
- }
-
- //# REMOVE SERVER ERRORS FOR THIS FIELD REF
- const targetRef = ref.toLowerCase();
-
- //NOTE: This block of code is meant to remove all detailed server errors where the Target matches the current referenced control
- //Then it checks to see if there is anything left in details as this might have been all there was and if so removes that whole thing
- //leaving only errors for other fields or nothing if this ref field was all the errors left
-
- //Remove any server errors that are for our target ref field
- //and also set a flag if there *are* any server errors for our target field
- let targetFieldHasServerError = false;
-
- if (vm.formState.serverError.details) {
- let i = vm.formState.serverError.details.length;
- //iterate backwards so we can mutate the array in place
- while (i--) {
- var o = vm.formState.serverError.details[i];
- if (o.target && o.target.toLowerCase() == targetRef) {
- //remove it, it's for our ref field
- vm.formState.serverError.details.splice(i, 1);
- targetFieldHasServerError = true;
- }
- }
- }
-
- //# CLEAN UP SERVER ERRORS IF NONE LEFT
- //If there are no more errors in details then remove the whole thing as it's no longer required
- if (
- vm.formState.serverError.details &&
- vm.formState.serverError.details.length < 1
- ) {
- if (vm.formState.serverError.code == "2200") {
- //clear all keys from server error
- window.$gz.util.removeAllPropertiesFromObject(
- vm.formState.serverError
- );
- }
- }
-
- //# CLEAR OUT STALE VALIDATION ERRORS FOR CONTROL
- //Clear out old validation display in form by forcing the control's data to change
- //I tried calling form validate and reset but it did nothing
- //probably because it has safeguards to prevent excess validation, this works though so far
- //I added the triggering change guard but it actually doesn't seem to be required here, more investigation is required
-
- //TODO: find a cleaner way to remove old validation on the control, why can't it just be set on the control referenced??
-
- if (targetFieldHasServerError) {
- triggeringChange = true;
- const val = vm.obj[ref];
- vm.obj[ref] = null;
- vm.obj[ref] = val;
- triggeringChange = false;
- }
-
- //# UPDATE FORM STATUS
- let formValid = formControl.validate();
- that.setFormState({
- vm: vm,
- dirty: true,
- valid: formValid
- });
- //---------------
- }); //next tick end
- },
-
- setFormState(newState) {
- //this returns a promise so any function that needs to wait for this can utilize that
-
- return Vue.nextTick(function() {
- if (newState.valid != null) {
- newState.vm.formState.valid = newState.valid;
- }
-
- if (newState.dirty != null) {
- newState.vm.formState.dirty = newState.dirty;
- }
-
- if (newState.loading != null) {
- newState.vm.formState.loading = newState.loading;
- }
-
- if (newState.readOnly != null) {
- newState.vm.formState.readOnly = newState.readOnly;
- }
-
- if (newState.ready != null) {
- newState.vm.formState.ready = newState.ready;
- }
- });
- },
- ////////////////////////////////////
- // Get form settings
- // for form specified or empty object if there is none
- // EAch form is responsible for what it stores and how it initializes, this just provides that
- // the form does the actual work of what settings it requires
- // Form settings are temp and saved, saved ones go into vuex and localstorage and persist a refresh
- // and temporary ones are stored in session storage and don't persist a refresh
- //
- getFormSettings(formKey) {
- return {
- temp: JSON.parse(sessionStorage.getItem(formKey)),
- saved: window.$gz.store.state.formSettings[formKey]
- };
- },
- ////////////////////////////////////
- // Set form settings
- // for form key specified
- // requires object with one or both keys {temp:{...tempformsettings...},saved:{...persistedformsettings...}}
- //
- setFormSettings(formKey, formSettings) {
- if (formSettings.saved) {
- window.$gz.store.commit("setFormSettings", {
- formKey: formKey,
- formSettings: formSettings.saved
- });
- }
-
- if (formSettings.temp) {
- sessionStorage.setItem(formKey, JSON.stringify(formSettings.temp));
- }
- }, ////////////////////////////////////
- // Get last report used from form settings
- //
- getLastReport(formKey) {
- const fs = window.$gz.store.state.formSettings[formKey];
- if (fs == null || fs.lastReport == null) {
- return null;
- }
- return fs.lastReport;
- }, ////////////////////////////////////
- // Set last report used in form settings
- //
- setLastReportMenuItem(formKey, reportSelected, vm) {
- let fs = window.$gz.store.state.formSettings[formKey];
- if (fs == null) {
- fs = {};
- }
- fs.lastReport = reportSelected;
-
- window.$gz.store.commit("setFormSettings", {
- formKey: formKey,
- formSettings: fs
- });
-
- window.$gz.eventBus.$emit("menu-upsert-last-report", {
- title: reportSelected.name,
- notrans: true,
- icon: "$sockiFileAlt",
- key: formKey + ":report:" + reportSelected.id,
- vm: vm
- });
- }, ////////////////////////////////////
- // Add no selection item
- // Used by forms that need the option of an unselected
- // item in a pick list
- //
- addNoSelectionItem(listArray, nullNotZero) {
- if (listArray == undefined || listArray == null) {
- listArray = [];
- }
- listArray.unshift({ name: "-", id: nullNotZero ? null : 0 });
- },
- ////////////////////////////////////
- // Get no selection item
- // Used by forms that need just the
- // unselected item itself not added
- // to a list
- //
- getNoSelectionItem(nullNotZero) {
- return { name: "-", id: nullNotZero ? null : 0 };
- },
- ////////////////////////////////////
- // Get validity of referenced control
- //
- controlIsValid(vm, ref) {
- if (vm.$refs[ref]) {
- return vm.$refs[ref].valid;
- }
- return false;
- },
- ////////////////////////////////////////
- // All controls are valid?
- //
- controlsAreAllValid(vm, refs) {
- //if any are not valid return false
- for (let i = 0; i < refs.length; i++) {
- const item = refs[i];
- if (vm.$refs[item]) {
- if (!vm.$refs[item].valid) {
- return false;
- }
- }
- }
- return true;
- },
- ////////////////////////////////////////
- // Standard object not found handler
- //
- handleObjectNotFound(vm) {
- window.$gz.eventBus.$emit("notify-error", vm.$sock.t("ErrorAPI2010"));
- //after small delay to show error
- //(the navigate removes the toast notification immediately)
- setTimeout(function() {
- vm.$router.go(-1);
- }, 2000);
- },
- ////////////////////////////////////////
- // Standard data table row error class
- //
- tableRowErrorClass() {
- return "font-weight-black font-italic error--text ";
- },
- ////////////////////////////////////////
- // Standard data table deleted class
- //
- tableRowDeletedClass() {
- return "text-decoration-line-through ";
- }
-};
diff --git a/client/src/api/gzmenu.js b/client/src/api/gzmenu.js
deleted file mode 100644
index e81f375..0000000
--- a/client/src/api/gzmenu.js
+++ /dev/null
@@ -1,438 +0,0 @@
-/////////////////////////////////
-// Menu utils and handlers
-//
-export default {
- ///////////////////////////////////////////
- // TECH SUPPORT / CONTACT FORUM URL
- //
- contactSupportUrl() {
- const dbId = encodeURIComponent(
- window.$gz.store.state.globalSettings.serverDbId
- );
- const company = encodeURIComponent(
- window.$gz.store.state.globalSettings.company
- );
- return `https://contact.ayanova.com/contact?dbid=${dbId}&company=${company}`;
- },
- ///////////////////////////////
- // CHANGE HANDLER
- //
- // Deal with a menu change request
- // called from App.vue
- handleMenuChange(vm, ctx) {
- const UTILITY_TYPES = [
- window.$gz.type.NoType,
- window.$gz.type.Global,
- window.$gz.type.NoType,
- window.$gz.type.ServerState,
- window.$gz.type.License,
- window.$gz.type.LogFile,
- window.$gz.type.ServerJob,
- window.$gz.type.TrialSeeder,
- window.$gz.type.ServerMetrics,
- window.$gz.type.UserOptions,
- window.$gz.type.FormCustom,
- window.$gz.type.DataListSavedFilter,
- window.$gz.type.GlobalOps,
- window.$gz.type.BizMetrics,
- window.$gz.type.Backup,
- window.$gz.type.Notification,
- window.$gz.type.NotifySubscription
- ];
-
- vm.appBar.isMain = ctx.isMain;
- vm.appBar.icon = ctx.icon;
-
- vm.appBar.title = ""; //this prevents fou[translated]c
- vm.appBar.readOnly = ctx.readOnly;
-
- if (ctx.readOnly === true) {
- vm.appBar.color = "readonlybanner";
- } else {
- vm.appBar.color = ctx.isMain ? "primary" : "secondary";
- }
-
- //ctx.title if set is a Translation key
- //ctx.formData.recordName is the object name or serial number or whatever identifies it uniquely
- let recordName = "";
- if (
- ctx &&
- ctx.formData &&
- ctx.formData.recordName &&
- ctx.formData.recordName != "null" //some forms (part) present "null" as the record name due to attempts to format a name so if that's the case just turn it into null here to bypass
- ) {
- recordName = ctx.formData.recordName;
- }
- const hasRecordName = !window.$gz.util.stringIsNullOrEmpty(recordName);
- if (ctx.title) {
- //it has a title translation key
- const translatedTitle = vm.$sock.t(ctx.title);
- if (hasRecordName) {
- //recordname takes all precedence in AppBar in order to conserve space (narrow view etc)
- //also it just looks cleaner, the icon is already there to indicate where the user is at
- vm.appBar.title = recordName;
- document.title = `${recordName} - ${translatedTitle} Sockeye `;
- } else {
- vm.appBar.title = translatedTitle;
- document.title = `${translatedTitle} ${recordName}`;
- }
- } else {
- if (hasRecordName) {
- //not title but has record name
- vm.appBar.title = recordName;
- document.title = `${recordName} Sockeye`;
- } else {
- document.title = "Sockeye";
- }
- }
-
- //Parse the formdata if present
- //FORMDATA is OPTIONAL and only required for forms that need to allow
- //viewing object history, attachments, custom fields, etc that kind of thing
- //usually CORE objects with an id, NOT utility type forms
- let formSockType = 0;
- let formRecordId = 0;
- if (ctx.formData) {
- if (ctx.formData.sockType != null) {
- formSockType = ctx.formData.sockType;
- }
- if (ctx.formData.recordId != null) {
- formRecordId = ctx.formData.recordId;
- }
- }
-
- //flag for if it's wikiable, reviewable, attachable, searchable, historical
- const isCoreBizObject = formSockType != 0 && formRecordId != 0;
-
- //set the help url if presented or default to the User section intro
- vm.appBar.helpUrl = ctx.helpUrl ? ctx.helpUrl : "user-intro";
-
- vm.appBar.menuItems = [];
-
- //CONTEXT TOP PORTION
- //populate the context portion of the menu so handle accordingly
- if (ctx.menuItems) {
- vm.appBar.menuItems = ctx.menuItems;
- }
-
- //STANDARD BIZ OBJECT OPTIONS
- //NOTE: This applies equally to all core business object types that are basically real world and have an id and a type (all are wikiable, attachable and reviewable)
- //Not utility type objects like datalist etc
- //there will be few exceptions so they will be coded in later if needed but assume anything with an id and a type
- if (isCoreBizObject && !ctx.hideCoreBizStandardOptions) {
- //"Review" was follow up type of schedule marker
- //basically it's now a "Reminder" type of object but it's own thing with separate collection
-
- vm.appBar.menuItems.push({
- title: "Review",
- icon: "$sockiCalendarCheck",
- key: "app:review",
- data: {
- sockType: formSockType,
- recordId: formRecordId,
- recordName: recordName
- }
- });
-
- //AFAIK right now any item with an id and a type can have a history
- //anything not would be the exception rather than the rule
- vm.appBar.menuItems.push({
- title: "History",
- icon: "$sockiHistory",
- key: "app:history",
- data: { sockType: formSockType, recordId: formRecordId }
- });
- }
-
- //CUSTOMIZE
- //set custom fields and link to translation text editor
-
- if (
- isCoreBizObject &&
- ctx.formData &&
- ctx.formData.formCustomTemplateKey != undefined &&
- window.$gz.role.hasRole([
- window.$gz.role.AUTHORIZATION_ROLES.BizAdmin,
- window.$gz.role.AUTHORIZATION_ROLES.BizAdminRestricted
- ])
- ) {
- //NOTE: BizAdmin can edit, BizAdminRestricted can read only
- //add customize menu item
-
- //customize
- vm.appBar.menuItems.push({
- title: "Customize",
- icon: "$sockiCustomize",
- data: ctx.formData.formCustomTemplateKey,
- key: "app:customize"
- });
- }
-
- //GLOBAL BOTTOM PORTION
-
- //SEARCH
- //all forms except the search form
- if (!ctx.hideSearch && !UTILITY_TYPES.includes(formSockType)) {
- //For all forms but not on the search form itself; if this is necessary for others then make a nosearch or something flag controlled by incoming ctx but if not then this should suffice
- vm.appBar.menuItems.push({
- title: "Search",
- icon: "$sockiSearch",
- key: "app:search",
- data: formSockType
- });
- }
-
- //HELP
- vm.appBar.menuItems.push({
- title: "MenuHelp",
- icon: "$sockiQuestionCircle",
- key: "app:help",
- data: vm.appBar.helpUrl
- });
-
- //ABOUT
- if (!isCoreBizObject && ctx.helpUrl != "sock-about") {
- vm.appBar.menuItems.push({
- title: "HelpAboutSockeye",
- icon: "$sockiInfoCircle",
- key: "app:nav:abt",
- data: "sock-about"
- });
- }
- },
- //Unused to date of beta 0.9
- // ///////////////////////////////
- // // CHANGE HANDLER
- // //
- // // Deal with a menu item update request
- // // called from App.vue
- // handleReplaceMenuItem(vm, newItem) {
- // if (!vm.appBar.menuItems || !newItem) {
- // return;
- // }
- // //Find the key that is in the collection and replace it
- // for (let i = 0; i < vm.appBar.menuItems.length; i++) {
- // if (vm.appBar.menuItems[i].key == newItem.key) {
- // //NOTE: since we are adding a new object, it has no reactivity in it so we need to use the Vue.Set to set it which
- // //automatically adds the setters and getters that trigger reactivity
- // //If it was set directly on the array it wouldn't update the UI
- // vm.$set(vm.appBar.menuItems, i, newItem);
- // return;
- // }
- // }
- // },
- //////////////////////////////////////////////
- // LAST REPORT CHANGE HANDLER
- // update / add last report menu item
- //
- handleUpsertLastReport(vm, newItem) {
- if (!vm.appBar.menuItems || !newItem) {
- return;
- }
-
- /*
- window.$gz.eventBus.$emit("menu-upsert-last-report", {
- title: reportSelected.name,
- notrans: true,
- icon: "$sockiFileAlt",
- key: formKey + ":report:" + reportSelected.id,
- vm: vm
- });
- */
- let key = null;
- //Find the last report key and update it if present
- for (let i = 0; i < vm.appBar.menuItems.length; i++) {
- key = vm.appBar.menuItems[i].key;
- if (key && key.includes(":report:")) {
- vm.appBar.menuItems[i].key = newItem.key;
- vm.appBar.menuItems[i].title = newItem.title;
- return;
- }
- }
- //No prior last report so slot it in under the report one
- for (let i = 0; i < vm.appBar.menuItems.length; i++) {
- key = vm.appBar.menuItems[i].key;
- if (key && key.endsWith(":report")) {
- vm.appBar.menuItems.splice(i + 1, 0, newItem);
- }
- }
- },
- ///////////////////////////////
- // ENABLE / DISABLE HANDLER
- //
- // Deal with a menu item enable / disable
- // called from App.vue
- handleDisableMenuItem(vm, key, disabled) {
- if (!vm.appBar.menuItems || !key) {
- return;
- }
-
- //Find the menu item and set it to disabled and recolor it to disabled color and return
- for (let i = 0; i < vm.appBar.menuItems.length; i++) {
- const menuItem = vm.appBar.menuItems[i];
- if (menuItem.key == key) {
- vm.$set(vm.appBar.menuItems[i], "disabled", disabled);
- //menuItem.disabled = disabled;
- vm.$set(vm.appBar.menuItems[i], "color", disabled ? "disabled" : "");
- return;
- }
- }
- },
- ///////////////////////////////
- // CHANGE ICON HANDLER
- // Change icon dymanically
- // (note, can pass null for new icon to clear it)
- //
- handleChangeMenuItemIcon(vm, key, newIcon) {
- if (!vm.appBar.menuItems || !key) {
- return;
- }
-
- //Find the menu item and change it's icon
- for (let i = 0; i < vm.appBar.menuItems.length; i++) {
- const menuItem = vm.appBar.menuItems[i];
- if (menuItem.key == key) {
- vm.$set(vm.appBar.menuItems[i], "icon", newIcon);
- return;
- }
- }
- },
- ///////////////////////////////
- // APP (GLOBAL) CLICK HANDLER
- //
- // Deal with a menu change request
- // called from App.vue
- handleAppClick(vm, menuItem) {
- //Key will start with the string "app:" if it's a global application command that should be handled here,
- //otherwise it's a local command for a local form only
- //If there is any extended information required for the command it will be in the data property of the menu item
- //split a key into component parts, part one is the responsible party, part two is the command, part three only exists to make it unique if necessary
- //each part is separated by a colon
-
- //Handle different items
- const item = this.parseMenuItem(menuItem);
- if (!item.disabled && item.owner == "app") {
- switch (item.key) {
- case "help":
- if (item.data.includes("~customer~")) {
- window.open(
- window.$gz.api.helpUrlCustomer() +
- item.data.replace("~customer~", ""),
- "_blank"
- );
- } else {
- window.open(window.$gz.api.helpUrl() + item.data, "_blank");
- }
- break;
-
- case "search":
- vm.$router.push({
- name: "home-search",
- params: { socktype: item.data }
- });
- break;
- case "review":
- //go to list
- // path: "/home-reviews/:aType?/:objectId?",
- vm.$router.push({
- name: "home-reviews",
- params: {
- aType: window.$gz.util.stringToIntOrNull(item.data.sockType),
- objectId: window.$gz.util.stringToIntOrNull(item.data.recordId),
- name: item.data.recordName
- }
- });
- break;
- case "history":
- vm.$router.push({
- name: "sock-history",
- params: {
- socktype: item.data.sockType,
- recordid: item.data.recordId
- }
- });
- break;
- case "customize":
- vm.$router.push({
- name: "sock-customize",
- params: { formCustomTemplateKey: item.data }
- });
- break;
- case "nav":
- vm.$router.push({ name: item.data });
- break;
- default:
- window.$gz.eventBus.$emit(
- "notify-warning",
- "gzmenu:handleAppClick - unrecognized command [" +
- menuItem.key +
- "]"
- );
- }
- }
- },
- ///////////////////////////////
- // PARSE MENU ITEM CLICK
- //
- // parse out the parts of a
- // menu item from a click event
- //
- parseMenuItem(menuItem) {
- //format is "AREA:KEY:UNIQUEID"
- //and data is in data portion
- const keyparts = menuItem.key.split(":");
- const ret = {
- owner: keyparts[0],
- key: keyparts[1],
- data: menuItem.data,
- disabled: menuItem.disabled,
- vm: menuItem.vm ? menuItem.vm : null
- };
- if (keyparts.length > 2) {
- ret.id = keyparts[2];
- }
- return ret;
- },
- ///////////////////////////////////
- // WIRE UP MENU EVENTS
- //
- // called once from app.vue only
- //
- wireUpEventHandlers(vm) {
- const that = this;
- window.$gz.eventBus.$on("menu-change", function handleMenuChange(ctx) {
- that.handleMenuChange(vm, ctx);
- });
-
- window.$gz.eventBus.$on(
- "menu-upsert-last-report",
- function handleUpsertLastReport(newItem) {
- that.handleUpsertLastReport(vm, newItem);
- }
- );
-
- window.$gz.eventBus.$on("menu-disable-item", function handleDisableMenuItem(
- key
- ) {
- that.handleDisableMenuItem(vm, key, true);
- });
-
- window.$gz.eventBus.$on("menu-enable-item", function handleDisableMenuItem(
- key
- ) {
- that.handleDisableMenuItem(vm, key, false);
- });
-
- window.$gz.eventBus.$on(
- "menu-change-item-icon",
- function handleChangeMenuItemIcon(key, newIcon) {
- that.handleChangeMenuItemIcon(vm, key, newIcon);
- }
- );
-
- window.$gz.eventBus.$on("menu-click", function handleMenuClick(menuitem) {
- that.handleAppClick(vm, menuitem);
- });
- }
- //new functions above here
-};
diff --git a/client/src/api/gzutil.js b/client/src/api/gzutil.js
deleted file mode 100644
index 998bcc1..0000000
--- a/client/src/api/gzutil.js
+++ /dev/null
@@ -1,931 +0,0 @@
-/////////////////////////////////
-// General utility library
-//
-
-const icons = {
- image: "$sockiFileImage",
- pdf: "$sockiFilePdf",
- word: "$sockiFileWord",
- powerpoint: "$sockiFilePowerpoint",
- excel: "$sockiFileExcel",
- csv: "$sockiFileCsv",
- audio: "$sockiFileAudio",
- video: "$sockiFileVidio",
- archive: "$sockiFileArchive",
- code: "$sockiFileCode",
- text: "$sockiFileAlt",
- file: "$sockiFile"
-};
-const mimeTypes = {
- "image/gif": icons.image,
- "image/jpeg": icons.image,
- "image/png": icons.image,
- "image/webp": icons.image,
-
- "application/pdf": icons.pdf,
-
- "application/msword": icons.word,
- "application/vnd.openxmlformats-officedocument.wordprocessingml.document":
- icons.word,
-
- "application/mspowerpoint": icons.powerpoint,
- "application/vnd.openxmlformats-officedocument.presentationml.presentation":
- icons.powerpoint,
-
- "application/msexcel": icons.excel,
- "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":
- icons.excel,
-
- "text/csv": icons.csv,
-
- "audio/aac": icons.audio,
- "audio/wav": icons.audio,
- "audio/mpeg": icons.audio,
- "audio/mp4": icons.audio,
- "audio/ogg": icons.audio,
-
- "video/x-msvideo": icons.video,
- "video/mpeg": icons.video,
- "video/mp4": icons.video,
- "video/ogg": icons.video,
- "video/quicktime": icons.video,
- "video/webm": icons.video,
-
- "application/gzip": icons.archive,
- "application/zip": icons.archive,
- "application/x-tar": icons.archive,
-
- "text/css": icons.code,
- "text/html": icons.code,
- "text/javascript": icons.code,
- "application/javascript": icons.code,
-
- "text/plain": icons.text,
- "text/richtext": icons.text,
- "text/rtf": icons.text,
- "application/rtf": icons.text,
- "application/json": icons.text
-};
-
-const extensions = {
- gif: icons.image,
- jpeg: icons.image,
- jpg: icons.image,
- png: icons.image,
- webp: icons.image,
-
- pdf: icons.pdf,
-
- doc: icons.word,
- docx: icons.word,
-
- ppt: icons.powerpoint,
- pptx: icons.powerpoint,
-
- xls: icons.excel,
- xlsx: icons.excel,
-
- csv: icons.csv,
-
- aac: icons.audio,
- mp3: icons.audio,
- ogg: icons.audio,
-
- avi: icons.video,
- flv: icons.video,
- mkv: icons.video,
- mp4: icons.video,
-
- gz: icons.archive,
- zip: icons.archive,
- tar: icons.archive,
- "7z": icons.archive,
-
- css: icons.code,
- html: icons.code,
- js: icons.code,
-
- txt: icons.text,
- json: icons.text,
- rtf: icons.text
-};
-
-export default {
- ///////////////////////////////
- // CLEAN OBJECT
- // Clear all properties from object without resorting to assigning a new object (o={})
- // which can be problematic in some cases (IE bugs, watched data items in forms etc)
-
- removeAllPropertiesFromObject: function(o) {
- for (let variableKey in o) {
- if (Object.prototype.hasOwnProperty.call(o, variableKey)) {
- delete o[variableKey];
- }
- }
- },
- ///////////////////////////////
- // DEEP COPY FOR API UPDATE
- // Deep copy an object skipping all *Viz and named properties from object
- //
- deepCopySkip: function(source, skipNames) {
- if (skipNames == null) {
- skipNames = [];
- }
- let o = {};
- for (let key in source) {
- if (
- !key.endsWith("Viz") &&
- !skipNames.some(x => x == key) &&
- Object.prototype.hasOwnProperty.call(source, key)
- ) {
- o[key] = source[key];
- }
- }
- return o;
- },
-
- /**
- * Copy a string to clipboard
- * @param {String} string The string to be copied to clipboard
- * @return {Boolean} returns a boolean correspondent to the success of the copy operation.
- * Modified from an example here: https://stackoverflow.com/a/53951634/8939
- * Basically a fallback if navigator.clipboard is not available
- */
- copyToClipboard: function(string) {
- let textarea;
- let result;
-
- if (navigator && navigator.clipboard) {
- navigator.clipboard.writeText(string);
- } else {
- try {
- textarea = document.createElement("textarea");
- textarea.setAttribute("readonly", true);
- textarea.setAttribute("contenteditable", true);
- textarea.style.position = "fixed"; // prevent scroll from jumping to the bottom when focus is set.
- textarea.value = string;
-
- document.body.appendChild(textarea);
-
- textarea.focus();
- textarea.select();
-
- const range = document.createRange();
- range.selectNodeContents(textarea);
-
- const sel = window.getSelection();
- sel.removeAllRanges();
- sel.addRange(range);
-
- textarea.setSelectionRange(0, textarea.value.length);
- result = document.execCommand("copy");
- } catch (err) {
- result = null;
- } finally {
- document.body.removeChild(textarea);
- }
-
- // manual copy fallback using prompt
- if (!result) {
- const isMac = navigator.platform.toUpperCase().indexOf("MAC") >= 0;
- const copyHotkey = isMac ? "⌘C" : "CTRL+C";
- result = prompt(`Press ${copyHotkey}`, string);
- if (!result) {
- return false;
- }
- }
- }
- return true;
- },
- ///////////////////////////////
- // ROUNDING
- // //https://medium.com/swlh/how-to-round-to-a-certain-number-of-decimal-places-in-javascript-ed74c471c1b8
- roundAccurately: function(number, decimalPlaces) {
- if (!number || number == 0 || Number.isNaN(number)) {
- return number;
- }
- const wasNegative = number < 0;
- if (wasNegative) {
- number = Math.abs(number); //make sure it's positive because rounding negative numbers is weird in JS
- }
- number = Number(
- Math.round(number + "e" + decimalPlaces) + "e-" + decimalPlaces
- );
- if (wasNegative) {
- number = 0 - number;
- }
- return number;
- },
- ///////////////////////////////
- // CLEAN TAG NAME
- // Clean up a tag with same rules as server
- //
- normalizeTag: function(tagName) {
- if (!tagName || tagName == "") {
- return null;
- }
- tagName = tagName.toLowerCase();
-
- //spaces to dashes
- tagName = tagName.replace(/ /gi, "-");
-
- //multiple dashes to single dashes
- tagName = tagName.replace(/-+/g, "-");
-
- //ensure doesn't start or end with a dash
- tagName = this.trimSpecific(tagName, "-");
-
- //No longer than 255 characters
- tagName = tagName.length > 255 ? tagName.substr(0, 255 - 1) : tagName;
-
- return tagName;
- },
- ///////////////////////////////
- // Quick hash for trivial purposes
- // not cryptographic
- // https://stackoverflow.com/a/7616484/8939
- //
- quickHash: function(theString) {
- let hash = 0;
- let i;
- let chr;
- if (theString.length === 0) return hash;
- for (i = 0; i < theString.length; i++) {
- chr = theString.charCodeAt(i);
- hash = (hash << 5) - hash + chr;
- hash |= 0; // Convert to 32bit integer
- }
- return hash;
- },
-
- ////////////////////////////////////////
- // Random password / login generator
- // https://stackoverflow.com/a/51540480/8939
- // using 32 character (128 bit) as default
- //
- getRandomPassword: function() {
- const wishlist = "0123456789abcdefghijkmnopqrstuvwxyz";
-
- return Array.from(crypto.getRandomValues(new Uint32Array(32)))
- .map(x => wishlist[x % wishlist.length])
- .join("");
- },
- ///////////////////////////////
- // CONVERT STRING TO BOOLEAN
- // https://stackoverflow.com/a/1414175/8939
- //
- stringToBoolean: function(string) {
- switch (string.toLowerCase().trim()) {
- case "true":
- case "yes":
- case "1":
- return true;
- case "false":
- case "no":
- case "0":
- case null:
- return false;
- default:
- return Boolean(string);
- }
- }, ///////////////////////////////
- // CONVERT STRING TO FLOAT
- // https://stackoverflow.com/a/9409894/8939
- //
- stringToFloat: function(string) {
- //null or empty then zero
- if (!string) {
- return 0;
- }
-
- //A number already then parse and return
- if (this.isNumeric(string)) {
- if (Number.isNaN(string)) {
- return 0;
- }
- return parseFloat(string);
- }
-
- //Not a string at all?
- if (!this.isString(string)) {
- return 0;
- }
-
- const ret = parseFloat(string.replace(/[^\d.-]/g, ""));
- if (Number.isNaN(ret)) {
- return 0;
- }
-
- return ret;
- },
- ///////////////////////////////
- // Is negative number
- //
- //
- isNegative: function(v) {
- //null or empty then zero
- if (!v || v == 0 || Number.isNaN(v)) {
- return false;
- }
- return parseFloat(v) < 0;
- },
- ///////////////////////////////
- // Splice a string
- //changes the content of a string by removing a range of
- // characters and/or adding new characters.
- //
- // @param {String} source string
- // @param {number} start Index at which to start changing the string.
- // @param {number} delCount An integer indicating the number of old chars to remove.
- // @param {string} newSubStr The String that is spliced in.
- // @return {string} A new string with the spliced substring.
- stringSplice: function(source, start, delCount, newSubStr) {
- if (source == null || source == "") {
- if (newSubStr) {
- return newSubStr;
- }
- return "";
- }
- return (
- source.slice(0, start) +
- newSubStr +
- source.slice(start + Math.abs(delCount))
- );
- },
- ///////////////////////////////
- // Truncate a string
- //truncates and adds ellipses
- //
- // @param {String} source string
- // @param {number} length desired
- // @return {string} A new string truncated with ellipses at end
- truncateString: function(s, len) {
- if (this.stringIsNullOrEmpty(s)) {
- return s;
- }
- if (s.length > len) {
- return s.substring(0, len) + "...";
- } else {
- return s;
- }
- },
- ///////////////////////////////
- // Format tags for display
- //
- //
- // @param {String} tags raw from server
- // @return {string} A new string with the tags formatted or an empty string if no tags
- formatTags: function(tags) {
- if (tags && tags.length > 0) {
- return tags.join(", ");
- }
- return "";
- },
- ///////////////////////////////
- // ICON FOR *ALL* OBJECT TYPES
- //(used for search results and event log / history)
- //NOTE: Any object type could appear in event log, they all need to be supported where possible
- //CoreBizObject add here
- iconForType: function(sockType) {
- switch (sockType) {
- case window.$gz.type.NoType:
- case null:
- return "$sockiGenderless";
- case window.$gz.type.Global:
- return "$sockiGlobe";
- case window.$gz.type.User:
- return "$sockiUser";
- case window.$gz.type.ServerState:
- return "$sockiDoorOpen";
-
- case window.$gz.type.LogFile:
- return "$sockiGlasses";
- case window.$gz.type.PickListTemplate:
- return "$sockiPencilRuler";
- case window.$gz.type.Customer:
- return "$sockiAddressCard";
- case window.$gz.type.Vendor:
- return "$ayiStore";
- case window.$gz.type.ServerJob:
- return "$sockiRobot";
-
- case window.$gz.type.Metrics:
- return "$sockiFileMedicalAlt";
- case window.$gz.type.Translation:
- return "$sockiLanguage";
- case window.$gz.type.UserOptions:
- return "$sockiUserCog";
- case window.$gz.type.HeadOffice:
- return "$sockiSitemap";
-
- case window.$gz.type.FileAttachment:
- return "$sockiPaperclip";
- case window.$gz.type.DataListSavedFilter:
- return "$sockiFilter";
- case window.$gz.type.FormCustom:
- return "$sockiCustomize";
-
- case window.$gz.type.Backup:
- return "$sockiFileArchive";
- case window.$gz.type.Notification:
- return "$sockiBell";
- case window.$gz.type.NotifySubscription:
- return "$sockiBullhorn";
- case window.$gz.type.Reminder:
- return "$sockiStickyNote";
-
- case window.$gz.type.OpsNotificationSettings:
- return "$sockiBullhorn";
- case window.$gz.type.Report:
- return "$sockiThList";
- case window.$gz.type.DashboardView:
- return "$sockiTachometer";
- case window.$gz.type.CustomerNote:
- return "$sockiClipboard";
- case window.$gz.type.Memo:
- return "$sockiInbox";
- case window.$gz.type.Review:
- return "$sockiCalendarCheck";
-
- case window.$gz.type.License:
- return "$sockiGem";
- case window.$gz.type.TrialLicenseRequest:
- return "$sockiHandHoldingWater";
- case window.$gz.type.SubscriptionServer:
- return "$sockiCloud";
- case window.$gz.type.Purchase:
- return "$sockiShoppingCart";
- case window.$gz.type.Product:
- return "$sockiBarCode";
- case window.$gz.type.GZCase:
- return "$sockiCoffee";
-
- //scroll icon is good one for something
- default:
- return null;
- }
- },
- //https://gist.github.com/colemanw/9c9a12aae16a4bfe2678de86b661d922
- iconForFile: function(fileName, mimeType) {
- // List of official MIME Types: http://www.iana.org/assignments/media-types/media-types.xhtml
-
- let extension = null;
- if (fileName && fileName.includes(".")) {
- extension = fileName.split(".").pop();
- extension = extension.toLowerCase();
- }
- if (!extension && !mimeType) {
- console.log(
- "gzutil:iconForFile -> No mime or extension for " +
- fileName +
- " " +
- mimeType
- );
- return "$sockiFile";
- }
-
- if (!mimeType) {
- mimeType = "";
- }
- mimeType = mimeType.toLowerCase();
-
- const iconFromExtension = extensions[extension];
- const iconFromMIME = mimeTypes[mimeType];
-
- if (iconFromMIME) {
- return iconFromMIME;
- }
- if (iconFromExtension) {
- return iconFromExtension;
- }
-
- return "$sockiFile";
- },
- ///////////////////////////////////////////////
- // attempt to detect image extension name
- //
- isImageAttachment: function(fileName, mimeType) {
- return this.iconForFile(fileName, mimeType) == "$sockiFileImage";
- },
- ///////////////////////////////////////////////
- // Sleep async
- //
- sleepAsync: function(milliseconds) {
- // eslint-disable-next-line
- return new Promise(resolve => setTimeout(resolve, milliseconds));
- },
- ///////////////////////////////////////////////
- // sortByKey lodash "sortBy" replacement
- // https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore#_sortby-and-_orderby
- //usage:
- // The native sort modifies the array in place. `_.orderBy` and `_.sortBy` do not, so we use `.concat()` to
- // copy the array, then sort.
- // fruits.concat().sort(sortBy("name"));
- // => [{name:"apple", amount: 4}, {name:"banana", amount: 2}, {name:"mango", amount: 1}, {name:"pineapple", amount: 2}]
- sortByKey: key => {
- return (a, b) => {
- const aaa = a[key].toUpperCase();
- const bbb = b[key].toUpperCase();
- return aaa > bbb ? 1 : bbb > aaa ? -1 : 0;
- //this was the original but it was sorting weird as it was taking case into account with uppercase higher than lowercase
- //so PMItem came before Part in the object lists
- //return a[key] > b[key] ? 1 : b[key] > a[key] ? -1 : 0;
- };
- },
- ///////////////////////////////////////////////
- // "has" lodash replacement
- // https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore#_has
- //
- has: function(obj, key) {
- var keyParts = key.split(".");
- return (
- !!obj &&
- (keyParts.length > 1
- ? this.has(obj[key.split(".")[0]], keyParts.slice(1).join("."))
- : hasOwnProperty.call(obj, key))
- );
- },
- ///////////////////////////////////////////////
- // Check if object is empty
- //
- objectIsEmpty: function(obj) {
- //https://stackoverflow.com/a/4994265/8939
- return !obj || Object.keys(obj).length === 0;
- },
- ///////////////////////////////////////////////
- // Trim specific character from start and end
- // https://stackoverflow.com/a/55292366/8939
- //
- trimSpecific: function trim(str, ch) {
- var start = 0;
- var end = str.length;
- while (start < end && str[start] === ch) ++start;
- while (end > start && str[end - 1] === ch) --end;
- return start > 0 || end < str.length ? str.substring(start, end) : str;
- },
- ///////////////////////////////////////////////
- // is numeric replacement for lodash
- // https://stackoverflow.com/a/52986361/8939
- //
- isNumeric: function(n) {
- //lodash isNumber returned false if it's a string and that's what the rest of the code expects even though it's parseable to a number
- return !this.isString(n) && !isNaN(parseFloat(n)) && isFinite(n);
- },
- ///////////////////////////////////////////////
- // is string replacement for lodash
- // https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore#_isString
- //
- isString: function(str) {
- return str != null && typeof str.valueOf() === "string";
- },
- ///////////////////////////////////////////////
- //
- //
- //
- stringIsNullOrEmpty: function(str) {
- if (str === null || str === undefined) {
- return true;
- }
- if (this.isString(str)) {
- if (str.trim() == "") {
- return true;
- }
- }
- return false;
- },
- ///////////////////////////////////////////////
- // is Boolean replacement for lodash
- // https://stackoverflow.com/a/43718478/8939
- //
- isBoolean: function(obj) {
- return obj === true || obj === false || typeof variable === "boolean";
- },
- ///////////////////////////////////////////////
- // parse to number or null if not a number
- // used because route params can turn into strings
- // on their own
- //
- stringToIntOrNull: function(n) {
- const ret = Number.parseInt(n, 10);
- if (Number.isNaN(ret)) {
- return null;
- }
- return ret;
- },
- ///////////////////////////////////////////////
- // Simple array equality comparison
- // (will NOT work on arrays of objects)
- // Array order is relevant here as they are not sorted
- // change of order will equal change of array
- // as this is required for datatable sortby
- //
- isEqualArraysOfPrimitives: function(a, b) {
- if (a === b) return true;
- if (a == null || b == null) return false;
- if (a.length !== b.length) return false;
-
- // If you don't care about the order of the elements inside
- // the array, you should sort both arrays here.
- // Please note that calling sort on an array will modify that array.
- // you might want to clone your array first.
-
- for (var i = 0; i < a.length; ++i) {
- if (a[i] !== b[i]) return false;
- }
- return true;
- },
- ///////////////////////////////////////////////
- // Use geolocation api to attempt to get current location
- // try high accuracy first and downgrade if unavailable
- //https://www.openstreetmap.org/?mlat=48.3911&mlon=-124.7353#map=12/48.3910/-124.7353
- //https://www.openstreetmap.org/#map=18/49.68155/-125.00435
- //https://www.openstreetmap.org/?mlat=49.71236&mlon=-124.96961#map=17/49.71236/-124.96961
- //https://www.google.com/maps/search/?api=1&query=47.5951518,-122.3316393
- getGeoLocation: async function() {
- return new Promise((resolve, reject) => {
- navigator.geolocation.getCurrentPosition(
- function successHigh(pos) {
- resolve({
- latitude: pos.coords.latitude,
- longitude: pos.coords.longitude
- });
- },
- function error(err) {
- //if here due to timeout getting high accuracy then try again with low accuracy
- if (error.code == error.TIMEOUT) {
- navigator.geolocation.getCurrentPosition(
- function successLow(pos) {
- resolve({
- latitude: pos.coords.latitude,
- longitude: pos.coords.longitude
- });
- },
- function error(err) {
- reject(
- new Error(
- `ERROR getting location(low_accuracy: ${err.code}): ${err.message}`
- )
- );
- },
- {
- maximumAge: 600000,
- timeout: 10000,
- enableHighAccuracy: false
- }
- );
- return;
- }
-
- reject(
- new Error(
- `ERROR GETTING LOCATION(high_accuracy:${err.code}): ${err.message}`
- )
- );
- },
- { maximumAge: 600000, timeout: 5000, enableHighAccuracy: true }
- );
- });
- },
- ///////////////////////////////////////////////
- // Open map url
- //
- //
- viewGeoLocation: function(obj) {
- const hasGeo =
- obj.latitude != null &&
- obj.latitude != 0 &&
- obj.longitude != null &&
- obj.longitude != 0;
-
- const hasAddress =
- !this.stringIsNullOrEmpty(obj.address) &&
- !this.stringIsNullOrEmpty(obj.city) &&
- !this.stringIsNullOrEmpty(obj.region) &&
- !this.stringIsNullOrEmpty(obj.country) &&
- !this.stringIsNullOrEmpty(obj.postCode);
-
- if (!hasGeo && !hasAddress) {
- return;
- }
-
- let mapUrl = window.$gz.store.state.userOptions.mapUrlTemplate;
-
- //No pre-set?
- if (!mapUrl || mapUrl == "") {
- mapUrl =
- "https://www.google.com/maps/search/?api=1&query={ayaddress}<|>https://www.google.com/maps/search/?api=1&query={aylatitude},{aylongitude}";
- }
-
- let geoMapUrl = null;
- let addressMapUrl = null;
-
- //Parse the map url
- let mapUrls = [mapUrl];
- if (mapUrl.includes("<|>")) {
- mapUrls = mapUrl.split("<|>");
- }
-
- mapUrls.forEach(z => {
- if (!geoMapUrl && z.includes("{aylatitude}")) {
- geoMapUrl = z;
- }
- if (!addressMapUrl && z.includes("{ayaddress}")) {
- addressMapUrl = z;
- }
- });
-
- //decide which map to use here, favor geocode
- if (hasGeo && geoMapUrl) {
- //geo view
- mapUrl = geoMapUrl;
- mapUrl = mapUrl.split("{aylatitude}").join(obj.latitude);
- mapUrl = mapUrl.split("{aylongitude}").join(obj.longitude);
- } else if (hasAddress && addressMapUrl) {
- mapUrl = addressMapUrl;
- //compile address fields together
- //order street to country seems to be standard
- //note, if google need plus symbol delimiter, if bing, need comma delimiter
- //but both might accept one big string space delimited and url encoded so test that on all first
- const delimiter = " ";
- let q = "";
- if (obj.address) {
- q += obj.address + delimiter;
- }
- if (obj.city) {
- q += obj.city + delimiter;
- }
-
- if (obj.region) {
- q += obj.region + delimiter;
- }
-
- if (obj.country) {
- q += obj.country + delimiter;
- }
-
- if (obj.postCode) {
- q += obj.postCode + delimiter;
- }
-
- if (obj.addressPostal) {
- q += obj.addressPostal + delimiter;
- }
-
- if (q.length > 1) {
- q = q.substring(0, q.length - 1);
- }
- //url encode the query
- q = encodeURIComponent(q);
- mapUrl = mapUrl.split("{ayaddress}").join(q);
- } else {
- throw new Error(
- "View map: error - no matching mapurl / address / geo coordinates set for display, nothing to view"
- );
- }
- window.open(mapUrl, "map");
- //This is not valid to do as some platforms don't open a new web browser window
- //but rather a map application in which case this is null and throws up the exception even though it's working
- // if (window.open(mapUrl, "map") == null) {
- // throw new Error(
- // "Problem displaying map in new window. Browser must allow pop-ups to view maps; check your browser setting"
- // );
- // }
- },
- ///////////////////////////////////////////////
- // Online mapping service url formats
- //
- //
- mapProviderUrls: function() {
- return [
- {
- name: "Apple",
- value:
- "http://maps.apple.com/?q={ayaddress}<|>http://maps.apple.com/?ll={aylatitude},{aylongitude}"
- },
- {
- name: "Bing",
- value:
- "https://bing.com/maps/default.aspx?where1={ayaddress}<|>https://bing.com/maps/default.aspx?cp={aylatitude}~{aylongitude}&lvl=17&style=r&sp=point.{aylatitude}_{aylongitude}"
- },
- {
- name: "Google",
- value:
- "https://www.google.com/maps/search/?api=1&query={ayaddress}<|>https://www.google.com/maps/search/?api=1&query={aylatitude},{aylongitude}"
- },
- {
- name: "MapQuest",
- value:
- "https://mapquest.com/?center={ayaddress}&zoom=17<|>https://mapquest.com/?center={aylatitude},{aylongitude}&zoom=17"
- },
- {
- name: "Open Street Map",
- value:
- "https://www.openstreetmap.org/search?query={ayaddress}<|>https://www.openstreetmap.org/?mlat={aylatitude}&mlon={aylongitude}#map=17/{aylatitude}/{aylongitude}"
- },
- {
- name: "geo URI",
- value: "geo:{aylatitude},{aylongitude}"
- },
- {
- name: "Waze",
- value:
- "https://waze.com/ul?q={ayaddress}<|>https://www.waze.com/ul?ll={aylatitude},{aylongitude}&navigate=yes&zoom=17"
- },
- {
- name: "Yandex",
- value:
- "https://yandex.ru/maps/?mode=search&text={ayaddress}&z=17<|>https://yandex.ru/maps/?ll={aylatitude},{aylongitude}&z=12&l=map"
- }
- ];
- },
- ///////////////////////////////////////////////
- // v-calendar view to Sockeye scheduleview enum
- //
- //
- calendarViewToSockeyeEnum: function(view) {
- switch (view) {
- case "day":
- return 1;
- case "week":
- return 2;
- case "month":
- return 3;
- case "4day":
- return 4;
- case "category":
- return 5;
-
- default:
- throw new Error(
- `gzutil->calendarViewtoSockeyeEnum - Unknown view type '${view}'`
- );
- }
- },
- ///////////////////////////////////////////////
- // GZDaysOfWeek to VCalendar weekdays
- //
- //
- DaysOfWeekToWeekdays: function(dow) {
- /*
- AyaDaysOfWeek
- Monday = 1,
- Tuesday = 2,
- Wednesday = 4,
- Thursday = 8,
- Friday = 16,
- Saturday = 32,
- Sunday = 64
-
- vCalendar [
- 0,//sunday
- 1,
- 2,
- 3,
- 4,
- 5,
- 6//saturday
-]
- */
- if (dow == null || dow == 0) {
- return [0, 1, 2, 3, 4, 5, 6]; //all the days
- }
- const ret = [];
-
- //turn EXCLUDE selected gzDaysOfWeek into INCLUDE selected days for vCalendar
- if (!(dow & 64)) {
- ret.push(0);
- }
- if (!(dow & 1)) {
- ret.push(1);
- }
- if (!(dow & 2)) {
- ret.push(2);
- }
- if (!(dow & 4)) {
- ret.push(3);
- }
- if (!(dow & 8)) {
- ret.push(4);
- }
- if (!(dow & 16)) {
- ret.push(5);
- }
- if (!(dow & 32)) {
- ret.push(6);
- }
- return ret;
- },
- ///////////////////////////////////////////////
- // Random integer from 0 to max
- //
- //
- getRandomInt: function(max) {
- return Math.floor(Math.random() * max);
- }
- /**
- *
- *
- */
-
- //new functions above here
-};
diff --git a/client/src/api/initialize.js b/client/src/api/initialize.js
deleted file mode 100644
index 8a979f1..0000000
--- a/client/src/api/initialize.js
+++ /dev/null
@@ -1,614 +0,0 @@
-function addNavItem(title, icon, route, navItems, key, testid, color = null) {
- if (!testid) {
- testid = route;
- }
-
- const o = {
- title,
- icon,
- route,
- navItems,
- key: key,
- testid: testid
- };
- if (color != null) {
- o["color"] = color;
- }
- o.navItems.forEach(z => {
- if (z.testid == null) {
- z.testid = z.route;
- }
- });
-
- window.$gz.store.commit("addNavItem", o);
-}
-
-function initNavPanel() {
- let key = 0;
- let sub = [];
-
- /*Service = 1,
-NotService = 2,
-Customer = 3,
-HeadOffice = 4,
-ServiceContractor = 5 */
-
- //########## OUTSIDE USERS GROUP (CUSTOMER / HEADOFFICE) ###
- if (window.$gz.store.getters.isCustomerUser == true) {
- //clear sublevel array
- sub = [];
-
- //Set homePage in store to customer csr for this user type
- let CustomerHomePageSet = false;
-
- //USER SETTINGS
- //if (window.$gz.store.state.customerRights.userSettings == true) {
- sub.push({
- title: "UserSettings",
- icon: "$sockiUserCog",
- route: "/home-user-settings",
- key: key++
- });
-
- window.$gz.store.commit("setHomePage", "/home-user-settings");
- CustomerHomePageSet = true;
- // }
-
- if (window.$gz.store.getters.canSubscribeToNotifications) {
- sub.push({
- title: "NotifySubscriptionList",
- icon: "$sockiBullhorn",
- route: "/home-notify-subscriptions",
- key: key++
- });
-
- window.$gz.store.commit("setHomePage", "/home-notify-subscriptions");
- CustomerHomePageSet = true;
- }
-
- //** CUSTOMER LOGIN HOME (TOP)
- addNavItem("Home", "$sockiHome", undefined, sub, key++, "homecustomer");
-
- //last resort home page if nothing else kicked in
- if (!CustomerHomePageSet) {
- window.$gz.store.commit("setHomePage", "/no-features-available");
- }
-
- return;
- }
-
- //###### ALL INSIDE USERS FROM HERE DOWN ###############
-
- //####### HOME GROUP
-
- //DASHBOARD
-
- sub.push({
- title: "Dashboard",
- icon: "$sockiTachometer",
- route: "/home-dashboard",
- key: key++
- });
-
- //SEARCH
- sub.push({
- title: "Search",
- icon: "$sockiSearch",
- route: "/home-search",
- key: key++
- });
-
- //SCHEDULE (personal)
- sub.push({
- title: "Schedule",
- icon: "$sockiCalendarDay",
- route: "/home-schedule",
- key: key++
- });
-
- //MEMOS
- sub.push({
- title: "MemoList",
- icon: "$sockiInbox",
- route: "/home-memos",
- key: key++
- });
-
- //REMINDERS
- sub.push({
- title: "ReminderList",
- icon: "$sockiStickyNote",
- route: "/home-reminders",
- key: key++
- });
-
- //REVIEWS
- sub.push({
- title: "ReviewList",
- icon: "$sockiCalendarCheck",
- route: "/home-reviews",
- key: key++
- });
-
- //USER SETTINGS
- sub.push({
- title: "UserSettings",
- icon: "$sockiUserCog",
- route: "/home-user-settings",
- key: key++
- });
-
- //USER NOTIFICATION SUBSCRIPTIONS
- sub.push({
- title: "NotifySubscriptionList",
- icon: "$sockiBullhorn",
- route: "/home-notify-subscriptions",
- key: key++
- });
-
- //HISTORY / MRU / ACTIVITY (personal)
- sub.push({
- title: "History",
- icon: "$sockiHistory",
- route: `/history/3/${window.$gz.store.state.userId}/true`,
- key: key++,
- testid: "/home-history"
- });
-
- //HOME
- if (sub.length > 0) {
- //Set homePage in store to dashboard
- window.$gz.store.commit("setHomePage", "/home-dashboard");
- addNavItem("Home", "$sockiHome", undefined, sub, key++, "home");
- }
-
- ////////////////////////////////////////////////////////
- // BUSINESS GROUP
- //
-
- sub = [];
-
- sub.push({
- title: "GZCaseList",
- icon: "$sockiCoffee",
- route: "/biz-gzcase-list",
- key: key++
- });
-
- sub.push({
- title: "LicenseList",
- icon: "$sockiGem",
- route: "/biz-license-list",
- key: key++
- });
-
- sub.push({
- title: "TrialLicenseRequestList",
- icon: "$sockiHandHoldingWater",
- route: "/biz-trial-request-list",
- key: key++
- });
-
- sub.push({
- title: "SubscriptionServerList",
- icon: "$sockiCloud",
- route: "/biz-subscription-server-list",
- key: key++
- });
-
- sub.push({
- title: "PurchaseList",
- icon: "$sockiShoppingCart",
- route: "/biz-purchase-list",
- key: key++
- });
-
- sub.push({
- title: "ProductList",
- icon: "$sockiBarCode",
- route: "/biz-product-list",
- key: key++
- });
-
- sub.push({
- title: "VendorList",
- icon: "$sockiStore",
- route: "/biz-vendor-list",
- key: key++
- });
-
- if (window.$gz.role.canOpen(window.$gz.type.Customer)) {
- addNavItem(
- "BusinessSettings",
- "$sockiBriefcase",
- undefined,
- sub,
- key++,
- "biz"
- );
- }
- ////////////////////////////////////////////////////
-
- //######### CUSTOMER GROUP
- if (window.$gz.role.canOpen(window.$gz.type.Customer)) {
- //these all require Customer rights so all in the same block
-
- //clear sublevel array
- sub = [];
-
- //CUSTOMERS subitem
- sub.push({
- title: "CustomerList",
- icon: "$sockiAddressCard",
- route: "/cust-customers",
- key: key++
- });
-
- //HEAD OFFICES subitem
- sub.push({
- title: "HeadOfficeList",
- icon: "$sockiSitemap",
- route: "/cust-head-offices",
- key: key++
- });
-
- //Customer / Headoffice Users subitem
- sub.push({
- title: "Contacts",
- icon: "$sockiUsers",
- route: "/cust-users",
- key: key++
- });
-
- sub.push({
- title: "CustomerNotifySubscriptionList",
- icon: "$sockiBullhorn",
- route: "/cust-notify-subscriptions",
- key: key++
- });
-
- // ** CUSTOMER (TOP)
- addNavItem(
- "CustomerList",
- "$sockiAddressBook",
- undefined,
- sub,
- key++,
- "customer"
- );
- }
-
- // //####### SERVICE GROUP
-
- // sub = [];
-
- // //SCHEDULE (shared)
-
- // sub.push({
- // title: "Schedule",
- // icon: "$sockiCalendarAlt",
- // route: "/svc-schedule",
- // key: key++
- // });
-
- // //**** SHARED (TOP GROUP)
- // if (
- // sub.length > 0 &&
- // !window.$gz.role.hasRole([
- // window.$gz.role.AUTHORIZATION_ROLES.TechRestricted
- // ])
- // ) {
- // addNavItem("Service", "$sockiToolbox", undefined, sub, key++, "service");
- // }
-
- //****************** ACCOUNTING
-
- //SOCKEYE Keeping this for very likely future accounting functionality
- sub = [];
-
- // ** ACCOUNTING (TOP)
- if (sub.length > 0) {
- addNavItem(
- "Accounting",
- "$sockiCoins",
- undefined,
- sub,
- key++,
- "accounting"
- );
- }
-
- //############# ADMINISTRATION
-
- //clear sublevel array
- sub = [];
-
- // GLOBAL SETTINGS
- if (window.$gz.role.canOpen(window.$gz.type.Global)) {
- sub.push({
- title: "AdministrationGlobalSettings",
- icon: "$sockiCogs",
- route: "/adm-global-settings",
- key: key++
- });
- }
-
- // USERS
- if (window.$gz.role.canOpen(window.$gz.type.User)) {
- sub.push({
- title: "UserList",
- icon: "$sockiUsers",
- route: "/adm-users",
- key: key++
- });
- }
-
- //TRANSLATION
- if (window.$gz.role.canOpen(window.$gz.type.Translation)) {
- sub.push({
- title: "TranslationList",
- icon: "$sockiLanguage",
- route: "/adm-translations",
- key: key++
- });
- }
-
- //REPORT TEMPLATES
- if (window.$gz.role.canChange(window.$gz.type.Report)) {
- sub.push({
- title: "ReportList",
- icon: "$sockiThList",
- route: "/adm-report-templates",
- key: key++
- });
- }
-
- //FILES IN DATABASE
- if (window.$gz.role.canOpen(window.$gz.type.FileAttachment)) {
- sub.push({
- title: "Attachments",
- icon: "$sockiPaperclip",
- route: "/adm-attachments",
- key: key++
- });
- }
-
- //EVENT LOG / HISTORY
- if (window.$gz.role.canOpen(window.$gz.type.Global)) {
- //not really an appropriate object here just guessing
- sub.push({
- title: "History",
- icon: "$sockiHistory",
- route: "/adm-history",
- key: key++
- });
- }
-
- //IMPORT
- if (window.$gz.role.canOpen(window.$gz.type.Global)) {
- //again, not really an appropriate object type
- sub.push({
- title: "Import",
- icon: "$sockiFileImport",
- route: "/adm-import",
- key: key++
- });
- }
-
- //INTEGRATION
- //decision here is that only teh biz admin can *control* or remove an integration
- //even though all full role inside users can create or edit integrations (just not through the Sockeye user interface)
- //this is required to support integrations made for various roles like inventory accounting etc
- if (window.$gz.role.canOpen(window.$gz.type.Global)) {
- sub.push({
- title: "IntegrationList",
- icon: "$sockiCampground",
- route: "/adm-integrations",
- key: key++
- });
- }
-
- // ** ADMINISTRATION (TOP)
- if (sub.length > 0) {
- addNavItem(
- "Administration",
- "$sockiUserTie",
- undefined,
- sub,
- key++,
- "administration"
- );
- }
-
- //############ OPERATIONS
-
- //clear sublevel array
- sub = [];
-
- // BACKUP
- if (window.$gz.role.canOpen(window.$gz.type.Backup)) {
- sub.push({
- title: "Backup",
- icon: "$sockiFileArchive",
- route: "/ops-backup",
- key: key++
- });
- }
-
- // SERVER STATE
- if (window.$gz.role.canChange(window.$gz.type.ServerState)) {
- sub.push({
- title: "ServerState",
- icon: "$sockiDoorOpen",
- route: "/ops-server-state",
- key: key++
- });
- }
-
- // JOBS
- if (window.$gz.role.canOpen(window.$gz.type.ServerJob)) {
- sub.push({
- title: "ServerJobs",
- icon: "$sockiRobot",
- route: "/ops-jobs",
- key: key++
- });
- }
-
- // LOGS
- if (window.$gz.role.canOpen(window.$gz.type.LogFile)) {
- sub.push({
- title: "ServerLog",
- icon: "$sockiHistory",
- route: "/ops-log",
- key: key++
- });
- }
-
- //METRICS
- if (window.$gz.role.canOpen(window.$gz.type.ServerMetrics)) {
- sub.push({
- title: "ServerMetrics",
- icon: "$sockiFileMedicalAlt",
- route: "/ops-metrics",
- key: key++
- });
-
- // //PROFILE
- // //metrics rights
- // sub.push({
- // title: "ServerProfiler",
- // icon: "$sockiBinoculars",
- // route: "/ops-profile",
- // key: key++
- // });
- }
-
- //NOTIFICATION CONFIG AND HISTORY
- if (window.$gz.role.canOpen(window.$gz.type.OpsNotificationSettings)) {
- sub.push({
- title: "OpsNotificationSettings",
- icon: "$sockiBullhorn",
- route: "/ops-notification-settings",
- key: key++
- });
- }
-
- if (window.$gz.role.canOpen(window.$gz.type.OpsNotificationSettings)) {
- sub.push({
- title: "NotificationDeliveryLog",
- icon: "$sockiHistory",
- route: "/ops-notify-log",
- key: key++
- });
- }
-
- if (window.$gz.role.canOpen(window.$gz.type.OpsNotificationSettings)) {
- sub.push({
- title: "NotificationCustomerDeliveryLog",
- icon: "$sockiHistory",
- route: "/ops-customer-notify-log",
- key: key++
- });
- }
-
- // OPS VIEW SERVER CONFIGURATION
- if (window.$gz.role.canOpen(window.$gz.type.GlobalOps)) {
- sub.push({
- title: "ViewServerConfiguration",
- icon: "$sockiInfoCircle",
- route: "/ops-view-configuration",
- key: key++
- });
- }
-
- // ** OPERATIONS (TOP)
- if (sub.length > 0) {
- addNavItem(
- "Operations",
- "$sockiServer",
- undefined,
- sub,
- key++,
- "operations"
- );
- }
-}
-
-async function getUserOptions() {
- try {
- const res = await window.$gz.api.get(
- "user-option/" + window.$gz.store.state.userId
- );
-
- if (res.error) {
- //In a form this would trigger a bunch of validation or error display code but for here and now:
- //convert error to human readable string for display and popup a notification to user
- const msg = window.$gz.api.apiErrorToHumanString(res.error);
- window.$gz.store.commit(
- "logItem",
- "Initialize::() fetch useroptions -> error" + msg
- );
- window.$gz.eventBus.$emit("notify-error", msg);
- } else {
- //Check if overrides and use them here
- //or else use browser defaults
-
- const l = {
- languageOverride: null,
- timeZoneOverride: null,
- currencyName: null,
- hour12: true,
- //uiColor: "#000000ff",
- emailAddress: null,
- mapUrlTemplate: null
- };
-
- l.languageOverride = res.data.languageOverride;
- l.timeZoneOverride = res.data.timeZoneOverride;
-
- //No browser setting for this so meh
- l.currencyName = res.data.currencyName;
-
- if (res.data.hour12 != null) {
- l.hour12 = res.data.hour12;
- }
-
- // l.uiColor = res.data.uiColor || "#000000ff";
- l.emailAddress = res.data.emailAddress || null;
-
- l.mapUrlTemplate = res.data.mapUrlTemplate || null;
-
- window.$gz.store.commit("setUserOptions", l);
- }
- } catch (error) {
- window.$gz.store.commit(
- "logItem",
- "Initialize::() fetch useroptions -> error" + error
- );
- throw new Error(window.$gz.errorHandler.errorToString(error));
- }
-}
-
-/////////////////////////////////////
-// Initialize the app
-// on change of authentication status
-export default function initialize() {
- // eslint-disable-next-line no-async-promise-executor
- return new Promise(async function(resolve, reject) {
- if (!window.$gz.store.state.authenticated) {
- throw new Error("initialize: Error, called but user not authenticated!");
- }
- try {
- await window.$gz.translation.cacheTranslations(
- window.$gz.translation.coreKeys
- );
- initNavPanel();
- await getUserOptions();
-
- resolve();
- } catch (err) {
- reject(err);
- }
- });
-}
diff --git a/client/src/api/locale.js b/client/src/api/locale.js
deleted file mode 100644
index a9ee50d..0000000
--- a/client/src/api/locale.js
+++ /dev/null
@@ -1,604 +0,0 @@
-//Browser Locale conversion utilities
-//dates,numbers currency etc
-export default {
- ////////////////////////////////////////////////////////
- // attempt to determine user's preferred language settings
- // As of Jan 2020 all major browsers support
- // navigator.languages
- // but some use navigator.language (singular) to denote UI language preference
- // not browsing language preference
- // so the ideal way to do this is to use navigator.languages[0] for the preferred language
- // and ignore the singular property since we don't care about the actual browser UI language
- // only how the user expects to see the page itself
- //
- // also for sake of future proofing and edge cases need to have it be manually settable as well
- //
- //https://appmakers.dev/bcp-47-language-codes-list/
- ///////////////////////////////////////////
- // Get users default language code
- // first check if overriden in useroptions
- // if not then use browsers own setting
- //if not that then final default of en-US
- getResolvedLanguage() {
- let l = window.$gz.store.state.userOptions.languageOverride;
- if (!window.$gz.util.stringIsNullOrEmpty(l)) {
- return l;
- } else {
- l = window.navigator.languages[0];
- if (!window.$gz.util.stringIsNullOrEmpty(l)) {
- return l;
- } else {
- return "en-US";
- }
- }
- },
-
- ///////////////////////////////////////////
- // Get users default time zone
- // first check if overriden in useroptions
- // if not then use browsers own setting
- // if that is empty then final default of "America/New_York"
- //https://www.iana.org/time-zones
- //https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
- getResolvedTimeZoneName() {
- let tz = window.$gz.store.state.userOptions.timeZoneOverride;
- if (!window.$gz.util.stringIsNullOrEmpty(tz)) {
- return tz;
- } else {
- tz = Intl.DateTimeFormat().resolvedOptions().timeZone;
- if (!window.$gz.util.stringIsNullOrEmpty(tz)) {
- return tz;
- } else {
- return "America/New_York";
- }
- }
- },
- //////////////////////////////////////////////////
- // Get the user's chosen currency name
- //https://en.wikipedia.org/wiki/ISO_4217
- //default to USD if nothing specified
- getCurrencyName() {
- const cur = window.$gz.store.state.userOptions.currencyName;
- if (!window.$gz.util.stringIsNullOrEmpty(cur)) {
- return cur;
- } else {
- return "USD";
- }
- },
- //////////////////////////////////////////////////
- // Get the user's chosen 12hr clock
- //
- getHour12() {
- return window.$gz.store.state.userOptions.hour12;
- },
-
- /////////////////////////////////////////////////////////////////////
- // Turn a utc ISO date from server into a vuetify calendar
- // schedule control compatible (epoch) format
- // localized.
- // For ease of use in schedule the epoch (milliseconds) is the best format
- // "It must be a Date, number of seconds since Epoch, or a string in the format of YYYY-MM-DD or YYYY-MM-DD hh:mm. Zero-padding is optional and seconds are ignored.""
- //
- //
- utcDateToScheduleCompatibleFormatLocalized(value, timeZoneName) {
- //This function takes a UTC iso format date string, parses it into a date then converts that date to the User's configured time zone
- //outputs that in a format close to ISO, fixes the space in the middle of the output to match ISO 8601 format then returns as an
- //epoch
- //this is to support controls that are not time zone settable so they are always in local browser time zone of os, however user may be operating
- //sockeye in another desired time zone so this is all to support that scenario
-
- if (!value) {
- if (window.$gz.dev) {
- throw new Error(
- `locale::utcDateToScheduleCompatibleFormatLocalized - Value is empty`
- );
- }
- return null;
- }
-
- return new Date(
- new Date(value) //convert to locale timezone and output in the closest thing to iso-8601 format
- .toLocaleString("sv-SE", {
- timeZone: timeZoneName
- })
- .replace(" ", "T") //Safari can't parse the date from here because sv-SE puts a space between date and time and Safari will only parse if it has a T between
- ).getTime();
- },
- ///////////////////////////////////////////////
- // Convert a local schedule epoch timestamp
- // to specified time zone equivalent then
- // to UTC and output as ISO 8601
- //
- //
- localScheduleFormatToUTC8601String(value, timeZoneName) {
- if (!timeZoneName) {
- timeZoneName = this.getResolvedTimeZoneName();
- }
-
- //input: epoch in local browser time zone
- //output: transform to date and time string
- //convert to desired time zone but at same time and date
- //(i.e. if it browser is vancouver and 1pm is selected but desired is new york's 1pm
- // so convert the string as if it was new york then back to iso so that the time is adjusted forward
- // as if the user was in new york in their browser default)
-
- //parse in the time in to the specified timezone
- let ret = window.$gz.DateTime.fromISO(
- //output the sched epoch as local time string without zone
- new Date(value).toLocaleString("sv-SE").replace(" ", "T"),
- {
- zone: timeZoneName
- }
- );
-
- ret = ret.setZone("utc"); //convert to UTC
- ret = ret.toISO(); //output as ISO 8601
- return ret;
- },
- ///////////////////////////////////////////
- // Turn a utc date into a displayable
- // short date and time
- // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString
- //
- utcDateToShortDateAndTimeLocalized(
- value,
- timeZoneName,
- languageName,
- hour12
- ) {
- if (!value) {
- return "";
- }
- if (!timeZoneName) {
- timeZoneName = this.getResolvedTimeZoneName();
- }
- if (!languageName) {
- languageName = this.getResolvedLanguage();
- }
-
- if (!hour12) {
- hour12 = this.getHour12();
- }
-
- //parse the date which is identified as utc ("2020-02-06T18:18:49.148011Z")
- const parsedDate = new Date(value);
-
- //is it a valid date?
- if (!(parsedDate instanceof Date && !isNaN(parsedDate))) {
- return "not valid";
- }
-
- return parsedDate.toLocaleString(languageName, {
- timeZone: timeZoneName,
- dateStyle: "short",
- timeStyle: "short",
- hour12: hour12
- });
- },
- ///////////////////////////////////////////
- // Turn a utc date into a displayable
- // date and time with specific formats
- // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/toLocaleString
- //
- utcDateToSpecifiedDateAndTimeLocalized(
- value,
- timeZoneName,
- languageName,
- hour12,
- dateStyle,
- timeStyle
- ) {
- if (!value) {
- return "";
- }
- if (!timeZoneName) {
- timeZoneName = this.getResolvedTimeZoneName();
- }
- if (!languageName) {
- languageName = this.getResolvedLanguage();
- }
-
- if (!hour12) {
- hour12 = this.getHour12();
- }
-
- //parse the date which is identified as utc ("2020-02-06T18:18:49.148011Z")
- const parsedDate = new Date(value);
-
- //is it a valid date?
- if (!(parsedDate instanceof Date && !isNaN(parsedDate))) {
- return "not valid";
- }
-
- return parsedDate.toLocaleString(languageName, {
- timeZone: timeZoneName,
- dateStyle: dateStyle,
- timeStyle: timeStyle,
- hour12: hour12
- });
- },
- ///////////////////////////////////////////
- // Turn a utc date into a displayable
- // short date
- //
- utcDateToShortDateLocalized(value, timeZoneName, languageName) {
- if (!value) {
- return "";
- }
- if (!timeZoneName) {
- timeZoneName = this.getResolvedTimeZoneName();
- }
- if (!languageName) {
- languageName = this.getResolvedLanguage();
- }
-
- //parse the date which is identified as utc ("2020-02-06T18:18:49.148011Z")
- const parsedDate = new Date(value);
-
- //is it a valid date?
- if (!(parsedDate instanceof Date && !isNaN(parsedDate))) {
- return "not valid";
- }
-
- return parsedDate.toLocaleDateString(languageName, {
- timeZone: timeZoneName,
- dateStyle: "short"
- });
- }, ///////////////////////////////////////////
- // Turn a utc date into a displayable
- // short time
- //
- utcDateToShortTimeLocalized(value, timeZoneName, languageName, hour12) {
- if (!value) {
- return "";
- }
- if (!timeZoneName) {
- timeZoneName = this.getResolvedTimeZoneName();
- }
- if (!languageName) {
- languageName = this.getResolvedLanguage();
- }
-
- if (!hour12) {
- hour12 = this.getHour12();
- }
-
- //parse the date which is identified as utc ("2020-02-06T18:18:49.148011Z")
- const parsedDate = new Date(value);
-
- //is it a valid date?
- if (!(parsedDate instanceof Date && !isNaN(parsedDate))) {
- return "not valid";
- }
-
- return parsedDate.toLocaleTimeString(languageName, {
- timeZone: timeZoneName,
- timeStyle: "short",
- hour12: hour12
- });
- },
- ///////////////////////////////////////////
- // Turn a duration value into a display
- //
- durationLocalized(value, hideSeconds) {
- if (value == null || value == "00:00:00") {
- return "";
- }
-
- let theDays = 0;
- let theHours = 0;
- let theMinutes = 0;
- let theSeconds = 0;
- let ret = "";
-
- const work = value.split(":");
- //has days?
- if (work[0].includes(".")) {
- let dh = work[0].split(".");
- theDays = Number(dh[0]);
- theHours = Number(dh[1]);
- } else {
- theHours = Number(work[0]);
- }
- theMinutes = Number(work[1]);
- //has milliseconds? (ignore them)
- if (work[2].includes(".")) {
- let dh = work[2].split(".");
- theSeconds = Number(dh[0]);
- } else {
- theSeconds = Number(work[2]);
- }
-
- if (theDays != 0) {
- ret += theDays + " " + window.$gz.translation.get("TimeSpanDays") + " ";
- }
- if (theHours != 0) {
- ret += theHours + " " + window.$gz.translation.get("TimeSpanHours") + " ";
- }
- if (theMinutes != 0) {
- ret +=
- theMinutes + " " + window.$gz.translation.get("TimeSpanMinutes") + " ";
- }
- if (!hideSeconds && theSeconds != 0) {
- ret +=
- theSeconds + " " + window.$gz.translation.get("TimeSpanSeconds") + " ";
- }
-
- return ret;
- },
- ///////////////////////////////////////////////
- // Convert a utc date to local time zone
- // and return time portion only in iso 8601
- // format (used by time and date picker components)
- //
- utcDateStringToLocal8601TimeOnlyString(value, timeZoneName) {
- if (!value) {
- //if no value, return the current time as expected by the time picker
- } else {
- //ok, the reason for sv-SE is that it's a locale that returns the time already in ISO format and 24hr by default
- //that can change over time so if this breaks that's why
- //also fr-CA does as well as possibly en-CA
- //https://stackoverflow.com/a/58633686/8939
- if (!timeZoneName) {
- timeZoneName = this.getResolvedTimeZoneName();
- }
-
- return new Date(value).toLocaleTimeString("sv-SE", {
- timeZone: timeZoneName
- });
- }
- },
- ///////////////////////////////////////////////
- // Convert a local time only string with date string
- // to UTC and output as ISO 8601
- // also converts to time zone specified if diff from browser
- // (used by time and date picker components)
- //
- localTimeDateStringToUTC8601String(value, timeZoneName) {
- //https://moment.github.io/luxon/docs/manual/zones.html#creating-datetimes-in-a-zone
- if (!timeZoneName) {
- timeZoneName = this.getResolvedTimeZoneName();
- }
-
- //parse in the time in the currently used timezone
- let ret = window.$gz.DateTime.fromISO(value, {
- zone: timeZoneName
- });
-
- ret = ret.setZone("utc"); //convert to UTC
- ret = ret.toISO(); //output as ISO 8601
-
- return ret;
- },
- ///////////////////////////////////////////////
- // UTC Now in api format
- // to UTC and output as ISO 8601
- // (used to set defaults)
- //
- nowUTC8601String(timeZoneName) {
- if (!timeZoneName) {
- timeZoneName = this.getResolvedTimeZoneName();
- }
- const ret = window.$gz.DateTime.local()
- .setZone(timeZoneName)
- .toUTC()
- .toString();
- return ret;
- },
- ///////////////////////////////////////////////
- // UTC ISO 8601 string add minutes
- // and return as UTC ISO 8601 string
- // (used to set automatic / default adjusted times)
- //
- addMinutesToUTC8601String(val, minutes) {
- if (!val || val == "" || minutes == null || minutes == 0) {
- return val;
- }
- //instantiate a luxon date object from val which is assumed to be an iso string
- let dt = window.$gz.DateTime.fromISO(val);
- if (!dt.isValid) {
- console.error("locale::addMinutes, input not valid:", {
- val: val,
- dt: dt
- });
- return val;
- }
- //add minutes
- dt = dt.plus({ minutes: minutes });
- return dt.toUTC().toString();
- },
- ///////////////////////////////////////////////
- // UTC ISO 8601 string add arbitrary value based
- // on luxon duration format
- // and return as UTC ISO 8601 string
- //https://moment.github.io/luxon/api-docs/index.html#datetimeplus
- //
- addDurationToUTC8601String(val, duration) {
- if (
- !val ||
- val == "" ||
- duration == null ||
- !typeof duration === "object"
- ) {
- return val;
- }
- //instantiate a luxon date object from val which is assumed to be an iso string
- let dt = window.$gz.DateTime.fromISO(val);
- if (!dt.isValid) {
- console.error("locale::addDurationToUTC8601String, input not valid:", {
- val: val,
- dt: dt
- });
- return val;
- }
- //add minutes
- dt = dt.plus(duration);
- return dt.toUTC().toString();
- },
- ///////////////////////////////////////////////
- // parse UTC ISO 8601 strings, diff, return hours
- //
- diffHoursFromUTC8601String(start, stop) {
- if (!start || start == "" || !stop == null || stop == "") {
- return 0;
- }
- //instantiate a luxon date object from val which is assumed to be an iso string
- const startDate = window.$gz.DateTime.fromISO(start);
- if (!startDate.isValid) {
- console.error("locale::diffHours, start not valid:", {
- start: start,
- startDate: startDate
- });
- return 0;
- }
- const stopDate = window.$gz.DateTime.fromISO(stop);
- if (!stopDate.isValid) {
- console.error("locale::diffHours, start not valid:", {
- stop: stop,
- stopDate: stopDate
- });
- return 0;
- }
-
- // console.log(
- // "locale:diffhours...",
- // stopDate.diff(startDate, "hours").toObject().hours
- // );
-
- // console.log(
- // "locale:diffhours.. ROUNDED.",
- // window.$gz.util.roundAccurately(
- // stopDate.diff(startDate, "hours").toObject().hours,
- // 2
- // )
- // );
-
- return window.$gz.util.roundAccurately(
- stopDate.diff(startDate, "hours").toObject().hours,
- 2
- );
- },
- ///////////////////////////////////////////////
- // Local now timestamp converted to timeZoneName
- // and output as ISO 8601
- // (used to inform server of local client time)
- //
- clientLocalZoneTimeStamp(timeZoneName) {
- if (!timeZoneName) {
- timeZoneName = this.getResolvedTimeZoneName();
- }
- const ret = window.$gz.DateTime.local()
- .setZone(timeZoneName)
- .toString();
- return ret;
- },
- ///////////////////////////////////////////////
- // Get default start date time in api format
- // (this is used to centralize and for future)
- defaultStartDateTime() {
- return {
- start: window.$gz.DateTime.local()
- .toUTC()
- .toString(),
- end: window.$gz.DateTime.local()
- .plus({ hours: 1 })
- .toUTC()
- .toString()
- };
- },
- ///////////////////////////////////////////////
- // Convert a utc date to local time zone
- // and return date only portion only in iso 8601
- // format (used by time and date picker components)
- //
- utcDateStringToLocal8601DateOnlyString(value, timeZoneName) {
- if (!value) {
- //if no value, return the current time as expected by the time picker
- } else {
- //ok, the reason for sv-SE is that it's a locale that returns the time already in ISO format and 24hr by default
- //that can change over time so if this breaks that's why
- //also fr-CA does as well as possibly en-CA
- //https://stackoverflow.com/a/58633686/8939
- if (!timeZoneName) {
- timeZoneName = this.getResolvedTimeZoneName();
- }
- return new Date(value).toLocaleDateString("sv-SE", {
- timeZone: timeZoneName
- });
- }
- },
- ///////////////////////////////////////////////
- // Date/time past or future evaluation
- //
- dateIsPast(value) {
- if (!value) {
- return false;
- }
-
- return new Date(value) < new Date();
- },
- ///////////////////////////////////////////
- // Turn a decimal number into a local
- // currency display
- //
- currencyLocalized(value, languageName, currencyName) {
- if (value == null) return "";
- if (!languageName) {
- languageName = this.getResolvedLanguage();
- }
- if (!currencyName) {
- currencyName = this.getCurrencyName();
- }
-
- return new Intl.NumberFormat(languageName, {
- style: "currency",
- currency: currencyName
- }).format(value);
- },
- ///////////////////////////////////////////
- // Turn a decimal number into a local
- // decimal format display
- //
- decimalLocalized(value, languageName) {
- if (value == null) return "";
- if (!languageName) {
- languageName = this.getResolvedLanguage();
- }
- //This forces 2 digits after the decimal
- // return new Intl.NumberFormat(languageName, {
- // minimumFractionDigits: 2
- // }).format(value);
- //this goes with whatever is the local format which for dev testing turned out to be perfect: 1.00 displays as 1 and 1.75 displays as 1.75
- //alignment goes out the window but it follows v7 format
- return new Intl.NumberFormat(languageName).format(value);
- },
- ///////////////////////////////////////////
- // Turn a file / memory size number into a local
- // decimal format display and in reasonable human readable range
- //
- humanFileSize(bytes, languageName, si = false, dp = 1) {
- const thresh = si ? 1000 : 1024;
-
- if (Math.abs(bytes) < thresh) {
- return bytes + " B";
- }
-
- const units = si
- ? ["kB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"]
- : ["KiB", "MiB", "GiB", "TiB", "PiB", "EiB", "ZiB", "YiB"];
- let u = -1;
- const r = 10 ** dp;
-
- do {
- bytes /= thresh;
- ++u;
- } while (
- Math.round(Math.abs(bytes) * r) / r >= thresh &&
- u < units.length - 1
- );
-
- return (
- this.decimalLocalized(bytes.toFixed(dp), languageName) + " " + units[u]
- );
- }
-};
diff --git a/client/src/api/notifypoll.js b/client/src/api/notifypoll.js
deleted file mode 100644
index 4201d3b..0000000
--- a/client/src/api/notifypoll.js
+++ /dev/null
@@ -1,46 +0,0 @@
-let keepChecking = false;
-const DEFAULT_POLLING_INTERVAL = 60000;
-const MAX_POLLING_INTERVAL = 30 * 60 * 1000; //30 minutes maximum wait time
-export default {
- async startPolling() {
- if (keepChecking == true) {
- return;
- }
- keepChecking = true;
- //initial delay so it fetches "immediately"
- let pollingInterval = 3000;
- let status = null;
- while (keepChecking == true) {
- try {
- await window.$gz.util.sleepAsync(pollingInterval);
- if (keepChecking && window.$gz.store.state.authenticated) {
- if (window.$gz.erasingDatabase == false) {
- status = await window.$gz.api.get("notify/new-count");
- if (status.error) {
- throw new Error(window.$gz.errorHandler.errorToString(status));
- // throw new Error(status.error);
- } else {
- window.$gz.store.commit("setNewNotificationCount", status.data);
- //success so go to default in case it was changed by an error
- pollingInterval = DEFAULT_POLLING_INTERVAL;
- }
- }
- } else {
- keepChecking = false;
- }
- } catch (error) {
- //fixup if fails on very first iteration with initial short polling interval
- if (pollingInterval < DEFAULT_POLLING_INTERVAL) {
- pollingInterval = DEFAULT_POLLING_INTERVAL;
- }
- pollingInterval *= 1.5;
- if (pollingInterval > MAX_POLLING_INTERVAL) {
- pollingInterval = MAX_POLLING_INTERVAL;
- }
- }
- }
- },
- stopPolling() {
- keepChecking = false;
- }
-};
diff --git a/client/src/api/open-object-handler.js b/client/src/api/open-object-handler.js
deleted file mode 100644
index 66c761c..0000000
--- a/client/src/api/open-object-handler.js
+++ /dev/null
@@ -1,277 +0,0 @@
-import socktype from "./socktype";
-export default {
- ///////////////////////////////
- // APP (GLOBAL) openobject CLICK HANDLER
- //
- // Deal with a request to open an object (from main datatables mainly)
- // if it's an open object url that triggered here the url would be in the format of {host/open/[socktype integer]/[id integer]}, i.e.
- // http://localhost:8080/open/2/105
- // called from App.vue
- handleOpenObjectClick(vm, tid) {
- //expects extra data (tid) to be one of { type: [AYATYPE], id: [RECORDID] }
- //NOTE: for new objects all edit pages assume record ID 0 (or null) means create rather than open
-
- //for sake of ease of coding I'm going to assume null id also means make a new record intent
- //so I don't have to parse and decide constantly on forms for every control that has a open record link in it
- if (tid.id == null) {
- tid.id = 0;
- }
-
- if (tid.type && tid.id != null) {
- const isCustomerTypeUser =
- window.$gz.store.state.userType == 3 ||
- window.$gz.store.state.userType == 4;
- //if these come from route parameters they may well be strings
- tid.type = Number.parseInt(tid.type, 10);
- tid.id = Number.parseInt(tid.id, 10);
- if (isCustomerTypeUser) {
- switch (tid.type) {
- case socktype.NotifySubscription:
- vm.$router.push({
- name: "home-notify-subscription",
- params: { recordid: tid.id }
- });
- break;
-
- default:
- window.$gz.eventBus.$emit(
- "notify-warning",
- `Customer user: open-object-handler unable to open link - [type:${tid.type}, id:${tid.id}]`
- );
- }
- } else {
- switch (tid.type) {
- case socktype.Memo:
- vm.$router.push({
- name: "memo-edit",
- params: { recordid: tid.id }
- });
- break;
- case socktype.Customer:
- vm.$router.push({
- name: "customer-edit",
- params: { recordid: tid.id }
- });
- break;
- case socktype.CustomerNote:
- vm.$router.push({
- name: "customer-note-edit",
- params: { recordid: tid.id }
- });
- break;
- case socktype.HeadOffice:
- vm.$router.push({
- name: "head-office-edit",
- params: { recordid: tid.id }
- });
- break;
-
- case socktype.User:
- //Is it an "Inside" user (staff or subcontractor)
- //or an "outside" user (customer or headoffice)
- //if key doesn't provide this then need to directly find out first before determining which form to redirect to
- if (tid.id != 0) {
- //lookup which one to open from server
- (async () => {
- try {
- //shortcut for superuser, always id 1
- if (tid.inside == undefined && tid.id == 1) {
- tid.inside = true;
- }
- if (tid.inside == undefined) {
- const res = await window.$gz.api.get(
- "user/inside-type/" + tid.id
- );
- if (res.error) {
- throw new Error(
- window.$gz.errorHandler.errorToString(res, vm)
- );
- }
- if (res.data) {
- tid.inside = res.data;
- }
- }
- if (tid.inside == true) {
- vm.$router.push({
- name: "adm-user",
- params: { recordid: tid.id }
- });
- } else {
- vm.$router.push({
- name: "cust-user",
- params: { recordid: tid.id }
- });
- }
- } catch (e) {
- throw new Error(window.$gz.errorHandler.errorToString(e, vm));
- //throw new Error(e);
- }
- })();
- }
- break;
- case socktype.NotifySubscription:
- vm.$router.push({
- name: "home-notify-subscription",
- params: { recordid: tid.id }
- });
- break;
- case socktype.FileAttachment:
- //lookup the actual type
- //then call this method again to do the actual open
-
- (async () => {
- try {
- const res = await window.$gz.api.get(
- "attachment/parent/" + tid.id
- );
-
- if (res.error) {
- throw new Error(
- window.$gz.errorHandler.errorToString(res, vm)
- );
- // throw new Error(res.error);
- }
- if (res.data.id && res.data.id != 0) {
- this.handleOpenObjectClick(vm, res.data);
- return;
- }
- } catch (e) {
- //throw new Error(e);
- throw new Error(window.$gz.errorHandler.errorToString(e, vm));
- }
- })();
-
- break;
-
- case socktype.Translation:
- vm.$router.push({
- name: "adm-translation",
- params: { recordid: tid.id }
- });
- break;
- case socktype.Report:
- vm.$router.push({
- name: "sock-report-edit",
- params: { recordid: tid.id }
- });
- break;
- case socktype.Backup:
- vm.$router.push({
- name: "ops-backup"
- });
- break;
-
- case socktype.FormCustom:
- //all we have is the id, but need the formkey to open it
- (async () => {
- try {
- const res = await window.$gz.api.get(
- "form-custom/form-key/" + tid.id
- );
-
- if (res.error) {
- throw new Error(
- window.$gz.errorHandler.errorToString(res, vm)
- );
- }
- if (res && res.data) {
- vm.$router.push({
- name: "sock-customize",
- params: {
- formCustomTemplateKey: res.data
- }
- });
- return;
- }
- } catch (e) {
- //throw new Error(e);
- throw new Error(window.$gz.errorHandler.errorToString(e, vm));
- }
- })();
- break;
-
- case socktype.Reminder:
- vm.$router.push({
- name: "reminder-edit",
- params: { recordid: tid.id }
- });
- break;
- case socktype.Review:
- vm.$router.push({
- name: "review-edit",
- params: { recordid: tid.id }
- });
- break;
-
- case socktype.CustomerNotifySubscription:
- vm.$router.push({
- name: "cust-notify-subscription",
- params: { recordid: tid.id }
- });
- break;
- case socktype.OpsNotificationSettings:
- vm.$router.push({
- name: "ops-notification-settings"
- });
- break;
- case socktype.Integration:
- vm.$router.push({
- name: "adm-integration",
- params: { recordid: tid.id }
- });
- break;
-
- case socktype.Vendor:
- vm.$router.push({
- name: "vendor-edit",
- params: { recordid: tid.id }
- });
- break;
-
- case socktype.Product:
- vm.$router.push({
- name: "product-edit",
- params: { recordid: tid.id }
- });
- break;
-
- case socktype.SubscriptionServer:
- vm.$router.push({
- name: "subscription-server-edit",
- params: { recordid: tid.id }
- });
- break;
-
- case socktype.GZCase:
- vm.$router.push({
- name: "gzcase-edit",
- params: { recordid: tid.id }
- });
- break;
-
- default:
- window.$gz.eventBus.$emit(
- "notify-warning",
- `open-object-handler: unknown [type:${tid.type}, id:${tid.id}]`
- );
- }
- }
- }
- },
-
- ///////////////////////////////////
- // WIRE UP MENU EVENTS
- //
- // called once from app.vue only
- //
- wireUpEventHandlers(vm) {
- const that = this;
- //expects extra data (tid) to be { type: [AYATYPE], id: [RECORDID] }
- window.$gz.eventBus.$on("openobject", function handleOpenObjectClickHandler(
- tid
- ) {
- that.handleOpenObjectClick(vm, tid);
- });
- }
- //new functions above here
-};
diff --git a/client/src/api/palette.js b/client/src/api/palette.js
deleted file mode 100644
index 16f9ce3..0000000
--- a/client/src/api/palette.js
+++ /dev/null
@@ -1,60 +0,0 @@
-//https://colorpalettes.net
-export default {
- color: {
- blue: "#1f77b4",
- red: "#d62728",
- orange: "#fe7f0e",
- green: "#2ca02c",
- purple: "#9c27b0",
- black: "#000000",
- cyan: "#00BCD4",
- teal: "#009688",
- primary: "#00205B", //APP Canucks dark blue
- secondary: "#00843D", //APP canucks green
- accent: "#db7022", //APP lighter orangey red, more friendly looking though not as much clarity it seems
- soft_sand: "#f1d3a1",
- soft_sand_taupe: "#e3dbd9",
- soft_pale_blue: "#e6eff6",
- soft_deep_blue: "#89b4c4",
- soft_green: "#ccdb86",
- soft_brown: "#c8bcb1",
- soft_brown_darker: "#8d7053",
- soft_gray: "#d2d7db"
- },
- getBoldPaletteArray(size) {
- const palette = [
- this.color.blue,
- this.color.red,
- this.color.green,
- this.color.orange,
- this.color.purple,
- this.color.cyan,
- this.color.teal,
- this.color.black
- ];
- const paletteLength = palette.length;
- const ret = [];
- for (let i = 0; i < size; i++) {
- ret.push(palette[i % paletteLength]);
- }
- return ret;
- },
- getSoftPaletteArray(size) {
- const palette = [
- this.color.soft_sand,
- this.color.soft_pale_blue,
- this.color.soft_gray,
- this.color.soft_green,
- this.color.soft_brown,
- this.color.soft_deep_blue,
- this.color.soft_sand_taupe,
- this.color.soft_brown_darker
- ];
- const paletteLength = palette.length;
- const ret = [];
- for (let i = 0; i < size; i++) {
- ret.push(palette[i % paletteLength]);
- }
- return ret;
- }
-};
diff --git a/client/src/api/relative-date-filter-calculator.js b/client/src/api/relative-date-filter-calculator.js
deleted file mode 100644
index 81b467d..0000000
--- a/client/src/api/relative-date-filter-calculator.js
+++ /dev/null
@@ -1,620 +0,0 @@
-/////////////////////////////////////////////////////////////////////////////////////////////////////////////
-
-////////////////////////////////////////////////////////////////////////////////////////////////////////////
-
-/////////////////////////////////
-// Convert a date token to local
-// date range to UTC for server
-// dataListView consumption
-//
-export default {
- ///////////////////////////////
- // token to date range
- //
- tokenToDates: function(token) {
- if (token == null || token.length == 0) {
- throw new Error(
- "relative-date-filter-calculator: date token is null or empty"
- );
- }
-
- //return object contains the two dates that encompass the time period
- //the token represents to the local browser time zone but in UTC
- //and iso8601 format
-
- //NOTE: it's valid for one of the two ret values might be undefined as it's valid to have a single date for
- //Past or Future
- const ret = { after: undefined, before: undefined };
- const dtNow = window.$gz.DateTime.local();
- const dtToday = window.$gz.DateTime.local(
- dtNow.year,
- dtNow.month,
- dtNow.day
- );
- let dtAfter = null;
- let dtBefore = null;
-
- switch (token) {
- case "*yesterday*":
- //Between Day before yesterday at midnight and yesterday at midnight
- ret.after = dtToday
- .plus({ days: -1, seconds: -1 })
- .toUTC()
- .toString();
- ret.before = dtToday.toUTC().toString();
- break;
-
- case "*today*":
- //Between yesterday at midnight and tommorow at midnight
- ret.after = dtToday
- .plus({ seconds: -1 })
- .toUTC()
- .toString();
- ret.before = dtToday
- .plus({ days: 1 })
- .toUTC()
- .toString();
- break;
-
- case "*tomorrow*":
- //Between Tonight at midnight and day after tommorow at midnight
- ret.after = dtToday
- .plus({ days: 1, seconds: -1 })
- .toUTC()
- .toString();
- ret.before = dtToday
- .plus({ days: 2 })
- .toUTC()
- .toString();
- break;
-
- case "*lastweek*":
- //Between two Sundays ago at midnight and last sunday at midnight
-
- //go back a week
- dtAfter = dtToday.plus({ days: -7 });
- //go backwards to Sunday (In Luxon Monday is 1, Sunday is 7)
- while (dtAfter.weekday != 7) {
- dtAfter = dtAfter.plus({ days: -1 });
- }
- //go to very start of eighth dayahead
- dtBefore = dtAfter.plus({ days: 8 });
- //remove a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*thisweek*":
- //Between Sunday at midnight and Next sunday at midnight
-
- //Start with today
- dtAfter = dtToday;
- //SET dtAfter to Monday start of this week
- //go backwards to monday (In Luxon Monday is 1, Sunday is 7)
- while (dtAfter.weekday != 1) {
- dtAfter = dtAfter.plus({ days: -1 });
- }
- //Now go back to sunday last second
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //Start with today
- dtBefore = dtToday;
-
- //SET dtBefore to next monday
- //is it monday now?
- if (dtBefore.weekday == 1) {
- //Monday today? then go to next monday
- dtBefore = dtBefore.plus({ days: 7 });
- } else {
- //Find next monday...
- while (dtBefore.weekday != 1) {
- dtBefore = dtBefore.plus({ days: 1 });
- }
- }
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*nextweek*":
- //Between Next Sunday at midnight and Next Next sunday at midnight
-
- //Start with today
- dtAfter = dtToday;
- //If today is monday skip over it first, we're looking for *next* monday, not this one
- if (dtAfter.weekday == 1) {
- dtAfter = dtAfter.plus({ days: 1 });
- }
-
- //go forwards to next monday 12:00am (In Luxon Monday is 1, Sunday is 7)
- while (dtAfter.weekday != 1) {
- dtAfter = dtAfter.plus({ days: 1 });
- }
- //Now go back to sunday last second
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set dtBefore 7 days ahead of dtAfter
- //(sb BEFORE two mondays from now at zero hour so need to add a second due to prior removal of a second to make sunday)
- dtBefore = dtAfter.plus({ days: 7, seconds: 1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*lastmonth*":
- //start with the first day of this month
- dtAfter = window.$gz.DateTime.local(dtNow.year, dtNow.month, 1);
- //subtract a Month
- dtAfter = dtAfter.plus({ months: -1 });
- //Add one month to dtAfter to get end date
- dtBefore = dtAfter.plus({ months: 1 });
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*thismonth*":
- //start with the first day of this month
- dtAfter = window.$gz.DateTime.local(dtNow.year, dtNow.month, 1);
- //Add one month to dtAfter to get end date
- dtBefore = dtAfter.plus({ months: 1 });
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*nextmonth*":
- //start with the first day of this month
- dtAfter = window.$gz.DateTime.local(dtNow.year, dtNow.month, 1);
-
- //add a month
- dtAfter = dtAfter.plus({ months: 1 });
-
- //Add one month to dtAfter to get end date
- dtBefore = dtAfter.plus({ months: 1 });
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*14daywindow*":
- //Start with today
- dtAfter = dtToday;
-
- //subtract 7 days
- dtAfter = dtAfter.plus({ days: -7 });
-
- //Add 15 days to dtAfter to get end date
- dtBefore = dtAfter.plus({ days: 15 });
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*past*":
- //Any time before Now
- //set return values from calculated values
- ret.after = undefined;
- ret.before = dtNow.toUTC().toString();
- break;
-
- case "*future*":
- //Any time after Now
- //set return values from calculated values
- ret.after = dtNow.toUTC().toString();
- ret.before = undefined;
- break;
-
- case "*lastyear*":
- //"last year" means prior calendar year from start of january to end of december
- //start with the first day of this year
- dtAfter = window.$gz.DateTime.local(dtNow.year);
-
- //subtract a year
- dtAfter = dtAfter.plus({ years: -1 });
-
- //Before zero hour january 1st this year
- dtBefore = window.$gz.DateTime.local(dtNow.year);
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*thisyear*":
- //From zero hour january 1 this year (minus a second) to zero hour jan 1 next year
- //start with the first day of this year
- dtAfter = window.$gz.DateTime.local(dtNow.year);
-
- //Before zero hour january 1st next year
- dtBefore = window.$gz.DateTime.local(dtNow.year);
- dtBefore = dtBefore.plus({ years: 1 });
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*last3months*":
- //From Now minus 3 months
- dtAfter = dtToday.plus({ months: -3 });
-
- //Before now
- dtBefore = dtNow;
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*last6months*":
- //From Now minus 6 months
- dtAfter = dtToday.plus({ months: -6 });
-
- //Before now
- dtBefore = dtNow;
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*pastyear*": //within the prior 365 days before today
- //From Now minus 365 days
- dtAfter = dtToday.plus({ days: -365 });
-
- //Before now
- dtBefore = dtNow;
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*past90days*":
- //From Now minus 90 days
- dtAfter = dtNow.plus({ days: -90 });
-
- //Before now
- dtBefore = dtNow;
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*past30days*":
- //From Now minus 30 days
- dtAfter = dtNow.plus({ days: -30 });
-
- //Before now
- dtBefore = dtNow;
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*past7days*":
- //From Now minus 7 days
- dtAfter = dtNow.plus({ days: -7 });
-
- //Before now
- dtBefore = dtNow;
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*past24hours*":
- //From Now minus 24 hours
- dtAfter = dtNow.plus({ hours: -24 });
-
- //Before now
- dtBefore = dtNow;
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*past6hours*":
- //From Now minus 6 hours
- dtAfter = dtNow.plus({ hours: -6 });
-
- //Before now
- dtBefore = dtNow;
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
- ///////////////////////////////////////////////////////////////////////////
- case "*january*":
- //This year specific month (month is 1 based)
- dtAfter = window.$gz.DateTime.local(dtNow.year, 1, 1);
-
- //Add one month to dtAfter to get end date
- dtBefore = dtAfter.plus({ months: 1 });
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*february*":
- //This year specific month (month is 1 based)
- dtAfter = window.$gz.DateTime.local(dtNow.year, 2, 1);
-
- //Add one month to dtAfter to get end date
- dtBefore = dtAfter.plus({ months: 1 });
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*march*":
- //This year specific month (month is 1 based)
- dtAfter = window.$gz.DateTime.local(dtNow.year, 3, 1);
-
- //Add one month to dtAfter to get end date
- dtBefore = dtAfter.plus({ months: 1 });
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*april*":
- //This year specific month (month is 1 based)
- dtAfter = window.$gz.DateTime.local(dtNow.year, 4, 1);
-
- //Add one month to dtAfter to get end date
- dtBefore = dtAfter.plus({ months: 1 });
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*may*":
- //This year specific month (month is 1 based)
- dtAfter = window.$gz.DateTime.local(dtNow.year, 5, 1);
-
- //Add one month to dtAfter to get end date
- dtBefore = dtAfter.plus({ months: 1 });
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*june*":
- //This year specific month (month is 1 based)
- dtAfter = window.$gz.DateTime.local(dtNow.year, 6, 1);
-
- //Add one month to dtAfter to get end date
- dtBefore = dtAfter.plus({ months: 1 });
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*july*":
- //This year specific month (month is 1 based)
- dtAfter = window.$gz.DateTime.local(dtNow.year, 7, 1);
-
- //Add one month to dtAfter to get end date
- dtBefore = dtAfter.plus({ months: 1 });
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*august*":
- //This year specific month (month is 1 based)
- dtAfter = window.$gz.DateTime.local(dtNow.year, 8, 1);
-
- //Add one month to dtAfter to get end date
- dtBefore = dtAfter.plus({ months: 1 });
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*september*":
- //This year specific month (month is 1 based)
- dtAfter = window.$gz.DateTime.local(dtNow.year, 9, 1);
-
- //Add one month to dtAfter to get end date
- dtBefore = dtAfter.plus({ months: 1 });
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*october*":
- //This year specific month (month is 1 based)
- dtAfter = window.$gz.DateTime.local(dtNow.year, 10, 1);
-
- //Add one month to dtAfter to get end date
- dtBefore = dtAfter.plus({ months: 1 });
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*november*":
- //This year specific month (month is 1 based)
- dtAfter = window.$gz.DateTime.local(dtNow.year, 11, 1);
-
- //Add one month to dtAfter to get end date
- dtBefore = dtAfter.plus({ months: 1 });
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*december*":
- //This year specific month (month is 1 based)
- dtAfter = window.$gz.DateTime.local(dtNow.year, 12, 1);
-
- //Add one month to dtAfter to get end date
- dtBefore = dtAfter.plus({ months: 1 });
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*lastyearlastmonth*":
- //start with the first day of this month
- dtAfter = window.$gz.DateTime.local(dtNow.year, dtNow.month, 1);
- //subtract a Year and a Month
- dtAfter = dtAfter.plus({ years: -1, months: -1 });
- //Add one month to dtAfter to get end date
- dtBefore = dtAfter.plus({ months: 1 });
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*lastyearthismonth*":
- //start with the first day of this month
- dtAfter = window.$gz.DateTime.local(dtNow.year, dtNow.month, 1);
- //subtract a Year
- dtAfter = dtAfter.plus({ years: -1 });
- //Add one month to dtAfter to get end date
- dtBefore = dtAfter.plus({ months: 1 });
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- case "*lastyearnextmonth*":
- //start with the first day of this month
- dtAfter = window.$gz.DateTime.local(dtNow.year, dtNow.month, 1);
-
- //subtract a year, add a month
- dtAfter = dtAfter.plus({ years: -1, months: 1 });
-
- //Add one month to dtAfter to get end date
- dtBefore = dtAfter.plus({ months: 1 });
-
- //move after back a second for boundary
- dtAfter = dtAfter.plus({ seconds: -1 });
-
- //set return values from calculated values
- ret.after = dtAfter.toUTC().toString();
- ret.before = dtBefore.toUTC().toString();
- break;
-
- default:
- throw new Error(
- "relative-date-time-filter-calculater: Date token [" +
- token +
- "] was not recognized"
- );
- //--------------------------
- }
-
- return ret;
- }
-};
diff --git a/client/src/api/sockeye-version.js b/client/src/api/sockeye-version.js
deleted file mode 100644
index f5ea7e9..0000000
--- a/client/src/api/sockeye-version.js
+++ /dev/null
@@ -1,4 +0,0 @@
-export default {
- version: "8.0.28",
- copyright: "© 1999-2022, Ground Zero Tech-Works Inc."
-};
diff --git a/client/src/api/socktype.js b/client/src/api/socktype.js
deleted file mode 100644
index 1185ea3..0000000
--- a/client/src/api/socktype.js
+++ /dev/null
@@ -1,48 +0,0 @@
-export default {
- NoType: 0,
- Global: 1,
- FormUserOptions: 2,
- User: 3,
- ServerState: 4,
- LogFile: 6,
- PickListTemplate: 7,
- Customer: 8,
- ServerJob: 9,
- ServerMetrics: 12,
- Translation: 13,
- UserOptions: 14,
- HeadOffice: 15,
- FileAttachment: 17,
- DataListSavedFilter: 18,
- FormCustom: 19,
- Vendor: 33,
- GlobalOps: 47, //really only used for rights, not an object type of any kind
- BizMetrics: 48, //deprecate? Not used for anything as of nov 2020
- Backup: 49,
- Notification: 50,
- NotifySubscription: 51,
- Reminder: 52,
- OpsNotificationSettings: 56,
- Report: 57,
- DashboardView: 58,
- CustomerNote: 59,
- Memo: 60,
- Review: 61,
- DataListColumnView: 68,
- CustomerNotifySubscription: 84, //proxy subs for customers
- Integration: 92, //3rd party or add-on integration data store,
-
- License: 93,
- TrialLicenseRequest: 94,
- SubscriptionServer: 95,
- Purchase: 96,
- Product: 97,
- GZCase: 98
-};
-/**
- *
- * This is a mirror of SockType.cs in server project
- * To update just copy the contents of SockType.cs and replace " :" with ":" (without quotes obvsly)
- *
- *
- */
diff --git a/client/src/api/translation.js b/client/src/api/translation.js
deleted file mode 100644
index 78b5d5d..0000000
--- a/client/src/api/translation.js
+++ /dev/null
@@ -1,327 +0,0 @@
-export default {
- ////////////////////////////////
- // Update the local cache
- //
- //
- async updateCache(editedTranslation) {
- //This function is only called if there is a requirement to refresh the local cache
- //either they just changed translations and saved it in user settings
- //or they just edited a translation and saved it in translation editor and it's also their own local translation
-
- if (editedTranslation) {
- //iterate the keys that are cached and set them from whatever is in editedTranslation for that key
- for (const [key] of Object.entries(
- window.$gz.store.state.translationText
- )) {
- const display = editedTranslation.translationItems.find(
- z => z.key == key
- ).display;
-
- window.$gz.store.commit("setTranslationText", {
- key: key,
- value: display
- });
- }
- } else {
- //gather up the keys that are cached and fetch the latest and then replace them
- const needIt = [];
- Object.keys(window.$gz.store.state.translationText).forEach(z => {
- needIt.push(z);
- });
- //fetch these keys
- const transData = await window.$gz.api.upsert(
- "translation/subset",
- needIt
- );
- transData.data.forEach(function commitFetchedTranslationItemToStore(
- item
- ) {
- window.$gz.store.commit("setTranslationText", item);
- });
- }
- },
- get(key) {
- if (!key) {
- console.trace("translation.js::get, no translation key was presented");
- return "";
- }
- //no translation for Wiki
- if (key == "Wiki") {
- return "Wiki";
- }
- if (!window.$gz.util.has(window.$gz.store.state.translationText, key)) {
- return "??" + key;
- }
- return window.$gz.store.state.translationText[key];
- },
- async cacheTranslations(keys, forceTranslationId) {
- // eslint-disable-next-line no-async-promise-executor
- return new Promise(async function fetchTranslationKeysFromServer(resolve) {
- //
- //step 1: build an array of keys that we don't have already
- //Note: this will ensure only unique keys go into the store so it's safe to call this with dupes as can happen
- //for example datatables have dynamic column names so they need to fetch on demand
- const needIt = [];
- for (let i = 0; i < keys.length; i++) {
- if (
- !window.$gz.util.has(window.$gz.store.state.translationText, keys[i])
- ) {
- needIt.push(keys[i]);
- }
- }
-
- if (needIt.length == 0) {
- return resolve();
- }
-
- //step 2: get it
- let transData = null;
-
- if (forceTranslationId) {
- transData = await window.$gz.api.upsert(
- `translation/subset/${forceTranslationId}`,
- needIt
- );
- } else {
- transData = await window.$gz.api.upsert("translation/subset", needIt);
- }
-
- transData.data.forEach(function commitFetchedTranslationItemToStore(
- item
- ) {
- window.$gz.store.commit("setTranslationText", item);
- });
- return resolve();
- });
- },
- //Keys that will always be required for any Sockeye work for any user
- coreKeys: [
- //main nav options
- "Home",
- "Dashboard",
- "Schedule",
- "MemoList",
- "ReviewList",
- "UserSettings",
- "SetLoginPassword",
- "NotifySubscriptionList",
- "UserPreferences",
- "Service",
- "CustomerList",
- "HeadOfficeList",
- "VendorList",
- "CustomerNotifySubscriptionList",
- "Contacts",
- "AdministrationGlobalSettings",
- "HelpLicense",
- "UserList",
- "Translation",
- "TranslationList",
- "ReportList",
- "ReminderList",
- "Accounting",
- "Administration",
- "Operations",
- "Attachments",
- "Review",
- "Extensions",
- "History",
- "Statistics",
- "Backup",
- "ServerState",
- "ServerJobs",
- "ServerLog",
- "ServerMetrics",
- "ServerProfiler",
- "OpsNotificationSettings",
- "ViewServerConfiguration",
- "NotificationCustomerDeliveryLog",
- "NotificationDeliveryLog",
- "HelpAboutSockeye",
- "MenuHelp",
- "More",
- "Logout",
- "Active",
- "Copy",
- "New",
- "Cancel",
- "Close",
- "Save",
- "SaveACopy",
- "Delete",
- "SoftDelete",
- "SoftDeleteAll",
- "Undelete",
- "Add",
- "Replace",
- "Remove",
- "OK",
- "Open",
- "Print",
- "Report",
- "Refresh",
- "Sort",
- "Duplicate",
- "RecordHistory",
- "Search",
- "TypeToSearchOrAdd",
- "SelectedItems",
- "AllItemsInList",
- "NoData",
- "Errors",
- "ErrorFieldLengthExceeded",
- "ErrorStartDateAfterEndDate",
- "ErrorRequiredFieldEmpty",
- "ErrorFieldValueNotInteger",
- "ErrorFieldValueNotDecimal",
- "ErrorAPI2000",
- "ErrorAPI2001",
- "ErrorAPI2002",
- "ErrorAPI2003",
- "ErrorAPI2004",
- "ErrorAPI2005",
- "ErrorAPI2006",
- "ErrorAPI2010",
- "ErrorAPI2020",
- "ErrorAPI2030",
- "ErrorAPI2040",
- "ErrorAPI2200",
- "ErrorAPI2201",
- "ErrorAPI2202",
- "ErrorAPI2203",
- "ErrorAPI2204",
- "ErrorAPI2205",
- "ErrorAPI2206",
- "ErrorAPI2207",
- "ErrorAPI2208",
- "ErrorAPI2209",
- "ErrorAPI2210",
- "ErrorAPI2212",
- "ErrorServerUnresponsive",
- "ErrorUserNotAuthenticated",
- "ErrorUserNotAuthorized",
- "ErrorNoMatch",
- "ErrorPickListQueryInvalid",
- "ErrorSecurityUserCapacity",
- "ErrorDBForeignKeyViolation",
- "DeletePrompt",
- "AreYouSureUnsavedChanges",
- "Leave",
- "Tags",
- "Tag",
- "Customize",
- "ObjectCustomFieldCustomGrid",
- "RowsPerPage",
- "PageOfPageText",
- "Loading",
- "Filter",
- "Heading",
- "Table",
- "InsertLink",
- "LinkUrl",
- "LinkText",
- "InsertImage",
- "ImageUrl",
- "ImageDescription",
- "AttachFile",
- "AttachmentNotes",
- "Upload",
- "AttachmentFileName",
- "FileAttachment",
- "MaintenanceExpired",
- "MaintenanceExpiredNote",
- "Import",
- "Export",
- "TimeSpanYears",
- "TimeSpanMonths",
- "TimeSpanDays",
- "TimeSpanHours",
- "TimeSpanMinutes",
- "TimeSpanSeconds",
- "DirectNotification",
- "UpdateAvailable",
- "DropFilesHere",
- "First",
- "Backward",
- "Forward",
- "Last",
- "GeoCapture",
- "GeoView",
- "CopyToClipboard",
- "SockType",
- "Now",
- "DateRangeToday",
- "ReportRenderTimeOut",
- "RenderingReport",
- "Settings",
- "IntegrationList",
- "BusinessSettings",
- "LicenseList",
- "License",
- "TrialLicenseRequestList",
- "SubscriptionServerList",
- "ProductList",
- "PurchaseList",
- "GZCaseList"
- ],
-
- ////////////////////////////////////////////////////////
- // Take in a string that contains one or more
- //translation keys that start with LT:
- //translate each and replace and return the string translated
- // (fetch and cache any missing strings)
- async translateStringWithMultipleKeysAsync(s) {
- if (s == null) {
- return s;
- }
- let ret = s;
-
- const found = s.match(/LT:[\w]*/gm);
- if (found == null) {
- return ret;
- }
-
- //clean up the keys for fetching
- const keysToCache = found.map(z => z.replace("LT:", ""));
- //cache / fetch any that are not already present
- await this.cacheTranslations(keysToCache);
-
- //replace
- found.forEach(z => {
- const translated = this.get(z.replace("LT:", ""));
- //replace all
- ret = ret.split(z).join(translated);
- });
-
- return ret;
- },
- ////////////////////////////////////////////////////////
- // Take in a string that contains one or more
- //translation keys that start with LT:
- //translate each and replace and return the string translated
- // (DOES NOT fetch and cache any missing strings, they must exist)
- //this is the sync version to be used in non async capable code
- translateStringWithMultipleKeys(s) {
- let ret = s;
- const found = s.match(/LT:[\w]*/gm);
- if (found == null) {
- return ret;
- }
- //replace
- found.forEach(z => {
- const translated = this.get(z.replace("LT:", ""));
- //replace all
- ret = ret.split(z).join(translated);
- });
- return ret;
- },
-
- ////////////////////////////////////////////////////////
- // dynamically set the vuetify language elements from
- // users translated text
- // Keeping vuetify using en locale and just adjusting on top of that
- //
- setVuetifyDefaultLanguageElements(vm) {
- vm.$vuetify.lang.locales.en.close = this.get("OK");
- }
-};
diff --git a/client/src/assets/css/main.css b/client/src/assets/css/main.css
deleted file mode 100644
index d2d4bd6..0000000
--- a/client/src/assets/css/main.css
+++ /dev/null
@@ -1,23 +0,0 @@
-.multi-line {
- white-space: pre-line;
-}
-
-/*
-#nprogress .bar {
- height: 2px;
- background: rgb(255, 255, 0) !important;
- }
-
- #nprogress .spinner .spinner-icon {
- border-top-color: #ffff00 !important;
- border-left-color: #ffff00 !important;
- }
-*/
-/* .aywiki > blockquote {
- margin-top: 10px;
- margin-bottom: 10px;
- margin-left: 50px;
- padding-left: 15px;
- border-left: 3px solid #ccc;
- background-color: rgb(245, 252, 255);
-} */
diff --git a/client/src/assets/img/sockeye-128.png b/client/src/assets/img/sockeye-128.png
deleted file mode 100644
index 33cc66c..0000000
Binary files a/client/src/assets/img/sockeye-128.png and /dev/null differ
diff --git a/client/src/assets/img/sockeye-64.png b/client/src/assets/img/sockeye-64.png
deleted file mode 100644
index a65c3b4..0000000
Binary files a/client/src/assets/img/sockeye-64.png and /dev/null differ
diff --git a/client/src/assets/img/sockeye.ico b/client/src/assets/img/sockeye.ico
deleted file mode 100644
index 369e8bf..0000000
Binary files a/client/src/assets/img/sockeye.ico and /dev/null differ
diff --git a/client/src/assets/img/sockeye.jpg b/client/src/assets/img/sockeye.jpg
deleted file mode 100644
index 60c4093..0000000
Binary files a/client/src/assets/img/sockeye.jpg and /dev/null differ
diff --git a/client/src/assets/img/sockeye.svg b/client/src/assets/img/sockeye.svg
deleted file mode 100644
index 449fcf9..0000000
--- a/client/src/assets/img/sockeye.svg
+++ /dev/null
@@ -1,1414 +0,0 @@
-
-
-
diff --git a/client/src/assets/logo.svg b/client/src/assets/logo.svg
deleted file mode 100644
index 449fcf9..0000000
--- a/client/src/assets/logo.svg
+++ /dev/null
@@ -1,1414 +0,0 @@
-
-
-
diff --git a/client/src/components/_barebones_template.vue b/client/src/components/_barebones_template.vue
deleted file mode 100644
index 2ea4423..0000000
--- a/client/src/components/_barebones_template.vue
+++ /dev/null
@@ -1,42 +0,0 @@
-
-
- barebones template
-
-
-
diff --git a/client/src/components/alert-control.vue b/client/src/components/alert-control.vue
deleted file mode 100644
index c1a0a1f..0000000
--- a/client/src/components/alert-control.vue
+++ /dev/null
@@ -1,38 +0,0 @@
-
-
-
- {{ alertMessage }}
-
- {{ alertMessage }}
-
-
-
diff --git a/client/src/components/attachment-control.vue b/client/src/components/attachment-control.vue
deleted file mode 100644
index ad843f3..0000000
--- a/client/src/components/attachment-control.vue
+++ /dev/null
@@ -1,387 +0,0 @@
-
-
-
-
- {{ $sock.t("Attachments")
- }}
-
-
-
-
-
-
-
- {{
- $sock.t("NoData")
- }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- $sockiFolder
- $sockiPaperclip
-
-
-
- {{ $sock.t("DropFilesHere") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- $sockiEdit
-
-
-
-
-
-
- {{ $sock.t("Attachments")
- }}
-
-
-
-
-
-
- {{
- $sock.t("Upload")
- }}
-
-
-
-
-
-
- {{ $sock.t("FileAttachment") }}
-
-
-
-
-
-
- {{ $sock.t("Delete") }}
-
-
- {{
- $sock.t("Cancel")
- }}
- {{
- $sock.t("OK")
- }}
-
-
-
-
-
-
-
-
-
diff --git a/client/src/components/chart-bar-control.vue b/client/src/components/chart-bar-control.vue
deleted file mode 100644
index 268ff5e..0000000
--- a/client/src/components/chart-bar-control.vue
+++ /dev/null
@@ -1,43 +0,0 @@
-
diff --git a/client/src/components/chart-bar-horizontal-control.vue b/client/src/components/chart-bar-horizontal-control.vue
deleted file mode 100644
index 715f823..0000000
--- a/client/src/components/chart-bar-horizontal-control.vue
+++ /dev/null
@@ -1,43 +0,0 @@
-
diff --git a/client/src/components/chart-line-control.vue b/client/src/components/chart-line-control.vue
deleted file mode 100644
index 124cce5..0000000
--- a/client/src/components/chart-line-control.vue
+++ /dev/null
@@ -1,42 +0,0 @@
-
diff --git a/client/src/components/currency-control.vue b/client/src/components/currency-control.vue
deleted file mode 100644
index b9e2b3e..0000000
--- a/client/src/components/currency-control.vue
+++ /dev/null
@@ -1,78 +0,0 @@
-
-
-
-
-
-
diff --git a/client/src/components/custom-fields-control.vue b/client/src/components/custom-fields-control.vue
deleted file mode 100644
index 2e34f68..0000000
--- a/client/src/components/custom-fields-control.vue
+++ /dev/null
@@ -1,479 +0,0 @@
-
-
-
- {{ $sock.t("ObjectCustomFieldCustomGrid") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- UNKNOWN CUSTOM CONTROL TYPE: {{ item.type }}
-
-
-
-
-
-
-
-
diff --git a/client/src/components/dash-base.vue b/client/src/components/dash-base.vue
deleted file mode 100644
index 5b3ae57..0000000
--- a/client/src/components/dash-base.vue
+++ /dev/null
@@ -1,229 +0,0 @@
-
-
-
-
-
-
-
-
-
-
- {{ count }} +
-
- {{ icon }}
-
-
-
- {{ icon }}
-
-
-
-
-
-
-
- {{ count }} +
-
- {{ icon }}
-
-
-
- {{ icon }}
-
-
- {{ displayTitle }}
-
-
-
-
- $sockiEllipsisV
-
-
-
-
-
-
- {{ $sock.t("More") }}
-
-
-
-
-
- $sockiCog
-
-
- {{ $sock.t("Settings") }}
-
-
-
-
-
- $sockiPlus
-
-
- {{ $sock.t("New") }}
-
-
-
-
-
- $sockiSync
-
-
- {{ $sock.t("Refresh") }}
-
-
-
-
-
- $sockiStepBackward
-
-
- {{ $sock.t("First") }}
-
-
-
-
-
- $sockiBackward
-
-
- {{ $sock.t("Backward") }}
-
-
-
-
-
- $sockiForward
-
-
- {{ $sock.t("Forward") }}
-
-
-
-
-
- $sockiStepForward
-
-
- {{ $sock.t("Last") }}
-
-
-
-
-
- $sockiTrashAlt
-
-
- {{ $sock.t("Remove") }}
-
-
-
-
-
-
-
-
-
-
- {{ errorMessage }}
-
-
-
- CONTENT CONTENT CONTENT CONTENT CONTENT CONTENT
CONTENT
- CONTENT CONTENT CONTENT CONTENT CONTENT
CONTENT CONTENT CONTENT
- CONTENT CONTENT CONTENT
CONTENT CONTENT CONTENT CONTENT CONTENT
- CONTENT
CONTENT CONTENT CONTENT CONTENT CONTENT CONTENT
CONTENT
- CONTENT CONTENT CONTENT CONTENT CONTENT
CONTENT CONTENT CONTENT
- CONTENT CONTENT CONTENT
CONTENT CONTENT CONTENT CONTENT CONTENT
- CONTENT
CONTENT CONTENT CONTENT CONTENT CONTENT CONTENT
CONTENT
- CONTENT CONTENT CONTENT CONTENT CONTENT
-
-
-
-
-
diff --git a/client/src/components/dash-today-reminders.vue b/client/src/components/dash-today-reminders.vue
deleted file mode 100644
index 4536a2c..0000000
--- a/client/src/components/dash-today-reminders.vue
+++ /dev/null
@@ -1,164 +0,0 @@
-
-
-
-
-
-
-
-
-
- $sockiLock
-
-
-
-
-
-
-
-
diff --git a/client/src/components/dash-today-reviews.vue b/client/src/components/dash-today-reviews.vue
deleted file mode 100644
index be456f1..0000000
--- a/client/src/components/dash-today-reviews.vue
+++ /dev/null
@@ -1,154 +0,0 @@
-
-
-
-
-
-
-
-
-
- $sockiLock
-
-
-
-
-
-
-
-
diff --git a/client/src/components/dash-today-scheduled-wo.vue b/client/src/components/dash-today-scheduled-wo.vue
deleted file mode 100644
index c735132..0000000
--- a/client/src/components/dash-today-scheduled-wo.vue
+++ /dev/null
@@ -1,153 +0,0 @@
-
-
-
-
-
-
-
-
-
- $sockiLock
-
-
-
-
-
-
-
-
diff --git a/client/src/components/data-table-filter-control.vue b/client/src/components/data-table-filter-control.vue
deleted file mode 100644
index e5baa7f..0000000
--- a/client/src/components/data-table-filter-control.vue
+++ /dev/null
@@ -1,1076 +0,0 @@
-
-
-
- {{ tableColumnData.text }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- $sockiPlus
-
-
-
-
-
-
-
- $sockiPlus
-
-
-
-
-
-
-
-
-
- $sockiPlus
-
-
-
-
-
-
- $sockiPlus
-
-
-
-
-
- $sockiPlus
-
-
-
-
-
-
-
- $sockiPlus
-
-
-
-
-
-
- $sockiPlus
-
-
-
-
-
-
-
- $sockiPlus
-
-
-
-
-
-
-
- $sockiPlus
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- $sockiTrashAlt
-
-
-
-
-
-
-
-
-
- {{
- $sock.t("Cancel")
- }}
-
- {{ $sock.t("Delete") }}
-
- {{ $sock.t("Save") }}
-
-
-
-
-
diff --git a/client/src/components/data-table-filter-manager-control.vue b/client/src/components/data-table-filter-manager-control.vue
deleted file mode 100644
index 20cb8df..0000000
--- a/client/src/components/data-table-filter-manager-control.vue
+++ /dev/null
@@ -1,212 +0,0 @@
-
-
-
- {{ $sock.t("Filter") }}
- {{ activeFilterNameAtOpen }} {{ activeFilterCreator }}
-
-
-
-
-
- {{
- $sock.t("Cancel")
- }}
-
-
- {{
- $sock.t("Delete")
- }}
-
-
-
- {{
- $sock.t("SaveACopy")
- }}
-
-
-
- {{
- $sock.t("Save")
- }}
-
-
-
-
-
-
diff --git a/client/src/components/data-table-mobile-filter-column-selector-control.vue b/client/src/components/data-table-mobile-filter-column-selector-control.vue
deleted file mode 100644
index 829f6d5..0000000
--- a/client/src/components/data-table-mobile-filter-column-selector-control.vue
+++ /dev/null
@@ -1,52 +0,0 @@
-
-
-
- {{ $sock.t("Filter") }}
-
-
-
-
- $sockiFilter
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/components/data-table.vue b/client/src/components/data-table.vue
deleted file mode 100644
index a982751..0000000
--- a/client/src/components/data-table.vue
+++ /dev/null
@@ -1,1399 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ preFilterMode.icon }}
-
-
- {{ preFilterMode.viz }}
-
- $clear
-
-
-
-
-
-
-
-
-
-
-
-
- $sockiSync
-
-
-
- $sockiFilter
-
-
- $sockiColumns
-
-
-
-
- {{ $sock.t("NoData") }}
-
-
-
-
-
-
-
-
- $sockiFilter
- {{ h.text }}
-
-
-
-
-
-
-
- |
-
- |
-
-
-
-
-
-
-
-
- {{ c.v }}
-
-
-
-
-
-
-
-
- {{ c.v }}
-
-
-
-
-
-
-
-
- {{ c.v }}
-
-
-
-
-
-
-
-
- {{ c.v }}
-
-
-
-
-
-
-
-
- {{ c.v }}
-
-
-
-
-
- $sockiSquare
- $sockiCheckSquare
- $sockiMinus-square
-
-
-
-
-
-
-
- {{ c.v }}
-
-
-
-
- {{ c.v }}
-
-
-
- {{ c.v }}
-
-
-
-
-
-
-
- {{ c.v }}
-
-
-
-
- {{ c.v }}
-
-
-
- {{
- c.v
- }}
-
-
-
- {{ c.v }}
-
-
-
- {{ c.v }}
-
-
-
- {{ c.v }}
-
-
-
- {{ c.v }}
-
- |
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ getHeaderText(c.key) }}
-
-
-
-
-
-
-
- {{ c.v }}
-
-
-
-
-
-
-
-
- {{ c.v }}
-
-
-
-
-
-
-
-
- {{ c.v }}
-
-
-
-
-
-
-
-
- {{ c.v }}
-
-
-
-
-
-
-
-
- {{ c.v }}
-
-
-
-
-
- $sockiSquare
- $sockiCheckSquare
- $sockiMinus-square
-
-
-
-
-
-
-
-
- {{ c.v }}
-
-
-
-
- {{ c.v }}
-
-
-
- {{ c.v }}
-
-
-
-
-
-
-
- {{ c.v }}
-
-
-
-
- {{ c.v }}
-
-
-
- {{
- c.v
- }}
-
-
-
- {{ c.v }}
-
-
-
- {{ c.v }}
-
-
-
- {{ c.v }}
-
-
-
- {{ c.v }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/components/date-control.vue b/client/src/components/date-control.vue
deleted file mode 100644
index e6982e5..0000000
--- a/client/src/components/date-control.vue
+++ /dev/null
@@ -1,170 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- {{
- $sock.t("Delete")
- }}
-
-
- {{
- $sock.t("DateRangeToday")
- }}
-
- {{
- $sock.t("OK")
- }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/components/date-time-control.vue b/client/src/components/date-time-control.vue
deleted file mode 100644
index fde1081..0000000
--- a/client/src/components/date-time-control.vue
+++ /dev/null
@@ -1,249 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- {{
- $sock.t("Delete")
- }}
-
- {{
- $sock.t("DateRangeToday")
- }}
-
- {{
- $sock.t("OK")
- }}
-
-
-
-
-
-
-
-
-
- {{
- $sock.t("Delete")
- }}
-
- {{
- $sock.t("Now")
- }}
-
- {{
- $sock.t("OK")
- }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/components/days-of-week-control.vue b/client/src/components/days-of-week-control.vue
deleted file mode 100644
index 06528d5..0000000
--- a/client/src/components/days-of-week-control.vue
+++ /dev/null
@@ -1,71 +0,0 @@
-
-
-
-
diff --git a/client/src/components/decimal-control.vue b/client/src/components/decimal-control.vue
deleted file mode 100644
index 555839b..0000000
--- a/client/src/components/decimal-control.vue
+++ /dev/null
@@ -1,64 +0,0 @@
-
-
-
-
-
-
diff --git a/client/src/components/duration-control.vue b/client/src/components/duration-control.vue
deleted file mode 100644
index ea3d4c8..0000000
--- a/client/src/components/duration-control.vue
+++ /dev/null
@@ -1,162 +0,0 @@
-
-
-
-
-
- {{ label }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/components/email-control.vue b/client/src/components/email-control.vue
deleted file mode 100644
index 1a98012..0000000
--- a/client/src/components/email-control.vue
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
diff --git a/client/src/components/error-control.vue b/client/src/components/error-control.vue
deleted file mode 100644
index 432f438..0000000
--- a/client/src/components/error-control.vue
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
- {{ errorBoxMessage }}
-
-
-
diff --git a/client/src/components/extension-delete-control.vue b/client/src/components/extension-delete-control.vue
deleted file mode 100644
index 64f6df0..0000000
--- a/client/src/components/extension-delete-control.vue
+++ /dev/null
@@ -1,148 +0,0 @@
-
-
- {{ $sock.t("Delete") }}
-
-
-
- $sockiSkullCrossbones
-
-
-
- $sockiQuestionCircle
- {{ $sock.t("StartJob") }}
-
-
- {{ $sock.t("Cancel") }}{{ progress }}
-
-
-
-
diff --git a/client/src/components/extension-export-control.vue b/client/src/components/extension-export-control.vue
deleted file mode 100644
index f6b5658..0000000
--- a/client/src/components/extension-export-control.vue
+++ /dev/null
@@ -1,63 +0,0 @@
-
-
- {{ $sock.t("Export") }}
-
- $sockiQuestionCircle
- {{
- $sock.t("Export")
- }}
-
-
-
-
diff --git a/client/src/components/extension-tags-control.vue b/client/src/components/extension-tags-control.vue
deleted file mode 100644
index d46baae..0000000
--- a/client/src/components/extension-tags-control.vue
+++ /dev/null
@@ -1,186 +0,0 @@
-
-
- {{
- $sock.t("Tags")
- }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- $sockiQuestionCircle
- {{ $sock.t("StartJob") }}
-
-
- {{ $sock.t("Cancel") }}{{ progress }}
-
-
-
-
diff --git a/client/src/components/extensions-control.vue b/client/src/components/extensions-control.vue
deleted file mode 100644
index 015b87e..0000000
--- a/client/src/components/extensions-control.vue
+++ /dev/null
@@ -1,158 +0,0 @@
-
-
-
- {{ $sock.t("Extensions") }}
- {{ titleText() }}
-
-
-
- $sockiExclamationTriangle
-
-
-
-
-
-
-
-
-
-
-
- {{
- $sock.t("Close")
- }}
-
-
-
-
-
diff --git a/client/src/components/gzconfirm.vue b/client/src/components/gzconfirm.vue
deleted file mode 100644
index 601aa52..0000000
--- a/client/src/components/gzconfirm.vue
+++ /dev/null
@@ -1,135 +0,0 @@
-
-
-
-
-
-
- $sockiCheckCircle
-
-
- $sockiInfoCircle
-
-
- $sockiQuestionCircle
-
-
- $sockiExclamationCircle
-
-
- $sockiExclamationTriangle
-
-
- $sockiSkullCrossbones
-
- {{ options.title }}
-
-
-
-
-
-
-
-
- {{ this.$root.$gz.translation.get("More") }}
-
- {{ options.noButtonText }}
-
-
- $sockiSkullCrossbones{{ options.yesButtonText }}
- $sockiSkullCrossbones
-
- {{ options.yesButtonText }}
-
-
-
-
-
-
diff --git a/client/src/components/gznotify.vue b/client/src/components/gznotify.vue
deleted file mode 100644
index 07eb27e..0000000
--- a/client/src/components/gznotify.vue
+++ /dev/null
@@ -1,79 +0,0 @@
-
-
-
- {{ currentNotification.message }}
-
-
-
- {{ this.$root.$gz.translation.get("More") }}
-
-
-
-
diff --git a/client/src/components/percent-control.vue b/client/src/components/percent-control.vue
deleted file mode 100644
index 785a41b..0000000
--- a/client/src/components/percent-control.vue
+++ /dev/null
@@ -1,62 +0,0 @@
-
-
-
-
diff --git a/client/src/components/phone-control.vue b/client/src/components/phone-control.vue
deleted file mode 100644
index cc0a87c..0000000
--- a/client/src/components/phone-control.vue
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
diff --git a/client/src/components/pick-list.vue b/client/src/components/pick-list.vue
deleted file mode 100644
index 2f86e51..0000000
--- a/client/src/components/pick-list.vue
+++ /dev/null
@@ -1,411 +0,0 @@
-
-
-
-
-
- {{ entryError }}
-
-
-
-
- {{ editIcon() }}
-
-
-
-
-
diff --git a/client/src/components/report-control.vue b/client/src/components/report-control.vue
deleted file mode 100644
index 4c207b9..0000000
--- a/client/src/components/report-control.vue
+++ /dev/null
@@ -1,299 +0,0 @@
-
-
-
-
-
-
- {{ $sock.t("Report") }}
-
-
-
-
- {{ item.name }}
-
-
- $sockiEdit
-
-
-
-
-
-
-
- {{ $sock.t("New") }}
-
- {{ $sock.t("Cancel") }}
-
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("RenderingReport") }}
-
-
-
-
-
-
- {{
- $sock.t("Cancel")
- }}
-
-
-
-
-
-
-
-
diff --git a/client/src/components/role-control.vue b/client/src/components/role-control.vue
deleted file mode 100644
index e54a22b..0000000
--- a/client/src/components/role-control.vue
+++ /dev/null
@@ -1,84 +0,0 @@
-
-
-
-
diff --git a/client/src/components/tag-picker.vue b/client/src/components/tag-picker.vue
deleted file mode 100644
index b3499aa..0000000
--- a/client/src/components/tag-picker.vue
+++ /dev/null
@@ -1,154 +0,0 @@
-
-
-
-
- {{ normalizeTag(tagSearchEntry) }}
-
- $sockiPlusCircle
-
-
-
-
-
diff --git a/client/src/components/time-control.vue b/client/src/components/time-control.vue
deleted file mode 100644
index a1d09fb..0000000
--- a/client/src/components/time-control.vue
+++ /dev/null
@@ -1,173 +0,0 @@
-
-
-
-
-
-
-
-
-
-
- {{
- $sock.t("Delete")
- }}
-
- {{
- $sock.t("Now")
- }}
-
- {{
- $sock.t("OK")
- }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/components/url-control.vue b/client/src/components/url-control.vue
deleted file mode 100644
index 906333e..0000000
--- a/client/src/components/url-control.vue
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
diff --git a/client/src/components/wiki-control.vue b/client/src/components/wiki-control.vue
deleted file mode 100644
index 0cd2801..0000000
--- a/client/src/components/wiki-control.vue
+++ /dev/null
@@ -1,1000 +0,0 @@
-
-
-
-
- Wiki
-
-
-
-
-
- $sockiEye
-
-
- $sockiEdit
-
-
- $sockiColumns
-
-
-
-
-
-
-
-
-
- $sockiBold
-
- $sockiItalic
-
- $sockiStrikethrough
-
-
-
-
-
- $sockiHeading
-
-
-
-
- {{ $sock.t("Heading") }} 1
-
-
- {{ $sock.t("Heading") }} 2
-
-
- {{ $sock.t("Heading") }} 3
-
-
- {{ $sock.t("Heading") }} 4
-
-
- {{ $sock.t("Heading") }} 5
-
-
- {{ $sock.t("Heading") }} 6
-
-
-
-
-
-
-
- $sockiMinus
-
- $sockiQuoteLeft
-
- $sockiListUl
-
- $sockiListOl
-
- $sockiCheckSquare
-
-
-
-
-
- $sockiTable
-
-
-
- {{ $sock.t("Table") }}
-
-
-
-
-
-
-
-
-
-
- {{
- $sock.t("Cancel")
- }}
- {{
- $sock.t("OK")
- }}
-
-
-
-
-
-
-
- $sockiLink
-
-
-
- {{ $sock.t("InsertLink") }}
-
-
-
-
-
-
-
-
-
- {{
- $sock.t("Cancel")
- }}
- {{
- $sock.t("OK")
- }}
-
-
-
-
-
-
-
-
- $sockiImage
-
-
-
- {{ $sock.t("InsertImage") }}
-
-
- URL
- {{ $sock.t("Attachments") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{
- $sock.t("Cancel")
- }}
- {{ $sock.t("OK") }}
-
-
-
-
-
-
-
-
- $sockiCode
-
- $sockiSquareFull
-
-
-
- $sockiQuestionCircle
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Wiki
-
-
-
-
-
diff --git a/client/src/main.js b/client/src/main.js
deleted file mode 100644
index c24f83f..0000000
--- a/client/src/main.js
+++ /dev/null
@@ -1,233 +0,0 @@
-import "fontsource-roboto/latin.css";
-import "github-markdown-css";
-import Vue from "vue";
-import Vuetify from "./plugins/vuetify";
-import App from "./App.vue";
-import router from "./router";
-import store from "./store";
-import "./registerServiceWorker";
-import errorHandler from "./api/errorhandler";
-import NProgress from "nprogress";
-import "nprogress/nprogress.css";
-import { DateTime } from "luxon";
-import VueCurrencyInput from "vue-currency-input";
-//import Pappa from "papaparse";
-
-//my libs
-import errorhandler from "./api/errorhandler";
-import sockeyeVersion from "./api/sockeye-version";
-import gzeventbus from "./api/eventbus";
-import gzmenu from "./api/gzmenu";
-import gzdialog from "./api/gzdialog";
-import gzutil from "./api/gzutil";
-import translation from "./api/translation";
-import locale from "./api/locale";
-import gzapi from "./api/gzapi";
-
-import gzform from "./api/gzform";
-import gzformcustomtemplate from "./api/form-custom-template";
-import authorizationroles from "./api/authorizationroles";
-import socktype from "./api/socktype";
-import gzenums from "./api/enums";
-import "@/assets/css/main.css";
-
-//controls
-import dateTimeControl from "./components/date-time-control.vue";
-import dateControl from "./components/date-control.vue";
-import timeControl from "./components/time-control.vue";
-import tagPicker from "./components/tag-picker.vue";
-import pickList from "./components/pick-list.vue";
-import dataTable from "./components/data-table.vue";
-import dataTableFilterControl from "./components/data-table-filter-control.vue";
-import dataTableFilterManagerControl from "./components/data-table-filter-manager-control.vue";
-import dataTableMobileFilterColumnSelectorControl from "./components/data-table-mobile-filter-column-selector-control.vue";
-import customFieldsControl from "./components/custom-fields-control.vue";
-import currencyControl from "./components/currency-control.vue";
-import decimalControl from "./components/decimal-control.vue";
-import percentControl from "./components/percent-control.vue";
-import phoneControl from "./components/phone-control.vue";
-import emailControl from "./components/email-control.vue";
-import urlControl from "./components/url-control.vue";
-import roleControl from "./components/role-control.vue";
-import durationControl from "./components/duration-control.vue";
-import errorControl from "./components/error-control.vue";
-import alertControl from "./components/alert-control.vue";
-import extensionsControl from "./components/extensions-control.vue";
-import reportSelectorControl from "./components/report-control.vue";
-import wikiControl from "./components/wiki-control.vue";
-import attachmentControl from "./components/attachment-control.vue";
-import chartLineControl from "./components/chart-line-control.vue";
-import chartBarControl from "./components/chart-bar-control.vue";
-import chartBarHorizontalControl from "./components/chart-bar-horizontal-control.vue";
-
-/////////////////////////////////////////////////////////////////
-// LIBS AND GLOBAL ITEMS
-//
-//
-
-window.$gz = {
- translation: translation,
- locale: locale,
- formCustomTemplate: gzformcustomtemplate,
- type: socktype,
- role: authorizationroles,
- enums: gzenums,
- eventBus: gzeventbus,
- menu: gzmenu,
- dialog: gzdialog,
- util: gzutil,
- DateTime: DateTime,
- api: gzapi,
- form: gzform,
- errorHandler: errorhandler,
- store: store,
- clientInfo: sockeyeVersion,
- dev: process.env.NODE_ENV === "development",
- erasingDatabase: false
-};
-
-/////////////////////////////////////////////////////////////////
-// ERROR HANDLING
-//
-
-Vue.config.errorHandler = errorHandler.handleVueError;
-window.onerror = errorHandler.handleGeneralError;
-
-//warnings, only occur by default in debug mode not production
-Vue.config.warnHandler = errorHandler.handleVueWarning;
-
-Vue.config.productionTip = false;
-
-/////////////////////////////////////////////////////////////////
-// AJAX LOADER INDICATOR
-//
-//
-
-// Store a copy of the fetch function
-const _oldFetch = fetch;
-
-// Create our new version of the fetch function
-window.fetch = function() {
- // Create hooks
- const fetchStart = new Event("fetchStart", {
- view: document,
- bubbles: true,
- cancelable: false
- });
- const fetchEnd = new Event("fetchEnd", {
- view: document,
- bubbles: true,
- cancelable: false
- });
-
- // Pass the supplied arguments to the real fetch function
- const fetchCall = _oldFetch.apply(this, arguments);
-
- // Trigger the fetchStart event
- document.dispatchEvent(fetchStart);
-
- fetchCall
- .then(function() {
- // Trigger the fetchEnd event
- document.dispatchEvent(fetchEnd);
- })
- .catch(function() {
- // Trigger the fetchEnd event
- document.dispatchEvent(fetchEnd);
- });
-
- return fetchCall;
-};
-
-document.addEventListener("fetchStart", function() {
- NProgress.start();
-});
-
-document.addEventListener("fetchEnd", function() {
- NProgress.done();
-});
-
-/////////////////////////////////////////////////////////////
-//GZ COMPONENTS
-//
-Vue.component("gz-date-time-picker", dateTimeControl);
-Vue.component("gz-date-picker", dateControl);
-Vue.component("gz-time-picker", timeControl);
-Vue.component("gz-tag-picker", tagPicker);
-Vue.component("gz-pick-list", pickList);
-Vue.component("gz-data-table", dataTable);
-Vue.component("gz-data-table-filter", dataTableFilterControl);
-Vue.component("gz-data-table-filter-manager", dataTableFilterManagerControl);
-Vue.component(
- "gz-data-table-mobile-filter-column-selector",
- dataTableMobileFilterColumnSelectorControl
-);
-Vue.component("gz-custom-fields", customFieldsControl);
-Vue.component("gz-currency", currencyControl);
-Vue.component("gz-percent", percentControl);
-Vue.component("gz-decimal", decimalControl);
-Vue.component("gz-phone", phoneControl);
-Vue.component("gz-email", emailControl);
-Vue.component("gz-url", urlControl);
-Vue.component("gz-role-picker", roleControl);
-Vue.component("gz-duration-picker", durationControl);
-Vue.component("gz-error", errorControl);
-Vue.component("gz-alert", alertControl);
-Vue.component("gz-report-selector", reportSelectorControl);
-Vue.component("gz-extensions", extensionsControl);
-Vue.component("gz-wiki", wikiControl);
-Vue.component("gz-attachments", attachmentControl);
-Vue.component("gz-chart-line", chartLineControl);
-Vue.component("gz-chart-bar", chartBarControl);
-Vue.component("gz-chart-bar-horizontal", chartBarHorizontalControl);
-//3rd party components
-Vue.use(VueCurrencyInput);
-/////////////////////////////////////////////////////////////
-//DIRECTIVES
-//
-//Auto focus on forms
-Vue.directive("focus", {
- // When the bound element is inserted into the DOM...
- inserted: function(el) {
- // Focus the element
- el.focus();
- }
-});
-
-/////////////////////////////////////////////////////////////////
-// INSTANTIATE
-//
-Vue.prototype.$sock = {
- //development mode, development level error messages etc
- dev: process.env.NODE_ENV === "development",
- t: function(tKey) {
- return translation.get(tKey);
- },
- dt: function(timestamp) {
- return locale.utcDateToShortDateAndTimeLocalized(timestamp);
- },
- sd: function(timestamp) {
- return locale.utcDateToShortDateLocalized(timestamp);
- },
- cur: function(value) {
- return locale.currencyLocalized(value);
- },
- dec: function(value) {
- return locale.decimalLocalized(value);
- },
- util: function() {
- return gzutil;
- },
- ayt: function() {
- return socktype;
- }
-};
-//disable the devtools nag
-Vue.config.devtools = false;
-new Vue({
- vuetify: Vuetify,
- router,
- store,
- // eslint-disable-next-line
- render: (h) => h(App)
-}).$mount("#app");
diff --git a/client/src/plugins/vuetify.js b/client/src/plugins/vuetify.js
deleted file mode 100644
index e4c7f2c..0000000
--- a/client/src/plugins/vuetify.js
+++ /dev/null
@@ -1,1624 +0,0 @@
-import Vue from "vue";
-import Vuetify from "vuetify/lib";
-
-//---------------------------
-//ICONS
-//tree shaking compatible icon method
-//https://stackoverflow.com/a/58261449/8939
-import { library } from "@fortawesome/fontawesome-svg-core";
-import { FontAwesomeIcon } from "@fortawesome/vue-fontawesome"; //https://github.com/FortAwesome/vue-fontawesome
-
-/*
-NOTES: in case need to get fancy
-https://github.com/FortAwesome/vue-fontawesome#advanced
-import {
- FontAwesomeIcon,
- FontAwesomeLayers,
- FontAwesomeLayersText
-} from "@fortawesome/vue-fontawesome"; //https://github.com/FortAwesome/vue-fontawesome
-Vue.component("font-awesome-layers", FontAwesomeLayers);
-Vue.component("font-awesome-layers-text", FontAwesomeLayersText);
-
-
-classes seem to work when props don't for
- let classes = {
- 'fa-spin': props.spin,
- 'fa-pulse': props.pulse,
- 'fa-fw': props.fixedWidth,
- 'fa-border': props.border,
- 'fa-li': props.listItem,
- 'fa-inverse': props.inverse,
- 'fa-flip-horizontal': props.flip === 'horizontal' || props.flip === 'both',
- 'fa-flip-vertical': props.flip === 'vertical' || props.flip === 'both',
- [`fa-${props.size}`]: props.size !== null,
- [`fa-rotate-${props.rotation}`]: props.rotation !== null,
- [`fa-pull-${props.pull}`]: props.pull !== null,
- 'fa-swap-opacity': props.swapOpacity
- }
-*/
-
-Vue.component("font-awesome-icon", FontAwesomeIcon); // Register component globally
-
-//REGULAR
-import {
- faSquare as farSquare,
- faCircle as farCircle,
- faDotCircle as farDotCircle
-} from "@fortawesome/free-regular-svg-icons";
-
-//SOLID
-import {
- faAddressBook,
- faAddressCard,
- faArrowsAltH,
- faArrowsAltV,
- faAt,
- faBackward,
- faBarcode,
- faBars,
- faBell,
- faBinoculars,
- faBold,
- faBox,
- faBoxes,
- faBoxOpen,
- faBriefcase,
- faCampground,
- faBullhorn,
- faBusinessTime,
- faCalculator,
- faCalendarAlt,
- faCalendarCheck,
- faCalendarDay,
- faCarBattery,
- faCaretDown,
- faChartBar,
- faChartLine,
- faCheckCircle,
- faCheckSquare,
- faChevronDown,
- faChevronLeft,
- faChevronRight,
- faCircle,
- faClipboard,
- faClipboardList,
- faClock,
- faClone,
- faCloud,
- faCode,
- faCoffee,
- faCog,
- faCogs,
- faCoins,
- faColumns,
- faCommentAlt,
- faConciergeBell,
- faCopy,
- faDiceD20,
- faDolly,
- //faDollyFlatbed,
- faDoorOpen,
- faDraftingCompass,
- faDragon,
- faDumpster,
- faEdit,
- faEgg,
- faEllipsisV,
- faEnvelopeOpenText,
- faExchangeAlt,
- faExclamation,
- faExclamationCircle,
- faExclamationTriangle,
- faExternalLinkAlt,
- faEye,
- faEyeSlash,
- faFan,
- faFeather,
- faFile,
- faFileAlt,
- faFileArchive,
- faFileAudio,
- faFileCode,
- faFileContract,
- faFileCsv,
- faFileDownload,
- faFileExcel,
- faFileImage,
- faFileImport,
- faFileMedicalAlt,
- faFilePdf,
- faFilePowerpoint,
- faFileUpload,
- faFileVideo,
- faFileWord,
- faFilter,
- faFireAlt,
- faFlag,
- faFolder,
- faForward,
- faGem,
- faGenderless,
- faGlasses,
- faGlobe,
- faHammer,
- faHandHoldingWater,
- faHeading,
- faHistory,
- faHome,
- faImage,
- faInbox,
- faInfoCircle,
- faItalic,
- faKey,
- faLanguage,
- faLayerGroup,
- faLifeRing,
- faLink,
- faListAlt,
- faListOl,
- faListUl,
- faLock,
- faLuggageCart,
- faMagic,
- faMapMarkerAlt,
- faMapMarkedAlt,
- faMinus,
- faMinusSquare,
- faMoneyBillWave,
- faMoon,
- faObjectGroup,
- faPallet,
- faPaperclip,
- //faPaperPlane,
- faParachuteBox,
- faPencilAlt,
- faPencilRuler,
- faPeopleCarry,
- faPercent,
- faPhoneAlt,
- faPlug,
- faPlus,
- faPlusCircle,
- faPrint,
- faProjectDiagram,
- faPuzzlePiece,
- faQuestionCircle,
- faQuoteLeft,
- faReply,
- faRobot,
- faRocket,
- faSave,
- faSearch,
- faSeedling,
- faServer,
- faShare,
- faShippingFast,
- faShoppingCart,
- faSignInAlt,
- faSignOutAlt,
- faSitemap,
- faSkullCrossbones,
- faSlidersH,
- faSort,
- faSortAmountDown,
- faSortAmountUp,
- faSplotch,
- faSquareFull,
- faStamp,
- faStepBackward,
- faStepForward,
- faStickyNote,
- faStore,
- faStopCircle,
- faStrikethrough,
- faSun,
- faSync,
- faTable,
- faTachometerAlt,
- faTags,
- faTasks,
- faThList,
- faTicketAlt,
- faTimesCircle,
- faToolbox,
- faTools,
- faTrashAlt,
- faTrashRestoreAlt,
- faTruckLoading,
- faTruckMonster,
- faUndo,
- faUser,
- faUserClock,
- faUserCog,
- faUsers,
- faUserTie,
- faVial,
- faWarehouse,
- faWeight,
- faWrench
-} from "@fortawesome/free-solid-svg-icons";
-
-Vue.component("font-awesome-icon", FontAwesomeIcon);
-
-library.add(
- faAddressBook,
- faAddressCard,
- faArrowsAltH,
- faArrowsAltV,
- faAt,
- faBackward,
- faBarcode,
- faBars,
- faBell,
- faBinoculars,
- faBold,
- faBox,
- faBoxes,
- faBoxOpen,
- faBriefcase,
- faCampground,
- faBullhorn,
- faBusinessTime,
- faCalculator,
- faCalendarAlt,
- faCalendarCheck,
- faCalendarDay,
- faCarBattery,
- faCaretDown,
- faChartBar,
- faChartLine,
- faCheckCircle,
- faCheckSquare,
- faChevronDown,
- faChevronLeft,
- faChevronRight,
- faClipboard,
- faClipboardList,
- faCircle,
- farCircle,
- faClock,
- faClone,
- faCloud,
- faCode,
- faCoffee,
- faCog,
- faCogs,
- faCoins,
- faColumns,
- faCommentAlt,
- faConciergeBell,
- faCopy,
- faDiceD20,
- faDolly,
- //faDollyFlatbed,
- faDoorOpen,
- farDotCircle,
- faDraftingCompass,
- faDragon,
- faDumpster,
- faEdit,
- faEgg,
- faEllipsisV,
- faEnvelopeOpenText,
- faExchangeAlt,
- faExclamation,
- faExclamationCircle,
- faExclamationTriangle,
- faExternalLinkAlt,
- faEye,
- faEyeSlash,
- faFan,
- faFeather,
- faFile,
- faFileAlt,
- faFileArchive,
- faFileAudio,
- faFileCode,
- faFileContract,
- faFileCsv,
- faFileDownload,
- faFileExcel,
- faFileImage,
- faFileImport,
- faFileMedicalAlt,
- faFilePdf,
- faFilePowerpoint,
- faFileUpload,
- faFileVideo,
- faFileWord,
- faFilter,
- faFireAlt,
- faFlag,
- faFolder,
- faForward,
- faGem,
- faGenderless,
- faGlasses,
- faGlobe,
- faHammer,
- faHandHoldingWater,
- faHeading,
- faHistory,
- faHome,
- faImage,
- faInbox,
- faInfoCircle,
- faItalic,
- faKey,
- faLanguage,
- faLayerGroup,
- faLifeRing,
- faLink,
- faListAlt,
- faListOl,
- faListUl,
- faLock,
- faLuggageCart,
- faMagic,
- faMapMarkerAlt,
- faMapMarkedAlt,
- faMinus,
- faMinusSquare,
- faMoneyBillWave,
- faMoon,
- faObjectGroup,
- faPallet,
- faPaperclip,
- //faPaperPlane,
- faParachuteBox,
- faPencilAlt,
- faPencilRuler,
- faPeopleCarry,
- faPercent,
- faPhoneAlt,
- faPlug,
- faPlus,
- faPlusCircle,
- faPrint,
- faProjectDiagram,
- faPuzzlePiece,
- faQuestionCircle,
- faQuoteLeft,
- faReply,
- faRobot,
- faRocket,
- faSave,
- faSearch,
- faSeedling,
- faServer,
- faShare,
- faShippingFast,
- faShoppingCart,
- faSignInAlt,
- faSignOutAlt,
- faSitemap,
- faSkullCrossbones,
- faSlidersH,
- faSort,
- faSortAmountDown,
- faSortAmountUp,
- faSplotch,
- farSquare,
- faSquareFull,
- faStamp,
- faStepBackward,
- faStepForward,
- faStickyNote,
- faStore,
- faStopCircle,
- faStrikethrough,
- faSun,
- faSync,
- faTable,
- faTachometerAlt,
- faTags,
- faTasks,
- faThList,
- faTicketAlt,
- faTimesCircle,
- faToolbox,
- faTools,
- faTrashAlt,
- faTrashRestoreAlt,
- faTruckLoading,
- faTruckMonster,
- faUndo,
- faUser,
- faUserClock,
- faUserCog,
- faUsers,
- faUserTie,
- faVial,
- faWarehouse,
- faWeight,
- faWrench
-);
-
-const CUSTOM_ICONS = {
- sockiAddressBook: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "address-book"]
- }
- },
- sockiAddressCard: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "address-card"]
- }
- },
- sockiArrowsAltH: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "arrows-alt-h"]
- }
- },
- sockiArrowsAltV: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "arrows-alt-v"]
- }
- },
- sockiAt: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "at"]
- }
- },
- sockiBackward: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "backward"]
- }
- },
- sockiBarCode: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "barcode"]
- }
- },
- sockiBell: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "bell"]
- }
- },
- sockiBinoculars: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "binoculars"]
- }
- },
- sockiBold: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "bold"]
- }
- },
- sockiBox: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "box"]
- }
- },
- sockiBoxes: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "boxes"]
- }
- },
- sockiBoxOpen: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "box-open"]
- }
- },
- sockiBriefcase: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "briefcase"]
- }
- },
- sockiCampground: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "campground"]
- }
- },
- sockiBullhorn: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "bullhorn"]
- }
- },
- sockiBusinessTime: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "business-time"]
- }
- },
- sockiCalculator: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "calculator"]
- }
- },
- sockiCalendarAlt: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "calendar-alt"]
- }
- },
- sockiCalendarCheck: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "calendar-check"]
- }
- },
- sockiCalendarDay: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "calendar-day"]
- }
- },
- sockiCarBattery: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "car-battery"]
- }
- },
- sockiChartBar: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "chart-bar"]
- }
- },
- sockiChartLine: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "chart-line"]
- }
- },
- sockiCheckCircle: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "check-circle"]
- }
- },
- sockiCheckSquare: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "check-square"]
- }
- },
- sockiCircle: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "circle"]
- }
- },
- sockiClipboard: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "clipboard"]
- }
- },
- sockiClipboardList: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "clipboard-list"]
- }
- },
- sockiClock: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "clock"]
- }
- },
- sockiClone: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "clone"]
- }
- },
- sockiCloud: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "cloud"]
- }
- },
- sockiCode: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "code"]
- }
- },
- sockiCoffee: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "coffee"]
- }
- },
- sockiCog: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "cog"]
- }
- },
- sockiCogs: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "cogs"]
- }
- },
- sockiCoins: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "coins"]
- }
- },
- sockiColumns: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "columns"]
- }
- },
- sockiCommentAlt: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "comment-alt"]
- }
- },
- sockiConciergeBell: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "concierge-bell"]
- }
- },
- sockiCopy: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "copy"]
- }
- },
- sockiCustomize: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "sliders-h"]
- }
- },
- sockiDiceD20: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "dice-d20"]
- }
- },
- sockiDolly: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "dolly"]
- }
- },
- // sockiDollyFlatbed: {
- // component: FontAwesomeIcon,
- // props: {
- // icon: ["fas", "dolly-flatbed"]
- // }
- // },
- sockiDoorOpen: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "door-open"]
- }
- },
- sockiDraftingCompass: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "drafting-compass"]
- }
- },
- sockiDragon: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "dragon"]
- }
- },
- sockiDumpster: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "dumpster"]
- }
- },
- sockiEdit: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "edit"]
- }
- },
- sockiEgg: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "egg"]
- }
- },
- sockiEnvelopeOpenText: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "envelope-open-text"]
- }
- },
- sockiExchangeAlt: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "exchange-alt"]
- }
- },
- sockiExclamationCircle: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "exclamation-circle"]
- }
- },
- sockiExclamationTriangle: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "exclamation-triangle"]
- }
- },
- sockiExternalLinkAlt: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "external-link-alt"]
- }
- },
- sockiEye: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "eye"]
- }
- },
- sockiEyeSlash: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "eye-slash"]
- }
- },
- sockiEllipsisV: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "ellipsis-v"]
- }
- },
- sockiFan: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "fan"]
- }
- },
- sockiFeather: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "feather"]
- }
- },
- sockiFile: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "file"]
- }
- },
- sockiFileArchive: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "file-archive"]
- }
- },
- sockiFileAlt: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "file-alt"]
- }
- },
- sockiFileAudio: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "file-audio"]
- }
- },
- sockiFileCode: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "file-code"]
- }
- },
- sockiFileContract: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "file-contract"]
- }
- },
- sockiFileCsv: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "file-csv"]
- }
- },
- sockiFileDownload: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "file-download"]
- }
- },
- sockiFileExcel: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "file-excel"]
- }
- },
- sockiFileImage: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "file-image"]
- }
- },
- sockiFileImport: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "file-import"]
- }
- },
- sockiFileMedicalAlt: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "file-medical-alt"]
- }
- },
- sockiFilePdf: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "file-pdf"]
- }
- },
- sockiFilePowerpoint: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "file-powerpoint"]
- }
- },
- sockiFileUpload: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "file-upload"]
- }
- },
- sockiFileVidio: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "file-vidio"]
- }
- },
- sockiFileWord: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "file-word"]
- }
- },
- sockiFilter: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "filter"]
- }
- },
- sockiFireAlt: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "fire-alt"]
- }
- },
- sockiFlag: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "flag"]
- }
- },
- sockiFolder: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "folder"]
- }
- },
- sockiForward: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "forward"]
- }
- },
- sockiGem: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "gem"]
- }
- },
- sockiGenderless: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "genderless"]
- }
- },
- sockiGlasses: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "glasses"]
- }
- },
- sockiGlobe: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "globe"]
- }
- },
- sockiHammer: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "hammer"]
- }
- },
- sockiHandHoldingWater: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "hand-holding-water"]
- }
- },
- sockiHeading: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "heading"]
- }
- },
- sockiHistory: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "history"]
- }
- },
- sockiHome: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "home"]
- }
- },
- sockiImage: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "image"]
- }
- },
- sockiInbox: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "inbox"]
- }
- },
- sockiInfoCircle: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "info-circle"]
- }
- },
- sockiItalic: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "italic"]
- }
- },
- sockiKey: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "key"]
- }
- },
- sockiLanguage: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "language"]
- }
- },
- sockiLayerGroup: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "layer-group"]
- }
- },
- sockiLifeRing: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "life-ring"]
- }
- },
- sockiLink: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "link"]
- }
- },
- sockiListAlt: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "list-alt"]
- }
- },
- sockiListOl: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "list-ol"]
- }
- },
- sockiListUl: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "list-ul"]
- }
- },
- sockiLock: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "lock"]
- }
- },
- sockiLuggageCart: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "luggage-cart"]
- }
- },
- sockiMagic: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "magic"]
- }
- },
- sockiMapMarker: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "map-marker-alt"]
- }
- },
- sockiMapMarked: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "map-marked-alt"]
- }
- },
- sockiMinus: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "minus"]
- }
- },
- sockiMoneyBillWave: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "money-bill-wave"]
- }
- },
- sockiMoon: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "moon"]
- }
- },
- sockiObjectGroup: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "object-group"]
- }
- },
- sockiPallet: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "pallet"]
- }
- },
- sockiPaperclip: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "paperclip"]
- }
- },
- // sockiPaperPlane: {
- // component: FontAwesomeIcon,
- // props: {
- // icon: ["fas", "paper-plane"]
- // }
- // },
- sockiParachuteBox: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "parachute-box"]
- }
- },
- sockiPencilAlt: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "pencil-alt"]
- }
- },
- sockiPencilRuler: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "pencil-ruler"]
- }
- },
- sockiPeopleCarry: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "people-carry"]
- }
- },
- sockiPercent: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "percent"]
- }
- },
- sockiPhoneAlt: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "phone-alt"]
- }
- },
- sockiPlug: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "plug"]
- }
- },
- sockiPlus: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "plus"]
- }
- },
- sockiPlusCircle: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "plus-circle"]
- }
- },
- sockiPrint: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "print"]
- }
- },
- sockiProjectDiagram: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "project-diagram"]
- }
- },
- sockiPuzzlePiece: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "puzzle-piece"]
- }
- },
- sockiQuestionCircle: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "question-circle"]
- }
- },
- sockiQuoteLeft: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "quote-left"]
- }
- },
- sockiReply: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "reply"]
- }
- },
- sockiRobot: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "robot"]
- }
- },
- sockiRocket: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "rocket"]
- }
- },
- sockiSave: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "save"]
- }
- },
- sockiSearch: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "search"]
- }
- },
- sockiSeedling: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "seedling"]
- }
- },
- sockiServer: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "server"]
- }
- },
- sockiShare: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "share"]
- }
- },
- sockiShippingFast: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "shipping-fast"]
- }
- },
- sockiShoppingCart: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "shopping-cart"]
- }
- },
- sockiSignIn: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "sign-in-alt"]
- }
- },
- sockiSignOut: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "sign-out-alt"]
- }
- },
- sockiSitemap: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "sitemap"]
- }
- },
- sockiSkullCrossbones: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "skull-crossbones"]
- }
- },
- sockiSort: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "sort"]
- }
- },
- sockiSortAmountDown: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "sort-amount-down"]
- }
- },
- sockiSortAmountUp: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "sort-amount-up"]
- }
- },
- sockiSplotch: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "splotch"]
- }
- },
- sockiStamp: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "stamp"]
- }
- },
- sockiSquare: {
- component: FontAwesomeIcon,
- props: {
- icon: ["far", "square"]
- }
- },
- sockiSquareFull: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "square-full"]
- }
- },
- sockiStepBackward: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "step-backward"]
- }
- },
- sockiStepForward: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "step-forward"]
- }
- },
- sockiStickyNote: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "sticky-note"]
- }
- },
- sockiStore: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "store"]
- }
- },
- sockiStopCircle: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "stop-circle"]
- }
- },
- sockiStrikethrough: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "strikethrough"]
- }
- },
- sockiSun: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "sun"]
- }
- },
- sockiSync: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "sync"]
- }
- },
- sockiTable: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "table"]
- }
- },
- sockiTachometer: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "tachometer-alt"]
- }
- },
- sockiTags: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "tags"]
- }
- },
- sockiTasks: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "tasks"]
- }
- },
- sockiThList: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "th-list"]
- }
- },
- sockiTicket: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "ticket-alt"]
- }
- },
- sockiToolbox: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "toolbox"]
- }
- },
- sockiTools: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "tools"]
- }
- },
- sockiTrashAlt: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "trash-alt"]
- }
- },
- sockiTrashRestoreAlt: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "trash-restore-alt"]
- }
- },
- sockiTruckLoading: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "truck-loading"]
- }
- },
- sockiTruckMonster: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "truck-monster"]
- }
- },
- sockiUndo: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "undo"]
- }
- },
- sockiUser: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "user"]
- }
- },
- sockiUserClock: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "user-clock"]
- }
- },
- sockiUserCog: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "user-cog"]
- }
- },
- sockiUsers: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "users"]
- }
- },
- sockiUserTie: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "user-tie"]
- }
- },
- sockiVial: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "vial"]
- }
- },
- sockiWarehouse: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "warehouse"]
- }
- },
- sockiWeight: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "weight"]
- }
- },
- sockiWrench: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "wrench"]
- }
- },
- //VUETIFY REQUIRED ONES
- //https://vuetifyjs.com/en/features/icons/#using-custom-icons
- checkboxIndeterminate: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "minus-square"]
- }
- },
- clear: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "times-circle"]
- }
- },
- dropdown: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "caret-down"]
- }
- },
- exclamation: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "exclamation"]
- }
- },
- info: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "info-circle"]
- }
- },
- menu: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "bars"]
- }
- },
- prev: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "chevron-left"]
- }
- },
- radioOn: {
- component: FontAwesomeIcon,
- props: {
- icon: ["far", "dot-circle"]
- }
- },
- radioOff: {
- component: FontAwesomeIcon,
- props: {
- icon: ["far", "circle"]
- }
- },
- next: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "chevron-right"]
- }
- },
- sort: {
- component: FontAwesomeIcon,
- props: {
- icon: ["fas", "chevron-down"]
- }
- }
-};
-//-------------
-
-Vue.use(Vuetify);
-
-export default new Vuetify({
- theme: {
- themes: {
- light: {
- primary: "#263238",
- secondary: "#37474F",
- accent: "#DB7022", //lighter orangey red, more friendly looking
- error: "#FF5252", //lighter red
- disabled: "#C7C7C7",
- readonlybanner: "#808080"
- },
- dark: {
- //color adjuster tool: https://www.hexcolortool.com/#00205c
- primary: "#7F9FDA", //dark blue LIGHTENED 50%
- secondary: "#006B24", //green DARKENED 10%
- accent: "#DB7022", //lighter orangey red, more friendly looking
- error: "#FF5252", //lighter red
- disabled: "#C7C7C7",
- readonlybanner: "#808080"
- }
- },
- options: { variations: false }
- },
- icons: {
- iconfont: "faSvg",
- values: CUSTOM_ICONS
- }
-});
diff --git a/client/src/registerServiceWorker.js b/client/src/registerServiceWorker.js
deleted file mode 100644
index c4f8ce3..0000000
--- a/client/src/registerServiceWorker.js
+++ /dev/null
@@ -1,40 +0,0 @@
-/* eslint-disable no-console */
-//INFO: https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-pwa
-import { register } from "register-service-worker";
-
-if (process.env.NODE_ENV === "production") {
- register(`${process.env.BASE_URL}service-worker.js`, {
- ready() {
- console.log("Service worker is active.");
- },
- cached() {
- console.log("Content has been cached for offline use.");
- },
- updatefound() {
- console.log("New content is downloading.");
- },
- updated(registration) {
- console.log("New content is available; please refresh.");
-
- //https://medium.com/@dougallrich/give-users-control-over-app-updates-in-vue-cli-3-pwas-20453aedc1f2
- document.dispatchEvent(
- new CustomEvent("swUpdated", { detail: registration })
- );
- },
- registered(registration) {
- //https://medium.com/@dougallrich/give-users-control-over-app-updates-in-vue-cli-3-pwas-20453aedc1f2
- console.log("Service worker has been registered.");
- setInterval(() => {
- registration.update();
- }, 1000 * 60 * 60); // e.g. hourly checks
- },
- offline() {
- console.log(
- "No internet connection found. App is running in offline mode."
- );
- },
- error(error) {
- console.error("Error during service worker registration:", error);
- }
- });
-}
diff --git a/client/src/router.js b/client/src/router.js
deleted file mode 100644
index df17d8b..0000000
--- a/client/src/router.js
+++ /dev/null
@@ -1,603 +0,0 @@
-import Vue from "vue";
-import Router from "vue-router";
-
-Vue.use(Router);
-
-// scrollBehavior:
-// - only available in html5 history mode
-// - defaults to no scroll behavior
-// - return false to prevent scroll
-const scrollBehavior = function(to, from, savedPosition) {
- if (savedPosition) {
- // savedPosition is only available for popstate navigations.
- return savedPosition;
- } else {
- const position = {};
-
- // scroll to anchor by returning the selector
- if (to.hash) {
- position.selector = to.hash;
-
- // specify offset of the element
- if (to.hash === "#anchor2") {
- position.offset = { y: 100 };
- }
-
- if (document.querySelector(to.hash)) {
- return position;
- }
-
- // if the returned position is falsy or an empty object,
- // will retain current scroll position.
-
- return false;
- }
-
- // eslint-disable-next-line
- return new Promise(resolve => {
- // check if any matched route config has meta that requires scrolling to top
- // eslint-disable-next-line
- if (to.matched.some(m => m.meta.scrollToTop)) {
- // coords will be used if no selector is provided,
- // or if the selector didn't match any element.
- position.x = 0;
- position.y = 0;
- }
-
- // wait for the out transition to complete (if necessary)
- this.app.$root.$once("triggerScroll", () => {
- // if the resolved position is falsy or an empty object,
- // will retain current scroll position.
-
- resolve(position);
- });
- });
- }
-};
-/**
- * https://router.vuejs.org/guide/advanced/lazy-loading.html#grouping-components-in-the-same-chunk
- *
- *
- */
-export default new Router({
- mode: "history",
- base: process.env.BASE_URL,
- scrollBehavior,
- routes: [
- //########################## GENERAL / COMMON GROUP ###################################
- {
- path: "/open/:socktype/:recordid",
- name: "sock-open",
- component: () =>
- import(/* webpackChunkName: "sock-common" */ "./views/sock-open.vue")
- },
- {
- path: "/viewreport/:oid/:rid",
- name: "sock-report-view",
- component: () =>
- import(
- /* webpackChunkName: "sock-common" */ "./views/sock-report-view.vue"
- )
- },
- {
- path: "/about",
- name: "sock-about",
- // route level code-splitting
- // this generates a separate chunk (about.[hash].js) for this route
- // which is lazy-loaded when the route is visited.
- component: () =>
- import(/* webpackChunkName: "sock-common" */ "./views/sock-about.vue")
- },
- {
- path: "/applog",
- name: "sock-log",
- component: () =>
- import(/* webpackChunkName: "sock-common" */ "./views/sock-log.vue")
- },
- {
- path: "/customize/:formCustomTemplateKey",
- name: "sock-customize",
- component: () =>
- import(
- /* webpackChunkName: "sock-common" */ "./views/sock-customize.vue"
- )
- },
- {
- path: "/data-list-column-view/:dataListKey",
- name: "sock-data-list-column-view",
- component: () =>
- import(
- /* webpackChunkName: "sock-common" */ "./views/sock-data-list-column-view.vue"
- )
- },
-
- {
- path: "/history/:socktype/:recordid/:userlog?",
- name: "sock-history",
- component: () =>
- import(/* webpackChunkName: "sock-common" */ "./views/sock-history.vue")
- },
- {
- path: "/login",
- name: "login",
- meta: { scrollToTop: true }, //KEEP THIS AS AN EXAMPLE OF HOW TO USE WITH CODE ABOVE
- component: () =>
- import(/* webpackChunkName: "sock-common" */ "./views/login.vue")
- },
- {
- path: "/home-dashboard",
- name: "home-dashboard",
- component: () =>
- import(
- /* webpackChunkName: "sock-common" */ "./views/home-dashboard.vue"
- )
- },
- {
- //path: "/home-search/:socktype?", this was making it sticky and couldn't change type as it was in url path
- path: "/home-search",
- name: "home-search",
- component: () =>
- import(/* webpackChunkName: "sock-common" */ "./views/home-search.vue")
- },
- { path: "/", redirect: "/login" }, //If someone goes blindly to the root of the app, then it should go to login
- {
- path: "/home-schedule",
- name: "home-schedule",
- component: () =>
- import(
- /* webpackChunkName: "sock-common" */ "./views/home-schedule.vue"
- )
- },
- {
- path: "/home-memos",
- name: "home-memos",
- component: () =>
- import(/* webpackChunkName: "sock-common" */ "./views/home-memos.vue")
- },
- {
- path: "/home-memos/:recordid",
- name: "memo-edit",
- component: () =>
- import(/* webpackChunkName: "sock-common" */ "./views/home-memo.vue")
- },
- {
- path: "/home-notifications",
- name: "home-notifications",
- component: () =>
- import(
- /* webpackChunkName: "sock-common" */ "./views/home-notifications.vue"
- )
- },
- {
- path: "/home-notify-direct",
- name: "home-notify-direct",
- component: () =>
- import(
- /* webpackChunkName: "sock-common" */ "./views/home-notify-direct.vue"
- )
- },
- {
- path: "/home-reminders",
- name: "home-reminders",
- component: () =>
- import(
- /* webpackChunkName: "sock-common" */ "./views/home-reminders.vue"
- )
- },
- {
- path: "/home-reminders/:recordid",
- name: "reminder-edit",
- component: () =>
- import(
- /* webpackChunkName: "sock-common" */ "./views/home-reminder.vue"
- )
- },
- {
- path: "/home-reviews/:aType?/:objectId?/:name?",
- name: "home-reviews",
- component: () =>
- import(/* webpackChunkName: "sock-common" */ "./views/home-reviews.vue")
- },
- {
- path: "/home-reviews/:recordid/:aType?/:objectId?/:name?",
- name: "review-edit",
- component: () =>
- import(/* webpackChunkName: "sock-common" */ "./views/home-review.vue")
- },
- {
- path: "/home-user-settings",
- name: "home-user-settings",
- component: () =>
- import(
- /* webpackChunkName: "sock-common" */ "./views/home-user-settings.vue"
- )
- },
- {
- path: "/home-reset",
- name: "home-reset",
- component: () =>
- import(/* webpackChunkName: "sock-common" */ "./views/home-reset.vue")
- },
- {
- path: "/home-password",
- name: "home-password",
- component: () =>
- import(
- /* webpackChunkName: "sock-common" */ "./views/home-password.vue"
- )
- },
- {
- path: "/home-security",
- name: "home-security",
- component: () =>
- import(
- /* webpackChunkName: "sock-common" */ "./views/home-security.vue"
- )
- },
- {
- path: "/home-notify-subscriptions",
- name: "home-notify-subscriptions",
- component: () =>
- import(
- /* webpackChunkName: "sock-common" */ "./views/home-notify-subscriptions.vue"
- )
- },
- {
- path: "/home-notify-subscriptions/:recordid",
- name: "home-notify-subscription",
- component: () =>
- import(
- /* webpackChunkName: "sock-common" */ "./views/home-notify-subscription.vue"
- )
- },
- //####################### CUSTOMERS GROUP ##############################
- {
- path: "/cust-customers",
- name: "cust-customers",
- component: () =>
- import(/* webpackChunkName: "cust" */ "./views/cust-customers.vue")
- },
- {
- path: "/cust-customers/:recordid",
- name: "customer-edit",
- component: () =>
- import(/* webpackChunkName: "cust" */ "./views/cust-customer.vue")
- },
- {
- path: "/cust-customer-notes/:customerid",
- name: "customer-notes",
- component: () =>
- import(/* webpackChunkName: "cust" */ "./views/cust-customer-notes.vue")
- },
- {
- path: "/cust-customer-note/:recordid",
- name: "customer-note-edit",
- component: () =>
- import(/* webpackChunkName: "cust" */ "./views/cust-customer-note.vue")
- },
- {
- path: "/cust-users",
- name: "cust-users",
- component: () =>
- import(/* webpackChunkName: "cust" */ "./views/cust-users.vue")
- },
- {
- path: "/cust-users/:recordid",
- name: "cust-user",
- component: () =>
- import(/* webpackChunkName: "cust" */ "./views/cust-user.vue")
- },
- {
- path: "/cust-head-offices",
- name: "cust-head-offices",
- component: () =>
- import(/* webpackChunkName: "cust" */ "./views/cust-head-offices.vue")
- },
- {
- path: "/cust-head-offices/:recordid",
- name: "head-office-edit",
- component: () =>
- import(/* webpackChunkName: "cust" */ "./views/cust-head-office.vue")
- },
- {
- path: "/cust-notify-subscriptions",
- name: "cust-notify-subscriptions",
- component: () =>
- import(
- /* webpackChunkName: "cust" */ "./views/customer-notify-subscriptions.vue"
- )
- },
- {
- path: "/cust-notify-subscriptions/:recordid",
- name: "cust-notify-subscription",
- component: () =>
- import(
- /* webpackChunkName: "cust" */ "./views/customer-notify-subscription.vue"
- )
- },
-
- //####################### BUSINESS GROUP ##############################
- {
- path: "/biz-license-list",
- name: "biz-license-list",
- component: () =>
- import(/* webpackChunkName: "biz" */ "./views/biz-license-list.vue")
- },
- {
- path: "/biz-trial-request-list",
- name: "biz-trial-request-list",
- component: () =>
- import(
- /* webpackChunkName: "biz" */ "./views/biz-trial-request-list.vue"
- )
- },
- {
- path: "/biz-subscription-server-list",
- name: "biz-subscription-server-list",
- component: () =>
- import(
- /* webpackChunkName: "biz" */ "./views/biz-subscription-server-list.vue"
- )
- },
- {
- path: "/biz-subscription-server-list/:recordid",
- name: "subscription-server-edit",
- component: () =>
- import(
- /* webpackChunkName: "biz" */ "./views/biz-subscription-server.vue"
- )
- },
- {
- path: "/biz-purchase-list",
- name: "biz-purchase-list",
- component: () =>
- import(/* webpackChunkName: "biz" */ "./views/biz-purchase-list.vue")
- },
- {
- path: "/biz-purchase-list/:recordid",
- name: "purchase-edit",
- component: () =>
- import(/* webpackChunkName: "biz" */ "./views/biz-purchase.vue")
- },
- {
- path: "/biz-product-list",
- name: "biz-product-list",
- component: () =>
- import(/* webpackChunkName: "biz" */ "./views/biz-product-list.vue")
- },
- {
- path: "/biz-product-list/:recordid",
- name: "product-edit",
- component: () =>
- import(/* webpackChunkName: "biz" */ "./views/biz-product.vue")
- },
- {
- path: "/biz-vendor-list",
- name: "biz-vendor-list",
- component: () =>
- import(/* webpackChunkName: "biz" */ "./views/biz-vendor-list.vue")
- },
- {
- path: "/biz-vendor-list/:recordid",
- name: "vendor-edit",
- component: () =>
- import(/* webpackChunkName: "biz" */ "./views/biz-vendor.vue")
- },
- {
- path: "/biz-gzcase-list",
- name: "biz-gzcase-list",
- component: () =>
- import(/* webpackChunkName: "biz" */ "./views/biz-gzcase-list.vue")
- },
- {
- path: "/biz-gzcase-list/:recordid",
- name: "gzcase-edit",
- component: () =>
- import(/* webpackChunkName: "biz" */ "./views/biz-gzcase.vue")
- },
- // //####################### SERVICE GROUP ##############################
- // {
- // path: "/svc-schedule",
- // name: "svc-schedule",
- // component: () =>
- // import(/* webpackChunkName: "svc" */ "./views/svc-schedule.vue")
- // },
-
- //######################### ADMINISTRATION GROUP #####################################
- {
- path: "/adm-global-settings",
- name: "adm-global-settings",
- component: () =>
- import(/* webpackChunkName: "adm" */ "./views/adm-global-settings.vue")
- },
- {
- path: "/adm-global-select-templates",
- name: "adm-global-select-templates",
- component: () =>
- import(
- /* webpackChunkName: "adm" */ "./views/adm-global-select-templates.vue"
- )
- },
- {
- path: "/adm-global-seeds",
- name: "adm-global-seeds",
- component: () =>
- import(/* webpackChunkName: "adm" */ "./views/adm-global-seeds.vue")
- },
- {
- path: "/adm-global-logo",
- name: "adm-global-logo",
- component: () =>
- import(/* webpackChunkName: "adm" */ "./views/adm-global-logo.vue")
- },
-
- {
- path: "/adm-users",
- name: "adm-users",
- component: () =>
- import(/* webpackChunkName: "adm" */ "./views/adm-users.vue")
- },
- {
- path: "/adm-users/:recordid",
- name: "adm-user",
- component: () =>
- import(/* webpackChunkName: "adm" */ "./views/adm-user.vue")
- },
- {
- path: "/adm-translations",
- name: "adm-translations",
- component: () =>
- import(/* webpackChunkName: "adm" */ "./views/adm-translations.vue")
- },
- {
- path: "/adm-translations/:recordid",
- name: "adm-translation",
- component: () =>
- import(/* webpackChunkName: "adm" */ "./views/adm-translation.vue")
- },
-
- {
- path: "/adm-report-templates",
- name: "adm-report-templates",
- component: () =>
- import(/* webpackChunkName: "adm" */ "./views/adm-report-templates.vue")
- },
- {
- path: "/report-edit/:recordid", //Route to edit a report template
- name: "sock-report-edit",
- component: () =>
- import(
- //it gets it's own chunk name because it's huge and rarely used
- /* webpackChunkName: "sock-report-edit" */ "./views/sock-report-edit.vue"
- )
- },
- {
- path: "/adm-attachments",
- name: "adm-attachments",
- component: () =>
- import(/* webpackChunkName: "adm" */ "./views/adm-attachments.vue")
- },
-
- {
- path: "/adm-history",
- name: "adm-history",
- component: () =>
- import(/* webpackChunkName: "adm" */ "./views/adm-history.vue")
- },
- {
- path: "/adm-import",
- name: "adm-import",
- component: () =>
- import(/* webpackChunkName: "adm" */ "./views/adm-import.vue")
- },
- {
- path: "/adm-integrations",
- name: "adm-integrations",
- component: () =>
- import(/* webpackChunkName: "adm" */ "./views/adm-integrations.vue")
- },
- {
- path: "/adm-integrations/:recordid",
- name: "adm-integration",
- component: () =>
- import(/* webpackChunkName: "adm" */ "./views/adm-integration.vue")
- },
-
- //########################## OPERATIONS GROUP ############################
- {
- path: "/ops-backup",
- name: "ops-backup",
- component: () =>
- import(/* webpackChunkName: "ops" */ "./views/ops-backup.vue")
- },
-
- {
- path: "/ops-server-state",
- name: "ops-server-state",
- component: () =>
- import(/* webpackChunkName: "ops" */ "./views/ops-server-state.vue")
- },
-
- {
- path: "/ops-jobs",
- name: "ops-jobs",
- component: () =>
- import(/* webpackChunkName: "ops" */ "./views/ops-jobs.vue")
- },
-
- {
- path: "/ops-log",
- name: "ops-log",
- component: () =>
- import(/* webpackChunkName: "ops" */ "./views/ops-log.vue")
- },
- {
- path: "/ops-view-configuration",
- name: "ops-view-configuration",
- component: () =>
- import(
- /* webpackChunkName: "ops" */ "./views/ops-view-configuration.vue"
- )
- },
-
- {
- path: "/ops-metrics",
- name: "ops-metrics",
- component: () =>
- import(/* webpackChunkName: "ops" */ "./views/ops-metrics.vue")
- },
- {
- path: "/ops-profile",
- name: "ops-profile",
- component: () =>
- import(/* webpackChunkName: "ops" */ "./views/ops-profile.vue")
- },
- {
- path: "/ops-notify-queue",
- name: "ops-notify-queue",
- component: () =>
- import(/* webpackChunkName: "ops" */ "./views/ops-notify-queue.vue")
- },
- {
- path: "/ops-notification-settings",
- name: "ops-notification-settings",
- component: () =>
- import(
- /* webpackChunkName: "ops" */ "./views/ops-notification-settings.vue"
- )
- },
- {
- path: "/ops-notify-log",
- name: "ops-notify-log",
- component: () =>
- import(/* webpackChunkName: "ops" */ "./views/ops-notify-log.vue")
- },
- {
- path: "/ops-customer-notify-log",
- name: "ops-customer-notify-log",
- component: () =>
- import(
- /* webpackChunkName: "ops" */ "./views/ops-customer-notify-log.vue"
- )
- },
-
- //############################## SPECIAL ROUTES ###############################
-
- {
- //No rights - happens when customer user logs in without access to anything at all due to configuration not allowing it
- path: "/no-features-available",
- name: "no-features-available",
- component: () =>
- import(
- /* webpackChunkName: "sock-common" */ "./views/nofeaturesavailable.vue"
- )
- },
- {
- //404 404 404 404 404 404 404 404 404 404 404 404 404 404 404 404 404 404 404 404 404 404 404 404
- path: "*",
- name: "notfound",
- component: () =>
- import(/* webpackChunkName: "sock-common" */ "./views/notfound.vue")
- }
- ]
-});
diff --git a/client/src/store.js b/client/src/store.js
deleted file mode 100644
index e8cac3e..0000000
--- a/client/src/store.js
+++ /dev/null
@@ -1,210 +0,0 @@
-import Vue from "vue";
-import Vuex from "vuex";
-import createPersistedState from "vuex-persistedstate";
-
-const MaxLogLength = 100;
-
-Vue.use(Vuex);
-
-//reset all local settings via url
-//localhost:8080/login?reset
-if (window.location.search) {
- var searchParams = new URLSearchParams(window.location.search);
- if (searchParams.has("reset")) {
- localStorage.removeItem("Sockeye");
- console.log("LOCAL SETTINGS RESET");
- }
-}
-
-export default new Vuex.Store({
- plugins: [createPersistedState({ key: "Sockeye" })],
- state: {
- lastClientVersion: "",
- authenticated: false,
- apiToken: "-",
- downloadToken: "-",
- l: false, //license lockout flag
- tfaEnabled: undefined,
- customerRights: {},
- userId: 0,
- userName: "NOT AUTHENTICATED",
- roles: 0,
- userType: 0,
- homePage: undefined,
- translationText: {},
- enums: {}, //all enum values with translated text to match stored as key
- userOptions: {
- languageOverride: "en-US",
- timeZoneOverride: null, //use browser tz by default
- currencyName: "USD",
- hour12: true,
- uiColor: "#000000ff",
- emailAddress: null,
- mapUrlTemplate: null
- },
- globalSettings: {},
- navItems: [],
- logArray: [],
- formSettings: {}, //this is the settings on forms that survive a refresh like grid number of items to show etc
- formCustomTemplate: {}, //this is the custom fields settings for forms,
- darkMode: false,
- nativeDateTimeInput: false,
- knownPassword: false,
- newNotificationCount: 0
- },
- getters: {
- /* User types:
- Service = 1,
- NotService = 2,
- Customer = 3,
- HeadOffice = 4,
- ServiceContractor = 5
- */
- isCustomerUser: state => {
- return state.userType == 3 || state.userType == 4;
- },
- isSubContractorUser: state => {
- return state.userType == 5;
- },
- isScheduleableUser: state => {
- return state.userType == 1 || state.userType == 5;
- },
- canSubscribeToNotifications: state => {
- switch (state.userType) {
- case 1:
- case 2:
- return true;
- case 3:
- case 4:
- //customer / headoffice and some notifications are enabled for them
- return (
- state.customerRights.notifyServiceImminent == true ||
- state.customerRights.notifyCSRAccepted == true ||
- state.customerRights.notifyCSRRejected == true ||
- state.customerRights.notifyWOCompleted == true ||
- state.customerRights.notifyWOCreated == true
- );
- case 5: //subcontractor for now no notification subscriptions available
- return false;
- }
- return false;
- },
- isSuperUser: state => {
- return state.userId === 1;
- }
- },
- mutations: {
- setLastClientVersion(state, data) {
- state.lastClientVersion = data;
- },
- login(state, data) {
- // mutate state
- state.authenticated = data.authenticated;
- state.userId = data.userId;
- state.roles = data.roles;
- state.apiToken = data.apiToken;
- state.userName = data.userName;
- state.userType = data.userType;
- state.downloadToken = data.dlt;
- state.l = data.l;
- state.tfaEnabled = data.tfaEnabled;
- if (data.customerRights) {
- state.customerRights = data.customerRights;
- }
- },
- logout(state) {
- //Things that are reset on logout
- state.apiToken = "-";
- state.downloadToken = "-";
- state.l = false;
- state.tfaEnabled = undefined;
- state.customerRights = {};
- state.authenticated = false;
- state.userId = 0;
- state.userName = "NOT AUTHENTICATED";
- state.roles = 0;
- state.userType = 0;
- state.homePage = undefined;
- state.navItems = [];
- state.translationText = {};
- state.enums = {};
- state.formCustomTemplate = {};
- state.userOptions.languageOverride = "en-US";
- state.userOptions.timeZoneOverride = null;
- state.userOptions.currencyName = "USD";
- state.userOptions.hour12 = true;
- //state.userOptions.uiColor = "#000000ff";
- state.userOptions.emailAddress = null;
- state.userOptions.mapUrlTemplate = null;
- state.globalSettings = {};
- state.knownPassword = false;
- state.newNotificationCount = 0;
- },
- addNavItem(state, data) {
- state.navItems.push(data);
- },
- setTranslationText(state, data) {
- state.translationText[data.key] = data.value;
- },
- setFormCustomTemplateItem(state, data) {
- state.formCustomTemplate[data.formKey + "_concurrencyToken"] =
- data.concurrency;
- state.formCustomTemplate[data.formKey] = data.value;
- },
- setUserOptions(state, data) {
- // mutate state
- state.userOptions.languageOverride = data.languageOverride;
- state.userOptions.currencyName = data.currencyName;
- state.userOptions.hour12 = data.hour12;
- state.userOptions.timeZoneOverride = data.timeZoneOverride;
- state.userOptions.emailAddress = data.emailAddress;
- //state.userOptions.uiColor = data.uiColor;
- state.userOptions.mapUrlTemplate = data.mapUrlTemplate;
- },
- setGlobalSettings(state, data) {
- // mutate state
- state.globalSettings = data;
- },
- setEnum(state, data) {
- state.enums[data.enumKey] = data.items;
- },
- logItem(state, msg) {
- msg = new Date().toLocaleString("sv-SE") + "|" + msg;
- state.logArray.push(msg);
- if (state.logArray.length > MaxLogLength) {
- //remove beginning elements
- state.logArray = state.logArray.slice(
- state.logArray.length - MaxLogLength
- );
- }
- },
- clearAllFormSettings(state) {
- state.formSettings = {};
- },
- setFormSettings(state, data) {
- state.formSettings[data.formKey] = data.formSettings;
- },
- clearFormSettings(state, formKey) {
- delete state.formSettings[formKey];
- },
- setHomePage(state, data) {
- state.homePage = data;
- },
- setDarkMode(state, data) {
- state.darkMode = data;
- },
- setNativeDateTimeInput(state, data) {
- state.nativeDateTimeInput = data;
- },
- setKnownPassword(state, data) {
- state.knownPassword = data;
- },
- setNewNotificationCount(state, data) {
- state.newNotificationCount = data;
- },
- setTfaEnabled(state, data) {
- state.tfaEnabled = data;
- }
- },
- actions: {}
-});
diff --git a/client/src/sw.js b/client/src/sw.js
deleted file mode 100644
index 944252f..0000000
--- a/client/src/sw.js
+++ /dev/null
@@ -1,25 +0,0 @@
-// This is the code piece that GenerateSW mode can't provide for us.
-// This code listens for the user's confirmation to update the app.
-//https://medium.com/@dougallrich/give-users-control-over-app-updates-in-vue-cli-3-pwas-20453aedc1f2
-self.addEventListener("message", e => {
- if (!e.data) {
- return;
- }
-
- switch (e.data) {
- case "skipWaiting":
- self.skipWaiting();
- break;
- default:
- // NOOP
- break;
- }
-});
-
-workbox.core.clientsClaim(); // Vue CLI 4 and Workbox v4, else
-// workbox.clientsClaim(); // Vue CLI 3 and Workbox v3.
-
-// The precaching code provided by Workbox.
-self.__precacheManifest = [].concat(self.__precacheManifest || []);
-// workbox.precaching.suppressWarnings(); // Only used with Vue CLI 3 and Workbox v3.
-workbox.precaching.precacheAndRoute(self.__precacheManifest, {});
diff --git a/client/src/views/adm-attachments.vue b/client/src/views/adm-attachments.vue
deleted file mode 100644
index b248bf4..0000000
--- a/client/src/views/adm-attachments.vue
+++ /dev/null
@@ -1,315 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("MoveSelected") }}
-
-
-
-
-
-
-
-
-
- {{ $sock.t("Cancel") }}
-
-
- {{ $sock.t("OK") }}
-
-
-
-
-
-
-
-
diff --git a/client/src/views/adm-global-logo.vue b/client/src/views/adm-global-logo.vue
deleted file mode 100644
index 73c56aa..0000000
--- a/client/src/views/adm-global-logo.vue
+++ /dev/null
@@ -1,282 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- {{
- $sock.t("Delete")
- }}
- {{
- $sock.t("Upload")
- }}
-
-
-
-
- {{
- $sock.t("Delete")
- }}
- {{
- $sock.t("Upload")
- }}
-
-
-
-
- {{
- $sock.t("Delete")
- }}
- {{
- $sock.t("Upload")
- }}
-
-
-
-
-
-
-
diff --git a/client/src/views/adm-global-seeds.vue b/client/src/views/adm-global-seeds.vue
deleted file mode 100644
index 65e165a..0000000
--- a/client/src/views/adm-global-seeds.vue
+++ /dev/null
@@ -1,298 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/adm-global-select-templates.vue b/client/src/views/adm-global-select-templates.vue
deleted file mode 100644
index 41340ca..0000000
--- a/client/src/views/adm-global-select-templates.vue
+++ /dev/null
@@ -1,479 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ item.title }}
-
-
- {{ item.key }}
-
-
-
-
-
- $sockiStepBackward
- $sockiBackward
- $sockiForward
- $sockiStepForward
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/adm-global-settings.vue b/client/src/views/adm-global-settings.vue
deleted file mode 100644
index 33ebb5a..0000000
--- a/client/src/views/adm-global-settings.vue
+++ /dev/null
@@ -1,764 +0,0 @@
-
-
-
-
-
-
-
-
- {{ $sock.t("BusinessSettings") }}
-
-
-
-
-
-
-
- {{ $sock.t("CompanyInformation") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("AddressTypePhysical") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("AddressTypePostal") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("UserInterfaceSettings") }}
-
-
- {{ $sock.t("GlobalLogo") }}
-
-
- {{
- $sock.t("PickListTemplates")
- }}
-
-
-
- {{ $sock.t("CustomerAccessSettings") }}
-
-
-
-
-
-
-
-
-
- {{ $sock.t("UserSettings") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("NotifySubscriptionList") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/adm-history.vue b/client/src/views/adm-history.vue
deleted file mode 100644
index 47239a1..0000000
--- a/client/src/views/adm-history.vue
+++ /dev/null
@@ -1,68 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/client/src/views/adm-import.vue b/client/src/views/adm-import.vue
deleted file mode 100644
index f39de61..0000000
--- a/client/src/views/adm-import.vue
+++ /dev/null
@@ -1,635 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("Import") }}
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/adm-integration.vue b/client/src/views/adm-integration.vue
deleted file mode 100644
index 7a079dd..0000000
--- a/client/src/views/adm-integration.vue
+++ /dev/null
@@ -1,418 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ log }}
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/adm-integrations.vue b/client/src/views/adm-integrations.vue
deleted file mode 100644
index 07ab721..0000000
--- a/client/src/views/adm-integrations.vue
+++ /dev/null
@@ -1,84 +0,0 @@
-
-
-
-
-
-
-
diff --git a/client/src/views/adm-report-templates.vue b/client/src/views/adm-report-templates.vue
deleted file mode 100644
index aedad99..0000000
--- a/client/src/views/adm-report-templates.vue
+++ /dev/null
@@ -1,119 +0,0 @@
-
-
-
-
-
- {{ $sock.t("Upload") }}
-
-
-
-
diff --git a/client/src/views/adm-translation.vue b/client/src/views/adm-translation.vue
deleted file mode 100644
index c0befa9..0000000
--- a/client/src/views/adm-translation.vue
+++ /dev/null
@@ -1,626 +0,0 @@
-
-
-
-
-
-
- {{ $sock.t("FindAndReplace") }}
-
-
-
-
-
-
-
-
- {{
- $sock.t("Cancel")
- }}
- {{
- $sock.t("OK")
- }}
-
-
-
-
-
-
-
-
-
-
- {{
- $sock.t("ReadOnly")
- }}
-
- $sockiClone {{ $sock.t("Duplicate") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ props.item.display }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/adm-translations.vue b/client/src/views/adm-translations.vue
deleted file mode 100644
index 3ef994a..0000000
--- a/client/src/views/adm-translations.vue
+++ /dev/null
@@ -1,119 +0,0 @@
-
-
-
-
-
- {{ $sock.t("Upload") }}
-
-
-
diff --git a/client/src/views/adm-user.vue b/client/src/views/adm-user.vue
deleted file mode 100644
index fe738c6..0000000
--- a/client/src/views/adm-user.vue
+++ /dev/null
@@ -1,1137 +0,0 @@
-
-
-
-
-
-
-
- {{ $sock.t("User") }}
- {{ $sock.t("UserSettings") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("UserColor") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/adm-users.vue b/client/src/views/adm-users.vue
deleted file mode 100644
index 9aa3415..0000000
--- a/client/src/views/adm-users.vue
+++ /dev/null
@@ -1,173 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/biz-gzcase-list.vue b/client/src/views/biz-gzcase-list.vue
deleted file mode 100644
index 1e0b102..0000000
--- a/client/src/views/biz-gzcase-list.vue
+++ /dev/null
@@ -1,177 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/biz-gzcase.vue b/client/src/views/biz-gzcase.vue
deleted file mode 100644
index d269ddd..0000000
--- a/client/src/views/biz-gzcase.vue
+++ /dev/null
@@ -1,613 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/biz-license-list.vue b/client/src/views/biz-license-list.vue
deleted file mode 100644
index 47b5e6c..0000000
--- a/client/src/views/biz-license-list.vue
+++ /dev/null
@@ -1,179 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/biz-product-list.vue b/client/src/views/biz-product-list.vue
deleted file mode 100644
index 60fd95a..0000000
--- a/client/src/views/biz-product-list.vue
+++ /dev/null
@@ -1,179 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/biz-product.vue b/client/src/views/biz-product.vue
deleted file mode 100644
index 3f2d53c..0000000
--- a/client/src/views/biz-product.vue
+++ /dev/null
@@ -1,671 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/biz-purchase-list.vue b/client/src/views/biz-purchase-list.vue
deleted file mode 100644
index 0eb7da9..0000000
--- a/client/src/views/biz-purchase-list.vue
+++ /dev/null
@@ -1,181 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/biz-purchase.vue b/client/src/views/biz-purchase.vue
deleted file mode 100644
index 84933ad..0000000
--- a/client/src/views/biz-purchase.vue
+++ /dev/null
@@ -1,774 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/biz-subscription-server-list.vue b/client/src/views/biz-subscription-server-list.vue
deleted file mode 100644
index b34c452..0000000
--- a/client/src/views/biz-subscription-server-list.vue
+++ /dev/null
@@ -1,181 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/biz-subscription-server.vue b/client/src/views/biz-subscription-server.vue
deleted file mode 100644
index 845ad9f..0000000
--- a/client/src/views/biz-subscription-server.vue
+++ /dev/null
@@ -1,1487 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- $sockiPlus
-
-
-
-
-
- $sockiPlus
-
- One week
-
-
-
- $sockiPlus
-
- One month
-
-
-
- $sockiPlus
-
- One year
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/biz-trial-request-list.vue b/client/src/views/biz-trial-request-list.vue
deleted file mode 100644
index 3f566f4..0000000
--- a/client/src/views/biz-trial-request-list.vue
+++ /dev/null
@@ -1,183 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/biz-vendor-list.vue b/client/src/views/biz-vendor-list.vue
deleted file mode 100644
index a71912b..0000000
--- a/client/src/views/biz-vendor-list.vue
+++ /dev/null
@@ -1,179 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/biz-vendor.vue b/client/src/views/biz-vendor.vue
deleted file mode 100644
index a74351f..0000000
--- a/client/src/views/biz-vendor.vue
+++ /dev/null
@@ -1,1209 +0,0 @@
-
-
-
-
-
-
-
-
- {{ $sock.t("Vendor") }}
- {{ $sock.t("Address") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("AddressTypePhysical") }}
- $sockiEllipsisV
-
-
-
-
-
- $sockiCopy
-
- {{
- $sock.t("CopyToClipboard")
- }}
-
-
-
- $sockiClone
-
- {{
- $sock.t("AddressCopyToPostal")
- }}
-
-
-
- $sockiMapMarker
-
- {{
- $sock.t("GeoCapture")
- }}
-
-
-
-
- {{ $sock.t("AddressTypePhysical") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("AddressTypePostal") }}
- $sockiEllipsisV
-
-
-
-
-
- $sockiCopy
-
- {{
- $sock.t("CopyToClipboard")
- }}
-
-
-
- $sockiClone
-
- {{
- $sock.t("AddressCopyToPhysical")
- }}
-
-
-
-
- {{ $sock.t("AddressTypePostal") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/cust-customer-note.vue b/client/src/views/cust-customer-note.vue
deleted file mode 100644
index 57c0334..0000000
--- a/client/src/views/cust-customer-note.vue
+++ /dev/null
@@ -1,465 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/cust-customer-notes.vue b/client/src/views/cust-customer-notes.vue
deleted file mode 100644
index 1fd41c8..0000000
--- a/client/src/views/cust-customer-notes.vue
+++ /dev/null
@@ -1,171 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/cust-customer.vue b/client/src/views/cust-customer.vue
deleted file mode 100644
index bf03348..0000000
--- a/client/src/views/cust-customer.vue
+++ /dev/null
@@ -1,1420 +0,0 @@
-
-
-
-
-
-
-
- {{ $sock.t("Customer") }}
- {{ $sock.t("Address") }}
- {{ $sock.t("Contacts") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("AddressTypePhysical") }}
- $sockiEllipsisV
-
-
-
-
-
- $sockiCopy
-
- {{
- $sock.t("CopyToClipboard")
- }}
-
-
-
- $sockiClone
-
- {{
- $sock.t("AddressCopyToPostal")
- }}
-
-
-
- $sockiMapMarker
-
- {{
- $sock.t("GeoCapture")
- }}
-
-
-
-
- {{ $sock.t("AddressTypePhysical") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("AddressTypePostal") }}
- $sockiEllipsisV
-
-
-
-
-
- $sockiCopy
-
- {{
- $sock.t("CopyToClipboard")
- }}
-
-
-
- $sockiClone
-
- {{
- $sock.t("AddressCopyToPhysical")
- }}
-
-
-
-
- {{ $sock.t("AddressTypePostal") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- $sockiSync
-
-
- $sockiPlus
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/cust-customers.vue b/client/src/views/cust-customers.vue
deleted file mode 100644
index a7457b6..0000000
--- a/client/src/views/cust-customers.vue
+++ /dev/null
@@ -1,182 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/cust-head-office.vue b/client/src/views/cust-head-office.vue
deleted file mode 100644
index 4fa400e..0000000
--- a/client/src/views/cust-head-office.vue
+++ /dev/null
@@ -1,1339 +0,0 @@
-
-
-
-
-
-
-
- {{ $sock.t("HeadOffice") }}
- {{ $sock.t("Address") }}
- {{ $sock.t("Contacts") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("AddressTypePhysical") }}
- $sockiEllipsisV
-
-
-
-
-
- $sockiCopy
-
- {{
- $sock.t("CopyToClipboard")
- }}
-
-
-
- $sockiClone
-
- {{
- $sock.t("AddressCopyToPostal")
- }}
-
-
-
- $sockiMapMarker
-
- {{
- $sock.t("GeoCapture")
- }}
-
-
-
-
- {{ $sock.t("AddressTypePhysical") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("AddressTypePostal") }}
- $sockiEllipsisV
-
-
-
-
-
- $sockiCopy
-
- {{
- $sock.t("CopyToClipboard")
- }}
-
-
-
- $sockiClone
-
- {{
- $sock.t("AddressCopyToPhysical")
- }}
-
-
-
-
- {{ $sock.t("AddressTypePostal") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- $sockiSync
-
-
- $sockiPlus
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/cust-head-offices.vue b/client/src/views/cust-head-offices.vue
deleted file mode 100644
index 44108af..0000000
--- a/client/src/views/cust-head-offices.vue
+++ /dev/null
@@ -1,151 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/cust-user.vue b/client/src/views/cust-user.vue
deleted file mode 100644
index 5ff877c..0000000
--- a/client/src/views/cust-user.vue
+++ /dev/null
@@ -1,1084 +0,0 @@
-
-
-
-
-
-
-
- {{ $sock.t("Contact") }}
- {{ $sock.t("UserSettings") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/cust-users.vue b/client/src/views/cust-users.vue
deleted file mode 100644
index b2bb1b7..0000000
--- a/client/src/views/cust-users.vue
+++ /dev/null
@@ -1,157 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/customer-notify-subscription.vue b/client/src/views/customer-notify-subscription.vue
deleted file mode 100644
index 2ee089f..0000000
--- a/client/src/views/customer-notify-subscription.vue
+++ /dev/null
@@ -1,1353 +0,0 @@
-
-
-
-
-
-
- {{ $sock.t("NotifyEventType") }}
- {{ $sock.t("OpsNotificationSettings") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- $sockiFlag
-
-
- {{
- data.item.name
- }}$sockiLock
- $sockiCheckCircle
-
- {{ data.item.notes }}
-
-
-
-
-
-
-
-
-
- $sockiFlag
-
-
- {{
- data.item.name
- }}$sockiLock
- $sockiCheckCircle
-
- {{ data.item.notes }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ whoList.length }}
-
- {{ $sock.t("WhoWillBeNotified") }}
-
-
-
-
-
-
- {{ $sock.t("NoData") }}
-
-
-
-
-
-
- {{ item.name }}
- {{ item.name }}
- {{
- item.emailAddress
- }}
-
-
-
-
-
-
-
-
- {{
- $sock.t("Close")
- }}
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/customer-notify-subscriptions.vue b/client/src/views/customer-notify-subscriptions.vue
deleted file mode 100644
index bf1d5f1..0000000
--- a/client/src/views/customer-notify-subscriptions.vue
+++ /dev/null
@@ -1,238 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/client/src/views/home-dashboard.vue b/client/src/views/home-dashboard.vue
deleted file mode 100644
index 1e6bcff..0000000
--- a/client/src/views/home-dashboard.vue
+++ /dev/null
@@ -1,381 +0,0 @@
-
-
-
-
-
-
-
-
-
- {{ $sock.t("Add") }}
-
-
-
-
-
- {{ item.icon }}
- {{
- $sock.t(item.title)
- }}
-
-
-
-
-
-
- {{ $sock.t("Cancel") }}
-
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("Add") }}
-
-
-
-
-
-
diff --git a/client/src/views/home-memo.vue b/client/src/views/home-memo.vue
deleted file mode 100644
index 377e1e6..0000000
--- a/client/src/views/home-memo.vue
+++ /dev/null
@@ -1,689 +0,0 @@
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("MemoSent") }}
{{ $sock.dt(obj.sent) }}
-
-
- {{ $sock.t("MemoFromID") }}
{{ obj.fromName }}
-
-
- {{ $sock.t("MemoSubject") }}
{{ obj.name }}
-
-
-
- {{ $sock.t("MemoMessage") }}
-
- {{ obj.notes }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ item.name }}
-
-
-
-
-
- {{ $sock.t("MemoToID") }}
{{ obj.fromName }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/home-memos.vue b/client/src/views/home-memos.vue
deleted file mode 100644
index b8c41f4..0000000
--- a/client/src/views/home-memos.vue
+++ /dev/null
@@ -1,146 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/home-notifications.vue b/client/src/views/home-notifications.vue
deleted file mode 100644
index abb2cc1..0000000
--- a/client/src/views/home-notifications.vue
+++ /dev/null
@@ -1,321 +0,0 @@
-
-
-
-
-
-
- {{ $sock.t("NoData") }}
-
-
-
-
- {{ i.name
- }}
- - {{ i.ageValueViz }}
- - {{ i.decValueViz }}
- {{ i.uicreated }} - {{ i.uievent }}
-
- {{ i.icon }}{{ i.uiaysockType }}
-
-
-
-
-
- {{
- $sock.t("Delete")
- }}
- {{ $sock.t("Open") }}
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/home-notify-direct.vue b/client/src/views/home-notify-direct.vue
deleted file mode 100644
index b71a4c2..0000000
--- a/client/src/views/home-notify-direct.vue
+++ /dev/null
@@ -1,310 +0,0 @@
-
-
-
-
-
-
-
-
-
-
- {{ item.name }}
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/home-notify-subscription.vue b/client/src/views/home-notify-subscription.vue
deleted file mode 100644
index 320a302..0000000
--- a/client/src/views/home-notify-subscription.vue
+++ /dev/null
@@ -1,789 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- $sockiFlag
-
-
- {{ data.item.name }}$sockiLock
- $sockiCheckCircle
-
- {{ data.item.notes }}
-
-
-
-
-
-
-
-
-
- $sockiFlag
-
-
- {{ data.item.name }}$sockiLock
- $sockiCheckCircle
-
- {{ data.item.notes }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- ATTACH REPORT stub: dynamic list of reports for type
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/home-notify-subscriptions.vue b/client/src/views/home-notify-subscriptions.vue
deleted file mode 100644
index 2808c76..0000000
--- a/client/src/views/home-notify-subscriptions.vue
+++ /dev/null
@@ -1,258 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/client/src/views/home-password.vue b/client/src/views/home-password.vue
deleted file mode 100644
index b649b79..0000000
--- a/client/src/views/home-password.vue
+++ /dev/null
@@ -1,280 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/home-reminder.vue b/client/src/views/home-reminder.vue
deleted file mode 100644
index ad78742..0000000
--- a/client/src/views/home-reminder.vue
+++ /dev/null
@@ -1,592 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("ReminderColor") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/home-reminders.vue b/client/src/views/home-reminders.vue
deleted file mode 100644
index 7dd7259..0000000
--- a/client/src/views/home-reminders.vue
+++ /dev/null
@@ -1,150 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/home-reset.vue b/client/src/views/home-reset.vue
deleted file mode 100644
index 5a2b522..0000000
--- a/client/src/views/home-reset.vue
+++ /dev/null
@@ -1,179 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("Save") }}
-
-
-
-
-
-
diff --git a/client/src/views/home-review.vue b/client/src/views/home-review.vue
deleted file mode 100644
index 9cb4340..0000000
--- a/client/src/views/home-review.vue
+++ /dev/null
@@ -1,676 +0,0 @@
-
-
-
-
-
-
-
- {{ iconForType }} {{ name }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/home-reviews.vue b/client/src/views/home-reviews.vue
deleted file mode 100644
index c2c06e9..0000000
--- a/client/src/views/home-reviews.vue
+++ /dev/null
@@ -1,181 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/home-schedule.vue b/client/src/views/home-schedule.vue
deleted file mode 100644
index ee07f3c..0000000
--- a/client/src/views/home-schedule.vue
+++ /dev/null
@@ -1,1289 +0,0 @@
-
-
-
-
-
-
- {{ $sock.t("DateRangeToday") }}
-
-
- $prev
-
-
- $next
-
-
-
- {{ $refs.calendar.title }}
-
-
-
- $sockiCog
-
-
-
-
-
- {{ typeToLabel() }}
- $sort
-
-
-
-
- {{
- $sock.t("ScheduleDay")
- }}
-
-
- {{
- $sock.t("ScheduleWeek")
- }}
-
-
- {{
- $sock.t("ScheduleMonth")
- }}
-
-
- {{
- $sock.t("Schedule4Day")
- }}
-
-
-
-
-
-
-
-
-
-
- {{
- iconForEvent(event.type)
- }}
-
-
- $sockiLock
-
-
-
-
-
-
-
-
-
- {{ $sock.t("New") }}
-
-
- $sockiTools{{ $sock.t("WorkOrder") }}
- $sockiStickyNote{{ $sock.t("Reminder") }}
-
-
-
- {{
- $sock.t("Cancel")
- }}
-
-
-
-
-
-
-
-
-
-
-
-
- {{ iconForSelectedEvent() }}
-
- {{ selectedEvent.name }}
-
-
-
-
-
- {{ $sock.t("ReminderName") }}:
- {{ evInfo.name }}
-
-
- {{ $sock.t("DashboardScheduled") }}:
- {{ $sock.dt(evInfo.startDate) }} — {{
- $sock.dt(evInfo.stopDate)
- }}
-
-
- {{ $sock.t("ReminderNotes") }}:
-
- $sockiSquareFull{{ evInfo.notes }}
-
-
-
-
-
- {{ $sock.util().iconForType(evInfo.aType) }}
- {{ evInfo.reviewObjectViz }}
-
-
- {{ $sock.t("ReviewName") }}:
- {{ evInfo.name }}
-
-
- {{ $sock.t("ReviewDate") }}:
- {{
- $sock.dt(evInfo.reviewDate)
- }}
-
-
- {{ $sock.t("ReviewNotes") }}:
- {{ evInfo.notes }}
-
-
-
-
- {{ $sock.t("ReviewCompletedDate") }}:
- {{
- $sock.dt(evInfo.completedDate)
- }}
-
-
- {{ $sock.t("ReviewCompletionNotes") }}:
-
- {{ evInfo.completionNotes }}
-
-
-
-
-
-
- {{ $sock.t("WorkOrder") }}:
- {{ evInfo.serial }} {{ evInfo.customerViz }}
-
-
- {{ evInfo.wosummary }}
-
-
- {{ $sock.t("Tags") }}:
- {{
- $sock.util().formatTags(evInfo.wotags)
- }}
-
-
- {{ $sock.t("DashboardScheduled") }}:
- {{ $sock.dt(evInfo.startDate) }} — {{
- $sock.dt(evInfo.stopDate)
- }}
-
-
- {{
- $sock.t("WorkOrderItemScheduledUserEstimatedQuantity")
- }}:
- {{ evInfo.qty }}
-
-
- {{
- $sock.t("WorkOrderItemScheduledUserServiceRateID")
- }}:
- {{ evInfo.rate }}
-
-
-
- {{ $sock.t("WorkOrderStatus") }}:
- {{ evInfo.wostatus }}
- $sockiFlag
- $sockiLock
- $sockiCheckCircle
-
-
-
- {{ $sock.t("WorkOrderItemSummary") }}:
-
- $sockiCircle{{ evInfo.woitemstatus }}
-
-
-
- {{ $sock.t("WorkOrderItemPriorityID") }}:
-
- $sockiFireAlt{{ evInfo.woitempriority }}
-
-
- {{ $sock.t("WorkOrderItemTags") }}:
- {{
- $sock.util().formatTags(evInfo.woitemtags)
- }}
-
-
-
-
- {{
- $sock.t("Open")
- }}
-
-
-
-
- {{ $sock.t("Close") }}
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("ScheduleOptions") }}
-
-
-
-
-
-
-
-
-
-
- {{
- $sock.t("ScheduleShowTypes")
- }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{
- $sock.t("Cancel")
- }}
-
- {{ $sock.t("Save") }}
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/home-search.vue b/client/src/views/home-search.vue
deleted file mode 100644
index db5c80c..0000000
--- a/client/src/views/home-search.vue
+++ /dev/null
@@ -1,363 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- $sockiSearch
-
-
-
- {{ $sock.t("NoResults") }}
-
-
-
- ({{ $sock.t("TooManyResults") }})
-
-
-
-
- {{ item.icon }}
- {{ item.subheader }}
-
-
-
-
-
-
-
-
-
-
- $sockiInfoCircle
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/home-security.vue b/client/src/views/home-security.vue
deleted file mode 100644
index 1a5fea9..0000000
--- a/client/src/views/home-security.vue
+++ /dev/null
@@ -1,273 +0,0 @@
-
-
-
-
-
-
-
-
-
-
- {{
- $sock.t("AuthConnectAppTitle")
- }}
-
- {{
- $sock.t("AuthDisableTwoFactor")
- }}
-
-
-
-
-
-
-
- {{
- $sock.t("AuthConnectAppTitle")
- }}
- {{ $sock.t("AuthConnectAppSubTitle") }}
-
-
-
-
![Embedded QR Code]()
-
- {{ $sock.t("AuthConnectAppManualEntry") }}
- {{ obj.s }}
-
-
-
-
- {{
- $sock.t("AuthVerifyCode")
- }}
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/home-user-settings.vue b/client/src/views/home-user-settings.vue
deleted file mode 100644
index 458716a..0000000
--- a/client/src/views/home-user-settings.vue
+++ /dev/null
@@ -1,543 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("UserColor") }}
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/login.vue b/client/src/views/login.vue
deleted file mode 100644
index 2d181b2..0000000
--- a/client/src/views/login.vue
+++ /dev/null
@@ -1,501 +0,0 @@
-
-
-
-
-
-
-
- {{ authTwoFactor }}
-
-
-
-
-
- {{
- cancel
- }}
-
- {{ authVerifyCode }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/nofeaturesavailable.vue b/client/src/views/nofeaturesavailable.vue
deleted file mode 100644
index fbcff02..0000000
--- a/client/src/views/nofeaturesavailable.vue
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
-
$sockiEgg
-
- {{ $sock.t("NoFeaturesAvailable") }}
-
-
-
-
-
-
-
diff --git a/client/src/views/notfound.vue b/client/src/views/notfound.vue
deleted file mode 100644
index 23f5545..0000000
--- a/client/src/views/notfound.vue
+++ /dev/null
@@ -1,46 +0,0 @@
-
-
-
-
-
$sockiDragon
-
- {{ msg }}
-
-
-
-
-
-
diff --git a/client/src/views/ops-backup.vue b/client/src/views/ops-backup.vue
deleted file mode 100644
index 9c7488b..0000000
--- a/client/src/views/ops-backup.vue
+++ /dev/null
@@ -1,487 +0,0 @@
-
-
-
-
-
-
-
- {{ $sock.t("BackupSettings") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("BackupFiles") }}
-
- $sockiSync
-
-
-
-
-
- $sockiTrashAlt
-
-
-
-
- $sockiFileDownload
-
-
-
-
- ({{ $sock.t("AvailableSpace") }} {{
- backupAvailableSpace
- }})
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/ops-customer-notify-log.vue b/client/src/views/ops-customer-notify-log.vue
deleted file mode 100644
index e420f81..0000000
--- a/client/src/views/ops-customer-notify-log.vue
+++ /dev/null
@@ -1,78 +0,0 @@
-
-
-
-
-
-
-
diff --git a/client/src/views/ops-jobs.vue b/client/src/views/ops-jobs.vue
deleted file mode 100644
index 538b226..0000000
--- a/client/src/views/ops-jobs.vue
+++ /dev/null
@@ -1,257 +0,0 @@
-
-
-
-
-
- $sockiSync
-
-
-
-
-
- $sockiFileDownload
-
-
-
-
-
-
-
diff --git a/client/src/views/ops-log.vue b/client/src/views/ops-log.vue
deleted file mode 100644
index bc1a19b..0000000
--- a/client/src/views/ops-log.vue
+++ /dev/null
@@ -1,236 +0,0 @@
-
-
-
-
-
-
-
-
-
-
- {{ log }}
-
-
-
-
-
-
diff --git a/client/src/views/ops-metrics.vue b/client/src/views/ops-metrics.vue
deleted file mode 100644
index dbc2caa..0000000
--- a/client/src/views/ops-metrics.vue
+++ /dev/null
@@ -1,528 +0,0 @@
-
-
-
-
-
-
-
-
-
- {{ $sock.t("MetricCPUMemory") }}
- {{ $sock.t("Database") }}
- {{ $sock.t("MetricFileStorage") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/ops-notification-settings.vue b/client/src/views/ops-notification-settings.vue
deleted file mode 100644
index f9e9547..0000000
--- a/client/src/views/ops-notification-settings.vue
+++ /dev/null
@@ -1,460 +0,0 @@
-
-
-
-
-
-
- {{ $sock.t("TestSMTPSettings") }}
-
-
-
-
-
-
- {{
- $sock.t("Cancel")
- }}
- {{ $sock.t("OK") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/ops-notify-log.vue b/client/src/views/ops-notify-log.vue
deleted file mode 100644
index 2a77a88..0000000
--- a/client/src/views/ops-notify-log.vue
+++ /dev/null
@@ -1,78 +0,0 @@
-
-
-
-
-
-
-
diff --git a/client/src/views/ops-notify-queue.vue b/client/src/views/ops-notify-queue.vue
deleted file mode 100644
index 87ea3ad..0000000
--- a/client/src/views/ops-notify-queue.vue
+++ /dev/null
@@ -1,253 +0,0 @@
-
-
-
-
-
- $sockiSync
-
-
-
-
- $sockiTrashAlt
-
-
-
-
-
-
diff --git a/client/src/views/ops-profile.vue b/client/src/views/ops-profile.vue
deleted file mode 100644
index 104d6db..0000000
--- a/client/src/views/ops-profile.vue
+++ /dev/null
@@ -1,125 +0,0 @@
-
-
-
-
-
- $sockiSync
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/ops-server-state.vue b/client/src/views/ops-server-state.vue
deleted file mode 100644
index 790db64..0000000
--- a/client/src/views/ops-server-state.vue
+++ /dev/null
@@ -1,285 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/ops-view-configuration.vue b/client/src/views/ops-view-configuration.vue
deleted file mode 100644
index 85cfcb2..0000000
--- a/client/src/views/ops-view-configuration.vue
+++ /dev/null
@@ -1,322 +0,0 @@
-
-
-
-
-
- Sockeye server settings
-
-
-
- SOCKEYE_DEFAULT_TRANSLATION
- {{
- config.sockeye_DEFAULT_TRANSLATION
- }}
-
-
-
-
-
- SOCKEYE_USE_URLS
- {{
- config.sockeye_USE_URLS
- }}
-
-
-
-
-
- SOCKEYE_DB_CONNECTION
- {{
- config.sockeye_DB_CONNECTION
- }}
-
-
-
-
-
- SOCKEYE_REPORT_RENDERING_TIMEOUT
- {{
- config.sockeye_REPORT_RENDERING_TIMEOUT
- }}
-
-
-
-
-
- SOCKEYE_ATTACHMENT_FILES_PATH
- {{
- config.sockeye_ATTACHMENT_FILES_PATH
- }}
-
-
-
-
-
- SOCKEYE_BACKUP_FILES_PATH
- {{
- config.sockeye_BACKUP_FILES_PATH
- }}
-
-
-
-
-
- SOCKEYE_TEMP_FILES_PATH
- {{
- config.sockeye_TEMP_FILES_PATH
- }}
-
-
-
-
-
- SOCKEYE_BACKUP_PG_DUMP_PATH
- {{
- config.sockeye_BACKUP_PG_DUMP_PATH
- }}
-
-
-
-
-
- SOCKEYE_LOG_PATH
- {{
- config.sockeye_LOG_PATH
- }}
-
-
-
-
-
- SOCKEYE_LOG_LEVEL
- {{
- config.sockeye_LOG_LEVEL
- }}
-
-
-
-
-
- SOCKEYE_LOG_ENABLE_LOGGER_DIAGNOSTIC_LOG
- {{
- config.sockeye_LOG_ENABLE_LOGGER_DIAGNOSTIC_LOG
- }}
-
-
-
-
-
-
Server Environment
-
- {{ name }}:
- {{ value }}
-
-
-
-
-
DB Server parameters
-
- {{ name }}:
- {{ value }}
-
-
-
-
-
-
-
-
diff --git a/client/src/views/sock-about.vue b/client/src/views/sock-about.vue
deleted file mode 100644
index 2c7a4a1..0000000
--- a/client/src/views/sock-about.vue
+++ /dev/null
@@ -1,379 +0,0 @@
-
-
-
-
-
- Sockeye App
-
- {{ $sock.t("Version") }}:
- {{ clientInfo.version }}
-
-
- {{ $sock.t("User") }}:
- {{ $store.state.userName }}
-
-
-
- 12h:
-
- {{ locale().getHour12() }}
-
-
-
-
- Effective time zone:
-
- {{ locale().getResolvedTimeZoneName() }}
-
-
-
-
- Effective language code:
- {{ locale().getResolvedLanguage() }}
-
-
-
- {{ $sock.t("NativeDateTimeInput") }}:
-
- {{
- $store.state.nativeDateTimeInput
- }}
-
-
-
- {{ $sock.t("CurrencyCode") }}:
- {{ locale().getCurrencyName() }}
-
-
-
- {{ $sock.t("DarkMode") }}:
- {{ $store.state.darkMode }}
-
-
-
- {{ $sock.t("Browser") }}
-
- {{ name }}:
- {{ value }}
-
-
-
- {{ $sock.t("Server") }}
-
- {{ $sock.t("ServerAddress") }}:
- {{ apiUrl }}
-
-
- {{ $sock.t("Version") }}:
- {{ serverInfo.serverVersion }} {{ serverInfo.build }}
-
-
- {{ $sock.t("SchemaVersion") }}:
- {{ serverInfo.dbSchemaVersion }}
-
-
- {{ $sock.t("ServerTime") }}:
- {{ serverInfo.serverLocalTime }}
-
-
- Server time zone:
- {{ serverInfo.serverTimeZone }}
-
-
-
-
{{ $sock.t("HelpLicense") }}
-
- {{ $sock.t("RegisteredUser") }}:
-
- {{
- serverInfo.license.license.licensedTo
- }}
-
-
- {{ $sock.t("DatabaseID") }}:
- {{
- serverInfo.license.license.serverDbId
- }}
-
-
- {{ $sock.t("LicenseSerial") }}:
-
- {{
- serverInfo.license.license.keySerial
- }}
-
-
- {{ $sock.t("LicenseType") }}:
- {{
- serverInfo.license.license.perpetual
- ? $sock.t("LicenseTypePerpetual")
- : $sock.t("LicenseTypeSubscription")
- }}
-
-
- {{ $sock.t("LicenseExpiration") }}:
-
- {{
- $sock.dt(serverInfo.license.license.licenseExpiration)
- }}
-
-
- {{ $sock.t("SupportedUntil") }}:
-
- {{
- $sock.dt(serverInfo.license.license.maintenanceExpiration)
- }}
-
-
-
-
{{
- $sock.t("LicensedOptions")
- }}
-
-
- {{ item.Feature }}
- {{
- item.Count ? ": " + item.Count : ""
- }}
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/sock-customize.vue b/client/src/views/sock-customize.vue
deleted file mode 100644
index bb7ab74..0000000
--- a/client/src/views/sock-customize.vue
+++ /dev/null
@@ -1,451 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- {{ item.title }}
-
-
- {{ item.tKey }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/sock-data-list-column-view.vue b/client/src/views/sock-data-list-column-view.vue
deleted file mode 100644
index 43a9236..0000000
--- a/client/src/views/sock-data-list-column-view.vue
+++ /dev/null
@@ -1,477 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- {{ item.title }}
-
-
- $sockiFilter
- $sockiSort
-
-
-
-
-
-
-
-
- {{ $sock.t("Include") }}
-
-
-
-
- $sockiStepBackward
- $sockiBackward
- $sockiForward
- $sockiStepForward
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/sock-evaluate.vue b/client/src/views/sock-evaluate.vue
deleted file mode 100644
index fc6e1f6..0000000
--- a/client/src/views/sock-evaluate.vue
+++ /dev/null
@@ -1,365 +0,0 @@
-
-
-
-
-
-
- {{
- $sock.t("GenerateSampleData")
- }}
-
-
-
- {{ $sock.t("ErrorSecurityAdministratorOnlyMessage") }}
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("Cancel") }}
- {{ $sock.t("StartJob") }}
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("Welcome") }}
-
-
-
-
- {{ $sock.t("ThankYouForEvaluating") }}
-
-
-
- {{ $sock.t("EvaluationGuide") }}
- {{ $sock.t("HelpTechSupport") }}
- {{ $sock.t("GenerateSampleData") }}
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/sock-history.vue b/client/src/views/sock-history.vue
deleted file mode 100644
index 6b1c212..0000000
--- a/client/src/views/sock-history.vue
+++ /dev/null
@@ -1,470 +0,0 @@
-
-
- {{ getIconForPage() }}{{ name }}
-
-
-
-
-
-
-
-
- {{ i.name }}
- {{ i.date }} - {{ getEventName(i.event) }}
- {{
- getIconForAType(i.sockType)
- }}{{ getNameForType(i.sockType) }}
- {{ i.textra }}
-
-
- {{
- $sock.t("History")
- }}
- {{
- $sock.t("Open")
- }}
-
-
-
-
-
-
-
-
-
-
- {{ i.name }}
- {{ i.date }} - {{ getEventName(i.event) }}
- {{
- getIconForAType(i.sockType)
- }}{{ getNameForType(i.sockType) }}
- {{ i.textra }}
-
-
-
- {{
- $sock.t("History")
- }}
- {{ $sock.t("Activity") }}
- {{
- $sock.t("Open")
- }}
-
-
-
-
-
-
-
- {{ $sock.t("More") }}
-
-
-
-
diff --git a/client/src/views/sock-log.vue b/client/src/views/sock-log.vue
deleted file mode 100644
index 8167a9a..0000000
--- a/client/src/views/sock-log.vue
+++ /dev/null
@@ -1,54 +0,0 @@
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/sock-open.vue b/client/src/views/sock-open.vue
deleted file mode 100644
index 6de6dd8..0000000
--- a/client/src/views/sock-open.vue
+++ /dev/null
@@ -1,24 +0,0 @@
-
- 📖...
-
-
-
diff --git a/client/src/views/sock-report-edit.vue b/client/src/views/sock-report-edit.vue
deleted file mode 100644
index 4ab7bf1..0000000
--- a/client/src/views/sock-report-edit.vue
+++ /dev/null
@@ -1,1163 +0,0 @@
-
-
-
-
-
-
-
-
- {{ $sock.t("ReportEditorMobileWarning") }}
-
-
-
-
- {{ $sock.t("ReportEditorProperties") }}
-
-
-
- {{ $sock.t("ReportPdfOptions") }}
-
-
-
- {{ $sock.t("ReportTemplate") }}
-
-
-
- CSS
-
-
-
- Prepare
-
-
-
- Helpers
-
-
-
- {{ $sock.t("ReportEditorData") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/client/src/views/sock-report-view.vue b/client/src/views/sock-report-view.vue
deleted file mode 100644
index 434f7e6..0000000
--- a/client/src/views/sock-report-view.vue
+++ /dev/null
@@ -1,43 +0,0 @@
-
-
- 📖...
-
-
-
-
-
diff --git a/client/src/views/svc-schedule.vue b/client/src/views/svc-schedule.vue
deleted file mode 100644
index 6fede6d..0000000
--- a/client/src/views/svc-schedule.vue
+++ /dev/null
@@ -1,1215 +0,0 @@
-
-
-
-
-
-
- {{ $sock.t("DateRangeToday") }}
-
-
- $prev
-
-
- $next
-
-
-
- {{ $refs.calendar.title }}
-
-
-
-
-
-
-
- $sockiCog
-
-
-
-
-
- {{ typeToLabel() }}
- $sort
-
-
-
-
- {{
- $sock.t("ScheduleCategory")
- }}
-
-
- {{
- $sock.t("ScheduleDay")
- }}
-
-
- {{
- $sock.t("ScheduleWeek")
- }}
-
-
- {{
- $sock.t("ScheduleMonth")
- }}
-
-
- {{
- $sock.t("Schedule4Day")
- }}
-
-
-
-
-
-
-
-
-
-
- {{ category.name }}
-
-
-
-
-
-
-
-
- $sockiLock
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("New") }}
-
-
-
-
-
- $sockiTools{{ $sock.t("WorkOrder") }}
-
-
-
- {{
- $sock.t("Cancel")
- }}
-
-
-
-
-
-
-
-
-
-
-
-
- {{ iconForSelectedEvent() }}
-
- {{ selectedEvent.name }}
-
-
-
- {{ $sock.t("WorkOrder") }}:
- {{ evInfo.serial }} {{ evInfo.customerViz }}
-
-
- {{ evInfo.wosummary }}
-
-
- {{ $sock.t("Tags") }}:
- {{
- $sock.util().formatTags(evInfo.wotags)
- }}
-
-
- {{ $sock.t("WorkOrderItemScheduledUserUserID") }}:
- {{ evInfo.scheduser }}
-
-
- {{ $sock.t("DashboardScheduled") }}:
- {{ $sock.dt(evInfo.startDate) }} — {{
- $sock.dt(evInfo.stopDate)
- }}
-
-
- {{
- $sock.t("WorkOrderItemScheduledUserEstimatedQuantity")
- }}:
- {{ evInfo.qty }}
-
-
- {{
- $sock.t("WorkOrderItemScheduledUserServiceRateID")
- }}:
- {{ evInfo.rate }}
-
-
-
- {{ $sock.t("WorkOrderStatus") }}:
- {{ evInfo.wostatus }}
- $sockiFlag
- $sockiLock
- $sockiCheckCircle
-
-
-
- {{ $sock.t("WorkOrderItemSummary") }}:
-
- $sockiCircle{{ evInfo.woitemstatus }}
-
-
-
- {{ $sock.t("WorkOrderItemPriorityID") }}:
-
- $sockiFireAlt{{ evInfo.woitempriority }}
-
-
- {{ $sock.t("WorkOrderItemTags") }}:
- {{
- $sock.util().formatTags(evInfo.woitemtags)
- }}
-
-
-
- {{
- $sock.t("Open")
- }}
-
-
-
-
- {{ $sock.t("Close") }}
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $sock.t("ScheduleOptions") }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{
- $sock.t("Cancel")
- }}
-
- {{ $sock.t("Save") }}
-
-
-
-
-
-
-
-
-
diff --git a/client/vue.config.js b/client/vue.config.js
deleted file mode 100644
index 176e827..0000000
--- a/client/vue.config.js
+++ /dev/null
@@ -1,53 +0,0 @@
-const MonacoWebpackPlugin = require("monaco-editor-webpack-plugin");
-
-module.exports = {
- //https://medium.com/@mrodal/how-to-make-lazy-loading-actually-work-in-vue-cli-3-7f3f88cfb102
- chainWebpack: config => {
- config.plugins.delete("prefetch");
- },
-
- configureWebpack: {
- devtool: "source-map", //THIS ENABLES DEBUGGING AT BROWSER!!
- plugins: [
- new MonacoWebpackPlugin({
- // available options are documented at https://github.com/Microsoft/monaco-editor-webpack-plugin#options
- //https://github.com/Microsoft/monaco-editor-webpack-plugin
- // publicPath: "./js/",
- languages: [
- "javascript",
- "css",
- "html",
- "typescript",
- "json",
- "handlebars"
- ]
- })
- ]
- },
-
- transpileDependencies: ["vuetify"],
-
- pwa: {
- //https://cli.vuejs.org/core-plugins/pwa.html#configuration
- // manifestPath: "manifest.json",
- name: "Sockeye",
- themeColor: "#00205B",
- msTileColor: "#ffc40d",
- workboxPluginMode: "InjectManifest",
- workboxOptions: {
- swSrc: "./src/sw.js",
- swDest: "service-worker.js"
- },
- iconPaths: {
- //disable automatic icons, they have the wrong ones basically, use this guide https://developers.google.com/web/fundamentals/design-and-ux/browser-customization
- //and put them directly into the index.html in the public folder as it's the source one used
- //and https://realfavicongenerator.net/
- //favicon32: null,
- favicon16: null,
- appleTouchIcon: null,
- maskIcon: null,
- msTileImage: null
- }
- },
- productionSourceMap: false
-};
diff --git a/client/webpack.config.js b/client/webpack.config.js
deleted file mode 100644
index 4bb38fa..0000000
--- a/client/webpack.config.js
+++ /dev/null
@@ -1,28 +0,0 @@
-// webpack.config.js
-
-module.exports = {
- // optimization: {
- // splitChunks: {
- // chunks: "all"
- // }
- // },
- rules: [
- {
- test: /\.s(c|a)ss$/,
- use: [
- "vue-style-loader",
- "css-loader",
- {
- loader: "sass-loader",
- options: {
- implementation: require("sass"),
- sassOptions: {
- fiber: require("fibers"),
- indentedSyntax: true // optional
- }
- }
- }
- ]
- }
- ]
-};
diff --git a/server/biz/GlobalBizSettingsBiz.cs b/server/biz/GlobalBizSettingsBiz.cs
index 2c87642..2e20bb3 100644
--- a/server/biz/GlobalBizSettingsBiz.cs
+++ b/server/biz/GlobalBizSettingsBiz.cs
@@ -143,10 +143,12 @@ namespace Sockeye.Biz
password = "b43698c255365ee739c05ba0d42855e96c2365c76bb2f9b9eb149cec7b52174c"
}), Encoding.UTF8, "application/json");
- // var content = new StringContent("login=john&password=b43698c255365ee739c05ba0d42855e96c2365c76bb2f9b9eb149cec7b52174c", Encoding.UTF8, "application/json");
var client = ServiceProviderProvider.HttpClientFactory.CreateClient();
+
+
+ //AUTHENTICATE
var res = await client.PostAsync($"{URL_ROCKFISH}authenticate?login=john&password=b43698c255365ee739c05ba0d42855e96c2365c76bb2f9b9eb149cec7b52174c", content);
var responseText = await res.Content.ReadAsStringAsync();
@@ -174,13 +176,33 @@ namespace Sockeye.Biz
// }}
+ //CUSTOMERS
+ /*
+ [
+ {
+ "active": false,
+ "lapsed": true,
+ "id": 1,
+ "name": "4PRINT"
+ },
+ {
+ "active": true,
+ "lapsed": false,
+ "id": 118,
+ "name": "AAA TEST DEVELOPMENT"
+ },etc
+ */
+ res = await client.PostAsync($"{URL_ROCKFISH}/api/customer/list", content);
+ responseText = await res.Content.ReadAsStringAsync();
+ responseJson = JObject.Parse(responseText);
+ //
}
catch (Exception ex)
{
- var msg = "E1020 - Error authenticating to rockfish see log for details";
+ var msg = "Error importing rockfish";
log.LogError(ex, msg);
}