zile 0.0.5 → 0.0.7
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/Package.d.ts +31 -6
- package/dist/Package.d.ts.map +1 -1
- package/dist/Package.js +73 -30
- package/dist/Package.js.map +1 -1
- package/dist/internal/package.json +13 -12
- package/package.json +14 -13
- package/src/Cli.ts +1 -1
- package/src/Package.test.ts +56 -2
- package/src/Package.ts +103 -39
- package/src/Packages.test.ts +8 -0
- package/src/__snapshots__/Cli.test.ts.snap +35 -10
- package/src/__snapshots__/Package.test.ts.snap +68 -10
- package/src/__snapshots__/Packages.test.ts.snap +7 -0
package/dist/Package.d.ts
CHANGED
|
@@ -57,6 +57,23 @@ export declare namespace checkPackageJson {
|
|
|
57
57
|
};
|
|
58
58
|
type ReturnType = undefined;
|
|
59
59
|
}
|
|
60
|
+
/**
|
|
61
|
+
* Copies asset files to the output directory.
|
|
62
|
+
*
|
|
63
|
+
* @param options - Options for copying assets.
|
|
64
|
+
* @returns Promise that resolves when assets are copied.
|
|
65
|
+
*/
|
|
66
|
+
export declare function copyAssets(options: copyAssets.Options): Promise<void>;
|
|
67
|
+
export declare namespace copyAssets {
|
|
68
|
+
type Options = {
|
|
69
|
+
/** Array of absolute paths to asset files. */
|
|
70
|
+
assets: string[];
|
|
71
|
+
/** Working directory. */
|
|
72
|
+
cwd: string;
|
|
73
|
+
/** Output directory. */
|
|
74
|
+
outDir: string;
|
|
75
|
+
};
|
|
76
|
+
}
|
|
60
77
|
/**
|
|
61
78
|
* Decorates the package.json file to include publish-specific fields.
|
|
62
79
|
*
|
|
@@ -67,6 +84,8 @@ export declare namespace checkPackageJson {
|
|
|
67
84
|
export declare function decoratePackageJson(pkgJson: PackageJson, options: decoratePackageJson.Options): Promise<PackageJson>;
|
|
68
85
|
export declare namespace decoratePackageJson {
|
|
69
86
|
type Options = {
|
|
87
|
+
/** Array of absolute paths to asset files. */
|
|
88
|
+
assets: string[];
|
|
70
89
|
/** Working directory. */
|
|
71
90
|
cwd: string;
|
|
72
91
|
/** Whether to link output files to source files for development. */
|
|
@@ -81,9 +100,9 @@ export declare namespace decoratePackageJson {
|
|
|
81
100
|
* Gets entry files from package.json exports field or main field.
|
|
82
101
|
*
|
|
83
102
|
* @param options - Options for getting entry files.
|
|
84
|
-
* @returns Array of absolute paths to
|
|
103
|
+
* @returns Array of absolute paths to asset files and source files.
|
|
85
104
|
*/
|
|
86
|
-
export declare function getEntries(options: getEntries.Options):
|
|
105
|
+
export declare function getEntries(options: getEntries.Options): getEntries.ReturnType;
|
|
87
106
|
export declare namespace getEntries {
|
|
88
107
|
type Options = {
|
|
89
108
|
/** Working directory. */
|
|
@@ -91,6 +110,12 @@ export declare namespace getEntries {
|
|
|
91
110
|
/** Package.json file. */
|
|
92
111
|
pkgJson: PackageJson;
|
|
93
112
|
};
|
|
113
|
+
type ReturnType = {
|
|
114
|
+
/** Array of absolute paths to asset files. */
|
|
115
|
+
assets: string[];
|
|
116
|
+
/** Array of absolute paths to source files. */
|
|
117
|
+
sources: string[];
|
|
118
|
+
};
|
|
94
119
|
}
|
|
95
120
|
/**
|
|
96
121
|
* Gets the source directory from the entry files.
|
|
@@ -103,8 +128,8 @@ export declare namespace getSourceDir {
|
|
|
103
128
|
type Options = {
|
|
104
129
|
/** Working directory. */
|
|
105
130
|
cwd?: string | undefined;
|
|
106
|
-
/**
|
|
107
|
-
|
|
131
|
+
/** Source files. */
|
|
132
|
+
sources: string[];
|
|
108
133
|
};
|
|
109
134
|
}
|
|
110
135
|
export declare function readPackageJson(options: readPackageJson.Options): Promise<any>;
|
|
@@ -134,8 +159,8 @@ export declare namespace transpile {
|
|
|
134
159
|
type Options = {
|
|
135
160
|
/** Working directory of the package to transpile. @default process.cwd() */
|
|
136
161
|
cwd?: string | undefined;
|
|
137
|
-
/**
|
|
138
|
-
|
|
162
|
+
/** Source files to include in the transpilation. */
|
|
163
|
+
sources: string[];
|
|
139
164
|
/** Path to tsconfig.json file, relative to the working directory. @default './tsconfig.json' */
|
|
140
165
|
project?: string | undefined;
|
|
141
166
|
/** Whether to use tsgo for transpilation. @default false */
|
package/dist/Package.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Package.d.ts","sourceRoot":"","sources":["../src/Package.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,WAAW,CAAA;AAE1D,YAAY,EAAE,WAAW,EAAE,YAAY,EAAE,CAAA;AAEzC;;;;;GAKG;AACH,wBAAsB,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,
|
|
1
|
+
{"version":3,"file":"Package.d.ts","sourceRoot":"","sources":["../src/Package.ts"],"names":[],"mappings":"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"}
|
package/dist/Package.js
CHANGED
|
@@ -17,17 +17,18 @@ export async function build(options) {
|
|
|
17
17
|
]);
|
|
18
18
|
const outDir = tsConfig.compilerOptions?.outDir ?? path.resolve(cwd, 'dist');
|
|
19
19
|
await checkInput({ cwd, outDir });
|
|
20
|
-
const
|
|
20
|
+
const { assets, sources } = getEntries({ cwd, pkgJson });
|
|
21
21
|
if (!link) {
|
|
22
|
-
const result = await transpile({ cwd,
|
|
22
|
+
const result = await transpile({ cwd, sources, tsgo });
|
|
23
23
|
tsConfig = result.tsConfig;
|
|
24
24
|
}
|
|
25
|
+
await copyAssets({ assets, cwd, outDir });
|
|
25
26
|
if (link) {
|
|
26
27
|
await fs.rm(outDir, { recursive: true }).catch(() => { });
|
|
27
28
|
await fs.mkdir(outDir, { recursive: true });
|
|
28
29
|
}
|
|
29
|
-
const sourceDir = getSourceDir({ cwd,
|
|
30
|
-
const packageJson = await decoratePackageJson(pkgJson, { cwd, link, outDir, sourceDir });
|
|
30
|
+
const sourceDir = getSourceDir({ cwd, sources });
|
|
31
|
+
const packageJson = await decoratePackageJson(pkgJson, { cwd, link, outDir, sourceDir, assets });
|
|
31
32
|
await writePackageJson(cwd, packageJson);
|
|
32
33
|
return { packageJson, tsConfig };
|
|
33
34
|
}
|
|
@@ -86,6 +87,21 @@ export async function checkPackageJson(options) {
|
|
|
86
87
|
}
|
|
87
88
|
return undefined;
|
|
88
89
|
}
|
|
90
|
+
/**
|
|
91
|
+
* Copies asset files to the output directory.
|
|
92
|
+
*
|
|
93
|
+
* @param options - Options for copying assets.
|
|
94
|
+
* @returns Promise that resolves when assets are copied.
|
|
95
|
+
*/
|
|
96
|
+
export async function copyAssets(options) {
|
|
97
|
+
const { assets, cwd, outDir } = options;
|
|
98
|
+
for (const asset of assets) {
|
|
99
|
+
const relativePath = path.relative(cwd, asset);
|
|
100
|
+
const destPath = path.resolve(outDir, relativePath);
|
|
101
|
+
await fs.mkdir(path.dirname(destPath), { recursive: true });
|
|
102
|
+
await fs.copyFile(asset, destPath);
|
|
103
|
+
}
|
|
104
|
+
}
|
|
89
105
|
/**
|
|
90
106
|
* Decorates the package.json file to include publish-specific fields.
|
|
91
107
|
*
|
|
@@ -94,9 +110,10 @@ export async function checkPackageJson(options) {
|
|
|
94
110
|
* @returns Transformed package.json file as an object.
|
|
95
111
|
*/
|
|
96
112
|
export async function decoratePackageJson(pkgJson, options) {
|
|
97
|
-
const { cwd, link, outDir, sourceDir } = options;
|
|
113
|
+
const { assets, cwd, link, outDir, sourceDir } = options;
|
|
98
114
|
const relativeOutDir = `./${path.relative(cwd, outDir)}`;
|
|
99
115
|
const relativeSourceDir = `./${path.relative(cwd, sourceDir)}`;
|
|
116
|
+
const outAsset = (name) => `./${path.join(relativeOutDir, path.relative(cwd, name))}`;
|
|
100
117
|
const outFile = (name, ext = '') => './' +
|
|
101
118
|
path.join(relativeOutDir, name.replace(relativeSourceDir, '').replace(path.extname(name), '') + ext);
|
|
102
119
|
let bin = pkgJson.bin;
|
|
@@ -174,8 +191,13 @@ export async function decoratePackageJson(pkgJson, options) {
|
|
|
174
191
|
if (typeof value === 'string') {
|
|
175
192
|
if (value.startsWith(relativeOutDir))
|
|
176
193
|
return [key, value];
|
|
177
|
-
|
|
194
|
+
// Handle asset files (non-source files)
|
|
195
|
+
if (!/\.(m|c)?[jt]sx?$/.test(value)) {
|
|
196
|
+
const absolutePath = path.resolve(cwd, value);
|
|
197
|
+
if (assets.includes(absolutePath))
|
|
198
|
+
return [key, outAsset(absolutePath)];
|
|
178
199
|
return [key, value];
|
|
200
|
+
}
|
|
179
201
|
if (link)
|
|
180
202
|
linkExports(value);
|
|
181
203
|
return [
|
|
@@ -204,8 +226,16 @@ export async function decoratePackageJson(pkgJson, options) {
|
|
|
204
226
|
typeof value.src === 'string') {
|
|
205
227
|
if (value.src.startsWith(relativeOutDir))
|
|
206
228
|
return [key, value];
|
|
207
|
-
|
|
229
|
+
// Handle asset files (non-source files)
|
|
230
|
+
if (!/\.(m|c)?[jt]sx?$/.test(value.src)) {
|
|
231
|
+
if (link)
|
|
232
|
+
return [key, value];
|
|
233
|
+
const absolutePath = path.resolve(cwd, value.src);
|
|
234
|
+
if (assets.includes(absolutePath)) {
|
|
235
|
+
return [key, { ...value, default: outAsset(absolutePath) }];
|
|
236
|
+
}
|
|
208
237
|
return [key, value];
|
|
238
|
+
}
|
|
209
239
|
if (link)
|
|
210
240
|
linkExports(value.src);
|
|
211
241
|
return [
|
|
@@ -240,35 +270,44 @@ export async function decoratePackageJson(pkgJson, options) {
|
|
|
240
270
|
* Gets entry files from package.json exports field or main field.
|
|
241
271
|
*
|
|
242
272
|
* @param options - Options for getting entry files.
|
|
243
|
-
* @returns Array of absolute paths to
|
|
273
|
+
* @returns Array of absolute paths to asset files and source files.
|
|
244
274
|
*/
|
|
245
275
|
export function getEntries(options) {
|
|
246
276
|
const { cwd, pkgJson } = options;
|
|
247
|
-
const
|
|
277
|
+
const assets = [];
|
|
278
|
+
const sources = [];
|
|
248
279
|
if (pkgJson.bin) {
|
|
249
280
|
if (typeof pkgJson.bin === 'string')
|
|
250
|
-
|
|
281
|
+
sources.push(path.resolve(cwd, pkgJson.bin));
|
|
251
282
|
else
|
|
252
|
-
|
|
283
|
+
sources.push(...Object.entries(pkgJson.bin)
|
|
253
284
|
.map(([key, value]) =>
|
|
254
285
|
// biome-ignore lint/style/noNonNullAssertion: _
|
|
255
286
|
key.endsWith('.src') ? path.resolve(cwd, value) : undefined)
|
|
256
287
|
.filter(Boolean));
|
|
257
288
|
}
|
|
258
|
-
if (pkgJson.exports)
|
|
259
|
-
|
|
260
|
-
|
|
289
|
+
if (pkgJson.exports) {
|
|
290
|
+
for (const entry of Object.values(pkgJson.exports)) {
|
|
291
|
+
let entryPath;
|
|
261
292
|
if (typeof entry === 'string')
|
|
262
|
-
|
|
263
|
-
if (typeof entry === 'object' &&
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
293
|
+
entryPath = entry;
|
|
294
|
+
else if (typeof entry === 'object' &&
|
|
295
|
+
entry &&
|
|
296
|
+
'src' in entry &&
|
|
297
|
+
typeof entry.src === 'string')
|
|
298
|
+
entryPath = entry.src;
|
|
299
|
+
else
|
|
300
|
+
throw new Error('`exports` field in package.json must have a `src` field');
|
|
301
|
+
const absolutePath = path.resolve(cwd, entryPath);
|
|
302
|
+
if (/\.(m|c)?[jt]sx?$/.test(absolutePath))
|
|
303
|
+
sources.push(absolutePath);
|
|
304
|
+
else
|
|
305
|
+
assets.push(absolutePath);
|
|
306
|
+
}
|
|
307
|
+
}
|
|
269
308
|
else if (pkgJson.main)
|
|
270
|
-
|
|
271
|
-
return
|
|
309
|
+
sources.push(path.resolve(cwd, pkgJson.main));
|
|
310
|
+
return { assets, sources };
|
|
272
311
|
}
|
|
273
312
|
/**
|
|
274
313
|
* Gets the source directory from the entry files.
|
|
@@ -277,11 +316,11 @@ export function getEntries(options) {
|
|
|
277
316
|
* @returns Source directory.
|
|
278
317
|
*/
|
|
279
318
|
export function getSourceDir(options) {
|
|
280
|
-
const { cwd = process.cwd(),
|
|
281
|
-
if (
|
|
319
|
+
const { cwd = process.cwd(), sources } = options;
|
|
320
|
+
if (sources.length === 0)
|
|
282
321
|
return path.resolve(cwd, 'src');
|
|
283
322
|
// Get directories of all entries
|
|
284
|
-
const dirs =
|
|
323
|
+
const dirs = sources.map((source) => path.dirname(source));
|
|
285
324
|
// Split each directory into segments
|
|
286
325
|
const segments = dirs.map((dir) => dir.split(path.sep));
|
|
287
326
|
// Find common segments
|
|
@@ -300,7 +339,7 @@ export function getSourceDir(options) {
|
|
|
300
339
|
/**
|
|
301
340
|
* Reads the package.json file from the given working directory.
|
|
302
341
|
*
|
|
303
|
-
* @param
|
|
342
|
+
* @param options - Options for reading the package.json file.
|
|
304
343
|
* @returns Parsed package.json file as an object.
|
|
305
344
|
*/
|
|
306
345
|
const packageJsonCache = new Map();
|
|
@@ -336,7 +375,7 @@ export async function readTsconfigJson(options) {
|
|
|
336
375
|
* @returns Transpilation artifacts.
|
|
337
376
|
*/
|
|
338
377
|
export async function transpile(options) {
|
|
339
|
-
const { cwd = process.cwd(),
|
|
378
|
+
const { cwd = process.cwd(), sources, project = './tsconfig.json', tsgo } = options;
|
|
340
379
|
const tsConfigJson = await readTsconfigJson({ cwd, project });
|
|
341
380
|
const tsconfigPath = path.resolve(cwd, project);
|
|
342
381
|
const { module: mod, moduleResolution: modRes } = tsConfigJson.compilerOptions ?? {};
|
|
@@ -367,7 +406,7 @@ export async function transpile(options) {
|
|
|
367
406
|
const tsConfig = {
|
|
368
407
|
compilerOptions,
|
|
369
408
|
exclude: tsConfigJson.exclude ?? [],
|
|
370
|
-
include: [...(tsConfigJson.include ?? []), ...
|
|
409
|
+
include: [...(tsConfigJson.include ?? []), ...sources],
|
|
371
410
|
};
|
|
372
411
|
const tmpProject = path.resolve(cwd, 'tsconfig.tmp.json');
|
|
373
412
|
await fs.writeFile(tmpProject, JSON.stringify(tsConfig, null, 2));
|
|
@@ -397,7 +436,11 @@ export async function transpile(options) {
|
|
|
397
436
|
export async function writePackageJson(cwd, pkgJson) {
|
|
398
437
|
const content = packageJsonCache.get(cwd);
|
|
399
438
|
const indent = content ? detectIndent(content) : ' ';
|
|
400
|
-
|
|
439
|
+
const hasTrailingNewline = content ? content.endsWith('\n') : true;
|
|
440
|
+
let output = JSON.stringify(pkgJson, null, indent);
|
|
441
|
+
if (hasTrailingNewline)
|
|
442
|
+
output += '\n';
|
|
443
|
+
await fs.writeFile(path.resolve(cwd, 'package.json'), output, 'utf-8');
|
|
401
444
|
}
|
|
402
445
|
/**
|
|
403
446
|
* Detects the indentation used in a JSON string.
|
package/dist/Package.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Package.js","sourceRoot":"","sources":["../src/Package.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Package.js","sourceRoot":"","sources":["../src/Package.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "zile",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.7",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"bin": {
|
|
7
7
|
"zile": "./dist/Cli.js"
|
|
@@ -18,7 +18,17 @@
|
|
|
18
18
|
"dist",
|
|
19
19
|
"src"
|
|
20
20
|
],
|
|
21
|
+
"sideEffects": false,
|
|
21
22
|
"main": "./dist/index.js",
|
|
23
|
+
"module": "./dist/index.js",
|
|
24
|
+
"types": "./dist/index.d.ts",
|
|
25
|
+
"exports": {
|
|
26
|
+
".": {
|
|
27
|
+
"src": "./src/index.ts",
|
|
28
|
+
"types": "./dist/index.d.ts",
|
|
29
|
+
"default": "./dist/index.js"
|
|
30
|
+
}
|
|
31
|
+
},
|
|
22
32
|
"packageManager": "bun@1.3",
|
|
23
33
|
"dependencies": {
|
|
24
34
|
"cac": "6.7.14",
|
|
@@ -43,18 +53,9 @@
|
|
|
43
53
|
"@changesets/cli": "^2.27.7",
|
|
44
54
|
"@types/node": "^24.7.1",
|
|
45
55
|
"publint": "0.3.14",
|
|
56
|
+
"typescript": "^5.9.3",
|
|
46
57
|
"type-fest": "^5.0.1",
|
|
47
58
|
"vitest": "^3.2.4"
|
|
48
59
|
},
|
|
49
|
-
"repository": "wevm/zile"
|
|
50
|
-
"sideEffects": false,
|
|
51
|
-
"module": "./dist/index.js",
|
|
52
|
-
"types": "./dist/index.d.ts",
|
|
53
|
-
"exports": {
|
|
54
|
-
".": {
|
|
55
|
-
"src": "./src/index.ts",
|
|
56
|
-
"types": "./dist/index.d.ts",
|
|
57
|
-
"default": "./dist/index.js"
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
+
"repository": "wevm/zile"
|
|
60
61
|
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "zile",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.0.
|
|
4
|
+
"version": "0.0.7",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"bin": {
|
|
7
7
|
"zile": "./dist/Cli.js"
|
|
@@ -18,7 +18,17 @@
|
|
|
18
18
|
"dist",
|
|
19
19
|
"src"
|
|
20
20
|
],
|
|
21
|
+
"sideEffects": false,
|
|
21
22
|
"main": "./dist/index.js",
|
|
23
|
+
"module": "./dist/index.js",
|
|
24
|
+
"types": "./dist/index.d.ts",
|
|
25
|
+
"exports": {
|
|
26
|
+
".": {
|
|
27
|
+
"src": "./src/index.ts",
|
|
28
|
+
"types": "./dist/index.d.ts",
|
|
29
|
+
"default": "./dist/index.js"
|
|
30
|
+
}
|
|
31
|
+
},
|
|
22
32
|
"packageManager": "bun@1.3",
|
|
23
33
|
"dependencies": {
|
|
24
34
|
"cac": "6.7.14",
|
|
@@ -43,18 +53,9 @@
|
|
|
43
53
|
"@changesets/cli": "^2.27.7",
|
|
44
54
|
"@types/node": "^24.7.1",
|
|
45
55
|
"publint": "0.3.14",
|
|
56
|
+
"typescript": "^5.9.3",
|
|
46
57
|
"type-fest": "^5.0.1",
|
|
47
58
|
"vitest": "^3.2.4"
|
|
48
59
|
},
|
|
49
|
-
"repository": "wevm/zile"
|
|
50
|
-
|
|
51
|
-
"module": "./dist/index.js",
|
|
52
|
-
"types": "./dist/index.d.ts",
|
|
53
|
-
"exports": {
|
|
54
|
-
".": {
|
|
55
|
-
"src": "./src/index.ts",
|
|
56
|
-
"types": "./dist/index.d.ts",
|
|
57
|
-
"default": "./dist/index.js"
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
}
|
|
60
|
+
"repository": "wevm/zile"
|
|
61
|
+
}
|
package/src/Cli.ts
CHANGED
package/src/Package.test.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import * as crypto from 'node:crypto'
|
|
1
2
|
import * as fs from 'node:fs/promises'
|
|
2
3
|
import path from 'node:path'
|
|
3
4
|
import { checkOutput, setupRepos, tree } from '../test/utils.js'
|
|
@@ -77,7 +78,7 @@ describe('Package.getSourceDir', () => {
|
|
|
77
78
|
test('common', async () => {
|
|
78
79
|
{
|
|
79
80
|
const result = Package.getSourceDir({
|
|
80
|
-
|
|
81
|
+
sources: [
|
|
81
82
|
path.resolve(process.cwd(), 'src/index.ts'),
|
|
82
83
|
path.resolve(process.cwd(), 'src/foo.ts'),
|
|
83
84
|
path.resolve(process.cwd(), 'src/nested/dir/index.ts'),
|
|
@@ -89,7 +90,7 @@ describe('Package.getSourceDir', () => {
|
|
|
89
90
|
|
|
90
91
|
{
|
|
91
92
|
const result = Package.getSourceDir({
|
|
92
|
-
|
|
93
|
+
sources: [
|
|
93
94
|
path.resolve(process.cwd(), 'src/index.ts'),
|
|
94
95
|
path.resolve(process.cwd(), 'foo.ts'),
|
|
95
96
|
path.resolve(process.cwd(), 'bar/nested/dir/index.ts'),
|
|
@@ -159,3 +160,56 @@ describe('Package.detectIndent', () => {
|
|
|
159
160
|
expect(Package.detectIndent(content)).toBe(' ')
|
|
160
161
|
})
|
|
161
162
|
})
|
|
163
|
+
|
|
164
|
+
describe('Package.writePackageJson', () => {
|
|
165
|
+
test('preserves trailing newline when present', async () => {
|
|
166
|
+
const tmpDir = path.resolve(import.meta.dirname, '.tmp', crypto.randomUUID())
|
|
167
|
+
await fs.mkdir(tmpDir, { recursive: true })
|
|
168
|
+
|
|
169
|
+
const pkgPath = path.resolve(tmpDir, 'package.json')
|
|
170
|
+
const contentWithNewline = `{\n "name": "test",\n "version": "1.0.0"\n}\n`
|
|
171
|
+
await fs.writeFile(pkgPath, contentWithNewline, 'utf-8')
|
|
172
|
+
|
|
173
|
+
const pkgJson = await Package.readPackageJson({ cwd: tmpDir })
|
|
174
|
+
pkgJson.version = '1.0.1'
|
|
175
|
+
await Package.writePackageJson(tmpDir, pkgJson)
|
|
176
|
+
|
|
177
|
+
const result = await fs.readFile(pkgPath, 'utf-8')
|
|
178
|
+
expect(result.endsWith('\n')).toBe(true)
|
|
179
|
+
|
|
180
|
+
await fs.rm(tmpDir, { recursive: true })
|
|
181
|
+
})
|
|
182
|
+
|
|
183
|
+
test('preserves no trailing newline when absent', async () => {
|
|
184
|
+
const tmpDir = path.resolve(import.meta.dirname, '.tmp', crypto.randomUUID())
|
|
185
|
+
await fs.mkdir(tmpDir, { recursive: true })
|
|
186
|
+
|
|
187
|
+
const pkgPath = path.resolve(tmpDir, 'package.json')
|
|
188
|
+
const contentWithoutNewline = `{\n "name": "test",\n "version": "1.0.0"\n}`
|
|
189
|
+
await fs.writeFile(pkgPath, contentWithoutNewline, 'utf-8')
|
|
190
|
+
|
|
191
|
+
const pkgJson = await Package.readPackageJson({ cwd: tmpDir })
|
|
192
|
+
pkgJson.version = '1.0.1'
|
|
193
|
+
await Package.writePackageJson(tmpDir, pkgJson)
|
|
194
|
+
|
|
195
|
+
const result = await fs.readFile(pkgPath, 'utf-8')
|
|
196
|
+
expect(result.endsWith('\n')).toBe(false)
|
|
197
|
+
expect(result.endsWith('}\n')).toBe(false)
|
|
198
|
+
expect(result.endsWith('}')).toBe(true)
|
|
199
|
+
|
|
200
|
+
await fs.rm(tmpDir, { recursive: true })
|
|
201
|
+
})
|
|
202
|
+
|
|
203
|
+
test('defaults to trailing newline when no cache exists', async () => {
|
|
204
|
+
const tmpDir = path.resolve(import.meta.dirname, '.tmp', crypto.randomUUID())
|
|
205
|
+
await fs.mkdir(tmpDir, { recursive: true })
|
|
206
|
+
|
|
207
|
+
const pkgJson = { name: 'test', version: '1.0.0' }
|
|
208
|
+
await Package.writePackageJson(tmpDir, pkgJson)
|
|
209
|
+
|
|
210
|
+
const result = await fs.readFile(path.resolve(tmpDir, 'package.json'), 'utf-8')
|
|
211
|
+
expect(result.endsWith('\n')).toBe(true)
|
|
212
|
+
|
|
213
|
+
await fs.rm(tmpDir, { recursive: true })
|
|
214
|
+
})
|
|
215
|
+
})
|
package/src/Package.ts
CHANGED
|
@@ -24,20 +24,22 @@ export async function build(options: build.Options): Promise<build.ReturnType> {
|
|
|
24
24
|
|
|
25
25
|
await checkInput({ cwd, outDir })
|
|
26
26
|
|
|
27
|
-
const
|
|
27
|
+
const { assets, sources } = getEntries({ cwd, pkgJson })
|
|
28
28
|
|
|
29
29
|
if (!link) {
|
|
30
|
-
const result = await transpile({ cwd,
|
|
30
|
+
const result = await transpile({ cwd, sources, tsgo })
|
|
31
31
|
tsConfig = result.tsConfig
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
+
await copyAssets({ assets, cwd, outDir })
|
|
35
|
+
|
|
34
36
|
if (link) {
|
|
35
37
|
await fs.rm(outDir, { recursive: true }).catch(() => {})
|
|
36
38
|
await fs.mkdir(outDir, { recursive: true })
|
|
37
39
|
}
|
|
38
40
|
|
|
39
|
-
const sourceDir = getSourceDir({ cwd,
|
|
40
|
-
const packageJson = await decoratePackageJson(pkgJson, { cwd, link, outDir, sourceDir })
|
|
41
|
+
const sourceDir = getSourceDir({ cwd, sources })
|
|
42
|
+
const packageJson = await decoratePackageJson(pkgJson, { cwd, link, outDir, sourceDir, assets })
|
|
41
43
|
|
|
42
44
|
await writePackageJson(cwd, packageJson)
|
|
43
45
|
|
|
@@ -150,6 +152,34 @@ export declare namespace checkPackageJson {
|
|
|
150
152
|
type ReturnType = undefined
|
|
151
153
|
}
|
|
152
154
|
|
|
155
|
+
/**
|
|
156
|
+
* Copies asset files to the output directory.
|
|
157
|
+
*
|
|
158
|
+
* @param options - Options for copying assets.
|
|
159
|
+
* @returns Promise that resolves when assets are copied.
|
|
160
|
+
*/
|
|
161
|
+
export async function copyAssets(options: copyAssets.Options): Promise<void> {
|
|
162
|
+
const { assets, cwd, outDir } = options
|
|
163
|
+
|
|
164
|
+
for (const asset of assets) {
|
|
165
|
+
const relativePath = path.relative(cwd, asset)
|
|
166
|
+
const destPath = path.resolve(outDir, relativePath)
|
|
167
|
+
await fs.mkdir(path.dirname(destPath), { recursive: true })
|
|
168
|
+
await fs.copyFile(asset, destPath)
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
|
|
172
|
+
export declare namespace copyAssets {
|
|
173
|
+
type Options = {
|
|
174
|
+
/** Array of absolute paths to asset files. */
|
|
175
|
+
assets: string[]
|
|
176
|
+
/** Working directory. */
|
|
177
|
+
cwd: string
|
|
178
|
+
/** Output directory. */
|
|
179
|
+
outDir: string
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
|
|
153
183
|
/**
|
|
154
184
|
* Decorates the package.json file to include publish-specific fields.
|
|
155
185
|
*
|
|
@@ -161,11 +191,12 @@ export async function decoratePackageJson(
|
|
|
161
191
|
pkgJson: PackageJson,
|
|
162
192
|
options: decoratePackageJson.Options,
|
|
163
193
|
) {
|
|
164
|
-
const { cwd, link, outDir, sourceDir } = options
|
|
194
|
+
const { assets, cwd, link, outDir, sourceDir } = options
|
|
165
195
|
|
|
166
196
|
const relativeOutDir = `./${path.relative(cwd, outDir)}`
|
|
167
197
|
const relativeSourceDir = `./${path.relative(cwd, sourceDir)}`
|
|
168
198
|
|
|
199
|
+
const outAsset = (name: string) => `./${path.join(relativeOutDir, path.relative(cwd, name))}`
|
|
169
200
|
const outFile = (name: string, ext: string = '') =>
|
|
170
201
|
'./' +
|
|
171
202
|
path.join(
|
|
@@ -260,7 +291,12 @@ export async function decoratePackageJson(
|
|
|
260
291
|
// }
|
|
261
292
|
if (typeof value === 'string') {
|
|
262
293
|
if (value.startsWith(relativeOutDir)) return [key, value]
|
|
263
|
-
|
|
294
|
+
// Handle asset files (non-source files)
|
|
295
|
+
if (!/\.(m|c)?[jt]sx?$/.test(value)) {
|
|
296
|
+
const absolutePath = path.resolve(cwd, value)
|
|
297
|
+
if (assets.includes(absolutePath)) return [key, outAsset(absolutePath)]
|
|
298
|
+
return [key, value]
|
|
299
|
+
}
|
|
264
300
|
if (link) linkExports(value)
|
|
265
301
|
return [
|
|
266
302
|
key,
|
|
@@ -290,7 +326,15 @@ export async function decoratePackageJson(
|
|
|
290
326
|
typeof value.src === 'string'
|
|
291
327
|
) {
|
|
292
328
|
if (value.src.startsWith(relativeOutDir)) return [key, value]
|
|
293
|
-
|
|
329
|
+
// Handle asset files (non-source files)
|
|
330
|
+
if (!/\.(m|c)?[jt]sx?$/.test(value.src)) {
|
|
331
|
+
if (link) return [key, value]
|
|
332
|
+
const absolutePath = path.resolve(cwd, value.src)
|
|
333
|
+
if (assets.includes(absolutePath)) {
|
|
334
|
+
return [key, { ...value, default: outAsset(absolutePath) }]
|
|
335
|
+
}
|
|
336
|
+
return [key, value]
|
|
337
|
+
}
|
|
294
338
|
if (link) linkExports(value.src)
|
|
295
339
|
return [
|
|
296
340
|
key,
|
|
@@ -326,6 +370,8 @@ export async function decoratePackageJson(
|
|
|
326
370
|
|
|
327
371
|
export declare namespace decoratePackageJson {
|
|
328
372
|
type Options = {
|
|
373
|
+
/** Array of absolute paths to asset files. */
|
|
374
|
+
assets: string[]
|
|
329
375
|
/** Working directory. */
|
|
330
376
|
cwd: string
|
|
331
377
|
/** Whether to link output files to source files for development. */
|
|
@@ -341,17 +387,18 @@ export declare namespace decoratePackageJson {
|
|
|
341
387
|
* Gets entry files from package.json exports field or main field.
|
|
342
388
|
*
|
|
343
389
|
* @param options - Options for getting entry files.
|
|
344
|
-
* @returns Array of absolute paths to
|
|
390
|
+
* @returns Array of absolute paths to asset files and source files.
|
|
345
391
|
*/
|
|
346
|
-
export function getEntries(options: getEntries.Options):
|
|
392
|
+
export function getEntries(options: getEntries.Options): getEntries.ReturnType {
|
|
347
393
|
const { cwd, pkgJson } = options
|
|
348
394
|
|
|
349
|
-
const
|
|
395
|
+
const assets: string[] = []
|
|
396
|
+
const sources: string[] = []
|
|
350
397
|
|
|
351
398
|
if (pkgJson.bin) {
|
|
352
|
-
if (typeof pkgJson.bin === 'string')
|
|
399
|
+
if (typeof pkgJson.bin === 'string') sources.push(path.resolve(cwd, pkgJson.bin))
|
|
353
400
|
else
|
|
354
|
-
|
|
401
|
+
sources.push(
|
|
355
402
|
...(Object.entries(pkgJson.bin)
|
|
356
403
|
.map(([key, value]) =>
|
|
357
404
|
// biome-ignore lint/style/noNonNullAssertion: _
|
|
@@ -361,21 +408,26 @@ export function getEntries(options: getEntries.Options): string[] {
|
|
|
361
408
|
)
|
|
362
409
|
}
|
|
363
410
|
|
|
364
|
-
if (pkgJson.exports)
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
374
|
-
|
|
375
|
-
|
|
376
|
-
|
|
411
|
+
if (pkgJson.exports) {
|
|
412
|
+
for (const entry of Object.values(pkgJson.exports)) {
|
|
413
|
+
let entryPath: string
|
|
414
|
+
if (typeof entry === 'string') entryPath = entry
|
|
415
|
+
else if (
|
|
416
|
+
typeof entry === 'object' &&
|
|
417
|
+
entry &&
|
|
418
|
+
'src' in entry &&
|
|
419
|
+
typeof entry.src === 'string'
|
|
420
|
+
)
|
|
421
|
+
entryPath = entry.src
|
|
422
|
+
else throw new Error('`exports` field in package.json must have a `src` field')
|
|
423
|
+
|
|
424
|
+
const absolutePath = path.resolve(cwd, entryPath)
|
|
425
|
+
if (/\.(m|c)?[jt]sx?$/.test(absolutePath)) sources.push(absolutePath)
|
|
426
|
+
else assets.push(absolutePath)
|
|
427
|
+
}
|
|
428
|
+
} else if (pkgJson.main) sources.push(path.resolve(cwd, pkgJson.main))
|
|
377
429
|
|
|
378
|
-
return
|
|
430
|
+
return { assets, sources }
|
|
379
431
|
}
|
|
380
432
|
|
|
381
433
|
export declare namespace getEntries {
|
|
@@ -385,6 +437,13 @@ export declare namespace getEntries {
|
|
|
385
437
|
/** Package.json file. */
|
|
386
438
|
pkgJson: PackageJson
|
|
387
439
|
}
|
|
440
|
+
|
|
441
|
+
type ReturnType = {
|
|
442
|
+
/** Array of absolute paths to asset files. */
|
|
443
|
+
assets: string[]
|
|
444
|
+
/** Array of absolute paths to source files. */
|
|
445
|
+
sources: string[]
|
|
446
|
+
}
|
|
388
447
|
}
|
|
389
448
|
|
|
390
449
|
/**
|
|
@@ -394,12 +453,12 @@ export declare namespace getEntries {
|
|
|
394
453
|
* @returns Source directory.
|
|
395
454
|
*/
|
|
396
455
|
export function getSourceDir(options: getSourceDir.Options): string {
|
|
397
|
-
const { cwd = process.cwd(),
|
|
456
|
+
const { cwd = process.cwd(), sources } = options
|
|
398
457
|
|
|
399
|
-
if (
|
|
458
|
+
if (sources.length === 0) return path.resolve(cwd, 'src')
|
|
400
459
|
|
|
401
460
|
// Get directories of all entries
|
|
402
|
-
const dirs =
|
|
461
|
+
const dirs = sources.map((source) => path.dirname(source))
|
|
403
462
|
|
|
404
463
|
// Split each directory into segments
|
|
405
464
|
const segments = dirs.map((dir) => dir.split(path.sep))
|
|
@@ -422,15 +481,15 @@ export declare namespace getSourceDir {
|
|
|
422
481
|
type Options = {
|
|
423
482
|
/** Working directory. */
|
|
424
483
|
cwd?: string | undefined
|
|
425
|
-
/**
|
|
426
|
-
|
|
484
|
+
/** Source files. */
|
|
485
|
+
sources: string[]
|
|
427
486
|
}
|
|
428
487
|
}
|
|
429
488
|
|
|
430
489
|
/**
|
|
431
490
|
* Reads the package.json file from the given working directory.
|
|
432
491
|
*
|
|
433
|
-
* @param
|
|
492
|
+
* @param options - Options for reading the package.json file.
|
|
434
493
|
* @returns Parsed package.json file as an object.
|
|
435
494
|
*/
|
|
436
495
|
const packageJsonCache: Map<string, string> = new Map()
|
|
@@ -483,7 +542,7 @@ export declare namespace readTsconfigJson {
|
|
|
483
542
|
* @returns Transpilation artifacts.
|
|
484
543
|
*/
|
|
485
544
|
export async function transpile(options: transpile.Options): Promise<transpile.ReturnType> {
|
|
486
|
-
const { cwd = process.cwd(),
|
|
545
|
+
const { cwd = process.cwd(), sources, project = './tsconfig.json', tsgo } = options
|
|
487
546
|
|
|
488
547
|
const tsConfigJson = await readTsconfigJson({ cwd, project })
|
|
489
548
|
const tsconfigPath = path.resolve(cwd, project)
|
|
@@ -520,7 +579,7 @@ export async function transpile(options: transpile.Options): Promise<transpile.R
|
|
|
520
579
|
const tsConfig = {
|
|
521
580
|
compilerOptions,
|
|
522
581
|
exclude: tsConfigJson.exclude ?? [],
|
|
523
|
-
include: [...(tsConfigJson.include ?? []), ...
|
|
582
|
+
include: [...(tsConfigJson.include ?? []), ...sources] as string[],
|
|
524
583
|
} as const
|
|
525
584
|
|
|
526
585
|
const tmpProject = path.resolve(cwd, 'tsconfig.tmp.json')
|
|
@@ -550,8 +609,8 @@ export declare namespace transpile {
|
|
|
550
609
|
type Options = {
|
|
551
610
|
/** Working directory of the package to transpile. @default process.cwd() */
|
|
552
611
|
cwd?: string | undefined
|
|
553
|
-
/**
|
|
554
|
-
|
|
612
|
+
/** Source files to include in the transpilation. */
|
|
613
|
+
sources: string[]
|
|
555
614
|
/** Path to tsconfig.json file, relative to the working directory. @default './tsconfig.json' */
|
|
556
615
|
project?: string | undefined
|
|
557
616
|
/** Whether to use tsgo for transpilation. @default false */
|
|
@@ -573,7 +632,12 @@ export declare namespace transpile {
|
|
|
573
632
|
export async function writePackageJson(cwd: string, pkgJson: PackageJson) {
|
|
574
633
|
const content = packageJsonCache.get(cwd)
|
|
575
634
|
const indent = content ? detectIndent(content) : ' '
|
|
576
|
-
|
|
635
|
+
const hasTrailingNewline = content ? content.endsWith('\n') : true
|
|
636
|
+
|
|
637
|
+
let output = JSON.stringify(pkgJson, null, indent)
|
|
638
|
+
if (hasTrailingNewline) output += '\n'
|
|
639
|
+
|
|
640
|
+
await fs.writeFile(path.resolve(cwd, 'package.json'), output, 'utf-8')
|
|
577
641
|
}
|
|
578
642
|
|
|
579
643
|
/**
|
|
@@ -585,7 +649,7 @@ export async function writePackageJson(cwd: string, pkgJson: PackageJson) {
|
|
|
585
649
|
*/
|
|
586
650
|
export function detectIndent(content: string): string {
|
|
587
651
|
const lines = content.split('\n')
|
|
588
|
-
|
|
652
|
+
|
|
589
653
|
for (const line of lines) {
|
|
590
654
|
const match = line.match(/^(\s+)/)
|
|
591
655
|
if (match) {
|
|
@@ -596,7 +660,7 @@ export function detectIndent(content: string): string {
|
|
|
596
660
|
return indent
|
|
597
661
|
}
|
|
598
662
|
}
|
|
599
|
-
|
|
663
|
+
|
|
600
664
|
// Default to 2 spaces if we can't detect
|
|
601
665
|
return ' '
|
|
602
666
|
}
|
package/src/Packages.test.ts
CHANGED
|
@@ -29,6 +29,10 @@ describe('Packages.find', () => {
|
|
|
29
29
|
"/test/repos/basic-object-exports",
|
|
30
30
|
"/test/repos/basic",
|
|
31
31
|
"/src/internal",
|
|
32
|
+
"/examples/monorepo",
|
|
33
|
+
"/examples/monorepo/packages/foo",
|
|
34
|
+
"/examples/monorepo/packages/bar",
|
|
35
|
+
"/examples/basic",
|
|
32
36
|
]
|
|
33
37
|
`)
|
|
34
38
|
})
|
|
@@ -172,6 +176,10 @@ describe('Packages.find', () => {
|
|
|
172
176
|
"/test/repos/basic-object-exports",
|
|
173
177
|
"/test/repos/basic",
|
|
174
178
|
"/src/internal",
|
|
179
|
+
"/examples/monorepo",
|
|
180
|
+
"/examples/monorepo/packages/foo",
|
|
181
|
+
"/examples/monorepo/packages/bar",
|
|
182
|
+
"/examples/basic",
|
|
175
183
|
]
|
|
176
184
|
`)
|
|
177
185
|
})
|
|
@@ -29,24 +29,32 @@ exports[`'/basic': Cli.run > default > output 1`] = `
|
|
|
29
29
|
"basic.src": "./cli.ts"
|
|
30
30
|
},
|
|
31
31
|
"main": "./dist/index.js",
|
|
32
|
-
"sideEffects": false,
|
|
33
|
-
"module": "./dist/index.js",
|
|
34
|
-
"types": "./dist/index.d.ts",
|
|
35
32
|
"exports": {
|
|
36
33
|
".": {
|
|
37
34
|
"src": "./index.ts",
|
|
38
35
|
"types": "./dist/index.d.ts",
|
|
39
36
|
"default": "./dist/index.js"
|
|
40
|
-
}
|
|
41
|
-
|
|
37
|
+
},
|
|
38
|
+
"./foo": {
|
|
39
|
+
"src": "./foo.ts",
|
|
40
|
+
"types": "./dist/foo.d.ts",
|
|
41
|
+
"default": "./dist/foo.js"
|
|
42
|
+
},
|
|
43
|
+
"./config": "./dist/config.json"
|
|
44
|
+
},
|
|
45
|
+
"sideEffects": false,
|
|
46
|
+
"module": "./dist/index.js",
|
|
47
|
+
"types": "./dist/index.d.ts"
|
|
42
48
|
}
|
|
43
49
|
|
|
44
50
|
|
|
51
|
+
|
|
45
52
|
├── dist
|
|
46
53
|
│ ├── cli.d.ts
|
|
47
54
|
│ ├── cli.d.ts.map
|
|
48
55
|
│ ├── cli.js
|
|
49
56
|
│ ├── cli.js.map
|
|
57
|
+
│ ├── config.json
|
|
50
58
|
│ ├── foo.d.ts
|
|
51
59
|
│ ├── foo.d.ts.map
|
|
52
60
|
│ ├── foo.js
|
|
@@ -56,6 +64,7 @@ exports[`'/basic': Cli.run > default > output 1`] = `
|
|
|
56
64
|
│ ├── index.js
|
|
57
65
|
│ └── index.js.map
|
|
58
66
|
├── cli.ts
|
|
67
|
+
├── config.json
|
|
59
68
|
├── foo.ts
|
|
60
69
|
├── index.ts
|
|
61
70
|
├── package.json
|
|
@@ -92,23 +101,33 @@ exports[`'/basic': Cli.run > link > output 1`] = `
|
|
|
92
101
|
"basic.src": "./cli.ts"
|
|
93
102
|
},
|
|
94
103
|
"main": "./dist/index.js",
|
|
95
|
-
"sideEffects": false,
|
|
96
|
-
"module": "./dist/index.js",
|
|
97
|
-
"types": "./dist/index.d.ts",
|
|
98
104
|
"exports": {
|
|
99
105
|
".": {
|
|
100
106
|
"src": "./index.ts",
|
|
101
107
|
"types": "./dist/index.d.ts",
|
|
102
108
|
"default": "./dist/index.js"
|
|
103
|
-
}
|
|
104
|
-
|
|
109
|
+
},
|
|
110
|
+
"./foo": {
|
|
111
|
+
"src": "./foo.ts",
|
|
112
|
+
"types": "./dist/foo.d.ts",
|
|
113
|
+
"default": "./dist/foo.js"
|
|
114
|
+
},
|
|
115
|
+
"./config": "./dist/config.json"
|
|
116
|
+
},
|
|
117
|
+
"sideEffects": false,
|
|
118
|
+
"module": "./dist/index.js",
|
|
119
|
+
"types": "./dist/index.d.ts"
|
|
105
120
|
}
|
|
106
121
|
|
|
107
122
|
|
|
123
|
+
|
|
108
124
|
├── dist
|
|
125
|
+
│ ├── foo.d.ts -> ../foo.ts
|
|
126
|
+
│ ├── foo.js -> ../foo.ts
|
|
109
127
|
│ ├── index.d.ts -> ../index.ts
|
|
110
128
|
│ └── index.js -> ../index.ts
|
|
111
129
|
├── cli.ts
|
|
130
|
+
├── config.json
|
|
112
131
|
├── foo.ts
|
|
113
132
|
├── index.ts
|
|
114
133
|
├── package.json
|
|
@@ -156,6 +175,7 @@ exports[`'/basic-object-exports': Cli.run > default > output 1`] = `
|
|
|
156
175
|
}
|
|
157
176
|
|
|
158
177
|
|
|
178
|
+
|
|
159
179
|
├── dist
|
|
160
180
|
│ ├── foo.d.ts
|
|
161
181
|
│ ├── foo.d.ts.map
|
|
@@ -210,6 +230,7 @@ exports[`'/basic-object-exports': Cli.run > link > output 1`] = `
|
|
|
210
230
|
}
|
|
211
231
|
|
|
212
232
|
|
|
233
|
+
|
|
213
234
|
├── dist
|
|
214
235
|
│ ├── index.d.ts -> ../index.ts
|
|
215
236
|
│ └── index.js -> ../index.ts
|
|
@@ -270,6 +291,7 @@ exports[`'/multiple-entrypoint': Cli.run > default > output 1`] = `
|
|
|
270
291
|
}
|
|
271
292
|
|
|
272
293
|
|
|
294
|
+
|
|
273
295
|
├── dist
|
|
274
296
|
│ ├── nested
|
|
275
297
|
│ │ └── dir
|
|
@@ -344,6 +366,7 @@ exports[`'/multiple-entrypoint': Cli.run > link > output 1`] = `
|
|
|
344
366
|
}
|
|
345
367
|
|
|
346
368
|
|
|
369
|
+
|
|
347
370
|
├── dist
|
|
348
371
|
│ ├── nested
|
|
349
372
|
│ │ └── dir
|
|
@@ -404,6 +427,7 @@ exports[`'/single-entrypoint': Cli.run > default > output 1`] = `
|
|
|
404
427
|
}
|
|
405
428
|
|
|
406
429
|
|
|
430
|
+
|
|
407
431
|
├── dist
|
|
408
432
|
│ ├── foo.d.ts
|
|
409
433
|
│ ├── foo.d.ts.map
|
|
@@ -458,6 +482,7 @@ exports[`'/single-entrypoint': Cli.run > link > output 1`] = `
|
|
|
458
482
|
}
|
|
459
483
|
|
|
460
484
|
|
|
485
|
+
|
|
461
486
|
├── dist
|
|
462
487
|
│ ├── index.d.ts -> ../index.ts
|
|
463
488
|
│ └── index.js -> ../index.ts
|
|
@@ -10,6 +10,8 @@ basic v0.0.0
|
|
|
10
10
|
|
|
11
11
|
(ignored per resolution) ⚠️ A require call resolved to an ESM JavaScript file, which is an error in Node and some bundlers. CommonJS consumers will need to use a dynamic import. https://github.com/arethetypeswrong/arethetypeswrong.github.io/blob/main/docs/problems/CJSResolvesToESM.md
|
|
12
12
|
|
|
13
|
+
(ignored per resolution) 💀 Import failed to resolve to type declarations or JavaScript files. https://github.com/arethetypeswrong/arethetypeswrong.github.io/blob/main/docs/problems/NoResolution.md
|
|
14
|
+
|
|
13
15
|
|
|
14
16
|
"basic"
|
|
15
17
|
|
|
@@ -18,6 +20,24 @@ bundler: 🟢
|
|
|
18
20
|
node10: (ignored) 🟢
|
|
19
21
|
node16 (from CJS): (ignored) ⚠️ ESM (dynamic import only)
|
|
20
22
|
|
|
23
|
+
***********************************
|
|
24
|
+
|
|
25
|
+
"basic/foo"
|
|
26
|
+
|
|
27
|
+
node16 (from ESM): 🟢 (ESM)
|
|
28
|
+
bundler: 🟢
|
|
29
|
+
node10: (ignored) 🟢
|
|
30
|
+
node16 (from CJS): (ignored) ⚠️ ESM (dynamic import only)
|
|
31
|
+
|
|
32
|
+
***********************************
|
|
33
|
+
|
|
34
|
+
"basic/config"
|
|
35
|
+
|
|
36
|
+
node16 (from ESM): 🟢 (JSON)
|
|
37
|
+
bundler: 🟢 (JSON)
|
|
38
|
+
node10: (ignored) 💀 Resolution failed
|
|
39
|
+
node16 (from CJS): (ignored) 🟢 (JSON)
|
|
40
|
+
|
|
21
41
|
***********************************
|
|
22
42
|
",
|
|
23
43
|
"publint": "Running publint v0.3.14 for basic...
|
|
@@ -58,24 +78,32 @@ exports[`'/basic': Package.build > default > output 1`] = `
|
|
|
58
78
|
"basic.src": "./cli.ts"
|
|
59
79
|
},
|
|
60
80
|
"main": "./dist/index.js",
|
|
61
|
-
"sideEffects": false,
|
|
62
|
-
"module": "./dist/index.js",
|
|
63
|
-
"types": "./dist/index.d.ts",
|
|
64
81
|
"exports": {
|
|
65
82
|
".": {
|
|
66
83
|
"src": "./index.ts",
|
|
67
84
|
"types": "./dist/index.d.ts",
|
|
68
85
|
"default": "./dist/index.js"
|
|
69
|
-
}
|
|
70
|
-
|
|
86
|
+
},
|
|
87
|
+
"./foo": {
|
|
88
|
+
"src": "./foo.ts",
|
|
89
|
+
"types": "./dist/foo.d.ts",
|
|
90
|
+
"default": "./dist/foo.js"
|
|
91
|
+
},
|
|
92
|
+
"./config": "./dist/config.json"
|
|
93
|
+
},
|
|
94
|
+
"sideEffects": false,
|
|
95
|
+
"module": "./dist/index.js",
|
|
96
|
+
"types": "./dist/index.d.ts"
|
|
71
97
|
}
|
|
72
98
|
|
|
73
99
|
|
|
100
|
+
|
|
74
101
|
├── dist
|
|
75
102
|
│ ├── cli.d.ts
|
|
76
103
|
│ ├── cli.d.ts.map
|
|
77
104
|
│ ├── cli.js
|
|
78
105
|
│ ├── cli.js.map
|
|
106
|
+
│ ├── config.json
|
|
79
107
|
│ ├── foo.d.ts
|
|
80
108
|
│ ├── foo.d.ts.map
|
|
81
109
|
│ ├── foo.js
|
|
@@ -85,6 +113,7 @@ exports[`'/basic': Package.build > default > output 1`] = `
|
|
|
85
113
|
│ ├── index.js
|
|
86
114
|
│ └── index.js.map
|
|
87
115
|
├── cli.ts
|
|
116
|
+
├── config.json
|
|
88
117
|
├── foo.ts
|
|
89
118
|
├── index.ts
|
|
90
119
|
├── package.json
|
|
@@ -105,6 +134,12 @@ exports[`'/basic': Package.build > default > result 1`] = `
|
|
|
105
134
|
"src": "./index.ts",
|
|
106
135
|
"types": "./dist/index.d.ts",
|
|
107
136
|
},
|
|
137
|
+
"./config": "./dist/config.json",
|
|
138
|
+
"./foo": {
|
|
139
|
+
"default": "./dist/foo.js",
|
|
140
|
+
"src": "./foo.ts",
|
|
141
|
+
"types": "./dist/foo.d.ts",
|
|
142
|
+
},
|
|
108
143
|
},
|
|
109
144
|
"main": "./dist/index.js",
|
|
110
145
|
"module": "./dist/index.js",
|
|
@@ -138,6 +173,7 @@ exports[`'/basic': Package.build > default > result 1`] = `
|
|
|
138
173
|
"include": [
|
|
139
174
|
"/repos/basic/cli.ts",
|
|
140
175
|
"/repos/basic/index.ts",
|
|
176
|
+
"/repos/basic/foo.ts",
|
|
141
177
|
],
|
|
142
178
|
},
|
|
143
179
|
}
|
|
@@ -172,23 +208,33 @@ exports[`'/basic': Package.build > link > output 1`] = `
|
|
|
172
208
|
"basic.src": "./cli.ts"
|
|
173
209
|
},
|
|
174
210
|
"main": "./dist/index.js",
|
|
175
|
-
"sideEffects": false,
|
|
176
|
-
"module": "./dist/index.js",
|
|
177
|
-
"types": "./dist/index.d.ts",
|
|
178
211
|
"exports": {
|
|
179
212
|
".": {
|
|
180
213
|
"src": "./index.ts",
|
|
181
214
|
"types": "./dist/index.d.ts",
|
|
182
215
|
"default": "./dist/index.js"
|
|
183
|
-
}
|
|
184
|
-
|
|
216
|
+
},
|
|
217
|
+
"./foo": {
|
|
218
|
+
"src": "./foo.ts",
|
|
219
|
+
"types": "./dist/foo.d.ts",
|
|
220
|
+
"default": "./dist/foo.js"
|
|
221
|
+
},
|
|
222
|
+
"./config": "./dist/config.json"
|
|
223
|
+
},
|
|
224
|
+
"sideEffects": false,
|
|
225
|
+
"module": "./dist/index.js",
|
|
226
|
+
"types": "./dist/index.d.ts"
|
|
185
227
|
}
|
|
186
228
|
|
|
187
229
|
|
|
230
|
+
|
|
188
231
|
├── dist
|
|
232
|
+
│ ├── foo.d.ts -> ../foo.ts
|
|
233
|
+
│ ├── foo.js -> ../foo.ts
|
|
189
234
|
│ ├── index.d.ts -> ../index.ts
|
|
190
235
|
│ └── index.js -> ../index.ts
|
|
191
236
|
├── cli.ts
|
|
237
|
+
├── config.json
|
|
192
238
|
├── foo.ts
|
|
193
239
|
├── index.ts
|
|
194
240
|
├── package.json
|
|
@@ -209,6 +255,12 @@ exports[`'/basic': Package.build > link > result 1`] = `
|
|
|
209
255
|
"src": "./index.ts",
|
|
210
256
|
"types": "./dist/index.d.ts",
|
|
211
257
|
},
|
|
258
|
+
"./config": "./dist/config.json",
|
|
259
|
+
"./foo": {
|
|
260
|
+
"default": "./dist/foo.js",
|
|
261
|
+
"src": "./foo.ts",
|
|
262
|
+
"types": "./dist/foo.d.ts",
|
|
263
|
+
},
|
|
212
264
|
},
|
|
213
265
|
"main": "./dist/index.js",
|
|
214
266
|
"module": "./dist/index.js",
|
|
@@ -302,6 +354,7 @@ exports[`'/basic-object-exports': Package.build > default > output 1`] = `
|
|
|
302
354
|
}
|
|
303
355
|
|
|
304
356
|
|
|
357
|
+
|
|
305
358
|
├── dist
|
|
306
359
|
│ ├── foo.d.ts
|
|
307
360
|
│ ├── foo.d.ts.map
|
|
@@ -402,6 +455,7 @@ exports[`'/basic-object-exports': Package.build > link > output 1`] = `
|
|
|
402
455
|
}
|
|
403
456
|
|
|
404
457
|
|
|
458
|
+
|
|
405
459
|
├── dist
|
|
406
460
|
│ ├── index.d.ts -> ../index.ts
|
|
407
461
|
│ └── index.js -> ../index.ts
|
|
@@ -562,6 +616,7 @@ exports[`'/multiple-entrypoint': Package.build > default > output 1`] = `
|
|
|
562
616
|
}
|
|
563
617
|
|
|
564
618
|
|
|
619
|
+
|
|
565
620
|
├── dist
|
|
566
621
|
│ ├── nested
|
|
567
622
|
│ │ └── dir
|
|
@@ -694,6 +749,7 @@ exports[`'/multiple-entrypoint': Package.build > link > output 1`] = `
|
|
|
694
749
|
}
|
|
695
750
|
|
|
696
751
|
|
|
752
|
+
|
|
697
753
|
├── dist
|
|
698
754
|
│ ├── nested
|
|
699
755
|
│ │ └── dir
|
|
@@ -826,6 +882,7 @@ exports[`'/single-entrypoint': Package.build > default > output 1`] = `
|
|
|
826
882
|
}
|
|
827
883
|
|
|
828
884
|
|
|
885
|
+
|
|
829
886
|
├── dist
|
|
830
887
|
│ ├── foo.d.ts
|
|
831
888
|
│ ├── foo.d.ts.map
|
|
@@ -926,6 +983,7 @@ exports[`'/single-entrypoint': Package.build > link > output 1`] = `
|
|
|
926
983
|
}
|
|
927
984
|
|
|
928
985
|
|
|
986
|
+
|
|
929
987
|
├── dist
|
|
930
988
|
│ ├── index.d.ts -> ../index.ts
|
|
931
989
|
│ └── index.js -> ../index.ts
|
|
@@ -155,6 +155,12 @@ exports[`Packages.build > builds all packages 1`] = `
|
|
|
155
155
|
"src": "./index.ts",
|
|
156
156
|
"types": "./dist/index.d.ts",
|
|
157
157
|
},
|
|
158
|
+
"./config": "./dist/config.json",
|
|
159
|
+
"./foo": {
|
|
160
|
+
"default": "./dist/foo.js",
|
|
161
|
+
"src": "./foo.ts",
|
|
162
|
+
"types": "./dist/foo.d.ts",
|
|
163
|
+
},
|
|
158
164
|
},
|
|
159
165
|
"main": "./dist/index.js",
|
|
160
166
|
"module": "./dist/index.js",
|
|
@@ -188,6 +194,7 @@ exports[`Packages.build > builds all packages 1`] = `
|
|
|
188
194
|
"include": [
|
|
189
195
|
"/repos/basic/cli.ts",
|
|
190
196
|
"/repos/basic/index.ts",
|
|
197
|
+
"/repos/basic/foo.ts",
|
|
191
198
|
],
|
|
192
199
|
},
|
|
193
200
|
},
|