diff --git a/cli/commands/site/create.ts b/cli/commands/site/create.ts index 6ffbbbccd1..922dddd9d5 100644 --- a/cli/commands/site/create.ts +++ b/cli/commands/site/create.ts @@ -3,7 +3,7 @@ import fs from 'fs'; import path from 'path'; import { SupportedPHPVersions } from '@php-wasm/universal'; import { __, sprintf } from '@wordpress/i18n'; -import { Blueprint } from '@wp-playground/blueprints'; +import { BlueprintV1Declaration } from '@wp-playground/blueprints'; import { RecommendedPHPVersion } from '@wp-playground/common'; import { filterUnsupportedBlueprintFeatures, @@ -74,7 +74,7 @@ export async function runCommand( ); } - let blueprint: Blueprint | undefined; + let blueprint: BlueprintV1Declaration | undefined; if ( options.blueprintJson ) { const validation = await validateBlueprintData( options.blueprintJson ); if ( ! validation.valid ) { @@ -92,7 +92,9 @@ export async function runCommand( ); } - blueprint = filterUnsupportedBlueprintFeatures( options.blueprintJson ) as Blueprint; + blueprint = filterUnsupportedBlueprintFeatures( + options.blueprintJson + ) as BlueprintV1Declaration; } const appdata = await readAppdata(); diff --git a/cli/commands/site/tests/create.test.ts b/cli/commands/site/tests/create.test.ts index f7e1f6e6c6..74ab1d6bb4 100644 --- a/cli/commands/site/tests/create.test.ts +++ b/cli/commands/site/tests/create.test.ts @@ -1,4 +1,4 @@ -import { Blueprint } from '@wp-playground/blueprints'; +import { BlueprintV1Declaration } from '@wp-playground/blueprints'; import { filterUnsupportedBlueprintFeatures, validateBlueprintData, @@ -469,8 +469,13 @@ describe( 'CLI: studio site create', () => { } ); describe( 'Blueprint Handling', () => { - const testBlueprint: Blueprint = { - steps: [ { step: 'installPlugin', pluginData: { slug: 'akismet' } } ], + const testBlueprint: BlueprintV1Declaration = { + steps: [ + { + step: 'installPlugin', + pluginData: { resource: 'wordpress.org/plugins', slug: 'akismet' }, + }, + ], }; it( 'should apply blueprint when provided', async () => { @@ -564,7 +569,7 @@ describe( 'CLI: studio site create', () => { } ); it( 'should apply blueprint without starting server when noStart is true', async () => { - const testBlueprint: Blueprint = { steps: [] }; + const testBlueprint: BlueprintV1Declaration = { steps: [] }; const { runCommand } = await import( '../create' ); @@ -602,7 +607,7 @@ describe( 'CLI: studio site create', () => { } ); it( 'should handle blueprint application failure', async () => { - const testBlueprint: Blueprint = { steps: [] }; + const testBlueprint: BlueprintV1Declaration = { steps: [] }; ( runBlueprint as jest.Mock ).mockRejectedValue( new Error( 'Blueprint failed' ) ); const { runCommand } = await import( '../create' ); diff --git a/package-lock.json b/package-lock.json index b8c0887ef1..f5f1384035 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,9 +15,9 @@ "@formatjs/intl-locale": "^3.4.5", "@formatjs/intl-localematcher": "^0.5.4", "@inquirer/prompts": "^7.10.1", - "@php-wasm/node": "^3.0.22", - "@php-wasm/scopes": "^3.0.22", - "@php-wasm/universal": "^3.0.22", + "@php-wasm/node": "^3.0.40", + "@php-wasm/scopes": "^3.0.40", + "@php-wasm/universal": "^3.0.40", "@reduxjs/toolkit": "^2.11.2", "@rive-app/react-canvas": "^4.12.0", "@sentry/electron": "^6.5.0", @@ -27,9 +27,9 @@ "@wordpress/dataviews": "^11.0.0", "@wordpress/i18n": "^6.9.0", "@wordpress/icons": "^11.4.0", - "@wp-playground/blueprints": "^3.0.22", - "@wp-playground/cli": "^3.0.22", - "@wp-playground/wordpress": "^3.0.22", + "@wp-playground/blueprints": "^3.0.40", + "@wp-playground/cli": "^3.0.40", + "@wp-playground/wordpress": "^3.0.40", "archiver": "^6.0.2", "atomically": "^2.1.0", "cli-table3": "^0.6.5", @@ -7258,17 +7258,566 @@ "@noble/hashes": "^1.1.5" } }, + "node_modules/@parcel/watcher": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.5.1.tgz", + "integrity": "sha512-dfUnCxiN9H4ap84DvD2ubjw+3vUNpstxa0TneY/Paat8a3R4uQZDLSvWjmznAY/DoahqTHl9V46HF/Zs3F29pg==", + "dev": true, + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "peer": true, + "dependencies": { + "detect-libc": "^1.0.3", + "is-glob": "^4.0.3", + "micromatch": "^4.0.5", + "node-addon-api": "^7.0.0" + }, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + }, + "optionalDependencies": { + "@parcel/watcher-android-arm64": "2.5.1", + "@parcel/watcher-darwin-arm64": "2.5.1", + "@parcel/watcher-darwin-x64": "2.5.1", + "@parcel/watcher-freebsd-x64": "2.5.1", + "@parcel/watcher-linux-arm-glibc": "2.5.1", + "@parcel/watcher-linux-arm-musl": "2.5.1", + "@parcel/watcher-linux-arm64-glibc": "2.5.1", + "@parcel/watcher-linux-arm64-musl": "2.5.1", + "@parcel/watcher-linux-x64-glibc": "2.5.1", + "@parcel/watcher-linux-x64-musl": "2.5.1", + "@parcel/watcher-win32-arm64": "2.5.1", + "@parcel/watcher-win32-ia32": "2.5.1", + "@parcel/watcher-win32-x64": "2.5.1" + } + }, + "node_modules/@parcel/watcher-android-arm64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-android-arm64/-/watcher-android-arm64-2.5.1.tgz", + "integrity": "sha512-KF8+j9nNbUN8vzOFDpRMsaKBHZ/mcjEjMToVMJOhTozkDonQFFrRcfdLWn6yWKCmJKmdVxSgHiYvTCef4/qcBA==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "peer": true, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-arm64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-arm64/-/watcher-darwin-arm64-2.5.1.tgz", + "integrity": "sha512-eAzPv5osDmZyBhou8PoF4i6RQXAfeKL9tjb3QzYuccXFMQU0ruIc/POh30ePnaOyD1UXdlKguHBmsTs53tVoPw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "peer": true, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-darwin-x64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-darwin-x64/-/watcher-darwin-x64-2.5.1.tgz", + "integrity": "sha512-1ZXDthrnNmwv10A0/3AJNZ9JGlzrF82i3gNQcWOzd7nJ8aj+ILyW1MTxVk35Db0u91oD5Nlk9MBiujMlwmeXZg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "peer": true, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-freebsd-x64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-freebsd-x64/-/watcher-freebsd-x64-2.5.1.tgz", + "integrity": "sha512-SI4eljM7Flp9yPuKi8W0ird8TI/JK6CSxju3NojVI6BjHsTyK7zxA9urjVjEKJ5MBYC+bLmMcbAWlZ+rFkLpJQ==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "peer": true, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-glibc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-glibc/-/watcher-linux-arm-glibc-2.5.1.tgz", + "integrity": "sha512-RCdZlEyTs8geyBkkcnPWvtXLY44BCeZKmGYRtSgtwwnHR4dxfHRG3gR99XdMEdQ7KeiDdasJwwvNSF5jKtDwdA==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm-musl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm-musl/-/watcher-linux-arm-musl-2.5.1.tgz", + "integrity": "sha512-6E+m/Mm1t1yhB8X412stiKFG3XykmgdIOqhjWj+VL8oHkKABfu/gjFj8DvLrYVHSBNC+/u5PeNrujiSQ1zwd1Q==", + "cpu": [ + "arm" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-glibc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-glibc/-/watcher-linux-arm64-glibc-2.5.1.tgz", + "integrity": "sha512-LrGp+f02yU3BN9A+DGuY3v3bmnFUggAITBGriZHUREfNEzZh/GO06FF5u2kx8x+GBEUYfyTGamol4j3m9ANe8w==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-arm64-musl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-arm64-musl/-/watcher-linux-arm64-musl-2.5.1.tgz", + "integrity": "sha512-cFOjABi92pMYRXS7AcQv9/M1YuKRw8SZniCDw0ssQb/noPkRzA+HBDkwmyOJYp5wXcsTrhxO0zq1U11cK9jsFg==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-glibc": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-glibc/-/watcher-linux-x64-glibc-2.5.1.tgz", + "integrity": "sha512-GcESn8NZySmfwlTsIur+49yDqSny2IhPeZfXunQi48DMugKeZ7uy1FX83pO0X22sHntJ4Ub+9k34XQCX+oHt2A==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-linux-x64-musl": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-linux-x64-musl/-/watcher-linux-x64-musl-2.5.1.tgz", + "integrity": "sha512-n0E2EQbatQ3bXhcH2D1XIAANAcTZkQICBPVaxMeaCVBtOpBZpWJuf7LwyWPSBDITb7In8mqQgJ7gH8CILCURXg==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "peer": true, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-arm64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-arm64/-/watcher-win32-arm64-2.5.1.tgz", + "integrity": "sha512-RFzklRvmc3PkjKjry3hLF9wD7ppR4AKcWNzH7kXR7GUe0Igb3Nz8fyPwtZCSquGrhU5HhUNDr/mKBqj7tqA2Vw==", + "cpu": [ + "arm64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-ia32": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-ia32/-/watcher-win32-ia32-2.5.1.tgz", + "integrity": "sha512-c2KkcVN+NJmuA7CGlaGD1qJh1cLfDnQsHjE89E60vUEMlqduHGCdCLJCID5geFVM0dOtA3ZiIO8BoEQmzQVfpQ==", + "cpu": [ + "ia32" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher-win32-x64": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/@parcel/watcher-win32-x64/-/watcher-win32-x64-2.5.1.tgz", + "integrity": "sha512-9lHBdJITeNR++EvSQVUcaZoWupyHfXe1jZvGZ06O/5MflPcuPLtEphScIBL+AiCWBO46tDSHzWyD0uDmmZqsgA==", + "cpu": [ + "x64" + ], + "dev": true, + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "peer": true, + "engines": { + "node": ">= 10.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/parcel" + } + }, + "node_modules/@parcel/watcher/node_modules/detect-libc": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", + "integrity": "sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==", + "dev": true, + "license": "Apache-2.0", + "optional": true, + "peer": true, + "bin": { + "detect-libc": "bin/detect-libc.js" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/@php-wasm/cli-util": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/cli-util/-/cli-util-3.0.40.tgz", + "integrity": "sha512-3riF7ddpwyM3vyvNs1iK0dYdyqGpcFXY1Ds5rzyidLPe0E88fueOvRUh6r1axW3oUBDmvcS7VnE93ELeGm/1UQ==", + "license": "GPL-2.0-or-later", + "dependencies": { + "fast-xml-parser": "5.3.0", + "jsonc-parser": "3.3.1" + }, + "engines": { + "node": ">=20.18.3", + "npm": ">=10.1.0" + }, + "optionalDependencies": { + "fs-ext": "2.1.1" + } + }, "node_modules/@php-wasm/fs-journal": { - "version": "3.0.22", - "resolved": "https://registry.npmjs.org/@php-wasm/fs-journal/-/fs-journal-3.0.22.tgz", - "integrity": "sha512-0aRtl2G/yejbyAC6guesznFKsg2EN3QEAjjKOJZ+QJogVT3szys0td8tNcQ0fcHYoSJj9lS8yZ+84EjpWN4LzQ==", + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/fs-journal/-/fs-journal-3.0.40.tgz", + "integrity": "sha512-sILsQBs3HDrqiCWOLfOsTBfG6LPzH9QTyeuSivzE+ecvfZ3eeudh5C52OJ6DciWvZH+R+5gzjOrFds/xxCBqoQ==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@php-wasm/logger": "3.0.40", + "@php-wasm/node": "3.0.40", + "@php-wasm/universal": "3.0.40", + "@php-wasm/util": "3.0.40", + "express": "4.22.0", + "ini": "4.1.2", + "wasm-feature-detect": "1.8.0", + "ws": "8.18.3", + "yargs": "17.7.2" + }, + "engines": { + "node": ">=20.18.3", + "npm": ">=10.1.0" + }, + "optionalDependencies": { + "fs-ext": "2.1.1" + } + }, + "node_modules/@php-wasm/fs-journal/node_modules/cliui": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "license": "ISC", + "dependencies": { + "string-width": "^4.2.0", + "strip-ansi": "^6.0.1", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@php-wasm/fs-journal/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/@php-wasm/fs-journal/node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@php-wasm/fs-journal/node_modules/express": { + "version": "4.22.0", + "resolved": "https://registry.npmjs.org/express/-/express-4.22.0.tgz", + "integrity": "sha512-c2iPh3xp5vvCLgaHK03+mWLFPhox7j1LwyxcZwFVApEv5i0X+IjPpbT50SJJwwLpdBVfp45AkK/v+AFgv/XlfQ==", + "license": "MIT", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "~1.20.3", + "content-disposition": "~0.5.4", + "content-type": "~1.0.4", + "cookie": "~0.7.1", + "cookie-signature": "~1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "~1.3.1", + "fresh": "~0.5.2", + "http-errors": "~2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "~2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "~0.1.12", + "proxy-addr": "~2.0.7", + "qs": "~6.14.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "~0.19.0", + "serve-static": "~1.16.2", + "setprototypeof": "1.2.0", + "statuses": "~2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, + "node_modules/@php-wasm/fs-journal/node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@php-wasm/fs-journal/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" + }, + "node_modules/@php-wasm/fs-journal/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/@php-wasm/fs-journal/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "license": "MIT", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@php-wasm/fs-journal/node_modules/yargs": { + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "license": "MIT", + "dependencies": { + "cliui": "^8.0.1", + "escalade": "^3.1.1", + "get-caller-file": "^2.0.5", + "require-directory": "^2.1.1", + "string-width": "^4.2.3", + "y18n": "^5.0.5", + "yargs-parser": "^21.1.1" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@php-wasm/logger": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/logger/-/logger-3.0.40.tgz", + "integrity": "sha512-IuwERmtYK13f3jvIrOmoIDUJi2rmurrhRpfkLTbupkskJ3faFtK5ZdPCrIhUbRbsqaeo0p2oFCgfExpk1VixIQ==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@php-wasm/node-polyfills": "3.0.40" + }, + "engines": { + "node": ">=20.18.3", + "npm": ">=10.1.0" + }, + "optionalDependencies": { + "fs-ext": "2.1.1" + } + }, + "node_modules/@php-wasm/node": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/node/-/node-3.0.40.tgz", + "integrity": "sha512-0QfJViSNMsDq9icEIhBtoEF7SMKykMxe6FHASwJp81tV+cxYlzI2042vVZI4/bL+4VjRUbFVPkt87VRje6bj4w==", "license": "GPL-2.0-or-later", "dependencies": { - "@php-wasm/logger": "3.0.22", - "@php-wasm/node": "3.0.22", - "@php-wasm/universal": "3.0.22", - "@php-wasm/util": "3.0.22", - "express": "4.21.2", + "@php-wasm/logger": "3.0.40", + "@php-wasm/node-7-2": "3.0.40", + "@php-wasm/node-7-3": "3.0.40", + "@php-wasm/node-7-4": "3.0.40", + "@php-wasm/node-8-0": "3.0.40", + "@php-wasm/node-8-1": "3.0.40", + "@php-wasm/node-8-2": "3.0.40", + "@php-wasm/node-8-3": "3.0.40", + "@php-wasm/node-8-4": "3.0.40", + "@php-wasm/node-8-5": "3.0.40", + "@php-wasm/node-polyfills": "3.0.40", + "@php-wasm/universal": "3.0.40", + "@php-wasm/util": "3.0.40", + "@wp-playground/common": "3.0.40", + "express": "4.22.0", "ini": "4.1.2", "wasm-feature-detect": "1.8.0", "ws": "8.18.3", @@ -7282,7 +7831,268 @@ "fs-ext": "2.1.1" } }, - "node_modules/@php-wasm/fs-journal/node_modules/cliui": { + "node_modules/@php-wasm/node-7-2": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/node-7-2/-/node-7-2-3.0.40.tgz", + "integrity": "sha512-UujBes3y5jT03vwmnltPclRVYdTMJxqTWjmFRj0xexMqsbRtx/4aBI7ptDRXngAKawU9gf3iCNGYgPGoMbjhMg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@php-wasm/universal": "3.0.40", + "ini": "4.1.2", + "wasm-feature-detect": "1.8.0", + "ws": "8.18.3" + }, + "engines": { + "node": ">=20.18.3", + "npm": ">=10.1.0" + }, + "optionalDependencies": { + "fs-ext": "2.1.1" + } + }, + "node_modules/@php-wasm/node-7-2/node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@php-wasm/node-7-3": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/node-7-3/-/node-7-3-3.0.40.tgz", + "integrity": "sha512-VYtKYF4j5tkOR7rmeP7po+TKFUWlFO7s3qHSzd4zDzqSzR/A1xbZNe9IzDvYyTxsSpQuahfUGg8fNpum0PseAw==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@php-wasm/universal": "3.0.40", + "ini": "4.1.2", + "wasm-feature-detect": "1.8.0", + "ws": "8.18.3" + }, + "engines": { + "node": ">=20.18.3", + "npm": ">=10.1.0" + }, + "optionalDependencies": { + "fs-ext": "2.1.1" + } + }, + "node_modules/@php-wasm/node-7-3/node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@php-wasm/node-7-4": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/node-7-4/-/node-7-4-3.0.40.tgz", + "integrity": "sha512-7ffk+/tDuw2ULqqTdpInNVqVUxFQqWnUQg8Lnt8wtaQv1gUs0yCxSFovjSls2EEMMdEcMJY59XtKtdyJd1Emkg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@php-wasm/universal": "3.0.40", + "ini": "4.1.2", + "wasm-feature-detect": "1.8.0", + "ws": "8.18.3" + }, + "engines": { + "node": ">=20.18.3", + "npm": ">=10.1.0" + }, + "optionalDependencies": { + "fs-ext": "2.1.1" + } + }, + "node_modules/@php-wasm/node-7-4/node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@php-wasm/node-8-0": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/node-8-0/-/node-8-0-3.0.40.tgz", + "integrity": "sha512-l5On5ig/JGQO9owu+dwz+4u3nhpyZkZXjWgTLTvAd3WoUGeNPgJJzhjuDVpck7WRMJxmoOZY5XMSkzAPwBzUfQ==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@php-wasm/universal": "3.0.40", + "ini": "4.1.2", + "wasm-feature-detect": "1.8.0", + "ws": "8.18.3" + }, + "engines": { + "node": ">=20.18.3", + "npm": ">=10.1.0" + }, + "optionalDependencies": { + "fs-ext": "2.1.1" + } + }, + "node_modules/@php-wasm/node-8-0/node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@php-wasm/node-8-1": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/node-8-1/-/node-8-1-3.0.40.tgz", + "integrity": "sha512-wtMcehlCVoIkmt1RNNkrJabPjQ0qCXOEMkeavC6flIw7xkY+W45p0iZsA0BZqmS7NmUEdvv7/f3ZqdZJ0nGkvg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@php-wasm/universal": "3.0.40", + "ini": "4.1.2", + "wasm-feature-detect": "1.8.0", + "ws": "8.18.3" + }, + "engines": { + "node": ">=20.18.3", + "npm": ">=10.1.0" + }, + "optionalDependencies": { + "fs-ext": "2.1.1" + } + }, + "node_modules/@php-wasm/node-8-1/node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@php-wasm/node-8-2": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/node-8-2/-/node-8-2-3.0.40.tgz", + "integrity": "sha512-YfImUVTEvFT7IizOOBVPjtvSWIo9y0wqa2ez1TBZCa4Gof8D5K8vzaBONccHqxZHXDOMM9HC7H/5Ekiz7TVL0w==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@php-wasm/universal": "3.0.40", + "ini": "4.1.2", + "wasm-feature-detect": "1.8.0", + "ws": "8.18.3" + }, + "engines": { + "node": ">=20.18.3", + "npm": ">=10.1.0" + }, + "optionalDependencies": { + "fs-ext": "2.1.1" + } + }, + "node_modules/@php-wasm/node-8-2/node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@php-wasm/node-8-3": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/node-8-3/-/node-8-3-3.0.40.tgz", + "integrity": "sha512-XV8bqBEJWG236zlaJoj//g4vBJ/2UwDEJfSaLy39T5gF+GmxAxOdwN9JegFGenK1iGP28L7xLAw9EWFmTDb1sg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@php-wasm/universal": "3.0.40", + "ini": "4.1.2", + "wasm-feature-detect": "1.8.0", + "ws": "8.18.3" + }, + "engines": { + "node": ">=20.18.3", + "npm": ">=10.1.0" + }, + "optionalDependencies": { + "fs-ext": "2.1.1" + } + }, + "node_modules/@php-wasm/node-8-3/node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@php-wasm/node-8-4": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/node-8-4/-/node-8-4-3.0.40.tgz", + "integrity": "sha512-TVDtF7d23y52sWQ1zFXHaW7eMRwzvePcrhMDxuMyUysxdjZLRSeFhZbLGwGOKN2Am29NAM9cVkeW0UlWcJE9OA==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@php-wasm/universal": "3.0.40", + "ini": "4.1.2", + "wasm-feature-detect": "1.8.0", + "ws": "8.18.3" + }, + "engines": { + "node": ">=20.18.3", + "npm": ">=10.1.0" + }, + "optionalDependencies": { + "fs-ext": "2.1.1" + } + }, + "node_modules/@php-wasm/node-8-4/node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@php-wasm/node-8-5": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/node-8-5/-/node-8-5-3.0.40.tgz", + "integrity": "sha512-almlXW2qi2rd0hOoT9JZVcGpWFqBJwkeWAOkNBCS9VjT/fN+ciZHU0fNfH0yJDyRf5UKwzKS94JIK4r4J8N0eg==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@php-wasm/universal": "3.0.40", + "ini": "4.1.2", + "wasm-feature-detect": "1.8.0", + "ws": "8.18.3" + }, + "engines": { + "node": ">=20.18.3", + "npm": ">=10.1.0" + }, + "optionalDependencies": { + "fs-ext": "2.1.1" + } + }, + "node_modules/@php-wasm/node-8-5/node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@php-wasm/node-polyfills": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/node-polyfills/-/node-polyfills-3.0.40.tgz", + "integrity": "sha512-x/qZ0fYOQf/l6EcpvL6hxohwiRlQo5QNObnUmFDYMl3BUt87PXgSAPg8WHaJ9u0BT7H0ej5iUtN9JLERK1LLCw==", + "license": "GPL-2.0-or-later", + "optionalDependencies": { + "fs-ext": "2.1.1" + } + }, + "node_modules/@php-wasm/node/node_modules/cliui": { "version": "8.0.1", "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", @@ -7296,16 +8106,105 @@ "node": ">=12" } }, - "node_modules/@php-wasm/fs-journal/node_modules/ini": { + "node_modules/@php-wasm/node/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/@php-wasm/node/node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@php-wasm/node/node_modules/express": { + "version": "4.22.0", + "resolved": "https://registry.npmjs.org/express/-/express-4.22.0.tgz", + "integrity": "sha512-c2iPh3xp5vvCLgaHK03+mWLFPhox7j1LwyxcZwFVApEv5i0X+IjPpbT50SJJwwLpdBVfp45AkK/v+AFgv/XlfQ==", + "license": "MIT", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "~1.20.3", + "content-disposition": "~0.5.4", + "content-type": "~1.0.4", + "cookie": "~0.7.1", + "cookie-signature": "~1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "~1.3.1", + "fresh": "~0.5.2", + "http-errors": "~2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "~2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "~0.1.12", + "proxy-addr": "~2.0.7", + "qs": "~6.14.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "~0.19.0", + "serve-static": "~1.16.2", + "setprototypeof": "1.2.0", + "statuses": "~2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, + "node_modules/@php-wasm/node/node_modules/ini": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", - "license": "ISC", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@php-wasm/fs-journal/node_modules/strip-ansi": { + "node_modules/@php-wasm/node/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" + }, + "node_modules/@php-wasm/node/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/@php-wasm/node/node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", @@ -7317,7 +8216,7 @@ "node": ">=8" } }, - "node_modules/@php-wasm/fs-journal/node_modules/yargs": { + "node_modules/@php-wasm/node/node_modules/yargs": { "version": "17.7.2", "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", @@ -7335,13 +8234,14 @@ "node": ">=12" } }, - "node_modules/@php-wasm/logger": { - "version": "3.0.22", - "resolved": "https://registry.npmjs.org/@php-wasm/logger/-/logger-3.0.22.tgz", - "integrity": "sha512-AlomcaUmpBSSrkFNET5MOKVsqdTTID05nXWNKqgViRQaeepksIFukZYo1xm3XOAP/OhdKZ7IyblyfMSuStOVAg==", + "node_modules/@php-wasm/progress": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/progress/-/progress-3.0.40.tgz", + "integrity": "sha512-2EFBBo7HkFi1/O8kczL3vn/0SAWbX7fekXjSfdmR35GnuoRnt5kqc6jpcRx+VjlCwaguSXx4vv5zapFTCRBfuQ==", "license": "GPL-2.0-or-later", "dependencies": { - "@php-wasm/node-polyfills": "3.0.22" + "@php-wasm/logger": "3.0.40", + "@php-wasm/node-polyfills": "3.0.40" }, "engines": { "node": ">=20.18.3", @@ -7351,19 +8251,98 @@ "fs-ext": "2.1.1" } }, - "node_modules/@php-wasm/node": { - "version": "3.0.22", - "resolved": "https://registry.npmjs.org/@php-wasm/node/-/node-3.0.22.tgz", - "integrity": "sha512-OlbCIGFB4ACHlha0C+MVYT47RKqulMUu35C1j6VdUAkYcen+QpzbXJGH4wMTBAkcw+q/jWUqllgGjDsoWDjj/w==", + "node_modules/@php-wasm/scopes": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/scopes/-/scopes-3.0.40.tgz", + "integrity": "sha512-+l38jcuR4xaSGqc8cBhI+vMAyH1GJAeK9MVSPX4W6+sq2STk92FdWOMjMJ3BGA58W3Lp0r8QMgll+i0EFCDbFA==", + "license": "GPL-2.0-or-later", + "engines": { + "node": ">=20.18.3", + "npm": ">=10.1.0" + }, + "optionalDependencies": { + "fs-ext": "2.1.1" + } + }, + "node_modules/@php-wasm/stream-compression": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/stream-compression/-/stream-compression-3.0.40.tgz", + "integrity": "sha512-8Gzen3IqssCbb6hVaY9qTRStUskcZj9X0uu9Cc6fPs5y3QhN68ofCPUXGU5eF3B3vkXWbqpGs/RykHLAZk4Pdg==", "license": "GPL-2.0-or-later", "dependencies": { - "@php-wasm/logger": "3.0.22", - "@php-wasm/node-polyfills": "3.0.22", - "@php-wasm/universal": "3.0.22", - "@php-wasm/util": "3.0.22", - "@wp-playground/common": "3.0.22", - "express": "4.21.2", + "@php-wasm/node-polyfills": "3.0.40", + "@php-wasm/util": "3.0.40" + }, + "optionalDependencies": { + "fs-ext": "2.1.1" + } + }, + "node_modules/@php-wasm/universal": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/universal/-/universal-3.0.40.tgz", + "integrity": "sha512-W2zjBYU8cuZ0NMlGUnYBGp0lAnPgCAU3SZzrW7rI/XligJkaAdd7SjAjBepR8iU9/PmDHXFV3X9jyJ1ZX4wpTw==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@php-wasm/logger": "3.0.40", + "@php-wasm/node-polyfills": "3.0.40", + "@php-wasm/progress": "3.0.40", + "@php-wasm/stream-compression": "3.0.40", + "@php-wasm/util": "3.0.40", + "ini": "4.1.2" + }, + "engines": { + "node": ">=20.18.3", + "npm": ">=10.1.0" + }, + "optionalDependencies": { + "fs-ext": "2.1.1" + } + }, + "node_modules/@php-wasm/universal/node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@php-wasm/util": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/util/-/util-3.0.40.tgz", + "integrity": "sha512-jaDO+ZQi6tRMluOmPyD5+GTXrSwwY5tYYnoLVBUBERGxHUyrs3I7U4v25mgiUv1L8G/UEESVtbW4rZNQQJ2tBg==", + "engines": { + "node": ">=20.18.3", + "npm": ">=10.1.0" + }, + "optionalDependencies": { + "fs-ext": "2.1.1" + } + }, + "node_modules/@php-wasm/web": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/web/-/web-3.0.40.tgz", + "integrity": "sha512-ARqmWGB2RRBi6uCbbRh1Xgbtyd2HKQtx7v8kKu0ncTwTTqjpYMMt0CFNDgFVKPwo1ZXQQ0rU72ZjKNyZSMQ1qQ==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@php-wasm/fs-journal": "3.0.40", + "@php-wasm/logger": "3.0.40", + "@php-wasm/universal": "3.0.40", + "@php-wasm/util": "3.0.40", + "@php-wasm/web-7-2": "3.0.40", + "@php-wasm/web-7-3": "3.0.40", + "@php-wasm/web-7-4": "3.0.40", + "@php-wasm/web-8-0": "3.0.40", + "@php-wasm/web-8-1": "3.0.40", + "@php-wasm/web-8-2": "3.0.40", + "@php-wasm/web-8-3": "3.0.40", + "@php-wasm/web-8-4": "3.0.40", + "@php-wasm/web-8-5": "3.0.40", + "@php-wasm/web-service-worker": "3.0.40", + "@wp-playground/common": "3.0.40", + "express": "4.22.0", "ini": "4.1.2", + "selfsigned": "2.4.1", "wasm-feature-detect": "1.8.0", "ws": "8.18.3", "yargs": "17.7.2" @@ -7376,75 +8355,96 @@ "fs-ext": "2.1.1" } }, - "node_modules/@php-wasm/node-polyfills": { - "version": "3.0.22", - "resolved": "https://registry.npmjs.org/@php-wasm/node-polyfills/-/node-polyfills-3.0.22.tgz", - "integrity": "sha512-Q5T8n6wEQGTUn1eP61FmQdQO4rxavR3IeW95Fj++QIkMs9ZfllmuWepbu02rWP6unk6Do7IZoNprqRz7Lyc9og==", + "node_modules/@php-wasm/web-7-2": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/web-7-2/-/web-7-2-3.0.40.tgz", + "integrity": "sha512-RLi6pnumN5xawxzl1qYbKGLPrA7K7quND0lh7+U74urS8zxAdsuBXRxWLd/jYfzN6AtZi4Y2e+njA1mibySakA==", "license": "GPL-2.0-or-later", + "dependencies": { + "@php-wasm/universal": "3.0.40", + "ini": "4.1.2", + "wasm-feature-detect": "1.8.0" + }, + "engines": { + "node": ">=20.18.3", + "npm": ">=10.1.0" + }, "optionalDependencies": { "fs-ext": "2.1.1" } }, - "node_modules/@php-wasm/node/node_modules/cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "node_modules/@php-wasm/web-7-2/node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@php-wasm/web-7-3": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/web-7-3/-/web-7-3-3.0.40.tgz", + "integrity": "sha512-G5ilRuiCTNuo6WyQ6NI5Ep9e9N+no64SHOBwLHp4TnQgUQsilqqcvXAdsZDhB9BN1zeQ2T/rdVssZKP7+tX9Yw==", + "license": "GPL-2.0-or-later", "dependencies": { - "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", - "wrap-ansi": "^7.0.0" + "@php-wasm/universal": "3.0.40", + "ini": "4.1.2", + "wasm-feature-detect": "1.8.0" }, "engines": { - "node": ">=12" + "node": ">=20.18.3", + "npm": ">=10.1.0" + }, + "optionalDependencies": { + "fs-ext": "2.1.1" } }, - "node_modules/@php-wasm/node/node_modules/ini": { + "node_modules/@php-wasm/web-7-3/node_modules/ini": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "license": "ISC", "engines": { "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@php-wasm/node/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "license": "MIT", + "node_modules/@php-wasm/web-7-4": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/web-7-4/-/web-7-4-3.0.40.tgz", + "integrity": "sha512-bg+41aogmPUwMcI7N0lWeX6XtkWzMwmbNWxxVnfc3RHHtxobDsACLtLK058FZqlmA1sxe8S5mkvOtIfDp775Bg==", + "license": "GPL-2.0-or-later", "dependencies": { - "ansi-regex": "^5.0.1" + "@php-wasm/universal": "3.0.40", + "ini": "4.1.2", + "wasm-feature-detect": "1.8.0" }, "engines": { - "node": ">=8" + "node": ">=20.18.3", + "npm": ">=10.1.0" + }, + "optionalDependencies": { + "fs-ext": "2.1.1" } }, - "node_modules/@php-wasm/node/node_modules/yargs": { - "version": "17.7.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", - "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", - "license": "MIT", - "dependencies": { - "cliui": "^8.0.1", - "escalade": "^3.1.1", - "get-caller-file": "^2.0.5", - "require-directory": "^2.1.1", - "string-width": "^4.2.3", - "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" - }, + "node_modules/@php-wasm/web-7-4/node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "license": "ISC", "engines": { - "node": ">=12" + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@php-wasm/progress": { - "version": "3.0.22", - "resolved": "https://registry.npmjs.org/@php-wasm/progress/-/progress-3.0.22.tgz", - "integrity": "sha512-jkiP4hPDtqN4bkSI7X2OSjhtSQdxLqznofI32vLASGQu3SaaZO6iaqf0JBtnbJQL4n1TgQrqIe2PA/cNkRUKYA==", + "node_modules/@php-wasm/web-8-0": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/web-8-0/-/web-8-0-3.0.40.tgz", + "integrity": "sha512-slje9+QfN3/tF2bjiyG5+b/Lj+7d568uY5NSyqV57vwLuMNdsHlbga/SqTJsQwgb6GttXCSpr9CnkKraEuLJ1w==", "license": "GPL-2.0-or-later", "dependencies": { - "@php-wasm/logger": "3.0.22", - "@php-wasm/node-polyfills": "3.0.22" + "@php-wasm/universal": "3.0.40", + "ini": "4.1.2", + "wasm-feature-detect": "1.8.0" }, "engines": { "node": ">=20.18.3", @@ -7454,11 +8454,25 @@ "fs-ext": "2.1.1" } }, - "node_modules/@php-wasm/scopes": { - "version": "3.0.22", - "resolved": "https://registry.npmjs.org/@php-wasm/scopes/-/scopes-3.0.22.tgz", - "integrity": "sha512-BG2mdeQ3Xf9C1gZ6wpnS8gjGTbxnUG/EE0CCG2d0Vb3pDhjTMBbJIJx8y0Mly1OoQxv1xMjb68aXS+A0yEunZw==", + "node_modules/@php-wasm/web-8-0/node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@php-wasm/web-8-1": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/web-8-1/-/web-8-1-3.0.40.tgz", + "integrity": "sha512-/+vkkgLxEySGPzXrK0ZHJRbdXVVQK/WiKnuZLsZZKMbV/urgxFKrMnZbpN6Dv6/ANVGZXqZM0yumYxJjI/YF9Q==", "license": "GPL-2.0-or-later", + "dependencies": { + "@php-wasm/universal": "3.0.40", + "ini": "4.1.2", + "wasm-feature-detect": "1.8.0" + }, "engines": { "node": ">=20.18.3", "npm": ">=10.1.0" @@ -7467,31 +8481,51 @@ "fs-ext": "2.1.1" } }, - "node_modules/@php-wasm/stream-compression": { - "version": "3.0.22", - "resolved": "https://registry.npmjs.org/@php-wasm/stream-compression/-/stream-compression-3.0.22.tgz", - "integrity": "sha512-uM/spZwgbuY9ZcTiCBl0ZvG0DwCahVn73DHQY7JtiN6uTRe4IsjTQtoOCZPjFFhTFvnf+ZSSCHw4sE9+oTpezg==", + "node_modules/@php-wasm/web-8-1/node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@php-wasm/web-8-2": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/web-8-2/-/web-8-2-3.0.40.tgz", + "integrity": "sha512-YtMtx9fjLxg43wrBFjw+PX8P8UCd0N0ARq02IWqwcDdiqiTXvLD4AIqXgkNN1FMlR7Dbe+e/h73qJEdo54Ic0Q==", "license": "GPL-2.0-or-later", "dependencies": { - "@php-wasm/node-polyfills": "3.0.22", - "@php-wasm/util": "3.0.22" + "@php-wasm/universal": "3.0.40", + "ini": "4.1.2", + "wasm-feature-detect": "1.8.0" + }, + "engines": { + "node": ">=20.18.3", + "npm": ">=10.1.0" }, "optionalDependencies": { "fs-ext": "2.1.1" } }, - "node_modules/@php-wasm/universal": { - "version": "3.0.22", - "resolved": "https://registry.npmjs.org/@php-wasm/universal/-/universal-3.0.22.tgz", - "integrity": "sha512-fh0MovmoWsz2F01KWZ2a14Ou6G+yKMduLnLIiFIcUfFqoWFvu8WW+yM29CfcDqx56/9aCRWltueckdcNZ9871g==", + "node_modules/@php-wasm/web-8-2/node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@php-wasm/web-8-3": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/web-8-3/-/web-8-3-3.0.40.tgz", + "integrity": "sha512-TE4ReXDmd7NnSgiXrp3q5Hv+auS1y3GOIMtyxPyfQHwrWYJht0ilV3th8enIml9YQqrlNxWrI8HRv+e3mv0h6A==", "license": "GPL-2.0-or-later", "dependencies": { - "@php-wasm/logger": "3.0.22", - "@php-wasm/node-polyfills": "3.0.22", - "@php-wasm/progress": "3.0.22", - "@php-wasm/stream-compression": "3.0.22", - "@php-wasm/util": "3.0.22", - "ini": "4.1.2" + "@php-wasm/universal": "3.0.40", + "ini": "4.1.2", + "wasm-feature-detect": "1.8.0" }, "engines": { "node": ">=20.18.3", @@ -7501,7 +8535,7 @@ "fs-ext": "2.1.1" } }, - "node_modules/@php-wasm/universal/node_modules/ini": { + "node_modules/@php-wasm/web-8-3/node_modules/ini": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", @@ -7510,10 +8544,16 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, - "node_modules/@php-wasm/util": { - "version": "3.0.22", - "resolved": "https://registry.npmjs.org/@php-wasm/util/-/util-3.0.22.tgz", - "integrity": "sha512-RX6yqg56xHx4/uxHXXFhrWtyj1+lVrlJL95Y3D/gkX+XcX2lrgAgRJSTrINhM9OZq7Amxz0DxDLQVglJi2Imfw==", + "node_modules/@php-wasm/web-8-4": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/web-8-4/-/web-8-4-3.0.40.tgz", + "integrity": "sha512-hDHdeRfIT4QjX3RLbNTOPKrhKZMofId8ElcPiS/gKOEA8AJl32i4HsD2f0GGe5DCjcWIuxeJfFrk0mZ4/TLnuQ==", + "license": "GPL-2.0-or-later", + "dependencies": { + "@php-wasm/universal": "3.0.40", + "ini": "4.1.2", + "wasm-feature-detect": "1.8.0" + }, "engines": { "node": ">=20.18.3", "npm": ">=10.1.0" @@ -7522,22 +8562,24 @@ "fs-ext": "2.1.1" } }, - "node_modules/@php-wasm/web": { - "version": "3.0.22", - "resolved": "https://registry.npmjs.org/@php-wasm/web/-/web-3.0.22.tgz", - "integrity": "sha512-BgfduJYdE0JIBTPjogDJiWqLdxM/JmWtAlKbmVlGtIeWGA9PJU9DMyhrzSeQkcx8zTN/wG3qDLgIrojJ2PII6A==", + "node_modules/@php-wasm/web-8-4/node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, + "node_modules/@php-wasm/web-8-5": { + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/web-8-5/-/web-8-5-3.0.40.tgz", + "integrity": "sha512-DBT+QuFRXgHGXkBaD0B9Naa222Eu30Pw+1NDCMYWQ6+TDN2od1FYr4zk31cOwUUgvY9iJndG+2r0GkYcEo+CZg==", "license": "GPL-2.0-or-later", "dependencies": { - "@php-wasm/fs-journal": "3.0.22", - "@php-wasm/logger": "3.0.22", - "@php-wasm/universal": "3.0.22", - "@php-wasm/util": "3.0.22", - "@php-wasm/web-service-worker": "3.0.22", - "express": "4.21.2", + "@php-wasm/universal": "3.0.40", "ini": "4.1.2", - "wasm-feature-detect": "1.8.0", - "ws": "8.18.3", - "yargs": "17.7.2" + "wasm-feature-detect": "1.8.0" }, "engines": { "node": ">=20.18.3", @@ -7547,13 +8589,22 @@ "fs-ext": "2.1.1" } }, + "node_modules/@php-wasm/web-8-5/node_modules/ini": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", + "integrity": "sha512-AMB1mvwR1pyBFY/nSevUX6y8nJWS63/SzUKD3JyQn97s4xgIdgQPT75IRouIiBAN4yLQBUShNYVW0+UG25daCw==", + "license": "ISC", + "engines": { + "node": "^14.17.0 || ^16.13.0 || >=18.0.0" + } + }, "node_modules/@php-wasm/web-service-worker": { - "version": "3.0.22", - "resolved": "https://registry.npmjs.org/@php-wasm/web-service-worker/-/web-service-worker-3.0.22.tgz", - "integrity": "sha512-OijEAI6/Rf6G9Do4E87OqGpCFW56uyU2Gl007IHJjV8cEOQLXVPfFpi0+VE4Tbr9Ba4NjB1GEFIUJJIHX08/3g==", + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/web-service-worker/-/web-service-worker-3.0.40.tgz", + "integrity": "sha512-OsjWHGepGhcje6Rl+Skq5sfxBBuWbLJPG5Nu/nN6bhD7va4DI/PXfQ8CdpwlIz3QJBZvjY1VH/mwfMJvxkaFjQ==", "license": "GPL-2.0-or-later", "dependencies": { - "@php-wasm/scopes": "3.0.22" + "@php-wasm/scopes": "3.0.40" }, "engines": { "node": ">=20.18.3", @@ -7574,7 +8625,71 @@ "wrap-ansi": "^7.0.0" }, "engines": { - "node": ">=12" + "node": ">=12" + } + }, + "node_modules/@php-wasm/web/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/@php-wasm/web/node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@php-wasm/web/node_modules/express": { + "version": "4.22.0", + "resolved": "https://registry.npmjs.org/express/-/express-4.22.0.tgz", + "integrity": "sha512-c2iPh3xp5vvCLgaHK03+mWLFPhox7j1LwyxcZwFVApEv5i0X+IjPpbT50SJJwwLpdBVfp45AkK/v+AFgv/XlfQ==", + "license": "MIT", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "~1.20.3", + "content-disposition": "~0.5.4", + "content-type": "~1.0.4", + "cookie": "~0.7.1", + "cookie-signature": "~1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "~1.3.1", + "fresh": "~0.5.2", + "http-errors": "~2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "~2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "~0.1.12", + "proxy-addr": "~2.0.7", + "qs": "~6.14.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "~0.19.0", + "serve-static": "~1.16.2", + "setprototypeof": "1.2.0", + "statuses": "~2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" } }, "node_modules/@php-wasm/web/node_modules/ini": { @@ -7586,6 +8701,32 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/@php-wasm/web/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" + }, + "node_modules/@php-wasm/web/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, "node_modules/@php-wasm/web/node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -7617,16 +8758,16 @@ } }, "node_modules/@php-wasm/xdebug-bridge": { - "version": "3.0.22", - "resolved": "https://registry.npmjs.org/@php-wasm/xdebug-bridge/-/xdebug-bridge-3.0.22.tgz", - "integrity": "sha512-nYM3ryfYSxYjJYKkT65UmBoV/aS+I72lOL9k35TMLB+NCLSC3Z5srPZ8GoVxq9nJDVFs8I4a77SwUthA/q58PA==", + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@php-wasm/xdebug-bridge/-/xdebug-bridge-3.0.40.tgz", + "integrity": "sha512-nFkhl0m+D03o0HNfm1YhpetXYcN6UfSA9A6PznQCAoSDqHkblx11vejCvb6T5qL17CjWbj/5IP/dCvar1Jl2Rw==", "license": "GPL-2.0-or-later", "dependencies": { - "@php-wasm/logger": "3.0.22", - "@php-wasm/node": "3.0.22", - "@php-wasm/universal": "3.0.22", - "@wp-playground/common": "3.0.22", - "express": "4.21.2", + "@php-wasm/logger": "3.0.40", + "@php-wasm/node": "3.0.40", + "@php-wasm/universal": "3.0.40", + "@wp-playground/common": "3.0.40", + "express": "4.22.0", "ini": "4.1.2", "wasm-feature-detect": "1.8.0", "ws": "8.18.3", @@ -7658,6 +8799,70 @@ "node": ">=12" } }, + "node_modules/@php-wasm/xdebug-bridge/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/@php-wasm/xdebug-bridge/node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@php-wasm/xdebug-bridge/node_modules/express": { + "version": "4.22.0", + "resolved": "https://registry.npmjs.org/express/-/express-4.22.0.tgz", + "integrity": "sha512-c2iPh3xp5vvCLgaHK03+mWLFPhox7j1LwyxcZwFVApEv5i0X+IjPpbT50SJJwwLpdBVfp45AkK/v+AFgv/XlfQ==", + "license": "MIT", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "~1.20.3", + "content-disposition": "~0.5.4", + "content-type": "~1.0.4", + "cookie": "~0.7.1", + "cookie-signature": "~1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "~1.3.1", + "fresh": "~0.5.2", + "http-errors": "~2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "~2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "~0.1.12", + "proxy-addr": "~2.0.7", + "qs": "~6.14.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "~0.19.0", + "serve-static": "~1.16.2", + "setprototypeof": "1.2.0", + "statuses": "~2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, "node_modules/@php-wasm/xdebug-bridge/node_modules/ini": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", @@ -7667,6 +8872,32 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/@php-wasm/xdebug-bridge/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" + }, + "node_modules/@php-wasm/xdebug-bridge/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, "node_modules/@php-wasm/xdebug-bridge/node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -8959,6 +10190,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -8975,6 +10207,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -8991,6 +10224,7 @@ "cpu": [ "arm" ], + "dev": true, "license": "Apache-2.0", "optional": true, "os": [ @@ -9007,6 +10241,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -9023,6 +10258,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -9039,6 +10275,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -9055,6 +10292,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -9071,6 +10309,7 @@ "cpu": [ "arm64" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -9087,6 +10326,7 @@ "cpu": [ "ia32" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -9103,6 +10343,7 @@ "cpu": [ "x64" ], + "dev": true, "license": "Apache-2.0 AND MIT", "optional": true, "os": [ @@ -9712,7 +10953,6 @@ "version": "1.3.14", "resolved": "https://registry.npmjs.org/@types/node-forge/-/node-forge-1.3.14.tgz", "integrity": "sha512-mhVF2BnD4BO+jtOp7z1CdzaK4mbuK0LLQYAvdOLqHTavxFNq4zA1EmYkpnFjP8HOUzedfQkRnp0E2ulSAYSzAw==", - "dev": true, "license": "MIT", "dependencies": { "@types/node": "*" @@ -11207,28 +12447,29 @@ } }, "node_modules/@wp-playground/blueprints": { - "version": "3.0.22", - "resolved": "https://registry.npmjs.org/@wp-playground/blueprints/-/blueprints-3.0.22.tgz", - "integrity": "sha512-Rx1b70k7RTeT7gkqVbQvHDgjXoqJHXPkyKh2XUnLg9CDhe/FNvbhYD/mFZMGI7JLqMlf2C5cCxdMUFcHSQuC8A==", - "dependencies": { - "@php-wasm/logger": "3.0.22", - "@php-wasm/node": "3.0.22", - "@php-wasm/node-polyfills": "3.0.22", - "@php-wasm/progress": "3.0.22", - "@php-wasm/stream-compression": "3.0.22", - "@php-wasm/universal": "3.0.22", - "@php-wasm/util": "3.0.22", - "@php-wasm/web": "3.0.22", - "@wp-playground/common": "3.0.22", - "@wp-playground/storage": "3.0.22", - "@wp-playground/wordpress": "3.0.22", + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@wp-playground/blueprints/-/blueprints-3.0.40.tgz", + "integrity": "sha512-bGEfwLVf8Nzc/u3n44QAIWwQcQ6QD4G2r8sShcY5Ju70R4ESZkioJ45S+5sruiKM5hiUGRCRw4mrVCeGoOQ8CA==", + "dependencies": { + "@php-wasm/logger": "3.0.40", + "@php-wasm/node": "3.0.40", + "@php-wasm/node-polyfills": "3.0.40", + "@php-wasm/progress": "3.0.40", + "@php-wasm/scopes": "3.0.40", + "@php-wasm/stream-compression": "3.0.40", + "@php-wasm/universal": "3.0.40", + "@php-wasm/util": "3.0.40", + "@php-wasm/web": "3.0.40", + "@wp-playground/common": "3.0.40", + "@wp-playground/storage": "3.0.40", + "@wp-playground/wordpress": "3.0.40", "@zip.js/zip.js": "2.7.57", "ajv": "8.12.0", "async-lock": "1.4.1", "clean-git-ref": "2.0.1", "crc-32": "1.2.2", "diff3": "0.0.4", - "express": "4.21.2", + "express": "4.22.0", "ignore": "5.3.2", "ini": "4.1.2", "minimisted": "2.0.1", @@ -11236,6 +12477,7 @@ "pako": "1.0.10", "pify": "2.3.0", "readable-stream": "3.6.2", + "selfsigned": "2.4.1", "sha.js": "2.4.12", "simple-get": "4.0.1", "wasm-feature-detect": "1.8.0", @@ -11280,6 +12522,70 @@ "node": ">=12" } }, + "node_modules/@wp-playground/blueprints/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/@wp-playground/blueprints/node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@wp-playground/blueprints/node_modules/express": { + "version": "4.22.0", + "resolved": "https://registry.npmjs.org/express/-/express-4.22.0.tgz", + "integrity": "sha512-c2iPh3xp5vvCLgaHK03+mWLFPhox7j1LwyxcZwFVApEv5i0X+IjPpbT50SJJwwLpdBVfp45AkK/v+AFgv/XlfQ==", + "license": "MIT", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "~1.20.3", + "content-disposition": "~0.5.4", + "content-type": "~1.0.4", + "cookie": "~0.7.1", + "cookie-signature": "~1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "~1.3.1", + "fresh": "~0.5.2", + "http-errors": "~2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "~2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "~0.1.12", + "proxy-addr": "~2.0.7", + "qs": "~6.14.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "~0.19.0", + "serve-static": "~1.16.2", + "setprototypeof": "1.2.0", + "statuses": "~2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, "node_modules/@wp-playground/blueprints/node_modules/ini": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", @@ -11295,11 +12601,37 @@ "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", "license": "MIT" }, + "node_modules/@wp-playground/blueprints/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" + }, "node_modules/@wp-playground/blueprints/node_modules/pako": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.10.tgz", "integrity": "sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw==" }, + "node_modules/@wp-playground/blueprints/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, "node_modules/@wp-playground/blueprints/node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -11331,28 +12663,29 @@ } }, "node_modules/@wp-playground/cli": { - "version": "3.0.22", - "resolved": "https://registry.npmjs.org/@wp-playground/cli/-/cli-3.0.22.tgz", - "integrity": "sha512-sWCtiX21Dh+8m8BRsSeumW2BcPpc36PkMDvMAJnLh7y8FmPPnqOY0rzOWBAmm19dHjCx8DiLuUZ7oo+est6g8A==", + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@wp-playground/cli/-/cli-3.0.40.tgz", + "integrity": "sha512-DLtG3KnGTEOI/vNC9rCkngrqpUmcxkjqt+Unfn4g5BNWIMV9uamQB7mH/yBwvMNGJ2EERHxV+jWnDixwCOx67w==", "license": "GPL-2.0-or-later", "dependencies": { - "@php-wasm/logger": "3.0.22", - "@php-wasm/node": "3.0.22", - "@php-wasm/progress": "3.0.22", - "@php-wasm/universal": "3.0.22", - "@php-wasm/util": "3.0.22", - "@php-wasm/xdebug-bridge": "3.0.22", - "@wp-playground/blueprints": "3.0.22", - "@wp-playground/common": "3.0.22", - "@wp-playground/storage": "3.0.22", - "@wp-playground/wordpress": "3.0.22", + "@php-wasm/cli-util": "3.0.40", + "@php-wasm/logger": "3.0.40", + "@php-wasm/node": "3.0.40", + "@php-wasm/progress": "3.0.40", + "@php-wasm/universal": "3.0.40", + "@php-wasm/util": "3.0.40", + "@php-wasm/xdebug-bridge": "3.0.40", + "@wp-playground/blueprints": "3.0.40", + "@wp-playground/common": "3.0.40", + "@wp-playground/storage": "3.0.40", + "@wp-playground/wordpress": "3.0.40", "@zip.js/zip.js": "2.7.57", "ajv": "8.12.0", "async-lock": "1.4.1", "clean-git-ref": "2.0.1", "crc-32": "1.2.2", "diff3": "0.0.4", - "express": "4.21.2", + "express": "4.22.0", "fast-xml-parser": "5.3.0", "fs-extra": "11.1.1", "ignore": "5.3.2", @@ -11364,6 +12697,7 @@ "pify": "2.3.0", "ps-man": "1.1.8", "readable-stream": "3.6.2", + "selfsigned": "2.4.1", "sha.js": "2.4.12", "simple-get": "4.0.1", "tmp-promise": "3.0.3", @@ -11409,6 +12743,70 @@ "node": ">=12" } }, + "node_modules/@wp-playground/cli/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/@wp-playground/cli/node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@wp-playground/cli/node_modules/express": { + "version": "4.22.0", + "resolved": "https://registry.npmjs.org/express/-/express-4.22.0.tgz", + "integrity": "sha512-c2iPh3xp5vvCLgaHK03+mWLFPhox7j1LwyxcZwFVApEv5i0X+IjPpbT50SJJwwLpdBVfp45AkK/v+AFgv/XlfQ==", + "license": "MIT", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "~1.20.3", + "content-disposition": "~0.5.4", + "content-type": "~1.0.4", + "cookie": "~0.7.1", + "cookie-signature": "~1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "~1.3.1", + "fresh": "~0.5.2", + "http-errors": "~2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "~2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "~0.1.12", + "proxy-addr": "~2.0.7", + "qs": "~6.14.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "~0.19.0", + "serve-static": "~1.16.2", + "setprototypeof": "1.2.0", + "statuses": "~2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, "node_modules/@wp-playground/cli/node_modules/fs-extra": { "version": "11.1.1", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.1.tgz", @@ -11438,12 +12836,38 @@ "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", "license": "MIT" }, + "node_modules/@wp-playground/cli/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" + }, "node_modules/@wp-playground/cli/node_modules/pako": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.10.tgz", "integrity": "sha512-0DTvPVU3ed8+HNXOu5Bs+o//Mbdj9VNQMUOe9oKCwh8l0GNwpTDMKCWbRjgtD291AWnkAgkqA/LOnQS8AmS1tw==", "license": "(MIT AND Zlib)" }, + "node_modules/@wp-playground/cli/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, "node_modules/@wp-playground/cli/node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -11475,13 +12899,13 @@ } }, "node_modules/@wp-playground/common": { - "version": "3.0.22", - "resolved": "https://registry.npmjs.org/@wp-playground/common/-/common-3.0.22.tgz", - "integrity": "sha512-iH/lmymV1d3xX6o64AxEnv/CKLpfo8bkifxTkIBSk9wKmbxaGUsjGO2uTP5W9abpKOkdnlY6Nm8ESh1OGW7DtQ==", + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@wp-playground/common/-/common-3.0.40.tgz", + "integrity": "sha512-STZF20WE6Xa64pkzRqHncVucRAchoVBjEKtKFVogQfkpomQADGlpRKufAVFqZXFd1x8CgCoomheo9VIfbPNG4Q==", "license": "GPL-2.0-or-later", "dependencies": { - "@php-wasm/universal": "3.0.22", - "@php-wasm/util": "3.0.22", + "@php-wasm/universal": "3.0.40", + "@php-wasm/util": "3.0.40", "ini": "4.1.2" }, "engines": { @@ -11502,21 +12926,21 @@ } }, "node_modules/@wp-playground/storage": { - "version": "3.0.22", - "resolved": "https://registry.npmjs.org/@wp-playground/storage/-/storage-3.0.22.tgz", - "integrity": "sha512-zjsxvfVNphvbGOzc1Q0EkaOxs9TokdPlncBk8ye5vzmNhvl0Glyfu3pErfHs/L/f0ftRw4eBk1VUgPCS8BxNDA==", + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@wp-playground/storage/-/storage-3.0.40.tgz", + "integrity": "sha512-LC8+nieIbNr6MYNaAX54XNDUj1kh/6Yfycajp5Abl7PH89aGV2mDmfGbk1pt8fUMMTRSUTQf/w7RyhT6j/8y4Q==", "license": "GPL-2.0-or-later", "dependencies": { - "@php-wasm/stream-compression": "3.0.22", - "@php-wasm/universal": "3.0.22", - "@php-wasm/util": "3.0.22", - "@php-wasm/web": "3.0.22", + "@php-wasm/stream-compression": "3.0.40", + "@php-wasm/universal": "3.0.40", + "@php-wasm/util": "3.0.40", + "@php-wasm/web": "3.0.40", "@zip.js/zip.js": "2.7.57", "async-lock": "^1.4.1", "clean-git-ref": "^2.0.1", "crc-32": "^1.2.0", "diff3": "0.0.3", - "express": "4.21.2", + "express": "4.22.0", "ignore": "^5.1.4", "ini": "4.1.2", "minimisted": "^2.0.0", @@ -11524,6 +12948,7 @@ "pako": "^1.0.10", "pify": "^4.0.1", "readable-stream": "^3.4.0", + "selfsigned": "2.4.1", "sha.js": "^2.4.9", "simple-get": "^4.0.1", "wasm-feature-detect": "1.8.0", @@ -11548,12 +12973,76 @@ "node": ">=12" } }, + "node_modules/@wp-playground/storage/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, "node_modules/@wp-playground/storage/node_modules/diff3": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/diff3/-/diff3-0.0.3.tgz", "integrity": "sha512-iSq8ngPOt0K53A6eVr4d5Kn6GNrM2nQZtC740pzIriHtn4pOQ2lyzEXQMBeVcWERN0ye7fhBsk9PbLLQOnUx/g==", "license": "MIT" }, + "node_modules/@wp-playground/storage/node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@wp-playground/storage/node_modules/express": { + "version": "4.22.0", + "resolved": "https://registry.npmjs.org/express/-/express-4.22.0.tgz", + "integrity": "sha512-c2iPh3xp5vvCLgaHK03+mWLFPhox7j1LwyxcZwFVApEv5i0X+IjPpbT50SJJwwLpdBVfp45AkK/v+AFgv/XlfQ==", + "license": "MIT", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "~1.20.3", + "content-disposition": "~0.5.4", + "content-type": "~1.0.4", + "cookie": "~0.7.1", + "cookie-signature": "~1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "~1.3.1", + "fresh": "~0.5.2", + "http-errors": "~2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "~2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "~0.1.12", + "proxy-addr": "~2.0.7", + "qs": "~6.14.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "~0.19.0", + "serve-static": "~1.16.2", + "setprototypeof": "1.2.0", + "statuses": "~2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, "node_modules/@wp-playground/storage/node_modules/ini": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", @@ -11563,6 +13052,12 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/@wp-playground/storage/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" + }, "node_modules/@wp-playground/storage/node_modules/pify": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", @@ -11572,6 +13067,26 @@ "node": ">=6" } }, + "node_modules/@wp-playground/storage/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, "node_modules/@wp-playground/storage/node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -11603,17 +13118,17 @@ } }, "node_modules/@wp-playground/wordpress": { - "version": "3.0.22", - "resolved": "https://registry.npmjs.org/@wp-playground/wordpress/-/wordpress-3.0.22.tgz", - "integrity": "sha512-FbQruz+dBA/sWq+Xf3SaTl3O7uWI4NYPovTzFnf/f1TPswjyYWGg8cGcb3xpGYr8pENOiPTkV2jKWX/V9WX/nw==", + "version": "3.0.40", + "resolved": "https://registry.npmjs.org/@wp-playground/wordpress/-/wordpress-3.0.40.tgz", + "integrity": "sha512-fH35Yff0LmMMJuDoDDl1WKLAtzHDSWGOshplRs0pxAzkiaEC4pAtcObXQj7TVwjtRj0uWPdZHRApm5czu3VEGQ==", "license": "GPL-2.0-or-later", "dependencies": { - "@php-wasm/logger": "3.0.22", - "@php-wasm/node": "3.0.22", - "@php-wasm/universal": "3.0.22", - "@php-wasm/util": "3.0.22", - "@wp-playground/common": "3.0.22", - "express": "4.21.2", + "@php-wasm/logger": "3.0.40", + "@php-wasm/node": "3.0.40", + "@php-wasm/universal": "3.0.40", + "@php-wasm/util": "3.0.40", + "@wp-playground/common": "3.0.40", + "express": "4.22.0", "ini": "4.1.2", "wasm-feature-detect": "1.8.0", "ws": "8.18.3", @@ -11641,6 +13156,70 @@ "node": ">=12" } }, + "node_modules/@wp-playground/wordpress/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/@wp-playground/wordpress/node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/@wp-playground/wordpress/node_modules/express": { + "version": "4.22.0", + "resolved": "https://registry.npmjs.org/express/-/express-4.22.0.tgz", + "integrity": "sha512-c2iPh3xp5vvCLgaHK03+mWLFPhox7j1LwyxcZwFVApEv5i0X+IjPpbT50SJJwwLpdBVfp45AkK/v+AFgv/XlfQ==", + "license": "MIT", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "~1.20.3", + "content-disposition": "~0.5.4", + "content-type": "~1.0.4", + "cookie": "~0.7.1", + "cookie-signature": "~1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "~1.3.1", + "fresh": "~0.5.2", + "http-errors": "~2.0.0", + "merge-descriptors": "1.0.3", + "methods": "~1.1.2", + "on-finished": "~2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "~0.1.12", + "proxy-addr": "~2.0.7", + "qs": "~6.14.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "~0.19.0", + "serve-static": "~1.16.2", + "setprototypeof": "1.2.0", + "statuses": "~2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/express" + } + }, "node_modules/@wp-playground/wordpress/node_modules/ini": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.2.tgz", @@ -11650,6 +13229,32 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/@wp-playground/wordpress/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" + }, + "node_modules/@wp-playground/wordpress/node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, "node_modules/@wp-playground/wordpress/node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", @@ -13693,6 +15298,15 @@ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", "dev": true }, + "node_modules/cookie": { + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.7.2.tgz", + "integrity": "sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, "node_modules/cookie-signature": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", @@ -16337,6 +17951,57 @@ "node": ">=8" } }, + "node_modules/finalhandler": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.2.tgz", + "integrity": "sha512-aA4RyPcd3badbdABGDuTXCMTtOneUCAYH/gxoYRTZlIJdF0YPWuGqiAsIrhNnnqdXGswYk6dGujem4w80UJFhg==", + "license": "MIT", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~2.0.0", + "escape-html": "~1.0.3", + "on-finished": "~2.4.1", + "parseurl": "~1.3.3", + "statuses": "~2.0.2", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/finalhandler/node_modules/encodeurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz", + "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/finalhandler/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" + }, + "node_modules/finalhandler/node_modules/statuses": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.2.tgz", + "integrity": "sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, "node_modules/find-root": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz", @@ -17606,6 +19271,15 @@ "url": "https://opencollective.com/immer" } }, + "node_modules/immutable": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/immutable/-/immutable-5.1.3.tgz", + "integrity": "sha512-+chQdDfvscSF1SJqv2gn4SRO2ZyS3xL3r7IW/wWEEzrzLisnOlKiQu5ytC/BVNcS15C39WT2Hg/bjKjDMcu+zg==", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true + }, "node_modules/import-fresh": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", @@ -22313,6 +23987,15 @@ "node": ">= 10.13" } }, + "node_modules/node-addon-api": { + "version": "7.1.1", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", + "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true + }, "node_modules/node-api-version": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/node-api-version/-/node-api-version-0.2.1.tgz", @@ -22897,7 +24580,8 @@ "node_modules/pako": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/pako/-/pako-1.0.11.tgz", - "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==" + "integrity": "sha512-4hLB8Py4zZce5s4yd9XzopqwVv/yGNhV1Bl8NTmCq1763HeK2+EwVTv+leGeL13Dnh2wfbqowVPXCIO0z4taYw==", + "license": "(MIT AND Zlib)" }, "node_modules/param-case": { "version": "3.0.4", @@ -24883,11 +26567,71 @@ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" }, + "node_modules/sass": { + "version": "1.93.2", + "resolved": "https://registry.npmjs.org/sass/-/sass-1.93.2.tgz", + "integrity": "sha512-t+YPtOQHpGW1QWsh1CHQ5cPIr9lbbGZLZnbihP/D/qZj/yuV68m8qarcV17nvkOX81BCrvzAlq2klCQFZghyTg==", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true, + "dependencies": { + "chokidar": "^4.0.0", + "immutable": "^5.0.2", + "source-map-js": ">=0.6.2 <2.0.0" + }, + "bin": { + "sass": "sass.js" + }, + "engines": { + "node": ">=14.0.0" + }, + "optionalDependencies": { + "@parcel/watcher": "^2.4.1" + } + }, + "node_modules/sass/node_modules/chokidar": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-4.0.3.tgz", + "integrity": "sha512-Qgzu8kfBvo+cA4962jnP1KkS6Dop5NS6g7R5LFYJr4b8Ub94PPQXUksCw9PvXoeXPRRddRNC5C1JQUR2SMGtnA==", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true, + "dependencies": { + "readdirp": "^4.0.1" + }, + "engines": { + "node": ">= 14.16.0" + }, + "funding": { + "url": "https://paulmillr.com/funding/" + } + }, + "node_modules/sass/node_modules/readdirp": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-4.1.2.tgz", + "integrity": "sha512-GDhwkLfywWL2s6vEjyhri+eXmfH6j1L7JE27WhqLeYzoh/A3DBaYGEj2H/HFZCn/kMfim73FXxEJTw06WtxQwg==", + "dev": true, + "license": "MIT", + "optional": true, + "peer": true, + "engines": { + "node": ">= 14.18.0" + }, + "funding": { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + }, "node_modules/sax": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.3.tgz", - "integrity": "sha512-yqYn1JhPczigF94DMS+shiDMjDowYO6y9+wB/4WgO0Y19jWYk0lQ4tuG5KI7kj4FTp1wxPj5IFfcrz/s1c3jjQ==", - "license": "BlueOak-1.0.0" + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.4.tgz", + "integrity": "sha512-1n3r/tGXO6b6VXMdFT54SHzT9ytu9yr7TaELowdYpMqY/Ao7EnlQGmAQ1+RatX7Tkkdm6hONI2owqNx2aZj5Sw==", + "license": "BlueOak-1.0.0", + "engines": { + "node": ">=11.0.0" + } }, "node_modules/saxes": { "version": "6.0.0", @@ -24915,6 +26659,19 @@ "resolved": "https://registry.npmjs.org/select/-/select-1.1.2.tgz", "integrity": "sha512-OwpTSOfy6xSs1+pwcNrv0RBMOzI39Lp3qQKUTPVVPRjCdNa5JH/oPRiqsesIskK8TVgmRiHwO4KXlV2Li9dANA==" }, + "node_modules/selfsigned": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-2.4.1.tgz", + "integrity": "sha512-th5B4L2U+eGLq1TVh7zNRGBapioSORUeymIydxgFpwww9d2qyKvtuPU2jJuHvYAwwqi2Y596QBL3eEqcPEYL8Q==", + "license": "MIT", + "dependencies": { + "@types/node-forge": "^1.3.0", + "node-forge": "^1" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/semver": { "version": "7.7.3", "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.3.tgz", @@ -25865,9 +27622,9 @@ } }, "node_modules/strnum": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/strnum/-/strnum-2.1.1.tgz", - "integrity": "sha512-7ZvoFTiCnGxBtDqJ//Cu6fWtZtc7Y3x+QOirG15wztbdngGSkht27o2pyGWrVy0b4WAy3jbKmnoK6g5VlVNUUw==", + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/strnum/-/strnum-2.1.2.tgz", + "integrity": "sha512-l63NF9y/cLROq/yqKXSLtcMeeyOfnSQlfMSlzFt/K73oIaD8DGaQWd7Z34X9GPiKqP5rbSh84Hl4bOlLcjiSrQ==", "funding": [ { "type": "github", diff --git a/package.json b/package.json index 8f980cc373..98ca649a04 100644 --- a/package.json +++ b/package.json @@ -34,8 +34,8 @@ "cli:watch": "vite build --config vite.cli.config.ts --watch", "lint": "eslint {cli,common,src,e2e}", "format": "prettier . --write", - "test": "cross-env NODE_OPTIONS='--no-deprecation --max-old-space-size=16384' jest", - "test:watch": "cross-env NODE_OPTIONS='--no-deprecation' jest --watch", + "test": "cross-env NODE_OPTIONS=\"--no-deprecation --max-old-space-size=16384 --experimental-vm-modules\" jest", + "test:watch": "cross-env NODE_OPTIONS=\"--no-deprecation\" jest --watch", "e2e": "npx playwright install && npx playwright test", "test:metrics": "npx playwright test --config=./metrics/playwright.metrics.config.ts", "make-pot": "node ./scripts/make-pot.mjs" @@ -113,9 +113,9 @@ "@formatjs/intl-locale": "^3.4.5", "@formatjs/intl-localematcher": "^0.5.4", "@inquirer/prompts": "^7.10.1", - "@php-wasm/node": "^3.0.22", - "@php-wasm/scopes": "^3.0.22", - "@php-wasm/universal": "^3.0.22", + "@php-wasm/node": "^3.0.40", + "@php-wasm/scopes": "^3.0.40", + "@php-wasm/universal": "^3.0.40", "@reduxjs/toolkit": "^2.11.2", "@rive-app/react-canvas": "^4.12.0", "@sentry/electron": "^6.5.0", @@ -125,9 +125,9 @@ "@wordpress/dataviews": "^11.0.0", "@wordpress/i18n": "^6.9.0", "@wordpress/icons": "^11.4.0", - "@wp-playground/blueprints": "^3.0.22", - "@wp-playground/cli": "^3.0.22", - "@wp-playground/wordpress": "^3.0.22", + "@wp-playground/blueprints": "^3.0.40", + "@wp-playground/cli": "^3.0.40", + "@wp-playground/wordpress": "^3.0.40", "archiver": "^6.0.2", "atomically": "^2.1.0", "cli-table3": "^0.6.5", diff --git a/patches/@wordpress+components+30.9.0.patch b/patches/@wordpress+components+31.0.0.patch similarity index 100% rename from patches/@wordpress+components+30.9.0.patch rename to patches/@wordpress+components+31.0.0.patch diff --git a/patches/@wp-playground+wordpress+3.0.22.patch b/patches/@wp-playground+wordpress+3.0.40.patch similarity index 61% rename from patches/@wp-playground+wordpress+3.0.22.patch rename to patches/@wp-playground+wordpress+3.0.40.patch index 310179a3c3..a40086e238 100644 --- a/patches/@wp-playground+wordpress+3.0.22.patch +++ b/patches/@wp-playground+wordpress+3.0.40.patch @@ -1,23 +1,23 @@ diff --git a/node_modules/@wp-playground/wordpress/index.cjs b/node_modules/@wp-playground/wordpress/index.cjs -index 603a479..9db144f 100644 +index 3e03b3d..1f98a2a 100644 --- a/node_modules/@wp-playground/wordpress/index.cjs +++ b/node_modules/@wp-playground/wordpress/index.cjs @@ -352,7 +352,7 @@ function skip_whitespace($tokens) { ob_clean(); echo false === $return_value ? '0' : '1'; ob_end_flush(); -- `})).text!=="1")throw new Error("Failed to rewrite constants in wp-config.php.")}async function w(e,n){const t=a.joinPaths(n,"wp-config.php"),i={DB_NAME:"wordpress"};!e.fileExists(t)&&e.fileExists(a.joinPaths(n,"wp-config-sample.php"))&&await e.writeFile(t,await e.readFileAsBuffer(a.joinPaths(n,"wp-config-sample.php"))),await g(e,t,i,"skip")}async function L(e){const n=await m(e);return await $(n,e),n}async function $(e,n){var l,s;const t=await e.getPrimaryPhp();if((l=n.hooks)!=null&&l.beforeWordPressFiles&&await n.hooks.beforeWordPressFiles(t),n.wordPressZip&&await S(t,await n.wordPressZip),n.constants)for(const d in n.constants)t.defineConstant(d,n.constants[d]);n.dataSqlPath&&(t.defineConstant("DB_DIR",a.dirname(n.dataSqlPath)),t.defineConstant("DB_FILE",a.basename(n.dataSqlPath))),t.defineConstant("WP_HOME",n.siteUrl),t.defineConstant("WP_SITEURL",n.siteUrl),await w(t,e.documentRoot),(s=n.hooks)!=null&&s.beforeDatabaseSetup&&await n.hooks.beforeDatabaseSetup(t);let i=!1;n.sqliteIntegrationPluginZip&&(i=!0,await T(t,await n.sqliteIntegrationPluginZip));const r=n.wordpressInstallMode??"download-and-install",o=!!n.dataSqlPath;if(["download-and-install","install-from-existing-files"].includes(r)){await c(e,{usesSqlite:i,hasCustomDatabasePath:o});try{await _(t)}catch(d){throw o||await p(e),d}o||await p(e)}else if(r==="install-from-existing-files-if-needed"){if(await c(e,{usesSqlite:i,hasCustomDatabasePath:o}),!await b(t))try{await _(t)}catch(d){throw o||await p(e),d}o||await p(e)}return e}async function c(e,{usesSqlite:n,hasCustomDatabasePath:t}){const i=await e.getPrimaryPhp();if(i.isFile("/internal/shared/preload/0-sqlite.php"))return;const r=a.joinPaths(e.documentRoot,"wp-content/mu-plugins/sqlite-database-integration");if(!i.isDir(r)&&!n&&!t)throw new Error("Error connecting to the MySQL database.")}async function p(e){const n=await e.getPrimaryPhp();if(await I(n))return;if(n.isFile("/internal/shared/preload/0-sqlite.php"))throw new Error("Error connecting to the SQLite database.");const i=a.joinPaths(e.documentRoot,"wp-content/mu-plugins/sqlite-database-integration");throw n.isDir(i)?new Error("Error connecting to the SQLite database."):new Error("Error connecting to the MySQL database.")}async function m(e){const n=e.spawnHandler??u.sandboxedSpawnHandlerFactory;async function t(r,o){const l=await e.createPhpRuntime(o),s=new u.PHP(l);return e.sapiName&&s.setSapiName(e.sapiName),r&&(s.requestHandler=r),e.phpIniEntries&&u.setPhpIniEntries(s,e.phpIniEntries),s.defineConstant("WP_SQLITE_AST_DRIVER",!0),o&&!s.isFile("/internal/.boot-files-written")&&(await E(s),await u.writeFiles(s,"/",e.createFiles||{}),await R(s,a.joinPaths(new URL(e.siteUrl).pathname,"phpinfo.php")),await u.writeFiles(s,"/internal",{".boot-files-written":""})),n&&await s.setSpawnHandler(n(r.processManager)),s.enableRuntimeRotation({recreateRuntime:e.createPhpRuntime,maxRequests:400}),e.onPHPInstanceCreated&&await e.onPHPInstanceCreated(s,{isPrimary:o}),s}const i=new u.PHPRequestHandler({phpFactory:async({isPrimary:r})=>t(i,r),documentRoot:e.documentRoot||"/wordpress",absoluteUrl:e.siteUrl,rewriteRules:k,getFileNotFoundAction:e.getFileNotFoundAction??P,cookieStore:e.cookieStore});return i}async function b(e){return(await e.run({code:`t(i,r),documentRoot:e.documentRoot||"/wordpress",absoluteUrl:e.siteUrl,rewriteRules:k,getFileNotFoundAction:e.getFileNotFoundAction??P,cookieStore:e.cookieStore});return i}async function b(e){return(await e.run({code:`r.instanceManager.acquirePHPInstance({considerPrimary:!1}):void 0)),s.enableRuntimeRotation({recreateRuntime:e.createPhpRuntime,maxRequests:400}),e.onPHPInstanceCreated&&await e.onPHPInstanceCreated(s,{isPrimary:o}),s}const i=new u.PHPRequestHandler({documentRoot:e.documentRoot||"/wordpress",absoluteUrl:e.siteUrl,rewriteRules:k,getFileNotFoundAction:e.getFileNotFoundAction??P,cookieStore:e.cookieStore,php:e.maxPhpInstances===1?await t(void 0,!0):void 0,phpFactory:e.maxPhpInstances!==1?async({isPrimary:r})=>t(i,r):void 0,maxPhpInstances:e.maxPhpInstances});return i}async function b(e){return(await e.run({code:`r.instanceManager.acquirePHPInstance({considerPrimary:!1}):void 0)),s.enableRuntimeRotation({recreateRuntime:e.createPhpRuntime,maxRequests:400}),e.onPHPInstanceCreated&&await e.onPHPInstanceCreated(s,{isPrimary:o}),s}const i=new u.PHPRequestHandler({documentRoot:e.documentRoot||"/wordpress",absoluteUrl:e.siteUrl,rewriteRules:k,getFileNotFoundAction:e.getFileNotFoundAction??P,cookieStore:e.cookieStore,php:e.maxPhpInstances===1?await t(void 0,!0):void 0,phpFactory:e.maxPhpInstances!==1?async({isPrimary:r})=>t(i,r):void 0,maxPhpInstances:e.maxPhpInstances});return i}async function b(e){return(await e.run({code:` { expect( result.stdout ).toMatch( /WP-CLI \d+\.\d+\.\d+/ ); // Example: WP-CLI 2.10.0 expect( result.stderr ).toBe( '' ); - } ); + }, 15000 ); it( 'should return error if wp-cli command does not exist', async () => { const originalConsoleError = console.error; @@ -87,13 +87,13 @@ describe( 'executeWPCli', () => { console.error = originalConsoleError; console.warn = originalConsoleWarn; - } ); + }, 15000 ); it( 'should return the correct version of WP-CLI', async () => { const wpNowProvider = new WpNowProvider(); const result = await wpNowProvider.getWPCliVersionFromInstallation(); expect( result ).toMatch( /v\d+\.\d+\.\d+/ ); // Example: v2.10.0 - } ); + }, 15000 ); } ); describe( 'playground-cli executor', () => {