@ms-cloudpack/api-server 0.17.1 → 0.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/apis/ensurePackageBundled.d.ts +23 -0
- package/lib/apis/ensurePackageBundled.d.ts.map +1 -1
- package/lib/apis/ensurePackageBundled.js +6 -4
- package/lib/apis/ensurePackageBundled.js.map +1 -1
- package/lib/apis/index.d.ts +1 -0
- package/lib/apis/index.d.ts.map +1 -1
- package/lib/apis/index.js.map +1 -1
- package/lib/apis.d.ts +1 -0
- package/lib/apis.d.ts.map +1 -1
- package/lib/apis.js.map +1 -1
- package/lib/trpc/createAppRouter.d.ts +6 -0
- package/lib/trpc/createAppRouter.d.ts.map +1 -1
- package/lib/trpc/createCloudpackServer.d.ts +3 -0
- package/lib/trpc/createCloudpackServer.d.ts.map +1 -1
- package/lib/types/BundleRequest.d.ts +1 -1
- package/lib/types/BundleRequest.d.ts.map +1 -1
- package/lib/types/BundleRequest.js.map +1 -1
- package/lib/utilities/bundleTask.js +21 -9
- package/lib/utilities/bundleTask.js.map +1 -1
- package/lib/utilities/findImports.d.ts +2 -2
- package/lib/utilities/findImports.d.ts.map +1 -1
- package/lib/utilities/findImports.js +6 -6
- package/lib/utilities/findImports.js.map +1 -1
- package/lib/utilities/getPackageHashEntries.d.ts +8 -7
- package/lib/utilities/getPackageHashEntries.d.ts.map +1 -1
- package/lib/utilities/getPackageHashEntries.js +5 -6
- package/lib/utilities/getPackageHashEntries.js.map +1 -1
- package/lib/utilities/getPackagePath.d.ts +22 -2
- package/lib/utilities/getPackagePath.d.ts.map +1 -1
- package/lib/utilities/getPackagePath.js +4 -3
- package/lib/utilities/getPackagePath.js.map +1 -1
- package/lib/utilities/hashPackage.d.ts.map +1 -1
- package/lib/utilities/hashPackage.js +18 -15
- package/lib/utilities/hashPackage.js.map +1 -1
- package/lib/utilities/validateBundleRequestResult.d.ts +1 -1
- package/lib/utilities/validateBundleRequestResult.d.ts.map +1 -1
- package/lib/utilities/validateBundleRequestResult.js +2 -7
- package/lib/utilities/validateBundleRequestResult.js.map +1 -1
- package/package.json +7 -7
- package/lib/utilities/calculateHashOfInlinedDependencies.d.ts +0 -9
- package/lib/utilities/calculateHashOfInlinedDependencies.d.ts.map +0 -1
- package/lib/utilities/calculateHashOfInlinedDependencies.js +0 -18
- package/lib/utilities/calculateHashOfInlinedDependencies.js.map +0 -1
|
@@ -7,6 +7,7 @@ declare const ZodEnsurePackageBundledInput: z.ZodObject<{
|
|
|
7
7
|
bundlerType: z.ZodOptional<z.ZodString>;
|
|
8
8
|
disableSourceMaps: z.ZodOptional<z.ZodBoolean>;
|
|
9
9
|
enqueueDependencies: z.ZodOptional<z.ZodBoolean>;
|
|
10
|
+
shouldFindImports: z.ZodOptional<z.ZodBoolean>;
|
|
10
11
|
shouldRerun: z.ZodOptional<z.ZodBoolean>;
|
|
11
12
|
shouldWatch: z.ZodOptional<z.ZodBoolean>;
|
|
12
13
|
shouldForce: z.ZodOptional<z.ZodBoolean>;
|
|
@@ -17,6 +18,7 @@ declare const ZodEnsurePackageBundledInput: z.ZodObject<{
|
|
|
17
18
|
bundlerType?: string | undefined;
|
|
18
19
|
disableSourceMaps?: boolean | undefined;
|
|
19
20
|
enqueueDependencies?: boolean | undefined;
|
|
21
|
+
shouldFindImports?: boolean | undefined;
|
|
20
22
|
shouldRerun?: boolean | undefined;
|
|
21
23
|
shouldWatch?: boolean | undefined;
|
|
22
24
|
shouldForce?: boolean | undefined;
|
|
@@ -27,6 +29,7 @@ declare const ZodEnsurePackageBundledInput: z.ZodObject<{
|
|
|
27
29
|
bundlerType?: string | undefined;
|
|
28
30
|
disableSourceMaps?: boolean | undefined;
|
|
29
31
|
enqueueDependencies?: boolean | undefined;
|
|
32
|
+
shouldFindImports?: boolean | undefined;
|
|
30
33
|
shouldRerun?: boolean | undefined;
|
|
31
34
|
shouldWatch?: boolean | undefined;
|
|
32
35
|
shouldForce?: boolean | undefined;
|
|
@@ -293,6 +296,7 @@ declare const ZodEnsurePackageBundledOutputResult: z.ZodObject<{
|
|
|
293
296
|
rawInput: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
294
297
|
rawOutput: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
295
298
|
isExternal: z.ZodBoolean;
|
|
299
|
+
imports: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString, "many">>>;
|
|
296
300
|
}, "strip", z.ZodTypeAny, {
|
|
297
301
|
name: string;
|
|
298
302
|
outputPath: string;
|
|
@@ -358,6 +362,7 @@ declare const ZodEnsurePackageBundledOutputResult: z.ZodObject<{
|
|
|
358
362
|
}[] | undefined;
|
|
359
363
|
rawInput?: Record<string, unknown> | undefined;
|
|
360
364
|
rawOutput?: Record<string, unknown> | undefined;
|
|
365
|
+
imports?: Record<string, string[]> | undefined;
|
|
361
366
|
}, {
|
|
362
367
|
name: string;
|
|
363
368
|
outputPath: string;
|
|
@@ -423,6 +428,7 @@ declare const ZodEnsurePackageBundledOutputResult: z.ZodObject<{
|
|
|
423
428
|
}[] | undefined;
|
|
424
429
|
rawInput?: Record<string, unknown> | undefined;
|
|
425
430
|
rawOutput?: Record<string, unknown> | undefined;
|
|
431
|
+
imports?: Record<string, string[]> | undefined;
|
|
426
432
|
}>;
|
|
427
433
|
export type EnsurePackageBundledOutputResult = z.infer<typeof ZodEnsurePackageBundledOutputResult>;
|
|
428
434
|
declare const ZodEnsurePackageBundledOutput: z.ZodObject<{
|
|
@@ -687,6 +693,7 @@ declare const ZodEnsurePackageBundledOutput: z.ZodObject<{
|
|
|
687
693
|
rawInput: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
688
694
|
rawOutput: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
689
695
|
isExternal: z.ZodBoolean;
|
|
696
|
+
imports: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString, "many">>>;
|
|
690
697
|
}, "strip", z.ZodTypeAny, {
|
|
691
698
|
name: string;
|
|
692
699
|
outputPath: string;
|
|
@@ -752,6 +759,7 @@ declare const ZodEnsurePackageBundledOutput: z.ZodObject<{
|
|
|
752
759
|
}[] | undefined;
|
|
753
760
|
rawInput?: Record<string, unknown> | undefined;
|
|
754
761
|
rawOutput?: Record<string, unknown> | undefined;
|
|
762
|
+
imports?: Record<string, string[]> | undefined;
|
|
755
763
|
}, {
|
|
756
764
|
name: string;
|
|
757
765
|
outputPath: string;
|
|
@@ -817,6 +825,7 @@ declare const ZodEnsurePackageBundledOutput: z.ZodObject<{
|
|
|
817
825
|
}[] | undefined;
|
|
818
826
|
rawInput?: Record<string, unknown> | undefined;
|
|
819
827
|
rawOutput?: Record<string, unknown> | undefined;
|
|
828
|
+
imports?: Record<string, string[]> | undefined;
|
|
820
829
|
}>;
|
|
821
830
|
dependencies: z.ZodPromise<z.ZodArray<z.ZodObject<{
|
|
822
831
|
name: z.ZodString;
|
|
@@ -1079,6 +1088,7 @@ declare const ZodEnsurePackageBundledOutput: z.ZodObject<{
|
|
|
1079
1088
|
rawInput: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
1080
1089
|
rawOutput: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
1081
1090
|
isExternal: z.ZodBoolean;
|
|
1091
|
+
imports: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString, "many">>>;
|
|
1082
1092
|
}, "strip", z.ZodTypeAny, {
|
|
1083
1093
|
name: string;
|
|
1084
1094
|
outputPath: string;
|
|
@@ -1144,6 +1154,7 @@ declare const ZodEnsurePackageBundledOutput: z.ZodObject<{
|
|
|
1144
1154
|
}[] | undefined;
|
|
1145
1155
|
rawInput?: Record<string, unknown> | undefined;
|
|
1146
1156
|
rawOutput?: Record<string, unknown> | undefined;
|
|
1157
|
+
imports?: Record<string, string[]> | undefined;
|
|
1147
1158
|
}, {
|
|
1148
1159
|
name: string;
|
|
1149
1160
|
outputPath: string;
|
|
@@ -1209,6 +1220,7 @@ declare const ZodEnsurePackageBundledOutput: z.ZodObject<{
|
|
|
1209
1220
|
}[] | undefined;
|
|
1210
1221
|
rawInput?: Record<string, unknown> | undefined;
|
|
1211
1222
|
rawOutput?: Record<string, unknown> | undefined;
|
|
1223
|
+
imports?: Record<string, string[]> | undefined;
|
|
1212
1224
|
}>, "many">>;
|
|
1213
1225
|
}, "strip", z.ZodTypeAny, {
|
|
1214
1226
|
result: {
|
|
@@ -1276,6 +1288,7 @@ declare const ZodEnsurePackageBundledOutput: z.ZodObject<{
|
|
|
1276
1288
|
}[] | undefined;
|
|
1277
1289
|
rawInput?: Record<string, unknown> | undefined;
|
|
1278
1290
|
rawOutput?: Record<string, unknown> | undefined;
|
|
1291
|
+
imports?: Record<string, string[]> | undefined;
|
|
1279
1292
|
};
|
|
1280
1293
|
dependencies: Promise<{
|
|
1281
1294
|
name: string;
|
|
@@ -1342,6 +1355,7 @@ declare const ZodEnsurePackageBundledOutput: z.ZodObject<{
|
|
|
1342
1355
|
}[] | undefined;
|
|
1343
1356
|
rawInput?: Record<string, unknown> | undefined;
|
|
1344
1357
|
rawOutput?: Record<string, unknown> | undefined;
|
|
1358
|
+
imports?: Record<string, string[]> | undefined;
|
|
1345
1359
|
}[]>;
|
|
1346
1360
|
}, {
|
|
1347
1361
|
result: {
|
|
@@ -1409,6 +1423,7 @@ declare const ZodEnsurePackageBundledOutput: z.ZodObject<{
|
|
|
1409
1423
|
}[] | undefined;
|
|
1410
1424
|
rawInput?: Record<string, unknown> | undefined;
|
|
1411
1425
|
rawOutput?: Record<string, unknown> | undefined;
|
|
1426
|
+
imports?: Record<string, string[]> | undefined;
|
|
1412
1427
|
};
|
|
1413
1428
|
dependencies: Promise<{
|
|
1414
1429
|
name: string;
|
|
@@ -1475,6 +1490,7 @@ declare const ZodEnsurePackageBundledOutput: z.ZodObject<{
|
|
|
1475
1490
|
}[] | undefined;
|
|
1476
1491
|
rawInput?: Record<string, unknown> | undefined;
|
|
1477
1492
|
rawOutput?: Record<string, unknown> | undefined;
|
|
1493
|
+
imports?: Record<string, string[]> | undefined;
|
|
1478
1494
|
}[]>;
|
|
1479
1495
|
}>;
|
|
1480
1496
|
export type EnsurePackageBundledOutput = z.infer<typeof ZodEnsurePackageBundledOutput>;
|
|
@@ -1500,6 +1516,7 @@ export declare namespace ensurePackageBundled {
|
|
|
1500
1516
|
bundlerType?: string | undefined;
|
|
1501
1517
|
disableSourceMaps?: boolean | undefined;
|
|
1502
1518
|
enqueueDependencies?: boolean | undefined;
|
|
1519
|
+
shouldFindImports?: boolean | undefined;
|
|
1503
1520
|
shouldRerun?: boolean | undefined;
|
|
1504
1521
|
shouldWatch?: boolean | undefined;
|
|
1505
1522
|
shouldForce?: boolean | undefined;
|
|
@@ -1511,6 +1528,7 @@ export declare namespace ensurePackageBundled {
|
|
|
1511
1528
|
bundlerType?: string | undefined;
|
|
1512
1529
|
disableSourceMaps?: boolean | undefined;
|
|
1513
1530
|
enqueueDependencies?: boolean | undefined;
|
|
1531
|
+
shouldFindImports?: boolean | undefined;
|
|
1514
1532
|
shouldRerun?: boolean | undefined;
|
|
1515
1533
|
shouldWatch?: boolean | undefined;
|
|
1516
1534
|
shouldForce?: boolean | undefined;
|
|
@@ -1581,6 +1599,7 @@ export declare namespace ensurePackageBundled {
|
|
|
1581
1599
|
}[] | undefined;
|
|
1582
1600
|
rawInput?: Record<string, unknown> | undefined;
|
|
1583
1601
|
rawOutput?: Record<string, unknown> | undefined;
|
|
1602
|
+
imports?: Record<string, string[]> | undefined;
|
|
1584
1603
|
};
|
|
1585
1604
|
dependencies: Promise<{
|
|
1586
1605
|
name: string;
|
|
@@ -1647,6 +1666,7 @@ export declare namespace ensurePackageBundled {
|
|
|
1647
1666
|
}[] | undefined;
|
|
1648
1667
|
rawInput?: Record<string, unknown> | undefined;
|
|
1649
1668
|
rawOutput?: Record<string, unknown> | undefined;
|
|
1669
|
+
imports?: Record<string, string[]> | undefined;
|
|
1650
1670
|
}[]>;
|
|
1651
1671
|
};
|
|
1652
1672
|
_output_out: {
|
|
@@ -1715,6 +1735,7 @@ export declare namespace ensurePackageBundled {
|
|
|
1715
1735
|
}[] | undefined;
|
|
1716
1736
|
rawInput?: Record<string, unknown> | undefined;
|
|
1717
1737
|
rawOutput?: Record<string, unknown> | undefined;
|
|
1738
|
+
imports?: Record<string, string[]> | undefined;
|
|
1718
1739
|
};
|
|
1719
1740
|
dependencies: Promise<{
|
|
1720
1741
|
name: string;
|
|
@@ -1781,9 +1802,11 @@ export declare namespace ensurePackageBundled {
|
|
|
1781
1802
|
}[] | undefined;
|
|
1782
1803
|
rawInput?: Record<string, unknown> | undefined;
|
|
1783
1804
|
rawOutput?: Record<string, unknown> | undefined;
|
|
1805
|
+
imports?: Record<string, string[]> | undefined;
|
|
1784
1806
|
}[]>;
|
|
1785
1807
|
};
|
|
1786
1808
|
}, unknown>;
|
|
1787
1809
|
}
|
|
1810
|
+
export type EnsurePackageBundledContext = Parameters<typeof ensurePackageBundled>[0]['ctx'];
|
|
1788
1811
|
export {};
|
|
1789
1812
|
//# sourceMappingURL=ensurePackageBundled.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ensurePackageBundled.d.ts","sourceRoot":"","sources":["../../src/apis/ensurePackageBundled.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAQxB,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAEvD,QAAA,MAAM,4BAA4B
|
|
1
|
+
{"version":3,"file":"ensurePackageBundled.d.ts","sourceRoot":"","sources":["../../src/apis/ensurePackageBundled.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,7 @@ const ZodEnsurePackageBundledInput = z.object({
|
|
|
12
12
|
bundlerType: z.string().optional(),
|
|
13
13
|
disableSourceMaps: z.boolean().optional(),
|
|
14
14
|
enqueueDependencies: z.boolean().optional(),
|
|
15
|
+
shouldFindImports: z.boolean().optional(),
|
|
15
16
|
shouldRerun: z.boolean().optional(),
|
|
16
17
|
shouldWatch: z.boolean().optional(),
|
|
17
18
|
shouldForce: z.boolean().optional(),
|
|
@@ -37,6 +38,7 @@ const ZodEnsurePackageBundledOutputResult = z.object({
|
|
|
37
38
|
rawInput: z.record(z.unknown()).optional(),
|
|
38
39
|
rawOutput: z.record(z.unknown()).optional(),
|
|
39
40
|
isExternal: z.boolean(),
|
|
41
|
+
imports: z.record(z.array(z.string())).optional(),
|
|
40
42
|
});
|
|
41
43
|
const ZodEnsurePackageBundledOutput = z.object({
|
|
42
44
|
result: ZodEnsurePackageBundledOutputResult,
|
|
@@ -83,7 +85,7 @@ export async function ensurePackageBundled(params) {
|
|
|
83
85
|
}
|
|
84
86
|
async function ensurePackageBundledInternal(params) {
|
|
85
87
|
const { input, ctx, visited } = params;
|
|
86
|
-
const { name, version, shouldWatch, bundlerType, disableSourceMaps, outputPath, shouldRerun, shouldForce } = input;
|
|
88
|
+
const { name, version, shouldWatch, bundlerType, disableSourceMaps, outputPath, shouldFindImports, shouldRerun, shouldForce, } = input;
|
|
87
89
|
const { taskRunner, session, watcher, packages, reporter } = ctx;
|
|
88
90
|
const { resolveMap, config } = session;
|
|
89
91
|
const { features } = config;
|
|
@@ -101,7 +103,7 @@ async function ensurePackageBundledInternal(params) {
|
|
|
101
103
|
bundlerType,
|
|
102
104
|
disableSourceMaps,
|
|
103
105
|
outputPath,
|
|
104
|
-
enableFindImports: enqueueDependencies,
|
|
106
|
+
enableFindImports: shouldFindImports || enqueueDependencies,
|
|
105
107
|
}, { config, packages, resolveMap });
|
|
106
108
|
const task = createBundleTask({
|
|
107
109
|
bundleRequest,
|
|
@@ -129,8 +131,8 @@ async function ensurePackageBundledInternal(params) {
|
|
|
129
131
|
});
|
|
130
132
|
}
|
|
131
133
|
// If enabled, enqueue dependencies.
|
|
132
|
-
if (enqueueDependencies && result?.
|
|
133
|
-
for (const dependencyName of result.
|
|
134
|
+
if (enqueueDependencies && result?.imports) {
|
|
135
|
+
for (const dependencyName of Object.keys(result.imports)) {
|
|
134
136
|
// If we've already visited this package, skip it.
|
|
135
137
|
if (visited.has(`${dependencyName}@${packageEntry.dependencies[dependencyName]}`)) {
|
|
136
138
|
continue;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ensurePackageBundled.js","sourceRoot":"","sources":["../../src/apis/ensurePackageBundled.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from 'zod';\nimport { findResolveMapEntry } from '@ms-cloudpack/package-utilities';\nimport { publicProcedure } from '../trpc/common.js';\nimport { notifyReload } from '../utilities/notifyReload.js';\nimport type { BundleRequest } from '../types/BundleRequest.js';\nimport { createBundleTask } from '../utilities/createBundleTask.js';\nimport { createBundleRequestForPackage } from '../utilities/createBundleRequestForPackage.js';\nimport { ZodTaskMessage } from '../types/TaskMessage.js';\nimport type { ApiParams } from '../types/ApiParams.js';\n\nconst ZodEnsurePackageBundledInput = z.object({\n name: z.string(),\n version: z.string(),\n outputPath: z.string().optional(),\n bundlerType: z.string().optional(),\n disableSourceMaps: z.boolean().optional(),\n enqueueDependencies: z.boolean().optional(),\n shouldRerun: z.boolean().optional(),\n shouldWatch: z.boolean().optional(),\n shouldForce: z.boolean().optional(),\n});\n\nexport type EnsurePackageBundledInput = z.infer<typeof ZodEnsurePackageBundledInput>;\n\nconst ZodEnsurePackageBundledOutputResult = z.object({\n name: z.string(),\n version: z.string(),\n bundlerName: z.string().optional(),\n inputPath: z.string().optional(),\n outputPath: z.string(),\n entries: z.record(z.string()).optional(),\n dependencies: z.array(z.string()).optional(),\n hash: z.string().optional(),\n outputFiles: z\n .array(\n z.object({\n outputPath: z.string(),\n entryPoint: z.string().optional(),\n exports: z.array(z.string()).optional(),\n }),\n )\n .optional(),\n errors: z.array(ZodTaskMessage).optional(),\n warnings: z.array(ZodTaskMessage).optional(),\n rawInput: z.record(z.unknown()).optional(),\n rawOutput: z.record(z.unknown()).optional(),\n isExternal: z.boolean(),\n});\n\nexport type EnsurePackageBundledOutputResult = z.infer<typeof ZodEnsurePackageBundledOutputResult>;\n\nconst ZodEnsurePackageBundledOutput = z.object({\n result: ZodEnsurePackageBundledOutputResult,\n dependencies: z.promise(ZodEnsurePackageBundledOutputResult.array()),\n});\n\nexport type EnsurePackageBundledOutput = z.infer<typeof ZodEnsurePackageBundledOutput>;\n\n/**\n * Checks if the package is bundled or needs bundling, and returns the result. For internal packages,\n * we also notify the watcher to monitor for code changes.\n */\nexport async function ensurePackageBundled(\n params: ApiParams<EnsurePackageBundledInput, 'bus' | 'taskRunner' | 'session' | 'watcher' | 'packages' | 'reporter'>,\n): Promise<EnsurePackageBundledOutput> {\n const { input, ctx } = params;\n const promises: EnsurePackageBundledOutputResult[] = [];\n const visited = new Set<`${string}@${string}`>();\n\n const bundleResult = await ensurePackageBundledInternal({ input, ctx, visited });\n const { result } = bundleResult;\n const mainDependencies = bundleResult.dependencyInputs;\n\n let pending = 0;\n const dependencies = new Promise<EnsurePackageBundledOutputResult[]>((resolve) => {\n const enqueue = (dependencyInputs: EnsurePackageBundledInput[]) => {\n for (const dependencyInput of dependencyInputs) {\n pending++;\n void ensurePackageBundledInternal({\n input: dependencyInput,\n ctx,\n visited,\n }).then((dependencyBundleResult) => {\n pending--;\n promises.push(dependencyBundleResult.result);\n if (dependencyBundleResult.dependencyInputs.length > 0) {\n enqueue(dependencyBundleResult.dependencyInputs);\n }\n if (!pending) {\n resolve(promises);\n }\n });\n }\n };\n\n enqueue(mainDependencies);\n });\n\n return {\n result,\n dependencies,\n };\n}\n\nasync function ensurePackageBundledInternal(\n params: Parameters<typeof ensurePackageBundled>[0] & {\n visited: Set<`${string}@${string}`>;\n },\n): Promise<{ result: EnsurePackageBundledOutputResult; dependencyInputs: EnsurePackageBundledInput[] }> {\n const { input, ctx, visited } = params;\n const { name, version, shouldWatch, bundlerType, disableSourceMaps, outputPath, shouldRerun, shouldForce } = input;\n const { taskRunner, session, watcher, packages, reporter } = ctx;\n const { resolveMap, config } = session;\n const { features } = config;\n const enqueueDependencies = input.enqueueDependencies ?? features?.enqueueDependencies;\n const dependencyInputs: EnsurePackageBundledInput[] = [];\n\n visited.add(`${name}@${version}`);\n\n // First, we find the resolve map entry. This helps us resolve the physical location of the package\n // according to the resolveMap used in the session. (This can change based on linking.)\n const packageEntry = findResolveMapEntry({ packageName: name, version, resolveMap });\n\n if (!packageEntry) {\n throw new Error(`Could not find package ${name} in the resolve map.`);\n }\n\n const bundleRequest = await createBundleRequestForPackage(\n {\n packageEntry,\n bundlerType,\n disableSourceMaps,\n outputPath,\n enableFindImports: enqueueDependencies,\n },\n { config, packages, resolveMap },\n );\n\n const task = createBundleTask({\n bundleRequest,\n resolveMap,\n options: { force: shouldForce },\n reporter,\n });\n\n // TODO: Add lage scheduling back.\n const { result } = await taskRunner.add<BundleRequest>(task, { rerun: shouldRerun });\n\n if (!result) {\n throw new Error('Bundle failed, no result');\n }\n\n const { isExternal } = bundleRequest;\n\n // For internal packages, make sure we're watching the source to re-trigger bundling.\n if (shouldWatch && !isExternal) {\n const onPackageChange = async () => {\n const watchedResult = await taskRunner.add<BundleRequest>(task, { rerun: true });\n\n // If the result was successful, notify potential clients for reload.\n if (watchedResult.result?.errors?.length === 0) {\n notifyReload(ctx);\n }\n };\n watcher.watch(packageEntry, () => {\n void onPackageChange();\n });\n }\n\n // If enabled, enqueue dependencies.\n if (enqueueDependencies && result?.dependencies) {\n for (const dependencyName of result.dependencies) {\n // If we've already visited this package, skip it.\n if (visited.has(`${dependencyName}@${packageEntry.dependencies[dependencyName]}`)) {\n continue;\n }\n\n dependencyInputs.push({\n name: dependencyName,\n version: packageEntry.dependencies[dependencyName],\n shouldWatch,\n enqueueDependencies,\n });\n }\n }\n\n return {\n result: {\n version,\n name,\n isExternal,\n outputPath: result.outputPath ?? bundleRequest.outputPath,\n ...result,\n },\n dependencyInputs,\n };\n}\n\n// Attach a trpc procedure to the function.\nensurePackageBundled.procedure = publicProcedure\n .input(ZodEnsurePackageBundledInput)\n .output(ZodEnsurePackageBundledOutput)\n .mutation(ensurePackageBundled);\n"]}
|
|
1
|
+
{"version":3,"file":"ensurePackageBundled.js","sourceRoot":"","sources":["../../src/apis/ensurePackageBundled.ts"],"names":[],"mappings":"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","sourcesContent":["import { z } from 'zod';\nimport { findResolveMapEntry } from '@ms-cloudpack/package-utilities';\nimport { publicProcedure } from '../trpc/common.js';\nimport { notifyReload } from '../utilities/notifyReload.js';\nimport type { BundleRequest } from '../types/BundleRequest.js';\nimport { createBundleTask } from '../utilities/createBundleTask.js';\nimport { createBundleRequestForPackage } from '../utilities/createBundleRequestForPackage.js';\nimport { ZodTaskMessage } from '../types/TaskMessage.js';\nimport type { ApiParams } from '../types/ApiParams.js';\n\nconst ZodEnsurePackageBundledInput = z.object({\n name: z.string(),\n version: z.string(),\n outputPath: z.string().optional(),\n bundlerType: z.string().optional(),\n disableSourceMaps: z.boolean().optional(),\n enqueueDependencies: z.boolean().optional(),\n shouldFindImports: z.boolean().optional(),\n shouldRerun: z.boolean().optional(),\n shouldWatch: z.boolean().optional(),\n shouldForce: z.boolean().optional(),\n});\n\nexport type EnsurePackageBundledInput = z.infer<typeof ZodEnsurePackageBundledInput>;\n\nconst ZodEnsurePackageBundledOutputResult = z.object({\n name: z.string(),\n version: z.string(),\n bundlerName: z.string().optional(),\n inputPath: z.string().optional(),\n outputPath: z.string(),\n entries: z.record(z.string()).optional(),\n dependencies: z.array(z.string()).optional(),\n hash: z.string().optional(),\n outputFiles: z\n .array(\n z.object({\n outputPath: z.string(),\n entryPoint: z.string().optional(),\n exports: z.array(z.string()).optional(),\n }),\n )\n .optional(),\n errors: z.array(ZodTaskMessage).optional(),\n warnings: z.array(ZodTaskMessage).optional(),\n rawInput: z.record(z.unknown()).optional(),\n rawOutput: z.record(z.unknown()).optional(),\n isExternal: z.boolean(),\n imports: z.record(z.array(z.string())).optional(),\n});\n\nexport type EnsurePackageBundledOutputResult = z.infer<typeof ZodEnsurePackageBundledOutputResult>;\n\nconst ZodEnsurePackageBundledOutput = z.object({\n result: ZodEnsurePackageBundledOutputResult,\n dependencies: z.promise(ZodEnsurePackageBundledOutputResult.array()),\n});\n\nexport type EnsurePackageBundledOutput = z.infer<typeof ZodEnsurePackageBundledOutput>;\n\n/**\n * Checks if the package is bundled or needs bundling, and returns the result. For internal packages,\n * we also notify the watcher to monitor for code changes.\n */\nexport async function ensurePackageBundled(\n params: ApiParams<EnsurePackageBundledInput, 'bus' | 'taskRunner' | 'session' | 'watcher' | 'packages' | 'reporter'>,\n): Promise<EnsurePackageBundledOutput> {\n const { input, ctx } = params;\n const promises: EnsurePackageBundledOutputResult[] = [];\n const visited = new Set<`${string}@${string}`>();\n const bundleResult = await ensurePackageBundledInternal({ input, ctx, visited });\n const { result } = bundleResult;\n const mainDependencies = bundleResult.dependencyInputs;\n\n let pending = 0;\n const dependencies = new Promise<EnsurePackageBundledOutputResult[]>((resolve) => {\n const enqueue = (dependencyInputs: EnsurePackageBundledInput[]) => {\n for (const dependencyInput of dependencyInputs) {\n pending++;\n void ensurePackageBundledInternal({\n input: dependencyInput,\n ctx,\n visited,\n }).then((dependencyBundleResult) => {\n pending--;\n promises.push(dependencyBundleResult.result);\n if (dependencyBundleResult.dependencyInputs.length > 0) {\n enqueue(dependencyBundleResult.dependencyInputs);\n }\n if (!pending) {\n resolve(promises);\n }\n });\n }\n };\n\n enqueue(mainDependencies);\n });\n\n return {\n result,\n dependencies,\n };\n}\n\nasync function ensurePackageBundledInternal(\n params: Parameters<typeof ensurePackageBundled>[0] & {\n visited: Set<`${string}@${string}`>;\n },\n): Promise<{ result: EnsurePackageBundledOutputResult; dependencyInputs: EnsurePackageBundledInput[] }> {\n const { input, ctx, visited } = params;\n const {\n name,\n version,\n shouldWatch,\n bundlerType,\n disableSourceMaps,\n outputPath,\n shouldFindImports,\n shouldRerun,\n shouldForce,\n } = input;\n const { taskRunner, session, watcher, packages, reporter } = ctx;\n const { resolveMap, config } = session;\n const { features } = config;\n const enqueueDependencies = input.enqueueDependencies ?? features?.enqueueDependencies;\n const dependencyInputs: EnsurePackageBundledInput[] = [];\n\n visited.add(`${name}@${version}`);\n\n // First, we find the resolve map entry. This helps us resolve the physical location of the package\n // according to the resolveMap used in the session. (This can change based on linking.)\n const packageEntry = findResolveMapEntry({ packageName: name, version, resolveMap });\n\n if (!packageEntry) {\n throw new Error(`Could not find package ${name} in the resolve map.`);\n }\n\n const bundleRequest = await createBundleRequestForPackage(\n {\n packageEntry,\n bundlerType,\n disableSourceMaps,\n outputPath,\n enableFindImports: shouldFindImports || enqueueDependencies,\n },\n { config, packages, resolveMap },\n );\n\n const task = createBundleTask({\n bundleRequest,\n resolveMap,\n options: { force: shouldForce },\n reporter,\n });\n\n // TODO: Add lage scheduling back.\n const { result } = await taskRunner.add<BundleRequest>(task, { rerun: shouldRerun });\n\n if (!result) {\n throw new Error('Bundle failed, no result');\n }\n\n const { isExternal } = bundleRequest;\n\n // For internal packages, make sure we're watching the source to re-trigger bundling.\n if (shouldWatch && !isExternal) {\n const onPackageChange = async () => {\n const watchedResult = await taskRunner.add<BundleRequest>(task, { rerun: true });\n\n // If the result was successful, notify potential clients for reload.\n if (watchedResult.result?.errors?.length === 0) {\n notifyReload(ctx);\n }\n };\n watcher.watch(packageEntry, () => {\n void onPackageChange();\n });\n }\n\n // If enabled, enqueue dependencies.\n if (enqueueDependencies && result?.imports) {\n for (const dependencyName of Object.keys(result.imports)) {\n // If we've already visited this package, skip it.\n if (visited.has(`${dependencyName}@${packageEntry.dependencies[dependencyName]}`)) {\n continue;\n }\n\n dependencyInputs.push({\n name: dependencyName,\n version: packageEntry.dependencies[dependencyName],\n shouldWatch,\n enqueueDependencies,\n });\n }\n }\n\n return {\n result: {\n version,\n name,\n isExternal,\n outputPath: result.outputPath ?? bundleRequest.outputPath,\n ...result,\n },\n dependencyInputs,\n };\n}\n\n// Attach a trpc procedure to the function.\nensurePackageBundled.procedure = publicProcedure\n .input(ZodEnsurePackageBundledInput)\n .output(ZodEnsurePackageBundledOutput)\n .mutation(ensurePackageBundled);\n\nexport type EnsurePackageBundledContext = Parameters<typeof ensurePackageBundled>[0]['ctx'];\n"]}
|
package/lib/apis/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export type { EnsurePackageBundledInput, EnsurePackageBundledOutput, EnsurePackageBundledContext, EnsurePackageBundledOutputResult, } from './ensurePackageBundled.js';
|
|
1
2
|
export { addPackageOverride } from './addPackageOverride.js';
|
|
2
3
|
export { ensurePackageBundled } from './ensurePackageBundled.js';
|
|
3
4
|
export { getData } from './getData.js';
|
package/lib/apis/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/apis/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/apis/index.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,yBAAyB,EACzB,0BAA0B,EAC1B,2BAA2B,EAC3B,gCAAgC,GACjC,MAAM,2BAA2B,CAAC;AAEnC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC"}
|
package/lib/apis/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/apis/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/apis/index.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC","sourcesContent":["export type {\n EnsurePackageBundledInput,\n EnsurePackageBundledOutput,\n EnsurePackageBundledContext,\n EnsurePackageBundledOutputResult,\n} from './ensurePackageBundled.js';\n\nexport { addPackageOverride } from './addPackageOverride.js';\nexport { ensurePackageBundled } from './ensurePackageBundled.js';\nexport { getData } from './getData.js';\nexport { getSessionId } from './getSessionId.js';\nexport { onDataChanged } from './onDataChanged.js';\nexport { openCodeEditor } from './openCodeEditor.js';\nexport { openConfigEditor } from './openConfigEditor.js';\nexport { openFilePath } from './openFilePath.js';\nexport { reportMetric } from './reportMetric.js';\nexport { syncDownload } from './syncDownload.js';\nexport { syncUpload } from './syncUpload.js';\nexport { validatePackageOverride } from './validatePackageOverride.js';\n"]}
|
package/lib/apis.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export type { EnsurePackageBundledInput, EnsurePackageBundledOutput, EnsurePackageBundledContext, EnsurePackageBundledOutputResult, } from './apis/index.js';
|
|
1
2
|
export { addPackageOverride, ensurePackageBundled, getData, getSessionId, onDataChanged, openCodeEditor, openConfigEditor, openFilePath, reportMetric, syncDownload, syncUpload, validatePackageOverride, } from './apis/index.js';
|
|
2
3
|
export { createPartialApiContext } from './common/createPartialApiContext.js';
|
|
3
4
|
//# sourceMappingURL=apis.d.ts.map
|
package/lib/apis.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apis.d.ts","sourceRoot":"","sources":["../src/apis.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,OAAO,EACP,YAAY,EACZ,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,uBAAuB,GACxB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC"}
|
|
1
|
+
{"version":3,"file":"apis.d.ts","sourceRoot":"","sources":["../src/apis.ts"],"names":[],"mappings":"AAAA,YAAY,EACV,yBAAyB,EACzB,0BAA0B,EAC1B,2BAA2B,EAC3B,gCAAgC,GACjC,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,OAAO,EACP,YAAY,EACZ,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,uBAAuB,GACxB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC"}
|
package/lib/apis.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"apis.js","sourceRoot":"","sources":["../src/apis.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"apis.js","sourceRoot":"","sources":["../src/apis.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,OAAO,EACP,YAAY,EACZ,aAAa,EACb,cAAc,EACd,gBAAgB,EAChB,YAAY,EACZ,YAAY,EACZ,YAAY,EACZ,UAAU,EACV,uBAAuB,GACxB,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC","sourcesContent":["export type {\n EnsurePackageBundledInput,\n EnsurePackageBundledOutput,\n EnsurePackageBundledContext,\n EnsurePackageBundledOutputResult,\n} from './apis/index.js';\n\nexport {\n addPackageOverride,\n ensurePackageBundled,\n getData,\n getSessionId,\n onDataChanged,\n openCodeEditor,\n openConfigEditor,\n openFilePath,\n reportMetric,\n syncDownload,\n syncUpload,\n validatePackageOverride,\n} from './apis/index.js';\n\nexport { createPartialApiContext } from './common/createPartialApiContext.js';\n"]}
|
|
@@ -45,6 +45,7 @@ export declare function createAppRouter(): {
|
|
|
45
45
|
bundlerType?: string | undefined;
|
|
46
46
|
disableSourceMaps?: boolean | undefined;
|
|
47
47
|
enqueueDependencies?: boolean | undefined;
|
|
48
|
+
shouldFindImports?: boolean | undefined;
|
|
48
49
|
shouldRerun?: boolean | undefined;
|
|
49
50
|
shouldWatch?: boolean | undefined;
|
|
50
51
|
shouldForce?: boolean | undefined;
|
|
@@ -56,6 +57,7 @@ export declare function createAppRouter(): {
|
|
|
56
57
|
bundlerType?: string | undefined;
|
|
57
58
|
disableSourceMaps?: boolean | undefined;
|
|
58
59
|
enqueueDependencies?: boolean | undefined;
|
|
60
|
+
shouldFindImports?: boolean | undefined;
|
|
59
61
|
shouldRerun?: boolean | undefined;
|
|
60
62
|
shouldWatch?: boolean | undefined;
|
|
61
63
|
shouldForce?: boolean | undefined;
|
|
@@ -126,6 +128,7 @@ export declare function createAppRouter(): {
|
|
|
126
128
|
}[] | undefined;
|
|
127
129
|
rawInput?: Record<string, unknown> | undefined;
|
|
128
130
|
rawOutput?: Record<string, unknown> | undefined;
|
|
131
|
+
imports?: Record<string, string[]> | undefined;
|
|
129
132
|
};
|
|
130
133
|
dependencies: Promise<{
|
|
131
134
|
name: string;
|
|
@@ -192,6 +195,7 @@ export declare function createAppRouter(): {
|
|
|
192
195
|
}[] | undefined;
|
|
193
196
|
rawInput?: Record<string, unknown> | undefined;
|
|
194
197
|
rawOutput?: Record<string, unknown> | undefined;
|
|
198
|
+
imports?: Record<string, string[]> | undefined;
|
|
195
199
|
}[]>;
|
|
196
200
|
};
|
|
197
201
|
_output_out: {
|
|
@@ -260,6 +264,7 @@ export declare function createAppRouter(): {
|
|
|
260
264
|
}[] | undefined;
|
|
261
265
|
rawInput?: Record<string, unknown> | undefined;
|
|
262
266
|
rawOutput?: Record<string, unknown> | undefined;
|
|
267
|
+
imports?: Record<string, string[]> | undefined;
|
|
263
268
|
};
|
|
264
269
|
dependencies: Promise<{
|
|
265
270
|
name: string;
|
|
@@ -326,6 +331,7 @@ export declare function createAppRouter(): {
|
|
|
326
331
|
}[] | undefined;
|
|
327
332
|
rawInput?: Record<string, unknown> | undefined;
|
|
328
333
|
rawOutput?: Record<string, unknown> | undefined;
|
|
334
|
+
imports?: Record<string, string[]> | undefined;
|
|
329
335
|
}[]>;
|
|
330
336
|
};
|
|
331
337
|
}, unknown>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createAppRouter.d.ts","sourceRoot":"","sources":["../../src/trpc/createAppRouter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,kBAAkB,CAAC;AAGzC,wBAAgB,eAAe
|
|
1
|
+
{"version":3,"file":"createAppRouter.d.ts","sourceRoot":"","sources":["../../src/trpc/createAppRouter.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,kBAAkB,CAAC;AAGzC,wBAAgB,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAK9B;AAED,MAAM,MAAM,SAAS,GAAG,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC,QAAQ,CAAC,CAAC"}
|
|
@@ -24,6 +24,7 @@ export declare function createCloudpackServer(options: {
|
|
|
24
24
|
bundlerType?: string | undefined;
|
|
25
25
|
disableSourceMaps?: boolean | undefined;
|
|
26
26
|
enqueueDependencies?: boolean | undefined;
|
|
27
|
+
shouldFindImports?: boolean | undefined;
|
|
27
28
|
shouldRerun?: boolean | undefined;
|
|
28
29
|
shouldWatch?: boolean | undefined;
|
|
29
30
|
shouldForce?: boolean | undefined;
|
|
@@ -93,6 +94,7 @@ export declare function createCloudpackServer(options: {
|
|
|
93
94
|
}[] | undefined;
|
|
94
95
|
rawInput?: Record<string, unknown> | undefined;
|
|
95
96
|
rawOutput?: Record<string, unknown> | undefined;
|
|
97
|
+
imports?: Record<string, string[]> | undefined;
|
|
96
98
|
};
|
|
97
99
|
dependencies: Promise<{
|
|
98
100
|
name: string;
|
|
@@ -159,6 +161,7 @@ export declare function createCloudpackServer(options: {
|
|
|
159
161
|
}[] | undefined;
|
|
160
162
|
rawInput?: Record<string, unknown> | undefined;
|
|
161
163
|
rawOutput?: Record<string, unknown> | undefined;
|
|
164
|
+
imports?: Record<string, string[]> | undefined;
|
|
162
165
|
}[]>;
|
|
163
166
|
}>;
|
|
164
167
|
getData: (options: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createCloudpackServer.d.ts","sourceRoot":"","sources":["../../src/trpc/createCloudpackServer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAI/D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAKnD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAE3E,wBAAsB,qBAAqB,CAAC,OAAO,EAAE;IACnD,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,eAAe,CAAC;IACjC,QAAQ,EAAE,YAAY,CAAC;IACvB,QAAQ,EAAE,uBAAuB,CAAC;CACnC
|
|
1
|
+
{"version":3,"file":"createCloudpackServer.d.ts","sourceRoot":"","sources":["../../src/trpc/createCloudpackServer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAI/D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAKnD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAE3E,wBAAsB,qBAAqB,CAAC,OAAO,EAAE;IACnD,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,eAAe,CAAC;IACjC,QAAQ,EAAE,YAAY,CAAC;IACvB,QAAQ,EAAE,uBAAuB,CAAC;CACnC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCA;AAED,MAAM,MAAM,eAAe,GAAG,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BundleRequest.d.ts","sourceRoot":"","sources":["../../src/types/BundleRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACzF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5D;;GAEG;AAEH,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,YAAY,GAAG;QAAE,
|
|
1
|
+
{"version":3,"file":"BundleRequest.d.ts","sourceRoot":"","sources":["../../src/types/BundleRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AACzF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5D;;GAEG;AAEH,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,YAAY,GAAG;QAAE,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC9E,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,2BAA2B,CAAC,EAAE,OAAO,CAAC;IACtC,QAAQ,EAAE,uBAAuB,CAAC;IAClC,MAAM,EAAE,eAAe,CAAC;CACzB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BundleRequest.js","sourceRoot":"","sources":["../../src/types/BundleRequest.ts"],"names":[],"mappings":"","sourcesContent":["import type { BundleResult, PackageDefinitionsCache } from '@ms-cloudpack/bundler-types';\nimport type { CloudpackConfig } from '@ms-cloudpack/config';\n\n/**\n * Tracks a given bundle request and its result.\n */\n\nexport interface BundleRequest {\n id: string;\n packageName: string;\n version: string;\n packagePath: string;\n outputPath: string;\n isExternal: boolean;\n bundlerType?: string;\n result?: BundleResult & {
|
|
1
|
+
{"version":3,"file":"BundleRequest.js","sourceRoot":"","sources":["../../src/types/BundleRequest.ts"],"names":[],"mappings":"","sourcesContent":["import type { BundleResult, PackageDefinitionsCache } from '@ms-cloudpack/bundler-types';\nimport type { CloudpackConfig } from '@ms-cloudpack/config';\n\n/**\n * Tracks a given bundle request and its result.\n */\n\nexport interface BundleRequest {\n id: string;\n packageName: string;\n version: string;\n packagePath: string;\n outputPath: string;\n isExternal: boolean;\n bundlerType?: string;\n result?: BundleResult & { imports?: Record<string, string[]>; hash?: string };\n resultFromCache?: boolean;\n isRebuildRequired?: boolean;\n disableSourceMaps?: boolean;\n enableFindImports?: boolean;\n enableCacheInternalPackages?: boolean;\n packages: PackageDefinitionsCache;\n config: CloudpackConfig;\n}\n"]}
|
|
@@ -9,7 +9,7 @@ import { formatBundleErrors } from './formatBundleErrors.js';
|
|
|
9
9
|
import { getFileSizeSync } from './getFileSizeSync.js';
|
|
10
10
|
import { hashPackage } from './hashPackage.js';
|
|
11
11
|
import { getPackageSettings } from '@ms-cloudpack/config';
|
|
12
|
-
import {
|
|
12
|
+
import { isCachedResultValid } from './validateBundleRequestResult.js';
|
|
13
13
|
export async function bundleTask(params) {
|
|
14
14
|
const { bundleRequest, options = {}, reporter, resolveMap } = params;
|
|
15
15
|
const { packageName, version } = bundleRequest;
|
|
@@ -90,7 +90,7 @@ async function bundle(bundleRequest, resolveMap, force) {
|
|
|
90
90
|
? await hashPackage({ packagePath }, { packages, resolveMap })
|
|
91
91
|
: undefined;
|
|
92
92
|
// if the cached result is valid, use it.
|
|
93
|
-
if (
|
|
93
|
+
if (!force && isCachedResultValid({ bundleRequest, hash })) {
|
|
94
94
|
console.debug(`Using cached result for ${bundleRequest.packageName}@${bundleRequest.version}`);
|
|
95
95
|
bundleRequest.resultFromCache = true;
|
|
96
96
|
}
|
|
@@ -100,18 +100,30 @@ async function bundle(bundleRequest, resolveMap, force) {
|
|
|
100
100
|
await prepareOutputPath(outputPath);
|
|
101
101
|
bundleRequest.result = await bundleInternal(bundleOptions);
|
|
102
102
|
bundleRequest.result.hash = hash;
|
|
103
|
-
if (enableFindImports) {
|
|
104
|
-
// Find imports that are in the output files and set dependencies.
|
|
105
|
-
const outputFilePaths = bundleRequest.result.outputFiles?.map((f) => f.outputPath);
|
|
106
|
-
const imports = outputFilePaths && (await findImports(outputFilePaths));
|
|
107
|
-
bundleRequest.result.dependencies = imports && Object.keys(imports);
|
|
108
|
-
}
|
|
109
103
|
// Write the result to disk.
|
|
110
104
|
if (isExternal || enableCacheInternalPackages) {
|
|
111
|
-
|
|
105
|
+
const result = { ...bundleRequest.result };
|
|
106
|
+
// Clear the rawInput/output properties.
|
|
107
|
+
result.rawInput = result.rawOutput = undefined;
|
|
112
108
|
await writeJson(path.join(outputPath, 'result.json'), bundleRequest.result);
|
|
113
109
|
}
|
|
114
110
|
}
|
|
111
|
+
if (enableFindImports && !bundleRequest.result?.errors?.length && bundleRequest.result?.outputFiles?.length) {
|
|
112
|
+
const importsPath = path.join(outputPath, 'imports.json');
|
|
113
|
+
let imports = await readJson(importsPath);
|
|
114
|
+
// If we couldn't rehydrate imports from cache, compute them.
|
|
115
|
+
if (!imports) {
|
|
116
|
+
const scriptPaths = bundleRequest.result.outputFiles.map((f) => path.resolve(outputPath, f.outputPath));
|
|
117
|
+
imports = await findImports(scriptPaths);
|
|
118
|
+
// Write to cache for future use. (Ignore the promise result.)
|
|
119
|
+
// eslint-disable-next-line @typescript-eslint/no-floating-promises
|
|
120
|
+
writeJson(importsPath, imports);
|
|
121
|
+
}
|
|
122
|
+
bundleRequest.result.imports = imports;
|
|
123
|
+
// Find imports that are in the output files and set dependencies.
|
|
124
|
+
const outputFilePaths = bundleRequest.result.outputFiles?.map((f) => path.resolve(outputPath, f.outputPath));
|
|
125
|
+
bundleRequest.result.imports = outputFilePaths && (await findImports(outputFilePaths));
|
|
126
|
+
}
|
|
115
127
|
return bundleRequest;
|
|
116
128
|
}
|
|
117
129
|
//# sourceMappingURL=bundleTask.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bundleTask.js","sourceRoot":"","sources":["../../src/utilities/bundleTask.ts"],"names":[],"mappings":"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","sourcesContent":["import { bundle as bundleInternal, getEntriesMapFromPackage, getExternalsFromPackage } from '@ms-cloudpack/bundler';\nimport { readJson, writeJson } from '@ms-cloudpack/json-utilities';\nimport { safeRelativePath } from '@ms-cloudpack/path-string-parsing';\nimport {\n bulletedList,\n formatPackageName,\n type TaskReporter,\n type TaskReporterTaskResult,\n} from '@ms-cloudpack/task-reporter';\nimport path from 'path';\nimport { findImports } from './findImports.js';\nimport { prepareOutputPath } from '../common/prepareOutputPath.js';\nimport type { BundleTaskOptions } from '../types/BundleTaskOptions.js';\nimport type { BundleRequest } from '../types/BundleRequest.js';\nimport { formatBundleErrors } from './formatBundleErrors.js';\nimport { getFileSizeSync } from './getFileSizeSync.js';\nimport { hashPackage } from './hashPackage.js';\nimport type { BundleOptions } from '@ms-cloudpack/bundler-types';\nimport { getPackageSettings } from '@ms-cloudpack/config';\nimport { validateBundleRequestResult } from './validateBundleRequestResult.js';\nimport type { ResolveMap } from '@ms-cloudpack/package-utilities';\n\nexport async function bundleTask(params: {\n bundleRequest: BundleRequest;\n options?: BundleTaskOptions;\n reporter?: TaskReporter;\n resolveMap: ResolveMap;\n}): Promise<BundleRequest> {\n const { bundleRequest, options = {}, reporter, resolveMap } = params;\n const { packageName, version } = bundleRequest;\n const { force } = options || {};\n\n const { rebuild } = bundleRequest?.result || {};\n const taskName = `${rebuild ? `Re-bundle` : `Bundle`} ${formatPackageName({ name: packageName, version })}`;\n\n const executeBundle = async (): Promise<TaskReporterTaskResult> => {\n if (rebuild) {\n bundleRequest.result = await rebuild();\n } else {\n await bundle(bundleRequest, resolveMap, force);\n }\n\n const result = (bundleRequest.result ??= {});\n\n result.outputFiles ??= [];\n result.errors ??= [];\n result.warnings ??= [];\n\n if (!result.outputFiles.length && !result.errors?.length) {\n result.warnings.push({\n text: `No output files were found for \"${packageName}\" in \"${bundleRequest.outputPath}\"`,\n });\n }\n\n return {\n status: result.errors.length ? 'fail' : 'complete',\n ...(result.errors?.length\n ? formatBundleErrors(result.errors)\n : {\n details: bulletedList([\n `Package: ${bundleRequest.packageName}@${bundleRequest.version}`,\n `Bundler: ${bundleRequest.result?.bundlerName || 'unknown'}`,\n `Input path: ${bundleRequest.packagePath}`,\n `Entries:`,\n Object.values(bundleRequest.result?.entries || {}),\n `Output path: ${bundleRequest.outputPath}`,\n bundleRequest.result?.outputFiles?.map(\n (file) =>\n `${safeRelativePath(path.relative(bundleRequest.outputPath, file.outputPath))} (${getFileSizeSync(\n file.outputPath,\n )})`,\n ),\n ]),\n }),\n };\n };\n\n if (reporter) {\n await reporter.runTask(taskName, executeBundle);\n } else {\n await executeBundle();\n }\n\n return bundleRequest;\n}\n\nasync function bundle(bundleRequest: BundleRequest, resolveMap: ResolveMap, force?: boolean): Promise<BundleRequest> {\n const { packages, config } = bundleRequest;\n const context = { packages, config };\n\n // If force is set, dispose the existing result.\n if (force && bundleRequest?.result?.dispose) {\n bundleRequest.result.dispose();\n bundleRequest.result = undefined;\n }\n\n const { packagePath, outputPath, isExternal, disableSourceMaps, enableFindImports, enableCacheInternalPackages } =\n bundleRequest;\n\n // Rehydrate the result if not incremental.\n if ((isExternal || enableCacheInternalPackages) && !force) {\n bundleRequest.result = await readJson(path.join(outputPath, 'result.json'));\n }\n\n const { userPackageSettings } =\n getPackageSettings({\n name: bundleRequest.packageName,\n version: bundleRequest.version,\n config,\n }) || {};\n const { bundlerType, bundlerOptions } = userPackageSettings || {};\n\n const bundleOptions: BundleOptions = {\n bundlerType: bundleRequest.bundlerType || bundlerType,\n overrideOptions: bundlerOptions,\n inputPath: packagePath,\n outputPath,\n incremental: !isExternal,\n sourcemap: disableSourceMaps ? undefined : 'linked',\n entries: await getEntriesMapFromPackage({ inputPath: packagePath }, context),\n external: await getExternalsFromPackage({ inputPath: packagePath }, context),\n };\n\n const hash =\n !isExternal && enableCacheInternalPackages\n ? await hashPackage({ packagePath }, { packages, resolveMap })\n : undefined;\n\n // if the cached result is valid, use it.\n if (validateBundleRequestResult({ bundleRequest, hash })) {\n console.debug(`Using cached result for ${bundleRequest.packageName}@${bundleRequest.version}`);\n bundleRequest.resultFromCache = true;\n } else {\n bundleRequest.resultFromCache = false;\n\n // Only use cached result if it's successful.\n await prepareOutputPath(outputPath);\n\n bundleRequest.result = await bundleInternal(bundleOptions);\n bundleRequest.result.hash = hash;\n\n if (enableFindImports) {\n // Find imports that are in the output files and set dependencies.\n const outputFilePaths = bundleRequest.result.outputFiles?.map((f) => f.outputPath);\n const imports = outputFilePaths && (await findImports(outputFilePaths));\n bundleRequest.result.dependencies = imports && Object.keys(imports);\n }\n\n // Write the result to disk.\n if (isExternal || enableCacheInternalPackages) {\n bundleRequest.result.rawInput = bundleRequest.result.rawOutput = undefined;\n await writeJson(path.join(outputPath, 'result.json'), bundleRequest.result);\n }\n }\n\n return bundleRequest;\n}\n"]}
|
|
1
|
+
{"version":3,"file":"bundleTask.js","sourceRoot":"","sources":["../../src/utilities/bundleTask.ts"],"names":[],"mappings":"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","sourcesContent":["import { bundle as bundleInternal, getEntriesMapFromPackage, getExternalsFromPackage } from '@ms-cloudpack/bundler';\nimport { readJson, writeJson } from '@ms-cloudpack/json-utilities';\nimport { safeRelativePath } from '@ms-cloudpack/path-string-parsing';\nimport {\n bulletedList,\n formatPackageName,\n type TaskReporter,\n type TaskReporterTaskResult,\n} from '@ms-cloudpack/task-reporter';\nimport path from 'path';\nimport { findImports } from './findImports.js';\nimport { prepareOutputPath } from '../common/prepareOutputPath.js';\nimport type { BundleTaskOptions } from '../types/BundleTaskOptions.js';\nimport type { BundleRequest } from '../types/BundleRequest.js';\nimport { formatBundleErrors } from './formatBundleErrors.js';\nimport { getFileSizeSync } from './getFileSizeSync.js';\nimport { hashPackage } from './hashPackage.js';\nimport type { BundleOptions } from '@ms-cloudpack/bundler-types';\nimport { getPackageSettings } from '@ms-cloudpack/config';\nimport { isCachedResultValid } from './validateBundleRequestResult.js';\nimport type { ResolveMap } from '@ms-cloudpack/package-utilities';\n\nexport async function bundleTask(params: {\n bundleRequest: BundleRequest;\n options?: BundleTaskOptions;\n reporter?: TaskReporter;\n resolveMap: ResolveMap;\n}): Promise<BundleRequest> {\n const { bundleRequest, options = {}, reporter, resolveMap } = params;\n const { packageName, version } = bundleRequest;\n const { force } = options || {};\n\n const { rebuild } = bundleRequest?.result || {};\n const taskName = `${rebuild ? `Re-bundle` : `Bundle`} ${formatPackageName({ name: packageName, version })}`;\n\n const executeBundle = async (): Promise<TaskReporterTaskResult> => {\n if (rebuild) {\n bundleRequest.result = await rebuild();\n } else {\n await bundle(bundleRequest, resolveMap, force);\n }\n\n const result = (bundleRequest.result ??= {});\n\n result.outputFiles ??= [];\n result.errors ??= [];\n result.warnings ??= [];\n\n if (!result.outputFiles.length && !result.errors?.length) {\n result.warnings.push({\n text: `No output files were found for \"${packageName}\" in \"${bundleRequest.outputPath}\"`,\n });\n }\n\n return {\n status: result.errors.length ? 'fail' : 'complete',\n ...(result.errors?.length\n ? formatBundleErrors(result.errors)\n : {\n details: bulletedList([\n `Package: ${bundleRequest.packageName}@${bundleRequest.version}`,\n `Bundler: ${bundleRequest.result?.bundlerName || 'unknown'}`,\n `Input path: ${bundleRequest.packagePath}`,\n `Entries:`,\n Object.values(bundleRequest.result?.entries || {}),\n `Output path: ${bundleRequest.outputPath}`,\n bundleRequest.result?.outputFiles?.map(\n (file) =>\n `${safeRelativePath(path.relative(bundleRequest.outputPath, file.outputPath))} (${getFileSizeSync(\n file.outputPath,\n )})`,\n ),\n ]),\n }),\n };\n };\n\n if (reporter) {\n await reporter.runTask(taskName, executeBundle);\n } else {\n await executeBundle();\n }\n\n return bundleRequest;\n}\n\nasync function bundle(bundleRequest: BundleRequest, resolveMap: ResolveMap, force?: boolean): Promise<BundleRequest> {\n const { packages, config } = bundleRequest;\n const context = { packages, config };\n\n // If force is set, dispose the existing result.\n if (force && bundleRequest?.result?.dispose) {\n bundleRequest.result.dispose();\n bundleRequest.result = undefined;\n }\n\n const { packagePath, outputPath, isExternal, disableSourceMaps, enableFindImports, enableCacheInternalPackages } =\n bundleRequest;\n\n // Rehydrate the result if not incremental.\n if ((isExternal || enableCacheInternalPackages) && !force) {\n bundleRequest.result = await readJson(path.join(outputPath, 'result.json'));\n }\n\n const { userPackageSettings } =\n getPackageSettings({\n name: bundleRequest.packageName,\n version: bundleRequest.version,\n config,\n }) || {};\n const { bundlerType, bundlerOptions } = userPackageSettings || {};\n\n const bundleOptions: BundleOptions = {\n bundlerType: bundleRequest.bundlerType || bundlerType,\n overrideOptions: bundlerOptions,\n inputPath: packagePath,\n outputPath,\n incremental: !isExternal,\n sourcemap: disableSourceMaps ? undefined : 'linked',\n entries: await getEntriesMapFromPackage({ inputPath: packagePath }, context),\n external: await getExternalsFromPackage({ inputPath: packagePath }, context),\n };\n\n const hash =\n !isExternal && enableCacheInternalPackages\n ? await hashPackage({ packagePath }, { packages, resolveMap })\n : undefined;\n\n // if the cached result is valid, use it.\n if (!force && isCachedResultValid({ bundleRequest, hash })) {\n console.debug(`Using cached result for ${bundleRequest.packageName}@${bundleRequest.version}`);\n bundleRequest.resultFromCache = true;\n } else {\n bundleRequest.resultFromCache = false;\n\n // Only use cached result if it's successful.\n await prepareOutputPath(outputPath);\n\n bundleRequest.result = await bundleInternal(bundleOptions);\n bundleRequest.result.hash = hash;\n\n // Write the result to disk.\n if (isExternal || enableCacheInternalPackages) {\n const result = { ...bundleRequest.result };\n\n // Clear the rawInput/output properties.\n result.rawInput = result.rawOutput = undefined;\n\n await writeJson(path.join(outputPath, 'result.json'), bundleRequest.result);\n }\n }\n\n if (enableFindImports && !bundleRequest.result?.errors?.length && bundleRequest.result?.outputFiles?.length) {\n const importsPath = path.join(outputPath, 'imports.json');\n let imports = await readJson<Record<string, string[]>>(importsPath);\n\n // If we couldn't rehydrate imports from cache, compute them.\n if (!imports) {\n const scriptPaths = bundleRequest.result.outputFiles.map((f) => path.resolve(outputPath, f.outputPath));\n\n imports = await findImports(scriptPaths);\n\n // Write to cache for future use. (Ignore the promise result.)\n // eslint-disable-next-line @typescript-eslint/no-floating-promises\n writeJson(importsPath, imports);\n }\n\n bundleRequest.result.imports = imports;\n\n // Find imports that are in the output files and set dependencies.\n const outputFilePaths = bundleRequest.result.outputFiles?.map((f) => path.resolve(outputPath, f.outputPath));\n bundleRequest.result.imports = outputFilePaths && (await findImports(outputFilePaths));\n }\n\n return bundleRequest;\n}\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Returns a dictionary where key is the package name and value is a set of required paths.
|
|
3
|
-
* Eg. `{ '@fluentui/react':
|
|
3
|
+
* Eg. `{ '@fluentui/react': [ '.', './lib/Button' ] }`
|
|
4
4
|
*/
|
|
5
|
-
export declare function findImports(filePaths: string[]): Promise<Record<string,
|
|
5
|
+
export declare function findImports(filePaths: string[]): Promise<Record<string, string[]>>;
|
|
6
6
|
//# sourceMappingURL=findImports.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findImports.d.ts","sourceRoot":"","sources":["../../src/utilities/findImports.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"findImports.d.ts","sourceRoot":"","sources":["../../src/utilities/findImports.ts"],"names":[],"mappings":"AAMA;;;GAGG;AACH,wBAAsB,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC,CA6ExF"}
|
|
@@ -2,13 +2,10 @@ import { parse } from 'es-module-lexer';
|
|
|
2
2
|
import fsPromises from 'fs/promises';
|
|
3
3
|
import path from 'path';
|
|
4
4
|
import { parseImportString } from '@ms-cloudpack/path-string-parsing';
|
|
5
|
-
import { sourceExtensions } from '@ms-cloudpack/path-utilities';
|
|
6
5
|
import { builtinModules } from 'module';
|
|
7
|
-
/** Treat files with no extension as JS for purposes below */
|
|
8
|
-
const allSourceExtensions = [...sourceExtensions, ''];
|
|
9
6
|
/**
|
|
10
7
|
* Returns a dictionary where key is the package name and value is a set of required paths.
|
|
11
|
-
* Eg. `{ '@fluentui/react':
|
|
8
|
+
* Eg. `{ '@fluentui/react': [ '.', './lib/Button' ] }`
|
|
12
9
|
*/
|
|
13
10
|
export async function findImports(filePaths) {
|
|
14
11
|
const requiredExports = {};
|
|
@@ -17,7 +14,7 @@ export async function findImports(filePaths) {
|
|
|
17
14
|
while (pathsToParse.length) {
|
|
18
15
|
const filePath = pathsToParse.shift();
|
|
19
16
|
// Ignore any non-JS/TS files such as SVGs and sourcemaps
|
|
20
|
-
if (!filePath ||
|
|
17
|
+
if (!filePath || path.extname(filePath) !== '.js') {
|
|
21
18
|
continue;
|
|
22
19
|
}
|
|
23
20
|
const source = await fsPromises.readFile(filePath, 'utf-8');
|
|
@@ -71,6 +68,9 @@ export async function findImports(filePaths) {
|
|
|
71
68
|
}
|
|
72
69
|
}
|
|
73
70
|
}
|
|
74
|
-
return requiredExports
|
|
71
|
+
return Object.entries(requiredExports).reduce((acc, [packageName, importPaths]) => {
|
|
72
|
+
acc[packageName] = Array.from(importPaths);
|
|
73
|
+
return acc;
|
|
74
|
+
}, {});
|
|
75
75
|
}
|
|
76
76
|
//# sourceMappingURL=findImports.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"findImports.js","sourceRoot":"","sources":["../../src/utilities/findImports.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AACxC,OAAO,UAAU,MAAM,aAAa,CAAC;AACrC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,iBAAiB,EAA2B,MAAM,mCAAmC,CAAC;AAC/F,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"findImports.js","sourceRoot":"","sources":["../../src/utilities/findImports.ts"],"names":[],"mappings":"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","sourcesContent":["import { parse } from 'es-module-lexer';\nimport fsPromises from 'fs/promises';\nimport path from 'path';\nimport { parseImportString, type ImportStringResult } from '@ms-cloudpack/path-string-parsing';\nimport { builtinModules } from 'module';\n\n/**\n * Returns a dictionary where key is the package name and value is a set of required paths.\n * Eg. `{ '@fluentui/react': [ '.', './lib/Button' ] }`\n */\nexport async function findImports(filePaths: string[]): Promise<Record<string, string[]>> {\n const requiredExports: Record<string, Set<string>> = {};\n const visitedPaths = new Set(filePaths);\n const pathsToParse: string[] = [...filePaths];\n\n while (pathsToParse.length) {\n const filePath = pathsToParse.shift();\n // Ignore any non-JS/TS files such as SVGs and sourcemaps\n if (!filePath || path.extname(filePath) !== '.js') {\n continue;\n }\n\n const source = await fsPromises.readFile(filePath, 'utf-8');\n let rawImports: ReturnType<typeof parse>[0];\n try {\n // es-module-lexer/parse may return Promise in some conditions\n // although it is not declared in the type definition\n // https://github.com/guybedford/es-module-lexer/issues/155\n [rawImports] = await (parse(source) as unknown as Promise<ReturnType<typeof parse>>);\n } catch (err) {\n // This could happen if the source file isn't valid JS\n // (unlikely after adding the check above to only attempt parsing JS/TS files)\n console.warn(`Failed to parse ${filePath}:`, err, '\\nSource is:\\n', source);\n continue;\n }\n const imports = Array.from(new Set(rawImports))\n .map((i) => {\n // The es-module-lexer returns entries where the \"n\" property equals the import source.\n // This includes the package name and path. For example, in this case:\n //\n // import { Button } from '@fluentui/react/lib/Button';\n //\n // The \"n\" property would be \"@fluentui/react/lib/Button\".\n // The \"s\" and \"e\" properties represent the start/end character positions of\n // the import source. The \"ss\" and \"se\" properties represent the start/end\n // character positions of the import specifier starting with \"import\". This\n // may be useful for determining if the import is sync or async.\n //\n // Currently when the import source is a backtick string, the \"n\" property\n // is undefined. This is a bug in es-module-lexer. We may need to handle this\n // at the javascript layer and expand it into multiple potential imports.\n if (!i.n) {\n console.debug(\n `Found an import that didn't parse correctly:\\nFilename:\\n${filePath}\\n\\nImport:\\n${source.slice(\n i.s,\n i.e,\n )}`,\n );\n return undefined;\n }\n\n return parseImportString(i.n);\n })\n .filter(Boolean) as ImportStringResult[];\n\n for (const { packageName, importPath } of imports) {\n if (packageName?.startsWith('.')) {\n const localPath = path.resolve(path.dirname(filePath), packageName, importPath || '');\n\n if (!visitedPaths.has(localPath)) {\n visitedPaths.add(localPath);\n pathsToParse.push(localPath);\n }\n } else if (packageName && !packageName.startsWith('node:') && !builtinModules.includes(packageName)) {\n requiredExports[packageName] ??= new Set();\n requiredExports[packageName].add(importPath || '.');\n }\n }\n }\n\n return Object.entries(requiredExports).reduce(\n (acc, [packageName, importPaths]) => {\n acc[packageName] = Array.from(importPaths);\n return acc;\n },\n {} as Record<string, string[]>,\n );\n}\n"]}
|
|
@@ -1,17 +1,18 @@
|
|
|
1
|
-
import type { PackageDefinitionsCache
|
|
1
|
+
import type { PackageDefinitionsCache } from '@ms-cloudpack/bundler-types';
|
|
2
2
|
import { type ResolveMap } from '@ms-cloudpack/package-utilities';
|
|
3
3
|
import { type PackageIdentifier } from './getPackagePath.js';
|
|
4
4
|
/**
|
|
5
5
|
* @returns the entries that are used to calculate the hash of a package
|
|
6
6
|
*/
|
|
7
|
-
export declare function getPackageHashEntries(
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
7
|
+
export declare function getPackageHashEntries(options: {
|
|
8
|
+
packageIdentifier: PackageIdentifier;
|
|
9
|
+
context: {
|
|
10
|
+
packages: PackageDefinitionsCache;
|
|
11
|
+
resolveMap: ResolveMap;
|
|
12
|
+
};
|
|
11
13
|
}): Promise<{
|
|
12
14
|
version: string;
|
|
13
15
|
filesHash: Record<string, string> | null | undefined;
|
|
14
|
-
inlinedDependenciesHash: Record<string, string> | undefined;
|
|
15
16
|
name?: string | undefined;
|
|
16
17
|
description?: string | undefined;
|
|
17
18
|
files?: string[] | undefined;
|
|
@@ -45,7 +46,7 @@ export declare function getPackageHashEntries(packageIdentifier: PackageIdentifi
|
|
|
45
46
|
optionalDependencies?: Partial<Record<string, string>> | undefined;
|
|
46
47
|
bundledDependencies?: Partial<Record<string, string>> | undefined;
|
|
47
48
|
bundleDependencies?: Partial<Record<string, string>> | undefined;
|
|
48
|
-
inlinedDependencies?:
|
|
49
|
+
inlinedDependencies?: string[] | undefined;
|
|
49
50
|
engines?: {
|
|
50
51
|
[x: string & Record<never, never>]: string | undefined;
|
|
51
52
|
node?: string | undefined;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getPackageHashEntries.d.ts","sourceRoot":"","sources":["../../src/utilities/getPackageHashEntries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,
|
|
1
|
+
{"version":3,"file":"getPackageHashEntries.d.ts","sourceRoot":"","sources":["../../src/utilities/getPackageHashEntries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAC3E,OAAO,EAAqB,KAAK,UAAU,EAAE,MAAM,iCAAiC,CAAC;AACrF,OAAO,EAAkB,KAAK,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAG7E;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,OAAO,EAAE;IACnD,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,OAAO,EAAE;QACP,QAAQ,EAAE,uBAAuB,CAAC;QAClC,UAAU,EAAE,UAAU,CAAC;KACxB,CAAC;CACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BA"}
|
|
@@ -4,26 +4,25 @@ import { getSourceHash } from './getSourceHash.js';
|
|
|
4
4
|
/**
|
|
5
5
|
* @returns the entries that are used to calculate the hash of a package
|
|
6
6
|
*/
|
|
7
|
-
export async function getPackageHashEntries(
|
|
8
|
-
const {
|
|
9
|
-
const
|
|
7
|
+
export async function getPackageHashEntries(options) {
|
|
8
|
+
const { context, packageIdentifier } = options;
|
|
9
|
+
const { packages } = context;
|
|
10
|
+
const packagePath = getPackagePath({ packageIdentifier, context });
|
|
10
11
|
const definition = await packages.get(packagePath);
|
|
11
12
|
if (!definition) {
|
|
12
13
|
throw new Error(`Package definition (package.json) missing or invalid at "${packagePath}"`);
|
|
13
14
|
}
|
|
14
|
-
const { name
|
|
15
|
+
const { name } = definition;
|
|
15
16
|
if (!name) {
|
|
16
17
|
throw new Error(`Package definition (package.json) missing name at "${packagePath}"`);
|
|
17
18
|
}
|
|
18
19
|
const isExternal = isExternalPackage(packagePath);
|
|
19
20
|
const filesHash = !isExternal ? await getSourceHash({ packagePath }) : undefined;
|
|
20
|
-
const inlinedDependenciesHash = inlinedDependencies && (await hashDependencies(inlinedDependencies));
|
|
21
21
|
const version = (isExternal ? definition.version : packagePath) || packagePath;
|
|
22
22
|
return {
|
|
23
23
|
...definition,
|
|
24
24
|
version,
|
|
25
25
|
filesHash,
|
|
26
|
-
inlinedDependenciesHash,
|
|
27
26
|
};
|
|
28
27
|
}
|
|
29
28
|
//# sourceMappingURL=getPackageHashEntries.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getPackageHashEntries.js","sourceRoot":"","sources":["../../src/utilities/getPackageHashEntries.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAmB,MAAM,iCAAiC,CAAC;AACrF,OAAO,EAAE,cAAc,EAA0B,MAAM,qBAAqB,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,
|
|
1
|
+
{"version":3,"file":"getPackageHashEntries.js","sourceRoot":"","sources":["../../src/utilities/getPackageHashEntries.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAmB,MAAM,iCAAiC,CAAC;AACrF,OAAO,EAAE,cAAc,EAA0B,MAAM,qBAAqB,CAAC;AAC7E,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAEnD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,OAM3C;IACC,MAAM,EAAE,OAAO,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC;IAC/C,MAAM,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;IAE7B,MAAM,WAAW,GAAG,cAAc,CAAC,EAAE,iBAAiB,EAAE,OAAO,EAAE,CAAC,CAAC;IAEnE,MAAM,UAAU,GAAG,MAAM,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAEnD,IAAI,CAAC,UAAU,EAAE;QACf,MAAM,IAAI,KAAK,CAAC,4DAA4D,WAAW,GAAG,CAAC,CAAC;KAC7F;IAED,MAAM,EAAE,IAAI,EAAE,GAAG,UAAU,CAAC;IAC5B,IAAI,CAAC,IAAI,EAAE;QACT,MAAM,IAAI,KAAK,CAAC,sDAAsD,WAAW,GAAG,CAAC,CAAC;KACvF;IAED,MAAM,UAAU,GAAG,iBAAiB,CAAC,WAAW,CAAC,CAAC;IAElD,MAAM,SAAS,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,aAAa,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IAEjF,MAAM,OAAO,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,IAAI,WAAW,CAAC;IAE/E,OAAO;QACL,GAAG,UAAU;QACb,OAAO;QACP,SAAS;KACV,CAAC;AACJ,CAAC","sourcesContent":["import type { PackageDefinitionsCache } from '@ms-cloudpack/bundler-types';\nimport { isExternalPackage, type ResolveMap } from '@ms-cloudpack/package-utilities';\nimport { getPackagePath, type PackageIdentifier } from './getPackagePath.js';\nimport { getSourceHash } from './getSourceHash.js';\n\n/**\n * @returns the entries that are used to calculate the hash of a package\n */\nexport async function getPackageHashEntries(options: {\n packageIdentifier: PackageIdentifier;\n context: {\n packages: PackageDefinitionsCache;\n resolveMap: ResolveMap;\n };\n}) {\n const { context, packageIdentifier } = options;\n const { packages } = context;\n\n const packagePath = getPackagePath({ packageIdentifier, context });\n\n const definition = await packages.get(packagePath);\n\n if (!definition) {\n throw new Error(`Package definition (package.json) missing or invalid at \"${packagePath}\"`);\n }\n\n const { name } = definition;\n if (!name) {\n throw new Error(`Package definition (package.json) missing name at \"${packagePath}\"`);\n }\n\n const isExternal = isExternalPackage(packagePath);\n\n const filesHash = !isExternal ? await getSourceHash({ packagePath }) : undefined;\n\n const version = (isExternal ? definition.version : packagePath) || packagePath;\n\n return {\n ...definition,\n version,\n filesHash,\n };\n}\n"]}
|
|
@@ -1,7 +1,18 @@
|
|
|
1
|
+
import type { PackageJson } from '@ms-cloudpack/bundler-types';
|
|
1
2
|
import { type ResolveMap } from '@ms-cloudpack/package-utilities';
|
|
2
3
|
export type PackageIdentifier = {
|
|
4
|
+
/**
|
|
5
|
+
* The name of the package
|
|
6
|
+
*/
|
|
3
7
|
name: string;
|
|
8
|
+
/**
|
|
9
|
+
* The exact version of the package, no semver
|
|
10
|
+
*/
|
|
4
11
|
version?: string;
|
|
12
|
+
/**
|
|
13
|
+
* The package that requires this package
|
|
14
|
+
*/
|
|
15
|
+
requiredBy?: PackageJson;
|
|
5
16
|
} | {
|
|
6
17
|
packagePath: string;
|
|
7
18
|
};
|
|
@@ -10,7 +21,16 @@ export type PackageIdentifier = {
|
|
|
10
21
|
* @param packageIdentifier Either name and version or packagePath
|
|
11
22
|
* @returns The path to the package
|
|
12
23
|
*/
|
|
13
|
-
export declare function getPackagePath(
|
|
14
|
-
|
|
24
|
+
export declare function getPackagePath(options: {
|
|
25
|
+
/**
|
|
26
|
+
* The package identifier to get the path for
|
|
27
|
+
*/
|
|
28
|
+
packageIdentifier: PackageIdentifier;
|
|
29
|
+
/**
|
|
30
|
+
* The context to use to resolve the package path
|
|
31
|
+
*/
|
|
32
|
+
context: {
|
|
33
|
+
resolveMap: ResolveMap;
|
|
34
|
+
};
|
|
15
35
|
}): string;
|
|
16
36
|
//# sourceMappingURL=getPackagePath.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getPackagePath.d.ts","sourceRoot":"","sources":["../../src/utilities/getPackagePath.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAEvF,MAAM,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"getPackagePath.d.ts","sourceRoot":"","sources":["../../src/utilities/getPackagePath.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAC/D,OAAO,EAAuB,KAAK,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAEvF,MAAM,MAAM,iBAAiB,GACzB;IACE;;OAEG;IACH,IAAI,EAAE,MAAM,CAAC;IACb;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;OAEG;IACH,UAAU,CAAC,EAAE,WAAW,CAAC;CAC1B,GACD;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;AAE5B;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE;IACtC;;OAEG;IACH,iBAAiB,EAAE,iBAAiB,CAAC;IACrC;;OAEG;IACH,OAAO,EAAE;QAAE,UAAU,EAAE,UAAU,CAAA;KAAE,CAAC;CACrC,UAeA"}
|
|
@@ -4,13 +4,14 @@ import { findResolveMapEntry } from '@ms-cloudpack/package-utilities';
|
|
|
4
4
|
* @param packageIdentifier Either name and version or packagePath
|
|
5
5
|
* @returns The path to the package
|
|
6
6
|
*/
|
|
7
|
-
export function getPackagePath(
|
|
7
|
+
export function getPackagePath(options) {
|
|
8
|
+
const { context, packageIdentifier } = options;
|
|
8
9
|
if ('packagePath' in packageIdentifier) {
|
|
9
10
|
return packageIdentifier.packagePath;
|
|
10
11
|
}
|
|
11
12
|
const { resolveMap } = context;
|
|
12
|
-
const { name, version } = packageIdentifier;
|
|
13
|
-
const resolveMapEntry = findResolveMapEntry({ packageName: name, version, resolveMap });
|
|
13
|
+
const { name, version, requiredBy } = packageIdentifier;
|
|
14
|
+
const resolveMapEntry = findResolveMapEntry({ packageName: name, version, resolveMap, definition: requiredBy });
|
|
14
15
|
if (!resolveMapEntry) {
|
|
15
16
|
throw new Error(`Missing dependency. Can not find ${name} in the resolve map`);
|
|
16
17
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getPackagePath.js","sourceRoot":"","sources":["../../src/utilities/getPackagePath.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"getPackagePath.js","sourceRoot":"","sources":["../../src/utilities/getPackagePath.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,mBAAmB,EAAmB,MAAM,iCAAiC,CAAC;AAmBvF;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,OAS9B;IACC,MAAM,EAAE,OAAO,EAAE,iBAAiB,EAAE,GAAG,OAAO,CAAC;IAE/C,IAAI,aAAa,IAAI,iBAAiB,EAAE;QACtC,OAAO,iBAAiB,CAAC,WAAW,CAAC;KACtC;IAED,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;IAC/B,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,iBAAiB,CAAC;IACxD,MAAM,eAAe,GAAG,mBAAmB,CAAC,EAAE,WAAW,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,CAAC,CAAC;IAChH,IAAI,CAAC,eAAe,EAAE;QACpB,MAAM,IAAI,KAAK,CAAC,oCAAoC,IAAI,qBAAqB,CAAC,CAAC;KAChF;IAED,OAAO,eAAe,CAAC,IAAI,CAAC;AAC9B,CAAC","sourcesContent":["import type { PackageJson } from '@ms-cloudpack/bundler-types';\nimport { findResolveMapEntry, type ResolveMap } from '@ms-cloudpack/package-utilities';\n\nexport type PackageIdentifier =\n | {\n /**\n * The name of the package\n */\n name: string;\n /**\n * The exact version of the package, no semver\n */\n version?: string;\n /**\n * The package that requires this package\n */\n requiredBy?: PackageJson;\n }\n | { packagePath: string };\n\n/**\n * Given the name and version of a package, or the path to a package, return the path to the package.\n * @param packageIdentifier Either name and version or packagePath\n * @returns The path to the package\n */\nexport function getPackagePath(options: {\n /**\n * The package identifier to get the path for\n */\n packageIdentifier: PackageIdentifier;\n /**\n * The context to use to resolve the package path\n */\n context: { resolveMap: ResolveMap };\n}) {\n const { context, packageIdentifier } = options;\n\n if ('packagePath' in packageIdentifier) {\n return packageIdentifier.packagePath;\n }\n\n const { resolveMap } = context;\n const { name, version, requiredBy } = packageIdentifier;\n const resolveMapEntry = findResolveMapEntry({ packageName: name, version, resolveMap, definition: requiredBy });\n if (!resolveMapEntry) {\n throw new Error(`Missing dependency. Can not find ${name} in the resolve map`);\n }\n\n return resolveMapEntry.path;\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hashPackage.d.ts","sourceRoot":"","sources":["../../src/utilities/hashPackage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,
|
|
1
|
+
{"version":3,"file":"hashPackage.d.ts","sourceRoot":"","sources":["../../src/utilities/hashPackage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAC3E,OAAO,EAAE,KAAK,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAGlE,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAG7D,wBAAsB,WAAW,CAC/B,iBAAiB,EAAE,iBAAiB,EACpC,OAAO,EAAE;IAAE,QAAQ,EAAE,uBAAuB,CAAC;IAAC,UAAU,EAAE,UAAU,CAAA;CAAE,GACrE,OAAO,CAAC,MAAM,CAAC,CA8BjB"}
|
|
@@ -3,24 +3,27 @@ import objectHash from 'object-hash';
|
|
|
3
3
|
import { performance } from 'perf_hooks';
|
|
4
4
|
import {} from './getPackagePath.js';
|
|
5
5
|
import { getPackageHashEntries } from './getPackageHashEntries.js';
|
|
6
|
-
import { calculateHashOfInlinedDependencies } from './calculateHashOfInlinedDependencies.js';
|
|
7
6
|
export async function hashPackage(packageIdentifier, context) {
|
|
8
7
|
const start = performance.now();
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
8
|
+
const hashEntriesArray = [];
|
|
9
|
+
const packagesToHash = [packageIdentifier];
|
|
10
|
+
while (packagesToHash.length > 0) {
|
|
11
|
+
const packageToHash = packagesToHash.pop();
|
|
12
|
+
if (!packageToHash) {
|
|
13
|
+
continue;
|
|
14
|
+
}
|
|
15
|
+
const hashEntries = await getPackageHashEntries({
|
|
16
|
+
packageIdentifier: packageToHash,
|
|
17
|
+
context,
|
|
16
18
|
});
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
const
|
|
19
|
+
const { inlinedDependencies } = hashEntries;
|
|
20
|
+
if (inlinedDependencies) {
|
|
21
|
+
packagesToHash.push(...inlinedDependencies.map((dependency) => ({ name: dependency, requiredBy: hashEntries })));
|
|
22
|
+
}
|
|
23
|
+
hashEntriesArray.push(hashEntries);
|
|
24
|
+
}
|
|
25
|
+
const hashResult = objectHash(hashEntriesArray);
|
|
26
|
+
const { name, version } = hashEntriesArray[0];
|
|
24
27
|
console.debug(`Hashed ${name}@${version} in ${performance.now() - start}ms`);
|
|
25
28
|
return hashResult;
|
|
26
29
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hashPackage.js","sourceRoot":"","sources":["../../src/utilities/hashPackage.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,MAAM,iCAAiC,CAAC;AAClE,OAAO,UAAU,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAA0B,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"hashPackage.js","sourceRoot":"","sources":["../../src/utilities/hashPackage.ts"],"names":[],"mappings":"AACA,OAAO,EAAmB,MAAM,iCAAiC,CAAC;AAClE,OAAO,UAAU,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAA0B,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AAEnE,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,iBAAoC,EACpC,OAAsE;IAEtE,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC;IAEhC,MAAM,gBAAgB,GAAwD,EAAE,CAAC;IACjF,MAAM,cAAc,GAAwB,CAAC,iBAAiB,CAAC,CAAC;IAEhE,OAAO,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE;QAChC,MAAM,aAAa,GAAG,cAAc,CAAC,GAAG,EAAE,CAAC;QAC3C,IAAI,CAAC,aAAa,EAAE;YAClB,SAAS;SACV;QAED,MAAM,WAAW,GAAG,MAAM,qBAAqB,CAAC;YAC9C,iBAAiB,EAAE,aAAa;YAChC,OAAO;SACR,CAAC,CAAC;QACH,MAAM,EAAE,mBAAmB,EAAE,GAAG,WAAW,CAAC;QAC5C,IAAI,mBAAmB,EAAE;YACvB,cAAc,CAAC,IAAI,CAAC,GAAG,mBAAmB,CAAC,GAAG,CAAC,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC;SAClH;QAED,gBAAgB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;KACpC;IAED,MAAM,UAAU,GAAG,UAAU,CAAC,gBAAgB,CAAC,CAAC;IAEhD,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;IAC9C,OAAO,CAAC,KAAK,CAAC,UAAU,IAAI,IAAI,OAAO,OAAO,WAAW,CAAC,GAAG,EAAE,GAAG,KAAK,IAAI,CAAC,CAAC;IAE7E,OAAO,UAAU,CAAC;AACpB,CAAC","sourcesContent":["import type { PackageDefinitionsCache } from '@ms-cloudpack/bundler-types';\nimport { type ResolveMap } from '@ms-cloudpack/package-utilities';\nimport objectHash from 'object-hash';\nimport { performance } from 'perf_hooks';\nimport { type PackageIdentifier } from './getPackagePath.js';\nimport { getPackageHashEntries } from './getPackageHashEntries.js';\n\nexport async function hashPackage(\n packageIdentifier: PackageIdentifier,\n context: { packages: PackageDefinitionsCache; resolveMap: ResolveMap },\n): Promise<string> {\n const start = performance.now();\n\n const hashEntriesArray: Awaited<ReturnType<typeof getPackageHashEntries>>[] = [];\n const packagesToHash: PackageIdentifier[] = [packageIdentifier];\n\n while (packagesToHash.length > 0) {\n const packageToHash = packagesToHash.pop();\n if (!packageToHash) {\n continue;\n }\n\n const hashEntries = await getPackageHashEntries({\n packageIdentifier: packageToHash,\n context,\n });\n const { inlinedDependencies } = hashEntries;\n if (inlinedDependencies) {\n packagesToHash.push(...inlinedDependencies.map((dependency) => ({ name: dependency, requiredBy: hashEntries })));\n }\n\n hashEntriesArray.push(hashEntries);\n }\n\n const hashResult = objectHash(hashEntriesArray);\n\n const { name, version } = hashEntriesArray[0];\n console.debug(`Hashed ${name}@${version} in ${performance.now() - start}ms`);\n\n return hashResult;\n}\n"]}
|
|
@@ -8,6 +8,6 @@ interface ValidateResultsJsonOptions {
|
|
|
8
8
|
* @param options - The options to use when validating the result.
|
|
9
9
|
* @returns True if the result is valid, false otherwise.
|
|
10
10
|
*/
|
|
11
|
-
export declare function
|
|
11
|
+
export declare function isCachedResultValid(options: ValidateResultsJsonOptions): boolean;
|
|
12
12
|
export {};
|
|
13
13
|
//# sourceMappingURL=validateBundleRequestResult.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validateBundleRequestResult.d.ts","sourceRoot":"","sources":["../../src/utilities/validateBundleRequestResult.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,UAAU,0BAA0B;IAClC,aAAa,EAAE,aAAa,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,wBAAgB,
|
|
1
|
+
{"version":3,"file":"validateBundleRequestResult.d.ts","sourceRoot":"","sources":["../../src/utilities/validateBundleRequestResult.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,UAAU,0BAA0B;IAClC,aAAa,EAAE,aAAa,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,0BAA0B,GAAG,OAAO,CAoBhF"}
|
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
* @param options - The options to use when validating the result.
|
|
4
4
|
* @returns True if the result is valid, false otherwise.
|
|
5
5
|
*/
|
|
6
|
-
export function
|
|
6
|
+
export function isCachedResultValid(options) {
|
|
7
7
|
const { bundleRequest, hash } = options;
|
|
8
|
-
const { enableCacheInternalPackages,
|
|
8
|
+
const { enableCacheInternalPackages, isExternal, result } = bundleRequest;
|
|
9
9
|
if (!result) {
|
|
10
10
|
// The result is undefined, so the result is invalid
|
|
11
11
|
return false;
|
|
@@ -14,11 +14,6 @@ export function validateBundleRequestResult(options) {
|
|
|
14
14
|
// There are errors, so the result is invalid
|
|
15
15
|
return false;
|
|
16
16
|
}
|
|
17
|
-
const { dependencies } = result;
|
|
18
|
-
if (enableFindImports && !dependencies) {
|
|
19
|
-
// enableFindImports is true, but dependencies are undefined, dependencies should have been populated by bundleTask. This is an invalid result.
|
|
20
|
-
return false;
|
|
21
|
-
}
|
|
22
17
|
if (enableCacheInternalPackages && !isExternal && result.hash !== hash) {
|
|
23
18
|
// The package is internal, enableCacheInternalPackages is enabled but hashes do not match, this is an invalid result.
|
|
24
19
|
return false;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validateBundleRequestResult.js","sourceRoot":"","sources":["../../src/utilities/validateBundleRequestResult.ts"],"names":[],"mappings":"AAOA;;;;GAIG;AACH,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"validateBundleRequestResult.js","sourceRoot":"","sources":["../../src/utilities/validateBundleRequestResult.ts"],"names":[],"mappings":"AAOA;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAmC;IACrE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IACxC,MAAM,EAAE,2BAA2B,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,aAAa,CAAC;IAE1E,IAAI,CAAC,MAAM,EAAE;QACX,oDAAoD;QACpD,OAAO,KAAK,CAAC;KACd;IAED,IAAI,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE;QAC1B,6CAA6C;QAC7C,OAAO,KAAK,CAAC;KACd;IAED,IAAI,2BAA2B,IAAI,CAAC,UAAU,IAAI,MAAM,CAAC,IAAI,KAAK,IAAI,EAAE;QACtE,sHAAsH;QACtH,OAAO,KAAK,CAAC;KACd;IAED,OAAO,IAAI,CAAC;AACd,CAAC","sourcesContent":["import type { BundleRequest } from '../types/BundleRequest.js';\n\ninterface ValidateResultsJsonOptions {\n bundleRequest: BundleRequest;\n hash?: string;\n}\n\n/**\n * Validates the result of a bundle request.\n * @param options - The options to use when validating the result.\n * @returns True if the result is valid, false otherwise.\n */\nexport function isCachedResultValid(options: ValidateResultsJsonOptions): boolean {\n const { bundleRequest, hash } = options;\n const { enableCacheInternalPackages, isExternal, result } = bundleRequest;\n\n if (!result) {\n // The result is undefined, so the result is invalid\n return false;\n }\n\n if (result?.errors?.length) {\n // There are errors, so the result is invalid\n return false;\n }\n\n if (enableCacheInternalPackages && !isExternal && result.hash !== hash) {\n // The package is internal, enableCacheInternalPackages is enabled but hashes do not match, this is an invalid result.\n return false;\n }\n\n return true;\n}\n"]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ms-cloudpack/api-server",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.18.0",
|
|
4
4
|
"description": "An implementation of the API server that does interacts with a task scheduler.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -25,19 +25,19 @@
|
|
|
25
25
|
"@lage-run/scheduler": "^1.0.0",
|
|
26
26
|
"@lage-run/target-graph": "^0.8.6",
|
|
27
27
|
"@lage-run/hasher": "^1.0.0",
|
|
28
|
-
"@ms-cloudpack/bundler": "^0.14.
|
|
29
|
-
"@ms-cloudpack/bundler-types": "^0.
|
|
30
|
-
"@ms-cloudpack/config": "^0.12.
|
|
28
|
+
"@ms-cloudpack/bundler": "^0.14.13",
|
|
29
|
+
"@ms-cloudpack/bundler-types": "^0.19.0",
|
|
30
|
+
"@ms-cloudpack/config": "^0.12.3",
|
|
31
31
|
"@ms-cloudpack/create-express-app": "^1.3.9",
|
|
32
32
|
"@ms-cloudpack/data-bus": "^0.4.0",
|
|
33
33
|
"@ms-cloudpack/file-watcher": "^0.1.0",
|
|
34
34
|
"@ms-cloudpack/json-utilities": "^0.0.7",
|
|
35
|
-
"@ms-cloudpack/package-utilities": "^5.1.
|
|
35
|
+
"@ms-cloudpack/package-utilities": "^5.1.5",
|
|
36
36
|
"@ms-cloudpack/path-string-parsing": "^1.0.3",
|
|
37
37
|
"@ms-cloudpack/path-utilities": "^2.3.2",
|
|
38
|
-
"@ms-cloudpack/task-reporter": "^0.
|
|
38
|
+
"@ms-cloudpack/task-reporter": "^0.8.0",
|
|
39
39
|
"@ms-cloudpack/telemetry": "^0.3.8",
|
|
40
|
-
"@ms-cloudpack/remote-cache": "^0.1.
|
|
40
|
+
"@ms-cloudpack/remote-cache": "^0.1.7",
|
|
41
41
|
"@trpc/client": "^10.21.1",
|
|
42
42
|
"@trpc/server": "^10.21.1",
|
|
43
43
|
"chokidar": "^3.5.3",
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import type { PackageJsonDependencies } from '@ms-cloudpack/bundler-types';
|
|
2
|
-
export declare function calculateHashOfInlinedDependencies(options: {
|
|
3
|
-
inlinedDependencies: PackageJsonDependencies;
|
|
4
|
-
hashPackage: (options: {
|
|
5
|
-
name: string;
|
|
6
|
-
version?: string;
|
|
7
|
-
}) => Promise<string>;
|
|
8
|
-
}): Promise<Record<string, string>>;
|
|
9
|
-
//# sourceMappingURL=calculateHashOfInlinedDependencies.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"calculateHashOfInlinedDependencies.d.ts","sourceRoot":"","sources":["../../src/utilities/calculateHashOfInlinedDependencies.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6BAA6B,CAAC;AAE3E,wBAAsB,kCAAkC,CAAC,OAAO,EAAE;IAChE,mBAAmB,EAAE,uBAAuB,CAAC;IAC7C,WAAW,EAAE,CAAC,OAAO,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CAC/E,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAwB,MAAM,CAAY,CAAC,CAuBnE"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
export async function calculateHashOfInlinedDependencies(options) {
|
|
2
|
-
const { inlinedDependencies, hashPackage } = options;
|
|
3
|
-
const calculatePackageHash = async ([name, version]) => {
|
|
4
|
-
return {
|
|
5
|
-
name,
|
|
6
|
-
hash: await hashPackage({ name, version }),
|
|
7
|
-
};
|
|
8
|
-
};
|
|
9
|
-
// Calculate the hashes of all inlined dependencies in parallel
|
|
10
|
-
const inlinedDependencyKeyValuePairs = await Promise.all(Object.entries(inlinedDependencies).map(calculatePackageHash));
|
|
11
|
-
// Convert the array of key value pairs to a dictionary
|
|
12
|
-
const inlinedDependenciesHashes = {};
|
|
13
|
-
for (const entry of inlinedDependencyKeyValuePairs) {
|
|
14
|
-
inlinedDependenciesHashes[entry.name] = entry.hash;
|
|
15
|
-
}
|
|
16
|
-
return inlinedDependenciesHashes;
|
|
17
|
-
}
|
|
18
|
-
//# sourceMappingURL=calculateHashOfInlinedDependencies.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"calculateHashOfInlinedDependencies.js","sourceRoot":"","sources":["../../src/utilities/calculateHashOfInlinedDependencies.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,KAAK,UAAU,kCAAkC,CAAC,OAGxD;IACC,MAAM,EAAE,mBAAmB,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;IAErD,MAAM,oBAAoB,GAAG,KAAK,EAAE,CAAC,IAAI,EAAE,OAAO,CAA+B,EAAE,EAAE;QACnF,OAAO;YACL,IAAI;YACJ,IAAI,EAAE,MAAM,WAAW,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;SAC3C,CAAC;IACJ,CAAC,CAAC;IAEF,+DAA+D;IAC/D,MAAM,8BAA8B,GAAG,MAAM,OAAO,CAAC,GAAG,CACtD,MAAM,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAC9D,CAAC;IAEF,uDAAuD;IACvD,MAAM,yBAAyB,GAA2B,EAAE,CAAC;IAE7D,KAAK,MAAM,KAAK,IAAI,8BAA8B,EAAE;QAClD,yBAAyB,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC;KACpD;IAED,OAAO,yBAAyB,CAAC;AACnC,CAAC","sourcesContent":["import type { PackageJsonDependencies } from '@ms-cloudpack/bundler-types';\n\nexport async function calculateHashOfInlinedDependencies(options: {\n inlinedDependencies: PackageJsonDependencies;\n hashPackage: (options: { name: string; version?: string }) => Promise<string>;\n}): Promise<Record<string /* dependency name */, string /* hash */>> {\n const { inlinedDependencies, hashPackage } = options;\n\n const calculatePackageHash = async ([name, version]: [string, string | undefined]) => {\n return {\n name,\n hash: await hashPackage({ name, version }),\n };\n };\n\n // Calculate the hashes of all inlined dependencies in parallel\n const inlinedDependencyKeyValuePairs = await Promise.all(\n Object.entries(inlinedDependencies).map(calculatePackageHash),\n );\n\n // Convert the array of key value pairs to a dictionary\n const inlinedDependenciesHashes: Record<string, string> = {};\n\n for (const entry of inlinedDependencyKeyValuePairs) {\n inlinedDependenciesHashes[entry.name] = entry.hash;\n }\n\n return inlinedDependenciesHashes;\n}\n"]}
|