bunchee 2.0.2 → 2.1.0

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.
package/README.md CHANGED
@@ -70,15 +70,16 @@ Usage: bunchee [options]
70
70
  Options:
71
71
  -v, --version output the version number
72
72
  -w, --watch watch src files changes
73
- -m, --minify compress output. false by default
73
+ -m, --minify compress output. default: false
74
74
  -o, --output <file> specify output filename
75
- -f, --format <format> specify bundle type: "esm", "cjs", "umd". "esm" by default
75
+ -f, --format <format> type of output (esm, amd, cjs, iife, umd, system), default: esm
76
76
  -e, --external <mod> specify an external dependency
77
77
  -h, --help output usage information
78
- --target <target> js features target: swc target es versions. "es5" by default
79
- --runtime <runtime> build runtime: "nodejs", "browser". "browser" by default
80
- --sourcemap enable sourcemap generation, false by default
78
+ --target <target> js features target: swc target es versions. default: es5
79
+ --runtime <runtime> build runtime (nodejs, browser). default: browser
81
80
  --cwd <cwd> specify current working directory
81
+ --sourcemap enable sourcemap generation, default: false
82
+ --dts determine if need to generate types, default: false
82
83
 
83
84
  Usage:
84
85
  $ bunchee ./src/index.js # if you set main fields in package.json
package/dist/cli.js CHANGED
@@ -1,20 +1,164 @@
1
1
  #!/usr/bin/env node
2
- var tslib = require('tslib');
3
2
  var path = require('path');
4
- require('fs');
5
3
  var arg = require('arg');
4
+ require('fs');
6
5
 
7
6
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
8
7
 
9
8
  var path__default = /*#__PURE__*/_interopDefaultLegacy(path);
10
9
  var arg__default = /*#__PURE__*/_interopDefaultLegacy(arg);
11
10
 
12
- process.cwd();
11
+ function exit(err) {
12
+ logger.error(err);
13
+ process.exit(1);
14
+ }
15
+ var logger = {
16
+ log: function log(arg) {
17
+ console.log(arg);
18
+ },
19
+ warn: function warn(arg) {
20
+ console.log("\x1b[33m" + arg + "\x1b[0m");
21
+ },
22
+ error: function error(arg) {
23
+ console.error("\x1b[31m" + arg + "\x1b[0m");
24
+ }
25
+ };
26
+
27
+ var version = "2.1.0";
13
28
 
29
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
30
+ try {
31
+ var info = gen[key](arg);
32
+ var value = info.value;
33
+ } catch (error) {
34
+ reject(error);
35
+ return;
36
+ }
37
+ if (info.done) {
38
+ resolve(value);
39
+ } else {
40
+ Promise.resolve(value).then(_next, _throw);
41
+ }
42
+ }
43
+ function _asyncToGenerator(fn) {
44
+ return function() {
45
+ var self = this, args = arguments;
46
+ return new Promise(function(resolve, reject) {
47
+ var gen = fn.apply(self, args);
48
+ function _next(value) {
49
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value);
50
+ }
51
+ function _throw(err) {
52
+ asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err);
53
+ }
54
+ _next(undefined);
55
+ });
56
+ };
57
+ }
58
+ var __generator = undefined && undefined.__generator || function(thisArg, body) {
59
+ var f, y, t, g, _ = {
60
+ label: 0,
61
+ sent: function() {
62
+ if (t[0] & 1) throw t[1];
63
+ return t[1];
64
+ },
65
+ trys: [],
66
+ ops: []
67
+ };
68
+ return g = {
69
+ next: verb(0),
70
+ "throw": verb(1),
71
+ "return": verb(2)
72
+ }, typeof Symbol === "function" && (g[Symbol.iterator] = function() {
73
+ return this;
74
+ }), g;
75
+ function verb(n) {
76
+ return function(v) {
77
+ return step([
78
+ n,
79
+ v
80
+ ]);
81
+ };
82
+ }
83
+ function step(op) {
84
+ if (f) throw new TypeError("Generator is already executing.");
85
+ while(_)try {
86
+ if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
87
+ if (y = 0, t) op = [
88
+ op[0] & 2,
89
+ t.value
90
+ ];
91
+ switch(op[0]){
92
+ case 0:
93
+ case 1:
94
+ t = op;
95
+ break;
96
+ case 4:
97
+ _.label++;
98
+ return {
99
+ value: op[1],
100
+ done: false
101
+ };
102
+ case 5:
103
+ _.label++;
104
+ y = op[1];
105
+ op = [
106
+ 0
107
+ ];
108
+ continue;
109
+ case 7:
110
+ op = _.ops.pop();
111
+ _.trys.pop();
112
+ continue;
113
+ default:
114
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) {
115
+ _ = 0;
116
+ continue;
117
+ }
118
+ if (op[0] === 3 && (!t || op[1] > t[0] && op[1] < t[3])) {
119
+ _.label = op[1];
120
+ break;
121
+ }
122
+ if (op[0] === 6 && _.label < t[1]) {
123
+ _.label = t[1];
124
+ t = op;
125
+ break;
126
+ }
127
+ if (t && _.label < t[2]) {
128
+ _.label = t[2];
129
+ _.ops.push(op);
130
+ break;
131
+ }
132
+ if (t[2]) _.ops.pop();
133
+ _.trys.pop();
134
+ continue;
135
+ }
136
+ op = body.call(thisArg, _);
137
+ } catch (e) {
138
+ op = [
139
+ 6,
140
+ e
141
+ ];
142
+ y = 0;
143
+ } finally{
144
+ f = t = 0;
145
+ }
146
+ if (op[0] & 5) throw op[1];
147
+ return {
148
+ value: op[0] ? op[1] : void 0,
149
+ done: true
150
+ };
151
+ }
152
+ };
153
+ var helpMessage = "\nUsage: bunchee [options]\n\nOptions:\n -v, --version output the version number\n -w, --watch watch src files changes\n -m, --minify compress output. default: false\n -o, --output <file> specify output filename\n -f, --format <format> type of output (esm, amd, cjs, iife, umd, system), default: esm\n -e, --external <mod> specify an external dependency\n -h, --help output usage information\n --target <target> js features target: swc target es versions. default: es5\n --runtime <runtime> build runtime (nodejs, browser). default: browser\n --cwd <cwd> specify current working directory\n --sourcemap enable sourcemap generation, default: false\n --dts determine if need to generate types, default: false\n";
154
+ function help() {
155
+ logger.log(helpMessage);
156
+ }
14
157
  function parseCliArgs(argv) {
15
158
  var args;
16
159
  args = arg__default["default"]({
17
160
  "--cwd": String,
161
+ "--dts": Boolean,
18
162
  "--output": String,
19
163
  "--format": String,
20
164
  "--watch": Boolean,
@@ -47,6 +191,7 @@ function parseCliArgs(argv) {
47
191
  minify: args["--minify"],
48
192
  sourcemap: !!args["--sourcemap"],
49
193
  cwd: args["--cwd"],
194
+ dts: !!args["--dts"],
50
195
  help: args["--help"],
51
196
  version: args["--version"],
52
197
  runtime: args["--runtime"],
@@ -55,72 +200,24 @@ function parseCliArgs(argv) {
55
200
  };
56
201
  return parsedArgs;
57
202
  }
58
- var logger = {
59
- log: function log() {
60
- var args = [];
61
- for(var _i = 0; _i < arguments.length; _i++){
62
- args[_i] = arguments[_i];
63
- }
64
- console.log.apply(console, args);
65
- },
66
- warn: function warn() {
67
- var args = [];
68
- for(var _i = 0; _i < arguments.length; _i++){
69
- args[_i] = arguments[_i];
70
- }
71
- console.log.apply(console, tslib.__spreadArray(tslib.__spreadArray([
72
- "\x1b[33m"
73
- ], args, false), [
74
- "\x1b[0m"
75
- ], false));
76
- },
77
- error: function error() {
78
- var args = [];
79
- for(var _i = 0; _i < arguments.length; _i++){
80
- args[_i] = arguments[_i];
81
- }
82
- console.error.apply(console, tslib.__spreadArray(tslib.__spreadArray([
83
- "\x1b[31m"
84
- ], args, false), [
85
- "\x1b[0m"
86
- ], false));
87
- }
88
- };
89
-
90
- var version = "2.0.2";
91
-
92
- var helpMessage = '\nUsage: bunchee [options]\n\nOptions:\n -v, --version output the version number\n -w, --watch watch src files changes\n -m, --minify compress output. false by default\n -o, --output <file> specify output filename\n -f, --format <format> specify bundle type: "esm", "cjs", "umd". "esm" by default\n -e, --external <mod> specify an external dependency\n --target <target> js features target: swc target es versions. "es5" by default\n --runtime <runtime> build runtime: "nodejs", "browser". "browser" by default\n --sourcemap enable sourcemap generation, false by default\n --cwd <cwd> specify current working directory\n -h, --help output usage information\n';
93
- function help() {
94
- console.log(helpMessage);
95
- }
96
- function exit(err) {
97
- logger.error(err);
98
- process.exit(1);
99
- }
100
203
  function run(args) {
101
- return tslib.__awaiter(this, void 0, void 0, function() {
102
- var source, format, watch, minify, sourcemap, target, runtime, cwd, file, outputConfig, entry, bundle, timeStart, timeEnd, err_1, duration;
103
- return tslib.__generator(this, function(_a) {
104
- switch(_a.label){
204
+ return _run.apply(this, arguments);
205
+ }
206
+ function _run() {
207
+ _run = _asyncToGenerator(function(args) {
208
+ var source, format, watch, minify, sourcemap, target, runtime, dts, cwd, file, cliArgs, _tmp, entry, bundle, timeStart, timeEnd, err, duration;
209
+ return __generator(this, function(_state) {
210
+ switch(_state.label){
105
211
  case 0:
106
- source = args.source, format = args.format, watch = args.watch, minify = args.minify, sourcemap = args.sourcemap, target = args.target, runtime = args.runtime;
212
+ source = args.source, format = args.format, watch = args.watch, minify = args.minify, sourcemap = args.sourcemap, target = args.target, runtime = args.runtime, dts = args.dts;
107
213
  cwd = args.cwd || process.cwd();
108
- file = args.file ? path__default["default"].resolve(cwd, args.file) : args.file;
109
- outputConfig = {
110
- file: file,
111
- format: format,
112
- cwd: cwd,
113
- target: target,
114
- runtime: runtime,
115
- external: args.external || [],
116
- watch: !!watch,
117
- minify: !!minify,
118
- sourcemap: sourcemap === false ? false : true
119
- };
214
+ file = args.file ? path__default["default"].resolve(cwd, args.file) : undefined;
215
+ _tmp = {};
216
+ cliArgs = (_tmp.dts = dts, _tmp.file = file, _tmp.format = format, _tmp.cwd = cwd, _tmp.target = target, _tmp.runtime = runtime, _tmp.external = args.external || [], _tmp.watch = !!watch, _tmp.minify = !!minify, _tmp.sourcemap = sourcemap === false ? false : true, _tmp);
120
217
  if (args.version) {
121
218
  return [
122
219
  2,
123
- console.log(version)
220
+ logger.log(version)
124
221
  ];
125
222
  }
126
223
  if (args.help) {
@@ -132,9 +229,9 @@ function run(args) {
132
229
  entry = source ? path__default["default"].resolve(cwd, source) : "";
133
230
  bundle = require("./lib").bundle;
134
231
  timeStart = Date.now();
135
- _a.label = 1;
232
+ _state.label = 1;
136
233
  case 1:
137
- _a.trys.push([
234
+ _state.trys.push([
138
235
  1,
139
236
  3,
140
237
  ,
@@ -142,29 +239,29 @@ function run(args) {
142
239
  ]);
143
240
  return [
144
241
  4,
145
- bundle(entry, outputConfig)
242
+ bundle(entry, cliArgs)
146
243
  ];
147
244
  case 2:
148
- _a.sent();
245
+ _state.sent();
149
246
  timeEnd = Date.now();
150
247
  return [
151
248
  3,
152
249
  4
153
250
  ];
154
251
  case 3:
155
- err_1 = _a.sent();
156
- if (err_1.name === "NOT_EXISTED") {
252
+ err = _state.sent();
253
+ if (err.name === "NOT_EXISTED") {
157
254
  help();
158
255
  return [
159
256
  2,
160
- exit(err_1)
257
+ exit(err)
161
258
  ];
162
259
  }
163
- throw err_1;
260
+ throw err;
164
261
  case 4:
165
262
  duration = timeEnd - timeStart;
166
263
  if (!watch) {
167
- logger.log("Finished in ".concat(duration, " ms"));
264
+ logger.log("Finished in " + duration + " ms");
168
265
  }
169
266
  return [
170
267
  2
@@ -172,12 +269,16 @@ function run(args) {
172
269
  }
173
270
  });
174
271
  });
272
+ return _run.apply(this, arguments);
175
273
  }
176
274
  function main() {
177
- return tslib.__awaiter(this, void 0, void 0, function() {
275
+ return _main.apply(this, arguments);
276
+ }
277
+ function _main() {
278
+ _main = _asyncToGenerator(function() {
178
279
  var params, error;
179
- return tslib.__generator(this, function(_a) {
180
- switch(_a.label){
280
+ return __generator(this, function(_state) {
281
+ switch(_state.label){
181
282
  case 0:
182
283
  try {
183
284
  params = parseCliArgs(process.argv.slice(2));
@@ -196,12 +297,13 @@ function main() {
196
297
  run(params)
197
298
  ];
198
299
  case 1:
199
- _a.sent();
300
+ _state.sent();
200
301
  return [
201
302
  2
202
303
  ];
203
304
  }
204
305
  });
205
306
  });
307
+ return _main.apply(this, arguments);
206
308
  }
207
309
  main().catch(exit);