react-native-cloud-storage 1.2.2 → 1.2.4
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/README.md +66 -10
- package/ios/CloudStorage.swift +30 -28
- package/lib/commonjs/RNCloudStorage.js.map +1 -1
- package/lib/commonjs/createRNCloudStorage.js.map +1 -1
- package/lib/commonjs/google-drive/client.js +169 -0
- package/lib/commonjs/google-drive/client.js.map +1 -0
- package/lib/commonjs/google-drive/index.js +53 -50
- package/lib/commonjs/google-drive/index.js.map +1 -1
- package/lib/commonjs/google-drive/types.js +15 -0
- package/lib/commonjs/google-drive/types.js.map +1 -1
- package/lib/module/RNCloudStorage.js +4 -4
- package/lib/module/RNCloudStorage.js.map +1 -1
- package/lib/module/createRNCloudStorage.js +2 -2
- package/lib/module/createRNCloudStorage.js.map +1 -1
- package/lib/module/google-drive/client.js +161 -0
- package/lib/module/google-drive/client.js.map +1 -0
- package/lib/module/google-drive/index.js +46 -44
- package/lib/module/google-drive/index.js.map +1 -1
- package/lib/module/google-drive/types.js +9 -1
- package/lib/module/google-drive/types.js.map +1 -1
- package/lib/typescript/RNCloudStorage.d.ts +2 -2
- package/lib/typescript/RNCloudStorage.d.ts.map +1 -1
- package/lib/typescript/google-drive/client.d.ts +33 -0
- package/lib/typescript/google-drive/client.d.ts.map +1 -0
- package/lib/typescript/google-drive/index.d.ts +6 -4
- package/lib/typescript/google-drive/index.d.ts.map +1 -1
- package/lib/typescript/google-drive/types.d.ts +10 -3
- package/lib/typescript/google-drive/types.d.ts.map +1 -1
- package/package.json +1 -4
- package/src/RNCloudStorage.ts +5 -5
- package/src/createRNCloudStorage.ts +2 -2
- package/src/google-drive/client.ts +177 -0
- package/src/google-drive/index.ts +71 -69
- package/src/google-drive/types.ts +12 -4
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNativeGoogleDriveApiWrapperJs","require","_native","_CloudStorageError","_interopRequireDefault","_reactNative","obj","__esModule","default","GoogleDriveApiClient","drive","GDrive","throwOnFilesWithSameName","constructor","filesWithSameNameSubscribers","fetchTimeout","Proxy","get","target","prop","allowedFunctions","includes","toString","accessToken","CloudStorageError","CloudStorageErrorCode","GOOGLE_DRIVE_ACCESS_TOKEN_MISSING","DeviceEventEmitter","emit","available","length","subscribeToFilesWithSameName","subscriber","push","remove","filter","s","isCloudAvailable","_GoogleDriveApiClient","getRootDirectory","scope","resolvePathToDirectories","path","startsWith","slice","endsWith","directories","split","actualFilename","pop","filename","findParentDirectoryId","files","directoryTree","possibleTopDirectories","f","mimeType","MimeTypes","FOLDER","name","topDirectoryId","id","possibleTopDirectory","find","parents","DIRECTORY_NOT_FOUND","currentDirectoryId","i","currentDirectory","nextDirectory","getRootDirectoryId","listInternalFiles","file","list","spaces","fields","checkIfMultipleFilesWithSameName","parentDirectoryId","possibleFiles","f2","map","join","MULTIPLE_FILES_SAME_NAME","forEach","fileIds","getFileId","throwIfDirectory","arguments","undefined","rootDirectoryId","FILE_NOT_FOUND","PATH_IS_DIRECTORY","e","_e$json","_e$json$error","HttpError","json","error","status","AUTHENTICATION_FAILED","UNKNOWN","fileExists","code","appendToFile","data","fileId","prevContent","getText","uploader","newMultipartUploader","setData","TEXT","setIdOfFileToUpdate","setRequestBody","execute","createFile","overwrite","FILE_ALREADY_EXISTS","listFiles","allFiles","Array","from","Set","createDirectory","newMetadataOnlyUploader","readFile","content","downloadFile","_path","_scope","deleteFile","delete","statFile","size","birthtimeMs","Date","createdTime","getTime","mtimeMs","modifiedTime","isDirectory","isFile","exports"],"sourceRoot":"../../../src","sources":["google-drive/index.ts"],"mappings":"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"}
|
|
1
|
+
{"version":3,"names":["_native","require","_CloudStorageError","_interopRequireDefault","_types","_reactNative","_client","_interopRequireWildcard","_getRequireWildcardCache","nodeInterop","WeakMap","cacheBabelInterop","cacheNodeInterop","obj","__esModule","default","cache","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","GoogleDrive","drive","GoogleDriveApiClient","throwOnFilesWithSameName","constructor","filesWithSameNameSubscribers","Proxy","target","prop","allowedFunctions","includes","toString","accessToken","length","CloudStorageError","CloudStorageErrorCode","GOOGLE_DRIVE_ACCESS_TOKEN_MISSING","DeviceEventEmitter","emit","available","subscribeToFilesWithSameName","subscriber","push","remove","filter","s","isCloudAvailable","getRootDirectory","scope","resolvePathToDirectories","path","startsWith","slice","endsWith","directories","split","actualFilename","pop","filename","findParentDirectoryId","files","directoryTree","possibleTopDirectories","f","mimeType","MimeTypes","FOLDER","name","topDirectoryId","id","possibleTopDirectory","find","parents","DIRECTORY_NOT_FOUND","currentDirectoryId","i","currentDirectory","nextDirectory","getRootDirectoryId","listFiles","file","checkIfMultipleFilesWithSameName","parentDirectoryId","possibleFiles","f2","map","join","MULTIPLE_FILES_SAME_NAME","forEach","fileIds","getFileId","throwIfDirectory","arguments","undefined","rootDirectoryId","FILE_NOT_FOUND","PATH_IS_DIRECTORY","e","_e$json","_e$json$error","GoogleDriveHttpError","json","error","status","AUTHENTICATION_FAILED","UNKNOWN","fileExists","code","appendToFile","data","fileId","prevContent","getFileText","updateFile","body","TEXT","createFile","overwrite","FILE_ALREADY_EXISTS","allFiles","Array","from","Set","createDirectory","readFile","content","downloadFile","_path","_scope","deleteFile","statFile","getFile","size","birthtimeMs","Date","createdTime","getTime","mtimeMs","modifiedTime","isDirectory","isFile","exports"],"sourceRoot":"../../../src","sources":["google-drive/index.ts"],"mappings":"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"}
|
|
@@ -1,2 +1,17 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.MimeTypes = void 0;
|
|
7
|
+
let MimeTypes = /*#__PURE__*/function (MimeTypes) {
|
|
8
|
+
MimeTypes["BINARY"] = "application/octet-stream";
|
|
9
|
+
MimeTypes["CSV"] = "text/csv";
|
|
10
|
+
MimeTypes["FOLDER"] = "application/vnd.google-apps.folder";
|
|
11
|
+
MimeTypes["JSON"] = "application/json";
|
|
12
|
+
MimeTypes["PDF"] = "application/pdf";
|
|
13
|
+
MimeTypes["TEXT"] = "text/plain";
|
|
14
|
+
return MimeTypes;
|
|
15
|
+
}({});
|
|
16
|
+
exports.MimeTypes = MimeTypes;
|
|
2
17
|
//# sourceMappingURL=types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":[],"sourceRoot":"../../../src","sources":["google-drive/types.ts"],"mappings":""}
|
|
1
|
+
{"version":3,"names":["MimeTypes","exports"],"sourceRoot":"../../../src","sources":["google-drive/types.ts"],"mappings":";;;;;;IAEYA,SAAS,0BAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAAA,OAATA,SAAS;AAAA;AAAAC,OAAA,CAAAD,SAAA,GAAAA,SAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Platform } from 'react-native';
|
|
2
2
|
import createRNCloudStorage from './createRNCloudStorage';
|
|
3
|
-
import
|
|
3
|
+
import GoogleDrive from './google-drive';
|
|
4
4
|
import { CloudStorageScope } from './types/main';
|
|
5
5
|
import { verifyLeadingSlash } from './utils/helpers';
|
|
6
6
|
const nativeInstance = createRNCloudStorage();
|
|
@@ -8,9 +8,9 @@ let defaultScope = CloudStorageScope.AppData;
|
|
|
8
8
|
const RNCloudStorage = {
|
|
9
9
|
getDefaultScope: () => defaultScope,
|
|
10
10
|
setDefaultScope: scope => defaultScope = scope,
|
|
11
|
-
getGoogleDriveAccessToken: () =>
|
|
12
|
-
setGoogleDriveAccessToken: accessToken =>
|
|
13
|
-
setThrowOnFilesWithSameName: enable =>
|
|
11
|
+
getGoogleDriveAccessToken: () => GoogleDrive.accessToken,
|
|
12
|
+
setGoogleDriveAccessToken: accessToken => GoogleDrive.accessToken = accessToken,
|
|
13
|
+
setThrowOnFilesWithSameName: enable => GoogleDrive.throwOnFilesWithSameName = enable,
|
|
14
14
|
/* eslint-disable @typescript-eslint/no-unused-vars */
|
|
15
15
|
subscribeToFilesWithSameName: Platform.OS === 'ios' ?
|
|
16
16
|
// @ts-expect-error - subscriber is undefined; just a mock
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Platform","createRNCloudStorage","
|
|
1
|
+
{"version":3,"names":["Platform","createRNCloudStorage","GoogleDrive","CloudStorageScope","verifyLeadingSlash","nativeInstance","defaultScope","AppData","RNCloudStorage","getDefaultScope","setDefaultScope","scope","getGoogleDriveAccessToken","accessToken","setGoogleDriveAccessToken","setThrowOnFilesWithSameName","enable","throwOnFilesWithSameName","subscribeToFilesWithSameName","OS","subscriber","remove","bind","isCloudAvailable","appendFile","path","data","appendToFile","exists","fileExists","writeFile","createFile","mkdir","createDirectory","readdir","listFiles","readFile","downloadFile","unlink","deleteFile","stat","native","statFile","birthtime","Date","birthtimeMs","mtime","mtimeMs","isDirectory","isFile"],"sourceRoot":"../../src","sources":["RNCloudStorage.ts"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { NativeModules, Platform } from 'react-native';
|
|
2
|
-
import
|
|
2
|
+
import GoogleDrive from './google-drive';
|
|
3
3
|
import { CloudStorageErrorCode } from './types/native';
|
|
4
4
|
import CloudStorageError from './utils/CloudStorageError';
|
|
5
5
|
const LINKING_ERROR = `The package 'react-native-cloud-storage' doesn't seem to be linked. Make sure: \n\n` + Platform.select({
|
|
@@ -36,6 +36,6 @@ export default function createRNCloudStorage() {
|
|
|
36
36
|
}
|
|
37
37
|
});
|
|
38
38
|
}
|
|
39
|
-
return new
|
|
39
|
+
return new GoogleDrive();
|
|
40
40
|
}
|
|
41
41
|
//# sourceMappingURL=createRNCloudStorage.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NativeModules","Platform","
|
|
1
|
+
{"version":3,"names":["NativeModules","Platform","GoogleDrive","CloudStorageErrorCode","CloudStorageError","LINKING_ERROR","select","ios","default","nativeIosInstance","CloudStorage","Proxy","get","target","prop","originalFunction","arguments","error","code","Object","values","includes","message","UNKNOWN","createRNCloudStorage","OS","Error"],"sourceRoot":"../../src","sources":["createRNCloudStorage.ts"],"mappings":"AAAA,SAASA,aAAa,EAAEC,QAAQ,QAAQ,cAAc;AAEtD,OAAOC,WAAW,MAAM,gBAAgB;AACxC,SAASC,qBAAqB,QAAQ,gBAAgB;AACtD,OAAOC,iBAAiB,MAAM,2BAA2B;AAEzD,MAAMC,aAAa,GAChB,qFAAoF,GACrFJ,QAAQ,CAACK,MAAM,CAAC;EAAEC,GAAG,EAAE,gCAAgC;EAAEC,OAAO,EAAE;AAAG,CAAC,CAAC,GACvE,sDAAsD,GACtD,+BAA+B;;AAEjC;AACA,MAAMC,iBAAiB,GAAGT,aAAa,CAACU,YAAY,GAChD,IAAIC,KAAK,CAACX,aAAa,CAACU,YAAY,EAAE;EACpCE,GAAGA,CAACC,MAA4B,EAAEC,IAAgC,EAAE;IAClE,MAAMC,gBAAgB,GAAGF,MAAM,CAACC,IAAI,CAAC;IACrC,IAAI,OAAOC,gBAAgB,KAAK,UAAU,EAAE;MAC1C,OAAO,kBAA0B;QAC/B,IAAI;UACF;UACA,OAAO,MAAMA,gBAAgB,CAAC,GAAAC,SAAO,CAAC;QACxC,CAAC,CAAC,OAAOC,KAAU,EAAE;UACnB,IAAIA,KAAK,aAALA,KAAK,eAALA,KAAK,CAAEC,IAAI,IAAIC,MAAM,CAACC,MAAM,CAACjB,qBAAqB,CAAC,CAACkB,QAAQ,CAACJ,KAAK,CAACC,IAAI,CAAC,EAAE;YAC5E,MAAM,IAAId,iBAAiB,CAAC,CAAAa,KAAK,aAALA,KAAK,uBAALA,KAAK,CAAEK,OAAO,KAAI,EAAE,EAAEL,KAAK,CAACC,IAAI,CAA0B;UACxF,CAAC,MAAM;YACL,MAAM,IAAId,iBAAiB,CAAC,eAAe,EAAED,qBAAqB,CAACoB,OAAO,EAAEN,KAAK,CAAC;UACpF;QACF;MACF,CAAC;IACH;IACA,OAAOF,gBAAgB;EACzB;AACF,CAAC,CAAC,GACF,IAAI;AAER,eAAe,SAASS,oBAAoBA,CAAA,EAAyB;EACnE,IAAIvB,QAAQ,CAACwB,EAAE,KAAK,KAAK,EAAE;IACzB,OACEhB,iBAAiB,IACjB,IAAIE,KAAK,CACP,CAAC,CAAC,EACF;MACEC,GAAGA,CAAA,EAAG;QACJ,MAAM,IAAIc,KAAK,CAACrB,aAAa,CAAC;MAChC;IACF,CAAC,CACF;EAEL;EAEA,OAAO,IAAIH,WAAW,EAAE;AAC1B"}
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
import { MimeTypes } from './types';
|
|
2
|
+
const BASE_URL = 'https://www.googleapis.com/drive/v3';
|
|
3
|
+
const BASE_UPLOAD_URL = 'https://www.googleapis.com/upload/drive/v3';
|
|
4
|
+
const MULTIPART_BOUNDARY = 'foo_bar_baz';
|
|
5
|
+
export class GoogleDriveHttpError extends Error {
|
|
6
|
+
constructor(message, status, json) {
|
|
7
|
+
super(message);
|
|
8
|
+
this.status = status;
|
|
9
|
+
this.json = json;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
// TODO: fetch timeout
|
|
14
|
+
// TODO: properly handle errors
|
|
15
|
+
export default class GoogleDriveApiClient {
|
|
16
|
+
constructor() {
|
|
17
|
+
let accessToken = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
|
|
18
|
+
this.accessToken = accessToken;
|
|
19
|
+
}
|
|
20
|
+
buildQueryString(query) {
|
|
21
|
+
let res = Object.entries(query).filter(_ref => {
|
|
22
|
+
let [, value] = _ref;
|
|
23
|
+
return value !== undefined;
|
|
24
|
+
}).map(_ref2 => {
|
|
25
|
+
let [key, value] = _ref2;
|
|
26
|
+
if (typeof value === 'boolean') return `${encodeURIComponent(key)}=${value ? 'true' : 'false'}`;
|
|
27
|
+
return `${encodeURIComponent(key)}=${encodeURIComponent(value)}`;
|
|
28
|
+
}).join('&');
|
|
29
|
+
if (res) {
|
|
30
|
+
res = `?${res}`;
|
|
31
|
+
}
|
|
32
|
+
return res;
|
|
33
|
+
}
|
|
34
|
+
async request(operation) {
|
|
35
|
+
let {
|
|
36
|
+
queryParameters,
|
|
37
|
+
baseUrl,
|
|
38
|
+
...options
|
|
39
|
+
} = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
40
|
+
let path = `${baseUrl ?? BASE_URL}${operation}`;
|
|
41
|
+
if (queryParameters) {
|
|
42
|
+
path += this.buildQueryString(queryParameters);
|
|
43
|
+
}
|
|
44
|
+
const response = await fetch(path, {
|
|
45
|
+
...options,
|
|
46
|
+
headers: {
|
|
47
|
+
...options.headers,
|
|
48
|
+
Authorization: `Bearer ${this.accessToken}`
|
|
49
|
+
}
|
|
50
|
+
});
|
|
51
|
+
if (!response.ok) {
|
|
52
|
+
let errorMessage;
|
|
53
|
+
let json = null;
|
|
54
|
+
try {
|
|
55
|
+
var _json$error;
|
|
56
|
+
json = await response.json();
|
|
57
|
+
errorMessage = ((_json$error = json.error) === null || _json$error === void 0 ? void 0 : _json$error.message) ?? `Request failed with status ${response.status}`;
|
|
58
|
+
} catch (e) {
|
|
59
|
+
errorMessage = `Request failed with status ${response.status}`;
|
|
60
|
+
}
|
|
61
|
+
throw new GoogleDriveHttpError(errorMessage, response.status, json);
|
|
62
|
+
}
|
|
63
|
+
if (options !== null && options !== void 0 && options.headers && 'Accept' in options.headers && options.headers.Accept !== 'application/json') {
|
|
64
|
+
return response.text();
|
|
65
|
+
}
|
|
66
|
+
return response.json();
|
|
67
|
+
}
|
|
68
|
+
buildMultiPartBody(metadata, media) {
|
|
69
|
+
const body = [];
|
|
70
|
+
body.push(`--${MULTIPART_BOUNDARY}\r\n`);
|
|
71
|
+
body.push(`Content-Type: ${MimeTypes.JSON}; charset=UTF-8\r\n\r\n`);
|
|
72
|
+
body.push(`${JSON.stringify(metadata)}\r\n`);
|
|
73
|
+
body.push(`--${MULTIPART_BOUNDARY}\r\n`);
|
|
74
|
+
body.push(`Content-Type: ${media.mimeType}\r\n\r\n`);
|
|
75
|
+
body.push(`${media.body}\r\n`);
|
|
76
|
+
body.push(`--${MULTIPART_BOUNDARY}--`);
|
|
77
|
+
return body.join('');
|
|
78
|
+
}
|
|
79
|
+
async listFiles(space) {
|
|
80
|
+
const files = [];
|
|
81
|
+
let pageToken;
|
|
82
|
+
const fields = ['id', 'kind', 'mimeType', 'name', 'parents', 'spaces', 'size', 'createdTime', 'modifiedTime'];
|
|
83
|
+
do {
|
|
84
|
+
const queryParameters = {
|
|
85
|
+
fields: `files(${fields.join(',')}),nextPageToken`,
|
|
86
|
+
spaces: space
|
|
87
|
+
};
|
|
88
|
+
const response = await this.request(`/files`, {
|
|
89
|
+
queryParameters
|
|
90
|
+
});
|
|
91
|
+
files.push(...response.files);
|
|
92
|
+
pageToken = response.nextPageToken ?? undefined;
|
|
93
|
+
} while (pageToken);
|
|
94
|
+
return files;
|
|
95
|
+
}
|
|
96
|
+
async getFile(fileId) {
|
|
97
|
+
const queryParameters = {
|
|
98
|
+
fields: ['id', 'kind', 'mimeType', 'name', 'parents', 'spaces', 'size', 'createdTime', 'modifiedTime'].join(',')
|
|
99
|
+
};
|
|
100
|
+
return this.request(`/files/${fileId}`, {
|
|
101
|
+
queryParameters
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
async getFileText(fileId) {
|
|
105
|
+
return this.request(`/files/${fileId}`, {
|
|
106
|
+
queryParameters: {
|
|
107
|
+
alt: 'media'
|
|
108
|
+
},
|
|
109
|
+
headers: {
|
|
110
|
+
Accept: 'text/plain'
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
async deleteFile(fileId) {
|
|
115
|
+
return this.request(`/files/${fileId}`, {
|
|
116
|
+
method: 'DELETE'
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
async createFile(metadata, media) {
|
|
120
|
+
const multipartRequestBody = this.buildMultiPartBody(metadata, media);
|
|
121
|
+
await this.request(`/files`, {
|
|
122
|
+
queryParameters: {
|
|
123
|
+
uploadType: 'multipart'
|
|
124
|
+
},
|
|
125
|
+
method: 'POST',
|
|
126
|
+
headers: {
|
|
127
|
+
'Content-Type': `multipart/related; boundary=${MULTIPART_BOUNDARY}`,
|
|
128
|
+
'Content-Length': multipartRequestBody.length.toString()
|
|
129
|
+
},
|
|
130
|
+
body: multipartRequestBody,
|
|
131
|
+
baseUrl: BASE_UPLOAD_URL
|
|
132
|
+
});
|
|
133
|
+
}
|
|
134
|
+
async createDirectory(metadata) {
|
|
135
|
+
await this.request(`/files`, {
|
|
136
|
+
method: 'POST',
|
|
137
|
+
headers: {
|
|
138
|
+
'Content-Type': `application/json`
|
|
139
|
+
},
|
|
140
|
+
body: JSON.stringify({
|
|
141
|
+
...metadata,
|
|
142
|
+
mimeType: MimeTypes.FOLDER
|
|
143
|
+
})
|
|
144
|
+
});
|
|
145
|
+
}
|
|
146
|
+
async updateFile(fileId, media) {
|
|
147
|
+
await this.request(`/files/${fileId}`, {
|
|
148
|
+
queryParameters: {
|
|
149
|
+
uploadType: 'media'
|
|
150
|
+
},
|
|
151
|
+
method: 'PATCH',
|
|
152
|
+
headers: {
|
|
153
|
+
'Content-Type': media.mimeType,
|
|
154
|
+
'Content-Length': media.body.length.toString()
|
|
155
|
+
},
|
|
156
|
+
body: media.body,
|
|
157
|
+
baseUrl: BASE_UPLOAD_URL
|
|
158
|
+
});
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["MimeTypes","BASE_URL","BASE_UPLOAD_URL","MULTIPART_BOUNDARY","GoogleDriveHttpError","Error","constructor","message","status","json","GoogleDriveApiClient","accessToken","arguments","length","undefined","buildQueryString","query","res","Object","entries","filter","_ref","value","map","_ref2","key","encodeURIComponent","join","request","operation","queryParameters","baseUrl","options","path","response","fetch","headers","Authorization","ok","errorMessage","_json$error","error","e","Accept","text","buildMultiPartBody","metadata","media","body","push","JSON","stringify","mimeType","listFiles","space","files","pageToken","fields","spaces","nextPageToken","getFile","fileId","getFileText","alt","deleteFile","method","createFile","multipartRequestBody","uploadType","toString","createDirectory","FOLDER","updateFile"],"sourceRoot":"../../../src","sources":["google-drive/client.ts"],"mappings":"AAAA,SACEA,SAAS,QAKJ,SAAS;AAEhB,MAAMC,QAAQ,GAAG,qCAAqC;AACtD,MAAMC,eAAe,GAAG,4CAA4C;AACpE,MAAMC,kBAAkB,GAAG,aAAa;AAExC,OAAO,MAAMC,oBAAoB,SAASC,KAAK,CAAC;EAI9CC,WAAWA,CAACC,OAAe,EAAEC,MAAc,EAAEC,IAAS,EAAE;IACtD,KAAK,CAACF,OAAO,CAAC;IACd,IAAI,CAACC,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACC,IAAI,GAAGA,IAAI;EAClB;AACF;;AAEA;AACA;AACA,eAAe,MAAMC,oBAAoB,CAAC;EAGxCJ,WAAWA,CAAA,EAA2B;IAAA,IAA1BK,WAAmB,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,EAAE;IAClC,IAAI,CAACD,WAAW,GAAGA,WAAW;EAChC;EAEQI,gBAAgBA,CAACC,KAAa,EAAU;IAC9C,IAAIC,GAAG,GAAGC,MAAM,CAACC,OAAO,CAACH,KAAK,CAAC,CAC5BI,MAAM,CAACC,IAAA;MAAA,IAAC,GAAGC,KAAK,CAAC,GAAAD,IAAA;MAAA,OAAKC,KAAK,KAAKR,SAAS;IAAA,EAAC,CAC1CS,GAAG,CAACC,KAAA,IAAkB;MAAA,IAAjB,CAACC,GAAG,EAAEH,KAAK,CAAC,GAAAE,KAAA;MAChB,IAAI,OAAOF,KAAK,KAAK,SAAS,EAAE,OAAQ,GAAEI,kBAAkB,CAACD,GAAG,CAAE,IAAGH,KAAK,GAAG,MAAM,GAAG,OAAQ,EAAC;MAC/F,OAAQ,GAAEI,kBAAkB,CAACD,GAAG,CAAE,IAAGC,kBAAkB,CAACJ,KAAK,CAAG,EAAC;IACnE,CAAC,CAAC,CACDK,IAAI,CAAC,GAAG,CAAC;IAEZ,IAAIV,GAAG,EAAE;MACPA,GAAG,GAAI,IAAGA,GAAI,EAAC;IACjB;IACA,OAAOA,GAAG;EACZ;EAEA,MAAcW,OAAOA,CACnBC,SAAuB,EAEX;IAAA,IADZ;MAAEC,eAAe;MAAEC,OAAO;MAAE,GAAGC;IAAsE,CAAC,GAAApB,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;IAE3G,IAAIqB,IAAI,GAAI,GAAEF,OAAO,IAAI9B,QAAS,GAAE4B,SAAU,EAAC;IAC/C,IAAIC,eAAe,EAAE;MACnBG,IAAI,IAAI,IAAI,CAAClB,gBAAgB,CAACe,eAAe,CAAC;IAChD;IACA,MAAMI,QAAQ,GAAG,MAAMC,KAAK,CAACF,IAAI,EAAE;MACjC,GAAGD,OAAO;MACVI,OAAO,EAAE;QACP,GAAGJ,OAAO,CAACI,OAAO;QAClBC,aAAa,EAAG,UAAS,IAAI,CAAC1B,WAAY;MAC5C;IACF,CAAC,CAAC;IAEF,IAAI,CAACuB,QAAQ,CAACI,EAAE,EAAE;MAChB,IAAIC,YAAoB;MACxB,IAAI9B,IAAS,GAAG,IAAI;MACpB,IAAI;QAAA,IAAA+B,WAAA;QACF/B,IAAI,GAAG,MAAMyB,QAAQ,CAACzB,IAAI,EAAE;QAC5B8B,YAAY,GAAG,EAAAC,WAAA,GAAA/B,IAAI,CAACgC,KAAK,cAAAD,WAAA,uBAAVA,WAAA,CAAYjC,OAAO,KAAK,8BAA6B2B,QAAQ,CAAC1B,MAAO,EAAC;MACvF,CAAC,CAAC,OAAOkC,CAAC,EAAE;QACVH,YAAY,GAAI,8BAA6BL,QAAQ,CAAC1B,MAAO,EAAC;MAChE;MACA,MAAM,IAAIJ,oBAAoB,CAACmC,YAAY,EAAEL,QAAQ,CAAC1B,MAAM,EAAEC,IAAI,CAAC;IACrE;IAEA,IAAIuB,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAEI,OAAO,IAAI,QAAQ,IAAIJ,OAAO,CAACI,OAAO,IAAIJ,OAAO,CAACI,OAAO,CAACO,MAAM,KAAK,kBAAkB,EAAE;MACpG,OAAOT,QAAQ,CAACU,IAAI,EAAE;IACxB;IACA,OAAOV,QAAQ,CAACzB,IAAI,EAAE;EACxB;EAEQoC,kBAAkBA,CAACC,QAAgB,EAAEC,KAAyC,EAAU;IAC9F,MAAMC,IAAc,GAAG,EAAE;IACzBA,IAAI,CAACC,IAAI,CAAE,KAAI9C,kBAAmB,MAAK,CAAC;IACxC6C,IAAI,CAACC,IAAI,CAAE,iBAAgBjD,SAAS,CAACkD,IAAK,yBAAwB,CAAC;IACnEF,IAAI,CAACC,IAAI,CAAE,GAAEC,IAAI,CAACC,SAAS,CAACL,QAAQ,CAAE,MAAK,CAAC;IAC5CE,IAAI,CAACC,IAAI,CAAE,KAAI9C,kBAAmB,MAAK,CAAC;IACxC6C,IAAI,CAACC,IAAI,CAAE,iBAAgBF,KAAK,CAACK,QAAS,UAAS,CAAC;IACpDJ,IAAI,CAACC,IAAI,CAAE,GAAEF,KAAK,CAACC,IAAK,MAAK,CAAC;IAC9BA,IAAI,CAACC,IAAI,CAAE,KAAI9C,kBAAmB,IAAG,CAAC;IAEtC,OAAO6C,IAAI,CAACrB,IAAI,CAAC,EAAE,CAAC;EACtB;EAEA,MAAa0B,SAASA,CAACC,KAA2B,EAA8B;IAC9E,MAAMC,KAAwB,GAAG,EAAE;IACnC,IAAIC,SAA6B;IACjC,MAAMC,MAAM,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,cAAc,CAAC;IAC7G,GAAG;MACD,MAAM3B,eAAwD,GAAG;QAC/D2B,MAAM,EAAG,SAAQA,MAAM,CAAC9B,IAAI,CAAC,GAAG,CAAE,iBAAgB;QAClD+B,MAAM,EAAEJ;MACV,CAAC;MACD,MAAMpB,QAAQ,GAAG,MAAM,IAAI,CAACN,OAAO,CAAoC,QAAO,EAAE;QAC9EE;MACF,CAAC,CAAC;MAEFyB,KAAK,CAACN,IAAI,CAAC,GAAGf,QAAQ,CAACqB,KAAK,CAAC;MAC7BC,SAAS,GAAGtB,QAAQ,CAACyB,aAAa,IAAI7C,SAAS;IACjD,CAAC,QAAQ0C,SAAS;IAElB,OAAOD,KAAK;EACd;EAEA,MAAaK,OAAOA,CAACC,MAAc,EAA4B;IAC7D,MAAM/B,eAAwD,GAAG;MAC/D2B,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,aAAa,EAAE,cAAc,CAAC,CAAC9B,IAAI,CAAC,GAAG;IACjH,CAAC;IACD,OAAO,IAAI,CAACC,OAAO,CAAmB,UAASiC,MAAO,EAAC,EAAE;MACvD/B;IACF,CAAC,CAAC;EACJ;EAEA,MAAagC,WAAWA,CAACD,MAAc,EAAmB;IACxD,OAAO,IAAI,CAACjC,OAAO,CAAU,UAASiC,MAAO,EAAC,EAAE;MAC9C/B,eAAe,EAAE;QAAEiC,GAAG,EAAE;MAAQ,CAAC;MACjC3B,OAAO,EAAE;QAAEO,MAAM,EAAE;MAAa;IAClC,CAAC,CAAC;EACJ;EAEA,MAAaqB,UAAUA,CAACH,MAAc,EAAiB;IACrD,OAAO,IAAI,CAACjC,OAAO,CAAE,UAASiC,MAAO,EAAC,EAAE;MACtCI,MAAM,EAAE;IACV,CAAC,CAAC;EACJ;EAEA,MAAaC,UAAUA,CACrBpB,QAA8C,EAC9CC,KAAyC,EAC1B;IACf,MAAMoB,oBAAoB,GAAG,IAAI,CAACtB,kBAAkB,CAACC,QAAQ,EAAEC,KAAK,CAAC;IAErE,MAAM,IAAI,CAACnB,OAAO,CAAE,QAAO,EAAE;MAC3BE,eAAe,EAAE;QAAEsC,UAAU,EAAE;MAAY,CAAC;MAC5CH,MAAM,EAAE,MAAM;MACd7B,OAAO,EAAE;QACP,cAAc,EAAG,+BAA8BjC,kBAAmB,EAAC;QACnE,gBAAgB,EAAEgE,oBAAoB,CAACtD,MAAM,CAACwD,QAAQ;MACxD,CAAC;MACDrB,IAAI,EAAEmB,oBAAoB;MAC1BpC,OAAO,EAAE7B;IACX,CAAC,CAAC;EACJ;EAEA,MAAaoE,eAAeA,CAACxB,QAA8C,EAAiB;IAC1F,MAAM,IAAI,CAAClB,OAAO,CAAE,QAAO,EAAE;MAC3BqC,MAAM,EAAE,MAAM;MACd7B,OAAO,EAAE;QACP,cAAc,EAAG;MACnB,CAAC;MACDY,IAAI,EAAEE,IAAI,CAACC,SAAS,CAAC;QAAE,GAAGL,QAAQ;QAAEM,QAAQ,EAAEpD,SAAS,CAACuE;MAAO,CAAC;IAClE,CAAC,CAAC;EACJ;EAEA,MAAaC,UAAUA,CAACX,MAAc,EAAEd,KAAyC,EAAiB;IAChG,MAAM,IAAI,CAACnB,OAAO,CAAE,UAASiC,MAAO,EAAC,EAAE;MACrC/B,eAAe,EAAE;QAAEsC,UAAU,EAAE;MAAQ,CAAC;MACxCH,MAAM,EAAE,OAAO;MACf7B,OAAO,EAAE;QACP,cAAc,EAAEW,KAAK,CAACK,QAAQ;QAC9B,gBAAgB,EAAEL,KAAK,CAACC,IAAI,CAACnC,MAAM,CAACwD,QAAQ;MAC9C,CAAC;MACDrB,IAAI,EAAED,KAAK,CAACC,IAAI;MAChBjB,OAAO,EAAE7B;IACX,CAAC,CAAC;EACJ;AACF"}
|
|
@@ -1,19 +1,24 @@
|
|
|
1
|
-
import { GDrive, HttpError, MimeTypes } from 'react-native-google-drive-api-wrapper-js';
|
|
2
1
|
import { CloudStorageErrorCode } from '../types/native';
|
|
3
2
|
import CloudStorageError from '../utils/CloudStorageError';
|
|
3
|
+
import { MimeTypes } from './types';
|
|
4
4
|
import { DeviceEventEmitter } from 'react-native';
|
|
5
|
-
|
|
6
|
-
|
|
5
|
+
import GoogleDriveApiClient, { GoogleDriveHttpError } from './client';
|
|
6
|
+
|
|
7
|
+
// TODO: replace legacyDrive fully with new drive implementation
|
|
8
|
+
/**
|
|
9
|
+
* A proxy class that wraps the Google Drive API client implementation to match the native iOS interface.
|
|
10
|
+
*/
|
|
11
|
+
export default class GoogleDrive {
|
|
12
|
+
static drive = new GoogleDriveApiClient();
|
|
7
13
|
static throwOnFilesWithSameName = false;
|
|
8
14
|
constructor() {
|
|
9
15
|
this.filesWithSameNameSubscribers = [];
|
|
10
|
-
GoogleDriveApiClient.drive.fetchTimeout = 3000;
|
|
11
16
|
return new Proxy(this, {
|
|
12
17
|
// before calling any function, check if the access token is set
|
|
13
18
|
get(target, prop) {
|
|
14
19
|
const allowedFunctions = ['isCloudAvailable', 'subscribeToFilesWithSameName'];
|
|
15
20
|
if (typeof target[prop] === 'function' && !allowedFunctions.includes(prop.toString())) {
|
|
16
|
-
if (!
|
|
21
|
+
if (!GoogleDrive.drive.accessToken.length) {
|
|
17
22
|
throw new CloudStorageError(`Google Drive access token is not set, cannot call function ${prop.toString()}`, CloudStorageErrorCode.GOOGLE_DRIVE_ACCESS_TOKEN_MISSING);
|
|
18
23
|
}
|
|
19
24
|
}
|
|
@@ -24,7 +29,7 @@ export default class GoogleDriveApiClient {
|
|
|
24
29
|
|
|
25
30
|
// when setting accessToken, set it on the GDrive instance
|
|
26
31
|
static set accessToken(accessToken) {
|
|
27
|
-
|
|
32
|
+
GoogleDrive.drive.accessToken = accessToken ?? '';
|
|
28
33
|
|
|
29
34
|
// emit an event for the useIsCloudAvailable hook
|
|
30
35
|
DeviceEventEmitter.emit('RNCloudStorage.cloud.availability-changed', {
|
|
@@ -32,7 +37,7 @@ export default class GoogleDriveApiClient {
|
|
|
32
37
|
});
|
|
33
38
|
}
|
|
34
39
|
static get accessToken() {
|
|
35
|
-
return
|
|
40
|
+
return GoogleDrive.drive.accessToken.length ? GoogleDrive.drive.accessToken : null;
|
|
36
41
|
}
|
|
37
42
|
subscribeToFilesWithSameName(subscriber) {
|
|
38
43
|
this.filesWithSameNameSubscribers.push(subscriber);
|
|
@@ -42,10 +47,7 @@ export default class GoogleDriveApiClient {
|
|
|
42
47
|
}
|
|
43
48
|
};
|
|
44
49
|
}
|
|
45
|
-
isCloudAvailable = async () =>
|
|
46
|
-
var _GoogleDriveApiClient;
|
|
47
|
-
return !!((_GoogleDriveApiClient = GoogleDriveApiClient.accessToken) !== null && _GoogleDriveApiClient !== void 0 && _GoogleDriveApiClient.length);
|
|
48
|
-
};
|
|
50
|
+
isCloudAvailable = async () => !!GoogleDrive.drive.accessToken.length;
|
|
49
51
|
getRootDirectory(scope) {
|
|
50
52
|
switch (scope) {
|
|
51
53
|
case 'documents':
|
|
@@ -102,19 +104,12 @@ export default class GoogleDriveApiClient {
|
|
|
102
104
|
* @returns A promise that resolves to the ID of the root directory or null if it could not be found.
|
|
103
105
|
*/
|
|
104
106
|
async getRootDirectoryId(scope) {
|
|
105
|
-
const files = await this.
|
|
107
|
+
const files = await GoogleDrive.drive.listFiles(this.getRootDirectory(scope));
|
|
106
108
|
for (const file of files) {
|
|
107
109
|
if (!files.find(f => f.id === file.parents[0])) return file.parents[0] ?? null;
|
|
108
110
|
}
|
|
109
111
|
return null;
|
|
110
112
|
}
|
|
111
|
-
async listInternalFiles(scope) {
|
|
112
|
-
const files = await GoogleDriveApiClient.drive.files.list({
|
|
113
|
-
spaces: [this.getRootDirectory(scope)],
|
|
114
|
-
fields: 'files(id,kind,mimeType,name,parents,spaces)'
|
|
115
|
-
});
|
|
116
|
-
return files.files;
|
|
117
|
-
}
|
|
118
113
|
checkIfMultipleFilesWithSameName(path, files, filename, parentDirectoryId) {
|
|
119
114
|
let possibleFiles;
|
|
120
115
|
if (parentDirectoryId) {
|
|
@@ -123,7 +118,7 @@ export default class GoogleDriveApiClient {
|
|
|
123
118
|
possibleFiles = files.filter(f => f.name === filename && !files.find(f2 => f2.id === f.parents[0]));
|
|
124
119
|
}
|
|
125
120
|
if (possibleFiles.length <= 1) return;
|
|
126
|
-
if (
|
|
121
|
+
if (GoogleDrive.throwOnFilesWithSameName) {
|
|
127
122
|
throw new CloudStorageError(`Multiple files with the same name found at path ${path}: ${possibleFiles.map(f => f.id).join(', ')}`, CloudStorageErrorCode.MULTIPLE_FILES_SAME_NAME);
|
|
128
123
|
} else {
|
|
129
124
|
this.filesWithSameNameSubscribers.forEach(s => s({
|
|
@@ -135,7 +130,7 @@ export default class GoogleDriveApiClient {
|
|
|
135
130
|
async getFileId(path, scope) {
|
|
136
131
|
let throwIfDirectory = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
|
|
137
132
|
try {
|
|
138
|
-
const files = await this.
|
|
133
|
+
const files = await GoogleDrive.drive.listFiles(this.getRootDirectory(scope));
|
|
139
134
|
if (path === '' || path === '/') {
|
|
140
135
|
const rootDirectoryId = await this.getRootDirectoryId(scope);
|
|
141
136
|
if (!rootDirectoryId) throw new CloudStorageError(`Root directory in scope ${scope} not found`, CloudStorageErrorCode.DIRECTORY_NOT_FOUND);
|
|
@@ -163,7 +158,7 @@ export default class GoogleDriveApiClient {
|
|
|
163
158
|
return file.id;
|
|
164
159
|
} catch (e) {
|
|
165
160
|
var _e$json, _e$json$error;
|
|
166
|
-
if (e instanceof
|
|
161
|
+
if (e instanceof GoogleDriveHttpError && ((_e$json = e.json) === null || _e$json === void 0 ? void 0 : (_e$json$error = _e$json.error) === null || _e$json$error === void 0 ? void 0 : _e$json$error.status) === 'UNAUTHENTICATED') {
|
|
167
162
|
throw new CloudStorageError(`Could not authenticate with Google Drive`, CloudStorageErrorCode.AUTHENTICATION_FAILED, e.json);
|
|
168
163
|
} else {
|
|
169
164
|
if (e instanceof CloudStorageError) throw e;
|
|
@@ -184,7 +179,7 @@ export default class GoogleDriveApiClient {
|
|
|
184
179
|
let prevContent = '';
|
|
185
180
|
try {
|
|
186
181
|
fileId = await this.getFileId(path, scope);
|
|
187
|
-
prevContent = await
|
|
182
|
+
prevContent = await GoogleDrive.drive.getFileText(fileId);
|
|
188
183
|
} catch (e) {
|
|
189
184
|
if (e instanceof CloudStorageError && e.code === CloudStorageErrorCode.FILE_NOT_FOUND) {
|
|
190
185
|
/* do nothing, simply create the file */
|
|
@@ -192,20 +187,26 @@ export default class GoogleDriveApiClient {
|
|
|
192
187
|
throw e;
|
|
193
188
|
}
|
|
194
189
|
}
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
190
|
+
if (fileId) {
|
|
191
|
+
await GoogleDrive.drive.updateFile(fileId, {
|
|
192
|
+
body: prevContent + data,
|
|
193
|
+
mimeType: MimeTypes.TEXT
|
|
194
|
+
});
|
|
195
|
+
} else {
|
|
196
|
+
const files = await GoogleDrive.drive.listFiles(this.getRootDirectory(scope));
|
|
198
197
|
const {
|
|
199
198
|
directories,
|
|
200
199
|
filename
|
|
201
200
|
} = this.resolvePathToDirectories(path);
|
|
202
201
|
const parentDirectoryId = this.findParentDirectoryId(files, directories);
|
|
203
|
-
|
|
202
|
+
await GoogleDrive.drive.createFile({
|
|
204
203
|
name: filename,
|
|
205
204
|
parents: parentDirectoryId ? [parentDirectoryId] : scope === 'app_data' ? [this.getRootDirectory(scope)] : undefined
|
|
205
|
+
}, {
|
|
206
|
+
body: data,
|
|
207
|
+
mimeType: MimeTypes.TEXT
|
|
206
208
|
});
|
|
207
209
|
}
|
|
208
|
-
await uploader.execute();
|
|
209
210
|
}
|
|
210
211
|
async createFile(path, data, scope, overwrite) {
|
|
211
212
|
let fileId;
|
|
@@ -231,23 +232,29 @@ export default class GoogleDriveApiClient {
|
|
|
231
232
|
}
|
|
232
233
|
}
|
|
233
234
|
}
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
235
|
+
if (fileId) {
|
|
236
|
+
await GoogleDrive.drive.updateFile(fileId, {
|
|
237
|
+
body: data,
|
|
238
|
+
mimeType: MimeTypes.TEXT
|
|
239
|
+
});
|
|
240
|
+
} else {
|
|
241
|
+
const files = await GoogleDrive.drive.listFiles(this.getRootDirectory(scope));
|
|
237
242
|
const {
|
|
238
243
|
directories,
|
|
239
244
|
filename
|
|
240
245
|
} = this.resolvePathToDirectories(path);
|
|
241
246
|
const parentDirectoryId = this.findParentDirectoryId(files, directories);
|
|
242
|
-
|
|
247
|
+
await GoogleDrive.drive.createFile({
|
|
243
248
|
name: filename,
|
|
244
249
|
parents: parentDirectoryId ? [parentDirectoryId] : scope === 'app_data' ? [this.getRootDirectory(scope)] : undefined
|
|
250
|
+
}, {
|
|
251
|
+
body: data,
|
|
252
|
+
mimeType: MimeTypes.TEXT
|
|
245
253
|
});
|
|
246
254
|
}
|
|
247
|
-
await uploader.execute();
|
|
248
255
|
}
|
|
249
256
|
async listFiles(path, scope) {
|
|
250
|
-
const allFiles = await this.
|
|
257
|
+
const allFiles = await GoogleDrive.drive.listFiles(this.getRootDirectory(scope));
|
|
251
258
|
if (path !== '') {
|
|
252
259
|
const fileId = await this.getFileId(path, scope, false);
|
|
253
260
|
const files = allFiles.filter(f => (f.parents ?? [])[0] === fileId);
|
|
@@ -270,23 +277,20 @@ export default class GoogleDriveApiClient {
|
|
|
270
277
|
throw e;
|
|
271
278
|
}
|
|
272
279
|
}
|
|
273
|
-
const
|
|
274
|
-
const files = await this.listInternalFiles(scope);
|
|
280
|
+
const files = await GoogleDrive.drive.listFiles(this.getRootDirectory(scope));
|
|
275
281
|
const {
|
|
276
282
|
directories,
|
|
277
283
|
filename
|
|
278
284
|
} = this.resolvePathToDirectories(path);
|
|
279
285
|
const parentDirectoryId = this.findParentDirectoryId(files, directories);
|
|
280
|
-
|
|
286
|
+
await GoogleDrive.drive.createDirectory({
|
|
281
287
|
name: filename,
|
|
282
|
-
mimeType: MimeTypes.FOLDER,
|
|
283
288
|
parents: parentDirectoryId ? [parentDirectoryId] : scope === 'app_data' ? [this.getRootDirectory(scope)] : undefined
|
|
284
289
|
});
|
|
285
|
-
await uploader.execute();
|
|
286
290
|
}
|
|
287
291
|
async readFile(path, scope) {
|
|
288
292
|
const fileId = await this.getFileId(path, scope);
|
|
289
|
-
const content = await
|
|
293
|
+
const content = await GoogleDrive.drive.getFileText(fileId);
|
|
290
294
|
return content;
|
|
291
295
|
}
|
|
292
296
|
async downloadFile(_path, _scope) {
|
|
@@ -295,13 +299,11 @@ export default class GoogleDriveApiClient {
|
|
|
295
299
|
}
|
|
296
300
|
async deleteFile(path, scope) {
|
|
297
301
|
const fileId = await this.getFileId(path, scope);
|
|
298
|
-
await
|
|
302
|
+
await GoogleDrive.drive.deleteFile(fileId);
|
|
299
303
|
}
|
|
300
304
|
async statFile(path, scope) {
|
|
301
305
|
const fileId = await this.getFileId(path, scope, false);
|
|
302
|
-
const file = await
|
|
303
|
-
fields: 'id,kind,mimeType,name,parents,spaces,size,createdTime,modifiedTime'
|
|
304
|
-
})).json();
|
|
306
|
+
const file = await GoogleDrive.drive.getFile(fileId);
|
|
305
307
|
return {
|
|
306
308
|
size: file.size ?? 0,
|
|
307
309
|
birthtimeMs: new Date(file.createdTime).getTime(),
|