diff --git a/.github/workflows/release-please.yml b/.github/workflows/release-please.yml index d78d3bec87..e98e7815a8 100644 --- a/.github/workflows/release-please.yml +++ b/.github/workflows/release-please.yml @@ -16,25 +16,27 @@ jobs: id: release with: token: ${{ steps.get-token.outputs.token }} - release-type: node - package-name: '@netlify/plugin-nextjs' + command: manifest - uses: actions/checkout@v2 - if: ${{ steps.release.outputs.release_created }} + if: ${{ steps.release.outputs.releases_created }} - uses: actions/setup-node@v2 with: node-version: '*' cache: 'npm' check-latest: true registry-url: 'https://registry.npmjs.org' - if: ${{ steps.release.outputs.release_created }} + if: ${{ steps.release.outputs.releases_created }} - name: Install dependencies run: npm ci - if: ${{ steps.release.outputs.release_created }} + working-directory: plugin + if: ${{ steps.release.outputs.releases_created }} - run: npm publish - if: ${{ steps.release.outputs.release_created }} + working-directory: plugin + if: ${{ steps.release.outputs.releases_created }} env: NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}} - uses: netlify/submit-build-plugin-action@v1 - if: ${{ steps.release.outputs.release_created }} + if: ${{ steps.release.outputs.releases_created }} with: github-token: ${{ steps.get-token.outputs.token }} + package-json-dir: plugin diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 3daf6485dd..bc36c6921f 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -25,13 +25,20 @@ jobs: steps: - uses: actions/checkout@v2 - - name: Use Node.js ${{ matrix.node-version }} + - name: Installing with latest Node.js uses: actions/setup-node@v2 + if: "${{ matrix.node-version != '*' }}" with: - node-version: ${{ matrix.node-version }} + node-version: '*' check-latest: true - name: NPM Install run: npm ci + - name: Switching to Node.js ${{ matrix.node-version }} to run tests + uses: actions/setup-node@v2 + if: "${{ matrix.node-version != '*' }}" + with: + node-version: ${{ matrix.node-version }} + check-latest: true - name: Linting run: npm run format:ci if: "${{ matrix.node-version == '*' }}" @@ -55,14 +62,21 @@ jobs: if: github.ref_name == 'main' steps: - uses: actions/checkout@v2 - - name: Use Node.js ${{ matrix.node-version }} + - name: Installing with latest Node.js uses: actions/setup-node@v2 + if: "${{ matrix.node-version != '*' }}" with: - node-version: ${{ matrix.node-version }} + node-version: '*' check-latest: true - name: NPM Install run: npm ci - name: Install Next.js Canary run: npm install -D next@canary --legacy-peer-deps + - name: Switching to Node.js ${{ matrix.node-version }} to run tests + uses: actions/setup-node@v2 + if: "${{ matrix.node-version != '*' }}" + with: + node-version: ${{ matrix.node-version }} + check-latest: true - name: Run tests against next@canary run: npm test diff --git a/.nvmrc b/.nvmrc new file mode 100644 index 0000000000..b745bcd261 --- /dev/null +++ b/.nvmrc @@ -0,0 +1 @@ +17.9.0 \ No newline at end of file diff --git a/.prettierignore b/.prettierignore index b9686d926e..7d2a1afdcd 100644 --- a/.prettierignore +++ b/.prettierignore @@ -3,6 +3,8 @@ logs *.log npm-debug.log* +package.json + # Dependency directories node_modules diff --git a/.release-please-manifest.json b/.release-please-manifest.json new file mode 100644 index 0000000000..2e7b1a4d20 --- /dev/null +++ b/.release-please-manifest.json @@ -0,0 +1,3 @@ +{ + "plugin": "4.3.2" +} diff --git a/demos/base-path/netlify.toml b/demos/base-path/netlify.toml index ce3073f46f..20fa9eb296 100644 --- a/demos/base-path/netlify.toml +++ b/demos/base-path/netlify.toml @@ -12,10 +12,9 @@ CYPRESS_CACHE_FOLDER = "../node_modules/.CypressBinary" framework = "#static" [[plugins]] -package = "./local-plugin" +package = "../plugin-wrapper/" [[plugins]] package = "@netlify/plugin-local-install-core" - # [[context.deploy-preview.plugins]] -# package = "netlify-plugin-cypress" \ No newline at end of file +# package = "netlify-plugin-cypress" diff --git a/demos/base-path/package.json b/demos/base-path/package.json new file mode 100644 index 0000000000..24f118488d --- /dev/null +++ b/demos/base-path/package.json @@ -0,0 +1,22 @@ +{ + "name": "base-path-demo", + "version": "1.0.0", + "description": "", + "devDependencies": { + "@netlify/plugin-nextjs": "*" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/netlify/netlify-plugin-nextjs.git" + }, + "author": "", + "private": true, + "license": "MIT", + "bugs": { + "url": "https://github.com/netlify/netlify-plugin-nextjs/issues" + }, + "homepage": "https://github.com/netlify/netlify-plugin-nextjs#readme" +} diff --git a/demos/default/local-plugin/index.js b/demos/default/local-plugin/index.js deleted file mode 100644 index 9e852e382e..0000000000 --- a/demos/default/local-plugin/index.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('../../../lib') diff --git a/demos/default/local-plugin/manifest.yml b/demos/default/local-plugin/manifest.yml deleted file mode 100644 index 7091f91411..0000000000 --- a/demos/default/local-plugin/manifest.yml +++ /dev/null @@ -1 +0,0 @@ -name: '@netlify/plugin-nextjs-local' diff --git a/demos/default/local-plugin/package.json b/demos/default/local-plugin/package.json deleted file mode 100644 index 00bc8b8095..0000000000 --- a/demos/default/local-plugin/package.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "local-plugin", - "version": "1.0.0", - "description": "", - "main": "index.js", - "scripts": { - "preinstall": "cd ../../.. && npm ci" - }, - "author": "", - "license": "ISC" -} diff --git a/demos/default/netlify.toml b/demos/default/netlify.toml index 5d29f00779..28e3269e91 100644 --- a/demos/default/netlify.toml +++ b/demos/default/netlify.toml @@ -1,7 +1,7 @@ [build] command = "next build" publish = ".next" -ignore = "git diff --quiet $CACHED_COMMIT_REF $COMMIT_REF ../../" +ignore = "git diff --quiet $CACHED_COMMIT_REF $COMMIT_REF . ../../plugin" [build.environment] # cache Cypress binary in local "node_modules" folder @@ -9,12 +9,14 @@ ignore = "git diff --quiet $CACHED_COMMIT_REF $COMMIT_REF ../../" CYPRESS_CACHE_FOLDER = "../node_modules/.CypressBinary" # set TERM variable for terminal output TERM = "xterm" +NODE_VERSION = "17" [dev] framework = "#static" [[plugins]] -package = "./local-plugin" +package = "../plugin-wrapper/" +# This is a fake plugin, that makes it run npm install [[plugins]] -package = "@netlify/plugin-local-install-core" \ No newline at end of file +package = "@netlify/plugin-local-install-core" diff --git a/demos/default/package.json b/demos/default/package.json new file mode 100644 index 0000000000..3369ea0790 --- /dev/null +++ b/demos/default/package.json @@ -0,0 +1,26 @@ +{ + "name": "default-demo", + "version": "1.0.0", + "private": true, + "description": "", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/netlify/netlify-plugin-nextjs.git" + }, + "author": "", + "license": "MIT", + "bugs": { + "url": "https://github.com/netlify/netlify-plugin-nextjs/issues" + }, + "homepage": "https://github.com/netlify/netlify-plugin-nextjs#readme", + "dependencies": { + "@reach/dialog": "^0.16.2", + "@reach/visually-hidden": "^0.16.0" + }, + "devDependencies": { + "@netlify/plugin-nextjs": "*" + } +} diff --git a/demos/default/pages/env.tsx b/demos/default/pages/env.tsx index d00a497c8c..95bba35e9e 100644 --- a/demos/default/pages/env.tsx +++ b/demos/default/pages/env.tsx @@ -1,19 +1,39 @@ +import { useEffect, useState } from 'react' + /** * https://nextjs.org/docs/basic-features/environment-variables */ function EnvTest() { + const [showEnv, setShowEnv] = useState(false) + useEffect(() => setShowEnv(true), []) return (

Environment Variables

Read Docs -

By default environment variables are only available in the Node.js environment, meaning they won't be exposed to the browser.

- NEXT_PUBLIC_ environment variables are available in the browser, and can be used to configure the application. + By default environment variables are only available in the Node.js environment, meaning they won't be + exposed to the browser. +

+

+ NEXT_PUBLIC_ environment variables are available in the browser, and can be used to configure the + application.

-

✅ Public Environment token found: {process.env.NEXT_PUBLIC_GREETINGS || 'NOT FOUND (something went wrong)'}

-

❌ Private Environment token should not be found: {process.env.TEST_ENV_VAR || 'Everything worked'}

+ {showEnv ? ( + <> +

+ ✅ Public Environment token found:{' '} + {process.env.NEXT_PUBLIC_GREETINGS || 'NOT FOUND (something went wrong)'} +

+

+ ❌ Private Environment token should not be found:{' '} + {process.env.TEST_ENV_VAR || 'Everything worked'} +

+ + ) : ( + 'We only want to test client-side env vars' + )}
) } -export default EnvTest \ No newline at end of file +export default EnvTest diff --git a/demos/default/tsconfig.json b/demos/default/tsconfig.json index 5bee8c4d57..b57e49e103 100644 --- a/demos/default/tsconfig.json +++ b/demos/default/tsconfig.json @@ -1,23 +1,17 @@ { + "extends": "../../tsconfig.json", "compilerOptions": { - "target": "es5", "lib": [ - "dom", - "dom.iterable", - "esnext" + "es2019", + "dom" ], - "allowJs": true, - "skipLibCheck": true, "strict": false, - "forceConsistentCasingInFileNames": true, "noEmit": true, - "esModuleInterop": true, - "module": "esnext", + "incremental": true, "moduleResolution": "node", "resolveJsonModule": true, "isolatedModules": true, - "jsx": "preserve", - "incremental": true + "jsx": "preserve" }, "include": [ "next-env.d.ts", @@ -27,4 +21,4 @@ "exclude": [ "node_modules" ] -} +} \ No newline at end of file diff --git a/demos/next-export/local-plugin/index.js b/demos/next-export/local-plugin/index.js deleted file mode 100644 index 9e852e382e..0000000000 --- a/demos/next-export/local-plugin/index.js +++ /dev/null @@ -1 +0,0 @@ -module.exports = require('../../../lib') diff --git a/demos/next-export/local-plugin/manifest.yml b/demos/next-export/local-plugin/manifest.yml deleted file mode 100644 index 7091f91411..0000000000 --- a/demos/next-export/local-plugin/manifest.yml +++ /dev/null @@ -1 +0,0 @@ -name: '@netlify/plugin-nextjs-local' diff --git a/demos/next-export/local-plugin/package-lock.json b/demos/next-export/local-plugin/package-lock.json deleted file mode 100644 index 11a2e6611e..0000000000 --- a/demos/next-export/local-plugin/package-lock.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "name": "local-plugin", - "version": "1.0.0", - "lockfileVersion": 1 -} diff --git a/demos/next-export/local-plugin/package.json b/demos/next-export/local-plugin/package.json deleted file mode 100644 index d692119a5b..0000000000 --- a/demos/next-export/local-plugin/package.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "local-plugin", - "version": "1.0.0", - "description": "", - "main": "index.js", - "scripts": { - "preinstall": "cd ../../.. && npm i" - }, - "author": "", - "license": "ISC" -} diff --git a/demos/next-export/netlify.toml b/demos/next-export/netlify.toml index 4983d3f911..bc4ebaa0f9 100644 --- a/demos/next-export/netlify.toml +++ b/demos/next-export/netlify.toml @@ -5,12 +5,13 @@ ignore = "git diff --quiet $CACHED_COMMIT_REF $COMMIT_REF ../../" [build.environment] NETLIFY_NEXT_PLUGIN_SKIP = "true" +NODE_VERSION = "17" [dev] framework = "#static" [[plugins]] -package = "./local-plugin" +package = "../plugin-wrapper/" [[plugins]] package = "@netlify/plugin-local-install-core" diff --git a/demos/next-export/package.json b/demos/next-export/package.json new file mode 100644 index 0000000000..91d1878df3 --- /dev/null +++ b/demos/next-export/package.json @@ -0,0 +1,22 @@ +{ + "name": "next-export-demo", + "version": "1.0.0", + "description": "", + "devDependencies": { + "@netlify/plugin-nextjs": "*" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/netlify/netlify-plugin-nextjs.git" + }, + "author": "", + "private": true, + "license": "MIT", + "bugs": { + "url": "https://github.com/netlify/netlify-plugin-nextjs/issues" + }, + "homepage": "https://github.com/netlify/netlify-plugin-nextjs#readme" +} diff --git a/demos/nx-next-monorepo-demo/local-plugin/index.js b/demos/nx-next-monorepo-demo/local-plugin/index.js index 9e852e382e..865068ad29 100644 --- a/demos/nx-next-monorepo-demo/local-plugin/index.js +++ b/demos/nx-next-monorepo-demo/local-plugin/index.js @@ -1 +1 @@ -module.exports = require('../../../lib') +module.exports = require('../../../plugin/lib') diff --git a/demos/plugin-wrapper/index.js b/demos/plugin-wrapper/index.js new file mode 100644 index 0000000000..40203ac92b --- /dev/null +++ b/demos/plugin-wrapper/index.js @@ -0,0 +1,2 @@ +// eslint-disable-next-line node/no-unpublished-require +module.exports = require('../../plugin/lib') diff --git a/demos/plugin-wrapper/manifest.yml b/demos/plugin-wrapper/manifest.yml new file mode 100644 index 0000000000..06cc06cfa9 --- /dev/null +++ b/demos/plugin-wrapper/manifest.yml @@ -0,0 +1 @@ +name: 'plugin-wrapper' diff --git a/demos/default/local-plugin/package-lock.json b/demos/plugin-wrapper/package-lock.json similarity index 100% rename from demos/default/local-plugin/package-lock.json rename to demos/plugin-wrapper/package-lock.json diff --git a/demos/plugin-wrapper/package.json b/demos/plugin-wrapper/package.json new file mode 100644 index 0000000000..72351d4a83 --- /dev/null +++ b/demos/plugin-wrapper/package.json @@ -0,0 +1,15 @@ +{ + "name": "local-plugin", + "version": "1.0.0", + "main": "index.js", + "author": "", + "license": "MIT", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "devDependencies": { + "@netlify/plugin-nextjs": "*", + "husky": "^7.0.4", + "npm-run-all": "^4.1.5" + } +} diff --git a/demos/static-root/netlify.toml b/demos/static-root/netlify.toml index 288149fe89..47f2a4b667 100644 --- a/demos/static-root/netlify.toml +++ b/demos/static-root/netlify.toml @@ -7,15 +7,13 @@ ignore = "git diff --quiet $CACHED_COMMIT_REF $COMMIT_REF ../../" # cache Cypress binary in local "node_modules" folder # so Netlify caches it CYPRESS_CACHE_FOLDER = "../node_modules/.CypressBinary" +NODE_VERSION = "17" [dev] framework = "#static" [[plugins]] -package = "./local-plugin" +package = "../plugin-wrapper/" [[plugins]] package = "@netlify/plugin-local-install-core" - -[[context.deploy-preview.plugins]] -package = "netlify-plugin-cypress" \ No newline at end of file diff --git a/demos/static-root/package.json b/demos/static-root/package.json new file mode 100644 index 0000000000..0fdcd00353 --- /dev/null +++ b/demos/static-root/package.json @@ -0,0 +1,22 @@ +{ + "name": "static-root-demo", + "version": "1.0.0", + "description": "", + "devDependencies": { + "@netlify/plugin-nextjs": "*" + }, + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/netlify/netlify-plugin-nextjs.git" + }, + "author": "", + "license": "MIT", + "private": true, + "bugs": { + "url": "https://github.com/netlify/netlify-plugin-nextjs/issues" + }, + "homepage": "https://github.com/netlify/netlify-plugin-nextjs#readme" +} diff --git a/package-lock.json b/package-lock.json index 19304530d1..e693172ca6 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,40 +1,28 @@ { - "name": "@netlify/plugin-nextjs", + "name": "netlify-plugin-nextjs", "version": "4.3.2", "lockfileVersion": 2, "requires": true, "packages": { "": { - "name": "@netlify/plugin-nextjs", - "version": "4.3.2", + "name": "netlify-plugin-nextjs", + "hasInstallScript": true, "license": "MIT", - "dependencies": { - "@netlify/functions": "^1.0.0", - "@netlify/ipx": "^1.0.1", - "@vercel/node-bridge": "^2.1.0", - "chalk": "^4.1.2", - "fs-extra": "^10.0.0", - "globby": "^11.0.4", - "moize": "^6.1.0", - "next": "^12.1.4", - "node-fetch": "^2.6.6", - "node-stream-zip": "^1.15.0", - "outdent": "^0.8.0", - "p-limit": "^3.1.0", - "pathe": "^0.2.0", - "pretty-bytes": "^5.6.0", - "semver": "^7.3.5", - "slash": "^3.0.0", - "tiny-glob": "^0.2.9" - }, + "workspaces": [ + "demos/default", + "plugin", + "demos/static-root", + "demos/next-export", + "demos/base-path", + "demos/plugin-wrapper" + ], "devDependencies": { "@babel/core": "^7.15.8", "@babel/preset-env": "^7.15.8", "@babel/preset-typescript": "^7.16.0", + "@delucis/if-env": "^1.1.2", "@netlify/build": "^26.5.3", "@netlify/eslint-config-node": "^5.1.8", - "@reach/dialog": "^0.16.2", - "@reach/visually-hidden": "^0.16.0", "@testing-library/cypress": "^8.0.1", "@types/fs-extra": "^9.0.13", "@types/jest": "^27.0.2", @@ -50,15 +38,61 @@ "netlify-plugin-cypress": "^2.2.0", "npm-run-all": "^4.1.5", "prettier": "^2.1.2", - "react": "^17.0.1", - "react-dom": "^17.0.1", + "react": "^18.0.0", + "react-dom": "^18.0.0", "rimraf": "^3.0.2", "sass": "^1.49.0", "tmp-promise": "^3.0.2", "typescript": "^4.3.4" }, "engines": { - "node": ">=12.0.0" + "node": ">=16.0.0" + } + }, + "demos/base-path": { + "name": "base-path-demo", + "version": "1.0.0", + "license": "MIT", + "devDependencies": { + "@netlify/plugin-nextjs": "*" + } + }, + "demos/default": { + "name": "default-demo", + "version": "1.0.0", + "license": "MIT", + "dependencies": { + "@reach/dialog": "^0.16.2", + "@reach/visually-hidden": "^0.16.0" + }, + "devDependencies": { + "@netlify/plugin-nextjs": "*" + } + }, + "demos/next-export": { + "name": "next-export-demo", + "version": "1.0.0", + "license": "MIT", + "devDependencies": { + "@netlify/plugin-nextjs": "*" + } + }, + "demos/plugin-wrapper": { + "name": "local-plugin", + "version": "1.0.0", + "license": "MIT", + "devDependencies": { + "@netlify/plugin-nextjs": "*", + "husky": "^7.0.4", + "npm-run-all": "^4.1.5" + } + }, + "demos/static-root": { + "name": "static-root-demo", + "version": "1.0.0", + "license": "MIT", + "devDependencies": { + "@netlify/plugin-nextjs": "*" } }, "node_modules/@ampproject/remapping": { @@ -1784,7 +1818,6 @@ "version": "7.17.0", "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.17.0.tgz", "integrity": "sha512-etcO/ohMNaNA2UBdaXBBSX/3aEzFMRrVfaPv8Ptc0k+cWpWW0QFiGZ2XnVqQZI1Cf734LbPGmqBKWESfW4x/dQ==", - "dev": true, "dependencies": { "regenerator-runtime": "^0.13.4" }, @@ -2223,6 +2256,19 @@ "ms": "^2.1.1" } }, + "node_modules/@delucis/if-env": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@delucis/if-env/-/if-env-1.1.2.tgz", + "integrity": "sha512-sZJF62edo927tjq0cANW9Quozwmact7o4fIbPdvmTLqDxQgXJE9xqlkspvgGAZINL3JkwUFTQiGKAan/e2sDnQ==", + "dev": true, + "dependencies": { + "matcher": "^1.1.1" + }, + "bin": { + "if-env": "bin/if-env.js", + "if-env-cs": "bin/if-env-cs.js" + } + }, "node_modules/@eslint/eslintrc": { "version": "0.4.3", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", @@ -4259,21 +4305,32 @@ } }, "node_modules/@netlify/ipx": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@netlify/ipx/-/ipx-1.0.1.tgz", - "integrity": "sha512-bABYrpien+MnIUBbkM/xuU4so3BOeOQZBnWqL215EZjJzbfch4jbErLFZWbeWyrJSPc8QklG/yHgLLrelfA42g==", + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/@netlify/ipx/-/ipx-0.0.10.tgz", + "integrity": "sha512-eVgP5Mk0Yu2AbJV6dTevqUa5aAHFw56K0N4dR8650Q1dUaypTki2Jw9jR6IusllgniWVMw3fMAICGdY4Ra4Rvg==", "dependencies": { - "@netlify/functions": "^1.0.0", + "@netlify/functions": "^0.7.2", "etag": "^1.8.1", "fs-extra": "^10.0.0", - "ipx": "^0.9.4", + "ipx": "^0.9.2", "mkdirp": "^1.0.4", "murmurhash": "^2.0.0", "node-fetch": "^2.0.0", - "ufo": "^0.7.11", + "ufo": "^0.7.10", "unstorage": "^0.2.8" } }, + "node_modules/@netlify/ipx/node_modules/@netlify/functions": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@netlify/functions/-/functions-0.7.2.tgz", + "integrity": "sha512-xf45ZqQukMxmlkqNMC5BXdFMaVZ8VqF42MV5zA5nKVOh2V0mhYlcbTYlVbS/K2/rtvQ3W8lxxixYl4NT7kq6Bg==", + "dependencies": { + "is-promise": "^4.0.0" + }, + "engines": { + "node": ">=8.3.0" + } + }, "node_modules/@netlify/open-api": { "version": "2.8.0", "resolved": "https://registry.npmjs.org/@netlify/open-api/-/open-api-2.8.0.tgz", @@ -4339,6 +4396,10 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/@netlify/plugin-nextjs": { + "resolved": "plugin", + "link": true + }, "node_modules/@netlify/plugins-list": { "version": "6.19.0", "resolved": "https://registry.npmjs.org/@netlify/plugins-list/-/plugins-list-6.19.0.tgz", @@ -4804,7 +4865,6 @@ "version": "0.16.2", "resolved": "https://registry.npmjs.org/@reach/dialog/-/dialog-0.16.2.tgz", "integrity": "sha512-qq8oX0cROgTb8LjOKWzzNm4SqaN9b89lJHr7UyVo2aQ6WbeNzZBxqXhGywFP7dkR+hNqOJnrA59PXFWhfttA9A==", - "dev": true, "dependencies": { "@reach/portal": "0.16.2", "@reach/utils": "0.16.0", @@ -4822,7 +4882,6 @@ "version": "0.16.2", "resolved": "https://registry.npmjs.org/@reach/portal/-/portal-0.16.2.tgz", "integrity": "sha512-9ur/yxNkuVYTIjAcfi46LdKUvH0uYZPfEp4usWcpt6PIp+WDF57F/5deMe/uGi/B/nfDweQu8VVwuMVrCb97JQ==", - "dev": true, "dependencies": { "@reach/utils": "0.16.0", "tiny-warning": "^1.0.3", @@ -4837,7 +4896,6 @@ "version": "0.16.0", "resolved": "https://registry.npmjs.org/@reach/utils/-/utils-0.16.0.tgz", "integrity": "sha512-PCggBet3qaQmwFNcmQ/GqHSefadAFyNCUekq9RrWoaU9hh/S4iaFgf2MBMdM47eQj5i/Bk0Mm07cP/XPFlkN+Q==", - "dev": true, "dependencies": { "tiny-warning": "^1.0.3", "tslib": "^2.3.0" @@ -4851,7 +4909,6 @@ "version": "0.16.0", "resolved": "https://registry.npmjs.org/@reach/visually-hidden/-/visually-hidden-0.16.0.tgz", "integrity": "sha512-IIayZ3jzJtI5KfcfRVtOMFkw2ef/1dMT8D9BUuFcU2ORZAWLNvnzj1oXNoIfABKl5wtsLjY6SGmkYQ+tMPN8TA==", - "dev": true, "dependencies": { "prop-types": "^15.7.2", "tslib": "^2.3.0" @@ -5363,9 +5420,9 @@ "dev": true }, "node_modules/@types/node": { - "version": "17.0.14", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.14.tgz", - "integrity": "sha512-SbjLmERksKOGzWzPNuW7fJM7fk3YXVTFiZWB/Hs99gwhk+/dnrQRPBQjPW9aO+fi1tAffi9PrwFvsmOKmDTyng==", + "version": "17.0.23", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.23.tgz", + "integrity": "sha512-UxDxWn7dl97rKVeVS61vErvw086aCYhDLyvRQZ5Rk65rZKepaFdm53GeqXaKBuOhED4e9uWq34IC3TdSdJJ2Gw==", "dev": true }, "node_modules/@types/normalize-package-data": { @@ -5390,13 +5447,13 @@ "version": "15.7.4", "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.4.tgz", "integrity": "sha512-rZ5drC/jWjrArrS8BR6SIr4cWpW09RNTYt9AMZo3Jwwif+iacXAqgVjm0B0Bv/S1jhDXKHqRVNCbACkJ89RAnQ==", - "dev": true + "devOptional": true }, "node_modules/@types/react": { "version": "17.0.43", "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.43.tgz", "integrity": "sha512-8Q+LNpdxf057brvPu1lMtC5Vn7J119xrP1aq4qiaefNioQUYANF/CYeK4NsKorSZyUGJ66g0IM+4bbjwx45o2A==", - "dev": true, + "devOptional": true, "dependencies": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -5425,7 +5482,7 @@ "version": "0.16.2", "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz", "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==", - "dev": true + "devOptional": true }, "node_modules/@types/sinonjs__fake-timers": { "version": "8.1.1", @@ -6622,6 +6679,10 @@ "node": ">=0.10.0" } }, + "node_modules/base-path-demo": { + "resolved": "demos/base-path", + "link": true + }, "node_modules/base/node_modules/define-property": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/define-property/-/define-property-1.0.0.tgz", @@ -7495,9 +7556,9 @@ } }, "node_modules/color": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/color/-/color-4.2.1.tgz", - "integrity": "sha512-MFJr0uY4RvTQUKvPq7dh9grVOTYSFeXja2mBXioCGjnjJoXrAp9jJ1NQTDR73c9nwBSAQiNKloKl5zq9WB9UPw==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", + "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", "dependencies": { "color-convert": "^2.0.1", "color-string": "^1.9.0" @@ -8593,7 +8654,7 @@ "version": "3.0.11", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.11.tgz", "integrity": "sha512-sa6P2wJ+CAbgyy4KFssIb/JNMLxFvKF1pCYCSXS8ZMuqZnMsrxqI2E5sPyoTpxoPU/gVZMzr2zjOfg8GIZOMsw==", - "dev": true + "devOptional": true }, "node_modules/cypress": { "version": "9.4.1", @@ -8884,6 +8945,10 @@ "node": ">=0.10.0" } }, + "node_modules/default-demo": { + "resolved": "demos/default", + "link": true + }, "node_modules/defer-to-connect": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", @@ -8985,9 +9050,9 @@ } }, "node_modules/destr": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/destr/-/destr-1.1.0.tgz", - "integrity": "sha512-Ev/sqS5AzzDwlpor/5wFCDu0dYMQu/0x2D6XfAsQ0E7uQmamIgYJ6Dppo2T2EOFVkeVYWjc+PCLKaqZZ57qmLg==" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/destr/-/destr-1.1.1.tgz", + "integrity": "sha512-QqkneF8LrYmwATMdnuD2MLI3GHQIcBnG6qFC2q9bSH430VTCDAVjcspPmUaKhPGtAtPAftIUFqY1obQYQuwmbg==" }, "node_modules/destroy": { "version": "1.2.0", @@ -9023,8 +9088,7 @@ "node_modules/detect-node-es": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz", - "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==", - "dev": true + "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==" }, "node_modules/detective-amd": { "version": "3.1.2", @@ -11286,7 +11350,6 @@ "version": "0.10.1", "resolved": "https://registry.npmjs.org/focus-lock/-/focus-lock-0.10.1.tgz", "integrity": "sha512-b9yUklCi4fTu2GXn7dnaVf4hiLVVBp7xTiZarAHMODV2To6Bitf6F/UI67RmKbdgJQeVwI1UO0d9HYNbXt3GkA==", - "dev": true, "dependencies": { "tslib": "^2.0.3" }, @@ -11493,7 +11556,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/get-nonce/-/get-nonce-1.0.1.tgz", "integrity": "sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==", - "dev": true, "engines": { "node": ">=6" } @@ -11508,9 +11570,9 @@ } }, "node_modules/get-port-please": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/get-port-please/-/get-port-please-2.3.0.tgz", - "integrity": "sha512-zO6ST8v7jBO+uSnm0vaQuZEpdr7DgY9iMgoMLUC+Zfz31HYoDiiQrL78oZspaAryT6NH903Bwk+mYxiCy3X/RQ==", + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/get-port-please/-/get-port-please-2.4.3.tgz", + "integrity": "sha512-l5zVrG3mzz+I7MfbPwyJJ4xZKIdQfARpOtsBjUDUZ0iXlF0IXc1wMBg3Jb7G1te7tRzjOxu+MRLpvgxxTdCkwg==", "dependencies": { "fs-memo": "^1.2.0" } @@ -12371,7 +12433,6 @@ "version": "2.2.4", "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dev": true, "dependencies": { "loose-envify": "^1.0.0" } @@ -15161,19 +15222,24 @@ "dev": true }, "node_modules/listhen": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/listhen/-/listhen-0.2.6.tgz", - "integrity": "sha512-/xpN3784qRxyxS9wjiVB0vWE9NqoT+5nvOw5KBRB4tXtsjp7y83CJe6Gi/WtoTkkDqXwhSNStqaJ3r/7J0ZCDA==", + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/listhen/-/listhen-0.2.8.tgz", + "integrity": "sha512-qU9Awnit075ZbLKLLVsQSoC95eqd9URWTOosCACM06tZECpp7s8c2rqfJojqfDei88MHJxcFkLALj+M8KzX8Dw==", "dependencies": { "clipboardy": "^3.0.0", "colorette": "^2.0.16", - "defu": "^5.0.0", + "defu": "^6.0.0", "get-port-please": "^2.1.0", "http-shutdown": "^1.2.2", "open": "^8.0.5", "selfsigned": "^2.0.0" } }, + "node_modules/listhen/node_modules/defu": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/defu/-/defu-6.0.0.tgz", + "integrity": "sha512-t2MZGLf1V2rV4VBZbWIaXKdX/mUcYW0n2znQZoADBkGGxYL8EWqCuCZBmJPJ/Yy9fofJkyuuSuo5GSwo0XdEgw==" + }, "node_modules/listr2": { "version": "3.14.0", "resolved": "https://registry.npmjs.org/listr2/-/listr2-3.14.0.tgz", @@ -15259,6 +15325,10 @@ "node": ">=10" } }, + "node_modules/local-plugin": { + "resolved": "demos/plugin-wrapper", + "link": true + }, "node_modules/local-web-server": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/local-web-server/-/local-web-server-4.2.1.tgz", @@ -15913,6 +15983,27 @@ "node": ">=0.10.0" } }, + "node_modules/matcher": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-1.1.1.tgz", + "integrity": "sha512-+BmqxWIubKTRKNWx/ahnCkk3mG8m7OturVlqq6HiojGJTd5hVYbgZm6WzcYPCoB+KBT4Vd6R7WSRG2OADNaCjg==", + "dev": true, + "dependencies": { + "escape-string-regexp": "^1.0.4" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/matcher/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true, + "engines": { + "node": ">=0.8.0" + } + }, "node_modules/mdast-util-from-markdown": { "version": "0.8.5", "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz", @@ -16665,6 +16756,10 @@ } } }, + "node_modules/next-export-demo": { + "resolved": "demos/next-export", + "link": true + }, "node_modules/nice-try": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", @@ -16744,9 +16839,9 @@ } }, "node_modules/node-forge": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.2.1.tgz", - "integrity": "sha512-Fcvtbb+zBcZXbTTVwqGA5W+MKBj56UjVRevvchv5XrcyXbmNdesfZL37nlcWOfpgHhgmxApw3tQbTr4CqNmX4w==", + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==", "engines": { "node": ">= 6.13.0" } @@ -17588,9 +17683,9 @@ } }, "node_modules/ohmyfetch/node_modules/node-fetch": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.2.0.tgz", - "integrity": "sha512-8xeimMwMItMw8hRrOl3C9/xzU49HV/yE6ORew/l+dxWimO5A4Ra8ld2rerlJvc/O7et5Z1zrWsPX43v1QBjCxw==", + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.2.3.tgz", + "integrity": "sha512-AXP18u4pidSZ1xYXRDPY/8jdv3RAozIt/WLNR/MBGZAz+xjtlr90RvCnsvHQRiXyWliZF/CpytExp32UU67/SA==", "dependencies": { "data-uri-to-buffer": "^4.0.0", "fetch-blob": "^3.1.4", @@ -18723,7 +18818,6 @@ "version": "15.8.1", "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", - "dev": true, "dependencies": { "loose-envify": "^1.4.0", "object-assign": "^4.1.1", @@ -18733,8 +18827,7 @@ "node_modules/prop-types/node_modules/react-is": { "version": "16.13.1", "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "dev": true + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" }, "node_modules/proxy-from-env": { "version": "1.0.0", @@ -19015,12 +19108,11 @@ } }, "node_modules/react": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", - "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==", + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/react/-/react-18.0.0.tgz", + "integrity": "sha512-x+VL6wbT4JRVPm7EGxXhZ8w8LTROaxPXOqhlGyVSrv0sB1jkyFGgXxJ8LVoPRLvPR6/CIZGFmfzqUa2NYeMr2A==", "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" + "loose-envify": "^1.1.0" }, "engines": { "node": ">=0.10.0" @@ -19030,7 +19122,6 @@ "version": "1.2.5", "resolved": "https://registry.npmjs.org/react-clientside-effect/-/react-clientside-effect-1.2.5.tgz", "integrity": "sha512-2bL8qFW1TGBHozGGbVeyvnggRpMjibeZM2536AKNENLECutp2yfs44IL8Hmpn8qjFQ2K7A9PnYf3vc7aQq/cPA==", - "dev": true, "dependencies": { "@babel/runtime": "^7.12.13" }, @@ -19039,23 +19130,21 @@ } }, "node_modules/react-dom": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz", - "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==", + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.0.0.tgz", + "integrity": "sha512-XqX7uzmFo0pUceWFCt7Gff6IyIMzFUn7QMZrbrQfGxtaxXZIcGQzoNpRLE3fQLnS4XzLLPMZX2T9TRcSrasicw==", "dependencies": { "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "scheduler": "^0.20.2" + "scheduler": "^0.21.0" }, "peerDependencies": { - "react": "17.0.2" + "react": "^18.0.0" } }, "node_modules/react-focus-lock": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/react-focus-lock/-/react-focus-lock-2.7.1.tgz", "integrity": "sha512-ImSeVmcrLKNMqzUsIdqOkXwTVltj79OPu43oT8tVun7eIckA4VdM7UmYUFo3H/UC2nRVgagMZGFnAOQEDiDYcA==", - "dev": true, "dependencies": { "@babel/runtime": "^7.0.0", "focus-lock": "^0.10.1", @@ -19078,7 +19167,6 @@ "version": "2.4.3", "resolved": "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.4.3.tgz", "integrity": "sha512-lGWYXfV6jykJwbFpsuPdexKKzp96f3RbvGapDSIdcyGvHb7/eqyn46C7/6h+rUzYar1j5mdU+XECITHXCKBk9Q==", - "dev": true, "dependencies": { "react-remove-scroll-bar": "^2.1.0", "react-style-singleton": "^2.1.0", @@ -19103,7 +19191,6 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.2.0.tgz", "integrity": "sha512-UU9ZBP1wdMR8qoUs7owiVcpaPwsQxUDC2lypP6mmixaGlARZa7ZIBx1jcuObLdhMOvCsnZcvetOho0wzPa9PYg==", - "dev": true, "dependencies": { "react-style-singleton": "^2.1.0", "tslib": "^1.0.0" @@ -19124,20 +19211,17 @@ "node_modules/react-remove-scroll-bar/node_modules/tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, "node_modules/react-remove-scroll/node_modules/tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, "node_modules/react-style-singleton": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.1.1.tgz", "integrity": "sha512-jNRp07Jza6CBqdRKNgGhT3u9umWvils1xsuMOjZlghBDH2MU0PL2WZor4PGYjXpnRCa9DQSlHMs/xnABWOwYbA==", - "dev": true, "dependencies": { "get-nonce": "^1.0.0", "invariant": "^2.2.4", @@ -19159,8 +19243,7 @@ "node_modules/react-style-singleton/node_modules/tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, "node_modules/read-package-json-fast": { "version": "2.0.3", @@ -19500,8 +19583,7 @@ "node_modules/regenerator-runtime": { "version": "0.13.9", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", - "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", - "dev": true + "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==" }, "node_modules/regenerator-transform": { "version": "0.14.5", @@ -20095,20 +20177,19 @@ } }, "node_modules/scheduler": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz", - "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==", + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.21.0.tgz", + "integrity": "sha512-1r87x5fz9MXqswA2ERLo0EbOAU74DpIUO090gIasYTqlVoJeMcl+Z1Rg7WHz+qtPujhS/hGIt9kxZOYBV3faRQ==", "dependencies": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" + "loose-envify": "^1.1.0" } }, "node_modules/selfsigned": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.0.0.tgz", - "integrity": "sha512-cUdFiCbKoa1mZ6osuJs2uDHrs0k0oprsKveFiiaBKCNq3SYyb5gs2HxhQyDNLCmL51ZZThqi4YNDpCK6GOP1iQ==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.0.1.tgz", + "integrity": "sha512-LmME957M1zOsUhG+67rAjKfiWFox3SBxE/yymatMZsAx+oMrJ0YQ8AToOnyCm7xbeg2ep37IHLxdu0o2MavQOQ==", "dependencies": { - "node-forge": "^1.2.0" + "node-forge": "^1" }, "engines": { "node": ">=10" @@ -20284,13 +20365,13 @@ "dev": true }, "node_modules/sharp": { - "version": "0.30.1", - "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.30.1.tgz", - "integrity": "sha512-ycpz81q8AeVjz1pGvvirQBeJcYE2sXAjcLXR/69LWOe/oxavBLOrenZcTzvTXn83jqAGqY+OuwF+2kFXzbKtDA==", + "version": "0.30.3", + "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.30.3.tgz", + "integrity": "sha512-rjpfJFK58ZOFSG8sxYSo3/JQb4ej095HjXp9X7gVu7gEn1aqSG8TCW29h/Rr31+PXrFADo1H/vKfw0uhMQWFtg==", "hasInstallScript": true, "dependencies": { - "color": "^4.2.0", - "detect-libc": "^2.0.0", + "color": "^4.2.1", + "detect-libc": "^2.0.1", "node-addon-api": "^4.3.0", "prebuild-install": "^7.0.1", "semver": "^7.3.5", @@ -20938,6 +21019,10 @@ "node": ">=0.10.0" } }, + "node_modules/static-root-demo": { + "resolved": "demos/static-root", + "link": true + }, "node_modules/statsd-client": { "version": "0.4.7", "resolved": "https://registry.npmjs.org/statsd-client/-/statsd-client-0.4.7.tgz", @@ -21538,8 +21623,7 @@ "node_modules/tiny-warning": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz", - "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==", - "dev": true + "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==" }, "node_modules/tmp": { "version": "0.2.1", @@ -21786,8 +21870,7 @@ "node_modules/tslib": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==", - "dev": true + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" }, "node_modules/tsscmp": { "version": "1.0.6", @@ -21944,9 +22027,9 @@ } }, "node_modules/undici": { - "version": "4.14.1", - "resolved": "https://registry.npmjs.org/undici/-/undici-4.14.1.tgz", - "integrity": "sha512-WJ+g+XqiZcATcBaUeluCajqy4pEDcQfK1vy+Fo+bC4/mqXI9IIQD/XWHLS70fkGUT6P52Drm7IFslO651OdLPQ==", + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-4.16.0.tgz", + "integrity": "sha512-tkZSECUYi+/T1i4u+4+lwZmQgLXd4BLGlrc7KZPcLIW7Jpq99+Xpc30ONv7nS6F5UNOxp/HBZSSL9MafUrvJbw==", "engines": { "node": ">=12.18" } @@ -22278,7 +22361,6 @@ "version": "1.2.5", "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.2.5.tgz", "integrity": "sha512-gN3vgMISAgacF7sqsLPByqoePooY3n2emTH59Ur5d/M8eg4WTWu1xp8i8DHjohftIyEx0S08RiYxbffr4j8Peg==", - "dev": true, "engines": { "node": ">=8.5.0" }, @@ -22296,7 +22378,6 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.0.5.tgz", "integrity": "sha512-k9jnrjYNwN6xYLj1iaGhonDghfvmeTmYjAiGvOr7clwKfPjMXJf4/HOr7oT5tJwYafgp2tG2l3eZEOfoELiMcA==", - "dev": true, "dependencies": { "detect-node-es": "^1.1.0", "tslib": "^1.9.3" @@ -22311,8 +22392,7 @@ "node_modules/use-sidecar/node_modules/tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, "node_modules/util-deprecate": { "version": "1.0.2", @@ -22672,9 +22752,9 @@ "dev": true }, "node_modules/xss": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/xss/-/xss-1.0.10.tgz", - "integrity": "sha512-qmoqrRksmzqSKvgqzN0055UFWY7OKx1/9JWeRswwEVX9fCG5jcYRxa/A2DHcmZX6VJvjzHRQ2STeeVcQkrmLSw==", + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/xss/-/xss-1.0.11.tgz", + "integrity": "sha512-EimjrjThZeK2MO7WKR9mN5ZC1CSqivSl55wvUK5EtU6acf0rzEE1pN+9ZDrFXJ82BRp3JL38pPE6S4o/rpp1zQ==", "dependencies": { "commander": "^2.20.3", "cssfilter": "0.0.10" @@ -22802,6 +22882,38 @@ "engines": { "node": ">= 10" } + }, + "plugin": { + "name": "@netlify/plugin-nextjs", + "version": "4.3.2", + "license": "ISC", + "dependencies": { + "@netlify/functions": "^1.0.0", + "@netlify/ipx": "^0.0.10", + "@vercel/node-bridge": "^2.1.0", + "chalk": "^4.1.2", + "fs-extra": "^10.0.0", + "globby": "^11.0.4", + "moize": "^6.1.0", + "next": "^12.1.4", + "node-fetch": "^2.6.6", + "node-stream-zip": "^1.15.0", + "outdent": "^0.8.0", + "p-limit": "^3.1.0", + "pathe": "^0.2.0", + "pretty-bytes": "^5.6.0", + "semver": "^7.3.5", + "slash": "^3.0.0", + "tiny-glob": "^0.2.9" + }, + "devDependencies": { + "@netlify/build": "^26.5.2", + "@types/jest": "^27.4.1", + "@types/node": "^17.0.23" + }, + "engines": { + "node": ">=12.0.0" + } } }, "dependencies": { @@ -24010,7 +24122,6 @@ "version": "7.17.0", "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.17.0.tgz", "integrity": "sha512-etcO/ohMNaNA2UBdaXBBSX/3aEzFMRrVfaPv8Ptc0k+cWpWW0QFiGZ2XnVqQZI1Cf734LbPGmqBKWESfW4x/dQ==", - "dev": true, "requires": { "regenerator-runtime": "^0.13.4" } @@ -24373,6 +24484,15 @@ } } }, + "@delucis/if-env": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@delucis/if-env/-/if-env-1.1.2.tgz", + "integrity": "sha512-sZJF62edo927tjq0cANW9Quozwmact7o4fIbPdvmTLqDxQgXJE9xqlkspvgGAZINL3JkwUFTQiGKAan/e2sDnQ==", + "dev": true, + "requires": { + "matcher": "^1.1.1" + } + }, "@eslint/eslintrc": { "version": "0.4.3", "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", @@ -25792,19 +25912,29 @@ } }, "@netlify/ipx": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/@netlify/ipx/-/ipx-1.0.1.tgz", - "integrity": "sha512-bABYrpien+MnIUBbkM/xuU4so3BOeOQZBnWqL215EZjJzbfch4jbErLFZWbeWyrJSPc8QklG/yHgLLrelfA42g==", + "version": "0.0.10", + "resolved": "https://registry.npmjs.org/@netlify/ipx/-/ipx-0.0.10.tgz", + "integrity": "sha512-eVgP5Mk0Yu2AbJV6dTevqUa5aAHFw56K0N4dR8650Q1dUaypTki2Jw9jR6IusllgniWVMw3fMAICGdY4Ra4Rvg==", "requires": { - "@netlify/functions": "^1.0.0", + "@netlify/functions": "^0.7.2", "etag": "^1.8.1", "fs-extra": "^10.0.0", - "ipx": "^0.9.4", + "ipx": "^0.9.2", "mkdirp": "^1.0.4", "murmurhash": "^2.0.0", "node-fetch": "^2.0.0", - "ufo": "^0.7.11", + "ufo": "^0.7.10", "unstorage": "^0.2.8" + }, + "dependencies": { + "@netlify/functions": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@netlify/functions/-/functions-0.7.2.tgz", + "integrity": "sha512-xf45ZqQukMxmlkqNMC5BXdFMaVZ8VqF42MV5zA5nKVOh2V0mhYlcbTYlVbS/K2/rtvQ3W8lxxixYl4NT7kq6Bg==", + "requires": { + "is-promise": "^4.0.0" + } + } } }, "@netlify/open-api": { @@ -25855,6 +25985,31 @@ } } }, + "@netlify/plugin-nextjs": { + "version": "file:plugin", + "requires": { + "@netlify/build": "^26.5.2", + "@netlify/functions": "^1.0.0", + "@netlify/ipx": "^0.0.10", + "@types/jest": "^27.4.1", + "@types/node": "^17.0.23", + "@vercel/node-bridge": "^2.1.0", + "chalk": "^4.1.2", + "fs-extra": "^10.0.0", + "globby": "^11.0.4", + "moize": "^6.1.0", + "next": "^12.1.4", + "node-fetch": "^2.6.6", + "node-stream-zip": "^1.15.0", + "outdent": "^0.8.0", + "p-limit": "^3.1.0", + "pathe": "^0.2.0", + "pretty-bytes": "^5.6.0", + "semver": "^7.3.5", + "slash": "^3.0.0", + "tiny-glob": "^0.2.9" + } + }, "@netlify/plugins-list": { "version": "6.19.0", "resolved": "https://registry.npmjs.org/@netlify/plugins-list/-/plugins-list-6.19.0.tgz", @@ -26137,7 +26292,6 @@ "version": "0.16.2", "resolved": "https://registry.npmjs.org/@reach/dialog/-/dialog-0.16.2.tgz", "integrity": "sha512-qq8oX0cROgTb8LjOKWzzNm4SqaN9b89lJHr7UyVo2aQ6WbeNzZBxqXhGywFP7dkR+hNqOJnrA59PXFWhfttA9A==", - "dev": true, "requires": { "@reach/portal": "0.16.2", "@reach/utils": "0.16.0", @@ -26151,7 +26305,6 @@ "version": "0.16.2", "resolved": "https://registry.npmjs.org/@reach/portal/-/portal-0.16.2.tgz", "integrity": "sha512-9ur/yxNkuVYTIjAcfi46LdKUvH0uYZPfEp4usWcpt6PIp+WDF57F/5deMe/uGi/B/nfDweQu8VVwuMVrCb97JQ==", - "dev": true, "requires": { "@reach/utils": "0.16.0", "tiny-warning": "^1.0.3", @@ -26162,7 +26315,6 @@ "version": "0.16.0", "resolved": "https://registry.npmjs.org/@reach/utils/-/utils-0.16.0.tgz", "integrity": "sha512-PCggBet3qaQmwFNcmQ/GqHSefadAFyNCUekq9RrWoaU9hh/S4iaFgf2MBMdM47eQj5i/Bk0Mm07cP/XPFlkN+Q==", - "dev": true, "requires": { "tiny-warning": "^1.0.3", "tslib": "^2.3.0" @@ -26172,7 +26324,6 @@ "version": "0.16.0", "resolved": "https://registry.npmjs.org/@reach/visually-hidden/-/visually-hidden-0.16.0.tgz", "integrity": "sha512-IIayZ3jzJtI5KfcfRVtOMFkw2ef/1dMT8D9BUuFcU2ORZAWLNvnzj1oXNoIfABKl5wtsLjY6SGmkYQ+tMPN8TA==", - "dev": true, "requires": { "prop-types": "^15.7.2", "tslib": "^2.3.0" @@ -26595,9 +26746,9 @@ "dev": true }, "@types/node": { - "version": "17.0.14", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.14.tgz", - "integrity": "sha512-SbjLmERksKOGzWzPNuW7fJM7fk3YXVTFiZWB/Hs99gwhk+/dnrQRPBQjPW9aO+fi1tAffi9PrwFvsmOKmDTyng==", + "version": "17.0.23", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.23.tgz", + "integrity": "sha512-UxDxWn7dl97rKVeVS61vErvw086aCYhDLyvRQZ5Rk65rZKepaFdm53GeqXaKBuOhED4e9uWq34IC3TdSdJJ2Gw==", "dev": true }, "@types/normalize-package-data": { @@ -26622,13 +26773,13 @@ "version": "15.7.4", "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.4.tgz", "integrity": "sha512-rZ5drC/jWjrArrS8BR6SIr4cWpW09RNTYt9AMZo3Jwwif+iacXAqgVjm0B0Bv/S1jhDXKHqRVNCbACkJ89RAnQ==", - "dev": true + "devOptional": true }, "@types/react": { "version": "17.0.43", "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.43.tgz", "integrity": "sha512-8Q+LNpdxf057brvPu1lMtC5Vn7J119xrP1aq4qiaefNioQUYANF/CYeK4NsKorSZyUGJ66g0IM+4bbjwx45o2A==", - "dev": true, + "devOptional": true, "requires": { "@types/prop-types": "*", "@types/scheduler": "*", @@ -26657,7 +26808,7 @@ "version": "0.16.2", "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz", "integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==", - "dev": true + "devOptional": true }, "@types/sinonjs__fake-timers": { "version": "8.1.1", @@ -27534,6 +27685,12 @@ } } }, + "base-path-demo": { + "version": "file:demos/base-path", + "requires": { + "@netlify/plugin-nextjs": "*" + } + }, "base64-js": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", @@ -28165,9 +28322,9 @@ } }, "color": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/color/-/color-4.2.1.tgz", - "integrity": "sha512-MFJr0uY4RvTQUKvPq7dh9grVOTYSFeXja2mBXioCGjnjJoXrAp9jJ1NQTDR73c9nwBSAQiNKloKl5zq9WB9UPw==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/color/-/color-4.2.3.tgz", + "integrity": "sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==", "requires": { "color-convert": "^2.0.1", "color-string": "^1.9.0" @@ -29011,7 +29168,7 @@ "version": "3.0.11", "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.0.11.tgz", "integrity": "sha512-sa6P2wJ+CAbgyy4KFssIb/JNMLxFvKF1pCYCSXS8ZMuqZnMsrxqI2E5sPyoTpxoPU/gVZMzr2zjOfg8GIZOMsw==", - "dev": true + "devOptional": true }, "cypress": { "version": "9.4.1", @@ -29240,6 +29397,14 @@ "integrity": "sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg==", "dev": true }, + "default-demo": { + "version": "file:demos/default", + "requires": { + "@netlify/plugin-nextjs": "*", + "@reach/dialog": "^0.16.2", + "@reach/visually-hidden": "^0.16.0" + } + }, "defer-to-connect": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz", @@ -29314,9 +29479,9 @@ "dev": true }, "destr": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/destr/-/destr-1.1.0.tgz", - "integrity": "sha512-Ev/sqS5AzzDwlpor/5wFCDu0dYMQu/0x2D6XfAsQ0E7uQmamIgYJ6Dppo2T2EOFVkeVYWjc+PCLKaqZZ57qmLg==" + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/destr/-/destr-1.1.1.tgz", + "integrity": "sha512-QqkneF8LrYmwATMdnuD2MLI3GHQIcBnG6qFC2q9bSH430VTCDAVjcspPmUaKhPGtAtPAftIUFqY1obQYQuwmbg==" }, "destroy": { "version": "1.2.0", @@ -29339,8 +29504,7 @@ "detect-node-es": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/detect-node-es/-/detect-node-es-1.1.0.tgz", - "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==", - "dev": true + "integrity": "sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ==" }, "detective-amd": { "version": "3.1.2", @@ -31030,7 +31194,6 @@ "version": "0.10.1", "resolved": "https://registry.npmjs.org/focus-lock/-/focus-lock-0.10.1.tgz", "integrity": "sha512-b9yUklCi4fTu2GXn7dnaVf4hiLVVBp7xTiZarAHMODV2To6Bitf6F/UI67RmKbdgJQeVwI1UO0d9HYNbXt3GkA==", - "dev": true, "requires": { "tslib": "^2.0.3" } @@ -31187,8 +31350,7 @@ "get-nonce": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/get-nonce/-/get-nonce-1.0.1.tgz", - "integrity": "sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==", - "dev": true + "integrity": "sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q==" }, "get-package-type": { "version": "0.1.0", @@ -31197,9 +31359,9 @@ "dev": true }, "get-port-please": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/get-port-please/-/get-port-please-2.3.0.tgz", - "integrity": "sha512-zO6ST8v7jBO+uSnm0vaQuZEpdr7DgY9iMgoMLUC+Zfz31HYoDiiQrL78oZspaAryT6NH903Bwk+mYxiCy3X/RQ==", + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/get-port-please/-/get-port-please-2.4.3.tgz", + "integrity": "sha512-l5zVrG3mzz+I7MfbPwyJJ4xZKIdQfARpOtsBjUDUZ0iXlF0IXc1wMBg3Jb7G1te7tRzjOxu+MRLpvgxxTdCkwg==", "requires": { "fs-memo": "^1.2.0" } @@ -31824,7 +31986,6 @@ "version": "2.2.4", "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", - "dev": true, "requires": { "loose-envify": "^1.0.0" } @@ -33987,17 +34148,24 @@ "dev": true }, "listhen": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/listhen/-/listhen-0.2.6.tgz", - "integrity": "sha512-/xpN3784qRxyxS9wjiVB0vWE9NqoT+5nvOw5KBRB4tXtsjp7y83CJe6Gi/WtoTkkDqXwhSNStqaJ3r/7J0ZCDA==", + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/listhen/-/listhen-0.2.8.tgz", + "integrity": "sha512-qU9Awnit075ZbLKLLVsQSoC95eqd9URWTOosCACM06tZECpp7s8c2rqfJojqfDei88MHJxcFkLALj+M8KzX8Dw==", "requires": { "clipboardy": "^3.0.0", "colorette": "^2.0.16", - "defu": "^5.0.0", + "defu": "^6.0.0", "get-port-please": "^2.1.0", "http-shutdown": "^1.2.2", "open": "^8.0.5", "selfsigned": "^2.0.0" + }, + "dependencies": { + "defu": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/defu/-/defu-6.0.0.tgz", + "integrity": "sha512-t2MZGLf1V2rV4VBZbWIaXKdX/mUcYW0n2znQZoADBkGGxYL8EWqCuCZBmJPJ/Yy9fofJkyuuSuo5GSwo0XdEgw==" + } } }, "listr2": { @@ -34061,6 +34229,14 @@ "array-back": "^4.0.1" } }, + "local-plugin": { + "version": "file:demos/plugin-wrapper", + "requires": { + "@netlify/plugin-nextjs": "*", + "husky": "*", + "npm-run-all": "*" + } + }, "local-web-server": { "version": "4.2.1", "resolved": "https://registry.npmjs.org/local-web-server/-/local-web-server-4.2.1.tgz", @@ -34561,6 +34737,23 @@ "object-visit": "^1.0.0" } }, + "matcher": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/matcher/-/matcher-1.1.1.tgz", + "integrity": "sha512-+BmqxWIubKTRKNWx/ahnCkk3mG8m7OturVlqq6HiojGJTd5hVYbgZm6WzcYPCoB+KBT4Vd6R7WSRG2OADNaCjg==", + "dev": true, + "requires": { + "escape-string-regexp": "^1.0.4" + }, + "dependencies": { + "escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "dev": true + } + } + }, "mdast-util-from-markdown": { "version": "0.8.5", "resolved": "https://registry.npmjs.org/mdast-util-from-markdown/-/mdast-util-from-markdown-0.8.5.tgz", @@ -35119,6 +35312,12 @@ "styled-jsx": "5.0.1" } }, + "next-export-demo": { + "version": "file:demos/next-export", + "requires": { + "@netlify/plugin-nextjs": "*" + } + }, "nice-try": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", @@ -35173,9 +35372,9 @@ } }, "node-forge": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.2.1.tgz", - "integrity": "sha512-Fcvtbb+zBcZXbTTVwqGA5W+MKBj56UjVRevvchv5XrcyXbmNdesfZL37nlcWOfpgHhgmxApw3tQbTr4CqNmX4w==" + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-1.3.1.tgz", + "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==" }, "node-gyp-build": { "version": "4.3.0", @@ -35835,9 +36034,9 @@ }, "dependencies": { "node-fetch": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.2.0.tgz", - "integrity": "sha512-8xeimMwMItMw8hRrOl3C9/xzU49HV/yE6ORew/l+dxWimO5A4Ra8ld2rerlJvc/O7et5Z1zrWsPX43v1QBjCxw==", + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-3.2.3.tgz", + "integrity": "sha512-AXP18u4pidSZ1xYXRDPY/8jdv3RAozIt/WLNR/MBGZAz+xjtlr90RvCnsvHQRiXyWliZF/CpytExp32UU67/SA==", "requires": { "data-uri-to-buffer": "^4.0.0", "fetch-blob": "^3.1.4", @@ -36686,7 +36885,6 @@ "version": "15.8.1", "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.8.1.tgz", "integrity": "sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg==", - "dev": true, "requires": { "loose-envify": "^1.4.0", "object-assign": "^4.1.1", @@ -36696,8 +36894,7 @@ "react-is": { "version": "16.13.1", "resolved": "https://registry.npmjs.org/react-is/-/react-is-16.13.1.tgz", - "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==", - "dev": true + "integrity": "sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ==" } } }, @@ -36912,38 +37109,34 @@ } }, "react": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", - "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==", + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/react/-/react-18.0.0.tgz", + "integrity": "sha512-x+VL6wbT4JRVPm7EGxXhZ8w8LTROaxPXOqhlGyVSrv0sB1jkyFGgXxJ8LVoPRLvPR6/CIZGFmfzqUa2NYeMr2A==", "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" + "loose-envify": "^1.1.0" } }, "react-clientside-effect": { "version": "1.2.5", "resolved": "https://registry.npmjs.org/react-clientside-effect/-/react-clientside-effect-1.2.5.tgz", "integrity": "sha512-2bL8qFW1TGBHozGGbVeyvnggRpMjibeZM2536AKNENLECutp2yfs44IL8Hmpn8qjFQ2K7A9PnYf3vc7aQq/cPA==", - "dev": true, "requires": { "@babel/runtime": "^7.12.13" } }, "react-dom": { - "version": "17.0.2", - "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz", - "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==", + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-18.0.0.tgz", + "integrity": "sha512-XqX7uzmFo0pUceWFCt7Gff6IyIMzFUn7QMZrbrQfGxtaxXZIcGQzoNpRLE3fQLnS4XzLLPMZX2T9TRcSrasicw==", "requires": { "loose-envify": "^1.1.0", - "object-assign": "^4.1.1", - "scheduler": "^0.20.2" + "scheduler": "^0.21.0" } }, "react-focus-lock": { "version": "2.7.1", "resolved": "https://registry.npmjs.org/react-focus-lock/-/react-focus-lock-2.7.1.tgz", "integrity": "sha512-ImSeVmcrLKNMqzUsIdqOkXwTVltj79OPu43oT8tVun7eIckA4VdM7UmYUFo3H/UC2nRVgagMZGFnAOQEDiDYcA==", - "dev": true, "requires": { "@babel/runtime": "^7.0.0", "focus-lock": "^0.10.1", @@ -36963,7 +37156,6 @@ "version": "2.4.3", "resolved": "https://registry.npmjs.org/react-remove-scroll/-/react-remove-scroll-2.4.3.tgz", "integrity": "sha512-lGWYXfV6jykJwbFpsuPdexKKzp96f3RbvGapDSIdcyGvHb7/eqyn46C7/6h+rUzYar1j5mdU+XECITHXCKBk9Q==", - "dev": true, "requires": { "react-remove-scroll-bar": "^2.1.0", "react-style-singleton": "^2.1.0", @@ -36975,8 +37167,7 @@ "tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" } } }, @@ -36984,7 +37175,6 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/react-remove-scroll-bar/-/react-remove-scroll-bar-2.2.0.tgz", "integrity": "sha512-UU9ZBP1wdMR8qoUs7owiVcpaPwsQxUDC2lypP6mmixaGlARZa7ZIBx1jcuObLdhMOvCsnZcvetOho0wzPa9PYg==", - "dev": true, "requires": { "react-style-singleton": "^2.1.0", "tslib": "^1.0.0" @@ -36993,8 +37183,7 @@ "tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" } } }, @@ -37002,7 +37191,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/react-style-singleton/-/react-style-singleton-2.1.1.tgz", "integrity": "sha512-jNRp07Jza6CBqdRKNgGhT3u9umWvils1xsuMOjZlghBDH2MU0PL2WZor4PGYjXpnRCa9DQSlHMs/xnABWOwYbA==", - "dev": true, "requires": { "get-nonce": "^1.0.0", "invariant": "^2.2.4", @@ -37012,8 +37200,7 @@ "tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" } } }, @@ -37280,8 +37467,7 @@ "regenerator-runtime": { "version": "0.13.9", "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz", - "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==", - "dev": true + "integrity": "sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA==" }, "regenerator-transform": { "version": "0.14.5", @@ -37755,20 +37941,19 @@ } }, "scheduler": { - "version": "0.20.2", - "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz", - "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==", + "version": "0.21.0", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.21.0.tgz", + "integrity": "sha512-1r87x5fz9MXqswA2ERLo0EbOAU74DpIUO090gIasYTqlVoJeMcl+Z1Rg7WHz+qtPujhS/hGIt9kxZOYBV3faRQ==", "requires": { - "loose-envify": "^1.1.0", - "object-assign": "^4.1.1" + "loose-envify": "^1.1.0" } }, "selfsigned": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.0.0.tgz", - "integrity": "sha512-cUdFiCbKoa1mZ6osuJs2uDHrs0k0oprsKveFiiaBKCNq3SYyb5gs2HxhQyDNLCmL51ZZThqi4YNDpCK6GOP1iQ==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.0.1.tgz", + "integrity": "sha512-LmME957M1zOsUhG+67rAjKfiWFox3SBxE/yymatMZsAx+oMrJ0YQ8AToOnyCm7xbeg2ep37IHLxdu0o2MavQOQ==", "requires": { - "node-forge": "^1.2.0" + "node-forge": "^1" } }, "semver": { @@ -37914,12 +38099,12 @@ "dev": true }, "sharp": { - "version": "0.30.1", - "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.30.1.tgz", - "integrity": "sha512-ycpz81q8AeVjz1pGvvirQBeJcYE2sXAjcLXR/69LWOe/oxavBLOrenZcTzvTXn83jqAGqY+OuwF+2kFXzbKtDA==", + "version": "0.30.3", + "resolved": "https://registry.npmjs.org/sharp/-/sharp-0.30.3.tgz", + "integrity": "sha512-rjpfJFK58ZOFSG8sxYSo3/JQb4ej095HjXp9X7gVu7gEn1aqSG8TCW29h/Rr31+PXrFADo1H/vKfw0uhMQWFtg==", "requires": { - "color": "^4.2.0", - "detect-libc": "^2.0.0", + "color": "^4.2.1", + "detect-libc": "^2.0.1", "node-addon-api": "^4.3.0", "prebuild-install": "^7.0.1", "semver": "^7.3.5", @@ -38435,6 +38620,12 @@ } } }, + "static-root-demo": { + "version": "file:demos/static-root", + "requires": { + "@netlify/plugin-nextjs": "*" + } + }, "statsd-client": { "version": "0.4.7", "resolved": "https://registry.npmjs.org/statsd-client/-/statsd-client-0.4.7.tgz", @@ -38905,8 +39096,7 @@ "tiny-warning": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/tiny-warning/-/tiny-warning-1.0.3.tgz", - "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==", - "dev": true + "integrity": "sha512-lBN9zLN/oAf68o3zNXYrdCt1kP8WsiGW8Oo2ka41b2IM5JL/S1CTyX1rW0mb/zSuJun0ZUrDxx4sqvYS2FWzPA==" }, "tmp": { "version": "0.2.1", @@ -39098,8 +39288,7 @@ "tslib": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", - "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==", - "dev": true + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" }, "tsscmp": { "version": "1.0.6", @@ -39218,9 +39407,9 @@ } }, "undici": { - "version": "4.14.1", - "resolved": "https://registry.npmjs.org/undici/-/undici-4.14.1.tgz", - "integrity": "sha512-WJ+g+XqiZcATcBaUeluCajqy4pEDcQfK1vy+Fo+bC4/mqXI9IIQD/XWHLS70fkGUT6P52Drm7IFslO651OdLPQ==" + "version": "4.16.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-4.16.0.tgz", + "integrity": "sha512-tkZSECUYi+/T1i4u+4+lwZmQgLXd4BLGlrc7KZPcLIW7Jpq99+Xpc30ONv7nS6F5UNOxp/HBZSSL9MafUrvJbw==" }, "unicode-canonical-property-names-ecmascript": { "version": "2.0.0", @@ -39479,14 +39668,12 @@ "version": "1.2.5", "resolved": "https://registry.npmjs.org/use-callback-ref/-/use-callback-ref-1.2.5.tgz", "integrity": "sha512-gN3vgMISAgacF7sqsLPByqoePooY3n2emTH59Ur5d/M8eg4WTWu1xp8i8DHjohftIyEx0S08RiYxbffr4j8Peg==", - "dev": true, "requires": {} }, "use-sidecar": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/use-sidecar/-/use-sidecar-1.0.5.tgz", "integrity": "sha512-k9jnrjYNwN6xYLj1iaGhonDghfvmeTmYjAiGvOr7clwKfPjMXJf4/HOr7oT5tJwYafgp2tG2l3eZEOfoELiMcA==", - "dev": true, "requires": { "detect-node-es": "^1.1.0", "tslib": "^1.9.3" @@ -39495,8 +39682,7 @@ "tslib": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", - "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", - "dev": true + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" } } }, @@ -39779,9 +39965,9 @@ "dev": true }, "xss": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/xss/-/xss-1.0.10.tgz", - "integrity": "sha512-qmoqrRksmzqSKvgqzN0055UFWY7OKx1/9JWeRswwEVX9fCG5jcYRxa/A2DHcmZX6VJvjzHRQ2STeeVcQkrmLSw==", + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/xss/-/xss-1.0.11.tgz", + "integrity": "sha512-EimjrjThZeK2MO7WKR9mN5ZC1CSqivSl55wvUK5EtU6acf0rzEE1pN+9ZDrFXJ82BRp3JL38pPE6S4o/rpp1zQ==", "requires": { "commander": "^2.20.3", "cssfilter": "0.0.10" diff --git a/package.json b/package.json index 1498ac0286..322d26c089 100644 --- a/package.json +++ b/package.json @@ -1,12 +1,7 @@ { - "name": "@netlify/plugin-nextjs", - "version": "4.3.2", + "name": "netlify-plugin-nextjs", + "private": true, "description": "Run Next.js seamlessly on Netlify", - "main": "lib/index.js", - "files": [ - "lib/**/*", - "manifest.yml" - ], "scripts": { "build:demo": "next build demos/default", "cy:open": "cypress open --config-file cypress/config/all.json", @@ -19,22 +14,17 @@ "format:check-fix:prettier": "run-e format:check:prettier format:fix:prettier", "format:check:prettier": "cross-env-shell prettier --check $npm_package_config_prettier", "format:fix:prettier": "cross-env-shell prettier --write $npm_package_config_prettier", - "prepublishOnly": "run-s publish:pull publish:install clean build test", - "publish:pull": "git pull", - "publish:install": "npm ci", - "publish:test": "npm test", - "test": "run-s build build:demo test:jest", + "build": "npm run -w @netlify/plugin-nextjs build", + "postinstall": "run-s build install-husky", + "install-husky": "if-env CI=1 || husky install node_modules/@netlify/eslint-config-node/.husky", + "test": "run-s build:demo test:jest", "test:jest": "jest", "test:jest:update": "jest --updateSnapshot", - "test:update": "run-s build build:demo test:jest:update", - "prepare": "husky install node_modules/@netlify/eslint-config-node/.husky/ && npm run build", - "clean": "rimraf lib", - "build": "tsc", - "watch": "tsc --watch" + "test:update": "run-s build build:demo test:jest:update" }, "config": { - "eslint": "--cache --format=codeframe --max-warnings=0 \"{src,scripts,tests,.github}/**/*.{ts,js,md,html}\" \"*.{ts,js,md,html}\" \".*.{ts,js,md,html}\"", - "prettier": "--loglevel=warn \"{src,scripts,tests,.github}/**/*.{ts,js,md,yml,json,html}\" \"*.{ts,js,yml,json,html}\" \".*.{ts,js,yml,json,html}\" \"!package-lock.json\"" + "eslint": "--cache --format=codeframe --max-warnings=0 \"{plugin,src,scripts,tests,.github}/**/*.{ts,js,md,html}\" \"*.{ts,js,md,html}\" \".*.{ts,js,md,html}\"", + "prettier": "--loglevel=warn \"{plugin,src,scripts,tests,.github}/**/*.{ts,js,md,yml,json,html}\" \"*.{ts,js,yml,json,html}\" \".*.{ts,js,yml,json,html}\" \"!package-lock.json\"" }, "repository": { "type": "git", @@ -52,33 +42,13 @@ "url": "https://github.com/netlify/netlify-plugin-nextjs/issues" }, "homepage": "https://github.com/netlify/netlify-plugin-nextjs#readme", - "dependencies": { - "@netlify/functions": "^1.0.0", - "@netlify/ipx": "^1.0.1", - "@vercel/node-bridge": "^2.1.0", - "chalk": "^4.1.2", - "fs-extra": "^10.0.0", - "globby": "^11.0.4", - "moize": "^6.1.0", - "next": "^12.1.4", - "node-fetch": "^2.6.6", - "node-stream-zip": "^1.15.0", - "outdent": "^0.8.0", - "p-limit": "^3.1.0", - "pathe": "^0.2.0", - "pretty-bytes": "^5.6.0", - "semver": "^7.3.5", - "slash": "^3.0.0", - "tiny-glob": "^0.2.9" - }, "devDependencies": { "@babel/core": "^7.15.8", "@babel/preset-env": "^7.15.8", "@babel/preset-typescript": "^7.16.0", + "@delucis/if-env": "^1.1.2", "@netlify/build": "^26.5.3", "@netlify/eslint-config-node": "^5.1.8", - "@reach/dialog": "^0.16.2", - "@reach/visually-hidden": "^0.16.0", "@testing-library/cypress": "^8.0.1", "@types/fs-extra": "^9.0.13", "@types/jest": "^27.0.2", @@ -94,15 +64,15 @@ "netlify-plugin-cypress": "^2.2.0", "npm-run-all": "^4.1.5", "prettier": "^2.1.2", - "react": "^17.0.1", - "react-dom": "^17.0.1", + "react": "^18.0.0", + "react-dom": "^18.0.0", "rimraf": "^3.0.2", "sass": "^1.49.0", "tmp-promise": "^3.0.2", "typescript": "^4.3.4" }, "engines": { - "node": ">=12.0.0" + "node": ">=16.0.0" }, "jest": { "testMatch": [ @@ -115,5 +85,13 @@ }, "verbose": true, "testTimeout": 60000 - } + }, + "workspaces": [ + "demos/default", + "plugin", + "demos/static-root", + "demos/next-export", + "demos/base-path", + "demos/plugin-wrapper" + ] } diff --git a/manifest.yml b/plugin/manifest.yml similarity index 100% rename from manifest.yml rename to plugin/manifest.yml diff --git a/plugin/package.json b/plugin/package.json new file mode 100644 index 0000000000..131188b7b9 --- /dev/null +++ b/plugin/package.json @@ -0,0 +1,57 @@ +{ + "name": "@netlify/plugin-nextjs", + "version": "4.3.2", + "description": "Run Next.js seamlessly on Netlify", + "main": "lib/index.js", + "files": [ + "lib/**/*", + "manifest.yml" + ], + "dependencies": { + "@netlify/functions": "^1.0.0", + "@netlify/ipx": "^0.0.10", + "@vercel/node-bridge": "^2.1.0", + "chalk": "^4.1.2", + "fs-extra": "^10.0.0", + "globby": "^11.0.4", + "moize": "^6.1.0", + "next": "^12.1.4", + "node-fetch": "^2.6.6", + "node-stream-zip": "^1.15.0", + "outdent": "^0.8.0", + "p-limit": "^3.1.0", + "pathe": "^0.2.0", + "pretty-bytes": "^5.6.0", + "semver": "^7.3.5", + "slash": "^3.0.0", + "tiny-glob": "^0.2.9" + }, + "devDependencies": { + "@netlify/build": "^26.5.2", + "@types/jest": "^27.4.1", + "@types/node": "^17.0.23" + }, + "scripts": { + "prepublishOnly": "run-s publish:pull publish:install clean build test", + "publish:pull": "git pull", + "publish:install": "npm ci", + "publish:test": "npm test", + "clean": "rimraf lib", + "build": "tsc", + "watch": "tsc --watch", + "prepare": "npm run build" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/netlify/netlify-plugin-nextjs.git" + }, + "author": "", + "license": "ISC", + "bugs": { + "url": "https://github.com/netlify/netlify-plugin-nextjs/issues" + }, + "homepage": "https://github.com/netlify/netlify-plugin-nextjs#readme", + "engines": { + "node": ">=12.0.0" + } +} diff --git a/src/constants.ts b/plugin/src/constants.ts similarity index 100% rename from src/constants.ts rename to plugin/src/constants.ts diff --git a/src/helpers/cache.ts b/plugin/src/helpers/cache.ts similarity index 100% rename from src/helpers/cache.ts rename to plugin/src/helpers/cache.ts diff --git a/src/helpers/config.ts b/plugin/src/helpers/config.ts similarity index 100% rename from src/helpers/config.ts rename to plugin/src/helpers/config.ts diff --git a/src/helpers/files.ts b/plugin/src/helpers/files.ts similarity index 100% rename from src/helpers/files.ts rename to plugin/src/helpers/files.ts diff --git a/src/helpers/functions.ts b/plugin/src/helpers/functions.ts similarity index 100% rename from src/helpers/functions.ts rename to plugin/src/helpers/functions.ts diff --git a/src/helpers/redirects.ts b/plugin/src/helpers/redirects.ts similarity index 100% rename from src/helpers/redirects.ts rename to plugin/src/helpers/redirects.ts diff --git a/src/helpers/types.ts b/plugin/src/helpers/types.ts similarity index 100% rename from src/helpers/types.ts rename to plugin/src/helpers/types.ts diff --git a/src/helpers/utils.ts b/plugin/src/helpers/utils.ts similarity index 100% rename from src/helpers/utils.ts rename to plugin/src/helpers/utils.ts diff --git a/src/helpers/verification.ts b/plugin/src/helpers/verification.ts similarity index 100% rename from src/helpers/verification.ts rename to plugin/src/helpers/verification.ts diff --git a/src/index.ts b/plugin/src/index.ts similarity index 100% rename from src/index.ts rename to plugin/src/index.ts diff --git a/src/templates/getHandler.ts b/plugin/src/templates/getHandler.ts similarity index 100% rename from src/templates/getHandler.ts rename to plugin/src/templates/getHandler.ts diff --git a/src/templates/getPageResolver.ts b/plugin/src/templates/getPageResolver.ts similarity index 100% rename from src/templates/getPageResolver.ts rename to plugin/src/templates/getPageResolver.ts diff --git a/src/templates/handlerUtils.ts b/plugin/src/templates/handlerUtils.ts similarity index 100% rename from src/templates/handlerUtils.ts rename to plugin/src/templates/handlerUtils.ts diff --git a/src/templates/ipx.ts b/plugin/src/templates/ipx.ts similarity index 100% rename from src/templates/ipx.ts rename to plugin/src/templates/ipx.ts diff --git a/plugin/tsconfig.json b/plugin/tsconfig.json new file mode 100644 index 0000000000..0511b164ed --- /dev/null +++ b/plugin/tsconfig.json @@ -0,0 +1,10 @@ +{ + "extends": "../tsconfig.json", + "compilerOptions": { + "outDir": "./lib" /* Redirect output structure to the directory. */, + }, + "include": [ + "src/**/*.ts", + "src/**/*.js" + ] +} \ No newline at end of file diff --git a/release-please-config.json b/release-please-config.json new file mode 100644 index 0000000000..6e4c2a4536 --- /dev/null +++ b/release-please-config.json @@ -0,0 +1,6 @@ +{ + "bootstrap-sha": "62a4ce414f5b02f539902f88dd4b548df5cfa8ef", + "packages": { + "plugin": {} + } +} diff --git a/test/index.js b/test/index.js index 39639a907b..4aa75b8da5 100644 --- a/test/index.js +++ b/test/index.js @@ -4,11 +4,11 @@ const process = require('process') const os = require('os') const cpy = require('cpy') const { dir: getTmpDir } = require('tmp-promise') -const { downloadFile } = require('../src/templates/handlerUtils') +const { downloadFile } = require('../plugin/src/templates/handlerUtils') -const plugin = require('../src') +const plugin = require('../plugin/src') -const { HANDLER_FUNCTION_NAME, ODB_FUNCTION_NAME } = require('../src/constants') +const { HANDLER_FUNCTION_NAME, ODB_FUNCTION_NAME } = require('../plugin/src/constants') const { join } = require('pathe') const { matchMiddleware, @@ -17,9 +17,9 @@ const { matchesRewrite, patchNextFiles, unpatchNextFiles, -} = require('../src/helpers/files') +} = require('../plugin/src/helpers/files') const { dirname } = require('path') -const { getProblematicUserRewrites } = require('../src/helpers/verification') +const { getProblematicUserRewrites } = require('../plugin/src/helpers/verification') const FIXTURES_DIR = `${__dirname}/fixtures` const SAMPLE_PROJECT_DIR = `${__dirname}/../demos/default` diff --git a/tsconfig.json b/tsconfig.json index 6ed1184d82..6c77f481d9 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -59,6 +59,5 @@ /* Advanced Options */ "skipLibCheck": true /* Skip type checking of declaration files. */, "forceConsistentCasingInFileNames": true /* Disallow inconsistently-cased references to the same file. */ - }, - "include": ["src/**/*.ts", "src/**/*.js"] + } } \ No newline at end of file