@or-sdk/files 1.6.0-beta.647.0 → 2.0.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 +56 -0
- package/dist/cjs/Files.js +30 -21
- package/dist/cjs/Files.js.map +1 -1
- package/dist/esm/Files.js +210 -163
- package/dist/esm/Files.js.map +1 -1
- package/dist/types/Files.d.ts +1 -1
- package/dist/types/Files.d.ts.map +1 -1
- package/dist/types/types.d.ts +11 -2
- package/dist/types/types.d.ts.map +1 -1
- package/package.json +7 -4
- package/src/Files.ts +31 -22
- package/src/types.ts +14 -5
- package/tsconfig.esm.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,62 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [2.0.0](https://gitlab.com/onereach/platform/or-sdk-next/compare/@or-sdk/files@1.5.13...@or-sdk/files@2.0.0) (2022-11-22)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### ⚠ BREAKING CHANGES
|
|
10
|
+
|
|
11
|
+
* **Files:** Update FileItem type with new properties
|
|
12
|
+
|
|
13
|
+
### Features
|
|
14
|
+
|
|
15
|
+
* **Files:** Update FileItem type with new properties ([430d7f2](https://gitlab.com/onereach/platform/or-sdk-next/commit/430d7f2ccb286d0e57cd3281a4017f69f9fec992))
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
### [1.5.13](https://gitlab.com/onereach/platform/or-sdk-next/compare/@or-sdk/files@1.5.12...@or-sdk/files@1.5.13) (2022-11-21)
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
### Bug Fixes
|
|
23
|
+
|
|
24
|
+
* **FILES:** Form data in Node.js environment ([e1abb5d](https://gitlab.com/onereach/platform/or-sdk-next/commit/e1abb5d6031377ab6b25c647409c2c3c6d06d05f))
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
### [1.5.12](https://gitlab.com/onereach/platform/or-sdk-next/compare/@or-sdk/files@1.5.11...@or-sdk/files@1.5.12) (2022-11-21)
|
|
29
|
+
|
|
30
|
+
**Note:** Version bump only for package @or-sdk/files
|
|
31
|
+
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
### [1.5.11](https://gitlab.com/onereach/platform/or-sdk-next/compare/@or-sdk/files@1.5.10...@or-sdk/files@1.5.11) (2022-11-15)
|
|
37
|
+
|
|
38
|
+
**Note:** Version bump only for package @or-sdk/files
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
|
|
44
|
+
### [1.5.10](https://gitlab.com/onereach/platform/or-sdk-next/compare/@or-sdk/files@1.5.9...@or-sdk/files@1.5.10) (2022-10-19)
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
### Bug Fixes
|
|
48
|
+
|
|
49
|
+
* **FILES:** Updated files dependencies. ([92feedf](https://gitlab.com/onereach/platform/or-sdk-next/commit/92feedfd2a7816a75e61980f3a29d637b81b3b13))
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
|
|
53
|
+
### [1.5.9](https://gitlab.com/onereach/platform/or-sdk-next/compare/@or-sdk/files@1.5.8...@or-sdk/files@1.5.9) (2022-10-19)
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
### Bug Fixes
|
|
57
|
+
|
|
58
|
+
* **files:** FormData is not defined in node ([69b02ff](https://gitlab.com/onereach/platform/or-sdk-next/commit/69b02ffbd0f5ad08eb667cceb5b67161ef6c267c))
|
|
59
|
+
|
|
60
|
+
|
|
61
|
+
|
|
6
62
|
### [1.5.8](https://gitlab.com/onereach/platform/or-sdk-next/compare/@or-sdk/files@1.5.7...@or-sdk/files@1.5.8) (2022-09-09)
|
|
7
63
|
|
|
8
64
|
**Note:** Version bump only for package @or-sdk/files
|
package/dist/cjs/Files.js
CHANGED
|
@@ -78,12 +78,14 @@ exports.Files = void 0;
|
|
|
78
78
|
var axios_1 = __importDefault(require("axios"));
|
|
79
79
|
var base_1 = require("@or-sdk/base");
|
|
80
80
|
var constants_1 = require("./constants");
|
|
81
|
+
var browser_or_node_1 = require("browser-or-node");
|
|
81
82
|
var Files = (function (_super) {
|
|
82
83
|
__extends(Files, _super);
|
|
83
84
|
function Files(params) {
|
|
84
|
-
var token = params.token, discoveryUrl = params.discoveryUrl, serviceUrl = params.serviceUrl, filesApiUrl = params.filesApiUrl;
|
|
85
|
+
var token = params.token, discoveryUrl = params.discoveryUrl, serviceUrl = params.serviceUrl, filesApiUrl = params.filesApiUrl, accountId = params.accountId;
|
|
85
86
|
return _super.call(this, {
|
|
86
87
|
token: token,
|
|
88
|
+
accountId: accountId,
|
|
87
89
|
discoveryUrl: discoveryUrl,
|
|
88
90
|
serviceUrl: filesApiUrl || serviceUrl,
|
|
89
91
|
serviceKey: constants_1.SERVICE_KEY,
|
|
@@ -93,7 +95,7 @@ var Files = (function (_super) {
|
|
|
93
95
|
return __awaiter(this, void 0, void 0, function () {
|
|
94
96
|
return __generator(this, function (_a) {
|
|
95
97
|
switch (_a.label) {
|
|
96
|
-
case 0: return [4, this.
|
|
98
|
+
case 0: return [4, this.callApiV2({
|
|
97
99
|
method: 'get',
|
|
98
100
|
route: 'api/get-file',
|
|
99
101
|
params: {
|
|
@@ -111,7 +113,7 @@ var Files = (function (_super) {
|
|
|
111
113
|
var size;
|
|
112
114
|
return __generator(this, function (_a) {
|
|
113
115
|
switch (_a.label) {
|
|
114
|
-
case 0: return [4, this.
|
|
116
|
+
case 0: return [4, this.callApiV2({
|
|
115
117
|
method: 'get',
|
|
116
118
|
route: 'api/folder',
|
|
117
119
|
params: { key: key },
|
|
@@ -139,7 +141,7 @@ var Files = (function (_super) {
|
|
|
139
141
|
};
|
|
140
142
|
if (nextTokenValue)
|
|
141
143
|
queryParams.nextToken = nextTokenValue;
|
|
142
|
-
return [4, this.
|
|
144
|
+
return [4, this.callApiV2({
|
|
143
145
|
method: 'GET',
|
|
144
146
|
route: 'api/files',
|
|
145
147
|
params: queryParams,
|
|
@@ -173,7 +175,7 @@ var Files = (function (_super) {
|
|
|
173
175
|
};
|
|
174
176
|
if (nextTokenValue)
|
|
175
177
|
queryParams.nextToken = nextTokenValue;
|
|
176
|
-
return [4, this.
|
|
178
|
+
return [4, this.callApiV2({
|
|
177
179
|
method: 'GET',
|
|
178
180
|
route: 'api/files/searchV2',
|
|
179
181
|
params: queryParams,
|
|
@@ -195,7 +197,7 @@ var Files = (function (_super) {
|
|
|
195
197
|
return __awaiter(this, void 0, void 0, function () {
|
|
196
198
|
return __generator(this, function (_a) {
|
|
197
199
|
switch (_a.label) {
|
|
198
|
-
case 0: return [4, this.
|
|
200
|
+
case 0: return [4, this.callApiV2({
|
|
199
201
|
method: 'post',
|
|
200
202
|
route: 'api/files',
|
|
201
203
|
data: { key: folderName },
|
|
@@ -211,7 +213,7 @@ var Files = (function (_super) {
|
|
|
211
213
|
return __awaiter(this, void 0, void 0, function () {
|
|
212
214
|
return __generator(this, function (_a) {
|
|
213
215
|
switch (_a.label) {
|
|
214
|
-
case 0: return [4, this.
|
|
216
|
+
case 0: return [4, this.callApiV2({
|
|
215
217
|
method: 'put',
|
|
216
218
|
route: 'api/files',
|
|
217
219
|
params: {
|
|
@@ -231,7 +233,7 @@ var Files = (function (_super) {
|
|
|
231
233
|
return __awaiter(this, void 0, void 0, function () {
|
|
232
234
|
return __generator(this, function (_a) {
|
|
233
235
|
switch (_a.label) {
|
|
234
|
-
case 0: return [4, this.
|
|
236
|
+
case 0: return [4, this.callApiV2({
|
|
235
237
|
method: 'put',
|
|
236
238
|
route: 'api/files/duplicate',
|
|
237
239
|
params: {
|
|
@@ -251,7 +253,7 @@ var Files = (function (_super) {
|
|
|
251
253
|
return __awaiter(this, void 0, void 0, function () {
|
|
252
254
|
return __generator(this, function (_a) {
|
|
253
255
|
switch (_a.label) {
|
|
254
|
-
case 0: return [4, this.
|
|
256
|
+
case 0: return [4, this.callApiV2({
|
|
255
257
|
method: 'patch',
|
|
256
258
|
route: 'api/files',
|
|
257
259
|
params: {
|
|
@@ -271,7 +273,7 @@ var Files = (function (_super) {
|
|
|
271
273
|
return __awaiter(this, void 0, void 0, function () {
|
|
272
274
|
return __generator(this, function (_a) {
|
|
273
275
|
switch (_a.label) {
|
|
274
|
-
case 0: return [4, this.
|
|
276
|
+
case 0: return [4, this.callApiV2({
|
|
275
277
|
method: 'delete',
|
|
276
278
|
route: 'api/delete-system-file',
|
|
277
279
|
params: {
|
|
@@ -289,7 +291,7 @@ var Files = (function (_super) {
|
|
|
289
291
|
return __awaiter(this, void 0, void 0, function () {
|
|
290
292
|
return __generator(this, function (_a) {
|
|
291
293
|
switch (_a.label) {
|
|
292
|
-
case 0: return [4, this.
|
|
294
|
+
case 0: return [4, this.callApiV2({
|
|
293
295
|
method: 'delete',
|
|
294
296
|
route: 'api/files',
|
|
295
297
|
params: {
|
|
@@ -308,7 +310,7 @@ var Files = (function (_super) {
|
|
|
308
310
|
return __awaiter(this, void 0, void 0, function () {
|
|
309
311
|
return __generator(this, function (_a) {
|
|
310
312
|
switch (_a.label) {
|
|
311
|
-
case 0: return [4, this.
|
|
313
|
+
case 0: return [4, this.callApiV2({
|
|
312
314
|
method: 'delete',
|
|
313
315
|
route: 'api/folder',
|
|
314
316
|
data: { key: key },
|
|
@@ -320,16 +322,18 @@ var Files = (function (_super) {
|
|
|
320
322
|
});
|
|
321
323
|
});
|
|
322
324
|
};
|
|
323
|
-
Files.prototype.getDownloadUrl = function (key, isPublic) {
|
|
325
|
+
Files.prototype.getDownloadUrl = function (key, isPublic, urlExpirationInSeconds) {
|
|
326
|
+
if (urlExpirationInSeconds === void 0) { urlExpirationInSeconds = 86400; }
|
|
324
327
|
return __awaiter(this, void 0, void 0, function () {
|
|
325
328
|
return __generator(this, function (_a) {
|
|
326
329
|
switch (_a.label) {
|
|
327
|
-
case 0: return [4, this.
|
|
330
|
+
case 0: return [4, this.callApiV2({
|
|
328
331
|
method: 'get',
|
|
329
332
|
route: 'api/url',
|
|
330
333
|
params: {
|
|
331
334
|
key: key,
|
|
332
335
|
isPublic: isPublic,
|
|
336
|
+
expires: urlExpirationInSeconds,
|
|
333
337
|
},
|
|
334
338
|
})];
|
|
335
339
|
case 1: return [2, _a.sent()];
|
|
@@ -341,7 +345,7 @@ var Files = (function (_super) {
|
|
|
341
345
|
return __awaiter(this, void 0, void 0, function () {
|
|
342
346
|
return __generator(this, function (_a) {
|
|
343
347
|
switch (_a.label) {
|
|
344
|
-
case 0: return [4, this.
|
|
348
|
+
case 0: return [4, this.callApiV2({
|
|
345
349
|
method: 'get',
|
|
346
350
|
route: 'api/file',
|
|
347
351
|
params: {
|
|
@@ -355,20 +359,21 @@ var Files = (function (_super) {
|
|
|
355
359
|
});
|
|
356
360
|
};
|
|
357
361
|
Files.prototype.getUploadUrl = function (data, isPublic) {
|
|
358
|
-
return this.
|
|
362
|
+
return this.callApiV2({
|
|
359
363
|
method: 'post',
|
|
360
364
|
route: 'api/url',
|
|
361
365
|
params: {
|
|
362
366
|
isPublic: isPublic,
|
|
363
367
|
prefix: '',
|
|
364
368
|
setDefaultCache: true,
|
|
369
|
+
ttl: data.ttl,
|
|
365
370
|
},
|
|
366
371
|
data: __assign({}, data),
|
|
367
372
|
});
|
|
368
373
|
};
|
|
369
374
|
Files.prototype.uploadFile = function (file) {
|
|
370
375
|
return __awaiter(this, void 0, void 0, function () {
|
|
371
|
-
var _a, type, name, contentType, _b, url, fields, formData;
|
|
376
|
+
var _a, type, name, contentType, _b, url, fields, FormDataLib, formData;
|
|
372
377
|
return __generator(this, function (_c) {
|
|
373
378
|
switch (_c.label) {
|
|
374
379
|
case 0:
|
|
@@ -379,10 +384,13 @@ var Files = (function (_super) {
|
|
|
379
384
|
key: file.prefix + name,
|
|
380
385
|
cacheControl: 'no-cache',
|
|
381
386
|
rewriteMode: file.rewriteMode,
|
|
387
|
+
maxFileSize: file.maxFileSize,
|
|
388
|
+
ttl: file.ttl,
|
|
382
389
|
}, file.isPublic)];
|
|
383
390
|
case 1:
|
|
384
391
|
_b = _c.sent(), url = _b.url, fields = _b.fields;
|
|
385
|
-
|
|
392
|
+
FormDataLib = browser_or_node_1.isNode ? require('form-data') : FormData;
|
|
393
|
+
formData = new FormDataLib();
|
|
386
394
|
Object.entries(fields).forEach(function (value) {
|
|
387
395
|
formData.append(value[0], value[1]);
|
|
388
396
|
});
|
|
@@ -398,10 +406,10 @@ var Files = (function (_super) {
|
|
|
398
406
|
Files.prototype.uploadSystemFile = function (prefix, file, cacheControl) {
|
|
399
407
|
if (cacheControl === void 0) { cacheControl = 'max-age=3600'; }
|
|
400
408
|
return __awaiter(this, void 0, void 0, function () {
|
|
401
|
-
var result, url, fields, downloadUrl, formData;
|
|
409
|
+
var result, url, fields, downloadUrl, FormDataLib, formData;
|
|
402
410
|
return __generator(this, function (_a) {
|
|
403
411
|
switch (_a.label) {
|
|
404
|
-
case 0: return [4, this.
|
|
412
|
+
case 0: return [4, this.callApiV2({
|
|
405
413
|
method: 'post',
|
|
406
414
|
route: 'api/upload-system',
|
|
407
415
|
data: {
|
|
@@ -414,7 +422,8 @@ var Files = (function (_super) {
|
|
|
414
422
|
case 1:
|
|
415
423
|
result = _a.sent();
|
|
416
424
|
url = result.url, fields = result.fields, downloadUrl = result.downloadUrl;
|
|
417
|
-
|
|
425
|
+
FormDataLib = browser_or_node_1.isNode ? require('form-data') : FormData;
|
|
426
|
+
formData = new FormDataLib();
|
|
418
427
|
Object.entries(fields).forEach(function (value) {
|
|
419
428
|
formData.append(value[0], value[1]);
|
|
420
429
|
});
|
package/dist/cjs/Files.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Files.js","sourceRoot":"","sources":["../../src/Files.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,gDAA0B;AAC1B,qCAAoC;AACpC,yCAA0C;
|
|
1
|
+
{"version":3,"file":"Files.js","sourceRoot":"","sources":["../../src/Files.ts"],"names":[],"mappings":"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"}
|
package/dist/esm/Files.js
CHANGED
|
@@ -1,212 +1,259 @@
|
|
|
1
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
+
});
|
|
9
|
+
};
|
|
1
10
|
import axios from 'axios';
|
|
2
11
|
import { Base } from '@or-sdk/base';
|
|
3
12
|
import { SERVICE_KEY } from './constants';
|
|
13
|
+
import { isNode } from 'browser-or-node';
|
|
4
14
|
export class Files extends Base {
|
|
5
15
|
constructor(params) {
|
|
6
|
-
const { token, discoveryUrl, serviceUrl, filesApiUrl } = params;
|
|
16
|
+
const { token, discoveryUrl, serviceUrl, filesApiUrl, accountId } = params;
|
|
7
17
|
super({
|
|
8
18
|
token,
|
|
19
|
+
accountId,
|
|
9
20
|
discoveryUrl,
|
|
10
21
|
serviceUrl: filesApiUrl || serviceUrl,
|
|
11
22
|
serviceKey: SERVICE_KEY,
|
|
12
23
|
});
|
|
13
24
|
}
|
|
14
|
-
|
|
15
|
-
return
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
25
|
+
getFile(prefix, isPublic) {
|
|
26
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
27
|
+
return yield this.callApiV2({
|
|
28
|
+
method: 'get',
|
|
29
|
+
route: 'api/get-file',
|
|
30
|
+
params: {
|
|
31
|
+
prefix,
|
|
32
|
+
isPublic,
|
|
33
|
+
},
|
|
34
|
+
});
|
|
22
35
|
});
|
|
23
36
|
}
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
37
|
+
getFolderSize(key) {
|
|
38
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
39
|
+
const { size } = yield this.callApiV2({
|
|
40
|
+
method: 'get',
|
|
41
|
+
route: 'api/folder',
|
|
42
|
+
params: { key },
|
|
43
|
+
});
|
|
44
|
+
return size;
|
|
29
45
|
});
|
|
30
|
-
return size;
|
|
31
46
|
}
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
47
|
+
getItemsList(isPublic, treePrefix) {
|
|
48
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
49
|
+
let nextTokenValue = null;
|
|
50
|
+
let totalItems = [];
|
|
51
|
+
do {
|
|
52
|
+
const queryParams = {
|
|
53
|
+
isPublic,
|
|
54
|
+
prefix: treePrefix,
|
|
55
|
+
};
|
|
56
|
+
if (nextTokenValue)
|
|
57
|
+
queryParams.nextToken = nextTokenValue;
|
|
58
|
+
const { items, nextToken } = yield this.callApiV2({
|
|
59
|
+
method: 'GET',
|
|
60
|
+
route: 'api/files',
|
|
61
|
+
params: queryParams,
|
|
62
|
+
});
|
|
63
|
+
totalItems = [...totalItems, ...items];
|
|
64
|
+
nextTokenValue = nextToken;
|
|
65
|
+
} while (nextTokenValue);
|
|
66
|
+
return totalItems;
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
search(isPublic, term) {
|
|
70
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
71
|
+
let nextTokenValue = null;
|
|
72
|
+
let totalItems = [];
|
|
73
|
+
do {
|
|
74
|
+
const queryParams = {
|
|
75
|
+
isPublic,
|
|
76
|
+
term,
|
|
77
|
+
};
|
|
78
|
+
if (nextTokenValue)
|
|
79
|
+
queryParams.nextToken = nextTokenValue;
|
|
80
|
+
const { items, nextToken } = yield this.callApiV2({
|
|
81
|
+
method: 'GET',
|
|
82
|
+
route: 'api/files/searchV2',
|
|
83
|
+
params: queryParams,
|
|
84
|
+
});
|
|
85
|
+
totalItems = [...totalItems, ...items];
|
|
86
|
+
nextTokenValue = nextToken;
|
|
87
|
+
} while (nextTokenValue);
|
|
88
|
+
return totalItems;
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
createFolder(folderName) {
|
|
92
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
93
|
+
yield this.callApiV2({
|
|
94
|
+
method: 'post',
|
|
44
95
|
route: 'api/files',
|
|
45
|
-
|
|
96
|
+
data: { key: folderName },
|
|
46
97
|
});
|
|
47
|
-
totalItems = [...totalItems, ...items];
|
|
48
|
-
nextTokenValue = nextToken;
|
|
49
|
-
} while (nextTokenValue);
|
|
50
|
-
return totalItems;
|
|
51
|
-
}
|
|
52
|
-
async search(isPublic, term) {
|
|
53
|
-
let nextTokenValue = null;
|
|
54
|
-
let totalItems = [];
|
|
55
|
-
do {
|
|
56
|
-
const queryParams = {
|
|
57
|
-
isPublic,
|
|
58
|
-
term,
|
|
59
|
-
};
|
|
60
|
-
if (nextTokenValue)
|
|
61
|
-
queryParams.nextToken = nextTokenValue;
|
|
62
|
-
const { items, nextToken } = await this.callApi({
|
|
63
|
-
method: 'GET',
|
|
64
|
-
route: 'api/files/searchV2',
|
|
65
|
-
params: queryParams,
|
|
66
|
-
});
|
|
67
|
-
totalItems = [...totalItems, ...items];
|
|
68
|
-
nextTokenValue = nextToken;
|
|
69
|
-
} while (nextTokenValue);
|
|
70
|
-
return totalItems;
|
|
71
|
-
}
|
|
72
|
-
async createFolder(folderName) {
|
|
73
|
-
await this.callApi({
|
|
74
|
-
method: 'post',
|
|
75
|
-
route: 'api/files',
|
|
76
|
-
data: { key: folderName },
|
|
77
98
|
});
|
|
78
99
|
}
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
100
|
+
renameFile(key, newKey, isPublic) {
|
|
101
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
102
|
+
yield this.callApiV2({
|
|
103
|
+
method: 'put',
|
|
104
|
+
route: 'api/files',
|
|
105
|
+
params: {
|
|
106
|
+
key,
|
|
107
|
+
isPublic,
|
|
108
|
+
},
|
|
109
|
+
data: { newKey },
|
|
110
|
+
});
|
|
88
111
|
});
|
|
89
112
|
}
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
113
|
+
duplicateFile(key, newKey, isPublic) {
|
|
114
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
115
|
+
yield this.callApiV2({
|
|
116
|
+
method: 'put',
|
|
117
|
+
route: 'api/files/duplicate',
|
|
118
|
+
params: {
|
|
119
|
+
key,
|
|
120
|
+
isPublic,
|
|
121
|
+
},
|
|
122
|
+
data: { newKey },
|
|
123
|
+
});
|
|
99
124
|
});
|
|
100
125
|
}
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
126
|
+
changePrivacy(key, newPrivacy, isPublic) {
|
|
127
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
128
|
+
yield this.callApiV2({
|
|
129
|
+
method: 'patch',
|
|
130
|
+
route: 'api/files',
|
|
131
|
+
params: {
|
|
132
|
+
key,
|
|
133
|
+
isPublic,
|
|
134
|
+
},
|
|
135
|
+
data: { newPrivacy },
|
|
136
|
+
});
|
|
110
137
|
});
|
|
111
138
|
}
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
139
|
+
deleteSystemFile(path) {
|
|
140
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
141
|
+
yield this.callApiV2({
|
|
142
|
+
method: 'delete',
|
|
143
|
+
route: 'api/delete-system-file',
|
|
144
|
+
params: {
|
|
145
|
+
key: path,
|
|
146
|
+
},
|
|
147
|
+
});
|
|
119
148
|
});
|
|
120
149
|
}
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
150
|
+
deleteFile(key, isPublic) {
|
|
151
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
152
|
+
yield this.callApiV2({
|
|
153
|
+
method: 'delete',
|
|
154
|
+
route: 'api/files',
|
|
155
|
+
params: {
|
|
156
|
+
key,
|
|
157
|
+
isPublic,
|
|
158
|
+
},
|
|
159
|
+
});
|
|
129
160
|
});
|
|
130
161
|
}
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
162
|
+
deleteFolder(key) {
|
|
163
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
164
|
+
yield this.callApiV2({
|
|
165
|
+
method: 'delete',
|
|
166
|
+
route: 'api/folder',
|
|
167
|
+
data: { key },
|
|
168
|
+
});
|
|
136
169
|
});
|
|
137
170
|
}
|
|
138
|
-
|
|
139
|
-
return
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
171
|
+
getDownloadUrl(key, isPublic, urlExpirationInSeconds = 86400) {
|
|
172
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
173
|
+
return yield this.callApiV2({
|
|
174
|
+
method: 'get',
|
|
175
|
+
route: 'api/url',
|
|
176
|
+
params: {
|
|
177
|
+
key,
|
|
178
|
+
isPublic,
|
|
179
|
+
expires: urlExpirationInSeconds,
|
|
180
|
+
},
|
|
181
|
+
});
|
|
146
182
|
});
|
|
147
183
|
}
|
|
148
|
-
|
|
149
|
-
return
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
184
|
+
getObjectInfo(key, isPublic) {
|
|
185
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
186
|
+
return yield this.callApiV2({
|
|
187
|
+
method: 'get',
|
|
188
|
+
route: 'api/file',
|
|
189
|
+
params: {
|
|
190
|
+
key,
|
|
191
|
+
isPublic,
|
|
192
|
+
},
|
|
193
|
+
});
|
|
156
194
|
});
|
|
157
195
|
}
|
|
158
196
|
getUploadUrl(data, isPublic) {
|
|
159
|
-
return this.
|
|
197
|
+
return this.callApiV2({
|
|
160
198
|
method: 'post',
|
|
161
199
|
route: 'api/url',
|
|
162
200
|
params: {
|
|
163
201
|
isPublic,
|
|
164
202
|
prefix: '',
|
|
165
203
|
setDefaultCache: true,
|
|
204
|
+
ttl: data.ttl,
|
|
166
205
|
},
|
|
167
|
-
data: {
|
|
168
|
-
});
|
|
169
|
-
}
|
|
170
|
-
async uploadFile(file) {
|
|
171
|
-
const { type, name } = file.fileModel;
|
|
172
|
-
const contentType = type || 'binary/octet-stream';
|
|
173
|
-
const { url, fields } = await this.getUploadUrl({
|
|
174
|
-
contentType,
|
|
175
|
-
key: file.prefix + name,
|
|
176
|
-
cacheControl: 'no-cache',
|
|
177
|
-
rewriteMode: file.rewriteMode,
|
|
178
|
-
}, file.isPublic);
|
|
179
|
-
const formData = new FormData();
|
|
180
|
-
Object.entries(fields).forEach(value => {
|
|
181
|
-
formData.append(value[0], value[1]);
|
|
182
|
-
});
|
|
183
|
-
formData.append('content-type', contentType);
|
|
184
|
-
formData.append('File', file.fileModel, name);
|
|
185
|
-
return axios.post(url, formData, {
|
|
186
|
-
onUploadProgress: event => file.progress?.(event),
|
|
187
|
-
});
|
|
188
|
-
}
|
|
189
|
-
async uploadSystemFile(prefix, file, cacheControl = 'max-age=3600') {
|
|
190
|
-
const result = await this.callApi({
|
|
191
|
-
method: 'post',
|
|
192
|
-
route: 'api/upload-system',
|
|
193
|
-
data: {
|
|
194
|
-
prefix,
|
|
195
|
-
cacheControl,
|
|
196
|
-
key: file.name,
|
|
197
|
-
contentType: file.type,
|
|
198
|
-
},
|
|
206
|
+
data: Object.assign({}, data),
|
|
199
207
|
});
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
208
|
+
}
|
|
209
|
+
uploadFile(file) {
|
|
210
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
211
|
+
const { type, name } = file.fileModel;
|
|
212
|
+
const contentType = type || 'binary/octet-stream';
|
|
213
|
+
const { url, fields } = yield this.getUploadUrl({
|
|
214
|
+
contentType,
|
|
215
|
+
key: file.prefix + name,
|
|
216
|
+
cacheControl: 'no-cache',
|
|
217
|
+
rewriteMode: file.rewriteMode,
|
|
218
|
+
maxFileSize: file.maxFileSize,
|
|
219
|
+
ttl: file.ttl,
|
|
220
|
+
}, file.isPublic);
|
|
221
|
+
const FormDataLib = isNode ? require('form-data') : FormData;
|
|
222
|
+
const formData = new FormDataLib();
|
|
223
|
+
Object.entries(fields).forEach(value => {
|
|
224
|
+
formData.append(value[0], value[1]);
|
|
225
|
+
});
|
|
226
|
+
formData.append('content-type', contentType);
|
|
227
|
+
formData.append('File', file.fileModel, name);
|
|
228
|
+
return axios.post(url, formData, {
|
|
229
|
+
onUploadProgress: event => { var _a; return (_a = file.progress) === null || _a === void 0 ? void 0 : _a.call(file, event); },
|
|
230
|
+
});
|
|
231
|
+
});
|
|
232
|
+
}
|
|
233
|
+
uploadSystemFile(prefix, file, cacheControl = 'max-age=3600') {
|
|
234
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
235
|
+
const result = yield this.callApiV2({
|
|
236
|
+
method: 'post',
|
|
237
|
+
route: 'api/upload-system',
|
|
238
|
+
data: {
|
|
239
|
+
prefix,
|
|
240
|
+
cacheControl,
|
|
241
|
+
key: file.name,
|
|
242
|
+
contentType: file.type,
|
|
243
|
+
},
|
|
244
|
+
});
|
|
245
|
+
const { url, fields, downloadUrl } = result;
|
|
246
|
+
const FormDataLib = isNode ? require('form-data') : FormData;
|
|
247
|
+
const formData = new FormDataLib();
|
|
248
|
+
Object.entries(fields).forEach(value => {
|
|
249
|
+
formData.append(value[0], value[1]);
|
|
250
|
+
});
|
|
251
|
+
formData.append('cache-control', cacheControl);
|
|
252
|
+
formData.append('content-type', file.type);
|
|
253
|
+
formData.append('File', file, file.name);
|
|
254
|
+
yield axios.post(url, formData);
|
|
255
|
+
return downloadUrl;
|
|
204
256
|
});
|
|
205
|
-
formData.append('cache-control', cacheControl);
|
|
206
|
-
formData.append('content-type', file.type);
|
|
207
|
-
formData.append('File', file, file.name);
|
|
208
|
-
await axios.post(url, formData);
|
|
209
|
-
return downloadUrl;
|
|
210
257
|
}
|
|
211
258
|
}
|
|
212
259
|
//# sourceMappingURL=Files.js.map
|
package/dist/esm/Files.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Files.js","sourceRoot":"","sources":["../../src/Files.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AACpC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"Files.js","sourceRoot":"","sources":["../../src/Files.ts"],"names":[],"mappings":"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"}
|
package/dist/types/Files.d.ts
CHANGED
|
@@ -17,7 +17,7 @@ export declare class Files extends Base {
|
|
|
17
17
|
deleteSystemFile(path: string): Promise<void>;
|
|
18
18
|
deleteFile(key: string, isPublic: boolean): Promise<void>;
|
|
19
19
|
deleteFolder(key: string): Promise<void>;
|
|
20
|
-
getDownloadUrl(key: string, isPublic: boolean): Promise<string>;
|
|
20
|
+
getDownloadUrl(key: string, isPublic: boolean, urlExpirationInSeconds?: number): Promise<string>;
|
|
21
21
|
getObjectInfo(key: string, isPublic: boolean): Promise<HeadData>;
|
|
22
22
|
private getUploadUrl;
|
|
23
23
|
uploadFile(file: UploadFileProps): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Files.d.ts","sourceRoot":"","sources":["../../src/Files.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"Files.d.ts","sourceRoot":"","sources":["../../src/Files.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAGpC,OAAO,EACL,WAAW,EAA8B,QAAQ,EACjC,eAAe,EAAqB,QAAQ,EAC7D,MAAM,SAAS,CAAC;AAEjB,qBAAa,KAAM,SAAQ,IAAI;gBACjB,MAAM,EAAE,WAAW;IAqBzB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC;QAAC,IAAI,EAAE,QAAQ,CAAC;QAAC,IAAI,EAAE,QAAQ,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;KAAE,CAAC;IAgBpG,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAgB3C,YAAY,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAwBxE,MAAM,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IA6B5D,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAc/C,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBzE,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB5E,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,GAAG,QAAQ,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB9F,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAgB7C,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAezD,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAexC,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,sBAAsB,SAAQ,GAAG,OAAO,CAAC,MAAM,CAAC;IAiB/F,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,CAAC;IAiBtE,OAAO,CAAC,YAAY;IAkBd,UAAU,CAAC,IAAI,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAoChD,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,YAAY,SAAiB;CA+BjF"}
|
package/dist/types/types.d.ts
CHANGED
|
@@ -3,8 +3,8 @@ export declare type FilesConfig = {
|
|
|
3
3
|
token: Token;
|
|
4
4
|
discoveryUrl?: string;
|
|
5
5
|
accountId?: string;
|
|
6
|
-
serviceUrl?: string;
|
|
7
6
|
filesApiUrl?: string;
|
|
7
|
+
serviceUrl?: string;
|
|
8
8
|
};
|
|
9
9
|
export declare type GetItemsQuery = {
|
|
10
10
|
isPublic: boolean;
|
|
@@ -18,8 +18,14 @@ export declare type SearchQuery = {
|
|
|
18
18
|
};
|
|
19
19
|
export declare type FileItem = {
|
|
20
20
|
key: string;
|
|
21
|
+
isPublic?: boolean;
|
|
21
22
|
size?: number;
|
|
22
|
-
|
|
23
|
+
contentType?: string;
|
|
24
|
+
parentFolder?: string;
|
|
25
|
+
createdAt?: Date | null;
|
|
26
|
+
updatedAt?: Date | null;
|
|
27
|
+
downloadUrl?: string;
|
|
28
|
+
isUploaded?: boolean;
|
|
23
29
|
};
|
|
24
30
|
export declare type HeadData = {
|
|
25
31
|
contentLength: number;
|
|
@@ -34,6 +40,7 @@ export declare type UploadUrlProps = {
|
|
|
34
40
|
key: string;
|
|
35
41
|
contentType: string;
|
|
36
42
|
maxFileSize?: number;
|
|
43
|
+
ttl?: number;
|
|
37
44
|
cacheControl: string;
|
|
38
45
|
rewriteMode?: 'rewrite' | 'prevent-rewrite';
|
|
39
46
|
};
|
|
@@ -63,5 +70,7 @@ export declare type UploadFileProps = {
|
|
|
63
70
|
isPublic: boolean;
|
|
64
71
|
progress?: (event: ProgressEvent) => void;
|
|
65
72
|
rewriteMode?: 'rewrite' | 'prevent-rewrite';
|
|
73
|
+
ttl?: number;
|
|
74
|
+
maxFileSize?: number;
|
|
66
75
|
};
|
|
67
76
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAErC,oBAAY,WAAW,GAAG;IAIxB,KAAK,EAAE,KAAK,CAAC;IAIb,YAAY,CAAC,EAAE,MAAM,CAAC;IAItB,SAAS,CAAC,EAAE,MAAM,CAAC;IAInB,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAErC,oBAAY,WAAW,GAAG;IAIxB,KAAK,EAAE,KAAK,CAAC;IAIb,YAAY,CAAC,EAAE,MAAM,CAAC;IAItB,SAAS,CAAC,EAAE,MAAM,CAAC;IAInB,WAAW,CAAC,EAAE,MAAM,CAAC;IAIrB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,oBAAY,aAAa,GAAG;IAC1B,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,oBAAY,WAAW,GAAG;IACxB,QAAQ,EAAE,OAAO,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,oBAAY,QAAQ,GAAG;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,SAAS,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACxB,SAAS,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB,CAAC;AAGF,oBAAY,QAAQ,GAAG;IACrB,aAAa,EAAE,MAAM,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,oBAAY,oBAAoB,GAAG;IACjC,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B,CAAC;AAEF,oBAAY,cAAc,GAAG;IAC3B,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,SAAS,GAAG,iBAAiB,CAAC;CAC7C,CAAC;AAEF,oBAAY,YAAY,GAAG;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,sBAAsB,EAAE,MAAM,CAAC;CAChC,CAAC;AAEF,oBAAY,iBAAiB,GAAG;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,YAAY,CAAC;CACtB,CAAC;AAEF,oBAAY,uBAAuB,GAAG;IACpC,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,YAAY,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,oBAAY,eAAe,GAAG;IAC5B,SAAS,EAAE,IAAI,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC1C,WAAW,CAAC,EAAE,SAAS,GAAG,iBAAiB,CAAC;IAC5C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@or-sdk/files",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.0",
|
|
4
4
|
"main": "dist/cjs/index.js",
|
|
5
5
|
"module": "dist/esm/index.js",
|
|
6
6
|
"types": "dist/types/index.d.ts",
|
|
@@ -17,8 +17,10 @@
|
|
|
17
17
|
"dev": "pnpm build:watch:esm"
|
|
18
18
|
},
|
|
19
19
|
"dependencies": {
|
|
20
|
-
"@or-sdk/base": "^0.27.0
|
|
21
|
-
"axios": "^0.24.0"
|
|
20
|
+
"@or-sdk/base": "^0.27.0",
|
|
21
|
+
"axios": "^0.24.0",
|
|
22
|
+
"browser-or-node": "^1.2.1",
|
|
23
|
+
"form-data": "^2.5.1"
|
|
22
24
|
},
|
|
23
25
|
"devDependencies": {
|
|
24
26
|
"concurrently": "^6.4.0",
|
|
@@ -26,5 +28,6 @@
|
|
|
26
28
|
},
|
|
27
29
|
"publishConfig": {
|
|
28
30
|
"access": "public"
|
|
29
|
-
}
|
|
31
|
+
},
|
|
32
|
+
"gitHead": "9fe80a4baa014ef11e6c3f80f1c60ca425012dea"
|
|
30
33
|
}
|
package/src/Files.ts
CHANGED
|
@@ -1,18 +1,22 @@
|
|
|
1
1
|
import axios from 'axios';
|
|
2
2
|
import { Base } from '@or-sdk/base';
|
|
3
3
|
import { SERVICE_KEY } from './constants';
|
|
4
|
+
import { isNode } from 'browser-or-node';
|
|
4
5
|
import {
|
|
5
6
|
FilesConfig, GetItemsQuery, SearchQuery, FileItem, GetItemsListResponse,
|
|
6
7
|
UploadUrlProps, UploadFileProps, UploadUrlResponse, HeadData, UploadSystemUrlResponse,
|
|
7
8
|
} from './types';
|
|
8
9
|
|
|
9
10
|
export class Files extends Base {
|
|
10
|
-
|
|
11
11
|
constructor(params: FilesConfig) {
|
|
12
|
-
|
|
12
|
+
/**
|
|
13
|
+
* @param serviceUrl @deprecated Use filesApiUrl instead
|
|
14
|
+
*/
|
|
15
|
+
const { token, discoveryUrl, serviceUrl, filesApiUrl, accountId } = params;
|
|
13
16
|
|
|
14
17
|
super({
|
|
15
18
|
token,
|
|
19
|
+
accountId,
|
|
16
20
|
discoveryUrl,
|
|
17
21
|
serviceUrl: filesApiUrl || serviceUrl,
|
|
18
22
|
serviceKey: SERVICE_KEY,
|
|
@@ -26,7 +30,7 @@ export class Files extends Base {
|
|
|
26
30
|
* @return object with: file, headData and url for downloading
|
|
27
31
|
*/
|
|
28
32
|
async getFile(prefix: string, isPublic: boolean): Promise<{file: FileItem; head: HeadData; url: string; }> {
|
|
29
|
-
return await this.
|
|
33
|
+
return await this.callApiV2({
|
|
30
34
|
method: 'get',
|
|
31
35
|
route: 'api/get-file',
|
|
32
36
|
params: {
|
|
@@ -42,7 +46,7 @@ export class Files extends Base {
|
|
|
42
46
|
* @return total folder size in bytes
|
|
43
47
|
*/
|
|
44
48
|
async getFolderSize(key: string): Promise<number> {
|
|
45
|
-
const { size } = await this.
|
|
49
|
+
const { size } = await this.callApiV2({
|
|
46
50
|
method: 'get',
|
|
47
51
|
route: 'api/folder',
|
|
48
52
|
params: { key },
|
|
@@ -68,7 +72,7 @@ export class Files extends Base {
|
|
|
68
72
|
};
|
|
69
73
|
if (nextTokenValue) queryParams.nextToken = nextTokenValue;
|
|
70
74
|
|
|
71
|
-
const { items, nextToken }: GetItemsListResponse = await this.
|
|
75
|
+
const { items, nextToken }: GetItemsListResponse = await this.callApiV2({
|
|
72
76
|
method: 'GET',
|
|
73
77
|
route: 'api/files',
|
|
74
78
|
params: queryParams,
|
|
@@ -93,7 +97,7 @@ export class Files extends Base {
|
|
|
93
97
|
|
|
94
98
|
if (nextTokenValue) queryParams.nextToken = nextTokenValue;
|
|
95
99
|
|
|
96
|
-
const { items, nextToken }: GetItemsListResponse = await this.
|
|
100
|
+
const { items, nextToken }: GetItemsListResponse = await this.callApiV2({
|
|
97
101
|
method: 'GET',
|
|
98
102
|
route: 'api/files/searchV2',
|
|
99
103
|
params: queryParams,
|
|
@@ -111,7 +115,7 @@ export class Files extends Base {
|
|
|
111
115
|
* @param folderName should have folder path + folder name, example: /main/New folder
|
|
112
116
|
*/
|
|
113
117
|
async createFolder(folderName: string): Promise<void> {
|
|
114
|
-
await this.
|
|
118
|
+
await this.callApiV2({
|
|
115
119
|
method: 'post',
|
|
116
120
|
route: 'api/files',
|
|
117
121
|
data: { key: folderName },
|
|
@@ -125,7 +129,7 @@ export class Files extends Base {
|
|
|
125
129
|
* @param isPublic does this file public or private
|
|
126
130
|
*/
|
|
127
131
|
async renameFile(key: string, newKey: string, isPublic: boolean): Promise<void> {
|
|
128
|
-
await this.
|
|
132
|
+
await this.callApiV2({
|
|
129
133
|
method: 'put',
|
|
130
134
|
route: 'api/files',
|
|
131
135
|
params: {
|
|
@@ -143,7 +147,7 @@ export class Files extends Base {
|
|
|
143
147
|
* @param isPublic does this file public or private
|
|
144
148
|
*/
|
|
145
149
|
async duplicateFile(key: string, newKey: string, isPublic: boolean): Promise<void> {
|
|
146
|
-
await this.
|
|
150
|
+
await this.callApiV2({
|
|
147
151
|
method: 'put',
|
|
148
152
|
route: 'api/files/duplicate',
|
|
149
153
|
params: {
|
|
@@ -161,7 +165,7 @@ export class Files extends Base {
|
|
|
161
165
|
* @param isPublic does this file public or private
|
|
162
166
|
*/
|
|
163
167
|
async changePrivacy(key: string, newPrivacy: 'private' | 'public', isPublic: boolean): Promise<void> {
|
|
164
|
-
await this.
|
|
168
|
+
await this.callApiV2({
|
|
165
169
|
method: 'patch',
|
|
166
170
|
route: 'api/files',
|
|
167
171
|
params: {
|
|
@@ -177,7 +181,7 @@ export class Files extends Base {
|
|
|
177
181
|
* @param path file path
|
|
178
182
|
*/
|
|
179
183
|
async deleteSystemFile(path: string): Promise<void> {
|
|
180
|
-
await this.
|
|
184
|
+
await this.callApiV2({
|
|
181
185
|
method: 'delete',
|
|
182
186
|
route: 'api/delete-system-file',
|
|
183
187
|
params: {
|
|
@@ -193,8 +197,7 @@ export class Files extends Base {
|
|
|
193
197
|
* @param isPublic does this file public or private
|
|
194
198
|
*/
|
|
195
199
|
async deleteFile(key: string, isPublic: boolean): Promise<void> {
|
|
196
|
-
|
|
197
|
-
await this.callApi({
|
|
200
|
+
await this.callApiV2({
|
|
198
201
|
method: 'delete',
|
|
199
202
|
route: 'api/files',
|
|
200
203
|
params: {
|
|
@@ -209,8 +212,7 @@ export class Files extends Base {
|
|
|
209
212
|
* @param key folder name
|
|
210
213
|
*/
|
|
211
214
|
async deleteFolder(key: string): Promise<void> {
|
|
212
|
-
|
|
213
|
-
await this.callApi({
|
|
215
|
+
await this.callApiV2({
|
|
214
216
|
method: 'delete',
|
|
215
217
|
route: 'api/folder',
|
|
216
218
|
data: { key },
|
|
@@ -221,15 +223,17 @@ export class Files extends Base {
|
|
|
221
223
|
* Get a link to download file, example: for preview
|
|
222
224
|
* @param key folder name
|
|
223
225
|
* @param isPublic does this file public or private
|
|
226
|
+
* @param urlExpirationInSeconds how long PRIVATE file link will be accessible in seconds
|
|
224
227
|
* @return file url
|
|
225
228
|
*/
|
|
226
|
-
async getDownloadUrl(key: string, isPublic: boolean): Promise<string> {
|
|
227
|
-
return await this.
|
|
229
|
+
async getDownloadUrl(key: string, isPublic: boolean, urlExpirationInSeconds = 86400): Promise<string> {
|
|
230
|
+
return await this.callApiV2({
|
|
228
231
|
method: 'get',
|
|
229
232
|
route: 'api/url',
|
|
230
233
|
params: {
|
|
231
234
|
key,
|
|
232
235
|
isPublic,
|
|
236
|
+
expires: urlExpirationInSeconds,
|
|
233
237
|
},
|
|
234
238
|
});
|
|
235
239
|
}
|
|
@@ -240,7 +244,7 @@ export class Files extends Base {
|
|
|
240
244
|
* @param isPublic does this file public or private
|
|
241
245
|
*/
|
|
242
246
|
async getObjectInfo(key: string, isPublic: boolean): Promise<HeadData> {
|
|
243
|
-
return await this.
|
|
247
|
+
return await this.callApiV2({
|
|
244
248
|
method: 'get',
|
|
245
249
|
route: 'api/file',
|
|
246
250
|
params: {
|
|
@@ -257,13 +261,14 @@ export class Files extends Base {
|
|
|
257
261
|
* @return uploading Url with different header Fields
|
|
258
262
|
*/
|
|
259
263
|
private getUploadUrl(data: UploadUrlProps, isPublic: boolean): Promise<UploadUrlResponse> {
|
|
260
|
-
return this.
|
|
264
|
+
return this.callApiV2({
|
|
261
265
|
method: 'post',
|
|
262
266
|
route: 'api/url',
|
|
263
267
|
params: {
|
|
264
268
|
isPublic,
|
|
265
269
|
prefix: '',
|
|
266
270
|
setDefaultCache: true,
|
|
271
|
+
ttl: data.ttl,
|
|
267
272
|
},
|
|
268
273
|
data: { ...data },
|
|
269
274
|
});
|
|
@@ -282,9 +287,12 @@ export class Files extends Base {
|
|
|
282
287
|
key: file.prefix + name,
|
|
283
288
|
cacheControl: 'no-cache',
|
|
284
289
|
rewriteMode: file.rewriteMode,
|
|
290
|
+
maxFileSize: file.maxFileSize,
|
|
291
|
+
ttl: file.ttl,
|
|
285
292
|
}, file.isPublic);
|
|
286
293
|
|
|
287
|
-
const
|
|
294
|
+
const FormDataLib = isNode ? require('form-data') : FormData; // eslint-disable-line no-undef
|
|
295
|
+
const formData = new FormDataLib();
|
|
288
296
|
|
|
289
297
|
Object.entries(fields).forEach(value => {
|
|
290
298
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
@@ -307,7 +315,7 @@ export class Files extends Base {
|
|
|
307
315
|
* @param cacheControl cache settings
|
|
308
316
|
*/
|
|
309
317
|
async uploadSystemFile(prefix: string, file: File, cacheControl = 'max-age=3600') {
|
|
310
|
-
const result: UploadSystemUrlResponse = await this.
|
|
318
|
+
const result: UploadSystemUrlResponse = await this.callApiV2({
|
|
311
319
|
method: 'post',
|
|
312
320
|
route: 'api/upload-system',
|
|
313
321
|
data: {
|
|
@@ -320,7 +328,8 @@ export class Files extends Base {
|
|
|
320
328
|
|
|
321
329
|
const { url, fields, downloadUrl } = result;
|
|
322
330
|
|
|
323
|
-
const
|
|
331
|
+
const FormDataLib = isNode ? require('form-data') : FormData; // eslint-disable-line no-undef
|
|
332
|
+
const formData = new FormDataLib();
|
|
324
333
|
|
|
325
334
|
Object.entries(fields).forEach(value => {
|
|
326
335
|
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
package/src/types.ts
CHANGED
|
@@ -13,14 +13,14 @@ export type FilesConfig = {
|
|
|
13
13
|
* Account ID for cross-account requests (super admin only)
|
|
14
14
|
*/
|
|
15
15
|
accountId?: string;
|
|
16
|
-
/**
|
|
17
|
-
* @deprecated Use filesApiUrl instead
|
|
18
|
-
*/
|
|
19
|
-
serviceUrl?: string;
|
|
20
16
|
/**
|
|
21
17
|
* Direct service url, can be used to avoid discovery api call
|
|
22
18
|
*/
|
|
23
19
|
filesApiUrl?: string;
|
|
20
|
+
/**
|
|
21
|
+
* @deprecated Use filesApiUrl instead
|
|
22
|
+
*/
|
|
23
|
+
serviceUrl?: string;
|
|
24
24
|
};
|
|
25
25
|
|
|
26
26
|
export type GetItemsQuery = {
|
|
@@ -37,8 +37,14 @@ export type SearchQuery = {
|
|
|
37
37
|
|
|
38
38
|
export type FileItem = {
|
|
39
39
|
key: string;
|
|
40
|
+
isPublic?: boolean;
|
|
40
41
|
size?: number;
|
|
41
|
-
|
|
42
|
+
contentType?: string;
|
|
43
|
+
parentFolder?: string;
|
|
44
|
+
createdAt?: Date | null;
|
|
45
|
+
updatedAt?: Date | null;
|
|
46
|
+
downloadUrl?: string;
|
|
47
|
+
isUploaded?: boolean;
|
|
42
48
|
};
|
|
43
49
|
|
|
44
50
|
|
|
@@ -57,6 +63,7 @@ export type UploadUrlProps = {
|
|
|
57
63
|
key: string;
|
|
58
64
|
contentType: string;
|
|
59
65
|
maxFileSize?: number;
|
|
66
|
+
ttl?: number;
|
|
60
67
|
cacheControl: string;
|
|
61
68
|
rewriteMode?: 'rewrite' | 'prevent-rewrite';
|
|
62
69
|
};
|
|
@@ -90,4 +97,6 @@ export type UploadFileProps = {
|
|
|
90
97
|
isPublic: boolean;
|
|
91
98
|
progress?: (event: ProgressEvent) => void;
|
|
92
99
|
rewriteMode?: 'rewrite' | 'prevent-rewrite';
|
|
100
|
+
ttl?: number;
|
|
101
|
+
maxFileSize?: number;
|
|
93
102
|
};
|