diff --git a/.github/contributing.md b/.github/contributing.md index 6439f123982..2554582b887 100644 --- a/.github/contributing.md +++ b/.github/contributing.md @@ -236,7 +236,7 @@ Tests that test against source code are grouped under `nr test-unit`, while test ### `nr test-dts` -Runs `nr build-dts` first, then verify the type tests in `packages/dts-test` are working correctly against the actual built type declarations. +Runs `nr build-dts` first, then verify the type tests in `packages-private/dts-test` are working correctly against the actual built type declarations. ## Project Structure @@ -335,7 +335,7 @@ Test coverage is continuously deployed at https://coverage.vuejs.org. PRs that i ### Testing Type Definition Correctness -Type tests are located in the `packages/dts-test` directory. To run the dts tests, run `nr test-dts`. Note that the type test requires all relevant `*.d.ts` files to be built first (and the script does it for you). Once the `d.ts` files are built and up-to-date, the tests can be re-run by running `nr test-dts-only`. +Type tests are located in the `packages-private/dts-test` directory. To run the dts tests, run `nr test-dts`. Note that the type test requires all relevant `*.d.ts` files to be built first (and the script does it for you). Once the `d.ts` files are built and up-to-date, the tests can be re-run by running `nr test-dts-only`. ## Financial Contribution diff --git a/.github/renovate.json5 b/.github/renovate.json5 index e9724bb5aa6..6acc5da248e 100644 --- a/.github/renovate.json5 +++ b/.github/renovate.json5 @@ -17,8 +17,8 @@ { groupName: 'playground', matchFileNames: [ - 'packages/sfc-playground/package.json', - 'packages/template-explorer/package.json', + 'packages-private/sfc-playground/package.json', + 'packages-private/template-explorer/package.json', ], }, { diff --git a/eslint.config.js b/eslint.config.js index 334787fd988..2e752e19107 100644 --- a/eslint.config.js +++ b/eslint.config.js @@ -76,7 +76,11 @@ export default tseslint.config( // tests, no restrictions (runs in Node / Vitest with jsdom) { - files: ['**/__tests__/**', 'packages/dts-test/**'], + files: [ + '**/__tests__/**', + 'packages-private/dts-test/**', + 'packages-private/dts-build-test/**', + ], plugins: { vitest }, languageOptions: { globals: { @@ -119,7 +123,10 @@ export default tseslint.config( // Private package, browser only + no syntax restrictions { - files: ['packages/template-explorer/**', 'packages/sfc-playground/**'], + files: [ + 'packages-private/template-explorer/**', + 'packages-private/sfc-playground/**', + ], rules: { 'no-restricted-globals': ['error', ...NodeGlobals], 'no-restricted-syntax': ['error', banConstEnum], diff --git a/package.json b/package.json index 7f5b3f5988b..82055fbd478 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "test-unit": "vitest -c vitest.unit.config.ts", "test-e2e": "node scripts/build.js vue -f global -d && vitest -c vitest.e2e.config.ts", "test-dts": "run-s build-dts test-dts-only", - "test-dts-only": "tsc -p packages/dts-built-test/tsconfig.json && tsc -p ./packages/dts-test/tsconfig.test.json", + "test-dts-only": "tsc -p packages-private/dts-built-test/tsconfig.json && tsc -p ./packages-private/dts-test/tsconfig.test.json", "test-coverage": "vitest -c vitest.unit.config.ts --coverage", "test-bench": "vitest bench", "release": "node scripts/release.js", @@ -29,7 +29,7 @@ "dev-compiler": "run-p \"dev template-explorer\" serve", "dev-sfc": "run-s dev-sfc-prepare dev-sfc-run", "dev-sfc-prepare": "node scripts/pre-dev-sfc.js || npm run build-all-cjs", - "dev-sfc-serve": "vite packages/sfc-playground --host", + "dev-sfc-serve": "vite packages-private/sfc-playground --host", "dev-sfc-run": "run-p \"dev compiler-sfc -f esm-browser\" \"dev vue -if esm-bundler-runtime\" \"dev vue -ipf esm-browser-runtime\" \"dev server-renderer -if esm-bundler\" dev-sfc-serve", "serve": "serve", "open": "open http://localhost:3000/packages/template-explorer/local.html", @@ -38,7 +38,7 @@ "build-runtime-esm": "node scripts/build.js runtime reactivity shared -af esm-bundler && node scripts/build.js vue -f esm-bundler-runtime && node scripts/build.js vue -f esm-browser-runtime", "build-browser-esm": "node scripts/build.js runtime reactivity shared -af esm-bundler && node scripts/build.js vue -f esm-bundler && node scripts/build.js vue -f esm-browser", "build-ssr-esm": "node scripts/build.js compiler-sfc server-renderer -f esm-browser", - "build-sfc-playground-self": "cd packages/sfc-playground && npm run build", + "build-sfc-playground-self": "cd packages-private/sfc-playground && npm run build", "preinstall": "npx only-allow pnpm", "postinstall": "simple-git-hooks" }, diff --git a/packages/dts-built-test/README.md b/packages-private/dts-built-test/README.md similarity index 65% rename from packages/dts-built-test/README.md rename to packages-private/dts-built-test/README.md index 8191d66e32e..5c14f2190cc 100644 --- a/packages/dts-built-test/README.md +++ b/packages-private/dts-built-test/README.md @@ -2,4 +2,4 @@ This package is private and for testing only. It is used to verify edge cases for external libraries that build their types using Vue core types - e.g. Vuetify as in [#8376](https://github.com/vuejs/core/issues/8376). -When running the `build-dts` task, this package's types are built alongside other packages. Then, during `test-dts-only` it is imported and used in [`packages/dts-test/built.test-d.ts`](https://github.com/vuejs/core/blob/main/packages/dts-test/built.test-d.ts) to verify that the built types work correctly. +When running the `build-dts` task, this package's types are built alongside other packages. Then, during `test-dts-only` it is imported and used in [`packages-private/dts-test/built.test-d.ts`](https://github.com/vuejs/core/blob/main/packages-private/dts-test/built.test-d.ts) to verify that the built types work correctly. diff --git a/packages/dts-built-test/package.json b/packages-private/dts-built-test/package.json similarity index 85% rename from packages/dts-built-test/package.json rename to packages-private/dts-built-test/package.json index dd81cab68d6..ffcaa4a676a 100644 --- a/packages/dts-built-test/package.json +++ b/packages-private/dts-built-test/package.json @@ -1,5 +1,5 @@ { - "name": "@vue/dts-built-test", + "name": "dts-built-test", "private": true, "version": "0.0.0", "types": "dist/index.d.ts", diff --git a/packages/dts-built-test/src/index.ts b/packages-private/dts-built-test/src/index.ts similarity index 100% rename from packages/dts-built-test/src/index.ts rename to packages-private/dts-built-test/src/index.ts diff --git a/packages/dts-built-test/tsconfig.json b/packages-private/dts-built-test/tsconfig.json similarity index 100% rename from packages/dts-built-test/tsconfig.json rename to packages-private/dts-built-test/tsconfig.json diff --git a/packages/dts-test/README.md b/packages-private/dts-test/README.md similarity index 52% rename from packages/dts-test/README.md rename to packages-private/dts-test/README.md index 6f1b1da1d0e..075fc3431cd 100644 --- a/packages/dts-test/README.md +++ b/packages-private/dts-test/README.md @@ -4,4 +4,4 @@ Tests TypeScript types to ensure the types remain as expected. - This directory is included in the root `tsconfig.json`, where package imports are aliased to `src` directories, so in IDEs and the `pnpm check` script the types are validated against source code. -- When running `tsc` with `packages/dts-test/tsconfig.test.json`, packages are resolved using normal `node` resolution, so the types are validated against actual **built** types. This requires the types to be built first via `pnpm build-types`. +- When running `tsc` with `packages-private/dts-test/tsconfig.test.json`, packages are resolved using normal `node` resolution, so the types are validated against actual **built** types. This requires the types to be built first via `pnpm build-dts`. diff --git a/packages/dts-test/appDirective.test-d.ts b/packages-private/dts-test/appDirective.test-d.ts similarity index 100% rename from packages/dts-test/appDirective.test-d.ts rename to packages-private/dts-test/appDirective.test-d.ts diff --git a/packages/dts-test/appUse.test-d.ts b/packages-private/dts-test/appUse.test-d.ts similarity index 100% rename from packages/dts-test/appUse.test-d.ts rename to packages-private/dts-test/appUse.test-d.ts diff --git a/packages/dts-test/built.test-d.ts b/packages-private/dts-test/built.test-d.ts similarity index 82% rename from packages/dts-test/built.test-d.ts rename to packages-private/dts-test/built.test-d.ts index ebff2955cfb..c2b4fb6d839 100644 --- a/packages/dts-test/built.test-d.ts +++ b/packages-private/dts-test/built.test-d.ts @@ -1,4 +1,4 @@ -import { CustomPropsNotErased } from '@vue/dts-built-test' +import { CustomPropsNotErased } from 'dts-built-test/src/index' import { describe, expectType } from './utils' declare module 'vue' { diff --git a/packages/dts-test/compiler.test-d.ts b/packages-private/dts-test/compiler.test-d.ts similarity index 100% rename from packages/dts-test/compiler.test-d.ts rename to packages-private/dts-test/compiler.test-d.ts diff --git a/packages/dts-test/component.test-d.ts b/packages-private/dts-test/component.test-d.ts similarity index 100% rename from packages/dts-test/component.test-d.ts rename to packages-private/dts-test/component.test-d.ts diff --git a/packages/dts-test/componentInstance.test-d.tsx b/packages-private/dts-test/componentInstance.test-d.tsx similarity index 100% rename from packages/dts-test/componentInstance.test-d.tsx rename to packages-private/dts-test/componentInstance.test-d.tsx diff --git a/packages/dts-test/componentTypeExtensions.test-d.tsx b/packages-private/dts-test/componentTypeExtensions.test-d.tsx similarity index 100% rename from packages/dts-test/componentTypeExtensions.test-d.tsx rename to packages-private/dts-test/componentTypeExtensions.test-d.tsx diff --git a/packages/dts-test/defineComponent.test-d.tsx b/packages-private/dts-test/defineComponent.test-d.tsx similarity index 100% rename from packages/dts-test/defineComponent.test-d.tsx rename to packages-private/dts-test/defineComponent.test-d.tsx diff --git a/packages/dts-test/defineCustomElement.test-d.ts b/packages-private/dts-test/defineCustomElement.test-d.ts similarity index 100% rename from packages/dts-test/defineCustomElement.test-d.ts rename to packages-private/dts-test/defineCustomElement.test-d.ts diff --git a/packages/dts-test/extractProps.test-d.ts b/packages-private/dts-test/extractProps.test-d.ts similarity index 100% rename from packages/dts-test/extractProps.test-d.ts rename to packages-private/dts-test/extractProps.test-d.ts diff --git a/packages/dts-test/functionalComponent.test-d.tsx b/packages-private/dts-test/functionalComponent.test-d.tsx similarity index 100% rename from packages/dts-test/functionalComponent.test-d.tsx rename to packages-private/dts-test/functionalComponent.test-d.tsx diff --git a/packages/dts-test/h.test-d.ts b/packages-private/dts-test/h.test-d.ts similarity index 100% rename from packages/dts-test/h.test-d.ts rename to packages-private/dts-test/h.test-d.ts diff --git a/packages/dts-test/inject.test-d.ts b/packages-private/dts-test/inject.test-d.ts similarity index 100% rename from packages/dts-test/inject.test-d.ts rename to packages-private/dts-test/inject.test-d.ts diff --git a/packages/dts-test/package.json b/packages-private/dts-test/package.json similarity index 74% rename from packages/dts-test/package.json rename to packages-private/dts-test/package.json index a6ea96bfa86..72b1b6ea630 100644 --- a/packages/dts-test/package.json +++ b/packages-private/dts-test/package.json @@ -4,6 +4,6 @@ "version": "0.0.0", "dependencies": { "vue": "workspace:*", - "@vue/dts-built-test": "workspace:*" + "dts-built-test": "workspace:*" } } diff --git a/packages/dts-test/reactivity.test-d.ts b/packages-private/dts-test/reactivity.test-d.ts similarity index 100% rename from packages/dts-test/reactivity.test-d.ts rename to packages-private/dts-test/reactivity.test-d.ts diff --git a/packages/dts-test/ref.test-d.ts b/packages-private/dts-test/ref.test-d.ts similarity index 100% rename from packages/dts-test/ref.test-d.ts rename to packages-private/dts-test/ref.test-d.ts diff --git a/packages/dts-test/setupHelpers.test-d.ts b/packages-private/dts-test/setupHelpers.test-d.ts similarity index 100% rename from packages/dts-test/setupHelpers.test-d.ts rename to packages-private/dts-test/setupHelpers.test-d.ts diff --git a/packages/dts-test/tsconfig.test.json b/packages-private/dts-test/tsconfig.test.json similarity index 100% rename from packages/dts-test/tsconfig.test.json rename to packages-private/dts-test/tsconfig.test.json diff --git a/packages/dts-test/tsx.test-d.tsx b/packages-private/dts-test/tsx.test-d.tsx similarity index 100% rename from packages/dts-test/tsx.test-d.tsx rename to packages-private/dts-test/tsx.test-d.tsx diff --git a/packages/dts-test/utils.d.ts b/packages-private/dts-test/utils.d.ts similarity index 100% rename from packages/dts-test/utils.d.ts rename to packages-private/dts-test/utils.d.ts diff --git a/packages/dts-test/watch.test-d.ts b/packages-private/dts-test/watch.test-d.ts similarity index 100% rename from packages/dts-test/watch.test-d.ts rename to packages-private/dts-test/watch.test-d.ts diff --git a/packages/sfc-playground/README.md b/packages-private/sfc-playground/README.md similarity index 100% rename from packages/sfc-playground/README.md rename to packages-private/sfc-playground/README.md diff --git a/packages/sfc-playground/index.html b/packages-private/sfc-playground/index.html similarity index 100% rename from packages/sfc-playground/index.html rename to packages-private/sfc-playground/index.html diff --git a/packages/sfc-playground/package.json b/packages-private/sfc-playground/package.json similarity index 90% rename from packages/sfc-playground/package.json rename to packages-private/sfc-playground/package.json index 9d38811c769..b43247e9cb9 100644 --- a/packages/sfc-playground/package.json +++ b/packages-private/sfc-playground/package.json @@ -9,7 +9,7 @@ "serve": "vite preview" }, "devDependencies": { - "@vitejs/plugin-vue": "^5.1.2", + "@vitejs/plugin-vue": "catalog:", "vite": "catalog:" }, "dependencies": { diff --git a/packages/sfc-playground/public/logo.svg b/packages-private/sfc-playground/public/logo.svg similarity index 100% rename from packages/sfc-playground/public/logo.svg rename to packages-private/sfc-playground/public/logo.svg diff --git a/packages/sfc-playground/src/App.vue b/packages-private/sfc-playground/src/App.vue similarity index 100% rename from packages/sfc-playground/src/App.vue rename to packages-private/sfc-playground/src/App.vue diff --git a/packages/sfc-playground/src/Header.vue b/packages-private/sfc-playground/src/Header.vue similarity index 98% rename from packages/sfc-playground/src/Header.vue rename to packages-private/sfc-playground/src/Header.vue index 8e810d89441..922a2b111ac 100644 --- a/packages/sfc-playground/src/Header.vue +++ b/packages-private/sfc-playground/src/Header.vue @@ -125,7 +125,7 @@ function toggleDark() { { - const filePath = path.resolve(__dirname, file) + const filePath = path.resolve(__dirname, '../../packages', file) const basename = path.basename(file) if (!fs.existsSync(filePath)) { throw new Error( @@ -49,11 +49,11 @@ function copyVuePlugin(): Plugin { }) } - copyFile(`../vue/dist/vue.esm-browser.js`) - copyFile(`../vue/dist/vue.esm-browser.prod.js`) - copyFile(`../vue/dist/vue.runtime.esm-browser.js`) - copyFile(`../vue/dist/vue.runtime.esm-browser.prod.js`) - copyFile(`../server-renderer/dist/server-renderer.esm-browser.js`) + copyFile(`vue/dist/vue.esm-browser.js`) + copyFile(`vue/dist/vue.esm-browser.prod.js`) + copyFile(`vue/dist/vue.runtime.esm-browser.js`) + copyFile(`vue/dist/vue.runtime.esm-browser.prod.js`) + copyFile(`server-renderer/dist/server-renderer.esm-browser.js`) }, } } diff --git a/packages/template-explorer/README.md b/packages-private/template-explorer/README.md similarity index 100% rename from packages/template-explorer/README.md rename to packages-private/template-explorer/README.md diff --git a/packages/template-explorer/_redirects b/packages-private/template-explorer/_redirects similarity index 100% rename from packages/template-explorer/_redirects rename to packages-private/template-explorer/_redirects diff --git a/packages/template-explorer/index.html b/packages-private/template-explorer/index.html similarity index 100% rename from packages/template-explorer/index.html rename to packages-private/template-explorer/index.html diff --git a/packages/template-explorer/local.html b/packages-private/template-explorer/local.html similarity index 100% rename from packages/template-explorer/local.html rename to packages-private/template-explorer/local.html diff --git a/packages/template-explorer/package.json b/packages-private/template-explorer/package.json similarity index 100% rename from packages/template-explorer/package.json rename to packages-private/template-explorer/package.json diff --git a/packages/template-explorer/src/index.ts b/packages-private/template-explorer/src/index.ts similarity index 100% rename from packages/template-explorer/src/index.ts rename to packages-private/template-explorer/src/index.ts diff --git a/packages/template-explorer/src/options.ts b/packages-private/template-explorer/src/options.ts similarity index 100% rename from packages/template-explorer/src/options.ts rename to packages-private/template-explorer/src/options.ts diff --git a/packages/template-explorer/src/theme.ts b/packages-private/template-explorer/src/theme.ts similarity index 100% rename from packages/template-explorer/src/theme.ts rename to packages-private/template-explorer/src/theme.ts diff --git a/packages/template-explorer/style.css b/packages-private/template-explorer/style.css similarity index 100% rename from packages/template-explorer/style.css rename to packages-private/template-explorer/style.css diff --git a/packages-private/vite-debug/App.vue b/packages-private/vite-debug/App.vue new file mode 100644 index 00000000000..95b3be8eee5 --- /dev/null +++ b/packages-private/vite-debug/App.vue @@ -0,0 +1,15 @@ + + + + + diff --git a/packages-private/vite-debug/README.md b/packages-private/vite-debug/README.md new file mode 100644 index 00000000000..4f035ae6f8d --- /dev/null +++ b/packages-private/vite-debug/README.md @@ -0,0 +1 @@ +This package is used for debugging issues that are related to `@vitejs/plugin-vue`, or can only be reproduced in a Vite-based setup. It aims to be as close to production as possible so Vue packages are resolved to the dist files instead of source. diff --git a/packages-private/vite-debug/index.html b/packages-private/vite-debug/index.html new file mode 100644 index 00000000000..79052a023ba --- /dev/null +++ b/packages-private/vite-debug/index.html @@ -0,0 +1,2 @@ + +
diff --git a/packages-private/vite-debug/main.ts b/packages-private/vite-debug/main.ts new file mode 100644 index 00000000000..52668a0a545 --- /dev/null +++ b/packages-private/vite-debug/main.ts @@ -0,0 +1,6 @@ +import { createApp } from 'vue' +import App from './App.vue' + +const app = createApp(App) + +app.mount('#app') diff --git a/packages-private/vite-debug/package.json b/packages-private/vite-debug/package.json new file mode 100644 index 00000000000..b0f2bad2b2d --- /dev/null +++ b/packages-private/vite-debug/package.json @@ -0,0 +1,15 @@ +{ + "name": "vite-debug", + "private": true, + "type": "module", + "scripts": { + "dev": "vite", + "build": "vite build", + "serve": "vite preview" + }, + "devDependencies": { + "@vitejs/plugin-vue": "catalog:", + "vite": "catalog:", + "vue": "workspace:*" + } +} diff --git a/packages-private/vite-debug/tsconfig.json b/packages-private/vite-debug/tsconfig.json new file mode 100644 index 00000000000..ceecb1cde14 --- /dev/null +++ b/packages-private/vite-debug/tsconfig.json @@ -0,0 +1,7 @@ +{ + "compilerOptions": { + "module": "esnext", + "moduleResolution": "bundler" + }, + "include": ["./*"] +} diff --git a/packages-private/vite-debug/vite.config.ts b/packages-private/vite-debug/vite.config.ts new file mode 100644 index 00000000000..c40aa3c361b --- /dev/null +++ b/packages-private/vite-debug/vite.config.ts @@ -0,0 +1,6 @@ +import { defineConfig } from 'vite' +import vue from '@vitejs/plugin-vue' + +export default defineConfig({ + plugins: [vue()], +}) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5bd49010454..1d4b40652b4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -12,18 +12,21 @@ catalogs: '@babel/types': specifier: ^7.24.7 version: 7.24.7 + '@vitejs/plugin-vue': + specifier: ^5.1.2 + version: 5.1.2 estree-walker: specifier: ^2.0.2 version: 2.0.2 magic-string: specifier: ^0.30.10 - version: 0.30.10 + version: 0.30.11 source-map-js: specifier: ^1.2.0 version: 1.2.0 vite: - specifier: ^5.3.3 - version: 5.3.3 + specifier: ^5.4.0 + version: 5.4.0 importers: @@ -169,11 +172,75 @@ importers: version: 8.0.0(eslint@9.8.0)(typescript@5.4.5) vite: specifier: 'catalog:' - version: 5.3.3(@types/node@20.14.14)(sass@1.77.8)(terser@5.31.1) + version: 5.4.0(@types/node@20.14.14)(sass@1.77.8)(terser@5.31.1) vitest: specifier: ^1.6.0 version: 1.6.0(@types/node@20.14.14)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.1) + packages-private/dts-built-test: + dependencies: + '@vue/reactivity': + specifier: workspace:* + version: link:../../packages/reactivity + '@vue/shared': + specifier: workspace:* + version: link:../../packages/shared + vue: + specifier: workspace:* + version: link:../../packages/vue + + packages-private/dts-test: + dependencies: + dts-built-test: + specifier: workspace:* + version: link:../dts-built-test + vue: + specifier: workspace:* + version: link:../../packages/vue + + packages-private/sfc-playground: + dependencies: + '@vue/repl': + specifier: ^4.3.1 + version: 4.3.1 + file-saver: + specifier: ^2.0.5 + version: 2.0.5 + jszip: + specifier: ^3.10.1 + version: 3.10.1 + vue: + specifier: workspace:* + version: link:../../packages/vue + devDependencies: + '@vitejs/plugin-vue': + specifier: 'catalog:' + version: 5.1.2(vite@5.4.0(@types/node@20.14.14)(sass@1.77.8)(terser@5.31.1))(vue@packages+vue) + vite: + specifier: 'catalog:' + version: 5.4.0(@types/node@20.14.14)(sass@1.77.8)(terser@5.31.1) + + packages-private/template-explorer: + dependencies: + monaco-editor: + specifier: ^0.50.0 + version: 0.50.0 + source-map-js: + specifier: ^1.2.0 + version: 1.2.0 + + packages-private/vite-debug: + devDependencies: + '@vitejs/plugin-vue': + specifier: 'catalog:' + version: 5.1.2(vite@5.4.0(@types/node@20.14.14)(sass@1.77.8)(terser@5.31.1))(vue@packages+vue) + vite: + specifier: 'catalog:' + version: 5.4.0(@types/node@20.14.14)(sass@1.77.8)(terser@5.31.1) + vue: + specifier: workspace:* + version: link:../../packages/vue + packages/compiler-core: dependencies: '@babel/parser': @@ -227,7 +294,7 @@ importers: version: 2.0.2 magic-string: specifier: 'catalog:' - version: 0.30.10 + version: 0.30.11 postcss: specifier: ^8.4.40 version: 8.4.40 @@ -275,27 +342,6 @@ importers: specifier: workspace:* version: link:../shared - packages/dts-built-test: - dependencies: - '@vue/reactivity': - specifier: workspace:* - version: link:../reactivity - '@vue/shared': - specifier: workspace:* - version: link:../shared - vue: - specifier: workspace:* - version: link:../vue - - packages/dts-test: - dependencies: - '@vue/dts-built-test': - specifier: workspace:* - version: link:../dts-built-test - vue: - specifier: workspace:* - version: link:../vue - packages/reactivity: dependencies: '@vue/shared': @@ -347,39 +393,8 @@ importers: specifier: workspace:* version: link:../vue - packages/sfc-playground: - dependencies: - '@vue/repl': - specifier: ^4.3.1 - version: 4.3.1 - file-saver: - specifier: ^2.0.5 - version: 2.0.5 - jszip: - specifier: ^3.10.1 - version: 3.10.1 - vue: - specifier: workspace:* - version: link:../vue - devDependencies: - '@vitejs/plugin-vue': - specifier: ^5.1.2 - version: 5.1.2(vite@5.3.3(@types/node@20.14.14)(sass@1.77.8)(terser@5.31.1))(vue@packages+vue) - vite: - specifier: 'catalog:' - version: 5.3.3(@types/node@20.14.14)(sass@1.77.8)(terser@5.31.1) - packages/shared: {} - packages/template-explorer: - dependencies: - monaco-editor: - specifier: ^0.50.0 - version: 0.50.0 - source-map-js: - specifier: ^1.2.0 - version: 1.2.0 - packages/vue: dependencies: '@vue/compiler-dom': @@ -964,161 +979,81 @@ packages: rollup: optional: true - '@rollup/rollup-android-arm-eabi@4.18.0': - resolution: {integrity: sha512-Tya6xypR10giZV1XzxmH5wr25VcZSncG0pZIjfePT0OVBvqNEurzValetGNarVrGiq66EBVAFn15iYX4w6FKgQ==} - cpu: [arm] - os: [android] - '@rollup/rollup-android-arm-eabi@4.20.0': resolution: {integrity: sha512-TSpWzflCc4VGAUJZlPpgAJE1+V60MePDQnBd7PPkpuEmOy8i87aL6tinFGKBFKuEDikYpig72QzdT3QPYIi+oA==} cpu: [arm] os: [android] - '@rollup/rollup-android-arm64@4.18.0': - resolution: {integrity: sha512-avCea0RAP03lTsDhEyfy+hpfr85KfyTctMADqHVhLAF3MlIkq83CP8UfAHUssgXTYd+6er6PaAhx/QGv4L1EiA==} - cpu: [arm64] - os: [android] - '@rollup/rollup-android-arm64@4.20.0': resolution: {integrity: sha512-u00Ro/nok7oGzVuh/FMYfNoGqxU5CPWz1mxV85S2w9LxHR8OoMQBuSk+3BKVIDYgkpeOET5yXkx90OYFc+ytpQ==} cpu: [arm64] os: [android] - '@rollup/rollup-darwin-arm64@4.18.0': - resolution: {integrity: sha512-IWfdwU7KDSm07Ty0PuA/W2JYoZ4iTj3TUQjkVsO/6U+4I1jN5lcR71ZEvRh52sDOERdnNhhHU57UITXz5jC1/w==} - cpu: [arm64] - os: [darwin] - '@rollup/rollup-darwin-arm64@4.20.0': resolution: {integrity: sha512-uFVfvzvsdGtlSLuL0ZlvPJvl6ZmrH4CBwLGEFPe7hUmf7htGAN+aXo43R/V6LATyxlKVC/m6UsLb7jbG+LG39Q==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-x64@4.18.0': - resolution: {integrity: sha512-n2LMsUz7Ynu7DoQrSQkBf8iNrjOGyPLrdSg802vk6XT3FtsgX6JbE8IHRvposskFm9SNxzkLYGSq9QdpLYpRNA==} - cpu: [x64] - os: [darwin] - '@rollup/rollup-darwin-x64@4.20.0': resolution: {integrity: sha512-xbrMDdlev53vNXexEa6l0LffojxhqDTBeL+VUxuuIXys4x6xyvbKq5XqTXBCEUA8ty8iEJblHvFaWRJTk/icAQ==} cpu: [x64] os: [darwin] - '@rollup/rollup-linux-arm-gnueabihf@4.18.0': - resolution: {integrity: sha512-C/zbRYRXFjWvz9Z4haRxcTdnkPt1BtCkz+7RtBSuNmKzMzp3ZxdM28Mpccn6pt28/UWUCTXa+b0Mx1k3g6NOMA==} - cpu: [arm] - os: [linux] - '@rollup/rollup-linux-arm-gnueabihf@4.20.0': resolution: {integrity: sha512-jMYvxZwGmoHFBTbr12Xc6wOdc2xA5tF5F2q6t7Rcfab68TT0n+r7dgawD4qhPEvasDsVpQi+MgDzj2faOLsZjA==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm-musleabihf@4.18.0': - resolution: {integrity: sha512-l3m9ewPgjQSXrUMHg93vt0hYCGnrMOcUpTz6FLtbwljo2HluS4zTXFy2571YQbisTnfTKPZ01u/ukJdQTLGh9A==} - cpu: [arm] - os: [linux] - '@rollup/rollup-linux-arm-musleabihf@4.20.0': resolution: {integrity: sha512-1asSTl4HKuIHIB1GcdFHNNZhxAYEdqML/MW4QmPS4G0ivbEcBr1JKlFLKsIRqjSwOBkdItn3/ZDlyvZ/N6KPlw==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.18.0': - resolution: {integrity: sha512-rJ5D47d8WD7J+7STKdCUAgmQk49xuFrRi9pZkWoRD1UeSMakbcepWXPF8ycChBoAqs1pb2wzvbY6Q33WmN2ftw==} - cpu: [arm64] - os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.20.0': resolution: {integrity: sha512-COBb8Bkx56KldOYJfMf6wKeYJrtJ9vEgBRAOkfw6Ens0tnmzPqvlpjZiLgkhg6cA3DGzCmLmmd319pmHvKWWlQ==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.18.0': - resolution: {integrity: sha512-be6Yx37b24ZwxQ+wOQXXLZqpq4jTckJhtGlWGZs68TgdKXJgw54lUUoFYrg6Zs/kjzAQwEwYbp8JxZVzZLRepQ==} - cpu: [arm64] - os: [linux] - '@rollup/rollup-linux-arm64-musl@4.20.0': resolution: {integrity: sha512-+it+mBSyMslVQa8wSPvBx53fYuZK/oLTu5RJoXogjk6x7Q7sz1GNRsXWjn6SwyJm8E/oMjNVwPhmNdIjwP135Q==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-powerpc64le-gnu@4.18.0': - resolution: {integrity: sha512-hNVMQK+qrA9Todu9+wqrXOHxFiD5YmdEi3paj6vP02Kx1hjd2LLYR2eaN7DsEshg09+9uzWi2W18MJDlG0cxJA==} - cpu: [ppc64] - os: [linux] - '@rollup/rollup-linux-powerpc64le-gnu@4.20.0': resolution: {integrity: sha512-yAMvqhPfGKsAxHN8I4+jE0CpLWD8cv4z7CK7BMmhjDuz606Q2tFKkWRY8bHR9JQXYcoLfopo5TTqzxgPUjUMfw==} cpu: [ppc64] os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.18.0': - resolution: {integrity: sha512-ROCM7i+m1NfdrsmvwSzoxp9HFtmKGHEqu5NNDiZWQtXLA8S5HBCkVvKAxJ8U+CVctHwV2Gb5VUaK7UAkzhDjlg==} - cpu: [riscv64] - os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.20.0': resolution: {integrity: sha512-qmuxFpfmi/2SUkAw95TtNq/w/I7Gpjurx609OOOV7U4vhvUhBcftcmXwl3rqAek+ADBwSjIC4IVNLiszoj3dPA==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.18.0': - resolution: {integrity: sha512-0UyyRHyDN42QL+NbqevXIIUnKA47A+45WyasO+y2bGJ1mhQrfrtXUpTxCOrfxCR4esV3/RLYyucGVPiUsO8xjg==} - cpu: [s390x] - os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.20.0': resolution: {integrity: sha512-I0BtGXddHSHjV1mqTNkgUZLnS3WtsqebAXv11D5BZE/gfw5KoyXSAXVqyJximQXNvNzUo4GKlCK/dIwXlz+jlg==} cpu: [s390x] os: [linux] - '@rollup/rollup-linux-x64-gnu@4.18.0': - resolution: {integrity: sha512-xuglR2rBVHA5UsI8h8UbX4VJ470PtGCf5Vpswh7p2ukaqBGFTnsfzxUBetoWBWymHMxbIG0Cmx7Y9qDZzr648w==} - cpu: [x64] - os: [linux] - '@rollup/rollup-linux-x64-gnu@4.20.0': resolution: {integrity: sha512-y+eoL2I3iphUg9tN9GB6ku1FA8kOfmF4oUEWhztDJ4KXJy1agk/9+pejOuZkNFhRwHAOxMsBPLbXPd6mJiCwew==} cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-musl@4.18.0': - resolution: {integrity: sha512-LKaqQL9osY/ir2geuLVvRRs+utWUNilzdE90TpyoX0eNqPzWjRm14oMEE+YLve4k/NAqCdPkGYDaDF5Sw+xBfg==} - cpu: [x64] - os: [linux] - '@rollup/rollup-linux-x64-musl@4.20.0': resolution: {integrity: sha512-hM3nhW40kBNYUkZb/r9k2FKK+/MnKglX7UYd4ZUy5DJs8/sMsIbqWK2piZtVGE3kcXVNj3B2IrUYROJMMCikNg==} cpu: [x64] os: [linux] - '@rollup/rollup-win32-arm64-msvc@4.18.0': - resolution: {integrity: sha512-7J6TkZQFGo9qBKH0pk2cEVSRhJbL6MtfWxth7Y5YmZs57Pi+4x6c2dStAUvaQkHQLnEQv1jzBUW43GvZW8OFqA==} - cpu: [arm64] - os: [win32] - '@rollup/rollup-win32-arm64-msvc@4.20.0': resolution: {integrity: sha512-psegMvP+Ik/Bg7QRJbv8w8PAytPA7Uo8fpFjXyCRHWm6Nt42L+JtoqH8eDQ5hRP7/XW2UiIriy1Z46jf0Oa1kA==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.18.0': - resolution: {integrity: sha512-Txjh+IxBPbkUB9+SXZMpv+b/vnTEtFyfWZgJ6iyCmt2tdx0OF5WhFowLmnh8ENGNpfUlUZkdI//4IEmhwPieNg==} - cpu: [ia32] - os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.20.0': resolution: {integrity: sha512-GabekH3w4lgAJpVxkk7hUzUf2hICSQO0a/BLFA11/RMxQT92MabKAqyubzDZmMOC/hcJNlc+rrypzNzYl4Dx7A==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.18.0': - resolution: {integrity: sha512-UOo5FdvOL0+eIVTgS4tIdbW+TtnBLWg1YBCcU2KWM7nuNwRz9bksDX1bekJJCpu25N1DVWaCwnT39dVQxzqS8g==} - cpu: [x64] - os: [win32] - '@rollup/rollup-win32-x64-msvc@4.20.0': resolution: {integrity: sha512-aJ1EJSuTdGnM6qbVC4B5DSmozPTqIag9fSzXRNNo+humQLG89XpPgdt16Ia56ORD7s+H8Pmyx44uczDQ0yDzpg==} cpu: [x64] @@ -2582,9 +2517,6 @@ packages: resolution: {integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==} engines: {node: '>=12'} - magic-string@0.30.10: - resolution: {integrity: sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==} - magic-string@0.30.11: resolution: {integrity: sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==} @@ -3103,11 +3035,6 @@ packages: peerDependencies: rollup: ^1.20.0 || ^2.0.0 || ^3.0.0 || ^4.0.0 - rollup@4.18.0: - resolution: {integrity: sha512-QmJz14PX3rzbJCN1SG4Xe/bAAX2a6NpCP8ab2vfu2GiUr8AQcr2nCV/oEO3yneFarB67zk8ShlIyWb2LGTb3Sg==} - engines: {node: '>=18.0.0', npm: '>=8.0.0'} - hasBin: true - rollup@4.20.0: resolution: {integrity: sha512-6rbWBChcnSGzIlXeIdNIZTopKYad8ZG8ajhl78lGRLsI2rX8IkaotQhVas2Ma+GPxJav19wrSzvRvuiv0YKzWw==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} @@ -3488,8 +3415,8 @@ packages: engines: {node: ^18.0.0 || >=20.0.0} hasBin: true - vite@5.3.3: - resolution: {integrity: sha512-NPQdeCU0Dv2z5fu+ULotpuq5yfCS1BzKUIPhNbP3YBfAMGJXbt2nS+sbTFu+qchaqWTD+H3JK++nRwr6XIcp6A==} + vite@5.4.0: + resolution: {integrity: sha512-5xokfMX0PIiwCMCMb9ZJcMyh5wbBun0zUzKib+L65vAZ8GY9ePZMXxFrHbr/Kyll2+LSCY7xtERPpxkBDKngwg==} engines: {node: ^18.0.0 || >=20.0.0} hasBin: true peerDependencies: @@ -3497,6 +3424,7 @@ packages: less: '*' lightningcss: ^1.21.0 sass: '*' + sass-embedded: '*' stylus: '*' sugarss: '*' terser: ^5.4.0 @@ -3509,6 +3437,8 @@ packages: optional: true sass: optional: true + sass-embedded: + optional: true stylus: optional: true sugarss: @@ -4113,99 +4043,51 @@ snapshots: optionalDependencies: rollup: 4.20.0 - '@rollup/rollup-android-arm-eabi@4.18.0': - optional: true - '@rollup/rollup-android-arm-eabi@4.20.0': optional: true - '@rollup/rollup-android-arm64@4.18.0': - optional: true - '@rollup/rollup-android-arm64@4.20.0': optional: true - '@rollup/rollup-darwin-arm64@4.18.0': - optional: true - '@rollup/rollup-darwin-arm64@4.20.0': optional: true - '@rollup/rollup-darwin-x64@4.18.0': - optional: true - '@rollup/rollup-darwin-x64@4.20.0': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.18.0': - optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.20.0': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.18.0': - optional: true - '@rollup/rollup-linux-arm-musleabihf@4.20.0': optional: true - '@rollup/rollup-linux-arm64-gnu@4.18.0': - optional: true - '@rollup/rollup-linux-arm64-gnu@4.20.0': optional: true - '@rollup/rollup-linux-arm64-musl@4.18.0': - optional: true - '@rollup/rollup-linux-arm64-musl@4.20.0': optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.18.0': - optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.20.0': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.18.0': - optional: true - '@rollup/rollup-linux-riscv64-gnu@4.20.0': optional: true - '@rollup/rollup-linux-s390x-gnu@4.18.0': - optional: true - '@rollup/rollup-linux-s390x-gnu@4.20.0': optional: true - '@rollup/rollup-linux-x64-gnu@4.18.0': - optional: true - '@rollup/rollup-linux-x64-gnu@4.20.0': optional: true - '@rollup/rollup-linux-x64-musl@4.18.0': - optional: true - '@rollup/rollup-linux-x64-musl@4.20.0': optional: true - '@rollup/rollup-win32-arm64-msvc@4.18.0': - optional: true - '@rollup/rollup-win32-arm64-msvc@4.20.0': optional: true - '@rollup/rollup-win32-ia32-msvc@4.18.0': - optional: true - '@rollup/rollup-win32-ia32-msvc@4.20.0': optional: true - '@rollup/rollup-win32-x64-msvc@4.18.0': - optional: true - '@rollup/rollup-win32-x64-msvc@4.20.0': optional: true @@ -4441,9 +4323,9 @@ snapshots: '@typescript-eslint/types': 8.0.0 eslint-visitor-keys: 3.4.3 - '@vitejs/plugin-vue@5.1.2(vite@5.3.3(@types/node@20.14.14)(sass@1.77.8)(terser@5.31.1))(vue@packages+vue)': + '@vitejs/plugin-vue@5.1.2(vite@5.4.0(@types/node@20.14.14)(sass@1.77.8)(terser@5.31.1))(vue@packages+vue)': dependencies: - vite: 5.3.3(@types/node@20.14.14)(sass@1.77.8)(terser@5.31.1) + vite: 5.4.0(@types/node@20.14.14)(sass@1.77.8)(terser@5.31.1) vue: link:packages/vue '@vitest/coverage-istanbul@1.6.0(vitest@1.6.0(@types/node@20.14.14)(jsdom@24.1.1)(sass@1.77.8)(terser@5.31.1))': @@ -5809,10 +5691,6 @@ snapshots: lru-cache@7.18.3: {} - magic-string@0.30.10: - dependencies: - '@jridgewell/sourcemap-codec': 1.4.15 - magic-string@0.30.11: dependencies: '@jridgewell/sourcemap-codec': 1.5.0 @@ -6365,28 +6243,6 @@ snapshots: '@rollup/plugin-inject': 5.0.5(rollup@4.20.0) rollup: 4.20.0 - rollup@4.18.0: - dependencies: - '@types/estree': 1.0.5 - optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.18.0 - '@rollup/rollup-android-arm64': 4.18.0 - '@rollup/rollup-darwin-arm64': 4.18.0 - '@rollup/rollup-darwin-x64': 4.18.0 - '@rollup/rollup-linux-arm-gnueabihf': 4.18.0 - '@rollup/rollup-linux-arm-musleabihf': 4.18.0 - '@rollup/rollup-linux-arm64-gnu': 4.18.0 - '@rollup/rollup-linux-arm64-musl': 4.18.0 - '@rollup/rollup-linux-powerpc64le-gnu': 4.18.0 - '@rollup/rollup-linux-riscv64-gnu': 4.18.0 - '@rollup/rollup-linux-s390x-gnu': 4.18.0 - '@rollup/rollup-linux-x64-gnu': 4.18.0 - '@rollup/rollup-linux-x64-musl': 4.18.0 - '@rollup/rollup-win32-arm64-msvc': 4.18.0 - '@rollup/rollup-win32-ia32-msvc': 4.18.0 - '@rollup/rollup-win32-x64-msvc': 4.18.0 - fsevents: 2.3.3 - rollup@4.20.0: dependencies: '@types/estree': 1.0.5 @@ -6778,22 +6634,23 @@ snapshots: debug: 4.3.5 pathe: 1.1.2 picocolors: 1.0.1 - vite: 5.3.3(@types/node@20.14.14)(sass@1.77.8)(terser@5.31.1) + vite: 5.4.0(@types/node@20.14.14)(sass@1.77.8)(terser@5.31.1) transitivePeerDependencies: - '@types/node' - less - lightningcss - sass + - sass-embedded - stylus - sugarss - supports-color - terser - vite@5.3.3(@types/node@20.14.14)(sass@1.77.8)(terser@5.31.1): + vite@5.4.0(@types/node@20.14.14)(sass@1.77.8)(terser@5.31.1): dependencies: esbuild: 0.21.5 postcss: 8.4.40 - rollup: 4.18.0 + rollup: 4.20.0 optionalDependencies: '@types/node': 20.14.14 fsevents: 2.3.3 @@ -6819,7 +6676,7 @@ snapshots: strip-literal: 2.1.0 tinybench: 2.8.0 tinypool: 0.8.4 - vite: 5.3.3(@types/node@20.14.14)(sass@1.77.8)(terser@5.31.1) + vite: 5.4.0(@types/node@20.14.14)(sass@1.77.8)(terser@5.31.1) vite-node: 1.6.0(@types/node@20.14.14)(sass@1.77.8)(terser@5.31.1) why-is-node-running: 2.2.2 optionalDependencies: @@ -6829,6 +6686,7 @@ snapshots: - less - lightningcss - sass + - sass-embedded - stylus - sugarss - supports-color diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index fc5da1b9d7b..10170d6ba21 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -1,5 +1,6 @@ packages: - 'packages/*' + - 'packages-private/*' catalog: '@babel/parser': ^7.24.7 @@ -7,4 +8,5 @@ catalog: 'estree-walker': ^2.0.2 'magic-string': ^0.30.10 'source-map-js': ^1.2.0 - 'vite': ^5.3.3 + 'vite': ^5.4.0 + '@vitejs/plugin-vue': ^5.1.2 diff --git a/rollup.config.js b/rollup.config.js index ff0da348826..8c29ad821ec 100644 --- a/rollup.config.js +++ b/rollup.config.js @@ -2,6 +2,7 @@ import assert from 'node:assert/strict' import { createRequire } from 'node:module' import { fileURLToPath } from 'node:url' +import fs from 'node:fs' import path from 'node:path' import replace from '@rollup/plugin-replace' import json from '@rollup/plugin-json' @@ -33,7 +34,11 @@ const __dirname = fileURLToPath(new URL('.', import.meta.url)) const masterVersion = require('./package.json').version const consolidatePkg = require('@vue/consolidate/package.json') -const packagesDir = path.resolve(__dirname, 'packages') +const privatePackages = fs.readdirSync('packages-private') +const pkgBase = privatePackages.includes(process.env.TARGET) + ? `packages-private` + : `packages` +const packagesDir = path.resolve(__dirname, pkgBase) const packageDir = path.resolve(packagesDir, process.env.TARGET) const resolve = (/** @type {string} */ p) => path.resolve(packageDir, p) diff --git a/scripts/build.js b/scripts/build.js index ec111a0387e..4a0aef64543 100644 --- a/scripts/build.js +++ b/scripts/build.js @@ -16,7 +16,7 @@ nr build core --formats cjs ``` */ -import fs from 'node:fs/promises' +import fs from 'node:fs' import { parseArgs } from 'node:util' import { existsSync, readFileSync } from 'node:fs' import path from 'node:path' @@ -84,7 +84,7 @@ const sizeDir = path.resolve('temp/size') run() async function run() { - if (writeSize) await fs.mkdir(sizeDir, { recursive: true }) + if (writeSize) fs.mkdirSync(sizeDir, { recursive: true }) const removeCache = scanEnums() try { const resolvedTargets = targets.length @@ -151,13 +151,18 @@ async function runParallel(maxConcurrency, source, iteratorFn) { return Promise.all(ret) } +const privatePackages = fs.readdirSync('packages-private') + /** * Builds the target. * @param {string} target - The target to build. * @returns {Promise} - A promise representing the build process. */ async function build(target) { - const pkgDir = path.resolve(`packages/${target}`) + const pkgBase = privatePackages.includes(target) + ? `packages-private` + : `packages` + const pkgDir = path.resolve(`${pkgBase}/${target}`) const pkg = JSON.parse(readFileSync(`${pkgDir}/package.json`, 'utf-8')) // if this is a full build (no specific targets), ignore private packages @@ -167,7 +172,7 @@ async function build(target) { // if building a specific format, do not remove dist. if (!formats && existsSync(`${pkgDir}/dist`)) { - await fs.rm(`${pkgDir}/dist`, { recursive: true }) + fs.rmSync(`${pkgDir}/dist`, { recursive: true }) } const env = @@ -232,7 +237,7 @@ async function checkFileSize(filePath) { if (!existsSync(filePath)) { return } - const file = await fs.readFile(filePath) + const file = fs.readFileSync(filePath) const fileName = path.basename(filePath) const gzipped = gzipSync(file) @@ -247,7 +252,7 @@ async function checkFileSize(filePath) { ) if (writeSize) - await fs.writeFile( + fs.writeFileSync( path.resolve(sizeDir, `${fileName}.json`), JSON.stringify({ file: fileName, diff --git a/scripts/utils.js b/scripts/utils.js index 056d95b7b09..3c92bf7bafb 100644 --- a/scripts/utils.js +++ b/scripts/utils.js @@ -6,19 +6,22 @@ import { spawn } from 'node:child_process' const require = createRequire(import.meta.url) -export const targets = fs.readdirSync('packages').filter(f => { - if ( - !fs.statSync(`packages/${f}`).isDirectory() || - !fs.existsSync(`packages/${f}/package.json`) - ) { - return false - } - const pkg = require(`../packages/${f}/package.json`) - if (pkg.private && !pkg.buildOptions) { - return false - } - return true -}) +export const targets = fs + .readdirSync('packages') + .filter(f => { + if ( + !fs.statSync(`packages/${f}`).isDirectory() || + !fs.existsSync(`packages/${f}/package.json`) + ) { + return false + } + const pkg = require(`../packages/${f}/package.json`) + if (pkg.private && !pkg.buildOptions) { + return false + } + return true + }) + .concat('template-explorer') /** * diff --git a/tsconfig.json b/tsconfig.json index 5c0dac9906e..7a6885e7ea4 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -30,12 +30,13 @@ "include": [ "packages/global.d.ts", "packages/*/src", + "packages-private/*/src", "packages/runtime-dom/types/jsx.d.ts", "packages/*/__tests__", - "packages/dts-test", + "packages-private/dts-test", "packages/vue/jsx-runtime", "scripts/*", "rollup.*.js" ], - "exclude": ["packages/sfc-playground/src/vue-dev-proxy*"] + "exclude": ["packages-private/sfc-playground/src/vue-dev-proxy*"] } diff --git a/vitest.config.ts b/vitest.config.ts index f63328ab480..598fe7596d5 100644 --- a/vitest.config.ts +++ b/vitest.config.ts @@ -39,7 +39,7 @@ export default defineConfig({ 'packages/runtime-dom/src/components/Transition*', // mostly entries 'packages/vue-compat/**', - 'packages/sfc-playground/**', + 'packages-private/**', 'scripts/**', ], },