diff --git a/.node-version b/.node-version index 3c032078a4a..a45fd52cc58 100644 --- a/.node-version +++ b/.node-version @@ -1 +1 @@ -18 +24 diff --git a/.nvmrc b/.nvmrc index 2bd5a0a98a3..a45fd52cc58 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -22 +24 diff --git a/package.json b/package.json index 4f564189cba..dfb21f5a216 100644 --- a/package.json +++ b/package.json @@ -153,7 +153,6 @@ "terser": "5.44.0", "tmp": "0.2.5", "tree-kill": "1.2.2", - "tsx": "4.20.6", "typescript": "5.9.3", "typescript-eslint": "8.45.0", "vfile": "6.0.3", @@ -175,37 +174,37 @@ "packageManager": "pnpm@10.17.1+sha512.17c560fca4867ae9473a3899ad84a88334914f379be46d455cbf92e5cf4b39d34985d452d2583baf19967fa76cb5c17bc9e245529d0b98745721aa7200ecaf7a", "private": true, "scripts": { - "api.update": "tsx --require ./scripts/runBefore.ts scripts/index.ts --tsc --api --dev", - "build": "tsx --require ./scripts/runBefore.ts scripts/index.ts", + "api.update": "node --require ./scripts/runBefore.ts scripts/index.ts --tsc --api --dev", + "build": "node --require ./scripts/runBefore.ts scripts/index.ts", "build.changelog-formatter": "tsc .changeset/changelog-github-custom.ts && mv .changeset/changelog-github-custom.js .changeset/changelog-github-custom.cjs", - "build.clean": "tsx ./scripts/build-clean.ts", - "build.cli": "tsx --require ./scripts/runBefore.ts scripts/index.ts --cli --dev", - "build.cli.prod": "tsx --require ./scripts/runBefore.ts scripts/index.ts --cli", - "build.core": "tsx --require ./scripts/runBefore.ts scripts/index.ts --tsc --qwik --insights --qwikrouter --api --platform-binding", - "build.eslint": "tsx --require ./scripts/runBefore.ts scripts/index.ts --eslint", - "build.full": "tsx --require ./scripts/runBefore.ts scripts/index.ts --tsc --tsc-docs --qwik --insights --supabaseauthhelpers --api --eslint --qwikrouter --qwikworker --qwikreact --cli --platform-binding --wasm", - "build.local": "tsx --require ./scripts/runBefore.ts scripts/index.ts --tsc --tsc-docs --qwik --insights --supabaseauthhelpers --api --eslint --qwikrouter --qwikworker --qwikreact --cli --platform-binding-wasm-copy", - "build.only_javascript": "tsx --require ./scripts/runBefore.ts scripts/index.ts --tsc --qwik --api", + "build.clean": "node ./scripts/build-clean.ts", + "build.cli": "node --require ./scripts/runBefore.ts scripts/index.ts --cli --dev", + "build.cli.prod": "node --require ./scripts/runBefore.ts scripts/index.ts --cli", + "build.core": "node --require ./scripts/runBefore.ts scripts/index.ts --tsc --qwik --insights --qwikrouter --api --platform-binding", + "build.eslint": "node --require ./scripts/runBefore.ts scripts/index.ts --eslint", + "build.full": "node --require ./scripts/runBefore.ts scripts/index.ts --tsc --tsc-docs --qwik --insights --supabaseauthhelpers --api --eslint --qwikrouter --qwikworker --qwikreact --cli --platform-binding --wasm", + "build.local": "node --require ./scripts/runBefore.ts scripts/index.ts --tsc --tsc-docs --qwik --insights --supabaseauthhelpers --api --eslint --qwikrouter --qwikworker --qwikreact --cli --platform-binding-wasm-copy", + "build.only_javascript": "node --require ./scripts/runBefore.ts scripts/index.ts --tsc --qwik --api", "build.packages.docs": "pnpm -C ./packages/docs/ run build", "build.packages.insights": "pnpm -C ./packages/insights/ run build", - "build.platform": "tsx --require ./scripts/runBefore.ts scripts/index.ts --platform-binding", - "build.platform.copy": "tsx --require ./scripts/runBefore.ts scripts/index.ts --platform-binding-wasm-copy", - "build.qwik-react": "tsx --require ./scripts/runBefore.ts scripts/index.ts --tsc --qwikreact", - "build.qwik-router": "tsx --require ./scripts/runBefore.ts scripts/index.ts --tsc --qwikrouter", - "build.router": "tsx --require ./scripts/runBefore.ts scripts/index.ts --tsc --qwikrouter --api", - "build.validate": "tsx --require ./scripts/runBefore.ts scripts/index.ts --tsc --qwik --api --eslint --qwikrouter --platform-binding --wasm --validate", - "build.vite": "tsx --require ./scripts/runBefore.ts scripts/index.ts --tsc --qwik --insights --api --qwikrouter --eslint --platform-binding-wasm-copy", - "build.wasm": "tsx --require ./scripts/runBefore.ts scripts/index.ts --wasm", - "build.watch": "tsx --require ./scripts/runBefore.ts scripts/index.ts --qwik --qwikrouter --watch --dev --platform-binding", + "build.platform": "node --require ./scripts/runBefore.ts scripts/index.ts --platform-binding", + "build.platform.copy": "node --require ./scripts/runBefore.ts scripts/index.ts --platform-binding-wasm-copy", + "build.qwik-react": "node --require ./scripts/runBefore.ts scripts/index.ts --tsc --qwikreact", + "build.qwik-router": "node --require ./scripts/runBefore.ts scripts/index.ts --tsc --qwikrouter", + "build.router": "node --require ./scripts/runBefore.ts scripts/index.ts --tsc --qwikrouter --api", + "build.validate": "node --require ./scripts/runBefore.ts scripts/index.ts --tsc --qwik --api --eslint --qwikrouter --platform-binding --wasm --validate", + "build.vite": "node --require ./scripts/runBefore.ts scripts/index.ts --tsc --qwik --insights --api --qwikrouter --eslint --platform-binding-wasm-copy", + "build.wasm": "node --require ./scripts/runBefore.ts scripts/index.ts --wasm", + "build.watch": "node --require ./scripts/runBefore.ts scripts/index.ts --qwik --qwikrouter --watch --dev --platform-binding", "change": "changeset", - "cli": "pnpm build.cli && node packages/create-qwik/create-qwik.cjs && tsx --require ./scripts/runBefore.ts scripts/validate-cli.ts --copy-local-qwik-dist", + "cli": "pnpm build.cli && node packages/create-qwik/create-qwik.cjs && node --require ./scripts/runBefore.ts scripts/validate-cli.ts --copy-local-qwik-dist", "cli.qwik": "pnpm build.cli && node packages/qwik/qwik-cli.cjs", - "cli.validate": "tsx --require ./scripts/runBefore.ts scripts/validate-cli.ts", + "cli.validate": "node --require ./scripts/runBefore.ts scripts/validate-cli.ts", "deps": "corepack pnpm upgrade -i -r --latest && syncpack fix-mismatches && corepack pnpm dedupe", "docs.dev": "pnpm -C packages/docs build.repl-sw && pnpm -C packages/docs dev", "docs.preview": "pnpm -C packages/docs preview", - "docs.sync": "tsx --require ./scripts/runBefore.ts scripts/docs_sync/index.ts && pnpm fmt", - "eslint.update": "tsx --require ./scripts/runBefore.ts scripts/eslint-docs.ts", + "docs.sync": "node --require ./scripts/runBefore.ts scripts/docs_sync/index.ts && pnpm fmt", + "eslint.update": "node --require ./scripts/runBefore.ts scripts/eslint-docs.ts", "fmt": "pnpm prettier.fix && pnpm syncpack format", "fmt.staged": "pretty-quick --staged", "link.dist": "cd packages/qwik && pnpm link --global && cd ../qwik-router && pnpm link --global && cd ../eslint-plugin-qwik && pnpm link --global && cd ../qwik-react && pnpm link --global", @@ -220,13 +219,13 @@ "preinstall": "npx only-allow pnpm", "prepare": "simple-git-hooks", "prettier.fix": "prettier --cache --write .", - "qwik-push-build-repos": "tsx --require ./scripts/runBefore.ts ./scripts/qwik-push-build-repos.ts", + "qwik-push-build-repos": "node --require ./scripts/runBefore.ts ./scripts/qwik-push-build-repos.ts", "release": "changeset publish", "release.fixup-package-json": "syncpack fix-mismatches --config syncpack-release-conf.json", "release.pkg-pr-new": "pnpm dlx pkg-pr-new@^0.0.9 publish --pnpm ./packages/qwik ./packages/qwik-router ./packages/eslint-plugin-qwik ./packages/create-qwik", "release.prepare": "pnpm build --prepare-release", - "serve": "tsx --require ./scripts/runBefore.ts --inspect --conditions=development starters/dev-server.ts 3300", - "serve.debug": "tsx --require ./scripts/runBefore.ts --inspect-brk --conditions=development starters/dev-server.ts 3300", + "serve": "node --require ./scripts/runBefore.ts --inspect --conditions=development starters/dev-server.ts 3300", + "serve.debug": "node --require ./scripts/runBefore.ts --inspect-brk --conditions=development starters/dev-server.ts 3300", "start": "pnpm run --stream \"/.*\\.watch/\"", "test": "pnpm build.full && pnpm test.unit && pnpm test.e2e", "test.e2e": "pnpm test.e2e.chromium && pnpm test.e2e.webkit && test.e2e.integrations", @@ -250,7 +249,7 @@ "tsc.check": "tsc --noEmit", "tsc.trace": "tsc -p tsconfig.json --traceResolution > tsc.log", "tsc.watch": "tsc --noEmit --watch --preserveWatchOutput", - "update.qwik.builds": "tsx --require ./scripts/runBefore.ts scripts/update-qwik-builds.ts packages/docs && tsx scripts/update-qwik-builds.ts packages/insights; pnpm install", + "update.qwik.builds": "node --require ./scripts/runBefore.ts scripts/update-qwik-builds.ts packages/docs && node scripts/update-qwik-builds.ts packages/insights; pnpm install", "vitest": "vitest" }, "simple-git-hooks": { diff --git a/packages/docs/package.json b/packages/docs/package.json index 2a520a86e4a..96173e592b3 100644 --- a/packages/docs/package.json +++ b/packages/docs/package.json @@ -74,12 +74,12 @@ "build.repl-sw": "vite --config vite.config-repl-sw build", "build.server": "NODE_OPTIONS=--max-old-space-size=8192 vite build -c adapters/cloudflare-pages/vite.config", "build.showcase": "pnpm node scripts/showcase.js", - "codesandbox.sync": "tsx codesandbox.sync.ts", - "contributors": "tsx contributors.ts", + "codesandbox.sync": "node codesandbox.sync.ts", + "contributors": "node contributors.ts", "deploy": "wrangler pages publish ./dist", - "dev": "tsx check-qwik-build.ts && vite --mode ssr --open", + "dev": "node check-qwik-build.ts && vite --mode ssr --open", "dev.debug": "node --inspect-brk ../../node_modules/vite/bin/vite.js --mode ssr --force", - "prebuild.core": "tsx check-qwik-build.ts", + "prebuild.core": "node check-qwik-build.ts", "preview": "qwik build preview && vite preview --open", "preview.only": "NODE_DEBUG=net,http node --inspect-brk ../../node_modules/vite/bin/vite.js preview", "preview.wrangler": "wrangler pages dev ./dist --compatibility-flags=nodejs_als", diff --git a/packages/docs/vite.config.ts b/packages/docs/vite.config.ts index bd9a0838b1c..578244e9fdf 100644 --- a/packages/docs/vite.config.ts +++ b/packages/docs/vite.config.ts @@ -11,7 +11,7 @@ import type { ShikiTransformer } from '@shikijs/types'; import tailwindcss from '@tailwindcss/vite'; import path, { resolve } from 'node:path'; import { defineConfig, loadEnv, type Plugin, type Rollup, type UserConfig } from 'vite'; -import { compiledStringPlugin } from '../../scripts/compiled-string-plugin'; +import { compiledStringPlugin } from '../../scripts/compiled-string-plugin.js'; import { examplesData, playgroundData, rawSource, tutorialData } from './vite.repl-apps'; import { sourceResolver } from './vite.source-resolver'; import { qwikDevtools } from '@qwik.dev/devtools'; diff --git a/packages/insights/package.json b/packages/insights/package.json index 9e85d3c6d76..135e34569ea 100644 --- a/packages/insights/package.json +++ b/packages/insights/package.json @@ -65,7 +65,7 @@ "qManifest.post.local": "curl -X POST -H 'Content-Type: application/json' -d @./dist/q-manifest.json http://localhost:5173/api/v1/221smyuj5gl/post/manifest/", "qwik": "qwik", "start": "vite --open --mode ssr", - "test.cluster": "tsx src/cluster.ts", + "test.cluster": "node src/cluster.ts", "test.unit": "vitest", "test.watch": "vitest --watch" }, diff --git a/packages/qwik-router/tsconfig.json b/packages/qwik-router/tsconfig.json index 9913969e884..dbbfb1f2bcd 100644 --- a/packages/qwik-router/tsconfig.json +++ b/packages/qwik-router/tsconfig.json @@ -44,5 +44,6 @@ "@qwik-router-sw-register": ["packages/qwik-router/src/runtime/src/sw-register-runtime.ts"] } }, - "include": ["."] + "include": ["."], + "exclude": ["dist"] } diff --git a/packages/qwik-router/vite.config.ts b/packages/qwik-router/vite.config.ts index 684d04c65c4..c434fd4dd7b 100644 --- a/packages/qwik-router/vite.config.ts +++ b/packages/qwik-router/vite.config.ts @@ -1,5 +1,5 @@ import { defineConfig } from 'vite'; -import { compiledStringPlugin } from '../../scripts/compiled-string-plugin'; +import { compiledStringPlugin } from '../../scripts/compiled-string-plugin.js'; import pkg from './package.json' with { type: 'json' }; export default defineConfig(() => { diff --git a/packages/qwik/src/cli/utils/app-command.ts b/packages/qwik/src/cli/utils/app-command.ts index c6e083f71b8..f43eed6d284 100644 --- a/packages/qwik/src/cli/utils/app-command.ts +++ b/packages/qwik/src/cli/utils/app-command.ts @@ -1,6 +1,6 @@ import { existsSync, readFileSync } from 'node:fs'; import { dirname, join, resolve } from 'node:path'; -import type { PackageJSON } from '../../../../../scripts/util'; +import type { PackageJSON } from '../../../../../scripts/types.ts'; export class AppCommand { args: string[]; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 02e040e514c..a28700eb74c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -108,10 +108,10 @@ importers: version: 1.0.2 '@vitejs/plugin-basic-ssl': specifier: 2.1.0 - version: 2.1.0(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)) + version: 2.1.0(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1)) '@vitest/coverage-v8': specifier: 3.2.4 - version: 3.2.4(vitest@4.0.1(@types/debug@4.1.12)(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)) + version: 3.2.4(vitest@4.0.1(@types/debug@4.1.12)(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1)) all-contributors-cli: specifier: 6.26.1 version: 6.26.1 @@ -214,9 +214,6 @@ importers: tree-kill: specifier: 1.2.2 version: 1.2.2 - tsx: - specifier: 4.20.6 - version: 4.20.6 typescript: specifier: 5.9.3 version: 5.9.3 @@ -228,19 +225,19 @@ importers: version: 6.0.3 vite: specifier: 7.1.11 - version: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1) + version: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1) vite-imagetools: specifier: 9.0.0 version: 9.0.0(rollup@4.52.4) vite-plugin-dts: specifier: 4.5.4 - version: 4.5.4(@types/node@24.3.0)(rollup@4.52.4)(typescript@5.9.3)(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)) + version: 4.5.4(@types/node@24.3.0)(rollup@4.52.4)(typescript@5.9.3)(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1)) vite-tsconfig-paths: specifier: 5.1.4 - version: 5.1.4(typescript@5.9.3)(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)) + version: 5.1.4(typescript@5.9.3)(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1)) vitest: specifier: 4.0.1 - version: 4.0.1(@types/debug@4.1.12)(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1) + version: 4.0.1(@types/debug@4.1.12)(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1) watchlist: specifier: 0.3.1 version: 0.3.1 @@ -335,7 +332,7 @@ importers: version: link:../qwik '@qwik.dev/devtools': specifier: 0.2.1 - version: 0.2.1(@qwik.dev/core@packages+qwik)(@qwik.dev/router@packages+qwik-router)(@tailwindcss/vite@4.1.12(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)))(tailwindcss@4.1.14)(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)) + version: 0.2.1(@qwik.dev/core@packages+qwik)(@qwik.dev/router@packages+qwik-router)(@tailwindcss/vite@4.1.12(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1)))(tailwindcss@4.1.14)(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1)) '@qwik.dev/partytown': specifier: 0.11.2 version: 0.11.2 @@ -371,7 +368,7 @@ importers: version: 2.53.0 '@tailwindcss/vite': specifier: 4.1.12 - version: 4.1.12(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)) + version: 4.1.12(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1)) '@types/leaflet': specifier: 1.9.20 version: 1.9.20 @@ -452,10 +449,10 @@ importers: version: 0.33.3 vite: specifier: 7.1.11 - version: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1) + version: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1) vite-tsconfig-paths: specifier: 5.1.4 - version: 5.1.4(typescript@5.9.3)(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)) + version: 5.1.4(typescript@5.9.3)(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1)) wrangler: specifier: 3.65.1 version: 3.65.1 @@ -532,7 +529,7 @@ importers: version: link:../qwik-router '@tailwindcss/vite': specifier: 4.1.12 - version: 4.1.12(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)) + version: 4.1.12(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1)) '@types/density-clustering': specifier: 1.3.3 version: 1.3.3 @@ -574,13 +571,13 @@ importers: version: 8.45.0(eslint@9.33.0(jiti@2.6.0))(typescript@5.9.3) vite: specifier: 7.1.11 - version: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1) + version: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1) vite-tsconfig-paths: specifier: 5.1.4 - version: 5.1.4(typescript@5.9.3)(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)) + version: 5.1.4(typescript@5.9.3)(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1)) vitest: specifier: 4.0.1 - version: 4.0.1(@types/debug@4.1.12)(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1) + version: 4.0.1(@types/debug@4.1.12)(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1) zod: specifier: 3.25.48 version: 3.25.48 @@ -626,7 +623,7 @@ importers: version: 23.0.0 vitest: specifier: 4.0.1 - version: 4.0.1(@types/debug@4.1.12)(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1) + version: 4.0.1(@types/debug@4.1.12)(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1) packages/qwik-dom: {} @@ -652,7 +649,7 @@ importers: version: 5.9.3 vite: specifier: 7.1.11 - version: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1) + version: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1) packages/qwik-router: dependencies: @@ -724,7 +721,7 @@ importers: version: 6.0.3 vite: specifier: '>=5 <8' - version: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1) + version: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1) vite-imagetools: specifier: ^9.0.0 version: 9.0.0(rollup@4.52.4) @@ -8603,11 +8600,6 @@ packages: engines: {node: '>=12'} hasBin: true - tsx@4.20.6: - resolution: {integrity: sha512-ytQKuwgmrrkDTFP4LjR0ToE2nqgy886GpvRSpU0JAnrdBYppuY5rLkRUYPU1yCryb24SsKBTL/hlDQAEFVwtZg==} - engines: {node: '>=18.0.0'} - hasBin: true - type-check@0.4.0: resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} engines: {node: '>= 0.8.0'} @@ -11416,20 +11408,20 @@ snapshots: body-scroll-lock-upgrade: 1.1.0 focus-trap: 7.5.4 - '@qwik.dev/devtools@0.2.1(@qwik.dev/core@packages+qwik)(@qwik.dev/router@packages+qwik-router)(@tailwindcss/vite@4.1.12(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)))(tailwindcss@4.1.14)(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1))': + '@qwik.dev/devtools@0.2.1(@qwik.dev/core@packages+qwik)(@qwik.dev/router@packages+qwik-router)(@tailwindcss/vite@4.1.12(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1)))(tailwindcss@4.1.14)(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1))': dependencies: '@qwik.dev/core': link:packages/qwik '@qwik.dev/router': link:packages/qwik-router '@qwikest/icons': 0.0.13 - '@tailwindcss/vite': 4.1.12(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)) + '@tailwindcss/vite': 4.1.12(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1)) birpc: 0.2.19 dree: 5.1.5 oxc-parser: 0.82.3 superjson: 2.2.5 tailwindcss: 4.1.14 - vite: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1) - vite-hot-client: 0.2.4(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)) - vite-plugin-inspect: 11.3.3(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)) + vite: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1) + vite-hot-client: 0.2.4(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1)) + vite-plugin-inspect: 11.3.3(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1)) transitivePeerDependencies: - '@nuxt/kit' - supports-color @@ -11778,12 +11770,12 @@ snapshots: '@tailwindcss/oxide-win32-arm64-msvc': 4.1.12 '@tailwindcss/oxide-win32-x64-msvc': 4.1.12 - '@tailwindcss/vite@4.1.12(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1))': + '@tailwindcss/vite@4.1.12(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1))': dependencies: '@tailwindcss/node': 4.1.12 '@tailwindcss/oxide': 4.1.12 tailwindcss: 4.1.12 - vite: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1) + vite: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1) '@tokenizer/token@0.3.0': {} @@ -12205,11 +12197,11 @@ snapshots: - rollup - supports-color - '@vitejs/plugin-basic-ssl@2.1.0(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1))': + '@vitejs/plugin-basic-ssl@2.1.0(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1))': dependencies: - vite: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1) + vite: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1) - '@vitest/coverage-v8@3.2.4(vitest@4.0.1(@types/debug@4.1.12)(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1))': + '@vitest/coverage-v8@3.2.4(vitest@4.0.1(@types/debug@4.1.12)(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1))': dependencies: '@ampproject/remapping': 2.3.0 '@bcoe/v8-coverage': 1.0.2 @@ -12224,7 +12216,7 @@ snapshots: std-env: 3.10.0 test-exclude: 7.0.1 tinyrainbow: 2.0.0 - vitest: 4.0.1(@types/debug@4.1.12)(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1) + vitest: 4.0.1(@types/debug@4.1.12)(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1) transitivePeerDependencies: - supports-color @@ -12237,13 +12229,13 @@ snapshots: chai: 6.2.0 tinyrainbow: 3.0.3 - '@vitest/mocker@4.0.1(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1))': + '@vitest/mocker@4.0.1(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1))': dependencies: '@vitest/spy': 4.0.1 estree-walker: 3.0.3 magic-string: 0.30.19 optionalDependencies: - vite: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1) + vite: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1) '@vitest/pretty-format@4.0.1': dependencies: @@ -18261,13 +18253,6 @@ snapshots: dependencies: esbuild: 0.15.18 - tsx@4.20.6: - dependencies: - esbuild: 0.25.10 - get-tsconfig: 4.10.1 - optionalDependencies: - fsevents: 2.3.3 - type-check@0.4.0: dependencies: prelude-ls: 1.2.1 @@ -18534,19 +18519,19 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.3 - vite-dev-rpc@1.1.0(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)): + vite-dev-rpc@1.1.0(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1)): dependencies: birpc: 2.6.1 - vite: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1) - vite-hot-client: 2.1.0(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)) + vite: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1) + vite-hot-client: 2.1.0(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1)) - vite-hot-client@0.2.4(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)): + vite-hot-client@0.2.4(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1)): dependencies: - vite: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1) + vite: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1) - vite-hot-client@2.1.0(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)): + vite-hot-client@2.1.0(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1)): dependencies: - vite: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1) + vite: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1) vite-imagetools@9.0.0(rollup@4.52.4): dependencies: @@ -18556,7 +18541,7 @@ snapshots: transitivePeerDependencies: - rollup - vite-plugin-dts@4.5.4(@types/node@24.3.0)(rollup@4.52.4)(typescript@5.9.3)(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)): + vite-plugin-dts@4.5.4(@types/node@24.3.0)(rollup@4.52.4)(typescript@5.9.3)(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1)): dependencies: '@microsoft/api-extractor': 7.52.10(@types/node@24.3.0) '@rollup/pluginutils': 5.3.0(rollup@4.52.4) @@ -18569,13 +18554,13 @@ snapshots: magic-string: 0.30.17 typescript: 5.9.3 optionalDependencies: - vite: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1) + vite: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1) transitivePeerDependencies: - '@types/node' - rollup - supports-color - vite-plugin-inspect@11.3.3(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)): + vite-plugin-inspect@11.3.3(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1)): dependencies: ansis: 4.2.0 debug: 4.4.3(supports-color@10.2.2) @@ -18585,23 +18570,23 @@ snapshots: perfect-debounce: 2.0.0 sirv: 3.0.2 unplugin-utils: 0.3.0 - vite: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1) - vite-dev-rpc: 1.1.0(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)) + vite: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1) + vite-dev-rpc: 1.1.0(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1)) transitivePeerDependencies: - supports-color - vite-tsconfig-paths@5.1.4(typescript@5.9.3)(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)): + vite-tsconfig-paths@5.1.4(typescript@5.9.3)(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1)): dependencies: debug: 4.4.3(supports-color@10.2.2) globrex: 0.1.2 tsconfck: 3.1.6(typescript@5.9.3) optionalDependencies: - vite: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1) + vite: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1) transitivePeerDependencies: - supports-color - typescript - vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1): + vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1): dependencies: esbuild: 0.25.10 fdir: 6.5.0(picomatch@4.0.3) @@ -18615,13 +18600,12 @@ snapshots: jiti: 2.6.0 lightningcss: 1.30.1 terser: 5.44.0 - tsx: 4.20.6 yaml: 2.8.1 - vitest@4.0.1(@types/debug@4.1.12)(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1): + vitest@4.0.1(@types/debug@4.1.12)(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1): dependencies: '@vitest/expect': 4.0.1 - '@vitest/mocker': 4.0.1(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1)) + '@vitest/mocker': 4.0.1(vite@7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1)) '@vitest/pretty-format': 4.0.1 '@vitest/runner': 4.0.1 '@vitest/snapshot': 4.0.1 @@ -18638,7 +18622,7 @@ snapshots: tinyexec: 0.3.2 tinyglobby: 0.2.15 tinyrainbow: 3.0.3 - vite: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(tsx@4.20.6)(yaml@2.8.1) + vite: 7.1.11(@types/node@24.3.0)(jiti@2.6.0)(lightningcss@1.30.1)(terser@5.44.0)(yaml@2.8.1) why-is-node-running: 2.3.0 optionalDependencies: '@types/debug': 4.1.12 diff --git a/scripts/api-docs.ts b/scripts/api-docs.ts index 650dc22c9ad..5176cb262fb 100644 --- a/scripts/api-docs.ts +++ b/scripts/api-docs.ts @@ -2,7 +2,7 @@ import { execa } from 'execa'; import { existsSync, mkdirSync, readFileSync, readdirSync, writeFileSync } from 'node:fs'; import { join } from 'node:path'; import { format } from 'prettier'; -import { type BuildConfig } from './util'; +import { type BuildConfig } from './util.ts'; export async function generateQwikApiMarkdownDocs(config: BuildConfig, apiJsonInputDir: string) { await generateApiMarkdownPackageDocs(config, apiJsonInputDir, ['qwik']); diff --git a/scripts/api.ts b/scripts/api.ts index 1708b548921..4abe8f6a1e4 100644 --- a/scripts/api.ts +++ b/scripts/api.ts @@ -1,8 +1,8 @@ import { Extractor, ExtractorConfig } from '@microsoft/api-extractor'; import { readFileSync, writeFileSync } from 'node:fs'; import { join } from 'node:path'; -import { generateQwikApiMarkdownDocs, generateQwikRouterApiMarkdownDocs } from './api-docs'; -import { type BuildConfig, copyFile, ensureDir, panic } from './util'; +import { generateQwikApiMarkdownDocs, generateQwikRouterApiMarkdownDocs } from './api-docs.ts'; +import { type BuildConfig, copyFile, ensureDir, panic } from './util.ts'; /** * Create each submodule's bundled dts file, and ensure the public API has not changed for a diff --git a/scripts/binding-platform.ts b/scripts/binding-platform.ts index 107de966800..7bb25f7a1af 100644 --- a/scripts/binding-platform.ts +++ b/scripts/binding-platform.ts @@ -2,7 +2,7 @@ import spawn from 'cross-spawn'; import { copyFile, writeFile } from 'fs/promises'; import { existsSync } from 'node:fs'; import { join } from 'node:path'; -import { ensureDir, type BuildConfig } from './util'; +import { ensureDir, type BuildConfig } from './util.ts'; export async function buildPlatformBinding(config: BuildConfig) { await new Promise((resolve, reject) => { diff --git a/scripts/binding-wasm.ts b/scripts/binding-wasm.ts index bd1f98255aa..b963698d325 100644 --- a/scripts/binding-wasm.ts +++ b/scripts/binding-wasm.ts @@ -1,4 +1,4 @@ -import { type BuildConfig, copyFile, emptyDir, ensureDir } from './util'; +import { type BuildConfig, copyFile, emptyDir, ensureDir } from './util.ts'; import spawn from 'cross-spawn'; import { join } from 'node:path'; import { rollup } from 'rollup'; diff --git a/scripts/build.ts b/scripts/build.ts index d7a1e3b3fc4..b5918befea8 100644 --- a/scripts/build.ts +++ b/scripts/build.ts @@ -1,35 +1,35 @@ import { rmSync } from 'fs'; import { copyFile, watch } from 'fs/promises'; import { join } from 'path'; -import { apiExtractorQwik, apiExtractorQwikRouter } from './api'; -import { buildPlatformBinding, copyPlatformBindingWasm } from './binding-platform'; -import { buildWasmBinding } from './binding-wasm'; -import { buildCreateQwikCli } from './create-qwik-cli'; -import { buildEslint } from './eslint'; -import { buildQwikReact } from './qwik-react'; -import { buildQwikRouter } from './qwik-router'; +import { apiExtractorQwik, apiExtractorQwikRouter } from './api.ts'; +import { buildPlatformBinding, copyPlatformBindingWasm } from './binding-platform.ts'; +import { buildWasmBinding } from './binding-wasm.ts'; +import { buildCreateQwikCli } from './create-qwik-cli.ts'; +import { buildEslint } from './eslint.ts'; +import { buildQwikReact } from './qwik-react.ts'; +import { buildQwikRouter } from './qwik-router.ts'; import { commitPrepareReleaseVersion, prepareReleaseVersion, publish, setDistVersion, setReleaseVersion, -} from './release'; -import { submoduleBuild } from './submodule-build'; -import { submoduleCli } from './submodule-cli'; -import { submoduleCore } from './submodule-core'; -import { submoduleInsights } from './submodule-insights'; -import { submoduleOptimizer } from './submodule-optimizer'; -import { submoduleQwikLoader } from './submodule-qwikloader'; -import { submoduleBackpatch } from './submodule-backpatch'; -import { submoduleServer } from './submodule-server'; -import { submoduleTesting } from './submodule-testing'; -import { buildSupabaseAuthHelpers } from './supabase-auth-helpers'; -import { tsc, tscQwik, tscQwikRouter } from './tsc'; -import { tscDocs } from './tsc-docs'; -import { emptyDir, ensureDir, panic, type BuildConfig } from './util'; -import { validateBuild } from './validate-build'; -import { submodulePreloader } from './submodule-preloader'; +} from './release.ts'; +import { submoduleBuild } from './submodule-build.ts'; +import { submoduleCli } from './submodule-cli.ts'; +import { submoduleCore } from './submodule-core.ts'; +import { submoduleInsights } from './submodule-insights.ts'; +import { submoduleOptimizer } from './submodule-optimizer.ts'; +import { submoduleQwikLoader } from './submodule-qwikloader.ts'; +import { submoduleBackpatch } from './submodule-backpatch.ts'; +import { submoduleServer } from './submodule-server.ts'; +import { submoduleTesting } from './submodule-testing.ts'; +import { buildSupabaseAuthHelpers } from './supabase-auth-helpers.ts'; +import { tsc, tscQwik, tscQwikRouter } from './tsc.ts'; +import { tscDocs } from './tsc-docs.ts'; +import { emptyDir, ensureDir, panic, type BuildConfig } from './util.ts'; +import { validateBuild } from './validate-build.ts'; +import { submodulePreloader } from './submodule-preloader.ts'; /** * Complete a full build for all of the package's submodules. Passed in config has all the correct diff --git a/scripts/create-qwik-cli.ts b/scripts/create-qwik-cli.ts index ba3a07916d5..40cdda7432a 100644 --- a/scripts/create-qwik-cli.ts +++ b/scripts/create-qwik-cli.ts @@ -2,7 +2,7 @@ import { build } from 'esbuild'; import { existsSync } from 'node:fs'; import { rm } from 'node:fs/promises'; import { basename, join } from 'node:path'; -import { readPackageJson, writePackageJson } from './package-json'; +import { readPackageJson, writePackageJson } from './package-json.ts'; import { type BuildConfig, copyFile, @@ -14,7 +14,7 @@ import { readdir, run, stat, -} from './util'; +} from './util.ts'; const PACKAGE = 'create-qwik'; diff --git a/scripts/docs_sync/fetch_hackmd.ts b/scripts/docs_sync/fetch_hackmd.ts index 86ed6a192d9..0fa7ed79226 100644 --- a/scripts/docs_sync/fetch_hackmd.ts +++ b/scripts/docs_sync/fetch_hackmd.ts @@ -1,5 +1,5 @@ import { join } from 'node:path'; -import { readLines, scanFiles, writeFileLines } from './util'; +import { readLines, scanFiles, writeFileLines } from './util.ts'; export function main(dir: string) { console.log('Fetching HackMD content...'); diff --git a/scripts/docs_sync/index.ts b/scripts/docs_sync/index.ts index 304dfe5ceae..2976a4044d0 100644 --- a/scripts/docs_sync/index.ts +++ b/scripts/docs_sync/index.ts @@ -1,4 +1,4 @@ -import { main } from './main'; +import { main } from './main.ts'; import { join } from 'node:path'; main(join(process.cwd(), 'packages')); diff --git a/scripts/docs_sync/main.ts b/scripts/docs_sync/main.ts index f4c4abdba3a..27d2a9b6e90 100644 --- a/scripts/docs_sync/main.ts +++ b/scripts/docs_sync/main.ts @@ -1,5 +1,5 @@ import { join, dirname } from 'node:path'; -import { readLines, scanFiles, writeFileLines } from './util'; +import { readLines, scanFiles, writeFileLines } from './util.ts'; export function main(dir: string) { console.log('DOC SYNC', dir); diff --git a/scripts/eslint.ts b/scripts/eslint.ts index 2611674c286..ae1b8cd5606 100644 --- a/scripts/eslint.ts +++ b/scripts/eslint.ts @@ -1,7 +1,7 @@ -import { type BuildConfig, run, nodeTarget } from './util'; +import { type BuildConfig, run, nodeTarget } from './util.ts'; import { join } from 'node:path'; import { build } from 'esbuild'; -import { readPackageJson, writePackageJson } from './package-json'; +import { readPackageJson, writePackageJson } from './package-json.ts'; const PACKAGE = 'eslint-plugin-qwik'; diff --git a/scripts/index.ts b/scripts/index.ts index b087aef9090..540b7d61efe 100644 --- a/scripts/index.ts +++ b/scripts/index.ts @@ -3,8 +3,8 @@ * registering typescript files with esbuild-register to allow Node.js to build .ts files * on-demand. */ -import { build } from './build'; -import { loadConfig } from './util'; +import { build } from './build.ts'; +import { loadConfig } from './util.ts'; const args = process.argv.slice(2); diff --git a/scripts/package-json.ts b/scripts/package-json.ts index 7f6a36aaf29..19f023db31f 100644 --- a/scripts/package-json.ts +++ b/scripts/package-json.ts @@ -1,5 +1,5 @@ -import { ensureDir, type PackageJSON } from './util'; -import { readFile, writeFile } from './util'; +import { ensureDir, type PackageJSON } from './util.ts'; +import { readFile, writeFile } from './util.ts'; import { join } from 'node:path'; export async function readPackageJson(pkgJsonDir: string) { diff --git a/scripts/qwik-react.ts b/scripts/qwik-react.ts index f3eaf1ab0fb..175f12678e0 100644 --- a/scripts/qwik-react.ts +++ b/scripts/qwik-react.ts @@ -1,4 +1,4 @@ -import { type BuildConfig, copyDir, panic } from './util'; +import { type BuildConfig, copyDir, panic } from './util.ts'; import { join } from 'node:path'; import { execa } from 'execa'; diff --git a/scripts/qwik-router.ts b/scripts/qwik-router.ts index c2f866a34e1..92f7f53f1a0 100644 --- a/scripts/qwik-router.ts +++ b/scripts/qwik-router.ts @@ -1,5 +1,5 @@ import { execa } from 'execa'; -import { emptyDir, panic, type BuildConfig } from './util'; +import { emptyDir, panic, type BuildConfig } from './util.ts'; export async function buildQwikRouter(config: BuildConfig) { if (!config.dev) { diff --git a/scripts/release.ts b/scripts/release.ts index 16d0cc0d358..11f3c998c83 100644 --- a/scripts/release.ts +++ b/scripts/release.ts @@ -4,11 +4,11 @@ import { join } from 'node:path'; import { fileURLToPath } from 'node:url'; import prompts from 'prompts'; import semver from 'semver'; -import { publishCreateQwikCli } from './create-qwik-cli'; -import { publishEslint } from './eslint'; -import { readPackageJson, writePackageJson } from './package-json'; -import { type BuildConfig, panic, run } from './util'; -import { validateBuild } from './validate-build'; +import { publishCreateQwikCli } from './create-qwik-cli.ts'; +import { publishEslint } from './eslint.ts'; +import { readPackageJson, writePackageJson } from './package-json.ts'; +import { type BuildConfig, panic, run } from './util.ts'; +import { validateBuild } from './validate-build.ts'; let version: string; diff --git a/scripts/submodule-backpatch.ts b/scripts/submodule-backpatch.ts index 2084ec2cfe0..756a72d3c01 100644 --- a/scripts/submodule-backpatch.ts +++ b/scripts/submodule-backpatch.ts @@ -1,7 +1,7 @@ import { join } from 'node:path'; import { build } from 'vite'; -import { writePackageJson } from './package-json'; -import { getLoaderJsonString, minifyClientScript } from './submodule-qwikloader'; +import { writePackageJson } from './package-json.ts'; +import { getLoaderJsonString, minifyClientScript } from './submodule-qwikloader.ts'; import { type BuildConfig, ensureDir, @@ -9,7 +9,7 @@ import { type PackageJSON, readFile, writeFile, -} from './util'; +} from './util.ts'; /** Builds and minifies the backpatch executor javascript files. This is based off of the qwikloader */ export async function submoduleBackpatch(config: BuildConfig) { diff --git a/scripts/submodule-build.ts b/scripts/submodule-build.ts index 161e2bb4957..29f1a47fc92 100644 --- a/scripts/submodule-build.ts +++ b/scripts/submodule-build.ts @@ -1,7 +1,7 @@ import { build, type BuildOptions } from 'esbuild'; import { join } from 'node:path'; -import { writePackageJson } from './package-json'; -import { type BuildConfig, copyFile, ensureDir, type PackageJSON, target } from './util'; +import { writePackageJson } from './package-json.ts'; +import { type BuildConfig, copyFile, ensureDir, type PackageJSON, target } from './util.ts'; export async function submoduleBuild(config: BuildConfig) { const submodule = 'build'; diff --git a/scripts/submodule-cli.ts b/scripts/submodule-cli.ts index ac026c777af..cd12dbcde01 100644 --- a/scripts/submodule-cli.ts +++ b/scripts/submodule-cli.ts @@ -1,8 +1,8 @@ import { build } from 'esbuild'; import { existsSync, rmSync } from 'node:fs'; import { join } from 'node:path'; -import { copyStartersDir } from './create-qwik-cli'; -import { type BuildConfig, copyDir, getBanner, nodeTarget } from './util'; +import { copyStartersDir } from './create-qwik-cli.ts'; +import { type BuildConfig, copyDir, getBanner, nodeTarget } from './util.ts'; /** Builds @qwik.dev/core/cli */ export async function submoduleCli(config: BuildConfig) { diff --git a/scripts/submodule-core.ts b/scripts/submodule-core.ts index 76b4e9312c8..70011cce681 100644 --- a/scripts/submodule-core.ts +++ b/scripts/submodule-core.ts @@ -10,7 +10,7 @@ import { rollupOnWarn, target, writeFile, -} from './util'; +} from './util.ts'; /** * Build the core package which is also the root package: @qwik.dev/core diff --git a/scripts/submodule-insights.ts b/scripts/submodule-insights.ts index c7231607f8f..f069b170982 100644 --- a/scripts/submodule-insights.ts +++ b/scripts/submodule-insights.ts @@ -1,6 +1,6 @@ import { join } from 'node:path'; import { build } from 'vite'; -import { type BuildConfig } from './util'; +import { type BuildConfig } from './util.ts'; export async function submoduleInsights(config: BuildConfig) { await buildComponents(config); diff --git a/scripts/submodule-optimizer.ts b/scripts/submodule-optimizer.ts index 0e46468599e..e150a59fae0 100644 --- a/scripts/submodule-optimizer.ts +++ b/scripts/submodule-optimizer.ts @@ -2,9 +2,9 @@ import { platformArchTriples } from '@napi-rs/triples'; import { constants, existsSync } from 'node:fs'; import { join } from 'node:path'; import { build as viteBuild, type UserConfig } from 'vite'; -import { compiledStringPlugin } from './compiled-string-plugin'; -import { inlineQwikScriptsEsBuild } from './submodule-qwikloader'; -import { access, getBanner, target, writeFile, type BuildConfig } from './util'; +import { compiledStringPlugin } from './compiled-string-plugin.ts'; +import { inlineQwikScriptsEsBuild } from './submodule-qwikloader.ts'; +import { access, getBanner, target, writeFile, type BuildConfig } from './util.ts'; /** Builds @qwik.dev/core/optimizer */ export async function submoduleOptimizer(config: BuildConfig) { diff --git a/scripts/submodule-preloader.ts b/scripts/submodule-preloader.ts index f0f6ef22bd5..541363451c1 100644 --- a/scripts/submodule-preloader.ts +++ b/scripts/submodule-preloader.ts @@ -1,6 +1,6 @@ import { join } from 'node:path'; import { build } from 'vite'; -import { fileSize, type BuildConfig } from './util'; +import { fileSize, type BuildConfig } from './util.ts'; import { minify } from 'terser'; import type { Plugin } from 'vite'; diff --git a/scripts/submodule-qwikloader.ts b/scripts/submodule-qwikloader.ts index be62e23c670..9b16aabe473 100644 --- a/scripts/submodule-qwikloader.ts +++ b/scripts/submodule-qwikloader.ts @@ -1,7 +1,7 @@ import { join } from 'node:path'; import { minify } from 'terser'; import { build } from 'vite'; -import { writePackageJson } from './package-json'; +import { writePackageJson } from './package-json.ts'; import { type BuildConfig, ensureDir, @@ -9,7 +9,7 @@ import { type PackageJSON, readFile, writeFile, -} from './util'; +} from './util.ts'; /** * Builds the qwikloader javascript files. These files can be used by other tooling, and are diff --git a/scripts/submodule-server.ts b/scripts/submodule-server.ts index 0fa7d60b720..c218ffee4c1 100644 --- a/scripts/submodule-server.ts +++ b/scripts/submodule-server.ts @@ -1,9 +1,9 @@ import { build, type BuildOptions, type Plugin } from 'esbuild'; import { join } from 'node:path'; -import { readPackageJson } from './package-json'; -import { inlineQwikScriptsEsBuild } from './submodule-qwikloader'; -import { inlineBackpatchScriptsEsBuild } from './submodule-backpatch'; -import { type BuildConfig, getBanner, importPath, nodeTarget, target } from './util'; +import { readPackageJson } from './package-json.ts'; +import { inlineQwikScriptsEsBuild } from './submodule-qwikloader.ts'; +import { inlineBackpatchScriptsEsBuild } from './submodule-backpatch.ts'; +import { type BuildConfig, getBanner, importPath, nodeTarget, target } from './util.ts'; /** * Builds @qwik.dev/core/server diff --git a/scripts/submodule-testing.ts b/scripts/submodule-testing.ts index 206e55b3193..b92f31c1156 100644 --- a/scripts/submodule-testing.ts +++ b/scripts/submodule-testing.ts @@ -1,8 +1,8 @@ -import { getBanner, importPath, nodeTarget, target, externalImportNoEffects } from './util'; +import { getBanner, importPath, nodeTarget, target, externalImportNoEffects } from './util.ts'; import { build, type BuildOptions } from 'esbuild'; -import { type BuildConfig, type PackageJSON } from './util'; +import { type BuildConfig, type PackageJSON } from './util.ts'; import { join } from 'node:path'; -import { writePackageJson } from './package-json'; +import { writePackageJson } from './package-json.ts'; /** Builds @qwik.dev/core/testing */ export async function submoduleTesting(config: BuildConfig) { diff --git a/scripts/supabase-auth-helpers.ts b/scripts/supabase-auth-helpers.ts index 4b6beca5e78..fadcd46d6ba 100644 --- a/scripts/supabase-auth-helpers.ts +++ b/scripts/supabase-auth-helpers.ts @@ -1,4 +1,4 @@ -import { type BuildConfig, copyDir, panic } from './util'; +import { type BuildConfig, copyDir, panic } from './util.ts'; import { join } from 'node:path'; import { execa } from 'execa'; diff --git a/scripts/tsc-docs.ts b/scripts/tsc-docs.ts index 2ffa7e66271..71d03c49717 100644 --- a/scripts/tsc-docs.ts +++ b/scripts/tsc-docs.ts @@ -1,5 +1,5 @@ import { execa } from 'execa'; -import { type BuildConfig, panic } from './util'; +import { type BuildConfig, panic } from './util.ts'; import { join } from 'path'; // Run tsc for docs separately because it requires e.g. qwik-react types to be built first diff --git a/scripts/tsc.ts b/scripts/tsc.ts index 13c7f4d5f2a..105b79a597b 100644 --- a/scripts/tsc.ts +++ b/scripts/tsc.ts @@ -1,6 +1,6 @@ import { execa } from 'execa'; import { join } from 'path'; -import { type BuildConfig, panic } from './util'; +import { type BuildConfig, panic } from './util.ts'; // TODO DRY export async function tscQwik(config: BuildConfig) { diff --git a/scripts/types.d.ts b/scripts/types.d.ts new file mode 100644 index 00000000000..84a55b3368d --- /dev/null +++ b/scripts/types.d.ts @@ -0,0 +1,34 @@ +/** + * Type definitions for scripts utilities This file allows package code to import types without + * importing the implementation + */ + +export interface PackageJSON { + name?: string; + version?: string; + description?: string; + license?: string; + main?: string; + module?: string; + types?: string; + type?: 'module' | 'commonjs'; + exports?: Record; + scripts?: Record; + dependencies?: Record; + devDependencies?: Record; + peerDependencies?: Record; + optionalDependencies?: Record; + [key: string]: any; +} + +export interface BuildConfig { + rootDir: string; + srcDir: string; + srcQwikDir: string; + srcQwikRouterDir: string; + packagesDir: string; + distQwikPkgDir: string; + distQwikRouterPkgDir: string; + dtsDir: string; + [key: string]: any; +} diff --git a/scripts/update-qwik-builds.ts b/scripts/update-qwik-builds.ts index f0bb9bd4281..2903c7ea6b9 100644 --- a/scripts/update-qwik-builds.ts +++ b/scripts/update-qwik-builds.ts @@ -1,4 +1,4 @@ -import { readPackageJson, writePackageJson } from './package-json'; +import { readPackageJson, writePackageJson } from './package-json.ts'; type Repos = 'qwik' | 'qwik-router'; diff --git a/scripts/util.ts b/scripts/util.ts index b26c839ebe3..e6e7d299d4d 100644 --- a/scripts/util.ts +++ b/scripts/util.ts @@ -18,7 +18,7 @@ import { fileURLToPath } from 'node:url'; import type { Plugin as RollupPlugin } from 'rollup'; import { minify, type MinifyOptions } from 'terser'; import { promisify } from 'util'; -import { readPackageJson } from './package-json'; +import { readPackageJson } from './package-json.ts'; const stringOptions = ['distVersion', 'platformTarget', 'setDistTag'] as const; const booleanOptions = [ diff --git a/scripts/validate-build.ts b/scripts/validate-build.ts index 4184bad403c..f73e5befdb1 100644 --- a/scripts/validate-build.ts +++ b/scripts/validate-build.ts @@ -4,7 +4,7 @@ import { basename, extname, join } from 'node:path'; import { pathToFileURL } from 'node:url'; import { rollup } from 'rollup'; import ts from 'typescript'; -import { access, type BuildConfig, type PackageJSON, panic, readFile } from './util'; +import { access, type BuildConfig, type PackageJSON, panic, readFile } from './util.ts'; /** * This will validate a completed production build by triple checking all the files have been diff --git a/scripts/validate-cli.ts b/scripts/validate-cli.ts index 41e96e468ee..4cea7f2d0fb 100644 --- a/scripts/validate-cli.ts +++ b/scripts/validate-cli.ts @@ -11,10 +11,10 @@ import { } from 'node:fs'; import { join, relative } from 'node:path'; import { fileURLToPath, pathToFileURL } from 'node:url'; -import { readPackageJson, writePackageJson } from './package-json'; +import { readPackageJson, writePackageJson } from './package-json.ts'; import assert from 'assert'; -import { panic } from './util'; +import { panic } from './util.ts'; const __dirname = fileURLToPath(new URL('.', import.meta.url)); diff --git a/starters/dev-server.ts b/starters/dev-server.ts index 2c893e38683..6e8493150e1 100644 --- a/starters/dev-server.ts +++ b/starters/dev-server.ts @@ -19,7 +19,7 @@ import { import { join, relative, resolve } from "node:path"; import { fileURLToPath, pathToFileURL } from "node:url"; import { build, type InlineConfig, type PluginOption } from "vite"; -import type { PackageJSON } from "../scripts/util"; +import type { PackageJSON } from "../scripts/types.ts"; const isWindows = process.platform === "win32"; diff --git a/starters/playwright.config.ts b/starters/playwright.config.ts index 4928983e2e0..a463d71e523 100644 --- a/starters/playwright.config.ts +++ b/starters/playwright.config.ts @@ -31,7 +31,7 @@ const config: PlaywrightTestConfig = { expect: { timeout: inGithubCI ? 120000 : 10000 }, webServer: { command: - "pnpm tsx --require ./scripts/runBefore.ts starters/dev-server.ts 3301", + "pnpm node --require ./scripts/runBefore.ts starters/dev-server.ts 3301", port: 3301, reuseExistingServer: !process.env.CI, }, diff --git a/tsconfig.json b/tsconfig.json index 1d329b9aedf..0b39c025cac 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -37,13 +37,11 @@ "packages/create-qwik", "packages/supabase-auth-helpers-qwik", "packages/qwik-react/src", - "scripts", "starters/apps/sandbox", "starters/apps/todo-test", "starters/apps/e2e", "starters/apps/qwikrouter-test/**/*", "starters/apps/qwikrouter-test.prod/**/*", - "starters/dev-server.ts", "packages/qwik-react/vite", "@types/deno.d.ts", "@types/bun.d.ts", @@ -54,6 +52,7 @@ "packages/create-qwik/dist", "packages/qwik/src", "packages/*/lib", - "scripts/eslint-docs.ts" + "scripts", + "starters/dev-server.ts" ] } diff --git a/tsconfig.scripts.json b/tsconfig.scripts.json new file mode 100644 index 00000000000..2e6310ce32f --- /dev/null +++ b/tsconfig.scripts.json @@ -0,0 +1,12 @@ +{ + "extends": "./tsconfig.json", + "compilerOptions": { + "noEmit": true, + "allowImportingTsExtensions": true, + "outDir": null, + "declarationDir": null, + "declaration": false + }, + "include": ["scripts", "starters/dev-server.ts"], + "exclude": [] +}