@empiricalrun/r2-uploader 0.5.0 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +6 -0
- package/dist/index.d.ts +2 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -1
- package/dist/upload-task.d.ts +21 -0
- package/dist/upload-task.d.ts.map +1 -0
- package/dist/upload-task.js +48 -0
- package/package.json +1 -1
- package/tsconfig.tsbuildinfo +1 -1
package/CHANGELOG.md
CHANGED
package/dist/index.d.ts
CHANGED
|
@@ -2,4 +2,6 @@ export { fetchFiles } from "./fetch";
|
|
|
2
2
|
export { sendTaskToQueue, waitForTaskQueueToFinish } from "./queue";
|
|
3
3
|
export type { AsyncTask, FileMap } from "./types";
|
|
4
4
|
export { uploadDirectory, uploadInMemoryFiles } from "./upload";
|
|
5
|
+
export type { CreateUploadTaskOptions } from "./upload-task";
|
|
6
|
+
export { createUploadTask } from "./upload-task";
|
|
5
7
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AACpE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,MAAM,SAAS,CAAC;AACpE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,UAAU,CAAC;AAChE,YAAY,EAAE,uBAAuB,EAAE,MAAM,eAAe,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.uploadInMemoryFiles = exports.uploadDirectory = exports.waitForTaskQueueToFinish = exports.sendTaskToQueue = exports.fetchFiles = void 0;
|
|
3
|
+
exports.createUploadTask = exports.uploadInMemoryFiles = exports.uploadDirectory = exports.waitForTaskQueueToFinish = exports.sendTaskToQueue = exports.fetchFiles = void 0;
|
|
4
4
|
var fetch_1 = require("./fetch");
|
|
5
5
|
Object.defineProperty(exports, "fetchFiles", { enumerable: true, get: function () { return fetch_1.fetchFiles; } });
|
|
6
6
|
var queue_1 = require("./queue");
|
|
@@ -9,3 +9,5 @@ Object.defineProperty(exports, "waitForTaskQueueToFinish", { enumerable: true, g
|
|
|
9
9
|
var upload_1 = require("./upload");
|
|
10
10
|
Object.defineProperty(exports, "uploadDirectory", { enumerable: true, get: function () { return upload_1.uploadDirectory; } });
|
|
11
11
|
Object.defineProperty(exports, "uploadInMemoryFiles", { enumerable: true, get: function () { return upload_1.uploadInMemoryFiles; } });
|
|
12
|
+
var upload_task_1 = require("./upload-task");
|
|
13
|
+
Object.defineProperty(exports, "createUploadTask", { enumerable: true, get: function () { return upload_task_1.createUploadTask; } });
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { AsyncTask } from "./types";
|
|
2
|
+
export interface CreateUploadTaskOptions {
|
|
3
|
+
sourceDir: string;
|
|
4
|
+
fileList?: string[];
|
|
5
|
+
destinationDir: string;
|
|
6
|
+
uploadBucket: string;
|
|
7
|
+
baseUrl: string;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Creates an async task for uploading files to R2 storage.
|
|
11
|
+
*
|
|
12
|
+
* @param {Object} params - The upload parameters
|
|
13
|
+
* @param {string} params.sourceDir - The source directory containing files to upload
|
|
14
|
+
* @param {string[]} [params.fileList] - Optional list of specific files to upload
|
|
15
|
+
* @param {string} params.destinationDir - The destination directory in R2 storage
|
|
16
|
+
* @param {string} params.uploadBucket - The R2 bucket to upload to
|
|
17
|
+
* @param {string} params.baseUrl - The base URL for generating file URLs
|
|
18
|
+
* @returns {AsyncTask} An async task that when executed will upload the files and return a map of file paths to URLs
|
|
19
|
+
*/
|
|
20
|
+
export declare function createUploadTask({ sourceDir, fileList, destinationDir, uploadBucket, baseUrl, }: CreateUploadTaskOptions): AsyncTask;
|
|
21
|
+
//# sourceMappingURL=upload-task.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"upload-task.d.ts","sourceRoot":"","sources":["../src/upload-task.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAW,MAAM,SAAS,CAAC;AAG7C,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,SAAS,EACT,QAAQ,EACR,cAAc,EACd,YAAY,EACZ,OAAO,GACR,EAAE,uBAAuB,GAAG,SAAS,CA4BrC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.createUploadTask = createUploadTask;
|
|
7
|
+
const path_1 = __importDefault(require("path"));
|
|
8
|
+
const logger_1 = require("./logger");
|
|
9
|
+
const upload_1 = require("./upload");
|
|
10
|
+
/**
|
|
11
|
+
* Creates an async task for uploading files to R2 storage.
|
|
12
|
+
*
|
|
13
|
+
* @param {Object} params - The upload parameters
|
|
14
|
+
* @param {string} params.sourceDir - The source directory containing files to upload
|
|
15
|
+
* @param {string[]} [params.fileList] - Optional list of specific files to upload
|
|
16
|
+
* @param {string} params.destinationDir - The destination directory in R2 storage
|
|
17
|
+
* @param {string} params.uploadBucket - The R2 bucket to upload to
|
|
18
|
+
* @param {string} params.baseUrl - The base URL for generating file URLs
|
|
19
|
+
* @returns {AsyncTask} An async task that when executed will upload the files and return a map of file paths to URLs
|
|
20
|
+
*/
|
|
21
|
+
function createUploadTask({ sourceDir, fileList, destinationDir, uploadBucket, baseUrl, }) {
|
|
22
|
+
return async () => {
|
|
23
|
+
if (!process.env.R2_ACCOUNT_ID ||
|
|
24
|
+
!process.env.R2_ACCESS_KEY_ID ||
|
|
25
|
+
!process.env.R2_SECRET_ACCESS_KEY) {
|
|
26
|
+
return;
|
|
27
|
+
}
|
|
28
|
+
try {
|
|
29
|
+
const uploadedFiles = await (0, upload_1.uploadDirectory)({
|
|
30
|
+
sourceDir,
|
|
31
|
+
fileList,
|
|
32
|
+
destinationDir,
|
|
33
|
+
uploadBucket,
|
|
34
|
+
});
|
|
35
|
+
const urls = {};
|
|
36
|
+
Object.entries(uploadedFiles).forEach(([filePath]) => {
|
|
37
|
+
const fileUrl = new URL(path_1.default.join(destinationDir, filePath), baseUrl);
|
|
38
|
+
urls[filePath] = fileUrl.toString();
|
|
39
|
+
});
|
|
40
|
+
logger_1.logger.debug("Finished uploading files");
|
|
41
|
+
return urls;
|
|
42
|
+
}
|
|
43
|
+
catch (error) {
|
|
44
|
+
logger_1.logger.error("Error uploading files", error);
|
|
45
|
+
return {};
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
}
|
package/package.json
CHANGED
package/tsconfig.tsbuildinfo
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"root":["./src/delete.ts","./src/fetch.ts","./src/index.ts","./src/logger.ts","./src/queue.ts","./src/types.ts","./src/upload/buffer.ts","./src/upload/index.ts","./src/upload/stream.ts"],"version":"5.8.3"}
|
|
1
|
+
{"root":["./src/delete.ts","./src/fetch.ts","./src/index.ts","./src/logger.ts","./src/queue.ts","./src/types.ts","./src/upload-task.ts","./src/upload/buffer.ts","./src/upload/index.ts","./src/upload/stream.ts"],"version":"5.8.3"}
|