react-native-cloud-storage 0.7.0 → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (61) hide show
  1. package/README.md +0 -2
  2. package/ios/CloudStorage.swift +95 -76
  3. package/ios/CloudStorage.xcodeproj/project.xcworkspace/contents.xcworkspacedata +4 -0
  4. package/ios/CloudStorage.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +8 -0
  5. package/ios/CloudStorage.xcodeproj/project.xcworkspace/xcuserdata/max.xcuserdatad/UserInterfaceState.xcuserstate +0 -0
  6. package/ios/CloudStorage.xcodeproj/xcuserdata/max.xcuserdatad/xcschemes/xcschememanagement.plist +14 -0
  7. package/lib/commonjs/RNCloudStorage.js +19 -14
  8. package/lib/commonjs/RNCloudStorage.js.map +1 -1
  9. package/lib/commonjs/expo-plugin/types/index.js +2 -0
  10. package/lib/commonjs/expo-plugin/types/index.js.map +1 -0
  11. package/lib/commonjs/expo-plugin/withRNCloudStorage.js +1 -1
  12. package/lib/commonjs/expo-plugin/withRNCloudStorage.js.map +1 -1
  13. package/lib/commonjs/expo-plugin/withRNCloudStorageIos.js +3 -3
  14. package/lib/commonjs/expo-plugin/withRNCloudStorageIos.js.map +1 -1
  15. package/lib/commonjs/google-drive/index.js +5 -0
  16. package/lib/commonjs/google-drive/index.js.map +1 -1
  17. package/lib/commonjs/hooks/useCloudFile.js +14 -3
  18. package/lib/commonjs/hooks/useCloudFile.js.map +1 -1
  19. package/lib/commonjs/types/native.js +1 -1
  20. package/lib/commonjs/utils/helpers.js +23 -0
  21. package/lib/commonjs/utils/helpers.js.map +1 -0
  22. package/lib/module/RNCloudStorage.js +19 -14
  23. package/lib/module/RNCloudStorage.js.map +1 -1
  24. package/lib/module/expo-plugin/types/index.js +2 -0
  25. package/lib/module/expo-plugin/types/index.js.map +1 -0
  26. package/lib/module/expo-plugin/withRNCloudStorage.js +1 -2
  27. package/lib/module/expo-plugin/withRNCloudStorage.js.map +1 -1
  28. package/lib/module/expo-plugin/withRNCloudStorageIos.js +3 -3
  29. package/lib/module/expo-plugin/withRNCloudStorageIos.js.map +1 -1
  30. package/lib/module/google-drive/index.js +5 -0
  31. package/lib/module/google-drive/index.js.map +1 -1
  32. package/lib/module/hooks/useCloudFile.js +15 -3
  33. package/lib/module/hooks/useCloudFile.js.map +1 -1
  34. package/lib/module/types/native.js +1 -1
  35. package/lib/module/utils/helpers.js +16 -0
  36. package/lib/module/utils/helpers.js.map +1 -0
  37. package/lib/typescript/RNCloudStorage.d.ts +17 -15
  38. package/lib/typescript/RNCloudStorage.d.ts.map +1 -1
  39. package/lib/typescript/expo-plugin/types/index.d.ts +7 -0
  40. package/lib/typescript/expo-plugin/types/index.d.ts.map +1 -0
  41. package/lib/typescript/expo-plugin/withRNCloudStorage.d.ts +1 -6
  42. package/lib/typescript/expo-plugin/withRNCloudStorage.d.ts.map +1 -1
  43. package/lib/typescript/expo-plugin/withRNCloudStorageIos.d.ts +3 -2
  44. package/lib/typescript/expo-plugin/withRNCloudStorageIos.d.ts.map +1 -1
  45. package/lib/typescript/google-drive/index.d.ts.map +1 -1
  46. package/lib/typescript/hooks/useCloudFile.d.ts +13 -2
  47. package/lib/typescript/hooks/useCloudFile.d.ts.map +1 -1
  48. package/lib/typescript/types/native.d.ts +1 -1
  49. package/lib/typescript/types/native.d.ts.map +1 -1
  50. package/lib/typescript/utils/helpers.d.ts +10 -0
  51. package/lib/typescript/utils/helpers.d.ts.map +1 -0
  52. package/package.json +24 -20
  53. package/react-native-cloud-storage.podspec +7 -1
  54. package/src/RNCloudStorage.ts +26 -22
  55. package/src/expo-plugin/types/index.ts +6 -0
  56. package/src/expo-plugin/withRNCloudStorage.ts +2 -7
  57. package/src/expo-plugin/withRNCloudStorageIos.ts +8 -10
  58. package/src/google-drive/index.ts +11 -0
  59. package/src/hooks/useCloudFile.ts +14 -3
  60. package/src/types/native.ts +1 -1
  61. package/src/utils/helpers.ts +17 -0
package/README.md CHANGED
@@ -4,8 +4,6 @@ Save to & read from iCloud and Google Drive using React Native
4
4
 
5
5
  ![npm bundle size](https://img.shields.io/bundlephobia/min/react-native-cloud-storage?style=flat-square) ![GitHub](https://img.shields.io/github/license/kuatsu/react-native-cloud-storage?style=flat-square) ![GitHub last commit](https://img.shields.io/github/last-commit/kuatsu/react-native-cloud-storage?style=flat-square)
6
6
 
7
- **⚠️ WARNING**: This project is still considered unstable. The API might change drastically in new versions. Please proceed with caution and report any issues you're encountering.
8
-
9
7
  ## Installation
10
8
 
11
9
  ```sh
@@ -4,33 +4,31 @@ import Foundation
4
4
  class CloudStorage: NSObject {
5
5
  @objc(fileExists:withScope:withResolver:withRejecter:)
6
6
  func fileExists(path: String, scope: String, resolve:RCTPromiseResolveBlock,reject:RCTPromiseRejectBlock) -> Void {
7
- let fileManager = FileManager.default
8
- let directory = getDirectory(scope)
9
- if (directory == nil) {
10
- reject("ERR_NO_DIRECTORY_FOUND", "No directory found for scope \(scope)", nil)
7
+ let fileUrl: URL?
8
+ do {
9
+ fileUrl = try getFileURL(path, scope)
10
+ } catch let error as NSError {
11
+ reject(error.domain, error.userInfo["message"] as? String, error)
11
12
  return
12
13
  }
13
- let filePath = directory?.appendingPathComponent(path)
14
- let fileExists = fileManager.fileExists(atPath: filePath!.path)
14
+
15
+ let fileManager = FileManager.default
16
+ let fileExists = fileManager.fileExists(atPath: fileUrl!.path)
15
17
  resolve(fileExists)
16
18
  }
17
19
 
18
20
  @objc(createFile:withData:withScope:withOverwrite:withResolver:withRejecter:)
19
21
  func createFile(path: String, data: String, scope: String, overwrite: Bool, resolve:RCTPromiseResolveBlock,reject:RCTPromiseRejectBlock) -> Void {
20
- let fileManager = FileManager.default
21
- let directory = getDirectory(scope)
22
- if (directory == nil) {
23
- reject("ERR_NO_DIRECTORY_FOUND", "No directory found for scope \(scope)", nil)
24
- return
25
- }
26
- let filePath = directory?.appendingPathComponent(path)
27
- let fileExists = fileManager.fileExists(atPath: filePath!.path)
28
- if (fileExists && !overwrite) {
29
- reject("ERR_FILE_EXISTS", "File \(path) already exists", nil)
22
+ let fileUrl: URL?
23
+ do {
24
+ fileUrl = try getFileURL(path, scope, overwrite ? nil : false)
25
+ } catch let error as NSError {
26
+ reject(error.domain, error.userInfo["message"] as? String, error)
30
27
  return
31
28
  }
29
+
32
30
  do {
33
- try data.write(to: filePath!, atomically: true, encoding: .utf8)
31
+ try data.write(to: fileUrl!, atomically: true, encoding: .utf8)
34
32
  resolve(true)
35
33
  } catch {
36
34
  reject("ERR_WRITE_ERROR", "Error writing file \(path)", error)
@@ -39,20 +37,17 @@ class CloudStorage: NSObject {
39
37
 
40
38
  @objc(createDirectory:withScope:withResolver:withRejecter:)
41
39
  func createDirectory(path: String, scope: String, resolve:RCTPromiseResolveBlock,reject:RCTPromiseRejectBlock) -> Void {
42
- let fileManager = FileManager.default
43
- let directory = getDirectory(scope)
44
- if (directory == nil) {
45
- reject("ERR_NO_DIRECTORY_FOUND", "No directory found for scope \(scope)", nil)
46
- return
47
- }
48
- let dirPath = directory?.appendingPathComponent(path)
49
- let dirExists = fileManager.fileExists(atPath: dirPath!.path)
50
- if (dirExists) {
51
- reject("ERR_FILE_EXISTS", "Directory \(path) already exists", nil)
40
+ let directoryUrl: URL?
41
+ do {
42
+ directoryUrl = try getFileURL(path, scope, false)
43
+ } catch let error as NSError {
44
+ reject(error.domain, error.userInfo["message"] as? String, error)
52
45
  return
53
46
  }
47
+
48
+ let fileManager = FileManager.default
54
49
  do {
55
- try fileManager.createDirectory(at: dirPath!, withIntermediateDirectories: true, attributes: nil)
50
+ try fileManager.createDirectory(at: directoryUrl!, withIntermediateDirectories: true, attributes: nil)
56
51
  resolve(true)
57
52
  } catch {
58
53
  reject("ERR_WRITE_ERROR", "Error creating directory \(path)", error)
@@ -61,20 +56,17 @@ class CloudStorage: NSObject {
61
56
 
62
57
  @objc(listFiles:withScope:withResolver:withRejecter:)
63
58
  func listFiles(path: String, scope: String, resolve:RCTPromiseResolveBlock,reject:RCTPromiseRejectBlock) -> Void {
64
- let fileManager = FileManager.default
65
- let directory = getDirectory(scope)
66
- if (directory == nil) {
67
- reject("ERR_NO_DIRECTORY_FOUND", "No directory found for scope \(scope)", nil)
68
- return
69
- }
70
- let dirPath = directory?.appendingPathComponent(path)
71
- let dirExists = fileManager.fileExists(atPath: dirPath!.path)
72
- if (!dirExists) {
73
- reject("ERR_DIRECTORY_NOT_FOUND", "Directory \(path) not found", nil)
59
+ let directoryUrl: URL?
60
+ do {
61
+ directoryUrl = try getFileURL(path, scope, true)
62
+ } catch let error as NSError {
63
+ reject(error.domain, error.userInfo["message"] as? String, error)
74
64
  return
75
65
  }
66
+
67
+ let fileManager = FileManager.default
76
68
  do {
77
- let files = try fileManager.contentsOfDirectory(atPath: dirPath!.path)
69
+ let files = try fileManager.contentsOfDirectory(atPath: directoryUrl!.path)
78
70
  resolve(files)
79
71
  } catch {
80
72
  reject("ERR_READ_ERROR", "Error reading directory \(path)", error)
@@ -83,20 +75,16 @@ class CloudStorage: NSObject {
83
75
 
84
76
  @objc(readFile:withScope:withResolver:withRejecter:)
85
77
  func readFile(path: String, scope: String, resolve:RCTPromiseResolveBlock,reject:RCTPromiseRejectBlock) -> Void {
86
- let fileManager = FileManager.default
87
- let directory = getDirectory(scope)
88
- if (directory == nil) {
89
- reject("ERR_NO_DIRECTORY_FOUND", "No directory found for scope \(scope)", nil)
90
- return
91
- }
92
- let filePath = directory?.appendingPathComponent(path)
93
- let fileExists = fileManager.fileExists(atPath: filePath!.path)
94
- if (!fileExists) {
95
- reject("ERR_FILE_NOT_FOUND", "File \(path) not found", nil)
78
+ let fileUrl: URL?
79
+ do {
80
+ fileUrl = try getFileURL(path, scope, true)
81
+ } catch let error as NSError {
82
+ reject(error.domain, error.userInfo["message"] as? String, error)
96
83
  return
97
84
  }
85
+
98
86
  do {
99
- let fileContents = try String(contentsOf: filePath!, encoding: .utf8)
87
+ let fileContents = try String(contentsOf: fileUrl!, encoding: .utf8)
100
88
  resolve(fileContents)
101
89
  } catch {
102
90
  reject("ERR_READ_ERROR", "Error reading file \(path)", error)
@@ -105,20 +93,17 @@ class CloudStorage: NSObject {
105
93
 
106
94
  @objc(deleteFile:withScope:withResolver:withRejecter:)
107
95
  func deleteFile(path: String, scope: String, resolve:RCTPromiseResolveBlock,reject:RCTPromiseRejectBlock) -> Void {
108
- let fileManager = FileManager.default
109
- let directory = getDirectory(scope)
110
- if (directory == nil) {
111
- reject("ERR_NO_DIRECTORY_FOUND", "No directory found for scope \(scope)", nil)
112
- return
113
- }
114
- let filePath = directory?.appendingPathComponent(path)
115
- let fileExists = fileManager.fileExists(atPath: filePath!.path)
116
- if (!fileExists) {
117
- reject("ERR_FILE_NOT_FOUND", "File \(path) not found", nil)
96
+ let fileUrl: URL?
97
+ do {
98
+ fileUrl = try getFileURL(path, scope, true)
99
+ } catch let error as NSError {
100
+ reject(error.domain, error.userInfo["message"] as? String, error)
118
101
  return
119
102
  }
103
+
104
+ let fileManager = FileManager.default
120
105
  do {
121
- try fileManager.removeItem(at: filePath!)
106
+ try fileManager.removeItem(at: fileUrl!)
122
107
  resolve(true)
123
108
  } catch {
124
109
  reject("ERR_DELETE_ERROR", "Error deleting file \(path)", error)
@@ -127,20 +112,17 @@ class CloudStorage: NSObject {
127
112
 
128
113
  @objc(statFile:withScope:withResolver:withRejecter:)
129
114
  func statFile(path: String, scope: String, resolve:RCTPromiseResolveBlock,reject:RCTPromiseRejectBlock) -> Void {
130
- let fileManager = FileManager.default
131
- let directory = getDirectory(scope)
132
- if (directory == nil) {
133
- reject("ERR_NO_DIRECTORY_FOUND", "No directory found for scope \(scope)", nil)
134
- return
135
- }
136
- let filePath = directory?.appendingPathComponent(path)
137
- let fileExists = fileManager.fileExists(atPath: filePath!.path)
138
- if (!fileExists) {
139
- reject("ERR_FILE_NOT_FOUND", "File \(path) not found", nil)
115
+ let fileUrl: URL?
116
+ do {
117
+ fileUrl = try getFileURL(path, scope, true)
118
+ } catch let error as NSError {
119
+ reject(error.domain, error.userInfo["message"] as? String, error)
140
120
  return
141
121
  }
122
+
123
+ let fileManager = FileManager.default
142
124
  do {
143
- let attributes = try fileManager.attributesOfItem(atPath: filePath!.path)
125
+ let attributes = try fileManager.attributesOfItem(atPath: fileUrl!.path)
144
126
  let size = attributes[FileAttributeKey.size] as! UInt64
145
127
  let birthtime = attributes[FileAttributeKey.creationDate] as! Date
146
128
  let mtime = attributes[FileAttributeKey.modificationDate] as! Date
@@ -165,18 +147,55 @@ class CloudStorage: NSObject {
165
147
  resolve(token != nil)
166
148
  }
167
149
 
168
- /// Returns the iCloud directory URL for the given scope.
169
- ///
170
- /// - Parameter scope: The scope of the directory. Can be either "documents" or "app_data".
171
- /// - Returns: The URL of the iCloud directory.
150
+ /**
151
+ Returns the iCloud directory URL for the given scope.
152
+
153
+ - Parameter scope: The scope of the directory. Can be either "documents" or "app_data".
154
+ - Returns: The URL of the iCloud directory.
155
+ */
172
156
  private func getDirectory(_ scope: String) -> URL? {
173
157
  let fileManager = FileManager.default
174
158
  let isDocumentDirectory = scope.caseInsensitiveCompare("documents") == .orderedSame
175
159
  let ubiquityURL = fileManager.url(forUbiquityContainerIdentifier: nil)
160
+ print(ubiquityURL)
176
161
  if (isDocumentDirectory) {
177
162
  return fileManager.urls(for: .documentDirectory, in: .userDomainMask).first
178
163
  } else {
179
164
  return ubiquityURL
180
165
  }
181
166
  }
167
+
168
+ /**
169
+ Parses a given path and directory scope to a full file URL. Does not check if the file exists.
170
+
171
+ - Parameter path: The path of the file.
172
+ - Parameter scope: The scope of the directory. Can be either "documents" or "app_data".
173
+ - Parameter shouldExist: Whether the file should exist. If true, throws an error if the file does not exist. If false, throws an error if the file exists. If nil, does not check if the file exists.
174
+ - Returns: The full URL of the file.
175
+ - Throws: An NSError if the scope directory couldn't be found or the file should exist but doesn't or vice versa.
176
+ */
177
+ private func getFileURL(_ path: String, _ scope: String, _ shouldExist: Bool? = nil) throws -> URL? {
178
+ let fileManager = FileManager.default
179
+
180
+ guard let directory = getDirectory(scope) else {
181
+ throw NSError(domain: "ERR_DIRECTORY_NOT_FOUND", code: 0, userInfo: ["message": "Directory for scope \(scope) not found"])
182
+ }
183
+
184
+ // remove leading slashes
185
+ let path = path.replacingOccurrences(of: "^/+", with: "", options: .regularExpression)
186
+
187
+ // append path to scope directory and return URL
188
+ let filePath = directory.appendingPathComponent(path)
189
+
190
+ if (shouldExist != nil) {
191
+ let fileExists = fileManager.fileExists(atPath: filePath.path)
192
+ if (shouldExist! && !fileExists) {
193
+ throw NSError(domain: "ERR_FILE_NOT_FOUND", code: 0, userInfo: ["message": "File or directory \(path) not found"])
194
+ } else if (!shouldExist! && fileExists) {
195
+ throw NSError(domain: "ERR_FILE_EXISTS", code: 0, userInfo: ["message": "File or directory \(path) already exists"])
196
+ }
197
+ }
198
+
199
+ return filePath
200
+ }
182
201
  }
@@ -0,0 +1,4 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <Workspace
3
+ version = "1.0">
4
+ </Workspace>
@@ -0,0 +1,8 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+ <plist version="1.0">
4
+ <dict>
5
+ <key>IDEDidComputeMac32BitWarning</key>
6
+ <true/>
7
+ </dict>
8
+ </plist>
@@ -0,0 +1,14 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3
+ <plist version="1.0">
4
+ <dict>
5
+ <key>SchemeUserState</key>
6
+ <dict>
7
+ <key>CloudStorage.xcscheme_^#shared#^_</key>
8
+ <dict>
9
+ <key>orderHint</key>
10
+ <integer>0</integer>
11
+ </dict>
12
+ </dict>
13
+ </dict>
14
+ </plist>
@@ -6,10 +6,15 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.default = void 0;
7
7
  var _createRNCloudStorage = _interopRequireDefault(require("./createRNCloudStorage"));
8
8
  var _googleDrive = _interopRequireDefault(require("./google-drive"));
9
+ var _main = require("./types/main");
9
10
  var _reactNative = require("react-native");
11
+ var _helpers = require("./utils/helpers");
10
12
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
11
13
  const nativeInstance = (0, _createRNCloudStorage.default)();
14
+ let defaultScope = _main.CloudStorageScope.AppData;
12
15
  const RNCloudStorage = {
16
+ getDefaultScope: () => defaultScope,
17
+ setDefaultScope: scope => defaultScope = scope,
13
18
  getGoogleDriveAccessToken: () => _googleDrive.default.accessToken,
14
19
  setGoogleDriveAccessToken: accessToken => _googleDrive.default.accessToken = accessToken,
15
20
  setThrowOnFilesWithSameName: enable => _googleDrive.default.throwOnFilesWithSameName = enable,
@@ -32,66 +37,66 @@ const RNCloudStorage = {
32
37
  /**
33
38
  * Tests whether or not the file at the given path exists.
34
39
  * @param path The path to test.
35
- * @param scope The directory scope the path is in.
40
+ * @param scope The directory scope the path is in. Defaults to the set default scope.
36
41
  * @returns A promise that resolves to true if the path exists, false otherwise.
37
42
  */
38
43
  exists: (path, scope) => {
39
- return nativeInstance.fileExists(path, scope);
44
+ return nativeInstance.fileExists((0, _helpers.verifyLeadingSlash)(path), scope ?? defaultScope);
40
45
  },
41
46
  /**
42
47
  * Writes to the file at the given path, creating it if it doesn't exist or overwriting it if it does.
43
48
  * @param path The file to write to.
44
49
  * @param data The data to write.
45
- * @param scope The directory scope the path is in.
50
+ * @param scope The directory scope the path is in. Defaults to the set default scope.
46
51
  * @returns A promise that resolves when the file has been written.
47
52
  */
48
53
  writeFile: (path, data, scope) => {
49
- return nativeInstance.createFile(path, data, scope, true);
54
+ return nativeInstance.createFile((0, _helpers.verifyLeadingSlash)(path), data, scope ?? defaultScope, true);
50
55
  },
51
56
  /**
52
57
  * Creates a new directory at the given path.
53
58
  * @param path The directory to create.
54
- * @param scope The directory scope the path is in.
59
+ * @param scope The directory scope the path is in. Defaults to the set default scope.
55
60
  * @returns A promise that resolves when the directory has been created.
56
61
  */
57
62
  mkdir: (path, scope) => {
58
- return nativeInstance.createDirectory(path, scope);
63
+ return nativeInstance.createDirectory((0, _helpers.verifyLeadingSlash)(path), scope ?? defaultScope);
59
64
  },
60
65
  /**
61
66
  * Lists the contents of the directory at the given path.
62
67
  * @param path The directory to list.
63
- * @param scope The directory scope the path is in.
68
+ * @param scope The directory scope the path is in. Defaults to the set default scope.
64
69
  * @returns A promise that resolves to an array of file names, excluding '.' and '..'.
65
70
  */
66
71
  readdir: (path, scope) => {
67
- return nativeInstance.listFiles(path, scope);
72
+ return nativeInstance.listFiles((0, _helpers.verifyLeadingSlash)(path), scope ?? defaultScope);
68
73
  },
69
74
  /**
70
75
  * Reads the contents of the file at the given path.
71
76
  * @param path The file to read.
72
- * @param scope The directory scope the path is in.
77
+ * @param scope The directory scope the path is in. Defaults to the set default scope.
73
78
  * @returns A promise that resolves to the contents of the file.
74
79
  */
75
80
  readFile: (path, scope) => {
76
- return nativeInstance.readFile(path, scope);
81
+ return nativeInstance.readFile((0, _helpers.verifyLeadingSlash)(path), scope ?? defaultScope);
77
82
  },
78
83
  /**
79
84
  * Deletes the file at the given path.
80
85
  * @param path The file to delete.
81
- * @param scope The directory scope the path is in.
86
+ * @param scope The directory scope the path is in. Defaults to the set default scope.
82
87
  * @returns A promise that resolves when the file has been deleted.
83
88
  */
84
89
  unlink: (path, scope) => {
85
- return nativeInstance.deleteFile(path, scope);
90
+ return nativeInstance.deleteFile((0, _helpers.verifyLeadingSlash)(path), scope ?? defaultScope);
86
91
  },
87
92
  /**
88
93
  * Gets the size, creation time, and modification time of the file at the given path.
89
94
  * @param path The file to stat.
90
- * @param scope The directory scope the path is in.
95
+ * @param scope The directory scope the path is in. Defaults to the set default scope.
91
96
  * @returns A promise that resolves to the CloudStorageFileStat object.
92
97
  */
93
98
  stat: async (path, scope) => {
94
- const native = await nativeInstance.statFile(path, scope);
99
+ const native = await nativeInstance.statFile((0, _helpers.verifyLeadingSlash)(path), scope ?? defaultScope);
95
100
  return {
96
101
  ...native,
97
102
  birthtime: new Date(native.birthtimeMs),
@@ -1 +1 @@
1
- {"version":3,"names":["_createRNCloudStorage","_interopRequireDefault","require","_googleDrive","_reactNative","obj","__esModule","default","nativeInstance","createRNCloudStorage","RNCloudStorage","getGoogleDriveAccessToken","GoogleDriveApiClient","accessToken","setGoogleDriveAccessToken","setThrowOnFilesWithSameName","enable","throwOnFilesWithSameName","subscribeToFilesWithSameName","Platform","OS","subscriber","remove","bind","isCloudAvailable","exists","path","scope","fileExists","writeFile","data","createFile","mkdir","createDirectory","readdir","listFiles","readFile","unlink","deleteFile","stat","native","statFile","birthtime","Date","birthtimeMs","mtime","mtimeMs","isDirectory","isFile","_default","exports"],"sourceRoot":"../../src","sources":["RNCloudStorage.ts"],"mappings":"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"}
1
+ {"version":3,"names":["_createRNCloudStorage","_interopRequireDefault","require","_googleDrive","_main","_reactNative","_helpers","obj","__esModule","default","nativeInstance","createRNCloudStorage","defaultScope","CloudStorageScope","AppData","RNCloudStorage","getDefaultScope","setDefaultScope","scope","getGoogleDriveAccessToken","GoogleDriveApiClient","accessToken","setGoogleDriveAccessToken","setThrowOnFilesWithSameName","enable","throwOnFilesWithSameName","subscribeToFilesWithSameName","Platform","OS","subscriber","remove","bind","isCloudAvailable","exists","path","fileExists","verifyLeadingSlash","writeFile","data","createFile","mkdir","createDirectory","readdir","listFiles","readFile","unlink","deleteFile","stat","native","statFile","birthtime","Date","birthtimeMs","mtime","mtimeMs","isDirectory","isFile","_default","exports"],"sourceRoot":"../../src","sources":["RNCloudStorage.ts"],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sourceRoot":"../../../../src","sources":["expo-plugin/types/index.ts"],"mappings":""}
@@ -8,7 +8,7 @@ var _withRNCloudStorageIos = _interopRequireDefault(require("./withRNCloudStorag
8
8
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
9
9
  // Android config plugin not needed as there's no native code to configure.
10
10
 
11
- const withRNCloudStorage = (config, options) => (0, _withRNCloudStorageIos.default)(config, (options === null || options === void 0 ? void 0 : options.iCloudContainerEnvironment) ?? 'Production');
11
+ const withRNCloudStorage = (config, options) => (0, _withRNCloudStorageIos.default)(config, options);
12
12
  var _default = withRNCloudStorage;
13
13
  exports.default = _default;
14
14
  //# sourceMappingURL=withRNCloudStorage.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_withRNCloudStorageIos","_interopRequireDefault","require","obj","__esModule","default","withRNCloudStorage","config","options","withRNCloudStorageIos","iCloudContainerEnvironment","_default","exports"],"sourceRoot":"../../../src","sources":["expo-plugin/withRNCloudStorage.ts"],"mappings":";;;;;;AAAA,IAAAA,sBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA4D,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAG5D;;AAQA,MAAMG,kBAAmE,GAAGA,CAACC,MAAM,EAAEC,OAAO,KAC1F,IAAAC,8BAAqB,EAACF,MAAM,EAAE,CAAAC,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEE,0BAA0B,KAAI,YAAY,CAAC;AAAC,IAAAC,QAAA,GAEtEL,kBAAkB;AAAAM,OAAA,CAAAP,OAAA,GAAAM,QAAA"}
1
+ {"version":3,"names":["_withRNCloudStorageIos","_interopRequireDefault","require","obj","__esModule","default","withRNCloudStorage","config","options","withRNCloudStorageIos","_default","exports"],"sourceRoot":"../../../src","sources":["expo-plugin/withRNCloudStorage.ts"],"mappings":";;;;;;AACA,IAAAA,sBAAA,GAAAC,sBAAA,CAAAC,OAAA;AAA4D,SAAAD,uBAAAE,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAG5D;;AAEA,MAAMG,kBAAmE,GAAGA,CAACC,MAAM,EAAEC,OAAO,KAC1F,IAAAC,8BAAqB,EAACF,MAAM,EAAEC,OAAO,CAAC;AAAC,IAAAE,QAAA,GAE1BJ,kBAAkB;AAAAK,OAAA,CAAAN,OAAA,GAAAK,QAAA"}
@@ -20,7 +20,7 @@ const withRNCloudStorageInfoPlist = config => (0, _configPlugins.withInfoPlist)(
20
20
  };
21
21
  return newConfig;
22
22
  });
23
- const withRNCloudStorageEntitlementsPlist = (config, iCloudContainerEnvironment) => (0, _configPlugins.withEntitlementsPlist)(config, async newConfig => {
23
+ const withRNCloudStorageEntitlementsPlist = (config, options) => (0, _configPlugins.withEntitlementsPlist)(config, async newConfig => {
24
24
  var _config$ios2;
25
25
  if (!((_config$ios2 = config.ios) !== null && _config$ios2 !== void 0 && _config$ios2.bundleIdentifier)) {
26
26
  throw new Error('Missing iOS bundle identifier');
@@ -28,12 +28,12 @@ const withRNCloudStorageEntitlementsPlist = (config, iCloudContainerEnvironment)
28
28
  const entitlementsPlist = newConfig.modResults;
29
29
  entitlementsPlist['com.apple.developer.icloud-container-identifiers'] = [`iCloud.${config.ios.bundleIdentifier}`];
30
30
  entitlementsPlist['com.apple.developer.icloud-services'] = ['CloudDocuments'];
31
- entitlementsPlist['com.apple.developer.icloud-container-environment'] = iCloudContainerEnvironment;
31
+ entitlementsPlist['com.apple.developer.icloud-container-environment'] = (options === null || options === void 0 ? void 0 : options.iCloudContainerEnvironment) ?? 'Production';
32
32
  entitlementsPlist['com.apple.developer.ubiquity-container-identifiers'] = [`iCloud.${config.ios.bundleIdentifier}`];
33
33
  entitlementsPlist['com.apple.developer.ubiquity-kvstore-identifier'] = `$(TeamIdentifierPrefix)${config.ios.bundleIdentifier}`;
34
34
  return newConfig;
35
35
  });
36
- const withRNCloudStorageIos = (config, iCloudContainerEnvironment) => (0, _configPlugins.withPlugins)(config, [withRNCloudStorageInfoPlist, [withRNCloudStorageEntitlementsPlist, iCloudContainerEnvironment]]);
36
+ const withRNCloudStorageIos = (config, options) => (0, _configPlugins.withPlugins)(config, [withRNCloudStorageInfoPlist, [withRNCloudStorageEntitlementsPlist, options]]);
37
37
  var _default = withRNCloudStorageIos;
38
38
  exports.default = _default;
39
39
  //# sourceMappingURL=withRNCloudStorageIos.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_configPlugins","require","withRNCloudStorageInfoPlist","config","withInfoPlist","newConfig","_config$ios","ios","bundleIdentifier","Error","infoPlist","modResults","NSUbiquitousContainers","NSUbiquitousContainerIsDocumentScopePublic","NSUbiquitousContainerSupportedFolderLevels","NSUbiquitousContainerName","slug","withRNCloudStorageEntitlementsPlist","iCloudContainerEnvironment","withEntitlementsPlist","_config$ios2","entitlementsPlist","withRNCloudStorageIos","withPlugins","_default","exports","default"],"sourceRoot":"../../../src","sources":["expo-plugin/withRNCloudStorageIos.ts"],"mappings":";;;;;;AAAA,IAAAA,cAAA,GAAAC,OAAA;AAGA,MAAMC,2BAA2B,GAAIC,MAAkB,IACrD,IAAAC,4BAAa,EAACD,MAAM,EAAE,MAAOE,SAAS,IAAK;EAAA,IAAAC,WAAA;EACzC,IAAI,GAAAA,WAAA,GAACH,MAAM,CAACI,GAAG,cAAAD,WAAA,eAAVA,WAAA,CAAYE,gBAAgB,GAAE;IACjC,MAAM,IAAIC,KAAK,CAAC,+BAA+B,CAAC;EAClD;EACA,MAAMC,SAAS,GAAGL,SAAS,CAACM,UAAU;EACtCD,SAAS,CAACE,sBAAsB,GAAG;IACjC,CAAE,UAAST,MAAM,CAACI,GAAG,CAACC,gBAAiB,EAAC,GAAG;MACzCK,0CAA0C,EAAE,IAAI;MAChDC,0CAA0C,EAAE,KAAK;MACjDC,yBAAyB,EAAEZ,MAAM,CAACa;IACpC;EACF,CAAC;EAED,OAAOX,SAAS;AAClB,CAAC,CAAC;AAEJ,MAAMY,mCAAmC,GAAGA,CAC1Cd,MAAkB,EAClBe,0BAAwD,KAExD,IAAAC,oCAAqB,EAAChB,MAAM,EAAE,MAAOE,SAAS,IAAK;EAAA,IAAAe,YAAA;EACjD,IAAI,GAAAA,YAAA,GAACjB,MAAM,CAACI,GAAG,cAAAa,YAAA,eAAVA,YAAA,CAAYZ,gBAAgB,GAAE;IACjC,MAAM,IAAIC,KAAK,CAAC,+BAA+B,CAAC;EAClD;EACA,MAAMY,iBAAiB,GAAGhB,SAAS,CAACM,UAAU;EAC9CU,iBAAiB,CAAC,kDAAkD,CAAC,GAAG,CAAE,UAASlB,MAAM,CAACI,GAAG,CAACC,gBAAiB,EAAC,CAAC;EACjHa,iBAAiB,CAAC,qCAAqC,CAAC,GAAG,CAAC,gBAAgB,CAAC;EAC7EA,iBAAiB,CAAC,kDAAkD,CAAC,GAAGH,0BAA0B;EAClGG,iBAAiB,CAAC,oDAAoD,CAAC,GAAG,CAAE,UAASlB,MAAM,CAACI,GAAG,CAACC,gBAAiB,EAAC,CAAC;EACnHa,iBAAiB,CACf,iDAAiD,CAClD,GAAI,0BAAyBlB,MAAM,CAACI,GAAG,CAACC,gBAAiB,EAAC;EAE3D,OAAOH,SAAS;AAClB,CAAC,CAAC;AAEJ,MAAMiB,qBAAqB,GAAGA,CAACnB,MAAkB,EAAEe,0BAAwD,KACzG,IAAAK,0BAAW,EAACpB,MAAM,EAAE,CAACD,2BAA2B,EAAE,CAACe,mCAAmC,EAAEC,0BAA0B,CAAC,CAAC,CAAC;AAAC,IAAAM,QAAA,GAEzGF,qBAAqB;AAAAG,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
1
+ {"version":3,"names":["_configPlugins","require","withRNCloudStorageInfoPlist","config","withInfoPlist","newConfig","_config$ios","ios","bundleIdentifier","Error","infoPlist","modResults","NSUbiquitousContainers","NSUbiquitousContainerIsDocumentScopePublic","NSUbiquitousContainerSupportedFolderLevels","NSUbiquitousContainerName","slug","withRNCloudStorageEntitlementsPlist","options","withEntitlementsPlist","_config$ios2","entitlementsPlist","iCloudContainerEnvironment","withRNCloudStorageIos","withPlugins","_default","exports","default"],"sourceRoot":"../../../src","sources":["expo-plugin/withRNCloudStorageIos.ts"],"mappings":";;;;;;AAAA,IAAAA,cAAA,GAAAC,OAAA;AAGA,MAAMC,2BAAyC,GAAIC,MAAM,IACvD,IAAAC,4BAAa,EAACD,MAAM,EAAE,MAAOE,SAAS,IAAK;EAAA,IAAAC,WAAA;EACzC,IAAI,GAAAA,WAAA,GAACH,MAAM,CAACI,GAAG,cAAAD,WAAA,eAAVA,WAAA,CAAYE,gBAAgB,GAAE;IACjC,MAAM,IAAIC,KAAK,CAAC,+BAA+B,CAAC;EAClD;EACA,MAAMC,SAAS,GAAGL,SAAS,CAACM,UAAU;EACtCD,SAAS,CAACE,sBAAsB,GAAG;IACjC,CAAE,UAAST,MAAM,CAACI,GAAG,CAACC,gBAAiB,EAAC,GAAG;MACzCK,0CAA0C,EAAE,IAAI;MAChDC,0CAA0C,EAAE,KAAK;MACjDC,yBAAyB,EAAEZ,MAAM,CAACa;IACpC;EACF,CAAC;EAED,OAAOX,SAAS;AAClB,CAAC,CAAC;AAEJ,MAAMY,mCAAoF,GAAGA,CAACd,MAAM,EAAEe,OAAO,KAC3G,IAAAC,oCAAqB,EAAChB,MAAM,EAAE,MAAOE,SAAS,IAAK;EAAA,IAAAe,YAAA;EACjD,IAAI,GAAAA,YAAA,GAACjB,MAAM,CAACI,GAAG,cAAAa,YAAA,eAAVA,YAAA,CAAYZ,gBAAgB,GAAE;IACjC,MAAM,IAAIC,KAAK,CAAC,+BAA+B,CAAC;EAClD;EACA,MAAMY,iBAAiB,GAAGhB,SAAS,CAACM,UAAU;EAC9CU,iBAAiB,CAAC,kDAAkD,CAAC,GAAG,CAAE,UAASlB,MAAM,CAACI,GAAG,CAACC,gBAAiB,EAAC,CAAC;EACjHa,iBAAiB,CAAC,qCAAqC,CAAC,GAAG,CAAC,gBAAgB,CAAC;EAC7EA,iBAAiB,CAAC,kDAAkD,CAAC,GACnE,CAAAH,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEI,0BAA0B,KAAI,YAAY;EACrDD,iBAAiB,CAAC,oDAAoD,CAAC,GAAG,CAAE,UAASlB,MAAM,CAACI,GAAG,CAACC,gBAAiB,EAAC,CAAC;EACnHa,iBAAiB,CACf,iDAAiD,CAClD,GAAI,0BAAyBlB,MAAM,CAACI,GAAG,CAACC,gBAAiB,EAAC;EAE3D,OAAOH,SAAS;AAClB,CAAC,CAAC;AAEJ,MAAMkB,qBAAsE,GAAGA,CAACpB,MAAM,EAAEe,OAAO,KAC7F,IAAAM,0BAAW,EAACrB,MAAM,EAAE,CAACD,2BAA2B,EAAE,CAACe,mCAAmC,EAAEC,OAAO,CAAC,CAAC,CAAC;AAAC,IAAAO,QAAA,GAEtFF,qBAAqB;AAAAG,OAAA,CAAAC,OAAA,GAAAF,QAAA"}
@@ -137,6 +137,11 @@ class GoogleDriveApiClient {
137
137
  let throwIfDirectory = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;
138
138
  try {
139
139
  const files = await this.listInternalFiles(scope);
140
+ if (path === '' || path === '/') {
141
+ const rootDirectoryId = await this.getRootDirectoryId(scope);
142
+ if (!rootDirectoryId) throw new _CloudStorageError.default(`Root directory in scope ${scope} not found`, _native.CloudStorageErrorCode.DIRECTORY_NOT_FOUND);
143
+ return rootDirectoryId;
144
+ }
140
145
  const {
141
146
  directories,
142
147
  filename
@@ -1 +1 @@
1
- {"version":3,"names":["_reactNativeGoogleDriveApiWrapperJs","require","_native","_CloudStorageError","_interopRequireDefault","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","subscribeToFilesWithSameName","subscriber","push","remove","filter","s","isCloudAvailable","_GoogleDriveApiClient","length","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","FILE_NOT_FOUND","PATH_IS_DIRECTORY","e","_e$json","_e$json$error","HttpError","json","error","status","AUTHENTICATION_FAILED","UNKNOWN","fileExists","code","createFile","data","overwrite","fileId","FILE_ALREADY_EXISTS","uploader","newMultipartUploader","setData","TEXT","setIdOfFileToUpdate","setRequestBody","execute","listFiles","allFiles","Array","from","Set","rootDirectoryId","createDirectory","newMetadataOnlyUploader","readFile","content","getText","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":["_reactNativeGoogleDriveApiWrapperJs","require","_native","_CloudStorageError","_interopRequireDefault","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","subscribeToFilesWithSameName","subscriber","push","remove","filter","s","isCloudAvailable","_GoogleDriveApiClient","length","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","createFile","data","overwrite","fileId","FILE_ALREADY_EXISTS","uploader","newMultipartUploader","setData","TEXT","setIdOfFileToUpdate","setRequestBody","execute","listFiles","allFiles","Array","from","Set","createDirectory","newMetadataOnlyUploader","readFile","content","getText","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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"}
@@ -7,6 +7,12 @@ exports.useCloudFile = void 0;
7
7
  var _RNCloudStorage = _interopRequireDefault(require("../RNCloudStorage"));
8
8
  var _react = require("react");
9
9
  function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
10
+ /**
11
+ * A utility hook for reading and writing to a single file in the cloud.
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.
14
+ * @returns An object containing the file's contents and functions for reading, writing, and removing the file.
15
+ */
10
16
  const useCloudFile = (path, scope) => {
11
17
  const [content, setContent] = (0, _react.useState)(null);
12
18
  const read = (0, _react.useCallback)(async () => {
@@ -20,7 +26,7 @@ const useCloudFile = (path, scope) => {
20
26
  (0, _react.useEffect)(() => {
21
27
  read();
22
28
  }, [read]);
23
- const update = (0, _react.useCallback)(async newContent => {
29
+ const write = (0, _react.useCallback)(async newContent => {
24
30
  await _RNCloudStorage.default.writeFile(path, newContent, scope);
25
31
  read();
26
32
  }, [path, scope, read]);
@@ -31,8 +37,13 @@ const useCloudFile = (path, scope) => {
31
37
  return {
32
38
  content,
33
39
  read,
34
- update,
35
- remove
40
+ write,
41
+ remove,
42
+ /**
43
+ * @deprecated Use `write` instead.
44
+ * @alias write
45
+ */
46
+ update: write
36
47
  };
37
48
  };
38
49
  exports.useCloudFile = useCloudFile;
@@ -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","update","newContent","writeFile","remove","unlink","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;AAElD,MAAMG,YAAY,GAAGA,CAACC,IAAY,EAAEC,KAAwB,KAAK;EACtE,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,MAAM,GAAG,IAAAN,kBAAW,EACxB,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,OAAO;IACLC,OAAO;IACPG,IAAI;IACJO,MAAM;IACNG;EACF,CAAC;AACH,CAAC;AAACE,OAAA,CAAAlB,YAAA,GAAAA,YAAA"}
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","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,OAAO;IACLC,OAAO;IACPG,IAAI;IACJO,KAAK;IACLG,MAAM;IACN;AACJ;AACA;AACA;IACIE,MAAM,EAAEL;EACV,CAAC;AACH,CAAC;AAACM,OAAA,CAAAnB,YAAA,GAAAA,YAAA"}
@@ -7,7 +7,7 @@ exports.CloudStorageErrorCode = void 0;
7
7
  let CloudStorageErrorCode = /*#__PURE__*/function (CloudStorageErrorCode) {
8
8
  CloudStorageErrorCode["FILE_NOT_FOUND"] = "ERR_FILE_NOT_FOUND";
9
9
  CloudStorageErrorCode["PATH_IS_DIRECTORY"] = "ERR_PATH_IS_DIRECTORY";
10
- CloudStorageErrorCode["DIRECTORY_NOT_FOUND"] = "ERR_NO_DIRECTORY_FOUND";
10
+ CloudStorageErrorCode["DIRECTORY_NOT_FOUND"] = "ERR_DIRECTORY_NOT_FOUND";
11
11
  CloudStorageErrorCode["FILE_ALREADY_EXISTS"] = "ERR_FILE_EXISTS";
12
12
  CloudStorageErrorCode["MULTIPLE_FILES_SAME_NAME"] = "ERR_MULTIPLE_FILES_SAME_NAME";
13
13
  CloudStorageErrorCode["AUTHENTICATION_FAILED"] = "ERR_AUTHENTICATION_FAILED";