@wordpress/build 0.13.0 → 0.13.2-next.v.202605131006.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.cache/tsconfig.tsbuildinfo +1 -1
- package/CHANGELOG.md +6 -0
- package/README.md +144 -0
- package/lib/build.mjs +396 -11
- package/lib/widget-utils.mjs +100 -0
- package/package.json +4 -3
- package/templates/build.php.template +6 -0
- package/templates/module-registration.php.template +5 -1
- package/templates/page-wp-admin.php.template +15 -0
- package/templates/page.php.template +15 -0
- package/templates/widget-registration.php.template +113 -0
- package/templates/widget-registry.php.template +11 -0
- package/tsconfig.json +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"fileNames":["../../../node_modules/typescript/lib/lib.es5.d.ts","../../../node_modules/typescript/lib/lib.es2015.d.ts","../../../node_modules/typescript/lib/lib.es2016.d.ts","../../../node_modules/typescript/lib/lib.es2017.d.ts","../../../node_modules/typescript/lib/lib.es2018.d.ts","../../../node_modules/typescript/lib/lib.es2019.d.ts","../../../node_modules/typescript/lib/lib.es2020.d.ts","../../../node_modules/typescript/lib/lib.es2021.d.ts","../../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../node_modules/typescript/lib/lib.es2017.date.d.ts","../../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../../node_modules/typescript/lib/lib.decorators.d.ts","../../../node_modules/typescript/lib/lib.decorators.legacy.d.ts","../eslint-overrides.cjs","../lib/package-utils.mjs","../lib/dependency-graph.mjs","../lib/php-generator.mjs","../lib/route-utils.mjs","../../../node_modules/no-case/dist/index.d.ts","../../../node_modules/pascal-case/dist/index.d.ts","../../../node_modules/camel-case/dist/index.d.ts","../../../node_modules/capital-case/dist/index.d.ts","../../../node_modules/constant-case/dist/index.d.ts","../../../node_modules/dot-case/dist/index.d.ts","../../../node_modules/header-case/dist/index.d.ts","../../../node_modules/param-case/dist/index.d.ts","../../../node_modules/path-case/dist/index.d.ts","../../../node_modules/sentence-case/dist/index.d.ts","../../../node_modules/snake-case/dist/index.d.ts","../../../node_modules/change-case/dist/index.d.ts","../../../node_modules/esbuild/lib/main.d.ts","../lib/wordpress-externals-plugin.mjs","../../../node_modules/@types/node/compatibility/disposable.d.ts","../../../node_modules/@types/node/compatibility/indexable.d.ts","../../../node_modules/@types/node/compatibility/iterators.d.ts","../../../node_modules/@types/node/compatibility/index.d.ts","../../../node_modules/@types/node/globals.typedarray.d.ts","../../../node_modules/@types/node/buffer.buffer.d.ts","../../../node_modules/undici-types/header.d.ts","../../../node_modules/undici-types/readable.d.ts","../../../node_modules/undici-types/file.d.ts","../../../node_modules/undici-types/fetch.d.ts","../../../node_modules/undici-types/formdata.d.ts","../../../node_modules/undici-types/connector.d.ts","../../../node_modules/undici-types/client.d.ts","../../../node_modules/undici-types/errors.d.ts","../../../node_modules/undici-types/dispatcher.d.ts","../../../node_modules/undici-types/global-dispatcher.d.ts","../../../node_modules/undici-types/global-origin.d.ts","../../../node_modules/undici-types/pool-stats.d.ts","../../../node_modules/undici-types/pool.d.ts","../../../node_modules/undici-types/handlers.d.ts","../../../node_modules/undici-types/balanced-pool.d.ts","../../../node_modules/undici-types/agent.d.ts","../../../node_modules/undici-types/mock-interceptor.d.ts","../../../node_modules/undici-types/mock-agent.d.ts","../../../node_modules/undici-types/mock-client.d.ts","../../../node_modules/undici-types/mock-pool.d.ts","../../../node_modules/undici-types/mock-errors.d.ts","../../../node_modules/undici-types/proxy-agent.d.ts","../../../node_modules/undici-types/env-http-proxy-agent.d.ts","../../../node_modules/undici-types/retry-handler.d.ts","../../../node_modules/undici-types/retry-agent.d.ts","../../../node_modules/undici-types/api.d.ts","../../../node_modules/undici-types/interceptors.d.ts","../../../node_modules/undici-types/util.d.ts","../../../node_modules/undici-types/cookies.d.ts","../../../node_modules/undici-types/patch.d.ts","../../../node_modules/undici-types/websocket.d.ts","../../../node_modules/undici-types/eventsource.d.ts","../../../node_modules/undici-types/filereader.d.ts","../../../node_modules/undici-types/diagnostics-channel.d.ts","../../../node_modules/undici-types/content-type.d.ts","../../../node_modules/undici-types/cache.d.ts","../../../node_modules/undici-types/index.d.ts","../../../node_modules/@types/node/globals.d.ts","../../../node_modules/@types/node/assert.d.ts","../../../node_modules/@types/node/assert/strict.d.ts","../../../node_modules/@types/node/async_hooks.d.ts","../../../node_modules/@types/node/buffer.d.ts","../../../node_modules/@types/node/child_process.d.ts","../../../node_modules/@types/node/cluster.d.ts","../../../node_modules/@types/node/console.d.ts","../../../node_modules/@types/node/constants.d.ts","../../../node_modules/@types/node/crypto.d.ts","../../../node_modules/@types/node/dgram.d.ts","../../../node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/@types/node/dns.d.ts","../../../node_modules/@types/node/dns/promises.d.ts","../../../node_modules/@types/node/domain.d.ts","../../../node_modules/@types/node/dom-events.d.ts","../../../node_modules/@types/node/events.d.ts","../../../node_modules/@types/node/fs.d.ts","../../../node_modules/@types/node/fs/promises.d.ts","../../../node_modules/@types/node/http.d.ts","../../../node_modules/@types/node/http2.d.ts","../../../node_modules/@types/node/https.d.ts","../../../node_modules/@types/node/inspector.d.ts","../../../node_modules/@types/node/module.d.ts","../../../node_modules/@types/node/net.d.ts","../../../node_modules/@types/node/os.d.ts","../../../node_modules/@types/node/path.d.ts","../../../node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/@types/node/process.d.ts","../../../node_modules/@types/node/punycode.d.ts","../../../node_modules/@types/node/querystring.d.ts","../../../node_modules/@types/node/readline.d.ts","../../../node_modules/@types/node/readline/promises.d.ts","../../../node_modules/@types/node/repl.d.ts","../../../node_modules/@types/node/sea.d.ts","../../../node_modules/@types/node/stream.d.ts","../../../node_modules/@types/node/stream/promises.d.ts","../../../node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/@types/node/stream/web.d.ts","../../../node_modules/@types/node/string_decoder.d.ts","../../../node_modules/@types/node/test.d.ts","../../../node_modules/@types/node/timers.d.ts","../../../node_modules/@types/node/timers/promises.d.ts","../../../node_modules/@types/node/tls.d.ts","../../../node_modules/@types/node/trace_events.d.ts","../../../node_modules/@types/node/tty.d.ts","../../../node_modules/@types/node/url.d.ts","../../../node_modules/@types/node/util.d.ts","../../../node_modules/@types/node/v8.d.ts","../../../node_modules/@types/node/vm.d.ts","../../../node_modules/@types/node/wasi.d.ts","../../../node_modules/@types/node/worker_threads.d.ts","../../../node_modules/@types/node/zlib.d.ts","../../../node_modules/@types/node/index.d.ts"],"fileIdsList":[[75,114,117],[75,116,117],[117],[75,117,122,151],[75,117,118,123,129,130,137,148,159],[75,117,118,119,129,137],[75,117],[70,71,72,75,117],[75,117,120,160],[75,117,121,122,130,138],[75,117,122,148,156],[75,117,123,125,129,137],[75,116,117,124],[75,117,125,126],[75,117,129],[75,117,127,129],[75,116,117,129],[75,117,129,130,131,148,159],[75,117,129,130,131,144,148,151],[75,112,117,164],[75,117,125,129,132,137,148,159],[75,117,129,130,132,133,137,148,156,159],[75,117,132,134,148,156,159],[73,74,75,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165],[75,117,129,135],[75,117,136,159,164],[75,117,125,129,137,148],[75,117,138],[75,117,139],[75,116,117,140],[75,114,115,116,117,118,119,120,121,122,123,124,125,126,127,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165],[75,117,142],[75,117,143],[75,117,129,144,145],[75,117,144,146,160,162],[75,117,129,148,149,150,151],[75,117,148,150],[75,117,148,149],[75,117,151],[75,117,152],[75,114,117,148],[75,117,129,154,155],[75,117,154,155],[75,117,122,137,148,156],[75,117,157],[75,117,137,158],[75,117,132,143,159],[75,117,122,160],[75,117,148,161],[75,117,136,162],[75,117,163],[75,117,122,129,131,140,148,159,162,164],[75,117,148,165],[57,75,117],[56,75,117],[56,57,58,59,60,61,62,63,64,65,66,75,117],[59,75,117],[61,75,117],[75,84,88,117,159],[75,84,117,148,159],[75,79,117],[75,81,84,117,156,159],[75,117,137,156],[75,117,166],[75,79,117,166],[75,81,84,117,137,159],[75,76,77,80,83,117,129,148,159],[75,84,91,117],[75,76,82,117],[75,84,105,106,117],[75,80,84,117,151,159,166],[75,105,117,166],[75,78,79,117,166],[75,84,117],[75,78,79,80,81,82,83,84,85,86,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,106,107,108,109,110,111,117],[75,84,99,117],[75,84,91,92,117],[75,82,84,92,93,117],[75,83,117],[75,76,79,84,117],[75,84,88,92,93,117],[75,88,117],[75,82,84,87,117,159],[75,76,81,84,91,117],[75,117,148],[75,79,84,105,117,164,166],[52,75,117,139],[75,117,130,136,139],[52,75,117,131,139,159],[52,75,117,130,139],[52,67,68,75,117,122,131,139]],"fileInfos":[{"version":"bcd24271a113971ba9eb71ff8cb01bc6b0f872a85c23fdbe5d93065b375933cd","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f88bedbeb09c6f5a6645cb24c7c55f1aa22d19ae96c8e6959cbd8b85a707bc6","impliedFormat":1},{"version":"7fe93b39b810eadd916be8db880dd7f0f7012a5cc6ffb62de8f62a2117fa6f1f","impliedFormat":1},{"version":"bb0074cc08b84a2374af33d8bf044b80851ccc9e719a5e202eacf40db2c31600","impliedFormat":1},{"version":"1a7daebe4f45fb03d9ec53d60008fbf9ac45a697fdc89e4ce218bc94b94f94d6","impliedFormat":1},{"version":"f94b133a3cb14a288803be545ac2683e0d0ff6661bcd37e31aaaec54fc382aed","impliedFormat":1},{"version":"f59d0650799f8782fd74cf73c19223730c6d1b9198671b1c5b3a38e1188b5953","impliedFormat":1},{"version":"8a15b4607d9a499e2dbeed9ec0d3c0d7372c850b2d5f1fb259e8f6d41d468a84","impliedFormat":1},{"version":"eadcffda2aa84802c73938e589b9e58248d74c59cb7fcbca6474e3435ac15504","affectsGlobalScope":true,"impliedFormat":1},{"version":"105ba8ff7ba746404fe1a2e189d1d3d2e0eb29a08c18dded791af02f29fb4711","affectsGlobalScope":true,"impliedFormat":1},{"version":"00343ca5b2e3d48fa5df1db6e32ea2a59afab09590274a6cccb1dbae82e60c7c","affectsGlobalScope":true,"impliedFormat":1},{"version":"ebd9f816d4002697cb2864bea1f0b70a103124e18a8cd9645eeccc09bdf80ab4","affectsGlobalScope":true,"impliedFormat":1},{"version":"2c1afac30a01772cd2a9a298a7ce7706b5892e447bb46bdbeef720f7b5da77ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"7b0225f483e4fa685625ebe43dd584bb7973bbd84e66a6ba7bbe175ee1048b4f","affectsGlobalScope":true,"impliedFormat":1},{"version":"c0a4b8ac6ce74679c1da2b3795296f5896e31c38e888469a8e0f99dc3305de60","affectsGlobalScope":true,"impliedFormat":1},{"version":"3084a7b5f569088e0146533a00830e206565de65cae2239509168b11434cd84f","affectsGlobalScope":true,"impliedFormat":1},{"version":"c5079c53f0f141a0698faa903e76cb41cd664e3efb01cc17a5c46ec2eb0bef42","affectsGlobalScope":true,"impliedFormat":1},{"version":"32cafbc484dea6b0ab62cf8473182bbcb23020d70845b406f80b7526f38ae862","affectsGlobalScope":true,"impliedFormat":1},{"version":"fca4cdcb6d6c5ef18a869003d02c9f0fd95df8cfaf6eb431cd3376bc034cad36","affectsGlobalScope":true,"impliedFormat":1},{"version":"b93ec88115de9a9dc1b602291b85baf825c85666bf25985cc5f698073892b467","affectsGlobalScope":true,"impliedFormat":1},{"version":"f5c06dcc3fe849fcb297c247865a161f995cc29de7aa823afdd75aaaddc1419b","affectsGlobalScope":true,"impliedFormat":1},{"version":"b77e16112127a4b169ef0b8c3a4d730edf459c5f25fe52d5e436a6919206c4d7","affectsGlobalScope":true,"impliedFormat":1},{"version":"fbffd9337146eff822c7c00acbb78b01ea7ea23987f6c961eba689349e744f8c","affectsGlobalScope":true,"impliedFormat":1},{"version":"a995c0e49b721312f74fdfb89e4ba29bd9824c770bbb4021d74d2bf560e4c6bd","affectsGlobalScope":true,"impliedFormat":1},{"version":"c7b3542146734342e440a84b213384bfa188835537ddbda50d30766f0593aff9","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce6180fa19b1cccd07ee7f7dbb9a367ac19c0ed160573e4686425060b6df7f57","affectsGlobalScope":true,"impliedFormat":1},{"version":"3f02e2476bccb9dbe21280d6090f0df17d2f66b74711489415a8aa4df73c9675","affectsGlobalScope":true,"impliedFormat":1},{"version":"45e3ab34c1c013c8ab2dc1ba4c80c780744b13b5676800ae2e3be27ae862c40c","affectsGlobalScope":true,"impliedFormat":1},{"version":"805c86f6cca8d7702a62a844856dbaa2a3fd2abef0536e65d48732441dde5b5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"e42e397f1a5a77994f0185fd1466520691456c772d06bf843e5084ceb879a0ad","affectsGlobalScope":true,"impliedFormat":1},{"version":"f4c2b41f90c95b1c532ecc874bd3c111865793b23aebcc1c3cbbabcd5d76ffb0","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab26191cfad5b66afa11b8bf935ef1cd88fabfcb28d30b2dfa6fad877d050332","affectsGlobalScope":true,"impliedFormat":1},{"version":"2088bc26531e38fb05eedac2951480db5309f6be3fa4a08d2221abb0f5b4200d","affectsGlobalScope":true,"impliedFormat":1},{"version":"cb9d366c425fea79716a8fb3af0d78e6b22ebbab3bd64d25063b42dc9f531c1e","affectsGlobalScope":true,"impliedFormat":1},{"version":"500934a8089c26d57ebdb688fc9757389bb6207a3c8f0674d68efa900d2abb34","affectsGlobalScope":true,"impliedFormat":1},{"version":"689da16f46e647cef0d64b0def88910e818a5877ca5379ede156ca3afb780ac3","affectsGlobalScope":true,"impliedFormat":1},{"version":"bc21cc8b6fee4f4c2440d08035b7ea3c06b3511314c8bab6bef7a92de58a2593","affectsGlobalScope":true,"impliedFormat":1},{"version":"7ca53d13d2957003abb47922a71866ba7cb2068f8d154877c596d63c359fed25","affectsGlobalScope":true,"impliedFormat":1},{"version":"54725f8c4df3d900cb4dac84b64689ce29548da0b4e9b7c2de61d41c79293611","affectsGlobalScope":true,"impliedFormat":1},{"version":"e5594bc3076ac29e6c1ebda77939bc4c8833de72f654b6e376862c0473199323","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f3eb332c2d73e729f3364fcc0c2b375e72a121e8157d25a82d67a138c83a95c","affectsGlobalScope":true,"impliedFormat":1},{"version":"6f4427f9642ce8d500970e4e69d1397f64072ab73b97e476b4002a646ac743b1","affectsGlobalScope":true,"impliedFormat":1},{"version":"48915f327cd1dea4d7bd358d9dc7732f58f9e1626a29cc0c05c8c692419d9bb7","affectsGlobalScope":true,"impliedFormat":1},{"version":"b7bf9377723203b5a6a4b920164df22d56a43f593269ba6ae1fdc97774b68855","affectsGlobalScope":true,"impliedFormat":1},{"version":"db9709688f82c9e5f65a119c64d835f906efe5f559d08b11642d56eb85b79357","affectsGlobalScope":true,"impliedFormat":1},{"version":"4b25b8c874acd1a4cf8444c3617e037d444d19080ac9f634b405583fd10ce1f7","affectsGlobalScope":true,"impliedFormat":1},{"version":"37be57d7c90cf1f8112ee2636a068d8fd181289f82b744160ec56a7dc158a9f5","affectsGlobalScope":true,"impliedFormat":1},{"version":"a917a49ac94cd26b754ab84e113369a75d1a47a710661d7cd25e961cc797065f","affectsGlobalScope":true,"impliedFormat":1},{"version":"1ce14b81c5cc821994aa8ec1d42b220dd41b27fcc06373bce3958af7421b77d4","affectsGlobalScope":true,"impliedFormat":1},{"version":"b3a048b3e9302ef9a34ef4ebb9aecfb28b66abb3bce577206a79fee559c230da","affectsGlobalScope":true,"impliedFormat":1},{"version":"f0fdc6f9f2a3da8eaf72337aba7fb44d1cc2497a26295c704a3cfc25fe3a4fe4","impliedFormat":1},{"version":"b534e7aecadb1a5042bf7371a84c8d22746b7bffb026c51030f15d502a1ef8c6","impliedFormat":99},{"version":"f644817dca4fc56685cf5cc01f31e669c169d9b3a0fbb37a51f934280a73e871","impliedFormat":99},{"version":"1ba69d7a742b11f3bf52da03650ce306be4ca156e5608ffdcffe192d030881c2","impliedFormat":99},{"version":"81e5974312cb4224971996bcc16a97b8f750daf400132028d7b6fa0b2f496f99","impliedFormat":99},{"version":"b4e123af1af6049685c93073a15868b50aebdad666d422edc72fa2b585fa8a37","impliedFormat":1},{"version":"f86c04a744ebcede96bac376f9a2c90f2bd3c422740d91dda4ca6233199d4977","impliedFormat":1},{"version":"6ae1bddee5c790439bd992abd063b9b46e0cadd676c2a8562268d1869213ff60","impliedFormat":1},{"version":"606244fc97a6a74b877f2e924ba7e55b233bc6acb57d7bf40ba84a5be2d9adb0","impliedFormat":1},{"version":"4a1cabac71036b8a14f5db1b753b579f0c901c7d7b9227e6872dadf6efb104e8","impliedFormat":1},{"version":"062959a1d825b96639d87be35fe497cbd3f89544bf06fdad577bbfb85fcf604c","impliedFormat":1},{"version":"4c3672dc8f4e4fdd3d18525b22b31f1b5481f5a415db96550d3ac5163a6c3dd3","impliedFormat":1},{"version":"f9a69ca445010b91fe08f08c06e0f86d79c0d776905f9bdb828477cb2a1eb7fc","impliedFormat":1},{"version":"ad7fd0e7ee457d4884b3aaecbcbd2a80b6803407c4ce2540c296170d4c7918ef","impliedFormat":1},{"version":"a50ef21605f41c6acad6c3ef0307e5311b94963c846ca093c764b80cdb5318d6","impliedFormat":1},{"version":"74b4035dd26d09a417c44ca23ab5ee69b173f8c2f6b2e47350ab0795cf2d4a17","impliedFormat":1},{"version":"918f86ee2b19cc38cb8b1a4cf8f223eb228aaa39df3604c42f700fac2f0b3ea1","impliedFormat":1},{"version":"161c8e0690c46021506e32fda85956d785b70f309ae97011fd27374c065cac9b","affectsGlobalScope":true,"impliedFormat":1},{"version":"fd778bc292899d32e685fc22bcb1c841ab2c30f6d824a852f929bbcf1bf9d5e8","impliedFormat":99},{"version":"70521b6ab0dcba37539e5303104f29b721bfb2940b2776da4cc818c07e1fefc1","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab41ef1f2cdafb8df48be20cd969d875602483859dc194e9c97c8a576892c052","affectsGlobalScope":true,"impliedFormat":1},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"a79e62f1e20467e11a904399b8b18b18c0c6eea6b50c1168bf215356d5bebfaf","affectsGlobalScope":true,"impliedFormat":1},{"version":"0fd06258805d26c72f5997e07a23155d322d5f05387adb3744a791fe6a0b042d","affectsGlobalScope":true,"impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"24bd580b5743dc56402c440dc7f9a4f5d592ad7a419f25414d37a7bfe11e342b","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"6bdc71028db658243775263e93a7db2fd2abfce3ca569c3cca5aee6ed5eb186d","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"4d2b0eb911816f66abe4970898f97a2cfc902bcd743cbfa5017fad79f7ef90d8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","impliedFormat":1},{"version":"24b8685c62562f5d98615c5a0c1d05f297cf5065f15246edfe99e81ec4c0e011","impliedFormat":1},{"version":"93507c745e8f29090efb99399c3f77bec07db17acd75634249dc92f961573387","impliedFormat":1},{"version":"339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"ca6d304b929748ea15c33f28c1f159df18a94470b424ab78c52d68d40a41e1e9","affectsGlobalScope":true,"impliedFormat":1},{"version":"a72ffc815104fb5c075106ebca459b2d55d07862a773768fce89efc621b3964b","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"3d77c73be94570813f8cadd1f05ebc3dc5e2e4fdefe4d340ca20cd018724ee36","impliedFormat":1},{"version":"d674383111e06b6741c4ad2db962131b5b0fa4d0294b998566c635e86195a453","affectsGlobalScope":true,"impliedFormat":1},{"version":"f3e58c4c18a031cbb17abec7a4ad0bd5ae9fc70c1f4ba1e7fb921ad87c504aca","impliedFormat":1},{"version":"a3e8bafb2af8e850c644f4be7f5156cf7d23b7bfdc3b786bd4d10ed40329649c","impliedFormat":1},{"version":"35ec8b6760fd7138bbf5809b84551e31028fb2ba7b6dc91d95d098bf212ca8b4","affectsGlobalScope":true,"impliedFormat":1},{"version":"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","impliedFormat":1},{"version":"f77d9188e41291acf14f476e931972460a303e1952538f9546e7b370cb8d0d20","affectsGlobalScope":true,"impliedFormat":1},{"version":"b0c0d1d13be149f790a75b381b413490f98558649428bb916fd2d71a3f47a134","impliedFormat":1},{"version":"3c884d9d9ec454bdf0d5a0b8465bf8297d2caa4d853851d92cc417ac6f30b969","impliedFormat":1},{"version":"5a369483ac4cfbdf0331c248deeb36140e6907db5e1daed241546b4a2055f82c","impliedFormat":1},{"version":"e8f5b5cc36615c17d330eaf8eebbc0d6bdd942c25991f96ef122f246f4ff722f","impliedFormat":1},{"version":"f0bd7e6d931657b59605c44112eaf8b980ba7f957a5051ed21cb93d978cf2f45","impliedFormat":1},{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true,"impliedFormat":1},{"version":"4d7da7075068195f8f127f41c61e304cdca5aafb1be2d0f4fb67c6b4c3e98d50","affectsGlobalScope":true,"impliedFormat":1},{"version":"a4bdde4e601e9554a844e1e0d0ccfa05e183ef9d82ab3ac25f17c1709033d360","impliedFormat":1},{"version":"ad23fd126ff06e72728dd7bfc84326a8ca8cec2b9d2dac0193d42a777df0e7d8","impliedFormat":1},{"version":"c60db41f7bee80fb80c0b12819f5e465c8c8b465578da43e36d04f4a4646f57d","impliedFormat":1},{"version":"93bd413918fa921c8729cef45302b24d8b6c7855d72d5bf82d3972595ae8dcbf","impliedFormat":1},{"version":"4ff41188773cbf465807dd2f7059c7494cbee5115608efc297383832a1150c43","impliedFormat":1},{"version":"dccdf1677e531e33f8ac961a68bc537418c9a414797c1ea7e91307501cdc3f5e","impliedFormat":1},{"version":"1f4fc6905c4c3ae701838f89484f477b8d9b3ef39270e016b5488600d247d9a5","affectsGlobalScope":true,"impliedFormat":1},{"version":"d206b4baf4ddcc15d9d69a9a2f4999a72a2c6adeaa8af20fa7a9960816287555","impliedFormat":1},{"version":"93f437e1398a4f06a984f441f7fa7a9f0535c04399619b5c22e0b87bdee182cb","impliedFormat":1},{"version":"afbe24ab0d74694372baa632ecb28bb375be53f3be53f9b07ecd7fc994907de5","impliedFormat":1},{"version":"70731d10d5311bd4cf710ef7f6539b62660f4b0bfdbb3f9fbe1d25fe6366a7fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"a20f1e119615bf7632729fd89b6c0b5ffdc2df3b512d6304146294528e3ebe19","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e043a1bc8fbf2a255bccf9bf27e0f1caf916c3b0518ea34aa72357c0afd42ec","impliedFormat":1},{"version":"137c2894e8f3e9672d401cc0a305dc7b1db7c69511cf6d3970fb53302f9eae09","impliedFormat":1},{"version":"3bc2f1e2c95c04048212c569ed38e338873f6a8593930cf5a7ef24ffb38fc3b6","impliedFormat":1},{"version":"8145e07aad6da5f23f2fcd8c8e4c5c13fb26ee986a79d03b0829b8fce152d8b2","impliedFormat":1},{"version":"f9d9d753d430ed050dc1bf2667a1bab711ccbb1c1507183d794cc195a5b085cc","impliedFormat":1},{"version":"9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","impliedFormat":1},{"version":"235bfb54b4869c26f7e98e3d1f68dbfc85acf4cf5c38a4444a006fbf74a8a43d","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","impliedFormat":1},{"version":"bb715efb4857eb94539eafb420352105a0cff40746837c5140bf6b035dd220ba","affectsGlobalScope":true,"impliedFormat":1},{"version":"1851a3b4db78664f83901bb9cac9e45e03a37bb5933cc5bf37e10bb7e91ab4eb","impliedFormat":1},{"version":"fdedf82878e4c744bc2a1c1e802ae407d63474da51f14a54babe039018e53d8f","affectsGlobalScope":true,"impliedFormat":1},{"version":"08353b04a3501d84fc8d7b49de99f6c1cc26026e6d9d697a18315f3bfe92ed03","affectsGlobalScope":true,"impliedFormat":1},{"version":"578d8bb6dcb2a1c03c4c3f8eb71abc9677e1a5c788b7f24848e3138ce17f3400","impliedFormat":1},{"version":"4f029899f9bae07e225c43aef893590541b2b43267383bf5e32e3a884d219ed5","impliedFormat":1},{"version":"ae56f65caf3be91108707bd8dfbccc2a57a91feb5daabf7165a06a945545ed26","impliedFormat":1},{"version":"a136d5de521da20f31631a0a96bf712370779d1c05b7015d7019a9b2a0446ca9","impliedFormat":1},{"version":"5b566927cad2ed2139655d55d690ffa87df378b956e7fe1c96024c4d9f75c4cf","affectsGlobalScope":true,"impliedFormat":1},{"version":"bce947017cb7a2deebcc4f5ba04cead891ce6ad1602a4438ae45ed9aa1f39104","affectsGlobalScope":true,"impliedFormat":1},{"version":"d3dffd70e6375b872f0b4e152de4ae682d762c61a24881ecc5eb9f04c5caf76f","impliedFormat":1},{"version":"e2c72c065a36bc9ab2a00ac6a6f51e71501619a72c0609defd304d46610487a4","impliedFormat":1},{"version":"d91a7d8b5655c42986f1bdfe2105c4408f472831c8f20cf11a8c3345b6b56c8c","impliedFormat":1},{"version":"616075a6ac578cf5a013ee12964188b4412823796ce0b202c6f1d2e4ca8480d7","affectsGlobalScope":true,"impliedFormat":1},{"version":"e8a979b8af001c9fc2e774e7809d233c8ca955a28756f52ee5dee88ccb0611d2","impliedFormat":1},{"version":"cac793cc47c29e26e4ac3601dcb00b4435ebed26203485790e44f2ad8b6ad847","impliedFormat":1}],"root":[[51,55],69],"options":{"allowJs":true,"allowSyntheticDefaultImports":true,"checkJs":true,"composite":true,"declaration":true,"declarationDir":"../build-types","declarationMap":false,"emitDeclarationOnly":false,"jsx":1,"module":100,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"outDir":"./","rootDir":"..","skipLibCheck":true,"strict":true,"target":8},"referencedMap":[[114,1],[115,1],[116,2],[75,3],[117,4],[118,5],[119,6],[70,7],[73,8],[71,7],[72,7],[120,9],[121,10],[122,11],[123,12],[124,13],[125,14],[126,14],[128,15],[127,16],[129,17],[130,18],[131,19],[113,20],[74,7],[132,21],[133,22],[134,23],[166,24],[135,25],[136,26],[137,27],[138,28],[139,29],[140,30],[141,31],[142,32],[143,33],[144,34],[145,34],[146,35],[147,7],[148,36],[150,37],[149,38],[151,39],[152,40],[153,41],[154,42],[155,43],[156,44],[157,45],[158,46],[159,47],[160,48],[161,49],[162,50],[163,51],[164,52],[165,53],[58,54],[59,55],[67,56],[60,55],[61,55],[68,7],[62,57],[56,7],[63,58],[57,55],[64,58],[65,55],[66,58],[49,7],[50,7],[10,7],[9,7],[2,7],[11,7],[12,7],[13,7],[14,7],[15,7],[16,7],[17,7],[18,7],[3,7],[19,7],[20,7],[4,7],[21,7],[25,7],[22,7],[23,7],[24,7],[26,7],[27,7],[28,7],[5,7],[29,7],[30,7],[31,7],[32,7],[6,7],[36,7],[33,7],[34,7],[35,7],[37,7],[7,7],[38,7],[43,7],[44,7],[39,7],[40,7],[41,7],[42,7],[8,7],[48,7],[45,7],[46,7],[47,7],[1,7],[91,59],[101,60],[90,59],[111,61],[82,62],[81,63],[110,64],[104,65],[109,66],[84,67],[98,68],[83,69],[107,70],[79,71],[78,64],[108,72],[80,73],[85,74],[86,7],[89,74],[76,7],[112,75],[102,76],[93,77],[94,78],[96,79],[92,80],[95,81],[105,64],[87,82],[88,83],[97,84],[77,85],[100,76],[99,74],[103,7],[106,86],[51,7],[53,87],[52,88],[54,89],[55,90],[69,91]],"affectedFilesPendingEmit":[[51,17],[53,17],[52,17],[54,17],[55,17],[69,17]],"emitSignatures":[51,52,53,54,55,69],"version":"6.0.2"}
|
|
1
|
+
{"version":"7.0.0-dev.20260423.1","root":[[51,56],70],"fileNames":["lib.es5.d.ts","lib.es2015.d.ts","lib.es2016.d.ts","lib.es2017.d.ts","lib.es2018.d.ts","lib.es2019.d.ts","lib.es2020.d.ts","lib.es2021.d.ts","lib.es2015.core.d.ts","lib.es2015.collection.d.ts","lib.es2015.generator.d.ts","lib.es2015.iterable.d.ts","lib.es2015.promise.d.ts","lib.es2015.proxy.d.ts","lib.es2015.reflect.d.ts","lib.es2015.symbol.d.ts","lib.es2015.symbol.wellknown.d.ts","lib.es2016.array.include.d.ts","lib.es2016.intl.d.ts","lib.es2017.arraybuffer.d.ts","lib.es2017.date.d.ts","lib.es2017.object.d.ts","lib.es2017.sharedmemory.d.ts","lib.es2017.string.d.ts","lib.es2017.intl.d.ts","lib.es2017.typedarrays.d.ts","lib.es2018.asyncgenerator.d.ts","lib.es2018.asynciterable.d.ts","lib.es2018.intl.d.ts","lib.es2018.promise.d.ts","lib.es2018.regexp.d.ts","lib.es2019.array.d.ts","lib.es2019.object.d.ts","lib.es2019.string.d.ts","lib.es2019.symbol.d.ts","lib.es2019.intl.d.ts","lib.es2020.bigint.d.ts","lib.es2020.date.d.ts","lib.es2020.promise.d.ts","lib.es2020.sharedmemory.d.ts","lib.es2020.string.d.ts","lib.es2020.symbol.wellknown.d.ts","lib.es2020.intl.d.ts","lib.es2020.number.d.ts","lib.es2021.promise.d.ts","lib.es2021.string.d.ts","lib.es2021.weakref.d.ts","lib.es2021.intl.d.ts","lib.decorators.d.ts","lib.decorators.legacy.d.ts","../eslint-overrides.cjs","../lib/package-utils.mjs","../lib/dependency-graph.mjs","../lib/php-generator.mjs","../lib/route-utils.mjs","../lib/widget-utils.mjs","../../../node_modules/no-case/dist/index.d.ts","../../../node_modules/pascal-case/dist/index.d.ts","../../../node_modules/camel-case/dist/index.d.ts","../../../node_modules/capital-case/dist/index.d.ts","../../../node_modules/constant-case/dist/index.d.ts","../../../node_modules/dot-case/dist/index.d.ts","../../../node_modules/header-case/dist/index.d.ts","../../../node_modules/param-case/dist/index.d.ts","../../../node_modules/path-case/dist/index.d.ts","../../../node_modules/sentence-case/dist/index.d.ts","../../../node_modules/snake-case/dist/index.d.ts","../../../node_modules/change-case/dist/index.d.ts","../../../node_modules/esbuild/lib/main.d.ts","../lib/wordpress-externals-plugin.mjs","../../../node_modules/@types/node/compatibility/disposable.d.ts","../../../node_modules/@types/node/compatibility/indexable.d.ts","../../../node_modules/@types/node/compatibility/iterators.d.ts","../../../node_modules/@types/node/compatibility/index.d.ts","../../../node_modules/@types/node/globals.typedarray.d.ts","../../../node_modules/@types/node/buffer.buffer.d.ts","../../../node_modules/@types/node/globals.d.ts","../../../node_modules/@types/node/web-globals/abortcontroller.d.ts","../../../node_modules/@types/node/web-globals/domexception.d.ts","../../../node_modules/@types/node/web-globals/events.d.ts","../../../node_modules/undici-types/header.d.ts","../../../node_modules/undici-types/readable.d.ts","../../../node_modules/undici-types/file.d.ts","../../../node_modules/undici-types/fetch.d.ts","../../../node_modules/undici-types/formdata.d.ts","../../../node_modules/undici-types/connector.d.ts","../../../node_modules/undici-types/client.d.ts","../../../node_modules/undici-types/errors.d.ts","../../../node_modules/undici-types/dispatcher.d.ts","../../../node_modules/undici-types/global-dispatcher.d.ts","../../../node_modules/undici-types/global-origin.d.ts","../../../node_modules/undici-types/pool-stats.d.ts","../../../node_modules/undici-types/pool.d.ts","../../../node_modules/undici-types/handlers.d.ts","../../../node_modules/undici-types/balanced-pool.d.ts","../../../node_modules/undici-types/agent.d.ts","../../../node_modules/undici-types/mock-interceptor.d.ts","../../../node_modules/undici-types/mock-agent.d.ts","../../../node_modules/undici-types/mock-client.d.ts","../../../node_modules/undici-types/mock-pool.d.ts","../../../node_modules/undici-types/mock-errors.d.ts","../../../node_modules/undici-types/proxy-agent.d.ts","../../../node_modules/undici-types/env-http-proxy-agent.d.ts","../../../node_modules/undici-types/retry-handler.d.ts","../../../node_modules/undici-types/retry-agent.d.ts","../../../node_modules/undici-types/api.d.ts","../../../node_modules/undici-types/interceptors.d.ts","../../../node_modules/undici-types/util.d.ts","../../../node_modules/undici-types/cookies.d.ts","../../../node_modules/undici-types/patch.d.ts","../../../node_modules/undici-types/websocket.d.ts","../../../node_modules/undici-types/eventsource.d.ts","../../../node_modules/undici-types/filereader.d.ts","../../../node_modules/undici-types/diagnostics-channel.d.ts","../../../node_modules/undici-types/content-type.d.ts","../../../node_modules/undici-types/cache.d.ts","../../../node_modules/undici-types/index.d.ts","../../../node_modules/@types/node/web-globals/fetch.d.ts","../../../node_modules/@types/node/assert.d.ts","../../../node_modules/@types/node/assert/strict.d.ts","../../../node_modules/@types/node/async_hooks.d.ts","../../../node_modules/@types/node/buffer.d.ts","../../../node_modules/@types/node/child_process.d.ts","../../../node_modules/@types/node/cluster.d.ts","../../../node_modules/@types/node/console.d.ts","../../../node_modules/@types/node/constants.d.ts","../../../node_modules/@types/node/crypto.d.ts","../../../node_modules/@types/node/dgram.d.ts","../../../node_modules/@types/node/diagnostics_channel.d.ts","../../../node_modules/@types/node/dns.d.ts","../../../node_modules/@types/node/dns/promises.d.ts","../../../node_modules/@types/node/domain.d.ts","../../../node_modules/@types/node/events.d.ts","../../../node_modules/@types/node/fs.d.ts","../../../node_modules/@types/node/fs/promises.d.ts","../../../node_modules/@types/node/http.d.ts","../../../node_modules/@types/node/http2.d.ts","../../../node_modules/@types/node/https.d.ts","../../../node_modules/@types/node/inspector.generated.d.ts","../../../node_modules/@types/node/module.d.ts","../../../node_modules/@types/node/net.d.ts","../../../node_modules/@types/node/os.d.ts","../../../node_modules/@types/node/path.d.ts","../../../node_modules/@types/node/perf_hooks.d.ts","../../../node_modules/@types/node/process.d.ts","../../../node_modules/@types/node/punycode.d.ts","../../../node_modules/@types/node/querystring.d.ts","../../../node_modules/@types/node/readline.d.ts","../../../node_modules/@types/node/readline/promises.d.ts","../../../node_modules/@types/node/repl.d.ts","../../../node_modules/@types/node/sea.d.ts","../../../node_modules/@types/node/stream.d.ts","../../../node_modules/@types/node/stream/promises.d.ts","../../../node_modules/@types/node/stream/consumers.d.ts","../../../node_modules/@types/node/stream/web.d.ts","../../../node_modules/@types/node/string_decoder.d.ts","../../../node_modules/@types/node/test.d.ts","../../../node_modules/@types/node/timers.d.ts","../../../node_modules/@types/node/timers/promises.d.ts","../../../node_modules/@types/node/tls.d.ts","../../../node_modules/@types/node/trace_events.d.ts","../../../node_modules/@types/node/tty.d.ts","../../../node_modules/@types/node/url.d.ts","../../../node_modules/@types/node/util.d.ts","../../../node_modules/@types/node/v8.d.ts","../../../node_modules/@types/node/vm.d.ts","../../../node_modules/@types/node/wasi.d.ts","../../../node_modules/@types/node/worker_threads.d.ts","../../../node_modules/@types/node/zlib.d.ts","../../../node_modules/@types/node/index.d.ts"],"fileInfos":[{"version":"a1aa1a5e065d48ef5c7bb99e38412f96","affectsGlobalScope":true,"impliedNodeFormat":1},"d4306fb2e47f74835e8674ffac07d76f","e437c5c1302869326c3bb93da85bbbcf","e4324975a566567b21d350615f1fc6ac","333b1b9a2a9ac3b8497dba5c63b5ba50","6cffacd662b6eb5fa7a36aa2ea366bfa","b4c34f9c23304dbef2d23698637ed638","e5cb86a5fc491796ecd1d2dd348d208f",{"version":"01ac052ec4a79e87229f90466a9645f8","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"edba5df642941aa062a62f6328c6df3d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6344b55f26a4e81d9608777dbfb877dd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3c0ed28e53d3695b363e256ec1c023fd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4c2761daba7f17141c25baa0821ac5da","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b87656acabd63e69379ff6ffcfe52fc7","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"597469522da047a5af5222cc6989f405","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"bb3a710cbcda0533bb127712927cbe37","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"55d97a8c6fbf34a30450a7b1e5f7a298","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0ee05eb59426d33e374226d8dcfa708b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"e347c14030993906efcfbb88915b6a05","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b0231263857c9b6a03641acdc9280ceb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3b15c4a83b598cacb4067676e6f0abed","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b417d97b7934cef63b1889abec0bbfbf","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"09a6cf4032ebba60ce22a501e663f881","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"7a42de379b489e8f7b647455bebfc576","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"e22cc07e3f3cc242ba52fa3f8ea1fc58","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2c45da767a1bfbb220848df1bc4029e4","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b44c3e0fbaf2130cdcf6ac38b120ffa1","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b612fb5cf8e5d964b92063a75207632a","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"02705151a5e1551b9162a9ed8ab763f7","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"41025e398be9215d32e4337335da8f0b","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"52684c2b1f353a5538e4f275182a54cd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"6dedb6a4f90d1df3a6fbe5693e44886c","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ca3f36fe3562c07e0f0d71c2bebd3f6d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"409974d6129befbb8226ddd1c6558568","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4d9cfde2a1ae1b4925f1f9bc10848e5d","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"7e1daecc66dd564144e3bb1a0266b5fd","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a8e1d9bb35fd0637f2f9fd2b2a54f2ec","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4f168501772a6543182765bfd5f2fbfe","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a19c80aad1b2162103496f5ba293a732","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"b69afa63cd5d059851c78adb2856ee09","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ae2fc5d954e9b0f5feee3d481b953c27","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1cfd3091a071d8b6feec15277643bafe","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"692bcd75364db0f65d428801c7884466","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"a0d87491913d843139e0c993650a3235","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"4ef72aa378127e7b7abba915b0110b1e","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"3ec74c6a7d4463f0254db3a74cf75646","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"84c2bdfa470d075526cce6322d81b0b6","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"0b3844c2b8c73e4e1ab91431411cad11","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"f64453cbf9671f28158677fa5c43967a","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"33f317af5428801f944a478d2c1e38e5","affectsGlobalScope":true,"impliedNodeFormat":1},"189850867741e20bc4ba8c687f1bd90d",{"version":"02b01e6c2c5cb1c49a368aa72dc13e75","impliedNodeFormat":99},{"version":"b15bd36d4854896f626562f20ec211be","impliedNodeFormat":99},{"version":"47aac1d689f2fcf59ba0409cdc17b2c0","impliedNodeFormat":99},{"version":"7e9befdd25db0b636c8609f0b3cb5efa","impliedNodeFormat":99},{"version":"43d95132efe74d1c77f9b7f6726f79fd","impliedNodeFormat":99},"56bed6adc232e28a9f47c95644894a6f","17c398378c22e3340fa7af0e8d4aedbd","ea8c4131489d30cc21e08b67ac99c0da","f334a09cfdb7c8cca7bd37b2467deb79","73871f583e43cf9c7968da5d1e008b1d","ceb8f7e4fafc5b93d6c2fc889e38e731","acf8e0843a5e743cc57dbc5aa7783a10","8ad2211424b001dee0585d8e3702fdb9","357829dbe6fa21b8bedf1be66a0315df","551139d61c6d551443b62bc96e8a0399","baf819dfccc140c019405d1cab164cff","60c910950d36986f8879c795513908a0",{"version":"7a7959e53469a597bd000a31cb5c49df","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"dc2e602e2ba6cd0b0e379d9ecd8a5155","impliedNodeFormat":99},{"version":"90630acdc4134173bcf216f187bd3010","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"913b52a39743d1c11984e4e124b1f3a8","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"2514e9a2749c0fc18d2f478e9e1e641e","affectsGlobalScope":true,"impliedNodeFormat":1},"fe51d7a9bcdbcce1e65bbcf39b212298",{"version":"849a1873c4e917b0887368c1be897faa","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"c46c3108bde06d3b1fc6f802eb09eeeb","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"1332add604574cf529fb33b23304b296","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9af0a7e3ef1c42cd066b9f8d365cc1ba","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"9eca652586205dc5b07f9ba57b1c8500","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"ec5f75939754ce94652189ec7d0d3058","affectsGlobalScope":true,"impliedNodeFormat":1},"628b774b54637325e286752c79c12432","bb1f9e3091b88e9d0e93b7198c736af3","514fd35e5eb35bb2e5cbb908af0a0aa2","ed57ae88565308729f2327f26d684976","dcd932d6b0038f2e250e30dc10125b22","9508c917bd7e458745e222a82dd24ef0","fabf86f455f96b90538cc26320ab2765","14550b4cd9f433e0addd8b6d67614d23","cf0ac6aebc25cb780674653aaeee688e","35fef7bac8048f583e4ce6eaa0c2a4c0","6752dc653fc7a333027249fd851fdb62","b9ad7e689b46dfba362c1bf174e69018","8b0a2930dfabdf27c69c6bb1eeabcdc8","4513b1ed15523d247040689f37fa9db2","5c0c499eed773a750903d9497beafacd","2377da227d1bac82ff7b3f2081ddf8d3","beef985b474fefeb80d27fb2c8778371","c79fc9d9f09ae598a374ae7c0b5284a4","f2caa3cebb1e6be855519004830a6be0","8ebc9f2a77c900e710801214c5cb994c","ec617a0e0577dd6a3210c3b067ecb325","1db5d06e485bd82d6d5f6e36925a8714","24b864518967840216c779b5e5f00975","8719cd8047700bfb6046798390053823","f2840afb502c94db92dab0fb8d27812f","a7e7d08b372210c203745d3eac61a411","531183cc80535e0e94226d720e5eb038","f627eb958ca52c85e42f04dce4661f86","9a43fc665bce9012a3d5fe1b574ff4dc","13f4b4da6546a34719fd6bde15fb63dd","a589216508844bfc00e62fc2d97fda45","865aea1c3209e31b076cb6fe780e769e","12e64aaf26af0f5c8f1b263dd66e3feb","928971ebbcdf5b093ef37669b33bddf6","b744265d8ad12b7d4d5c5dc35d18d44e","eff32168b8348b822afeed9cbf61afa7","9aafd1f29b4d8861c1c6c34bf83c0721",{"version":"a127795c4dad633990c87aa0b86831e5","affectsGlobalScope":true,"impliedNodeFormat":1},"4ef82d390af85e719a46d566e229dd83","7deced3ef46e082f97d49bb71622526a","fa7acb320bbf7da8f76e431437143034",{"version":"ee57e9bfec6167b488ced231a7bf233d","affectsGlobalScope":true,"impliedNodeFormat":1},"7aa99080b86233d5b21416907d7a75a6","7d6a8df1becce5c270da2093e7835920",{"version":"c37fea1584ced70492ff5748ed570abd","affectsGlobalScope":true,"impliedNodeFormat":1},"b2b472cd0bf0f8d5f022e00ca1c401f4",{"version":"e22c8fb0fc65df14299c6c94cf729b3c","affectsGlobalScope":true,"impliedNodeFormat":1},"a84efb87b57f78ea0b0577edaacd8b33","814e0c2cc2a92531b6dc5d2a1767a6e1","79ac55b2d493df83277d681e4d64a992","7ab3b7243211fa08af307609be231d6c","7fd0f028e135bdf15ff757781a2f4ba9",{"version":"cab5b406d3defff17c931e41fa98aeb1","affectsGlobalScope":true,"impliedNodeFormat":1},"aa7dc1db3d208fb91418794a18539d4c","e9b8fc3c9291fc5701e219c0407e973d","b8f5d7bb61117f48a99b0cecaa75d186","687b6f8f042393a27ce6c8fd32972129","1d3b57f542db6054f952f8076b3c6a3a","4e0ba29e69c1176d4b909ad8a85a2695",{"version":"e5d25a206975fb43b72d246ed86fd7fe","affectsGlobalScope":true,"impliedNodeFormat":1},"a5525d047b8b84dac8b2e21fa393f465","86308ea691fd06825dd9a3ce0f1e901a","44782881f424302151e0de8fdaa39575",{"version":"f0ef68e9c53d126a7b3bfc1ae9f2c7c4","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"71259a408a4178e5f0795188b4d802f1","affectsGlobalScope":true,"impliedNodeFormat":1},"eb80d821e5e931dcccee2697f3e249e2","961969874f5ee12ed3429d3d0c82de02","9a62058bc2d476e807cc6594eed72adb","40cbc4bb3b225b03c54255154dada07d","6534825a8bda3eeecde9bca9e3a99712","09a582ab2a73806ab5887ea413b3d55a","17bf20c066f28d82e59096464112bc39","c8206d568b54e5ea06131963eecd576a","15878f4f50c2e562c0768eb735c2aed5",{"version":"2939c9bf76087f5c43b7ed44aeab6853","affectsGlobalScope":true,"impliedNodeFormat":1},"7b844f3801adf7e09ea25ec5f39f9a86","46c937d243665015f13587ac0db55909",{"version":"1f29cf27395029939dd41fce4f0c5653","affectsGlobalScope":true,"impliedNodeFormat":1},"f026c594d60114f10583261f6499df38","1ac553606580aeec204cce24c38b2e3f","3c29bf7066a67e7151f563fc1c4e56cb","00d49834780046c2d6a7da3e50d83cca",{"version":"377c78771ee061f2b4e59d5eb5a28782","affectsGlobalScope":true,"impliedNodeFormat":1},{"version":"7293552290431bff8ef5f13e6f7fcbfc","affectsGlobalScope":true,"impliedNodeFormat":1},"9453ee3aca6a51ae747057fbc6388cf2","6c491c1508bd3e1df0f45f38b07243c2","1f99b8445612afcfaae0f8591d8d18ac",{"version":"bbd4e0ea8a847a4b60ba7d5741985c9d","affectsGlobalScope":true,"impliedNodeFormat":1},"f57ef54941c62bf28f3beafb86025735","7b6c16d46b33570aaef9d0fdc4f02f14"],"fileIdsList":[[76,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[71,72,73,76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[74,75,76,77,78,79,80,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,168,169],[76,117,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,117,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168],[58,76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[57,76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[57,58,59,60,61,62,63,64,65,66,67,76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[60,76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[62,76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,89,93,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,89,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,84,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,86,89,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170],[76,84,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170],[76,81,82,85,88,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,89,96,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,81,87,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,89,110,111,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,85,89,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170],[76,110,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170],[76,83,84,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170],[76,83,84,85,86,87,88,89,90,91,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,111,112,113,114,115,116,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,89,104,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,89,96,97,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,87,89,97,98,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,88,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,81,84,89,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,89,93,97,98,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,93,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,87,89,92,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,81,86,89,96,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[76,84,89,110,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170],[52,76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169],[52,68,69,76,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169]],"options":{"allowJs":true,"checkJs":true,"composite":true,"emitDeclarationOnly":false,"declaration":true,"declarationDir":"../build-types","declarationMap":false,"jsx":1,"module":100,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"outDir":"./","rootDir":"..","skipLibCheck":true,"strict":true,"target":8,"allowSyntheticDefaultImports":true},"referencedMap":[[119,1],[120,2],[121,3],[76,4],[122,5],[123,6],[124,7],[71,8],[74,9],[72,8],[73,8],[125,10],[126,11],[127,12],[128,13],[129,14],[130,15],[131,16],[132,17],[133,18],[134,19],[135,20],[77,8],[75,8],[136,21],[137,22],[138,23],[170,24],[139,25],[140,26],[141,27],[142,28],[143,29],[144,30],[145,31],[146,32],[147,33],[148,34],[149,35],[150,36],[151,37],[152,38],[154,39],[153,40],[155,41],[156,42],[157,43],[158,44],[159,45],[160,46],[161,47],[162,48],[163,49],[164,50],[165,51],[166,52],[167,53],[78,8],[79,8],[80,8],[118,54],[168,55],[169,56],[49,8],[50,8],[10,8],[9,8],[2,8],[11,8],[12,8],[13,8],[14,8],[15,8],[16,8],[17,8],[18,8],[3,8],[19,8],[20,8],[4,8],[21,8],[25,8],[22,8],[23,8],[24,8],[26,8],[27,8],[28,8],[5,8],[29,8],[30,8],[31,8],[32,8],[6,8],[36,8],[33,8],[34,8],[35,8],[37,8],[7,8],[38,8],[43,8],[44,8],[39,8],[40,8],[41,8],[42,8],[8,8],[48,8],[45,8],[46,8],[47,8],[1,8],[59,57],[60,58],[68,59],[61,58],[62,58],[69,8],[63,60],[57,8],[64,61],[58,58],[65,61],[66,58],[67,61],[96,62],[106,63],[95,62],[116,64],[87,65],[86,8],[115,66],[109,67],[114,65],[89,68],[103,69],[88,70],[112,71],[84,72],[83,66],[113,73],[85,74],[90,63],[91,8],[94,63],[81,8],[117,75],[107,76],[98,77],[99,78],[101,79],[97,80],[100,81],[110,66],[92,82],[93,83],[102,84],[82,8],[105,76],[104,63],[108,8],[111,85],[51,8],[53,86],[52,8],[54,86],[55,86],[56,8],[70,87]],"affectedFilesPendingEmit":[[51,17],[53,17],[52,17],[54,17],[55,17],[56,17],[70,17]],"emitSignatures":[51,52,53,54,55,56,70]}
|
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,12 @@
|
|
|
2
2
|
|
|
3
3
|
## Unreleased
|
|
4
4
|
|
|
5
|
+
## 0.13.1-next.0 (2026-05-13)
|
|
6
|
+
|
|
7
|
+
### Bug Fixes
|
|
8
|
+
|
|
9
|
+
- Register generated CSS module styles with `@wordpress/style-runtime` so they can be injected into registered documents, such as editor iframes ([#77965](https://github.com/WordPress/gutenberg/pull/77965)).
|
|
10
|
+
|
|
5
11
|
## 0.13.0 (2026-04-29)
|
|
6
12
|
|
|
7
13
|
### Bug Fixes
|
package/README.md
CHANGED
|
@@ -52,6 +52,13 @@ or via npm script:
|
|
|
52
52
|
}
|
|
53
53
|
```
|
|
54
54
|
|
|
55
|
+
### Testing Generated Styles
|
|
56
|
+
|
|
57
|
+
Generated CSS module output skips automatic style injection when `NODE_ENV` is
|
|
58
|
+
`test`. Node-based DOM implementations such as jsdom do not reliably support
|
|
59
|
+
modern CSS features, so tests that need actual styles in the DOM should
|
|
60
|
+
run in a browser environment.
|
|
61
|
+
|
|
55
62
|
## Package Configuration
|
|
56
63
|
|
|
57
64
|
Configure your `package.json` with the following optional fields:
|
|
@@ -526,6 +533,143 @@ The build system generates:
|
|
|
526
533
|
|
|
527
534
|
The boot package in Gutenberg will automatically use these routes and make them available.
|
|
528
535
|
|
|
536
|
+
## Widgets (Experimental)
|
|
537
|
+
|
|
538
|
+
> [!NOTE]
|
|
539
|
+
> Widgets are still experimental. “Experimental” means this is an early implementation subject to drastic and breaking changes.
|
|
540
|
+
|
|
541
|
+
Widgets provide a file-based discovery system for building self-contained UI components that are registered as WordPress script modules. Each widget lives in its own directory under `widgets/` at the repository root.
|
|
542
|
+
|
|
543
|
+
### Structure
|
|
544
|
+
|
|
545
|
+
```
|
|
546
|
+
widgets/
|
|
547
|
+
hello-world/
|
|
548
|
+
widget.json # Static discovery metadata (required)
|
|
549
|
+
widget.ts # Runtime schema entry point (optional)
|
|
550
|
+
render.tsx # UI component entry point (optional)
|
|
551
|
+
render.scss # Optional styles (bundled inline when imported from render.tsx)
|
|
552
|
+
```
|
|
553
|
+
|
|
554
|
+
### Why two entries?
|
|
555
|
+
|
|
556
|
+
Widgets use a dual-entry pattern, similar in spirit to how blocks split metadata between `block.json` and `edit.js`:
|
|
557
|
+
|
|
558
|
+
| Concern | Lives in | Reason |
|
|
559
|
+
|---|---|---|
|
|
560
|
+
| Identity (`name`) | both (must match) | server needs it to register; client uses it to resolve the runtime entry |
|
|
561
|
+
| Static metadata (`title`, `description`, `category`) | `widget.json` | plain JSON the host can read without a JS runtime |
|
|
562
|
+
| Translated title / labels (`__()`) | `widget.ts` | i18n calls need a JS runtime; JSON can only carry static strings |
|
|
563
|
+
| Attribute schema (types, options) | `widget.ts` | needs TypeScript coupling with `render` props; may include translated `elements`/labels |
|
|
564
|
+
| `example` | `widget.ts` | co-located with the attribute schema it shapes |
|
|
565
|
+
|
|
566
|
+
Rule of thumb: anything expressible as plain JSON goes in `widget.json`. Anything that needs types, i18n, or runtime logic goes in `widget.ts`. The generated `build/widgets/registry.php` currently exposes only `name`, `dir_name`, and which entry files exist; forwarding the rest of `widget.json` to PHP is a follow-up.
|
|
567
|
+
|
|
568
|
+
### `widget.json` — static discovery metadata
|
|
569
|
+
|
|
570
|
+
```json
|
|
571
|
+
{
|
|
572
|
+
"name": "my-plugin/hello-world",
|
|
573
|
+
"title": "Hello World",
|
|
574
|
+
"description": "A simple example widget.",
|
|
575
|
+
"category": "demo"
|
|
576
|
+
}
|
|
577
|
+
```
|
|
578
|
+
|
|
579
|
+
**Fields:**
|
|
580
|
+
- **`name`** (required): Namespaced identifier (e.g., `"my-plugin/hello-world"`)
|
|
581
|
+
- **`title`** (optional): Human-readable title
|
|
582
|
+
- **`description`** (optional): Short description for listings
|
|
583
|
+
- **`category`** (optional): Grouping category for filtering
|
|
584
|
+
|
|
585
|
+
### `widget.ts` — runtime schema
|
|
586
|
+
|
|
587
|
+
Exports a default object that describes the widget's runtime contract: typed attributes, translated labels, example data. The build system injects the `render_module` handle at registration time, so authors don't need to declare it.
|
|
588
|
+
|
|
589
|
+
```ts
|
|
590
|
+
import { __ } from '@wordpress/i18n';
|
|
591
|
+
|
|
592
|
+
type HelloWorldAttributes = {
|
|
593
|
+
greeting: string;
|
|
594
|
+
showDate: boolean;
|
|
595
|
+
};
|
|
596
|
+
|
|
597
|
+
const widget = {
|
|
598
|
+
name: 'my-plugin/hello-world',
|
|
599
|
+
title: __( 'Hello World', 'my-plugin' ),
|
|
600
|
+
attributes: [
|
|
601
|
+
{
|
|
602
|
+
id: 'greeting',
|
|
603
|
+
type: 'text',
|
|
604
|
+
label: __( 'Greeting', 'my-plugin' ),
|
|
605
|
+
},
|
|
606
|
+
{
|
|
607
|
+
id: 'showDate',
|
|
608
|
+
type: 'boolean',
|
|
609
|
+
label: __( 'Show current date', 'my-plugin' ),
|
|
610
|
+
},
|
|
611
|
+
],
|
|
612
|
+
example: {
|
|
613
|
+
greeting: 'World',
|
|
614
|
+
showDate: true,
|
|
615
|
+
},
|
|
616
|
+
};
|
|
617
|
+
|
|
618
|
+
export default widget;
|
|
619
|
+
```
|
|
620
|
+
|
|
621
|
+
The same `HelloWorldAttributes` type is consumed by `render.tsx`, giving the author a single source of truth for the data contract.
|
|
622
|
+
|
|
623
|
+
### `render.tsx` — UI component
|
|
624
|
+
|
|
625
|
+
The render entry receives `attributes` matching the schema declared in `widget.ts`. It is bundled with CSS support (import `.scss` / `.css` directly).
|
|
626
|
+
|
|
627
|
+
```tsx
|
|
628
|
+
interface HelloWorldRenderProps {
|
|
629
|
+
attributes: {
|
|
630
|
+
greeting?: string;
|
|
631
|
+
showDate?: boolean;
|
|
632
|
+
};
|
|
633
|
+
}
|
|
634
|
+
|
|
635
|
+
export default function HelloWorld( { attributes }: HelloWorldRenderProps ) {
|
|
636
|
+
return (
|
|
637
|
+
<div>
|
|
638
|
+
Hello, { attributes.greeting ?? 'World' }!
|
|
639
|
+
{ attributes.showDate && <time>{ new Date().toLocaleDateString() }</time> }
|
|
640
|
+
</div>
|
|
641
|
+
);
|
|
642
|
+
}
|
|
643
|
+
```
|
|
644
|
+
|
|
645
|
+
All non-JSON entries are optional. The build system checks for files with extensions in priority order: `.tsx`, `.ts`, `.jsx`, `.js`, `.mjs`.
|
|
646
|
+
|
|
647
|
+
### Build Output
|
|
648
|
+
|
|
649
|
+
The build system generates:
|
|
650
|
+
|
|
651
|
+
- `build/widgets/{widget-name}/render.min.js` + `render.js` — Bundled UI component (ESM)
|
|
652
|
+
- `build/widgets/{widget-name}/render.min.asset.php` — Asset metadata for render module
|
|
653
|
+
- `build/widgets/{widget-name}/widget.min.js` + `widget.js` — Bundled metadata (ESM)
|
|
654
|
+
- `build/widgets/{widget-name}/widget.min.asset.php` — Asset metadata for widget module
|
|
655
|
+
- `build/widgets/registry.php` — Widget registry data
|
|
656
|
+
- `build/widgets.php` — Script module registration logic
|
|
657
|
+
|
|
658
|
+
### PHP Registration
|
|
659
|
+
|
|
660
|
+
The generated `widgets.php` registers each widget's entries as script modules via `wp_register_script_module()`. Module handles follow the pattern:
|
|
661
|
+
|
|
662
|
+
```
|
|
663
|
+
{handlePrefix}/widgets/{widget-dir-name}/render
|
|
664
|
+
{handlePrefix}/widgets/{widget-dir-name}/widget
|
|
665
|
+
```
|
|
666
|
+
|
|
667
|
+
Registration is hooked into the `init` action. The `SCRIPT_DEBUG` constant controls whether minified (`.min.js`) or non-minified (`.js`) files are loaded.
|
|
668
|
+
|
|
669
|
+
### Watch Mode
|
|
670
|
+
|
|
671
|
+
In development (`wp-build --watch`), widget source files are watched for changes. When a file inside `widgets/{name}/` changes, only that widget is rebuilt.
|
|
672
|
+
|
|
529
673
|
## Contributing to this package
|
|
530
674
|
|
|
531
675
|
This is an individual package that's part of the Gutenberg project. The project is organized as a monorepo. It's made up of multiple self-contained software packages, each with a specific purpose.
|
package/lib/build.mjs
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
import { readFile, writeFile, copyFile, mkdir, unlink } from 'fs/promises';
|
|
7
7
|
import path from 'path';
|
|
8
8
|
import { createHash } from 'node:crypto';
|
|
9
|
+
import { createRequire as createNodeRequire } from 'node:module';
|
|
9
10
|
import { parseArgs } from 'node:util';
|
|
10
11
|
import esbuild from 'esbuild';
|
|
11
12
|
import glob from 'fast-glob';
|
|
@@ -62,6 +63,11 @@ import {
|
|
|
62
63
|
getRouteMetadata,
|
|
63
64
|
generateContentEntryPoint,
|
|
64
65
|
} from './route-utils.mjs';
|
|
66
|
+
import {
|
|
67
|
+
getAllWidgets,
|
|
68
|
+
getWidgetMetadata,
|
|
69
|
+
getWidgetFiles,
|
|
70
|
+
} from './widget-utils.mjs';
|
|
65
71
|
import {
|
|
66
72
|
generateWorkerPlaceholder,
|
|
67
73
|
buildWorkers,
|
|
@@ -156,6 +162,33 @@ const wordpressExternalsPlugin = createWordpressExternalsPlugin(
|
|
|
156
162
|
HANDLE_PREFIX
|
|
157
163
|
);
|
|
158
164
|
|
|
165
|
+
const styleRuntimeRequire = createNodeRequire( import.meta.url );
|
|
166
|
+
const STYLE_RUNTIME_PACKAGE_NAME = '@wordpress/style-runtime';
|
|
167
|
+
// Use the source entry instead of the package export so wp-build can bootstrap
|
|
168
|
+
// from a clean checkout before style-runtime has generated build output.
|
|
169
|
+
const STYLE_RUNTIME_ENTRY = path.join(
|
|
170
|
+
path.dirname(
|
|
171
|
+
styleRuntimeRequire.resolve(
|
|
172
|
+
`${ STYLE_RUNTIME_PACKAGE_NAME }/package.json`
|
|
173
|
+
)
|
|
174
|
+
),
|
|
175
|
+
'src/index.ts'
|
|
176
|
+
);
|
|
177
|
+
|
|
178
|
+
// CSS module output generated by this package imports the style runtime. Resolve
|
|
179
|
+
// it from `@wordpress/build` so consumers don't need to expose transitive deps.
|
|
180
|
+
function styleRuntimeAliasPlugin() {
|
|
181
|
+
return {
|
|
182
|
+
name: 'style-runtime-alias',
|
|
183
|
+
setup( build ) {
|
|
184
|
+
build.onResolve(
|
|
185
|
+
{ filter: /^@wordpress\/style-runtime$/ },
|
|
186
|
+
() => ( { path: STYLE_RUNTIME_ENTRY } )
|
|
187
|
+
);
|
|
188
|
+
},
|
|
189
|
+
};
|
|
190
|
+
}
|
|
191
|
+
|
|
159
192
|
/**
|
|
160
193
|
* Get SASS options for the given working directory.
|
|
161
194
|
*
|
|
@@ -215,7 +248,15 @@ function compileInlineStyle( { cssModules = false, minify = true } = {} ) {
|
|
|
215
248
|
.digest( 'hex' )
|
|
216
249
|
.slice( 0, 10 );
|
|
217
250
|
|
|
218
|
-
|
|
251
|
+
// Skip automatic style injection in Node-based test environments, where DOM
|
|
252
|
+
// implementations do not reliably support modern CSS features like @layer.
|
|
253
|
+
let cssModule = cssModules
|
|
254
|
+
? `import { registerStyle } from '@wordpress/style-runtime';
|
|
255
|
+
if (typeof process === 'undefined' || process.env.NODE_ENV !== 'test') {
|
|
256
|
+
registerStyle("${ hash }", ${ JSON.stringify( css ) });
|
|
257
|
+
}
|
|
258
|
+
`
|
|
259
|
+
: `if (typeof document !== 'undefined' && process.env.NODE_ENV !== 'test' && !document.head.querySelector("style[data-wp-hash='${ hash }']")) {
|
|
219
260
|
const style = document.createElement("style");
|
|
220
261
|
style.setAttribute("data-wp-hash", "${ hash }");
|
|
221
262
|
style.appendChild(document.createTextNode(${ JSON.stringify( css ) }));
|
|
@@ -246,6 +287,7 @@ function inlineStyle( contents ) {
|
|
|
246
287
|
function createStyleBundlingPlugins( workingDir ) {
|
|
247
288
|
const sassOptions = getSassOptions( workingDir );
|
|
248
289
|
return [
|
|
290
|
+
styleRuntimeAliasPlugin(),
|
|
249
291
|
// Handle CSS modules (.module.css and .module.scss)
|
|
250
292
|
sassPlugin( {
|
|
251
293
|
embedded: true,
|
|
@@ -529,7 +571,10 @@ async function bundlePackage( packageName, options = {} ) {
|
|
|
529
571
|
};
|
|
530
572
|
}
|
|
531
573
|
|
|
532
|
-
const baseBundlePlugins = [
|
|
574
|
+
const baseBundlePlugins = [
|
|
575
|
+
momentTimezoneAliasPlugin(),
|
|
576
|
+
styleRuntimeAliasPlugin(),
|
|
577
|
+
];
|
|
533
578
|
|
|
534
579
|
builds.push(
|
|
535
580
|
esbuild.build( {
|
|
@@ -616,6 +661,7 @@ async function bundlePackage( packageName, options = {} ) {
|
|
|
616
661
|
minify: true,
|
|
617
662
|
define: getDefine( false ),
|
|
618
663
|
plugins: [
|
|
664
|
+
styleRuntimeAliasPlugin(),
|
|
619
665
|
wordpressExternalsPlugin(
|
|
620
666
|
`${ baseFileName }.min`,
|
|
621
667
|
'esm',
|
|
@@ -642,6 +688,7 @@ async function bundlePackage( packageName, options = {} ) {
|
|
|
642
688
|
minify: false,
|
|
643
689
|
define: getDefine( true ),
|
|
644
690
|
plugins: [
|
|
691
|
+
styleRuntimeAliasPlugin(),
|
|
645
692
|
wordpressExternalsPlugin(
|
|
646
693
|
`${ baseFileName }.min`,
|
|
647
694
|
'esm',
|
|
@@ -1194,11 +1241,19 @@ async function generatePagesPhp( pageData, replacements ) {
|
|
|
1194
1241
|
await Promise.all( pageGenerationPromises );
|
|
1195
1242
|
|
|
1196
1243
|
// Generate pages.php loader
|
|
1197
|
-
const
|
|
1198
|
-
.
|
|
1199
|
-
|
|
1200
|
-
|
|
1201
|
-
|
|
1244
|
+
const pageFiles = pageData.flatMap( ( page ) => [
|
|
1245
|
+
`\t__DIR__ . '/pages/${ page.slug }/page.php'`,
|
|
1246
|
+
`\t__DIR__ . '/pages/${ page.slug }/page-wp-admin.php'`,
|
|
1247
|
+
] );
|
|
1248
|
+
const pageIncludes = [
|
|
1249
|
+
'foreach ( [',
|
|
1250
|
+
pageFiles.join( ',\n' ) + ',',
|
|
1251
|
+
'] as $file ) {',
|
|
1252
|
+
'\tif ( file_exists( $file ) ) {',
|
|
1253
|
+
'\t\trequire_once $file;',
|
|
1254
|
+
'\t}',
|
|
1255
|
+
'}',
|
|
1256
|
+
].join( '\n' );
|
|
1202
1257
|
|
|
1203
1258
|
await generatePhpFromTemplate(
|
|
1204
1259
|
'pages.php.template',
|
|
@@ -1330,8 +1385,10 @@ async function transpilePackage( packageName ) {
|
|
|
1330
1385
|
dsTokenFallbacksJs,
|
|
1331
1386
|
needsEmotionPlugin && emotionPlugin,
|
|
1332
1387
|
wasmInlinePlugin,
|
|
1333
|
-
|
|
1388
|
+
// CSS modules import @wordpress/style-runtime in generated JS. Resolve
|
|
1389
|
+
// that alias before externalizing imports so the runtime is bundled.
|
|
1334
1390
|
...createStyleBundlingPlugins( packageDir ),
|
|
1391
|
+
externalizeAllExceptCssPlugin,
|
|
1335
1392
|
].filter( Boolean );
|
|
1336
1393
|
|
|
1337
1394
|
if ( packageJson.main ) {
|
|
@@ -1608,6 +1665,7 @@ async function buildRoute( routeName ) {
|
|
|
1608
1665
|
minify: true,
|
|
1609
1666
|
define: getDefine( false ),
|
|
1610
1667
|
plugins: [
|
|
1668
|
+
styleRuntimeAliasPlugin(),
|
|
1611
1669
|
wordpressExternalsPlugin(
|
|
1612
1670
|
'route.min',
|
|
1613
1671
|
'esm',
|
|
@@ -1625,6 +1683,7 @@ async function buildRoute( routeName ) {
|
|
|
1625
1683
|
minify: false,
|
|
1626
1684
|
define: getDefine( true ),
|
|
1627
1685
|
plugins: [
|
|
1686
|
+
styleRuntimeAliasPlugin(),
|
|
1628
1687
|
wordpressExternalsPlugin(
|
|
1629
1688
|
'route.min',
|
|
1630
1689
|
'esm',
|
|
@@ -1657,13 +1716,13 @@ async function buildRoute( routeName ) {
|
|
|
1657
1716
|
minify: true,
|
|
1658
1717
|
define: getDefine( false ),
|
|
1659
1718
|
plugins: [
|
|
1719
|
+
...createStyleBundlingPlugins( routeDir ),
|
|
1660
1720
|
wordpressExternalsPlugin(
|
|
1661
1721
|
'content.min',
|
|
1662
1722
|
'esm',
|
|
1663
1723
|
[],
|
|
1664
1724
|
true // Generate asset file for minified build
|
|
1665
1725
|
),
|
|
1666
|
-
...createStyleBundlingPlugins( routeDir ),
|
|
1667
1726
|
],
|
|
1668
1727
|
} ),
|
|
1669
1728
|
esbuild.build( {
|
|
@@ -1675,13 +1734,13 @@ async function buildRoute( routeName ) {
|
|
|
1675
1734
|
minify: false,
|
|
1676
1735
|
define: getDefine( true ),
|
|
1677
1736
|
plugins: [
|
|
1737
|
+
...createStyleBundlingPlugins( routeDir ),
|
|
1678
1738
|
wordpressExternalsPlugin(
|
|
1679
1739
|
'content.min',
|
|
1680
1740
|
'esm',
|
|
1681
1741
|
[],
|
|
1682
1742
|
false // Skip asset file for non-minified build
|
|
1683
1743
|
),
|
|
1684
|
-
...createStyleBundlingPlugins( routeDir ),
|
|
1685
1744
|
],
|
|
1686
1745
|
} ),
|
|
1687
1746
|
] );
|
|
@@ -1717,6 +1776,244 @@ async function buildAllRoutes() {
|
|
|
1717
1776
|
);
|
|
1718
1777
|
}
|
|
1719
1778
|
|
|
1779
|
+
/**
|
|
1780
|
+
* Build a single widget's files.
|
|
1781
|
+
*
|
|
1782
|
+
* @param {string} widgetName Widget name.
|
|
1783
|
+
* @return {Promise<number>} Build time in milliseconds.
|
|
1784
|
+
*/
|
|
1785
|
+
async function buildWidget( widgetName ) {
|
|
1786
|
+
const startTime = Date.now();
|
|
1787
|
+
const widgetDir = path.join( ROOT_DIR, 'widgets', widgetName );
|
|
1788
|
+
const outputDir = path.join( BUILD_DIR, 'widgets', widgetName );
|
|
1789
|
+
|
|
1790
|
+
// Ensure output directory exists
|
|
1791
|
+
await mkdir( outputDir, { recursive: true } );
|
|
1792
|
+
|
|
1793
|
+
const files = getWidgetFiles( widgetDir );
|
|
1794
|
+
|
|
1795
|
+
// Build render.js if it exists
|
|
1796
|
+
if ( files.hasRender ) {
|
|
1797
|
+
const renderEntryPoints = await glob( `render.${ SOURCE_EXTENSIONS }`, {
|
|
1798
|
+
cwd: widgetDir,
|
|
1799
|
+
absolute: true,
|
|
1800
|
+
} );
|
|
1801
|
+
|
|
1802
|
+
if ( renderEntryPoints.length > 0 ) {
|
|
1803
|
+
// Build both minified and non-minified versions in parallel
|
|
1804
|
+
await Promise.all( [
|
|
1805
|
+
esbuild.build( {
|
|
1806
|
+
entryPoints: renderEntryPoints,
|
|
1807
|
+
outfile: path.join( outputDir, 'render.min.js' ),
|
|
1808
|
+
bundle: true,
|
|
1809
|
+
format: 'esm',
|
|
1810
|
+
target: browserslistToEsbuild(),
|
|
1811
|
+
minify: true,
|
|
1812
|
+
define: getDefine( false ),
|
|
1813
|
+
plugins: [
|
|
1814
|
+
...createStyleBundlingPlugins( widgetDir ),
|
|
1815
|
+
wordpressExternalsPlugin(
|
|
1816
|
+
'render.min',
|
|
1817
|
+
'esm',
|
|
1818
|
+
[],
|
|
1819
|
+
true // Generate asset file for minified build
|
|
1820
|
+
),
|
|
1821
|
+
],
|
|
1822
|
+
} ),
|
|
1823
|
+
esbuild.build( {
|
|
1824
|
+
entryPoints: renderEntryPoints,
|
|
1825
|
+
outfile: path.join( outputDir, 'render.js' ),
|
|
1826
|
+
bundle: true,
|
|
1827
|
+
format: 'esm',
|
|
1828
|
+
target: browserslistToEsbuild(),
|
|
1829
|
+
minify: false,
|
|
1830
|
+
define: getDefine( true ),
|
|
1831
|
+
plugins: [
|
|
1832
|
+
...createStyleBundlingPlugins( widgetDir ),
|
|
1833
|
+
wordpressExternalsPlugin(
|
|
1834
|
+
'render.min',
|
|
1835
|
+
'esm',
|
|
1836
|
+
[],
|
|
1837
|
+
false // Skip asset file for non-minified build
|
|
1838
|
+
),
|
|
1839
|
+
],
|
|
1840
|
+
} ),
|
|
1841
|
+
] );
|
|
1842
|
+
}
|
|
1843
|
+
}
|
|
1844
|
+
|
|
1845
|
+
// Build widget.js if it exists
|
|
1846
|
+
if ( files.hasWidget ) {
|
|
1847
|
+
const widgetEntryPoints = await glob( `widget.${ SOURCE_EXTENSIONS }`, {
|
|
1848
|
+
cwd: widgetDir,
|
|
1849
|
+
absolute: true,
|
|
1850
|
+
} );
|
|
1851
|
+
|
|
1852
|
+
if ( widgetEntryPoints.length > 0 ) {
|
|
1853
|
+
// Build both minified and non-minified versions in parallel
|
|
1854
|
+
await Promise.all( [
|
|
1855
|
+
esbuild.build( {
|
|
1856
|
+
entryPoints: widgetEntryPoints,
|
|
1857
|
+
outfile: path.join( outputDir, 'widget.min.js' ),
|
|
1858
|
+
bundle: true,
|
|
1859
|
+
format: 'esm',
|
|
1860
|
+
target: browserslistToEsbuild(),
|
|
1861
|
+
minify: true,
|
|
1862
|
+
define: getDefine( false ),
|
|
1863
|
+
plugins: [
|
|
1864
|
+
styleRuntimeAliasPlugin(),
|
|
1865
|
+
wordpressExternalsPlugin(
|
|
1866
|
+
'widget.min',
|
|
1867
|
+
'esm',
|
|
1868
|
+
[],
|
|
1869
|
+
true // Generate asset file for minified build
|
|
1870
|
+
),
|
|
1871
|
+
],
|
|
1872
|
+
} ),
|
|
1873
|
+
esbuild.build( {
|
|
1874
|
+
entryPoints: widgetEntryPoints,
|
|
1875
|
+
outfile: path.join( outputDir, 'widget.js' ),
|
|
1876
|
+
bundle: true,
|
|
1877
|
+
format: 'esm',
|
|
1878
|
+
target: browserslistToEsbuild(),
|
|
1879
|
+
minify: false,
|
|
1880
|
+
define: getDefine( true ),
|
|
1881
|
+
plugins: [
|
|
1882
|
+
styleRuntimeAliasPlugin(),
|
|
1883
|
+
wordpressExternalsPlugin(
|
|
1884
|
+
'widget.min',
|
|
1885
|
+
'esm',
|
|
1886
|
+
[],
|
|
1887
|
+
false // Skip asset file for non-minified build
|
|
1888
|
+
),
|
|
1889
|
+
],
|
|
1890
|
+
} ),
|
|
1891
|
+
] );
|
|
1892
|
+
}
|
|
1893
|
+
}
|
|
1894
|
+
|
|
1895
|
+
return Date.now() - startTime;
|
|
1896
|
+
}
|
|
1897
|
+
|
|
1898
|
+
/**
|
|
1899
|
+
* Build all discovered widgets.
|
|
1900
|
+
*
|
|
1901
|
+
* @return {Promise<void>}
|
|
1902
|
+
*/
|
|
1903
|
+
async function buildAllWidgets() {
|
|
1904
|
+
console.log( '\n🧩 Phase 4: Building widgets...\n' );
|
|
1905
|
+
|
|
1906
|
+
const widgets = getAllWidgets( ROOT_DIR );
|
|
1907
|
+
|
|
1908
|
+
if ( widgets.length === 0 ) {
|
|
1909
|
+
console.log( ' No widgets found, skipping.\n' );
|
|
1910
|
+
return;
|
|
1911
|
+
}
|
|
1912
|
+
|
|
1913
|
+
console.log(
|
|
1914
|
+
' ⚠️ Note: Widgets are still experimental and subject to drastic and breaking changes.\n'
|
|
1915
|
+
);
|
|
1916
|
+
|
|
1917
|
+
await Promise.all(
|
|
1918
|
+
widgets.map( async ( widgetName ) => {
|
|
1919
|
+
const buildTime = await buildWidget( widgetName );
|
|
1920
|
+
console.log(
|
|
1921
|
+
` ✔ Built widget ${ widgetName } (${ buildTime }ms)`
|
|
1922
|
+
);
|
|
1923
|
+
} )
|
|
1924
|
+
);
|
|
1925
|
+
}
|
|
1926
|
+
|
|
1927
|
+
/**
|
|
1928
|
+
* Discover all widgets and collect their registry-facing data.
|
|
1929
|
+
* Widgets without a valid widget.json are skipped.
|
|
1930
|
+
*
|
|
1931
|
+
* @return {Array<{ name: string, dirName: string, hasRender: boolean, hasWidget: boolean }>} Array of widget objects.
|
|
1932
|
+
*/
|
|
1933
|
+
function collectWidgets() {
|
|
1934
|
+
return getAllWidgets( ROOT_DIR ).flatMap( ( widgetName ) => {
|
|
1935
|
+
const metadata = getWidgetMetadata( ROOT_DIR, widgetName );
|
|
1936
|
+
|
|
1937
|
+
// Skip widgets without a valid widget.json.
|
|
1938
|
+
if ( ! metadata ) {
|
|
1939
|
+
return [];
|
|
1940
|
+
}
|
|
1941
|
+
|
|
1942
|
+
const widgetFiles = getWidgetFiles(
|
|
1943
|
+
path.join( ROOT_DIR, 'widgets', widgetName )
|
|
1944
|
+
);
|
|
1945
|
+
|
|
1946
|
+
return [
|
|
1947
|
+
{
|
|
1948
|
+
name: metadata.name,
|
|
1949
|
+
dirName: widgetName,
|
|
1950
|
+
hasRender: widgetFiles.hasRender,
|
|
1951
|
+
hasWidget: widgetFiles.hasWidget,
|
|
1952
|
+
},
|
|
1953
|
+
];
|
|
1954
|
+
} );
|
|
1955
|
+
}
|
|
1956
|
+
|
|
1957
|
+
/**
|
|
1958
|
+
* Generate global widget registry file.
|
|
1959
|
+
* Creates a single registry with all widgets including file availability.
|
|
1960
|
+
*
|
|
1961
|
+
* @param {Array} widgets Array of widget objects.
|
|
1962
|
+
* @param {Record<string, string>} replacements PHP template replacements.
|
|
1963
|
+
*/
|
|
1964
|
+
async function generateWidgetRegistry( widgets, replacements ) {
|
|
1965
|
+
if ( widgets.length === 0 ) {
|
|
1966
|
+
// No widgets to register, skip generating widgets registry
|
|
1967
|
+
return;
|
|
1968
|
+
}
|
|
1969
|
+
|
|
1970
|
+
// Generate PHP array entries with file availability.
|
|
1971
|
+
// Sort by dirName to keep registry output deterministic across platforms.
|
|
1972
|
+
const widgetEntries = [ ...widgets ]
|
|
1973
|
+
.sort( ( a, b ) => a.dirName.localeCompare( b.dirName ) )
|
|
1974
|
+
.map( ( widget ) => {
|
|
1975
|
+
const hasRenderStr = widget.hasRender ? 'true' : 'false';
|
|
1976
|
+
const hasWidgetStr = widget.hasWidget ? 'true' : 'false';
|
|
1977
|
+
return `\tarray(
|
|
1978
|
+
'name' => '${ widget.name }',
|
|
1979
|
+
'dir_name' => '${ widget.dirName }',
|
|
1980
|
+
'has_render' => ${ hasRenderStr },
|
|
1981
|
+
'has_widget' => ${ hasWidgetStr },
|
|
1982
|
+
)`;
|
|
1983
|
+
} )
|
|
1984
|
+
.join( ',\n' );
|
|
1985
|
+
|
|
1986
|
+
// Generate single global registry at build/widgets/registry.php
|
|
1987
|
+
await generatePhpFromTemplate(
|
|
1988
|
+
'widget-registry.php.template',
|
|
1989
|
+
path.join( BUILD_DIR, 'widgets', 'registry.php' ),
|
|
1990
|
+
{ ...replacements, '{{WIDGETS}}': widgetEntries }
|
|
1991
|
+
);
|
|
1992
|
+
}
|
|
1993
|
+
|
|
1994
|
+
/**
|
|
1995
|
+
* Generate widgets.php file with widget registration logic.
|
|
1996
|
+
* Uses registry pattern with loop-based registration on the init hook.
|
|
1997
|
+
*
|
|
1998
|
+
* @param {Array} widgets Array of widget objects.
|
|
1999
|
+
* @param {Record<string, string>} replacements PHP template replacements.
|
|
2000
|
+
*/
|
|
2001
|
+
async function generateWidgetsPhp( widgets, replacements ) {
|
|
2002
|
+
if ( widgets.length === 0 ) {
|
|
2003
|
+
// No widgets to register, skip generating widgets.php
|
|
2004
|
+
return;
|
|
2005
|
+
}
|
|
2006
|
+
|
|
2007
|
+
await generatePhpFromTemplate(
|
|
2008
|
+
'widget-registration.php.template',
|
|
2009
|
+
path.join( BUILD_DIR, 'widgets.php' ),
|
|
2010
|
+
{
|
|
2011
|
+
...replacements,
|
|
2012
|
+
'{{HANDLE_PREFIX}}': HANDLE_PREFIX,
|
|
2013
|
+
}
|
|
2014
|
+
);
|
|
2015
|
+
}
|
|
2016
|
+
|
|
1720
2017
|
/**
|
|
1721
2018
|
* Main build function.
|
|
1722
2019
|
*
|
|
@@ -1786,6 +2083,12 @@ async function buildAll( baseUrlExpression ) {
|
|
|
1786
2083
|
// Build routes
|
|
1787
2084
|
await buildAllRoutes();
|
|
1788
2085
|
|
|
2086
|
+
// Build widgets
|
|
2087
|
+
await buildAllWidgets();
|
|
2088
|
+
|
|
2089
|
+
// Collect widget data for PHP generation
|
|
2090
|
+
const widgets = collectWidgets();
|
|
2091
|
+
|
|
1789
2092
|
// Collect route and page data for PHP generation
|
|
1790
2093
|
// Use flatMap to expand routes with multiple pages into separate entries
|
|
1791
2094
|
const routes = getAllRoutes( ROOT_DIR ).flatMap( ( routeName ) => {
|
|
@@ -1858,6 +2161,8 @@ async function buildAll( baseUrlExpression ) {
|
|
|
1858
2161
|
generateConstantsPhp( phpReplacements ),
|
|
1859
2162
|
generateRoutesRegistry( activeRoutes, phpReplacements ),
|
|
1860
2163
|
generateRoutesPhp( activeRoutes, phpReplacements ),
|
|
2164
|
+
generateWidgetRegistry( widgets, phpReplacements ),
|
|
2165
|
+
generateWidgetsPhp( widgets, phpReplacements ),
|
|
1861
2166
|
generatePagesPhp( pageData, phpReplacements ),
|
|
1862
2167
|
] );
|
|
1863
2168
|
console.log( ' ✔ Generated build/build.php' );
|
|
@@ -1869,6 +2174,10 @@ async function buildAll( baseUrlExpression ) {
|
|
|
1869
2174
|
console.log( ' ✔ Generated build/styles/registry.php' );
|
|
1870
2175
|
console.log( ' ✔ Generated build/constants.php' );
|
|
1871
2176
|
console.log( ' ✔ Generated build/routes.php' );
|
|
2177
|
+
if ( widgets.length > 0 ) {
|
|
2178
|
+
console.log( ' ✔ Generated build/widgets.php' );
|
|
2179
|
+
console.log( ' ✔ Generated build/widgets/registry.php' );
|
|
2180
|
+
}
|
|
1872
2181
|
if ( pageData.length > 0 ) {
|
|
1873
2182
|
console.log( ' ✔ Generated build/pages.php' );
|
|
1874
2183
|
for ( const page of pageData ) {
|
|
@@ -1907,8 +2216,27 @@ async function watchMode() {
|
|
|
1907
2216
|
fullToPackageJson.set( packageJson.name, packageJson );
|
|
1908
2217
|
}
|
|
1909
2218
|
|
|
1910
|
-
// Get all routes for dependency tracking
|
|
2219
|
+
// Get all routes and widgets for dependency tracking
|
|
1911
2220
|
const allRoutes = getAllRoutes( ROOT_DIR );
|
|
2221
|
+
const allWidgetDirs = getAllWidgets( ROOT_DIR );
|
|
2222
|
+
|
|
2223
|
+
/**
|
|
2224
|
+
* Rebuild a widget.
|
|
2225
|
+
*
|
|
2226
|
+
* @param {string} widgetName Widget to rebuild.
|
|
2227
|
+
*/
|
|
2228
|
+
async function rebuildWidget( widgetName ) {
|
|
2229
|
+
try {
|
|
2230
|
+
const startTime = Date.now();
|
|
2231
|
+
await buildWidget( widgetName );
|
|
2232
|
+
const buildTime = Date.now() - startTime;
|
|
2233
|
+
console.log( `✅ widgets/${ widgetName } (${ buildTime }ms)` );
|
|
2234
|
+
} catch ( error ) {
|
|
2235
|
+
console.log(
|
|
2236
|
+
`❌ widgets/${ widgetName } - Error: ${ error.message }`
|
|
2237
|
+
);
|
|
2238
|
+
}
|
|
2239
|
+
}
|
|
1912
2240
|
|
|
1913
2241
|
/**
|
|
1914
2242
|
* Rebuild a package and any affected scripts/modules.
|
|
@@ -2007,6 +2335,9 @@ async function watchMode() {
|
|
|
2007
2335
|
if ( item.startsWith( 'route:' ) ) {
|
|
2008
2336
|
const routeName = item.slice( 6 ); // Remove 'route:' prefix
|
|
2009
2337
|
await rebuildRoute( routeName );
|
|
2338
|
+
} else if ( item.startsWith( 'widget:' ) ) {
|
|
2339
|
+
const widgetDirName = item.slice( 7 ); // Remove 'widget:' prefix
|
|
2340
|
+
await rebuildWidget( widgetDirName );
|
|
2010
2341
|
} else {
|
|
2011
2342
|
await rebuildPackage( item );
|
|
2012
2343
|
}
|
|
@@ -2131,6 +2462,60 @@ async function watchMode() {
|
|
|
2131
2462
|
routeWatcher.on( 'add', handleRouteFileChange );
|
|
2132
2463
|
routeWatcher.on( 'unlink', handleRouteFileChange );
|
|
2133
2464
|
}
|
|
2465
|
+
|
|
2466
|
+
// Watch widget files if widgets exist
|
|
2467
|
+
if ( allWidgetDirs.length > 0 ) {
|
|
2468
|
+
const widgetWatchPaths = allWidgetDirs.map( ( widgetDirName ) =>
|
|
2469
|
+
path.join( ROOT_DIR, 'widgets', widgetDirName )
|
|
2470
|
+
);
|
|
2471
|
+
|
|
2472
|
+
const widgetWatcher = chokidar.watch( widgetWatchPaths, {
|
|
2473
|
+
persistent: true,
|
|
2474
|
+
ignoreInitial: true,
|
|
2475
|
+
ignored: ( filepath ) => {
|
|
2476
|
+
if ( filepath.includes( 'node_modules' ) ) {
|
|
2477
|
+
return true;
|
|
2478
|
+
}
|
|
2479
|
+
return false;
|
|
2480
|
+
},
|
|
2481
|
+
useFsEvents: true,
|
|
2482
|
+
depth: 10,
|
|
2483
|
+
awaitWriteFinish: {
|
|
2484
|
+
stabilityThreshold: 100,
|
|
2485
|
+
pollInterval: 50,
|
|
2486
|
+
},
|
|
2487
|
+
} );
|
|
2488
|
+
|
|
2489
|
+
widgetWatcher.on( 'error', ( error ) => {
|
|
2490
|
+
console.error( '❌ Widget watcher error:', error );
|
|
2491
|
+
} );
|
|
2492
|
+
|
|
2493
|
+
const handleWidgetFileChange = async ( filename ) => {
|
|
2494
|
+
// Extract widget dir name from path: widgets/{widgetDirName}/...
|
|
2495
|
+
const widgetMatch = filename.match( /widgets[/\\]([^/\\]+)[/\\]/ );
|
|
2496
|
+
if ( ! widgetMatch ) {
|
|
2497
|
+
return;
|
|
2498
|
+
}
|
|
2499
|
+
|
|
2500
|
+
const widgetDirName = widgetMatch[ 1 ];
|
|
2501
|
+
if ( ! allWidgetDirs.includes( widgetDirName ) ) {
|
|
2502
|
+
return;
|
|
2503
|
+
}
|
|
2504
|
+
|
|
2505
|
+
if ( isRebuilding ) {
|
|
2506
|
+
needsRebuild.add( `widget:${ widgetDirName }` );
|
|
2507
|
+
return;
|
|
2508
|
+
}
|
|
2509
|
+
|
|
2510
|
+
isRebuilding = true;
|
|
2511
|
+
await rebuildWidget( widgetDirName );
|
|
2512
|
+
await processNextRebuild();
|
|
2513
|
+
};
|
|
2514
|
+
|
|
2515
|
+
widgetWatcher.on( 'change', handleWidgetFileChange );
|
|
2516
|
+
widgetWatcher.on( 'add', handleWidgetFileChange );
|
|
2517
|
+
widgetWatcher.on( 'unlink', handleWidgetFileChange );
|
|
2518
|
+
}
|
|
2134
2519
|
}
|
|
2135
2520
|
|
|
2136
2521
|
/**
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* External dependencies
|
|
3
|
+
*/
|
|
4
|
+
import { readdirSync, existsSync, readFileSync } from 'fs';
|
|
5
|
+
import path from 'path';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Get all widget names from the widgets directory.
|
|
9
|
+
*
|
|
10
|
+
* @param {string} rootDir Root directory of the project.
|
|
11
|
+
* @return {string[]} Array of widget directory names.
|
|
12
|
+
*/
|
|
13
|
+
export function getAllWidgets( rootDir ) {
|
|
14
|
+
const widgetsPath = path.join( rootDir, 'widgets' );
|
|
15
|
+
|
|
16
|
+
try {
|
|
17
|
+
return readdirSync( widgetsPath, { withFileTypes: true } )
|
|
18
|
+
.filter( ( dirent ) => dirent.isDirectory() )
|
|
19
|
+
.map( ( dirent ) => dirent.name );
|
|
20
|
+
} catch {
|
|
21
|
+
// Widgets directory doesn't exist, return empty array
|
|
22
|
+
return [];
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* @typedef {Object} WidgetMetadata
|
|
28
|
+
* @property {string} name Widget namespaced identifier.
|
|
29
|
+
* @property {string} [title] Human-readable title.
|
|
30
|
+
* @property {string} [description] Short description.
|
|
31
|
+
* @property {string} [category] Grouping category.
|
|
32
|
+
*/
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Get widget metadata from widget.json.
|
|
36
|
+
*
|
|
37
|
+
* @param {string} rootDir Root directory of the project.
|
|
38
|
+
* @param {string} widgetName Widget name.
|
|
39
|
+
* @return {WidgetMetadata|null} Widget metadata object or null if not found.
|
|
40
|
+
*/
|
|
41
|
+
export function getWidgetMetadata( rootDir, widgetName ) {
|
|
42
|
+
const widgetJsonPath = path.join(
|
|
43
|
+
rootDir,
|
|
44
|
+
'widgets',
|
|
45
|
+
widgetName,
|
|
46
|
+
'widget.json'
|
|
47
|
+
);
|
|
48
|
+
|
|
49
|
+
if ( ! existsSync( widgetJsonPath ) ) {
|
|
50
|
+
return null;
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
let metadata;
|
|
54
|
+
try {
|
|
55
|
+
metadata = /** @type {WidgetMetadata} */ (
|
|
56
|
+
JSON.parse( readFileSync( widgetJsonPath, 'utf8' ) )
|
|
57
|
+
);
|
|
58
|
+
} catch {
|
|
59
|
+
return null;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
if ( ! metadata || ! metadata.name ) {
|
|
63
|
+
return null;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
return metadata;
|
|
67
|
+
}
|
|
68
|
+
|
|
69
|
+
/**
|
|
70
|
+
* Supported source extensions for widget entry files, in priority order.
|
|
71
|
+
* Must stay aligned with SOURCE_EXTENSIONS in build.mjs.
|
|
72
|
+
*/
|
|
73
|
+
const WIDGET_EXTENSIONS = [ 'tsx', 'ts', 'jsx', 'js', 'mjs' ];
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* @typedef {Object} WidgetFiles
|
|
77
|
+
* @property {boolean} hasRender Whether render entry file exists.
|
|
78
|
+
* @property {boolean} hasWidget Whether widget entry file exists.
|
|
79
|
+
*/
|
|
80
|
+
|
|
81
|
+
/**
|
|
82
|
+
* Check if a widget has specific files.
|
|
83
|
+
*
|
|
84
|
+
* @param {string} widgetDirectory Widget directory path.
|
|
85
|
+
* @return {WidgetFiles} Object with boolean flags for widget files.
|
|
86
|
+
*/
|
|
87
|
+
export function getWidgetFiles( widgetDirectory ) {
|
|
88
|
+
const entries = readdirSync( widgetDirectory );
|
|
89
|
+
|
|
90
|
+
/** @param {string} baseName */
|
|
91
|
+
const hasEntry = ( baseName ) =>
|
|
92
|
+
WIDGET_EXTENSIONS.some( ( ext ) =>
|
|
93
|
+
entries.includes( `${ baseName }.${ ext }` )
|
|
94
|
+
);
|
|
95
|
+
|
|
96
|
+
return {
|
|
97
|
+
hasRender: hasEntry( 'render' ),
|
|
98
|
+
hasWidget: hasEntry( 'widget' ),
|
|
99
|
+
};
|
|
100
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@wordpress/build",
|
|
3
|
-
"version": "0.13.0",
|
|
3
|
+
"version": "0.13.2-next.v.202605131006.0+2a3d07cab",
|
|
4
4
|
"description": "Build tool for WordPress plugins.",
|
|
5
5
|
"author": "The WordPress Contributors",
|
|
6
6
|
"license": "GPL-2.0-or-later",
|
|
@@ -36,6 +36,7 @@
|
|
|
36
36
|
},
|
|
37
37
|
"dependencies": {
|
|
38
38
|
"@emotion/babel-plugin": "11.13.5",
|
|
39
|
+
"@wordpress/style-runtime": "^0.1.2-next.v.202605131006.0+2a3d07cab",
|
|
39
40
|
"autoprefixer": "10.4.21",
|
|
40
41
|
"browserslist-to-esbuild": "2.1.1",
|
|
41
42
|
"change-case": "4.1.2",
|
|
@@ -52,7 +53,7 @@
|
|
|
52
53
|
"sass-embedded": "^1.97.2"
|
|
53
54
|
},
|
|
54
55
|
"devDependencies": {
|
|
55
|
-
"@types/node": "^20.
|
|
56
|
+
"@types/node": "^20.19.39"
|
|
56
57
|
},
|
|
57
58
|
"peerDependencies": {
|
|
58
59
|
"@wordpress/boot": ">=0.3.0 <1.0.0",
|
|
@@ -77,5 +78,5 @@
|
|
|
77
78
|
"publishConfig": {
|
|
78
79
|
"access": "public"
|
|
79
80
|
},
|
|
80
|
-
"gitHead": "
|
|
81
|
+
"gitHead": "8804fa29bc78a1d98e5a4d40c3e180ddd907016c"
|
|
81
82
|
}
|
|
@@ -30,6 +30,12 @@ if ( file_exists( $routes_file ) ) {
|
|
|
30
30
|
require_once $routes_file;
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
+
// Load widgets registration.
|
|
34
|
+
$widgets_file = __DIR__ . '/widgets.php';
|
|
35
|
+
if ( file_exists( $widgets_file ) ) {
|
|
36
|
+
require_once $widgets_file;
|
|
37
|
+
}
|
|
38
|
+
|
|
33
39
|
// Load pages registration.
|
|
34
40
|
$pages_file = __DIR__ . '/pages.php';
|
|
35
41
|
if ( file_exists( $pages_file ) ) {
|
|
@@ -21,7 +21,11 @@ function {{PREFIX}}_register_script_modules() {
|
|
|
21
21
|
$already_registered = true;
|
|
22
22
|
|
|
23
23
|
// Load build constants
|
|
24
|
-
$
|
|
24
|
+
$constants_file = __DIR__ . '/constants.php';
|
|
25
|
+
if ( ! file_exists( $constants_file ) ) {
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
$build_constants = require $constants_file;
|
|
25
29
|
$modules_dir = __DIR__ . '/modules';
|
|
26
30
|
$modules_file = $modules_dir . '/registry.php';
|
|
27
31
|
|
|
@@ -196,6 +196,21 @@ function {{PREFIX}}_{{PAGE_SLUG_UNDERSCORE}}_wp_admin_enqueue_scripts( $hook_suf
|
|
|
196
196
|
}
|
|
197
197
|
}
|
|
198
198
|
|
|
199
|
+
/**
|
|
200
|
+
* Filters the boot script-module dependencies for the
|
|
201
|
+
* {{PAGE_SLUG}}-wp-admin page.
|
|
202
|
+
*
|
|
203
|
+
* Surfaces extending this page can append entries to the boot
|
|
204
|
+
* dependency list. Each entry is an array with 'import' (string
|
|
205
|
+
* 'static' or 'dynamic') and 'id' (script-module handle) keys.
|
|
206
|
+
*
|
|
207
|
+
* @param array $boot_dependencies Boot dependencies for the page.
|
|
208
|
+
*/
|
|
209
|
+
$boot_dependencies = apply_filters(
|
|
210
|
+
'{{PAGE_SLUG}}-wp-admin_boot_dependencies',
|
|
211
|
+
$boot_dependencies
|
|
212
|
+
);
|
|
213
|
+
|
|
199
214
|
// Dummy script module to ensure dependencies are loaded
|
|
200
215
|
wp_register_script_module(
|
|
201
216
|
'{{PAGE_SLUG}}-wp-admin',
|
|
@@ -209,6 +209,21 @@ function {{PREFIX}}_{{PAGE_SLUG_UNDERSCORE}}_render_page() {
|
|
|
209
209
|
}
|
|
210
210
|
}
|
|
211
211
|
|
|
212
|
+
/**
|
|
213
|
+
* Filters the boot script-module dependencies for the
|
|
214
|
+
* {{PAGE_SLUG}} page.
|
|
215
|
+
*
|
|
216
|
+
* Surfaces extending this page can append entries to the boot
|
|
217
|
+
* dependency list. Each entry is an array with 'import' (string
|
|
218
|
+
* 'static' or 'dynamic') and 'id' (script-module handle) keys.
|
|
219
|
+
*
|
|
220
|
+
* @param array $boot_dependencies Boot dependencies for the page.
|
|
221
|
+
*/
|
|
222
|
+
$boot_dependencies = apply_filters(
|
|
223
|
+
'{{PAGE_SLUG}}_boot_dependencies',
|
|
224
|
+
$boot_dependencies
|
|
225
|
+
);
|
|
226
|
+
|
|
212
227
|
// Dummy script module to ensure dependencies are loaded
|
|
213
228
|
wp_register_script_module(
|
|
214
229
|
'{{PAGE_SLUG}}',
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
<?php
|
|
2
|
+
/**
|
|
3
|
+
* Widget registration - Auto-generated by build process.
|
|
4
|
+
* Registers all widget script modules discovered from widgets/.
|
|
5
|
+
* Do not edit this file manually.
|
|
6
|
+
*
|
|
7
|
+
* @package {{PREFIX}}
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Register widget script modules.
|
|
12
|
+
*
|
|
13
|
+
* Registers each widget's render and metadata as script modules via
|
|
14
|
+
* wp_register_script_module.
|
|
15
|
+
*
|
|
16
|
+
* Module IDs follow core's route pattern and use the widget directory name:
|
|
17
|
+
* {{HANDLE_PREFIX}}/widgets/{widget-dir-name}/render
|
|
18
|
+
* {{HANDLE_PREFIX}}/widgets/{widget-dir-name}/widget
|
|
19
|
+
*/
|
|
20
|
+
function {{PREFIX}}_register_widget_modules() {
|
|
21
|
+
$widgets = {{PREFIX}}_get_registered_widget_modules();
|
|
22
|
+
if ( empty( $widgets ) ) {
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
$build_constants = require __DIR__ . '/constants.php';
|
|
27
|
+
$extension = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '.js' : '.min.js';
|
|
28
|
+
|
|
29
|
+
foreach ( $widgets as $widget ) {
|
|
30
|
+
$widget_name = $widget['dir_name'];
|
|
31
|
+
|
|
32
|
+
// Register render script module if built.
|
|
33
|
+
if ( ! empty( $widget['render_module'] ) ) {
|
|
34
|
+
$render_asset_path = __DIR__ . "/widgets/{$widget_name}/render.min.asset.php";
|
|
35
|
+
if ( file_exists( $render_asset_path ) ) {
|
|
36
|
+
$render_asset = require $render_asset_path;
|
|
37
|
+
// Deregister first to override any previously registered version
|
|
38
|
+
// (e.g., Core's default modules when running as a plugin).
|
|
39
|
+
wp_deregister_script_module( $widget['render_module'] );
|
|
40
|
+
wp_register_script_module(
|
|
41
|
+
$widget['render_module'],
|
|
42
|
+
$build_constants['build_url'] . 'widgets/' . $widget_name . '/render' . $extension,
|
|
43
|
+
$render_asset['module_dependencies'] ?? array(),
|
|
44
|
+
$render_asset['version'] ?? false
|
|
45
|
+
);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
// Register widget metadata script module if built.
|
|
50
|
+
if ( ! empty( $widget['widget_module'] ) ) {
|
|
51
|
+
$widget_asset_path = __DIR__ . "/widgets/{$widget_name}/widget.min.asset.php";
|
|
52
|
+
if ( file_exists( $widget_asset_path ) ) {
|
|
53
|
+
$widget_asset = require $widget_asset_path;
|
|
54
|
+
// Deregister first to override any previously registered version
|
|
55
|
+
// (e.g., Core's default modules when running as a plugin).
|
|
56
|
+
wp_deregister_script_module( $widget['widget_module'] );
|
|
57
|
+
wp_register_script_module(
|
|
58
|
+
$widget['widget_module'],
|
|
59
|
+
$build_constants['build_url'] . 'widgets/' . $widget_name . '/widget' . $extension,
|
|
60
|
+
$widget_asset['module_dependencies'] ?? array(),
|
|
61
|
+
$widget_asset['version'] ?? false
|
|
62
|
+
);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
// Register immediately if init already fired, otherwise defer.
|
|
69
|
+
if ( did_action( 'init' ) ) {
|
|
70
|
+
{{PREFIX}}_register_widget_modules();
|
|
71
|
+
} else {
|
|
72
|
+
add_action( 'init', '{{PREFIX}}_register_widget_modules' );
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* Returns the widgets discovered by the build pipeline, with their
|
|
77
|
+
* script-module handles resolved.
|
|
78
|
+
*
|
|
79
|
+
* Reads `build/widgets/registry.php` once and memoizes the result for the
|
|
80
|
+
* remainder of the request. Each entry is augmented with `render_module`
|
|
81
|
+
* and `widget_module` (the script-module handles), kept null when the
|
|
82
|
+
* corresponding source file was not present at build time. Consumers
|
|
83
|
+
* should treat the array as read-only; authoring of widget types is
|
|
84
|
+
* build-driven via the `widgets/` folder.
|
|
85
|
+
*
|
|
86
|
+
* @return array<int, array<string, mixed>> List of widgets with resolved
|
|
87
|
+
* module handles.
|
|
88
|
+
*/
|
|
89
|
+
function {{PREFIX}}_get_registered_widget_modules() {
|
|
90
|
+
static $widgets = null;
|
|
91
|
+
|
|
92
|
+
if ( null === $widgets ) {
|
|
93
|
+
$registry_file = __DIR__ . '/widgets/registry.php';
|
|
94
|
+
$raw = file_exists( $registry_file ) ? require $registry_file : array();
|
|
95
|
+
if ( ! is_array( $raw ) ) {
|
|
96
|
+
$raw = array();
|
|
97
|
+
}
|
|
98
|
+
$widgets = array_map(
|
|
99
|
+
static function ( $widget ) {
|
|
100
|
+
$widget['render_module'] = ! empty( $widget['has_render'] )
|
|
101
|
+
? '{{HANDLE_PREFIX}}/widgets/' . $widget['dir_name'] . '/render'
|
|
102
|
+
: null;
|
|
103
|
+
$widget['widget_module'] = ! empty( $widget['has_widget'] )
|
|
104
|
+
? '{{HANDLE_PREFIX}}/widgets/' . $widget['dir_name'] . '/widget'
|
|
105
|
+
: null;
|
|
106
|
+
return $widget;
|
|
107
|
+
},
|
|
108
|
+
$raw
|
|
109
|
+
);
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
return $widgets;
|
|
113
|
+
}
|