From 90ae85317c758cd95dd0d50ae6bfea7b5c28ae47 Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 12:33:23 +0800 Subject: [PATCH 01/29] chore: engines node --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index af2b49b6c..43531f182 100644 --- a/package.json +++ b/package.json @@ -101,7 +101,7 @@ "vue-tsc": "catalog:" }, "engines": { - "node": ">=20.19.0", + "node": "^20.19.0 || ^22.13.0 || ^24.0.0", "pnpm": ">=10.0.0" }, "packageManager": "pnpm@10.32.1" From 1f0cda8aee5604586c63e4adb9a0474dc2e7628d Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 12:35:42 +0800 Subject: [PATCH 02/29] chore: update deps --- pnpm-lock.yaml | 73 +++++++++++++++++++++++++-------------------- pnpm-workspace.yaml | 4 +-- 2 files changed, 42 insertions(+), 35 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4854ae19e..a0670725e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -145,8 +145,8 @@ catalogs: specifier: ^4.2.6 version: 4.2.6 antdv-next: - specifier: ^1.1.3 - version: 1.1.3 + specifier: ^1.1.4 + version: 1.1.4 archiver: specifier: ^7.0.1 version: 7.0.1 @@ -379,8 +379,8 @@ catalogs: specifier: ^40.0.0 version: 40.0.0 stylelint-order: - specifier: ^8.1.0 - version: 8.1.0 + specifier: ^8.1.1 + version: 8.1.1 stylelint-scss: specifier: ^7.0.0 version: 7.0.0 @@ -729,7 +729,7 @@ importers: version: 14.2.1(vue@3.5.30(typescript@5.9.3)) antdv-next: specifier: 'catalog:' - version: 1.1.3(date-fns@4.1.0)(vue@3.5.30(typescript@5.9.3)) + version: 1.1.4(date-fns@4.1.0)(vue@3.5.30(typescript@5.9.3)) dayjs: specifier: 'catalog:' version: 1.11.20 @@ -1089,7 +1089,7 @@ importers: version: 5.0.1(stylelint@17.4.0(typescript@5.9.3)) stylelint-config-recess-order: specifier: 'catalog:' - version: 7.6.1(stylelint-order@8.1.0(stylelint@17.4.0(typescript@5.9.3)))(stylelint@17.4.0(typescript@5.9.3)) + version: 7.6.1(stylelint-order@8.1.1(stylelint@17.4.0(typescript@5.9.3)))(stylelint@17.4.0(typescript@5.9.3)) stylelint-scss: specifier: 'catalog:' version: 7.0.0(stylelint@17.4.0(typescript@5.9.3)) @@ -1120,7 +1120,7 @@ importers: version: 40.0.0(stylelint@17.4.0(typescript@5.9.3)) stylelint-order: specifier: 'catalog:' - version: 8.1.0(stylelint@17.4.0(typescript@5.9.3)) + version: 8.1.1(stylelint@17.4.0(typescript@5.9.3)) internal/node-utils: dependencies: @@ -3140,8 +3140,13 @@ packages: peerDependencies: '@csstools/css-tokenizer': ^4.0.0 - '@csstools/css-syntax-patches-for-csstree@1.1.0': - resolution: {integrity: sha512-H4tuz2nhWgNKLt1inYpoVCfbJbMwX/lQKp3g69rrrIMIYlFD9+zTykOKhNR8uGrAmbS/kT9n6hTFkmDkxLgeTA==} + '@csstools/css-syntax-patches-for-csstree@1.1.1': + resolution: {integrity: sha512-BvqN0AMWNAnLk9G8jnUT77D+mUbY/H2b3uDTvg2isJkHaOufUE2R3AOwxWo7VBQKT1lOdwdvorddo2B/lk64+w==} + peerDependencies: + css-tree: ^3.2.1 + peerDependenciesMeta: + css-tree: + optional: true '@csstools/css-tokenizer@4.0.0': resolution: {integrity: sha512-QxULHAm7cNu72w97JUNCBFODFaXpbDg+dP8b/oWFAZ2MTRppA3U00Y2L1HqaS4J6yBqxwa/Y3nMBaxVKbB/NsA==} @@ -5868,8 +5873,8 @@ packages: peerDependencies: vue: ^3.5.30 - antdv-next@1.1.3: - resolution: {integrity: sha512-ziS77lHL/EdiF6klFzo63WXWWF9SOMFwh1ZJWXpBvhY9RIpNFOau+BZKw+/HUHXF103bHSC0t7LWueMzm5BrIg==} + antdv-next@1.1.4: + resolution: {integrity: sha512-05I8Iha+r2rZ12JwDBIi3XkeDv6r97LOgU0Num0Xbefsb5l0nZUsizJ/SZRFwT1pcAWa9K59aCy6HeirB2sNJg==} anymatch@3.1.3: resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} @@ -6051,8 +6056,8 @@ packages: base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} - baseline-browser-mapping@2.10.7: - resolution: {integrity: sha512-1ghYO3HnxGec0TCGBXiDLVns4eCSx4zJpxnHrlqFQajmhfKMQBzUGDdkMK7fUW7PTHTeLf+j87aTuKuuwWzMGw==} + baseline-browser-mapping@2.10.8: + resolution: {integrity: sha512-PCLz/LXGBsNTErbtB6i5u4eLpHeMfi93aUv5duMmj6caNu6IphS4q6UevDnL36sZQv9lrP11dbPKGMaXPwMKfQ==} engines: {node: '>=6.0.0'} hasBin: true @@ -6172,8 +6177,8 @@ packages: caniuse-api@3.0.0: resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==} - caniuse-lite@1.0.30001778: - resolution: {integrity: sha512-PN7uxFL+ExFJO61aVmP1aIEG4i9whQd4eoSCebav62UwDyp5OHh06zN4jqKSMePVgxHifCw1QJxdRkA1Pisekg==} + caniuse-lite@1.0.30001779: + resolution: {integrity: sha512-U5og2PN7V4DMgF50YPNtnZJGWVLFjjsN3zb6uMT5VGYIewieDj1upwfuVNXf4Kor+89c3iCRJnSzMD5LmTvsfA==} ccount@2.0.1: resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} @@ -10254,8 +10259,8 @@ packages: peerDependencies: stylelint: ^17.0.0 - stylelint-order@8.1.0: - resolution: {integrity: sha512-ao2+VzToCqbAVGaEYEeSR2zNurvQx+86Kw1d0//kZDx3zlyjvb24dE4J0e4HQgOTruOwZpfaHHRtK58+lrsTAQ==} + stylelint-order@8.1.1: + resolution: {integrity: sha512-LqsEB6VggJuu5v10RtkrQsBObcdwBE7GuAOlwfc/LR3VL/w8UqKX2BOLIjhyGt0Gne/njo7gRNGiJAKhfmPMNw==} engines: {node: '>=20.19.0'} peerDependencies: stylelint: ^16.18.0 || ^17.0.0 @@ -10585,8 +10590,8 @@ packages: undici-types@7.18.2: resolution: {integrity: sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w==} - undici@7.24.2: - resolution: {integrity: sha512-P9J1HWYV/ajFr8uCqk5QixwiRKmB1wOamgS0e+o2Z4A44Ej2+thFVRLG/eA7qprx88XXhnV5Bl8LHXTURpzB3Q==} + undici@7.24.3: + resolution: {integrity: sha512-eJdUmK/Wrx2d+mnWWmwwLRyA7OQCkLap60sk3dOK4ViZR7DKwwptwuIvFBg2HaiP9ESaEdhtpSymQPvytpmkCA==} engines: {node: '>=20.18.1'} unenv@2.0.0-rc.24: @@ -12828,7 +12833,9 @@ snapshots: dependencies: '@csstools/css-tokenizer': 4.0.0 - '@csstools/css-syntax-patches-for-csstree@1.1.0': {} + '@csstools/css-syntax-patches-for-csstree@1.1.1(css-tree@3.2.1)': + optionalDependencies: + css-tree: 3.2.1 '@csstools/css-tokenizer@4.0.0': {} @@ -15326,7 +15333,7 @@ snapshots: vue-types: 3.0.2(vue@3.5.30(typescript@5.9.3)) warning: 4.0.3 - antdv-next@1.1.3(date-fns@4.1.0)(vue@3.5.30(typescript@5.9.3)): + antdv-next@1.1.4(date-fns@4.1.0)(vue@3.5.30(typescript@5.9.3)): dependencies: '@ant-design/colors': 7.2.1 '@ant-design/fast-color': 3.0.1 @@ -15481,7 +15488,7 @@ snapshots: autoprefixer@10.4.27(postcss@8.5.8): dependencies: browserslist: 4.28.1 - caniuse-lite: 1.0.30001778 + caniuse-lite: 1.0.30001779 fraction.js: 5.3.4 picocolors: 1.1.1 postcss: 8.5.8 @@ -15570,7 +15577,7 @@ snapshots: base64-js@1.5.1: {} - baseline-browser-mapping@2.10.7: {} + baseline-browser-mapping@2.10.8: {} better-path-resolve@1.0.0: dependencies: @@ -15616,8 +15623,8 @@ snapshots: browserslist@4.28.1: dependencies: - baseline-browser-mapping: 2.10.7 - caniuse-lite: 1.0.30001778 + baseline-browser-mapping: 2.10.8 + caniuse-lite: 1.0.30001779 electron-to-chromium: 1.5.313 node-releases: 2.0.36 update-browserslist-db: 1.2.3(browserslist@4.28.1) @@ -15715,11 +15722,11 @@ snapshots: caniuse-api@3.0.0: dependencies: browserslist: 4.28.1 - caniuse-lite: 1.0.30001778 + caniuse-lite: 1.0.30001779 lodash.memoize: 4.1.2 lodash.uniq: 4.5.0 - caniuse-lite@1.0.30001778: {} + caniuse-lite@1.0.30001779: {} ccount@2.0.1: {} @@ -15764,7 +15771,7 @@ snapshots: parse5: 7.3.0 parse5-htmlparser2-tree-adapter: 7.1.0 parse5-parser-stream: 7.1.2 - undici: 7.24.2 + undici: 7.24.3 whatwg-mimetype: 4.0.0 chokidar@4.0.3: @@ -20092,10 +20099,10 @@ snapshots: postcss-html: 1.8.1 stylelint: 17.4.0(typescript@5.9.3) - stylelint-config-recess-order@7.6.1(stylelint-order@8.1.0(stylelint@17.4.0(typescript@5.9.3)))(stylelint@17.4.0(typescript@5.9.3)): + stylelint-config-recess-order@7.6.1(stylelint-order@8.1.1(stylelint@17.4.0(typescript@5.9.3)))(stylelint@17.4.0(typescript@5.9.3)): dependencies: stylelint: 17.4.0(typescript@5.9.3) - stylelint-order: 8.1.0(stylelint@17.4.0(typescript@5.9.3)) + stylelint-order: 8.1.1(stylelint@17.4.0(typescript@5.9.3)) stylelint-config-recommended-scss@17.0.0(postcss@8.5.8)(stylelint@17.4.0(typescript@5.9.3)): dependencies: @@ -20123,7 +20130,7 @@ snapshots: stylelint: 17.4.0(typescript@5.9.3) stylelint-config-recommended: 18.0.0(stylelint@17.4.0(typescript@5.9.3)) - stylelint-order@8.1.0(stylelint@17.4.0(typescript@5.9.3)): + stylelint-order@8.1.1(stylelint@17.4.0(typescript@5.9.3)): dependencies: postcss: 8.5.8 postcss-sorting: 10.0.0(postcss@8.5.8) @@ -20145,7 +20152,7 @@ snapshots: dependencies: '@csstools/css-calc': 3.1.1(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0) '@csstools/css-parser-algorithms': 4.0.0(@csstools/css-tokenizer@4.0.0) - '@csstools/css-syntax-patches-for-csstree': 1.1.0 + '@csstools/css-syntax-patches-for-csstree': 1.1.1(css-tree@3.2.1) '@csstools/css-tokenizer': 4.0.0 '@csstools/media-query-list-parser': 5.0.0(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0) '@csstools/selector-resolve-nested': 4.0.0(postcss-selector-parser@7.1.1) @@ -20530,7 +20537,7 @@ snapshots: undici-types@7.18.2: {} - undici@7.24.2: {} + undici@7.24.3: {} unenv@2.0.0-rc.24: dependencies: diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 1bd46bf6e..542e8533f 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -68,7 +68,7 @@ catalog: '@vueuse/integrations': ^14.2.1 '@vueuse/motion': ^3.0.3 ant-design-vue: ^4.2.6 - antdv-next: ^1.1.3 + antdv-next: ^1.1.4 archiver: ^7.0.1 axios: ^1.13.6 axios-mock-adapter: ^2.1.0 @@ -148,7 +148,7 @@ catalog: stylelint-config-recommended-scss: ^17.0.0 stylelint-config-recommended-vue: ^1.6.1 stylelint-config-standard: ^40.0.0 - stylelint-order: ^8.1.0 + stylelint-order: ^8.1.1 stylelint-scss: ^7.0.0 tailwind-merge: ^3.5.0 tailwindcss: ^4.2.1 From 9ddb899a1a26a4f299dc471fd2ce2f0ab65c8e0d Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 16:23:18 +0800 Subject: [PATCH 03/29] fix: oxlint --- oxlint.config.ts | 6 ++++-- pnpm-lock.yaml | 8 ++++---- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/oxlint.config.ts b/oxlint.config.ts index 0b64163bc..230ddd98b 100644 --- a/oxlint.config.ts +++ b/oxlint.config.ts @@ -1,3 +1,5 @@ -import { defineConfig } from '@vben/oxlint-config'; +import { oxlintConfig } from '@vben/oxlint-config'; -export default defineConfig(); +import { defineConfig } from 'oxlint'; + +export default defineConfig(oxlintConfig); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a0670725e..f1fb19442 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -3771,8 +3771,8 @@ packages: '@iconify-json/octicon@1.2.21': resolution: {integrity: sha512-iMW8IT7suHRKVcHnci9wHKY79LU9mQ4rCAcVgKQQsI5SHoBi0r6z0leOXrI/oRCGJDiJDy9cLqweF3C5wSnm0A==} - '@iconify-json/simple-icons@1.2.73': - resolution: {integrity: sha512-nQZTwul4c2zBqH/aLP4zMOiElj93T6HawbrP+sFQKpxmBdS5x1duCK3cAnkj6dntHz84EYkzaQRM83V2pj4qxA==} + '@iconify-json/simple-icons@1.2.74': + resolution: {integrity: sha512-yqaohfY6jnYjTVpuTkaBQHrWbdUrQyWXhau0r/0EZiNWYXPX/P8WWwl1DoLH5CbvDjjcWQw5J0zADhgCUklOqA==} '@iconify-json/vscode-icons@1.2.45': resolution: {integrity: sha512-ow+ueibMIq79ueM1kv6cOWgHx8jfh1XJQi2RrqMHb4HLbvIBlxpy5PCMvOJXlA68R6fBAHpWQeh6uWx7VKEVsA==} @@ -13231,7 +13231,7 @@ snapshots: dependencies: '@iconify/types': 2.0.0 - '@iconify-json/simple-icons@1.2.73': + '@iconify-json/simple-icons@1.2.74': dependencies: '@iconify/types': 2.0.0 @@ -20898,7 +20898,7 @@ snapshots: dependencies: '@docsearch/css': 3.8.2 '@docsearch/js': 3.8.2(@algolia/client-search@5.49.2)(search-insights@2.17.3) - '@iconify-json/simple-icons': 1.2.73 + '@iconify-json/simple-icons': 1.2.74 '@shikijs/core': 2.5.0 '@shikijs/transformers': 2.5.0 '@shikijs/types': 2.5.0 From ab3e6bb37cbfd6db99ae5e520991b8be376ae3da Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 16:35:34 +0800 Subject: [PATCH 04/29] chore: fix lint issues --- docs/src/_env/adapter/form.ts | 1 - docs/src/demos/vben-vxe-table/form/index.vue | 2 +- eslint.config.mjs | 2 -- internal/vite-config/src/plugins/extra-app-config.ts | 2 -- internal/vite-config/src/plugins/importmap.ts | 2 -- .../ui-kit/layout-ui/src/components/layout-content.vue | 2 +- .../shadcn-ui/src/components/full-screen/full-screen.vue | 6 +++--- .../ui-kit/tabs-ui/src/components/tabs-chrome/tabs.vue | 4 ++-- .../components/captcha/slider-translate-captcha/index.vue | 1 - .../effects/common-ui/src/components/json-viewer/index.vue | 2 +- .../layouts/src/widgets/global-search/global-search.vue | 1 - .../layouts/src/widgets/theme-toggle/theme-button.vue | 2 +- scripts/vsh/src/publint/index.ts | 1 - 13 files changed, 9 insertions(+), 19 deletions(-) diff --git a/docs/src/_env/adapter/form.ts b/docs/src/_env/adapter/form.ts index 30ced04e8..7ebd4acac 100644 --- a/docs/src/_env/adapter/form.ts +++ b/docs/src/_env/adapter/form.ts @@ -10,7 +10,6 @@ import { $t } from '@vben/locales'; import { initComponentAdapter } from './component'; -// oxlint-disable-next-line typescript/no-floating-promises initComponentAdapter(); setupVbenForm({ diff --git a/docs/src/demos/vben-vxe-table/form/index.vue b/docs/src/demos/vben-vxe-table/form/index.vue index bcf3f5a5d..c17679eb3 100644 --- a/docs/src/demos/vben-vxe-table/form/index.vue +++ b/docs/src/demos/vben-vxe-table/form/index.vue @@ -112,7 +112,7 @@ const gridOptions: VxeGridProps = { }, toolbarConfig: { // 是否显示搜索表单控制按钮 - // @ts-ignore 正式环境时有完整的类型声明 + // @ts-ignore - 正式环境时有完整的类型声明 search: true, }, }; diff --git a/eslint.config.mjs b/eslint.config.mjs index b29b567fa..63bd9adc3 100644 --- a/eslint.config.mjs +++ b/eslint.config.mjs @@ -1,5 +1,3 @@ -// @ts-check - import { defineConfig } from '@vben/eslint-config'; export default defineConfig(); diff --git a/internal/vite-config/src/plugins/extra-app-config.ts b/internal/vite-config/src/plugins/extra-app-config.ts index d763bbd65..813819bbd 100644 --- a/internal/vite-config/src/plugins/extra-app-config.ts +++ b/internal/vite-config/src/plugins/extra-app-config.ts @@ -49,10 +49,8 @@ async function viteExtraAppConfigPlugin({ console.log(colors.cyan(`✨configuration file is build successfully!`)); } catch (error) { - // oxlint-disable-next-line no-console console.log( colors.red( - // oxlint-disable-next-line typescript/restrict-template-expressions `configuration file configuration file failed to package:\n${error}`, ), ); diff --git a/internal/vite-config/src/plugins/importmap.ts b/internal/vite-config/src/plugins/importmap.ts index 29b65fce6..0ccda99f8 100644 --- a/internal/vite-config/src/plugins/importmap.ts +++ b/internal/vite-config/src/plugins/importmap.ts @@ -68,7 +68,6 @@ async function viteImportMapPlugin( }); if (options?.debug) { - // oxlint-disable-next-line typescript/no-floating-promises (async () => { for await (const { message, type } of generator.logStream()) { console.log(`${type}: ${message}`); @@ -139,7 +138,6 @@ async function viteImportMapPlugin( buildEnd() { // 未生成importmap时,抛出错误,防止被turbo缓存 if (!installed && !isSSR) { - // oxlint-disable-next-line no-unused-expressions installError && console.error(installError); throw new Error('Importmap installation failed.'); } diff --git a/packages/@core/ui-kit/layout-ui/src/components/layout-content.vue b/packages/@core/ui-kit/layout-ui/src/components/layout-content.vue index b5abccb48..26fbfd399 100644 --- a/packages/@core/ui-kit/layout-ui/src/components/layout-content.vue +++ b/packages/@core/ui-kit/layout-ui/src/components/layout-content.vue @@ -26,7 +26,7 @@ interface Props { const props = withDefaults(defineProps(), {}); -// @ts-expect-error unused +// @ts-expect-error - unused const { contentElement, overlayStyle } = useLayoutContentStyle(); const style = computed((): CSSProperties => { diff --git a/packages/@core/ui-kit/shadcn-ui/src/components/full-screen/full-screen.vue b/packages/@core/ui-kit/shadcn-ui/src/components/full-screen/full-screen.vue index 970e713c9..1dcfbbbb2 100644 --- a/packages/@core/ui-kit/shadcn-ui/src/components/full-screen/full-screen.vue +++ b/packages/@core/ui-kit/shadcn-ui/src/components/full-screen/full-screen.vue @@ -12,11 +12,11 @@ const { isFullscreen, toggle } = useFullscreen(); // 重新检查全屏状态 isFullscreen.value = !!( document.fullscreenElement || - // @ts-expect-error: vendor fullscreen APIs are not included in the standard DOM typings + // @ts-expect-error - vendor fullscreen APIs are not included in the standard DOM typings document.webkitFullscreenElement || - // @ts-expect-error: vendor fullscreen APIs are not included in the standard DOM typings + // @ts-expect-error - vendor fullscreen APIs are not included in the standard DOM typings document.mozFullScreenElement || - // @ts-expect-error: vendor fullscreen APIs are not included in the standard DOM typings + // @ts-expect-error - vendor fullscreen APIs are not included in the standard DOM typings document.msFullscreenElement ); diff --git a/packages/@core/ui-kit/tabs-ui/src/components/tabs-chrome/tabs.vue b/packages/@core/ui-kit/tabs-ui/src/components/tabs-chrome/tabs.vue index 9c7eb15d0..615d12efd 100644 --- a/packages/@core/ui-kit/tabs-ui/src/components/tabs-chrome/tabs.vue +++ b/packages/@core/ui-kit/tabs-ui/src/components/tabs-chrome/tabs.vue @@ -28,9 +28,9 @@ const emit = defineEmits<{ }>(); const active = defineModel('active'); -// @ts-expect-error unused +// @ts-expect-error - unused const contentRef = ref(); -// @ts-expect-error unused +// @ts-expect-error - unused const tabRef = ref(); const style = computed(() => { diff --git a/packages/effects/common-ui/src/components/captcha/slider-translate-captcha/index.vue b/packages/effects/common-ui/src/components/captcha/slider-translate-captcha/index.vue index 02f81ae05..90c2df8b8 100644 --- a/packages/effects/common-ui/src/components/captcha/slider-translate-captcha/index.vue +++ b/packages/effects/common-ui/src/components/captcha/slider-translate-captcha/index.vue @@ -233,7 +233,6 @@ function drawPiece( ctx.fillStyle = 'rgba(255, 255, 255, 0.7)'; ctx.strokeStyle = 'rgba(255, 255, 255, 0.7)'; ctx.stroke(); - // oxlint-disable-next-line no-unused-expressions opr === canvasOpr.clip ? ctx.clip() : ctx.fill(); ctx.globalCompositeOperation = 'destination-over'; } diff --git a/packages/effects/common-ui/src/components/json-viewer/index.vue b/packages/effects/common-ui/src/components/json-viewer/index.vue index a8121de03..415e0c798 100644 --- a/packages/effects/common-ui/src/components/json-viewer/index.vue +++ b/packages/effects/common-ui/src/components/json-viewer/index.vue @@ -11,7 +11,7 @@ import type { } from './types'; import { computed, useAttrs } from 'vue'; -// @ts-expect-error: vue-json-viewer does not expose compatible typings for this import path +// @ts-expect-error - vue-json-viewer does not expose compatible typings for this import path import VueJsonViewer from 'vue-json-viewer'; import { $t } from '@vben/locales'; diff --git a/packages/effects/layouts/src/widgets/global-search/global-search.vue b/packages/effects/layouts/src/widgets/global-search/global-search.vue index 16757e7da..3268fae9d 100644 --- a/packages/effects/layouts/src/widgets/global-search/global-search.vue +++ b/packages/effects/layouts/src/widgets/global-search/global-search.vue @@ -82,7 +82,6 @@ const toggleKeydownListener = () => { }; const toggleOpen = () => { - // oxlint-disable-next-line no-unused-expressions open.value ? modalApi.close() : modalApi.open(); }; diff --git a/packages/effects/layouts/src/widgets/theme-toggle/theme-button.vue b/packages/effects/layouts/src/widgets/theme-toggle/theme-button.vue index ce5809502..8543d36c8 100644 --- a/packages/effects/layouts/src/widgets/theme-toggle/theme-button.vue +++ b/packages/effects/layouts/src/widgets/theme-toggle/theme-button.vue @@ -41,7 +41,7 @@ const bindProps = computed(() => { function toggleTheme(event: MouseEvent) { const isAppearanceTransition = - // @ts-expect-error: startViewTransition is not available in the current DOM lib target + // @ts-expect-error - startViewTransition is not available in the current DOM lib target document.startViewTransition && !window.matchMedia('(prefers-reduced-motion: reduce)').matches; if (!isAppearanceTransition || !event) { diff --git a/scripts/vsh/src/publint/index.ts b/scripts/vsh/src/publint/index.ts index ee8da3b4b..d0786737d 100644 --- a/scripts/vsh/src/publint/index.ts +++ b/scripts/vsh/src/publint/index.ts @@ -168,7 +168,6 @@ function printResult( `${UNICODE.FAILURE} ${totalCount} problem (${errorCount} errors, ${warningCount} warnings, ${suggestionsCount} suggestions)`, ), ); - // oxlint-disable-next-line no-unused-expressions !check && process.exit(1); } else { consola.log(colors.green(`${UNICODE.SUCCESS} No problem`)); From ae6a75e91354b4a558c5e474e356fbb75db1ffda Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 18:13:49 +0800 Subject: [PATCH 05/29] build: migrate core ts packages to tsdown --- cspell.json | 1 + .../eslint-config/src/configs/node.ts | 1 + package.json | 1 + packages/@core/base/icons/build.config.ts | 7 - packages/@core/base/icons/package.json | 4 +- packages/@core/base/icons/tsdown.config.ts | 8 + packages/@core/base/shared/build.config.ts | 14 -- packages/@core/base/shared/package.json | 16 +- packages/@core/base/shared/tsdown.config.ts | 15 ++ packages/@core/base/typings/build.config.ts | 7 - packages/@core/base/typings/package.json | 9 +- packages/@core/base/typings/tsdown.config.ts | 8 + packages/@core/base/typings/vue-router.d.ts | 2 +- packages/@core/composables/build.config.ts | 7 - packages/@core/composables/package.json | 4 +- packages/@core/composables/tsdown.config.ts | 8 + packages/@core/preferences/build.config.ts | 7 - packages/@core/preferences/package.json | 2 +- packages/@core/preferences/tsdown.config.ts | 8 + pnpm-lock.yaml | 226 ++++++++++++++++++ pnpm-workspace.yaml | 1 + scripts/vsh/src/check-dep/index.ts | 1 + 22 files changed, 297 insertions(+), 60 deletions(-) delete mode 100644 packages/@core/base/icons/build.config.ts create mode 100644 packages/@core/base/icons/tsdown.config.ts delete mode 100644 packages/@core/base/shared/build.config.ts create mode 100644 packages/@core/base/shared/tsdown.config.ts delete mode 100644 packages/@core/base/typings/build.config.ts create mode 100644 packages/@core/base/typings/tsdown.config.ts delete mode 100644 packages/@core/composables/build.config.ts create mode 100644 packages/@core/composables/tsdown.config.ts delete mode 100644 packages/@core/preferences/build.config.ts create mode 100644 packages/@core/preferences/tsdown.config.ts diff --git a/cspell.json b/cspell.json index f1071a848..c53d1cc51 100644 --- a/cspell.json +++ b/cspell.json @@ -60,6 +60,7 @@ "tabler", "taze", "tdesign", + "tsdown", "tsgolint", "turborepo", "ui-kit", diff --git a/internal/lint-configs/eslint-config/src/configs/node.ts b/internal/lint-configs/eslint-config/src/configs/node.ts index 65f81fd53..f94f2d43e 100644 --- a/internal/lint-configs/eslint-config/src/configs/node.ts +++ b/internal/lint-configs/eslint-config/src/configs/node.ts @@ -17,6 +17,7 @@ export async function node(): Promise { 'error', { allowModules: [ + 'tsdown', 'unbuild', '@vben/vite-config', 'vitest', diff --git a/package.json b/package.json index 43531f182..f36d5f66e 100644 --- a/package.json +++ b/package.json @@ -92,6 +92,7 @@ "playwright": "catalog:", "rimraf": "catalog:", "tailwindcss": "catalog:", + "tsdown": "catalog:", "turbo": "catalog:", "typescript": "catalog:", "unbuild": "catalog:", diff --git a/packages/@core/base/icons/build.config.ts b/packages/@core/base/icons/build.config.ts deleted file mode 100644 index 97e572c56..000000000 --- a/packages/@core/base/icons/build.config.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { defineBuildConfig } from 'unbuild'; - -export default defineBuildConfig({ - clean: true, - declaration: true, - entries: ['src/index'], -}); diff --git a/packages/@core/base/icons/package.json b/packages/@core/base/icons/package.json index 0161ed482..499fee711 100644 --- a/packages/@core/base/icons/package.json +++ b/packages/@core/base/icons/package.json @@ -11,7 +11,7 @@ "license": "MIT", "type": "module", "scripts": { - "build": "pnpm unbuild" + "build": "tsdown" }, "files": [ "dist" @@ -28,7 +28,7 @@ "publishConfig": { "exports": { ".": { - "types": "./dist/index.d.ts", + "types": "./dist/index.d.mts", "default": "./dist/index.mjs" } } diff --git a/packages/@core/base/icons/tsdown.config.ts b/packages/@core/base/icons/tsdown.config.ts new file mode 100644 index 000000000..ad91feebb --- /dev/null +++ b/packages/@core/base/icons/tsdown.config.ts @@ -0,0 +1,8 @@ +import { defineConfig } from 'tsdown'; + +export default defineConfig({ + clean: true, + dts: true, + entry: ['src/index.ts'], + format: ['esm'], +}); diff --git a/packages/@core/base/shared/build.config.ts b/packages/@core/base/shared/build.config.ts deleted file mode 100644 index 98e2209fe..000000000 --- a/packages/@core/base/shared/build.config.ts +++ /dev/null @@ -1,14 +0,0 @@ -import { defineBuildConfig } from 'unbuild'; - -export default defineBuildConfig({ - clean: true, - declaration: true, - entries: [ - 'src/store', - 'src/constants/index', - 'src/utils/index', - 'src/color/index', - 'src/cache/index', - 'src/global-state', - ], -}); diff --git a/packages/@core/base/shared/package.json b/packages/@core/base/shared/package.json index e48de9a27..d58ff5d3c 100644 --- a/packages/@core/base/shared/package.json +++ b/packages/@core/base/shared/package.json @@ -11,8 +11,8 @@ "license": "MIT", "type": "module", "scripts": { - "build": "pnpm unbuild", - "stub": "pnpm unbuild --stub" + "build": "tsdown", + "stub": "tsdown" }, "files": [ "dist" @@ -53,27 +53,27 @@ "publishConfig": { "exports": { "./constants": { - "types": "./dist/constants/index.d.ts", + "types": "./dist/constants/index.d.mts", "default": "./dist/constants/index.mjs" }, "./utils": { - "types": "./dist/utils/index.d.ts", + "types": "./dist/utils/index.d.mts", "default": "./dist/utils/index.mjs" }, "./color": { - "types": "./dist/color/index.d.ts", + "types": "./dist/color/index.d.mts", "default": "./dist/color/index.mjs" }, "./cache": { - "types": "./dist/cache/index.d.ts", + "types": "./dist/cache/index.d.mts", "default": "./dist/cache/index.mjs" }, "./store": { - "types": "./dist/store.d.ts", + "types": "./dist/store.d.mts", "default": "./dist/store.mjs" }, "./global-state": { - "types": "./dist/global-state.d.ts", + "types": "./dist/global-state.d.mts", "default": "./dist/global-state.mjs" } } diff --git a/packages/@core/base/shared/tsdown.config.ts b/packages/@core/base/shared/tsdown.config.ts new file mode 100644 index 000000000..5226ddae6 --- /dev/null +++ b/packages/@core/base/shared/tsdown.config.ts @@ -0,0 +1,15 @@ +import { defineConfig } from 'tsdown'; + +export default defineConfig({ + clean: true, + dts: true, + entry: { + 'cache/index': 'src/cache/index.ts', + 'color/index': 'src/color/index.ts', + 'constants/index': 'src/constants/index.ts', + 'global-state': 'src/global-state.ts', + 'store': 'src/store.ts', + 'utils/index': 'src/utils/index.ts', + }, + format: ['esm'], +}); diff --git a/packages/@core/base/typings/build.config.ts b/packages/@core/base/typings/build.config.ts deleted file mode 100644 index 97e572c56..000000000 --- a/packages/@core/base/typings/build.config.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { defineBuildConfig } from 'unbuild'; - -export default defineBuildConfig({ - clean: true, - declaration: true, - entries: ['src/index'], -}); diff --git a/packages/@core/base/typings/package.json b/packages/@core/base/typings/package.json index 73b346385..591bbaae4 100644 --- a/packages/@core/base/typings/package.json +++ b/packages/@core/base/typings/package.json @@ -11,14 +11,15 @@ "license": "MIT", "type": "module", "scripts": { - "build": "pnpm unbuild" + "build": "tsdown" }, "files": [ - "dist" + "dist", + "vue-router.d.ts" ], "main": "./dist/index.mjs", "module": "./dist/index.mjs", - "types": "./dist/index.d.ts", + "types": "./dist/index.d.mts", "exports": { ".": { "types": "./src/index.ts", @@ -32,7 +33,7 @@ "publishConfig": { "exports": { ".": { - "types": "./dist/index.d.ts", + "types": "./dist/index.d.mts", "default": "./dist/index.mjs" } } diff --git a/packages/@core/base/typings/tsdown.config.ts b/packages/@core/base/typings/tsdown.config.ts new file mode 100644 index 000000000..ad91feebb --- /dev/null +++ b/packages/@core/base/typings/tsdown.config.ts @@ -0,0 +1,8 @@ +import { defineConfig } from 'tsdown'; + +export default defineConfig({ + clean: true, + dts: true, + entry: ['src/index.ts'], + format: ['esm'], +}); diff --git a/packages/@core/base/typings/vue-router.d.ts b/packages/@core/base/typings/vue-router.d.ts index 4874bcd75..8ea588602 100644 --- a/packages/@core/base/typings/vue-router.d.ts +++ b/packages/@core/base/typings/vue-router.d.ts @@ -1,5 +1,5 @@ /* eslint-disable no-restricted-imports */ -import type { RouteMeta as IRouteMeta } from '@vben-core/typings'; +import type { RouteMeta as IRouteMeta } from './dist/index.d.mts'; import 'vue-router'; diff --git a/packages/@core/composables/build.config.ts b/packages/@core/composables/build.config.ts deleted file mode 100644 index 97e572c56..000000000 --- a/packages/@core/composables/build.config.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { defineBuildConfig } from 'unbuild'; - -export default defineBuildConfig({ - clean: true, - declaration: true, - entries: ['src/index'], -}); diff --git a/packages/@core/composables/package.json b/packages/@core/composables/package.json index a541a6bea..ba8cda3ee 100644 --- a/packages/@core/composables/package.json +++ b/packages/@core/composables/package.json @@ -11,7 +11,7 @@ "license": "MIT", "type": "module", "scripts": { - "build": "pnpm unbuild" + "build": "tsdown" }, "files": [ "dist" @@ -29,7 +29,7 @@ "publishConfig": { "exports": { ".": { - "types": "./dist/index.d.ts", + "types": "./dist/index.d.mts", "default": "./dist/index.mjs" } } diff --git a/packages/@core/composables/tsdown.config.ts b/packages/@core/composables/tsdown.config.ts new file mode 100644 index 000000000..ad91feebb --- /dev/null +++ b/packages/@core/composables/tsdown.config.ts @@ -0,0 +1,8 @@ +import { defineConfig } from 'tsdown'; + +export default defineConfig({ + clean: true, + dts: true, + entry: ['src/index.ts'], + format: ['esm'], +}); diff --git a/packages/@core/preferences/build.config.ts b/packages/@core/preferences/build.config.ts deleted file mode 100644 index 97e572c56..000000000 --- a/packages/@core/preferences/build.config.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { defineBuildConfig } from 'unbuild'; - -export default defineBuildConfig({ - clean: true, - declaration: true, - entries: ['src/index'], -}); diff --git a/packages/@core/preferences/package.json b/packages/@core/preferences/package.json index fd859bee9..620e89edd 100644 --- a/packages/@core/preferences/package.json +++ b/packages/@core/preferences/package.json @@ -11,7 +11,7 @@ "license": "MIT", "type": "module", "scripts": { - "#build": "pnpm unbuild" + "build": "tsdown" }, "files": [ "dist", diff --git a/packages/@core/preferences/tsdown.config.ts b/packages/@core/preferences/tsdown.config.ts new file mode 100644 index 000000000..ad91feebb --- /dev/null +++ b/packages/@core/preferences/tsdown.config.ts @@ -0,0 +1,8 @@ +import { defineConfig } from 'tsdown'; + +export default defineConfig({ + clean: true, + dts: true, + entry: ['src/index.ts'], + format: ['esm'], +}); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f1fb19442..4f8ccb35e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -399,6 +399,9 @@ catalogs: tippy.js: specifier: ^6.3.7 version: 6.3.7 + tsdown: + specifier: ^0.21.2 + version: 0.21.2 turbo: specifier: ^2.8.17 version: 2.8.17 @@ -576,6 +579,9 @@ importers: tailwindcss: specifier: 'catalog:' version: 4.2.1 + tsdown: + specifier: 'catalog:' + version: 0.21.2(publint@0.3.18)(synckit@0.11.12)(typescript@5.9.3)(vue-tsc@3.2.5(typescript@5.9.3)) turbo: specifier: 'catalog:' version: 2.8.17 @@ -2202,6 +2208,10 @@ packages: resolution: {integrity: sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==} engines: {node: '>=6.9.0'} + '@babel/generator@8.0.0-rc.2': + resolution: {integrity: sha512-oCQ1IKPwkzCeJzAPb7Fv8rQ9k5+1sG8mf2uoHiMInPYvkRfrDJxbTIbH51U+jstlkghus0vAi3EBvkfvEsYNLQ==} + engines: {node: ^20.19.0 || >=22.12.0} + '@babel/helper-annotate-as-pure@7.27.3': resolution: {integrity: sha512-fXSwMQqitTGeHLBC08Eq5yXz2m37E4pJX1qAU1+2cNedz/ifv/bVXft90VeSav5nFO61EcNgwr0aJxbyPaWBPg==} engines: {node: '>=6.9.0'} @@ -2273,10 +2283,18 @@ packages: resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==} engines: {node: '>=6.9.0'} + '@babel/helper-string-parser@8.0.0-rc.2': + resolution: {integrity: sha512-noLx87RwlBEMrTzncWd/FvTxoJ9+ycHNg0n8yyYydIoDsLZuxknKgWRJUqcrVkNrJ74uGyhWQzQaS3q8xfGAhQ==} + engines: {node: ^20.19.0 || >=22.12.0} + '@babel/helper-validator-identifier@7.28.5': resolution: {integrity: sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoLHx7nIarVjqKVusUZ1Q==} engines: {node: '>=6.9.0'} + '@babel/helper-validator-identifier@8.0.0-rc.2': + resolution: {integrity: sha512-xExUBkuXWJjVuIbO7z6q7/BA9bgfJDEhVL0ggrggLMbg0IzCUWGT1hZGE8qUH7Il7/RD/a6cZ3AAFrrlp1LF/A==} + engines: {node: ^20.19.0 || >=22.12.0} + '@babel/helper-validator-option@7.27.1': resolution: {integrity: sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg==} engines: {node: '>=6.9.0'} @@ -2294,6 +2312,11 @@ packages: engines: {node: '>=6.0.0'} hasBin: true + '@babel/parser@8.0.0-rc.2': + resolution: {integrity: sha512-29AhEtcq4x8Dp3T72qvUMZHx0OMXCj4Jy/TEReQa+KWLln524Cj1fWb3QFi0l/xSpptQBR6y9RNEXuxpFvwiUQ==} + engines: {node: ^20.19.0 || >=22.12.0} + hasBin: true + '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.28.5': resolution: {integrity: sha512-87GDMS3tsmMSi/3bWOte1UblL+YUTFMV8SZPZ2eSEL17s74Cw/l63rR6NmGVKMYW2GYi85nE+/d6Hw5N0bEk2Q==} engines: {node: '>=6.9.0'} @@ -2722,6 +2745,10 @@ packages: resolution: {integrity: sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==} engines: {node: '>=6.9.0'} + '@babel/types@8.0.0-rc.2': + resolution: {integrity: sha512-91gAaWRznDwSX4E2tZ1YjBuIfnQVOFDCQ2r0Toby0gu4XEbyF623kXLMA8d4ZbCu+fINcrudkmEcwSUHgDDkNw==} + engines: {node: ^20.19.0 || >=22.12.0} + '@bufbuild/protobuf@2.11.0': resolution: {integrity: sha512-sBXGT13cpmPR5BMgHE6UEEfEaShh5Ror6rfN3yEK5si7QVrtZg8LEPQb0VVhiLRUslD2yLnXtnRzG035J/mZXQ==} @@ -4441,6 +4468,9 @@ packages: resolution: {integrity: sha512-HDVTWq3H0uTXiU0eeSQntcVUTPP3GamzeXI41+x7uU9J65JgWQh3qWZHblR1i0npXfFtF+mxBiU2nJH8znxWnQ==} engines: {node: '>=18'} + '@quansync/fs@1.0.0': + resolution: {integrity: sha512-4TJ3DFtlf1L5LDMaM6CanJ/0lckGNtJcMjQ1NAV6zDmA0tEHKZtxNKin8EgPaVX1YzljbxckyT2tJrpQKAtngQ==} + '@rolldown/binding-android-arm64@1.0.0-rc.9': resolution: {integrity: sha512-lcJL0bN5hpgJfSIz/8PIf02irmyL43P+j1pTCfbD1DbLkmGRuFIA4DD3B3ZOvGqG0XiVvRznbKtN0COQVaKUTg==} engines: {node: ^20.19.0 || >=22.12.0} @@ -5071,6 +5101,9 @@ packages: '@types/html-minifier-terser@7.0.2': resolution: {integrity: sha512-mm2HqV22l8lFQh4r2oSsOEVea+m0qqxEmwpc9kC1p/XzmjLWrReR9D/GRs8Pex2NX/imyEH9c5IU/7tMBQCHOA==} + '@types/jsesc@2.5.1': + resolution: {integrity: sha512-9VN+6yxLOPLOav+7PwjZbxiID2bVaeq0ED4qSQmdQTdjnXJSaCVKTR58t15oqH1H5t8Ng2ZX1SabJVoN9Q34bw==} + '@types/json-bigint@1.0.4': resolution: {integrity: sha512-ydHooXLbOmxBbubnA7Eh+RpBzuaIiQjh8WGJYQB50JFGFrdxW7JzVlyEV7fAXw0T2sqJ1ysTneJbiyNLqZRAag==} @@ -5935,6 +5968,10 @@ packages: resolution: {integrity: sha512-m1Q/RaVOnTp9JxPX+F+Zn7IcLYMzM8kZofDImfsKZd8MbR+ikdOzTeztStWqfrqIxZnYWryyI9ePm3NGjnZgGw==} engines: {node: '>=20.19.0'} + ast-kit@3.0.0-beta.1: + resolution: {integrity: sha512-trmleAnZ2PxN/loHWVhhx1qeOHSRXq4TDsBBxq3GqeJitfk3+jTQ+v/C1km/KYq9M7wKqCewMh+/NAvVH7m+bw==} + engines: {node: '>=20.19.0'} + ast-walker-scope@0.8.3: resolution: {integrity: sha512-cbdCP0PGOBq0ASG+sjnKIoYkWMKhhz+F/h9pRexUdX2Hd38+WOlBkRKlqkGOSm0YQpcFMQBJeK4WspUAkwsEdg==} engines: {node: '>=20.19.0'} @@ -6074,6 +6111,9 @@ packages: birpc@2.9.0: resolution: {integrity: sha512-KrayHS5pBi69Xi9JmvoqrIgYGDkD6mcSe/i6YKi3w5kekCLzrX4+nawcXqrj2tIp50Kw/mT/s3p+GVK0A0sKxw==} + birpc@4.0.0: + resolution: {integrity: sha512-LShSxJP0KTmd101b6DRyGBj57LZxSDYWKitQNW/mi8GRMvZb078Uf9+pveax1DrVL89vm7mWe+TovdI/UDOuPw==} + boolbase@1.0.0: resolution: {integrity: sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==} @@ -6850,6 +6890,15 @@ packages: resolution: {integrity: sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==} engines: {node: '>=10'} + dts-resolver@2.1.3: + resolution: {integrity: sha512-bihc7jPC90VrosXNzK0LTE2cuLP6jr0Ro8jk+kMugHReJVLIpHz/xadeq3MhuwyO4TD4OA3L1Q8pBBFRc08Tsw==} + engines: {node: '>=20.19.0'} + peerDependencies: + oxc-resolver: '>=11.0.0' + peerDependenciesMeta: + oxc-resolver: + optional: true + dunder-proto@1.0.1: resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==} engines: {node: '>= 0.4'} @@ -7657,6 +7706,9 @@ packages: hookable@5.5.3: resolution: {integrity: sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==} + hookable@6.1.0: + resolution: {integrity: sha512-ZoKZSJgu8voGK2geJS+6YtYjvIzu9AOM/KZXsBxr83uhLL++e9pEv/dlgwgy3dvHg06kTz6JOh1hk3C8Ceiymw==} + hookified@1.15.1: resolution: {integrity: sha512-MvG/clsADq1GPM2KGo2nyfaWVyn9naPiXrqIe4jYjXNZQt238kWyOGrsyc/DmRAQ+Re6yeo6yX/yoNCG5KAEVg==} @@ -7751,6 +7803,10 @@ packages: import-meta-resolve@4.2.0: resolution: {integrity: sha512-Iqv2fzaTQN28s/FwZAoFq0ZSs/7hMAHJVX+w8PZl3cY19Pxk6jFFalxQoIfW2826i/fDLXv8IiEZRIT0lDuWcg==} + import-without-cache@0.2.5: + resolution: {integrity: sha512-B6Lc2s6yApwnD2/pMzFh/d5AVjdsDXjgkeJ766FmFuJELIGHNycKRj+l3A39yZPM4CchqNCB4RITEAYB1KUM6A==} + engines: {node: '>=20.19.0'} + imurmurhash@0.1.4: resolution: {integrity: sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==} engines: {node: '>=0.8.19'} @@ -9491,6 +9547,9 @@ packages: quansync@0.2.11: resolution: {integrity: sha512-AifT7QEbW9Nri4tAwR5M/uzpBuqfZf+zwaEM/QkzEjj7NBuFD2rBuy0K3dE+8wltbezDV7JMA0WfnCPYRSYbXA==} + quansync@1.0.0: + resolution: {integrity: sha512-5xZacEEufv3HSTPQuchrvV6soaiACMFnq1H8wkVioctoH3TRha9Sz66lOxRwPK/qZj7HPiSveih9yAyh98gvqA==} + queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} @@ -9668,6 +9727,25 @@ packages: engines: {node: 20 || >=22} hasBin: true + rolldown-plugin-dts@0.22.5: + resolution: {integrity: sha512-M/HXfM4cboo+jONx9Z0X+CUf3B5tCi7ni+kR5fUW50Fp9AlZk0oVLesibGWgCXDKFp5lpgQ9yhKoImUFjl3VZw==} + engines: {node: '>=20.19.0'} + peerDependencies: + '@ts-macro/tsc': ^0.3.6 + '@typescript/native-preview': '>=7.0.0-dev.20250601.1' + rolldown: ^1.0.0-rc.3 + typescript: ^5.0.0 || ^6.0.0-beta + vue-tsc: ~3.2.0 + peerDependenciesMeta: + '@ts-macro/tsc': + optional: true + '@typescript/native-preview': + optional: true + typescript: + optional: true + vue-tsc: + optional: true + rolldown-string@0.2.1: resolution: {integrity: sha512-7H8oH5A8+L96pbBTPCt/rZrwayEhZY5/ejhdk9nRODH32H1v7+bfkaCr+kS15DcGQ7VC1HcWdQVNABFYgrMOzg==} engines: {node: '>=20.19.0'} @@ -10449,6 +10527,10 @@ packages: tr46@1.0.1: resolution: {integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==} + tree-kill@1.2.2: + resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} + hasBin: true + treemate@0.3.11: resolution: {integrity: sha512-M8RGFoKtZ8dF+iwJfAJTOH/SM4KluKOKRJpjCMhI8bG3qB74zrFoArKZ62ll0Fr3mqkMJiQOmWYkdYgDeITYQg==} @@ -10474,6 +10556,34 @@ packages: resolution: {integrity: sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==} engines: {node: '>=6'} + tsdown@0.21.2: + resolution: {integrity: sha512-pP8eAcd1XAWjl5gjosuJs0BAuVoheUe3V8VDHx31QK7YOgXjcCMsBSyFWO3CMh/CSUkjRUzR96JtGH3WJFTExQ==} + engines: {node: '>=20.19.0'} + hasBin: true + peerDependencies: + '@arethetypeswrong/core': ^0.18.1 + '@tsdown/css': 0.21.2 + '@tsdown/exe': 0.21.2 + '@vitejs/devtools': '*' + publint: ^0.3.0 + typescript: ^5.0.0 + unplugin-unused: ^0.5.0 + peerDependenciesMeta: + '@arethetypeswrong/core': + optional: true + '@tsdown/css': + optional: true + '@tsdown/exe': + optional: true + '@vitejs/devtools': + optional: true + publint: + optional: true + typescript: + optional: true + unplugin-unused: + optional: true + tslib@2.3.0: resolution: {integrity: sha512-N82ooyxVNm6h1riLCoyS9e3fuJ3AMG2zIZs2Gd1ATcSFjSA23Q0fzjjZeh0jbJvWVDZ0cJT8yaNNaaXHzueNjg==} @@ -10581,6 +10691,9 @@ packages: typescript: optional: true + unconfig-core@7.5.0: + resolution: {integrity: sha512-Su3FauozOGP44ZmKdHy2oE6LPjk51M/TRRjHv2HNCWiDvfvCoxC2lno6jevMA91MYAdCdwP05QnWdWpSbncX/w==} + uncrypto@0.1.3: resolution: {integrity: sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==} @@ -10676,6 +10789,16 @@ packages: resolution: {integrity: sha512-0Mqk3AT2TZCXWKdcoaufeXNukv2mTrEZExeXlHIOZXdqYoHHr4n51pymnwV8x2BOVxwXbK2HLlI7usrqMpycdg==} engines: {node: ^20.19.0 || >=22.12.0} + unrun@0.2.32: + resolution: {integrity: sha512-opd3z6791rf281JdByf0RdRQrpcc7WyzqittqIXodM/5meNWdTwrVxeyzbaCp4/Rgls/um14oUaif1gomO8YGg==} + engines: {node: '>=20.19.0'} + hasBin: true + peerDependencies: + synckit: ^0.11.11 + peerDependenciesMeta: + synckit: + optional: true + unstorage@1.17.4: resolution: {integrity: sha512-fHK0yNg38tBiJKp/Vgsq4j0JEsCmgqH58HAn707S7zGkArbZsVr/CwINoi+nh3h98BRCwKvx1K3Xg9u3VV83sw==} peerDependencies: @@ -11620,6 +11743,15 @@ snapshots: '@jridgewell/trace-mapping': 0.3.31 jsesc: 3.1.0 + '@babel/generator@8.0.0-rc.2': + dependencies: + '@babel/parser': 8.0.0-rc.2 + '@babel/types': 8.0.0-rc.2 + '@jridgewell/gen-mapping': 0.3.13 + '@jridgewell/trace-mapping': 0.3.31 + '@types/jsesc': 2.5.1 + jsesc: 3.1.0 + '@babel/helper-annotate-as-pure@7.27.3': dependencies: '@babel/types': 7.29.0 @@ -11721,8 +11853,12 @@ snapshots: '@babel/helper-string-parser@7.27.1': {} + '@babel/helper-string-parser@8.0.0-rc.2': {} + '@babel/helper-validator-identifier@7.28.5': {} + '@babel/helper-validator-identifier@8.0.0-rc.2': {} + '@babel/helper-validator-option@7.27.1': {} '@babel/helper-wrap-function@7.28.6': @@ -11742,6 +11878,10 @@ snapshots: dependencies: '@babel/types': 7.29.0 + '@babel/parser@8.0.0-rc.2': + dependencies: + '@babel/types': 8.0.0-rc.2 + '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.28.5(@babel/core@7.29.0)': dependencies: '@babel/core': 7.29.0 @@ -12289,6 +12429,11 @@ snapshots: '@babel/helper-string-parser': 7.27.1 '@babel/helper-validator-identifier': 7.28.5 + '@babel/types@8.0.0-rc.2': + dependencies: + '@babel/helper-string-parser': 8.0.0-rc.2 + '@babel/helper-validator-identifier': 8.0.0-rc.2 + '@bufbuild/protobuf@2.11.0': {} '@cacheable/memory@2.0.8': @@ -13863,6 +14008,10 @@ snapshots: '@publint/pack@0.1.4': {} + '@quansync/fs@1.0.0': + dependencies: + quansync: 1.0.0 + '@rolldown/binding-android-arm64@1.0.0-rc.9': optional: true @@ -14379,6 +14528,8 @@ snapshots: '@types/html-minifier-terser@7.0.2': {} + '@types/jsesc@2.5.1': {} + '@types/json-bigint@1.0.4': {} '@types/json-schema@7.0.15': {} @@ -15461,6 +15612,12 @@ snapshots: '@babel/parser': 7.29.0 pathe: 2.0.3 + ast-kit@3.0.0-beta.1: + dependencies: + '@babel/parser': 8.0.0-rc.2 + estree-walker: 3.0.3 + pathe: 2.0.3 + ast-walker-scope@0.8.3: dependencies: '@babel/parser': 7.29.0 @@ -15591,6 +15748,8 @@ snapshots: birpc@2.9.0: {} + birpc@4.0.0: {} + boolbase@1.0.0: {} boxen@8.0.1: @@ -16436,6 +16595,8 @@ snapshots: dotenv@8.6.0: {} + dts-resolver@2.1.3: {} + dunder-proto@1.0.1: dependencies: call-bind-apply-helpers: 1.0.2 @@ -17489,6 +17650,8 @@ snapshots: hookable@5.5.3: {} + hookable@6.1.0: {} + hookified@1.15.1: {} html-minifier-terser@6.1.0: @@ -17584,6 +17747,8 @@ snapshots: import-meta-resolve@4.2.0: {} + import-without-cache@0.2.5: {} + imurmurhash@0.1.4: {} indent-string@5.0.0: {} @@ -19295,6 +19460,8 @@ snapshots: quansync@0.2.11: {} + quansync@1.0.0: {} + queue-microtask@1.2.3: {} radix3@1.1.2: {} @@ -19494,6 +19661,24 @@ snapshots: glob: 13.0.6 package-json-from-dist: 1.0.1 + rolldown-plugin-dts@0.22.5(rolldown@1.0.0-rc.9)(typescript@5.9.3)(vue-tsc@3.2.5(typescript@5.9.3)): + dependencies: + '@babel/generator': 8.0.0-rc.2 + '@babel/helper-validator-identifier': 8.0.0-rc.2 + '@babel/parser': 8.0.0-rc.2 + '@babel/types': 8.0.0-rc.2 + ast-kit: 3.0.0-beta.1 + birpc: 4.0.0 + dts-resolver: 2.1.3 + get-tsconfig: 4.13.6 + obug: 2.1.1 + rolldown: 1.0.0-rc.9 + optionalDependencies: + typescript: 5.9.3 + vue-tsc: 3.2.5(typescript@5.9.3) + transitivePeerDependencies: + - oxc-resolver + rolldown-string@0.2.1: dependencies: magic-string: 0.30.21 @@ -20371,6 +20556,8 @@ snapshots: dependencies: punycode: 2.3.1 + tree-kill@1.2.2: {} + treemate@0.3.11: {} trim-lines@3.0.1: {} @@ -20397,6 +20584,34 @@ snapshots: minimist: 1.2.8 strip-bom: 3.0.0 + tsdown@0.21.2(publint@0.3.18)(synckit@0.11.12)(typescript@5.9.3)(vue-tsc@3.2.5(typescript@5.9.3)): + dependencies: + ansis: 4.2.0 + cac: 7.0.0 + defu: 6.1.4 + empathic: 2.0.0 + hookable: 6.1.0 + import-without-cache: 0.2.5 + obug: 2.1.1 + picomatch: 4.0.3 + rolldown: 1.0.0-rc.9 + rolldown-plugin-dts: 0.22.5(rolldown@1.0.0-rc.9)(typescript@5.9.3)(vue-tsc@3.2.5(typescript@5.9.3)) + semver: 7.7.4 + tinyexec: 1.0.4 + tinyglobby: 0.2.15 + tree-kill: 1.2.2 + unconfig-core: 7.5.0 + unrun: 0.2.32(synckit@0.11.12) + optionalDependencies: + publint: 0.3.18 + typescript: 5.9.3 + transitivePeerDependencies: + - '@ts-macro/tsc' + - '@typescript/native-preview' + - oxc-resolver + - synckit + - vue-tsc + tslib@2.3.0: {} tslib@2.4.0: {} @@ -20526,6 +20741,11 @@ snapshots: - vue-sfc-transformer - vue-tsc + unconfig-core@7.5.0: + dependencies: + '@quansync/fs': 1.0.0 + quansync: 1.0.0 + uncrypto@0.1.3: {} unctx@2.5.0: @@ -20642,6 +20862,12 @@ snapshots: picomatch: 4.0.3 webpack-virtual-modules: 0.6.2 + unrun@0.2.32(synckit@0.11.12): + dependencies: + rolldown: 1.0.0-rc.9 + optionalDependencies: + synckit: 0.11.12 + unstorage@1.17.4(db0@0.3.4)(ioredis@5.10.0): dependencies: anymatch: 3.1.3 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 542e8533f..605f56163 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -155,6 +155,7 @@ catalog: tdesign-vue-next: ^1.18.5 theme-colors: ^0.1.0 tippy.js: ^6.3.7 + tsdown: ^0.21.2 turbo: ^2.8.17 tw-animate-css: ^1.4.0 typescript: ^5.9.3 diff --git a/scripts/vsh/src/check-dep/index.ts b/scripts/vsh/src/check-dep/index.ts index ba8ed4c3f..15b2d35c9 100644 --- a/scripts/vsh/src/check-dep/index.ts +++ b/scripts/vsh/src/check-dep/index.ts @@ -10,6 +10,7 @@ const DEFAULT_CONFIG = { ignoreMatches: [ 'vite', 'vitest', + 'tsdown', 'unbuild', '@vben/tsconfig', '@vben/vite-config', From db9b9df8f78b231704835d34eb16526b6d8dc284 Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 19:39:43 +0800 Subject: [PATCH 06/29] chore(eslint-config): migrate build to tsdown --- .../lint-configs/eslint-config/build.config.ts | 7 ------- internal/lint-configs/eslint-config/package.json | 7 +++---- .../lint-configs/eslint-config/tsdown.config.ts | 16 ++++++++++++++++ 3 files changed, 19 insertions(+), 11 deletions(-) delete mode 100644 internal/lint-configs/eslint-config/build.config.ts create mode 100644 internal/lint-configs/eslint-config/tsdown.config.ts diff --git a/internal/lint-configs/eslint-config/build.config.ts b/internal/lint-configs/eslint-config/build.config.ts deleted file mode 100644 index 97e572c56..000000000 --- a/internal/lint-configs/eslint-config/build.config.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { defineBuildConfig } from 'unbuild'; - -export default defineBuildConfig({ - clean: true, - declaration: true, - entries: ['src/index'], -}); diff --git a/internal/lint-configs/eslint-config/package.json b/internal/lint-configs/eslint-config/package.json index db7f699ac..5235e2b16 100644 --- a/internal/lint-configs/eslint-config/package.json +++ b/internal/lint-configs/eslint-config/package.json @@ -12,7 +12,8 @@ "license": "MIT", "type": "module", "scripts": { - "stub": "pnpm unbuild --stub" + "build": "pnpm exec tsdown", + "stub": "pnpm exec tsdown" }, "files": [ "dist" @@ -27,12 +28,10 @@ } }, "dependencies": { - "@vben/oxlint-config": "workspace:*" - }, - "devDependencies": { "@eslint/js": "catalog:", "@typescript-eslint/eslint-plugin": "catalog:", "@typescript-eslint/parser": "catalog:", + "@vben/oxlint-config": "workspace:*", "eslint": "catalog:", "eslint-plugin-jsonc": "catalog:", "eslint-plugin-n": "catalog:", diff --git a/internal/lint-configs/eslint-config/tsdown.config.ts b/internal/lint-configs/eslint-config/tsdown.config.ts new file mode 100644 index 000000000..a7a8ce27f --- /dev/null +++ b/internal/lint-configs/eslint-config/tsdown.config.ts @@ -0,0 +1,16 @@ +import { defineConfig } from 'tsdown'; + +export default defineConfig({ + clean: true, + deps: { + skipNodeModulesBundle: true, + }, + dts: { + resolver: 'tsc', + }, + entry: ['src/index.ts'], + format: ['esm'], + outExtensions: () => ({ + dts: '.d.ts', + }), +}); From 30b5610a73b6e8bc7719b0dc93ca7e7162da14e3 Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 19:39:51 +0800 Subject: [PATCH 07/29] chore(oxfmt-config): migrate build to tsdown --- internal/lint-configs/oxfmt-config/build.config.ts | 7 ------- internal/lint-configs/oxfmt-config/package.json | 3 ++- internal/lint-configs/oxfmt-config/src/index.ts | 4 ++-- internal/lint-configs/oxfmt-config/tsdown.config.ts | 11 +++++++++++ 4 files changed, 15 insertions(+), 10 deletions(-) delete mode 100644 internal/lint-configs/oxfmt-config/build.config.ts create mode 100644 internal/lint-configs/oxfmt-config/tsdown.config.ts diff --git a/internal/lint-configs/oxfmt-config/build.config.ts b/internal/lint-configs/oxfmt-config/build.config.ts deleted file mode 100644 index 97e572c56..000000000 --- a/internal/lint-configs/oxfmt-config/build.config.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { defineBuildConfig } from 'unbuild'; - -export default defineBuildConfig({ - clean: true, - declaration: true, - entries: ['src/index'], -}); diff --git a/internal/lint-configs/oxfmt-config/package.json b/internal/lint-configs/oxfmt-config/package.json index 3e016797e..2355a9de5 100644 --- a/internal/lint-configs/oxfmt-config/package.json +++ b/internal/lint-configs/oxfmt-config/package.json @@ -12,7 +12,8 @@ "license": "MIT", "type": "module", "scripts": { - "stub": "pnpm unbuild --stub" + "build": "pnpm exec tsdown", + "stub": "pnpm exec tsdown" }, "files": [ "dist" diff --git a/internal/lint-configs/oxfmt-config/src/index.ts b/internal/lint-configs/oxfmt-config/src/index.ts index 5f88c1809..edce2504a 100644 --- a/internal/lint-configs/oxfmt-config/src/index.ts +++ b/internal/lint-configs/oxfmt-config/src/index.ts @@ -2,7 +2,7 @@ import { defineConfig as defineOxfmtConfig } from 'oxfmt'; type OxfmtConfig = Parameters[0]; -const oxfmtConfig = defineOxfmtConfig({ +const oxfmtConfig: OxfmtConfig = defineOxfmtConfig({ printWidth: 80, proseWrap: 'never', semi: true, @@ -28,7 +28,7 @@ const oxfmtConfig = defineOxfmtConfig({ ], }); -function defineConfig(config: OxfmtConfig = {}) { +function defineConfig(config: OxfmtConfig = {}): OxfmtConfig { return defineOxfmtConfig({ ...oxfmtConfig, ...config, diff --git a/internal/lint-configs/oxfmt-config/tsdown.config.ts b/internal/lint-configs/oxfmt-config/tsdown.config.ts new file mode 100644 index 000000000..c4f51c5ee --- /dev/null +++ b/internal/lint-configs/oxfmt-config/tsdown.config.ts @@ -0,0 +1,11 @@ +import { defineConfig } from 'tsdown'; + +export default defineConfig({ + clean: true, + dts: true, + entry: ['src/index.ts'], + format: ['esm'], + outExtensions: () => ({ + dts: '.d.ts', + }), +}); From c1b1fe90fdc25a7ff7c35e1a97f5f59e1db2cb64 Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 19:39:59 +0800 Subject: [PATCH 08/29] chore(oxlint-config): migrate build to tsdown --- internal/lint-configs/oxlint-config/build.config.ts | 7 ------- internal/lint-configs/oxlint-config/package.json | 3 ++- internal/lint-configs/oxlint-config/tsdown.config.ts | 11 +++++++++++ 3 files changed, 13 insertions(+), 8 deletions(-) delete mode 100644 internal/lint-configs/oxlint-config/build.config.ts create mode 100644 internal/lint-configs/oxlint-config/tsdown.config.ts diff --git a/internal/lint-configs/oxlint-config/build.config.ts b/internal/lint-configs/oxlint-config/build.config.ts deleted file mode 100644 index 97e572c56..000000000 --- a/internal/lint-configs/oxlint-config/build.config.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { defineBuildConfig } from 'unbuild'; - -export default defineBuildConfig({ - clean: true, - declaration: true, - entries: ['src/index'], -}); diff --git a/internal/lint-configs/oxlint-config/package.json b/internal/lint-configs/oxlint-config/package.json index 05d3bedfe..be40ad6c8 100644 --- a/internal/lint-configs/oxlint-config/package.json +++ b/internal/lint-configs/oxlint-config/package.json @@ -12,7 +12,8 @@ "license": "MIT", "type": "module", "scripts": { - "stub": "pnpm unbuild --stub" + "build": "pnpm exec tsdown", + "stub": "pnpm exec tsdown" }, "files": [ "dist" diff --git a/internal/lint-configs/oxlint-config/tsdown.config.ts b/internal/lint-configs/oxlint-config/tsdown.config.ts new file mode 100644 index 000000000..c4f51c5ee --- /dev/null +++ b/internal/lint-configs/oxlint-config/tsdown.config.ts @@ -0,0 +1,11 @@ +import { defineConfig } from 'tsdown'; + +export default defineConfig({ + clean: true, + dts: true, + entry: ['src/index.ts'], + format: ['esm'], + outExtensions: () => ({ + dts: '.d.ts', + }), +}); From a1ca296fc013f874682a388277eaba75794bd8ff Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 19:40:09 +0800 Subject: [PATCH 09/29] chore(node-utils): migrate build to tsdown --- internal/node-utils/build.config.ts | 7 ----- internal/node-utils/package.json | 5 ++-- internal/node-utils/scripts/build.mjs | 37 +++++++++++++++++++++++++ internal/node-utils/src/date.ts | 4 +-- internal/node-utils/src/monorepo.ts | 15 ++++++---- internal/node-utils/tsconfig.build.json | 8 ++++++ internal/node-utils/tsdown.config.ts | 10 +++++++ 7 files changed, 69 insertions(+), 17 deletions(-) delete mode 100644 internal/node-utils/build.config.ts create mode 100644 internal/node-utils/scripts/build.mjs create mode 100644 internal/node-utils/tsconfig.build.json create mode 100644 internal/node-utils/tsdown.config.ts diff --git a/internal/node-utils/build.config.ts b/internal/node-utils/build.config.ts deleted file mode 100644 index 97e572c56..000000000 --- a/internal/node-utils/build.config.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { defineBuildConfig } from 'unbuild'; - -export default defineBuildConfig({ - clean: true, - declaration: true, - entries: ['src/index'], -}); diff --git a/internal/node-utils/package.json b/internal/node-utils/package.json index 40a017f14..bd0e1f258 100644 --- a/internal/node-utils/package.json +++ b/internal/node-utils/package.json @@ -12,7 +12,8 @@ "license": "MIT", "type": "module", "scripts": { - "stub": "pnpm unbuild --stub" + "build": "node ./scripts/build.mjs", + "stub": "node ./scripts/build.mjs" }, "files": [ "dist" @@ -22,7 +23,7 @@ "types": "./dist/index.d.ts", "exports": { ".": { - "types": "./src/index.ts", + "types": "./dist/index.d.ts", "import": "./dist/index.mjs", "default": "./dist/index.mjs" } diff --git a/internal/node-utils/scripts/build.mjs b/internal/node-utils/scripts/build.mjs new file mode 100644 index 000000000..0b13a14ca --- /dev/null +++ b/internal/node-utils/scripts/build.mjs @@ -0,0 +1,37 @@ +import { spawnSync } from 'node:child_process'; + +const pnpmCommand = + process.env.npm_execpath && + process.env.npm_execpath.endsWith('.cjs') + ? [process.execPath, process.env.npm_execpath] + : [process.platform === 'win32' ? 'pnpm.cmd' : 'pnpm']; + +const steps = [ + ['exec', 'tsdown', '--no-dts'], + [ + 'exec', + 'tsc', + '-p', + 'tsconfig.build.json', + '--emitDeclarationOnly', + '--declaration', + '--outDir', + 'dist', + ], +]; + +for (const args of steps) { + const [command, ...commandArgs] = pnpmCommand; + const result = spawnSync(command, [...commandArgs, ...args], { + shell: false, + stdio: 'inherit', + }); + + if (result.error) { + throw result.error; + } + + if (result.status !== 0) { + process.exit(result.status ?? 1); + } +} diff --git a/internal/node-utils/src/date.ts b/internal/node-utils/src/date.ts index d36572d97..7b11583f3 100644 --- a/internal/node-utils/src/date.ts +++ b/internal/node-utils/src/date.ts @@ -1,6 +1,6 @@ import dayjs from 'dayjs'; -import timezone from 'dayjs/plugin/timezone'; -import utc from 'dayjs/plugin/utc'; +import timezone from 'dayjs/plugin/timezone.js'; +import utc from 'dayjs/plugin/utc.js'; dayjs.extend(utc); dayjs.extend(timezone); diff --git a/internal/node-utils/src/monorepo.ts b/internal/node-utils/src/monorepo.ts index b6373e78b..d0c384f50 100644 --- a/internal/node-utils/src/monorepo.ts +++ b/internal/node-utils/src/monorepo.ts @@ -1,10 +1,13 @@ +import type { Package } from '@manypkg/get-packages'; + import { dirname } from 'node:path'; -import { - getPackages as getPackagesFunc, - getPackagesSync as getPackagesSyncFunc, -} from '@manypkg/get-packages'; -import { findUpSync } from 'find-up'; +import * as manypkg from '@manypkg/get-packages'; +import * as findUp from 'find-up'; + +const { getPackages: getPackagesFunc, getPackagesSync: getPackagesSyncFunc } = + manypkg; +const { findUpSync } = findUp; /** * 查找大仓的根目录 @@ -40,7 +43,7 @@ async function getPackages() { */ async function getPackage(pkgName: string) { const { packages } = await getPackages(); - return packages.find((pkg) => pkg.packageJson.name === pkgName); + return packages.find((pkg: Package) => pkg.packageJson.name === pkgName); } export { findMonorepoRoot, getPackage, getPackages, getPackagesSync }; diff --git a/internal/node-utils/tsconfig.build.json b/internal/node-utils/tsconfig.build.json new file mode 100644 index 000000000..b62e0ab6b --- /dev/null +++ b/internal/node-utils/tsconfig.build.json @@ -0,0 +1,8 @@ +{ + "$schema": "https://json.schemastore.org/tsconfig", + "extends": "./tsconfig.json", + "compilerOptions": { + "noEmit": false + }, + "exclude": ["node_modules", "src/__tests__"] +} diff --git a/internal/node-utils/tsdown.config.ts b/internal/node-utils/tsdown.config.ts new file mode 100644 index 000000000..4a607e00c --- /dev/null +++ b/internal/node-utils/tsdown.config.ts @@ -0,0 +1,10 @@ +import { defineConfig } from 'tsdown'; + +export default defineConfig({ + clean: false, + deps: { + skipNodeModulesBundle: true, + }, + entry: ['src/index.ts'], + format: ['esm'], +}); From 675d8b0179159925c8f9e48399e65d3d8f5cb51c Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 19:40:17 +0800 Subject: [PATCH 10/29] chore(core-icons): migrate build to tsdown --- packages/@core/base/icons/package.json | 4 ++-- packages/@core/base/icons/tsdown.config.ts | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/@core/base/icons/package.json b/packages/@core/base/icons/package.json index 499fee711..a26d8b618 100644 --- a/packages/@core/base/icons/package.json +++ b/packages/@core/base/icons/package.json @@ -11,7 +11,7 @@ "license": "MIT", "type": "module", "scripts": { - "build": "tsdown" + "build": "pnpm exec tsdown" }, "files": [ "dist" @@ -28,7 +28,7 @@ "publishConfig": { "exports": { ".": { - "types": "./dist/index.d.mts", + "types": "./dist/index.d.ts", "default": "./dist/index.mjs" } } diff --git a/packages/@core/base/icons/tsdown.config.ts b/packages/@core/base/icons/tsdown.config.ts index ad91feebb..c4f51c5ee 100644 --- a/packages/@core/base/icons/tsdown.config.ts +++ b/packages/@core/base/icons/tsdown.config.ts @@ -5,4 +5,7 @@ export default defineConfig({ dts: true, entry: ['src/index.ts'], format: ['esm'], + outExtensions: () => ({ + dts: '.d.ts', + }), }); From 59912a00bc957dc9b7ef7939310f415c8f0d7e42 Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 19:40:29 +0800 Subject: [PATCH 11/29] chore(core-shared): migrate build to tsdown --- packages/@core/base/shared/package.json | 16 ++++++++-------- .../base/shared/src/utils/__tests__/date.test.ts | 4 ++-- packages/@core/base/shared/src/utils/date.ts | 4 ++-- packages/@core/base/shared/tsdown.config.ts | 3 +++ 4 files changed, 15 insertions(+), 12 deletions(-) diff --git a/packages/@core/base/shared/package.json b/packages/@core/base/shared/package.json index d58ff5d3c..94ad567f8 100644 --- a/packages/@core/base/shared/package.json +++ b/packages/@core/base/shared/package.json @@ -11,8 +11,8 @@ "license": "MIT", "type": "module", "scripts": { - "build": "tsdown", - "stub": "tsdown" + "build": "pnpm exec tsdown", + "stub": "pnpm exec tsdown" }, "files": [ "dist" @@ -53,27 +53,27 @@ "publishConfig": { "exports": { "./constants": { - "types": "./dist/constants/index.d.mts", + "types": "./dist/constants/index.d.ts", "default": "./dist/constants/index.mjs" }, "./utils": { - "types": "./dist/utils/index.d.mts", + "types": "./dist/utils/index.d.ts", "default": "./dist/utils/index.mjs" }, "./color": { - "types": "./dist/color/index.d.mts", + "types": "./dist/color/index.d.ts", "default": "./dist/color/index.mjs" }, "./cache": { - "types": "./dist/cache/index.d.mts", + "types": "./dist/cache/index.d.ts", "default": "./dist/cache/index.mjs" }, "./store": { - "types": "./dist/store.d.mts", + "types": "./dist/store.d.ts", "default": "./dist/store.mjs" }, "./global-state": { - "types": "./dist/global-state.d.mts", + "types": "./dist/global-state.d.ts", "default": "./dist/global-state.mjs" } } diff --git a/packages/@core/base/shared/src/utils/__tests__/date.test.ts b/packages/@core/base/shared/src/utils/__tests__/date.test.ts index 46a27c588..dc8a9e88d 100644 --- a/packages/@core/base/shared/src/utils/__tests__/date.test.ts +++ b/packages/@core/base/shared/src/utils/__tests__/date.test.ts @@ -1,6 +1,6 @@ import dayjs from 'dayjs'; -import timezone from 'dayjs/plugin/timezone'; -import utc from 'dayjs/plugin/utc'; +import timezone from 'dayjs/plugin/timezone.js'; +import utc from 'dayjs/plugin/utc.js'; import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'; import { diff --git a/packages/@core/base/shared/src/utils/date.ts b/packages/@core/base/shared/src/utils/date.ts index 926050d11..c68c33850 100644 --- a/packages/@core/base/shared/src/utils/date.ts +++ b/packages/@core/base/shared/src/utils/date.ts @@ -1,6 +1,6 @@ import dayjs from 'dayjs'; -import timezone from 'dayjs/plugin/timezone'; -import utc from 'dayjs/plugin/utc'; +import timezone from 'dayjs/plugin/timezone.js'; +import utc from 'dayjs/plugin/utc.js'; dayjs.extend(utc); dayjs.extend(timezone); diff --git a/packages/@core/base/shared/tsdown.config.ts b/packages/@core/base/shared/tsdown.config.ts index 5226ddae6..d83605cad 100644 --- a/packages/@core/base/shared/tsdown.config.ts +++ b/packages/@core/base/shared/tsdown.config.ts @@ -12,4 +12,7 @@ export default defineConfig({ 'utils/index': 'src/utils/index.ts', }, format: ['esm'], + outExtensions: () => ({ + dts: '.d.ts', + }), }); From ed3cd2fe3b7e235d284eb2b8d765ef3bc3ee6183 Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 19:40:36 +0800 Subject: [PATCH 12/29] chore(core-typings): migrate build to tsdown --- packages/@core/base/typings/package.json | 6 +++--- packages/@core/base/typings/tsdown.config.ts | 3 +++ 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/packages/@core/base/typings/package.json b/packages/@core/base/typings/package.json index 591bbaae4..393a7acc6 100644 --- a/packages/@core/base/typings/package.json +++ b/packages/@core/base/typings/package.json @@ -11,7 +11,7 @@ "license": "MIT", "type": "module", "scripts": { - "build": "tsdown" + "build": "pnpm exec tsdown" }, "files": [ "dist", @@ -19,7 +19,7 @@ ], "main": "./dist/index.mjs", "module": "./dist/index.mjs", - "types": "./dist/index.d.mts", + "types": "./dist/index.d.ts", "exports": { ".": { "types": "./src/index.ts", @@ -33,7 +33,7 @@ "publishConfig": { "exports": { ".": { - "types": "./dist/index.d.mts", + "types": "./dist/index.d.ts", "default": "./dist/index.mjs" } } diff --git a/packages/@core/base/typings/tsdown.config.ts b/packages/@core/base/typings/tsdown.config.ts index ad91feebb..c4f51c5ee 100644 --- a/packages/@core/base/typings/tsdown.config.ts +++ b/packages/@core/base/typings/tsdown.config.ts @@ -5,4 +5,7 @@ export default defineConfig({ dts: true, entry: ['src/index.ts'], format: ['esm'], + outExtensions: () => ({ + dts: '.d.ts', + }), }); From f154d53be991b95a8204bb089245c8fa005bd798 Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 19:40:42 +0800 Subject: [PATCH 13/29] chore(core-composables): migrate build to tsdown --- packages/@core/composables/package.json | 4 ++-- packages/@core/composables/tsdown.config.ts | 3 +++ 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/@core/composables/package.json b/packages/@core/composables/package.json index ba8cda3ee..b33c33fef 100644 --- a/packages/@core/composables/package.json +++ b/packages/@core/composables/package.json @@ -11,7 +11,7 @@ "license": "MIT", "type": "module", "scripts": { - "build": "tsdown" + "build": "pnpm exec tsdown" }, "files": [ "dist" @@ -29,7 +29,7 @@ "publishConfig": { "exports": { ".": { - "types": "./dist/index.d.mts", + "types": "./dist/index.d.ts", "default": "./dist/index.mjs" } } diff --git a/packages/@core/composables/tsdown.config.ts b/packages/@core/composables/tsdown.config.ts index ad91feebb..c4f51c5ee 100644 --- a/packages/@core/composables/tsdown.config.ts +++ b/packages/@core/composables/tsdown.config.ts @@ -5,4 +5,7 @@ export default defineConfig({ dts: true, entry: ['src/index.ts'], format: ['esm'], + outExtensions: () => ({ + dts: '.d.ts', + }), }); From 0babdfbc44ed8e457a2c658e4ae65d4d9d4e6e6c Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 19:40:48 +0800 Subject: [PATCH 14/29] chore(core-preferences): migrate build to tsdown --- packages/@core/preferences/package.json | 2 +- packages/@core/preferences/tsdown.config.ts | 3 +++ 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/@core/preferences/package.json b/packages/@core/preferences/package.json index 620e89edd..53f331854 100644 --- a/packages/@core/preferences/package.json +++ b/packages/@core/preferences/package.json @@ -11,7 +11,7 @@ "license": "MIT", "type": "module", "scripts": { - "build": "tsdown" + "build": "pnpm exec tsdown" }, "files": [ "dist", diff --git a/packages/@core/preferences/tsdown.config.ts b/packages/@core/preferences/tsdown.config.ts index ad91feebb..c4f51c5ee 100644 --- a/packages/@core/preferences/tsdown.config.ts +++ b/packages/@core/preferences/tsdown.config.ts @@ -5,4 +5,7 @@ export default defineConfig({ dts: true, entry: ['src/index.ts'], format: ['esm'], + outExtensions: () => ({ + dts: '.d.ts', + }), }); From af09d652a3aaca52ae393894d6da113f2cb084eb Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 19:40:54 +0800 Subject: [PATCH 15/29] chore(turbo-run): migrate build to tsdown --- scripts/turbo-run/build.config.ts | 7 ------- scripts/turbo-run/package.json | 3 ++- scripts/turbo-run/tsdown.config.ts | 11 +++++++++++ 3 files changed, 13 insertions(+), 8 deletions(-) delete mode 100644 scripts/turbo-run/build.config.ts create mode 100644 scripts/turbo-run/tsdown.config.ts diff --git a/scripts/turbo-run/build.config.ts b/scripts/turbo-run/build.config.ts deleted file mode 100644 index 97e572c56..000000000 --- a/scripts/turbo-run/build.config.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { defineBuildConfig } from 'unbuild'; - -export default defineBuildConfig({ - clean: true, - declaration: true, - entries: ['src/index'], -}); diff --git a/scripts/turbo-run/package.json b/scripts/turbo-run/package.json index b2acd458f..57b1dca05 100644 --- a/scripts/turbo-run/package.json +++ b/scripts/turbo-run/package.json @@ -5,7 +5,8 @@ "license": "MIT", "type": "module", "scripts": { - "stub": "pnpm unbuild --stub" + "build": "pnpm exec tsdown", + "stub": "pnpm exec tsdown" }, "files": [ "dist" diff --git a/scripts/turbo-run/tsdown.config.ts b/scripts/turbo-run/tsdown.config.ts new file mode 100644 index 000000000..c4f51c5ee --- /dev/null +++ b/scripts/turbo-run/tsdown.config.ts @@ -0,0 +1,11 @@ +import { defineConfig } from 'tsdown'; + +export default defineConfig({ + clean: true, + dts: true, + entry: ['src/index.ts'], + format: ['esm'], + outExtensions: () => ({ + dts: '.d.ts', + }), +}); From dba774e1c76683f45f5b57a5df95062ee24b615f Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 19:41:00 +0800 Subject: [PATCH 16/29] chore(vsh): migrate build to tsdown --- scripts/vsh/build.config.ts | 7 ------- scripts/vsh/package.json | 3 ++- scripts/vsh/tsdown.config.ts | 11 +++++++++++ 3 files changed, 13 insertions(+), 8 deletions(-) delete mode 100644 scripts/vsh/build.config.ts create mode 100644 scripts/vsh/tsdown.config.ts diff --git a/scripts/vsh/build.config.ts b/scripts/vsh/build.config.ts deleted file mode 100644 index 97e572c56..000000000 --- a/scripts/vsh/build.config.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { defineBuildConfig } from 'unbuild'; - -export default defineBuildConfig({ - clean: true, - declaration: true, - entries: ['src/index'], -}); diff --git a/scripts/vsh/package.json b/scripts/vsh/package.json index 441dbb756..8bea4f025 100644 --- a/scripts/vsh/package.json +++ b/scripts/vsh/package.json @@ -5,7 +5,8 @@ "license": "MIT", "type": "module", "scripts": { - "stub": "pnpm unbuild --stub" + "build": "pnpm exec tsdown", + "stub": "pnpm exec tsdown" }, "files": [ "dist" diff --git a/scripts/vsh/tsdown.config.ts b/scripts/vsh/tsdown.config.ts new file mode 100644 index 000000000..c4f51c5ee --- /dev/null +++ b/scripts/vsh/tsdown.config.ts @@ -0,0 +1,11 @@ +import { defineConfig } from 'tsdown'; + +export default defineConfig({ + clean: true, + dts: true, + entry: ['src/index.ts'], + format: ['esm'], + outExtensions: () => ({ + dts: '.d.ts', + }), +}); From 913f77fd2f603d7e1df40c5811be1cd433a4d2f7 Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 19:41:17 +0800 Subject: [PATCH 17/29] chore(pnpm): sync lockfile for tsdown migration --- pnpm-lock.yaml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4f8ccb35e..cec9fa055 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1017,10 +1017,6 @@ importers: internal/lint-configs/eslint-config: dependencies: - '@vben/oxlint-config': - specifier: workspace:* - version: link:../oxlint-config - devDependencies: '@eslint/js': specifier: 'catalog:' version: 10.0.1(eslint@10.0.3(jiti@2.6.1)) @@ -1030,6 +1026,9 @@ importers: '@typescript-eslint/parser': specifier: 'catalog:' version: 8.57.0(eslint@10.0.3(jiti@2.6.1))(typescript@5.9.3) + '@vben/oxlint-config': + specifier: workspace:* + version: link:../oxlint-config eslint: specifier: 'catalog:' version: 10.0.3(jiti@2.6.1) From 26e9aa244b1c655377cdd49e12a5d5ce753a88f2 Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 20:27:01 +0800 Subject: [PATCH 18/29] fix(vite): adapt rolldown workspace resolution --- internal/vite-config/package.json | 3 +- internal/vite-config/src/plugins/index.ts | 5 +- internal/vite-config/src/typing.ts | 2 +- packages/@core/base/design/package.json | 2 + packages/@core/base/icons/package.json | 1 + packages/@core/base/shared/package.json | 6 + packages/@core/base/typings/package.json | 1 + packages/@core/composables/package.json | 1 + packages/@core/ui-kit/form-ui/package.json | 1 + packages/@core/ui-kit/layout-ui/package.json | 1 + packages/@core/ui-kit/menu-ui/package.json | 1 + packages/@core/ui-kit/popup-ui/package.json | 1 + packages/@core/ui-kit/tabs-ui/package.json | 1 + pnpm-lock.yaml | 347 +++---------------- pnpm-workspace.yaml | 3 +- 15 files changed, 77 insertions(+), 299 deletions(-) diff --git a/internal/vite-config/package.json b/internal/vite-config/package.json index d8e87d11b..129113704 100644 --- a/internal/vite-config/package.json +++ b/internal/vite-config/package.json @@ -48,13 +48,12 @@ "@vitejs/plugin-vue-jsx": "catalog:", "dayjs": "catalog:", "dotenv": "catalog:", - "rollup": "catalog:", "rollup-plugin-visualizer": "catalog:", "sass": "catalog:", "sass-embedded": "catalog:", + "unplugin-dts": "catalog:", "vite": "catalog:", "vite-plugin-compression": "catalog:", - "vite-plugin-dts": "catalog:", "vite-plugin-html": "catalog:", "vite-plugin-lazy-import": "catalog:" } diff --git a/internal/vite-config/src/plugins/index.ts b/internal/vite-config/src/plugins/index.ts index 114d4d837..9d3ba3f1c 100644 --- a/internal/vite-config/src/plugins/index.ts +++ b/internal/vite-config/src/plugins/index.ts @@ -12,8 +12,8 @@ import tailwindcss from '@tailwindcss/vite'; import viteVue from '@vitejs/plugin-vue'; import viteVueJsx from '@vitejs/plugin-vue-jsx'; import { visualizer as viteVisualizerPlugin } from 'rollup-plugin-visualizer'; +import viteDtsPlugin from 'unplugin-dts/vite'; import viteCompressPlugin from 'vite-plugin-compression'; -import viteDtsPlugin from 'vite-plugin-dts'; import { createHtmlPlugin as viteHtmlPlugin } from 'vite-plugin-html'; import { VitePWA } from 'vite-plugin-pwa'; import viteVueDevTools from 'vite-plugin-vue-devtools'; @@ -231,12 +231,13 @@ async function loadLibraryPlugins( // 单独取,否则commonOptions拿不到 const isBuild = options.isBuild; const { dts, ...commonOptions } = options; + const dtsOptions = typeof dts === 'object' ? dts : undefined; const commonPlugins = await loadCommonPlugins(commonOptions); return await loadConditionPlugins([ ...commonPlugins, { condition: isBuild && !!dts, - plugins: () => [viteDtsPlugin({ logLevel: 'error' })], + plugins: () => [viteDtsPlugin(dtsOptions)], }, ]); } diff --git a/internal/vite-config/src/typing.ts b/internal/vite-config/src/typing.ts index 2dd048306..376b47b8a 100644 --- a/internal/vite-config/src/typing.ts +++ b/internal/vite-config/src/typing.ts @@ -1,11 +1,11 @@ import type { PluginVisualizerOptions } from 'rollup-plugin-visualizer'; +import type { PluginOptions } from 'unplugin-dts'; import type { ConfigEnv, PluginOption, UserConfig, UserConfigFnPromise, } from 'vite'; -import type { PluginOptions } from 'vite-plugin-dts'; import type { Options as PwaPluginOptions } from 'vite-plugin-pwa'; /** diff --git a/packages/@core/base/design/package.json b/packages/@core/base/design/package.json index 071049c80..e5a6d6e83 100644 --- a/packages/@core/base/design/package.json +++ b/packages/@core/base/design/package.json @@ -23,6 +23,7 @@ "exports": { "./bem": { "development": "./src/scss-bem/bem.scss", + "production": "./src/scss-bem/bem.scss", "default": "./dist/bem.scss" }, "./theme": { @@ -31,6 +32,7 @@ ".": { "types": "./src/index.ts", "development": "./src/index.ts", + "production": "./src/index.ts", "default": "./dist/design.css" } }, diff --git a/packages/@core/base/icons/package.json b/packages/@core/base/icons/package.json index a26d8b618..558a5b7ca 100644 --- a/packages/@core/base/icons/package.json +++ b/packages/@core/base/icons/package.json @@ -22,6 +22,7 @@ ".": { "types": "./src/index.ts", "development": "./src/index.ts", + "production": "./src/index.ts", "default": "./dist/index.mjs" } }, diff --git a/packages/@core/base/shared/package.json b/packages/@core/base/shared/package.json index 94ad567f8..f6405b92a 100644 --- a/packages/@core/base/shared/package.json +++ b/packages/@core/base/shared/package.json @@ -22,31 +22,37 @@ "./constants": { "types": "./src/constants/index.ts", "development": "./src/constants/index.ts", + "production": "./src/constants/index.ts", "default": "./dist/constants/index.mjs" }, "./utils": { "types": "./src/utils/index.ts", "development": "./src/utils/index.ts", + "production": "./src/utils/index.ts", "default": "./dist/utils/index.mjs" }, "./color": { "types": "./src/color/index.ts", "development": "./src/color/index.ts", + "production": "./src/color/index.ts", "default": "./dist/color/index.mjs" }, "./cache": { "types": "./src/cache/index.ts", "development": "./src/cache/index.ts", + "production": "./src/cache/index.ts", "default": "./dist/cache/index.mjs" }, "./store": { "types": "./src/store.ts", "development": "./src/store.ts", + "production": "./src/store.ts", "default": "./dist/store.mjs" }, "./global-state": { "types": "./src/global-state.ts", "development": "./src/global-state.ts", + "production": "./src/global-state.ts", "default": "./dist/global-state.mjs" } }, diff --git a/packages/@core/base/typings/package.json b/packages/@core/base/typings/package.json index 393a7acc6..b90f3df25 100644 --- a/packages/@core/base/typings/package.json +++ b/packages/@core/base/typings/package.json @@ -24,6 +24,7 @@ ".": { "types": "./src/index.ts", "development": "./src/index.ts", + "production": "./src/index.ts", "default": "./dist/index.mjs" }, "./vue-router": { diff --git a/packages/@core/composables/package.json b/packages/@core/composables/package.json index b33c33fef..de58e59ff 100644 --- a/packages/@core/composables/package.json +++ b/packages/@core/composables/package.json @@ -23,6 +23,7 @@ ".": { "types": "./src/index.ts", "development": "./src/index.ts", + "production": "./src/index.ts", "default": "./dist/index.mjs" } }, diff --git a/packages/@core/ui-kit/form-ui/package.json b/packages/@core/ui-kit/form-ui/package.json index 7ea3b3ace..c9db6eca2 100644 --- a/packages/@core/ui-kit/form-ui/package.json +++ b/packages/@core/ui-kit/form-ui/package.json @@ -26,6 +26,7 @@ ".": { "types": "./src/index.ts", "development": "./src/index.ts", + "production": "./src/index.ts", "default": "./dist/index.mjs" } }, diff --git a/packages/@core/ui-kit/layout-ui/package.json b/packages/@core/ui-kit/layout-ui/package.json index 9554b4bac..f1a01bbeb 100644 --- a/packages/@core/ui-kit/layout-ui/package.json +++ b/packages/@core/ui-kit/layout-ui/package.json @@ -26,6 +26,7 @@ ".": { "types": "./src/index.ts", "development": "./src/index.ts", + "production": "./src/index.ts", "default": "./dist/index.mjs" } }, diff --git a/packages/@core/ui-kit/menu-ui/package.json b/packages/@core/ui-kit/menu-ui/package.json index dfb3fabe1..fa3a4015b 100644 --- a/packages/@core/ui-kit/menu-ui/package.json +++ b/packages/@core/ui-kit/menu-ui/package.json @@ -26,6 +26,7 @@ ".": { "types": "./src/index.ts", "development": "./src/index.ts", + "production": "./src/index.ts", "default": "./dist/index.mjs" } }, diff --git a/packages/@core/ui-kit/popup-ui/package.json b/packages/@core/ui-kit/popup-ui/package.json index fb885d3a5..0d4d2c42c 100644 --- a/packages/@core/ui-kit/popup-ui/package.json +++ b/packages/@core/ui-kit/popup-ui/package.json @@ -26,6 +26,7 @@ ".": { "types": "./src/index.ts", "development": "./src/index.ts", + "production": "./src/index.ts", "default": "./dist/index.mjs" } }, diff --git a/packages/@core/ui-kit/tabs-ui/package.json b/packages/@core/ui-kit/tabs-ui/package.json index c436122a9..f329c04bc 100644 --- a/packages/@core/ui-kit/tabs-ui/package.json +++ b/packages/@core/ui-kit/tabs-ui/package.json @@ -26,6 +26,7 @@ ".": { "types": "./src/index.ts", "development": "./src/index.ts", + "production": "./src/index.ts", "default": "./dist/index.mjs" } }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index cec9fa055..f6cc29406 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -342,9 +342,6 @@ catalogs: rimraf: specifier: ^6.1.3 version: 6.1.3 - rollup: - specifier: ^4.59.0 - version: 4.59.0 rollup-plugin-visualizer: specifier: ^7.0.1 version: 7.0.1 @@ -414,6 +411,9 @@ catalogs: unbuild: specifier: ^3.6.1 version: 3.6.1 + unplugin-dts: + specifier: ^1.0.0-beta.6 + version: 1.0.0-beta.6 unplugin-element-plus: specifier: ^0.11.2 version: 0.11.2 @@ -426,9 +426,6 @@ catalogs: vite-plugin-compression: specifier: ^0.5.1 version: 0.5.1 - vite-plugin-dts: - specifier: ^4.5.4 - version: 4.5.4 vite-plugin-html: specifier: ^3.2.2 version: 3.2.2 @@ -1229,9 +1226,6 @@ importers: dotenv: specifier: 'catalog:' version: 17.3.1 - rollup: - specifier: 'catalog:' - version: 4.59.0 rollup-plugin-visualizer: specifier: 'catalog:' version: 7.0.1(rolldown@1.0.0-rc.9)(rollup@4.59.0) @@ -1241,15 +1235,15 @@ importers: sass-embedded: specifier: 'catalog:' version: 1.98.0 + unplugin-dts: + specifier: 'catalog:' + version: 1.0.0-beta.6(esbuild@0.27.4)(rolldown@1.0.0-rc.9)(rollup@4.59.0)(typescript@5.9.3)(vite@8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.46.0)(yaml@2.8.2)) vite: specifier: 'catalog:' version: 8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.46.0)(yaml@2.8.2) vite-plugin-compression: specifier: 'catalog:' version: 0.5.1(vite@8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.46.0)(yaml@2.8.2)) - vite-plugin-dts: - specifier: 'catalog:' - version: 4.5.4(@types/node@25.5.0)(rollup@4.59.0)(typescript@5.9.3)(vite@8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.46.0)(yaml@2.8.2)) vite-plugin-html: specifier: 'catalog:' version: 3.2.2(vite@8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.46.0)(yaml@2.8.2)) @@ -3974,19 +3968,6 @@ packages: engines: {node: '>=18'} hasBin: true - '@microsoft/api-extractor-model@7.33.4': - resolution: {integrity: sha512-u1LTaNTikZAQ9uK6KG1Ms7nvNedsnODnspq/gH2dcyETWvH4hVNGNDvRAEutH66kAmxA4/necElqGNs1FggC8w==} - - '@microsoft/api-extractor@7.57.7': - resolution: {integrity: sha512-kmnmVs32MFWbV5X6BInC1/TfCs7y1ugwxv1xHsAIj/DyUfoe7vtO0alRUgbQa57+yRGHBBjlNcEk33SCAt5/dA==} - hasBin: true - - '@microsoft/tsdoc-config@0.18.1': - resolution: {integrity: sha512-9brPoVdfN9k9g0dcWkFeA7IH9bbcttzDJlXvkf8b2OBzd5MueR1V2wkKBL0abn0otvmkHJC6aapBOTJDDeMCZg==} - - '@microsoft/tsdoc@0.16.0': - resolution: {integrity: sha512-xgAyonlVVS+q7Vc7qLW0UrJU7rSFcETRWsqdXZtjzRU8dF+6CkozTK4V4y1LwOX7j8r/vHphjDeMeGI4tNGeGA==} - '@napi-rs/wasm-runtime@1.1.1': resolution: {integrity: sha512-p64ah1M1ld8xjWv3qbvFwHiFVWrq1yFvV4f7w+mzaqiR4IlSgkqhcRdHwsGgomwzBH51sRY4NEowLxnaBjcW/A==} @@ -4834,36 +4815,6 @@ packages: cpu: [x64] os: [win32] - '@rushstack/node-core-library@5.20.3': - resolution: {integrity: sha512-95JgEPq2k7tHxhF9/OJnnyHDXfC9cLhhta0An/6MlkDsX2A6dTzDrTUG18vx4vjc280V0fi0xDH9iQczpSuWsw==} - peerDependencies: - '@types/node': '*' - peerDependenciesMeta: - '@types/node': - optional: true - - '@rushstack/problem-matcher@0.2.1': - resolution: {integrity: sha512-gulfhBs6n+I5b7DvjKRfhMGyUejtSgOHTclF/eONr8hcgF1APEDjhxIsfdUYYMzC3rvLwGluqLjbwCFZ8nxrog==} - peerDependencies: - '@types/node': '*' - peerDependenciesMeta: - '@types/node': - optional: true - - '@rushstack/rig-package@0.7.2': - resolution: {integrity: sha512-9XbFWuqMYcHUso4mnETfhGVUSaADBRj6HUAAEYk50nMPn8WRICmBuCphycQGNB3duIR6EEZX3Xj3SYc2XiP+9A==} - - '@rushstack/terminal@0.22.3': - resolution: {integrity: sha512-gHC9pIMrUPzAbBiI4VZMU7Q+rsCzb8hJl36lFIulIzoceKotyKL3Rd76AZ2CryCTKEg+0bnTj406HE5YY5OQvw==} - peerDependencies: - '@types/node': '*' - peerDependenciesMeta: - '@types/node': - optional: true - - '@rushstack/ts-command-line@5.3.3': - resolution: {integrity: sha512-c+ltdcvC7ym+10lhwR/vWiOhsrm/bP3By2VsFcs5qTKv+6tTmxgbVrtJ5NdNjANiV5TcmOZgUN+5KYQ4llsvEw==} - '@sec-ant/readable-stream@0.4.1': resolution: {integrity: sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==} @@ -5076,9 +5027,6 @@ packages: '@types/archiver@7.0.0': resolution: {integrity: sha512-/3vwGwx9n+mCQdYZ2IKGGHEFL30I96UgBlk8EtRDDFQ9uxM1l4O5Ci6r00EMAkiDaTqD9DQ6nVrWRICnBPtzzg==} - '@types/argparse@1.0.38': - resolution: {integrity: sha512-ebDJ9b0e702Yr7pWgB0jzm+CX4Srzz8RcXtLJDJB+BSccqMa36uyH/zUsSYao5+BD1ytv3k3rPYCq4mAE1hsXA==} - '@types/chai@5.2.3': resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==} @@ -5608,9 +5556,6 @@ packages: '@vue/compiler-ssr@3.5.30': resolution: {integrity: sha512-NsYK6OMTnx109PSL2IAyf62JP6EUdk4Dmj6AkWcJGBvN0dQoMYtVekAmdqgTtWQgEJo+Okstbf/1p7qZr5H+bA==} - '@vue/compiler-vue2@2.7.16': - resolution: {integrity: sha512-qYC3Psj9S/mfu9uVi5WvNZIzq+xnXMhOwbTFKKDD7b1lhpnn71jXSFdTQ+WsIEk0ONCd7VV2IMm7ONl6tbQ86A==} - '@vue/devtools-api@6.6.4': resolution: {integrity: sha512-sGhTPMuXqZ1rVOk32RylztWkfXTRhuS7vgAKv0zjqk8gbsHkJ7xfFf+jbySxt7tWObEJwyKaHMikV/WGDiQm8g==} @@ -5637,14 +5582,6 @@ packages: '@vue/devtools-shared@8.1.0': resolution: {integrity: sha512-h8uCb4Qs8UT8VdTT5yjY6tOJ//qH7EpxToixR0xqejR55t5OdISIg7AJ7eBkhBs8iu1qG5gY3QQNN1DF1EelAA==} - '@vue/language-core@2.2.0': - resolution: {integrity: sha512-O1ZZFaaBGkKbsRfnVH1ifOK1/1BUkyK+3SQsfnh6PmMmD4qJcTU8godCeA96jjDRTL6zgnK7YzCHfaUlH2r0Mw==} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - '@vue/language-core@3.2.5': resolution: {integrity: sha512-d3OIxN/+KRedeM5wQ6H6NIpwS3P5gC9nmyaHgBk+rO6dIsjY+tOh4UlPpiZbAh3YtLdCGEX4M16RmsBqPmJV+g==} @@ -5836,22 +5773,6 @@ packages: resolution: {integrity: sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==} engines: {node: '>= 14'} - ajv-draft-04@1.0.0: - resolution: {integrity: sha512-mv00Te6nmYbRp5DCwclxtt7yV/joXJPGS7nM+97GdxvuttCOfgI3K4U25zboyeX0O+myI8ERluxQe5wljMmVIw==} - peerDependencies: - ajv: ^8.5.0 - peerDependenciesMeta: - ajv: - optional: true - - ajv-formats@3.0.1: - resolution: {integrity: sha512-8iUql50EUR+uUcdRQ3HDqa6EVyo3docL8g5WJ3FNcWmu62IbkGUue/pEyLBW8VGKKucTPgqeks4fIU1DA4yowQ==} - peerDependencies: - ajv: ^8.0.0 - peerDependenciesMeta: - ajv: - optional: true - ajv@6.14.0: resolution: {integrity: sha512-IWrosm/yrn43eiKqkfkHis7QioDleaXQHdDVPKg0FSwwd/DuvyX79TZnFOnYpB7dcsFAMmtFztZuXPDvSePkFw==} @@ -5862,9 +5783,6 @@ packages: resolution: {integrity: sha512-1K0wtDaRONwfhL4h8bbJ9qTjmY6rhGgRvvagXkMBsAOMNr+3Q2SffHECh9DIuNVrMA1JwA0zCwhyepgBZVakng==} engines: {node: '>= 14.0.0'} - alien-signals@0.4.14: - resolution: {integrity: sha512-itUAVzhczTmP2U5yX67xVpsbbOiquusbWVyA9N+sy6+r6YVbFkahXvNCeEPWEOMhwDYwbVbGHFkVL03N9I5g+Q==} - alien-signals@3.1.2: resolution: {integrity: sha512-d9dYqZTS90WLiU0I5c6DHj/HcKkF8ZyGN3G5x8wSbslulz70KOxaqCT0hQCo9KOyhVqzqGojvNdJXoTumZOtcw==} @@ -6712,9 +6630,6 @@ packages: sqlite3: optional: true - de-indent@1.0.2: - resolution: {integrity: sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==} - debug@4.4.3: resolution: {integrity: sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==} engines: {node: '>=6.0'} @@ -6815,10 +6730,6 @@ packages: resolution: {integrity: sha512-EjePK1srD3P08o2j4f0ExnylqRs5B9tJjcp9t1krH2qRi8CCdsYfwe9JgSLurFBWwq4uOlipzfk5fHNvwFKr8Q==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - diff@8.0.3: - resolution: {integrity: sha512-qejHi7bcSD4hQAZE0tNAawRK1ZtafHDmMTMkrrIGgSLl7hTnQHmKCeB45xAcbfTqK2zowkM3j3bHt/4b/ARbYQ==} - engines: {node: '>=0.3.1'} - dijkstrajs@1.0.3: resolution: {integrity: sha512-qiSlmBq9+BCdCA/L46dw8Uy93mloxsPSbwnm5yrKn2vMPiy8KyAskTF6zuV/j5BMsmOGZDPs7KjU+mjb670kfA==} @@ -7437,10 +7348,6 @@ packages: resolution: {integrity: sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==} engines: {node: '>=12'} - fs-extra@11.3.4: - resolution: {integrity: sha512-CTXd6rk/M3/ULNQj8FBqBWHYBVYybQ3VPBw0xGKFe3tuH7ytT6ACnvzpIQ3UZtB8yvUKC2cXn1a+x+5EVQLovA==} - engines: {node: '>=14.14'} - fs-extra@7.0.1: resolution: {integrity: sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==} engines: {node: '>=6 <7 || >=8'} @@ -7795,10 +7702,6 @@ packages: resolution: {integrity: sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==} engines: {node: '>=6'} - import-lazy@4.0.0: - resolution: {integrity: sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==} - engines: {node: '>=8'} - import-meta-resolve@4.2.0: resolution: {integrity: sha512-Iqv2fzaTQN28s/FwZAoFq0ZSs/7hMAHJVX+w8PZl3cY19Pxk6jFFalxQoIfW2826i/fDLXv8IiEZRIT0lDuWcg==} @@ -8594,10 +8497,6 @@ packages: lru-cache@5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} - lru-cache@6.0.0: - resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} - engines: {node: '>=10'} - lucide-vue-next@0.577.0: resolution: {integrity: sha512-py05bAfv9SHVJqscbiOnjcnLlEmOffA58a+7XhZuFxrs6txe1E8VoR1ngWGTYO+9aVKABAz8l3ee3PqiQN9QPA==} peerDependencies: @@ -8720,10 +8619,6 @@ packages: resolution: {integrity: sha512-VP79XUPxV2CigYP3jWwAUFSku2aKqBH7uTAapFWCBqutsbmDo96KY5o8uh6U+/YSIn5OxJnXp73beVkpqMIGhA==} engines: {node: '>=18'} - minimatch@10.2.3: - resolution: {integrity: sha512-Rwi3pnapEqirPSbWbrZaa6N3nmqq4Xer/2XooiOKyV3q12ML06f7MOuc5DVH8ONZIFhwIYQ3yzPH4nt7iWHaTg==} - engines: {node: 18 || 20 || >=22} - minimatch@10.2.4: resolution: {integrity: sha512-oRjTw/97aTBN0RHbYCdtF1MQfvusSIBQM0IZEgzl6426+8jSC0nF1a/GmnVLpfB9yyr6g6FTqWqiZVbxrtaCIg==} engines: {node: 18 || 20 || >=22} @@ -9995,11 +9890,6 @@ packages: resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==} hasBin: true - semver@7.5.4: - resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} - engines: {node: '>=10'} - hasBin: true - semver@7.7.4: resolution: {integrity: sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==} engines: {node: '>=10'} @@ -10180,10 +10070,6 @@ packages: streamx@2.23.0: resolution: {integrity: sha512-kn+e44esVfn2Fa/O0CPFcex27fjIL6MkVae0Mm6q+E6f0hWv578YCERbv+4m02cjxvDsPKLnmxral/rR6lBMAg==} - string-argv@0.3.2: - resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==} - engines: {node: '>=0.6.19'} - string-width@4.2.3: resolution: {integrity: sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==} engines: {node: '>=8'} @@ -10269,10 +10155,6 @@ packages: resolution: {integrity: sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==} engines: {node: '>=0.10.0'} - strip-json-comments@3.1.1: - resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} - engines: {node: '>=8'} - strip-literal@3.1.0: resolution: {integrity: sha512-8r3mkIM/2+PpjHoOtiAW8Rg3jJLHaV7xPwG+YRGrv6FP0wwk/toTpATxWYOW0BKdWwl82VT2tFYi5DlROa0Mxg==} @@ -10661,11 +10543,6 @@ packages: resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==} engines: {node: '>= 0.4'} - typescript@5.8.2: - resolution: {integrity: sha512-aJn6wq13/afZp/jT9QZmwEjDqqvSGp1VT5GVg+f/t6/oVyrgXM6BY1h9BRh/O5p3PlUPAe+WuiEZOmb/49RqoQ==} - engines: {node: '>=14.17'} - hasBin: true - typescript@5.9.3: resolution: {integrity: sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==} engines: {node: '>=14.17'} @@ -10772,6 +10649,36 @@ packages: resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==} engines: {node: '>= 10.0.0'} + unplugin-dts@1.0.0-beta.6: + resolution: {integrity: sha512-+xbFv5aVFtLZFNBAKI4+kXmd2h+T42/AaP8Bsp0YP/je/uOTN94Ame2Xt3e9isZS+Z7/hrLCLbsVJh+saqFMfQ==} + peerDependencies: + '@microsoft/api-extractor': '>=7' + '@rspack/core': ^1 + '@vue/language-core': ~3.0.1 + esbuild: '*' + rolldown: '*' + rollup: '>=3' + typescript: '>=4' + vite: '>=3' + webpack: ^4 || ^5 + peerDependenciesMeta: + '@microsoft/api-extractor': + optional: true + '@rspack/core': + optional: true + '@vue/language-core': + optional: true + esbuild: + optional: true + rolldown: + optional: true + rollup: + optional: true + vite: + optional: true + webpack: + optional: true + unplugin-element-plus@0.11.2: resolution: {integrity: sha512-jr88ePpv43h8cCmVW0SqM73sTD+g1n9Rmy4uMbTh+pSmceH9ZdKteWX9f+twC4aDlP3svdZuKMqLoUNBT2V6Tg==} engines: {node: '>=20.19.0'} @@ -10940,15 +10847,6 @@ packages: peerDependencies: vite: '>=2.0.0' - vite-plugin-dts@4.5.4: - resolution: {integrity: sha512-d4sOM8M/8z7vRXHHq/ebbblfaxENjogAAekcfcDCCwAyvGqnPrc7f4NZbvItS+g4WTgerW0xDwSz5qz11JT3vg==} - peerDependencies: - typescript: '*' - vite: '*' - peerDependenciesMeta: - vite: - optional: true - vite-plugin-html@3.2.2: resolution: {integrity: sha512-vb9C9kcdzcIo/Oc3CLZVS03dL5pDlOFuhGlZYDCJ840BhWl/0nGeZWf3Qy7NlOayscY4Cm/QRgULCQkEZige5Q==} peerDependencies: @@ -13613,42 +13511,6 @@ snapshots: - encoding - supports-color - '@microsoft/api-extractor-model@7.33.4(@types/node@25.5.0)': - dependencies: - '@microsoft/tsdoc': 0.16.0 - '@microsoft/tsdoc-config': 0.18.1 - '@rushstack/node-core-library': 5.20.3(@types/node@25.5.0) - transitivePeerDependencies: - - '@types/node' - - '@microsoft/api-extractor@7.57.7(@types/node@25.5.0)': - dependencies: - '@microsoft/api-extractor-model': 7.33.4(@types/node@25.5.0) - '@microsoft/tsdoc': 0.16.0 - '@microsoft/tsdoc-config': 0.18.1 - '@rushstack/node-core-library': 5.20.3(@types/node@25.5.0) - '@rushstack/rig-package': 0.7.2 - '@rushstack/terminal': 0.22.3(@types/node@25.5.0) - '@rushstack/ts-command-line': 5.3.3(@types/node@25.5.0) - diff: 8.0.3 - lodash: 4.17.23 - minimatch: 10.2.3 - resolve: 1.22.11 - semver: 7.5.4 - source-map: 0.6.1 - typescript: 5.8.2 - transitivePeerDependencies: - - '@types/node' - - '@microsoft/tsdoc-config@0.18.1': - dependencies: - '@microsoft/tsdoc': 0.16.0 - ajv: 8.18.0 - jju: 1.4.0 - resolve: 1.22.11 - - '@microsoft/tsdoc@0.16.0': {} - '@napi-rs/wasm-runtime@1.1.1': dependencies: '@emnapi/core': 1.9.0 @@ -14269,45 +14131,6 @@ snapshots: '@rollup/rollup-win32-x64-msvc@4.59.0': optional: true - '@rushstack/node-core-library@5.20.3(@types/node@25.5.0)': - dependencies: - ajv: 8.18.0 - ajv-draft-04: 1.0.0(ajv@8.18.0) - ajv-formats: 3.0.1(ajv@8.18.0) - fs-extra: 11.3.4 - import-lazy: 4.0.0 - jju: 1.4.0 - resolve: 1.22.11 - semver: 7.5.4 - optionalDependencies: - '@types/node': 25.5.0 - - '@rushstack/problem-matcher@0.2.1(@types/node@25.5.0)': - optionalDependencies: - '@types/node': 25.5.0 - - '@rushstack/rig-package@0.7.2': - dependencies: - resolve: 1.22.11 - strip-json-comments: 3.1.1 - - '@rushstack/terminal@0.22.3(@types/node@25.5.0)': - dependencies: - '@rushstack/node-core-library': 5.20.3(@types/node@25.5.0) - '@rushstack/problem-matcher': 0.2.1(@types/node@25.5.0) - supports-color: 8.1.1 - optionalDependencies: - '@types/node': 25.5.0 - - '@rushstack/ts-command-line@5.3.3(@types/node@25.5.0)': - dependencies: - '@rushstack/terminal': 0.22.3(@types/node@25.5.0) - '@types/argparse': 1.0.38 - argparse: 1.0.10 - string-argv: 0.3.2 - transitivePeerDependencies: - - '@types/node' - '@sec-ant/readable-stream@0.4.1': {} '@shikijs/core@2.5.0': @@ -14506,8 +14329,6 @@ snapshots: dependencies: '@types/readdir-glob': 1.1.5 - '@types/argparse@1.0.38': {} - '@types/chai@5.2.3': dependencies: '@types/deep-eql': 4.0.2 @@ -15166,11 +14987,6 @@ snapshots: '@vue/compiler-dom': 3.5.30 '@vue/shared': 3.5.30 - '@vue/compiler-vue2@2.7.16': - dependencies: - de-indent: 1.0.2 - he: 1.2.0 - '@vue/devtools-api@6.6.4': {} '@vue/devtools-api@7.7.9': @@ -15210,19 +15026,6 @@ snapshots: '@vue/devtools-shared@8.1.0': {} - '@vue/language-core@2.2.0(typescript@5.9.3)': - dependencies: - '@volar/language-core': 2.4.28 - '@vue/compiler-dom': 3.5.30 - '@vue/compiler-vue2': 2.7.16 - '@vue/shared': 3.5.30 - alien-signals: 0.4.14 - minimatch: 9.0.9 - muggle-string: 0.4.1 - path-browserify: 1.0.1 - optionalDependencies: - typescript: 5.9.3 - '@vue/language-core@3.2.5': dependencies: '@volar/language-core': 2.4.28 @@ -15392,14 +15195,6 @@ snapshots: agent-base@7.1.4: {} - ajv-draft-04@1.0.0(ajv@8.18.0): - optionalDependencies: - ajv: 8.18.0 - - ajv-formats@3.0.1(ajv@8.18.0): - optionalDependencies: - ajv: 8.18.0 - ajv@6.14.0: dependencies: fast-deep-equal: 3.1.3 @@ -15431,8 +15226,6 @@ snapshots: '@algolia/requester-fetch': 5.49.2 '@algolia/requester-node-http': 5.49.2 - alien-signals@0.4.14: {} - alien-signals@3.1.2: {} ansi-align@3.0.1: @@ -16428,8 +16221,6 @@ snapshots: db0@0.3.4: {} - de-indent@1.0.2: {} - debug@4.4.3: dependencies: ms: 2.1.3 @@ -16521,8 +16312,6 @@ snapshots: diff-sequences@29.6.3: {} - diff@8.0.3: {} - dijkstrajs@1.0.3: {} dir-glob@3.0.1: @@ -17324,12 +17113,6 @@ snapshots: jsonfile: 6.2.0 universalify: 2.0.1 - fs-extra@11.3.4: - dependencies: - graceful-fs: 4.2.11 - jsonfile: 6.2.0 - universalify: 2.0.1 - fs-extra@7.0.1: dependencies: graceful-fs: 4.2.11 @@ -17742,8 +17525,6 @@ snapshots: parent-module: 1.0.1 resolve-from: 4.0.0 - import-lazy@4.0.0: {} - import-meta-resolve@4.2.0: {} import-without-cache@0.2.5: {} @@ -18433,10 +18214,6 @@ snapshots: dependencies: yallist: 3.1.1 - lru-cache@6.0.0: - dependencies: - yallist: 4.0.0 - lucide-vue-next@0.577.0(vue@3.5.30(typescript@5.9.3)): dependencies: vue: 3.5.30(typescript@5.9.3) @@ -18546,10 +18323,6 @@ snapshots: mimic-function@5.0.1: {} - minimatch@10.2.3: - dependencies: - brace-expansion: 5.0.4 - minimatch@10.2.4: dependencies: brace-expansion: 5.0.4 @@ -19938,10 +19711,6 @@ snapshots: semver@6.3.1: {} - semver@7.5.4: - dependencies: - lru-cache: 6.0.0 - semver@7.7.4: {} send@1.2.1: @@ -20146,8 +19915,6 @@ snapshots: - bare-abort-controller - react-native-b4a - string-argv@0.3.2: {} - string-width@4.2.3: dependencies: emoji-regex: 8.0.0 @@ -20253,8 +20020,6 @@ snapshots: strip-json-comments@2.0.1: {} - strip-json-comments@3.1.1: {} - strip-literal@3.1.0: dependencies: js-tokens: 9.0.1 @@ -20691,8 +20456,6 @@ snapshots: possible-typed-array-names: 1.1.0 reflect.getprototypeof: 1.0.10 - typescript@5.8.2: {} - typescript@5.9.3: {} ufo@1.6.3: {} @@ -20833,6 +20596,25 @@ snapshots: universalify@2.0.1: {} + unplugin-dts@1.0.0-beta.6(esbuild@0.27.4)(rolldown@1.0.0-rc.9)(rollup@4.59.0)(typescript@5.9.3)(vite@8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.46.0)(yaml@2.8.2)): + dependencies: + '@rollup/pluginutils': 5.3.0(rollup@4.59.0) + '@volar/typescript': 2.4.28 + compare-versions: 6.1.1 + debug: 4.4.3 + kolorist: 1.8.0 + local-pkg: 1.1.2 + magic-string: 0.30.21 + typescript: 5.9.3 + unplugin: 2.3.11 + optionalDependencies: + esbuild: 0.27.4 + rolldown: 1.0.0-rc.9 + rollup: 4.59.0 + vite: 8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.46.0)(yaml@2.8.2) + transitivePeerDependencies: + - supports-color + unplugin-element-plus@0.11.2(magicast@0.5.2): dependencies: '@nuxt/kit': 4.4.2(magicast@0.5.2) @@ -20981,25 +20763,6 @@ snapshots: transitivePeerDependencies: - supports-color - vite-plugin-dts@4.5.4(@types/node@25.5.0)(rollup@4.59.0)(typescript@5.9.3)(vite@8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.46.0)(yaml@2.8.2)): - dependencies: - '@microsoft/api-extractor': 7.57.7(@types/node@25.5.0) - '@rollup/pluginutils': 5.3.0(rollup@4.59.0) - '@volar/typescript': 2.4.28 - '@vue/language-core': 2.2.0(typescript@5.9.3) - compare-versions: 6.1.1 - debug: 4.4.3 - kolorist: 1.8.0 - local-pkg: 1.1.2 - magic-string: 0.30.21 - typescript: 5.9.3 - optionalDependencies: - vite: 8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.46.0)(yaml@2.8.2) - transitivePeerDependencies: - - '@types/node' - - rollup - - supports-color - vite-plugin-html@3.2.2(vite@8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.46.0)(yaml@2.8.2)): dependencies: '@rollup/pluginutils': 4.2.1 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 605f56163..9668bdb12 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -136,7 +136,6 @@ catalog: reka-ui: ^2.9.2 resolve.exports: ^2.0.3 rimraf: ^6.1.3 - rollup: ^4.59.0 rollup-plugin-visualizer: ^7.0.1 sass: ^1.98.0 sass-embedded: ^1.98.0 @@ -160,11 +159,11 @@ catalog: tw-animate-css: ^1.4.0 typescript: ^5.9.3 unbuild: ^3.6.1 + unplugin-dts: ^1.0.0-beta.6 unplugin-element-plus: ^0.11.2 vee-validate: ^4.15.1 vite: ^8.0.0 vite-plugin-compression: ^0.5.1 - vite-plugin-dts: ^4.5.4 vite-plugin-html: ^3.2.2 vite-plugin-lazy-import: ^1.0.7 vite-plugin-pwa: ^1.2.0 From 70dad0f6004d14bfa96f76908c56f6bba7bd9f16 Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 20:50:07 +0800 Subject: [PATCH 19/29] fix(node-utils): avoid find-up sync API in monorepo root lookup --- internal/node-utils/src/monorepo.ts | 25 ++++++++++++++++--------- 1 file changed, 16 insertions(+), 9 deletions(-) diff --git a/internal/node-utils/src/monorepo.ts b/internal/node-utils/src/monorepo.ts index d0c384f50..33246c683 100644 --- a/internal/node-utils/src/monorepo.ts +++ b/internal/node-utils/src/monorepo.ts @@ -1,24 +1,31 @@ import type { Package } from '@manypkg/get-packages'; -import { dirname } from 'node:path'; +import { existsSync } from 'node:fs'; +import { dirname, join, resolve } from 'node:path'; import * as manypkg from '@manypkg/get-packages'; -import * as findUp from 'find-up'; - const { getPackages: getPackagesFunc, getPackagesSync: getPackagesSyncFunc } = manypkg; -const { findUpSync } = findUp; /** * 查找大仓的根目录 * @param cwd */ function findMonorepoRoot(cwd: string = process.cwd()) { - const lockFile = findUpSync('pnpm-lock.yaml', { - cwd, - type: 'file', - }); - return dirname(lockFile || ''); + let currentDir = resolve(cwd); + + while (true) { + if (existsSync(join(currentDir, 'pnpm-lock.yaml'))) { + return currentDir; + } + + const parentDir = dirname(currentDir); + if (parentDir === currentDir) { + return ''; + } + + currentDir = parentDir; + } } /** From bdc65cc250eec6f4cfb482715a88545b8ba24d92 Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 21:03:41 +0800 Subject: [PATCH 20/29] chore: update deps --- pnpm-lock.yaml | 16 ++++++++-------- pnpm-workspace.yaml | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f6cc29406..66d45749d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -397,8 +397,8 @@ catalogs: specifier: ^6.3.7 version: 6.3.7 tsdown: - specifier: ^0.21.2 - version: 0.21.2 + specifier: ^0.21.3 + version: 0.21.3 turbo: specifier: ^2.8.17 version: 2.8.17 @@ -578,7 +578,7 @@ importers: version: 4.2.1 tsdown: specifier: 'catalog:' - version: 0.21.2(publint@0.3.18)(synckit@0.11.12)(typescript@5.9.3)(vue-tsc@3.2.5(typescript@5.9.3)) + version: 0.21.3(publint@0.3.18)(synckit@0.11.12)(typescript@5.9.3)(vue-tsc@3.2.5(typescript@5.9.3)) turbo: specifier: 'catalog:' version: 2.8.17 @@ -10437,14 +10437,14 @@ packages: resolution: {integrity: sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==} engines: {node: '>=6'} - tsdown@0.21.2: - resolution: {integrity: sha512-pP8eAcd1XAWjl5gjosuJs0BAuVoheUe3V8VDHx31QK7YOgXjcCMsBSyFWO3CMh/CSUkjRUzR96JtGH3WJFTExQ==} + tsdown@0.21.3: + resolution: {integrity: sha512-oKKeMC8+IgNsB+81hvF5VBsqhqL/nr0g9vse+ujbK40vv0i3ReFI6gUts7hQH7J53ylQNjMgf2Vu6n0+P/uddA==} engines: {node: '>=20.19.0'} hasBin: true peerDependencies: '@arethetypeswrong/core': ^0.18.1 - '@tsdown/css': 0.21.2 - '@tsdown/exe': 0.21.2 + '@tsdown/css': 0.21.3 + '@tsdown/exe': 0.21.3 '@vitejs/devtools': '*' publint: ^0.3.0 typescript: ^5.0.0 @@ -20348,7 +20348,7 @@ snapshots: minimist: 1.2.8 strip-bom: 3.0.0 - tsdown@0.21.2(publint@0.3.18)(synckit@0.11.12)(typescript@5.9.3)(vue-tsc@3.2.5(typescript@5.9.3)): + tsdown@0.21.3(publint@0.3.18)(synckit@0.11.12)(typescript@5.9.3)(vue-tsc@3.2.5(typescript@5.9.3)): dependencies: ansis: 4.2.0 cac: 7.0.0 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 9668bdb12..d78b227bd 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -154,7 +154,7 @@ catalog: tdesign-vue-next: ^1.18.5 theme-colors: ^0.1.0 tippy.js: ^6.3.7 - tsdown: ^0.21.2 + tsdown: ^0.21.3 turbo: ^2.8.17 tw-animate-css: ^1.4.0 typescript: ^5.9.3 From 11fc367845f3a50cf16f52a3ab84e6cd64262efe Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 21:04:12 +0800 Subject: [PATCH 21/29] chore: migrate vite build to tsdown --- internal/vite-config/build.config.ts | 7 --- internal/vite-config/package.json | 3 +- internal/vite-config/tsdown.config.ts | 40 +++++++++++++++ scripts/vsh/src/check-circular/index.ts | 67 +++++++++++++++++++++---- 4 files changed, 99 insertions(+), 18 deletions(-) delete mode 100644 internal/vite-config/build.config.ts create mode 100644 internal/vite-config/tsdown.config.ts diff --git a/internal/vite-config/build.config.ts b/internal/vite-config/build.config.ts deleted file mode 100644 index 97e572c56..000000000 --- a/internal/vite-config/build.config.ts +++ /dev/null @@ -1,7 +0,0 @@ -import { defineBuildConfig } from 'unbuild'; - -export default defineBuildConfig({ - clean: true, - declaration: true, - entries: ['src/index'], -}); diff --git a/internal/vite-config/package.json b/internal/vite-config/package.json index 129113704..f83d85b50 100644 --- a/internal/vite-config/package.json +++ b/internal/vite-config/package.json @@ -12,7 +12,8 @@ "license": "MIT", "type": "module", "scripts": { - "stub": "pnpm unbuild --stub" + "build": "pnpm exec tsdown", + "stub": "pnpm exec tsdown" }, "files": [ "dist" diff --git a/internal/vite-config/tsdown.config.ts b/internal/vite-config/tsdown.config.ts new file mode 100644 index 000000000..88b76bebc --- /dev/null +++ b/internal/vite-config/tsdown.config.ts @@ -0,0 +1,40 @@ +import { cp, mkdir } from 'node:fs/promises'; +import { dirname, join } from 'node:path'; +import { fileURLToPath } from 'node:url'; + +import { defineConfig } from 'tsdown'; + +const rootDir = dirname(fileURLToPath(import.meta.url)); +const loadingAssets = ['default-loading-antd.html', 'default-loading.html']; + +export default defineConfig({ + clean: true, + deps: { + skipNodeModulesBundle: true, + }, + dts: { + resolver: 'tsc', + }, + entry: ['src/index.ts'], + format: ['esm'], + hooks: { + 'build:done': async (context) => { + const outDir = context.options.outDir; + if (!outDir) { + return; + } + + await mkdir(outDir, { recursive: true }); + + for (const file of loadingAssets) { + await cp( + join(rootDir, 'src/plugins/inject-app-loading', file), + join(outDir, file), + ); + } + }, + }, + outExtensions: () => ({ + dts: '.d.ts', + }), +}); diff --git a/scripts/vsh/src/check-circular/index.ts b/scripts/vsh/src/check-circular/index.ts index 064250613..999f7f249 100644 --- a/scripts/vsh/src/check-circular/index.ts +++ b/scripts/vsh/src/check-circular/index.ts @@ -1,10 +1,15 @@ import type { CAC } from 'cac'; -import { extname } from 'node:path'; +import { access, mkdtemp, readFile, rm } from 'node:fs/promises'; +import { createRequire } from 'node:module'; +import { tmpdir } from 'node:os'; +import { extname, join } from 'node:path'; -import { getStagedFiles } from '@vben/node-utils'; +import { execa, getStagedFiles } from '@vben/node-utils'; -import { circularDepsDetect } from 'circular-dependency-scanner'; +const require = createRequire(import.meta.url); +const circularScannerCli = + require.resolve('circular-dependency-scanner/dist/cli.js'); // 默认配置 const DEFAULT_CONFIG = { @@ -41,6 +46,44 @@ interface CommandOptions { // 缓存机制 const cache = new Map(); +async function detectCircularDependencies({ + cwd, + ignorePattern, + staged, +}: { + cwd: string; + ignorePattern: string; + staged: boolean; +}): Promise { + const tempDir = await mkdtemp(join(tmpdir(), 'vsh-check-circular-')); + const outputFile = join(tempDir, 'circles.json'); + + try { + const args = [circularScannerCli, cwd, '--output', outputFile]; + + if (staged) { + args.push('--absolute'); + } + + args.push('--ignore', ignorePattern); + + await execa(process.execPath, args, { + cwd, + }); + + await access(outputFile); + const output = await readFile(outputFile, 'utf8'); + return JSON.parse(output) as CircularDependencyResult[]; + } catch (error) { + if ((error as NodeJS.ErrnoException)?.code === 'ENOENT') { + return []; + } + throw error; + } finally { + await rm(tempDir, { force: true, recursive: true }); + } +} + /** * 格式化循环依赖的输出 * @param circles - 循环依赖结果 @@ -85,17 +128,17 @@ async function checkCircular({ const cacheKey = `${staged}-${process.cwd()}-${ignorePattern}`; if (cache.has(cacheKey)) { const cachedResults = cache.get(cacheKey); - if (cachedResults) { - verbose && formatCircles(cachedResults); + if (cachedResults && verbose) { + formatCircles(cachedResults); } return; } // 检测循环依赖 - const results = await circularDepsDetect({ - absolute: staged, + const results = await detectCircularDependencies({ cwd: process.cwd(), - ignore: [ignorePattern], + ignorePattern, + staged, }); if (staged) { @@ -118,11 +161,15 @@ async function checkCircular({ // 更新缓存 cache.set(cacheKey, circularFiles); - verbose && formatCircles(circularFiles); + if (verbose) { + formatCircles(circularFiles); + } } else { // 更新缓存 cache.set(cacheKey, results); - verbose && formatCircles(results); + if (verbose) { + formatCircles(results); + } } // 如果发现循环依赖,只输出警告信息 From 3946253d6e0d365f9bed75dd4b2b4dc702e0571d Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 21:17:41 +0800 Subject: [PATCH 22/29] chore(tsdown): align stub scripts and package exports --- .../lint-configs/eslint-config/package.json | 2 +- .../lint-configs/oxfmt-config/package.json | 2 +- internal/node-utils/package.json | 2 +- internal/vite-config/package.json | 2 +- packages/@core/base/icons/package.json | 3 ++- packages/@core/base/shared/package.json | 2 +- packages/@core/base/typings/package.json | 3 ++- packages/@core/composables/package.json | 3 ++- packages/@core/preferences/package.json | 18 +++++++++++++++--- scripts/turbo-run/package.json | 2 +- scripts/vsh/package.json | 2 +- 11 files changed, 28 insertions(+), 13 deletions(-) diff --git a/internal/lint-configs/eslint-config/package.json b/internal/lint-configs/eslint-config/package.json index 5235e2b16..ae64af4cd 100644 --- a/internal/lint-configs/eslint-config/package.json +++ b/internal/lint-configs/eslint-config/package.json @@ -13,7 +13,7 @@ "type": "module", "scripts": { "build": "pnpm exec tsdown", - "stub": "pnpm exec tsdown" + "stub": "pnpm run build" }, "files": [ "dist" diff --git a/internal/lint-configs/oxfmt-config/package.json b/internal/lint-configs/oxfmt-config/package.json index 2355a9de5..72bf4b9b7 100644 --- a/internal/lint-configs/oxfmt-config/package.json +++ b/internal/lint-configs/oxfmt-config/package.json @@ -13,7 +13,7 @@ "type": "module", "scripts": { "build": "pnpm exec tsdown", - "stub": "pnpm exec tsdown" + "stub": "pnpm run build" }, "files": [ "dist" diff --git a/internal/node-utils/package.json b/internal/node-utils/package.json index bd0e1f258..dd868eb8e 100644 --- a/internal/node-utils/package.json +++ b/internal/node-utils/package.json @@ -13,7 +13,7 @@ "type": "module", "scripts": { "build": "node ./scripts/build.mjs", - "stub": "node ./scripts/build.mjs" + "stub": "pnpm run build" }, "files": [ "dist" diff --git a/internal/vite-config/package.json b/internal/vite-config/package.json index f83d85b50..7523d3ee5 100644 --- a/internal/vite-config/package.json +++ b/internal/vite-config/package.json @@ -13,7 +13,7 @@ "type": "module", "scripts": { "build": "pnpm exec tsdown", - "stub": "pnpm exec tsdown" + "stub": "pnpm run build" }, "files": [ "dist" diff --git a/packages/@core/base/icons/package.json b/packages/@core/base/icons/package.json index 558a5b7ca..efa702b1e 100644 --- a/packages/@core/base/icons/package.json +++ b/packages/@core/base/icons/package.json @@ -11,7 +11,8 @@ "license": "MIT", "type": "module", "scripts": { - "build": "pnpm exec tsdown" + "build": "pnpm exec tsdown", + "stub": "pnpm run build" }, "files": [ "dist" diff --git a/packages/@core/base/shared/package.json b/packages/@core/base/shared/package.json index f6405b92a..61fa032d0 100644 --- a/packages/@core/base/shared/package.json +++ b/packages/@core/base/shared/package.json @@ -12,7 +12,7 @@ "type": "module", "scripts": { "build": "pnpm exec tsdown", - "stub": "pnpm exec tsdown" + "stub": "pnpm run build" }, "files": [ "dist" diff --git a/packages/@core/base/typings/package.json b/packages/@core/base/typings/package.json index b90f3df25..19c4cd54a 100644 --- a/packages/@core/base/typings/package.json +++ b/packages/@core/base/typings/package.json @@ -11,7 +11,8 @@ "license": "MIT", "type": "module", "scripts": { - "build": "pnpm exec tsdown" + "build": "pnpm exec tsdown", + "stub": "pnpm run build" }, "files": [ "dist", diff --git a/packages/@core/composables/package.json b/packages/@core/composables/package.json index de58e59ff..2bb19c0af 100644 --- a/packages/@core/composables/package.json +++ b/packages/@core/composables/package.json @@ -11,7 +11,8 @@ "license": "MIT", "type": "module", "scripts": { - "build": "pnpm exec tsdown" + "build": "pnpm exec tsdown", + "stub": "pnpm run build" }, "files": [ "dist" diff --git a/packages/@core/preferences/package.json b/packages/@core/preferences/package.json index 53f331854..6f147844d 100644 --- a/packages/@core/preferences/package.json +++ b/packages/@core/preferences/package.json @@ -11,7 +11,8 @@ "license": "MIT", "type": "module", "scripts": { - "build": "pnpm exec tsdown" + "build": "pnpm exec tsdown", + "stub": "pnpm run build" }, "files": [ "dist", @@ -20,12 +21,23 @@ "sideEffects": [ "**/*.css" ], + "main": "./dist/index.mjs", + "module": "./dist/index.mjs", + "types": "./dist/index.d.ts", "exports": { ".": { "types": "./src/index.ts", "development": "./src/index.ts", - "default": "./src/index.ts", - "#default": "./dist/index.mjs" + "production": "./src/index.ts", + "default": "./dist/index.mjs" + } + }, + "publishConfig": { + "exports": { + ".": { + "types": "./dist/index.d.ts", + "default": "./dist/index.mjs" + } } }, "dependencies": { diff --git a/scripts/turbo-run/package.json b/scripts/turbo-run/package.json index 57b1dca05..11943746a 100644 --- a/scripts/turbo-run/package.json +++ b/scripts/turbo-run/package.json @@ -6,7 +6,7 @@ "type": "module", "scripts": { "build": "pnpm exec tsdown", - "stub": "pnpm exec tsdown" + "stub": "pnpm run build" }, "files": [ "dist" diff --git a/scripts/vsh/package.json b/scripts/vsh/package.json index 8bea4f025..dfe64b055 100644 --- a/scripts/vsh/package.json +++ b/scripts/vsh/package.json @@ -6,7 +6,7 @@ "type": "module", "scripts": { "build": "pnpm exec tsdown", - "stub": "pnpm exec tsdown" + "stub": "pnpm run build" }, "files": [ "dist" From b300011d07ba8f83946814bfdce625a9e584dd57 Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 21:30:13 +0800 Subject: [PATCH 23/29] refactor(tsdown): migrate ui-kit vue packages --- package.json | 1 + packages/@core/ui-kit/form-ui/build.config.ts | 21 ------------ packages/@core/ui-kit/form-ui/package.json | 5 ++- .../@core/ui-kit/form-ui/tsdown.config.ts | 22 +++++++++++++ .../@core/ui-kit/layout-ui/build.config.ts | 21 ------------ packages/@core/ui-kit/layout-ui/package.json | 5 ++- .../@core/ui-kit/layout-ui/tsdown.config.ts | 22 +++++++++++++ .../@core/ui-kit/popup-ui/build.config.ts | 21 ------------ packages/@core/ui-kit/popup-ui/package.json | 5 ++- .../@core/ui-kit/popup-ui/tsdown.config.ts | 22 +++++++++++++ pnpm-lock.yaml | 32 +++++++++++++++++++ pnpm-workspace.yaml | 1 + 12 files changed, 112 insertions(+), 66 deletions(-) delete mode 100644 packages/@core/ui-kit/form-ui/build.config.ts create mode 100644 packages/@core/ui-kit/form-ui/tsdown.config.ts delete mode 100644 packages/@core/ui-kit/layout-ui/build.config.ts create mode 100644 packages/@core/ui-kit/layout-ui/tsdown.config.ts delete mode 100644 packages/@core/ui-kit/popup-ui/build.config.ts create mode 100644 packages/@core/ui-kit/popup-ui/tsdown.config.ts diff --git a/package.json b/package.json index f36d5f66e..aedb872d6 100644 --- a/package.json +++ b/package.json @@ -96,6 +96,7 @@ "turbo": "catalog:", "typescript": "catalog:", "unbuild": "catalog:", + "unplugin-vue": "catalog:", "vite": "catalog:", "vitest": "catalog:", "vue": "catalog:", diff --git a/packages/@core/ui-kit/form-ui/build.config.ts b/packages/@core/ui-kit/form-ui/build.config.ts deleted file mode 100644 index 18eaa604c..000000000 --- a/packages/@core/ui-kit/form-ui/build.config.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { defineBuildConfig } from 'unbuild'; - -export default defineBuildConfig({ - clean: true, - declaration: true, - entries: [ - { - builder: 'mkdist', - input: './src', - loaders: ['vue'], - pattern: ['**/*.vue'], - }, - { - builder: 'mkdist', - format: 'esm', - input: './src', - loaders: ['js'], - pattern: ['**/*.ts'], - }, - ], -}); diff --git a/packages/@core/ui-kit/form-ui/package.json b/packages/@core/ui-kit/form-ui/package.json index c9db6eca2..476bc38ab 100644 --- a/packages/@core/ui-kit/form-ui/package.json +++ b/packages/@core/ui-kit/form-ui/package.json @@ -11,7 +11,8 @@ "license": "MIT", "type": "module", "scripts": { - "build": "pnpm unbuild", + "build": "pnpm exec tsdown", + "stub": "pnpm run build", "prepublishOnly": "npm run build" }, "files": [ @@ -22,6 +23,7 @@ ], "main": "./dist/index.mjs", "module": "./dist/index.mjs", + "types": "./dist/index.d.ts", "exports": { ".": { "types": "./src/index.ts", @@ -33,6 +35,7 @@ "publishConfig": { "exports": { ".": { + "types": "./dist/index.d.ts", "default": "./dist/index.mjs" } } diff --git a/packages/@core/ui-kit/form-ui/tsdown.config.ts b/packages/@core/ui-kit/form-ui/tsdown.config.ts new file mode 100644 index 000000000..b5bde2fdd --- /dev/null +++ b/packages/@core/ui-kit/form-ui/tsdown.config.ts @@ -0,0 +1,22 @@ +import Vue from 'unplugin-vue/rolldown'; + +import { defineConfig } from 'tsdown'; + +export default defineConfig({ + clean: true, + deps: { + skipNodeModulesBundle: true, + }, + dts: { + vue: true, + }, + entry: ['src/index.ts'], + format: ['esm'], + outExtensions: () => ({ + dts: '.d.ts', + js: '.mjs', + }), + platform: 'neutral', + plugins: [Vue({ isProduction: true })], + unbundle: true, +}); diff --git a/packages/@core/ui-kit/layout-ui/build.config.ts b/packages/@core/ui-kit/layout-ui/build.config.ts deleted file mode 100644 index 18eaa604c..000000000 --- a/packages/@core/ui-kit/layout-ui/build.config.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { defineBuildConfig } from 'unbuild'; - -export default defineBuildConfig({ - clean: true, - declaration: true, - entries: [ - { - builder: 'mkdist', - input: './src', - loaders: ['vue'], - pattern: ['**/*.vue'], - }, - { - builder: 'mkdist', - format: 'esm', - input: './src', - loaders: ['js'], - pattern: ['**/*.ts'], - }, - ], -}); diff --git a/packages/@core/ui-kit/layout-ui/package.json b/packages/@core/ui-kit/layout-ui/package.json index f1a01bbeb..5b09e282b 100644 --- a/packages/@core/ui-kit/layout-ui/package.json +++ b/packages/@core/ui-kit/layout-ui/package.json @@ -11,7 +11,8 @@ "license": "MIT", "type": "module", "scripts": { - "build": "pnpm unbuild", + "build": "pnpm exec tsdown", + "stub": "pnpm run build", "prepublishOnly": "npm run build" }, "files": [ @@ -22,6 +23,7 @@ ], "main": "./dist/index.mjs", "module": "./dist/index.mjs", + "types": "./dist/index.d.ts", "exports": { ".": { "types": "./src/index.ts", @@ -33,6 +35,7 @@ "publishConfig": { "exports": { ".": { + "types": "./dist/index.d.ts", "default": "./dist/index.mjs" } } diff --git a/packages/@core/ui-kit/layout-ui/tsdown.config.ts b/packages/@core/ui-kit/layout-ui/tsdown.config.ts new file mode 100644 index 000000000..b5bde2fdd --- /dev/null +++ b/packages/@core/ui-kit/layout-ui/tsdown.config.ts @@ -0,0 +1,22 @@ +import Vue from 'unplugin-vue/rolldown'; + +import { defineConfig } from 'tsdown'; + +export default defineConfig({ + clean: true, + deps: { + skipNodeModulesBundle: true, + }, + dts: { + vue: true, + }, + entry: ['src/index.ts'], + format: ['esm'], + outExtensions: () => ({ + dts: '.d.ts', + js: '.mjs', + }), + platform: 'neutral', + plugins: [Vue({ isProduction: true })], + unbundle: true, +}); diff --git a/packages/@core/ui-kit/popup-ui/build.config.ts b/packages/@core/ui-kit/popup-ui/build.config.ts deleted file mode 100644 index 18eaa604c..000000000 --- a/packages/@core/ui-kit/popup-ui/build.config.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { defineBuildConfig } from 'unbuild'; - -export default defineBuildConfig({ - clean: true, - declaration: true, - entries: [ - { - builder: 'mkdist', - input: './src', - loaders: ['vue'], - pattern: ['**/*.vue'], - }, - { - builder: 'mkdist', - format: 'esm', - input: './src', - loaders: ['js'], - pattern: ['**/*.ts'], - }, - ], -}); diff --git a/packages/@core/ui-kit/popup-ui/package.json b/packages/@core/ui-kit/popup-ui/package.json index 0d4d2c42c..951869861 100644 --- a/packages/@core/ui-kit/popup-ui/package.json +++ b/packages/@core/ui-kit/popup-ui/package.json @@ -11,7 +11,8 @@ "license": "MIT", "type": "module", "scripts": { - "build": "pnpm unbuild", + "build": "pnpm exec tsdown", + "stub": "pnpm run build", "prepublishOnly": "npm run build" }, "files": [ @@ -22,6 +23,7 @@ ], "main": "./dist/index.mjs", "module": "./dist/index.mjs", + "types": "./dist/index.d.ts", "exports": { ".": { "types": "./src/index.ts", @@ -33,6 +35,7 @@ "publishConfig": { "exports": { ".": { + "types": "./dist/index.d.ts", "default": "./dist/index.mjs" } } diff --git a/packages/@core/ui-kit/popup-ui/tsdown.config.ts b/packages/@core/ui-kit/popup-ui/tsdown.config.ts new file mode 100644 index 000000000..3bbe38d1d --- /dev/null +++ b/packages/@core/ui-kit/popup-ui/tsdown.config.ts @@ -0,0 +1,22 @@ +import { defineConfig } from 'tsdown'; +// eslint-disable-next-line n/no-extraneous-import +import Vue from 'unplugin-vue/rolldown'; + +export default defineConfig({ + clean: true, + deps: { + skipNodeModulesBundle: true, + }, + dts: { + vue: true, + }, + entry: ['src/index.ts'], + format: ['esm'], + outExtensions: () => ({ + dts: '.d.ts', + js: '.mjs', + }), + platform: 'neutral', + plugins: [Vue({ isProduction: true })], + unbundle: true, +}); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 66d45749d..66bea98c6 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -588,6 +588,9 @@ importers: unbuild: specifier: 'catalog:' version: 3.6.1(sass@1.98.0)(typescript@5.9.3)(vue-tsc@3.2.5(typescript@5.9.3))(vue@3.5.30(typescript@5.9.3)) + unplugin-vue: + specifier: ^7.1.1 + version: 7.1.1(@types/node@25.5.0)(esbuild@0.27.4)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.46.0)(vue@3.5.30(typescript@5.9.3))(yaml@2.8.2) vite: specifier: 'catalog:' version: 8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.46.0)(yaml@2.8.2) @@ -10687,6 +10690,12 @@ packages: resolution: {integrity: sha512-5lWVjgi6vuHhJ526bI4nlCOmkCIF3nnfXkCMDeMJrtdvxTs6ZFCM8oNufGTsDbKv/tJ/xj8RpvXjRuPBZJuJog==} engines: {node: '>=20.19.0'} + unplugin-vue@7.1.1: + resolution: {integrity: sha512-0171rToKyJtoz+faE9CSGtAhCF7//t8sJueyyfZujf4RcKtoHLU/wqcsnuH5aq3tDB+I/Tg6IXiWgPvI+TK/zw==} + engines: {node: '>=20.19.0'} + peerDependencies: + vue: ^3.5.30 + unplugin@2.3.11: resolution: {integrity: sha512-5uKD0nqiYVzlmCRs01Fhs2BdkEgBS3SAVP6ndrBsuK42iC2+JHyxM05Rm9G8+5mkmRtzMZGY8Ct5+mliZxU/Ww==} engines: {node: '>=18.12.0'} @@ -20630,6 +20639,29 @@ snapshots: pathe: 2.0.3 picomatch: 4.0.3 + unplugin-vue@7.1.1(@types/node@25.5.0)(esbuild@0.27.4)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.46.0)(vue@3.5.30(typescript@5.9.3))(yaml@2.8.2): + dependencies: + '@jridgewell/gen-mapping': 0.3.13 + '@jridgewell/trace-mapping': 0.3.31 + '@vue/reactivity': 3.5.30 + obug: 2.1.1 + unplugin: 3.0.0 + vite: 8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.46.0)(yaml@2.8.2) + vue: 3.5.30(typescript@5.9.3) + transitivePeerDependencies: + - '@types/node' + - '@vitejs/devtools' + - esbuild + - jiti + - less + - sass + - sass-embedded + - stylus + - sugarss + - terser + - tsx + - yaml + unplugin@2.3.11: dependencies: '@jridgewell/remapping': 2.3.5 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index d78b227bd..b49343790 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -161,6 +161,7 @@ catalog: unbuild: ^3.6.1 unplugin-dts: ^1.0.0-beta.6 unplugin-element-plus: ^0.11.2 + unplugin-vue: ^7.1.1 vee-validate: ^4.15.1 vite: ^8.0.0 vite-plugin-compression: ^0.5.1 From d72f872369de4d5056482d4061b3bf1d76da39f5 Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 21:42:44 +0800 Subject: [PATCH 24/29] refactor(tsdown): migrate styled ui-kit packages --- packages/@core/ui-kit/menu-ui/build.config.ts | 26 ------- packages/@core/ui-kit/menu-ui/package.json | 5 +- .../@core/ui-kit/menu-ui/tsdown.config.ts | 22 ++++++ packages/@core/ui-kit/tabs-ui/build.config.ts | 21 ------ packages/@core/ui-kit/tabs-ui/package.json | 5 +- .../@core/ui-kit/tabs-ui/tsdown.config.ts | 22 ++++++ pnpm-lock.yaml | 73 ++++++++++++++++++- 7 files changed, 122 insertions(+), 52 deletions(-) delete mode 100644 packages/@core/ui-kit/menu-ui/build.config.ts create mode 100644 packages/@core/ui-kit/menu-ui/tsdown.config.ts delete mode 100644 packages/@core/ui-kit/tabs-ui/build.config.ts create mode 100644 packages/@core/ui-kit/tabs-ui/tsdown.config.ts diff --git a/packages/@core/ui-kit/menu-ui/build.config.ts b/packages/@core/ui-kit/menu-ui/build.config.ts deleted file mode 100644 index 1ff78fabb..000000000 --- a/packages/@core/ui-kit/menu-ui/build.config.ts +++ /dev/null @@ -1,26 +0,0 @@ -import { defineBuildConfig } from 'unbuild'; - -export default defineBuildConfig({ - clean: true, - declaration: true, - entries: [ - { - builder: 'mkdist', - input: './src', - pattern: ['**/*'], - }, - { - builder: 'mkdist', - input: './src', - loaders: ['vue'], - pattern: ['**/*.vue'], - }, - { - builder: 'mkdist', - format: 'esm', - input: './src', - loaders: ['js'], - pattern: ['**/*.ts'], - }, - ], -}); diff --git a/packages/@core/ui-kit/menu-ui/package.json b/packages/@core/ui-kit/menu-ui/package.json index fa3a4015b..5e2d5dd86 100644 --- a/packages/@core/ui-kit/menu-ui/package.json +++ b/packages/@core/ui-kit/menu-ui/package.json @@ -11,7 +11,8 @@ "license": "MIT", "type": "module", "scripts": { - "build": "pnpm unbuild", + "build": "pnpm exec tsdown", + "stub": "pnpm run build", "prepublishOnly": "npm run build" }, "files": [ @@ -22,6 +23,7 @@ ], "main": "./dist/index.mjs", "module": "./dist/index.mjs", + "types": "./dist/index.d.ts", "exports": { ".": { "types": "./src/index.ts", @@ -33,6 +35,7 @@ "publishConfig": { "exports": { ".": { + "types": "./dist/index.d.ts", "default": "./dist/index.mjs" } } diff --git a/packages/@core/ui-kit/menu-ui/tsdown.config.ts b/packages/@core/ui-kit/menu-ui/tsdown.config.ts new file mode 100644 index 000000000..b5bde2fdd --- /dev/null +++ b/packages/@core/ui-kit/menu-ui/tsdown.config.ts @@ -0,0 +1,22 @@ +import Vue from 'unplugin-vue/rolldown'; + +import { defineConfig } from 'tsdown'; + +export default defineConfig({ + clean: true, + deps: { + skipNodeModulesBundle: true, + }, + dts: { + vue: true, + }, + entry: ['src/index.ts'], + format: ['esm'], + outExtensions: () => ({ + dts: '.d.ts', + js: '.mjs', + }), + platform: 'neutral', + plugins: [Vue({ isProduction: true })], + unbundle: true, +}); diff --git a/packages/@core/ui-kit/tabs-ui/build.config.ts b/packages/@core/ui-kit/tabs-ui/build.config.ts deleted file mode 100644 index 18eaa604c..000000000 --- a/packages/@core/ui-kit/tabs-ui/build.config.ts +++ /dev/null @@ -1,21 +0,0 @@ -import { defineBuildConfig } from 'unbuild'; - -export default defineBuildConfig({ - clean: true, - declaration: true, - entries: [ - { - builder: 'mkdist', - input: './src', - loaders: ['vue'], - pattern: ['**/*.vue'], - }, - { - builder: 'mkdist', - format: 'esm', - input: './src', - loaders: ['js'], - pattern: ['**/*.ts'], - }, - ], -}); diff --git a/packages/@core/ui-kit/tabs-ui/package.json b/packages/@core/ui-kit/tabs-ui/package.json index f329c04bc..260d14d6b 100644 --- a/packages/@core/ui-kit/tabs-ui/package.json +++ b/packages/@core/ui-kit/tabs-ui/package.json @@ -11,7 +11,8 @@ "license": "MIT", "type": "module", "scripts": { - "build": "pnpm unbuild", + "build": "pnpm exec tsdown", + "stub": "pnpm run build", "prepublishOnly": "npm run build" }, "files": [ @@ -22,6 +23,7 @@ ], "main": "./dist/index.mjs", "module": "./dist/index.mjs", + "types": "./dist/index.d.ts", "exports": { ".": { "types": "./src/index.ts", @@ -33,6 +35,7 @@ "publishConfig": { "exports": { ".": { + "types": "./dist/index.d.ts", "default": "./dist/index.mjs" } } diff --git a/packages/@core/ui-kit/tabs-ui/tsdown.config.ts b/packages/@core/ui-kit/tabs-ui/tsdown.config.ts new file mode 100644 index 000000000..3bbe38d1d --- /dev/null +++ b/packages/@core/ui-kit/tabs-ui/tsdown.config.ts @@ -0,0 +1,22 @@ +import { defineConfig } from 'tsdown'; +// eslint-disable-next-line n/no-extraneous-import +import Vue from 'unplugin-vue/rolldown'; + +export default defineConfig({ + clean: true, + deps: { + skipNodeModulesBundle: true, + }, + dts: { + vue: true, + }, + entry: ['src/index.ts'], + format: ['esm'], + outExtensions: () => ({ + dts: '.d.ts', + js: '.mjs', + }), + platform: 'neutral', + plugins: [Vue({ isProduction: true })], + unbundle: true, +}); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 66bea98c6..4d857518d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -417,6 +417,9 @@ catalogs: unplugin-element-plus: specifier: ^0.11.2 version: 0.11.2 + unplugin-vue: + specifier: ^7.1.1 + version: 7.1.1 vee-validate: specifier: ^4.15.1 version: 4.15.1 @@ -504,6 +507,9 @@ importers: '@playwright/test': specifier: 'catalog:' version: 1.58.2 + '@tsdown/css': + specifier: ^0.21.3 + version: 0.21.3(jiti@2.6.1)(postcss@8.5.8)(sass-embedded@1.98.0)(sass@1.98.0)(tsdown@0.21.3)(yaml@2.8.2) '@types/node': specifier: 'catalog:' version: 25.5.0 @@ -578,7 +584,7 @@ importers: version: 4.2.1 tsdown: specifier: 'catalog:' - version: 0.21.3(publint@0.3.18)(synckit@0.11.12)(typescript@5.9.3)(vue-tsc@3.2.5(typescript@5.9.3)) + version: 0.21.3(@tsdown/css@0.21.3)(publint@0.3.18)(synckit@0.11.12)(typescript@5.9.3)(vue-tsc@3.2.5(typescript@5.9.3)) turbo: specifier: 'catalog:' version: 2.8.17 @@ -589,7 +595,7 @@ importers: specifier: 'catalog:' version: 3.6.1(sass@1.98.0)(typescript@5.9.3)(vue-tsc@3.2.5(typescript@5.9.3))(vue@3.5.30(typescript@5.9.3)) unplugin-vue: - specifier: ^7.1.1 + specifier: 'catalog:' version: 7.1.1(@types/node@25.5.0)(esbuild@0.27.4)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.46.0)(vue@3.5.30(typescript@5.9.3))(yaml@2.8.2) vite: specifier: 'catalog:' @@ -5024,6 +5030,25 @@ packages: peerDependencies: vue: ^3.5.30 + '@tsdown/css@0.21.3': + resolution: {integrity: sha512-ggFsEbtl3T75KM8Y84Tz7PrpzLqj7njWjEcm5ZUkrmL+xIJtzJx7RupPocIsf6mMPf3IVSnyNbZxwDlbKg5mTw==} + engines: {node: '>=20.19.0'} + peerDependencies: + postcss: ^8.4.0 + postcss-import: ^16.0.0 + sass: '*' + sass-embedded: '*' + tsdown: 0.21.3 + peerDependenciesMeta: + postcss: + optional: true + postcss-import: + optional: true + sass: + optional: true + sass-embedded: + optional: true + '@tybys/wasm-util@0.10.1': resolution: {integrity: sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==} @@ -9194,6 +9219,24 @@ packages: resolution: {integrity: sha512-OLF6P7qctfAWayOhLpcVnTGqVeJzu2W3WpIYelfz2+JV5oGxfkcEvweN9U4XpeqE0P98dcD9ssusGwlF0TK0uQ==} engines: {node: ^12 || >=14} + postcss-load-config@6.0.1: + resolution: {integrity: sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==} + engines: {node: '>= 18'} + peerDependencies: + jiti: '>=1.21.0' + postcss: '>=8.0.9' + tsx: ^4.8.1 + yaml: ^2.4.2 + peerDependenciesMeta: + jiti: + optional: true + postcss: + optional: true + tsx: + optional: true + yaml: + optional: true + postcss-media-query-parser@0.2.3: resolution: {integrity: sha512-3sOlxmbKcSHMjlUXQZKQ06jOswE7oVkXPxmZdoB1r5l0q6gTFTQSHxNxOrCccElbW7dxNytifNEo8qidX2Vsig==} @@ -14329,6 +14372,21 @@ snapshots: '@tanstack/virtual-core': 3.13.22 vue: 3.5.30(typescript@5.9.3) + '@tsdown/css@0.21.3(jiti@2.6.1)(postcss@8.5.8)(sass-embedded@1.98.0)(sass@1.98.0)(tsdown@0.21.3)(yaml@2.8.2)': + dependencies: + lightningcss: 1.32.0 + postcss-load-config: 6.0.1(jiti@2.6.1)(postcss@8.5.8)(yaml@2.8.2) + rolldown: 1.0.0-rc.9 + tsdown: 0.21.3(@tsdown/css@0.21.3)(publint@0.3.18)(synckit@0.11.12)(typescript@5.9.3)(vue-tsc@3.2.5(typescript@5.9.3)) + optionalDependencies: + postcss: 8.5.8 + sass: 1.98.0 + sass-embedded: 1.98.0 + transitivePeerDependencies: + - jiti + - tsx + - yaml + '@tybys/wasm-util@0.10.1': dependencies: tslib: 2.8.1 @@ -19026,6 +19084,14 @@ snapshots: postcss: 8.5.8 postcss-safe-parser: 6.0.0(postcss@8.5.8) + postcss-load-config@6.0.1(jiti@2.6.1)(postcss@8.5.8)(yaml@2.8.2): + dependencies: + lilconfig: 3.1.3 + optionalDependencies: + jiti: 2.6.1 + postcss: 8.5.8 + yaml: 2.8.2 + postcss-media-query-parser@0.2.3: {} postcss-merge-longhand@7.0.5(postcss@8.5.8): @@ -20357,7 +20423,7 @@ snapshots: minimist: 1.2.8 strip-bom: 3.0.0 - tsdown@0.21.3(publint@0.3.18)(synckit@0.11.12)(typescript@5.9.3)(vue-tsc@3.2.5(typescript@5.9.3)): + tsdown@0.21.3(@tsdown/css@0.21.3)(publint@0.3.18)(synckit@0.11.12)(typescript@5.9.3)(vue-tsc@3.2.5(typescript@5.9.3)): dependencies: ansis: 4.2.0 cac: 7.0.0 @@ -20376,6 +20442,7 @@ snapshots: unconfig-core: 7.5.0 unrun: 0.2.32(synckit@0.11.12) optionalDependencies: + '@tsdown/css': 0.21.3(jiti@2.6.1)(postcss@8.5.8)(sass-embedded@1.98.0)(sass@1.98.0)(tsdown@0.21.3)(yaml@2.8.2) publint: 0.3.18 typescript: 5.9.3 transitivePeerDependencies: From c9f715452412ad52f87a4d7baefe507330b0f786 Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 22:04:48 +0800 Subject: [PATCH 25/29] chore(tsdown): remove unbuild leftovers --- .../eslint-config/src/configs/node.ts | 1 - package.json | 2 +- .../@core/ui-kit/shadcn-ui/build.config.ts | 27 - packages/@core/ui-kit/shadcn-ui/package.json | 15 +- pnpm-lock.yaml | 748 ++---------------- pnpm-workspace.yaml | 2 +- scripts/vsh/src/check-dep/index.ts | 1 - 7 files changed, 81 insertions(+), 715 deletions(-) delete mode 100644 packages/@core/ui-kit/shadcn-ui/build.config.ts diff --git a/internal/lint-configs/eslint-config/src/configs/node.ts b/internal/lint-configs/eslint-config/src/configs/node.ts index f94f2d43e..721bd5a0a 100644 --- a/internal/lint-configs/eslint-config/src/configs/node.ts +++ b/internal/lint-configs/eslint-config/src/configs/node.ts @@ -18,7 +18,6 @@ export async function node(): Promise { { allowModules: [ 'tsdown', - 'unbuild', '@vben/vite-config', 'vitest', 'vite', diff --git a/package.json b/package.json index aedb872d6..e80894d31 100644 --- a/package.json +++ b/package.json @@ -68,6 +68,7 @@ "@changesets/changelog-github": "catalog:", "@changesets/cli": "catalog:", "@playwright/test": "catalog:", + "@tsdown/css": "catalog:", "@types/node": "catalog:", "@vben/commitlint-config": "workspace:*", "@vben/eslint-config": "workspace:*", @@ -95,7 +96,6 @@ "tsdown": "catalog:", "turbo": "catalog:", "typescript": "catalog:", - "unbuild": "catalog:", "unplugin-vue": "catalog:", "vite": "catalog:", "vitest": "catalog:", diff --git a/packages/@core/ui-kit/shadcn-ui/build.config.ts b/packages/@core/ui-kit/shadcn-ui/build.config.ts deleted file mode 100644 index aec93408a..000000000 --- a/packages/@core/ui-kit/shadcn-ui/build.config.ts +++ /dev/null @@ -1,27 +0,0 @@ -import { defineBuildConfig } from 'unbuild'; - -export default defineBuildConfig({ - clean: true, - declaration: true, - entries: [ - { - builder: 'mkdist', - input: './src', - - pattern: ['**/*'], - }, - { - builder: 'mkdist', - input: './src', - loaders: ['vue'], - pattern: ['**/*.vue'], - }, - { - builder: 'mkdist', - format: 'esm', - input: './src', - loaders: ['js'], - pattern: ['**/*.ts'], - }, - ], -}); diff --git a/packages/@core/ui-kit/shadcn-ui/package.json b/packages/@core/ui-kit/shadcn-ui/package.json index f4f0136a1..b49b7ab5c 100644 --- a/packages/@core/ui-kit/shadcn-ui/package.json +++ b/packages/@core/ui-kit/shadcn-ui/package.json @@ -1,8 +1,6 @@ { "name": "@vben-core/shadcn-ui", "version": "5.7.0", - "#main": "./dist/index.mjs", - "#module": "./dist/index.mjs", "homepage": "https://github.com/vbenjs/vue-vben-admin", "bugs": "https://github.com/vbenjs/vue-vben-admin/issues", "repository": { @@ -12,29 +10,28 @@ }, "license": "MIT", "type": "module", - "scripts": { - "#build": "pnpm unbuild", - "#prepublishOnly": "npm run build" - }, "files": [ - "dist" + "components.json", + "src" ], "sideEffects": [ "**/*.css" ], "main": "./src/index.ts", "module": "./src/index.ts", + "types": "./src/index.ts", "exports": { ".": { "types": "./src/index.ts", "development": "./src/index.ts", - "default": "./src/index.ts", - "//default": "./dist/index.mjs" + "default": "./src/index.ts" } }, "publishConfig": { "exports": { ".": { + "types": "./src/index.ts", + "development": "./src/index.ts", "default": "./src/index.ts" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4d857518d..a7ed8cf43 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -20,10 +20,10 @@ catalogs: version: 1.1.0 '@commitlint/cli': specifier: ^20.4.4 - version: 20.4.4 + version: 20.5.0 '@commitlint/config-conventional': specifier: ^20.4.4 - version: 20.4.4 + version: 20.5.0 '@eslint-community/eslint-plugin-eslint-comments': specifier: ^4.7.1 version: 4.7.1 @@ -78,6 +78,9 @@ catalogs: '@tanstack/vue-store': specifier: ^0.9.2 version: 0.9.2 + '@tsdown/css': + specifier: ^0.21.3 + version: 0.21.3 '@types/archiver': specifier: ^7.0.0 version: 7.0.0 @@ -408,9 +411,6 @@ catalogs: typescript: specifier: ^5.9.3 version: 5.9.3 - unbuild: - specifier: ^3.6.1 - version: 3.6.1 unplugin-dts: specifier: ^1.0.0-beta.6 version: 1.0.0-beta.6 @@ -508,7 +508,7 @@ importers: specifier: 'catalog:' version: 1.58.2 '@tsdown/css': - specifier: ^0.21.3 + specifier: 'catalog:' version: 0.21.3(jiti@2.6.1)(postcss@8.5.8)(sass-embedded@1.98.0)(sass@1.98.0)(tsdown@0.21.3)(yaml@2.8.2) '@types/node': specifier: 'catalog:' @@ -591,9 +591,6 @@ importers: typescript: specifier: 'catalog:' version: 5.9.3 - unbuild: - specifier: 'catalog:' - version: 3.6.1(sass@1.98.0)(typescript@5.9.3)(vue-tsc@3.2.5(typescript@5.9.3))(vue@3.5.30(typescript@5.9.3)) unplugin-vue: specifier: 'catalog:' version: 7.1.1(@types/node@25.5.0)(esbuild@0.27.4)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.46.0)(vue@3.5.30(typescript@5.9.3))(yaml@2.8.2) @@ -1004,16 +1001,16 @@ importers: dependencies: '@commitlint/cli': specifier: 'catalog:' - version: 20.4.4(@types/node@25.5.0)(conventional-commits-parser@6.3.0)(typescript@5.9.3) + version: 20.5.0(@types/node@25.5.0)(conventional-commits-parser@6.3.0)(typescript@5.9.3) '@commitlint/config-conventional': specifier: 'catalog:' - version: 20.4.4 + version: 20.5.0 '@vben/node-utils': specifier: workspace:* version: link:../../node-utils commitlint-plugin-function-rules: specifier: 'catalog:' - version: 4.3.2(@commitlint/lint@20.4.4) + version: 4.3.2(@commitlint/lint@20.5.0) cz-git: specifier: 'catalog:' version: 1.12.0 @@ -2831,61 +2828,61 @@ packages: resolution: {integrity: sha512-SIOD2DxrRRwQ+jgzlXCqoEFiKOFqaPjhnNTGKXSRLvp1HiOvapLaFG2kEr9dYQTYe8rKrd9uvDUzmAITeNyaHQ==} engines: {node: '>=18.0.0'} - '@commitlint/cli@20.4.4': - resolution: {integrity: sha512-GLMNQHYGcn0ohL2HMlAnXcD1PS2vqBBGbYKlhrRPOYsWiRoLWtrewsR3uKRb9v/IdS+qOS0vqJQ64n1g8VPKFw==} + '@commitlint/cli@20.5.0': + resolution: {integrity: sha512-yNkyN/tuKTJS3wdVfsZ2tXDM4G4Gi7z+jW54Cki8N8tZqwKBltbIvUUrSbT4hz1bhW/h0CdR+5sCSpXD+wMKaQ==} engines: {node: '>=v18'} hasBin: true - '@commitlint/config-conventional@20.4.4': - resolution: {integrity: sha512-Usg+XXbPNG2GtFWTgRURNWCge1iH1y6jQIvvklOdAbyn2t8ajfVwZCnf5t5X4gUsy17BOiY+myszGsSMIvhOVA==} + '@commitlint/config-conventional@20.5.0': + resolution: {integrity: sha512-t3Ni88rFw1XMa4nZHgOKJ8fIAT9M2j5TnKyTqJzsxea7FUetlNdYFus9dz+MhIRZmc16P0PPyEfh6X2d/qw8SA==} engines: {node: '>=v18'} - '@commitlint/config-validator@20.4.4': - resolution: {integrity: sha512-K8hMS9PTLl7EYe5vWtSFQ/sgsV2PHUOtEnosg8k3ZQxCyfKD34I4C7FxWEfRTR54rFKeUYmM3pmRQqBNQeLdlw==} + '@commitlint/config-validator@20.5.0': + resolution: {integrity: sha512-T/Uh6iJUzyx7j35GmHWdIiGRQB+ouZDk0pwAaYq4SXgB54KZhFdJ0vYmxiW6AMYICTIWuyMxDBl1jK74oFp/Gw==} engines: {node: '>=v18'} - '@commitlint/ensure@20.4.4': - resolution: {integrity: sha512-QivV0M1MGL867XCaF+jJkbVXEPKBALhUUXdjae66hes95aY1p3vBJdrcl3x8jDv2pdKWvIYIz+7DFRV/v0dRkA==} + '@commitlint/ensure@20.5.0': + resolution: {integrity: sha512-IpHqAUesBeW1EDDdjzJeaOxU9tnogLAyXLRBn03SHlj1SGENn2JGZqSWGkFvBJkJzfXAuCNtsoYzax+ZPS+puw==} engines: {node: '>=v18'} '@commitlint/execute-rule@20.0.0': resolution: {integrity: sha512-xyCoOShoPuPL44gVa+5EdZsBVao/pNzpQhkzq3RdtlFdKZtjWcLlUFQHSWBuhk5utKYykeJPSz2i8ABHQA+ZZw==} engines: {node: '>=v18'} - '@commitlint/format@20.4.4': - resolution: {integrity: sha512-jLi/JBA4GEQxc5135VYCnkShcm1/rarbXMn2Tlt3Si7DHiiNKHm4TaiJCLnGbZ1r8UfwDRk+qrzZ80kwh08Aow==} + '@commitlint/format@20.5.0': + resolution: {integrity: sha512-TI9EwFU/qZWSK7a5qyXMpKPPv3qta7FO4tKW+Wt2al7sgMbLWTsAcDpX1cU8k16TRdsiiet9aOw0zpvRXNJu7Q==} engines: {node: '>=v18'} - '@commitlint/is-ignored@20.4.4': - resolution: {integrity: sha512-y76rT8yq02x+pMDBI2vY4y/ByAwmJTkta/pASbgo8tldBiKLduX8/2NCRTSCjb3SumE5FBeopERKx3oMIm8RTQ==} + '@commitlint/is-ignored@20.5.0': + resolution: {integrity: sha512-JWLarAsurHJhPozbuAH6GbP4p/hdOCoqS9zJMfqwswne+/GPs5V0+rrsfOkP68Y8PSLphwtFXV0EzJ+GTXTTGg==} engines: {node: '>=v18'} - '@commitlint/lint@20.4.4': - resolution: {integrity: sha512-svOEW+RptcNpXKE7UllcAsV0HDIdOck9reC2TP1QA6K5Fo0xxQV+QPjV8Zqx9g6X/hQBkF2S9ZQZ78Xrv1Eiog==} + '@commitlint/lint@20.5.0': + resolution: {integrity: sha512-jiM3hNUdu04jFBf1VgPdjtIPvbuVfDTBAc6L98AWcoLjF5sYqkulBHBzlVWll4rMF1T5zeQFB6r//a+s+BBKlA==} engines: {node: '>=v18'} - '@commitlint/load@20.4.4': - resolution: {integrity: sha512-kvFrzvoIACa/fMjXEP0LNEJB1joaH3q3oeMJsLajXE5IXjYrNGVcW1ZFojXUruVJ7odTZbC3LdE/6+ONW4f2Dg==} + '@commitlint/load@20.5.0': + resolution: {integrity: sha512-sLhhYTL/KxeOTZjjabKDhwidGZan84XKK1+XFkwDYL/4883kIajcz/dZFAhBJmZPtL8+nBx6bnkzA95YxPeDPw==} engines: {node: '>=v18'} '@commitlint/message@20.4.3': resolution: {integrity: sha512-6akwCYrzcrFcTYz9GyUaWlhisY4lmQ3KvrnabmhoeAV8nRH4dXJAh4+EUQ3uArtxxKQkvxJS78hNX2EU3USgxQ==} engines: {node: '>=v18'} - '@commitlint/parse@20.4.4': - resolution: {integrity: sha512-AjfgOgrjEozeQNzhFu1KL5N0nDx4JZmswVJKNfOTLTUGp6xODhZHCHqb//QUHKOzx36If5DQ7tci2o7szYxu1A==} + '@commitlint/parse@20.5.0': + resolution: {integrity: sha512-SeKWHBMk7YOTnnEWUhx+d1a9vHsjjuo6Uo1xRfPNfeY4bdYFasCH1dDpAv13Lyn+dDPOels+jP6D2GRZqzc5fA==} engines: {node: '>=v18'} - '@commitlint/read@20.4.4': - resolution: {integrity: sha512-jvgdAQDdEY6L8kCxOo21IWoiAyNFzvrZb121wU2eBxI1DzWAUZgAq+a8LlJRbT0Qsj9INhIPVWgdaBbEzlF0dQ==} + '@commitlint/read@20.5.0': + resolution: {integrity: sha512-JDEIJ2+GnWpK8QqwfmW7O42h0aycJEWNqcdkJnyzLD11nf9dW2dWLTVEa8Wtlo4IZFGLPATjR5neA5QlOvIH1w==} engines: {node: '>=v18'} - '@commitlint/resolve-extends@20.4.4': - resolution: {integrity: sha512-pyOf+yX3c3m/IWAn2Jop+7s0YGKPQ8YvQaxt9IQxnLIM3yZAlBdkKiQCT14TnrmZTkVGTXiLtckcnFTXYwlY0A==} + '@commitlint/resolve-extends@20.5.0': + resolution: {integrity: sha512-3SHPWUW2v0tyspCTcfSsYml0gses92l6TlogwzvM2cbxDgmhSRc+fldDjvGkCXJrjSM87BBaWYTPWwwyASZRrg==} engines: {node: '>=v18'} - '@commitlint/rules@20.4.4': - resolution: {integrity: sha512-PmUp8QPLICn9w05dAx5r1rdOYoTk7SkfusJJh5tP3TqHwo2mlQ9jsOm8F0HSXU9kuLfgTEGNrunAx/dlK/RyPQ==} + '@commitlint/rules@20.5.0': + resolution: {integrity: sha512-5NdQXQEdnDPT5pK8O39ZA7HohzPRHEsDGU23cyVCNPQy4WegAbAwrQk3nIu7p2sl3dutPk8RZd91yKTrMTnRkQ==} engines: {node: '>=v18'} '@commitlint/to-lines@20.0.0': @@ -2896,8 +2893,8 @@ packages: resolution: {integrity: sha512-qD9xfP6dFg5jQ3NMrOhG0/w5y3bBUsVGyJvXxdWEwBm8hyx4WOk3kKXw28T5czBYvyeCVJgJJ6aoJZUWDpaacQ==} engines: {node: '>=v18'} - '@commitlint/types@20.4.4': - resolution: {integrity: sha512-dwTGzyAblFXHJNBOgrTuO5Ee48ioXpS5XPRLLatxhQu149DFAHUcB3f0Q5eea3RM4USSsP1+WVT2dBtLVod4fg==} + '@commitlint/types@20.5.0': + resolution: {integrity: sha512-ZJoS8oSq2CAZEpc/YI9SulLrdiIyXeHb/OGqGrkUP6Q7YV+0ouNAa7GjqRdXeQPncHQIDz/jbCTlHScvYvO/gA==} engines: {node: '>=v18'} '@conventional-changelog/git-client@2.6.0': @@ -4561,15 +4558,6 @@ packages: '@rolldown/pluginutils@1.0.0-rc.9': resolution: {integrity: sha512-w6oiRWgEBl04QkFZgmW+jnU1EC9b57Oihi2ot3HNWIQRqgHp5PnYDia5iZ5FF7rpa4EQdiqMDXjlqKGXBhsoXw==} - '@rollup/plugin-alias@5.1.1': - resolution: {integrity: sha512-PR9zDb+rOzkRb2VD+EuKB7UC41vU5DIwZ5qqCpk0KJudcWAyi8rvYOhS7+L5aZCspw1stTViLgN5v6FF1p5cgQ==} - engines: {node: '>=14.0.0'} - peerDependencies: - rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - '@rollup/plugin-alias@6.0.0': resolution: {integrity: sha512-tPCzJOtS7uuVZd+xPhoy5W4vThe6KWXNmsFCNktaAh5RTqcLiSfT4huPQIXkgJ6YCOjJHvecOAzQxLFhPxKr+g==} engines: {node: '>=20.19.0'} @@ -4590,15 +4578,6 @@ packages: '@types/babel__core': optional: true - '@rollup/plugin-commonjs@28.0.9': - resolution: {integrity: sha512-PIR4/OHZ79romx0BVVll/PkwWpJ7e5lsqFa3gFfcrFPWwLXLV39JVUzQV9RKjWerE7B845Hqjj9VYlQeieZ2dA==} - engines: {node: '>=16.0.0 || 14 >= 14.17'} - peerDependencies: - rollup: ^2.68.0||^3.0.0||^4.0.0 - peerDependenciesMeta: - rollup: - optional: true - '@rollup/plugin-commonjs@29.0.2': resolution: {integrity: sha512-S/ggWH1LU7jTyi9DxZOKyxpVd4hF/OZ0JrEbeLjXk/DFXwRny0tjD2c992zOUYQobLrVkRVMDdmHP16HKP7GRg==} engines: {node: '>=16.0.0 || 14 >= 14.17'} @@ -5948,13 +5927,6 @@ packages: atomically@2.1.1: resolution: {integrity: sha512-P4w9o2dqARji6P7MHprklbfiArZAWvo07yW7qs3pdljb3BWr12FIB7W+p0zJiuiVsUpRO0iZn1kFFcpPegg0tQ==} - autoprefixer@10.4.27: - resolution: {integrity: sha512-NP9APE+tO+LuJGn7/9+cohklunJsXWiaWEfV3si4Gi/XHDwVNgkwr1J3RQYFIvPy76GmJ9/bW8vyoU1LcxwKHA==} - engines: {node: ^10 || ^12 || >=14} - hasBin: true - peerDependencies: - postcss: ^8.1.0 - available-typed-arrays@1.0.7: resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} engines: {node: '>= 0.4'} @@ -6159,9 +6131,6 @@ packages: resolution: {integrity: sha512-8WB3Jcas3swSvjIeA2yvCJ+Miyz5l1ZmB6HFb9R1317dt9LCQoswg/BGrmAmkWVEszSrrg4RwmO46qIm2OEnSA==} engines: {node: '>=16'} - caniuse-api@3.0.0: - resolution: {integrity: sha512-bsTwuIg/BZZK/vreVTYYbSWoe2F+71P7K5QGEX+pT250DZbfU1MQ5prOKpPR+LL6uWKK3KMwMCAS74QB3Um1uw==} - caniuse-lite@1.0.30001779: resolution: {integrity: sha512-U5og2PN7V4DMgF50YPNtnZJGWVLFjjsN3zb6uMT5VGYIewieDj1upwfuVNXf4Kor+89c3iCRJnSzMD5LmTvsfA==} @@ -6532,12 +6501,6 @@ packages: engines: {node: '>=20.18'} hasBin: true - css-declaration-sorter@7.3.1: - resolution: {integrity: sha512-gz6x+KkgNCjxq3Var03pRYLhyNfwhkKF1g/yoLgDNtFvVu0/fOLV9C8fFEZRjACp/XQLumjAYo7JVjzH3wLbxA==} - engines: {node: ^14 || ^16 || >=18} - peerDependencies: - postcss: ^8.0.9 - css-functions-list@3.3.3: resolution: {integrity: sha512-8HFEBPKhOpJPEPu70wJJetjKta86Gw9+CCyCnB3sui2qQfOvRyqBy4IKLKKAwdMpWb2lHXWk9Wb4Z6AmaUT1Pg==} engines: {node: '>=12'} @@ -6568,24 +6531,6 @@ packages: engines: {node: '>=4'} hasBin: true - cssnano-preset-default@7.0.11: - resolution: {integrity: sha512-waWlAMuCakP7//UCY+JPrQS1z0OSLeOXk2sKWJximKWGupVxre50bzPlvpbUwZIDylhf/ptf0Pk+Yf7C+hoa3g==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - - cssnano-utils@5.0.1: - resolution: {integrity: sha512-ZIP71eQgG9JwjVZsTPSqhc6GHgEr53uJ7tK5///VfyWj6Xp2DBmixWHqJgPno+PqATzn48pL42ww9x5SSGmhZg==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - - cssnano@7.1.3: - resolution: {integrity: sha512-mLFHQAzyapMVFLiJIn7Ef4C2UCEvtlTlbyILR6B5ZsUAV3D/Pa761R5uC1YPhyBkRd3eqaDm2ncaNrD7R4mTRg==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - csso@5.0.5: resolution: {integrity: sha512-0LrrStPOdJj+SPCCrGhzryycLjwcgUSHBtxNA8aIDxf0GLsRh1cKYhB00Gd1lDOS4yGH69+SNn13+TWbVHETFQ==} engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0, npm: '>=7.0.0'} @@ -7317,9 +7262,6 @@ packages: resolution: {integrity: sha512-MzwXju70AuyflbgeOhzvQWAvvQdo1XL0A9bVvlXsYcFEBM87WR4OakL4OfZq+QRmr+duJubio+UtNQCPsVESzQ==} engines: {node: '>= 10.13.0'} - fix-dts-default-cjs-exports@1.0.1: - resolution: {integrity: sha512-pVIECanWFC61Hzl2+oOCtoJ3F17kglZC/6N94eRWycFgBH35hHx0Li604ZIzhseh97mf2p0cv7vVrOZGoqhlEg==} - flat-cache@4.0.1: resolution: {integrity: sha512-f7ccFPK3SXFHpx15UIGyRJ/FJQctuKZ0zVuN3frBo4HnK3cay9VEW0R6yPYFHC0AgqhukPzKjq22t5DmAyqGyw==} engines: {node: '>=16'} @@ -7362,9 +7304,6 @@ packages: resolution: {integrity: sha512-buewHzMvYL29jdeQTVILecSaZKnt/RJWjoZCF5OW60Z67/GmSLBkOFM7qh1PI3zFNtJbaZL5eQu1vLfazOwj4g==} engines: {node: '>=12.20.0'} - fraction.js@5.3.4: - resolution: {integrity: sha512-1X1NTtiJphryn/uLQz3whtY6jK3fTqoE3ohKs0tT+Ujr1W59oopxmoEh7Lu5p6vBaPbgoM0bzveAW4Qi5RyWDQ==} - framesync@6.1.2: resolution: {integrity: sha512-jBTqhX6KaQVDyus8muwZbBeGGP0XgujBRbQ7gM7BRdS3CadCZIHiawyzYLnafYcvZIh5j8WE7cxZKFn7dXhu9g==} @@ -8036,10 +7975,6 @@ packages: engines: {node: '>=10'} hasBin: true - jiti@1.21.7: - resolution: {integrity: sha512-/imKNG4EbWNrVjoNC/1H5/9GFy+tqjGBHCaSsN+P2RnPqjsLmv6UD3Ej+Kj8nBWaRAwyk7kK5ZUc+OEatnTR3A==} - hasBin: true - jiti@2.6.1: resolution: {integrity: sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==} hasBin: true @@ -8467,9 +8402,6 @@ packages: lodash.kebabcase@4.1.1: resolution: {integrity: sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==} - lodash.memoize@4.1.2: - resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==} - lodash.merge@4.6.2: resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} @@ -8491,9 +8423,6 @@ packages: lodash.truncate@4.4.2: resolution: {integrity: sha512-jttmRe7bRse52OsWIMDLaXxWqRAmtIUccAQ3garviCqJjafXOfNMO0yMfNpdD6zbGaTU0P5Nz7e7gAT6cKmJRw==} - lodash.uniq@4.5.0: - resolution: {integrity: sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==} - lodash.upperfirst@4.3.1: resolution: {integrity: sha512-sReKOYJIJf74dhJONhU4e0/shzi1trVbSWDOhKYE5XV2O+H7Sb2Dihwuc7xWxVl+DgFPyTqIN3zMfT9cq5iWDg==} @@ -8699,27 +8628,6 @@ packages: mitt@3.0.1: resolution: {integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==} - mkdist@2.4.1: - resolution: {integrity: sha512-Ezk0gi04GJBkqMfsksICU5Rjoemc4biIekwgrONWVPor2EO/N9nBgN6MZXAf7Yw4mDDhrNyKbdETaHNevfumKg==} - hasBin: true - peerDependencies: - sass: ^1.92.1 - typescript: '>=5.9.2' - vue: ^3.5.30 - vue-sfc-transformer: ^0.1.1 - vue-tsc: ^1.8.27 || ^2.0.21 || ^3.0.0 - peerDependenciesMeta: - sass: - optional: true - typescript: - optional: true - vue: - optional: true - vue-sfc-transformer: - optional: true - vue-tsc: - optional: true - mlly@1.8.1: resolution: {integrity: sha512-SnL6sNutTwRWWR/vcmCYHSADjiEesp5TGQQ0pXyLhW5IoeibRlF/CbSLailbB3CNqJUk9cVJ9dUDnbD7GrcHBQ==} @@ -9173,48 +9081,6 @@ packages: resolution: {integrity: sha512-/+5VFTchJDoVj3bhoqi6UeymcD00DAwb1nJwamzPvHEszJ4FpF6SNNbUbOS8yI56qHzdV8eK0qEfOSiodkTdxg==} engines: {node: '>= 0.4'} - postcss-calc@10.1.1: - resolution: {integrity: sha512-NYEsLHh8DgG/PRH2+G9BTuUdtf9ViS+vdoQ0YA5OQdGsfN4ztiwtDWNtBl9EKeqNMFnIu8IKZ0cLxEQ5r5KVMw==} - engines: {node: ^18.12 || ^20.9 || >=22.0} - peerDependencies: - postcss: ^8.4.38 - - postcss-colormin@7.0.6: - resolution: {integrity: sha512-oXM2mdx6IBTRm39797QguYzVEWzbdlFiMNfq88fCCN1Wepw3CYmJ/1/Ifa/KjWo+j5ZURDl2NTldLJIw51IeNQ==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - - postcss-convert-values@7.0.9: - resolution: {integrity: sha512-l6uATQATZaCa0bckHV+r6dLXfWtUBKXxO3jK+AtxxJJtgMPD+VhhPCCx51I4/5w8U5uHV67g3w7PXj+V3wlMlg==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - - postcss-discard-comments@7.0.6: - resolution: {integrity: sha512-Sq+Fzj1Eg5/CPf1ERb0wS1Im5cvE2gDXCE+si4HCn1sf+jpQZxDI4DXEp8t77B/ImzDceWE2ebJQFXdqZ6GRJw==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - - postcss-discard-duplicates@7.0.2: - resolution: {integrity: sha512-eTonaQvPZ/3i1ASDHOKkYwAybiM45zFIc7KXils4mQmHLqIswXD9XNOKEVxtTFnsmwYzF66u4LMgSr0abDlh5w==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - - postcss-discard-empty@7.0.1: - resolution: {integrity: sha512-cFrJKZvcg/uxB6Ijr4l6qmn3pXQBna9zyrPC+sK0zjbkDUZew+6xDltSF7OeB7rAtzaaMVYSdbod+sZOCWnMOg==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - - postcss-discard-overridden@7.0.1: - resolution: {integrity: sha512-7c3MMjjSZ/qYrx3uc1940GSOzN1Iqjtlqe8uoSg+qdVPYyRb0TILSqqmtlSFuE4mTDECwsm397Ya7iXGzfF7lg==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - postcss-html@1.8.1: resolution: {integrity: sha512-OLF6P7qctfAWayOhLpcVnTGqVeJzu2W3WpIYelfz2+JV5oGxfkcEvweN9U4XpeqE0P98dcD9ssusGwlF0TK0uQ==} engines: {node: ^12 || >=14} @@ -9240,120 +9106,6 @@ packages: postcss-media-query-parser@0.2.3: resolution: {integrity: sha512-3sOlxmbKcSHMjlUXQZKQ06jOswE7oVkXPxmZdoB1r5l0q6gTFTQSHxNxOrCccElbW7dxNytifNEo8qidX2Vsig==} - postcss-merge-longhand@7.0.5: - resolution: {integrity: sha512-Kpu5v4Ys6QI59FxmxtNB/iHUVDn9Y9sYw66D6+SZoIk4QTz1prC4aYkhIESu+ieG1iylod1f8MILMs1Em3mmIw==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - - postcss-merge-rules@7.0.8: - resolution: {integrity: sha512-BOR1iAM8jnr7zoQSlpeBmCsWV5Uudi/+5j7k05D0O/WP3+OFMPD86c1j/20xiuRtyt45bhxw/7hnhZNhW2mNFA==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - - postcss-minify-font-values@7.0.1: - resolution: {integrity: sha512-2m1uiuJeTplll+tq4ENOQSzB8LRnSUChBv7oSyFLsJRtUgAAJGP6LLz0/8lkinTgxrmJSPOEhgY1bMXOQ4ZXhQ==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - - postcss-minify-gradients@7.0.1: - resolution: {integrity: sha512-X9JjaysZJwlqNkJbUDgOclyG3jZEpAMOfof6PUZjPnPrePnPG62pS17CjdM32uT1Uq1jFvNSff9l7kNbmMSL2A==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - - postcss-minify-params@7.0.6: - resolution: {integrity: sha512-YOn02gC68JijlaXVuKvFSCvQOhTpblkcfDre2hb/Aaa58r2BIaK4AtE/cyZf2wV7YKAG+UlP9DT+By0ry1E4VQ==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - - postcss-minify-selectors@7.0.6: - resolution: {integrity: sha512-lIbC0jy3AAwDxEgciZlBullDiMBeBCT+fz5G8RcA9MWqh/hfUkpOI3vNDUNEZHgokaoiv0juB9Y8fGcON7rU/A==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - - postcss-nested@7.0.2: - resolution: {integrity: sha512-5osppouFc0VR9/VYzYxO03VaDa3e8F23Kfd6/9qcZTUI8P58GIYlArOET2Wq0ywSl2o2PjELhYOFI4W7l5QHKw==} - engines: {node: '>=18.0'} - peerDependencies: - postcss: ^8.2.14 - - postcss-normalize-charset@7.0.1: - resolution: {integrity: sha512-sn413ofhSQHlZFae//m9FTOfkmiZ+YQXsbosqOWRiVQncU2BA3daX3n0VF3cG6rGLSFVc5Di/yns0dFfh8NFgQ==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - - postcss-normalize-display-values@7.0.1: - resolution: {integrity: sha512-E5nnB26XjSYz/mGITm6JgiDpAbVuAkzXwLzRZtts19jHDUBFxZ0BkXAehy0uimrOjYJbocby4FVswA/5noOxrQ==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - - postcss-normalize-positions@7.0.1: - resolution: {integrity: sha512-pB/SzrIP2l50ZIYu+yQZyMNmnAcwyYb9R1fVWPRxm4zcUFCY2ign7rcntGFuMXDdd9L2pPNUgoODDk91PzRZuQ==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - - postcss-normalize-repeat-style@7.0.1: - resolution: {integrity: sha512-NsSQJ8zj8TIDiF0ig44Byo3Jk9e4gNt9x2VIlJudnQQ5DhWAHJPF4Tr1ITwyHio2BUi/I6Iv0HRO7beHYOloYQ==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - - postcss-normalize-string@7.0.1: - resolution: {integrity: sha512-QByrI7hAhsoze992kpbMlJSbZ8FuCEc1OT9EFbZ6HldXNpsdpZr+YXC5di3UEv0+jeZlHbZcoCADgb7a+lPmmQ==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - - postcss-normalize-timing-functions@7.0.1: - resolution: {integrity: sha512-bHifyuuSNdKKsnNJ0s8fmfLMlvsQwYVxIoUBnowIVl2ZAdrkYQNGVB4RxjfpvkMjipqvbz0u7feBZybkl/6NJg==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - - postcss-normalize-unicode@7.0.6: - resolution: {integrity: sha512-z6bwTV84YW6ZvvNoaNLuzRW4/uWxDKYI1iIDrzk6D2YTL7hICApy+Q1LP6vBEsljX8FM7YSuV9qI79XESd4ddQ==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - - postcss-normalize-url@7.0.1: - resolution: {integrity: sha512-sUcD2cWtyK1AOL/82Fwy1aIVm/wwj5SdZkgZ3QiUzSzQQofrbq15jWJ3BA7Z+yVRwamCjJgZJN0I9IS7c6tgeQ==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - - postcss-normalize-whitespace@7.0.1: - resolution: {integrity: sha512-vsbgFHMFQrJBJKrUFJNZ2pgBeBkC2IvvoHjz1to0/0Xk7sII24T0qFOiJzG6Fu3zJoq/0yI4rKWi7WhApW+EFA==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - - postcss-ordered-values@7.0.2: - resolution: {integrity: sha512-AMJjt1ECBffF7CEON/Y0rekRLS6KsePU6PRP08UqYW4UGFRnTXNrByUzYK1h8AC7UWTZdQ9O3Oq9kFIhm0SFEw==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - - postcss-reduce-initial@7.0.6: - resolution: {integrity: sha512-G6ZyK68AmrPdMB6wyeA37ejnnRG2S8xinJrZJnOv+IaRKf6koPAVbQsiC7MfkmXaGmF1UO+QCijb27wfpxuRNg==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - - postcss-reduce-transforms@7.0.1: - resolution: {integrity: sha512-MhyEbfrm+Mlp/36hvZ9mT9DaO7dbncU0CvWI8V93LRkY6IYlu38OPg3FObnuKTUxJ4qA8HpurdQOo5CyqqO76g==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - postcss-resolve-nested-selector@0.1.6: resolution: {integrity: sha512-0sglIs9Wmkzbr8lQwEyIzlDOOC9bGmfVKcJTaxv3vMmd3uo4o4DerC3En0bnmgceeql9BfC8hRkp7cg0fjdVqw==} @@ -9388,18 +9140,6 @@ packages: peerDependencies: postcss: ^8.4.20 - postcss-svgo@7.1.1: - resolution: {integrity: sha512-zU9H9oEDrUFKa0JB7w+IYL7Qs9ey1mZyjhbf0KLxwJDdDRtoPvCmaEfknzqfHj44QS9VD6c5sJnBAVYTLRg/Sg==} - engines: {node: ^18.12.0 || ^20.9.0 || >= 18} - peerDependencies: - postcss: ^8.4.32 - - postcss-unique-selectors@7.0.5: - resolution: {integrity: sha512-3QoYmEt4qg/rUWDn6Tc8+ZVPmbp4G1hXDtCNWDx0st8SjtCbRcxRXDDM1QrEiXGG3A45zscSJFb4QH90LViyxg==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - postcss-value-parser@4.2.0: resolution: {integrity: sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==} @@ -9695,13 +9435,6 @@ packages: engines: {node: ^20.19.0 || >=22.12.0} hasBin: true - rollup-plugin-dts@6.4.0: - resolution: {integrity: sha512-2i00A5UoPCoDecLEs13Eu105QegSGfrbp1sDeUj/54LKGmv6XFHDxWKC6Wsb4BobGUWYVCWWjmjAc8bXXbXH/Q==} - engines: {node: '>=16'} - peerDependencies: - rollup: ^3.29.4 || ^4 - typescript: ^4.5 || ^5.0 || ^6.0 - rollup-plugin-visualizer@6.0.11: resolution: {integrity: sha512-TBwVHVY7buHjIKVLqr9scTVFwqZqMXINcCphPwIWKPDCOBIa+jCQfafvbjRJDZgXdq/A996Dy6yGJ/+/NtAXDQ==} engines: {node: '>=18'} @@ -10216,12 +9949,6 @@ packages: style-value-types@5.1.2: resolution: {integrity: sha512-Vs9fNreYF9j6W2VvuDTP7kepALi7sk0xtk2Tu8Yxi9UoajJdEVpNpCov0HsLTqXvNGKX+Uv09pkozVITi1jf3Q==} - stylehacks@7.0.8: - resolution: {integrity: sha512-I3f053GBLIiS5Fg6OMFhq/c+yW+5Hc2+1fgq7gElDMMSqwlRb3tBf2ef6ucLStYRpId4q//bQO1FjcyNyy4yDQ==} - engines: {node: ^18.12.0 || ^20.9.0 || >=22.0} - peerDependencies: - postcss: ^8.4.32 - stylelint-config-html@1.1.0: resolution: {integrity: sha512-IZv4IVESjKLumUGi+HWeb7skgO6/g4VMuAYrJdlqQFndgbj6WJAXPhaysvBiXefX79upBdQVumgYcdd17gCpjQ==} engines: {node: ^12 || >=14} @@ -10604,15 +10331,6 @@ packages: resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} engines: {node: '>= 0.4'} - unbuild@3.6.1: - resolution: {integrity: sha512-+U5CdtrdjfWkZhuO4N9l5UhyiccoeMEXIc2Lbs30Haxb+tRwB3VwB8AoZRxlAzORXunenSo+j6lh45jx+xkKgg==} - hasBin: true - peerDependencies: - typescript: ^5.9.2 - peerDependenciesMeta: - typescript: - optional: true - unconfig-core@7.5.0: resolution: {integrity: sha512-Su3FauozOGP44ZmKdHy2oE6LPjk51M/TRRjHv2HNCWiDvfvCoxC2lno6jevMA91MYAdCdwP05QnWdWpSbncX/w==} @@ -12566,13 +12284,13 @@ snapshots: '@cloudflare/kv-asset-handler@0.4.2': {} - '@commitlint/cli@20.4.4(@types/node@25.5.0)(conventional-commits-parser@6.3.0)(typescript@5.9.3)': + '@commitlint/cli@20.5.0(@types/node@25.5.0)(conventional-commits-parser@6.3.0)(typescript@5.9.3)': dependencies: - '@commitlint/format': 20.4.4 - '@commitlint/lint': 20.4.4 - '@commitlint/load': 20.4.4(@types/node@25.5.0)(typescript@5.9.3) - '@commitlint/read': 20.4.4(conventional-commits-parser@6.3.0) - '@commitlint/types': 20.4.4 + '@commitlint/format': 20.5.0 + '@commitlint/lint': 20.5.0 + '@commitlint/load': 20.5.0(@types/node@25.5.0)(typescript@5.9.3) + '@commitlint/read': 20.5.0(conventional-commits-parser@6.3.0) + '@commitlint/types': 20.5.0 tinyexec: 1.0.4 yargs: 17.7.2 transitivePeerDependencies: @@ -12581,19 +12299,19 @@ snapshots: - conventional-commits-parser - typescript - '@commitlint/config-conventional@20.4.4': + '@commitlint/config-conventional@20.5.0': dependencies: - '@commitlint/types': 20.4.4 + '@commitlint/types': 20.5.0 conventional-changelog-conventionalcommits: 9.3.0 - '@commitlint/config-validator@20.4.4': + '@commitlint/config-validator@20.5.0': dependencies: - '@commitlint/types': 20.4.4 + '@commitlint/types': 20.5.0 ajv: 8.18.0 - '@commitlint/ensure@20.4.4': + '@commitlint/ensure@20.5.0': dependencies: - '@commitlint/types': 20.4.4 + '@commitlint/types': 20.5.0 lodash.camelcase: 4.3.0 lodash.kebabcase: 4.1.1 lodash.snakecase: 4.1.1 @@ -12602,29 +12320,29 @@ snapshots: '@commitlint/execute-rule@20.0.0': {} - '@commitlint/format@20.4.4': + '@commitlint/format@20.5.0': dependencies: - '@commitlint/types': 20.4.4 + '@commitlint/types': 20.5.0 picocolors: 1.1.1 - '@commitlint/is-ignored@20.4.4': + '@commitlint/is-ignored@20.5.0': dependencies: - '@commitlint/types': 20.4.4 + '@commitlint/types': 20.5.0 semver: 7.7.4 - '@commitlint/lint@20.4.4': + '@commitlint/lint@20.5.0': dependencies: - '@commitlint/is-ignored': 20.4.4 - '@commitlint/parse': 20.4.4 - '@commitlint/rules': 20.4.4 - '@commitlint/types': 20.4.4 + '@commitlint/is-ignored': 20.5.0 + '@commitlint/parse': 20.5.0 + '@commitlint/rules': 20.5.0 + '@commitlint/types': 20.5.0 - '@commitlint/load@20.4.4(@types/node@25.5.0)(typescript@5.9.3)': + '@commitlint/load@20.5.0(@types/node@25.5.0)(typescript@5.9.3)': dependencies: - '@commitlint/config-validator': 20.4.4 + '@commitlint/config-validator': 20.5.0 '@commitlint/execute-rule': 20.0.0 - '@commitlint/resolve-extends': 20.4.4 - '@commitlint/types': 20.4.4 + '@commitlint/resolve-extends': 20.5.0 + '@commitlint/types': 20.5.0 cosmiconfig: 9.0.1(typescript@5.9.3) cosmiconfig-typescript-loader: 6.2.0(@types/node@25.5.0)(cosmiconfig@9.0.1(typescript@5.9.3))(typescript@5.9.3) is-plain-obj: 4.1.0 @@ -12636,16 +12354,16 @@ snapshots: '@commitlint/message@20.4.3': {} - '@commitlint/parse@20.4.4': + '@commitlint/parse@20.5.0': dependencies: - '@commitlint/types': 20.4.4 + '@commitlint/types': 20.5.0 conventional-changelog-angular: 8.3.0 conventional-commits-parser: 6.3.0 - '@commitlint/read@20.4.4(conventional-commits-parser@6.3.0)': + '@commitlint/read@20.5.0(conventional-commits-parser@6.3.0)': dependencies: '@commitlint/top-level': 20.4.3 - '@commitlint/types': 20.4.4 + '@commitlint/types': 20.5.0 git-raw-commits: 5.0.1(conventional-commits-parser@6.3.0) minimist: 1.2.8 tinyexec: 1.0.4 @@ -12653,21 +12371,21 @@ snapshots: - conventional-commits-filter - conventional-commits-parser - '@commitlint/resolve-extends@20.4.4': + '@commitlint/resolve-extends@20.5.0': dependencies: - '@commitlint/config-validator': 20.4.4 - '@commitlint/types': 20.4.4 + '@commitlint/config-validator': 20.5.0 + '@commitlint/types': 20.5.0 global-directory: 4.0.1 import-meta-resolve: 4.2.0 lodash.mergewith: 4.6.2 resolve-from: 5.0.0 - '@commitlint/rules@20.4.4': + '@commitlint/rules@20.5.0': dependencies: - '@commitlint/ensure': 20.4.4 + '@commitlint/ensure': 20.5.0 '@commitlint/message': 20.4.3 '@commitlint/to-lines': 20.0.0 - '@commitlint/types': 20.4.4 + '@commitlint/types': 20.5.0 '@commitlint/to-lines@20.0.0': {} @@ -12675,7 +12393,7 @@ snapshots: dependencies: escalade: 3.2.0 - '@commitlint/types@20.4.4': + '@commitlint/types@20.5.0': dependencies: conventional-commits-parser: 6.3.0 picocolors: 1.1.1 @@ -13976,10 +13694,6 @@ snapshots: '@rolldown/pluginutils@1.0.0-rc.9': {} - '@rollup/plugin-alias@5.1.1(rollup@4.59.0)': - optionalDependencies: - rollup: 4.59.0 - '@rollup/plugin-alias@6.0.0(rollup@4.59.0)': optionalDependencies: rollup: 4.59.0 @@ -13993,18 +13707,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@rollup/plugin-commonjs@28.0.9(rollup@4.59.0)': - dependencies: - '@rollup/pluginutils': 5.3.0(rollup@4.59.0) - commondir: 1.0.1 - estree-walker: 2.0.2 - fdir: 6.5.0(picomatch@4.0.3) - is-reference: 1.2.1 - magic-string: 0.30.21 - picomatch: 4.0.3 - optionalDependencies: - rollup: 4.59.0 - '@rollup/plugin-commonjs@29.0.2(rollup@4.59.0)': dependencies: '@rollup/pluginutils': 5.3.0(rollup@4.59.0) @@ -15501,15 +15203,6 @@ snapshots: stubborn-fs: 2.0.0 when-exit: 2.1.5 - autoprefixer@10.4.27(postcss@8.5.8): - dependencies: - browserslist: 4.28.1 - caniuse-lite: 1.0.30001779 - fraction.js: 5.3.4 - picocolors: 1.1.1 - postcss: 8.5.8 - postcss-value-parser: 4.2.0 - available-typed-arrays@1.0.7: dependencies: possible-typed-array-names: 1.1.0 @@ -15737,13 +15430,6 @@ snapshots: camelcase@8.0.0: {} - caniuse-api@3.0.0: - dependencies: - browserslist: 4.28.1 - caniuse-lite: 1.0.30001779 - lodash.memoize: 4.1.2 - lodash.uniq: 4.5.0 - caniuse-lite@1.0.30001779: {} ccount@2.0.1: {} @@ -15928,9 +15614,9 @@ snapshots: comment-parser@1.4.5: {} - commitlint-plugin-function-rules@4.3.2(@commitlint/lint@20.4.4): + commitlint-plugin-function-rules@4.3.2(@commitlint/lint@20.5.0): dependencies: - '@commitlint/lint': 20.4.4 + '@commitlint/lint': 20.5.0 common-tags@1.8.2: {} @@ -16159,10 +15845,6 @@ snapshots: semver: 7.7.4 tinyglobby: 0.2.15 - css-declaration-sorter@7.3.1(postcss@8.5.8): - dependencies: - postcss: 8.5.8 - css-functions-list@3.3.3: {} css-render@0.15.14: @@ -16200,50 +15882,6 @@ snapshots: cssesc@3.0.0: {} - cssnano-preset-default@7.0.11(postcss@8.5.8): - dependencies: - browserslist: 4.28.1 - css-declaration-sorter: 7.3.1(postcss@8.5.8) - cssnano-utils: 5.0.1(postcss@8.5.8) - postcss: 8.5.8 - postcss-calc: 10.1.1(postcss@8.5.8) - postcss-colormin: 7.0.6(postcss@8.5.8) - postcss-convert-values: 7.0.9(postcss@8.5.8) - postcss-discard-comments: 7.0.6(postcss@8.5.8) - postcss-discard-duplicates: 7.0.2(postcss@8.5.8) - postcss-discard-empty: 7.0.1(postcss@8.5.8) - postcss-discard-overridden: 7.0.1(postcss@8.5.8) - postcss-merge-longhand: 7.0.5(postcss@8.5.8) - postcss-merge-rules: 7.0.8(postcss@8.5.8) - postcss-minify-font-values: 7.0.1(postcss@8.5.8) - postcss-minify-gradients: 7.0.1(postcss@8.5.8) - postcss-minify-params: 7.0.6(postcss@8.5.8) - postcss-minify-selectors: 7.0.6(postcss@8.5.8) - postcss-normalize-charset: 7.0.1(postcss@8.5.8) - postcss-normalize-display-values: 7.0.1(postcss@8.5.8) - postcss-normalize-positions: 7.0.1(postcss@8.5.8) - postcss-normalize-repeat-style: 7.0.1(postcss@8.5.8) - postcss-normalize-string: 7.0.1(postcss@8.5.8) - postcss-normalize-timing-functions: 7.0.1(postcss@8.5.8) - postcss-normalize-unicode: 7.0.6(postcss@8.5.8) - postcss-normalize-url: 7.0.1(postcss@8.5.8) - postcss-normalize-whitespace: 7.0.1(postcss@8.5.8) - postcss-ordered-values: 7.0.2(postcss@8.5.8) - postcss-reduce-initial: 7.0.6(postcss@8.5.8) - postcss-reduce-transforms: 7.0.1(postcss@8.5.8) - postcss-svgo: 7.1.1(postcss@8.5.8) - postcss-unique-selectors: 7.0.5(postcss@8.5.8) - - cssnano-utils@5.0.1(postcss@8.5.8): - dependencies: - postcss: 8.5.8 - - cssnano@7.1.3(postcss@8.5.8): - dependencies: - cssnano-preset-default: 7.0.11(postcss@8.5.8) - lilconfig: 3.1.3 - postcss: 8.5.8 - csso@5.0.5: dependencies: css-tree: 2.2.1 @@ -17118,12 +16756,6 @@ snapshots: micromatch: 4.0.8 resolve-dir: 1.0.1 - fix-dts-default-cjs-exports@1.0.1: - dependencies: - magic-string: 0.30.21 - mlly: 1.8.1 - rollup: 4.59.0 - flat-cache@4.0.1: dependencies: flatted: 3.4.1 @@ -17166,8 +16798,6 @@ snapshots: dependencies: fetch-blob: 3.2.0 - fraction.js@5.3.4: {} - framesync@6.1.2: dependencies: tslib: 2.4.0 @@ -17853,8 +17483,6 @@ snapshots: filelist: 1.0.6 picocolors: 1.1.1 - jiti@1.21.7: {} - jiti@2.6.1: {} jju@1.4.0: {} @@ -18230,8 +17858,6 @@ snapshots: lodash.kebabcase@4.1.1: {} - lodash.memoize@4.1.2: {} - lodash.merge@4.6.2: {} lodash.mergewith@4.6.2: {} @@ -18246,8 +17872,6 @@ snapshots: lodash.truncate@4.4.2: {} - lodash.uniq@4.5.0: {} - lodash.upperfirst@4.3.1: {} lodash@4.17.23: {} @@ -18438,27 +18062,6 @@ snapshots: mitt@3.0.1: {} - mkdist@2.4.1(sass@1.98.0)(typescript@5.9.3)(vue-tsc@3.2.5(typescript@5.9.3))(vue@3.5.30(typescript@5.9.3)): - dependencies: - autoprefixer: 10.4.27(postcss@8.5.8) - citty: 0.1.6 - cssnano: 7.1.3(postcss@8.5.8) - defu: 6.1.4 - esbuild: 0.25.12 - jiti: 1.21.7 - mlly: 1.8.1 - pathe: 2.0.3 - pkg-types: 2.3.0 - postcss: 8.5.8 - postcss-nested: 7.0.2(postcss@8.5.8) - semver: 7.7.4 - tinyglobby: 0.2.15 - optionalDependencies: - sass: 1.98.0 - typescript: 5.9.3 - vue: 3.5.30(typescript@5.9.3) - vue-tsc: 3.2.5(typescript@5.9.3) - mlly@1.8.1: dependencies: acorn: 8.16.0 @@ -19040,43 +18643,6 @@ snapshots: possible-typed-array-names@1.1.0: {} - postcss-calc@10.1.1(postcss@8.5.8): - dependencies: - postcss: 8.5.8 - postcss-selector-parser: 7.1.1 - postcss-value-parser: 4.2.0 - - postcss-colormin@7.0.6(postcss@8.5.8): - dependencies: - browserslist: 4.28.1 - caniuse-api: 3.0.0 - colord: 2.9.3 - postcss: 8.5.8 - postcss-value-parser: 4.2.0 - - postcss-convert-values@7.0.9(postcss@8.5.8): - dependencies: - browserslist: 4.28.1 - postcss: 8.5.8 - postcss-value-parser: 4.2.0 - - postcss-discard-comments@7.0.6(postcss@8.5.8): - dependencies: - postcss: 8.5.8 - postcss-selector-parser: 7.1.1 - - postcss-discard-duplicates@7.0.2(postcss@8.5.8): - dependencies: - postcss: 8.5.8 - - postcss-discard-empty@7.0.1(postcss@8.5.8): - dependencies: - postcss: 8.5.8 - - postcss-discard-overridden@7.0.1(postcss@8.5.8): - dependencies: - postcss: 8.5.8 - postcss-html@1.8.1: dependencies: htmlparser2: 8.0.2 @@ -19094,112 +18660,6 @@ snapshots: postcss-media-query-parser@0.2.3: {} - postcss-merge-longhand@7.0.5(postcss@8.5.8): - dependencies: - postcss: 8.5.8 - postcss-value-parser: 4.2.0 - stylehacks: 7.0.8(postcss@8.5.8) - - postcss-merge-rules@7.0.8(postcss@8.5.8): - dependencies: - browserslist: 4.28.1 - caniuse-api: 3.0.0 - cssnano-utils: 5.0.1(postcss@8.5.8) - postcss: 8.5.8 - postcss-selector-parser: 7.1.1 - - postcss-minify-font-values@7.0.1(postcss@8.5.8): - dependencies: - postcss: 8.5.8 - postcss-value-parser: 4.2.0 - - postcss-minify-gradients@7.0.1(postcss@8.5.8): - dependencies: - colord: 2.9.3 - cssnano-utils: 5.0.1(postcss@8.5.8) - postcss: 8.5.8 - postcss-value-parser: 4.2.0 - - postcss-minify-params@7.0.6(postcss@8.5.8): - dependencies: - browserslist: 4.28.1 - cssnano-utils: 5.0.1(postcss@8.5.8) - postcss: 8.5.8 - postcss-value-parser: 4.2.0 - - postcss-minify-selectors@7.0.6(postcss@8.5.8): - dependencies: - cssesc: 3.0.0 - postcss: 8.5.8 - postcss-selector-parser: 7.1.1 - - postcss-nested@7.0.2(postcss@8.5.8): - dependencies: - postcss: 8.5.8 - postcss-selector-parser: 7.1.1 - - postcss-normalize-charset@7.0.1(postcss@8.5.8): - dependencies: - postcss: 8.5.8 - - postcss-normalize-display-values@7.0.1(postcss@8.5.8): - dependencies: - postcss: 8.5.8 - postcss-value-parser: 4.2.0 - - postcss-normalize-positions@7.0.1(postcss@8.5.8): - dependencies: - postcss: 8.5.8 - postcss-value-parser: 4.2.0 - - postcss-normalize-repeat-style@7.0.1(postcss@8.5.8): - dependencies: - postcss: 8.5.8 - postcss-value-parser: 4.2.0 - - postcss-normalize-string@7.0.1(postcss@8.5.8): - dependencies: - postcss: 8.5.8 - postcss-value-parser: 4.2.0 - - postcss-normalize-timing-functions@7.0.1(postcss@8.5.8): - dependencies: - postcss: 8.5.8 - postcss-value-parser: 4.2.0 - - postcss-normalize-unicode@7.0.6(postcss@8.5.8): - dependencies: - browserslist: 4.28.1 - postcss: 8.5.8 - postcss-value-parser: 4.2.0 - - postcss-normalize-url@7.0.1(postcss@8.5.8): - dependencies: - postcss: 8.5.8 - postcss-value-parser: 4.2.0 - - postcss-normalize-whitespace@7.0.1(postcss@8.5.8): - dependencies: - postcss: 8.5.8 - postcss-value-parser: 4.2.0 - - postcss-ordered-values@7.0.2(postcss@8.5.8): - dependencies: - cssnano-utils: 5.0.1(postcss@8.5.8) - postcss: 8.5.8 - postcss-value-parser: 4.2.0 - - postcss-reduce-initial@7.0.6(postcss@8.5.8): - dependencies: - browserslist: 4.28.1 - caniuse-api: 3.0.0 - postcss: 8.5.8 - - postcss-reduce-transforms@7.0.1(postcss@8.5.8): - dependencies: - postcss: 8.5.8 - postcss-value-parser: 4.2.0 - postcss-resolve-nested-selector@0.1.6: {} postcss-safe-parser@6.0.0(postcss@8.5.8): @@ -19228,17 +18688,6 @@ snapshots: dependencies: postcss: 8.5.8 - postcss-svgo@7.1.1(postcss@8.5.8): - dependencies: - postcss: 8.5.8 - postcss-value-parser: 4.2.0 - svgo: 4.0.1 - - postcss-unique-selectors@7.0.5(postcss@8.5.8): - dependencies: - postcss: 8.5.8 - postcss-selector-parser: 7.1.1 - postcss-value-parser@4.2.0: {} postcss@8.5.8: @@ -19551,17 +19000,6 @@ snapshots: '@rolldown/binding-win32-arm64-msvc': 1.0.0-rc.9 '@rolldown/binding-win32-x64-msvc': 1.0.0-rc.9 - rollup-plugin-dts@6.4.0(rollup@4.59.0)(typescript@5.9.3): - dependencies: - '@jridgewell/remapping': 2.3.5 - '@jridgewell/sourcemap-codec': 1.5.5 - convert-source-map: 2.0.0 - magic-string: 0.30.21 - rollup: 4.59.0 - typescript: 5.9.3 - optionalDependencies: - '@babel/code-frame': 7.29.0 - rollup-plugin-visualizer@6.0.11(rolldown@1.0.0-rc.9)(rollup@4.59.0): dependencies: open: 8.4.2 @@ -20112,12 +19550,6 @@ snapshots: hey-listen: 1.0.8 tslib: 2.4.0 - stylehacks@7.0.8(postcss@8.5.8): - dependencies: - browserslist: 4.28.1 - postcss: 8.5.8 - postcss-selector-parser: 7.1.1 - stylelint-config-html@1.1.0(postcss-html@1.8.1)(stylelint@17.4.0(typescript@5.9.3)): dependencies: postcss-html: 1.8.1 @@ -20545,40 +19977,6 @@ snapshots: has-symbols: 1.1.0 which-boxed-primitive: 1.1.1 - unbuild@3.6.1(sass@1.98.0)(typescript@5.9.3)(vue-tsc@3.2.5(typescript@5.9.3))(vue@3.5.30(typescript@5.9.3)): - dependencies: - '@rollup/plugin-alias': 5.1.1(rollup@4.59.0) - '@rollup/plugin-commonjs': 28.0.9(rollup@4.59.0) - '@rollup/plugin-json': 6.1.0(rollup@4.59.0) - '@rollup/plugin-node-resolve': 16.0.3(rollup@4.59.0) - '@rollup/plugin-replace': 6.0.3(rollup@4.59.0) - '@rollup/pluginutils': 5.3.0(rollup@4.59.0) - citty: 0.1.6 - consola: 3.4.2 - defu: 6.1.4 - esbuild: 0.25.12 - fix-dts-default-cjs-exports: 1.0.1 - hookable: 5.5.3 - jiti: 2.6.1 - magic-string: 0.30.21 - mkdist: 2.4.1(sass@1.98.0)(typescript@5.9.3)(vue-tsc@3.2.5(typescript@5.9.3))(vue@3.5.30(typescript@5.9.3)) - mlly: 1.8.1 - pathe: 2.0.3 - pkg-types: 2.3.0 - pretty-bytes: 7.1.0 - rollup: 4.59.0 - rollup-plugin-dts: 6.4.0(rollup@4.59.0)(typescript@5.9.3) - scule: 1.3.0 - tinyglobby: 0.2.15 - untyped: 2.0.0 - optionalDependencies: - typescript: 5.9.3 - transitivePeerDependencies: - - sass - - vue - - vue-sfc-transformer - - vue-tsc - unconfig-core@7.5.0: dependencies: '@quansync/fs': 1.0.0 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index b49343790..94cada2e5 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -46,6 +46,7 @@ catalog: '@tailwindcss/vite': ^4.2.1 '@tanstack/vue-query': ^5.92.9 '@tanstack/vue-store': ^0.9.2 + '@tsdown/css': ^0.21.3 '@types/archiver': ^7.0.0 '@types/html-minifier-terser': ^7.0.2 '@types/json-bigint': ^1.0.4 @@ -158,7 +159,6 @@ catalog: turbo: ^2.8.17 tw-animate-css: ^1.4.0 typescript: ^5.9.3 - unbuild: ^3.6.1 unplugin-dts: ^1.0.0-beta.6 unplugin-element-plus: ^0.11.2 unplugin-vue: ^7.1.1 diff --git a/scripts/vsh/src/check-dep/index.ts b/scripts/vsh/src/check-dep/index.ts index 15b2d35c9..bbda58280 100644 --- a/scripts/vsh/src/check-dep/index.ts +++ b/scripts/vsh/src/check-dep/index.ts @@ -11,7 +11,6 @@ const DEFAULT_CONFIG = { 'vite', 'vitest', 'tsdown', - 'unbuild', '@vben/tsconfig', '@vben/vite-config', '@types/*', From 86b636ae5487558fb9a345308ab7fe70f02235c6 Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 22:47:28 +0800 Subject: [PATCH 26/29] fix(@vben/vite-config): externalize node utils dependency --- internal/vite-config/package.json | 2 +- internal/vite-config/tsdown.config.ts | 1 + pnpm-lock.yaml | 6 +++--- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/internal/vite-config/package.json b/internal/vite-config/package.json index 7523d3ee5..1e8ab00d6 100644 --- a/internal/vite-config/package.json +++ b/internal/vite-config/package.json @@ -31,6 +31,7 @@ "@intlify/unplugin-vue-i18n": "catalog:", "@jspm/generator": "catalog:", "@tailwindcss/vite": "catalog:", + "@vben/node-utils": "workspace:*", "archiver": "catalog:", "cheerio": "catalog:", "get-port": "catalog:", @@ -44,7 +45,6 @@ "@pnpm/workspace.read-manifest": "catalog:", "@types/archiver": "catalog:", "@types/html-minifier-terser": "catalog:", - "@vben/node-utils": "workspace:*", "@vitejs/plugin-vue": "catalog:", "@vitejs/plugin-vue-jsx": "catalog:", "dayjs": "catalog:", diff --git a/internal/vite-config/tsdown.config.ts b/internal/vite-config/tsdown.config.ts index 88b76bebc..de7727b06 100644 --- a/internal/vite-config/tsdown.config.ts +++ b/internal/vite-config/tsdown.config.ts @@ -10,6 +10,7 @@ const loadingAssets = ['default-loading-antd.html', 'default-loading.html']; export default defineConfig({ clean: true, deps: { + neverBundle: ['@vben/node-utils'], skipNodeModulesBundle: true, }, dts: { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a7ed8cf43..9f051ca96 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1183,6 +1183,9 @@ importers: '@tailwindcss/vite': specifier: 'catalog:' version: 4.2.1(vite@8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.46.0)(yaml@2.8.2)) + '@vben/node-utils': + specifier: workspace:* + version: link:../node-utils archiver: specifier: 'catalog:' version: 7.0.1 @@ -1217,9 +1220,6 @@ importers: '@types/html-minifier-terser': specifier: 'catalog:' version: 7.0.2 - '@vben/node-utils': - specifier: workspace:* - version: link:../node-utils '@vitejs/plugin-vue': specifier: 'catalog:' version: 6.0.5(vite@8.0.0(@types/node@25.5.0)(esbuild@0.27.4)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.46.0)(yaml@2.8.2))(vue@3.5.30(typescript@5.9.3)) From 5558249cd335c2aa21562daa7f0c6daf734eac45 Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 23:11:41 +0800 Subject: [PATCH 27/29] chore: unbuild --- internal/lint-configs/eslint-config/package.json | 3 +-- internal/lint-configs/oxfmt-config/package.json | 3 +-- internal/lint-configs/oxlint-config/package.json | 1 - internal/node-utils/package.json | 3 +-- internal/vite-config/package.json | 3 +-- packages/@core/base/icons/package.json | 3 +-- packages/@core/base/typings/package.json | 3 +-- packages/@core/composables/package.json | 3 +-- packages/@core/preferences/package.json | 3 +-- packages/@core/ui-kit/form-ui/package.json | 1 - packages/@core/ui-kit/layout-ui/package.json | 1 - packages/@core/ui-kit/menu-ui/package.json | 1 - packages/@core/ui-kit/popup-ui/package.json | 1 - packages/@core/ui-kit/tabs-ui/package.json | 1 - scripts/turbo-run/package.json | 3 +-- scripts/vsh/package.json | 3 +-- 16 files changed, 10 insertions(+), 26 deletions(-) diff --git a/internal/lint-configs/eslint-config/package.json b/internal/lint-configs/eslint-config/package.json index ae64af4cd..c0ce7615f 100644 --- a/internal/lint-configs/eslint-config/package.json +++ b/internal/lint-configs/eslint-config/package.json @@ -12,8 +12,7 @@ "license": "MIT", "type": "module", "scripts": { - "build": "pnpm exec tsdown", - "stub": "pnpm run build" + "stub": "pnpm exec tsdown" }, "files": [ "dist" diff --git a/internal/lint-configs/oxfmt-config/package.json b/internal/lint-configs/oxfmt-config/package.json index 72bf4b9b7..c239c026b 100644 --- a/internal/lint-configs/oxfmt-config/package.json +++ b/internal/lint-configs/oxfmt-config/package.json @@ -12,8 +12,7 @@ "license": "MIT", "type": "module", "scripts": { - "build": "pnpm exec tsdown", - "stub": "pnpm run build" + "stub": "pnpm exec tsdown" }, "files": [ "dist" diff --git a/internal/lint-configs/oxlint-config/package.json b/internal/lint-configs/oxlint-config/package.json index be40ad6c8..bc20762fe 100644 --- a/internal/lint-configs/oxlint-config/package.json +++ b/internal/lint-configs/oxlint-config/package.json @@ -12,7 +12,6 @@ "license": "MIT", "type": "module", "scripts": { - "build": "pnpm exec tsdown", "stub": "pnpm exec tsdown" }, "files": [ diff --git a/internal/node-utils/package.json b/internal/node-utils/package.json index dd868eb8e..35892a118 100644 --- a/internal/node-utils/package.json +++ b/internal/node-utils/package.json @@ -12,8 +12,7 @@ "license": "MIT", "type": "module", "scripts": { - "build": "node ./scripts/build.mjs", - "stub": "pnpm run build" + "stub": "node ./scripts/build.mjs" }, "files": [ "dist" diff --git a/internal/vite-config/package.json b/internal/vite-config/package.json index 1e8ab00d6..b420f14fa 100644 --- a/internal/vite-config/package.json +++ b/internal/vite-config/package.json @@ -12,8 +12,7 @@ "license": "MIT", "type": "module", "scripts": { - "build": "pnpm exec tsdown", - "stub": "pnpm run build" + "stub": "pnpm exec tsdown" }, "files": [ "dist" diff --git a/packages/@core/base/icons/package.json b/packages/@core/base/icons/package.json index efa702b1e..558a5b7ca 100644 --- a/packages/@core/base/icons/package.json +++ b/packages/@core/base/icons/package.json @@ -11,8 +11,7 @@ "license": "MIT", "type": "module", "scripts": { - "build": "pnpm exec tsdown", - "stub": "pnpm run build" + "build": "pnpm exec tsdown" }, "files": [ "dist" diff --git a/packages/@core/base/typings/package.json b/packages/@core/base/typings/package.json index 19c4cd54a..b90f3df25 100644 --- a/packages/@core/base/typings/package.json +++ b/packages/@core/base/typings/package.json @@ -11,8 +11,7 @@ "license": "MIT", "type": "module", "scripts": { - "build": "pnpm exec tsdown", - "stub": "pnpm run build" + "build": "pnpm exec tsdown" }, "files": [ "dist", diff --git a/packages/@core/composables/package.json b/packages/@core/composables/package.json index 2bb19c0af..de58e59ff 100644 --- a/packages/@core/composables/package.json +++ b/packages/@core/composables/package.json @@ -11,8 +11,7 @@ "license": "MIT", "type": "module", "scripts": { - "build": "pnpm exec tsdown", - "stub": "pnpm run build" + "build": "pnpm exec tsdown" }, "files": [ "dist" diff --git a/packages/@core/preferences/package.json b/packages/@core/preferences/package.json index 6f147844d..3a92f9264 100644 --- a/packages/@core/preferences/package.json +++ b/packages/@core/preferences/package.json @@ -11,8 +11,7 @@ "license": "MIT", "type": "module", "scripts": { - "build": "pnpm exec tsdown", - "stub": "pnpm run build" + "#build": "pnpm exec tsdown" }, "files": [ "dist", diff --git a/packages/@core/ui-kit/form-ui/package.json b/packages/@core/ui-kit/form-ui/package.json index 476bc38ab..f79c2a169 100644 --- a/packages/@core/ui-kit/form-ui/package.json +++ b/packages/@core/ui-kit/form-ui/package.json @@ -12,7 +12,6 @@ "type": "module", "scripts": { "build": "pnpm exec tsdown", - "stub": "pnpm run build", "prepublishOnly": "npm run build" }, "files": [ diff --git a/packages/@core/ui-kit/layout-ui/package.json b/packages/@core/ui-kit/layout-ui/package.json index 5b09e282b..efeba2269 100644 --- a/packages/@core/ui-kit/layout-ui/package.json +++ b/packages/@core/ui-kit/layout-ui/package.json @@ -12,7 +12,6 @@ "type": "module", "scripts": { "build": "pnpm exec tsdown", - "stub": "pnpm run build", "prepublishOnly": "npm run build" }, "files": [ diff --git a/packages/@core/ui-kit/menu-ui/package.json b/packages/@core/ui-kit/menu-ui/package.json index 5e2d5dd86..a1dbc1b2a 100644 --- a/packages/@core/ui-kit/menu-ui/package.json +++ b/packages/@core/ui-kit/menu-ui/package.json @@ -12,7 +12,6 @@ "type": "module", "scripts": { "build": "pnpm exec tsdown", - "stub": "pnpm run build", "prepublishOnly": "npm run build" }, "files": [ diff --git a/packages/@core/ui-kit/popup-ui/package.json b/packages/@core/ui-kit/popup-ui/package.json index 951869861..0e384cbf3 100644 --- a/packages/@core/ui-kit/popup-ui/package.json +++ b/packages/@core/ui-kit/popup-ui/package.json @@ -12,7 +12,6 @@ "type": "module", "scripts": { "build": "pnpm exec tsdown", - "stub": "pnpm run build", "prepublishOnly": "npm run build" }, "files": [ diff --git a/packages/@core/ui-kit/tabs-ui/package.json b/packages/@core/ui-kit/tabs-ui/package.json index 260d14d6b..23e37f0a4 100644 --- a/packages/@core/ui-kit/tabs-ui/package.json +++ b/packages/@core/ui-kit/tabs-ui/package.json @@ -12,7 +12,6 @@ "type": "module", "scripts": { "build": "pnpm exec tsdown", - "stub": "pnpm run build", "prepublishOnly": "npm run build" }, "files": [ diff --git a/scripts/turbo-run/package.json b/scripts/turbo-run/package.json index 11943746a..0ab451fdc 100644 --- a/scripts/turbo-run/package.json +++ b/scripts/turbo-run/package.json @@ -5,8 +5,7 @@ "license": "MIT", "type": "module", "scripts": { - "build": "pnpm exec tsdown", - "stub": "pnpm run build" + "stub": "pnpm exec tsdown" }, "files": [ "dist" diff --git a/scripts/vsh/package.json b/scripts/vsh/package.json index dfe64b055..a973bd5ae 100644 --- a/scripts/vsh/package.json +++ b/scripts/vsh/package.json @@ -5,8 +5,7 @@ "license": "MIT", "type": "module", "scripts": { - "build": "pnpm exec tsdown", - "stub": "pnpm run build" + "stub": "pnpm exec tsdown" }, "files": [ "dist" From 32db4cbd113897eff36824a1402e50c828824eca Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Sun, 15 Mar 2026 23:11:59 +0800 Subject: [PATCH 28/29] fix: build warn --- packages/@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/packages/@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue b/packages/@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue index f4f7ffa47..9dc784334 100644 --- a/packages/@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue +++ b/packages/@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue @@ -448,8 +448,9 @@ defineExpose({ } .item { - @apply h-7.5 w-full box-border; - + box-sizing: border-box; + width: 100%; + height: 30px; background-color: #f3f3f3; border: 1px solid #666; } From 9fe875355a2e6f6ec67abd1f615ba38569c5bc9e Mon Sep 17 00:00:00 2001 From: Jin Mao Date: Mon, 16 Mar 2026 20:30:27 +0800 Subject: [PATCH 29/29] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E6=9E=84?= =?UTF-8?q?=E5=BB=BA=E8=84=9A=E6=9C=AC=E4=B8=AD=E7=9A=84=E8=BF=9B=E7=A8=8B?= =?UTF-8?q?=E6=89=A7=E8=A1=8C=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 移除平台特定的 pnpm 命令路径检测逻辑 - 统一使用 'pnpm' 命令执行 - 启用 shell 模式以正确处理命令执行 - 确保子进程继承正确的标准输入输出流 --- internal/node-utils/scripts/build.mjs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/internal/node-utils/scripts/build.mjs b/internal/node-utils/scripts/build.mjs index 0b13a14ca..c38b4914c 100644 --- a/internal/node-utils/scripts/build.mjs +++ b/internal/node-utils/scripts/build.mjs @@ -4,7 +4,7 @@ const pnpmCommand = process.env.npm_execpath && process.env.npm_execpath.endsWith('.cjs') ? [process.execPath, process.env.npm_execpath] - : [process.platform === 'win32' ? 'pnpm.cmd' : 'pnpm']; + : ['pnpm']; const steps = [ ['exec', 'tsdown', '--no-dts'], @@ -23,7 +23,7 @@ const steps = [ for (const args of steps) { const [command, ...commandArgs] = pnpmCommand; const result = spawnSync(command, [...commandArgs, ...args], { - shell: false, + shell: true, stdio: 'inherit', });