@nocobase/build 1.5.0-alpha.3 → 1.5.0-alpha.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/lib/buildClient.js +26 -134
  2. package/package.json +2 -2
@@ -31,14 +31,15 @@ __export(buildClient_exports, {
31
31
  buildLocale: () => buildLocale
32
32
  });
33
33
  module.exports = __toCommonJS(buildClient_exports);
34
+ var import_plugin_react = __toESM(require("@vitejs/plugin-react"));
34
35
  var import_fast_glob = __toESM(require("fast-glob"));
35
36
  var import_fs_extra = __toESM(require("fs-extra"));
36
37
  var import_path = __toESM(require("path"));
37
38
  var import_tsup = require("tsup");
38
39
  var import_vite = require("vite");
40
+ var import_vite_plugin_lib_inject_css = require("vite-plugin-lib-inject-css");
39
41
  var import_constant = require("./constant");
40
42
  var import_utils = require("./utils");
41
- var import_core = require("@rspack/core");
42
43
  async function buildClient(cwd, userConfig, sourcemap = false, log) {
43
44
  log("build client");
44
45
  const cwdWin = cwd.replaceAll(/\\/g, "/");
@@ -50,147 +51,38 @@ async function buildClient(cwd, userConfig, sourcemap = false, log) {
50
51
  return true;
51
52
  };
52
53
  await buildClientEsm(cwd, userConfig, sourcemap, external, log);
54
+ await buildClientLib(cwd, userConfig, sourcemap, external, log);
53
55
  await buildLocale(cwd, userConfig, log);
54
56
  }
55
57
  function buildClientEsm(cwd, userConfig, sourcemap, external, log) {
56
58
  log("build client esm");
57
59
  const entry = import_path.default.join(cwd, "src/index.ts").replaceAll(/\\/g, "/");
58
60
  const outDir = import_path.default.resolve(cwd, "es");
59
- return (0, import_core.rspack)({
60
- entry: {
61
- index: entry
62
- },
63
- output: {
64
- path: outDir,
65
- library: {
66
- type: "module"
67
- },
68
- clean: true
69
- },
70
- target: ["es2015", "web"],
71
- mode: process.env.NODE_ENV === "production" ? "production" : "development",
72
- optimization: {
73
- minimize: process.env.NODE_ENV === "production",
74
- moduleIds: "deterministic",
75
- sideEffects: true
76
- },
77
- resolve: {
78
- tsConfig: import_path.default.join(process.cwd(), "tsconfig.json"),
79
- extensions: [".js", ".jsx", ".ts", ".tsx", ".json", ".less", ".css"]
80
- },
81
- module: {
82
- rules: [
83
- {
84
- test: /\.less$/,
85
- use: [
86
- { loader: "style-loader" },
87
- { loader: "css-loader" },
88
- { loader: require.resolve("less-loader") },
89
- {
90
- loader: "postcss-loader",
91
- options: {
92
- postcssOptions: {
93
- plugins: {
94
- "postcss-preset-env": {
95
- browsers: ["last 2 versions", "> 1%", "cover 99.5%", "not dead"]
96
- },
97
- autoprefixer: {}
98
- }
99
- }
100
- }
101
- }
102
- ],
103
- type: "javascript/auto"
104
- },
105
- {
106
- test: /\.css$/,
107
- use: [
108
- "style-loader",
109
- "css-loader",
110
- {
111
- loader: "postcss-loader",
112
- options: {
113
- postcssOptions: {
114
- plugins: {
115
- "postcss-preset-env": {
116
- browsers: ["last 2 versions", "> 1%", "cover 99.5%", "not dead"]
117
- },
118
- autoprefixer: {}
119
- }
120
- }
121
- }
122
- }
123
- ],
124
- type: "javascript/auto"
125
- },
126
- {
127
- test: /\.(png|jpe?g|gif)$/i,
128
- type: "asset"
129
- },
130
- {
131
- test: /\.svg$/i,
132
- issuer: /\.[jt]sx?$/,
133
- use: ["@svgr/webpack"]
134
- },
135
- {
136
- test: /\.jsx$/,
137
- exclude: /[\\/]node_modules[\\/]/,
138
- loader: "builtin:swc-loader",
139
- options: {
140
- sourceMap: true,
141
- jsc: {
142
- parser: {
143
- syntax: "ecmascript",
144
- jsx: true
145
- },
146
- target: "es5"
147
- }
148
- }
149
- },
150
- {
151
- test: /\.tsx$/,
152
- exclude: /[\\/]node_modules[\\/]/,
153
- loader: "builtin:swc-loader",
154
- options: {
155
- sourceMap: true,
156
- jsc: {
157
- parser: {
158
- syntax: "typescript",
159
- tsx: true
160
- },
161
- target: "es5"
162
- }
163
- }
61
+ return (0, import_vite.build)(
62
+ userConfig.modifyViteConfig({
63
+ mode: process.env.NODE_ENV || "production",
64
+ define: (0, import_utils.getEnvDefine)(),
65
+ build: {
66
+ minify: process.env.NODE_ENV === "production",
67
+ outDir,
68
+ cssCodeSplit: true,
69
+ emptyOutDir: true,
70
+ sourcemap,
71
+ lib: {
72
+ entry,
73
+ formats: ["es"],
74
+ fileName: "index"
164
75
  },
165
- {
166
- test: /\.ts$/,
167
- exclude: /[\\/]node_modules[\\/]/,
168
- loader: "builtin:swc-loader",
169
- options: {
170
- sourceMap: true,
171
- jsc: {
172
- parser: {
173
- syntax: "typescript"
174
- },
175
- target: "es5"
176
- }
177
- }
178
- }
179
- ]
180
- },
181
- externals: [
182
- function({ request }, callback) {
183
- if (external(request)) {
184
- return callback(null, true);
76
+ target: ["es2015", "edge88", "firefox78", "chrome87", "safari14"],
77
+ rollupOptions: {
78
+ cache: true,
79
+ treeshake: true,
80
+ external
185
81
  }
186
- callback();
187
- }
188
- ],
189
- plugins: [
190
- new import_core.rspack.DefinePlugin((0, import_utils.getEnvDefine)())
191
- ],
192
- stats: "errors-warnings"
193
- });
82
+ },
83
+ plugins: [(0, import_plugin_react.default)(), (0, import_vite_plugin_lib_inject_css.libInjectCss)()]
84
+ })
85
+ );
194
86
  }
195
87
  async function buildClientLib(cwd, userConfig, sourcemap, external, log) {
196
88
  log("build client lib");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nocobase/build",
3
- "version": "1.5.0-alpha.3",
3
+ "version": "1.5.0-alpha.5",
4
4
  "description": "Library build tool based on rollup.",
5
5
  "main": "lib/index.js",
6
6
  "types": "./lib/index.d.ts",
@@ -45,5 +45,5 @@
45
45
  "scripts": {
46
46
  "build": "tsup"
47
47
  },
48
- "gitHead": "5e01d81e7bb07f9a35b271ce903fb0dcd0d83fcf"
48
+ "gitHead": "8d24e8d2c0f3f57ceaa271438fd93db2b4150011"
49
49
  }