the way towards webpack 5 typings (#29105)

Co-authored-by: sokra <sokra@users.noreply.github.com>
This commit is contained in:
Tobias Koppers 2021-09-21 19:17:16 +02:00 committed by GitHub
parent 90a3b50ce1
commit 4f212ee91d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
75 changed files with 124582 additions and 154108 deletions

2
.gitattributes vendored Normal file
View file

@ -0,0 +1,2 @@
packages/next/bundles/** -text
packages/next/compiled/** -text

View file

@ -53,7 +53,9 @@ jobs:
- uses: actions/cache@v2 - uses: actions/cache@v2
id: cache-build id: cache-build
with: with:
path: ./* path: |
./*
!./.git
key: ${{ github.sha }} key: ${{ github.sha }}
lint: lint:
@ -63,7 +65,9 @@ jobs:
- uses: actions/cache@v2 - uses: actions/cache@v2
id: restore-build id: restore-build
with: with:
path: ./* path: |
./*
!./.git
key: ${{ github.sha }} key: ${{ github.sha }}
- run: ./scripts/check-manifests.js - run: ./scripts/check-manifests.js
- run: yarn lint - run: yarn lint
@ -75,29 +79,44 @@ jobs:
env: env:
NEXT_TELEMETRY_DISABLED: 1 NEXT_TELEMETRY_DISABLED: 1
steps: steps:
- uses: actions/checkout@v2
if: ${{needs.build.outputs.docsChange != 'docs only change'}}
# https://github.com/actions/virtual-environments/issues/1187 # https://github.com/actions/virtual-environments/issues/1187
- name: tune linux network - name: tune linux network
if: ${{needs.build.outputs.docsChange != 'docs only change'}}
run: sudo ethtool -K eth0 tx off rx off run: sudo ethtool -K eth0 tx off rx off
- uses: actions/cache@v2 - uses: actions/cache@v2
if: ${{needs.build.outputs.docsChange != 'docs only change'}} if: ${{needs.build.outputs.docsChange != 'docs only change'}}
id: restore-build id: restore-build
with: with:
path: ./* path: |
./*
!./.git
key: ${{ github.sha }} key: ${{ github.sha }}
- uses: actions/download-artifact@v2 - uses: actions/download-artifact@v2
if: ${{needs.build.outputs.docsChange != 'docs only change'}} if: ${{needs.build.outputs.docsChange != 'docs only change'}}
with: with:
name: next-swc-binaries name: next-swc-binaries
path: packages/next/build/swc/dist path: packages/next/build/swc/dist
# Only check linux build for now, mac builds can sometimes be different even with the same code # Only check linux build for now, mac builds can sometimes be different even with the same code
- run: | - run: |
mv ./packages/next/build/swc/dist/next-swc.linux-x64-gnu.node \ mv ./packages/next/build/swc/dist/next-swc.linux-x64-gnu.node \
./packages/next/native/next-swc.linux-x64-gnu.node ./packages/next/native/next-swc.linux-x64-gnu.node
if: ${{needs.build.outputs.docsChange != 'docs only change'}} if: ${{needs.build.outputs.docsChange != 'docs only change'}}
- run: ./scripts/check-pre-compiled.sh - run: ./scripts/check-pre-compiled.sh
if: ${{needs.build.outputs.docsChange != 'docs only change'}} if: ${{needs.build.outputs.docsChange != 'docs only change'}}
- uses: EndBug/add-and-commit@v7
if: ${{ failure() }}
with:
add: 'packages/next/compiled packages/next/bundles --force'
message: '⚙ Update compiled files'
testUnit: testUnit:
name: Test Unit name: Test Unit
runs-on: ubuntu-latest runs-on: ubuntu-latest
@ -110,7 +129,9 @@ jobs:
if: ${{needs.build.outputs.docsChange != 'docs only change'}} if: ${{needs.build.outputs.docsChange != 'docs only change'}}
id: restore-build id: restore-build
with: with:
path: ./* path: |
./*
!./.git
key: ${{ github.sha }} key: ${{ github.sha }}
- run: node run-tests.js --type unit - run: node run-tests.js --type unit
@ -134,7 +155,9 @@ jobs:
if: ${{needs.build.outputs.docsChange != 'docs only change'}} if: ${{needs.build.outputs.docsChange != 'docs only change'}}
id: restore-build id: restore-build
with: with:
path: ./* path: |
./*
!./.git
key: ${{ github.sha }} key: ${{ github.sha }}
- run: npm i -g playwright-chromium@1.14.1 && npx playwright install-deps - run: npm i -g playwright-chromium@1.14.1 && npx playwright install-deps
@ -170,7 +193,9 @@ jobs:
if: ${{needs.build.outputs.docsChange != 'docs only change'}} if: ${{needs.build.outputs.docsChange != 'docs only change'}}
id: restore-build id: restore-build
with: with:
path: ./* path: |
./*
!./.git
key: ${{ github.sha }} key: ${{ github.sha }}
- run: npm i -g playwright-chromium@1.14.1 && npx playwright install-deps - run: npm i -g playwright-chromium@1.14.1 && npx playwright install-deps
@ -210,7 +235,9 @@ jobs:
if: ${{needs.build.outputs.docsChange != 'docs only change'}} if: ${{needs.build.outputs.docsChange != 'docs only change'}}
id: restore-build id: restore-build
with: with:
path: ./* path: |
./*
!./.git
key: ${{ github.sha }} key: ${{ github.sha }}
- run: npm i -g playwright-chromium@1.14.1 && npx playwright install-deps - run: npm i -g playwright-chromium@1.14.1 && npx playwright install-deps
@ -236,7 +263,9 @@ jobs:
if: ${{needs.build.outputs.docsChange != 'docs only change'}} if: ${{needs.build.outputs.docsChange != 'docs only change'}}
id: restore-build id: restore-build
with: with:
path: ./* path: |
./*
!./.git
key: ${{ github.sha }} key: ${{ github.sha }}
# TODO: remove after we fix watchpack watching too much # TODO: remove after we fix watchpack watching too much
@ -260,7 +289,9 @@ jobs:
if: ${{needs.build.outputs.docsChange != 'docs only change'}} if: ${{needs.build.outputs.docsChange != 'docs only change'}}
id: restore-build id: restore-build
with: with:
path: ./* path: |
./*
!./.git
key: ${{ github.sha }} key: ${{ github.sha }}
- run: bash ./scripts/test-pnp.sh - run: bash ./scripts/test-pnp.sh
@ -272,6 +303,8 @@ jobs:
needs: needs:
[ [
lint, lint,
check-examples,
test-native,
checkPrecompiled, checkPrecompiled,
testIntegration, testIntegration,
testUnit, testUnit,
@ -300,7 +333,9 @@ jobs:
if: ${{needs.build.outputs.docsChange != 'docs only change'}} if: ${{needs.build.outputs.docsChange != 'docs only change'}}
id: restore-build id: restore-build
with: with:
path: ./* path: |
./*
!./.git
key: ${{ github.sha }} key: ${{ github.sha }}
- run: npm i -g playwright-chromium@1.14.1 && npx playwright install-deps - run: npm i -g playwright-chromium@1.14.1 && npx playwright install-deps
@ -321,7 +356,9 @@ jobs:
if: ${{needs.build.outputs.docsChange != 'docs only change'}} if: ${{needs.build.outputs.docsChange != 'docs only change'}}
id: restore-build id: restore-build
with: with:
path: ./* path: |
./*
!./.git
key: ${{ github.sha }} key: ${{ github.sha }}
- run: npx playwright install-deps && npx playwright install firefox - run: npx playwright install-deps && npx playwright install firefox
if: ${{needs.build.outputs.docsChange != 'docs only change'}} if: ${{needs.build.outputs.docsChange != 'docs only change'}}
@ -348,7 +385,9 @@ jobs:
if: ${{needs.build.outputs.docsChange != 'docs only change'}} if: ${{needs.build.outputs.docsChange != 'docs only change'}}
id: restore-build id: restore-build
with: with:
path: ./* path: |
./*
!./.git
key: ${{ github.sha }} key: ${{ github.sha }}
# TODO: use macos runner so that we can use playwright to test against # TODO: use macos runner so that we can use playwright to test against
@ -380,7 +419,9 @@ jobs:
if: ${{needs.build.outputs.docsChange != 'docs only change'}} if: ${{needs.build.outputs.docsChange != 'docs only change'}}
id: restore-build id: restore-build
with: with:
path: ./* path: |
./*
!./.git
key: ${{ github.sha }} key: ${{ github.sha }}
- run: '[[ -z "$BROWSERSTACK_ACCESS_KEY" ]] && echo "Skipping for PR" || npm i -g browserstack-local@1.4.0' - run: '[[ -z "$BROWSERSTACK_ACCESS_KEY" ]] && echo "Skipping for PR" || npm i -g browserstack-local@1.4.0'
@ -404,7 +445,9 @@ jobs:
- uses: actions/cache@v2 - uses: actions/cache@v2
id: restore-build id: restore-build
with: with:
path: ./* path: |
./*
!./.git
key: ${{ github.sha }} key: ${{ github.sha }}
- uses: actions/download-artifact@v2 - uses: actions/download-artifact@v2
with: with:
@ -422,7 +465,9 @@ jobs:
- uses: actions/cache@v2 - uses: actions/cache@v2
id: restore-build id: restore-build
with: with:
path: ./* path: |
./*
!./.git
key: ${{ github.sha }} key: ${{ github.sha }}
- run: ./scripts/release-stats.sh - run: ./scripts/release-stats.sh
- uses: ./.github/actions/next-stats-action - uses: ./.github/actions/next-stats-action

View file

@ -1,5 +1,6 @@
{ {
"name": "nextjs-project", "name": "nextjs-project",
"version": "0.0.0",
"private": true, "private": true,
"workspaces": [ "workspaces": [
"packages/*" "packages/*"
@ -61,6 +62,24 @@
"@typescript-eslint/eslint-plugin": "4.29.1", "@typescript-eslint/eslint-plugin": "4.29.1",
"@typescript-eslint/parser": "4.29.1", "@typescript-eslint/parser": "4.29.1",
"@vercel/fetch": "6.1.1", "@vercel/fetch": "6.1.1",
"@webassemblyjs/ast": "1.11.1",
"@webassemblyjs/floating-point-hex-parser": "1.11.1",
"@webassemblyjs/helper-api-error": "1.11.1",
"@webassemblyjs/helper-buffer": "1.11.1",
"@webassemblyjs/helper-code-frame": "npm:empty-npm-package@1.0.0",
"@webassemblyjs/helper-module-context": "npm:empty-npm-package@1.0.0",
"@webassemblyjs/helper-numbers": "1.11.1",
"@webassemblyjs/helper-wasm-bytecode": "1.11.1",
"@webassemblyjs/helper-wasm-section": "1.11.1",
"@webassemblyjs/ieee754": "1.11.1",
"@webassemblyjs/leb128": "1.11.1",
"@webassemblyjs/utf8": "1.11.1",
"@webassemblyjs/wasm-edit": "1.11.1",
"@webassemblyjs/wasm-gen": "1.11.1",
"@webassemblyjs/wasm-opt": "1.11.1",
"@webassemblyjs/wasm-parser": "1.11.1",
"@webassemblyjs/wast-parser": "npm:empty-npm-package@1.0.0",
"@webassemblyjs/wast-printer": "1.11.1",
"@zeit/next-css": "1.0.2-canary.2", "@zeit/next-css": "1.0.2-canary.2",
"@zeit/next-sass": "1.0.2-canary.2", "@zeit/next-sass": "1.0.2-canary.2",
"@zeit/next-typescript": "1.1.2-canary.0", "@zeit/next-typescript": "1.1.2-canary.0",
@ -68,7 +87,7 @@
"alex": "9.1.0", "alex": "9.1.0",
"amphtml-validator": "1.0.33", "amphtml-validator": "1.0.33",
"async-sema": "3.0.1", "async-sema": "3.0.1",
"browserslist": "^4.14.7", "browserslist": "4.16.6",
"cheerio": "0.22.0", "cheerio": "0.22.0",
"clone": "2.1.2", "clone": "2.1.2",
"cookie": "0.4.1", "cookie": "0.4.1",

View file

@ -10,6 +10,7 @@ import { ClientPagesLoaderOptions } from './webpack/loaders/next-client-pages-lo
import { ServerlessLoaderQuery } from './webpack/loaders/next-serverless-loader' import { ServerlessLoaderQuery } from './webpack/loaders/next-serverless-loader'
import { LoadedEnvFiles } from '@next/env' import { LoadedEnvFiles } from '@next/env'
import { NextConfigComplete } from '../server/config-shared' import { NextConfigComplete } from '../server/config-shared'
import type webpack5 from 'webpack5'
type PagesMapping = { type PagesMapping = {
[page: string]: string [page: string]: string
@ -62,21 +63,9 @@ export function createPagesMapping(
return pages return pages
} }
export type WebpackEntrypoints = {
[bundle: string]:
| string
| string[]
| {
import: string | string[]
dependOn?: string | string[]
publicPath?: string
runtime?: string
}
}
type Entrypoints = { type Entrypoints = {
client: WebpackEntrypoints client: webpack5.EntryObject
server: WebpackEntrypoints server: webpack5.EntryObject
} }
export function createEntrypoints( export function createEntrypoints(
@ -87,8 +76,8 @@ export function createEntrypoints(
config: NextConfigComplete, config: NextConfigComplete,
loadedEnvFiles: LoadedEnvFiles loadedEnvFiles: LoadedEnvFiles
): Entrypoints { ): Entrypoints {
const client: WebpackEntrypoints = {} const client: webpack5.EntryObject = {}
const server: WebpackEntrypoints = {} const server: webpack5.EntryObject = {}
const hasRuntimeConfig = const hasRuntimeConfig =
Object.keys(config.publicRuntimeConfig).length > 0 || Object.keys(config.publicRuntimeConfig).length > 0 ||

View file

@ -840,22 +840,25 @@ export async function isPageStatic(
try { try {
require('../shared/lib/runtime-config').setConfig(runtimeEnvConfig) require('../shared/lib/runtime-config').setConfig(runtimeEnvConfig)
setHttpAgentOptions(httpAgentOptions) setHttpAgentOptions(httpAgentOptions)
const components = await loadComponents(distDir, page, serverless) const mod = await loadComponents(distDir, page, serverless)
const mod = components.ComponentMod const Comp = mod.Component
const Comp = mod.default || mod
if (!Comp || !isValidElementType(Comp) || typeof Comp === 'string') { if (!Comp || !isValidElementType(Comp) || typeof Comp === 'string') {
throw new Error('INVALID_DEFAULT_EXPORT') throw new Error('INVALID_DEFAULT_EXPORT')
} }
const hasGetInitialProps = !!(Comp as any).getInitialProps const hasGetInitialProps = !!(Comp as any).getInitialProps
const hasStaticProps = !!(await mod.getStaticProps) const hasStaticProps = !!mod.getStaticProps
const hasStaticPaths = !!(await mod.getStaticPaths) const hasStaticPaths = !!mod.getStaticPaths
const hasServerProps = !!(await mod.getServerSideProps) const hasServerProps = !!mod.getServerSideProps
const hasLegacyServerProps = !!(await mod.unstable_getServerProps) const hasLegacyServerProps = !!(await mod.ComponentMod
const hasLegacyStaticProps = !!(await mod.unstable_getStaticProps) .unstable_getServerProps)
const hasLegacyStaticPaths = !!(await mod.unstable_getStaticPaths) const hasLegacyStaticProps = !!(await mod.ComponentMod
const hasLegacyStaticParams = !!(await mod.unstable_getStaticParams) .unstable_getStaticProps)
const hasLegacyStaticPaths = !!(await mod.ComponentMod
.unstable_getStaticPaths)
const hasLegacyStaticParams = !!(await mod.ComponentMod
.unstable_getStaticParams)
if (hasLegacyStaticParams) { if (hasLegacyStaticParams) {
throw new Error( throw new Error(
@ -921,14 +924,14 @@ export async function isPageStatic(
encodedPaths: encodedPrerenderRoutes, encodedPaths: encodedPrerenderRoutes,
} = await buildStaticPaths( } = await buildStaticPaths(
page, page,
mod.getStaticPaths, mod.getStaticPaths!,
locales, locales,
defaultLocale defaultLocale
)) ))
} }
const isNextImageImported = (global as any).__NEXT_IMAGE_IMPORTED const isNextImageImported = (global as any).__NEXT_IMAGE_IMPORTED
const config: PageConfig = mod.config || {} const config: PageConfig = mod.pageConfig
return { return {
isStatic: !hasStaticProps && !hasGetInitialProps && !hasServerProps, isStatic: !hasStaticProps && !hasGetInitialProps && !hasServerProps,
isHybridAmp: config.amp === 'hybrid', isHybridAmp: config.amp === 'hybrid',

View file

@ -5,6 +5,7 @@ import { readFileSync } from 'fs'
import { codeFrameColumns } from 'next/dist/compiled/babel/code-frame' import { codeFrameColumns } from 'next/dist/compiled/babel/code-frame'
import semver from 'next/dist/compiled/semver' import semver from 'next/dist/compiled/semver'
import { isWebpack5, webpack } from 'next/dist/compiled/webpack/webpack' import { isWebpack5, webpack } from 'next/dist/compiled/webpack/webpack'
import type webpack5 from 'webpack5'
import path, { join as pathJoin, relative as relativePath } from 'path' import path, { join as pathJoin, relative as relativePath } from 'path'
import { import {
DOT_NEXT_ALIAS, DOT_NEXT_ALIAS,
@ -28,7 +29,7 @@ import {
} from '../shared/lib/constants' } from '../shared/lib/constants'
import { execOnce } from '../shared/lib/utils' import { execOnce } from '../shared/lib/utils'
import { NextConfigComplete } from '../server/config-shared' import { NextConfigComplete } from '../server/config-shared'
import { finalizeEntrypoint, WebpackEntrypoints } from './entries' import { finalizeEntrypoint } from './entries'
import * as Log from './output/log' import * as Log from './output/log'
import { build as buildConfiguration } from './webpack/config' import { build as buildConfiguration } from './webpack/config'
import { __overrideCssConfiguration } from './webpack/config/blocks/css/overrideCssConfiguration' import { __overrideCssConfiguration } from './webpack/config/blocks/css/overrideCssConfiguration'
@ -224,7 +225,7 @@ export default async function getBaseWebpackConfig(
pagesDir: string pagesDir: string
target?: string target?: string
reactProductionProfiling?: boolean reactProductionProfiling?: boolean
entrypoints: WebpackEntrypoints entrypoints: webpack5.EntryObject
rewrites: CustomRoutes['rewrites'] rewrites: CustomRoutes['rewrites']
isDevFallback?: boolean isDevFallback?: boolean
runWebpackSpan: Span runWebpackSpan: Span
@ -1379,16 +1380,21 @@ export default async function getBaseWebpackConfig(
// futureEmitAssets is on by default in webpack 5 // futureEmitAssets is on by default in webpack 5
delete webpackConfig.output?.futureEmitAssets delete webpackConfig.output?.futureEmitAssets
webpackConfig.experiments = { // webpack 5 no longer polyfills Node.js modules:
if (webpackConfig.node) delete webpackConfig.node.setImmediate
const webpack5Config = webpackConfig as webpack5.Configuration
webpack5Config.experiments = {
layers: true, layers: true,
} }
webpackConfig.module!.parser = { webpack5Config.module!.parser = {
javascript: { javascript: {
url: 'relative', url: 'relative',
}, },
} }
webpackConfig.module!.generator = { webpack5Config.module!.generator = {
asset: { asset: {
filename: 'static/media/[name].[hash:8][ext]', filename: 'static/media/[name].[hash:8][ext]',
}, },
@ -1396,24 +1402,19 @@ export default async function getBaseWebpackConfig(
if (isServer && dev) { if (isServer && dev) {
// Enable building of client compilation before server compilation in development // Enable building of client compilation before server compilation in development
// @ts-ignore dependencies exists webpack5Config.dependencies = ['client']
webpackConfig.dependencies = ['client']
} }
// webpack 5 no longer polyfills Node.js modules:
if (webpackConfig.node) delete webpackConfig.node.setImmediate
// Due to bundling of webpack the default values can't be correctly detected // Due to bundling of webpack the default values can't be correctly detected
// This restores the webpack defaults // This restores the webpack defaults
// @ts-ignore webpack 5 webpack5Config.snapshot = {}
webpackConfig.snapshot = {}
if (process.versions.pnp === '3') { if (process.versions.pnp === '3') {
const match = const match =
/^(.+?)[\\/]cache[\\/]jest-worker-npm-[^\\/]+\.zip[\\/]node_modules[\\/]/.exec( /^(.+?)[\\/]cache[\\/]jest-worker-npm-[^\\/]+\.zip[\\/]node_modules[\\/]/.exec(
require.resolve('jest-worker') require.resolve('jest-worker')
) )
if (match) { if (match) {
// @ts-ignore webpack 5 webpack5Config.snapshot.managedPaths = [
webpackConfig.snapshot.managedPaths = [
path.resolve(match[1], 'unplugged'), path.resolve(match[1], 'unplugged'),
] ]
} }
@ -1422,8 +1423,7 @@ export default async function getBaseWebpackConfig(
require.resolve('jest-worker') require.resolve('jest-worker')
) )
if (match) { if (match) {
// @ts-ignore webpack 5 webpack5Config.snapshot.managedPaths = [match[1]]
webpackConfig.snapshot.managedPaths = [match[1]]
} }
} }
if (process.versions.pnp === '1') { if (process.versions.pnp === '1') {
@ -1432,8 +1432,7 @@ export default async function getBaseWebpackConfig(
require.resolve('jest-worker') require.resolve('jest-worker')
) )
if (match) { if (match) {
// @ts-ignore webpack 5 webpack5Config.snapshot.immutablePaths = [match[1]]
webpackConfig.snapshot.immutablePaths = [match[1]]
} }
} else if (process.versions.pnp === '3') { } else if (process.versions.pnp === '3') {
const match = const match =
@ -1441,17 +1440,16 @@ export default async function getBaseWebpackConfig(
require.resolve('jest-worker') require.resolve('jest-worker')
) )
if (match) { if (match) {
// @ts-ignore webpack 5 webpack5Config.snapshot.immutablePaths = [match[1]]
webpackConfig.snapshot.immutablePaths = [match[1]]
} }
} }
if (dev) { if (dev) {
if (!webpackConfig.optimization) { if (!webpack5Config.optimization) {
webpackConfig.optimization = {} webpack5Config.optimization = {}
} }
webpackConfig.optimization.providedExports = false webpack5Config.optimization.providedExports = false
webpackConfig.optimization.usedExports = false webpack5Config.optimization.usedExports = false
} }
const configVars = JSON.stringify({ const configVars = JSON.stringify({
@ -1496,7 +1494,7 @@ export default async function getBaseWebpackConfig(
} }
} }
webpackConfig.cache = cache webpack5Config.cache = cache
if (process.env.NEXT_WEBPACK_LOGGING) { if (process.env.NEXT_WEBPACK_LOGGING) {
const logInfra = const logInfra =
@ -1508,8 +1506,7 @@ export default async function getBaseWebpackConfig(
const logDefault = !logInfra && !logProfileClient && !logProfileServer const logDefault = !logInfra && !logProfileClient && !logProfileServer
if (logDefault || logInfra) { if (logDefault || logInfra) {
// @ts-ignore TODO: remove ignore when webpack 5 is stable webpack5Config.infrastructureLogging = {
webpackConfig.infrastructureLogging = {
level: 'verbose', level: 'verbose',
debug: /FileSystemInfo/, debug: /FileSystemInfo/,
} }
@ -1520,12 +1517,11 @@ export default async function getBaseWebpackConfig(
(logProfileClient && !isServer) || (logProfileClient && !isServer) ||
(logProfileServer && isServer) (logProfileServer && isServer)
) { ) {
webpackConfig.plugins!.push((compiler: webpack.Compiler) => { webpack5Config.plugins!.push((compiler: webpack5.Compiler) => {
compiler.hooks.done.tap('next-webpack-logging', (stats) => { compiler.hooks.done.tap('next-webpack-logging', (stats) => {
console.log( console.log(
stats.toString({ stats.toString({
colors: true, colors: true,
// @ts-ignore TODO: remove ignore when webpack 5 is stable
logging: logDefault ? 'log' : 'verbose', logging: logDefault ? 'log' : 'verbose',
}) })
) )
@ -1534,13 +1530,14 @@ export default async function getBaseWebpackConfig(
} }
if ((logProfileClient && !isServer) || (logProfileServer && isServer)) { if ((logProfileClient && !isServer) || (logProfileServer && isServer)) {
webpackConfig.plugins!.push( const ProgressPlugin =
new webpack.ProgressPlugin({ webpack.ProgressPlugin as unknown as typeof webpack5.ProgressPlugin
// @ts-ignore TODO: remove ignore when webpack 5 is stable webpack5Config.plugins!.push(
new ProgressPlugin({
profile: true, profile: true,
}) })
) )
webpackConfig.profile = true webpack5Config.profile = true
} }
} }
} }
@ -1897,7 +1894,7 @@ export default async function getBaseWebpackConfig(
const originalEntry: any = webpackConfig.entry const originalEntry: any = webpackConfig.entry
if (typeof originalEntry !== 'undefined') { if (typeof originalEntry !== 'undefined') {
const updatedEntry = async () => { const updatedEntry = async () => {
const entry: WebpackEntrypoints = const entry: webpack5.EntryObject =
typeof originalEntry === 'function' typeof originalEntry === 'function'
? await originalEntry() ? await originalEntry()
: originalEntry : originalEntry

View file

@ -4,7 +4,10 @@ import { Transform, TransformCallback } from 'stream'
// @ts-ignore no types package // @ts-ignore no types package
import bfj from 'next/dist/compiled/bfj' import bfj from 'next/dist/compiled/bfj'
import { spans } from './profiling-plugin' import { spans } from './profiling-plugin'
import { webpack } from 'next/dist/compiled/webpack/webpack' import { isWebpack5 } from 'next/dist/compiled/webpack/webpack'
import type webpack from 'webpack'
import type webpack4 from 'webpack4'
import type webpack5 from 'webpack5'
const STATS_VERSION = 0 const STATS_VERSION = 0
@ -121,21 +124,29 @@ export default class BuildStatsPlugin {
const writeStatsSpan = compilationSpan!.traceChild('NextJsBuildStats') const writeStatsSpan = compilationSpan!.traceChild('NextJsBuildStats')
await writeStatsSpan.traceAsyncFn(() => { await writeStatsSpan.traceAsyncFn(() => {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
const baseOptions = {
all: false,
cached: true,
reasons: true,
entrypoints: true,
chunks: true,
errors: false,
warnings: false,
maxModules: Infinity,
chunkModules: true,
modules: true,
}
const statsJson = reduceSize( const statsJson = reduceSize(
stats.toJson({ isWebpack5
all: false, ? (stats as webpack5.Stats).toJson({
cached: true, ...baseOptions,
reasons: true, modulesSpace: Infinity,
entrypoints: true, ids: true,
chunks: true, })
errors: false, : (stats as webpack4.Stats).toJson({
warnings: false, ...baseOptions,
maxModules: Infinity, maxModules: Infinity,
chunkModules: true, })
modules: true,
// @ts-ignore this option exists
ids: true,
})
) )
const fileStream = fs.createWriteStream( const fileStream = fs.createWriteStream(
path.join(this.distDir, 'next-stats.json'), path.join(this.distDir, 'next-stats.json'),

View file

@ -1,13 +1,11 @@
import { webpack, isWebpack5 } from 'next/dist/compiled/webpack/webpack' import { NormalModule, isWebpack5 } from 'next/dist/compiled/webpack/webpack'
import { Span } from '../../../trace' import { Span } from '../../../trace'
import type webpack from 'webpack'
const pluginName = 'ProfilingPlugin' const pluginName = 'ProfilingPlugin'
export const spans = new WeakMap< export const spans = new WeakMap<webpack.Compilation | webpack.Compiler, Span>()
webpack.compilation.Compilation | webpack.Compiler,
Span
>()
const moduleSpansByCompilation = new WeakMap< const moduleSpansByCompilation = new WeakMap<
webpack.compilation.Compilation, webpack.Compilation,
WeakMap<webpack.Module, Span> WeakMap<webpack.Module, Span>
>() >()
export const webpackInvalidSpans = new WeakMap<any, Span>() export const webpackInvalidSpans = new WeakMap<any, Span>()
@ -15,7 +13,7 @@ export const webpackInvalidSpans = new WeakMap<any, Span>()
function getNormalModuleLoaderHook(compilation: any) { function getNormalModuleLoaderHook(compilation: any) {
if (isWebpack5) { if (isWebpack5) {
// @ts-ignore TODO: Remove ignore when webpack 5 is stable // @ts-ignore TODO: Remove ignore when webpack 5 is stable
return webpack.NormalModule.getCompilationHooks(compilation).loader return NormalModule.getCompilationHooks(compilation).loader
} }
return compilation.hooks.normalModuleLoader return compilation.hooks.normalModuleLoader

View file

@ -33,6 +33,78 @@ const hookPropertyMap = new Map(
'webpack/lib/node/NodeTargetPlugin.js', 'webpack/lib/node/NodeTargetPlugin.js',
'next/dist/compiled/webpack/NodeTargetPlugin', 'next/dist/compiled/webpack/NodeTargetPlugin',
], ],
[
'webpack/lib/node/NodeTemplatePlugin',
'next/dist/compiled/webpack/NodeTemplatePlugin',
],
[
'webpack/lib/node/NodeTemplatePlugin.js',
'next/dist/compiled/webpack/NodeTemplatePlugin',
],
[
'webpack/lib/LibraryTemplatePlugin',
'next/dist/compiled/webpack/LibraryTemplatePlugin',
],
[
'webpack/lib/LibraryTemplatePlugin.js',
'next/dist/compiled/webpack/LibraryTemplatePlugin',
],
[
'webpack/lib/SingleEntryPlugin',
'next/dist/compiled/webpack/SingleEntryPlugin',
],
[
'webpack/lib/SingleEntryPlugin.js',
'next/dist/compiled/webpack/SingleEntryPlugin',
],
[
'webpack/lib/optimize/LimitChunkCountPlugin',
'next/dist/compiled/webpack/LimitChunkCountPlugin',
],
[
'webpack/lib/optimize/LimitChunkCountPlugin.js',
'next/dist/compiled/webpack/LimitChunkCountPlugin',
],
[
'webpack/lib/webworker/WebWorkerTemplatePlugin',
'next/dist/compiled/webpack/WebWorkerTemplatePlugin',
],
[
'webpack/lib/webworker/WebWorkerTemplatePlugin.js',
'next/dist/compiled/webpack/WebWorkerTemplatePlugin',
],
[
'webpack/lib/ExternalsPlugin',
'next/dist/compiled/webpack/ExternalsPlugin',
],
[
'webpack/lib/ExternalsPlugin.js',
'next/dist/compiled/webpack/ExternalsPlugin',
],
[
'webpack/lib/web/FetchCompileWasmTemplatePlugin',
'next/dist/compiled/webpack/FetchCompileWasmTemplatePlugin',
],
[
'webpack/lib/web/FetchCompileWasmTemplatePlugin.js',
'next/dist/compiled/webpack/FetchCompileWasmTemplatePlugin',
],
[
'webpack/lib/web/FetchCompileWasmPlugin',
'next/dist/compiled/webpack/FetchCompileWasmPlugin',
],
[
'webpack/lib/web/FetchCompileWasmPlugin.js',
'next/dist/compiled/webpack/FetchCompileWasmPlugin',
],
[
'webpack/lib/web/FetchCompileAsyncWasmPlugin',
'next/dist/compiled/webpack/FetchCompileAsyncWasmPlugin',
],
[
'webpack/lib/web/FetchCompileAsyncWasmPlugin.js',
'next/dist/compiled/webpack/FetchCompileAsyncWasmPlugin',
],
[ [
'webpack/lib/ModuleFilenameHelpers', 'webpack/lib/ModuleFilenameHelpers',
'next/dist/compiled/webpack/ModuleFilenameHelpers', 'next/dist/compiled/webpack/ModuleFilenameHelpers',
@ -63,3 +135,6 @@ mod._resolveFilename = function (
if (hookResolved) request = hookResolved if (hookResolved) request = hookResolved
return resolveFilename.call(mod, request, parent, isMain, options) return resolveFilename.call(mod, request, parent, isMain, options)
} }
// Flag as module for typescript
export {}

View file

@ -1,11 +0,0 @@
{
"dependencies": {
"schema-utils3": "npm:schema-utils@3.0.0",
"webpack-sources3": "npm:webpack-sources@3.2.0",
"webpack5": "npm:webpack@5.53.0"
},
"resolutions": {
"browserslist": "4.16.6",
"caniuse-lite": "1.0.30001228"
}
}

View file

@ -2,23 +2,28 @@
module.exports = function () { module.exports = function () {
return { return {
BasicEvaluatedExpression: require('webpack/lib/BasicEvaluatedExpression'), BasicEvaluatedExpression: require('webpack4/lib/BasicEvaluatedExpression'),
NodeEnvironmentPlugin: require('webpack/lib/node/NodeEnvironmentPlugin'), NodeEnvironmentPlugin: require('webpack4/lib/node/NodeEnvironmentPlugin'),
NodeTargetPlugin: require('webpack/lib/node/NodeTargetPlugin'), NodeTargetPlugin: require('webpack4/lib/node/NodeTargetPlugin'),
ModuleFilenameHelpers: require('webpack/lib/ModuleFilenameHelpers'), NodeTemplatePlugin: require('webpack4/lib/node/NodeTemplatePlugin'),
GraphHelpers: require('webpack/lib/GraphHelpers'), ModuleFilenameHelpers: require('webpack4/lib/ModuleFilenameHelpers'),
Module: require('webpack/lib/Module'), GraphHelpers: require('webpack4/lib/GraphHelpers'),
NormalModule: require('webpack/lib/NormalModule'), Module: require('webpack4/lib/Module'),
Dependency: require('webpack/lib/Dependency'), NormalModule: require('webpack4/lib/NormalModule'),
LibraryTemplatePlugin: require('webpack/lib/LibraryTemplatePlugin'), Dependency: require('webpack4/lib/Dependency'),
SingleEntryPlugin: require('webpack/lib/SingleEntryPlugin'), LibraryTemplatePlugin: require('webpack4/lib/LibraryTemplatePlugin'),
node: require('webpack').node, SingleEntryPlugin: require('webpack4/lib/SingleEntryPlugin'),
util: require('webpack').util, FetchCompileWasmTemplatePlugin: require('webpack4/lib/web/FetchCompileWasmTemplatePlugin'),
optimize: require('webpack').optimize, LimitChunkCountPlugin: require('webpack4/lib/optimize/LimitChunkCountPlugin'),
WebWorkerTemplatePlugin: require('webpack4/lib/webworker/WebWorkerTemplatePlugin'),
ExternalsPlugin: require('webpack4/lib/ExternalsPlugin'),
node: require('webpack4').node,
util: require('webpack4').util,
optimize: require('webpack4').optimize,
sources: require('webpack-sources'), sources: require('webpack-sources'),
webpack: require('webpack'), webpack: require('webpack4'),
package: { package: {
version: require('webpack/package.json').version, version: require('webpack4/package.json').version,
}, },
} }
} }

View file

@ -5,9 +5,20 @@ module.exports = function () {
BasicEvaluatedExpression: require('webpack5/lib/javascript/BasicEvaluatedExpression'), BasicEvaluatedExpression: require('webpack5/lib/javascript/BasicEvaluatedExpression'),
ModuleFilenameHelpers: require('webpack5/lib/ModuleFilenameHelpers'), ModuleFilenameHelpers: require('webpack5/lib/ModuleFilenameHelpers'),
NodeTargetPlugin: require('webpack5/lib/node/NodeTargetPlugin'), NodeTargetPlugin: require('webpack5/lib/node/NodeTargetPlugin'),
NodeTemplatePlugin: require('webpack5/lib/node/NodeTemplatePlugin'),
LibraryTemplatePlugin: require('webpack5/lib/LibraryTemplatePlugin'),
LimitChunkCountPlugin: require('webpack5/lib/optimize/LimitChunkCountPlugin'),
WebWorkerTemplatePlugin: require('webpack5/lib/webworker/WebWorkerTemplatePlugin'),
ExternalsPlugin: require('webpack5/lib/ExternalsPlugin'),
SingleEntryPlugin: require('webpack5/lib/SingleEntryPlugin'),
FetchCompileAsyncWasmPlugin: require('webpack5/lib/web/FetchCompileAsyncWasmPlugin'),
FetchCompileWasmPlugin: require('webpack5/lib/web/FetchCompileWasmPlugin'),
StringXor: require('webpack5/lib/util/StringXor'), StringXor: require('webpack5/lib/util/StringXor'),
NormalModule: require('webpack/lib/NormalModule'), NormalModule: require('webpack5/lib/NormalModule'),
sources: require('webpack5').sources, sources: require('webpack5').sources,
webpack: require('webpack5'), webpack: require('webpack5'),
package: {
version: require('webpack5/package.json').version,
},
} }
} }

View file

@ -0,0 +1 @@
module.exports = require('./webpack.js').ExternalsPlugin

View file

@ -0,0 +1 @@
module.exports = require('./webpack.js').FetchCompileAsyncWasmPlugin

View file

@ -0,0 +1 @@
module.exports = require('./webpack.js').FetchCompileWasmPlugin

View file

@ -0,0 +1 @@
module.exports = require('./webpack.js').FetchCompileWasmTemplatePlugin

View file

@ -0,0 +1 @@
module.exports = require('./webpack.js').LibraryTemplatePlugin

View file

@ -0,0 +1 @@
module.exports = require('./webpack.js').LimitChunkCountPlugin

View file

@ -0,0 +1 @@
module.exports = require('./webpack.js').NodeTemplatePlugin

View file

@ -0,0 +1 @@
module.exports = require('./webpack.js').SingleEntryPlugin

View file

@ -0,0 +1 @@
module.exports = require('./webpack.js').WebWorkerTemplatePlugin

View file

@ -1,516 +0,0 @@
# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
# yarn lockfile v1
"@types/eslint-scope@^3.7.0":
version "3.7.1"
resolved "https://registry.yarnpkg.com/@types/eslint-scope/-/eslint-scope-3.7.1.tgz#8dc390a7b4f9dd9f1284629efce982e41612116e"
integrity sha512-SCFeogqiptms4Fg29WpOTk5nHIzfpKCemSN63ksBQYKTcXoJEmJagV+DhVmbapZzY4/5YaOV1nZwrsU79fFm1g==
dependencies:
"@types/eslint" "*"
"@types/estree" "*"
"@types/eslint@*":
version "7.28.0"
resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-7.28.0.tgz#7e41f2481d301c68e14f483fe10b017753ce8d5a"
integrity sha512-07XlgzX0YJUn4iG1ocY4IX9DzKSmMGUs6ESKlxWhZRaa0fatIWaHWUVapcuGa8r5HFnTqzj+4OCjd5f7EZ/i/A==
dependencies:
"@types/estree" "*"
"@types/json-schema" "*"
"@types/estree@*", "@types/estree@^0.0.50":
version "0.0.50"
resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.50.tgz#1e0caa9364d3fccd2931c3ed96fdbeaa5d4cca83"
integrity sha512-C6N5s2ZFtuZRj54k2/zyRhNDjJwwcViAM3Nbm8zjBpbqAdZ00mr0CFxvSKeO8Y/e03WVFLpQMdHYVfUd6SB+Hw==
"@types/json-schema@*", "@types/json-schema@^7.0.8":
version "7.0.9"
resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.9.tgz#97edc9037ea0c38585320b28964dde3b39e4660d"
integrity sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==
"@types/json-schema@^7.0.6":
version "7.0.8"
resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.8.tgz#edf1bf1dbf4e04413ca8e5b17b3b7d7d54b59818"
integrity sha512-YSBPTLTVm2e2OoQIDYx8HaeWJ5tTToLH67kXR7zYNGupXMEHa2++G8k+DczX2cFVgalypqtyZIcU19AFcmOpmg==
"@types/node@*":
version "16.9.1"
resolved "https://registry.yarnpkg.com/@types/node/-/node-16.9.1.tgz#0611b37db4246c937feef529ddcc018cf8e35708"
integrity sha512-QpLcX9ZSsq3YYUUnD3nFDY8H7wctAhQj/TFKL8Ya8v5fMm3CFXxo8zStsLAl780ltoYoo1WvKUVGBQK+1ifr7g==
"@webassemblyjs/ast@1.11.1":
version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.11.1.tgz#2bfd767eae1a6996f432ff7e8d7fc75679c0b6a7"
integrity sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==
dependencies:
"@webassemblyjs/helper-numbers" "1.11.1"
"@webassemblyjs/helper-wasm-bytecode" "1.11.1"
"@webassemblyjs/floating-point-hex-parser@1.11.1":
version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz#f6c61a705f0fd7a6aecaa4e8198f23d9dc179e4f"
integrity sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==
"@webassemblyjs/helper-api-error@1.11.1":
version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz#1a63192d8788e5c012800ba6a7a46c705288fd16"
integrity sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==
"@webassemblyjs/helper-buffer@1.11.1":
version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz#832a900eb444884cde9a7cad467f81500f5e5ab5"
integrity sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==
"@webassemblyjs/helper-numbers@1.11.1":
version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz#64d81da219fbbba1e3bd1bfc74f6e8c4e10a62ae"
integrity sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==
dependencies:
"@webassemblyjs/floating-point-hex-parser" "1.11.1"
"@webassemblyjs/helper-api-error" "1.11.1"
"@xtuc/long" "4.2.2"
"@webassemblyjs/helper-wasm-bytecode@1.11.1":
version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz#f328241e41e7b199d0b20c18e88429c4433295e1"
integrity sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==
"@webassemblyjs/helper-wasm-section@1.11.1":
version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz#21ee065a7b635f319e738f0dd73bfbda281c097a"
integrity sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==
dependencies:
"@webassemblyjs/ast" "1.11.1"
"@webassemblyjs/helper-buffer" "1.11.1"
"@webassemblyjs/helper-wasm-bytecode" "1.11.1"
"@webassemblyjs/wasm-gen" "1.11.1"
"@webassemblyjs/ieee754@1.11.1":
version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz#963929e9bbd05709e7e12243a099180812992614"
integrity sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==
dependencies:
"@xtuc/ieee754" "^1.2.0"
"@webassemblyjs/leb128@1.11.1":
version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.11.1.tgz#ce814b45574e93d76bae1fb2644ab9cdd9527aa5"
integrity sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==
dependencies:
"@xtuc/long" "4.2.2"
"@webassemblyjs/utf8@1.11.1":
version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.11.1.tgz#d1f8b764369e7c6e6bae350e854dec9a59f0a3ff"
integrity sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==
"@webassemblyjs/wasm-edit@1.11.1":
version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz#ad206ebf4bf95a058ce9880a8c092c5dec8193d6"
integrity sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==
dependencies:
"@webassemblyjs/ast" "1.11.1"
"@webassemblyjs/helper-buffer" "1.11.1"
"@webassemblyjs/helper-wasm-bytecode" "1.11.1"
"@webassemblyjs/helper-wasm-section" "1.11.1"
"@webassemblyjs/wasm-gen" "1.11.1"
"@webassemblyjs/wasm-opt" "1.11.1"
"@webassemblyjs/wasm-parser" "1.11.1"
"@webassemblyjs/wast-printer" "1.11.1"
"@webassemblyjs/wasm-gen@1.11.1":
version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz#86c5ea304849759b7d88c47a32f4f039ae3c8f76"
integrity sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==
dependencies:
"@webassemblyjs/ast" "1.11.1"
"@webassemblyjs/helper-wasm-bytecode" "1.11.1"
"@webassemblyjs/ieee754" "1.11.1"
"@webassemblyjs/leb128" "1.11.1"
"@webassemblyjs/utf8" "1.11.1"
"@webassemblyjs/wasm-opt@1.11.1":
version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz#657b4c2202f4cf3b345f8a4c6461c8c2418985f2"
integrity sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==
dependencies:
"@webassemblyjs/ast" "1.11.1"
"@webassemblyjs/helper-buffer" "1.11.1"
"@webassemblyjs/wasm-gen" "1.11.1"
"@webassemblyjs/wasm-parser" "1.11.1"
"@webassemblyjs/wasm-parser@1.11.1":
version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz#86ca734534f417e9bd3c67c7a1c75d8be41fb199"
integrity sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==
dependencies:
"@webassemblyjs/ast" "1.11.1"
"@webassemblyjs/helper-api-error" "1.11.1"
"@webassemblyjs/helper-wasm-bytecode" "1.11.1"
"@webassemblyjs/ieee754" "1.11.1"
"@webassemblyjs/leb128" "1.11.1"
"@webassemblyjs/utf8" "1.11.1"
"@webassemblyjs/wast-printer@1.11.1":
version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz#d0c73beda8eec5426f10ae8ef55cee5e7084c2f0"
integrity sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==
dependencies:
"@webassemblyjs/ast" "1.11.1"
"@xtuc/long" "4.2.2"
"@xtuc/ieee754@^1.2.0":
version "1.2.0"
resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790"
integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==
"@xtuc/long@4.2.2":
version "4.2.2"
resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d"
integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==
acorn-import-assertions@^1.7.6:
version "1.7.6"
resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.7.6.tgz#580e3ffcae6770eebeec76c3b9723201e9d01f78"
integrity sha512-FlVvVFA1TX6l3lp8VjDnYYq7R1nyW6x3svAt4nDgrWQ9SBaSh9CnbwgSUTasgfNfOG5HlM1ehugCvM+hjo56LA==
acorn@^8.4.1:
version "8.5.0"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.5.0.tgz#4512ccb99b3698c752591e9bb4472e38ad43cee2"
integrity sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q==
ajv-keywords@^3.5.2:
version "3.5.2"
resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d"
integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==
ajv@^6.12.5:
version "6.12.6"
resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4"
integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==
dependencies:
fast-deep-equal "^3.1.1"
fast-json-stable-stringify "^2.0.0"
json-schema-traverse "^0.4.1"
uri-js "^4.2.2"
browserslist@4.16.6, browserslist@^4.14.5:
version "4.16.6"
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.16.6.tgz#d7901277a5a88e554ed305b183ec9b0c08f66fa2"
integrity sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==
dependencies:
caniuse-lite "^1.0.30001219"
colorette "^1.2.2"
electron-to-chromium "^1.3.723"
escalade "^3.1.1"
node-releases "^1.1.71"
buffer-from@^1.0.0:
version "1.1.2"
resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5"
integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==
caniuse-lite@1.0.30001228, caniuse-lite@^1.0.30001219:
version "1.0.30001228"
resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001228.tgz#bfdc5942cd3326fa51ee0b42fbef4da9d492a7fa"
integrity sha512-QQmLOGJ3DEgokHbMSA8cj2a+geXqmnpyOFT0lhQV6P3/YOJvGDEwoedcwxEQ30gJIwIIunHIicunJ2rzK5gB2A==
chrome-trace-event@^1.0.2:
version "1.0.3"
resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#1015eced4741e15d06664a957dbbf50d041e26ac"
integrity sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==
colorette@^1.2.2:
version "1.4.0"
resolved "https://registry.yarnpkg.com/colorette/-/colorette-1.4.0.tgz#5190fbb87276259a86ad700bff2c6d6faa3fca40"
integrity sha512-Y2oEozpomLn7Q3HFP7dpww7AtMJplbM9lGZP6RDfHqmbeRjiwRg4n6VM6j4KLmRke85uWEI7JqF17f3pqdRA0g==
commander@^2.20.0:
version "2.20.3"
resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33"
integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==
electron-to-chromium@^1.3.723:
version "1.3.840"
resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.840.tgz#3f2a1df97015d9b1db5d86a4c6bd4cdb920adcbb"
integrity sha512-yRoUmTLDJnkIJx23xLY7GbSvnmDCq++NSuxHDQ0jiyDJ9YZBUGJcrdUqm+ZwZFzMbCciVzfem2N2AWiHJcWlbw==
enhanced-resolve@^5.8.0:
version "5.8.2"
resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.8.2.tgz#15ddc779345cbb73e97c611cd00c01c1e7bf4d8b"
integrity sha512-F27oB3WuHDzvR2DOGNTaYy0D5o0cnrv8TeI482VM4kYgQd/FT9lUQwuNsJ0oOHtBUq7eiW5ytqzp7nBFknL+GA==
dependencies:
graceful-fs "^4.2.4"
tapable "^2.2.0"
es-module-lexer@^0.7.1:
version "0.7.1"
resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-0.7.1.tgz#c2c8e0f46f2df06274cdaf0dd3f3b33e0a0b267d"
integrity sha512-MgtWFl5No+4S3TmhDmCz2ObFGm6lEpTnzbQi+Dd+pw4mlTIZTmM2iAs5gRlmx5zS9luzobCSBSI90JM/1/JgOw==
escalade@^3.1.1:
version "3.1.1"
resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40"
integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==
eslint-scope@5.1.1:
version "5.1.1"
resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c"
integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==
dependencies:
esrecurse "^4.3.0"
estraverse "^4.1.1"
esrecurse@^4.3.0:
version "4.3.0"
resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921"
integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==
dependencies:
estraverse "^5.2.0"
estraverse@^4.1.1:
version "4.3.0"
resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d"
integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==
estraverse@^5.2.0:
version "5.2.0"
resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.2.0.tgz#307df42547e6cc7324d3cf03c155d5cdb8c53880"
integrity sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==
events@^3.2.0:
version "3.3.0"
resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400"
integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==
fast-deep-equal@^3.1.1:
version "3.1.3"
resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525"
integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==
fast-json-stable-stringify@^2.0.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
glob-to-regexp@^0.4.1:
version "0.4.1"
resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e"
integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==
graceful-fs@^4.1.2, graceful-fs@^4.2.4:
version "4.2.8"
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.8.tgz#e412b8d33f5e006593cbd3cee6df9f2cebbe802a"
integrity sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==
has-flag@^4.0.0:
version "4.0.0"
resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b"
integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==
jest-worker@^27.0.6:
version "27.2.0"
resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.2.0.tgz#11eef39f1c88f41384ca235c2f48fe50bc229bc0"
integrity sha512-laB0ZVIBz+voh/QQy9dmUuuDsadixeerrKqyVpgPz+CCWiOYjOBabUXHIXZhsdvkWbLqSHbgkAHWl5cg24Q6RA==
dependencies:
"@types/node" "*"
merge-stream "^2.0.0"
supports-color "^8.0.0"
json-parse-better-errors@^1.0.2:
version "1.0.2"
resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9"
integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==
json-schema-traverse@^0.4.1:
version "0.4.1"
resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660"
integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==
loader-runner@^4.2.0:
version "4.2.0"
resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.2.0.tgz#d7022380d66d14c5fb1d496b89864ebcfd478384"
integrity sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw==
merge-stream@^2.0.0:
version "2.0.0"
resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60"
integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==
mime-db@1.49.0:
version "1.49.0"
resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.49.0.tgz#f3dfde60c99e9cf3bc9701d687778f537001cbed"
integrity sha512-CIc8j9URtOVApSFCQIF+VBkX1RwXp/oMMOrqdyXSBXq5RWNEsRfyj1kiRnQgmNXmHxPoFIxOroKA3zcU9P+nAA==
mime-types@^2.1.27:
version "2.1.32"
resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.32.tgz#1d00e89e7de7fe02008db61001d9e02852670fd5"
integrity sha512-hJGaVS4G4c9TSMYh2n6SQAGrC4RnfU+daP8G7cSCmaqNjiOoUY0VHCMS42pxnQmVF1GWwFhbHWn3RIxCqTmZ9A==
dependencies:
mime-db "1.49.0"
neo-async@^2.6.2:
version "2.6.2"
resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f"
integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==
node-releases@^1.1.71:
version "1.1.75"
resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-1.1.75.tgz#6dd8c876b9897a1b8e5a02de26afa79bb54ebbfe"
integrity sha512-Qe5OUajvqrqDSy6wrWFmMwfJ0jVgwiw4T3KqmbTcZ62qW0gQkheXYhcFM1+lOVcGUoRxcEcfyvFMAnDgaF1VWw==
p-limit@^3.1.0:
version "3.1.0"
resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b"
integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==
dependencies:
yocto-queue "^0.1.0"
punycode@^2.1.0:
version "2.1.1"
resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec"
integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==
randombytes@^2.1.0:
version "2.1.0"
resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a"
integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==
dependencies:
safe-buffer "^5.1.0"
safe-buffer@^5.1.0:
version "5.2.1"
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6"
integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==
"schema-utils3@npm:schema-utils@3.0.0":
version "3.0.0"
resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.0.0.tgz#67502f6aa2b66a2d4032b4279a2944978a0913ef"
integrity sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==
dependencies:
"@types/json-schema" "^7.0.6"
ajv "^6.12.5"
ajv-keywords "^3.5.2"
schema-utils@^3.1.0, schema-utils@^3.1.1:
version "3.1.1"
resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.1.1.tgz#bc74c4b6b6995c1d88f76a8b77bea7219e0c8281"
integrity sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==
dependencies:
"@types/json-schema" "^7.0.8"
ajv "^6.12.5"
ajv-keywords "^3.5.2"
serialize-javascript@^6.0.0:
version "6.0.0"
resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8"
integrity sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==
dependencies:
randombytes "^2.1.0"
source-map-support@~0.5.20:
version "0.5.20"
resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.20.tgz#12166089f8f5e5e8c56926b377633392dd2cb6c9"
integrity sha512-n1lZZ8Ve4ksRqizaBQgxXDgKwttHDhyfQjA6YZZn8+AroHbsIz+JjwxQDxbp+7y5OYCI8t1Yk7etjD9CRd2hIw==
dependencies:
buffer-from "^1.0.0"
source-map "^0.6.0"
source-map@^0.6.0, source-map@^0.6.1:
version "0.6.1"
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263"
integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==
source-map@~0.7.2:
version "0.7.3"
resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383"
integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==
supports-color@^8.0.0:
version "8.1.1"
resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c"
integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==
dependencies:
has-flag "^4.0.0"
tapable@^2.1.1, tapable@^2.2.0:
version "2.2.1"
resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0"
integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==
terser-webpack-plugin@^5.1.3:
version "5.2.4"
resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.2.4.tgz#ad1be7639b1cbe3ea49fab995cbe7224b31747a1"
integrity sha512-E2CkNMN+1cho04YpdANyRrn8CyN4yMy+WdFKZIySFZrGXZxJwJP6PMNGGc/Mcr6qygQHUUqRxnAPmi0M9f00XA==
dependencies:
jest-worker "^27.0.6"
p-limit "^3.1.0"
schema-utils "^3.1.1"
serialize-javascript "^6.0.0"
source-map "^0.6.1"
terser "^5.7.2"
terser@^5.7.2:
version "5.8.0"
resolved "https://registry.yarnpkg.com/terser/-/terser-5.8.0.tgz#c6d352f91aed85cc6171ccb5e84655b77521d947"
integrity sha512-f0JH+6yMpneYcRJN314lZrSwu9eKkUFEHLN/kNy8ceh8gaRiLgFPJqrB9HsXjhEGdv4e/ekjTOFxIlL6xlma8A==
dependencies:
commander "^2.20.0"
source-map "~0.7.2"
source-map-support "~0.5.20"
uri-js@^4.2.2:
version "4.4.1"
resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e"
integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==
dependencies:
punycode "^2.1.0"
watchpack@^2.2.0:
version "2.2.0"
resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.2.0.tgz#47d78f5415fe550ecd740f99fe2882323a58b1ce"
integrity sha512-up4YAn/XHgZHIxFBVCdlMiWDj6WaLKpwVeGQk2I5thdYxF/KmF0aaz6TfJZ/hfl1h/XlcDr7k1KH7ThDagpFaA==
dependencies:
glob-to-regexp "^0.4.1"
graceful-fs "^4.1.2"
"webpack-sources3@npm:webpack-sources@3.2.0", webpack-sources@^3.2.0:
name webpack-sources3
version "3.2.0"
resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.0.tgz#b16973bcf844ebcdb3afde32eda1c04d0b90f89d"
integrity sha512-fahN08Et7P9trej8xz/Z7eRu8ltyiygEo/hnRi9KqBUs80KeDcnf96ZJo++ewWd84fEf3xSX9bp4ZS9hbw0OBw==
"webpack5@npm:webpack@5.53.0":
version "5.53.0"
resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.53.0.tgz#f463cd9c6fc1356ae4b9b7ac911fd1f5b2df86af"
integrity sha512-RZ1Z3z3ni44snoWjfWeHFyzvd9HMVYDYC5VXmlYUT6NWgEOWdCNpad5Fve2CzzHoRED7WtsKe+FCyP5Vk4pWiQ==
dependencies:
"@types/eslint-scope" "^3.7.0"
"@types/estree" "^0.0.50"
"@webassemblyjs/ast" "1.11.1"
"@webassemblyjs/wasm-edit" "1.11.1"
"@webassemblyjs/wasm-parser" "1.11.1"
acorn "^8.4.1"
acorn-import-assertions "^1.7.6"
browserslist "^4.14.5"
chrome-trace-event "^1.0.2"
enhanced-resolve "^5.8.0"
es-module-lexer "^0.7.1"
eslint-scope "5.1.1"
events "^3.2.0"
glob-to-regexp "^0.4.1"
graceful-fs "^4.2.4"
json-parse-better-errors "^1.0.2"
loader-runner "^4.2.0"
mime-types "^2.1.27"
neo-async "^2.6.2"
schema-utils "^3.1.0"
tapable "^2.1.1"
terser-webpack-plugin "^5.1.3"
watchpack "^2.2.0"
webpack-sources "^3.2.0"
yocto-queue@^0.1.0:
version "0.1.0"
resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b"
integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==

View file

@ -1 +1 @@
module.exports=(()=>{"use strict";var e={764:e=>{e.exports=JSON.parse('{"additionalProperties":true,"properties":{"name":{"description":"The filename template for the target file(s) (https://github.com/webpack-contrib/file-loader#name).","anyOf":[{"type":"string"},{"instanceof":"Function"}]},"outputPath":{"description":"A filesystem path where the target file(s) will be placed (https://github.com/webpack-contrib/file-loader#outputpath).","anyOf":[{"type":"string"},{"instanceof":"Function"}]},"publicPath":{"description":"A custom public path for the target file(s) (https://github.com/webpack-contrib/file-loader#publicpath).","anyOf":[{"type":"string"},{"instanceof":"Function"}]},"postTransformPublicPath":{"description":"A custom transformation function for post-processing the publicPath (https://github.com/webpack-contrib/file-loader#posttransformpublicpath).","instanceof":"Function"},"context":{"description":"A custom file context (https://github.com/webpack-contrib/file-loader#context).","type":"string"},"emitFile":{"description":"Enables/Disables emit files (https://github.com/webpack-contrib/file-loader#emitfile).","type":"boolean"},"regExp":{"description":"A Regular Expression to one or many parts of the target file path. The capture groups can be reused in the name property using [N] placeholder (https://github.com/webpack-contrib/file-loader#regexp).","anyOf":[{"type":"string"},{"instanceof":"RegExp"}]},"esModule":{"description":"By default, file-loader generates JS modules that use the ES modules syntax.","type":"boolean"}},"type":"object"}')},467:(e,t,i)=>{const r=i(206);e.exports=r.default;e.exports.raw=r.raw},206:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:true});t.default=loader;t.raw=void 0;var r=_interopRequireDefault(i(622));var o=_interopRequireDefault(i(443));var a=_interopRequireDefault(i(225));var n=_interopRequireDefault(i(764));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function loader(e){const t=o.default.getOptions(this);(0,a.default)(n.default,t,{name:"File Loader",baseDataPath:"options"});const i=t.context||this.rootContext;const s=o.default.interpolateName(this,t.name||"[contenthash].[ext]",{context:i,content:e,regExp:t.regExp});let p=s;if(t.outputPath){if(typeof t.outputPath==="function"){p=t.outputPath(s,this.resourcePath,i)}else{p=r.default.posix.join(t.outputPath,s)}}let u=`__webpack_public_path__ + ${JSON.stringify(p)}`;if(t.publicPath){if(typeof t.publicPath==="function"){u=t.publicPath(s,this.resourcePath,i)}else{u=`${t.publicPath.endsWith("/")?t.publicPath:`${t.publicPath}/`}${s}`}u=JSON.stringify(u)}if(t.postTransformPublicPath){u=t.postTransformPublicPath(u)}if(typeof t.emitFile==="undefined"||t.emitFile){this.emitFile(p,e)}const l=typeof t.esModule!=="undefined"?t.esModule:true;return`${l?"export default":"module.exports ="} ${u};`}const s=true;t.raw=s},443:e=>{e.exports=require("next/dist/compiled/loader-utils")},225:e=>{e.exports=require("next/dist/compiled/schema-utils")},622:e=>{e.exports=require("path")}};var t={};function __nccwpck_require__(i){if(t[i]){return t[i].exports}var r=t[i]={exports:{}};var o=true;try{e[i](r,r.exports,__nccwpck_require__);o=false}finally{if(o)delete t[i]}return r.exports}__nccwpck_require__.ab=__dirname+"/";return __nccwpck_require__(467)})(); module.exports=(()=>{"use strict";var e={764:e=>{e.exports=JSON.parse('{"additionalProperties":true,"properties":{"name":{"description":"The filename template for the target file(s) (https://github.com/webpack-contrib/file-loader#name).","anyOf":[{"type":"string"},{"instanceof":"Function"}]},"outputPath":{"description":"A filesystem path where the target file(s) will be placed (https://github.com/webpack-contrib/file-loader#outputpath).","anyOf":[{"type":"string"},{"instanceof":"Function"}]},"publicPath":{"description":"A custom public path for the target file(s) (https://github.com/webpack-contrib/file-loader#publicpath).","anyOf":[{"type":"string"},{"instanceof":"Function"}]},"postTransformPublicPath":{"description":"A custom transformation function for post-processing the publicPath (https://github.com/webpack-contrib/file-loader#posttransformpublicpath).","instanceof":"Function"},"context":{"description":"A custom file context (https://github.com/webpack-contrib/file-loader#context).","type":"string"},"emitFile":{"description":"Enables/Disables emit files (https://github.com/webpack-contrib/file-loader#emitfile).","type":"boolean"},"regExp":{"description":"A Regular Expression to one or many parts of the target file path. The capture groups can be reused in the name property using [N] placeholder (https://github.com/webpack-contrib/file-loader#regexp).","anyOf":[{"type":"string"},{"instanceof":"RegExp"}]},"esModule":{"description":"By default, file-loader generates JS modules that use the ES modules syntax.","type":"boolean"}},"type":"object"}')},467:(e,t,i)=>{const r=i(206);e.exports=r.default;e.exports.raw=r.raw},206:(e,t,i)=>{Object.defineProperty(t,"__esModule",{value:true});t.default=loader;t.raw=void 0;var r=_interopRequireDefault(i(622));var o=_interopRequireDefault(i(443));var a=_interopRequireDefault(i(99));var n=_interopRequireDefault(i(764));function _interopRequireDefault(e){return e&&e.__esModule?e:{default:e}}function loader(e){const t=o.default.getOptions(this);(0,a.default)(n.default,t,{name:"File Loader",baseDataPath:"options"});const i=t.context||this.rootContext;const s=o.default.interpolateName(this,t.name||"[contenthash].[ext]",{context:i,content:e,regExp:t.regExp});let p=s;if(t.outputPath){if(typeof t.outputPath==="function"){p=t.outputPath(s,this.resourcePath,i)}else{p=r.default.posix.join(t.outputPath,s)}}let u=`__webpack_public_path__ + ${JSON.stringify(p)}`;if(t.publicPath){if(typeof t.publicPath==="function"){u=t.publicPath(s,this.resourcePath,i)}else{u=`${t.publicPath.endsWith("/")?t.publicPath:`${t.publicPath}/`}${s}`}u=JSON.stringify(u)}if(t.postTransformPublicPath){u=t.postTransformPublicPath(u)}if(typeof t.emitFile==="undefined"||t.emitFile){this.emitFile(p,e)}const l=typeof t.esModule!=="undefined"?t.esModule:true;return`${l?"export default":"module.exports ="} ${u};`}const s=true;t.raw=s},443:e=>{e.exports=require("next/dist/compiled/loader-utils")},99:e=>{e.exports=require("next/dist/compiled/schema-utils2")},622:e=>{e.exports=require("path")}};var t={};function __nccwpck_require__(i){if(t[i]){return t[i].exports}var r=t[i]={exports:{}};var o=true;try{e[i](r,r.exports,__nccwpck_require__);o=false}finally{if(o)delete t[i]}return r.exports}__nccwpck_require__.ab=__dirname+"/";return __nccwpck_require__(467)})();

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1 @@
module.exports = require('./webpack.js').ExternalsPlugin

View file

@ -0,0 +1 @@
module.exports = require('./webpack.js').FetchCompileAsyncWasmPlugin

View file

@ -0,0 +1 @@
module.exports = require('./webpack.js').FetchCompileWasmPlugin

View file

@ -0,0 +1 @@
module.exports = require('./webpack.js').FetchCompileWasmTemplatePlugin

View file

@ -0,0 +1 @@
module.exports = require('./webpack.js').LibraryTemplatePlugin

View file

@ -0,0 +1 @@
module.exports = require('./webpack.js').LimitChunkCountPlugin

View file

@ -0,0 +1 @@
module.exports = require('./webpack.js').NodeTemplatePlugin

View file

@ -0,0 +1 @@
module.exports = require('./webpack.js').SingleEntryPlugin

View file

@ -0,0 +1 @@
module.exports = require('./webpack.js').WebWorkerTemplatePlugin

View file

@ -2,7 +2,7 @@ module.exports =
/******/ (function() { // webpackBootstrap /******/ (function() { // webpackBootstrap
/******/ var __webpack_modules__ = ({ /******/ var __webpack_modules__ = ({
/***/ 441: /***/ 950:
/***/ (function(module) { /***/ (function(module) {
module.exports = function() { module.exports = function() {
@ -50,6 +50,6 @@ module.exports = function() {
/******/ // module exports must be returned from runtime so entry inlining is disabled /******/ // module exports must be returned from runtime so entry inlining is disabled
/******/ // startup /******/ // startup
/******/ // Load entry module and return exports /******/ // Load entry module and return exports
/******/ return __nccwpck_require__(441); /******/ return __nccwpck_require__(950);
/******/ })() /******/ })()
; ;

View file

@ -2,7 +2,7 @@ module.exports =
/******/ (function() { // webpackBootstrap /******/ (function() { // webpackBootstrap
/******/ var __webpack_modules__ = ({ /******/ var __webpack_modules__ = ({
/***/ 929: /***/ 560:
/***/ (function(module) { /***/ (function(module) {
/* globals __webpack_amd_options__ */ /* globals __webpack_amd_options__ */
@ -49,6 +49,6 @@ module.exports = __webpack_amd_options__;
/******/ // module exports must be returned from runtime so entry inlining is disabled /******/ // module exports must be returned from runtime so entry inlining is disabled
/******/ // startup /******/ // startup
/******/ // Load entry module and return exports /******/ // Load entry module and return exports
/******/ return __nccwpck_require__(929); /******/ return __nccwpck_require__(560);
/******/ })() /******/ })()
; ;

File diff suppressed because it is too large Load diff

File diff suppressed because one or more lines are too long

View file

@ -2,7 +2,7 @@ module.exports =
/******/ (function() { // webpackBootstrap /******/ (function() { // webpackBootstrap
/******/ var __webpack_modules__ = ({ /******/ var __webpack_modules__ = ({
/***/ 149: /***/ 868:
/***/ (function(module) { /***/ (function(module) {
var g; var g;
@ -67,6 +67,6 @@ module.exports = g;
/******/ // module exports must be returned from runtime so entry inlining is disabled /******/ // module exports must be returned from runtime so entry inlining is disabled
/******/ // startup /******/ // startup
/******/ // Load entry module and return exports /******/ // Load entry module and return exports
/******/ return __nccwpck_require__(149); /******/ return __nccwpck_require__(868);
/******/ })() /******/ })()
; ;

View file

@ -2,7 +2,7 @@ module.exports =
/******/ (function() { // webpackBootstrap /******/ (function() { // webpackBootstrap
/******/ var __webpack_modules__ = ({ /******/ var __webpack_modules__ = ({
/***/ 931: /***/ 460:
/***/ (function(module) { /***/ (function(module) {
module.exports = function(originalModule) { module.exports = function(originalModule) {
@ -71,6 +71,6 @@ module.exports = function(originalModule) {
/******/ // module exports must be returned from runtime so entry inlining is disabled /******/ // module exports must be returned from runtime so entry inlining is disabled
/******/ // startup /******/ // startup
/******/ // Load entry module and return exports /******/ // Load entry module and return exports
/******/ return __nccwpck_require__(931); /******/ return __nccwpck_require__(460);
/******/ })() /******/ })()
; ;

View file

@ -3,7 +3,7 @@ module.exports =
/******/ "use strict"; /******/ "use strict";
/******/ var __webpack_modules__ = ({ /******/ var __webpack_modules__ = ({
/***/ 887: /***/ 668:
/***/ (function(__unused_webpack_module, exports, __nccwpck_require__) { /***/ (function(__unused_webpack_module, exports, __nccwpck_require__) {
var __resourceQuery = ""; var __resourceQuery = "";
@ -94,6 +94,6 @@ module.exports = require("http");;
/******/ // module exports must be returned from runtime so entry inlining is disabled /******/ // module exports must be returned from runtime so entry inlining is disabled
/******/ // startup /******/ // startup
/******/ // Load entry module and return exports /******/ // Load entry module and return exports
/******/ return __nccwpck_require__(887); /******/ return __nccwpck_require__(668);
/******/ })() /******/ })()
; ;

View file

@ -3,7 +3,7 @@ module.exports =
/******/ "use strict"; /******/ "use strict";
/******/ var __webpack_modules__ = ({ /******/ var __webpack_modules__ = ({
/***/ 949: /***/ 590:
/***/ (function(__unused_webpack_module, exports) { /***/ (function(__unused_webpack_module, exports) {
var __resourceQuery = ""; var __resourceQuery = "";
@ -123,6 +123,6 @@ exports.keepAlive = function (options) {
/******/ // module exports must be returned from runtime so entry inlining is disabled /******/ // module exports must be returned from runtime so entry inlining is disabled
/******/ // startup /******/ // startup
/******/ // Load entry module and return exports /******/ // Load entry module and return exports
/******/ return __nccwpck_require__(949); /******/ return __nccwpck_require__(590);
/******/ })() /******/ })()
; ;

View file

@ -2,7 +2,7 @@ module.exports =
/******/ (function() { // webpackBootstrap /******/ (function() { // webpackBootstrap
/******/ var __webpack_modules__ = ({ /******/ var __webpack_modules__ = ({
/***/ 880: /***/ 767:
/***/ (function(module) { /***/ (function(module) {
module.exports = function(module) { module.exports = function(module) {
@ -69,6 +69,6 @@ module.exports = function(module) {
/******/ // module exports must be returned from runtime so entry inlining is disabled /******/ // module exports must be returned from runtime so entry inlining is disabled
/******/ // startup /******/ // startup
/******/ // Load entry module and return exports /******/ // Load entry module and return exports
/******/ return __nccwpck_require__(880); /******/ return __nccwpck_require__(767);
/******/ })() /******/ })()
; ;

View file

@ -2,7 +2,7 @@ module.exports =
/******/ (function() { // webpackBootstrap /******/ (function() { // webpackBootstrap
/******/ var __webpack_modules__ = ({ /******/ var __webpack_modules__ = ({
/***/ 957: /***/ 20:
/***/ (function(module) { /***/ (function(module) {
// Provide a "System" global. // Provide a "System" global.
@ -54,6 +54,6 @@ module.exports = {
/******/ // module exports must be returned from runtime so entry inlining is disabled /******/ // module exports must be returned from runtime so entry inlining is disabled
/******/ // startup /******/ // startup
/******/ // Load entry module and return exports /******/ // Load entry module and return exports
/******/ return __nccwpck_require__(957); /******/ return __nccwpck_require__(20);
/******/ })() /******/ })()
; ;

View file

@ -255,8 +255,10 @@ export default async function exportPage({
}, },
}) })
const { const {
Component: mod, Component,
ComponentMod,
getServerSideProps, getServerSideProps,
getStaticProps,
pageConfig, pageConfig,
} = await loadComponents(distDir, page, serverless) } = await loadComponents(distDir, page, serverless)
const ampState = { const ampState = {
@ -274,25 +276,22 @@ export default async function exportPage({
} }
// if it was auto-exported the HTML is loaded here // if it was auto-exported the HTML is loaded here
if (typeof mod === 'string') { if (typeof Component === 'string') {
renderResult = RenderResult.fromStatic(mod) renderResult = RenderResult.fromStatic(Component)
queryWithAutoExportWarn() queryWithAutoExportWarn()
} else { } else {
// for non-dynamic SSG pages we should have already // for non-dynamic SSG pages we should have already
// prerendered the file // prerendered the file
if (renderedDuringBuild((mod as ComponentModule).getStaticProps)) if (renderedDuringBuild(getStaticProps))
return { ...results, duration: Date.now() - start } return { ...results, duration: Date.now() - start }
if ( if (getStaticProps && !htmlFilepath.endsWith('.html')) {
(mod as ComponentModule).getStaticProps &&
!htmlFilepath.endsWith('.html')
) {
// make sure it ends with .html if the name contains a dot // make sure it ends with .html if the name contains a dot
htmlFilename += '.html' htmlFilename += '.html'
htmlFilepath += '.html' htmlFilepath += '.html'
} }
renderMethod = (mod as ComponentModule).renderReqToHTML renderMethod = (ComponentMod as ComponentModule).renderReqToHTML
const result = await renderMethod( const result = await renderMethod(
req, req,
res, res,

View file

@ -183,8 +183,7 @@
"@types/send": "0.14.4", "@types/send": "0.14.4",
"@types/styled-jsx": "2.2.8", "@types/styled-jsx": "2.2.8",
"@types/text-table": "0.2.1", "@types/text-table": "0.2.1",
"@types/webpack": "5.28.0", "@types/webpack-sources1": "npm:@types/webpack-sources@0.1.5",
"@types/webpack-sources": "0.1.5",
"@vercel/ncc": "0.27.0", "@vercel/ncc": "0.27.0",
"@vercel/nft": "0.12.2", "@vercel/nft": "0.12.2",
"amphtml-validator": "1.0.33", "amphtml-validator": "1.0.33",
@ -238,7 +237,8 @@
"postcss-value-parser": "4.1.0", "postcss-value-parser": "4.1.0",
"resolve-url-loader": "3.1.2", "resolve-url-loader": "3.1.2",
"sass-loader": "10.2.0", "sass-loader": "10.2.0",
"schema-utils": "2.7.1", "schema-utils2": "npm:schema-utils@2.7.1",
"schema-utils3": "npm:schema-utils@3.0.0",
"semver": "7.3.2", "semver": "7.3.2",
"send": "0.17.1", "send": "0.17.1",
"source-map": "0.6.1", "source-map": "0.6.1",
@ -249,8 +249,14 @@
"text-table": "0.2.0", "text-table": "0.2.0",
"unistore": "3.4.1", "unistore": "3.4.1",
"web-vitals": "2.1.0", "web-vitals": "2.1.0",
"webpack": "4.44.1", "webpack4": "npm:webpack@4.44.1",
"webpack-sources": "1.4.3" "webpack5": "npm:webpack@5.53.0",
"webpack-sources1": "npm:webpack-sources@1.4.3",
"webpack-sources3": "npm:webpack-sources@3.2.0"
},
"resolutions": {
"browserslist": "4.16.6",
"caniuse-lite": "1.0.30001228"
}, },
"engines": { "engines": {
"node": ">=12.0.0" "node": ">=12.0.0"

View file

@ -109,7 +109,7 @@ export type NextConfig = { [key: string]: any } & {
webpack5?: false webpack5?: false
strictPostcssConfiguration?: boolean strictPostcssConfiguration?: boolean
} }
crossOrigin?: string crossOrigin?: false | 'anonymous' | 'use-credentials'
experimental?: { experimental?: {
swcMinify?: boolean swcMinify?: boolean
swcLoader?: boolean swcLoader?: boolean

View file

@ -26,7 +26,7 @@ type ReactLoadableManifest = { [moduleId: string]: ManifestItem }
export type LoadComponentsReturnType = { export type LoadComponentsReturnType = {
Component: React.ComponentType Component: React.ComponentType
pageConfig?: PageConfig pageConfig: PageConfig
buildManifest: BuildManifest buildManifest: BuildManifest
reactLoadableManifest: ReactLoadableManifest reactLoadableManifest: ReactLoadableManifest
Document: DocumentType Document: DocumentType
@ -47,6 +47,7 @@ export async function loadDefaultErrorComponents(distDir: string) {
App, App,
Document, Document,
Component, Component,
pageConfig: {},
buildManifest: require(join(distDir, `fallback-${BUILD_MANIFEST}`)), buildManifest: require(join(distDir, `fallback-${BUILD_MANIFEST}`)),
reactLoadableManifest: {}, reactLoadableManifest: {},
ComponentMod, ComponentMod,
@ -59,13 +60,27 @@ export async function loadComponents(
serverless: boolean serverless: boolean
): Promise<LoadComponentsReturnType> { ): Promise<LoadComponentsReturnType> {
if (serverless) { if (serverless) {
const Component = await requirePage(pathname, distDir, serverless) const ComponentMod = await requirePage(pathname, distDir, serverless)
let { getStaticProps, getStaticPaths, getServerSideProps } = Component if (typeof ComponentMod === 'string') {
return {
Component: ComponentMod as any,
pageConfig: {},
ComponentMod,
} as LoadComponentsReturnType
}
let {
default: Component,
getStaticProps,
getStaticPaths,
getServerSideProps,
} = ComponentMod
Component = await Component
getStaticProps = await getStaticProps getStaticProps = await getStaticProps
getStaticPaths = await getStaticPaths getStaticPaths = await getStaticPaths
getServerSideProps = await getServerSideProps getServerSideProps = await getServerSideProps
const pageConfig = (await Component.config) || {} const pageConfig = (await ComponentMod.config) || {}
return { return {
Component, Component,
@ -73,7 +88,7 @@ export async function loadComponents(
getStaticProps, getStaticProps,
getStaticPaths, getStaticPaths,
getServerSideProps, getServerSideProps,
ComponentMod: Component, ComponentMod,
} as LoadComponentsReturnType } as LoadComponentsReturnType
} }

View file

@ -1450,8 +1450,8 @@ export default class Server {
const is500Page = pathname === '/500' const is500Page = pathname === '/500'
const isLikeServerless = const isLikeServerless =
typeof components.Component === 'object' && typeof components.ComponentMod === 'object' &&
typeof (components.Component as any).renderReqToHTML === 'function' typeof (components.ComponentMod as any).renderReqToHTML === 'function'
const isSSG = !!components.getStaticProps const isSSG = !!components.getStaticProps
const hasServerProps = !!components.getServerSideProps const hasServerProps = !!components.getServerSideProps
const hasStaticPaths = !!components.getStaticPaths const hasStaticPaths = !!components.getStaticPaths
@ -1493,7 +1493,7 @@ export default class Server {
!isLikeServerless && !isLikeServerless &&
!query.amp && !query.amp &&
!this.minimalMode && !this.minimalMode &&
typeof components.Document.getInitialProps !== 'function' typeof components.Document?.getInitialProps !== 'function'
} }
const locale = query.__nextLocale as string const locale = query.__nextLocale as string
@ -1626,7 +1626,7 @@ export default class Server {
// handle serverless // handle serverless
if (isLikeServerless) { if (isLikeServerless) {
const renderResult = await ( const renderResult = await (
components.Component as any components.ComponentMod as any
).renderReqToHTML(req, res, 'passthrough', { ).renderReqToHTML(req, res, 'passthrough', {
locale, locale,
locales, locales,

View file

@ -2,25 +2,8 @@
const notifier = require('node-notifier') const notifier = require('node-notifier')
// eslint-disable-next-line import/no-extraneous-dependencies // eslint-disable-next-line import/no-extraneous-dependencies
const { relative, basename, resolve, join } = require('path') const { relative, basename, resolve, join } = require('path')
const { Module } = require('module')
const fs = require('fs') const fs = require('fs')
// Note:
// "bundles" folder shadows main node_modules in workspace where all installs in
// this shadow node_modules are alias installs only.
// This is because Yarn alias installs have bugs with version deduping where
// transitive versions are not resolved correctly - for example, webpack5
// will end up resolving webpack-sources@1 instead of webpack-sources@2.
// If/when this issue is fixed upstream in Yarn, this "shadowing" workaround can
// then be removed to directly install the bundles/package.json packages into
// the main package.json as normal devDependencies aliases.
const m = new Module(resolve(__dirname, 'bundles', '_'))
m.filename = m.id
m.paths = Module._nodeModulePaths(m.id)
const bundleRequire = m.require
bundleRequire.resolve = (request, options) =>
Module._resolveFilename(request, m, false, options)
export async function next__polyfill_nomodule(task, opts) { export async function next__polyfill_nomodule(task, opts) {
await task await task
.source( .source(
@ -286,7 +269,13 @@ externals['file-loader'] = 'next/dist/compiled/file-loader'
export async function ncc_file_loader(task, opts) { export async function ncc_file_loader(task, opts) {
await task await task
.source(opts.src || relative(__dirname, require.resolve('file-loader'))) .source(opts.src || relative(__dirname, require.resolve('file-loader')))
.ncc({ packageName: 'file-loader', externals }) .ncc({
packageName: 'file-loader',
externals: {
...externals,
'schema-utils': externals['schema-utils2'],
},
})
.target('compiled/file-loader') .target('compiled/file-loader')
} }
// eslint-disable-next-line camelcase // eslint-disable-next-line camelcase
@ -600,32 +589,33 @@ export async function ncc_sass_loader(task, opts) {
}, },
externals: { externals: {
...externals, ...externals,
'schema-utils': 'next/dist/compiled/schema-utils3', 'schema-utils': externals['schema-utils3'],
}, },
target: 'es5', target: 'es5',
}) })
.target('compiled/sass-loader') .target('compiled/sass-loader')
} }
// eslint-disable-next-line camelcase // eslint-disable-next-line camelcase
externals['schema-utils'] = 'next/dist/compiled/schema-utils' externals['schema-utils'] = 'MISSING_VERSION schema-utils version not specified'
export async function ncc_schema_utils(task, opts) { externals['schema-utils2'] = 'next/dist/compiled/schema-utils2'
export async function ncc_schema_utils2(task, opts) {
await task await task
.source(opts.src || relative(__dirname, require.resolve('schema-utils'))) .source(opts.src || relative(__dirname, require.resolve('schema-utils2')))
.ncc({ .ncc({
packageName: 'schema-utils', packageName: 'schema-utils',
bundleName: 'schema-utils2',
externals, externals,
}) })
.target('compiled/schema-utils') .target('compiled/schema-utils2')
} }
// eslint-disable-next-line camelcase // eslint-disable-next-line camelcase
externals['schema-utils3'] = 'next/dist/compiled/schema-utils3' externals['schema-utils3'] = 'next/dist/compiled/schema-utils3'
export async function ncc_schema_utils3(task, opts) { export async function ncc_schema_utils3(task, opts) {
await task await task
.source( .source(opts.src || relative(__dirname, require.resolve('schema-utils3')))
opts.src || relative(__dirname, bundleRequire.resolve('schema-utils3'))
)
.ncc({ .ncc({
packageName: 'schema-utils3', packageName: 'schema-utils',
bundleName: 'schema-utils3',
externals, externals,
}) })
.target('compiled/schema-utils3') .target('compiled/schema-utils3')
@ -712,19 +702,22 @@ export async function ncc_web_vitals(task, opts) {
.target('compiled/web-vitals') .target('compiled/web-vitals')
} }
// eslint-disable-next-line camelcase // eslint-disable-next-line camelcase
externals['webpack-sources'] = 'next/dist/compiled/webpack-sources' externals['webpack-sources'] = 'error webpack-sources version not specified'
export async function ncc_webpack_sources(task, opts) { externals['webpack-sources1'] = 'next/dist/compiled/webpack-sources1'
export async function ncc_webpack_sources1(task, opts) {
await task await task
.source(opts.src || relative(__dirname, require.resolve('webpack-sources'))) .source(
.ncc({ packageName: 'webpack-sources', externals, target: 'es5' }) opts.src || relative(__dirname, require.resolve('webpack-sources1'))
.target('compiled/webpack-sources') )
.ncc({ packageName: 'webpack-sources1', externals, target: 'es5' })
.target('compiled/webpack-sources1')
} }
// eslint-disable-next-line camelcase // eslint-disable-next-line camelcase
externals['webpack-sources3'] = 'next/dist/compiled/webpack-sources3' externals['webpack-sources3'] = 'next/dist/compiled/webpack-sources3'
export async function ncc_webpack_sources3(task, opts) { export async function ncc_webpack_sources3(task, opts) {
await task await task
.source( .source(
opts.src || relative(__dirname, bundleRequire.resolve('webpack-sources3')) opts.src || relative(__dirname, require.resolve('webpack-sources3'))
) )
.ncc({ packageName: 'webpack-sources3', externals, target: 'es5' }) .ncc({ packageName: 'webpack-sources3', externals, target: 'es5' })
.target('compiled/webpack-sources3') .target('compiled/webpack-sources3')
@ -745,6 +738,7 @@ export async function ncc_mini_css_extract_plugin(task, opts) {
...externals, ...externals,
'./index': './index.js', './index': './index.js',
'schema-utils': 'next/dist/compiled/schema-utils3', 'schema-utils': 'next/dist/compiled/schema-utils3',
'webpack-sources': externals['webpack-sources1'],
}, },
}) })
.target('compiled/mini-css-extract-plugin') .target('compiled/mini-css-extract-plugin')
@ -758,7 +752,7 @@ export async function ncc_mini_css_extract_plugin(task, opts) {
externals: { externals: {
...externals, ...externals,
'./index': './index.js', './index': './index.js',
'schema-utils': 'next/dist/compiled/schema-utils3', 'schema-utils': externals['schema-utils3'],
}, },
}) })
.target('compiled/mini-css-extract-plugin') .target('compiled/mini-css-extract-plugin')
@ -768,6 +762,8 @@ export async function ncc_mini_css_extract_plugin(task, opts) {
export async function ncc_webpack_bundle4(task, opts) { export async function ncc_webpack_bundle4(task, opts) {
const bundleExternals = { const bundleExternals = {
...externals, ...externals,
'schema-utils': externals['schema-utils2'],
'webpack-sources': externals['webpack-sources1'],
} }
for (const pkg of Object.keys(webpackBundlePackages)) { for (const pkg of Object.keys(webpackBundlePackages)) {
delete bundleExternals[pkg] delete bundleExternals[pkg]
@ -775,7 +771,7 @@ export async function ncc_webpack_bundle4(task, opts) {
await task await task
.source(opts.src || 'bundles/webpack/bundle4.js') .source(opts.src || 'bundles/webpack/bundle4.js')
.ncc({ .ncc({
packageName: 'webpack', packageName: 'webpack4',
bundleName: 'webpack', bundleName: 'webpack',
externals: bundleExternals, externals: bundleExternals,
minify: false, minify: false,
@ -788,6 +784,8 @@ export async function ncc_webpack_bundle4(task, opts) {
export async function ncc_webpack_bundle5(task, opts) { export async function ncc_webpack_bundle5(task, opts) {
const bundleExternals = { const bundleExternals = {
...externals, ...externals,
'schema-utils': externals['schema-utils3'],
'webpack-sources': externals['webpack-sources3'],
} }
for (const pkg of Object.keys(webpackBundlePackages)) { for (const pkg of Object.keys(webpackBundlePackages)) {
delete bundleExternals[pkg] delete bundleExternals[pkg]
@ -800,11 +798,7 @@ export async function ncc_webpack_bundle5(task, opts) {
customEmit(path) { customEmit(path) {
if (path.endsWith('.runtime.js')) return `'./${basename(path)}'` if (path.endsWith('.runtime.js')) return `'./${basename(path)}'`
}, },
externals: { externals: bundleExternals,
...bundleExternals,
'schema-utils': 'next/dist/compiled/schema-utils3',
'webpack-sources': 'next/dist/compiled/webpack-sources3',
},
minify: false, minify: false,
target: 'es5', target: 'es5',
}) })
@ -814,6 +808,8 @@ export async function ncc_webpack_bundle5(task, opts) {
const webpackBundlePackages = { const webpackBundlePackages = {
webpack: 'next/dist/compiled/webpack/webpack-lib', webpack: 'next/dist/compiled/webpack/webpack-lib',
'webpack/lib/NormalModule': 'next/dist/compiled/webpack/NormalModule', 'webpack/lib/NormalModule': 'next/dist/compiled/webpack/NormalModule',
'webpack/lib/node/NodeTargetPlugin':
'next/dist/compiled/webpack/NodeTargetPlugin',
} }
Object.assign(externals, webpackBundlePackages) Object.assign(externals, webpackBundlePackages)
@ -899,7 +895,7 @@ export async function ncc(task, opts) {
'ncc_icss_utils', 'ncc_icss_utils',
'ncc_resolve_url_loader', 'ncc_resolve_url_loader',
'ncc_sass_loader', 'ncc_sass_loader',
'ncc_schema_utils', 'ncc_schema_utils2',
'ncc_schema_utils3', 'ncc_schema_utils3',
'ncc_semver', 'ncc_semver',
'ncc_send', 'ncc_send',
@ -914,7 +910,7 @@ export async function ncc(task, opts) {
'ncc_webpack_bundle4', 'ncc_webpack_bundle4',
'ncc_webpack_bundle5', 'ncc_webpack_bundle5',
'ncc_webpack_bundle_packages', 'ncc_webpack_bundle_packages',
'ncc_webpack_sources', 'ncc_webpack_sources1',
'ncc_webpack_sources3', 'ncc_webpack_sources3',
'ncc_mini_css_extract_plugin', 'ncc_mini_css_extract_plugin',
], ],

View file

@ -225,7 +225,7 @@ declare module 'next/dist/compiled/comment-json' {
} }
declare module 'pnp-webpack-plugin' { declare module 'pnp-webpack-plugin' {
import webpack from 'webpack' import webpack from 'webpack4'
class PnpWebpackPlugin extends webpack.Plugin {} class PnpWebpackPlugin extends webpack.Plugin {}

View file

@ -27,20 +27,40 @@ declare module 'mini-css-extract-plugin'
declare module 'next/dist/compiled/loader-utils' declare module 'next/dist/compiled/loader-utils'
declare module 'next/dist/compiled/webpack/webpack' { declare module 'next/dist/compiled/webpack/webpack' {
import webpackSources from 'webpack-sources' import webpackSources from 'webpack-sources1'
import webpack, { loader } from 'webpack' import webpack4, { loader } from 'webpack4'
export { NormalModule } from 'webpack'
export let isWebpack5: boolean export let isWebpack5: boolean
export function init(useWebpack5: boolean): void export function init(useWebpack5: boolean): void
export let BasicEvaluatedExpression: any export let BasicEvaluatedExpression: any
export let GraphHelpers: any export let GraphHelpers: any
export function onWebpackInit(cb: () => void): void export function onWebpackInit(cb: () => void): void
// TODO change this to webpack4 | webpack5
export let sources: typeof webpackSources export let sources: typeof webpackSources
export { webpack, loader } // TODO change this to webpack
export { webpack4 as webpack, loader }
} }
declare module 'webpack' { declare module 'webpack' {
import webpack4 from 'webpack4'
import webpack5 from 'webpack5'
export type Compiler = webpack4.Compiler | webpack5.Compiler
export type Compilation =
| webpack4.compilation.Compilation
| webpack5.Compilation
export type Module = webpack4.Module | webpack5.Module
export type Stats = webpack4.Stats | webpack5.Stats
export {
Template,
RuntimeModule,
RuntimeGlobals,
NormalModule,
} from 'webpack5'
}
declare module 'webpack4' {
import { RawSourceMap } from 'source-map' import { RawSourceMap } from 'source-map'
import { ConcatSource } from 'webpack-sources' import { ConcatSource } from 'webpack-sources1'
export = webpack export = webpack

View file

@ -11,7 +11,7 @@ import { StackFrame } from 'stacktrace-parser'
import url from 'url' import url from 'url'
// @ts-ignore // @ts-ignore
// eslint-disable-next-line import/no-extraneous-dependencies // eslint-disable-next-line import/no-extraneous-dependencies
import webpack from 'webpack' import type webpack from 'webpack4'
import { getRawSourceMap } from './internal/helpers/getRawSourceMap' import { getRawSourceMap } from './internal/helpers/getRawSourceMap'
import { launchEditor } from './internal/helpers/launchEditor' import { launchEditor } from './internal/helpers/launchEditor'

View file

@ -1,18 +1,14 @@
// types only import
import { import {
Compiler as WebpackCompiler, Compiler as WebpackCompiler,
Template as WebpackTemplate, Template as WebpackTemplate,
// @ts-ignore exists in webpack 5
RuntimeModule as WebpackRuntimeModule, RuntimeModule as WebpackRuntimeModule,
// @ts-ignore exists in webpack 5
RuntimeGlobals as WebpackRuntimeGlobals, RuntimeGlobals as WebpackRuntimeGlobals,
// @ts-ignore exists in webpack 5 Compilation as WebpackCompilation,
compilation as WebpackCompilation,
} from 'webpack' } from 'webpack'
// Shared between webpack 4 and 5: // Shared between webpack 4 and 5:
function injectRefreshFunctions( function injectRefreshFunctions(
compilation: WebpackCompilation.Compilation, compilation: WebpackCompilation,
Template: typeof WebpackTemplate Template: typeof WebpackTemplate
) { ) {
const hookVars: any = (compilation.mainTemplate.hooks as any).localVars const hookVars: any = (compilation.mainTemplate.hooks as any).localVars
@ -97,7 +93,6 @@ function webpack5(this: ReactFreshWebpackPlugin, compiler: WebpackCompiler) {
} }
generate() { generate() {
// @ts-ignore This exists in webpack 5
const { runtimeTemplate } = this.compilation const { runtimeTemplate } = this.compilation
return Template.asString([ return Template.asString([
`if (${RuntimeGlobals.interceptModuleExecution}) {`, `if (${RuntimeGlobals.interceptModuleExecution}) {`,

View file

@ -1,7 +1,4 @@
import { import type { LoaderDefinition } from 'webpack'
// @ts-ignore exists in webpack 5
loader,
} from 'webpack'
import RefreshModuleRuntime from './internal/ReactRefreshModule.runtime' import RefreshModuleRuntime from './internal/ReactRefreshModule.runtime'
let refreshModuleRuntime = RefreshModuleRuntime.toString() let refreshModuleRuntime = RefreshModuleRuntime.toString()
@ -10,7 +7,7 @@ refreshModuleRuntime = refreshModuleRuntime.slice(
refreshModuleRuntime.lastIndexOf('}') refreshModuleRuntime.lastIndexOf('}')
) )
const ReactRefreshLoader: loader.Loader = function ReactRefreshLoader( const ReactRefreshLoader: LoaderDefinition = function ReactRefreshLoader(
source, source,
inputSourceMap inputSourceMap
) { ) {

View file

@ -6,7 +6,10 @@
"target": "es2015", "target": "es2015",
"lib": ["dom"], "lib": ["dom"],
"downlevelIteration": true, "downlevelIteration": true,
"preserveWatchOutput": true "preserveWatchOutput": true,
"paths": {
"webpack": ["../../node_modules/webpack5"]
}
}, },
"include": ["**/*.ts"], "include": ["**/*.ts"],
"exclude": ["node_modules"] "exclude": ["node_modules"]

View file

@ -1,8 +1,7 @@
#!/bin/bash #!/bin/bash
yarn --cwd packages/next/bundles cp node_modules/webpack5/lib/hmr/HotModuleReplacement.runtime.js packages/next/bundles/webpack/packages/
cp packages/next/bundles/node_modules/webpack5/lib/hmr/HotModuleReplacement.runtime.js packages/next/bundles/webpack/packages/ cp node_modules/webpack5/lib/hmr/JavascriptHotModuleReplacement.runtime.js packages/next/bundles/webpack/packages/
cp packages/next/bundles/node_modules/webpack5/lib/hmr/JavascriptHotModuleReplacement.runtime.js packages/next/bundles/webpack/packages/
yarn --cwd packages/next ncc-compiled yarn --cwd packages/next ncc-compiled
# Make sure to exit with 1 if there are changes after running ncc-compiled # Make sure to exit with 1 if there are changes after running ncc-compiled
@ -10,6 +9,6 @@ yarn --cwd packages/next ncc-compiled
if [[ ! -z $(git status -s) ]];then if [[ ! -z $(git status -s) ]];then
echo "Detected changes" echo "Detected changes"
git status git diff -a --stat
exit 1 exit 1
fi fi

View file

@ -1,9 +1,8 @@
module.exports = { module.exports = {
// target: 'experimental-serverless-trace', // target: 'experimental-serverless-trace',
webpack: (config, options) => { webpack: (config) => {
config.experiments = { config.experiments = config.experiments || {}
topLevelAwait: true, config.experiments.topLevelAwait = true
}
return config return config
}, },
} }

View file

@ -1,3 +1,5 @@
import Head from 'next/head'
export const config = { export const config = {
amp: true, amp: true,
} }
@ -8,6 +10,14 @@ export default function Config() {
const date = new Date() const date = new Date()
return ( return (
<div> <div>
<Head>
<script
async
key="amp-timeago"
custom-element="amp-timeago"
src="https://cdn.ampproject.org/v0/amp-timeago-0.1.js"
/>
</Head>
<amp-timeago <amp-timeago
id="amp-timeago" id="amp-timeago"
width="0" width="0"

View file

@ -12,11 +12,10 @@ import {
nextBuild, nextBuild,
nextStart, nextStart,
File, File,
check,
} from 'next-test-utils' } from 'next-test-utils'
import { join } from 'path' import { join } from 'path'
import webpack from 'webpack'
const isWebpack5 = parseInt(webpack.version) === 5
let app let app
let appPort let appPort
const appDir = join(__dirname, '../') const appDir = join(__dirname, '../')
@ -83,7 +82,11 @@ function runTests(dev = false) {
let browser let browser
try { try {
browser = await webdriver(appPort, '/config') browser = await webdriver(appPort, '/config')
expect(await browser.elementByCss('#amp-timeago').text()).not.toBe('fail') await check(
() => browser.elementByCss('#amp-timeago').text(),
'just now',
true
)
} finally { } finally {
if (browser) await browser.close() if (browser) await browser.close()
} }
@ -101,7 +104,11 @@ function runTests(dev = false) {
}) })
} }
;(isWebpack5 ? describe : describe.skip)('Async modules', () => { describe('Async modules', () => {
if (process.env.NEXT_PRIVATE_TEST_WEBPACK4_MODE) {
it.skip("webpack 4 doesn't support top level await", () => {})
return
}
describe('dev mode', () => { describe('dev mode', () => {
beforeAll(async () => { beforeAll(async () => {
appPort = await findPort() appPort = await findPort()

View file

@ -5,17 +5,10 @@ import { findPort, killApp, launchApp, nextBuild } from 'next-test-utils'
import webdriver from 'next-webdriver' import webdriver from 'next-webdriver'
import { recursiveReadDir } from 'next/dist/lib/recursive-readdir' import { recursiveReadDir } from 'next/dist/lib/recursive-readdir'
import { join } from 'path' import { join } from 'path'
import { version } from 'webpack'
const isWebpack5 = parseInt(version) === 5
const appDir = join(__dirname, '../') const appDir = join(__dirname, '../')
// TODO: Make legacy Sass support work with webpack 5 describe('Legacy Sass Support Should Disable New CSS', () => {
const describeFn = isWebpack5 ? describe.skip : describe
// TODO: Make legacy Sass support work with webpack 5
describeFn('Legacy Sass Support Should Disable New CSS', () => {
beforeAll(async () => { beforeAll(async () => {
await remove(join(appDir, '.next')) await remove(join(appDir, '.next'))
await nextBuild(appDir) await nextBuild(appDir)
@ -31,7 +24,7 @@ describeFn('Legacy Sass Support Should Disable New CSS', () => {
}) })
}) })
describeFn('Legacy Sass Support should work in development', () => { describe('Legacy Sass Support should work in development', () => {
beforeAll(async () => { beforeAll(async () => {
await remove(join(appDir, '.next')) await remove(join(appDir, '.next'))
}) })

View file

@ -3,30 +3,25 @@
import webdriver from 'next-webdriver' import webdriver from 'next-webdriver'
import { join } from 'path' import { join } from 'path'
import { import {
nextServer, nextStart,
nextBuild, nextBuild,
startApp, findPort,
stopApp, killApp,
runNextCommand, runNextCommand,
} from 'next-test-utils' } from 'next-test-utils'
const appDir = join(__dirname, '../') const appDir = join(__dirname, '../')
let app
let appPort let appPort
let server
describe('Production Config Usage', () => { describe('Production Config Usage', () => {
beforeAll(async () => { beforeAll(async () => {
await nextBuild(appDir) await nextBuild(appDir)
const app = nextServer({ appPort = await findPort()
dir: join(__dirname, '../'), app = await nextStart(appDir, appPort)
dev: false,
quiet: true,
})
server = await startApp(app)
appPort = server.address().port
}) })
afterAll(() => stopApp(server)) afterAll(() => killApp(app))
describe('with next-css', () => { describe('with next-css', () => {
it('should load styles', async () => { it('should load styles', async () => {

View file

@ -17,6 +17,7 @@ export class NextInstance {
protected dependencies?: { [name: string]: string } protected dependencies?: { [name: string]: string }
protected events: { [eventName: string]: Set<any> } protected events: { [eventName: string]: Set<any> }
protected testDir: string protected testDir: string
protected isStopping: boolean
protected isDestroyed: boolean protected isDestroyed: boolean
protected childProcess: ChildProcess protected childProcess: ChildProcess
protected _url: string protected _url: string
@ -40,6 +41,7 @@ export class NextInstance {
this.nextConfig = nextConfig this.nextConfig = nextConfig
this.events = {} this.events = {}
this.isDestroyed = false this.isDestroyed = false
this.isStopping = false
} }
protected async createTestDir() { protected async createTestDir() {
@ -120,6 +122,7 @@ export class NextInstance {
public async setup(): Promise<void> {} public async setup(): Promise<void> {}
public async start(): Promise<void> {} public async start(): Promise<void> {}
public async stop(): Promise<void> { public async stop(): Promise<void> {
this.isStopping = true
if (this.childProcess) { if (this.childProcess) {
let exitResolve let exitResolve
const exitPromise = new Promise((resolve) => { const exitPromise = new Promise((resolve) => {

View file

@ -49,6 +49,7 @@ export class NextDevInstance extends NextInstance {
}) })
this.childProcess.on('close', (code) => { this.childProcess.on('close', (code) => {
if (this.isStopping) return
if (code) { if (code) {
throw new Error(`next dev exited unexpectedly with code ${code}`) throw new Error(`next dev exited unexpectedly with code ${code}`)
} }

View file

@ -81,6 +81,13 @@ export class NextStartInstance extends NextInstance {
) )
handleStdio() handleStdio()
this.childProcess.on('close', (code) => {
if (this.isStopping) return
if (code) {
throw new Error(`next start exited unexpectedly with code ${code}`)
}
})
await new Promise<void>((resolve) => { await new Promise<void>((resolve) => {
const readyCb = (msg) => { const readyCb = (msg) => {
if (msg.includes('started server on') && msg.includes('url:')) { if (msg.includes('started server on') && msg.includes('url:')) {

View file

@ -10,9 +10,6 @@ import {
import { writeFile } from 'fs-extra' import { writeFile } from 'fs-extra'
import getPort from 'get-port' import getPort from 'get-port'
import http from 'http' import http from 'http'
// `next` here is the symlink in `test/node_modules/next` which points to the root directory.
// This is done so that requiring from `next` works.
// The reason we don't import the relative path `../../dist/<etc>` is that it would lead to inconsistent module singletons
import server from 'next/dist/server/next' import server from 'next/dist/server/next'
import _pkg from 'next/package.json' import _pkg from 'next/package.json'
import fetch from 'node-fetch' import fetch from 'node-fetch'

387
yarn.lock
View file

@ -4460,10 +4460,10 @@
version "0.0.39" version "0.0.39"
resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f" resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.39.tgz#e177e699ee1b8c22d23174caaa7422644389509f"
"@types/estree@^0.0.46": "@types/estree@^0.0.50":
version "0.0.46" version "0.0.50"
resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.46.tgz#0fb6bfbbeabd7a30880504993369c4bf1deab1fe" resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.50.tgz#1e0caa9364d3fccd2931c3ed96fdbeaa5d4cca83"
integrity sha512-laIjwTQaD+5DukBZaygQ79K1Z0jb1bPEMRrkXSLjtCcZm+abyp5YbrqpSLzD42FwWW6gK/aS4NYpJ804nG2brg== integrity sha512-C6N5s2ZFtuZRj54k2/zyRhNDjJwwcViAM3Nbm8zjBpbqAdZ00mr0CFxvSKeO8Y/e03WVFLpQMdHYVfUd6SB+Hw==
"@types/etag@1.8.0": "@types/etag@1.8.0":
version "1.8.0" version "1.8.0"
@ -4590,7 +4590,7 @@
resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.6.tgz#f4c7ec43e81b319a9815115031709f26987891f0" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.6.tgz#f4c7ec43e81b319a9815115031709f26987891f0"
integrity sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw== integrity sha512-3c+yGKvVP5Y9TYBEibGNR+kLtijnj7mYrXRg+WpFb2X9xm04g/DXYkfg4hmzJQosc9snFNUPkbYIhu+KAm6jJw==
"@types/json-schema@^7.0.7": "@types/json-schema@^7.0.7", "@types/json-schema@^7.0.8":
version "7.0.9" version "7.0.9"
resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.9.tgz#97edc9037ea0c38585320b28964dde3b39e4660d" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.9.tgz#97edc9037ea0c38585320b28964dde3b39e4660d"
integrity sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ== integrity sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==
@ -4858,23 +4858,15 @@
"@types/unist" "*" "@types/unist" "*"
"@types/vfile-message" "*" "@types/vfile-message" "*"
"@types/webpack-sources@0.1.5": "@types/webpack-sources1@npm:@types/webpack-sources@0.1.5":
version "0.1.5" version "0.1.5"
resolved "https://registry.yarnpkg.com/@types/webpack-sources/-/webpack-sources-0.1.5.tgz#be47c10f783d3d6efe1471ff7f042611bd464a92" resolved "https://registry.yarnpkg.com/@types/webpack-sources/-/webpack-sources-0.1.5.tgz#be47c10f783d3d6efe1471ff7f042611bd464a92"
integrity sha512-zfvjpp7jiafSmrzJ2/i3LqOyTYTuJ7u1KOXlKgDlvsj9Rr0x7ZiYu5lZbXwobL7lmsRNtPXlBfmaUD8eU2Hu8w==
dependencies: dependencies:
"@types/node" "*" "@types/node" "*"
"@types/source-list-map" "*" "@types/source-list-map" "*"
source-map "^0.6.1" source-map "^0.6.1"
"@types/webpack@5.28.0":
version "5.28.0"
resolved "https://registry.yarnpkg.com/@types/webpack/-/webpack-5.28.0.tgz#78dde06212f038d77e54116cfe69e88ae9ed2c03"
integrity sha512-8cP0CzcxUiFuA9xGJkfeVpqmWTk9nx6CWwamRGCj95ph1SmlRRk9KlCZ6avhCbZd4L68LvYT6l1kpdEnQXrF8w==
dependencies:
"@types/node" "*"
tapable "^2.2.0"
webpack "^5"
"@types/yargs-parser@*": "@types/yargs-parser@*":
version "13.1.0" version "13.1.0"
resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-13.1.0.tgz#c563aa192f39350a1d18da36c5a8da382bbd8228" resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-13.1.0.tgz#c563aa192f39350a1d18da36c5a8da382bbd8228"
@ -5081,13 +5073,13 @@
resolve-from "^5.0.0" resolve-from "^5.0.0"
rollup-pluginutils "^2.8.2" rollup-pluginutils "^2.8.2"
"@webassemblyjs/ast@1.11.0": "@webassemblyjs/ast@1.11.1":
version "1.11.0" version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.11.0.tgz#a5aa679efdc9e51707a4207139da57920555961f" resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.11.1.tgz#2bfd767eae1a6996f432ff7e8d7fc75679c0b6a7"
integrity sha512-kX2W49LWsbthrmIRMbQZuQDhGtjyqXfEmmHyEi4XWnSZtPmxY0+3anPIzsnRb45VH/J55zlOfWvZuY47aJZTJg== integrity sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw==
dependencies: dependencies:
"@webassemblyjs/helper-numbers" "1.11.0" "@webassemblyjs/helper-numbers" "1.11.1"
"@webassemblyjs/helper-wasm-bytecode" "1.11.0" "@webassemblyjs/helper-wasm-bytecode" "1.11.1"
"@webassemblyjs/ast@1.9.0": "@webassemblyjs/ast@1.9.0":
version "1.9.0" version "1.9.0"
@ -5097,28 +5089,28 @@
"@webassemblyjs/helper-wasm-bytecode" "1.9.0" "@webassemblyjs/helper-wasm-bytecode" "1.9.0"
"@webassemblyjs/wast-parser" "1.9.0" "@webassemblyjs/wast-parser" "1.9.0"
"@webassemblyjs/floating-point-hex-parser@1.11.0": "@webassemblyjs/floating-point-hex-parser@1.11.1":
version "1.11.0" version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.0.tgz#34d62052f453cd43101d72eab4966a022587947c" resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz#f6c61a705f0fd7a6aecaa4e8198f23d9dc179e4f"
integrity sha512-Q/aVYs/VnPDVYvsCBL/gSgwmfjeCb4LW8+TMrO3cSzJImgv8lxxEPM2JA5jMrivE7LSz3V+PFqtMbls3m1exDA== integrity sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ==
"@webassemblyjs/floating-point-hex-parser@1.9.0": "@webassemblyjs/floating-point-hex-parser@1.9.0":
version "1.9.0" version "1.9.0"
resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz#3c3d3b271bddfc84deb00f71344438311d52ffb4" resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.9.0.tgz#3c3d3b271bddfc84deb00f71344438311d52ffb4"
"@webassemblyjs/helper-api-error@1.11.0": "@webassemblyjs/helper-api-error@1.11.1":
version "1.11.0" version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.0.tgz#aaea8fb3b923f4aaa9b512ff541b013ffb68d2d4" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz#1a63192d8788e5c012800ba6a7a46c705288fd16"
integrity sha512-baT/va95eXiXb2QflSx95QGT5ClzWpGaa8L7JnJbgzoYeaA27FCvuBXU758l+KXWRndEmUXjP0Q5fibhavIn8w== integrity sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg==
"@webassemblyjs/helper-api-error@1.9.0": "@webassemblyjs/helper-api-error@1.9.0":
version "1.9.0" version "1.9.0"
resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz#203f676e333b96c9da2eeab3ccef33c45928b6a2" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.9.0.tgz#203f676e333b96c9da2eeab3ccef33c45928b6a2"
"@webassemblyjs/helper-buffer@1.11.0": "@webassemblyjs/helper-buffer@1.11.1":
version "1.11.0" version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.0.tgz#d026c25d175e388a7dbda9694e91e743cbe9b642" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz#832a900eb444884cde9a7cad467f81500f5e5ab5"
integrity sha512-u9HPBEl4DS+vA8qLQdEQ6N/eJQ7gT7aNvMIo8AAWvAl/xMrcOSiI2M0MAnMCy3jIFke7bEee/JwdX1nUpCtdyA== integrity sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA==
"@webassemblyjs/helper-buffer@1.9.0": "@webassemblyjs/helper-buffer@1.9.0":
version "1.9.0" version "1.9.0"
@ -5130,6 +5122,11 @@
dependencies: dependencies:
"@webassemblyjs/wast-printer" "1.9.0" "@webassemblyjs/wast-printer" "1.9.0"
"@webassemblyjs/helper-code-frame@npm:empty-npm-package@1.0.0", "@webassemblyjs/helper-module-context@npm:empty-npm-package@1.0.0", "@webassemblyjs/wast-parser@npm:empty-npm-package@1.0.0":
version "1.0.0"
resolved "https://registry.yarnpkg.com/empty-npm-package/-/empty-npm-package-1.0.0.tgz#fda29eb6de5efa391f73d578697853af55f6793a"
integrity sha512-q4Mq/+XO7UNDdMiPpR/LIBIW1Zl4V0Z6UT9aKGqIAnBCtCb3lvZJM1KbDbdzdC8fKflwflModfjR29Nt0EpcwA==
"@webassemblyjs/helper-fsm@1.9.0": "@webassemblyjs/helper-fsm@1.9.0":
version "1.9.0" version "1.9.0"
resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz#c05256b71244214671f4b08ec108ad63b70eddb8" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-fsm/-/helper-fsm-1.9.0.tgz#c05256b71244214671f4b08ec108ad63b70eddb8"
@ -5140,33 +5137,33 @@
dependencies: dependencies:
"@webassemblyjs/ast" "1.9.0" "@webassemblyjs/ast" "1.9.0"
"@webassemblyjs/helper-numbers@1.11.0": "@webassemblyjs/helper-numbers@1.11.1":
version "1.11.0" version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.0.tgz#7ab04172d54e312cc6ea4286d7d9fa27c88cd4f9" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz#64d81da219fbbba1e3bd1bfc74f6e8c4e10a62ae"
integrity sha512-DhRQKelIj01s5IgdsOJMKLppI+4zpmcMQ3XboFPLwCpSNH6Hqo1ritgHgD0nqHeSYqofA6aBN/NmXuGjM1jEfQ== integrity sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ==
dependencies: dependencies:
"@webassemblyjs/floating-point-hex-parser" "1.11.0" "@webassemblyjs/floating-point-hex-parser" "1.11.1"
"@webassemblyjs/helper-api-error" "1.11.0" "@webassemblyjs/helper-api-error" "1.11.1"
"@xtuc/long" "4.2.2" "@xtuc/long" "4.2.2"
"@webassemblyjs/helper-wasm-bytecode@1.11.0": "@webassemblyjs/helper-wasm-bytecode@1.11.1":
version "1.11.0" version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.0.tgz#85fdcda4129902fe86f81abf7e7236953ec5a4e1" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz#f328241e41e7b199d0b20c18e88429c4433295e1"
integrity sha512-MbmhvxXExm542tWREgSFnOVo07fDpsBJg3sIl6fSp9xuu75eGz5lz31q7wTLffwL3Za7XNRCMZy210+tnsUSEA== integrity sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q==
"@webassemblyjs/helper-wasm-bytecode@1.9.0": "@webassemblyjs/helper-wasm-bytecode@1.9.0":
version "1.9.0" version "1.9.0"
resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz#4fed8beac9b8c14f8c58b70d124d549dd1fe5790" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.9.0.tgz#4fed8beac9b8c14f8c58b70d124d549dd1fe5790"
"@webassemblyjs/helper-wasm-section@1.11.0": "@webassemblyjs/helper-wasm-section@1.11.1":
version "1.11.0" version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.0.tgz#9ce2cc89300262509c801b4af113d1ca25c1a75b" resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz#21ee065a7b635f319e738f0dd73bfbda281c097a"
integrity sha512-3Eb88hcbfY/FCukrg6i3EH8H2UsD7x8Vy47iVJrP967A9JGqgBVL9aH71SETPx1JrGsOUVLo0c7vMCN22ytJew== integrity sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg==
dependencies: dependencies:
"@webassemblyjs/ast" "1.11.0" "@webassemblyjs/ast" "1.11.1"
"@webassemblyjs/helper-buffer" "1.11.0" "@webassemblyjs/helper-buffer" "1.11.1"
"@webassemblyjs/helper-wasm-bytecode" "1.11.0" "@webassemblyjs/helper-wasm-bytecode" "1.11.1"
"@webassemblyjs/wasm-gen" "1.11.0" "@webassemblyjs/wasm-gen" "1.11.1"
"@webassemblyjs/helper-wasm-section@1.9.0": "@webassemblyjs/helper-wasm-section@1.9.0":
version "1.9.0" version "1.9.0"
@ -5177,10 +5174,10 @@
"@webassemblyjs/helper-wasm-bytecode" "1.9.0" "@webassemblyjs/helper-wasm-bytecode" "1.9.0"
"@webassemblyjs/wasm-gen" "1.9.0" "@webassemblyjs/wasm-gen" "1.9.0"
"@webassemblyjs/ieee754@1.11.0": "@webassemblyjs/ieee754@1.11.1":
version "1.11.0" version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.11.0.tgz#46975d583f9828f5d094ac210e219441c4e6f5cf" resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz#963929e9bbd05709e7e12243a099180812992614"
integrity sha512-KXzOqpcYQwAfeQ6WbF6HXo+0udBNmw0iXDmEK5sFlmQdmND+tr773Ti8/5T/M6Tl/413ArSJErATd8In3B+WBA== integrity sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ==
dependencies: dependencies:
"@xtuc/ieee754" "^1.2.0" "@xtuc/ieee754" "^1.2.0"
@ -5190,10 +5187,10 @@
dependencies: dependencies:
"@xtuc/ieee754" "^1.2.0" "@xtuc/ieee754" "^1.2.0"
"@webassemblyjs/leb128@1.11.0": "@webassemblyjs/leb128@1.11.1":
version "1.11.0" version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.11.0.tgz#f7353de1df38aa201cba9fb88b43f41f75ff403b" resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.11.1.tgz#ce814b45574e93d76bae1fb2644ab9cdd9527aa5"
integrity sha512-aqbsHa1mSQAbeeNcl38un6qVY++hh8OpCOzxhixSYgbRfNWcxJNJQwe2rezK9XEcssJbbWIkblaJRwGMS9zp+g== integrity sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw==
dependencies: dependencies:
"@xtuc/long" "4.2.2" "@xtuc/long" "4.2.2"
@ -5203,28 +5200,28 @@
dependencies: dependencies:
"@xtuc/long" "4.2.2" "@xtuc/long" "4.2.2"
"@webassemblyjs/utf8@1.11.0": "@webassemblyjs/utf8@1.11.1":
version "1.11.0" version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.11.0.tgz#86e48f959cf49e0e5091f069a709b862f5a2cadf" resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.11.1.tgz#d1f8b764369e7c6e6bae350e854dec9a59f0a3ff"
integrity sha512-A/lclGxH6SpSLSyFowMzO/+aDEPU4hvEiooCMXQPcQFPPJaYcPQNKGOCLUySJsYJ4trbpr+Fs08n4jelkVTGVw== integrity sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ==
"@webassemblyjs/utf8@1.9.0": "@webassemblyjs/utf8@1.9.0":
version "1.9.0" version "1.9.0"
resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.9.0.tgz#04d33b636f78e6a6813227e82402f7637b6229ab" resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.9.0.tgz#04d33b636f78e6a6813227e82402f7637b6229ab"
"@webassemblyjs/wasm-edit@1.11.0": "@webassemblyjs/wasm-edit@1.11.1":
version "1.11.0" version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.0.tgz#ee4a5c9f677046a210542ae63897094c2027cb78" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz#ad206ebf4bf95a058ce9880a8c092c5dec8193d6"
integrity sha512-JHQ0damXy0G6J9ucyKVXO2j08JVJ2ntkdJlq1UTiUrIgfGMmA7Ik5VdC/L8hBK46kVJgujkBIoMtT8yVr+yVOQ== integrity sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA==
dependencies: dependencies:
"@webassemblyjs/ast" "1.11.0" "@webassemblyjs/ast" "1.11.1"
"@webassemblyjs/helper-buffer" "1.11.0" "@webassemblyjs/helper-buffer" "1.11.1"
"@webassemblyjs/helper-wasm-bytecode" "1.11.0" "@webassemblyjs/helper-wasm-bytecode" "1.11.1"
"@webassemblyjs/helper-wasm-section" "1.11.0" "@webassemblyjs/helper-wasm-section" "1.11.1"
"@webassemblyjs/wasm-gen" "1.11.0" "@webassemblyjs/wasm-gen" "1.11.1"
"@webassemblyjs/wasm-opt" "1.11.0" "@webassemblyjs/wasm-opt" "1.11.1"
"@webassemblyjs/wasm-parser" "1.11.0" "@webassemblyjs/wasm-parser" "1.11.1"
"@webassemblyjs/wast-printer" "1.11.0" "@webassemblyjs/wast-printer" "1.11.1"
"@webassemblyjs/wasm-edit@1.9.0": "@webassemblyjs/wasm-edit@1.9.0":
version "1.9.0" version "1.9.0"
@ -5239,16 +5236,16 @@
"@webassemblyjs/wasm-parser" "1.9.0" "@webassemblyjs/wasm-parser" "1.9.0"
"@webassemblyjs/wast-printer" "1.9.0" "@webassemblyjs/wast-printer" "1.9.0"
"@webassemblyjs/wasm-gen@1.11.0": "@webassemblyjs/wasm-gen@1.11.1":
version "1.11.0" version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.0.tgz#3cdb35e70082d42a35166988dda64f24ceb97abe" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz#86c5ea304849759b7d88c47a32f4f039ae3c8f76"
integrity sha512-BEUv1aj0WptCZ9kIS30th5ILASUnAPEvE3tVMTrItnZRT9tXCLW2LEXT8ezLw59rqPP9klh9LPmpU+WmRQmCPQ== integrity sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA==
dependencies: dependencies:
"@webassemblyjs/ast" "1.11.0" "@webassemblyjs/ast" "1.11.1"
"@webassemblyjs/helper-wasm-bytecode" "1.11.0" "@webassemblyjs/helper-wasm-bytecode" "1.11.1"
"@webassemblyjs/ieee754" "1.11.0" "@webassemblyjs/ieee754" "1.11.1"
"@webassemblyjs/leb128" "1.11.0" "@webassemblyjs/leb128" "1.11.1"
"@webassemblyjs/utf8" "1.11.0" "@webassemblyjs/utf8" "1.11.1"
"@webassemblyjs/wasm-gen@1.9.0": "@webassemblyjs/wasm-gen@1.9.0":
version "1.9.0" version "1.9.0"
@ -5260,15 +5257,15 @@
"@webassemblyjs/leb128" "1.9.0" "@webassemblyjs/leb128" "1.9.0"
"@webassemblyjs/utf8" "1.9.0" "@webassemblyjs/utf8" "1.9.0"
"@webassemblyjs/wasm-opt@1.11.0": "@webassemblyjs/wasm-opt@1.11.1":
version "1.11.0" version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.0.tgz#1638ae188137f4bb031f568a413cd24d32f92978" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz#657b4c2202f4cf3b345f8a4c6461c8c2418985f2"
integrity sha512-tHUSP5F4ywyh3hZ0+fDQuWxKx3mJiPeFufg+9gwTpYp324mPCQgnuVKwzLTZVqj0duRDovnPaZqDwoyhIO8kYg== integrity sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw==
dependencies: dependencies:
"@webassemblyjs/ast" "1.11.0" "@webassemblyjs/ast" "1.11.1"
"@webassemblyjs/helper-buffer" "1.11.0" "@webassemblyjs/helper-buffer" "1.11.1"
"@webassemblyjs/wasm-gen" "1.11.0" "@webassemblyjs/wasm-gen" "1.11.1"
"@webassemblyjs/wasm-parser" "1.11.0" "@webassemblyjs/wasm-parser" "1.11.1"
"@webassemblyjs/wasm-opt@1.9.0": "@webassemblyjs/wasm-opt@1.9.0":
version "1.9.0" version "1.9.0"
@ -5279,17 +5276,17 @@
"@webassemblyjs/wasm-gen" "1.9.0" "@webassemblyjs/wasm-gen" "1.9.0"
"@webassemblyjs/wasm-parser" "1.9.0" "@webassemblyjs/wasm-parser" "1.9.0"
"@webassemblyjs/wasm-parser@1.11.0": "@webassemblyjs/wasm-parser@1.11.1":
version "1.11.0" version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.0.tgz#3e680b8830d5b13d1ec86cc42f38f3d4a7700754" resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz#86ca734534f417e9bd3c67c7a1c75d8be41fb199"
integrity sha512-6L285Sgu9gphrcpDXINvm0M9BskznnzJTE7gYkjDbxET28shDqp27wpruyx3C2S/dvEwiigBwLA1cz7lNUi0kw== integrity sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA==
dependencies: dependencies:
"@webassemblyjs/ast" "1.11.0" "@webassemblyjs/ast" "1.11.1"
"@webassemblyjs/helper-api-error" "1.11.0" "@webassemblyjs/helper-api-error" "1.11.1"
"@webassemblyjs/helper-wasm-bytecode" "1.11.0" "@webassemblyjs/helper-wasm-bytecode" "1.11.1"
"@webassemblyjs/ieee754" "1.11.0" "@webassemblyjs/ieee754" "1.11.1"
"@webassemblyjs/leb128" "1.11.0" "@webassemblyjs/leb128" "1.11.1"
"@webassemblyjs/utf8" "1.11.0" "@webassemblyjs/utf8" "1.11.1"
"@webassemblyjs/wasm-parser@1.9.0": "@webassemblyjs/wasm-parser@1.9.0":
version "1.9.0" version "1.9.0"
@ -5313,12 +5310,12 @@
"@webassemblyjs/helper-fsm" "1.9.0" "@webassemblyjs/helper-fsm" "1.9.0"
"@xtuc/long" "4.2.2" "@xtuc/long" "4.2.2"
"@webassemblyjs/wast-printer@1.11.0": "@webassemblyjs/wast-printer@1.11.1":
version "1.11.0" version "1.11.1"
resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.11.0.tgz#680d1f6a5365d6d401974a8e949e05474e1fab7e" resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz#d0c73beda8eec5426f10ae8ef55cee5e7084c2f0"
integrity sha512-Fg5OX46pRdTgB7rKIUojkh9vXaVN6sGYCnEiJN1GYkb0RPwShZXp6KTDqmoMdQPKhcroOXh3fEzmkWmCYaKYhQ== integrity sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg==
dependencies: dependencies:
"@webassemblyjs/ast" "1.11.0" "@webassemblyjs/ast" "1.11.1"
"@xtuc/long" "4.2.2" "@xtuc/long" "4.2.2"
"@webassemblyjs/wast-printer@1.9.0": "@webassemblyjs/wast-printer@1.9.0":
@ -5425,6 +5422,11 @@ acorn-globals@^6.0.0:
acorn "^7.1.1" acorn "^7.1.1"
acorn-walk "^7.1.1" acorn-walk "^7.1.1"
acorn-import-assertions@^1.7.6:
version "1.7.6"
resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.7.6.tgz#580e3ffcae6770eebeec76c3b9723201e9d01f78"
integrity sha512-FlVvVFA1TX6l3lp8VjDnYYq7R1nyW6x3svAt4nDgrWQ9SBaSh9CnbwgSUTasgfNfOG5HlM1ehugCvM+hjo56LA==
acorn-jsx@^5.0.0, acorn-jsx@^5.3.1: acorn-jsx@^5.0.0, acorn-jsx@^5.3.1:
version "5.3.1" version "5.3.1"
resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.1.tgz#fc8661e11b7ac1539c47dbfea2e72b3af34d267b" resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.1.tgz#fc8661e11b7ac1539c47dbfea2e72b3af34d267b"
@ -5484,6 +5486,11 @@ acorn@^8.2.4:
resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.4.1.tgz#56c36251fc7cabc7096adc18f05afe814321a28c" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.4.1.tgz#56c36251fc7cabc7096adc18f05afe814321a28c"
integrity sha512-asabaBSkEKosYKMITunzX177CXxQ4Q8BSSzMTKD+FefUhipQC70gfW5SiUDhYQ3vk8G+81HqQk7Fv9OXwwn9KA== integrity sha512-asabaBSkEKosYKMITunzX177CXxQ4Q8BSSzMTKD+FefUhipQC70gfW5SiUDhYQ3vk8G+81HqQk7Fv9OXwwn9KA==
acorn@^8.4.1:
version "8.5.0"
resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.5.0.tgz#4512ccb99b3698c752591e9bb4472e38ad43cee2"
integrity sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q==
add-stream@^1.0.0: add-stream@^1.0.0:
version "1.0.0" version "1.0.0"
resolved "https://registry.yarnpkg.com/add-stream/-/add-stream-1.0.0.tgz#6a7990437ca736d5e1288db92bd3266d5f5cb2aa" resolved "https://registry.yarnpkg.com/add-stream/-/add-stream-1.0.0.tgz#6a7990437ca736d5e1288db92bd3266d5f5cb2aa"
@ -6410,7 +6417,7 @@ browserify-zlib@0.2.0, browserify-zlib@^0.2.0:
dependencies: dependencies:
pako "~1.0.5" pako "~1.0.5"
browserslist@4.16.6, browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.14.7, browserslist@^4.15.0, browserslist@^4.16.6, browserslist@^4.16.7, browserslist@^4.3.6, browserslist@^4.6.4, browserslist@^4.8.3: browserslist@4.16.6, browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.15.0, browserslist@^4.16.6, browserslist@^4.16.7, browserslist@^4.3.6, browserslist@^4.6.4, browserslist@^4.8.3:
version "4.16.6" version "4.16.6"
resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.16.6.tgz#d7901277a5a88e554ed305b183ec9b0c08f66fa2" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.16.6.tgz#d7901277a5a88e554ed305b183ec9b0c08f66fa2"
integrity sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ== integrity sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==
@ -8658,10 +8665,10 @@ enhanced-resolve@^4.3.0:
memory-fs "^0.5.0" memory-fs "^0.5.0"
tapable "^1.0.0" tapable "^1.0.0"
enhanced-resolve@^5.7.0: enhanced-resolve@^5.8.0:
version "5.8.0" version "5.8.2"
resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.8.0.tgz#d9deae58f9d3773b6a111a5a46831da5be5c9ac0" resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.8.2.tgz#15ddc779345cbb73e97c611cd00c01c1e7bf4d8b"
integrity sha512-Sl3KRpJA8OpprrtaIswVki3cWPiPKxXuFxJXBp+zNb6s6VwNWwFRUdtmzd2ReUut8n+sCPx7QCtQ7w5wfJhSgQ== integrity sha512-F27oB3WuHDzvR2DOGNTaYy0D5o0cnrv8TeI482VM4kYgQd/FT9lUQwuNsJ0oOHtBUq7eiW5ytqzp7nBFknL+GA==
dependencies: dependencies:
graceful-fs "^4.2.4" graceful-fs "^4.2.4"
tapable "^2.2.0" tapable "^2.2.0"
@ -8768,10 +8775,10 @@ es-abstract@^1.18.0-next.2:
string.prototype.trimstart "^1.0.4" string.prototype.trimstart "^1.0.4"
unbox-primitive "^1.0.0" unbox-primitive "^1.0.0"
es-module-lexer@^0.4.0: es-module-lexer@^0.7.1:
version "0.4.1" version "0.7.1"
resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-0.4.1.tgz#dda8c6a14d8f340a24e34331e0fab0cb50438e0e" resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-0.7.1.tgz#c2c8e0f46f2df06274cdaf0dd3f3b33e0a0b267d"
integrity sha512-ooYciCUtfw6/d2w56UVeqHPcoCFAiJdz5XOkYpv/Txl1HMUozpXjz/2RIQgqwKdXNDPSF1W7mJCFse3G+HDyAA== integrity sha512-MgtWFl5No+4S3TmhDmCz2ObFGm6lEpTnzbQi+Dd+pw4mlTIZTmM2iAs5gRlmx5zS9luzobCSBSI90JM/1/JgOw==
es-to-primitive@^1.2.1: es-to-primitive@^1.2.1:
version "1.2.1" version "1.2.1"
@ -8955,6 +8962,14 @@ eslint-plugin-react@7.23.2, eslint-plugin-react@^7.23.1:
resolve "^2.0.0-next.3" resolve "^2.0.0-next.3"
string.prototype.matchall "^4.0.4" string.prototype.matchall "^4.0.4"
eslint-scope@5.1.1, eslint-scope@^5.1.0, eslint-scope@^5.1.1:
version "5.1.1"
resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c"
integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==
dependencies:
esrecurse "^4.3.0"
estraverse "^4.1.1"
eslint-scope@^4.0.3: eslint-scope@^4.0.3:
version "4.0.3" version "4.0.3"
resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-4.0.3.tgz#ca03833310f6889a3264781aa82e63eb9cfe7848"
@ -8970,14 +8985,6 @@ eslint-scope@^5.0.0:
esrecurse "^4.1.0" esrecurse "^4.1.0"
estraverse "^4.1.1" estraverse "^4.1.1"
eslint-scope@^5.1.0, eslint-scope@^5.1.1:
version "5.1.1"
resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c"
integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==
dependencies:
esrecurse "^4.3.0"
estraverse "^4.1.1"
eslint-utils@^2.0.0: eslint-utils@^2.0.0:
version "2.0.0" version "2.0.0"
resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.0.0.tgz#7be1cc70f27a72a76cd14aa698bcabed6890e1cd" resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.0.0.tgz#7be1cc70f27a72a76cd14aa698bcabed6890e1cd"
@ -12161,7 +12168,7 @@ jest-worker@27.0.0-next.5:
merge-stream "^2.0.0" merge-stream "^2.0.0"
supports-color "^8.0.0" supports-color "^8.0.0"
jest-worker@^26.2.1, jest-worker@^26.6.2: jest-worker@^26.2.1:
version "26.6.2" version "26.6.2"
resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed" resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed"
integrity sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ== integrity sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ==
@ -17511,7 +17518,8 @@ scheduler@^0.20.2:
loose-envify "^1.1.0" loose-envify "^1.1.0"
object-assign "^4.1.1" object-assign "^4.1.1"
schema-utils@2.7.1, schema-utils@^2.6.5: "schema-utils2@npm:schema-utils@2.7.1", schema-utils@^2.6.5:
name schema-utils2
version "2.7.1" version "2.7.1"
resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.1.tgz#1ca4f32d1b24c590c203b8e7a50bf0ea4cd394d7" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.1.tgz#1ca4f32d1b24c590c203b8e7a50bf0ea4cd394d7"
integrity sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg== integrity sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==
@ -17520,6 +17528,15 @@ schema-utils@2.7.1, schema-utils@^2.6.5:
ajv "^6.12.4" ajv "^6.12.4"
ajv-keywords "^3.5.2" ajv-keywords "^3.5.2"
"schema-utils3@npm:schema-utils@3.0.0", schema-utils@^3.0.0:
version "3.0.0"
resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.0.0.tgz#67502f6aa2b66a2d4032b4279a2944978a0913ef"
integrity sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==
dependencies:
"@types/json-schema" "^7.0.6"
ajv "^6.12.5"
ajv-keywords "^3.5.2"
schema-utils@^1.0.0: schema-utils@^1.0.0:
version "1.0.0" version "1.0.0"
resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770"
@ -17528,12 +17545,12 @@ schema-utils@^1.0.0:
ajv-errors "^1.0.0" ajv-errors "^1.0.0"
ajv-keywords "^3.1.0" ajv-keywords "^3.1.0"
schema-utils@^3.0.0: schema-utils@^3.1.0, schema-utils@^3.1.1:
version "3.0.0" version "3.1.1"
resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.0.0.tgz#67502f6aa2b66a2d4032b4279a2944978a0913ef" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.1.1.tgz#bc74c4b6b6995c1d88f76a8b77bea7219e0c8281"
integrity sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA== integrity sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw==
dependencies: dependencies:
"@types/json-schema" "^7.0.6" "@types/json-schema" "^7.0.8"
ajv "^6.12.5" ajv "^6.12.5"
ajv-keywords "^3.5.2" ajv-keywords "^3.5.2"
@ -17645,10 +17662,10 @@ serialize-javascript@^4.0.0:
dependencies: dependencies:
randombytes "^2.1.0" randombytes "^2.1.0"
serialize-javascript@^5.0.1: serialize-javascript@^6.0.0:
version "5.0.1" version "6.0.0"
resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-5.0.1.tgz#7886ec848049a462467a97d3d918ebb2aaf934f4" resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8"
integrity sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA== integrity sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==
dependencies: dependencies:
randombytes "^2.1.0" randombytes "^2.1.0"
@ -17884,7 +17901,7 @@ sort-keys@^4.0.0:
dependencies: dependencies:
is-plain-obj "^2.0.0" is-plain-obj "^2.0.0"
source-list-map@^2.0.0, source-list-map@^2.0.1: source-list-map@^2.0.0:
version "2.0.1" version "2.0.1"
resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34"
@ -17914,6 +17931,14 @@ source-map-support@^0.5.16, source-map-support@^0.5.6, source-map-support@~0.5.1
buffer-from "^1.0.0" buffer-from "^1.0.0"
source-map "^0.6.0" source-map "^0.6.0"
source-map-support@~0.5.20:
version "0.5.20"
resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.20.tgz#12166089f8f5e5e8c56926b377633392dd2cb6c9"
integrity sha512-n1lZZ8Ve4ksRqizaBQgxXDgKwttHDhyfQjA6YZZn8+AroHbsIz+JjwxQDxbp+7y5OYCI8t1Yk7etjD9CRd2hIw==
dependencies:
buffer-from "^1.0.0"
source-map "^0.6.0"
source-map-url@^0.4.0: source-map-url@^0.4.0:
version "0.4.0" version "0.4.0"
resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3" resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.0.tgz#3e935d7ddd73631b97659956d55128e87b5084a3"
@ -18700,17 +18725,17 @@ terser-webpack-plugin@^1.4.3:
webpack-sources "^1.4.0" webpack-sources "^1.4.0"
worker-farm "^1.7.0" worker-farm "^1.7.0"
terser-webpack-plugin@^5.1.1: terser-webpack-plugin@^5.1.3:
version "5.1.1" version "5.2.4"
resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.1.1.tgz#7effadee06f7ecfa093dbbd3e9ab23f5f3ed8673" resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.2.4.tgz#ad1be7639b1cbe3ea49fab995cbe7224b31747a1"
integrity sha512-5XNNXZiR8YO6X6KhSGXfY0QrGrCRlSwAEjIIrlRQR4W8nP69TaJUlh3bkuac6zzgspiGPfKEHcY295MMVExl5Q== integrity sha512-E2CkNMN+1cho04YpdANyRrn8CyN4yMy+WdFKZIySFZrGXZxJwJP6PMNGGc/Mcr6qygQHUUqRxnAPmi0M9f00XA==
dependencies: dependencies:
jest-worker "^26.6.2" jest-worker "^27.0.6"
p-limit "^3.1.0" p-limit "^3.1.0"
schema-utils "^3.0.0" schema-utils "^3.1.1"
serialize-javascript "^5.0.1" serialize-javascript "^6.0.0"
source-map "^0.6.1" source-map "^0.6.1"
terser "^5.5.1" terser "^5.7.2"
terser@5.5.1, terser@^5.0.0: terser@5.5.1, terser@^5.0.0:
version "5.5.1" version "5.5.1"
@ -18739,14 +18764,14 @@ terser@^4.1.2:
source-map "~0.6.1" source-map "~0.6.1"
source-map-support "~0.5.12" source-map-support "~0.5.12"
terser@^5.5.1: terser@^5.7.2:
version "5.6.1" version "5.8.0"
resolved "https://registry.yarnpkg.com/terser/-/terser-5.6.1.tgz#a48eeac5300c0a09b36854bf90d9c26fb201973c" resolved "https://registry.yarnpkg.com/terser/-/terser-5.8.0.tgz#c6d352f91aed85cc6171ccb5e84655b77521d947"
integrity sha512-yv9YLFQQ+3ZqgWCUk+pvNJwgUTdlIxUk1WTN+RnaFJe2L7ipG2csPT0ra2XRm7Cs8cxN7QXmK1rFzEwYEQkzXw== integrity sha512-f0JH+6yMpneYcRJN314lZrSwu9eKkUFEHLN/kNy8ceh8gaRiLgFPJqrB9HsXjhEGdv4e/ekjTOFxIlL6xlma8A==
dependencies: dependencies:
commander "^2.20.0" commander "^2.20.0"
source-map "~0.7.2" source-map "~0.7.2"
source-map-support "~0.5.19" source-map-support "~0.5.20"
test-exclude@^6.0.0: test-exclude@^6.0.0:
version "6.0.0" version "6.0.0"
@ -19830,7 +19855,7 @@ watchpack-chokidar2@^2.0.0:
dependencies: dependencies:
chokidar "^2.1.8" chokidar "^2.1.8"
watchpack@2.1.1, watchpack@^2.0.0: watchpack@2.1.1:
version "2.1.1" version "2.1.1"
resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.1.1.tgz#e99630550fca07df9f90a06056987baa40a689c7" resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.1.1.tgz#e99630550fca07df9f90a06056987baa40a689c7"
integrity sha512-Oo7LXCmc1eE1AjyuSBmtC3+Wy4HcV8PxWh2kP6fOl8yTlNS7r0K9l1ao2lrrUza7V39Y3D/BbJgY8VeSlc5JKw== integrity sha512-Oo7LXCmc1eE1AjyuSBmtC3+Wy4HcV8PxWh2kP6fOl8yTlNS7r0K9l1ao2lrrUza7V39Y3D/BbJgY8VeSlc5JKw==
@ -19849,6 +19874,14 @@ watchpack@^1.7.4:
chokidar "^3.4.1" chokidar "^3.4.1"
watchpack-chokidar2 "^2.0.0" watchpack-chokidar2 "^2.0.0"
watchpack@^2.2.0:
version "2.2.0"
resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.2.0.tgz#47d78f5415fe550ecd740f99fe2882323a58b1ce"
integrity sha512-up4YAn/XHgZHIxFBVCdlMiWDj6WaLKpwVeGQk2I5thdYxF/KmF0aaz6TfJZ/hfl1h/XlcDr7k1KH7ThDagpFaA==
dependencies:
glob-to-regexp "^0.4.1"
graceful-fs "^4.1.2"
wcwidth@^1.0.0, wcwidth@^1.0.1: wcwidth@^1.0.0, wcwidth@^1.0.1:
version "1.0.1" version "1.0.1"
resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8"
@ -19897,22 +19930,25 @@ webpack-bundle-analyzer@4.3.0:
sirv "^1.0.7" sirv "^1.0.7"
ws "^7.3.1" ws "^7.3.1"
webpack-sources@1.4.3, webpack-sources@^1.1.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1: "webpack-sources1@npm:webpack-sources@1.4.3", webpack-sources@^1.1.0, webpack-sources@^1.4.0, webpack-sources@^1.4.1:
version "1.4.3" version "1.4.3"
resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933"
integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==
dependencies: dependencies:
source-list-map "^2.0.0" source-list-map "^2.0.0"
source-map "~0.6.1" source-map "~0.6.1"
webpack-sources@^2.1.1: "webpack-sources3@npm:webpack-sources@3.2.0":
version "2.2.0" version "3.2.0"
resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-2.2.0.tgz#058926f39e3d443193b6c31547229806ffd02bac" resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.0.tgz#b16973bcf844ebcdb3afde32eda1c04d0b90f89d"
integrity sha512-bQsA24JLwcnWGArOKUxYKhX3Mz/nK1Xf6hxullKERyktjNMC4x8koOeaDNTA2fEJ09BdWLbM/iTW0ithREUP0w== integrity sha512-fahN08Et7P9trej8xz/Z7eRu8ltyiygEo/hnRi9KqBUs80KeDcnf96ZJo++ewWd84fEf3xSX9bp4ZS9hbw0OBw==
dependencies:
source-list-map "^2.0.1"
source-map "^0.6.1"
webpack@4.44.1: webpack-sources@^3.2.0:
version "3.2.1"
resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.1.tgz#251a7d9720d75ada1469ca07dbb62f3641a05b6d"
integrity sha512-t6BMVLQ0AkjBOoRTZgqrWm7xbXMBzD+XDq2EZ96+vMfn3qKgsvdXZhbPZ4ElUOpdv4u+iiGe+w3+J75iy/bYGA==
"webpack4@npm:webpack@4.44.1":
version "4.44.1" version "4.44.1"
resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.44.1.tgz#17e69fff9f321b8f117d1fda714edfc0b939cc21" resolved "https://registry.yarnpkg.com/webpack/-/webpack-4.44.1.tgz#17e69fff9f321b8f117d1fda714edfc0b939cc21"
integrity sha512-4UOGAohv/VGUNQJstzEywwNxqX417FnjZgZJpJQegddzPmTvph37eBIRbRTfdySXzVtJXLJfbMN3mMYhM6GdmQ== integrity sha512-4UOGAohv/VGUNQJstzEywwNxqX417FnjZgZJpJQegddzPmTvph37eBIRbRTfdySXzVtJXLJfbMN3mMYhM6GdmQ==
@ -19941,22 +19977,23 @@ webpack@4.44.1:
watchpack "^1.7.4" watchpack "^1.7.4"
webpack-sources "^1.4.1" webpack-sources "^1.4.1"
webpack@^5: "webpack5@npm:webpack@5.53.0":
version "5.30.0" version "5.53.0"
resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.30.0.tgz#07d87c182a060e0c2491062f3dc0edc85a29d884" resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.53.0.tgz#f463cd9c6fc1356ae4b9b7ac911fd1f5b2df86af"
integrity sha512-Zr9NIri5yzpfmaMea2lSMV1UygbW0zQsSlGLMgKUm63ACXg6alhd1u4v5UBSBjzYKXJN6BNMGVM7w165e7NxYA== integrity sha512-RZ1Z3z3ni44snoWjfWeHFyzvd9HMVYDYC5VXmlYUT6NWgEOWdCNpad5Fve2CzzHoRED7WtsKe+FCyP5Vk4pWiQ==
dependencies: dependencies:
"@types/eslint-scope" "^3.7.0" "@types/eslint-scope" "^3.7.0"
"@types/estree" "^0.0.46" "@types/estree" "^0.0.50"
"@webassemblyjs/ast" "1.11.0" "@webassemblyjs/ast" "1.11.1"
"@webassemblyjs/wasm-edit" "1.11.0" "@webassemblyjs/wasm-edit" "1.11.1"
"@webassemblyjs/wasm-parser" "1.11.0" "@webassemblyjs/wasm-parser" "1.11.1"
acorn "^8.0.4" acorn "^8.4.1"
acorn-import-assertions "^1.7.6"
browserslist "^4.14.5" browserslist "^4.14.5"
chrome-trace-event "^1.0.2" chrome-trace-event "^1.0.2"
enhanced-resolve "^5.7.0" enhanced-resolve "^5.8.0"
es-module-lexer "^0.4.0" es-module-lexer "^0.7.1"
eslint-scope "^5.1.1" eslint-scope "5.1.1"
events "^3.2.0" events "^3.2.0"
glob-to-regexp "^0.4.1" glob-to-regexp "^0.4.1"
graceful-fs "^4.2.4" graceful-fs "^4.2.4"
@ -19964,11 +20001,11 @@ webpack@^5:
loader-runner "^4.2.0" loader-runner "^4.2.0"
mime-types "^2.1.27" mime-types "^2.1.27"
neo-async "^2.6.2" neo-async "^2.6.2"
schema-utils "^3.0.0" schema-utils "^3.1.0"
tapable "^2.1.1" tapable "^2.1.1"
terser-webpack-plugin "^5.1.1" terser-webpack-plugin "^5.1.3"
watchpack "^2.0.0" watchpack "^2.2.0"
webpack-sources "^2.1.1" webpack-sources "^3.2.0"
websocket-driver@>=0.5.1: websocket-driver@>=0.5.1:
version "0.7.3" version "0.7.3"