mirror of
https://github.com/LukeHagar/vercel.git
synced 2025-12-08 21:07:46 +00:00
[redwoood] Add runtime @vercel/redwood (#4676)
### Changes - Add new Runtime: `@vercel/redwood` - Update `run.js` script to sort packages properly ### Related - Related to #4539 - Related to #4535 - Depends on https://github.com/apollographql/apollo-server/pull/4311
This commit is contained in:
@@ -34,3 +34,6 @@ packages/now-node-bridge/bridge.*
|
|||||||
|
|
||||||
# now-static-build
|
# now-static-build
|
||||||
packages/now-static-build/test/fixtures
|
packages/now-static-build/test/fixtures
|
||||||
|
|
||||||
|
# redwood
|
||||||
|
packages/redwood/test/fixtures
|
||||||
|
|||||||
@@ -15,7 +15,9 @@ async function readFileOrNull(file: string) {
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
export async function readConfigFile<T>(files: string | string[]) {
|
export async function readConfigFile<T>(
|
||||||
|
files: string | string[]
|
||||||
|
): Promise<T | null> {
|
||||||
files = Array.isArray(files) ? files : [files];
|
files = Array.isArray(files) ? files : [files];
|
||||||
|
|
||||||
for (const name of files) {
|
for (const name of files) {
|
||||||
@@ -24,11 +26,11 @@ export async function readConfigFile<T>(files: string | string[]) {
|
|||||||
if (data) {
|
if (data) {
|
||||||
const str = data.toString('utf8');
|
const str = data.toString('utf8');
|
||||||
if (name.endsWith('.json')) {
|
if (name.endsWith('.json')) {
|
||||||
return JSON.parse(str);
|
return JSON.parse(str) as T;
|
||||||
} else if (name.endsWith('.toml')) {
|
} else if (name.endsWith('.toml')) {
|
||||||
return (toml.parse(str) as unknown) as T;
|
return (toml.parse(str) as unknown) as T;
|
||||||
} else if (name.endsWith('.yaml') || name.endsWith('.yml')) {
|
} else if (name.endsWith('.yaml') || name.endsWith('.yml')) {
|
||||||
return yaml.safeLoad(str, { filename: name });
|
return yaml.safeLoad(str, { filename: name }) as T;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -67,6 +67,7 @@
|
|||||||
"@vercel/next": "2.6.14-canary.1",
|
"@vercel/next": "2.6.14-canary.1",
|
||||||
"@vercel/node": "1.7.4-canary.0",
|
"@vercel/node": "1.7.4-canary.0",
|
||||||
"@vercel/python": "1.2.2",
|
"@vercel/python": "1.2.2",
|
||||||
|
"@vercel/redwood": "0.0.1",
|
||||||
"@vercel/ruby": "1.2.3",
|
"@vercel/ruby": "1.2.3",
|
||||||
"@vercel/static-build": "0.17.7-canary.0",
|
"@vercel/static-build": "0.17.7-canary.0",
|
||||||
"update-notifier": "4.1.0"
|
"update-notifier": "4.1.0"
|
||||||
|
|||||||
@@ -542,7 +542,8 @@ const frameworkList: Framework[] = [
|
|||||||
slug: 'hugo',
|
slug: 'hugo',
|
||||||
buildCommand: 'hugo -D --gc',
|
buildCommand: 'hugo -D --gc',
|
||||||
getOutputDirName: async (dirPrefix: string): Promise<string> => {
|
getOutputDirName: async (dirPrefix: string): Promise<string> => {
|
||||||
const config = await readConfigFile(
|
type HugoConfig = { publishDir?: string };
|
||||||
|
const config = await readConfigFile<HugoConfig>(
|
||||||
['config.json', 'config.yaml', 'config.toml'].map(fileName => {
|
['config.json', 'config.yaml', 'config.toml'].map(fileName => {
|
||||||
return join(dirPrefix, fileName);
|
return join(dirPrefix, fileName);
|
||||||
})
|
})
|
||||||
@@ -556,7 +557,10 @@ const frameworkList: Framework[] = [
|
|||||||
slug: 'jekyll',
|
slug: 'jekyll',
|
||||||
buildCommand: 'jekyll build',
|
buildCommand: 'jekyll build',
|
||||||
getOutputDirName: async (dirPrefix: string): Promise<string> => {
|
getOutputDirName: async (dirPrefix: string): Promise<string> => {
|
||||||
const config = await readConfigFile(join(dirPrefix, '_config.yml'));
|
type JekyllConfig = { destination?: string };
|
||||||
|
const config = await readConfigFile<JekyllConfig>(
|
||||||
|
join(dirPrefix, '_config.yml')
|
||||||
|
);
|
||||||
return (config && config.destination) || '_site';
|
return (config && config.destination) || '_site';
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
3
packages/redwood/.gitignore
vendored
Normal file
3
packages/redwood/.gitignore
vendored
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
/dist
|
||||||
|
/src/bridge.ts
|
||||||
|
/src/launcher.ts
|
||||||
18
packages/redwood/build.sh
Executable file
18
packages/redwood/build.sh
Executable file
@@ -0,0 +1,18 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
# Copy shared dependencies
|
||||||
|
bridge_defs="$(dirname $(pwd))/now-node-bridge/src/bridge.ts"
|
||||||
|
launcher_defs="$(dirname $(pwd))/now-node/src/launcher.ts"
|
||||||
|
|
||||||
|
cp -v "$bridge_defs" src
|
||||||
|
cp -v "$launcher_defs" src
|
||||||
|
|
||||||
|
# Start fresh
|
||||||
|
rm -rf dist
|
||||||
|
|
||||||
|
## Build ts files
|
||||||
|
tsc
|
||||||
|
|
||||||
|
# Build with `ncc`
|
||||||
|
#ncc build src/index.ts -e @vercel/build-utils -e @now/build-utils -o dist
|
||||||
29
packages/redwood/package.json
Normal file
29
packages/redwood/package.json
Normal file
@@ -0,0 +1,29 @@
|
|||||||
|
{
|
||||||
|
"name": "@vercel/redwood",
|
||||||
|
"version": "0.0.1",
|
||||||
|
"main": "./dist/index.js",
|
||||||
|
"license": "MIT",
|
||||||
|
"homepage": "https://vercel.com/docs",
|
||||||
|
"files": [
|
||||||
|
"dist"
|
||||||
|
],
|
||||||
|
"repository": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/vercel/vercel.git",
|
||||||
|
"directory": "packages/redwood"
|
||||||
|
},
|
||||||
|
"scripts": {
|
||||||
|
"build": "./build.sh",
|
||||||
|
"test-integration-once": "jest --env node --verbose --runInBand --bail",
|
||||||
|
"prepublishOnly": "./build.sh"
|
||||||
|
},
|
||||||
|
"dependencies": {
|
||||||
|
"@netlify/zip-it-and-ship-it": "1.2.0",
|
||||||
|
"is-port-reachable": "3.0.0"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@types/aws-lambda": "8.10.19",
|
||||||
|
"@types/node": "*",
|
||||||
|
"typescript": "3.9.3"
|
||||||
|
}
|
||||||
|
}
|
||||||
228
packages/redwood/src/index.ts
Normal file
228
packages/redwood/src/index.ts
Normal file
@@ -0,0 +1,228 @@
|
|||||||
|
import { join, dirname, relative, parse as parsePath, sep } from 'path';
|
||||||
|
import { ChildProcess, SpawnOptions } from 'child_process';
|
||||||
|
import {
|
||||||
|
BuildOptions,
|
||||||
|
Lambda,
|
||||||
|
Files,
|
||||||
|
PrepareCacheOptions,
|
||||||
|
createLambda,
|
||||||
|
download,
|
||||||
|
glob,
|
||||||
|
debug,
|
||||||
|
getNodeVersion,
|
||||||
|
getSpawnOptions,
|
||||||
|
runNpmInstall,
|
||||||
|
execCommand,
|
||||||
|
spawnCommand,
|
||||||
|
readConfigFile,
|
||||||
|
FileBlob,
|
||||||
|
FileFsRef,
|
||||||
|
NowBuildError,
|
||||||
|
} from '@vercel/build-utils';
|
||||||
|
import { makeAwsLauncher } from './launcher';
|
||||||
|
const {
|
||||||
|
getDependencies,
|
||||||
|
// eslint-disable-next-line @typescript-eslint/no-var-requires
|
||||||
|
} = require('@netlify/zip-it-and-ship-it/src/dependencies.js');
|
||||||
|
//@ts-ignore
|
||||||
|
import isPortReachable from 'is-port-reachable';
|
||||||
|
|
||||||
|
interface RedwoodConfig {
|
||||||
|
web?: {
|
||||||
|
port?: number;
|
||||||
|
apiProxyPath?: string;
|
||||||
|
};
|
||||||
|
api?: {
|
||||||
|
port?: number;
|
||||||
|
};
|
||||||
|
browser?: {
|
||||||
|
open?: boolean;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
const LAUNCHER_FILENAME = '___vc_launcher';
|
||||||
|
const BRIDGE_FILENAME = '___vc_bridge';
|
||||||
|
const HELPERS_FILENAME = '___vc_helpers';
|
||||||
|
const SOURCEMAP_SUPPORT_FILENAME = '__vc_sourcemap_support';
|
||||||
|
|
||||||
|
const entrypointToPort = new Map<string, number>();
|
||||||
|
const childProcesses = new Set<ChildProcess>();
|
||||||
|
export const version = 2;
|
||||||
|
|
||||||
|
const sleep = (ms: number) => new Promise(resolve => setTimeout(resolve, ms));
|
||||||
|
|
||||||
|
async function waitForPort(port: number): Promise<boolean> {
|
||||||
|
for (let i = 0; i < 500; i++) {
|
||||||
|
if (await isPortReachable(port)) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
await sleep(100);
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
export async function build({
|
||||||
|
workPath,
|
||||||
|
files,
|
||||||
|
entrypoint,
|
||||||
|
meta = {},
|
||||||
|
config = {},
|
||||||
|
}: BuildOptions) {
|
||||||
|
await download(files, workPath, meta);
|
||||||
|
|
||||||
|
const mountpoint = dirname(entrypoint);
|
||||||
|
const entrypointFsDirname = join(workPath, mountpoint);
|
||||||
|
const nodeVersion = await getNodeVersion(
|
||||||
|
entrypointFsDirname,
|
||||||
|
undefined,
|
||||||
|
config,
|
||||||
|
meta
|
||||||
|
);
|
||||||
|
|
||||||
|
const spawnOpts = getSpawnOptions(meta, nodeVersion);
|
||||||
|
await runNpmInstall(
|
||||||
|
entrypointFsDirname,
|
||||||
|
['--prefer-offline'],
|
||||||
|
spawnOpts,
|
||||||
|
meta
|
||||||
|
);
|
||||||
|
|
||||||
|
const {
|
||||||
|
buildCommand = 'yarn rw db up --no-db-client --auto-approve && yarn rw build',
|
||||||
|
devCommand = 'yarn rw dev',
|
||||||
|
} = config;
|
||||||
|
|
||||||
|
if (meta.isDev) {
|
||||||
|
const toml = await readConfigFile<RedwoodConfig>(
|
||||||
|
join(mountpoint, 'redwood.toml')
|
||||||
|
);
|
||||||
|
const webPort = toml?.web?.port || 8910;
|
||||||
|
const apiPort = toml?.web?.port || 8911;
|
||||||
|
let devPort = entrypointToPort.get(entrypoint);
|
||||||
|
|
||||||
|
if (typeof devPort === 'number') {
|
||||||
|
debug('`%s` server already running for %j', devCommand, entrypoint);
|
||||||
|
} else {
|
||||||
|
devPort = webPort;
|
||||||
|
entrypointToPort.set(entrypoint, devPort);
|
||||||
|
|
||||||
|
const opts: SpawnOptions = {
|
||||||
|
cwd: mountpoint,
|
||||||
|
stdio: 'inherit',
|
||||||
|
env: { ...spawnOpts.env, PORT: String(devPort) },
|
||||||
|
};
|
||||||
|
|
||||||
|
const child = spawnCommand(devCommand, opts);
|
||||||
|
child.on('exit', () => entrypointToPort.delete(entrypoint));
|
||||||
|
childProcesses.add(child);
|
||||||
|
|
||||||
|
const found = await waitForPort(devPort);
|
||||||
|
if (!found) {
|
||||||
|
throw new NowBuildError({
|
||||||
|
code: 'REDWOOD_PORT_UNAVAILABLE',
|
||||||
|
message: `Failed to detect a server running on port ${devPort}`,
|
||||||
|
action: 'More Details',
|
||||||
|
link:
|
||||||
|
'https://err.sh/vercel/vercel/now-static-build-failed-to-detect-a-server',
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
debug('Detected dev server for %j', entrypoint);
|
||||||
|
}
|
||||||
|
|
||||||
|
let srcBase = mountpoint.replace(/^\.\/?/, '');
|
||||||
|
|
||||||
|
if (srcBase.length > 0) {
|
||||||
|
srcBase = `/${srcBase}`;
|
||||||
|
}
|
||||||
|
|
||||||
|
return {
|
||||||
|
routes: [
|
||||||
|
{
|
||||||
|
src: `${srcBase}/api/(.*)`,
|
||||||
|
dest: `http://localhost:${apiPort}/$1`,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
src: `${srcBase}/(.*)`,
|
||||||
|
dest: `http://localhost:${webPort}/$1`,
|
||||||
|
},
|
||||||
|
],
|
||||||
|
watch: [join(srcBase, '**/*')],
|
||||||
|
output: {},
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
debug('Running build command...');
|
||||||
|
await execCommand(buildCommand, {
|
||||||
|
...spawnOpts,
|
||||||
|
cwd: workPath,
|
||||||
|
});
|
||||||
|
|
||||||
|
const apiDistPath = join(workPath, 'api', 'dist', 'functions');
|
||||||
|
const webDistPath = join(workPath, 'web', 'dist');
|
||||||
|
const lambdaOutputs: { [filePath: string]: Lambda } = {};
|
||||||
|
const staticOutputs = await glob('**', webDistPath);
|
||||||
|
|
||||||
|
// Each file in the `functions` dir will become a lambda
|
||||||
|
const functionFiles = await glob('*.js', apiDistPath);
|
||||||
|
|
||||||
|
for (const [funcName, fileFsRef] of Object.entries(functionFiles)) {
|
||||||
|
const outputName = join('api', parsePath(funcName).name); // remove `.js` extension
|
||||||
|
const absEntrypoint = fileFsRef.fsPath;
|
||||||
|
const dependencies: string[] = await getDependencies(
|
||||||
|
absEntrypoint,
|
||||||
|
workPath
|
||||||
|
);
|
||||||
|
const relativeEntrypoint = relative(workPath, absEntrypoint);
|
||||||
|
const awsLambdaHandler = getAWSLambdaHandler(relativeEntrypoint, 'handler');
|
||||||
|
|
||||||
|
const lambdaFiles: Files = {
|
||||||
|
[`${LAUNCHER_FILENAME}.js`]: new FileBlob({
|
||||||
|
data: makeAwsLauncher({
|
||||||
|
entrypointPath: `./${relativeEntrypoint}`,
|
||||||
|
bridgePath: `./${BRIDGE_FILENAME}`,
|
||||||
|
helpersPath: `./${HELPERS_FILENAME}`,
|
||||||
|
sourcemapSupportPath: `./${SOURCEMAP_SUPPORT_FILENAME}`,
|
||||||
|
shouldAddHelpers: false,
|
||||||
|
shouldAddSourcemapSupport: false,
|
||||||
|
awsLambdaHandler,
|
||||||
|
}),
|
||||||
|
}),
|
||||||
|
[`${BRIDGE_FILENAME}.js`]: new FileFsRef({
|
||||||
|
fsPath: join(__dirname, 'bridge.js'),
|
||||||
|
}),
|
||||||
|
};
|
||||||
|
|
||||||
|
dependencies.forEach(fsPath => {
|
||||||
|
lambdaFiles[relative(workPath, fsPath)] = new FileFsRef({ fsPath });
|
||||||
|
});
|
||||||
|
|
||||||
|
lambdaFiles[relative(workPath, fileFsRef.fsPath)] = fileFsRef;
|
||||||
|
|
||||||
|
const lambda = await createLambda({
|
||||||
|
files: lambdaFiles,
|
||||||
|
handler: `${LAUNCHER_FILENAME}.launcher`,
|
||||||
|
runtime: nodeVersion.runtime,
|
||||||
|
environment: {},
|
||||||
|
});
|
||||||
|
lambdaOutputs[outputName] = lambda;
|
||||||
|
}
|
||||||
|
|
||||||
|
return {
|
||||||
|
output: { ...staticOutputs, ...lambdaOutputs },
|
||||||
|
routes: [{ handle: 'filesystem' }, { src: '/.*', dest: '/index.html' }],
|
||||||
|
watch: [],
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
function getAWSLambdaHandler(filePath: string, handlerName: string) {
|
||||||
|
const { dir, name } = parsePath(filePath);
|
||||||
|
return `${dir}${dir ? sep : ''}${name}.${handlerName}`;
|
||||||
|
}
|
||||||
|
|
||||||
|
export async function prepareCache({
|
||||||
|
workPath,
|
||||||
|
}: PrepareCacheOptions): Promise<Files> {
|
||||||
|
const cache = await glob('node_modules/**', workPath);
|
||||||
|
return cache;
|
||||||
|
}
|
||||||
7
packages/redwood/test/fixtures/01-create-redwood-app/.env.defaults
vendored
Normal file
7
packages/redwood/test/fixtures/01-create-redwood-app/.env.defaults
vendored
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
# These environment variables will be used by default if you do not create any
|
||||||
|
# yourself in .env. This file should be safe to check into your version control
|
||||||
|
# system. Any custom values should go in .env and .env should *not* be checked
|
||||||
|
# into version control.
|
||||||
|
|
||||||
|
DATABASE_URL=file:./dev.db
|
||||||
|
BINARY_TARGET=native
|
||||||
10
packages/redwood/test/fixtures/01-create-redwood-app/.gitignore
vendored
Normal file
10
packages/redwood/test/fixtures/01-create-redwood-app/.gitignore
vendored
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
.DS_Store
|
||||||
|
.env
|
||||||
|
.netlify
|
||||||
|
dev.db
|
||||||
|
dist
|
||||||
|
dist-babel
|
||||||
|
node_modules
|
||||||
|
yarn-error.log
|
||||||
|
|
||||||
|
.vercel
|
||||||
1
packages/redwood/test/fixtures/01-create-redwood-app/.nvmrc
vendored
Normal file
1
packages/redwood/test/fixtures/01-create-redwood-app/.nvmrc
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
lts/*
|
||||||
21
packages/redwood/test/fixtures/01-create-redwood-app/LICENSE
vendored
Normal file
21
packages/redwood/test/fixtures/01-create-redwood-app/LICENSE
vendored
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2020 Redwood
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
||||||
44
packages/redwood/test/fixtures/01-create-redwood-app/README.md
vendored
Normal file
44
packages/redwood/test/fixtures/01-create-redwood-app/README.md
vendored
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
# Redwood
|
||||||
|
|
||||||
|
> **HEADS UP:** RedwoodJS is _NOT_ ready for use in Production. It relies heavily on Prisma2, which is currently in testing with an expected production release coming soon. See status at ["Is Prisma2 Ready?"](https://isprisma2ready.com)
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
|
||||||
|
- [Redwoodjs.com](https://redwoodjs.com): home to all things RedwoodJS.
|
||||||
|
- [Tutorial](https://redwoodjs.com/tutorial/welcome-to-redwood): getting started and complete overview guide.
|
||||||
|
- [Docs](https://redwoodjs.com/docs/introduction): using the Redwood Router, handling assets and files, list of command-line tools, and more.
|
||||||
|
- [Redwood Community](https://community.redwoodjs.com): get help, share tips and tricks, and collaborate on everything about RedwoodJS.
|
||||||
|
|
||||||
|
### Setup
|
||||||
|
|
||||||
|
We use Yarn as our package manager. To get the dependencies installed, just do this in the root directory:
|
||||||
|
|
||||||
|
```terminal
|
||||||
|
yarn install
|
||||||
|
```
|
||||||
|
|
||||||
|
### Fire it up
|
||||||
|
|
||||||
|
```terminal
|
||||||
|
yarn redwood dev
|
||||||
|
```
|
||||||
|
|
||||||
|
Your browser should open automatically to `http://localhost:8910` to see the web app. Lambda functions run on `http://localhost:8911` and are also proxied to `http://localhost:8910/api/functions/*`.
|
||||||
|
|
||||||
|
## Development
|
||||||
|
|
||||||
|
### Database
|
||||||
|
|
||||||
|
We're using [Prisma2](https://github.com/prisma/prisma2), a modern DB toolkit to query, migrate and model your database.
|
||||||
|
|
||||||
|
Prisma2 is [not ready for production](https://isprisma2ready.com) at the moment.
|
||||||
|
|
||||||
|
To create a development database:
|
||||||
|
|
||||||
|
```terminal
|
||||||
|
yarn redwood db up
|
||||||
|
```
|
||||||
|
|
||||||
|
This will read the schema definition in `api/prisma/schema.prisma` and generate a sqlite database in `api/prisma/dev.db`
|
||||||
|
|
||||||
|
If you've made changes to the schema run `yarn redwood db save` to generate a migration, and `yarn redwood db up` to apply the migration/ generate a new ORM client.
|
||||||
1
packages/redwood/test/fixtures/01-create-redwood-app/api/.babelrc.js
vendored
Normal file
1
packages/redwood/test/fixtures/01-create-redwood-app/api/.babelrc.js
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
module.exports = { extends: '../babel.config.js' }
|
||||||
9
packages/redwood/test/fixtures/01-create-redwood-app/api/jsconfig.json
vendored
Normal file
9
packages/redwood/test/fixtures/01-create-redwood-app/api/jsconfig.json
vendored
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
{
|
||||||
|
"compilerOptions": {
|
||||||
|
"baseUrl": ".",
|
||||||
|
"paths": {
|
||||||
|
"src/*": ["./src/*"]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"include": ["src/**/*"]
|
||||||
|
}
|
||||||
8
packages/redwood/test/fixtures/01-create-redwood-app/api/package.json
vendored
Normal file
8
packages/redwood/test/fixtures/01-create-redwood-app/api/package.json
vendored
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
"name": "api",
|
||||||
|
"version": "0.0.0",
|
||||||
|
"private": true,
|
||||||
|
"dependencies": {
|
||||||
|
"@redwoodjs/api": "0.14.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
18
packages/redwood/test/fixtures/01-create-redwood-app/api/prisma/schema.prisma
vendored
Normal file
18
packages/redwood/test/fixtures/01-create-redwood-app/api/prisma/schema.prisma
vendored
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
datasource DS {
|
||||||
|
provider = "sqlite"
|
||||||
|
url = env("DATABASE_URL")
|
||||||
|
}
|
||||||
|
|
||||||
|
generator client {
|
||||||
|
provider = "prisma-client-js"
|
||||||
|
binaryTargets = env("BINARY_TARGET")
|
||||||
|
}
|
||||||
|
|
||||||
|
// Define your own datamodels here and run `yarn redwood db save` to create
|
||||||
|
// migrations for them.
|
||||||
|
// TODO: Please remove the following example:
|
||||||
|
model UserExample {
|
||||||
|
id Int @id @default(autoincrement())
|
||||||
|
email String @unique
|
||||||
|
name String?
|
||||||
|
}
|
||||||
26
packages/redwood/test/fixtures/01-create-redwood-app/api/prisma/seeds.js
vendored
Normal file
26
packages/redwood/test/fixtures/01-create-redwood-app/api/prisma/seeds.js
vendored
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
/* eslint-disable no-console */
|
||||||
|
const { PrismaClient } = require('@prisma/client')
|
||||||
|
const dotenv = require('dotenv')
|
||||||
|
|
||||||
|
dotenv.config()
|
||||||
|
const db = new PrismaClient()
|
||||||
|
|
||||||
|
async function main() {
|
||||||
|
// Seed data is database data that needs to exist for your app to run.
|
||||||
|
// Ideally this file should be idempotent: running it multiple times
|
||||||
|
// will result in the same database state (usually by checking for the
|
||||||
|
// existence of a record before trying to create it). For example:
|
||||||
|
//
|
||||||
|
// const existing = await db.user.findMany({ where: { email: 'admin@email.com' }})
|
||||||
|
// if (!existing.length) {
|
||||||
|
// await db.user.create({ data: { name: 'Admin', email: 'admin@email.com' }})
|
||||||
|
// }
|
||||||
|
|
||||||
|
console.info('No data to seed. See api/prisma/seeds.js for info.')
|
||||||
|
}
|
||||||
|
|
||||||
|
main()
|
||||||
|
.catch((e) => console.error(e))
|
||||||
|
.finally(async () => {
|
||||||
|
await db.disconnect()
|
||||||
|
})
|
||||||
19
packages/redwood/test/fixtures/01-create-redwood-app/api/src/functions/graphql.js
vendored
Normal file
19
packages/redwood/test/fixtures/01-create-redwood-app/api/src/functions/graphql.js
vendored
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
import {
|
||||||
|
createGraphQLHandler,
|
||||||
|
makeMergedSchema,
|
||||||
|
makeServices,
|
||||||
|
} from '@redwoodjs/api'
|
||||||
|
import importAll from '@redwoodjs/api/importAll.macro'
|
||||||
|
|
||||||
|
import { db } from 'src/lib/db'
|
||||||
|
|
||||||
|
const schemas = importAll('api', 'graphql')
|
||||||
|
const services = importAll('api', 'services')
|
||||||
|
|
||||||
|
export const handler = createGraphQLHandler({
|
||||||
|
schema: makeMergedSchema({
|
||||||
|
schemas,
|
||||||
|
services: makeServices({ services }),
|
||||||
|
}),
|
||||||
|
db,
|
||||||
|
})
|
||||||
0
packages/redwood/test/fixtures/01-create-redwood-app/api/src/graphql/.keep
vendored
Normal file
0
packages/redwood/test/fixtures/01-create-redwood-app/api/src/graphql/.keep
vendored
Normal file
6
packages/redwood/test/fixtures/01-create-redwood-app/api/src/lib/db.js
vendored
Normal file
6
packages/redwood/test/fixtures/01-create-redwood-app/api/src/lib/db.js
vendored
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
// See https://github.com/prisma/prisma2/blob/master/docs/prisma-client-js/api.md#constructor
|
||||||
|
// for options.
|
||||||
|
|
||||||
|
import { PrismaClient } from '@prisma/client'
|
||||||
|
|
||||||
|
export const db = new PrismaClient()
|
||||||
0
packages/redwood/test/fixtures/01-create-redwood-app/api/src/services/.keep
vendored
Normal file
0
packages/redwood/test/fixtures/01-create-redwood-app/api/src/services/.keep
vendored
Normal file
3
packages/redwood/test/fixtures/01-create-redwood-app/babel.config.js
vendored
Normal file
3
packages/redwood/test/fixtures/01-create-redwood-app/babel.config.js
vendored
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
module.exports = {
|
||||||
|
presets: ['@redwoodjs/core/config/babel-preset'],
|
||||||
|
}
|
||||||
17
packages/redwood/test/fixtures/01-create-redwood-app/netlify.toml
vendored
Normal file
17
packages/redwood/test/fixtures/01-create-redwood-app/netlify.toml
vendored
Normal file
@@ -0,0 +1,17 @@
|
|||||||
|
[build]
|
||||||
|
command = "yarn rw db up --no-db-client --auto-approve && yarn rw build"
|
||||||
|
publish = "web/dist"
|
||||||
|
functions = "api/dist/functions"
|
||||||
|
|
||||||
|
[dev]
|
||||||
|
command = "yarn rw dev"
|
||||||
|
|
||||||
|
[[redirects]]
|
||||||
|
from = "/*"
|
||||||
|
to = "/index.html"
|
||||||
|
status = 200
|
||||||
|
|
||||||
|
[[plugins]]
|
||||||
|
package = 'netlify-plugin-prisma-provider'
|
||||||
|
[plugins.inputs]
|
||||||
|
path = 'api/prisma/schema.prisma'
|
||||||
16
packages/redwood/test/fixtures/01-create-redwood-app/package.json
vendored
Normal file
16
packages/redwood/test/fixtures/01-create-redwood-app/package.json
vendored
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
{
|
||||||
|
"private": true,
|
||||||
|
"workspaces": {
|
||||||
|
"packages": [
|
||||||
|
"api",
|
||||||
|
"web"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@redwoodjs/core": "0.14.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12",
|
||||||
|
"yarn": ">=1.15"
|
||||||
|
}
|
||||||
|
}
|
||||||
9
packages/redwood/test/fixtures/01-create-redwood-app/prettier.config.js
vendored
Normal file
9
packages/redwood/test/fixtures/01-create-redwood-app/prettier.config.js
vendored
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
// https://prettier.io/docs/en/options.html
|
||||||
|
module.exports = {
|
||||||
|
trailingComma: 'es5',
|
||||||
|
bracketSpacing: true,
|
||||||
|
tabWidth: 2,
|
||||||
|
semi: false,
|
||||||
|
singleQuote: true,
|
||||||
|
arrowParens: 'always',
|
||||||
|
}
|
||||||
7
packages/redwood/test/fixtures/01-create-redwood-app/redwood.toml
vendored
Normal file
7
packages/redwood/test/fixtures/01-create-redwood-app/redwood.toml
vendored
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
[web]
|
||||||
|
port = 8910
|
||||||
|
apiProxyPath = "/api"
|
||||||
|
[api]
|
||||||
|
port = 8911
|
||||||
|
[browser]
|
||||||
|
open = false
|
||||||
20
packages/redwood/test/fixtures/01-create-redwood-app/vercel.json
vendored
Normal file
20
packages/redwood/test/fixtures/01-create-redwood-app/vercel.json
vendored
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
{
|
||||||
|
"version": 2,
|
||||||
|
"builds": [{ "src": "package.json", "use": "@vercel/redwood" }],
|
||||||
|
"probes": [
|
||||||
|
{ "path": "/", "mustContain": "<div id=\"redwood-app\">" },
|
||||||
|
{ "path": "/about", "mustContain": "<div id=\"redwood-app\">" },
|
||||||
|
{
|
||||||
|
"path": "/api/graphql",
|
||||||
|
"headers": { "Accept": "text/html" },
|
||||||
|
"mustContain": "<title>GraphQL Playground</title>"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"path": "/api/graphql",
|
||||||
|
"method": "POST",
|
||||||
|
"headers": { "Accept": "application/json" },
|
||||||
|
"body": { "query": "{ redwood { version } }" },
|
||||||
|
"mustContain": "0.14.0"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
1
packages/redwood/test/fixtures/01-create-redwood-app/web/.babelrc.js
vendored
Normal file
1
packages/redwood/test/fixtures/01-create-redwood-app/web/.babelrc.js
vendored
Normal file
@@ -0,0 +1 @@
|
|||||||
|
module.exports = { extends: '../babel.config.js' }
|
||||||
10
packages/redwood/test/fixtures/01-create-redwood-app/web/jsconfig.json
vendored
Normal file
10
packages/redwood/test/fixtures/01-create-redwood-app/web/jsconfig.json
vendored
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
{
|
||||||
|
"compilerOptions": {
|
||||||
|
"baseUrl": ".",
|
||||||
|
"paths": {
|
||||||
|
"src/*": ["./src/*"]
|
||||||
|
},
|
||||||
|
"jsx": "preserve"
|
||||||
|
},
|
||||||
|
"include": ["src/**/*"]
|
||||||
|
}
|
||||||
15
packages/redwood/test/fixtures/01-create-redwood-app/web/package.json
vendored
Normal file
15
packages/redwood/test/fixtures/01-create-redwood-app/web/package.json
vendored
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
{
|
||||||
|
"name": "web",
|
||||||
|
"version": "0.0.0",
|
||||||
|
"private": true,
|
||||||
|
"browserslist": [
|
||||||
|
"defaults"
|
||||||
|
],
|
||||||
|
"dependencies": {
|
||||||
|
"@redwoodjs/router": "0.14.0",
|
||||||
|
"@redwoodjs/web": "0.14.0",
|
||||||
|
"prop-types": "^15.7.2",
|
||||||
|
"react": "^16.13.1",
|
||||||
|
"react-dom": "^16.13.1"
|
||||||
|
}
|
||||||
|
}
|
||||||
45
packages/redwood/test/fixtures/01-create-redwood-app/web/public/README.md
vendored
Normal file
45
packages/redwood/test/fixtures/01-create-redwood-app/web/public/README.md
vendored
Normal file
@@ -0,0 +1,45 @@
|
|||||||
|
# Static Assets
|
||||||
|
|
||||||
|
Use this folder to add static files directly to your app. All included files and folders will be copied directly into the `/dist` folder (created when Webpack builds for production). They will also be available during development when you run `yarn rw dev`.
|
||||||
|
|
||||||
|
> Note: files will _not_ hot reload while the development server is running. You'll need to manually stop/start to access file changes.
|
||||||
|
|
||||||
|
### Example Use
|
||||||
|
|
||||||
|
A file like `favicon.png` will be copied to `/dist/favicon.png`. A folder containing a file such as `static-files/my-logo.jpg` will be copied to `/dist/static-files/my-logo.jpg`. These can be referenced in your code directly without any special handling, e.g.
|
||||||
|
|
||||||
|
```
|
||||||
|
<link rel="icon" type="image/png" href="/favicon.png" />
|
||||||
|
```
|
||||||
|
|
||||||
|
and
|
||||||
|
|
||||||
|
```
|
||||||
|
<img src="/static-files/my-logo.jpg"> alt="Logo" />
|
||||||
|
```
|
||||||
|
|
||||||
|
Behind the scenes, we are using Webpack's ["copy-webpack-plugin"](https://github.com/webpack-contrib/copy-webpack-plugin).
|
||||||
|
|
||||||
|
## Best Practices
|
||||||
|
|
||||||
|
Because assets in this folder are bypassing the javascript module system, **this folder should be used sparingly** for assets such as favicons, robots.txt, manifests, libraries incompatible with Webpack, etc.
|
||||||
|
|
||||||
|
In general, it's best to import files directly into a template, page, or component. This allows Webpack to include that file in the bundle, which ensures Webpack will correctly process and move assets into the distribution folder, providing error checks and correct paths along the way.
|
||||||
|
|
||||||
|
### Example Asset Import with Webpack
|
||||||
|
|
||||||
|
Instead of handling our logo image as a static file per the example above, we can do the following:
|
||||||
|
|
||||||
|
```
|
||||||
|
import React from "react"
|
||||||
|
import logo from "./my-logo.jpg"
|
||||||
|
|
||||||
|
|
||||||
|
function Header() {
|
||||||
|
return <img src={logo} alt="Logo" />
|
||||||
|
}
|
||||||
|
|
||||||
|
export default Header
|
||||||
|
```
|
||||||
|
|
||||||
|
Behind the scenes, we are using Webpack's ["file-loader"](https://webpack.js.org/loaders/file-loader/) and ["url-loader](https://webpack.js.org/loaders/url-loader/) (for files smaller than 10kb).
|
||||||
BIN
packages/redwood/test/fixtures/01-create-redwood-app/web/public/favicon.png
vendored
Normal file
BIN
packages/redwood/test/fixtures/01-create-redwood-app/web/public/favicon.png
vendored
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 1.8 KiB |
2
packages/redwood/test/fixtures/01-create-redwood-app/web/public/robots.txt
vendored
Normal file
2
packages/redwood/test/fixtures/01-create-redwood-app/web/public/robots.txt
vendored
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
User-agent: *
|
||||||
|
Disallow:
|
||||||
22
packages/redwood/test/fixtures/01-create-redwood-app/web/src/Routes.js
vendored
Normal file
22
packages/redwood/test/fixtures/01-create-redwood-app/web/src/Routes.js
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
// In this file, all Page components from 'src/pages` are auto-imported. Nested
|
||||||
|
// directories are supported, and should be uppercase. Each subdirectory will be
|
||||||
|
// prepended onto the component name.
|
||||||
|
//
|
||||||
|
// Examples:
|
||||||
|
//
|
||||||
|
// 'src/pages/HomePage/HomePage.js' -> HomePage
|
||||||
|
// 'src/pages/Admin/BooksPage/BooksPage.js' -> AdminBooksPage
|
||||||
|
|
||||||
|
import { Router, Route } from '@redwoodjs/router'
|
||||||
|
|
||||||
|
const Routes = () => {
|
||||||
|
return (
|
||||||
|
<Router>
|
||||||
|
<Route path="/" page={HomePage} name="home" />
|
||||||
|
<Route path="/about" page={AboutPage} name="about" />
|
||||||
|
<Route notfound page={NotFoundPage} />
|
||||||
|
</Router>
|
||||||
|
)
|
||||||
|
}
|
||||||
|
|
||||||
|
export default Routes
|
||||||
0
packages/redwood/test/fixtures/01-create-redwood-app/web/src/components/.keep
vendored
Normal file
0
packages/redwood/test/fixtures/01-create-redwood-app/web/src/components/.keep
vendored
Normal file
0
packages/redwood/test/fixtures/01-create-redwood-app/web/src/index.css
vendored
Normal file
0
packages/redwood/test/fixtures/01-create-redwood-app/web/src/index.css
vendored
Normal file
12
packages/redwood/test/fixtures/01-create-redwood-app/web/src/index.html
vendored
Normal file
12
packages/redwood/test/fixtures/01-create-redwood-app/web/src/index.html
vendored
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang="en">
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||||
|
<link rel="icon" type="image/png" href="/favicon.png" />
|
||||||
|
<title><%= htmlWebpackPlugin.options.title %></title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="redwood-app"></div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
16
packages/redwood/test/fixtures/01-create-redwood-app/web/src/index.js
vendored
Normal file
16
packages/redwood/test/fixtures/01-create-redwood-app/web/src/index.js
vendored
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
import ReactDOM from 'react-dom'
|
||||||
|
import { RedwoodProvider, FatalErrorBoundary } from '@redwoodjs/web'
|
||||||
|
import FatalErrorPage from 'src/pages/FatalErrorPage'
|
||||||
|
|
||||||
|
import Routes from 'src/Routes'
|
||||||
|
|
||||||
|
import './index.css'
|
||||||
|
|
||||||
|
ReactDOM.render(
|
||||||
|
<FatalErrorBoundary page={FatalErrorPage}>
|
||||||
|
<RedwoodProvider>
|
||||||
|
<Routes />
|
||||||
|
</RedwoodProvider>
|
||||||
|
</FatalErrorBoundary>,
|
||||||
|
document.getElementById('redwood-app')
|
||||||
|
)
|
||||||
0
packages/redwood/test/fixtures/01-create-redwood-app/web/src/layouts/.keep
vendored
Normal file
0
packages/redwood/test/fixtures/01-create-redwood-app/web/src/layouts/.keep
vendored
Normal file
44
packages/redwood/test/fixtures/01-create-redwood-app/web/src/pages/AboutPage/AboutPage.js
vendored
Normal file
44
packages/redwood/test/fixtures/01-create-redwood-app/web/src/pages/AboutPage/AboutPage.js
vendored
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
export default () => (
|
||||||
|
<main>
|
||||||
|
<style
|
||||||
|
dangerouslySetInnerHTML={{
|
||||||
|
__html: `
|
||||||
|
html, body {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
html * {
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
main {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
|
||||||
|
text-align: center;
|
||||||
|
background-color: #E2E8F0;
|
||||||
|
height: 100vh;
|
||||||
|
}
|
||||||
|
section {
|
||||||
|
background-color: white;
|
||||||
|
border-radius: 0.25rem;
|
||||||
|
width: 32rem;
|
||||||
|
padding: 1rem;
|
||||||
|
margin: 0 auto;
|
||||||
|
box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);
|
||||||
|
}
|
||||||
|
h1 {
|
||||||
|
font-size: 2rem;
|
||||||
|
margin: 0;
|
||||||
|
font-weight: 500;
|
||||||
|
line-height: 1;
|
||||||
|
color: #2D3748;
|
||||||
|
}
|
||||||
|
`,
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
<section>
|
||||||
|
<h1>
|
||||||
|
<span>About RedwoodJS</span>
|
||||||
|
</h1>
|
||||||
|
</section>
|
||||||
|
</main>
|
||||||
|
)
|
||||||
@@ -0,0 +1,53 @@
|
|||||||
|
// This page will be rendered when an error makes it all the way to the top of the
|
||||||
|
// application without being handled by a Javascript catch statement or React error
|
||||||
|
// boundary.
|
||||||
|
//
|
||||||
|
// You can modify this page as you wish, but it is important to keep things simple to
|
||||||
|
// avoid the possibility that it will cause its own error. If it does, Redwood will
|
||||||
|
// still render a generic error page, but your users will prefer something a bit more
|
||||||
|
// thoughtful. =)
|
||||||
|
|
||||||
|
export default () => (
|
||||||
|
<main>
|
||||||
|
<style
|
||||||
|
dangerouslySetInnerHTML={{
|
||||||
|
__html: `
|
||||||
|
html, body {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
html * {
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
main {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
|
||||||
|
text-align: center;
|
||||||
|
background-color: #E2E8F0;
|
||||||
|
height: 100vh;
|
||||||
|
}
|
||||||
|
section {
|
||||||
|
background-color: white;
|
||||||
|
border-radius: 0.25rem;
|
||||||
|
width: 32rem;
|
||||||
|
padding: 1rem;
|
||||||
|
margin: 0 auto;
|
||||||
|
box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);
|
||||||
|
}
|
||||||
|
h1 {
|
||||||
|
font-size: 2rem;
|
||||||
|
margin: 0;
|
||||||
|
font-weight: 500;
|
||||||
|
line-height: 1;
|
||||||
|
color: #2D3748;
|
||||||
|
}
|
||||||
|
`,
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
<section>
|
||||||
|
<h1>
|
||||||
|
<span>Something went wrong</span>
|
||||||
|
</h1>
|
||||||
|
</section>
|
||||||
|
</main>
|
||||||
|
)
|
||||||
44
packages/redwood/test/fixtures/01-create-redwood-app/web/src/pages/HomePage/HomePage.js
vendored
Normal file
44
packages/redwood/test/fixtures/01-create-redwood-app/web/src/pages/HomePage/HomePage.js
vendored
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
export default () => (
|
||||||
|
<main>
|
||||||
|
<style
|
||||||
|
dangerouslySetInnerHTML={{
|
||||||
|
__html: `
|
||||||
|
html, body {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
html * {
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
main {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
|
||||||
|
text-align: center;
|
||||||
|
background-color: #E2E8F0;
|
||||||
|
height: 100vh;
|
||||||
|
}
|
||||||
|
section {
|
||||||
|
background-color: white;
|
||||||
|
border-radius: 0.25rem;
|
||||||
|
width: 32rem;
|
||||||
|
padding: 1rem;
|
||||||
|
margin: 0 auto;
|
||||||
|
box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);
|
||||||
|
}
|
||||||
|
h1 {
|
||||||
|
font-size: 2rem;
|
||||||
|
margin: 0;
|
||||||
|
font-weight: 500;
|
||||||
|
line-height: 1;
|
||||||
|
color: #2D3748;
|
||||||
|
}
|
||||||
|
`,
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
<section>
|
||||||
|
<h1>
|
||||||
|
<span>Welcome to RedwoodJS!</span>
|
||||||
|
</h1>
|
||||||
|
</section>
|
||||||
|
</main>
|
||||||
|
)
|
||||||
44
packages/redwood/test/fixtures/01-create-redwood-app/web/src/pages/NotFoundPage/NotFoundPage.js
vendored
Normal file
44
packages/redwood/test/fixtures/01-create-redwood-app/web/src/pages/NotFoundPage/NotFoundPage.js
vendored
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
export default () => (
|
||||||
|
<main>
|
||||||
|
<style
|
||||||
|
dangerouslySetInnerHTML={{
|
||||||
|
__html: `
|
||||||
|
html, body {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
html * {
|
||||||
|
box-sizing: border-box;
|
||||||
|
}
|
||||||
|
main {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
|
||||||
|
text-align: center;
|
||||||
|
background-color: #E2E8F0;
|
||||||
|
height: 100vh;
|
||||||
|
}
|
||||||
|
section {
|
||||||
|
background-color: white;
|
||||||
|
border-radius: 0.25rem;
|
||||||
|
width: 32rem;
|
||||||
|
padding: 1rem;
|
||||||
|
margin: 0 auto;
|
||||||
|
box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);
|
||||||
|
}
|
||||||
|
h1 {
|
||||||
|
font-size: 2rem;
|
||||||
|
margin: 0;
|
||||||
|
font-weight: 500;
|
||||||
|
line-height: 1;
|
||||||
|
color: #2D3748;
|
||||||
|
}
|
||||||
|
`,
|
||||||
|
}}
|
||||||
|
/>
|
||||||
|
<section>
|
||||||
|
<h1>
|
||||||
|
<span>404 Page Not Found</span>
|
||||||
|
</h1>
|
||||||
|
</section>
|
||||||
|
</main>
|
||||||
|
)
|
||||||
14304
packages/redwood/test/fixtures/01-create-redwood-app/yarn.lock
vendored
Normal file
14304
packages/redwood/test/fixtures/01-create-redwood-app/yarn.lock
vendored
Normal file
File diff suppressed because it is too large
Load Diff
42
packages/redwood/test/test.js
vendored
Normal file
42
packages/redwood/test/test.js
vendored
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
const fs = require('fs');
|
||||||
|
const path = require('path');
|
||||||
|
|
||||||
|
const {
|
||||||
|
packAndDeploy,
|
||||||
|
testDeployment,
|
||||||
|
} = require('../../../test/lib/deployment/test-deployment.js');
|
||||||
|
|
||||||
|
jest.setTimeout(4 * 60 * 1000);
|
||||||
|
let buildUtilsUrl;
|
||||||
|
let builderUrl;
|
||||||
|
|
||||||
|
beforeAll(async () => {
|
||||||
|
if (!buildUtilsUrl) {
|
||||||
|
const buildUtilsPath = path.resolve(
|
||||||
|
__dirname,
|
||||||
|
'..',
|
||||||
|
'..',
|
||||||
|
'now-build-utils'
|
||||||
|
);
|
||||||
|
buildUtilsUrl = await packAndDeploy(buildUtilsPath);
|
||||||
|
console.log('buildUtilsUrl', buildUtilsUrl);
|
||||||
|
}
|
||||||
|
const builderPath = path.resolve(__dirname, '..');
|
||||||
|
builderUrl = await packAndDeploy(builderPath);
|
||||||
|
console.log('builderUrl', builderUrl);
|
||||||
|
});
|
||||||
|
|
||||||
|
const fixturesPath = path.resolve(__dirname, 'fixtures');
|
||||||
|
|
||||||
|
// eslint-disable-next-line no-restricted-syntax
|
||||||
|
for (const fixture of fs.readdirSync(fixturesPath)) {
|
||||||
|
// eslint-disable-next-line no-loop-func
|
||||||
|
it(`should build ${fixture}`, async () => {
|
||||||
|
await expect(
|
||||||
|
testDeployment(
|
||||||
|
{ builderUrl, buildUtilsUrl },
|
||||||
|
path.join(fixturesPath, fixture)
|
||||||
|
)
|
||||||
|
).resolves.toBeDefined();
|
||||||
|
});
|
||||||
|
}
|
||||||
18
packages/redwood/tsconfig.json
Normal file
18
packages/redwood/tsconfig.json
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
{
|
||||||
|
"compilerOptions": {
|
||||||
|
"declaration": false,
|
||||||
|
"esModuleInterop": true,
|
||||||
|
"lib": ["esnext"],
|
||||||
|
"module": "commonjs",
|
||||||
|
"moduleResolution": "node",
|
||||||
|
"noEmitOnError": true,
|
||||||
|
"noFallthroughCasesInSwitch": true,
|
||||||
|
"noImplicitReturns": true,
|
||||||
|
"noUnusedLocals": true,
|
||||||
|
"noUnusedParameters": true,
|
||||||
|
"outDir": "dist",
|
||||||
|
"types": ["node"],
|
||||||
|
"strict": true,
|
||||||
|
"target": "es2019"
|
||||||
|
}
|
||||||
|
}
|
||||||
71
utils/run.js
vendored
71
utils/run.js
vendored
@@ -1,21 +1,30 @@
|
|||||||
const { execSync, spawn } = require('child_process');
|
const { execSync, spawn } = require('child_process');
|
||||||
const { join, relative, sep } = require('path');
|
const { join, relative, sep } = require('path');
|
||||||
const { readdirSync } = require('fs');
|
|
||||||
|
|
||||||
if (
|
// The order matters because we must build dependencies first
|
||||||
process.env.GITHUB_REPOSITORY &&
|
const allPackages = [
|
||||||
process.env.GITHUB_REPOSITORY !== 'vercel/vercel'
|
'frameworks',
|
||||||
) {
|
'now-routing-utils',
|
||||||
console.log('Detected fork, skipping tests');
|
'now-build-utils',
|
||||||
return;
|
'now-cgi',
|
||||||
}
|
'now-client',
|
||||||
|
'now-node-bridge',
|
||||||
|
'now-next',
|
||||||
|
'now-node',
|
||||||
|
'redwood',
|
||||||
|
'now-static-build',
|
||||||
|
'now-go',
|
||||||
|
'now-python',
|
||||||
|
'now-ruby',
|
||||||
|
'now-cli',
|
||||||
|
];
|
||||||
|
|
||||||
process.chdir(join(__dirname, '..'));
|
process.chdir(join(__dirname, '..'));
|
||||||
|
|
||||||
async function main() {
|
async function main() {
|
||||||
const script = process.argv[2];
|
const script = process.argv[2];
|
||||||
const all = process.argv[3];
|
const all = process.argv[3];
|
||||||
let matches = [];
|
let modifiedPackages = new Set(allPackages);
|
||||||
|
|
||||||
if (!script) {
|
if (!script) {
|
||||||
console.error('Please provide at least one argument');
|
console.error('Please provide at least one argument');
|
||||||
@@ -23,7 +32,6 @@ async function main() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (all === 'all') {
|
if (all === 'all') {
|
||||||
matches = readdirSync(join(__dirname, '..', 'packages'));
|
|
||||||
console.log(`Running script "${script}" for all packages`);
|
console.log(`Running script "${script}" for all packages`);
|
||||||
} else {
|
} else {
|
||||||
const branch =
|
const branch =
|
||||||
@@ -41,50 +49,23 @@ async function main() {
|
|||||||
.map(item => relative('packages', item).split(sep)[0])
|
.map(item => relative('packages', item).split(sep)[0])
|
||||||
.concat('now-cli'); // Always run tests for Now CLI
|
.concat('now-cli'); // Always run tests for Now CLI
|
||||||
|
|
||||||
matches = Array.from(new Set(changed));
|
modifiedPackages = new Set(changed);
|
||||||
|
|
||||||
if (matches.length === 0) {
|
|
||||||
matches.push('now-node');
|
|
||||||
console.log('No packages changed. Using default packages.');
|
|
||||||
}
|
|
||||||
|
|
||||||
console.log(
|
console.log(
|
||||||
`Running "${script}" on branch "${branch}" with the following packages:\n`
|
`Running "${script}" on branch "${branch}" with the following packages:\n`
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Sort the matches such that `utils` modules are compiled first,
|
for (const pkgName of allPackages) {
|
||||||
// because other packages (such as builders) depend on them.
|
if (modifiedPackages.has(pkgName)) {
|
||||||
// We also need to ensure that `now-cli` is built last.
|
console.log(` - ${pkgName}`);
|
||||||
|
|
||||||
matches.sort((a, b) => {
|
|
||||||
if (a === 'now-routing-utils' && b !== 'now-routing-utils') {
|
|
||||||
return -1;
|
|
||||||
}
|
}
|
||||||
if (b === 'now-routing-utils' && a !== 'now-routing-utils') {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
if (a === 'now-build-utils' && b !== 'now-build-utils') {
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
if (b === 'now-build-utils' && a !== 'now-build-utils') {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
if (a === 'now-cli' && b !== 'now-cli') {
|
|
||||||
return 1;
|
|
||||||
}
|
|
||||||
if (b === 'now-cli' && a !== 'now-cli') {
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
return b - a;
|
|
||||||
});
|
|
||||||
|
|
||||||
for (const m of matches) {
|
|
||||||
console.log(` - ${m}`);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
for (const pkgName of matches) {
|
for (const pkgName of allPackages) {
|
||||||
await runScript(pkgName, script);
|
if (modifiedPackages.has(pkgName)) {
|
||||||
|
await runScript(pkgName, script);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
433
yarn.lock
433
yarn.lock
@@ -1273,6 +1273,32 @@
|
|||||||
call-me-maybe "^1.0.1"
|
call-me-maybe "^1.0.1"
|
||||||
glob-to-regexp "^0.3.0"
|
glob-to-regexp "^0.3.0"
|
||||||
|
|
||||||
|
"@netlify/zip-it-and-ship-it@1.2.0":
|
||||||
|
version "1.2.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/@netlify/zip-it-and-ship-it/-/zip-it-and-ship-it-1.2.0.tgz#919a6b1826cb6521c1667e81b659dd76b99c973b"
|
||||||
|
integrity sha512-aNbB0DcS2t0Iw6OqGVb5YezElyL9teflPPT8k9kDLaW7BDkYt/6eWSReGNnDGfIrEDUsq0GxBLK+wQTw+WeXNQ==
|
||||||
|
dependencies:
|
||||||
|
archiver "^3.0.0"
|
||||||
|
common-path-prefix "^2.0.0"
|
||||||
|
cp-file "^7.0.0"
|
||||||
|
elf-tools "^1.1.1"
|
||||||
|
end-of-stream "^1.4.4"
|
||||||
|
find-up "^4.1.0"
|
||||||
|
glob "^7.1.6"
|
||||||
|
junk "^3.1.0"
|
||||||
|
locate-path "^5.0.0"
|
||||||
|
make-dir "^3.0.2"
|
||||||
|
p-map "^3.0.0"
|
||||||
|
path-exists "^4.0.0"
|
||||||
|
pkg-dir "^4.2.0"
|
||||||
|
precinct "^6.2.0"
|
||||||
|
require-package-name "^2.0.1"
|
||||||
|
resolve "^2.0.0-next.1"
|
||||||
|
semver "^7.3.2"
|
||||||
|
unixify "^1.0.0"
|
||||||
|
util.promisify "^1.0.1"
|
||||||
|
yargs "^15.3.1"
|
||||||
|
|
||||||
"@nodelib/fs.scandir@2.1.3":
|
"@nodelib/fs.scandir@2.1.3":
|
||||||
version "2.1.3"
|
version "2.1.3"
|
||||||
resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz#3a582bdb53804c6ba6d146579c46e52130cf4a3b"
|
resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.3.tgz#3a582bdb53804c6ba6d146579c46e52130cf4a3b"
|
||||||
@@ -1569,7 +1595,7 @@
|
|||||||
dependencies:
|
dependencies:
|
||||||
"@types/retry" "*"
|
"@types/retry" "*"
|
||||||
|
|
||||||
"@types/async-retry@^1.2.1":
|
"@types/async-retry@1.4.2", "@types/async-retry@^1.2.1":
|
||||||
version "1.4.2"
|
version "1.4.2"
|
||||||
resolved "https://registry.yarnpkg.com/@types/async-retry/-/async-retry-1.4.2.tgz#7f910188cd3893b51e32df51765ee8d5646053e3"
|
resolved "https://registry.yarnpkg.com/@types/async-retry/-/async-retry-1.4.2.tgz#7f910188cd3893b51e32df51765ee8d5646053e3"
|
||||||
integrity sha512-GUDuJURF0YiJZ+CBjNQA0+vbP/VHlJbB0sFqkzsV7EcOPRfurVonXpXKAt3w8qIjM1TEzpz6hc6POocPvHOS3w==
|
integrity sha512-GUDuJURF0YiJZ+CBjNQA0+vbP/VHlJbB0sFqkzsV7EcOPRfurVonXpXKAt3w8qIjM1TEzpz6hc6POocPvHOS3w==
|
||||||
@@ -2177,7 +2203,7 @@
|
|||||||
lodash.unescape "4.0.1"
|
lodash.unescape "4.0.1"
|
||||||
semver "^6.2.0"
|
semver "^6.2.0"
|
||||||
|
|
||||||
"@typescript-eslint/typescript-estree@2.34.0":
|
"@typescript-eslint/typescript-estree@2.34.0", "@typescript-eslint/typescript-estree@^2.29.0":
|
||||||
version "2.34.0"
|
version "2.34.0"
|
||||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.34.0.tgz#14aeb6353b39ef0732cc7f1b8285294937cf37d5"
|
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-2.34.0.tgz#14aeb6353b39ef0732cc7f1b8285294937cf37d5"
|
||||||
integrity sha512-OMAr+nJWKdlVM9LOqCqh3pQQPwxHAN7Du8DR6dmwCrAmxtiXQnhHJ6tBNtf+cggqfo51SG/FCwnKhXCIM7hnVg==
|
integrity sha512-OMAr+nJWKdlVM9LOqCqh3pQQPwxHAN7Du8DR6dmwCrAmxtiXQnhHJ6tBNtf+cggqfo51SG/FCwnKhXCIM7hnVg==
|
||||||
@@ -2574,6 +2600,35 @@ arch@^2.1.0, arch@^2.1.1:
|
|||||||
resolved "https://registry.yarnpkg.com/arch/-/arch-2.1.2.tgz#0c52bbe7344bb4fa260c443d2cbad9c00ff2f0bf"
|
resolved "https://registry.yarnpkg.com/arch/-/arch-2.1.2.tgz#0c52bbe7344bb4fa260c443d2cbad9c00ff2f0bf"
|
||||||
integrity sha512-NTBIIbAfkJeIletyABbVtdPgeKfDafR+1mZV/AyyfC1UkVkp9iUjV+wwmqtUgphHYajbI86jejBJp5e+jkGTiQ==
|
integrity sha512-NTBIIbAfkJeIletyABbVtdPgeKfDafR+1mZV/AyyfC1UkVkp9iUjV+wwmqtUgphHYajbI86jejBJp5e+jkGTiQ==
|
||||||
|
|
||||||
|
archiver-utils@^2.1.0:
|
||||||
|
version "2.1.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/archiver-utils/-/archiver-utils-2.1.0.tgz#e8a460e94b693c3e3da182a098ca6285ba9249e2"
|
||||||
|
integrity sha512-bEL/yUb/fNNiNTuUz979Z0Yg5L+LzLxGJz8x79lYmR54fmTIb6ob/hNQgkQnIUDWIFjZVQwl9Xs356I6BAMHfw==
|
||||||
|
dependencies:
|
||||||
|
glob "^7.1.4"
|
||||||
|
graceful-fs "^4.2.0"
|
||||||
|
lazystream "^1.0.0"
|
||||||
|
lodash.defaults "^4.2.0"
|
||||||
|
lodash.difference "^4.5.0"
|
||||||
|
lodash.flatten "^4.4.0"
|
||||||
|
lodash.isplainobject "^4.0.6"
|
||||||
|
lodash.union "^4.6.0"
|
||||||
|
normalize-path "^3.0.0"
|
||||||
|
readable-stream "^2.0.0"
|
||||||
|
|
||||||
|
archiver@^3.0.0:
|
||||||
|
version "3.1.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/archiver/-/archiver-3.1.1.tgz#9db7819d4daf60aec10fe86b16cb9258ced66ea0"
|
||||||
|
integrity sha512-5Hxxcig7gw5Jod/8Gq0OneVgLYET+oNHcxgWItq4TbhOzRLKNAFUb9edAftiMKXvXfCB0vbGrJdZDNq0dWMsxg==
|
||||||
|
dependencies:
|
||||||
|
archiver-utils "^2.1.0"
|
||||||
|
async "^2.6.3"
|
||||||
|
buffer-crc32 "^0.2.1"
|
||||||
|
glob "^7.1.4"
|
||||||
|
readable-stream "^3.4.0"
|
||||||
|
tar-stream "^2.1.0"
|
||||||
|
zip-stream "^2.1.2"
|
||||||
|
|
||||||
archy@^1.0.0:
|
archy@^1.0.0:
|
||||||
version "1.0.0"
|
version "1.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/archy/-/archy-1.0.0.tgz#f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40"
|
resolved "https://registry.yarnpkg.com/archy/-/archy-1.0.0.tgz#f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40"
|
||||||
@@ -2731,6 +2786,11 @@ assign-symbols@^1.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367"
|
resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367"
|
||||||
integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=
|
integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=
|
||||||
|
|
||||||
|
ast-module-types@^2.3.1, ast-module-types@^2.3.2, ast-module-types@^2.4.0, ast-module-types@^2.6.0:
|
||||||
|
version "2.6.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/ast-module-types/-/ast-module-types-2.6.0.tgz#f9f367fd273bbe01e52f2c51b5f46b65801d5d7f"
|
||||||
|
integrity sha512-zXSoVaMrf2R+r+ISid5/9a8SXm1LLdkhHzh6pSRhj9jklzruOOl1hva1YmFT33wAstg/f9ZndJAlq1BSrFLSGA==
|
||||||
|
|
||||||
astral-regex@^1.0.0:
|
astral-regex@^1.0.0:
|
||||||
version "1.0.0"
|
version "1.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9"
|
resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-1.0.0.tgz#6c8c3fb827dd43ee3918f27b82782ab7658a6fd9"
|
||||||
@@ -2794,6 +2854,13 @@ async-sema@3.0.1:
|
|||||||
resolved "https://registry.yarnpkg.com/async-sema/-/async-sema-3.0.1.tgz#404225197ea43e3be91ac7d711fb7088f2469c79"
|
resolved "https://registry.yarnpkg.com/async-sema/-/async-sema-3.0.1.tgz#404225197ea43e3be91ac7d711fb7088f2469c79"
|
||||||
integrity sha512-fKT2riE8EHAvJEfLJXZiATQWqZttjx1+tfgnVshCDrH8vlw4YC8aECe0B8MU184g+aVRFVgmfxFlKZKaozSrNw==
|
integrity sha512-fKT2riE8EHAvJEfLJXZiATQWqZttjx1+tfgnVshCDrH8vlw4YC8aECe0B8MU184g+aVRFVgmfxFlKZKaozSrNw==
|
||||||
|
|
||||||
|
async@^2.6.3:
|
||||||
|
version "2.6.3"
|
||||||
|
resolved "https://registry.yarnpkg.com/async/-/async-2.6.3.tgz#d72625e2344a3656e3a3ad4fa749fa83299d82ff"
|
||||||
|
integrity sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==
|
||||||
|
dependencies:
|
||||||
|
lodash "^4.17.14"
|
||||||
|
|
||||||
asynckit@^0.4.0:
|
asynckit@^0.4.0:
|
||||||
version "0.4.0"
|
version "0.4.0"
|
||||||
resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
|
resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79"
|
||||||
@@ -3014,6 +3081,15 @@ bl@^1.0.0:
|
|||||||
readable-stream "^2.3.5"
|
readable-stream "^2.3.5"
|
||||||
safe-buffer "^5.1.1"
|
safe-buffer "^5.1.1"
|
||||||
|
|
||||||
|
bl@^4.0.1:
|
||||||
|
version "4.0.2"
|
||||||
|
resolved "https://registry.yarnpkg.com/bl/-/bl-4.0.2.tgz#52b71e9088515d0606d9dd9cc7aa48dc1f98e73a"
|
||||||
|
integrity sha512-j4OH8f6Qg2bGuWfRiltT2HYGx0e1QcBTrK9KAHNMwMZdQnDZFk0ZSYIpADjYCB3U12nicC5tVJwSIhwOWjb4RQ==
|
||||||
|
dependencies:
|
||||||
|
buffer "^5.5.0"
|
||||||
|
inherits "^2.0.4"
|
||||||
|
readable-stream "^3.4.0"
|
||||||
|
|
||||||
bluebird@^3.3.1, bluebird@^3.5.0, bluebird@^3.5.1, bluebird@^3.5.3, bluebird@^3.5.5:
|
bluebird@^3.3.1, bluebird@^3.5.0, bluebird@^3.5.1, bluebird@^3.5.3, bluebird@^3.5.5:
|
||||||
version "3.7.2"
|
version "3.7.2"
|
||||||
resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f"
|
resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f"
|
||||||
@@ -3132,7 +3208,7 @@ buffer-alloc@^1.2.0:
|
|||||||
buffer-alloc-unsafe "^1.1.0"
|
buffer-alloc-unsafe "^1.1.0"
|
||||||
buffer-fill "^1.0.0"
|
buffer-fill "^1.0.0"
|
||||||
|
|
||||||
buffer-crc32@0.2.13, buffer-crc32@~0.2.3:
|
buffer-crc32@0.2.13, buffer-crc32@^0.2.1, buffer-crc32@^0.2.13, buffer-crc32@~0.2.3:
|
||||||
version "0.2.13"
|
version "0.2.13"
|
||||||
resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242"
|
resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242"
|
||||||
integrity sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=
|
integrity sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=
|
||||||
@@ -3152,7 +3228,7 @@ buffer-replace@1.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/buffer-replace/-/buffer-replace-1.0.0.tgz#bc427c40af4c1f06d6933dede57110acba8ade54"
|
resolved "https://registry.yarnpkg.com/buffer-replace/-/buffer-replace-1.0.0.tgz#bc427c40af4c1f06d6933dede57110acba8ade54"
|
||||||
integrity sha1-vEJ8QK9MHwbWkz3t5XEQrLqK3lQ=
|
integrity sha1-vEJ8QK9MHwbWkz3t5XEQrLqK3lQ=
|
||||||
|
|
||||||
buffer@^5.2.1:
|
buffer@^5.1.0, buffer@^5.2.1, buffer@^5.5.0:
|
||||||
version "5.6.0"
|
version "5.6.0"
|
||||||
resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.6.0.tgz#a31749dc7d81d84db08abf937b6b8c4033f62786"
|
resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.6.0.tgz#a31749dc7d81d84db08abf937b6b8c4033f62786"
|
||||||
integrity sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==
|
integrity sha512-/gDYp/UtU0eA1ys8bOs9J6a+E/KWIY+DZ+Q2WESNUA0jFRsJOc0SNUO6xJ5SGA1xueg3NL65W6s+NY5l9cunuw==
|
||||||
@@ -3567,6 +3643,15 @@ cliui@^5.0.0:
|
|||||||
strip-ansi "^5.2.0"
|
strip-ansi "^5.2.0"
|
||||||
wrap-ansi "^5.1.0"
|
wrap-ansi "^5.1.0"
|
||||||
|
|
||||||
|
cliui@^6.0.0:
|
||||||
|
version "6.0.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/cliui/-/cliui-6.0.0.tgz#511d702c0c4e41ca156d7d0e96021f23e13225b1"
|
||||||
|
integrity sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==
|
||||||
|
dependencies:
|
||||||
|
string-width "^4.2.0"
|
||||||
|
strip-ansi "^6.0.0"
|
||||||
|
wrap-ansi "^6.2.0"
|
||||||
|
|
||||||
clone-response@^1.0.2:
|
clone-response@^1.0.2:
|
||||||
version "1.0.2"
|
version "1.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b"
|
resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b"
|
||||||
@@ -3654,7 +3739,7 @@ combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6:
|
|||||||
dependencies:
|
dependencies:
|
||||||
delayed-stream "~1.0.0"
|
delayed-stream "~1.0.0"
|
||||||
|
|
||||||
commander@^2.20.0, commander@~2.20.3:
|
commander@^2.20.0, commander@^2.20.3, commander@~2.20.3:
|
||||||
version "2.20.3"
|
version "2.20.3"
|
||||||
resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33"
|
resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33"
|
||||||
integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
|
integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
|
||||||
@@ -3671,6 +3756,11 @@ common-path-prefix@^1.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/common-path-prefix/-/common-path-prefix-1.0.0.tgz#cd52f6f0712e0baab97d6f9732874f22f47752c0"
|
resolved "https://registry.yarnpkg.com/common-path-prefix/-/common-path-prefix-1.0.0.tgz#cd52f6f0712e0baab97d6f9732874f22f47752c0"
|
||||||
integrity sha1-zVL28HEuC6q5fW+XModPIvR3UsA=
|
integrity sha1-zVL28HEuC6q5fW+XModPIvR3UsA=
|
||||||
|
|
||||||
|
common-path-prefix@^2.0.0:
|
||||||
|
version "2.0.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/common-path-prefix/-/common-path-prefix-2.0.0.tgz#25b0265f318bf093a6ec630813aac97b29dea230"
|
||||||
|
integrity sha512-Lb9qbwwyQdRDmyib0qur7BC9/GHIbviTaQebayFsGC/n77AwFhZINCcJkQx2qVv9LJsA8F5ex65F2qrOfWGUyw==
|
||||||
|
|
||||||
commondir@^1.0.1:
|
commondir@^1.0.1:
|
||||||
version "1.0.1"
|
version "1.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b"
|
resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b"
|
||||||
@@ -3689,6 +3779,16 @@ component-emitter@^1.2.1:
|
|||||||
resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0"
|
resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0"
|
||||||
integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==
|
integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==
|
||||||
|
|
||||||
|
compress-commons@^2.1.1:
|
||||||
|
version "2.1.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/compress-commons/-/compress-commons-2.1.1.tgz#9410d9a534cf8435e3fbbb7c6ce48de2dc2f0610"
|
||||||
|
integrity sha512-eVw6n7CnEMFzc3duyFVrQEuY1BlHR3rYsSztyG32ibGMW722i3C6IizEGMFmfMU+A+fALvBIwxN3czffTcdA+Q==
|
||||||
|
dependencies:
|
||||||
|
buffer-crc32 "^0.2.13"
|
||||||
|
crc32-stream "^3.0.1"
|
||||||
|
normalize-path "^3.0.0"
|
||||||
|
readable-stream "^2.3.6"
|
||||||
|
|
||||||
concat-map@0.0.1:
|
concat-map@0.0.1:
|
||||||
version "0.0.1"
|
version "0.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
|
resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b"
|
||||||
@@ -3938,6 +4038,16 @@ cp-file@^6.1.0:
|
|||||||
pify "^4.0.1"
|
pify "^4.0.1"
|
||||||
safe-buffer "^5.0.1"
|
safe-buffer "^5.0.1"
|
||||||
|
|
||||||
|
cp-file@^7.0.0:
|
||||||
|
version "7.0.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/cp-file/-/cp-file-7.0.0.tgz#b9454cfd07fe3b974ab9ea0e5f29655791a9b8cd"
|
||||||
|
integrity sha512-0Cbj7gyvFVApzpK/uhCtQ/9kE9UnYpxMzaq5nQQC/Dh4iaj5fxp7iEFIullrYwzj8nf0qnsI1Qsx34hAeAebvw==
|
||||||
|
dependencies:
|
||||||
|
graceful-fs "^4.1.2"
|
||||||
|
make-dir "^3.0.0"
|
||||||
|
nested-error-stacks "^2.0.0"
|
||||||
|
p-event "^4.1.0"
|
||||||
|
|
||||||
cpy@7.2.0:
|
cpy@7.2.0:
|
||||||
version "7.2.0"
|
version "7.2.0"
|
||||||
resolved "https://registry.yarnpkg.com/cpy/-/cpy-7.2.0.tgz#6f0f39ec720712628b4702c32263816f4720a364"
|
resolved "https://registry.yarnpkg.com/cpy/-/cpy-7.2.0.tgz#6f0f39ec720712628b4702c32263816f4720a364"
|
||||||
@@ -3948,6 +4058,21 @@ cpy@7.2.0:
|
|||||||
globby "^9.2.0"
|
globby "^9.2.0"
|
||||||
nested-error-stacks "^2.1.0"
|
nested-error-stacks "^2.1.0"
|
||||||
|
|
||||||
|
crc32-stream@^3.0.1:
|
||||||
|
version "3.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/crc32-stream/-/crc32-stream-3.0.1.tgz#cae6eeed003b0e44d739d279de5ae63b171b4e85"
|
||||||
|
integrity sha512-mctvpXlbzsvK+6z8kJwSJ5crm7yBwrQMTybJzMw1O4lLGJqjlDCXY2Zw7KheiA6XBEcBmfLx1D88mjRGVJtY9w==
|
||||||
|
dependencies:
|
||||||
|
crc "^3.4.4"
|
||||||
|
readable-stream "^3.4.0"
|
||||||
|
|
||||||
|
crc@^3.4.4:
|
||||||
|
version "3.8.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/crc/-/crc-3.8.0.tgz#ad60269c2c856f8c299e2c4cc0de4556914056c6"
|
||||||
|
integrity sha512-iX3mfgcTMIq3ZKLIsVFAbv7+Mc10kxabAGQb8HvjA1o3T1PIYprbakQ65d3I+2HGHt6nSKkM9PYjgoJO2KcFBQ==
|
||||||
|
dependencies:
|
||||||
|
buffer "^5.1.0"
|
||||||
|
|
||||||
credit-card@3.0.1:
|
credit-card@3.0.1:
|
||||||
version "3.0.1"
|
version "3.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/credit-card/-/credit-card-3.0.1.tgz#b98f38d94adf3275f14091d8bd2cd141cc789c56"
|
resolved "https://registry.yarnpkg.com/credit-card/-/credit-card-3.0.1.tgz#b98f38d94adf3275f14091d8bd2cd141cc789c56"
|
||||||
@@ -4104,7 +4229,7 @@ debug@3.1.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
ms "2.0.0"
|
ms "2.0.0"
|
||||||
|
|
||||||
debug@4, debug@4.1.1, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1:
|
debug@4, debug@4.1.1, debug@^4.0.0, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1:
|
||||||
version "4.1.1"
|
version "4.1.1"
|
||||||
resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791"
|
resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791"
|
||||||
integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==
|
integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==
|
||||||
@@ -4359,6 +4484,83 @@ detect-newline@^2.1.0:
|
|||||||
resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2"
|
resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2"
|
||||||
integrity sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I=
|
integrity sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I=
|
||||||
|
|
||||||
|
detective-amd@^3.0.0:
|
||||||
|
version "3.0.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/detective-amd/-/detective-amd-3.0.0.tgz#40c8e21e229df8bca1ee2d4b952a7b67b01e2a5a"
|
||||||
|
integrity sha512-kOpKHyabdSKF9kj7PqYHLeHPw+TJT8q2u48tZYMkIcas28el1CYeLEJ42Nm+563/Fq060T5WknfwDhdX9+kkBQ==
|
||||||
|
dependencies:
|
||||||
|
ast-module-types "^2.3.1"
|
||||||
|
escodegen "^1.8.0"
|
||||||
|
get-amd-module-type "^3.0.0"
|
||||||
|
node-source-walk "^4.0.0"
|
||||||
|
|
||||||
|
detective-cjs@^3.1.1:
|
||||||
|
version "3.1.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/detective-cjs/-/detective-cjs-3.1.1.tgz#18da3e39a002d2098a1123d45ce1de1b0d9045a0"
|
||||||
|
integrity sha512-JQtNTBgFY6h8uT6pgph5QpV3IyxDv+z3qPk/FZRDT9TlFfm5dnRtpH39WtQEr1khqsUxVqXzKjZHpdoQvQbllg==
|
||||||
|
dependencies:
|
||||||
|
ast-module-types "^2.4.0"
|
||||||
|
node-source-walk "^4.0.0"
|
||||||
|
|
||||||
|
detective-es6@^2.1.0:
|
||||||
|
version "2.1.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/detective-es6/-/detective-es6-2.1.0.tgz#7848feaec92279d82f7b3a98d8e1f5d93483a0f7"
|
||||||
|
integrity sha512-QSHqKGOp/YBIfmIqKXaXeq2rlL+bp3bcIQMfZ+0PvKzRlELSOSZxKRvpxVcxlLuocQv4QnOfuWGniGrmPbz8MQ==
|
||||||
|
dependencies:
|
||||||
|
node-source-walk "^4.0.0"
|
||||||
|
|
||||||
|
detective-less@^1.0.2:
|
||||||
|
version "1.0.2"
|
||||||
|
resolved "https://registry.yarnpkg.com/detective-less/-/detective-less-1.0.2.tgz#a68af9ca5f69d74b7d0aa190218b211d83b4f7e3"
|
||||||
|
integrity sha512-Rps1xDkEEBSq3kLdsdnHZL1x2S4NGDcbrjmd4q+PykK5aJwDdP5MBgrJw1Xo+kyUHuv3JEzPqxr+Dj9ryeDRTA==
|
||||||
|
dependencies:
|
||||||
|
debug "^4.0.0"
|
||||||
|
gonzales-pe "^4.2.3"
|
||||||
|
node-source-walk "^4.0.0"
|
||||||
|
|
||||||
|
detective-postcss@^3.0.1:
|
||||||
|
version "3.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/detective-postcss/-/detective-postcss-3.0.1.tgz#511921951f66135e17d0ece2e7604c6e4966c9c6"
|
||||||
|
integrity sha512-tfTS2GdpUal5NY0aCqI4dpEy8Xfr88AehYKB0iBIZvo8y2g3UsrcDnrp9PR2FbzoW7xD5Rip3NJW7eCSvtqdUw==
|
||||||
|
dependencies:
|
||||||
|
debug "^4.1.1"
|
||||||
|
is-url "^1.2.4"
|
||||||
|
postcss "^7.0.2"
|
||||||
|
postcss-values-parser "^1.5.0"
|
||||||
|
|
||||||
|
detective-sass@^3.0.1:
|
||||||
|
version "3.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/detective-sass/-/detective-sass-3.0.1.tgz#496b819efd1f5c4dd3f0e19b43a8634bdd6927c4"
|
||||||
|
integrity sha512-oSbrBozRjJ+QFF4WJFbjPQKeakoaY1GiR380NPqwdbWYd5wfl5cLWv0l6LsJVqrgWfFN1bjFqSeo32Nxza8Lbw==
|
||||||
|
dependencies:
|
||||||
|
debug "^4.1.1"
|
||||||
|
gonzales-pe "^4.2.3"
|
||||||
|
node-source-walk "^4.0.0"
|
||||||
|
|
||||||
|
detective-scss@^2.0.1:
|
||||||
|
version "2.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/detective-scss/-/detective-scss-2.0.1.tgz#06f8c21ae6dedad1fccc26d544892d968083eaf8"
|
||||||
|
integrity sha512-VveyXW4WQE04s05KlJ8K0bG34jtHQVgTc9InspqoQxvnelj/rdgSAy7i2DXAazyQNFKlWSWbS+Ro2DWKFOKTPQ==
|
||||||
|
dependencies:
|
||||||
|
debug "^4.1.1"
|
||||||
|
gonzales-pe "^4.2.3"
|
||||||
|
node-source-walk "^4.0.0"
|
||||||
|
|
||||||
|
detective-stylus@^1.0.0:
|
||||||
|
version "1.0.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/detective-stylus/-/detective-stylus-1.0.0.tgz#50aee7db8babb990381f010c63fabba5b58e54cd"
|
||||||
|
integrity sha1-UK7n24uruZA4HwEMY/q7pbWOVM0=
|
||||||
|
|
||||||
|
detective-typescript@^5.8.0:
|
||||||
|
version "5.8.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/detective-typescript/-/detective-typescript-5.8.0.tgz#c46776571e26bad6c9ada020cb3cb4e5625d1311"
|
||||||
|
integrity sha512-SrsUCfCaDTF64QVMHMidRal+kmkbIc5zP8cxxZPsomWx9vuEUjBlSJNhf7/ypE5cLdJJDI4qzKDmyzqQ+iz/xg==
|
||||||
|
dependencies:
|
||||||
|
"@typescript-eslint/typescript-estree" "^2.29.0"
|
||||||
|
ast-module-types "^2.6.0"
|
||||||
|
node-source-walk "^4.2.0"
|
||||||
|
typescript "^3.8.3"
|
||||||
|
|
||||||
dezalgo@^1.0.0:
|
dezalgo@^1.0.0:
|
||||||
version "1.0.3"
|
version "1.0.3"
|
||||||
resolved "https://registry.yarnpkg.com/dezalgo/-/dezalgo-1.0.3.tgz#7f742de066fc748bc8db820569dddce49bf0d456"
|
resolved "https://registry.yarnpkg.com/dezalgo/-/dezalgo-1.0.3.tgz#7f742de066fc748bc8db820569dddce49bf0d456"
|
||||||
@@ -4555,6 +4757,11 @@ elegant-spinner@^1.0.1:
|
|||||||
resolved "https://registry.yarnpkg.com/elegant-spinner/-/elegant-spinner-1.0.1.tgz#db043521c95d7e303fd8f345bedc3349cfb0729e"
|
resolved "https://registry.yarnpkg.com/elegant-spinner/-/elegant-spinner-1.0.1.tgz#db043521c95d7e303fd8f345bedc3349cfb0729e"
|
||||||
integrity sha1-2wQ1IcldfjA/2PNFvtwzSc+wcp4=
|
integrity sha1-2wQ1IcldfjA/2PNFvtwzSc+wcp4=
|
||||||
|
|
||||||
|
elf-tools@^1.1.1:
|
||||||
|
version "1.1.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/elf-tools/-/elf-tools-1.1.1.tgz#b71bbdd37a9474bde2ad7a86057982da7b166582"
|
||||||
|
integrity sha512-SZSL+FS1mooDVRc3js6jUsEtzVrTaFxjqE8aQzyfmABGBW1UvhT6LQzY305vIGaxazY3bKIbxwsYsWynkYeggA==
|
||||||
|
|
||||||
email-prompt@0.3.2:
|
email-prompt@0.3.2:
|
||||||
version "0.3.2"
|
version "0.3.2"
|
||||||
resolved "https://registry.yarnpkg.com/email-prompt/-/email-prompt-0.3.2.tgz#2312e4474f3d67d660cf4e41c5033af59aa2179c"
|
resolved "https://registry.yarnpkg.com/email-prompt/-/email-prompt-0.3.2.tgz#2312e4474f3d67d660cf4e41c5033af59aa2179c"
|
||||||
@@ -4605,7 +4812,7 @@ end-of-stream@1.4.1:
|
|||||||
dependencies:
|
dependencies:
|
||||||
once "^1.4.0"
|
once "^1.4.0"
|
||||||
|
|
||||||
end-of-stream@^1.0.0, end-of-stream@^1.1.0:
|
end-of-stream@^1.0.0, end-of-stream@^1.1.0, end-of-stream@^1.4.1, end-of-stream@^1.4.4:
|
||||||
version "1.4.4"
|
version "1.4.4"
|
||||||
resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0"
|
resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0"
|
||||||
integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==
|
integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==
|
||||||
@@ -4724,7 +4931,7 @@ escape-string-regexp@^2.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344"
|
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344"
|
||||||
integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==
|
integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==
|
||||||
|
|
||||||
escodegen@^1.9.1:
|
escodegen@^1.8.0, escodegen@^1.9.1:
|
||||||
version "1.14.2"
|
version "1.14.2"
|
||||||
resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.14.2.tgz#14ab71bf5026c2aa08173afba22c6f3173284a84"
|
resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.14.2.tgz#14ab71bf5026c2aa08173afba22c6f3173284a84"
|
||||||
integrity sha512-InuOIiKk8wwuOFg6x9BQXbzjrQhtyXh46K9bqVTPzSo2FnyMBaYGBMC6PhQy7yxxil9vIedFBweQBMK74/7o8A==
|
integrity sha512-InuOIiKk8wwuOFg6x9BQXbzjrQhtyXh46K9bqVTPzSo2FnyMBaYGBMC6PhQy7yxxil9vIedFBweQBMK74/7o8A==
|
||||||
@@ -5316,6 +5523,11 @@ flatted@^2.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.2.tgz#4575b21e2bcee7434aa9be662f4b7b5f9c2b5138"
|
resolved "https://registry.yarnpkg.com/flatted/-/flatted-2.0.2.tgz#4575b21e2bcee7434aa9be662f4b7b5f9c2b5138"
|
||||||
integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==
|
integrity sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==
|
||||||
|
|
||||||
|
flatten@^1.0.2:
|
||||||
|
version "1.0.3"
|
||||||
|
resolved "https://registry.yarnpkg.com/flatten/-/flatten-1.0.3.tgz#c1283ac9f27b368abc1e36d1ff7b04501a30356b"
|
||||||
|
integrity sha512-dVsPA/UwQ8+2uoFe5GHtiBMu48dWLTdsuEd7CKGlZlD78r1TTWBvDuFaFGKCo/ZfEr95Uk56vZoX86OsHkUeIg==
|
||||||
|
|
||||||
flush-write-stream@^1.0.0:
|
flush-write-stream@^1.0.0:
|
||||||
version "1.1.1"
|
version "1.1.1"
|
||||||
resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz#8dd7d873a1babc207d94ead0c2e0e44276ebf2e8"
|
resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz#8dd7d873a1babc207d94ead0c2e0e44276ebf2e8"
|
||||||
@@ -5506,6 +5718,14 @@ gensync@^1.0.0-beta.1:
|
|||||||
resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.1.tgz#58f4361ff987e5ff6e1e7a210827aa371eaac269"
|
resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.1.tgz#58f4361ff987e5ff6e1e7a210827aa371eaac269"
|
||||||
integrity sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==
|
integrity sha512-r8EC6NO1sngH/zdD9fiRDLdcgnbayXah+mLgManTaIZJqEC1MZstmnox8KpnI2/fxQwrp5OpCOYWLp4rBl4Jcg==
|
||||||
|
|
||||||
|
get-amd-module-type@^3.0.0:
|
||||||
|
version "3.0.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/get-amd-module-type/-/get-amd-module-type-3.0.0.tgz#bb334662fa04427018c937774570de495845c288"
|
||||||
|
integrity sha512-99Q7COuACPfVt18zH9N4VAMyb81S6TUgJm2NgV6ERtkh9VIkAaByZkW530wl3lLN5KTtSrK9jVLxYsoP5hQKsw==
|
||||||
|
dependencies:
|
||||||
|
ast-module-types "^2.3.2"
|
||||||
|
node-source-walk "^4.0.0"
|
||||||
|
|
||||||
get-caller-file@^1.0.1:
|
get-caller-file@^1.0.1:
|
||||||
version "1.0.3"
|
version "1.0.3"
|
||||||
resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a"
|
resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a"
|
||||||
@@ -5778,6 +5998,13 @@ globby@^9.2.0:
|
|||||||
pify "^4.0.1"
|
pify "^4.0.1"
|
||||||
slash "^2.0.0"
|
slash "^2.0.0"
|
||||||
|
|
||||||
|
gonzales-pe@^4.2.3:
|
||||||
|
version "4.3.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/gonzales-pe/-/gonzales-pe-4.3.0.tgz#fe9dec5f3c557eead09ff868c65826be54d067b3"
|
||||||
|
integrity sha512-otgSPpUmdWJ43VXyiNgEYE4luzHCL2pz4wQ0OnDluC6Eg4Ko3Vexy/SrSynglw/eR+OhkzmqFCZa/OFa/RgAOQ==
|
||||||
|
dependencies:
|
||||||
|
minimist "^1.2.5"
|
||||||
|
|
||||||
got@^7.0.0:
|
got@^7.0.0:
|
||||||
version "7.1.0"
|
version "7.1.0"
|
||||||
resolved "https://registry.yarnpkg.com/got/-/got-7.1.0.tgz#05450fd84094e6bbea56f451a43a9c289166385a"
|
resolved "https://registry.yarnpkg.com/got/-/got-7.1.0.tgz#05450fd84094e6bbea56f451a43a9c289166385a"
|
||||||
@@ -6228,6 +6455,11 @@ indexed-filter@^1.0.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
append-type "^1.0.1"
|
append-type "^1.0.1"
|
||||||
|
|
||||||
|
indexes-of@^1.0.1:
|
||||||
|
version "1.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/indexes-of/-/indexes-of-1.0.1.tgz#f30f716c8e2bd346c7b67d3df3915566a7c05607"
|
||||||
|
integrity sha1-8w9xbI4r00bHtn0985FVZqfAVgc=
|
||||||
|
|
||||||
infer-owner@^1.0.3, infer-owner@^1.0.4:
|
infer-owner@^1.0.3, infer-owner@^1.0.4:
|
||||||
version "1.0.4"
|
version "1.0.4"
|
||||||
resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467"
|
resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467"
|
||||||
@@ -6241,7 +6473,7 @@ inflight@^1.0.4:
|
|||||||
once "^1.3.0"
|
once "^1.3.0"
|
||||||
wrappy "1"
|
wrappy "1"
|
||||||
|
|
||||||
inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.3:
|
inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.3:
|
||||||
version "2.0.4"
|
version "2.0.4"
|
||||||
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
|
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
|
||||||
integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
|
integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
|
||||||
@@ -6701,7 +6933,7 @@ is-url@1.2.2:
|
|||||||
resolved "https://registry.yarnpkg.com/is-url/-/is-url-1.2.2.tgz#498905a593bf47cc2d9e7f738372bbf7696c7f26"
|
resolved "https://registry.yarnpkg.com/is-url/-/is-url-1.2.2.tgz#498905a593bf47cc2d9e7f738372bbf7696c7f26"
|
||||||
integrity sha1-SYkFpZO/R8wtnn9zg3K792lsfyY=
|
integrity sha1-SYkFpZO/R8wtnn9zg3K792lsfyY=
|
||||||
|
|
||||||
is-url@^1.2.1:
|
is-url@^1.2.1, is-url@^1.2.4:
|
||||||
version "1.2.4"
|
version "1.2.4"
|
||||||
resolved "https://registry.yarnpkg.com/is-url/-/is-url-1.2.4.tgz#04a4df46d28c4cff3d73d01ff06abeb318a1aa52"
|
resolved "https://registry.yarnpkg.com/is-url/-/is-url-1.2.4.tgz#04a4df46d28c4cff3d73d01ff06abeb318a1aa52"
|
||||||
integrity sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==
|
integrity sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==
|
||||||
@@ -7348,6 +7580,11 @@ jsprim@^1.2.2:
|
|||||||
json-schema "0.2.3"
|
json-schema "0.2.3"
|
||||||
verror "1.10.0"
|
verror "1.10.0"
|
||||||
|
|
||||||
|
junk@^3.1.0:
|
||||||
|
version "3.1.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/junk/-/junk-3.1.0.tgz#31499098d902b7e98c5d9b9c80f43457a88abfa1"
|
||||||
|
integrity sha512-pBxcB3LFc8QVgdggvZWyeys+hnrNWg4OcZIU/1X59k5jQdLBlCsYGRQaz234SqoRLTCgMH00fY0xRJH+F9METQ==
|
||||||
|
|
||||||
just-extend@^4.0.2:
|
just-extend@^4.0.2:
|
||||||
version "4.1.0"
|
version "4.1.0"
|
||||||
resolved "https://registry.yarnpkg.com/just-extend/-/just-extend-4.1.0.tgz#7278a4027d889601640ee0ce0e5a00b992467da4"
|
resolved "https://registry.yarnpkg.com/just-extend/-/just-extend-4.1.0.tgz#7278a4027d889601640ee0ce0e5a00b992467da4"
|
||||||
@@ -7396,6 +7633,13 @@ latest-version@^5.0.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
package-json "^6.3.0"
|
package-json "^6.3.0"
|
||||||
|
|
||||||
|
lazystream@^1.0.0:
|
||||||
|
version "1.0.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/lazystream/-/lazystream-1.0.0.tgz#f6995fe0f820392f61396be89462407bb77168e4"
|
||||||
|
integrity sha1-9plf4PggOS9hOWvolGJAe7dxaOQ=
|
||||||
|
dependencies:
|
||||||
|
readable-stream "^2.0.5"
|
||||||
|
|
||||||
lcid@^2.0.0:
|
lcid@^2.0.0:
|
||||||
version "2.0.0"
|
version "2.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/lcid/-/lcid-2.0.0.tgz#6ef5d2df60e52f82eb228a4c373e8d1f397253cf"
|
resolved "https://registry.yarnpkg.com/lcid/-/lcid-2.0.0.tgz#6ef5d2df60e52f82eb228a4c373e8d1f397253cf"
|
||||||
@@ -7603,6 +7847,21 @@ lodash.deburr@^4.1.0:
|
|||||||
resolved "https://registry.yarnpkg.com/lodash.deburr/-/lodash.deburr-4.1.0.tgz#ddb1bbb3ef07458c0177ba07de14422cb033ff9b"
|
resolved "https://registry.yarnpkg.com/lodash.deburr/-/lodash.deburr-4.1.0.tgz#ddb1bbb3ef07458c0177ba07de14422cb033ff9b"
|
||||||
integrity sha1-3bG7s+8HRYwBd7oH3hRCLLAz/5s=
|
integrity sha1-3bG7s+8HRYwBd7oH3hRCLLAz/5s=
|
||||||
|
|
||||||
|
lodash.defaults@^4.2.0:
|
||||||
|
version "4.2.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c"
|
||||||
|
integrity sha1-0JF4cW/+pN3p5ft7N/bwgCJ0WAw=
|
||||||
|
|
||||||
|
lodash.difference@^4.5.0:
|
||||||
|
version "4.5.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/lodash.difference/-/lodash.difference-4.5.0.tgz#9ccb4e505d486b91651345772885a2df27fd017c"
|
||||||
|
integrity sha1-nMtOUF1Ia5FlE0V3KIWi3yf9AXw=
|
||||||
|
|
||||||
|
lodash.flatten@^4.4.0:
|
||||||
|
version "4.4.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz#f31c22225a9632d2bbf8e4addbef240aa765a61f"
|
||||||
|
integrity sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=
|
||||||
|
|
||||||
lodash.flattendeep@^4.4.0:
|
lodash.flattendeep@^4.4.0:
|
||||||
version "4.4.0"
|
version "4.4.0"
|
||||||
resolved "https://registry.yarnpkg.com/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz#fb030917f86a3134e5bc9bec0d69e0013ddfedb2"
|
resolved "https://registry.yarnpkg.com/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz#fb030917f86a3134e5bc9bec0d69e0013ddfedb2"
|
||||||
@@ -7668,6 +7927,11 @@ lodash.unescape@4.0.1:
|
|||||||
resolved "https://registry.yarnpkg.com/lodash.unescape/-/lodash.unescape-4.0.1.tgz#bf2249886ce514cda112fae9218cdc065211fc9c"
|
resolved "https://registry.yarnpkg.com/lodash.unescape/-/lodash.unescape-4.0.1.tgz#bf2249886ce514cda112fae9218cdc065211fc9c"
|
||||||
integrity sha1-vyJJiGzlFM2hEvrpIYzcBlIR/Jw=
|
integrity sha1-vyJJiGzlFM2hEvrpIYzcBlIR/Jw=
|
||||||
|
|
||||||
|
lodash.union@^4.6.0:
|
||||||
|
version "4.6.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/lodash.union/-/lodash.union-4.6.0.tgz#48bb5088409f16f1821666641c44dd1aaae3cd88"
|
||||||
|
integrity sha1-SLtQiECfFvGCFmZkHETdGqrjzYg=
|
||||||
|
|
||||||
lodash.uniq@^4.5.0:
|
lodash.uniq@^4.5.0:
|
||||||
version "4.5.0"
|
version "4.5.0"
|
||||||
resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"
|
resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773"
|
||||||
@@ -7793,7 +8057,7 @@ make-dir@^2.0.0, make-dir@^2.1.0:
|
|||||||
pify "^4.0.1"
|
pify "^4.0.1"
|
||||||
semver "^5.6.0"
|
semver "^5.6.0"
|
||||||
|
|
||||||
make-dir@^3.0.0:
|
make-dir@^3.0.0, make-dir@^3.0.2:
|
||||||
version "3.1.0"
|
version "3.1.0"
|
||||||
resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f"
|
resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f"
|
||||||
integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==
|
integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==
|
||||||
@@ -8174,6 +8438,14 @@ modify-values@^1.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022"
|
resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022"
|
||||||
integrity sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==
|
integrity sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==
|
||||||
|
|
||||||
|
module-definition@^3.3.0:
|
||||||
|
version "3.3.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/module-definition/-/module-definition-3.3.0.tgz#aae06d68c99c5f93841e59b8a4469b974956d4d4"
|
||||||
|
integrity sha512-HTplA9xwDzH67XJFC1YvZMUElWJD28DV0dUq7lhTs+JKJamUOWA/CcYWSlhW5amJO66uWtY7XdltT+LfX0wIVg==
|
||||||
|
dependencies:
|
||||||
|
ast-module-types "^2.6.0"
|
||||||
|
node-source-walk "^4.0.0"
|
||||||
|
|
||||||
move-concurrently@^1.0.1:
|
move-concurrently@^1.0.1:
|
||||||
version "1.0.1"
|
version "1.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92"
|
resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92"
|
||||||
@@ -8398,6 +8670,13 @@ node-pre-gyp@^0.13.0:
|
|||||||
semver "^5.3.0"
|
semver "^5.3.0"
|
||||||
tar "^4"
|
tar "^4"
|
||||||
|
|
||||||
|
node-source-walk@^4.0.0, node-source-walk@^4.2.0:
|
||||||
|
version "4.2.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/node-source-walk/-/node-source-walk-4.2.0.tgz#c2efe731ea8ba9c03c562aa0a9d984e54f27bc2c"
|
||||||
|
integrity sha512-hPs/QMe6zS94f5+jG3kk9E7TNm4P2SulrKiLWMzKszBfNZvL/V6wseHlTd7IvfW0NZWqPtK3+9yYNr+3USGteA==
|
||||||
|
dependencies:
|
||||||
|
"@babel/parser" "^7.0.0"
|
||||||
|
|
||||||
nopt@^4.0.1:
|
nopt@^4.0.1:
|
||||||
version "4.0.3"
|
version "4.0.3"
|
||||||
resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48"
|
resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48"
|
||||||
@@ -8796,6 +9075,13 @@ p-event@^1.0.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
p-timeout "^1.1.1"
|
p-timeout "^1.1.1"
|
||||||
|
|
||||||
|
p-event@^4.1.0:
|
||||||
|
version "4.2.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/p-event/-/p-event-4.2.0.tgz#af4b049c8acd91ae81083ebd1e6f5cae2044c1b5"
|
||||||
|
integrity sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ==
|
||||||
|
dependencies:
|
||||||
|
p-timeout "^3.1.0"
|
||||||
|
|
||||||
p-finally@^1.0.0:
|
p-finally@^1.0.0:
|
||||||
version "1.0.0"
|
version "1.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae"
|
resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae"
|
||||||
@@ -8889,6 +9175,13 @@ p-timeout@^1.1.1:
|
|||||||
dependencies:
|
dependencies:
|
||||||
p-finally "^1.0.0"
|
p-finally "^1.0.0"
|
||||||
|
|
||||||
|
p-timeout@^3.1.0:
|
||||||
|
version "3.2.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-3.2.0.tgz#c7e17abc971d2a7962ef83626b35d635acf23dfe"
|
||||||
|
integrity sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==
|
||||||
|
dependencies:
|
||||||
|
p-finally "^1.0.0"
|
||||||
|
|
||||||
p-try@^1.0.0:
|
p-try@^1.0.0:
|
||||||
version "1.0.0"
|
version "1.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3"
|
resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3"
|
||||||
@@ -9246,6 +9539,43 @@ posix-character-classes@^0.1.0:
|
|||||||
resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab"
|
resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab"
|
||||||
integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=
|
integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs=
|
||||||
|
|
||||||
|
postcss-values-parser@^1.5.0:
|
||||||
|
version "1.5.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/postcss-values-parser/-/postcss-values-parser-1.5.0.tgz#5d9fa63e2bcb0179ce48f3235303765eb89f3047"
|
||||||
|
integrity sha512-3M3p+2gMp0AH3da530TlX8kiO1nxdTnc3C6vr8dMxRLIlh8UYkz0/wcwptSXjhtx2Fr0TySI7a+BHDQ8NL7LaQ==
|
||||||
|
dependencies:
|
||||||
|
flatten "^1.0.2"
|
||||||
|
indexes-of "^1.0.1"
|
||||||
|
uniq "^1.0.1"
|
||||||
|
|
||||||
|
postcss@^7.0.2:
|
||||||
|
version "7.0.32"
|
||||||
|
resolved "https://registry.yarnpkg.com/postcss/-/postcss-7.0.32.tgz#4310d6ee347053da3433db2be492883d62cec59d"
|
||||||
|
integrity sha512-03eXong5NLnNCD05xscnGKGDZ98CyzoqPSMjOe6SuoQY7Z2hIj0Ld1g/O/UQRuOle2aRtiIRDg9tDcTGAkLfKw==
|
||||||
|
dependencies:
|
||||||
|
chalk "^2.4.2"
|
||||||
|
source-map "^0.6.1"
|
||||||
|
supports-color "^6.1.0"
|
||||||
|
|
||||||
|
precinct@^6.2.0:
|
||||||
|
version "6.3.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/precinct/-/precinct-6.3.1.tgz#8ad735a8afdfc48b56ed39c9ad3bf999b6b928dc"
|
||||||
|
integrity sha512-JAwyLCgTylWminoD7V0VJwMElWmwrVSR6r9HaPWCoswkB4iFzX7aNtO7VBfAVPy+NhmjKb8IF8UmlWJXzUkOIQ==
|
||||||
|
dependencies:
|
||||||
|
commander "^2.20.3"
|
||||||
|
debug "^4.1.1"
|
||||||
|
detective-amd "^3.0.0"
|
||||||
|
detective-cjs "^3.1.1"
|
||||||
|
detective-es6 "^2.1.0"
|
||||||
|
detective-less "^1.0.2"
|
||||||
|
detective-postcss "^3.0.1"
|
||||||
|
detective-sass "^3.0.1"
|
||||||
|
detective-scss "^2.0.1"
|
||||||
|
detective-stylus "^1.0.0"
|
||||||
|
detective-typescript "^5.8.0"
|
||||||
|
module-definition "^3.3.0"
|
||||||
|
node-source-walk "^4.2.0"
|
||||||
|
|
||||||
prelude-ls@~1.1.2:
|
prelude-ls@~1.1.2:
|
||||||
version "1.1.2"
|
version "1.1.2"
|
||||||
resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
|
resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54"
|
||||||
@@ -9616,7 +9946,7 @@ read@1, read@~1.0.1:
|
|||||||
string_decoder "~1.1.1"
|
string_decoder "~1.1.1"
|
||||||
util-deprecate "~1.0.1"
|
util-deprecate "~1.0.1"
|
||||||
|
|
||||||
"readable-stream@2 || 3", readable-stream@^3.0.2, readable-stream@^3.1.1:
|
"readable-stream@2 || 3", readable-stream@^3.0.2, readable-stream@^3.1.1, readable-stream@^3.4.0:
|
||||||
version "3.6.0"
|
version "3.6.0"
|
||||||
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198"
|
resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198"
|
||||||
integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==
|
integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==
|
||||||
@@ -9844,6 +10174,11 @@ require-main-filename@^2.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b"
|
resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b"
|
||||||
integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==
|
integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==
|
||||||
|
|
||||||
|
require-package-name@^2.0.1:
|
||||||
|
version "2.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/require-package-name/-/require-package-name-2.0.1.tgz#c11e97276b65b8e2923f75dabf5fb2ef0c3841b9"
|
||||||
|
integrity sha1-wR6XJ2tluOKSP3Xav1+y7ww4Qbk=
|
||||||
|
|
||||||
require-precompiled@^0.1.0:
|
require-precompiled@^0.1.0:
|
||||||
version "0.1.0"
|
version "0.1.0"
|
||||||
resolved "https://registry.yarnpkg.com/require-precompiled/-/require-precompiled-0.1.0.tgz#5a1b52eb70ebed43eb982e974c85ab59571e56fa"
|
resolved "https://registry.yarnpkg.com/require-precompiled/-/require-precompiled-0.1.0.tgz#5a1b52eb70ebed43eb982e974c85ab59571e56fa"
|
||||||
@@ -9900,6 +10235,13 @@ resolve@1.x, resolve@^1.10.0, resolve@^1.3.2:
|
|||||||
dependencies:
|
dependencies:
|
||||||
path-parse "^1.0.6"
|
path-parse "^1.0.6"
|
||||||
|
|
||||||
|
resolve@^2.0.0-next.1:
|
||||||
|
version "2.0.0-next.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/resolve/-/resolve-2.0.0-next.1.tgz#4d96ccb89bf82d54ab037241ae053db4e92bb5f1"
|
||||||
|
integrity sha512-ZGTmuLZAW++TDjgslfUMRZcv7kXHv8z0zwxvuRWOPjnqc56HVsn1lVaqsWOZeQ8MwiilPVJLrcPVKG909QsAfA==
|
||||||
|
dependencies:
|
||||||
|
path-parse "^1.0.6"
|
||||||
|
|
||||||
responselike@^1.0.2:
|
responselike@^1.0.2:
|
||||||
version "1.0.2"
|
version "1.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7"
|
resolved "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7"
|
||||||
@@ -10855,6 +11197,17 @@ tar-stream@^1.1.2, tar-stream@^1.5.2:
|
|||||||
to-buffer "^1.1.1"
|
to-buffer "^1.1.1"
|
||||||
xtend "^4.0.0"
|
xtend "^4.0.0"
|
||||||
|
|
||||||
|
tar-stream@^2.1.0:
|
||||||
|
version "2.1.2"
|
||||||
|
resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.1.2.tgz#6d5ef1a7e5783a95ff70b69b97455a5968dc1325"
|
||||||
|
integrity sha512-UaF6FoJ32WqALZGOIAApXx+OdxhekNMChu6axLJR85zMMjXKWFGjbIRe+J6P4UnRGg9rAwWvbTT0oI7hD/Un7Q==
|
||||||
|
dependencies:
|
||||||
|
bl "^4.0.1"
|
||||||
|
end-of-stream "^1.4.1"
|
||||||
|
fs-constants "^1.0.0"
|
||||||
|
inherits "^2.0.3"
|
||||||
|
readable-stream "^3.1.1"
|
||||||
|
|
||||||
tar@4.4.6:
|
tar@4.4.6:
|
||||||
version "4.4.6"
|
version "4.4.6"
|
||||||
resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.6.tgz#63110f09c00b4e60ac8bcfe1bf3c8660235fbc9b"
|
resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.6.tgz#63110f09c00b4e60ac8bcfe1bf3c8660235fbc9b"
|
||||||
@@ -11285,6 +11638,11 @@ typescript@3.9.3:
|
|||||||
resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.9.3.tgz#d3ac8883a97c26139e42df5e93eeece33d610b8a"
|
resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.9.3.tgz#d3ac8883a97c26139e42df5e93eeece33d610b8a"
|
||||||
integrity sha512-D/wqnB2xzNFIcoBG9FG8cXRDjiqSTbG2wd8DMZeQyJlP1vfTkIxH4GKveWaEBYySKIg+USu+E+EDIR47SqnaMQ==
|
integrity sha512-D/wqnB2xzNFIcoBG9FG8cXRDjiqSTbG2wd8DMZeQyJlP1vfTkIxH4GKveWaEBYySKIg+USu+E+EDIR47SqnaMQ==
|
||||||
|
|
||||||
|
typescript@^3.8.3:
|
||||||
|
version "3.9.5"
|
||||||
|
resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.9.5.tgz#586f0dba300cde8be52dd1ac4f7e1009c1b13f36"
|
||||||
|
integrity sha512-hSAifV3k+i6lEoCJ2k6R2Z/rp/H3+8sdmcn5NrS3/3kE7+RyZXm9aqvxWqjEXHAd8b0pShatpcdMTvEdvAJltQ==
|
||||||
|
|
||||||
uglify-js@^3.1.4:
|
uglify-js@^3.1.4:
|
||||||
version "3.9.4"
|
version "3.9.4"
|
||||||
resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.9.4.tgz#867402377e043c1fc7b102253a22b64e5862401b"
|
resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.9.4.tgz#867402377e043c1fc7b102253a22b64e5862401b"
|
||||||
@@ -11353,6 +11711,11 @@ union-value@^1.0.0:
|
|||||||
is-extendable "^0.1.1"
|
is-extendable "^0.1.1"
|
||||||
set-value "^2.0.1"
|
set-value "^2.0.1"
|
||||||
|
|
||||||
|
uniq@^1.0.1:
|
||||||
|
version "1.0.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/uniq/-/uniq-1.0.1.tgz#b31c5ae8254844a3a8281541ce2b04b865a734ff"
|
||||||
|
integrity sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=
|
||||||
|
|
||||||
unique-filename@^1.1.1:
|
unique-filename@^1.1.1:
|
||||||
version "1.1.1"
|
version "1.1.1"
|
||||||
resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230"
|
resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230"
|
||||||
@@ -11418,6 +11781,13 @@ universalify@^0.1.0:
|
|||||||
resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66"
|
resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66"
|
||||||
integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==
|
integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==
|
||||||
|
|
||||||
|
unixify@^1.0.0:
|
||||||
|
version "1.0.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/unixify/-/unixify-1.0.0.tgz#3a641c8c2ffbce4da683a5c70f03a462940c2090"
|
||||||
|
integrity sha1-OmQcjC/7zk2mg6XHDwOkYpQMIJA=
|
||||||
|
dependencies:
|
||||||
|
normalize-path "^2.1.1"
|
||||||
|
|
||||||
unpipe@1.0.0:
|
unpipe@1.0.0:
|
||||||
version "1.0.0"
|
version "1.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec"
|
resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec"
|
||||||
@@ -11521,7 +11891,7 @@ util-promisify@^2.1.0:
|
|||||||
dependencies:
|
dependencies:
|
||||||
object.getownpropertydescriptors "^2.0.3"
|
object.getownpropertydescriptors "^2.0.3"
|
||||||
|
|
||||||
util.promisify@^1.0.0:
|
util.promisify@^1.0.0, util.promisify@^1.0.1:
|
||||||
version "1.0.1"
|
version "1.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.1.tgz#6baf7774b80eeb0f7520d8b81d07982a59abbaee"
|
resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.1.tgz#6baf7774b80eeb0f7520d8b81d07982a59abbaee"
|
||||||
integrity sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==
|
integrity sha512-g9JpC/3He3bm38zsLupWryXHoEcS22YHthuPQSJdMy6KNrzIRzWqcsHzD/WUnqe45whVou4VIsPew37DoXWNrA==
|
||||||
@@ -11737,6 +12107,15 @@ wrap-ansi@^5.1.0:
|
|||||||
string-width "^3.0.0"
|
string-width "^3.0.0"
|
||||||
strip-ansi "^5.0.0"
|
strip-ansi "^5.0.0"
|
||||||
|
|
||||||
|
wrap-ansi@^6.2.0:
|
||||||
|
version "6.2.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53"
|
||||||
|
integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==
|
||||||
|
dependencies:
|
||||||
|
ansi-styles "^4.0.0"
|
||||||
|
string-width "^4.1.0"
|
||||||
|
strip-ansi "^6.0.0"
|
||||||
|
|
||||||
wrappy@1:
|
wrappy@1:
|
||||||
version "1.0.2"
|
version "1.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
|
resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
|
||||||
@@ -11900,7 +12279,7 @@ yargs-parser@^13.1.2:
|
|||||||
camelcase "^5.0.0"
|
camelcase "^5.0.0"
|
||||||
decamelize "^1.2.0"
|
decamelize "^1.2.0"
|
||||||
|
|
||||||
yargs-parser@^18.1.3:
|
yargs-parser@^18.1.1, yargs-parser@^18.1.3:
|
||||||
version "18.1.3"
|
version "18.1.3"
|
||||||
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0"
|
resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0"
|
||||||
integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==
|
integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==
|
||||||
@@ -11942,6 +12321,23 @@ yargs@^13.3.0:
|
|||||||
y18n "^4.0.0"
|
y18n "^4.0.0"
|
||||||
yargs-parser "^13.1.2"
|
yargs-parser "^13.1.2"
|
||||||
|
|
||||||
|
yargs@^15.3.1:
|
||||||
|
version "15.3.1"
|
||||||
|
resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.3.1.tgz#9505b472763963e54afe60148ad27a330818e98b"
|
||||||
|
integrity sha512-92O1HWEjw27sBfgmXiixJWT5hRBp2eobqXicLtPBIDBhYB+1HpwZlXmbW2luivBJHBzki+7VyCLRtAkScbTBQA==
|
||||||
|
dependencies:
|
||||||
|
cliui "^6.0.0"
|
||||||
|
decamelize "^1.2.0"
|
||||||
|
find-up "^4.1.0"
|
||||||
|
get-caller-file "^2.0.1"
|
||||||
|
require-directory "^2.1.1"
|
||||||
|
require-main-filename "^2.0.0"
|
||||||
|
set-blocking "^2.0.0"
|
||||||
|
string-width "^4.2.0"
|
||||||
|
which-module "^2.0.0"
|
||||||
|
y18n "^4.0.0"
|
||||||
|
yargs-parser "^18.1.1"
|
||||||
|
|
||||||
yauzl-clone@^1.0.4:
|
yauzl-clone@^1.0.4:
|
||||||
version "1.0.4"
|
version "1.0.4"
|
||||||
resolved "https://registry.yarnpkg.com/yauzl-clone/-/yauzl-clone-1.0.4.tgz#8bc6d293b17cc98802bbbed2e289d18e7697c96c"
|
resolved "https://registry.yarnpkg.com/yauzl-clone/-/yauzl-clone-1.0.4.tgz#8bc6d293b17cc98802bbbed2e289d18e7697c96c"
|
||||||
@@ -11982,3 +12378,12 @@ yn@3.1.1, yn@^3.0.0:
|
|||||||
version "3.1.1"
|
version "3.1.1"
|
||||||
resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50"
|
resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50"
|
||||||
integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==
|
integrity sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==
|
||||||
|
|
||||||
|
zip-stream@^2.1.2:
|
||||||
|
version "2.1.3"
|
||||||
|
resolved "https://registry.yarnpkg.com/zip-stream/-/zip-stream-2.1.3.tgz#26cc4bdb93641a8590dd07112e1f77af1758865b"
|
||||||
|
integrity sha512-EkXc2JGcKhO5N5aZ7TmuNo45budRaFGHOmz24wtJR7znbNqDPmdZtUauKX6et8KAVseAMBOyWJqEpXcHTBsh7Q==
|
||||||
|
dependencies:
|
||||||
|
archiver-utils "^2.1.0"
|
||||||
|
compress-commons "^2.1.1"
|
||||||
|
readable-stream "^3.4.0"
|
||||||
|
|||||||
Reference in New Issue
Block a user