From b42ba8e941c634deb6838ab578ec89fcbce9754e Mon Sep 17 00:00:00 2001 From: Owen Buckley Date: Sat, 29 Jun 2024 17:00:07 -0400 Subject: [PATCH 1/2] upgrade greenwood v0.30.0-alpha.4 --- package-lock.json | 209 ++++++++++++++++++-- package.json | 4 +- patches/@greenwood+cli+0.30.0-alpha.2.patch | 194 ------------------ src/{templates => layouts}/app.html | 0 4 files changed, 190 insertions(+), 217 deletions(-) delete mode 100644 patches/@greenwood+cli+0.30.0-alpha.2.patch rename src/{templates => layouts}/app.html (100%) diff --git a/package-lock.json b/package-lock.json index 1904ee89..5ce6f15e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -19,8 +19,8 @@ "@babel/plugin-syntax-import-assertions": "^7.24.1", "@chromatic-com/storybook": "^1.3.1", "@esm-bundle/chai": "^4.3.4-fix.0", - "@greenwood/cli": "^0.30.0-alpha.2", - "@greenwood/plugin-import-raw": "^0.30.0-alpha.2", + "@greenwood/cli": "^0.30.0-alpha.4", + "@greenwood/plugin-import-raw": "^0.30.0-alpha.4", "@ls-lint/ls-lint": "^1.10.0", "@mapbox/rehype-prism": "^0.9.0", "@storybook/addon-essentials": "^8.0.6", @@ -2180,9 +2180,10 @@ "license": "MIT" }, "node_modules/@greenwood/cli": { - "version": "0.30.0-alpha.2", + "version": "0.30.0-alpha.4", + "resolved": "https://registry.npmjs.org/@greenwood/cli/-/cli-0.30.0-alpha.4.tgz", + "integrity": "sha512-NYDoiR9fVz0HsF6JGKyWnYf4FUxj7zLSizXf0xLbyiGoD58MoTJ0COc/Gb2h0KKS2gIkOyPZ3mjMeaAQPtr/Rg==", "dev": true, - "license": "MIT", "dependencies": { "@rollup/plugin-commonjs": "^25.0.0", "@rollup/plugin-node-resolve": "^15.0.0", @@ -2206,7 +2207,7 @@ "remark-rehype": "^7.0.0", "rollup": "^3.29.4", "unified": "^9.2.0", - "wc-compiler": "~0.13.0" + "wc-compiler": "~0.14.0" }, "bin": { "greenwood": "src/index.js" @@ -2216,9 +2217,9 @@ } }, "node_modules/@greenwood/plugin-import-raw": { - "version": "0.30.0-alpha.2", - "resolved": "https://registry.npmjs.org/@greenwood/plugin-import-raw/-/plugin-import-raw-0.30.0-alpha.2.tgz", - "integrity": "sha512-BPM79Y1GcMPnh1jRbFpRZ5aQAXYFsrMMi2TO2I5Js3Lck1ivqbdFrXasZIbnNN0YQwr+8+idH+8WzVumn/MMQw==", + "version": "0.30.0-alpha.4", + "resolved": "https://registry.npmjs.org/@greenwood/plugin-import-raw/-/plugin-import-raw-0.30.0-alpha.4.tgz", + "integrity": "sha512-xwRS+bzn9Y2MyoyDqJuzeMy3vS1I/SYwOTeertmptmPvMzcMMgFagswvORnddWzA0smGBvYsEXqExBIOw5N5BA==", "dev": true, "peerDependencies": { "@greenwood/cli": "^0.4.0" @@ -2499,16 +2500,18 @@ }, "node_modules/@projectevergreen/acorn-jsx-esm": { "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@projectevergreen/acorn-jsx-esm/-/acorn-jsx-esm-0.1.0.tgz", + "integrity": "sha512-ZBSkr0e2M4ylq74dTGHSkWI2dF3Mz8zwBLyzIXZMftecKDADcsCTj7bWltVgtdl8Rh4+bmY1jNWUw7AlSV/r7A==", "dev": true, - "license": "MIT", "peerDependencies": { "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" } }, "node_modules/@projectevergreen/escodegen-esm": { "version": "0.1.0", + "resolved": "https://registry.npmjs.org/@projectevergreen/escodegen-esm/-/escodegen-esm-0.1.0.tgz", + "integrity": "sha512-LM9FFffsXPHiOFt78K3bgF8kO8Fx+qluAPy9jP3H4lvCFE+2nbwQM4cWdOpVik++rHf4pkDA7FxDPWWATyBABg==", "dev": true, - "license": "BSD-2-Clause", "dependencies": { "esprima": "^4.0.1", "estraverse": "^5.2.0", @@ -5294,8 +5297,9 @@ }, "node_modules/acorn-import-attributes": { "version": "1.9.5", + "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", + "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", "dev": true, - "license": "MIT", "peerDependencies": { "acorn": "^8" } @@ -5309,9 +5313,13 @@ } }, "node_modules/acorn-walk": { - "version": "8.3.2", + "version": "8.3.3", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.3.tgz", + "integrity": "sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==", "dev": true, - "license": "MIT", + "dependencies": { + "acorn": "^8.11.0" + }, "engines": { "node": ">=0.4.0" } @@ -5428,6 +5436,12 @@ "node": ">=0.10.0" } }, + "node_modules/any-promise": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz", + "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==", + "dev": true + }, "node_modules/anymatch": { "version": "3.1.3", "dev": true, @@ -11550,9 +11564,10 @@ } }, "node_modules/minipass": { - "version": "7.0.4", + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", + "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", "dev": true, - "license": "ISC", "engines": { "node": ">=16 || 14 >=14.17" } @@ -11629,6 +11644,17 @@ "dev": true, "license": "MIT" }, + "node_modules/mz": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz", + "integrity": "sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==", + "dev": true, + "dependencies": { + "any-promise": "^1.0.0", + "object-assign": "^4.0.1", + "thenify-all": "^1.0.0" + } + }, "node_modules/nanocolors": { "version": "0.2.13", "dev": true, @@ -11894,6 +11920,15 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, "node_modules/object-inspect": { "version": "1.13.1", "dev": true, @@ -12229,6 +12264,12 @@ "node": ">= 14" } }, + "node_modules/package-json-from-dist": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz", + "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==", + "dev": true + }, "node_modules/pako": { "version": "0.2.9", "dev": true, @@ -12472,15 +12513,16 @@ "license": "MIT" }, "node_modules/path-scurry": { - "version": "1.10.2", + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", + "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", "dev": true, - "license": "BlueOak-1.0.0", "dependencies": { "lru-cache": "^10.2.0", "minipass": "^5.0.0 || ^6.0.2 || ^7.0.0" }, "engines": { - "node": ">=16 || 14 >=14.17" + "node": ">=16 || 14 >=14.18" }, "funding": { "url": "https://github.com/sponsors/isaacs" @@ -14632,6 +14674,102 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/sucrase": { + "version": "3.35.0", + "resolved": "https://registry.npmjs.org/sucrase/-/sucrase-3.35.0.tgz", + "integrity": "sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==", + "dev": true, + "dependencies": { + "@jridgewell/gen-mapping": "^0.3.2", + "commander": "^4.0.0", + "glob": "^10.3.10", + "lines-and-columns": "^1.1.6", + "mz": "^2.7.0", + "pirates": "^4.0.1", + "ts-interface-checker": "^0.1.9" + }, + "bin": { + "sucrase": "bin/sucrase", + "sucrase-node": "bin/sucrase-node" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + } + }, + "node_modules/sucrase/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/sucrase/node_modules/commander": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-4.1.1.tgz", + "integrity": "sha512-NOKm8xhkzAjzFx8B2v5OAHT+u5pRQc2UCa2Vq9jYL/31o2wi9mxBA7LIFs3sV5VSC49z6pEhfbMULvShKj26WA==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/sucrase/node_modules/glob": { + "version": "10.4.2", + "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.2.tgz", + "integrity": "sha512-GwMlUF6PkPo3Gk21UxkCohOv0PLcIXVtKyLlpEI28R/cO/4eNOdmLk3CMW1wROV/WR/EsZOWAfBbBOqYvs88/w==", + "dev": true, + "dependencies": { + "foreground-child": "^3.1.0", + "jackspeak": "^3.1.2", + "minimatch": "^9.0.4", + "minipass": "^7.1.2", + "package-json-from-dist": "^1.0.0", + "path-scurry": "^1.11.1" + }, + "bin": { + "glob": "dist/esm/bin.mjs" + }, + "engines": { + "node": ">=16 || 14 >=14.18" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/sucrase/node_modules/jackspeak": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.0.tgz", + "integrity": "sha512-JVYhQnN59LVPFCEcVa2C3CrEKYacvjRfqIQl+h8oi91aLYQVWRYbxjPcv1bUiUy/kLmQaANrYfNMCO3kuEDHfw==", + "dev": true, + "dependencies": { + "@isaacs/cliui": "^8.0.2" + }, + "engines": { + "node": ">=14" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + }, + "optionalDependencies": { + "@pkgjs/parseargs": "^0.11.0" + } + }, + "node_modules/sucrase/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, "node_modules/supports-color": { "version": "5.5.0", "dev": true, @@ -14954,6 +15092,27 @@ "dev": true, "license": "MIT" }, + "node_modules/thenify": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/thenify/-/thenify-3.3.1.tgz", + "integrity": "sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==", + "dev": true, + "dependencies": { + "any-promise": "^1.0.0" + } + }, + "node_modules/thenify-all": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/thenify-all/-/thenify-all-1.6.0.tgz", + "integrity": "sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==", + "dev": true, + "dependencies": { + "thenify": ">= 3.1.0 < 4" + }, + "engines": { + "node": ">=0.8" + } + }, "node_modules/through": { "version": "2.3.8", "dev": true, @@ -15083,6 +15242,12 @@ "node": ">=6.10" } }, + "node_modules/ts-interface-checker": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz", + "integrity": "sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==", + "dev": true + }, "node_modules/tslib": { "version": "2.6.2", "dev": true, @@ -15707,16 +15872,18 @@ } }, "node_modules/wc-compiler": { - "version": "0.13.0", + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/wc-compiler/-/wc-compiler-0.14.0.tgz", + "integrity": "sha512-5ouvZ2vDfwKTX9mj6IJWaJSF7239VAb+i8gbFqIyDRMuHqP0Bv9sq9oyZTDAqJM3trEiNWwv3VqI0fW4B8LAtg==", "dev": true, - "license": "MIT", "dependencies": { "@projectevergreen/acorn-jsx-esm": "~0.1.0", "@projectevergreen/escodegen-esm": "~0.1.0", "acorn": "^8.7.0", "acorn-import-attributes": "^1.9.5", "acorn-walk": "^8.2.0", - "parse5": "^6.0.1" + "parse5": "^6.0.1", + "sucrase": "^3.35.0" }, "engines": { "node": ">=14" diff --git a/package.json b/package.json index ee6afbc4..84fa25e4 100644 --- a/package.json +++ b/package.json @@ -43,8 +43,8 @@ "@babel/plugin-syntax-import-assertions": "^7.24.1", "@chromatic-com/storybook": "^1.3.1", "@esm-bundle/chai": "^4.3.4-fix.0", - "@greenwood/cli": "^0.30.0-alpha.2", - "@greenwood/plugin-import-raw": "^0.30.0-alpha.2", + "@greenwood/cli": "^0.30.0-alpha.4", + "@greenwood/plugin-import-raw": "^0.30.0-alpha.4", "@ls-lint/ls-lint": "^1.10.0", "@mapbox/rehype-prism": "^0.9.0", "@storybook/addon-essentials": "^8.0.6", diff --git a/patches/@greenwood+cli+0.30.0-alpha.2.patch b/patches/@greenwood+cli+0.30.0-alpha.2.patch deleted file mode 100644 index 8f3f6b49..00000000 --- a/patches/@greenwood+cli+0.30.0-alpha.2.patch +++ /dev/null @@ -1,194 +0,0 @@ -diff --git a/node_modules/@greenwood/cli/src/config/rollup.config.js b/node_modules/@greenwood/cli/src/config/rollup.config.js -index 73ddb24..14d2467 100644 ---- a/node_modules/@greenwood/cli/src/config/rollup.config.js -+++ b/node_modules/@greenwood/cli/src/config/rollup.config.js -@@ -44,6 +44,7 @@ function greenwoodResourceLoader (compilation) { - }; - - // filter first for any bare specifiers -+ // TODO test - if (await checkResourceExists(idUrl)) { - if (await checkResourceExists(idUrl) && extension !== 'js') { - for (const plugin of resourcePlugins) { - if (plugin.shouldResolve && await plugin.shouldResolve(idUrl)) { -@@ -74,6 +75,12 @@ function greenwoodResourceLoader (compilation) { - } - } - -+ for (const plugin of resourcePlugins) { -+ if (plugin.shouldOptimize && await plugin.shouldOptimize(idUrl, response.clone())) { -+ response = await plugin.optimize(idUrl, response.clone()); -+ } -+ } -+ - return await response.text(); - } - } -diff --git a/node_modules/@greenwood/cli/src/lib/resource-utils.js b/node_modules/@greenwood/cli/src/lib/resource-utils.js -index a08cd9c..bd993b5 100644 ---- a/node_modules/@greenwood/cli/src/lib/resource-utils.js -+++ b/node_modules/@greenwood/cli/src/lib/resource-utils.js -@@ -89,10 +89,16 @@ async function checkResourceExists(url) { - // * and a nested path in the template - ../../styles/theme.css - // so will get resolved as `${rootUrl}/styles/theme.css` - async function resolveForRelativeUrl(url, rootUrl) { -+ // console.log('resolveForRelativeUrl', url, rootUrl) - const search = url.search || ''; - let reducedUrl; - -- if (await checkResourceExists(new URL(`.${url.pathname}`, rootUrl))) { -+ // TODO validate we still need this -+ if(!rootUrl) { -+ return url; -+ } -+ -+ if (url.protocol !== 'file:' && await checkResourceExists(new URL(`.${url.pathname}`, rootUrl))) { - return new URL(`.${url.pathname}${search}`, rootUrl); - } - -diff --git a/node_modules/@greenwood/cli/src/lifecycles/serve.js b/node_modules/@greenwood/cli/src/lifecycles/serve.js -index 6201ea8..855c3fd 100644 ---- a/node_modules/@greenwood/cli/src/lifecycles/serve.js -+++ b/node_modules/@greenwood/cli/src/lifecycles/serve.js -@@ -70,7 +70,7 @@ async function getDevServer(compilation) { - const merged = mergeResponse(response.clone(), current.clone()); - - response = merged; -- break; -+ // break; - } - } - -diff --git a/node_modules/@greenwood/cli/src/loader.js b/node_modules/@greenwood/cli/src/loader.js -index 5d347bc..ea11358 100644 ---- a/node_modules/@greenwood/cli/src/loader.js -+++ b/node_modules/@greenwood/cli/src/loader.js -@@ -1,42 +1,63 @@ - import { readAndMergeConfig as initConfig } from './lifecycles/config.js'; -+import { mergeResponse } from './lib/resource-utils.js'; - - const config = await initConfig(); --const resourcePlugins = config.plugins.filter(plugin => plugin.type === 'resource').map(plugin => plugin.provider({ -- context: { -- projectDirectory: new URL(`file://${process.cwd()}`) -- }, -- config: { -- devServer: {} -- }, -- graph: [] --})); -- --async function getCustomLoaderResponse(url, checkOnly = false) { -+const resourcePlugins = config.plugins -+ .filter(plugin => plugin.type === 'resource') -+ .filter(plugin => plugin.name !== 'plugin-node-modules:resource') -+ .filter(plugin => plugin.name !== 'plugin-user-workspace') -+ .map(plugin => plugin.provider({ -+ context: { -+ projectDirectory: new URL(`file://${process.cwd()}/`), -+ scratchDir: new URL(`file://${process.cwd()}/.greenwood/`) -+ }, -+ config: { -+ devServer: {} -+ }, -+ graph: [] -+ })); -+ -+async function getCustomLoaderResponse(initUrl, checkOnly = false) { -+ // console.log('CUSTOM LOADER RESPONSE', { initUrl }) - const headers = { - 'Accept': 'text/javascript', - 'Sec-Fetch-Dest': 'empty' - }; -- const request = new Request(url, { headers }); - const initResponse = new Response(''); -+ let request = new Request(initUrl, { headers }); -+ let url = initUrl; - let response = initResponse.clone(); - let shouldHandle = false; - - for (const plugin of resourcePlugins) { -- if (plugin.shouldServe && await plugin.shouldServe(url, request)) { -+ if (initUrl.protocol === 'file:' && plugin.shouldResolve && await plugin.shouldResolve(initUrl, request)) { - shouldHandle = true; - - if (!checkOnly) { -- response = await plugin.serve(url, request); -+ // request = await plugin.resolve(url, request); -+ url = new URL((await plugin.resolve(initUrl, request)).url); -+ // console.log('checking....', { url }); - } - } - } - -+ for (const plugin of resourcePlugins) { -+ if (plugin.shouldServe && await plugin.shouldServe(initUrl, request)) { -+ shouldHandle = true; -+ -+ if (!checkOnly) { -+ response = mergeResponse(response, await plugin.serve(initUrl, request)); -+ } -+ } -+ } -+ -+ // TODO confirm we need mergeResponse - for (const plugin of resourcePlugins) { - if (plugin.shouldPreIntercept && await plugin.shouldPreIntercept(url, request, response.clone())) { - shouldHandle = true; - - if (!checkOnly) { -- response = await plugin.preIntercept(url, request, response.clone()); -+ response = mergeResponse(response, await plugin.preIntercept(url, request, response.clone())); - } - } - -@@ -44,7 +65,7 @@ async function getCustomLoaderResponse(url, checkOnly = false) { - shouldHandle = true; - - if (!checkOnly) { -- response = await plugin.intercept(url, request, response.clone()); -+ response = mergeResponse(response, await plugin.intercept(url, request, response.clone())); - } - } - } -diff --git a/node_modules/@greenwood/cli/src/plugins/resource/plugin-standard-css.js b/node_modules/@greenwood/cli/src/plugins/resource/plugin-standard-css.js -index 64c1ba0..c0c2189 100644 ---- a/node_modules/@greenwood/cli/src/plugins/resource/plugin-standard-css.js -+++ b/node_modules/@greenwood/cli/src/plugins/resource/plugin-standard-css.js -@@ -88,6 +88,7 @@ function bundleCss(body, url, compilation) { - case 'nth-last-child': - case 'nth-of-type': - case 'nth-last-of-type': -+ case 'where': - optimizedCss += '('; - break; - default: -@@ -96,7 +97,7 @@ function bundleCss(body, url, compilation) { - } - } else if (type === 'Function') { - /* ex: border-left: 3px solid var(--color-secondary); */ -- if (this.declaration && item.prev && item.prev.data.type === 'Identifier') { -+ if (this.declaration && item.prev && (item.prev.data.type !== 'Operator' && item.prev.data.type !== 'Url')) { - optimizedCss += ' '; - } - optimizedCss += `${name}(`; -@@ -197,6 +198,7 @@ function bundleCss(body, url, compilation) { - case 'nth-last-child': - case 'nth-last-of-type': - case 'nth-of-type': -+ case 'where': - optimizedCss += ')'; - break; - default: -@@ -265,10 +267,12 @@ class StandardCssResource extends ResourceInterface { - const { pathname, searchParams } = url; - const ext = pathname.split('.').pop(); - -+ // TODO how to make sure this isn't clashing with other CSS in JS types... - return url.protocol === 'file:' && ext === this.extensions[0] && request.headers.get('Accept')?.indexOf('text/javascript') >= 0 && !searchParams.has('type'); - } - - async intercept(url, request, response) { -+ // console.log('INTERCEPT', { url }); - const contents = (await response.text()).replace(/\r?\n|\r/g, ' ').replace(/\\/g, '\\\\'); - const body = `const sheet = new CSSStyleSheet();sheet.replaceSync(\`${contents}\`);export default sheet;`; - diff --git a/src/templates/app.html b/src/layouts/app.html similarity index 100% rename from src/templates/app.html rename to src/layouts/app.html From defda9ddd48c49e892c27c63a65e70e801064034 Mon Sep 17 00:00:00 2001 From: Owen Buckley Date: Thu, 11 Jul 2024 11:16:41 -0400 Subject: [PATCH 2/2] update wcc patch --- patches/{wc-compiler+0.13.0.patch => wc-compiler+0.14.0.patch} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename patches/{wc-compiler+0.13.0.patch => wc-compiler+0.14.0.patch} (100%) diff --git a/patches/wc-compiler+0.13.0.patch b/patches/wc-compiler+0.14.0.patch similarity index 100% rename from patches/wc-compiler+0.13.0.patch rename to patches/wc-compiler+0.14.0.patch