@alwaysmeticulous/downloading-helpers 2.219.1 → 2.221.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -12,7 +12,7 @@ export declare const getOrFetchReplay: (client: AxiosInstance, replayId: string)
|
|
|
12
12
|
*/
|
|
13
13
|
declare const DOWNLOAD_SCOPES: readonly ["everything", "screenshots-only", "timeline-only", "post-test-run-processing-files-only"];
|
|
14
14
|
export type DownloadScope = (typeof DOWNLOAD_SCOPES)[number];
|
|
15
|
-
export declare const getOrFetchReplayArchive: (client: AxiosInstance, replayId: string, downloadScope?: DownloadScope) => Promise<{
|
|
15
|
+
export declare const getOrFetchReplayArchive: (client: AxiosInstance, replayId: string, downloadScope?: DownloadScope, formatJsonFiles?: boolean) => Promise<{
|
|
16
16
|
fileName: string;
|
|
17
17
|
}>;
|
|
18
18
|
export declare const getReplayDir: (replayId: string) => string;
|
package/dist/scripts/replays.js
CHANGED
|
@@ -4,7 +4,6 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.getReplayDir = exports.getOrFetchReplayArchive = exports.getOrFetchReplay = void 0;
|
|
7
|
-
const fs_1 = require("fs");
|
|
8
7
|
const promises_1 = require("fs/promises");
|
|
9
8
|
const path_1 = require("path");
|
|
10
9
|
const client_1 = require("@alwaysmeticulous/client");
|
|
@@ -53,7 +52,7 @@ const shouldDownloadFile = (fileType, downloadScope) => {
|
|
|
53
52
|
return DOWNLOAD_SCOPE_TO_FILES_TO_DOWNLOAD[downloadScope].test(fileType);
|
|
54
53
|
};
|
|
55
54
|
const REPLAY_PREVIOUSLY_DOWNLOADED_FILE_NAME = "previously-downloaded.txt";
|
|
56
|
-
const getOrFetchReplayArchive = async (client, replayId, downloadScope = "everything") => {
|
|
55
|
+
const getOrFetchReplayArchive = async (client, replayId, downloadScope = "everything", formatJsonFiles = false) => {
|
|
57
56
|
const logger = loglevel_1.default.getLogger(common_1.METICULOUS_LOGGER_NAME);
|
|
58
57
|
const replayDir = (0, exports.getReplayDir)(replayId);
|
|
59
58
|
await (0, promises_1.mkdir)(replayDir, { recursive: true });
|
|
@@ -66,7 +65,7 @@ const getOrFetchReplayArchive = async (client, replayId, downloadScope = "everyt
|
|
|
66
65
|
// want to overwrite it while it's being read.
|
|
67
66
|
let previouslyDownloadedScope = undefined;
|
|
68
67
|
if (await (0, local_data_utils_1.fileExists)(previouslyDownloadedFile)) {
|
|
69
|
-
const fileContents = (0,
|
|
68
|
+
const fileContents = await (0, promises_1.readFile)(previouslyDownloadedFile, "utf-8");
|
|
70
69
|
if (DOWNLOAD_SCOPES.includes(fileContents)) {
|
|
71
70
|
previouslyDownloadedScope = fileContents;
|
|
72
71
|
if (previouslyDownloadedScope === downloadScope ||
|
|
@@ -87,12 +86,12 @@ const getOrFetchReplayArchive = async (client, replayId, downloadScope = "everyt
|
|
|
87
86
|
}
|
|
88
87
|
const replay = await (0, client_1.getReplay)(client, replayId);
|
|
89
88
|
if (replay.version === "v3") {
|
|
90
|
-
await downloadReplayV3Files(client, replayId, replayDir, downloadScope, previouslyDownloadedScope);
|
|
89
|
+
await downloadReplayV3Files(client, replayId, replayDir, downloadScope, formatJsonFiles, previouslyDownloadedScope);
|
|
91
90
|
}
|
|
92
91
|
else {
|
|
93
92
|
throw new Error(`Error: Unknown replay version "${replay.version}". This may be an invalid replay`);
|
|
94
93
|
}
|
|
95
|
-
(0,
|
|
94
|
+
await (0, promises_1.writeFile)(previouslyDownloadedFile, downloadScope, "utf-8");
|
|
96
95
|
logger.debug(`Extracted replay archive in ${replayDir}`);
|
|
97
96
|
return { fileName: replayDir };
|
|
98
97
|
}
|
|
@@ -101,7 +100,7 @@ const getOrFetchReplayArchive = async (client, replayId, downloadScope = "everyt
|
|
|
101
100
|
}
|
|
102
101
|
};
|
|
103
102
|
exports.getOrFetchReplayArchive = getOrFetchReplayArchive;
|
|
104
|
-
const downloadReplayV3Files = async (client, replayId, replayDir, downloadScope, previouslyDownloadedScope) => {
|
|
103
|
+
const downloadReplayV3Files = async (client, replayId, replayDir, downloadScope, formatJsonFiles, previouslyDownloadedScope) => {
|
|
105
104
|
const downloadUrls = await (0, client_1.getReplayV3DownloadUrls)(client, replayId);
|
|
106
105
|
if (!downloadUrls) {
|
|
107
106
|
throw new Error("Error: Could not retrieve replay download URLs. This may be an invalid replay");
|
|
@@ -111,7 +110,14 @@ const downloadReplayV3Files = async (client, replayId, replayDir, downloadScope,
|
|
|
111
110
|
.filter(([fileType]) => shouldDownloadFile(fileType, downloadScope))
|
|
112
111
|
.map(([fileType, data]) => {
|
|
113
112
|
const filePath = (0, path_1.join)(replayDir, fileType);
|
|
114
|
-
return () =>
|
|
113
|
+
return async () => {
|
|
114
|
+
await (0, download_file_1.downloadAndExtractFile)(data.signedUrl, filePath, replayDir);
|
|
115
|
+
if (formatJsonFiles && filePath.endsWith(".json")) {
|
|
116
|
+
const fileContents = await (0, promises_1.readFile)(filePath, "utf-8");
|
|
117
|
+
const json = JSON.parse(fileContents);
|
|
118
|
+
await (0, promises_1.writeFile)(filePath, JSON.stringify(json, null, 2), "utf-8");
|
|
119
|
+
}
|
|
120
|
+
};
|
|
115
121
|
});
|
|
116
122
|
if (shouldDownloadFile("screenshots", downloadScope)) {
|
|
117
123
|
await (0, promises_1.mkdir)((0, path_1.join)(replayDir, "screenshots"), { recursive: true });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"replays.js","sourceRoot":"","sources":["../../src/scripts/replays.ts"],"names":[],"mappings":";;;;;;AAAA,
|
|
1
|
+
{"version":3,"file":"replays.js","sourceRoot":"","sources":["../../src/scripts/replays.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@alwaysmeticulous/downloading-helpers",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.221.0",
|
|
4
4
|
"description": "Helper utilities for downloading files & scripts required to execute replays",
|
|
5
5
|
"license": "ISC",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -20,9 +20,9 @@
|
|
|
20
20
|
"test": "jest"
|
|
21
21
|
},
|
|
22
22
|
"dependencies": {
|
|
23
|
-
"@alwaysmeticulous/api": "^2.
|
|
24
|
-
"@alwaysmeticulous/client": "^2.
|
|
25
|
-
"@alwaysmeticulous/common": "^2.
|
|
23
|
+
"@alwaysmeticulous/api": "^2.221.0",
|
|
24
|
+
"@alwaysmeticulous/client": "^2.221.0",
|
|
25
|
+
"@alwaysmeticulous/common": "^2.221.0",
|
|
26
26
|
"axios": "^1.7.9",
|
|
27
27
|
"axios-retry": "^4.5.0",
|
|
28
28
|
"extract-zip": "^2.0.1",
|
|
@@ -55,5 +55,5 @@
|
|
|
55
55
|
"jest": {
|
|
56
56
|
"preset": "../../jest.config.js"
|
|
57
57
|
},
|
|
58
|
-
"gitHead": "
|
|
58
|
+
"gitHead": "87f598857d832acb593e1c3f1fd08aa02bd12426"
|
|
59
59
|
}
|