Skip to content

Commit

Permalink
fix(build): ensure correct typing for node esm (#3209)
Browse files Browse the repository at this point in the history
Co-authored-by: Anthony Fu <anthonyfu117@hotmail.com>
  • Loading branch information
xiaoxiangmoe and antfu committed Jul 30, 2023
1 parent a32ae73 commit e755653
Show file tree
Hide file tree
Showing 17 changed files with 35 additions and 55 deletions.
3 changes: 1 addition & 2 deletions packages/components/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@
"sideEffects": false,
"exports": {
".": {
"types": "./index.d.ts",
"require": "./index.cjs",
"import": "./index.mjs"
},
Expand All @@ -31,7 +30,7 @@
"module": "./index.mjs",
"unpkg": "./index.iife.min.js",
"jsdelivr": "./index.iife.min.js",
"types": "./index.d.ts",
"types": "./index.d.cts",
"dependencies": {
"@vueuse/core": "workspace:*",
"@vueuse/shared": "workspace:*",
Expand Down
1 change: 1 addition & 0 deletions packages/core/metadata.d.cts
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export * from '@vueuse/metadata'
1 change: 1 addition & 0 deletions packages/core/metadata.d.mts
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
export * from '@vueuse/metadata'
4 changes: 1 addition & 3 deletions packages/core/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,13 +22,11 @@
"sideEffects": false,
"exports": {
".": {
"types": "./index.d.ts",
"require": "./index.cjs",
"import": "./index.mjs"
},
"./*": "./*",
"./metadata": {
"types": "./metadata.d.ts",
"require": "./metadata.cjs",
"import": "./metadata.mjs"
}
Expand All @@ -37,7 +35,7 @@
"module": "./index.mjs",
"unpkg": "./index.iife.min.js",
"jsdelivr": "./index.iife.min.js",
"types": "./index.d.ts",
"types": "./index.d.cts",
"dependencies": {
"@types/web-bluetooth": "^0.0.17",
"@vueuse/metadata": "workspace:*",
Expand Down
3 changes: 1 addition & 2 deletions packages/electron/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -24,15 +24,14 @@
"sideEffects": false,
"exports": {
".": {
"types": "./index.d.ts",
"require": "./index.cjs",
"import": "./index.mjs"
},
"./*": "./*"
},
"main": "./index.cjs",
"module": "./index.mjs",
"types": "./index.d.ts",
"types": "./index.d.cts",
"peerDependencies": {
"electron": ">=9.0.0"
},
Expand Down
6 changes: 1 addition & 5 deletions packages/firebase/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -24,23 +24,19 @@
"sideEffects": false,
"exports": {
".": {
"types": "./index.d.ts",
"require": "./index.cjs",
"import": "./index.mjs"
},
"./*": "./*",
"./useAuth": {
"types": "./useAuth.d.ts",
"require": "./useAuth.cjs",
"import": "./useAuth.mjs"
},
"./useFirestore": {
"types": "./useFirestore.d.ts",
"require": "./useFirestore.cjs",
"import": "./useFirestore.mjs"
},
"./useRTDB": {
"types": "./useRTDB.d.ts",
"require": "./useRTDB.cjs",
"import": "./useRTDB.mjs"
}
Expand All @@ -49,7 +45,7 @@
"module": "./index.mjs",
"unpkg": "./index.iife.min.js",
"jsdelivr": "./index.iife.min.js",
"types": "./index.d.ts",
"types": "./index.d.cts",
"peerDependencies": {
"firebase": ">=9.0.0"
},
Expand Down
18 changes: 1 addition & 17 deletions packages/integrations/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,83 +22,67 @@
"sideEffects": false,
"exports": {
".": {
"types": "./index.d.ts",
"require": "./index.cjs",
"import": "./index.mjs"
},
"./*": "./*",
"./useAsyncValidator": {
"types": "./useAsyncValidator.d.ts",
"require": "./useAsyncValidator.cjs",
"import": "./useAsyncValidator.mjs"
},
"./useAxios": {
"types": "./useAxios.d.ts",
"require": "./useAxios.cjs",
"import": "./useAxios.mjs"
},
"./useCookies": {
"types": "./useCookies.d.ts",
"require": "./useCookies.cjs",
"import": "./useCookies.mjs"
},
"./useDrauu": {
"types": "./useDrauu.d.ts",
"require": "./useDrauu.cjs",
"import": "./useDrauu.mjs"
},
"./useFocusTrap": {
"types": "./useFocusTrap.d.ts",
"require": "./useFocusTrap.cjs",
"import": "./useFocusTrap.mjs"
},
"./useFocusTrap/component": {
"types": "./useFocusTrap/component.d.ts",
"require": "./useFocusTrap/component.cjs",
"import": "./useFocusTrap/component.mjs"
},
"./useFuse": {
"types": "./useFuse.d.ts",
"require": "./useFuse.cjs",
"import": "./useFuse.mjs"
},
"./useJwt": {
"types": "./useJwt.d.ts",
"require": "./useJwt.cjs",
"import": "./useJwt.mjs"
},
"./useNProgress": {
"types": "./useNProgress.d.ts",
"require": "./useNProgress.cjs",
"import": "./useNProgress.mjs"
},
"./useQRCode": {
"types": "./useQRCode.d.ts",
"require": "./useQRCode.cjs",
"import": "./useQRCode.mjs"
},
"./useChangeCase": {
"types": "./useChangeCase.d.ts",
"require": "./useChangeCase.cjs",
"import": "./useChangeCase.mjs"
},
"./useAsyncValidator/component": {
"types": "./useAsyncValidator/component.d.ts",
"require": "./useAsyncValidator/component.cjs",
"import": "./useAsyncValidator/component.mjs"
},
"./useIDBKeyval": {
"types": "./useIDBKeyval.d.ts",
"require": "./useIDBKeyval.cjs",
"import": "./useIDBKeyval.mjs"
},
"./useSortable": {
"types": "./useSortable.d.ts",
"require": "./useSortable.cjs",
"import": "./useSortable.mjs"
},
"./useSortable/component": {
"types": "./useSortable/component.d.ts",
"require": "./useSortable/component.cjs",
"import": "./useSortable/component.mjs"
}
Expand All @@ -107,7 +91,7 @@
"module": "./index.mjs",
"unpkg": "./index.iife.min.js",
"jsdelivr": "./index.iife.min.js",
"types": "./index.d.ts",
"types": "./index.d.cts",
"peerDependencies": {
"async-validator": "*",
"axios": "*",
Expand Down
3 changes: 1 addition & 2 deletions packages/math/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@
"sideEffects": false,
"exports": {
".": {
"types": "./index.d.ts",
"require": "./index.cjs",
"import": "./index.mjs"
},
Expand All @@ -33,7 +32,7 @@
"module": "./index.mjs",
"unpkg": "./index.iife.min.js",
"jsdelivr": "./index.iife.min.js",
"types": "./index.d.ts",
"types": "./index.d.cts",
"dependencies": {
"@vueuse/shared": "workspace:*",
"vue-demi": ">=0.14.5"
Expand Down
3 changes: 1 addition & 2 deletions packages/metadata/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,15 +21,14 @@
"sideEffects": false,
"exports": {
".": {
"types": "./index.d.ts",
"require": "./index.cjs",
"import": "./index.mjs"
},
"./*": "./*"
},
"main": "./index.cjs",
"module": "./index.mjs",
"types": "./index.d.ts",
"types": "./index.d.cts",
"files": [
"index.*"
],
Expand Down
3 changes: 1 addition & 2 deletions packages/nuxt/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -24,15 +24,14 @@
"sideEffects": false,
"exports": {
".": {
"types": "./index.d.ts",
"require": "./index.cjs",
"import": "./index.mjs"
},
"./*": "./*"
},
"main": "./index.cjs",
"module": "./index.mjs",
"types": "./index.d.ts",
"types": "./index.d.cts",
"peerDependencies": {
"nuxt": "^3.0.0"
},
Expand Down
3 changes: 1 addition & 2 deletions packages/router/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,6 @@
"sideEffects": false,
"exports": {
".": {
"types": "./index.d.ts",
"require": "./index.cjs",
"import": "./index.mjs"
},
Expand All @@ -33,7 +32,7 @@
"module": "./index.mjs",
"unpkg": "./index.iife.min.js",
"jsdelivr": "./index.iife.min.js",
"types": "./index.d.ts",
"types": "./index.d.cts",
"peerDependencies": {
"vue-router": ">=4.0.0-rc.1"
},
Expand Down
3 changes: 1 addition & 2 deletions packages/rxjs/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,6 @@
"sideEffects": false,
"exports": {
".": {
"types": "./index.d.ts",
"require": "./index.cjs",
"import": "./index.mjs"
},
Expand All @@ -34,7 +33,7 @@
"module": "./index.mjs",
"unpkg": "./index.iife.min.js",
"jsdelivr": "./index.iife.min.js",
"types": "./index.d.ts",
"types": "./index.d.cts",
"peerDependencies": {
"rxjs": ">=6.0.0"
},
Expand Down
3 changes: 1 addition & 2 deletions packages/shared/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,6 @@
"sideEffects": false,
"exports": {
".": {
"types": "./index.d.ts",
"require": "./index.cjs",
"import": "./index.mjs"
},
Expand All @@ -31,7 +30,7 @@
"module": "./index.mjs",
"unpkg": "./index.iife.min.js",
"jsdelivr": "./index.iife.min.js",
"types": "./index.d.ts",
"types": "./index.d.cts",
"dependencies": {
"vue-demi": ">=0.14.5"
}
Expand Down
2 changes: 2 additions & 0 deletions scripts/build.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,8 @@ const FILES_COPY_LOCAL = [
'*.cjs',
'*.mjs',
'*.d.ts',
'*.d.cts',
'*.d.mts',
]

assert(process.cwd() !== __dirname)
Expand Down
9 changes: 8 additions & 1 deletion scripts/fix-types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,14 @@ import fg from 'fast-glob'
import fs from 'fs-extra'

export async function fixTypes() {
const files = await fg(['types/**/*.d.ts', 'packages/*/dist/*.d.ts'], {
const files = await fg([
'types/**/*.d.ts',
'types/**/*.d.cts',
'types/**/*.d.mts',
'packages/*/dist/*.d.ts',
'packages/*/dist/*.d.cts',
'packages/*/dist/*.d.mts',
], {
onlyFiles: true,
})

Expand Down
18 changes: 10 additions & 8 deletions scripts/rollup.config.ts
Original file line number Diff line number Diff line change
Expand Up @@ -129,10 +129,11 @@ for (const { globals, name, external, submodules, iife, build, cjs, mjs, dts, ta
if (dts !== false) {
configs.push({
input,
output: {
file: `packages/${name}/dist/${fn}.d.ts`,
format: 'es',
},
output: [
{ file: `packages/${name}/dist/${fn}.d.cts` },
{ file: `packages/${name}/dist/${fn}.d.mts` },
{ file: `packages/${name}/dist/${fn}.d.ts` }, // for node10 compatibility
],
plugins: [
pluginDts,
],
Expand Down Expand Up @@ -168,10 +169,11 @@ for (const { globals, name, external, submodules, iife, build, cjs, mjs, dts, ta

configs.push({
input: `packages/${name}/${fn}/component.ts`,
output: {
file: `packages/${name}/dist/${fn}/component.d.ts`,
format: 'es',
},
output: [
{ file: `packages/${name}/dist/${fn}/component.d.cts` },
{ file: `packages/${name}/dist/${fn}/component.d.mts` },
{ file: `packages/${name}/dist/${fn}/component.d.ts` }, // for node10 compatibility
],
plugins: [
pluginDts,
],
Expand Down
7 changes: 2 additions & 5 deletions scripts/utils.ts
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ export const DIR_SRC = resolve(__dirname, '../packages')
const DIR_TYPES = resolve(__dirname, '../types/packages')

export async function getTypeDefinition(pkg: string, name: string): Promise<string | undefined> {
const typingFilepath = join(DIR_TYPES, `${pkg}/${name}/index.d.ts`)
const typingFilepath = join(DIR_TYPES, `${pkg}/${name}/index.d.mts`)

if (!fs.existsSync(typingFilepath))
return
Expand Down Expand Up @@ -242,7 +242,7 @@ export async function updatePackageJSON(indexes: PackageIndexes) {
directory: `packages/${name}`,
}
packageJSON.main = './index.cjs'
packageJSON.types = './index.d.ts'
packageJSON.types = './index.d.cts'
packageJSON.module = './index.mjs'
if (iife !== false) {
packageJSON.unpkg = './index.iife.min.js'
Expand All @@ -252,7 +252,6 @@ export async function updatePackageJSON(indexes: PackageIndexes) {
'.': {
import: './index.mjs',
require: './index.cjs',
types: './index.d.ts',
},
'./*': './*',
...packageJSON.exports,
Expand All @@ -263,13 +262,11 @@ export async function updatePackageJSON(indexes: PackageIndexes) {
.filter(i => i.package === name)
.forEach((i) => {
packageJSON.exports[`./${i.name}`] = {
types: `./${i.name}.d.ts`,
require: `./${i.name}.cjs`,
import: `./${i.name}.mjs`,
}
if (i.component) {
packageJSON.exports[`./${i.name}/component`] = {
types: `./${i.name}/component.d.ts`,
require: `./${i.name}/component.cjs`,
import: `./${i.name}/component.mjs`,
}
Expand Down

0 comments on commit e755653

Please sign in to comment.