@sanity/pkg-utils 1.7.1 → 1.7.2
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/{__resolveBuildContext-49ce07ba.cjs → __resolveBuildContext-9b0aa9f9.cjs} +214 -102
- package/dist/__resolveBuildContext-9b0aa9f9.cjs.map +1 -0
- package/dist/{_build-9e9eb450.cjs → _build-6e7deb31.cjs} +82 -36
- package/dist/_build-6e7deb31.cjs.map +1 -0
- package/dist/{_buildAction-38c3d2ed.cjs → _buildAction-d8841b41.cjs} +35 -4
- package/dist/_buildAction-d8841b41.cjs.map +1 -0
- package/dist/{_check-4ce1387d.cjs → _check-04a1f749.cjs} +112 -51
- package/dist/_check-04a1f749.cjs.map +1 -0
- package/dist/{_checkAction-2704266e.cjs → _checkAction-09426a13.cjs} +17 -3
- package/dist/_checkAction-09426a13.cjs.map +1 -0
- package/dist/{_index-0e8b664d.cjs → _index-46cab21c.cjs} +331 -202
- package/dist/_index-46cab21c.cjs.map +1 -0
- package/dist/_watch-cf9c717f.cjs +264 -0
- package/dist/_watch-cf9c717f.cjs.map +1 -0
- package/dist/{_watchAction-df30594b.cjs → _watchAction-5941527f.cjs} +38 -4
- package/dist/_watchAction-5941527f.cjs.map +1 -0
- package/dist/cli.cjs +24 -9
- package/dist/cli.cjs.map +1 -1
- package/dist/index.cjs +47 -6
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +726 -457
- package/dist/index.js.map +1 -1
- package/package.json +10 -4
- package/src/node/_core/config/_loadConfig.ts +5 -0
- package/src/node/_resolveBuildTasks.ts +1 -3
- package/src/node/_resolveWatchTasks.ts +1 -3
- package/src/node/_tasks/rollup/_resolveRollupConfig.ts +26 -3
- package/src/node/build.ts +0 -1
- package/dist/__resolveBuildContext-49ce07ba.cjs.map +0 -1
- package/dist/_build-9e9eb450.cjs.map +0 -1
- package/dist/_buildAction-38c3d2ed.cjs.map +0 -1
- package/dist/_check-4ce1387d.cjs.map +0 -1
- package/dist/_checkAction-2704266e.cjs.map +0 -1
- package/dist/_index-0e8b664d.cjs.map +0 -1
- package/dist/_watch-fca55d1f.cjs +0 -219
- package/dist/_watch-fca55d1f.cjs.map +0 -1
- package/dist/_watchAction-df30594b.cjs.map +0 -1
- package/src/node/_resolveEsTarget.ts +0 -39
|
@@ -1,32 +1,57 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
const _excluded = ["_path"];
|
|
4
|
+
|
|
5
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
6
|
+
|
|
7
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
8
|
+
|
|
9
|
+
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
10
|
+
|
|
11
|
+
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
12
|
+
|
|
13
|
+
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
14
|
+
|
|
3
15
|
var path = require('path');
|
|
16
|
+
|
|
4
17
|
var node = require('esbuild-register/dist/node');
|
|
18
|
+
|
|
5
19
|
var findConfig = require('find-config');
|
|
20
|
+
|
|
6
21
|
var pkgUp = require('pkg-up');
|
|
22
|
+
|
|
7
23
|
var chalk = require('chalk');
|
|
24
|
+
|
|
8
25
|
var zod = require('zod');
|
|
26
|
+
|
|
9
27
|
var fs = require('fs/promises');
|
|
28
|
+
|
|
10
29
|
var ts = require('typescript');
|
|
30
|
+
|
|
11
31
|
var browserslist = require('browserslist');
|
|
12
32
|
|
|
13
|
-
function _interopDefaultLegacy
|
|
33
|
+
function _interopDefaultLegacy(e) {
|
|
34
|
+
return e && typeof e === 'object' && 'default' in e ? e : {
|
|
35
|
+
'default': e
|
|
36
|
+
};
|
|
37
|
+
}
|
|
14
38
|
|
|
15
39
|
var path__default = /*#__PURE__*/_interopDefaultLegacy(path);
|
|
40
|
+
|
|
16
41
|
var findConfig__default = /*#__PURE__*/_interopDefaultLegacy(findConfig);
|
|
42
|
+
|
|
17
43
|
var pkgUp__default = /*#__PURE__*/_interopDefaultLegacy(pkgUp);
|
|
44
|
+
|
|
18
45
|
var chalk__default = /*#__PURE__*/_interopDefaultLegacy(chalk);
|
|
46
|
+
|
|
19
47
|
var fs__default = /*#__PURE__*/_interopDefaultLegacy(fs);
|
|
48
|
+
|
|
20
49
|
var ts__default = /*#__PURE__*/_interopDefaultLegacy(ts);
|
|
50
|
+
|
|
21
51
|
var browserslist__default = /*#__PURE__*/_interopDefaultLegacy(browserslist);
|
|
22
52
|
|
|
23
53
|
const _DEFAULTS = {
|
|
24
|
-
browserslist: [
|
|
25
|
-
"> 0.2% and supports es6-module and supports es6-module-dynamic-import",
|
|
26
|
-
"not dead",
|
|
27
|
-
"not IE 11",
|
|
28
|
-
"maintained node versions"
|
|
29
|
-
]
|
|
54
|
+
browserslist: ["> 0.2% and supports es6-module and supports es6-module-dynamic-import", "not dead", "not IE 11", "maintained node versions"]
|
|
30
55
|
};
|
|
31
56
|
|
|
32
57
|
function _isRecord(value) {
|
|
@@ -34,40 +59,68 @@ function _isRecord(value) {
|
|
|
34
59
|
}
|
|
35
60
|
|
|
36
61
|
async function _loadConfig(options) {
|
|
37
|
-
const {
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
62
|
+
const {
|
|
63
|
+
cwd
|
|
64
|
+
} = options;
|
|
65
|
+
const pkgPath = await pkgUp__default["default"]({
|
|
66
|
+
cwd
|
|
67
|
+
});
|
|
68
|
+
if (!pkgPath) return void 0;
|
|
41
69
|
const root = path__default["default"].dirname(pkgPath);
|
|
70
|
+
|
|
42
71
|
const configFile = _findConfigFile(root);
|
|
72
|
+
|
|
43
73
|
if (!configFile) {
|
|
44
74
|
return void 0;
|
|
45
75
|
}
|
|
76
|
+
|
|
77
|
+
if (!configFile.path.startsWith(cwd)) {
|
|
78
|
+
return void 0;
|
|
79
|
+
}
|
|
80
|
+
|
|
46
81
|
try {
|
|
47
|
-
const {
|
|
82
|
+
const {
|
|
83
|
+
unregister
|
|
84
|
+
} = configFile.transform ? node.register({
|
|
85
|
+
extensions: [".js", ".ts"]
|
|
86
|
+
}) : {
|
|
87
|
+
unregister: () => void 0
|
|
88
|
+
};
|
|
89
|
+
|
|
48
90
|
const mod = require(configFile.path);
|
|
91
|
+
|
|
49
92
|
unregister();
|
|
50
93
|
return (mod == null ? void 0 : mod.default) || mod || void 0;
|
|
51
94
|
} catch (_) {
|
|
52
95
|
return void 0;
|
|
53
96
|
}
|
|
54
97
|
}
|
|
98
|
+
|
|
55
99
|
function _findConfigFile(cwd) {
|
|
56
|
-
const ts = findConfig__default["default"]("package.config.ts", {
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
100
|
+
const ts = findConfig__default["default"]("package.config.ts", {
|
|
101
|
+
cwd
|
|
102
|
+
});
|
|
103
|
+
if (ts) return {
|
|
104
|
+
path: ts,
|
|
105
|
+
transform: true
|
|
106
|
+
};
|
|
107
|
+
const cjs = findConfig__default["default"]("package.config.cjs", {
|
|
108
|
+
cwd
|
|
109
|
+
});
|
|
110
|
+
if (cjs) return {
|
|
111
|
+
path: cjs,
|
|
112
|
+
transform: false
|
|
113
|
+
};
|
|
62
114
|
return null;
|
|
63
115
|
}
|
|
64
116
|
|
|
65
117
|
function _resolveConfigProperty(prop, initialValue) {
|
|
66
|
-
if (!prop)
|
|
67
|
-
|
|
118
|
+
if (!prop) return initialValue;
|
|
119
|
+
|
|
68
120
|
if (typeof prop === "function") {
|
|
69
121
|
return prop(initialValue);
|
|
70
122
|
}
|
|
123
|
+
|
|
71
124
|
return prop;
|
|
72
125
|
}
|
|
73
126
|
|
|
@@ -84,36 +137,32 @@ const pkgSchema = zod.z.object({
|
|
|
84
137
|
browser: zod.z.optional(zod.z.record(zod.z.string())),
|
|
85
138
|
module: zod.z.optional(zod.z.string()),
|
|
86
139
|
types: zod.z.optional(zod.z.string()),
|
|
87
|
-
exports: zod.z.optional(
|
|
88
|
-
zod.z.
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
})
|
|
103
|
-
),
|
|
104
|
-
require: zod.z.optional(zod.z.string()),
|
|
105
|
-
import: zod.z.optional(zod.z.string()),
|
|
106
|
-
default: zod.z.string()
|
|
107
|
-
})
|
|
108
|
-
)
|
|
109
|
-
),
|
|
140
|
+
exports: zod.z.optional(zod.z.record(zod.z.object({
|
|
141
|
+
types: zod.z.optional(zod.z.string()),
|
|
142
|
+
source: zod.z.string(),
|
|
143
|
+
browser: zod.z.optional(zod.z.object({
|
|
144
|
+
require: zod.z.optional(zod.z.string()),
|
|
145
|
+
import: zod.z.optional(zod.z.string())
|
|
146
|
+
})),
|
|
147
|
+
node: zod.z.optional(zod.z.object({
|
|
148
|
+
require: zod.z.optional(zod.z.string()),
|
|
149
|
+
import: zod.z.optional(zod.z.string())
|
|
150
|
+
})),
|
|
151
|
+
require: zod.z.optional(zod.z.string()),
|
|
152
|
+
import: zod.z.optional(zod.z.string()),
|
|
153
|
+
default: zod.z.string()
|
|
154
|
+
}))),
|
|
110
155
|
browserslist: zod.z.optional(zod.z.array(zod.z.string()))
|
|
111
156
|
});
|
|
157
|
+
|
|
112
158
|
async function _loadPkg(options) {
|
|
113
|
-
const {
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
159
|
+
const {
|
|
160
|
+
cwd
|
|
161
|
+
} = options;
|
|
162
|
+
const pkgPath = await pkgUp__default["default"]({
|
|
163
|
+
cwd
|
|
164
|
+
});
|
|
165
|
+
if (!pkgPath) throw new Error("no package.json found");
|
|
117
166
|
const buf = await fs__default["default"].readFile(pkgPath);
|
|
118
167
|
return pkgSchema.parse(JSON.parse(buf.toString()));
|
|
119
168
|
}
|
|
@@ -125,22 +174,21 @@ async function _loadPkgWithReporting(options) {
|
|
|
125
174
|
if (err instanceof zod.ZodError) {
|
|
126
175
|
for (const issue of err.issues) {
|
|
127
176
|
if (issue.code === "invalid_type") {
|
|
128
|
-
console.log(
|
|
129
|
-
`${chalk__default["default"].red("invalid type")} in ./package.json at ${chalk__default["default"].magenta(
|
|
130
|
-
`\`${issue.path.join("")}\``
|
|
131
|
-
)} (expected ${issue.expected}, received ${issue.received})`
|
|
132
|
-
);
|
|
177
|
+
console.log("".concat(chalk__default["default"].red("invalid type"), " in ./package.json at ").concat(chalk__default["default"].magenta("`".concat(issue.path.join(""), "`")), " (expected ").concat(issue.expected, ", received ").concat(issue.received, ")"));
|
|
133
178
|
}
|
|
134
179
|
}
|
|
135
180
|
} else {
|
|
136
181
|
console.error(err);
|
|
137
182
|
}
|
|
183
|
+
|
|
138
184
|
process.exit(1);
|
|
139
185
|
}
|
|
140
186
|
}
|
|
141
187
|
|
|
142
188
|
function _parseExports(options) {
|
|
143
|
-
const {
|
|
189
|
+
const {
|
|
190
|
+
pkg
|
|
191
|
+
} = options;
|
|
144
192
|
const rootExport = {
|
|
145
193
|
_exported: true,
|
|
146
194
|
_path: ".",
|
|
@@ -155,17 +203,18 @@ function _parseExports(options) {
|
|
|
155
203
|
default: pkg.module || pkg.main || "./index.js"
|
|
156
204
|
};
|
|
157
205
|
const extraExports = [];
|
|
206
|
+
|
|
158
207
|
if (pkg.exports) {
|
|
159
208
|
for (const [exportPath, exportEntry] of Object.entries(pkg.exports)) {
|
|
160
209
|
if (_isRecord(exportEntry)) {
|
|
161
210
|
if (exportPath === ".") {
|
|
162
211
|
Object.assign(rootExport, exportEntry);
|
|
163
212
|
} else {
|
|
164
|
-
const extraExport = {
|
|
213
|
+
const extraExport = _objectSpread({
|
|
165
214
|
_exported: true,
|
|
166
|
-
_path: exportPath
|
|
167
|
-
|
|
168
|
-
|
|
215
|
+
_path: exportPath
|
|
216
|
+
}, exportEntry);
|
|
217
|
+
|
|
169
218
|
extraExports.push(extraExport);
|
|
170
219
|
}
|
|
171
220
|
} else {
|
|
@@ -173,15 +222,21 @@ function _parseExports(options) {
|
|
|
173
222
|
}
|
|
174
223
|
}
|
|
175
224
|
}
|
|
225
|
+
|
|
176
226
|
return [rootExport, ...extraExports];
|
|
177
227
|
}
|
|
178
228
|
|
|
179
229
|
async function _loadTSConfig(options) {
|
|
180
|
-
const {
|
|
230
|
+
const {
|
|
231
|
+
cwd,
|
|
232
|
+
tsconfigPath
|
|
233
|
+
} = options;
|
|
181
234
|
const configPath = ts__default["default"].findConfigFile(cwd, ts__default["default"].sys.fileExists, tsconfigPath);
|
|
235
|
+
|
|
182
236
|
if (!configPath) {
|
|
183
|
-
throw new Error(
|
|
237
|
+
throw new Error("could not find a valid '".concat(tsconfigPath, "'"));
|
|
184
238
|
}
|
|
239
|
+
|
|
185
240
|
const configFile = ts__default["default"].readConfigFile(configPath, ts__default["default"].sys.readFile);
|
|
186
241
|
return ts__default["default"].parseJsonConfigFileContent(configFile.config, ts__default["default"].sys, cwd);
|
|
187
242
|
}
|
|
@@ -191,29 +246,33 @@ function _sortAsNumber(a, b) {
|
|
|
191
246
|
const bVersion = Number(b);
|
|
192
247
|
return aVersion - bVersion;
|
|
193
248
|
}
|
|
249
|
+
|
|
194
250
|
function _resolveBrowserslistVersions(query) {
|
|
195
251
|
const result = browserslist__default["default"](query);
|
|
196
|
-
const entries = result.map(
|
|
252
|
+
const entries = result.map(key => {
|
|
197
253
|
const [name, version] = key.split(" ");
|
|
198
|
-
return {
|
|
254
|
+
return {
|
|
255
|
+
name,
|
|
256
|
+
version: version.split("-")[0].split(".")[0]
|
|
257
|
+
};
|
|
199
258
|
});
|
|
200
|
-
const andChr = entries.filter(
|
|
201
|
-
const andFf = entries.filter(
|
|
202
|
-
const chrome = entries.filter(
|
|
203
|
-
const edge = entries.filter(
|
|
204
|
-
const ff = entries.filter(
|
|
205
|
-
const iosSaf = entries.filter(
|
|
206
|
-
const saf = entries.filter(
|
|
207
|
-
const opera = entries.filter(
|
|
208
|
-
const node = entries.filter(
|
|
259
|
+
const andChr = entries.filter(b => b.name === "and_chr");
|
|
260
|
+
const andFf = entries.filter(b => b.name === "and_ff");
|
|
261
|
+
const chrome = entries.filter(b => b.name === "chrome");
|
|
262
|
+
const edge = entries.filter(b => b.name === "edge");
|
|
263
|
+
const ff = entries.filter(b => b.name === "firefox");
|
|
264
|
+
const iosSaf = entries.filter(b => b.name === "ios_saf");
|
|
265
|
+
const saf = entries.filter(b => b.name === "safari");
|
|
266
|
+
const opera = entries.filter(b => b.name === "opera");
|
|
267
|
+
const node = entries.filter(b => b.name === "node");
|
|
209
268
|
const versions = {
|
|
210
|
-
chrome: andChr.concat(chrome).map(
|
|
211
|
-
ff: andFf.concat(ff).map(
|
|
212
|
-
edge: edge.map(
|
|
213
|
-
iosSaf: iosSaf.map(
|
|
214
|
-
saf: saf.map(
|
|
215
|
-
opera: opera.map(
|
|
216
|
-
node: node.map(
|
|
269
|
+
chrome: andChr.concat(chrome).map(b => b.version),
|
|
270
|
+
ff: andFf.concat(ff).map(b => b.version),
|
|
271
|
+
edge: edge.map(b => b.version),
|
|
272
|
+
iosSaf: iosSaf.map(b => b.version),
|
|
273
|
+
saf: saf.map(b => b.version),
|
|
274
|
+
opera: opera.map(b => b.version),
|
|
275
|
+
node: node.map(b => b.version)
|
|
217
276
|
};
|
|
218
277
|
versions.chrome.sort(_sortAsNumber);
|
|
219
278
|
versions.ff.sort(_sortAsNumber);
|
|
@@ -227,71 +286,108 @@ function _resolveBrowserslistVersions(query) {
|
|
|
227
286
|
|
|
228
287
|
function _resolveBrowserTarget(versions) {
|
|
229
288
|
const target = [];
|
|
289
|
+
|
|
230
290
|
if (versions.chrome.length) {
|
|
231
|
-
target.push(
|
|
291
|
+
target.push("chrome".concat(versions.chrome[0]));
|
|
232
292
|
}
|
|
293
|
+
|
|
233
294
|
if (versions.ff.length) {
|
|
234
|
-
target.push(
|
|
295
|
+
target.push("firefox".concat(versions.ff[0]));
|
|
235
296
|
}
|
|
297
|
+
|
|
236
298
|
if (versions.edge.length) {
|
|
237
|
-
target.push(
|
|
299
|
+
target.push("edge".concat(versions.edge[0]));
|
|
238
300
|
}
|
|
301
|
+
|
|
239
302
|
if (versions.iosSaf.length) {
|
|
240
|
-
target.push(
|
|
303
|
+
target.push("ios".concat(versions.iosSaf[0]));
|
|
241
304
|
}
|
|
305
|
+
|
|
242
306
|
if (versions.saf.length) {
|
|
243
|
-
target.push(
|
|
307
|
+
target.push("safari".concat(versions.saf[0]));
|
|
244
308
|
}
|
|
309
|
+
|
|
245
310
|
if (versions.opera.length) {
|
|
246
|
-
target.push(
|
|
311
|
+
target.push("opera".concat(versions.opera[0]));
|
|
247
312
|
}
|
|
313
|
+
|
|
248
314
|
if (target.length === 0) {
|
|
249
315
|
return void 0;
|
|
250
316
|
}
|
|
317
|
+
|
|
251
318
|
return target;
|
|
252
319
|
}
|
|
253
320
|
|
|
254
321
|
function _resolveNodeTarget(versions) {
|
|
255
322
|
const target = [];
|
|
323
|
+
|
|
256
324
|
if (versions.node.length) {
|
|
257
|
-
target.push(
|
|
325
|
+
target.push("node".concat(versions.node[0]));
|
|
258
326
|
}
|
|
327
|
+
|
|
259
328
|
if (target.length === 0) {
|
|
260
329
|
return void 0;
|
|
261
330
|
}
|
|
331
|
+
|
|
262
332
|
return target;
|
|
263
333
|
}
|
|
264
334
|
|
|
265
335
|
async function _resolveBuildContext(options) {
|
|
266
|
-
var
|
|
267
|
-
|
|
268
|
-
const
|
|
336
|
+
var _ref;
|
|
337
|
+
|
|
338
|
+
const {
|
|
339
|
+
config,
|
|
340
|
+
cwd,
|
|
341
|
+
pkg,
|
|
342
|
+
tsconfig: tsconfigPath
|
|
343
|
+
} = options;
|
|
344
|
+
const tsconfig = await _loadTSConfig({
|
|
345
|
+
cwd,
|
|
346
|
+
tsconfigPath
|
|
347
|
+
});
|
|
348
|
+
|
|
269
349
|
const targetVersions = _resolveBrowserslistVersions(pkg.browserslist || _DEFAULTS.browserslist);
|
|
350
|
+
|
|
270
351
|
const srcPath = path__default["default"].resolve(cwd, (config == null ? void 0 : config.src) || "src");
|
|
271
352
|
const distPath = path__default["default"].resolve(cwd, (config == null ? void 0 : config.dist) || "dist");
|
|
353
|
+
|
|
272
354
|
const nodeTarget = _resolveNodeTarget(targetVersions);
|
|
355
|
+
|
|
273
356
|
const webTarget = _resolveBrowserTarget(targetVersions);
|
|
357
|
+
|
|
274
358
|
if (!nodeTarget) {
|
|
275
359
|
throw new Error("no matching `node` target");
|
|
276
360
|
}
|
|
361
|
+
|
|
277
362
|
if (!webTarget) {
|
|
278
363
|
throw new Error("no matching `web` target");
|
|
279
364
|
}
|
|
365
|
+
|
|
280
366
|
const target = {
|
|
281
367
|
"*": webTarget.concat(nodeTarget),
|
|
282
368
|
browser: webTarget,
|
|
283
369
|
node: nodeTarget
|
|
284
370
|
};
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
371
|
+
|
|
372
|
+
const parsedExports = _parseExports({
|
|
373
|
+
pkg
|
|
374
|
+
}).reduce((acc, x) => {
|
|
375
|
+
const {
|
|
376
|
+
_path: exportPath
|
|
377
|
+
} = x,
|
|
378
|
+
exportEntry = _objectWithoutProperties(x, _excluded);
|
|
379
|
+
|
|
380
|
+
return _objectSpread(_objectSpread({}, acc), {}, {
|
|
381
|
+
[exportPath]: exportEntry
|
|
382
|
+
});
|
|
288
383
|
}, {});
|
|
384
|
+
|
|
289
385
|
const exports = _resolveConfigProperty(config == null ? void 0 : config.exports, parsedExports);
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
];
|
|
386
|
+
|
|
387
|
+
const parsedExternal = [...(pkg.dependencies ? Object.keys(pkg.dependencies) : []), ...(pkg.peerDependencies ? Object.keys(pkg.peerDependencies) : [])];
|
|
388
|
+
|
|
294
389
|
const external = _resolveConfigProperty(config == null ? void 0 : config.external, parsedExternal);
|
|
390
|
+
|
|
295
391
|
const ctx = {
|
|
296
392
|
config,
|
|
297
393
|
cwd,
|
|
@@ -300,25 +396,41 @@ async function _resolveBuildContext(options) {
|
|
|
300
396
|
external,
|
|
301
397
|
files: [],
|
|
302
398
|
logger: {
|
|
303
|
-
log: (
|
|
304
|
-
console.log(...
|
|
399
|
+
log: function () {
|
|
400
|
+
console.log(...arguments);
|
|
305
401
|
},
|
|
306
|
-
info: (
|
|
402
|
+
info: function () {
|
|
403
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
404
|
+
args[_key] = arguments[_key];
|
|
405
|
+
}
|
|
406
|
+
|
|
307
407
|
console.log(chalk__default["default"].blue(" info"), ...args);
|
|
308
408
|
},
|
|
309
|
-
warn: (
|
|
409
|
+
warn: function () {
|
|
410
|
+
for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {
|
|
411
|
+
args[_key2] = arguments[_key2];
|
|
412
|
+
}
|
|
413
|
+
|
|
310
414
|
console.log(chalk__default["default"].yellow(" warn"), ...args);
|
|
311
415
|
},
|
|
312
|
-
error: (
|
|
416
|
+
error: function () {
|
|
417
|
+
for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {
|
|
418
|
+
args[_key3] = arguments[_key3];
|
|
419
|
+
}
|
|
420
|
+
|
|
313
421
|
console.log(chalk__default["default"].red(" fail"), ...args);
|
|
314
422
|
},
|
|
315
|
-
success: (
|
|
423
|
+
success: function () {
|
|
424
|
+
for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {
|
|
425
|
+
args[_key4] = arguments[_key4];
|
|
426
|
+
}
|
|
427
|
+
|
|
316
428
|
console.log(chalk__default["default"].green(" ok "), ...args);
|
|
317
429
|
}
|
|
318
430
|
},
|
|
319
431
|
pkg,
|
|
320
432
|
src: path__default["default"].relative(cwd, srcPath),
|
|
321
|
-
runtime: (
|
|
433
|
+
runtime: (_ref = config == null ? void 0 : config.runtime) !== null && _ref !== void 0 ? _ref : "*",
|
|
322
434
|
target,
|
|
323
435
|
ts: {
|
|
324
436
|
config: tsconfig,
|
|
@@ -337,4 +449,4 @@ exports._loadTSConfig = _loadTSConfig;
|
|
|
337
449
|
exports._parseExports = _parseExports;
|
|
338
450
|
exports._resolveBuildContext = _resolveBuildContext;
|
|
339
451
|
exports._resolveConfigProperty = _resolveConfigProperty;
|
|
340
|
-
//# sourceMappingURL=__resolveBuildContext-
|
|
452
|
+
//# sourceMappingURL=__resolveBuildContext-9b0aa9f9.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"__resolveBuildContext-9b0aa9f9.cjs","sources":["../src/node/_core/_defaults.ts","../src/node/_core/_isRecord.ts","../src/node/_core/config/_loadConfig.ts","../src/node/_core/config/_resolveConfigProperty.ts","../src/node/_core/pkg/_loadPkg.ts","../src/node/_core/pkg/_loadPkgWithReporting.ts","../src/node/_core/pkg/_parseExports.ts","../src/node/_core/ts/_loadTSConfig.ts","../src/node/_resolveBrowserslistVersions.ts","../src/node/_resolveBrowserTarget.ts","../src/node/_resolveNodeTarget.ts","../src/node/_resolveBuildContext.ts"],"sourcesContent":["/** @internal */\nexport const _DEFAULTS = {\n browserslist: [\n '> 0.2% and supports es6-module and supports es6-module-dynamic-import',\n 'not dead',\n 'not IE 11',\n 'maintained node versions',\n ],\n}\n","/** @internal */\nexport function _isRecord(value: unknown): value is Record<string, unknown> {\n return Boolean(value) && !Array.isArray(value) && typeof value === 'object'\n}\n","import path from 'path'\nimport {register} from 'esbuild-register/dist/node'\nimport findConfig from 'find-config'\nimport pkgUp from 'pkg-up'\nimport {PkgConfigOptions} from './types'\n\n/** @internal */\nexport async function _loadConfig(options: {cwd: string}): Promise<PkgConfigOptions | undefined> {\n const {cwd} = options\n\n const pkgPath = await pkgUp({cwd})\n\n if (!pkgPath) return undefined\n\n const root = path.dirname(pkgPath)\n\n const configFile = _findConfigFile(root)\n\n if (!configFile) {\n return undefined\n }\n\n // Do not accept config files outside of the root\n if (!configFile.path.startsWith(cwd)) {\n return undefined\n }\n\n try {\n const {unregister} = configFile.transform\n ? register({extensions: ['.js', '.ts']})\n : {unregister: () => undefined}\n\n // eslint-disable-next-line @typescript-eslint/no-var-requires\n const mod = require(configFile.path)\n\n unregister()\n\n return mod?.default || mod || undefined\n } catch (_) {\n return undefined\n }\n}\n\n// Looks for:\n// 1. package.config.ts\n// 2. package.config.cjs\n//\nfunction _findConfigFile(cwd: string): {path: string; transform: boolean} | null {\n const ts = findConfig('package.config.ts', {cwd})\n\n if (ts) return {path: ts, transform: true}\n\n const cjs = findConfig('package.config.cjs', {cwd})\n\n if (cjs) return {path: cjs, transform: false}\n\n return null\n}\n","import {PkgConfigProperty, PkgConfigPropertyResolver} from './types'\n\n/** @internal */\nexport function _resolveConfigProperty<T>(\n prop: PkgConfigProperty<T> | undefined,\n initialValue: T\n): T {\n if (!prop) return initialValue\n\n if (typeof prop === 'function') {\n return (prop as PkgConfigPropertyResolver<T>)(initialValue)\n }\n\n return prop\n}\n","import fs from 'fs/promises'\nimport pkgUp from 'pkg-up'\nimport {z} from 'zod'\nimport {_PackageJSON} from './_types'\n\nconst pkgSchema = z.object({\n type: z.optional(z.enum(['module'])),\n name: z.string(),\n version: z.string(),\n bin: z.optional(z.record(z.string())),\n dependencies: z.optional(z.record(z.string())),\n devDependencies: z.optional(z.record(z.string())),\n peerDependencies: z.optional(z.record(z.string())),\n source: z.string(),\n main: z.optional(z.string()),\n browser: z.optional(z.record(z.string())),\n module: z.optional(z.string()),\n types: z.optional(z.string()),\n exports: z.optional(\n z.record(\n z.object({\n types: z.optional(z.string()),\n source: z.string(),\n browser: z.optional(\n z.object({\n require: z.optional(z.string()),\n import: z.optional(z.string()),\n })\n ),\n node: z.optional(\n z.object({\n require: z.optional(z.string()),\n import: z.optional(z.string()),\n })\n ),\n require: z.optional(z.string()),\n import: z.optional(z.string()),\n default: z.string(),\n })\n )\n ),\n browserslist: z.optional(z.array(z.string())),\n})\n\n/** @internal */\nexport async function _loadPkg(options: {cwd: string}): Promise<_PackageJSON> {\n const {cwd} = options\n\n const pkgPath = await pkgUp({cwd})\n\n if (!pkgPath) throw new Error('no package.json found')\n\n const buf = await fs.readFile(pkgPath)\n\n return pkgSchema.parse(JSON.parse(buf.toString()))\n}\n","/* eslint-disable no-console */\n\nimport chalk from 'chalk'\nimport {ZodError} from 'zod'\nimport {_loadPkg} from './_loadPkg'\nimport {_PackageJSON} from './_types'\n\n/** @internal */\nexport async function _loadPkgWithReporting(options: {cwd: string}): Promise<_PackageJSON> {\n try {\n return await _loadPkg(options)\n } catch (err) {\n if (err instanceof ZodError) {\n for (const issue of err.issues) {\n if (issue.code === 'invalid_type') {\n console.log(\n `${chalk.red('invalid type')} in ./package.json at ${chalk.magenta(\n `\\`${issue.path.join('')}\\``\n )} (expected ${issue.expected}, received ${issue.received})`\n )\n }\n }\n } else {\n console.error(err)\n }\n\n process.exit(1)\n }\n}\n","import {_isRecord} from '../_isRecord'\nimport {PkgExport} from '../config'\nimport {_PackageJSON} from './_types'\n\n/** @internal */\nexport function _parseExports(options: {pkg: _PackageJSON}): (PkgExport & {_path: string})[] {\n const {pkg} = options\n\n const rootExport: PkgExport & {_path: string} = {\n _exported: true,\n _path: '.',\n types: pkg.types,\n source: pkg.source || 'index.js',\n browser: pkg.browser && {\n require: pkg.main && pkg.browser[pkg.main],\n import: pkg.module && pkg.browser[pkg.module],\n },\n import: pkg.module,\n require: pkg.main,\n default: pkg.module || pkg.main || './index.js',\n }\n\n const extraExports: (PkgExport & {_path: string})[] = []\n\n if (pkg.exports) {\n for (const [exportPath, exportEntry] of Object.entries(pkg.exports)) {\n if (_isRecord(exportEntry)) {\n if (exportPath === '.') {\n Object.assign(rootExport, exportEntry)\n } else {\n const extraExport: PkgExport & {_path: string} = {\n _exported: true,\n _path: exportPath,\n ...exportEntry,\n }\n\n extraExports.push(extraExport)\n }\n } else {\n throw new Error('string entries are not supported')\n }\n }\n }\n\n return [rootExport, ...extraExports]\n}\n","import ts from 'typescript'\n\n/** @internal */\nexport async function _loadTSConfig(options: {\n cwd: string\n tsconfigPath: string\n}): Promise<ts.ParsedCommandLine> {\n const {cwd, tsconfigPath} = options\n\n const configPath = ts.findConfigFile(cwd, ts.sys.fileExists, tsconfigPath)\n\n if (!configPath) {\n throw new Error(`could not find a valid '${tsconfigPath}'`)\n }\n\n const configFile = ts.readConfigFile(configPath, ts.sys.readFile)\n\n return ts.parseJsonConfigFileContent(configFile.config, ts.sys, cwd)\n}\n","import browserslist from 'browserslist'\n\nexport interface _PackageTargetVersions {\n chrome: string[]\n ff: string[]\n edge: string[]\n iosSaf: string[]\n saf: string[]\n opera: string[]\n node: string[]\n}\n\nfunction _sortAsNumber(a: string, b: string) {\n const aVersion = Number(a)\n const bVersion = Number(b)\n\n return aVersion - bVersion\n}\n\nexport function _resolveBrowserslistVersions(query: string[]): _PackageTargetVersions {\n const result = browserslist(query)\n\n const entries = result.map((key) => {\n const [name, version] = key.split(' ')\n\n return {name, version: version.split('-')[0].split('.')[0]}\n })\n\n const andChr = entries.filter((b) => b.name === 'and_chr')\n const andFf = entries.filter((b) => b.name === 'and_ff')\n const chrome = entries.filter((b) => b.name === 'chrome')\n const edge = entries.filter((b) => b.name === 'edge')\n const ff = entries.filter((b) => b.name === 'firefox')\n const iosSaf = entries.filter((b) => b.name === 'ios_saf')\n const saf = entries.filter((b) => b.name === 'safari')\n const opera = entries.filter((b) => b.name === 'opera')\n const node = entries.filter((b) => b.name === 'node')\n\n // versions\n const versions: _PackageTargetVersions = {\n chrome: andChr.concat(chrome).map((b) => b.version),\n ff: andFf.concat(ff).map((b) => b.version),\n edge: edge.map((b) => b.version),\n iosSaf: iosSaf.map((b) => b.version),\n saf: saf.map((b) => b.version),\n opera: opera.map((b) => b.version),\n node: node.map((b) => b.version),\n }\n\n // sort\n versions.chrome.sort(_sortAsNumber)\n versions.ff.sort(_sortAsNumber)\n versions.edge.sort(_sortAsNumber)\n versions.iosSaf.sort(_sortAsNumber)\n versions.saf.sort(_sortAsNumber)\n versions.opera.sort(_sortAsNumber)\n versions.node.sort(_sortAsNumber)\n\n return versions\n}\n","import {_PackageTargetVersions} from './_resolveBrowserslistVersions'\n\nexport function _resolveBrowserTarget(versions: _PackageTargetVersions): string[] | undefined {\n const target: string[] = []\n\n if (versions.chrome.length) {\n target.push(`chrome${versions.chrome[0]}`)\n }\n\n if (versions.ff.length) {\n target.push(`firefox${versions.ff[0]}`)\n }\n\n if (versions.edge.length) {\n target.push(`edge${versions.edge[0]}`)\n }\n\n if (versions.iosSaf.length) {\n target.push(`ios${versions.iosSaf[0]}`)\n }\n\n if (versions.saf.length) {\n target.push(`safari${versions.saf[0]}`)\n }\n\n if (versions.opera.length) {\n target.push(`opera${versions.opera[0]}`)\n }\n\n if (target.length === 0) {\n return undefined\n }\n\n return target\n}\n","import {_PackageTargetVersions} from './_resolveBrowserslistVersions'\n\nexport function _resolveNodeTarget(versions: _PackageTargetVersions): string[] | undefined {\n const target: string[] = []\n\n if (versions.node.length) {\n target.push(`node${versions.node[0]}`)\n }\n\n if (target.length === 0) {\n return undefined\n }\n\n return target\n}\n","import path from 'path'\nimport chalk from 'chalk'\nimport {\n PkgConfigOptions,\n PkgExports,\n PkgRuntime,\n _BuildContext,\n _DEFAULTS,\n // _loadConfig,\n // _loadPkgWithReporting,\n _loadTSConfig,\n _PackageJSON,\n _parseExports,\n _resolveConfigProperty,\n} from './_core'\nimport {_resolveBrowserslistVersions} from './_resolveBrowserslistVersions'\nimport {_resolveBrowserTarget} from './_resolveBrowserTarget'\nimport {_resolveNodeTarget} from './_resolveNodeTarget'\n\nexport async function _resolveBuildContext(options: {\n config?: PkgConfigOptions\n cwd: string\n pkg: _PackageJSON\n tsconfig: string\n}): Promise<_BuildContext> {\n const {config, cwd, pkg, tsconfig: tsconfigPath} = options\n\n const tsconfig = await _loadTSConfig({cwd, tsconfigPath})\n\n const targetVersions = _resolveBrowserslistVersions(pkg.browserslist || _DEFAULTS.browserslist)\n\n const srcPath = path.resolve(cwd, config?.src || 'src')\n const distPath = path.resolve(cwd, config?.dist || 'dist')\n\n const nodeTarget = _resolveNodeTarget(targetVersions)\n const webTarget = _resolveBrowserTarget(targetVersions)\n\n if (!nodeTarget) {\n throw new Error('no matching `node` target')\n }\n\n if (!webTarget) {\n throw new Error('no matching `web` target')\n }\n\n const target: Record<PkgRuntime, string[]> = {\n '*': webTarget.concat(nodeTarget),\n browser: webTarget,\n node: nodeTarget,\n }\n\n const parsedExports = _parseExports({pkg}).reduce<PkgExports>((acc, x) => {\n const {_path: exportPath, ...exportEntry} = x\n\n return {...acc, [exportPath]: exportEntry}\n }, {})\n\n const exports = _resolveConfigProperty(config?.exports, parsedExports)\n\n const parsedExternal = [\n ...(pkg.dependencies ? Object.keys(pkg.dependencies) : []),\n ...(pkg.peerDependencies ? Object.keys(pkg.peerDependencies) : []),\n ]\n\n const external = _resolveConfigProperty(config?.external, parsedExternal)\n\n const ctx: _BuildContext = {\n config,\n cwd,\n dist: path.relative(cwd, distPath),\n exports,\n external,\n files: [],\n logger: {\n /* eslint-disable no-console */\n log: (...args) => {\n console.log(...args)\n },\n info: (...args) => {\n console.log(chalk.blue(' info'), ...args)\n },\n warn: (...args) => {\n console.log(chalk.yellow(' warn'), ...args)\n },\n error: (...args) => {\n console.log(chalk.red(' fail'), ...args)\n },\n success: (...args) => {\n console.log(chalk.green(' ok '), ...args)\n },\n /* eslint-enable no-console */\n },\n pkg,\n src: path.relative(cwd, srcPath),\n runtime: config?.runtime ?? '*',\n target,\n ts: {\n config: tsconfig,\n configPath: tsconfigPath,\n },\n }\n\n return ctx\n}\n"],"names":["_DEFAULTS","browserslist","_isRecord","value","Boolean","Array","isArray","_loadConfig","options","cwd","pkgPath","pkgUp","root","path","dirname","configFile","_findConfigFile","startsWith","unregister","transform","register","extensions","mod","require","default","_","ts","findConfig","cjs","_resolveConfigProperty","prop","initialValue","pkgSchema","z","object","type","optional","enum","name","string","version","bin","record","dependencies","devDependencies","peerDependencies","source","main","browser","module","types","exports","import","node","array","_loadPkg","Error","buf","fs","readFile","parse","JSON","toString","_loadPkgWithReporting","err","ZodError","issue","issues","code","console","log","chalk","red","magenta","join","expected","received","error","process","exit","_parseExports","pkg","rootExport","_exported","_path","extraExports","exportPath","exportEntry","Object","entries","assign","extraExport","push","_loadTSConfig","tsconfigPath","configPath","findConfigFile","sys","fileExists","readConfigFile","parseJsonConfigFileContent","config","_sortAsNumber","a","b","aVersion","Number","bVersion","_resolveBrowserslistVersions","query","result","map","key","split","andChr","filter","andFf","chrome","edge","ff","iosSaf","saf","opera","versions","concat","sort","_resolveBrowserTarget","target","length","_resolveNodeTarget","_resolveBuildContext","tsconfig","targetVersions","srcPath","resolve","src","distPath","dist","nodeTarget","webTarget","parsedExports","reduce","acc","x","parsedExternal","keys","external","ctx","relative","files","logger","info","args","blue","warn","yellow","success","green","runtime"],"mappings":"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"}
|