react-native-cloud-storage 1.4.2 → 1.5.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.
Files changed (102) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +6 -5
  3. package/ios/CloudStorage.swift +52 -262
  4. package/ios/CloudStorage.xcodeproj/project.pbxproj +28 -0
  5. package/ios/CloudStorageEventEmitter.swift +4 -4
  6. package/ios/Utils/CloudKitUtils.swift +112 -0
  7. package/ios/Utils/CloudStorageError.swift +78 -0
  8. package/ios/Utils/FileUtils.swift +132 -0
  9. package/ios/Utils/Promise.swift +58 -0
  10. package/ios/Utils/Types.swift +36 -0
  11. package/lib/commonjs/RNCloudStorage.js +361 -66
  12. package/lib/commonjs/RNCloudStorage.js.map +1 -1
  13. package/lib/commonjs/expo-plugin/types/index.js.map +1 -1
  14. package/lib/commonjs/expo-plugin/withRNCloudStorage.js +2 -3
  15. package/lib/commonjs/expo-plugin/withRNCloudStorage.js.map +1 -1
  16. package/lib/commonjs/expo-plugin/withRNCloudStorageIos.js +4 -7
  17. package/lib/commonjs/expo-plugin/withRNCloudStorageIos.js.map +1 -1
  18. package/lib/commonjs/google-drive/client.js +16 -20
  19. package/lib/commonjs/google-drive/client.js.map +1 -1
  20. package/lib/commonjs/google-drive/index.js +42 -64
  21. package/lib/commonjs/google-drive/index.js.map +1 -1
  22. package/lib/commonjs/google-drive/types.js +1 -2
  23. package/lib/commonjs/google-drive/types.js.map +1 -1
  24. package/lib/commonjs/hooks/useCloudFile.js +14 -17
  25. package/lib/commonjs/hooks/useCloudFile.js.map +1 -1
  26. package/lib/commonjs/hooks/useIsCloudAvailable.js +11 -21
  27. package/lib/commonjs/hooks/useIsCloudAvailable.js.map +1 -1
  28. package/lib/commonjs/index.js +1 -7
  29. package/lib/commonjs/index.js.map +1 -1
  30. package/lib/commonjs/package.json +1 -0
  31. package/lib/commonjs/types/main.js +8 -3
  32. package/lib/commonjs/types/main.js.map +1 -1
  33. package/lib/commonjs/types/native.js +3 -3
  34. package/lib/commonjs/types/native.js.map +1 -1
  35. package/lib/commonjs/utils/CloudStorageError.js +1 -2
  36. package/lib/commonjs/utils/CloudStorageError.js.map +1 -1
  37. package/lib/commonjs/utils/helpers.js +8 -15
  38. package/lib/commonjs/utils/helpers.js.map +1 -1
  39. package/lib/module/RNCloudStorage.js +362 -65
  40. package/lib/module/RNCloudStorage.js.map +1 -1
  41. package/lib/module/expo-plugin/types/index.js +1 -1
  42. package/lib/module/expo-plugin/types/index.js.map +1 -1
  43. package/lib/module/expo-plugin/withRNCloudStorage.js +2 -0
  44. package/lib/module/expo-plugin/withRNCloudStorage.js.map +1 -1
  45. package/lib/module/expo-plugin/withRNCloudStorageIos.js +5 -5
  46. package/lib/module/expo-plugin/withRNCloudStorageIos.js.map +1 -1
  47. package/lib/module/google-drive/client.js +18 -20
  48. package/lib/module/google-drive/client.js.map +1 -1
  49. package/lib/module/google-drive/index.js +41 -62
  50. package/lib/module/google-drive/index.js.map +1 -1
  51. package/lib/module/google-drive/types.js +2 -0
  52. package/lib/module/google-drive/types.js.map +1 -1
  53. package/lib/module/hooks/useCloudFile.js +15 -16
  54. package/lib/module/hooks/useCloudFile.js.map +1 -1
  55. package/lib/module/hooks/useIsCloudAvailable.js +13 -21
  56. package/lib/module/hooks/useIsCloudAvailable.js.map +1 -1
  57. package/lib/module/index.js +2 -5
  58. package/lib/module/index.js.map +1 -1
  59. package/lib/module/package.json +1 -0
  60. package/lib/module/types/main.js +9 -0
  61. package/lib/module/types/main.js.map +1 -1
  62. package/lib/module/types/native.js +4 -1
  63. package/lib/module/types/native.js.map +1 -1
  64. package/lib/module/utils/CloudStorageError.js +2 -0
  65. package/lib/module/utils/CloudStorageError.js.map +1 -1
  66. package/lib/module/utils/helpers.js +8 -13
  67. package/lib/module/utils/helpers.js.map +1 -1
  68. package/lib/typescript/RNCloudStorage.d.ts +159 -39
  69. package/lib/typescript/RNCloudStorage.d.ts.map +1 -1
  70. package/lib/typescript/google-drive/client.d.ts +3 -3
  71. package/lib/typescript/google-drive/client.d.ts.map +1 -1
  72. package/lib/typescript/google-drive/index.d.ts +6 -18
  73. package/lib/typescript/google-drive/index.d.ts.map +1 -1
  74. package/lib/typescript/hooks/useCloudFile.d.ts +4 -7
  75. package/lib/typescript/hooks/useCloudFile.d.ts.map +1 -1
  76. package/lib/typescript/hooks/useIsCloudAvailable.d.ts +3 -2
  77. package/lib/typescript/hooks/useIsCloudAvailable.d.ts.map +1 -1
  78. package/lib/typescript/index.d.ts +0 -4
  79. package/lib/typescript/index.d.ts.map +1 -1
  80. package/lib/typescript/types/main.d.ts +33 -0
  81. package/lib/typescript/types/main.d.ts.map +1 -1
  82. package/lib/typescript/types/native.d.ts +2 -1
  83. package/lib/typescript/types/native.d.ts.map +1 -1
  84. package/lib/typescript/utils/helpers.d.ts +2 -9
  85. package/lib/typescript/utils/helpers.d.ts.map +1 -1
  86. package/package.json +9 -11
  87. package/src/RNCloudStorage.ts +387 -68
  88. package/src/google-drive/client.ts +8 -7
  89. package/src/google-drive/index.ts +38 -63
  90. package/src/hooks/useCloudFile.ts +13 -16
  91. package/src/hooks/useIsCloudAvailable.ts +12 -25
  92. package/src/index.ts +0 -5
  93. package/src/types/main.ts +38 -0
  94. package/src/types/native.ts +2 -1
  95. package/src/utils/helpers.ts +8 -15
  96. package/lib/commonjs/createRNCloudStorage.js +0 -48
  97. package/lib/commonjs/createRNCloudStorage.js.map +0 -1
  98. package/lib/module/createRNCloudStorage.js +0 -41
  99. package/lib/module/createRNCloudStorage.js.map +0 -1
  100. package/lib/typescript/createRNCloudStorage.d.ts +0 -3
  101. package/lib/typescript/createRNCloudStorage.d.ts.map +0 -1
  102. package/src/createRNCloudStorage.ts +0 -53
@@ -20,17 +20,11 @@ class GoogleDriveHttpError extends Error {
20
20
  // TODO: properly handle errors
21
21
  exports.GoogleDriveHttpError = GoogleDriveHttpError;
22
22
  class GoogleDriveApiClient {
23
- constructor() {
24
- let accessToken = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
25
- this.accessToken = accessToken;
26
- this.timeout = 3000;
23
+ constructor(options) {
24
+ this.options = options;
27
25
  }
28
26
  buildQueryString(query) {
29
- let res = Object.entries(query).filter(_ref => {
30
- let [, value] = _ref;
31
- return value !== undefined;
32
- }).map(_ref2 => {
33
- let [key, value] = _ref2;
27
+ let res = Object.entries(query).filter(([, value]) => value !== undefined).map(([key, value]) => {
34
28
  if (typeof value === 'boolean') return `${encodeURIComponent(key)}=${value ? 'true' : 'false'}`;
35
29
  return `${encodeURIComponent(key)}=${encodeURIComponent(value)}`;
36
30
  }).join('&');
@@ -39,12 +33,15 @@ class GoogleDriveApiClient {
39
33
  }
40
34
  return res;
41
35
  }
42
- async request(operation) {
43
- let {
44
- queryParameters,
45
- baseUrl,
46
- ...options
47
- } = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
36
+ async request(operation, {
37
+ queryParameters,
38
+ baseUrl,
39
+ ...options
40
+ } = {}) {
41
+ const {
42
+ timeout,
43
+ accessToken
44
+ } = this.options;
48
45
  let path = `${baseUrl ?? BASE_URL}${operation}`;
49
46
  if (queryParameters) {
50
47
  path += this.buildQueryString(queryParameters);
@@ -53,12 +50,12 @@ class GoogleDriveApiClient {
53
50
  const abortController = new AbortController();
54
51
  this._fetchTimeout = setTimeout(() => {
55
52
  abortController.abort();
56
- }, this.timeout);
53
+ }, timeout);
57
54
  const response = await fetch(path, {
58
55
  ...options,
59
56
  headers: {
60
57
  ...options.headers,
61
- Authorization: `Bearer ${this.accessToken}`
58
+ Authorization: `Bearer ${accessToken}`
62
59
  },
63
60
  signal: abortController.signal
64
61
  });
@@ -66,9 +63,8 @@ class GoogleDriveApiClient {
66
63
  let errorMessage;
67
64
  let json = null;
68
65
  try {
69
- var _json$error;
70
66
  json = await response.json();
71
- errorMessage = ((_json$error = json.error) === null || _json$error === void 0 ? void 0 : _json$error.message) ?? `Request failed with status ${response.status}`;
67
+ errorMessage = json.error?.message ?? `Request failed with status ${response.status}`;
72
68
  } catch (e) {
73
69
  errorMessage = `Request failed with status ${response.status}`;
74
70
  }
@@ -77,7 +73,7 @@ class GoogleDriveApiClient {
77
73
  if (response.status === 204) {
78
74
  return undefined;
79
75
  }
80
- if (options !== null && options !== void 0 && options.headers && 'Accept' in options.headers && options.headers.Accept !== 'application/json') {
76
+ if (options?.headers && 'Accept' in options.headers && options.headers.Accept !== 'application/json') {
81
77
  return response.text();
82
78
  }
83
79
  return response.json();
@@ -1 +1 @@
1
- {"version":3,"names":["_types","require","BASE_URL","BASE_UPLOAD_URL","MULTIPART_BOUNDARY","GoogleDriveHttpError","Error","constructor","message","status","json","exports","GoogleDriveApiClient","accessToken","arguments","length","undefined","timeout","buildQueryString","query","res","Object","entries","filter","_ref","value","map","_ref2","key","encodeURIComponent","join","request","operation","queryParameters","baseUrl","options","path","clearTimeout","_fetchTimeout","abortController","AbortController","setTimeout","abort","response","fetch","headers","Authorization","signal","ok","errorMessage","_json$error","error","e","Accept","text","buildMultiPartBody","metadata","media","body","push","MimeTypes","JSON","stringify","mimeType","listFiles","space","files","pageToken","fields","spaces","nextPageToken","getFile","fileId","getFileText","alt","deleteFile","method","createFile","multipartRequestBody","uploadType","toString","createDirectory","FOLDER","updateFile","default"],"sourceRoot":"../../../src","sources":["google-drive/client.ts"],"mappings":"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"}
1
+ {"version":3,"names":["_types","require","BASE_URL","BASE_UPLOAD_URL","MULTIPART_BOUNDARY","GoogleDriveHttpError","Error","constructor","message","status","json","exports","GoogleDriveApiClient","options","buildQueryString","query","res","Object","entries","filter","value","undefined","map","key","encodeURIComponent","join","request","operation","queryParameters","baseUrl","timeout","accessToken","path","clearTimeout","_fetchTimeout","abortController","AbortController","setTimeout","abort","response","fetch","headers","Authorization","signal","ok","errorMessage","error","e","Accept","text","buildMultiPartBody","metadata","media","body","push","MimeTypes","JSON","stringify","mimeType","listFiles","space","files","pageToken","fields","spaces","nextPageToken","getFile","fileId","getFileText","alt","deleteFile","method","createFile","multipartRequestBody","uploadType","length","toString","createDirectory","FOLDER","updateFile","default"],"sourceRoot":"../../../src","sources":["google-drive/client.ts"],"mappings":"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","ignoreList":[]}
@@ -7,57 +7,39 @@ exports.default = void 0;
7
7
  var _native = require("../types/native");
8
8
  var _CloudStorageError = _interopRequireDefault(require("../utils/CloudStorageError"));
9
9
  var _types = require("./types");
10
- var _reactNative = require("react-native");
11
10
  var _client = _interopRequireWildcard(require("./client"));
12
- function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
13
- function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
14
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
+ function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
12
+ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
13
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
15
14
  /**
16
15
  * A proxy class that wraps the Google Drive API client implementation to match the native iOS interface.
17
16
  */
18
17
  class GoogleDrive {
19
- static drive = new _client.default();
20
- static throwOnFilesWithSameName = false;
21
- constructor() {
22
- this.filesWithSameNameSubscribers = [];
18
+ constructor(options) {
19
+ this.options = options;
20
+ this.drive = new _client.default(options);
23
21
  return new Proxy(this, {
24
22
  // before calling any function, check if the access token is set
25
23
  get(target, prop) {
26
- const allowedFunctions = ['isCloudAvailable', 'subscribeToFilesWithSameName'];
24
+ const allowedFunctions = ['isCloudAvailable'];
27
25
  if (typeof target[prop] === 'function' && !allowedFunctions.includes(prop.toString())) {
28
- if (!GoogleDrive.drive.accessToken.length) {
29
- throw new _CloudStorageError.default(`Google Drive access token is not set, cannot call function ${prop.toString()}`, _native.CloudStorageErrorCode.GOOGLE_DRIVE_ACCESS_TOKEN_MISSING);
26
+ const {
27
+ accessToken
28
+ } = options;
29
+ if (!accessToken?.length) {
30
+ throw new _CloudStorageError.default(`Google Drive access token is not set, cannot call function ${prop.toString()}`, _native.CloudStorageErrorCode.ACCESS_TOKEN_MISSING);
30
31
  }
31
32
  }
32
33
  return target[prop];
33
34
  }
34
35
  });
35
36
  }
36
-
37
- // when setting accessToken, set it on the GDrive instance
38
- static set accessToken(accessToken) {
39
- GoogleDrive.drive.accessToken = accessToken ?? '';
40
-
41
- // emit an event for the useIsCloudAvailable hook
42
- _reactNative.DeviceEventEmitter.emit('RNCloudStorage.cloud.availability-changed', {
43
- available: !!(accessToken !== null && accessToken !== void 0 && accessToken.length)
44
- });
45
- }
46
- static set timeout(timeout) {
47
- GoogleDrive.drive.timeout = timeout;
48
- }
49
- static get accessToken() {
50
- return GoogleDrive.drive.accessToken.length ? GoogleDrive.drive.accessToken : null;
51
- }
52
- subscribeToFilesWithSameName(subscriber) {
53
- this.filesWithSameNameSubscribers.push(subscriber);
54
- return {
55
- remove: () => {
56
- this.filesWithSameNameSubscribers = this.filesWithSameNameSubscribers.filter(s => s !== subscriber);
57
- }
58
- };
59
- }
60
- isCloudAvailable = async () => !!GoogleDrive.drive.accessToken.length;
37
+ isCloudAvailable = async () => {
38
+ const {
39
+ accessToken
40
+ } = this.options;
41
+ return !!accessToken?.length;
42
+ };
61
43
  getRootDirectory(scope) {
62
44
  switch (scope) {
63
45
  case 'documents':
@@ -114,13 +96,16 @@ class GoogleDrive {
114
96
  * @returns A promise that resolves to the ID of the root directory or null if it could not be found.
115
97
  */
116
98
  async getRootDirectoryId(scope) {
117
- const files = await GoogleDrive.drive.listFiles(this.getRootDirectory(scope));
99
+ const files = await this.drive.listFiles(this.getRootDirectory(scope));
118
100
  for (const file of files) {
119
101
  if (!files.find(f => f.id === file.parents[0])) return file.parents[0] ?? null;
120
102
  }
121
103
  return null;
122
104
  }
123
105
  checkIfMultipleFilesWithSameName(path, files, filename, parentDirectoryId) {
106
+ const {
107
+ strictFilenames
108
+ } = this.options;
124
109
  let possibleFiles;
125
110
  if (parentDirectoryId) {
126
111
  possibleFiles = files.filter(f => f.name === filename && f.parents[0] === parentDirectoryId);
@@ -128,19 +113,13 @@ class GoogleDrive {
128
113
  possibleFiles = files.filter(f => f.name === filename && !files.find(f2 => f2.id === f.parents[0]));
129
114
  }
130
115
  if (possibleFiles.length <= 1) return;
131
- if (GoogleDrive.throwOnFilesWithSameName) {
116
+ if (strictFilenames) {
132
117
  throw new _CloudStorageError.default(`Multiple files with the same name found at path ${path}: ${possibleFiles.map(f => f.id).join(', ')}`, _native.CloudStorageErrorCode.MULTIPLE_FILES_SAME_NAME);
133
- } else {
134
- this.filesWithSameNameSubscribers.forEach(s => s({
135
- path,
136
- fileIds: possibleFiles.map(f => f.id)
137
- }));
138
118
  }
139
119
  }
140
- async getFileId(path, scope) {
141
- let throwIf = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
120
+ async getFileId(path, scope, throwIf = false) {
142
121
  try {
143
- const files = await GoogleDrive.drive.listFiles(this.getRootDirectory(scope));
122
+ const files = await this.drive.listFiles(this.getRootDirectory(scope));
144
123
  if (path === '' || path === '/') {
145
124
  const rootDirectoryId = await this.getRootDirectoryId(scope);
146
125
  if (!rootDirectoryId) throw new _CloudStorageError.default(`Root directory in scope ${scope} not found`, _native.CloudStorageErrorCode.DIRECTORY_NOT_FOUND);
@@ -169,8 +148,7 @@ class GoogleDrive {
169
148
  }
170
149
  return file.id;
171
150
  } catch (e) {
172
- var _e$json, _e$json$error;
173
- if (e instanceof _client.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') {
151
+ if (e instanceof _client.GoogleDriveHttpError && e.json?.error?.status === 'UNAUTHENTICATED') {
174
152
  throw new _CloudStorageError.default(`Could not authenticate with Google Drive`, _native.CloudStorageErrorCode.AUTHENTICATION_FAILED, e.json);
175
153
  } else {
176
154
  if (e instanceof _CloudStorageError.default) throw e;
@@ -191,7 +169,7 @@ class GoogleDrive {
191
169
  let prevContent = '';
192
170
  try {
193
171
  fileId = await this.getFileId(path, scope);
194
- prevContent = await GoogleDrive.drive.getFileText(fileId);
172
+ prevContent = await this.drive.getFileText(fileId);
195
173
  } catch (e) {
196
174
  if (e instanceof _CloudStorageError.default && e.code === _native.CloudStorageErrorCode.FILE_NOT_FOUND) {
197
175
  /* do nothing, simply create the file */
@@ -200,18 +178,18 @@ class GoogleDrive {
200
178
  }
201
179
  }
202
180
  if (fileId) {
203
- await GoogleDrive.drive.updateFile(fileId, {
181
+ await this.drive.updateFile(fileId, {
204
182
  body: prevContent + data,
205
183
  mimeType: _types.MimeTypes.TEXT
206
184
  });
207
185
  } else {
208
- const files = await GoogleDrive.drive.listFiles(this.getRootDirectory(scope));
186
+ const files = await this.drive.listFiles(this.getRootDirectory(scope));
209
187
  const {
210
188
  directories,
211
189
  filename
212
190
  } = this.resolvePathToDirectories(path);
213
191
  const parentDirectoryId = this.findParentDirectoryId(files, directories);
214
- await GoogleDrive.drive.createFile({
192
+ await this.drive.createFile({
215
193
  name: filename,
216
194
  parents: parentDirectoryId ? [parentDirectoryId] : scope === 'app_data' ? [this.getRootDirectory(scope)] : undefined
217
195
  }, {
@@ -245,18 +223,18 @@ class GoogleDrive {
245
223
  }
246
224
  }
247
225
  if (fileId) {
248
- await GoogleDrive.drive.updateFile(fileId, {
226
+ await this.drive.updateFile(fileId, {
249
227
  body: data,
250
228
  mimeType: _types.MimeTypes.TEXT
251
229
  });
252
230
  } else {
253
- const files = await GoogleDrive.drive.listFiles(this.getRootDirectory(scope));
231
+ const files = await this.drive.listFiles(this.getRootDirectory(scope));
254
232
  const {
255
233
  directories,
256
234
  filename
257
235
  } = this.resolvePathToDirectories(path);
258
236
  const parentDirectoryId = this.findParentDirectoryId(files, directories);
259
- await GoogleDrive.drive.createFile({
237
+ await this.drive.createFile({
260
238
  name: filename,
261
239
  parents: parentDirectoryId ? [parentDirectoryId] : scope === 'app_data' ? [this.getRootDirectory(scope)] : undefined
262
240
  }, {
@@ -266,7 +244,7 @@ class GoogleDrive {
266
244
  }
267
245
  }
268
246
  async listFiles(path, scope) {
269
- const allFiles = await GoogleDrive.drive.listFiles(this.getRootDirectory(scope));
247
+ const allFiles = await this.drive.listFiles(this.getRootDirectory(scope));
270
248
  if (path !== '') {
271
249
  const fileId = await this.getFileId(path, scope);
272
250
  const files = allFiles.filter(f => (f.parents ?? [])[0] === fileId);
@@ -289,47 +267,47 @@ class GoogleDrive {
289
267
  throw e;
290
268
  }
291
269
  }
292
- const files = await GoogleDrive.drive.listFiles(this.getRootDirectory(scope));
270
+ const files = await this.drive.listFiles(this.getRootDirectory(scope));
293
271
  const {
294
272
  directories,
295
273
  filename
296
274
  } = this.resolvePathToDirectories(path);
297
275
  const parentDirectoryId = this.findParentDirectoryId(files, directories);
298
- await GoogleDrive.drive.createDirectory({
276
+ await this.drive.createDirectory({
299
277
  name: filename,
300
278
  parents: parentDirectoryId ? [parentDirectoryId] : scope === 'app_data' ? [this.getRootDirectory(scope)] : undefined
301
279
  });
302
280
  }
303
281
  async readFile(path, scope) {
304
282
  const fileId = await this.getFileId(path, scope);
305
- const content = await GoogleDrive.drive.getFileText(fileId);
283
+ const content = await this.drive.getFileText(fileId);
306
284
  return content;
307
285
  }
308
286
  async downloadFile(_path, _scope) {
309
- // Not doing anything here, just a placeholder to conform to the interface so it doesn't fail on Android
287
+ // Downloading files from Google Drive is not necessary / possible, as they need to be downloaded on every read operation via the API anyway
310
288
  return;
311
289
  }
312
290
  async deleteFile(path, scope) {
313
291
  // if trying to pass a directory, throw an error
314
292
  const fileId = await this.getFileId(path, scope, 'directory');
315
- await GoogleDrive.drive.deleteFile(fileId);
293
+ await this.drive.deleteFile(fileId);
316
294
  }
317
295
  async deleteDirectory(path, recursive, scope) {
318
296
  // if trying to pass a file, throw an error
319
297
  const fileId = await this.getFileId(path, scope, 'file');
320
298
  if (!recursive) {
321
299
  // check if the directory is empty
322
- const files = await GoogleDrive.drive.listFiles(this.getRootDirectory(scope));
300
+ const files = await this.drive.listFiles(this.getRootDirectory(scope));
323
301
  const filesInDirectory = files.filter(f => (f.parents ?? [])[0] === fileId);
324
302
  if (filesInDirectory.length > 0) {
325
303
  throw new _CloudStorageError.default(`Directory ${path} is not empty`, _native.CloudStorageErrorCode.DELETE_ERROR, filesInDirectory);
326
304
  }
327
305
  }
328
- await GoogleDrive.drive.deleteFile(fileId);
306
+ await this.drive.deleteFile(fileId);
329
307
  }
330
308
  async statFile(path, scope) {
331
309
  const fileId = await this.getFileId(path, scope, false);
332
- const file = await GoogleDrive.drive.getFile(fileId);
310
+ const file = await this.drive.getFile(fileId);
333
311
  return {
334
312
  size: file.size ?? 0,
335
313
  birthtimeMs: new Date(file.createdTime).getTime(),
@@ -1 +1 @@
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","timeout","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","throwIf","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","deleteDirectory","recursive","filesInDirectory","DELETE_ERROR","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
+ {"version":3,"names":["_native","require","_CloudStorageError","_interopRequireDefault","_types","_client","_interopRequireWildcard","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","GoogleDrive","constructor","options","drive","GoogleDriveApiClient","Proxy","target","prop","allowedFunctions","includes","toString","accessToken","length","CloudStorageError","CloudStorageErrorCode","ACCESS_TOKEN_MISSING","isCloudAvailable","getRootDirectory","scope","resolvePathToDirectories","path","startsWith","slice","endsWith","directories","split","actualFilename","pop","filename","findParentDirectoryId","files","directoryTree","possibleTopDirectories","filter","f","mimeType","MimeTypes","FOLDER","name","topDirectoryId","id","possibleTopDirectory","find","parents","DIRECTORY_NOT_FOUND","currentDirectoryId","currentDirectory","nextDirectory","getRootDirectoryId","listFiles","file","checkIfMultipleFilesWithSameName","parentDirectoryId","strictFilenames","possibleFiles","f2","map","join","MULTIPLE_FILES_SAME_NAME","getFileId","throwIf","rootDirectoryId","FILE_NOT_FOUND","PATH_IS_DIRECTORY","GoogleDriveHttpError","json","error","status","AUTHENTICATION_FAILED","UNKNOWN","fileExists","code","appendToFile","data","fileId","prevContent","getFileText","updateFile","body","TEXT","createFile","undefined","overwrite","FILE_ALREADY_EXISTS","allFiles","Array","from","Set","createDirectory","readFile","content","downloadFile","_path","_scope","deleteFile","deleteDirectory","recursive","filesInDirectory","DELETE_ERROR","statFile","getFile","size","birthtimeMs","Date","createdTime","getTime","mtimeMs","modifiedTime","isDirectory","isFile","exports"],"sourceRoot":"../../../src","sources":["google-drive/index.ts"],"mappings":"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","ignoreList":[]}
@@ -4,7 +4,7 @@ Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
6
  exports.MimeTypes = void 0;
7
- let MimeTypes = /*#__PURE__*/function (MimeTypes) {
7
+ let MimeTypes = exports.MimeTypes = /*#__PURE__*/function (MimeTypes) {
8
8
  MimeTypes["BINARY"] = "application/octet-stream";
9
9
  MimeTypes["CSV"] = "text/csv";
10
10
  MimeTypes["FOLDER"] = "application/vnd.google-apps.folder";
@@ -13,5 +13,4 @@ let MimeTypes = /*#__PURE__*/function (MimeTypes) {
13
13
  MimeTypes["TEXT"] = "text/plain";
14
14
  return MimeTypes;
15
15
  }({});
16
- exports.MimeTypes = MimeTypes;
17
16
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
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
+ {"version":3,"names":["MimeTypes","exports"],"sourceRoot":"../../../src","sources":["google-drive/types.ts"],"mappings":";;;;;;IAEYA,SAAS,GAAAC,OAAA,CAAAD,SAAA,0BAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAATA,SAAS;EAAA,OAATA,SAAS;AAAA","ignoreList":[]}
@@ -6,47 +6,44 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.useCloudFile = void 0;
7
7
  var _RNCloudStorage = _interopRequireDefault(require("../RNCloudStorage"));
8
8
  var _react = require("react");
9
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
10
10
  /**
11
11
  * A utility hook for reading and writing to a single file in the cloud.
12
12
  * @param path The path to the file.
13
- * @param scope The directory scope the path is in. If not provided, defaults to the default scope set in the library.
13
+ * @param scope The directory scope the path is in. Defaults to the default scope set for the current provider.
14
+ * @param cloudStorageInstance An optional instance of RNCloudStorage to use instead of the default instance.
14
15
  * @returns An object containing the file's contents and functions for downloading, reading, writing, and removing the file.
15
16
  */
16
- const useCloudFile = (path, scope) => {
17
+ const useCloudFile = (path, scope, cloudStorageInstance) => {
17
18
  const [content, setContent] = (0, _react.useState)(null);
19
+ const instance = cloudStorageInstance ?? _RNCloudStorage.default;
18
20
  const read = (0, _react.useCallback)(async () => {
19
- const exists = await _RNCloudStorage.default.exists(path, scope);
21
+ const exists = await instance.exists(path, scope);
20
22
  if (!exists) {
21
23
  setContent(null);
22
24
  return;
23
25
  }
24
- _RNCloudStorage.default.readFile(path, scope).then(setContent);
25
- }, [path, scope]);
26
+ instance.readFile(path, scope).then(setContent);
27
+ }, [path, scope, instance]);
26
28
  (0, _react.useEffect)(() => {
27
29
  read();
28
30
  }, [read]);
29
31
  const write = (0, _react.useCallback)(async newContent => {
30
- await _RNCloudStorage.default.writeFile(path, newContent, scope);
32
+ await instance.writeFile(path, newContent, scope);
31
33
  read();
32
- }, [path, scope, read]);
34
+ }, [path, scope, read, instance]);
33
35
  const remove = (0, _react.useCallback)(async () => {
34
- await _RNCloudStorage.default.unlink(path, scope);
36
+ await instance.unlink(path, scope);
35
37
  setContent(null);
36
- }, [path, scope]);
38
+ }, [path, scope, instance]);
37
39
  const download = (0, _react.useCallback)(async () => {
38
- await _RNCloudStorage.default.downloadFile(path, scope);
39
- }, [path, scope]);
40
+ await instance.downloadFile(path, scope);
41
+ }, [path, scope, instance]);
40
42
  return {
41
43
  content,
42
44
  read,
43
45
  write,
44
46
  remove,
45
- /**
46
- * @deprecated Use `write` instead.
47
- * @alias write
48
- */
49
- update: write,
50
47
  /**
51
48
  * Downloads the file from iCloud to the device. Needed if the file hasn't been synced yet. Has no effect on
52
49
  * Google Drive.
@@ -1 +1 @@
1
- {"version":3,"names":["_RNCloudStorage","_interopRequireDefault","require","_react","obj","__esModule","default","useCloudFile","path","scope","content","setContent","useState","read","useCallback","exists","RNCloudStorage","readFile","then","useEffect","write","newContent","writeFile","remove","unlink","download","downloadFile","update","exports"],"sourceRoot":"../../../src","sources":["hooks/useCloudFile.ts"],"mappings":";;;;;;AACA,IAAAA,eAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAAyD,SAAAD,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAEzD;AACA;AACA;AACA;AACA;AACA;AACO,MAAMG,YAAY,GAAGA,CAACC,IAAY,EAAEC,KAAyB,KAAK;EACvE,MAAM,CAACC,OAAO,EAAEC,UAAU,CAAC,GAAG,IAAAC,eAAQ,EAAgB,IAAI,CAAC;EAE3D,MAAMC,IAAI,GAAG,IAAAC,kBAAW,EAAC,YAAY;IACnC,MAAMC,MAAM,GAAG,MAAMC,uBAAc,CAACD,MAAM,CAACP,IAAI,EAAEC,KAAK,CAAC;IACvD,IAAI,CAACM,MAAM,EAAE;MACXJ,UAAU,CAAC,IAAI,CAAC;MAChB;IACF;IACAK,uBAAc,CAACC,QAAQ,CAACT,IAAI,EAAEC,KAAK,CAAC,CAACS,IAAI,CAACP,UAAU,CAAC;EACvD,CAAC,EAAE,CAACH,IAAI,EAAEC,KAAK,CAAC,CAAC;EAEjB,IAAAU,gBAAS,EAAC,MAAM;IACdN,IAAI,EAAE;EACR,CAAC,EAAE,CAACA,IAAI,CAAC,CAAC;EAEV,MAAMO,KAAK,GAAG,IAAAN,kBAAW,EACvB,MAAOO,UAAkB,IAAK;IAC5B,MAAML,uBAAc,CAACM,SAAS,CAACd,IAAI,EAAEa,UAAU,EAAEZ,KAAK,CAAC;IACvDI,IAAI,EAAE;EACR,CAAC,EACD,CAACL,IAAI,EAAEC,KAAK,EAAEI,IAAI,CAAC,CACpB;EAED,MAAMU,MAAM,GAAG,IAAAT,kBAAW,EAAC,YAAY;IACrC,MAAME,uBAAc,CAACQ,MAAM,CAAChB,IAAI,EAAEC,KAAK,CAAC;IACxCE,UAAU,CAAC,IAAI,CAAC;EAClB,CAAC,EAAE,CAACH,IAAI,EAAEC,KAAK,CAAC,CAAC;EAEjB,MAAMgB,QAAQ,GAAG,IAAAX,kBAAW,EAAC,YAAY;IACvC,MAAME,uBAAc,CAACU,YAAY,CAAClB,IAAI,EAAEC,KAAK,CAAC;EAChD,CAAC,EAAE,CAACD,IAAI,EAAEC,KAAK,CAAC,CAAC;EAEjB,OAAO;IACLC,OAAO;IACPG,IAAI;IACJO,KAAK;IACLG,MAAM;IACN;AACJ;AACA;AACA;IACII,MAAM,EAAEP,KAAK;IACb;AACJ;AACA;AACA;IACIK;EACF,CAAC;AACH,CAAC;AAACG,OAAA,CAAArB,YAAA,GAAAA,YAAA"}
1
+ {"version":3,"names":["_RNCloudStorage","_interopRequireDefault","require","_react","e","__esModule","default","useCloudFile","path","scope","cloudStorageInstance","content","setContent","useState","instance","RNCloudStorage","read","useCallback","exists","readFile","then","useEffect","write","newContent","writeFile","remove","unlink","download","downloadFile","exports"],"sourceRoot":"../../../src","sources":["hooks/useCloudFile.ts"],"mappings":";;;;;;AACA,IAAAA,eAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,MAAA,GAAAD,OAAA;AAAyD,SAAAD,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEzD;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMG,YAAY,GAAGA,CAACC,IAAY,EAAEC,KAAyB,EAAEC,oBAAqC,KAAK;EAC9G,MAAM,CAACC,OAAO,EAAEC,UAAU,CAAC,GAAG,IAAAC,eAAQ,EAAgB,IAAI,CAAC;EAC3D,MAAMC,QAAQ,GAAGJ,oBAAoB,IAAIK,uBAAc;EAEvD,MAAMC,IAAI,GAAG,IAAAC,kBAAW,EAAC,YAAY;IACnC,MAAMC,MAAM,GAAG,MAAMJ,QAAQ,CAACI,MAAM,CAACV,IAAI,EAAEC,KAAK,CAAC;IACjD,IAAI,CAACS,MAAM,EAAE;MACXN,UAAU,CAAC,IAAI,CAAC;MAChB;IACF;IACAE,QAAQ,CAACK,QAAQ,CAACX,IAAI,EAAEC,KAAK,CAAC,CAACW,IAAI,CAACR,UAAU,CAAC;EACjD,CAAC,EAAE,CAACJ,IAAI,EAAEC,KAAK,EAAEK,QAAQ,CAAC,CAAC;EAE3B,IAAAO,gBAAS,EAAC,MAAM;IACdL,IAAI,CAAC,CAAC;EACR,CAAC,EAAE,CAACA,IAAI,CAAC,CAAC;EAEV,MAAMM,KAAK,GAAG,IAAAL,kBAAW,EACvB,MAAOM,UAAkB,IAAK;IAC5B,MAAMT,QAAQ,CAACU,SAAS,CAAChB,IAAI,EAAEe,UAAU,EAAEd,KAAK,CAAC;IACjDO,IAAI,CAAC,CAAC;EACR,CAAC,EACD,CAACR,IAAI,EAAEC,KAAK,EAAEO,IAAI,EAAEF,QAAQ,CAC9B,CAAC;EAED,MAAMW,MAAM,GAAG,IAAAR,kBAAW,EAAC,YAAY;IACrC,MAAMH,QAAQ,CAACY,MAAM,CAAClB,IAAI,EAAEC,KAAK,CAAC;IAClCG,UAAU,CAAC,IAAI,CAAC;EAClB,CAAC,EAAE,CAACJ,IAAI,EAAEC,KAAK,EAAEK,QAAQ,CAAC,CAAC;EAE3B,MAAMa,QAAQ,GAAG,IAAAV,kBAAW,EAAC,YAAY;IACvC,MAAMH,QAAQ,CAACc,YAAY,CAACpB,IAAI,EAAEC,KAAK,CAAC;EAC1C,CAAC,EAAE,CAACD,IAAI,EAAEC,KAAK,EAAEK,QAAQ,CAAC,CAAC;EAE3B,OAAO;IACLH,OAAO;IACPK,IAAI;IACJM,KAAK;IACLG,MAAM;IACN;AACJ;AACA;AACA;IACIE;EACF,CAAC;AACH,CAAC;AAACE,OAAA,CAAAtB,YAAA,GAAAA,YAAA","ignoreList":[]}
@@ -5,39 +5,29 @@ Object.defineProperty(exports, "__esModule", {
5
5
  });
6
6
  exports.useIsCloudAvailable = void 0;
7
7
  var _react = require("react");
8
- var _reactNative = require("react-native");
9
8
  var _RNCloudStorage = _interopRequireDefault(require("../RNCloudStorage"));
10
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
11
10
  /**
12
11
  * A hook that tests whether or not the cloud storage is available.
13
- * @param _iCloudTimeout DEPRECATED: This parameter is deprecated and has no effect. It will be removed in a future version.
12
+ * @param cloudStorageInstance - An optional instance of RNCloudStorage to use instead of the default instance.
14
13
  * @returns A boolean indicating whether or not the cloud storage is available.
15
14
  */
16
- const useIsCloudAvailable = _iCloudTimeout => {
15
+ const useIsCloudAvailable = cloudStorageInstance => {
17
16
  const [isAvailable, setIsAvailable] = (0, _react.useState)(false);
17
+ const instance = cloudStorageInstance ?? _RNCloudStorage.default.getDefaultInstance();
18
+ const handleAvailabilityChange = (0, _react.useCallback)(available => {
19
+ setIsAvailable(available);
20
+ }, []);
18
21
  (0, _react.useEffect)(() => {
19
22
  // Set the initial availability state
20
- _RNCloudStorage.default.isCloudAvailable().then(setIsAvailable);
23
+ instance.isCloudAvailable().then(setIsAvailable);
21
24
 
22
25
  // Listen for changes to the cloud availability using the native event emitter
23
- let eventEmitter;
24
- if (_reactNative.Platform.OS === 'ios') {
25
- eventEmitter = new _reactNative.NativeEventEmitter(_reactNative.NativeModules.CloudStorageEventEmitter);
26
- } else {
27
- eventEmitter = _reactNative.DeviceEventEmitter;
28
- }
29
- eventEmitter.addListener('RNCloudStorage.cloud.availability-changed', event => {
30
- setIsAvailable(event.available);
31
- });
26
+ instance.subscribeToCloudAvailability(handleAvailabilityChange);
32
27
  return () => {
33
- eventEmitter.removeAllListeners('RNCloudStorage.cloud.availability-changed');
28
+ instance.unsubscribeFromCloudAvailability(handleAvailabilityChange);
34
29
  };
35
- }, []);
36
- (0, _react.useEffect)(() => {
37
- if (_iCloudTimeout !== undefined) {
38
- console.warn('The iCloudTimeout parameter for useIsCloudFile is deprecated and has no effect. It will be removed in a future version. Please remove it from your code.');
39
- }
40
- }, [_iCloudTimeout]);
30
+ }, [instance, handleAvailabilityChange]);
41
31
  return isAvailable;
42
32
  };
43
33
  exports.useIsCloudAvailable = useIsCloudAvailable;
@@ -1 +1 @@
1
- {"version":3,"names":["_react","require","_reactNative","_RNCloudStorage","_interopRequireDefault","obj","__esModule","default","useIsCloudAvailable","_iCloudTimeout","isAvailable","setIsAvailable","useState","useEffect","RNCloudStorage","isCloudAvailable","then","eventEmitter","Platform","OS","NativeEventEmitter","NativeModules","CloudStorageEventEmitter","DeviceEventEmitter","addListener","event","available","removeAllListeners","undefined","console","warn","exports"],"sourceRoot":"../../../src","sources":["hooks/useIsCloudAvailable.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,eAAA,GAAAC,sBAAA,CAAAH,OAAA;AAA+C,SAAAG,uBAAAC,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAE/C;AACA;AACA;AACA;AACA;AACO,MAAMG,mBAAmB,GAAIC,cAAuB,IAAK;EAC9D,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAG,IAAAC,eAAQ,EAAC,KAAK,CAAC;EAErD,IAAAC,gBAAS,EAAC,MAAM;IACd;IACAC,uBAAc,CAACC,gBAAgB,EAAE,CAACC,IAAI,CAACL,cAAc,CAAC;;IAEtD;IACA,IAAIM,YAA4D;IAChE,IAAIC,qBAAQ,CAACC,EAAE,KAAK,KAAK,EAAE;MACzBF,YAAY,GAAG,IAAIG,+BAAkB,CAACC,0BAAa,CAACC,wBAAwB,CAAC;IAC/E,CAAC,MAAM;MACLL,YAAY,GAAGM,+BAAkB;IACnC;IAEAN,YAAY,CAACO,WAAW,CAAC,2CAA2C,EAAGC,KAA6B,IAAK;MACvGd,cAAc,CAACc,KAAK,CAACC,SAAS,CAAC;IACjC,CAAC,CAAC;IAEF,OAAO,MAAM;MACXT,YAAY,CAACU,kBAAkB,CAAC,2CAA2C,CAAC;IAC9E,CAAC;EACH,CAAC,EAAE,EAAE,CAAC;EAEN,IAAAd,gBAAS,EAAC,MAAM;IACd,IAAIJ,cAAc,KAAKmB,SAAS,EAAE;MAChCC,OAAO,CAACC,IAAI,CACV,0JAA0J,CAC3J;IACH;EACF,CAAC,EAAE,CAACrB,cAAc,CAAC,CAAC;EAEpB,OAAOC,WAAW;AACpB,CAAC;AAACqB,OAAA,CAAAvB,mBAAA,GAAAA,mBAAA"}
1
+ {"version":3,"names":["_react","require","_RNCloudStorage","_interopRequireDefault","e","__esModule","default","useIsCloudAvailable","cloudStorageInstance","isAvailable","setIsAvailable","useState","instance","RNCloudStorage","getDefaultInstance","handleAvailabilityChange","useCallback","available","useEffect","isCloudAvailable","then","subscribeToCloudAvailability","unsubscribeFromCloudAvailability","exports"],"sourceRoot":"../../../src","sources":["hooks/useIsCloudAvailable.ts"],"mappings":";;;;;;AAAA,IAAAA,MAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAC,sBAAA,CAAAF,OAAA;AAA+C,SAAAE,uBAAAC,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE/C;AACA;AACA;AACA;AACA;AACO,MAAMG,mBAAmB,GAAIC,oBAAqC,IAAK;EAC5E,MAAM,CAACC,WAAW,EAAEC,cAAc,CAAC,GAAG,IAAAC,eAAQ,EAAC,KAAK,CAAC;EACrD,MAAMC,QAAQ,GAAGJ,oBAAoB,IAAIK,uBAAc,CAACC,kBAAkB,CAAC,CAAC;EAE5E,MAAMC,wBAAwB,GAAG,IAAAC,kBAAW,EAAEC,SAAkB,IAAK;IACnEP,cAAc,CAACO,SAAS,CAAC;EAC3B,CAAC,EAAE,EAAE,CAAC;EAEN,IAAAC,gBAAS,EAAC,MAAM;IACd;IACAN,QAAQ,CAACO,gBAAgB,CAAC,CAAC,CAACC,IAAI,CAACV,cAAc,CAAC;;IAEhD;IACAE,QAAQ,CAACS,4BAA4B,CAACN,wBAAwB,CAAC;IAE/D,OAAO,MAAM;MACXH,QAAQ,CAACU,gCAAgC,CAACP,wBAAwB,CAAC;IACrE,CAAC;EACH,CAAC,EAAE,CAACH,QAAQ,EAAEG,wBAAwB,CAAC,CAAC;EAExC,OAAON,WAAW;AACpB,CAAC;AAACc,OAAA,CAAAhB,mBAAA,GAAAA,mBAAA","ignoreList":[]}