@rushstack/rush-bridge-cache-plugin 5.168.0 → 5.169.1
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 → lib-commonjs}/BridgeCachePlugin.js +3 -2
- package/lib-commonjs/BridgeCachePlugin.js.map +1 -0
- package/{lib → lib-dts}/BridgeCachePlugin.d.ts.map +1 -1
- package/lib-esm/BridgeCachePlugin.js +147 -0
- package/lib-esm/BridgeCachePlugin.js.map +1 -0
- package/{src/index.ts → lib-esm/index.js} +1 -1
- package/lib-esm/index.js.map +1 -0
- package/package.json +32 -8
- package/rush-plugin-manifest.json +2 -2
- package/.rush/temp/chunked-rush-logs/rush-bridge-cache-plugin._phase_build.chunks.jsonl +0 -8
- package/.rush/temp/operation/_phase_build/all.log +0 -8
- package/.rush/temp/operation/_phase_build/log-chunks.jsonl +0 -8
- package/.rush/temp/operation/_phase_build/state.json +0 -3
- package/.rush/temp/rushstack+rush-bridge-cache-plugin-_phase_build-3e1da8998ed45d48f791b6640f27b152630add44.tar.log +0 -27
- package/.rush/temp/shrinkwrap-deps.json +0 -90
- package/config/heft.json +0 -27
- package/config/jest.config.json +0 -3
- package/config/rig.json +0 -6
- package/eslint.config.js +0 -20
- package/lib/BridgeCachePlugin.js.map +0 -1
- package/rush-logs/rush-bridge-cache-plugin._phase_build.cache.log +0 -3
- package/rush-logs/rush-bridge-cache-plugin._phase_build.log +0 -8
- package/src/BridgeCachePlugin.ts +0 -244
- package/temp/build/copy-json-schemas/file-copy.json +0 -1
- package/temp/build/lint/_eslint-5eVG3S6w.json +0 -14
- package/temp/build/lint/lint.sarif +0 -29
- package/temp/build/typescript/file-copy.json +0 -1
- package/temp/build/typescript/ts_l9Fw4VUO.json +0 -1
- package/temp/json-schemas/rush/v5/bridge-cache-config.schema.json +0 -21
- package/tsconfig.json +0 -3
- /package/{lib → lib-commonjs}/index.js +0 -0
- /package/{lib → lib-commonjs}/index.js.map +0 -0
- /package/{lib → lib-commonjs}/schemas/bridge-cache-config.schema.json +0 -0
- /package/{lib → lib-dts}/BridgeCachePlugin.d.ts +0 -0
- /package/{lib → lib-dts}/index.d.ts +0 -0
- /package/{lib → lib-dts}/index.d.ts.map +0 -0
- /package/{src → lib-esm}/schemas/bridge-cache-config.schema.json +0 -0
|
@@ -41,7 +41,7 @@ class BridgeCachePlugin {
|
|
|
41
41
|
});
|
|
42
42
|
// populate the cache for each operation
|
|
43
43
|
command.hooks.beforeExecuteOperations.tapPromise(PLUGIN_NAME, async (recordByOperation, context) => {
|
|
44
|
-
const { buildCacheConfiguration } = context;
|
|
44
|
+
const { buildCacheConfiguration, rushConfiguration: { experimentsConfiguration: { configuration: { omitAppleDoubleFilesFromBuildCache } } } } = context;
|
|
45
45
|
const { terminal } = logger;
|
|
46
46
|
if (cacheAction === undefined) {
|
|
47
47
|
return;
|
|
@@ -60,7 +60,8 @@ class BridgeCachePlugin {
|
|
|
60
60
|
var _a, _b, _c, _d;
|
|
61
61
|
const projectBuildCache = rush_sdk_1._OperationBuildCache.forOperation(operationExecutionResult, {
|
|
62
62
|
buildCacheConfiguration,
|
|
63
|
-
terminal
|
|
63
|
+
terminal,
|
|
64
|
+
excludeAppleDoubleFiles: !!omitAppleDoubleFilesFromBuildCache
|
|
64
65
|
});
|
|
65
66
|
const { operation } = operationExecutionResult;
|
|
66
67
|
if (cacheAction === CACHE_ACTION_READ) {
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BridgeCachePlugin.js","sourceRoot":"","sources":["../src/BridgeCachePlugin.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license.\n// See LICENSE in the project root for license information.\n\nimport { Async, FileSystem } from '@rushstack/node-core-library';\nimport { _OperationBuildCache as OperationBuildCache } from '@rushstack/rush-sdk';\nimport type {\n ICreateOperationsContext,\n IExecuteOperationsContext,\n ILogger,\n IOperationExecutionResult,\n IPhasedCommand,\n IRushPlugin,\n Operation,\n RushSession\n} from '@rushstack/rush-sdk';\nimport { CommandLineParameterKind } from '@rushstack/ts-command-line';\nimport type { CommandLineParameter } from '@rushstack/ts-command-line';\n\nconst PLUGIN_NAME: 'RushBridgeCachePlugin' = 'RushBridgeCachePlugin';\n\nconst CACHE_ACTION_READ: 'read' = 'read';\nconst CACHE_ACTION_WRITE: 'write' = 'write';\n\ntype CacheAction = typeof CACHE_ACTION_READ | typeof CACHE_ACTION_WRITE;\n\nexport interface IBridgeCachePluginOptions {\n readonly actionParameterName: string;\n readonly requireOutputFoldersParameterName: string | undefined;\n}\n\nexport class BridgeCachePlugin implements IRushPlugin {\n public readonly pluginName: string = PLUGIN_NAME;\n private readonly _actionParameterName: string;\n private readonly _requireOutputFoldersParameterName: string | undefined;\n\n public constructor(options: IBridgeCachePluginOptions) {\n this._actionParameterName = options.actionParameterName;\n this._requireOutputFoldersParameterName = options.requireOutputFoldersParameterName;\n\n if (!this._actionParameterName) {\n throw new Error(\n 'The \"actionParameterName\" option must be provided for the BridgeCachePlugin. Please see the plugin README for details.'\n );\n }\n }\n\n public apply(session: RushSession): void {\n session.hooks.runAnyPhasedCommand.tapPromise(PLUGIN_NAME, async (command: IPhasedCommand) => {\n const logger: ILogger = session.getLogger(PLUGIN_NAME);\n\n let cacheAction: CacheAction | undefined;\n let requireOutputFolders: boolean = false;\n\n // cancel the actual operations. We don't want to run the command, just cache the output folders on disk\n command.hooks.createOperations.tap(\n { name: PLUGIN_NAME, stage: Number.MAX_SAFE_INTEGER },\n (operations: Set<Operation>, context: ICreateOperationsContext): Set<Operation> => {\n const { customParameters } = context;\n cacheAction = this._getCacheAction(customParameters);\n\n if (cacheAction !== undefined) {\n if (!context.buildCacheConfiguration?.buildCacheEnabled) {\n throw new Error(\n `The build cache must be enabled to use the \"${this._actionParameterName}\" parameter.`\n );\n }\n\n for (const operation of operations) {\n operation.enabled = false;\n }\n\n requireOutputFolders = this._isRequireOutputFoldersFlagSet(customParameters);\n }\n\n return operations;\n }\n );\n // populate the cache for each operation\n command.hooks.beforeExecuteOperations.tapPromise(\n PLUGIN_NAME,\n async (\n recordByOperation: Map<Operation, IOperationExecutionResult>,\n context: IExecuteOperationsContext\n ): Promise<void> => {\n const {\n buildCacheConfiguration,\n rushConfiguration: {\n experimentsConfiguration: {\n configuration: { omitAppleDoubleFilesFromBuildCache }\n }\n }\n } = context;\n const { terminal } = logger;\n\n if (cacheAction === undefined) {\n return;\n }\n\n if (!buildCacheConfiguration?.buildCacheEnabled) {\n throw new Error(\n `The build cache must be enabled to use the \"${this._actionParameterName}\" parameter.`\n );\n }\n\n const filteredOperations: Set<IOperationExecutionResult> = new Set();\n for (const operationExecutionResult of recordByOperation.values()) {\n if (!operationExecutionResult.operation.isNoOp) {\n filteredOperations.add(operationExecutionResult);\n }\n }\n\n let successCount: number = 0;\n\n await Async.forEachAsync(\n filteredOperations,\n async (operationExecutionResult: IOperationExecutionResult) => {\n const projectBuildCache: OperationBuildCache = OperationBuildCache.forOperation(\n operationExecutionResult,\n {\n buildCacheConfiguration,\n terminal,\n excludeAppleDoubleFiles: !!omitAppleDoubleFilesFromBuildCache\n }\n );\n\n const { operation } = operationExecutionResult;\n\n if (cacheAction === CACHE_ACTION_READ) {\n const success: boolean = await projectBuildCache.tryRestoreFromCacheAsync(terminal);\n if (success) {\n ++successCount;\n terminal.writeLine(\n `Operation \"${operation.name}\": Outputs have been restored from the build cache.\"`\n );\n terminal.writeLine(`Cache key: ${projectBuildCache.cacheId}`);\n } else {\n terminal.writeWarningLine(\n `Operation \"${operation.name}\": Outputs could not be restored from the build cache.`\n );\n }\n } else if (cacheAction === CACHE_ACTION_WRITE) {\n // if the require output folders flag has been passed, skip populating the cache if any of the expected output folders does not exist\n if (\n requireOutputFolders &&\n operation.settings?.outputFolderNames &&\n operation.settings?.outputFolderNames?.length > 0\n ) {\n const projectFolder: string = operation.associatedProject?.projectFolder;\n const missingFolders: string[] = [];\n operation.settings.outputFolderNames.forEach((outputFolderName: string) => {\n if (!FileSystem.exists(`${projectFolder}/${outputFolderName}`)) {\n missingFolders.push(outputFolderName);\n }\n });\n if (missingFolders.length > 0) {\n terminal.writeWarningLine(\n `Operation \"${operation.name}\": The following output folders do not exist: \"${missingFolders.join('\", \"')}\". Skipping cache population.`\n );\n return;\n }\n }\n\n const success: boolean = await projectBuildCache.trySetCacheEntryAsync(terminal);\n if (success) {\n ++successCount;\n terminal.writeLine(\n `Operation \"${operation.name}\": Existing outputs have been successfully written to the build cache.\"`\n );\n terminal.writeLine(`Cache key: ${projectBuildCache.cacheId}`);\n } else {\n terminal.writeErrorLine(\n `Operation \"${operation.name}\": An error occurred while writing existing outputs to the build cache.`\n );\n }\n }\n },\n {\n concurrency: context.parallelism\n }\n );\n\n terminal.writeLine(\n `Cache operation \"${cacheAction}\" completed successfully for ${successCount} out of ${filteredOperations.size} operations.`\n );\n }\n );\n });\n }\n\n private _getCacheAction(\n customParameters: ReadonlyMap<string, CommandLineParameter>\n ): CacheAction | undefined {\n const cacheActionParameter: CommandLineParameter | undefined = customParameters.get(\n this._actionParameterName\n );\n\n if (cacheActionParameter) {\n if (cacheActionParameter.kind !== CommandLineParameterKind.Choice) {\n throw new Error(\n `The parameter \"${this._actionParameterName}\" must be a choice. Please check the plugin configuration.`\n );\n }\n\n if (\n cacheActionParameter.alternatives.size !== 2 ||\n !cacheActionParameter.alternatives.has(CACHE_ACTION_READ) ||\n !cacheActionParameter.alternatives.has(CACHE_ACTION_WRITE)\n ) {\n throw new Error(\n `The parameter \"${this._actionParameterName}\" must have exactly two choices: \"${CACHE_ACTION_READ}\" and \"${CACHE_ACTION_WRITE}\". Please check the plugin configuration.`\n );\n }\n\n const value: string | undefined = cacheActionParameter.value;\n switch (value) {\n case CACHE_ACTION_READ:\n case CACHE_ACTION_WRITE:\n return value;\n case undefined:\n return undefined;\n default:\n throw new Error(\n `The parameter \"${this._actionParameterName}\" must be one of: \"${CACHE_ACTION_READ}\" or \"${CACHE_ACTION_WRITE}\". Received: \"${value}\". Please check the plugin configuration.`\n );\n }\n }\n\n return undefined;\n }\n\n private _isRequireOutputFoldersFlagSet(\n customParameters: ReadonlyMap<string, CommandLineParameter>\n ): boolean {\n if (!this._requireOutputFoldersParameterName) {\n return false;\n }\n\n const requireOutputFoldersParam: CommandLineParameter | undefined = customParameters.get(\n this._requireOutputFoldersParameterName\n );\n\n if (!requireOutputFoldersParam) {\n return false;\n }\n\n if (requireOutputFoldersParam.kind !== CommandLineParameterKind.Flag) {\n throw new Error(`The parameter \"${this._requireOutputFoldersParameterName}\" must be a flag.`);\n }\n\n return requireOutputFoldersParam.value;\n }\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BridgeCachePlugin.d.ts","sourceRoot":"","sources":["../src/BridgeCachePlugin.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAMV,WAAW,EAEX,WAAW,EACZ,MAAM,qBAAqB,CAAC;AAW7B,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,iCAAiC,EAAE,MAAM,GAAG,SAAS,CAAC;CAChE;AAED,qBAAa,iBAAkB,YAAW,WAAW;IACnD,SAAgB,UAAU,EAAE,MAAM,CAAe;IACjD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAS;IAC9C,OAAO,CAAC,QAAQ,CAAC,kCAAkC,CAAqB;gBAErD,OAAO,EAAE,yBAAyB;IAW9C,KAAK,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"BridgeCachePlugin.d.ts","sourceRoot":"","sources":["../src/BridgeCachePlugin.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAMV,WAAW,EAEX,WAAW,EACZ,MAAM,qBAAqB,CAAC;AAW7B,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,iCAAiC,EAAE,MAAM,GAAG,SAAS,CAAC;CAChE;AAED,qBAAa,iBAAkB,YAAW,WAAW;IACnD,SAAgB,UAAU,EAAE,MAAM,CAAe;IACjD,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAS;IAC9C,OAAO,CAAC,QAAQ,CAAC,kCAAkC,CAAqB;gBAErD,OAAO,EAAE,yBAAyB;IAW9C,KAAK,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IA+IxC,OAAO,CAAC,eAAe;IAyCvB,OAAO,CAAC,8BAA8B;CAqBvC"}
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license.
|
|
2
|
+
// See LICENSE in the project root for license information.
|
|
3
|
+
import { Async, FileSystem } from '@rushstack/node-core-library';
|
|
4
|
+
import { _OperationBuildCache as OperationBuildCache } from '@rushstack/rush-sdk';
|
|
5
|
+
import { CommandLineParameterKind } from '@rushstack/ts-command-line';
|
|
6
|
+
const PLUGIN_NAME = 'RushBridgeCachePlugin';
|
|
7
|
+
const CACHE_ACTION_READ = 'read';
|
|
8
|
+
const CACHE_ACTION_WRITE = 'write';
|
|
9
|
+
export class BridgeCachePlugin {
|
|
10
|
+
constructor(options) {
|
|
11
|
+
this.pluginName = PLUGIN_NAME;
|
|
12
|
+
this._actionParameterName = options.actionParameterName;
|
|
13
|
+
this._requireOutputFoldersParameterName = options.requireOutputFoldersParameterName;
|
|
14
|
+
if (!this._actionParameterName) {
|
|
15
|
+
throw new Error('The "actionParameterName" option must be provided for the BridgeCachePlugin. Please see the plugin README for details.');
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
apply(session) {
|
|
19
|
+
session.hooks.runAnyPhasedCommand.tapPromise(PLUGIN_NAME, async (command) => {
|
|
20
|
+
const logger = session.getLogger(PLUGIN_NAME);
|
|
21
|
+
let cacheAction;
|
|
22
|
+
let requireOutputFolders = false;
|
|
23
|
+
// cancel the actual operations. We don't want to run the command, just cache the output folders on disk
|
|
24
|
+
command.hooks.createOperations.tap({ name: PLUGIN_NAME, stage: Number.MAX_SAFE_INTEGER }, (operations, context) => {
|
|
25
|
+
var _a;
|
|
26
|
+
const { customParameters } = context;
|
|
27
|
+
cacheAction = this._getCacheAction(customParameters);
|
|
28
|
+
if (cacheAction !== undefined) {
|
|
29
|
+
if (!((_a = context.buildCacheConfiguration) === null || _a === void 0 ? void 0 : _a.buildCacheEnabled)) {
|
|
30
|
+
throw new Error(`The build cache must be enabled to use the "${this._actionParameterName}" parameter.`);
|
|
31
|
+
}
|
|
32
|
+
for (const operation of operations) {
|
|
33
|
+
operation.enabled = false;
|
|
34
|
+
}
|
|
35
|
+
requireOutputFolders = this._isRequireOutputFoldersFlagSet(customParameters);
|
|
36
|
+
}
|
|
37
|
+
return operations;
|
|
38
|
+
});
|
|
39
|
+
// populate the cache for each operation
|
|
40
|
+
command.hooks.beforeExecuteOperations.tapPromise(PLUGIN_NAME, async (recordByOperation, context) => {
|
|
41
|
+
const { buildCacheConfiguration, rushConfiguration: { experimentsConfiguration: { configuration: { omitAppleDoubleFilesFromBuildCache } } } } = context;
|
|
42
|
+
const { terminal } = logger;
|
|
43
|
+
if (cacheAction === undefined) {
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
if (!(buildCacheConfiguration === null || buildCacheConfiguration === void 0 ? void 0 : buildCacheConfiguration.buildCacheEnabled)) {
|
|
47
|
+
throw new Error(`The build cache must be enabled to use the "${this._actionParameterName}" parameter.`);
|
|
48
|
+
}
|
|
49
|
+
const filteredOperations = new Set();
|
|
50
|
+
for (const operationExecutionResult of recordByOperation.values()) {
|
|
51
|
+
if (!operationExecutionResult.operation.isNoOp) {
|
|
52
|
+
filteredOperations.add(operationExecutionResult);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
let successCount = 0;
|
|
56
|
+
await Async.forEachAsync(filteredOperations, async (operationExecutionResult) => {
|
|
57
|
+
var _a, _b, _c, _d;
|
|
58
|
+
const projectBuildCache = OperationBuildCache.forOperation(operationExecutionResult, {
|
|
59
|
+
buildCacheConfiguration,
|
|
60
|
+
terminal,
|
|
61
|
+
excludeAppleDoubleFiles: !!omitAppleDoubleFilesFromBuildCache
|
|
62
|
+
});
|
|
63
|
+
const { operation } = operationExecutionResult;
|
|
64
|
+
if (cacheAction === CACHE_ACTION_READ) {
|
|
65
|
+
const success = await projectBuildCache.tryRestoreFromCacheAsync(terminal);
|
|
66
|
+
if (success) {
|
|
67
|
+
++successCount;
|
|
68
|
+
terminal.writeLine(`Operation "${operation.name}": Outputs have been restored from the build cache."`);
|
|
69
|
+
terminal.writeLine(`Cache key: ${projectBuildCache.cacheId}`);
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
terminal.writeWarningLine(`Operation "${operation.name}": Outputs could not be restored from the build cache.`);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
else if (cacheAction === CACHE_ACTION_WRITE) {
|
|
76
|
+
// if the require output folders flag has been passed, skip populating the cache if any of the expected output folders does not exist
|
|
77
|
+
if (requireOutputFolders &&
|
|
78
|
+
((_a = operation.settings) === null || _a === void 0 ? void 0 : _a.outputFolderNames) &&
|
|
79
|
+
((_c = (_b = operation.settings) === null || _b === void 0 ? void 0 : _b.outputFolderNames) === null || _c === void 0 ? void 0 : _c.length) > 0) {
|
|
80
|
+
const projectFolder = (_d = operation.associatedProject) === null || _d === void 0 ? void 0 : _d.projectFolder;
|
|
81
|
+
const missingFolders = [];
|
|
82
|
+
operation.settings.outputFolderNames.forEach((outputFolderName) => {
|
|
83
|
+
if (!FileSystem.exists(`${projectFolder}/${outputFolderName}`)) {
|
|
84
|
+
missingFolders.push(outputFolderName);
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
if (missingFolders.length > 0) {
|
|
88
|
+
terminal.writeWarningLine(`Operation "${operation.name}": The following output folders do not exist: "${missingFolders.join('", "')}". Skipping cache population.`);
|
|
89
|
+
return;
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
const success = await projectBuildCache.trySetCacheEntryAsync(terminal);
|
|
93
|
+
if (success) {
|
|
94
|
+
++successCount;
|
|
95
|
+
terminal.writeLine(`Operation "${operation.name}": Existing outputs have been successfully written to the build cache."`);
|
|
96
|
+
terminal.writeLine(`Cache key: ${projectBuildCache.cacheId}`);
|
|
97
|
+
}
|
|
98
|
+
else {
|
|
99
|
+
terminal.writeErrorLine(`Operation "${operation.name}": An error occurred while writing existing outputs to the build cache.`);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}, {
|
|
103
|
+
concurrency: context.parallelism
|
|
104
|
+
});
|
|
105
|
+
terminal.writeLine(`Cache operation "${cacheAction}" completed successfully for ${successCount} out of ${filteredOperations.size} operations.`);
|
|
106
|
+
});
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
_getCacheAction(customParameters) {
|
|
110
|
+
const cacheActionParameter = customParameters.get(this._actionParameterName);
|
|
111
|
+
if (cacheActionParameter) {
|
|
112
|
+
if (cacheActionParameter.kind !== CommandLineParameterKind.Choice) {
|
|
113
|
+
throw new Error(`The parameter "${this._actionParameterName}" must be a choice. Please check the plugin configuration.`);
|
|
114
|
+
}
|
|
115
|
+
if (cacheActionParameter.alternatives.size !== 2 ||
|
|
116
|
+
!cacheActionParameter.alternatives.has(CACHE_ACTION_READ) ||
|
|
117
|
+
!cacheActionParameter.alternatives.has(CACHE_ACTION_WRITE)) {
|
|
118
|
+
throw new Error(`The parameter "${this._actionParameterName}" must have exactly two choices: "${CACHE_ACTION_READ}" and "${CACHE_ACTION_WRITE}". Please check the plugin configuration.`);
|
|
119
|
+
}
|
|
120
|
+
const value = cacheActionParameter.value;
|
|
121
|
+
switch (value) {
|
|
122
|
+
case CACHE_ACTION_READ:
|
|
123
|
+
case CACHE_ACTION_WRITE:
|
|
124
|
+
return value;
|
|
125
|
+
case undefined:
|
|
126
|
+
return undefined;
|
|
127
|
+
default:
|
|
128
|
+
throw new Error(`The parameter "${this._actionParameterName}" must be one of: "${CACHE_ACTION_READ}" or "${CACHE_ACTION_WRITE}". Received: "${value}". Please check the plugin configuration.`);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
return undefined;
|
|
132
|
+
}
|
|
133
|
+
_isRequireOutputFoldersFlagSet(customParameters) {
|
|
134
|
+
if (!this._requireOutputFoldersParameterName) {
|
|
135
|
+
return false;
|
|
136
|
+
}
|
|
137
|
+
const requireOutputFoldersParam = customParameters.get(this._requireOutputFoldersParameterName);
|
|
138
|
+
if (!requireOutputFoldersParam) {
|
|
139
|
+
return false;
|
|
140
|
+
}
|
|
141
|
+
if (requireOutputFoldersParam.kind !== CommandLineParameterKind.Flag) {
|
|
142
|
+
throw new Error(`The parameter "${this._requireOutputFoldersParameterName}" must be a flag.`);
|
|
143
|
+
}
|
|
144
|
+
return requireOutputFoldersParam.value;
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
//# sourceMappingURL=BridgeCachePlugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BridgeCachePlugin.js","sourceRoot":"","sources":["../src/BridgeCachePlugin.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license.\n// See LICENSE in the project root for license information.\n\nimport { Async, FileSystem } from '@rushstack/node-core-library';\nimport { _OperationBuildCache as OperationBuildCache } from '@rushstack/rush-sdk';\nimport type {\n ICreateOperationsContext,\n IExecuteOperationsContext,\n ILogger,\n IOperationExecutionResult,\n IPhasedCommand,\n IRushPlugin,\n Operation,\n RushSession\n} from '@rushstack/rush-sdk';\nimport { CommandLineParameterKind } from '@rushstack/ts-command-line';\nimport type { CommandLineParameter } from '@rushstack/ts-command-line';\n\nconst PLUGIN_NAME: 'RushBridgeCachePlugin' = 'RushBridgeCachePlugin';\n\nconst CACHE_ACTION_READ: 'read' = 'read';\nconst CACHE_ACTION_WRITE: 'write' = 'write';\n\ntype CacheAction = typeof CACHE_ACTION_READ | typeof CACHE_ACTION_WRITE;\n\nexport interface IBridgeCachePluginOptions {\n readonly actionParameterName: string;\n readonly requireOutputFoldersParameterName: string | undefined;\n}\n\nexport class BridgeCachePlugin implements IRushPlugin {\n public readonly pluginName: string = PLUGIN_NAME;\n private readonly _actionParameterName: string;\n private readonly _requireOutputFoldersParameterName: string | undefined;\n\n public constructor(options: IBridgeCachePluginOptions) {\n this._actionParameterName = options.actionParameterName;\n this._requireOutputFoldersParameterName = options.requireOutputFoldersParameterName;\n\n if (!this._actionParameterName) {\n throw new Error(\n 'The \"actionParameterName\" option must be provided for the BridgeCachePlugin. Please see the plugin README for details.'\n );\n }\n }\n\n public apply(session: RushSession): void {\n session.hooks.runAnyPhasedCommand.tapPromise(PLUGIN_NAME, async (command: IPhasedCommand) => {\n const logger: ILogger = session.getLogger(PLUGIN_NAME);\n\n let cacheAction: CacheAction | undefined;\n let requireOutputFolders: boolean = false;\n\n // cancel the actual operations. We don't want to run the command, just cache the output folders on disk\n command.hooks.createOperations.tap(\n { name: PLUGIN_NAME, stage: Number.MAX_SAFE_INTEGER },\n (operations: Set<Operation>, context: ICreateOperationsContext): Set<Operation> => {\n const { customParameters } = context;\n cacheAction = this._getCacheAction(customParameters);\n\n if (cacheAction !== undefined) {\n if (!context.buildCacheConfiguration?.buildCacheEnabled) {\n throw new Error(\n `The build cache must be enabled to use the \"${this._actionParameterName}\" parameter.`\n );\n }\n\n for (const operation of operations) {\n operation.enabled = false;\n }\n\n requireOutputFolders = this._isRequireOutputFoldersFlagSet(customParameters);\n }\n\n return operations;\n }\n );\n // populate the cache for each operation\n command.hooks.beforeExecuteOperations.tapPromise(\n PLUGIN_NAME,\n async (\n recordByOperation: Map<Operation, IOperationExecutionResult>,\n context: IExecuteOperationsContext\n ): Promise<void> => {\n const {\n buildCacheConfiguration,\n rushConfiguration: {\n experimentsConfiguration: {\n configuration: { omitAppleDoubleFilesFromBuildCache }\n }\n }\n } = context;\n const { terminal } = logger;\n\n if (cacheAction === undefined) {\n return;\n }\n\n if (!buildCacheConfiguration?.buildCacheEnabled) {\n throw new Error(\n `The build cache must be enabled to use the \"${this._actionParameterName}\" parameter.`\n );\n }\n\n const filteredOperations: Set<IOperationExecutionResult> = new Set();\n for (const operationExecutionResult of recordByOperation.values()) {\n if (!operationExecutionResult.operation.isNoOp) {\n filteredOperations.add(operationExecutionResult);\n }\n }\n\n let successCount: number = 0;\n\n await Async.forEachAsync(\n filteredOperations,\n async (operationExecutionResult: IOperationExecutionResult) => {\n const projectBuildCache: OperationBuildCache = OperationBuildCache.forOperation(\n operationExecutionResult,\n {\n buildCacheConfiguration,\n terminal,\n excludeAppleDoubleFiles: !!omitAppleDoubleFilesFromBuildCache\n }\n );\n\n const { operation } = operationExecutionResult;\n\n if (cacheAction === CACHE_ACTION_READ) {\n const success: boolean = await projectBuildCache.tryRestoreFromCacheAsync(terminal);\n if (success) {\n ++successCount;\n terminal.writeLine(\n `Operation \"${operation.name}\": Outputs have been restored from the build cache.\"`\n );\n terminal.writeLine(`Cache key: ${projectBuildCache.cacheId}`);\n } else {\n terminal.writeWarningLine(\n `Operation \"${operation.name}\": Outputs could not be restored from the build cache.`\n );\n }\n } else if (cacheAction === CACHE_ACTION_WRITE) {\n // if the require output folders flag has been passed, skip populating the cache if any of the expected output folders does not exist\n if (\n requireOutputFolders &&\n operation.settings?.outputFolderNames &&\n operation.settings?.outputFolderNames?.length > 0\n ) {\n const projectFolder: string = operation.associatedProject?.projectFolder;\n const missingFolders: string[] = [];\n operation.settings.outputFolderNames.forEach((outputFolderName: string) => {\n if (!FileSystem.exists(`${projectFolder}/${outputFolderName}`)) {\n missingFolders.push(outputFolderName);\n }\n });\n if (missingFolders.length > 0) {\n terminal.writeWarningLine(\n `Operation \"${operation.name}\": The following output folders do not exist: \"${missingFolders.join('\", \"')}\". Skipping cache population.`\n );\n return;\n }\n }\n\n const success: boolean = await projectBuildCache.trySetCacheEntryAsync(terminal);\n if (success) {\n ++successCount;\n terminal.writeLine(\n `Operation \"${operation.name}\": Existing outputs have been successfully written to the build cache.\"`\n );\n terminal.writeLine(`Cache key: ${projectBuildCache.cacheId}`);\n } else {\n terminal.writeErrorLine(\n `Operation \"${operation.name}\": An error occurred while writing existing outputs to the build cache.`\n );\n }\n }\n },\n {\n concurrency: context.parallelism\n }\n );\n\n terminal.writeLine(\n `Cache operation \"${cacheAction}\" completed successfully for ${successCount} out of ${filteredOperations.size} operations.`\n );\n }\n );\n });\n }\n\n private _getCacheAction(\n customParameters: ReadonlyMap<string, CommandLineParameter>\n ): CacheAction | undefined {\n const cacheActionParameter: CommandLineParameter | undefined = customParameters.get(\n this._actionParameterName\n );\n\n if (cacheActionParameter) {\n if (cacheActionParameter.kind !== CommandLineParameterKind.Choice) {\n throw new Error(\n `The parameter \"${this._actionParameterName}\" must be a choice. Please check the plugin configuration.`\n );\n }\n\n if (\n cacheActionParameter.alternatives.size !== 2 ||\n !cacheActionParameter.alternatives.has(CACHE_ACTION_READ) ||\n !cacheActionParameter.alternatives.has(CACHE_ACTION_WRITE)\n ) {\n throw new Error(\n `The parameter \"${this._actionParameterName}\" must have exactly two choices: \"${CACHE_ACTION_READ}\" and \"${CACHE_ACTION_WRITE}\". Please check the plugin configuration.`\n );\n }\n\n const value: string | undefined = cacheActionParameter.value;\n switch (value) {\n case CACHE_ACTION_READ:\n case CACHE_ACTION_WRITE:\n return value;\n case undefined:\n return undefined;\n default:\n throw new Error(\n `The parameter \"${this._actionParameterName}\" must be one of: \"${CACHE_ACTION_READ}\" or \"${CACHE_ACTION_WRITE}\". Received: \"${value}\". Please check the plugin configuration.`\n );\n }\n }\n\n return undefined;\n }\n\n private _isRequireOutputFoldersFlagSet(\n customParameters: ReadonlyMap<string, CommandLineParameter>\n ): boolean {\n if (!this._requireOutputFoldersParameterName) {\n return false;\n }\n\n const requireOutputFoldersParam: CommandLineParameter | undefined = customParameters.get(\n this._requireOutputFoldersParameterName\n );\n\n if (!requireOutputFoldersParam) {\n return false;\n }\n\n if (requireOutputFoldersParam.kind !== CommandLineParameterKind.Flag) {\n throw new Error(`The parameter \"${this._requireOutputFoldersParameterName}\" must be a flag.`);\n }\n\n return requireOutputFoldersParam.value;\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,4FAA4F;AAC5F,2DAA2D;AAE3D,OAAO,EAAE,iBAAiB,IAAI,OAAO,EAAE,MAAM,qBAAqB,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license.\n// See LICENSE in the project root for license information.\n\nexport { BridgeCachePlugin as default } from './BridgeCachePlugin';\n"]}
|
package/package.json
CHANGED
|
@@ -1,27 +1,51 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@rushstack/rush-bridge-cache-plugin",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.169.1",
|
|
4
4
|
"description": "Rush plugin that provides a --set-cache-only command flag to populate the cache from content on disk.",
|
|
5
5
|
"license": "MIT",
|
|
6
|
-
"main": "lib/index.js",
|
|
6
|
+
"main": "./lib-commonjs/index.js",
|
|
7
|
+
"module": "./lib-esm/index.js",
|
|
7
8
|
"repository": {
|
|
8
9
|
"url": "https://github.com/microsoft/rushstack",
|
|
9
10
|
"type": "git",
|
|
10
11
|
"directory": "rush-plugins/rush-bridge-cache-plugin"
|
|
11
12
|
},
|
|
12
13
|
"homepage": "https://rushjs.io",
|
|
13
|
-
"types": "lib/index.d.ts",
|
|
14
|
+
"types": "./lib-dts/index.d.ts",
|
|
15
|
+
"exports": {
|
|
16
|
+
".": {
|
|
17
|
+
"types": "./lib-dts/index.d.ts",
|
|
18
|
+
"import": "./lib-esm/index.js",
|
|
19
|
+
"require": "./lib-commonjs/index.js"
|
|
20
|
+
},
|
|
21
|
+
"./lib/*.schema.json": "./lib-commonjs/*.schema.json",
|
|
22
|
+
"./lib/*": {
|
|
23
|
+
"types": "./lib-dts/*.d.ts",
|
|
24
|
+
"import": "./lib-esm/*.js",
|
|
25
|
+
"require": "./lib-commonjs/*.js"
|
|
26
|
+
},
|
|
27
|
+
"./rush-plugin-manifest.json": "./rush-plugin-manifest.json",
|
|
28
|
+
"./package.json": "./package.json"
|
|
29
|
+
},
|
|
30
|
+
"typesVersions": {
|
|
31
|
+
"*": {
|
|
32
|
+
"lib/*": [
|
|
33
|
+
"lib-dts/*"
|
|
34
|
+
]
|
|
35
|
+
}
|
|
36
|
+
},
|
|
14
37
|
"dependencies": {
|
|
15
|
-
"@rushstack/ts-command-line": "5.
|
|
16
|
-
"@rushstack/node-core-library": "5.
|
|
17
|
-
"@rushstack/
|
|
18
|
-
"@rushstack/
|
|
38
|
+
"@rushstack/ts-command-line": "5.3.0",
|
|
39
|
+
"@rushstack/node-core-library": "5.20.0",
|
|
40
|
+
"@rushstack/rush-sdk": "5.169.1",
|
|
41
|
+
"@rushstack/terminal": "0.22.0"
|
|
19
42
|
},
|
|
20
43
|
"devDependencies": {
|
|
21
44
|
"eslint": "~9.37.0",
|
|
22
|
-
"@rushstack/heft": "1.
|
|
45
|
+
"@rushstack/heft": "1.2.0",
|
|
23
46
|
"local-node-rig": "1.0.0"
|
|
24
47
|
},
|
|
48
|
+
"sideEffects": false,
|
|
25
49
|
"scripts": {
|
|
26
50
|
"build": "heft test --clean",
|
|
27
51
|
"start": "heft test --clean --watch",
|
|
@@ -4,8 +4,8 @@
|
|
|
4
4
|
{
|
|
5
5
|
"pluginName": "rush-bridge-cache-plugin",
|
|
6
6
|
"description": "Rush plugin that provides the ability to directly read or write the build cache from the command line via a custom choice parameter on build commands.",
|
|
7
|
-
"entryPoint": "./lib/index.js",
|
|
8
|
-
"optionsSchema": "lib/schemas/bridge-cache-config.schema.json"
|
|
7
|
+
"entryPoint": "./lib-commonjs/index.js",
|
|
8
|
+
"optionsSchema": "./lib-commonjs/schemas/bridge-cache-config.schema.json"
|
|
9
9
|
}
|
|
10
10
|
]
|
|
11
11
|
}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
{"kind":"O","text":"Invoking: heft run --only build -- --clean --production\n"}
|
|
2
|
-
{"kind":"O","text":" ---- build started ---- \n"}
|
|
3
|
-
{"kind":"O","text":"[build:copy-json-schemas] Copied 0 files and linked 1 file\n"}
|
|
4
|
-
{"kind":"O","text":"[build:typescript] Using TypeScript version 5.8.2\n"}
|
|
5
|
-
{"kind":"O","text":"[build:typescript] Copied 1 file and linked 0 files\n"}
|
|
6
|
-
{"kind":"O","text":"[build:lint] Using ESLint version 9.37.0\n"}
|
|
7
|
-
{"kind":"O","text":" ---- build finished (10.226s) ---- \n"}
|
|
8
|
-
{"kind":"O","text":"\u001b[1m\u001b[32m-------------------- Finished (10.23s) --------------------\u001b[39m\u001b[22m\n"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
Invoking: heft run --only build -- --clean --production
|
|
2
|
-
---- build started ----
|
|
3
|
-
[build:copy-json-schemas] Copied 0 files and linked 1 file
|
|
4
|
-
[build:typescript] Using TypeScript version 5.8.2
|
|
5
|
-
[build:typescript] Copied 1 file and linked 0 files
|
|
6
|
-
[build:lint] Using ESLint version 9.37.0
|
|
7
|
-
---- build finished (10.226s) ----
|
|
8
|
-
-------------------- Finished (10.23s) --------------------
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
{"kind":"O","text":"Invoking: heft run --only build -- --clean --production\n"}
|
|
2
|
-
{"kind":"O","text":" ---- build started ---- \n"}
|
|
3
|
-
{"kind":"O","text":"[build:copy-json-schemas] Copied 0 files and linked 1 file\n"}
|
|
4
|
-
{"kind":"O","text":"[build:typescript] Using TypeScript version 5.8.2\n"}
|
|
5
|
-
{"kind":"O","text":"[build:typescript] Copied 1 file and linked 0 files\n"}
|
|
6
|
-
{"kind":"O","text":"[build:lint] Using ESLint version 9.37.0\n"}
|
|
7
|
-
{"kind":"O","text":" ---- build finished (10.226s) ---- \n"}
|
|
8
|
-
{"kind":"O","text":"\u001b[1m\u001b[32m-------------------- Finished (10.23s) --------------------\u001b[39m\u001b[22m\n"}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
Start time: Thu Feb 12 2026 22:59:48 GMT+0000 (Coordinated Universal Time)
|
|
2
|
-
Invoking "/usr/bin/tar -c -f /mnt/vss/_work/1/s/common/temp/build-cache/rushstack+rush-bridge-cache-plugin-_phase_build-3e1da8998ed45d48f791b6640f27b152630add44-c8f880c415bba2e0.temp -z --files-from=-"
|
|
3
|
-
|
|
4
|
-
======= BEGIN PROCESS INPUT ======
|
|
5
|
-
.rush/temp/operation/_phase_build/all.log
|
|
6
|
-
.rush/temp/operation/_phase_build/log-chunks.jsonl
|
|
7
|
-
.rush/temp/operation/_phase_build/state.json
|
|
8
|
-
lib/BridgeCachePlugin.d.ts
|
|
9
|
-
lib/BridgeCachePlugin.d.ts.map
|
|
10
|
-
lib/BridgeCachePlugin.js
|
|
11
|
-
lib/BridgeCachePlugin.js.map
|
|
12
|
-
lib/index.d.ts
|
|
13
|
-
lib/index.d.ts.map
|
|
14
|
-
lib/index.js
|
|
15
|
-
lib/index.js.map
|
|
16
|
-
lib/schemas/bridge-cache-config.schema.json
|
|
17
|
-
temp/build/copy-json-schemas/file-copy.json
|
|
18
|
-
temp/build/lint/_eslint-5eVG3S6w.json
|
|
19
|
-
temp/build/lint/lint.sarif
|
|
20
|
-
temp/build/typescript/file-copy.json
|
|
21
|
-
temp/build/typescript/ts_l9Fw4VUO.json
|
|
22
|
-
temp/json-schemas/rush/v5/bridge-cache-config.schema.json
|
|
23
|
-
======== END PROCESS INPUT =======
|
|
24
|
-
======= BEGIN PROCESS OUTPUT =======
|
|
25
|
-
======== END PROCESS OUTPUT ========
|
|
26
|
-
|
|
27
|
-
Exited with code "0"
|
|
@@ -1,90 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"../../../rush-plugins/rush-bridge-cache-plugin": "../../../rush-plugins/rush-bridge-cache-plugin:MlgmJOSj/cNw2dvG80sGaFcslLzhV83T0mX8mWrR1QI=:",
|
|
3
|
-
"@eslint-community/eslint-utils@4.9.1(eslint@9.37.0)": "@eslint-community/eslint-utils@4.9.1(eslint@9.37.0):pV7d94Vt5clzbavGnpkK+61F+5rS6yhGRWSY9HuA0As=:",
|
|
4
|
-
"@eslint-community/regexpp@4.12.2": "@eslint-community/regexpp@4.12.2:uyU80Ai40ZGDQuC92buVjo14SacTIk973Fr0MVtegFM=:",
|
|
5
|
-
"@eslint/config-array@0.21.1(supports-color@8.1.1)": "@eslint/config-array@0.21.1(supports-color@8.1.1):BjPPdCV5Gps4AZbqok+KhAPNwYuYHqaV7Ykl9pzMX+8=:",
|
|
6
|
-
"@eslint/config-helpers@0.4.2": "@eslint/config-helpers@0.4.2:OQdwP6BWyWIP2cHcj6QsSKp4aZLy4SIvBcCT09oBoBQ=:",
|
|
7
|
-
"@eslint/core@0.16.0": "@eslint/core@0.16.0:uzexS4qhmTDm8p5iApsOFpljpWgc7qKg9r9GGqrWzEE=:",
|
|
8
|
-
"@eslint/core@0.17.0": "@eslint/core@0.17.0:cHGqSr/9YApIhRP1zR3cifWv6FHEI/8z3xArH1WgAmE=:",
|
|
9
|
-
"@eslint/eslintrc@3.3.3(supports-color@8.1.1)": "@eslint/eslintrc@3.3.3(supports-color@8.1.1):ShwO2tSNyy1rB84VRfRN2uZ9v6C8pnoNqEGUth4xQAA=:",
|
|
10
|
-
"@eslint/js@9.37.0": "@eslint/js@9.37.0:1lHv+cylTPmaROJN1v+8t/cCOs2jawM8vupYMA3wfiw=:",
|
|
11
|
-
"@eslint/object-schema@2.1.7": "@eslint/object-schema@2.1.7:jSARpbAJ2LddSiVdJ/haY5BZQWoFbBzpJbgwBNzsK/Q=:",
|
|
12
|
-
"@eslint/plugin-kit@0.4.1": "@eslint/plugin-kit@0.4.1:U6S4UH9ougLAXu8snBF6KcGRAXOoHRNhy7UdpKr7P6M=:",
|
|
13
|
-
"@humanfs/core@0.19.1": "@humanfs/core@0.19.1:wVMMJ7xR7qZsFBWq1CxNkTDgR8snl9RoLZ4sH6O/HZM=:",
|
|
14
|
-
"@humanfs/node@0.16.7": "@humanfs/node@0.16.7:xINqZCR6kwIO6xT8DoNiqgB3td5hBnIvvaDgHS4UdEY=:",
|
|
15
|
-
"@humanwhocodes/module-importer@1.0.1": "@humanwhocodes/module-importer@1.0.1:fCoQC76P4Q2f226CjJ4vv5EpSL0Ainb2lbdIe97K1Rc=:",
|
|
16
|
-
"@humanwhocodes/retry@0.4.3": "@humanwhocodes/retry@0.4.3:dWob8oSma9FiVHp6V9fD4fB7S4qF4lhJOj7e6ZgdmOs=:",
|
|
17
|
-
"@types/estree@1.0.8": "@types/estree@1.0.8:727QzLEbjgy3FW8Yk/uPIap1d/zZp1OEZ2HILIT9sT0=:",
|
|
18
|
-
"@types/json-schema@7.0.15": "@types/json-schema@7.0.15:5S/TXvz5YP0wDZWCWUSdt1XDMkd9xx63ujRzhL/gHU4=:",
|
|
19
|
-
"acorn-jsx@5.3.2(acorn@8.15.0)": "acorn-jsx@5.3.2(acorn@8.15.0):fYH9IGa681Wprd2CRN1aUjancVsqumDOmywpFTf5AtI=:",
|
|
20
|
-
"acorn@8.15.0": "acorn@8.15.0:mx7eZhL1y7nHABvAD/MxE7xMMjwGbTabG8ZBsg09kTA=:",
|
|
21
|
-
"ajv@6.12.6": "ajv@6.12.6:Ryd2S/pDCZXGjaJ48IE14Vqa2/k+mLa4SA86apZM7p8=:",
|
|
22
|
-
"ansi-styles@4.3.0": "ansi-styles@4.3.0:ZWSFBwfXYCdLBmX2ZXoVqBWX7sfMR5ZmhLs9Hyh39XY=:",
|
|
23
|
-
"argparse@2.0.1": "argparse@2.0.1:CP2O+CSzekXy2j3jQ2OmDYinunOHtc5Csm3rkUFULc8=:",
|
|
24
|
-
"balanced-match@1.0.2": "balanced-match@1.0.2:gfGr4W+ea8r5s//ubOMelyZUtW6NYxDKRn7E320nT9E=:",
|
|
25
|
-
"brace-expansion@1.1.12": "brace-expansion@1.1.12:WZ7loigFQpKsxn/o3ZZyFCIEJvMvQqIiWubBtlXlQFE=:",
|
|
26
|
-
"callsites@3.1.0": "callsites@3.1.0:idWjoLeDJlAOwomjUQAaBzJpd4IMT3jWXtplCrKm6Ww=:",
|
|
27
|
-
"chalk@4.1.2": "chalk@4.1.2:Ye65wHsxO5agCiS0ku7VLLTcMR3e7m+jrhWtLo91SF4=:",
|
|
28
|
-
"color-convert@2.0.1": "color-convert@2.0.1:hZZd3CXw35XLVUEhmk6HzkHqcS6buTTuyYdCKAwTOK0=:",
|
|
29
|
-
"color-name@1.1.4": "color-name@1.1.4:Hgpi2Zjl2gtvUFUeFu42DzFvXVPruG3eFssCSCVbWE8=:",
|
|
30
|
-
"concat-map@0.0.1": "concat-map@0.0.1:GoKrPWMm+s3dcLfPBXyb8fDpbzIk2Y+KRd32fgfdNAM=:",
|
|
31
|
-
"cross-spawn@7.0.6": "cross-spawn@7.0.6:QjGdMcMYECyN5KGfM8tKE6N8fydsYKJWcjXEKd2LNC0=:",
|
|
32
|
-
"debug@4.4.3(supports-color@8.1.1)": "debug@4.4.3(supports-color@8.1.1):ANJDTwuR2ff7h9OW74kfn2QhH6QfrX46YyeOCgPXZ14=:",
|
|
33
|
-
"deep-is@0.1.4": "deep-is@0.1.4:9bzdBDlCEbKIHwMcLTgO5A7Cx9Qt2EvGWJ6rFD82XiU=:",
|
|
34
|
-
"escape-string-regexp@4.0.0": "escape-string-regexp@4.0.0:CPzYl7HWqJw841Bt4gVlED3dDts6LmLIZgDLWvZQwBY=:",
|
|
35
|
-
"eslint-scope@8.4.0": "eslint-scope@8.4.0:8sCuk/6sg3/iCXu4ikInhuUYyvcQoTXETHdBY6JCzr0=:",
|
|
36
|
-
"eslint-visitor-keys@3.4.3": "eslint-visitor-keys@3.4.3:JgR2rf9Jpzva8lFrKE+5yhxLwgC8qNXtm9LsuSBeAT8=:",
|
|
37
|
-
"eslint-visitor-keys@4.2.1": "eslint-visitor-keys@4.2.1:uyQNsuDcPZL1cJ29uclbt/ITeoMox36b0gbaWL8EB2E=:",
|
|
38
|
-
"eslint@9.37.0": "eslint@9.37.0:rk3skjy1IyyOhzGEhT2sq+UKUs3RmcUrWMaScHhroz0=:",
|
|
39
|
-
"espree@10.4.0": "espree@10.4.0:NLXs2uyUi7cK0j1u0OxWFDO6zYcblsb73pCi4SupIOE=:",
|
|
40
|
-
"esquery@1.7.0": "esquery@1.7.0:7lTtVBqirWgWzvUR2UO+6Vgzeyg40AnBbmtPEJHSYnI=:",
|
|
41
|
-
"esrecurse@4.3.0": "esrecurse@4.3.0:Uyo8CNm+VUgeJSS5C3ZgOky7Jzoy9NqvDpoJmqgzC1s=:",
|
|
42
|
-
"estraverse@5.3.0": "estraverse@5.3.0:00AEUywuhKDu6n0lVb10DR2UWrNOIvYuMGqHj0CdwnU=:",
|
|
43
|
-
"esutils@2.0.3": "esutils@2.0.3:aJX9PGT17yCKr7iAZ5tgGa3YKT3+hJEsQnqywiqu4Ls=:",
|
|
44
|
-
"fast-deep-equal@3.1.3": "fast-deep-equal@3.1.3:sQzlu0W93kExDoLpH+J9nRYeCD3IKRR56QR+L5402As=:",
|
|
45
|
-
"fast-json-stable-stringify@2.1.0": "fast-json-stable-stringify@2.1.0:K10zIkqqk5HN6fyP489Qokzz+PPha5DypCjM/vsSlHQ=:",
|
|
46
|
-
"fast-levenshtein@2.0.6": "fast-levenshtein@2.0.6:cj7tvs40k4b5TCsQAzLpftvxrNH656DEVTohBtwuznY=:",
|
|
47
|
-
"file-entry-cache@8.0.0": "file-entry-cache@8.0.0:SQqaU0bN18sw2FrNETBKmQ2diPepNTukqj8c1h6Z17M=:",
|
|
48
|
-
"find-up@5.0.0": "find-up@5.0.0:qGgTzQhtN9dzd8OFSODArCGrmz7K7p1ru5REFT+nuJM=:",
|
|
49
|
-
"flat-cache@4.0.1": "flat-cache@4.0.1:a+DWDtWKRdbcXR3b2WwRzt19oEmJI2bzSsPiFD4OftY=:",
|
|
50
|
-
"flatted@3.3.3": "flatted@3.3.3:n/tySR+oJ9GqN0MHUglQk6rKnm/pocLOndnVVqnwZX8=:",
|
|
51
|
-
"glob-parent@6.0.2": "glob-parent@6.0.2:0p37uOI61LJEBi5J0LqvCZpybCryfpCHpgXAbdojSAU=:",
|
|
52
|
-
"globals@14.0.0": "globals@14.0.0:8M+Pg41xX4x7jxpJEHvAkp8r+p6TD38x0LOnrLneS38=:",
|
|
53
|
-
"has-flag@4.0.0": "has-flag@4.0.0:zgfmr3OsDLCMHlibU0ENn6OJauYzOf52DD0KUMi60HM=:",
|
|
54
|
-
"ignore@5.3.2": "ignore@5.3.2:yDHLBnXz3uWHnrTYakTFCNYHQ8taE2k5y6mSNt2aPIA=:",
|
|
55
|
-
"import-fresh@3.3.1": "import-fresh@3.3.1:V85oxEIxh/3C01hNHGqCBxZvLr0D/OsKG70pMGc2c0U=:",
|
|
56
|
-
"imurmurhash@0.1.4": "imurmurhash@0.1.4:Do4JJP58nt9bhIKZ6PdBxKNLuILFDd2QEH8LRaO9rvE=:",
|
|
57
|
-
"is-extglob@2.1.1": "is-extglob@2.1.1:AMteoIRG/AM61zOJM8SDhzp+j5Az1DLUiE+Xa0axHgc=:",
|
|
58
|
-
"is-glob@4.0.3": "is-glob@4.0.3:IV1BYKFvh0lG6Iv4rcSZbUF8fezvPI6gta6HezidaLA=:",
|
|
59
|
-
"isexe@2.0.0": "isexe@2.0.0:8n/cuvODXVLGPi7fczU6oeUOBtC1KPQg3RpBNdTdLPc=:",
|
|
60
|
-
"js-yaml@4.1.1": "js-yaml@4.1.1:U1+0lgDx+2f92l4id3YhAISRxaHOuGpc0d+LD6yKbrI=:",
|
|
61
|
-
"json-buffer@3.0.1": "json-buffer@3.0.1:KnG+FGWhYZ7WwE6FB1gTZ1x+vLjjpFK5hEP3osbgBos=:",
|
|
62
|
-
"json-schema-traverse@0.4.1": "json-schema-traverse@0.4.1:MmYShm+RH8i/sFAvj54xnWkkSkqqYi7EpDgoXnyqus4=:",
|
|
63
|
-
"json-stable-stringify-without-jsonify@1.0.1": "json-stable-stringify-without-jsonify@1.0.1:TDV4Iv8qj2BIUNgKi3LYEx9gKwYu2Azddhj50w6wTws=:",
|
|
64
|
-
"keyv@4.5.4": "keyv@4.5.4:IOAKQ0jOlet3hwxtEDYImR5HjaBV79JKkCnqiVDhjwM=:",
|
|
65
|
-
"levn@0.4.1": "levn@0.4.1:RV/RjN8oIKM36mly7RXqmmuZwnsfJvN9fuLBZK+Ht10=:",
|
|
66
|
-
"locate-path@6.0.0": "locate-path@6.0.0:E+wgrR8ZCmpCgttUQXSCTlPKs302KbvcF8qt5X/MbcU=:",
|
|
67
|
-
"lodash.merge@4.6.2": "lodash.merge@4.6.2:EXgcubv0+a/3dVPS5zFM1runKQWf9swiWEUu51lBRqw=:",
|
|
68
|
-
"minimatch@3.1.2": "minimatch@3.1.2:760dxYkpzsi3CWx9C5IcpXx924w+anGnFHkN6mxMxto=:",
|
|
69
|
-
"ms@2.1.3": "ms@2.1.3:xgLWg3kVMamVjHxNqBOX2ye0Wk7IMAMEzH0+Ih3GdAI=:",
|
|
70
|
-
"natural-compare@1.4.0": "natural-compare@1.4.0:TYI1bmKu+ZHaobZXs/B5hNXj1gFjP1MbXA/aTJrSvXk=:",
|
|
71
|
-
"optionator@0.9.4": "optionator@0.9.4:VXQcNvIxRkutRM+nV1xLnPEIz3OkO0yzxnaUtDpUbFE=:",
|
|
72
|
-
"p-limit@3.1.0": "p-limit@3.1.0:LdKRSSgTab016qRCjAyMxtMfWqqbZWRWjYN5Azfl13Q=:",
|
|
73
|
-
"p-locate@5.0.0": "p-locate@5.0.0:jSPkRsfoMWQdFIprhJqMLiq3pQVVMpAKDWCH+Jzzyhc=:",
|
|
74
|
-
"parent-module@1.0.1": "parent-module@1.0.1:7jcQBBr0dPfjyj7XXd1T3kplUES6v+rOhYu0x8cMK5I=:",
|
|
75
|
-
"path-exists@4.0.0": "path-exists@4.0.0:U8NGTjSfw+tTNMrI25cZA7Kr4QZlrBG6tOCKmu3WuJA=:",
|
|
76
|
-
"path-key@3.1.1": "path-key@3.1.1:G/7uS4scwsLV/mJitoXLEoSeLcbOLyC7mq3JaNY5L/Y=:",
|
|
77
|
-
"prelude-ls@1.2.1": "prelude-ls@1.2.1:77jm+R+stVYevlHR6mLJHVcOyB9clSWbWPCMOrhoFM4=:",
|
|
78
|
-
"punycode@2.3.1": "punycode@2.3.1:hBQ2kq3SCuY+AhrWXH8OhCuKpGtK75O10qdh6clgs7g=:",
|
|
79
|
-
"resolve-from@4.0.0": "resolve-from@4.0.0:DX1R0DdeDdDijEG++piS/gfwnUozHRPIUEeE+d9jpuk=:",
|
|
80
|
-
"shebang-command@2.0.0": "shebang-command@2.0.0:OLAZ6j51uPEAszP1K4Rex7GU7xSTv4E8umEZftOq2Ag=:",
|
|
81
|
-
"shebang-regex@3.0.0": "shebang-regex@3.0.0:ny+KjAiF2rsJrYeyelqno4XXRBhG1xbGdeGqew0SiFE=:",
|
|
82
|
-
"strip-json-comments@3.1.1": "strip-json-comments@3.1.1:b7Guud8xp0BNfyZNDrMqD/tnkn5cu9tjzD+P3X7OI9Y=:",
|
|
83
|
-
"supports-color@7.2.0": "supports-color@7.2.0:sYeXIOoG2x32GA0jy95SyyfTIGn4njaK3SOfylJNpbE=:",
|
|
84
|
-
"supports-color@8.1.1": "supports-color@8.1.1:IlKnJib+1wvgnU/NB8X/o14yZNJZAaN87xE6uQ0OU7I=:",
|
|
85
|
-
"type-check@0.4.0": "type-check@0.4.0:IVtRP5BW1I8SGLuymCsuyGHe6YzISs02l3ZaR/nY1kw=:",
|
|
86
|
-
"uri-js@4.4.1": "uri-js@4.4.1:Q2BobLd4waRYnsj44SvcxeaDwkPIjLhPfH3BclqOaF4=:",
|
|
87
|
-
"which@2.0.2": "which@2.0.2:80HW1PmNzsNX+pyT6n7O+c62iDakyLL2/dI8hSmvNlk=:",
|
|
88
|
-
"word-wrap@1.2.5": "word-wrap@1.2.5:lNGZNaQ0hxB5pVG85e6u0w4w0K+uOJi6Y2P1fJqOqRo=:",
|
|
89
|
-
"yocto-queue@0.1.0": "yocto-queue@0.1.0:Dtxi56M74yiecaLhTY5kTZuzXvCHfjZlLQG4jzDqAAc=:"
|
|
90
|
-
}
|
package/config/heft.json
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "https://developer.microsoft.com/json-schemas/heft/v0/heft.schema.json",
|
|
3
|
-
|
|
4
|
-
"extends": "local-node-rig/profiles/default/config/heft.json",
|
|
5
|
-
"phasesByName": {
|
|
6
|
-
"build": {
|
|
7
|
-
"tasksByName": {
|
|
8
|
-
"copy-json-schemas": {
|
|
9
|
-
"taskPlugin": {
|
|
10
|
-
"pluginPackage": "@rushstack/heft",
|
|
11
|
-
"pluginName": "copy-files-plugin",
|
|
12
|
-
"options": {
|
|
13
|
-
"copyOperations": [
|
|
14
|
-
{
|
|
15
|
-
"sourcePath": "src/schemas",
|
|
16
|
-
"destinationFolders": ["temp/json-schemas/rush/v5"],
|
|
17
|
-
"fileExtensions": [".schema.json"],
|
|
18
|
-
"hardlink": true
|
|
19
|
-
}
|
|
20
|
-
]
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
}
|
package/config/jest.config.json
DELETED
package/config/rig.json
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
// The "rig.json" file directs tools to look for their config files in an external package.
|
|
3
|
-
// Documentation for this system: https://www.npmjs.com/package/@rushstack/rig-package
|
|
4
|
-
"$schema": "https://developer.microsoft.com/json-schemas/rig-package/rig.schema.json",
|
|
5
|
-
"rigPackageName": "local-node-rig"
|
|
6
|
-
}
|
package/eslint.config.js
DELETED
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license.
|
|
2
|
-
// See LICENSE in the project root for license information.
|
|
3
|
-
|
|
4
|
-
const nodeProfile = require('local-node-rig/profiles/default/includes/eslint/flat/profile/node');
|
|
5
|
-
const friendlyLocalsMixin = require('local-node-rig/profiles/default/includes/eslint/flat/mixins/friendly-locals');
|
|
6
|
-
const tsdocMixin = require('local-node-rig/profiles/default/includes/eslint/flat/mixins/tsdoc');
|
|
7
|
-
|
|
8
|
-
module.exports = [
|
|
9
|
-
...nodeProfile,
|
|
10
|
-
...friendlyLocalsMixin,
|
|
11
|
-
...tsdocMixin,
|
|
12
|
-
{
|
|
13
|
-
files: ['**/*.ts', '**/*.tsx'],
|
|
14
|
-
languageOptions: {
|
|
15
|
-
parserOptions: {
|
|
16
|
-
tsconfigRootDir: __dirname
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
];
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BridgeCachePlugin.js","sourceRoot":"","sources":["../src/BridgeCachePlugin.ts"],"names":[],"mappings":";AAAA,4FAA4F;AAC5F,2DAA2D;;;AAE3D,oEAAiE;AACjE,kDAAkF;AAWlF,gEAAsE;AAGtE,MAAM,WAAW,GAA4B,uBAAuB,CAAC;AAErE,MAAM,iBAAiB,GAAW,MAAM,CAAC;AACzC,MAAM,kBAAkB,GAAY,OAAO,CAAC;AAS5C,MAAa,iBAAiB;IAK5B,YAAmB,OAAkC;QAJrC,eAAU,GAAW,WAAW,CAAC;QAK/C,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,mBAAmB,CAAC;QACxD,IAAI,CAAC,kCAAkC,GAAG,OAAO,CAAC,iCAAiC,CAAC;QAEpF,IAAI,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC;YAC/B,MAAM,IAAI,KAAK,CACb,wHAAwH,CACzH,CAAC;QACJ,CAAC;IACH,CAAC;IAEM,KAAK,CAAC,OAAoB;QAC/B,OAAO,CAAC,KAAK,CAAC,mBAAmB,CAAC,UAAU,CAAC,WAAW,EAAE,KAAK,EAAE,OAAuB,EAAE,EAAE;YAC1F,MAAM,MAAM,GAAY,OAAO,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;YAEvD,IAAI,WAAoC,CAAC;YACzC,IAAI,oBAAoB,GAAY,KAAK,CAAC;YAE1C,wGAAwG;YACxG,OAAO,CAAC,KAAK,CAAC,gBAAgB,CAAC,GAAG,CAChC,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,CAAC,gBAAgB,EAAE,EACrD,CAAC,UAA0B,EAAE,OAAiC,EAAkB,EAAE;;gBAChF,MAAM,EAAE,gBAAgB,EAAE,GAAG,OAAO,CAAC;gBACrC,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC;gBAErD,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;oBAC9B,IAAI,CAAC,CAAA,MAAA,OAAO,CAAC,uBAAuB,0CAAE,iBAAiB,CAAA,EAAE,CAAC;wBACxD,MAAM,IAAI,KAAK,CACb,+CAA+C,IAAI,CAAC,oBAAoB,cAAc,CACvF,CAAC;oBACJ,CAAC;oBAED,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;wBACnC,SAAS,CAAC,OAAO,GAAG,KAAK,CAAC;oBAC5B,CAAC;oBAED,oBAAoB,GAAG,IAAI,CAAC,8BAA8B,CAAC,gBAAgB,CAAC,CAAC;gBAC/E,CAAC;gBAED,OAAO,UAAU,CAAC;YACpB,CAAC,CACF,CAAC;YACF,wCAAwC;YACxC,OAAO,CAAC,KAAK,CAAC,uBAAuB,CAAC,UAAU,CAC9C,WAAW,EACX,KAAK,EACH,iBAA4D,EAC5D,OAAkC,EACnB,EAAE;gBACjB,MAAM,EAAE,uBAAuB,EAAE,GAAG,OAAO,CAAC;gBAC5C,MAAM,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC;gBAE5B,IAAI,WAAW,KAAK,SAAS,EAAE,CAAC;oBAC9B,OAAO;gBACT,CAAC;gBAED,IAAI,CAAC,CAAA,uBAAuB,aAAvB,uBAAuB,uBAAvB,uBAAuB,CAAE,iBAAiB,CAAA,EAAE,CAAC;oBAChD,MAAM,IAAI,KAAK,CACb,+CAA+C,IAAI,CAAC,oBAAoB,cAAc,CACvF,CAAC;gBACJ,CAAC;gBAED,MAAM,kBAAkB,GAAmC,IAAI,GAAG,EAAE,CAAC;gBACrE,KAAK,MAAM,wBAAwB,IAAI,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC;oBAClE,IAAI,CAAC,wBAAwB,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;wBAC/C,kBAAkB,CAAC,GAAG,CAAC,wBAAwB,CAAC,CAAC;oBACnD,CAAC;gBACH,CAAC;gBAED,IAAI,YAAY,GAAW,CAAC,CAAC;gBAE7B,MAAM,yBAAK,CAAC,YAAY,CACtB,kBAAkB,EAClB,KAAK,EAAE,wBAAmD,EAAE,EAAE;;oBAC5D,MAAM,iBAAiB,GAAwB,+BAAmB,CAAC,YAAY,CAC7E,wBAAwB,EACxB;wBACE,uBAAuB;wBACvB,QAAQ;qBACT,CACF,CAAC;oBAEF,MAAM,EAAE,SAAS,EAAE,GAAG,wBAAwB,CAAC;oBAE/C,IAAI,WAAW,KAAK,iBAAiB,EAAE,CAAC;wBACtC,MAAM,OAAO,GAAY,MAAM,iBAAiB,CAAC,wBAAwB,CAAC,QAAQ,CAAC,CAAC;wBACpF,IAAI,OAAO,EAAE,CAAC;4BACZ,EAAE,YAAY,CAAC;4BACf,QAAQ,CAAC,SAAS,CAChB,cAAc,SAAS,CAAC,IAAI,sDAAsD,CACnF,CAAC;4BACF,QAAQ,CAAC,SAAS,CAAC,cAAc,iBAAiB,CAAC,OAAO,EAAE,CAAC,CAAC;wBAChE,CAAC;6BAAM,CAAC;4BACN,QAAQ,CAAC,gBAAgB,CACvB,cAAc,SAAS,CAAC,IAAI,wDAAwD,CACrF,CAAC;wBACJ,CAAC;oBACH,CAAC;yBAAM,IAAI,WAAW,KAAK,kBAAkB,EAAE,CAAC;wBAC9C,qIAAqI;wBACrI,IACE,oBAAoB;6BACpB,MAAA,SAAS,CAAC,QAAQ,0CAAE,iBAAiB,CAAA;4BACrC,CAAA,MAAA,MAAA,SAAS,CAAC,QAAQ,0CAAE,iBAAiB,0CAAE,MAAM,IAAG,CAAC,EACjD,CAAC;4BACD,MAAM,aAAa,GAAW,MAAA,SAAS,CAAC,iBAAiB,0CAAE,aAAa,CAAC;4BACzE,MAAM,cAAc,GAAa,EAAE,CAAC;4BACpC,SAAS,CAAC,QAAQ,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,gBAAwB,EAAE,EAAE;gCACxE,IAAI,CAAC,8BAAU,CAAC,MAAM,CAAC,GAAG,aAAa,IAAI,gBAAgB,EAAE,CAAC,EAAE,CAAC;oCAC/D,cAAc,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;gCACxC,CAAC;4BACH,CAAC,CAAC,CAAC;4BACH,IAAI,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gCAC9B,QAAQ,CAAC,gBAAgB,CACvB,cAAc,SAAS,CAAC,IAAI,kDAAkD,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,+BAA+B,CACzI,CAAC;gCACF,OAAO;4BACT,CAAC;wBACH,CAAC;wBAED,MAAM,OAAO,GAAY,MAAM,iBAAiB,CAAC,qBAAqB,CAAC,QAAQ,CAAC,CAAC;wBACjF,IAAI,OAAO,EAAE,CAAC;4BACZ,EAAE,YAAY,CAAC;4BACf,QAAQ,CAAC,SAAS,CAChB,cAAc,SAAS,CAAC,IAAI,yEAAyE,CACtG,CAAC;4BACF,QAAQ,CAAC,SAAS,CAAC,cAAc,iBAAiB,CAAC,OAAO,EAAE,CAAC,CAAC;wBAChE,CAAC;6BAAM,CAAC;4BACN,QAAQ,CAAC,cAAc,CACrB,cAAc,SAAS,CAAC,IAAI,yEAAyE,CACtG,CAAC;wBACJ,CAAC;oBACH,CAAC;gBACH,CAAC,EACD;oBACE,WAAW,EAAE,OAAO,CAAC,WAAW;iBACjC,CACF,CAAC;gBAEF,QAAQ,CAAC,SAAS,CAChB,oBAAoB,WAAW,gCAAgC,YAAY,WAAW,kBAAkB,CAAC,IAAI,cAAc,CAC5H,CAAC;YACJ,CAAC,CACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,eAAe,CACrB,gBAA2D;QAE3D,MAAM,oBAAoB,GAAqC,gBAAgB,CAAC,GAAG,CACjF,IAAI,CAAC,oBAAoB,CAC1B,CAAC;QAEF,IAAI,oBAAoB,EAAE,CAAC;YACzB,IAAI,oBAAoB,CAAC,IAAI,KAAK,0CAAwB,CAAC,MAAM,EAAE,CAAC;gBAClE,MAAM,IAAI,KAAK,CACb,kBAAkB,IAAI,CAAC,oBAAoB,4DAA4D,CACxG,CAAC;YACJ,CAAC;YAED,IACE,oBAAoB,CAAC,YAAY,CAAC,IAAI,KAAK,CAAC;gBAC5C,CAAC,oBAAoB,CAAC,YAAY,CAAC,GAAG,CAAC,iBAAiB,CAAC;gBACzD,CAAC,oBAAoB,CAAC,YAAY,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAC1D,CAAC;gBACD,MAAM,IAAI,KAAK,CACb,kBAAkB,IAAI,CAAC,oBAAoB,qCAAqC,iBAAiB,UAAU,kBAAkB,2CAA2C,CACzK,CAAC;YACJ,CAAC;YAED,MAAM,KAAK,GAAuB,oBAAoB,CAAC,KAAK,CAAC;YAC7D,QAAQ,KAAK,EAAE,CAAC;gBACd,KAAK,iBAAiB,CAAC;gBACvB,KAAK,kBAAkB;oBACrB,OAAO,KAAK,CAAC;gBACf,KAAK,SAAS;oBACZ,OAAO,SAAS,CAAC;gBACnB;oBACE,MAAM,IAAI,KAAK,CACb,kBAAkB,IAAI,CAAC,oBAAoB,sBAAsB,iBAAiB,SAAS,kBAAkB,iBAAiB,KAAK,2CAA2C,CAC/K,CAAC;YACN,CAAC;QACH,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,8BAA8B,CACpC,gBAA2D;QAE3D,IAAI,CAAC,IAAI,CAAC,kCAAkC,EAAE,CAAC;YAC7C,OAAO,KAAK,CAAC;QACf,CAAC;QAED,MAAM,yBAAyB,GAAqC,gBAAgB,CAAC,GAAG,CACtF,IAAI,CAAC,kCAAkC,CACxC,CAAC;QAEF,IAAI,CAAC,yBAAyB,EAAE,CAAC;YAC/B,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,yBAAyB,CAAC,IAAI,KAAK,0CAAwB,CAAC,IAAI,EAAE,CAAC;YACrE,MAAM,IAAI,KAAK,CAAC,kBAAkB,IAAI,CAAC,kCAAkC,mBAAmB,CAAC,CAAC;QAChG,CAAC;QAED,OAAO,yBAAyB,CAAC,KAAK,CAAC;IACzC,CAAC;CACF;AArND,8CAqNC","sourcesContent":["// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license.\n// See LICENSE in the project root for license information.\n\nimport { Async, FileSystem } from '@rushstack/node-core-library';\nimport { _OperationBuildCache as OperationBuildCache } from '@rushstack/rush-sdk';\nimport type {\n ICreateOperationsContext,\n IExecuteOperationsContext,\n ILogger,\n IOperationExecutionResult,\n IPhasedCommand,\n IRushPlugin,\n Operation,\n RushSession\n} from '@rushstack/rush-sdk';\nimport { CommandLineParameterKind } from '@rushstack/ts-command-line';\nimport type { CommandLineParameter } from '@rushstack/ts-command-line';\n\nconst PLUGIN_NAME: 'RushBridgeCachePlugin' = 'RushBridgeCachePlugin';\n\nconst CACHE_ACTION_READ: 'read' = 'read';\nconst CACHE_ACTION_WRITE: 'write' = 'write';\n\ntype CacheAction = typeof CACHE_ACTION_READ | typeof CACHE_ACTION_WRITE;\n\nexport interface IBridgeCachePluginOptions {\n readonly actionParameterName: string;\n readonly requireOutputFoldersParameterName: string | undefined;\n}\n\nexport class BridgeCachePlugin implements IRushPlugin {\n public readonly pluginName: string = PLUGIN_NAME;\n private readonly _actionParameterName: string;\n private readonly _requireOutputFoldersParameterName: string | undefined;\n\n public constructor(options: IBridgeCachePluginOptions) {\n this._actionParameterName = options.actionParameterName;\n this._requireOutputFoldersParameterName = options.requireOutputFoldersParameterName;\n\n if (!this._actionParameterName) {\n throw new Error(\n 'The \"actionParameterName\" option must be provided for the BridgeCachePlugin. Please see the plugin README for details.'\n );\n }\n }\n\n public apply(session: RushSession): void {\n session.hooks.runAnyPhasedCommand.tapPromise(PLUGIN_NAME, async (command: IPhasedCommand) => {\n const logger: ILogger = session.getLogger(PLUGIN_NAME);\n\n let cacheAction: CacheAction | undefined;\n let requireOutputFolders: boolean = false;\n\n // cancel the actual operations. We don't want to run the command, just cache the output folders on disk\n command.hooks.createOperations.tap(\n { name: PLUGIN_NAME, stage: Number.MAX_SAFE_INTEGER },\n (operations: Set<Operation>, context: ICreateOperationsContext): Set<Operation> => {\n const { customParameters } = context;\n cacheAction = this._getCacheAction(customParameters);\n\n if (cacheAction !== undefined) {\n if (!context.buildCacheConfiguration?.buildCacheEnabled) {\n throw new Error(\n `The build cache must be enabled to use the \"${this._actionParameterName}\" parameter.`\n );\n }\n\n for (const operation of operations) {\n operation.enabled = false;\n }\n\n requireOutputFolders = this._isRequireOutputFoldersFlagSet(customParameters);\n }\n\n return operations;\n }\n );\n // populate the cache for each operation\n command.hooks.beforeExecuteOperations.tapPromise(\n PLUGIN_NAME,\n async (\n recordByOperation: Map<Operation, IOperationExecutionResult>,\n context: IExecuteOperationsContext\n ): Promise<void> => {\n const { buildCacheConfiguration } = context;\n const { terminal } = logger;\n\n if (cacheAction === undefined) {\n return;\n }\n\n if (!buildCacheConfiguration?.buildCacheEnabled) {\n throw new Error(\n `The build cache must be enabled to use the \"${this._actionParameterName}\" parameter.`\n );\n }\n\n const filteredOperations: Set<IOperationExecutionResult> = new Set();\n for (const operationExecutionResult of recordByOperation.values()) {\n if (!operationExecutionResult.operation.isNoOp) {\n filteredOperations.add(operationExecutionResult);\n }\n }\n\n let successCount: number = 0;\n\n await Async.forEachAsync(\n filteredOperations,\n async (operationExecutionResult: IOperationExecutionResult) => {\n const projectBuildCache: OperationBuildCache = OperationBuildCache.forOperation(\n operationExecutionResult,\n {\n buildCacheConfiguration,\n terminal\n }\n );\n\n const { operation } = operationExecutionResult;\n\n if (cacheAction === CACHE_ACTION_READ) {\n const success: boolean = await projectBuildCache.tryRestoreFromCacheAsync(terminal);\n if (success) {\n ++successCount;\n terminal.writeLine(\n `Operation \"${operation.name}\": Outputs have been restored from the build cache.\"`\n );\n terminal.writeLine(`Cache key: ${projectBuildCache.cacheId}`);\n } else {\n terminal.writeWarningLine(\n `Operation \"${operation.name}\": Outputs could not be restored from the build cache.`\n );\n }\n } else if (cacheAction === CACHE_ACTION_WRITE) {\n // if the require output folders flag has been passed, skip populating the cache if any of the expected output folders does not exist\n if (\n requireOutputFolders &&\n operation.settings?.outputFolderNames &&\n operation.settings?.outputFolderNames?.length > 0\n ) {\n const projectFolder: string = operation.associatedProject?.projectFolder;\n const missingFolders: string[] = [];\n operation.settings.outputFolderNames.forEach((outputFolderName: string) => {\n if (!FileSystem.exists(`${projectFolder}/${outputFolderName}`)) {\n missingFolders.push(outputFolderName);\n }\n });\n if (missingFolders.length > 0) {\n terminal.writeWarningLine(\n `Operation \"${operation.name}\": The following output folders do not exist: \"${missingFolders.join('\", \"')}\". Skipping cache population.`\n );\n return;\n }\n }\n\n const success: boolean = await projectBuildCache.trySetCacheEntryAsync(terminal);\n if (success) {\n ++successCount;\n terminal.writeLine(\n `Operation \"${operation.name}\": Existing outputs have been successfully written to the build cache.\"`\n );\n terminal.writeLine(`Cache key: ${projectBuildCache.cacheId}`);\n } else {\n terminal.writeErrorLine(\n `Operation \"${operation.name}\": An error occurred while writing existing outputs to the build cache.`\n );\n }\n }\n },\n {\n concurrency: context.parallelism\n }\n );\n\n terminal.writeLine(\n `Cache operation \"${cacheAction}\" completed successfully for ${successCount} out of ${filteredOperations.size} operations.`\n );\n }\n );\n });\n }\n\n private _getCacheAction(\n customParameters: ReadonlyMap<string, CommandLineParameter>\n ): CacheAction | undefined {\n const cacheActionParameter: CommandLineParameter | undefined = customParameters.get(\n this._actionParameterName\n );\n\n if (cacheActionParameter) {\n if (cacheActionParameter.kind !== CommandLineParameterKind.Choice) {\n throw new Error(\n `The parameter \"${this._actionParameterName}\" must be a choice. Please check the plugin configuration.`\n );\n }\n\n if (\n cacheActionParameter.alternatives.size !== 2 ||\n !cacheActionParameter.alternatives.has(CACHE_ACTION_READ) ||\n !cacheActionParameter.alternatives.has(CACHE_ACTION_WRITE)\n ) {\n throw new Error(\n `The parameter \"${this._actionParameterName}\" must have exactly two choices: \"${CACHE_ACTION_READ}\" and \"${CACHE_ACTION_WRITE}\". Please check the plugin configuration.`\n );\n }\n\n const value: string | undefined = cacheActionParameter.value;\n switch (value) {\n case CACHE_ACTION_READ:\n case CACHE_ACTION_WRITE:\n return value;\n case undefined:\n return undefined;\n default:\n throw new Error(\n `The parameter \"${this._actionParameterName}\" must be one of: \"${CACHE_ACTION_READ}\" or \"${CACHE_ACTION_WRITE}\". Received: \"${value}\". Please check the plugin configuration.`\n );\n }\n }\n\n return undefined;\n }\n\n private _isRequireOutputFoldersFlagSet(\n customParameters: ReadonlyMap<string, CommandLineParameter>\n ): boolean {\n if (!this._requireOutputFoldersParameterName) {\n return false;\n }\n\n const requireOutputFoldersParam: CommandLineParameter | undefined = customParameters.get(\n this._requireOutputFoldersParameterName\n );\n\n if (!requireOutputFoldersParam) {\n return false;\n }\n\n if (requireOutputFoldersParam.kind !== CommandLineParameterKind.Flag) {\n throw new Error(`The parameter \"${this._requireOutputFoldersParameterName}\" must be a flag.`);\n }\n\n return requireOutputFoldersParam.value;\n }\n}\n"]}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
Invoking: heft run --only build -- --clean --production
|
|
2
|
-
---- build started ----
|
|
3
|
-
[build:copy-json-schemas] Copied 0 files and linked 1 file
|
|
4
|
-
[build:typescript] Using TypeScript version 5.8.2
|
|
5
|
-
[build:typescript] Copied 1 file and linked 0 files
|
|
6
|
-
[build:lint] Using ESLint version 9.37.0
|
|
7
|
-
---- build finished (10.226s) ----
|
|
8
|
-
-------------------- Finished (10.23s) --------------------
|
package/src/BridgeCachePlugin.ts
DELETED
|
@@ -1,244 +0,0 @@
|
|
|
1
|
-
// Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the MIT license.
|
|
2
|
-
// See LICENSE in the project root for license information.
|
|
3
|
-
|
|
4
|
-
import { Async, FileSystem } from '@rushstack/node-core-library';
|
|
5
|
-
import { _OperationBuildCache as OperationBuildCache } from '@rushstack/rush-sdk';
|
|
6
|
-
import type {
|
|
7
|
-
ICreateOperationsContext,
|
|
8
|
-
IExecuteOperationsContext,
|
|
9
|
-
ILogger,
|
|
10
|
-
IOperationExecutionResult,
|
|
11
|
-
IPhasedCommand,
|
|
12
|
-
IRushPlugin,
|
|
13
|
-
Operation,
|
|
14
|
-
RushSession
|
|
15
|
-
} from '@rushstack/rush-sdk';
|
|
16
|
-
import { CommandLineParameterKind } from '@rushstack/ts-command-line';
|
|
17
|
-
import type { CommandLineParameter } from '@rushstack/ts-command-line';
|
|
18
|
-
|
|
19
|
-
const PLUGIN_NAME: 'RushBridgeCachePlugin' = 'RushBridgeCachePlugin';
|
|
20
|
-
|
|
21
|
-
const CACHE_ACTION_READ: 'read' = 'read';
|
|
22
|
-
const CACHE_ACTION_WRITE: 'write' = 'write';
|
|
23
|
-
|
|
24
|
-
type CacheAction = typeof CACHE_ACTION_READ | typeof CACHE_ACTION_WRITE;
|
|
25
|
-
|
|
26
|
-
export interface IBridgeCachePluginOptions {
|
|
27
|
-
readonly actionParameterName: string;
|
|
28
|
-
readonly requireOutputFoldersParameterName: string | undefined;
|
|
29
|
-
}
|
|
30
|
-
|
|
31
|
-
export class BridgeCachePlugin implements IRushPlugin {
|
|
32
|
-
public readonly pluginName: string = PLUGIN_NAME;
|
|
33
|
-
private readonly _actionParameterName: string;
|
|
34
|
-
private readonly _requireOutputFoldersParameterName: string | undefined;
|
|
35
|
-
|
|
36
|
-
public constructor(options: IBridgeCachePluginOptions) {
|
|
37
|
-
this._actionParameterName = options.actionParameterName;
|
|
38
|
-
this._requireOutputFoldersParameterName = options.requireOutputFoldersParameterName;
|
|
39
|
-
|
|
40
|
-
if (!this._actionParameterName) {
|
|
41
|
-
throw new Error(
|
|
42
|
-
'The "actionParameterName" option must be provided for the BridgeCachePlugin. Please see the plugin README for details.'
|
|
43
|
-
);
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
public apply(session: RushSession): void {
|
|
48
|
-
session.hooks.runAnyPhasedCommand.tapPromise(PLUGIN_NAME, async (command: IPhasedCommand) => {
|
|
49
|
-
const logger: ILogger = session.getLogger(PLUGIN_NAME);
|
|
50
|
-
|
|
51
|
-
let cacheAction: CacheAction | undefined;
|
|
52
|
-
let requireOutputFolders: boolean = false;
|
|
53
|
-
|
|
54
|
-
// cancel the actual operations. We don't want to run the command, just cache the output folders on disk
|
|
55
|
-
command.hooks.createOperations.tap(
|
|
56
|
-
{ name: PLUGIN_NAME, stage: Number.MAX_SAFE_INTEGER },
|
|
57
|
-
(operations: Set<Operation>, context: ICreateOperationsContext): Set<Operation> => {
|
|
58
|
-
const { customParameters } = context;
|
|
59
|
-
cacheAction = this._getCacheAction(customParameters);
|
|
60
|
-
|
|
61
|
-
if (cacheAction !== undefined) {
|
|
62
|
-
if (!context.buildCacheConfiguration?.buildCacheEnabled) {
|
|
63
|
-
throw new Error(
|
|
64
|
-
`The build cache must be enabled to use the "${this._actionParameterName}" parameter.`
|
|
65
|
-
);
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
for (const operation of operations) {
|
|
69
|
-
operation.enabled = false;
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
requireOutputFolders = this._isRequireOutputFoldersFlagSet(customParameters);
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
return operations;
|
|
76
|
-
}
|
|
77
|
-
);
|
|
78
|
-
// populate the cache for each operation
|
|
79
|
-
command.hooks.beforeExecuteOperations.tapPromise(
|
|
80
|
-
PLUGIN_NAME,
|
|
81
|
-
async (
|
|
82
|
-
recordByOperation: Map<Operation, IOperationExecutionResult>,
|
|
83
|
-
context: IExecuteOperationsContext
|
|
84
|
-
): Promise<void> => {
|
|
85
|
-
const { buildCacheConfiguration } = context;
|
|
86
|
-
const { terminal } = logger;
|
|
87
|
-
|
|
88
|
-
if (cacheAction === undefined) {
|
|
89
|
-
return;
|
|
90
|
-
}
|
|
91
|
-
|
|
92
|
-
if (!buildCacheConfiguration?.buildCacheEnabled) {
|
|
93
|
-
throw new Error(
|
|
94
|
-
`The build cache must be enabled to use the "${this._actionParameterName}" parameter.`
|
|
95
|
-
);
|
|
96
|
-
}
|
|
97
|
-
|
|
98
|
-
const filteredOperations: Set<IOperationExecutionResult> = new Set();
|
|
99
|
-
for (const operationExecutionResult of recordByOperation.values()) {
|
|
100
|
-
if (!operationExecutionResult.operation.isNoOp) {
|
|
101
|
-
filteredOperations.add(operationExecutionResult);
|
|
102
|
-
}
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
let successCount: number = 0;
|
|
106
|
-
|
|
107
|
-
await Async.forEachAsync(
|
|
108
|
-
filteredOperations,
|
|
109
|
-
async (operationExecutionResult: IOperationExecutionResult) => {
|
|
110
|
-
const projectBuildCache: OperationBuildCache = OperationBuildCache.forOperation(
|
|
111
|
-
operationExecutionResult,
|
|
112
|
-
{
|
|
113
|
-
buildCacheConfiguration,
|
|
114
|
-
terminal
|
|
115
|
-
}
|
|
116
|
-
);
|
|
117
|
-
|
|
118
|
-
const { operation } = operationExecutionResult;
|
|
119
|
-
|
|
120
|
-
if (cacheAction === CACHE_ACTION_READ) {
|
|
121
|
-
const success: boolean = await projectBuildCache.tryRestoreFromCacheAsync(terminal);
|
|
122
|
-
if (success) {
|
|
123
|
-
++successCount;
|
|
124
|
-
terminal.writeLine(
|
|
125
|
-
`Operation "${operation.name}": Outputs have been restored from the build cache."`
|
|
126
|
-
);
|
|
127
|
-
terminal.writeLine(`Cache key: ${projectBuildCache.cacheId}`);
|
|
128
|
-
} else {
|
|
129
|
-
terminal.writeWarningLine(
|
|
130
|
-
`Operation "${operation.name}": Outputs could not be restored from the build cache.`
|
|
131
|
-
);
|
|
132
|
-
}
|
|
133
|
-
} else if (cacheAction === CACHE_ACTION_WRITE) {
|
|
134
|
-
// if the require output folders flag has been passed, skip populating the cache if any of the expected output folders does not exist
|
|
135
|
-
if (
|
|
136
|
-
requireOutputFolders &&
|
|
137
|
-
operation.settings?.outputFolderNames &&
|
|
138
|
-
operation.settings?.outputFolderNames?.length > 0
|
|
139
|
-
) {
|
|
140
|
-
const projectFolder: string = operation.associatedProject?.projectFolder;
|
|
141
|
-
const missingFolders: string[] = [];
|
|
142
|
-
operation.settings.outputFolderNames.forEach((outputFolderName: string) => {
|
|
143
|
-
if (!FileSystem.exists(`${projectFolder}/${outputFolderName}`)) {
|
|
144
|
-
missingFolders.push(outputFolderName);
|
|
145
|
-
}
|
|
146
|
-
});
|
|
147
|
-
if (missingFolders.length > 0) {
|
|
148
|
-
terminal.writeWarningLine(
|
|
149
|
-
`Operation "${operation.name}": The following output folders do not exist: "${missingFolders.join('", "')}". Skipping cache population.`
|
|
150
|
-
);
|
|
151
|
-
return;
|
|
152
|
-
}
|
|
153
|
-
}
|
|
154
|
-
|
|
155
|
-
const success: boolean = await projectBuildCache.trySetCacheEntryAsync(terminal);
|
|
156
|
-
if (success) {
|
|
157
|
-
++successCount;
|
|
158
|
-
terminal.writeLine(
|
|
159
|
-
`Operation "${operation.name}": Existing outputs have been successfully written to the build cache."`
|
|
160
|
-
);
|
|
161
|
-
terminal.writeLine(`Cache key: ${projectBuildCache.cacheId}`);
|
|
162
|
-
} else {
|
|
163
|
-
terminal.writeErrorLine(
|
|
164
|
-
`Operation "${operation.name}": An error occurred while writing existing outputs to the build cache.`
|
|
165
|
-
);
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
},
|
|
169
|
-
{
|
|
170
|
-
concurrency: context.parallelism
|
|
171
|
-
}
|
|
172
|
-
);
|
|
173
|
-
|
|
174
|
-
terminal.writeLine(
|
|
175
|
-
`Cache operation "${cacheAction}" completed successfully for ${successCount} out of ${filteredOperations.size} operations.`
|
|
176
|
-
);
|
|
177
|
-
}
|
|
178
|
-
);
|
|
179
|
-
});
|
|
180
|
-
}
|
|
181
|
-
|
|
182
|
-
private _getCacheAction(
|
|
183
|
-
customParameters: ReadonlyMap<string, CommandLineParameter>
|
|
184
|
-
): CacheAction | undefined {
|
|
185
|
-
const cacheActionParameter: CommandLineParameter | undefined = customParameters.get(
|
|
186
|
-
this._actionParameterName
|
|
187
|
-
);
|
|
188
|
-
|
|
189
|
-
if (cacheActionParameter) {
|
|
190
|
-
if (cacheActionParameter.kind !== CommandLineParameterKind.Choice) {
|
|
191
|
-
throw new Error(
|
|
192
|
-
`The parameter "${this._actionParameterName}" must be a choice. Please check the plugin configuration.`
|
|
193
|
-
);
|
|
194
|
-
}
|
|
195
|
-
|
|
196
|
-
if (
|
|
197
|
-
cacheActionParameter.alternatives.size !== 2 ||
|
|
198
|
-
!cacheActionParameter.alternatives.has(CACHE_ACTION_READ) ||
|
|
199
|
-
!cacheActionParameter.alternatives.has(CACHE_ACTION_WRITE)
|
|
200
|
-
) {
|
|
201
|
-
throw new Error(
|
|
202
|
-
`The parameter "${this._actionParameterName}" must have exactly two choices: "${CACHE_ACTION_READ}" and "${CACHE_ACTION_WRITE}". Please check the plugin configuration.`
|
|
203
|
-
);
|
|
204
|
-
}
|
|
205
|
-
|
|
206
|
-
const value: string | undefined = cacheActionParameter.value;
|
|
207
|
-
switch (value) {
|
|
208
|
-
case CACHE_ACTION_READ:
|
|
209
|
-
case CACHE_ACTION_WRITE:
|
|
210
|
-
return value;
|
|
211
|
-
case undefined:
|
|
212
|
-
return undefined;
|
|
213
|
-
default:
|
|
214
|
-
throw new Error(
|
|
215
|
-
`The parameter "${this._actionParameterName}" must be one of: "${CACHE_ACTION_READ}" or "${CACHE_ACTION_WRITE}". Received: "${value}". Please check the plugin configuration.`
|
|
216
|
-
);
|
|
217
|
-
}
|
|
218
|
-
}
|
|
219
|
-
|
|
220
|
-
return undefined;
|
|
221
|
-
}
|
|
222
|
-
|
|
223
|
-
private _isRequireOutputFoldersFlagSet(
|
|
224
|
-
customParameters: ReadonlyMap<string, CommandLineParameter>
|
|
225
|
-
): boolean {
|
|
226
|
-
if (!this._requireOutputFoldersParameterName) {
|
|
227
|
-
return false;
|
|
228
|
-
}
|
|
229
|
-
|
|
230
|
-
const requireOutputFoldersParam: CommandLineParameter | undefined = customParameters.get(
|
|
231
|
-
this._requireOutputFoldersParameterName
|
|
232
|
-
);
|
|
233
|
-
|
|
234
|
-
if (!requireOutputFoldersParam) {
|
|
235
|
-
return false;
|
|
236
|
-
}
|
|
237
|
-
|
|
238
|
-
if (requireOutputFoldersParam.kind !== CommandLineParameterKind.Flag) {
|
|
239
|
-
throw new Error(`The parameter "${this._requireOutputFoldersParameterName}" must be a flag.`);
|
|
240
|
-
}
|
|
241
|
-
|
|
242
|
-
return requireOutputFoldersParam.value;
|
|
243
|
-
}
|
|
244
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"configHash":"7l3QItR/koM83+sIRGBct8kqvPFIOyi41BwAc9nKqXg=","inputFileVersions":{"../../../src/schemas/bridge-cache-config.schema.json":"Ekcq18T2DrUryhmi7nCVAKymHlZXcAKYk1jbYNCswUg="}}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"cacheVersion": "9.37.0_v22.21.1",
|
|
3
|
-
"fileVersions": [
|
|
4
|
-
[
|
|
5
|
-
"BridgeCachePlugin.ts",
|
|
6
|
-
"3d2db618e3d263f3ec01bca9843cb0bc28039cf8c9c8a150c63551d348c6802e_KMaKa3RgzpjaSyTez4iyvVU+ql4="
|
|
7
|
-
],
|
|
8
|
-
[
|
|
9
|
-
"index.ts",
|
|
10
|
-
"ab91918f2264768a35513d00951722d5df668d07c19c884f9b70eef2c29f03f8_KMaKa3RgzpjaSyTez4iyvVU+ql4="
|
|
11
|
-
]
|
|
12
|
-
],
|
|
13
|
-
"filesHash": "v89sUwRxk-d352rvOE9KKg"
|
|
14
|
-
}
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": "2.1.0",
|
|
3
|
-
"$schema": "http://json.schemastore.org/sarif-2.1.0-rtm.5",
|
|
4
|
-
"runs": [
|
|
5
|
-
{
|
|
6
|
-
"tool": {
|
|
7
|
-
"driver": {
|
|
8
|
-
"name": "ESLint",
|
|
9
|
-
"informationUri": "https://eslint.org",
|
|
10
|
-
"version": "9.37.0",
|
|
11
|
-
"rules": []
|
|
12
|
-
}
|
|
13
|
-
},
|
|
14
|
-
"artifacts": [
|
|
15
|
-
{
|
|
16
|
-
"location": {
|
|
17
|
-
"uri": "src/BridgeCachePlugin.ts"
|
|
18
|
-
}
|
|
19
|
-
},
|
|
20
|
-
{
|
|
21
|
-
"location": {
|
|
22
|
-
"uri": "src/index.ts"
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
],
|
|
26
|
-
"results": []
|
|
27
|
-
}
|
|
28
|
-
]
|
|
29
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"configHash":"rQpL3YlrQEaiR14A1Mh/WSNG5FO0xhO1ZVduXLI4U74=","inputFileVersions":{"../../../src/schemas/bridge-cache-config.schema.json":"Ekcq18T2DrUryhmi7nCVAKymHlZXcAKYk1jbYNCswUg="}}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"fileNames":["../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es5.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2015.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2016.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2017.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2018.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2019.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2020.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2015.core.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2015.collection.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2015.generator.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2015.promise.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2016.intl.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2017.arraybuffer.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2017.date.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2017.object.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2017.string.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2017.intl.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2018.intl.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2018.promise.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2019.array.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2019.object.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2019.string.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2019.intl.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2020.date.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2020.promise.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2020.string.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2020.intl.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.es2020.number.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.decorators.d.ts","../../../../../common/temp/default/node_modules/.pnpm/typescript@5.8.2/node_modules/typescript/lib/lib.decorators.legacy.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/compatibility/disposable.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/compatibility/indexable.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/compatibility/iterators.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/compatibility/index.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/globals.typedarray.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/buffer.buffer.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/header.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/readable.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/file.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/fetch.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/formdata.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/connector.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/client.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/errors.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/dispatcher.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/global-dispatcher.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/global-origin.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/pool-stats.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/pool.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/handlers.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/balanced-pool.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/agent.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/mock-interceptor.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/mock-agent.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/mock-client.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/mock-pool.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/mock-errors.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/proxy-agent.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/env-http-proxy-agent.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/retry-handler.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/retry-agent.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/api.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/interceptors.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/util.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/cookies.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/patch.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/websocket.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/eventsource.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/filereader.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/diagnostics-channel.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/content-type.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/cache.d.ts","../../../../../common/temp/default/node_modules/.pnpm/undici-types@6.19.8/node_modules/undici-types/index.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/globals.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/assert.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/assert/strict.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/async_hooks.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/buffer.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/child_process.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/cluster.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/console.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/constants.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/crypto.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/dgram.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/diagnostics_channel.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/dns.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/dns/promises.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/domain.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/dom-events.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/events.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/fs.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/fs/promises.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/http.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/http2.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/https.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/inspector.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/module.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/net.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/os.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/path.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/perf_hooks.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/process.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/punycode.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/querystring.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/readline.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/readline/promises.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/repl.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/sea.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/stream.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/stream/promises.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/stream/consumers.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/stream/web.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/string_decoder.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/test.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/timers.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/timers/promises.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/tls.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/trace_events.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/tty.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/url.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/util.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/v8.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/vm.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/wasi.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/worker_threads.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/zlib.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+node@20.17.19/node_modules/@types/node/index.d.ts","../../../../../libraries/node-core-library/dist/node-core-library.d.ts","../../../../../common/temp/default/node_modules/.pnpm/tapable@2.2.1/node_modules/tapable/tapable.d.ts","../../../../../libraries/problem-matcher/dist/problem-matcher.d.ts","../../../../../libraries/terminal/dist/terminal.d.ts","../../../../../libraries/stream-collator/dist/stream-collator.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+argparse@1.0.38/node_modules/@types/argparse/index.d.ts","../../../../../libraries/ts-command-line/dist/ts-command-line.d.ts","../../../../../libraries/credential-cache/dist/credential-cache.d.ts","../../../../../libraries/package-deps-hash/dist/package-deps-hash.d.ts","../../../../../libraries/lookup-by-path/dist/lookup-by-path.d.ts","../../../../../libraries/rush-sdk/dist/rush-lib.d.ts","../../../src/BridgeCachePlugin.ts","../../../src/index.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+heft-jest@1.0.1/node_modules/@types/heft-jest/mocked.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@jest+expect-utils@29.7.0/node_modules/@jest/expect-utils/build/index.d.ts","../../../../../common/temp/default/node_modules/.pnpm/chalk@4.1.2/node_modules/chalk/index.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@sinclair+typebox@0.27.8/node_modules/@sinclair/typebox/typebox.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@jest+schemas@29.6.3/node_modules/@jest/schemas/build/index.d.ts","../../../../../common/temp/default/node_modules/.pnpm/pretty-format@29.7.0/node_modules/pretty-format/build/index.d.ts","../../../../../common/temp/default/node_modules/.pnpm/jest-diff@29.7.0/node_modules/jest-diff/build/index.d.ts","../../../../../common/temp/default/node_modules/.pnpm/jest-matcher-utils@29.7.0/node_modules/jest-matcher-utils/build/index.d.ts","../../../../../common/temp/default/node_modules/.pnpm/expect@29.7.0/node_modules/expect/build/index.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+jest@29.5.14/node_modules/@types/jest/index.d.ts","../../../../../common/temp/default/node_modules/.pnpm/@types+heft-jest@1.0.1/node_modules/@types/heft-jest/index.d.ts"],"fileIdsList":[[51,93],[51,93,159],[51,93,156,165],[51,93,161,164],[51,90,93],[51,92,93],[93],[51,93,98,127],[51,93,94,99,105,106,113,124,135],[51,93,94,95,105,113],[46,47,48,51,93],[51,93,96,136],[51,93,97,98,106,114],[51,93,98,124,132],[51,93,99,101,105,113],[51,92,93,100],[51,93,101,102],[51,93,105],[51,93,103,105],[51,92,93,105],[51,93,105,106,107,124,135],[51,93,105,106,107,120,124,127],[51,88,93,140],[51,93,101,105,108,113,124,135],[51,93,105,106,108,109,113,124,132,135],[51,93,108,110,124,132,135],[49,50,51,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141],[51,93,105,111],[51,93,112,135,140],[51,93,101,105,113,124],[51,93,114],[51,93,115],[51,92,93,116],[51,90,91,92,93,94,95,96,97,98,99,100,101,102,103,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141],[51,93,118],[51,93,119],[51,93,105,120,121],[51,93,120,122,136,138],[51,93,105,124,125,126,127],[51,93,124,126],[51,93,124,125],[51,93,127],[51,93,128],[51,90,93,124],[51,93,105,130,131],[51,93,130,131],[51,93,98,113,124,132],[51,93,133],[51,93,113,134],[51,93,108,119,135],[51,93,98,136],[51,93,124,137],[51,93,112,138],[51,93,139],[51,93,98,105,107,116,124,135,138,140],[51,93,124,141],[51,93,157,163],[51,93,161],[51,93,158,162],[51,93,160],[51,60,64,93,135],[51,60,93,124,135],[51,55,93],[51,57,60,93,132,135],[51,93,113,132],[51,93,142],[51,55,93,142],[51,57,60,93,113,135],[51,52,53,56,59,93,105,124,135],[51,60,67,93],[51,52,58,93],[51,60,81,82,93],[51,56,60,93,127,135,142],[51,81,93,142],[51,54,55,93,142],[51,60,93],[51,54,55,56,57,58,59,60,61,62,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,82,83,84,85,86,87,93],[51,60,75,93],[51,60,67,68,93],[51,58,60,68,69,93],[51,59,93],[51,52,55,60,93],[51,60,64,68,69,93],[51,64,93],[51,58,60,63,93,135],[51,52,57,60,67,93],[51,93,124],[51,55,60,81,93,140,142],[51,93,94,106,115,142],[51,93,116,142,143,144,146,147,149,150,151,152],[51,93,146],[51,93,124,142,143,145],[51,93,148],[51,93,143,149,153],[51,93,154]],"fileInfos":[{"version":"69684132aeb9b5642cbcd9e22dff7818ff0ee1aa831728af0ecf97d3364d5546","affectsGlobalScope":true,"impliedFormat":1},{"version":"45b7ab580deca34ae9729e97c13cfd999df04416a79116c3bfb483804f85ded4","impliedFormat":1},{"version":"3facaf05f0c5fc569c5649dd359892c98a85557e3e0c847964caeb67076f4d75","impliedFormat":1},{"version":"e44bb8bbac7f10ecc786703fe0a6a4b952189f908707980ba8f3c8975a760962","impliedFormat":1},{"version":"5e1c4c362065a6b95ff952c0eab010f04dcd2c3494e813b493ecfd4fcb9fc0d8","impliedFormat":1},{"version":"68d73b4a11549f9c0b7d352d10e91e5dca8faa3322bfb77b661839c42b1ddec7","impliedFormat":1},{"version":"5efce4fc3c29ea84e8928f97adec086e3dc876365e0982cc8479a07954a3efd4","impliedFormat":1},{"version":"c57796738e7f83dbc4b8e65132f11a377649c00dd3eee333f672b8f0a6bea671","affectsGlobalScope":true,"impliedFormat":1},{"version":"dc2df20b1bcdc8c2d34af4926e2c3ab15ffe1160a63e58b7e09833f616efff44","affectsGlobalScope":true,"impliedFormat":1},{"version":"515d0b7b9bea2e31ea4ec968e9edd2c39d3eebf4a2d5cbd04e88639819ae3b71","affectsGlobalScope":true,"impliedFormat":1},{"version":"0559b1f683ac7505ae451f9a96ce4c3c92bdc71411651ca6ddb0e88baaaad6a3","affectsGlobalScope":true,"impliedFormat":1},{"version":"0dc1e7ceda9b8b9b455c3a2d67b0412feab00bd2f66656cd8850e8831b08b537","affectsGlobalScope":true,"impliedFormat":1},{"version":"ce691fb9e5c64efb9547083e4a34091bcbe5bdb41027e310ebba8f7d96a98671","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d697a2a929a5fcb38b7a65594020fcef05ec1630804a33748829c5ff53640d0","affectsGlobalScope":true,"impliedFormat":1},{"version":"4ff2a353abf8a80ee399af572debb8faab2d33ad38c4b4474cff7f26e7653b8d","affectsGlobalScope":true,"impliedFormat":1},{"version":"936e80ad36a2ee83fc3caf008e7c4c5afe45b3cf3d5c24408f039c1d47bdc1df","affectsGlobalScope":true,"impliedFormat":1},{"version":"d15bea3d62cbbdb9797079416b8ac375ae99162a7fba5de2c6c505446486ac0a","affectsGlobalScope":true,"impliedFormat":1},{"version":"68d18b664c9d32a7336a70235958b8997ebc1c3b8505f4f1ae2b7e7753b87618","affectsGlobalScope":true,"impliedFormat":1},{"version":"eb3d66c8327153d8fa7dd03f9c58d351107fe824c79e9b56b462935176cdf12a","affectsGlobalScope":true,"impliedFormat":1},{"version":"38f0219c9e23c915ef9790ab1d680440d95419ad264816fa15009a8851e79119","affectsGlobalScope":true,"impliedFormat":1},{"version":"69ab18c3b76cd9b1be3d188eaf8bba06112ebbe2f47f6c322b5105a6fbc45a2e","affectsGlobalScope":true,"impliedFormat":1},{"version":"fef8cfad2e2dc5f5b3d97a6f4f2e92848eb1b88e897bb7318cef0e2820bceaab","affectsGlobalScope":true,"impliedFormat":1},{"version":"2f11ff796926e0832f9ae148008138ad583bd181899ab7dd768a2666700b1893","affectsGlobalScope":true,"impliedFormat":1},{"version":"4de680d5bb41c17f7f68e0419412ca23c98d5749dcaaea1896172f06435891fc","affectsGlobalScope":true,"impliedFormat":1},{"version":"954296b30da6d508a104a3a0b5d96b76495c709785c1d11610908e63481ee667","affectsGlobalScope":true,"impliedFormat":1},{"version":"ac9538681b19688c8eae65811b329d3744af679e0bdfa5d842d0e32524c73e1c","affectsGlobalScope":true,"impliedFormat":1},{"version":"0a969edff4bd52585473d24995c5ef223f6652d6ef46193309b3921d65dd4376","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e9fbd7030c440b33d021da145d3232984c8bb7916f277e8ffd3dc2e3eae2bdb","affectsGlobalScope":true,"impliedFormat":1},{"version":"811ec78f7fefcabbda4bfa93b3eb67d9ae166ef95f9bff989d964061cbf81a0c","affectsGlobalScope":true,"impliedFormat":1},{"version":"717937616a17072082152a2ef351cb51f98802fb4b2fdabd32399843875974ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"d7e7d9b7b50e5f22c915b525acc5a49a7a6584cf8f62d0569e557c5cfc4b2ac2","affectsGlobalScope":true,"impliedFormat":1},{"version":"71c37f4c9543f31dfced6c7840e068c5a5aacb7b89111a4364b1d5276b852557","affectsGlobalScope":true,"impliedFormat":1},{"version":"576711e016cf4f1804676043e6a0a5414252560eb57de9faceee34d79798c850","affectsGlobalScope":true,"impliedFormat":1},{"version":"89c1b1281ba7b8a96efc676b11b264de7a8374c5ea1e6617f11880a13fc56dc6","affectsGlobalScope":true,"impliedFormat":1},{"version":"74f7fa2d027d5b33eb0471c8e82a6c87216223181ec31247c357a3e8e2fddc5b","affectsGlobalScope":true,"impliedFormat":1},{"version":"d6d7ae4d1f1f3772e2a3cde568ed08991a8ae34a080ff1151af28b7f798e22ca","affectsGlobalScope":true,"impliedFormat":1},{"version":"063600664504610fe3e99b717a1223f8b1900087fab0b4cad1496a114744f8df","affectsGlobalScope":true,"impliedFormat":1},{"version":"934019d7e3c81950f9a8426d093458b65d5aff2c7c1511233c0fd5b941e608ab","affectsGlobalScope":true,"impliedFormat":1},{"version":"52ada8e0b6e0482b728070b7639ee42e83a9b1c22d205992756fe020fd9f4a47","affectsGlobalScope":true,"impliedFormat":1},{"version":"3bdefe1bfd4d6dee0e26f928f93ccc128f1b64d5d501ff4a8cf3c6371200e5e6","affectsGlobalScope":true,"impliedFormat":1},{"version":"59fb2c069260b4ba00b5643b907ef5d5341b167e7d1dbf58dfd895658bda2867","affectsGlobalScope":true,"impliedFormat":1},{"version":"639e512c0dfc3fad96a84caad71b8834d66329a1f28dc95e3946c9b58176c73a","affectsGlobalScope":true,"impliedFormat":1},{"version":"368af93f74c9c932edd84c58883e736c9e3d53cec1fe24c0b0ff451f529ceab1","affectsGlobalScope":true,"impliedFormat":1},{"version":"8e7f8264d0fb4c5339605a15daadb037bf238c10b654bb3eee14208f860a32ea","affectsGlobalScope":true,"impliedFormat":1},{"version":"782dec38049b92d4e85c1585fbea5474a219c6984a35b004963b00beb1aab538","affectsGlobalScope":true,"impliedFormat":1},{"version":"70521b6ab0dcba37539e5303104f29b721bfb2940b2776da4cc818c07e1fefc1","affectsGlobalScope":true,"impliedFormat":1},{"version":"ab41ef1f2cdafb8df48be20cd969d875602483859dc194e9c97c8a576892c052","affectsGlobalScope":true,"impliedFormat":1},{"version":"d153a11543fd884b596587ccd97aebbeed950b26933ee000f94009f1ab142848","affectsGlobalScope":true,"impliedFormat":1},{"version":"21d819c173c0cf7cc3ce57c3276e77fd9a8a01d35a06ad87158781515c9a438a","impliedFormat":1},{"version":"a79e62f1e20467e11a904399b8b18b18c0c6eea6b50c1168bf215356d5bebfaf","affectsGlobalScope":true,"impliedFormat":1},{"version":"0fd06258805d26c72f5997e07a23155d322d5f05387adb3744a791fe6a0b042d","affectsGlobalScope":true,"impliedFormat":1},{"version":"5929864ce17fba74232584d90cb721a89b7ad277220627cc97054ba15a98ea8f","impliedFormat":1},{"version":"24bd580b5743dc56402c440dc7f9a4f5d592ad7a419f25414d37a7bfe11e342b","impliedFormat":1},{"version":"25c8056edf4314820382a5fdb4bb7816999acdcb929c8f75e3f39473b87e85bc","impliedFormat":1},{"version":"c464d66b20788266e5353b48dc4aa6bc0dc4a707276df1e7152ab0c9ae21fad8","impliedFormat":1},{"version":"78d0d27c130d35c60b5e5566c9f1e5be77caf39804636bc1a40133919a949f21","impliedFormat":1},{"version":"c6fd2c5a395f2432786c9cb8deb870b9b0e8ff7e22c029954fabdd692bff6195","impliedFormat":1},{"version":"1d6e127068ea8e104a912e42fc0a110e2aa5a66a356a917a163e8cf9a65e4a75","impliedFormat":1},{"version":"5ded6427296cdf3b9542de4471d2aa8d3983671d4cac0f4bf9c637208d1ced43","impliedFormat":1},{"version":"6bdc71028db658243775263e93a7db2fd2abfce3ca569c3cca5aee6ed5eb186d","impliedFormat":1},{"version":"cadc8aced301244057c4e7e73fbcae534b0f5b12a37b150d80e5a45aa4bebcbd","impliedFormat":1},{"version":"385aab901643aa54e1c36f5ef3107913b10d1b5bb8cbcd933d4263b80a0d7f20","impliedFormat":1},{"version":"9670d44354bab9d9982eca21945686b5c24a3f893db73c0dae0fd74217a4c219","impliedFormat":1},{"version":"0b8a9268adaf4da35e7fa830c8981cfa22adbbe5b3f6f5ab91f6658899e657a7","impliedFormat":1},{"version":"11396ed8a44c02ab9798b7dca436009f866e8dae3c9c25e8c1fbc396880bf1bb","impliedFormat":1},{"version":"ba7bc87d01492633cb5a0e5da8a4a42a1c86270e7b3d2dea5d156828a84e4882","impliedFormat":1},{"version":"4893a895ea92c85345017a04ed427cbd6a1710453338df26881a6019432febdd","impliedFormat":1},{"version":"c21dc52e277bcfc75fac0436ccb75c204f9e1b3fa5e12729670910639f27343e","impliedFormat":1},{"version":"13f6f39e12b1518c6650bbb220c8985999020fe0f21d818e28f512b7771d00f9","impliedFormat":1},{"version":"9b5369969f6e7175740bf51223112ff209f94ba43ecd3bb09eefff9fd675624a","impliedFormat":1},{"version":"4fe9e626e7164748e8769bbf74b538e09607f07ed17c2f20af8d680ee49fc1da","impliedFormat":1},{"version":"24515859bc0b836719105bb6cc3d68255042a9f02a6022b3187948b204946bd2","impliedFormat":1},{"version":"ea0148f897b45a76544ae179784c95af1bd6721b8610af9ffa467a518a086a43","impliedFormat":1},{"version":"24c6a117721e606c9984335f71711877293a9651e44f59f3d21c1ea0856f9cc9","impliedFormat":1},{"version":"dd3273ead9fbde62a72949c97dbec2247ea08e0c6952e701a483d74ef92d6a17","impliedFormat":1},{"version":"405822be75ad3e4d162e07439bac80c6bcc6dbae1929e179cf467ec0b9ee4e2e","impliedFormat":1},{"version":"0db18c6e78ea846316c012478888f33c11ffadab9efd1cc8bcc12daded7a60b6","impliedFormat":1},{"version":"4d2b0eb911816f66abe4970898f97a2cfc902bcd743cbfa5017fad79f7ef90d8","impliedFormat":1},{"version":"bd0532fd6556073727d28da0edfd1736417a3f9f394877b6d5ef6ad88fba1d1a","impliedFormat":1},{"version":"89167d696a849fce5ca508032aabfe901c0868f833a8625d5a9c6e861ef935d2","impliedFormat":1},{"version":"e53a3c2a9f624d90f24bf4588aacd223e7bec1b9d0d479b68d2f4a9e6011147f","impliedFormat":1},{"version":"24b8685c62562f5d98615c5a0c1d05f297cf5065f15246edfe99e81ec4c0e011","impliedFormat":1},{"version":"93507c745e8f29090efb99399c3f77bec07db17acd75634249dc92f961573387","impliedFormat":1},{"version":"339dc5265ee5ed92e536a93a04c4ebbc2128f45eeec6ed29f379e0085283542c","impliedFormat":1},{"version":"4732aec92b20fb28c5fe9ad99521fb59974289ed1e45aecb282616202184064f","impliedFormat":1},{"version":"2e85db9e6fd73cfa3d7f28e0ab6b55417ea18931423bd47b409a96e4a169e8e6","impliedFormat":1},{"version":"c46e079fe54c76f95c67fb89081b3e399da2c7d109e7dca8e4b58d83e332e605","impliedFormat":1},{"version":"bf67d53d168abc1298888693338cb82854bdb2e69ef83f8a0092093c2d562107","impliedFormat":1},{"version":"08faa97886e71757779428dd4c69a545c32c85fd629d1116d42710b32c6378bc","affectsGlobalScope":true,"impliedFormat":1},{"version":"6b042aa5d277ad6963e2837179fd2f8fbb01968ac67115b0833c0244e93d1d50","impliedFormat":1},{"version":"7394959e5a741b185456e1ef5d64599c36c60a323207450991e7a42e08911419","impliedFormat":1},{"version":"3d77c73be94570813f8cadd1f05ebc3dc5e2e4fdefe4d340ca20cd018724ee36","impliedFormat":1},{"version":"d674383111e06b6741c4ad2db962131b5b0fa4d0294b998566c635e86195a453","affectsGlobalScope":true,"impliedFormat":1},{"version":"f3e58c4c18a031cbb17abec7a4ad0bd5ae9fc70c1f4ba1e7fb921ad87c504aca","impliedFormat":1},{"version":"a3e8bafb2af8e850c644f4be7f5156cf7d23b7bfdc3b786bd4d10ed40329649c","impliedFormat":1},{"version":"35ec8b6760fd7138bbf5809b84551e31028fb2ba7b6dc91d95d098bf212ca8b4","affectsGlobalScope":true,"impliedFormat":1},{"version":"a40826e8476694e90da94aa008283a7de50d1dafd37beada623863f1901cb7fb","impliedFormat":1},{"version":"f77d9188e41291acf14f476e931972460a303e1952538f9546e7b370cb8d0d20","affectsGlobalScope":true,"impliedFormat":1},{"version":"8d04e3640dd9eb67f7f1e5bd3d0bf96c784666f7aefc8ac1537af6f2d38d4c29","impliedFormat":1},{"version":"3c884d9d9ec454bdf0d5a0b8465bf8297d2caa4d853851d92cc417ac6f30b969","impliedFormat":1},{"version":"5a369483ac4cfbdf0331c248deeb36140e6907db5e1daed241546b4a2055f82c","impliedFormat":1},{"version":"e8f5b5cc36615c17d330eaf8eebbc0d6bdd942c25991f96ef122f246f4ff722f","impliedFormat":1},{"version":"f0bd7e6d931657b59605c44112eaf8b980ba7f957a5051ed21cb93d978cf2f45","impliedFormat":1},{"version":"ee1ee365d88c4c6c0c0a5a5701d66ebc27ccd0bcfcfaa482c6e2e7fe7b98edf7","affectsGlobalScope":true,"impliedFormat":1},{"version":"0ada07543808f3b967624645a8e1ccd446f8b01ade47842acf1328aec899fed0","affectsGlobalScope":true,"impliedFormat":1},{"version":"c4a806152acbef81593f96cae6f2b04784d776457d97adbe2694478b243fcf03","impliedFormat":1},{"version":"71adf5dbc59568663d252a46179e71e4d544c053978bfc526d11543a3f716f42","impliedFormat":1},{"version":"c60db41f7bee80fb80c0b12819f5e465c8c8b465578da43e36d04f4a4646f57d","impliedFormat":1},{"version":"93bd413918fa921c8729cef45302b24d8b6c7855d72d5bf82d3972595ae8dcbf","impliedFormat":1},{"version":"4ff41188773cbf465807dd2f7059c7494cbee5115608efc297383832a1150c43","impliedFormat":1},{"version":"dccdf1677e531e33f8ac961a68bc537418c9a414797c1ea7e91307501cdc3f5e","impliedFormat":1},{"version":"e184c4b8918ef56c8c9e68bd79f3f3780e2d0d75bf2b8a41da1509a40c2deb46","affectsGlobalScope":true,"impliedFormat":1},{"version":"d206b4baf4ddcc15d9d69a9a2f4999a72a2c6adeaa8af20fa7a9960816287555","impliedFormat":1},{"version":"93f437e1398a4f06a984f441f7fa7a9f0535c04399619b5c22e0b87bdee182cb","impliedFormat":1},{"version":"afbe24ab0d74694372baa632ecb28bb375be53f3be53f9b07ecd7fc994907de5","impliedFormat":1},{"version":"70731d10d5311bd4cf710ef7f6539b62660f4b0bfdbb3f9fbe1d25fe6366a7fa","affectsGlobalScope":true,"impliedFormat":1},{"version":"6b19db3600a17af69d4f33d08cc7076a7d19fb65bb36e442cac58929ec7c9482","affectsGlobalScope":true,"impliedFormat":1},{"version":"9e043a1bc8fbf2a255bccf9bf27e0f1caf916c3b0518ea34aa72357c0afd42ec","impliedFormat":1},{"version":"137c2894e8f3e9672d401cc0a305dc7b1db7c69511cf6d3970fb53302f9eae09","impliedFormat":1},{"version":"3bc2f1e2c95c04048212c569ed38e338873f6a8593930cf5a7ef24ffb38fc3b6","impliedFormat":1},{"version":"8145e07aad6da5f23f2fcd8c8e4c5c13fb26ee986a79d03b0829b8fce152d8b2","impliedFormat":1},{"version":"f9d9d753d430ed050dc1bf2667a1bab711ccbb1c1507183d794cc195a5b085cc","impliedFormat":1},{"version":"9eece5e586312581ccd106d4853e861aaaa1a39f8e3ea672b8c3847eedd12f6e","impliedFormat":1},{"version":"e9992149869ea538d17dc29a3df8348a1280508f49dba86a2c84dc5e6fbea012","impliedFormat":1},{"version":"37ba7b45141a45ce6e80e66f2a96c8a5ab1bcef0fc2d0f56bb58df96ec67e972","impliedFormat":1},{"version":"93452d394fdd1dc551ec62f5042366f011a00d342d36d50793b3529bfc9bd633","impliedFormat":1},{"version":"bb715efb4857eb94539eafb420352105a0cff40746837c5140bf6b035dd220ba","affectsGlobalScope":true,"impliedFormat":1},{"version":"1851a3b4db78664f83901bb9cac9e45e03a37bb5933cc5bf37e10bb7e91ab4eb","impliedFormat":1},{"version":"09d479208911ac3ac6a7c2fe86217fc1abe6c4f04e2d52e4890e500699eeab32","affectsGlobalScope":true,"impliedFormat":1},{"version":"27d8987fd22d92efe6560cf0ce11767bf089903ffe26047727debfd1f3bf438b","affectsGlobalScope":true,"impliedFormat":1},{"version":"578d8bb6dcb2a1c03c4c3f8eb71abc9677e1a5c788b7f24848e3138ce17f3400","impliedFormat":1},{"version":"4f029899f9bae07e225c43aef893590541b2b43267383bf5e32e3a884d219ed5","impliedFormat":1},{"version":"ae56f65caf3be91108707bd8dfbccc2a57a91feb5daabf7165a06a945545ed26","impliedFormat":1},{"version":"a136d5de521da20f31631a0a96bf712370779d1c05b7015d7019a9b2a0446ca9","impliedFormat":1},{"version":"5b566927cad2ed2139655d55d690ffa87df378b956e7fe1c96024c4d9f75c4cf","affectsGlobalScope":true,"impliedFormat":1},{"version":"bce947017cb7a2deebcc4f5ba04cead891ce6ad1602a4438ae45ed9aa1f39104","affectsGlobalScope":true,"impliedFormat":1},{"version":"d3dffd70e6375b872f0b4e152de4ae682d762c61a24881ecc5eb9f04c5caf76f","impliedFormat":1},{"version":"e2c72c065a36bc9ab2a00ac6a6f51e71501619a72c0609defd304d46610487a4","impliedFormat":1},{"version":"d91a7d8b5655c42986f1bdfe2105c4408f472831c8f20cf11a8c3345b6b56c8c","impliedFormat":1},{"version":"616075a6ac578cf5a013ee12964188b4412823796ce0b202c6f1d2e4ca8480d7","affectsGlobalScope":true,"impliedFormat":1},{"version":"e8a979b8af001c9fc2e774e7809d233c8ca955a28756f52ee5dee88ccb0611d2","impliedFormat":1},{"version":"cac793cc47c29e26e4ac3601dcb00b4435ebed26203485790e44f2ad8b6ad847","impliedFormat":1},"7605a2420e3be9865317c9926d1264397567d402aaa1f8c45b1c44e5518c4dcf",{"version":"cd74c8275483d3fe0d07a9b4bba28845a8a611f0aa399e961dbd40e5d46dd9ad","impliedFormat":1},"fb01f7d60e9e9a089b3db908a7085a4e9b4508c2b05c85912d150a88a530a7cc","74fd7c58685db202ff6f446be24bf77691bd992d3176f7dad5996b42aa9240e8","51deb9261c4607f2eaaf15144bf5fe42f74c8d250c62806e30f957cbd09ddff6",{"version":"dc3b172ee27054dbcedcf5007b78c256021db936f6313a9ce9a3ecbb503fd646","impliedFormat":1},"ea5e147084b612cde5b871e0c2d8086ef777c9df77a3704fd20a78bc2e3eea9e","40ed5210c779a82c9c5afce5177c767e0d5fe49c3ddc0005eeba72791e130988","ad83fa88e17502c6e8d6ffc7c0bdaf1c2cf5c58fd16b5253ca936b1440474f75","abff490c2ff85972c2974fd2e2f6b095827041cb254ddb5982baa24b6de40e77","f6921f4ee4dea18fca81956d6b626e7f7bb467346112949f544ac0d021137a7c",{"version":"3d2db618e3d263f3ec01bca9843cb0bc28039cf8c9c8a150c63551d348c6802e","signature":"e2e0d0e6c175502186fe5f16bda3ebbc7e7eab239f6d0d5f6291c74b49ba3d6c"},{"version":"ab91918f2264768a35513d00951722d5df668d07c19c884f9b70eef2c29f03f8","signature":"0dfada6072f9e6b8a4d4b5c00d3fc28cb79a1bb5305ae319bb4126e8bb1cda7d"},{"version":"ef948381fb93e21b69bb6581851b1c1c15c9a9d59752fc3b30d223cb16539534","affectsGlobalScope":true,"impliedFormat":1},{"version":"cdcc132f207d097d7d3aa75615ab9a2e71d6a478162dde8b67f88ea19f3e54de","impliedFormat":1},{"version":"0d14fa22c41fdc7277e6f71473b20ebc07f40f00e38875142335d5b63cdfc9d2","impliedFormat":1},{"version":"c085e9aa62d1ae1375794c1fb927a445fa105fed891a7e24edbb1c3300f7384a","impliedFormat":1},{"version":"f315e1e65a1f80992f0509e84e4ae2df15ecd9ef73df975f7c98813b71e4c8da","impliedFormat":1},{"version":"5b9586e9b0b6322e5bfbd2c29bd3b8e21ab9d871f82346cb71020e3d84bae73e","impliedFormat":1},{"version":"3e70a7e67c2cb16f8cd49097360c0309fe9d1e3210ff9222e9dac1f8df9d4fb6","impliedFormat":1},{"version":"ab68d2a3e3e8767c3fba8f80de099a1cfc18c0de79e42cb02ae66e22dfe14a66","impliedFormat":1},{"version":"d96cc6598148bf1a98fb2e8dcf01c63a4b3558bdaec6ef35e087fd0562eb40ec","impliedFormat":1},{"version":"f8db4fea512ab759b2223b90ecbbe7dae919c02f8ce95ec03f7fb1cf757cfbeb","affectsGlobalScope":true,"impliedFormat":1},{"version":"7d94851f2e2797a812fdaaae6ba87e91e894be0198b107e544fb5a992eaa6b00","affectsGlobalScope":true,"impliedFormat":1}],"root":[154,155],"options":{"allowUnreachableCode":false,"declaration":true,"declarationMap":true,"esModuleInterop":true,"experimentalDecorators":true,"inlineSources":true,"jsx":2,"module":1,"noEmitOnError":false,"outDir":"../../../lib","rootDir":"../../../src","sourceMap":true,"strict":true,"target":5,"tsBuildInfoFile":"./ts_l9Fw4VUO.json","useUnknownInCatchVariables":false},"referencedMap":[[157,1],[160,2],[159,1],[148,1],[166,3],[156,1],[165,4],[90,5],[91,5],[92,6],[51,7],[93,8],[94,9],[95,10],[46,1],[49,11],[47,1],[48,1],[96,12],[97,13],[98,14],[99,15],[100,16],[101,17],[102,17],[104,18],[103,19],[105,20],[106,21],[107,22],[89,23],[50,1],[108,24],[109,25],[110,26],[142,27],[111,28],[112,29],[113,30],[114,31],[115,32],[116,33],[117,34],[118,35],[119,36],[120,37],[121,37],[122,38],[123,1],[124,39],[126,40],[125,41],[127,42],[128,43],[129,44],[130,45],[131,46],[132,47],[133,48],[134,49],[135,50],[136,51],[137,52],[138,53],[139,54],[140,55],[141,56],[158,1],[164,57],[162,58],[163,59],[161,60],[144,1],[44,1],[45,1],[9,1],[8,1],[2,1],[10,1],[11,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[3,1],[18,1],[19,1],[4,1],[20,1],[24,1],[21,1],[22,1],[23,1],[25,1],[26,1],[27,1],[5,1],[28,1],[29,1],[30,1],[31,1],[6,1],[35,1],[32,1],[33,1],[34,1],[36,1],[7,1],[37,1],[42,1],[43,1],[38,1],[39,1],[40,1],[41,1],[1,1],[67,61],[77,62],[66,61],[87,63],[58,64],[57,65],[86,66],[80,67],[85,68],[60,69],[74,70],[59,71],[83,72],[55,73],[54,66],[84,74],[56,75],[61,76],[62,1],[65,76],[52,1],[88,77],[78,78],[69,79],[70,80],[72,81],[68,82],[71,83],[81,66],[63,84],[64,85],[73,86],[53,87],[76,78],[75,76],[79,1],[82,88],[150,1],[152,1],[143,89],[151,1],[145,1],[153,90],[147,91],[146,92],[149,93],[154,94],[155,95]],"version":"5.8.2"}
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"$schema": "http://json-schema.org/draft-04/schema#",
|
|
3
|
-
"title": "Configuration for bridge cache plugin",
|
|
4
|
-
"type": "object",
|
|
5
|
-
"oneOf": [
|
|
6
|
-
{
|
|
7
|
-
"type": "object",
|
|
8
|
-
"required": ["actionParameterName"],
|
|
9
|
-
"properties": {
|
|
10
|
-
"actionParameterName": {
|
|
11
|
-
"type": "string",
|
|
12
|
-
"description": "(Required) The name of the choice parameter used to trigger this plugin on your phased commands. It should accept two values, 'read' and 'write'."
|
|
13
|
-
},
|
|
14
|
-
"requireOutputFoldersParameterName": {
|
|
15
|
-
"type": "string",
|
|
16
|
-
"description": "(Optional) The name of the parameter used to specify whether the output folders must exist for the action in order to populate the cache."
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
}
|
|
20
|
-
]
|
|
21
|
-
}
|
package/tsconfig.json
DELETED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|