forked from cms/tibi-svelte-starter
cypress and instanbul
This commit is contained in:
parent
786fd12f34
commit
f9fe8fd735
121
.drone.yml
121
.drone.yml
@ -1,14 +1,84 @@
|
||||
kind: pipeline
|
||||
type: docker
|
||||
name: default
|
||||
|
||||
workspace:
|
||||
path: /drone/workdir
|
||||
|
||||
steps:
|
||||
- name: mongo
|
||||
image: mongo
|
||||
pull: if-not-exists
|
||||
detach: true
|
||||
|
||||
- name: maildev
|
||||
image: maildev/maildev
|
||||
pull: if-not-exists
|
||||
commands:
|
||||
- node bin/maildev --web 80 --smtp 25 -v --hide-extensions=STARTTLS
|
||||
detach: true
|
||||
|
||||
- name: load dependencies
|
||||
image: node
|
||||
pull: if-not-exists
|
||||
environment:
|
||||
FORCE_COLOR: "true"
|
||||
volumes:
|
||||
- name: cache
|
||||
path: /cache
|
||||
commands:
|
||||
- yarn install
|
||||
- mkdir -p /cache/node_modules
|
||||
- mkdir -p /cache/user-cache
|
||||
- ln -s /cache/node_modules ./node_modules
|
||||
- ln -s /cache/user-cache ~/.cache
|
||||
- echo cache=/cache/npm-cache >> .npmrc
|
||||
- "echo 'enableGlobalCache: false' >> .yarnrc"
|
||||
- 'echo ''cacheFolder: "/cache/yarn-cache"'' >> .yarnrc'
|
||||
- 'echo ''yarn-offline-mirror "/cache/npm-packages-offline-cache"'' >> .yarnrc'
|
||||
- "echo 'yarn-offline-mirror-pruning: true' >> .yarnrc"
|
||||
- cat .yarnrc
|
||||
- yarn install --verbose --frozen-lockfile
|
||||
|
||||
- name: liveserver
|
||||
image: node
|
||||
pull: if-not-exists
|
||||
volumes:
|
||||
- name: cache
|
||||
path: /cache
|
||||
commands:
|
||||
- yarn run -- live-server --no-browser --port=80 --ignore='*' --entry-file=spa.html --no-css-inject --proxy=/api:http://wmbasic-api:8080/api/v1/_/__NAMESPACE__ dist
|
||||
detach: true
|
||||
|
||||
- name: wmbasic-api
|
||||
image: registry.webmakers.de/wmbasic/wmbasic-api
|
||||
pull: never
|
||||
environment:
|
||||
DB_DIAL: mongodb://mongo
|
||||
API_PORT: 8080
|
||||
MAIL_HOST: maildev:25
|
||||
detach: true
|
||||
|
||||
- name: cypress run
|
||||
image: cypress/base
|
||||
pull: if-not-exists
|
||||
volumes:
|
||||
- name: cache
|
||||
path: /cache
|
||||
environment:
|
||||
FORCE_COLOR: "true"
|
||||
CYPRESS_BASE_URL: http://liveserver
|
||||
CYPRESS_CI: "true"
|
||||
CYPRESS_mongodbUri: mongodb://mongo
|
||||
CYPRESS_wmbasicApiUrl: http://wmbasic-api:8080/api/v1
|
||||
CYPRESS_projectApiConfig: /drone/workdir/api/config.yml
|
||||
commands:
|
||||
- ln -s /cache/user-cache ~/.cache
|
||||
- yarn build:instanbul
|
||||
- yarn cy:run
|
||||
|
||||
- name: modify master config
|
||||
image: bash
|
||||
pull: if-not-exists
|
||||
commands:
|
||||
- bash scripts/modify-config.sh master __MASTER_URL__
|
||||
when:
|
||||
@ -16,6 +86,7 @@ steps:
|
||||
|
||||
- name: modify dev config
|
||||
image: bash
|
||||
pull: if-not-exists
|
||||
commands:
|
||||
- bash scripts/modify-config.sh dev __DEV_URL__
|
||||
when:
|
||||
@ -23,21 +94,34 @@ steps:
|
||||
|
||||
- name: build
|
||||
image: node
|
||||
pull: if-not-exists
|
||||
volumes:
|
||||
- name: cache
|
||||
path: /cache
|
||||
commands:
|
||||
- yarn build
|
||||
|
||||
- name: build ssr
|
||||
image: node
|
||||
pull: if-not-exists
|
||||
volumes:
|
||||
- name: cache
|
||||
path: /cache
|
||||
commands:
|
||||
- yarn build:server
|
||||
|
||||
- name: build legacy
|
||||
image: node
|
||||
pull: if-not-exists
|
||||
volumes:
|
||||
- name: cache
|
||||
path: /cache
|
||||
commands:
|
||||
- yarn build:legacy
|
||||
|
||||
- name: modify html
|
||||
image: bash
|
||||
pull: if-not-exists
|
||||
commands:
|
||||
- bash scripts/preload-meta.sh public/spa.html
|
||||
- bash scripts/preload-meta.sh public/spa.html > dist/spa.html
|
||||
@ -51,26 +135,53 @@ steps:
|
||||
|
||||
- name: deploy master
|
||||
image: instrumentisto/rsync-ssh
|
||||
pull: if-not-exists
|
||||
environment:
|
||||
RSYNC_USER: USER_PROJECT_master
|
||||
RSYNC_PASS:
|
||||
from_secret: rsync_master
|
||||
commands:
|
||||
- apk add --no-cache sshpass
|
||||
- scripts/deploy.sh ftp1.webmakers.de $${RSYNC_USER} $${RSYNC_PASS}
|
||||
- apk add --no-cache sshpass
|
||||
- scripts/deploy.sh ftp1.webmakers.de $${RSYNC_USER} $${RSYNC_PASS}
|
||||
when:
|
||||
branch: [master]
|
||||
event: [push]
|
||||
|
||||
- name: deploy dev
|
||||
image: instrumentisto/rsync-ssh
|
||||
pull: if-not-exists
|
||||
environment:
|
||||
RSYNC_USER: USER_PROJECT_dev
|
||||
RSYNC_PASS:
|
||||
from_secret: rsync_dev
|
||||
commands:
|
||||
- apk add --no-cache sshpass
|
||||
- scripts/deploy.sh ftp1.webmakers.de $${RSYNC_USER} $${RSYNC_PASS}
|
||||
- apk add --no-cache sshpass
|
||||
- scripts/deploy.sh ftp1.webmakers.de $${RSYNC_USER} $${RSYNC_PASS}
|
||||
when:
|
||||
branch: [dev]
|
||||
event: [push]
|
||||
|
||||
- name: prepare notify
|
||||
image: cypress/base
|
||||
pull: if-not-exists
|
||||
commands:
|
||||
- find cypress -type f -wholename "cypress/videos/*" -or -wholename "cypress/screenshots/*" | tar -cvf cypress-media.tar -T -
|
||||
when:
|
||||
status:
|
||||
- failure
|
||||
|
||||
- name: notify
|
||||
image: drillster/drone-email
|
||||
pull: if-not-exists
|
||||
settings:
|
||||
from: noreply@ci.gitbase.de
|
||||
host: smtp.basehosts.de
|
||||
attachment: cypress-media.tar
|
||||
when:
|
||||
status:
|
||||
- failure
|
||||
|
||||
volumes:
|
||||
- name: cache
|
||||
host:
|
||||
path: /tmp/cache/drone/${DRONE_REPO}
|
||||
|
6
.gitignore
vendored
6
.gitignore
vendored
@ -9,3 +9,9 @@ yarn-error.log
|
||||
/test.js
|
||||
/api/templates/spa.html
|
||||
/api/hooks/lib/app.server*
|
||||
cypress/_old
|
||||
cypress/videos
|
||||
cypress/screenshots
|
||||
.~lock.*
|
||||
coverage/
|
||||
.nyc_output/
|
||||
|
21
README.md
21
README.md
@ -16,12 +16,31 @@ Um die SSR-Last so gering wie möglich zu halten, wurde ein Caching in der "ssr"
|
||||
yarn install
|
||||
```
|
||||
|
||||
### Entwickeln
|
||||
### Entwickeln mit dev-Webserver
|
||||
|
||||
```sh
|
||||
yarn start
|
||||
```
|
||||
|
||||
oder mit abweichender API für "/api"-Proxy
|
||||
|
||||
```sh
|
||||
API_BASE=https://login.wmbasic.de/api/v1_/__NAMESPACE__ yarn start
|
||||
```
|
||||
|
||||
### Entwickeln mit externem Webserver (z.B. vscode live server)
|
||||
|
||||
```sh
|
||||
yarn dev
|
||||
```
|
||||
|
||||
### Testen
|
||||
|
||||
```sh
|
||||
yarn build:istanbul # instrumentiert Code für coverage-Report
|
||||
yarn cy:docker:run # oder mit Xserver und UI cy:docker:open
|
||||
```
|
||||
|
||||
### Bauen
|
||||
|
||||
```sh
|
||||
|
12
cypress.json
Normal file
12
cypress.json
Normal file
@ -0,0 +1,12 @@
|
||||
{
|
||||
"baseUrl": "http://localhost:3000",
|
||||
"env": {
|
||||
"mongodbUri": "mongodb://localhost",
|
||||
"wmbasicApiUrl": "http://localhost:8080/api/v1",
|
||||
"wmbasicDbPrefix": "wmbasic",
|
||||
"wmbasicUsername": "admin",
|
||||
"wmbasicPassword": "admin",
|
||||
"projectApiConfig": "./api/config.yml",
|
||||
"projectApiNamespace": "cypress_test"
|
||||
}
|
||||
}
|
5
cypress/fixtures/example.json
Normal file
5
cypress/fixtures/example.json
Normal file
@ -0,0 +1,5 @@
|
||||
{
|
||||
"name": "Using fixtures to represent data",
|
||||
"email": "hello@cypress.io",
|
||||
"body": "Fixtures are a great way to mock data for responses to routes"
|
||||
}
|
22
cypress/integration/0-renz-einfo/demo.spec.js
Normal file
22
cypress/integration/0-renz-einfo/demo.spec.js
Normal file
@ -0,0 +1,22 @@
|
||||
/// <reference types="cypress" />
|
||||
|
||||
const { before } = require("../../support")
|
||||
|
||||
// @ts-check
|
||||
|
||||
describe("renz einfo auth", () => {
|
||||
beforeEach(() => {
|
||||
before()
|
||||
})
|
||||
|
||||
afterEach(function () {
|
||||
if (this.currentTest.state === "failed") {
|
||||
cy.setCookie("shouldSkip", "true")
|
||||
Cypress.runner.stop()
|
||||
}
|
||||
})
|
||||
|
||||
it("can visit homepage", () => {
|
||||
cy.visit("/")
|
||||
})
|
||||
})
|
124
cypress/plugins/index.js
Normal file
124
cypress/plugins/index.js
Normal file
@ -0,0 +1,124 @@
|
||||
/// <reference types="cypress" />
|
||||
// @ts-check
|
||||
|
||||
const { default: axios } = require("axios")
|
||||
const { MongoClient } = require("mongodb")
|
||||
const fs = require("fs")
|
||||
const util = require("util")
|
||||
|
||||
// ***********************************************************
|
||||
// This example plugins/index.js can be used to load plugins
|
||||
//
|
||||
// You can change the location of this file or turn off loading
|
||||
// the plugins file with the 'pluginsFile' configuration option.
|
||||
//
|
||||
// You can read more here:
|
||||
// https://on.cypress.io/plugins-guide
|
||||
// ***********************************************************
|
||||
|
||||
// This function is called when a project is opened or re-opened (e.g. due to
|
||||
// the project's config changing)
|
||||
|
||||
function logObj(o) {
|
||||
console.log(util.inspect(o, false, null, true /* enable colors */))
|
||||
}
|
||||
|
||||
/**
|
||||
* @type {Cypress.PluginConfig}
|
||||
*/
|
||||
// eslint-disable-next-line no-unused-vars
|
||||
module.exports = (on, config) => {
|
||||
require("cypress-terminal-report/src/installLogsPrinter")(on, {
|
||||
printLogsToConsole: "always",
|
||||
includeSuccessfulHookLogs: true,
|
||||
})
|
||||
|
||||
const registerCodeCoverageTask = require("@cypress/code-coverage/task")
|
||||
|
||||
// `on` is used to hook into various events Cypress emits
|
||||
// `config` is the resolved Cypress config
|
||||
on("before:run", async (details) => {
|
||||
/*
|
||||
if (details.specs && details.browser) {
|
||||
// details.specs and details.browser will be undefined in interactive mode
|
||||
console.log(
|
||||
"Running",
|
||||
details.specs.length,
|
||||
"specs in",
|
||||
details.browser.name
|
||||
)
|
||||
}*/
|
||||
|
||||
if (config.env.CI) {
|
||||
// is continous integration test run, so initialize database
|
||||
console.log("CI RUN: init database")
|
||||
|
||||
const wmbasicDbPrefix = config.env.wmbasicDbPrefix
|
||||
const projectNamespace = config.env.projectApiNamespace
|
||||
|
||||
// drop database from tests before
|
||||
console.log(" - connecting to mongodb: " + config.env.mongodbUri)
|
||||
const dbClient = new MongoClient(config.env.mongodbUri)
|
||||
await dbClient.connect()
|
||||
console.log(" - removing project from wmbasic db")
|
||||
let db = dbClient.db(wmbasicDbPrefix)
|
||||
db.collection("project").deleteMany({ namespace: projectNamespace })
|
||||
|
||||
const dbName = wmbasicDbPrefix + "_" + projectNamespace
|
||||
console.log(" - dropping database: " + dbName)
|
||||
db = dbClient.db(dbName)
|
||||
await db.dropDatabase()
|
||||
|
||||
// login
|
||||
const apiUrl = config.env.wmbasicApiUrl
|
||||
const l = await axios.post(apiUrl + "/login", {
|
||||
username: config.env.wmbasicUsername,
|
||||
password: config.env.wmbasicPassword,
|
||||
})
|
||||
const wmbasicToken = l.data.token
|
||||
|
||||
// create project
|
||||
console.log(" - creating wmbasic project: " + projectNamespace)
|
||||
let project
|
||||
try {
|
||||
const p = await axios.post(
|
||||
apiUrl + "/project",
|
||||
{
|
||||
configFile: config.env.projectApiConfig,
|
||||
name: projectNamespace,
|
||||
namespace: projectNamespace,
|
||||
description: projectNamespace,
|
||||
},
|
||||
{
|
||||
headers: {
|
||||
"X-Auth-Token": wmbasicToken,
|
||||
},
|
||||
}
|
||||
)
|
||||
project = p.data
|
||||
} catch (e) {
|
||||
logObj(e)
|
||||
throw e
|
||||
}
|
||||
|
||||
console.log(" - checking project status: " + project.id)
|
||||
try {
|
||||
const p = await axios.get(apiUrl + "/project/" + project.id, {
|
||||
headers: {
|
||||
"X-Auth-Token": wmbasicToken,
|
||||
},
|
||||
})
|
||||
if (!p.data.api.isOnline) {
|
||||
throw p.data
|
||||
}
|
||||
} catch (e) {
|
||||
logObj(e)
|
||||
throw e
|
||||
}
|
||||
|
||||
// TODO fill wmbasic database with test data
|
||||
}
|
||||
})
|
||||
|
||||
return registerCodeCoverageTask(on, config)
|
||||
}
|
25
cypress/support/commands.js
Normal file
25
cypress/support/commands.js
Normal file
@ -0,0 +1,25 @@
|
||||
// ***********************************************
|
||||
// This example commands.js shows you how to
|
||||
// create various custom commands and overwrite
|
||||
// existing commands.
|
||||
//
|
||||
// For more comprehensive examples of custom
|
||||
// commands please read more here:
|
||||
// https://on.cypress.io/custom-commands
|
||||
// ***********************************************
|
||||
//
|
||||
//
|
||||
// -- This is a parent command --
|
||||
// Cypress.Commands.add('login', (email, password) => { ... })
|
||||
//
|
||||
//
|
||||
// -- This is a child command --
|
||||
// Cypress.Commands.add('drag', { prevSubject: 'element'}, (subject, options) => { ... })
|
||||
//
|
||||
//
|
||||
// -- This is a dual command --
|
||||
// Cypress.Commands.add('dismiss', { prevSubject: 'optional'}, (subject, options) => { ... })
|
||||
//
|
||||
//
|
||||
// -- This will overwrite an existing command --
|
||||
// Cypress.Commands.overwrite('visit', (originalFn, url, options) => { ... })
|
41
cypress/support/index.js
Normal file
41
cypress/support/index.js
Normal file
@ -0,0 +1,41 @@
|
||||
// ***********************************************************
|
||||
// This example support/index.js is processed and
|
||||
// loaded automatically before your test files.
|
||||
//
|
||||
// This is a great place to put global configuration and
|
||||
// behavior that modifies Cypress.
|
||||
//
|
||||
// You can change the location of this file or turn off
|
||||
// automatically serving support files with the
|
||||
// 'supportFile' configuration option.
|
||||
//
|
||||
// You can read more here:
|
||||
// https://on.cypress.io/configuration
|
||||
// ***********************************************************
|
||||
|
||||
// Import commands.js using ES2015 syntax:
|
||||
import "./commands"
|
||||
|
||||
import installLogsCollector from "cypress-terminal-report/src/installLogsCollector"
|
||||
installLogsCollector()
|
||||
|
||||
import "@cypress/code-coverage/support"
|
||||
|
||||
// Alternatively you can use CommonJS syntax:
|
||||
// require('./commands')
|
||||
|
||||
export const before = () => {
|
||||
if (Cypress.browser.isHeaded) {
|
||||
cy.clearCookie("shouldSkip")
|
||||
} else {
|
||||
cy.getCookie("shouldSkip").then((cookie) => {
|
||||
if (
|
||||
cookie &&
|
||||
typeof cookie === "object" &&
|
||||
cookie.value === "true"
|
||||
) {
|
||||
Cypress.runner.stop()
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
62
docker-compose.cypress.yml
Normal file
62
docker-compose.cypress.yml
Normal file
@ -0,0 +1,62 @@
|
||||
version: "3.9"
|
||||
|
||||
services:
|
||||
maildev:
|
||||
image: maildev/maildev
|
||||
command:
|
||||
[
|
||||
node,
|
||||
bin/maildev,
|
||||
--web,
|
||||
"80",
|
||||
--smtp,
|
||||
"25",
|
||||
-v,
|
||||
--hide-extensions=STARTTLS,
|
||||
]
|
||||
|
||||
mongo:
|
||||
image: mongo
|
||||
|
||||
wmbasic-api:
|
||||
image: registry.webmakers.de/wmbasic/wmbasic-api
|
||||
environment:
|
||||
DB_DIAL: mongodb://mongo
|
||||
API_PORT: 8080
|
||||
MAIL_HOST: maildev:25
|
||||
depends_on:
|
||||
- maildev
|
||||
- mongo
|
||||
volumes:
|
||||
- ./:/workdir
|
||||
|
||||
liveserver:
|
||||
image: node
|
||||
command: yarn run -- live-server --no-browser --port=80 --ignore='*' --entry-file=spa.html --no-css-inject --proxy=/api:http://wmbasic-api:8080/api/v1/_/einfo_test dist
|
||||
depends_on:
|
||||
- wmbasic-api
|
||||
volumes:
|
||||
- ./:/workdir
|
||||
working_dir: /workdir
|
||||
|
||||
cypress:
|
||||
#image: cypress/base
|
||||
image: cypress/browsers:node14.17.0-chrome91-ff89
|
||||
environment:
|
||||
FORCE_COLOR: "true"
|
||||
CYPRESS_BASE_URL: http://liveserver
|
||||
CYPRESS_CI: "true"
|
||||
CYPRESS_mongodbUri: mongodb://mongo
|
||||
CYPRESS_wmbasicApiUrl: http://wmbasic-api:8080/api/v1
|
||||
CYPRESS_projectApiConfig: /workdir/api/config.yml
|
||||
DISPLAY: host.docker.internal:0.0
|
||||
LIBGL_ALWAYS_INDIRECT: 1
|
||||
command: sh ./scripts/cy-command.docker.sh $CY_COMMAND
|
||||
#command: yarn cy:$CY_COMMAND
|
||||
depends_on:
|
||||
- liveserver
|
||||
volumes:
|
||||
- ./:/workdir
|
||||
- ~/.cache:/home/node/.cache
|
||||
working_dir: /workdir
|
||||
user: $CURRENT_UID
|
@ -64,6 +64,7 @@
|
||||
"babel-plugin-istanbul": "^6.0.0",
|
||||
"cypress": "^8.3.1",
|
||||
"cypress-terminal-report": "^3.3.2",
|
||||
"live-server": "^1.2.1",
|
||||
"mongodb": "^4.1.1"
|
||||
}
|
||||
}
|
||||
|
@ -1,7 +1,10 @@
|
||||
#!/bin/sh
|
||||
|
||||
export DISPLAY=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2; exit;}'):0.0
|
||||
export DISPLAY=host.docker.internal:0.0
|
||||
#export DISPLAY=$(cat /etc/resolv.conf | grep nameserver | awk '{print $2; exit;}'):0.0
|
||||
#export DISPLAY=host.docker.internal:0.0
|
||||
rm -r coverage
|
||||
rm -r .nyc_output
|
||||
yarn build:instanbul
|
||||
echo DISPLAY: $DISPLAY
|
||||
yarn cy:$1
|
||||
|
||||
|
@ -2,7 +2,6 @@
|
||||
|
||||
branch=$1
|
||||
url=$2
|
||||
paypal=sandbox
|
||||
|
||||
if [ "$branch" == "" ]; then
|
||||
echo missing branch name
|
||||
@ -24,12 +23,15 @@ sed -i 's#\(pppReturnURL:\).*#pppReturnURL:"'$url'/checkout/overview\?type=paypa
|
||||
sed -i 's#\(pppCancelURL:\).*#pppCancelURL:"'$url'/checkout/payment\?type=paypal",#g' api/hooks/config.js
|
||||
sed -i 's#\(var paypalMode *=\).*#var paypalMode = "'$paypal'"#g' api/hooks/config.js
|
||||
cat api/hooks/config.js
|
||||
sed -i 's#\(apiBaseURL.*\)"http.*"#\1"'$url'/api/"#g' src/config.ts
|
||||
sed -i 's#\(sentryEnvironment.*\)".*"#\1"'$branch'"#g' src/config.ts
|
||||
|
||||
if [ "$branch" == "master" || "$branch" == "dev" ]; then
|
||||
if [[ "$branch" == "master" || "$branch" == "dev" ]]; then
|
||||
sed -i 's#//\( sentry\\.init.*\)#\1#g' src/config.ts
|
||||
fi
|
||||
|
||||
|
||||
cat src/config.ts
|
||||
|
||||
if [ "$branch" != "master" ]; then
|
||||
sed -i 's#\(namespace:.*\)#\1_'$branch'#g' api/config.yml
|
||||
cat api/config.yml
|
||||
fi
|
||||
|
@ -1,10 +1,10 @@
|
||||
{
|
||||
"extends": "@tsconfig/svelte/tsconfig.json",
|
||||
|
||||
"include": ["src/**/*", "types/**/*"],
|
||||
"include": ["src/**/*", "types/**/*", "wmbasic-api-types", "api/**/*"],
|
||||
"compilerOptions": {
|
||||
"module": "esnext",
|
||||
"typeRoots": ["./node_modules/@types", "./types", "wmbasic-api-types"],
|
||||
"typeRoots": ["./node_modules/@types", "./types"],
|
||||
|
||||
"target": "esnext",
|
||||
"moduleResolution": "node",
|
||||
@ -15,6 +15,9 @@
|
||||
"resolveJsonModule": true,
|
||||
"useDefineForClassFields": true,
|
||||
"allowSyntheticDefaultImports": true,
|
||||
"importsNotUsedAsValues": "error"
|
||||
"importsNotUsedAsValues": "error",
|
||||
|
||||
"allowJs": true,
|
||||
"checkJs": true
|
||||
}
|
||||
}
|
||||
|
176
yarn.lock
176
yarn.lock
@ -1644,6 +1644,18 @@ anymatch@~3.1.2:
|
||||
normalize-path "^3.0.0"
|
||||
picomatch "^2.0.4"
|
||||
|
||||
apache-crypt@^1.1.2:
|
||||
version "1.2.5"
|
||||
resolved "https://registry.yarnpkg.com/apache-crypt/-/apache-crypt-1.2.5.tgz#4eb6b6dbaed2041ce5bc2d802f4421f5fdadc25e"
|
||||
integrity sha512-ICnYQH+DFVmw+S4Q0QY2XRXD8Ne8ewh8HgbuFH4K7022zCxgHM0Hz1xkRnUlEfAXNbwp1Cnhbedu60USIfDxvg==
|
||||
dependencies:
|
||||
unix-crypt-td-js "^1.1.4"
|
||||
|
||||
apache-md5@^1.0.6:
|
||||
version "1.1.7"
|
||||
resolved "https://registry.yarnpkg.com/apache-md5/-/apache-md5-1.1.7.tgz#dcef1802700cc231d60c5e08fd088f2f9b36375a"
|
||||
integrity sha512-JtHjzZmJxtzfTSjsCyHgPR155HBe5WGyUyHTaEkfy46qhwCFKx1Epm6nAxgUG3WfUZP1dWhGqj9Z2NOBeZ+uBw==
|
||||
|
||||
append-transform@^2.0.0:
|
||||
version "2.0.0"
|
||||
resolved "https://registry.yarnpkg.com/append-transform/-/append-transform-2.0.0.tgz#99d9d29c7b38391e6f428d28ce136551f0b77e12"
|
||||
@ -1930,6 +1942,11 @@ bcrypt-pbkdf@^1.0.0:
|
||||
dependencies:
|
||||
tweetnacl "^0.14.3"
|
||||
|
||||
bcryptjs@^2.3.0:
|
||||
version "2.4.3"
|
||||
resolved "https://registry.yarnpkg.com/bcryptjs/-/bcryptjs-2.4.3.tgz#9ab5627b93e60621ff7cdac5da9733027df1d0cb"
|
||||
integrity sha1-mrVie5PmBiH/fNrF2pczAn3x0Ms=
|
||||
|
||||
binary-extensions@^1.0.0:
|
||||
version "1.13.1"
|
||||
resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-1.13.1.tgz#598afe54755b2868a5330d2aff9d4ebb53209b65"
|
||||
@ -2659,7 +2676,7 @@ colorette@^1.3.0:
|
||||
resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.4.0.tgz#5190fbb87276259a86ad700bff2c6d6faa3fca40"
|
||||
integrity sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==
|
||||
|
||||
colors@^1.1.2:
|
||||
colors@^1.1.2, colors@latest:
|
||||
version "1.4.0"
|
||||
resolved "https://registry.yarnpkg.com/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78"
|
||||
integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==
|
||||
@ -2756,6 +2773,16 @@ connect@3.6.6:
|
||||
parseurl "~1.3.2"
|
||||
utils-merge "1.0.1"
|
||||
|
||||
connect@^3.6.6:
|
||||
version "3.7.0"
|
||||
resolved "https://registry.yarnpkg.com/connect/-/connect-3.7.0.tgz#5d49348910caa5e07a01800b030d0c35f20484f8"
|
||||
integrity sha512-ZqRXc+tZukToSNmh5C2iWMSoV3X1YUcPbqEM4DkEG5tNQXrQUZCNVGGv3IuicnkMtPfGf3Xtp8WCXs295iQ1pQ==
|
||||
dependencies:
|
||||
debug "2.6.9"
|
||||
finalhandler "1.1.2"
|
||||
parseurl "~1.3.3"
|
||||
utils-merge "1.0.1"
|
||||
|
||||
console-browserify@^1.1.0:
|
||||
version "1.2.0"
|
||||
resolved "https://registry.yarnpkg.com/console-browserify/-/console-browserify-1.2.0.tgz#67063cef57ceb6cf4993a2ab3a55840ae8c49336"
|
||||
@ -2847,6 +2874,14 @@ core-util-is@1.0.2, core-util-is@~1.0.0:
|
||||
resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
|
||||
integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=
|
||||
|
||||
cors@latest:
|
||||
version "2.8.5"
|
||||
resolved "https://registry.yarnpkg.com/cors/-/cors-2.8.5.tgz#eac11da51592dd86b9f06f6e7ac293b3df875d29"
|
||||
integrity sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==
|
||||
dependencies:
|
||||
object-assign "^4"
|
||||
vary "^1"
|
||||
|
||||
create-ecdh@^4.0.0:
|
||||
version "4.0.4"
|
||||
resolved "https://registry.yarnpkg.com/create-ecdh/-/create-ecdh-4.0.4.tgz#d6e7f4bffa66736085a0762fd3a632684dabcc4e"
|
||||
@ -3205,6 +3240,11 @@ duplexer2@^0.1.2, duplexer2@~0.1.0, duplexer2@~0.1.2:
|
||||
dependencies:
|
||||
readable-stream "^2.0.2"
|
||||
|
||||
duplexer@~0.1.1:
|
||||
version "0.1.2"
|
||||
resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6"
|
||||
integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==
|
||||
|
||||
easy-extender@^2.3.4:
|
||||
version "2.3.4"
|
||||
resolved "https://registry.yarnpkg.com/easy-extender/-/easy-extender-2.3.4.tgz#298789b64f9aaba62169c77a2b3b64b4c9589b8f"
|
||||
@ -3407,6 +3447,19 @@ etag@1.8.1, etag@^1.8.1, etag@~1.8.1:
|
||||
resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887"
|
||||
integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=
|
||||
|
||||
event-stream@3.3.4:
|
||||
version "3.3.4"
|
||||
resolved "https://registry.yarnpkg.com/event-stream/-/event-stream-3.3.4.tgz#4ab4c9a0f5a54db9338b4c34d86bfce8f4b35571"
|
||||
integrity sha1-SrTJoPWlTbkzi0w02Gv86PSzVXE=
|
||||
dependencies:
|
||||
duplexer "~0.1.1"
|
||||
from "~0"
|
||||
map-stream "~0.1.0"
|
||||
pause-stream "0.0.11"
|
||||
split "0.3"
|
||||
stream-combiner "~0.0.4"
|
||||
through "~2.3.1"
|
||||
|
||||
eventemitter2@^6.4.3:
|
||||
version "6.4.4"
|
||||
resolved "https://registry.yarnpkg.com/eventemitter2/-/eventemitter2-6.4.4.tgz#aa96e8275c4dbeb017a5d0e03780c65612a1202b"
|
||||
@ -3604,6 +3657,13 @@ fastq@^1.6.0:
|
||||
dependencies:
|
||||
reusify "^1.0.4"
|
||||
|
||||
faye-websocket@0.11.x:
|
||||
version "0.11.4"
|
||||
resolved "https://registry.yarnpkg.com/faye-websocket/-/faye-websocket-0.11.4.tgz#7f0d9275cfdd86a1c963dc8b65fcc451edcbb1da"
|
||||
integrity sha512-CzbClwlXAuiRQAlUyfqPgvPoNKTckTPGfwZV4ZdAhVcP2lh9KUxJg2b5GkE7XbjKQ3YJnQ9z6D9ntLAlB+tP8g==
|
||||
dependencies:
|
||||
websocket-driver ">=0.5.1"
|
||||
|
||||
fd-slicer@~1.1.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.1.0.tgz#25c7c89cb1f9077f8891bbe61d8f390eae256f1e"
|
||||
@ -3653,7 +3713,7 @@ finalhandler@1.1.0:
|
||||
statuses "~1.3.1"
|
||||
unpipe "~1.0.0"
|
||||
|
||||
finalhandler@~1.1.2:
|
||||
finalhandler@1.1.2, finalhandler@~1.1.2:
|
||||
version "1.1.2"
|
||||
resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.2.tgz#b7e7d000ffd11938d0fdb053506f6ebabe9f587d"
|
||||
integrity sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==
|
||||
@ -3737,6 +3797,11 @@ fresh@0.5.2, fresh@^0.5.2:
|
||||
resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7"
|
||||
integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=
|
||||
|
||||
from@~0:
|
||||
version "0.1.7"
|
||||
resolved "https://registry.yarnpkg.com/from/-/from-0.1.7.tgz#83c60afc58b9c56997007ed1a768b3ab303a44fe"
|
||||
integrity sha1-g8YK/Fi5xWmXAH7Rp2izqzA6RP4=
|
||||
|
||||
fromentries@^1.2.0:
|
||||
version "1.3.2"
|
||||
resolved "https://registry.yarnpkg.com/fromentries/-/fromentries-1.3.2.tgz#e4bca6808816bf8f93b52750f1127f5a6fd86e3a"
|
||||
@ -4063,6 +4128,16 @@ htmlescape@^1.1.0:
|
||||
resolved "https://registry.yarnpkg.com/htmlescape/-/htmlescape-1.1.1.tgz#3a03edc2214bca3b66424a3e7959349509cb0351"
|
||||
integrity sha1-OgPtwiFLyjtmQko+eVk0lQnLA1E=
|
||||
|
||||
http-auth@3.1.x:
|
||||
version "3.1.3"
|
||||
resolved "https://registry.yarnpkg.com/http-auth/-/http-auth-3.1.3.tgz#945cfadd66521eaf8f7c84913d377d7b15f24e31"
|
||||
integrity sha1-lFz63WZSHq+PfISRPTd9exXyTjE=
|
||||
dependencies:
|
||||
apache-crypt "^1.1.2"
|
||||
apache-md5 "^1.0.6"
|
||||
bcryptjs "^2.3.0"
|
||||
uuid "^3.0.0"
|
||||
|
||||
http-errors@1.7.2:
|
||||
version "1.7.2"
|
||||
resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.2.tgz#4f5029cf13239f31036e5b2e55292bcfbcc85c8f"
|
||||
@ -4095,6 +4170,11 @@ http-errors@~1.6.2:
|
||||
setprototypeof "1.1.0"
|
||||
statuses ">= 1.4.0 < 2"
|
||||
|
||||
http-parser-js@>=0.5.1:
|
||||
version "0.5.3"
|
||||
resolved "https://registry.yarnpkg.com/http-parser-js/-/http-parser-js-0.5.3.tgz#01d2709c79d41698bb01d4decc5e9da4e4a033d9"
|
||||
integrity sha512-t7hjvef/5HEK7RWTdUzVUhl8zkEu+LlaE0IYzdMuvbSDipxBRpOn4Uhw8ZyECEa808iVT8XCjzo6xmYt4CiLZg==
|
||||
|
||||
http-proxy-middleware@^0.18.0:
|
||||
version "0.18.0"
|
||||
resolved "https://registry.yarnpkg.com/http-proxy-middleware/-/http-proxy-middleware-0.18.0.tgz#0987e6bb5a5606e5a69168d8f967a87f15dd8aab"
|
||||
@ -4762,6 +4842,25 @@ listr2@^3.8.3:
|
||||
through "^2.3.8"
|
||||
wrap-ansi "^7.0.0"
|
||||
|
||||
live-server@^1.2.1:
|
||||
version "1.2.1"
|
||||
resolved "https://registry.yarnpkg.com/live-server/-/live-server-1.2.1.tgz#670630dd409d22fe9c513ab1c1894686c757153e"
|
||||
integrity sha512-Yn2XCVjErTkqnM3FfTmM7/kWy3zP7+cEtC7x6u+wUzlQ+1UW3zEYbbyJrc0jNDwiMDZI0m4a0i3dxlGHVyXczw==
|
||||
dependencies:
|
||||
chokidar "^2.0.4"
|
||||
colors latest
|
||||
connect "^3.6.6"
|
||||
cors latest
|
||||
event-stream "3.3.4"
|
||||
faye-websocket "0.11.x"
|
||||
http-auth "3.1.x"
|
||||
morgan "^1.9.1"
|
||||
object-assign latest
|
||||
opn latest
|
||||
proxy-middleware latest
|
||||
send latest
|
||||
serve-index "^1.9.1"
|
||||
|
||||
localtunnel@^2.0.1:
|
||||
version "2.0.1"
|
||||
resolved "https://registry.yarnpkg.com/localtunnel/-/localtunnel-2.0.1.tgz#8f7c593f3005647f7675e6e69af9bf746571a631"
|
||||
@ -4885,6 +4984,11 @@ map-cache@^0.2.2:
|
||||
resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf"
|
||||
integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8=
|
||||
|
||||
map-stream@~0.1.0:
|
||||
version "0.1.0"
|
||||
resolved "https://registry.yarnpkg.com/map-stream/-/map-stream-0.1.0.tgz#e56aa94c4c8055a16404a0674b78f215f7c8e194"
|
||||
integrity sha1-5WqpTEyAVaFkBKBnS3jyFffI4ZQ=
|
||||
|
||||
map-visit@^1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f"
|
||||
@ -5102,7 +5206,7 @@ mongodb@^4.1.1:
|
||||
optionalDependencies:
|
||||
saslprep "^1.0.0"
|
||||
|
||||
morgan@^1.10.0:
|
||||
morgan@^1.10.0, morgan@^1.9.1:
|
||||
version "1.10.0"
|
||||
resolved "https://registry.yarnpkg.com/morgan/-/morgan-1.10.0.tgz#091778abc1fc47cd3509824653dae1faab6b17d7"
|
||||
integrity sha512-AbegBVI4sh6El+1gNwvD5YIck7nSA36weD7xvIxG4in80j/UoK8AEGaWnnz8v1GxonMCltmlNs5ZKbGvl9b1XQ==
|
||||
@ -5266,7 +5370,7 @@ oauth-sign@~0.9.0:
|
||||
resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455"
|
||||
integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==
|
||||
|
||||
object-assign@^4.1.0, object-assign@^4.1.1:
|
||||
object-assign@^4, object-assign@^4.1.0, object-assign@^4.1.1, object-assign@latest:
|
||||
version "4.1.1"
|
||||
resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
|
||||
integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=
|
||||
@ -5347,6 +5451,13 @@ opn@5.3.0:
|
||||
dependencies:
|
||||
is-wsl "^1.1.0"
|
||||
|
||||
opn@latest:
|
||||
version "6.0.0"
|
||||
resolved "https://registry.yarnpkg.com/opn/-/opn-6.0.0.tgz#3c5b0db676d5f97da1233d1ed42d182bc5a27d2d"
|
||||
integrity sha512-I9PKfIZC+e4RXZ/qr1RhgyCnGgYX0UEIlXgWnCOVACIvFgaC9rz6Won7xbdhoHrd8IIhV7YEpHjreNUNkqCGkQ==
|
||||
dependencies:
|
||||
is-wsl "^1.1.0"
|
||||
|
||||
optionator@^0.8.1:
|
||||
version "0.8.3"
|
||||
resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495"
|
||||
@ -5532,6 +5643,13 @@ path-type@^4.0.0:
|
||||
resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b"
|
||||
integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==
|
||||
|
||||
pause-stream@0.0.11:
|
||||
version "0.0.11"
|
||||
resolved "https://registry.yarnpkg.com/pause-stream/-/pause-stream-0.0.11.tgz#fe5a34b0cbce12b5aa6a2b403ee2e73b602f1445"
|
||||
integrity sha1-/lo0sMvOErWqaitAPuLnO2AvFEU=
|
||||
dependencies:
|
||||
through "~2.3"
|
||||
|
||||
pbkdf2@^3.0.3:
|
||||
version "3.1.2"
|
||||
resolved "https://registry.yarnpkg.com/pbkdf2/-/pbkdf2-3.1.2.tgz#dd822aa0887580e52f1a039dc3eda108efae3075"
|
||||
@ -5676,6 +5794,11 @@ proxy-from-env@^1.0.0:
|
||||
resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2"
|
||||
integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==
|
||||
|
||||
proxy-middleware@latest:
|
||||
version "0.15.0"
|
||||
resolved "https://registry.yarnpkg.com/proxy-middleware/-/proxy-middleware-0.15.0.tgz#a3fdf1befb730f951965872ac2f6074c61477a56"
|
||||
integrity sha1-o/3xvvtzD5UZZYcqwvYHTGFHelY=
|
||||
|
||||
prr@~1.0.1:
|
||||
version "1.0.1"
|
||||
resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476"
|
||||
@ -6123,7 +6246,7 @@ safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1:
|
||||
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
|
||||
integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
|
||||
|
||||
safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@~5.2.0:
|
||||
safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@~5.2.0:
|
||||
version "5.2.1"
|
||||
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
|
||||
integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
|
||||
@ -6210,7 +6333,7 @@ send@0.16.2:
|
||||
range-parser "~1.2.0"
|
||||
statuses "~1.4.0"
|
||||
|
||||
send@0.17.1:
|
||||
send@0.17.1, send@latest:
|
||||
version "0.17.1"
|
||||
resolved "https://registry.yarnpkg.com/send/-/send-0.17.1.tgz#c1d8b059f7900f7466dd4938bdc44e11ddb376c8"
|
||||
integrity sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==
|
||||
@ -6229,7 +6352,7 @@ send@0.17.1:
|
||||
range-parser "~1.2.1"
|
||||
statuses "~1.5.0"
|
||||
|
||||
serve-index@1.9.1:
|
||||
serve-index@1.9.1, serve-index@^1.9.1:
|
||||
version "1.9.1"
|
||||
resolved "https://registry.yarnpkg.com/serve-index/-/serve-index-1.9.1.tgz#d3768d69b1e7d82e5ce050fff5b453bea12a9239"
|
||||
integrity sha1-03aNabHn2C5c4FD/9bRTvqEqkjk=
|
||||
@ -6529,6 +6652,13 @@ split-string@^3.0.1, split-string@^3.0.2:
|
||||
dependencies:
|
||||
extend-shallow "^3.0.0"
|
||||
|
||||
split@0.3:
|
||||
version "0.3.3"
|
||||
resolved "https://registry.yarnpkg.com/split/-/split-0.3.3.tgz#cd0eea5e63a211dfff7eb0f091c4133e2d0dd28f"
|
||||
integrity sha1-zQ7qXmOiEd//frDwkcQTPi0N0o8=
|
||||
dependencies:
|
||||
through "2"
|
||||
|
||||
sprintf-js@~1.0.2:
|
||||
version "1.0.3"
|
||||
resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c"
|
||||
@ -6593,6 +6723,13 @@ stream-combiner2@^1.1.1:
|
||||
duplexer2 "~0.1.0"
|
||||
readable-stream "^2.0.2"
|
||||
|
||||
stream-combiner@~0.0.4:
|
||||
version "0.0.4"
|
||||
resolved "https://registry.yarnpkg.com/stream-combiner/-/stream-combiner-0.0.4.tgz#4d5e433c185261dde623ca3f44c586bcf5c4ad14"
|
||||
integrity sha1-TV5DPBhSYd3mI8o/RMWGvPXErRQ=
|
||||
dependencies:
|
||||
duplexer "~0.1.1"
|
||||
|
||||
stream-http@^2.0.0:
|
||||
version "2.8.3"
|
||||
resolved "https://registry.yarnpkg.com/stream-http/-/stream-http-2.8.3.tgz#b2d242469288a5a27ec4fe8933acf623de6514fc"
|
||||
@ -6838,7 +6975,7 @@ through2@^2.0.0:
|
||||
readable-stream "~2.3.6"
|
||||
xtend "~4.0.1"
|
||||
|
||||
"through@>=2.2.7 <3", through@^2.3.8:
|
||||
through@2, "through@>=2.2.7 <3", through@^2.3.8, through@~2.3, through@~2.3.1:
|
||||
version "2.3.8"
|
||||
resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5"
|
||||
integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=
|
||||
@ -7084,6 +7221,11 @@ universalify@^2.0.0:
|
||||
resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717"
|
||||
integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==
|
||||
|
||||
unix-crypt-td-js@^1.1.4:
|
||||
version "1.1.4"
|
||||
resolved "https://registry.yarnpkg.com/unix-crypt-td-js/-/unix-crypt-td-js-1.1.4.tgz#4912dfad1c8aeb7d20fa0a39e4c31918c1d5d5dd"
|
||||
integrity sha512-8rMeVYWSIyccIJscb9NdCfZKSRBKYTeVnwmiRYT2ulE3qd1RaDQ0xQDP+rI3ccIWbhu/zuo5cgN8z73belNZgw==
|
||||
|
||||
unpipe@1.0.0, unpipe@~1.0.0:
|
||||
version "1.0.0"
|
||||
resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec"
|
||||
@ -7156,7 +7298,7 @@ utils-merge@1.0.1:
|
||||
resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713"
|
||||
integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=
|
||||
|
||||
uuid@^3.3.2, uuid@^3.3.3:
|
||||
uuid@^3.0.0, uuid@^3.3.2, uuid@^3.3.3:
|
||||
version "3.4.0"
|
||||
resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee"
|
||||
integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==
|
||||
@ -7166,7 +7308,7 @@ uuid@^8.3.2:
|
||||
resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2"
|
||||
integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==
|
||||
|
||||
vary@~1.1.2:
|
||||
vary@^1, vary@~1.1.2:
|
||||
version "1.1.2"
|
||||
resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc"
|
||||
integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=
|
||||
@ -7215,6 +7357,20 @@ webidl-conversions@^6.1.0:
|
||||
resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514"
|
||||
integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w==
|
||||
|
||||
websocket-driver@>=0.5.1:
|
||||
version "0.7.4"
|
||||
resolved "https://registry.yarnpkg.com/websocket-driver/-/websocket-driver-0.7.4.tgz#89ad5295bbf64b480abcba31e4953aca706f5760"
|
||||
integrity sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==
|
||||
dependencies:
|
||||
http-parser-js ">=0.5.1"
|
||||
safe-buffer ">=5.1.0"
|
||||
websocket-extensions ">=0.1.1"
|
||||
|
||||
websocket-extensions@>=0.1.1:
|
||||
version "0.1.4"
|
||||
resolved "https://registry.yarnpkg.com/websocket-extensions/-/websocket-extensions-0.1.4.tgz#7f8473bc839dfd87608adb95d7eb075211578a42"
|
||||
integrity sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==
|
||||
|
||||
whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.3:
|
||||
version "1.0.5"
|
||||
resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0"
|
||||
|
Loading…
Reference in New Issue
Block a user