Skip to content

Commit c15a9ba

Browse files
authored
feat!: move to ESM first with dual esm/cjs package exports (#720)
* feat!: move to ESM first with dual esm/cjs package exports * docs: update readme for webpack, vue-cli, rspack and esbuild * chore: include only code snippets for the latest version
1 parent 97c8d97 commit c15a9ba

File tree

3 files changed

+40
-55
lines changed

3 files changed

+40
-55
lines changed

README.md

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ export default {
7474
module.exports = {
7575
/* ... */
7676
plugins: [
77-
require('unplugin-vue-components/webpack')({ /* options */ }),
77+
require('unplugin-vue-components/webpack').default({ /* options */ }),
7878
],
7979
}
8080
```
@@ -89,7 +89,7 @@ module.exports = {
8989
module.exports = {
9090
/* ... */
9191
plugins: [
92-
require('unplugin-vue-components/rspack')({ /* options */ }),
92+
require('unplugin-vue-components/rspack').default({ /* options */ }),
9393
],
9494
}
9595
```
@@ -109,9 +109,22 @@ You might not need this plugin for Nuxt. Use [`@nuxt/components`](https://github
109109
```ts
110110
// vue.config.js
111111
module.exports = {
112+
/* ... */
113+
plugins: [
114+
require('unplugin-vue-components/webpack').default({ /* options */ }),
115+
],
116+
}
117+
```
118+
119+
You can also rename the Vue configuration file to `vue.config.mjs` and use static import syntax (you should use latest `@vue/cli-service ^5.0.8`):
120+
```ts
121+
// vue.config.mjs
122+
import Components from 'unplugin-vue-components/webpack'
123+
124+
export default {
112125
configureWebpack: {
113126
plugins: [
114-
require('unplugin-vue-components/webpack')({ /* options */ }),
127+
Components({ /* options */ }),
115128
],
116129
},
117130
}
@@ -125,11 +138,12 @@ module.exports = {
125138
```ts
126139
// esbuild.config.js
127140
import { build } from 'esbuild'
141+
import Components from 'unplugin-vue-components/esbuild'
128142

129143
build({
130144
/* ... */
131145
plugins: [
132-
require('unplugin-vue-components/esbuild')({
146+
Components({
133147
/* options */
134148
}),
135149
],

package.json

Lines changed: 22 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
{
22
"name": "unplugin-vue-components",
3+
"type": "module",
34
"version": "0.25.4",
45
"packageManager": "pnpm@8.7.5",
56
"description": "Components auto importing for Vue",
@@ -14,54 +15,45 @@
1415
"bugs": "https://github.com/unplugin/unplugin-vue-components/issues",
1516
"exports": {
1617
".": {
17-
"types": "./dist/index.d.ts",
18-
"import": "./dist/index.mjs",
19-
"require": "./dist/index.js"
18+
"import": "./dist/index.js",
19+
"require": "./dist/index.cjs"
2020
},
2121
"./nuxt": {
22-
"types": "./dist/nuxt.d.ts",
23-
"import": "./dist/nuxt.mjs",
24-
"require": "./dist/nuxt.js"
22+
"import": "./dist/nuxt.js",
23+
"require": "./dist/nuxt.cjs"
2524
},
2625
"./resolvers": {
27-
"types": "./dist/resolvers.d.ts",
28-
"import": "./dist/resolvers.mjs",
29-
"require": "./dist/resolvers.js"
26+
"import": "./dist/resolvers.js",
27+
"require": "./dist/resolvers.cjs"
3028
},
3129
"./rollup": {
32-
"types": "./dist/rollup.d.ts",
33-
"import": "./dist/rollup.mjs",
34-
"require": "./dist/rollup.js"
30+
"import": "./dist/rollup.js",
31+
"require": "./dist/rollup.cjs"
3532
},
3633
"./types": {
37-
"types": "./dist/types.d.ts",
38-
"import": "./dist/types.mjs",
39-
"require": "./dist/types.js"
34+
"import": "./dist/types.js",
35+
"require": "./dist/types.cjs"
4036
},
4137
"./vite": {
42-
"types": "./dist/vite.d.ts",
43-
"import": "./dist/vite.mjs",
44-
"require": "./dist/vite.js"
38+
"import": "./dist/vite.js",
39+
"require": "./dist/vite.cjs"
4540
},
4641
"./webpack": {
47-
"types": "./dist/webpack.d.ts",
48-
"import": "./dist/webpack.mjs",
49-
"require": "./dist/webpack.js"
42+
"import": "./dist/webpack.js",
43+
"require": "./dist/webpack.cjs"
5044
},
5145
"./rspack": {
52-
"types": "./dist/rspack.d.ts",
53-
"import": "./dist/rspack.mjs",
54-
"require": "./dist/rspack.js"
46+
"import": "./dist/rspack.js",
47+
"require": "./dist/rspack.cjs"
5548
},
5649
"./esbuild": {
57-
"types": "./dist/esbuild.d.ts",
58-
"import": "./dist/esbuild.mjs",
59-
"require": "./dist/esbuild.js"
50+
"import": "./dist/esbuild.js",
51+
"require": "./dist/esbuild.cjs"
6052
},
6153
"./*": "./*"
6254
},
63-
"main": "dist/index.js",
64-
"module": "dist/index.mjs",
55+
"main": "dist/index.cjs",
56+
"module": "dist/index.js",
6557
"types": "index.d.ts",
6658
"typesVersions": {
6759
"*": {
@@ -77,7 +69,7 @@
7769
"node": ">=14"
7870
},
7971
"scripts": {
80-
"build": "tsup && esno scripts/postbuild.ts",
72+
"build": "tsup",
8173
"dev": "tsup --watch src",
8274
"example:build": "npm -C examples/vite-vue3 run build",
8375
"example:dev": "npm -C examples/vite-vue3 run dev",

scripts/postbuild.ts

Lines changed: 0 additions & 21 deletions
This file was deleted.

0 commit comments

Comments
 (0)