Skip to content

Commit 32e8d22

Browse files
committed
feat: es5+cjs, es6+esm, umd builds
1 parent 512610b commit 32e8d22

File tree

6 files changed

+144
-19
lines changed

6 files changed

+144
-19
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,5 @@ node_modules
44
coverage
55
dist
66
lib
7+
esm
8+
umd

devtools/dev/package.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"internal": true,
3+
"main": "../../lib/devtools.js",
4+
"module": "../../esm/devtools.js",
5+
"types": "../../lib/devtools/index.d.ts"
6+
}

devtools/index.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,8 @@ if (process.env.NODE_ENV === "production") {
66
VueQueryDevToolsPanel: function () {
77
return null;
88
},
9+
VUE_QUERY_DEVTOOLS_THEME: "",
910
};
1011
} else {
11-
module.exports = require("../lib/devtools-bundle");
12+
module.exports = require("./dev");
1213
}

package-lock.json

Lines changed: 55 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,13 @@
33
"version": "1.0.0",
44
"description": "Hooks for fetching, caching and updating asynchronous data in Vue",
55
"main": "lib/index.js",
6+
"module": "esm/index.js",
7+
"unpkg": "umd/vue-query.min.js",
8+
"types": "lib/index.d.ts",
69
"files": [
710
"/lib",
11+
"/esm",
12+
"/umd",
813
"/devtools"
914
],
1015
"scripts": {
@@ -61,6 +66,7 @@
6166
"rollup": "^2.41.4",
6267
"rollup-plugin-auto-external": "^2.0.0",
6368
"rollup-plugin-postcss": "^4.0.0",
69+
"rollup-plugin-terser": "^7.0.2",
6470
"rollup-plugin-typescript2": "^0.30.0",
6571
"rollup-plugin-vue": "^6.0.0",
6672
"ts-jest": "^26.5.4",

rollup.config.ts

Lines changed: 73 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,43 +1,98 @@
11
import resolve from "@rollup/plugin-node-resolve";
22
import autoExternal from "rollup-plugin-auto-external";
33
import postcss from "rollup-plugin-postcss";
4+
import { terser } from "rollup-plugin-terser";
45
import typescript from "rollup-plugin-typescript2";
56
import vue from "rollup-plugin-vue";
67

7-
const common = {
8-
plugins: [
9-
resolve(),
10-
autoExternal(),
11-
typescript(),
12-
vue({
13-
cssModulesOptions: {
14-
generateScopedName: "[local]___[hash:base64:5]",
15-
},
16-
}),
17-
postcss(),
18-
],
19-
watch: {
20-
include: "src/**",
21-
exclude: ["node_modules/**", "tests"],
8+
const common = (typescriptOptions = {}, additionalPlugins = []) => {
9+
return {
10+
plugins: [
11+
resolve(),
12+
autoExternal(),
13+
typescript(typescriptOptions),
14+
vue(),
15+
postcss(),
16+
...additionalPlugins,
17+
],
18+
watch: {
19+
include: "src/**",
20+
exclude: ["node_modules/**", "tests"],
21+
},
22+
};
23+
};
24+
25+
const es5Override = {
26+
tsconfigOverride: {
27+
compilerOptions: {
28+
target: "es5",
29+
},
2230
},
2331
};
32+
33+
const noTypesOverride = {
34+
tsconfigOverride: {
35+
compilerOptions: {
36+
declaration: false,
37+
},
38+
},
39+
};
40+
2441
export default [
2542
{
2643
input: "src/index.ts",
2744
output: {
2845
dir: "lib",
46+
format: "cjs",
47+
sourcemap: true,
48+
},
49+
...common(es5Override),
50+
},
51+
{
52+
input: "src/devtools/index.ts",
53+
output: {
54+
file: "lib/devtools.js",
55+
format: "cjs",
56+
sourcemap: true,
57+
},
58+
...common(es5Override),
59+
},
60+
{
61+
input: "src/index.ts",
62+
output: {
63+
dir: "esm",
2964
format: "esm",
3065
sourcemap: true,
3166
},
32-
...common,
67+
...common(noTypesOverride),
68+
},
69+
{
70+
input: "src/devtools/index.ts",
71+
output: {
72+
file: "esm/devtools.js",
73+
format: "esm",
74+
sourcemap: true,
75+
},
76+
...common(noTypesOverride),
77+
},
78+
{
79+
input: "src/index.ts",
80+
output: {
81+
name: "VueQuery",
82+
file: "umd/vue-query.min.js",
83+
format: "umd",
84+
sourcemap: true,
85+
},
86+
...common(noTypesOverride, [terser()]),
3387
},
3488
{
3589
input: "src/devtools/index.ts",
3690
output: {
37-
file: "lib/devtools-bundle.js",
91+
name: "VueQueryDevTools",
92+
file: "umd/vue-query-devtools.min.js",
3893
format: "esm",
3994
sourcemap: true,
4095
},
41-
...common,
96+
...common(noTypesOverride, [terser()]),
4297
},
4398
];

0 commit comments

Comments
 (0)