@faasjs/load 0.0.3-beta.7 → 0.0.3-beta.71
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/dist/index.js +278 -3
- package/dist/index.mjs +298 -11
- package/package.json +5 -6
package/dist/index.js
CHANGED
|
@@ -1,8 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __create = Object.create;
|
|
2
3
|
var __defProp = Object.defineProperty;
|
|
3
4
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
5
|
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
6
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
5
7
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
8
|
+
var __commonJS = (cb, mod) => function __require() {
|
|
9
|
+
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
10
|
+
};
|
|
6
11
|
var __export = (target, all) => {
|
|
7
12
|
for (var name in all)
|
|
8
13
|
__defProp(target, name, { get: all[name], enumerable: true });
|
|
@@ -15,8 +20,272 @@ var __copyProps = (to, from, except, desc) => {
|
|
|
15
20
|
}
|
|
16
21
|
return to;
|
|
17
22
|
};
|
|
23
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
24
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
25
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
26
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
27
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
28
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
29
|
+
mod
|
|
30
|
+
));
|
|
18
31
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
19
32
|
|
|
33
|
+
// ../deep_merge/dist/index.js
|
|
34
|
+
var require_dist = __commonJS({
|
|
35
|
+
"../deep_merge/dist/index.js"(exports, module2) {
|
|
36
|
+
"use strict";
|
|
37
|
+
var __defProp2 = Object.defineProperty;
|
|
38
|
+
var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
|
|
39
|
+
var __getOwnPropNames2 = Object.getOwnPropertyNames;
|
|
40
|
+
var __hasOwnProp2 = Object.prototype.hasOwnProperty;
|
|
41
|
+
var __export2 = (target, all) => {
|
|
42
|
+
for (var name in all)
|
|
43
|
+
__defProp2(target, name, { get: all[name], enumerable: true });
|
|
44
|
+
};
|
|
45
|
+
var __copyProps2 = (to, from, except, desc) => {
|
|
46
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
47
|
+
for (let key of __getOwnPropNames2(from))
|
|
48
|
+
if (!__hasOwnProp2.call(to, key) && key !== except)
|
|
49
|
+
__defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
|
|
50
|
+
}
|
|
51
|
+
return to;
|
|
52
|
+
};
|
|
53
|
+
var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
|
|
54
|
+
var src_exports2 = {};
|
|
55
|
+
__export2(src_exports2, {
|
|
56
|
+
deepMerge: () => deepMerge3
|
|
57
|
+
});
|
|
58
|
+
module2.exports = __toCommonJS2(src_exports2);
|
|
59
|
+
var shouldMerge = function(item) {
|
|
60
|
+
const type = Object.prototype.toString.call(item);
|
|
61
|
+
return type === "[object Object]" || type === "[object Array]";
|
|
62
|
+
};
|
|
63
|
+
function deepMerge3(...sources) {
|
|
64
|
+
let acc = /* @__PURE__ */ Object.create(null);
|
|
65
|
+
for (const source of sources)
|
|
66
|
+
if (source instanceof Array) {
|
|
67
|
+
if (!(acc instanceof Array))
|
|
68
|
+
acc = [];
|
|
69
|
+
acc = [...new Set(source.concat(...acc))];
|
|
70
|
+
} else if (shouldMerge(source))
|
|
71
|
+
for (const [key, value] of Object.entries(source)) {
|
|
72
|
+
let val;
|
|
73
|
+
if (shouldMerge(value))
|
|
74
|
+
val = deepMerge3(acc[key], value);
|
|
75
|
+
else
|
|
76
|
+
val = value;
|
|
77
|
+
acc = {
|
|
78
|
+
...acc,
|
|
79
|
+
[key]: val
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
return acc;
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
|
|
87
|
+
// ../ts-transform/dist/index.js
|
|
88
|
+
var require_dist2 = __commonJS({
|
|
89
|
+
"../ts-transform/dist/index.js"(exports, module2) {
|
|
90
|
+
"use strict";
|
|
91
|
+
var __create2 = Object.create;
|
|
92
|
+
var __defProp2 = Object.defineProperty;
|
|
93
|
+
var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
|
|
94
|
+
var __getOwnPropNames2 = Object.getOwnPropertyNames;
|
|
95
|
+
var __getProtoOf2 = Object.getPrototypeOf;
|
|
96
|
+
var __hasOwnProp2 = Object.prototype.hasOwnProperty;
|
|
97
|
+
var __commonJS2 = (cb, mod) => function __require() {
|
|
98
|
+
return mod || (0, cb[__getOwnPropNames2(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
99
|
+
};
|
|
100
|
+
var __export2 = (target, all) => {
|
|
101
|
+
for (var name in all)
|
|
102
|
+
__defProp2(target, name, { get: all[name], enumerable: true });
|
|
103
|
+
};
|
|
104
|
+
var __copyProps2 = (to, from, except, desc) => {
|
|
105
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
106
|
+
for (let key of __getOwnPropNames2(from))
|
|
107
|
+
if (!__hasOwnProp2.call(to, key) && key !== except)
|
|
108
|
+
__defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
|
|
109
|
+
}
|
|
110
|
+
return to;
|
|
111
|
+
};
|
|
112
|
+
var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
|
|
113
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
114
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
115
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
116
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
117
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
|
|
118
|
+
mod
|
|
119
|
+
));
|
|
120
|
+
var __toCommonJS2 = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
|
|
121
|
+
var require_dist3 = __commonJS2({
|
|
122
|
+
"../deep_merge/dist/index.js"(exports2, module22) {
|
|
123
|
+
"use strict";
|
|
124
|
+
var __defProp22 = Object.defineProperty;
|
|
125
|
+
var __getOwnPropDesc22 = Object.getOwnPropertyDescriptor;
|
|
126
|
+
var __getOwnPropNames22 = Object.getOwnPropertyNames;
|
|
127
|
+
var __hasOwnProp22 = Object.prototype.hasOwnProperty;
|
|
128
|
+
var __export22 = (target, all) => {
|
|
129
|
+
for (var name in all)
|
|
130
|
+
__defProp22(target, name, { get: all[name], enumerable: true });
|
|
131
|
+
};
|
|
132
|
+
var __copyProps22 = (to, from, except, desc) => {
|
|
133
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
134
|
+
for (let key of __getOwnPropNames22(from))
|
|
135
|
+
if (!__hasOwnProp22.call(to, key) && key !== except)
|
|
136
|
+
__defProp22(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc22(from, key)) || desc.enumerable });
|
|
137
|
+
}
|
|
138
|
+
return to;
|
|
139
|
+
};
|
|
140
|
+
var __toCommonJS22 = (mod) => __copyProps22(__defProp22({}, "__esModule", { value: true }), mod);
|
|
141
|
+
var src_exports22 = {};
|
|
142
|
+
__export22(src_exports22, {
|
|
143
|
+
deepMerge: () => deepMerge22
|
|
144
|
+
});
|
|
145
|
+
module22.exports = __toCommonJS22(src_exports22);
|
|
146
|
+
var shouldMerge = function(item) {
|
|
147
|
+
const type = Object.prototype.toString.call(item);
|
|
148
|
+
return type === "[object Object]" || type === "[object Array]";
|
|
149
|
+
};
|
|
150
|
+
function deepMerge22(...sources) {
|
|
151
|
+
let acc = /* @__PURE__ */ Object.create(null);
|
|
152
|
+
for (const source of sources)
|
|
153
|
+
if (source instanceof Array) {
|
|
154
|
+
if (!(acc instanceof Array))
|
|
155
|
+
acc = [];
|
|
156
|
+
acc = [...new Set(source.concat(...acc))];
|
|
157
|
+
} else if (shouldMerge(source))
|
|
158
|
+
for (const [key, value] of Object.entries(source)) {
|
|
159
|
+
let val;
|
|
160
|
+
if (shouldMerge(value))
|
|
161
|
+
val = deepMerge22(acc[key], value);
|
|
162
|
+
else
|
|
163
|
+
val = value;
|
|
164
|
+
acc = {
|
|
165
|
+
...acc,
|
|
166
|
+
[key]: val
|
|
167
|
+
};
|
|
168
|
+
}
|
|
169
|
+
return acc;
|
|
170
|
+
}
|
|
171
|
+
}
|
|
172
|
+
});
|
|
173
|
+
var src_exports2 = {};
|
|
174
|
+
__export2(src_exports2, {
|
|
175
|
+
NodeBuiltinModules: () => NodeBuiltinModules2,
|
|
176
|
+
bundle: () => bundle2,
|
|
177
|
+
transform: () => transform
|
|
178
|
+
});
|
|
179
|
+
module2.exports = __toCommonJS2(src_exports2);
|
|
180
|
+
var import_core = require("@swc/core");
|
|
181
|
+
var import_spack = require("@swc/core/spack");
|
|
182
|
+
var import_fs3 = require("fs");
|
|
183
|
+
var import_path3 = require("path");
|
|
184
|
+
var import_deep_merge3 = __toESM2(require_dist3());
|
|
185
|
+
var NodeBuiltinModules2 = [
|
|
186
|
+
"async_hooks",
|
|
187
|
+
"child_process",
|
|
188
|
+
"cluster",
|
|
189
|
+
"crypto",
|
|
190
|
+
"dns",
|
|
191
|
+
"events",
|
|
192
|
+
"fs",
|
|
193
|
+
"http",
|
|
194
|
+
"http2",
|
|
195
|
+
"https",
|
|
196
|
+
"inspector",
|
|
197
|
+
"net",
|
|
198
|
+
"os",
|
|
199
|
+
"path",
|
|
200
|
+
"perf_hooks",
|
|
201
|
+
"process",
|
|
202
|
+
"querystring",
|
|
203
|
+
"readline",
|
|
204
|
+
"repl",
|
|
205
|
+
"stream",
|
|
206
|
+
"string_decoder",
|
|
207
|
+
"tls",
|
|
208
|
+
"trace_events",
|
|
209
|
+
"tty",
|
|
210
|
+
"dgram",
|
|
211
|
+
"udp4",
|
|
212
|
+
"url",
|
|
213
|
+
"util",
|
|
214
|
+
"v8",
|
|
215
|
+
"vm",
|
|
216
|
+
"wasi",
|
|
217
|
+
"worker_threads",
|
|
218
|
+
"zlib"
|
|
219
|
+
];
|
|
220
|
+
function transform(code, options) {
|
|
221
|
+
var _a;
|
|
222
|
+
if (!options)
|
|
223
|
+
options = {};
|
|
224
|
+
if (!options.root)
|
|
225
|
+
options.root = process.cwd();
|
|
226
|
+
if (!options.target)
|
|
227
|
+
options.target = "es2019";
|
|
228
|
+
const tsconfig = JSON.parse((0, import_fs3.readFileSync)((0, import_path3.join)(options.root, "tsconfig.json")).toString());
|
|
229
|
+
if (!tsconfig.compilerOptions)
|
|
230
|
+
tsconfig.compilerOptions = {};
|
|
231
|
+
tsconfig.compilerOptions.baseUrl = ((_a = tsconfig.compilerOptions.baseUrl) == null ? void 0 : _a.replace(".", options.root)) || options.root;
|
|
232
|
+
if (tsconfig.compilerOptions.paths) {
|
|
233
|
+
for (const key of Object.keys(tsconfig.compilerOptions.paths))
|
|
234
|
+
tsconfig.compilerOptions.paths[key] = tsconfig.compilerOptions.paths[key].map((item) => item.replace(".", tsconfig.compilerOptions.baseUrl));
|
|
235
|
+
} else
|
|
236
|
+
tsconfig.compilerOptions.paths = {};
|
|
237
|
+
return (0, import_core.transformSync)(code, {
|
|
238
|
+
filename: options.filename,
|
|
239
|
+
jsc: (0, import_deep_merge3.deepMerge)({
|
|
240
|
+
parser: {
|
|
241
|
+
syntax: "typescript",
|
|
242
|
+
tsx: true
|
|
243
|
+
},
|
|
244
|
+
target: options.target,
|
|
245
|
+
baseUrl: tsconfig.compilerOptions.baseUrl,
|
|
246
|
+
paths: tsconfig.compilerOptions.paths,
|
|
247
|
+
transform: { react: { runtime: "automatic" } }
|
|
248
|
+
}, options.jsc),
|
|
249
|
+
module: { type: "commonjs" }
|
|
250
|
+
});
|
|
251
|
+
}
|
|
252
|
+
async function bundle2(options) {
|
|
253
|
+
var _a;
|
|
254
|
+
if (!options.root)
|
|
255
|
+
options.root = process.cwd();
|
|
256
|
+
if (!options.jscTarget)
|
|
257
|
+
options.jscTarget = "es2019";
|
|
258
|
+
const tsconfig = JSON.parse((0, import_fs3.readFileSync)((0, import_path3.join)(options.root, "tsconfig.json")).toString());
|
|
259
|
+
if (!tsconfig.compilerOptions)
|
|
260
|
+
tsconfig.compilerOptions = {};
|
|
261
|
+
tsconfig.compilerOptions.baseUrl = ((_a = tsconfig.compilerOptions.baseUrl) == null ? void 0 : _a.replace(".", options.root)) || options.root;
|
|
262
|
+
if (tsconfig.compilerOptions.paths) {
|
|
263
|
+
for (const key of Object.keys(tsconfig.compilerOptions.paths))
|
|
264
|
+
tsconfig.compilerOptions.paths[key] = tsconfig.compilerOptions.paths[key].map((item) => item.replace(".", tsconfig.compilerOptions.baseUrl));
|
|
265
|
+
} else
|
|
266
|
+
tsconfig.compilerOptions.paths = {};
|
|
267
|
+
return (0, import_core.bundle)((0, import_spack.config)((0, import_deep_merge3.deepMerge)({
|
|
268
|
+
mode: "production",
|
|
269
|
+
entry: { index: options.filename },
|
|
270
|
+
module: { type: "commonjs" },
|
|
271
|
+
options: {
|
|
272
|
+
jsc: {
|
|
273
|
+
parser: {
|
|
274
|
+
syntax: "typescript",
|
|
275
|
+
tsx: true
|
|
276
|
+
},
|
|
277
|
+
target: options.jscTarget,
|
|
278
|
+
baseUrl: tsconfig.compilerOptions.baseUrl,
|
|
279
|
+
paths: tsconfig.compilerOptions.paths,
|
|
280
|
+
transform: { react: { runtime: "automatic" } }
|
|
281
|
+
}
|
|
282
|
+
},
|
|
283
|
+
externalModules: NodeBuiltinModules2.concat(options.externalModules || [])
|
|
284
|
+
}, options))).then((res) => res.index);
|
|
285
|
+
}
|
|
286
|
+
}
|
|
287
|
+
});
|
|
288
|
+
|
|
20
289
|
// src/index.ts
|
|
21
290
|
var src_exports = {};
|
|
22
291
|
__export(src_exports, {
|
|
@@ -26,11 +295,17 @@ __export(src_exports, {
|
|
|
26
295
|
module.exports = __toCommonJS(src_exports);
|
|
27
296
|
|
|
28
297
|
// src/load_config.ts
|
|
29
|
-
var import_deep_merge =
|
|
298
|
+
var import_deep_merge = __toESM(require_dist());
|
|
30
299
|
var import_fs = require("fs");
|
|
31
300
|
var import_path = require("path");
|
|
32
301
|
var import_js_yaml = require("js-yaml");
|
|
33
302
|
var Config = class {
|
|
303
|
+
/**
|
|
304
|
+
* 创建配置类,并自动读取配置内容
|
|
305
|
+
*
|
|
306
|
+
* @param root {string} 根目录
|
|
307
|
+
* @param filename {filename} 目标文件,用于读取目录层级
|
|
308
|
+
*/
|
|
34
309
|
constructor(root, filename) {
|
|
35
310
|
this.root = root;
|
|
36
311
|
if (!this.root.endsWith(import_path.sep))
|
|
@@ -73,11 +348,11 @@ function loadConfig(root, filename) {
|
|
|
73
348
|
}
|
|
74
349
|
|
|
75
350
|
// src/load_ts.ts
|
|
76
|
-
var import_deep_merge2 =
|
|
351
|
+
var import_deep_merge2 = __toESM(require_dist());
|
|
77
352
|
var import_fs2 = require("fs");
|
|
78
353
|
var import_rollup = require("rollup/dist/rollup.js");
|
|
79
354
|
var import_path2 = require("path");
|
|
80
|
-
var import_ts_transform =
|
|
355
|
+
var import_ts_transform = __toESM(require_dist2());
|
|
81
356
|
var FaasPackages = [
|
|
82
357
|
"@faasjs/cloud_function",
|
|
83
358
|
"@faasjs/deep_merge",
|
package/dist/index.mjs
CHANGED
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
1
7
|
var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require : typeof Proxy !== "undefined" ? new Proxy(x, {
|
|
2
8
|
get: (a, b) => (typeof require !== "undefined" ? require : a)[b]
|
|
3
9
|
}) : x)(function(x) {
|
|
@@ -5,9 +11,284 @@ var __require = /* @__PURE__ */ ((x) => typeof require !== "undefined" ? require
|
|
|
5
11
|
return require.apply(this, arguments);
|
|
6
12
|
throw new Error('Dynamic require of "' + x + '" is not supported');
|
|
7
13
|
});
|
|
14
|
+
var __commonJS = (cb, mod) => function __require2() {
|
|
15
|
+
return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
16
|
+
};
|
|
17
|
+
var __copyProps = (to, from, except, desc) => {
|
|
18
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
19
|
+
for (let key of __getOwnPropNames(from))
|
|
20
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
21
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
22
|
+
}
|
|
23
|
+
return to;
|
|
24
|
+
};
|
|
25
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
26
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
27
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
28
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
29
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
30
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
31
|
+
mod
|
|
32
|
+
));
|
|
33
|
+
|
|
34
|
+
// ../deep_merge/dist/index.js
|
|
35
|
+
var require_dist = __commonJS({
|
|
36
|
+
"../deep_merge/dist/index.js"(exports, module) {
|
|
37
|
+
"use strict";
|
|
38
|
+
var __defProp2 = Object.defineProperty;
|
|
39
|
+
var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
|
|
40
|
+
var __getOwnPropNames2 = Object.getOwnPropertyNames;
|
|
41
|
+
var __hasOwnProp2 = Object.prototype.hasOwnProperty;
|
|
42
|
+
var __export = (target, all) => {
|
|
43
|
+
for (var name in all)
|
|
44
|
+
__defProp2(target, name, { get: all[name], enumerable: true });
|
|
45
|
+
};
|
|
46
|
+
var __copyProps2 = (to, from, except, desc) => {
|
|
47
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
48
|
+
for (let key of __getOwnPropNames2(from))
|
|
49
|
+
if (!__hasOwnProp2.call(to, key) && key !== except)
|
|
50
|
+
__defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
|
|
51
|
+
}
|
|
52
|
+
return to;
|
|
53
|
+
};
|
|
54
|
+
var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
|
|
55
|
+
var src_exports = {};
|
|
56
|
+
__export(src_exports, {
|
|
57
|
+
deepMerge: () => deepMerge3
|
|
58
|
+
});
|
|
59
|
+
module.exports = __toCommonJS(src_exports);
|
|
60
|
+
var shouldMerge = function(item) {
|
|
61
|
+
const type = Object.prototype.toString.call(item);
|
|
62
|
+
return type === "[object Object]" || type === "[object Array]";
|
|
63
|
+
};
|
|
64
|
+
function deepMerge3(...sources) {
|
|
65
|
+
let acc = /* @__PURE__ */ Object.create(null);
|
|
66
|
+
for (const source of sources)
|
|
67
|
+
if (source instanceof Array) {
|
|
68
|
+
if (!(acc instanceof Array))
|
|
69
|
+
acc = [];
|
|
70
|
+
acc = [...new Set(source.concat(...acc))];
|
|
71
|
+
} else if (shouldMerge(source))
|
|
72
|
+
for (const [key, value] of Object.entries(source)) {
|
|
73
|
+
let val;
|
|
74
|
+
if (shouldMerge(value))
|
|
75
|
+
val = deepMerge3(acc[key], value);
|
|
76
|
+
else
|
|
77
|
+
val = value;
|
|
78
|
+
acc = {
|
|
79
|
+
...acc,
|
|
80
|
+
[key]: val
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
return acc;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
|
|
88
|
+
// ../ts-transform/dist/index.js
|
|
89
|
+
var require_dist2 = __commonJS({
|
|
90
|
+
"../ts-transform/dist/index.js"(exports, module) {
|
|
91
|
+
"use strict";
|
|
92
|
+
var __create2 = Object.create;
|
|
93
|
+
var __defProp2 = Object.defineProperty;
|
|
94
|
+
var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
|
|
95
|
+
var __getOwnPropNames2 = Object.getOwnPropertyNames;
|
|
96
|
+
var __getProtoOf2 = Object.getPrototypeOf;
|
|
97
|
+
var __hasOwnProp2 = Object.prototype.hasOwnProperty;
|
|
98
|
+
var __commonJS2 = (cb, mod) => function __require2() {
|
|
99
|
+
return mod || (0, cb[__getOwnPropNames2(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports;
|
|
100
|
+
};
|
|
101
|
+
var __export = (target, all) => {
|
|
102
|
+
for (var name in all)
|
|
103
|
+
__defProp2(target, name, { get: all[name], enumerable: true });
|
|
104
|
+
};
|
|
105
|
+
var __copyProps2 = (to, from, except, desc) => {
|
|
106
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
107
|
+
for (let key of __getOwnPropNames2(from))
|
|
108
|
+
if (!__hasOwnProp2.call(to, key) && key !== except)
|
|
109
|
+
__defProp2(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc2(from, key)) || desc.enumerable });
|
|
110
|
+
}
|
|
111
|
+
return to;
|
|
112
|
+
};
|
|
113
|
+
var __toESM2 = (mod, isNodeMode, target) => (target = mod != null ? __create2(__getProtoOf2(mod)) : {}, __copyProps2(
|
|
114
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
115
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
116
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
117
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
118
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp2(target, "default", { value: mod, enumerable: true }) : target,
|
|
119
|
+
mod
|
|
120
|
+
));
|
|
121
|
+
var __toCommonJS = (mod) => __copyProps2(__defProp2({}, "__esModule", { value: true }), mod);
|
|
122
|
+
var require_dist3 = __commonJS2({
|
|
123
|
+
"../deep_merge/dist/index.js"(exports2, module2) {
|
|
124
|
+
"use strict";
|
|
125
|
+
var __defProp22 = Object.defineProperty;
|
|
126
|
+
var __getOwnPropDesc22 = Object.getOwnPropertyDescriptor;
|
|
127
|
+
var __getOwnPropNames22 = Object.getOwnPropertyNames;
|
|
128
|
+
var __hasOwnProp22 = Object.prototype.hasOwnProperty;
|
|
129
|
+
var __export2 = (target, all) => {
|
|
130
|
+
for (var name in all)
|
|
131
|
+
__defProp22(target, name, { get: all[name], enumerable: true });
|
|
132
|
+
};
|
|
133
|
+
var __copyProps22 = (to, from, except, desc) => {
|
|
134
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
135
|
+
for (let key of __getOwnPropNames22(from))
|
|
136
|
+
if (!__hasOwnProp22.call(to, key) && key !== except)
|
|
137
|
+
__defProp22(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc22(from, key)) || desc.enumerable });
|
|
138
|
+
}
|
|
139
|
+
return to;
|
|
140
|
+
};
|
|
141
|
+
var __toCommonJS2 = (mod) => __copyProps22(__defProp22({}, "__esModule", { value: true }), mod);
|
|
142
|
+
var src_exports2 = {};
|
|
143
|
+
__export2(src_exports2, {
|
|
144
|
+
deepMerge: () => deepMerge22
|
|
145
|
+
});
|
|
146
|
+
module2.exports = __toCommonJS2(src_exports2);
|
|
147
|
+
var shouldMerge = function(item) {
|
|
148
|
+
const type = Object.prototype.toString.call(item);
|
|
149
|
+
return type === "[object Object]" || type === "[object Array]";
|
|
150
|
+
};
|
|
151
|
+
function deepMerge22(...sources) {
|
|
152
|
+
let acc = /* @__PURE__ */ Object.create(null);
|
|
153
|
+
for (const source of sources)
|
|
154
|
+
if (source instanceof Array) {
|
|
155
|
+
if (!(acc instanceof Array))
|
|
156
|
+
acc = [];
|
|
157
|
+
acc = [...new Set(source.concat(...acc))];
|
|
158
|
+
} else if (shouldMerge(source))
|
|
159
|
+
for (const [key, value] of Object.entries(source)) {
|
|
160
|
+
let val;
|
|
161
|
+
if (shouldMerge(value))
|
|
162
|
+
val = deepMerge22(acc[key], value);
|
|
163
|
+
else
|
|
164
|
+
val = value;
|
|
165
|
+
acc = {
|
|
166
|
+
...acc,
|
|
167
|
+
[key]: val
|
|
168
|
+
};
|
|
169
|
+
}
|
|
170
|
+
return acc;
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
});
|
|
174
|
+
var src_exports = {};
|
|
175
|
+
__export(src_exports, {
|
|
176
|
+
NodeBuiltinModules: () => NodeBuiltinModules2,
|
|
177
|
+
bundle: () => bundle2,
|
|
178
|
+
transform: () => transform
|
|
179
|
+
});
|
|
180
|
+
module.exports = __toCommonJS(src_exports);
|
|
181
|
+
var import_core = __require("@swc/core");
|
|
182
|
+
var import_spack = __require("@swc/core/spack");
|
|
183
|
+
var import_fs3 = __require("fs");
|
|
184
|
+
var import_path3 = __require("path");
|
|
185
|
+
var import_deep_merge3 = __toESM2(require_dist3());
|
|
186
|
+
var NodeBuiltinModules2 = [
|
|
187
|
+
"async_hooks",
|
|
188
|
+
"child_process",
|
|
189
|
+
"cluster",
|
|
190
|
+
"crypto",
|
|
191
|
+
"dns",
|
|
192
|
+
"events",
|
|
193
|
+
"fs",
|
|
194
|
+
"http",
|
|
195
|
+
"http2",
|
|
196
|
+
"https",
|
|
197
|
+
"inspector",
|
|
198
|
+
"net",
|
|
199
|
+
"os",
|
|
200
|
+
"path",
|
|
201
|
+
"perf_hooks",
|
|
202
|
+
"process",
|
|
203
|
+
"querystring",
|
|
204
|
+
"readline",
|
|
205
|
+
"repl",
|
|
206
|
+
"stream",
|
|
207
|
+
"string_decoder",
|
|
208
|
+
"tls",
|
|
209
|
+
"trace_events",
|
|
210
|
+
"tty",
|
|
211
|
+
"dgram",
|
|
212
|
+
"udp4",
|
|
213
|
+
"url",
|
|
214
|
+
"util",
|
|
215
|
+
"v8",
|
|
216
|
+
"vm",
|
|
217
|
+
"wasi",
|
|
218
|
+
"worker_threads",
|
|
219
|
+
"zlib"
|
|
220
|
+
];
|
|
221
|
+
function transform(code, options) {
|
|
222
|
+
var _a;
|
|
223
|
+
if (!options)
|
|
224
|
+
options = {};
|
|
225
|
+
if (!options.root)
|
|
226
|
+
options.root = process.cwd();
|
|
227
|
+
if (!options.target)
|
|
228
|
+
options.target = "es2019";
|
|
229
|
+
const tsconfig = JSON.parse((0, import_fs3.readFileSync)((0, import_path3.join)(options.root, "tsconfig.json")).toString());
|
|
230
|
+
if (!tsconfig.compilerOptions)
|
|
231
|
+
tsconfig.compilerOptions = {};
|
|
232
|
+
tsconfig.compilerOptions.baseUrl = ((_a = tsconfig.compilerOptions.baseUrl) == null ? void 0 : _a.replace(".", options.root)) || options.root;
|
|
233
|
+
if (tsconfig.compilerOptions.paths) {
|
|
234
|
+
for (const key of Object.keys(tsconfig.compilerOptions.paths))
|
|
235
|
+
tsconfig.compilerOptions.paths[key] = tsconfig.compilerOptions.paths[key].map((item) => item.replace(".", tsconfig.compilerOptions.baseUrl));
|
|
236
|
+
} else
|
|
237
|
+
tsconfig.compilerOptions.paths = {};
|
|
238
|
+
return (0, import_core.transformSync)(code, {
|
|
239
|
+
filename: options.filename,
|
|
240
|
+
jsc: (0, import_deep_merge3.deepMerge)({
|
|
241
|
+
parser: {
|
|
242
|
+
syntax: "typescript",
|
|
243
|
+
tsx: true
|
|
244
|
+
},
|
|
245
|
+
target: options.target,
|
|
246
|
+
baseUrl: tsconfig.compilerOptions.baseUrl,
|
|
247
|
+
paths: tsconfig.compilerOptions.paths,
|
|
248
|
+
transform: { react: { runtime: "automatic" } }
|
|
249
|
+
}, options.jsc),
|
|
250
|
+
module: { type: "commonjs" }
|
|
251
|
+
});
|
|
252
|
+
}
|
|
253
|
+
async function bundle2(options) {
|
|
254
|
+
var _a;
|
|
255
|
+
if (!options.root)
|
|
256
|
+
options.root = process.cwd();
|
|
257
|
+
if (!options.jscTarget)
|
|
258
|
+
options.jscTarget = "es2019";
|
|
259
|
+
const tsconfig = JSON.parse((0, import_fs3.readFileSync)((0, import_path3.join)(options.root, "tsconfig.json")).toString());
|
|
260
|
+
if (!tsconfig.compilerOptions)
|
|
261
|
+
tsconfig.compilerOptions = {};
|
|
262
|
+
tsconfig.compilerOptions.baseUrl = ((_a = tsconfig.compilerOptions.baseUrl) == null ? void 0 : _a.replace(".", options.root)) || options.root;
|
|
263
|
+
if (tsconfig.compilerOptions.paths) {
|
|
264
|
+
for (const key of Object.keys(tsconfig.compilerOptions.paths))
|
|
265
|
+
tsconfig.compilerOptions.paths[key] = tsconfig.compilerOptions.paths[key].map((item) => item.replace(".", tsconfig.compilerOptions.baseUrl));
|
|
266
|
+
} else
|
|
267
|
+
tsconfig.compilerOptions.paths = {};
|
|
268
|
+
return (0, import_core.bundle)((0, import_spack.config)((0, import_deep_merge3.deepMerge)({
|
|
269
|
+
mode: "production",
|
|
270
|
+
entry: { index: options.filename },
|
|
271
|
+
module: { type: "commonjs" },
|
|
272
|
+
options: {
|
|
273
|
+
jsc: {
|
|
274
|
+
parser: {
|
|
275
|
+
syntax: "typescript",
|
|
276
|
+
tsx: true
|
|
277
|
+
},
|
|
278
|
+
target: options.jscTarget,
|
|
279
|
+
baseUrl: tsconfig.compilerOptions.baseUrl,
|
|
280
|
+
paths: tsconfig.compilerOptions.paths,
|
|
281
|
+
transform: { react: { runtime: "automatic" } }
|
|
282
|
+
}
|
|
283
|
+
},
|
|
284
|
+
externalModules: NodeBuiltinModules2.concat(options.externalModules || [])
|
|
285
|
+
}, options))).then((res) => res.index);
|
|
286
|
+
}
|
|
287
|
+
}
|
|
288
|
+
});
|
|
8
289
|
|
|
9
290
|
// src/load_config.ts
|
|
10
|
-
|
|
291
|
+
var import_deep_merge = __toESM(require_dist());
|
|
11
292
|
import { existsSync, readFileSync } from "fs";
|
|
12
293
|
import {
|
|
13
294
|
sep,
|
|
@@ -16,6 +297,12 @@ import {
|
|
|
16
297
|
} from "path";
|
|
17
298
|
import { load } from "js-yaml";
|
|
18
299
|
var Config = class {
|
|
300
|
+
/**
|
|
301
|
+
* 创建配置类,并自动读取配置内容
|
|
302
|
+
*
|
|
303
|
+
* @param root {string} 根目录
|
|
304
|
+
* @param filename {filename} 目标文件,用于读取目录层级
|
|
305
|
+
*/
|
|
19
306
|
constructor(root, filename) {
|
|
20
307
|
this.root = root;
|
|
21
308
|
if (!this.root.endsWith(sep))
|
|
@@ -32,11 +319,11 @@ var Config = class {
|
|
|
32
319
|
configs.push(load(readFileSync(faas).toString()));
|
|
33
320
|
return root2;
|
|
34
321
|
});
|
|
35
|
-
this.origin = deepMerge(...configs);
|
|
36
|
-
this.defaults = deepMerge(this.origin.defaults || {});
|
|
322
|
+
this.origin = (0, import_deep_merge.deepMerge)(...configs);
|
|
323
|
+
this.defaults = (0, import_deep_merge.deepMerge)(this.origin.defaults || {});
|
|
37
324
|
for (const key in this.origin) {
|
|
38
325
|
if (key !== "defaults")
|
|
39
|
-
this[key] = deepMerge(this.origin.defaults, this.origin[key]);
|
|
326
|
+
this[key] = (0, import_deep_merge.deepMerge)(this.origin.defaults, this.origin[key]);
|
|
40
327
|
const data = this[key];
|
|
41
328
|
if (data.plugins)
|
|
42
329
|
for (const pluginKey in data.plugins) {
|
|
@@ -48,7 +335,7 @@ var Config = class {
|
|
|
48
335
|
throw Error(`[faas.yaml] missing provider: ${plugin.provider} <${key}/plugins/${pluginKey}>`);
|
|
49
336
|
plugin.provider = data.providers[plugin.provider];
|
|
50
337
|
} else
|
|
51
|
-
plugin.provider = deepMerge(data.providers[plugin.provider], plugin.provider);
|
|
338
|
+
plugin.provider = (0, import_deep_merge.deepMerge)(data.providers[plugin.provider], plugin.provider);
|
|
52
339
|
}
|
|
53
340
|
}
|
|
54
341
|
}
|
|
@@ -58,7 +345,8 @@ function loadConfig(root, filename) {
|
|
|
58
345
|
}
|
|
59
346
|
|
|
60
347
|
// src/load_ts.ts
|
|
61
|
-
|
|
348
|
+
var import_deep_merge2 = __toESM(require_dist());
|
|
349
|
+
var import_ts_transform = __toESM(require_dist2());
|
|
62
350
|
import { readFileSync as readFileSync2, unlinkSync } from "fs";
|
|
63
351
|
import { rollup } from "rollup/dist/rollup.js";
|
|
64
352
|
import {
|
|
@@ -66,7 +354,6 @@ import {
|
|
|
66
354
|
sep as sep2,
|
|
67
355
|
dirname as dirname2
|
|
68
356
|
} from "path";
|
|
69
|
-
import { bundle, NodeBuiltinModules } from "@faasjs/ts-transform";
|
|
70
357
|
var FaasPackages = [
|
|
71
358
|
"@faasjs/cloud_function",
|
|
72
359
|
"@faasjs/deep_merge",
|
|
@@ -134,7 +421,7 @@ function swc(externalModules) {
|
|
|
134
421
|
return {
|
|
135
422
|
name: "swc",
|
|
136
423
|
async transform(code, filename) {
|
|
137
|
-
return bundle({
|
|
424
|
+
return (0, import_ts_transform.bundle)({
|
|
138
425
|
filename,
|
|
139
426
|
externalModules
|
|
140
427
|
});
|
|
@@ -147,7 +434,7 @@ async function loadTs(filename, options = /* @__PURE__ */ Object.create(null)) {
|
|
|
147
434
|
const external = PackageJSON.dependencies ? Object.keys(PackageJSON.dependencies) : [];
|
|
148
435
|
if (options.modules && options.modules.excludes == null)
|
|
149
436
|
options.modules.excludes = [];
|
|
150
|
-
const input =
|
|
437
|
+
const input = (0, import_deep_merge2.deepMerge)({
|
|
151
438
|
input: filename,
|
|
152
439
|
external,
|
|
153
440
|
plugins: [swc(external.concat(FaasPackages))],
|
|
@@ -157,9 +444,9 @@ async function loadTs(filename, options = /* @__PURE__ */ Object.create(null)) {
|
|
|
157
444
|
const dependencies = /* @__PURE__ */ Object.create(null);
|
|
158
445
|
for (const m of ((_a = bundle2.cache) == null ? void 0 : _a.modules) || [])
|
|
159
446
|
for (const d of m.dependencies)
|
|
160
|
-
if (!d.startsWith("/") && !dependencies[d] && !NodeBuiltinModules.includes(d))
|
|
447
|
+
if (!d.startsWith("/") && !dependencies[d] && !import_ts_transform.NodeBuiltinModules.includes(d))
|
|
161
448
|
dependencies[d] = "*";
|
|
162
|
-
const output =
|
|
449
|
+
const output = (0, import_deep_merge2.deepMerge)({
|
|
163
450
|
file: filename + ".tmp.js",
|
|
164
451
|
format: "cjs",
|
|
165
452
|
exports: "auto"
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@faasjs/load",
|
|
3
|
-
"version": "0.0.3-beta.
|
|
3
|
+
"version": "0.0.3-beta.71",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -15,16 +15,15 @@
|
|
|
15
15
|
},
|
|
16
16
|
"funding": "https://github.com/sponsors/faasjs",
|
|
17
17
|
"scripts": {
|
|
18
|
-
"build": "tsup-node src/index.ts --format esm,cjs"
|
|
19
|
-
"build:types": "tsup-node src/index.ts --dts-only"
|
|
18
|
+
"build": "tsup-node src/index.ts --format esm,cjs --dts --clean"
|
|
20
19
|
},
|
|
21
20
|
"files": [
|
|
22
21
|
"dist"
|
|
23
22
|
],
|
|
24
23
|
"dependencies": {
|
|
25
|
-
"@faasjs/deep_merge": "^0.0.3-beta.
|
|
26
|
-
"@faasjs/func": "^0.0.3-beta.
|
|
27
|
-
"@faasjs/ts-transform": "^0.0.3-beta.
|
|
24
|
+
"@faasjs/deep_merge": "^0.0.3-beta.71",
|
|
25
|
+
"@faasjs/func": "^0.0.3-beta.71",
|
|
26
|
+
"@faasjs/ts-transform": "^0.0.3-beta.71",
|
|
28
27
|
"js-yaml": "*",
|
|
29
28
|
"rollup": "*"
|
|
30
29
|
},
|