@or-sdk/files 0.20.1-createfilespackage.0 → 0.20.1-createfilespackage.3

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/dist/cjs/Files.js CHANGED
@@ -14,6 +14,17 @@ var __extends = (this && this.__extends) || (function () {
14
14
  d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
15
15
  };
16
16
  })();
17
+ var __assign = (this && this.__assign) || function () {
18
+ __assign = Object.assign || function(t) {
19
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
20
+ s = arguments[i];
21
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
22
+ t[p] = s[p];
23
+ }
24
+ return t;
25
+ };
26
+ return __assign.apply(this, arguments);
27
+ };
17
28
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
18
29
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
19
30
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -102,10 +113,17 @@ var Files = (function (_super) {
102
113
  totalItems = [];
103
114
  _b.label = 1;
104
115
  case 1:
105
- queryParams = { isPublic: isPublic, prefix: prefix };
116
+ queryParams = {
117
+ isPublic: isPublic,
118
+ prefix: prefix,
119
+ };
106
120
  if (nextToken)
107
121
  queryParams.nextToken = nextToken;
108
- return [4, this.callApi({ method: 'GET', route: 'api/files', params: queryParams })];
122
+ return [4, this.callApi({
123
+ method: 'GET',
124
+ route: 'api/files',
125
+ params: queryParams,
126
+ })];
109
127
  case 2:
110
128
  _a = _b.sent(), items = _a.items, nextTokenResponse = _a.nextTokenResponse;
111
129
  totalItems = __spreadArray(__spreadArray([], totalItems, true), items, true);
@@ -121,20 +139,171 @@ var Files = (function (_super) {
121
139
  };
122
140
  Files.prototype.createFolder = function (folderName) {
123
141
  return __awaiter(this, void 0, void 0, function () {
124
- var e_1;
125
142
  return __generator(this, function (_a) {
126
143
  switch (_a.label) {
127
- case 0:
128
- _a.trys.push([0, 2, , 3]);
129
- return [4, this.callApi({ method: 'post', route: 'api/files', data: { key: folderName + '/' } })];
144
+ case 0: return [4, this.callApi({
145
+ method: 'post',
146
+ route: 'api/files',
147
+ data: { key: folderName + '/' },
148
+ })];
130
149
  case 1:
131
150
  _a.sent();
132
- return [3, 3];
133
- case 2:
134
- e_1 = _a.sent();
135
- console.log(e_1);
136
- return [3, 3];
137
- case 3: return [2];
151
+ return [2];
152
+ }
153
+ });
154
+ });
155
+ };
156
+ Files.prototype.renameFile = function (key, newKey, isPublic) {
157
+ return __awaiter(this, void 0, void 0, function () {
158
+ return __generator(this, function (_a) {
159
+ switch (_a.label) {
160
+ case 0: return [4, this.callApi({
161
+ method: 'put',
162
+ route: 'api/files',
163
+ params: {
164
+ key: key,
165
+ isPublic: isPublic,
166
+ },
167
+ data: { newKey: newKey },
168
+ })];
169
+ case 1:
170
+ _a.sent();
171
+ return [2];
172
+ }
173
+ });
174
+ });
175
+ };
176
+ Files.prototype.changePrivacy = function (key, newPrivacy, isPublic) {
177
+ return __awaiter(this, void 0, void 0, function () {
178
+ return __generator(this, function (_a) {
179
+ switch (_a.label) {
180
+ case 0: return [4, this.callApi({
181
+ method: 'patch',
182
+ route: 'api/files',
183
+ params: {
184
+ key: key,
185
+ isPublic: isPublic,
186
+ },
187
+ data: { newPrivacy: newPrivacy },
188
+ })];
189
+ case 1:
190
+ _a.sent();
191
+ return [2];
192
+ }
193
+ });
194
+ });
195
+ };
196
+ Files.prototype.deleteFile = function (key, isPublic) {
197
+ return __awaiter(this, void 0, void 0, function () {
198
+ return __generator(this, function (_a) {
199
+ switch (_a.label) {
200
+ case 0: return [4, this.callApi({
201
+ method: 'delete',
202
+ route: 'api/files',
203
+ params: {
204
+ key: key,
205
+ isPublic: isPublic,
206
+ },
207
+ })];
208
+ case 1:
209
+ _a.sent();
210
+ return [2];
211
+ }
212
+ });
213
+ });
214
+ };
215
+ Files.prototype.deleteFolder = function (key) {
216
+ return __awaiter(this, void 0, void 0, function () {
217
+ return __generator(this, function (_a) {
218
+ switch (_a.label) {
219
+ case 0: return [4, this.callApi({
220
+ method: 'delete',
221
+ route: 'api/folder',
222
+ data: { key: key },
223
+ })];
224
+ case 1:
225
+ _a.sent();
226
+ return [2];
227
+ }
228
+ });
229
+ });
230
+ };
231
+ Files.prototype.getObjectSize = function (key, isPublic) {
232
+ return __awaiter(this, void 0, void 0, function () {
233
+ return __generator(this, function (_a) {
234
+ switch (_a.label) {
235
+ case 0: return [4, this.callApi({
236
+ method: 'get',
237
+ route: 'api/folder',
238
+ params: {
239
+ key: key,
240
+ isPublic: isPublic,
241
+ },
242
+ })];
243
+ case 1:
244
+ _a.sent();
245
+ return [2];
246
+ }
247
+ });
248
+ });
249
+ };
250
+ Files.prototype.getDownloadUrl = function (key, isPublic) {
251
+ return __awaiter(this, void 0, void 0, function () {
252
+ return __generator(this, function (_a) {
253
+ switch (_a.label) {
254
+ case 0: return [4, this.callApi({
255
+ method: 'get',
256
+ route: 'api/url',
257
+ params: {
258
+ key: key,
259
+ isPublic: isPublic,
260
+ },
261
+ })];
262
+ case 1: return [2, _a.sent()];
263
+ }
264
+ });
265
+ });
266
+ };
267
+ Files.prototype.getUploadUrl = function (data, isPublic) {
268
+ return this.callApi({
269
+ method: 'post',
270
+ route: 'api/url',
271
+ params: {
272
+ isPublic: isPublic,
273
+ prefix: '',
274
+ },
275
+ data: __assign({}, data),
276
+ });
277
+ };
278
+ Files.prototype.uploadFile = function (file) {
279
+ return __awaiter(this, void 0, void 0, function () {
280
+ var _a, type, name, contentType, _b, url, fields, formData, route;
281
+ return __generator(this, function (_c) {
282
+ switch (_c.label) {
283
+ case 0:
284
+ _a = file.fileModel, type = _a.type, name = _a.name;
285
+ contentType = type || 'binary/octet-stream';
286
+ return [4, this.getUploadUrl({
287
+ contentType: contentType,
288
+ key: file.prefix + name,
289
+ cacheControl: 'no-cache',
290
+ }, file.isPublic)];
291
+ case 1:
292
+ _b = _c.sent(), url = _b.url, fields = _b.fields;
293
+ formData = new FormData();
294
+ Object.entries(fields).forEach(function (value) {
295
+ formData.append(value[0], value[1]);
296
+ });
297
+ formData.append('cache-control', 'no-cache');
298
+ formData.append('content-type', contentType);
299
+ formData.append('File', file.fileModel, name);
300
+ route = url.split('api.onereach.ai/')[1];
301
+ return [4, this.callApi({
302
+ method: 'post',
303
+ route: route,
304
+ data: formData,
305
+ })];
306
+ case 2: return [2, _c.sent()];
138
307
  }
139
308
  });
140
309
  });
@@ -1 +1 @@
1
- {"version":3,"file":"Files.js","sourceRoot":"","sources":["../../src/Files.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAAoC;AAEpC,yCAA0C;AAS1C;IAA2B,yBAAI;IAO7B,eAAY,MAAmB;QACrB,IAAA,KAAK,GAA0C,MAAM,MAAhD,EAAE,YAAY,GAA4B,MAAM,aAAlC,EAAE,SAAS,GAAiB,MAAM,UAAvB,EAAE,UAAU,GAAK,MAAM,WAAX,CAAY;eAE9D,kBAAM;YACJ,KAAK,OAAA;YACL,YAAY,cAAA;YACZ,SAAS,WAAA;YACT,UAAU,YAAA;YACV,UAAU,EAAE,uBAAW;SACxB,CAAC;IACJ,CAAC;IAMK,6BAAa,GAAnB,UAAqB,GAAW;;;;;4BACb,WAAM,IAAI,CAAC,OAAO,CAAC;4BAClC,MAAM,EAAE,KAAK;4BACb,KAAK,EAAE,YAAY;4BACnB,MAAM,EAAE,EAAE,GAAG,KAAA,EAAE;yBAChB,CAAC,EAAA;;wBAJM,IAAI,GAAK,CAAA,SAIf,CAAA,KAJU;wBAMZ,WAAO,IAAI,EAAA;;;;KACZ;IACK,4BAAY,GAAlB,UAAoB,QAAiB,EAAE,MAAc;;;;;;wBAC/C,SAAS,GAAkB,IAAI,CAAC;wBAChC,UAAU,GAAe,EAAE,CAAC;;;wBAGxB,WAAW,GAAY,EAAE,QAAQ,UAAA,EAAE,MAAM,QAAA,EAAE,CAAC;wBAClD,IAAI,SAAS;4BAAE,WAAW,CAAC,SAAS,GAAG,SAAS,CAAC;wBAEQ,WAAM,IAAI,CAAC,OAAO,CAAC,EAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAC,CAAC,EAAA;;wBAA/H,KAAmD,SAA4E,EAA9H,KAAK,WAAA,EAAE,iBAAiB,uBAAA;wBAC/B,UAAU,mCAAO,UAAU,SAAK,KAAK,OAAC,CAAC;wBAEvC,SAAS,GAAG,iBAAiB,CAAC;;;4BACvB,SAAS;;4BAElB,WAAO,UAAU,EAAC;;;;KACnB;IAEK,4BAAY,GAAlB,UAAoB,UAAkB;;;;;;;wBAElC,WAAM,IAAI,CAAC,OAAO,CAAC,EAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,GAAG,EAAG,UAAU,GAAG,GAAG,EAAE,EAAE,CAAC,EAAA;;wBAA3F,SAA2F,CAAA;;;;wBAE3F,OAAO,CAAC,GAAG,CAAC,GAAC,CAAC,CAAA;;;;;;KAEjB;IACH,YAAC;AAAD,CAAC,AAxDD,CAA2B,WAAI,GAwD9B;AAxDY,sBAAK"}
1
+ {"version":3,"file":"Files.js","sourceRoot":"","sources":["../../src/Files.ts"],"names":[],"mappings":"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"}
package/dist/esm/Files.js CHANGED
@@ -35,10 +35,17 @@ export class Files extends Base {
35
35
  let nextToken = null;
36
36
  let totalItems = [];
37
37
  do {
38
- const queryParams = { isPublic, prefix };
38
+ const queryParams = {
39
+ isPublic,
40
+ prefix,
41
+ };
39
42
  if (nextToken)
40
43
  queryParams.nextToken = nextToken;
41
- const { items, nextTokenResponse } = yield this.callApi({ method: 'GET', route: 'api/files', params: queryParams });
44
+ const { items, nextTokenResponse } = yield this.callApi({
45
+ method: 'GET',
46
+ route: 'api/files',
47
+ params: queryParams,
48
+ });
42
49
  totalItems = [...totalItems, ...items];
43
50
  nextToken = nextTokenResponse;
44
51
  } while (nextToken);
@@ -47,12 +54,117 @@ export class Files extends Base {
47
54
  }
48
55
  createFolder(folderName) {
49
56
  return __awaiter(this, void 0, void 0, function* () {
50
- try {
51
- yield this.callApi({ method: 'post', route: 'api/files', data: { key: folderName + '/' } });
52
- }
53
- catch (e) {
54
- console.log(e);
55
- }
57
+ yield this.callApi({
58
+ method: 'post',
59
+ route: 'api/files',
60
+ data: { key: folderName + '/' },
61
+ });
62
+ });
63
+ }
64
+ renameFile(key, newKey, isPublic) {
65
+ return __awaiter(this, void 0, void 0, function* () {
66
+ yield this.callApi({
67
+ method: 'put',
68
+ route: 'api/files',
69
+ params: {
70
+ key,
71
+ isPublic,
72
+ },
73
+ data: { newKey },
74
+ });
75
+ });
76
+ }
77
+ changePrivacy(key, newPrivacy, isPublic) {
78
+ return __awaiter(this, void 0, void 0, function* () {
79
+ yield this.callApi({
80
+ method: 'patch',
81
+ route: 'api/files',
82
+ params: {
83
+ key,
84
+ isPublic,
85
+ },
86
+ data: { newPrivacy },
87
+ });
88
+ });
89
+ }
90
+ deleteFile(key, isPublic) {
91
+ return __awaiter(this, void 0, void 0, function* () {
92
+ yield this.callApi({
93
+ method: 'delete',
94
+ route: 'api/files',
95
+ params: {
96
+ key,
97
+ isPublic,
98
+ },
99
+ });
100
+ });
101
+ }
102
+ deleteFolder(key) {
103
+ return __awaiter(this, void 0, void 0, function* () {
104
+ yield this.callApi({
105
+ method: 'delete',
106
+ route: 'api/folder',
107
+ data: { key },
108
+ });
109
+ });
110
+ }
111
+ getObjectSize(key, isPublic) {
112
+ return __awaiter(this, void 0, void 0, function* () {
113
+ yield this.callApi({
114
+ method: 'get',
115
+ route: 'api/folder',
116
+ params: {
117
+ key,
118
+ isPublic,
119
+ },
120
+ });
121
+ });
122
+ }
123
+ getDownloadUrl(key, isPublic) {
124
+ return __awaiter(this, void 0, void 0, function* () {
125
+ return yield this.callApi({
126
+ method: 'get',
127
+ route: 'api/url',
128
+ params: {
129
+ key,
130
+ isPublic,
131
+ },
132
+ });
133
+ });
134
+ }
135
+ getUploadUrl(data, isPublic) {
136
+ return this.callApi({
137
+ method: 'post',
138
+ route: 'api/url',
139
+ params: {
140
+ isPublic,
141
+ prefix: '',
142
+ },
143
+ data: Object.assign({}, data),
144
+ });
145
+ }
146
+ uploadFile(file) {
147
+ return __awaiter(this, void 0, void 0, function* () {
148
+ const { type, name } = file.fileModel;
149
+ const contentType = type || 'binary/octet-stream';
150
+ const { url, fields } = yield this.getUploadUrl({
151
+ contentType,
152
+ key: file.prefix + name,
153
+ cacheControl: 'no-cache',
154
+ }, file.isPublic);
155
+ const formData = new FormData();
156
+ Object.entries(fields).forEach(value => {
157
+ formData.append(value[0], value[1]);
158
+ });
159
+ formData.append('cache-control', 'no-cache');
160
+ formData.append('content-type', contentType);
161
+ formData.append('File', file.fileModel, name);
162
+ const route = url.split('api.onereach.ai/')[1];
163
+ return yield this.callApi({
164
+ method: 'post',
165
+ route: route,
166
+ data: formData,
167
+ });
56
168
  });
57
169
  }
58
170
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Files.js","sourceRoot":"","sources":["../../src/Files.ts"],"names":[],"mappings":";;;;;;;;;AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,cAAc,CAAC;AAEpC,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAS1C,MAAM,OAAO,KAAM,SAAQ,IAAI;IAO7B,YAAY,MAAmB;QAC7B,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;QAE9D,KAAK,CAAC;YACJ,KAAK;YACL,YAAY;YACZ,SAAS;YACT,UAAU;YACV,UAAU,EAAE,WAAW;SACxB,CAAC,CAAC;IACL,CAAC;IAMK,aAAa,CAAE,GAAW;;YAC9B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC;gBAClC,MAAM,EAAE,KAAK;gBACb,KAAK,EAAE,YAAY;gBACnB,MAAM,EAAE,EAAE,GAAG,EAAE;aAChB,CAAC,CAAA;YAEF,OAAO,IAAI,CAAA;QACb,CAAC;KAAA;IACK,YAAY,CAAE,QAAiB,EAAE,MAAc;;YACnD,IAAI,SAAS,GAAkB,IAAI,CAAC;YACpC,IAAI,UAAU,GAAe,EAAE,CAAC;YAEhC,GAAG;gBACD,MAAM,WAAW,GAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;gBAClD,IAAI,SAAS;oBAAE,WAAW,CAAC,SAAS,GAAG,SAAS,CAAC;gBAEjD,MAAM,EAAC,KAAK,EAAE,iBAAiB,EAAC,GAAyB,MAAM,IAAI,CAAC,OAAO,CAAC,EAAC,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAC,CAAC,CAAC;gBACtI,UAAU,GAAG,CAAC,GAAG,UAAU,EAAE,GAAG,KAAK,CAAC,CAAC;gBAEvC,SAAS,GAAG,iBAAiB,CAAC;aAC/B,QAAQ,SAAS,EAAE;YAEpB,OAAO,UAAU,CAAC;QACpB,CAAC;KAAA;IAEK,YAAY,CAAE,UAAkB;;YACpC,IAAI;gBACF,MAAM,IAAI,CAAC,OAAO,CAAC,EAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,IAAI,EAAE,EAAE,GAAG,EAAG,UAAU,GAAG,GAAG,EAAE,EAAE,CAAC,CAAA;aAC5F;YAAC,OAAO,CAAC,EAAE;gBACV,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;aACf;QACH,CAAC;KAAA;CACF"}
1
+ {"version":3,"file":"Files.js","sourceRoot":"","sources":["../../src/Files.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,16 @@
1
1
  import { Base } from '@or-sdk/base';
2
- import { FilesConfig, FileItem } from './types';
2
+ import { FilesConfig, FileItem, UploadUrlProps, UploadFileProps, UploadUrlResponse } from './types';
3
3
  export declare class Files extends Base {
4
4
  constructor(params: FilesConfig);
5
5
  getFolderSize(key: string): Promise<number>;
6
6
  getItemsList(isPublic: boolean, prefix: string): Promise<FileItem[]>;
7
7
  createFolder(folderName: string): Promise<void>;
8
+ renameFile(key: string, newKey: string, isPublic: boolean): Promise<void>;
9
+ changePrivacy(key: string, newPrivacy: string, isPublic: boolean): Promise<void>;
10
+ deleteFile(key: string, isPublic: boolean): Promise<void>;
11
+ deleteFolder(key: string): Promise<void>;
12
+ getObjectSize(key: string, isPublic: boolean): Promise<void>;
13
+ getDownloadUrl(key: string, isPublic: boolean): Promise<string>;
14
+ getUploadUrl(data: UploadUrlProps, isPublic: boolean): Promise<UploadUrlResponse>;
15
+ uploadFile(file: UploadFileProps): Promise<unknown>;
8
16
  }
@@ -20,9 +20,35 @@ export declare type FilesPageState = {
20
20
  discoveryUrl: string;
21
21
  serviceUrl: string;
22
22
  accountId: string;
23
+ renameFrom: string;
24
+ renameTo: string;
23
25
  items: FileItem[];
24
26
  };
25
27
  export declare type getItemsListResponse = {
26
28
  items: FileItem[];
27
29
  nextTokenResponse: string | null;
28
30
  };
31
+ export declare type UploadUrlProps = {
32
+ key: string;
33
+ contentType: string;
34
+ maxFileSize?: number;
35
+ cacheControl: string;
36
+ };
37
+ export declare type UploadUrlResponse = {
38
+ url: string;
39
+ fields: {
40
+ key: string;
41
+ bucket: string;
42
+ Policy: string;
43
+ 'X-Amz-Date': string;
44
+ 'X-Amz-Signature': string;
45
+ 'X-Amz-Algorithm': string;
46
+ 'X-Amz-Credential': string;
47
+ 'X-Amz-Security-Token': string;
48
+ }[];
49
+ };
50
+ export declare type UploadFileProps = {
51
+ fileModel: File;
52
+ prefix: string;
53
+ isPublic: boolean;
54
+ };
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.20.1-createfilespackage.0",
2
+ "version": "0.20.1-createfilespackage.3",
3
3
  "name": "@or-sdk/files",
4
4
  "main": "dist/cjs/index.js",
5
5
  "module": "dist/esm/index.js",
@@ -23,7 +23,7 @@
23
23
  "access": "public"
24
24
  },
25
25
  "dependencies": {
26
- "@or-sdk/base": "^0.20.1-createfilespackage.0"
26
+ "@or-sdk/base": "^0.20.1-createfilespackage.3"
27
27
  },
28
- "gitHead": "64b4356c7b747020f554242be7c3885b2f651ad3"
28
+ "gitHead": "2ef1c4ba727a370fe5aecea18be8fbaf0e2b1de5"
29
29
  }
package/src/Files.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { Base } from '@or-sdk/base';
2
- import { FilesConfig, LsQuery, FileItem, getItemsListResponse } from './types';
2
+ import { FilesConfig, LsQuery, FileItem, getItemsListResponse, UploadUrlProps, UploadFileProps, UploadUrlResponse } from './types';
3
3
  import { SERVICE_KEY } from './constants';
4
4
 
5
5
  /**
@@ -32,24 +32,31 @@ export class Files extends Base {
32
32
  * Get folder size
33
33
  * @param key the name of folder
34
34
  */
35
- async getFolderSize (key: string): Promise<number> {
35
+ async getFolderSize(key: string): Promise<number> {
36
36
  const { size } = await this.callApi({
37
37
  method: 'GET',
38
38
  route: 'api/folder',
39
39
  params: { key },
40
- })
40
+ });
41
41
 
42
- return size
42
+ return size;
43
43
  }
44
- async getItemsList (isPublic: boolean, prefix: string): Promise<FileItem[]> {
44
+ async getItemsList(isPublic: boolean, prefix: string): Promise<FileItem[]> {
45
45
  let nextToken: null | string = null;
46
46
  let totalItems: FileItem[] = [];
47
47
 
48
48
  do {
49
- const queryParams :LsQuery = { isPublic, prefix };
49
+ const queryParams: LsQuery = {
50
+ isPublic,
51
+ prefix,
52
+ };
50
53
  if (nextToken) queryParams.nextToken = nextToken;
51
54
 
52
- const {items, nextTokenResponse}: getItemsListResponse = await this.callApi({method: 'GET', route: 'api/files', params: queryParams});
55
+ const { items, nextTokenResponse }: getItemsListResponse = await this.callApi({
56
+ method: 'GET',
57
+ route: 'api/files',
58
+ params: queryParams,
59
+ });
53
60
  totalItems = [...totalItems, ...items];
54
61
 
55
62
  nextToken = nextTokenResponse;
@@ -58,11 +65,119 @@ export class Files extends Base {
58
65
  return totalItems;
59
66
  }
60
67
 
61
- async createFolder (folderName: string) {
62
- try {
63
- await this.callApi({method: 'post', route: 'api/files', data: { key : folderName + '/' } })
64
- } catch (e) {
65
- console.log(e)
66
- }
68
+ async createFolder(folderName: string) {
69
+ await this.callApi({
70
+ method: 'post',
71
+ route: 'api/files',
72
+ data: { key: folderName + '/' },
73
+ });
74
+ }
75
+
76
+ async renameFile(key: string, newKey: string, isPublic: boolean) {
77
+ await this.callApi({
78
+ method: 'put',
79
+ route: 'api/files',
80
+ params: {
81
+ key,
82
+ isPublic,
83
+ },
84
+ data: { newKey },
85
+ });
86
+ }
87
+
88
+ async changePrivacy(key: string, newPrivacy: string, isPublic: boolean) {
89
+ await this.callApi({
90
+ method: 'patch',
91
+ route: 'api/files',
92
+ params: {
93
+ key,
94
+ isPublic,
95
+ },
96
+ data: { newPrivacy },
97
+ });
98
+ }
99
+
100
+ async deleteFile(key: string, isPublic: boolean) {
101
+ await this.callApi({
102
+ method: 'delete',
103
+ route: 'api/files',
104
+ params: {
105
+ key,
106
+ isPublic,
107
+ },
108
+ });
109
+ }
110
+
111
+ async deleteFolder(key: string) {
112
+ await this.callApi({
113
+ method: 'delete',
114
+ route: 'api/folder',
115
+ data: { key },
116
+ });
117
+ }
118
+
119
+ async getObjectSize(key: string, isPublic: boolean) {
120
+ await this.callApi({
121
+ method: 'get',
122
+ route: 'api/folder',
123
+ params: {
124
+ key,
125
+ isPublic,
126
+ },
127
+ });
128
+ }
129
+
130
+ async getDownloadUrl(key: string, isPublic: boolean): Promise<string> {
131
+ return await this.callApi({
132
+ method: 'get',
133
+ route: 'api/url',
134
+ params: {
135
+ key,
136
+ isPublic,
137
+ },
138
+ });
139
+ }
140
+
141
+ getUploadUrl(data: UploadUrlProps, isPublic: boolean): Promise<UploadUrlResponse> {
142
+ return this.callApi({
143
+ method: 'post',
144
+ route: 'api/url',
145
+ params: {
146
+ isPublic,
147
+ prefix: '',
148
+ },
149
+ data: { ...data },
150
+ });
151
+ }
152
+
153
+ async uploadFile(file: UploadFileProps) {
154
+ const { type, name } = file.fileModel;
155
+ const contentType = type || 'binary/octet-stream';
156
+
157
+ const { url, fields } = await this.getUploadUrl({
158
+ contentType,
159
+ key: file.prefix + name,
160
+ cacheControl: 'no-cache',
161
+ }, file.isPublic);
162
+
163
+ const formData = new FormData();
164
+
165
+ Object.entries(fields).forEach(value => {
166
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
167
+ // @ts-ignore
168
+ formData.append(value[0], value[1]);
169
+ });
170
+
171
+ formData.append('cache-control', 'no-cache');
172
+ formData.append('content-type', contentType);
173
+ formData.append('File', file.fileModel, name);
174
+
175
+ const route = url.split('api.onereach.ai/')[1];
176
+
177
+ return await this.callApi({
178
+ method: 'post',
179
+ route: route,
180
+ data: formData,
181
+ });
67
182
  }
68
183
  }
package/src/types.ts CHANGED
@@ -20,25 +20,55 @@ export type FilesConfig = {
20
20
  };
21
21
 
22
22
  export type LsQuery = {
23
- isPublic: boolean,
24
- prefix: string,
25
- nextToken?: string
26
- }
23
+ isPublic: boolean;
24
+ prefix: string;
25
+ nextToken?: string;
26
+ };
27
27
 
28
28
  export type FileItem = {
29
- key: string,
30
- size?: number
31
- }
29
+ key: string;
30
+ size?: number;
31
+ };
32
32
 
33
33
  export type FilesPageState = {
34
- filesInstance: any,
35
- userToken: string,
36
- discoveryUrl: string,
37
- serviceUrl: string,
38
- accountId: string,
39
- items: FileItem[]
40
- }
34
+ filesInstance: any;
35
+ userToken: string;
36
+ discoveryUrl: string;
37
+ serviceUrl: string;
38
+ accountId: string;
39
+ renameFrom: string;
40
+ renameTo: string;
41
+ items: FileItem[];
42
+ };
41
43
  export type getItemsListResponse = {
42
- items: FileItem[],
43
- nextTokenResponse: string | null
44
- }
44
+ items: FileItem[];
45
+ nextTokenResponse: string | null;
46
+ };
47
+
48
+ export type UploadUrlProps = {
49
+ key: string;
50
+ contentType: string;
51
+ maxFileSize?: number;
52
+ cacheControl: string;
53
+ };
54
+
55
+ export type UploadUrlResponse = {
56
+ url: string;
57
+ fields: {
58
+ key: string;
59
+ bucket: string;
60
+ Policy: string;
61
+ 'X-Amz-Date': string;
62
+ 'X-Amz-Signature': string;
63
+ 'X-Amz-Algorithm': string;
64
+ 'X-Amz-Credential': string;
65
+ 'X-Amz-Security-Token': string;
66
+ }[];
67
+ };
68
+
69
+ export type UploadFileProps = {
70
+ fileModel: File;
71
+ prefix: string;
72
+ isPublic: boolean;
73
+ };
74
+