From a504d9cd9903b77a76de7643e6c255c127ce6a53 Mon Sep 17 00:00:00 2001 From: Ryan Christian Date: Mon, 5 Feb 2024 01:18:58 -0600 Subject: [PATCH] chore: Backport much of #793 Co-authored-by: Marvin Hagemeister --- content/en/tutorial/01-vdom.md | 2 +- content/en/tutorial/02-events.md | 2 +- content/en/tutorial/03-components.md | 2 +- content/en/tutorial/04-state.md | 2 +- content/en/tutorial/05-refs.md | 2 +- content/en/tutorial/07-side-effects.md | 2 +- content/en/tutorial/08-keys.md | 2 +- content/en/tutorial/09-error-handling.md | 2 +- content/kr/tutorial/01-vdom.md | 2 +- content/kr/tutorial/02-events.md | 2 +- content/ru/tutorial/01-vdom.md | 2 +- content/ru/tutorial/02-events.md | 2 +- content/ru/tutorial/03-components.md | 2 +- content/ru/tutorial/04-state.md | 2 +- content/ru/tutorial/05-refs.md | 2 +- content/ru/tutorial/07-side-effects.md | 2 +- content/ru/tutorial/08-keys.md | 2 +- content/ru/tutorial/09-error-handling.md | 2 +- content/zh/tutorial/01-vdom.md | 2 +- content/zh/tutorial/02-events.md | 2 +- jsconfig.json | 4 +- package-lock.json | 2514 ++++++++++------- package.json | 7 +- patches/preact-cli+4.0.0-next.6.patch | 57 + size-plugin.json | 2 +- src/components/app.js | 64 +- src/components/blog-meta/index.js | 62 + src/components/blog-meta/style.module.css | 12 + src/components/blog-overview/index.js | 5 +- src/components/branding/index.js | 12 +- src/components/code-block/index.js | 129 +- src/components/code-block/prism.worker.js | 3 +- src/components/content-region/index.js | 17 +- src/components/controllers/blog-page.js | 40 + src/components/controllers/doc-page.js | 85 + src/components/controllers/index.js | 11 - src/components/controllers/markdown-region.js | 30 + src/components/controllers/not-found.js | 25 + src/components/controllers/page.js | 14 + src/components/controllers/page/index.js | 175 -- src/components/controllers/page/sidebar.js | 68 - .../controllers/{page => }/style.module.css | 14 +- src/components/controllers/tutorial/index.js | 122 +- .../controllers/tutorial/style.module.css | 4 +- src/components/controllers/utils.js | 87 +- src/components/doc-version/index.js | 28 +- src/components/edit-button/index.js | 48 +- src/components/footer/index.js | 6 +- src/components/header/index.js | 14 +- src/components/logo.js | 6 +- src/components/routes.js | 141 +- src/components/sidebar/index.js | 60 + .../page => sidebar}/sidebar-nav.js | 12 +- .../page => sidebar}/sidebar-nav.module.css | 0 .../style.module.css} | 4 +- src/components/table-of-contents/index.js | 28 +- src/config.json | 800 +++--- src/lib/content.js | 25 +- src/lib/docs.js | 4 +- src/lib/i18n.js | 70 +- src/lib/prerender-data.js | 3 +- src/lib/route-utils.js | 38 + src/lib/toggle-overlay.js | 2 +- src/lib/use-resource.js | 67 + src/prerender.js | 29 +- src/pwa.js | 2 + src/types.d.ts | 1 + 67 files changed, 2740 insertions(+), 2251 deletions(-) create mode 100644 patches/preact-cli+4.0.0-next.6.patch create mode 100644 src/components/blog-meta/index.js create mode 100644 src/components/blog-meta/style.module.css create mode 100644 src/components/controllers/blog-page.js create mode 100644 src/components/controllers/doc-page.js delete mode 100644 src/components/controllers/index.js create mode 100644 src/components/controllers/markdown-region.js create mode 100644 src/components/controllers/not-found.js create mode 100644 src/components/controllers/page.js delete mode 100644 src/components/controllers/page/index.js delete mode 100644 src/components/controllers/page/sidebar.js rename src/components/controllers/{page => }/style.module.css (87%) create mode 100644 src/components/sidebar/index.js rename src/components/{controllers/page => sidebar}/sidebar-nav.js (91%) rename src/components/{controllers/page => sidebar}/sidebar-nav.module.css (100%) rename src/components/{controllers/page/sidebar.module.css => sidebar/style.module.css} (98%) create mode 100644 src/lib/route-utils.js create mode 100644 src/lib/use-resource.js diff --git a/content/en/tutorial/01-vdom.md b/content/en/tutorial/01-vdom.md index 5d862bf78..72122946b 100644 --- a/content/en/tutorial/01-vdom.md +++ b/content/en/tutorial/01-vdom.md @@ -195,7 +195,7 @@ useResult(function(result) { var p = result.output.querySelector('p'); var hasColor = p && p.style && p.style.color === 'purple'; if (hasEm && hasColor) { - store.setState({ solved: true }); + solutionCtx.setSolved(true); } }, []); ``` diff --git a/content/en/tutorial/02-events.md b/content/en/tutorial/02-events.md index 5fc74afae..dc2b74ba6 100644 --- a/content/en/tutorial/02-events.md +++ b/content/en/tutorial/02-events.md @@ -60,7 +60,7 @@ useRealm(function (realm) { var win = realm.globalThis; var prevConsoleLog = win.console.log; win.console.log = function() { - store.setState({ solved: true }); + solutionCtx.setSolved(true); return prevConsoleLog.apply(win.console, arguments); }; diff --git a/content/en/tutorial/03-components.md b/content/en/tutorial/03-components.md index ad5477238..950914227 100644 --- a/content/en/tutorial/03-components.md +++ b/content/en/tutorial/03-components.md @@ -253,7 +253,7 @@ useRealm(function (realm) { win.console.log = function() { if (hasComponent && check) { - store.setState({ solved: true }); + solutionCtx.setSolved(true); } return prevConsoleLog.apply(win.console, arguments); }; diff --git a/content/en/tutorial/04-state.md b/content/en/tutorial/04-state.md index 2409c9e16..0f387d783 100644 --- a/content/en/tutorial/04-state.md +++ b/content/en/tutorial/04-state.md @@ -160,7 +160,7 @@ useResult(function () { } if (Number(text2[1]) === Number(text[1]) + 1) { - store.setState({ solved: true }); + solutionCtx.setSolved(true); } }, 10); } diff --git a/content/en/tutorial/05-refs.md b/content/en/tutorial/05-refs.md index ddee07ca5..93dc01796 100644 --- a/content/en/tutorial/05-refs.md +++ b/content/en/tutorial/05-refs.md @@ -132,7 +132,7 @@ function patch(input) { input.__patched = true; var old = input.focus; input.focus = function() { - store.setState({ solved: true }); + solutionCtx.setSolved(true); return old.call(this); }; } diff --git a/content/en/tutorial/07-side-effects.md b/content/en/tutorial/07-side-effects.md index 95c1f69ba..1f874a4ea 100644 --- a/content/en/tutorial/07-side-effects.md +++ b/content/en/tutorial/07-side-effects.md @@ -137,7 +137,7 @@ useRealm(function (realm) { var prevConsoleLog = win.console.log; win.console.log = function(m, s) { if (/Count is now/.test(m) && s === 1) { - store.setState({ solved: true }); + solutionCtx.setSolved(true); } return prevConsoleLog.apply(win.console, arguments); }; diff --git a/content/en/tutorial/08-keys.md b/content/en/tutorial/08-keys.md index 2aaadb43c..aa1a91af2 100644 --- a/content/en/tutorial/08-keys.md +++ b/content/en/tutorial/08-keys.md @@ -306,7 +306,7 @@ useRealm(function (realm) { /learn preact/i.test(c[0].textContent) && /make an awesome app/i.test(c[1].textContent) ) { - store.setState({ solved: true }); + solutionCtx.setSolved(true); } } diff --git a/content/en/tutorial/09-error-handling.md b/content/en/tutorial/09-error-handling.md index 81214cb8d..dc7abfa71 100644 --- a/content/en/tutorial/09-error-handling.md +++ b/content/en/tutorial/09-error-handling.md @@ -97,7 +97,7 @@ useResult(function(result) { oe.apply(this, arguments); setTimeout(function() { if (result.output.textContent.match(/error/i)) { - store.setState({ solved: true }); + solutionCtx.setSolved(true); } }, 10); }; diff --git a/content/kr/tutorial/01-vdom.md b/content/kr/tutorial/01-vdom.md index ffef02ab3..2a0b37528 100644 --- a/content/kr/tutorial/01-vdom.md +++ b/content/kr/tutorial/01-vdom.md @@ -144,7 +144,7 @@ useResult(function(result) { var p = result.output.querySelector('p'); var hasColor = p && p.style && p.style.color === 'purple'; if (hasEm && hasColor) { - store.setState({ solved: true }); + solutionCtx.setSolved(true); } }, []); ``` diff --git a/content/kr/tutorial/02-events.md b/content/kr/tutorial/02-events.md index 6fa9b4867..86e9d3b0b 100644 --- a/content/kr/tutorial/02-events.md +++ b/content/kr/tutorial/02-events.md @@ -53,7 +53,7 @@ useRealm(function (realm) { var win = realm.globalThis; var prevConsoleLog = win.console.log; win.console.log = function() { - store.setState({ solved: true }); + solutionCtx.setSolved(true); return prevConsoleLog.apply(win.console, arguments); }; diff --git a/content/ru/tutorial/01-vdom.md b/content/ru/tutorial/01-vdom.md index 8bc56f7b9..a86184837 100644 --- a/content/ru/tutorial/01-vdom.md +++ b/content/ru/tutorial/01-vdom.md @@ -151,7 +151,7 @@ useResult(function(result) { var p = result.output.querySelector('p'); var hasColor = p && p.style && p.style.color === 'purple'; if (hasEm && hasColor) { - store.setState({ solved: true }); + solutionCtx.setSolved(true); } }, []); ``` diff --git a/content/ru/tutorial/02-events.md b/content/ru/tutorial/02-events.md index 44a2f1d1b..9dc696202 100644 --- a/content/ru/tutorial/02-events.md +++ b/content/ru/tutorial/02-events.md @@ -47,7 +47,7 @@ useRealm(function (realm) { var win = realm.globalThis; var prevConsoleLog = win.console.log; win.console.log = function() { - store.setState({ solved: true }); + solutionCtx.setSolved(true); return prevConsoleLog.apply(win.console, arguments); }; diff --git a/content/ru/tutorial/03-components.md b/content/ru/tutorial/03-components.md index 2dab0beff..61207a51d 100644 --- a/content/ru/tutorial/03-components.md +++ b/content/ru/tutorial/03-components.md @@ -187,7 +187,7 @@ useRealm(function (realm) { win.console.log = function() { if (hasComponent && check) { - store.setState({ solved: true }); + solutionCtx.setSolved(true); } return prevConsoleLog.apply(win.console, arguments); }; diff --git a/content/ru/tutorial/04-state.md b/content/ru/tutorial/04-state.md index f3fc7840a..870f92915 100644 --- a/content/ru/tutorial/04-state.md +++ b/content/ru/tutorial/04-state.md @@ -112,7 +112,7 @@ useResult(function () { } if (Number(text2[1]) === Number(text[1]) + 1) { - store.setState({ solved: true }); + solutionCtx.setSolved(true); } }, 10); } diff --git a/content/ru/tutorial/05-refs.md b/content/ru/tutorial/05-refs.md index cab2f81c9..6f5c60674 100644 --- a/content/ru/tutorial/05-refs.md +++ b/content/ru/tutorial/05-refs.md @@ -102,7 +102,7 @@ function patch(input) { input.__patched = true; var old = input.focus; input.focus = function() { - store.setState({ solved: true }); + solutionCtx.setSolved(true); return old.call(this); }; } diff --git a/content/ru/tutorial/07-side-effects.md b/content/ru/tutorial/07-side-effects.md index c6f5e2a87..79303e2a9 100644 --- a/content/ru/tutorial/07-side-effects.md +++ b/content/ru/tutorial/07-side-effects.md @@ -112,7 +112,7 @@ useRealm(function (realm) { var prevConsoleLog = win.console.log; win.console.log = function(m, s) { if (/Счётчик: /.test(m) && s === 1) { - store.setState({ solved: true }); + solutionCtx.setSolved(true); } return prevConsoleLog.apply(win.console, arguments); }; diff --git a/content/ru/tutorial/08-keys.md b/content/ru/tutorial/08-keys.md index d4eeff73d..15e07ba18 100644 --- a/content/ru/tutorial/08-keys.md +++ b/content/ru/tutorial/08-keys.md @@ -239,7 +239,7 @@ useRealm(function (realm) { /изучить preact/i.test(c[0].textContent) && /сделать крутое приложение/i.test(c[1].textContent) ) { - store.setState({ solved: true }); + solutionCtx.setSolved(true); } } diff --git a/content/ru/tutorial/09-error-handling.md b/content/ru/tutorial/09-error-handling.md index 6dfcd1b9c..f697324d5 100644 --- a/content/ru/tutorial/09-error-handling.md +++ b/content/ru/tutorial/09-error-handling.md @@ -72,7 +72,7 @@ useResult(function(result) { oe.apply(this, arguments); setTimeout(function() { if (result.output.textContent.match(/ошибка/i)) { - store.setState({ solved: true }); + solutionCtx.setSolved(true); } }, 10); }; diff --git a/content/zh/tutorial/01-vdom.md b/content/zh/tutorial/01-vdom.md index 73b6c2c3a..6b1dc4b1c 100644 --- a/content/zh/tutorial/01-vdom.md +++ b/content/zh/tutorial/01-vdom.md @@ -160,7 +160,7 @@ useResult(function(result) { var p = result.output.querySelector('p'); var hasColor = p && p.style && p.style.color === 'purple'; if (hasEm && hasColor) { - store.setState({ solved: true }); + solutionCtx.setSolved(true); } }, []); ``` diff --git a/content/zh/tutorial/02-events.md b/content/zh/tutorial/02-events.md index e8aa7e99a..7b01391bb 100644 --- a/content/zh/tutorial/02-events.md +++ b/content/zh/tutorial/02-events.md @@ -47,7 +47,7 @@ useRealm(function (realm) { var win = realm.globalThis; var prevConsoleLog = win.console.log; win.console.log = function() { - store.setState({ solved: true }); + solutionCtx.setSolved(true); return prevConsoleLog.apply(win.console, arguments); }; diff --git a/jsconfig.json b/jsconfig.json index caaa651a3..e401488e3 100644 --- a/jsconfig.json +++ b/jsconfig.json @@ -1,8 +1,8 @@ { "compilerOptions": { "target": "ESNext", - "module": "NodeNext", - "moduleResolution": "NodeNext", + "module": "ESNext", + "moduleResolution": "Node", "resolveJsonModule": true, "jsx": "react-jsx", "jsxImportSource": "preact", diff --git a/package-lock.json b/package-lock.json index a672460fa..befbefdfe 100644 --- a/package-lock.json +++ b/package-lock.json @@ -4,6 +4,7 @@ "requires": true, "packages": { "": { + "hasInstallScript": true, "license": "MIT", "dependencies": { "@preact/signals": "^1.1.3", @@ -18,14 +19,14 @@ "magic-string": "^0.25.7", "marked": "^0.8.0", "node-fetch": "^2.6.1", + "patch-package": "^8.0.0", "preact": "10.15.1", "preact-custom-element": "^4.3.0", + "preact-iso": "2.2.0", "preact-markup": "^2.1.1", "preact-render-to-string": "^5.2.6", - "preact-router": "^3.1.0", "rollup": "^2.79.1", "sucrase": "^3.32.0", - "unistore": "^3.5.1", "yaml": "^1.7.2" }, "devDependencies": { @@ -2359,16 +2360,10 @@ "dev": true }, "node_modules/@mdn/browser-compat-data": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-2.0.7.tgz", - "integrity": "sha512-GeeM827DlzFFidn1eKkMBiqXFD2oLsnZbaiGhByPl0vcapsRzUL+t9hDoov1swc9rB2jw64R+ihtzC8qOE9wXw==", - "dev": true, - "dependencies": { - "extend": "3.0.2" - }, - "engines": { - "node": ">=10.0.0" - } + "version": "3.3.14", + "resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-3.3.14.tgz", + "integrity": "sha512-n2RC9d6XatVbWFdHLimzzUJxJ1KY8LdjqrW6YvGPiRmsHkhOUx74/Ct10x5Yo7bC/Jvqx7cDEW8IMPv/+vwEzA==", + "dev": true }, "node_modules/@nodelib/fs.scandir": { "version": "2.1.4", @@ -2986,9 +2981,9 @@ } }, "node_modules/@typescript-eslint/typescript-estree/node_modules/debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", "dev": true, "dependencies": { "ms": "2.1.2" @@ -3021,9 +3016,9 @@ "dev": true }, "node_modules/@typescript-eslint/typescript-estree/node_modules/semver": { - "version": "7.3.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", - "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", "dev": true, "dependencies": { "lru-cache": "^6.0.0" @@ -3305,6 +3300,11 @@ "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", "dev": true }, + "node_modules/@yarnpkg/lockfile": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==" + }, "node_modules/abab": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz", @@ -3357,9 +3357,9 @@ } }, "node_modules/acorn-jsx": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", - "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", "dev": true, "peerDependencies": { "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" @@ -3517,12 +3517,6 @@ "node": ">=8" } }, - "node_modules/ansi-align/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, "node_modules/ansi-align/node_modules/is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -3559,12 +3553,12 @@ } }, "node_modules/ansi-escapes": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", - "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", "dev": true, "dependencies": { - "type-fest": "^0.11.0" + "type-fest": "^0.21.3" }, "engines": { "node": ">=8" @@ -3574,12 +3568,12 @@ } }, "node_modules/ansi-escapes/node_modules/type-fest": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", - "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", "dev": true, "engines": { - "node": ">=8" + "node": ">=10" }, "funding": { "url": "https://github.com/sponsors/sindresorhus" @@ -3737,16 +3731,16 @@ "dev": true }, "node_modules/array-includes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.2.tgz", - "integrity": "sha512-w2GspexNQpx+PutG3QpT437/BenZBj0M/MZGn5mzv/MofYqo0xmRHzn4lFsoDlWJ+THYsGJmFlW68WlDFx7VRw==", + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.7.tgz", + "integrity": "sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1", - "get-intrinsic": "^1.0.1", - "is-string": "^1.0.5" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", + "is-string": "^1.0.7" }, "engines": { "node": ">= 0.4" @@ -3773,16 +3767,34 @@ "node": ">=0.10.0" } }, + "node_modules/array.prototype.flat": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", + "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/array.prototype.flatmap": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz", - "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", + "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", "dev": true, "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1", - "function-bind": "^1.1.1" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" }, "engines": { "node": ">= 0.4" @@ -3810,6 +3822,19 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/array.prototype.tosorted": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.2.tgz", + "integrity": "sha512-HuQCHOlk1Weat5jzStICBCd83NxiIMwqDg/dHEsoefabn/hJRj5pVdWcPUSpRrwhwxZOsQassMpgN/xRYFBMIg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.2.1" + } + }, "node_modules/arraybuffer.prototype.slice": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz", @@ -3908,10 +3933,13 @@ } }, "node_modules/ast-metadata-inferer": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/ast-metadata-inferer/-/ast-metadata-inferer-0.4.0.tgz", - "integrity": "sha512-tKHdBe8N/Vq2nLAm4YPBVREVZjMux6KrqyPfNQgIbDl0t7HaNSmy8w4OyVHYg/cvyn5BW7o7pVwpjPte89Zhcg==", - "dev": true + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/ast-metadata-inferer/-/ast-metadata-inferer-0.7.0.tgz", + "integrity": "sha512-OkMLzd8xelb3gmnp6ToFvvsHLtS6CbagTkFQvQ+ZYFe3/AIl9iKikNR9G7pY3GfOR/2Xc222hwBjzI7HLkE76Q==", + "dev": true, + "dependencies": { + "@mdn/browser-compat-data": "^3.3.14" + } }, "node_modules/astral-regex": { "version": "1.0.0", @@ -3935,6 +3963,15 @@ ], "optional": true }, + "node_modules/asynciterator.prototype": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/asynciterator.prototype/-/asynciterator.prototype-1.0.0.tgz", + "integrity": "sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==", + "dev": true, + "dependencies": { + "has-symbols": "^1.0.3" + } + }, "node_modules/asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", @@ -3945,7 +3982,6 @@ "version": "1.0.0", "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", - "dev": true, "engines": { "node": ">= 4.0.0" } @@ -4132,22 +4168,6 @@ "node": ">=10" } }, - "node_modules/babel-plugin-macros/node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/babel-plugin-macros/node_modules/parse-json": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", @@ -4166,15 +4186,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/babel-plugin-macros/node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/babel-plugin-polyfill-corejs2": { "version": "0.4.8", "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.8.tgz", @@ -4510,12 +4521,6 @@ "node": ">=8" } }, - "node_modules/boxen/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, "node_modules/boxen/node_modules/is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -4584,7 +4589,6 @@ "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, "dependencies": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -4594,7 +4598,6 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, "dependencies": { "fill-range": "^7.0.1" }, @@ -4872,7 +4875,6 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.5.tgz", "integrity": "sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==", - "dev": true, "dependencies": { "function-bind": "^1.1.2", "get-intrinsic": "^1.2.1", @@ -4952,7 +4954,6 @@ "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, "dependencies": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -4968,7 +4969,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true, "engines": { "node": ">=8" } @@ -4977,7 +4977,6 @@ "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, "dependencies": { "has-flag": "^4.0.0" }, @@ -5232,12 +5231,6 @@ "node": ">=8" } }, - "node_modules/cliui/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, "node_modules/cliui/node_modules/is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -5443,8 +5436,7 @@ "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" }, "node_modules/concat-stream": { "version": "1.6.2", @@ -6419,7 +6411,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz", "integrity": "sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==", - "dev": true, "dependencies": { "get-intrinsic": "^1.2.1", "gopd": "^1.0.1", @@ -6845,10 +6836,9 @@ "dev": true }, "node_modules/emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, "node_modules/emojis-list": { "version": "3.0.0", @@ -7018,6 +7008,28 @@ "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==", "dev": true }, + "node_modules/es-iterator-helpers": { + "version": "1.0.15", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.15.tgz", + "integrity": "sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==", + "dev": true, + "dependencies": { + "asynciterator.prototype": "^1.0.0", + "call-bind": "^1.0.2", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.1", + "es-set-tostringtag": "^2.0.1", + "function-bind": "^1.1.1", + "get-intrinsic": "^1.2.1", + "globalthis": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.5", + "iterator.prototype": "^1.1.2", + "safe-array-concat": "^1.0.1" + } + }, "node_modules/es-module-lexer": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.4.1.tgz", @@ -7038,6 +7050,15 @@ "node": ">= 0.4" } }, + "node_modules/es-shim-unscopables": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", + "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", + "dev": true, + "dependencies": { + "hasown": "^2.0.0" + } + }, "node_modules/es-to-primitive": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", @@ -7181,19 +7202,19 @@ } }, "node_modules/eslint-plugin-compat": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-compat/-/eslint-plugin-compat-3.9.0.tgz", - "integrity": "sha512-lt3l5PHFHVEYSZ5zijcoYvtQJPsBifRiH5N0Et57KwVu7l/yxmHhSG6VJiLMa/lXrg93Qu8049RNQOMn0+yJBg==", + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-compat/-/eslint-plugin-compat-3.13.0.tgz", + "integrity": "sha512-cv8IYMuTXm7PIjMVDN2y4k/KVnKZmoNGHNq27/9dLstOLydKblieIv+oe2BN2WthuXnFNhaNvv3N1Bvl4dbIGA==", "dev": true, "dependencies": { - "@mdn/browser-compat-data": "^2.0.7", - "ast-metadata-inferer": "^0.4.0", - "browserslist": "^4.12.2", - "caniuse-lite": "^1.0.30001166", - "core-js": "^3.6.5", - "find-up": "^4.1.0", + "@mdn/browser-compat-data": "^3.3.14", + "ast-metadata-inferer": "^0.7.0", + "browserslist": "^4.16.8", + "caniuse-lite": "^1.0.30001251", + "core-js": "^3.16.2", + "find-up": "^5.0.0", "lodash.memoize": "4.1.2", - "semver": "7.3.2" + "semver": "7.3.5" }, "engines": { "node": ">=9.x" @@ -7203,9 +7224,9 @@ } }, "node_modules/eslint-plugin-compat/node_modules/core-js": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.8.1.tgz", - "integrity": "sha512-9Id2xHY1W7m8hCl8NkhQn5CufmF/WuR30BTRewvCXc1aZd3kMECwNZ69ndLbekKfakw9Rf2Xyc+QR6E7Gg+obg==", + "version": "3.35.1", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.35.1.tgz", + "integrity": "sha512-IgdsbxNyMskrTFxa9lWHyMwAJU5gXOPP+1yO+K59d50VLVAIDAbs7gIv705KzALModfK3ZrSZTPNpC0PQgIZuw==", "dev": true, "hasInstallScript": true, "funding": { @@ -7213,57 +7234,26 @@ "url": "https://opencollective.com/core-js" } }, - "node_modules/eslint-plugin-compat/node_modules/find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "dependencies": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint-plugin-compat/node_modules/locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "node_modules/eslint-plugin-compat/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, "dependencies": { - "p-locate": "^4.1.0" + "yallist": "^4.0.0" }, "engines": { - "node": ">=8" + "node": ">=10" } }, - "node_modules/eslint-plugin-compat/node_modules/p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "node_modules/eslint-plugin-compat/node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", "dev": true, "dependencies": { - "p-limit": "^2.2.0" + "lru-cache": "^6.0.0" }, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint-plugin-compat/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/eslint-plugin-compat/node_modules/semver": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", - "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", - "dev": true, "bin": { "semver": "bin/semver.js" }, @@ -7318,28 +7308,33 @@ } }, "node_modules/eslint-plugin-react": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz", - "integrity": "sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g==", + "version": "7.33.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.33.2.tgz", + "integrity": "sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==", "dev": true, "dependencies": { - "array-includes": "^3.1.1", - "array.prototype.flatmap": "^1.2.3", + "array-includes": "^3.1.6", + "array.prototype.flatmap": "^1.3.1", + "array.prototype.tosorted": "^1.1.1", "doctrine": "^2.1.0", - "has": "^1.0.3", + "es-iterator-helpers": "^1.0.12", + "estraverse": "^5.3.0", "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "object.entries": "^1.1.2", - "object.fromentries": "^2.0.2", - "object.values": "^1.1.1", - "prop-types": "^15.7.2", - "resolve": "^1.18.1", - "string.prototype.matchall": "^4.0.2" + "minimatch": "^3.1.2", + "object.entries": "^1.1.6", + "object.fromentries": "^2.0.6", + "object.hasown": "^1.1.2", + "object.values": "^1.1.6", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.4", + "semver": "^6.3.1", + "string.prototype.matchall": "^4.0.8" }, "engines": { "node": ">=4" }, "peerDependencies": { - "eslint": "^3 || ^4 || ^5 || ^6 || ^7" + "eslint": "^3 || ^4 || ^5 || ^6 || ^7 || ^8" } }, "node_modules/eslint-plugin-react/node_modules/doctrine": { @@ -7354,6 +7349,41 @@ "node": ">=0.10.0" } }, + "node_modules/eslint-plugin-react/node_modules/estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/eslint-plugin-react/node_modules/resolve": { + "version": "2.0.0-next.5", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", + "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", + "dev": true, + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/eslint-plugin-react/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/eslint-scope": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", @@ -7389,9 +7419,9 @@ } }, "node_modules/eslint/node_modules/ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", "dev": true, "engines": { "node": ">=6" @@ -7440,18 +7470,18 @@ } }, "node_modules/eslint/node_modules/cross-spawn/node_modules/semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true, "bin": { "semver": "bin/semver" } }, "node_modules/eslint/node_modules/debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", "dev": true, "dependencies": { "ms": "2.1.2" @@ -7465,41 +7495,16 @@ } } }, - "node_modules/eslint/node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/eslint/node_modules/ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, - "node_modules/eslint/node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/eslint/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true, "bin": { "semver": "bin/semver.js" @@ -7590,9 +7595,9 @@ } }, "node_modules/esquery": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz", - "integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", "dev": true, "dependencies": { "estraverse": "^5.1.0" @@ -7602,9 +7607,9 @@ } }, "node_modules/esquery/node_modules/estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true, "engines": { "node": ">=4.0" @@ -8227,7 +8232,6 @@ "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, "dependencies": { "to-regex-range": "^5.0.1" }, @@ -8270,6 +8274,30 @@ "url": "https://github.com/avajs/find-cache-dir?sponsor=1" } }, + "node_modules/find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "dependencies": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/find-yarn-workspace-root": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/find-yarn-workspace-root/-/find-yarn-workspace-root-2.0.0.tgz", + "integrity": "sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ==", + "dependencies": { + "micromatch": "^4.0.2" + } + }, "node_modules/flat": { "version": "5.0.2", "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", @@ -8488,34 +8516,6 @@ "node": ">=12" } }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dev": true, - "dependencies": { - "universalify": "^2.0.0" - }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, "node_modules/fork-ts-checker-webpack-plugin/node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -8546,15 +8546,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/fork-ts-checker-webpack-plugin/node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/fork-ts-checker-webpack-plugin/node_modules/schema-utils": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", @@ -8685,6 +8676,20 @@ "safe-buffer": "~5.1.0" } }, + "node_modules/fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "dependencies": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/fs-minipass": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", @@ -8762,14 +8767,12 @@ "node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, "node_modules/function-bind": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "dev": true, "funding": { "url": "https://github.com/sponsors/ljharb" } @@ -8795,7 +8798,7 @@ "node_modules/functional-red-black-tree": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", "dev": true }, "node_modules/functions-have-names": { @@ -8841,7 +8844,6 @@ "version": "1.2.2", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz", "integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==", - "dev": true, "dependencies": { "function-bind": "^1.1.2", "has-proto": "^1.0.1", @@ -8920,7 +8922,6 @@ "version": "7.1.6", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, "dependencies": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -9049,7 +9050,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dev": true, "dependencies": { "get-intrinsic": "^1.1.3" }, @@ -9060,8 +9060,7 @@ "node_modules/graceful-fs": { "version": "4.2.10", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "node_modules/gzip-size": { "version": "5.1.1", @@ -9105,18 +9104,6 @@ "node": ">=6" } }, - "node_modules/has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "dependencies": { - "function-bind": "^1.1.1" - }, - "engines": { - "node": ">= 0.4.0" - } - }, "node_modules/has-bigints": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", @@ -9139,7 +9126,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz", "integrity": "sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==", - "dev": true, "dependencies": { "get-intrinsic": "^1.2.2" }, @@ -9151,7 +9137,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", - "dev": true, "engines": { "node": ">= 0.4" }, @@ -9163,7 +9148,6 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true, "engines": { "node": ">= 0.4" }, @@ -9306,7 +9290,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", - "dev": true, "dependencies": { "function-bind": "^1.1.2" }, @@ -9824,6 +9807,22 @@ "node": ">= 4" } }, + "node_modules/import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/import-lazy": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", @@ -9862,7 +9861,6 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, "dependencies": { "once": "^1.3.0", "wrappy": "1" @@ -9871,8 +9869,7 @@ "node_modules/inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "node_modules/ini": { "version": "2.0.0", @@ -9908,20 +9905,14 @@ } }, "node_modules/inquirer/node_modules/ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true, "engines": { "node": ">=8" } }, - "node_modules/inquirer/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, "node_modules/inquirer/node_modules/is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -9932,26 +9923,26 @@ } }, "node_modules/inquirer/node_modules/string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, "dependencies": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" + "strip-ansi": "^6.0.1" }, "engines": { "node": ">=8" } }, "node_modules/inquirer/node_modules/strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "dependencies": { - "ansi-regex": "^5.0.0" + "ansi-regex": "^5.0.1" }, "engines": { "node": ">=8" @@ -10038,6 +10029,21 @@ "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", "dev": true }, + "node_modules/is-async-function": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.0.0.tgz", + "integrity": "sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-bigint": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", @@ -10109,12 +10115,12 @@ } }, "node_modules/is-core-module": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.2.0.tgz", - "integrity": "sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ==", + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", "dev": true, "dependencies": { - "has": "^1.0.3" + "hasown": "^2.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -10133,10 +10139,13 @@ } }, "node_modules/is-date-object": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", - "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, "engines": { "node": ">= 0.4" }, @@ -10161,7 +10170,6 @@ "version": "2.2.1", "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true, "bin": { "is-docker": "cli.js" }, @@ -10205,15 +10213,42 @@ "node": ">=0.10.0" } }, + "node_modules/is-finalizationregistry": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.0.2.tgz", + "integrity": "sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", "dev": true, "engines": { "node": ">=4" } }, + "node_modules/is-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "dev": true, + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-glob": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", @@ -10249,6 +10284,15 @@ "dev": true, "optional": true }, + "node_modules/is-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", + "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-module": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", @@ -10283,7 +10327,6 @@ "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, "engines": { "node": ">=0.12.0" } @@ -10367,6 +10410,15 @@ "node": ">=0.10.0" } }, + "node_modules/is-set": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", + "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-shared-array-buffer": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", @@ -10448,6 +10500,15 @@ "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==", "dev": true }, + "node_modules/is-weakmap": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", + "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-weakref": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", @@ -10460,6 +10521,19 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-weakset": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", + "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-windows": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", @@ -10473,7 +10547,6 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, "dependencies": { "is-docker": "^2.0.0" }, @@ -10533,6 +10606,19 @@ "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", "dev": true }, + "node_modules/iterator.prototype": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.2.tgz", + "integrity": "sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==", + "dev": true, + "dependencies": { + "define-properties": "^1.2.1", + "get-intrinsic": "^1.2.1", + "has-symbols": "^1.0.3", + "reflect.getprototypeof": "^1.0.4", + "set-function-name": "^2.0.1" + } + }, "node_modules/jackspeak": { "version": "2.3.6", "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", @@ -10781,12 +10867,34 @@ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, + "node_modules/json-stable-stringify": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.1.1.tgz", + "integrity": "sha512-SU/971Kt5qVQfJpyDveVhQ/vya+5hvrjClFOcr8c0Fq5aODJjMwutrOfCU+eCnVD5gpx1Q3fEqkyom77zH1iIg==", + "dependencies": { + "call-bind": "^1.0.5", + "isarray": "^2.0.5", + "jsonify": "^0.0.1", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", "dev": true }, + "node_modules/json-stable-stringify/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" + }, "node_modules/json-stringify-safe": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", @@ -10805,6 +10913,25 @@ "json5": "lib/cli.js" } }, + "node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/jsonify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.1.tgz", + "integrity": "sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/jsonpointer": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-5.0.1.tgz", @@ -10830,13 +10957,15 @@ } }, "node_modules/jsx-ast-utils": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz", - "integrity": "sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==", + "version": "3.3.5", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", + "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", "dev": true, "dependencies": { - "array-includes": "^3.1.2", - "object.assign": "^4.1.2" + "array-includes": "^3.1.6", + "array.prototype.flat": "^1.3.1", + "object.assign": "^4.1.4", + "object.values": "^1.1.6" }, "engines": { "node": ">=4.0" @@ -10857,6 +10986,14 @@ "node": ">=0.10.0" } }, + "node_modules/klaw-sync": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/klaw-sync/-/klaw-sync-6.0.0.tgz", + "integrity": "sha512-nIeuVSzdCCs6TDPTqI8w1Yre34sSq7AkZ4B3sfOBbI2CgVSB4Du4aLQijFU2+lhAFCwt9+42Hel6lQNIv6AntQ==", + "dependencies": { + "graceful-fs": "^4.1.11" + } + }, "node_modules/kleur": { "version": "4.1.5", "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", @@ -11061,6 +11198,21 @@ "node": ">=4.0.0" } }, + "node_modules/locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "dependencies": { + "p-locate": "^5.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", @@ -11585,7 +11737,6 @@ "version": "4.0.5", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, "dependencies": { "braces": "^3.0.2", "picomatch": "^2.3.1" @@ -11743,7 +11894,6 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, "dependencies": { "brace-expansion": "^1.1.7" }, @@ -11752,10 +11902,12 @@ } }, "node_modules/minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, "node_modules/minipass": { "version": "7.0.4", @@ -12092,7 +12244,7 @@ "node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, "node_modules/negotiator": { @@ -12395,22 +12547,6 @@ "node": ">=6" } }, - "node_modules/netlify-lambda/node_modules/find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "dependencies": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/netlify-lambda/node_modules/is-extendable": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", @@ -12468,21 +12604,6 @@ "node": ">=4.3.0 <5.0.0 || >=5.10" } }, - "node_modules/netlify-lambda/node_modules/locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "dependencies": { - "p-locate": "^5.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/netlify-lambda/node_modules/make-dir": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", @@ -12520,45 +12641,6 @@ "node": ">=0.10.0" } }, - "node_modules/netlify-lambda/node_modules/p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "dependencies": { - "yocto-queue": "^0.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/netlify-lambda/node_modules/p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "dependencies": { - "p-limit": "^3.0.2" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/netlify-lambda/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/netlify-lambda/node_modules/pkg-dir": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", @@ -12596,21 +12678,6 @@ "node": ">=6" } }, - "node_modules/netlify-lambda/node_modules/pkg-dir/node_modules/p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "dependencies": { - "p-try": "^2.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/netlify-lambda/node_modules/pkg-dir/node_modules/p-locate": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", @@ -13217,7 +13284,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true, "engines": { "node": ">= 0.4" } @@ -13253,30 +13319,28 @@ } }, "node_modules/object.entries": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.3.tgz", - "integrity": "sha512-ym7h7OZebNS96hn5IJeyUmaWhaSM4SVtAPPfNLQEI2MYWCO2egsITb9nab2+i/Pwibx+R0mtn+ltKJXRSeTMGg==", + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.7.tgz", + "integrity": "sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==", "dev": true, "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1", - "has": "^1.0.3" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" }, "engines": { "node": ">= 0.4" } }, "node_modules/object.fromentries": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.3.tgz", - "integrity": "sha512-IDUSMXs6LOSJBWE++L0lzIbSqHl9KDCfff2x/JSEIDtEUavUnyMYC2ZGay/04Zq4UT8lvd4xNhU4/YHKibAOlw==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.7.tgz", + "integrity": "sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==", "dev": true, "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1", - "has": "^1.0.3" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" }, "engines": { "node": ">= 0.4" @@ -13304,6 +13368,19 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/object.hasown": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.3.tgz", + "integrity": "sha512-fFI4VcYpRHvSLXxP7yiZOMAd331cPfd2p7PFDVbgUsYOfCT3tICVqXWngbjr4m49OvsBwUBQ6O2uQoJvy3RexA==", + "dev": true, + "dependencies": { + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/object.pick": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", @@ -13317,15 +13394,14 @@ } }, "node_modules/object.values": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.2.tgz", - "integrity": "sha512-MYC0jvJopr8EK6dPBiO8Nb9mvjdypOachO5REGk6MXzujbBrAisKo3HmdEI6kZDL6fC31Mwee/5YbtMebixeag==", + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.7.tgz", + "integrity": "sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==", "dev": true, "dependencies": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1", - "has": "^1.0.3" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" }, "engines": { "node": ">= 0.4" @@ -13365,7 +13441,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, "dependencies": { "wrappy": "1" } @@ -13437,8 +13512,7 @@ "node_modules/os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "dev": true, + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", "engines": { "node": ">=0.10.0" } @@ -13458,6 +13532,36 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "dependencies": { + "p-limit": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/p-map": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", @@ -13642,6 +13746,116 @@ "node": ">=0.10.0" } }, + "node_modules/patch-package": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/patch-package/-/patch-package-8.0.0.tgz", + "integrity": "sha512-da8BVIhzjtgScwDJ2TtKsfT5JFWz1hYoBl9rUQ1f38MC2HwnEIkK8VN3dKMKcP7P7bvvgzNDbfNHtx3MsQb5vA==", + "dependencies": { + "@yarnpkg/lockfile": "^1.1.0", + "chalk": "^4.1.2", + "ci-info": "^3.7.0", + "cross-spawn": "^7.0.3", + "find-yarn-workspace-root": "^2.0.0", + "fs-extra": "^9.0.0", + "json-stable-stringify": "^1.0.2", + "klaw-sync": "^6.0.0", + "minimist": "^1.2.6", + "open": "^7.4.2", + "rimraf": "^2.6.3", + "semver": "^7.5.3", + "slash": "^2.0.0", + "tmp": "^0.0.33", + "yaml": "^2.2.2" + }, + "bin": { + "patch-package": "index.js" + }, + "engines": { + "node": ">=14", + "npm": ">5" + } + }, + "node_modules/patch-package/node_modules/ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/sibiraj-s" + } + ], + "engines": { + "node": ">=8" + } + }, + "node_modules/patch-package/node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/patch-package/node_modules/open": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", + "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", + "dependencies": { + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/patch-package/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/patch-package/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/patch-package/node_modules/slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/patch-package/node_modules/yaml": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.4.tgz", + "integrity": "sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==", + "engines": { + "node": ">= 14" + } + }, "node_modules/path-browserify": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", @@ -13655,11 +13869,19 @@ "dev": true, "optional": true }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, "node_modules/path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true, "engines": { "node": ">=0.10.0" } @@ -13667,16 +13889,16 @@ "node_modules/path-key": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", "dev": true, "engines": { "node": ">=4" } }, "node_modules/path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "dev": true }, "node_modules/path-scurry": { @@ -13744,7 +13966,6 @@ "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, "engines": { "node": ">=8.6" }, @@ -13833,15 +14054,6 @@ "node": ">=8" } }, - "node_modules/pkg-dir/node_modules/path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true, - "engines": { - "node": ">=8" - } - }, "node_modules/pn": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/pn/-/pn-1.1.0.tgz", @@ -14092,22 +14304,6 @@ "node": ">=10" } }, - "node_modules/postcss-loader/node_modules/import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "dependencies": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/postcss-loader/node_modules/lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -14138,15 +14334,6 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/postcss-loader/node_modules/resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true, - "engines": { - "node": ">=4" - } - }, "node_modules/postcss-loader/node_modules/semver": { "version": "7.5.4", "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", @@ -14694,6 +14881,15 @@ "preact": "10.x" } }, + "node_modules/preact-iso": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/preact-iso/-/preact-iso-2.2.0.tgz", + "integrity": "sha512-BIUOYJWnfmOcgFiuAqGTLkqvC2Rqlpn3aLP/ik8kT8afKdLrG3CvBEpSQivMrFY1o2InGX/jEL44ofmoQdoieA==", + "peerDependencies": { + "preact": ">=10", + "preact-render-to-string": ">=5" + } + }, "node_modules/preact-markup": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/preact-markup/-/preact-markup-2.1.1.tgz", @@ -14713,14 +14909,6 @@ "preact": ">=10" } }, - "node_modules/preact-router": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/preact-router/-/preact-router-3.2.1.tgz", - "integrity": "sha512-KEN2VN1DxUlTwzW5IFkF13YIA2OdQ2OvgJTkQREF+AA2NrHRLaGbB68EjS4IeZOa1shvQ1FvEm3bSLta4sXBhg==", - "peerDependencies": { - "preact": ">=10" - } - }, "node_modules/prelude-ls": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", @@ -14887,14 +15075,14 @@ } }, "node_modules/prop-types": { - "version": "15.7.2", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", - "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", + "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", - "react-is": "^16.8.1" + "react-is": "^16.13.1" } }, "node_modules/proto-list": { @@ -15016,9 +15204,9 @@ } }, "node_modules/ramda": { - "version": "0.27.1", - "resolved": "https://registry.npmjs.org/ramda/-/ramda-0.27.1.tgz", - "integrity": "sha512-PgIdVpn5y5Yns8vqb8FzBUEYn98V3xcPgawAkkgj0YJ0qDsnHCiNmZYfOGMgOvoB0eWFLpYbhxUR3mxfDIMvpw==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/ramda/-/ramda-0.27.2.tgz", + "integrity": "sha512-SbiLPU40JuJniHexQSAgad32hfwd+DRUdwF2PlVuI5RZD0/vahUco7R8vD86J/tcEKKF9vZrUVwgtmGCqlCKyA==", "dev": true }, "node_modules/randombytes": { @@ -15178,6 +15366,26 @@ "node": ">=8.10.0" } }, + "node_modules/reflect.getprototypeof": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.4.tgz", + "integrity": "sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", + "globalthis": "^1.0.3", + "which-builtin-type": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/regenerate": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", @@ -15491,6 +15699,15 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true, + "engines": { + "node": ">=4" + } + }, "node_modules/resolve-url": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", @@ -15702,9 +15919,9 @@ } }, "node_modules/rxjs": { - "version": "6.6.3", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.3.tgz", - "integrity": "sha512-trsQc+xYYXZ3urjOiJOuCOa5N3jAZ3eiSpQB5hIT8zGlL2QfnHLJ2r7GMkBGuIausdJN1OneaI6gQlsqNHHmZQ==", + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", "dev": true, "dependencies": { "tslib": "^1.9.0" @@ -16005,7 +16222,6 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.0.tgz", "integrity": "sha512-4DBHDoyHlM1IRPGYcoxexgh67y4ueR53FKV1yyxwFMY7aCqcN/38M1+SwZ/qJQ8iLv7+ck385ot4CcisOAPT9w==", - "dev": true, "dependencies": { "define-data-property": "^1.1.1", "function-bind": "^1.1.2", @@ -16119,7 +16335,7 @@ "node_modules/shebang-command": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", "dev": true, "dependencies": { "shebang-regex": "^1.0.0" @@ -16131,7 +16347,7 @@ "node_modules/shebang-regex": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", "dev": true, "engines": { "node": ">=0.10.0" @@ -16733,7 +16949,7 @@ "node_modules/sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "dev": true }, "node_modules/sshpk": { @@ -17018,11 +17234,6 @@ "node": ">=8" } }, - "node_modules/string-width-cjs/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, "node_modules/string-width-cjs/node_modules/is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -17049,18 +17260,19 @@ "dev": true }, "node_modules/string.prototype.matchall": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.7.tgz", - "integrity": "sha512-f48okCX7JiwVi1NXCVWcFnZgADDC/n2vePlQ/KUCNqCikLLilQvwjMO8+BHVKvgzH0JB0J9LEPgxOGT02RoETg==", + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.10.tgz", + "integrity": "sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==", "dev": true, "dependencies": { "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.1", - "get-intrinsic": "^1.1.1", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", "has-symbols": "^1.0.3", - "internal-slot": "^1.0.3", - "regexp.prototype.flags": "^1.4.1", + "internal-slot": "^1.0.5", + "regexp.prototype.flags": "^1.5.0", + "set-function-name": "^2.0.0", "side-channel": "^1.0.4" }, "funding": { @@ -17375,6 +17587,18 @@ "node": ">=8" } }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/svgo": { "version": "2.8.0", "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", @@ -17427,14 +17651,20 @@ } }, "node_modules/table/node_modules/ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", "dev": true, "engines": { "node": ">=6" } }, + "node_modules/table/node_modules/emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "dev": true + }, "node_modules/table/node_modules/string-width": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", @@ -17686,7 +17916,7 @@ "node_modules/text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, "node_modules/thenify": { @@ -17711,7 +17941,7 @@ "node_modules/through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", "dev": true }, "node_modules/through2": { @@ -17776,7 +18006,6 @@ "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, "dependencies": { "os-tmpdir": "~1.0.2" }, @@ -17842,7 +18071,6 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, "dependencies": { "is-number": "^7.0.0" }, @@ -17944,9 +18172,9 @@ "dev": true }, "node_modules/tsutils": { - "version": "3.17.1", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.17.1.tgz", - "integrity": "sha512-kzeQ5B8H3w60nFY2g8cJIuH7JDpsALXySGtwGJ0p2LSjLgay3NdIpqq5SoOBe46bKDW2iq25irHCr8wjomUS2g==", + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", "dev": true, "dependencies": { "tslib": "^1.8.1" @@ -18225,24 +18453,10 @@ "node": ">=8" } }, - "node_modules/unistore": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/unistore/-/unistore-3.5.2.tgz", - "integrity": "sha512-2Aa4eX0Ua1umyiI3Eai6Li+wXYOHgaDBGOPB3Hvw7PAVuD30TAyh5kS4yNKb2fLDbQgizvPhKQRcYnOdfsm4VQ==", - "peerDependenciesMeta": { - "preact": { - "optional": true - }, - "react": { - "optional": true - } - } - }, "node_modules/universalify": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", - "dev": true, "engines": { "node": ">= 10.0.0" } @@ -18526,9 +18740,9 @@ } }, "node_modules/v8-compile-cache": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.2.0.tgz", - "integrity": "sha512-gTpR5XQNKFwOd4clxfnhaqvfqMpqEwr4tOtCyz4MtYZX2JYhfr1JvBFKdS+7K/9rfpZR3VLX+YWBbKoxCgS43Q==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.4.0.tgz", + "integrity": "sha512-ocyWc3bAHBB/guyqJQVI5o4BZkPhznPYUG2ea80Gond/BgNWpap8TOmLSeeQG7bnh2KMISxskdADG59j7zruhw==", "dev": true }, "node_modules/valid-url": { @@ -19442,6 +19656,53 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/which-builtin-type": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.1.3.tgz", + "integrity": "sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==", + "dev": true, + "dependencies": { + "function.prototype.name": "^1.1.5", + "has-tostringtag": "^1.0.0", + "is-async-function": "^2.0.0", + "is-date-object": "^1.0.5", + "is-finalizationregistry": "^1.0.2", + "is-generator-function": "^1.0.10", + "is-regex": "^1.1.4", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.1", + "which-typed-array": "^1.1.9" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-builtin-type/node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true + }, + "node_modules/which-collection": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", + "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", + "dev": true, + "dependencies": { + "is-map": "^2.0.1", + "is-set": "^2.0.1", + "is-weakmap": "^2.0.1", + "is-weakset": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/which-typed-array": { "version": "1.1.13", "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.13.tgz", @@ -19482,12 +19743,6 @@ "node": ">=8" } }, - "node_modules/widest-line/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, "node_modules/widest-line/node_modules/is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -19685,21 +19940,6 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true }, - "node_modules/workbox-build/node_modules/fs-extra": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", - "dev": true, - "dependencies": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/workbox-build/node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -19735,18 +19975,6 @@ "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", "dev": true }, - "node_modules/workbox-build/node_modules/jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dev": true, - "dependencies": { - "universalify": "^2.0.0" - }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, "node_modules/workbox-build/node_modules/rollup-plugin-terser": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/rollup-plugin-terser/-/rollup-plugin-terser-7.0.2.tgz", @@ -20009,11 +20237,6 @@ "node": ">=8" } }, - "node_modules/wrap-ansi-cjs/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, "node_modules/wrap-ansi-cjs/node_modules/is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -20061,8 +20284,7 @@ "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, "node_modules/write": { "version": "1.0.3", @@ -20160,8 +20382,7 @@ "node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/yaml": { "version": "1.10.2", @@ -20207,12 +20428,6 @@ "node": ">=8" } }, - "node_modules/yargs/node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, "node_modules/yargs/node_modules/is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -21860,13 +22075,10 @@ "dev": true }, "@mdn/browser-compat-data": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-2.0.7.tgz", - "integrity": "sha512-GeeM827DlzFFidn1eKkMBiqXFD2oLsnZbaiGhByPl0vcapsRzUL+t9hDoov1swc9rB2jw64R+ihtzC8qOE9wXw==", - "dev": true, - "requires": { - "extend": "3.0.2" - } + "version": "3.3.14", + "resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-3.3.14.tgz", + "integrity": "sha512-n2RC9d6XatVbWFdHLimzzUJxJ1KY8LdjqrW6YvGPiRmsHkhOUx74/Ct10x5Yo7bC/Jvqx7cDEW8IMPv/+vwEzA==", + "dev": true }, "@nodelib/fs.scandir": { "version": "2.1.4", @@ -22364,9 +22576,9 @@ }, "dependencies": { "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", "dev": true, "requires": { "ms": "2.1.2" @@ -22388,9 +22600,9 @@ "dev": true }, "semver": { - "version": "7.3.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", - "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", "dev": true, "requires": { "lru-cache": "^6.0.0" @@ -22674,6 +22886,11 @@ "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", "dev": true }, + "@yarnpkg/lockfile": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz", + "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==" + }, "abab": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/abab/-/abab-2.0.5.tgz", @@ -22714,9 +22931,9 @@ } }, "acorn-jsx": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.1.tgz", - "integrity": "sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==", + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", "dev": true, "requires": {} }, @@ -22836,12 +23053,6 @@ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -22871,18 +23082,18 @@ } }, "ansi-escapes": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.1.tgz", - "integrity": "sha512-JWF7ocqNrp8u9oqpgV+wH5ftbt+cfvv+PTjOvKLT3AdYly/LmORARfEVT1iyjwN+4MqE5UmVKoAdIBqeoCHgLA==", + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", "dev": true, "requires": { - "type-fest": "^0.11.0" + "type-fest": "^0.21.3" }, "dependencies": { "type-fest": { - "version": "0.11.0", - "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.11.0.tgz", - "integrity": "sha512-OdjXJxnCN1AvyLSzeKIgXTXxV+99ZuXl3Hpo9XpJAv9MBcHrrJOQ5kV7ypXOuQie+AmWG25hLbiKdwYTifzcfQ==", + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", "dev": true } } @@ -22998,16 +23209,16 @@ "dev": true }, "array-includes": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.2.tgz", - "integrity": "sha512-w2GspexNQpx+PutG3QpT437/BenZBj0M/MZGn5mzv/MofYqo0xmRHzn4lFsoDlWJ+THYsGJmFlW68WlDFx7VRw==", + "version": "3.1.7", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.7.tgz", + "integrity": "sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==", "dev": true, "requires": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1", - "get-intrinsic": "^1.0.1", - "is-string": "^1.0.5" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", + "is-string": "^1.0.7" } }, "array-union": { @@ -23022,16 +23233,28 @@ "integrity": "sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==", "dev": true }, + "array.prototype.flat": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz", + "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" + } + }, "array.prototype.flatmap": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.2.4.tgz", - "integrity": "sha512-r9Z0zYoxqHz60vvQbWEdXIEtCwHF0yxaWfno9qzXeNHvfyl3BZqygmGzb84dsubyaXLH4husF+NFgMSdpZhk2Q==", + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz", + "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==", "dev": true, "requires": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1", - "function-bind": "^1.1.1" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0" } }, "array.prototype.reduce": { @@ -23047,6 +23270,19 @@ "is-string": "^1.0.7" } }, + "array.prototype.tosorted": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/array.prototype.tosorted/-/array.prototype.tosorted-1.1.2.tgz", + "integrity": "sha512-HuQCHOlk1Weat5jzStICBCd83NxiIMwqDg/dHEsoefabn/hJRj5pVdWcPUSpRrwhwxZOsQassMpgN/xRYFBMIg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "es-shim-unscopables": "^1.0.0", + "get-intrinsic": "^1.2.1" + } + }, "arraybuffer.prototype.slice": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.2.tgz", @@ -23137,10 +23373,13 @@ "dev": true }, "ast-metadata-inferer": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/ast-metadata-inferer/-/ast-metadata-inferer-0.4.0.tgz", - "integrity": "sha512-tKHdBe8N/Vq2nLAm4YPBVREVZjMux6KrqyPfNQgIbDl0t7HaNSmy8w4OyVHYg/cvyn5BW7o7pVwpjPte89Zhcg==", - "dev": true + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/ast-metadata-inferer/-/ast-metadata-inferer-0.7.0.tgz", + "integrity": "sha512-OkMLzd8xelb3gmnp6ToFvvsHLtS6CbagTkFQvQ+ZYFe3/AIl9iKikNR9G7pY3GfOR/2Xc222hwBjzI7HLkE76Q==", + "dev": true, + "requires": { + "@mdn/browser-compat-data": "^3.3.14" + } }, "astral-regex": { "version": "1.0.0", @@ -23155,6 +23394,15 @@ "dev": true, "optional": true }, + "asynciterator.prototype": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/asynciterator.prototype/-/asynciterator.prototype-1.0.0.tgz", + "integrity": "sha512-wwHYEIS0Q80f5mosx3L/dfG5t5rjEa9Ft51GTaNt862EnpyGHpgz2RkZvLPp1oF5TnAiTohkEKVEu8pQPJI7Vg==", + "dev": true, + "requires": { + "has-symbols": "^1.0.3" + } + }, "asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", @@ -23164,8 +23412,7 @@ "at-least-node": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", - "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", - "dev": true + "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==" }, "atob": { "version": "2.1.2", @@ -23283,16 +23530,6 @@ "yaml": "^1.10.0" } }, - "import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - } - }, "parse-json": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", @@ -23304,12 +23541,6 @@ "json-parse-even-better-errors": "^2.3.0", "lines-and-columns": "^1.1.6" } - }, - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true } } }, @@ -23576,12 +23807,6 @@ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -23631,7 +23856,6 @@ "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, "requires": { "balanced-match": "^1.0.0", "concat-map": "0.0.1" @@ -23641,7 +23865,6 @@ "version": "3.0.2", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", - "dev": true, "requires": { "fill-range": "^7.0.1" } @@ -23870,7 +24093,6 @@ "version": "1.0.5", "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.5.tgz", "integrity": "sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==", - "dev": true, "requires": { "function-bind": "^1.1.2", "get-intrinsic": "^1.2.1", @@ -23929,7 +24151,6 @@ "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - "dev": true, "requires": { "ansi-styles": "^4.1.0", "supports-color": "^7.1.0" @@ -23938,14 +24159,12 @@ "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" }, "supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - "dev": true, "requires": { "has-flag": "^4.0.0" } @@ -24132,12 +24351,6 @@ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -24305,8 +24518,7 @@ "concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" }, "concat-stream": { "version": "1.6.2", @@ -25045,7 +25257,6 @@ "version": "1.1.1", "resolved": "https://registry.npmjs.org/define-data-property/-/define-data-property-1.1.1.tgz", "integrity": "sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==", - "dev": true, "requires": { "get-intrinsic": "^1.2.1", "gopd": "^1.0.1", @@ -25400,10 +25611,9 @@ } }, "emoji-regex": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", - "dev": true + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" }, "emojis-list": { "version": "3.0.0", @@ -25543,6 +25753,28 @@ "integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==", "dev": true }, + "es-iterator-helpers": { + "version": "1.0.15", + "resolved": "https://registry.npmjs.org/es-iterator-helpers/-/es-iterator-helpers-1.0.15.tgz", + "integrity": "sha512-GhoY8uYqd6iwUl2kgjTm4CZAf6oo5mHK7BPqx3rKgx893YSsy0LGHV6gfqqQvZt/8xM8xeOnfXBCfqclMKkJ5g==", + "dev": true, + "requires": { + "asynciterator.prototype": "^1.0.0", + "call-bind": "^1.0.2", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.1", + "es-set-tostringtag": "^2.0.1", + "function-bind": "^1.1.1", + "get-intrinsic": "^1.2.1", + "globalthis": "^1.0.3", + "has-property-descriptors": "^1.0.0", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "internal-slot": "^1.0.5", + "iterator.prototype": "^1.1.2", + "safe-array-concat": "^1.0.1" + } + }, "es-module-lexer": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.4.1.tgz", @@ -25560,6 +25792,15 @@ "hasown": "^2.0.0" } }, + "es-shim-unscopables": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/es-shim-unscopables/-/es-shim-unscopables-1.0.2.tgz", + "integrity": "sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==", + "dev": true, + "requires": { + "hasown": "^2.0.0" + } + }, "es-to-primitive": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", @@ -25654,9 +25895,9 @@ }, "dependencies": { "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", "dev": true }, "ansi-styles": { @@ -25693,48 +25934,32 @@ }, "dependencies": { "semver": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", - "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", "dev": true } } }, "debug": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", - "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", "dev": true, "requires": { "ms": "2.1.2" } }, - "import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - } - }, "ms": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", "dev": true }, - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - }, "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", "dev": true }, "strip-ansi": { @@ -25777,66 +26002,44 @@ } }, "eslint-plugin-compat": { - "version": "3.9.0", - "resolved": "https://registry.npmjs.org/eslint-plugin-compat/-/eslint-plugin-compat-3.9.0.tgz", - "integrity": "sha512-lt3l5PHFHVEYSZ5zijcoYvtQJPsBifRiH5N0Et57KwVu7l/yxmHhSG6VJiLMa/lXrg93Qu8049RNQOMn0+yJBg==", + "version": "3.13.0", + "resolved": "https://registry.npmjs.org/eslint-plugin-compat/-/eslint-plugin-compat-3.13.0.tgz", + "integrity": "sha512-cv8IYMuTXm7PIjMVDN2y4k/KVnKZmoNGHNq27/9dLstOLydKblieIv+oe2BN2WthuXnFNhaNvv3N1Bvl4dbIGA==", "dev": true, "requires": { - "@mdn/browser-compat-data": "^2.0.7", - "ast-metadata-inferer": "^0.4.0", - "browserslist": "^4.12.2", - "caniuse-lite": "^1.0.30001166", - "core-js": "^3.6.5", - "find-up": "^4.1.0", + "@mdn/browser-compat-data": "^3.3.14", + "ast-metadata-inferer": "^0.7.0", + "browserslist": "^4.16.8", + "caniuse-lite": "^1.0.30001251", + "core-js": "^3.16.2", + "find-up": "^5.0.0", "lodash.memoize": "4.1.2", - "semver": "7.3.2" + "semver": "7.3.5" }, "dependencies": { "core-js": { - "version": "3.8.1", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.8.1.tgz", - "integrity": "sha512-9Id2xHY1W7m8hCl8NkhQn5CufmF/WuR30BTRewvCXc1aZd3kMECwNZ69ndLbekKfakw9Rf2Xyc+QR6E7Gg+obg==", + "version": "3.35.1", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.35.1.tgz", + "integrity": "sha512-IgdsbxNyMskrTFxa9lWHyMwAJU5gXOPP+1yO+K59d50VLVAIDAbs7gIv705KzALModfK3ZrSZTPNpC0PQgIZuw==", "dev": true }, - "find-up": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - "dev": true, - "requires": { - "locate-path": "^5.0.0", - "path-exists": "^4.0.0" - } - }, - "locate-path": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, "requires": { - "p-locate": "^4.1.0" + "yallist": "^4.0.0" } }, - "p-locate": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", "dev": true, "requires": { - "p-limit": "^2.2.0" + "lru-cache": "^6.0.0" } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, - "semver": { - "version": "7.3.2", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.2.tgz", - "integrity": "sha512-OrOb32TeeambH6UrhtShmF7CRDqhL6/5XpPNp2DuRH6+9QLw/orhp72j87v8Qa1ScDkvrrBNpZcDejAirJmfXQ==", - "dev": true } } }, @@ -25871,22 +26074,27 @@ } }, "eslint-plugin-react": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.21.5.tgz", - "integrity": "sha512-8MaEggC2et0wSF6bUeywF7qQ46ER81irOdWS4QWxnnlAEsnzeBevk1sWh7fhpCghPpXb+8Ks7hvaft6L/xsR6g==", + "version": "7.33.2", + "resolved": "https://registry.npmjs.org/eslint-plugin-react/-/eslint-plugin-react-7.33.2.tgz", + "integrity": "sha512-73QQMKALArI8/7xGLNI/3LylrEYrlKZSb5C9+q3OtOewTnMQi5cT+aE9E41sLCmli3I9PGGmD1yiZydyo4FEPw==", "dev": true, "requires": { - "array-includes": "^3.1.1", - "array.prototype.flatmap": "^1.2.3", + "array-includes": "^3.1.6", + "array.prototype.flatmap": "^1.3.1", + "array.prototype.tosorted": "^1.1.1", "doctrine": "^2.1.0", - "has": "^1.0.3", + "es-iterator-helpers": "^1.0.12", + "estraverse": "^5.3.0", "jsx-ast-utils": "^2.4.1 || ^3.0.0", - "object.entries": "^1.1.2", - "object.fromentries": "^2.0.2", - "object.values": "^1.1.1", - "prop-types": "^15.7.2", - "resolve": "^1.18.1", - "string.prototype.matchall": "^4.0.2" + "minimatch": "^3.1.2", + "object.entries": "^1.1.6", + "object.fromentries": "^2.0.6", + "object.hasown": "^1.1.2", + "object.values": "^1.1.6", + "prop-types": "^15.8.1", + "resolve": "^2.0.0-next.4", + "semver": "^6.3.1", + "string.prototype.matchall": "^4.0.8" }, "dependencies": { "doctrine": { @@ -25897,6 +26105,29 @@ "requires": { "esutils": "^2.0.2" } + }, + "estraverse": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", + "dev": true + }, + "resolve": { + "version": "2.0.0-next.5", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-2.0.0-next.5.tgz", + "integrity": "sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==", + "dev": true, + "requires": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + } + }, + "semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true } } }, @@ -25957,18 +26188,18 @@ "dev": true }, "esquery": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.3.1.tgz", - "integrity": "sha512-olpvt9QG0vniUBZspVRN6lwB7hOZoTRtT+jzR+tS4ffYx2mzbw+z0XCOk44aaLYKApNX5nMm+E+P6o25ip/DHQ==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", "dev": true, "requires": { "estraverse": "^5.1.0" }, "dependencies": { "estraverse": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz", + "integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==", "dev": true } } @@ -26457,7 +26688,6 @@ "version": "7.0.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", - "dev": true, "requires": { "to-regex-range": "^5.0.1" } @@ -26488,6 +26718,24 @@ "pkg-dir": "^4.1.0" } }, + "find-up": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", + "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", + "dev": true, + "requires": { + "locate-path": "^6.0.0", + "path-exists": "^4.0.0" + } + }, + "find-yarn-workspace-root": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/find-yarn-workspace-root/-/find-yarn-workspace-root-2.0.0.tgz", + "integrity": "sha512-1IMnbjt4KzsQfnhnzNd8wUEgXZ44IzZaZmnLYx7D5FZlaHt2gW20Cri8Q+E/t5tIj4+epTBub+2Zxu/vNILzqQ==", + "requires": { + "micromatch": "^4.0.2" + } + }, "flat": { "version": "5.0.2", "resolved": "https://registry.npmjs.org/flat/-/flat-5.0.2.tgz", @@ -26651,26 +26899,6 @@ "universalify": "^2.0.0" } }, - "import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - } - }, - "jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6", - "universalify": "^2.0.0" - } - }, "lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -26692,12 +26920,6 @@ "lines-and-columns": "^1.1.6" } }, - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - }, "schema-utils": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz", @@ -26800,6 +27022,17 @@ } } }, + "fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "requires": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, "fs-minipass": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", @@ -26875,14 +27108,12 @@ "fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=" }, "function-bind": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", - "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", - "dev": true + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==" }, "function.prototype.name": { "version": "1.1.6", @@ -26899,7 +27130,7 @@ "functional-red-black-tree": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", - "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", + "integrity": "sha512-dsKNQNdj6xA3T+QlADDA7mOSlX0qiMINjn0cgr+eGHGsbSHzTabcIogz2+p/iqP1Xs6EP/sS2SbqH+brGTbq0g==", "dev": true }, "functions-have-names": { @@ -26930,7 +27161,6 @@ "version": "1.2.2", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.2.tgz", "integrity": "sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==", - "dev": true, "requires": { "function-bind": "^1.1.2", "has-proto": "^1.0.1", @@ -26985,7 +27215,6 @@ "version": "7.1.6", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", "integrity": "sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==", - "dev": true, "requires": { "fs.realpath": "^1.0.0", "inflight": "^1.0.4", @@ -27080,7 +27309,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/gopd/-/gopd-1.0.1.tgz", "integrity": "sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==", - "dev": true, "requires": { "get-intrinsic": "^1.1.3" } @@ -27088,8 +27316,7 @@ "graceful-fs": { "version": "4.2.10", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", - "dev": true + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "gzip-size": { "version": "5.1.1", @@ -27123,15 +27350,6 @@ "har-schema": "^2.0.0" } }, - "has": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", - "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", - "dev": true, - "requires": { - "function-bind": "^1.1.1" - } - }, "has-bigints": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/has-bigints/-/has-bigints-1.0.2.tgz", @@ -27148,7 +27366,6 @@ "version": "1.0.1", "resolved": "https://registry.npmjs.org/has-property-descriptors/-/has-property-descriptors-1.0.1.tgz", "integrity": "sha512-VsX8eaIewvas0xnvinAe9bw4WfIeODpGYikiWYLH+dma0Jw6KHYqWiWfhQlgOVK8D6PvjubK5Uc4P0iIhIcNVg==", - "dev": true, "requires": { "get-intrinsic": "^1.2.2" } @@ -27156,14 +27373,12 @@ "has-proto": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", - "dev": true + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==" }, "has-symbols": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", - "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", - "dev": true + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==" }, "has-tostringtag": { "version": "1.0.0", @@ -27265,7 +27480,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", - "dev": true, "requires": { "function-bind": "^1.1.2" } @@ -27644,6 +27858,16 @@ "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", "dev": true }, + "import-fresh": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", + "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", + "dev": true, + "requires": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + } + }, "import-lazy": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", @@ -27673,7 +27897,6 @@ "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, "requires": { "once": "^1.3.0", "wrappy": "1" @@ -27682,8 +27905,7 @@ "inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - "dev": true + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "ini": { "version": "2.0.0", @@ -27713,15 +27935,9 @@ }, "dependencies": { "ansi-regex": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.0.tgz", - "integrity": "sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==", - "dev": true - }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, "is-fullwidth-code-point": { @@ -27731,23 +27947,23 @@ "dev": true }, "string-width": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.0.tgz", - "integrity": "sha512-zUz5JD+tgqtuDjMhwIg5uFVV3dtqZ9yQJlZVfq4I01/K5Paj5UHj7VyrQOJvzawSVlKpObApbfD0Ed6yJc+1eg==", + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, "requires": { "emoji-regex": "^8.0.0", "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.0" + "strip-ansi": "^6.0.1" } }, "strip-ansi": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", - "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, "requires": { - "ansi-regex": "^5.0.0" + "ansi-regex": "^5.0.1" } } } @@ -27814,6 +28030,15 @@ "integrity": "sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=", "dev": true }, + "is-async-function": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-async-function/-/is-async-function-2.0.0.tgz", + "integrity": "sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, "is-bigint": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", @@ -27864,12 +28089,12 @@ } }, "is-core-module": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.2.0.tgz", - "integrity": "sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ==", + "version": "2.13.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", + "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", "dev": true, "requires": { - "has": "^1.0.3" + "hasown": "^2.0.0" } }, "is-data-descriptor": { @@ -27882,10 +28107,13 @@ } }, "is-date-object": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.2.tgz", - "integrity": "sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==", - "dev": true + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } }, "is-descriptor": { "version": "1.0.3", @@ -27900,8 +28128,7 @@ "is-docker": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - "dev": true + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==" }, "is-extendable": { "version": "1.0.1", @@ -27929,12 +28156,30 @@ "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", "dev": true }, + "is-finalizationregistry": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-finalizationregistry/-/is-finalizationregistry-1.0.2.tgz", + "integrity": "sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2" + } + }, "is-fullwidth-code-point": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", - "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==", "dev": true }, + "is-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "dev": true, + "requires": { + "has-tostringtag": "^1.0.0" + } + }, "is-glob": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", @@ -27961,6 +28206,12 @@ "dev": true, "optional": true }, + "is-map": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-map/-/is-map-2.0.2.tgz", + "integrity": "sha512-cOZFQQozTha1f4MxLFzlgKYPTyj26picdZTx82hbc/Xf4K/tZOOXSCkMvU4pKioRXGDLJRn0GM7Upe7kR721yg==", + "dev": true + }, "is-module": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/is-module/-/is-module-1.0.0.tgz", @@ -27982,8 +28233,7 @@ "is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" }, "is-number-object": { "version": "1.0.7", @@ -28034,6 +28284,12 @@ "integrity": "sha1-/S2INUXEa6xaYz57mgnof6LLUGk=", "dev": true }, + "is-set": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-set/-/is-set-2.0.2.tgz", + "integrity": "sha512-+2cnTEZeY5z/iXGbLhPrOAaK/Mau5k5eXq9j14CpRTftq0pAJu2MwVRSZhyZWBzx3o6X795Lz6Bpb6R0GKf37g==", + "dev": true + }, "is-shared-array-buffer": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-shared-array-buffer/-/is-shared-array-buffer-1.0.2.tgz", @@ -28088,6 +28344,12 @@ "integrity": "sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==", "dev": true }, + "is-weakmap": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-weakmap/-/is-weakmap-2.0.1.tgz", + "integrity": "sha512-NSBR4kH5oVj1Uwvv970ruUkCV7O1mzgVFO4/rev2cLRda9Tm9HrL70ZPut4rOHgY0FNrUu9BCbXA2sdQ+x0chA==", + "dev": true + }, "is-weakref": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-weakref/-/is-weakref-1.0.2.tgz", @@ -28097,6 +28359,16 @@ "call-bind": "^1.0.2" } }, + "is-weakset": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/is-weakset/-/is-weakset-2.0.2.tgz", + "integrity": "sha512-t2yVvttHkQktwnNNmBQ98AhENLdPUTDTE21uPqAQ0ARwQfGeQKRVS0NNurH7bTf7RrvcVn1OOge45CnBeHCSmg==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.1.1" + } + }, "is-windows": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-windows/-/is-windows-1.0.2.tgz", @@ -28107,7 +28379,6 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - "dev": true, "requires": { "is-docker": "^2.0.0" } @@ -28161,6 +28432,19 @@ "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=", "dev": true }, + "iterator.prototype": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/iterator.prototype/-/iterator.prototype-1.1.2.tgz", + "integrity": "sha512-DR33HMMr8EzwuRL8Y9D3u2BMj8+RqSE850jfGu59kS7tbmPLzGkZmVSfyCFSDxuZiEY6Rzt3T2NA/qU+NwVj1w==", + "dev": true, + "requires": { + "define-properties": "^1.2.1", + "get-intrinsic": "^1.2.1", + "has-symbols": "^1.0.3", + "reflect.getprototypeof": "^1.0.4", + "set-function-name": "^2.0.1" + } + }, "jackspeak": { "version": "2.3.6", "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.3.6.tgz", @@ -28363,10 +28647,28 @@ "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, + "json-stable-stringify": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.1.1.tgz", + "integrity": "sha512-SU/971Kt5qVQfJpyDveVhQ/vya+5hvrjClFOcr8c0Fq5aODJjMwutrOfCU+eCnVD5gpx1Q3fEqkyom77zH1iIg==", + "requires": { + "call-bind": "^1.0.5", + "isarray": "^2.0.5", + "jsonify": "^0.0.1", + "object-keys": "^1.1.1" + }, + "dependencies": { + "isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==" + } + } + }, "json-stable-stringify-without-jsonify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", - "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", + "integrity": "sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw==", "dev": true }, "json-stringify-safe": { @@ -28384,6 +28686,20 @@ "minimist": "^1.2.0" } }, + "jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "requires": { + "graceful-fs": "^4.1.6", + "universalify": "^2.0.0" + } + }, + "jsonify": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.1.tgz", + "integrity": "sha512-2/Ki0GcmuqSrgFyelQq9M05y7PS0mEwuIzrf3f1fPqkVDVRvZrPZtVSMHxdgo8Aq0sxAOb/cr2aqqA3LeWHVPg==" + }, "jsonpointer": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-5.0.1.tgz", @@ -28403,13 +28719,15 @@ } }, "jsx-ast-utils": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.2.0.tgz", - "integrity": "sha512-EIsmt3O3ljsU6sot/J4E1zDRxfBNrhjyf/OKjlydwgEimQuznlM4Wv7U+ueONJMyEn1WRE0K8dhi3dVAXYT24Q==", + "version": "3.3.5", + "resolved": "https://registry.npmjs.org/jsx-ast-utils/-/jsx-ast-utils-3.3.5.tgz", + "integrity": "sha512-ZZow9HBI5O6EPgSJLUb8n2NKgmVWTwCvHGwFuJlMjvLFqlGG6pjirPhtdsseaLZjSibD8eegzmYpUZwoIlj2cQ==", "dev": true, "requires": { - "array-includes": "^3.1.2", - "object.assign": "^4.1.2" + "array-includes": "^3.1.6", + "array.prototype.flat": "^1.3.1", + "object.assign": "^4.1.4", + "object.values": "^1.1.6" } }, "jwt-decode": { @@ -28424,6 +28742,14 @@ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true }, + "klaw-sync": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/klaw-sync/-/klaw-sync-6.0.0.tgz", + "integrity": "sha512-nIeuVSzdCCs6TDPTqI8w1Yre34sSq7AkZ4B3sfOBbI2CgVSB4Du4aLQijFU2+lhAFCwt9+42Hel6lQNIv6AntQ==", + "requires": { + "graceful-fs": "^4.1.11" + } + }, "kleur": { "version": "4.1.5", "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", @@ -28576,6 +28902,15 @@ "json5": "^1.0.1" } }, + "locate-path": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", + "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", + "dev": true, + "requires": { + "p-locate": "^5.0.0" + } + }, "lodash": { "version": "4.17.21", "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", @@ -28990,7 +29325,6 @@ "version": "4.0.5", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.5.tgz", "integrity": "sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==", - "dev": true, "requires": { "braces": "^3.0.2", "picomatch": "^2.3.1" @@ -29107,16 +29441,14 @@ "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "dev": true, "requires": { "brace-expansion": "^1.1.7" } }, "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==" }, "minipass": { "version": "7.0.4", @@ -29389,7 +29721,7 @@ "natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", + "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", "dev": true }, "negotiator": { @@ -29661,16 +29993,6 @@ "pkg-dir": "^3.0.0" } }, - "find-up": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", - "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", - "dev": true, - "requires": { - "locate-path": "^6.0.0", - "path-exists": "^4.0.0" - } - }, "is-extendable": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", @@ -29715,15 +30037,6 @@ "integrity": "sha512-Jsmr89RcXGIwivFY21FcRrisYZfvLMTWx5kOLc+JTxtpBOG6xML0vzbc6SEQG2FO9/4Fc3wW4LVcB5DmGflaRw==", "dev": true }, - "locate-path": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", - "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", - "dev": true, - "requires": { - "p-locate": "^5.0.0" - } - }, "make-dir": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", @@ -29755,30 +30068,6 @@ "to-regex": "^3.0.2" } }, - "p-limit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, - "requires": { - "yocto-queue": "^0.1.0" - } - }, - "p-locate": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", - "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", - "dev": true, - "requires": { - "p-limit": "^3.0.2" - } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true - }, "pkg-dir": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", @@ -29807,15 +30096,6 @@ "path-exists": "^3.0.0" } }, - "p-limit": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - "dev": true, - "requires": { - "p-try": "^2.0.0" - } - }, "p-locate": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", @@ -30292,8 +30572,7 @@ "object-keys": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/object-keys/-/object-keys-1.1.1.tgz", - "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", - "dev": true + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==" }, "object-visit": { "version": "1.0.1", @@ -30317,27 +30596,25 @@ } }, "object.entries": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.3.tgz", - "integrity": "sha512-ym7h7OZebNS96hn5IJeyUmaWhaSM4SVtAPPfNLQEI2MYWCO2egsITb9nab2+i/Pwibx+R0mtn+ltKJXRSeTMGg==", + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/object.entries/-/object.entries-1.1.7.tgz", + "integrity": "sha512-jCBs/0plmPsOnrKAfFQXRG2NFjlhZgjjcBLSmTnEhU8U6vVTsVe8ANeQJCHTl3gSsI4J+0emOoCgoKlmQPMgmA==", "dev": true, "requires": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1", - "has": "^1.0.3" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" } }, "object.fromentries": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.3.tgz", - "integrity": "sha512-IDUSMXs6LOSJBWE++L0lzIbSqHl9KDCfff2x/JSEIDtEUavUnyMYC2ZGay/04Zq4UT8lvd4xNhU4/YHKibAOlw==", + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/object.fromentries/-/object.fromentries-2.0.7.tgz", + "integrity": "sha512-UPbPHML6sL8PI/mOqPwsH4G6iyXcCGzLin8KvEPenOZN5lpCNBZZQ+V62vdjB1mQHrmqGQt5/OJzemUA+KJmEA==", "dev": true, "requires": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1", - "has": "^1.0.3" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" } }, "object.getownpropertydescriptors": { @@ -30353,6 +30630,16 @@ "safe-array-concat": "^1.0.0" } }, + "object.hasown": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/object.hasown/-/object.hasown-1.1.3.tgz", + "integrity": "sha512-fFI4VcYpRHvSLXxP7yiZOMAd331cPfd2p7PFDVbgUsYOfCT3tICVqXWngbjr4m49OvsBwUBQ6O2uQoJvy3RexA==", + "dev": true, + "requires": { + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" + } + }, "object.pick": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", @@ -30363,15 +30650,14 @@ } }, "object.values": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.2.tgz", - "integrity": "sha512-MYC0jvJopr8EK6dPBiO8Nb9mvjdypOachO5REGk6MXzujbBrAisKo3HmdEI6kZDL6fC31Mwee/5YbtMebixeag==", + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.7.tgz", + "integrity": "sha512-aU6xnDFYT3x17e/f0IiiwlGPTy2jzMySGfUB4fq6z7CV8l85CWHDk5ErhyhpfDHhrOMwGFhSQkhMGHaIotA6Ng==", "dev": true, "requires": { - "call-bind": "^1.0.0", - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1", - "has": "^1.0.3" + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1" } }, "obuf": { @@ -30399,7 +30685,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, "requires": { "wrappy": "1" } @@ -30453,8 +30738,7 @@ "os-tmpdir": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", - "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", - "dev": true + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==" }, "p-limit": { "version": "2.3.0", @@ -30465,6 +30749,26 @@ "p-try": "^2.0.0" } }, + "p-locate": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", + "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", + "dev": true, + "requires": { + "p-limit": "^3.0.2" + }, + "dependencies": { + "p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dev": true, + "requires": { + "yocto-queue": "^0.1.0" + } + } + } + }, "p-map": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", @@ -30633,6 +30937,78 @@ "integrity": "sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==", "dev": true }, + "patch-package": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/patch-package/-/patch-package-8.0.0.tgz", + "integrity": "sha512-da8BVIhzjtgScwDJ2TtKsfT5JFWz1hYoBl9rUQ1f38MC2HwnEIkK8VN3dKMKcP7P7bvvgzNDbfNHtx3MsQb5vA==", + "requires": { + "@yarnpkg/lockfile": "^1.1.0", + "chalk": "^4.1.2", + "ci-info": "^3.7.0", + "cross-spawn": "^7.0.3", + "find-yarn-workspace-root": "^2.0.0", + "fs-extra": "^9.0.0", + "json-stable-stringify": "^1.0.2", + "klaw-sync": "^6.0.0", + "minimist": "^1.2.6", + "open": "^7.4.2", + "rimraf": "^2.6.3", + "semver": "^7.5.3", + "slash": "^2.0.0", + "tmp": "^0.0.33", + "yaml": "^2.2.2" + }, + "dependencies": { + "ci-info": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-3.9.0.tgz", + "integrity": "sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==" + }, + "lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "requires": { + "yallist": "^4.0.0" + } + }, + "open": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", + "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", + "requires": { + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" + } + }, + "rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "requires": { + "glob": "^7.1.3" + } + }, + "semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "requires": { + "lru-cache": "^6.0.0" + } + }, + "slash": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-2.0.0.tgz", + "integrity": "sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A==" + }, + "yaml": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/yaml/-/yaml-2.3.4.tgz", + "integrity": "sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==" + } + } + }, "path-browserify": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-0.0.1.tgz", @@ -30646,22 +31022,27 @@ "dev": true, "optional": true }, + "path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true + }, "path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true + "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=" }, "path-key": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", - "integrity": "sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A=", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", "dev": true }, "path-parse": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", - "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", "dev": true }, "path-scurry": { @@ -30716,8 +31097,7 @@ "picomatch": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==" }, "pidtree": { "version": "0.6.0", @@ -30775,12 +31155,6 @@ "requires": { "p-limit": "^2.2.0" } - }, - "path-exists": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - "dev": true } } }, @@ -30924,16 +31298,6 @@ "yaml": "^1.10.0" } }, - "import-fresh": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", - "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", - "dev": true, - "requires": { - "parent-module": "^1.0.0", - "resolve-from": "^4.0.0" - } - }, "lru-cache": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", @@ -30955,12 +31319,6 @@ "lines-and-columns": "^1.1.6" } }, - "resolve-from": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", - "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", - "dev": true - }, "semver": { "version": "7.5.4", "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", @@ -31308,6 +31666,12 @@ "integrity": "sha512-5hG7nQhU4e7RNfCEQklaUqYQiiyibLuJ2wbhR+E2v1m8m9NDsJok5MykW/Nx0YLLBcXr8xnkap6DwByGy2TzDA==", "requires": {} }, + "preact-iso": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/preact-iso/-/preact-iso-2.2.0.tgz", + "integrity": "sha512-BIUOYJWnfmOcgFiuAqGTLkqvC2Rqlpn3aLP/ik8kT8afKdLrG3CvBEpSQivMrFY1o2InGX/jEL44ofmoQdoieA==", + "requires": {} + }, "preact-markup": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/preact-markup/-/preact-markup-2.1.1.tgz", @@ -31322,12 +31686,6 @@ "pretty-format": "^3.8.0" } }, - "preact-router": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/preact-router/-/preact-router-3.2.1.tgz", - "integrity": "sha512-KEN2VN1DxUlTwzW5IFkF13YIA2OdQ2OvgJTkQREF+AA2NrHRLaGbB68EjS4IeZOa1shvQ1FvEm3bSLta4sXBhg==", - "requires": {} - }, "prelude-ls": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz", @@ -31456,14 +31814,14 @@ } }, "prop-types": { - "version": "15.7.2", - "resolved": "https://registry.npmjs.org/prop-types/-/prop-types-15.7.2.tgz", - "integrity": "sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ==", + "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", - "react-is": "^16.8.1" + "react-is": "^16.13.1" } }, "proto-list": { @@ -31579,9 +31937,9 @@ "dev": true }, "ramda": { - "version": "0.27.1", - "resolved": "https://registry.npmjs.org/ramda/-/ramda-0.27.1.tgz", - "integrity": "sha512-PgIdVpn5y5Yns8vqb8FzBUEYn98V3xcPgawAkkgj0YJ0qDsnHCiNmZYfOGMgOvoB0eWFLpYbhxUR3mxfDIMvpw==", + "version": "0.27.2", + "resolved": "https://registry.npmjs.org/ramda/-/ramda-0.27.2.tgz", + "integrity": "sha512-SbiLPU40JuJniHexQSAgad32hfwd+DRUdwF2PlVuI5RZD0/vahUco7R8vD86J/tcEKKF9vZrUVwgtmGCqlCKyA==", "dev": true }, "randombytes": { @@ -31719,6 +32077,20 @@ "picomatch": "^2.2.1" } }, + "reflect.getprototypeof": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reflect.getprototypeof/-/reflect.getprototypeof-1.0.4.tgz", + "integrity": "sha512-ECkTw8TmJwW60lOTR+ZkODISW6RQ8+2CL3COqtiJKLd6MmB45hN51HprHFziKLGkAuTGQhBb91V8cy+KHlaCjw==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", + "globalthis": "^1.0.3", + "which-builtin-type": "^1.1.3" + } + }, "regenerate": { "version": "1.4.2", "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", @@ -31964,6 +32336,12 @@ "path-parse": "^1.0.6" } }, + "resolve-from": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", + "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", + "dev": true + }, "resolve-url": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/resolve-url/-/resolve-url-0.2.1.tgz", @@ -32115,9 +32493,9 @@ } }, "rxjs": { - "version": "6.6.3", - "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.3.tgz", - "integrity": "sha512-trsQc+xYYXZ3urjOiJOuCOa5N3jAZ3eiSpQB5hIT8zGlL2QfnHLJ2r7GMkBGuIausdJN1OneaI6gQlsqNHHmZQ==", + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", "dev": true, "requires": { "tslib": "^1.9.0" @@ -32365,7 +32743,6 @@ "version": "1.2.0", "resolved": "https://registry.npmjs.org/set-function-length/-/set-function-length-1.2.0.tgz", "integrity": "sha512-4DBHDoyHlM1IRPGYcoxexgh67y4ueR53FKV1yyxwFMY7aCqcN/38M1+SwZ/qJQ8iLv7+ck385ot4CcisOAPT9w==", - "dev": true, "requires": { "define-data-property": "^1.1.1", "function-bind": "^1.1.2", @@ -32457,7 +32834,7 @@ "shebang-command": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", "dev": true, "requires": { "shebang-regex": "^1.0.0" @@ -32466,7 +32843,7 @@ "shebang-regex": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz", - "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM=", + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", "dev": true }, "shell-quote": { @@ -32943,7 +33320,7 @@ "sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", "dev": true }, "sshpk": { @@ -33187,11 +33564,6 @@ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -33208,18 +33580,19 @@ } }, "string.prototype.matchall": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.7.tgz", - "integrity": "sha512-f48okCX7JiwVi1NXCVWcFnZgADDC/n2vePlQ/KUCNqCikLLilQvwjMO8+BHVKvgzH0JB0J9LEPgxOGT02RoETg==", + "version": "4.0.10", + "resolved": "https://registry.npmjs.org/string.prototype.matchall/-/string.prototype.matchall-4.0.10.tgz", + "integrity": "sha512-rGXbGmOEosIQi6Qva94HUjgPs9vKW+dkG7Y8Q5O2OYkWL6wFaTRZO8zM4mhP94uX55wgyrXzfS2aGtGzUL7EJQ==", "dev": true, "requires": { "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "es-abstract": "^1.19.1", - "get-intrinsic": "^1.1.1", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "get-intrinsic": "^1.2.1", "has-symbols": "^1.0.3", - "internal-slot": "^1.0.3", - "regexp.prototype.flags": "^1.4.1", + "internal-slot": "^1.0.5", + "regexp.prototype.flags": "^1.5.0", + "set-function-name": "^2.0.0", "side-channel": "^1.0.4" } }, @@ -33439,6 +33812,12 @@ } } }, + "supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true + }, "svgo": { "version": "2.8.0", "resolved": "https://registry.npmjs.org/svgo/-/svgo-2.8.0.tgz", @@ -33481,9 +33860,15 @@ }, "dependencies": { "ansi-regex": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", - "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "dev": true + }, + "emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", "dev": true }, "string-width": { @@ -33656,7 +34041,7 @@ "text-table": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", - "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", + "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, "thenify": { @@ -33678,7 +34063,7 @@ "through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", "dev": true }, "through2": { @@ -33742,7 +34127,6 @@ "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", - "dev": true, "requires": { "os-tmpdir": "~1.0.2" } @@ -33795,7 +34179,6 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - "dev": true, "requires": { "is-number": "^7.0.0" } @@ -33880,9 +34263,9 @@ "dev": true }, "tsutils": { - "version": "3.17.1", - "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.17.1.tgz", - "integrity": "sha512-kzeQ5B8H3w60nFY2g8cJIuH7JDpsALXySGtwGJ0p2LSjLgay3NdIpqq5SoOBe46bKDW2iq25irHCr8wjomUS2g==", + "version": "3.21.0", + "resolved": "https://registry.npmjs.org/tsutils/-/tsutils-3.21.0.tgz", + "integrity": "sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==", "dev": true, "requires": { "tslib": "^1.8.1" @@ -34096,16 +34479,10 @@ "crypto-random-string": "^2.0.0" } }, - "unistore": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/unistore/-/unistore-3.5.2.tgz", - "integrity": "sha512-2Aa4eX0Ua1umyiI3Eai6Li+wXYOHgaDBGOPB3Hvw7PAVuD30TAyh5kS4yNKb2fLDbQgizvPhKQRcYnOdfsm4VQ==" - }, "universalify": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", - "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", - "dev": true + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==" }, "unpipe": { "version": "1.0.0", @@ -34327,9 +34704,9 @@ "dev": true }, "v8-compile-cache": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.2.0.tgz", - "integrity": "sha512-gTpR5XQNKFwOd4clxfnhaqvfqMpqEwr4tOtCyz4MtYZX2JYhfr1JvBFKdS+7K/9rfpZR3VLX+YWBbKoxCgS43Q==", + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.4.0.tgz", + "integrity": "sha512-ocyWc3bAHBB/guyqJQVI5o4BZkPhznPYUG2ea80Gond/BgNWpap8TOmLSeeQG7bnh2KMISxskdADG59j7zruhw==", "dev": true }, "valid-url": { @@ -35041,6 +35418,46 @@ "is-symbol": "^1.0.3" } }, + "which-builtin-type": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/which-builtin-type/-/which-builtin-type-1.1.3.tgz", + "integrity": "sha512-YmjsSMDBYsM1CaFiayOVT06+KJeXf0o5M/CAd4o1lTadFAtacTUM49zoYxr/oroopFDfhvN6iEcBxUyc3gvKmw==", + "dev": true, + "requires": { + "function.prototype.name": "^1.1.5", + "has-tostringtag": "^1.0.0", + "is-async-function": "^2.0.0", + "is-date-object": "^1.0.5", + "is-finalizationregistry": "^1.0.2", + "is-generator-function": "^1.0.10", + "is-regex": "^1.1.4", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.1", + "which-typed-array": "^1.1.9" + }, + "dependencies": { + "isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "dev": true + } + } + }, + "which-collection": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/which-collection/-/which-collection-1.0.1.tgz", + "integrity": "sha512-W8xeTUwaln8i3K/cY1nGXzdnVZlidBcagyNFtBdD5kxnb4TvGKR7FfSIS3mYpwWS1QUCutfKz8IY8RjftB0+1A==", + "dev": true, + "requires": { + "is-map": "^2.0.1", + "is-set": "^2.0.1", + "is-weakmap": "^2.0.1", + "is-weakset": "^2.0.1" + } + }, "which-typed-array": { "version": "1.1.13", "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.13.tgz", @@ -35069,12 +35486,6 @@ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -35237,18 +35648,6 @@ "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", "dev": true }, - "fs-extra": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", - "dev": true, - "requires": { - "at-least-node": "^1.0.0", - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - } - }, "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", @@ -35278,16 +35677,6 @@ "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", "dev": true }, - "jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dev": true, - "requires": { - "graceful-fs": "^4.1.6", - "universalify": "^2.0.0" - } - }, "rollup-plugin-terser": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/rollup-plugin-terser/-/rollup-plugin-terser-7.0.2.tgz", @@ -35521,11 +35910,6 @@ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==" }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" - }, "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", @@ -35554,8 +35938,7 @@ "wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" }, "write": { "version": "1.0.3", @@ -35627,8 +36010,7 @@ "yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - "dev": true + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "yaml": { "version": "1.10.2", @@ -35656,12 +36038,6 @@ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", "dev": true }, - "emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "dev": true - }, "is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", diff --git a/package.json b/package.json index 4c754f882..0aacadebf 100644 --- a/package.json +++ b/package.json @@ -16,7 +16,8 @@ "prebuild": "rimraf build/assets && rimraf build/content", "lint": "eslint src test", "format": "prettier --write \"{src,test}/**/*.{css,js,json}\"", - "prepare": "husky install" + "prepare": "husky install", + "postinstall": "patch-package" }, "eslintConfig": { "extends": "developit", @@ -64,6 +65,7 @@ "jsdom": "^15.2.1", "lint-staged": "^15.2.0", "netlify-lambda": "^2.0.16", + "patch-package": "^8.0.0", "postcss-custom-properties": "^13.3.2", "postcss-import": "^14.0.0", "postcss-nesting": "^12.0.1", @@ -88,12 +90,11 @@ "node-fetch": "^2.6.1", "preact": "10.15.1", "preact-custom-element": "^4.3.0", + "preact-iso": "2.2.0", "preact-markup": "^2.1.1", "preact-render-to-string": "^5.2.6", - "preact-router": "^3.2.1", "rollup": "^2.79.1", "sucrase": "^3.32.0", - "unistore": "^3.5.1", "yaml": "^1.7.2" } } diff --git a/patches/preact-cli+4.0.0-next.6.patch b/patches/preact-cli+4.0.0-next.6.patch new file mode 100644 index 000000000..2836e08b2 --- /dev/null +++ b/patches/preact-cli+4.0.0-next.6.patch @@ -0,0 +1,57 @@ +diff --git a/node_modules/preact-cli/src/lib/webpack/prerender.js b/node_modules/preact-cli/src/lib/webpack/prerender.js +index 945a4e0..e8323d3 100644 +--- a/node_modules/preact-cli/src/lib/webpack/prerender.js ++++ b/node_modules/preact-cli/src/lib/webpack/prerender.js +@@ -2,7 +2,7 @@ const { red, yellow } = require('kleur'); + const { resolve } = require('path'); + const { readFileSync } = require('fs'); + const stackTrace = require('stack-trace'); +-const URL = require('url'); ++const { URL } = require('url'); + const { SourceMapConsumer } = require('source-map'); + + module.exports = async function (config, params) { +@@ -11,14 +11,14 @@ module.exports = async function (config, params) { + let entry = resolve(config.dest, './ssr-build/ssr-bundle.js'); + let url = params.url || '/'; + +- global.history = {}; +- global.location = { ...URL.parse(url) }; ++ global.history = /** @type {object} */ ({}); ++ global.location = /** @type {object} */ (new URL(url, 'http://localhost')); + + try { + let m = require(entry), +- app = (m && m.default) || m; ++ vnode = (m && m.default) || m; + +- if (typeof app !== 'function') { ++ if (typeof vnode !== 'function') { + // eslint-disable-next-line no-console + console.warn( + 'Entry does not export a Component function/class, aborting prerendering.' +@@ -29,7 +29,23 @@ module.exports = async function (config, params) { + const renderToString = require(require.resolve('preact-render-to-string', { + paths: [config.cwd], + })); +- return renderToString(preact.h(app, { ...params, url })); ++ ++ vnode = preact.h(vnode, { ...params, url }); ++ ++ // Slightly modified version of preact-iso's `prerender()` ++ let tries; ++ const maxDepth = 10; ++ const render = () => { ++ if (++tries > maxDepth) return; ++ try { ++ return renderToString(vnode); ++ } catch (e) { ++ if (e && e.then) return e.then(render); ++ throw e; ++ } ++ }; ++ ++ return await render(); + } catch (err) { + let stack = stackTrace.parse(err).filter(s => s.getFileName() === entry)[0]; + if (!stack) { diff --git a/size-plugin.json b/size-plugin.json index 4122968d4..7e466ff1a 100644 --- a/size-plugin.json +++ b/size-plugin.json @@ -1 +1 @@ -[{"timestamp":1673396152053,"files":[{"filename":"repl.setup.chunk.6dac1.esm.worker.js","previous":14170,"size":0,"diff":-14170},{"filename":"prism.b962a.worker.js","previous":7328,"size":7328,"diff":0},{"filename":"markdown.59662.worker.js","previous":10266,"size":10266,"diff":0},{"filename":"repl.00020.worker.js","previous":72402,"size":72402,"diff":0},{"filename":"0.chunk.df937.css","previous":1643,"size":0,"diff":-1643},{"filename":"0.chunk.*****.esm.js","previous":1545,"size":1542,"diff":-3},{"filename":"1.chunk.479bb.css","previous":1518,"size":0,"diff":-1518},{"filename":"1.chunk.*****.esm.js","previous":929,"size":929,"diff":0},{"filename":"bundle.c8ac2.css","previous":11013,"size":0,"diff":-11013},{"filename":"bundle.*****.esm.js","previous":29970,"size":31215,"diff":1245},{"filename":"editor.chunk.9c92c.css","previous":2246,"size":2246,"diff":0},{"filename":"editor.chunk.*****.esm.js","previous":67664,"size":67664,"diff":0},{"filename":"emoji.chunk.*****.esm.js","previous":8859,"size":8859,"diff":0},{"filename":"polyfills.*****.esm.js","previous":2307,"size":2303,"diff":-4},{"filename":"runner.chunk.*****.esm.js","previous":1750,"size":1751,"diff":1},{"filename":"7.chunk.00b33.css","previous":2865,"size":0,"diff":-2865},{"filename":"7.chunk.*****.esm.js","previous":3244,"size":3245,"diff":1},{"filename":"8.chunk.*****.esm.js","previous":2654,"size":2654,"diff":0},{"filename":"sw-esm.js","previous":13957,"size":14014,"diff":57},{"filename":"sw.js","previous":14031,"size":14087,"diff":56},{"filename":"prism.7b8fd.worker.js","previous":7423,"size":7423,"diff":0},{"filename":"markdown.cc98c.worker.js","previous":10713,"size":10713,"diff":0},{"filename":"repl.setup.chunk.994b2.worker.js","previous":14262,"size":0,"diff":-14262},{"filename":"repl.06670.worker.js","previous":77881,"size":77881,"diff":0},{"filename":"0.chunk.c6003.js","previous":2039,"size":0,"diff":-2039},{"filename":"1.chunk.7ce49.js","previous":926,"size":0,"diff":-926},{"filename":"bundle.b7cb3.js","previous":32849,"size":0,"diff":-32849},{"filename":"editor.chunk.91204.js","previous":68488,"size":68488,"diff":0},{"filename":"emoji.chunk.556dc.js","previous":8849,"size":8849,"diff":0},{"filename":"polyfills.b2760.js","previous":2389,"size":0,"diff":-2389},{"filename":"runner.chunk.a4c21.js","previous":2621,"size":0,"diff":-2621},{"filename":"7.chunk.7870a.js","previous":4330,"size":0,"diff":-4330},{"filename":"8.chunk.7b519.js","previous":3839,"size":3839,"diff":0},{"filename":"index.html","previous":8888,"size":8901,"diff":13},{"filename":"branding/index.html","previous":3375,"size":3561,"diff":186},{"filename":"tutorial/01-vdom/index.html","previous":7075,"size":7305,"diff":230},{"filename":"tutorial/02-events/index.html","previous":4211,"size":4438,"diff":227},{"filename":"tutorial/03-components/index.html","previous":7700,"size":7934,"diff":234},{"filename":"tutorial/04-state/index.html","previous":6090,"size":6322,"diff":232},{"filename":"tutorial/05-refs/index.html","previous":5552,"size":5778,"diff":226},{"filename":"tutorial/06-context/index.html","previous":8659,"size":8887,"diff":228},{"filename":"tutorial/07-side-effects/index.html","previous":5925,"size":6130,"diff":205},{"filename":"tutorial/08-keys/index.html","previous":7734,"size":7973,"diff":239},{"filename":"tutorial/09-error-handling/index.html","previous":5224,"size":5451,"diff":227},{"filename":"tutorial/10-links/index.html","previous":3746,"size":3974,"diff":228},{"filename":"tutorial/index.html","previous":3212,"size":3434,"diff":222},{"filename":"about/we-are-using/index.html","previous":4820,"size":5027,"diff":207},{"filename":"about/libraries-addons/index.html","previous":6011,"size":6199,"diff":188},{"filename":"about/demos-examples/index.html","previous":6312,"size":6490,"diff":178},{"filename":"about/project-goals/index.html","previous":3872,"size":4051,"diff":179},{"filename":"about/browser-support/index.html","previous":3377,"size":3554,"diff":177},{"filename":"blog/index.html","previous":3718,"size":4057,"diff":339},{"filename":"repl/index.html","previous":2134,"size":2364,"diff":230},{"filename":"guide/v8/getting-started/index.html","previous":7456,"size":7638,"diff":182},{"filename":"guide/v8/differences-to-react/index.html","previous":6208,"size":6389,"diff":181},{"filename":"guide/v8/switching-to-preact/index.html","previous":10000,"size":10187,"diff":187},{"filename":"guide/v8/types-of-components/index.html","previous":4789,"size":4966,"diff":177},{"filename":"guide/v8/api-reference/index.html","previous":5697,"size":5875,"diff":178},{"filename":"guide/v8/forms/index.html","previous":5117,"size":5298,"diff":181},{"filename":"guide/v8/linked-state/index.html","previous":6379,"size":6557,"diff":178},{"filename":"guide/v8/external-dom-mutations/index.html","previous":5069,"size":5249,"diff":180},{"filename":"guide/v8/extending-component/index.html","previous":4828,"size":5003,"diff":175},{"filename":"guide/v8/unit-testing-with-enzyme/index.html","previous":7928,"size":8113,"diff":185},{"filename":"guide/v8/progressive-web-apps/index.html","previous":5697,"size":5876,"diff":179},{"filename":"guide/v10/getting-started/index.html","previous":9220,"size":9400,"diff":180},{"filename":"guide/v10/whats-new/index.html","previous":7209,"size":7385,"diff":176},{"filename":"guide/v10/upgrade-guide/index.html","previous":8808,"size":9057,"diff":249},{"filename":"guide/v10/tutorial/index.html","previous":9071,"size":9320,"diff":249},{"filename":"guide/v10/components/index.html","previous":8339,"size":8528,"diff":189},{"filename":"guide/v10/hooks/index.html","previous":15042,"size":15289,"diff":247},{"filename":"guide/v10/signals/index.html","previous":18716,"size":18964,"diff":248},{"filename":"guide/v10/forms/index.html","previous":7451,"size":7635,"diff":184},{"filename":"guide/v10/refs/index.html","previous":6021,"size":6199,"diff":178},{"filename":"guide/v10/context/index.html","previous":5747,"size":5924,"diff":177},{"filename":"guide/v10/debugging/index.html","previous":8282,"size":8462,"diff":180},{"filename":"guide/v10/preact-testing-library/index.html","previous":10792,"size":11050,"diff":258},{"filename":"guide/v10/unit-testing-with-enzyme/index.html","previous":8362,"size":8545,"diff":183},{"filename":"guide/v10/differences-to-react/index.html","previous":10951,"size":11197,"diff":246},{"filename":"guide/v10/switching-to-preact/index.html","previous":7038,"size":7209,"diff":171},{"filename":"guide/v10/api-reference/index.html","previous":8127,"size":8371,"diff":244},{"filename":"guide/v10/web-components/index.html","previous":8198,"size":8374,"diff":176},{"filename":"guide/v10/progressive-web-apps/index.html","previous":5954,"size":6128,"diff":174},{"filename":"guide/v10/server-side-rendering/index.html","previous":5020,"size":5197,"diff":177},{"filename":"guide/v10/external-dom-mutations/index.html","previous":5427,"size":5606,"diff":179},{"filename":"guide/v10/options/index.html","previous":5651,"size":5782,"diff":131},{"filename":"guide/v10/typescript/index.html","previous":13632,"size":13881,"diff":249},{"filename":"guide/v10/cli/index.html","previous":4323,"size":4500,"diff":177},{"filename":"guide/v10/cli/getting-started/index.html","previous":5151,"size":5323,"diff":172},{"filename":"guide/v10/cli/service-worker/index.html","previous":6368,"size":6544,"diff":176},{"filename":"guide/v10/cli/pre-rendering/index.html","previous":7220,"size":7420,"diff":200},{"filename":"blog/introducing-signals/index.html","previous":10329,"size":10668,"diff":339},{"filename":"200.html","previous":885,"size":923,"diff":38},{"filename":"repl.setup.chunk.909cd.esm.worker.js","previous":0,"size":14206,"diff":14206},{"filename":"0.chunk.4590c.css","previous":0,"size":1689,"diff":1689},{"filename":"1.chunk.5465b.css","previous":0,"size":1522,"diff":1522},{"filename":"bundle.8f091.css","previous":0,"size":11401,"diff":11401},{"filename":"7.chunk.43555.css","previous":0,"size":2946,"diff":2946},{"filename":"repl.setup.chunk.ca99a.worker.js","previous":0,"size":14292,"diff":14292},{"filename":"0.chunk.c1256.js","previous":0,"size":2039,"diff":2039},{"filename":"1.chunk.ca34d.js","previous":0,"size":926,"diff":926},{"filename":"bundle.c495f.js","previous":0,"size":34142,"diff":34142},{"filename":"polyfills.fd9fb.js","previous":0,"size":2405,"diff":2405},{"filename":"runner.chunk.031c2.js","previous":0,"size":2620,"diff":2620},{"filename":"7.chunk.ff073.js","previous":0,"size":4329,"diff":4329},{"filename":"blog/signal-boosting/index.html","previous":0,"size":16340,"diff":16340}]},{"timestamp":1663413564084,"files":[{"filename":"repl.setup.chunk.6dac1.esm.worker.js","previous":14170,"size":14170,"diff":0},{"filename":"prism.b962a.worker.js","previous":7328,"size":7328,"diff":0},{"filename":"markdown.59662.worker.js","previous":10266,"size":10266,"diff":0},{"filename":"repl.00020.worker.js","previous":72402,"size":72402,"diff":0},{"filename":"0.chunk.df937.css","previous":1643,"size":1643,"diff":0},{"filename":"0.chunk.*****.esm.js","previous":1545,"size":1545,"diff":0},{"filename":"1.chunk.479bb.css","previous":1518,"size":1518,"diff":0},{"filename":"1.chunk.*****.esm.js","previous":929,"size":929,"diff":0},{"filename":"bundle.c8ac2.css","previous":11013,"size":11013,"diff":0},{"filename":"bundle.*****.esm.js","previous":29970,"size":29970,"diff":0},{"filename":"editor.chunk.9c92c.css","previous":2246,"size":2246,"diff":0},{"filename":"editor.chunk.*****.esm.js","previous":67664,"size":67664,"diff":0},{"filename":"emoji.chunk.*****.esm.js","previous":8859,"size":8859,"diff":0},{"filename":"polyfills.*****.esm.js","previous":2307,"size":2307,"diff":0},{"filename":"runner.chunk.*****.esm.js","previous":1750,"size":1750,"diff":0},{"filename":"7.chunk.00b33.css","previous":2865,"size":2865,"diff":0},{"filename":"7.chunk.*****.esm.js","previous":3244,"size":3244,"diff":0},{"filename":"8.chunk.*****.esm.js","previous":2654,"size":2654,"diff":0},{"filename":"sw-esm.js","previous":13958,"size":13957,"diff":-1},{"filename":"sw.js","previous":14032,"size":14031,"diff":-1},{"filename":"prism.7b8fd.worker.js","previous":7423,"size":7423,"diff":0},{"filename":"markdown.cc98c.worker.js","previous":10713,"size":10713,"diff":0},{"filename":"repl.setup.chunk.994b2.worker.js","previous":14262,"size":14262,"diff":0},{"filename":"repl.06670.worker.js","previous":77881,"size":77881,"diff":0},{"filename":"0.chunk.c6003.js","previous":2039,"size":2039,"diff":0},{"filename":"1.chunk.7ce49.js","previous":926,"size":926,"diff":0},{"filename":"bundle.b7cb3.js","previous":32849,"size":32849,"diff":0},{"filename":"editor.chunk.91204.js","previous":68488,"size":68488,"diff":0},{"filename":"emoji.chunk.556dc.js","previous":8849,"size":8849,"diff":0},{"filename":"polyfills.b2760.js","previous":2389,"size":2389,"diff":0},{"filename":"runner.chunk.a4c21.js","previous":2621,"size":2621,"diff":0},{"filename":"7.chunk.7870a.js","previous":4330,"size":4330,"diff":0},{"filename":"8.chunk.7b519.js","previous":3839,"size":3839,"diff":0},{"filename":"index.html","previous":14625,"size":8888,"diff":-5737},{"filename":"branding/index.html","previous":7945,"size":3375,"diff":-4570},{"filename":"tutorial/01-vdom/index.html","previous":12212,"size":7075,"diff":-5137},{"filename":"tutorial/02-events/index.html","previous":9174,"size":4211,"diff":-4963},{"filename":"tutorial/03-components/index.html","previous":12770,"size":7700,"diff":-5070},{"filename":"tutorial/04-state/index.html","previous":11145,"size":6090,"diff":-5055},{"filename":"tutorial/05-refs/index.html","previous":10408,"size":5552,"diff":-4856},{"filename":"tutorial/06-context/index.html","previous":13774,"size":8659,"diff":-5115},{"filename":"tutorial/07-side-effects/index.html","previous":11070,"size":5925,"diff":-5145},{"filename":"tutorial/08-keys/index.html","previous":12890,"size":7734,"diff":-5156},{"filename":"tutorial/09-error-handling/index.html","previous":10106,"size":5224,"diff":-4882},{"filename":"tutorial/10-links/index.html","previous":8269,"size":3746,"diff":-4523},{"filename":"tutorial/index.html","previous":7389,"size":3212,"diff":-4177},{"filename":"about/we-are-using/index.html","previous":9596,"size":4820,"diff":-4776},{"filename":"about/libraries-addons/index.html","previous":10612,"size":6011,"diff":-4601},{"filename":"about/demos-examples/index.html","previous":10992,"size":6312,"diff":-4680},{"filename":"about/project-goals/index.html","previous":8472,"size":3872,"diff":-4600},{"filename":"about/browser-support/index.html","previous":7811,"size":3377,"diff":-4434},{"filename":"blog/index.html","previous":8386,"size":3718,"diff":-4668},{"filename":"repl/index.html","previous":5324,"size":2134,"diff":-3190},{"filename":"guide/v8/getting-started/index.html","previous":12870,"size":7456,"diff":-5414},{"filename":"guide/v8/differences-to-react/index.html","previous":11168,"size":6208,"diff":-4960},{"filename":"guide/v8/switching-to-preact/index.html","previous":15273,"size":10000,"diff":-5273},{"filename":"guide/v8/types-of-components/index.html","previous":10032,"size":4789,"diff":-5243},{"filename":"guide/v8/api-reference/index.html","previous":11069,"size":5697,"diff":-5372},{"filename":"guide/v8/forms/index.html","previous":10345,"size":5117,"diff":-5228},{"filename":"guide/v8/linked-state/index.html","previous":11590,"size":6379,"diff":-5211},{"filename":"guide/v8/external-dom-mutations/index.html","previous":10165,"size":5069,"diff":-5096},{"filename":"guide/v8/extending-component/index.html","previous":9902,"size":4828,"diff":-5074},{"filename":"guide/v8/unit-testing-with-enzyme/index.html","previous":13069,"size":7928,"diff":-5141},{"filename":"guide/v8/progressive-web-apps/index.html","previous":10773,"size":5697,"diff":-5076},{"filename":"guide/v10/getting-started/index.html","previous":14515,"size":9220,"diff":-5295},{"filename":"guide/v10/whats-new/index.html","previous":12419,"size":7209,"diff":-5210},{"filename":"guide/v10/upgrade-guide/index.html","previous":14225,"size":8808,"diff":-5417},{"filename":"guide/v10/tutorial/index.html","previous":14337,"size":9071,"diff":-5266},{"filename":"guide/v10/components/index.html","previous":13759,"size":8339,"diff":-5420},{"filename":"guide/v10/hooks/index.html","previous":20354,"size":15042,"diff":-5312},{"filename":"guide/v10/signals/index.html","previous":24045,"size":18716,"diff":-5329},{"filename":"guide/v10/forms/index.html","previous":12703,"size":7451,"diff":-5252},{"filename":"guide/v10/refs/index.html","previous":11257,"size":6021,"diff":-5236},{"filename":"guide/v10/context/index.html","previous":11003,"size":5747,"diff":-5256},{"filename":"guide/v10/debugging/index.html","previous":13679,"size":8282,"diff":-5397},{"filename":"guide/v10/preact-testing-library/index.html","previous":16043,"size":10792,"diff":-5251},{"filename":"guide/v10/unit-testing-with-enzyme/index.html","previous":13519,"size":8362,"diff":-5157},{"filename":"guide/v10/differences-to-react/index.html","previous":16205,"size":10951,"diff":-5254},{"filename":"guide/v10/switching-to-preact/index.html","previous":12237,"size":7038,"diff":-5199},{"filename":"guide/v10/api-reference/index.html","previous":13442,"size":8127,"diff":-5315},{"filename":"guide/v10/web-components/index.html","previous":13444,"size":8198,"diff":-5246},{"filename":"guide/v10/progressive-web-apps/index.html","previous":11042,"size":5954,"diff":-5088},{"filename":"guide/v10/server-side-rendering/index.html","previous":10238,"size":5020,"diff":-5218},{"filename":"guide/v10/external-dom-mutations/index.html","previous":10617,"size":5427,"diff":-5190},{"filename":"guide/v10/options/index.html","previous":10830,"size":5651,"diff":-5179},{"filename":"guide/v10/typescript/index.html","previous":18886,"size":13632,"diff":-5254},{"filename":"guide/v10/cli/index.html","previous":9120,"size":4323,"diff":-4797},{"filename":"guide/v10/cli/getting-started/index.html","previous":10347,"size":5151,"diff":-5196},{"filename":"guide/v10/cli/service-worker/index.html","previous":11479,"size":6368,"diff":-5111},{"filename":"guide/v10/cli/pre-rendering/index.html","previous":12334,"size":7220,"diff":-5114},{"filename":"blog/introducing-signals/index.html","previous":15229,"size":10329,"diff":-4900},{"filename":"200.html","previous":1805,"size":885,"diff":-920}]},{"timestamp":1663409318240,"files":[{"filename":"ssr-build/editor.chunk.6005b.js","previous":68029,"size":0,"diff":-68029},{"filename":"ssr-build/editor.chunk.9c92c.css","previous":3271,"size":0,"diff":-3271},{"filename":"ssr-build/emoji.chunk.ebc97.js","previous":8834,"size":0,"diff":-8834},{"filename":"ssr-build/markdown.3384a.worker.js","previous":10635,"size":0,"diff":-10635},{"filename":"ssr-build/prism.7da98.worker.js","previous":7286,"size":0,"diff":-7286},{"filename":"ssr-build/repl.c8b7e.worker.js","previous":78601,"size":0,"diff":-78601},{"filename":"ssr-build/repl.setup.chunk.69705.worker.js","previous":14104,"size":0,"diff":-14104},{"filename":"ssr-build/runner.chunk.3ffd6.js","previous":2651,"size":0,"diff":-2651},{"filename":"ssr-build/ssr-bundle.d9fd4.css","previous":15972,"size":0,"diff":-15972},{"filename":"ssr-build/ssr-bundle.js","previous":40287,"size":0,"diff":-40287},{"filename":"repl.setup.chunk.6dac1.esm.worker.js","previous":0,"size":14170,"diff":14170},{"filename":"prism.b962a.worker.js","previous":0,"size":7328,"diff":7328},{"filename":"markdown.59662.worker.js","previous":0,"size":10266,"diff":10266},{"filename":"repl.00020.worker.js","previous":0,"size":72402,"diff":72402},{"filename":"0.chunk.df937.css","previous":0,"size":1643,"diff":1643},{"filename":"0.chunk.*****.esm.js","previous":0,"size":1545,"diff":1545},{"filename":"1.chunk.479bb.css","previous":0,"size":1518,"diff":1518},{"filename":"1.chunk.*****.esm.js","previous":0,"size":929,"diff":929},{"filename":"bundle.c8ac2.css","previous":0,"size":11013,"diff":11013},{"filename":"bundle.*****.esm.js","previous":0,"size":29970,"diff":29970},{"filename":"editor.chunk.9c92c.css","previous":0,"size":2246,"diff":2246},{"filename":"editor.chunk.*****.esm.js","previous":0,"size":67664,"diff":67664},{"filename":"emoji.chunk.*****.esm.js","previous":0,"size":8859,"diff":8859},{"filename":"polyfills.*****.esm.js","previous":0,"size":2307,"diff":2307},{"filename":"runner.chunk.*****.esm.js","previous":0,"size":1750,"diff":1750},{"filename":"7.chunk.00b33.css","previous":0,"size":2865,"diff":2865},{"filename":"7.chunk.*****.esm.js","previous":0,"size":3244,"diff":3244},{"filename":"8.chunk.*****.esm.js","previous":0,"size":2654,"diff":2654},{"filename":"sw-esm.js","previous":0,"size":13958,"diff":13958},{"filename":"sw.js","previous":0,"size":14032,"diff":14032},{"filename":"prism.7b8fd.worker.js","previous":0,"size":7423,"diff":7423},{"filename":"markdown.cc98c.worker.js","previous":0,"size":10713,"diff":10713},{"filename":"repl.setup.chunk.994b2.worker.js","previous":0,"size":14262,"diff":14262},{"filename":"repl.06670.worker.js","previous":0,"size":77881,"diff":77881},{"filename":"0.chunk.c6003.js","previous":0,"size":2039,"diff":2039},{"filename":"1.chunk.7ce49.js","previous":0,"size":926,"diff":926},{"filename":"bundle.b7cb3.js","previous":0,"size":32849,"diff":32849},{"filename":"editor.chunk.91204.js","previous":0,"size":68488,"diff":68488},{"filename":"emoji.chunk.556dc.js","previous":0,"size":8849,"diff":8849},{"filename":"polyfills.b2760.js","previous":0,"size":2389,"diff":2389},{"filename":"runner.chunk.a4c21.js","previous":0,"size":2621,"diff":2621},{"filename":"7.chunk.7870a.js","previous":0,"size":4330,"diff":4330},{"filename":"8.chunk.7b519.js","previous":0,"size":3839,"diff":3839},{"filename":"index.html","previous":0,"size":14625,"diff":14625},{"filename":"branding/index.html","previous":0,"size":7945,"diff":7945},{"filename":"tutorial/01-vdom/index.html","previous":0,"size":12212,"diff":12212},{"filename":"tutorial/02-events/index.html","previous":0,"size":9174,"diff":9174},{"filename":"tutorial/03-components/index.html","previous":0,"size":12770,"diff":12770},{"filename":"tutorial/04-state/index.html","previous":0,"size":11145,"diff":11145},{"filename":"tutorial/05-refs/index.html","previous":0,"size":10408,"diff":10408},{"filename":"tutorial/06-context/index.html","previous":0,"size":13774,"diff":13774},{"filename":"tutorial/07-side-effects/index.html","previous":0,"size":11070,"diff":11070},{"filename":"tutorial/08-keys/index.html","previous":0,"size":12890,"diff":12890},{"filename":"tutorial/09-error-handling/index.html","previous":0,"size":10106,"diff":10106},{"filename":"tutorial/10-links/index.html","previous":0,"size":8269,"diff":8269},{"filename":"tutorial/index.html","previous":0,"size":7389,"diff":7389},{"filename":"about/we-are-using/index.html","previous":0,"size":9596,"diff":9596},{"filename":"about/libraries-addons/index.html","previous":0,"size":10612,"diff":10612},{"filename":"about/demos-examples/index.html","previous":0,"size":10992,"diff":10992},{"filename":"about/project-goals/index.html","previous":0,"size":8472,"diff":8472},{"filename":"about/browser-support/index.html","previous":0,"size":7811,"diff":7811},{"filename":"blog/index.html","previous":0,"size":8386,"diff":8386},{"filename":"repl/index.html","previous":0,"size":5324,"diff":5324},{"filename":"guide/v8/getting-started/index.html","previous":0,"size":12870,"diff":12870},{"filename":"guide/v8/differences-to-react/index.html","previous":0,"size":11168,"diff":11168},{"filename":"guide/v8/switching-to-preact/index.html","previous":0,"size":15273,"diff":15273},{"filename":"guide/v8/types-of-components/index.html","previous":0,"size":10032,"diff":10032},{"filename":"guide/v8/api-reference/index.html","previous":0,"size":11069,"diff":11069},{"filename":"guide/v8/forms/index.html","previous":0,"size":10345,"diff":10345},{"filename":"guide/v8/linked-state/index.html","previous":0,"size":11590,"diff":11590},{"filename":"guide/v8/external-dom-mutations/index.html","previous":0,"size":10165,"diff":10165},{"filename":"guide/v8/extending-component/index.html","previous":0,"size":9902,"diff":9902},{"filename":"guide/v8/unit-testing-with-enzyme/index.html","previous":0,"size":13069,"diff":13069},{"filename":"guide/v8/progressive-web-apps/index.html","previous":0,"size":10773,"diff":10773},{"filename":"guide/v10/getting-started/index.html","previous":0,"size":14515,"diff":14515},{"filename":"guide/v10/whats-new/index.html","previous":0,"size":12419,"diff":12419},{"filename":"guide/v10/upgrade-guide/index.html","previous":0,"size":14225,"diff":14225},{"filename":"guide/v10/tutorial/index.html","previous":0,"size":14337,"diff":14337},{"filename":"guide/v10/components/index.html","previous":0,"size":13759,"diff":13759},{"filename":"guide/v10/hooks/index.html","previous":0,"size":20354,"diff":20354},{"filename":"guide/v10/signals/index.html","previous":0,"size":24045,"diff":24045},{"filename":"guide/v10/forms/index.html","previous":0,"size":12703,"diff":12703},{"filename":"guide/v10/refs/index.html","previous":0,"size":11257,"diff":11257},{"filename":"guide/v10/context/index.html","previous":0,"size":11003,"diff":11003},{"filename":"guide/v10/debugging/index.html","previous":0,"size":13679,"diff":13679},{"filename":"guide/v10/preact-testing-library/index.html","previous":0,"size":16043,"diff":16043},{"filename":"guide/v10/unit-testing-with-enzyme/index.html","previous":0,"size":13519,"diff":13519},{"filename":"guide/v10/differences-to-react/index.html","previous":0,"size":16205,"diff":16205},{"filename":"guide/v10/switching-to-preact/index.html","previous":0,"size":12237,"diff":12237},{"filename":"guide/v10/api-reference/index.html","previous":0,"size":13442,"diff":13442},{"filename":"guide/v10/web-components/index.html","previous":0,"size":13444,"diff":13444},{"filename":"guide/v10/progressive-web-apps/index.html","previous":0,"size":11042,"diff":11042},{"filename":"guide/v10/server-side-rendering/index.html","previous":0,"size":10238,"diff":10238},{"filename":"guide/v10/external-dom-mutations/index.html","previous":0,"size":10617,"diff":10617},{"filename":"guide/v10/options/index.html","previous":0,"size":10830,"diff":10830},{"filename":"guide/v10/typescript/index.html","previous":0,"size":18886,"diff":18886},{"filename":"guide/v10/cli/index.html","previous":0,"size":9120,"diff":9120},{"filename":"guide/v10/cli/getting-started/index.html","previous":0,"size":10347,"diff":10347},{"filename":"guide/v10/cli/service-worker/index.html","previous":0,"size":11479,"diff":11479},{"filename":"guide/v10/cli/pre-rendering/index.html","previous":0,"size":12334,"diff":12334},{"filename":"blog/introducing-signals/index.html","previous":0,"size":15229,"diff":15229},{"filename":"200.html","previous":0,"size":1805,"diff":1805}]}] +[{"timestamp":1707116993852,"files":[{"filename":"sw.js","previous":9263,"size":0,"diff":-9263},{"filename":"index.html","previous":7762,"size":7762,"diff":0},{"filename":"branding/index.html","previous":2869,"size":2868,"diff":-1},{"filename":"tutorial/01-vdom/index.html","previous":6393,"size":6392,"diff":-1},{"filename":"tutorial/02-events/index.html","previous":3932,"size":3931,"diff":-1},{"filename":"tutorial/03-components/index.html","previous":6220,"size":6220,"diff":0},{"filename":"tutorial/04-state/index.html","previous":5018,"size":5018,"diff":0},{"filename":"tutorial/05-refs/index.html","previous":4682,"size":4681,"diff":-1},{"filename":"tutorial/06-context/index.html","previous":6479,"size":6478,"diff":-1},{"filename":"tutorial/07-side-effects/index.html","previous":5122,"size":5121,"diff":-1},{"filename":"tutorial/08-keys/index.html","previous":6282,"size":6281,"diff":-1},{"filename":"tutorial/09-error-handling/index.html","previous":4526,"size":4525,"diff":-1},{"filename":"tutorial/10-links/index.html","previous":3102,"size":3101,"diff":-1},{"filename":"tutorial/index.html","previous":3261,"size":3260,"diff":-1},{"filename":"about/we-are-using/index.html","previous":4280,"size":4279,"diff":-1},{"filename":"about/libraries-addons/index.html","previous":4890,"size":4889,"diff":-1},{"filename":"about/demos-examples/index.html","previous":5034,"size":5034,"diff":0},{"filename":"about/project-goals/index.html","previous":3208,"size":3209,"diff":1},{"filename":"about/browser-support/index.html","previous":2821,"size":2820,"diff":-1},{"filename":"blog/index.html","previous":3388,"size":3387,"diff":-1},{"filename":"repl/index.html","previous":2452,"size":2451,"diff":-1},{"filename":"guide/v8/getting-started/index.html","previous":6502,"size":6502,"diff":0},{"filename":"guide/v8/differences-to-react/index.html","previous":5628,"size":5627,"diff":-1},{"filename":"guide/v8/switching-to-preact/index.html","previous":8493,"size":8492,"diff":-1},{"filename":"guide/v8/types-of-components/index.html","previous":4544,"size":4543,"diff":-1},{"filename":"guide/v8/api-reference/index.html","previous":5121,"size":5120,"diff":-1},{"filename":"guide/v8/forms/index.html","previous":4822,"size":4821,"diff":-1},{"filename":"guide/v8/linked-state/index.html","previous":5799,"size":5799,"diff":0},{"filename":"guide/v8/external-dom-mutations/index.html","previous":4844,"size":4843,"diff":-1},{"filename":"guide/v8/extending-component/index.html","previous":4517,"size":4516,"diff":-1},{"filename":"guide/v8/unit-testing-with-enzyme/index.html","previous":6718,"size":6718,"diff":0},{"filename":"guide/v8/progressive-web-apps/index.html","previous":5376,"size":5375,"diff":-1},{"filename":"guide/v10/getting-started/index.html","previous":9006,"size":9005,"diff":-1},{"filename":"guide/v10/whats-new/index.html","previous":6523,"size":6522,"diff":-1},{"filename":"guide/v10/upgrade-guide/index.html","previous":7779,"size":7778,"diff":-1},{"filename":"guide/v10/tutorial/index.html","previous":7640,"size":7639,"diff":-1},{"filename":"guide/v10/components/index.html","previous":7470,"size":7469,"diff":-1},{"filename":"guide/v10/hooks/index.html","previous":11456,"size":11455,"diff":-1},{"filename":"guide/v10/signals/index.html","previous":13592,"size":13592,"diff":0},{"filename":"guide/v10/forms/index.html","previous":6592,"size":6591,"diff":-1},{"filename":"guide/v10/refs/index.html","previous":5537,"size":5536,"diff":-1},{"filename":"guide/v10/context/index.html","previous":5366,"size":5365,"diff":-1},{"filename":"guide/v10/debugging/index.html","previous":7263,"size":7262,"diff":-1},{"filename":"guide/v10/preact-testing-library/index.html","previous":8580,"size":8579,"diff":-1},{"filename":"guide/v10/unit-testing-with-enzyme/index.html","previous":7053,"size":7052,"diff":-1},{"filename":"guide/v10/differences-to-react/index.html","previous":9330,"size":9329,"diff":-1},{"filename":"guide/v10/switching-to-preact/index.html","previous":6167,"size":6166,"diff":-1},{"filename":"guide/v10/api-reference/index.html","previous":7135,"size":7134,"diff":-1},{"filename":"guide/v10/web-components/index.html","previous":7095,"size":7094,"diff":-1},{"filename":"guide/v10/progressive-web-apps/index.html","previous":5479,"size":5479,"diff":0},{"filename":"guide/v10/server-side-rendering/index.html","previous":4723,"size":4722,"diff":-1},{"filename":"guide/v10/external-dom-mutations/index.html","previous":5067,"size":5066,"diff":-1},{"filename":"guide/v10/options/index.html","previous":5243,"size":5241,"diff":-2},{"filename":"guide/v10/typescript/index.html","previous":9898,"size":9897,"diff":-1},{"filename":"blog/introducing-signals/index.html","previous":9097,"size":9095,"diff":-2},{"filename":"200.html","previous":885,"size":0,"diff":-885},{"filename":"blog/signal-boosting/index.html","previous":12428,"size":12427,"diff":-1},{"filename":"bundle.*****.js","previous":35565,"size":35415,"diff":-150},{"filename":"dom-polyfills.*****.js","previous":2031,"size":2031,"diff":0},{"filename":"polyfills.*****.js","previous":2148,"size":2148,"diff":0},{"filename":"114.chunk.*****.js","previous":2748,"size":0,"diff":-2748},{"filename":"242.chunk.*****.js","previous":410,"size":410,"diff":0},{"filename":"526.chunk.*****.js","previous":3589,"size":3589,"diff":0},{"filename":"marked-worker.chunk.*****.js","previous":9171,"size":9171,"diff":0},{"filename":"emoji.chunk.*****.js","previous":8815,"size":8815,"diff":0},{"filename":"prism-worker.chunk.*****.js","previous":6240,"size":6240,"diff":0},{"filename":"editor.chunk.*****.js","previous":67303,"size":67303,"diff":0},{"filename":"runner.chunk.*****.js","previous":1619,"size":1619,"diff":0},{"filename":"repl-worker.chunk.*****.js","previous":196419,"size":196419,"diff":0},{"filename":"558.chunk.*****.js","previous":1813,"size":1813,"diff":0},{"filename":"21.chunk.*****.js","previous":1399,"size":1399,"diff":0},{"filename":"409.chunk.*****.js","previous":946,"size":946,"diff":0},{"filename":"bundle.*****.css","previous":13570,"size":13570,"diff":0},{"filename":"editor.chunk.*****.css","previous":2267,"size":2267,"diff":0},{"filename":"409.chunk.*****.css","previous":952,"size":952,"diff":0},{"filename":"431.chunk.*****.js","previous":0,"size":2769,"diff":2769}]},{"timestamp":1707116821458,"files":[{"filename":"sw.js","previous":9264,"size":9263,"diff":-1},{"filename":"index.html","previous":7762,"size":7762,"diff":0},{"filename":"branding/index.html","previous":2868,"size":2869,"diff":1},{"filename":"tutorial/01-vdom/index.html","previous":7910,"size":6393,"diff":-1517},{"filename":"tutorial/02-events/index.html","previous":4624,"size":3932,"diff":-692},{"filename":"tutorial/03-components/index.html","previous":8145,"size":6220,"diff":-1925},{"filename":"tutorial/04-state/index.html","previous":6535,"size":5018,"diff":-1517},{"filename":"tutorial/05-refs/index.html","previous":5969,"size":4682,"diff":-1287},{"filename":"tutorial/06-context/index.html","previous":9117,"size":6479,"diff":-2638},{"filename":"tutorial/07-side-effects/index.html","previous":6337,"size":5122,"diff":-1215},{"filename":"tutorial/08-keys/index.html","previous":8249,"size":6282,"diff":-1967},{"filename":"tutorial/09-error-handling/index.html","previous":5644,"size":4526,"diff":-1118},{"filename":"tutorial/10-links/index.html","previous":4155,"size":3102,"diff":-1053},{"filename":"tutorial/index.html","previous":3483,"size":3261,"diff":-222},{"filename":"about/we-are-using/index.html","previous":4280,"size":4280,"diff":0},{"filename":"about/libraries-addons/index.html","previous":4890,"size":4890,"diff":0},{"filename":"about/demos-examples/index.html","previous":5034,"size":5034,"diff":0},{"filename":"about/project-goals/index.html","previous":3209,"size":3208,"diff":-1},{"filename":"about/browser-support/index.html","previous":2821,"size":2821,"diff":0},{"filename":"blog/index.html","previous":3388,"size":3388,"diff":0},{"filename":"repl/index.html","previous":2452,"size":2452,"diff":0},{"filename":"guide/v8/getting-started/index.html","previous":6502,"size":6502,"diff":0},{"filename":"guide/v8/differences-to-react/index.html","previous":5628,"size":5628,"diff":0},{"filename":"guide/v8/switching-to-preact/index.html","previous":8493,"size":8493,"diff":0},{"filename":"guide/v8/types-of-components/index.html","previous":4544,"size":4544,"diff":0},{"filename":"guide/v8/api-reference/index.html","previous":5121,"size":5121,"diff":0},{"filename":"guide/v8/forms/index.html","previous":4822,"size":4822,"diff":0},{"filename":"guide/v8/linked-state/index.html","previous":5799,"size":5799,"diff":0},{"filename":"guide/v8/external-dom-mutations/index.html","previous":4844,"size":4844,"diff":0},{"filename":"guide/v8/extending-component/index.html","previous":4517,"size":4517,"diff":0},{"filename":"guide/v8/unit-testing-with-enzyme/index.html","previous":6718,"size":6718,"diff":0},{"filename":"guide/v8/progressive-web-apps/index.html","previous":5376,"size":5376,"diff":0},{"filename":"guide/v10/getting-started/index.html","previous":9006,"size":9006,"diff":0},{"filename":"guide/v10/whats-new/index.html","previous":6523,"size":6523,"diff":0},{"filename":"guide/v10/upgrade-guide/index.html","previous":7780,"size":7779,"diff":-1},{"filename":"guide/v10/tutorial/index.html","previous":7640,"size":7640,"diff":0},{"filename":"guide/v10/components/index.html","previous":7470,"size":7470,"diff":0},{"filename":"guide/v10/hooks/index.html","previous":11456,"size":11456,"diff":0},{"filename":"guide/v10/signals/index.html","previous":13593,"size":13592,"diff":-1},{"filename":"guide/v10/forms/index.html","previous":6592,"size":6592,"diff":0},{"filename":"guide/v10/refs/index.html","previous":5537,"size":5537,"diff":0},{"filename":"guide/v10/context/index.html","previous":5366,"size":5366,"diff":0},{"filename":"guide/v10/debugging/index.html","previous":7263,"size":7263,"diff":0},{"filename":"guide/v10/preact-testing-library/index.html","previous":8580,"size":8580,"diff":0},{"filename":"guide/v10/unit-testing-with-enzyme/index.html","previous":7052,"size":7053,"diff":1},{"filename":"guide/v10/differences-to-react/index.html","previous":9330,"size":9330,"diff":0},{"filename":"guide/v10/switching-to-preact/index.html","previous":6167,"size":6167,"diff":0},{"filename":"guide/v10/api-reference/index.html","previous":7135,"size":7135,"diff":0},{"filename":"guide/v10/web-components/index.html","previous":7095,"size":7095,"diff":0},{"filename":"guide/v10/progressive-web-apps/index.html","previous":5479,"size":5479,"diff":0},{"filename":"guide/v10/server-side-rendering/index.html","previous":4723,"size":4723,"diff":0},{"filename":"guide/v10/external-dom-mutations/index.html","previous":5067,"size":5067,"diff":0},{"filename":"guide/v10/options/index.html","previous":5242,"size":5243,"diff":1},{"filename":"guide/v10/typescript/index.html","previous":9898,"size":9898,"diff":0},{"filename":"blog/introducing-signals/index.html","previous":9097,"size":9097,"diff":0},{"filename":"200.html","previous":885,"size":885,"diff":0},{"filename":"blog/signal-boosting/index.html","previous":12429,"size":12428,"diff":-1},{"filename":"bundle.*****.js","previous":35632,"size":35565,"diff":-67},{"filename":"dom-polyfills.*****.js","previous":2031,"size":2031,"diff":0},{"filename":"polyfills.*****.js","previous":2148,"size":2148,"diff":0},{"filename":"114.chunk.*****.js","previous":2749,"size":2748,"diff":-1},{"filename":"242.chunk.*****.js","previous":410,"size":410,"diff":0},{"filename":"526.chunk.*****.js","previous":3589,"size":3589,"diff":0},{"filename":"marked-worker.chunk.*****.js","previous":9171,"size":9171,"diff":0},{"filename":"emoji.chunk.*****.js","previous":8815,"size":8815,"diff":0},{"filename":"prism-worker.chunk.*****.js","previous":6240,"size":6240,"diff":0},{"filename":"editor.chunk.*****.js","previous":67303,"size":67303,"diff":0},{"filename":"runner.chunk.*****.js","previous":1619,"size":1619,"diff":0},{"filename":"repl-worker.chunk.*****.js","previous":196419,"size":196419,"diff":0},{"filename":"558.chunk.*****.js","previous":1813,"size":1813,"diff":0},{"filename":"21.chunk.*****.js","previous":1399,"size":1399,"diff":0},{"filename":"409.chunk.*****.js","previous":946,"size":946,"diff":0},{"filename":"bundle.*****.css","previous":13570,"size":13570,"diff":0},{"filename":"editor.chunk.*****.css","previous":2267,"size":2267,"diff":0},{"filename":"409.chunk.*****.css","previous":952,"size":952,"diff":0}]},{"timestamp":1707116368825,"files":[{"filename":"sw.js","previous":9266,"size":9264,"diff":-2},{"filename":"index.html","previous":7762,"size":7762,"diff":0},{"filename":"branding/index.html","previous":2868,"size":2868,"diff":0},{"filename":"tutorial/01-vdom/index.html","previous":7909,"size":7910,"diff":1},{"filename":"tutorial/02-events/index.html","previous":4622,"size":4624,"diff":2},{"filename":"tutorial/03-components/index.html","previous":8144,"size":8145,"diff":1},{"filename":"tutorial/04-state/index.html","previous":6534,"size":6535,"diff":1},{"filename":"tutorial/05-refs/index.html","previous":5967,"size":5969,"diff":2},{"filename":"tutorial/06-context/index.html","previous":9117,"size":9117,"diff":0},{"filename":"tutorial/07-side-effects/index.html","previous":6337,"size":6337,"diff":0},{"filename":"tutorial/08-keys/index.html","previous":8249,"size":8249,"diff":0},{"filename":"tutorial/09-error-handling/index.html","previous":5644,"size":5644,"diff":0},{"filename":"tutorial/10-links/index.html","previous":4156,"size":4155,"diff":-1},{"filename":"tutorial/index.html","previous":2563,"size":3483,"diff":920},{"filename":"about/we-are-using/index.html","previous":4279,"size":4280,"diff":1},{"filename":"about/libraries-addons/index.html","previous":4890,"size":4890,"diff":0},{"filename":"about/demos-examples/index.html","previous":5034,"size":5034,"diff":0},{"filename":"about/project-goals/index.html","previous":3209,"size":3209,"diff":0},{"filename":"about/browser-support/index.html","previous":2821,"size":2821,"diff":0},{"filename":"blog/index.html","previous":3386,"size":3388,"diff":2},{"filename":"repl/index.html","previous":2452,"size":2452,"diff":0},{"filename":"guide/v8/getting-started/index.html","previous":6502,"size":6502,"diff":0},{"filename":"guide/v8/differences-to-react/index.html","previous":5628,"size":5628,"diff":0},{"filename":"guide/v8/switching-to-preact/index.html","previous":8493,"size":8493,"diff":0},{"filename":"guide/v8/types-of-components/index.html","previous":4544,"size":4544,"diff":0},{"filename":"guide/v8/api-reference/index.html","previous":5122,"size":5121,"diff":-1},{"filename":"guide/v8/forms/index.html","previous":4822,"size":4822,"diff":0},{"filename":"guide/v8/linked-state/index.html","previous":5799,"size":5799,"diff":0},{"filename":"guide/v8/external-dom-mutations/index.html","previous":4844,"size":4844,"diff":0},{"filename":"guide/v8/extending-component/index.html","previous":4517,"size":4517,"diff":0},{"filename":"guide/v8/unit-testing-with-enzyme/index.html","previous":6718,"size":6718,"diff":0},{"filename":"guide/v8/progressive-web-apps/index.html","previous":5376,"size":5376,"diff":0},{"filename":"guide/v10/getting-started/index.html","previous":9005,"size":9006,"diff":1},{"filename":"guide/v10/whats-new/index.html","previous":6523,"size":6523,"diff":0},{"filename":"guide/v10/upgrade-guide/index.html","previous":7778,"size":7780,"diff":2},{"filename":"guide/v10/tutorial/index.html","previous":7640,"size":7640,"diff":0},{"filename":"guide/v10/components/index.html","previous":7470,"size":7470,"diff":0},{"filename":"guide/v10/hooks/index.html","previous":11455,"size":11456,"diff":1},{"filename":"guide/v10/signals/index.html","previous":13593,"size":13593,"diff":0},{"filename":"guide/v10/forms/index.html","previous":6592,"size":6592,"diff":0},{"filename":"guide/v10/refs/index.html","previous":5536,"size":5537,"diff":1},{"filename":"guide/v10/context/index.html","previous":5365,"size":5366,"diff":1},{"filename":"guide/v10/debugging/index.html","previous":7263,"size":7263,"diff":0},{"filename":"guide/v10/preact-testing-library/index.html","previous":8580,"size":8580,"diff":0},{"filename":"guide/v10/unit-testing-with-enzyme/index.html","previous":7052,"size":7052,"diff":0},{"filename":"guide/v10/differences-to-react/index.html","previous":9330,"size":9330,"diff":0},{"filename":"guide/v10/switching-to-preact/index.html","previous":6167,"size":6167,"diff":0},{"filename":"guide/v10/api-reference/index.html","previous":7135,"size":7135,"diff":0},{"filename":"guide/v10/web-components/index.html","previous":7095,"size":7095,"diff":0},{"filename":"guide/v10/progressive-web-apps/index.html","previous":5480,"size":5479,"diff":-1},{"filename":"guide/v10/server-side-rendering/index.html","previous":4723,"size":4723,"diff":0},{"filename":"guide/v10/external-dom-mutations/index.html","previous":5067,"size":5067,"diff":0},{"filename":"guide/v10/options/index.html","previous":5243,"size":5242,"diff":-1},{"filename":"guide/v10/typescript/index.html","previous":9898,"size":9898,"diff":0},{"filename":"blog/introducing-signals/index.html","previous":9095,"size":9097,"diff":2},{"filename":"200.html","previous":885,"size":885,"diff":0},{"filename":"blog/signal-boosting/index.html","previous":12429,"size":12429,"diff":0},{"filename":"bundle.*****.js","previous":35621,"size":35632,"diff":11},{"filename":"dom-polyfills.*****.js","previous":2031,"size":2031,"diff":0},{"filename":"polyfills.*****.js","previous":2148,"size":2148,"diff":0},{"filename":"114.chunk.*****.js","previous":2749,"size":2749,"diff":0},{"filename":"242.chunk.*****.js","previous":410,"size":410,"diff":0},{"filename":"526.chunk.*****.js","previous":3589,"size":3589,"diff":0},{"filename":"marked-worker.chunk.*****.js","previous":9171,"size":9171,"diff":0},{"filename":"emoji.chunk.*****.js","previous":8815,"size":8815,"diff":0},{"filename":"prism-worker.chunk.*****.js","previous":6240,"size":6240,"diff":0},{"filename":"editor.chunk.*****.js","previous":67303,"size":67303,"diff":0},{"filename":"runner.chunk.*****.js","previous":1619,"size":1619,"diff":0},{"filename":"repl-worker.chunk.*****.js","previous":196419,"size":196419,"diff":0},{"filename":"558.chunk.*****.js","previous":1813,"size":1813,"diff":0},{"filename":"21.chunk.*****.js","previous":1399,"size":1399,"diff":0},{"filename":"409.chunk.*****.js","previous":946,"size":946,"diff":0},{"filename":"bundle.*****.css","previous":13570,"size":13570,"diff":0},{"filename":"editor.chunk.*****.css","previous":2267,"size":2267,"diff":0},{"filename":"409.chunk.*****.css","previous":952,"size":952,"diff":0}]},{"timestamp":1707116171147,"files":[{"filename":"prism.b962a.worker.js","previous":7328,"size":0,"diff":-7328},{"filename":"markdown.59662.worker.js","previous":10266,"size":0,"diff":-10266},{"filename":"repl.00020.worker.js","previous":72402,"size":0,"diff":-72402},{"filename":"0.chunk.*****.esm.js","previous":1542,"size":0,"diff":-1542},{"filename":"1.chunk.*****.esm.js","previous":929,"size":0,"diff":-929},{"filename":"bundle.*****.esm.js","previous":31215,"size":0,"diff":-31215},{"filename":"editor.chunk.9c92c.css","previous":2246,"size":0,"diff":-2246},{"filename":"editor.chunk.*****.esm.js","previous":67664,"size":0,"diff":-67664},{"filename":"emoji.chunk.*****.esm.js","previous":8859,"size":0,"diff":-8859},{"filename":"polyfills.*****.esm.js","previous":2303,"size":0,"diff":-2303},{"filename":"runner.chunk.*****.esm.js","previous":1751,"size":0,"diff":-1751},{"filename":"7.chunk.*****.esm.js","previous":3245,"size":0,"diff":-3245},{"filename":"8.chunk.*****.esm.js","previous":2654,"size":0,"diff":-2654},{"filename":"sw-esm.js","previous":14014,"size":0,"diff":-14014},{"filename":"sw.js","previous":14087,"size":9266,"diff":-4821},{"filename":"prism.7b8fd.worker.js","previous":7423,"size":0,"diff":-7423},{"filename":"markdown.cc98c.worker.js","previous":10713,"size":0,"diff":-10713},{"filename":"repl.06670.worker.js","previous":77881,"size":0,"diff":-77881},{"filename":"editor.chunk.91204.js","previous":68488,"size":0,"diff":-68488},{"filename":"emoji.chunk.556dc.js","previous":8849,"size":0,"diff":-8849},{"filename":"8.chunk.7b519.js","previous":3839,"size":0,"diff":-3839},{"filename":"index.html","previous":8901,"size":7762,"diff":-1139},{"filename":"branding/index.html","previous":3561,"size":2868,"diff":-693},{"filename":"tutorial/01-vdom/index.html","previous":7305,"size":7909,"diff":604},{"filename":"tutorial/02-events/index.html","previous":4438,"size":4622,"diff":184},{"filename":"tutorial/03-components/index.html","previous":7934,"size":8144,"diff":210},{"filename":"tutorial/04-state/index.html","previous":6322,"size":6534,"diff":212},{"filename":"tutorial/05-refs/index.html","previous":5778,"size":5967,"diff":189},{"filename":"tutorial/06-context/index.html","previous":8887,"size":9117,"diff":230},{"filename":"tutorial/07-side-effects/index.html","previous":6130,"size":6337,"diff":207},{"filename":"tutorial/08-keys/index.html","previous":7973,"size":8249,"diff":276},{"filename":"tutorial/09-error-handling/index.html","previous":5451,"size":5644,"diff":193},{"filename":"tutorial/10-links/index.html","previous":3974,"size":4156,"diff":182},{"filename":"tutorial/index.html","previous":3434,"size":2563,"diff":-871},{"filename":"about/we-are-using/index.html","previous":5027,"size":4279,"diff":-748},{"filename":"about/libraries-addons/index.html","previous":6199,"size":4890,"diff":-1309},{"filename":"about/demos-examples/index.html","previous":6490,"size":5034,"diff":-1456},{"filename":"about/project-goals/index.html","previous":4051,"size":3209,"diff":-842},{"filename":"about/browser-support/index.html","previous":3554,"size":2821,"diff":-733},{"filename":"blog/index.html","previous":4057,"size":3386,"diff":-671},{"filename":"repl/index.html","previous":2364,"size":2452,"diff":88},{"filename":"guide/v8/getting-started/index.html","previous":7638,"size":6502,"diff":-1136},{"filename":"guide/v8/differences-to-react/index.html","previous":6389,"size":5628,"diff":-761},{"filename":"guide/v8/switching-to-preact/index.html","previous":10187,"size":8493,"diff":-1694},{"filename":"guide/v8/types-of-components/index.html","previous":4966,"size":4544,"diff":-422},{"filename":"guide/v8/api-reference/index.html","previous":5875,"size":5122,"diff":-753},{"filename":"guide/v8/forms/index.html","previous":5298,"size":4822,"diff":-476},{"filename":"guide/v8/linked-state/index.html","previous":6557,"size":5799,"diff":-758},{"filename":"guide/v8/external-dom-mutations/index.html","previous":5249,"size":4844,"diff":-405},{"filename":"guide/v8/extending-component/index.html","previous":5003,"size":4517,"diff":-486},{"filename":"guide/v8/unit-testing-with-enzyme/index.html","previous":8113,"size":6718,"diff":-1395},{"filename":"guide/v8/progressive-web-apps/index.html","previous":5876,"size":5376,"diff":-500},{"filename":"guide/v10/getting-started/index.html","previous":9400,"size":9005,"diff":-395},{"filename":"guide/v10/whats-new/index.html","previous":7385,"size":6523,"diff":-862},{"filename":"guide/v10/upgrade-guide/index.html","previous":9057,"size":7778,"diff":-1279},{"filename":"guide/v10/tutorial/index.html","previous":9320,"size":7640,"diff":-1680},{"filename":"guide/v10/components/index.html","previous":8528,"size":7470,"diff":-1058},{"filename":"guide/v10/hooks/index.html","previous":15289,"size":11455,"diff":-3834},{"filename":"guide/v10/signals/index.html","previous":18964,"size":13593,"diff":-5371},{"filename":"guide/v10/forms/index.html","previous":7635,"size":6592,"diff":-1043},{"filename":"guide/v10/refs/index.html","previous":6199,"size":5536,"diff":-663},{"filename":"guide/v10/context/index.html","previous":5924,"size":5365,"diff":-559},{"filename":"guide/v10/debugging/index.html","previous":8462,"size":7263,"diff":-1199},{"filename":"guide/v10/preact-testing-library/index.html","previous":11050,"size":8580,"diff":-2470},{"filename":"guide/v10/unit-testing-with-enzyme/index.html","previous":8545,"size":7052,"diff":-1493},{"filename":"guide/v10/differences-to-react/index.html","previous":11197,"size":9330,"diff":-1867},{"filename":"guide/v10/switching-to-preact/index.html","previous":7209,"size":6167,"diff":-1042},{"filename":"guide/v10/api-reference/index.html","previous":8371,"size":7135,"diff":-1236},{"filename":"guide/v10/web-components/index.html","previous":8374,"size":7095,"diff":-1279},{"filename":"guide/v10/progressive-web-apps/index.html","previous":6128,"size":5480,"diff":-648},{"filename":"guide/v10/server-side-rendering/index.html","previous":5197,"size":4723,"diff":-474},{"filename":"guide/v10/external-dom-mutations/index.html","previous":5606,"size":5067,"diff":-539},{"filename":"guide/v10/options/index.html","previous":5782,"size":5243,"diff":-539},{"filename":"guide/v10/typescript/index.html","previous":13881,"size":9898,"diff":-3983},{"filename":"guide/v10/cli/index.html","previous":4500,"size":0,"diff":-4500},{"filename":"guide/v10/cli/getting-started/index.html","previous":5323,"size":0,"diff":-5323},{"filename":"guide/v10/cli/service-worker/index.html","previous":6544,"size":0,"diff":-6544},{"filename":"guide/v10/cli/pre-rendering/index.html","previous":7420,"size":0,"diff":-7420},{"filename":"blog/introducing-signals/index.html","previous":10668,"size":9095,"diff":-1573},{"filename":"200.html","previous":923,"size":885,"diff":-38},{"filename":"repl.setup.chunk.909cd.esm.worker.js","previous":14206,"size":0,"diff":-14206},{"filename":"0.chunk.4590c.css","previous":1689,"size":0,"diff":-1689},{"filename":"1.chunk.5465b.css","previous":1522,"size":0,"diff":-1522},{"filename":"bundle.8f091.css","previous":11401,"size":0,"diff":-11401},{"filename":"7.chunk.43555.css","previous":2946,"size":0,"diff":-2946},{"filename":"repl.setup.chunk.ca99a.worker.js","previous":14292,"size":0,"diff":-14292},{"filename":"0.chunk.c1256.js","previous":2039,"size":0,"diff":-2039},{"filename":"1.chunk.ca34d.js","previous":926,"size":0,"diff":-926},{"filename":"bundle.c495f.js","previous":34142,"size":0,"diff":-34142},{"filename":"polyfills.fd9fb.js","previous":2405,"size":0,"diff":-2405},{"filename":"runner.chunk.031c2.js","previous":2620,"size":0,"diff":-2620},{"filename":"7.chunk.ff073.js","previous":4329,"size":0,"diff":-4329},{"filename":"blog/signal-boosting/index.html","previous":16340,"size":12429,"diff":-3911},{"filename":"bundle.*****.js","previous":0,"size":35621,"diff":35621},{"filename":"dom-polyfills.*****.js","previous":0,"size":2031,"diff":2031},{"filename":"polyfills.*****.js","previous":0,"size":2148,"diff":2148},{"filename":"114.chunk.*****.js","previous":0,"size":2749,"diff":2749},{"filename":"242.chunk.*****.js","previous":0,"size":410,"diff":410},{"filename":"526.chunk.*****.js","previous":0,"size":3589,"diff":3589},{"filename":"marked-worker.chunk.*****.js","previous":0,"size":9171,"diff":9171},{"filename":"emoji.chunk.*****.js","previous":0,"size":8815,"diff":8815},{"filename":"prism-worker.chunk.*****.js","previous":0,"size":6240,"diff":6240},{"filename":"editor.chunk.*****.js","previous":0,"size":67303,"diff":67303},{"filename":"runner.chunk.*****.js","previous":0,"size":1619,"diff":1619},{"filename":"repl-worker.chunk.*****.js","previous":0,"size":196419,"diff":196419},{"filename":"558.chunk.*****.js","previous":0,"size":1813,"diff":1813},{"filename":"21.chunk.*****.js","previous":0,"size":1399,"diff":1399},{"filename":"409.chunk.*****.js","previous":0,"size":946,"diff":946},{"filename":"bundle.*****.css","previous":0,"size":13570,"diff":13570},{"filename":"editor.chunk.*****.css","previous":0,"size":2267,"diff":2267},{"filename":"409.chunk.*****.css","previous":0,"size":952,"diff":952}]},{"timestamp":1673396152053,"files":[{"filename":"repl.setup.chunk.6dac1.esm.worker.js","previous":14170,"size":0,"diff":-14170},{"filename":"prism.b962a.worker.js","previous":7328,"size":7328,"diff":0},{"filename":"markdown.59662.worker.js","previous":10266,"size":10266,"diff":0},{"filename":"repl.00020.worker.js","previous":72402,"size":72402,"diff":0},{"filename":"0.chunk.df937.css","previous":1643,"size":0,"diff":-1643},{"filename":"0.chunk.*****.esm.js","previous":1545,"size":1542,"diff":-3},{"filename":"1.chunk.479bb.css","previous":1518,"size":0,"diff":-1518},{"filename":"1.chunk.*****.esm.js","previous":929,"size":929,"diff":0},{"filename":"bundle.c8ac2.css","previous":11013,"size":0,"diff":-11013},{"filename":"bundle.*****.esm.js","previous":29970,"size":31215,"diff":1245},{"filename":"editor.chunk.9c92c.css","previous":2246,"size":2246,"diff":0},{"filename":"editor.chunk.*****.esm.js","previous":67664,"size":67664,"diff":0},{"filename":"emoji.chunk.*****.esm.js","previous":8859,"size":8859,"diff":0},{"filename":"polyfills.*****.esm.js","previous":2307,"size":2303,"diff":-4},{"filename":"runner.chunk.*****.esm.js","previous":1750,"size":1751,"diff":1},{"filename":"7.chunk.00b33.css","previous":2865,"size":0,"diff":-2865},{"filename":"7.chunk.*****.esm.js","previous":3244,"size":3245,"diff":1},{"filename":"8.chunk.*****.esm.js","previous":2654,"size":2654,"diff":0},{"filename":"sw-esm.js","previous":13957,"size":14014,"diff":57},{"filename":"sw.js","previous":14031,"size":14087,"diff":56},{"filename":"prism.7b8fd.worker.js","previous":7423,"size":7423,"diff":0},{"filename":"markdown.cc98c.worker.js","previous":10713,"size":10713,"diff":0},{"filename":"repl.setup.chunk.994b2.worker.js","previous":14262,"size":0,"diff":-14262},{"filename":"repl.06670.worker.js","previous":77881,"size":77881,"diff":0},{"filename":"0.chunk.c6003.js","previous":2039,"size":0,"diff":-2039},{"filename":"1.chunk.7ce49.js","previous":926,"size":0,"diff":-926},{"filename":"bundle.b7cb3.js","previous":32849,"size":0,"diff":-32849},{"filename":"editor.chunk.91204.js","previous":68488,"size":68488,"diff":0},{"filename":"emoji.chunk.556dc.js","previous":8849,"size":8849,"diff":0},{"filename":"polyfills.b2760.js","previous":2389,"size":0,"diff":-2389},{"filename":"runner.chunk.a4c21.js","previous":2621,"size":0,"diff":-2621},{"filename":"7.chunk.7870a.js","previous":4330,"size":0,"diff":-4330},{"filename":"8.chunk.7b519.js","previous":3839,"size":3839,"diff":0},{"filename":"index.html","previous":8888,"size":8901,"diff":13},{"filename":"branding/index.html","previous":3375,"size":3561,"diff":186},{"filename":"tutorial/01-vdom/index.html","previous":7075,"size":7305,"diff":230},{"filename":"tutorial/02-events/index.html","previous":4211,"size":4438,"diff":227},{"filename":"tutorial/03-components/index.html","previous":7700,"size":7934,"diff":234},{"filename":"tutorial/04-state/index.html","previous":6090,"size":6322,"diff":232},{"filename":"tutorial/05-refs/index.html","previous":5552,"size":5778,"diff":226},{"filename":"tutorial/06-context/index.html","previous":8659,"size":8887,"diff":228},{"filename":"tutorial/07-side-effects/index.html","previous":5925,"size":6130,"diff":205},{"filename":"tutorial/08-keys/index.html","previous":7734,"size":7973,"diff":239},{"filename":"tutorial/09-error-handling/index.html","previous":5224,"size":5451,"diff":227},{"filename":"tutorial/10-links/index.html","previous":3746,"size":3974,"diff":228},{"filename":"tutorial/index.html","previous":3212,"size":3434,"diff":222},{"filename":"about/we-are-using/index.html","previous":4820,"size":5027,"diff":207},{"filename":"about/libraries-addons/index.html","previous":6011,"size":6199,"diff":188},{"filename":"about/demos-examples/index.html","previous":6312,"size":6490,"diff":178},{"filename":"about/project-goals/index.html","previous":3872,"size":4051,"diff":179},{"filename":"about/browser-support/index.html","previous":3377,"size":3554,"diff":177},{"filename":"blog/index.html","previous":3718,"size":4057,"diff":339},{"filename":"repl/index.html","previous":2134,"size":2364,"diff":230},{"filename":"guide/v8/getting-started/index.html","previous":7456,"size":7638,"diff":182},{"filename":"guide/v8/differences-to-react/index.html","previous":6208,"size":6389,"diff":181},{"filename":"guide/v8/switching-to-preact/index.html","previous":10000,"size":10187,"diff":187},{"filename":"guide/v8/types-of-components/index.html","previous":4789,"size":4966,"diff":177},{"filename":"guide/v8/api-reference/index.html","previous":5697,"size":5875,"diff":178},{"filename":"guide/v8/forms/index.html","previous":5117,"size":5298,"diff":181},{"filename":"guide/v8/linked-state/index.html","previous":6379,"size":6557,"diff":178},{"filename":"guide/v8/external-dom-mutations/index.html","previous":5069,"size":5249,"diff":180},{"filename":"guide/v8/extending-component/index.html","previous":4828,"size":5003,"diff":175},{"filename":"guide/v8/unit-testing-with-enzyme/index.html","previous":7928,"size":8113,"diff":185},{"filename":"guide/v8/progressive-web-apps/index.html","previous":5697,"size":5876,"diff":179},{"filename":"guide/v10/getting-started/index.html","previous":9220,"size":9400,"diff":180},{"filename":"guide/v10/whats-new/index.html","previous":7209,"size":7385,"diff":176},{"filename":"guide/v10/upgrade-guide/index.html","previous":8808,"size":9057,"diff":249},{"filename":"guide/v10/tutorial/index.html","previous":9071,"size":9320,"diff":249},{"filename":"guide/v10/components/index.html","previous":8339,"size":8528,"diff":189},{"filename":"guide/v10/hooks/index.html","previous":15042,"size":15289,"diff":247},{"filename":"guide/v10/signals/index.html","previous":18716,"size":18964,"diff":248},{"filename":"guide/v10/forms/index.html","previous":7451,"size":7635,"diff":184},{"filename":"guide/v10/refs/index.html","previous":6021,"size":6199,"diff":178},{"filename":"guide/v10/context/index.html","previous":5747,"size":5924,"diff":177},{"filename":"guide/v10/debugging/index.html","previous":8282,"size":8462,"diff":180},{"filename":"guide/v10/preact-testing-library/index.html","previous":10792,"size":11050,"diff":258},{"filename":"guide/v10/unit-testing-with-enzyme/index.html","previous":8362,"size":8545,"diff":183},{"filename":"guide/v10/differences-to-react/index.html","previous":10951,"size":11197,"diff":246},{"filename":"guide/v10/switching-to-preact/index.html","previous":7038,"size":7209,"diff":171},{"filename":"guide/v10/api-reference/index.html","previous":8127,"size":8371,"diff":244},{"filename":"guide/v10/web-components/index.html","previous":8198,"size":8374,"diff":176},{"filename":"guide/v10/progressive-web-apps/index.html","previous":5954,"size":6128,"diff":174},{"filename":"guide/v10/server-side-rendering/index.html","previous":5020,"size":5197,"diff":177},{"filename":"guide/v10/external-dom-mutations/index.html","previous":5427,"size":5606,"diff":179},{"filename":"guide/v10/options/index.html","previous":5651,"size":5782,"diff":131},{"filename":"guide/v10/typescript/index.html","previous":13632,"size":13881,"diff":249},{"filename":"guide/v10/cli/index.html","previous":4323,"size":4500,"diff":177},{"filename":"guide/v10/cli/getting-started/index.html","previous":5151,"size":5323,"diff":172},{"filename":"guide/v10/cli/service-worker/index.html","previous":6368,"size":6544,"diff":176},{"filename":"guide/v10/cli/pre-rendering/index.html","previous":7220,"size":7420,"diff":200},{"filename":"blog/introducing-signals/index.html","previous":10329,"size":10668,"diff":339},{"filename":"200.html","previous":885,"size":923,"diff":38},{"filename":"repl.setup.chunk.909cd.esm.worker.js","previous":0,"size":14206,"diff":14206},{"filename":"0.chunk.4590c.css","previous":0,"size":1689,"diff":1689},{"filename":"1.chunk.5465b.css","previous":0,"size":1522,"diff":1522},{"filename":"bundle.8f091.css","previous":0,"size":11401,"diff":11401},{"filename":"7.chunk.43555.css","previous":0,"size":2946,"diff":2946},{"filename":"repl.setup.chunk.ca99a.worker.js","previous":0,"size":14292,"diff":14292},{"filename":"0.chunk.c1256.js","previous":0,"size":2039,"diff":2039},{"filename":"1.chunk.ca34d.js","previous":0,"size":926,"diff":926},{"filename":"bundle.c495f.js","previous":0,"size":34142,"diff":34142},{"filename":"polyfills.fd9fb.js","previous":0,"size":2405,"diff":2405},{"filename":"runner.chunk.031c2.js","previous":0,"size":2620,"diff":2620},{"filename":"7.chunk.ff073.js","previous":0,"size":4329,"diff":4329},{"filename":"blog/signal-boosting/index.html","previous":0,"size":16340,"diff":16340}]},{"timestamp":1663413564084,"files":[{"filename":"repl.setup.chunk.6dac1.esm.worker.js","previous":14170,"size":14170,"diff":0},{"filename":"prism.b962a.worker.js","previous":7328,"size":7328,"diff":0},{"filename":"markdown.59662.worker.js","previous":10266,"size":10266,"diff":0},{"filename":"repl.00020.worker.js","previous":72402,"size":72402,"diff":0},{"filename":"0.chunk.df937.css","previous":1643,"size":1643,"diff":0},{"filename":"0.chunk.*****.esm.js","previous":1545,"size":1545,"diff":0},{"filename":"1.chunk.479bb.css","previous":1518,"size":1518,"diff":0},{"filename":"1.chunk.*****.esm.js","previous":929,"size":929,"diff":0},{"filename":"bundle.c8ac2.css","previous":11013,"size":11013,"diff":0},{"filename":"bundle.*****.esm.js","previous":29970,"size":29970,"diff":0},{"filename":"editor.chunk.9c92c.css","previous":2246,"size":2246,"diff":0},{"filename":"editor.chunk.*****.esm.js","previous":67664,"size":67664,"diff":0},{"filename":"emoji.chunk.*****.esm.js","previous":8859,"size":8859,"diff":0},{"filename":"polyfills.*****.esm.js","previous":2307,"size":2307,"diff":0},{"filename":"runner.chunk.*****.esm.js","previous":1750,"size":1750,"diff":0},{"filename":"7.chunk.00b33.css","previous":2865,"size":2865,"diff":0},{"filename":"7.chunk.*****.esm.js","previous":3244,"size":3244,"diff":0},{"filename":"8.chunk.*****.esm.js","previous":2654,"size":2654,"diff":0},{"filename":"sw-esm.js","previous":13958,"size":13957,"diff":-1},{"filename":"sw.js","previous":14032,"size":14031,"diff":-1},{"filename":"prism.7b8fd.worker.js","previous":7423,"size":7423,"diff":0},{"filename":"markdown.cc98c.worker.js","previous":10713,"size":10713,"diff":0},{"filename":"repl.setup.chunk.994b2.worker.js","previous":14262,"size":14262,"diff":0},{"filename":"repl.06670.worker.js","previous":77881,"size":77881,"diff":0},{"filename":"0.chunk.c6003.js","previous":2039,"size":2039,"diff":0},{"filename":"1.chunk.7ce49.js","previous":926,"size":926,"diff":0},{"filename":"bundle.b7cb3.js","previous":32849,"size":32849,"diff":0},{"filename":"editor.chunk.91204.js","previous":68488,"size":68488,"diff":0},{"filename":"emoji.chunk.556dc.js","previous":8849,"size":8849,"diff":0},{"filename":"polyfills.b2760.js","previous":2389,"size":2389,"diff":0},{"filename":"runner.chunk.a4c21.js","previous":2621,"size":2621,"diff":0},{"filename":"7.chunk.7870a.js","previous":4330,"size":4330,"diff":0},{"filename":"8.chunk.7b519.js","previous":3839,"size":3839,"diff":0},{"filename":"index.html","previous":14625,"size":8888,"diff":-5737},{"filename":"branding/index.html","previous":7945,"size":3375,"diff":-4570},{"filename":"tutorial/01-vdom/index.html","previous":12212,"size":7075,"diff":-5137},{"filename":"tutorial/02-events/index.html","previous":9174,"size":4211,"diff":-4963},{"filename":"tutorial/03-components/index.html","previous":12770,"size":7700,"diff":-5070},{"filename":"tutorial/04-state/index.html","previous":11145,"size":6090,"diff":-5055},{"filename":"tutorial/05-refs/index.html","previous":10408,"size":5552,"diff":-4856},{"filename":"tutorial/06-context/index.html","previous":13774,"size":8659,"diff":-5115},{"filename":"tutorial/07-side-effects/index.html","previous":11070,"size":5925,"diff":-5145},{"filename":"tutorial/08-keys/index.html","previous":12890,"size":7734,"diff":-5156},{"filename":"tutorial/09-error-handling/index.html","previous":10106,"size":5224,"diff":-4882},{"filename":"tutorial/10-links/index.html","previous":8269,"size":3746,"diff":-4523},{"filename":"tutorial/index.html","previous":7389,"size":3212,"diff":-4177},{"filename":"about/we-are-using/index.html","previous":9596,"size":4820,"diff":-4776},{"filename":"about/libraries-addons/index.html","previous":10612,"size":6011,"diff":-4601},{"filename":"about/demos-examples/index.html","previous":10992,"size":6312,"diff":-4680},{"filename":"about/project-goals/index.html","previous":8472,"size":3872,"diff":-4600},{"filename":"about/browser-support/index.html","previous":7811,"size":3377,"diff":-4434},{"filename":"blog/index.html","previous":8386,"size":3718,"diff":-4668},{"filename":"repl/index.html","previous":5324,"size":2134,"diff":-3190},{"filename":"guide/v8/getting-started/index.html","previous":12870,"size":7456,"diff":-5414},{"filename":"guide/v8/differences-to-react/index.html","previous":11168,"size":6208,"diff":-4960},{"filename":"guide/v8/switching-to-preact/index.html","previous":15273,"size":10000,"diff":-5273},{"filename":"guide/v8/types-of-components/index.html","previous":10032,"size":4789,"diff":-5243},{"filename":"guide/v8/api-reference/index.html","previous":11069,"size":5697,"diff":-5372},{"filename":"guide/v8/forms/index.html","previous":10345,"size":5117,"diff":-5228},{"filename":"guide/v8/linked-state/index.html","previous":11590,"size":6379,"diff":-5211},{"filename":"guide/v8/external-dom-mutations/index.html","previous":10165,"size":5069,"diff":-5096},{"filename":"guide/v8/extending-component/index.html","previous":9902,"size":4828,"diff":-5074},{"filename":"guide/v8/unit-testing-with-enzyme/index.html","previous":13069,"size":7928,"diff":-5141},{"filename":"guide/v8/progressive-web-apps/index.html","previous":10773,"size":5697,"diff":-5076},{"filename":"guide/v10/getting-started/index.html","previous":14515,"size":9220,"diff":-5295},{"filename":"guide/v10/whats-new/index.html","previous":12419,"size":7209,"diff":-5210},{"filename":"guide/v10/upgrade-guide/index.html","previous":14225,"size":8808,"diff":-5417},{"filename":"guide/v10/tutorial/index.html","previous":14337,"size":9071,"diff":-5266},{"filename":"guide/v10/components/index.html","previous":13759,"size":8339,"diff":-5420},{"filename":"guide/v10/hooks/index.html","previous":20354,"size":15042,"diff":-5312},{"filename":"guide/v10/signals/index.html","previous":24045,"size":18716,"diff":-5329},{"filename":"guide/v10/forms/index.html","previous":12703,"size":7451,"diff":-5252},{"filename":"guide/v10/refs/index.html","previous":11257,"size":6021,"diff":-5236},{"filename":"guide/v10/context/index.html","previous":11003,"size":5747,"diff":-5256},{"filename":"guide/v10/debugging/index.html","previous":13679,"size":8282,"diff":-5397},{"filename":"guide/v10/preact-testing-library/index.html","previous":16043,"size":10792,"diff":-5251},{"filename":"guide/v10/unit-testing-with-enzyme/index.html","previous":13519,"size":8362,"diff":-5157},{"filename":"guide/v10/differences-to-react/index.html","previous":16205,"size":10951,"diff":-5254},{"filename":"guide/v10/switching-to-preact/index.html","previous":12237,"size":7038,"diff":-5199},{"filename":"guide/v10/api-reference/index.html","previous":13442,"size":8127,"diff":-5315},{"filename":"guide/v10/web-components/index.html","previous":13444,"size":8198,"diff":-5246},{"filename":"guide/v10/progressive-web-apps/index.html","previous":11042,"size":5954,"diff":-5088},{"filename":"guide/v10/server-side-rendering/index.html","previous":10238,"size":5020,"diff":-5218},{"filename":"guide/v10/external-dom-mutations/index.html","previous":10617,"size":5427,"diff":-5190},{"filename":"guide/v10/options/index.html","previous":10830,"size":5651,"diff":-5179},{"filename":"guide/v10/typescript/index.html","previous":18886,"size":13632,"diff":-5254},{"filename":"guide/v10/cli/index.html","previous":9120,"size":4323,"diff":-4797},{"filename":"guide/v10/cli/getting-started/index.html","previous":10347,"size":5151,"diff":-5196},{"filename":"guide/v10/cli/service-worker/index.html","previous":11479,"size":6368,"diff":-5111},{"filename":"guide/v10/cli/pre-rendering/index.html","previous":12334,"size":7220,"diff":-5114},{"filename":"blog/introducing-signals/index.html","previous":15229,"size":10329,"diff":-4900},{"filename":"200.html","previous":1805,"size":885,"diff":-920}]},{"timestamp":1663409318240,"files":[{"filename":"ssr-build/editor.chunk.6005b.js","previous":68029,"size":0,"diff":-68029},{"filename":"ssr-build/editor.chunk.9c92c.css","previous":3271,"size":0,"diff":-3271},{"filename":"ssr-build/emoji.chunk.ebc97.js","previous":8834,"size":0,"diff":-8834},{"filename":"ssr-build/markdown.3384a.worker.js","previous":10635,"size":0,"diff":-10635},{"filename":"ssr-build/prism.7da98.worker.js","previous":7286,"size":0,"diff":-7286},{"filename":"ssr-build/repl.c8b7e.worker.js","previous":78601,"size":0,"diff":-78601},{"filename":"ssr-build/repl.setup.chunk.69705.worker.js","previous":14104,"size":0,"diff":-14104},{"filename":"ssr-build/runner.chunk.3ffd6.js","previous":2651,"size":0,"diff":-2651},{"filename":"ssr-build/ssr-bundle.d9fd4.css","previous":15972,"size":0,"diff":-15972},{"filename":"ssr-build/ssr-bundle.js","previous":40287,"size":0,"diff":-40287},{"filename":"repl.setup.chunk.6dac1.esm.worker.js","previous":0,"size":14170,"diff":14170},{"filename":"prism.b962a.worker.js","previous":0,"size":7328,"diff":7328},{"filename":"markdown.59662.worker.js","previous":0,"size":10266,"diff":10266},{"filename":"repl.00020.worker.js","previous":0,"size":72402,"diff":72402},{"filename":"0.chunk.df937.css","previous":0,"size":1643,"diff":1643},{"filename":"0.chunk.*****.esm.js","previous":0,"size":1545,"diff":1545},{"filename":"1.chunk.479bb.css","previous":0,"size":1518,"diff":1518},{"filename":"1.chunk.*****.esm.js","previous":0,"size":929,"diff":929},{"filename":"bundle.c8ac2.css","previous":0,"size":11013,"diff":11013},{"filename":"bundle.*****.esm.js","previous":0,"size":29970,"diff":29970},{"filename":"editor.chunk.9c92c.css","previous":0,"size":2246,"diff":2246},{"filename":"editor.chunk.*****.esm.js","previous":0,"size":67664,"diff":67664},{"filename":"emoji.chunk.*****.esm.js","previous":0,"size":8859,"diff":8859},{"filename":"polyfills.*****.esm.js","previous":0,"size":2307,"diff":2307},{"filename":"runner.chunk.*****.esm.js","previous":0,"size":1750,"diff":1750},{"filename":"7.chunk.00b33.css","previous":0,"size":2865,"diff":2865},{"filename":"7.chunk.*****.esm.js","previous":0,"size":3244,"diff":3244},{"filename":"8.chunk.*****.esm.js","previous":0,"size":2654,"diff":2654},{"filename":"sw-esm.js","previous":0,"size":13958,"diff":13958},{"filename":"sw.js","previous":0,"size":14032,"diff":14032},{"filename":"prism.7b8fd.worker.js","previous":0,"size":7423,"diff":7423},{"filename":"markdown.cc98c.worker.js","previous":0,"size":10713,"diff":10713},{"filename":"repl.setup.chunk.994b2.worker.js","previous":0,"size":14262,"diff":14262},{"filename":"repl.06670.worker.js","previous":0,"size":77881,"diff":77881},{"filename":"0.chunk.c6003.js","previous":0,"size":2039,"diff":2039},{"filename":"1.chunk.7ce49.js","previous":0,"size":926,"diff":926},{"filename":"bundle.b7cb3.js","previous":0,"size":32849,"diff":32849},{"filename":"editor.chunk.91204.js","previous":0,"size":68488,"diff":68488},{"filename":"emoji.chunk.556dc.js","previous":0,"size":8849,"diff":8849},{"filename":"polyfills.b2760.js","previous":0,"size":2389,"diff":2389},{"filename":"runner.chunk.a4c21.js","previous":0,"size":2621,"diff":2621},{"filename":"7.chunk.7870a.js","previous":0,"size":4330,"diff":4330},{"filename":"8.chunk.7b519.js","previous":0,"size":3839,"diff":3839},{"filename":"index.html","previous":0,"size":14625,"diff":14625},{"filename":"branding/index.html","previous":0,"size":7945,"diff":7945},{"filename":"tutorial/01-vdom/index.html","previous":0,"size":12212,"diff":12212},{"filename":"tutorial/02-events/index.html","previous":0,"size":9174,"diff":9174},{"filename":"tutorial/03-components/index.html","previous":0,"size":12770,"diff":12770},{"filename":"tutorial/04-state/index.html","previous":0,"size":11145,"diff":11145},{"filename":"tutorial/05-refs/index.html","previous":0,"size":10408,"diff":10408},{"filename":"tutorial/06-context/index.html","previous":0,"size":13774,"diff":13774},{"filename":"tutorial/07-side-effects/index.html","previous":0,"size":11070,"diff":11070},{"filename":"tutorial/08-keys/index.html","previous":0,"size":12890,"diff":12890},{"filename":"tutorial/09-error-handling/index.html","previous":0,"size":10106,"diff":10106},{"filename":"tutorial/10-links/index.html","previous":0,"size":8269,"diff":8269},{"filename":"tutorial/index.html","previous":0,"size":7389,"diff":7389},{"filename":"about/we-are-using/index.html","previous":0,"size":9596,"diff":9596},{"filename":"about/libraries-addons/index.html","previous":0,"size":10612,"diff":10612},{"filename":"about/demos-examples/index.html","previous":0,"size":10992,"diff":10992},{"filename":"about/project-goals/index.html","previous":0,"size":8472,"diff":8472},{"filename":"about/browser-support/index.html","previous":0,"size":7811,"diff":7811},{"filename":"blog/index.html","previous":0,"size":8386,"diff":8386},{"filename":"repl/index.html","previous":0,"size":5324,"diff":5324},{"filename":"guide/v8/getting-started/index.html","previous":0,"size":12870,"diff":12870},{"filename":"guide/v8/differences-to-react/index.html","previous":0,"size":11168,"diff":11168},{"filename":"guide/v8/switching-to-preact/index.html","previous":0,"size":15273,"diff":15273},{"filename":"guide/v8/types-of-components/index.html","previous":0,"size":10032,"diff":10032},{"filename":"guide/v8/api-reference/index.html","previous":0,"size":11069,"diff":11069},{"filename":"guide/v8/forms/index.html","previous":0,"size":10345,"diff":10345},{"filename":"guide/v8/linked-state/index.html","previous":0,"size":11590,"diff":11590},{"filename":"guide/v8/external-dom-mutations/index.html","previous":0,"size":10165,"diff":10165},{"filename":"guide/v8/extending-component/index.html","previous":0,"size":9902,"diff":9902},{"filename":"guide/v8/unit-testing-with-enzyme/index.html","previous":0,"size":13069,"diff":13069},{"filename":"guide/v8/progressive-web-apps/index.html","previous":0,"size":10773,"diff":10773},{"filename":"guide/v10/getting-started/index.html","previous":0,"size":14515,"diff":14515},{"filename":"guide/v10/whats-new/index.html","previous":0,"size":12419,"diff":12419},{"filename":"guide/v10/upgrade-guide/index.html","previous":0,"size":14225,"diff":14225},{"filename":"guide/v10/tutorial/index.html","previous":0,"size":14337,"diff":14337},{"filename":"guide/v10/components/index.html","previous":0,"size":13759,"diff":13759},{"filename":"guide/v10/hooks/index.html","previous":0,"size":20354,"diff":20354},{"filename":"guide/v10/signals/index.html","previous":0,"size":24045,"diff":24045},{"filename":"guide/v10/forms/index.html","previous":0,"size":12703,"diff":12703},{"filename":"guide/v10/refs/index.html","previous":0,"size":11257,"diff":11257},{"filename":"guide/v10/context/index.html","previous":0,"size":11003,"diff":11003},{"filename":"guide/v10/debugging/index.html","previous":0,"size":13679,"diff":13679},{"filename":"guide/v10/preact-testing-library/index.html","previous":0,"size":16043,"diff":16043},{"filename":"guide/v10/unit-testing-with-enzyme/index.html","previous":0,"size":13519,"diff":13519},{"filename":"guide/v10/differences-to-react/index.html","previous":0,"size":16205,"diff":16205},{"filename":"guide/v10/switching-to-preact/index.html","previous":0,"size":12237,"diff":12237},{"filename":"guide/v10/api-reference/index.html","previous":0,"size":13442,"diff":13442},{"filename":"guide/v10/web-components/index.html","previous":0,"size":13444,"diff":13444},{"filename":"guide/v10/progressive-web-apps/index.html","previous":0,"size":11042,"diff":11042},{"filename":"guide/v10/server-side-rendering/index.html","previous":0,"size":10238,"diff":10238},{"filename":"guide/v10/external-dom-mutations/index.html","previous":0,"size":10617,"diff":10617},{"filename":"guide/v10/options/index.html","previous":0,"size":10830,"diff":10830},{"filename":"guide/v10/typescript/index.html","previous":0,"size":18886,"diff":18886},{"filename":"guide/v10/cli/index.html","previous":0,"size":9120,"diff":9120},{"filename":"guide/v10/cli/getting-started/index.html","previous":0,"size":10347,"diff":10347},{"filename":"guide/v10/cli/service-worker/index.html","previous":0,"size":11479,"diff":11479},{"filename":"guide/v10/cli/pre-rendering/index.html","previous":0,"size":12334,"diff":12334},{"filename":"blog/introducing-signals/index.html","previous":0,"size":15229,"diff":15229},{"filename":"200.html","previous":0,"size":1805,"diff":1805}]}] diff --git a/src/components/app.js b/src/components/app.js index caf615d1d..fa588e000 100644 --- a/src/components/app.js +++ b/src/components/app.js @@ -1,46 +1,24 @@ -import { Component } from 'preact'; -import { Provider } from 'unistore/preact'; -import createStore from '../store'; -import Routes from './routes'; +import { LocationProvider, ErrorBoundary } from 'preact-iso'; +import { LanguageProvider } from '../lib/i18n'; +// TODO: SolutionProvider should really just wrap the tutorial, +// but that requires a bit of refactoring +import { SolutionProvider } from './controllers/tutorial/index.js'; import Header from './header'; -import { storeCtx } from './store-adapter'; -import { getCurrentDocVersion } from '../lib/docs'; - -export default class App extends Component { - store = createStore({ - url: this.props.url || location.pathname + location.search, - lang: 'en', - preactVersion: this.props.preactVersion || '10.11.3', - docVersion: getCurrentDocVersion(location.pathname), - toc: null - }); - - handleUrlChange = ({ url }) => { - let prev = this.store.getState().url || '/'; - if (url !== prev) { - this.store.setState({ - ...this.store.getState(), - toc: null, - url, - docVersion: getCurrentDocVersion(url) - }); - if (typeof ga === 'function') { - ga('send', 'pageview', url); - } - } - }; +import Routes from './routes'; - render() { - const { url } = this.store.getState(); - return ( - - -
-
- -
-
-
- ); - } +export default function App({ preactVersion }) { + return ( + + + + +
+
+ +
+
+
+
+
+ ); } diff --git a/src/components/blog-meta/index.js b/src/components/blog-meta/index.js new file mode 100644 index 000000000..70100d986 --- /dev/null +++ b/src/components/blog-meta/index.js @@ -0,0 +1,62 @@ +import { Time } from '../time'; +import config from '../../config.json'; +import style from './style.module.css'; + +export default function BlogMeta({ meta }) { + return ( +
+ {meta.date &&
+ ); +} + +function AuthorLinks({ authorData, author, i, arr }) { + return ( + + {authorData ? ( + + {author} + + ) : ( + {author} + )} + {i < arr.length - 2 ? ', ' : i === arr.length - 2 ? ' and ' : null} + + ); +} diff --git a/src/components/blog-meta/style.module.css b/src/components/blog-meta/style.module.css new file mode 100644 index 000000000..cd7ccb07e --- /dev/null +++ b/src/components/blog-meta/style.module.css @@ -0,0 +1,12 @@ +.blogMeta { + /* Negative bottom margin negates content-region's top margin */ + margin: 2.5rem auto -3rem; + z-index: 10; + padding: 0.5em 1rem 0.25rem; + width: 100%; + max-width: var(--content-width); + + .authors { + display: inline-block; + } +} diff --git a/src/components/blog-overview/index.js b/src/components/blog-overview/index.js index 435a1be26..f09723d90 100644 --- a/src/components/blog-overview/index.js +++ b/src/components/blog-overview/index.js @@ -1,12 +1,11 @@ import config from '../../config.json'; -import { useTranslation } from '../../lib/i18n'; +import { useLanguage, useTranslation } from '../../lib/i18n'; import { getRouteName } from '../header'; -import { useStore } from '../store-adapter'; import { Time } from '../time'; import s from './style.module.css'; export default function BlogOverview() { - const { lang } = useStore(['lang']).state; + const [lang] = useLanguage(); const continueReading = useTranslation('continueReading'); return ( diff --git a/src/components/branding/index.js b/src/components/branding/index.js index c10c9878b..d292ca407 100644 --- a/src/components/branding/index.js +++ b/src/components/branding/index.js @@ -21,10 +21,18 @@ function LogoVariation({ name, alt }) { height="64" /> diff --git a/src/components/code-block/index.js b/src/components/code-block/index.js index 303c6f32c..26e85b9da 100644 --- a/src/components/code-block/index.js +++ b/src/components/code-block/index.js @@ -1,72 +1,29 @@ -import { useState, useMemo, useRef, useEffect } from 'preact/hooks'; -import { Link } from 'preact-router'; +import { useMemo } from 'preact/hooks'; import * as Comlink from 'comlink'; -import cx from '../../lib/cx'; - -let highlight; -(async function initHighlight() { - ({ highlight } = PRERENDER - ? import('./prism.worker.js') - : Comlink.wrap( - new Worker( - /* webpackChunkName: "prism-worker" */ new URL( - './prism.worker.js', - import.meta.url - ) +import { FakeSuspense, useResource } from '../../lib/use-resource'; + +const { highlight } = PRERENDER + ? require('./prism.worker.js') + : Comlink.wrap( + new Worker( + /* webpackChunkName: "prism-worker" */ new URL( + './prism.worker.js', + import.meta.url ) - )); -})(); - -function useFuture(initializer, params) { - const getInitialState = () => { - try { - const value = initializer(); - if (value && value.then) { - if ('_value' in value) return [value._value]; - if ('_error' in value) return [undefined, value._error]; - return [undefined, undefined, value]; - } - return [value]; - } catch (err) { - return [undefined, err]; - } - }; - - const [pair, setValue] = useState(getInitialState); - - // only run on changes, not initial mount - const isFirstRun = useRef(true); - useEffect(() => { - if (isFirstRun.current) return (isFirstRun.current = false); - setValue(getInitialState()); - }, params || []); - - const pending = pair[2]; - if (pending) { - if (!pending._processing) { - pending._processing = true; - pending - .then(value => { - pending._value = value; - setValue([value]); - }) - .catch(err => { - pending._error = err; - setValue([undefined, err]); - }); - } - } - return pair; -} + ) + ); + +/** + * @param {{ code: string, lang: string }} props + */ +function HighlightedCode({ code, lang }) { + const highlighted = useResource(() => highlight(code, lang), [code, lang]); -const CACHE = {}; -function cachedHighlight(code, lang) { - const id = lang + '\n' + code; - return CACHE[id] || (CACHE[id] = highlight(code, lang)); + const htmlObj = useMemo(() => ({ __html: highlighted }), [highlighted]); + return ; } -function HighlightedCodeBlock({ code, lang, ...props }) { - let repl = false; +function processRepl(code, repl) { let source = code; if (code.startsWith('// --repl')) { repl = true; @@ -102,29 +59,32 @@ function HighlightedCodeBlock({ code, lang, ...props }) { } } - const [highlighted, error, pending] = useFuture( - () => cachedHighlight(code, lang), - [code, lang] - ); + return [code, source, repl]; +} + +/** + * @param {{ code: string, lang: string, repl?: string }} props + */ +function HighlightedCodeBlock({ code, lang }) { + let repl = false, + source = code; + + [code, source, repl] = processRepl(source, repl); - const canHighlight = !!pending || !error; - const html = - (canHighlight && highlighted) || - code.replace(//g, '>'); - const htmlObj = useMemo(() => ({ __html: html }), [html]); + // Show unhighlighted code as a fallback until we're ready + const fallback = {code}; return ( -
+
-				
+				
+					
+				
 			
{repl && ( - + Run in REPL - + )}
); @@ -143,14 +103,7 @@ const CodeBlock = props => { )[1]; const firstChild = getChild(child.props); const code = String(firstChild || '').replace(/(^\s+|\s+$)/g, ''); - return ( - - ); + return ; } return
;
diff --git a/src/components/code-block/prism.worker.js b/src/components/code-block/prism.worker.js
index 05f1342d0..0354a1c92 100644
--- a/src/components/code-block/prism.worker.js
+++ b/src/components/code-block/prism.worker.js
@@ -7,7 +7,8 @@ export function highlight(code, lang) {
 	if (prism.languages[lang] != null) {
 		return prism.highlight(code, prism.languages[lang], lang);
 	}
-	throw Error(`Unknown language: ${lang}`);
+	//console.error(`Unknown language: ${lang}`);
+	return code;
 }
 
 // .expose will throw in SSR env
diff --git a/src/components/content-region/index.js b/src/components/content-region/index.js
index 995d001b2..d9fdde6be 100644
--- a/src/components/content-region/index.js
+++ b/src/components/content-region/index.js
@@ -2,6 +2,7 @@ import Markup from 'preact-markup';
 import widgets from '../widgets';
 import style from './style.module.css';
 import { useTranslation } from '../../lib/i18n';
+import { TocContext } from '../table-of-contents';
 
 const COMPONENTS = {
 	...widgets,
@@ -60,13 +61,15 @@ export default function ContentRegion({ content, components, ...props }) {
 	return (
 		
 			{content && (
-				
+				
+					
+				
 			)}
 			{hasNav && (
 				
diff --git a/src/components/controllers/blog-page.js b/src/components/controllers/blog-page.js new file mode 100644 index 000000000..dc23d7d8b --- /dev/null +++ b/src/components/controllers/blog-page.js @@ -0,0 +1,40 @@ +import { useRoute, useLocation } from 'preact-iso'; +import { useContent } from '../../lib/use-resource'; +import { useTitle, useDescription } from './utils'; +import { NotFound } from './not-found'; +import { useLanguage } from '../../lib/i18n'; +import { MarkdownRegion } from './markdown-region'; +import Footer from '../footer/index'; +import { blogRoutes } from '../../lib/route-utils'; +import style from './style.module.css'; + +export default function BlogPage() { + const { params } = useRoute(); + const { slug } = params; + + if (!blogRoutes[`/blog/${slug}`]) { + return ; + } + + return ; +} + +function BlogLayout() { + const { url } = useLocation(); + const [lang] = useLanguage(); + + const { html, meta } = useContent([lang, url === '/' ? 'index' : url]); + useTitle(meta.title); + useDescription(meta.description); + + return ( +
+
+
+ +
+
+
+
+ ); +} diff --git a/src/components/controllers/doc-page.js b/src/components/controllers/doc-page.js new file mode 100644 index 000000000..e24f89e49 --- /dev/null +++ b/src/components/controllers/doc-page.js @@ -0,0 +1,85 @@ +import { useRoute, useLocation } from 'preact-iso'; +import { useContent } from '../../lib/use-resource'; +import { useTitle, useDescription } from './utils'; +import config from '../../config.json'; +import { NotFound } from './not-found'; +import cx from '../../lib/cx'; +import { LATEST_MAJOR, isDocPage } from '../../lib/docs'; +import { useLanguage } from '../../lib/i18n'; +import { MarkdownRegion } from './markdown-region'; +import Sidebar from '../sidebar'; +import Footer from '../footer/index'; +import { docRoutes } from '../../lib/route-utils'; +import style from './style.module.css'; + +export function DocPage() { + const { params } = useRoute(); + const { version, name } = params; + + if (!docRoutes[version]['/' + name]) { + return ; + } + + return ; +} + +export function DocLayout() { + const { url } = useLocation(); + const [lang] = useLanguage(); + + const { html, meta } = useContent([lang, url === '/' ? 'index' : url]); + useTitle(meta.title); + useDescription(meta.description); + + const hasSidebar = meta.toc !== false && isDocPage(url); + + return ( +
+
+ {hasSidebar && ( +
+ +
+ )} +
+ + +
+
+
+
+ ); +} + +function OldDocsWarning() { + const { name, version } = useRoute().params; + const { url } = useLocation(); + + if (!isDocPage(url) || version === LATEST_MAJOR) { + return null; + } + + const latestExists = config.docs[LATEST_MAJOR].some(section => + section.routes.some(route => route.path === '/' + name) + ); + + return ( +
+ You are viewing the documentation for an older version of Preact. + {latestExists ? ( + <> + {' '} + Switch to the{' '} + current version. + + ) : ( + <> + {' '} + Get started with the{' '} + current version + . + + )} +
+ ); +} diff --git a/src/components/controllers/index.js b/src/components/controllers/index.js deleted file mode 100644 index b80fe0cc2..000000000 --- a/src/components/controllers/index.js +++ /dev/null @@ -1,11 +0,0 @@ -import Page from './page'; -import Repl from 'async!./repl'; -import Tutorial from 'async!./tutorial'; - -export default { - default: Page, - error: Page, - Repl, - Blog: Page, - Tutorial -}; diff --git a/src/components/controllers/markdown-region.js b/src/components/controllers/markdown-region.js new file mode 100644 index 000000000..2c0328214 --- /dev/null +++ b/src/components/controllers/markdown-region.js @@ -0,0 +1,30 @@ +import { useLocation } from 'preact-iso'; +import EditThisPage from '../edit-button'; +import ContentRegion from '../content-region'; +import BlogMeta from '../blog-meta'; + +/** + * @param {object} props + * @propery {string} html + * @propery {any} meta + * @propery {any} [components] + */ +export function MarkdownRegion({ html, meta, components }) { + const { url } = useLocation(); + + const canEdit = url !== '/' && !url.startsWith('/tutorial'); + const isBlogArticle = url.startsWith('/blog/'); + + return ( + <> + {canEdit && } + {isBlogArticle && } + + + ); +} diff --git a/src/components/controllers/not-found.js b/src/components/controllers/not-found.js new file mode 100644 index 000000000..6a64acbc9 --- /dev/null +++ b/src/components/controllers/not-found.js @@ -0,0 +1,25 @@ +import { useLanguage } from '../../lib/i18n'; +import { useContent } from '../../lib/use-resource'; +import { useTitle, useDescription } from './utils'; +import Footer from '../footer'; +import { MarkdownRegion } from './markdown-region'; +import style from './style.module.css'; + +export function NotFound() { + const [lang] = useLanguage(); + + const { html, meta } = useContent([lang, '404']); + useTitle(meta.title); + useDescription(meta.description); + + return ( +
+
+
+ +
+
+
+
+ ); +} diff --git a/src/components/controllers/page.js b/src/components/controllers/page.js new file mode 100644 index 000000000..72744473e --- /dev/null +++ b/src/components/controllers/page.js @@ -0,0 +1,14 @@ +import { useRoute } from 'preact-iso'; +import { navRoutes } from '../../lib/route-utils'; +import { NotFound } from './not-found'; +import { DocLayout } from './doc-page'; + +export function Page() { + const { path } = useRoute(); + + if (!navRoutes[path]) { + return ; + } + + return ; +} diff --git a/src/components/controllers/page/index.js b/src/components/controllers/page/index.js deleted file mode 100644 index 9c81244aa..000000000 --- a/src/components/controllers/page/index.js +++ /dev/null @@ -1,175 +0,0 @@ -import { useEffect, useMemo } from 'preact/hooks'; -import cx from '../../../lib/cx'; -import ContentRegion from '../../content-region'; -import config from '../../../config.json'; -import style from './style.module.css'; -import Footer from '../../footer'; -import Sidebar from './sidebar'; -import Hydrator from '../../../lib/hydrator'; -import EditThisPage from '../../edit-button'; -import { InjectPrerenderData } from '../../../lib/prerender-data'; -import { isDocPage } from '../../../lib/docs'; -import { useStore } from '../../store-adapter'; -import { AVAILABLE_DOCS } from '../../doc-version'; -import { Time } from '../../time'; -import { usePage, getContentId } from '../utils'; - -export default function Page({ route, prev, next }, ctx) { - const store = useStore(['url', 'lang', 'docVersion']); - const { loading, meta, content, html, current, isFallback } = usePage( - route, - store.state.lang - ); - const urlState = store.state; - const url = useMemo(() => urlState.url, [current]); - - const docsUrl = useMemo( - () => url.replace(/(v\d{1,2})/, `v${AVAILABLE_DOCS[0]}`), - [url] - ); - - const layout = `${meta.layout || 'default'}Layout`; - const name = getContentId(route); - - const isReady = !loading; - - // workaround: we toc in the store in order for to pick it up. - if (meta.toc && ctx.store.getState().toc !== meta.toc) { - ctx.store.setState({ - toc: meta.toc - }); - } - - // Note: - // "name" is the exact page ID from the URL - // "current" is the currently *displayed* page ID. - - const canEdit = current !== 'index'; - const isBlogArticle = current.startsWith('/blog/'); - const hasSidebar = meta.toc !== false && isDocPage(url); - - useEffect(() => { - if (location.hash) { - const anchor = document.querySelector(location.hash); - if (anchor) { - // Do not use scrollIntoView as it will cause - // the heading to be covered by the header - scrollTo({ top: anchor.offsetTop }); - } - } - }, [html]); - - return ( -
- -
- -
- {isDocPage(url) && +store.state.docVersion !== AVAILABLE_DOCS[0] && ( -
- You are viewing the documentation for an older version of Preact.{' '} - Switch to the current version → -
- )} - - {isBlogArticle && } - -
-
-
- -
- ); -} - -function BlogMeta({ meta }) { - return ( -
- {meta.date &&
- ); -} diff --git a/src/components/controllers/page/sidebar.js b/src/components/controllers/page/sidebar.js deleted file mode 100644 index 41ed32fdb..000000000 --- a/src/components/controllers/page/sidebar.js +++ /dev/null @@ -1,68 +0,0 @@ -import style from './sidebar.module.css'; -import DocVersion from './../../doc-version'; -import SidebarNav from './sidebar-nav'; -import { useCallback } from 'preact/hooks'; -import config from '../../../config.json'; -import { useStore } from '../../store-adapter'; -import { useOverlayToggle } from '../../../lib/toggle-overlay'; -import { getRouteName } from '../../header'; - -export default function Sidebar() { - const [open, setOpen] = useOverlayToggle(false); - const toggle = useCallback(() => setOpen(!open), [open]); - const close = useCallback(() => setOpen(false), []); - const { docVersion, lang } = useStore(['docVersion', 'lang']).state; - - // Get menu items for the current version of the docs (guides) - // TODO: allow multiple sections - config[meta.section] - const docNav = config.docs - .filter(item => { - // We know that nested routes are part of the same - // doc version, so we just need to check the first - // route. - if (item.routes) { - item = item.routes[0]; - } - - return item.path.indexOf(`/v${docVersion}`) > -1; - }) - .reduce((acc, item) => { - if (item.routes) { - acc.push({ - text: getRouteName(item, lang), - level: 2, - href: null, - routes: item.routes.map(nested => ({ - text: getRouteName(nested, lang), - level: 3, - href: nested.path - })) - }); - } else { - acc.push({ - text: getRouteName(item, lang), - level: 2, - href: item.path - }); - } - return acc; - }, []); - - // TODO: use URL match instead of .content - const guide = config.nav.filter(item => item.content === 'guide')[0]; - const sectionName = getRouteName(guide, lang); - - return ( -
- - -
- ); -} diff --git a/src/components/controllers/page/style.module.css b/src/components/controllers/style.module.css similarity index 87% rename from src/components/controllers/page/style.module.css rename to src/components/controllers/style.module.css index 8c2491d19..dfc89912c 100644 --- a/src/components/controllers/page/style.module.css +++ b/src/components/controllers/style.module.css @@ -7,7 +7,7 @@ margin-bottom: 4rem; } - content-region:not([name='index']) :global(.markup) { + content-region:not([name='/']) :global(.markup) { margin-top: 2.5rem; @media (max-width: 600px) { @@ -45,14 +45,6 @@ text-align: center; } -.blogMeta { - /* Negative bottom margin negates content-region's top margin */ - margin: 2.5rem auto -3rem; - padding: 0.5em 1rem 0.25rem; - width: 100%; - max-width: var(--content-width); -} - content-region h1 { padding: 0.5rem 1rem 0.25rem !important; font-weight: 200; @@ -64,10 +56,6 @@ content-region h1 { } } -.authors { - display: inline-block; -} - .inner { display: flex; flex-direction: column; diff --git a/src/components/controllers/tutorial/index.js b/src/components/controllers/tutorial/index.js index 70f7731ab..e0b627180 100644 --- a/src/components/controllers/tutorial/index.js +++ b/src/components/controllers/tutorial/index.js @@ -8,19 +8,41 @@ import { useMemo, useCallback } from 'preact/hooks'; +import { useLocation, useRoute } from 'preact-iso'; import linkState from 'linkstate'; import cx from '../../../lib/cx'; import style from './style.module.css'; import { ErrorOverlay } from '../repl/error-overlay'; import { parseStackTrace } from '../repl/errors'; -import ContentRegion from '../../content-region'; import widgets from '../../widgets'; -import { usePage } from '../utils'; -import { useStore, storeCtx } from '../../store-adapter'; -import { InjectPrerenderData } from '../../../lib/prerender-data'; -import { getContent } from '../../../lib/content'; +import { useLanguage } from '../../../lib/i18n'; +import { useContent } from '../../../lib/use-resource'; +import { useTitle, useDescription } from '../utils'; import { Splitter } from '../../splitter'; import config from '../../../config.json'; +import { getContent } from '../../../lib/content'; +import { MarkdownRegion } from '../markdown-region.js'; + +/** + * @typedef SolutionContext + * @property {boolean} solved + * @property {(boolean) => void} setSolved + */ + +/** + * @type {import('preact').Context} + */ +const SolutionContext = createContext(/** @type {SolutionContext} */ ({})); + +export function SolutionProvider({ children }) { + const [solved, setSolved] = useState(false); + + return ( + + {children} + + ); +} const IS_PRERENDERING = typeof window === 'undefined'; @@ -31,7 +53,7 @@ const TUTORIAL_COMPONENTS = { Solution }; -export default class Tutorial extends Component { +export default class TutorialPage extends Component { state = { loading: true, code: '', @@ -43,7 +65,7 @@ export default class Tutorial extends Component { content = createRef(); runner = createRef(); - static contextType = storeCtx; + static contextType = SolutionContext; resultHandlers = new Set(); realmHandlers = new Set(); @@ -79,7 +101,7 @@ export default class Tutorial extends Component { 'repl-initial': '', 'repl-final': '' }); - this.context.setState({ solved: false }); + this.context.setSolved(false); } } @@ -138,9 +160,8 @@ export default class Tutorial extends Component { this.setState({ error: null }); }; - render({ route, step }, { loading, code, error }) { + render({ step }, { loading, code, error }) { const state = { - route, step, loading, code, @@ -158,7 +179,6 @@ export default class Tutorial extends Component { function TutorialView({ step, - route, loading, code, error, @@ -166,36 +186,43 @@ function TutorialView({ CodeEditor, clearError }) { - const content = useRef(); + const content = useRef(null); const tutorial = useContext(TutorialContext); const [showCodeOverride, toggleCode] = useReducer(s => !s, true); - const { lang, solved } = useStore(['lang', 'solved']).state; - const fullPath = route.path.replace(':step?', step || route.first); - const page = usePage({ path: fullPath }, lang); - const title = (page && page.meta.title) || route.title; - const solvable = page && page.meta.solvable === true; - const hasCode = page && page.meta.code !== false && step && step !== 'index'; + const { url } = useLocation(); + const { params } = useRoute(); + const [lang] = useLanguage(); + const { solved } = useContext(SolutionContext); + + const { html, meta } = useContent([ + lang, + !params.step ? 'tutorial/index' : url + ]); + useTitle(meta.title); + useDescription(meta.description); + + const solvable = meta.solvable === true; + const hasCode = meta.code !== false && step && step !== 'index'; const showCode = showCodeOverride && hasCode; - loading = - !page.html || (showCode && (!!page.loading || !Runner || !CodeEditor)); - const initialLoad = !page.html || !Runner || !CodeEditor; + loading = !html || (showCode && (!Runner || !CodeEditor)); + const initialLoad = !html || !Runner || !CodeEditor; // Scroll to the top after loading useEffect(() => { if (!loading && !initialLoad) { content.current.scrollTo(0, 0); } - }, [fullPath, loading, initialLoad]); + }, [url, loading, initialLoad]); // Preload the next chapter useEffect(() => { - if (page.meta && page.meta.next) { - getContent([lang, page.meta.next]); + if (meta && meta.next) { + getContent([lang, meta.next]); } - }, [page.meta && page.meta.next, fullPath]); + }, [meta && meta.next, url]); const reRun = useCallback(() => { let code = tutorial.state.code; @@ -207,13 +234,12 @@ function TutorialView({ return ( - {!initialLoad && (
-

{title}

+

{meta.title}

- + {/* + />*/} @@ -338,7 +367,6 @@ const REPL_CSS = ` function ReplWrapper({ loading, - subtleLoading, solvable, solved, initialLoad, @@ -347,7 +375,7 @@ function ReplWrapper({ }) { return (
- +
tutorial.runner.current.realm.globalThis._require(m); const fn = new Function( @@ -422,11 +450,10 @@ function TutorialSetupBlock({ code }) { 'useEffect', 'useRef', 'useMemo', - 'useStore', 'useResult', 'useRealm', 'useError', - 'store', + 'solutionCtx', 'realm', 'require', code @@ -440,11 +467,10 @@ function TutorialSetupBlock({ code }) { useEffect, useRef, useMemo, - useStore, tutorial.useResult, tutorial.useRealm, tutorial.useError, - store, + solutionCtx, tutorial.runner.current && tutorial.runner.current.realm, require ); @@ -457,8 +483,8 @@ function TutorialSetupBlock({ code }) { /** Shows a solution banner when the chapter is solved */ function Solution({ children }) { - const { solved } = useStore(['solved']).state; - const ref = useRef(); + const { solved } = useContext(SolutionContext); + const ref = useRef(null); useEffect(() => { if (solved) { diff --git a/src/components/controllers/tutorial/style.module.css b/src/components/controllers/tutorial/style.module.css index 0d5f1c35e..46e9e09b4 100644 --- a/src/components/controllers/tutorial/style.module.css +++ b/src/components/controllers/tutorial/style.module.css @@ -79,9 +79,9 @@ background: rgba(150, 150, 150, 0.6); } - & > h1 { + h1 { margin: 0; - padding: 0.25em 0; + padding: 0.25em 0 !important; font-size: 2.5rem; font-weight: 200; font-weight: bold; diff --git a/src/components/controllers/utils.js b/src/components/controllers/utils.js index 5eb2663e6..288451e16 100644 --- a/src/components/controllers/utils.js +++ b/src/components/controllers/utils.js @@ -1,7 +1,5 @@ -import { useEffect, useRef, useState } from 'preact/hooks'; +import { useEffect } from 'preact/hooks'; -import { getContentOnServer, getContent } from '../../lib/content'; -import { getPrerenderData } from '../../lib/prerender-data'; import { createTitle } from '../../lib/page-title'; /** @@ -28,86 +26,3 @@ export function useDescription(text) { } }, [text]); } - -export const getContentId = route => route.content || route.path; -export function usePage(route, lang) { - // on the server, pass data down through the tree to avoid repeated FS lookups - if (PRERENDER) { - const { content, html, meta } = getContentOnServer(route.path, lang); - return { - current: getContentId(route), - content, - html, - meta, - loading: true // this is important since the client will initialize in a loading state. - }; - } - - const [current, setCurrent] = useState(getContentId(route)); - - const bootData = getPrerenderData(current); - - const [hydrated, setHydrated] = useState(!!bootData); - const [content, setContent] = useState( - hydrated && bootData && bootData.content - ); - const [html, setHtml] = useState(hydrated && bootData && bootData.html); - - const [loading, setLoading] = useState(true); - const [isFallback, setFallback] = useState(false); - let [meta, setMeta] = useState(hydrated ? bootData.meta : undefined); - if (!meta) meta = (hydrated && bootData.meta) || {}; - - const lock = useRef(); - useEffect(() => { - if (!didLoad) { - setLoading(true); - } - const contentId = getContentId(route); - lock.current = contentId; - getContent([lang, contentId]).then(data => { - // Discard old load events - if (lock.current !== contentId) return; - onLoad(data); - }); - }, [getContentId(route), lang]); - - useTitle(meta.title); - useDescription(meta.description); - - let didLoad = false; - function onLoad(data) { - const { content, html, meta, fallback } = data; - didLoad = true; - - // Don't show loader forever in case of an error - if (!meta) return; - - setContent(content); - setMeta(meta); - setHtml(html); - setLoading(false); - setFallback(fallback); - const current = getContentId(route); - const bootData = getPrerenderData(current); - setHydrated(!!bootData); - setCurrent(current); - // content was loaded. if this was a forward route transition, animate back to top - if (window.nextStateToTop) { - window.nextStateToTop = false; - scrollTo({ - top: 0, - left: 0 - }); - } - } - - return { - current, - content, - html, - meta, - loading, - isFallback - }; -} diff --git a/src/components/doc-version/index.js b/src/components/doc-version/index.js index 0399e251a..cbb9804bf 100644 --- a/src/components/doc-version/index.js +++ b/src/components/doc-version/index.js @@ -1,11 +1,7 @@ +import { useCallback } from 'preact/hooks'; +import { useLocation, useRoute } from 'preact-iso'; +import config from '../../config.json'; import style from './style.module.css'; -import { getCurrentUrl, route } from 'preact-router'; -import { useStore } from '../store-adapter'; - -function onChange(e) { - const url = getCurrentUrl().replace(/(v\d{1,2})/, `v${e.target.value}`); - route(url); -} export const AVAILABLE_DOCS = [10, 8]; @@ -13,16 +9,28 @@ export const AVAILABLE_DOCS = [10, 8]; * Select box to switch the currently displayed docs version */ export default function DocVersion() { - const { docVersion } = useStore(['docVersion']).state; + const { path, route } = useLocation(); + const { version, name } = useRoute().params; + + const onChange = useCallback( + e => { + const version = e.currentTarget.value; + const url = config.docs[version]?.[name] + ? path.replace(/(v\d{1,2})/, version) + : `/guide/${version}/getting-started`; + route(url); + }, + [path, route] + ); return (